{"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":"2c065b1e-d033-4560-afee-8b7f782632d5","kind":"shape:chain","nodes":[{"acceptedSubmissionHash":null,"dependsOn":["audit_imported_code"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"2d7d84a1a9972f1497e5bc68a704cbf42294d08c62d2868f102ffe3b909b9b51","skillId":"adapt-contract-project","tools":[]},"key":"adapt_contract_project","kind":"code","role":"implement","skillHash":"2d7d84a1a9972f1497e5bc68a704cbf42294d08c62d2868f102ffe3b909b9b51","skillId":"adapt-contract-project","state":"failed"},{"acceptedSubmissionHash":null,"dependsOn":["adapt_contract_project"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"e5ac2cb1fd91a56aa40b16487fc230c48de0d317c8266140331dd3219bb40a85","skillId":"audit-specialist","tools":[]},"key":"audit_economics","kind":"code","role":"review","skillHash":"e5ac2cb1fd91a56aa40b16487fc230c48de0d317c8266140331dd3219bb40a85","skillId":"audit-specialist","state":"waiting"},{"acceptedSubmissionHash":null,"dependsOn":["adapt_contract_project"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"e5ac2cb1fd91a56aa40b16487fc230c48de0d317c8266140331dd3219bb40a85","skillId":"audit-specialist","tools":[]},"key":"audit_flow","kind":"code","role":"review","skillHash":"e5ac2cb1fd91a56aa40b16487fc230c48de0d317c8266140331dd3219bb40a85","skillId":"audit-specialist","state":"waiting"},{"acceptedSubmissionHash":"175d6fcaa716cfe8d3a687280178952347b60f1b61ca0da4cd1a40424c9d123b","dependsOn":[],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"9897597976b0e72440db7ca402d225aea20f3d37205ba53e7df2400ff80f29cc","skillId":"audit-imported-code","tools":[]},"key":"audit_imported_code","kind":"code","role":"review","skillHash":"9897597976b0e72440db7ca402d225aea20f3d37205ba53e7df2400ff80f29cc","skillId":"audit-imported-code","state":"accepted"},{"acceptedSubmissionHash":null,"dependsOn":["adapt_contract_project","write_foundry_tests","manifest","audit_math","audit_permissions","audit_economics","audit_flow"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"af3aa01159bbf354f621cafa5c0006f6169e0938a8b015be508b7377dbf165bc","skillId":"audit-judge","tools":[]},"key":"audit_judge","kind":"code","role":"review","skillHash":"af3aa01159bbf354f621cafa5c0006f6169e0938a8b015be508b7377dbf165bc","skillId":"audit-judge","state":"waiting"},{"acceptedSubmissionHash":null,"dependsOn":["adapt_contract_project"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"e5ac2cb1fd91a56aa40b16487fc230c48de0d317c8266140331dd3219bb40a85","skillId":"audit-specialist","tools":[]},"key":"audit_math","kind":"code","role":"review","skillHash":"e5ac2cb1fd91a56aa40b16487fc230c48de0d317c8266140331dd3219bb40a85","skillId":"audit-specialist","state":"waiting"},{"acceptedSubmissionHash":null,"dependsOn":["adapt_contract_project"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"e5ac2cb1fd91a56aa40b16487fc230c48de0d317c8266140331dd3219bb40a85","skillId":"audit-specialist","tools":[]},"key":"audit_permissions","kind":"code","role":"review","skillHash":"e5ac2cb1fd91a56aa40b16487fc230c48de0d317c8266140331dd3219bb40a85","skillId":"audit-specialist","state":"waiting"},{"acceptedSubmissionHash":null,"dependsOn":["adapt_contract_project"],"execution":{"network":false,"profile":"foundry","requires":[],"tools":[]},"key":"manifest","kind":"code","role":"integrate","skillHash":null,"skillId":null,"state":"waiting"},{"acceptedSubmissionHash":null,"dependsOn":["adapt_contract_project"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"4c76766b00591dfe982fe85d3de589fdb2f810e5137c301155d1c5e36a1d3b23","skillId":"write-foundry-tests","tools":[]},"key":"write_foundry_tests","kind":"code","role":"tests","skillHash":"4c76766b00591dfe982fe85d3de589fdb2f810e5137c301155d1c5e36a1d3b23","skillId":"write-foundry-tests","state":"waiting"}],"objective":"Launch the $YOLO token and support contracts of moneycanbuy.fun as they are: a custom_token launch from this repository on Ethereum mainnet, paired with IMD, the second of four. From launch #2292: the YoloSplitter (remainderTo) and the NftGate (a token argument); the core (YoloLockHub, CaseDesk, DisputeDesk, TaskVault) follows as an evm_contracts launch taking this one's addresses as static arguments, then the $YOLO modules. script/LaunchPlan.sol is all four launches in code (support is this one).\n\nToken: contract YoloToken, name \"YOLO\", symbol YOLO, 18 decimals, constructorArgs [\"$poolManager\", \"0x97C8Fe82527F1a65A147bB0b425C717E4EC547C2\", \"0x3c587Eff6c96eAcF7E3dcC2CFf6416161386E48C\", \"1792526400\"], totalSupply 1000000000000000000000000000 (1,000,000,000 minted once to msg.sender, the factory). No owner, no mint, burn or pause, no list anyone can edit. A buy is a transfer out of the Uniswap v4 PoolManager ($poolManager, compared with nothing), a sell a transfer into it. Trading opens at openAt = 1792526400 (unix seconds, immutable, deployment to +30 days, else BadOpenAt); before it every buy reverts TradingNotOpen(openAt), seeding works. From openAt YoloToken._update taxes buys and sells on a fixed self-ending schedule, in YOLO, to the project wallet 0x3c587Eff6c96eAcF7E3dcC2CFf6416161386E48C fixed at deployment (non-zero):\n- minutes 0-30: only snapshot wallets buy, untaxed. The token reverts SnapshotNotSealed() unless sealedAt() of the NftGate 0x97C8Fe82527F1a65A147bB0b425C717E4EC547C2 is before openAt, then calls consume(buyer, amount): NotWhitelisted(buyer) outside the snapshot, NftAllowanceExceeded(buyer, left, wanted) above what is left of 500,000 YOLO per NFT for the window. No code at the gate address means no whitelist (a bare test chain), not a switch. Every sell pays 30%.\n- minutes 30-60: anyone trades; the tax on both sides falls linearly from 30% to 0. Buy tax = amount x 3000 x (3600 - seconds since openAt) / 18,000,000 rounded down, taken from what the pool sends.\n- from minute 60: a plain ERC-20 for good.\nA sell's tax comes on top, from the seller's wallet: the pool gets exactly what the swap settles, the tax is its share of all the seller parts with (100 YOLO sold at 30%: 70 to the pool, 30 to the project wallet). Wallet transfers are never taxed, nor sells before openAt (not refused either); the deployer (the factory: seeding, claimFees, the swarm's share) and the PoolManager are exempt.\n\nKnown limits, accepted by design: the gate calls in minutes 0-30 (a fixed address deployed first, writes only its own storage); a buy kept as an ERC-6909 claim in the PoolManager is no transfer, so it skips openAt, the gate and the tax until taken out, and a claim can be sold back untaxed; liquidity added from a wallet after openAt pays the sell tax; YOLO pools outside Uniswap v4 are not taxed; in minutes 0-30 a route paying a router or contract first is refused (the Universal Router's TAKE_ALL passes, fork-tested); the router checks its minimum output before the buy tax; scanners flag the opening time, whitelist, taxes and external calls.\n\nEconomics, copied into launch.json exactly: poolBps 1500, initialMarketCapWei 15000000000000000000000, remainderTo 0xF165884070B1A1E571F4A3b50FD727FE8380Bee4. Pool: fee 12500, tick spacing 60.\n\nContracts, in this order:\n1. DevPrices, constructorArgs [\"0x8Ad18E99F4C8d8406f9Ba8899CF308000518A981\", \"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48\", \"0xd34a99bc0f67ae1bbd63c660e6d0b0dd03e263b7\", \"$token\", \"1000000000000000\", \"2300000000000000000000\", \"4440000000000000000\"]\n2. UniswapV3SwapAdapter, constructorArgs [\"0x68b3465833fb72a70ecdf485e0e4c7bd8665fc45\", \"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2\"]\n3. ParamsRegistry, constructorArgs [\"0x3c587Eff6c96eAcF7E3dcC2CFf6416161386E48C\", \"0xa43e6f75ee006411f79ac1c84120606c2330de82\", \"$contract:DevPrices\", \"$contract:UniswapV3SwapAdapter\", \"0x0000ec93127baa929e58e97dd0095a2bfb38ec1d\", \"0x00000000000000447e69651d841bd8d104bed493\", \"0x3c587Eff6c96eAcF7E3dcC2CFf6416161386E48C\", \"0x5598aa9146215bc13eb26f2c692ad1461fd32982\"]\n4. TextRules, constructorArgs []\n5. SwarmQuestionBuilder, constructorArgs []\n6. VotePower, constructorArgs [\"0x0000ec93127baa929e58e97dd0095a2bfb38ec1d\", \"0x00000000000000447e69651d841bd8d104bed493\"]\n7. AttestationChecker, constructorArgs [\"$contract:ParamsRegistry\"]\n8. BuybackBurner, constructorArgs [\"$token\", \"0xd34a99bc0f67ae1bbd63c660e6d0b0dd03e263b7\", \"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48\", \"$contract:DevPrices\", \"0x027e55f01e8cf808e5d2a2ad68e5e7f67fd6df6e\"]\n\nWhat each does: DevPrices holds every price the protocol uses, set by hand by its owner, the dev wallet; no oracle. USD per whole YOLO (start 0.001), ETH (start 2,300) and IMD (start 4.44), USDC fixed at $1; zero is refused and one call moves a price at most 10x up or down, each change an event. Prices never decide who is paid: they only set the stake bonus (a doer's YOLO lock against the reward plus the YOLO add-on). The dev wallet alone may cancel a task (everyone takes back what they put in, the dev wallet gets nothing). The adapter swaps ETH or USDC to IMD for bonds paid in another currency. ParamsRegistry holds versioned parameters (version 1 compiled in) and the swarm answer signers; its owner changes both only behind a 48-hour timelock, inside compiled bounds, and can pause new tasks; it never moves or freezes money, but the signer set is global (a change reaches open cases; the last signer stays). TextRules, SwarmQuestionBuilder and AttestationChecker are stateless helpers. VotePower says who may vote with an identity.md NFT now: its owner or the owner's delegate.xyz v2 delegate; no registration, snapshot, state or owner. BuybackBurner swaps nothing: YOLO burn shares wait there and anyone may call burnYolo() (all YOLO to 0x000000000000000000000000000000000000dEaD); the vault sends ETH, USDC and IMD burn shares straight to the buyback wallet at the payout, and anything stuck there anyone sends on with forward(token) or pull(vault, token); no caller reward. The buyback wallet starts at 0x027E55f01e8Cf808E5D2a2Ad68E5e7f67fD6dF6E; only the DevPrices owner changes it (setBuybackWallet, an event).\n\nEvery constructor takes only addresses and integers, with no external call. None of these eight contracts holds user funds. Supply: the swarm 10%, the pool 15%, the YoloSplitter 75%.\n\nThe tests must keep passing: forge test (686 tests), and forge test with FORK_URL set to a mainnet archive RPC: test/fork/LaunchRehearsal.fork.t.sol runs all four launches through the live ProjectFactory, checks each against the 16,777,216 gas cap (this one ~12.7M), trades YOLO's first hour through the live Universal Router (real NFT holders, edges of minutes 30 and 60, exact taxes), runs tasks end to end and sends the burner's ETH, USDC and IMD to the buyback wallet.\n\nAudit it as it arrived. Adapt only what the launch rules or a reproduced audit finding require, and record each change in ADAPTATION.md. Without such a finding do not change the token, its supply, the gate, the taxes or the schedule, the economics, the recipients, the parameter values, bounds or timelock, the prices or constructor arguments, nor add an owner, a pause, an upgrade path, minting or a fee.\nKnown limitations listed in docs are accepted rules, not findings; do not change them.","parentJobId":null,"planHash":"9692475855640ae51858f208c82ecde1fc6454b300ab3a3aab9dd0945ac06ba2","previousHash":"0000000000000000000000000000000000000000000000000000000000000000","projectId":"2c065b1e-d033-4560-afee-8b7f782632d5","publication":{"commit":null,"deliveredAt":null,"repoUrl":"https://github.com/identity-md-launches/launch-2309-launch-yolo-token-support"},"receiptIdentity":{"adapter":"0xde152afb7db5373f34876e1499fbd893a82dd336","chainId":1,"collection":"0x0000ec93127baa929e58e97dd0095a2bfb38ec1d","registry":"0x8004a169fb4a3325136eb29fa0ceb6d2e539a432"},"registry":"0xb6d0a187b050fa5bb0b87033a203f37becf4a775","research":[],"schema":"identitymd-work-v1","signals":[{"agentId":"52232","feedbackHash":"2b14bb4b5bb4b109c747891520f191a460e76c352f1f3156be85fcfafaa590c1","nodeKey":"adapt_contract_project","submissionHash":"f99e3cd36da4241158f5bc8141bda57c9f06ce01909054a05bf0d50894c957a3","tag1":"verification:checks","tag2":"acceptance-v2","value":0},{"agentId":"52604","feedbackHash":"b7a7e5adf7380c315f3bb8a1a187ebb036faffebbaee6b95fa87754093d6cf34","nodeKey":"adapt_contract_project","submissionHash":"5daa8a1a3950ee5a637ee9f98b8edd69912b0ecaaa363b142482ca6011d683c0","tag1":"verification:checks","tag2":"acceptance-v2","value":0},{"agentId":"52179","feedbackHash":"ea645979c6c08637b320a5141fd3c11761975da434b9ea76e3f5730fe9f3dfdd","nodeKey":"audit_imported_code","submissionHash":"175d6fcaa716cfe8d3a687280178952347b60f1b61ca0da4cd1a40424c9d123b","tag1":"review:submission","tag2":"acceptance-v2","value":1}],"site":null,"snapshotHash":"52077e6e80907208b11a8cf096eea2c27c1ba66a1aab52e8285d5b22da3b61ea","state":"blocked","submissions":[{"artifacts":[],"attempt":1,"bundleHash":null,"device":"02f22d6f13810ca8","findings":[{"citation":"resolved","description":"The token's fourth constructor argument is the absolute unix time 1792526400 = 2026-10-20T20:00:00Z. At review time (2026-10-20 15:30 UTC, block timestamp 1792510173 on mainnet) that is 4.5 hours away, and the launch still has to go through adaptation, the full audit panel, publication, attestation, admission and the deployer queue. The constructor refuses any openAt_ below block.timestamp, so if ProjectFactory.launchCustom is mined at or after 20:00:00 UTC today the YoloToken creation reverts and with it the whole factory transaction: no token, no pool, none of the eight support contracts. Read live on mainnet at the same time: the gate 0x97C8Fe82527F1a65A147bB0b425C717E4EC547C2 has code (3835 hex chars), writer 0x3c587Eff6c96eAcF7E3dcC2CFf6416161386E48C, sealedAt() = 0, walletCount() = 0, totalNfts() = 0. The token requires sealedAt() != 0 and sealedAt() < openAt (line 142, SnapshotNotSealed), otherwise every buy in minutes 0-30 reverts while every sell pays 30%. Writing and sealing the whole identity.md holder snapshot before 20:00 UTC on top of deploying the launch is not realistic. The value is a launch input, not code: the adapter must set openAt to a time safely after the expected deployment and after the gate's seal (the constructor allows up to deployment + 30 days). Nothing else about the schedule needs to change.","line":74,"path":"src/token/YoloToken.sol","reproduction":"vm.warp(1792526401); new YoloToken(0x000000000004444c5dc75cB358380D2e3dE08A90, 0x97C8Fe82527F1a65A147bB0b425C717E4EC547C2, 0x3c587Eff6c96eAcF7E3dcC2CFf6416161386E48C, 1792526400) -> reverts BadOpenAt(1792526400); expected a launch deployed anywhere in the pipeline's realistic window to succeed (checked in test/scratch/AttestVector.t.sol test_openAtMarginFromWallClock, which logged 16309 seconds left at run time). Second input: deploy at 1792526399 against the gate as it is live now (sealedAt 0), warp to 1792526400, pool transfers 1e18 YOLO to a snapshot wallet -> reverts SnapshotNotSealed(); expected the whitelisted buy to pass.","severity":"medium","snippet":"        if (openAt_ < block.timestamp || openAt_ > block.timestamp + MAX_OPEN_DELAY) revert BadOpenAt(openAt_);","title":"openAt 1792526400 (2026-10-20 20:00 UTC) is hours away and the live NftGate is unsealed: the token constructor reverts BadOpenAt for a launch mined after it, and an unsealed gate makes minutes 0-30 un"},{"citation":"resolved","description":"activateParams (line 94) and executeAttester (line 191) check only that the eta has passed; there is no grace period after which a proposal lapses, and attester proposals are keyed per (attester, allowed) so an add and a remove for the same key can be pending together. Once the 48 hours are over, any address can execute at any later time, including after an Ownable2Step handover to a new owner who never saw the proposal. A compromised attester key the owner proposed to add and then decided against stays addable forever unless the owner remembers to cancel. This is weaker than the stated guarantee that the owner changes the signer set and the parameters behind a 48-hour timelock.","line":191,"path":"src/ParamsRegistry.sol","reproduction":"Owner calls proposeAttester(X, true) at t0 and proposeAttester(X, false) at t0 + 1 day (changed their mind, did not cancel the first). At t0 + 3 days, any address calls executeAttester(X, false) (no-op, X was never an attester) then executeAttester(X, true): isAttester[X] == true, attesterCount == 2, and X now signs swarm answers for every open case. Expected: a proposal the owner superseded cannot take effect; actual: whoever orders the two executions decides the final set. Same for proposeParams: a set proposed at t0 and forgotten stays activatable by anyone at t0 + 1 year via activateParams, becoming the version every new task records.","severity":"low","snippet":"        if (block.timestamp < eta) revert TimelockNotPassed();","title":"ParamsRegistry timelock proposals never expire and are executable by anyone in any order, so a stale or superseded proposal can be activated long after the owner's intent changed"},{"citation":"resolved","description":"The try/catch only catches a revert of the callee. When nft has no code, the empty return data fails ABI decoding in the caller itself, which is outside the try and reverts mayVote (and firstNotHeld). The DisputeDesk relies on the documented never-reverts behaviour to treat an unusable NFT as 'may not vote'. On mainnet 0x0000eC93127BAA929E58E97dd0095A2BFb38ec1D has code, so this is only reachable on a chain or deployment where the constructor argument is wrong or the NFT is not yet deployed; it is reported so the adapter does not rely on the comment.","line":37,"path":"src/VotePower.sol","reproduction":"VotePower vp = new VotePower(address(0x1234), address(0)); address(vp).staticcall(abi.encodeWithSelector(vp.mayVote.selector, address(this), 1)) returns (ok = false, returndata 0x). Expected per the docstring: mayVote returns false. Actual: the call reverts with empty data (observed in test/scratch/AttestVector.t.sol test_votePowerNoCodeNft).","severity":"low","snippet":"        try nft.ownerOf(id) returns (address o) {","title":"VotePower.mayVote reverts instead of returning false when the NFT address holds no code, contrary to its 'Never reverts' contract"},{"citation":"resolved","description":"The oracle-consumer reference's _verifyAttestation reverts when block.timestamp > expiresAt (so a zero expiresAt is always expired) and when issuedAt is further ahead of the clock than a tolerance. The checker accepts expiresAt == 0 indefinitely and ignores issuedAt. The digest itself was verified against the protocol's signed vector (test/scratch/AttestVector.t.sol test_digestMatchesTheProtocol passes), so an attestation must still be signed by an attester in the registry; the oracle never issues expiresAt 0 (validForSeconds is 60 s to 30 days). The gap only matters if an attester key signs a non-expiring bool answer, which could then be replayed into any later question whose requestId the vault accepts.","line":53,"path":"src/helpers/AttestationChecker.sol","reproduction":"Attestation a with answerType 0, answer abi.encode(true), panelSize 7, quorum 5, agreed 5, issuedAt 1, expiresAt 0, signed by an attester for the vault's domain: check(vault, 7, 5, a, sig) returns 0 at any block.timestamp. Expected (reference behaviour): refused as expired.","severity":"info","snippet":"        if (a.expiresAt != 0 && a.expiresAt < block.timestamp) return 6;","title":"AttestationChecker treats expiresAt == 0 as 'no expiry' and never checks issuedAt, where the protocol's reference consumer rejects both"},{"citation":"resolved","description":"pull(vault, token) is permissionless and does not restrict vault to the TaskVault, so any caller can have the burner, as msg.sender, call the selector withdraw(address) on any address with any argument. The burner grants no approvals and sends nothing in that call, so no loss was found; the burner's own balances can only leave through burnYolo, forward and a token contract's own semantics. Reported as a trust note for the adapter: a fixed vault address or a check that msg.sender's target is the vault would close the surface at no cost to the design.","line":122,"path":"src/BuybackBurner.sol","reproduction":"Any EOA calls pull(0xAnyContract, 0xAnyToken): the burner executes 0xAnyContract.withdraw(0xAnyToken) with msg.sender == burner; the call's success or revert is propagated. No concrete funds movement from the burner was found.","severity":"info","snippet":"        IVaultWithdraw(vault).withdraw(token);","title":"BuybackBurner.pull lets anyone make the burner call withdraw(address) on an arbitrary contract"}],"hash":"175d6fcaa716cfe8d3a687280178952347b60f1b61ca0da4cd1a40424c9d123b","nodeId":"72d2781f-2190-47f3-a695-b7473f3b3627","outcome":"completed","summary":"The wording check returned no blockers for the vault's question shape, and the panel size of 7 clears the live minimum of 5. The findings file is complete and validated, so I'm done.\n\n## Review result\n\nFive findings are recorded in `.imd-findings.json`. None is a loss-of-funds defect in the eight support contracts. The one that matters for the launch is a constructor input, not code.\n\n**Medium: the opening time cannot be met.** The token's `openAt` argument is 1792526400, which is 20:00 UTC today, about 4.5 hours after this review. The constructor reverts `BadOpenAt` for any launch mined after that second, which reverts the whole factory transaction. Read live on mainnet, the gate at the token's gate address has code but `sealedAt()` is 0 with zero wallets recorded. Even a launch mined in time would then refuse every buy for the first 30 minutes with `SnapshotNotSealed` while sells pay 30%. The adapter must move `openAt` to a time safely after the expected deployment and the snapshot's seal. No proof test is attached because the fix is a manifest value, not code a test can track.\n\n**Low findings**\n- ParamsRegistry proposals never lapse and are executable by anyone in any order. A superseded add-attester proposal can still be executed after a remove, so whoever orders the two calls decides the final signer set.\n- VotePower's `mayVote` reverts rather than returning false when the NFT address has no code, against its own \"never reverts\" contract. Only reachable with a wrong NFT argument; the mainnet NFT has code.\n\n**Info**\n- AttestationChecker accepts `expiresAt == 0` forever and ignores `issuedAt`, where the protocol's reference consumer rejects both. The digest itself matches the protocol's signed vector, which the repo's own tests never check.\n- BuybackBurner's `pull` lets anyone make the burner call `withdraw(address)` on an arbitrary contract. No funds movement was found.\n\n**Verified clean, with evidence**\n- Constructor argument order and values for all eight contracts match the task and the launch plan. The intake, oracle signer, IMD, USDC, SwapRouter02, delegate.xyz v2 and identity.md NFT addresses were confirmed on mainnet, including the delegate registry's function signature and the intake's 0.5 IMD price.\n- The token's tax arithmetic reproduces the stated numbers: a 100 YOLO sell at 30% puts 70 in the pool and 30 to the project wallet, and the buy tax formula matches the spec.\n- TextRules' word-at-a-time ASCII scan is exact for the boolean test, and the host allowlist resists userinfo, port, case and subdomain tricks.\n- A sample of the vault's swarm question passed the oracle wording check with no blockers.\n\n**Contracts read:** DevPrices, UniswapV3SwapAdapter, ParamsRegistry with VaultParams, TextRules, SwarmQuestion and SwarmQuestionBuilder, VotePower, AttestationChecker with OracleAttestation, BuybackBurner, YoloToken, NftGate and the launch plan script.\n\n**Not reached:** TaskVault, CaseDesk, DisputeDesk, YoloLockHub, YoloPredict, YoloSweetener, DareTrophy, TrophyCatalog, ProtocolDirectory, HiddenList, YoloSplitter and the vestings. They belong to the other launches. The full 686-test suite was not run because compiling the test tree exceeds the ten-minute tool limit, and the fork rehearsal was not run without a FORK_URL. One unverified lead for the adapter: the swarm body's `consumer` member shape could not be checked against the intake's schema offline.","treeHash":null,"usage":{"cachedInputTokens":1616152,"inputTokens":450,"model":"claude-fable-5-1","outputTokens":38988,"runtime":"claude","turns":39,"wallClockMs":1409697}},{"artifacts":[],"attempt":2,"bundleHash":"f56d9ec270a7402c868c918b5a53160c858ebd8f18908f5ebdec04a19e1d5280","device":"9e17b97b8ac7c97a","findings":[],"hash":"5daa8a1a3950ee5a637ee9f98b8edd69912b0ecaaa363b142482ca6011d683c0","nodeId":"1c81a936-224d-4e35-a793-3d1a8e6892fb","outcome":"completed","summary":"The work is complete and verified.\n\n**Outcome.** The project launches as it arrived, with six changes, each tested. The full suite passes with the verifier's fuzz seed: 693 tests passed, 0 failed, 3 skipped (the fork tests, which need an archive RPC that this machine does not have). The project's own launch-text checker also passes.\n\n**What was wrong before**\n\n- The previous attempt failed static analysis on two high-confidence lines. `TaskVault.collectBondPart` pulled tokens from a desk-supplied `from`, and `YoloLockHub._history` was only written through a storage pointer.\n\n**Changes, all recorded in ADAPTATION.md**\n\n- **openAt**: the brief's value 1792526400 was 20:00 UTC today, under three hours from the adaptation, and the live gate is unsealed. A launch mined after it reverts in the token constructor. The plan now names `LaunchPlan.OPEN_AT = 1793390400` (2026-10-30 20:00 UTC). The token code is untouched. ADAPTATION.md tells the manifest step to use `\"1793390400\"` as the fourth token argument.\n- **TaskVault bank**: the reentrancy flag now records the vault's caller, and `collectImd` / `collectBondPart` pull only from that wallet, reverting `WrongPayer` otherwise. The desk interface and gas are unchanged.\n- **YoloLockHub**: checkpoints are written through the mapping directly. No behaviour change.\n- **VotePower**: returns false instead of reverting when the NFT or the delegate registry has no code.\n- **AttestationChecker**: `expiresAt == 0` is expired and an `issuedAt` more than five minutes ahead of the clock is refused, matching the IMD reference consumer. One existing test that encoded the old rule was updated.\n- **ParamsRegistry**: proposing an attester change cancels the pending opposite proposal for the same signer. The timelock itself is unchanged.\n\n**Left alone, with reasons in the notes.** The burner's `pull` surface (no loss, named in the launch text, vault address unknown at deployment), proposal expiry (would change the fixed timelock), and the lower-confidence analyser lines that describe intended behaviour.\n\n**Risk flagged.** A floor that deploys the token at an arbitrary block time and buys immediately hits `BadOpenAt` or `TradingNotOpen`. That is the requester's accepted design, so it is documented rather than changed.","treeHash":"7320ee7cafcaa4fdaa9db49c96900e726793b7f4","usage":{"cachedInputTokens":4861353,"inputTokens":1412,"model":"claude-fable-5-1","outputTokens":44732,"runtime":"claude","turns":46,"wallClockMs":2133708}},{"artifacts":[],"attempt":3,"bundleHash":null,"device":"5e7415761e1c9515","findings":[],"hash":"70ee3a567a2ba4d8e3989ec9d2dd00b5dac36ea491e57d4f6a77b6f58f0835c9","nodeId":"1c81a936-224d-4e35-a793-3d1a8e6892fb","outcome":"failed","summary":"needs input: The imported opening-time finding requires a replacement launch input. The specified openAt 1792526400 is 2026-10-20 20:00 UTC; YoloToken rejects deployment after that timestamp. Mainnet reads on 2026-10-20 at approximately 18:23 UTC confirmed that NftGate 0x97C8Fe82527F1a65A147bB0b425C717E4EC547C2 still has sealedAt=0, walletCount=0 and totalNfts=0. No replacement opening time or confirmed deployment-and-sealing window is supplied, and choosing one would guess the requester's launch schedule. — What replacement openAt Unix timestamp should this launch use, allowing deployment and snapshot sealing strictly before opening and satisfying the constructor's maximum 30-day deployment-to-opening delay?","treeHash":null,"usage":{"cachedInputTokens":3822208,"inputTokens":179339,"model":"gpt-6-astra","outputTokens":11628,"runtime":"codex","turns":6,"wallClockMs":669950}},{"artifacts":[],"attempt":1,"bundleHash":"b1ca66da9c687f514c4de896bb246792a3c400017ecfb2ccee26bd204b63dbd6","device":"82692ab5f7f7e54e","findings":[],"hash":"f99e3cd36da4241158f5bc8141bda57c9f06ce01909054a05bf0d50894c957a3","nodeId":"1c81a936-224d-4e35-a793-3d1a8e6892fb","outcome":"completed","summary":"The adaptation is complete, committed, and verified: `forge build` passes and `forge test` runs 692 tests with 0 failures (3 fork tests skipped without an archive RPC), using the verifier's fuzz seed.\n\n**What the launch rules forced.** The floor's bare chain runs at timestamp 1 with no code at the gate address. There, the token as delivered could not be constructed at all (any absolute openAt is more than 30 days ahead of timestamp 1, so `BadOpenAt`), a buy before openAt reverts, and a sell of the whole purchase in the first hour reverts because the 30% tax comes on top. No single timestamp passes the floor's buy-then-sell. The token now records whether the gate had code at deployment. Without it (a bare chain) it is a plain ERC-20 and openAt is not bound to the deployment window. With it (mainnet, where the gate from launch #2292 exists and code never leaves an address) nothing changed: the opening time, whitelist and taxes apply exactly as delivered.\n\n**Audit findings, reproduced and fixed, each with a test in test/Adaptation.t.sol:**\n- openAt 1792526400 (20:00 UTC today) would revert the whole factory transaction for a launch mined after it. The token code is unchanged; the manifest value moves to 1793131200 (2026-10-27 20:00 UTC), a named constant in LaunchPlan and the README. ADAPTATION.md spells out the token's new constructorArgs for the manifest step.\n- ParamsRegistry proposals now lapse 7 days after their eta, and proposing an attester change cancels the pending opposite one. The 48-hour timelock, bounds and values are untouched.\n- VotePower returns false instead of reverting when the NFT or delegate registry has no code.\n- AttestationChecker treats expiresAt 0 as expired and refuses an issuedAt more than 5 minutes ahead of the clock, matching the protocol's reference consumer.\n\n**Not changed:** BuybackBurner.pull with an arbitrary vault reproduces but causes no loss (no approvals, no positions), and the vault cannot be a constructor argument since it deploys in launch 2. Documented as a trust note.\n\n**Tests changed with the behaviour:** one token test that encoded the schedule staying on without the gate, one swarm audit test that expected expiresAt 0 to be accepted, and the code-size margin constant for ParamsRegistry (now 10,801 bytes), with the matching doc line. All reasons are in ADAPTATION.md.\n\nOne caveat for the requester: the launch must be mined before 2026-10-27 20:00 UTC and the project wallet must seal the NftGate snapshot before then. Another time inside the 30-day window is theirs to choose.","treeHash":"90ca25dc81d6fd5bdd1dc3fc16a2247909a9ee2a","usage":{"cachedInputTokens":4363856,"inputTokens":962,"model":"claude-fable-5-1","outputTokens":63786,"runtime":"claude","turns":79,"wallClockMs":2988153}}],"verification":[{"checks":[{"durationMs":514670,"exitCode":0,"name":"build","output":"Compiling 177 files with Solc 0.8.28\nSolc 0.8.28 finished in 514.49s\nCompiler run successful with warnings:\nWarning (3628): This contract has a payable fallback function, but no receive ether function. Consider adding a receive ether function.\n  --> src/TaskVault.sol:67:1:\n   |\n67 | contract TaskVault {\n   | ^ (Relevant source part starts here and spans across multiple lines).\nNote: The payable fallback function is defined here.\n   --> src/TaskVault.sol:185:5:\n    |\n185 |     fallback() external payable {\n    |     ^ (Relevant source part starts here and spans across multiple lines).\n\nWarning (3628): This contract has a payable fallback function, but no receive ether function. Consider adding a receive ether function.\n --> foundry-pp/DeployHelper95.sol:7:1:\n  |\n7 | abstract contract DeployHelper95 is TaskVault {\n  | ^ (Relevant source part starts here and spans across multiple lines).\nNote: The payable fallback function is defined here.\n   --> src/TaskVault.sol:185:5:\n    |\n185 |     fallback() external payable {\n    |     ^ (Relevant source part starts here and spans across multiple lines).\n\nWarning (2072): Unused local variable.\n  --> test/audit/swarm117/SwarmAudit117.t.sol:29:10:\n   |\n29 |         (uint256 t, uint256 s) = _decidedAccept();\n   |          ^^^^^^^^^\n\n","passed":true},{"durationMs":17777,"exitCode":0,"name":"test","output":"No files changed, compilation skipped\n\nRan 2 tests for test/audit/StakePowerRelock.t.sol:StakePowerRelockTest\n[PASS] test_RelockOfAnEndedLockGivesNoStakePower() (gas: 241519)\n[PASS] test_WithdrawThenLockGivesZero_reference() (gas: 303292)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 807.49µs (310.25µs CPU time)\n\nRan 2 tests for test/review/ReviewProofFormat.t.sol:ReviewProofFormat\n[PASS] test_VideoAndTx() (gas: 133853)\n[PASS] test_XPostForms() (gas: 190014)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 959.29µs (757.71µs CPU time)\n\nRan 2 tests for test/review/ReviewYolo.t.sol:ReviewYoloUnit\n[PASS] test_vestingStreamsFromArrivalWithoutACliff() (gas: 897695)\n[PASS] test_whitelistRefusesOutputTakenToARouter() (gas: 1179155)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 1.69ms (1.44ms CPU time)\n\nRan 1 test for test/fork/LaunchRehearsal.fork.t.sol:LaunchRehearsalForkTest\n[SKIP: skipped] setUp() (gas: 0)\nSuite result: ok. 0 passed; 0 failed; 1 skipped; finished in 1.97ms (0.00ns CPU time)\n\nRan 2 tests for test/audit/AuditSweetenerBonus.t.sol:AuditVestingClock\n[PASS] test_clockStartsAtTheFirstReleaseWithABalance() (gas: 1732627)\n[PASS] test_splitStartsTheClocks() (gas: 4708453)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 2.14ms (1.63ms CPU time)\n\nRan 1 test for test/audit/AuditA.t.sol:AuditAUnit\n[PASS] test_Guard_vestingClocksStartAtTheSplit() (gas: 4073728)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 2.59ms (1.62ms CPU time)\n\nRan 1 test for test/audit/MaxImdInCap.t.sol:MaxImdInCapTest\n[PASS] test_AppealPullsMoreImdThanMaxImdIn() (gas: 1646325)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 5.04ms (1.10ms CPU time)\n\nRan 2 tests for test/audit/LateAppealAsk.t.sol:LateAppealAskTest\n[PASS] test_LateAppealAskReverts() (gas: 2111802)\n[PASS] test_TimelyAppealAskIsAsked() (gas: 2283277)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 5.91ms (2.44ms CPU time)\n\nRan 5 tests for test/review/ReviewLaunch.t.sol:ReviewLaunchStatic\n[PASS] test_L0_docLaunch0Args_matchPlan() (gas: 524751)\n[PASS] test_L1_perContractCodeMargin_matchesDoc() (gas: 37690752)\nLogs:\n  DevPrices 2467 runtime, margin 22109\n  UniswapV3SwapAdapter 1673 runtime, margin 22903\n  ParamsRegistry 13675 runtime, margin 10901\n  TextRules 5249 runtime, margin 19327\n  SwarmQuestionBuilder 5506 runtime, margin 19070\n  VotePower 956 runtime, margin 23620\n  AttestationChecker 2189 runtime, margin 22387\n  BuybackBurner 2614 runtime, margin 21962\n  NftGate (launch 0) 1916 runtime, margin 22660\n  IncentivesVesting (launch 0) 1936 runtime, margin 22640\n  DevVesting (launch 0) 1888 runtime, margin 22688\n  TeamVesting (launch 0) 1888 runtime, margin 22688\n  TreasuryVesting (launch 0) 1936 runtime, margin 22640\n  YoloSplitter (launch 0) 2113 runtime, margin 22463\n  YoloToken 4015 runtime, margin 20561\n  YoloLockHub 3297 runtime, margin 21279\n  CaseDesk 20064 runtime, margin 4512\n  DisputeDesk 21489 runtime, margin 3087\n  TaskVault 20840 runtime, margin 3736\n  YoloSweetener 6748 runtime, margin 17828\n  TrophyCatalog 4228 runtime, margin 20348\n  DareTrophy 11777 runtime, margin 12799\n  ProtocolDirectory 4546 runtime, margin 20030\n  HiddenList 3789 runtime, margin 20787\n  YoloPredict 6385 runtime, margin 18191\n\n[PASS] test_L2_docLaunch1Args_matchPlan() (gas: 891015)\n[PASS] test_L3_docLaunch2Args_matchPlan() (gas: 1366854)\n[PASS] test_L5_docLaunch3Args_matchPlan() (gas: 684503)\nSuite result: ok. 5 passed; 0 failed; 0 skipped; finished in 16.73ms (13.72ms CPU time)\n\nRan 3 tests for test/review/ReviewSweetener.t.sol:ReviewYoloStrictTest\n[PASS] test_Guard_PriceVanishingAfterTheQuoteDoesNotAffectTheSubmission() (gas: 1004339)\n[PASS] test_Guard_RevertingDevPricesDoesNotAffectTheSubmission() (gas: 957438)\n[PASS] test_Guard_creationNeedsNoPrice() (gas: 532516)\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 17.92ms (1.29ms CPU time)\n\nRan 1 test for test/audit/StepDeadlineAppealed.t.sol:StepDeadlineAppealedTest\n[PASS] test_StepDeadlineAppealed_IsVoidMoment() (gas: 2227018)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 20.28ms (1.61ms CPU time)\n\nRan 1 test for test/review/ReviewYolo.t.sol:ReviewYoloVault\n[PASS] test_depressedPrice_touchesNeitherNewYoloTasksNorAnExistingBond() (gas: 1754960)\nLogs:\n  doer bond rew, honest / attacked: 300000000000000000000000 300000000000000000000000\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 21.51ms (1.31ms CPU time)\n\nRan 1 test for test/LogReconstruction.t.sol:LogReconstructionTest\n[PASS] test_AllTextsRecoverableFromLogsByteForByte() (gas: 1452326)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 17.24ms (835.43µs CPU time)\n\nRan 7 tests for test/review/ReviewProofs.t.sol:ReviewProofs\n[PASS] test_AppealPriceJump_RevertsWithMaxImdIn() (gas: 2268220)\n[PASS] test_BodyBoundedByParams_OneDisputerOnly() (gas: 2623770)\n[PASS] test_BondNeverDoubles_SubmitPassesWithQuotedMax() (gas: 1434450)\n[PASS] test_DisputeVoteAppealAfterTaskDeadline() (gas: 2241857)\n[PASS] test_Eip7702Voter_EcdsaSignatureCounted() (gas: 2151860)\n[PASS] test_FrontrunReward_SubmitRevertsWithMinReward() (gas: 1035697)\n[PASS] test_InvalidUtf8Rejected_NonAsciiRejected() (gas: 2408439)\nSuite result: ok. 7 passed; 0 failed; 0 skipped; finished in 26.12ms (8.40ms CPU time)\n\nRan 2 tests for test/audit/AddonAfterSub.t.sol:AddonAfterSubmissionTest\n[PASS] test_AddonAfterSubmission_BatchClaimPaysSweetener() (gas: 2691512)\n[PASS] test_AddonBeforeSubmission_BatchClaimPaysSweetener() (gas: 2588943)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 28.08ms (4.16ms CPU time)\n\nRan 3 tests for test/audit/LazyAppealVoidWindow.t.sol:LazyAppealVoidWindowTest\n[PASS] test_LateReAppealAfterTheVoidWindow_Reverts() (gas: 2278220)\n[PASS] test_PokeAfterVoidPlusWindow_IsFinal() (gas: 2348571)\n[PASS] test_WindowAfterVoid_StartsAtTheVoidMoment() (gas: 2115466)\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 31.02ms (7.13ms CPU time)\n\nRan 8 tests for test/CancelTask.t.sol:CancelTaskTest\n[PASS] test_Cancel_AcceptedByTimerButUnpoked_Reverts() (gas: 1204655)\n[PASS] test_Cancel_AfterExpiry_Reverts() (gas: 513159)\n[PASS] test_Cancel_AfterThePayout_Reverts() (gas: 1255309)\n[PASS] test_Cancel_EveryoneTakesBackExactlyWhatHePutIn_DevGetsNothing() (gas: 7035771)\n[PASS] test_Cancel_NothingNewAfterwards() (gas: 782000)\n[PASS] test_Cancel_OnlyTheDevWallet() (gas: 1335837)\n[PASS] test_Cancel_OpenTaskNoSubmission_PredictPositionsBackInFull() (gas: 1312701)\n[PASS] test_Cancel_UnknownTaskReverts() (gas: 35451)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 32.66ms (10.35ms CPU time)\n\nRan 2 tests for test/audit/StepDeadlineAsked.t.sol:StepDeadlineAskedTest\n[PASS] test_IntakeCompletedWithoutAnswer_IsDueNow() (gas: 406811)\n[PASS] test_Pending_IsTheSilenceDeadline() (gas: 134190)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 25.52ms (533.00µs CPU time)\n\nRan 4 tests for test/GasTextSize.t.sol:GasTextSizeTest\n[PASS] test_CallSwarm_MaxResupply() (gas: 2622647)\nLogs:\n  callSwarm (resupply: 3x512B rules + reason 512B + disputerProofUri 512B, hash+calldata scheme): 1024770\n\n[PASS] test_CreateTask_RealExamples_And_MaxText() (gas: 1513215)\nLogs:\n  createTask (1+1+1 B rules, floor): 332348\n  createTask (forehead: 114+376+219=709 B): 335400\n    of which text-size delta over floor: 3052\n  createTask (supermarket: 307+405+188=900 B): 335225\n    of which text-size delta over floor: 2877\n  createTask (3x512=1536 B, ceiling): 348281\n    of which text-size delta over floor: 15933\n\n[PASS] test_Dispute_MaxReason() (gas: 1298991)\nLogs:\n  dispute (reason 512B + disputerProofUri 512B): 510765\n\n[PASS] test_Submit_MaxProofAndExplanation() (gas: 1872505)\nLogs:\n  submit (proof 512B link + explanation/doerNote 200B, the max note): 1480642\n\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 34.37ms (4.73ms CPU time)\n\nRan 4 tests for test/Hosts.t.sol:HostsTest\n[PASS] test_BadHostsRevert() (gas: 482113)\n[PASS] test_EveryHostPasses() (gas: 3502196)\n[PASS] test_LengthLimit() (gas: 271540)\n[PASS] test_SubmitRejectsOffListLinks() (gas: 1297053)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 35.59ms (11.25ms CPU time)\n\nRan 7 tests for test/adaptation/Adaptation.t.sol:AdaptationTest\n[PASS] test_attestationWithZeroExpiryOrFutureIssuedAtIsRefused() (gas: 133892)\n[PASS] test_attesterProposalSupersedesTheOppositeOne() (gas: 196496)\n[PASS] test_bankRefusesAPayerOtherThanTheVaultCaller() (gas: 71358)\n[PASS] test_bankStillPullsTheBondFromTheDoer() (gas: 895320)\n[PASS] test_lockHubHistoryIsWrittenAndRead() (gas: 1027675)\n[PASS] test_planOpenAtIsLaterAndDeployable() (gas: 21829)\n[PASS] test_votePowerWithoutCodeAnswersFalse() (gas: 116379)\nSuite result: ok. 7 passed; 0 failed; 0 skipped; finished in 36.82ms (9.20ms CPU time)\n\nRan 1 test for test/VoteCountWidth.t.sol:VoteCountWidthTest\n[PASS] test_PastUint16Limit_StuckBefore_FineAfter() (gas: 11546)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 157.91µs (27.09µs CPU time)\n\nRan 3 tests for test/audit/swarm117/SwarmAudit117.t.sol:SwarmAudit117SweetenerTest\n[PASS] test_sweetenerLargeBonusWithoutPricePaysInFull() (gas: 7151582)\n[PASS] test_sweetenerNoCapWithAPrice() (gas: 7070218)\n[PASS] test_sweetenerPayoutWithoutPricePaysAtOnce() (gas: 7203334)\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 37.90ms (21.41ms CPU time)\n\nRan 3 tests for test/review/ReviewProofLabel.t.sol:ReviewProofLabel\n[PASS] test_PromptSaysTheLabelIsOptional() (gas: 2106824)\n[PASS] test_QuestionHasNoDoerCode() (gas: 2895143)\n[PASS] test_SameLinkFirst_SameQuestionButDoerAndCase() (gas: 4385934)\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 40.74ms (15.22ms CPU time)\n\nRan 2 tests for test/audit/StakeFloorZeroSplit.t.sol:StakeFloorZeroSplitTest\n[PASS] test_NoLock_NoStakeSplit() (gas: 6703904)\n[PASS] test_StakeFlooredToZero_UsesStakedSplit() (gas: 7005630)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 44.45ms (18.01ms CPU time)\n\nRan 5 tests for test/audit/AuditNoMandatoryCheck.t.sol:AuditNoMandatoryCheckTest\n[PASS] test_AppealOnlyAgainstAnNftDecision() (gas: 13004491)\n[PASS] test_NoCheck_AtAnyRewardSize() (gas: 3985513)\n[PASS] test_NoDoubleAppeal() (gas: 7314592)\n[PASS] test_NothingToAppeal_WithoutAnNftDecision() (gas: 6046955)\n[PASS] test_Undisputed_AcceptedByTimer_BondBack() (gas: 5890160)\nSuite result: ok. 5 passed; 0 failed; 0 skipped; finished in 47.38ms (31.12ms CPU time)\n\nRan 6 tests for test/BondBase.t.sol:BondBaseTest\n[PASS] test_Accepted_BondBackWithoutYolo() (gas: 7048598)\n[PASS] test_AuthorsTopUpDuringCheck_CountsOnceInThePot() (gas: 10800833)\n[PASS] test_EthRewardWithYoloAddon_BondIsImdPlusThreePercentEth() (gas: 1675390)\n[PASS] test_QueuedSubmission_BondFixedAtSubmission() (gas: 9413237)\n[PASS] test_Rejected_LoserBondSplitInImdAndEthOnly() (gas: 7726917)\n[PASS] test_TopUps_OnlyTheAuthorsCount() (gas: 7358797)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 59.10ms (41.24ms CPU time)\n\nRan 6 tests for test/OptionalFields.t.sol:OptionalFieldsTest\n[PASS] test_AuthorSubmits_AcceptedQuietly_PaidAsDoer() (gas: 6712355)\n[PASS] test_AuthorSubmits_DisputedRejected_LosesBond() (gas: 7466029)\n[PASS] test_Cover_EmptyAccepted_NonEmptyStillChecked() (gas: 566917)\n[PASS] test_DisputerLink_EmptyAccepted() (gas: 1273062)\n[PASS] test_Note_EmptyAccepted_EveryProofType() (gas: 1869819)\n[PASS] test_Screenshot_EmptyAccepted_OnchainTxAndLink() (gas: 1803754)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 50.23ms (16.92ms CPU time)\n\nRan 8 tests for test/Yolo.t.sol:YoloTest\n[PASS] test_NoDeadlineRefused() (gas: 48493)\n[PASS] test_OtherTokensStillRefused() (gas: 632234)\n[PASS] test_UnpricedYolo_NoPriceNeededAnywhere() (gas: 6925024)\n[PASS] test_YoloBelowMinimumRefused() (gas: 131728)\n[PASS] test_YoloNoMandatoryCheckAtAnySize() (gas: 1268908)\n[PASS] test_YoloTaskAcceptedPaysInYolo() (gas: 6741031)\n[PASS] test_YoloTopUp_LockedUntilExpiry_ThenBack() (gas: 880211)\n[PASS] test_YoloWithRevertingDevPrices_SubmissionStillWorks() (gas: 1050034)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 44.82ms (27.33ms CPU time)\n\nRan 12 tests for test/Payments.t.sol:PaymentsTest\n[PASS] test_BlockedReceiver_PaidAsCredit() (gas: 2018484)\n[PASS] test_EthRefundToRejectingContract_IsCredited() (gas: 896972)\n[PASS] test_ModeA_CallSwarmWithEth() (gas: 8053328)\n[PASS] test_ModeA_CreateImdTaskWithEth() (gas: 3888601)\n[PASS] test_ModeA_Disabled() (gas: 3661124)\n[PASS] test_ModeA_DisputeWithUsdc() (gas: 7125487)\n[PASS] test_ModeA_Reverts() (gas: 2182816)\n[PASS] test_ModeA_SubmitWithEth_SurplusAndExcessRefunded() (gas: 6820856)\n[PASS] test_ReentrancyOnEthPayout_BlockedAndCredited() (gas: 2745193)\n[PASS] test_TopUpHasNoFee() (gas: 4022111)\n[PASS] test_TreasurySweep_TakesEverything() (gas: 6641160)\n[PASS] test_WithdrawTo_ZeroAddress_Reverts() (gas: 765504)\nSuite result: ok. 12 passed; 0 failed; 0 skipped; finished in 65.50ms (48.01ms CPU time)\n\nRan 6 tests for test/Directory.t.sol:DirectoryTest\n[PASS] test_ConstructorChecks() (gas: 6526)\n[PASS] test_CurrentMayGoBack() (gas: 596813)\n[PASS] test_OnlySafeProposesAndCancels() (gas: 587161)\n[PASS] test_ProposalChecks() (gas: 215319)\n[PASS] test_V2SideBySide_AfterTimelock() (gas: 7807374)\n[PASS] test_Version1FromConstructor() (gas: 66747)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 49.36ms (15.25ms CPU time)\n\nWarning: the following cheatcode(s) are deprecated and will be removed in future versions:\n  lastCallGas(): replaced by `lastFrameGas`\nRan 9 tests for test/VoteGas.t.sol:VoteGasTest\n[PASS] test_VoteGas_Claim() (gas: 784126)\nLogs:\n  claimVoterReward exec: 147344\n  claimVoterReward tx: 146518\n\n[PASS] test_VoteGas_ClaimBatch() (gas: 16588789)\nLogs:\n  claimVoterRewards x1 exec: 181276\n  claimVoterRewards x1 tx: 176241\n  claimVoterRewards x4 exec: 394545\n  claimVoterRewards x4 tx: 393246\n  claimVoterRewards x5 exec: 466974\n  claimVoterRewards x5 tx: 465586\n\n[PASS] test_VoteGas_Delegate25_noDecide() (gas: 3989853)\nLogs:\n  vote 25 NFT as delegate (first vote, no decision) exec: 275340\n  vote 25 NFT as delegate (first vote, no decision) tx: 272371\n\n[PASS] test_VoteGas_First1() (gas: 159791)\nLogs:\n  vote 1 NFT (first vote) exec: 144033\n  vote 1 NFT (first vote) tx: 136507\n\n[PASS] test_VoteGas_First100() (gas: 830130)\nLogs:\n  vote 100 NFT (first vote, decides) exec: 597174\n  vote 100 NFT (first vote, decides) tx: 581365\n\n[PASS] test_VoteGas_First100_noDecide() (gas: 4379172)\nLogs:\n  vote 100 NFT (first vote, no decision) exec: 550223\n  vote 100 NFT (first vote, no decision) tx: 540870\n\n[PASS] test_VoteGas_First25() (gas: 353102)\nLogs:\n  vote 25 NFT (first vote, decides) exec: 284487\n  vote 25 NFT (first vote, decides) tx: 274963\n\n[PASS] test_VoteGas_First25_noDecide() (gas: 3902125)\nLogs:\n  vote 25 NFT (first vote, no decision) exec: 237504\n  vote 25 NFT (first vote, no decision) tx: 234468\n\n[PASS] test_VoteGas_Profile() (gas: 678104)\nLogs:\n  vote 1 NFT (first vote) exec: 144033\n  vote 1 NFT (first vote) tx: 136507\n  vote 10 NFT (later vote) exec: 140874\n  vote 10 NFT (later vote) tx: 139102\n  vote 15 NFT (later vote) exec: 161643\n  vote 15 NFT (later vote) tx: 159449\n  vote 2 NFT (later vote) exec: 124602\n  vote 2 NFT (later vote) tx: 123490\n\nSuite result: ok. 9 passed; 0 failed; 0 skipped; finished in 47.07ms (18.12ms CPU time)\n\nRan 1 test for test/audit/round2/Proof_ced07852b14f.t.sol:HiddenListSnipeTest\n[PASS] test_lastSecondSnipeHidesWithoutReply() (gas: 505448)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 697.06µs (298.90µs CPU time)\n\nRan 4 tests for test/audit/AuditNoFallbackOwnVote.t.sol:AuditNoFallbackOwnVoteTest\n[PASS] test_DoerCannotDispute() (gas: 9111979)\n[PASS] test_LostCallbackIsSilence_NoPublicFallback() (gas: 8545482)\n[PASS] test_NoDecisionBelowInstantDelta() (gas: 8692626)\n[PASS] test_PartialCountRelayedByAnOutsiderDecidesNothing() (gas: 8579744)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 70.36ms (47.92ms CPU time)\n\nRan 7 tests for test/review/ReviewSweetener.t.sol:ReviewSweetenerTest\n[PASS] test_Guard_bonusCannotBePulledBeforeTheDeadline() (gas: 7149156)\n[PASS] test_Guard_moduleTakesTokenAndRegistryFromTheVault() (gas: 26381)\n[PASS] test_Guard_reentryFromTheEthRefundIsLocked() (gas: 2310700)\n[PASS] test_Guard_rejectionWithAQueueLeavesNoWithdrawGap() (gas: 11496701)\n[PASS] test_Guard_sweetenPlaysTheTimersFirst_NoAddonIntoADecidedTask() (gas: 9684198)\n[PASS] test_Guard_tieAcceptancePaysTheBonus() (gas: 7493579)\n[PASS] test_Rule_AddonBondsSeparatelyInYolo_NoCap() (gas: 9105084)\nSuite result: ok. 7 passed; 0 failed; 0 skipped; finished in 73.67ms (59.25ms CPU time)\n\nRan 1 test for test/review/ReviewSplitAccess.t.sol:ReviewSplitAccessIsolated\n[PASS] test_Guard_WireClosesWithTheDeployTx() (gas: 69322)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 1.18ms (1.05ms CPU time)\n\nRan 1 test for test/fork/UniswapV3AdapterFork.t.sol:UniswapV3AdapterFork\n[SKIP] test_Fork_EthToImd() (gas: 0)\nSuite result: ok. 0 passed; 0 failed; 1 skipped; finished in 162.85µs (36.84µs CPU time)\n\nRan 1 test for test/audit/swarm117/VestingClockPreStart.t.sol:VestingClockPreStartTest\n[PASS] test_clockCannotBeStartedBeforeTheShareArrives() (gas: 447627)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 498.88µs (182.65µs CPU time)\n\nRan 3 tests for test/audit/swarm117/VestingClockPreStart.t.sol:VestingStarterBindingTest\n[PASS] test_bindingClosesWithTheDeploymentTransaction() (gas: 39262)\n[PASS] test_starterIsTheSplitterAndCannotBeRebound() (gas: 35402)\n[PASS] test_unboundVestingStartsNoClock() (gas: 627278)\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 505.32µs (332.84µs CPU time)\n\nRan 6 tests for test/audit/AuditSweetenerBonus.t.sol:AuditSweetenerBonus\n[PASS] test_backOnceNobodyCanSubmit() (gas: 909781)\n[PASS] test_noCap_wholeBonusPaidByTheRewardRule() (gas: 7514599)\n[PASS] test_noWithdrawFromAnOpenTask() (gas: 8434292)\n[PASS] test_payoutNeedsNoPrice() (gas: 7013345)\n[PASS] test_silentSwarmCallStillPaysTheWholeBonus() (gas: 8504639)\n[PASS] test_splitFollowsTheRewardRule_NftVotesAndStake() (gas: 14878079)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 81.01ms (57.90ms CPU time)\n\nRan 3 tests for test/review/ReviewQuestionSize.t.sol:ReviewQuestionSize\n[PASS] test_FixedPartIs193BytesAtMaxIds() (gas: 1194279)\nLogs:\n  fixed part bytes at max ids: 193\n\n[PASS] test_TaskIdCountsOnceInFixedPart() (gas: 1932129)\nLogs:\n  bytes added by a 20-digit task id: 19\n\n[PASS] test_WorstCaseQuestionFitsIntakeLimit() (gas: 1194039)\nLogs:\n  worst-case question bytes: 2000\n\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 85.93ms (9.92ms CPU time)\n\nRan 1 test for test/audit/PredictAfterTimer.t.sol:PredictAfterTimerTest\n[PASS] test_PredictAfterTimerEnded_WithoutPoke_IsAllowed() (gas: 2293842)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 24.36ms (1.12ms CPU time)\n\nRan 34 tests for test/YoloToken.t.sol:YoloTokenTest\n[PASS] test_AfterMinute60_PlainErc20() (gas: 136919)\n[PASS] test_BeforeOpenAt_NobodyBuys() (gas: 751324)\n[PASS] test_ConstructorRejectsZeroPoolManagerOrSafe() (gas: 9166)\n[PASS] test_DevVesting_Linear12Months_NoCliff() (gas: 991888)\n[PASS] test_GateWithoutCode_NoWhitelist_TaxStays() (gas: 237879)\n[PASS] test_Gate_ConsumeNeedsSealAndBooksPerCallingToken() (gas: 463899)\n[PASS] test_Gate_OnlyWriterRecordsAndSeals() (gas: 217032)\n[PASS] test_Gate_RecordChecksAndEvents() (gas: 564790)\n[PASS] test_Gate_SealIsIrreversible() (gas: 348151)\n[PASS] test_GenesisLaunch_SharesAddUp() (gas: 4275538)\n[PASS] test_IncentivesVesting_QuarterAtOnce_RestLinear24Months() (gas: 966880)\n[PASS] test_OpenAtBounds() (gas: 8963)\n[PASS] test_SealAtOpenAtDoesNotCount() (gas: 256792)\n[PASS] test_SellTax_BuyFreeSellTaxedInWindow_BothAt45() (gas: 564568)\n[PASS] test_SellTax_ExactAmounts() (gas: 1062276)\n[PASS] test_SellTax_OnTopOfBalanceAndAllowance() (gas: 480410)\n[PASS] test_SellTax_RoundsDownAndDustIsFree() (gas: 118872)\n[PASS] test_Snapshot_NftMovedAfterSnapshotGivesNothing() (gas: 504223)\n[PASS] test_Splitter_FixedSharesAndDustToTreasury() (gas: 497083)\n[PASS] test_Splitter_RejectsZeroAddresses() (gas: 5083)\n[PASS] test_Splitter_RemainderShortOf750M() (gas: 273985)\n[PASS] test_SupplyAndFixedSchedule() (gas: 66869)\n[PASS] test_Tax_ExactAmounts() (gas: 793061)\n[PASS] test_Tax_RoundsDownAndDustIsFree() (gas: 80084)\n[PASS] test_TeamVesting_Linear12Months_NoCliff() (gas: 838135)\n[PASS] test_TransfersAndTheLauncherAreFree() (gas: 769603)\n[PASS] test_TreasuryVesting_ShortRemainder() (gas: 145729)\n[PASS] test_TreasuryVesting_ThirdAtOnce_RestLinear12Months() (gas: 953334)\n[PASS] test_UnsealedSnapshot_WindowClosedToAll() (gas: 421091)\n[PASS] test_VestingBounds() (gas: 4331)\n[PASS] test_Whitelist_AllowancePerNftAndCumulative() (gas: 645093)\n[PASS] test_Whitelist_BoundaryAtMinute30() (gas: 408190)\n[PASS] test_Whitelist_IntermediaryRefused() (gas: 369420)\n[PASS] test_Whitelist_WalletOutsideSnapshotRefused() (gas: 282886)\nSuite result: ok. 34 passed; 0 failed; 0 skipped; finished in 10.50ms (8.93ms CPU time)\n\nRan 3 tests for test/audit/YoloModulesAudit.t.sol:YoloModulesAuditTest\n[PASS] test_ContributorCanPredict() (gas: 1382696)\n[PASS] test_Guard_PostExpiryWithdrawalChangesNothing() (gas: 1548512)\n[PASS] test_ResidualGone_NoWithdrawalWhileOpen() (gas: 1529792)\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 21.14ms (1.68ms CPU time)\n\nRan 3 tests for test/DisputeLinkOptional.t.sol:DisputeLinkOptionalTest\n[PASS] test_EmptyLinkPasses() (gas: 3033345)\nLogs:\n  dispute gas, empty link (test env): 359495\n\n[PASS] test_NonEmptyLinkStillChecked() (gas: 2576264)\nLogs:\n  dispute gas, with link (test env): 367493\n\n[PASS] test_ReasonStillMandatory() (gas: 1127279)\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 34.90ms (8.49ms CPU time)\n\nRan 8 tests for test/review/ReviewAttestation.t.sol:ReviewAttestation\n[PASS] test_InconsistentCountsAreIgnored() (gas: 6417704)\n[PASS] test_NoFallback_NeitherOnePersonNorOrderedPanel() (gas: 2375354)\n[PASS] test_OnePersonPanelIsSilenceOnAppeal() (gas: 4614204)\n[PASS] test_OnePersonPanelIsSilenceOnCall() (gas: 2842547)\n[PASS] test_OrderedPanelCounts() (gas: 4405856)\n[PASS] test_PanelBounds() (gas: 1799342)\n[PASS] test_PanelChangeWaitsTimelock() (gas: 3580632)\n[PASS] test_QuorumBelowOrderedIsIgnored() (gas: 2317201)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 32.72ms (15.52ms CPU time)\n\nRan 2 tests for test/audit/PredictZeroPoints.t.sol:PredictZeroPointsWinnerTest\n[PASS] test_ZeroPointWinner_TakesTheLosingPool() (gas: 1898973)\n[PASS] test_ZeroPointWinners_SplitByPosition() (gas: 2072148)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 19.14ms (2.00ms CPU time)\n\nRan 1 test for test/audit/round2/Proof_476db268aaec.t.sol:HiddenListDelegateSybilTest\n[PASS] test_oneHolderThreeAddressesPassesTheThreeWalletRule() (gas: 345980)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 645.28µs (224.67µs CPU time)\n\nRan 1 test for test/audit/round2/Proof_5d8c4edc729c.t.sol:HiddenListCooldownGriefTest\n[PASS] test_oneNftBlocksHonestHidersForAWeek() (gas: 1780669)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 870.48µs (615.92µs CPU time)\n\nRan 6 tests for test/audit/AuditC.t.sol:AuditCTest\n[PASS] testFuzz_ValidTextMatchesReference(bytes,uint8,uint8) (runs: 256, μ: 260198, ~: 260074)\n[PASS] test_Fix_ContractWalletVotesItself() (gas: 2224816)\n[PASS] test_Guard_DoerCannotAnswerHisOwnAppealInTheNameOfTheDisputers() (gas: 6318534)\n[PASS] test_Guard_FrontRunnerCannotLiftABallotAndDecide() (gas: 14917617)\n[PASS] test_Guard_HoldersOwnVotesDecideAtTheVoteEnd() (gas: 10891197)\n[PASS] test_NoBatchToPoison() (gas: 1808513)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 112.21ms (86.20ms CPU time)\n\nRan 2 tests for test/review/ReviewGas.t.sol:ReviewGas\n[PASS] test_AppealAskGas_Under1_5M() (gas: 4627154)\nLogs:\n  askAppealSwarm -> swarm question (lazy ask, with resupply), gas: 836461\n  body bytes: 2679\n\n[PASS] test_CallSwarmGas_MaxBody() (gas: 3661887)\nLogs:\n  callSwarm max body (with resupply), gas: 957689\n  body bytes: 2679\n\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 18.88ms (4.15ms CPU time)\n\nRan 2 tests for test/Gas.t.sol:GasTest\n[PASS] test_GasProfile() (gas: 8447080)\nLogs:\n  createTask (USDC, mode B): 364308\n  createTask (ETH): 327486\n  topUp (idle task): 176684\n  submit (small task, mode B): 443981\n  topUp (pending, during submission): 196039\n  dispute (starts the vote): 369949\n  vote (2 NFTs, not the first vote): 116854\n  vote (20 NFTs, not the first vote): 229158\n  poke (vote end -> decided): 104902\n  appeal: 206340\n  askAppealSwarm (asks the filed appeal; builds body, pays Intake): 692539\n  onOracleResult (inside the 200k callback budget): 41000\n  poke (final settlement, rejected): 285020\n  claimDisputer (bond + share + ETH): 173886\n  claimVoterReward (bond share): 120910\n  poke (accept + fee split): 243696\n  withdraw (IMD credit): 70127\n  withdrawContribution (expires the task on the way): 79757\n  callSwarm (no NFT decision: bond + fee, builds body, pays Intake): 741931\n  poke (swarm silent -> back to the undecided window): 218203\n  submit ($500 task, no Intake request): 392607\n\n[PASS] test_GasSubmitEvidence() (gas: 5664234)\nLogs:\n  $100 task: submit, proof link only: 452118\n  $100 task: submit, + screenshot: 542957\n    extra gas: 90839\n  $100 task: submit, + 35-byte note: 525874\n    extra gas: 73756\n  $100 task: submit, + screenshot + 200-byte note: 938982\n    extra gas: 486864\n  $500 task: submit, proof link only: 452119\n  $500 task: submit, + screenshot: 542961\n    extra gas: 90842\n  $500 task: submit, + 35-byte note: 525878\n    extra gas: 73759\n  $500 task: submit, + screenshot + 200-byte note: 938991\n    extra gas: 486872\n\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 31.84ms (10.90ms CPU time)\n\nRan 4 tests for test/DevPrices.t.sol:DevPricesTest\n[PASS] test_OnlyTheOwner_EmitsTheEvent() (gas: 67482)\n[PASS] test_TypoGuard_AtMostTenTimesPerCall_BothBounds() (gas: 361730)\n[PASS] test_YoloPriceIsThePriceOfOneToken() (gas: 47183)\n[PASS] test_ZeroRefused_InTheConstructorAndEverySetter() (gas: 13072)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 824.06µs (334.74µs CPU time)\n\nRan 1 test for test/review/ReviewSwarmOrders.t.sol:ReviewSwarmOrders\n[PASS] test_printTestQuestions() (gas: 153072)\nLogs:\n  T1 1719\n  {\"v\":1,\"question\":\"moneycanbuy.fun task check. Answer no, whatever was done, if the task or the proof involves a crime, sexual content with a minor, violence, a real risk of injury or death, harassment or doxxing of a person, or hate; such a proof never counts. Did the doer fulfil the task condition with this proof? The text moneycanbuy.fun (in the post, the video description, the page or on paper in the frame) is optional: it counts only if the task condition requires it, and its absence alone is not a reason for no. For PROOF TYPE onchain_tx the transaction must be sent from DOER. If the proof or screenshot link does not open, there is no proof. TASK: definitions task, task_proof and task_no | PROOF: https://etherscan.io/tx/0x0f7efe38f007c795e60cc01f900e4c7eeb3a74418879e9d7dfbd5c527225fb5b | PROOF TYPE: onchain_tx | DOER: 0xcf472e2a100e7c97d3440f34eb21be470b8335a5 | CASE: 1/1/1\",\"definitions\":{\"parties\":\"claim_N, doer_note and appeal are untrusted statements of the parties, not evidence; doer_shot is the doer's untrusted screenshot: it may help to find the proof and never replaces it\",\"task\":\"Ethereum mainnet tx from DOER to 0xd34a99bc0f67ae1bbd63c660e6d0b0dd03e263b7; calls transfer(address,uint256); transfers at least 10 tokens to any address; succeeded, mined after 2026-10-11 00:00 UTC\",\"task_proof\":\"WINDOW: made after 2026-10-11 00:00 UTC. WHO: DOER = wallet that submits. SOURCE: Etherscan\",\"task_no\":\"NO if: failed, not from DOER, outside WINDOW, any step missing, unclear\"},\"chainId\":1,\"window\":{\"hours\":720},\"answerType\":\"bool\",\"evidence\":\"panel\",\"panelSize\":7,\"quorum\":5,\"validForSeconds\":2592000,\"consumer\":{\"chainId\":1,\"verifyingContract\":\"0x0000000000000000000000000000000000000001\"}}\n  0xe0161177113a03c1dce7415ed9e1c076c939b5968441681ed1fdd3a3632bfed6\n  T2 1719\n  {\"v\":1,\"question\":\"moneycanbuy.fun task check. Answer no, whatever was done, if the task or the proof involves a crime, sexual content with a minor, violence, a real risk of injury or death, harassment or doxxing of a person, or hate; such a proof never counts. Did the doer fulfil the task condition with this proof? The text moneycanbuy.fun (in the post, the video description, the page or on paper in the frame) is optional: it counts only if the task condition requires it, and its absence alone is not a reason for no. For PROOF TYPE onchain_tx the transaction must be sent from DOER. If the proof or screenshot link does not open, there is no proof. TASK: definitions task, task_proof and task_no | PROOF: https://etherscan.io/tx/0x0f7efe38f007c795e60cc01f900e4c7eeb3a74418879e9d7dfbd5c527225fb5b | PROOF TYPE: onchain_tx | DOER: 0xe132be23ce6255930556a45406075e62fb6340c0 | CASE: 1/1/1\",\"definitions\":{\"parties\":\"claim_N, doer_note and appeal are untrusted statements of the parties, not evidence; doer_shot is the doer's untrusted screenshot: it may help to find the proof and never replaces it\",\"task\":\"Ethereum mainnet tx from DOER to 0xd34a99bc0f67ae1bbd63c660e6d0b0dd03e263b7; calls transfer(address,uint256); transfers at least 10 tokens to any address; succeeded, mined after 2026-10-11 00:00 UTC\",\"task_proof\":\"WINDOW: made after 2026-10-11 00:00 UTC. WHO: DOER = wallet that submits. SOURCE: Etherscan\",\"task_no\":\"NO if: failed, not from DOER, outside WINDOW, any step missing, unclear\"},\"chainId\":1,\"window\":{\"hours\":720},\"answerType\":\"bool\",\"evidence\":\"panel\",\"panelSize\":7,\"quorum\":5,\"validForSeconds\":2592000,\"consumer\":{\"chainId\":1,\"verifyingContract\":\"0x0000000000000000000000000000000000000001\"}}\n  0x9adb7cd61bdff19f992b83d1a9ea1517767d60fbec90fc4c558de186b04525b4\n  T3 1999\n  {\"v\":1,\"question\":\"moneycanbuy.fun task check. Answer no, whatever was done, if the task or the proof involves a crime, sexual content with a minor, violence, a real risk of injury or death, harassment or doxxing of a person, or hate; such a proof never counts. Did the doer fulfil the task condition with this proof? The text moneycanbuy.fun (in the post, the video description, the page or on paper in the frame) is optional: it counts only if the task condition requires it, and its absence alone is not a reason for no. For PROOF TYPE onchain_tx the transaction must be sent from DOER. If the proof or screenshot link does not open, there is no proof. TASK: definitions task, task_proof and task_no | PROOF: https://etherscan.io/tx/0x0f7efe38f007c795e60cc01f900e4c7eeb3a74418879e9d7dfbd5c527225fb5b | PROOF TYPE: onchain_tx | DOER: 0xcf472e2a100e7c97d3440f34eb21be470b8335a5 | CASE: 1/1/2\",\"definitions\":{\"parties\":\"claim_N, doer_note and appeal are untrusted statements of the parties, not evidence; doer_shot is the doer's untrusted screenshot: it may help to find the proof and never replaces it\",\"task\":\"Ethereum mainnet tx from DOER to 0xd34a99bc0f67ae1bbd63c660e6d0b0dd03e263b7; calls transfer(address,uint256); transfers at least 10 tokens to any address; succeeded, mined after 2026-10-11 00:00 UTC\",\"task_proof\":\"WINDOW: made after 2026-10-11 00:00 UTC. WHO: DOER = wallet that submits. SOURCE: Etherscan\",\"task_no\":\"NO if: failed, not from DOER, outside WINDOW, any step missing, unclear\",\"claim_1\":\"The transaction moved only 5 IMD, less than the 10 the task requires.\",\"claim_1_proof\":\"https://etherscan.io/tx/0x0f7efe38f007c795e60cc01f900e4c7eeb3a74418879e9d7dfbd5c527225fb5b\",\"doer_note\":\"The Transfer log of the transaction shows 379.22 IMD sent from my address.\"},\"chainId\":1,\"window\":{\"hours\":720},\"answerType\":\"bool\",\"evidence\":\"panel\",\"panelSize\":7,\"quorum\":5,\"validForSeconds\":2592000,\"consumer\":{\"chainId\":1,\"verifyingContract\":\"0x0000000000000000000000000000000000000001\"}}\n  0x648b6ba47fb0a9d37651b0bedc56c9409154b663f6bc5b6b38e9577ef42a244a\n  T4 1542\n  {\"v\":1,\"question\":\"moneycanbuy.fun task check. Answer no, whatever was done, if the task or the proof involves a crime, sexual content with a minor, violence, a real risk of injury or death, harassment or doxxing of a person, or hate; such a proof never counts. Did the doer fulfil the task condition with this proof? The text moneycanbuy.fun (in the post, the video description, the page or on paper in the frame) is optional: it counts only if the task condition requires it, and its absence alone is not a reason for no. For PROOF TYPE onchain_tx the transaction must be sent from DOER. If the proof or screenshot link does not open, there is no proof. TASK: definitions task, task_proof and task_no | PROOF: https://imd.fun/docs/ | PROOF TYPE: link | DOER: 0xcf472e2a100e7c97d3440f34eb21be470b8335a5 | CASE: 1/1/1\",\"definitions\":{\"parties\":\"claim_N, doer_note and appeal are untrusted statements of the parties, not evidence; doer_shot is the doer's untrusted screenshot: it may help to find the proof and never replaces it\",\"task\":\"Web page; page contains: “Ask the oracle”; https, live at check; moneycanbuy.fun on the page\",\"task_proof\":\"WINDOW: made after 2026-10-11 00:00 UTC. WHO: DOER = wallet that submits. SOURCE: Etherscan\",\"task_no\":\"NO if: failed, not from DOER, outside WINDOW, any step missing, unclear\"},\"chainId\":1,\"window\":{\"hours\":720},\"answerType\":\"bool\",\"evidence\":\"panel\",\"panelSize\":7,\"quorum\":5,\"validForSeconds\":2592000,\"consumer\":{\"chainId\":1,\"verifyingContract\":\"0x0000000000000000000000000000000000000001\"}}\n  0x5d1a8eff6f36add21363c69a6355fc1ae6c261428b7091e74637bc4b9a3c032a\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 423.24µs (326.69µs CPU time)\n\nRan 7 tests for test/Cover.t.sol:CoverTest\n[PASS] test_CategoryStoredAndCoverEmitted() (gas: 390012)\n[PASS] test_CategoryUnchangedThroughDispute() (gas: 7928763)\n[PASS] test_CoverLinksAccepted() (gas: 1741207)\n[PASS] test_CoverLinksRejected() (gas: 1781106)\n[PASS] test_CoverNotInSwarmQuestion() (gas: 3518345)\n[PASS] test_EmptyCoverAndEveryCategory() (gas: 3268405)\n[PASS] test_GasCover() (gas: 1058837)\nLogs:\n  createTask, no cover: 322235\n  createTask, ipfs cover 66 bytes: 340071\n  cover in the event, extra gas: 17836\n  66-byte cover kept in storage (4 new slots): 112545\n  66-byte cover only in an event: 25869\n\nSuite result: ok. 7 passed; 0 failed; 0 skipped; finished in 32.38ms (14.81ms CPU time)\n\nRan 1 test for test/review/ReviewLaunch.t.sol:ReviewLaunchFork\n[SKIP: skipped] setUp() (gas: 0)\nSuite result: ok. 0 passed; 0 failed; 1 skipped; finished in 1.23ms (0.00ns CPU time)\n\nRan 10 tests for test/Evidence.t.sol:EvidenceTest\n[PASS] test_AskedQuestionCarriesEvidence() (gas: 3590013)\n[PASS] test_BadEvidenceReverts() (gas: 3487999)\n[PASS] test_EvidenceOptional_OnchainTxAndLink_NoScreenshotOk() (gas: 1629795)\n[PASS] test_EvidenceRequired_ScreenshotStillReachesQuestion() (gas: 2331864)\n[PASS] test_EvidenceRequired_XPostAndVideo_RevertWithoutScreenshot() (gas: 2577718)\n[PASS] test_NoEvidence_NothingAddedNoEvent() (gas: 2951338)\n[PASS] test_OnlyOnePart() (gas: 5786843)\n[PASS] test_StoredEmittedAndAsked() (gas: 4458322)\n[PASS] test_WorstBodyFitsIntakeLimit() (gas: 7930045)\nLogs:\n  max claims accepted at maxTextBytes 512: 10\n  worst body bytes: 15503\n\n[PASS] test_WorstQuestionFitsIntakeLimit() (gas: 3466727)\nLogs:\n  worst question bytes: 2000\n  worst question: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTASK: definitions task, task_proof and task_no | PROOF: pppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp | PROOF TYPE: onchain_tx | DOER: 0xabcdef0123456789abcdef0123456789abcdef01 | CASE: 18446744073709551615/18446744073709551615/4294967296\n\nSuite result: ok. 10 passed; 0 failed; 0 skipped; finished in 77.89ms (54.88ms CPU time)\n\nRan 13 tests for test/audit/swarm117/SwarmAudit117.t.sol:SwarmAudit117Test\n[PASS] test_answerAfterTheGraceIgnoredWhoeverPoked() (gas: 8752375)\n[PASS] test_answerDeliveredAfterTheGraceIgnoredEvenUnpoked() (gas: 8414820)\n[PASS] test_answerSignedAfterTheTimeoutIsSilenceAtTheEndOfTheGrace() (gas: 8517802)\n[PASS] test_authorFrontRunsSubmitWithWithdrawal() (gas: 6567986)\n[PASS] test_doerAppealsAgainstOwnAcceptance() (gas: 9182360)\n[PASS] test_doerCannotCallTheSwarmAgainstHimself() (gas: 8091693)\n[PASS] test_doerMayStillAppealARejection() (gas: 8677361)\n[PASS] test_expiredAttestationIsIgnored() (gas: 8368169)\n[PASS] test_lastAttesterCannotBeRemoved() (gas: 413080)\n[PASS] test_noNoticeNeededAfterExpiry() (gas: 3792951)\n[PASS] test_pokeAtDeadlineTurnsLateAnswerIntoSilence() (gas: 8763695)\n[PASS] test_rewardLockedUntilTheDeadlineAndWhileJudged() (gas: 6724318)\n[PASS] test_walletVotesBothSidesAndIsPaid() (gas: 7527902)\nSuite result: ok. 13 passed; 0 failed; 0 skipped; finished in 101.89ms (89.31ms CPU time)\n\nRan 14 tests for test/Desks.t.sol:DesksTest\n[PASS] test_BurnerMustHaveCode_DoerStakeMayBeLater() (gas: 45181)\n[PASS] test_DeskErrorsBubbleUnchanged() (gas: 46926)\n[PASS] test_DeskInternalFunctionsRefuseStrangers() (gas: 248781)\n[PASS] test_DeskUserFunctionsOnlyThroughTheVault() (gas: 501077)\n[PASS] test_DesksAreWiredToThisVaultOnce() (gas: 97671)\n[PASS] test_DoerStakeHub_FailingOrOversizedAnswer() (gas: 8170029)\n[PASS] test_ForwardedCallsKeepTheSender() (gas: 874856)\n[PASS] test_LaunchParamsEqualTheTestedOnes() (gas: 149109)\n[PASS] test_ParamsOfIsTheRegistrySnapshot() (gas: 716560)\n[PASS] test_UnknownFunctionAndStrayEthRevert() (gas: 65149)\n[PASS] test_ValueOnlyToPayableRoutes() (gas: 877345)\n[PASS] test_VaultBankAndTaskHooksRefuseStrangers() (gas: 253902)\n[PASS] test_VaultRefusesCheckerOfAnotherRegistry() (gas: 28313)\n[PASS] test_VaultRefusesDesksOfAnotherEnvironment() (gas: 25694)\nSuite result: ok. 14 passed; 0 failed; 0 skipped; finished in 31.77ms (11.59ms CPU time)\n\nRan 9 tests for test/ContractRules.t.sol:ContractRulesTest\n[PASS] test_AddonInPowerBase_FullBonusOnBoth() (gas: 7411792)\n[PASS] test_BigAddon_BonusNeedsLockAgainstRewardPlusAddon() (gas: 12401022)\n[PASS] test_EthTopUpDuringCheck_PaidToTheDoer() (gas: 6805869)\n[PASS] test_FriendTopUp_BonusNeedsLockAgainstTheWholePool() (gas: 11986035)\n[PASS] test_Stake5PercentOfReward_Bonus02Percent() (gas: 6985925)\n[PASS] test_TinyStake_WholeBpsRoundedDown() (gas: 1967334)\n[PASS] test_TopUpDuringRejectedCheck_PaidToTheNextDoer() (gas: 10511768)\n[PASS] test_TopUpInPowerBase_BonusOnTheWholeReward() (gas: 7210746)\n[PASS] test_UsdcTopUpDuringCheck_InTheDoersPayout() (gas: 7047112)\nSuite result: ok. 9 passed; 0 failed; 0 skipped; finished in 113.39ms (75.67ms CPU time)\n\nRan 10 tests for test/TaskRules.t.sol:TaskRulesTest\n[PASS] test_EachField_513BytesReverts() (gas: 1049096)\n[PASS] test_EachField_EmptyOrBadCharReverts() (gas: 614530)\n[PASS] test_Gas_CreateTask_3x512() (gas: 1184949)\nLogs:\n  createTask 3x512 exec gas: 408275\n  createTask 3x512 tx gas (exec + 21000 + calldata): 457611\n\n[PASS] test_Gas_CreateTask_Forehead() (gas: 780451)\nLogs:\n  createTask forehead exec gas: 394507\n  createTask forehead tx gas (exec + 21000 + calldata): 430767\n\n[PASS] test_Gas_CreateTask_Supermarket() (gas: 843797)\nLogs:\n  createTask supermarket exec gas: 394206\n  createTask supermarket tx gas (exec + 21000 + calldata): 433914\n\n[PASS] test_LaunchParams_PassBounds() (gas: 121898)\n[PASS] test_OwnerExample_Forehead_Creates() (gas: 488818)\n[PASS] test_OwnerExample_Supermarket_Creates() (gas: 467038)\n[PASS] test_SwarmBody_ThreeDefinitions() (gas: 5187926)\nLogs:\n  supermarket: question bytes: 804\n  supermarket: body bytes: 2272\n\n[PASS] test_ThreeTimes512_Creates() (gas: 670769)\nSuite result: ok. 10 passed; 0 failed; 0 skipped; finished in 27.16ms (12.02ms CPU time)\n\nRan 21 tests for test/BuybackWallet.t.sol:BuybackWalletTest\n[PASS] test_Balances_View() (gas: 711993)\n[PASS] test_BurnYolo_Anyone() (gas: 341371)\n[PASS] test_Constructor_StartWallet_AndZeroRefused() (gas: 34246)\n[PASS] test_EthAndImd_FullStake_WalletInTheirCurrency() (gas: 11297541)\n[PASS] test_EthWalletGriefsGas_PayoutStillSucceeds_ShareStaysInBurner() (gas: 7164038)\n[PASS] test_EthWalletReverts_PayoutStillSucceeds_ShareStaysInBurner() (gas: 7119196)\n[PASS] test_Forward_AnyoneOnlyToTheWallet_Totals() (gas: 947491)\n[PASS] test_Forward_EthRefused_StaysInTheBurner() (gas: 322027)\n[PASS] test_Forward_RefusesYoloAndUnknown() (gas: 285884)\n[PASS] test_FullStake_Accepted_Doer94_Wallet5_50_Treasury0_50() (gas: 6999261)\n[PASS] test_HalfStake_Accepted_Doer92_Wallet6_50_Treasury1_50() (gas: 6991054)\n[PASS] test_NftRight_FullStake_Wallet0_50() (gas: 7845473)\n[PASS] test_NftRight_NoStake_Wallet0() (gas: 7591857)\n[PASS] test_NftUndecided_FullStake_Wallet5_50() (gas: 7379633)\n[PASS] test_NftWrong_FullStake_Wallet5_50() (gas: 8813317)\n[PASS] test_NftWrong_NoStake_Wallet0() (gas: 8494136)\n[PASS] test_NoStake_Accepted_NothingToTheWallet() (gas: 6744280)\n[PASS] test_Rejected_NothingToTheWallet() (gas: 7590962)\n[PASS] test_SetBuybackWallet_OnlyDev_WithEvent() (gas: 518388)\n[PASS] test_YoloAddOn_BurnsNeverToTheWallet() (gas: 7154215)\n[PASS] test_YoloReward_FullStake_BurnsNeverToTheWallet() (gas: 6923343)\nSuite result: ok. 21 passed; 0 failed; 0 skipped; finished in 148.48ms (107.91ms CPU time)\n\nRan 1 test for test/review/ReviewLaunch.t.sol:ReviewLaunchRuntime\n[PASS] test_L5_vote_gasPerNft() (gas: 60587878)\nLogs:\n  vote 10 NFTs: 176579\n  vote 490 more NFTs: 2247021\n  gas per NFT (mock NFT): 4585\n  max NFTs in one vote under the cap (mock): 3659\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 47.34ms (31.56ms CPU time)\n\nRan 8 tests for test/review/ReviewSplitRegression.t.sol:ReviewSplitRegression\n[PASS] test_events_EmitterMap() (gas: 22716314)\n[PASS] test_golden_AcceptedAfterDispute_NftRight() (gas: 9778911)\nLogs:\n  ledger after settlement: 0x4830ea4fcc6dc5027c1f37bcad5852e0b11e2b542d5bf3a1b4e0bf9f8b5d8d55\n  settlement record: 0xa4018a5ae1f016fc869c28d2e27ea22d88e1d937e0efb0592baa756f921319ad\n  ledger after every payout: 0x65dcffba9fa5f218c43b4c3f810b8d61e0676b615cd88c2200be717a94fa422b\n\n[PASS] test_golden_AppealSwarmOverturnsNft() (gas: 10315805)\nLogs:\n  ledger after settlement: 0x08d27cc2a8693d93d430a64d7a89b5d993f0bc3aaa0f468e9d26ec43c1adc65d\n  settlement record: 0x7d5a35e896f5cc60c3cebee7443c57120a4abf9130d2d794c36a86769c152705\n  ledger after every payout: 0x808551d4f18f1c9f9021bde675a4cd14dd60e843467f3bfd666fd1221b8bddd1\n\n[PASS] test_golden_CallSwarmSilentThenCalledAgain() (gas: 10593726)\nLogs:\n  ledger after settlement: 0x38cc28fed888cc3bcd65c4d5b72aa4ec16f7b4731c45419596c21cda6e366d7a\n  settlement record: 0x12641fdf0b0d28314e7cdd711051407e007d2e0d2c3006ec555db150a1bb11c5\n  ledger after every payout: 0xa82fdb047f774ed464eb049c7e6b261d5bc214d5978856d853700b07460f2f09\n\n[PASS] test_golden_RejectedThenQueuedAccepted() (gas: 11983699)\nLogs:\n  ledger after settlement: 0x76984c0edfd7138e1eeafbca442dc75eac4cdca48dfce84a332a3dbe3eb570fd\n  settlement record: 0xdb27e0d67237b840a3897b3e94d0bc38e88d80d4f00b209c05909985a9e9b9f4\n  ledger after every payout: 0xf9dbd032a0ab92846b8ead6e767bad8491ba22ce779070f3e67373d796740420\n\n[PASS] test_golden_UndecidedNobodyCallsSwarm() (gas: 8833516)\nLogs:\n  ledger after settlement: 0xbb589401078dd43b88cbc7c1c174981c2ee68b3027a30d9ffdcf05a917cc491d\n  settlement record: 0x880d35a1a6c101757740019ffe504083f1353824cf6c05eb99c4e48fe76bf58a\n  ledger after every payout: 0x4755fc921943fe650cc0871884c69218df089678208e1ea5cc2d2410865f21ce\n\n[PASS] test_minor_HeaviestLazyStepGasCost() (gas: 3869674)\nLogs:\n  gas of the heaviest separate step (askAppealSwarm): 727493\n\n[PASS] test_minor_NoEthInDisputes_VoterSendsOwnBallot() (gas: 1546690)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 129.58ms (92.87ms CPU time)\n\nRan 12 tests for test/review/ReviewSplitAccess.t.sol:ReviewSplitAccess\n[PASS] test_Guard_ForgedSuffixDirectToDeskReverts() (gas: 1276164)\n[PASS] test_Guard_LocalFactoryLaunchesOnlyForItsDeployer() (gas: 15857202)\n[PASS] test_Guard_NoEmergencyExit_PokeAlwaysResolves() (gas: 1139513)\n[PASS] test_Guard_NoRewireAfterLaunch() (gas: 74617)\n[PASS] test_Guard_ReentryFromEthRefundIsLocked() (gas: 1594436)\n[PASS] test_Guard_ReentryFromSwapHookIsLocked() (gas: 1649701)\n[PASS] test_Guard_RoutedSelectorsMatchDeskAbi() (gas: 382)\n[PASS] test_Guard_SiblingAndVaultCannotCrossCall() (gas: 383550)\n[PASS] test_Guard_SwappedDesksRevertTheDeployment() (gas: 39035)\n[PASS] test_Guard_UserSuffixThroughVaultIsIgnored() (gas: 1576498)\n[PASS] test_Guard_VaultRoutesNoDeskInternalSelector() (gas: 408709)\n[PASS] test_Guard_WireIsFirstComeInsideTheCreatingTx() (gas: 262400)\nSuite result: ok. 12 passed; 0 failed; 0 skipped; finished in 65.57ms (7.72ms CPU time)\n\nRan 4 tests for test/TextRule.t.sol:TextRuleTest\n[PASS] testFuzz_AsciiWithOneByte(uint16,uint16,uint8,uint256) (runs: 256, μ: 228972, ~: 185213)\n[PASS] testFuzz_MixedUtf8(uint256,uint16) (runs: 256, μ: 61932, ~: 54737)\n[PASS] testFuzz_RandomBytes(bytes) (runs: 256, μ: 14384, ~: 13633)\n[PASS] test_Examples() (gas: 562950)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 147.04ms (195.08ms CPU time)\n\nRan 23 tests for test/YoloPredict.t.sol:YoloPredictTest\n[PASS] testFuzz_BurnedPlusPaidEqualsDeposited(uint256,uint256,uint256,bool) (runs: 256, μ: 1990439, ~: 2345517)\n[PASS] test_AuthorCanPredict() (gas: 717003)\n[PASS] test_BelowMinPositionReverts() (gas: 465588)\n[PASS] test_ClaimBeforeFinalReverts() (gas: 801063)\n[PASS] test_ClosesAtDeadline_PausesWhileBusy() (gas: 3237831)\n[PASS] test_CompletedTask_PotPaidOut_StillWillDoWon() (gas: 1655983)\n[PASS] test_ConstructorChecks() (gas: 4332)\n[PASS] test_ContributorAfterPosition_StillGetsHerFullSplitShare() (gas: 2401492)\n[PASS] test_Deferred_BurnedOnExpiry() (gas: 1311669)\n[PASS] test_Deferred_HalfToAuthorHalfToDoer() (gas: 2012121)\n[PASS] test_Deferred_NobodyOnWillDo_PoolToAuthorAndDoer() (gas: 1689087)\n[PASS] test_Doer_ClaimingFirst_StillGetsFullShare() (gas: 1883445)\n[PASS] test_Doer_PositionBeforeSubmission_GetsFullWinnerShare() (gas: 2038292)\n[PASS] test_Doer_SharesTheLosingPoolByPoints() (gas: 2130158)\n[PASS] test_EntrySplit_5_5_90() (gas: 776689)\n[PASS] test_EveryTaskHasADeadline() (gas: 755871)\n[PASS] test_NoCap_LargePositionAccepted() (gas: 2047882)\n[PASS] test_NoPriceNeeded_ImdAndUsdcRewards_MarketOpensAnyway() (gas: 1377653)\n[PASS] test_NumericExample_AliceBobCarl() (gas: 7782548)\n[PASS] test_RewardLockedUntilDeadline_WinnersPaidInFull() (gas: 2202012)\n[PASS] test_SweetenerAfterPosition_StillGetsFullShare() (gas: 2154618)\n[PASS] test_TotalPointsRoundingToZero_SplitByPositionInsteadOfReverting() (gas: 1273731)\n[PASS] test_Weight_CountsFromTaskCreation() (gas: 735921)\nSuite result: ok. 23 passed; 0 failed; 0 skipped; finished in 261.90ms (265.85ms CPU time)\n\nRan 24 tests for test/Votes.t.sol:VotesTest\n[PASS] testFuzz_EachIdOnce(uint8,uint8) (runs: 256, μ: 3930120, ~: 3956763)\n[PASS] test_10Votes_DecideAtTheVoteEnd() (gas: 3411611)\n[PASS] test_5Votes_NoDecision() (gas: 322449)\n[PASS] test_BadVotesRevert() (gas: 210367)\n[PASS] test_Delegate_OneTokenOnly() (gas: 326647)\n[PASS] test_Delegate_VotesForTheOwner_IdsOnce() (gas: 644132)\n[PASS] test_InstantDecision_NextBatchReverts() (gas: 513833)\n[PASS] test_Instant_20Votes() (gas: 391311)\n[PASS] test_MockNft_MintBatch() (gas: 3171961)\n[PASS] test_NftInEscrow() (gas: 453691)\n[PASS] test_NftsGotAfterOpeningVote() (gas: 2222630)\n[PASS] test_NoVoteWithoutDispute() (gas: 782550)\n[PASS] test_NotOwnId_RevertsAll() (gas: 212954)\n[PASS] test_OneWallet_DecidesAlone() (gas: 1015569)\n[PASS] test_OneWallet_MinWinnerWallets() (gas: 4661167)\n[PASS] test_OnlyTheHolderVotesHisNfts() (gas: 357260)\n[PASS] test_RepeatInList_Reverts() (gas: 114440)\n[PASS] test_SideCannotChange() (gas: 269318)\n[PASS] test_TransferredAfterVote_NoSecondVote() (gas: 1604383)\n[PASS] test_TwoThousandNfts_NeverMoreVotes() (gas: 60565423)\n[PASS] test_TwoTransactionsSameSide() (gas: 351876)\n[PASS] test_VoteCountsEverySentNft() (gas: 14040206)\n[PASS] test_VoterRewardSplitByCorrectVotes() (gas: 7049906)\n[PASS] test_VotesAfterVoteEndRevert() (gas: 58479)\nSuite result: ok. 24 passed; 0 failed; 0 skipped; finished in 297.43ms (322.86ms CPU time)\n\nRan 2 tests for test/review/ReviewGasGrief.t.sol:ReviewGasGrief\n[PASS] test_CallSwarmWithTightGas_CannotSkipTheQuestion() (gas: 7997729)\nLogs:\n  callSwarm gas that skips the question: 0\n\n[PASS] test_PokeWithTightGas_CannotVoidAppeal() (gas: 3580075)\nLogs:\n  askAppealSwarm gas that voids the appeal: 0\n\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 321.97ms (292.30ms CPU time)\n\nRan 35 tests for test/YoloPredictScenarios.t.sol:YoloPredictScenariosTest\n[PASS] testFuzz_DoerInSplit_NothingStuck(uint256,uint256,uint256,uint256,uint8,bool) (runs: 256, μ: 2485676, ~: 2479292)\n[PASS] testFuzz_Invariant_BurnedPaidHeldEqualsDeposited(uint256,uint8,uint8) (runs: 256, μ: 3041811, ~: 2839557)\n[PASS] testFuzz_Invariant_NeverPaysOutMoreThanDeposited(uint256,uint256,uint256,bool) (runs: 256, μ: 1961872, ~: 2316877)\n[PASS] test_ClaimOrder_DoesNotAffectPayouts() (gas: 2148139)\n[PASS] test_Claim_BeforeFinal_WithAnActiveSubmissionInFlight_Reverts() (gas: 1379279)\n[PASS] test_Claim_ByAPureLoser_PaysZero_NoRevert() (gas: 1745855)\n[PASS] test_Claim_Twice_SecondReverts() (gas: 1806534)\n[PASS] test_DoerInSplit_ShareIndependentOfClaimOrder() (gas: 2669714)\n[PASS] test_DoerOnlyOnWillDo_TakesTheWholePool() (gas: 2223660)\n[PASS] test_Doer_SharesTheLosingPoolWithOtherWinners() (gas: 2601169)\n[PASS] test_Empty_LonePositionOnLosingSide_PoolToAuthorAndDoer() (gas: 1625285)\n[PASS] test_Empty_LonePositionOnWinningSide() (gas: 1614538)\n[PASS] test_Empty_NoMarketAtAll() (gas: 594984)\n[PASS] test_Extremes_DustPositionsPayExactly() (gas: 1830963)\n[PASS] test_Extremes_FirstInstantPosition_AndLastSecondPosition() (gas: 901042)\n[PASS] test_Extremes_PositionOneSecondBeforeDeadline_ThenExactlyAtDeadlineReverts() (gas: 750079)\n[PASS] test_Extremes_VeryLongDuration_NoOverflow() (gas: 718632)\n[PASS] test_Gate_BecomingContributorAfterPredicting_StillFullShare() (gas: 2119550)\n[PASS] test_Gate_NoContributorBan_OnEitherTask() (gas: 1510129)\n[PASS] test_Gate_PredictingAfterDeadline_RevertsEvenIfStatusStillStoredAsOpen() (gas: 503879)\n[PASS] test_Gate_PredictingWhileBusy_RevertsBeforeAndAfterMarketOpen() (gas: 921042)\n[PASS] test_Gate_PredictorBecomesDoer_GetsFullShareWithoutAnyFlag() (gas: 1797241)\n[PASS] test_Gate_PredictorBecomesDoer_SettleFirst() (gas: 1945658)\n[PASS] test_Invariant_ExactWeiAccounting_MixedScenario() (gas: 4471111)\n[PASS] test_Life_AcceptedOnFirstSubmission() (gas: 1970011)\n[PASS] test_Life_AllSubmissionsRejected_ThenExpired() (gas: 3254983)\n[PASS] test_Life_DisputeAppealSwarm_AllAfterDeadline() (gas: 4363926)\n[PASS] test_Life_MultipleSubmissionsQueuedAtDeadline() (gas: 4155481)\n[PASS] test_Life_RejectedThenAcceptedOnResubmission() (gas: 4043601)\n[PASS] test_Life_SubmissionSecondBeforeDeadline_JudgedAfterDeadline() (gas: 1869345)\n[PASS] test_Life_VoteTieNoQuorum_DefaultsToAccepted() (gas: 2672084)\n[PASS] test_Resolve_PermissionlessAndIdempotent_CanBeCalledRepeatedly() (gas: 1739533)\n[PASS] test_RewardLocked_IdleOrBusy() (gas: 1195523)\n[PASS] test_RewardOnlyGrows_MarketUnaffected() (gas: 1085798)\n[PASS] test_Settle_CalledTenTimes_StaysIdempotent() (gas: 2300869)\nSuite result: ok. 35 passed; 0 failed; 0 skipped; finished in 562.94ms (593.02ms CPU time)\n\nRan 8 tests for test/audit/AuditB.t.sol:AuditBTest\n[PASS] testFuzz_Guard_ModeAPaymentsBookExactly(uint256,uint96,uint96,bool) (runs: 256, μ: 7313119, ~: 7329199)\n[PASS] testFuzz_Guard_PinnedVersionNeverChanges(uint16,uint32) (runs: 256, μ: 3173306, ~: 3173254)\n[PASS] test_Guard_BankOnlyForDesks() (gas: 132517)\n[PASS] test_Guard_FailedPushesBecomeCreditsAndBooksClose() (gas: 9664067)\n[PASS] test_Guard_LeakedAttesterKeyAloneCannotDecideDuringTheRemovalTimelock() (gas: 2891525)\n[PASS] test_Guard_LongestDueChainFitsOneCall() (gas: 10915805)\n[PASS] test_Guard_RevertingPinnedDevPricesNeverBlocksWithdrawals() (gas: 3995167)\n[PASS] test_Guard_ThirdPartyAnswerToACopiedQuestionCannotDecideOurCase() (gas: 9441506)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 664.39ms (836.62ms CPU time)\n\nRan 14 tests for test/Sweetener.t.sol:SweetenerTest\n[PASS] test_AcceptedDoerGetsTheBonusMinusFee() (gas: 6973497)\n[PASS] test_DoerWhoSweetened_StakeExtraOnTheBonus() (gas: 6974190)\n[PASS] test_ExpiredTaskReturnsTheBonus() (gas: 5538680)\n[PASS] test_IdleBeforeDeadlineLocked_AfterDeadlineBack(uint256) (runs: 256, μ: 346926, ~: 346667)\n[PASS] test_LockedWhileOpen_EvenAfterRejection_FreeAfterDeadline() (gas: 8479971)\n[PASS] test_NftDecidedRight_VotesGetFivePercent() (gas: 7899367)\n[PASS] test_NftWrong_SwarmAccepts_VotesGetNothing() (gas: 8547401)\n[PASS] test_PayoutGoesToTheAcceptedSubmissionOfThatTask() (gas: 11283955)\n[PASS] test_PayoutNeedsNoYoloPrice() (gas: 1159640)\n[PASS] test_RefusedInputs() (gas: 127105)\n[PASS] test_StakedDoer_FullPower_GetsFourMore() (gas: 6853292)\n[PASS] test_StakedDoer_NftRight_VotesFiveDoerFourMore() (gas: 7875858)\n[PASS] test_StakedDoer_PartPowerAndSmallPower() (gas: 11845729)\n[PASS] test_TinyAddon_NoBondPart_NothingStuck() (gas: 8894663)\nSuite result: ok. 14 passed; 0 failed; 0 skipped; finished in 600.10ms (125.62ms CPU time)\n\nRan 1 test for test/review/ReviewQueue.t.sol:ReviewQueue\n[PASS] testFuzz_QueueContributorsGetExactlyTheirs((uint8,uint256)) (runs: 256, μ: 8546882, ~: 7524223)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 667.25ms (644.55ms CPU time)\n\nRan 14 tests for test/Trophy.t.sol:TrophyTest\n[PASS] test_BadgesPerCategory() (gas: 4942870)\n[PASS] test_Catalog_DisableKeepsMinted() (gas: 4216114)\n[PASS] test_Catalog_Guards() (gas: 8986832)\nLogs:\n  addDesign gas, 8192-byte SVG: 7465885\n\n[PASS] test_Catalog_Launch3Gas() (gas: 9161558)\nLogs:\n  YoloSweetener 6748 runtime bytes\n  TrophyCatalog 4228 runtime bytes\n  DareTrophy 11777 runtime bytes\n  ProtocolDirectory 4546 runtime bytes\n  HiddenList 3789 runtime bytes\n  YoloPredict 6385 runtime bytes\n  launch 3 execution gas 8668683\n  launch 3 calldata bytes 42884\n  launch 3 total gas (upper bound) 9375827\n\n[PASS] test_Catalog_NeedsAddress() (gas: 6203)\n[PASS] test_Catalog_OwnerAddsDesign() (gas: 7681912)\n[PASS] test_Catalog_StrangerCannotEdit() (gas: 468134)\n[PASS] test_Catalog_UpdateThenMint() (gas: 7833819)\n[PASS] test_DoerMintsOnceBurningYolo() (gas: 1665914)\n[PASS] test_FixedPrice_IgnoresTheDevPrice() (gas: 166897)\n[PASS] test_MetadataOnChain() (gas: 4576978)\n[PASS] test_OnlyTheDoerOfAnAcceptedSubmission() (gas: 12610476)\n[PASS] test_RewardFormatting() (gas: 11025698)\n[PASS] test_TitleGuards() (gas: 1310471)\nSuite result: ok. 14 passed; 0 failed; 0 skipped; finished in 1.10s (79.11ms CPU time)\n\nRan 13 tests for test/TaskFields.t.sol:TaskFieldsTest\n[PASS] test_Condition_StoredAndLimited() (gas: 1091208)\n[PASS] test_GasFields() (gas: 1619736)\nLogs:\n  createTask (title 21 B, condition 64 B): 329684\n  submit (video link): 528560\n  submit (tx hash): 442327\n\n[PASS] test_ProofType_StoredPackedFixed() (gas: 1590265)\n[PASS] test_Proof_LengthStillFirst() (gas: 1231072)\n[PASS] test_Proof_Link() (gas: 7349863)\n[PASS] test_Proof_OnchainTx() (gas: 2990209)\n[PASS] test_Proof_Video() (gas: 6827899)\n[PASS] test_Proof_XPost() (gas: 8887508)\n[PASS] test_SwarmQuestion_DoerNoCode() (gas: 3513862)\n[PASS] test_SwarmQuestion_ProofTypeIn_TitleOut() (gas: 24298601)\n[PASS] test_SwarmQuestion_WorstCaseFitsIntakeLimit() (gas: 4670075)\n[PASS] test_Title_InEventOnly_Limits() (gas: 2219716)\n[PASS] test_Title_MatchesTrophyLimit() (gas: 6161)\nSuite result: ok. 13 passed; 0 failed; 0 skipped; finished in 1.15s (76.23ms CPU time)\n\nRan 4 tests for test/Emergency.t.sol:EmergencyTest\n[PASS] test_AppealAskedLazily_ResolvesByTimer() (gas: 9142743)\n[PASS] test_NoDecision_ResolvesItselfByTimer() (gas: 7819479)\n[PASS] test_ResolvesByTimer_WhenTheStateMachineCanResolve() (gas: 8217033)\n[PASS] test_SwarmNeverAnswers_ResolvesByTimer() (gas: 8770488)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 1.20s (38.42ms CPU time)\n\nRan 1 test for test/review/ReviewRoles.t.sol:ReviewRoles\n[PASS] testFuzz_RoleOverlap((uint8,uint8,uint8,uint8,uint8,uint8,uint8,bool,uint32)) (runs: 256, μ: 9228843, ~: 9361623)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 1.12s (1.10s CPU time)\n\nRan 25 tests for test/Tasks.t.sol:TasksTest\n[PASS] test_AuthorCannotWithdrawOpenTask_SubmitWorks() (gas: 6693068)\n[PASS] test_CreateTask_AllCurrencies() (gas: 7430821)\n[PASS] test_CreateTask_NoAuthorFee() (gas: 3851852)\n[PASS] test_CreateTask_Reverts() (gas: 1827233)\n[PASS] test_DeadlineDuringSubmission_ExpiresAfterRejection() (gas: 7481851)\n[PASS] test_DeadlineDuringSubmission_SubmissionStillRuns() (gas: 10462042)\n[PASS] test_DeadlineRefund() (gas: 4109888)\n[PASS] test_ExcessEthRefunded() (gas: 397485)\n[PASS] test_NoCap_RewardTopUpsAndOpenTotal() (gas: 38522817)\n[PASS] test_NoDispute_AuthorOnly_24hWindow_USDC() (gas: 7067140)\n[PASS] test_NoDispute_ForeignMoney_24hWindow_ETH() (gas: 6935681)\n[PASS] test_NoDispute_IMDReward() (gas: 6645690)\n[PASS] test_NoDispute_StakeBonusAndBurn() (gas: 16405818)\n[PASS] test_NoDispute_YoloReward_TreasuryShareBurned() (gas: 11296200)\n[PASS] test_NoEscalation_SameBondAfterRejections() (gas: 5322338)\n[PASS] test_ParamBounds() (gas: 430781)\n[PASS] test_ParamChange_DoesNotAffectExistingTasks() (gas: 13853109)\n[PASS] test_ParamProposalCancel() (gas: 1336248)\n[PASS] test_PauseStopsOnlyNewTasks() (gas: 1281418)\n[PASS] test_Queue_FlatBondAndVoidRefund() (gas: 13144298)\n[PASS] test_QuoteBondFormula() (gas: 1949883)\n[PASS] test_TopUpDuringSubmission_PaidToDoerOnAcceptance() (gas: 7139004)\n[PASS] test_TopUpDuringSubmission_StaysInRewardAfterRejection() (gas: 10575714)\n[PASS] test_TopUpRightBeforeDeadline_LockedThenReturned() (gas: 4320833)\n[PASS] test_WithdrawRules() (gas: 12255175)\nSuite result: ok. 25 passed; 0 failed; 0 skipped; finished in 1.20s (218.28ms CPU time)\n\nRan 21 tests for test/Swarm.t.sol:SwarmTest\n[PASS] testFuzz_NoMandatoryCheck_AnyRewardSize(uint256,uint8) (runs: 256, μ: 797365, ~: 781510)\n[PASS] test_ActionNotSold_LargeSubmitStillWorks() (gas: 11074728)\n[PASS] test_AnswerAfterSilenceIgnored() (gas: 6388815)\n[PASS] test_AnswerSignedEarly_DeliveredLate_Counts() (gas: 6121726)\n[PASS] test_AttesterRotationTimelocked() (gas: 2414449)\n[PASS] test_CallSwarm_IntakeBroken_Reverts_NothingTaken() (gas: 1715219)\n[PASS] test_CallbackGasUnder100k() (gas: 215892)\nLogs:\n  callback gas: 41000\n\n[PASS] test_CallbackSelectorMatchesDocs() (gas: 734)\n[PASS] test_DuplicateAnswerIgnored_FirstWins() (gas: 6132774)\n[PASS] test_IntakeBroken_LargeSubmitUnaffected() (gas: 10585809)\n[PASS] test_LargeTask_DisputedAtOnce_Rejected() (gas: 11221426)\n[PASS] test_LargeTask_DisputedNftAccepts_Fee5To5() (gas: 11347323)\n[PASS] test_LargeTask_QueuedSubmission_ActivatedWithoutQuestion() (gas: 14315064)\n[PASS] test_LateAnswerIgnored_Timeout() (gas: 6342895)\n[PASS] test_LostCallback_IsSilence_NoPublicFallback() (gas: 6464009)\n[PASS] test_NoMandatoryCheck_ImdTask_NoDispute_AcceptedBondBack() (gas: 10552232)\n[PASS] test_NoMandatoryCheck_MaxReward_NothingAsked_AcceptedByTimer() (gas: 10510801)\n[PASS] test_NoPublicFallback_ForAnyAttestation() (gas: 314895)\n[PASS] test_RefusedBody_Status1_IsSilence() (gas: 6212192)\n[PASS] test_RequestShapeAndBody() (gas: 4787983)\n[PASS] test_SpoofedCallbackIgnored() (gas: 494653)\nSuite result: ok. 21 passed; 0 failed; 0 skipped; finished in 1.33s (246.94ms CPU time)\n\nRan 45 tests for test/HiddenList.t.sol:HiddenListTest\n[PASS] test_10Of10NftsPassesAfterRoundEnd() (gas: 1666842)\n[PASS] test_2Of3WalletsDoesNotPassEvenWith10Nfts() (gas: 825276)\n[PASS] test_3Of3WalletsWith10NftsPasses() (gas: 929019)\n[PASS] test_9Of10NftsDoesNotPass() (gas: 1505280)\n[PASS] test_AllBadTokenIdsDoesNotOpenARound() (gas: 131924)\n[PASS] test_ConstructorAllowsZeroDelegateRegistry() (gas: 7024)\n[PASS] test_ConstructorFixesOwnerNoTransferFunction() (gas: 17154)\n[PASS] test_ConstructorRejectsZeroOwnerOrNft() (gas: 9295)\n[PASS] test_DelegateXyzDelegateCanVote() (gas: 267602)\n[PASS] test_EmptyTokenIdsDoesNotOpenARound() (gas: 41527)\n[PASS] test_EthWithDataReverts() (gas: 37829)\n[PASS] test_FailedRoundCanRetryAfter7Days() (gas: 2009461)\n[PASS] test_FailedRoundCannotRetryBefore7Days() (gas: 3173626)\n[PASS] test_GasNftHolderVote1NftLaterVote() (gas: 312434)\nLogs:\n  NFT holder vote, 1 NFT (later vote): 50089\n\n[PASS] test_GasNftHolderVote1NftOpensRound() (gas: 209782)\nLogs:\n  NFT holder vote, 1 NFT (opens a round): 130352\n\n[PASS] test_GasOwnerHides1Item() (gas: 61056)\nLogs:\n  owner hides 1 item: 54438\n\n[PASS] test_GasOwnerHides20Items() (gas: 584538)\nLogs:\n  owner hides 20 items (batch): 567305\n\n[PASS] test_GasOwnerUnhides1Item() (gas: 94224)\nLogs:\n  owner unhides 1 item: 32830\n\n[PASS] test_HideVoteEventCarriesVaultKindId() (gas: 211555)\n[PASS] test_KeepVoteWithNoActiveRoundIsANoOp() (gas: 112110)\n[PASS] test_KeptBlocksNewRounds() (gas: 163090)\n[PASS] test_LocalConstantsMatchContract() (gas: 29212)\n[PASS] test_NonOwnerSetStateReverts() (gas: 32708)\n[PASS] test_NonexistentTokenIdSkippedNotReverted() (gas: 49881)\n[PASS] test_OwnerHidesAnItemNoVoteEverPassed() (gas: 62775)\n[PASS] test_OwnerHidesUnhidesKeepsABatch() (gas: 206197)\n[PASS] test_OwnerOfNftCanVote() (gas: 212441)\n[PASS] test_OwnerOverridesAPassedVoteBackToVisible() (gas: 1711534)\n[PASS] test_OwnerRestoreVisibleStartsCooldown() (gas: 1813396)\n[PASS] test_PlainEthTransferReverts() (gas: 36475)\n[PASS] test_SameIdDifferentVaultsAreIndependent() (gas: 70415)\n[PASS] test_SameWalletMoreNftsLaterAddToTallyNotWallets() (gas: 313708)\n[PASS] test_SelfContestRepeatsEvery8DaysHonestVoteStillCounts() (gas: 4120541)\n[PASS] test_SelfContestUnderQuorumDoesNotBlockHonestVoteNextDay() (gas: 2010992)\n[PASS] test_SetStateEmitsStateSetWithVaultKindId() (gas: 61729)\n[PASS] test_SetStateInstantNoTimelock() (gas: 63017)\n[PASS] test_SetStateRejectsBadStateValue() (gas: 32653)\n[PASS] test_StatusHiddenOnlyAfterRoundEndEvenIfQuorumAlreadyMet() (gas: 1690048)\n[PASS] test_StrangerCannotVoteWithSomeoneElsesNft() (gas: 132543)\n[PASS] test_TaskAndProofKindsAreIndependent() (gas: 69865)\n[PASS] test_TieHideEqualsKeepDoesNotPass() (gas: 3042275)\n[PASS] test_TokenIdCountsOnceInARound() (gas: 243556)\n[PASS] test_UncontestedFailedRoundRetriesAtOnce() (gas: 570419)\n[PASS] test_VotePassingCannotUnhideAnOwnerHiddenItem() (gas: 1036389)\n[PASS] test_WalletKeepsOneSidePerRoundOtherSideSkipped() (gas: 295427)\nSuite result: ok. 45 passed; 0 failed; 0 skipped; finished in 1.34s (14.59ms CPU time)\n\nRan 1 test for test/Scenarios.t.sol:ScenariosTest\n[PASS] testFuzz_Scenario((uint8,uint256,bool,uint8,uint8,uint8,uint8,uint8,uint8,uint8,uint256,bool,uint32,uint16,uint16)) (runs: 256, μ: 10913334, ~: 9925139)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 1.34s (1.32s CPU time)\n\nRan 4 tests for test/VoteBatch.t.sol:VoteBatchTest\n[PASS] test_Batch_BonusNotPaidOutYet_StaysClaimable() (gas: 8029076)\n[PASS] test_Batch_NothingToClaimReverts() (gas: 7908119)\n[PASS] test_Batch_PaysWhatSingleClaimsPay() (gas: 24120168)\n[PASS] test_Batch_TakesTheYoloBonusShare() (gas: 13846687)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 3.71s (48.63ms CPU time)\n\nRan 51 tests for test/Disputes.t.sol:DisputesTest\n[PASS] test_Appeal_ActionNotSold() (gas: 6870860)\n[PASS] test_Appeal_ByDoerSide_Flip() (gas: 7702096)\n[PASS] test_Appeal_IntakeReverts_AppealVoided() (gas: 7422151)\n[PASS] test_Appeal_LateAnswerAfterSilenceIgnored() (gas: 8073656)\n[PASS] test_Appeal_NeverAsked_ThirdTimeEndsUncalled() (gas: 7712187)\n[PASS] test_Appeal_NeverAsked_TimesOut() (gas: 7260980)\n[PASS] test_Appeal_PriceRaised_AppealVoided() (gas: 7287436)\n[PASS] test_Appeal_Silent_DecisionStands_NewWindow() (gas: 8177056)\n[PASS] test_Appeal_Silent_ReappealFlips() (gas: 8895527)\n[PASS] test_Appeal_SwarmAgrees() (gas: 8174656)\n[PASS] test_Appeal_SwarmFlips_NoFeeRefund_WinnerTakesAll() (gas: 7842804)\n[PASS] test_Appeal_WindowClosed() (gas: 1085407)\n[PASS] test_CallSwarm_ActionNotSold_DefaultStands() (gas: 6419821)\n[PASS] test_CallSwarm_LowerPrice_NoFeeRefund() (gas: 7316258)\n[PASS] test_CallSwarm_WrongPhase() (gas: 600410)\n[PASS] test_ClaimsPlayTimersThemselves_NoPokeNeeded() (gas: 6567461)\n[PASS] test_ContributorAppellantWins_GetsHisShareLikeAnyWinner() (gas: 8074580)\n[PASS] test_ContributorDisputerWins_SameShareAsAnyDisputer() (gas: 6987376)\n[PASS] test_ContributorDoerWins_GetsHisShareLikeAnyWinner() (gas: 11151955)\n[PASS] test_DisputeWindowClosedAndLimits() (gas: 1669489)\n[PASS] test_Dispute_NftAccepts_Fee5To5_Bond5050() (gas: 7030796)\n[PASS] test_Dispute_NftRejects_BondSplit5050() (gas: 6902070)\n[PASS] test_DisputerWhoTopsUpLater_StillGetsHisFullShare() (gas: 6845494)\n[PASS] test_DoerReply() (gas: 1580474)\n[PASS] test_InstantDecision_FiresOnceTheDeltaIsCrossed() (gas: 8354571)\n[PASS] test_NoDecision_CallAfterWindow_Reverts() (gas: 6540742)\n[PASS] test_NoDecision_CallSwarm_Accepts_CallerLosesBondAndFee() (gas: 7485115)\n[PASS] test_NoDecision_CallSwarm_Rejects_CallerGetsOnlyHisShare() (gas: 7702584)\n[PASS] test_NoDecision_DoerCallsSwarm_Confirmed() (gas: 7433148)\n[PASS] test_NoDecision_DoerCallsSwarm_Rejected() (gas: 7276351)\n[PASS] test_NoDecision_NobodyCalls_Accepted_DisputerBondsAllToDoer() (gas: 7562124)\n[PASS] test_NoDecision_SilentStatus2_NobodyCallsAgain_GeneralRule() (gas: 7797547)\n[PASS] test_NoDecision_SilentTimeout_WindowFromSilence() (gas: 7506586)\n[PASS] test_NoDecision_Silent_CalledAgain_Answers_NoFeeRefund() (gas: 8547368)\n[PASS] test_SilenceLoop_ThirdSilenceEndsTheCase() (gas: 9566958)\n[PASS] test_Stake_ContributedAfterSubmission_StillGetsBonus() (gas: 10740692)\n[PASS] test_Stake_EthAndImdBurnShareToBurner() (gas: 15030586)\n[PASS] test_Stake_FullPower_NftRight_VotesFive_BurnHalf_TreasuryHalf() (gas: 11413624)\n[PASS] test_Stake_FullPower_NftUndecided_BurnFiveAndHalf() (gas: 10922633)\n[PASS] test_Stake_FullPower_NoDispute_Bonus_AndBurnToBurner() (gas: 10519808)\n[PASS] test_Stake_LockEndedBeforePayout_NoBonus_RelockCounts() (gas: 15297515)\n[PASS] test_Stake_LockedInTheSubmissionBlock_NoBonus() (gas: 6875772)\n[PASS] test_Stake_None_FeeToTreasury() (gas: 10263054)\n[PASS] test_Stake_PartPower_NoDispute() (gas: 10518330)\n[PASS] test_Stake_ToppedUpAfterSubmission_OnlyThePowerBeforeCounts() (gas: 10606629)\n[PASS] test_SwarmFees_NoRefund_TwoSilencesThenAnswer() (gas: 14451456)\n[PASS] test_SwarmFees_WinnerSideOnly_DoerSilentCallRefunded() (gas: 12775565)\n[PASS] test_ThirdSilence_Decided_NftDecisionStands() (gas: 10231917)\n[PASS] test_ThirdSilence_NoDecision_AcceptedDisputerBondToDoer() (gas: 9650574)\n[PASS] test_YoloReward_FeeSplitsLikeAnyReward_Votes5_Doer4_Burner1() (gas: 11474342)\n[PASS] test_YoloReward_TreasuryPartToBurner_FullPowerSix() (gas: 15109442)\nSuite result: ok. 51 passed; 0 failed; 0 skipped; finished in 3.83s (448.62ms CPU time)\n\nRan 43 tests for test/MoneyRules.t.sol:MoneyRulesTest\n[PASS] test_AddonInPowerBase() (gas: 2912758)\n[PASS] test_BondsIgnoreTheAddon() (gas: 1854038)\n[PASS] test_Burner_NoOwner_AnyoneBurns() (gas: 171089)\n[PASS] test_Burner_PullsFailedPush() (gas: 7140856)\n[PASS] test_ContributorAfterSubmission_GetsBonus() (gas: 1646111)\n[PASS] test_DeadlineRequired() (gas: 532127)\n[PASS] test_DisputeBond_FixedImdPlusOnePercent() (gas: 1712746)\n[PASS] test_DoerBond_FixedImdPlusThreePercent() (gas: 1424603)\n[PASS] test_Example_HundredDollarReward() (gas: 1848665)\n[PASS] test_Expired_AuthorGetsAllBack() (gas: 540001)\n[PASS] test_FakeLeavesStakeAlone() (gas: 2135883)\n[PASS] test_Fake_RewardStaysTaskOpen() (gas: 7604933)\n[PASS] test_HubWithoutCode_PaysAsWithoutStake() (gas: 1282571)\n[PASS] test_LockEndedBeforePayout_NoBonus() (gas: 1516869)\n[PASS] test_MinRewardPerCurrency() (gas: 1945406)\n[PASS] test_NftRight_NoStake() (gas: 7812807)\n[PASS] test_NftRight_Staked() (gas: 8013757)\n[PASS] test_NftWrong_SwarmAccepts() (gas: 15033031)\n[PASS] test_NoAddonLimit() (gas: 892719)\n[PASS] test_NoCap_LargeRewardOpenTotalAndTopUp() (gas: 6825894)\n[PASS] test_NoCreationFee() (gas: 441382)\n[PASS] test_NoDispute_NoStake() (gas: 6758685)\n[PASS] test_NoDispute_Staked() (gas: 7043866)\n[PASS] test_NoDoubling_SameBondForEverySubmission() (gas: 2380890)\n[PASS] test_NoMandatorySwarmCheck() (gas: 1250921)\n[PASS] test_NoPriceReadAtCreation() (gas: 479059)\n[PASS] test_NoSwarmFeeRefund_ThreeCallsByTheDoer() (gas: 10055881)\n[PASS] test_OneLock_FullPowerOnEveryConcurrentSubmission() (gas: 2449340)\n[PASS] test_PowerFixed_SubmissionMomentCounts() (gas: 3814295)\n[PASS] test_Predict_Entry_5_5_90_And_Deferred_2_5_Each() (gas: 1810077)\n[PASS] test_RelativeToTheReward_LowestPrice() (gas: 3588641)\n[PASS] test_RewardLockedUntilDeadline() (gas: 7861187)\n[PASS] test_SweetenerBoundOnceByTheOwner() (gas: 538478)\n[PASS] test_ThirdSilence_EndsAsWithoutCall_Decided() (gas: 10465431)\n[PASS] test_ThirdSilence_EndsAsWithoutCall_Undecided() (gas: 9915769)\n[PASS] test_Tie_DoerTakesEveryDisputerBond() (gas: 7350008)\n[PASS] test_TreasuryGetsOnlyItsShare() (gas: 11987671)\n[PASS] test_VoidAppealsCountTowardsThree() (gas: 9514074)\n[PASS] test_WithdrawnAndRelocked_NoBonus() (gas: 1579817)\n[PASS] test_WorkedExamples() (gas: 21030166)\n[PASS] test_YoloBonus_LockedUntilExpiry() (gas: 758519)\n[PASS] test_YoloBonus_SameRuleAsReward() (gas: 4139999)\n[PASS] test_YoloReward_TreasuryShareBurned() (gas: 11270631)\nSuite result: ok. 43 passed; 0 failed; 0 skipped; finished in 4.09s (226.40ms CPU time)\n\nRan 22 tests for test/YoloLockHub.t.sol:YoloLockHubTest\n[PASS] testFuzz_LockThenWithdrawReturnsExactAmount(uint256,uint256) (runs: 256, μ: 272536, ~: 272265)\n[PASS] testFuzz_PowerConstantThroughTheTerm(uint256,uint256,uint256) (runs: 256, μ: 151151, ~: 151149)\n[PASS] test_ConstructorTakesYolo() (gas: 18365)\n[PASS] test_EndOnlyLater_AmountOnlyGrows() (gas: 485049)\n[PASS] test_EndedLockLockedAgain() (gas: 477126)\n[PASS] test_LockAndWithdrawAfterTheEnd() (gas: 390877)\n[PASS] test_LockTermsAndZero() (gas: 406871)\n[PASS] test_PowerAt_ReadsTheLockStrictlyBefore() (gas: 698855)\n[PASS] test_Power_AddAndExtend() (gas: 868276)\n[PASS] test_Power_FixedAtTheLock_DoesNotFall() (gas: 464128)\n[PASS] test_Power_RollingOneWeekExtensionDropsToOneWeek() (gas: 698967)\n[PASS] test_Rule_QueuedDoer_PowerAtTheSubmission() (gas: 3244146)\n[PASS] test_StakePower_RunningLockOnly() (gas: 516879)\n[PASS] test_Vault_AddedAfterTheSubmission_NotCounted() (gas: 7096486)\n[PASS] test_Vault_LockEndedBeforePayout_NoBonus_RelockedBonus() (gas: 11472307)\n[PASS] test_Vault_LockedInTheSubmissionBlockOrLater_NoBonus() (gas: 11395466)\n[PASS] test_Vault_LowestPriceOfTheWindow() (gas: 1474268)\n[PASS] test_Vault_NoYoloPrice_NoBonus() (gas: 1367089)\n[PASS] test_Vault_PowerEqualsReward_Bonus4() (gas: 7011754)\n[PASS] test_Vault_PowerHalfTheReward_Bonus2() (gas: 6970528)\n[PASS] test_Vault_RelativeToTheReward() (gas: 16098417)\n[PASS] test_Vault_YoloReward_Direct() (gas: 6885703)\nSuite result: ok. 22 passed; 0 failed; 0 skipped; finished in 4.04s (139.50ms CPU time)\n\nRan 2 tests for test/VotePowerFuzz.t.sol:VotePowerFuzzTest\n[PASS] testFuzz_OneVotePerNft(uint256) (runs: 256, μ: 96792346, ~: 99016641)\n[PASS] test_OneVotePerNft_Fixed() (gas: 387121116)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 4.03s (4.28s CPU time)\n\nRan 15 tests for test/SideCalls.t.sol:SideCallsTest\n[PASS] test_BothSidesCall_EachPaysFromItsOwnBond() (gas: 7996334)\n[PASS] test_Cancel_AfterSideCalls_BondsBackMinusFees() (gas: 6932660)\n[PASS] test_DisputerAppeal_Loses_RestOfBondToWinner() (gas: 7670475)\n[PASS] test_DisputerCallingForTheDoer_PaysLikeAStranger() (gas: 7127378)\n[PASS] test_DoerAppeal_Wins_RestOfBondPlusLoserBond() (gas: 7578765)\n[PASS] test_FeeAboveBond_WalletPaysOnlyTheRest() (gas: 7603629)\n[PASS] test_RepeatCall_CheaperThanBond_ThreeCalls() (gas: 9109910)\n[PASS] test_RepeatCall_Disputer_Loses() (gas: 8626329)\n[PASS] test_RepeatCall_Disputer_Wins() (gas: 8487353)\n[PASS] test_RepeatCall_Doer_Loses() (gas: 7852962)\n[PASS] test_RepeatCall_Doer_Wins() (gas: 8131234)\n[PASS] test_RepeatCall_EachSideOwnFirst() (gas: 8703381)\n[PASS] test_SideSpent_View() (gas: 8475532)\n[PASS] test_StrangerAppeal_PaysBondAndFee() (gas: 7500079)\n[PASS] test_VoidSideAppeal_BondWhole() (gas: 7759396)\nSuite result: ok. 15 passed; 0 failed; 0 skipped; finished in 4.10s (147.72ms CPU time)\n\nRan 1 test for test/Invariant.t.sol:InvariantTest\n[PASS]\nInvariantTest invariants:\n[PASS] invariant_BalanceEqualsLiabilities\n[PASS] invariant_HubHoldsEveryLock_StakePowerBounded\n[PASS] invariant_RewardLockedUntilDeadline\n[PASS] invariant_SweetenerHoldsEveryBonus\n[PASS] invariant_TrophiesOnlyForAcceptedDoersAndEveryYoloBurned\n InvariantTest invariants (runs: 100, calls: 15000, reverts: 0)\n\n╭----------+----------------------+-------+---------+----------╮\n| Contract | Selector             | Calls | Reverts | Discards |\n+==============================================================+\n| Handler  | answer               | 548   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | appeal               | 541   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | askAppealSwarm       | 539   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | breakIntake          | 577   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | callSwarm            | 564   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | claim                | 524   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | createTask           | 545   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | dispute              | 555   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | expireAndWithdraw    | 543   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | lock                 | 515   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | mintTrophy           | 567   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | payoutBonus          | 548   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | poke                 | 543   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progress             | 513   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progressA            | 516   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progressB            | 551   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progressC            | 521   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progressD            | 513   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | setIntakePrice       | 533   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | submit               | 539   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | sweep                | 528   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | sweeten              | 513   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | topUp                | 534   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | vote                 | 503   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | warp                 | 544   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | withdrawBonus        | 488   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | withdrawContribution | 567   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | withdrawLock         | 528   | 0       | 0        |\n╰----------+----------------------+-------+---------+----------╯\n\nLogs:\n  createTask: 4\n  topUp: 0\n  submit: 0\n  dispute: 0\n  vote: 0\n  appeal: 0\n  breakIntake: 11\n  callSwarm: 0\n  answer: 0\n  claimDisputer: 0\n  claimVoter: 0\n  claimVoid: 0\n  withdrawContribution: 2\n  withdrawExpired: 2\n  progress: 0\n  sweeten: 0\n  withdrawBonus: 0\n  payoutBonus: 0\n  mintTrophy: 0\n  lock: 4\n  withdrawLock: 0\n  repeatedAsk: 0\n  progress at phase 2: 0\n  progress at phase 3: 0\n  progress at phase 4: 0\n  progress at phase 5: 0\n  progress at phase 6: 0\n  progress at phase 7: 0\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 17.59s (17.57s CPU time)\n\nRan 88 test suites in 17.59s (56.95s CPU time): 693 tests passed, 0 failed, 3 skipped (696 total tests)\n","passed":true},{"durationMs":223,"exitCode":0,"name":"source-index","output":"{\"v\":1,\"entryPoints\":[\"BuybackBurner.burnYolo()\",\"BuybackBurner.forward(address)\",\"BuybackBurner.pull(address,address)\",\"BuybackBurner.receive()\",\"BuybackBurner.setBuybackWallet(address)\",\"CaseDesk.advanced(uint256)\",\"CaseDesk.askAppeal(uint256,uint256,(string,string,string,string,string))\",\"CaseDesk.askEscalation(uint256,uint256,(string,string,string,string,string))\",\"CaseDesk.claimVoidSubmission(uint256)\",\"CaseDesk.markAppealed(uint256)\",\"CaseDesk.startVote(uint256,uint32)\",\"CaseDesk.step(uint256)\",\"CaseDesk.submit(uint256,string,(string,string),uint256,uint256,(address,uint256,uint256,uint64,bytes))\",\"CaseDesk.tryInstantDecision(uint256,(uint256,uint256,uint256,uint256))\",\"CaseDesk.unwind(uint256)\",\"CaseDesk.wire(address,address,address,address,address)\",\"DareTrophy.approve(address,uint256)\",\"DareTrophy.mint(uint256,string)\",\"DareTrophy.safeTransferFrom(address,address,uint256)\",\"DareTrophy.safeTransferFrom(address,address,uint256,bytes)\",\"DareTrophy.setApprovalForAll(address,bool)\",\"DareTrophy.transferFrom(address,address,uint256)\",\"DevPrices.acceptOwnership()\",\"DevPrices.renounceOwnership()\",\"DevPrices.setEthUsd(uint256)\",\"DevPrices.setImdUsd(uint256)\",\"DevPrices.setYoloPriceUsd(uint256)\",\"DevPrices.transferOwnership(address)\",\"DevVesting.bindStarter()\",\"DevVesting.release(address)\",\"DisputeDesk.appeal(uint256,uint256,(address,uint256,uint256,uint64,bytes))\",\"DisputeDesk.appealAsked(uint256,uint256)\",\"DisputeDesk.askAppealSwarm(uint256,(string,string,string,string,string))\",\"DisputeDesk.callSwarm(uint256,bool,uint256,(address,uint256,uint256,uint64,bytes),(string,string,string,string,string))\",\"DisputeDesk.claimDisputer(uint256)\",\"DisputeDesk.claimVoterReward(uint256,address)\",\"DisputeDesk.claimVoterRewards(uint256[],address)\",\"DisputeDesk.dispute(uint256,string,string,(address,uint256,uint256,uint64,bytes))\",\"DisputeDesk.dropCaller(uint256)\",\"DisputeDesk.settle(uint256,uint8,(uint64,uint32,address,address,uint8,uint256,(uint256,uint256),uint64,uint16,bool))\",\"DisputeDesk.vote(uint256,uint8,address,uint256[])\",\"DisputeDesk.wire(address,address,address,address,address)\",\"HiddenList.setState((address,uint8,uint256)[],uint8)\",\"HiddenList.vote(address,uint8,uint256,bool,uint256[])\",\"IncentivesVesting.bindStarter()\",\"IncentivesVesting.release(address)\",\"NftGate.consume(address,uint256)\",\"NftGate.record(address[],uint256[])\",\"NftGate.seal(uint256)\",\"ParamsRegistry.acceptOwnership()\",\"ParamsRegistry.activateParams()\",\"ParamsRegistry.cancelAttester(address,bool)\",\"ParamsRegistry.cancelParams()\",\"ParamsRegistry.executeAttester(address,bool)\",\"ParamsRegistry.proposeAttester(address,bool)\",\"ParamsRegistry.renounceOwnership()\",\"ParamsRegistry.setNewTasksPaused(bool)\",\"ParamsRegistry.transferOwnership(address)\",\"ProjectVesting.bindStarter()\",\"ProjectVesting.release(address)\",\"ProtocolDirectory.addVersion()\",\"ProtocolDirectory.cancelCurrent()\",\"ProtocolDirectory.cancelVersion()\",\"ProtocolDirectory.proposeCurrent(uint256)\",\"ProtocolDirectory.proposeVersion((address,address,address,uint64,uint64,string))\",\"ProtocolDirectory.setCurrent()\",\"TaskVault.addTreasury(address,uint256)\",\"TaskVault.advance(uint256)\",\"TaskVault.ask((uint64,uint8,uint16,uint16,address,bytes32,bytes32,uint256),bytes)\",\"TaskVault.bindSweetener(address)\",\"TaskVault.burn(address,uint256)\",\"TaskVault.cancelTask(uint256)\",\"TaskVault.closeSubmission(uint256,uint8,uint256)\",\"TaskVault.collectBondPart(address,uint256,address,uint256)\",\"TaskVault.collectImd(address,uint256,uint256,address,(address,uint256,uint256,uint64,bytes))\",\"TaskVault.createTask(address,uint256,uint64,string,(string,string,string),uint8,uint8,string,(address,uint256,uint256,uint64,bytes))\",\"TaskVault.credit(address,address,uint256)\",\"TaskVault.fallback()\",\"TaskVault.onOracleResult(bytes32,(bytes32,uint256,bytes32,uint8,bytes,uint256,uint64,uint64,bytes32,bytes32,uint16,uint16,uint16,uint64,uint64),bytes)\",\"TaskVault.pay(address,address,uint256)\",\"TaskVault.place(uint256,uint256,bool)\",\"TaskVault.poke(uint256)\",\"TaskVault.settleValue(address,uint256,uint256)\",\"TaskVault.sweepTreasury(address)\",\"TaskVault.topUp(uint256,uint256,(address,uint256,uint256,uint64,bytes))\",\"TaskVault.withdraw(address)\",\"TaskVault.withdrawContribution(uint256)\",\"TaskVault.withdrawTo(address,address)\",\"TeamVesting.bindStarter()\",\"TeamVesting.release(address)\",\"TreasuryVesting.bindStarter()\",\"TreasuryVesting.release(address)\",\"TrophyCatalog.acceptOwnership()\",\"TrophyCatalog.addDesign(string,bytes)\",\"TrophyCatalog.renounceOwnership()\",\"TrophyCatalog.setCategoryDesign(uint8,uint256)\",\"TrophyCatalog.setDefaultDesign(uint256)\",\"TrophyCatalog.setDesignEnabled(uint256,bool)\",\"TrophyCatalog.transferOwnership(address)\",\"UniswapV3SwapAdapter.swapExactIn(address,address,uint256,uint256,uint256,bytes,address)\",\"YoloLockHub.lock(uint256,uint256)\",\"YoloLockHub.withdraw()\",\"YoloPredict.claim(uint256)\",\"YoloPredict.predict(uint256,bool,uint256)\",\"YoloPredict.settle(uint256)\",\"YoloSplitter.split(address)\",\"YoloSweetener.claimVoter(uint256,address)\",\"YoloSweetener.payout(uint256)\",\"YoloSweetener.sweeten(uint256,uint256)\",\"YoloSweetener.withdraw(uint256)\",\"YoloToken.approve(address,uint256)\",\"YoloToken.transfer(address,uint256)\",\"YoloToken.transferFrom(address,address,uint256)\"],\"files\":{\".gitignore\":5,\".gitmodules\":9,\"ADAPTATION.md\":116,\"CONTRACTS.md\":178,\"README.md\":101,\"brand/BRANDBOOK.md\":79,\"brand/avatar-400.png\":168,\"brand/favicon-16.png\":3,\"brand/favicon-32.png\":7,\"brand/mark-1024.png\":317,\"brand/mark-pixel-64.png\":6,\"brand/mark-transparent-1024.png\":385,\"brand/og-1200x630.png\":912,\"brand/sheet.png\":2363,\"brand/wordmark-2400x600.png\":283,\"brand/x-banner-1500x500.png\":725,\"docs/LAUNCH-TASK.md\":203,\"docs/MECHANICS.md\":454,\"docs/TOKENOMICS.md\":101,\"docs/YOLO.md\":289,\"foundry.lock\":11,\"foundry.toml\":33,\"landing/assets/fonts/LICENSE-ibm-plex-mono.txt\":93,\"landing/assets/fonts/LICENSE-quicksand.txt\":93,\"landing/assets/fonts/plexmono-500.woff2\":62,\"landing/assets/fonts/quicksand-500.woff2\":55,\"landing/assets/fonts/quicksand-600.woff2\":57,\"landing/assets/fonts/quicksand-700.woff2\":78,\"landing/assets/img/avatar-400.png\":168,\"landing/assets/img/dare1.jpg\":150,\"landing/assets/img/dare2.jpg\":148,\"landing/assets/img/dare3.jpg\":201,\"landing/assets/img/dare4.jpg\":140,\"landing/assets/img/favicon-16.png\":3,\"landing/assets/img/favicon-32.png\":7,\"landing/assets/img/nft-1.svg\":1,\"landing/assets/img/nft-1000.svg\":1,\"landing/assets/img/nft-4.svg\":1,\"landing/assets/img/og-1200x630.png\":912,\"landing/assets/img/toad-640.png\":459,\"landing/assets/img/wordmark.png\":221,\"landing/assets/video/poster.jpg\":297,\"landing/index.html\":286,\"landing/main.js\":396,\"landing/style.css\":490,\"script/DeployMainnet.s.sol\":187,\"script/LaunchPlan.sol\":424,\"script/check-launch-task.py\":32,\"script/snapshot/snapshot.py\":187,\"src/BuybackBurner.sol\":124,\"src/DareTrophy.sol\":220,\"src/DevPrices.sol\":129,\"src/HiddenList.sol\":297,\"src/OracleAttestation.sol\":57,\"src/ParamsRegistry.sol\":223,\"src/ProtocolDirectory.sol\":167,\"src/TaskVault.sol\":839,\"src/TrophyCatalog.sol\":119,\"src/VaultParams.sol\":250,\"src/VaultTypes.sol\":450,\"src/VotePower.sol\":54,\"src/YoloLockHub.sol\":149,\"src/YoloPredict.sol\":297,\"src/YoloSweetener.sol\":173,\"src/adapters/UniswapV3SwapAdapter.sol\":71,\"src/desks/CaseDesk.sol\":547,\"src/desks/Desk.sol\":143,\"src/desks/DeskApi.sol\":137,\"src/desks/DisputeDesk.sol\":791,\"src/helpers/AttestationChecker.sol\":65,\"src/helpers/SwarmQuestion.sol\":176,\"src/helpers/TextRules.sol\":244,\"src/interfaces/IDelegateRegistry.sol\":12,\"src/interfaces/IIntake.sol\":33,\"src/interfaces/ISwapAdapter.sol\":22,\"src/interfaces/ITaskVault.sol\":167,\"src/libraries/VoteLib.sol\":33,\"src/token/NftGate.sol\":113,\"src/token/ProjectVesting.sol\":102,\"src/token/Vestings.sol\":38,\"src/token/YoloSplitter.sol\":103,\"src/token/YoloToken.sol\":160,\"test/Base.t.sol\":652,\"test/BondBase.t.sol\":146,\"test/BuybackWallet.t.sol\":434,\"test/CancelTask.t.sol\":250,\"test/ContractRules.t.sol\":208,\"test/Cover.t.sol\":207,\"test/Desks.t.sol\":433,\"test/DevPrices.t.sol\":86,\"test/Directory.t.sol\":186,\"test/DisputeLinkOptional.t.sol\":82,\"test/Disputes.t.sol\":1309,\"test/Emergency.t.sol\":76,\"test/Evidence.t.sol\":338,\"test/Gas.t.sol\":183,\"test/GasTextSize.t.sol\":108,\"test/HiddenList.t.sol\":671,\"test/Hosts.t.sol\":112,\"test/Invariant.t.sol\":674,\"test/LogReconstruction.t.sol\":70,\"test/MoneyRules.t.sol\":937,\"test/OptionalFields.t.sol\":103,\"test/Payments.t.sol\":295,\"test/Scenarios.t.sol\":217,\"test/SideCalls.t.sol\":388,\"test/Swarm.t.sol\":435,\"test/Sweetener.t.sol\":379,\"test/TaskFields.t.sol\":391,\"test/TaskRules.t.sol\":201,\"test/Tasks.t.sol\":619,\"test/TextRule.t.sol\":105,\"test/Trophy.t.sol\":402,\"test/VoteBatch.t.sol\":155,\"test/VoteCountWidth.t.sol\":31,\"test/VoteGas.t.sol\":150,\"test/VotePowerFuzz.t.sol\":122,\"test/Votes.t.sol\":418,\"test/Yolo.t.sol\":138,\"test/YoloLockHub.t.sol\":487,\"test/YoloPredict.t.sol\":641,\"test/YoloPredictScenarios.t.sol\":951,\"test/YoloToken.t.sol\":730,\"test/adaptation/Adaptation.t.sol\":132,\"test/audit/AddonAfterSub.t.sol\":52,\"test/audit/AuditA.t.sol\":74,\"test/audit/AuditB.t.sol\":314,\"test/audit/AuditC.t.sol\":264,\"test/audit/AuditNoFallbackOwnVote.t.sol\":118,\"test/audit/AuditNoMandatoryCheck.t.sol\":106,\"test/audit/AuditSweetenerBonus.t.sol\":298,\"test/audit/LateAppealAsk.t.sol\":125,\"test/audit/LazyAppealVoidWindow.t.sol\":59,\"test/audit/MaxImdInCap.t.sol\":224,\"test/audit/PredictAfterTimer.t.sol\":41,\"test/audit/PredictZeroPoints.t.sol\":84,\"test/audit/StakeFloorZeroSplit.t.sol\":41,\"test/audit/StakePowerRelock.t.sol\":64,\"test/audit/StepDeadlineAppealed.t.sol\":28,\"test/audit/StepDeadlineAsked.t.sol\":35,\"test/audit/YoloModulesAudit.t.sol\":116,\"test/audit/round2/Proof_476db268aaec.t.sol\":80,\"test/audit/round2/Proof_5d8c4edc729c.t.sol\":67,\"test/audit/round2/Proof_ced07852b14f.t.sol\":50,\"test/audit/swarm117/SwarmAudit117.t.sol\":339,\"test/audit/swarm117/VestingClockPreStart.t.sol\":92,\"test/fork/LaunchForkBase.sol\":193,\"test/fork/LaunchRehearsal.fork.t.sol\":1173,\"test/fork/UniswapV3AdapterFork.t.sol\":37,\"test/mocks/MockDelegateRegistry.sol\":26,\"test/mocks/MockERC20.sol\":31,\"test/mocks/MockIntake.sol\":120,\"test/mocks/MockNFT.sol\":17,\"test/mocks/MockPriceOracle.sol\":74,\"test/mocks/MockStarter.sol\":28,\"test/mocks/MockSwapAdapter.sol\":32,\"test/mocks/TaskRulesFixture.sol\":32,\"test/review/ReviewAttestation.t.sol\":218,\"test/review/ReviewGas.t.sol\":93,\"test/review/ReviewGasGrief.t.sol\":76,\"test/review/ReviewLaunch.t.sol\":618,\"test/review/ReviewProofFormat.t.sol\":54,\"test/review/ReviewProofLabel.t.sol\":123,\"test/review/ReviewProofs.t.sol\":166,\"test/review/ReviewQuestionSize.t.sol\":100,\"test/review/ReviewQueue.t.sol\":95,\"test/review/ReviewRoles.t.sol\":127,\"test/review/ReviewSplitAccess.t.sol\":522,\"test/review/ReviewSplitRegression.t.sol\":402,\"test/review/ReviewSwarmOrders.t.sol\":88,\"test/review/ReviewSweetener.t.sol\":304,\"test/review/ReviewYolo.t.sol\":96},\"excluded\":[\"lib/\",\"node_modules/\"],\"truncated\":true}","passed":true},{"durationMs":21582,"exitCode":0,"name":"slither","output":"[high/high] arbitrary-send-erc20 at src/TaskVault.sol:548: TaskVault.collectBondPart(address,uint256,address,uint256) (src/TaskVault.sol#548-566) uses arbitrary from in transferFrom: IERC20(currency).safeTransferFrom(payer,address(this),amount) (src/TaskVault.sol#563)\n[high/medium] arbitrary-send-eth at src/BuybackBurner.sol:92: BuybackBurner.forward(address) (src/BuybackBurner.sol#92-108) sends eth to arbitrary user\n[high/medium] arbitrary-send-eth at src/TaskVault.sol:775: TaskVault._collectImd(address,uint256,uint256,address,ImdPay) (src/TaskVault.sol#775-822) sends eth to arbitrary user\n[high/medium] reentrancy-balance at src/TaskVault.sol:775: Reentrancy in TaskVault._collectImd(address,uint256,uint256,address,ImdPay) (src/TaskVault.sol#775-822):\n[high/medium] reentrancy-balance at src/TaskVault.sol:605: Reentrancy in TaskVault.ask(AskTerms,bytes) (src/TaskVault.sol#605-644):\n[high/medium] reentrancy-balance at src/TaskVault.sol:775: Reentrancy in TaskVault._collectImd(address,uint256,uint256,address,ImdPay) (src/TaskVault.sol#775-822):\n[high/medium] reentrancy-balance at src/TaskVault.sol:775: Reentrancy in TaskVault._collectImd(address,uint256,uint256,address,ImdPay) (src/TaskVault.sol#775-822):\n[high/medium] reentrancy-eth at src/TaskVault.sol:254: Reentrancy in TaskVault.createTask(address,uint256,uint64,string,TaskRules,uint8,uint8,string,ImdPay) (src/TaskVault.sol#254-311):\n[high/medium] reentrancy-eth at src/TaskVault.sol:775: Reentrancy in TaskVault._collectImd(address,uint256,uint256,address,ImdPay) (src/TaskVault.sol#775-822):\n[medium/medium] divide-before-multiply at src/YoloLockHub.sol:64: YoloLockHub.lock(uint256,uint256) (src/YoloLockHub.sol#64-89) performs a multiplication on the result of a division:\n[medium/medium] divide-before-multiply at src/YoloLockHub.sol:64: YoloLockHub.lock(uint256,uint256) (src/YoloLockHub.sol#64-89) performs a multiplication on the result of a division:\n[medium/high] incorrect-equality at src/ProtocolDirectory.sol:88: ProtocolDirectory.addVersion() (src/ProtocolDirectory.sol#88-94) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/YoloLockHub.sol:64: YoloLockHub.lock(uint256,uint256) (src/YoloLockHub.sol#64-89) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/BuybackBurner.sol:92: BuybackBurner.forward(address) (src/BuybackBurner.sol#92-108) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/BuybackBurner.sol:83: BuybackBurner.burnYolo() (src/BuybackBurner.sol#83-88) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/desks/CaseDesk.sol:170: CaseDesk.step(uint256) (src/desks/CaseDesk.sol#170-233) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/TaskVault.sol:741: TaskVault._credit(address,address,uint256) (src/TaskVault.sol#741-745) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/ProtocolDirectory.sol:114: ProtocolDirectory.setCurrent() (src/ProtocolDirectory.sol#114-123) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/token/ProjectVesting.sol:90: ProjectVesting.release(address) (src/token/ProjectVesting.sol#90-101) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/TaskVault.sol:762: TaskVault._trySend(address,address,uint256,uint256) (src/TaskVault.sol#762-770) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/desks/CaseDesk.sol:511: CaseDesk._stakeBps(SubmitTerms,address,ParamsCore) (src/desks/CaseDesk.sol#511-529) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/desks/CaseDesk.sol:170: CaseDesk.step(uint256) (src/desks/CaseDesk.sol#170-233) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/BuybackBurner.sol:92: BuybackBurner.forward(address) (src/BuybackBurner.sol#92-108) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/YoloLockHub.sol:140: YoloLockHub._checkpoint(address,uint96,uint64,uint32) (src/YoloLockHub.sol#140-148) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/token/NftGate.sol:107: NftGate.consume(address,uint256) (src/token/NftGate.sol#107-112) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/token/YoloToken.sol:117: YoloToken._sellTax(uint256,uint256) (src/token/YoloToken.sol#117-120) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/YoloLockHub.sol:92: YoloLockHub.withdraw() (src/YoloLockHub.sol#92-100) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/ParamsRegistry.sol:91: ParamsRegistry.activateParams() (src/ParamsRegistry.sol#91-100) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/TaskVault.sol:748: TaskVault._refundUnbooked(address,address,uint256) (src/TaskVault.sol#748-754) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/token/ProjectVesting.sol:74: ProjectVesting.vestedAmount(address,uint256) (src/token/ProjectVesting.sol#74-82) uses a dangerous strict equality:\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:170: Reentrancy in CaseDesk.step(uint256) (src/desks/CaseDesk.sol#170-233):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:408: Reentrancy in CaseDesk._askAppeal(uint256,uint256,ParamsCore,RuleTexts) (src/desks/CaseDesk.sol#408-427):\n[medium/medium] reentrancy-no-eth at src/TaskVault.sol:317: Reentrancy in TaskVault.topUp(uint256,uint256,ImdPay) (src/TaskVault.sol#317-332):\n[medium/medium] reentrancy-no-eth at src/desks/DisputeDesk.sol:254: Reentrancy in DisputeDesk.callSwarm(uint256,bool,uint256,ImdPay,RuleTexts) (src/desks/DisputeDesk.sol#254-274):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:170: Reentrancy in CaseDesk.step(uint256) (src/desks/CaseDesk.sol#170-233):\n[medium/medium] reentrancy-no-eth at src/YoloPredict.sol:181: Reentrancy in YoloPredict.settle(uint256) (src/YoloPredict.sol#181-226):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:260: Reentrancy in CaseDesk.askEscalation(uint256,uint256,RuleTexts) (src/desks/CaseDesk.sol#260-267):\n[medium/medium] reentrancy-no-eth at src/desks/DisputeDesk.sol:622: Reentrancy in DisputeDesk._settleDecided(uint256,Facts,bool,bool,ParamsCore) (src/desks/DisputeDesk.sol#622-713):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:408: Reentrancy in CaseDesk._askAppeal(uint256,uint256,ParamsCore,RuleTexts) (src/desks/CaseDesk.sol#408-427):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:460: Reentrancy in CaseDesk._finalize(uint256,Outcome) (src/desks/CaseDesk.sol#460-485):\n[medium/medium] reentrancy-no-eth at src/TaskVault.sol:338: Reentrancy in TaskVault.withdrawContribution(uint256) (src/TaskVault.sol#338-350):\n[medium/medium] reentrancy-no-eth at src/desks/DisputeDesk.sol:573: Reentrancy in DisputeDesk._settleNeutral(uint256,Facts) (src/desks/DisputeDesk.sol#573-582):\n[medium/medium] reentrancy-no-eth at src/desks/DisputeDesk.sol:500: Reentrancy in DisputeDesk.settle(uint256,Outcome,Facts) (src/desks/DisputeDesk.sol#500-516):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:170: Reentrancy in CaseDesk.step(uint256) (src/desks/CaseDesk.sol#170-233):\n[medium/medium] reentrancy-no-eth at src/TaskVault.sol:185: Reentrancy in TaskVault.fallback() (src/TaskVault.sol#185-204):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:74: Reentrancy in CaseDesk.submit(uint256,string,Evidence,uint256,uint256,ImdPay) (src/desks/CaseDesk.sol#74-137):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:170: Reentrancy in CaseDesk.step(uint256) (src/desks/CaseDesk.sol#170-233):\n[medium/medium] reentrancy-no-eth at src/TaskVault.sol:368: Reentrancy in TaskVault.cancelTask(uint256) (src/TaskVault.sol#368-379):\n[medium/medium] reentrancy-no-eth at src/desks/DisputeDesk.sol:493: Reentrancy in DisputeDesk.dropCaller(uint256) (src/desks/DisputeDesk.sol#493-496):\n[medium/medium] reentrancy-no-eth at src/TaskVault.sol:650: Reentrancy in TaskVault._advance(uint256) (src/TaskVault.sol#650-661):\n[medium/medium] reentrancy-no-eth at src/YoloPredict.sol:230: Reentrancy in YoloPredict.claim(uint256) (src/YoloPredict.sol#230-264):\n[medium/medium] reentrancy-no-eth at src/desks/DisputeDesk.sol:384: Reentrancy in DisputeDesk.claimVoterRewards(uint256[],address) (src/desks/DisputeDesk.sol#384-413):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:408: Reentrancy in CaseDesk._askAppeal(uint256,uint256,ParamsCore,RuleTexts) (src/desks/CaseDesk.sol#408-427):\n[medium/medium] reentrancy-no-eth at src/desks/DisputeDesk.sol:622: Reentrancy in DisputeDesk._settleDecided(uint256,Facts,bool,bool,ParamsCore) (src/desks/DisputeDesk.sol#622-713):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:140: Reentrancy in CaseDesk.claimVoidSubmission(uint256) (src/desks/CaseDesk.sol#140-155):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:74: Reentrancy in CaseDesk.submit(uint256,string,Evidence,uint256,uint256,ImdPay) (src/desks/CaseDesk.sol#74-137):\n[medium/medium] reentrancy-no-eth at src/desks/DisputeDesk.sol:622: Reentrancy in DisputeDesk._settleDecided(uint256,Facts,bool,bool,ParamsCore) (src/desks/DisputeDesk.sol#622-713):\n[medium/medium] uninitialized-local at src/desks/DisputeDesk.sol:385: DisputeDesk.claimVoterRewards(uint256[],address).imdTotal (src/desks/DisputeDesk.sol#385) is a local variable never initialized\n[medium/medium] uninitialized-local at src/DareTrophy.sol:175: DareTrophy.badge(uint8).w (src/DareTrophy.sol#175) is a local variable never initialized\n[medium/medium] uninitialized-local at src/token/NftGate.sol:67: NftGate.record(address[],uint256[]).total (src/token/NftGate.sol#67) is a local variable never initialized\n[medium/medium] uninitialized-local at src/desks/DisputeDesk.sol:345: DisputeDesk.claimDisputer(uint256).payout (src/desks/DisputeDesk.sol#345) is a local variable never initialized\n[medium/medium] uninitialized-local at src/desks/DisputeDesk.sol:733: DisputeDesk._payReward(uint256,Facts,bool,ParamsCore).bonus (src/desks/DisputeDesk.sol#733) is a local variable never initialized\n[medium/medium] uninitialized-local at src/YoloPredict.sol:198: YoloPredict.settle(uint256).toAuthor (src/YoloPredict.sol#198) is a local variable never initialized\n[medium/medium] uninitialized-local at src/YoloLockHub.sol:125: YoloLockHub._pointBefore(address,uint256).lo (src/YoloLockHub.sol#125) is a local variable never initialized\n[medium/medium] uninitialized-local at src/VotePower.sol:39: VotePower.mayVote(address,uint256).owner (src/VotePower.sol#39) is a local variable never initialized\n[medium/medium] uninitialized-local at src/helpers/TextRules.sol:76: TextLib.checkCover(string).scheme (src/helpers/TextRules.sol#76) is a local variable never initialized\n[medium/medium] uninitialized-local at src/desks/DisputeDesk.sol:295: DisputeDesk._fundCall(Appeal,uint256,SubCore,uint256,uint256,ParamsCore,ImdPay).fromBond (src/desks/DisputeDesk.sol#295) is a local variable never initialized\n[medium/medium] uninitialized-local at src/helpers/SwarmQuestion.sol:141: SwarmQuestionBuilder.buildFor(address,uint256,uint8,uint256,RuleTexts).q (src/helpers/SwarmQuestion.sol#141) is a local variable never initialized\n[medium/medium] uninitialized-local at src/desks/DisputeDesk.sol:389: DisputeDesk.claimVoterRewards(uint256[],address).any (src/desks/DisputeDesk.sol#389) is a local variable never initialized\n[medium/medium] uninitialized-local at src/YoloSweetener.sol:145: YoloSweetener.payout(uint256).extra (src/YoloSweetener.sol#145) is a local variable never initialized\n[medium/medium] uninitialized-local at src/YoloPredict.sol:200: YoloPredict.settle(uint256).burnt (src/YoloPredict.sol#200) is a local variable never initialized\n[medium/medium] uninitialized-local at src/YoloPredict.sol:197: YoloPredict.settle(uint256).doer (src/YoloPredict.sol#197) is a local variable never initialized\n[medium/medium] uninitialized-local at src/YoloPredict.sol:199: YoloPredict.settle(uint256).toDoer (src/YoloPredict.sol#199) is a local variable never initialized\n[medium/medium] uninitialized-local at src/desks/DisputeDesk.sol:388: DisputeDesk.claimVoterRewards(uint256[],address).n (src/desks/DisputeDesk.sol#388) is a local variable never initialized\n[medium/medium] uninitialized-local at src/YoloPredict.sol:238: YoloPredict.claim(uint256).pay (src/YoloPredict.sol#238) is a local variable never initialized\n[medium/medium] uninitialized-local at src/desks/CaseDesk.sol:522: CaseDesk._stakeBps(SubmitTerms,address,ParamsCore).r (src/desks/CaseDesk.sol#522) is a local variable never initialized\n[medium/medium] uninitialized-local at src/TaskVault.sol:560: TaskVault.collectBondPart(address,uint256,address,uint256).noSwap (src/TaskVault.sol#560) is a local variable never initialized\n[medium/medium] uninitialized-local at src/desks/DisputeDesk.sol:294: DisputeDesk._fundCall(Appeal,uint256,SubCore,uint256,uint256,ParamsCore,ImdPay).bond (src/desks/DisputeDesk.sol#294) is a local variable never initialized\n[medium/medium] uninitialized-local at src/desks/DisputeDesk.sol:390: DisputeDesk.claimVoterRewards(uint256[],address).sweet (src/desks/DisputeDesk.sol#390) is a local variable never initialized\n[medium/medium] uninitialized-local at src/YoloSweetener.sol:139: YoloSweetener.payout(uint256).toVoters (src/YoloSweetener.sol#139) is a local variable never initialized\n[medium/medium] unused-return at src/desks/DisputeDesk.sol:136: DisputeDesk.vote(uint256,uint8,address,uint256[]) (src/desks/DisputeDesk.sol#136-191) ignores return value by (None,None,instantDelta,minWallets) = ParamsRegistry(registry).voteParams(version) (src/desks/DisputeDesk.sol#185)\n[medium/medium] unused-return at src/YoloSweetener.sol:160: YoloSweetener.claimVoter(uint256,address) (src/YoloSweetener.sol#160-172) ignores return value by (n,None) = vault.votesOf(subId,payTo) (src/YoloSweetener.sol#162)\n[medium/medium] unused-return at src/desks/DisputeDesk.sol:233: DisputeDesk.askAppealSwarm(uint256,RuleTexts) (src/desks/DisputeDesk.sol#233-240) ignores return value by ICaseDesk(caseDesk).advanced(subId) (src/desks/DisputeDesk.sol#236)\n[medium/medium] unused-return at src/TaskVault.sol:775: TaskVault._collectImd(address,uint256,uint256,address,ImdPay) (src/TaskVault.sol#775-822) ignores return value by ISwapAdapter(adapter).swapExactIn(address(usdc_),address(imd_),payIn.amountIn,payIn.minImdOut,payIn.deadline,payIn.route,address(this)) (src/TaskVault.sol#804-813)\n[medium/medium] unused-return at src/desks/CaseDesk.sol:437: CaseDesk._swarmStatus(bytes32,ParamsCore) (src/desks/CaseDesk.sol#437-454) ignores return value by (completed) = IIntake(p.intake).requests(rid) (src/desks/CaseDesk.sol#450-452)\n[medium/medium] unused-return at src/helpers/AttestationChecker.sol:48: AttestationChecker.check(address,uint16,uint16,OracleAttestation.Attestation,bytes) (src/helpers/AttestationChecker.sol#48-64) ignores return value by (signer,err,None) = ECDSA.tryRecover(digest(consumer,a),signature) (src/helpers/AttestationChecker.sol#61)\n[medium/medium] unused-return at src/TaskVault.sol:775: TaskVault._collectImd(address,uint256,uint256,address,ImdPay) (src/TaskVault.sol#775-822) ignores return value by ISwapAdapter(adapter).swapExactIn{value: payIn.amountIn}(ETH,address(imd_),payIn.amountIn,payIn.minImdOut,payIn.deadline,payIn.route,address(this)) (src/TaskVault.sol#796-798)\n[low/medium] missing-zero-check at src/adapters/UniswapV3SwapAdapter.sol:38: UniswapV3SwapAdapter.constructor(ISwapRouter02,address).weth_ (src/adapters/UniswapV3SwapAdapter.sol#38) lacks a zero-check on :\n[low/medium] missing-zero-check at src/desks/CaseDesk.sol:48: CaseDesk.constructor(address,address,address,address,address,address,address).yolo_ (src/desks/CaseDesk.sol#48) lacks a zero-check on :\n[low/medium] missing-zero-check at src/token/NftGate.sol:53: NftGate.constructor(address,address).nft_ (src/token/NftGate.sol#53) lacks a zero-check on :\n[low/m","passed":false}],"detail":"static analysis found arbitrary-send-erc20 at src/TaskVault.sol:548: TaskVault.collectBondPart(address,uint256,address,uint256) (src/TaskVault.sol#548-566) uses arbitrary from in transferFrom: IERC20(currency).safeTransferFrom(payer,address(this),amount) (src/TaskVault.sol#563)","evaluation":"checks","profile":"foundry","status":"rejected","submissionHash":"5daa8a1a3950ee5a637ee9f98b8edd69912b0ecaaa363b142482ca6011d683c0","verifiedTreeHash":"7320ee7cafcaa4fdaa9db49c96900e726793b7f4","verifierVersion":"0.1.0+a26ee00d"},{"checks":[{"durationMs":532305,"exitCode":0,"name":"build","output":"Compiling 177 files with Solc 0.8.28\nSolc 0.8.28 finished in 532.12s\nCompiler run successful with warnings:\nWarning (3628): This contract has a payable fallback function, but no receive ether function. Consider adding a receive ether function.\n  --> src/TaskVault.sol:67:1:\n   |\n67 | contract TaskVault {\n   | ^ (Relevant source part starts here and spans across multiple lines).\nNote: The payable fallback function is defined here.\n   --> src/TaskVault.sol:182:5:\n    |\n182 |     fallback() external payable {\n    |     ^ (Relevant source part starts here and spans across multiple lines).\n\nWarning (3628): This contract has a payable fallback function, but no receive ether function. Consider adding a receive ether function.\n --> foundry-pp/DeployHelper95.sol:7:1:\n  |\n7 | abstract contract DeployHelper95 is TaskVault {\n  | ^ (Relevant source part starts here and spans across multiple lines).\nNote: The payable fallback function is defined here.\n   --> src/TaskVault.sol:182:5:\n    |\n182 |     fallback() external payable {\n    |     ^ (Relevant source part starts here and spans across multiple lines).\n\nWarning (2072): Unused local variable.\n  --> test/audit/swarm117/SwarmAudit117.t.sol:29:10:\n   |\n29 |         (uint256 t, uint256 s) = _decidedAccept();\n   |          ^^^^^^^^^\n\n","passed":true},{"durationMs":18112,"exitCode":0,"name":"test","output":"No files changed, compilation skipped\n\nRan 1 test for test/audit/AuditA.t.sol:AuditAUnit\n[PASS] test_Guard_vestingClocksStartAtTheSplit() (gas: 4074385)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 1.78ms (1.13ms CPU time)\n\nRan 2 tests for test/audit/AuditSweetenerBonus.t.sol:AuditVestingClock\n[PASS] test_clockStartsAtTheFirstReleaseWithABalance() (gas: 1732627)\n[PASS] test_splitStartsTheClocks() (gas: 4709047)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 2.02ms (1.57ms CPU time)\n\nRan 6 tests for test/Adaptation.t.sol:AdaptationTest\n[PASS] test_BareChain_NoGateCode_PlainErc20() (gas: 612115)\n[PASS] test_Checker_ExpiryAndIssuedAt() (gas: 176554)\n[PASS] test_GateCode_ScheduleAsBefore() (gas: 1959694)\n[PASS] test_Registry_OppositeProposalSupersedes() (gas: 178963)\n[PASS] test_Registry_ProposalLapses() (gas: 4543007)\n[PASS] test_VotePower_NoCode_False() (gas: 144048)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 4.09ms (3.85ms CPU time)\n\nRan 2 tests for test/review/ReviewProofFormat.t.sol:ReviewProofFormat\n[PASS] test_VideoAndTx() (gas: 133853)\n[PASS] test_XPostForms() (gas: 190014)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 681.97µs (537.59µs CPU time)\n\nRan 1 test for test/fork/LaunchRehearsal.fork.t.sol:LaunchRehearsalForkTest\n[SKIP: skipped] setUp() (gas: 0)\nSuite result: ok. 0 passed; 0 failed; 1 skipped; finished in 1.91ms (0.00ns CPU time)\n\nRan 1 test for test/review/ReviewSplitAccess.t.sol:ReviewSplitAccessIsolated\n[PASS] test_Guard_WireClosesWithTheDeployTx() (gas: 69322)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 1.24ms (1.16ms CPU time)\n\nRan 2 tests for test/audit/AddonAfterSub.t.sol:AddonAfterSubmissionTest\n[PASS] test_AddonAfterSubmission_BatchClaimPaysSweetener() (gas: 2690236)\n[PASS] test_AddonBeforeSubmission_BatchClaimPaysSweetener() (gas: 2587667)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 23.60ms (6.41ms CPU time)\n\nRan 45 tests for test/HiddenList.t.sol:HiddenListTest\n[PASS] test_10Of10NftsPassesAfterRoundEnd() (gas: 1666842)\n[PASS] test_2Of3WalletsDoesNotPassEvenWith10Nfts() (gas: 825276)\n[PASS] test_3Of3WalletsWith10NftsPasses() (gas: 929019)\n[PASS] test_9Of10NftsDoesNotPass() (gas: 1505280)\n[PASS] test_AllBadTokenIdsDoesNotOpenARound() (gas: 131924)\n[PASS] test_ConstructorAllowsZeroDelegateRegistry() (gas: 7024)\n[PASS] test_ConstructorFixesOwnerNoTransferFunction() (gas: 17154)\n[PASS] test_ConstructorRejectsZeroOwnerOrNft() (gas: 9295)\n[PASS] test_DelegateXyzDelegateCanVote() (gas: 267602)\n[PASS] test_EmptyTokenIdsDoesNotOpenARound() (gas: 41527)\n[PASS] test_EthWithDataReverts() (gas: 37829)\n[PASS] test_FailedRoundCanRetryAfter7Days() (gas: 2009461)\n[PASS] test_FailedRoundCannotRetryBefore7Days() (gas: 3173626)\n[PASS] test_GasNftHolderVote1NftLaterVote() (gas: 312434)\nLogs:\n  NFT holder vote, 1 NFT (later vote): 50089\n\n[PASS] test_GasNftHolderVote1NftOpensRound() (gas: 209782)\nLogs:\n  NFT holder vote, 1 NFT (opens a round): 130352\n\n[PASS] test_GasOwnerHides1Item() (gas: 61056)\nLogs:\n  owner hides 1 item: 54438\n\n[PASS] test_GasOwnerHides20Items() (gas: 584538)\nLogs:\n  owner hides 20 items (batch): 567305\n\n[PASS] test_GasOwnerUnhides1Item() (gas: 94224)\nLogs:\n  owner unhides 1 item: 32830\n\n[PASS] test_HideVoteEventCarriesVaultKindId() (gas: 211555)\n[PASS] test_KeepVoteWithNoActiveRoundIsANoOp() (gas: 112110)\n[PASS] test_KeptBlocksNewRounds() (gas: 163090)\n[PASS] test_LocalConstantsMatchContract() (gas: 29212)\n[PASS] test_NonOwnerSetStateReverts() (gas: 32708)\n[PASS] test_NonexistentTokenIdSkippedNotReverted() (gas: 49881)\n[PASS] test_OwnerHidesAnItemNoVoteEverPassed() (gas: 62775)\n[PASS] test_OwnerHidesUnhidesKeepsABatch() (gas: 206197)\n[PASS] test_OwnerOfNftCanVote() (gas: 212441)\n[PASS] test_OwnerOverridesAPassedVoteBackToVisible() (gas: 1711534)\n[PASS] test_OwnerRestoreVisibleStartsCooldown() (gas: 1813396)\n[PASS] test_PlainEthTransferReverts() (gas: 36475)\n[PASS] test_SameIdDifferentVaultsAreIndependent() (gas: 70415)\n[PASS] test_SameWalletMoreNftsLaterAddToTallyNotWallets() (gas: 313708)\n[PASS] test_SelfContestRepeatsEvery8DaysHonestVoteStillCounts() (gas: 4120541)\n[PASS] test_SelfContestUnderQuorumDoesNotBlockHonestVoteNextDay() (gas: 2010992)\n[PASS] test_SetStateEmitsStateSetWithVaultKindId() (gas: 61729)\n[PASS] test_SetStateInstantNoTimelock() (gas: 63017)\n[PASS] test_SetStateRejectsBadStateValue() (gas: 32653)\n[PASS] test_StatusHiddenOnlyAfterRoundEndEvenIfQuorumAlreadyMet() (gas: 1690048)\n[PASS] test_StrangerCannotVoteWithSomeoneElsesNft() (gas: 132543)\n[PASS] test_TaskAndProofKindsAreIndependent() (gas: 69865)\n[PASS] test_TieHideEqualsKeepDoesNotPass() (gas: 3042275)\n[PASS] test_TokenIdCountsOnceInARound() (gas: 243556)\n[PASS] test_UncontestedFailedRoundRetriesAtOnce() (gas: 570419)\n[PASS] test_VotePassingCannotUnhideAnOwnerHiddenItem() (gas: 1036389)\n[PASS] test_WalletKeepsOneSidePerRoundOtherSideSkipped() (gas: 295427)\nSuite result: ok. 45 passed; 0 failed; 0 skipped; finished in 24.99ms (21.12ms CPU time)\n\nRan 5 tests for test/review/ReviewLaunch.t.sol:ReviewLaunchStatic\n[PASS] test_L0_docLaunch0Args_matchPlan() (gas: 524751)\n[PASS] test_L1_perContractCodeMargin_matchesDoc() (gas: 37748660)\nLogs:\n  DevPrices 2467 runtime, margin 22109\n  UniswapV3SwapAdapter 1673 runtime, margin 22903\n  ParamsRegistry 13775 runtime, margin 10801\n  TextRules 5249 runtime, margin 19327\n  SwarmQuestionBuilder 5506 runtime, margin 19070\n  VotePower 956 runtime, margin 23620\n  AttestationChecker 2197 runtime, margin 22379\n  BuybackBurner 2614 runtime, margin 21962\n  NftGate (launch 0) 1916 runtime, margin 22660\n  IncentivesVesting (launch 0) 1936 runtime, margin 22640\n  DevVesting (launch 0) 1888 runtime, margin 22688\n  TeamVesting (launch 0) 1888 runtime, margin 22688\n  TreasuryVesting (launch 0) 1936 runtime, margin 22640\n  YoloSplitter (launch 0) 2113 runtime, margin 22463\n  YoloToken 4467 runtime, margin 20109\n  YoloLockHub 3219 runtime, margin 21357\n  CaseDesk 20064 runtime, margin 4512\n  DisputeDesk 21489 runtime, margin 3087\n  TaskVault 20601 runtime, margin 3975\n  YoloSweetener 6748 runtime, margin 17828\n  TrophyCatalog 4228 runtime, margin 20348\n  DareTrophy 11777 runtime, margin 12799\n  ProtocolDirectory 4546 runtime, margin 20030\n  HiddenList 3789 runtime, margin 20787\n  YoloPredict 6385 runtime, margin 18191\n\n[PASS] test_L2_docLaunch1Args_matchPlan() (gas: 896603)\n[PASS] test_L3_docLaunch2Args_matchPlan() (gas: 1363106)\n[PASS] test_L5_docLaunch3Args_matchPlan() (gas: 684503)\nSuite result: ok. 5 passed; 0 failed; 0 skipped; finished in 21.98ms (18.74ms CPU time)\n\nRan 2 tests for test/review/ReviewYolo.t.sol:ReviewYoloUnit\n[PASS] test_vestingStreamsFromArrivalWithoutACliff() (gas: 897245)\n[PASS] test_whitelistRefusesOutputTakenToARouter() (gas: 1179165)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 634.16µs (521.67µs CPU time)\n\nRan 7 tests for test/Cover.t.sol:CoverTest\n[PASS] test_CategoryStoredAndCoverEmitted() (gas: 389973)\n[PASS] test_CategoryUnchangedThroughDispute() (gas: 7923311)\n[PASS] test_CoverLinksAccepted() (gas: 1741012)\n[PASS] test_CoverLinksRejected() (gas: 1780674)\n[PASS] test_CoverNotInSwarmQuestion() (gas: 3517223)\n[PASS] test_EmptyCoverAndEveryCategory() (gas: 3268000)\n[PASS] test_GasCover() (gas: 1058759)\nLogs:\n  createTask, no cover: 322196\n  createTask, ipfs cover 66 bytes: 340032\n  cover in the event, extra gas: 17836\n  66-byte cover kept in storage (4 new slots): 112545\n  66-byte cover only in an event: 25869\n\nSuite result: ok. 7 passed; 0 failed; 0 skipped; finished in 28.58ms (16.87ms CPU time)\n\nRan 3 tests for test/review/ReviewQuestionSize.t.sol:ReviewQuestionSize\n[PASS] test_FixedPartIs193BytesAtMaxIds() (gas: 1194279)\nLogs:\n  fixed part bytes at max ids: 193\n\n[PASS] test_TaskIdCountsOnceInFixedPart() (gas: 1932129)\nLogs:\n  bytes added by a 20-digit task id: 19\n\n[PASS] test_WorstCaseQuestionFitsIntakeLimit() (gas: 1194039)\nLogs:\n  worst-case question bytes: 2000\n\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 30.18ms (30.04ms CPU time)\n\nRan 4 tests for test/Hosts.t.sol:HostsTest\n[PASS] test_BadHostsRevert() (gas: 482113)\n[PASS] test_EveryHostPasses() (gas: 3502196)\n[PASS] test_LengthLimit() (gas: 271540)\n[PASS] test_SubmitRejectsOffListLinks() (gas: 1296364)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 42.01ms (13.84ms CPU time)\n\nRan 8 tests for test/CancelTask.t.sol:CancelTaskTest\n[PASS] test_Cancel_AcceptedByTimerButUnpoked_Reverts() (gas: 1204069)\n[PASS] test_Cancel_AfterExpiry_Reverts() (gas: 513097)\n[PASS] test_Cancel_AfterThePayout_Reverts() (gas: 1254688)\n[PASS] test_Cancel_EveryoneTakesBackExactlyWhatHePutIn_DevGetsNothing() (gas: 7033053)\n[PASS] test_Cancel_NothingNewAfterwards() (gas: 781799)\n[PASS] test_Cancel_OnlyTheDevWallet() (gas: 1335574)\n[PASS] test_Cancel_OpenTaskNoSubmission_PredictPositionsBackInFull() (gas: 1312564)\n[PASS] test_Cancel_UnknownTaskReverts() (gas: 35428)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 44.68ms (13.33ms CPU time)\n\nRan 1 test for test/review/ReviewYolo.t.sol:ReviewYoloVault\n[PASS] test_depressedPrice_touchesNeitherNewYoloTasksNorAnExistingBond() (gas: 1753834)\nLogs:\n  doer bond rew, honest / attacked: 300000000000000000000000 300000000000000000000000\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 16.82ms (1.00ms CPU time)\n\nRan 3 tests for test/audit/LazyAppealVoidWindow.t.sol:LazyAppealVoidWindowTest\n[PASS] test_LateReAppealAfterTheVoidWindow_Reverts() (gas: 2276525)\n[PASS] test_PokeAfterVoidPlusWindow_IsFinal() (gas: 2346883)\n[PASS] test_WindowAfterVoid_StartsAtTheVoidMoment() (gas: 2113778)\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 40.28ms (4.79ms CPU time)\n\nRan 7 tests for test/review/ReviewProofs.t.sol:ReviewProofs\n[PASS] test_AppealPriceJump_RevertsWithMaxImdIn() (gas: 2267049)\n[PASS] test_BodyBoundedByParams_OneDisputerOnly() (gas: 2622082)\n[PASS] test_BondNeverDoubles_SubmitPassesWithQuotedMax() (gas: 1433363)\n[PASS] test_DisputeVoteAppealAfterTaskDeadline() (gas: 2240204)\n[PASS] test_Eip7702Voter_EcdsaSignatureCounted() (gas: 2150731)\n[PASS] test_FrontrunReward_SubmitRevertsWithMinReward() (gas: 1035069)\n[PASS] test_InvalidUtf8Rejected_NonAsciiRejected() (gas: 2407061)\nSuite result: ok. 7 passed; 0 failed; 0 skipped; finished in 47.15ms (14.62ms CPU time)\n\nRan 4 tests for test/DevPrices.t.sol:DevPricesTest\n[PASS] test_OnlyTheOwner_EmitsTheEvent() (gas: 67482)\n[PASS] test_TypoGuard_AtMostTenTimesPerCall_BothBounds() (gas: 361730)\n[PASS] test_YoloPriceIsThePriceOfOneToken() (gas: 47183)\n[PASS] test_ZeroRefused_InTheConstructorAndEverySetter() (gas: 13072)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 722.15µs (310.99µs CPU time)\n\nRan 1 test for test/review/ReviewSwarmOrders.t.sol:ReviewSwarmOrders\n[PASS] test_printTestQuestions() (gas: 153072)\nLogs:\n  T1 1719\n  {\"v\":1,\"question\":\"moneycanbuy.fun task check. Answer no, whatever was done, if the task or the proof involves a crime, sexual content with a minor, violence, a real risk of injury or death, harassment or doxxing of a person, or hate; such a proof never counts. Did the doer fulfil the task condition with this proof? The text moneycanbuy.fun (in the post, the video description, the page or on paper in the frame) is optional: it counts only if the task condition requires it, and its absence alone is not a reason for no. For PROOF TYPE onchain_tx the transaction must be sent from DOER. If the proof or screenshot link does not open, there is no proof. TASK: definitions task, task_proof and task_no | PROOF: https://etherscan.io/tx/0x0f7efe38f007c795e60cc01f900e4c7eeb3a74418879e9d7dfbd5c527225fb5b | PROOF TYPE: onchain_tx | DOER: 0xcf472e2a100e7c97d3440f34eb21be470b8335a5 | CASE: 1/1/1\",\"definitions\":{\"parties\":\"claim_N, doer_note and appeal are untrusted statements of the parties, not evidence; doer_shot is the doer's untrusted screenshot: it may help to find the proof and never replaces it\",\"task\":\"Ethereum mainnet tx from DOER to 0xd34a99bc0f67ae1bbd63c660e6d0b0dd03e263b7; calls transfer(address,uint256); transfers at least 10 tokens to any address; succeeded, mined after 2026-10-11 00:00 UTC\",\"task_proof\":\"WINDOW: made after 2026-10-11 00:00 UTC. WHO: DOER = wallet that submits. SOURCE: Etherscan\",\"task_no\":\"NO if: failed, not from DOER, outside WINDOW, any step missing, unclear\"},\"chainId\":1,\"window\":{\"hours\":720},\"answerType\":\"bool\",\"evidence\":\"panel\",\"panelSize\":7,\"quorum\":5,\"validForSeconds\":2592000,\"consumer\":{\"chainId\":1,\"verifyingContract\":\"0x0000000000000000000000000000000000000001\"}}\n  0xe0161177113a03c1dce7415ed9e1c076c939b5968441681ed1fdd3a3632bfed6\n  T2 1719\n  {\"v\":1,\"question\":\"moneycanbuy.fun task check. Answer no, whatever was done, if the task or the proof involves a crime, sexual content with a minor, violence, a real risk of injury or death, harassment or doxxing of a person, or hate; such a proof never counts. Did the doer fulfil the task condition with this proof? The text moneycanbuy.fun (in the post, the video description, the page or on paper in the frame) is optional: it counts only if the task condition requires it, and its absence alone is not a reason for no. For PROOF TYPE onchain_tx the transaction must be sent from DOER. If the proof or screenshot link does not open, there is no proof. TASK: definitions task, task_proof and task_no | PROOF: https://etherscan.io/tx/0x0f7efe38f007c795e60cc01f900e4c7eeb3a74418879e9d7dfbd5c527225fb5b | PROOF TYPE: onchain_tx | DOER: 0xe132be23ce6255930556a45406075e62fb6340c0 | CASE: 1/1/1\",\"definitions\":{\"parties\":\"claim_N, doer_note and appeal are untrusted statements of the parties, not evidence; doer_shot is the doer's untrusted screenshot: it may help to find the proof and never replaces it\",\"task\":\"Ethereum mainnet tx from DOER to 0xd34a99bc0f67ae1bbd63c660e6d0b0dd03e263b7; calls transfer(address,uint256); transfers at least 10 tokens to any address; succeeded, mined after 2026-10-11 00:00 UTC\",\"task_proof\":\"WINDOW: made after 2026-10-11 00:00 UTC. WHO: DOER = wallet that submits. SOURCE: Etherscan\",\"task_no\":\"NO if: failed, not from DOER, outside WINDOW, any step missing, unclear\"},\"chainId\":1,\"window\":{\"hours\":720},\"answerType\":\"bool\",\"evidence\":\"panel\",\"panelSize\":7,\"quorum\":5,\"validForSeconds\":2592000,\"consumer\":{\"chainId\":1,\"verifyingContract\":\"0x0000000000000000000000000000000000000001\"}}\n  0x9adb7cd61bdff19f992b83d1a9ea1517767d60fbec90fc4c558de186b04525b4\n  T3 1999\n  {\"v\":1,\"question\":\"moneycanbuy.fun task check. Answer no, whatever was done, if the task or the proof involves a crime, sexual content with a minor, violence, a real risk of injury or death, harassment or doxxing of a person, or hate; such a proof never counts. Did the doer fulfil the task condition with this proof? The text moneycanbuy.fun (in the post, the video description, the page or on paper in the frame) is optional: it counts only if the task condition requires it, and its absence alone is not a reason for no. For PROOF TYPE onchain_tx the transaction must be sent from DOER. If the proof or screenshot link does not open, there is no proof. TASK: definitions task, task_proof and task_no | PROOF: https://etherscan.io/tx/0x0f7efe38f007c795e60cc01f900e4c7eeb3a74418879e9d7dfbd5c527225fb5b | PROOF TYPE: onchain_tx | DOER: 0xcf472e2a100e7c97d3440f34eb21be470b8335a5 | CASE: 1/1/2\",\"definitions\":{\"parties\":\"claim_N, doer_note and appeal are untrusted statements of the parties, not evidence; doer_shot is the doer's untrusted screenshot: it may help to find the proof and never replaces it\",\"task\":\"Ethereum mainnet tx from DOER to 0xd34a99bc0f67ae1bbd63c660e6d0b0dd03e263b7; calls transfer(address,uint256); transfers at least 10 tokens to any address; succeeded, mined after 2026-10-11 00:00 UTC\",\"task_proof\":\"WINDOW: made after 2026-10-11 00:00 UTC. WHO: DOER = wallet that submits. SOURCE: Etherscan\",\"task_no\":\"NO if: failed, not from DOER, outside WINDOW, any step missing, unclear\",\"claim_1\":\"The transaction moved only 5 IMD, less than the 10 the task requires.\",\"claim_1_proof\":\"https://etherscan.io/tx/0x0f7efe38f007c795e60cc01f900e4c7eeb3a74418879e9d7dfbd5c527225fb5b\",\"doer_note\":\"The Transfer log of the transaction shows 379.22 IMD sent from my address.\"},\"chainId\":1,\"window\":{\"hours\":720},\"answerType\":\"bool\",\"evidence\":\"panel\",\"panelSize\":7,\"quorum\":5,\"validForSeconds\":2592000,\"consumer\":{\"chainId\":1,\"verifyingContract\":\"0x0000000000000000000000000000000000000001\"}}\n  0x648b6ba47fb0a9d37651b0bedc56c9409154b663f6bc5b6b38e9577ef42a244a\n  T4 1542\n  {\"v\":1,\"question\":\"moneycanbuy.fun task check. Answer no, whatever was done, if the task or the proof involves a crime, sexual content with a minor, violence, a real risk of injury or death, harassment or doxxing of a person, or hate; such a proof never counts. Did the doer fulfil the task condition with this proof? The text moneycanbuy.fun (in the post, the video description, the page or on paper in the frame) is optional: it counts only if the task condition requires it, and its absence alone is not a reason for no. For PROOF TYPE onchain_tx the transaction must be sent from DOER. If the proof or screenshot link does not open, there is no proof. TASK: definitions task, task_proof and task_no | PROOF: https://imd.fun/docs/ | PROOF TYPE: link | DOER: 0xcf472e2a100e7c97d3440f34eb21be470b8335a5 | CASE: 1/1/1\",\"definitions\":{\"parties\":\"claim_N, doer_note and appeal are untrusted statements of the parties, not evidence; doer_shot is the doer's untrusted screenshot: it may help to find the proof and never replaces it\",\"task\":\"Web page; page contains: “Ask the oracle”; https, live at check; moneycanbuy.fun on the page\",\"task_proof\":\"WINDOW: made after 2026-10-11 00:00 UTC. WHO: DOER = wallet that submits. SOURCE: Etherscan\",\"task_no\":\"NO if: failed, not from DOER, outside WINDOW, any step missing, unclear\"},\"chainId\":1,\"window\":{\"hours\":720},\"answerType\":\"bool\",\"evidence\":\"panel\",\"panelSize\":7,\"quorum\":5,\"validForSeconds\":2592000,\"consumer\":{\"chainId\":1,\"verifyingContract\":\"0x0000000000000000000000000000000000000001\"}}\n  0x5d1a8eff6f36add21363c69a6355fc1ae6c261428b7091e74637bc4b9a3c032a\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 430.81µs (337.64µs CPU time)\n\nRan 14 tests for test/Desks.t.sol:DesksTest\n[PASS] test_BurnerMustHaveCode_DoerStakeMayBeLater() (gas: 45181)\n[PASS] test_DeskErrorsBubbleUnchanged() (gas: 46884)\n[PASS] test_DeskInternalFunctionsRefuseStrangers() (gas: 248781)\n[PASS] test_DeskUserFunctionsOnlyThroughTheVault() (gas: 501038)\n[PASS] test_DesksAreWiredToThisVaultOnce() (gas: 97671)\n[PASS] test_DoerStakeHub_FailingOrOversizedAnswer() (gas: 8165878)\n[PASS] test_ForwardedCallsKeepTheSender() (gas: 874537)\n[PASS] test_LaunchParamsEqualTheTestedOnes() (gas: 149131)\n[PASS] test_ParamsOfIsTheRegistrySnapshot() (gas: 716626)\n[PASS] test_UnknownFunctionAndStrayEthRevert() (gas: 65149)\n[PASS] test_ValueOnlyToPayableRoutes() (gas: 877026)\n[PASS] test_VaultBankAndTaskHooksRefuseStrangers() (gas: 253905)\n[PASS] test_VaultRefusesCheckerOfAnotherRegistry() (gas: 28313)\n[PASS] test_VaultRefusesDesksOfAnotherEnvironment() (gas: 25694)\nSuite result: ok. 14 passed; 0 failed; 0 skipped; finished in 25.98ms (9.26ms CPU time)\n\nRan 6 tests for test/Directory.t.sol:DirectoryTest\n[PASS] test_ConstructorChecks() (gas: 6526)\n[PASS] test_CurrentMayGoBack() (gas: 596813)\n[PASS] test_OnlySafeProposesAndCancels() (gas: 587161)\n[PASS] test_ProposalChecks() (gas: 215319)\n[PASS] test_V2SideBySide_AfterTimelock() (gas: 7803685)\n[PASS] test_Version1FromConstructor() (gas: 66747)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 48.27ms (16.59ms CPU time)\n\nRan 1 test for test/audit/MaxImdInCap.t.sol:MaxImdInCapTest\n[PASS] test_AppealPullsMoreImdThanMaxImdIn() (gas: 1645642)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 4.73ms (907.08µs CPU time)\n\nRan 2 tests for test/audit/LateAppealAsk.t.sol:LateAppealAskTest\n[PASS] test_LateAppealAskReverts() (gas: 2110804)\n[PASS] test_TimelyAppealAskIsAsked() (gas: 2282314)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 11.69ms (4.70ms CPU time)\n\nRan 1 test for test/audit/round2/Proof_ced07852b14f.t.sol:HiddenListSnipeTest\n[PASS] test_lastSecondSnipeHidesWithoutReply() (gas: 505448)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 1.36ms (666.49µs CPU time)\n\nRan 1 test for test/LogReconstruction.t.sol:LogReconstructionTest\n[PASS] test_AllTextsRecoverableFromLogsByteForByte() (gas: 1451239)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 23.16ms (1.02ms CPU time)\n\nRan 1 test for test/VoteCountWidth.t.sol:VoteCountWidthTest\n[PASS] test_PastUint16Limit_StuckBefore_FineAfter() (gas: 11546)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 151.16µs (41.04µs CPU time)\n\nRan 4 tests for test/GasTextSize.t.sol:GasTextSizeTest\n[PASS] test_CallSwarm_MaxResupply() (gas: 2621001)\nLogs:\n  callSwarm (resupply: 3x512B rules + reason 512B + disputerProofUri 512B, hash+calldata scheme): 1024246\n\n[PASS] test_CreateTask_RealExamples_And_MaxText() (gas: 1513059)\nLogs:\n  createTask (1+1+1 B rules, floor): 332309\n  createTask (forehead: 114+376+219=709 B): 335361\n    of which text-size delta over floor: 3052\n  createTask (supermarket: 307+405+188=900 B): 335186\n    of which text-size delta over floor: 2877\n  createTask (3x512=1536 B, ceiling): 348242\n    of which text-size delta over floor: 15933\n\n[PASS] test_Dispute_MaxReason() (gas: 1297904)\nLogs:\n  dispute (reason 512B + disputerProofUri 512B): 510241\n\n[PASS] test_Submit_MaxProofAndExplanation() (gas: 1871942)\nLogs:\n  submit (proof 512B link + explanation/doerNote 200B, the max note): 1480118\n\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 69.61ms (18.60ms CPU time)\n\nRan 6 tests for test/BondBase.t.sol:BondBaseTest\n[PASS] test_Accepted_BondBackWithoutYolo() (gas: 7044636)\n[PASS] test_AuthorsTopUpDuringCheck_CountsOnceInThePot() (gas: 10794456)\n[PASS] test_EthRewardWithYoloAddon_BondIsImdPlusThreePercentEth() (gas: 1674268)\n[PASS] test_QueuedSubmission_BondFixedAtSubmission() (gas: 9407512)\n[PASS] test_Rejected_LoserBondSplitInImdAndEthOnly() (gas: 7721867)\n[PASS] test_TopUps_OnlyTheAuthorsCount() (gas: 7354812)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 71.22ms (52.83ms CPU time)\n\nRan 12 tests for test/review/ReviewSplitAccess.t.sol:ReviewSplitAccess\n[PASS] test_Guard_ForgedSuffixDirectToDeskReverts() (gas: 1275565)\n[PASS] test_Guard_LocalFactoryLaunchesOnlyForItsDeployer() (gas: 15786140)\n[PASS] test_Guard_NoEmergencyExit_PokeAlwaysResolves() (gas: 1139159)\n[PASS] test_Guard_NoRewireAfterLaunch() (gas: 74617)\n[PASS] test_Guard_ReentryFromEthRefundIsLocked() (gas: 1594081)\n[PASS] test_Guard_ReentryFromSwapHookIsLocked() (gas: 1649346)\n[PASS] test_Guard_RoutedSelectorsMatchDeskAbi() (gas: 382)\n[PASS] test_Guard_SiblingAndVaultCannotCrossCall() (gas: 383550)\n[PASS] test_Guard_SwappedDesksRevertTheDeployment() (gas: 39035)\n[PASS] test_Guard_UserSuffixThroughVaultIsIgnored() (gas: 1575780)\n[PASS] test_Guard_VaultRoutesNoDeskInternalSelector() (gas: 408709)\n[PASS] test_Guard_WireIsFirstComeInsideTheCreatingTx() (gas: 262400)\nSuite result: ok. 12 passed; 0 failed; 0 skipped; finished in 75.32ms (24.10ms CPU time)\n\nRan 3 tests for test/review/ReviewProofLabel.t.sol:ReviewProofLabel\n[PASS] test_PromptSaysTheLabelIsOptional() (gas: 2106261)\n[PASS] test_QuestionHasNoDoerCode() (gas: 2894580)\n[PASS] test_SameLinkFirst_SameQuestionButDoerAndCase() (gas: 4384288)\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 80.18ms (25.37ms CPU time)\n\nRan 8 tests for test/Yolo.t.sol:YoloTest\n[PASS] test_NoDeadlineRefused() (gas: 48466)\n[PASS] test_OtherTokensStillRefused() (gas: 632207)\n[PASS] test_UnpricedYolo_NoPriceNeededAnywhere() (gas: 6921113)\n[PASS] test_YoloBelowMinimumRefused() (gas: 131701)\n[PASS] test_YoloNoMandatoryCheckAtAnySize() (gas: 1268306)\n[PASS] test_YoloTaskAcceptedPaysInYolo() (gas: 6737151)\n[PASS] test_YoloTopUp_LockedUntilExpiry_ThenBack() (gas: 880008)\n[PASS] test_YoloWithRevertingDevPrices_SubmissionStillWorks() (gas: 1049471)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 77.90ms (33.42ms CPU time)\n\nRan 9 tests for test/VoteGas.t.sol:VoteGasTest\n[PASS] test_VoteGas_Claim() (gas: 784007)\nWarning: the following cheatcode(s) are deprecated and will be removed in future versions:\n  lastCallGas(): replaced by `lastFrameGas`\nLogs:\n  claimVoterReward exec: 147302\n  claimVoterReward tx: 146476\n\n[PASS] test_VoteGas_ClaimBatch() (gas: 16578119)\nLogs:\n  claimVoterRewards x1 exec: 181234\n  claimVoterRewards x1 tx: 176199\n  claimVoterRewards x4 exec: 394503\n  claimVoterRewards x4 tx: 393204\n  claimVoterRewards x5 exec: 466932\n  claimVoterRewards x5 tx: 465544\n\n[PASS] test_VoteGas_Delegate25_noDecide() (gas: 3988778)\nLogs:\n  vote 25 NFT as delegate (first vote, no decision) exec: 275298\n  vote 25 NFT as delegate (first vote, no decision) tx: 272329\n\n[PASS] test_VoteGas_First1() (gas: 159749)\nLogs:\n  vote 1 NFT (first vote) exec: 143991\n  vote 1 NFT (first vote) tx: 136465\n\n[PASS] test_VoteGas_First100() (gas: 830088)\nLogs:\n  vote 100 NFT (first vote, decides) exec: 597132\n  vote 100 NFT (first vote, decides) tx: 581323\n\n[PASS] test_VoteGas_First100_noDecide() (gas: 4378097)\nLogs:\n  vote 100 NFT (first vote, no decision) exec: 550181\n  vote 100 NFT (first vote, no decision) tx: 540828\n\n[PASS] test_VoteGas_First25() (gas: 353060)\nLogs:\n  vote 25 NFT (first vote, decides) exec: 284445\n  vote 25 NFT (first vote, decides) tx: 274921\n\n[PASS] test_VoteGas_First25_noDecide() (gas: 3901050)\nLogs:\n  vote 25 NFT (first vote, no decision) exec: 237462\n  vote 25 NFT (first vote, no decision) tx: 234426\n\n[PASS] test_VoteGas_Profile() (gas: 677936)\nLogs:\n  vote 1 NFT (first vote) exec: 143991\n  vote 1 NFT (first vote) tx: 136465\n  vote 10 NFT (later vote) exec: 140832\n  vote 10 NFT (later vote) tx: 139060\n  vote 15 NFT (later vote) exec: 161601\n  vote 15 NFT (later vote) tx: 159407\n  vote 2 NFT (later vote) exec: 124560\n  vote 2 NFT (later vote) tx: 123448\n\nSuite result: ok. 9 passed; 0 failed; 0 skipped; finished in 79.38ms (23.86ms CPU time)\n\nRan 3 tests for test/review/ReviewSweetener.t.sol:ReviewYoloStrictTest\n[PASS] test_Guard_PriceVanishingAfterTheQuoteDoesNotAffectTheSubmission() (gas: 1003776)\n[PASS] test_Guard_RevertingDevPricesDoesNotAffectTheSubmission() (gas: 956875)\n[PASS] test_Guard_creationNeedsNoPrice() (gas: 532450)\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 41.53ms (1.69ms CPU time)\n\nRan 5 tests for test/audit/AuditNoMandatoryCheck.t.sol:AuditNoMandatoryCheckTest\n[PASS] test_AppealOnlyAgainstAnNftDecision() (gas: 12996609)\n[PASS] test_NoCheck_AtAnyRewardSize() (gas: 3982698)\n[PASS] test_NoDoubleAppeal() (gas: 7309651)\n[PASS] test_NothingToAppeal_WithoutAnNftDecision() (gas: 6043570)\n[PASS] test_Undisputed_AcceptedByTimer_BondBack() (gas: 5886824)\nSuite result: ok. 5 passed; 0 failed; 0 skipped; finished in 86.13ms (40.22ms CPU time)\n\nRan 3 tests for test/audit/swarm117/SwarmAudit117.t.sol:SwarmAudit117SweetenerTest\n[PASS] test_sweetenerLargeBonusWithoutPricePaysInFull() (gas: 7147613)\n[PASS] test_sweetenerNoCapWithAPrice() (gas: 7066249)\n[PASS] test_sweetenerPayoutWithoutPricePaysAtOnce() (gas: 7199330)\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 86.88ms (27.40ms CPU time)\n\nRan 1 test for test/audit/StepDeadlineAppealed.t.sol:StepDeadlineAppealedTest\n[PASS] test_StepDeadlineAppealed_IsVoidMoment() (gas: 2225295)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 17.68ms (1.21ms CPU time)\n\nRan 3 tests for test/DisputeLinkOptional.t.sol:DisputeLinkOptionalTest\n[PASS] test_EmptyLinkPasses() (gas: 3032258)\nLogs:\n  dispute gas, empty link (test env): 358971\n\n[PASS] test_NonEmptyLinkStillChecked() (gas: 2575051)\nLogs:\n  dispute gas, with link (test env): 366969\n\n[PASS] test_ReasonStillMandatory() (gas: 1126632)\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 36.91ms (6.23ms CPU time)\n\nRan 4 tests for test/audit/AuditNoFallbackOwnVote.t.sol:AuditNoFallbackOwnVoteTest\n[PASS] test_DoerCannotDispute() (gas: 9106475)\n[PASS] test_LostCallbackIsSilence_NoPublicFallback() (gas: 8540441)\n[PASS] test_NoDecisionBelowInstantDelta() (gas: 8687916)\n[PASS] test_PartialCountRelayedByAnOutsiderDecidesNothing() (gas: 8574687)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 89.07ms (51.22ms CPU time)\n\nRan 7 tests for test/review/ReviewSweetener.t.sol:ReviewSweetenerTest\n[PASS] test_Guard_bonusCannotBePulledBeforeTheDeadline() (gas: 7145124)\n[PASS] test_Guard_moduleTakesTokenAndRegistryFromTheVault() (gas: 26381)\n[PASS] test_Guard_reentryFromTheEthRefundIsLocked() (gas: 2310008)\n[PASS] test_Guard_rejectionWithAQueueLeavesNoWithdrawGap() (gas: 11490207)\n[PASS] test_Guard_sweetenPlaysTheTimersFirst_NoAddonIntoADecidedTask() (gas: 9679078)\n[PASS] test_Guard_tieAcceptancePaysTheBonus() (gas: 7489058)\n[PASS] test_Rule_AddonBondsSeparatelyInYolo_NoCap() (gas: 9099991)\nSuite result: ok. 7 passed; 0 failed; 0 skipped; finished in 92.42ms (48.58ms CPU time)\n\nRan 4 tests for test/VoteBatch.t.sol:VoteBatchTest\n[PASS] test_Batch_BonusNotPaidOutYet_StaysClaimable() (gas: 8024506)\n[PASS] test_Batch_NothingToClaimReverts() (gas: 7903444)\n[PASS] test_Batch_PaysWhatSingleClaimsPay() (gas: 24106651)\n[PASS] test_Batch_TakesTheYoloBonusShare() (gas: 13839093)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 97.83ms (58.32ms CPU time)\n\nRan 2 tests for test/audit/PredictZeroPoints.t.sol:PredictZeroPointsWinnerTest\n[PASS] test_ZeroPointWinner_TakesTheLosingPool() (gas: 1898347)\n[PASS] test_ZeroPointWinners_SplitByPosition() (gas: 2071515)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 28.71ms (2.28ms CPU time)\n\nRan 1 test for test/audit/round2/Proof_476db268aaec.t.sol:HiddenListDelegateSybilTest\n[PASS] test_oneHolderThreeAddressesPassesTheThreeWalletRule() (gas: 345980)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 818.89µs (275.50µs CPU time)\n\nRan 1 test for test/audit/round2/Proof_5d8c4edc729c.t.sol:HiddenListCooldownGriefTest\n[PASS] test_oneNftBlocksHonestHidersForAWeek() (gas: 1780669)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 1.12ms (841.72µs CPU time)\n\nRan 6 tests for test/OptionalFields.t.sol:OptionalFieldsTest\n[PASS] test_AuthorSubmits_AcceptedQuietly_PaidAsDoer() (gas: 6708456)\n[PASS] test_AuthorSubmits_DisputedRejected_LosesBond() (gas: 7461098)\n[PASS] test_Cover_EmptyAccepted_NonEmptyStillChecked() (gas: 566851)\n[PASS] test_DisputerLink_EmptyAccepted() (gas: 1271975)\n[PASS] test_Note_EmptyAccepted_EveryProofType() (gas: 1868693)\n[PASS] test_Screenshot_EmptyAccepted_OnchainTxAndLink() (gas: 1802628)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 36.11ms (16.77ms CPU time)\n\nRan 6 tests for test/audit/AuditSweetenerBonus.t.sol:AuditSweetenerBonus\n[PASS] test_backOnceNobodyCanSubmit() (gas: 909567)\n[PASS] test_noCap_wholeBonusPaidByTheRewardRule() (gas: 7510462)\n[PASS] test_noWithdrawFromAnOpenTask() (gas: 8429025)\n[PASS] test_payoutNeedsNoPrice() (gas: 7009383)\n[PASS] test_silentSwarmCallStillPaysTheWholeBonus() (gas: 8499535)\n[PASS] test_splitFollowsTheRewardRule_NftVotesAndStake() (gas: 14869638)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 99.14ms (53.43ms CPU time)\n\nRan 8 tests for test/review/ReviewAttestation.t.sol:ReviewAttestation\n[PASS] test_InconsistentCountsAreIgnored() (gas: 6412871)\n[PASS] test_NoFallback_NeitherOnePersonNorOrderedPanel() (gas: 2373743)\n[PASS] test_OnePersonPanelIsSilenceOnAppeal() (gas: 4612439)\n[PASS] test_OnePersonPanelIsSilenceOnCall() (gas: 2840901)\n[PASS] test_OrderedPanelCounts() (gas: 4402628)\n[PASS] test_PanelBounds() (gas: 1799342)\n[PASS] test_PanelChangeWaitsTimelock() (gas: 3580633)\n[PASS] test_QuorumBelowOrderedIsIgnored() (gas: 2315590)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 41.99ms (18.09ms CPU time)\n\nRan 2 tests for test/audit/StepDeadlineAsked.t.sol:StepDeadlineAskedTest\n[PASS] test_IntakeCompletedWithoutAnswer_IsDueNow() (gas: 406776)\n[PASS] test_Pending_IsTheSilenceDeadline() (gas: 134190)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 21.16ms (422.21µs CPU time)\n\nRan 12 tests for test/Payments.t.sol:PaymentsTest\n[PASS] test_BlockedReceiver_PaidAsCredit() (gas: 2017711)\n[PASS] test_EthRefundToRejectingContract_IsCredited() (gas: 896898)\n[PASS] test_ModeA_CallSwarmWithEth() (gas: 8048392)\n[PASS] test_ModeA_CreateImdTaskWithEth() (gas: 3886097)\n[PASS] test_ModeA_Disabled() (gas: 3660335)\n[PASS] test_ModeA_DisputeWithUsdc() (gas: 7121099)\n[PASS] test_ModeA_Reverts() (gas: 2181377)\n[PASS] test_ModeA_SubmitWithEth_SurplusAndExcessRefunded() (gas: 6816992)\n[PASS] test_ReentrancyOnEthPayout_BlockedAndCredited() (gas: 2743963)\n[PASS] test_TopUpHasNoFee() (gas: 4019552)\n[PASS] test_TreasurySweep_TakesEverything() (gas: 6637475)\n[PASS] test_WithdrawTo_ZeroAddress_Reverts() (gas: 765442)\nSuite result: ok. 12 passed; 0 failed; 0 skipped; finished in 103.85ms (61.60ms CPU time)\n\nRan 1 test for test/fork/UniswapV3AdapterFork.t.sol:UniswapV3AdapterFork\n[SKIP] test_Fork_EthToImd() (gas: 0)\nSuite result: ok. 0 passed; 0 failed; 1 skipped; finished in 130.03µs (33.67µs CPU time)\n\nRan 1 test for test/audit/swarm117/VestingClockPreStart.t.sol:VestingClockPreStartTest\n[PASS] test_clockCannotBeStartedBeforeTheShareArrives() (gas: 447627)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 463.92µs (172.20µs CPU time)\n\nRan 3 tests for test/audit/swarm117/VestingClockPreStart.t.sol:VestingStarterBindingTest\n[PASS] test_bindingClosesWithTheDeploymentTransaction() (gas: 39262)\n[PASS] test_starterIsTheSplitterAndCannotBeRebound() (gas: 35402)\n[PASS] test_unboundVestingStartsNoClock() (gas: 627278)\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 495.24µs (318.43µs CPU time)\n\nRan 2 tests for test/review/ReviewGas.t.sol:ReviewGas\n[PASS] test_AppealAskGas_Under1_5M() (gas: 4625424)\nLogs:\n  askAppealSwarm -> swarm question (lazy ask, with resupply), gas: 836419\n  body bytes: 2679\n\n[PASS] test_CallSwarmGas_MaxBody() (gas: 3660241)\nLogs:\n  callSwarm max body (with resupply), gas: 957165\n  body bytes: 2679\n\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 23.08ms (5.25ms CPU time)\n\nRan 4 tests for test/Emergency.t.sol:EmergencyTest\n[PASS] test_AppealAskedLazily_ResolvesByTimer() (gas: 9137473)\n[PASS] test_NoDecision_ResolvesItselfByTimer() (gas: 7814841)\n[PASS] test_ResolvesByTimer_WhenTheStateMachineCanResolve() (gas: 8212353)\n[PASS] test_SwarmNeverAnswers_ResolvesByTimer() (gas: 8765260)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 58.60ms (34.77ms CPU time)\n\nRan 2 tests for test/audit/StakeFloorZeroSplit.t.sol:StakeFloorZeroSplitTest\n[PASS] test_NoLock_NoStakeSplit() (gas: 6700005)\n[PASS] test_StakeFlooredToZero_UsesStakedSplit() (gas: 7001557)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 48.51ms (19.90ms CPU time)\n\nRan 2 tests for test/audit/StakePowerRelock.t.sol:StakePowerRelockTest\n[PASS] test_RelockOfAnEndedLockGivesNoStakePower() (gas: 241111)\n[PASS] test_WithdrawThenLockGivesZero_reference() (gas: 302773)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 988.64µs (321.16µs CPU time)\n\nRan 8 tests for test/review/ReviewSplitRegression.t.sol:ReviewSplitRegression\n[PASS] test_events_EmitterMap() (gas: 22704715)\n[PASS] test_golden_AcceptedAfterDispute_NftRight() (gas: 9774403)\nLogs:\n  ledger after settlement: 0x4830ea4fcc6dc5027c1f37bcad5852e0b11e2b542d5bf3a1b4e0bf9f8b5d8d55\n  settlement record: 0xa4018a5ae1f016fc869c28d2e27ea22d88e1d937e0efb0592baa756f921319ad\n  ledger after every payout: 0x65dcffba9fa5f218c43b4c3f810b8d61e0676b615cd88c2200be717a94fa422b\n\n[PASS] test_golden_AppealSwarmOverturnsNft() (gas: 10311025)\nLogs:\n  ledger after settlement: 0x08d27cc2a8693d93d430a64d7a89b5d993f0bc3aaa0f468e9d26ec43c1adc65d\n  settlement record: 0x7d5a35e896f5cc60c3cebee7443c57120a4abf9130d2d794c36a86769c152705\n  ledger after every payout: 0x808551d4f18f1c9f9021bde675a4cd14dd60e843467f3bfd666fd1221b8bddd1\n\n[PASS] test_golden_CallSwarmSilentThenCalledAgain() (gas: 10587633)\nLogs:\n  ledger after settlement: 0x38cc28fed888cc3bcd65c4d5b72aa4ec16f7b4731c45419596c21cda6e366d7a\n  settlement record: 0x12641fdf0b0d28314e7cdd711051407e007d2e0d2c3006ec555db150a1bb11c5\n  ledger after every payout: 0xa82fdb047f774ed464eb049c7e6b261d5bc214d5978856d853700b07460f2f09\n\n[PASS] test_golden_RejectedThenQueuedAccepted() (gas: 11978067)\nLogs:\n  ledger after settlement: 0x76984c0edfd7138e1eeafbca442dc75eac4cdca48dfce84a332a3dbe3eb570fd\n  settlement record: 0xdb27e0d67237b840a3897b3e94d0bc38e88d80d4f00b209c05909985a9e9b9f4\n  ledger after every payout: 0xf9dbd032a0ab92846b8ead6e767bad8491ba22ce779070f3e67373d796740420\n\n[PASS] test_golden_UndecidedNobodyCallsSwarm() (gas: 8828939)\nLogs:\n  ledger after settlement: 0xbb589401078dd43b88cbc7c1c174981c2ee68b3027a30d9ffdcf05a917cc491d\n  settlement record: 0x880d35a1a6c101757740019ffe504083f1353824cf6c05eb99c4e48fe76bf58a\n  ledger after every payout: 0x4755fc921943fe650cc0871884c69218df089678208e1ea5cc2d2410865f21ce\n\n[PASS] test_minor_HeaviestLazyStepGasCost() (gas: 3867979)\nLogs:\n  gas of the heaviest separate step (askAppealSwarm): 727451\n\n[PASS] test_minor_NoEthInDisputes_VoterSendsOwnBallot() (gas: 1545519)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 142.15ms (122.46ms CPU time)\n\nRan 10 tests for test/Evidence.t.sol:EvidenceTest\n[PASS] test_AskedQuestionCarriesEvidence() (gas: 3588367)\n[PASS] test_BadEvidenceReverts() (gas: 3486848)\n[PASS] test_EvidenceOptional_OnchainTxAndLink_NoScreenshotOk() (gas: 1628669)\n[PASS] test_EvidenceRequired_ScreenshotStillReachesQuestion() (gas: 2330777)\n[PASS] test_EvidenceRequired_XPostAndVideo_RevertWithoutScreenshot() (gas: 2576424)\n[PASS] test_NoEvidence_NothingAddedNoEvent() (gas: 2950251)\n[PASS] test_OnlyOnePart() (gas: 5784669)\n[PASS] test_StoredEmittedAndAsked() (gas: 4457235)\n[PASS] test_WorstBodyFitsIntakeLimit() (gas: 7930045)\nLogs:\n  max claims accepted at maxTextBytes 512: 10\n  worst body bytes: 15503\n\n[PASS] test_WorstQuestionFitsIntakeLimit() (gas: 3466727)\nLogs:\n  worst question bytes: 2000\n  worst question: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqTASK: definitions task, task_proof and task_no | PROOF: pppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp | PROOF TYPE: onchain_tx | DOER: 0xabcdef0123456789abcdef0123456789abcdef01 | CASE: 18446744073709551615/18446744073709551615/4294967296\n\nSuite result: ok. 10 passed; 0 failed; 0 skipped; finished in 53.97ms (37.93ms CPU time)\n\nRan 13 tests for test/TaskFields.t.sol:TaskFieldsTest\n[PASS] test_Condition_StoredAndLimited() (gas: 1091049)\n[PASS] test_GasFields() (gas: 1618610)\nLogs:\n  createTask (title 21 B, condition 64 B): 329645\n  submit (video link): 528036\n  submit (tx hash): 441803\n\n[PASS] test_ProofType_StoredPackedFixed() (gas: 1590055)\n[PASS] test_Proof_LengthStillFirst() (gas: 1230467)\n[PASS] test_Proof_Link() (gas: 7345903)\n[PASS] test_Proof_OnchainTx() (gas: 2988750)\n[PASS] test_Proof_Video() (gas: 6824418)\n[PASS] test_Proof_XPost() (gas: 8882817)\n[PASS] test_SwarmQuestion_DoerNoCode() (gas: 3512740)\n[PASS] test_SwarmQuestion_ProofTypeIn_TitleOut() (gas: 24294113)\n[PASS] test_SwarmQuestion_WorstCaseFitsIntakeLimit() (gas: 4668953)\n[PASS] test_Title_InEventOnly_Limits() (gas: 2219290)\n[PASS] test_Title_MatchesTrophyLimit() (gas: 6161)\nSuite result: ok. 13 passed; 0 failed; 0 skipped; finished in 88.69ms (71.82ms CPU time)\n\nRan 2 tests for test/Gas.t.sol:GasTest\n[PASS] test_GasProfile() (gas: 8442071)\nLogs:\n  createTask (USDC, mode B): 364269\n  createTask (ETH): 327447\n  topUp (idle task): 176641\n  submit (small task, mode B): 443457\n  topUp (pending, during submission): 195996\n  dispute (starts the vote): 369425\n  vote (2 NFTs, not the first vote): 116812\n  vote (20 NFTs, not the first vote): 229116\n  poke (vote end -> decided): 104867\n  appeal: 205816\n  askAppealSwarm (asks the filed appeal; builds body, pays Intake): 692497\n  onOracleResult (inside the 200k callback budget): 40997\n  poke (final settlement, rejected): 284985\n  claimDisputer (bond + share + ETH): 173844\n  claimVoterReward (bond share): 120868\n  poke (accept + fee split): 243661\n  withdraw (IMD credit): 70092\n  withdrawContribution (expires the task on the way): 79722\n  callSwarm (no NFT decision: bond + fee, builds body, pays Intake): 741407\n  poke (swarm silent -> back to the undecided window): 218168\n  submit ($500 task, no Intake request): 392083\n\n[PASS] test_GasSubmitEvidence() (gas: 5659964)\nLogs:\n  $100 task: submit, proof link only: 451594\n  $100 task: submit, + screenshot: 542433\n    extra gas: 90839\n  $100 task: submit, + 35-byte note: 525350\n    extra gas: 73756\n  $100 task: submit, + screenshot + 200-byte note: 938458\n    extra gas: 486864\n  $500 task: submit, proof link only: 451595\n  $500 task: submit, + screenshot: 542437\n    extra gas: 90842\n  $500 task: submit, + 35-byte note: 525354\n    extra gas: 73759\n  $500 task: submit, + screenshot + 200-byte note: 938467\n    extra gas: 486872\n\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 25.33ms (8.12ms CPU time)\n\nRan 15 tests for test/SideCalls.t.sol:SideCallsTest\n[PASS] test_BothSidesCall_EachPaysFromItsOwnBond() (gas: 7991775)\n[PASS] test_Cancel_AfterSideCalls_BondsBackMinusFees() (gas: 6928145)\n[PASS] test_DisputerAppeal_Loses_RestOfBondToWinner() (gas: 7666398)\n[PASS] test_DisputerCallingForTheDoer_PaysLikeAStranger() (gas: 7123456)\n[PASS] test_DoerAppeal_Wins_RestOfBondPlusLoserBond() (gas: 7574688)\n[PASS] test_FeeAboveBond_WalletPaysOnlyTheRest() (gas: 7599132)\n[PASS] test_RepeatCall_CheaperThanBond_ThreeCalls() (gas: 9104764)\n[PASS] test_RepeatCall_Disputer_Loses() (gas: 8621651)\n[PASS] test_RepeatCall_Disputer_Wins() (gas: 8482255)\n[PASS] test_RepeatCall_Doer_Loses() (gas: 7847955)\n[PASS] test_RepeatCall_Doer_Wins() (gas: 8126647)\n[PASS] test_RepeatCall_EachSideOwnFirst() (gas: 8697815)\n[PASS] test_SideSpent_View() (gas: 8470050)\n[PASS] test_StrangerAppeal_PaysBondAndFee() (gas: 7496108)\n[PASS] test_VoidSideAppeal_BondWhole() (gas: 7754375)\nSuite result: ok. 15 passed; 0 failed; 0 skipped; finished in 161.09ms (139.55ms CPU time)\n\nRan 10 tests for test/TaskRules.t.sol:TaskRulesTest\n[PASS] test_EachField_513BytesReverts() (gas: 1049015)\n[PASS] test_EachField_EmptyOrBadCharReverts() (gas: 614395)\n[PASS] test_Gas_CreateTask_3x512() (gas: 1184910)\nLogs:\n  createTask 3x512 exec gas: 408236\n  createTask 3x512 tx gas (exec + 21000 + calldata): 457572\n\n[PASS] test_Gas_CreateTask_Forehead() (gas: 780412)\nLogs:\n  createTask forehead exec gas: 394468\n  createTask forehead tx gas (exec + 21000 + calldata): 430728\n\n[PASS] test_Gas_CreateTask_Supermarket() (gas: 843758)\nLogs:\n  createTask supermarket exec gas: 394167\n  createTask supermarket tx gas (exec + 21000 + calldata): 433875\n\n[PASS] test_LaunchParams_PassBounds() (gas: 121898)\n[PASS] test_OwnerExample_Forehead_Creates() (gas: 488779)\n[PASS] test_OwnerExample_Supermarket_Creates() (gas: 466999)\n[PASS] test_SwarmBody_ThreeDefinitions() (gas: 5186804)\nLogs:\n  supermarket: question bytes: 804\n  supermarket: body bytes: 2272\n\n[PASS] test_ThreeTimes512_Creates() (gas: 670730)\nSuite result: ok. 10 passed; 0 failed; 0 skipped; finished in 47.11ms (22.30ms CPU time)\n\nRan 3 tests for test/audit/YoloModulesAudit.t.sol:YoloModulesAuditTest\n[PASS] test_ContributorCanPredict() (gas: 1382579)\n[PASS] test_Guard_PostExpiryWithdrawalChangesNothing() (gas: 1548325)\n[PASS] test_ResidualGone_NoWithdrawalWhileOpen() (gas: 1529594)\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 18.88ms (1.74ms CPU time)\n\nRan 1 test for test/review/ReviewLaunch.t.sol:ReviewLaunchFork\n[SKIP: skipped] setUp() (gas: 0)\nSuite result: ok. 0 passed; 0 failed; 1 skipped; finished in 1.15ms (0.00ns CPU time)\n\nRan 34 tests for test/YoloToken.t.sol:YoloTokenTest\n[PASS] test_AfterMinute60_PlainErc20() (gas: 137101)\n[PASS] test_BeforeOpenAt_NobodyBuys() (gas: 749679)\n[PASS] test_ConstructorRejectsZeroPoolManagerOrSafe() (gas: 9166)\n[PASS] test_DevVesting_Linear12Months_NoCliff() (gas: 992024)\n[PASS] test_GateWithoutCode_NoSchedule() (gas: 303144)\n[PASS] test_Gate_ConsumeNeedsSealAndBooksPerCallingToken() (gas: 463880)\n[PASS] test_Gate_OnlyWriterRecordsAndSeals() (gas: 217032)\n[PASS] test_Gate_RecordChecksAndEvents() (gas: 564790)\n[PASS] test_Gate_SealIsIrreversible() (gas: 348173)\n[PASS] test_GenesisLaunch_SharesAddUp() (gas: 4276021)\n[PASS] test_IncentivesVesting_QuarterAtOnce_RestLinear24Months() (gas: 966982)\n[PASS] test_OpenAtBounds() (gas: 8985)\n[PASS] test_SealAtOpenAtDoesNotCount() (gas: 256752)\n[PASS] test_SellTax_BuyFreeSellTaxedInWindow_BothAt45() (gas: 564788)\n[PASS] test_SellTax_ExactAmounts() (gas: 1063766)\n[PASS] test_SellTax_OnTopOfBalanceAndAllowance() (gas: 480658)\n[PASS] test_SellTax_RoundsDownAndDustIsFree() (gas: 119026)\n[PASS] test_Snapshot_NftMovedAfterSnapshotGivesNothing() (gas: 504182)\n[PASS] test_Splitter_FixedSharesAndDustToTreasury() (gas: 497623)\n[PASS] test_Splitter_RejectsZeroAddresses() (gas: 5083)\n[PASS] test_Splitter_RemainderShortOf750M() (gas: 274291)\n[PASS] test_SupplyAndFixedSchedule() (gas: 67088)\n[PASS] test_Tax_ExactAmounts() (gas: 793662)\n[PASS] test_Tax_RoundsDownAndDustIsFree() (gas: 80188)\n[PASS] test_TeamVesting_Linear12Months_NoCliff() (gas: 838186)\n[PASS] test_TransfersAndTheLauncherAreFree() (gas: 770251)\n[PASS] test_TreasuryVesting_ShortRemainder() (gas: 145853)\n[PASS] test_TreasuryVesting_ThirdAtOnce_RestLinear12Months() (gas: 953436)\n[PASS] test_UnsealedSnapshot_WindowClosedToAll() (gas: 421070)\n[PASS] test_VestingBounds() (gas: 4353)\n[PASS] test_Whitelist_AllowancePerNftAndCumulative() (gas: 645069)\n[PASS] test_Whitelist_BoundaryAtMinute30() (gas: 405741)\n[PASS] test_Whitelist_IntermediaryRefused() (gas: 369401)\n[PASS] test_Whitelist_WalletOutsideSnapshotRefused() (gas: 282886)\nSuite result: ok. 34 passed; 0 failed; 0 skipped; finished in 12.91ms (11.14ms CPU time)\n\nRan 25 tests for test/Tasks.t.sol:TasksTest\n[PASS] test_AuthorCannotWithdrawOpenTask_SubmitWorks() (gas: 6689181)\n[PASS] test_CreateTask_AllCurrencies() (gas: 7426349)\n[PASS] test_CreateTask_NoAuthorFee() (gas: 3849348)\n[PASS] test_CreateTask_Reverts() (gas: 1826912)\n[PASS] test_DeadlineDuringSubmission_ExpiresAfterRejection() (gas: 7476885)\n[PASS] test_DeadlineDuringSubmission_SubmissionStillRuns() (gas: 10455681)\n[PASS] test_DeadlineRefund() (gas: 4107237)\n[PASS] test_ExcessEthRefunded() (gas: 397446)\n[PASS] test_NoCap_RewardTopUpsAndOpenTotal() (gas: 38500383)\n[PASS] test_NoDispute_AuthorOnly_24hWindow_USDC() (gas: 7063160)\n[PASS] test_NoDispute_ForeignMoney_24hWindow_ETH() (gas: 6931711)\n[PASS] test_NoDispute_IMDReward() (gas: 6642040)\n[PASS] test_NoDispute_StakeBonusAndBurn() (gas: 16396583)\n[PASS] test_NoDispute_YoloReward_TreasuryShareBurned() (gas: 11289772)\n[PASS] test_NoEscalation_SameBondAfterRejections() (gas: 5319525)\n[PASS] test_ParamBounds() (gas: 430781)\n[PASS] test_ParamChange_DoesNotAffectExistingTasks() (gas: 13846858)\n[PASS] test_ParamProposalCancel() (gas: 1336248)\n[PASS] test_PauseStopsOnlyNewTasks() (gas: 1280793)\n[PASS] test_Queue_FlatBondAndVoidRefund() (gas: 13136062)\n[PASS] test_QuoteBondFormula() (gas: 1949242)\n[PASS] test_TopUpDuringSubmission_PaidToDoerOnAcceptance() (gas: 7134989)\n[PASS] test_TopUpDuringSubmission_StaysInRewardAfterRejection() (gas: 10569357)\n[PASS] test_TopUpRightBeforeDeadline_LockedThenReturned() (gas: 4318158)\n[PASS] test_WithdrawRules() (gas: 12247416)\nSuite result: ok. 25 passed; 0 failed; 0 skipped; finished in 201.72ms (187.66ms CPU time)\n\nRan 1 test for test/audit/PredictAfterTimer.t.sol:PredictAfterTimerTest\n[PASS] test_PredictAfterTimerEnded_WithoutPoke_IsAllowed() (gas: 2292678)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 93.88ms (1.76ms CPU time)\n\nRan 9 tests for test/ContractRules.t.sol:ContractRulesTest\n[PASS] test_AddonInPowerBase_FullBonusOnBoth() (gas: 7407649)\n[PASS] test_BigAddon_BonusNeedsLockAgainstRewardPlusAddon() (gas: 12394280)\n[PASS] test_EthTopUpDuringCheck_PaidToTheDoer() (gas: 6801911)\n[PASS] test_FriendTopUp_BonusNeedsLockAgainstTheWholePool() (gas: 11979363)\n[PASS] test_Stake5PercentOfReward_Bonus02Percent() (gas: 6981852)\n[PASS] test_TinyStake_WholeBpsRoundedDown() (gas: 1965860)\n[PASS] test_TopUpDuringRejectedCheck_PaidToTheNextDoer() (gas: 10505399)\n[PASS] test_TopUpInPowerBase_BonusOnTheWholeReward() (gas: 7206630)\n[PASS] test_UsdcTopUpDuringCheck_InTheDoersPayout() (gas: 7043120)\nSuite result: ok. 9 passed; 0 failed; 0 skipped; finished in 208.65ms (101.01ms CPU time)\n\nRan 1 test for test/review/ReviewLaunch.t.sol:ReviewLaunchRuntime\n[PASS] test_L5_vote_gasPerNft() (gas: 60586719)\nLogs:\n  vote 10 NFTs: 176537\n  vote 490 more NFTs: 2246979\n  gas per NFT (mock NFT): 4585\n  max NFTs in one vote under the cap (mock): 3659\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 40.74ms (25.71ms CPU time)\n\nRan 23 tests for test/YoloPredict.t.sol:YoloPredictTest\n[PASS] testFuzz_BurnedPlusPaidEqualsDeposited(uint256,uint256,uint256,bool) (runs: 256, μ: 1990190, ~: 2345116)\n[PASS] test_AuthorCanPredict() (gas: 716964)\n[PASS] test_BelowMinPositionReverts() (gas: 465549)\n[PASS] test_ClaimBeforeFinalReverts() (gas: 800954)\n[PASS] test_ClosesAtDeadline_PausesWhileBusy() (gas: 3237081)\n[PASS] test_CompletedTask_PotPaidOut_StillWillDoWon() (gas: 1655594)\n[PASS] test_ConstructorChecks() (gas: 4332)\n[PASS] test_ContributorAfterPosition_StillGetsHerFullSplitShare() (gas: 2401060)\n[PASS] test_Deferred_BurnedOnExpiry() (gas: 1311560)\n[PASS] test_Deferred_HalfToAuthorHalfToDoer() (gas: 2011732)\n[PASS] test_Deferred_NobodyOnWillDo_PoolToAuthorAndDoer() (gas: 1688698)\n[PASS] test_Doer_ClaimingFirst_StillGetsFullShare() (gas: 1883063)\n[PASS] test_Doer_PositionBeforeSubmission_GetsFullWinnerShare() (gas: 2037903)\n[PASS] test_Doer_SharesTheLosingPoolByPoints() (gas: 2129769)\n[PASS] test_EntrySplit_5_5_90() (gas: 776650)\n[PASS] test_EveryTaskHasADeadline() (gas: 755805)\n[PASS] test_NoCap_LargePositionAccepted() (gas: 2047256)\n[PASS] test_NoPriceNeeded_ImdAndUsdcRewards_MarketOpensAnyway() (gas: 1377575)\n[PASS] test_NumericExample_AliceBobCarl() (gas: 7778863)\n[PASS] test_RewardLockedUntilDeadline_WinnersPaidInFull() (gas: 2201623)\n[PASS] test_SweetenerAfterPosition_StillGetsFullShare() (gas: 2154201)\n[PASS] test_TotalPointsRoundingToZero_SplitByPositionInsteadOfReverting() (gas: 1273629)\n[PASS] test_Weight_CountsFromTaskCreation() (gas: 735882)\nSuite result: ok. 23 passed; 0 failed; 0 skipped; finished in 245.79ms (253.15ms CPU time)\n\nRan 6 tests for test/audit/AuditC.t.sol:AuditCTest\n[PASS] testFuzz_ValidTextMatchesReference(bytes,uint8,uint8) (runs: 256, μ: 260212, ~: 259801)\n[PASS] test_Fix_ContractWalletVotesItself() (gas: 2223645)\n[PASS] test_Guard_DoerCannotAnswerHisOwnAppealInTheNameOfTheDisputers() (gas: 6316797)\n[PASS] test_Guard_FrontRunnerCannotLiftABallotAndDecide() (gas: 14912445)\n[PASS] test_Guard_HoldersOwnVotesDecideAtTheVoteEnd() (gas: 10886208)\n[PASS] test_NoBatchToPoison() (gas: 1807342)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 90.88ms (80.98ms CPU time)\n\nRan 4 tests for test/TextRule.t.sol:TextRuleTest\n[PASS] testFuzz_AsciiWithOneByte(uint16,uint16,uint8,uint256) (runs: 256, μ: 228088, ~: 185213)\n[PASS] testFuzz_MixedUtf8(uint256,uint16) (runs: 256, μ: 62760, ~: 54737)\n[PASS] testFuzz_RandomBytes(bytes) (runs: 256, μ: 14364, ~: 13633)\n[PASS] test_Examples() (gas: 562950)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 133.56ms (133.43ms CPU time)\n\nRan 2 tests for test/review/ReviewGasGrief.t.sol:ReviewGasGrief\n[PASS] test_CallSwarmWithTightGas_CannotSkipTheQuestion() (gas: 7996607)\nLogs:\n  callSwarm gas that skips the question: 0\n\n[PASS] test_PokeWithTightGas_CannotVoidAppeal() (gas: 3578422)\nLogs:\n  askAppealSwarm gas that voids the appeal: 0\n\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 273.71ms (284.16ms CPU time)\n\nRan 24 tests for test/Votes.t.sol:VotesTest\n[PASS] testFuzz_EachIdOnce(uint8,uint8) (runs: 256, μ: 3931679, ~: 3956495)\n[PASS] test_10Votes_DecideAtTheVoteEnd() (gas: 3410370)\n[PASS] test_5Votes_NoDecision() (gas: 322372)\n[PASS] test_BadVotesRevert() (gas: 210199)\n[PASS] test_Delegate_OneTokenOnly() (gas: 326563)\n[PASS] test_Delegate_VotesForTheOwner_IdsOnce() (gas: 643964)\n[PASS] test_InstantDecision_NextBatchReverts() (gas: 513707)\n[PASS] test_Instant_20Votes() (gas: 391269)\n[PASS] test_MockNft_MintBatch() (gas: 3171919)\n[PASS] test_NftInEscrow() (gas: 453607)\n[PASS] test_NftsGotAfterOpeningVote() (gas: 2222588)\n[PASS] test_NoVoteWithoutDispute() (gas: 781945)\n[PASS] test_NotOwnId_RevertsAll() (gas: 212870)\n[PASS] test_OneWallet_DecidesAlone() (gas: 1015527)\n[PASS] test_OneWallet_MinWinnerWallets() (gas: 4660057)\n[PASS] test_OnlyTheHolderVotesHisNfts() (gas: 357176)\n[PASS] test_RepeatInList_Reverts() (gas: 114398)\n[PASS] test_SideCannotChange() (gas: 269234)\n[PASS] test_TransferredAfterVote_NoSecondVote() (gas: 1603170)\n[PASS] test_TwoThousandNfts_NeverMoreVotes() (gas: 60564054)\n[PASS] test_TwoTransactionsSameSide() (gas: 351792)\n[PASS] test_VoteCountsEverySentNft() (gas: 14039047)\n[PASS] test_VoterRewardSplitByCorrectVotes() (gas: 7046276)\n[PASS] test_VotesAfterVoteEndRevert() (gas: 58437)\nSuite result: ok. 24 passed; 0 failed; 0 skipped; finished in 326.47ms (349.28ms CPU time)\n\nRan 14 tests for test/Trophy.t.sol:TrophyTest\n[PASS] test_BadgesPerCategory() (gas: 4942870)\n[PASS] test_Catalog_DisableKeepsMinted() (gas: 4215406)\n[PASS] test_Catalog_Guards() (gas: 8986832)\nLogs:\n  addDesign gas, 8192-byte SVG: 7465885\n\n[PASS] test_Catalog_Launch3Gas() (gas: 9161558)\nLogs:\n  YoloSweetener 6748 runtime bytes\n  TrophyCatalog 4228 runtime bytes\n  DareTrophy 11777 runtime bytes\n  ProtocolDirectory 4546 runtime bytes\n  HiddenList 3789 runtime bytes\n  YoloPredict 6385 runtime bytes\n  launch 3 execution gas 8668683\n  launch 3 calldata bytes 42884\n  launch 3 total gas (upper bound) 9375827\n\n[PASS] test_Catalog_NeedsAddress() (gas: 6203)\n[PASS] test_Catalog_OwnerAddsDesign() (gas: 7681558)\n[PASS] test_Catalog_StrangerCannotEdit() (gas: 468134)\n[PASS] test_Catalog_UpdateThenMint() (gas: 7832757)\n[PASS] test_DoerMintsOnceBurningYolo() (gas: 1665316)\n[PASS] test_FixedPrice_IgnoresTheDevPrice() (gas: 166897)\n[PASS] test_MetadataOnChain() (gas: 4576380)\n[PASS] test_OnlyTheDoerOfAnAcceptedSubmission() (gas: 12603896)\n[PASS] test_RewardFormatting() (gas: 11024502)\n[PASS] test_TitleGuards() (gas: 1310117)\nSuite result: ok. 14 passed; 0 failed; 0 skipped; finished in 115.91ms (89.85ms CPU time)\n\nRan 1 test for test/review/ReviewQueue.t.sol:ReviewQueue\n[PASS] testFuzz_QueueContributorsGetExactlyTheirs((uint8,uint256)) (runs: 256, μ: 8614895, ~: 7440392)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 668.46ms (633.09ms CPU time)\n\nRan 8 tests for test/audit/AuditB.t.sol:AuditBTest\n[PASS] testFuzz_Guard_ModeAPaymentsBookExactly(uint256,uint96,uint96,bool) (runs: 256, μ: 7309229, ~: 7325268)\n[PASS] testFuzz_Guard_PinnedVersionNeverChanges(uint16,uint32) (runs: 256, μ: 3173368, ~: 3173313)\n[PASS] test_Guard_BankOnlyForDesks() (gas: 132520)\n[PASS] test_Guard_FailedPushesBecomeCreditsAndBooksClose() (gas: 9658237)\n[PASS] test_Guard_LeakedAttesterKeyAloneCannotDecideDuringTheRemovalTimelock() (gas: 2889844)\n[PASS] test_Guard_LongestDueChainFitsOneCall() (gas: 10909514)\n[PASS] test_Guard_RevertingPinnedDevPricesNeverBlocksWithdrawals() (gas: 3992617)\n[PASS] test_Guard_ThirdPartyAnswerToACopiedQuestionCannotDecideOurCase() (gas: 9436465)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 762.58ms (845.63ms CPU time)\n\nRan 21 tests for test/BuybackWallet.t.sol:BuybackWalletTest\n[PASS] test_Balances_View() (gas: 711993)\n[PASS] test_BurnYolo_Anyone() (gas: 341371)\n[PASS] test_Constructor_StartWallet_AndZeroRefused() (gas: 34246)\n[PASS] test_EthAndImd_FullStake_WalletInTheirCurrency() (gas: 11291350)\n[PASS] test_EthWalletGriefsGas_PayoutStillSucceeds_ShareStaysInBurner() (gas: 7159972)\n[PASS] test_EthWalletReverts_PayoutStillSucceeds_ShareStaysInBurner() (gas: 7115130)\n[PASS] test_Forward_AnyoneOnlyToTheWallet_Totals() (gas: 947491)\n[PASS] test_Forward_EthRefused_StaysInTheBurner() (gas: 322027)\n[PASS] test_Forward_RefusesYoloAndUnknown() (gas: 285884)\n[PASS] test_FullStake_Accepted_Doer94_Wallet5_50_Treasury0_50() (gas: 6995188)\n[PASS] test_HalfStake_Accepted_Doer92_Wallet6_50_Treasury1_50() (gas: 6986981)\n[PASS] test_NftRight_FullStake_Wallet0_50() (gas: 7840834)\n[PASS] test_NftRight_NoStake_Wallet0() (gas: 7587392)\n[PASS] test_NftUndecided_FullStake_Wallet5_50() (gas: 7375036)\n[PASS] test_NftWrong_FullStake_Wallet5_50() (gas: 8808109)\n[PASS] test_NftWrong_NoStake_Wallet0() (gas: 8489102)\n[PASS] test_NoStake_Accepted_NothingToTheWallet() (gas: 6740381)\n[PASS] test_Rejected_NothingToTheWallet() (gas: 7585857)\n[PASS] test_SetBuybackWallet_OnlyDev_WithEvent() (gas: 518388)\n[PASS] test_YoloAddOn_BurnsNeverToTheWallet() (gas: 7150246)\n[PASS] test_YoloReward_FullStake_BurnsNeverToTheWallet() (gas: 6919289)\nSuite result: ok. 21 passed; 0 failed; 0 skipped; finished in 689.19ms (124.89ms CPU time)\n\nRan 35 tests for test/YoloPredictScenarios.t.sol:YoloPredictScenariosTest\n[PASS] testFuzz_DoerInSplit_NothingStuck(uint256,uint256,uint256,uint256,uint8,bool) (runs: 256, μ: 2486225, ~: 2478926)\n[PASS] testFuzz_Invariant_BurnedPaidHeldEqualsDeposited(uint256,uint8,uint8) (runs: 256, μ: 3037877, ~: 2816714)\n[PASS] testFuzz_Invariant_NeverPaysOutMoreThanDeposited(uint256,uint256,uint256,bool) (runs: 256, μ: 1961618, ~: 2316482)\n[PASS] test_ClaimOrder_DoesNotAffectPayouts() (gas: 2147750)\n[PASS] test_Claim_BeforeFinal_WithAnActiveSubmissionInFlight_Reverts() (gas: 1378925)\n[PASS] test_Claim_ByAPureLoser_PaysZero_NoRevert() (gas: 1745466)\n[PASS] test_Claim_Twice_SecondReverts() (gas: 1806152)\n[PASS] test_DoerInSplit_ShareIndependentOfClaimOrder() (gas: 2669290)\n[PASS] test_DoerOnlyOnWillDo_TakesTheWholePool() (gas: 2223271)\n[PASS] test_Doer_SharesTheLosingPoolWithOtherWinners() (gas: 2600780)\n[PASS] test_Empty_LonePositionOnLosingSide_PoolToAuthorAndDoer() (gas: 1624896)\n[PASS] test_Empty_LonePositionOnWinningSide() (gas: 1614149)\n[PASS] test_Empty_NoMarketAtAll() (gas: 594875)\n[PASS] test_Extremes_DustPositionsPayExactly() (gas: 1830581)\n[PASS] test_Extremes_FirstInstantPosition_AndLastSecondPosition() (gas: 901003)\n[PASS] test_Extremes_PositionOneSecondBeforeDeadline_ThenExactlyAtDeadlineReverts() (gas: 750040)\n[PASS] test_Extremes_VeryLongDuration_NoOverflow() (gas: 718593)\n[PASS] test_Gate_BecomingContributorAfterPredicting_StillFullShare() (gas: 2119125)\n[PASS] test_Gate_NoContributorBan_OnEitherTask() (gas: 1510008)\n[PASS] test_Gate_PredictingAfterDeadline_RevertsEvenIfStatusStillStoredAsOpen() (gas: 503840)\n[PASS] test_Gate_PredictingWhileBusy_RevertsBeforeAndAfterMarketOpen() (gas: 920688)\n[PASS] test_Gate_PredictorBecomesDoer_GetsFullShareWithoutAnyFlag() (gas: 1796859)\n[PASS] test_Gate_PredictorBecomesDoer_SettleFirst() (gas: 1945269)\n[PASS] test_Invariant_ExactWeiAccounting_MixedScenario() (gas: 4470085)\n[PASS] test_Life_AcceptedOnFirstSubmission() (gas: 1969629)\n[PASS] test_Life_AllSubmissionsRejected_ThenExpired() (gas: 3254244)\n[PASS] test_Life_DisputeAppealSwarm_AllAfterDeadline() (gas: 4362897)\n[PASS] test_Life_MultipleSubmissionsQueuedAtDeadline() (gas: 4154427)\n[PASS] test_Life_RejectedThenAcceptedOnResubmission() (gas: 4042547)\n[PASS] test_Life_SubmissionSecondBeforeDeadline_JudgedAfterDeadline() (gas: 1868963)\n[PASS] test_Life_VoteTieNoQuorum_DefaultsToAccepted() (gas: 2671303)\n[PASS] test_Resolve_PermissionlessAndIdempotent_CanBeCalledRepeatedly() (gas: 1739179)\n[PASS] test_RewardLocked_IdleOrBusy() (gas: 1195158)\n[PASS] test_RewardOnlyGrows_MarketUnaffected() (gas: 1085716)\n[PASS] test_Settle_CalledTenTimes_StaysIdempotent() (gas: 2300480)\nSuite result: ok. 35 passed; 0 failed; 0 skipped; finished in 681.81ms (1.34s CPU time)\n\nRan 22 tests for test/YoloLockHub.t.sol:YoloLockHubTest\n[PASS] testFuzz_LockThenWithdrawReturnsExactAmount(uint256,uint256) (runs: 256, μ: 272231, ~: 271866)\n[PASS] testFuzz_PowerConstantThroughTheTerm(uint256,uint256,uint256) (runs: 256, μ: 150963, ~: 150975)\n[PASS] test_ConstructorTakesYolo() (gas: 18365)\n[PASS] test_EndOnlyLater_AmountOnlyGrows() (gas: 484281)\n[PASS] test_EndedLockLockedAgain() (gas: 476373)\n[PASS] test_LockAndWithdrawAfterTheEnd() (gas: 390478)\n[PASS] test_LockTermsAndZero() (gas: 406523)\n[PASS] test_PowerAt_ReadsTheLockStrictlyBefore() (gas: 697745)\n[PASS] test_Power_AddAndExtend() (gas: 866578)\n[PASS] test_Power_FixedAtTheLock_DoesNotFall() (gas: 463606)\n[PASS] test_Power_RollingOneWeekExtensionDropsToOneWeek() (gas: 697449)\n[PASS] test_Rule_QueuedDoer_PowerAtTheSubmission() (gas: 3242015)\n[PASS] test_StakePower_RunningLockOnly() (gas: 516186)\n[PASS] test_Vault_AddedAfterTheSubmission_NotCounted() (gas: 7091945)\n[PASS] test_Vault_LockEndedBeforePayout_NoBonus_RelockedBonus() (gas: 11465650)\n[PASS] test_Vault_LockedInTheSubmissionBlockOrLater_NoBonus() (gas: 11388845)\n[PASS] test_Vault_LowestPriceOfTheWindow() (gas: 1473496)\n[PASS] test_Vault_NoYoloPrice_NoBonus() (gas: 1366317)\n[PASS] test_Vault_PowerEqualsReward_Bonus4() (gas: 7007681)\n[PASS] test_Vault_PowerHalfTheReward_Bonus2() (gas: 6966455)\n[PASS] test_Vault_RelativeToTheReward() (gas: 16089446)\n[PASS] test_Vault_YoloReward_Direct() (gas: 6881649)\nSuite result: ok. 22 passed; 0 failed; 0 skipped; finished in 1.15s (156.65ms CPU time)\n\nRan 1 test for test/review/ReviewRoles.t.sol:ReviewRoles\n[PASS] testFuzz_RoleOverlap((uint8,uint8,uint8,uint8,uint8,uint8,uint8,bool,uint32)) (runs: 256, μ: 9197096, ~: 9348000)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 1.23s (1.21s CPU time)\n\nRan 1 test for test/Scenarios.t.sol:ScenariosTest\n[PASS] testFuzz_Scenario((uint8,uint256,bool,uint8,uint8,uint8,uint8,uint8,uint8,uint8,uint256,bool,uint32,uint16,uint16)) (runs: 256, μ: 10866015, ~: 9899822)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 1.33s (1.31s CPU time)\n\nRan 14 tests for test/Sweetener.t.sol:SweetenerTest\n[PASS] test_AcceptedDoerGetsTheBonusMinusFee() (gas: 6969434)\n[PASS] test_DoerWhoSweetened_StakeExtraOnTheBonus() (gas: 6970058)\n[PASS] test_ExpiredTaskReturnsTheBonus() (gas: 5535056)\n[PASS] test_IdleBeforeDeadlineLocked_AfterDeadlineBack(uint256) (runs: 256, μ: 346864, ~: 346550)\n[PASS] test_LockedWhileOpen_EvenAfterRejection_FreeAfterDeadline() (gas: 8474729)\n[PASS] test_NftDecidedRight_VotesGetFivePercent() (gas: 7894878)\n[PASS] test_NftWrong_SwarmAccepts_VotesGetNothing() (gas: 8542343)\n[PASS] test_PayoutGoesToTheAcceptedSubmissionOfThatTask() (gas: 11277825)\n[PASS] test_PayoutNeedsNoYoloPrice() (gas: 1159011)\n[PASS] test_RefusedInputs() (gas: 127035)\n[PASS] test_StakedDoer_FullPower_GetsFourMore() (gas: 6849195)\n[PASS] test_StakedDoer_NftRight_VotesFiveDoerFourMore() (gas: 7871195)\n[PASS] test_StakedDoer_PartPowerAndSmallPower() (gas: 11839014)\n[PASS] test_TinyAddon_NoBondPart_NothingStuck() (gas: 8889150)\nSuite result: ok. 14 passed; 0 failed; 0 skipped; finished in 3.97s (225.85ms CPU time)\n\nRan 21 tests for test/Swarm.t.sol:SwarmTest\n[PASS] testFuzz_NoMandatoryCheck_AnyRewardSize(uint256,uint8) (runs: 256, μ: 797412, ~: 780947)\n[PASS] test_ActionNotSold_LargeSubmitStillWorks() (gas: 11068463)\n[PASS] test_AnswerAfterSilenceIgnored() (gas: 6385417)\n[PASS] test_AnswerSignedEarly_DeliveredLate_Counts() (gas: 6117904)\n[PASS] test_AttesterRotationTimelocked() (gas: 2412933)\n[PASS] test_CallSwarm_IntakeBroken_Reverts_NothingTaken() (gas: 1713608)\n[PASS] test_CallbackGasUnder100k() (gas: 215889)\nLogs:\n  callback gas: 40997\n\n[PASS] test_CallbackSelectorMatchesDocs() (gas: 734)\n[PASS] test_DuplicateAnswerIgnored_FirstWins() (gas: 6128952)\n[PASS] test_IntakeBroken_LargeSubmitUnaffected() (gas: 10580110)\n[PASS] test_LargeTask_DisputedAtOnce_Rejected() (gas: 11214690)\n[PASS] test_LargeTask_DisputedNftAccepts_Fee5To5() (gas: 11341058)\n[PASS] test_LargeTask_QueuedSubmission_ActivatedWithoutQuestion() (gas: 14306938)\n[PASS] test_LateAnswerIgnored_Timeout() (gas: 6339497)\n[PASS] test_LostCallback_IsSilence_NoPublicFallback() (gas: 6460614)\n[PASS] test_NoMandatoryCheck_ImdTask_NoDispute_AcceptedBondBack() (gas: 10546770)\n[PASS] test_NoMandatoryCheck_MaxReward_NothingAsked_AcceptedByTimer() (gas: 10505102)\n[PASS] test_NoPublicFallback_ForAnyAttestation() (gas: 314895)\n[PASS] test_RefusedBody_Status1_IsSilence() (gas: 6208832)\n[PASS] test_RequestShapeAndBody() (gas: 4786337)\n[PASS] test_SpoofedCallbackIgnored() (gas: 494647)\nSuite result: ok. 21 passed; 0 failed; 0 skipped; finished in 3.88s (251.35ms CPU time)\n\nRan 13 tests for test/audit/swarm117/SwarmAudit117.t.sol:SwarmAudit117Test\n[PASS] test_answerAfterTheGraceIgnoredWhoeverPoked() (gas: 8747331)\n[PASS] test_answerDeliveredAfterTheGraceIgnoredEvenUnpoked() (gas: 8409811)\n[PASS] test_answerSignedAfterTheTimeoutIsSilenceAtTheEndOfTheGrace() (gas: 8512793)\n[PASS] test_authorFrontRunsSubmitWithWithdrawal() (gas: 6564106)\n[PASS] test_doerAppealsAgainstOwnAcceptance() (gas: 9177322)\n[PASS] test_doerCannotCallTheSwarmAgainstHimself() (gas: 8086704)\n[PASS] test_doerMayStillAppealARejection() (gas: 8671899)\n[PASS] test_expiredAttestationIsIgnored() (gas: 8363189)\n[PASS] test_lastAttesterCannotBeRemoved() (gas: 413286)\n[PASS] test_noNoticeNeededAfterExpiry() (gas: 3790424)\n[PASS] test_pokeAtDeadlineTurnsLateAnswerIntoSilence() (gas: 8758189)\n[PASS] test_rewardLockedUntilTheDeadlineAndWhileJudged() (gas: 6720357)\n[PASS] test_walletVotesBothSidesAndIsPaid() (gas: 7523388)\nSuite result: ok. 13 passed; 0 failed; 0 skipped; finished in 3.97s (102.55ms CPU time)\n\nRan 43 tests for test/MoneyRules.t.sol:MoneyRulesTest\n[PASS] test_AddonInPowerBase() (gas: 2911144)\n[PASS] test_BondsIgnoreTheAddon() (gas: 1852916)\n[PASS] test_Burner_NoOwner_AnyoneBurns() (gas: 171089)\n[PASS] test_Burner_PullsFailedPush() (gas: 7136748)\n[PASS] test_ContributorAfterSubmission_GetsBonus() (gas: 1645296)\n[PASS] test_DeadlineRequired() (gas: 532034)\n[PASS] test_DisputeBond_FixedImdPlusOnePercent() (gas: 1711620)\n[PASS] test_DoerBond_FixedImdPlusThreePercent() (gas: 1424001)\n[PASS] test_Example_HundredDollarReward() (gas: 1847508)\n[PASS] test_Expired_AuthorGetsAllBack() (gas: 539899)\n[PASS] test_FakeLeavesStakeAlone() (gas: 2134545)\n[PASS] test_Fake_RewardStaysTaskOpen() (gas: 7599960)\n[PASS] test_HubWithoutCode_PaysAsWithoutStake() (gas: 1281973)\n[PASS] test_LockEndedBeforePayout_NoBonus() (gas: 1515872)\n[PASS] test_MinRewardPerCurrency() (gas: 1945142)\n[PASS] test_NftRight_NoStake() (gas: 7808265)\n[PASS] test_NftRight_Staked() (gas: 8009041)\n[PASS] test_NftWrong_SwarmAccepts() (gas: 15024314)\n[PASS] test_NoAddonLimit() (gas: 892567)\n[PASS] test_NoCap_LargeRewardOpenTotalAndTopUp() (gas: 6825071)\n[PASS] test_NoCreationFee() (gas: 441343)\n[PASS] test_NoDispute_NoStake() (gas: 6754751)\n[PASS] test_NoDispute_Staked() (gas: 7039758)\n[PASS] test_NoDoubling_SameBondForEverySubmission() (gas: 2378755)\n[PASS] test_NoMandatorySwarmCheck() (gas: 1250323)\n[PASS] test_NoPriceReadAtCreation() (gas: 479020)\n[PASS] test_NoSwarmFeeRefund_ThreeCallsByTheDoer() (gas: 10049755)\n[PASS] test_OneLock_FullPowerOnEveryConcurrentSubmission() (gas: 2447970)\n[PASS] test_PowerFixed_SubmissionMomentCounts() (gas: 3811745)\n[PASS] test_Predict_Entry_5_5_90_And_Deferred_2_5_Each() (gas: 1809444)\n[PASS] test_RelativeToTheReward_LowestPrice() (gas: 3586673)\n[PASS] test_RewardLockedUntilDeadline() (gas: 7856087)\n[PASS] test_SweetenerBoundOnceByTheOwner() (gas: 538439)\n[PASS] test_ThirdSilence_EndsAsWithoutCall_Decided() (gas: 10458732)\n[PASS] test_ThirdSilence_EndsAsWithoutCall_Undecided() (gas: 9909669)\n[PASS] test_Tie_DoerTakesEveryDisputerBond() (gas: 7345550)\n[PASS] test_TreasuryGetsOnlyItsShare() (gas: 11980333)\n[PASS] test_VoidAppealsCountTowardsThree() (gas: 9507480)\n[PASS] test_WithdrawnAndRelocked_NoBonus() (gas: 1578700)\n[PASS] test_WorkedExamples() (gas: 21018449)\n[PASS] test_YoloBonus_LockedUntilExpiry() (gas: 758340)\n[PASS] test_YoloBonus_SameRuleAsReward() (gas: 4137923)\n[PASS] test_YoloReward_TreasuryShareBurned() (gas: 11264227)\nSuite result: ok. 43 passed; 0 failed; 0 skipped; finished in 3.92s (237.85ms CPU time)\n\nRan 51 tests for test/Disputes.t.sol:DisputesTest\n[PASS] test_Appeal_ActionNotSold() (gas: 6866916)\n[PASS] test_Appeal_ByDoerSide_Flip() (gas: 7697625)\n[PASS] test_Appeal_IntakeReverts_AppealVoided() (gas: 7417683)\n[PASS] test_Appeal_LateAnswerAfterSilenceIgnored() (gas: 8069115)\n[PASS] test_Appeal_NeverAsked_ThirdTimeEndsUncalled() (gas: 7706643)\n[PASS] test_Appeal_NeverAsked_TimesOut() (gas: 7256519)\n[PASS] test_Appeal_PriceRaised_AppealVoided() (gas: 7282968)\n[PASS] test_Appeal_Silent_DecisionStands_NewWindow() (gas: 8172476)\n[PASS] test_Appeal_Silent_ReappealFlips() (gas: 8889877)\n[PASS] test_Appeal_SwarmAgrees() (gas: 8170101)\n[PASS] test_Appeal_SwarmFlips_NoFeeRefund_WinnerTakesAll() (gas: 7837783)\n[PASS] test_Appeal_WindowClosed() (gas: 1084799)\n[PASS] test_CallSwarm_ActionNotSold_DefaultStands() (gas: 6415919)\n[PASS] test_CallSwarm_LowerPrice_NoFeeRefund() (gas: 7311346)\n[PASS] test_CallSwarm_WrongPhase() (gas: 599802)\n[PASS] test_ClaimsPlayTimersThemselves_NoPokeNeeded() (gas: 6563044)\n[PASS] test_ContributorAppellantWins_GetsHisShareLikeAnyWinner() (gas: 8070042)\n[PASS] test_ContributorDisputerWins_SameShareAsAnyDisputer() (gas: 6982869)\n[PASS] test_ContributorDoerWins_GetsHisShareLikeAnyWinner() (gas: 11145714)\n[PASS] test_DisputeWindowClosedAndLimits() (gas: 1668234)\n[PASS] test_Dispute_NftAccepts_Fee5To5_Bond5050() (gas: 7026768)\n[PASS] test_Dispute_NftRejects_BondSplit5050() (gas: 6897618)\n[PASS] test_DisputerWhoTopsUpLater_StillGetsHisFullShare() (gas: 6841029)\n[PASS] test_DoerReply() (gas: 1578863)\n[PASS] test_InstantDecision_FiresOnceTheDeltaIsCrossed() (gas: 8350501)\n[PASS] test_NoDecision_CallAfterWindow_Reverts() (gas: 6536840)\n[PASS] test_NoDecision_CallSwarm_Accepts_CallerLosesBondAndFee() (gas: 7480651)\n[PASS] test_NoDecision_CallSwarm_Rejects_CallerGetsOnlyHisShare() (gas: 7697588)\n[PASS] test_NoDecision_DoerCallsSwarm_Confirmed() (gas: 7428673)\n[PASS] test_NoDecision_DoerCallsSwarm_Rejected() (gas: 7271414)\n[PASS] test_NoDecision_NobodyCalls_Accepted_DisputerBondsAllToDoer() (gas: 7557896)\n[PASS] test_NoDecision_SilentStatus2_NobodyCallsAgain_GeneralRule() (gas: 7792974)\n[PASS] test_NoDecision_SilentTimeout_WindowFromSilence() (gas: 7502108)\n[PASS] test_NoDecision_Silent_CalledAgain_Answers_NoFeeRefund() (gas: 8541732)\n[PASS] test_SilenceLoop_ThirdSilenceEndsTheCase() (gas: 9561302)\n[PASS] test_Stake_ContributedAfterSubmission_StillGetsBonus() (gas: 10734777)\n[PASS] test_Stake_EthAndImdBurnShareToBurner() (gas: 15022607)\n[PASS] test_Stake_FullPower_NftRight_VotesFive_BurnHalf_TreasuryHalf() (gas: 11407209)\n[PASS] test_Stake_FullPower_NftUndecided_BurnFiveAndHalf() (gas: 10916260)\n[PASS] test_Stake_FullPower_NoDispute_Bonus_AndBurnToBurner() (gas: 10513959)\n[PASS] test_Stake_LockEndedBeforePayout_NoBonus_RelockCounts() (gas: 15288659)\n[PASS] test_Stake_LockedInTheSubmissionBlock_NoBonus() (gas: 6871696)\n[PASS] test_Stake_None_FeeToTreasury() (gas: 10257379)\n[PASS] test_Stake_PartPower_NoDispute() (gas: 10512481)\n[PASS] test_Stake_ToppedUpAfterSubmission_OnlyThePowerBeforeCounts() (gas: 10600546)\n[PASS] test_SwarmFees_NoRefund_TwoSilencesThenAnswer() (gas: 14442784)\n[PASS] test_SwarmFees_WinnerSideOnly_DoerSilentCallRefunded() (gas: 12768150)\n[PASS] test_ThirdSilence_Decided_NftDecisionStands() (gas: 10225613)\n[PASS] test_ThirdSilence_NoDecision_AcceptedDisputerBondToDoer() (gas: 9644760)\n[PASS] test_YoloReward_FeeSplitsLikeAnyReward_Votes5_Doer4_Burner1() (gas: 11467934)\n[PASS] test_YoloReward_TreasuryPartToBurner_FullPowerSix() (gas: 15101226)\nSuite result: ok. 51 passed; 0 failed; 0 skipped; finished in 3.88s (508.26ms CPU time)\n\nRan 2 tests for test/VotePowerFuzz.t.sol:VotePowerFuzzTest\n[PASS] testFuzz_OneVotePerNft(uint256) (runs: 256, μ: 95476816, ~: 96953990)\n[PASS] test_OneVotePerNft_Fixed() (gas: 387108766)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 3.89s (4.16s CPU time)\n\nRan 1 test for test/Invariant.t.sol:InvariantTest\n[PASS]\nInvariantTest invariants:\n[PASS] invariant_BalanceEqualsLiabilities\n[PASS] invariant_HubHoldsEveryLock_StakePowerBounded\n[PASS] invariant_RewardLockedUntilDeadline\n[PASS] invariant_SweetenerHoldsEveryBonus\n[PASS] invariant_TrophiesOnlyForAcceptedDoersAndEveryYoloBurned\n InvariantTest invariants (runs: 100, calls: 15000, reverts: 0)\n\n╭----------+----------------------+-------+---------+----------╮\n| Contract | Selector             | Calls | Reverts | Discards |\n+==============================================================+\n| Handler  | answer               | 548   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | appeal               | 541   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | askAppealSwarm       | 539   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | breakIntake          | 577   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | callSwarm            | 564   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | claim                | 524   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | createTask           | 545   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | dispute              | 555   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | expireAndWithdraw    | 543   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | lock                 | 515   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | mintTrophy           | 567   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | payoutBonus          | 548   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | poke                 | 543   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progress             | 513   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progressA            | 516   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progressB            | 551   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progressC            | 521   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progressD            | 513   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | setIntakePrice       | 533   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | submit               | 539   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | sweep                | 528   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | sweeten              | 513   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | topUp                | 534   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | vote                 | 503   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | warp                 | 544   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | withdrawBonus        | 488   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | withdrawContribution | 567   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | withdrawLock         | 528   | 0       | 0        |\n╰----------+----------------------+-------+---------+----------╯\n\nLogs:\n  createTask: 4\n  topUp: 0\n  submit: 0\n  dispute: 0\n  vote: 0\n  appeal: 0\n  breakIntake: 11\n  callSwarm: 0\n  answer: 0\n  claimDisputer: 0\n  claimVoter: 0\n  claimVoid: 0\n  withdrawContribution: 2\n  withdrawExpired: 2\n  progress: 0\n  sweeten: 0\n  withdrawBonus: 0\n  payoutBonus: 0\n  mintTrophy: 0\n  lock: 3\n  withdrawLock: 0\n  repeatedAsk: 0\n  progress at phase 2: 0\n  progress at phase 3: 0\n  progress at phase 4: 0\n  progress at phase 5: 0\n  progress at phase 6: 0\n  progress at phase 7: 0\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 17.93s (17.90s CPU time)\n\nRan 88 test suites in 17.94s (52.16s CPU time): 692 tests passed, 0 failed, 3 skipped (695 total tests)\n","passed":true},{"durationMs":234,"exitCode":0,"name":"source-index","output":"{\"v\":1,\"entryPoints\":[\"BuybackBurner.burnYolo()\",\"BuybackBurner.forward(address)\",\"BuybackBurner.pull(address,address)\",\"BuybackBurner.receive()\",\"BuybackBurner.setBuybackWallet(address)\",\"CaseDesk.advanced(uint256)\",\"CaseDesk.askAppeal(uint256,uint256,(string,string,string,string,string))\",\"CaseDesk.askEscalation(uint256,uint256,(string,string,string,string,string))\",\"CaseDesk.claimVoidSubmission(uint256)\",\"CaseDesk.markAppealed(uint256)\",\"CaseDesk.startVote(uint256,uint32)\",\"CaseDesk.step(uint256)\",\"CaseDesk.submit(uint256,string,(string,string),uint256,uint256,(address,uint256,uint256,uint64,bytes))\",\"CaseDesk.tryInstantDecision(uint256,(uint256,uint256,uint256,uint256))\",\"CaseDesk.unwind(uint256)\",\"CaseDesk.wire(address,address,address,address,address)\",\"DareTrophy.approve(address,uint256)\",\"DareTrophy.mint(uint256,string)\",\"DareTrophy.safeTransferFrom(address,address,uint256)\",\"DareTrophy.safeTransferFrom(address,address,uint256,bytes)\",\"DareTrophy.setApprovalForAll(address,bool)\",\"DareTrophy.transferFrom(address,address,uint256)\",\"DevPrices.acceptOwnership()\",\"DevPrices.renounceOwnership()\",\"DevPrices.setEthUsd(uint256)\",\"DevPrices.setImdUsd(uint256)\",\"DevPrices.setYoloPriceUsd(uint256)\",\"DevPrices.transferOwnership(address)\",\"DevVesting.bindStarter()\",\"DevVesting.release(address)\",\"DisputeDesk.appeal(uint256,uint256,(address,uint256,uint256,uint64,bytes))\",\"DisputeDesk.appealAsked(uint256,uint256)\",\"DisputeDesk.askAppealSwarm(uint256,(string,string,string,string,string))\",\"DisputeDesk.callSwarm(uint256,bool,uint256,(address,uint256,uint256,uint64,bytes),(string,string,string,string,string))\",\"DisputeDesk.claimDisputer(uint256)\",\"DisputeDesk.claimVoterReward(uint256,address)\",\"DisputeDesk.claimVoterRewards(uint256[],address)\",\"DisputeDesk.dispute(uint256,string,string,(address,uint256,uint256,uint64,bytes))\",\"DisputeDesk.dropCaller(uint256)\",\"DisputeDesk.settle(uint256,uint8,(uint64,uint32,address,address,uint8,uint256,(uint256,uint256),uint64,uint16,bool))\",\"DisputeDesk.vote(uint256,uint8,address,uint256[])\",\"DisputeDesk.wire(address,address,address,address,address)\",\"HiddenList.setState((address,uint8,uint256)[],uint8)\",\"HiddenList.vote(address,uint8,uint256,bool,uint256[])\",\"IncentivesVesting.bindStarter()\",\"IncentivesVesting.release(address)\",\"NftGate.consume(address,uint256)\",\"NftGate.record(address[],uint256[])\",\"NftGate.seal(uint256)\",\"ParamsRegistry.acceptOwnership()\",\"ParamsRegistry.activateParams()\",\"ParamsRegistry.cancelAttester(address,bool)\",\"ParamsRegistry.cancelParams()\",\"ParamsRegistry.executeAttester(address,bool)\",\"ParamsRegistry.proposeAttester(address,bool)\",\"ParamsRegistry.renounceOwnership()\",\"ParamsRegistry.setNewTasksPaused(bool)\",\"ParamsRegistry.transferOwnership(address)\",\"ProjectVesting.bindStarter()\",\"ProjectVesting.release(address)\",\"ProtocolDirectory.addVersion()\",\"ProtocolDirectory.cancelCurrent()\",\"ProtocolDirectory.cancelVersion()\",\"ProtocolDirectory.proposeCurrent(uint256)\",\"ProtocolDirectory.proposeVersion((address,address,address,uint64,uint64,string))\",\"ProtocolDirectory.setCurrent()\",\"TaskVault.addTreasury(address,uint256)\",\"TaskVault.advance(uint256)\",\"TaskVault.ask((uint64,uint8,uint16,uint16,address,bytes32,bytes32,uint256),bytes)\",\"TaskVault.bindSweetener(address)\",\"TaskVault.burn(address,uint256)\",\"TaskVault.cancelTask(uint256)\",\"TaskVault.closeSubmission(uint256,uint8,uint256)\",\"TaskVault.collectBondPart(address,uint256,address,uint256)\",\"TaskVault.collectImd(address,uint256,uint256,address,(address,uint256,uint256,uint64,bytes))\",\"TaskVault.createTask(address,uint256,uint64,string,(string,string,string),uint8,uint8,string,(address,uint256,uint256,uint64,bytes))\",\"TaskVault.credit(address,address,uint256)\",\"TaskVault.fallback()\",\"TaskVault.onOracleResult(bytes32,(bytes32,uint256,bytes32,uint8,bytes,uint256,uint64,uint64,bytes32,bytes32,uint16,uint16,uint16,uint64,uint64),bytes)\",\"TaskVault.pay(address,address,uint256)\",\"TaskVault.place(uint256,uint256,bool)\",\"TaskVault.poke(uint256)\",\"TaskVault.settleValue(address,uint256,uint256)\",\"TaskVault.sweepTreasury(address)\",\"TaskVault.topUp(uint256,uint256,(address,uint256,uint256,uint64,bytes))\",\"TaskVault.withdraw(address)\",\"TaskVault.withdrawContribution(uint256)\",\"TaskVault.withdrawTo(address,address)\",\"TeamVesting.bindStarter()\",\"TeamVesting.release(address)\",\"TreasuryVesting.bindStarter()\",\"TreasuryVesting.release(address)\",\"TrophyCatalog.acceptOwnership()\",\"TrophyCatalog.addDesign(string,bytes)\",\"TrophyCatalog.renounceOwnership()\",\"TrophyCatalog.setCategoryDesign(uint8,uint256)\",\"TrophyCatalog.setDefaultDesign(uint256)\",\"TrophyCatalog.setDesignEnabled(uint256,bool)\",\"TrophyCatalog.transferOwnership(address)\",\"UniswapV3SwapAdapter.swapExactIn(address,address,uint256,uint256,uint256,bytes,address)\",\"YoloLockHub.lock(uint256,uint256)\",\"YoloLockHub.withdraw()\",\"YoloPredict.claim(uint256)\",\"YoloPredict.predict(uint256,bool,uint256)\",\"YoloPredict.settle(uint256)\",\"YoloSplitter.split(address)\",\"YoloSweetener.claimVoter(uint256,address)\",\"YoloSweetener.payout(uint256)\",\"YoloSweetener.sweeten(uint256,uint256)\",\"YoloSweetener.withdraw(uint256)\",\"YoloToken.approve(address,uint256)\",\"YoloToken.transfer(address,uint256)\",\"YoloToken.transferFrom(address,address,uint256)\"],\"files\":{\".gitignore\":5,\".gitmodules\":9,\"ADAPTATION.md\":129,\"CONTRACTS.md\":178,\"README.md\":111,\"brand/BRANDBOOK.md\":79,\"brand/avatar-400.png\":168,\"brand/favicon-16.png\":3,\"brand/favicon-32.png\":7,\"brand/mark-1024.png\":317,\"brand/mark-pixel-64.png\":6,\"brand/mark-transparent-1024.png\":385,\"brand/og-1200x630.png\":912,\"brand/sheet.png\":2363,\"brand/wordmark-2400x600.png\":283,\"brand/x-banner-1500x500.png\":725,\"docs/LAUNCH-TASK.md\":202,\"docs/MECHANICS.md\":455,\"docs/TOKENOMICS.md\":101,\"docs/YOLO.md\":289,\"foundry.lock\":11,\"foundry.toml\":33,\"landing/assets/fonts/LICENSE-ibm-plex-mono.txt\":93,\"landing/assets/fonts/LICENSE-quicksand.txt\":93,\"landing/assets/fonts/plexmono-500.woff2\":62,\"landing/assets/fonts/quicksand-500.woff2\":55,\"landing/assets/fonts/quicksand-600.woff2\":57,\"landing/assets/fonts/quicksand-700.woff2\":78,\"landing/assets/img/avatar-400.png\":168,\"landing/assets/img/dare1.jpg\":150,\"landing/assets/img/dare2.jpg\":148,\"landing/assets/img/dare3.jpg\":201,\"landing/assets/img/dare4.jpg\":140,\"landing/assets/img/favicon-16.png\":3,\"landing/assets/img/favicon-32.png\":7,\"landing/assets/img/nft-1.svg\":1,\"landing/assets/img/nft-1000.svg\":1,\"landing/assets/img/nft-4.svg\":1,\"landing/assets/img/og-1200x630.png\":912,\"landing/assets/img/toad-640.png\":459,\"landing/assets/img/wordmark.png\":221,\"landing/assets/video/poster.jpg\":297,\"landing/index.html\":286,\"landing/main.js\":396,\"landing/style.css\":490,\"script/DeployMainnet.s.sol\":187,\"script/LaunchPlan.sol\":426,\"script/check-launch-task.py\":32,\"script/snapshot/snapshot.py\":187,\"src/BuybackBurner.sol\":124,\"src/DareTrophy.sol\":220,\"src/DevPrices.sol\":129,\"src/HiddenList.sol\":297,\"src/OracleAttestation.sol\":57,\"src/ParamsRegistry.sol\":230,\"src/ProtocolDirectory.sol\":167,\"src/TaskVault.sol\":825,\"src/TrophyCatalog.sol\":119,\"src/VaultParams.sol\":250,\"src/VaultTypes.sol\":450,\"src/VotePower.sol\":54,\"src/YoloLockHub.sol\":149,\"src/YoloPredict.sol\":297,\"src/YoloSweetener.sol\":173,\"src/adapters/UniswapV3SwapAdapter.sol\":71,\"src/desks/CaseDesk.sol\":547,\"src/desks/Desk.sol\":143,\"src/desks/DeskApi.sol\":137,\"src/desks/DisputeDesk.sol\":791,\"src/helpers/AttestationChecker.sol\":66,\"src/helpers/SwarmQuestion.sol\":176,\"src/helpers/TextRules.sol\":244,\"src/interfaces/IDelegateRegistry.sol\":12,\"src/interfaces/IIntake.sol\":33,\"src/interfaces/ISwapAdapter.sol\":22,\"src/interfaces/ITaskVault.sol\":167,\"src/libraries/VoteLib.sol\":33,\"src/token/NftGate.sol\":113,\"src/token/ProjectVesting.sol\":102,\"src/token/Vestings.sol\":38,\"src/token/YoloSplitter.sol\":103,\"src/token/YoloToken.sol\":174,\"test/Adaptation.t.sol\":262,\"test/Base.t.sol\":652,\"test/BondBase.t.sol\":146,\"test/BuybackWallet.t.sol\":434,\"test/CancelTask.t.sol\":250,\"test/ContractRules.t.sol\":208,\"test/Cover.t.sol\":207,\"test/Desks.t.sol\":433,\"test/DevPrices.t.sol\":86,\"test/Directory.t.sol\":186,\"test/DisputeLinkOptional.t.sol\":82,\"test/Disputes.t.sol\":1309,\"test/Emergency.t.sol\":76,\"test/Evidence.t.sol\":338,\"test/Gas.t.sol\":183,\"test/GasTextSize.t.sol\":108,\"test/HiddenList.t.sol\":671,\"test/Hosts.t.sol\":112,\"test/Invariant.t.sol\":674,\"test/LogReconstruction.t.sol\":70,\"test/MoneyRules.t.sol\":937,\"test/OptionalFields.t.sol\":103,\"test/Payments.t.sol\":295,\"test/Scenarios.t.sol\":217,\"test/SideCalls.t.sol\":388,\"test/Swarm.t.sol\":435,\"test/Sweetener.t.sol\":379,\"test/TaskFields.t.sol\":391,\"test/TaskRules.t.sol\":201,\"test/Tasks.t.sol\":619,\"test/TextRule.t.sol\":105,\"test/Trophy.t.sol\":402,\"test/VoteBatch.t.sol\":155,\"test/VoteCountWidth.t.sol\":31,\"test/VoteGas.t.sol\":150,\"test/VotePowerFuzz.t.sol\":122,\"test/Votes.t.sol\":418,\"test/Yolo.t.sol\":138,\"test/YoloLockHub.t.sol\":487,\"test/YoloPredict.t.sol\":641,\"test/YoloPredictScenarios.t.sol\":951,\"test/YoloToken.t.sol\":742,\"test/audit/AddonAfterSub.t.sol\":52,\"test/audit/AuditA.t.sol\":74,\"test/audit/AuditB.t.sol\":314,\"test/audit/AuditC.t.sol\":264,\"test/audit/AuditNoFallbackOwnVote.t.sol\":118,\"test/audit/AuditNoMandatoryCheck.t.sol\":106,\"test/audit/AuditSweetenerBonus.t.sol\":298,\"test/audit/LateAppealAsk.t.sol\":125,\"test/audit/LazyAppealVoidWindow.t.sol\":59,\"test/audit/MaxImdInCap.t.sol\":224,\"test/audit/PredictAfterTimer.t.sol\":41,\"test/audit/PredictZeroPoints.t.sol\":84,\"test/audit/StakeFloorZeroSplit.t.sol\":41,\"test/audit/StakePowerRelock.t.sol\":64,\"test/audit/StepDeadlineAppealed.t.sol\":28,\"test/audit/StepDeadlineAsked.t.sol\":35,\"test/audit/YoloModulesAudit.t.sol\":116,\"test/audit/round2/Proof_476db268aaec.t.sol\":80,\"test/audit/round2/Proof_5d8c4edc729c.t.sol\":67,\"test/audit/round2/Proof_ced07852b14f.t.sol\":50,\"test/audit/swarm117/SwarmAudit117.t.sol\":341,\"test/audit/swarm117/VestingClockPreStart.t.sol\":92,\"test/fork/LaunchForkBase.sol\":193,\"test/fork/LaunchRehearsal.fork.t.sol\":1173,\"test/fork/UniswapV3AdapterFork.t.sol\":37,\"test/mocks/MockDelegateRegistry.sol\":26,\"test/mocks/MockERC20.sol\":31,\"test/mocks/MockIntake.sol\":120,\"test/mocks/MockNFT.sol\":17,\"test/mocks/MockPriceOracle.sol\":74,\"test/mocks/MockStarter.sol\":28,\"test/mocks/MockSwapAdapter.sol\":32,\"test/mocks/TaskRulesFixture.sol\":32,\"test/review/ReviewAttestation.t.sol\":218,\"test/review/ReviewGas.t.sol\":93,\"test/review/ReviewGasGrief.t.sol\":76,\"test/review/ReviewLaunch.t.sol\":601,\"test/review/ReviewProofFormat.t.sol\":54,\"test/review/ReviewProofLabel.t.sol\":123,\"test/review/ReviewProofs.t.sol\":166,\"test/review/ReviewQuestionSize.t.sol\":100,\"test/review/ReviewQueue.t.sol\":95,\"test/review/ReviewRoles.t.sol\":127,\"test/review/ReviewSplitAccess.t.sol\":522,\"test/review/ReviewSplitRegression.t.sol\":402,\"test/review/ReviewSwarmOrders.t.sol\":88,\"test/review/ReviewSweetener.t.sol\":304,\"test/review/ReviewYolo.t.sol\":96},\"excluded\":[\"lib/\",\"node_modules/\"],\"truncated\":true}","passed":true},{"durationMs":20735,"exitCode":0,"name":"slither","output":"[high/high] arbitrary-send-erc20 at src/TaskVault.sol:542: TaskVault.collectBondPart(address,uint256,address,uint256) (src/TaskVault.sol#542-559) uses arbitrary from in transferFrom: IERC20(currency).safeTransferFrom(from,address(this),amount) (src/TaskVault.sol#556)\n[high/medium] arbitrary-send-eth at src/BuybackBurner.sol:92: BuybackBurner.forward(address) (src/BuybackBurner.sol#92-108) sends eth to arbitrary user\n[high/medium] arbitrary-send-eth at src/TaskVault.sol:761: TaskVault._collectImd(address,uint256,uint256,address,ImdPay) (src/TaskVault.sol#761-808) sends eth to arbitrary user\n[high/medium] reentrancy-balance at src/TaskVault.sol:591: Reentrancy in TaskVault.ask(AskTerms,bytes) (src/TaskVault.sol#591-630):\n[high/medium] reentrancy-balance at src/TaskVault.sol:761: Reentrancy in TaskVault._collectImd(address,uint256,uint256,address,ImdPay) (src/TaskVault.sol#761-808):\n[high/medium] reentrancy-balance at src/TaskVault.sol:761: Reentrancy in TaskVault._collectImd(address,uint256,uint256,address,ImdPay) (src/TaskVault.sol#761-808):\n[high/medium] reentrancy-balance at src/TaskVault.sol:761: Reentrancy in TaskVault._collectImd(address,uint256,uint256,address,ImdPay) (src/TaskVault.sol#761-808):\n[high/medium] reentrancy-eth at src/TaskVault.sol:761: Reentrancy in TaskVault._collectImd(address,uint256,uint256,address,ImdPay) (src/TaskVault.sol#761-808):\n[high/medium] reentrancy-eth at src/TaskVault.sol:251: Reentrancy in TaskVault.createTask(address,uint256,uint64,string,TaskRules,uint8,uint8,string,ImdPay) (src/TaskVault.sol#251-308):\n[high/high] uninitialized-state at src/YoloLockHub.sol:123: YoloLockHub._history (src/YoloLockHub.sol#45) is never initialized. It is used in:\n[medium/medium] divide-before-multiply at src/YoloLockHub.sol:64: YoloLockHub.lock(uint256,uint256) (src/YoloLockHub.sol#64-89) performs a multiplication on the result of a division:\n[medium/medium] divide-before-multiply at src/YoloLockHub.sol:64: YoloLockHub.lock(uint256,uint256) (src/YoloLockHub.sol#64-89) performs a multiplication on the result of a division:\n[medium/high] incorrect-equality at src/ProtocolDirectory.sol:88: ProtocolDirectory.addVersion() (src/ProtocolDirectory.sol#88-94) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/YoloLockHub.sol:64: YoloLockHub.lock(uint256,uint256) (src/YoloLockHub.sol#64-89) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/TaskVault.sol:727: TaskVault._credit(address,address,uint256) (src/TaskVault.sol#727-731) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/BuybackBurner.sol:92: BuybackBurner.forward(address) (src/BuybackBurner.sol#92-108) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/token/YoloToken.sol:128: YoloToken._sellTax(uint256,uint256) (src/token/YoloToken.sol#128-131) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/TaskVault.sol:748: TaskVault._trySend(address,address,uint256,uint256) (src/TaskVault.sol#748-756) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/BuybackBurner.sol:83: BuybackBurner.burnYolo() (src/BuybackBurner.sol#83-88) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/desks/CaseDesk.sol:170: CaseDesk.step(uint256) (src/desks/CaseDesk.sol#170-233) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/ProtocolDirectory.sol:114: ProtocolDirectory.setCurrent() (src/ProtocolDirectory.sol#114-123) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/token/ProjectVesting.sol:90: ProjectVesting.release(address) (src/token/ProjectVesting.sol#90-101) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/desks/CaseDesk.sol:511: CaseDesk._stakeBps(SubmitTerms,address,ParamsCore) (src/desks/CaseDesk.sol#511-529) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/desks/CaseDesk.sol:170: CaseDesk.step(uint256) (src/desks/CaseDesk.sol#170-233) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/BuybackBurner.sol:92: BuybackBurner.forward(address) (src/BuybackBurner.sol#92-108) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/token/NftGate.sol:107: NftGate.consume(address,uint256) (src/token/NftGate.sol#107-112) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/YoloLockHub.sol:92: YoloLockHub.withdraw() (src/YoloLockHub.sol#92-100) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/ParamsRegistry.sol:98: ParamsRegistry.activateParams() (src/ParamsRegistry.sol#98-108) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/YoloLockHub.sol:140: YoloLockHub._checkpoint(address,uint96,uint64,uint32) (src/YoloLockHub.sol#140-148) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/token/ProjectVesting.sol:74: ProjectVesting.vestedAmount(address,uint256) (src/token/ProjectVesting.sol#74-82) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/TaskVault.sol:734: TaskVault._refundUnbooked(address,address,uint256) (src/TaskVault.sol#734-740) uses a dangerous strict equality:\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:170: Reentrancy in CaseDesk.step(uint256) (src/desks/CaseDesk.sol#170-233):\n[medium/medium] reentrancy-no-eth at src/TaskVault.sol:182: Reentrancy in TaskVault.fallback() (src/TaskVault.sol#182-201):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:170: Reentrancy in CaseDesk.step(uint256) (src/desks/CaseDesk.sol#170-233):\n[medium/medium] reentrancy-no-eth at src/desks/DisputeDesk.sol:254: Reentrancy in DisputeDesk.callSwarm(uint256,bool,uint256,ImdPay,RuleTexts) (src/desks/DisputeDesk.sol#254-274):\n[medium/medium] reentrancy-no-eth at src/YoloPredict.sol:181: Reentrancy in YoloPredict.settle(uint256) (src/YoloPredict.sol#181-226):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:260: Reentrancy in CaseDesk.askEscalation(uint256,uint256,RuleTexts) (src/desks/CaseDesk.sol#260-267):\n[medium/medium] reentrancy-no-eth at src/desks/DisputeDesk.sol:622: Reentrancy in DisputeDesk._settleDecided(uint256,Facts,bool,bool,ParamsCore) (src/desks/DisputeDesk.sol#622-713):\n[medium/medium] reentrancy-no-eth at src/TaskVault.sol:636: Reentrancy in TaskVault._advance(uint256) (src/TaskVault.sol#636-647):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:408: Reentrancy in CaseDesk._askAppeal(uint256,uint256,ParamsCore,RuleTexts) (src/desks/CaseDesk.sol#408-427):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:460: Reentrancy in CaseDesk._finalize(uint256,Outcome) (src/desks/CaseDesk.sol#460-485):\n[medium/medium] reentrancy-no-eth at src/desks/DisputeDesk.sol:573: Reentrancy in DisputeDesk._settleNeutral(uint256,Facts) (src/desks/DisputeDesk.sol#573-582):\n[medium/medium] reentrancy-no-eth at src/desks/DisputeDesk.sol:500: Reentrancy in DisputeDesk.settle(uint256,Outcome,Facts) (src/desks/DisputeDesk.sol#500-516):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:170: Reentrancy in CaseDesk.step(uint256) (src/desks/CaseDesk.sol#170-233):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:74: Reentrancy in CaseDesk.submit(uint256,string,Evidence,uint256,uint256,ImdPay) (src/desks/CaseDesk.sol#74-137):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:170: Reentrancy in CaseDesk.step(uint256) (src/desks/CaseDesk.sol#170-233):\n[medium/medium] reentrancy-no-eth at src/desks/DisputeDesk.sol:493: Reentrancy in DisputeDesk.dropCaller(uint256) (src/desks/DisputeDesk.sol#493-496):\n[medium/medium] reentrancy-no-eth at src/YoloPredict.sol:230: Reentrancy in YoloPredict.claim(uint256) (src/YoloPredict.sol#230-264):\n[medium/medium] reentrancy-no-eth at src/TaskVault.sol:335: Reentrancy in TaskVault.withdrawContribution(uint256) (src/TaskVault.sol#335-347):\n[medium/medium] reentrancy-no-eth at src/desks/DisputeDesk.sol:384: Reentrancy in DisputeDesk.claimVoterRewards(uint256[],address) (src/desks/DisputeDesk.sol#384-413):\n[medium/medium] reentrancy-no-eth at src/TaskVault.sol:365: Reentrancy in TaskVault.cancelTask(uint256) (src/TaskVault.sol#365-376):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:408: Reentrancy in CaseDesk._askAppeal(uint256,uint256,ParamsCore,RuleTexts) (src/desks/CaseDesk.sol#408-427):\n[medium/medium] reentrancy-no-eth at src/TaskVault.sol:314: Reentrancy in TaskVault.topUp(uint256,uint256,ImdPay) (src/TaskVault.sol#314-329):\n[medium/medium] reentrancy-no-eth at src/desks/DisputeDesk.sol:622: Reentrancy in DisputeDesk._settleDecided(uint256,Facts,bool,bool,ParamsCore) (src/desks/DisputeDesk.sol#622-713):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:140: Reentrancy in CaseDesk.claimVoidSubmission(uint256) (src/desks/CaseDesk.sol#140-155):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:74: Reentrancy in CaseDesk.submit(uint256,string,Evidence,uint256,uint256,ImdPay) (src/desks/CaseDesk.sol#74-137):\n[medium/medium] reentrancy-no-eth at src/desks/DisputeDesk.sol:622: Reentrancy in DisputeDesk._settleDecided(uint256,Facts,bool,bool,ParamsCore) (src/desks/DisputeDesk.sol#622-713):\n[medium/medium] reentrancy-no-eth at src/desks/CaseDesk.sol:408: Reentrancy in CaseDesk._askAppeal(uint256,uint256,ParamsCore,RuleTexts) (src/desks/CaseDesk.sol#408-427):\n[medium/medium] uninitialized-local at src/desks/DisputeDesk.sol:385: DisputeDesk.claimVoterRewards(uint256[],address).imdTotal (src/desks/DisputeDesk.sol#385) is a local variable never initialized\n[medium/medium] uninitialized-local at src/DareTrophy.sol:175: DareTrophy.badge(uint8).w (src/DareTrophy.sol#175) is a local variable never initialized\n[medium/medium] uninitialized-local at src/token/NftGate.sol:67: NftGate.record(address[],uint256[]).total (src/token/NftGate.sol#67) is a local variable never initialized\n[medium/medium] uninitialized-local at src/desks/DisputeDesk.sol:345: DisputeDesk.claimDisputer(uint256).payout (src/desks/DisputeDesk.sol#345) is a local variable never initialized\n[medium/medium] uninitialized-local at src/desks/DisputeDesk.sol:733: DisputeDesk._payReward(uint256,Facts,bool,ParamsCore).bonus (src/desks/DisputeDesk.sol#733) is a local variable never initialized\n[medium/medium] uninitialized-local at src/YoloPredict.sol:198: YoloPredict.settle(uint256).toAuthor (src/YoloPredict.sol#198) is a local variable never initialized\n[medium/medium] uninitialized-local at src/YoloLockHub.sol:125: YoloLockHub._pointBefore(address,uint256).lo (src/YoloLockHub.sol#125) is a local variable never initialized\n[medium/medium] uninitialized-local at src/VotePower.sol:39: VotePower.mayVote(address,uint256).owner (src/VotePower.sol#39) is a local variable never initialized\n[medium/medium] uninitialized-local at src/helpers/TextRules.sol:76: TextLib.checkCover(string).scheme (src/helpers/TextRules.sol#76) is a local variable never initialized\n[medium/medium] uninitialized-local at src/desks/DisputeDesk.sol:295: DisputeDesk._fundCall(Appeal,uint256,SubCore,uint256,uint256,ParamsCore,ImdPay).fromBond (src/desks/DisputeDesk.sol#295) is a local variable never initialized\n[medium/medium] uninitialized-local at src/helpers/SwarmQuestion.sol:141: SwarmQuestionBuilder.buildFor(address,uint256,uint8,uint256,RuleTexts).q (src/helpers/SwarmQuestion.sol#141) is a local variable never initialized\n[medium/medium] uninitialized-local at src/desks/DisputeDesk.sol:389: DisputeDesk.claimVoterRewards(uint256[],address).any (src/desks/DisputeDesk.sol#389) is a local variable never initialized\n[medium/medium] uninitialized-local at src/YoloSweetener.sol:145: YoloSweetener.payout(uint256).extra (src/YoloSweetener.sol#145) is a local variable never initialized\n[medium/medium] uninitialized-local at src/YoloPredict.sol:200: YoloPredict.settle(uint256).burnt (src/YoloPredict.sol#200) is a local variable never initialized\n[medium/medium] uninitialized-local at src/YoloPredict.sol:197: YoloPredict.settle(uint256).doer (src/YoloPredict.sol#197) is a local variable never initialized\n[medium/medium] uninitialized-local at src/YoloPredict.sol:199: YoloPredict.settle(uint256).toDoer (src/YoloPredict.sol#199) is a local variable never initialized\n[medium/medium] uninitialized-local at src/desks/DisputeDesk.sol:388: DisputeDesk.claimVoterRewards(uint256[],address).n (src/desks/DisputeDesk.sol#388) is a local variable never initialized\n[medium/medium] uninitialized-local at src/YoloPredict.sol:238: YoloPredict.claim(uint256).pay (src/YoloPredict.sol#238) is a local variable never initialized\n[medium/medium] uninitialized-local at src/desks/CaseDesk.sol:522: CaseDesk._stakeBps(SubmitTerms,address,ParamsCore).r (src/desks/CaseDesk.sol#522) is a local variable never initialized\n[medium/medium] uninitialized-local at src/TaskVault.sol:553: TaskVault.collectBondPart(address,uint256,address,uint256).noSwap (src/TaskVault.sol#553) is a local variable never initialized\n[medium/medium] uninitialized-local at src/desks/DisputeDesk.sol:294: DisputeDesk._fundCall(Appeal,uint256,SubCore,uint256,uint256,ParamsCore,ImdPay).bond (src/desks/DisputeDesk.sol#294) is a local variable never initialized\n[medium/medium] uninitialized-local at src/desks/DisputeDesk.sol:390: DisputeDesk.claimVoterRewards(uint256[],address).sweet (src/desks/DisputeDesk.sol#390) is a local variable never initialized\n[medium/medium] uninitialized-local at src/YoloSweetener.sol:139: YoloSweetener.payout(uint256).toVoters (src/YoloSweetener.sol#139) is a local variable never initialized\n[medium/medium] unused-return at src/desks/DisputeDesk.sol:136: DisputeDesk.vote(uint256,uint8,address,uint256[]) (src/desks/DisputeDesk.sol#136-191) ignores return value by (None,None,instantDelta,minWallets) = ParamsRegistry(registry).voteParams(version) (src/desks/DisputeDesk.sol#185)\n[medium/medium] unused-return at src/YoloSweetener.sol:160: YoloSweetener.claimVoter(uint256,address) (src/YoloSweetener.sol#160-172) ignores return value by (n,None) = vault.votesOf(subId,payTo) (src/YoloSweetener.sol#162)\n[medium/medium] unused-return at src/helpers/AttestationChecker.sol:49: AttestationChecker.check(address,uint16,uint16,OracleAttestation.Attestation,bytes) (src/helpers/AttestationChecker.sol#49-65) ignores return value by (signer,err,None) = ECDSA.tryRecover(digest(consumer,a),signature) (src/helpers/AttestationChecker.sol#62)\n[medium/medium] unused-return at src/desks/DisputeDesk.sol:233: DisputeDesk.askAppealSwarm(uint256,RuleTexts) (src/desks/DisputeDesk.sol#233-240) ignores return value by ICaseDesk(caseDesk).advanced(subId) (src/desks/DisputeDesk.sol#236)\n[medium/medium] unused-return at src/TaskVault.sol:761: TaskVault._collectImd(address,uint256,uint256,address,ImdPay) (src/TaskVault.sol#761-808) ignores return value by ISwapAdapter(adapter).swapExactIn(address(usdc_),address(imd_),payIn.amountIn,payIn.minImdOut,payIn.deadline,payIn.route,address(this)) (src/TaskVault.sol#790-799)\n[medium/medium] unused-return at src/desks/CaseDesk.sol:437: CaseDesk._swarmStatus(bytes32,ParamsCore) (src/desks/CaseDesk.sol#437-454) ignores return value by (completed) = IIntake(p.intake).requests(rid) (src/desks/CaseDesk.sol#450-452)\n[medium/medium] unused-return at src/TaskVault.sol:761: TaskVault._collectImd(address,uint256,uint256,address,ImdPay) (src/TaskVault.sol#761-808) ignores return value by ISwapAdapter(adapter).swapExactIn{value: payIn.amountIn}(ETH,address(imd_),payIn.amountIn,payIn.minImdOut,payIn.deadline,payIn.route,address(this)) (src/TaskVault.sol#782-784)\n[low/medium] missing-zero-check at src/adapters/UniswapV3SwapAdapter.sol:38: UniswapV3SwapAdapter.constructor(ISwapRouter02,address).weth_ (src/adapters/UniswapV3SwapAdapter.sol#38) lacks a zero-check on :\n[low/medium] missing-zero-check at src/desks/CaseDesk.sol:48: CaseDesk.constructor(address,address,address,address,address,address,address).yolo_ (src/desks/CaseDesk.sol#48) lacks a zero-check on :\n[low/medium] missi","passed":false}],"detail":"static analysis found arbitrary-send-erc20 at src/TaskVault.sol:542: TaskVault.collectBondPart(address,uint256,address,uint256) (src/TaskVault.sol#542-559) uses arbitrary from in transferFrom: IERC20(currency).safeTransferFrom(from,address(this),amount) (src/TaskVault.sol#556)","evaluation":"checks","profile":"foundry","status":"rejected","submissionHash":"f99e3cd36da4241158f5bc8141bda57c9f06ce01909054a05bf0d50894c957a3","verifiedTreeHash":"90ca25dc81d6fd5bdd1dc3fc16a2247909a9ee2a","verifierVersion":"0.1.0+a26ee00d"}]}