{
  "schemaVersion": 4,
  "chainId": 143,
  "address": "0x3fE40329061A40f95416da42bB69E15d8eb83740",
  "blockNumber": "111489779",
  "standard": "erc4626",
  "vaultKind": "erc4626",
  "skipReason": null,
  "traits": [],
  "upstream": {
    "repo": "https://github.com/a16z/erc4626-tests",
    "commit": "ac485460e014f22807c1ff687e0b4dc3af96ee40"
  },
  "harnessSha256": "0xf5d1eef11ff3a4f0375844e1e731c1e18d4856b12573297dc6320baddd8d0262",
  "sfPropertiesSha256": "0x1d721e8b04b8b2013a796ac97b53e07fffd0a32c6f21f8d23d1bef4924dfa233",
  "runs": 16,
  "delta": "0",
  "seed": "0xdc5f1040bf39c42699201bec0409d873563bef9ac416208320ef57bf9f0e5de4",
  "sender": "0x4D617bFCc3543bcC859e0f755330200b7e60aacf",
  "toolchain": {
    "forgeVersion": "forge Version: 1.5.1-Homebrew",
    "forgeStd": {
      "repo": "https://github.com/foundry-rs/forge-std",
      "commit": "bf647bd6046f2f7da30d0c2bf435e5c76a780c1b"
    },
    "foundryTomlSha256": "0xee1cdf6abd473ff042b6385bd46833ed08053d608d0a5645ad159fc2cca1b9b3",
    "maxTestRejects": 4096
  },
  "identity": {
    "codeHash": "0x25d781b814f186277024af1b588b6ce492a5681059ae5bf9ec3d8039f361f6c5",
    "metadataHash": "0x12202ee0d2bf182da15178bf86df063452eb4b7dcdc1b5f62defb4c97b8e04b95b66",
    "maskedCodeHash": "0x65dfa9cf51b82e4069334687f3d5ffd8d13993dc7b43da392b443de1141b7ec5",
    "codeSize": 366,
    "proxy": {
      "kind": "eip1967-beacon",
      "implementation": "0xef17750D3a162E28a302E266c474ff8989d60ECD",
      "beacon": "0xba4Dd672062dE8FeeDb665DD4410658864483f1E"
    },
    "implementation": {
      "address": "0xef17750D3a162E28a302E266c474ff8989d60ECD",
      "codeHash": "0x5ba960e9679d0e24541b2cd9f1f53579235a8aa3caa8a956c9da5fb3b4e5a297",
      "metadataHash": "0x12200e33309390f117b69c1d1584f191153d2f8ddb29981be0c2c26229eb79fd52eb",
      "maskedCodeHash": "0x4ce60c06629692b83e4b748cb96ff8150a213d5378b92447879a1ea009c754c6"
    },
    "implementationKey": "0xdd21af250ff5c7001b35031d24abc55fd472370cf156a4146fe35134139c1901",
    "implementationKeyKind": {
      "of": "implementation",
      "hash": "metadataHash+maskedCodeHash"
    }
  },
  "results": [
    {
      "id": "asset",
      "test": "test_asset",
      "description": "asset() does not revert",
      "status": "pass",
      "runs": 16,
      "reason": "deposit reverted below maxDeposit 1 times (inputs discarded, EIP-4626 says it must not revert)"
    },
    {
      "id": "totalAssets",
      "test": "test_totalAssets",
      "description": "totalAssets() does not revert",
      "status": "pass",
      "runs": 16,
      "reason": "deposit reverted below maxDeposit 1 times (inputs discarded, EIP-4626 says it must not revert)"
    },
    {
      "id": "convertToShares",
      "test": "test_convertToShares",
      "description": "convertToShares gives the same result for any caller",
      "status": "pass",
      "runs": 16,
      "reason": "deposit reverted below maxDeposit 1 times (inputs discarded, EIP-4626 says it must not revert)"
    },
    {
      "id": "convertToAssets",
      "test": "test_convertToAssets",
      "description": "convertToAssets gives the same result for any caller",
      "status": "pass",
      "runs": 16,
      "reason": "deposit reverted below maxDeposit 1 times (inputs discarded, EIP-4626 says it must not revert)"
    },
    {
      "id": "maxDeposit",
      "test": "test_maxDeposit",
      "description": "maxDeposit does not revert",
      "status": "pass",
      "runs": 16,
      "reason": "deposit reverted below maxDeposit 1 times (inputs discarded, EIP-4626 says it must not revert)"
    },
    {
      "id": "previewDeposit",
      "test": "test_previewDeposit",
      "description": "deposit mints at least the shares previewDeposit quoted",
      "status": "pass",
      "runs": 16
    },
    {
      "id": "deposit",
      "test": "test_deposit",
      "description": "deposit moves assets from the caller, credits shares to the receiver and spends allowance",
      "status": "pass",
      "runs": 16,
      "reason": "deposit reverted below maxDeposit 2 times (inputs discarded, EIP-4626 says it must not revert)"
    },
    {
      "id": "maxMint",
      "test": "test_maxMint",
      "description": "maxMint does not revert",
      "status": "pass",
      "runs": 16,
      "reason": "deposit reverted below maxDeposit 1 times (inputs discarded, EIP-4626 says it must not revert)"
    },
    {
      "id": "previewMint",
      "test": "test_previewMint",
      "description": "mint pulls at most the assets previewMint quoted",
      "status": "pass",
      "runs": 16
    },
    {
      "id": "mint",
      "test": "test_mint",
      "description": "mint moves assets from the caller, credits shares to the receiver and spends allowance",
      "status": "pass",
      "runs": 16,
      "reason": "deposit reverted below maxDeposit 2 times (inputs discarded, EIP-4626 says it must not revert)"
    },
    {
      "id": "maxWithdraw",
      "test": "test_maxWithdraw",
      "description": "maxWithdraw does not revert",
      "status": "pass",
      "runs": 16,
      "reason": "deposit reverted below maxDeposit 1 times (inputs discarded, EIP-4626 says it must not revert)"
    },
    {
      "id": "previewWithdraw",
      "test": "test_previewWithdraw",
      "description": "withdraw burns at most the shares previewWithdraw quoted",
      "status": "pass",
      "runs": 16
    },
    {
      "id": "withdraw",
      "test": "test_withdraw",
      "description": "withdraw burns owner shares, pays the receiver and spends share allowance",
      "status": "pass",
      "runs": 16,
      "reason": "deposit reverted below maxDeposit 3 times (inputs discarded, EIP-4626 says it must not revert)"
    },
    {
      "id": "withdraw-zero-allowance",
      "test": "test_withdraw_zero_allowance",
      "description": "withdraw on behalf of an owner without allowance reverts",
      "status": "pass",
      "runs": 16
    },
    {
      "id": "maxRedeem",
      "test": "test_maxRedeem",
      "description": "maxRedeem does not revert",
      "status": "pass",
      "runs": 16,
      "reason": "deposit reverted below maxDeposit 1 times (inputs discarded, EIP-4626 says it must not revert)"
    },
    {
      "id": "previewRedeem",
      "test": "test_previewRedeem",
      "description": "redeem pays at least the assets previewRedeem quoted",
      "status": "pass",
      "runs": 16
    },
    {
      "id": "redeem",
      "test": "test_redeem",
      "description": "redeem burns owner shares, pays the receiver and spends share allowance",
      "status": "pass",
      "runs": 16,
      "reason": "deposit reverted below maxDeposit 3 times (inputs discarded, EIP-4626 says it must not revert)"
    },
    {
      "id": "redeem-zero-allowance",
      "test": "test_redeem_zero_allowance",
      "description": "redeem on behalf of an owner without allowance reverts",
      "status": "pass",
      "runs": 16
    },
    {
      "id": "RT-deposit-redeem",
      "test": "test_RT_deposit_redeem",
      "description": "redeem(deposit(a)) returns no more than a",
      "status": "pass",
      "runs": 16
    },
    {
      "id": "RT-deposit-withdraw",
      "test": "test_RT_deposit_withdraw",
      "description": "withdraw(a) burns at least the shares deposit(a) minted",
      "status": "pass",
      "runs": 16,
      "reason": "deposit reverted below maxDeposit 1 times (inputs discarded, EIP-4626 says it must not revert)"
    },
    {
      "id": "RT-redeem-deposit",
      "test": "test_RT_redeem_deposit",
      "description": "deposit(redeem(s)) mints no more than s",
      "status": "pass",
      "runs": 16
    },
    {
      "id": "RT-redeem-mint",
      "test": "test_RT_redeem_mint",
      "description": "mint(s) costs at least the assets redeem(s) paid",
      "status": "pass",
      "runs": 16
    },
    {
      "id": "RT-mint-withdraw",
      "test": "test_RT_mint_withdraw",
      "description": "withdraw(mint(s)) burns at least s shares",
      "status": "pass",
      "runs": 16
    },
    {
      "id": "RT-mint-redeem",
      "test": "test_RT_mint_redeem",
      "description": "redeem(s) pays no more than mint(s) cost",
      "status": "pass",
      "runs": 16
    },
    {
      "id": "RT-withdraw-mint",
      "test": "test_RT_withdraw_mint",
      "description": "mint(withdraw(a)) costs at least a",
      "status": "pass",
      "runs": 16
    },
    {
      "id": "RT-withdraw-deposit",
      "test": "test_RT_withdraw_deposit",
      "description": "deposit(a) mints no more than the shares withdraw(a) burned",
      "status": "pass",
      "runs": 16
    },
    {
      "id": "sf-maxDeposit-honored",
      "test": "test_sf_maxDeposit_honored",
      "description": "deposit goes through up to min(maxDeposit, 1e6 tokens); when a smaller amount is refused the bound must go through, and refusals are counted (EIP-4626: maxDeposit MUST NOT be higher than what deposit accepts)",
      "status": "pass",
      "runs": 16
    },
    {
      "id": "sf-maxMint-honored",
      "test": "test_sf_maxMint_honored",
      "description": "mint goes through up to min(maxMint, shares of 1e6 tokens); when a smaller amount is refused the bound must go through, and refusals are counted (EIP-4626: maxMint MUST NOT be higher than what mint accepts)",
      "status": "pass",
      "runs": 16
    },
    {
      "id": "sf-maxWithdraw-honored",
      "test": "test_sf_maxWithdraw_honored",
      "description": "withdraw goes through up to maxWithdraw; when a smaller amount is refused maxWithdraw must go through, and refusals are counted (EIP-4626: maxWithdraw MUST NOT be higher than what withdraw accepts, and MUST be 0 when withdrawals are disabled)",
      "status": "pass",
      "runs": 16
    },
    {
      "id": "sf-maxRedeem-honored",
      "test": "test_sf_maxRedeem_honored",
      "description": "redeem goes through up to maxRedeem; when a smaller amount is refused maxRedeem must go through, and refusals are counted (EIP-4626: maxRedeem MUST NOT be higher than what redeem accepts, and MUST be 0 when redemptions are disabled)",
      "status": "pass",
      "runs": 16
    }
  ],
  "summary": {
    "pass": 30,
    "fail": 0,
    "inconclusive": 0,
    "notApplicable": 0
  },
  "startedAt": "2026-10-08T02:23:11.381Z",
  "durationMs": 74624
}
