{"assessments":[],"deployments":[{"attestationHash":"e32be479ad8dc352af21e12111e1506f83ec51095b65b164007a947a7e695d63","chainId":1,"contracts":[{"address":"0x80ceb33f7a884c17188d6c7095627858c7e4c836","blockNumber":26393005,"name":"Squeek","role":"token","txHash":"0x862670622c4a18be1adc9549d77196484852053c8472668dd513b120259589a8"},{"address":"0xb2ff74db307681f826e5f1a51c81ce8849845e9c","blockNumber":26393005,"name":"MerkleDistributor","role":"distributor","txHash":"0x862670622c4a18be1adc9549d77196484852053c8472668dd513b120259589a8"},{"address":"0x784ff9a3ac5d88a30bfff6f7f2a270161fbe6000","blockNumber":26393005,"name":"PoolInitializationGuard","role":"hook","txHash":"0x862670622c4a18be1adc9549d77196484852053c8472668dd513b120259589a8"}],"id":"e0a468d9-831e-4234-84f1-32a4e28b280d","manifestHash":"0ccf48b38d9697ffc9e1c474f035e25e19711adc2c43136c8a1bdf3a807941f0","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":"337c2acd-a633-45d7-b812-62ba8643c8c9","kind":"shape:chain","nodes":[{"acceptedSubmissionHash":"5c2f2b8ada324a4160915d8eeab39e2a1e66be41a29bf079d0594e17f9c24093","dependsOn":["build_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":"34d6b3555526a90acb20a261d961fed5cd3967146aba8216fff5a1cd499dff6f","dependsOn":["build_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":"e33eece5e1d397a55fd4e71d04834389cd25a15f764aca894e5f4623cc540118","dependsOn":["build_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":"1a9c044e04658e71f1d3b6a25e9b26bd31e1666bd3a21119670c98a4a18016dc","dependsOn":["build_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":"b6afb836b56f327159ed346417416857564ae5c83e847ecd1035d0db364bacf5","dependsOn":["build_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":"297fd142aedfc6c03d6293103d8a0913969a994402944c8795ed26206e7609cd","dependsOn":[],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"15b04fc8f60521936b9e2b37c09a804685ec689fc98cd5b04510d986d3106a15","skillId":"build-contract-project","tools":[]},"key":"build_contract_project","kind":"code","role":"implement","skillHash":"15b04fc8f60521936b9e2b37c09a804685ec689fc98cd5b04510d986d3106a15","skillId":"build-contract-project","state":"accepted"},{"acceptedSubmissionHash":"a1e46f07eee434c7d339413092d8b5fc068601cd700cd20510f137ddd9b9796b","dependsOn":["build_contract_project"],"execution":{"network":false,"profile":"foundry","requires":[],"tools":[]},"key":"manifest","kind":"code","role":"integrate","skillHash":null,"skillId":null,"state":"accepted"},{"acceptedSubmissionHash":"6defa3b7eb39d0b62bd37902b38bfcd93ac9d90c884658e6a3040cca43a4b181","dependsOn":["build_contract_project"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"1ddb4d02eb75e52d5f38cfd5c9bb54f332687b81929c68880cf1e8a6ab27254d","skillId":"write-foundry-tests","subagents":4,"tools":[]},"key":"write_foundry_tests","kind":"code","role":"tests","skillHash":"1ddb4d02eb75e52d5f38cfd5c9bb54f332687b81929c68880cf1e8a6ab27254d","skillId":"write-foundry-tests","state":"accepted"}],"objective":"A custom token: Squeek (SQK).\nToken name: Squeek\nToken symbol: SQK\nToken supply: 1,000,000,000 with 18 decimals, all minted once to the deployer in the constructor.","parentJobId":null,"planHash":"234dbfc4bfa49aa5e20d1fa38f229f0ea96466a1ad2ea6c6df9365e1debe1c31","previousHash":"c936ed5b87c5994730444712194f3ae494c30d0ac81a191b14a2264f40ff0884","projectId":"337c2acd-a633-45d7-b812-62ba8643c8c9","publication":{"commit":"13c66e71724c5e32be5024e4ebcea022b83eac1b","deliveredAt":"2026-11-11T16:52:50.728Z","repoUrl":"https://github.com/identity-md-launches/launch-3212-squeek"},"receiptIdentity":{"adapter":"0xde152afb7db5373f34876e1499fbd893a82dd336","chainId":1,"collection":"0x0000ec93127baa929e58e97dd0095a2bfb38ec1d","registry":"0x8004a169fb4a3325136eb29fa0ceb6d2e539a432"},"registry":"0xb6d0a187b050fa5bb0b87033a203f37becf4a775","research":[],"schema":"identitymd-work-v1","signals":[],"site":null,"snapshotHash":"5306551928999184cacbeb2f1b07d3111501e5efce3f0c612fdf73d3bc9d31b4","state":"completed","submissions":[{"artifacts":[],"attempt":1,"bundleHash":null,"device":"e6de8d4c6cf97551","findings":[],"hash":"1a9c044e04658e71f1d3b6a25e9b26bd31e1666bd3a21119670c98a4a18016dc","nodeId":"10dcd088-f37d-4287-9f74-d6d891c9d0c8","outcome":"completed","summary":"The review is complete and the findings file is written.\n\n**Result: no defects found in the math area.** The file `.imd-findings.json` holds an empty findings list and eight coverage rows, all `holds`.\n\n**What the token is.** One contract, `src/Squeek.sol`, which inherits OpenZeppelin ERC20 v5.1.0 unchanged and mints a constant supply to the deployer in its constructor. There is no division, rounding, fee, cast, scale conversion, external call, payable path, or bytes decoding anywhere in the token or its base, so most failure modes in the Math Precision, Boundary and Numerical Gap guides have no surface here.\n\n**What I verified, with concrete inputs:**\n- The supply constant equals 10^27 base units, computed independently with node and asserted in forge. Decimals are the inherited 18.\n- Transfers of the full supply, the supply plus one, and the maximum uint256 behave as specified. The last two revert with the insufficient-balance error and leave state untouched.\n- Allowance edges: maximum is treated as unlimited, maximum minus one is decremented, an exactly consumed allowance rejects one more unit, and a transferFrom that fails on balance after passing the allowance check rolls the allowance back.\n- Sum of balances equals total supply under a 1024-run fuzz and the author's 256-run stateful invariant suite, which ran with every call succeeding.\n- The five vendored OpenZeppelin files are byte-identical to the upstream v5.1.0 archive, whose hash matches DEPENDENCIES.md.\n- The author's 33 tests build and pass under Solidity 0.8.26.\n\n**Static-analysis lead.** The aderyn \"large numeric literal\" line points at the underscored supply constant. Its value is correct, so it is not a defect.\n\n**Outside my area.** Nothing severe surfaced. There is no owner, mint or privileged path, which also satisfies the protected floor tests I read. No launch.json exists in the tree yet, which is expected at this stage.\n\nThe scratch test and the downloaded archive were removed, and the tree is otherwise unchanged.","treeHash":null,"usage":{"cachedInputTokens":308061,"cost":{"source":"runtime","usdMicros":1683871},"inputTokens":194,"model":"claude-fable-5-1","outputTokens":9039,"runtime":"claude","turns":11,"wallClockMs":157516}},{"artifacts":[],"attempt":1,"bundleHash":"66df5d2379853aae3a3dd60c7aa70238b1cc0940915923ec3c351d9bae427c49","device":"06cf148faa51546b","findings":[],"hash":"297fd142aedfc6c03d6293103d8a0913969a994402944c8795ed26206e7609cd","nodeId":"5327aed2-fe40-41d7-abe3-578f4b2acc1b","outcome":"completed","summary":"Implemented [Squeek.sol](/home/imd-worker/.identitymd/work/337c2acd-a633-45d7-b812-62ba8643c8c9/5327aed2-fe40-41d7-abe3-578f4b2acc1b/src/Squeek.sol): 1,000,000,000 SQK, 18 decimals, minted once to the deployer. No administrative powers or further minting.\n\nDependencies are vendored; assumptions, deployment parameters, and operational responsibilities are documented.\n\nValidation passed with Solidity 0.8.26:\n\n- Offline build.\n- All 33 Foundry tests, using the supplied fuzz seed.\n- 16,384 stateful invariant operations.\n- `forge fmt --check`.\n\nProtected launch integration checks remain for the verifier’s infrastructure.","treeHash":"243f51a43f6bff05ed4da007a6711a41a6d3f32f","usage":{"cachedInputTokens":445696,"cost":{"source":"estimated","usdMicros":1674996},"inputTokens":48580,"model":"gpt-6-astra","outputTokens":14870,"runtime":"codex","turns":5,"wallClockMs":407731}},{"artifacts":[],"attempt":1,"bundleHash":null,"device":"771f83f312eace21","findings":[],"hash":"34d6b3555526a90acb20a261d961fed5cd3967146aba8216fff5a1cd499dff6f","nodeId":"80860241-3ac9-4443-b0b5-634101d3ea34","outcome":"completed","summary":"The review is complete. The findings file is on disk, excluded from git by design, and no tracked file was changed.\n\n**Outcome: no defects found** in the control-flow area for the Squeek (SQK) token. The file `.imd-findings.json` holds an empty findings list and eight coverage rows, all `holds`.\n\n**What the token is.** A single contract, Squeek, that inherits unmodified OpenZeppelin ERC20 v5.1.0 and mints one billion tokens at 18 decimals to the constructor caller. There is no owner, fee, burn, pause, mint, receive or fallback path.\n\n**What I verified for each guide.**\n\n- **Execution Trace.** Traced approve, transfer and transferFrom from entry to final storage write. The amount checked against the allowance is the same amount moved. Zero-address paths revert with the ERC-6093 errors. A failed transfer rolls back the allowance decrement atomically. Self-transfer leaves the balance unchanged. Infinite allowance is not decremented. A scratch Foundry test confirmed each of these, then was removed.\n- **Periphery.** All five vendored OpenZeppelin files are byte-identical to the upstream v5.1.0 tag. The inheritance chain contains no assembly, encoders, loops, oracles or external calls.\n- **First Principles.** The supply constant evaluates to exactly 10^27 and matches the README's manifest string. The mint goes to the immediate deployer, which is the factory under a CREATE2 launch, and not to the transaction origin. The compiled ABI exposes only the three listed nonpayable functions plus the constructor, so supply can never grow and no privileged hand can move or freeze a holder.\n\n**Protected floor.** A disassembly of the runtime bytecode contains no CALL-family, DELEGATECALL, CALLCODE or SELFDESTRUCT opcodes. Because the token has no fee, the swarm share, pool seed and swaps move exactly their stated amounts without any exemption list.\n\n**Checks run.** The project build, all 33 project tests with the assignment's fuzz seed, and the forge format check all pass. The static-analysis lead from aderyn about a large numeric literal is style-only and is recorded as a note in the coverage record.\n\n**Not covered.** The protected launch test that drives a real Uniswap v4 PoolManager needs the verifier's infrastructure and environment variables, so I reasoned about it from the token's behavior rather than executing it.","treeHash":null,"usage":{"cachedInputTokens":419312,"cost":{"source":"runtime","usdMicros":1877582},"inputTokens":258,"model":"claude-fable-5-1","outputTokens":12057,"runtime":"claude","turns":16,"wallClockMs":230497}},{"artifacts":[],"attempt":1,"bundleHash":null,"device":"e9049e5b12ba53ba","findings":[],"hash":"5c2f2b8ada324a4160915d8eeab39e2a1e66be41a29bf079d0594e17f9c24093","nodeId":"32b80aca-a38d-4131-8107-4d253d01da88","outcome":"completed","summary":"I found no defects in Squeek's economics. `.imd-findings.json` holds an empty findings list and a coverage record for all three entry points plus two supply invariants.\n\n**What the code is:** `src/Squeek.sol` is a plain OpenZeppelin v5.1.0 ERC-20. Its constructor mints `INITIAL_SUPPLY = 1_000_000_000 * 10 ** 18` once to `msg.sender` (the factory, during a launch). It adds nothing else: no owner, no mint or burn after deployment, no transfer fee, no pause or blacklist, no hooks, and no DELEGATECALL or SELFDESTRUCT. I read the OpenZeppelin files it depends on (`_update`, `_spendAllowance`, `_approve`), and their logic is the standard upstream code. I didn't check them against the archive hash listed in `DEPENDENCIES.md`.\n\n**Economic Security, Invariant and Flow Gap passes:**\n- **Supply stays fixed:** the constructor is the only place tokens are minted. With no mint, upgrade or ownership function, the supply can't grow after launch from anyone, including the factory.\n- **Launch transfers arrive in full:** nothing is taxed or burned on transfer. Each step of the launch moves exactly the amount sent: factory to distributor, distributor to claimant, the seed into the PoolManager, and buys and sells through it.\n- **Balances add up:** the sum of balances always equals `totalSupply`. Over-spending a balance or allowance reverts. An allowance set to the maximum value is never used up, which is normal ERC-20 behaviour.\n- **No privileged power** can move or freeze a holder's balance.\n\n**Coverage:** `approve`, `transfer` and `transferFrom` are marked `holds`, each with a one-line reason.\n\n**Static analysis:** aderyn's \"large numeric literal\" at `src/Squeek.sol:10` is the intended supply constant, so it's not a defect. Slither reported nothing.\n\n**Checks run:** the existing test suite passes, 33 tests across two suites, including the invariant suite. I didn't run the protected launch-floor test. It needs launch environment values that this review doesn't have, though nothing in the token conflicts with what it checks. I didn't review `launch.json` because the tree doesn't have one yet.\n\nI changed no files apart from writing `.imd-findings.json`.","treeHash":null,"usage":{"cachedInputTokens":145597,"cost":{"source":"runtime","usdMicros":334506},"inputTokens":10,"model":"claude-opus-5-5","outputTokens":2489,"runtime":"claude","turns":5,"wallClockMs":58371}},{"artifacts":[],"attempt":1,"bundleHash":"8f25a4ab7b053278b2c954f5c0746826c2a7ebc8e848b54a66af5fe60518ec16","device":"0da932e4a0b9bd4a","findings":[],"hash":"6defa3b7eb39d0b62bd37902b38bfcd93ac9d90c884658e6a3040cca43a4b181","nodeId":"649f0c42-0456-4f28-bc2b-edc56f1f6c36","outcome":"completed","summary":"Added 16 edge-case and fuzz tests, and expanded the stateful invariants.\n\nVerified offline with the required seed: `forge build` and `forge test` pass—48 unit/fuzz tests plus three invariants across 32,768 random calls.\n\nOnly `test/` changed. No defects reproduced. Protected launch integration requires verifier infrastructure and wasn’t run locally.","treeHash":"6fcb6f19d01101de2d33eb7fb83cdf545a3b70af","usage":{"cachedInputTokens":785664,"cost":{"source":"estimated","usdMicros":2278874},"inputTokens":76676,"model":"gpt-6-astra","outputTokens":14529,"runtime":"codex","turns":6,"wallClockMs":416593}},{"artifacts":[],"attempt":1,"bundleHash":"26fd987a2da476d02317a5fe734f0c3c1c3af2f9f0ab553a0e3dd1f7dc0f30ed","device":"a84da3707fa87187","findings":[],"hash":"a1e46f07eee434c7d339413092d8b5fc068601cd700cd20510f137ddd9b9796b","nodeId":"f44d3358-0e4d-476d-b842-be0dd9ac00fd","outcome":"completed","summary":"Created [launch.json](/home/imd/.identitymd/work/337c2acd-a633-45d7-b812-62ba8643c8c9/f44d3358-0e4d-476d-b842-be0dd9ac00fd/launch.json) matching `Squeek`, its argument-free constructor, exact supply, and required pool and economics values.\n\n`forge build` succeeded; all 33 tests passed with the supplied fuzz seed. Only `launch.json` is changed for submission.","treeHash":"265af0f495db89c700f99c5be9c52d404122ed97","usage":{"cachedInputTokens":196608,"cost":{"source":"estimated","usdMicros":525758},"inputTokens":21025,"model":"gpt-6-astra","outputTokens":2378,"runtime":"codex","turns":3,"wallClockMs":76960}},{"artifacts":[],"attempt":1,"bundleHash":null,"device":"f96a0c89c039c22a","findings":[],"hash":"b6afb836b56f327159ed346417416857564ae5c83e847ecd1035d0db364bacf5","nodeId":"02b15239-5b85-4820-a464-5c1dca366616","outcome":"completed","summary":"I found no defects in the permissions area (Access Control, Trust Gap and Asymmetry), so `.imd-findings.json` has an empty findings list and five coverage rows.\n\n**What the code is:** `src/Squeek.sol` is one 17-line contract built on OpenZeppelin's ERC-20 (v5.1.0, vendored). Its constructor mints exactly 1,000,000,000 × 10^18 SQK (10^27 base units) to `msg.sender`, which is the factory in a launch. It adds nothing else: no overrides, no owner or roles, no admin functions, no fees or exemptions. I read the vendored `ERC20.sol` and `Context.sol` and they match standard v5.1.0: `_msgSender()` just returns `msg.sender`.\n\n**Coverage:**\n- **`approve(address,uint256)` — holds.** It only changes the caller's own allowance and rejects the zero address for owner or spender.\n- **`transfer(address,uint256)` — holds.** It only moves the caller's own balance and reverts on an insufficient balance or a zero recipient. There are no fees, blacklist, pause or exemptions, so the launch transfers to the distributor, the claims and the pool trades all move exactly what they say.\n- **`transferFrom(address,address,uint256)` — holds.** It checks and reduces the caller's allowance before moving tokens, and an allowance of the maximum `uint256` is never reduced. No address, including the deployer or factory, gets around the allowance.\n- **The supply can't grow — holds.** The mint is only reachable from the constructor, and nothing callable later can mint, change an owner or upgrade.\n- **No privileged role — holds.** The constructor gives out no role and every caller is treated the same. So the floor test's admin calls (`pause`, `blacklist`, `burnFrom`, `mint` and the rest) don't exist on this contract and can't run.\n\n**Checks:** `forge test` passes 33 of 33. I didn't run the protected floor tests because they need the launch's environment variables and harness files. Reading them against the contract, nothing in them would fail. The one static-analysis lead, aderyn's \"large numeric literal\" at `src/Squeek.sol:10`, is the intended supply constant, not a defect.\n\nI changed no repository files. `git status` shows untracked editor and shell files (`.bashrc`, `.claude/`, `.vscode` and others) that I didn't create; they come from the workspace setup, not this review.","treeHash":null,"usage":{"cachedInputTokens":236160,"cost":{"source":"runtime","usdMicros":363886},"inputTokens":14,"model":"claude-opus-5-5","outputTokens":2979,"runtime":"claude","turns":7,"wallClockMs":53777}},{"artifacts":[],"attempt":1,"bundleHash":null,"device":"00920b27421b9a80","findings":[],"hash":"e33eece5e1d397a55fd4e71d04834389cd25a15f764aca894e5f4623cc540118","nodeId":"febeca6b-5cf7-4a23-82ef-1eaf095196c6","outcome":"completed","summary":"The review is complete and the findings file is written.\n\n**Outcome:** no defects. All five specialist reports came in empty, so there was nothing to reproduce or merge. My own pass under the Pashov, x-ray, Trail of Bits and eth-security checklists found nothing either, and the one static-analysis lead is style only.\n\n**What I verified against the code:**\n- The token at `src/Squeek.sol` is the vendored OpenZeppelin ERC-20 plus a constructor that mints the fixed supply to the deployer. It adds no other functions, roles, hooks, or external calls.\n- Each of the three state-changing entry points (approve, transfer, transferFrom) traced through the inherited implementation behaves as standard ERC-20 with ERC-6093 reverts. Transfers deliver exact amounts, so the factory, distributor and PoolManager flows arrive whole without exemptions.\n- The minted supply is one billion tokens at 18 decimals and matches launch.json exactly. The manifest's constructor arguments are empty, matching the no-argument constructor.\n- The five vendored OpenZeppelin files are byte-identical to upstream v5.1.0. The build with solc 0.8.26 succeeds and all 49 local tests pass.\n- Runtime bytecode is well under the EIP-170 limit and contains no DELEGATECALL, CALLCODE or SELFDESTRUCT. There is no library linking and no proxy.\n- The aderyn \"large numeric literal\" lead at line 10 evaluates to exactly the brief's supply and is not a defect.\n\n**Limits:** the protected tests import the verifier's launch harness and Uniswap v4 sources, which are not in this tree, so they could not be executed here. I checked every assertion they make (supply, decimals, exact flows, no admin calls, no forbidden opcodes, size) by hand against the token instead.\n\n`.imd-findings.json` holds an empty findings list and eight coverage rows: the three entry points, each marked holds with its reason, plus five invariant rows. No repository files were changed; the scratch directory I used for the protected-test attempt was removed.","treeHash":null,"usage":{"cachedInputTokens":347003,"cost":{"source":"runtime","usdMicros":1159836},"inputTokens":290,"model":"claude-fable-5-1","outputTokens":6180,"runtime":"claude","turns":10,"wallClockMs":210571}}],"verification":[{"checks":[{"durationMs":1068,"exitCode":0,"name":"build","output":"Compiling 27 files with Solc 0.8.26\nSolc 0.8.26 finished in 998.00ms\nCompiler run successful!\n","passed":true},{"durationMs":7047,"exitCode":0,"name":"test","output":"No files changed, compilation skipped\n\nRan 32 tests for test/Squeek.t.sol:SqueekTest\n[PASS] testFuzz_DelegatedTransfer(uint256,uint256) (runs: 1024, μ: 163451, ~: 165370)\nLogs:\n  Bound result 614801447992765893749959527\n  Bound result 530662435280136161764484495\n\n[PASS] testFuzz_RejectAmountAboveAllowance(uint256,uint256) (runs: 1024, μ: 123407, ~: 123940)\nLogs:\n  Bound result 3\n  Bound result 1109\n\n[PASS] testFuzz_RejectAmountAboveBalance(uint256,uint256) (runs: 1024, μ: 127334, ~: 127533)\nLogs:\n  Bound result 2283702\n  Bound result 96320250461298530650809546423458548289513676729691\n\n[PASS] testFuzz_TransferToAnyNonzeroRecipient(address,uint256) (runs: 1024, μ: 92940, ~: 93230)\nLogs:\n  Bound result 999999999999999999999999999\n\n[PASS] testFuzz_TransfersConserveSupply(uint256,uint256) (runs: 1024, μ: 194216, ~: 196129)\nLogs:\n  Bound result 326853070635463629747276727\n  Bound result 1\n\n[PASS] test_AllowanceIsScopedToOwnerAndSpender() (gas: 131573)\n[PASS] test_ApprovalCanBeReplacedAndRevoked() (gas: 167524)\n[PASS] test_ApprovalMayExceedCurrentBalance() (gas: 78659)\n[PASS] test_ApproveEmitsEventAndDoesNotMoveTokens() (gas: 88787)\n[PASS] test_ApproveZeroSpenderReverts() (gas: 37606)\n[PASS] test_ConstructorEmitsMintTransfer() (gas: 580786)\n[PASS] test_ConstructorMintsToImmediateDeployer() (gas: 602157)\n[PASS] test_DeployerCannotSpendHolderBalanceWithoutApproval() (gas: 95420)\n[PASS] test_FactoryDeploymentAndExactLaunchTransfers() (gas: 1145027)\n[PASS] test_InfiniteAllowanceRemainsUnchanged() (gas: 129403)\n[PASS] test_InsufficientAllowanceRevertsWithoutChanges() (gas: 116126)\n[PASS] test_InsufficientBalanceRevertsWithoutChanges() (gas: 67759)\n[PASS] test_MetadataAndEntireSupply() (gas: 107567)\n[PASS] test_NoMintBurnOrPrivilegedEntryPoints() (gas: 1212454)\n[PASS] test_SelfTransferPreservesBalance() (gas: 51528)\n[PASS] test_TransferEmitsEventAndDeliversExactAmount() (gas: 91606)\n[PASS] test_TransferEntireBalanceAndOneBaseUnit() (gas: 143579)\n[PASS] test_TransferFromBalanceFailureRestoresAllowance() (gas: 126539)\n[PASS] test_TransferFromEmitsEventAndConsumesFiniteAllowance() (gas: 232126)\n[PASS] test_TransferFromSelfStillRequiresAllowance() (gas: 35703)\n[PASS] test_TransferFromToSameOwnerConsumesOnlyAllowance() (gas: 105695)\n[PASS] test_TransferFromZeroReceiverRestoresAllowance() (gas: 114584)\n[PASS] test_TransferFromZeroSenderRevertsEvenForZeroAmount() (gas: 37880)\n[PASS] test_TransferToZeroReverts() (gas: 47642)\n[PASS] test_ZeroTransferFromEmptyAccountEmitsEvent() (gas: 63055)\n[PASS] test_ZeroTransferFromNeedsNoAllowance() (gas: 81566)\n[PASS] test_ZeroTransferToZeroReverts() (gas: 30434)\nSuite result: ok. 32 passed; 0 failed; 0 skipped; finished in 41.53ms (207.58ms CPU time)\n\nRan 1 test for test/Squeek.invariant.t.sol:SqueekInvariantTest\n[PASS]\nSqueekInvariantTest invariants:\n[PASS] invariant_AllowancesMatchModel\n[PASS] invariant_SupplyAndBalancesMatchModel\n SqueekInvariantTest invariants (runs: 256, calls: 16384, reverts: 0)\n\n╭---------------+---------------------+-------+---------+----------╮\n| Contract      | Selector            | Calls | Reverts | Discards |\n+==================================================================+\n| SqueekHandler | approve             | 3297  | 0       | 0        |\n|---------------+---------------------+-------+---------+----------|\n| SqueekHandler | move                | 3234  | 0       | 0        |\n|---------------+---------------------+-------+---------+----------|\n| SqueekHandler | rejectOverAllowance | 3280  | 0       | 0        |\n|---------------+---------------------+-------+---------+----------|\n| SqueekHandler | rejectOverdraw      | 3312  | 0       | 0        |\n|---------------+---------------------+-------+---------+----------|\n| SqueekHandler | spend               | 3261  | 0       | 0        |\n╰---------------+---------------------+-------+---------+----------╯\n\nLogs:\n  Bound result 7000000000000000000\n  Bound result 0\n  Bound result 0\n  Bound result 0\n  Bound result 6150\n  Bound result 1000000000\n  Bound result 9\n  Bound result 427857432608424421991318339\n  Bound result 903097807441178528230185914\n  Bound result 3124842406\n  Bound result 614375112\n  Bound result 3114\n  Bound result 3507\n  Bound result 907896405617546014916744698\n  Bound result 0\n  Bound result 25000000000000000000\n  Bound result 1857\n  Bound result 0\n  Bound result 0\n  Bound result 0\n  Bound result 5631\n  Bound result 2\n  Bound result 0\n  Bound result 0\n  Bound result 0\n  Bound result 13\n  Bound result 0\n  Bound result 0\n  Bound result 0\n  Bound result 0\n  Bound result 2378\n  Bound result 9\n  Bound result 4560\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 6.95s (6.95s CPU time)\n\nRan 2 test suites in 6.95s (6.99s CPU time): 33 tests passed, 0 failed, 0 skipped (33 total tests)\n","passed":true},{"durationMs":33,"exitCode":0,"name":"source-index","output":"{\"v\":1,\"entryPoints\":[\"Squeek.approve(address,uint256)\",\"Squeek.transfer(address,uint256)\",\"Squeek.transferFrom(address,address,uint256)\"],\"files\":{\".gitignore\":4,\"DEPENDENCIES.md\":22,\"README.md\":136,\"foundry.toml\":21,\"remappings.txt\":2,\"src/Squeek.sol\":17,\"test/Squeek.invariant.t.sol\":124,\"test/Squeek.t.sol\":383},\"excluded\":[\"lib/\",\"node_modules/\"],\"truncated\":false}","passed":true},{"durationMs":410,"exitCode":0,"name":"slither","output":"slither: no results at low impact or above","passed":true},{"durationMs":158,"exitCode":0,"name":"aderyn","output":"[low] large-numeric-literal at src/Squeek.sol:10: Large Numeric Literal","passed":true}],"detail":"all checks passed","evaluation":"checks","profile":"foundry","status":"accepted","submissionHash":"297fd142aedfc6c03d6293103d8a0913969a994402944c8795ed26206e7609cd","verifiedTreeHash":"243f51a43f6bff05ed4da007a6711a41a6d3f32f","verifierVersion":"0.1.0+f03a8d70"},{"checks":[{"durationMs":1377,"exitCode":0,"name":"build","output":"Compiling 28 files with Solc 0.8.26\nSolc 0.8.26 finished in 1.31s\nCompiler run successful!\n","passed":true},{"durationMs":13639,"exitCode":0,"name":"test","output":"No files changed, compilation skipped\n\nRan 16 tests for test/Squeek.edge.t.sol:SqueekEdgeTest\n[PASS] testFuzz_ApprovalReplacementIsIdempotentAndScoped(uint256,uint256) (runs: 1024, μ: 326125, ~: 326778)\n[PASS] testFuzz_BalanceFailureCanBeRetriedAfterFunding(uint256,uint256,bool) (runs: 1024, μ: 345568, ~: 345903)\nLogs:\n  Bound result 2832\n  Bound result 999999999999999999999997678\n\n[PASS] testFuzz_InvalidRecipientPreservesAnyAllowance(uint256,uint256) (runs: 1024, μ: 224319, ~: 226498)\nLogs:\n  Bound result 6259250114400\n\n[PASS] testFuzz_RepeatedRoundTripsRestoreBalances(uint256,uint8) (runs: 1024, μ: 589253, ~: 432793)\nLogs:\n  Bound result 5112\n  Bound result 8\n\n[PASS] testFuzz_SplitDelegatedTransfersEqualSingleSpend(uint256,uint256,uint256,bool) (runs: 1024, μ: 935095, ~: 932997)\nLogs:\n  Bound result 605458153028885011837049392\n  Bound result 155077861577298123410891719\n\n[PASS] testFuzz_ZeroDelegatedTransferPreservesAnyAllowance(uint256,bool) (runs: 1024, μ: 145600, ~: 147667)\n[PASS] test_ContractRecipientNeedsNoCallback() (gas: 368330)\n[PASS] test_ContractSpenderCannotUseOwnersTransactionOrigin() (gas: 443272)\n[PASS] test_DelegatedSelfTransferCannotBypassBalanceCheck() (gas: 165177)\n[PASS] test_DowngradingInfiniteApprovalEnforcesNewLimit() (gas: 201254)\n[PASS] test_MaximumDelegatedTransferPreservesInfiniteAllowanceOnFailure() (gas: 129491)\n[PASS] test_MaximumDirectTransferRevertsWithoutOverflow() (gas: 65399)\n[PASS] test_MaximumMinusOneAllowanceIsFinite() (gas: 210821)\n[PASS] test_RevokingInfiniteApprovalProtectsRefilledBalance() (gas: 322526)\n[PASS] test_SelfTransferCannotBypassBalanceCheck() (gas: 50601)\n[PASS] test_ZeroAddressGuardsApplyEvenToZeroAmounts() (gas: 153932)\nSuite result: ok. 16 passed; 0 failed; 0 skipped; finished in 116.10ms (657.43ms CPU time)\n\nRan 32 tests for test/Squeek.t.sol:SqueekTest\n[PASS] testFuzz_DelegatedTransfer(uint256,uint256) (runs: 1024, μ: 163516, ~: 165370)\nLogs:\n  Bound result 7051272369912\n  Bound result 6259250114400\n\n[PASS] testFuzz_RejectAmountAboveAllowance(uint256,uint256) (runs: 1024, μ: 123442, ~: 123940)\nLogs:\n  Bound result 655630483825963706567997513\n  Bound result 44971258455070725331079329\n\n[PASS] testFuzz_RejectAmountAboveBalance(uint256,uint256) (runs: 1024, μ: 127384, ~: 127563)\nLogs:\n  Bound result 655630483825963706564431809\n  Bound result 50601618685713144358874732550645887877709041769701530348873821840628\n\n[PASS] testFuzz_TransferToAnyNonzeroRecipient(address,uint256) (runs: 1024, μ: 93454, ~: 93679)\nLogs:\n  Bound result 857542711402305338404844689793110203097137227153\n  Bound result 646903916991769019491234638\n\n[PASS] testFuzz_TransfersConserveSupply(uint256,uint256) (runs: 1024, μ: 194316, ~: 196129)\nLogs:\n  Bound result 655630483825963706564431809\n  Bound result 3628854500906804055501808\n\n[PASS] test_AllowanceIsScopedToOwnerAndSpender() (gas: 131573)\n[PASS] test_ApprovalCanBeReplacedAndRevoked() (gas: 167524)\n[PASS] test_ApprovalMayExceedCurrentBalance() (gas: 78659)\n[PASS] test_ApproveEmitsEventAndDoesNotMoveTokens() (gas: 88787)\n[PASS] test_ApproveZeroSpenderReverts() (gas: 37606)\n[PASS] test_ConstructorEmitsMintTransfer() (gas: 580786)\n[PASS] test_ConstructorMintsToImmediateDeployer() (gas: 602157)\n[PASS] test_DeployerCannotSpendHolderBalanceWithoutApproval() (gas: 95420)\n[PASS] test_FactoryDeploymentAndExactLaunchTransfers() (gas: 1145027)\n[PASS] test_InfiniteAllowanceRemainsUnchanged() (gas: 129403)\n[PASS] test_InsufficientAllowanceRevertsWithoutChanges() (gas: 116126)\n[PASS] test_InsufficientBalanceRevertsWithoutChanges() (gas: 67759)\n[PASS] test_MetadataAndEntireSupply() (gas: 107567)\n[PASS] test_NoMintBurnOrPrivilegedEntryPoints() (gas: 1212454)\n[PASS] test_SelfTransferPreservesBalance() (gas: 51528)\n[PASS] test_TransferEmitsEventAndDeliversExactAmount() (gas: 91606)\n[PASS] test_TransferEntireBalanceAndOneBaseUnit() (gas: 143579)\n[PASS] test_TransferFromBalanceFailureRestoresAllowance() (gas: 126539)\n[PASS] test_TransferFromEmitsEventAndConsumesFiniteAllowance() (gas: 232126)\n[PASS] test_TransferFromSelfStillRequiresAllowance() (gas: 35703)\n[PASS] test_TransferFromToSameOwnerConsumesOnlyAllowance() (gas: 105695)\n[PASS] test_TransferFromZeroReceiverRestoresAllowance() (gas: 114584)\n[PASS] test_TransferFromZeroSenderRevertsEvenForZeroAmount() (gas: 37880)\n[PASS] test_TransferToZeroReverts() (gas: 47642)\n[PASS] test_ZeroTransferFromEmptyAccountEmitsEvent() (gas: 63055)\n[PASS] test_ZeroTransferFromNeedsNoAllowance() (gas: 81566)\n[PASS] test_ZeroTransferToZeroReverts() (gas: 30434)\nSuite result: ok. 32 passed; 0 failed; 0 skipped; finished in 116.10ms (527.79ms CPU time)\n\nRan 1 test for test/Squeek.invariant.t.sol:SqueekInvariantTest\n[PASS]\nSqueekInvariantTest invariants:\n[PASS] invariant_AllowancesMatchModel\n[PASS] invariant_MetadataNeverChanges\n[PASS] invariant_SupplyAndBalancesMatchModel\n SqueekInvariantTest invariants (runs: 256, calls: 32768, reverts: 0)\n\n╭---------------+------------------------+-------+---------+----------╮\n| Contract      | Selector               | Calls | Reverts | Discards |\n+=====================================================================+\n| SqueekHandler | approve                | 3266  | 0       | 0        |\n|---------------+------------------------+-------+---------+----------|\n| SqueekHandler | move                   | 3252  | 0       | 0        |\n|---------------+------------------------+-------+---------+----------|\n| SqueekHandler | moveAll                | 3320  | 0       | 0        |\n|---------------+------------------------+-------+---------+----------|\n| SqueekHandler | rejectOverAllowance    | 3297  | 0       | 0        |\n|---------------+------------------------+-------+---------+----------|\n| SqueekHandler | rejectOverdraw         | 3235  | 0       | 0        |\n|---------------+------------------------+-------+---------+----------|\n| SqueekHandler | rejectSpendOverBalance | 3285  | 0       | 0        |\n|---------------+------------------------+-------+---------+----------|\n| SqueekHandler | rejectZeroAddress      | 3299  | 0       | 0        |\n|---------------+------------------------+-------+---------+----------|\n| SqueekHandler | revoke                 | 3294  | 0       | 0        |\n|---------------+------------------------+-------+---------+----------|\n| SqueekHandler | roundTrip              | 3229  | 0       | 0        |\n|---------------+------------------------+-------+---------+----------|\n| SqueekHandler | spend                  | 3291  | 0       | 0        |\n╰---------------+------------------------+-------+---------+----------╯\n\nLogs:\n  Bound result 763600050\n  Bound result 12308\n  Bound result 0\n  Bound result 684832716283019655932542975\n  Bound result 0\n  Bound result 2\n  Bound result 0\n  Bound result 467795475650822628341791798\n  Bound result 0\n  Bound result 196902514451015446201582766\n  Bound result 506000058248268933374339048665911048277633041904537933050521136965041304\n  Bound result 12000000000000000000\n  Bound result 0\n  Bound result 1641\n  Bound result 0\n  Bound result 0\n  Bound result 381\n  Bound result 2455\n  Bound result 0\n  Bound result 0\n  Bound result 0\n  Bound result 0\n  Bound result 1\n  Bound result 763600050\n  Bound result 0\n  Bound result 0\n  Bound result 266\n  Bound result 0\n  Bound result 0\n  Bound result 33\n  Bound result 159\n  Bound result 1000000000000000000000000000\n  Bound result 13\n  Bound result 10852\n  Bound result 0\n  Bound result 4844\n  Bound result 0\n  Bound result 1000000000000000000000000000\n  Bound result 105313749345541013\n  Bound result 0\n  Bound result 0\n  Bound result 0\n  Bound result 0\n  Bound result 0\n  Bound result 9701\n  Bound result 0\n  Bound result 5\n  Bound result 0\n  Bound result 0\n  Bound result 11843\n  Bound result 0\n  Bound result 3391\n  Bound result 18\n  Bound result 2\n  Bound result 115792089237316195423570985008687907853269984665640564039457584007913129639934\n  Bound result 3\n  Bound result 0\n  Bound result 8\n  Bound result 0\n  Bound result 0\n  Bound result 131586\n  Bound result 650834700725337215507046262\n  Bound result 0\n  Bound result 0\n  Bound result 5071\n  Bound result 12154\n  Bound result 0\n  Bound result 115792089237316195423570985008687907853269984665640564039457584007913129639933\n  Bound result 7\n  Bound result 0\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 13.54s (13.54s CPU time)\n\nRan 3 test suites in 13.54s (13.77s CPU time): 49 tests passed, 0 failed, 0 skipped (49 total tests)\n","passed":true},{"durationMs":39,"exitCode":0,"name":"source-index","output":"{\"v\":1,\"entryPoints\":[\"Squeek.approve(address,uint256)\",\"Squeek.transfer(address,uint256)\",\"Squeek.transferFrom(address,address,uint256)\"],\"files\":{\".gitignore\":4,\"DEPENDENCIES.md\":22,\"README.md\":136,\"foundry.toml\":21,\"remappings.txt\":2,\"src/Squeek.sol\":17,\"test/PROPERTIES.md\":70,\"test/Squeek.edge.t.sol\":307,\"test/Squeek.invariant.t.sol\":252,\"test/Squeek.t.sol\":384},\"excluded\":[\"lib/\",\"node_modules/\"],\"truncated\":false}","passed":true}],"detail":"all checks passed","evaluation":"checks","profile":"foundry","status":"accepted","submissionHash":"6defa3b7eb39d0b62bd37902b38bfcd93ac9d90c884658e6a3040cca43a4b181","verifiedTreeHash":"6fcb6f19d01101de2d33eb7fb83cdf545a3b70af","verifierVersion":"0.1.0+f03a8d70"},{"checks":[{"durationMs":1086,"exitCode":0,"name":"build","output":"Compiling 27 files with Solc 0.8.26\nSolc 0.8.26 finished in 1.01s\nCompiler run successful!\n","passed":true},{"durationMs":6682,"exitCode":0,"name":"test","output":"No files changed, compilation skipped\n\nRan 32 tests for test/Squeek.t.sol:SqueekTest\n[PASS] testFuzz_DelegatedTransfer(uint256,uint256) (runs: 1024, μ: 163451, ~: 165370)\nLogs:\n  Bound result 326853070635463629747276727\n  Bound result 1\n\n[PASS] testFuzz_RejectAmountAboveAllowance(uint256,uint256) (runs: 1024, μ: 123407, ~: 123940)\nLogs:\n  Bound result 3\n  Bound result 1109\n\n[PASS] testFuzz_RejectAmountAboveBalance(uint256,uint256) (runs: 1024, μ: 127334, ~: 127533)\nLogs:\n  Bound result 13661\n  Bound result 100000000000000000000\n\n[PASS] testFuzz_TransferToAnyNonzeroRecipient(address,uint256) (runs: 1024, μ: 92940, ~: 93230)\nLogs:\n  Bound result 999999999999999999999999998\n\n[PASS] testFuzz_TransfersConserveSupply(uint256,uint256) (runs: 1024, μ: 194216, ~: 196129)\nLogs:\n  Bound result 614801447992765893749959527\n  Bound result 530662435280136161764484495\n\n[PASS] test_AllowanceIsScopedToOwnerAndSpender() (gas: 131573)\n[PASS] test_ApprovalCanBeReplacedAndRevoked() (gas: 167524)\n[PASS] test_ApprovalMayExceedCurrentBalance() (gas: 78659)\n[PASS] test_ApproveEmitsEventAndDoesNotMoveTokens() (gas: 88787)\n[PASS] test_ApproveZeroSpenderReverts() (gas: 37606)\n[PASS] test_ConstructorEmitsMintTransfer() (gas: 580786)\n[PASS] test_ConstructorMintsToImmediateDeployer() (gas: 602157)\n[PASS] test_DeployerCannotSpendHolderBalanceWithoutApproval() (gas: 95420)\n[PASS] test_FactoryDeploymentAndExactLaunchTransfers() (gas: 1145027)\n[PASS] test_InfiniteAllowanceRemainsUnchanged() (gas: 129403)\n[PASS] test_InsufficientAllowanceRevertsWithoutChanges() (gas: 116126)\n[PASS] test_InsufficientBalanceRevertsWithoutChanges() (gas: 67759)\n[PASS] test_MetadataAndEntireSupply() (gas: 107567)\n[PASS] test_NoMintBurnOrPrivilegedEntryPoints() (gas: 1212454)\n[PASS] test_SelfTransferPreservesBalance() (gas: 51528)\n[PASS] test_TransferEmitsEventAndDeliversExactAmount() (gas: 91606)\n[PASS] test_TransferEntireBalanceAndOneBaseUnit() (gas: 143579)\n[PASS] test_TransferFromBalanceFailureRestoresAllowance() (gas: 126539)\n[PASS] test_TransferFromEmitsEventAndConsumesFiniteAllowance() (gas: 232126)\n[PASS] test_TransferFromSelfStillRequiresAllowance() (gas: 35703)\n[PASS] test_TransferFromToSameOwnerConsumesOnlyAllowance() (gas: 105695)\n[PASS] test_TransferFromZeroReceiverRestoresAllowance() (gas: 114584)\n[PASS] test_TransferFromZeroSenderRevertsEvenForZeroAmount() (gas: 37880)\n[PASS] test_TransferToZeroReverts() (gas: 47642)\n[PASS] test_ZeroTransferFromEmptyAccountEmitsEvent() (gas: 63055)\n[PASS] test_ZeroTransferFromNeedsNoAllowance() (gas: 81566)\n[PASS] test_ZeroTransferToZeroReverts() (gas: 30434)\nSuite result: ok. 32 passed; 0 failed; 0 skipped; finished in 46.99ms (197.71ms CPU time)\n\nRan 1 test for test/Squeek.invariant.t.sol:SqueekInvariantTest\n[PASS]\nSqueekInvariantTest invariants:\n[PASS] invariant_AllowancesMatchModel\n[PASS] invariant_SupplyAndBalancesMatchModel\n SqueekInvariantTest invariants (runs: 256, calls: 16384, reverts: 0)\n\n╭---------------+---------------------+-------+---------+----------╮\n| Contract      | Selector            | Calls | Reverts | Discards |\n+==================================================================+\n| SqueekHandler | approve             | 3297  | 0       | 0        |\n|---------------+---------------------+-------+---------+----------|\n| SqueekHandler | move                | 3234  | 0       | 0        |\n|---------------+---------------------+-------+---------+----------|\n| SqueekHandler | rejectOverAllowance | 3280  | 0       | 0        |\n|---------------+---------------------+-------+---------+----------|\n| SqueekHandler | rejectOverdraw      | 3312  | 0       | 0        |\n|---------------+---------------------+-------+---------+----------|\n| SqueekHandler | spend               | 3261  | 0       | 0        |\n╰---------------+---------------------+-------+---------+----------╯\n\nLogs:\n  Bound result 7000000000000000000\n  Bound result 0\n  Bound result 0\n  Bound result 0\n  Bound result 6150\n  Bound result 1000000000\n  Bound result 9\n  Bound result 427857432608424421991318339\n  Bound result 903097807441178528230185914\n  Bound result 3124842406\n  Bound result 614375112\n  Bound result 3114\n  Bound result 3507\n  Bound result 907896405617546014916744698\n  Bound result 0\n  Bound result 25000000000000000000\n  Bound result 1857\n  Bound result 0\n  Bound result 0\n  Bound result 0\n  Bound result 5631\n  Bound result 2\n  Bound result 0\n  Bound result 0\n  Bound result 0\n  Bound result 13\n  Bound result 0\n  Bound result 0\n  Bound result 0\n  Bound result 0\n  Bound result 2378\n  Bound result 9\n  Bound result 4560\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 6.57s (6.57s CPU time)\n\nRan 2 test suites in 6.57s (6.62s CPU time): 33 tests passed, 0 failed, 0 skipped (33 total tests)\n","passed":true},{"durationMs":31,"exitCode":0,"name":"source-index","output":"{\"v\":1,\"entryPoints\":[\"Squeek.approve(address,uint256)\",\"Squeek.transfer(address,uint256)\",\"Squeek.transferFrom(address,address,uint256)\"],\"files\":{\".gitignore\":4,\"DEPENDENCIES.md\":22,\"README.md\":136,\"foundry.toml\":21,\"launch.json\":24,\"remappings.txt\":2,\"src/Squeek.sol\":17,\"test/Squeek.invariant.t.sol\":124,\"test/Squeek.t.sol\":383},\"excluded\":[\"lib/\",\"node_modules/\"],\"truncated\":false}","passed":true}],"detail":"all checks passed","evaluation":"checks","profile":"foundry","status":"accepted","submissionHash":"a1e46f07eee434c7d339413092d8b5fc068601cd700cd20510f137ddd9b9796b","verifiedTreeHash":"265af0f495db89c700f99c5be9c52d404122ed97","verifierVersion":"0.1.0+f03a8d70"}]}