{"assessments":[],"deployments":[{"attestationHash":"321e7871891a0a7a50c3d598c168bf6d447d71e3328b9e73386f613d8f83cfd8","chainId":1,"contracts":[{"address":"0x0b495e1e2c40ef2ae8f45b7857f1d98fd4469915","blockNumber":26272730,"name":"DareComments","role":"other","txHash":"0xefe223b7acf42c0c99db61e334c292b5d445c5c2c8901bc4eb27fa37d6b75a18"}],"id":"e0c59b3f-1858-4f0f-b8dc-46bce10be277","manifestHash":"5c1e1da8e15ad7c1eaa60913967c711a037a1abc8097961df88e60c7b9a40cb3","status":"live"}],"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":"ad6d8aa7-50bf-485a-b6a4-d0785a0d31b0","kind":"shape:chain","nodes":[{"acceptedSubmissionHash":"bb30630f99eb56146db391bc695868653ec3c3aa7aa14381466d9831203f896f","dependsOn":["audit_imported_code"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"ea5db8ea23a93d7611f9ab749d6255ad6596ee76a985c1261d43e63612dfc3cf","skillId":"adapt-contract-project","tools":[]},"key":"adapt_contract_project","kind":"code","role":"implement","skillHash":"ea5db8ea23a93d7611f9ab749d6255ad6596ee76a985c1261d43e63612dfc3cf","skillId":"adapt-contract-project","state":"accepted"},{"acceptedSubmissionHash":"f46e12794bb1a201db86b53aed99c8b6f57a898ecde5d18245d44e837c025d2d","dependsOn":["adapt_contract_project"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"bc5bfc8455464381f2db18badb2b55cf8bec1e535c019349a0378fa990741171","skillId":"audit-specialist","subagents":3,"tools":[]},"key":"audit_economics","kind":"code","role":"review","skillHash":"bc5bfc8455464381f2db18badb2b55cf8bec1e535c019349a0378fa990741171","skillId":"audit-specialist","state":"accepted"},{"acceptedSubmissionHash":"3486ee4768377fb5fcf75962c60061c407ba41fdbd06640321a836a6bfd07d31","dependsOn":["adapt_contract_project"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"bc5bfc8455464381f2db18badb2b55cf8bec1e535c019349a0378fa990741171","skillId":"audit-specialist","subagents":3,"tools":[]},"key":"audit_flow","kind":"code","role":"review","skillHash":"bc5bfc8455464381f2db18badb2b55cf8bec1e535c019349a0378fa990741171","skillId":"audit-specialist","state":"accepted"},{"acceptedSubmissionHash":"a41f523ab8e438ccd84aa310cf01386ab24cbeb0b9012457f9f6ba3577cffaec","dependsOn":[],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"b72293c3366fff3f0b93151bca72cc6cbd189dad31d1ccd1d34dd483f2165a36","skillId":"audit-imported-code","subagents":4,"tools":[]},"key":"audit_imported_code","kind":"code","role":"review","skillHash":"b72293c3366fff3f0b93151bca72cc6cbd189dad31d1ccd1d34dd483f2165a36","skillId":"audit-imported-code","state":"accepted"},{"acceptedSubmissionHash":"56271c4145c29072394bac46d41d30c4381197570da2576f3e6208bd696d0443","dependsOn":["adapt_contract_project","write_foundry_tests","manifest","audit_math","audit_permissions","audit_economics","audit_flow"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"b89279670f5a00f5d26286edee00c97dd158b997031350a01cafe6e0329ad227","skillId":"audit-judge","subagents":4,"tools":[]},"key":"audit_judge","kind":"code","role":"review","skillHash":"b89279670f5a00f5d26286edee00c97dd158b997031350a01cafe6e0329ad227","skillId":"audit-judge","state":"accepted"},{"acceptedSubmissionHash":"e0ab36948a737fb4602a474c4dcd4b0cb5bfce73b5395767080326c905f17282","dependsOn":["adapt_contract_project"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"bc5bfc8455464381f2db18badb2b55cf8bec1e535c019349a0378fa990741171","skillId":"audit-specialist","subagents":3,"tools":[]},"key":"audit_math","kind":"code","role":"review","skillHash":"bc5bfc8455464381f2db18badb2b55cf8bec1e535c019349a0378fa990741171","skillId":"audit-specialist","state":"accepted"},{"acceptedSubmissionHash":"acfb907de5a6c9ca9a6fe56416846a780064e20f4919b5fd75f6811cca73a5d9","dependsOn":["adapt_contract_project"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"bc5bfc8455464381f2db18badb2b55cf8bec1e535c019349a0378fa990741171","skillId":"audit-specialist","subagents":3,"tools":[]},"key":"audit_permissions","kind":"code","role":"review","skillHash":"bc5bfc8455464381f2db18badb2b55cf8bec1e535c019349a0378fa990741171","skillId":"audit-specialist","state":"accepted"},{"acceptedSubmissionHash":"bf0f75c707481905246e65a130725efaed7d74103597f221d14de6cbf285ea06","dependsOn":["adapt_contract_project"],"execution":{"network":false,"profile":"foundry","requires":[],"tools":[]},"key":"manifest","kind":"code","role":"integrate","skillHash":null,"skillId":null,"state":"accepted"},{"acceptedSubmissionHash":"2af1d44197262cae91d96141e4e4e751f57c173f58b3813295a287b51ed9b0e2","dependsOn":["adapt_contract_project"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"606842ccca0e7c5d3017a54684625438eab9b351eb51dcf0cf88c43d1ea41464","skillId":"write-foundry-tests","subagents":4,"tools":[]},"key":"write_foundry_tests","kind":"code","role":"tests","skillHash":"606842ccca0e7c5d3017a54684625438eab9b351eb51dcf0cf88c43d1ea41464","skillId":"write-foundry-tests","state":"accepted"}],"objective":"Launch the comments contract of moneycanbuy.fun as it is: DareComments, an evm_contracts launch from this repository on Ethereum mainnet (no token), one contract. It stands alone: it reads no other contract and no other contract reads it.\n\nContracts, in this order:\n1. DareComments, constructorArgs []\n\nDareComments keeps the comments under the tasks and proofs of moneycanbuy.fun as events. post(vault, kind, targetId, parentId, text): kind 1 a task, 2 a proof, any other kind reverts BadKind; text is 1..500 bytes of UTF-8, otherwise BadText; parentId 0 is a top-level comment, otherwise it must be the id of a comment of the same (vault, kind, targetId), otherwise BadParent. Ids are global and start at 1; count is the last id handed out. Every post emits Comment(uint256 indexed id, address indexed vault, uint256 indexed targetId, uint8 kind, uint256 parentId, address author, string text, uint256 prevBlock) with author = msg.sender and prevBlock = the block of the previous comment of the same (vault, kind, targetId), 0 for its first. lastBlock(vault, kind, targetId) returns the block of the newest comment of that thread, 0 when it has none. A reader without an archive node walks back from lastBlock along prevBlock with getLogs of single blocks. Hiding a comment is not part of this contract: the site's hide list HiddenList, already deployed, takes (the DareComments address, 3, id) like any other item.\n\nFixed parameters, fail, don't change: no constructor arguments; kinds 1 and 2 only; at most 500 bytes of text and at least 1; ids from 1; the functions post(address,uint8,uint256,uint256,string) returning the new id, lastBlock(address,uint8,uint256), count(), KIND_TASK() = 1, KIND_PROOF() = 2, MAX_TEXT() = 500; the event Comment with exactly the fields above, in that order, the first three indexed; the errors BadKind(), BadText(), BadParent(). The site decodes exactly these; if a reproduced finding would need any of them changed, fail the job instead of changing it.\n\nDareComments has no owner, no admin, no role, no pause and no upgrade path; no payable function, no receive or fallback, no token call and no external call; it holds no money. The constructor is empty.\n\nKnown limitations (accepted rules, not findings): anyone may post, gas is the only cost and there is no rate limit; vault and targetId are not checked against any contract (the site shows only items that exist); the text is any UTF-8 and is not filtered (the site renders it as plain text and hides through HiddenList); a reply may answer a reply, depth is unlimited; count and lastBlock only grow, nothing is ever deleted.\n\nThe tests must keep passing: forge test (709 tests), of them 19 in test/DareComments.t.sol for this contract.\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. Do not change the fixed parameters above, and do not add an owner, a pause, an upgrade path, a fee, a payable function or a token call.\nKnown limitations listed in docs are accepted rules, not findings; do not change them.","parentJobId":null,"planHash":"c6f49d7dcbfeddc79aa5e16c273900922c6781bd5e7af09ad15a44d36889732c","previousHash":"66dfdd5f7591dafaa1b46d9b3e891e2c4140df4b6b031de48f1c81fc8a963038","projectId":"ad6d8aa7-50bf-485a-b6a4-d0785a0d31b0","publication":{"commit":"5899895d6a02b30564acc8fcc6e026da0b8e1f04","deliveredAt":"2026-10-25T22:27:55.867Z","repoUrl":"https://github.com/identity-md-launches/launch-2579-launch-comments-contract-moneycanbuy-fun"},"receiptIdentity":{"adapter":"0xde152afb7db5373f34876e1499fbd893a82dd336","chainId":1,"collection":"0x0000ec93127baa929e58e97dd0095a2bfb38ec1d","registry":"0x8004a169fb4a3325136eb29fa0ceb6d2e539a432"},"registry":"0xb6d0a187b050fa5bb0b87033a203f37becf4a775","research":[],"schema":"identitymd-work-v1","signals":[],"site":null,"snapshotHash":"b30778ab14231c3bfaeb611c36f3c27f28d7ed7d8a930c1116e5c14629cd7dcd","state":"completed","submissions":[{"artifacts":[],"attempt":1,"bundleHash":"4362d8a370f5c11b43d9ef2218fb529546b519d9b3bc3256293e1717e28730f8","device":"72f49cf84b9ab056","findings":[{"description":"The brief (docs/LAUNCH-COMMENTS.md:18) says: 'text is 1..500 bytes of UTF-8, otherwise BadText'. post only checks the byte length (len == 0 || len > MAX_TEXT). Solidity does not check UTF-8 for `string calldata`, so any byte string of 1..500 bytes is accepted and emitted in Comment. The known limitation 'the text is any UTF-8 and is not filtered' covers content filtering of valid UTF-8, not bytes that are not UTF-8. Impact: a strict off-chain decoder (for example ethers v6 Interface.parseLog/toUtf8String, which throws on bad UTF-8 by default) cannot decode such a Comment log. A reader that decodes the whole event to get prevBlock then stops at that comment, so with one malformed post anyone can hide the older part of a thread from readers that walk back from lastBlock. Lenient decoders (TextDecoder non-fatal) show U+FFFD instead. No funds are involved: the contract holds none. Fix options for the requester: (a) validate UTF-8 in post and revert BadText (adds gas per byte, keeps the ABI); or (b) state that the text is any bytes and require readers to decode leniently, or to read prevBlock as the raw data word at offset 0x80. Choosing between them is the requester's call. The tests submitted with this job do not assert either behaviour for non-UTF-8 input.","line":50,"path":"src/DareComments.sol","proof":"// SPDX-License-Identifier: MIT\npragma solidity ^0.8.28;\n\nimport {Test} from \"forge-std/Test.sol\";\nimport {DareComments} from \"src/DareComments.sol\";\n\n/// @dev The brief: \"text is 1..500 bytes of UTF-8, otherwise BadText\". Bytes that are not UTF-8 must revert BadText.\ncontract DareCommentsInvalidUtf8Test is Test {\n    DareComments c;\n\n    function setUp() public {\n        c = new DareComments();\n    }\n\n    function _expectBadText(bytes memory raw) internal {\n        vm.expectRevert(DareComments.BadText.selector);\n        c.post(address(0xBA07), 1, 1, 0, string(raw));\n    }\n\n    function test_LoneContinuationByteReverts() public {\n        _expectBadText(hex\"80\");\n    }\n\n    function test_FFByteReverts() public {\n        _expectBadText(hex\"ff\");\n    }\n\n    function test_TruncatedTwoByteSequenceReverts() public {\n        _expectBadText(hex\"6869c3\");\n    }\n\n    function test_OverlongSlashReverts() public {\n        _expectBadText(hex\"c0af\");\n    }\n\n    function test_SurrogateReverts() public {\n        _expectBadText(hex\"eda080\");\n    }\n\n    function test_ValidUtf8StillAccepted() public {\n        assertEq(c.post(address(0xBA07), 1, 1, 0, unicode\"café 🐸\"), 1);\n    }\n}","reproduction":"post(0x000000000000000000000000000000000000BA07, 1, 1, 0, string(hex\"ff\")) (and also hex\"80\", hex\"6869c3\", hex\"c0af\", hex\"eda080\"). Expected: revert BadText(). Actual: returns id 1 and emits Comment with the raw bytes. Valid UTF-8 (unicode\"café 🐸\") is still accepted. forge test --match-path on the proof: 5 failed with 'next call did not revert as expected', 1 passed.","severity":"low","title":"post accepts text that is not UTF-8; the brief requires BadText for it"}],"hash":"2af1d44197262cae91d96141e4e4e751f57c173f58b3813295a287b51ed9b0e2","nodeId":"81323d6b-2d6e-44eb-9021-d46c65cf4ace","outcome":"completed","summary":"I added two test files for DareComments. The full suite passes with the verifier's seed: 738 passed, 0 failed, 4 skipped (the fork tests, which need an RPC) across 94 suites. The 19 original tests in `test/DareComments.t.sol` and the earlier contributor's 8 launch tests are unchanged. `forge build` succeeds.\n\n**What I added**\n- **`test/DareCommentsInvariant.t.sol`**: invariant tests over random call sequences (256 runs × 60 calls). A handler posts from 4 authors into 3 vaults × 4 targets. It sends a mix of valid and invalid kinds, text lengths (0, 1–500, exactly 500, 501–700) and parents (none, existing, future, random), in the same block or later ones. It also tries to send ETH three ways. The handler keeps its own record of what the brief says should happen and checks every call against it: the returned id, the exact error on a revert, no event and no change to `count` on a revert, and every topic and data field of the event. The invariants checked after each sequence are:\n  - no mismatch was seen;\n  - `count` equals the number of accepted posts;\n  - the balance stays 0;\n  - every thread's `lastBlock` is the block of its newest comment, and 0 for kinds 0 and 3;\n  - walking back from `lastBlock` along `prevBlock`, one block at a time, finds every comment exactly once and ends at 0.\n\n  I checked separately that the handler isn't vacuous: in a fixed run of 200 calls it accepted 44 posts and rejected 156, with no mismatches.\n- **`test/DareCommentsFuzz.t.sol`**: 20 fuzz and unit tests for the failure paths:\n  - text lengths 0–1200, plus the exact boundaries on each side;\n  - every possible `kind` value;\n  - the order of the checks (kind, then text, then parent);\n  - any parent id against three threads, including a comment's own id and the id of a reverted post;\n  - a reply chain 40 deep;\n  - the author is the direct caller (`msg.sender`), including when posting through another contract;\n  - ids are global and in sequence;\n  - threads never share a `lastBlock`;\n  - a rejected post changes no state and emits no log;\n  - malformed calldata reverts: a dirty address or `kind` word, truncated input, or a bad text offset or length.\n\n**Finding (low), written to `.imd-findings.json` with a failing proof test**\n`post` accepts text that isn't valid UTF-8, for example `hex\"ff\"`, `hex\"80\"`, a cut-off sequence, an overlong encoding or a surrogate. The brief says \"text is 1..500 bytes of UTF-8, otherwise BadText\", but the contract only checks the length (`src/DareComments.sol:50`). The proof expects `BadText`; on the current code 5 of its tests fail and the valid-UTF-8 control passes.\n\nThe possible impact: a strict decoder such as ethers v6 can't decode that event. A site reader that decodes the whole event to get `prevBlock` would then stop at that comment, so one bad post could hide the older part of a thread. Whether the site is affected depends on its decoder, which I haven't seen.\n\nThe fix is a decision for you, since it isn't covered by the fixed parameters:\n- **Check UTF-8 on chain:** costs extra gas per byte; the ABI stays the same.\n- **Change the documentation:** say the text is any bytes, and have readers decode leniently or read `prevBlock` directly from the raw event data.\n\nMy tests don't assert either behaviour for non-UTF-8 input.\n\n**Other notes**\n- I found nothing else. The contract has a single entry point that changes state, makes no external calls, holds no value, and its counter can't overflow.\n- I didn't change any contract. `ADAPTATION.md` is outside the paths I'm allowed to write, so it doesn't mention this work.","treeHash":"039621afe247a2b670c6f1f095e1bdada4da990e","usage":{"cachedInputTokens":555808,"inputTokens":24,"model":"claude-opus-5-5","outputTokens":18519,"runtime":"claude","turns":13,"wallClockMs":777998}},{"artifacts":[],"attempt":1,"bundleHash":null,"device":"e67cc6ec4009b226","findings":[],"hash":"3486ee4768377fb5fcf75962c60061c407ba41fdbd06640321a836a6bfd07d31","nodeId":"17a75248-a91e-408f-8aed-fd333e95249f","outcome":"completed","summary":"The review is complete. The findings file holds an empty findings list and a 119-row coverage record.\n\n**Result: no defect found in DareComments.** I audited `src/DareComments.sol` as it arrived against the Execution Trace, Periphery and First Principles guides, with the Senior Auditor's Mindset passes (Feynman, Socratic, Inversion) on its single state-changing function.\n\n**What I traced**\n\n- **post:** the three guards run before any write. BadKind on anything but 1 or 2, BadText on 0 or more than 500 calldata bytes, BadParent when `_thread[parentId]` does not equal the keccak of the caller's own tuple. Parent 0 is never written, so it is only ever top level. A parent equal to the next id, a future id, or a comment in another vault, kind or target is refused. After the checks the id is assigned, the thread key stored, the previous block read before it is overwritten, and the event emitted in the fixed field order. No revert can follow a write.\n- **Calldata edges:** a kind word of 257, a string length past the end of calldata, and an offset outside calldata all revert with no state change. Author is msg.sender, including when the caller is a contract.\n- **Deployment and periphery:** empty nonpayable constructor, no role to the factory, no receive or fallback, no external call or creation opcode in the reachable runtime, 932 bytes, bytecode_hash none, no launch.json in the tree. HiddenList's key hashes any kind, so the (DareComments, 3, id) integration works as the brief states.\n- **Reader chain:** prevBlock equal to the current block for same-block comments, and the unindexed kind, are documented reader rules in docs/LAUNCH-COMMENTS.md and match the fixed spec, so they are not findings.\n\n**Tests**\n\n| Suite | Result |\n| --- | --- |\n| test/DareComments.t.sol | 19 passed |\n| test/review/DareCommentsLaunch.t.sol | 8 passed |\n| scratch probes (8, removed afterwards) | 8 passed |\n| full forge test | 717 passed, 4 skipped |\n\nThe full run matches the 709-test baseline plus the 8 review tests. The 4 skipped are the fork tests.\n\n**Coverage record:** DareComments.post is marked holds with the traced path. The two HiddenList entry points are holds for the kind-3 key only. The remaining entry points belong to contracts outside this one-contract launch that DareComments neither calls nor is read by, so they are marked holds as untouched by the audited area, with the reason line saying they were not traced. Five extra rows cover the constructor, the absent receive and fallback, the views and constants, the prevBlock chain invariant, and the runtime opcode check.","treeHash":null,"usage":{"cachedInputTokens":491296,"inputTokens":258,"model":"claude-fable-5-1","outputTokens":14874,"runtime":"claude","turns":19,"wallClockMs":820388}},{"artifacts":[],"attempt":2,"bundleHash":null,"device":"2bdd77125ec75e6c","findings":[{"citation":"resolved","description":"Merged from audit_math and write_foundry_tests (same root cause, same line). The launch text, launch.json notes and the function doc comment (line 43, \"UTF-8, 1..500 bytes\") state the precondition as well-formed UTF-8 with BadText otherwise. post() only checks `bytes(text).length` (lines 50-51); Solidity does not validate `string calldata` content, so any byte string of 1..500 bytes is accepted, gets an id, updates count and lastBlock, and is emitted in Comment.text. Impact is off-chain only: a strict decoder (ethers v6 Interface.parseLog / toUtf8String throws on malformed UTF-8 by default) cannot decode that Comment field, and a reader that decodes the whole log before reading prevBlock stops its single-block walk at that comment, so one malformed post by anyone can cut older comments of any thread off from such readers; lenient decoders (viem, TextDecoder non-fatal) show U+FFFD. HiddenList cannot help because the id is only known after decoding. No funds are involved and no fixed parameter is touched: a UTF-8 well-formedness check inside post() that reverts BadText keeps the ABI, the 1..500 byte rule, the event and the errors unchanged (cost: a loop over at most 500 bytes). The accepted limitation \"the text is any UTF-8 and is not filtered\" covers content of valid UTF-8, not bytes that are not UTF-8. Resolution is the requester's call: either validate UTF-8 in post() and revert BadText, or amend the launch text and doc comment to \"1..500 bytes\" so readers know to decode leniently (read prevBlock from the raw data word at offset 0x80). Neither of the 19 original tests nor the 8 review tests exercises non-UTF-8 input.","line":50,"path":"src/DareComments.sol","proof":"// SPDX-License-Identifier: MIT\npragma solidity ^0.8.28;\n\nimport {Test} from \"forge-std/Test.sol\";\nimport {DareComments} from \"src/DareComments.sol\";\n\n/// @dev The brief: \"text is 1..500 bytes of UTF-8, otherwise BadText\". Bytes that are not UTF-8 must revert BadText.\ncontract DareCommentsInvalidUtf8Test is Test {\n    DareComments c;\n\n    function setUp() public {\n        c = new DareComments();\n    }\n\n    function _expectBadText(bytes memory raw) internal {\n        vm.expectRevert(DareComments.BadText.selector);\n        c.post(address(0xBA07), 1, 1, 0, string(raw));\n    }\n\n    function test_LoneContinuationByteReverts() public {\n        _expectBadText(hex\"80\");\n    }\n\n    function test_FFByteReverts() public {\n        _expectBadText(hex\"ff\");\n    }\n\n    function test_TruncatedTwoByteSequenceReverts() public {\n        _expectBadText(hex\"6869c3\");\n    }\n\n    function test_OverlongSlashReverts() public {\n        _expectBadText(hex\"c0af\");\n    }\n\n    function test_SurrogateReverts() public {\n        _expectBadText(hex\"eda080\");\n    }\n\n    function test_ValidUtf8StillAccepted() public {\n        assertEq(c.post(address(0xBA07), 1, 1, 0, unicode\"café 🐸\"), 1);\n    }\n}","reproduction":"Deploy DareComments (no args). Call post(0x000000000000000000000000000000000000BA07, 1, 1, 0, string(hex\"ff\")) (also hex\"80\" lone continuation byte, hex\"6869c3\" truncated 2-byte sequence, hex\"c0af\" overlong, hex\"eda080\" UTF-16 surrogate, hex\"6869f09f90\" truncated 4-byte sequence). Expected per the brief: revert BadText(), count stays 0, lastBlock(0xBA07,1,1) stays 0. Actual: returns id 1, count == 1, lastBlock(0xBA07,1,1) == block.number, Comment emitted with text = the raw bytes. Valid UTF-8 (unicode\"café 🐸\", 500 bytes of \"а\") still posts. Ran both specialist proofs under test/scratch: Proof_f2f512ca44b8 5 failed \"next call did not revert as expected\" / 1 passed; Proof_aae199efb860 2 failed / 1 passed, each for exactly this reason.","severity":"low","snippet":"        uint256 len = bytes(text).length;\n        if (len == 0 || len > MAX_TEXT) revert BadText();","title":"post() accepts text that is not UTF-8; the brief says \"1..500 bytes of UTF-8, otherwise BadText\" but only the byte length is checked"}],"hash":"56271c4145c29072394bac46d41d30c4381197570da2576f3e6208bd696d0443","nodeId":"5207b491-2fae-48d9-844e-3ab4d81bd3c1","outcome":"completed","summary":"Review complete. The findings file is written at `.imd-findings.json` and no other file in the tree was changed.\n\n**Outcome: one low finding kept, nothing else reproduced.**\n\n- **Kept (low), merged from audit_math and write_foundry_tests.** Both specialists reported the same root cause at the same line: post() checks only the byte length of the text, while the launch text, the manifest notes and the function's own doc comment promise \"1..500 bytes of UTF-8, otherwise BadText\". I reproduced it by running both attached proofs under test/scratch: posting hex ff, a lone continuation byte, a truncated sequence, an overlong encoding or a surrogate returns id 1 and emits the raw bytes instead of reverting. Seven of the nine proof tests fail for exactly that reason, and the valid-UTF-8 controls pass. Impact is off-chain only: a strict decoder such as ethers v6 throws on that Comment log, so one malformed post can cut older comments of a thread off from readers that decode the whole log before reading prevBlock. No funds are involved and a fix inside post() keeps every fixed parameter. I framed the resolution as the requester's choice: validate UTF-8 and revert BadText, or amend the launch text to \"1..500 bytes\". The finding carries the write_foundry_tests proof source, which fails on the current code.\n\n**My own pass found nothing further.** Kind check, length check, same-thread parent check (unassigned, self and future ids all fail because the thread hash is written after the check), id assignment from 1, prevBlock read before the lastBlock write, and the event layout all hold. The compiled artifact matches the fixed ABI exactly, is 932 bytes of runtime with no reachable CALL, CREATE, DELEGATECALL or SELFDESTRUCT, and has no link references. launch.json has only kind, contracts and notes, one contract with empty constructor arguments, notes of 1,213 characters. The same-block and kind-not-indexed reader notes from the earlier round are documented and tested, not defects.\n\n**Coverage.** All 114 entry points have rows. DareComments.post is marked finding 1. The other 113 belong to contracts this launch does not deploy and are marked unreached with that reason. Five extra rows record the view functions, the two invariants and the deployment check.\n\n**Verification notes.** The 48 DareComments tests (19 original, 20 fuzz, 1 invariant, 8 launch-review) pass with the project's fuzz seed. The full 709-test suite did not finish within the time I could give it, so the 717-pass figure in ADAPTATION.md is unverified by me. The protected tests pin solc 0.8.26 against the project's 0.8.28 and import a floor harness not in the tree, so I read them rather than ran them, as the adaptation record also notes.","treeHash":null,"usage":{"cachedInputTokens":630622,"inputTokens":324,"model":"claude-fable-5-1","outputTokens":16085,"runtime":"claude","turns":17,"wallClockMs":1916353}},{"artifacts":[],"attempt":1,"bundleHash":null,"device":"60ffae3cc413a0c6","findings":[],"hash":"7407e7696e444522b6d0a48f5e505bc6f6dc9a6848ccd79d389f800d8b15090b","nodeId":"5207b491-2fae-48d9-844e-3ab4d81bd3c1","outcome":"failed","summary":"submodules did not fetch: Submodule 'lib/forge-std' (https://github.com/foundry-rs/forge-std) registered for path 'lib/forge-std'\nSubmodule 'lib/openzeppelin-contracts' (https://github.com/OpenZeppelin/openzeppelin-contracts) registered for path 'lib/openzeppelin-contracts'\nSubmodule 'lib/v4-core' (https://github.com/Uniswap/v4-core) registered for path 'lib/v4-core'\nCloning into 'C:/Users/hiper/.identitymd/work/ad6d8aa7-5","treeHash":null,"usage":{"cachedInputTokens":0,"inputTokens":0,"model":null,"outputTokens":0,"runtime":"claude","turns":0,"wallClockMs":36494}},{"artifacts":[],"attempt":1,"bundleHash":null,"device":"a31e321b410aaa02","findings":[{"citation":"resolved","description":"Read in full: src/DareComments.sol (65 lines, one state-changing function post, one view lastBlock, empty constructor, no receive/fallback, no external call, no owner), test/DareComments.t.sol (19 tests, all pass), docs/LAUNCH-COMMENTS.md, and the HiddenList key/vote/status paths insofar as they take (address(DareComments), 3, id). Passes made against the Pashov guide: math (only ++count, cannot overflow), boundary (len 0 / 500 / 501, parentId 0, count+1, uint256 max, raw calldata kind 257 rejected by the ABI decoder), access control and trust (nothing privileged, by design), asymmetry (writes to _thread and _last happen after all checks, no paired surface), economics and invariants (no funds; _thread[id] set for every id in 1..count; _last[t] is the block of the newest comment of t; a reverted post leaves count and _last unchanged), execution trace (no external call, no reentrancy surface), periphery (thread key keccak256(abi.encode(vault,kind,targetId)) is computed identically in post and lastBlock; HiddenList keys by (vault,kind,id) so kind 3 under the DareComments address cannot collide with task/proof items). Launch floor rehearsed in a scratch test: runtime present, under EIP-170, no reachable DELEGATECALL/CALLCODE/SELFDESTRUCT; constructor takes no argument and reads no contract, so it deploys on an empty chain. Fixed ABI verified: selectors of post(address,uint8,uint256,uint256,string) and lastBlock(address,uint8,uint256), KIND_TASK=1, KIND_PROOF=2, MAX_TEXT=500, event field order and the three indexed topics, errors BadKind/BadText/BadParent. Not reached: floor/OwnerChecks.sol behind Owners.protected.t.sol is not in the tree, so the owner probe could only be reasoned about (DareComments exposes no owner() and stores no address, so there is nothing for it to flag). Result: no defect found; no change to the contract is required by this review.","line":14,"path":"src/DareComments.sol","reproduction":"forge test --match-path test/DareComments.t.sol: 19 passed. Scratch probe (opcode scan of address(c).code, selector and constant checks, post(addr,1,1,count+1,\"b\") and post(addr,1,1,type(uint256).max,\"b\") revert BadParent, call(\"\") and call(0xdeadbeef) revert, raw calldata with 257 in the uint8 kind slot reverts): 7 passed. Expected and actual agree on every probe.","severity":"info","snippet":"contract DareComments {","title":"Scope and coverage: DareComments read in full, no defect reproduced"},{"citation":"resolved","description":"Not a contract defect: it is exactly the specified semantics (prevBlock = block of the previous comment of the thread). It matters for the off-chain walker the brief describes. When two comments of one thread land in the same block N, the later event has prevBlock = N. A reader that walks back by taking the prevBlock of an arbitrary event in block N (for example the last one returned) would request block N again forever. The reader must take the smallest prevBlock among the thread's events of that block (equivalently the prevBlock of the earliest event in the block), which is strictly less than N. test/DareComments.t.sol line 194 and testFuzz_WalkFindsEveryComment already encode this rule for the test walker; the site's reader needs the same rule. No change to the contract is possible or needed: the event layout is a fixed parameter.","line":58,"path":"src/DareComments.sol","reproduction":"vm.roll(7); post(V,2,3,0,\"a\") -> event prevBlock 0; post(V,2,3,1,\"b\") in the same block -> event prevBlock 7; lastBlock(V,2,3) == 7. A walker that reads block 7, picks the second event and follows its prevBlock reads block 7 again (loop). A walker that takes min(prevBlock) over the block's events follows 0 and stops. Verified in a scratch test (test_sameBlockPrev) and by the existing test_ChainWalksBackThroughOneThread.","severity":"info","snippet":"        emit Comment(id, vault, targetId, kind, parentId, msg.sender, text, prev);","title":"Reader note: a comment posted in the same block as the thread's previous one carries prevBlock equal to its own block"},{"citation":"resolved","description":"Not a contract defect and not changeable (the event layout is a fixed parameter). The thread key is (vault, kind, targetId) and lastBlock is per thread, but the indexed topics are id, vault and targetId only. A reader walking the task-5 thread with getLogs(block b, topics [Comment, *, vault, 5]) also receives comments of proof 5 posted in block b, and must drop the ones whose decoded kind differs before applying the prevBlock rule; otherwise it may follow a prevBlock that belongs to the other thread and miss or duplicate comments. The existing test test_ThreadsKindsVaultsHaveSeparateChains filters by the full thread hash and so does not exercise this reader mistake.","line":32,"path":"src/DareComments.sol","reproduction":"vm.roll(10): post(V,1,5,0,\"task\"); vm.roll(20): post(V,2,5,0,\"proof\"); vm.roll(20): post(V,1,5,1,\"task reply\") -> its prevBlock is 10. lastBlock(V,1,5)=20, lastBlock(V,2,5)=20. getLogs(block 20, vault V, targetId 5) returns two events, kinds 2 and 1, with prevBlock 0 and 10. A reader that does not filter on the kind field and takes min(prevBlock)=0 stops and never reads block 10, missing the first task comment. Filtering kind==1 yields prevBlock 10 and the walk is complete.","severity":"info","snippet":"        uint8 kind,","title":"Reader note: kind is not an indexed topic, so a single-block getLogs filtered by (vault, targetId) returns both the task thread and the proof thread of that targetId"}],"hash":"a41f523ab8e438ccd84aa310cf01386ab24cbeb0b9012457f9f6ba3577cffaec","nodeId":"212caf6a-a343-42ec-af76-b430f9d49a42","outcome":"completed","summary":"The review is complete. The findings file holds the result with no defects to fix.\n\n**Outcome: no reproducible defect in DareComments.** The contract does what the launch text specifies, and every fixed parameter matches the code.\n\n**What I read**\n- `src/DareComments.sol` in full: one state-changing function, one view, empty constructor, no fallback or receive, no external call, no owner.\n- `test/DareComments.t.sol`, all 19 tests passing, plus the launch doc and the HiddenList key paths that take the comments address with kind 3.\n- Not reachable: the floor owner-check base behind the protected owners test is not in the tree. DareComments stores no address and exposes no owner, so there is nothing for it to flag.\n\n**What I checked**\n- All twelve Pashov passes as my own review passes. Bounds on text length, parent id, kind, and the thread hash computed identically in post and lastBlock.\n- The launch floor, rehearsed in a scratch test: runtime present and bounded, no reachable DELEGATECALL, CALLCODE or SELFDESTRUCT, constructor deploys on an empty chain.\n- The fixed ABI: selectors, constants, event field order and indexed topics, and the three error names.\n\n**Findings written to .imd-findings.json**, all at info severity:\n- Scope and coverage statement with the probes run.\n- Reader note: a same-block comment carries a prevBlock equal to its own block, so the off-chain walker must take the smallest prevBlock in a block or it loops. The contract behaves as specified.\n- Reader note: kind is not an indexed topic, so a per-block log query by vault and targetId returns both the task and the proof thread. The reader must filter on the decoded kind or it can miss comments.\n\nThe scratch directory was removed. No repository file was changed, and the adapter needs no code change from this review.","treeHash":null,"usage":{"cachedInputTokens":359461,"inputTokens":228,"model":"claude-fable-5-1","outputTokens":11486,"runtime":"claude","turns":17,"wallClockMs":903814}},{"artifacts":[],"attempt":1,"bundleHash":null,"device":"74cf0246a1dda0ce","findings":[],"hash":"acfb907de5a6c9ca9a6fe56416846a780064e20f4919b5fd75f6811cca73a5d9","nodeId":"88ec657c-5817-48ec-8d45-146464b8294c","outcome":"completed","summary":"The review is complete. `.imd-findings.json` holds an empty findings list and a coverage row for every listed entry point.\n\n**Result: no defect in the permissions area.** DareComments has exactly one state-changing entry point, `post`, and the brief makes it deliberately public. I traced the three guards, the three storage writes and the failure paths against the Access Control, Trust Gap and Asymmetry guides:\n\n- **Access Control.** No owner, role, modifier, initializer, pause, upgrade path, receive, fallback or payable function exists. The constructor is implicit and hands out nothing, so the factory gains no privilege. Every storage variable has a single writer, so there is no weaker-guarded parallel path. The author field is `msg.sender`, never `tx.origin`.\n- **Asymmetry.** The writer and the reader derive the thread key from the same encoded tuple. An unassigned parent id maps to a zero digest, which never equals a real thread key, so self, future, max and cross-thread parents all revert with BadParent. The reader accepting kinds other than 1 and 2 returns zero, which is exactly the specified \"no comments\" answer.\n- **Trust Gap.** The contract holds no value and has no privileged actor, so no access-times-economics seam exists.\n\n**What was executed.** The contract's 19 tests and the 8 review tests pass. Four scratch probes I wrote also passed and were deleted afterwards: a relayer contract becomes the author, unknown kinds read as zero, a cross-vault parent spoof reverts, and owner, pause and initialize selectors revert.\n\n**What I could not reach.** The full 709-test baseline was not run. The project compiles everything with via_ir and twice exceeded the 10-minute per-command ceiling on this machine, so only the DareComments files were compiled and run. The tree has no launch.json yet, which is expected before the manifest step. The coverage rows for the other contracts record that nothing in this standalone launch reaches them and that they were not separately audited.","treeHash":null,"usage":{"cachedInputTokens":909538,"inputTokens":358,"model":"claude-fable-5-1","outputTokens":15501,"runtime":"claude","turns":22,"wallClockMs":1480482}},{"artifacts":[],"attempt":1,"bundleHash":"e797d76a69c535b19326268c1c3af5017b4c807502d580277a304f16c20f3a15","device":"ba7dd2832066bc23","findings":[],"hash":"bb30630f99eb56146db391bc695868653ec3c3aa7aa14381466d9831203f896f","nodeId":"f8b4a173-6768-404c-8d85-d63e255d3933","outcome":"completed","summary":"Completed the audit and launch preparation. No Solidity changes were needed. Added eight regression tests, reader guidance, and [ADAPTATION.md](/home/seat/.identitymd/work/ad6d8aa7-50bf-485a-b6a4-d0785a0d31b0/f8b4a173-6768-404c-8d85-d63e255d3933/ADAPTATION.md).\n\n`forge build` passed. Tests with the required seed: **717 passed, 0 failed, 4 fork checks skipped**.\n\nLocal factory deployment passed; the unavailable protected owner harness is documented.","treeHash":"5c3e3fdc8058f48266149f6a627d365f621738d1","usage":{"cachedInputTokens":5110528,"inputTokens":110037,"model":"gpt-6-astra","outputTokens":26321,"runtime":"codex","turns":12,"wallClockMs":1055325}},{"artifacts":[],"attempt":1,"bundleHash":"1ba64c11a3752c33a57898cd34231c4b604320a3d8f89fd1ac129493468f9e5f","device":"dedd4428da8fa41e","findings":[],"hash":"bf0f75c707481905246e65a130725efaed7d74103597f221d14de6cbf285ea06","nodeId":"26ccfe64-9cb4-4637-98f4-266a6b23ec1f","outcome":"completed","summary":"That notice is about the loop I set up to wait for the full test run. The test run itself had already been stopped, so the loop never saw a result and hit its own time limit. I'm not restarting either one: there isn't enough time left on this machine for a full run.\n\nNothing else has changed since my last report:\n- **`launch.json`** is written and is the only file changed.\n- **Tests:** the project builds, and DareComments' 19 tests pass with the verifier's fuzz seed. The full suite of 709 tests didn't finish here, so it still needs to run in the verifier.","treeHash":"2ef1c1f82a68981f5add13bf0b4015caf07192e9","usage":{"cachedInputTokens":28013,"inputTokens":4,"model":"claude-opus-5-5","outputTokens":216,"runtime":"claude","turns":1,"wallClockMs":1349910}},{"artifacts":[],"attempt":1,"bundleHash":null,"device":"323aec17bfc8d652","findings":[{"citation":"resolved","description":"The only text check in post() is the byte length (lines 50-51). The launch text and the function's own doc comment (line 43) state the precondition as 1..500 bytes of UTF-8 with BadText otherwise, but well-formedness is never checked, so any byte string of 1..500 bytes is accepted and emitted in the Comment event's `string text` field. Boundary lens: the bytes input is assumed to be UTF-8 by every consumer, and the contract is the only place that could enforce it. Consequence off-chain, checked with the two common decoders: ethers v6.17 Interface.parseLog() on such a log returns a Result whose `args.text`, array destructuring and `toObject()` all throw \"deferred error during ABI decoding\" (only index access to the other fields works); viem decodes the field to U+FFFD. A reader that decodes every Comment field with ethers therefore throws on the block holding such a comment and, unless it catches per-log, loses the whole single-block getLogs step of its thread walk. HiddenList cannot help because hiding needs the id after decoding. No funds are at risk and no fixed parameter is involved. The accepted limitation says the text is \"any UTF-8 and is not filtered\", which is about content, not encoding; this finding is the gap between \"UTF-8\" in the rule and \"any bytes\" in the code. Minimal fix that keeps every fixed parameter: validate UTF-8 well-formedness in post() over the at most 500 bytes (lead byte ranges, continuation bytes, no overlongs or surrogates, max U+10FFFF) and revert BadText otherwise. If the author instead decides raw bytes are intended, the launch text and doc comment should say \"1..500 bytes\" rather than \"bytes of UTF-8\" so readers know to decode defensively.","line":50,"path":"src/DareComments.sol","proof":"// SPDX-License-Identifier: MIT\npragma solidity ^0.8.28;\n\nimport {Test} from \"forge-std/Test.sol\";\nimport {DareComments} from \"src/DareComments.sol\";\n\n/// @dev Finding: `post` is specified as taking \"1..500 bytes of UTF-8, otherwise BadText\", but it only checks the\n///      byte length. Text that is not UTF-8 at all is accepted and emitted. Fails on the code as it is (the post\n///      succeeds); passes once `post` rejects text that is not well-formed UTF-8 with BadText.\ncontract DareCommentsUtf8Test is Test {\n    DareComments c;\n    address constant VAULT = address(0xBA07);\n\n    function setUp() public {\n        c = new DareComments();\n    }\n\n    /// 0xff can never appear in UTF-8 (every byte of a UTF-8 string is below 0xf8).\n    function test_LoneInvalidByteRevertsBadText() public {\n        bytes memory b = hex\"ff\";\n        vm.expectRevert(DareComments.BadText.selector);\n        c.post(VAULT, 1, 1, 0, string(b));\n        assertEq(c.count(), 0);\n    }\n\n    /// A truncated multi-byte sequence: the frog emoji is f0 9f 90 b8; its first 3 bytes alone are not UTF-8.\n    function test_TruncatedMultiByteSequenceRevertsBadText() public {\n        bytes memory b = hex\"6869f09f90\";\n        vm.expectRevert(DareComments.BadText.selector);\n        c.post(VAULT, 2, 7, 0, string(b));\n        assertEq(c.count(), 0);\n    }\n\n    /// Well-formed UTF-8 at both length bounds must still be accepted (the fixed 1..500 rule is unchanged).\n    function test_ValidUtf8StillAccepted() public {\n        assertEq(c.post(VAULT, 1, 1, 0, unicode\"🐸\"), 1);\n        bytes memory b = new bytes(500);\n        for (uint256 i; i < 500; i += 2) {\n            b[i] = 0xd0;\n            b[i + 1] = 0xb0;\n        }\n        assertEq(c.post(VAULT, 1, 1, 1, string(b)), 2);\n        assertEq(c.post(VAULT, 1, 1, 0, \"k\"), 3);\n    }\n}","reproduction":"Deploy DareComments. Call post(0xBA07, 1, 1, 0, text) where text is the single byte 0xff (not valid in any UTF-8 string; Solidity itself refuses `string(hex\"ff\")` as a literal for that reason, so build it from `bytes memory b = hex\"ff\"`). Expected per the rule: revert BadText(), count stays 0. Actual: the call succeeds, returns id 1, count becomes 1, lastBlock(0xBA07,1,1) is set, and Comment is emitted with data abi.encode(1, 0, msg.sender, hex\"ff\", 0). Same with a truncated 4-byte sequence hex\"6869f09f90\" (\"hi\" + the first 3 bytes of the frog emoji): accepted as id 1 instead of BadText. Decoding that event's data with ethers v6.17 `new Interface([...]).parseLog(log).args.text` throws; viem returns '\\ufffd'. Proof test test/scratch/DareCommentsUtf8.t.sol: 2 of its 3 tests fail on the current code (\"next call did not revert as expected\"), the third confirms valid UTF-8 at 1 and 500 bytes still posts.","severity":"low","snippet":"        uint256 len = bytes(text).length;\n        if (len == 0 || len > MAX_TEXT) revert BadText();","title":"post() accepts text that is not UTF-8 although the rule is \"1..500 bytes of UTF-8, otherwise BadText\"; a strict ABI decoder (ethers v6) throws on the emitted Comment"}],"hash":"e0ab36948a737fb4602a474c4dcd4b0cb5bfce73b5395767080326c905f17282","nodeId":"4dc00d06-f788-4edd-9a1d-ed5cea70f454","outcome":"completed","summary":"The review is complete. The findings file is written and validated, and the working tree is otherwise untouched (only the ignored `.imd-findings.json` and `test/scratch/` exist).\n\n**Outcome:** the math of DareComments holds. One low finding, no critical or high.\n\n**What I checked (Math Precision, Boundary, Numerical Gap passes on `src/DareComments.sol`):**\n- No division, multiplication, downcast or unchecked block exists. The only arithmetic is the checked `++count`, so ids run 1..count with no gaps.\n- Text bounds at 0, 1, 500 and 501 bytes behave as the rule says. Malformed calldata (declared string length past calldata, offset outside calldata, a uint8 kind word of 257) reverts in the ABI decoder before the body runs.\n- The `parentId == 0` sentinel is safe because id 0 is never written. The thread key uses `abi.encode`, so shifted vault or targetId values cannot collide (probed).\n- prevBlock never exceeds the post's block and lastBlock is monotone (fuzzed). The same-block `prevBlock == b` edge and the non-indexed kind are already documented reader rules in `docs/LAUNCH-COMMENTS.md`, so I did not re-report them.\n- The block 0 edge, where lastBlock would read as \"no comments\", is unreachable on mainnet.\n\n**Finding 1 (low):** `post` checks only the byte length, while the launch text and the function's doc comment specify \"1..500 bytes of UTF-8, otherwise BadText\". Posting the single byte 0xff, or a truncated emoji sequence, succeeds and is emitted. I confirmed with ethers v6.17 that `parseLog(...).args.text`, destructuring and `toObject()` throw on such a log, while viem substitutes U+FFFD. No funds are at risk and no fixed parameter changes. The proof test at `test/scratch/DareCommentsUtf8.t.sol` fails on the current code (2 of 3 tests) and includes a valid-UTF-8 regression test at both length bounds. The suggested fix is a UTF-8 well-formedness loop in `post`, or, if raw bytes are intended, wording the rule as \"1..500 bytes\".\n\n**Coverage:** 122 rows, all 117 listed entry points answered. `DareComments.post` points to finding 1. The other contracts are not part of this one-contract launch and DareComments neither calls nor is read by them; their rows say so explicitly and state they were not reviewed in this pass. HiddenList was inspected only for its `(DareComments, 3, id)` key.\n\n**Not completed:** the full `forge test` run of 709 tests exceeded my 10-minute foreground limit twice (the invariant suite dominates), so I did not independently confirm the whole-suite count. The 19 DareComments tests and the 8 launch review tests pass.","treeHash":null,"usage":{"cachedInputTokens":936178,"inputTokens":386,"model":"claude-fable-5-1","outputTokens":31820,"runtime":"claude","turns":30,"wallClockMs":1186035}},{"artifacts":[],"attempt":1,"bundleHash":null,"device":"c35be49d2f8f8def","findings":[],"hash":"f46e12794bb1a201db86b53aed99c8b6f57a898ecde5d18245d44e837c025d2d","nodeId":"b2a84075-d270-4845-8e11-e108a141d1e0","outcome":"completed","summary":"The review is complete. The findings file is written and no scratch files remain in the tree.\n\n**Result: no defect found in the Economic Security, Invariant or Flow Gap area.** `.imd-findings.json` holds an empty findings list and a coverage record of 122 rows, one per listed entry point plus eight invariant and seam rows.\n\n**What I checked on DareComments.post**\n\n- Economic security: there is no external dependency, token, oracle, fee, cap or loop. The only cost is gas, and authorship cannot be forged because the author is the caller. Spam is the accepted no-rate-limit rule, not a finding.\n- Invariants: ids are dense from 1 and equal count; a reply's parent must already exist in the same thread; the event's prevBlock equals the thread's lastBlock read before the write; the walk back from lastBlock is non-increasing and ends at 0. A 15,000-call stateful run against a model of the spec never diverged, and the existing fuzz tests agree.\n- Flow gaps: the one real seam is that kind is not an indexed topic, so a single-block log query by vault and targetId returns both kinds. Every referenced block does contain a comment of the requested kind, because the thread head is keyed by kind. The reader must filter kind before taking the minimum prevBlock. This is a fixed event layout, already documented in the launch doc and covered by the review tests, so it is not a defect.\n- Edge probes that passed: truncated calldata behind a declared 500-byte text reverts at decode, parent equal to the next id reverts, swapped vault and targetId do not alias another thread, deployment and calls with ETH fail, and the runtime contains no call or creation opcodes.\n- The compiled ABI matches the fixed parameters field for field, and no other source contract references DareComments.\n\n**Coverage rows outside the contract** are marked holds because this launch makes no external call and nothing in src reads it. HiddenList's vote and setState were traced for the kind-3 key and accept it with no restriction.\n\n**Test state:** the 19 DareComments tests and the 8 launch review tests pass. No manifest exists yet, which is expected before the manifest step.","treeHash":null,"usage":{"cachedInputTokens":673179,"inputTokens":322,"model":"claude-fable-5-1","outputTokens":18449,"runtime":"claude","turns":26,"wallClockMs":460079}}],"verification":[{"checks":[{"durationMs":538806,"exitCode":0,"name":"build","output":"Compiling 184 files with Solc 0.8.28\nSolc 0.8.28 finished in 538.61s\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:183:5:\n    |\n183 |     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:183:5:\n    |\n183 |     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":17505,"exitCode":0,"name":"test","output":"No files changed, compilation skipped\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 893.24µs (274.92µs CPU time)\n\nRan 1 test for test/fork/ExtrasOnLiveCore.fork.t.sol:ExtrasOnLiveCoreForkTest\n[SKIP: skipped] setUp() (gas: 0)\nSuite result: ok. 0 passed; 0 failed; 1 skipped; finished in 1.87ms (0.00ns 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 2 tests for test/ExtrasBareChain.t.sol:ExtrasBareChainTest\n[PASS] test_BareChain_NoVaultCode_AllSixDeploy() (gas: 9163095)\n[PASS] test_BareChain_NoVaultCode_ModulesInert() (gas: 9182900)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 2.33ms (1.94ms 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 2.45ms (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: 4709047)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 1.50ms (1.22ms CPU time)\n\nRan 1 test for test/audit/MaxImdInCap.t.sol:MaxImdInCapTest\n[PASS] test_AppealPullsMoreImdThanMaxImdIn() (gas: 1643322)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 3.72ms (889.73µs 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 510.64µs (171.29µ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 802.69µs (622.87µs 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 612.93µs (336.16µs CPU time)\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 7.11ms (2.19ms CPU time)\n\nRan 8 tests for test/review/DareCommentsLaunch.t.sol:DareCommentsLaunchTest\n[PASS] test_DeploymentRejectsEth() (gas: 104825)\n[PASS] test_FactoryDeploymentNeedsNoArgumentsOrSetup() (gas: 560231)\n[PASS] test_InvalidKindsAndParentsDoNotChangeState() (gas: 6429986)\n[PASS] test_NonCanonicalKindCalldataReverts() (gas: 41203)\n[PASS] test_ReaderFiltersKindBeforeChoosingPreviousBlock() (gas: 273381)\n[PASS] test_RuntimeHasNoCallsOrForbiddenOpcodes() (gas: 642260)\n[PASS] test_SameBlockReaderUsesEarliestThreadEvent() (gas: 180185)\n[PASS] test_UnknownSelectorsAndEmptyCalldataRevert() (gas: 94181)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 5.13ms (4.85ms 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 176.51µs (45.81µ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 709.65µs (267.04µ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 759.04µs (503.22µs 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: 37699193)\nLogs:\n  DevPrices 2467 runtime, margin 22109\n  UniswapV3SwapAdapter 1673 runtime, margin 22903\n  ParamsRegistry 13552 runtime, margin 11024\n  TextRules 5249 runtime, margin 19327\n  SwarmQuestionBuilder 5506 runtime, margin 19070\n  VotePower 942 runtime, margin 23634\n  AttestationChecker 2125 runtime, margin 22451\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 4526 runtime, margin 20050\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 4562 runtime, margin 20014\n  HiddenList 3789 runtime, margin 20787\n  YoloPredict 6385 runtime, margin 18191\n\n[PASS] test_L2_docLaunch1Args_matchPlan() (gas: 894953)\n[PASS] test_L3_docLaunch2Args_matchPlan() (gas: 1361721)\n[PASS] test_L5_docLaunch3Args_matchPlan() (gas: 685090)\nSuite result: ok. 5 passed; 0 failed; 0 skipped; finished in 16.99ms (14.23ms 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 1.38ms (1.17ms 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 17.76ms (803.22µs CPU time)\n\nRan 2 tests for test/audit/AddonAfterSub.t.sol:AddonAfterSubmissionTest\n[PASS] test_AddonAfterSubmission_BatchClaimPaysSweetener() (gas: 2687916)\n[PASS] test_AddonBeforeSubmission_BatchClaimPaysSweetener() (gas: 2585347)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 24.08ms (2.73ms 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 28.76ms (6.01ms CPU time)\n\nRan 3 tests for test/audit/LazyAppealVoidWindow.t.sol:LazyAppealVoidWindowTest\n[PASS] test_LateReAppealAfterTheVoidWindow_Reverts() (gas: 2274205)\n[PASS] test_PokeAfterVoidPlusWindow_IsFinal() (gas: 2344563)\n[PASS] test_WindowAfterVoid_StartsAtTheVoidMoment() (gas: 2111458)\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 28.40ms (4.20ms 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 32.33ms (7.06ms CPU time)\n\nRan 2 tests for test/Gas.t.sol:GasTest\n[PASS] test_GasProfile() (gas: 8438891)\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): 116580\n  vote (20 NFTs, not the first vote): 226796\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): 40971\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 36.69ms (10.32ms CPU time)\n\nRan 6 tests for test/Directory.t.sol:DirectoryTest\n[PASS] test_ConstructorChecks() (gas: 6526)\n[PASS] test_CurrentMayGoBack() (gas: 596847)\n[PASS] test_OnlySafeProposesAndCancels() (gas: 587178)\n[PASS] test_ProposalChecks() (gas: 217526)\n[PASS] test_V2SideBySide_AfterTimelock() (gas: 7803719)\n[PASS] test_Version1FromConstructor() (gas: 66747)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 36.62ms (11.64ms CPU time)\n\nRan 8 tests for test/review/ReviewAttestation.t.sol:ReviewAttestation\n[PASS] test_InconsistentCountsAreIgnored() (gas: 6412739)\n[PASS] test_NoFallback_NeitherOnePersonNorOrderedPanel() (gas: 2373699)\n[PASS] test_OnePersonPanelIsSilenceOnAppeal() (gas: 4598475)\n[PASS] test_OnePersonPanelIsSilenceOnCall() (gas: 2840857)\n[PASS] test_OrderedPanelCounts() (gas: 4402532)\n[PASS] test_PanelBounds() (gas: 1799342)\n[PASS] test_PanelChangeWaitsTimelock() (gas: 3580554)\n[PASS] test_QuorumBelowOrderedIsIgnored() (gas: 2315546)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 33.52ms (16.63ms CPU time)\n\nRan 7 tests for test/Cover.t.sol:CoverTest\n[PASS] test_CategoryStoredAndCoverEmitted() (gas: 389973)\n[PASS] test_CategoryUnchangedThroughDispute() (gas: 7923263)\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 40.25ms (23.41ms CPU time)\n\nRan 7 tests for test/review/ReviewProofs.t.sol:ReviewProofs\n[PASS] test_AppealPriceJump_RevertsWithMaxImdIn() (gas: 2259625)\n[PASS] test_BodyBoundedByParams_OneDisputerOnly() (gas: 2622082)\n[PASS] test_BondNeverDoubles_SubmitPassesWithQuotedMax() (gas: 1433363)\n[PASS] test_DisputeVoteAppealAfterTaskDeadline() (gas: 2232780)\n[PASS] test_Eip7702Voter_EcdsaSignatureCounted() (gas: 2148411)\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 41.74ms (12.82ms 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: 149109)\n[PASS] test_ParamsOfIsTheRegistrySnapshot() (gas: 716560)\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 43.01ms (10.63ms CPU time)\n\nRan 2 tests for test/audit/LateAppealAsk.t.sol:LateAppealAskTest\n[PASS] test_LateAppealAskReverts() (gas: 2108484)\n[PASS] test_TimelyAppealAskIsAsked() (gas: 2279994)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 6.48ms (2.70ms CPU time)\n\nRan 5 tests for test/audit/AuditNoMandatoryCheck.t.sol:AuditNoMandatoryCheckTest\n[PASS] test_AppealOnlyAgainstAnNftDecision() (gas: 12991969)\n[PASS] test_NoCheck_AtAnyRewardSize() (gas: 3982698)\n[PASS] test_NoDoubleAppeal() (gas: 7307331)\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 47.06ms (31.24ms 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 11.63ms (11.50ms 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: 10792136)\n[PASS] test_EthRewardWithYoloAddon_BondIsImdPlusThreePercentEth() (gas: 1674268)\n[PASS] test_QueuedSubmission_BondFixedAtSubmission() (gas: 9407512)\n[PASS] test_Rejected_LoserBondSplitInImdAndEthOnly() (gas: 7719547)\n[PASS] test_TopUps_OnlyTheAuthorsCount() (gas: 7354812)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 57.03ms (39.34ms CPU time)\n\nRan 2 tests for test/review/ReviewGas.t.sol:ReviewGas\n[PASS] test_AppealAskGas_Under1_5M() (gas: 4618000)\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 22.44ms (4.51ms 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 43.39ms (17.59ms 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 576.07µs (272.12µ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 27.94ms (6.17ms 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: 7019133)\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 49.67ms (7.14ms CPU time)\n\nRan 4 tests for test/VoteBatch.t.sol:VoteBatchTest\n[PASS] test_Batch_BonusNotPaidOutYet_StaysClaimable() (gas: 8022186)\n[PASS] test_Batch_NothingToClaimReverts() (gas: 7901124)\n[PASS] test_Batch_PaysWhatSingleClaimsPay() (gas: 24099111)\n[PASS] test_Batch_TakesTheYoloBonusShare() (gas: 13834453)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 69.32ms (50.21ms 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 132.59µs (22.80µs 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: 10503079)\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 76.54ms (81.69ms CPU time)\n\nRan 2 tests for test/review/ReviewYolo.t.sol:ReviewYoloUnit\n[PASS] test_vestingStreamsFromArrivalWithoutACliff() (gas: 897245)\n[PASS] test_whitelistRefusesOutputTakenToARouter() (gas: 1179429)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 935.11µs (777.39µs 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 16.81ms (16.20ms 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 86.40ms (59.42ms CPU time)\n\nRan 1 test for test/audit/StepDeadlineAppealed.t.sol:StepDeadlineAppealedTest\n[PASS] test_StepDeadlineAppealed_IsVoidMoment() (gas: 2222975)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 24.55ms (1.79ms 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 22.24ms (2.39ms 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 24.13ms (1.30ms 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://imdnotdead.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 588.14µs (458.94µs CPU time)\n\nRan 1 test for test/review/ReviewLaunch.t.sol:ReviewLaunchRuntime\n[PASS] test_L5_vote_gasPerNft() (gas: 60470665)\nLogs:\n  vote 10 NFTs: 175377\n  vote 490 more NFTs: 2190139\n  gas per NFT (mock NFT): 4469\n  max NFTs in one vote under the cap (mock): 3754\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 104.52ms (43.13ms CPU time)\n\nRan 6 tests for test/audit/AuditC.t.sol:AuditCTest\n[PASS] testFuzz_ValidTextMatchesReference(bytes,uint8,uint8) (runs: 256, μ: 262897, ~: 262376)\n[PASS] test_Fix_ContractWalletVotesItself() (gas: 2222949)\n[PASS] test_Guard_DoerCannotAnswerHisOwnAppealInTheNameOfTheDisputers() (gas: 6302877)\n[PASS] test_Guard_FrontRunnerCannotLiftABallotAndDecide() (gas: 14898889)\n[PASS] test_Guard_HoldersOwnVotesDecideAtTheVoteEnd() (gas: 10882048)\n[PASS] test_NoBatchToPoison() (gas: 1804806)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 109.79ms (80.89ms 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 23.41ms (571.91µs 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: 781687)\nLogs:\n  claimVoterReward exec: 147302\n  claimVoterReward tx: 146476\n\n[PASS] test_VoteGas_ClaimBatch() (gas: 16554919)\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: 3983324)\nLogs:\n  vote 25 NFT as delegate (first vote, no decision) exec: 269898\n  vote 25 NFT as delegate (first vote, no decision) tx: 266929\n\n[PASS] test_VoteGas_First1() (gas: 159633)\nLogs:\n  vote 1 NFT (first vote) exec: 143875\n  vote 1 NFT (first vote) tx: 136349\n\n[PASS] test_VoteGas_First100() (gas: 818488)\nLogs:\n  vote 100 NFT (first vote, decides) exec: 585532\n  vote 100 NFT (first vote, decides) tx: 569723\n\n[PASS] test_VoteGas_First100_noDecide() (gas: 4366443)\nLogs:\n  vote 100 NFT (first vote, no decision) exec: 538581\n  vote 100 NFT (first vote, no decision) tx: 529228\n\n[PASS] test_VoteGas_First25() (gas: 350160)\nLogs:\n  vote 25 NFT (first vote, decides) exec: 281545\n  vote 25 NFT (first vote, decides) tx: 272021\n\n[PASS] test_VoteGas_First25_noDecide() (gas: 3898096)\nLogs:\n  vote 25 NFT (first vote, no decision) exec: 234562\n  vote 25 NFT (first vote, no decision) tx: 231526\n\n[PASS] test_VoteGas_Profile() (gas: 674688)\nLogs:\n  vote 1 NFT (first vote) exec: 143875\n  vote 1 NFT (first vote) tx: 136349\n  vote 10 NFT (later vote) exec: 139672\n  vote 10 NFT (later vote) tx: 137900\n  vote 15 NFT (later vote) exec: 159861\n  vote 15 NFT (later vote) tx: 157667\n  vote 2 NFT (later vote) exec: 124328\n  vote 2 NFT (later vote) tx: 123216\n\nSuite result: ok. 9 passed; 0 failed; 0 skipped; finished in 43.33ms (15.32ms CPU time)\n\nRan 1 test for test/audit/PredictAfterTimer.t.sol:PredictAfterTimerTest\n[PASS] test_PredictAfterTimerEnded_WithoutPoke_IsAllowed() (gas: 2290358)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 23.65ms (1.39ms CPU time)\n\nRan 8 tests for test/review/ReviewSplitRegression.t.sol:ReviewSplitRegression\n[PASS] test_events_EmitterMap() (gas: 22688427)\n[PASS] test_golden_AcceptedAfterDispute_NftRight() (gas: 9760483)\nLogs:\n  ledger after settlement: 0x4830ea4fcc6dc5027c1f37bcad5852e0b11e2b542d5bf3a1b4e0bf9f8b5d8d55\n  settlement record: 0xa4018a5ae1f016fc869c28d2e27ea22d88e1d937e0efb0592baa756f921319ad\n  ledger after every payout: 0x65dcffba9fa5f218c43b4c3f810b8d61e0676b615cd88c2200be717a94fa422b\n\n[PASS] test_golden_AppealSwarmOverturnsNft() (gas: 10297057)\nLogs:\n  ledger after settlement: 0x08d27cc2a8693d93d430a64d7a89b5d993f0bc3aaa0f468e9d26ec43c1adc65d\n  settlement record: 0x7d5a35e896f5cc60c3cebee7443c57120a4abf9130d2d794c36a86769c152705\n  ledger after every payout: 0x808551d4f18f1c9f9021bde675a4cd14dd60e843467f3bfd666fd1221b8bddd1\n\n[PASS] test_golden_CallSwarmSilentThenCalledAgain() (gas: 10587005)\nLogs:\n  ledger after settlement: 0x38cc28fed888cc3bcd65c4d5b72aa4ec16f7b4731c45419596c21cda6e366d7a\n  settlement record: 0x12641fdf0b0d28314e7cdd711051407e007d2e0d2c3006ec555db150a1bb11c5\n  ledger after every payout: 0xa82fdb047f774ed464eb049c7e6b261d5bc214d5978856d853700b07460f2f09\n\n[PASS] test_golden_RejectedThenQueuedAccepted() (gas: 11975747)\nLogs:\n  ledger after settlement: 0x76984c0edfd7138e1eeafbca442dc75eac4cdca48dfce84a332a3dbe3eb570fd\n  settlement record: 0xdb27e0d67237b840a3897b3e94d0bc38e88d80d4f00b209c05909985a9e9b9f4\n  ledger after every payout: 0xf9dbd032a0ab92846b8ead6e767bad8491ba22ce779070f3e67373d796740420\n\n[PASS] test_golden_UndecidedNobodyCallsSwarm() (gas: 8826619)\nLogs:\n  ledger after settlement: 0xbb589401078dd43b88cbc7c1c174981c2ee68b3027a30d9ffdcf05a917cc491d\n  settlement record: 0x880d35a1a6c101757740019ffe504083f1353824cf6c05eb99c4e48fe76bf58a\n  ledger after every payout: 0x4755fc921943fe650cc0871884c69218df089678208e1ea5cc2d2410865f21ce\n\n[PASS] test_minor_HeaviestLazyStepGasCost() (gas: 3854059)\nLogs:\n  gas of the heaviest separate step (askAppealSwarm): 727451\n\n[PASS] test_minor_NoEthInDisputes_VoterSendsOwnBallot() (gas: 1544143)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 132.94ms (104.25ms 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 24.00ms (2.40ms 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: 15786110)\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 31.12ms (8.52ms 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.17ms (1.08ms CPU time)\n\nRan 4 tests for test/audit/AuditNoFallbackOwnVote.t.sol:AuditNoFallbackOwnVoteTest\n[PASS] test_DoerCannotDispute() (gas: 9092555)\n[PASS] test_LostCallbackIsSilence_NoPublicFallback() (gas: 8540419)\n[PASS] test_NoDecisionBelowInstantDelta() (gas: 8684088)\n[PASS] test_PartialCountRelayedByAnOutsiderDecidesNothing() (gas: 8572847)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 48.33ms (32.52ms CPU time)\n\nRan 22 tests for test/YoloLockHub.t.sol:YoloLockHubTest\n[PASS] testFuzz_LockThenWithdrawReturnsExactAmount(uint256,uint256) (runs: 256, μ: 272194, ~: 271878)\n[PASS] testFuzz_PowerConstantThroughTheTerm(uint256,uint256,uint256) (runs: 256, μ: 150923, ~: 150970)\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: 3239695)\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 154.50ms (118.07ms 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: 3660281)\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: 2741643)\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 70.20ms (48.61ms 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: 9166925)\nLogs:\n  YoloSweetener 6748 runtime bytes\n  TrophyCatalog 4228 runtime bytes\n  DareTrophy 11777 runtime bytes\n  ProtocolDirectory 4562 runtime bytes\n  HiddenList 3789 runtime bytes\n  YoloPredict 6385 runtime bytes\n  launch 3 execution gas 8673887\n  launch 3 calldata bytes 42980\n  launch 3 total gas (upper bound) 9382567\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: 12589976)\n[PASS] test_RewardFormatting() (gas: 11024502)\n[PASS] test_TitleGuards() (gas: 1310117)\nSuite result: ok. 14 passed; 0 failed; 0 skipped; finished in 93.97ms (76.21ms 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: 11476287)\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 71.97ms (49.77ms 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: 7838514)\n[PASS] test_NftRight_NoStake_Wallet0() (gas: 7585072)\n[PASS] test_NftUndecided_FullStake_Wallet5_50() (gas: 7375036)\n[PASS] test_NftWrong_FullStake_Wallet5_50() (gas: 8805741)\n[PASS] test_NftWrong_NoStake_Wallet0() (gas: 8486734)\n[PASS] test_NoStake_Accepted_NothingToTheWallet() (gas: 6740381)\n[PASS] test_Rejected_NothingToTheWallet() (gas: 7583537)\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 176.72ms (127.01ms 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.76ms (2.40ms CPU time)\n\nRan 34 tests for test/YoloToken.t.sol:YoloTokenTest\n[PASS] test_AfterMinute60_PlainErc20() (gas: 137108)\n[PASS] test_BeforeOpenAt_NobodyBuys() (gas: 752448)\n[PASS] test_ConstructorRejectsZeroPoolManagerOrSafe() (gas: 9166)\n[PASS] test_DevVesting_Linear12Months_NoCliff() (gas: 992024)\n[PASS] test_GateWithoutCode_PlainErc20() (gas: 280536)\n[PASS] test_Gate_ConsumeNeedsSealAndBooksPerCallingToken() (gas: 464018)\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: 4276159)\n[PASS] test_IncentivesVesting_QuarterAtOnce_RestLinear24Months() (gas: 966982)\n[PASS] test_OpenAtBounds() (gas: 8963)\n[PASS] test_SealAtOpenAtDoesNotCount() (gas: 256878)\n[PASS] test_SellTax_BuyFreeSellTaxedInWindow_BothAt45() (gas: 564926)\n[PASS] test_SellTax_ExactAmounts() (gas: 1063766)\n[PASS] test_SellTax_OnTopOfBalanceAndAllowance() (gas: 480636)\n[PASS] test_SellTax_RoundsDownAndDustIsFree() (gas: 119004)\n[PASS] test_Snapshot_NftMovedAfterSnapshotGivesNothing() (gas: 504446)\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: 67082)\n[PASS] test_Tax_ExactAmounts() (gas: 793640)\n[PASS] test_Tax_RoundsDownAndDustIsFree() (gas: 80188)\n[PASS] test_TeamVesting_Linear12Months_NoCliff() (gas: 838186)\n[PASS] test_TransfersAndTheLauncherAreFree() (gas: 770367)\n[PASS] test_TreasuryVesting_ShortRemainder() (gas: 145876)\n[PASS] test_TreasuryVesting_ThirdAtOnce_RestLinear12Months() (gas: 953436)\n[PASS] test_UnsealedSnapshot_WindowClosedToAll() (gas: 421448)\n[PASS] test_VestingBounds() (gas: 4331)\n[PASS] test_Whitelist_AllowancePerNftAndCumulative() (gas: 645735)\n[PASS] test_Whitelist_BoundaryAtMinute30() (gas: 408484)\n[PASS] test_Whitelist_IntermediaryRefused() (gas: 369643)\n[PASS] test_Whitelist_WalletOutsideSnapshotRefused() (gas: 283012)\nSuite result: ok. 34 passed; 0 failed; 0 skipped; finished in 8.14ms (6.74ms CPU time)\n\nRan 2 tests for test/YoloTokenBareChain.t.sol:YoloTokenBareChainTest\n[PASS] test_BareChain_NoGateCode_PlainErc20() (gas: 894036)\n[PASS] test_GateCode_ScheduleAsBefore() (gas: 2087834)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 1.09ms (966.63µ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: 7458778)\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 39.61ms (19.70ms 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 38.53ms (17.61ms 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: 2132225)\n[PASS] test_Fake_RewardStaysTaskOpen() (gas: 7597640)\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: 7805945)\n[PASS] test_NftRight_Staked() (gas: 8006721)\n[PASS] test_NftWrong_SwarmAccepts() (gas: 15019578)\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: 10049707)\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: 7853767)\n[PASS] test_SweetenerBoundOnceByTheOwner() (gas: 538439)\n[PASS] test_ThirdSilence_EndsAsWithoutCall_Decided() (gas: 10456412)\n[PASS] test_ThirdSilence_EndsAsWithoutCall_Undecided() (gas: 9909669)\n[PASS] test_Tie_DoerTakesEveryDisputerBond() (gas: 7345550)\n[PASS] test_TreasuryGetsOnlyItsShare() (gas: 11978013)\n[PASS] test_VoidAppealsCountTowardsThree() (gas: 9505160)\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: 4135603)\n[PASS] test_YoloReward_TreasuryShareBurned() (gas: 11264227)\nSuite result: ok. 43 passed; 0 failed; 0 skipped; finished in 271.71ms (238.37ms 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, μ: 346719, ~: 346550)\n[PASS] test_LockedWhileOpen_EvenAfterRejection_FreeAfterDeadline() (gas: 8460809)\n[PASS] test_NftDecidedRight_VotesGetFivePercent() (gas: 7892558)\n[PASS] test_NftWrong_SwarmAccepts_VotesGetNothing() (gas: 8539975)\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: 7868875)\n[PASS] test_StakedDoer_PartPowerAndSmallPower() (gas: 11839014)\n[PASS] test_TinyAddon_NoBondPart_NothingStuck() (gas: 8875182)\nSuite result: ok. 14 passed; 0 failed; 0 skipped; finished in 100.19ms (132.41ms 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 34.62ms (18.37ms 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 109.77ms (96.33ms CPU time)\n\nRan 4 tests for test/Emergency.t.sol:EmergencyTest\n[PASS] test_AppealAskedLazily_ResolvesByTimer() (gas: 9135153)\n[PASS] test_NoDecision_ResolvesItselfByTimer() (gas: 7814841)\n[PASS] test_ResolvesByTimer_WhenTheStateMachineCanResolve() (gas: 8210033)\n[PASS] test_SwarmNeverAnswers_ResolvesByTimer() (gas: 8765260)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 229.42ms (36.29ms 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 37.52ms (16.76ms CPU time)\n\nRan 15 tests for test/SideCalls.t.sol:SideCallsTest\n[PASS] test_BothSidesCall_EachPaysFromItsOwnBond() (gas: 7991727)\n[PASS] test_Cancel_AfterSideCalls_BondsBackMinusFees() (gas: 6928145)\n[PASS] test_DisputerAppeal_Loses_RestOfBondToWinner() (gas: 7664030)\n[PASS] test_DisputerCallingForTheDoer_PaysLikeAStranger() (gas: 7123408)\n[PASS] test_DoerAppeal_Wins_RestOfBondPlusLoserBond() (gas: 7572320)\n[PASS] test_FeeAboveBond_WalletPaysOnlyTheRest() (gas: 7596764)\n[PASS] test_RepeatCall_CheaperThanBond_ThreeCalls() (gas: 9104716)\n[PASS] test_RepeatCall_Disputer_Loses() (gas: 8619283)\n[PASS] test_RepeatCall_Disputer_Wins() (gas: 8479887)\n[PASS] test_RepeatCall_Doer_Loses() (gas: 7847907)\n[PASS] test_RepeatCall_Doer_Wins() (gas: 8126599)\n[PASS] test_RepeatCall_EachSideOwnFirst() (gas: 8697767)\n[PASS] test_SideSpent_View() (gas: 8470002)\n[PASS] test_StrangerAppeal_PaysBondAndFee() (gas: 7493740)\n[PASS] test_VoidSideAppeal_BondWhole() (gas: 7752007)\nSuite result: ok. 15 passed; 0 failed; 0 skipped; finished in 153.49ms (130.84ms 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 35.44ms (14.26ms CPU time)\n\nRan 23 tests for test/YoloPredict.t.sol:YoloPredictTest\n[PASS] testFuzz_BurnedPlusPaidEqualsDeposited(uint256,uint256,uint256,bool) (runs: 256, μ: 2032175, ~: 2345413)\n[PASS] test_AuthorCanPredict() (gas: 716964)\n[PASS] test_BelowMinPositionReverts() (gas: 465549)\n[PASS] test_ClaimBeforeFinalReverts() (gas: 800954)\n[PASS] test_ClosesAtDeadline_PausesWhileBusy() (gas: 3223161)\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 244.61ms (255.38ms CPU time)\n\nRan 13 tests for test/audit/swarm117/SwarmAudit117.t.sol:SwarmAudit117Test\n[PASS] test_answerAfterTheGraceIgnoredWhoeverPoked() (gas: 8747283)\n[PASS] test_answerDeliveredAfterTheGraceIgnoredEvenUnpoked() (gas: 8409763)\n[PASS] test_answerSignedAfterTheTimeoutIsSilenceAtTheEndOfTheGrace() (gas: 8512745)\n[PASS] test_authorFrontRunsSubmitWithWithdrawal() (gas: 6564106)\n[PASS] test_doerAppealsAgainstOwnAcceptance() (gas: 9163402)\n[PASS] test_doerCannotCallTheSwarmAgainstHimself() (gas: 8086704)\n[PASS] test_doerMayStillAppealARejection() (gas: 8657979)\n[PASS] test_expiredAttestationIsIgnored() (gas: 8339918)\n[PASS] test_lastAttesterCannotBeRemoved() (gas: 403156)\n[PASS] test_noNoticeNeededAfterExpiry() (gas: 3790424)\n[PASS] test_pokeAtDeadlineTurnsLateAnswerIntoSilence() (gas: 8758093)\n[PASS] test_rewardLockedUntilTheDeadlineAndWhileJudged() (gas: 6720357)\n[PASS] test_walletVotesBothSidesAndIsPaid() (gas: 7522228)\nSuite result: ok. 13 passed; 0 failed; 0 skipped; finished in 146.05ms (76.55ms CPU time)\n\nRan 19 tests for test/DareComments.t.sol:DareCommentsTest\n[PASS] testFuzz_ParentMustMatch(uint256,uint256,uint8) (runs: 256, μ: 128732, ~: 128688)\n[PASS] testFuzz_WalkFindsEveryComment(uint256) (runs: 256, μ: 4277144, ~: 4279407)\n[PASS] test_500BytesOk_501Reverts() (gas: 343757)\n[PASS] test_AnyTargetIdAccepted() (gas: 179512)\n[PASS] test_ChainWalksBackThroughOneThread() (gas: 665162)\n[PASS] test_EmptyTextReverts() (gas: 30904)\n[PASS] test_EventCarriesEveryField() (gas: 170631)\n[PASS] test_FirstCommentPrevBlockZero() (gas: 209397)\n[PASS] test_GasReport() (gas: 617242)\nLogs:\n  exec gas post 100B 79456\n  exec gas post 280B 63717\n  exec gas post 500B 69132\n  exec gas reply 280B 65961\n\n[PASS] test_HiddenListTakesCommentAsKind3() (gas: 2628492)\n[PASS] test_KindOnlyTaskOrProof() (gas: 226273)\n[PASS] test_NoEthAccepted() (gas: 67482)\n[PASS] test_OneByteOk() (gas: 99230)\n[PASS] test_ParentFromOtherThreadReverts() (gas: 181230)\n[PASS] test_ParentNotYetExistingReverts() (gas: 154884)\n[PASS] test_ReplyToSameThreadOk() (gas: 221811)\n[PASS] test_RevertedPostLeavesChain() (gas: 227806)\n[PASS] test_ThreadsKindsVaultsHaveSeparateChains() (gas: 990662)\n[PASS] test_Utf8CountedInBytes() (gas: 306286)\nSuite result: ok. 19 passed; 0 failed; 0 skipped; finished in 431.74ms (440.66ms CPU time)\n\nRan 24 tests for test/Votes.t.sol:VotesTest\n[PASS] testFuzz_EachIdOnce(uint8,uint8) (runs: 256, μ: 3927007, ~: 3950061)\n[PASS] test_10Votes_DecideAtTheVoteEnd() (gas: 3407006)\n[PASS] test_5Votes_NoDecision() (gas: 321792)\n[PASS] test_BadVotesRevert() (gas: 210199)\n[PASS] test_Delegate_OneTokenOnly() (gas: 325915)\n[PASS] test_Delegate_VotesForTheOwner_IdsOnce() (gas: 640428)\n[PASS] test_InstantDecision_NextBatchReverts() (gas: 511387)\n[PASS] test_Instant_20Votes() (gas: 388949)\n[PASS] test_MockNft_MintBatch() (gas: 3160319)\n[PASS] test_NftInEscrow() (gas: 452347)\n[PASS] test_NftsGotAfterOpeningVote() (gas: 2219688)\n[PASS] test_NoVoteWithoutDispute() (gas: 781945)\n[PASS] test_NotOwnId_RevertsAll() (gas: 212538)\n[PASS] test_OneWallet_DecidesAlone() (gas: 1001607)\n[PASS] test_OneWallet_MinWinnerWallets() (gas: 4646083)\n[PASS] test_OnlyTheHolderVotesHisNfts() (gas: 355800)\n[PASS] test_RepeatInList_Reverts() (gas: 114398)\n[PASS] test_SideCannotChange() (gas: 268074)\n[PASS] test_TransferredAfterVote_NoSecondVote() (gas: 1601894)\n[PASS] test_TwoThousandNfts_NeverMoreVotes() (gas: 60332000)\n[PASS] test_TwoTransactionsSameSide() (gas: 349588)\n[PASS] test_VoteCountsEverySentNft() (gas: 14024377)\n[PASS] test_VoterRewardSplitByCorrectVotes() (gas: 7042216)\n[PASS] test_VotesAfterVoteEndRevert() (gas: 58437)\nSuite result: ok. 24 passed; 0 failed; 0 skipped; finished in 352.38ms (375.47ms CPU time)\n\nRan 21 tests for test/Swarm.t.sol:SwarmTest\n[PASS] testFuzz_NoMandatoryCheck_AnyRewardSize(uint256,uint8) (runs: 256, μ: 796979, ~: 780947)\n[PASS] test_ActionNotSold_LargeSubmitStillWorks() (gas: 11068463)\n[PASS] test_AnswerAfterSilenceIgnored() (gas: 6385369)\n[PASS] test_AnswerSignedEarly_DeliveredLate_Counts() (gas: 6117856)\n[PASS] test_AttesterRotationTimelocked() (gas: 2407774)\n[PASS] test_CallSwarm_IntakeBroken_Reverts_NothingTaken() (gas: 1713608)\n[PASS] test_CallbackGasUnder100k() (gas: 215841)\nLogs:\n  callback gas: 40971\n\n[PASS] test_CallbackSelectorMatchesDocs() (gas: 734)\n[PASS] test_DuplicateAnswerIgnored_FirstWins() (gas: 6128882)\n[PASS] test_IntakeBroken_LargeSubmitUnaffected() (gas: 10580110)\n[PASS] test_LargeTask_DisputedAtOnce_Rejected() (gas: 11212370)\n[PASS] test_LargeTask_DisputedNftAccepts_Fee5To5() (gas: 11338738)\n[PASS] test_LargeTask_QueuedSubmission_ActivatedWithoutQuestion() (gas: 14304618)\n[PASS] test_LateAnswerIgnored_Timeout() (gas: 6339449)\n[PASS] test_LostCallback_IsSilence_NoPublicFallback() (gas: 6460570)\n[PASS] test_NoMandatoryCheck_ImdTask_NoDispute_AcceptedBondBack() (gas: 10546770)\n[PASS] test_NoMandatoryCheck_MaxReward_NothingAsked_AcceptedByTimer() (gas: 10505102)\n[PASS] test_NoPublicFallback_ForAnyAttestation() (gas: 314829)\n[PASS] test_RefusedBody_Status1_IsSilence() (gas: 6208832)\n[PASS] test_RequestShapeAndBody() (gas: 4786337)\n[PASS] test_SpoofedCallbackIgnored() (gas: 494441)\nSuite result: ok. 21 passed; 0 failed; 0 skipped; finished in 530.95ms (285.31ms 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, μ: 2486084, ~: 2478937)\n[PASS] testFuzz_Invariant_BurnedPaidHeldEqualsDeposited(uint256,uint8,uint8) (runs: 256, μ: 3127106, ~: 2860066)\n[PASS] testFuzz_Invariant_NeverPaysOutMoreThanDeposited(uint256,uint256,uint256,bool) (runs: 256, μ: 2003601, ~: 2316779)\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: 4456165)\n[PASS] test_Life_AcceptedOnFirstSubmission() (gas: 1969629)\n[PASS] test_Life_AllSubmissionsRejected_ThenExpired() (gas: 3240324)\n[PASS] test_Life_DisputeAppealSwarm_AllAfterDeadline() (gas: 4348929)\n[PASS] test_Life_MultipleSubmissionsQueuedAtDeadline() (gas: 4140507)\n[PASS] test_Life_RejectedThenAcceptedOnResubmission() (gas: 4028627)\n[PASS] test_Life_SubmissionSecondBeforeDeadline_JudgedAfterDeadline() (gas: 1868963)\n[PASS] test_Life_VoteTieNoQuorum_DefaultsToAccepted() (gas: 2671071)\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 423.53ms (847.10ms CPU time)\n\nRan 8 tests for test/audit/AuditB.t.sol:AuditBTest\n[PASS] testFuzz_Guard_ModeAPaymentsBookExactly(uint256,uint96,uint96,bool) (runs: 256, μ: 7312564, ~: 7335832)\n[PASS] testFuzz_Guard_PinnedVersionNeverChanges(uint16,uint32) (runs: 256, μ: 3173272, ~: 3173215)\n[PASS] test_Guard_BankOnlyForDesks() (gas: 132520)\n[PASS] test_Guard_FailedPushesBecomeCreditsAndBooksClose() (gas: 9658237)\n[PASS] test_Guard_LeakedAttesterKeyAloneCannotDecideDuringTheRemovalTimelock() (gas: 2884860)\n[PASS] test_Guard_LongestDueChainFitsOneCall() (gas: 10895594)\n[PASS] test_Guard_RevertingPinnedDevPricesNeverBlocksWithdrawals() (gas: 3992617)\n[PASS] test_Guard_ThirdPartyAnswerToACopiedQuestionCannotDecideOurCase() (gas: 9436443)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 713.65ms (891.90ms CPU time)\n\nRan 1 test for test/review/ReviewQueue.t.sol:ReviewQueue\n[PASS] testFuzz_QueueContributorsGetExactlyTheirs((uint8,uint256)) (runs: 256, μ: 8799512, ~: 7960376)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 722.66ms (698.59ms 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, μ: 9204187, ~: 9460346)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 1.34s (1.32s 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: 3570998)\nLogs:\n  askAppealSwarm gas that voids the appeal: 0\n\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 1.29s (228.81ms CPU time)\n\nRan 4 tests for test/TextRule.t.sol:TextRuleTest\n[PASS] testFuzz_AsciiWithOneByte(uint16,uint16,uint8,uint256) (runs: 256, μ: 222384, ~: 159721)\n[PASS] testFuzz_MixedUtf8(uint256,uint16) (runs: 256, μ: 63678, ~: 55064)\n[PASS] testFuzz_RandomBytes(bytes) (runs: 256, μ: 14341, ~: 13630)\n[PASS] test_Examples() (gas: 562950)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 1.47s (333.86ms 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, μ: 10940586, ~: 9981822)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 1.47s (1.45s 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: 8427285)\n[PASS] test_payoutNeedsNoPrice() (gas: 7009383)\n[PASS] test_silentSwarmCallStillPaysTheWholeBonus() (gas: 8499535)\n[PASS] test_splitFollowsTheRewardRule_NftVotesAndStake() (gas: 14867270)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 4.02s (47.71ms CPU time)\n\nRan 20 tests for test/DareCommentsFuzz.t.sol:DareCommentsFuzzTest\n[PASS] testFuzz_AnyParentId(uint256,uint256) (runs: 256, μ: 408022, ~: 403919)\n[PASS] testFuzz_AuthorIsMsgSender(address,address) (runs: 256, μ: 106149, ~: 106149)\n[PASS] testFuzz_DirtyKindWordReverts(uint256) (runs: 256, μ: 36756, ~: 36700)\n[PASS] testFuzz_DirtyVaultWordReverts(uint256) (runs: 256, μ: 31115, ~: 31014)\n[PASS] testFuzz_IdsGlobalAndSequential(uint256) (runs: 256, μ: 1380243, ~: 1341303)\n[PASS] testFuzz_KindOnlyOneOrTwo(uint8) (runs: 256, μ: 46565, ~: 40199)\n[PASS] testFuzz_LastBlockFollowsBlockNumber(uint256,uint256) (runs: 256, μ: 173143, ~: 173197)\n[PASS] testFuzz_RejectedPostChangesNothing(uint8,uint256,uint256) (runs: 256, μ: 201591, ~: 202504)\n[PASS] testFuzz_TextLengthBounds(uint256) (runs: 1000, μ: 189279, ~: 187142)\n[PASS] testFuzz_ThreadsAreSeparate(address,uint256,address,uint256,bool) (runs: 256, μ: 200931, ~: 201056)\n[PASS] test_CannotReplyToItsOwnId() (gas: 213405)\n[PASS] test_CheckOrder() (gas: 340251)\n[PASS] test_ConstantsAreFixed() (gas: 17241)\n[PASS] test_ContractAuthorIsTheContract() (gas: 294143)\n[PASS] test_DeepReplyChain() (gas: 2421527)\n[PASS] test_ReplyToRevertedIdReverts() (gas: 57313)\n[PASS] test_TextBoundaryEachSide() (gas: 1945840)\n[PASS] test_TextIsKeptVerbatim() (gas: 106097)\n[PASS] test_TruncatedOrBadOffsetCalldataReverts() (gas: 222786)\n[PASS] test_ViewsNeedNoState() (gas: 13846)\nSuite result: ok. 20 passed; 0 failed; 0 skipped; finished in 4.02s (4.22s 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: 7474565)\n[PASS] test_DeadlineDuringSubmission_SubmissionStillRuns() (gas: 10453361)\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: 5291685)\n[PASS] test_ParamBounds() (gas: 430781)\n[PASS] test_ParamChange_DoesNotAffectExistingTasks() (gas: 13846801)\n[PASS] test_ParamProposalCancel() (gas: 1336248)\n[PASS] test_PauseStopsOnlyNewTasks() (gas: 1280793)\n[PASS] test_Queue_FlatBondAndVoidRefund() (gas: 13133742)\n[PASS] test_QuoteBondFormula() (gas: 1949242)\n[PASS] test_TopUpDuringSubmission_PaidToDoerOnAcceptance() (gas: 7134989)\n[PASS] test_TopUpDuringSubmission_StaysInRewardAfterRejection() (gas: 10567037)\n[PASS] test_TopUpRightBeforeDeadline_LockedThenReturned() (gas: 4318158)\n[PASS] test_WithdrawRules() (gas: 12242776)\nSuite result: ok. 25 passed; 0 failed; 0 skipped; finished in 4.11s (205.66ms CPU time)\n\nRan 51 tests for test/Disputes.t.sol:DisputesTest\n[PASS] test_Appeal_ActionNotSold() (gas: 6864596)\n[PASS] test_Appeal_ByDoerSide_Flip() (gas: 7695257)\n[PASS] test_Appeal_IntakeReverts_AppealVoided() (gas: 7415363)\n[PASS] test_Appeal_LateAnswerAfterSilenceIgnored() (gas: 8066747)\n[PASS] test_Appeal_NeverAsked_ThirdTimeEndsUncalled() (gas: 7704323)\n[PASS] test_Appeal_NeverAsked_TimesOut() (gas: 7254199)\n[PASS] test_Appeal_PriceRaised_AppealVoided() (gas: 7280648)\n[PASS] test_Appeal_Silent_DecisionStands_NewWindow() (gas: 8170156)\n[PASS] test_Appeal_Silent_ReappealFlips() (gas: 8887509)\n[PASS] test_Appeal_SwarmAgrees() (gas: 8167733)\n[PASS] test_Appeal_SwarmFlips_NoFeeRefund_WinnerTakesAll() (gas: 7835415)\n[PASS] test_Appeal_WindowClosed() (gas: 1082479)\n[PASS] test_CallSwarm_ActionNotSold_DefaultStands() (gas: 6415919)\n[PASS] test_CallSwarm_LowerPrice_NoFeeRefund() (gas: 7311298)\n[PASS] test_CallSwarm_WrongPhase() (gas: 599802)\n[PASS] test_ClaimsPlayTimersThemselves_NoPokeNeeded() (gas: 6560724)\n[PASS] test_ContributorAppellantWins_GetsHisShareLikeAnyWinner() (gas: 8067674)\n[PASS] test_ContributorDisputerWins_SameShareAsAnyDisputer() (gas: 6980549)\n[PASS] test_ContributorDoerWins_GetsHisShareLikeAnyWinner() (gas: 11143394)\n[PASS] test_DisputeWindowClosedAndLimits() (gas: 1668234)\n[PASS] test_Dispute_NftAccepts_Fee5To5_Bond5050() (gas: 7024448)\n[PASS] test_Dispute_NftRejects_BondSplit5050() (gas: 6895298)\n[PASS] test_DisputerWhoTopsUpLater_StillGetsHisFullShare() (gas: 6838709)\n[PASS] test_DoerReply() (gas: 1578863)\n[PASS] test_InstantDecision_FiresOnceTheDeltaIsCrossed() (gas: 8334609)\n[PASS] test_NoDecision_CallAfterWindow_Reverts() (gas: 6536840)\n[PASS] test_NoDecision_CallSwarm_Accepts_CallerLosesBondAndFee() (gas: 7480603)\n[PASS] test_NoDecision_CallSwarm_Rejects_CallerGetsOnlyHisShare() (gas: 7696960)\n[PASS] test_NoDecision_DoerCallsSwarm_Confirmed() (gas: 7428625)\n[PASS] test_NoDecision_DoerCallsSwarm_Rejected() (gas: 7271366)\n[PASS] test_NoDecision_NobodyCalls_Accepted_DisputerBondsAllToDoer() (gas: 7554184)\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: 8541684)\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: 11404889)\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: 6869376)\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: 14442736)\n[PASS] test_SwarmFees_WinnerSideOnly_DoerSilentCallRefunded() (gas: 12768102)\n[PASS] test_ThirdSilence_Decided_NftDecisionStands() (gas: 10223293)\n[PASS] test_ThirdSilence_NoDecision_AcceptedDisputerBondToDoer() (gas: 9644760)\n[PASS] test_YoloReward_FeeSplitsLikeAnyReward_Votes5_Doer4_Burner1() (gas: 11465614)\n[PASS] test_YoloReward_TreasuryPartToBurner_FullPowerSix() (gas: 15101226)\nSuite result: ok. 51 passed; 0 failed; 0 skipped; finished in 4.08s (424.88ms CPU time)\n\nRan 2 tests for test/VotePowerFuzz.t.sol:VotePowerFuzzTest\n[PASS] testFuzz_OneVotePerNft(uint256) (runs: 256, μ: 98674588, ~: 100484517)\n[PASS] test_OneVotePerNft_Fixed() (gas: 387092570)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 4.10s (4.39s CPU time)\n\nRan 1 test for test/DareCommentsInvariant.t.sol:DareCommentsInvariantTest\n[PASS]\nDareCommentsInvariantTest invariants:\n[PASS] invariant_CountIsAcceptedPosts\n[PASS] invariant_HandlerSawNoMismatch\n[PASS] invariant_LastBlockMatchesNewestComment\n[PASS] invariant_NoBalance\n[PASS] invariant_PrevBlockChainVisitsEveryComment\n DareCommentsInvariantTest invariants (runs: 256, calls: 15360, reverts: 0)\n\n╭---------------------+----------+-------+---------+----------╮\n| Contract            | Selector | Calls | Reverts | Discards |\n+=============================================================+\n| DareCommentsHandler | post     | 7767  | 0       | 0        |\n|---------------------+----------+-------+---------+----------|\n| DareCommentsHandler | sendEth  | 7593  | 0       | 0        |\n╰---------------------+----------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 11.62s (11.62s 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               | 559   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | appeal               | 550   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | askAppealSwarm       | 524   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | breakIntake          | 549   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | callSwarm            | 544   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | claim                | 542   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | createTask           | 526   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | dispute              | 594   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | expireAndWithdraw    | 516   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | lock                 | 489   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | mintTrophy           | 562   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | payoutBonus          | 540   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | poke                 | 523   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progress             | 535   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progressA            | 557   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progressB            | 509   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progressC            | 523   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progressD            | 525   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | setIntakePrice       | 525   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | submit               | 562   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | sweep                | 555   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | sweeten              | 529   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | topUp                | 505   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | vote                 | 528   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | warp                 | 523   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | withdrawBonus        | 554   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | withdrawContribution | 559   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | withdrawLock         | 493   | 0       | 0        |\n╰----------+----------------------+-------+---------+----------╯\n\nLogs:\n  createTask: 9\n  topUp: 2\n  submit: 0\n  dispute: 0\n  vote: 0\n  appeal: 0\n  breakIntake: 5\n  callSwarm: 0\n  answer: 0\n  claimDisputer: 0\n  claimVoter: 0\n  claimVoid: 0\n  withdrawContribution: 3\n  withdrawExpired: 3\n  progress: 0\n  sweeten: 2\n  withdrawBonus: 1\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.27s (17.25s CPU time)\n\nRan 94 test suites in 17.31s (61.55s CPU time): 738 tests passed, 0 failed, 4 skipped (742 total tests)\n","passed":true},{"durationMs":245,"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)\",\"DareComments.post(address,uint8,uint256,uint256,string)\",\"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\":93,\"CONTRACTS.md\":179,\"README.md\":100,\"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-COMMENTS.md\":66,\"docs/LAUNCH-TASK.md\":202,\"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\":422,\"script/check-launch-task.py\":32,\"script/snapshot/snapshot.py\":187,\"src/BuybackBurner.sol\":126,\"src/DareComments.sol\":65,\"src/DareTrophy.sol\":222,\"src/DevPrices.sol\":129,\"src/HiddenList.sol\":297,\"src/OracleAttestation.sol\":57,\"src/ParamsRegistry.sol\":216,\"src/ProtocolDirectory.sol\":169,\"src/TaskVault.sol\":838,\"src/TrophyCatalog.sol\":119,\"src/VaultParams.sol\":250,\"src/VaultTypes.sol\":450,\"src/VotePower.sol\":52,\"src/YoloLockHub.sol\":154,\"src/YoloPredict.sol\":305,\"src/YoloSweetener.sol\":177,\"src/adapters/UniswapV3SwapAdapter.sol\":71,\"src/desks/CaseDesk.sol\":556,\"src/desks/Desk.sol\":143,\"src/desks/DeskApi.sol\":137,\"src/desks/DisputeDesk.sol\":807,\"src/helpers/AttestationChecker.sol\":59,\"src/helpers/SwarmQuestion.sol\":177,\"src/helpers/TextRules.sol\":245,\"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\":115,\"src/token/ProjectVesting.sol\":104,\"src/token/Vestings.sol\":38,\"src/token/YoloSplitter.sol\":103,\"src/token/YoloToken.sol\":176,\"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/DareComments.t.sol\":326,\"test/DareCommentsFuzz.t.sol\":299,\"test/DareCommentsInvariant.t.sol\":248,\"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/ExtrasBareChain.t.sol\":91,\"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\":734,\"test/YoloTokenBareChain.t.sol\":130,\"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\":338,\"test/audit/swarm117/VestingClockPreStart.t.sol\":92,\"test/fork/ExtrasOnLiveCore.fork.t.sol\":149,\"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/DareCommentsLaunch.t.sol\":240,\"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}],"detail":"all checks passed","evaluation":"checks","profile":"foundry","status":"accepted","submissionHash":"2af1d44197262cae91d96141e4e4e751f57c173f58b3813295a287b51ed9b0e2","verifiedTreeHash":"039621afe247a2b670c6f1f095e1bdada4da990e","verifierVersion":"0.1.0+f3653923"},{"checks":[{"durationMs":597425,"exitCode":0,"name":"build","output":"Compiling 182 files with Solc 0.8.28\nSolc 0.8.28 finished in 597.20s\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:183:5:\n    |\n183 |     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:183:5:\n    |\n183 |     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":19289,"exitCode":0,"name":"test","output":"No files changed, compilation skipped\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 214.87µs (96.57µ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 774.80µs (515.29µs CPU time)\n\nRan 1 test for test/fork/ExtrasOnLiveCore.fork.t.sol:ExtrasOnLiveCoreForkTest\n[SKIP: skipped] setUp() (gas: 0)\nSuite result: ok. 0 passed; 0 failed; 1 skipped; finished in 859.26µs (0.00ns 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 690.95µs (232.28µ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://imdnotdead.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 1.01ms (845.27µ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 587.47µs (397.78µs CPU time)\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 3.35ms (2.03ms 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.69ms (2.15ms 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 2.48ms (0.00ns CPU time)\n\nRan 8 tests for test/review/DareCommentsLaunch.t.sol:DareCommentsLaunchTest\n[PASS] test_DeploymentRejectsEth() (gas: 104825)\n[PASS] test_FactoryDeploymentNeedsNoArgumentsOrSetup() (gas: 560231)\n[PASS] test_InvalidKindsAndParentsDoNotChangeState() (gas: 6429986)\n[PASS] test_NonCanonicalKindCalldataReverts() (gas: 41203)\n[PASS] test_ReaderFiltersKindBeforeChoosingPreviousBlock() (gas: 273381)\n[PASS] test_RuntimeHasNoCallsOrForbiddenOpcodes() (gas: 642260)\n[PASS] test_SameBlockReaderUsesEarliestThreadEvent() (gas: 180185)\n[PASS] test_UnknownSelectorsAndEmptyCalldataRevert() (gas: 94181)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 6.49ms (6.09ms CPU time)\n\nRan 2 tests for test/audit/LateAppealAsk.t.sol:LateAppealAskTest\n[PASS] test_LateAppealAskReverts() (gas: 2108484)\n[PASS] test_TimelyAppealAskIsAsked() (gas: 2279994)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 8.14ms (3.31ms 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 945.63µs (676.59µs 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 599.58µs (291.86µs 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: 37699193)\nLogs:\n  DevPrices 2467 runtime, margin 22109\n  UniswapV3SwapAdapter 1673 runtime, margin 22903\n  ParamsRegistry 13552 runtime, margin 11024\n  TextRules 5249 runtime, margin 19327\n  SwarmQuestionBuilder 5506 runtime, margin 19070\n  VotePower 942 runtime, margin 23634\n  AttestationChecker 2125 runtime, margin 22451\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 4526 runtime, margin 20050\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 4562 runtime, margin 20014\n  HiddenList 3789 runtime, margin 20787\n  YoloPredict 6385 runtime, margin 18191\n\n[PASS] test_L2_docLaunch1Args_matchPlan() (gas: 894953)\n[PASS] test_L3_docLaunch2Args_matchPlan() (gas: 1361721)\n[PASS] test_L5_docLaunch3Args_matchPlan() (gas: 685090)\nSuite result: ok. 5 passed; 0 failed; 0 skipped; finished in 12.37ms (10.32ms 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 14.87ms (14.57ms 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.47ms (1.36ms 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 21.28ms (4.25ms CPU time)\n\nRan 2 tests for test/audit/AddonAfterSub.t.sol:AddonAfterSubmissionTest\n[PASS] test_AddonAfterSubmission_BatchClaimPaysSweetener() (gas: 2687916)\n[PASS] test_AddonBeforeSubmission_BatchClaimPaysSweetener() (gas: 2585347)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 28.07ms (3.85ms 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 24.95ms (1.44ms 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 31.38ms (11.40ms 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: 15786110)\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 33.87ms (8.22ms CPU time)\n\nRan 2 tests for test/Gas.t.sol:GasTest\n[PASS] test_GasProfile() (gas: 8438891)\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): 116580\n  vote (20 NFTs, not the first vote): 226796\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): 40971\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 33.95ms (13.40ms CPU time)\n\nRan 1 test for test/audit/MaxImdInCap.t.sol:MaxImdInCapTest\n[PASS] test_AppealPullsMoreImdThanMaxImdIn() (gas: 1643322)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 5.71ms (1.27ms 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 245.84µs (33.83µs 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 1.04ms (477.95µs 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 14.67ms (14.09ms CPU time)\n\nRan 6 tests for test/Directory.t.sol:DirectoryTest\n[PASS] test_ConstructorChecks() (gas: 6526)\n[PASS] test_CurrentMayGoBack() (gas: 596847)\n[PASS] test_OnlySafeProposesAndCancels() (gas: 587178)\n[PASS] test_ProposalChecks() (gas: 217526)\n[PASS] test_V2SideBySide_AfterTimelock() (gas: 7803719)\n[PASS] test_Version1FromConstructor() (gas: 66747)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 38.58ms (13.39ms CPU time)\n\nRan 3 tests for test/audit/LazyAppealVoidWindow.t.sol:LazyAppealVoidWindowTest\n[PASS] test_LateReAppealAfterTheVoidWindow_Reverts() (gas: 2274205)\n[PASS] test_PokeAfterVoidPlusWindow_IsFinal() (gas: 2344563)\n[PASS] test_WindowAfterVoid_StartsAtTheVoidMoment() (gas: 2111458)\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 43.06ms (5.64ms CPU time)\n\nRan 8 tests for test/review/ReviewAttestation.t.sol:ReviewAttestation\n[PASS] test_InconsistentCountsAreIgnored() (gas: 6412739)\n[PASS] test_NoFallback_NeitherOnePersonNorOrderedPanel() (gas: 2373699)\n[PASS] test_OnePersonPanelIsSilenceOnAppeal() (gas: 4598475)\n[PASS] test_OnePersonPanelIsSilenceOnCall() (gas: 2840857)\n[PASS] test_OrderedPanelCounts() (gas: 4402532)\n[PASS] test_PanelBounds() (gas: 1799342)\n[PASS] test_PanelChangeWaitsTimelock() (gas: 3580554)\n[PASS] test_QuorumBelowOrderedIsIgnored() (gas: 2315546)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 32.82ms (16.92ms CPU time)\n\nRan 2 tests for test/ExtrasBareChain.t.sol:ExtrasBareChainTest\n[PASS] test_BareChain_NoVaultCode_AllSixDeploy() (gas: 9163095)\n[PASS] test_BareChain_NoVaultCode_ModulesInert() (gas: 9182900)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 2.05ms (1.64ms 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 47.37ms (22.87ms 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: 149109)\n[PASS] test_ParamsOfIsTheRegistrySnapshot() (gas: 716560)\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 50.52ms (12.97ms CPU time)\n\nRan 1 test for test/review/ReviewLaunch.t.sol:ReviewLaunchRuntime\n[PASS] test_L5_vote_gasPerNft() (gas: 60470665)\nLogs:\n  vote 10 NFTs: 175377\n  vote 490 more NFTs: 2190139\n  gas per NFT (mock NFT): 4469\n  max NFTs in one vote under the cap (mock): 3754\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 54.98ms (36.54ms CPU time)\n\nRan 7 tests for test/review/ReviewProofs.t.sol:ReviewProofs\n[PASS] test_AppealPriceJump_RevertsWithMaxImdIn() (gas: 2259625)\n[PASS] test_BodyBoundedByParams_OneDisputerOnly() (gas: 2622082)\n[PASS] test_BondNeverDoubles_SubmitPassesWithQuotedMax() (gas: 1433363)\n[PASS] test_DisputeVoteAppealAfterTaskDeadline() (gas: 2232780)\n[PASS] test_Eip7702Voter_EcdsaSignatureCounted() (gas: 2148411)\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 27.13ms (8.62ms CPU time)\n\nRan 4 tests for test/Emergency.t.sol:EmergencyTest\n[PASS] test_AppealAskedLazily_ResolvesByTimer() (gas: 9135153)\n[PASS] test_NoDecision_ResolvesItselfByTimer() (gas: 7814841)\n[PASS] test_ResolvesByTimer_WhenTheStateMachineCanResolve() (gas: 8210033)\n[PASS] test_SwarmNeverAnswers_ResolvesByTimer() (gas: 8765260)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 63.87ms (28.75ms 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 27.95ms (8.66ms CPU time)\n\nRan 2 tests for test/review/ReviewGas.t.sol:ReviewGas\n[PASS] test_AppealAskGas_Under1_5M() (gas: 4618000)\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 27.23ms (6.97ms CPU time)\n\nRan 4 tests for test/VoteBatch.t.sol:VoteBatchTest\n[PASS] test_Batch_BonusNotPaidOutYet_StaysClaimable() (gas: 8022186)\n[PASS] test_Batch_NothingToClaimReverts() (gas: 7901124)\n[PASS] test_Batch_PaysWhatSingleClaimsPay() (gas: 24099111)\n[PASS] test_Batch_TakesTheYoloBonusShare() (gas: 13834453)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 66.35ms (48.76ms CPU time)\n\nRan 7 tests for test/Cover.t.sol:CoverTest\n[PASS] test_CategoryStoredAndCoverEmitted() (gas: 389973)\n[PASS] test_CategoryUnchangedThroughDispute() (gas: 7923263)\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 67.61ms (26.07ms 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 31.14ms (10.21ms 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: 8427285)\n[PASS] test_payoutNeedsNoPrice() (gas: 7009383)\n[PASS] test_silentSwarmCallStillPaysTheWholeBonus() (gas: 8499535)\n[PASS] test_splitFollowsTheRewardRule_NftVotesAndStake() (gas: 14867270)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 79.15ms (56.02ms 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: 11476287)\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 84.63ms (56.07ms 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.29ms (0.00ns 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 19.37ms (1.30ms CPU time)\n\nRan 2 tests for test/review/ReviewYolo.t.sol:ReviewYoloUnit\n[PASS] test_vestingStreamsFromArrivalWithoutACliff() (gas: 897245)\n[PASS] test_whitelistRefusesOutputTakenToARouter() (gas: 1179429)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 1.24ms (1.11ms CPU time)\n\nRan 9 tests for test/VoteGas.t.sol:VoteGasTest\n[PASS] test_VoteGas_Claim() (gas: 781687)\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: 16554919)\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: 3983324)\nLogs:\n  vote 25 NFT as delegate (first vote, no decision) exec: 269898\n  vote 25 NFT as delegate (first vote, no decision) tx: 266929\n\n[PASS] test_VoteGas_First1() (gas: 159633)\nLogs:\n  vote 1 NFT (first vote) exec: 143875\n  vote 1 NFT (first vote) tx: 136349\n\n[PASS] test_VoteGas_First100() (gas: 818488)\nLogs:\n  vote 100 NFT (first vote, decides) exec: 585532\n  vote 100 NFT (first vote, decides) tx: 569723\n\n[PASS] test_VoteGas_First100_noDecide() (gas: 4366443)\nLogs:\n  vote 100 NFT (first vote, no decision) exec: 538581\n  vote 100 NFT (first vote, no decision) tx: 529228\n\n[PASS] test_VoteGas_First25() (gas: 350160)\nLogs:\n  vote 25 NFT (first vote, decides) exec: 281545\n  vote 25 NFT (first vote, decides) tx: 272021\n\n[PASS] test_VoteGas_First25_noDecide() (gas: 3898096)\nLogs:\n  vote 25 NFT (first vote, no decision) exec: 234562\n  vote 25 NFT (first vote, no decision) tx: 231526\n\n[PASS] test_VoteGas_Profile() (gas: 674688)\nLogs:\n  vote 1 NFT (first vote) exec: 143875\n  vote 1 NFT (first vote) tx: 136349\n  vote 10 NFT (later vote) exec: 139672\n  vote 10 NFT (later vote) tx: 137900\n  vote 15 NFT (later vote) exec: 159861\n  vote 15 NFT (later vote) tx: 157667\n  vote 2 NFT (later vote) exec: 124328\n  vote 2 NFT (later vote) tx: 123216\n\nSuite result: ok. 9 passed; 0 failed; 0 skipped; finished in 75.22ms (21.36ms CPU time)\n\nRan 34 tests for test/YoloToken.t.sol:YoloTokenTest\n[PASS] test_AfterMinute60_PlainErc20() (gas: 137108)\n[PASS] test_BeforeOpenAt_NobodyBuys() (gas: 752448)\n[PASS] test_ConstructorRejectsZeroPoolManagerOrSafe() (gas: 9166)\n[PASS] test_DevVesting_Linear12Months_NoCliff() (gas: 992024)\n[PASS] test_GateWithoutCode_PlainErc20() (gas: 280536)\n[PASS] test_Gate_ConsumeNeedsSealAndBooksPerCallingToken() (gas: 464018)\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: 4276159)\n[PASS] test_IncentivesVesting_QuarterAtOnce_RestLinear24Months() (gas: 966982)\n[PASS] test_OpenAtBounds() (gas: 8963)\n[PASS] test_SealAtOpenAtDoesNotCount() (gas: 256878)\n[PASS] test_SellTax_BuyFreeSellTaxedInWindow_BothAt45() (gas: 564926)\n[PASS] test_SellTax_ExactAmounts() (gas: 1063766)\n[PASS] test_SellTax_OnTopOfBalanceAndAllowance() (gas: 480636)\n[PASS] test_SellTax_RoundsDownAndDustIsFree() (gas: 119004)\n[PASS] test_Snapshot_NftMovedAfterSnapshotGivesNothing() (gas: 504446)\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: 67082)\n[PASS] test_Tax_ExactAmounts() (gas: 793640)\n[PASS] test_Tax_RoundsDownAndDustIsFree() (gas: 80188)\n[PASS] test_TeamVesting_Linear12Months_NoCliff() (gas: 838186)\n[PASS] test_TransfersAndTheLauncherAreFree() (gas: 770367)\n[PASS] test_TreasuryVesting_ShortRemainder() (gas: 145876)\n[PASS] test_TreasuryVesting_ThirdAtOnce_RestLinear12Months() (gas: 953436)\n[PASS] test_UnsealedSnapshot_WindowClosedToAll() (gas: 421448)\n[PASS] test_VestingBounds() (gas: 4331)\n[PASS] test_Whitelist_AllowancePerNftAndCumulative() (gas: 645735)\n[PASS] test_Whitelist_BoundaryAtMinute30() (gas: 408484)\n[PASS] test_Whitelist_IntermediaryRefused() (gas: 369643)\n[PASS] test_Whitelist_WalletOutsideSnapshotRefused() (gas: 283012)\nSuite result: ok. 34 passed; 0 failed; 0 skipped; finished in 10.97ms (9.42ms CPU time)\n\nRan 4 tests for test/audit/AuditNoFallbackOwnVote.t.sol:AuditNoFallbackOwnVoteTest\n[PASS] test_DoerCannotDispute() (gas: 9092555)\n[PASS] test_LostCallbackIsSilence_NoPublicFallback() (gas: 8540419)\n[PASS] test_NoDecisionBelowInstantDelta() (gas: 8684088)\n[PASS] test_PartialCountRelayedByAnOutsiderDecidesNothing() (gas: 8572847)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 49.02ms (32.89ms CPU time)\n\nRan 2 tests for test/YoloTokenBareChain.t.sol:YoloTokenBareChainTest\n[PASS] test_BareChain_NoGateCode_PlainErc20() (gas: 894036)\n[PASS] test_GateCode_ScheduleAsBefore() (gas: 2087834)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 1.42ms (1.28ms CPU time)\n\nRan 13 tests for test/audit/swarm117/SwarmAudit117.t.sol:SwarmAudit117Test\n[PASS] test_answerAfterTheGraceIgnoredWhoeverPoked() (gas: 8747283)\n[PASS] test_answerDeliveredAfterTheGraceIgnoredEvenUnpoked() (gas: 8409763)\n[PASS] test_answerSignedAfterTheTimeoutIsSilenceAtTheEndOfTheGrace() (gas: 8512745)\n[PASS] test_authorFrontRunsSubmitWithWithdrawal() (gas: 6564106)\n[PASS] test_doerAppealsAgainstOwnAcceptance() (gas: 9163402)\n[PASS] test_doerCannotCallTheSwarmAgainstHimself() (gas: 8086704)\n[PASS] test_doerMayStillAppealARejection() (gas: 8657979)\n[PASS] test_expiredAttestationIsIgnored() (gas: 8339918)\n[PASS] test_lastAttesterCannotBeRemoved() (gas: 403156)\n[PASS] test_noNoticeNeededAfterExpiry() (gas: 3790424)\n[PASS] test_pokeAtDeadlineTurnsLateAnswerIntoSilence() (gas: 8758093)\n[PASS] test_rewardLockedUntilTheDeadlineAndWhileJudged() (gas: 6720357)\n[PASS] test_walletVotesBothSidesAndIsPaid() (gas: 7522228)\nSuite result: ok. 13 passed; 0 failed; 0 skipped; finished in 84.81ms (104.70ms CPU time)\n\nRan 6 tests for test/audit/AuditC.t.sol:AuditCTest\n[PASS] testFuzz_ValidTextMatchesReference(bytes,uint8,uint8) (runs: 256, μ: 262841, ~: 262376)\n[PASS] test_Fix_ContractWalletVotesItself() (gas: 2222949)\n[PASS] test_Guard_DoerCannotAnswerHisOwnAppealInTheNameOfTheDisputers() (gas: 6302877)\n[PASS] test_Guard_FrontRunnerCannotLiftABallotAndDecide() (gas: 14898889)\n[PASS] test_Guard_HoldersOwnVotesDecideAtTheVoteEnd() (gas: 10882048)\n[PASS] test_NoBatchToPoison() (gas: 1804806)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 85.18ms (94.82ms 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 84.80ms (68.06ms 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: 7019133)\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 39.91ms (7.38ms 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 46.03ms (2.25ms CPU time)\n\nRan 1 test for test/audit/StepDeadlineAppealed.t.sol:StepDeadlineAppealedTest\n[PASS] test_StepDeadlineAppealed_IsVoidMoment() (gas: 2222975)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 22.84ms (1.87ms 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 34.44ms (15.73ms CPU time)\n\nRan 1 test for test/audit/PredictAfterTimer.t.sol:PredictAfterTimerTest\n[PASS] test_PredictAfterTimerEnded_WithoutPoke_IsAllowed() (gas: 2290358)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 20.59ms (1.54ms 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: 7838514)\n[PASS] test_NftRight_NoStake_Wallet0() (gas: 7585072)\n[PASS] test_NftUndecided_FullStake_Wallet5_50() (gas: 7375036)\n[PASS] test_NftWrong_FullStake_Wallet5_50() (gas: 8805741)\n[PASS] test_NftWrong_NoStake_Wallet0() (gas: 8486734)\n[PASS] test_NoStake_Accepted_NothingToTheWallet() (gas: 6740381)\n[PASS] test_Rejected_NothingToTheWallet() (gas: 7583537)\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 161.47ms (132.52ms CPU time)\n\nRan 22 tests for test/YoloLockHub.t.sol:YoloLockHubTest\n[PASS] testFuzz_LockThenWithdrawReturnsExactAmount(uint256,uint256) (runs: 256, μ: 272194, ~: 271878)\n[PASS] testFuzz_PowerConstantThroughTheTerm(uint256,uint256,uint256) (runs: 256, μ: 150898, ~: 150963)\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: 3239695)\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 174.72ms (145.21ms 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 23.80ms (584.46µs 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 31.33ms (13.45ms 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: 2132225)\n[PASS] test_Fake_RewardStaysTaskOpen() (gas: 7597640)\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: 7805945)\n[PASS] test_NftRight_Staked() (gas: 8006721)\n[PASS] test_NftWrong_SwarmAccepts() (gas: 15019578)\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: 10049707)\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: 7853767)\n[PASS] test_SweetenerBoundOnceByTheOwner() (gas: 538439)\n[PASS] test_ThirdSilence_EndsAsWithoutCall_Decided() (gas: 10456412)\n[PASS] test_ThirdSilence_EndsAsWithoutCall_Undecided() (gas: 9909669)\n[PASS] test_Tie_DoerTakesEveryDisputerBond() (gas: 7345550)\n[PASS] test_TreasuryGetsOnlyItsShare() (gas: 11978013)\n[PASS] test_VoidAppealsCountTowardsThree() (gas: 9505160)\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: 4135603)\n[PASS] test_YoloReward_TreasuryShareBurned() (gas: 11264227)\nSuite result: ok. 43 passed; 0 failed; 0 skipped; finished in 188.29ms (169.30ms 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 627.14µs (266.65µs 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 25.63ms (2.42ms 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 792.92µs (270.42µs 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 26.12ms (2.73ms 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: 7458778)\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 50.94ms (30.16ms 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 27.18ms (11.23ms CPU time)\n\nRan 4 tests for test/TextRule.t.sol:TextRuleTest\n[PASS] testFuzz_AsciiWithOneByte(uint16,uint16,uint8,uint256) (runs: 256, μ: 221452, ~: 149183)\n[PASS] testFuzz_MixedUtf8(uint256,uint16) (runs: 256, μ: 63436, ~: 55064)\n[PASS] testFuzz_RandomBytes(bytes) (runs: 256, μ: 14441, ~: 13630)\n[PASS] test_Examples() (gas: 562950)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 178.48ms (188.58ms CPU time)\n\nRan 19 tests for test/DareComments.t.sol:DareCommentsTest\n[PASS] testFuzz_ParentMustMatch(uint256,uint256,uint8) (runs: 256, μ: 128732, ~: 128688)\n[PASS] testFuzz_WalkFindsEveryComment(uint256) (runs: 256, μ: 4276267, ~: 4277608)\n[PASS] test_500BytesOk_501Reverts() (gas: 343757)\n[PASS] test_AnyTargetIdAccepted() (gas: 179512)\n[PASS] test_ChainWalksBackThroughOneThread() (gas: 665162)\n[PASS] test_EmptyTextReverts() (gas: 30904)\n[PASS] test_EventCarriesEveryField() (gas: 170631)\n[PASS] test_FirstCommentPrevBlockZero() (gas: 209397)\n[PASS] test_GasReport() (gas: 617242)\nLogs:\n  exec gas post 100B 79456\n  exec gas post 280B 63717\n  exec gas post 500B 69132\n  exec gas reply 280B 65961\n\n[PASS] test_HiddenListTakesCommentAsKind3() (gas: 2628492)\n[PASS] test_KindOnlyTaskOrProof() (gas: 226273)\n[PASS] test_NoEthAccepted() (gas: 67482)\n[PASS] test_OneByteOk() (gas: 99230)\n[PASS] test_ParentFromOtherThreadReverts() (gas: 181230)\n[PASS] test_ParentNotYetExistingReverts() (gas: 154884)\n[PASS] test_ReplyToSameThreadOk() (gas: 221811)\n[PASS] test_RevertedPostLeavesChain() (gas: 227806)\n[PASS] test_ThreadsKindsVaultsHaveSeparateChains() (gas: 990662)\n[PASS] test_Utf8CountedInBytes() (gas: 306286)\nSuite result: ok. 19 passed; 0 failed; 0 skipped; finished in 450.52ms (455.07ms CPU time)\n\nRan 5 tests for test/audit/AuditNoMandatoryCheck.t.sol:AuditNoMandatoryCheckTest\n[PASS] test_AppealOnlyAgainstAnNftDecision() (gas: 12991969)\n[PASS] test_NoCheck_AtAnyRewardSize() (gas: 3982698)\n[PASS] test_NoDoubleAppeal() (gas: 7307331)\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 482.73ms (34.45ms CPU time)\n\nRan 24 tests for test/Votes.t.sol:VotesTest\n[PASS] testFuzz_EachIdOnce(uint8,uint8) (runs: 256, μ: 3925116, ~: 3949246)\n[PASS] test_10Votes_DecideAtTheVoteEnd() (gas: 3407006)\n[PASS] test_5Votes_NoDecision() (gas: 321792)\n[PASS] test_BadVotesRevert() (gas: 210199)\n[PASS] test_Delegate_OneTokenOnly() (gas: 325915)\n[PASS] test_Delegate_VotesForTheOwner_IdsOnce() (gas: 640428)\n[PASS] test_InstantDecision_NextBatchReverts() (gas: 511387)\n[PASS] test_Instant_20Votes() (gas: 388949)\n[PASS] test_MockNft_MintBatch() (gas: 3160319)\n[PASS] test_NftInEscrow() (gas: 452347)\n[PASS] test_NftsGotAfterOpeningVote() (gas: 2219688)\n[PASS] test_NoVoteWithoutDispute() (gas: 781945)\n[PASS] test_NotOwnId_RevertsAll() (gas: 212538)\n[PASS] test_OneWallet_DecidesAlone() (gas: 1001607)\n[PASS] test_OneWallet_MinWinnerWallets() (gas: 4646083)\n[PASS] test_OnlyTheHolderVotesHisNfts() (gas: 355800)\n[PASS] test_RepeatInList_Reverts() (gas: 114398)\n[PASS] test_SideCannotChange() (gas: 268074)\n[PASS] test_TransferredAfterVote_NoSecondVote() (gas: 1601894)\n[PASS] test_TwoThousandNfts_NeverMoreVotes() (gas: 60332000)\n[PASS] test_TwoTransactionsSameSide() (gas: 349588)\n[PASS] test_VoteCountsEverySentNft() (gas: 14024377)\n[PASS] test_VoterRewardSplitByCorrectVotes() (gas: 7042216)\n[PASS] test_VotesAfterVoteEndRevert() (gas: 58437)\nSuite result: ok. 24 passed; 0 failed; 0 skipped; finished in 399.60ms (423.53ms CPU time)\n\nRan 8 tests for test/review/ReviewSplitRegression.t.sol:ReviewSplitRegression\n[PASS] test_events_EmitterMap() (gas: 22688427)\n[PASS] test_golden_AcceptedAfterDispute_NftRight() (gas: 9760483)\nLogs:\n  ledger after settlement: 0x4830ea4fcc6dc5027c1f37bcad5852e0b11e2b542d5bf3a1b4e0bf9f8b5d8d55\n  settlement record: 0xa4018a5ae1f016fc869c28d2e27ea22d88e1d937e0efb0592baa756f921319ad\n  ledger after every payout: 0x65dcffba9fa5f218c43b4c3f810b8d61e0676b615cd88c2200be717a94fa422b\n\n[PASS] test_golden_AppealSwarmOverturnsNft() (gas: 10297057)\nLogs:\n  ledger after settlement: 0x08d27cc2a8693d93d430a64d7a89b5d993f0bc3aaa0f468e9d26ec43c1adc65d\n  settlement record: 0x7d5a35e896f5cc60c3cebee7443c57120a4abf9130d2d794c36a86769c152705\n  ledger after every payout: 0x808551d4f18f1c9f9021bde675a4cd14dd60e843467f3bfd666fd1221b8bddd1\n\n[PASS] test_golden_CallSwarmSilentThenCalledAgain() (gas: 10587005)\nLogs:\n  ledger after settlement: 0x38cc28fed888cc3bcd65c4d5b72aa4ec16f7b4731c45419596c21cda6e366d7a\n  settlement record: 0x12641fdf0b0d28314e7cdd711051407e007d2e0d2c3006ec555db150a1bb11c5\n  ledger after every payout: 0xa82fdb047f774ed464eb049c7e6b261d5bc214d5978856d853700b07460f2f09\n\n[PASS] test_golden_RejectedThenQueuedAccepted() (gas: 11975747)\nLogs:\n  ledger after settlement: 0x76984c0edfd7138e1eeafbca442dc75eac4cdca48dfce84a332a3dbe3eb570fd\n  settlement record: 0xdb27e0d67237b840a3897b3e94d0bc38e88d80d4f00b209c05909985a9e9b9f4\n  ledger after every payout: 0xf9dbd032a0ab92846b8ead6e767bad8491ba22ce779070f3e67373d796740420\n\n[PASS] test_golden_UndecidedNobodyCallsSwarm() (gas: 8826619)\nLogs:\n  ledger after settlement: 0xbb589401078dd43b88cbc7c1c174981c2ee68b3027a30d9ffdcf05a917cc491d\n  settlement record: 0x880d35a1a6c101757740019ffe504083f1353824cf6c05eb99c4e48fe76bf58a\n  ledger after every payout: 0x4755fc921943fe650cc0871884c69218df089678208e1ea5cc2d2410865f21ce\n\n[PASS] test_minor_HeaviestLazyStepGasCost() (gas: 3854059)\nLogs:\n  gas of the heaviest separate step (askAppealSwarm): 727451\n\n[PASS] test_minor_NoEthInDisputes_VoterSendsOwnBallot() (gas: 1544143)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 488.09ms (89.33ms CPU time)\n\nRan 23 tests for test/YoloPredict.t.sol:YoloPredictTest\n[PASS] testFuzz_BurnedPlusPaidEqualsDeposited(uint256,uint256,uint256,bool) (runs: 256, μ: 2032167, ~: 2345401)\n[PASS] test_AuthorCanPredict() (gas: 716964)\n[PASS] test_BelowMinPositionReverts() (gas: 465549)\n[PASS] test_ClaimBeforeFinalReverts() (gas: 800954)\n[PASS] test_ClosesAtDeadline_PausesWhileBusy() (gas: 3223161)\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 303.28ms (306.82ms CPU time)\n\nRan 21 tests for test/Swarm.t.sol:SwarmTest\n[PASS] testFuzz_NoMandatoryCheck_AnyRewardSize(uint256,uint8) (runs: 256, μ: 796978, ~: 780947)\n[PASS] test_ActionNotSold_LargeSubmitStillWorks() (gas: 11068463)\n[PASS] test_AnswerAfterSilenceIgnored() (gas: 6385369)\n[PASS] test_AnswerSignedEarly_DeliveredLate_Counts() (gas: 6117856)\n[PASS] test_AttesterRotationTimelocked() (gas: 2407774)\n[PASS] test_CallSwarm_IntakeBroken_Reverts_NothingTaken() (gas: 1713608)\n[PASS] test_CallbackGasUnder100k() (gas: 215841)\nLogs:\n  callback gas: 40971\n\n[PASS] test_CallbackSelectorMatchesDocs() (gas: 734)\n[PASS] test_DuplicateAnswerIgnored_FirstWins() (gas: 6128882)\n[PASS] test_IntakeBroken_LargeSubmitUnaffected() (gas: 10580110)\n[PASS] test_LargeTask_DisputedAtOnce_Rejected() (gas: 11212370)\n[PASS] test_LargeTask_DisputedNftAccepts_Fee5To5() (gas: 11338738)\n[PASS] test_LargeTask_QueuedSubmission_ActivatedWithoutQuestion() (gas: 14304618)\n[PASS] test_LateAnswerIgnored_Timeout() (gas: 6339449)\n[PASS] test_LostCallback_IsSilence_NoPublicFallback() (gas: 6460570)\n[PASS] test_NoMandatoryCheck_ImdTask_NoDispute_AcceptedBondBack() (gas: 10546770)\n[PASS] test_NoMandatoryCheck_MaxReward_NothingAsked_AcceptedByTimer() (gas: 10505102)\n[PASS] test_NoPublicFallback_ForAnyAttestation() (gas: 314829)\n[PASS] test_RefusedBody_Status1_IsSilence() (gas: 6208832)\n[PASS] test_RequestShapeAndBody() (gas: 4786337)\n[PASS] test_SpoofedCallbackIgnored() (gas: 494441)\nSuite result: ok. 21 passed; 0 failed; 0 skipped; finished in 335.06ms (440.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, μ: 2485897, ~: 2478926)\n[PASS] testFuzz_Invariant_BurnedPaidHeldEqualsDeposited(uint256,uint8,uint8) (runs: 256, μ: 3096124, ~: 2840228)\n[PASS] testFuzz_Invariant_NeverPaysOutMoreThanDeposited(uint256,uint256,uint256,bool) (runs: 256, μ: 2003593, ~: 2316751)\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: 4456165)\n[PASS] test_Life_AcceptedOnFirstSubmission() (gas: 1969629)\n[PASS] test_Life_AllSubmissionsRejected_ThenExpired() (gas: 3240324)\n[PASS] test_Life_DisputeAppealSwarm_AllAfterDeadline() (gas: 4348929)\n[PASS] test_Life_MultipleSubmissionsQueuedAtDeadline() (gas: 4140507)\n[PASS] test_Life_RejectedThenAcceptedOnResubmission() (gas: 4028627)\n[PASS] test_Life_SubmissionSecondBeforeDeadline_JudgedAfterDeadline() (gas: 1868963)\n[PASS] test_Life_VoteTieNoQuorum_DefaultsToAccepted() (gas: 2671071)\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 481.93ms (723.13ms 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: 3570998)\nLogs:\n  askAppealSwarm gas that voids the appeal: 0\n\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 589.19ms (324.35ms 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: 7474565)\n[PASS] test_DeadlineDuringSubmission_SubmissionStillRuns() (gas: 10453361)\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: 5291685)\n[PASS] test_ParamBounds() (gas: 430781)\n[PASS] test_ParamChange_DoesNotAffectExistingTasks() (gas: 13846801)\n[PASS] test_ParamProposalCancel() (gas: 1336248)\n[PASS] test_PauseStopsOnlyNewTasks() (gas: 1280793)\n[PASS] test_Queue_FlatBondAndVoidRefund() (gas: 13133742)\n[PASS] test_QuoteBondFormula() (gas: 1949242)\n[PASS] test_TopUpDuringSubmission_PaidToDoerOnAcceptance() (gas: 7134989)\n[PASS] test_TopUpDuringSubmission_StaysInRewardAfterRejection() (gas: 10567037)\n[PASS] test_TopUpRightBeforeDeadline_LockedThenReturned() (gas: 4318158)\n[PASS] test_WithdrawRules() (gas: 12242776)\nSuite result: ok. 25 passed; 0 failed; 0 skipped; finished in 673.78ms (209.44ms CPU time)\n\nRan 1 test for test/review/ReviewQueue.t.sol:ReviewQueue\n[PASS] testFuzz_QueueContributorsGetExactlyTheirs((uint8,uint256)) (runs: 256, μ: 8943380, ~: 7881899)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 672.58ms (640.82ms CPU time)\n\nRan 8 tests for test/audit/AuditB.t.sol:AuditBTest\n[PASS] testFuzz_Guard_ModeAPaymentsBookExactly(uint256,uint96,uint96,bool) (runs: 256, μ: 7312561, ~: 7335831)\n[PASS] testFuzz_Guard_PinnedVersionNeverChanges(uint16,uint32) (runs: 256, μ: 3173271, ~: 3173215)\n[PASS] test_Guard_BankOnlyForDesks() (gas: 132520)\n[PASS] test_Guard_FailedPushesBecomeCreditsAndBooksClose() (gas: 9658237)\n[PASS] test_Guard_LeakedAttesterKeyAloneCannotDecideDuringTheRemovalTimelock() (gas: 2884860)\n[PASS] test_Guard_LongestDueChainFitsOneCall() (gas: 10895594)\n[PASS] test_Guard_RevertingPinnedDevPricesNeverBlocksWithdrawals() (gas: 3992617)\n[PASS] test_Guard_ThirdPartyAnswerToACopiedQuestionCannotDecideOurCase() (gas: 9436443)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 709.38ms (945.09ms 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, μ: 346720, ~: 346550)\n[PASS] test_LockedWhileOpen_EvenAfterRejection_FreeAfterDeadline() (gas: 8460809)\n[PASS] test_NftDecidedRight_VotesGetFivePercent() (gas: 7892558)\n[PASS] test_NftWrong_SwarmAccepts_VotesGetNothing() (gas: 8539975)\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: 7868875)\n[PASS] test_StakedDoer_PartPowerAndSmallPower() (gas: 11839014)\n[PASS] test_TinyAddon_NoBondPart_NothingStuck() (gas: 8875182)\nSuite result: ok. 14 passed; 0 failed; 0 skipped; finished in 1.25s (183.75ms 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, μ: 9232181, ~: 9503639)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 1.32s (1.30s 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, μ: 10896543, ~: 9981011)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 1.43s (1.41s 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: 3660281)\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: 2741643)\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 4.24s (43.80ms CPU time)\n\nRan 15 tests for test/SideCalls.t.sol:SideCallsTest\n[PASS] test_BothSidesCall_EachPaysFromItsOwnBond() (gas: 7991727)\n[PASS] test_Cancel_AfterSideCalls_BondsBackMinusFees() (gas: 6928145)\n[PASS] test_DisputerAppeal_Loses_RestOfBondToWinner() (gas: 7664030)\n[PASS] test_DisputerCallingForTheDoer_PaysLikeAStranger() (gas: 7123408)\n[PASS] test_DoerAppeal_Wins_RestOfBondPlusLoserBond() (gas: 7572320)\n[PASS] test_FeeAboveBond_WalletPaysOnlyTheRest() (gas: 7596764)\n[PASS] test_RepeatCall_CheaperThanBond_ThreeCalls() (gas: 9104716)\n[PASS] test_RepeatCall_Disputer_Loses() (gas: 8619283)\n[PASS] test_RepeatCall_Disputer_Wins() (gas: 8479887)\n[PASS] test_RepeatCall_Doer_Loses() (gas: 7847907)\n[PASS] test_RepeatCall_Doer_Wins() (gas: 8126599)\n[PASS] test_RepeatCall_EachSideOwnFirst() (gas: 8697767)\n[PASS] test_SideSpent_View() (gas: 8470002)\n[PASS] test_StrangerAppeal_PaysBondAndFee() (gas: 7493740)\n[PASS] test_VoidSideAppeal_BondWhole() (gas: 7752007)\nSuite result: ok. 15 passed; 0 failed; 0 skipped; finished in 4.29s (132.59ms 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: 9166925)\nLogs:\n  YoloSweetener 6748 runtime bytes\n  TrophyCatalog 4228 runtime bytes\n  DareTrophy 11777 runtime bytes\n  ProtocolDirectory 4562 runtime bytes\n  HiddenList 3789 runtime bytes\n  YoloPredict 6385 runtime bytes\n  launch 3 execution gas 8673887\n  launch 3 calldata bytes 42980\n  launch 3 total gas (upper bound) 9382567\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: 12589976)\n[PASS] test_RewardFormatting() (gas: 11024502)\n[PASS] test_TitleGuards() (gas: 1310117)\nSuite result: ok. 14 passed; 0 failed; 0 skipped; finished in 4.34s (119.84ms 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 4.42s (64.35ms 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: 10792136)\n[PASS] test_EthRewardWithYoloAddon_BondIsImdPlusThreePercentEth() (gas: 1674268)\n[PASS] test_QueuedSubmission_BondFixedAtSubmission() (gas: 9407512)\n[PASS] test_Rejected_LoserBondSplitInImdAndEthOnly() (gas: 7719547)\n[PASS] test_TopUps_OnlyTheAuthorsCount() (gas: 7354812)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 4.42s (42.13ms CPU time)\n\nRan 2 tests for test/VotePowerFuzz.t.sol:VotePowerFuzzTest\n[PASS] testFuzz_OneVotePerNft(uint256) (runs: 256, μ: 98143639, ~: 99943814)\n[PASS] test_OneVotePerNft_Fixed() (gas: 387092570)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 4.42s (4.73s 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: 10503079)\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 4.42s (93.80ms CPU time)\n\nRan 51 tests for test/Disputes.t.sol:DisputesTest\n[PASS] test_Appeal_ActionNotSold() (gas: 6864596)\n[PASS] test_Appeal_ByDoerSide_Flip() (gas: 7695257)\n[PASS] test_Appeal_IntakeReverts_AppealVoided() (gas: 7415363)\n[PASS] test_Appeal_LateAnswerAfterSilenceIgnored() (gas: 8066747)\n[PASS] test_Appeal_NeverAsked_ThirdTimeEndsUncalled() (gas: 7704323)\n[PASS] test_Appeal_NeverAsked_TimesOut() (gas: 7254199)\n[PASS] test_Appeal_PriceRaised_AppealVoided() (gas: 7280648)\n[PASS] test_Appeal_Silent_DecisionStands_NewWindow() (gas: 8170156)\n[PASS] test_Appeal_Silent_ReappealFlips() (gas: 8887509)\n[PASS] test_Appeal_SwarmAgrees() (gas: 8167733)\n[PASS] test_Appeal_SwarmFlips_NoFeeRefund_WinnerTakesAll() (gas: 7835415)\n[PASS] test_Appeal_WindowClosed() (gas: 1082479)\n[PASS] test_CallSwarm_ActionNotSold_DefaultStands() (gas: 6415919)\n[PASS] test_CallSwarm_LowerPrice_NoFeeRefund() (gas: 7311298)\n[PASS] test_CallSwarm_WrongPhase() (gas: 599802)\n[PASS] test_ClaimsPlayTimersThemselves_NoPokeNeeded() (gas: 6560724)\n[PASS] test_ContributorAppellantWins_GetsHisShareLikeAnyWinner() (gas: 8067674)\n[PASS] test_ContributorDisputerWins_SameShareAsAnyDisputer() (gas: 6980549)\n[PASS] test_ContributorDoerWins_GetsHisShareLikeAnyWinner() (gas: 11143394)\n[PASS] test_DisputeWindowClosedAndLimits() (gas: 1668234)\n[PASS] test_Dispute_NftAccepts_Fee5To5_Bond5050() (gas: 7024448)\n[PASS] test_Dispute_NftRejects_BondSplit5050() (gas: 6895298)\n[PASS] test_DisputerWhoTopsUpLater_StillGetsHisFullShare() (gas: 6838709)\n[PASS] test_DoerReply() (gas: 1578863)\n[PASS] test_InstantDecision_FiresOnceTheDeltaIsCrossed() (gas: 8334609)\n[PASS] test_NoDecision_CallAfterWindow_Reverts() (gas: 6536840)\n[PASS] test_NoDecision_CallSwarm_Accepts_CallerLosesBondAndFee() (gas: 7480603)\n[PASS] test_NoDecision_CallSwarm_Rejects_CallerGetsOnlyHisShare() (gas: 7696960)\n[PASS] test_NoDecision_DoerCallsSwarm_Confirmed() (gas: 7428625)\n[PASS] test_NoDecision_DoerCallsSwarm_Rejected() (gas: 7271366)\n[PASS] test_NoDecision_NobodyCalls_Accepted_DisputerBondsAllToDoer() (gas: 7554184)\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: 8541684)\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: 11404889)\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: 6869376)\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: 14442736)\n[PASS] test_SwarmFees_WinnerSideOnly_DoerSilentCallRefunded() (gas: 12768102)\n[PASS] test_ThirdSilence_Decided_NftDecisionStands() (gas: 10223293)\n[PASS] test_ThirdSilence_NoDecision_AcceptedDisputerBondToDoer() (gas: 9644760)\n[PASS] test_YoloReward_FeeSplitsLikeAnyReward_Votes5_Doer4_Burner1() (gas: 11465614)\n[PASS] test_YoloReward_TreasuryPartToBurner_FullPowerSix() (gas: 15101226)\nSuite result: ok. 51 passed; 0 failed; 0 skipped; finished in 4.35s (462.24ms 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               | 559   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | appeal               | 550   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | askAppealSwarm       | 524   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | breakIntake          | 549   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | callSwarm            | 544   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | claim                | 542   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | createTask           | 526   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | dispute              | 594   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | expireAndWithdraw    | 516   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | lock                 | 489   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | mintTrophy           | 562   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | payoutBonus          | 540   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | poke                 | 523   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progress             | 535   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progressA            | 557   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progressB            | 509   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progressC            | 523   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progressD            | 525   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | setIntakePrice       | 525   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | submit               | 562   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | sweep                | 555   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | sweeten              | 529   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | topUp                | 505   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | vote                 | 528   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | warp                 | 523   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | withdrawBonus        | 554   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | withdrawContribution | 559   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | withdrawLock         | 493   | 0       | 0        |\n╰----------+----------------------+-------+---------+----------╯\n\nLogs:\n  createTask: 9\n  topUp: 0\n  submit: 0\n  dispute: 0\n  vote: 0\n  appeal: 0\n  breakIntake: 5\n  callSwarm: 0\n  answer: 0\n  claimDisputer: 0\n  claimVoter: 0\n  claimVoid: 0\n  withdrawContribution: 1\n  withdrawExpired: 1\n  progress: 0\n  sweeten: 2\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 19.11s (19.08s CPU time)\n\nRan 92 test suites in 19.11s (66.06s CPU time): 717 tests passed, 0 failed, 4 skipped (721 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)\",\"DareComments.post(address,uint8,uint256,uint256,string)\",\"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\":93,\"CONTRACTS.md\":179,\"README.md\":100,\"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-COMMENTS.md\":66,\"docs/LAUNCH-TASK.md\":202,\"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\":422,\"script/check-launch-task.py\":32,\"script/snapshot/snapshot.py\":187,\"src/BuybackBurner.sol\":126,\"src/DareComments.sol\":65,\"src/DareTrophy.sol\":222,\"src/DevPrices.sol\":129,\"src/HiddenList.sol\":297,\"src/OracleAttestation.sol\":57,\"src/ParamsRegistry.sol\":216,\"src/ProtocolDirectory.sol\":169,\"src/TaskVault.sol\":838,\"src/TrophyCatalog.sol\":119,\"src/VaultParams.sol\":250,\"src/VaultTypes.sol\":450,\"src/VotePower.sol\":52,\"src/YoloLockHub.sol\":154,\"src/YoloPredict.sol\":305,\"src/YoloSweetener.sol\":177,\"src/adapters/UniswapV3SwapAdapter.sol\":71,\"src/desks/CaseDesk.sol\":556,\"src/desks/Desk.sol\":143,\"src/desks/DeskApi.sol\":137,\"src/desks/DisputeDesk.sol\":807,\"src/helpers/AttestationChecker.sol\":59,\"src/helpers/SwarmQuestion.sol\":177,\"src/helpers/TextRules.sol\":245,\"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\":115,\"src/token/ProjectVesting.sol\":104,\"src/token/Vestings.sol\":38,\"src/token/YoloSplitter.sol\":103,\"src/token/YoloToken.sol\":176,\"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/DareComments.t.sol\":326,\"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/ExtrasBareChain.t.sol\":91,\"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\":734,\"test/YoloTokenBareChain.t.sol\":130,\"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\":338,\"test/audit/swarm117/VestingClockPreStart.t.sol\":92,\"test/fork/ExtrasOnLiveCore.fork.t.sol\":149,\"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/DareCommentsLaunch.t.sol\":240,\"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}],"detail":"all checks passed","evaluation":"checks","profile":"foundry","status":"accepted","submissionHash":"bb30630f99eb56146db391bc695868653ec3c3aa7aa14381466d9831203f896f","verifiedTreeHash":"5c3e3fdc8058f48266149f6a627d365f621738d1","verifierVersion":"0.1.0+f3653923"},{"checks":[{"durationMs":609447,"exitCode":0,"name":"build","output":"Compiling 182 files with Solc 0.8.28\nSolc 0.8.28 finished in 609.24s\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:183:5:\n    |\n183 |     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:183:5:\n    |\n183 |     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":16546,"exitCode":0,"name":"test","output":"No files changed, compilation skipped\n\nRan 1 test for test/fork/ExtrasOnLiveCore.fork.t.sol:ExtrasOnLiveCoreForkTest\n[SKIP: skipped] setUp() (gas: 0)\nSuite result: ok. 0 passed; 0 failed; 1 skipped; finished in 569.67µs (0.00ns 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 729.34µs (500.84µ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://imdnotdead.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 648.18µs (509.68µs 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.23ms (1.14ms 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 1.80ms (1.30ms CPU time)\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 2.35ms (1.37ms 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 107.39µs (28.51µ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 470.21µs (178.73µ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 555.41µs (357.01µs CPU time)\n\nRan 2 tests for test/review/ReviewYolo.t.sol:ReviewYoloUnit\n[PASS] test_vestingStreamsFromArrivalWithoutACliff() (gas: 897245)\n[PASS] test_whitelistRefusesOutputTakenToARouter() (gas: 1179429)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 719.35µs (601.44µs CPU time)\n\nRan 8 tests for test/review/DareCommentsLaunch.t.sol:DareCommentsLaunchTest\n[PASS] test_DeploymentRejectsEth() (gas: 104825)\n[PASS] test_FactoryDeploymentNeedsNoArgumentsOrSetup() (gas: 560231)\n[PASS] test_InvalidKindsAndParentsDoNotChangeState() (gas: 6429986)\n[PASS] test_NonCanonicalKindCalldataReverts() (gas: 41203)\n[PASS] test_ReaderFiltersKindBeforeChoosingPreviousBlock() (gas: 273381)\n[PASS] test_RuntimeHasNoCallsOrForbiddenOpcodes() (gas: 642260)\n[PASS] test_SameBlockReaderUsesEarliestThreadEvent() (gas: 180185)\n[PASS] test_UnknownSelectorsAndEmptyCalldataRevert() (gas: 94181)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 6.35ms (7.78ms 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: 37699193)\nLogs:\n  DevPrices 2467 runtime, margin 22109\n  UniswapV3SwapAdapter 1673 runtime, margin 22903\n  ParamsRegistry 13552 runtime, margin 11024\n  TextRules 5249 runtime, margin 19327\n  SwarmQuestionBuilder 5506 runtime, margin 19070\n  VotePower 942 runtime, margin 23634\n  AttestationChecker 2125 runtime, margin 22451\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 4526 runtime, margin 20050\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 4562 runtime, margin 20014\n  HiddenList 3789 runtime, margin 20787\n  YoloPredict 6385 runtime, margin 18191\n\n[PASS] test_L2_docLaunch1Args_matchPlan() (gas: 894953)\n[PASS] test_L3_docLaunch2Args_matchPlan() (gas: 1361721)\n[PASS] test_L5_docLaunch3Args_matchPlan() (gas: 685090)\nSuite result: ok. 5 passed; 0 failed; 0 skipped; finished in 9.17ms (6.94ms 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 15.28ms (15.08ms 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.51ms (1.02ms 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 841.42µs (414.07µs CPU time)\n\nRan 2 tests for test/audit/AddonAfterSub.t.sol:AddonAfterSubmissionTest\n[PASS] test_AddonAfterSubmission_BatchClaimPaysSweetener() (gas: 2687916)\n[PASS] test_AddonBeforeSubmission_BatchClaimPaysSweetener() (gas: 2585347)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 19.72ms (3.01ms 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 19.69ms (18.88ms 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 25.43ms (4.19ms 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 19.34ms (1.33ms 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: 149109)\n[PASS] test_ParamsOfIsTheRegistrySnapshot() (gas: 716560)\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 27.48ms (9.65ms CPU time)\n\nRan 3 tests for test/audit/LazyAppealVoidWindow.t.sol:LazyAppealVoidWindowTest\n[PASS] test_LateReAppealAfterTheVoidWindow_Reverts() (gas: 2274205)\n[PASS] test_PokeAfterVoidPlusWindow_IsFinal() (gas: 2344563)\n[PASS] test_WindowAfterVoid_StartsAtTheVoidMoment() (gas: 2111458)\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 19.14ms (3.22ms CPU time)\n\nRan 2 tests for test/audit/LateAppealAsk.t.sol:LateAppealAskTest\n[PASS] test_LateAppealAskReverts() (gas: 2108484)\n[PASS] test_TimelyAppealAskIsAsked() (gas: 2279994)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 8.73ms (3.97ms CPU time)\n\nRan 2 tests for test/Gas.t.sol:GasTest\n[PASS] test_GasProfile() (gas: 8438891)\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): 116580\n  vote (20 NFTs, not the first vote): 226796\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): 40971\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 28.83ms (8.13ms 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 825.26µs (365.37µs 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: 15786110)\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 30.94ms (7.64ms 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 2.38ms (0.00ns CPU time)\n\nRan 1 test for test/audit/MaxImdInCap.t.sol:MaxImdInCapTest\n[PASS] test_AppealPullsMoreImdThanMaxImdIn() (gas: 1643322)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 4.32ms (925.74µs CPU time)\n\nRan 7 tests for test/Cover.t.sol:CoverTest\n[PASS] test_CategoryStoredAndCoverEmitted() (gas: 389973)\n[PASS] test_CategoryUnchangedThroughDispute() (gas: 7923263)\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 31.44ms (15.47ms 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 34.17ms (13.72ms 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 38.69ms (11.67ms CPU time)\n\nRan 6 tests for test/Directory.t.sol:DirectoryTest\n[PASS] test_ConstructorChecks() (gas: 6526)\n[PASS] test_CurrentMayGoBack() (gas: 596847)\n[PASS] test_OnlySafeProposesAndCancels() (gas: 587178)\n[PASS] test_ProposalChecks() (gas: 217526)\n[PASS] test_V2SideBySide_AfterTimelock() (gas: 7803719)\n[PASS] test_Version1FromConstructor() (gas: 66747)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 44.28ms (14.91ms 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 16.71ms (765.16µs 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 140.43µs (28.77µs 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: 11476287)\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 54.01ms (37.78ms CPU time)\n\nRan 1 test for test/audit/StepDeadlineAppealed.t.sol:StepDeadlineAppealedTest\n[PASS] test_StepDeadlineAppealed_IsVoidMoment() (gas: 2222975)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 24.23ms (1.54ms CPU time)\n\nRan 1 test for test/review/ReviewLaunch.t.sol:ReviewLaunchRuntime\n[PASS] test_L5_vote_gasPerNft() (gas: 60470665)\nLogs:\n  vote 10 NFTs: 175377\n  vote 490 more NFTs: 2190139\n  gas per NFT (mock NFT): 4469\n  max NFTs in one vote under the cap (mock): 3754\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 62.12ms (38.66ms 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: 8427285)\n[PASS] test_payoutNeedsNoPrice() (gas: 7009383)\n[PASS] test_silentSwarmCallStillPaysTheWholeBonus() (gas: 8499535)\n[PASS] test_splitFollowsTheRewardRule_NftVotesAndStake() (gas: 14867270)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 62.67ms (43.46ms CPU time)\n\nRan 8 tests for test/review/ReviewAttestation.t.sol:ReviewAttestation\n[PASS] test_InconsistentCountsAreIgnored() (gas: 6412739)\n[PASS] test_NoFallback_NeitherOnePersonNorOrderedPanel() (gas: 2373699)\n[PASS] test_OnePersonPanelIsSilenceOnAppeal() (gas: 4598475)\n[PASS] test_OnePersonPanelIsSilenceOnCall() (gas: 2840857)\n[PASS] test_OrderedPanelCounts() (gas: 4402532)\n[PASS] test_PanelBounds() (gas: 1799342)\n[PASS] test_PanelChangeWaitsTimelock() (gas: 3580554)\n[PASS] test_QuorumBelowOrderedIsIgnored() (gas: 2315546)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 44.79ms (22.54ms 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 30.22ms (12.32ms 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 451.66µs (207.99µs CPU time)\n\nRan 7 tests for test/review/ReviewProofs.t.sol:ReviewProofs\n[PASS] test_AppealPriceJump_RevertsWithMaxImdIn() (gas: 2259625)\n[PASS] test_BodyBoundedByParams_OneDisputerOnly() (gas: 2622082)\n[PASS] test_BondNeverDoubles_SubmitPassesWithQuotedMax() (gas: 1433363)\n[PASS] test_DisputeVoteAppealAfterTaskDeadline() (gas: 2232780)\n[PASS] test_Eip7702Voter_EcdsaSignatureCounted() (gas: 2148411)\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 30.60ms (9.69ms CPU time)\n\nRan 4 tests for test/audit/AuditNoFallbackOwnVote.t.sol:AuditNoFallbackOwnVoteTest\n[PASS] test_DoerCannotDispute() (gas: 9092555)\n[PASS] test_LostCallbackIsSilence_NoPublicFallback() (gas: 8540419)\n[PASS] test_NoDecisionBelowInstantDelta() (gas: 8684088)\n[PASS] test_PartialCountRelayedByAnOutsiderDecidesNothing() (gas: 8572847)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 65.15ms (39.12ms CPU time)\n\nRan 4 tests for test/VoteBatch.t.sol:VoteBatchTest\n[PASS] test_Batch_BonusNotPaidOutYet_StaysClaimable() (gas: 8022186)\n[PASS] test_Batch_NothingToClaimReverts() (gas: 7901124)\n[PASS] test_Batch_PaysWhatSingleClaimsPay() (gas: 24099111)\n[PASS] test_Batch_TakesTheYoloBonusShare() (gas: 13834453)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 65.24ms (46.39ms 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: 10792136)\n[PASS] test_EthRewardWithYoloAddon_BondIsImdPlusThreePercentEth() (gas: 1674268)\n[PASS] test_QueuedSubmission_BondFixedAtSubmission() (gas: 9407512)\n[PASS] test_Rejected_LoserBondSplitInImdAndEthOnly() (gas: 7719547)\n[PASS] test_TopUps_OnlyTheAuthorsCount() (gas: 7354812)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 71.60ms (44.77ms 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 17.02ms (1.22ms CPU time)\n\nRan 5 tests for test/audit/AuditNoMandatoryCheck.t.sol:AuditNoMandatoryCheckTest\n[PASS] test_AppealOnlyAgainstAnNftDecision() (gas: 12991969)\n[PASS] test_NoCheck_AtAnyRewardSize() (gas: 3982698)\n[PASS] test_NoDoubleAppeal() (gas: 7307331)\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 75.60ms (47.13ms 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 31.56ms (8.78ms 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: 10503079)\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 78.48ms (61.62ms 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 23.27ms (536.86µs 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.02ms (0.00ns CPU time)\n\nRan 6 tests for test/audit/AuditC.t.sol:AuditCTest\n[PASS] testFuzz_ValidTextMatchesReference(bytes,uint8,uint8) (runs: 256, μ: 262841, ~: 262376)\n[PASS] test_Fix_ContractWalletVotesItself() (gas: 2222949)\n[PASS] test_Guard_DoerCannotAnswerHisOwnAppealInTheNameOfTheDisputers() (gas: 6302877)\n[PASS] test_Guard_FrontRunnerCannotLiftABallotAndDecide() (gas: 14898889)\n[PASS] test_Guard_HoldersOwnVotesDecideAtTheVoteEnd() (gas: 10882048)\n[PASS] test_NoBatchToPoison() (gas: 1804806)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 88.76ms (69.45ms CPU time)\n\nRan 8 tests for test/review/ReviewSplitRegression.t.sol:ReviewSplitRegression\n[PASS] test_events_EmitterMap() (gas: 22688427)\n[PASS] test_golden_AcceptedAfterDispute_NftRight() (gas: 9760483)\nLogs:\n  ledger after settlement: 0x4830ea4fcc6dc5027c1f37bcad5852e0b11e2b542d5bf3a1b4e0bf9f8b5d8d55\n  settlement record: 0xa4018a5ae1f016fc869c28d2e27ea22d88e1d937e0efb0592baa756f921319ad\n  ledger after every payout: 0x65dcffba9fa5f218c43b4c3f810b8d61e0676b615cd88c2200be717a94fa422b\n\n[PASS] test_golden_AppealSwarmOverturnsNft() (gas: 10297057)\nLogs:\n  ledger after settlement: 0x08d27cc2a8693d93d430a64d7a89b5d993f0bc3aaa0f468e9d26ec43c1adc65d\n  settlement record: 0x7d5a35e896f5cc60c3cebee7443c57120a4abf9130d2d794c36a86769c152705\n  ledger after every payout: 0x808551d4f18f1c9f9021bde675a4cd14dd60e843467f3bfd666fd1221b8bddd1\n\n[PASS] test_golden_CallSwarmSilentThenCalledAgain() (gas: 10587005)\nLogs:\n  ledger after settlement: 0x38cc28fed888cc3bcd65c4d5b72aa4ec16f7b4731c45419596c21cda6e366d7a\n  settlement record: 0x12641fdf0b0d28314e7cdd711051407e007d2e0d2c3006ec555db150a1bb11c5\n  ledger after every payout: 0xa82fdb047f774ed464eb049c7e6b261d5bc214d5978856d853700b07460f2f09\n\n[PASS] test_golden_RejectedThenQueuedAccepted() (gas: 11975747)\nLogs:\n  ledger after settlement: 0x76984c0edfd7138e1eeafbca442dc75eac4cdca48dfce84a332a3dbe3eb570fd\n  settlement record: 0xdb27e0d67237b840a3897b3e94d0bc38e88d80d4f00b209c05909985a9e9b9f4\n  ledger after every payout: 0xf9dbd032a0ab92846b8ead6e767bad8491ba22ce779070f3e67373d796740420\n\n[PASS] test_golden_UndecidedNobodyCallsSwarm() (gas: 8826619)\nLogs:\n  ledger after settlement: 0xbb589401078dd43b88cbc7c1c174981c2ee68b3027a30d9ffdcf05a917cc491d\n  settlement record: 0x880d35a1a6c101757740019ffe504083f1353824cf6c05eb99c4e48fe76bf58a\n  ledger after every payout: 0x4755fc921943fe650cc0871884c69218df089678208e1ea5cc2d2410865f21ce\n\n[PASS] test_minor_HeaviestLazyStepGasCost() (gas: 3854059)\nLogs:\n  gas of the heaviest separate step (askAppealSwarm): 727451\n\n[PASS] test_minor_NoEthInDisputes_VoterSendsOwnBallot() (gas: 1544143)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 89.42ms (70.74ms CPU time)\n\nRan 2 tests for test/review/ReviewGas.t.sol:ReviewGas\n[PASS] test_AppealAskGas_Under1_5M() (gas: 4618000)\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 28.36ms (6.52ms CPU time)\n\nRan 4 tests for test/Emergency.t.sol:EmergencyTest\n[PASS] test_AppealAskedLazily_ResolvesByTimer() (gas: 9135153)\n[PASS] test_NoDecision_ResolvesItselfByTimer() (gas: 7814841)\n[PASS] test_ResolvesByTimer_WhenTheStateMachineCanResolve() (gas: 8210033)\n[PASS] test_SwarmNeverAnswers_ResolvesByTimer() (gas: 8765260)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 47.30ms (29.98ms 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 30.63ms (13.69ms CPU time)\n\nRan 9 tests for test/VoteGas.t.sol:VoteGasTest\n[PASS] test_VoteGas_Claim() (gas: 781687)\nLogs:\n  claimVoterReward exec: 147302\n  claimVoterReward tx: 146476\n\n[PASS] test_VoteGas_ClaimBatch() (gas: 16554919)\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: 3983324)\nLogs:\n  vote 25 NFT as delegate (first vote, no decision) exec: 269898\n  vote 25 NFT as delegate (first vote, no decision) tx: 266929\n\n[PASS] test_VoteGas_First1() (gas: 159633)\nLogs:\n  vote 1 NFT (first vote) exec: 143875\n  vote 1 NFT (first vote) tx: 136349\n\n[PASS] test_VoteGas_First100() (gas: 818488)\nLogs:\n  vote 100 NFT (first vote, decides) exec: 585532\n  vote 100 NFT (first vote, decides) tx: 569723\n\n[PASS] test_VoteGas_First100_noDecide() (gas: 4366443)\nWarning: the following cheatcode(s) are deprecated and will be removed in future versions:\n  lastCallGas(): replaced by `lastFrameGas`\nLogs:\n  vote 100 NFT (first vote, no decision) exec: 538581\n  vote 100 NFT (first vote, no decision) tx: 529228\n\n[PASS] test_VoteGas_First25() (gas: 350160)\nLogs:\n  vote 25 NFT (first vote, decides) exec: 281545\n  vote 25 NFT (first vote, decides) tx: 272021\n\n[PASS] test_VoteGas_First25_noDecide() (gas: 3898096)\nLogs:\n  vote 25 NFT (first vote, no decision) exec: 234562\n  vote 25 NFT (first vote, no decision) tx: 231526\n\n[PASS] test_VoteGas_Profile() (gas: 674688)\nLogs:\n  vote 1 NFT (first vote) exec: 143875\n  vote 1 NFT (first vote) tx: 136349\n  vote 10 NFT (later vote) exec: 139672\n  vote 10 NFT (later vote) tx: 137900\n  vote 15 NFT (later vote) exec: 159861\n  vote 15 NFT (later vote) tx: 157667\n  vote 2 NFT (later vote) exec: 124328\n  vote 2 NFT (later vote) tx: 123216\n\nSuite result: ok. 9 passed; 0 failed; 0 skipped; finished in 47.15ms (18.68ms 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 76.34ms (57.16ms CPU time)\n\nRan 2 tests for test/ExtrasBareChain.t.sol:ExtrasBareChainTest\n[PASS] test_BareChain_NoVaultCode_AllSixDeploy() (gas: 9163095)\n[PASS] test_BareChain_NoVaultCode_ModulesInert() (gas: 9182900)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 1.66ms (1.27ms 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 36.83ms (17.59ms 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: 7838514)\n[PASS] test_NftRight_NoStake_Wallet0() (gas: 7585072)\n[PASS] test_NftUndecided_FullStake_Wallet5_50() (gas: 7375036)\n[PASS] test_NftWrong_FullStake_Wallet5_50() (gas: 8805741)\n[PASS] test_NftWrong_NoStake_Wallet0() (gas: 8486734)\n[PASS] test_NoStake_Accepted_NothingToTheWallet() (gas: 6740381)\n[PASS] test_Rejected_NothingToTheWallet() (gas: 7583537)\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 119.73ms (99.08ms 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, μ: 346720, ~: 346550)\n[PASS] test_LockedWhileOpen_EvenAfterRejection_FreeAfterDeadline() (gas: 8460809)\n[PASS] test_NftDecidedRight_VotesGetFivePercent() (gas: 7892558)\n[PASS] test_NftWrong_SwarmAccepts_VotesGetNothing() (gas: 8539975)\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: 7868875)\n[PASS] test_StakedDoer_PartPowerAndSmallPower() (gas: 11839014)\n[PASS] test_TinyAddon_NoBondPart_NothingStuck() (gas: 8875182)\nSuite result: ok. 14 passed; 0 failed; 0 skipped; finished in 139.82ms (122.25ms CPU time)\n\nRan 22 tests for test/YoloLockHub.t.sol:YoloLockHubTest\n[PASS] testFuzz_LockThenWithdrawReturnsExactAmount(uint256,uint256) (runs: 256, μ: 272194, ~: 271878)\n[PASS] testFuzz_PowerConstantThroughTheTerm(uint256,uint256,uint256) (runs: 256, μ: 150898, ~: 150963)\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: 3239695)\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 128.58ms (106.23ms 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: 7019133)\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 23.08ms (6.92ms 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 19.92ms (1.72ms 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: 9166925)\nLogs:\n  YoloSweetener 6748 runtime bytes\n  TrophyCatalog 4228 runtime bytes\n  DareTrophy 11777 runtime bytes\n  ProtocolDirectory 4562 runtime bytes\n  HiddenList 3789 runtime bytes\n  YoloPredict 6385 runtime bytes\n  launch 3 execution gas 8673887\n  launch 3 calldata bytes 42980\n  launch 3 total gas (upper bound) 9382567\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: 12589976)\n[PASS] test_RewardFormatting() (gas: 11024502)\n[PASS] test_TitleGuards() (gas: 1310117)\nSuite result: ok. 14 passed; 0 failed; 0 skipped; finished in 83.96ms (67.77ms 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: 2132225)\n[PASS] test_Fake_RewardStaysTaskOpen() (gas: 7597640)\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: 7805945)\n[PASS] test_NftRight_Staked() (gas: 8006721)\n[PASS] test_NftWrong_SwarmAccepts() (gas: 15019578)\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: 10049707)\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: 7853767)\n[PASS] test_SweetenerBoundOnceByTheOwner() (gas: 538439)\n[PASS] test_ThirdSilence_EndsAsWithoutCall_Decided() (gas: 10456412)\n[PASS] test_ThirdSilence_EndsAsWithoutCall_Undecided() (gas: 9909669)\n[PASS] test_Tie_DoerTakesEveryDisputerBond() (gas: 7345550)\n[PASS] test_TreasuryGetsOnlyItsShare() (gas: 11978013)\n[PASS] test_VoidAppealsCountTowardsThree() (gas: 9505160)\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: 4135603)\n[PASS] test_YoloReward_TreasuryShareBurned() (gas: 11264227)\nSuite result: ok. 43 passed; 0 failed; 0 skipped; finished in 235.11ms (207.89ms CPU time)\n\nRan 4 tests for test/TextRule.t.sol:TextRuleTest\n[PASS] testFuzz_AsciiWithOneByte(uint16,uint16,uint8,uint256) (runs: 256, μ: 221452, ~: 149183)\n[PASS] testFuzz_MixedUtf8(uint256,uint16) (runs: 256, μ: 63436, ~: 55064)\n[PASS] testFuzz_RandomBytes(bytes) (runs: 256, μ: 14441, ~: 13630)\n[PASS] test_Examples() (gas: 562950)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 206.85ms (206.69ms 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: 7458778)\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 35.96ms (19.21ms CPU time)\n\nRan 1 test for test/audit/PredictAfterTimer.t.sol:PredictAfterTimerTest\n[PASS] test_PredictAfterTimerEnded_WithoutPoke_IsAllowed() (gas: 2290358)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 16.74ms (998.62µs 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 16.92ms (1.66ms 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 589.98µs (190.94µs 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: 3570998)\nLogs:\n  askAppealSwarm gas that voids the appeal: 0\n\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 238.33ms (239.84ms CPU time)\n\nRan 2 tests for test/YoloTokenBareChain.t.sol:YoloTokenBareChainTest\n[PASS] test_BareChain_NoGateCode_PlainErc20() (gas: 894036)\n[PASS] test_GateCode_ScheduleAsBefore() (gas: 2087834)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 1.06ms (940.82µ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: 3660281)\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: 2741643)\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 66.35ms (45.35ms CPU time)\n\nRan 19 tests for test/DareComments.t.sol:DareCommentsTest\n[PASS] testFuzz_ParentMustMatch(uint256,uint256,uint8) (runs: 256, μ: 128732, ~: 128688)\n[PASS] testFuzz_WalkFindsEveryComment(uint256) (runs: 256, μ: 4276267, ~: 4277608)\n[PASS] test_500BytesOk_501Reverts() (gas: 343757)\n[PASS] test_AnyTargetIdAccepted() (gas: 179512)\n[PASS] test_ChainWalksBackThroughOneThread() (gas: 665162)\n[PASS] test_EmptyTextReverts() (gas: 30904)\n[PASS] test_EventCarriesEveryField() (gas: 170631)\n[PASS] test_FirstCommentPrevBlockZero() (gas: 209397)\n[PASS] test_GasReport() (gas: 617242)\nLogs:\n  exec gas post 100B 79456\n  exec gas post 280B 63717\n  exec gas post 500B 69132\n  exec gas reply 280B 65961\n\n[PASS] test_HiddenListTakesCommentAsKind3() (gas: 2628492)\n[PASS] test_KindOnlyTaskOrProof() (gas: 226273)\n[PASS] test_NoEthAccepted() (gas: 67482)\n[PASS] test_OneByteOk() (gas: 99230)\n[PASS] test_ParentFromOtherThreadReverts() (gas: 181230)\n[PASS] test_ParentNotYetExistingReverts() (gas: 154884)\n[PASS] test_ReplyToSameThreadOk() (gas: 221811)\n[PASS] test_RevertedPostLeavesChain() (gas: 227806)\n[PASS] test_ThreadsKindsVaultsHaveSeparateChains() (gas: 990662)\n[PASS] test_Utf8CountedInBytes() (gas: 306286)\nSuite result: ok. 19 passed; 0 failed; 0 skipped; finished in 322.88ms (326.54ms CPU time)\n\nRan 24 tests for test/Votes.t.sol:VotesTest\n[PASS] testFuzz_EachIdOnce(uint8,uint8) (runs: 256, μ: 3925116, ~: 3949246)\n[PASS] test_10Votes_DecideAtTheVoteEnd() (gas: 3407006)\n[PASS] test_5Votes_NoDecision() (gas: 321792)\n[PASS] test_BadVotesRevert() (gas: 210199)\n[PASS] test_Delegate_OneTokenOnly() (gas: 325915)\n[PASS] test_Delegate_VotesForTheOwner_IdsOnce() (gas: 640428)\n[PASS] test_InstantDecision_NextBatchReverts() (gas: 511387)\n[PASS] test_Instant_20Votes() (gas: 388949)\n[PASS] test_MockNft_MintBatch() (gas: 3160319)\n[PASS] test_NftInEscrow() (gas: 452347)\n[PASS] test_NftsGotAfterOpeningVote() (gas: 2219688)\n[PASS] test_NoVoteWithoutDispute() (gas: 781945)\n[PASS] test_NotOwnId_RevertsAll() (gas: 212538)\n[PASS] test_OneWallet_DecidesAlone() (gas: 1001607)\n[PASS] test_OneWallet_MinWinnerWallets() (gas: 4646083)\n[PASS] test_OnlyTheHolderVotesHisNfts() (gas: 355800)\n[PASS] test_RepeatInList_Reverts() (gas: 114398)\n[PASS] test_SideCannotChange() (gas: 268074)\n[PASS] test_TransferredAfterVote_NoSecondVote() (gas: 1601894)\n[PASS] test_TwoThousandNfts_NeverMoreVotes() (gas: 60332000)\n[PASS] test_TwoTransactionsSameSide() (gas: 349588)\n[PASS] test_VoteCountsEverySentNft() (gas: 14024377)\n[PASS] test_VoterRewardSplitByCorrectVotes() (gas: 7042216)\n[PASS] test_VotesAfterVoteEndRevert() (gas: 58437)\nSuite result: ok. 24 passed; 0 failed; 0 skipped; finished in 356.50ms (383.15ms CPU time)\n\nRan 23 tests for test/YoloPredict.t.sol:YoloPredictTest\n[PASS] testFuzz_BurnedPlusPaidEqualsDeposited(uint256,uint256,uint256,bool) (runs: 256, μ: 2032167, ~: 2345401)\n[PASS] test_AuthorCanPredict() (gas: 716964)\n[PASS] test_BelowMinPositionReverts() (gas: 465549)\n[PASS] test_ClaimBeforeFinalReverts() (gas: 800954)\n[PASS] test_ClosesAtDeadline_PausesWhileBusy() (gas: 3223161)\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 264.24ms (268.61ms CPU time)\n\nRan 34 tests for test/YoloToken.t.sol:YoloTokenTest\n[PASS] test_AfterMinute60_PlainErc20() (gas: 137108)\n[PASS] test_BeforeOpenAt_NobodyBuys() (gas: 752448)\n[PASS] test_ConstructorRejectsZeroPoolManagerOrSafe() (gas: 9166)\n[PASS] test_DevVesting_Linear12Months_NoCliff() (gas: 992024)\n[PASS] test_GateWithoutCode_PlainErc20() (gas: 280536)\n[PASS] test_Gate_ConsumeNeedsSealAndBooksPerCallingToken() (gas: 464018)\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: 4276159)\n[PASS] test_IncentivesVesting_QuarterAtOnce_RestLinear24Months() (gas: 966982)\n[PASS] test_OpenAtBounds() (gas: 8963)\n[PASS] test_SealAtOpenAtDoesNotCount() (gas: 256878)\n[PASS] test_SellTax_BuyFreeSellTaxedInWindow_BothAt45() (gas: 564926)\n[PASS] test_SellTax_ExactAmounts() (gas: 1063766)\n[PASS] test_SellTax_OnTopOfBalanceAndAllowance() (gas: 480636)\n[PASS] test_SellTax_RoundsDownAndDustIsFree() (gas: 119004)\n[PASS] test_Snapshot_NftMovedAfterSnapshotGivesNothing() (gas: 504446)\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: 67082)\n[PASS] test_Tax_ExactAmounts() (gas: 793640)\n[PASS] test_Tax_RoundsDownAndDustIsFree() (gas: 80188)\n[PASS] test_TeamVesting_Linear12Months_NoCliff() (gas: 838186)\n[PASS] test_TransfersAndTheLauncherAreFree() (gas: 770367)\n[PASS] test_TreasuryVesting_ShortRemainder() (gas: 145876)\n[PASS] test_TreasuryVesting_ThirdAtOnce_RestLinear12Months() (gas: 953436)\n[PASS] test_UnsealedSnapshot_WindowClosedToAll() (gas: 421448)\n[PASS] test_VestingBounds() (gas: 4331)\n[PASS] test_Whitelist_AllowancePerNftAndCumulative() (gas: 645735)\n[PASS] test_Whitelist_BoundaryAtMinute30() (gas: 408484)\n[PASS] test_Whitelist_IntermediaryRefused() (gas: 369643)\n[PASS] test_Whitelist_WalletOutsideSnapshotRefused() (gas: 283012)\nSuite result: ok. 34 passed; 0 failed; 0 skipped; finished in 142.12ms (9.46ms 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, μ: 2485897, ~: 2478926)\n[PASS] testFuzz_Invariant_BurnedPaidHeldEqualsDeposited(uint256,uint8,uint8) (runs: 256, μ: 3096124, ~: 2840228)\n[PASS] testFuzz_Invariant_NeverPaysOutMoreThanDeposited(uint256,uint256,uint256,bool) (runs: 256, μ: 2003593, ~: 2316751)\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: 4456165)\n[PASS] test_Life_AcceptedOnFirstSubmission() (gas: 1969629)\n[PASS] test_Life_AllSubmissionsRejected_ThenExpired() (gas: 3240324)\n[PASS] test_Life_DisputeAppealSwarm_AllAfterDeadline() (gas: 4348929)\n[PASS] test_Life_MultipleSubmissionsQueuedAtDeadline() (gas: 4140507)\n[PASS] test_Life_RejectedThenAcceptedOnResubmission() (gas: 4028627)\n[PASS] test_Life_SubmissionSecondBeforeDeadline_JudgedAfterDeadline() (gas: 1868963)\n[PASS] test_Life_VoteTieNoQuorum_DefaultsToAccepted() (gas: 2671071)\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 328.81ms (575.68ms CPU time)\n\nRan 21 tests for test/Swarm.t.sol:SwarmTest\n[PASS] testFuzz_NoMandatoryCheck_AnyRewardSize(uint256,uint8) (runs: 256, μ: 796978, ~: 780947)\n[PASS] test_ActionNotSold_LargeSubmitStillWorks() (gas: 11068463)\n[PASS] test_AnswerAfterSilenceIgnored() (gas: 6385369)\n[PASS] test_AnswerSignedEarly_DeliveredLate_Counts() (gas: 6117856)\n[PASS] test_AttesterRotationTimelocked() (gas: 2407774)\n[PASS] test_CallSwarm_IntakeBroken_Reverts_NothingTaken() (gas: 1713608)\n[PASS] test_CallbackGasUnder100k() (gas: 215841)\nLogs:\n  callback gas: 40971\n\n[PASS] test_CallbackSelectorMatchesDocs() (gas: 734)\n[PASS] test_DuplicateAnswerIgnored_FirstWins() (gas: 6128882)\n[PASS] test_IntakeBroken_LargeSubmitUnaffected() (gas: 10580110)\n[PASS] test_LargeTask_DisputedAtOnce_Rejected() (gas: 11212370)\n[PASS] test_LargeTask_DisputedNftAccepts_Fee5To5() (gas: 11338738)\n[PASS] test_LargeTask_QueuedSubmission_ActivatedWithoutQuestion() (gas: 14304618)\n[PASS] test_LateAnswerIgnored_Timeout() (gas: 6339449)\n[PASS] test_LostCallback_IsSilence_NoPublicFallback() (gas: 6460570)\n[PASS] test_NoMandatoryCheck_ImdTask_NoDispute_AcceptedBondBack() (gas: 10546770)\n[PASS] test_NoMandatoryCheck_MaxReward_NothingAsked_AcceptedByTimer() (gas: 10505102)\n[PASS] test_NoPublicFallback_ForAnyAttestation() (gas: 314829)\n[PASS] test_RefusedBody_Status1_IsSilence() (gas: 6208832)\n[PASS] test_RequestShapeAndBody() (gas: 4786337)\n[PASS] test_SpoofedCallbackIgnored() (gas: 494441)\nSuite result: ok. 21 passed; 0 failed; 0 skipped; finished in 385.00ms (274.77ms 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 356.31ms (41.23ms CPU time)\n\nRan 1 test for test/review/ReviewQueue.t.sol:ReviewQueue\n[PASS] testFuzz_QueueContributorsGetExactlyTheirs((uint8,uint256)) (runs: 256, μ: 8943380, ~: 7881899)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 618.43ms (592.62ms CPU time)\n\nRan 51 tests for test/Disputes.t.sol:DisputesTest\n[PASS] test_Appeal_ActionNotSold() (gas: 6864596)\n[PASS] test_Appeal_ByDoerSide_Flip() (gas: 7695257)\n[PASS] test_Appeal_IntakeReverts_AppealVoided() (gas: 7415363)\n[PASS] test_Appeal_LateAnswerAfterSilenceIgnored() (gas: 8066747)\n[PASS] test_Appeal_NeverAsked_ThirdTimeEndsUncalled() (gas: 7704323)\n[PASS] test_Appeal_NeverAsked_TimesOut() (gas: 7254199)\n[PASS] test_Appeal_PriceRaised_AppealVoided() (gas: 7280648)\n[PASS] test_Appeal_Silent_DecisionStands_NewWindow() (gas: 8170156)\n[PASS] test_Appeal_Silent_ReappealFlips() (gas: 8887509)\n[PASS] test_Appeal_SwarmAgrees() (gas: 8167733)\n[PASS] test_Appeal_SwarmFlips_NoFeeRefund_WinnerTakesAll() (gas: 7835415)\n[PASS] test_Appeal_WindowClosed() (gas: 1082479)\n[PASS] test_CallSwarm_ActionNotSold_DefaultStands() (gas: 6415919)\n[PASS] test_CallSwarm_LowerPrice_NoFeeRefund() (gas: 7311298)\n[PASS] test_CallSwarm_WrongPhase() (gas: 599802)\n[PASS] test_ClaimsPlayTimersThemselves_NoPokeNeeded() (gas: 6560724)\n[PASS] test_ContributorAppellantWins_GetsHisShareLikeAnyWinner() (gas: 8067674)\n[PASS] test_ContributorDisputerWins_SameShareAsAnyDisputer() (gas: 6980549)\n[PASS] test_ContributorDoerWins_GetsHisShareLikeAnyWinner() (gas: 11143394)\n[PASS] test_DisputeWindowClosedAndLimits() (gas: 1668234)\n[PASS] test_Dispute_NftAccepts_Fee5To5_Bond5050() (gas: 7024448)\n[PASS] test_Dispute_NftRejects_BondSplit5050() (gas: 6895298)\n[PASS] test_DisputerWhoTopsUpLater_StillGetsHisFullShare() (gas: 6838709)\n[PASS] test_DoerReply() (gas: 1578863)\n[PASS] test_InstantDecision_FiresOnceTheDeltaIsCrossed() (gas: 8334609)\n[PASS] test_NoDecision_CallAfterWindow_Reverts() (gas: 6536840)\n[PASS] test_NoDecision_CallSwarm_Accepts_CallerLosesBondAndFee() (gas: 7480603)\n[PASS] test_NoDecision_CallSwarm_Rejects_CallerGetsOnlyHisShare() (gas: 7696960)\n[PASS] test_NoDecision_DoerCallsSwarm_Confirmed() (gas: 7428625)\n[PASS] test_NoDecision_DoerCallsSwarm_Rejected() (gas: 7271366)\n[PASS] test_NoDecision_NobodyCalls_Accepted_DisputerBondsAllToDoer() (gas: 7554184)\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: 8541684)\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: 11404889)\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: 6869376)\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: 14442736)\n[PASS] test_SwarmFees_WinnerSideOnly_DoerSilentCallRefunded() (gas: 12768102)\n[PASS] test_ThirdSilence_Decided_NftDecisionStands() (gas: 10223293)\n[PASS] test_ThirdSilence_NoDecision_AcceptedDisputerBondToDoer() (gas: 9644760)\n[PASS] test_YoloReward_FeeSplitsLikeAnyReward_Votes5_Doer4_Burner1() (gas: 11465614)\n[PASS] test_YoloReward_TreasuryPartToBurner_FullPowerSix() (gas: 15101226)\nSuite result: ok. 51 passed; 0 failed; 0 skipped; finished in 570.73ms (439.03ms CPU time)\n\nRan 8 tests for test/audit/AuditB.t.sol:AuditBTest\n[PASS] testFuzz_Guard_ModeAPaymentsBookExactly(uint256,uint96,uint96,bool) (runs: 256, μ: 7312561, ~: 7335831)\n[PASS] testFuzz_Guard_PinnedVersionNeverChanges(uint16,uint32) (runs: 256, μ: 3173271, ~: 3173215)\n[PASS] test_Guard_BankOnlyForDesks() (gas: 132520)\n[PASS] test_Guard_FailedPushesBecomeCreditsAndBooksClose() (gas: 9658237)\n[PASS] test_Guard_LeakedAttesterKeyAloneCannotDecideDuringTheRemovalTimelock() (gas: 2884860)\n[PASS] test_Guard_LongestDueChainFitsOneCall() (gas: 10895594)\n[PASS] test_Guard_RevertingPinnedDevPricesNeverBlocksWithdrawals() (gas: 3992617)\n[PASS] test_Guard_ThirdPartyAnswerToACopiedQuestionCannotDecideOurCase() (gas: 9436443)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 647.00ms (857.62ms CPU time)\n\nRan 15 tests for test/SideCalls.t.sol:SideCallsTest\n[PASS] test_BothSidesCall_EachPaysFromItsOwnBond() (gas: 7991727)\n[PASS] test_Cancel_AfterSideCalls_BondsBackMinusFees() (gas: 6928145)\n[PASS] test_DisputerAppeal_Loses_RestOfBondToWinner() (gas: 7664030)\n[PASS] test_DisputerCallingForTheDoer_PaysLikeAStranger() (gas: 7123408)\n[PASS] test_DoerAppeal_Wins_RestOfBondPlusLoserBond() (gas: 7572320)\n[PASS] test_FeeAboveBond_WalletPaysOnlyTheRest() (gas: 7596764)\n[PASS] test_RepeatCall_CheaperThanBond_ThreeCalls() (gas: 9104716)\n[PASS] test_RepeatCall_Disputer_Loses() (gas: 8619283)\n[PASS] test_RepeatCall_Disputer_Wins() (gas: 8479887)\n[PASS] test_RepeatCall_Doer_Loses() (gas: 7847907)\n[PASS] test_RepeatCall_Doer_Wins() (gas: 8126599)\n[PASS] test_RepeatCall_EachSideOwnFirst() (gas: 8697767)\n[PASS] test_SideSpent_View() (gas: 8470002)\n[PASS] test_StrangerAppeal_PaysBondAndFee() (gas: 7493740)\n[PASS] test_VoidSideAppeal_BondWhole() (gas: 7752007)\nSuite result: ok. 15 passed; 0 failed; 0 skipped; finished in 1.04s (111.91ms CPU time)\n\nRan 13 tests for test/audit/swarm117/SwarmAudit117.t.sol:SwarmAudit117Test\n[PASS] test_answerAfterTheGraceIgnoredWhoeverPoked() (gas: 8747283)\n[PASS] test_answerDeliveredAfterTheGraceIgnoredEvenUnpoked() (gas: 8409763)\n[PASS] test_answerSignedAfterTheTimeoutIsSilenceAtTheEndOfTheGrace() (gas: 8512745)\n[PASS] test_authorFrontRunsSubmitWithWithdrawal() (gas: 6564106)\n[PASS] test_doerAppealsAgainstOwnAcceptance() (gas: 9163402)\n[PASS] test_doerCannotCallTheSwarmAgainstHimself() (gas: 8086704)\n[PASS] test_doerMayStillAppealARejection() (gas: 8657979)\n[PASS] test_expiredAttestationIsIgnored() (gas: 8339918)\n[PASS] test_lastAttesterCannotBeRemoved() (gas: 403156)\n[PASS] test_noNoticeNeededAfterExpiry() (gas: 3790424)\n[PASS] test_pokeAtDeadlineTurnsLateAnswerIntoSilence() (gas: 8758093)\n[PASS] test_rewardLockedUntilTheDeadlineAndWhileJudged() (gas: 6720357)\n[PASS] test_walletVotesBothSidesAndIsPaid() (gas: 7522228)\nSuite result: ok. 13 passed; 0 failed; 0 skipped; finished in 1.02s (88.00ms 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, μ: 9232181, ~: 9503639)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 1.10s (1.07s 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, μ: 10896543, ~: 9981011)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 1.32s (1.30s 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: 7474565)\n[PASS] test_DeadlineDuringSubmission_SubmissionStillRuns() (gas: 10453361)\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: 5291685)\n[PASS] test_ParamBounds() (gas: 430781)\n[PASS] test_ParamChange_DoesNotAffectExistingTasks() (gas: 13846801)\n[PASS] test_ParamProposalCancel() (gas: 1336248)\n[PASS] test_PauseStopsOnlyNewTasks() (gas: 1280793)\n[PASS] test_Queue_FlatBondAndVoidRefund() (gas: 13133742)\n[PASS] test_QuoteBondFormula() (gas: 1949242)\n[PASS] test_TopUpDuringSubmission_PaidToDoerOnAcceptance() (gas: 7134989)\n[PASS] test_TopUpDuringSubmission_StaysInRewardAfterRejection() (gas: 10567037)\n[PASS] test_TopUpRightBeforeDeadline_LockedThenReturned() (gas: 4318158)\n[PASS] test_WithdrawRules() (gas: 12242776)\nSuite result: ok. 25 passed; 0 failed; 0 skipped; finished in 3.86s (216.60ms CPU time)\n\nRan 2 tests for test/VotePowerFuzz.t.sol:VotePowerFuzzTest\n[PASS] testFuzz_OneVotePerNft(uint256) (runs: 256, μ: 98143639, ~: 99943814)\n[PASS] test_OneVotePerNft_Fixed() (gas: 387092570)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 3.82s (4.10s 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 3.86s (26.77ms 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               | 559   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | appeal               | 550   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | askAppealSwarm       | 524   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | breakIntake          | 549   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | callSwarm            | 544   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | claim                | 542   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | createTask           | 526   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | dispute              | 594   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | expireAndWithdraw    | 516   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | lock                 | 489   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | mintTrophy           | 562   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | payoutBonus          | 540   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | poke                 | 523   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progress             | 535   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progressA            | 557   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progressB            | 509   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progressC            | 523   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | progressD            | 525   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | setIntakePrice       | 525   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | submit               | 562   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | sweep                | 555   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | sweeten              | 529   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | topUp                | 505   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | vote                 | 528   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | warp                 | 523   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | withdrawBonus        | 554   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | withdrawContribution | 559   | 0       | 0        |\n|----------+----------------------+-------+---------+----------|\n| Handler  | withdrawLock         | 493   | 0       | 0        |\n╰----------+----------------------+-------+---------+----------╯\n\nLogs:\n  createTask: 9\n  topUp: 0\n  submit: 0\n  dispute: 0\n  vote: 0\n  appeal: 0\n  breakIntake: 5\n  callSwarm: 0\n  answer: 0\n  claimDisputer: 0\n  claimVoter: 0\n  claimVoid: 0\n  withdrawContribution: 1\n  withdrawExpired: 1\n  progress: 0\n  sweeten: 2\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 16.38s (16.35s CPU time)\n\nRan 92 test suites in 16.38s (39.32s CPU time): 717 tests passed, 0 failed, 4 skipped (721 total tests)\n","passed":true},{"durationMs":219,"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)\",\"DareComments.post(address,uint8,uint256,uint256,string)\",\"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\":93,\"CONTRACTS.md\":179,\"README.md\":100,\"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-COMMENTS.md\":66,\"docs/LAUNCH-TASK.md\":202,\"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,\"launch.json\":10,\"script/DeployMainnet.s.sol\":187,\"script/LaunchPlan.sol\":422,\"script/check-launch-task.py\":32,\"script/snapshot/snapshot.py\":187,\"src/BuybackBurner.sol\":126,\"src/DareComments.sol\":65,\"src/DareTrophy.sol\":222,\"src/DevPrices.sol\":129,\"src/HiddenList.sol\":297,\"src/OracleAttestation.sol\":57,\"src/ParamsRegistry.sol\":216,\"src/ProtocolDirectory.sol\":169,\"src/TaskVault.sol\":838,\"src/TrophyCatalog.sol\":119,\"src/VaultParams.sol\":250,\"src/VaultTypes.sol\":450,\"src/VotePower.sol\":52,\"src/YoloLockHub.sol\":154,\"src/YoloPredict.sol\":305,\"src/YoloSweetener.sol\":177,\"src/adapters/UniswapV3SwapAdapter.sol\":71,\"src/desks/CaseDesk.sol\":556,\"src/desks/Desk.sol\":143,\"src/desks/DeskApi.sol\":137,\"src/desks/DisputeDesk.sol\":807,\"src/helpers/AttestationChecker.sol\":59,\"src/helpers/SwarmQuestion.sol\":177,\"src/helpers/TextRules.sol\":245,\"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\":115,\"src/token/ProjectVesting.sol\":104,\"src/token/Vestings.sol\":38,\"src/token/YoloSplitter.sol\":103,\"src/token/YoloToken.sol\":176,\"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/DareComments.t.sol\":326,\"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/ExtrasBareChain.t.sol\":91,\"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\":734,\"test/YoloTokenBareChain.t.sol\":130,\"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\":338,\"test/audit/swarm117/VestingClockPreStart.t.sol\":92,\"test/fork/ExtrasOnLiveCore.fork.t.sol\":149,\"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/DareCommentsLaunch.t.sol\":240,\"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}],"detail":"all checks passed","evaluation":"checks","profile":"foundry","status":"accepted","submissionHash":"bf0f75c707481905246e65a130725efaed7d74103597f221d14de6cbf285ea06","verifiedTreeHash":"2ef1c1f82a68981f5add13bf0b4015caf07192e9","verifierVersion":"0.1.0+f3653923"}]}