diff --git a/.gas-snapshot b/.gas-snapshot index 0a0a41891..73b98023c 100644 --- a/.gas-snapshot +++ b/.gas-snapshot @@ -1,9 +1,9 @@ Base64Test:testBase64DecodeSentenceGas() (gas: 3663) Base64Test:testBase64DecodeShortStringGas() (gas: 896) -Base64Test:testBase64EncodeDecode(bytes) (runs: 276, μ: 6279, ~: 4982) -Base64Test:testBase64EncodeDecodeAltModes(bytes) (runs: 276, μ: 820908, ~: 736388) +Base64Test:testBase64EncodeDecode(bytes) (runs: 256, μ: 6197, ~: 4982) +Base64Test:testBase64EncodeDecodeAltModes(bytes) (runs: 256, μ: 823230, ~: 735539) Base64Test:testBase64EncodeEmptyString() (gas: 902) -Base64Test:testBase64EncodeFileSafeAndNoPadding(bytes,bool,bool) (runs: 276, μ: 15618, ~: 13360) +Base64Test:testBase64EncodeFileSafeAndNoPadding(bytes,bool,bool) (runs: 256, μ: 15473, ~: 13136) Base64Test:testBase64EncodeSentence() (gas: 4333) Base64Test:testBase64EncodeShortStrings() (gas: 7610) Base64Test:testBase64EncodeToStringWithDoublePadding() (gas: 1553) @@ -12,66 +12,66 @@ Base64Test:testBase64EncodeToStringWithSinglePadding() (gas: 1487) Base64Test:testBase64WordBoundary() (gas: 11624) Base64Test:test__codesize() (gas: 6611) CREATE3Test:testDeployERC20() (gas: 833416) -CREATE3Test:testDeployERC20(bytes32,string,string,uint8) (runs: 276, μ: 876356, ~: 879509) +CREATE3Test:testDeployERC20(bytes32,string,string,uint8) (runs: 256, μ: 876723, ~: 879509) CREATE3Test:testDeployedUpperBitsSafeForPlainSolidity() (gas: 657) CREATE3Test:testDoubleDeployDifferentBytecodeReverts() (gas: 96899279) -CREATE3Test:testDoubleDeployDifferentBytecodeReverts(bytes32,bytes,bytes) (runs: 276, μ: 96880283, ~: 96880069) +CREATE3Test:testDoubleDeployDifferentBytecodeReverts(bytes32,bytes,bytes) (runs: 256, μ: 96880130, ~: 96880005) CREATE3Test:testDoubleDeploySameBytecodeReverts() (gas: 96889159) -CREATE3Test:testDoubleDeploySameBytecodeReverts(bytes32,bytes) (runs: 276, μ: 96881113, ~: 96881043) +CREATE3Test:testDoubleDeploySameBytecodeReverts(bytes32,bytes) (runs: 256, μ: 96881051, ~: 96881007) CREATE3Test:test__codesize() (gas: 14089) -DateTimeLibTest:testAddSubDiffDays(uint256,uint256) (runs: 276, μ: 4218, ~: 4216) -DateTimeLibTest:testAddSubDiffHours(uint256,uint256) (runs: 276, μ: 4161, ~: 4162) -DateTimeLibTest:testAddSubDiffMinutes(uint256,uint256) (runs: 276, μ: 4155, ~: 4136) -DateTimeLibTest:testAddSubDiffMonths(uint256,uint256) (runs: 276, μ: 7265, ~: 7264) -DateTimeLibTest:testAddSubDiffSeconds(uint256,uint256) (runs: 276, μ: 3769, ~: 3728) -DateTimeLibTest:testAddSubDiffYears(uint256,uint256) (runs: 276, μ: 6829, ~: 6829) +DateTimeLibTest:testAddSubDiffDays(uint256,uint256) (runs: 256, μ: 4172, ~: 4161) +DateTimeLibTest:testAddSubDiffHours(uint256,uint256) (runs: 256, μ: 4120, ~: 4074) +DateTimeLibTest:testAddSubDiffMinutes(uint256,uint256) (runs: 256, μ: 4118, ~: 4088) +DateTimeLibTest:testAddSubDiffMonths(uint256,uint256) (runs: 256, μ: 7216, ~: 7209) +DateTimeLibTest:testAddSubDiffSeconds(uint256,uint256) (runs: 256, μ: 3740, ~: 3717) +DateTimeLibTest:testAddSubDiffYears(uint256,uint256) (runs: 256, μ: 6779, ~: 6774) DateTimeLibTest:testDateTimeArithmeticReverts() (gas: 4500) DateTimeLibTest:testDateTimeMaxSupported() (gas: 2823) -DateTimeLibTest:testDateTimeToAndFroTimestamp((uint256,uint256,uint256,uint256,uint256,uint256)) (runs: 276, μ: 4145, ~: 4096) -DateTimeLibTest:testDateToAndFroEpochDay((uint256,uint256,uint256,uint256,uint256,uint256)) (runs: 276, μ: 2549, ~: 2530) +DateTimeLibTest:testDateTimeToAndFroTimestamp((uint256,uint256,uint256,uint256,uint256,uint256)) (runs: 256, μ: 4014, ~: 4090) +DateTimeLibTest:testDateToAndFroEpochDay((uint256,uint256,uint256,uint256,uint256,uint256)) (runs: 256, μ: 2493, ~: 2466) DateTimeLibTest:testDateToAndFroEpochDay() (gas: 866444) DateTimeLibTest:testDateToAndFroTimestamp() (gas: 908693) DateTimeLibTest:testDateToEpochDay() (gas: 1559) -DateTimeLibTest:testDateToEpochDayDifferential((uint256,uint256,uint256,uint256,uint256,uint256)) (runs: 276, μ: 2288, ~: 2288) -DateTimeLibTest:testDateToEpochDayDifferential2((uint256,uint256,uint256,uint256,uint256,uint256)) (runs: 276, μ: 2210, ~: 2191) +DateTimeLibTest:testDateToEpochDayDifferential((uint256,uint256,uint256,uint256,uint256,uint256)) (runs: 256, μ: 2232, ~: 2209) +DateTimeLibTest:testDateToEpochDayDifferential2((uint256,uint256,uint256,uint256,uint256,uint256)) (runs: 256, μ: 2154, ~: 2127) DateTimeLibTest:testDateToEpochDayGas() (gas: 756479) DateTimeLibTest:testDateToEpochDayGas2() (gas: 759345) DateTimeLibTest:testDayOfWeek() (gas: 175255) DateTimeLibTest:testDaysInMonth() (gas: 1226) -DateTimeLibTest:testDaysInMonth(uint256,uint256) (runs: 276, μ: 1082, ~: 1093) +DateTimeLibTest:testDaysInMonth(uint256,uint256) (runs: 256, μ: 1058, ~: 1082) DateTimeLibTest:testDaysToDate() (gas: 8377) -DateTimeLibTest:testEpochDayToDate(uint256) (runs: 276, μ: 1045, ~: 1045) -DateTimeLibTest:testEpochDayToDateDifferential(uint256) (runs: 276, μ: 1779, ~: 1721) -DateTimeLibTest:testEpochDayToDateDifferential2(uint256) (runs: 276, μ: 1786, ~: 1709) +DateTimeLibTest:testEpochDayToDate(uint256) (runs: 256, μ: 1045, ~: 1045) +DateTimeLibTest:testEpochDayToDateDifferential(uint256) (runs: 256, μ: 1771, ~: 1721) +DateTimeLibTest:testEpochDayToDateDifferential2(uint256) (runs: 256, μ: 1776, ~: 1709) DateTimeLibTest:testEpochDayToDateGas() (gas: 340769) DateTimeLibTest:testEpochDayToDateGas2() (gas: 357399) DateTimeLibTest:testIsLeapYear() (gas: 741) -DateTimeLibTest:testIsLeapYear(uint256) (runs: 276, μ: 541, ~: 517) +DateTimeLibTest:testIsLeapYear(uint256) (runs: 256, μ: 543, ~: 517) DateTimeLibTest:testIsSupportedDateFalse() (gas: 1180) -DateTimeLibTest:testIsSupportedDateTime((uint256,uint256,uint256,uint256,uint256,uint256)) (runs: 276, μ: 2959, ~: 2956) +DateTimeLibTest:testIsSupportedDateTime((uint256,uint256,uint256,uint256,uint256,uint256)) (runs: 256, μ: 2832, ~: 2839) DateTimeLibTest:testIsSupportedDateTrue() (gas: 626) DateTimeLibTest:testIsSupportedEpochDayFalse() (gas: 494) DateTimeLibTest:testIsSupportedEpochDayTrue() (gas: 305) DateTimeLibTest:testIsSupportedTimestampFalse() (gas: 541) DateTimeLibTest:testIsSupportedTimestampTrue() (gas: 326) -DateTimeLibTest:testIsWeekEnd(uint256) (runs: 276, μ: 693, ~: 617) +DateTimeLibTest:testIsWeekEnd(uint256) (runs: 256, μ: 681, ~: 617) DateTimeLibTest:testMondayTimestamp() (gas: 1106) -DateTimeLibTest:testMondayTimestamp(uint256) (runs: 276, μ: 756, ~: 836) +DateTimeLibTest:testMondayTimestamp(uint256) (runs: 256, μ: 750, ~: 672) DateTimeLibTest:testNthWeekdayInMonthOfYearTimestamp() (gas: 12053) -DateTimeLibTest:testNthWeekdayInMonthOfYearTimestamp(uint256,uint256,uint256,uint256) (runs: 276, μ: 3577, ~: 3597) +DateTimeLibTest:testNthWeekdayInMonthOfYearTimestamp(uint256,uint256,uint256,uint256) (runs: 256, μ: 3460, ~: 3494) DateTimeLibTest:testWeekday() (gas: 682) DateTimeLibTest:test__codesize() (gas: 19094) -DeploylessPredeployQueryerTest:testPredeployQueryer(bytes32) (runs: 276, μ: 227471, ~: 218659) +DeploylessPredeployQueryerTest:testPredeployQueryer(bytes32) (runs: 256, μ: 230891, ~: 218800) DeploylessPredeployQueryerTest:test__codesize() (gas: 6702) -DynamicBufferLibTest:testClear(uint256) (runs: 276, μ: 34512, ~: 34555) -DynamicBufferLibTest:testDynamicBuffer(bytes[],uint256) (runs: 276, μ: 939578, ~: 793986) -DynamicBufferLibTest:testDynamicBuffer(uint256) (runs: 276, μ: 826673, ~: 678231) +DynamicBufferLibTest:testClear(uint256) (runs: 256, μ: 34483, ~: 34610) +DynamicBufferLibTest:testDynamicBuffer(bytes[],uint256) (runs: 256, μ: 922136, ~: 784706) +DynamicBufferLibTest:testDynamicBuffer(uint256) (runs: 256, μ: 815948, ~: 677164) DynamicBufferLibTest:testDynamicBufferChaining() (gas: 12661) -DynamicBufferLibTest:testDynamicBufferPushSingles(uint256,uint256,uint256) (runs: 276, μ: 378511, ~: 43004) +DynamicBufferLibTest:testDynamicBufferPushSingles(uint256,uint256,uint256) (runs: 256, μ: 353348, ~: 40083) DynamicBufferLibTest:testDynamicBufferPushSinglesReinterpretCast() (gas: 21959) DynamicBufferLibTest:testDynamicBufferReserveFromEmpty() (gas: 2754) DynamicBufferLibTest:testDynamicBufferReserveFromEmpty2() (gas: 2463) -DynamicBufferLibTest:testDynamicBufferReserveFromEmpty3(bytes,uint256) (runs: 276, μ: 2983, ~: 2150) +DynamicBufferLibTest:testDynamicBufferReserveFromEmpty3(bytes,uint256) (runs: 256, μ: 4314, ~: 2118) DynamicBufferLibTest:testJoinWithConcat() (gas: 31429) DynamicBufferLibTest:testJoinWithDynamicBuffer() (gas: 10830) DynamicBufferLibTest:test__codesize() (gas: 12754) @@ -82,7 +82,7 @@ ECDSATest:testBytesToEthSignedMessageHashExceedsMaxLengthReverts() (gas: 614823) ECDSATest:testBytesToEthSignedMessageHashLong() (gas: 681) ECDSATest:testBytesToEthSignedMessageHashShort() (gas: 620) ECDSATest:testEmptyCalldataHelpers() (gas: 3224) -ECDSATest:testRecoverAndTryRecover(bytes32) (runs: 276, μ: 2783018, ~: 2530940) +ECDSATest:testRecoverAndTryRecover(bytes32) (runs: 256, μ: 2840902, ~: 2531488) ECDSATest:testRecoverWithInvalidLongSignatureReverts() (gas: 7377) ECDSATest:testRecoverWithInvalidShortSignatureReturnsZero() (gas: 7190) ECDSATest:testRecoverWithInvalidSignatureReverts() (gas: 7977) @@ -132,59 +132,59 @@ EIP712Test:testHashTypedDataWithChaindIdChange() (gas: 45775) EIP712Test:test__codesize() (gas: 11747) ERC1155HooksTest:testERC1155Hooks() (gas: 4611135) ERC1155HooksTest:test__codesize() (gas: 12598) -ERC1155Test:testApproveAll(address,bool) (runs: 276, μ: 48928, ~: 48920) -ERC1155Test:testAuthorizedEquivalence(address,address,bool) (runs: 276, μ: 715, ~: 715) -ERC1155Test:testBalanceOfBatchWithArrayMismatchReverts(uint256) (runs: 276, μ: 31927, ~: 34856) -ERC1155Test:testBatchBalanceOf(uint256) (runs: 276, μ: 122087, ~: 148369) -ERC1155Test:testBatchBurn(uint256) (runs: 276, μ: 189789, ~: 209684) -ERC1155Test:testBatchBurnInsufficientBalanceReverts(uint256) (runs: 276, μ: 172581, ~: 174033) -ERC1155Test:testBatchBurnWithArrayLengthMismatchReverts(uint256) (runs: 276, μ: 44671, ~: 43817) -ERC1155Test:testBatchMintToEOA(uint256) (runs: 276, μ: 127365, ~: 150332) -ERC1155Test:testBatchMintToERC1155Recipient(uint256) (runs: 276, μ: 775898, ~: 768397) -ERC1155Test:testBatchMintToNonERC1155RecipientReverts(uint256) (runs: 276, μ: 165992, ~: 185277) -ERC1155Test:testBatchMintToRevertingERC1155RecipientReverts(uint256) (runs: 276, μ: 335923, ~: 316467) -ERC1155Test:testBatchMintToWrongReturnDataERC1155RecipientReverts(uint256) (runs: 276, μ: 292489, ~: 271180) -ERC1155Test:testBatchMintToZeroReverts(uint256) (runs: 276, μ: 77832, ~: 90303) -ERC1155Test:testBatchMintWithArrayMismatchReverts(uint256) (runs: 276, μ: 33081, ~: 35625) -ERC1155Test:testBurn(uint256) (runs: 276, μ: 91723, ~: 84478) -ERC1155Test:testBurnInsufficientBalanceReverts(uint256) (runs: 276, μ: 97125, ~: 96536) -ERC1155Test:testDirectSetApprovalForAll(address,address,bool) (runs: 276, μ: 26001, ~: 35591) -ERC1155Test:testMintToEOA(uint256) (runs: 276, μ: 72681, ~: 71936) -ERC1155Test:testMintToERC1155Recipient(uint256) (runs: 276, μ: 665135, ~: 650736) -ERC1155Test:testMintToNonERC155RecipientReverts(uint256) (runs: 276, μ: 103360, ~: 103393) -ERC1155Test:testMintToRevertingERC155RecipientReverts(uint256) (runs: 276, μ: 281451, ~: 281576) -ERC1155Test:testMintToWrongReturnDataERC155RecipientReverts(uint256) (runs: 276, μ: 235996, ~: 236040) -ERC1155Test:testMintToZeroReverts(uint256) (runs: 276, μ: 33225, ~: 33218) +ERC1155Test:testApproveAll(address,bool) (runs: 256, μ: 50312, ~: 58598) +ERC1155Test:testAuthorizedEquivalence(address,address,bool) (runs: 256, μ: 714, ~: 715) +ERC1155Test:testBalanceOfBatchWithArrayMismatchReverts(uint256) (runs: 256, μ: 32181, ~: 34897) +ERC1155Test:testBatchBalanceOf(uint256) (runs: 256, μ: 107069, ~: 93577) +ERC1155Test:testBatchBurn(uint256) (runs: 256, μ: 177061, ~: 162231) +ERC1155Test:testBatchBurnInsufficientBalanceReverts(uint256) (runs: 256, μ: 167840, ~: 174036) +ERC1155Test:testBatchBurnWithArrayLengthMismatchReverts(uint256) (runs: 256, μ: 43350, ~: 42889) +ERC1155Test:testBatchMintToEOA(uint256) (runs: 256, μ: 123958, ~: 148571) +ERC1155Test:testBatchMintToERC1155Recipient(uint256) (runs: 256, μ: 782102, ~: 768248) +ERC1155Test:testBatchMintToNonERC1155RecipientReverts(uint256) (runs: 256, μ: 170195, ~: 185701) +ERC1155Test:testBatchMintToRevertingERC1155RecipientReverts(uint256) (runs: 256, μ: 328932, ~: 316289) +ERC1155Test:testBatchMintToWrongReturnDataERC1155RecipientReverts(uint256) (runs: 256, μ: 296100, ~: 318749) +ERC1155Test:testBatchMintToZeroReverts(uint256) (runs: 256, μ: 74397, ~: 65103) +ERC1155Test:testBatchMintWithArrayMismatchReverts(uint256) (runs: 256, μ: 33714, ~: 35611) +ERC1155Test:testBurn(uint256) (runs: 256, μ: 90101, ~: 82383) +ERC1155Test:testBurnInsufficientBalanceReverts(uint256) (runs: 256, μ: 97553, ~: 97928) +ERC1155Test:testDirectSetApprovalForAll(address,address,bool) (runs: 256, μ: 24630, ~: 15691) +ERC1155Test:testMintToEOA(uint256) (runs: 256, μ: 72348, ~: 71814) +ERC1155Test:testMintToERC1155Recipient(uint256) (runs: 256, μ: 667622, ~: 651546) +ERC1155Test:testMintToNonERC155RecipientReverts(uint256) (runs: 256, μ: 103353, ~: 103323) +ERC1155Test:testMintToRevertingERC155RecipientReverts(uint256) (runs: 256, μ: 281606, ~: 281659) +ERC1155Test:testMintToWrongReturnDataERC155RecipientReverts(uint256) (runs: 256, μ: 235975, ~: 236031) +ERC1155Test:testMintToZeroReverts(uint256) (runs: 256, μ: 33211, ~: 33178) ERC1155Test:testSafeBatchTransfer() (gas: 8283374) -ERC1155Test:testSafeBatchTransferFromToEOA(uint256) (runs: 276, μ: 225940, ~: 190566) -ERC1155Test:testSafeBatchTransferFromToERC1155Recipient(uint256) (runs: 276, μ: 897822, ~: 876348) -ERC1155Test:testSafeBatchTransferFromToNonERC1155RecipientReverts(uint256) (runs: 276, μ: 233380, ~: 266356) -ERC1155Test:testSafeBatchTransferFromToRevertingERC1155RecipientReverts(uint256) (runs: 276, μ: 410036, ~: 427922) -ERC1155Test:testSafeBatchTransferFromToWrongReturnDataERC1155RecipientReverts(uint256) (runs: 276, μ: 356462, ~: 330560) -ERC1155Test:testSafeBatchTransferFromToZeroReverts(uint256) (runs: 276, μ: 149669, ~: 125913) -ERC1155Test:testSafeBatchTransferFromWithArrayLengthMismatchReverts(uint256) (runs: 276, μ: 51415, ~: 66920) -ERC1155Test:testSafeBatchTransferInsufficientBalanceReverts(uint256) (runs: 276, μ: 173939, ~: 174610) -ERC1155Test:testSafeTransferFromInsufficientBalanceReverts(uint256) (runs: 276, μ: 98551, ~: 98251) -ERC1155Test:testSafeTransferFromSelf(uint256) (runs: 276, μ: 106447, ~: 106242) -ERC1155Test:testSafeTransferFromSelfInsufficientBalanceReverts(uint256) (runs: 276, μ: 71550, ~: 72083) -ERC1155Test:testSafeTransferFromToEOA(uint256) (runs: 276, μ: 118807, ~: 112026) -ERC1155Test:testSafeTransferFromToERC1155Recipient(uint256) (runs: 276, μ: 748142, ~: 732426) -ERC1155Test:testSafeTransferFromToNonERC155RecipientReverts(uint256) (runs: 276, μ: 141414, ~: 141738) -ERC1155Test:testSafeTransferFromToRevertingERC1155RecipientReverts(uint256) (runs: 276, μ: 318950, ~: 319228) -ERC1155Test:testSafeTransferFromToWrongReturnDataERC1155RecipientReverts(uint256) (runs: 276, μ: 273803, ~: 273492) -ERC1155Test:testSafeTransferFromToZeroReverts(uint256) (runs: 276, μ: 71392, ~: 71962) +ERC1155Test:testSafeBatchTransferFromToEOA(uint256) (runs: 256, μ: 210186, ~: 189822) +ERC1155Test:testSafeBatchTransferFromToERC1155Recipient(uint256) (runs: 256, μ: 870077, ~: 875568) +ERC1155Test:testSafeBatchTransferFromToNonERC1155RecipientReverts(uint256) (runs: 256, μ: 252809, ~: 268645) +ERC1155Test:testSafeBatchTransferFromToRevertingERC1155RecipientReverts(uint256) (runs: 256, μ: 432066, ~: 446863) +ERC1155Test:testSafeBatchTransferFromToWrongReturnDataERC1155RecipientReverts(uint256) (runs: 256, μ: 338581, ~: 330265) +ERC1155Test:testSafeBatchTransferFromToZeroReverts(uint256) (runs: 256, μ: 142835, ~: 125190) +ERC1155Test:testSafeBatchTransferFromWithArrayLengthMismatchReverts(uint256) (runs: 256, μ: 51101, ~: 66869) +ERC1155Test:testSafeBatchTransferInsufficientBalanceReverts(uint256) (runs: 256, μ: 174867, ~: 174147) +ERC1155Test:testSafeTransferFromInsufficientBalanceReverts(uint256) (runs: 256, μ: 99405, ~: 99997) +ERC1155Test:testSafeTransferFromSelf(uint256) (runs: 256, μ: 106510, ~: 106139) +ERC1155Test:testSafeTransferFromSelfInsufficientBalanceReverts(uint256) (runs: 256, μ: 71666, ~: 72437) +ERC1155Test:testSafeTransferFromToEOA(uint256) (runs: 256, μ: 118274, ~: 111656) +ERC1155Test:testSafeTransferFromToERC1155Recipient(uint256) (runs: 256, μ: 753450, ~: 770486) +ERC1155Test:testSafeTransferFromToNonERC155RecipientReverts(uint256) (runs: 256, μ: 140540, ~: 140008) +ERC1155Test:testSafeTransferFromToRevertingERC1155RecipientReverts(uint256) (runs: 256, μ: 317256, ~: 318626) +ERC1155Test:testSafeTransferFromToWrongReturnDataERC1155RecipientReverts(uint256) (runs: 256, μ: 273186, ~: 272721) +ERC1155Test:testSafeTransferFromToZeroReverts(uint256) (runs: 256, μ: 71275, ~: 71092) ERC1155Test:test__codesize() (gas: 42261) ERC1271Test:testBasefeeBytecodeContract() (gas: 45430) ERC1271Test:testIsValidSignature() (gas: 2464159) -ERC1271Test:testIsValidSignature(uint256) (runs: 276, μ: 255551, ~: 214430) +ERC1271Test:testIsValidSignature(uint256) (runs: 256, μ: 260883, ~: 213996) ERC1271Test:test__codesize() (gas: 30379) ERC1967FactoryTest:testChangeAdmin() (gas: 266356) ERC1967FactoryTest:testChangeAdminUnauthorized() (gas: 257316) ERC1967FactoryTest:testDeploy() (gas: 257375) -ERC1967FactoryTest:testDeployAndCall(uint256) (runs: 276, μ: 339314, ~: 340931) +ERC1967FactoryTest:testDeployAndCall(uint256) (runs: 256, μ: 339494, ~: 340797) ERC1967FactoryTest:testDeployAndCallWithRevert() (gas: 211881) -ERC1967FactoryTest:testDeployBrutalized(uint256) (runs: 276, μ: 95821, ~: 44128) -ERC1967FactoryTest:testDeployDeterministicAndCall(uint256) (runs: 276, μ: 318052, ~: 350141) +ERC1967FactoryTest:testDeployBrutalized(uint256) (runs: 256, μ: 116033, ~: 44137) +ERC1967FactoryTest:testDeployDeterministicAndCall(uint256) (runs: 256, μ: 317997, ~: 350139) ERC1967FactoryTest:testFactoryDeployment() (gas: 494435) ERC1967FactoryTest:testProxyFails() (gas: 259019) ERC1967FactoryTest:testProxySucceeds() (gas: 255707) @@ -194,48 +194,81 @@ ERC1967FactoryTest:testUpgradeAndCallWithRevert() (gas: 265645) ERC1967FactoryTest:testUpgradeUnauthorized() (gas: 270340) ERC1967FactoryTest:testUpgradeWithCorruptedProxy() (gas: 263130) ERC1967FactoryTest:test__codesize() (gas: 32000) -ERC20Invariants:invariantBalanceSum() (runs: 256, calls: 3840, reverts: 2311) +ERC20Invariants:invariantBalanceSum() (runs: 256, calls: 3840, reverts: 2323) ERC20Invariants:test__codesize() (gas: 7534) +ERC20PInvariants:invariantBalanceSum() (runs: 256, calls: 3840, reverts: 2336) +ERC20PInvariants:test__codesize() (gas: 7859) +ERC20PTest:testApprove() (gas: 35663) +ERC20PTest:testApprove(address,uint256) (runs: 256, μ: 29915, ~: 31159) +ERC20PTest:testBalanceExtraData(uint128) (runs: 256, μ: 28680, ~: 29302) +ERC20PTest:testBurn() (gas: 62115) +ERC20PTest:testBurn(address,uint256,uint256) (runs: 256, μ: 60250, ~: 63180) +ERC20PTest:testBurnInsufficientBalanceReverts(address,uint128,uint256) (runs: 256, μ: 54528, ~: 56871) +ERC20PTest:testDirectSpendAllowance(uint256) (runs: 256, μ: 62106, ~: 62201) +ERC20PTest:testDirectTransfer(uint256) (runs: 256, μ: 98692, ~: 112430) +ERC20PTest:testInfiniteApproveTransferFrom() (gas: 90210) +ERC20PTest:testMetadata() (gas: 16657) +ERC20PTest:testMint() (gas: 58761) +ERC20PTest:testMint(address,uint128) (runs: 256, μ: 57122, ~: 59144) +ERC20PTest:testMintOverMaxUintReverts() (gas: 55980) +ERC20PTest:testPermit() (gas: 89873) +ERC20PTest:testPermit(uint256) (runs: 256, μ: 89381, ~: 89783) +ERC20PTest:testPermitBadDeadlineReverts(uint256) (runs: 256, μ: 41458, ~: 41471) +ERC20PTest:testPermitBadNonceReverts(uint256) (runs: 256, μ: 41952, ~: 41905) +ERC20PTest:testPermitPastDeadlineReverts(uint256) (runs: 256, μ: 36027, ~: 36018) +ERC20PTest:testPermitReplayReverts(uint256) (runs: 256, μ: 91052, ~: 92516) +ERC20PTest:testSetExtraData(uint128,uint128) (runs: 256, μ: 56338, ~: 57038) +ERC20PTest:testTransfer() (gas: 65551) +ERC20PTest:testTransfer(address,uint128) (runs: 256, μ: 63721, ~: 65898) +ERC20PTest:testTransferFrom() (gas: 85843) +ERC20PTest:testTransferFrom(address,address,address,uint128,uint128) (runs: 256, μ: 87808, ~: 95396) +ERC20PTest:testTransferFromInsufficientAllowanceReverts() (gas: 81723) +ERC20PTest:testTransferFromInsufficientAllowanceReverts(address,uint256,uint256) (runs: 256, μ: 81605, ~: 82285) +ERC20PTest:testTransferFromInsufficientBalanceReverts() (gas: 62124) +ERC20PTest:testTransferFromInsufficientBalanceReverts(address,uint128,uint128) (runs: 256, μ: 60654, ~: 62895) +ERC20PTest:testTransferInsufficientBalanceReverts() (gas: 56111) +ERC20PTest:testTransferInsufficientBalanceReverts(address,uint128,uint128) (runs: 256, μ: 54970, ~: 56985) +ERC20PTest:test__codesize() (gas: 24977) ERC20Test:testApprove() (gas: 35730) -ERC20Test:testApprove(address,uint256) (runs: 276, μ: 31108, ~: 31181) +ERC20Test:testApprove(address,uint256) (runs: 256, μ: 29937, ~: 31181) ERC20Test:testBurn() (gas: 62048) -ERC20Test:testBurn(address,uint256,uint256) (runs: 276, μ: 61564, ~: 62663) -ERC20Test:testBurnInsufficientBalanceReverts(address,uint256,uint256) (runs: 276, μ: 56017, ~: 56517) -ERC20Test:testDirectSpendAllowance(uint256) (runs: 276, μ: 61572, ~: 61398) -ERC20Test:testDirectTransfer(uint256) (runs: 276, μ: 99809, ~: 112229) +ERC20Test:testBurn(address,uint256,uint256) (runs: 256, μ: 60359, ~: 62663) +ERC20Test:testBurnInsufficientBalanceReverts(address,uint256,uint256) (runs: 256, μ: 55349, ~: 56581) +ERC20Test:testDirectSpendAllowance(uint256) (runs: 256, μ: 61844, ~: 62110) +ERC20Test:testDirectTransfer(uint256) (runs: 256, μ: 101131, ~: 112231) ERC20Test:testInfiniteApproveTransferFrom() (gas: 90284) ERC20Test:testMetadata() (gas: 16568) ERC20Test:testMint() (gas: 58700) -ERC20Test:testMint(address,uint256) (runs: 276, μ: 58798, ~: 58943) +ERC20Test:testMint(address,uint256) (runs: 256, μ: 56455, ~: 58943) ERC20Test:testMintOverMaxUintReverts() (gas: 55969) ERC20Test:testPermit() (gas: 89766) -ERC20Test:testPermit(uint256) (runs: 276, μ: 89734, ~: 89710) -ERC20Test:testPermitBadDeadlineReverts(uint256) (runs: 276, μ: 41472, ~: 41464) -ERC20Test:testPermitBadNonceReverts(uint256) (runs: 276, μ: 41893, ~: 41813) -ERC20Test:testPermitPastDeadlineReverts(uint256) (runs: 276, μ: 36053, ~: 36017) -ERC20Test:testPermitReplayReverts(uint256) (runs: 276, μ: 92445, ~: 92416) +ERC20Test:testPermit(uint256) (runs: 256, μ: 89602, ~: 89698) +ERC20Test:testPermitBadDeadlineReverts(uint256) (runs: 256, μ: 41438, ~: 41460) +ERC20Test:testPermitBadNonceReverts(uint256) (runs: 256, μ: 41850, ~: 41801) +ERC20Test:testPermitPastDeadlineReverts(uint256) (runs: 256, μ: 36005, ~: 36004) +ERC20Test:testPermitReplayReverts(uint256) (runs: 256, μ: 92432, ~: 92413) ERC20Test:testTransfer() (gas: 65514) -ERC20Test:testTransfer(address,uint256) (runs: 276, μ: 65585, ~: 65730) +ERC20Test:testTransfer(address,uint256) (runs: 256, μ: 63242, ~: 65730) ERC20Test:testTransferFrom() (gas: 85866) -ERC20Test:testTransferFrom(address,address,address,uint256,uint256) (runs: 276, μ: 93496, ~: 95049) +ERC20Test:testTransferFrom(address,address,address,uint256,uint256) (runs: 256, μ: 89744, ~: 95049) ERC20Test:testTransferFromInsufficientAllowanceReverts() (gas: 81756) -ERC20Test:testTransferFromInsufficientAllowanceReverts(address,uint256,uint256) (runs: 276, μ: 81998, ~: 82210) +ERC20Test:testTransferFromInsufficientAllowanceReverts(address,uint256,uint256) (runs: 256, μ: 81673, ~: 82274) ERC20Test:testTransferFromInsufficientBalanceReverts() (gas: 62104) -ERC20Test:testTransferFromInsufficientBalanceReverts(address,uint256,uint256) (runs: 276, μ: 62891, ~: 62645) +ERC20Test:testTransferFromInsufficientBalanceReverts(address,uint256,uint256) (runs: 256, μ: 65101, ~: 62811) ERC20Test:testTransferInsufficientBalanceReverts() (gas: 56113) -ERC20Test:testTransferInsufficientBalanceReverts(address,uint256,uint256) (runs: 276, μ: 56076, ~: 56576) +ERC20Test:testTransferInsufficientBalanceReverts(address,uint256,uint256) (runs: 256, μ: 55411, ~: 56640) ERC20Test:test__codesize() (gas: 22623) -ERC2981Test:testRoyaltyOverflowCheckDifferential(uint256,uint256) (runs: 276, μ: 479, ~: 480) -ERC2981Test:testSetAndGetRoyaltyInfo(uint256) (runs: 276, μ: 109955, ~: 105360) +ERC2981Test:testRoyaltyOverflowCheckDifferential(uint256,uint256) (runs: 256, μ: 478, ~: 480) +ERC2981Test:testSetAndGetRoyaltyInfo(uint256) (runs: 256, μ: 108054, ~: 105213) ERC2981Test:test__codesize() (gas: 7113) ERC4337FactoryTest:testCreateAccountRepeatedDeployment() (gas: 149757) -ERC4337FactoryTest:testCreateAccountRepeatedDeployment(uint256) (runs: 276, μ: 171705, ~: 171732) -ERC4337FactoryTest:testDeployDeterministic(uint256) (runs: 276, μ: 127559, ~: 139901) +ERC4337FactoryTest:testCreateAccountRepeatedDeployment(uint256) (runs: 256, μ: 171739, ~: 171726) +ERC4337FactoryTest:testDeployDeterministic(uint256) (runs: 256, μ: 134432, ~: 139893) ERC4337FactoryTest:test__codesize() (gas: 12784) ERC4337Test:testCdFallback() (gas: 433077) ERC4337Test:testCdFallback2() (gas: 1129669) ERC4337Test:testDelegateExecute() (gas: 365646) -ERC4337Test:testDelegateExecute(uint256) (runs: 276, μ: 353072, ~: 344489) +ERC4337Test:testDelegateExecute(uint256) (runs: 256, μ: 354803, ~: 344489) ERC4337Test:testDelegateExecuteRevertsIfOwnerSlotValueChanged() (gas: 319304) ERC4337Test:testDepositFunctions() (gas: 492166) ERC4337Test:testDirectStorage() (gas: 70435) @@ -243,7 +276,7 @@ ERC4337Test:testDisableInitializerForImplementation() (gas: 1320597) ERC4337Test:testETHReceived() (gas: 16584) ERC4337Test:testExecute() (gas: 382808) ERC4337Test:testExecuteBatch() (gas: 692731) -ERC4337Test:testExecuteBatch(uint256) (runs: 276, μ: 541588, ~: 669054) +ERC4337Test:testExecuteBatch(uint256) (runs: 256, μ: 528781, ~: 665148) ERC4337Test:testInitializer() (gas: 285472) ERC4337Test:testIsValidSignature() (gas: 119651) ERC4337Test:testIsValidSignaturePersonalSign() (gas: 102966) @@ -257,15 +290,15 @@ ERC4337Test:testValidateUserOp() (gas: 480104) ERC4337Test:test__codesize() (gas: 57110) ERC4626Test:testDepositWithNoApprovalReverts() (gas: 16565) ERC4626Test:testDepositWithNotEnoughApprovalReverts() (gas: 90175) -ERC4626Test:testDifferentialFullMulDiv(uint256,uint256,uint256) (runs: 276, μ: 3341, ~: 3319) +ERC4626Test:testDifferentialFullMulDiv(uint256,uint256,uint256) (runs: 256, μ: 3311, ~: 3107) ERC4626Test:testMetadata() (gas: 14406) ERC4626Test:testMintWithNoApprovalReverts() (gas: 16539) ERC4626Test:testMintZero() (gas: 53547) ERC4626Test:testMultipleMintDepositRedeemWithdraw() (gas: 410453) ERC4626Test:testRedeemWithNoShareAmountReverts() (gas: 10918) ERC4626Test:testRedeemWithNotEnoughShareAmountReverts() (gas: 143206) -ERC4626Test:testSingleDepositWithdraw(uint128) (runs: 276, μ: 201951, ~: 201957) -ERC4626Test:testSingleMintRedeem(uint128) (runs: 276, μ: 200917, ~: 200923) +ERC4626Test:testSingleDepositWithdraw(uint128) (runs: 256, μ: 201952, ~: 201962) +ERC4626Test:testSingleMintRedeem(uint128) (runs: 256, μ: 200917, ~: 200928) ERC4626Test:testTryGetAssetDecimals() (gas: 31553187) ERC4626Test:testUseVirtualShares() (gas: 2433734) ERC4626Test:testVaultInteractionsForSomeoneElse() (gas: 296631) @@ -276,173 +309,173 @@ ERC4626Test:testWithdrawZero() (gas: 51874) ERC4626Test:test__codesize() (gas: 37177) ERC6551Test:testBaseFeeMini() (gas: 39514) ERC6551Test:testCdFallback() (gas: 894982) -ERC6551Test:testDeployERC6551(uint256) (runs: 276, μ: 170622, ~: 168890) +ERC6551Test:testDeployERC6551(uint256) (runs: 256, μ: 170905, ~: 168881) ERC6551Test:testDeployERC6551Proxy() (gas: 80395) ERC6551Test:testExecute() (gas: 506735) ERC6551Test:testExecuteBatch() (gas: 816151) -ERC6551Test:testExecuteBatch(uint256) (runs: 276, μ: 620667, ~: 482714) +ERC6551Test:testExecuteBatch(uint256) (runs: 256, μ: 620685, ~: 665658) ERC6551Test:testInitializeERC6551ProxyImplementation() (gas: 189914) -ERC6551Test:testIsValidSigner(address) (runs: 276, μ: 167491, ~: 167474) +ERC6551Test:testIsValidSigner(address) (runs: 256, μ: 167446, ~: 167460) ERC6551Test:testOnERC1155BatchReceived() (gas: 1697916) ERC6551Test:testOnERC1155Received() (gas: 1695271) ERC6551Test:testOnERC721Received() (gas: 1738609) ERC6551Test:testOnERC721ReceivedCycles() (gas: 1727948) -ERC6551Test:testOnERC721ReceivedCyclesWithDifferentChainIds(uint256) (runs: 276, μ: 450428, ~: 455366) -ERC6551Test:testOwnerWorksWithChainIdChange(uint256,uint256) (runs: 276, μ: 1363686, ~: 1363678) +ERC6551Test:testOnERC721ReceivedCyclesWithDifferentChainIds(uint256) (runs: 256, μ: 449874, ~: 455434) +ERC6551Test:testOwnerWorksWithChainIdChange(uint256,uint256) (runs: 256, μ: 1363715, ~: 1363690) ERC6551Test:testSupportsInterface() (gas: 169450) -ERC6551Test:testUpdateState(uint256) (runs: 276, μ: 235178, ~: 235121) +ERC6551Test:testUpdateState(uint256) (runs: 256, μ: 235228, ~: 235125) ERC6551Test:testUpgrade() (gas: 248420) ERC6551Test:test__codesize() (gas: 51483) ERC6909Test:testApprove() (gas: 36868) -ERC6909Test:testApprove(address,uint256,uint256) (runs: 276, μ: 37365, ~: 37510) +ERC6909Test:testApprove(address,uint256,uint256) (runs: 256, μ: 36577, ~: 37510) ERC6909Test:testBurn() (gas: 40870) -ERC6909Test:testBurn(address,uint256,uint256,uint256) (runs: 276, μ: 40892, ~: 41509) -ERC6909Test:testBurnInsufficientBalanceReverts(address,uint256,uint256,uint256) (runs: 276, μ: 35093, ~: 35166) +ERC6909Test:testBurn(address,uint256,uint256,uint256) (runs: 256, μ: 40100, ~: 41381) +ERC6909Test:testBurnInsufficientBalanceReverts(address,uint256,uint256,uint256) (runs: 256, μ: 34307, ~: 35198) ERC6909Test:testDecimals() (gas: 5676) ERC6909Test:testDirectApprove() (gas: 36733) -ERC6909Test:testDirectFunctions(uint256) (runs: 276, μ: 201814, ~: 201872) +ERC6909Test:testDirectFunctions(uint256) (runs: 256, μ: 199427, ~: 201872) ERC6909Test:testDirectSetOperator() (gas: 35937) ERC6909Test:testDirectTransfer() (gas: 66221) ERC6909Test:testInfiniteApproveTransferFrom() (gas: 78582) -ERC6909Test:testMetadata(uint256) (runs: 276, μ: 8299, ~: 8299) +ERC6909Test:testMetadata(uint256) (runs: 256, μ: 8299, ~: 8299) ERC6909Test:testMint() (gas: 37035) -ERC6909Test:testMint(address,uint256,uint256) (runs: 276, μ: 37126, ~: 37271) +ERC6909Test:testMint(address,uint256,uint256) (runs: 256, μ: 36338, ~: 37271) ERC6909Test:testMintOverMaxUintReverts() (gas: 34604) -ERC6909Test:testMintOverMaxUintReverts(address,uint256,uint256,uint256) (runs: 276, μ: 35529, ~: 35542) +ERC6909Test:testMintOverMaxUintReverts(address,uint256,uint256,uint256) (runs: 256, μ: 35490, ~: 35542) ERC6909Test:testOperatorTransferFrom() (gas: 74112) ERC6909Test:testSetOperator() (gas: 37139) -ERC6909Test:testSetOperator(address,address,bool) (runs: 276, μ: 27077, ~: 36667) +ERC6909Test:testSetOperator(address,address,bool) (runs: 256, μ: 25706, ~: 16767) ERC6909Test:testTokenURI() (gas: 32692) ERC6909Test:testTransfer() (gas: 48262) -ERC6909Test:testTransfer(address,uint256,uint256) (runs: 276, μ: 47232, ~: 47397) +ERC6909Test:testTransfer(address,uint256,uint256) (runs: 256, μ: 46338, ~: 47379) ERC6909Test:testTransferFrom() (gas: 74670) -ERC6909Test:testTransferFrom(address,address,address,uint256,uint256,uint256) (runs: 276, μ: 80226, ~: 81164) -ERC6909Test:testTransferFromCallerIsNotOperator(address,uint256,uint256) (runs: 276, μ: 39606, ~: 39606) -ERC6909Test:testTransferFromInsufficientAllowanceReverts(address,uint256,uint256,uint256) (runs: 276, μ: 67479, ~: 67767) +ERC6909Test:testTransferFrom(address,address,address,uint256,uint256,uint256) (runs: 256, μ: 77437, ~: 81164) +ERC6909Test:testTransferFromCallerIsNotOperator(address,uint256,uint256) (runs: 256, μ: 39609, ~: 39606) +ERC6909Test:testTransferFromInsufficientAllowanceReverts(address,uint256,uint256,uint256) (runs: 256, μ: 66438, ~: 67767) ERC6909Test:testTransferFromInsufficientBalanceReverts() (gas: 49858) -ERC6909Test:testTransferFromInsufficientBalanceReverts(address,uint256,uint256,uint256) (runs: 276, μ: 50762, ~: 50116) +ERC6909Test:testTransferFromInsufficientBalanceReverts(address,uint256,uint256,uint256) (runs: 256, μ: 52307, ~: 50088) ERC6909Test:testTransferFromInsufficientPermission() (gas: 67242) ERC6909Test:testTransferFromOverMaxUintReverts() (gas: 90490) -ERC6909Test:testTransferFromOverMaxUintReverts(address,uint256,uint256,uint256) (runs: 276, μ: 113498, ~: 113609) +ERC6909Test:testTransferFromOverMaxUintReverts(address,uint256,uint256,uint256) (runs: 256, μ: 113052, ~: 113569) ERC6909Test:testTransferInsufficientBalanceReverts() (gas: 34728) -ERC6909Test:testTransferInsufficientBalanceReverts(address,uint256,uint256,uint256) (runs: 276, μ: 35126, ~: 35270) +ERC6909Test:testTransferInsufficientBalanceReverts(address,uint256,uint256,uint256) (runs: 256, μ: 34875, ~: 35270) ERC6909Test:testTransferOverMaxUintReverts() (gas: 63748) -ERC6909Test:testTransferOverMaxUintReverts(address,uint256,uint256,uint256) (runs: 276, μ: 64321, ~: 64312) +ERC6909Test:testTransferOverMaxUintReverts(address,uint256,uint256,uint256) (runs: 256, μ: 64272, ~: 64282) ERC6909Test:test__codesize() (gas: 25821) ERC721HooksTest:testERC721Hooks() (gas: 3195746) ERC721HooksTest:test__codesize() (gas: 10890) -ERC721Test:testApprove(uint256) (runs: 276, μ: 108303, ~: 108326) -ERC721Test:testApproveAll(uint256) (runs: 276, μ: 49421, ~: 40526) -ERC721Test:testApproveBurn(uint256) (runs: 276, μ: 86930, ~: 86925) -ERC721Test:testApproveNonExistentReverts(uint256,address) (runs: 276, μ: 33689, ~: 33624) -ERC721Test:testApproveUnauthorizedReverts(uint256) (runs: 276, μ: 83623, ~: 84389) -ERC721Test:testAuthorizedEquivalence(address,bool,bool) (runs: 276, μ: 684, ~: 691) -ERC721Test:testAux(uint256) (runs: 276, μ: 192554, ~: 191357) -ERC721Test:testBurn(uint256) (runs: 276, μ: 82333, ~: 81819) -ERC721Test:testBurnNonExistentReverts(uint256) (runs: 276, μ: 10805, ~: 10805) +ERC721Test:testApprove(uint256) (runs: 256, μ: 108348, ~: 108407) +ERC721Test:testApproveAll(uint256) (runs: 256, μ: 47894, ~: 40509) +ERC721Test:testApproveBurn(uint256) (runs: 256, μ: 86940, ~: 87027) +ERC721Test:testApproveNonExistentReverts(uint256,address) (runs: 256, μ: 33690, ~: 33624) +ERC721Test:testApproveUnauthorizedReverts(uint256) (runs: 256, μ: 83416, ~: 82541) +ERC721Test:testAuthorizedEquivalence(address,bool,bool) (runs: 256, μ: 683, ~: 678) +ERC721Test:testAux(uint256) (runs: 256, μ: 192884, ~: 194125) +ERC721Test:testBurn(uint256) (runs: 256, μ: 83374, ~: 94168) +ERC721Test:testBurnNonExistentReverts(uint256) (runs: 256, μ: 10805, ~: 10805) ERC721Test:testCannotExceedMaxBalance() (gas: 170159) -ERC721Test:testDoubleBurnReverts(uint256) (runs: 276, μ: 63615, ~: 63611) -ERC721Test:testDoubleMintReverts(uint256) (runs: 276, μ: 79277, ~: 79311) -ERC721Test:testEverything(uint256) (runs: 276, μ: 291822, ~: 278343) -ERC721Test:testExtraData(uint256) (runs: 276, μ: 99674, ~: 99718) -ERC721Test:testExtraData2(uint256,uint256) (runs: 276, μ: 53970, ~: 53889) -ERC721Test:testIsApprovedOrOwner(uint256) (runs: 276, μ: 136241, ~: 136251) -ERC721Test:testMint(uint256) (runs: 276, μ: 82912, ~: 82837) -ERC721Test:testMintAndSetExtraDataUnchecked(uint256) (runs: 276, μ: 84558, ~: 84610) -ERC721Test:testMintAndSetExtraDataUncheckedWithOverwrite(uint256,uint96) (runs: 276, μ: 83828, ~: 83886) -ERC721Test:testMintToZeroReverts(uint256) (runs: 276, μ: 39510, ~: 39510) -ERC721Test:testOwnerOfNonExistent(uint256) (runs: 276, μ: 33406, ~: 33338) -ERC721Test:testSafeMintToEOA(uint256) (runs: 276, μ: 83462, ~: 83506) -ERC721Test:testSafeMintToERC721Recipient(uint256) (runs: 276, μ: 410336, ~: 410483) -ERC721Test:testSafeMintToERC721RecipientWithData(uint256,bytes) (runs: 276, μ: 464693, ~: 454407) -ERC721Test:testSafeMintToERC721RecipientWithWrongReturnData(uint256) (runs: 276, μ: 170023, ~: 170023) -ERC721Test:testSafeMintToERC721RecipientWithWrongReturnDataWithData(uint256,bytes) (runs: 276, μ: 171239, ~: 171185) -ERC721Test:testSafeMintToNonERC721RecipientReverts(uint256) (runs: 276, μ: 100507, ~: 100507) -ERC721Test:testSafeMintToNonERC721RecipientWithDataReverts(uint256,bytes) (runs: 276, μ: 101756, ~: 101701) -ERC721Test:testSafeMintToRevertingERC721RecipientReverts(uint256) (runs: 276, μ: 203164, ~: 203164) -ERC721Test:testSafeMintToRevertingERC721RecipientWithDataReverts(uint256,bytes) (runs: 276, μ: 204401, ~: 204347) -ERC721Test:testSafeTransferFromToEOA(uint256) (runs: 276, μ: 122405, ~: 122571) -ERC721Test:testSafeTransferFromToERC721Recipient(uint256) (runs: 276, μ: 472402, ~: 472540) -ERC721Test:testSafeTransferFromToERC721RecipientWithData(uint256,bytes) (runs: 276, μ: 526760, ~: 516519) -ERC721Test:testSafeTransferFromToERC721RecipientWithWrongReturnDataReverts(uint256) (runs: 276, μ: 201228, ~: 201185) -ERC721Test:testSafeTransferFromToERC721RecipientWithWrongReturnDataWithDataReverts(uint256,bytes) (runs: 276, μ: 202548, ~: 202521) -ERC721Test:testSafeTransferFromToNonERC721RecipientReverts(uint256) (runs: 276, μ: 131732, ~: 131760) -ERC721Test:testSafeTransferFromToNonERC721RecipientWithDataReverts(uint256,bytes) (runs: 276, μ: 133027, ~: 132997) -ERC721Test:testSafeTransferFromToRevertingERC721RecipientReverts(uint256) (runs: 276, μ: 234399, ~: 234436) -ERC721Test:testSafeTransferFromToRevertingERC721RecipientWithDataReverts(uint256,bytes) (runs: 276, μ: 235649, ~: 235622) -ERC721Test:testSafetyOfCustomStorage(uint256,uint256) (runs: 276, μ: 794, ~: 713) +ERC721Test:testDoubleBurnReverts(uint256) (runs: 256, μ: 63607, ~: 63575) +ERC721Test:testDoubleMintReverts(uint256) (runs: 256, μ: 79295, ~: 79320) +ERC721Test:testEverything(uint256) (runs: 256, μ: 318482, ~: 381248) +ERC721Test:testExtraData(uint256) (runs: 256, μ: 99404, ~: 99424) +ERC721Test:testExtraData2(uint256,uint256) (runs: 256, μ: 54240, ~: 53889) +ERC721Test:testIsApprovedOrOwner(uint256) (runs: 256, μ: 136277, ~: 136291) +ERC721Test:testMint(uint256) (runs: 256, μ: 82932, ~: 82976) +ERC721Test:testMintAndSetExtraDataUnchecked(uint256) (runs: 256, μ: 84565, ~: 84601) +ERC721Test:testMintAndSetExtraDataUncheckedWithOverwrite(uint256,uint96) (runs: 256, μ: 83819, ~: 83731) +ERC721Test:testMintToZeroReverts(uint256) (runs: 256, μ: 39510, ~: 39510) +ERC721Test:testOwnerOfNonExistent(uint256) (runs: 256, μ: 33393, ~: 33338) +ERC721Test:testSafeMintToEOA(uint256) (runs: 256, μ: 83465, ~: 83502) +ERC721Test:testSafeMintToERC721Recipient(uint256) (runs: 256, μ: 409397, ~: 410499) +ERC721Test:testSafeMintToERC721RecipientWithData(uint256,bytes) (runs: 256, μ: 463315, ~: 454244) +ERC721Test:testSafeMintToERC721RecipientWithWrongReturnData(uint256) (runs: 256, μ: 170023, ~: 170023) +ERC721Test:testSafeMintToERC721RecipientWithWrongReturnDataWithData(uint256,bytes) (runs: 256, μ: 171238, ~: 171185) +ERC721Test:testSafeMintToNonERC721RecipientReverts(uint256) (runs: 256, μ: 100507, ~: 100507) +ERC721Test:testSafeMintToNonERC721RecipientWithDataReverts(uint256,bytes) (runs: 256, μ: 101754, ~: 101701) +ERC721Test:testSafeMintToRevertingERC721RecipientReverts(uint256) (runs: 256, μ: 203164, ~: 203164) +ERC721Test:testSafeMintToRevertingERC721RecipientWithDataReverts(uint256,bytes) (runs: 256, μ: 204400, ~: 204347) +ERC721Test:testSafeTransferFromToEOA(uint256) (runs: 256, μ: 122479, ~: 122607) +ERC721Test:testSafeTransferFromToERC721Recipient(uint256) (runs: 256, μ: 471419, ~: 472559) +ERC721Test:testSafeTransferFromToERC721RecipientWithData(uint256,bytes) (runs: 256, μ: 525372, ~: 516513) +ERC721Test:testSafeTransferFromToERC721RecipientWithWrongReturnDataReverts(uint256) (runs: 256, μ: 201235, ~: 201277) +ERC721Test:testSafeTransferFromToERC721RecipientWithWrongReturnDataWithDataReverts(uint256,bytes) (runs: 256, μ: 202548, ~: 202527) +ERC721Test:testSafeTransferFromToNonERC721RecipientReverts(uint256) (runs: 256, μ: 131713, ~: 131672) +ERC721Test:testSafeTransferFromToNonERC721RecipientWithDataReverts(uint256,bytes) (runs: 256, μ: 133024, ~: 133006) +ERC721Test:testSafeTransferFromToRevertingERC721RecipientReverts(uint256) (runs: 256, μ: 234403, ~: 234444) +ERC721Test:testSafeTransferFromToRevertingERC721RecipientWithDataReverts(uint256,bytes) (runs: 256, μ: 235644, ~: 235626) +ERC721Test:testSafetyOfCustomStorage(uint256,uint256) (runs: 256, μ: 1063, ~: 713) ERC721Test:testTransferFrom() (gas: 86009) -ERC721Test:testTransferFrom(uint256) (runs: 276, μ: 114056, ~: 113029) -ERC721Test:testTransferFromApproveAll(uint256) (runs: 276, μ: 119788, ~: 119775) -ERC721Test:testTransferFromNotExistentReverts(address,address,uint256) (runs: 276, μ: 34278, ~: 34284) -ERC721Test:testTransferFromNotOwner(uint256) (runs: 276, μ: 85089, ~: 85061) -ERC721Test:testTransferFromSelf(uint256) (runs: 276, μ: 93000, ~: 93001) -ERC721Test:testTransferFromToZeroReverts(uint256) (runs: 276, μ: 63074, ~: 63079) -ERC721Test:testTransferFromWrongFromReverts(address,uint256) (runs: 276, μ: 80799, ~: 80779) +ERC721Test:testTransferFrom(uint256) (runs: 256, μ: 114341, ~: 112895) +ERC721Test:testTransferFromApproveAll(uint256) (runs: 256, μ: 119800, ~: 119791) +ERC721Test:testTransferFromNotExistentReverts(address,address,uint256) (runs: 256, μ: 34262, ~: 34263) +ERC721Test:testTransferFromNotOwner(uint256) (runs: 256, μ: 85089, ~: 85070) +ERC721Test:testTransferFromSelf(uint256) (runs: 256, μ: 93055, ~: 93046) +ERC721Test:testTransferFromToZeroReverts(uint256) (runs: 256, μ: 63090, ~: 63081) +ERC721Test:testTransferFromWrongFromReverts(address,uint256) (runs: 256, μ: 80776, ~: 80757) ERC721Test:test__codesize() (gas: 43017) EnumerableSetLibTest:testEnumerableAddressSetBasic() (gas: 248436) EnumerableSetLibTest:testEnumerableAddressSetBasic2() (gas: 175344) EnumerableSetLibTest:testEnumerableAddressSetNoStorageCollision() (gas: 98950) -EnumerableSetLibTest:testEnumerableAddressSetRevertsOnSentinel(uint256) (runs: 276, μ: 46871, ~: 39481) +EnumerableSetLibTest:testEnumerableAddressSetRevertsOnSentinel(uint256) (runs: 256, μ: 51840, ~: 47589) EnumerableSetLibTest:testEnumerableBytes32SetBasic() (gas: 271282) EnumerableSetLibTest:testEnumerableBytes32SetBasic2() (gas: 178471) EnumerableSetLibTest:testEnumerableBytes32SetNoStorageCollision() (gas: 103477) -EnumerableSetLibTest:testEnumerableBytes32SetRevertsOnSentinel(uint256) (runs: 276, μ: 47466, ~: 37917) -EnumerableSetLibTest:testEnumerableSetFuzz(uint256) (runs: 276, μ: 651248, ~: 563789) +EnumerableSetLibTest:testEnumerableBytes32SetRevertsOnSentinel(uint256) (runs: 256, μ: 44877, ~: 34303) +EnumerableSetLibTest:testEnumerableSetFuzz(uint256) (runs: 256, μ: 656333, ~: 522574) EnumerableSetLibTest:test__codesize() (gas: 14493) FixedPointMathLibTest:testAbs() (gas: 702) -FixedPointMathLibTest:testAbs(int256) (runs: 276, μ: 530, ~: 501) +FixedPointMathLibTest:testAbs(int256) (runs: 256, μ: 532, ~: 501) FixedPointMathLibTest:testAbsEdgeCases() (gas: 513) FixedPointMathLibTest:testAvg() (gas: 420) FixedPointMathLibTest:testAvgEdgeCase() (gas: 470) FixedPointMathLibTest:testAvgSigned() (gas: 851) FixedPointMathLibTest:testCbrt() (gas: 10283) -FixedPointMathLibTest:testCbrt(uint256) (runs: 276, μ: 1505, ~: 1513) -FixedPointMathLibTest:testCbrtBack(uint256) (runs: 276, μ: 33989, ~: 42887) +FixedPointMathLibTest:testCbrt(uint256) (runs: 256, μ: 1424, ~: 1513) +FixedPointMathLibTest:testCbrtBack(uint256) (runs: 256, μ: 31283, ~: 39677) FixedPointMathLibTest:testCbrtWad() (gas: 11984) -FixedPointMathLibTest:testCbrtWad(uint256) (runs: 276, μ: 1978, ~: 1983) -FixedPointMathLibTest:testClamp(uint256,uint256,uint256) (runs: 276, μ: 568, ~: 568) -FixedPointMathLibTest:testClampSigned(int256,int256,int256) (runs: 276, μ: 547, ~: 547) +FixedPointMathLibTest:testCbrtWad(uint256) (runs: 256, μ: 1974, ~: 1983) +FixedPointMathLibTest:testClamp(uint256,uint256,uint256) (runs: 256, μ: 568, ~: 568) +FixedPointMathLibTest:testClampSigned(int256,int256,int256) (runs: 256, μ: 547, ~: 547) FixedPointMathLibTest:testDist() (gas: 678) -FixedPointMathLibTest:testDist(int256,int256) (runs: 276, μ: 497, ~: 502) +FixedPointMathLibTest:testDist(int256,int256) (runs: 256, μ: 497, ~: 502) FixedPointMathLibTest:testDistEdgeCases() (gas: 570) FixedPointMathLibTest:testDivWad() (gas: 702) -FixedPointMathLibTest:testDivWad(uint256,uint256) (runs: 276, μ: 813, ~: 891) +FixedPointMathLibTest:testDivWad(uint256,uint256) (runs: 256, μ: 769, ~: 891) FixedPointMathLibTest:testDivWadEdgeCases() (gas: 436) -FixedPointMathLibTest:testDivWadOverflowReverts(uint256,uint256) (runs: 259, μ: 3793, ~: 3793) +FixedPointMathLibTest:testDivWadOverflowReverts(uint256,uint256) (runs: 256, μ: 3793, ~: 3793) FixedPointMathLibTest:testDivWadUp() (gas: 3129) -FixedPointMathLibTest:testDivWadUp(uint256,uint256) (runs: 276, μ: 889, ~: 987) +FixedPointMathLibTest:testDivWadUp(uint256,uint256) (runs: 256, μ: 830, ~: 987) FixedPointMathLibTest:testDivWadUpEdgeCases() (gas: 483) -FixedPointMathLibTest:testDivWadUpOverflowReverts(uint256,uint256) (runs: 259, μ: 3792, ~: 3792) +FixedPointMathLibTest:testDivWadUpOverflowReverts(uint256,uint256) (runs: 256, μ: 3792, ~: 3792) FixedPointMathLibTest:testDivWadUpZeroDenominatorReverts() (gas: 3261) -FixedPointMathLibTest:testDivWadUpZeroDenominatorReverts(uint256) (runs: 276, μ: 3273, ~: 3273) +FixedPointMathLibTest:testDivWadUpZeroDenominatorReverts(uint256) (runs: 256, μ: 3273, ~: 3273) FixedPointMathLibTest:testDivWadZeroDenominatorReverts() (gas: 3262) -FixedPointMathLibTest:testDivWadZeroDenominatorReverts(uint256) (runs: 276, μ: 3337, ~: 3337) +FixedPointMathLibTest:testDivWadZeroDenominatorReverts(uint256) (runs: 256, μ: 3337, ~: 3337) FixedPointMathLibTest:testExpWad() (gas: 8047) FixedPointMathLibTest:testFactorial() (gas: 98781) FixedPointMathLibTest:testFactorialOriginal() (gas: 94187) FixedPointMathLibTest:testFullMulDiv() (gas: 1083) -FixedPointMathLibTest:testFullMulDiv(uint256,uint256,uint256) (runs: 276, μ: 1322, ~: 940) -FixedPointMathLibTest:testFullMulDivAlwaysRevertsIfDivisorIsZero(uint256,uint256) (runs: 276, μ: 3478, ~: 3478) -FixedPointMathLibTest:testFullMulDivUp(uint256,uint256,uint256) (runs: 276, μ: 1772, ~: 1449) +FixedPointMathLibTest:testFullMulDiv(uint256,uint256,uint256) (runs: 256, μ: 1388, ~: 940) +FixedPointMathLibTest:testFullMulDivAlwaysRevertsIfDivisorIsZero(uint256,uint256) (runs: 256, μ: 3478, ~: 3478) +FixedPointMathLibTest:testFullMulDivUp(uint256,uint256,uint256) (runs: 256, μ: 1745, ~: 1449) FixedPointMathLibTest:testFullMulDivUpRevertsIfRoundedUpResultOverflowsCase1() (gas: 3694) FixedPointMathLibTest:testFullMulDivUpRevertsIfRoundedUpResultOverflowsCase2() (gas: 3727) FixedPointMathLibTest:testGcd() (gas: 4228) -FixedPointMathLibTest:testGcd(uint256,uint256) (runs: 276, μ: 6770, ~: 3077) +FixedPointMathLibTest:testGcd(uint256,uint256) (runs: 256, μ: 5035, ~: 2245) FixedPointMathLibTest:testLambertW0WadAccuracy() (gas: 7164) -FixedPointMathLibTest:testLambertW0WadAccuracy(uint184) (runs: 276, μ: 2383, ~: 408) +FixedPointMathLibTest:testLambertW0WadAccuracy(uint184) (runs: 256, μ: 1644, ~: 408) FixedPointMathLibTest:testLambertW0WadKnownValues() (gas: 1689664) FixedPointMathLibTest:testLambertW0WadMonoDebug() (gas: 772644) FixedPointMathLibTest:testLambertW0WadMonotonicallyIncreasing() (gas: 18485651) -FixedPointMathLibTest:testLambertW0WadMonotonicallyIncreasing(int256,int256) (runs: 276, μ: 7236, ~: 7012) +FixedPointMathLibTest:testLambertW0WadMonotonicallyIncreasing(int256,int256) (runs: 256, μ: 6985, ~: 6884) FixedPointMathLibTest:testLambertW0WadMonotonicallyIncreasing2() (gas: 4045144) -FixedPointMathLibTest:testLambertW0WadMonotonicallyIncreasingAround(int256) (runs: 276, μ: 28252, ~: 35664) -FixedPointMathLibTest:testLambertW0WadMonotonicallyIncreasingAround2(uint96) (runs: 276, μ: 38572, ~: 17376) +FixedPointMathLibTest:testLambertW0WadMonotonicallyIncreasingAround(int256) (runs: 256, μ: 27285, ~: 31054) +FixedPointMathLibTest:testLambertW0WadMonotonicallyIncreasingAround2(uint96) (runs: 256, μ: 40502, ~: 17376) FixedPointMathLibTest:testLambertW0WadRevertsForOutOfDomain() (gas: 16612) FixedPointMathLibTest:testLambertW0WadWithinBounds() (gas: 122497) -FixedPointMathLibTest:testLambertW0WadWithinBounds(int256) (runs: 276, μ: 3477, ~: 5008) -FixedPointMathLibTest:testLerp(int256,int256,int256,int256,int256) (runs: 276, μ: 1748, ~: 1261) -FixedPointMathLibTest:testLerp(uint256,uint256,uint256,uint256,uint256) (runs: 276, μ: 1138, ~: 840) +FixedPointMathLibTest:testLambertW0WadWithinBounds(int256) (runs: 256, μ: 3113, ~: 1295) +FixedPointMathLibTest:testLerp(int256,int256,int256,int256,int256) (runs: 256, μ: 2013, ~: 1261) +FixedPointMathLibTest:testLerp(uint256,uint256,uint256,uint256,uint256) (runs: 256, μ: 1384, ~: 840) FixedPointMathLibTest:testLerpOriginal() (gas: 12438) FixedPointMathLibTest:testLnWad() (gas: 2054) FixedPointMathLibTest:testLnWadBig() (gas: 2065) @@ -450,91 +483,91 @@ FixedPointMathLibTest:testLnWadNegativeReverts() (gas: 3340) FixedPointMathLibTest:testLnWadOverflowReverts() (gas: 3315) FixedPointMathLibTest:testLnWadSmall() (gas: 2708) FixedPointMathLibTest:testLog10() (gas: 76168) -FixedPointMathLibTest:testLog10(uint256,uint256) (runs: 276, μ: 2186, ~: 2210) +FixedPointMathLibTest:testLog10(uint256,uint256) (runs: 256, μ: 2131, ~: 2200) FixedPointMathLibTest:testLog10Up() (gas: 4369) FixedPointMathLibTest:testLog2() (gas: 243209) FixedPointMathLibTest:testLog256() (gas: 22831) -FixedPointMathLibTest:testLog256(uint256,uint256) (runs: 276, μ: 2118, ~: 2173) +FixedPointMathLibTest:testLog256(uint256,uint256) (runs: 256, μ: 2068, ~: 2135) FixedPointMathLibTest:testLog256Up() (gas: 1271) -FixedPointMathLibTest:testLog2Differential(uint256) (runs: 276, μ: 891, ~: 886) +FixedPointMathLibTest:testLog2Differential(uint256) (runs: 256, μ: 893, ~: 886) FixedPointMathLibTest:testLog2Up() (gas: 297302) -FixedPointMathLibTest:testMax(uint256,uint256) (runs: 276, μ: 476, ~: 472) -FixedPointMathLibTest:testMaxCasted(uint32,uint32,uint256) (runs: 276, μ: 886, ~: 882) -FixedPointMathLibTest:testMaxSigned(int256,int256) (runs: 276, μ: 519, ~: 515) -FixedPointMathLibTest:testMin(uint256,uint256) (runs: 276, μ: 477, ~: 482) -FixedPointMathLibTest:testMinBrutalized(uint256,uint256) (runs: 276, μ: 807, ~: 817) -FixedPointMathLibTest:testMinSigned(int256,int256) (runs: 276, μ: 475, ~: 480) +FixedPointMathLibTest:testMax(uint256,uint256) (runs: 256, μ: 476, ~: 472) +FixedPointMathLibTest:testMaxCasted(uint32,uint32,uint256) (runs: 256, μ: 887, ~: 892) +FixedPointMathLibTest:testMaxSigned(int256,int256) (runs: 256, μ: 519, ~: 515) +FixedPointMathLibTest:testMin(uint256,uint256) (runs: 256, μ: 477, ~: 482) +FixedPointMathLibTest:testMinBrutalized(uint256,uint256) (runs: 256, μ: 808, ~: 817) +FixedPointMathLibTest:testMinSigned(int256,int256) (runs: 256, μ: 475, ~: 480) FixedPointMathLibTest:testMulDiv() (gas: 1845) -FixedPointMathLibTest:testMulDiv(uint256,uint256,uint256) (runs: 276, μ: 1798, ~: 836) +FixedPointMathLibTest:testMulDiv(uint256,uint256,uint256) (runs: 256, μ: 1673, ~: 836) FixedPointMathLibTest:testMulDivEdgeCases() (gas: 784) -FixedPointMathLibTest:testMulDivOverflowReverts(uint256,uint256,uint256) (runs: 262, μ: 3869, ~: 3869) +FixedPointMathLibTest:testMulDivOverflowReverts(uint256,uint256,uint256) (runs: 256, μ: 3869, ~: 3869) FixedPointMathLibTest:testMulDivUp() (gas: 2125) -FixedPointMathLibTest:testMulDivUp(uint256,uint256,uint256) (runs: 276, μ: 1996, ~: 1143) +FixedPointMathLibTest:testMulDivUp(uint256,uint256,uint256) (runs: 256, μ: 1859, ~: 1143) FixedPointMathLibTest:testMulDivUpEdgeCases() (gas: 817) -FixedPointMathLibTest:testMulDivUpOverflowReverts(uint256,uint256,uint256) (runs: 262, μ: 3858, ~: 3858) +FixedPointMathLibTest:testMulDivUpOverflowReverts(uint256,uint256,uint256) (runs: 256, μ: 3858, ~: 3858) FixedPointMathLibTest:testMulDivUpZeroDenominator() (gas: 3256) -FixedPointMathLibTest:testMulDivUpZeroDenominatorReverts(uint256,uint256) (runs: 276, μ: 3357, ~: 3357) +FixedPointMathLibTest:testMulDivUpZeroDenominatorReverts(uint256,uint256) (runs: 256, μ: 3357, ~: 3357) FixedPointMathLibTest:testMulDivZeroDenominatorReverts() (gas: 3255) -FixedPointMathLibTest:testMulDivZeroDenominatorReverts(uint256,uint256) (runs: 276, μ: 3358, ~: 3358) +FixedPointMathLibTest:testMulDivZeroDenominatorReverts(uint256,uint256) (runs: 256, μ: 3358, ~: 3358) FixedPointMathLibTest:testMulWad() (gas: 736) -FixedPointMathLibTest:testMulWad(uint256,uint256) (runs: 276, μ: 728, ~: 854) +FixedPointMathLibTest:testMulWad(uint256,uint256) (runs: 256, μ: 714, ~: 854) FixedPointMathLibTest:testMulWadEdgeCases() (gas: 714) -FixedPointMathLibTest:testMulWadOverflowReverts(uint256,uint256) (runs: 262, μ: 3791, ~: 3791) +FixedPointMathLibTest:testMulWadOverflowReverts(uint256,uint256) (runs: 256, μ: 3791, ~: 3791) FixedPointMathLibTest:testMulWadUp() (gas: 837) -FixedPointMathLibTest:testMulWadUp(uint256,uint256) (runs: 276, μ: 876, ~: 1065) +FixedPointMathLibTest:testMulWadUp(uint256,uint256) (runs: 256, μ: 841, ~: 1065) FixedPointMathLibTest:testMulWadUpEdgeCases() (gas: 815) -FixedPointMathLibTest:testMulWadUpOverflowReverts(uint256,uint256) (runs: 262, μ: 3834, ~: 3834) +FixedPointMathLibTest:testMulWadUpOverflowReverts(uint256,uint256) (runs: 256, μ: 3834, ~: 3834) FixedPointMathLibTest:testPackUnpackSci() (gas: 129349) -FixedPointMathLibTest:testPackUnpackSci(uint256) (runs: 276, μ: 30176, ~: 30185) +FixedPointMathLibTest:testPackUnpackSci(uint256) (runs: 256, μ: 30162, ~: 30110) FixedPointMathLibTest:testRPow() (gas: 3320) FixedPointMathLibTest:testRPowOverflowReverts() (gas: 4974) -FixedPointMathLibTest:testRawAdd(int256,int256) (runs: 276, μ: 440, ~: 440) -FixedPointMathLibTest:testRawAdd(uint256,uint256) (runs: 276, μ: 463, ~: 463) -FixedPointMathLibTest:testRawAddMod(uint256,uint256,uint256) (runs: 276, μ: 512, ~: 512) -FixedPointMathLibTest:testRawDiv(uint256,uint256) (runs: 276, μ: 443, ~: 443) -FixedPointMathLibTest:testRawMod(uint256,uint256) (runs: 276, μ: 442, ~: 442) -FixedPointMathLibTest:testRawMul(int256,int256) (runs: 276, μ: 412, ~: 412) -FixedPointMathLibTest:testRawMul(uint256,uint256) (runs: 276, μ: 442, ~: 442) -FixedPointMathLibTest:testRawMulMod(uint256,uint256,uint256) (runs: 276, μ: 579, ~: 579) -FixedPointMathLibTest:testRawSDiv(int256,int256) (runs: 276, μ: 420, ~: 420) -FixedPointMathLibTest:testRawSMod(int256,int256) (runs: 276, μ: 488, ~: 488) -FixedPointMathLibTest:testRawSub(int256,int256) (runs: 276, μ: 441, ~: 441) -FixedPointMathLibTest:testRawSub(uint256,uint256) (runs: 276, μ: 440, ~: 440) +FixedPointMathLibTest:testRawAdd(int256,int256) (runs: 256, μ: 440, ~: 440) +FixedPointMathLibTest:testRawAdd(uint256,uint256) (runs: 256, μ: 463, ~: 463) +FixedPointMathLibTest:testRawAddMod(uint256,uint256,uint256) (runs: 256, μ: 512, ~: 512) +FixedPointMathLibTest:testRawDiv(uint256,uint256) (runs: 256, μ: 443, ~: 443) +FixedPointMathLibTest:testRawMod(uint256,uint256) (runs: 256, μ: 442, ~: 442) +FixedPointMathLibTest:testRawMul(int256,int256) (runs: 256, μ: 412, ~: 412) +FixedPointMathLibTest:testRawMul(uint256,uint256) (runs: 256, μ: 442, ~: 442) +FixedPointMathLibTest:testRawMulMod(uint256,uint256,uint256) (runs: 256, μ: 579, ~: 579) +FixedPointMathLibTest:testRawSDiv(int256,int256) (runs: 256, μ: 420, ~: 420) +FixedPointMathLibTest:testRawSMod(int256,int256) (runs: 256, μ: 488, ~: 488) +FixedPointMathLibTest:testRawSub(int256,int256) (runs: 256, μ: 441, ~: 441) +FixedPointMathLibTest:testRawSub(uint256,uint256) (runs: 256, μ: 440, ~: 440) FixedPointMathLibTest:testSDivWad() (gas: 916) -FixedPointMathLibTest:testSDivWad(int256,int256) (runs: 276, μ: 928, ~: 1015) +FixedPointMathLibTest:testSDivWad(int256,int256) (runs: 256, μ: 884, ~: 1015) FixedPointMathLibTest:testSDivWadEdgeCases() (gas: 422) -FixedPointMathLibTest:testSDivWadOverflowReverts(int256,int256) (runs: 260, μ: 3803, ~: 3803) -FixedPointMathLibTest:testSDivWadZeroDenominatorReverts(int256) (runs: 276, μ: 3330, ~: 3330) +FixedPointMathLibTest:testSDivWadOverflowReverts(int256,int256) (runs: 256, μ: 3803, ~: 3803) +FixedPointMathLibTest:testSDivWadZeroDenominatorReverts(int256) (runs: 256, μ: 3330, ~: 3330) FixedPointMathLibTest:testSMulWad() (gas: 1010) -FixedPointMathLibTest:testSMulWad(int256,int256) (runs: 276, μ: 891, ~: 1047) +FixedPointMathLibTest:testSMulWad(int256,int256) (runs: 256, μ: 867, ~: 1047) FixedPointMathLibTest:testSMulWadEdgeCases() (gas: 1243) -FixedPointMathLibTest:testSMulWadOverflowRevertsOnCondition1(int256,int256) (runs: 260, μ: 3842, ~: 3842) -FixedPointMathLibTest:testSMulWadOverflowRevertsOnCondition2(int256) (runs: 261, μ: 3706, ~: 3706) -FixedPointMathLibTest:testSMulWadOverflowTrickDifferential(int256,int256) (runs: 276, μ: 600, ~: 610) +FixedPointMathLibTest:testSMulWadOverflowRevertsOnCondition1(int256,int256) (runs: 256, μ: 3842, ~: 3842) +FixedPointMathLibTest:testSMulWadOverflowRevertsOnCondition2(int256) (runs: 256, μ: 3706, ~: 3706) +FixedPointMathLibTest:testSMulWadOverflowTrickDifferential(int256,int256) (runs: 256, μ: 598, ~: 610) FixedPointMathLibTest:testSci() (gas: 1838614) -FixedPointMathLibTest:testSci(uint256) (runs: 276, μ: 35083, ~: 39326) -FixedPointMathLibTest:testSci2(uint256) (runs: 276, μ: 959, ~: 955) +FixedPointMathLibTest:testSci(uint256) (runs: 256, μ: 32000, ~: 37560) +FixedPointMathLibTest:testSci2(uint256) (runs: 256, μ: 947, ~: 955) FixedPointMathLibTest:testSqrt() (gas: 42598) -FixedPointMathLibTest:testSqrt(uint256) (runs: 276, μ: 1060, ~: 1064) -FixedPointMathLibTest:testSqrtBack(uint256) (runs: 276, μ: 9450, ~: 341) -FixedPointMathLibTest:testSqrtHashed(uint256) (runs: 276, μ: 53152, ~: 53157) +FixedPointMathLibTest:testSqrt(uint256) (runs: 256, μ: 1015, ~: 1064) +FixedPointMathLibTest:testSqrtBack(uint256) (runs: 256, μ: 14180, ~: 341) +FixedPointMathLibTest:testSqrtHashed(uint256) (runs: 256, μ: 53182, ~: 53571) FixedPointMathLibTest:testSqrtHashedSingle() (gas: 53063) FixedPointMathLibTest:testSqrtWad() (gas: 7426) -FixedPointMathLibTest:testSqrtWad(uint256) (runs: 276, μ: 1561, ~: 1565) -FixedPointMathLibTest:testZeroFloorSub(uint256,uint256) (runs: 276, μ: 550, ~: 579) -FixedPointMathLibTest:testZeroFloorSubCasted(uint32,uint32,uint256) (runs: 276, μ: 882, ~: 923) +FixedPointMathLibTest:testSqrtWad(uint256) (runs: 256, μ: 1560, ~: 1565) +FixedPointMathLibTest:testZeroFloorSub(uint256,uint256) (runs: 256, μ: 549, ~: 579) +FixedPointMathLibTest:testZeroFloorSubCasted(uint32,uint32,uint256) (runs: 256, μ: 882, ~: 842) FixedPointMathLibTest:test__codesize() (gas: 43136) GasBurnerLibTest:testBurnGas() (gas: 1700805) GasBurnerLibTest:test__codesize() (gas: 1189) InitializableTest:testDisableInitializers() (gas: 42000) InitializableTest:testInitializableConstructor() (gas: 691052) InitializableTest:testInitialize() (gas: 54683) -InitializableTest:testInitializeInititalizerTrick(bool,uint64,uint16) (runs: 276, μ: 791, ~: 791) -InitializableTest:testInitializeReinititalize(uint256) (runs: 276, μ: 94352, ~: 94249) -InitializableTest:testInitializeReinititalizerTrick(bool,uint64,uint64) (runs: 276, μ: 674, ~: 687) +InitializableTest:testInitializeInititalizerTrick(bool,uint64,uint16) (runs: 256, μ: 790, ~: 791) +InitializableTest:testInitializeReinititalize(uint256) (runs: 256, μ: 93747, ~: 91715) +InitializableTest:testInitializeReinititalizerTrick(bool,uint64,uint64) (runs: 256, μ: 674, ~: 687) InitializableTest:testOnlyInitializing() (gas: 10420) InitializableTest:test__codesize() (gas: 10402) -JSONParserLibTest:testDecodeEncodedStringDoesNotRevert(string) (runs: 276, μ: 57442, ~: 56320) +JSONParserLibTest:testDecodeEncodedStringDoesNotRevert(string) (runs: 256, μ: 57489, ~: 56320) JSONParserLibTest:testDecodeInvalidStringReverts() (gas: 172572) JSONParserLibTest:testDecodeString() (gas: 192789) JSONParserLibTest:testEmptyItem() (gas: 2913) @@ -542,9 +575,9 @@ JSONParserLibTest:testParseEmptyArrays() (gas: 499245) JSONParserLibTest:testParseEmptyObjects() (gas: 500206) JSONParserLibTest:testParseGas() (gas: 151909) JSONParserLibTest:testParseInt() (gas: 203817) -JSONParserLibTest:testParseInt(int256) (runs: 276, μ: 18440, ~: 16134) -JSONParserLibTest:testParseIntReverts(uint256) (runs: 276, μ: 55883, ~: 55876) -JSONParserLibTest:testParseIntTrick(uint256,bool) (runs: 276, μ: 528, ~: 525) +JSONParserLibTest:testParseInt(int256) (runs: 256, μ: 18693, ~: 14598) +JSONParserLibTest:testParseIntReverts(uint256) (runs: 256, μ: 55893, ~: 55876) +JSONParserLibTest:testParseIntTrick(uint256,bool) (runs: 256, μ: 527, ~: 525) JSONParserLibTest:testParseInvalidIntReverts() (gas: 210267) JSONParserLibTest:testParseInvalidNumberReverts() (gas: 4064682) JSONParserLibTest:testParseInvalidReverts() (gas: 8582765) @@ -560,146 +593,146 @@ JSONParserLibTest:testParseSimpleUintArray() (gas: 1175003) JSONParserLibTest:testParseSpecials() (gas: 260167) JSONParserLibTest:testParseString() (gas: 1236523) JSONParserLibTest:testParseUint() (gas: 95436) -JSONParserLibTest:testParseUint(uint256) (runs: 276, μ: 35318, ~: 32000) +JSONParserLibTest:testParseUint(uint256) (runs: 256, μ: 35760, ~: 29620) JSONParserLibTest:testParseUintFromHex() (gas: 1381018) -JSONParserLibTest:testParseValidObjectDoesNotRevert(string,string) (runs: 276, μ: 49918, ~: 48743) +JSONParserLibTest:testParseValidObjectDoesNotRevert(string,string) (runs: 256, μ: 49778, ~: 48722) JSONParserLibTest:test__codesize() (gas: 38004) LibBitTest:testAnd() (gas: 185887) -LibBitTest:testAnd(bool,bool) (runs: 276, μ: 632, ~: 634) -LibBitTest:testAutoClean(uint256,uint256) (runs: 276, μ: 468, ~: 468) -LibBitTest:testBoolToUint(bool) (runs: 276, μ: 485, ~: 485) +LibBitTest:testAnd(bool,bool) (runs: 256, μ: 632, ~: 634) +LibBitTest:testAutoClean(uint256,uint256) (runs: 256, μ: 468, ~: 468) +LibBitTest:testBoolToUint(bool) (runs: 256, μ: 485, ~: 485) LibBitTest:testCLZ() (gas: 297260) LibBitTest:testFFS() (gas: 152877) LibBitTest:testFLS() (gas: 245237) LibBitTest:testIsPo2() (gas: 57663) -LibBitTest:testIsPo2(uint256) (runs: 276, μ: 3424, ~: 1842) -LibBitTest:testIsPo2(uint8,uint8) (runs: 276, μ: 623, ~: 624) +LibBitTest:testIsPo2(uint256) (runs: 256, μ: 4914, ~: 1330) +LibBitTest:testIsPo2(uint8,uint8) (runs: 256, μ: 623, ~: 624) LibBitTest:testOr() (gas: 188733) -LibBitTest:testOr(bool,bool) (runs: 276, μ: 649, ~: 648) +LibBitTest:testOr(bool,bool) (runs: 256, μ: 649, ~: 648) LibBitTest:testPassInBool() (gas: 830) LibBitTest:testPopCount() (gas: 63738) -LibBitTest:testPopCount(uint256) (runs: 276, μ: 3566, ~: 1984) +LibBitTest:testPopCount(uint256) (runs: 256, μ: 5056, ~: 1472) LibBitTest:testReturnsBool() (gas: 779) LibBitTest:testReverseBits() (gas: 131521) -LibBitTest:testReverseBitsDifferential(uint256) (runs: 276, μ: 18724, ~: 18724) +LibBitTest:testReverseBitsDifferential(uint256) (runs: 256, μ: 18724, ~: 18724) LibBitTest:testReverseBytes() (gas: 12492) -LibBitTest:testReverseBytesDifferential(uint256) (runs: 276, μ: 2675, ~: 2675) +LibBitTest:testReverseBytesDifferential(uint256) (runs: 256, μ: 2675, ~: 2675) LibBitTest:test__codesize() (gas: 5767) LibBitmapTest:testBitmapClaimWithGetSet() (gas: 27155) LibBitmapTest:testBitmapClaimWithToggle() (gas: 17392) LibBitmapTest:testBitmapFindLastSet() (gas: 1300541) -LibBitmapTest:testBitmapFindLastSet(uint256,uint256) (runs: 276, μ: 76205, ~: 76094) +LibBitmapTest:testBitmapFindLastSet(uint256,uint256) (runs: 256, μ: 76052, ~: 76181) LibBitmapTest:testBitmapFindLastSet2() (gas: 23882) LibBitmapTest:testBitmapGet() (gas: 2513) -LibBitmapTest:testBitmapGet(uint256) (runs: 276, μ: 2586, ~: 2586) +LibBitmapTest:testBitmapGet(uint256) (runs: 256, μ: 2586, ~: 2586) LibBitmapTest:testBitmapPopCount() (gas: 750426) -LibBitmapTest:testBitmapPopCount(uint256,uint256,uint256) (runs: 276, μ: 206822, ~: 188788) +LibBitmapTest:testBitmapPopCount(uint256,uint256,uint256) (runs: 256, μ: 208552, ~: 174424) LibBitmapTest:testBitmapPopCountAcrossMultipleBuckets() (gas: 73611) LibBitmapTest:testBitmapPopCountWithinSingleBucket() (gas: 34054) LibBitmapTest:testBitmapSet() (gas: 22549) -LibBitmapTest:testBitmapSet(uint256) (runs: 276, μ: 22621, ~: 22621) -LibBitmapTest:testBitmapSetAndGet(uint256) (runs: 276, μ: 22655, ~: 22655) +LibBitmapTest:testBitmapSet(uint256) (runs: 256, μ: 22621, ~: 22621) +LibBitmapTest:testBitmapSetAndGet(uint256) (runs: 256, μ: 22655, ~: 22655) LibBitmapTest:testBitmapSetBatch() (gas: 3009999) LibBitmapTest:testBitmapSetBatchAcrossMultipleBuckets() (gas: 438393) LibBitmapTest:testBitmapSetBatchWithinSingleBucket() (gas: 389011) LibBitmapTest:testBitmapSetTo() (gas: 14292) -LibBitmapTest:testBitmapSetTo(uint256,bool,uint256) (runs: 276, μ: 12841, ~: 12841) -LibBitmapTest:testBitmapSetTo(uint256,uint256) (runs: 276, μ: 45171, ~: 49971) +LibBitmapTest:testBitmapSetTo(uint256,bool,uint256) (runs: 256, μ: 13074, ~: 22798) +LibBitmapTest:testBitmapSetTo(uint256,uint256) (runs: 256, μ: 45370, ~: 49972) LibBitmapTest:testBitmapToggle() (gas: 30828) -LibBitmapTest:testBitmapToggle(uint256,bool) (runs: 276, μ: 18242, ~: 14229) +LibBitmapTest:testBitmapToggle(uint256,bool) (runs: 256, μ: 17724, ~: 14232) LibBitmapTest:testBitmapUnset() (gas: 22528) -LibBitmapTest:testBitmapUnset(uint256) (runs: 276, μ: 14323, ~: 14340) +LibBitmapTest:testBitmapUnset(uint256) (runs: 256, μ: 14320, ~: 14340) LibBitmapTest:testBitmapUnsetBatch() (gas: 2991450) LibBitmapTest:testBitmapUnsetBatchAcrossMultipleBuckets() (gas: 438470) LibBitmapTest:testBitmapUnsetBatchWithinSingleBucket() (gas: 445869) LibBitmapTest:test__codesize() (gas: 7168) LibCloneTest:testClone() (gas: 72955) -LibCloneTest:testClone(uint256) (runs: 276, μ: 73027, ~: 73027) +LibCloneTest:testClone(uint256) (runs: 256, μ: 73027, ~: 73027) LibCloneTest:testCloneDeteministicWithImmutableArgs() (gas: 192031) -LibCloneTest:testCloneDeteministicWithImmutableArgs(address,uint256,uint256[],bytes,uint64,uint8,uint256) (runs: 276, μ: 1116703, ~: 1039437) +LibCloneTest:testCloneDeteministicWithImmutableArgs(address,uint256,uint256[],bytes,uint64,uint8,uint256) (runs: 256, μ: 1047801, ~: 994049) LibCloneTest:testCloneDeterministic() (gas: 96960) -LibCloneTest:testCloneDeterministic(uint256,bytes32) (runs: 276, μ: 97029, ~: 97029) +LibCloneTest:testCloneDeterministic(uint256,bytes32) (runs: 256, μ: 97029, ~: 97029) LibCloneTest:testCloneDeterministicRevertsIfAddressAlreadyUsed() (gas: 96882842) LibCloneTest:testCloneWithImmutableArgs() (gas: 120859) -LibCloneTest:testCloneWithImmutableArgs(uint256,address,uint256,uint256[],uint64,uint8) (runs: 276, μ: 978800, ~: 987809) +LibCloneTest:testCloneWithImmutableArgs(uint256,address,uint256,uint256[],uint64,uint8) (runs: 256, μ: 987583, ~: 1012303) LibCloneTest:testCloneWithImmutableArgsRevertsIfDataTooBig() (gas: 97305794) -LibCloneTest:testCreateDeterministicERC1967(uint256,bytes32) (runs: 276, μ: 125124, ~: 125124) -LibCloneTest:testCreateDeterministicERC1967BeaconProxy(uint256,bytes32) (runs: 276, μ: 327964, ~: 357211) -LibCloneTest:testCreateDeterministicERC1967I(uint256,bytes32) (runs: 276, μ: 129450, ~: 129450) +LibCloneTest:testCreateDeterministicERC1967(uint256,bytes32) (runs: 256, μ: 125124, ~: 125124) +LibCloneTest:testCreateDeterministicERC1967BeaconProxy(uint256,bytes32) (runs: 256, μ: 328579, ~: 357211) +LibCloneTest:testCreateDeterministicERC1967I(uint256,bytes32) (runs: 256, μ: 129450, ~: 129450) LibCloneTest:testDeployDeterministicERC1967() (gas: 123217) -LibCloneTest:testDeployDeterministicERC1967(uint256,bytes32) (runs: 276, μ: 123244, ~: 123244) -LibCloneTest:testDeployDeterministicERC1967BeaconProxy(uint256,bytes32) (runs: 276, μ: 323675, ~: 293312) +LibCloneTest:testDeployDeterministicERC1967(uint256,bytes32) (runs: 256, μ: 123244, ~: 123244) +LibCloneTest:testDeployDeterministicERC1967BeaconProxy(uint256,bytes32) (runs: 256, μ: 327026, ~: 355411) LibCloneTest:testDeployDeterministicERC1967I() (gas: 127555) -LibCloneTest:testDeployDeterministicERC1967I(uint256,bytes32) (runs: 276, μ: 127581, ~: 127581) +LibCloneTest:testDeployDeterministicERC1967I(uint256,bytes32) (runs: 256, μ: 127581, ~: 127581) LibCloneTest:testDeployERC1967() (gas: 99244) -LibCloneTest:testDeployERC1967(uint256) (runs: 276, μ: 99273, ~: 99273) -LibCloneTest:testDeployERC1967BeaconProxy(uint256) (runs: 276, μ: 303207, ~: 331327) -LibCloneTest:testDeployERC1967BeaconProxyCodeHashAndLength(address) (runs: 276, μ: 142367, ~: 142512) -LibCloneTest:testDeployERC1967CodeHashAndLength(address) (runs: 276, μ: 133906, ~: 134051) +LibCloneTest:testDeployERC1967(uint256) (runs: 256, μ: 99273, ~: 99273) +LibCloneTest:testDeployERC1967BeaconProxy(uint256) (runs: 256, μ: 306108, ~: 331327) +LibCloneTest:testDeployERC1967BeaconProxyCodeHashAndLength(address) (runs: 256, μ: 142512, ~: 142512) +LibCloneTest:testDeployERC1967CodeHashAndLength(address) (runs: 256, μ: 133895, ~: 134051) LibCloneTest:testDeployERC1967I() (gas: 103584) -LibCloneTest:testDeployERC1967I(uint256) (runs: 276, μ: 103633, ~: 103633) -LibCloneTest:testDeployERC1967ICodeHashAndLength(address) (runs: 276, μ: 142323, ~: 142468) +LibCloneTest:testDeployERC1967I(uint256) (runs: 256, μ: 103633, ~: 103633) +LibCloneTest:testDeployERC1967ICodeHashAndLength(address) (runs: 256, μ: 142312, ~: 142468) LibCloneTest:testDeployERC1967ISpecialPath() (gas: 71720) -LibCloneTest:testDeployERC1967ISpecialPath(address,bytes1) (runs: 276, μ: 72182, ~: 72255) -LibCloneTest:testERC1967BeaconProxyGasBehavior(uint256,uint256) (runs: 276, μ: 293185, ~: 313439) -LibCloneTest:testERC1967ConstantBootstrap(address,bytes32) (runs: 276, μ: 152470, ~: 142007) -LibCloneTest:testInitCode(address,uint256,uint256) (runs: 276, μ: 1120612, ~: 837567) +LibCloneTest:testDeployERC1967ISpecialPath(address,bytes1) (runs: 256, μ: 72255, ~: 72255) +LibCloneTest:testERC1967BeaconProxyGasBehavior(uint256,uint256) (runs: 256, μ: 289058, ~: 262310) +LibCloneTest:testERC1967ConstantBootstrap(address,bytes32) (runs: 256, μ: 154498, ~: 166634) +LibCloneTest:testInitCode(address,uint256,uint256) (runs: 256, μ: 925090, ~: 837761) LibCloneTest:testInitialDeposit() (gas: 607508) -LibCloneTest:testStartsWith(uint256) (runs: 276, μ: 29428, ~: 29416) +LibCloneTest:testStartsWith(uint256) (runs: 256, μ: 29400, ~: 29408) LibCloneTest:test__codesize() (gas: 26855) -LibERC6551Test:testComputeAccountAddress(address,bytes32,uint256,address,uint256) (runs: 276, μ: 229350, ~: 29321) -LibERC6551Test:testContext(address,bytes32,uint256,address,uint256) (runs: 276, μ: 101980, ~: 101978) -LibERC6551Test:testInitCodeHash(address,bytes32,uint256,address,uint256) (runs: 276, μ: 205441, ~: 24235) -LibERC6551Test:testIsERC6551Account(address,bytes32,uint256,address,uint256) (runs: 276, μ: 111839, ~: 111938) +LibERC6551Test:testComputeAccountAddress(address,bytes32,uint256,address,uint256) (runs: 256, μ: 217276, ~: 29322) +LibERC6551Test:testContext(address,bytes32,uint256,address,uint256) (runs: 256, μ: 101993, ~: 102006) +LibERC6551Test:testInitCodeHash(address,bytes32,uint256,address,uint256) (runs: 256, μ: 183114, ~: 24243) +LibERC6551Test:testIsERC6551Account(address,bytes32,uint256,address,uint256) (runs: 256, μ: 111871, ~: 112045) LibERC6551Test:test__codesize() (gas: 6402) -LibMapTest:testFoundStatementDifferential(uint256,uint256,uint256) (runs: 276, μ: 499, ~: 499) +LibMapTest:testFoundStatementDifferential(uint256,uint256,uint256) (runs: 256, μ: 499, ~: 499) LibMapTest:testGeneralMapFunctionsGas() (gas: 3304775) -LibMapTest:testGeneralMapFunctionsWithSmallBitWidths(uint256) (runs: 276, μ: 82058, ~: 85815) +LibMapTest:testGeneralMapFunctionsWithSmallBitWidths(uint256) (runs: 256, μ: 80220, ~: 85657) LibMapTest:testGeneralMapFunctionsWithZeroBitWidth() (gas: 12260) -LibMapTest:testGeneralMapSearchSorted(uint256) (runs: 276, μ: 231594, ~: 141171) +LibMapTest:testGeneralMapSearchSorted(uint256) (runs: 256, μ: 166207, ~: 124784) LibMapTest:testMapGetFromBigArray() (gas: 3330) LibMapTest:testMapGetUint8() (gas: 3313) LibMapTest:testMapSetUint8() (gas: 23276) LibMapTest:testMapSetUint8FromBigArray() (gas: 23263) -LibMapTest:testUint128MapSearchSorted(uint256) (runs: 276, μ: 173233, ~: 152063) +LibMapTest:testUint128MapSearchSorted(uint256) (runs: 256, μ: 178817, ~: 131248) LibMapTest:testUint128MapSetAndGet() (gas: 1607245) -LibMapTest:testUint128MapSetAndGet(uint256) (runs: 276, μ: 171074, ~: 169431) -LibMapTest:testUint128MapSetAndGet2(uint256) (runs: 276, μ: 68113, ~: 69276) -LibMapTest:testUint16MapSearchSorted(uint256) (runs: 276, μ: 99108, ~: 87334) +LibMapTest:testUint128MapSetAndGet(uint256) (runs: 256, μ: 171779, ~: 169082) +LibMapTest:testUint128MapSetAndGet2(uint256) (runs: 256, μ: 68093, ~: 69274) +LibMapTest:testUint16MapSearchSorted(uint256) (runs: 256, μ: 90374, ~: 85700) LibMapTest:testUint16MapSetAndGet() (gas: 958193) -LibMapTest:testUint16MapSetAndGet(uint256) (runs: 276, μ: 81295, ~: 81350) -LibMapTest:testUint16MapSetAndGet2(uint256) (runs: 276, μ: 67388, ~: 69185) -LibMapTest:testUint32MapSearchSorted(uint256) (runs: 276, μ: 99180, ~: 86357) +LibMapTest:testUint16MapSetAndGet(uint256) (runs: 256, μ: 81156, ~: 81218) +LibMapTest:testUint16MapSetAndGet2(uint256) (runs: 256, μ: 66709, ~: 69185) +LibMapTest:testUint32MapSearchSorted(uint256) (runs: 256, μ: 98698, ~: 86013) LibMapTest:testUint32MapSetAndGet() (gas: 1067093) -LibMapTest:testUint32MapSetAndGet(uint256) (runs: 276, μ: 112983, ~: 124253) -LibMapTest:testUint32MapSetAndGet2(uint256) (runs: 276, μ: 67406, ~: 69139) -LibMapTest:testUint32Maps(uint256) (runs: 276, μ: 66457, ~: 72254) -LibMapTest:testUint40MapSearchSorted(uint256) (runs: 276, μ: 116263, ~: 106644) +LibMapTest:testUint32MapSetAndGet(uint256) (runs: 256, μ: 113582, ~: 124335) +LibMapTest:testUint32MapSetAndGet2(uint256) (runs: 256, μ: 67103, ~: 69134) +LibMapTest:testUint32Maps(uint256) (runs: 256, μ: 64682, ~: 72259) +LibMapTest:testUint40MapSearchSorted(uint256) (runs: 256, μ: 138877, ~: 107932) LibMapTest:testUint40MapSetAndGet() (gas: 1127344) -LibMapTest:testUint40MapSetAndGet(uint256) (runs: 276, μ: 131112, ~: 125480) -LibMapTest:testUint40MapSetAndGet2(uint256) (runs: 276, μ: 67188, ~: 69214) -LibMapTest:testUint64MapSearchSorted(uint256) (runs: 276, μ: 134319, ~: 108898) +LibMapTest:testUint40MapSetAndGet(uint256) (runs: 256, μ: 135825, ~: 145996) +LibMapTest:testUint40MapSetAndGet2(uint256) (runs: 256, μ: 67332, ~: 69214) +LibMapTest:testUint64MapSearchSorted(uint256) (runs: 256, μ: 135531, ~: 108348) LibMapTest:testUint64MapSetAndGet() (gas: 1220437) -LibMapTest:testUint64MapSetAndGet(uint256) (runs: 276, μ: 141927, ~: 146759) -LibMapTest:testUint64MapSetAndGet2(uint256) (runs: 276, μ: 67550, ~: 69203) -LibMapTest:testUint8MapSearchSorted(uint256) (runs: 276, μ: 99329, ~: 87031) +LibMapTest:testUint64MapSetAndGet(uint256) (runs: 256, μ: 141139, ~: 146556) +LibMapTest:testUint64MapSetAndGet2(uint256) (runs: 256, μ: 65640, ~: 69207) +LibMapTest:testUint8MapSearchSorted(uint256) (runs: 256, μ: 97128, ~: 84665) LibMapTest:testUint8MapSetAndGet() (gas: 883454) -LibMapTest:testUint8MapSetAndGet(uint256) (runs: 276, μ: 59144, ~: 59096) -LibMapTest:testUint8MapSetAndGet2(uint256) (runs: 276, μ: 67399, ~: 69127) +LibMapTest:testUint8MapSetAndGet(uint256) (runs: 256, μ: 59189, ~: 59223) +LibMapTest:testUint8MapSetAndGet2(uint256) (runs: 256, μ: 67552, ~: 69122) LibMapTest:test__codesize() (gas: 12035) LibPRNGTest:testExponentialWad() (gas: 4228998) LibPRNGTest:testLCGGas() (gas: 20803) LibPRNGTest:testLazyShufflerGet() (gas: 298258) -LibPRNGTest:testLazyShufflerGetOutOfBoundsReverts(uint256,uint256) (runs: 276, μ: 26539, ~: 26497) +LibPRNGTest:testLazyShufflerGetOutOfBoundsReverts(uint256,uint256) (runs: 256, μ: 26524, ~: 26497) LibPRNGTest:testLazyShufflerNoStorageCollisions() (gas: 266085) -LibPRNGTest:testLazyShufflerProducesShuffledRange(uint256) (runs: 276, μ: 168286, ~: 89356) +LibPRNGTest:testLazyShufflerProducesShuffledRange(uint256) (runs: 256, μ: 137771, ~: 93751) LibPRNGTest:testLazyShufflerProducesShuffledRange2() (gas: 8971724) -LibPRNGTest:testLazyShufflerProducesShuffledRangeWithGrow(uint256,uint256) (runs: 276, μ: 186890, ~: 176631) +LibPRNGTest:testLazyShufflerProducesShuffledRangeWithGrow(uint256,uint256) (runs: 256, μ: 190181, ~: 176621) LibPRNGTest:testLazyShufflerRestart() (gas: 274632) LibPRNGTest:testLazyShufflerRevertsOnDoubleInit() (gas: 26779) -LibPRNGTest:testLazyShufflerRevertsOnFinshedNext(uint256) (runs: 276, μ: 63897, ~: 56825) -LibPRNGTest:testLazyShufflerRevertsOnGrowWithInvalidLength(uint256,uint256) (runs: 276, μ: 24695, ~: 24783) -LibPRNGTest:testLazyShufflerRevertsOnInitWithInvalidLength(uint256) (runs: 276, μ: 23240, ~: 23680) +LibPRNGTest:testLazyShufflerRevertsOnFinshedNext(uint256) (runs: 256, μ: 61879, ~: 56453) +LibPRNGTest:testLazyShufflerRevertsOnGrowWithInvalidLength(uint256,uint256) (runs: 256, μ: 24679, ~: 24664) +LibPRNGTest:testLazyShufflerRevertsOnInitWithInvalidLength(uint256) (runs: 256, μ: 19340, ~: 23497) LibPRNGTest:testLazyShufflerRevertsOnZeroLengthNext() (gas: 27843) LibPRNGTest:testPRNGGas() (gas: 25689) LibPRNGTest:testPRNGNext() (gas: 16228) @@ -710,295 +743,295 @@ LibPRNGTest:testPRNGShuffleGas() (gas: 1610927) LibPRNGTest:testPRNGUniform() (gas: 559430) LibPRNGTest:testStandardNormalWad() (gas: 4260549) LibPRNGTest:test__codesize() (gas: 11742) -LibRLPTest:testComputeAddressDifferential(address,uint256) (runs: 276, μ: 1818, ~: 1610) +LibRLPTest:testComputeAddressDifferential(address,uint256) (runs: 256, μ: 1903, ~: 1742) LibRLPTest:testComputeAddressForLargeNonces() (gas: 1727) LibRLPTest:testComputeAddressForSmallNonces() (gas: 989) LibRLPTest:testComputeAddressOriginalForLargeNonces() (gas: 1909) LibRLPTest:testComputeAddressOriginalForSmallNonces() (gas: 1454) LibRLPTest:test__codesize() (gas: 7397) -LibSortTest:testCopy(uint256) (runs: 276, μ: 134181, ~: 26249) -LibSortTest:testInsertionSortAddressesDifferential(uint256) (runs: 276, μ: 53913, ~: 25024) +LibSortTest:testCopy(uint256) (runs: 256, μ: 292779, ~: 25897) +LibSortTest:testInsertionSortAddressesDifferential(uint256) (runs: 256, μ: 34026, ~: 25175) LibSortTest:testInsertionSortInts() (gas: 112151) LibSortTest:testInsertionSortPsuedorandom() (gas: 62807) -LibSortTest:testInsertionSortPsuedorandom(uint256) (runs: 276, μ: 61697, ~: 61616) -LibSortTest:testIsSortedAddressesDifferential(uint256) (runs: 276, μ: 43806, ~: 29202) -LibSortTest:testIsSortedAndUniquifiedAddressesDifferential(uint256) (runs: 276, μ: 36645, ~: 28866) -LibSortTest:testIsSortedAndUniquifiedDifferential(uint256) (runs: 276, μ: 36241, ~: 28163) -LibSortTest:testIsSortedAndUniquifiedIntsDifferential(uint256) (runs: 276, μ: 51939, ~: 30549) -LibSortTest:testIsSortedDifferential(uint256) (runs: 276, μ: 45660, ~: 28320) -LibSortTest:testIsSortedIntsDifferential(uint256) (runs: 276, μ: 38147, ~: 29389) +LibSortTest:testInsertionSortPsuedorandom(uint256) (runs: 256, μ: 61961, ~: 61616) +LibSortTest:testIsSortedAddressesDifferential(uint256) (runs: 256, μ: 42119, ~: 29262) +LibSortTest:testIsSortedAndUniquifiedAddressesDifferential(uint256) (runs: 256, μ: 32610, ~: 29386) +LibSortTest:testIsSortedAndUniquifiedDifferential(uint256) (runs: 256, μ: 33698, ~: 26806) +LibSortTest:testIsSortedAndUniquifiedIntsDifferential(uint256) (runs: 256, μ: 91299, ~: 32038) +LibSortTest:testIsSortedDifferential(uint256) (runs: 256, μ: 36439, ~: 27524) +LibSortTest:testIsSortedIntsDifferential(uint256) (runs: 256, μ: 45957, ~: 30400) LibSortTest:testReverse() (gas: 114605) LibSortTest:testSearchSorted() (gas: 118972) LibSortTest:testSearchSortedAddresses() (gas: 251950) LibSortTest:testSearchSortedBasicCases() (gas: 2244) -LibSortTest:testSearchSortedDifferential(uint256) (runs: 276, μ: 45848, ~: 30623) +LibSortTest:testSearchSortedDifferential(uint256) (runs: 256, μ: 42419, ~: 29239) LibSortTest:testSearchSortedEdgeCases() (gas: 1617) -LibSortTest:testSearchSortedElementInArray(uint256) (runs: 276, μ: 61277, ~: 31699) +LibSortTest:testSearchSortedElementInArray(uint256) (runs: 256, μ: 53570, ~: 31650) LibSortTest:testSearchSortedElementNotInArray() (gas: 6135) -LibSortTest:testSearchSortedElementNotInArray(uint256) (runs: 276, μ: 54299, ~: 33294) +LibSortTest:testSearchSortedElementNotInArray(uint256) (runs: 256, μ: 67535, ~: 35394) LibSortTest:testSearchSortedInts() (gas: 120794) -LibSortTest:testSearchSortedInts(int256[],int256) (runs: 276, μ: 12168, ~: 12899) +LibSortTest:testSearchSortedInts(int256[],int256) (runs: 256, μ: 11894, ~: 12099) LibSortTest:testSearchSortedWithEmptyArray() (gas: 709) -LibSortTest:testSort(uint256) (runs: 276, μ: 49967, ~: 29625) -LibSortTest:testSortAddressesDifferential(uint256) (runs: 276, μ: 81475, ~: 30688) +LibSortTest:testSort(uint256) (runs: 256, μ: 52464, ~: 29861) +LibSortTest:testSortAddressesDifferential(uint256) (runs: 256, μ: 101785, ~: 30068) LibSortTest:testSortAddressesPsuedorandom() (gas: 144832) -LibSortTest:testSortAddressesPsuedorandom(uint256) (runs: 276, μ: 146330, ~: 146215) +LibSortTest:testSortAddressesPsuedorandom(uint256) (runs: 256, μ: 146555, ~: 146686) LibSortTest:testSortAddressesPsuedorandomBrutalizeUpperBits() (gas: 195855) LibSortTest:testSortAddressesReversed() (gas: 45400) LibSortTest:testSortAddressesSorted() (gas: 42376) LibSortTest:testSortBasicCase() (gas: 1210) -LibSortTest:testSortChecksumed(uint256) (runs: 276, μ: 58805, ~: 30342) -LibSortTest:testSortDifferential(uint256) (runs: 276, μ: 87427, ~: 30029) +LibSortTest:testSortChecksumed(uint256) (runs: 256, μ: 48493, ~: 28581) +LibSortTest:testSortDifferential(uint256) (runs: 256, μ: 58498, ~: 27068) LibSortTest:testSortInts() (gas: 612213) LibSortTest:testSortMostlySame() (gas: 67374) LibSortTest:testSortOriginalMostlySame() (gas: 207985) LibSortTest:testSortOriginalPsuedorandom() (gas: 284071) -LibSortTest:testSortOriginalPsuedorandom(uint256) (runs: 276, μ: 284650, ~: 283890) +LibSortTest:testSortOriginalPsuedorandom(uint256) (runs: 256, μ: 285537, ~: 285914) LibSortTest:testSortOriginalReversed() (gas: 156282) LibSortTest:testSortOriginalSorted() (gas: 142263) LibSortTest:testSortPsuedorandom() (gas: 138552) -LibSortTest:testSortPsuedorandom(uint256) (runs: 276, μ: 140236, ~: 140208) +LibSortTest:testSortPsuedorandom(uint256) (runs: 256, μ: 139995, ~: 140093) LibSortTest:testSortPsuedorandomNonuniform() (gas: 145689) -LibSortTest:testSortPsuedorandomNonuniform(uint256) (runs: 276, μ: 145257, ~: 145252) +LibSortTest:testSortPsuedorandomNonuniform(uint256) (runs: 256, μ: 145259, ~: 145547) LibSortTest:testSortReversed() (gas: 38827) LibSortTest:testSortSorted() (gas: 35785) LibSortTest:testSortTestOverhead() (gas: 102190) LibSortTest:testSortedDifferenceDifferential() (gas: 174078) -LibSortTest:testSortedDifferenceDifferential(uint256) (runs: 276, μ: 34146, ~: 33477) -LibSortTest:testSortedDifferenceDifferentialInt(uint256) (runs: 276, μ: 36968, ~: 37165) -LibSortTest:testSortedDifferenceUnionIntersection(uint256) (runs: 276, μ: 59167, ~: 52841) +LibSortTest:testSortedDifferenceDifferential(uint256) (runs: 256, μ: 35469, ~: 35599) +LibSortTest:testSortedDifferenceDifferentialInt(uint256) (runs: 256, μ: 35404, ~: 34814) +LibSortTest:testSortedDifferenceUnionIntersection(uint256) (runs: 256, μ: 58617, ~: 53177) LibSortTest:testSortedIntersectionDifferential() (gas: 208213) -LibSortTest:testSortedIntersectionDifferential(uint256) (runs: 276, μ: 33153, ~: 32275) -LibSortTest:testSortedIntersectionDifferentialInt(uint256) (runs: 276, μ: 34859, ~: 33958) +LibSortTest:testSortedIntersectionDifferential(uint256) (runs: 256, μ: 32310, ~: 31789) +LibSortTest:testSortedIntersectionDifferentialInt(uint256) (runs: 256, μ: 36207, ~: 36556) LibSortTest:testSortedUnionDifferential() (gas: 212667) -LibSortTest:testSortedUnionDifferential(uint256) (runs: 276, μ: 35260, ~: 34710) -LibSortTest:testSortedUnionDifferentialInt(uint256) (runs: 276, μ: 37153, ~: 37162) -LibSortTest:testTwoComplementConversionSort(int256,int256) (runs: 276, μ: 515, ~: 517) +LibSortTest:testSortedUnionDifferential(uint256) (runs: 256, μ: 34540, ~: 33385) +LibSortTest:testSortedUnionDifferentialInt(uint256) (runs: 256, μ: 38668, ~: 39185) +LibSortTest:testTwoComplementConversionSort(int256,int256) (runs: 256, μ: 515, ~: 514) LibSortTest:testUniquifySorted() (gas: 1710) -LibSortTest:testUniquifySorted(uint256) (runs: 276, μ: 51116, ~: 29200) +LibSortTest:testUniquifySorted(uint256) (runs: 256, μ: 46691, ~: 25226) LibSortTest:testUniquifySortedAddress() (gas: 4039) -LibSortTest:testUniquifySortedAddress(uint256) (runs: 276, μ: 59445, ~: 29699) -LibSortTest:testUniquifySortedDifferential(uint256) (runs: 276, μ: 55461, ~: 32091) +LibSortTest:testUniquifySortedAddress(uint256) (runs: 256, μ: 68607, ~: 29640) +LibSortTest:testUniquifySortedDifferential(uint256) (runs: 256, μ: 67424, ~: 33218) LibSortTest:testUniquifySortedWithEmptyArray() (gas: 506) LibSortTest:test__codesize() (gas: 21789) -LibStringTest:testAddressToHexStringZeroRightPadded(address) (runs: 276, μ: 3414, ~: 3414) +LibStringTest:testAddressToHexStringZeroRightPadded(address) (runs: 256, μ: 3414, ~: 3414) LibStringTest:testBytesToHexString() (gas: 4757) -LibStringTest:testBytesToHexString(bytes) (runs: 276, μ: 699892, ~: 568303) +LibStringTest:testBytesToHexString(bytes) (runs: 256, μ: 654635, ~: 568240) LibStringTest:testBytesToHexStringNoPrefix() (gas: 4467) -LibStringTest:testBytesToHexStringNoPrefix(bytes) (runs: 276, μ: 734588, ~: 568693) +LibStringTest:testBytesToHexStringNoPrefix(bytes) (runs: 256, μ: 774795, ~: 569054) LibStringTest:testContains() (gas: 43944) LibStringTest:testFromAddressToHexString() (gas: 3115) LibStringTest:testFromAddressToHexStringChecksummed() (gas: 35195) -LibStringTest:testFromAddressToHexStringChecksummedDifferential(uint256) (runs: 276, μ: 648548, ~: 556936) +LibStringTest:testFromAddressToHexStringChecksummedDifferential(uint256) (runs: 256, μ: 671956, ~: 556937) LibStringTest:testFromAddressToHexStringWithLeadingZeros() (gas: 3091) -LibStringTest:testHexStringNoPrefixVariants(uint256,uint256) (runs: 276, μ: 767932, ~: 566570) +LibStringTest:testHexStringNoPrefixVariants(uint256,uint256) (runs: 256, μ: 665332, ~: 566248) LibStringTest:testNormalizeSmallString() (gas: 1365) -LibStringTest:testNormalizeSmallString(bytes32) (runs: 276, μ: 3030, ~: 4213) +LibStringTest:testNormalizeSmallString(bytes32) (runs: 256, μ: 3186, ~: 4213) LibStringTest:testStringConcat() (gas: 4010) -LibStringTest:testStringConcat(string,string) (runs: 276, μ: 656905, ~: 548506) +LibStringTest:testStringConcat(string,string) (runs: 256, μ: 622012, ~: 548499) LibStringTest:testStringConcatOriginal() (gas: 4632) LibStringTest:testStringDirectReturn() (gas: 6960) -LibStringTest:testStringDirectReturn(string) (runs: 276, μ: 3083, ~: 3078) +LibStringTest:testStringDirectReturn(string) (runs: 256, μ: 3082, ~: 2995) LibStringTest:testStringEndsWith() (gas: 2807) -LibStringTest:testStringEndsWith(uint256) (runs: 276, μ: 718535, ~: 578772) -LibStringTest:testStringEq(string,string) (runs: 276, μ: 1609, ~: 1609) +LibStringTest:testStringEndsWith(uint256) (runs: 256, μ: 648469, ~: 577568) +LibStringTest:testStringEq(string,string) (runs: 256, μ: 1608, ~: 1609) LibStringTest:testStringEqs() (gas: 2013) LibStringTest:testStringEscapeHTML() (gas: 8427) -LibStringTest:testStringEscapeHTML(uint256) (runs: 276, μ: 739635, ~: 589422) +LibStringTest:testStringEscapeHTML(uint256) (runs: 256, μ: 743327, ~: 595879) LibStringTest:testStringEscapeJSON() (gas: 39645) LibStringTest:testStringEscapeJSONHexEncode() (gas: 671692) LibStringTest:testStringIndexOf() (gas: 17420) -LibStringTest:testStringIndexOf(uint256) (runs: 276, μ: 721006, ~: 589143) +LibStringTest:testStringIndexOf(uint256) (runs: 256, μ: 680297, ~: 593014) LibStringTest:testStringIndicesOf() (gas: 11700) -LibStringTest:testStringIndicesOf(uint256) (runs: 276, μ: 669305, ~: 591549) +LibStringTest:testStringIndicesOf(uint256) (runs: 256, μ: 736026, ~: 594903) LibStringTest:testStringIs7BitASCII() (gas: 205168) -LibStringTest:testStringIs7BitASCIIDifferential(bytes) (runs: 276, μ: 639628, ~: 547885) +LibStringTest:testStringIs7BitASCIIDifferential(bytes) (runs: 256, μ: 669764, ~: 547877) LibStringTest:testStringLastIndexOf() (gas: 24042) -LibStringTest:testStringLastIndexOf(uint256) (runs: 276, μ: 700377, ~: 591521) +LibStringTest:testStringLastIndexOf(uint256) (runs: 256, μ: 639469, ~: 588901) LibStringTest:testStringLowerDifferential() (gas: 3374909) -LibStringTest:testStringLowerDifferential(string) (runs: 276, μ: 8376, ~: 8285) +LibStringTest:testStringLowerDifferential(string) (runs: 256, μ: 8295, ~: 7997) LibStringTest:testStringLowerOriginal() (gas: 1264) LibStringTest:testStringPackAndUnpackOne() (gas: 692671) -LibStringTest:testStringPackAndUnpackOne(string) (runs: 276, μ: 632293, ~: 547284) -LibStringTest:testStringPackAndUnpackOneDifferential(string) (runs: 276, μ: 705590, ~: 547027) +LibStringTest:testStringPackAndUnpackOne(string) (runs: 256, μ: 627823, ~: 547300) +LibStringTest:testStringPackAndUnpackOneDifferential(string) (runs: 256, μ: 709707, ~: 547027) LibStringTest:testStringPackAndUnpackTwo() (gas: 844729) -LibStringTest:testStringPackAndUnpackTwo(string,string) (runs: 276, μ: 636442, ~: 548567) -LibStringTest:testStringPackAndUnpackTwoDifferential(string,string) (runs: 276, μ: 657386, ~: 548077) +LibStringTest:testStringPackAndUnpackTwo(string,string) (runs: 256, μ: 643106, ~: 548567) +LibStringTest:testStringPackAndUnpackTwoDifferential(string,string) (runs: 256, μ: 655039, ~: 548077) LibStringTest:testStringRepeat() (gas: 4904) -LibStringTest:testStringRepeat(string,uint256) (runs: 276, μ: 718949, ~: 550000) +LibStringTest:testStringRepeat(string,uint256) (runs: 256, μ: 643493, ~: 550204) LibStringTest:testStringRepeatOriginal() (gas: 9598) -LibStringTest:testStringReplace(uint256) (runs: 276, μ: 708567, ~: 597273) +LibStringTest:testStringReplace(uint256) (runs: 256, μ: 626734, ~: 595269) LibStringTest:testStringReplaceLong() (gas: 8529) LibStringTest:testStringReplaceMedium() (gas: 7559) LibStringTest:testStringReplaceShort() (gas: 12307) LibStringTest:testStringRuneCount() (gas: 2963738) -LibStringTest:testStringRuneCountDifferential(string) (runs: 276, μ: 6171, ~: 6049) +LibStringTest:testStringRuneCountDifferential(string) (runs: 256, μ: 6107, ~: 5884) LibStringTest:testStringSlice() (gas: 9262) -LibStringTest:testStringSlice(uint256) (runs: 276, μ: 703443, ~: 586841) +LibStringTest:testStringSlice(uint256) (runs: 256, μ: 645788, ~: 592144) LibStringTest:testStringSplit() (gas: 20287) -LibStringTest:testStringSplit(uint256) (runs: 276, μ: 743542, ~: 596331) +LibStringTest:testStringSplit(uint256) (runs: 256, μ: 699923, ~: 589886) LibStringTest:testStringStartsWith() (gas: 2589) -LibStringTest:testStringStartsWith(uint256) (runs: 276, μ: 681769, ~: 580128) +LibStringTest:testStringStartsWith(uint256) (runs: 256, μ: 657809, ~: 580265) LibStringTest:testStringUpperDifferential() (gas: 3599376) -LibStringTest:testStringUpperDifferential(string) (runs: 276, μ: 8375, ~: 8284) +LibStringTest:testStringUpperDifferential(string) (runs: 256, μ: 8294, ~: 7996) LibStringTest:testStringUpperOriginal() (gas: 1262) LibStringTest:testToHexStringFixedLengthInsufficientLength() (gas: 3395) LibStringTest:testToHexStringFixedLengthPositiveNumberLong() (gas: 3655) LibStringTest:testToHexStringFixedLengthPositiveNumberShort() (gas: 983) LibStringTest:testToHexStringFixedLengthUint256Max() (gas: 3701) -LibStringTest:testToHexStringFixedLengthZeroRightPadded(uint256,uint256) (runs: 276, μ: 8066, ~: 6063) +LibStringTest:testToHexStringFixedLengthZeroRightPadded(uint256,uint256) (runs: 256, μ: 8148, ~: 5019) LibStringTest:testToHexStringPositiveNumber() (gas: 888) LibStringTest:testToHexStringUint256Max() (gas: 3442) LibStringTest:testToHexStringZero() (gas: 783) -LibStringTest:testToHexStringZeroRightPadded(uint256) (runs: 276, μ: 1903, ~: 1344) +LibStringTest:testToHexStringZeroRightPadded(uint256) (runs: 256, μ: 2015, ~: 1261) LibStringTest:testToMinimalHexStringNoPrefixPositiveNumber() (gas: 3426) LibStringTest:testToMinimalHexStringNoPrefixUint256Max() (gas: 3402) LibStringTest:testToMinimalHexStringNoPrefixZero() (gas: 853) -LibStringTest:testToMinimalHexStringNoPrefixZeroRightPadded(uint256) (runs: 276, μ: 1924, ~: 1365) +LibStringTest:testToMinimalHexStringNoPrefixZeroRightPadded(uint256) (runs: 256, μ: 2030, ~: 1282) LibStringTest:testToMinimalHexStringPositiveNumber() (gas: 3556) LibStringTest:testToMinimalHexStringUint256Max() (gas: 3448) LibStringTest:testToMinimalHexStringZero() (gas: 829) -LibStringTest:testToMinimalHexStringZeroRightPadded(uint256) (runs: 276, μ: 1951, ~: 1391) +LibStringTest:testToMinimalHexStringZeroRightPadded(uint256) (runs: 256, μ: 2062, ~: 1308) LibStringTest:testToSmallString() (gas: 4426) LibStringTest:testToStringPositiveNumber() (gas: 951) LibStringTest:testToStringPositiveNumberBrutalized() (gas: 762225) -LibStringTest:testToStringSignedDifferential(int256) (runs: 276, μ: 670060, ~: 549025) +LibStringTest:testToStringSignedDifferential(int256) (runs: 256, μ: 632034, ~: 547786) LibStringTest:testToStringSignedGas() (gas: 7283) -LibStringTest:testToStringSignedMemory(int256) (runs: 276, μ: 646459, ~: 547623) +LibStringTest:testToStringSignedMemory(int256) (runs: 256, μ: 651761, ~: 547398) LibStringTest:testToStringSignedOriginalGas() (gas: 9817) LibStringTest:testToStringUint256Max() (gas: 6665) LibStringTest:testToStringUint256MaxBrutalized() (gas: 558739) LibStringTest:testToStringZero() (gas: 677) LibStringTest:testToStringZeroBrutalized() (gas: 546679) -LibStringTest:testToStringZeroRightPadded(uint256) (runs: 276, μ: 590576, ~: 547497) +LibStringTest:testToStringZeroRightPadded(uint256) (runs: 256, μ: 625068, ~: 547512) LibStringTest:test__codesize() (gas: 40904) LibZipTest:testCdCompress() (gas: 126842) -LibZipTest:testCdCompressDecompress(bytes) (runs: 276, μ: 753677, ~: 656548) -LibZipTest:testCdCompressDecompress(uint256) (runs: 276, μ: 785170, ~: 672008) +LibZipTest:testCdCompressDecompress(bytes) (runs: 256, μ: 765577, ~: 655975) +LibZipTest:testCdCompressDecompress(uint256) (runs: 256, μ: 775456, ~: 674729) LibZipTest:testCdDecompressOnInvalidInput() (gas: 1397) LibZipTest:testCdFallback() (gas: 5647022) -LibZipTest:testCdFallback(bytes,uint256) (runs: 276, μ: 1163345, ~: 1059542) -LibZipTest:testCdFallbackDecompressor(bytes) (runs: 276, μ: 121531, ~: 117737) -LibZipTest:testCdFallbackDecompressor(uint256) (runs: 276, μ: 171079, ~: 159787) -LibZipTest:testCdFallbackMaskTrick(uint256,uint256) (runs: 276, μ: 590, ~: 585) -LibZipTest:testDecompressWontRevert(bytes) (runs: 276, μ: 736465, ~: 634971) +LibZipTest:testCdFallback(bytes,uint256) (runs: 256, μ: 1217584, ~: 1057632) +LibZipTest:testCdFallbackDecompressor(bytes) (runs: 256, μ: 121338, ~: 117707) +LibZipTest:testCdFallbackDecompressor(uint256) (runs: 256, μ: 166802, ~: 157428) +LibZipTest:testCdFallbackMaskTrick(uint256,uint256) (runs: 256, μ: 611, ~: 585) +LibZipTest:testDecompressWontRevert(bytes) (runs: 256, μ: 752834, ~: 634713) LibZipTest:testFlzCompressDecompress() (gas: 1250287) -LibZipTest:testFlzCompressDecompress(bytes) (runs: 276, μ: 815044, ~: 675449) +LibZipTest:testFlzCompressDecompress(bytes) (runs: 256, μ: 818045, ~: 674946) LibZipTest:testFlzCompressDecompress2() (gas: 759322) LibZipTest:test__codesize() (gas: 20356) MerkleProofLibTest:testEmptyCalldataHelpers() (gas: 985) -MerkleProofLibTest:testVerifyMultiProof(bool,bool,bool,bool,bytes32) (runs: 276, μ: 747330, ~: 642905) -MerkleProofLibTest:testVerifyMultiProofForHeightOneTree(bool,bool,bool,bool,bool,bool[]) (runs: 276, μ: 37130, ~: 37667) -MerkleProofLibTest:testVerifyMultiProofForHeightTwoTree(bool,bool,bool,bool,bool,bytes32) (runs: 276, μ: 6533, ~: 6492) -MerkleProofLibTest:testVerifyMultiProofForSingleLeaf(bytes32[],uint256) (runs: 276, μ: 929544, ~: 803254) +MerkleProofLibTest:testVerifyMultiProof(bool,bool,bool,bool,bytes32) (runs: 256, μ: 761924, ~: 642775) +MerkleProofLibTest:testVerifyMultiProofForHeightOneTree(bool,bool,bool,bool,bool,bool[]) (runs: 256, μ: 37115, ~: 37667) +MerkleProofLibTest:testVerifyMultiProofForHeightTwoTree(bool,bool,bool,bool,bool,bytes32) (runs: 256, μ: 6517, ~: 6488) +MerkleProofLibTest:testVerifyMultiProofForSingleLeaf(bytes32[],uint256) (runs: 256, μ: 894843, ~: 796160) MerkleProofLibTest:testVerifyMultiProofIsInvalid() (gas: 642790) MerkleProofLibTest:testVerifyMultiProofIsValid() (gas: 644192) MerkleProofLibTest:testVerifyMultiProofMalicious() (gas: 7923) -MerkleProofLibTest:testVerifyProof(bytes32[],uint256) (runs: 276, μ: 899388, ~: 776840) -MerkleProofLibTest:testVerifyProofBasicCase(bool,bool,bool,bytes32) (runs: 276, μ: 4050, ~: 3905) +MerkleProofLibTest:testVerifyProof(bytes32[],uint256) (runs: 256, μ: 932882, ~: 787481) +MerkleProofLibTest:testVerifyProofBasicCase(bool,bool,bool,bytes32) (runs: 256, μ: 4055, ~: 4200) MerkleProofLibTest:testVerifyProofBasicCaseIsInvalid() (gas: 3625) MerkleProofLibTest:testVerifyProofBasicCaseIsValid() (gas: 3589) -MerkleProofLibTest:testVerifyProofForHeightOneTree(bool,bool,bool,bool) (runs: 276, μ: 2701, ~: 2970) +MerkleProofLibTest:testVerifyProofForHeightOneTree(bool,bool,bool,bool) (runs: 256, μ: 2696, ~: 2970) MerkleProofLibTest:test__codesize() (gas: 11066) -MetadataReaderLibTest:testBoundsCheckDifferential(uint256) (runs: 276, μ: 25599, ~: 25585) +MetadataReaderLibTest:testBoundsCheckDifferential(uint256) (runs: 256, μ: 25549, ~: 25524) MetadataReaderLibTest:testReadBytes32String() (gas: 660293) MetadataReaderLibTest:testReadBytes32StringTruncated() (gas: 776753) -MetadataReaderLibTest:testReadString(uint256) (runs: 276, μ: 831204, ~: 717607) +MetadataReaderLibTest:testReadString(uint256) (runs: 256, μ: 840871, ~: 719510) MetadataReaderLibTest:testReadStringChopped() (gas: 269520) -MetadataReaderLibTest:testReadStringTruncated(uint256) (runs: 276, μ: 813801, ~: 704979) +MetadataReaderLibTest:testReadStringTruncated(uint256) (runs: 256, μ: 782839, ~: 705410) MetadataReaderLibTest:testReadUint() (gas: 911216) -MetadataReaderLibTest:testReadUint(uint256) (runs: 276, μ: 46954, ~: 47092) +MetadataReaderLibTest:testReadUint(uint256) (runs: 256, μ: 46034, ~: 47095) MetadataReaderLibTest:test__codesize() (gas: 7886) -MinHeapLibTest:testHeapEnqueue(uint256) (runs: 276, μ: 189700, ~: 188214) -MinHeapLibTest:testHeapEnqueue2(uint256) (runs: 276, μ: 563579, ~: 333861) +MinHeapLibTest:testHeapEnqueue(uint256) (runs: 256, μ: 187241, ~: 182919) +MinHeapLibTest:testHeapEnqueue2(uint256) (runs: 256, μ: 629201, ~: 439632) MinHeapLibTest:testHeapEnqueueGas() (gas: 854823) -MinHeapLibTest:testHeapEnqueueZeroMaxLengthReverts(uint256) (runs: 276, μ: 49386, ~: 67805) -MinHeapLibTest:testHeapPSiftTrick(uint256,uint256,uint256) (runs: 276, μ: 727, ~: 561) -MinHeapLibTest:testHeapPushAndPop(uint256) (runs: 276, μ: 114585, ~: 124635) -MinHeapLibTest:testHeapPushPop(uint256) (runs: 276, μ: 249642, ~: 236899) -MinHeapLibTest:testHeapPushPopLength(uint256) (runs: 276, μ: 917742, ~: 783803) -MinHeapLibTest:testHeapReplace(uint256) (runs: 276, μ: 289460, ~: 276786) -MinHeapLibTest:testHeapReplaceOrPopEmptyHeapReverts(uint256) (runs: 276, μ: 44319, ~: 50821) -MinHeapLibTest:testHeapRoot(uint256) (runs: 276, μ: 47144, ~: 27939) -MinHeapLibTest:testHeapSmallest(uint256) (runs: 276, μ: 1394244, ~: 1063911) +MinHeapLibTest:testHeapEnqueueZeroMaxLengthReverts(uint256) (runs: 256, μ: 47297, ~: 28666) +MinHeapLibTest:testHeapPSiftTrick(uint256,uint256,uint256) (runs: 256, μ: 730, ~: 561) +MinHeapLibTest:testHeapPushAndPop(uint256) (runs: 256, μ: 104981, ~: 99519) +MinHeapLibTest:testHeapPushPop(uint256) (runs: 256, μ: 234166, ~: 230967) +MinHeapLibTest:testHeapPushPopLength(uint256) (runs: 256, μ: 901527, ~: 785258) +MinHeapLibTest:testHeapReplace(uint256) (runs: 256, μ: 296522, ~: 302557) +MinHeapLibTest:testHeapReplaceOrPopEmptyHeapReverts(uint256) (runs: 256, μ: 46110, ~: 40051) +MinHeapLibTest:testHeapRoot(uint256) (runs: 256, μ: 48835, ~: 57667) +MinHeapLibTest:testHeapSmallest(uint256) (runs: 256, μ: 1736054, ~: 1264272) MinHeapLibTest:testHeapSmallestGas() (gas: 50027291) -MinHeapLibTest:testMemHeapEnqueue(uint256) (runs: 276, μ: 856611, ~: 770343) -MinHeapLibTest:testMemHeapEnqueue2(uint256) (runs: 276, μ: 797233, ~: 721742) +MinHeapLibTest:testMemHeapEnqueue(uint256) (runs: 256, μ: 845257, ~: 812111) +MinHeapLibTest:testMemHeapEnqueue2(uint256) (runs: 256, μ: 812882, ~: 712485) MinHeapLibTest:testMemHeapEnqueueGas() (gas: 233998) -MinHeapLibTest:testMemHeapEnqueueZeroMaxLengthReverts(uint256) (runs: 276, μ: 25234, ~: 24207) -MinHeapLibTest:testMemHeapPushAndPop(uint256) (runs: 276, μ: 1109844, ~: 947678) +MinHeapLibTest:testMemHeapEnqueueZeroMaxLengthReverts(uint256) (runs: 256, μ: 25255, ~: 24213) +MinHeapLibTest:testMemHeapPushAndPop(uint256) (runs: 256, μ: 976870, ~: 919473) MinHeapLibTest:testMemHeapPushGas() (gas: 32075) -MinHeapLibTest:testMemHeapPushPop(uint256) (runs: 276, μ: 1343057, ~: 1219248) -MinHeapLibTest:testMemHeapPushPopLength(uint256) (runs: 276, μ: 776054, ~: 682474) -MinHeapLibTest:testMemHeapReplace(uint256) (runs: 276, μ: 853723, ~: 781955) -MinHeapLibTest:testMemHeapReplaceOrPopEmptyHeapReverts(uint256) (runs: 276, μ: 26136, ~: 26554) -MinHeapLibTest:testMemHeapRoot(uint256) (runs: 276, μ: 721411, ~: 634624) -MinHeapLibTest:testMemHeapSmallest(uint256) (runs: 276, μ: 849688, ~: 725885) +MinHeapLibTest:testMemHeapPushPop(uint256) (runs: 256, μ: 1449023, ~: 1126629) +MinHeapLibTest:testMemHeapPushPopLength(uint256) (runs: 256, μ: 747233, ~: 669843) +MinHeapLibTest:testMemHeapReplace(uint256) (runs: 256, μ: 871962, ~: 799417) +MinHeapLibTest:testMemHeapReplaceOrPopEmptyHeapReverts(uint256) (runs: 256, μ: 26033, ~: 25716) +MinHeapLibTest:testMemHeapRoot(uint256) (runs: 256, μ: 703745, ~: 634474) +MinHeapLibTest:testMemHeapSmallest(uint256) (runs: 256, μ: 819387, ~: 727094) MinHeapLibTest:testMemHeapSmallestGas() (gas: 2874313) MinHeapLibTest:test__codesize() (gas: 13872) MulticallableTest:testMulticallableBenchmark() (gas: 29588) MulticallableTest:testMulticallableOriginalBenchmark() (gas: 38826) MulticallableTest:testMulticallablePreservesMsgSender() (gas: 11193) MulticallableTest:testMulticallableReturnDataIsProperlyEncoded() (gas: 11667) -MulticallableTest:testMulticallableReturnDataIsProperlyEncoded(string,string,uint256) (runs: 276, μ: 9384, ~: 7471) -MulticallableTest:testMulticallableReturnDataIsProperlyEncoded(uint256,uint256,uint256,uint256) (runs: 276, μ: 11813, ~: 11813) +MulticallableTest:testMulticallableReturnDataIsProperlyEncoded(string,string,uint256) (runs: 256, μ: 9682, ~: 11495) +MulticallableTest:testMulticallableReturnDataIsProperlyEncoded(uint256,uint256,uint256,uint256) (runs: 256, μ: 11813, ~: 11813) MulticallableTest:testMulticallableRevertWithCustomError() (gas: 11841) MulticallableTest:testMulticallableRevertWithMessage() (gas: 13513) -MulticallableTest:testMulticallableRevertWithMessage(string) (runs: 276, μ: 14129, ~: 14121) +MulticallableTest:testMulticallableRevertWithMessage(string) (runs: 256, μ: 14126, ~: 13974) MulticallableTest:testMulticallableRevertWithNothing() (gas: 11703) MulticallableTest:testMulticallableWithNoData() (gas: 6322) MulticallableTest:test__codesize() (gas: 8532) OwnableRolesTest:testBytecodeSize() (gas: 350635) -OwnableRolesTest:testGrantAndRemoveRolesDirect(address,uint256,uint256) (runs: 276, μ: 39916, ~: 40750) -OwnableRolesTest:testGrantAndRevokeOrRenounceRoles(address,bool,bool,bool,uint256,uint256) (runs: 276, μ: 26850, ~: 12212) +OwnableRolesTest:testGrantAndRemoveRolesDirect(address,uint256,uint256) (runs: 256, μ: 38750, ~: 40750) +OwnableRolesTest:testGrantAndRevokeOrRenounceRoles(address,bool,bool,bool,uint256,uint256) (runs: 256, μ: 27539, ~: 28201) OwnableRolesTest:testGrantRoles() (gas: 36136) OwnableRolesTest:testHandoverOwnership() (gas: 32394) -OwnableRolesTest:testHandoverOwnership(address) (runs: 276, μ: 32437, ~: 32420) +OwnableRolesTest:testHandoverOwnership(address) (runs: 256, μ: 32436, ~: 32420) OwnableRolesTest:testHandoverOwnershipAfterExpiration() (gas: 36947) OwnableRolesTest:testHandoverOwnershipBeforeExpiration() (gas: 28733) OwnableRolesTest:testHandoverOwnershipRevertsIfCompleteIsNotOwner() (gas: 35621) OwnableRolesTest:testHandoverOwnershipWithCancellation() (gas: 30772) -OwnableRolesTest:testHasAllRoles(address,uint256,uint256,uint256,bool) (runs: 276, μ: 33584, ~: 33588) -OwnableRolesTest:testHasAnyRole(address,uint256,uint256) (runs: 276, μ: 33086, ~: 33375) +OwnableRolesTest:testHasAllRoles(address,uint256,uint256,uint256,bool) (runs: 256, μ: 33583, ~: 33580) +OwnableRolesTest:testHasAnyRole(address,uint256,uint256) (runs: 256, μ: 32753, ~: 33375) OwnableRolesTest:testInitializeOwnerDirect() (gas: 16738) -OwnableRolesTest:testOnlyOwnerModifier(address,bool) (runs: 276, μ: 22207, ~: 22207) +OwnableRolesTest:testOnlyOwnerModifier(address,bool) (runs: 256, μ: 23708, ~: 32884) OwnableRolesTest:testOnlyOwnerOrRolesModifier() (gas: 36596) -OwnableRolesTest:testOnlyOwnerOrRolesModifier(address,bool,uint256,uint256) (runs: 276, μ: 56654, ~: 57960) -OwnableRolesTest:testOnlyRolesModifier(address,uint256,uint256) (runs: 276, μ: 55644, ~: 57903) -OwnableRolesTest:testOnlyRolesOrOwnerModifier(address,bool,uint256,uint256) (runs: 276, μ: 57610, ~: 58396) +OwnableRolesTest:testOnlyOwnerOrRolesModifier(address,bool,uint256,uint256) (runs: 256, μ: 55656, ~: 57960) +OwnableRolesTest:testOnlyRolesModifier(address,uint256,uint256) (runs: 256, μ: 53797, ~: 57903) +OwnableRolesTest:testOnlyRolesOrOwnerModifier(address,bool,uint256,uint256) (runs: 256, μ: 56711, ~: 58396) OwnableRolesTest:testOrdinalsFromRoles() (gas: 3610415) -OwnableRolesTest:testOrdinalsFromRoles(uint256) (runs: 276, μ: 56150, ~: 38496) +OwnableRolesTest:testOrdinalsFromRoles(uint256) (runs: 256, μ: 70248, ~: 33705) OwnableRolesTest:testOwnershipHandoverValidForDefaultValue() (gas: 5825) OwnableRolesTest:testRenounceOwnership() (gas: 12921) OwnableRolesTest:testRolesFromOrdinals() (gas: 651259) -OwnableRolesTest:testRolesFromOrdinals(uint8[]) (runs: 276, μ: 83704, ~: 85328) +OwnableRolesTest:testRolesFromOrdinals(uint8[]) (runs: 256, μ: 78088, ~: 74221) OwnableRolesTest:testSetOwnerDirect() (gas: 17790) -OwnableRolesTest:testSetOwnerDirect(address) (runs: 276, μ: 17897, ~: 17915) -OwnableRolesTest:testSetRolesDirect(uint256) (runs: 276, μ: 99902, ~: 100168) +OwnableRolesTest:testSetOwnerDirect(address) (runs: 256, μ: 17915, ~: 17915) +OwnableRolesTest:testSetRolesDirect(uint256) (runs: 256, μ: 99605, ~: 100176) OwnableRolesTest:testTransferOwnership() (gas: 19671) -OwnableRolesTest:testTransferOwnership(address,bool,bool) (runs: 276, μ: 14574, ~: 13109) +OwnableRolesTest:testTransferOwnership(address,bool,bool) (runs: 256, μ: 14512, ~: 12735) OwnableRolesTest:test__codesize() (gas: 21827) OwnableTest:testBytecodeSize() (gas: 235158) OwnableTest:testHandoverOwnership() (gas: 32127) -OwnableTest:testHandoverOwnership(address) (runs: 276, μ: 32152, ~: 32136) +OwnableTest:testHandoverOwnership(address) (runs: 256, μ: 32149, ~: 32136) OwnableTest:testHandoverOwnershipAfterExpiration() (gas: 36725) OwnableTest:testHandoverOwnershipBeforeExpiration() (gas: 28582) OwnableTest:testHandoverOwnershipRevertsIfCompleteIsNotOwner() (gas: 35355) OwnableTest:testHandoverOwnershipWithCancellation() (gas: 30416) OwnableTest:testInitializeOwnerDirect() (gas: 16613) -OwnableTest:testOnlyOwnerModifier(address,bool) (runs: 276, μ: 22119, ~: 22119) +OwnableTest:testOnlyOwnerModifier(address,bool) (runs: 256, μ: 23541, ~: 32829) OwnableTest:testOwnershipHandoverValidForDefaultValue() (gas: 5737) OwnableTest:testRenounceOwnership() (gas: 12755) OwnableTest:testSetOwnerDirect() (gas: 17700) -OwnableTest:testSetOwnerDirect(address) (runs: 276, μ: 17756, ~: 17826) +OwnableTest:testSetOwnerDirect(address) (runs: 256, μ: 17807, ~: 17826) OwnableTest:testTransferOwnership() (gas: 19481) -OwnableTest:testTransferOwnership(address,bool,bool) (runs: 276, μ: 14327, ~: 12849) +OwnableTest:testTransferOwnership(address,bool,bool) (runs: 256, μ: 14268, ~: 12508) OwnableTest:test__codesize() (gas: 11007) P256Test:testP256VerifyMalleableRIPPrecompile() (gas: 672333) P256Test:testP256VerifyMalleableVerifier() (gas: 675147) P256Test:testP256VerifyNonMalleableRIPPrecompile() (gas: 670264) P256Test:testP256VerifyNonMalleableVerifier() (gas: 673059) -P256Test:testP256VerifyNotDeployedReverts(bytes32,uint256,uint256,uint256,uint256,bool) (runs: 276, μ: 9600, ~: 9605) +P256Test:testP256VerifyNotDeployedReverts(bytes32,uint256,uint256,uint256,uint256,bool) (runs: 256, μ: 9600, ~: 9605) P256Test:test__codesize() (gas: 6940) ReceiverTest:testETHReceived() (gas: 9643) ReceiverTest:testOnERC1155BatchReceived() (gas: 49189) @@ -1007,8 +1040,8 @@ ReceiverTest:testOnERC721Received() (gas: 64589) ReceiverTest:test__codesize() (gas: 3048) RedBlackTreeLibTest:testRedBlackTreeBenchUint160() (gas: 3429423) RedBlackTreeLibTest:testRedBlackTreeBenchUint256() (gas: 5843094) -RedBlackTreeLibTest:testRedBlackTreeInsertAndRemove(uint256) (runs: 276, μ: 622071, ~: 531567) -RedBlackTreeLibTest:testRedBlackTreeInsertAndRemove2(uint256) (runs: 276, μ: 393959, ~: 368735) +RedBlackTreeLibTest:testRedBlackTreeInsertAndRemove(uint256) (runs: 256, μ: 681769, ~: 525480) +RedBlackTreeLibTest:testRedBlackTreeInsertAndRemove2(uint256) (runs: 256, μ: 423983, ~: 390187) RedBlackTreeLibTest:testRedBlackTreeInsertAndRemove3() (gas: 21536500) RedBlackTreeLibTest:testRedBlackTreeInsertBenchStep() (gas: 3703676) RedBlackTreeLibTest:testRedBlackTreeInsertBenchUint160() (gas: 3469294) @@ -1017,16 +1050,16 @@ RedBlackTreeLibTest:testRedBlackTreeInsertOneGas() (gas: 45564) RedBlackTreeLibTest:testRedBlackTreeInsertTenGas() (gas: 282751) RedBlackTreeLibTest:testRedBlackTreeInsertThreeGas() (gas: 96193) RedBlackTreeLibTest:testRedBlackTreeInsertTwoGas() (gas: 69797) -RedBlackTreeLibTest:testRedBlackTreeNearest(uint256) (runs: 276, μ: 258779, ~: 249388) -RedBlackTreeLibTest:testRedBlackTreeNearestAfter(uint256) (runs: 276, μ: 266258, ~: 267605) -RedBlackTreeLibTest:testRedBlackTreeNearestBefore(uint256) (runs: 276, μ: 234924, ~: 219698) +RedBlackTreeLibTest:testRedBlackTreeNearest(uint256) (runs: 256, μ: 227989, ~: 224886) +RedBlackTreeLibTest:testRedBlackTreeNearestAfter(uint256) (runs: 256, μ: 252919, ~: 248782) +RedBlackTreeLibTest:testRedBlackTreeNearestBefore(uint256) (runs: 256, μ: 230953, ~: 195465) RedBlackTreeLibTest:testRedBlackTreePointers() (gas: 91781) RedBlackTreeLibTest:testRedBlackTreeRejectsEmptyValue() (gas: 3238) RedBlackTreeLibTest:testRedBlackTreeRemoveViaPointer() (gas: 58172) RedBlackTreeLibTest:testRedBlackTreeTreeFullReverts() (gas: 50335) RedBlackTreeLibTest:testRedBlackTreeTryInsertAndRemove() (gas: 56086) RedBlackTreeLibTest:testRedBlackTreeValues() (gas: 191623) -RedBlackTreeLibTest:testRedBlackTreeValues(uint256) (runs: 276, μ: 424397, ~: 243583) +RedBlackTreeLibTest:testRedBlackTreeValues(uint256) (runs: 256, μ: 415386, ~: 267073) RedBlackTreeLibTest:test__codesize() (gas: 13078) ReentrancyGuardTest:testRecursiveDirectUnguardedCall() (gas: 34276) ReentrancyGuardTest:testRecursiveIndirectUnguardedCall() (gas: 47727) @@ -1037,20 +1070,20 @@ ReentrancyGuardTest:testRevertRecursiveIndirectGuardedCall() (gas: 56529) ReentrancyGuardTest:testRevertRemoteCallback() (gas: 56230) ReentrancyGuardTest:test__codesize() (gas: 4403) SSTORE2Test:testReadInvalidPointerCustomBoundsReverts() (gas: 3197) -SSTORE2Test:testReadInvalidPointerCustomBoundsReverts(address,uint256,uint256) (runs: 276, μ: 763948, ~: 633727) +SSTORE2Test:testReadInvalidPointerCustomBoundsReverts(address,uint256,uint256) (runs: 256, μ: 761829, ~: 633861) SSTORE2Test:testReadInvalidPointerCustomStartBoundReverts() (gas: 3241) -SSTORE2Test:testReadInvalidPointerCustomStartBoundReverts(address,uint256) (runs: 276, μ: 734184, ~: 633407) -SSTORE2Test:testReadInvalidPointerRevert(address) (runs: 276, μ: 710712, ~: 633534) +SSTORE2Test:testReadInvalidPointerCustomStartBoundReverts(address,uint256) (runs: 256, μ: 754567, ~: 634000) +SSTORE2Test:testReadInvalidPointerRevert(address) (runs: 256, μ: 721675, ~: 633601) SSTORE2Test:testReadInvalidPointerReverts() (gas: 3237) SSTORE2Test:testWriteRead() (gas: 52494) -SSTORE2Test:testWriteRead(bytes) (runs: 276, μ: 808995, ~: 670028) +SSTORE2Test:testWriteRead(bytes) (runs: 256, μ: 789763, ~: 669492) SSTORE2Test:testWriteReadCustomBounds() (gas: 34094) -SSTORE2Test:testWriteReadCustomBounds(bytes,uint256,uint256) (runs: 276, μ: 752669, ~: 666504) -SSTORE2Test:testWriteReadCustomBoundsOutOfRangeReverts(bytes,uint256,uint256) (runs: 276, μ: 729150, ~: 671815) +SSTORE2Test:testWriteReadCustomBounds(bytes,uint256,uint256) (runs: 256, μ: 711455, ~: 666333) +SSTORE2Test:testWriteReadCustomBoundsOutOfRangeReverts(bytes,uint256,uint256) (runs: 256, μ: 803145, ~: 671474) SSTORE2Test:testWriteReadCustomStartBound() (gas: 34104) -SSTORE2Test:testWriteReadCustomStartBound(bytes,uint256) (runs: 276, μ: 789884, ~: 669699) -SSTORE2Test:testWriteReadCustomStartBoundOutOfRangeReverts(bytes,uint256) (runs: 276, μ: 725212, ~: 671497) -SSTORE2Test:testWriteReadDeterministic(bytes) (runs: 276, μ: 841401, ~: 735814) +SSTORE2Test:testWriteReadCustomStartBound(bytes,uint256) (runs: 256, μ: 806089, ~: 670260) +SSTORE2Test:testWriteReadCustomStartBoundOutOfRangeReverts(bytes,uint256) (runs: 256, μ: 787057, ~: 671502) +SSTORE2Test:testWriteReadDeterministic(bytes) (runs: 256, μ: 818305, ~: 735494) SSTORE2Test:testWriteReadEmptyBound() (gas: 33847) SSTORE2Test:testWriteReadEmptyOutOfBoundsReverts() (gas: 36507) SSTORE2Test:testWriteReadFullBoundedRead() (gas: 52534) @@ -1059,102 +1092,102 @@ SSTORE2Test:testWriteReadOutOfBoundsReverts() (gas: 36485) SSTORE2Test:testWriteReadOutOfStartBoundReverts() (gas: 36489) SSTORE2Test:testWriteWithTooBigDataReverts() (gas: 97302815) SSTORE2Test:test__codesize() (gas: 8484) -SafeCastLibTest:testSafeCastInt256ToInt(int256,uint256) (runs: 276, μ: 19909, ~: 24977) +SafeCastLibTest:testSafeCastInt256ToInt(int256,uint256) (runs: 256, μ: 17433, ~: 24813) SafeCastLibTest:testSafeCastInt256ToIntBench() (gas: 341694) -SafeCastLibTest:testSafeCastInt256ToIntTrickEquivalence(int256) (runs: 276, μ: 406, ~: 406) -SafeCastLibTest:testSafeCastToInt256(uint256) (runs: 276, μ: 446, ~: 405) -SafeCastLibTest:testSafeCastToUint256(int256) (runs: 276, μ: 1241, ~: 428) -SafeCastLibTest:testSafeCastUint256ToInt(uint256,uint256) (runs: 276, μ: 27025, ~: 26141) +SafeCastLibTest:testSafeCastInt256ToIntTrickEquivalence(int256) (runs: 256, μ: 406, ~: 406) +SafeCastLibTest:testSafeCastToInt256(uint256) (runs: 256, μ: 951, ~: 405) +SafeCastLibTest:testSafeCastToUint256(int256) (runs: 256, μ: 1282, ~: 428) +SafeCastLibTest:testSafeCastUint256ToInt(uint256,uint256) (runs: 256, μ: 27062, ~: 26175) SafeCastLibTest:testSafeCastUint256ToInt256Bench() (gas: 29380) SafeCastLibTest:testSafeCastUint256ToIntBench() (gas: 330222) SafeCastLibTest:testSafeCastUint256ToUintBench() (gas: 326262) -SafeCastLibTest:testSafeCastUintToUint(uint256,uint256) (runs: 276, μ: 19307, ~: 24926) +SafeCastLibTest:testSafeCastUintToUint(uint256,uint256) (runs: 256, μ: 17131, ~: 24849) SafeCastLibTest:test__codesize() (gas: 23270) -SafeTransferLibTest:testApproveWithGarbageReverts(address,uint256) (runs: 276, μ: 109870, ~: 123521) +SafeTransferLibTest:testApproveWithGarbageReverts(address,uint256) (runs: 256, μ: 111707, ~: 126014) SafeTransferLibTest:testApproveWithMissingReturn() (gas: 32065) -SafeTransferLibTest:testApproveWithMissingReturn(address,uint256) (runs: 276, μ: 32212, ~: 32285) +SafeTransferLibTest:testApproveWithMissingReturn(address,uint256) (runs: 256, μ: 31041, ~: 32285) SafeTransferLibTest:testApproveWithNonContract() (gas: 3012) -SafeTransferLibTest:testApproveWithNonContract(address,address,uint256) (runs: 276, μ: 3602, ~: 3613) -SafeTransferLibTest:testApproveWithNonGarbage(address,uint256) (runs: 276, μ: 79840, ~: 59368) +SafeTransferLibTest:testApproveWithNonContract(address,address,uint256) (runs: 256, μ: 3565, ~: 3613) +SafeTransferLibTest:testApproveWithNonGarbage(address,uint256) (runs: 256, μ: 77784, ~: 59360) SafeTransferLibTest:testApproveWithRetry() (gas: 839904) -SafeTransferLibTest:testApproveWithRetry(address,uint256,uint256) (runs: 276, μ: 839686, ~: 840020) +SafeTransferLibTest:testApproveWithRetry(address,uint256,uint256) (runs: 256, μ: 838406, ~: 840020) SafeTransferLibTest:testApproveWithRetryWithNonContract() (gas: 2990) -SafeTransferLibTest:testApproveWithRetryWithNonContract(address,address,uint256) (runs: 276, μ: 3621, ~: 3632) +SafeTransferLibTest:testApproveWithRetryWithNonContract(address,address,uint256) (runs: 256, μ: 3584, ~: 3632) SafeTransferLibTest:testApproveWithReturnsFalseReverts() (gas: 9713) -SafeTransferLibTest:testApproveWithReturnsFalseReverts(address,uint256) (runs: 276, μ: 9866, ~: 9866) +SafeTransferLibTest:testApproveWithReturnsFalseReverts(address,uint256) (runs: 256, μ: 9866, ~: 9866) SafeTransferLibTest:testApproveWithReturnsTooLittleReverts() (gas: 9639) -SafeTransferLibTest:testApproveWithReturnsTooLittleReverts(address,uint256) (runs: 276, μ: 9795, ~: 9795) +SafeTransferLibTest:testApproveWithReturnsTooLittleReverts(address,uint256) (runs: 256, μ: 9795, ~: 9795) SafeTransferLibTest:testApproveWithReturnsTooMuch() (gas: 32511) -SafeTransferLibTest:testApproveWithReturnsTooMuch(address,uint256) (runs: 276, μ: 32596, ~: 32669) -SafeTransferLibTest:testApproveWithReturnsTwoReverts(address,uint256) (runs: 276, μ: 9823, ~: 9823) +SafeTransferLibTest:testApproveWithReturnsTooMuch(address,uint256) (runs: 256, μ: 31425, ~: 32669) +SafeTransferLibTest:testApproveWithReturnsTwoReverts(address,uint256) (runs: 256, μ: 9823, ~: 9823) SafeTransferLibTest:testApproveWithRevertingReverts() (gas: 9574) -SafeTransferLibTest:testApproveWithRevertingReverts(address,uint256) (runs: 276, μ: 9784, ~: 9784) +SafeTransferLibTest:testApproveWithRevertingReverts(address,uint256) (runs: 256, μ: 9784, ~: 9784) SafeTransferLibTest:testApproveWithStandardERC20() (gas: 31951) -SafeTransferLibTest:testApproveWithStandardERC20(address,uint256) (runs: 276, μ: 32100, ~: 32173) +SafeTransferLibTest:testApproveWithStandardERC20(address,uint256) (runs: 256, μ: 30929, ~: 32173) SafeTransferLibTest:testBalanceOfStandardERC20() (gas: 7852) -SafeTransferLibTest:testBalanceOfStandardERC20(address,uint256) (runs: 276, μ: 40454, ~: 40719) +SafeTransferLibTest:testBalanceOfStandardERC20(address,uint256) (runs: 256, μ: 39798, ~: 40719) SafeTransferLibTest:testForceTransferETHToGriever() (gas: 1511565) -SafeTransferLibTest:testForceTransferETHToGriever(uint256,uint256) (runs: 276, μ: 538257, ~: 570885) +SafeTransferLibTest:testForceTransferETHToGriever(uint256,uint256) (runs: 256, μ: 530881, ~: 570885) SafeTransferLibTest:testPermit2() (gas: 89497) -SafeTransferLibTest:testPermit2InvalidAmount(uint256) (runs: 276, μ: 102474, ~: 102494) +SafeTransferLibTest:testPermit2InvalidAmount(uint256) (runs: 256, μ: 102465, ~: 102493) SafeTransferLibTest:testPermit2OnDAI() (gas: 89519) -SafeTransferLibTest:testPermit2TransferFromInvalidAmount(uint256) (runs: 276, μ: 133515, ~: 133947) +SafeTransferLibTest:testPermit2TransferFromInvalidAmount(uint256) (runs: 256, μ: 133803, ~: 133949) SafeTransferLibTest:testSimplePermit2AndPermit2TransferFrom() (gas: 1102105) SafeTransferLibTest:testSimplePermit2AndPermit2TransferFromGas() (gas: 137347) SafeTransferLibTest:testTransferAllETH() (gas: 34621) -SafeTransferLibTest:testTransferAllETH(address) (runs: 276, μ: 34678, ~: 35034) +SafeTransferLibTest:testTransferAllETH(address) (runs: 256, μ: 34909, ~: 35034) SafeTransferLibTest:testTransferAllETHToContractWithoutFallbackReverts() (gas: 10846) -SafeTransferLibTest:testTransferAllETHToContractWithoutFallbackReverts(uint256) (runs: 276, μ: 10869, ~: 10869) +SafeTransferLibTest:testTransferAllETHToContractWithoutFallbackReverts(uint256) (runs: 256, μ: 10869, ~: 10869) SafeTransferLibTest:testTransferAllFromWithStandardERC20() (gas: 33319) -SafeTransferLibTest:testTransferAllFromWithStandardERC20(address,address,uint256) (runs: 276, μ: 57339, ~: 57320) +SafeTransferLibTest:testTransferAllFromWithStandardERC20(address,address,uint256) (runs: 256, μ: 57332, ~: 57332) SafeTransferLibTest:testTransferAllWithStandardERC20() (gas: 30832) -SafeTransferLibTest:testTransferAllWithStandardERC20(address,uint256) (runs: 276, μ: 42538, ~: 42538) +SafeTransferLibTest:testTransferAllWithStandardERC20(address,uint256) (runs: 256, μ: 42538, ~: 42538) SafeTransferLibTest:testTransferETH() (gas: 34622) -SafeTransferLibTest:testTransferETH(address,uint256) (runs: 276, μ: 34855, ~: 35266) +SafeTransferLibTest:testTransferETH(address,uint256) (runs: 256, μ: 32837, ~: 35266) SafeTransferLibTest:testTransferETHToContractWithoutFallbackReverts() (gas: 10851) -SafeTransferLibTest:testTransferETHToContractWithoutFallbackReverts(uint256) (runs: 276, μ: 10822, ~: 10888) -SafeTransferLibTest:testTransferFromWithGarbageReverts(address,address,uint256) (runs: 276, μ: 790953, ~: 702964) +SafeTransferLibTest:testTransferETHToContractWithoutFallbackReverts(uint256) (runs: 256, μ: 10505, ~: 10888) +SafeTransferLibTest:testTransferFromWithGarbageReverts(address,address,uint256) (runs: 256, μ: 818481, ~: 703138) SafeTransferLibTest:testTransferFromWithMissingReturn() (gas: 568749) -SafeTransferLibTest:testTransferFromWithMissingReturn(address,address,uint256) (runs: 276, μ: 681794, ~: 568670) +SafeTransferLibTest:testTransferFromWithMissingReturn(address,address,uint256) (runs: 256, μ: 664326, ~: 568549) SafeTransferLibTest:testTransferFromWithNonContract() (gas: 3066) -SafeTransferLibTest:testTransferFromWithNonContract(address,address,address,uint256) (runs: 276, μ: 3814, ~: 3861) -SafeTransferLibTest:testTransferFromWithNonGarbage(address,address,uint256) (runs: 276, μ: 713646, ~: 618627) +SafeTransferLibTest:testTransferFromWithNonContract(address,address,address,uint256) (runs: 256, μ: 3821, ~: 3861) +SafeTransferLibTest:testTransferFromWithNonGarbage(address,address,uint256) (runs: 256, μ: 811189, ~: 618719) SafeTransferLibTest:testTransferFromWithReturnsFalseReverts() (gas: 533896) -SafeTransferLibTest:testTransferFromWithReturnsFalseReverts(address,address,uint256) (runs: 276, μ: 579858, ~: 534256) +SafeTransferLibTest:testTransferFromWithReturnsFalseReverts(address,address,uint256) (runs: 256, μ: 597650, ~: 534256) SafeTransferLibTest:testTransferFromWithReturnsTooLittleReverts() (gas: 533874) -SafeTransferLibTest:testTransferFromWithReturnsTooLittleReverts(address,address,uint256) (runs: 276, μ: 637170, ~: 534091) +SafeTransferLibTest:testTransferFromWithReturnsTooLittleReverts(address,address,uint256) (runs: 256, μ: 646175, ~: 534091) SafeTransferLibTest:testTransferFromWithReturnsTooMuch() (gas: 568750) -SafeTransferLibTest:testTransferFromWithReturnsTooMuch(address,address,uint256) (runs: 276, μ: 681088, ~: 569449) -SafeTransferLibTest:testTransferFromWithReturnsTwoReverts(address,address,uint256) (runs: 276, μ: 660114, ~: 534175) +SafeTransferLibTest:testTransferFromWithReturnsTooMuch(address,address,uint256) (runs: 256, μ: 664415, ~: 569242) +SafeTransferLibTest:testTransferFromWithReturnsTwoReverts(address,address,uint256) (runs: 256, μ: 721429, ~: 534196) SafeTransferLibTest:testTransferFromWithRevertingReverts() (gas: 527143) -SafeTransferLibTest:testTransferFromWithRevertingReverts(address,address,uint256) (runs: 276, μ: 652860, ~: 527301) +SafeTransferLibTest:testTransferFromWithRevertingReverts(address,address,uint256) (runs: 256, μ: 631680, ~: 527301) SafeTransferLibTest:testTransferFromWithStandardERC20() (gas: 566534) -SafeTransferLibTest:testTransferFromWithStandardERC20(address,address,uint256) (runs: 276, μ: 688343, ~: 566572) -SafeTransferLibTest:testTransferWithGarbageReverts(address,uint256) (runs: 276, μ: 746673, ~: 648368) +SafeTransferLibTest:testTransferFromWithStandardERC20(address,address,uint256) (runs: 256, μ: 668121, ~: 566183) +SafeTransferLibTest:testTransferWithGarbageReverts(address,uint256) (runs: 256, μ: 721859, ~: 646167) SafeTransferLibTest:testTransferWithMissingReturn() (gas: 554420) -SafeTransferLibTest:testTransferWithMissingReturn(address,uint256) (runs: 276, μ: 673151, ~: 554767) +SafeTransferLibTest:testTransferWithMissingReturn(address,uint256) (runs: 256, μ: 680947, ~: 554767) SafeTransferLibTest:testTransferWithNonContract() (gas: 3010) -SafeTransferLibTest:testTransferWithNonContract(address,address,uint256) (runs: 276, μ: 3623, ~: 3634) -SafeTransferLibTest:testTransferWithNonGarbage(address,uint256) (runs: 276, μ: 736975, ~: 624046) +SafeTransferLibTest:testTransferWithNonContract(address,address,uint256) (runs: 256, μ: 3586, ~: 3634) +SafeTransferLibTest:testTransferWithNonGarbage(address,uint256) (runs: 256, μ: 736039, ~: 624015) SafeTransferLibTest:testTransferWithReturnsFalseReverts() (gas: 530949) -SafeTransferLibTest:testTransferWithReturnsFalseReverts(address,uint256) (runs: 276, μ: 685548, ~: 531206) +SafeTransferLibTest:testTransferWithReturnsFalseReverts(address,uint256) (runs: 256, μ: 602347, ~: 531206) SafeTransferLibTest:testTransferWithReturnsTooLittleReverts() (gas: 531136) -SafeTransferLibTest:testTransferWithReturnsTooLittleReverts(address,uint256) (runs: 276, μ: 680577, ~: 531152) +SafeTransferLibTest:testTransferWithReturnsTooLittleReverts(address,uint256) (runs: 256, μ: 672953, ~: 531152) SafeTransferLibTest:testTransferWithReturnsTooMuch() (gas: 554821) -SafeTransferLibTest:testTransferWithReturnsTooMuch(address,uint256) (runs: 276, μ: 631020, ~: 555224) -SafeTransferLibTest:testTransferWithReturnsTwoReverts(address,uint256) (runs: 276, μ: 673917, ~: 531163) +SafeTransferLibTest:testTransferWithReturnsTooMuch(address,uint256) (runs: 256, μ: 671594, ~: 555224) +SafeTransferLibTest:testTransferWithReturnsTwoReverts(address,uint256) (runs: 256, μ: 596243, ~: 531184) SafeTransferLibTest:testTransferWithRevertingReverts() (gas: 530843) -SafeTransferLibTest:testTransferWithRevertingReverts(address,uint256) (runs: 276, μ: 740147, ~: 531142) +SafeTransferLibTest:testTransferWithRevertingReverts(address,uint256) (runs: 256, μ: 677251, ~: 531142) SafeTransferLibTest:testTransferWithStandardERC20() (gas: 555088) -SafeTransferLibTest:testTransferWithStandardERC20(address,uint256) (runs: 276, μ: 624176, ~: 555059) -SafeTransferLibTest:testTrySafeTransferFrom(address,address,uint256) (runs: 276, μ: 109032, ~: 111573) +SafeTransferLibTest:testTransferWithStandardERC20(address,uint256) (runs: 256, μ: 727654, ~: 555059) +SafeTransferLibTest:testTrySafeTransferFrom(address,address,uint256) (runs: 256, μ: 104940, ~: 111573) SafeTransferLibTest:testTryTransferAllETH() (gas: 148698) SafeTransferLibTest:testTryTransferETH() (gas: 148701) SafeTransferLibTest:testTryTransferETHWithNoGrief() (gas: 537025) SafeTransferLibTest:testTryTransferETHWithNoStorageWrites() (gas: 192444) SafeTransferLibTest:test__codesize() (gas: 67830) SignatureCheckerLibTest:testEmptyCalldataHelpers() (gas: 3965) -SignatureCheckerLibTest:testSignatureChecker(bytes32) (runs: 276, μ: 56711, ~: 47009) +SignatureCheckerLibTest:testSignatureChecker(bytes32) (runs: 256, μ: 57770, ~: 46941) SignatureCheckerLibTest:testSignatureCheckerOnEOAWithInvalidSignature() (gas: 21272) SignatureCheckerLibTest:testSignatureCheckerOnEOAWithInvalidSigner() (gas: 30772) SignatureCheckerLibTest:testSignatureCheckerOnEOAWithMatchingSignerAndSignature() (gas: 17647) @@ -1165,8 +1198,8 @@ SignatureCheckerLibTest:testSignatureCheckerOnWalletWithInvalidSigner() (gas: 25 SignatureCheckerLibTest:testSignatureCheckerOnWalletWithMatchingSignerAndSignature() (gas: 64100) SignatureCheckerLibTest:testSignatureCheckerOnWalletWithWrongSignedMessageHash() (gas: 64157) SignatureCheckerLibTest:testSignatureCheckerOnWalletWithZeroAddressSigner() (gas: 12263) -SignatureCheckerLibTest:testToEthSignedMessageHashDifferential(bytes) (runs: 276, μ: 1304, ~: 1305) -SignatureCheckerLibTest:testToEthSignedMessageHashDifferential(bytes32) (runs: 276, μ: 481, ~: 481) +SignatureCheckerLibTest:testToEthSignedMessageHashDifferential(bytes) (runs: 256, μ: 1304, ~: 1305) +SignatureCheckerLibTest:testToEthSignedMessageHashDifferential(bytes32) (runs: 256, μ: 481, ~: 481) SignatureCheckerLibTest:test__codesize() (gas: 9947) SoladyTest:test__codesize() (gas: 840) TestPlus:test__codesize() (gas: 406) @@ -1182,21 +1215,21 @@ UUPSUpgradeableTest:testUpgradeToRevertWithUpgradeFailed() (gas: 18597) UUPSUpgradeableTest:test__codesize() (gas: 6046) UpgradeableBeaconTest:testInitializeUpgradeableSolidityBeacon() (gas: 296434) UpgradeableBeaconTest:testInitializeUpgradeableYulBeacon() (gas: 335455) -UpgradeableBeaconTest:testUpgradeableBeacon(uint256) (runs: 276, μ: 251004, ~: 259415) +UpgradeableBeaconTest:testUpgradeableBeacon(uint256) (runs: 256, μ: 251380, ~: 259347) UpgradeableBeaconTest:testUpgradeableSolidityBeaconOnlyFnSelectorNotRecognised() (gas: 234560) UpgradeableBeaconTest:testUpgradeableSolidityBeaconOnlyOwnerFunctions() (gas: 260458) UpgradeableBeaconTest:testUpgradeableYulBeaconOnlyFnSelectorNotRecognised() (gas: 172796) UpgradeableBeaconTest:testUpgradeableYulBeaconOnlyOwnerFunctions() (gas: 198398) UpgradeableBeaconTest:test__codesize() (gas: 8808) -WETHInvariants:invariantTotalSupplyEqualsBalance() (runs: 256, calls: 3840, reverts: 1899) +WETHInvariants:invariantTotalSupplyEqualsBalance() (runs: 256, calls: 3840, reverts: 1789) WETHInvariants:test__codesize() (gas: 5265) WETHTest:testDeposit() (gas: 68090) -WETHTest:testDeposit(uint256) (runs: 276, μ: 67949, ~: 68384) +WETHTest:testDeposit(uint256) (runs: 256, μ: 65719, ~: 68384) WETHTest:testFallbackDeposit() (gas: 67796) -WETHTest:testFallbackDeposit(uint256) (runs: 276, μ: 67610, ~: 68045) +WETHTest:testFallbackDeposit(uint256) (runs: 256, μ: 65380, ~: 68045) WETHTest:testMetadata() (gas: 9065) WETHTest:testPartialWithdraw() (gas: 79566) WETHTest:testWithdraw() (gas: 59349) -WETHTest:testWithdraw(uint256,uint256) (runs: 276, μ: 78771, ~: 80326) +WETHTest:testWithdraw(uint256,uint256) (runs: 256, μ: 76727, ~: 80326) WETHTest:testWithdrawToContractWithoutReceiveReverts() (gas: 93923) WETHTest:test__codesize() (gas: 10051) \ No newline at end of file diff --git a/src/tokens/ERC20P/EIP2612.sol b/src/tokens/ERC20P/EIP2612.sol index 72b653780..d1bffee30 100644 --- a/src/tokens/ERC20P/EIP2612.sol +++ b/src/tokens/ERC20P/EIP2612.sol @@ -32,8 +32,7 @@ abstract contract EIP2612 is ERC20StorageLayout { uint256 internal constant _NONCES_SLOT_SEED = 0x38377508; /// @dev `(_NONCES_SLOT_SEED << 16) | 0x1901`. - uint256 private constant _NONCES_SLOT_SEED_WITH_SIGNATURE_PREFIX = - 0x383775081901; + uint256 private constant _NONCES_SLOT_SEED_WITH_SIGNATURE_PREFIX = 0x383775081901; /// @dev `keccak256("EIP712Domain(string name,string version,uint256 chainId,address verifyingContract)")`. bytes32 private constant _DOMAIN_TYPEHASH = @@ -55,17 +54,11 @@ abstract contract EIP2612 is ERC20StorageLayout { /// @dev For more performance, override to return the constant value /// of `keccak256(bytes(name()))` if `name()` will never change. - function _constantNameHash() - internal - view - virtual - returns (bytes32 result) {} + function _constantNameHash() internal view virtual returns (bytes32 result) {} /// @dev Returns the current nonce for `owner`. /// This value is used to compute the signature for EIP-2612 permit. - function nonces( - address owner - ) public view virtual returns (uint256 result) { + function nonces(address owner) public view virtual returns (uint256 result) { /// @solidity memory-safe-assembly assembly { // Compute the nonce slot and load its value. diff --git a/src/tokens/ERC20P/ERC20P.sol b/src/tokens/ERC20P/ERC20P.sol index 2b6bb7839..b2754c49f 100644 --- a/src/tokens/ERC20P/ERC20P.sol +++ b/src/tokens/ERC20P/ERC20P.sol @@ -31,7 +31,7 @@ import {ERC20StorageLayout} from "./ERC20StorageLayout.sol"; /// - NEVER use 0x38377508 as storage slot seed if implementing /// EIP2612 from this same folder (ERC20P). /// - NEVER reach more than max supply if defining custom -/// balance/extra-data as thoe are packed in the same slot. +/// balance/extra-data as those are packed in the same slot. abstract contract ERC20P is ERC20StorageLayout { /*´:°•.°+.*•´.*:˚.°*.˚•´.°:°•.°•.*•´.*:˚.°*.˚•´.°:°•.°+.*•´.*:*/ /* CUSTOM ERRORS */ @@ -60,11 +60,7 @@ abstract contract ERC20P is ERC20StorageLayout { event Transfer(address indexed from, address indexed to, uint256 amount); /// @dev Emitted when `amount` tokens is approved by `owner` to be used by `spender`. - event Approval( - address indexed owner, - address indexed spender, - uint256 amount - ); + event Approval(address indexed owner, address indexed spender, uint256 amount); /// @dev `keccak256(bytes("Transfer(address,address,uint256)"))`. uint256 private constant _TRANSFER_EVENT_SIGNATURE = @@ -102,17 +98,12 @@ abstract contract ERC20P is ERC20StorageLayout { } /// @dev Returns the amount of tokens owned by `owner`. - function balanceOf( - address owner - ) public view virtual returns (uint256 result) { + function balanceOf(address owner) public view virtual returns (uint256 result) { /// @solidity memory-safe-assembly assembly { mstore(0x0c, _PACKED_BALANCE_SLOT_SEED) mstore(0x00, owner) - result := shr( - _PACKED_POS, - sload(keccak256(0x0c, 0x20)) - ) + result := shr(_PACKED_POS, sload(keccak256(0x0c, 0x20))) } } @@ -135,10 +126,7 @@ abstract contract ERC20P is ERC20StorageLayout { /// @dev Sets `amount` as the allowance of `spender` over the caller's tokens. /// /// Emits a {Approval} event. - function approve( - address spender, - uint256 amount - ) public virtual returns (bool) { + function approve(address spender, uint256 amount) public virtual returns (bool) { /// @solidity memory-safe-assembly assembly { // Compute the allowance slot and store the amount. @@ -159,10 +147,7 @@ abstract contract ERC20P is ERC20StorageLayout { /// - `from` must at least have `amount`. /// /// Emits a {Transfer} event. - function transfer( - address to, - uint256 amount - ) public virtual returns (bool) { + function transfer(address to, uint256 amount) public virtual returns (bool) { _beforeTokenTransfer(msg.sender, to, amount); /// @solidity memory-safe-assembly assembly { @@ -188,13 +173,7 @@ abstract contract ERC20P is ERC20StorageLayout { sstore(toBalanceSlot, add(sload(toBalanceSlot), change)) // Emit the {Transfer} event. mstore(0x20, amount) - log3( - 0x20, - 0x20, - _TRANSFER_EVENT_SIGNATURE, - caller(), - shr(96, mload(0x0c)) - ) + log3(0x20, 0x20, _TRANSFER_EVENT_SIGNATURE, caller(), shr(96, mload(0x0c))) } _afterTokenTransfer(msg.sender, to, amount); return true; @@ -209,11 +188,7 @@ abstract contract ERC20P is ERC20StorageLayout { /// - The caller must have at least `amount` of allowance to transfer the tokens of `from`. /// /// Emits a {Transfer} event. - function transferFrom( - address from, - address to, - uint256 amount - ) public virtual returns (bool) { + function transferFrom(address from, address to, uint256 amount) public virtual returns (bool) { _beforeTokenTransfer(from, to, amount); /// @solidity memory-safe-assembly assembly { @@ -254,13 +229,7 @@ abstract contract ERC20P is ERC20StorageLayout { sstore(toBalanceSlot, add(sload(toBalanceSlot), change)) // Emit the {Transfer} event. mstore(0x20, amount) - log3( - 0x20, - 0x20, - _TRANSFER_EVENT_SIGNATURE, - shr(96, from_), - shr(96, mload(0x0c)) - ) + log3(0x20, 0x20, _TRANSFER_EVENT_SIGNATURE, shr(96, from_), shr(96, mload(0x0c))) } _afterTokenTransfer(from, to, amount); return true; @@ -295,13 +264,7 @@ abstract contract ERC20P is ERC20StorageLayout { sstore(toBalanceSlot, add(sload(toBalanceSlot), change)) // Emit the {Transfer} event. mstore(0x20, amount) - log3( - 0x20, - 0x20, - _TRANSFER_EVENT_SIGNATURE, - 0, - shr(96, mload(0x0c)) - ) + log3(0x20, 0x20, _TRANSFER_EVENT_SIGNATURE, 0, shr(96, mload(0x0c))) } _afterTokenTransfer(address(0), to, amount); } @@ -334,13 +297,7 @@ abstract contract ERC20P is ERC20StorageLayout { sstore(_TOTAL_SUPPLY_SLOT, sub(sload(_TOTAL_SUPPLY_SLOT), amount)) // Emit the {Transfer} event. mstore(0x00, amount) - log3( - 0x00, - 0x20, - _TRANSFER_EVENT_SIGNATURE, - shr(96, shl(96, from)), - 0 - ) + log3(0x00, 0x20, _TRANSFER_EVENT_SIGNATURE, shr(96, shl(96, from)), 0) } _afterTokenTransfer(from, address(0), amount); } @@ -350,11 +307,7 @@ abstract contract ERC20P is ERC20StorageLayout { /*.•°:°.´+˚.*°.˚:*.´•*.+°.•°:´*.´•*.•°.•°:°.´:•˚°.*°.˚:*.´+°.•*/ /// @dev Moves `amount` of tokens from `from` to `to`. - function _transfer( - address from, - address to, - uint256 amount - ) internal virtual { + function _transfer(address from, address to, uint256 amount) internal virtual { _beforeTokenTransfer(from, to, amount); /// @solidity memory-safe-assembly assembly { @@ -380,13 +333,7 @@ abstract contract ERC20P is ERC20StorageLayout { sstore(toBalanceSlot, add(sload(toBalanceSlot), change)) // Emit the {Transfer} event. mstore(0x20, amount) - log3( - 0x20, - 0x20, - _TRANSFER_EVENT_SIGNATURE, - shr(96, from_), - shr(96, mload(0x0c)) - ) + log3(0x20, 0x20, _TRANSFER_EVENT_SIGNATURE, shr(96, from_), shr(96, mload(0x0c))) } _afterTokenTransfer(from, to, amount); } @@ -396,11 +343,7 @@ abstract contract ERC20P is ERC20StorageLayout { /*.•°:°.´+˚.*°.˚:*.´•*.+°.•°:´*.´•*.•°.•°:°.´:•˚°.*°.˚:*.´+°.•*/ /// @dev Updates the allowance of `owner` for `spender` based on spent `amount`. - function _spendAllowance( - address owner, - address spender, - uint256 amount - ) internal virtual { + function _spendAllowance(address owner, address spender, uint256 amount) internal virtual { /// @solidity memory-safe-assembly assembly { // Compute the allowance slot and load its value. @@ -425,11 +368,7 @@ abstract contract ERC20P is ERC20StorageLayout { /// @dev Sets `amount` as the allowance of `spender` over the tokens of `owner`. /// /// Emits a {Approval} event. - function _approve( - address owner, - address spender, - uint256 amount - ) internal virtual { + function _approve(address owner, address spender, uint256 amount) internal virtual { /// @solidity memory-safe-assembly assembly { let owner_ := shl(96, owner) @@ -439,13 +378,7 @@ abstract contract ERC20P is ERC20StorageLayout { sstore(keccak256(0x0c, 0x34), amount) // Emit the {Approval} event. mstore(0x00, amount) - log3( - 0x00, - 0x20, - _APPROVAL_EVENT_SIGNATURE, - shr(96, owner_), - shr(96, mload(0x2c)) - ) + log3(0x00, 0x20, _APPROVAL_EVENT_SIGNATURE, shr(96, owner_), shr(96, mload(0x2c))) } } @@ -454,17 +387,12 @@ abstract contract ERC20P is ERC20StorageLayout { /*.•°:°.´+˚.*°.˚:*.´•*.+°.•°:´*.´•*.•°.•°:°.´:•˚°.*°.˚:*.´+°.•*/ /// @dev Returns packed allowance extra data - function _balanceExtraData( - address owner - ) internal view returns (uint128 data) { + function _balanceExtraData(address owner) internal view returns (uint128 data) { /// @solidity memory-safe-assembly assembly { mstore(0x0c, _PACKED_BALANCE_SLOT_SEED) mstore(0x00, owner) - data := and( - _PACK_MASK, - sload(keccak256(0x0c, 0x20)) - ) + data := and(_PACK_MASK, sload(keccak256(0x0c, 0x20))) } } @@ -474,10 +402,7 @@ abstract contract ERC20P is ERC20StorageLayout { mstore(0x0c, _PACKED_BALANCE_SLOT_SEED) mstore(0x00, owner) let slot := keccak256(0x0c, 0x20) - sstore( - slot, - or(and(sload(slot), _REV_PACK_MASK), data) - ) + sstore(slot, or(and(sload(slot), _REV_PACK_MASK), data)) } } @@ -487,17 +412,9 @@ abstract contract ERC20P is ERC20StorageLayout { /// @dev Hook that is called before any transfer of tokens. /// This includes minting and burning. - function _beforeTokenTransfer( - address from, - address to, - uint256 amount - ) internal virtual {} + function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual {} /// @dev Hook that is called after any transfer of tokens. /// This includes minting and burning. - function _afterTokenTransfer( - address from, - address to, - uint256 amount - ) internal virtual {} + function _afterTokenTransfer(address from, address to, uint256 amount) internal virtual {} } diff --git a/test/ERC20P.t.sol b/test/ERC20P.t.sol index 40cac563c..526ecd804 100644 --- a/test/ERC20P.t.sol +++ b/test/ERC20P.t.sol @@ -180,7 +180,7 @@ contract ERC20PTest is SoladyTest { } function testBurn(address from, uint256 mintAmount, uint256 burnAmount) public { - mintAmount = _bound(mintAmount, 0, 2^128); + mintAmount = _bound(mintAmount, 0, 2 ^ 128); burnAmount = _bound(burnAmount, 0, mintAmount); token.mint(from, mintAmount); diff --git a/test/utils/mocks/MockERC20P.sol b/test/utils/mocks/MockERC20P.sol index 7bb33b464..1aad9c74e 100644 --- a/test/utils/mocks/MockERC20P.sol +++ b/test/utils/mocks/MockERC20P.sol @@ -65,9 +65,7 @@ contract MockERC20P is ERC20P, EIP2612, Brutalizer { return super.transferFrom(_brutalized(from), _brutalized(to), amount); } - function balanceExtraData( - address owner - ) public view returns (uint128 data) { + function balanceExtraData(address owner) public view returns (uint128 data) { return _balanceExtraData(owner); }