From 12a7cbd342a0c6be4e8c95f0e3600d50e759ebb6 Mon Sep 17 00:00:00 2001 From: thedavidmeister Date: Thu, 18 Sep 2025 22:39:11 +0400 Subject: [PATCH 1/2] variadic add lint --- src/generated/Rainterpreter.pointers.sol | 4 ++-- src/lib/op/math/LibOpAdd.sol | 21 ++++++++++++++++++--- test/src/lib/op/math/LibOpAdd.t.sol | 2 +- 3 files changed, 21 insertions(+), 6 deletions(-) diff --git a/src/generated/Rainterpreter.pointers.sol b/src/generated/Rainterpreter.pointers.sol index f3579b1c1..28b168c8e 100644 --- a/src/generated/Rainterpreter.pointers.sol +++ b/src/generated/Rainterpreter.pointers.sol @@ -10,11 +10,11 @@ pragma solidity =0.8.25; /// @dev Hash of the known bytecode. -bytes32 constant BYTECODE_HASH = bytes32(0xe15090d5b893376656056e0ba15714db8524d744143cd4d26b422b9e64d8b7d5); +bytes32 constant BYTECODE_HASH = bytes32(0x5734f095834f2f20d8361890c7243d2c9b92082ef3d7dc7fd8b8fc78edd4e38d); /// @dev The function pointers known to the interpreter for dynamic dispatch. /// By setting these as a constant they can be inlined into the interpreter /// and loaded at eval time for very low gas (~100) due to the compiler /// optimising it to a single `codecopy` to build the in memory bytes array. bytes constant OPCODE_FUNCTION_POINTERS = - hex"0864089608ba0a390ae80afa0b0c0b250b490b7d0b8e0b9f0c410c600cf80d820df90f0810080cf810e711731208127312841295129512a612fc13d81442145b146f14b914d214eb150f1525153e155715a015c715da163c168a16d817261774178217d017f3180118b518e6192a194f195d196b19bc19f119ff1a4d1a7e1aaf1afd1b2e1b461b941bc11be41c321d1b"; + hex"0864089608ba0a390ae80afa0b0c0b250b490b7d0b8e0b9f0c410c600cf80d820df90f0810080cf810e711731208127312841295129512a612fc13d81442145b146f14b914d214eb150f1525153e155715a015c715da163c168a16d817261774178218361859186718f61927196b1990199e19ac19fd1a321a401a8e1abf1af01b3e1b6f1b871bd51c021c251c731d5c"; diff --git a/src/lib/op/math/LibOpAdd.sol b/src/lib/op/math/LibOpAdd.sol index ff99bb341..ec6cf8ebe 100644 --- a/src/lib/op/math/LibOpAdd.sol +++ b/src/lib/op/math/LibOpAdd.sol @@ -8,6 +8,7 @@ import {IntegrityCheckState} from "../../integrity/LibIntegrityCheck.sol"; import {StackItem} from "rain.interpreter.interface/interface/unstable/IInterpreterV4.sol"; import {Float, LibDecimalFloat} from "rain.math.float/lib/LibDecimalFloat.sol"; +import {LibDecimalFloatImplementation} from "rain.math.float/lib/implementation/LibDecimalFloatImplementation.sol"; /// @title LibOpAdd /// @notice Opcode to add N numbers. Errors on overflow. @@ -28,7 +29,10 @@ library LibOpAdd { b := mload(add(stackTop, 0x20)) stackTop := add(stackTop, 0x40) } - a = LibDecimalFloat.add(a, b); + (int256 signedCoefficient, int256 exponent) = LibDecimalFloat.unpack(a); + (int256 signedCoefficientB, int256 exponentB) = LibDecimalFloat.unpack(b); + (signedCoefficient, exponent) = + LibDecimalFloatImplementation.add(signedCoefficient, exponent, signedCoefficientB, exponentB); { uint256 inputs = uint256((OperandV2.unwrap(operand) >> 0x10) & bytes32(uint256(0x0F))); @@ -38,13 +42,17 @@ library LibOpAdd { b := mload(stackTop) stackTop := add(stackTop, 0x20) } - a = LibDecimalFloat.add(a, b); + (signedCoefficientB, exponentB) = LibDecimalFloat.unpack(b); + (signedCoefficient, exponent) = + LibDecimalFloatImplementation.add(signedCoefficient, exponent, signedCoefficientB, exponentB); unchecked { i++; } } } + (a,) = LibDecimalFloat.packLossy(signedCoefficient, exponent); + assembly ("memory-safe") { stackTop := sub(stackTop, 0x20) mstore(stackTop, a) @@ -62,9 +70,16 @@ library LibOpAdd { // see the revert from the real function and not the reference function. unchecked { Float acc = Float.wrap(StackItem.unwrap(inputs[0])); + (int256 signedCoefficient, int256 exponent) = LibDecimalFloat.unpack(acc); for (uint256 i = 1; i < inputs.length; i++) { - acc = LibDecimalFloat.add(acc, Float.wrap(StackItem.unwrap(inputs[i]))); + (int256 signedCoefficientB, int256 exponentB) = + LibDecimalFloat.unpack(Float.wrap(StackItem.unwrap(inputs[i]))); + (signedCoefficient, exponent) = + LibDecimalFloatImplementation.add(signedCoefficient, exponent, signedCoefficientB, exponentB); } + bool lossless; + (acc, lossless) = LibDecimalFloat.packLossy(signedCoefficient, exponent); + (lossless); outputs = new StackItem[](1); outputs[0] = StackItem.wrap(Float.unwrap(acc)); } diff --git a/test/src/lib/op/math/LibOpAdd.t.sol b/test/src/lib/op/math/LibOpAdd.t.sol index bbcfd8948..d004045a9 100644 --- a/test/src/lib/op/math/LibOpAdd.t.sol +++ b/test/src/lib/op/math/LibOpAdd.t.sol @@ -154,7 +154,7 @@ contract LibOpAddTest is OpTest { ); checkUnhappyOverflow( "_: add(max-positive-value() max-positive-value() max-positive-value());", - 26959946667150639794667015087019630673637144422540572481103610249214000000000, + 40439920000725959692000522630529446010455716633810858721655415373821000000000, 2147483638 ); checkUnhappyOverflow( From 890ab2b91df86afe522a39d4c8cb42bb459155dd Mon Sep 17 00:00:00 2001 From: thedavidmeister Date: Thu, 18 Sep 2025 22:58:40 +0400 Subject: [PATCH 2/2] lint --- .gas-snapshot | 640 +++++++++++++++++------------------ src/lib/op/math/LibOpAdd.sol | 1 + 2 files changed, 321 insertions(+), 320 deletions(-) diff --git a/.gas-snapshot b/.gas-snapshot index 430abb0f0..8c349216b 100644 --- a/.gas-snapshot +++ b/.gas-snapshot @@ -1,35 +1,35 @@ -BaseRainterpreterExternNPE2IERC165Test:testRainterpreterExternNPE2IERC165(bytes4) (runs: 2068, μ: 275391, ~: 275391) -BaseRainterpreterSubParserNPE2IERC165Test:testRainterpreterSubParserNPE2IERC165(uint32) (runs: 2068, μ: 599673, ~: 599673) -LibAllStandardOpsTest:testIntegrityAndOpcodeFunctionPointersLength() (gas: 84152) +BaseRainterpreterExternNPE2IERC165Test:testRainterpreterExternNPE2IERC165(bytes4) (runs: 2048, μ: 275391, ~: 275391) +BaseRainterpreterSubParserNPE2IERC165Test:testRainterpreterSubParserNPE2IERC165(uint32) (runs: 2048, μ: 599673, ~: 599673) +LibAllStandardOpsTest:testIntegrityAndOpcodeFunctionPointersLength() (gas: 84146) LibAllStandardOpsTest:testIntegrityFunctionPointersLength() (gas: 11759) LibAllStandardOpsTest:testOpcodeFunctionPointersLength() (gas: 11744) -LibEvalFBoundsTest:testEvalNPFBoundsModConstant(bytes32) (runs: 2068, μ: 87643, ~: 87643) -LibExternCodecTest:testLibExternCodecEncodeExternCall(uint256,bytes32) (runs: 2068, μ: 9825, ~: 10350) -LibExternCodecTest:testLibExternCodecEncodeExternDispatch(uint256,bytes32) (runs: 2068, μ: 8918, ~: 9443) -LibInterpreterStateStackTraceTest:testStackTraceCall(uint256,uint256,uint256[]) (runs: 2068, μ: 43130, ~: 42614) +LibEvalFBoundsTest:testEvalNPFBoundsModConstant(bytes32) (runs: 2048, μ: 87643, ~: 87643) +LibExternCodecTest:testLibExternCodecEncodeExternCall(uint256,bytes32) (runs: 2048, μ: 9828, ~: 10350) +LibExternCodecTest:testLibExternCodecEncodeExternDispatch(uint256,bytes32) (runs: 2048, μ: 8921, ~: 9443) +LibInterpreterStateStackTraceTest:testStackTraceCall(uint256,uint256,uint256[]) (runs: 2048, μ: 43165, ~: 42680) LibOpAbsTest:testOpAbsEval() (gas: 295828) LibOpAbsTest:testOpAbsEvalOperandDisallowed() (gas: 17666) -LibOpAbsTest:testOpAbsIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13760, ~: 13670) -LibOpAbsTest:testOpAbsRun(bytes32,uint16) (runs: 2068, μ: 17602, ~: 17543) +LibOpAbsTest:testOpAbsIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13744, ~: 13661) +LibOpAbsTest:testOpAbsRun(bytes32,uint16) (runs: 2048, μ: 17602, ~: 17543) LibOpAbsTest:testOpAbsTwoInputs() (gas: 40309) LibOpAbsTest:testOpAbsTwoOutputs() (gas: 36043) LibOpAbsTest:testOpAbsZeroInputs() (gas: 30274) LibOpAbsTest:testOpAbsZeroOutputs() (gas: 35035) -LibOpAddTest:testOpAddEval2InputsHappyExamples() (gas: 406744) -LibOpAddTest:testOpAddEval2InputsHappyZero() (gas: 58051) -LibOpAddTest:testOpAddEval2InputsHappyZeroMax() (gas: 105309) -LibOpAddTest:testOpAddEval2InputsHappyZeroOne() (gas: 201046) -LibOpAddTest:testOpAddEval3InputsHappy() (gas: 364010) -LibOpAddTest:testOpAddEval3InputsUnhappy() (gas: 404337) +LibOpAddTest:testOpAddEval2InputsHappyExamples() (gas: 406360) +LibOpAddTest:testOpAddEval2InputsHappyZero() (gas: 57989) +LibOpAddTest:testOpAddEval2InputsHappyZeroMax() (gas: 105185) +LibOpAddTest:testOpAddEval2InputsHappyZeroOne() (gas: 200798) +LibOpAddTest:testOpAddEval3InputsHappy() (gas: 355574) +LibOpAddTest:testOpAddEval3InputsUnhappy() (gas: 405048) LibOpAddTest:testOpAddEvalOneInput() (gas: 36914) LibOpAddTest:testOpAddEvalOperandDisallowed() (gas: 92698) LibOpAddTest:testOpAddEvalTwoOutput() (gas: 44431) LibOpAddTest:testOpAddEvalZeroInputs() (gas: 30401) LibOpAddTest:testOpAddEvalZeroOutputs() (gas: 43449) -LibOpAddTest:testOpAddIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2068, μ: 18279, ~: 18507) -LibOpAddTest:testOpAddIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13880, ~: 13797) -LibOpAddTest:testOpAddIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13877, ~: 13794) -LibOpAddTest:testOpAddRun(bytes32[]) (runs: 2056, μ: 100578, ~: 101515) +LibOpAddTest:testOpAddIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2048, μ: 18265, ~: 18470) +LibOpAddTest:testOpAddIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13865, ~: 13729) +LibOpAddTest:testOpAddIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13862, ~: 13726) +LibOpAddTest:testOpAddRun(bytes32[]) (runs: 2048, μ: 81843, ~: 81614) LibOpAnyTest:testOpAnyEval1FalseInput() (gas: 52169) LibOpAnyTest:testOpAnyEval1TrueInput() (gas: 52159) LibOpAnyTest:testOpAnyEval2FalseInputs() (gas: 57530) @@ -39,20 +39,20 @@ LibOpAnyTest:testOpAnyEval2MixedInputsZeroExponent() (gas: 59275) LibOpAnyTest:testOpAnyEval2TrueInputs() (gas: 58191) LibOpAnyTest:testOpAnyEvalFail() (gas: 29866) LibOpAnyTest:testOpAnyIntegrityGas0() (gas: 3263) -LibOpAnyTest:testOpAnyIntegrityHappy(uint8,uint16) (runs: 2068, μ: 8316, ~: 8583) +LibOpAnyTest:testOpAnyIntegrityHappy(uint8,uint16) (runs: 2048, μ: 8313, ~: 8432) LibOpAnyTest:testOpAnyIntegrityUnhappyZeroInputs() (gas: 4059) -LibOpAnyTest:testOpAnyRun(bytes32[],uint16) (runs: 2056, μ: 21938, ~: 21917) +LibOpAnyTest:testOpAnyRun(bytes32[],uint16) (runs: 2048, μ: 21938, ~: 21917) LibOpAnyTest:testOpAnyRunGas0() (gas: 3369) LibOpAnyTest:testOpAnyTwoOutputs() (gas: 35977) LibOpAnyTest:testOpAnyZeroOutputs() (gas: 34947) -LibOpAvgTest:testOpAvgEvalExamples() (gas: 478981) +LibOpAvgTest:testOpAvgEvalExamples() (gas: 479065) LibOpAvgTest:testOpAvgEvalOneInput() (gas: 35412) LibOpAvgTest:testOpAvgEvalOperandDisallowed() (gas: 17707) LibOpAvgTest:testOpAvgEvalThreeInputs() (gas: 45333) LibOpAvgTest:testOpAvgEvalTwoOutputs() (gas: 40956) LibOpAvgTest:testOpAvgEvalZeroOutputs() (gas: 39908) -LibOpAvgTest:testOpAvgIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13782, ~: 13692) -LibOpAvgTest:testOpAvgRun(int256,int256,int256,int256,uint16) (runs: 2068, μ: 45846, ~: 45911) +LibOpAvgTest:testOpAvgIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13766, ~: 13683) +LibOpAvgTest:testOpAvgRun(int256,int256,int256,int256,uint16) (runs: 2048, μ: 45864, ~: 45912) LibOpBinaryEqualToTest:testOpBinaryEqualToEval2() (gas: 209368) LibOpBinaryEqualToTest:testOpBinaryEqualToEval2InputsBothOne() (gas: 58239) LibOpBinaryEqualToTest:testOpBinaryEqualToEval2InputsFirstOneSecondZero() (gas: 58927) @@ -61,13 +61,13 @@ LibOpBinaryEqualToTest:testOpBinaryEqualToEval2ZeroInputs() (gas: 58200) LibOpBinaryEqualToTest:testOpBinaryEqualToEvalFail0Inputs() (gas: 30768) LibOpBinaryEqualToTest:testOpBinaryEqualToEvalFail1Input() (gas: 35109) LibOpBinaryEqualToTest:testOpBinaryEqualToEvalFail3Inputs() (gas: 43649) -LibOpBinaryEqualToTest:testOpBinaryEqualToIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 19739, ~: 19977) -LibOpBinaryEqualToTest:testOpBinaryEqualToRun(bytes32,bytes32) (runs: 2068, μ: 16758, ~: 16758) +LibOpBinaryEqualToTest:testOpBinaryEqualToIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 19724, ~: 19924) +LibOpBinaryEqualToTest:testOpBinaryEqualToRun(bytes32,bytes32) (runs: 2048, μ: 16758, ~: 16758) LibOpBinaryEqualToTest:testOpBinaryEqualToTwoOutputs() (gas: 41850) LibOpBinaryEqualToTest:testOpBinaryEqualToZeroOutputs() (gas: 40781) LibOpBitwiseAndNPTest:testOpBitwiseAndNPEvalHappy() (gas: 723863) -LibOpBitwiseAndNPTest:testOpBitwiseAndNPIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13760, ~: 13670) -LibOpBitwiseAndNPTest:testOpBitwiseAndNPRun(bytes32,bytes32) (runs: 2068, μ: 16755, ~: 16755) +LibOpBitwiseAndNPTest:testOpBitwiseAndNPIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13744, ~: 13661) +LibOpBitwiseAndNPTest:testOpBitwiseAndNPRun(bytes32,bytes32) (runs: 2048, μ: 16755, ~: 16755) LibOpBitwiseAndNPTest:testOpBitwiseORNPEvalBadOperand() (gas: 18311) LibOpBitwiseAndNPTest:testOpBitwiseORNPEvalOneInput() (gas: 35945) LibOpBitwiseAndNPTest:testOpBitwiseORNPEvalThreeInputs() (gas: 45824) @@ -81,34 +81,34 @@ LibOpBitwiseOrNPTest:testOpBitwiseORNPEvalThreeInputs() (gas: 45722) LibOpBitwiseOrNPTest:testOpBitwiseORNPEvalTwoOutputs() (gas: 41491) LibOpBitwiseOrNPTest:testOpBitwiseORNPEvalZeroInputs() (gas: 30809) LibOpBitwiseOrNPTest:testOpBitwiseORNPEvalZeroOutputs() (gas: 40488) -LibOpBitwiseOrNPTest:testOpBitwiseORNPIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13759, ~: 13669) -LibOpBitwiseOrNPTest:testOpBitwiseORNPRun(bytes32,bytes32) (runs: 2068, μ: 16712, ~: 16712) -LibOpBlockNumberTest:testOpBlockNumberEval(uint256) (runs: 2068, μ: 51192, ~: 50966) +LibOpBitwiseOrNPTest:testOpBitwiseORNPIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13743, ~: 13660) +LibOpBitwiseOrNPTest:testOpBitwiseORNPRun(bytes32,bytes32) (runs: 2048, μ: 16712, ~: 16712) +LibOpBlockNumberTest:testOpBlockNumberEval(uint256) (runs: 2048, μ: 51189, ~: 50966) LibOpBlockNumberTest:testOpBlockNumberEvalOneInput() (gas: 35318) LibOpBlockNumberTest:testOpBlockNumberEvalTwoOutputs() (gas: 31598) LibOpBlockNumberTest:testOpBlockNumberEvalZeroOutputs() (gas: 30589) -LibOpBlockNumberTest:testOpBlockNumberIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 19679, ~: 19916) -LibOpBlockNumberTest:testOpBlockNumberRun(uint256,uint16) (runs: 2068, μ: 20978, ~: 20647) +LibOpBlockNumberTest:testOpBlockNumberIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 19668, ~: 19921) +LibOpBlockNumberTest:testOpBlockNumberRun(uint256,uint16) (runs: 2048, μ: 20977, ~: 20647) LibOpCallTest:testCallTraceInnerOnly() (gas: 63489) LibOpCallTest:testCallTraceOuterOnly() (gas: 45913) -LibOpCallTest:testOpCallNPIntegrityIO((uint256,uint256,uint256,bytes32[],uint256,bytes),uint256,uint256,uint8,bytes32) (runs: 2063, μ: 40133, ~: 38677) -LibOpCallTest:testOpCallNPIntegritySourceIndexOutOfBounds((uint256,uint256,uint256,bytes32[],uint256,bytes),uint256,uint256,uint256,uint256,bytes32) (runs: 2068, μ: 59768, ~: 59387) -LibOpCallTest:testOpCallNPIntegrityTooManyOutputs((uint256,uint256,uint256,bytes32[],uint256,bytes),uint256,uint256,uint8,bytes32) (runs: 2058, μ: 59017, ~: 59275) +LibOpCallTest:testOpCallNPIntegrityIO((uint256,uint256,uint256,bytes32[],uint256,bytes),uint256,uint256,uint8,bytes32) (runs: 2048, μ: 40134, ~: 38756) +LibOpCallTest:testOpCallNPIntegritySourceIndexOutOfBounds((uint256,uint256,uint256,bytes32[],uint256,bytes),uint256,uint256,uint256,uint256,bytes32) (runs: 2048, μ: 59673, ~: 59264) +LibOpCallTest:testOpCallNPIntegrityTooManyOutputs((uint256,uint256,uint256,bytes32[],uint256,bytes),uint256,uint256,uint8,bytes32) (runs: 2048, μ: 59084, ~: 59117) LibOpCallTest:testOpCallNPRunInputsMismatch() (gas: 73229) LibOpCallTest:testOpCallNPRunOutputsMismatch() (gas: 66065) LibOpCallTest:testOpCallNPRunSourceDoesNotExist() (gas: 353359) -LibOpCeilTest:testOpCeilEval() (gas: 545475) +LibOpCeilTest:testOpCeilEval() (gas: 545489) LibOpCeilTest:testOpCeilEvalOperandDisallowed() (gas: 17724) -LibOpCeilTest:testOpCeilIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13803, ~: 13713) -LibOpCeilTest:testOpCeilRun(bytes32,uint16) (runs: 2068, μ: 17133, ~: 16734) +LibOpCeilTest:testOpCeilIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13787, ~: 13704) +LibOpCeilTest:testOpCeilRun(bytes32,uint16) (runs: 2048, μ: 17129, ~: 16734) LibOpCeilTest:testOpCeilTwoInputs() (gas: 40390) LibOpCeilTest:testOpCeilTwoOutputs() (gas: 36144) LibOpCeilTest:testOpCeilZeroInputs() (gas: 30333) LibOpCeilTest:testOpCeilZeroOutputs() (gas: 35115) -LibOpChainIdTest:testOpChainIDEval(uint64) (runs: 2068, μ: 47245, ~: 47245) -LibOpChainIdTest:testOpChainIDIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 19713, ~: 19971) +LibOpChainIdTest:testOpChainIDEval(uint64) (runs: 2048, μ: 47245, ~: 47245) +LibOpChainIdTest:testOpChainIDIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 19706, ~: 19930) LibOpChainIdTest:testOpChainIdEvalFail() (gas: 34504) -LibOpChainIdTest:testOpChainIdRun(uint64,uint16) (runs: 2068, μ: 17248, ~: 17250) +LibOpChainIdTest:testOpChainIdRun(uint64,uint16) (runs: 2048, μ: 17248, ~: 17250) LibOpChainIdTest:testOpChainIdTwoOutputs() (gas: 31287) LibOpChainIdTest:testOpChainIdZeroOutputs() (gas: 30236) LibOpConditionsTest:testOpConditionsEval1FalseInput1TrueInput() (gas: 71209) @@ -121,37 +121,37 @@ LibOpConditionsTest:testOpConditionsEvalErrorCode() (gas: 68018) LibOpConditionsTest:testOpConditionsEvalFail0Inputs() (gas: 30508) LibOpConditionsTest:testOpConditionsEvalFail1Inputs() (gas: 34818) LibOpConditionsTest:testOpConditionsEvalUnhappyOperand() (gas: 18194) -LibOpConditionsTest:testOpConditionsIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 20269, ~: 20538) -LibOpConditionsTest:testOpConditionsRun(bytes32[],bytes32) (runs: 2056, μ: 19869, ~: 19982) -LibOpConditionsTest:testOpConditionsRunNoConditionsMet(bytes32[],string) (runs: 2061, μ: 29272, ~: 29450) +LibOpConditionsTest:testOpConditionsIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 20259, ~: 20488) +LibOpConditionsTest:testOpConditionsRun(bytes32[],bytes32) (runs: 2048, μ: 19868, ~: 19982) +LibOpConditionsTest:testOpConditionsRunNoConditionsMet(bytes32[],string) (runs: 2048, μ: 29316, ~: 29517) LibOpConditionsTest:testOpConditionsTwoOutputs() (gas: 40134) LibOpConditionsTest:testOpConditionsZeroOutputs() (gas: 39084) LibOpConstantTest:testOpConstantEvalNPE2E() (gas: 56614) LibOpConstantTest:testOpConstantEvalZeroConstants() (gas: 41710) -LibOpConstantTest:testOpConstantNPIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 19230, ~: 19126) -LibOpConstantTest:testOpConstantNPIntegrityOOBConstants((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 40231, ~: 39939) +LibOpConstantTest:testOpConstantNPIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 19213, ~: 19116) +LibOpConstantTest:testOpConstantNPIntegrityOOBConstants((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 40182, ~: 39854) LibOpConstantTest:testOpConstantNPMultipleOutputErrorSugared() (gas: 31874) LibOpConstantTest:testOpConstantNPMultipleOutputErrorUnsugared() (gas: 41881) -LibOpConstantTest:testOpConstantNPRun(bytes32[],uint16) (runs: 2068, μ: 52466, ~: 51965) +LibOpConstantTest:testOpConstantNPRun(bytes32[],uint16) (runs: 2048, μ: 52629, ~: 52030) LibOpConstantTest:testOpConstantNPZeroOutputErrorSugared() (gas: 30490) LibOpConstantTest:testOpConstantNPZeroOutputErrorUnsugared() (gas: 40509) -LibOpContextNPTest:testOpContextNPEval00(bytes32[][]) (runs: 120, μ: 6136452, ~: 5013573) -LibOpContextNPTest:testOpContextNPEval01(bytes32[][]) (runs: 120, μ: 6160261, ~: 5013796) -LibOpContextNPTest:testOpContextNPEval10(bytes32[][]) (runs: 120, μ: 6136638, ~: 5013759) -LibOpContextNPTest:testOpContextNPEval11(bytes32[][]) (runs: 120, μ: 6124847, ~: 4934531) -LibOpContextNPTest:testOpContextNPEvalOOBi(bytes32[]) (runs: 120, μ: 74078, ~: 71655) -LibOpContextNPTest:testOpContextNPEvalOOBj(bytes32) (runs: 2068, μ: 48608, ~: 48608) -LibOpContextNPTest:testOpContextNPIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 14511, ~: 14421) +LibOpContextNPTest:testOpContextNPEval00(bytes32[][]) (runs: 100, μ: 6808020, ~: 5565446) +LibOpContextNPTest:testOpContextNPEval01(bytes32[][]) (runs: 100, μ: 6836546, ~: 5565669) +LibOpContextNPTest:testOpContextNPEval10(bytes32[][]) (runs: 100, μ: 6808206, ~: 5565632) +LibOpContextNPTest:testOpContextNPEval11(bytes32[][]) (runs: 100, μ: 6794025, ~: 5486358) +LibOpContextNPTest:testOpContextNPEvalOOBi(bytes32[]) (runs: 100, μ: 76526, ~: 76085) +LibOpContextNPTest:testOpContextNPEvalOOBj(bytes32) (runs: 2048, μ: 48608, ~: 48608) +LibOpContextNPTest:testOpContextNPIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 14495, ~: 14412) LibOpContextNPTest:testOpContextNPOneInput() (gas: 41890) -LibOpContextNPTest:testOpContextNPRun(bytes32[][],uint256,uint256) (runs: 120, μ: 9563047, ~: 6231029) -LibOpContextNPTest:testOpContextNPRunOOBi(bytes32[][],uint256,uint256) (runs: 120, μ: 9931084, ~: 6752907) -LibOpContextNPTest:testOpContextNPRunOOBj(bytes32[][],uint256,uint256) (runs: 120, μ: 9939303, ~: 6753840) +LibOpContextNPTest:testOpContextNPRun(bytes32[][],uint256,uint256) (runs: 100, μ: 10920694, ~: 9275167) +LibOpContextNPTest:testOpContextNPRunOOBi(bytes32[][],uint256,uint256) (runs: 100, μ: 11125736, ~: 9352711) +LibOpContextNPTest:testOpContextNPRunOOBj(bytes32[][],uint256,uint256) (runs: 100, μ: 11277492, ~: 9827475) LibOpContextNPTest:testOpContextNPTwoInputs() (gas: 46809) LibOpContextNPTest:testOpContextNPTwoOutputs() (gas: 37503) LibOpContextNPTest:testOpContextNPZeroOutputs() (gas: 36451) -LibOpCtPopNPTest:testOpCtPopNPEval(bytes32) (runs: 2068, μ: 75384, ~: 86680) -LibOpCtPopNPTest:testOpCtPopNPIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13758, ~: 13668) -LibOpCtPopNPTest:testOpCtPopNPRun(bytes32) (runs: 2068, μ: 16785, ~: 16785) +LibOpCtPopNPTest:testOpCtPopNPEval(bytes32) (runs: 2048, μ: 75151, ~: 86654) +LibOpCtPopNPTest:testOpCtPopNPIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13742, ~: 13659) +LibOpCtPopNPTest:testOpCtPopNPRun(bytes32) (runs: 2048, μ: 16785, ~: 16785) LibOpCtPopNPTest:testOpCtPopNPTwoInputs() (gas: 41379) LibOpCtPopNPTest:testOpCtPopNPTwoOutputs() (gas: 37196) LibOpCtPopNPTest:testOpCtPopNPZeroInputs() (gas: 31405) @@ -161,71 +161,71 @@ LibOpDecodeBitsNPTest:testOpDecodeBitsNPEvalTwoInputs() (gas: 48022) LibOpDecodeBitsNPTest:testOpDecodeBitsNPEvalTwoOutputs() (gas: 43819) LibOpDecodeBitsNPTest:testOpDecodeBitsNPEvalZeroInputs() (gas: 38094) LibOpDecodeBitsNPTest:testOpDecodeBitsNPEvalZeroOutputs() (gas: 42766) -LibOpDecodeBitsNPTest:testOpDecodeBitsNPIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint8,uint8) (runs: 2068, μ: 22194, ~: 22324) -LibOpDecodeBitsNPTest:testOpDecodeBitsNPIntegrityFail((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8) (runs: 2068, μ: 41597, ~: 41612) -LibOpDecodeBitsNPTest:testOpDecodeBitsNPIntegrityFailZeroLength((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8) (runs: 2068, μ: 35765, ~: 35548) -LibOpDecodeBitsNPTest:testOpDecodeBitsNPRun(bytes32,uint8,uint8) (runs: 2068, μ: 21105, ~: 20910) -LibOpDivTest:testDebugOpDivRun() (gas: 16536) +LibOpDecodeBitsNPTest:testOpDecodeBitsNPIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint8,uint8) (runs: 2048, μ: 22179, ~: 22272) +LibOpDecodeBitsNPTest:testOpDecodeBitsNPIntegrityFail((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8) (runs: 2048, μ: 41542, ~: 41603) +LibOpDecodeBitsNPTest:testOpDecodeBitsNPIntegrityFailZeroLength((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8) (runs: 2048, μ: 35713, ~: 35462) +LibOpDecodeBitsNPTest:testOpDecodeBitsNPRun(bytes32,uint8,uint8) (runs: 2048, μ: 21087, ~: 20910) +LibOpDivTest:testDebugOpDivRun() (gas: 12958) LibOpDivTest:testOpDivEvalOneInput() (gas: 127953) LibOpDivTest:testOpDivEvalOperandsDisallowed() (gas: 92422) -LibOpDivTest:testOpDivEvalThreeInputsHappy() (gas: 420503) +LibOpDivTest:testOpDivEvalThreeInputsHappy() (gas: 413179) LibOpDivTest:testOpDivEvalThreeInputsUnhappyExamples() (gas: 214390) LibOpDivTest:testOpDivEvalThreeInputsUnhappyOverflow() (gas: 69419) -LibOpDivTest:testOpDivEvalTwoInputsHappy() (gas: 365258) +LibOpDivTest:testOpDivEvalTwoInputsHappy() (gas: 357932) LibOpDivTest:testOpDivEvalTwoInputsUnhappyDivZero() (gas: 144146) LibOpDivTest:testOpDivEvalTwoInputsUnhappyOverflow() (gas: 60116) LibOpDivTest:testOpDivEvalTwoOutputs() (gas: 41530) LibOpDivTest:testOpDivEvalZeroInputs() (gas: 30353) LibOpDivTest:testOpDivEvalZeroOutputs() (gas: 40504) -LibOpDivTest:testOpDivIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2068, μ: 18267, ~: 18494) -LibOpDivTest:testOpDivIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13833, ~: 13750) -LibOpDivTest:testOpDivIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13834, ~: 13751) -LibOpDivTest:testOpDivRun(bytes32[]) (runs: 2056, μ: 82123, ~: 79216) +LibOpDivTest:testOpDivIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2048, μ: 18241, ~: 18469) +LibOpDivTest:testOpDivIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13818, ~: 13682) +LibOpDivTest:testOpDivIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13819, ~: 13683) +LibOpDivTest:testOpDivRun(bytes32[]) (runs: 2048, μ: 77173, ~: 74988) LibOpERC20AllowanceTest:testOpERC20AllowanceEvalFourInputs() (gas: 56147) -LibOpERC20AllowanceTest:testOpERC20AllowanceEvalHappy(uint256,uint8) (runs: 2068, μ: 72584, ~: 72496) +LibOpERC20AllowanceTest:testOpERC20AllowanceEvalHappy(uint256,uint8) (runs: 2048, μ: 72583, ~: 72496) LibOpERC20AllowanceTest:testOpERC20AllowanceEvalOneInput() (gas: 37285) LibOpERC20AllowanceTest:testOpERC20AllowanceEvalOperandDisallowed() (gas: 18704) LibOpERC20AllowanceTest:testOpERC20AllowanceEvalTwoInputs() (gas: 43854) LibOpERC20AllowanceTest:testOpERC20AllowanceEvalTwoOutputs() (gas: 50927) LibOpERC20AllowanceTest:testOpERC20AllowanceEvalZeroInputs() (gas: 31252) LibOpERC20AllowanceTest:testOpERC20AllowanceEvalZeroOutputs() (gas: 49903) -LibOpERC20AllowanceTest:testOpERC20AllowanceIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13722, ~: 13632) -LibOpERC20AllowanceTest:testOpERC20AllowanceRun(address,address,address,uint256,uint8) (runs: 2067, μ: 27897, ~: 27815) -LibOpERC20BalanceOfTest:testOpERC20BalanceOfEvalHappy(uint256,uint8) (runs: 2066, μ: 66503, ~: 66505) +LibOpERC20AllowanceTest:testOpERC20AllowanceIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13706, ~: 13623) +LibOpERC20AllowanceTest:testOpERC20AllowanceRun(address,address,address,uint256,uint8) (runs: 2048, μ: 27900, ~: 27815) +LibOpERC20BalanceOfTest:testOpERC20BalanceOfEvalHappy(uint256,uint8) (runs: 2048, μ: 66503, ~: 66505) LibOpERC20BalanceOfTest:testOpERC20BalanceOfEvalOneInput() (gas: 37396) LibOpERC20BalanceOfTest:testOpERC20BalanceOfEvalOperandDisallowed() (gas: 18762) -LibOpERC20BalanceOfTest:testOpERC20BalanceOfEvalOverflow(uint256,uint8) (runs: 2049, μ: 62719, ~: 62719) +LibOpERC20BalanceOfTest:testOpERC20BalanceOfEvalOverflow(uint256,uint8) (runs: 2048, μ: 62719, ~: 62719) LibOpERC20BalanceOfTest:testOpERC20BalanceOfEvalThreeInputs() (gas: 49800) LibOpERC20BalanceOfTest:testOpERC20BalanceOfEvalTwoOutputs() (gas: 44630) LibOpERC20BalanceOfTest:testOpERC20BalanceOfEvalZeroInputs() (gas: 31317) LibOpERC20BalanceOfTest:testOpERC20BalanceOfEvalZeroOutputs() (gas: 43562) -LibOpERC20BalanceOfTest:testOpERC20BalanceOfIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13701, ~: 13611) -LibOpERC20BalanceOfTest:testOpERC20BalanceOfRun(address,address,uint256,uint16,uint8) (runs: 2063, μ: 28232, ~: 28234) -LibOpERC20TotalSupplyTest:testOpERC20TotalSupplyEvalHappy(uint256,uint8) (runs: 2066, μ: 59622, ~: 59624) +LibOpERC20BalanceOfTest:testOpERC20BalanceOfIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13685, ~: 13602) +LibOpERC20BalanceOfTest:testOpERC20BalanceOfRun(address,address,uint256,uint16,uint8) (runs: 2048, μ: 28232, ~: 28234) +LibOpERC20TotalSupplyTest:testOpERC20TotalSupplyEvalHappy(uint256,uint8) (runs: 2048, μ: 59622, ~: 59624) LibOpERC20TotalSupplyTest:testOpERC20TotalSupplyEvalOperandDisallowed() (gas: 18925) -LibOpERC20TotalSupplyTest:testOpERC20TotalSupplyEvalOverflow(uint256,uint8) (runs: 2050, μ: 55804, ~: 55804) +LibOpERC20TotalSupplyTest:testOpERC20TotalSupplyEvalOverflow(uint256,uint8) (runs: 2048, μ: 55804, ~: 55804) LibOpERC20TotalSupplyTest:testOpERC20TotalSupplyEvalTwoInputs() (gas: 44082) LibOpERC20TotalSupplyTest:testOpERC20TotalSupplyEvalTwoOutputs() (gas: 38405) LibOpERC20TotalSupplyTest:testOpERC20TotalSupplyEvalZeroInputs() (gas: 31500) LibOpERC20TotalSupplyTest:testOpERC20TotalSupplyEvalZeroOutputs() (gas: 37377) -LibOpERC20TotalSupplyTest:testOpERC20TotalSupplyIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13745, ~: 13655) -LibOpERC20TotalSupplyTest:testOpERC20TotalSupplyNPRun(address,uint256,uint16,uint8) (runs: 2065, μ: 27422, ~: 27424) +LibOpERC20TotalSupplyTest:testOpERC20TotalSupplyIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13729, ~: 13646) +LibOpERC20TotalSupplyTest:testOpERC20TotalSupplyNPRun(address,uint256,uint16,uint8) (runs: 2048, μ: 27422, ~: 27424) LibOpERC5313OwnerTest:testOpERC5313OwnerEvalHappy() (gas: 55504) LibOpERC5313OwnerTest:testOpERC5313OwnerEvalOperandDisallowed() (gas: 18443) LibOpERC5313OwnerTest:testOpERC5313OwnerEvalTwoInputs() (gas: 43672) LibOpERC5313OwnerTest:testOpERC5313OwnerEvalTwoOutputs() (gas: 37837) LibOpERC5313OwnerTest:testOpERC5313OwnerEvalZeroInputs() (gas: 31088) LibOpERC5313OwnerTest:testOpERC5313OwnerEvalZeroOutputs() (gas: 36808) -LibOpERC5313OwnerTest:testOpERC5313OwnerOfIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13762, ~: 13672) -LibOpERC5313OwnerTest:testOpERC5313OwnerOfRun(address,address,uint16) (runs: 2066, μ: 23741, ~: 23741) -LibOpERC721BalanceOfTest:testOpERC721BalanceOfEvalHappy(address,address,uint256) (runs: 2064, μ: 107212, ~: 107374) -LibOpERC721BalanceOfTest:testOpERC721BalanceOfIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 19696, ~: 19949) +LibOpERC5313OwnerTest:testOpERC5313OwnerOfIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13746, ~: 13663) +LibOpERC5313OwnerTest:testOpERC5313OwnerOfRun(address,address,uint16) (runs: 2048, μ: 23741, ~: 23741) +LibOpERC721BalanceOfTest:testOpERC721BalanceOfEvalHappy(address,address,uint256) (runs: 2048, μ: 107210, ~: 107374) +LibOpERC721BalanceOfTest:testOpERC721BalanceOfIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 19692, ~: 19876) LibOpERC721BalanceOfTest:testOpERC721BalanceOfIntegrityFail0() (gas: 30952) LibOpERC721BalanceOfTest:testOpERC721BalanceOfIntegrityFail1() (gas: 35263) LibOpERC721BalanceOfTest:testOpERC721BalanceOfIntegrityFail3() (gas: 44740) LibOpERC721BalanceOfTest:testOpERC721BalanceOfIntegrityFailOperand() (gas: 21664) LibOpERC721BalanceOfTest:testOpERC721BalanceOfOneInput() (gas: 35745) -LibOpERC721BalanceOfTest:testOpERC721BalanceOfRun(address,address,uint256,uint16) (runs: 2064, μ: 26278, ~: 26281) +LibOpERC721BalanceOfTest:testOpERC721BalanceOfRun(address,address,uint256,uint16) (runs: 2048, μ: 26278, ~: 26281) LibOpERC721BalanceOfTest:testOpERC721BalanceOfThreeInputs() (gas: 45275) LibOpERC721BalanceOfTest:testOpERC721BalanceOfTwoOutputs() (gas: 41253) LibOpERC721BalanceOfTest:testOpERC721BalanceOfZeroInputs() (gas: 31401) @@ -234,30 +234,30 @@ LibOpERC721OwnerOfTest:testOpERC721OwnerOfNPEvalFail0() (gas: 30835) LibOpERC721OwnerOfTest:testOpERC721OwnerOfNPEvalFail1() (gas: 35144) LibOpERC721OwnerOfTest:testOpERC721OwnerOfNPEvalFail3() (gas: 44676) LibOpERC721OwnerOfTest:testOpERC721OwnerOfNPEvalFailOperand() (gas: 18295) -LibOpERC721OwnerOfTest:testOpERC721OwnerOfNPEvalHappy(address,uint256,address) (runs: 2067, μ: 97594, ~: 92786) +LibOpERC721OwnerOfTest:testOpERC721OwnerOfNPEvalHappy(address,uint256,address) (runs: 2048, μ: 605666, ~: 92981) LibOpERC721OwnerOfTest:testOpERC721OwnerOfNPEvalOneInput() (gas: 35617) LibOpERC721OwnerOfTest:testOpERC721OwnerOfNPEvalThreeInputs() (gas: 45156) LibOpERC721OwnerOfTest:testOpERC721OwnerOfNPEvalZeroInputs() (gas: 31297) LibOpERC721OwnerOfTest:testOpERC721OwnerOfNPEvalZeroOutputs() (gas: 39922) -LibOpERC721OwnerOfTest:testOpERC721OwnerOfNPIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8) (runs: 2068, μ: 13775, ~: 13705) -LibOpERC721OwnerOfTest:testOpERC721OwnerOfNPRun(address,bytes32,address,uint16) (runs: 2067, μ: 24357, ~: 24357) +LibOpERC721OwnerOfTest:testOpERC721OwnerOfNPIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8) (runs: 2048, μ: 13759, ~: 13698) +LibOpERC721OwnerOfTest:testOpERC721OwnerOfNPRun(address,bytes32,address,uint16) (runs: 2048, μ: 24357, ~: 24357) LibOpERC721OwnerOfTest:testOpERC721OwnerOfNPTwoOutputs() (gas: 40968) LibOpETest:testOpEEval() (gas: 44802) LibOpETest:testOpEEvalOneInput() (gas: 34410) LibOpETest:testOpEEvalTwoOutputs() (gas: 30756) LibOpETest:testOpEEvalZeroOutputs() (gas: 29705) -LibOpETest:testOpEIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 19737, ~: 19930) -LibOpETest:testOpERun(uint16) (runs: 2068, μ: 16216, ~: 16216) +LibOpETest:testOpEIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 19723, ~: 19973) +LibOpETest:testOpERun(uint16) (runs: 2048, μ: 16216, ~: 16216) LibOpEncodeBitsNPTest:testOpEncodeBitsNPEvalHappy() (gas: 838972) LibOpEncodeBitsNPTest:testOpEncodeBitsNPEvalOneInput() (gas: 42368) LibOpEncodeBitsNPTest:testOpEncodeBitsNPEvalThreeInputs() (gas: 52225) LibOpEncodeBitsNPTest:testOpEncodeBitsNPEvalTwoOutputs() (gas: 47996) LibOpEncodeBitsNPTest:testOpEncodeBitsNPEvalZeroInputs() (gas: 37334) LibOpEncodeBitsNPTest:testOpEncodeBitsNPEvalZeroOutputs() (gas: 46992) -LibOpEncodeBitsNPTest:testOpEncodeBitsNPIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8) (runs: 2068, μ: 18167, ~: 18156) -LibOpEncodeBitsNPTest:testOpEncodeBitsNPIntegrityFail((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8) (runs: 2068, μ: 41802, ~: 41817) -LibOpEncodeBitsNPTest:testOpEncodeBitsNPIntegrityFailZeroLength((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8) (runs: 2068, μ: 35891, ~: 35674) -LibOpEncodeBitsNPTest:testOpEncodeBitsNPRun(bytes32,bytes32,uint8,uint8) (runs: 2068, μ: 21485, ~: 21308) +LibOpEncodeBitsNPTest:testOpEncodeBitsNPIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8) (runs: 2048, μ: 18145, ~: 18147) +LibOpEncodeBitsNPTest:testOpEncodeBitsNPIntegrityFail((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8) (runs: 2048, μ: 41758, ~: 41813) +LibOpEncodeBitsNPTest:testOpEncodeBitsNPIntegrityFailZeroLength((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8) (runs: 2048, μ: 35839, ~: 35588) +LibOpEncodeBitsNPTest:testOpEncodeBitsNPRun(bytes32,bytes32,uint8,uint8) (runs: 2048, μ: 21493, ~: 21308) LibOpEnsureTest:testOpEnsureEvalBadOutputs() (gas: 34835) LibOpEnsureTest:testOpEnsureEvalBadOutputs2() (gas: 34284) LibOpEnsureTest:testOpEnsureEvalHappy() (gas: 167094) @@ -266,10 +266,10 @@ LibOpEnsureTest:testOpEnsureEvalThree() (gas: 45784) LibOpEnsureTest:testOpEnsureEvalUnhappy() (gas: 166023) LibOpEnsureTest:testOpEnsureEvalUnhappyOperand() (gas: 17158) LibOpEnsureTest:testOpEnsureEvalZero() (gas: 29771) -LibOpEnsureTest:testOpEnsureIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 19760, ~: 20016) -LibOpEnsureTest:testOpEnsureIntegrityUnhappy((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13824, ~: 13741) +LibOpEnsureTest:testOpEnsureIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 19748, ~: 19975) +LibOpEnsureTest:testOpEnsureIntegrityUnhappy((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13809, ~: 13673) LibOpEnsureTest:testOpEnsureOneOutput() (gas: 39848) -LibOpEnsureTest:testOpEnsureRun(bytes32,string) (runs: 2057, μ: 18185, ~: 18253) +LibOpEnsureTest:testOpEnsureRun(bytes32,string) (runs: 2048, μ: 18215, ~: 18253) LibOpEqualToNPTest:testOpEqualToEval2Inputs() (gas: 342281) LibOpEqualToNPTest:testOpEqualToEval2InputsBothOne() (gas: 58063) LibOpEqualToNPTest:testOpEqualToEval2InputsFirstOneSecondZero() (gas: 58708) @@ -278,8 +278,8 @@ LibOpEqualToNPTest:testOpEqualToEval2ZeroInputs() (gas: 58002) LibOpEqualToNPTest:testOpEqualToEvalFail0Inputs() (gas: 30201) LibOpEqualToNPTest:testOpEqualToEvalFail1Input() (gas: 34533) LibOpEqualToNPTest:testOpEqualToEvalFail3Inputs() (gas: 42999) -LibOpEqualToNPTest:testOpEqualToIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 19710, ~: 19971) -LibOpEqualToNPTest:testOpEqualToRun(bytes32,bytes32) (runs: 2068, μ: 17651, ~: 17574) +LibOpEqualToNPTest:testOpEqualToIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 19700, ~: 19930) +LibOpEqualToNPTest:testOpEqualToRun(bytes32,bytes32) (runs: 2048, μ: 17651, ~: 17574) LibOpEqualToNPTest:testOpEqualToTwoOutputs() (gas: 41305) LibOpEqualToNPTest:testOpEqualToZeroOutputs() (gas: 40214) LibOpEveryTest:testOpEveryEval1FalseInput() (gas: 52288) @@ -290,27 +290,27 @@ LibOpEveryTest:testOpEveryEval2MixedInputs2() (gas: 58299) LibOpEveryTest:testOpEveryEval2TrueInputs() (gas: 58733) LibOpEveryTest:testOpEveryEvalFail() (gas: 30001) LibOpEveryTest:testOpEveryEvalZeroWithExponent() (gas: 59369) -LibOpEveryTest:testOpEveryIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 19835, ~: 20079) -LibOpEveryTest:testOpEveryIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13872, ~: 13789) -LibOpEveryTest:testOpEveryRun(bytes32[]) (runs: 2056, μ: 21141, ~: 21161) +LibOpEveryTest:testOpEveryIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 19824, ~: 20070) +LibOpEveryTest:testOpEveryIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13857, ~: 13721) +LibOpEveryTest:testOpEveryRun(bytes32[]) (runs: 2048, μ: 21137, ~: 21161) LibOpEveryTest:testOpEveryTwoOutputs() (gas: 36219) LibOpEveryTest:testOpEveryZeroOutputs() (gas: 35190) LibOpExp2Test:testOpExp2EvalBad() (gas: 65901) LibOpExp2Test:testOpExp2EvalExample() (gas: 234439) LibOpExp2Test:testOpExp2EvalOperandDisallowed() (gas: 17788) -LibOpExp2Test:testOpExp2Integrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13780, ~: 13690) -LibOpExp2Test:testOpExp2Run(int224,int32,uint16) (runs: 2068, μ: 48592, ~: 42525) +LibOpExp2Test:testOpExp2Integrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13764, ~: 13681) +LibOpExp2Test:testOpExp2Run(int224,int32,uint16) (runs: 2048, μ: 48412, ~: 42525) LibOpExp2Test:testOpExp2TwoOutputs() (gas: 36144) LibOpExp2Test:testOpExp2ZeroOutputs() (gas: 35113) -LibOpExpTest:testOpExpEvalExample() (gas: 296385) +LibOpExpTest:testOpExpEvalExample() (gas: 296721) LibOpExpTest:testOpExpEvalOperandDisallowed() (gas: 17706) LibOpExpTest:testOpExpEvalTwoInputs() (gas: 40395) LibOpExpTest:testOpExpEvalZeroInputs() (gas: 30294) -LibOpExpTest:testOpExpIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13780, ~: 13690) -LibOpExpTest:testOpExpRun(int224,int32,uint16) (runs: 2068, μ: 77921, ~: 77206) +LibOpExpTest:testOpExpIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13764, ~: 13681) +LibOpExpTest:testOpExpRun(int224,int32,uint16) (runs: 2048, μ: 77808, ~: 76796) LibOpExpTest:testOpExpTwoOutputs() (gas: 36085) LibOpExpTest:testOpExpZeroOutputs() (gas: 35054) -LibOpExponentialGrowthTest:testOpExponentialGrowthEval() (gas: 814247) +LibOpExponentialGrowthTest:testOpExponentialGrowthEval() (gas: 814401) LibOpExponentialGrowthTest:testOpExponentialGrowthEvalFourInputs() (gas: 52019) LibOpExponentialGrowthTest:testOpExponentialGrowthEvalOneInput() (gas: 36596) LibOpExponentialGrowthTest:testOpExponentialGrowthEvalOperandDisallowed() (gas: 18890) @@ -318,25 +318,25 @@ LibOpExponentialGrowthTest:testOpExponentialGrowthEvalTwoInputs() (gas: 42043) LibOpExponentialGrowthTest:testOpExponentialGrowthEvalTwoOutputs() (gas: 47655) LibOpExponentialGrowthTest:testOpExponentialGrowthEvalZeroInputs() (gas: 31156) LibOpExponentialGrowthTest:testOpExponentialGrowthEvalZeroOutputs() (gas: 46586) -LibOpExponentialGrowthTest:testOpExponentialGrowthIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13758, ~: 13668) -LibOpExponentialGrowthTest:testOpExponentialGrowthRun(int224,int32,int224,int32,int224,int32,uint16) (runs: 2068, μ: 85803, ~: 88918) +LibOpExponentialGrowthTest:testOpExponentialGrowthIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13742, ~: 13659) +LibOpExponentialGrowthTest:testOpExponentialGrowthRun(int224,int32,int224,int32,int224,int32,uint16) (runs: 2048, μ: 85710, ~: 88855) LibOpExternNPTest:testOpExternNPEvalHappy() (gas: 101175) LibOpExternNPTest:testOpExternNPEvalMultipleInputsOutputsHappy() (gas: 117163) -LibOpExternNPTest:testOpExternNPIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),address,uint16,uint8,uint8) (runs: 2068, μ: 35909, ~: 35866) -LibOpExternNPTest:testOpExternNPIntegrityNotAnExternContract((uint256,uint256,uint256,bytes32[],uint256,bytes),address,uint16,uint8,uint8) (runs: 2068, μ: 54365, ~: 54542) -LibOpExternNPTest:testOpExternNPRunHappy(address,bytes32[],uint16,bytes32[],bytes32[]) (runs: 2066, μ: 119719, ~: 119797) +LibOpExternNPTest:testOpExternNPIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),address,uint16,uint8,uint8) (runs: 2048, μ: 35896, ~: 35908) +LibOpExternNPTest:testOpExternNPIntegrityNotAnExternContract((uint256,uint256,uint256,bytes32[],uint256,bytes),address,uint16,uint8,uint8) (runs: 2048, μ: 54348, ~: 54562) +LibOpExternNPTest:testOpExternNPRunHappy(address,bytes32[],uint16,bytes32[],bytes32[]) (runs: 2048, μ: 119443, ~: 119343) LibOpFloorTest:testOpFloorEval() (gas: 255810) LibOpFloorTest:testOpFloorEvalOperandDisallowed() (gas: 17806) -LibOpFloorTest:testOpFloorIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13759, ~: 13669) -LibOpFloorTest:testOpFloorRun(bytes32,uint16) (runs: 2068, μ: 16923, ~: 16734) +LibOpFloorTest:testOpFloorIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13743, ~: 13660) +LibOpFloorTest:testOpFloorRun(bytes32,uint16) (runs: 2048, μ: 16923, ~: 16734) LibOpFloorTest:testOpFloorTwoInputs() (gas: 40493) LibOpFloorTest:testOpFloorTwoOutputs() (gas: 36204) LibOpFloorTest:testOpFloorZeroInputs() (gas: 30437) LibOpFloorTest:testOpFloorZeroOutputs() (gas: 35197) LibOpFracTest:testOpFracEval() (gas: 340201) LibOpFracTest:testOpFracEvalOperandDisallowed() (gas: 17724) -LibOpFracTest:testOpFracIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13801, ~: 13711) -LibOpFracTest:testOpFracRun(bytes32,uint16) (runs: 2068, μ: 17238, ~: 17194) +LibOpFracTest:testOpFracIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13785, ~: 13702) +LibOpFracTest:testOpFracRun(bytes32,uint16) (runs: 2048, μ: 17238, ~: 17194) LibOpFracTest:testOpFracTwoInputs() (gas: 40380) LibOpFracTest:testOpFracTwoOutputs() (gas: 36134) LibOpFracTest:testOpFracZeroInputs() (gas: 30322) @@ -351,17 +351,17 @@ LibOpGetTest:testLibOpGetEvalTwoInputs() (gas: 39937) LibOpGetTest:testLibOpGetEvalTwoOutputs() (gas: 35502) LibOpGetTest:testLibOpGetEvalZeroInputs() (gas: 29898) LibOpGetTest:testLibOpGetEvalZeroOutputs() (gas: 34472) -LibOpGetTest:testLibOpGetIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 20606, ~: 20880) -LibOpGetTest:testLibOpGetRunState(bytes32,bytes32,uint16) (runs: 2068, μ: 19730, ~: 19734) -LibOpGetTest:testLibOpGetRunStateAndStore(bytes32,bytes32,bytes32,uint16) (runs: 2068, μ: 47704, ~: 47718) -LibOpGetTest:testLibOpGetRunStore(bytes32,bytes32,uint16) (runs: 2068, μ: 49975, ~: 49979) -LibOpGetTest:testLibOpGetRunStoreDifferentNamespace(bytes32,bytes32,uint16) (runs: 2068, μ: 51567, ~: 51571) -LibOpGetTest:testLibOpGetRunUnset(bytes32,uint16) (runs: 2068, μ: 24784, ~: 24788) -LibOpGmTest:testOpGmEval() (gas: 487766) +LibOpGetTest:testLibOpGetIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 20593, ~: 20830) +LibOpGetTest:testLibOpGetRunState(bytes32,bytes32,uint16) (runs: 2048, μ: 19730, ~: 19734) +LibOpGetTest:testLibOpGetRunStateAndStore(bytes32,bytes32,bytes32,uint16) (runs: 2048, μ: 47704, ~: 47718) +LibOpGetTest:testLibOpGetRunStore(bytes32,bytes32,uint16) (runs: 2048, μ: 49975, ~: 49979) +LibOpGetTest:testLibOpGetRunStoreDifferentNamespace(bytes32,bytes32,uint16) (runs: 2048, μ: 51567, ~: 51571) +LibOpGetTest:testLibOpGetRunUnset(bytes32,uint16) (runs: 2048, μ: 24784, ~: 24788) +LibOpGmTest:testOpGmEval() (gas: 487864) LibOpGmTest:testOpGmEvalOperandDisallowed() (gas: 17604) -LibOpGmTest:testOpGmIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13801, ~: 13711) +LibOpGmTest:testOpGmIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13785, ~: 13702) LibOpGmTest:testOpGmOneInput() (gas: 35301) -LibOpGmTest:testOpGmRun(int224,int32,int224,int32,uint16) (runs: 2068, μ: 90569, ~: 95322) +LibOpGmTest:testOpGmRun(int224,int32,int224,int32,uint16) (runs: 2048, μ: 90866, ~: 95379) LibOpGmTest:testOpGmThreeInputs() (gas: 45242) LibOpGmTest:testOpGmTwoOutputs() (gas: 40969) LibOpGmTest:testOpGmZeroOutputs() (gas: 39946) @@ -372,8 +372,8 @@ LibOpGreaterThanOrEqualToTest:testOpGreaterThanOrEqualToEval2ZeroInputs() (gas: LibOpGreaterThanOrEqualToTest:testOpGreaterThanOrEqualToEvalFail0Inputs() (gas: 31518) LibOpGreaterThanOrEqualToTest:testOpGreaterThanOrEqualToEvalFail1Input() (gas: 35967) LibOpGreaterThanOrEqualToTest:testOpGreaterThanOrEqualToEvalFail3Inputs() (gas: 44358) -LibOpGreaterThanOrEqualToTest:testOpGreaterThanOrEqualToIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8) (runs: 2068, μ: 13754, ~: 13684) -LibOpGreaterThanOrEqualToTest:testOpGreaterThanOrEqualToRun(bytes32,bytes32) (runs: 2068, μ: 17502, ~: 17431) +LibOpGreaterThanOrEqualToTest:testOpGreaterThanOrEqualToIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8) (runs: 2048, μ: 13738, ~: 13677) +LibOpGreaterThanOrEqualToTest:testOpGreaterThanOrEqualToRun(bytes32,bytes32) (runs: 2048, μ: 17500, ~: 17431) LibOpGreaterThanOrEqualToTest:testOpGreaterThanOrEqualToTwoOutputs() (gas: 43327) LibOpGreaterThanOrEqualToTest:testOpGreaterThanOrEqualToZeroOutputs() (gas: 42102) LibOpGreaterThanTest:testOpGreaterThanEval1_0Gt1() (gas: 59039) @@ -387,8 +387,8 @@ LibOpGreaterThanTest:testOpGreaterThanEvalFail1Input() (gas: 34911) LibOpGreaterThanTest:testOpGreaterThanEvalFail3Inputs() (gas: 43294) LibOpGreaterThanTest:testOpGreaterThanEvalNeg1Gt0() (gas: 59060) LibOpGreaterThanTest:testOpGreaterThanEvalNeg1_1GtNeg1_2() (gas: 61956) -LibOpGreaterThanTest:testOpGreaterThanIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 19741, ~: 19980) -LibOpGreaterThanTest:testOpGreaterThanRun(bytes32,bytes32) (runs: 2068, μ: 17525, ~: 17455) +LibOpGreaterThanTest:testOpGreaterThanIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 19729, ~: 19980) +LibOpGreaterThanTest:testOpGreaterThanRun(bytes32,bytes32) (runs: 2048, μ: 17527, ~: 17455) LibOpGreaterThanTest:testOpGreaterThanTwoOutputs() (gas: 42176) LibOpGreaterThanTest:testOpGreaterThanZeroOutputs() (gas: 41128) LibOpHashNPTest:testOpHashNPEval0Inputs() (gas: 46507) @@ -396,14 +396,14 @@ LibOpHashNPTest:testOpHashNPEval1Input() (gas: 55180) LibOpHashNPTest:testOpHashNPEval2Inputs() (gas: 63585) LibOpHashNPTest:testOpHashNPEval2InputsDifferent() (gas: 64259) LibOpHashNPTest:testOpHashNPEval2InputsOtherStack() (gas: 79088) -LibOpHashNPTest:testOpHashNPIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 19754, ~: 20002) -LibOpHashNPTest:testOpHashNPRun(bytes32[]) (runs: 2056, μ: 19544, ~: 19647) +LibOpHashNPTest:testOpHashNPIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 19735, ~: 19973) +LibOpHashNPTest:testOpHashNPRun(bytes32[]) (runs: 2048, μ: 19543, ~: 19647) LibOpHashNPTest:testOpHashNPTwoOutputs() (gas: 30966) LibOpHashNPTest:testOpHashNPZeroOutputs() (gas: 29592) -LibOpHeadroomTest:testOpHeadroomEval() (gas: 496678) +LibOpHeadroomTest:testOpHeadroomEval() (gas: 496818) LibOpHeadroomTest:testOpHeadroomEvalOperandDisallowed() (gas: 18047) -LibOpHeadroomTest:testOpHeadroomIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13759, ~: 13669) -LibOpHeadroomTest:testOpHeadroomRun(bytes32,uint16) (runs: 2068, μ: 22235, ~: 22527) +LibOpHeadroomTest:testOpHeadroomIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13743, ~: 13660) +LibOpHeadroomTest:testOpHeadroomRun(bytes32,uint16) (runs: 2048, μ: 22225, ~: 22495) LibOpHeadroomTest:testOpHeadroomTwoInputs() (gas: 40737) LibOpHeadroomTest:testOpHeadroomTwoOutputs() (gas: 36491) LibOpHeadroomTest:testOpHeadroomZeroInputs() (gas: 30679) @@ -424,12 +424,12 @@ LibOpIfTest:testOpIfEvalFail4Inputs() (gas: 46673) LibOpIfTest:testOpIfEvalTwoOutputs() (gas: 46293) LibOpIfTest:testOpIfEvalZeroExponent() (gas: 65514) LibOpIfTest:testOpIfEvalZeroOutputs() (gas: 45224) -LibOpIfTest:testOpIfIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 19711, ~: 19954) -LibOpIfTest:testOpIfRun(bytes32,bytes32,bytes32) (runs: 2068, μ: 17121, ~: 17122) +LibOpIfTest:testOpIfIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 19702, ~: 19949) +LibOpIfTest:testOpIfRun(bytes32,bytes32,bytes32) (runs: 2048, μ: 17121, ~: 17122) LibOpInvTest:testOpExpEvalOperandDisallowed() (gas: 17705) LibOpInvTest:testOpInvEval() (gas: 186018) -LibOpInvTest:testOpInvIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13759, ~: 13669) -LibOpInvTest:testOpInvRun(int224,int32,uint16) (runs: 2067, μ: 29258, ~: 29564) +LibOpInvTest:testOpInvIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13743, ~: 13660) +LibOpInvTest:testOpInvRun(int224,int32,uint16) (runs: 2048, μ: 29255, ~: 29564) LibOpInvTest:testOpInvTwoInputs() (gas: 40410) LibOpInvTest:testOpInvTwoOutputs() (gas: 36099) LibOpInvTest:testOpInvZeroInputs() (gas: 30332) @@ -439,8 +439,8 @@ LibOpIsZeroTest:testOpIsZeroEval1NonZeroInput() (gas: 52622) LibOpIsZeroTest:testOpIsZeroEval1ZeroInput() (gas: 52317) LibOpIsZeroTest:testOpIsZeroEvalFail0Inputs() (gas: 30110) LibOpIsZeroTest:testOpIsZeroEvalFail2Inputs() (gas: 38711) -LibOpIsZeroTest:testOpIsZeroNPIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 19817, ~: 20105) -LibOpIsZeroTest:testOpIsZeroRun(bytes32) (runs: 2068, μ: 16528, ~: 16529) +LibOpIsZeroTest:testOpIsZeroNPIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 19815, ~: 20075) +LibOpIsZeroTest:testOpIsZeroRun(bytes32) (runs: 2048, μ: 16528, ~: 16529) LibOpIsZeroTest:testOpIsZeroTwoOutputs() (gas: 36595) LibOpIsZeroTest:testOpIsZeroZeroOutputs() (gas: 35259) LibOpLessThanOrEqualToTest:testOpLessThanOrEqualToEval2InputsBothOne() (gas: 57629) @@ -450,13 +450,13 @@ LibOpLessThanOrEqualToTest:testOpLessThanOrEqualToEval2ZeroInputs() (gas: 57569) LibOpLessThanOrEqualToTest:testOpLessThanOrEqualToEvalFail0Inputs() (gas: 31253) LibOpLessThanOrEqualToTest:testOpLessThanOrEqualToEvalFail1Input() (gas: 35630) LibOpLessThanOrEqualToTest:testOpLessThanOrEqualToEvalFail3Inputs() (gas: 44135) -LibOpLessThanOrEqualToTest:testOpLessThanOrEqualToIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 19719, ~: 19973) -LibOpLessThanOrEqualToTest:testOpLessThanOrEqualToRun(bytes32,bytes32) (runs: 2068, μ: 17507, ~: 17437) +LibOpLessThanOrEqualToTest:testOpLessThanOrEqualToIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 19709, ~: 19979) +LibOpLessThanOrEqualToTest:testOpLessThanOrEqualToRun(bytes32,bytes32) (runs: 2048, μ: 17510, ~: 17437) LibOpLessThanOrEqualToTest:testOpLessThanOrEqualToTwoOutputs() (gas: 42927) LibOpLessThanOrEqualToTest:testOpLessThanOrEqualToZeroOutputs() (gas: 41880) LibOpLessThanTest:testOpLessThanEval2InputsFirstZeroSecondOne() (gas: 58778) LibOpLessThanTest:testOpLessThanEval2ZeroInputs() (gas: 57984) -LibOpLessThanTest:testOpLessThanIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 19744, ~: 19999) +LibOpLessThanTest:testOpLessThanIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 19725, ~: 19977) LibOpLessThanTest:testOpLessThanNP1_0Lt1() (gas: 58863) LibOpLessThanTest:testOpLessThanNP1_1Lt1_2() (gas: 61456) LibOpLessThanTest:testOpLessThanNPEval2InputsBothOne() (gas: 58092) @@ -465,11 +465,11 @@ LibOpLessThanTest:testOpLessThanNPMinus1Lt0() (gas: 58839) LibOpLessThanTest:testOpLessThanNPMinus1_1LtMinus1_2() (gas: 61692) LibOpLessThanTest:testOpLessThanNPTwoOutputs() (gas: 42220) LibOpLessThanTest:testOpLessThanNPZeroOutputs() (gas: 40293) -LibOpLessThanTest:testOpLessThanRun(bytes32,bytes32) (runs: 2068, μ: 17534, ~: 17461) +LibOpLessThanTest:testOpLessThanRun(bytes32,bytes32) (runs: 2048, μ: 17533, ~: 17461) LibOpLessThanTest:testOpLessThanToNPEvalFail0Inputs() (gas: 30304) LibOpLessThanTest:testOpLessThanToNPEvalFail1Input() (gas: 34615) LibOpLessThanTest:testOpLessThanToNPEvalFail3Inputs() (gas: 43037) -LibOpLinearGrowthTest:testOpLinearGrowthEval() (gas: 812680) +LibOpLinearGrowthTest:testOpLinearGrowthEval() (gas: 812792) LibOpLinearGrowthTest:testOpLinearGrowthEvalFourInputs() (gas: 51625) LibOpLinearGrowthTest:testOpLinearGrowthEvalOneInput() (gas: 36245) LibOpLinearGrowthTest:testOpLinearGrowthEvalOperandDisallowed() (gas: 18493) @@ -477,17 +477,17 @@ LibOpLinearGrowthTest:testOpLinearGrowthEvalTwoInputs() (gas: 41649) LibOpLinearGrowthTest:testOpLinearGrowthEvalTwoOutputs() (gas: 47220) LibOpLinearGrowthTest:testOpLinearGrowthEvalZeroInputs() (gas: 30740) LibOpLinearGrowthTest:testOpLinearGrowthEvalZeroOutputs() (gas: 46171) -LibOpLinearGrowthTest:testOpLinearGrowthIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13758, ~: 13668) -LibOpLinearGrowthTest:testOpLinearGrowthRun(int224,int32,int224,int32,int224,int32,uint16) (runs: 2068, μ: 41160, ~: 41487) +LibOpLinearGrowthTest:testOpLinearGrowthIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13742, ~: 13659) +LibOpLinearGrowthTest:testOpLinearGrowthRun(int224,int32,int224,int32,int224,int32,uint16) (runs: 2048, μ: 41159, ~: 41475) LibOpMaxNegativeValueTest:testOpMaxNegativeValueEval() (gas: 47573) LibOpMaxNegativeValueTest:testOpMaxNegativeValueEvalFail() (gas: 35335) LibOpMaxNegativeValueTest:testOpMaxNegativeValueRun() (gas: 16314) LibOpMaxNegativeValueTest:testOpMaxNegativeValueTwoOutputs() (gas: 32077) LibOpMaxNegativeValueTest:testOpMaxNegativeValueZeroOutputs() (gas: 31069) -LibOpMaxNegativeValueTest:testOpMaxValueIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 19707, ~: 19964) +LibOpMaxNegativeValueTest:testOpMaxValueIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 19695, ~: 19930) LibOpMaxPositiveValueTest:testOpMaxPositiveValueEval() (gas: 47572) LibOpMaxPositiveValueTest:testOpMaxPositiveValueEvalFail() (gas: 35356) -LibOpMaxPositiveValueTest:testOpMaxPositiveValueIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 19735, ~: 19930) +LibOpMaxPositiveValueTest:testOpMaxPositiveValueIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 19731, ~: 19988) LibOpMaxPositiveValueTest:testOpMaxPositiveValueRun() (gas: 16317) LibOpMaxPositiveValueTest:testOpMaxPositiveValueTwoOutputs() (gas: 32076) LibOpMaxPositiveValueTest:testOpMaxPositiveValueZeroOutputs() (gas: 31068) @@ -497,25 +497,25 @@ LibOpMaxTest:testOpMaxEvalOneInput() (gas: 130678) LibOpMaxTest:testOpMaxEvalOperandDisallowed() (gas: 59534) LibOpMaxTest:testOpMaxEvalTwoOutputs() (gas: 40982) LibOpMaxTest:testOpMaxEvalZeroInputs() (gas: 30311) -LibOpMaxTest:testOpMaxIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2068, μ: 18226, ~: 18415) -LibOpMaxTest:testOpMaxIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13834, ~: 13751) -LibOpMaxTest:testOpMaxIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13856, ~: 13773) -LibOpMaxTest:testOpMaxRun(bytes32[]) (runs: 2056, μ: 26868, ~: 26623) +LibOpMaxTest:testOpMaxIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2048, μ: 18215, ~: 18420) +LibOpMaxTest:testOpMaxIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13819, ~: 13683) +LibOpMaxTest:testOpMaxIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13841, ~: 13705) +LibOpMaxTest:testOpMaxRun(bytes32[]) (runs: 2048, μ: 26857, ~: 26623) LibOpMaxUint256Test:testOpMaxUint256Eval() (gas: 47502) LibOpMaxUint256Test:testOpMaxUint256EvalFail() (gas: 35277) -LibOpMaxUint256Test:testOpMaxUint256Integrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 19691, ~: 19948) +LibOpMaxUint256Test:testOpMaxUint256Integrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 19681, ~: 19954) LibOpMaxUint256Test:testOpMaxUint256Run() (gas: 16081) LibOpMaxUint256Test:testOpMaxUint256TwoOutputs() (gas: 32039) LibOpMaxUint256Test:testOpMaxUint256ZeroOutputs() (gas: 30944) LibOpMinNegativeValueTest:testOpMinNegativeValueEval() (gas: 47599) LibOpMinNegativeValueTest:testOpMinNegativeValueEvalFail() (gas: 35357) -LibOpMinNegativeValueTest:testOpMinNegativeValueIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 19715, ~: 19938) +LibOpMinNegativeValueTest:testOpMinNegativeValueIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 19706, ~: 19951) LibOpMinNegativeValueTest:testOpMinNegativeValueRun() (gas: 16345) LibOpMinNegativeValueTest:testOpMinNegativeValueTwoOutputs() (gas: 32098) LibOpMinNegativeValueTest:testOpMinNegativeValueZeroOutputs() (gas: 31068) LibOpMinPositiveValueTest:testOpMinPositiveValueEval() (gas: 47585) LibOpMinPositiveValueTest:testOpMinPositiveValueEvalFail() (gas: 35314) -LibOpMinPositiveValueTest:testOpMinPositiveValueIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 19693, ~: 19949) +LibOpMinPositiveValueTest:testOpMinPositiveValueIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 19686, ~: 19933) LibOpMinPositiveValueTest:testOpMinPositiveValueRun() (gas: 16364) LibOpMinPositiveValueTest:testOpMinPositiveValueTwoOutputs() (gas: 32097) LibOpMinPositiveValueTest:testOpMinPositiveValueZeroOutputs() (gas: 31067) @@ -524,11 +524,11 @@ LibOpMinTest:testOpMinEval3InputsHappy() (gas: 3576130) LibOpMinTest:testOpMinEvalOneInput() (gas: 130466) LibOpMinTest:testOpMinEvalOperandDisallowed() (gas: 62253) LibOpMinTest:testOpMinEvalZeroInputs() (gas: 30965) -LibOpMinTest:testOpMinIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2068, μ: 18303, ~: 18528) -LibOpMinTest:testOpMinIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13857, ~: 13774) -LibOpMinTest:testOpMinIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13834, ~: 13751) -LibOpMinTest:testOpMinRun(bytes32[],uint16) (runs: 2056, μ: 26814, ~: 26915) -LibOpMulTest:testOpDecimal18MulNPIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13835, ~: 13752) +LibOpMinTest:testOpMinIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2048, μ: 18287, ~: 18458) +LibOpMinTest:testOpMinIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13842, ~: 13706) +LibOpMinTest:testOpMinIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13819, ~: 13683) +LibOpMinTest:testOpMinRun(bytes32[],uint16) (runs: 2048, μ: 26825, ~: 26897) +LibOpMulTest:testOpDecimal18MulNPIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13820, ~: 13684) LibOpMulTest:testOpMulEvalOneInput() (gas: 127888) LibOpMulTest:testOpMulEvalOperandsDisallowed() (gas: 92444) LibOpMulTest:testOpMulEvalThreeInputsHappy() (gas: 778486) @@ -536,21 +536,21 @@ LibOpMulTest:testOpMulEvalThreeInputsUnhappyOverflow() (gas: 64443) LibOpMulTest:testOpMulEvalTwoInputsHappy() (gas: 540199) LibOpMulTest:testOpMulEvalTwoInputsUnhappyOverflow() (gas: 56604) LibOpMulTest:testOpMulEvalZeroInputs() (gas: 30375) -LibOpMulTest:testOpMulIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2068, μ: 18264, ~: 18485) -LibOpMulTest:testOpMulIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13878, ~: 13795) -LibOpMulTest:testOpMulRun(bytes32[]) (runs: 2056, μ: 40949, ~: 37761) +LibOpMulTest:testOpMulIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2048, μ: 18256, ~: 18485) +LibOpMulTest:testOpMulIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13863, ~: 13727) +LibOpMulTest:testOpMulRun(bytes32[]) (runs: 2048, μ: 41003, ~: 37761) LibOpMulTest:testOpMulTwoOutputs() (gas: 41024) LibOpMulTest:testOpMulZeroOutputs() (gas: 39978) -LibOpPowTest:testOpPowEval() (gas: 554170) +LibOpPowTest:testOpPowEval() (gas: 554212) LibOpPowTest:testOpPowEvalOneInput() (gas: 35597) LibOpPowTest:testOpPowEvalOperandDisallowed() (gas: 17869) -LibOpPowTest:testOpPowIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13779, ~: 13689) +LibOpPowTest:testOpPowIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13763, ~: 13680) LibOpPowTest:testOpPowNegativeBaseError() (gas: 103562) -LibOpPowTest:testOpPowRun(int224,int32,int224,int32) (runs: 2068, μ: 83067, ~: 89519) +LibOpPowTest:testOpPowRun(int224,int32,int224,int32) (runs: 2048, μ: 83235, ~: 89515) LibOpPowTest:testOpPowThreeInputs() (gas: 45517) LibOpPowTest:testOpPowTwoOutputs() (gas: 41224) LibOpPowTest:testOpPowZeroOutputs() (gas: 40219) -LibOpSetTest:testLibOpSet(bytes32,bytes32) (runs: 2068, μ: 17726, ~: 17731) +LibOpSetTest:testLibOpSet(bytes32,bytes32) (runs: 2048, μ: 17726, ~: 17731) LibOpSetTest:testLibOpSetEvalOneInput() (gas: 34360) LibOpSetTest:testLibOpSetEvalOneOutput() (gas: 40024) LibOpSetTest:testLibOpSetEvalOperandsDisallowed() (gas: 56652) @@ -559,57 +559,57 @@ LibOpSetTest:testLibOpSetEvalThreeInputs() (gas: 44847) LibOpSetTest:testLibOpSetEvalTwoInputs() (gas: 260068) LibOpSetTest:testLibOpSetEvalTwoOutputs() (gas: 40646) LibOpSetTest:testLibOpSetEvalZeroInputs() (gas: 29513) -LibOpSetTest:testLibOpSetIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 20477, ~: 20694) +LibOpSetTest:testLibOpSetIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 20468, ~: 20709) LibOpShiftBitsLeftNPTest:testOpShiftBitsLeftNPEval() (gas: 885469) LibOpShiftBitsLeftNPTest:testOpShiftBitsLeftNPIntegrityFailBadShiftAmount() (gas: 129103) LibOpShiftBitsLeftNPTest:testOpShiftBitsLeftNPIntegrityFailTwoInputs() (gas: 44783) LibOpShiftBitsLeftNPTest:testOpShiftBitsLeftNPIntegrityFailTwoOutputs() (gas: 40612) LibOpShiftBitsLeftNPTest:testOpShiftBitsLeftNPIntegrityFailZeroInputs() (gas: 34832) LibOpShiftBitsLeftNPTest:testOpShiftBitsLeftNPIntegrityFailZeroOutputs() (gas: 39537) -LibOpShiftBitsLeftNPTest:testOpShiftBitsLeftNPIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint8) (runs: 2067, μ: 19815, ~: 19796) -LibOpShiftBitsLeftNPTest:testOpShiftBitsLeftNPIntegrityNoop((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8) (runs: 2068, μ: 35857, ~: 35639) -LibOpShiftBitsLeftNPTest:testOpShiftBitsLeftNPIntegrityZero((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2068, μ: 42075, ~: 42720) -LibOpShiftBitsLeftNPTest:testOpShiftBitsLeftNPRun(bytes32,uint8) (runs: 2068, μ: 16923, ~: 16923) +LibOpShiftBitsLeftNPTest:testOpShiftBitsLeftNPIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint8) (runs: 2048, μ: 19805, ~: 19796) +LibOpShiftBitsLeftNPTest:testOpShiftBitsLeftNPIntegrityNoop((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8) (runs: 2048, μ: 35804, ~: 35554) +LibOpShiftBitsLeftNPTest:testOpShiftBitsLeftNPIntegrityZero((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2048, μ: 42031, ~: 42505) +LibOpShiftBitsLeftNPTest:testOpShiftBitsLeftNPRun(bytes32,uint8) (runs: 2048, μ: 16923, ~: 16923) LibOpShiftBitsRightNPTest:testOpShiftBitsRightNPEval() (gas: 1061673) LibOpShiftBitsRightNPTest:testOpShiftBitsRightNPIntegrityFailBadShiftAmount() (gas: 129691) -LibOpShiftBitsRightNPTest:testOpShiftBitsRightNPIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint8) (runs: 119, μ: 19900, ~: 19161) -LibOpShiftBitsRightNPTest:testOpShiftBitsRightNPIntegrityNoop((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8) (runs: 120, μ: 37312, ~: 37510) -LibOpShiftBitsRightNPTest:testOpShiftBitsRightNPIntegrityZero((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 120, μ: 41129, ~: 41287) -LibOpShiftBitsRightNPTest:testOpShiftBitsRightNPRun(bytes32,uint8) (runs: 2068, μ: 16926, ~: 16926) +LibOpShiftBitsRightNPTest:testOpShiftBitsRightNPIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint8) (runs: 100, μ: 19583, ~: 18988) +LibOpShiftBitsRightNPTest:testOpShiftBitsRightNPIntegrityNoop((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8) (runs: 100, μ: 36519, ~: 36416) +LibOpShiftBitsRightNPTest:testOpShiftBitsRightNPIntegrityZero((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 100, μ: 40359, ~: 40735) +LibOpShiftBitsRightNPTest:testOpShiftBitsRightNPRun(bytes32,uint8) (runs: 2048, μ: 16926, ~: 16926) LibOpShiftBitsRightNPTest:testOpShiftBitsRightNPTwoInputs() (gas: 44907) LibOpShiftBitsRightNPTest:testOpShiftBitsRightNPTwoOutputs() (gas: 40672) LibOpShiftBitsRightNPTest:testOpShiftBitsRightNPZeroInputs() (gas: 34891) LibOpShiftBitsRightNPTest:testOpShiftBitsRightNPZeroOutputs() (gas: 39621) LibOpSqrtTest:testOpSqrtEvalBad() (gas: 65848) -LibOpSqrtTest:testOpSqrtEvalExamples() (gas: 249847) +LibOpSqrtTest:testOpSqrtEvalExamples() (gas: 249889) LibOpSqrtTest:testOpSqrtEvalOperandDisallowed() (gas: 17724) LibOpSqrtTest:testOpSqrtEvalTwoOutputs() (gas: 36161) LibOpSqrtTest:testOpSqrtEvalZeroOutputs() (gas: 35107) -LibOpSqrtTest:testOpSqrtIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13758, ~: 13668) -LibOpSqrtTest:testOpSqrtRun(bytes32) (runs: 2068, μ: 69320, ~: 72454) +LibOpSqrtTest:testOpSqrtIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13742, ~: 13659) +LibOpSqrtTest:testOpSqrtRun(bytes32) (runs: 2048, μ: 69704, ~: 72670) LibOpStackNPTest:testOpStackEval() (gas: 66488) LibOpStackNPTest:testOpStackEvalSeveral() (gas: 91131) -LibOpStackNPTest:testOpStackNPIntegrity(bytes,uint256,bytes32[],bytes32) (runs: 2068, μ: 18927, ~: 18737) -LibOpStackNPTest:testOpStackNPIntegrityOOBStack(bytes,uint16,bytes32[],uint16,uint256) (runs: 2068, μ: 41427, ~: 41615) +LibOpStackNPTest:testOpStackNPIntegrity(bytes,uint256,bytes32[],bytes32) (runs: 2048, μ: 18933, ~: 18752) +LibOpStackNPTest:testOpStackNPIntegrityOOBStack(bytes,uint16,bytes32[],uint16,uint256) (runs: 2048, μ: 41506, ~: 41617) LibOpStackNPTest:testOpStackNPMultipleOutputErrorSugared() (gas: 40253) LibOpStackNPTest:testOpStackNPMultipleOutputErrorUnsugared() (gas: 43291) -LibOpStackNPTest:testOpStackNPRun(bytes32[][],uint256) (runs: 120, μ: 1942983, ~: 1719987) +LibOpStackNPTest:testOpStackNPRun(bytes32[][],uint256) (runs: 100, μ: 2166644, ~: 2139721) LibOpStackNPTest:testOpStackNPZeroOutputErrorSugared() (gas: 38798) LibOpStackNPTest:testOpStackNPZeroOutputErrorUnsugared() (gas: 41801) LibOpSubTest:testOpSubEvalOneInput() (gas: 130643) -LibOpSubTest:testOpSubEvalThreeInputs() (gas: 232813) -LibOpSubTest:testOpSubEvalTwoInputs() (gas: 450323) +LibOpSubTest:testOpSubEvalThreeInputs() (gas: 232869) +LibOpSubTest:testOpSubEvalTwoInputs() (gas: 450407) LibOpSubTest:testOpSubEvalZeroInputs() (gas: 30308) -LibOpSubTest:testOpSubIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2068, μ: 18252, ~: 18478) -LibOpSubTest:testOpSubIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13878, ~: 13795) -LibOpSubTest:testOpSubIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13878, ~: 13795) -LibOpSubTest:testOpSubRun(bytes32[]) (runs: 2056, μ: 103017, ~: 102698) +LibOpSubTest:testOpSubIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2048, μ: 18243, ~: 18448) +LibOpSubTest:testOpSubIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13863, ~: 13727) +LibOpSubTest:testOpSubIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13863, ~: 13727) +LibOpSubTest:testOpSubRun(bytes32[]) (runs: 2048, μ: 102997, ~: 102228) LibOpTimestampTest:testOpBlockTimestampNPEvalFail() (gas: 66825) LibOpTimestampTest:testOpBlockTimestampNPTwoOutputs() (gas: 59700) LibOpTimestampTest:testOpBlockTimestampNPZeroOutputs() (gas: 57575) -LibOpTimestampTest:testOpTimestampEval(uint256) (runs: 2068, μ: 86162, ~: 85841) -LibOpTimestampTest:testOpTimestampIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 19702, ~: 19932) -LibOpTimestampTest:testOpTimestampRun(uint256) (runs: 2068, μ: 20727, ~: 20503) +LibOpTimestampTest:testOpTimestampEval(uint256) (runs: 2048, μ: 86159, ~: 85841) +LibOpTimestampTest:testOpTimestampIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 19696, ~: 19932) +LibOpTimestampTest:testOpTimestampRun(uint256) (runs: 2048, μ: 20724, ~: 20503) LibOpUint256AddTest:testOpUint256AddEvalOneInput() (gas: 129040) LibOpUint256AddTest:testOpUint256AddEvalOperandsDisallowed() (gas: 96332) LibOpUint256AddTest:testOpUint256AddEvalThreeInputsHappy() (gas: 210832) @@ -618,10 +618,10 @@ LibOpUint256AddTest:testOpUint256AddEvalTwoInputsHappy() (gas: 281722) LibOpUint256AddTest:testOpUint256AddEvalTwoOutputs() (gas: 41694) LibOpUint256AddTest:testOpUint256AddEvalZeroInputs() (gas: 31001) LibOpUint256AddTest:testOpUint256AddEvalZeroOutputs() (gas: 40625) -LibOpUint256AddTest:testOpUint256AddIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2068, μ: 18268, ~: 18432) -LibOpUint256AddTest:testOpUint256AddIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13836, ~: 13753) -LibOpUint256AddTest:testOpUint256AddIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13834, ~: 13751) -LibOpUint256AddTest:testOpUint256AddRun(bytes32[]) (runs: 2056, μ: 20291, ~: 19734) +LibOpUint256AddTest:testOpUint256AddIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2048, μ: 18254, ~: 18432) +LibOpUint256AddTest:testOpUint256AddIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13821, ~: 13685) +LibOpUint256AddTest:testOpUint256AddIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13819, ~: 13683) +LibOpUint256AddTest:testOpUint256AddRun(bytes32[]) (runs: 2048, μ: 20290, ~: 19749) LibOpUint256DivTest:testOpUint256DivEval2InputsHappy() (gas: 775286) LibOpUint256DivTest:testOpUint256DivEval2InputsUnhappy() (gas: 144531) LibOpUint256DivTest:testOpUint256DivEval3InputsHappy() (gas: 1414759) @@ -631,45 +631,45 @@ LibOpUint256DivTest:testOpUint256DivEvalOperandDisallowed() (gas: 62105) LibOpUint256DivTest:testOpUint256DivEvalTwoOutputs() (gas: 41695) LibOpUint256DivTest:testOpUint256DivEvalZeroInputs() (gas: 31002) LibOpUint256DivTest:testOpUint256DivEvalZeroOutputs() (gas: 40603) -LibOpUint256DivTest:testOpUint256DivIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2068, μ: 18291, ~: 18513) -LibOpUint256DivTest:testOpUint256DivIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13856, ~: 13773) -LibOpUint256DivTest:testOpUint256DivIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13836, ~: 13753) -LibOpUint256DivTest:testOpUint256DivRun(bytes32[]) (runs: 2056, μ: 24950, ~: 25264) +LibOpUint256DivTest:testOpUint256DivIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2048, μ: 18276, ~: 18444) +LibOpUint256DivTest:testOpUint256DivIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13841, ~: 13705) +LibOpUint256DivTest:testOpUint256DivIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13821, ~: 13685) +LibOpUint256DivTest:testOpUint256DivRun(bytes32[]) (runs: 2048, μ: 24949, ~: 25264) LibOpUint256ERC20AllowanceTest:testOpERC20AllowanceEvalFourInputs() (gas: 56948) -LibOpUint256ERC20AllowanceTest:testOpERC20AllowanceEvalHappy(uint256) (runs: 2068, μ: 70611, ~: 70611) +LibOpUint256ERC20AllowanceTest:testOpERC20AllowanceEvalHappy(uint256) (runs: 2048, μ: 70611, ~: 70611) LibOpUint256ERC20AllowanceTest:testOpERC20AllowanceEvalOneInput() (gas: 38124) LibOpUint256ERC20AllowanceTest:testOpERC20AllowanceEvalOperandDisallowed() (gas: 19352) LibOpUint256ERC20AllowanceTest:testOpERC20AllowanceEvalTwoInputs() (gas: 44502) LibOpUint256ERC20AllowanceTest:testOpERC20AllowanceEvalTwoOutputs() (gas: 51575) LibOpUint256ERC20AllowanceTest:testOpERC20AllowanceEvalZeroInputs() (gas: 31878) LibOpUint256ERC20AllowanceTest:testOpERC20AllowanceEvalZeroOutputs() (gas: 50551) -LibOpUint256ERC20AllowanceTest:testOpERC20AllowanceIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13782, ~: 13692) -LibOpUint256ERC20AllowanceTest:testOpERC20AllowanceRun(address,address,address,uint256) (runs: 2067, μ: 24856, ~: 24856) -LibOpUint256ERC20BalanceOfTest:testOpERC20BalanceOfEvalHappy(uint256) (runs: 2068, μ: 63631, ~: 63631) +LibOpUint256ERC20AllowanceTest:testOpERC20AllowanceIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13766, ~: 13683) +LibOpUint256ERC20AllowanceTest:testOpERC20AllowanceRun(address,address,address,uint256) (runs: 2048, μ: 24856, ~: 24856) +LibOpUint256ERC20BalanceOfTest:testOpERC20BalanceOfEvalHappy(uint256) (runs: 2048, μ: 63631, ~: 63631) LibOpUint256ERC20BalanceOfTest:testOpERC20BalanceOfEvalOneInput() (gas: 38163) LibOpUint256ERC20BalanceOfTest:testOpERC20BalanceOfEvalOperandDisallowed() (gas: 19410) LibOpUint256ERC20BalanceOfTest:testOpERC20BalanceOfEvalThreeInputs() (gas: 50442) LibOpUint256ERC20BalanceOfTest:testOpERC20BalanceOfEvalTwoOutputs() (gas: 45272) LibOpUint256ERC20BalanceOfTest:testOpERC20BalanceOfEvalZeroInputs() (gas: 31981) LibOpUint256ERC20BalanceOfTest:testOpERC20BalanceOfEvalZeroOutputs() (gas: 44227) -LibOpUint256ERC20BalanceOfTest:testOpERC20BalanceOfIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13805, ~: 13715) -LibOpUint256ERC20BalanceOfTest:testOpERC20BalanceOfRun(address,address,uint256,uint16) (runs: 2067, μ: 24306, ~: 24306) -LibOpUint256ERC20TotalSupplyTest:testOpERC20TotalSupplyEvalHappy(uint256) (runs: 2068, μ: 56688, ~: 56688) +LibOpUint256ERC20BalanceOfTest:testOpERC20BalanceOfIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13789, ~: 13706) +LibOpUint256ERC20BalanceOfTest:testOpERC20BalanceOfRun(address,address,uint256,uint16) (runs: 2048, μ: 24306, ~: 24306) +LibOpUint256ERC20TotalSupplyTest:testOpERC20TotalSupplyEvalHappy(uint256) (runs: 2048, μ: 56688, ~: 56688) LibOpUint256ERC20TotalSupplyTest:testOpERC20TotalSupplyEvalOperandDisallowed() (gas: 19573) LibOpUint256ERC20TotalSupplyTest:testOpERC20TotalSupplyEvalTwoInputs() (gas: 44724) LibOpUint256ERC20TotalSupplyTest:testOpERC20TotalSupplyEvalTwoOutputs() (gas: 39059) LibOpUint256ERC20TotalSupplyTest:testOpERC20TotalSupplyEvalZeroInputs() (gas: 32164) LibOpUint256ERC20TotalSupplyTest:testOpERC20TotalSupplyEvalZeroOutputs() (gas: 37986) -LibOpUint256ERC20TotalSupplyTest:testOpERC20TotalSupplyIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2068, μ: 13805, ~: 13715) -LibOpUint256ERC20TotalSupplyTest:testOpERC20TotalSupplyRun(address,uint256,uint16) (runs: 2065, μ: 23458, ~: 23458) -LibOpUint256ERC721BalanceOfTest:testOpERC721BalanceOfEvalHappy(address,address,uint256) (runs: 2066, μ: 106496, ~: 106646) -LibOpUint256ERC721BalanceOfTest:testOpERC721BalanceOfIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2068, μ: 19723, ~: 19979) +LibOpUint256ERC20TotalSupplyTest:testOpERC20TotalSupplyIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),bytes32) (runs: 2048, μ: 13789, ~: 13706) +LibOpUint256ERC20TotalSupplyTest:testOpERC20TotalSupplyRun(address,uint256,uint16) (runs: 2048, μ: 23458, ~: 23458) +LibOpUint256ERC721BalanceOfTest:testOpERC721BalanceOfEvalHappy(address,address,uint256) (runs: 2048, μ: 106490, ~: 106646) +LibOpUint256ERC721BalanceOfTest:testOpERC721BalanceOfIntegrity((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint8,uint16) (runs: 2048, μ: 19702, ~: 19929) LibOpUint256ERC721BalanceOfTest:testOpERC721BalanceOfIntegrityFail0() (gas: 31600) LibOpUint256ERC721BalanceOfTest:testOpERC721BalanceOfIntegrityFail1() (gas: 36005) LibOpUint256ERC721BalanceOfTest:testOpERC721BalanceOfIntegrityFail3() (gas: 45388) LibOpUint256ERC721BalanceOfTest:testOpERC721BalanceOfIntegrityFailOperand() (gas: 22302) LibOpUint256ERC721BalanceOfTest:testOpERC721BalanceOfOneInput() (gas: 36550) -LibOpUint256ERC721BalanceOfTest:testOpERC721BalanceOfRun(address,address,uint256,uint16) (runs: 2066, μ: 24367, ~: 24367) +LibOpUint256ERC721BalanceOfTest:testOpERC721BalanceOfRun(address,address,uint256,uint16) (runs: 2048, μ: 24367, ~: 24367) LibOpUint256ERC721BalanceOfTest:testOpERC721BalanceOfThreeInputs() (gas: 45923) LibOpUint256ERC721BalanceOfTest:testOpERC721BalanceOfTwoOutputs() (gas: 41891) LibOpUint256ERC721BalanceOfTest:testOpERC721BalanceOfZeroInputs() (gas: 32049) @@ -683,11 +683,11 @@ LibOpUint256MulTest:testOpUint256MulEvalTwoInputsUnhappy() (gas: 144581) LibOpUint256MulTest:testOpUint256MulEvalTwoOutputs() (gas: 41639) LibOpUint256MulTest:testOpUint256MulEvalZeroInputs() (gas: 31055) LibOpUint256MulTest:testOpUint256MulEvalZeroOutputs() (gas: 40638) -LibOpUint256MulTest:testOpUint256MulIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2068, μ: 18225, ~: 18448) -LibOpUint256MulTest:testOpUint256MulIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13878, ~: 13795) -LibOpUint256MulTest:testOpUint256MulIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13835, ~: 13752) -LibOpUint256MulTest:testOpUint256MulRun(bytes32[]) (runs: 2056, μ: 19083, ~: 19177) -LibOpUint256PowTest:testOpUint256ExpIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2068, μ: 18245, ~: 18461) +LibOpUint256MulTest:testOpUint256MulIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2048, μ: 18212, ~: 18414) +LibOpUint256MulTest:testOpUint256MulIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13863, ~: 13727) +LibOpUint256MulTest:testOpUint256MulIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13820, ~: 13684) +LibOpUint256MulTest:testOpUint256MulRun(bytes32[]) (runs: 2048, μ: 19037, ~: 19177) +LibOpUint256PowTest:testOpUint256ExpIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2048, μ: 18230, ~: 18434) LibOpUint256PowTest:testOpUint256PowEval2InputsHappy() (gas: 877153) LibOpUint256PowTest:testOpUint256PowEval2InputsUnhappy() (gas: 146561) LibOpUint256PowTest:testOpUint256PowEval3InputsHappy() (gas: 1990823) @@ -697,9 +697,9 @@ LibOpUint256PowTest:testOpUint256PowEvalOperandDisallowed() (gas: 62797) LibOpUint256PowTest:testOpUint256PowEvalTwoOutputs() (gas: 41824) LibOpUint256PowTest:testOpUint256PowEvalZeroInputs() (gas: 31194) LibOpUint256PowTest:testOpUint256PowEvalZeroOutputs() (gas: 40756) -LibOpUint256PowTest:testOpUint256PowIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13858, ~: 13775) -LibOpUint256PowTest:testOpUint256PowIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13835, ~: 13752) -LibOpUint256PowTest:testOpUint256PowRun(bytes32[]) (runs: 2056, μ: 19538, ~: 19422) +LibOpUint256PowTest:testOpUint256PowIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13843, ~: 13707) +LibOpUint256PowTest:testOpUint256PowIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13820, ~: 13684) +LibOpUint256PowTest:testOpUint256PowRun(bytes32[]) (runs: 2048, μ: 19504, ~: 19403) LibOpUint256SubTest:testOpUint256SubEvalOneInput() (gas: 129127) LibOpUint256SubTest:testOpUint256SubEvalOperandsDisallowed() (gas: 96334) LibOpUint256SubTest:testOpUint256SubEvalThreeInputsHappy() (gas: 210707) @@ -708,10 +708,10 @@ LibOpUint256SubTest:testOpUint256SubEvalTwoInputsHappy() (gas: 281720) LibOpUint256SubTest:testOpUint256SubEvalTwoOutputs() (gas: 41683) LibOpUint256SubTest:testOpUint256SubEvalZeroInputs() (gas: 31012) LibOpUint256SubTest:testOpUint256SubEvalZeroOutputs() (gas: 40615) -LibOpUint256SubTest:testOpUint256SubIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2068, μ: 18266, ~: 18491) -LibOpUint256SubTest:testOpUint256SubIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13879, ~: 13796) -LibOpUint256SubTest:testOpUint256SubIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2068, μ: 13835, ~: 13752) -LibOpUint256SubTest:testOpUint256SubRun(bytes32[]) (runs: 2056, μ: 17733, ~: 17786) +LibOpUint256SubTest:testOpUint256SubIntegrityHappy((uint256,uint256,uint256,bytes32[],uint256,bytes),uint8,uint16) (runs: 2048, μ: 18248, ~: 18414) +LibOpUint256SubTest:testOpUint256SubIntegrityUnhappyOneInput((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13864, ~: 13728) +LibOpUint256SubTest:testOpUint256SubIntegrityUnhappyZeroInputs((uint256,uint256,uint256,bytes32[],uint256,bytes)) (runs: 2048, μ: 13820, ~: 13684) +LibOpUint256SubTest:testOpUint256SubRun(bytes32[]) (runs: 2048, μ: 17717, ~: 17786) LibParseCommentsTest:testParseCommentAfterSources() (gas: 70064) LibParseCommentsTest:testParseCommentBetweenSources() (gas: 70132) LibParseCommentsTest:testParseCommentInIgnoredLHS() (gas: 46519) @@ -764,7 +764,7 @@ LibParseInputsOnlyGasTest:testParseGasInputsOnly09() (gas: 52453) LibParseInputsOnlyTest:testParseInputsOnlyMultiple() (gas: 52712) LibParseInputsOnlyTest:testParseInputsOnlySingle() (gas: 51802) LibParseLiteralBoundLiteralHexTest:testParseLiteralBoundLiteralHexBounds() (gas: 18918) -LibParseLiteralBoundLiteralHexTest:testParseLiteralBoundLiteralHexFuzz(string,bytes1,string) (runs: 2068, μ: 44908, ~: 43983) +LibParseLiteralBoundLiteralHexTest:testParseLiteralBoundLiteralHexFuzz(string,bytes1,string) (runs: 2048, μ: 45085, ~: 44128) LibParseLiteralDecimalParseDecimalFloatTest:testParseLiteralDecimalFloatDotE() (gas: 11240) LibParseLiteralDecimalParseDecimalFloatTest:testParseLiteralDecimalFloatDotE0() (gas: 11218) LibParseLiteralDecimalParseDecimalFloatTest:testParseLiteralDecimalFloatDotRevert() (gas: 11263) @@ -783,7 +783,7 @@ LibParseLiteralDecimalParseDecimalFloatTest:testParseLiteralDecimalFloatNegative LibParseLiteralDecimalParseDecimalFloatTest:testParseLiteralDecimalFloatNonDecimal() (gas: 11195) LibParseLiteralDecimalParseDecimalFloatTest:testParseLiteralDecimalFloatPrecisionRevert0() (gas: 35272) LibParseLiteralDecimalParseDecimalFloatTest:testParseLiteralDecimalFloatPrecisionRevert1() (gas: 35159) -LibParseLiteralHexBoundHexTest:testParseLiteralHexRoundTrip(bytes32) (runs: 2068, μ: 27711, ~: 39227) +LibParseLiteralHexBoundHexTest:testParseLiteralHexRoundTrip(bytes32) (runs: 2048, μ: 27779, ~: 39227) LibParseLiteralIntegerDecimalTest:testParseIntegerLiteralDecimal00() (gas: 57128) LibParseLiteralIntegerDecimalTest:testParseIntegerLiteralDecimal01() (gas: 64422) LibParseLiteralIntegerDecimalTest:testParseIntegerLiteralDecimal02() (gas: 70775) @@ -802,23 +802,23 @@ LibParseLiteralIntegerHexTest:testParseIntegerLiteralHex00() (gas: 56141) LibParseLiteralIntegerHexTest:testParseIntegerLiteralHex01() (gas: 61872) LibParseLiteralIntegerHexTest:testParseIntegerLiteralHex02() (gas: 66944) LibParseLiteralIntegerHexTest:testParseIntegerLiteralHexUint256Max() (gas: 73340) -LibParseLiteralStringBoundTest:testParseStringLiteralBounds(string) (runs: 2065, μ: 16505, ~: 16437) -LibParseLiteralStringBoundTest:testParseStringLiteralBoundsInvalidCharBefore(string,uint256) (runs: 2066, μ: 30133, ~: 29898) -LibParseLiteralStringBoundTest:testParseStringLiteralBoundsParserOutOfBounds(string,uint256) (runs: 2065, μ: 19066, ~: 18977) -LibParseLiteralStringBoundTest:testParseStringLiteralBoundsTooLong(string) (runs: 2051, μ: 31951, ~: 31441) -LibParseLiteralStringTest:testParseStringLiteralAny(bytes) (runs: 2053, μ: 13499, ~: 13405) -LibParseLiteralStringTest:testParseStringLiteralCorrupt(bytes,uint256) (runs: 2053, μ: 24390, ~: 24316) +LibParseLiteralStringBoundTest:testParseStringLiteralBounds(string) (runs: 2048, μ: 16521, ~: 16437) +LibParseLiteralStringBoundTest:testParseStringLiteralBoundsInvalidCharBefore(string,uint256) (runs: 2048, μ: 30178, ~: 29943) +LibParseLiteralStringBoundTest:testParseStringLiteralBoundsParserOutOfBounds(string,uint256) (runs: 2048, μ: 19082, ~: 19005) +LibParseLiteralStringBoundTest:testParseStringLiteralBoundsTooLong(string) (runs: 2048, μ: 31952, ~: 31441) +LibParseLiteralStringTest:testParseStringLiteralAny(bytes) (runs: 2048, μ: 13501, ~: 13405) +LibParseLiteralStringTest:testParseStringLiteralCorrupt(bytes,uint256) (runs: 2048, μ: 24392, ~: 24318) LibParseLiteralStringTest:testParseStringLiteralEmpty() (gas: 54861) LibParseLiteralStringTest:testParseStringLiteralEmpty() (gas: 5658) -LibParseLiteralStringTest:testParseStringLiteralInvalidCharAfter(string,string) (runs: 103, μ: 68968, ~: 68766) -LibParseLiteralStringTest:testParseStringLiteralInvalidCharWithin(string,uint256) (runs: 118, μ: 65608, ~: 65046) -LibParseLiteralStringTest:testParseStringLiteralLongASCII(string) (runs: 103, μ: 69676, ~: 69766) -LibParseLiteralStringTest:testParseStringLiteralShortASCII(string) (runs: 117, μ: 61873, ~: 61986) +LibParseLiteralStringTest:testParseStringLiteralInvalidCharAfter(string,string) (runs: 100, μ: 68968, ~: 68680) +LibParseLiteralStringTest:testParseStringLiteralInvalidCharWithin(string,uint256) (runs: 100, μ: 66261, ~: 65734) +LibParseLiteralStringTest:testParseStringLiteralLongASCII(string) (runs: 100, μ: 69716, ~: 69820) +LibParseLiteralStringTest:testParseStringLiteralShortASCII(string) (runs: 100, μ: 62071, ~: 62152) LibParseLiteralStringTest:testParseStringLiteralSimple() (gas: 54969) -LibParseLiteralStringTest:testParseStringLiteralTwo(string,string) (runs: 109, μ: 75548, ~: 76148) +LibParseLiteralStringTest:testParseStringLiteralTwo(string,string) (runs: 100, μ: 75659, ~: 76219) LibParseLiteralSubParseableTest:testParseLiteralSubParseableBody() (gas: 65609) LibParseLiteralSubParseableTest:testParseLiteralSubParseableEmptyBody() (gas: 19912) -LibParseLiteralSubParseableTest:testParseLiteralSubParseableHappyFuzz(string,string,string) (runs: 2066, μ: 89722, ~: 87901) +LibParseLiteralSubParseableTest:testParseLiteralSubParseableHappyFuzz(string,string,string) (runs: 2048, μ: 89816, ~: 87953) LibParseLiteralSubParseableTest:testParseLiteralSubParseableMissingDispatchEmpty() (gas: 10758) LibParseLiteralSubParseableTest:testParseLiteralSubParseableMissingDispatchUnclosed() (gas: 10724) LibParseLiteralSubParseableTest:testParseLiteralSubParseableMissingDispatchUnclosedWhitespace0() (gas: 10778) @@ -883,36 +883,36 @@ LibParseOperandDoublePerByteNoDefaultTest:testOperandDoublePerByteNoDefaultSecon LibParseOperandDoublePerByteNoDefaultTest:testOperandDoublePerByteNoDefaultThird() (gas: 56055) LibParseOperandDoublePerByteNoDefaultTest:testOperandDoublePerByteNoDefaultUnclosed() (gas: 53052) LibParseOperandDoublePerByteNoDefaultTest:testOperandDoublePerByteNoDefaultUnopened() (gas: 47481) -LibParseOperandHandleOperand8M1M1Test:testHandleOperand8M1M1AllValues(uint256,uint256,uint256) (runs: 2068, μ: 12201, ~: 12283) -LibParseOperandHandleOperand8M1M1Test:testHandleOperand8M1M1AllValuesThirdValueTooLarge(uint256,uint256,uint256) (runs: 2068, μ: 13694, ~: 13562) -LibParseOperandHandleOperand8M1M1Test:testHandleOperand8M1M1FirstAndSecondValue(uint256,uint256) (runs: 2068, μ: 10440, ~: 10482) -LibParseOperandHandleOperand8M1M1Test:testHandleOperand8M1M1FirstAndSecondValueSecondValueTooLarge(uint256,uint256) (runs: 2068, μ: 11832, ~: 11670) -LibParseOperandHandleOperand8M1M1Test:testHandleOperand8M1M1FirstValueOnly(uint256) (runs: 2068, μ: 8694, ~: 8754) -LibParseOperandHandleOperand8M1M1Test:testHandleOperand8M1M1FirstValueTooLarge(int256) (runs: 2068, μ: 11824, ~: 11734) -LibParseOperandHandleOperand8M1M1Test:testHandleOperand8M1M1ManyValues(bytes32[]) (runs: 2066, μ: 35345, ~: 35602) +LibParseOperandHandleOperand8M1M1Test:testHandleOperand8M1M1AllValues(uint256,uint256,uint256) (runs: 2048, μ: 12202, ~: 12283) +LibParseOperandHandleOperand8M1M1Test:testHandleOperand8M1M1AllValuesThirdValueTooLarge(uint256,uint256,uint256) (runs: 2048, μ: 13696, ~: 13562) +LibParseOperandHandleOperand8M1M1Test:testHandleOperand8M1M1FirstAndSecondValue(uint256,uint256) (runs: 2048, μ: 10441, ~: 10482) +LibParseOperandHandleOperand8M1M1Test:testHandleOperand8M1M1FirstAndSecondValueSecondValueTooLarge(uint256,uint256) (runs: 2048, μ: 11833, ~: 11670) +LibParseOperandHandleOperand8M1M1Test:testHandleOperand8M1M1FirstValueOnly(uint256) (runs: 2048, μ: 8696, ~: 8754) +LibParseOperandHandleOperand8M1M1Test:testHandleOperand8M1M1FirstValueTooLarge(int256) (runs: 2048, μ: 11824, ~: 11734) +LibParseOperandHandleOperand8M1M1Test:testHandleOperand8M1M1ManyValues(bytes32[]) (runs: 2048, μ: 35477, ~: 35602) LibParseOperandHandleOperand8M1M1Test:testHandleOperand8M1M1NoValues() (gas: 4715) -LibParseOperandHandleOperandDisallowedTest:testHandleOperandDisallowedAnyValues(bytes32[]) (runs: 2068, μ: 34699, ~: 34669) +LibParseOperandHandleOperandDisallowedTest:testHandleOperandDisallowedAnyValues(bytes32[]) (runs: 2048, μ: 34856, ~: 34906) LibParseOperandHandleOperandDisallowedTest:testHandleOperandDisallowedNoValues() (gas: 3219) -LibParseOperandHandleOperandDoublePerByteNoDefaultTest:testHandleOperandDoublePerByteNoDefaultBothValuesWithinOneByte(uint256,uint256) (runs: 2068, μ: 9969, ~: 10099) -LibParseOperandHandleOperandDoublePerByteNoDefaultTest:testHandleOperandDoublePerByteNoDefaultFirstValueTooLarge(uint256,uint256) (runs: 2068, μ: 11350, ~: 11176) -LibParseOperandHandleOperandDoublePerByteNoDefaultTest:testHandleOperandDoublePerByteNoDefaultManyValues(bytes32[]) (runs: 2067, μ: 35144, ~: 35278) +LibParseOperandHandleOperandDoublePerByteNoDefaultTest:testHandleOperandDoublePerByteNoDefaultBothValuesWithinOneByte(uint256,uint256) (runs: 2048, μ: 9970, ~: 10099) +LibParseOperandHandleOperandDoublePerByteNoDefaultTest:testHandleOperandDoublePerByteNoDefaultFirstValueTooLarge(uint256,uint256) (runs: 2048, μ: 11350, ~: 11176) +LibParseOperandHandleOperandDoublePerByteNoDefaultTest:testHandleOperandDoublePerByteNoDefaultManyValues(bytes32[]) (runs: 2048, μ: 35289, ~: 35515) LibParseOperandHandleOperandDoublePerByteNoDefaultTest:testHandleOperandDoublePerByteNoDefaultNoValues() (gas: 4667) -LibParseOperandHandleOperandDoublePerByteNoDefaultTest:testHandleOperandDoublePerByteNoDefaultOneValue(uint256) (runs: 2068, μ: 8862, ~: 9149) -LibParseOperandHandleOperandDoublePerByteNoDefaultTest:testHandleOperandDoublePerByteNoDefaultSecondValueTooLarge(uint256,uint256) (runs: 2068, μ: 11376, ~: 11187) -LibParseOperandHandleOperandM1M1Test:testHandleOperandM1M1ManyValues(bytes32[]) (runs: 2067, μ: 35038, ~: 35172) +LibParseOperandHandleOperandDoublePerByteNoDefaultTest:testHandleOperandDoublePerByteNoDefaultOneValue(uint256) (runs: 2048, μ: 8863, ~: 9149) +LibParseOperandHandleOperandDoublePerByteNoDefaultTest:testHandleOperandDoublePerByteNoDefaultSecondValueTooLarge(uint256,uint256) (runs: 2048, μ: 11378, ~: 11187) +LibParseOperandHandleOperandM1M1Test:testHandleOperandM1M1ManyValues(bytes32[]) (runs: 2048, μ: 35183, ~: 35409) LibParseOperandHandleOperandM1M1Test:testHandleOperandM1M1NoValues() (gas: 3915) -LibParseOperandHandleOperandM1M1Test:testHandleOperandM1M1OneValue(uint256) (runs: 2068, μ: 8221, ~: 8220) -LibParseOperandHandleOperandM1M1Test:testHandleOperandM1M1OneValueTooLarge(uint256) (runs: 2068, μ: 9399, ~: 9179) -LibParseOperandHandleOperandM1M1Test:testHandleOperandM1M1TwoValues(uint256,uint256) (runs: 2068, μ: 9936, ~: 9961) -LibParseOperandHandleOperandM1M1Test:testHandleOperandM1M1TwoValuesSecondValueTooLarge(uint256,uint256) (runs: 2068, μ: 11280, ~: 11105) -LibParseOperandHandleOperandSingleFullTest:testHandleOperandSingleFullManyValues(bytes32[]) (runs: 2068, μ: 34946, ~: 34954) -LibParseOperandHandleOperandSingleFullTest:testHandleOperandSingleFullNoDefaultManyValues(bytes32[]) (runs: 2068, μ: 34966, ~: 34974) +LibParseOperandHandleOperandM1M1Test:testHandleOperandM1M1OneValue(uint256) (runs: 2048, μ: 8221, ~: 8220) +LibParseOperandHandleOperandM1M1Test:testHandleOperandM1M1OneValueTooLarge(uint256) (runs: 2048, μ: 9399, ~: 9179) +LibParseOperandHandleOperandM1M1Test:testHandleOperandM1M1TwoValues(uint256,uint256) (runs: 2048, μ: 9936, ~: 9961) +LibParseOperandHandleOperandM1M1Test:testHandleOperandM1M1TwoValuesSecondValueTooLarge(uint256,uint256) (runs: 2048, μ: 11281, ~: 11105) +LibParseOperandHandleOperandSingleFullTest:testHandleOperandSingleFullManyValues(bytes32[]) (runs: 2048, μ: 35104, ~: 35427) +LibParseOperandHandleOperandSingleFullTest:testHandleOperandSingleFullNoDefaultManyValues(bytes32[]) (runs: 2048, μ: 35124, ~: 35447) LibParseOperandHandleOperandSingleFullTest:testHandleOperandSingleFullNoDefaultNoValues() (gas: 4641) -LibParseOperandHandleOperandSingleFullTest:testHandleOperandSingleFullNoDefaultSingleValue(uint256) (runs: 2068, μ: 7641, ~: 7923) +LibParseOperandHandleOperandSingleFullTest:testHandleOperandSingleFullNoDefaultSingleValue(uint256) (runs: 2048, μ: 7642, ~: 7923) LibParseOperandHandleOperandSingleFullTest:testHandleOperandSingleFullNoValues() (gas: 3266) -LibParseOperandHandleOperandSingleFullTest:testHandleOperandSingleFullSingleValue(uint256) (runs: 2068, μ: 7682, ~: 7966) -LibParseOperandHandleOperandSingleFullTest:testHandleOperandSingleFullSingleValueDisallowed(uint256) (runs: 2068, μ: 9358, ~: 9571) -LibParseOperandHandleOperandSingleFullTest:testHandleOperandSingleFullSingleValueNoDefaultDisallowed(uint256) (runs: 2068, μ: 9396, ~: 9612) +LibParseOperandHandleOperandSingleFullTest:testHandleOperandSingleFullSingleValue(uint256) (runs: 2048, μ: 7684, ~: 7966) +LibParseOperandHandleOperandSingleFullTest:testHandleOperandSingleFullSingleValueDisallowed(uint256) (runs: 2048, μ: 9358, ~: 9571) +LibParseOperandHandleOperandSingleFullTest:testHandleOperandSingleFullSingleValueNoDefaultDisallowed(uint256) (runs: 2048, μ: 9396, ~: 9612) LibParseOperandM1M1Test:testOperandM1M1Both() (gas: 58107) LibParseOperandM1M1Test:testOperandM1M1BothZero() (gas: 56301) LibParseOperandM1M1Test:testOperandM1M1Elided() (gas: 52108) @@ -924,13 +924,13 @@ LibParseOperandM1M1Test:testOperandM1M1SecondOverflow() (gas: 53922) LibParseOperandM1M1Test:testOperandM1M1SecondZero() (gas: 57751) LibParseOperandM1M1Test:testOperandM1M1Unclosed() (gas: 253476) LibParseOperandM1M1Test:testOperandM1M1Unopened() (gas: 49682) -LibParseOperandParseOperandTest:testParseOperandEmptyOperand(string) (runs: 115, μ: 43266, ~: 43263) -LibParseOperandParseOperandTest:testParseOperandFourDecimalLiterals(bool[4],int256[4],string[5],string) (runs: 120, μ: 376267, ~: 377097) -LibParseOperandParseOperandTest:testParseOperandNoOpeningCharacter(string) (runs: 118, μ: 43143, ~: 43140) -LibParseOperandParseOperandTest:testParseOperandSingleDecimalLiteral(bool,int256,string,string,string) (runs: 120, μ: 160377, ~: 160957) -LibParseOperandParseOperandTest:testParseOperandThreeDecimalLiterals(bool,bool,bool,int256,int256,int256,string,string,string,string,string) (runs: 120, μ: 289813, ~: 283482) +LibParseOperandParseOperandTest:testParseOperandEmptyOperand(string) (runs: 100, μ: 43266, ~: 43266) +LibParseOperandParseOperandTest:testParseOperandFourDecimalLiterals(bool[4],int256[4],string[5],string) (runs: 100, μ: 377051, ~: 377097) +LibParseOperandParseOperandTest:testParseOperandNoOpeningCharacter(string) (runs: 100, μ: 43143, ~: 43143) +LibParseOperandParseOperandTest:testParseOperandSingleDecimalLiteral(bool,int256,string,string,string) (runs: 100, μ: 162524, ~: 163384) +LibParseOperandParseOperandTest:testParseOperandThreeDecimalLiterals(bool,bool,bool,int256,int256,int256,string,string,string,string,string) (runs: 100, μ: 288861, ~: 282801) LibParseOperandParseOperandTest:testParseOperandTooManyValues() (gas: 55202) -LibParseOperandParseOperandTest:testParseOperandTwoDecimalLiterals(bool,bool,int256,int256,string,string,string,string) (runs: 120, μ: 223771, ~: 220902) +LibParseOperandParseOperandTest:testParseOperandTwoDecimalLiterals(bool,bool,int256,int256,string,string,string,string) (runs: 100, μ: 224166, ~: 220902) LibParseOperandParseOperandTest:testParseOperandUnclosed() (gas: 54758) LibParseOperandParseOperandTest:testParseOperandUnexpectedChars() (gas: 51953) LibParseOperandSingleFullTest:testOperandSingleFullElided() (gas: 51460) @@ -949,16 +949,16 @@ LibParseOperandSingleFullTest:testOperandSingleFullUint16MaxOverflow() (gas: 518 LibParseOperandSingleFullTest:testOperandSingleFullUnclosed() (gas: 50196) LibParseOperandSingleFullTest:testOperandSingleFullUnopened() (gas: 48560) LibParseOperandSingleFullTest:testOperandSingleFullZero() (gas: 54570) -LibParseParseWordTest:testLibParseParseWordEnd(uint256) (runs: 2068, μ: 9477, ~: 9495) +LibParseParseWordTest:testLibParseParseWordEnd(uint256) (runs: 2048, μ: 9478, ~: 9495) LibParseParseWordTest:testLibParseParseWordExamples() (gas: 27109) -LibParseParseWordTest:testLibParseParseWordReferenceImplementation(bytes,uint256) (runs: 2053, μ: 6488, ~: 6269) -LibParseParseWordTest:testLibParseParseWordTooLong(bytes) (runs: 2063, μ: 9783, ~: 9717) -LibParsePragmaKeywordTest:testPragmaKeywordNoWhitespace(uint256,string) (runs: 120, μ: 9035, ~: 9065) -LibParsePragmaKeywordTest:testPragmaKeywordNoop((uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256,bytes32,bytes,bytes,bytes32[],uint256,bytes,bytes),string) (runs: 120, μ: 16280, ~: 16020) -LibParsePragmaKeywordTest:testPragmaKeywordParseSubParserBasic(string,address,uint256,string) (runs: 118, μ: 167440, ~: 152904) -LibParsePragmaKeywordTest:testPragmaKeywordParseSubParserCoupleOfAddresses(string,string,address,address,uint256,string) (runs: 118, μ: 346382, ~: 355441) +LibParseParseWordTest:testLibParseParseWordReferenceImplementation(bytes,uint256) (runs: 2048, μ: 6489, ~: 6269) +LibParseParseWordTest:testLibParseParseWordTooLong(bytes) (runs: 2048, μ: 9784, ~: 9717) +LibParsePragmaKeywordTest:testPragmaKeywordNoWhitespace(uint256,string) (runs: 100, μ: 9031, ~: 8992) +LibParsePragmaKeywordTest:testPragmaKeywordNoop((uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256,bytes32,bytes,bytes,bytes32[],uint256,bytes,bytes),string) (runs: 100, μ: 16143, ~: 15992) +LibParsePragmaKeywordTest:testPragmaKeywordParseSubParserBasic(string,address,uint256,string) (runs: 100, μ: 177715, ~: 167929) +LibParsePragmaKeywordTest:testPragmaKeywordParseSubParserCoupleOfAddresses(string,string,address,address,uint256,string) (runs: 100, μ: 360834, ~: 372871) LibParsePragmaKeywordTest:testPragmaKeywordParseSubParserSpecificStrings() (gas: 257096) -LibParsePragmaKeywordTest:testPragmaKeywordWhitespaceNoHex(uint256,string) (runs: 120, μ: 20241, ~: 17982) +LibParsePragmaKeywordTest:testPragmaKeywordWhitespaceNoHex(uint256,string) (runs: 100, μ: 20490, ~: 18705) LibParseSingleLHSIgnoredGasTest:testParseGasSingleLHSIgnored00() (gas: 8404) LibParseSingleLHSIgnoredGasTest:testParseGasSingleLHSIgnored01() (gas: 8466) LibParseSingleLHSIgnoredGasTest:testParseGasSingleLHSIgnored02() (gas: 8552) @@ -1034,66 +1034,66 @@ LibParseSingleRHSNamedGasTest:testParseGasRHS30() (gas: 121049) LibParseSourceInputsTest:testParseSourceInputsEmptyLinePrefix() (gas: 49710) LibParseSourceInputsTest:testParseSourceInputsMultipleLines() (gas: 52456) LibParseSourceInputsTest:testParseSourceInputsSingle() (gas: 49687) -LibParseStackNameTest:testPushAndRetrieveStackNameDouble((uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256,bytes32,bytes,bytes,bytes32[],uint256,bytes,bytes),bytes32,bytes32) (runs: 2068, μ: 20511, ~: 20379) -LibParseStackNameTest:testPushAndRetrieveStackNameDoubleIdentical((uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256,bytes32,bytes,bytes,bytes32[],uint256,bytes,bytes),bytes32) (runs: 2068, μ: 17788, ~: 17707) -LibParseStackNameTest:testPushAndRetrieveStackNameMany((uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256,bytes32,bytes,bytes,bytes32[],uint256,bytes,bytes),uint256) (runs: 2068, μ: 310641, ~: 246634) -LibParseStackNameTest:testPushAndRetrieveStackNameSingle((uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256,bytes32,bytes,bytes,bytes32[],uint256,bytes,bytes),bytes32) (runs: 2068, μ: 17752, ~: 17671) -LibParseStateConstantValueBloomTest:testConstantValueBloom(bytes32) (runs: 2068, μ: 3330, ~: 3330) +LibParseStackNameTest:testPushAndRetrieveStackNameDouble((uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256,bytes32,bytes,bytes,bytes32[],uint256,bytes,bytes),bytes32,bytes32) (runs: 2048, μ: 20507, ~: 20379) +LibParseStackNameTest:testPushAndRetrieveStackNameDoubleIdentical((uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256,bytes32,bytes,bytes,bytes32[],uint256,bytes,bytes),bytes32) (runs: 2048, μ: 17786, ~: 17707) +LibParseStackNameTest:testPushAndRetrieveStackNameMany((uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256,bytes32,bytes,bytes,bytes32[],uint256,bytes,bytes),uint256) (runs: 2048, μ: 310541, ~: 245419) +LibParseStackNameTest:testPushAndRetrieveStackNameSingle((uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256,bytes32,bytes,bytes,bytes32[],uint256,bytes,bytes),bytes32) (runs: 2048, μ: 17750, ~: 17671) +LibParseStateConstantValueBloomTest:testConstantValueBloom(bytes32) (runs: 2048, μ: 3330, ~: 3330) LibParseStateConstantValueBloomTest:testConstantValueBloomAllBits() (gas: 45882) -LibParseStateConstantValueBloomTest:testConstantValueBloomSingleBit(bytes32) (runs: 2068, μ: 3450, ~: 3450) -LibParseStateExportSubParsersTest:testExportSubParsers((uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256,bytes32,bytes,bytes,bytes32[],uint256,bytes,bytes),address[]) (runs: 2068, μ: 153878, ~: 149923) -LibParseStateNewActiveSourcePointerTest:testAlignedOldPointer(uint256,uint256) (runs: 2068, μ: 13377, ~: 13500) -LibParseStateNewActiveSourcePointerTest:testPostUnalignedNewPointer(uint256) (runs: 2068, μ: 7158, ~: 7158) +LibParseStateConstantValueBloomTest:testConstantValueBloomSingleBit(bytes32) (runs: 2048, μ: 3450, ~: 3450) +LibParseStateExportSubParsersTest:testExportSubParsers((uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256,bytes32,bytes,bytes,bytes32[],uint256,bytes,bytes),address[]) (runs: 2048, μ: 154226, ~: 150552) +LibParseStateNewActiveSourcePointerTest:testAlignedOldPointer(uint256,uint256) (runs: 2048, μ: 13377, ~: 13500) +LibParseStateNewActiveSourcePointerTest:testPostUnalignedNewPointer(uint256) (runs: 2048, μ: 7158, ~: 7158) LibParseStateNewActiveSourcePointerTest:testPreUnalignedNewPointer() (gas: 9188) -LibParseStateNewActiveSourcePointerTest:testZeroOldPointer(bytes) (runs: 2068, μ: 4802, ~: 4799) -LibParseStatePushConstantValueTest:testPushConstantValueEmpty(bytes,bytes,bytes,bytes) (runs: 2068, μ: 6506, ~: 6504) -LibParseStatePushConstantValueTest:testPushConstantValueMany(bytes32[]) (runs: 2068, μ: 225154, ~: 225149) -LibParseStatePushConstantValueTest:testPushConstantValueSingle(bytes32) (runs: 2068, μ: 7036, ~: 7036) -LibParseStatePushSubParserTest:testPushSubParserList((uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256,bytes32,bytes,bytes,bytes32[],uint256,bytes,bytes),address[]) (runs: 2068, μ: 142019, ~: 138626) -LibParseStatePushSubParserTest:testPushSubParserMultiple((uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256,bytes32,bytes,bytes,bytes32[],uint256,bytes,bytes),address,address,address) (runs: 2068, μ: 17167, ~: 17091) -LibParseStatePushSubParserTest:testPushSubParserOverflow((uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256,bytes32,bytes,bytes,bytes32[],uint256,bytes,bytes),uint256) (runs: 2068, μ: 44811, ~: 45167) -LibParseStatePushSubParserTest:testPushSubParserZero((uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256,bytes32,bytes,bytes,bytes32[],uint256,bytes,bytes),address) (runs: 2068, μ: 15553, ~: 15568) +LibParseStateNewActiveSourcePointerTest:testZeroOldPointer(bytes) (runs: 2048, μ: 4802, ~: 4799) +LibParseStatePushConstantValueTest:testPushConstantValueEmpty(bytes,bytes,bytes,bytes) (runs: 2048, μ: 6507, ~: 6504) +LibParseStatePushConstantValueTest:testPushConstantValueMany(bytes32[]) (runs: 2048, μ: 226313, ~: 226903) +LibParseStatePushConstantValueTest:testPushConstantValueSingle(bytes32) (runs: 2048, μ: 7036, ~: 7036) +LibParseStatePushSubParserTest:testPushSubParserList((uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256,bytes32,bytes,bytes,bytes32[],uint256,bytes,bytes),address[]) (runs: 2048, μ: 142340, ~: 139015) +LibParseStatePushSubParserTest:testPushSubParserMultiple((uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256,bytes32,bytes,bytes,bytes32[],uint256,bytes,bytes),address,address,address) (runs: 2048, μ: 17165, ~: 17091) +LibParseStatePushSubParserTest:testPushSubParserOverflow((uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256,bytes32,bytes,bytes,bytes32[],uint256,bytes,bytes),uint256) (runs: 2048, μ: 44805, ~: 45167) +LibParseStatePushSubParserTest:testPushSubParserZero((uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256,bytes32,bytes,bytes,bytes32[],uint256,bytes,bytes),address) (runs: 2048, μ: 15548, ~: 15568) LibParseUnclosedLeftParenTest:testParseUnclosedLeftParen() (gas: 48978) LibParseUnclosedLeftParenTest:testParseUnclosedLeftParenNested() (gas: 69243) LibParseUnclosedLeftParenTest:testParseUnclosedLeftParenNested2() (gas: 70803) LibParseUnclosedLeftParenTest:testParseUnclosedLeftParenNested3() (gas: 80809) LibParseUnclosedLeftParenTest:testParseUnclosedLeftParenNested4() (gas: 80674) -LibParseUnexpectedLHSTest:testParseUnexpectedLHSBadIgnoredTail(uint8) (runs: 2066, μ: 47066, ~: 47067) -LibParseUnexpectedLHSTest:testParseUnexpectedLHSBadNamedTail(uint8,bytes) (runs: 2068, μ: 53241, ~: 53283) +LibParseUnexpectedLHSTest:testParseUnexpectedLHSBadIgnoredTail(uint8) (runs: 2048, μ: 47066, ~: 47067) +LibParseUnexpectedLHSTest:testParseUnexpectedLHSBadNamedTail(uint8,bytes) (runs: 2048, μ: 53241, ~: 53283) LibParseUnexpectedLHSTest:testParseUnexpectedLHSEOF() (gas: 133396) LibParseUnexpectedLHSTest:testParseUnexpectedLHSEOL() (gas: 133419) -LibParseUnexpectedLHSTest:testParseUnexpectedLHSSingleChar(uint8) (runs: 2067, μ: 46658, ~: 46658) +LibParseUnexpectedLHSTest:testParseUnexpectedLHSSingleChar(uint8) (runs: 2048, μ: 46658, ~: 46658) LibParseUnexpectedLHSTest:testParseUnexpectedLHSUnderscoreTail() (gas: 135757) -LibParseUnexpectedRHSTest:testParseUnexpectedRHS(uint8) (runs: 2065, μ: 46894, ~: 46894) +LibParseUnexpectedRHSTest:testParseUnexpectedRHS(uint8) (runs: 2048, μ: 46894, ~: 46894) LibParseUnexpectedRHSTest:testParseUnexpectedRHSLeftParen() (gas: 46400) LibParseUnexpectedRightParenTest:testParseUnexpectedRightParen() (gas: 51010) LibParseUnexpectedRightParenTest:testParseUnexpectedRightParenNested() (gas: 57314) -LibSubParseSubParserExternTest:testLibSubParseSubParserExtern(address,uint8,uint8,uint8,uint16,uint8) (runs: 2068, μ: 13297, ~: 13226) -LibSubParseSubParserExternTest:testLibSubParseSubParserExternConstantsHeightOverflow(address,uint256,uint8,uint8,uint16,uint8) (runs: 2068, μ: 11515, ~: 11242) -RainterpreterExpressionDeployerDeployCheckTest:testRainterpreterExpressionDeployerDeployNoEIP1820() (gas: 8364055) -RainterpreterExpressionDeployerDescribedByMetaV1Test:testRainterpreterExpressionDeployerDescribedByMetaV1Happy() (gas: 8377306) -RainterpreterExpressionDeployerIERC165Test:testRainterpreterExpressionDeployerIERC165(bytes4) (runs: 2068, μ: 8371925, ~: 8371925) +LibSubParseSubParserExternTest:testLibSubParseSubParserExtern(address,uint8,uint8,uint8,uint16,uint8) (runs: 2048, μ: 13295, ~: 13226) +LibSubParseSubParserExternTest:testLibSubParseSubParserExternConstantsHeightOverflow(address,uint256,uint8,uint8,uint16,uint8) (runs: 2048, μ: 11514, ~: 11242) +RainterpreterExpressionDeployerDeployCheckTest:testRainterpreterExpressionDeployerDeployNoEIP1820() (gas: 8336573) +RainterpreterExpressionDeployerDescribedByMetaV1Test:testRainterpreterExpressionDeployerDescribedByMetaV1Happy() (gas: 8349820) +RainterpreterExpressionDeployerIERC165Test:testRainterpreterExpressionDeployerIERC165(bytes4) (runs: 2048, μ: 8344443, ~: 8344443) RainterpreterExpressionDeployerMetaTest:testRainterpreterExpressionDeployerExpectedConstructionMetaHash() (gas: 6233) -RainterpreterIERC165Test:testRainterpreterIERC165(bytes4) (runs: 2068, μ: 3549263, ~: 3549263) -RainterpreterParserIERC165Test:testRainterpreterParserIERC165(bytes4) (runs: 2068, μ: 3241902, ~: 3241902) +RainterpreterIERC165Test:testRainterpreterIERC165(bytes4) (runs: 2048, μ: 3521781, ~: 3521781) +RainterpreterParserIERC165Test:testRainterpreterParserIERC165(bytes4) (runs: 2048, μ: 3241902, ~: 3241902) RainterpreterParserParserPragma:testParsePragmaNoPragma() (gas: 16191702) RainterpreterParserParserPragma:testParsePragmaSinglePragma() (gas: 9767480) RainterpreterParserParserPragma:testParsePragmaWithInterstitial() (gas: 9770817) RainterpreterParserPointersTest:testLiteralParserFunctionPointers() (gas: 3240656) RainterpreterParserPointersTest:testOperandHandlerFunctionPointers() (gas: 3249517) RainterpreterParserPointersTest:testParserParseMeta() (gas: 5268334) -RainterpreterPointersTest:testOpcodeFunctionPointers() (gas: 3557005) +RainterpreterPointersTest:testOpcodeFunctionPointers() (gas: 3529523) RainterpreterReferenceExternContextRainlenTest:testRainterpreterReferenceExterNPE2ContextRainlenHappy() (gas: 2021454) RainterpreterReferenceExternContextSenderTest:testRainterpreterReferenceExterNPE2ContextContractHappy() (gas: 2021039) RainterpreterReferenceExternContextSenderTest:testRainterpreterReferenceExterNPE2ContextSenderHappy() (gas: 2019735) RainterpreterReferenceExternDescribedByMetaV1:testRainterpreterReferenceExternDescribedByMetaV1Happy() (gas: 1941342) -RainterpreterReferenceExternIERC165Test:testRainterpreterReferenceExternIERC165(bytes4) (runs: 2067, μ: 1954827, ~: 1954827) +RainterpreterReferenceExternIERC165Test:testRainterpreterReferenceExternIERC165(bytes4) (runs: 2048, μ: 1954827, ~: 1954827) RainterpreterReferenceExternIntIncTest:testRainterpreterReferenceExternIntIncHappySugared() (gas: 2048764) RainterpreterReferenceExternIntIncTest:testRainterpreterReferenceExternIntIncHappyUnsugared() (gas: 2041767) -RainterpreterReferenceExternIntIncTest:testRainterpreterReferenceExternIntIncIntegrity(bytes32,uint256,uint256) (runs: 120, μ: 3597, ~: 3597) -RainterpreterReferenceExternIntIncTest:testRainterpreterReferenceExternIntIncRun(bytes32,bytes32[]) (runs: 120, μ: 1151445, ~: 1163987) -RainterpreterReferenceExternIntIncTest:testRainterpreterReferenceExternIntIncSubParseKnownWord(uint16,bytes1) (runs: 120, μ: 1955221, ~: 1955484) -RainterpreterReferenceExternIntIncTest:testRainterpreterReferenceExternIntIncSubParseUnknownWord(uint16,bytes1,bytes) (runs: 103, μ: 1951578, ~: 1951383) +RainterpreterReferenceExternIntIncTest:testRainterpreterReferenceExternIntIncIntegrity(bytes32,uint256,uint256) (runs: 100, μ: 3597, ~: 3597) +RainterpreterReferenceExternIntIncTest:testRainterpreterReferenceExternIntIncRun(bytes32,bytes32[]) (runs: 100, μ: 1137728, ~: 1131289) +RainterpreterReferenceExternIntIncTest:testRainterpreterReferenceExternIntIncSubParseKnownWord(uint16,bytes1) (runs: 100, μ: 1955227, ~: 1955484) +RainterpreterReferenceExternIntIncTest:testRainterpreterReferenceExternIntIncSubParseUnknownWord(uint16,bytes1,bytes) (runs: 100, μ: 1951585, ~: 1951383) RainterpreterReferenceExternPointersTest:testIntegrityFunctionPointers() (gas: 1941431) RainterpreterReferenceExternPointersTest:testOpcodeFunctionPointers() (gas: 1941474) RainterpreterReferenceExternPointersTest:testSubParserFunctionPointers() (gas: 1941897) @@ -1101,13 +1101,13 @@ RainterpreterReferenceExternPointersTest:testSubParserLiteralParsers() (gas: 194 RainterpreterReferenceExternPointersTest:testSubParserOperandParsers() (gas: 1941924) RainterpreterReferenceExternPointersTest:testSubParserParseMeta() (gas: 22065) RainterpreterReferenceExternRepeatTest:testRainterpreterReferenceExternRepeatHappy() (gas: 2074277) -RainterpreterReferenceExternStackOperandTest:testRainterpreterReferenceExternStackOperandSingle(uint256) (runs: 2068, μ: 2028874, ~: 2028959) +RainterpreterReferenceExternStackOperandTest:testRainterpreterReferenceExternStackOperandSingle(uint256) (runs: 2048, μ: 2028876, ~: 2028959) RainterpreterReferenceExternUnknownWordTest:testRainterpreterReferenceExternUnknownWord() (gas: 1989941) RainterpreterStateOverlayTest:testStateOverlayGet() (gas: 52723) RainterpreterStateOverlayTest:testStateOverlaySet() (gas: 83880) -RainterpreterStoreIERC165Test:testRainterpreterStoreIERC165(bytes4) (runs: 2068, μ: 220055, ~: 220055) -RainterpreterStoreTest:testRainterpreterStoreSetGetDupes((uint256,bytes32[11])[]) (runs: 109, μ: 1600805, ~: 1595961) -RainterpreterStoreTest:testRainterpreterStoreSetGetNoDupesMany((uint256,bytes32[])[]) (runs: 120, μ: 3321388, ~: 3252569) -RainterpreterStoreTest:testRainterpreterStoreSetGetNoDupesSingle(uint256,bytes32[]) (runs: 120, μ: 1922812, ~: 1968581) -RainterpreterStoreTest:testRainterpreterStoreSetOddLength(uint256,bytes32[]) (runs: 113, μ: 239581, ~: 240253) +RainterpreterStoreIERC165Test:testRainterpreterStoreIERC165(bytes4) (runs: 2048, μ: 220055, ~: 220055) +RainterpreterStoreTest:testRainterpreterStoreSetGetDupes((uint256,bytes32[11])[]) (runs: 100, μ: 1602877, ~: 1595992) +RainterpreterStoreTest:testRainterpreterStoreSetGetNoDupesMany((uint256,bytes32[])[]) (runs: 100, μ: 3544740, ~: 3425952) +RainterpreterStoreTest:testRainterpreterStoreSetGetNoDupesSingle(uint256,bytes32[]) (runs: 100, μ: 1845969, ~: 1796079) +RainterpreterStoreTest:testRainterpreterStoreSetOddLength(uint256,bytes32[]) (runs: 100, μ: 239428, ~: 239636) RainterpreterTest:testRainterpreterOddFunctionPointersLength() (gas: 3696) \ No newline at end of file diff --git a/src/lib/op/math/LibOpAdd.sol b/src/lib/op/math/LibOpAdd.sol index ec6cf8ebe..64f57bafc 100644 --- a/src/lib/op/math/LibOpAdd.sol +++ b/src/lib/op/math/LibOpAdd.sol @@ -51,6 +51,7 @@ library LibOpAdd { } } + //slither-disable-next-line unused-return (a,) = LibDecimalFloat.packLossy(signedCoefficient, exponent); assembly ("memory-safe") {