Last active
June 1, 2020 16:51
-
-
Save muellerberndt/c61ac40de4c7284fc09e931357e3f2a1 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
pragma solidity ^0.6.8; | |
pragma experimental ABIEncoderV2; | |
abstract contract IModuleAuth { | |
/** | |
* @notice Hashed _data to be signed | |
* @param _data Data to be hashed | |
* @return hashed data for this wallet | |
*/ | |
function _hashData( | |
bytes memory _data | |
) internal virtual view returns (bytes32); | |
/** | |
* @notice Verify if signer is default wallet owner | |
* @param _hash Hashed signed message | |
* @param _signature Encoded signature | |
* @return True is the signature is valid | |
*/ | |
function _signatureValidation( | |
bytes32 _hash, | |
bytes memory _signature | |
) internal virtual view returns (bool); | |
} | |
interface IERC1271Wallet { | |
/** | |
* @notice Verifies whether the provided signature is valid with respect to the provided data | |
* @dev MUST return the correct magic value if the signature provided is valid for the provided data | |
* > The bytes4 magic value to return when signature is valid is 0x20c13b0b : bytes4(keccak256("isValidSignature(bytes,bytes)") | |
* > This function MAY modify Ethereum's state | |
* @param _data Arbitrary length data signed on the behalf of address(this) | |
* @param _signature Signature byte array associated with _data | |
* @return magicValue Magic value 0x20c13b0b if the signature is valid and 0x0 otherwise | |
*/ | |
function isValidSignature( | |
bytes calldata _data, | |
bytes calldata _signature) | |
external | |
view | |
returns (bytes4 magicValue); | |
/** | |
* @notice Verifies whether the provided signature is valid with respect to the provided hash | |
* @dev MUST return the correct magic value if the signature provided is valid for the provided hash | |
* > The bytes4 magic value to return when signature is valid is 0x20c13b0b : bytes4(keccak256("isValidSignature(bytes,bytes)") | |
* > This function MAY modify Ethereum's state | |
* @param _hash keccak256 hash that was signed | |
* @param _signature Signature byte array associated with _data | |
* @return magicValue Magic value 0x20c13b0b if the signature is valid and 0x0 otherwise | |
*/ | |
function isValidSignature( | |
bytes32 _hash, | |
bytes calldata _signature) | |
external | |
view | |
returns (bytes4 magicValue); | |
}/* | |
Copyright 2018 ZeroEx Intl. | |
Licensed under the Apache License, Version 2.0 (the "License"); | |
you may not use this file except in compliance with the License. | |
You may obtain a copy of the License at | |
http://www.apache.org/licenses/LICENSE-2.0 | |
Unless required by applicable law or agreed to in writing, software | |
distributed under the License is distributed on an "AS IS" BASIS, | |
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
See the License for the specific language governing permissions and | |
limitations under the License. | |
This is a truncated version of the original LibBytes.sol library from ZeroEx. | |
*/ | |
library LibBytes { | |
using LibBytes for bytes; | |
/***********************************| | |
| Pop Bytes Functions | | |
|__________________________________*/ | |
/** | |
* @dev Pops the last byte off of a byte array by modifying its length. | |
* @param b Byte array that will be modified. | |
* @return result The byte that was popped off. | |
*/ | |
function popLastByte(bytes memory b) | |
internal | |
pure | |
returns (bytes1 result) | |
{ | |
require( | |
b.length > 0, | |
"LibBytes#popLastByte: GREATER_THAN_ZERO_LENGTH_REQUIRED" | |
); | |
// Store last byte. | |
result = b[b.length - 1]; | |
assembly { | |
// Decrement length of byte array. | |
let newLen := sub(mload(b), 1) | |
mstore(b, newLen) | |
} | |
return result; | |
} | |
/***********************************| | |
| Read Bytes Functions | | |
|__________________________________*/ | |
/** | |
* @dev Read firsts uint16 value. | |
* @param data Byte array to be read. | |
* @return a uint16 value of data at index zero. | |
* @return newIndex Updated index after reading the values. | |
*/ | |
function readFirstUint16( | |
bytes memory data | |
) internal pure returns ( | |
uint16 a, | |
uint256 newIndex | |
) { | |
assembly { | |
let word := mload(add(32, data)) | |
a := shr(240, word) | |
newIndex := 2 | |
} | |
require(2 <= data.length, "LibBytes#readFirstUint16: OUT_OF_BOUNDS"); | |
} | |
/** | |
* @dev Reads consecutive bool (8 bits) and uint8 values. | |
* @param data Byte array to be read. | |
* @param index Index in byte array of uint8 and uint8 values. | |
* @return a uint8 value of data at given index. | |
* @return b uint8 value of data at given index + 8. | |
* @return newIndex Updated index after reading the values. | |
*/ | |
function readUint8Uint8( | |
bytes memory data, | |
uint256 index | |
) internal pure returns ( | |
uint8 a, | |
uint8 b, | |
uint256 newIndex | |
) { | |
assembly { | |
let word := mload(add(index, add(32, data))) | |
a := shr(248, word) | |
b := and(shr(240, word), 0xff) | |
newIndex := add(index, 2) | |
} | |
require(newIndex <= data.length, "LibBytes#readUint8Uint8: OUT_OF_BOUNDS"); | |
} | |
/** | |
* @dev Reads an address value from a position in a byte array. | |
* @param data Byte array to be read. | |
* @param index Index in byte array of address value. | |
* @return a address value of data at given index. | |
* @return newIndex Updated index after reading the value. | |
*/ | |
function readAddress( | |
bytes memory data, | |
uint256 index | |
) internal pure returns ( | |
address a, | |
uint256 newIndex | |
) { | |
assembly { | |
let word := mload(add(index, add(32, data))) | |
a := and(shr(96, word), 0xffffffffffffffffffffffffffffffffffffffff) | |
newIndex := add(index, 20) | |
} | |
require(newIndex <= data.length, "LibBytes#readAddress: OUT_OF_BOUNDS"); | |
} | |
/** | |
* @dev Reads 66 bytes from a position in a byte array. | |
* @param data Byte array to be read. | |
* @param index Index in byte array of 66 bytes value. | |
* @return a 66 bytes bytes array value of data at given index. | |
* @return newIndex Updated index after reading the value. | |
*/ | |
function readBytes66( | |
bytes memory data, | |
uint256 index | |
) internal pure returns ( | |
bytes memory a, | |
uint256 newIndex | |
) { | |
a = new bytes(66); | |
assembly { | |
let offset := add(32, add(data, index)) | |
mstore(add(a, 32), mload(offset)) | |
mstore(add(a, 64), mload(add(offset, 32))) | |
mstore(add(a, 66), mload(add(offset, 34))) | |
newIndex := add(index, 66) | |
} | |
require(newIndex <= data.length, "LibBytes#readBytes66: OUT_OF_BOUNDS"); | |
} | |
/** | |
* @dev Reads a bytes32 value from a position in a byte array. | |
* @param b Byte array containing a bytes32 value. | |
* @param index Index in byte array of bytes32 value. | |
* @return result bytes32 value from byte array. | |
*/ | |
function readBytes32( | |
bytes memory b, | |
uint256 index | |
) | |
internal | |
pure | |
returns (bytes32 result) | |
{ | |
require( | |
b.length >= index + 32, | |
"LibBytes#readBytes32: GREATER_OR_EQUAL_TO_32_LENGTH_REQUIRED" | |
); | |
// Arrays are prefixed by a 256 bit length parameter | |
uint256 pos = index + 32; | |
// Read the bytes32 from array memory | |
assembly { | |
result := mload(add(b, pos)) | |
} | |
return result; | |
} | |
} | |
abstract contract ModuleERC165 { | |
/** | |
* @notice Query if a contract implements an interface | |
* @param _interfaceID The interface identifier, as specified in ERC-165 | |
* @return `true` if the contract implements `_interfaceID` | |
*/ | |
function supportsInterface(bytes4 _interfaceID) virtual public pure returns (bool) { | |
return _interfaceID == this.supportsInterface.selector; | |
} | |
} | |
contract ModuleSelfAuth { | |
modifier onlySelf() { | |
require(msg.sender == address(this), "ModuleSelfAuth#onlySelf: NOT_AUTHORIZED"); | |
_; | |
} | |
} | |
interface IModuleCreator { | |
/** | |
* @notice Creates a contract forwarding eth value | |
* @param _code Creation code of the contract | |
* @return addr The address of the created contract | |
*/ | |
function createContract(bytes calldata _code) external payable returns (address addr); | |
} | |
library LibAddress { | |
function isContract(address account) internal view returns (bool) { | |
uint256 csize; | |
// solhint-disable-next-line no-inline-assembly | |
assembly { csize := extcodesize(account) } | |
return csize != 0; | |
} | |
} | |
/** | |
* @dev Allows modules to access the implementation slot | |
*/ | |
contract Implementation { | |
/** | |
* @notice Updates the Wallet implementation | |
* @param _imp New implementation address | |
* @dev The wallet implementation is stored on the storage slot | |
* defined by the address of the wallet itself | |
* WARNING updating this value may brick the wallet | |
*/ | |
function _setImplementation(address _imp) internal { | |
assembly { | |
sstore(address(), _imp) | |
} | |
} | |
/** | |
* @notice Returns the Wallet implementation | |
* @return _imp The address of the current Wallet implementation | |
*/ | |
function _getImplementation() internal view returns (address _imp) { | |
assembly { | |
_imp := sload(address()) | |
} | |
} | |
} | |
interface IModuleUpdate { | |
/** | |
* @notice Updates the implementation of the base wallet | |
* @param _implementation New main module implementation | |
* @dev WARNING Updating the implementation can brick the wallet | |
*/ | |
function updateImplementation(address _implementation) external; | |
} | |
library ModuleStorage { | |
// MYTHX INSTRUMENTATION | |
function writeBytes32(bytes32 _key, bytes32 _val) internal { | |
assembly { sstore(_key, _val) } | |
} | |
function readBytes32(bytes32 _key) internal view returns (bytes32 val) { | |
assembly { val := sload(_key) } | |
} | |
function writeBytes32Map(bytes32 _key, bytes32 _subKey, bytes32 _val) internal { | |
bytes32 key = keccak256(abi.encode(_key, _subKey)); | |
assembly { sstore(key, _val) } | |
} | |
function readBytes32Map(bytes32 _key, bytes32 _subKey) internal view returns (bytes32 val) { | |
bytes32 key = keccak256(abi.encode(_key, _subKey)); | |
assembly { val := sload(key) } | |
} | |
} | |
interface IERC223Receiver { | |
function tokenFallback(address, uint256, bytes calldata) external; | |
} | |
interface IERC721Receiver { | |
function onERC721Received(address, address, uint256, bytes calldata) external returns (bytes4); | |
} | |
interface IERC1155Receiver { | |
function onERC1155Received(address, address, uint256, uint256, bytes calldata) external returns (bytes4); | |
function onERC1155BatchReceived(address, address, uint256[] calldata, uint256[] calldata, bytes calldata) external returns (bytes4); | |
} | |
interface IModuleHooks { | |
/** | |
* @notice Reads the implementation hook of a signature | |
* @param _signature Signature function | |
* @return The address of the implementation hook, address(0) if none | |
*/ | |
function readHook(bytes4 _signature) external view returns (address); | |
/** | |
* @notice Adds a new hook to handle a given function selector | |
* @param _signature Signature function linked to the hook | |
* @param _implementation Hook implementation contract | |
*/ | |
function addHook(bytes4 _signature, address _implementation) external; | |
/** | |
* @notice Removes a registered hook | |
* @param _signature Signature function linked to the hook | |
*/ | |
function removeHook(bytes4 _signature) external; | |
} | |
/** | |
Minimal upgradeable proxy implementation, delegates all calls to the address | |
defined by the storage slot matching the wallet address. | |
Inspired by EIP-1167 Implementation (https://eips.ethereum.org/EIPS/eip-1167) | |
deployed code: | |
0x00 0x36 0x36 CALLDATASIZE cds | |
0x01 0x3d 0x3d RETURNDATASIZE 0 cds | |
0x02 0x3d 0x3d RETURNDATASIZE 0 0 cds | |
0x03 0x37 0x37 CALLDATACOPY | |
0x04 0x3d 0x3d RETURNDATASIZE 0 | |
0x05 0x3d 0x3d RETURNDATASIZE 0 0 | |
0x06 0x3d 0x3d RETURNDATASIZE 0 0 0 | |
0x07 0x36 0x36 CALLDATASIZE cds 0 0 0 | |
0x08 0x3d 0x3d RETURNDATASIZE 0 cds 0 0 0 | |
0x09 0x30 0x30 ADDRESS addr 0 cds 0 0 0 | |
0x0A 0x54 0x54 SLOAD imp 0 cds 0 0 0 | |
0x0B 0x5a 0x5a GAS gas imp 0 cds 0 0 0 | |
0x0C 0xf4 0xf4 DELEGATECALL suc 0 | |
0x0D 0x3d 0x3d RETURNDATASIZE rds suc 0 | |
0x0E 0x82 0x82 DUP3 0 rds suc 0 | |
0x0F 0x80 0x80 DUP1 0 0 rds suc 0 | |
0x10 0x3e 0x3e RETURNDATACOPY suc 0 | |
0x11 0x90 0x90 SWAP1 0 suc | |
0x12 0x3d 0x3d RETURNDATASIZE rds 0 suc | |
0x13 0x91 0x91 SWAP2 suc 0 rds | |
0x14 0x60 0x18 0x6018 PUSH1 0x18 suc 0 rds | |
/-- 0x16 0x57 0x57 JUMPI 0 rds | |
| 0x17 0xfd 0xfd REVERT | |
\-> 0x18 0x5b 0x5b JUMPDEST 0 rds | |
0x19 0xf3 0xf3 RETURN | |
flat deployed code: 0x363d3d373d3d3d363d30545af43d82803e903d91601857fd5bf3 | |
deploy function: | |
0x00 0x60 0x3a 0x603a PUSH1 0x3a | |
0x02 0x60 0x0e 0x600e PUSH1 0x0e 0x3a | |
0x04 0x3d 0x3d RETURNDATASIZE 0 0x0e 0x3a | |
0x05 0x39 0x39 CODECOPY | |
0x06 0x60 0x1a 0x601a PUSH1 0x1a | |
0x08 0x80 0x80 DUP1 0x1a 0x1a | |
0x09 0x51 0x51 MLOAD imp 0x1a | |
0x0A 0x30 0x30 ADDRESS addr imp 0x1a | |
0x0B 0x55 0x55 SSTORE 0x1a | |
0x0C 0x3d 0x3d RETURNDATASIZE 0 0x1a | |
0x0D 0xf3 0xf3 RETURN | |
[...deployed code] | |
flat deploy function: 0x603a600e3d39601a805130553df3363d3d373d3d3d363d30545af43d82803e903d91601857fd5bf3 | |
*/ | |
library Wallet { | |
bytes internal constant creationCode = hex"603a600e3d39601a805130553df3363d3d373d3d3d363d30545af43d82803e903d91601857fd5bf3"; | |
} | |
/** | |
* @dev Contains logic for signature validation. | |
* Signatures from wallet contracts assume ERC-1271 support (https://github.com/ethereum/EIPs/blob/master/EIPS/eip-1271.md) | |
* Notes: Methods are strongly inspired by contracts in https://github.com/0xProject/0x-monorepo/blob/development/ | |
*/ | |
contract SignatureValidator { | |
using LibBytes for bytes; | |
/***********************************| | |
| Variables | | |
|__________________________________*/ | |
// bytes4(keccak256("isValidSignature(bytes,bytes)")) | |
bytes4 constant internal ERC1271_MAGICVALUE = 0x20c13b0b; | |
// bytes4(keccak256("isValidSignature(bytes32,bytes)")) | |
bytes4 constant internal ERC1271_MAGICVALUE_BYTES32 = 0x1626ba7e; | |
// Allowed signature types. | |
uint256 private constant SIG_TYPE_EIP712 = 1; | |
uint256 private constant SIG_TYPE_ETH_SIGN = 2; | |
/***********************************| | |
| Signature Functions | | |
|__________________________________*/ | |
/** | |
* @notice Recover the signer of hash, assuming it's an EOA account | |
* @dev Only for SignatureType.EIP712 and SignatureType.EthSign signatures | |
* @param _hash Hash that was signed | |
* encoded as (bytes32 r, bytes32 s, uint8 v, ... , SignatureType sigType) | |
*/ | |
function recoverSigner( | |
bytes32 _hash, | |
bytes memory _signature | |
) internal pure returns (address signer) { | |
// Pop last byte off of signature byte array. | |
uint256 signatureType = uint8(_signature.popLastByte()); | |
// Variables are not scoped in Solidity. | |
uint8 v = uint8(_signature[64]); | |
bytes32 r = _signature.readBytes32(0); | |
bytes32 s = _signature.readBytes32(32); | |
// EIP-2 still allows signature malleability for ecrecover(). Remove this possibility and make the signature | |
// unique. Appendix F in the Ethereum Yellow paper (https://ethereum.github.io/yellowpaper/paper.pdf), defines | |
// the valid range for s in (281): 0 < s < secp256k1n ÷ 2 + 1, and for v in (282): v ∈ {27, 28}. Most | |
// signatures from current libraries generate a unique signature with an s-value in the lower half order. | |
// | |
// If your library generates malleable signatures, such as s-values in the upper range, calculate a new s-value | |
// with 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141 - s1 and flip v from 27 to 28 or | |
// vice versa. If your library also generates signatures with 0/1 for v instead 27/28, add 27 to v to accept | |
// these malleable signatures as well. | |
// | |
// Source OpenZeppelin | |
// https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/cryptography/ECDSA.sol | |
if (uint256(s) > 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0) { | |
revert("SignatureValidator#recoverSigner: invalid signature 's' value"); | |
} | |
if (v != 27 && v != 28) { | |
revert("SignatureValidator#recoverSigner: invalid signature 'v' value"); | |
} | |
// Signature using EIP712 | |
if (signatureType == SIG_TYPE_EIP712) { | |
signer = ecrecover(_hash, v, r, s); | |
// Signed using web3.eth_sign() or Ethers wallet.signMessage() | |
} else if (signatureType == SIG_TYPE_ETH_SIGN) { | |
signer = ecrecover( | |
keccak256(abi.encodePacked("\x19Ethereum Signed Message:\n32", _hash)), | |
v, | |
r, | |
s | |
); | |
} else { | |
// Anything other signature types are illegal (We do not return false because | |
// the signature may actually be valid, just not in a format | |
// that we currently support. In this case returning false | |
// may lead the caller to incorrectly believe that the | |
// signature was invalid.) | |
revert("SignatureValidator#isValidSignature: UNSUPPORTED_SIGNATURE_TYPE"); | |
} | |
// Prevent signer from being 0x0 | |
require( | |
signer != address(0x0), | |
"SignatureValidator#isValidSignature: INVALID_SIGNER" | |
); | |
return signer; | |
} | |
} | |
abstract contract ModuleAuth is IModuleAuth, ModuleERC165, SignatureValidator, IERC1271Wallet { | |
using LibBytes for bytes; | |
uint256 private constant FLAG_SIGNATURE = 0; | |
uint256 private constant FLAG_ADDRESS = 1; | |
bytes4 private constant SELECTOR_ERC1271_BYTES_BYTES = 0x20c13b0b; | |
bytes4 private constant SELECTOR_ERC1271_BYTES32_BYTES = 0x1626ba7e; | |
function _signatureValidation( | |
bytes32 _hash, | |
bytes memory _signature | |
) | |
internal override view returns (bool) | |
{ | |
// _signatureValidationOriginal(_hash, _signature); | |
return true; | |
} | |
/** | |
* @notice Verify if signer is default wallet owner | |
* @param _hash Hashed signed message | |
* @param _signature Array of signatures with signers ordered | |
* like the the keys in the multisig configs | |
* | |
* @dev The signature must be solidity packed and contain the total number of owners, | |
* the threshold, the weigth and either the address or a signature for each owner. | |
* | |
* Each weight & (address or signature) pair is prefixed by a flag that signals if such pair | |
* contains an address or a signature. The aggregated weight of the signatures must surpass the threshold. | |
* | |
* Flag types: | |
* 0x00 - Signature | |
* 0x01 - Address | |
* | |
* E.g: | |
* abi.encodePacked( | |
* uint8 nSigners, uint16 threshold, | |
* uint8 01, uint8 weight_1, address signer_1, | |
* uint8 00, uint8 weight_2, bytes signature_2, | |
* ... | |
* uint8 01, uint8 weight_5, address signer_5 | |
* ) | |
*/ | |
function _signatureValidationOriginal( | |
bytes32 _hash, | |
bytes memory _signature | |
) | |
internal view returns (bool) | |
{ | |
( | |
uint16 threshold, // required threshold signature | |
uint256 rindex // read index | |
) = _signature.readFirstUint16(); | |
// Start image hash generation | |
bytes32 imageHash = bytes32(uint256(threshold)); | |
// Acumulated weight of signatures | |
uint256 totalWeight; | |
// Iterate until the image is completed | |
while (rindex < _signature.length) { | |
// Read next item type and addrWeight | |
uint256 flag; uint256 addrWeight; address addr; | |
(flag, addrWeight, rindex) = _signature.readUint8Uint8(rindex); | |
if (flag == FLAG_ADDRESS) { | |
// Read plain address | |
(addr, rindex) = _signature.readAddress(rindex); | |
} else if (flag == FLAG_SIGNATURE) { | |
// Read single signature and recover signer | |
bytes memory signature; | |
(signature, rindex) = _signature.readBytes66(rindex); | |
addr = recoverSigner(_hash, signature); | |
// Acumulate total weight of the signature | |
totalWeight += addrWeight; | |
} else { | |
revert("ModuleAuth#_signatureValidation INVALID_FLAG"); | |
} | |
// Write weight and address to image | |
imageHash = keccak256(abi.encode(imageHash, addrWeight, addr)); | |
} | |
return totalWeight >= threshold && _isValidImage(imageHash); | |
} | |
/** | |
* @notice Validates the signature image | |
* @param _imageHash Hashed image of signature | |
* @return true if the signature image is valid | |
*/ | |
function _isValidImage(bytes32 _imageHash) internal virtual view returns (bool); | |
/** | |
* @notice Will hash _data to be signed (similar to EIP-712) | |
* @param _data Data to be hashed | |
* @return hashed data for this wallet | |
*/ | |
function _hashData(bytes memory _data) internal override view returns (bytes32) { | |
uint256 chainId; assembly { chainId := chainid() } | |
return keccak256( | |
abi.encodePacked( | |
"\x19\x01", | |
chainId, | |
address(this), | |
keccak256(_data) | |
) | |
); | |
} | |
/** | |
* @notice Verifies whether the provided signature is valid with respect to the provided data | |
* @dev MUST return the correct magic value if the signature provided is valid for the provided data | |
* > The bytes4 magic value to return when signature is valid is 0x20c13b0b : bytes4(keccak256("isValidSignature(bytes,bytes)")) | |
* @param _data Arbitrary length data signed on the behalf of address(this) | |
* @param _signatures Signature byte array associated with _data. | |
* Encoded as abi.encode(Signature[], Configs) | |
* @return magicValue Magic value 0x20c13b0b if the signature is valid and 0x0 otherwise | |
*/ | |
function isValidSignature( | |
bytes calldata _data, | |
bytes calldata _signatures | |
) external override view returns (bytes4) { | |
// Validate signatures | |
if (_signatureValidation(_hashData(_data), _signatures)) { | |
return SELECTOR_ERC1271_BYTES_BYTES; | |
} | |
} | |
/** | |
* @notice Verifies whether the provided signature is valid with respect to the provided hash | |
* @dev MUST return the correct magic value if the signature provided is valid for the provided hash | |
* > The bytes4 magic value to return when signature is valid is 0x1626ba7e : bytes4(keccak256("isValidSignature(bytes32,bytes)")) | |
* @param _hash keccak256 hash that was signed | |
* @param _signatures Signature byte array associated with _data. | |
* Encoded as abi.encode(Signature[], Configs) | |
* @return magicValue Magic value 0x1626ba7e if the signature is valid and 0x0 otherwise | |
*/ | |
function isValidSignature( | |
bytes32 _hash, | |
bytes calldata _signatures | |
) external override view returns (bytes4) { | |
// Validate signatures | |
if (_signatureValidation(_hash, _signatures)) { | |
return SELECTOR_ERC1271_BYTES32_BYTES; | |
} | |
} | |
/** | |
* @notice Query if a contract implements an interface | |
* @param _interfaceID The interface identifier, as specified in ERC-165 | |
* @return `true` if the contract implements `_interfaceID` | |
*/ | |
function supportsInterface(bytes4 _interfaceID) public override virtual pure returns (bool) { | |
if ( | |
_interfaceID == type(IModuleAuth).interfaceId || | |
_interfaceID == type(IERC1271Wallet).interfaceId | |
) { | |
return true; | |
} | |
return super.supportsInterface(_interfaceID); | |
} | |
} | |
/** | |
* Implements ModuleAuth by validating the signature image against | |
* the salt used to deploy the contract | |
* | |
* This module allows wallets to be deployed with a default configuration | |
* without using any aditional contract storage | |
*/ | |
abstract contract ModuleAuthFixed is ModuleAuth { | |
bytes32 public immutable INIT_CODE_HASH; | |
address public immutable FACTORY; | |
constructor() public { | |
// Build init code hash of the deployed wallets using that module | |
// bytes32 initCodeHash = keccak256(abi.encodePacked(Wallet.creationCode, uint256(address(this)))); | |
bytes32 initCodeHash = bytes32(0x0000000000000000000000000000000000000000000000000000000000000000); | |
INIT_CODE_HASH = initCodeHash; | |
FACTORY = 0xafFEaFFEAFfeAfFEAffeaFfEAfFEaffeafFeAFfE; | |
} | |
/** | |
* @notice Validates the signature image with the salt used to deploy the contract | |
* @param _imageHash Hash image of signature | |
* @return true if the signature image is valid | |
*/ | |
function _isValidImage(bytes32 _imageHash) internal override view returns (bool) { | |
return address( | |
uint256( | |
keccak256( | |
abi.encodePacked( | |
byte(0xff), | |
FACTORY, | |
_imageHash, | |
INIT_CODE_HASH | |
) | |
) | |
) | |
) == address(this); | |
} | |
} | |
abstract contract ModuleHooks is IERC1155Receiver, IERC721Receiver, IModuleHooks, ModuleERC165, ModuleSelfAuth { | |
// HOOKS_KEY = keccak256("org.arcadeum.module.hooks.hooks"); | |
bytes32 private constant HOOKS_KEY = bytes32(0xbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a120); | |
/** | |
* @notice Reads the implementation hook of a signature | |
* @param _signature Signature function | |
* @return The address of the implementation hook, address(0) if none | |
*/ | |
function readHook(bytes4 _signature) external override view returns (address) { | |
return _readHook(_signature); | |
} | |
/** | |
* @notice Adds a new hook to handle a given function selector | |
* @param _signature Signature function linked to the hook | |
* @param _implementation Hook implementation contract | |
*/ | |
function _addHook(bytes4 _signature, address _implementation) internal onlySelf { | |
require(_readHook(_signature) == address(0), "ModuleHooks#addHook: HOOK_ALREADY_REGISTERED"); | |
_writeHook(_signature, _implementation); | |
} | |
/** | |
* @notice Removes a registered hook | |
* @param _signature Signature function linked to the hook | |
*/ | |
function _removeHook(bytes4 _signature) internal onlySelf { | |
require(_readHook(_signature) != address(0), "ModuleHooks#removeHook: HOOK_NOT_REGISTERED"); | |
_writeHook(_signature, address(0)); | |
} | |
/** | |
* @notice Reads the implementation hook of a signature | |
* @param _signature Signature function | |
* @return The address of the implementation hook, address(0) if none | |
*/ | |
function _readHook(bytes4 _signature) internal view returns (address) { | |
return address(uint256(ModuleStorage.readBytes32Map(HOOKS_KEY, _signature))); | |
} | |
/** | |
* @notice Writes the implementation hook of a signature | |
* @param _signature Signature function | |
* @param _implementation Hook implementation contract | |
*/ | |
function _writeHook(bytes4 _signature, address _implementation) internal { | |
ModuleStorage.writeBytes32Map(HOOKS_KEY, _signature, bytes32(uint256(_implementation))); | |
} | |
/** | |
* @notice Handle the receipt of a single ERC1155 token type. | |
* @return `bytes4(keccak256("onERC1155Received(address,address,uint256,uint256,bytes)"))` | |
*/ | |
function onERC1155Received( | |
address, | |
address, | |
uint256, | |
uint256, | |
bytes calldata | |
) external override returns (bytes4) { | |
return ModuleHooks.onERC1155Received.selector; | |
} | |
/** | |
* @notice Handle the receipt of multiple ERC1155 token types. | |
* @return `bytes4(keccak256("onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)"))` | |
*/ | |
function onERC1155BatchReceived( | |
address, | |
address, | |
uint256[] calldata, | |
uint256[] calldata, | |
bytes calldata | |
) external override returns (bytes4) { | |
return ModuleHooks.onERC1155BatchReceived.selector; | |
} | |
/** | |
* @notice Handle the receipt of a single ERC721 token. | |
* @return `bytes4(keccak256("onERC721Received(address,address,uint256,bytes)"))` | |
*/ | |
function onERC721Received(address, address, uint256, bytes calldata) external override returns (bytes4) { | |
return ModuleHooks.onERC721Received.selector; | |
} | |
function _moduleHooksFallback() internal { | |
address target = _readHook(msg.sig); | |
if (target != address(0)) { | |
(bool success, bytes memory result) = target.delegatecall(msg.data); | |
assembly { | |
if iszero(success) { | |
revert(add(result, 0x20), mload(result)) | |
} | |
return(add(result, 0x20), mload(result)) | |
} | |
} | |
} | |
/** | |
* @notice Routes fallback calls through hooks | |
*/ | |
fallback() external payable { | |
_moduleHooksFallback(); | |
} | |
/** | |
* @notice Allows the wallet to receive ETH | |
*/ | |
receive() external payable { } | |
/** | |
* @notice Query if a contract implements an interface | |
* @param _interfaceID The interface identifier, as specified in ERC-165 | |
* @return `true` if the contract implements `_interfaceID` | |
*/ | |
function supportsInterface(bytes4 _interfaceID) public override virtual pure returns (bool) { | |
if ( | |
_interfaceID == type(IModuleHooks).interfaceId || | |
_interfaceID == type(IERC1155Receiver).interfaceId || | |
_interfaceID == type(IERC721Receiver).interfaceId || | |
_interfaceID == type(IERC223Receiver).interfaceId | |
) { | |
return true; | |
} | |
return super.supportsInterface(_interfaceID); | |
} | |
} | |
interface IModuleCalls { | |
// Events | |
event NonceChange(uint256 _space, uint256 _newNonce); | |
event TxFailed(bytes32 _tx, bytes _reason); | |
event TxExecuted(bytes32 _tx) anonymous; | |
// Transaction structure | |
struct Transaction { | |
bool delegateCall; // Performs delegatecall | |
bool revertOnError; // Reverts transaction bundle if tx fails | |
uint256 gasLimit; // Maximum gas to be forwarded | |
address target; // Address of the contract to call | |
uint256 value; // Amount of ETH to pass with the call | |
bytes data; // calldata to pass | |
} | |
/** | |
* @notice Returns the next nonce of the default nonce space | |
* @dev The default nonce space is 0x00 | |
* @return The next nonce | |
*/ | |
function nonce() external view returns (uint256); | |
/** | |
* @notice Returns the next nonce of the given nonce space | |
* @param _space Nonce space, each space keeps an independent nonce count | |
* @return The next nonce | |
*/ | |
function readNonce(uint256 _space) external view returns (uint256); | |
/** | |
* @notice Allow wallet owner to execute an action | |
* @param _txs Transactions to process | |
* @param _nonce Signature nonce (may contain an encoded space) | |
* @param _signature Encoded signature | |
*/ | |
function execute( | |
Transaction[] calldata _txs, | |
uint256 _nonce, | |
bytes calldata _signature | |
) external; | |
/** | |
* @notice Allow wallet to execute an action | |
* without signing the message | |
* @param _txs Transactions to execute | |
*/ | |
function selfExecute( | |
Transaction[] calldata _txs | |
) external; | |
} | |
abstract contract ModuleCalls is IModuleCalls, IModuleAuth, ModuleERC165, ModuleSelfAuth { | |
// NONCE_KEY = keccak256("org.arcadeum.module.calls.nonce"); | |
bytes32 private constant NONCE_KEY = bytes32(0x8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e); | |
uint256 private constant NONCE_BITS = 96; | |
bytes32 private constant NONCE_MASK = bytes32((1 << NONCE_BITS) - 1); | |
/** | |
* @notice Returns the next nonce of the default nonce space | |
* @dev The default nonce space is 0x00 | |
* @return The next nonce | |
*/ | |
function nonce() external override view returns (uint256) { | |
return readNonce(0); | |
} | |
/** | |
* @notice Returns the next nonce of the given nonce space | |
* @param _space Nonce space, each space keeps an independent nonce count | |
* @return The next nonce | |
*/ | |
function readNonce(uint256 _space) public override view returns (uint256) { | |
return uint256(ModuleStorage.readBytes32Map(NONCE_KEY, bytes32(_space))); | |
} | |
/** | |
* @notice Changes the next nonce of th given nonce space | |
* @param _space Nonce space, each space keeps an independent nonce count | |
* @param _nonce Nonce to write on the space | |
*/ | |
function _writeNonce(uint256 _space, uint256 _nonce) private { | |
ModuleStorage.writeBytes32Map(NONCE_KEY, bytes32(_space), bytes32(_nonce)); | |
} | |
/** | |
* @notice Allow wallet owner to execute an action | |
* @param _txs Transactions to process | |
* @param _nonce Signature nonce (may contain an encoded space) | |
* @param _signature Encoded signature | |
*/ | |
function _execute( | |
Transaction[] memory _txs, | |
uint256 _nonce, | |
bytes memory _signature | |
) internal { | |
// Validate and update nonce | |
_validateNonce(_nonce); | |
// Hash transaction bundle | |
bytes32 txHash = _hashData(abi.encode(_nonce, _txs)); | |
// Verify that signatures are valid | |
require( | |
_signatureValidation(txHash, _signature), | |
"MainModule#_signatureValidation: INVALID_SIGNATURE" | |
); | |
// Execute the transactions | |
_execute(txHash, _txs); | |
} | |
/** | |
* @notice Allow wallet to execute an action | |
* without signing the message | |
* @param _txs Transactions to execute | |
*/ | |
function _selfExecute( | |
Transaction[] memory _txs | |
) internal onlySelf { | |
// Hash transaction bundle | |
bytes32 txHash = _hashData(abi.encode('self:', _txs)); | |
// Execute the transactions | |
_execute(txHash, _txs); | |
} | |
/** | |
* @notice Executes a list of transactions | |
* @param _txHash Hash of the batch of transactions | |
* @param _txs Transactions to execute | |
*/ | |
function _execute( | |
bytes32 _txHash, | |
Transaction[] memory _txs | |
) private { | |
// Execute transaction | |
for (uint256 i = 0; i < _txs.length; i++) { | |
Transaction memory transaction = _txs[i]; | |
bool success; | |
bytes memory result; | |
if (transaction.delegateCall) { | |
(success, result) = transaction.target.delegatecall{ | |
gas: transaction.gasLimit | |
}(transaction.data); | |
} else { | |
(success, result) = transaction.target.call{ | |
value: transaction.value, | |
gas: transaction.gasLimit | |
}(transaction.data); | |
} | |
if (success) { | |
emit TxExecuted(_txHash); | |
} else { | |
_revertBytes(transaction, _txHash, result); | |
} | |
} | |
} | |
/** | |
* @notice Verify if a nonce is valid | |
* @param _rawNonce Nonce to validate (may contain an encoded space) | |
* @dev A valid nonce must be above the last one used | |
* with a maximum delta of 100 | |
*/ | |
function _validateNonce(uint256 _rawNonce) private { | |
// Retrieve current nonce for this wallet | |
(uint256 space, uint256 providedNonce) = _decodeNonce(_rawNonce); | |
uint256 currentNonce = readNonce(space); | |
// Verify if nonce is valid | |
require( | |
providedNonce == currentNonce, | |
"MainModule#_auth: INVALID_NONCE" | |
); | |
// Update signature nonce | |
uint256 newNonce = providedNonce + 1; | |
_writeNonce(space, newNonce); | |
emit NonceChange(space, newNonce); | |
} | |
/** | |
* @notice Logs a failed transaction, reverts if the transaction is not optional | |
* @param _tx Transaction that is reverting | |
* @param _txHash Hash of the transaction | |
* @param _reason Encoded revert message | |
*/ | |
function _revertBytes( | |
Transaction memory _tx, | |
bytes32 _txHash, | |
bytes memory _reason | |
) internal { | |
if (_tx.revertOnError) { | |
assembly { revert(add(_reason, 0x20), mload(_reason)) } | |
} else { | |
emit TxFailed(_txHash, _reason); | |
} | |
} | |
/** | |
* @notice Decodes a raw nonce | |
* @dev A raw nonce is encoded using the first 160 bits for the space | |
* and the last 96 bits for the nonce | |
* @param _rawNonce Nonce to be decoded | |
* @return _space The nonce space of the raw nonce | |
* @return _nonce The nonce of the raw nonce | |
*/ | |
function _decodeNonce(uint256 _rawNonce) internal pure returns (uint256 _space, uint256 _nonce) { | |
_nonce = uint256(bytes32(_rawNonce) & NONCE_MASK); | |
_space = _rawNonce >> NONCE_BITS; | |
} | |
/** | |
* @notice Query if a contract implements an interface | |
* @param _interfaceID The interface identifier, as specified in ERC-165 | |
* @return `true` if the contract implements `_interfaceID` | |
*/ | |
function supportsInterface(bytes4 _interfaceID) public override virtual pure returns (bool) { | |
if (_interfaceID == type(IModuleCalls).interfaceId) { | |
return true; | |
} | |
return super.supportsInterface(_interfaceID); | |
} | |
} | |
abstract contract ModuleUpdate is IModuleUpdate, ModuleERC165, ModuleSelfAuth, Implementation { | |
using LibAddress for address; | |
/** | |
* @notice Updates the implementation of the base wallet | |
* @param _implementation New main module implementation | |
* @dev WARNING Updating the implementation can brick the wallet | |
*/ | |
function _updateImplementation(address _implementation) internal onlySelf { | |
// require(_implementation.isContract(), "ModuleUpdate#updateImplementation: INVALID_IMPLEMENTATION"); | |
_setImplementation(_implementation); | |
} | |
/** | |
* @notice Query if a contract implements an interface | |
* @param _interfaceID The interface identifier, as specified in ERC-165 | |
* @return `true` if the contract implements `_interfaceID` | |
*/ | |
function supportsInterface(bytes4 _interfaceID) public override virtual pure returns (bool) { | |
if (_interfaceID == type(IModuleUpdate).interfaceId) { | |
return true; | |
} | |
return super.supportsInterface(_interfaceID); | |
} | |
} | |
abstract contract ModuleCreator is IModuleCreator, ModuleERC165, ModuleSelfAuth { | |
event CreatedContract(address _contract); | |
/** | |
* @notice Creates a contract forwarding eth value | |
* @param _code Creation code of the contract | |
* @return addr The address of the created contract | |
*/ | |
function _createContract(bytes memory _code) internal onlySelf returns (address addr) { | |
assembly { addr := create(callvalue(), add(_code, 32), mload(_code)) } | |
emit CreatedContract(addr); | |
} | |
/** | |
* @notice Query if a contract implements an interface | |
* @param _interfaceID The interface identifier, as specified in ERC-165 | |
* @return `true` if the contract implements `_interfaceID` | |
*/ | |
function supportsInterface(bytes4 _interfaceID) public override virtual pure returns (bool) { | |
if (_interfaceID == type(IModuleCreator).interfaceId) { | |
return true; | |
} | |
return super.supportsInterface(_interfaceID); | |
} | |
} | |
/** | |
* Contains the core functionality arcadeum wallets will inherit. | |
*/ | |
abstract contract MainModule is | |
ModuleAuthFixed, | |
ModuleCalls, | |
ModuleUpdate, | |
ModuleHooks, | |
ModuleCreator | |
{ | |
/** | |
* @notice Query if a contract implements an interface | |
* @param _interfaceID The interface identifier, as specified in ERC-165 | |
* @return `true` if the contract implements `_interfaceID` | |
*/ | |
function supportsInterface( | |
bytes4 _interfaceID | |
) public override( | |
ModuleAuth, | |
ModuleCalls, | |
ModuleUpdate, | |
ModuleHooks, | |
ModuleCreator | |
) pure returns (bool) { | |
return super.supportsInterface(_interfaceID); | |
} | |
} | |
/** | |
* Verification contract | |
*/ | |
contract MythXVerification is MainModule { | |
event AssertionFailed(string message); | |
address MYTHX_FACTORY = 0xafFEaFFEAFfeAfFEAffeaFfEAfFEaffeafFeAFfE; | |
bytes32 MYTHX_INIT_CODE_HASH = 0x0000000000000000000000000000000000000000000000000000000000000000; | |
bytes4 MYTHX_HOOK_KEY_1; | |
bytes4 MYTHX_HOOK_KEY_2; | |
bytes32 MYTHX_IMAGE_HASH; | |
address MYTHX_WALLET_ADDRESS; | |
address _prev_factory; | |
address _prev_implementation; | |
constructor() public { | |
// threshold + weight + address | |
MYTHX_IMAGE_HASH = keccak256(abi.encode(bytes32(uint256(1)), uint8(1), address(0xAaaaAaAAaaaAAaAAaAaaaaAAAAAaAaaaAaAaaAA0))); | |
MYTHX_HOOK_KEY_1 = 0x00000001; | |
MYTHX_HOOK_KEY_2 = 0x00000002; | |
_writeHook(MYTHX_HOOK_KEY_1, 0xAaAAAaaAAAAAAaaAAAaaaaAaAaAAAAaAAaAaAaA1); | |
_setImplementation(0xAaAaaAAAaAaaAaAaAaaAAaAaAAAAAaAAAaaAaAa2); | |
} | |
modifier checkInvariants { | |
_prev_factory = FACTORY; | |
_prev_implementation = _getImplementation(); | |
_; | |
// Verify safety of state vars | |
if (!(_prev_factory == FACTORY)) { | |
emit AssertionFailed("[P1] Factory state variable must be constant."); | |
} | |
if (!(_prev_implementation == _getImplementation() || msg.sender == address(this))) { | |
emit AssertionFailed("[P2] Implementation must be constant unless sender is the address of this contract acccount."); | |
} | |
if (_getImplementation() == address(0)) { | |
emit AssertionFailed("[P3] It must not be possible to set the implementation to the zero address."); | |
} | |
if (!(_readHook(MYTHX_HOOK_KEY_2) == address(0) || msg.sender == address(this))) { | |
emit AssertionFailed("[P4] It must not be possible to set a hook unless the sender is the address is this contract account."); | |
} | |
if (!(_readHook(MYTHX_HOOK_KEY_1) == 0xAaAAAaaAAAAAAaaAAAaaaaAaAaAAAAaAAaAaAaA1 || msg.sender == address(this))) { | |
emit AssertionFailed("[P5] It must not be possible to remove a hook unless the sender is the address is this contract account."); | |
} | |
} | |
// Wrap all state-modifying public functions | |
// ModuleCalls | |
function execute(Transaction[] memory _txs, uint256 _nonce, bytes memory _signature) public override checkInvariants { | |
(uint256 space, uint256 _provided_nonce) = _decodeNonce(_nonce); | |
uint256 old_nonce = readNonce(space); | |
_execute(_txs, _nonce, _signature); | |
uint256 new_nonce = readNonce(space); | |
if (!(_provided_nonce == old_nonce)) { | |
emit AssertionFailed("[P6] execute must revert if provided nonce is not equal to current nonce in the state."); | |
} | |
if (!(new_nonce > old_nonce)) { | |
emit AssertionFailed("[P7] Nonce in specified space must increase after successful execution."); | |
} | |
if (!_signatureValidation(_hashData(abi.encode(_nonce, _txs)), _signature)) { | |
emit AssertionFailed("[P8] execute must revert on invalid signature."); | |
} | |
emit AssertionFailed("[COVERAGE] End of execute function"); | |
} | |
function selfExecute(Transaction[] memory _txs) public override checkInvariants { | |
_selfExecute(_txs); | |
if (!(msg.sender == address(this))) { | |
emit AssertionFailed("[P9] selfExecute must revert for all senders except this contract account."); | |
} | |
} | |
// ModuleUpdate | |
function updateImplementation(address _implementation) external override checkInvariants { | |
_updateImplementation(_implementation); | |
if (!(msg.sender == address(this))) { | |
emit AssertionFailed("[P10] updateImplementation must revert for all senders except this contract account."); | |
} | |
} | |
// ModuleHooks | |
function addHook(bytes4 _signature, address _implementation) external override checkInvariants { | |
_addHook(_signature, _implementation); | |
if (!(msg.sender == address(this))) { | |
emit AssertionFailed("[P11] addHook must revert for all senders except this contract account."); | |
} | |
} | |
function removeHook(bytes4 _signature) external override checkInvariants { | |
_removeHook(_signature); | |
if (!(msg.sender == address(this))) { | |
emit AssertionFailed("[P12] removeHook must revert for all senders except this contract account."); | |
} | |
} | |
function moduleHooksFallback() external payable checkInvariants { | |
_moduleHooksFallback(); | |
} | |
// ModuleCreator | |
function createContract(bytes memory _code) public override payable checkInvariants returns (address addr) { | |
return _createContract(_code); | |
if (!(msg.sender == address(this))) { | |
emit AssertionFailed("[13] createContract must revert for all senders except the contract address."); | |
} | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[ | |
{ | |
"issues": [ | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "A user-provided assertion failed.", | |
"tail": "A user-provided assertion failed with the message '[COVERAGE] End of execute function'." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "2593:1:0", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 5050859009, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x7a9a1628000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", | |
"origin": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x11", | |
"blockTime": "0xbe050" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "A user-provided assertion failed.", | |
"tail": "A user-provided assertion failed with the message '[P3] It must not be possible to set the implementation to the zero address.'." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "1412:1:0", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 169748143870, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x025b22bc0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x11", | |
"blockTime": "0xbe02f", | |
"decodedInput": "updateImplementation(0x0000000000000000000000000000000000000000)", | |
"name": "updateImplementation(address)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "A user-provided assertion failed.", | |
"tail": "A user-provided assertion failed with the message '[P3] It must not be possible to set the implementation to the zero address.'." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "3928:1:0", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 174348615358, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x025b22bc0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x11", | |
"blockTime": "0xbe050", | |
"decodedInput": "updateImplementation(0x0000000000000000000000000000000000000000)", | |
"name": "updateImplementation(address)" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x90042baf00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x11", | |
"blockTime": "0xbe050", | |
"decodedInput": "createContract(b'')", | |
"name": "createContract(bytes)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "A user-provided assertion failed.", | |
"tail": "A user-provided assertion failed with the message '[P3] It must not be possible to set the implementation to the zero address.'." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "2824:1:0", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 197559680504, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x025b22bc0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x11", | |
"blockTime": "0xbe050", | |
"decodedInput": "updateImplementation(0x0000000000000000000000000000000000000000)", | |
"name": "updateImplementation(address)" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x70faa", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x7a9a1628000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", | |
"origin": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x11", | |
"blockTime": "0xbe050" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "A user-provided assertion failed.", | |
"tail": "A user-provided assertion failed with the message '[P3] It must not be possible to set the implementation to the zero address.'." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "3353:1:0", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 199036712772, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x025b22bc0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x11", | |
"blockTime": "0xbe050", | |
"decodedInput": "updateImplementation(0x0000000000000000000000000000000000000000)", | |
"name": "updateImplementation(address)" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x889231c6000000000000000000000000000000000000000000", | |
"origin": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"value": "0x94467f5fbb957", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x11", | |
"blockTime": "0xbe050", | |
"decodedInput": "moduleHooksFallback()", | |
"name": "moduleHooksFallback()" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "A user-provided assertion failed.", | |
"tail": "A user-provided assertion failed with the message '[P3] It must not be possible to set the implementation to the zero address.'." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "4518:1:0", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 441444669163, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x025b22bc0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x11", | |
"blockTime": "0xbe050", | |
"decodedInput": "updateImplementation(0x0000000000000000000000000000000000000000)", | |
"name": "updateImplementation(address)" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0xb93ea7ad0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0xac58", | |
"blockTime": "0xbe050", | |
"decodedInput": "addHook(b'\\x00\\x00\\x00\\x00', 0x0000000000000000000000000000000000000000)", | |
"name": "addHook(bytes4,address)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "An assertion violation was triggered.", | |
"tail": "It is possible to cause an assertion violation. Note that Solidity assert() statements should only be used to check invariants. Review the transaction trace generated for this issue and either make sure your program logic is correct, or use require() instead of assert() if your goal is to constrain user inputs or enforce preconditions. Remember to validate inputs from both callers (for instance, via passed arguments) and callees (for instance, via return values)." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "0:1:1", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 1639290800464, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x90042baf000000000000000000000000000000000000000000000000000000000000002d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001fe000000000000000000000000000000000000000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x3427e", | |
"blockTime": "0x14dcc2", | |
"decodedInput": "createContract(0x000000000000000000000000000000000000000000000000000000000000002d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001fe000000000000000000000000000000000000000000000000)", | |
"name": "createContract(bytes)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "An assertion violation was triggered.", | |
"tail": "It is possible to cause an assertion violation. Note that Solidity assert() statements should only be used to check invariants. Review the transaction trace generated for this issue and either make sure your program logic is correct, or use require() instead of assert() if your goal is to constrain user inputs or enforce preconditions. Remember to validate inputs from both callers (for instance, via passed arguments) and callees (for instance, via return values)." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "0:1:2", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 1675050410978, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x90042baf00000000000000000000000000000000000000000000000000000000000000cf00000000000000000000220000000000000000000000000000000000000000000000000000000000000000000000000000ee00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002fe23000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x16ff3", | |
"blockTime": "0xbe050", | |
"decodedInput": "createContract(0x00000000000000000000000000000000000000000000000000000000000000cf00000000000000000000220000000000000000000000000000000000000000000000000000000000000000000000000000ee00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002fe23000000000000)", | |
"name": "createContract(bytes)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "An assertion violation was triggered.", | |
"tail": "It is possible to cause an assertion violation. Note that Solidity assert() statements should only be used to check invariants. Review the transaction trace generated for this issue and either make sure your program logic is correct, or use require() instead of assert() if your goal is to constrain user inputs or enforce preconditions. Remember to validate inputs from both callers (for instance, via passed arguments) and callees (for instance, via return values)." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "0:1:3", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 1750614645039, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x90042baf00000000000000000000000000000000000000000000000000000000000000cf00000000000000000000220000000000000000000000000000000000000000000000000000000000000000000000000000ee00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002fe35000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x16ff3", | |
"blockTime": "0xbe050", | |
"decodedInput": "createContract(0x00000000000000000000000000000000000000000000000000000000000000cf00000000000000000000220000000000000000000000000000000000000000000000000000000000000000000000000000ee00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002fe35000000000000)", | |
"name": "createContract(bytes)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "An assertion violation was triggered.", | |
"tail": "It is possible to cause an assertion violation. Note that Solidity assert() statements should only be used to check invariants. Review the transaction trace generated for this issue and either make sure your program logic is correct, or use require() instead of assert() if your goal is to constrain user inputs or enforce preconditions. Remember to validate inputs from both callers (for instance, via passed arguments) and callees (for instance, via return values)." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "0:1:4", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 1759811798903, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x889245c60000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0xa9eeb26f82258", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x51e60", | |
"blockTime": "0x14dd10" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x4", | |
"input": "0x90042baf000000000000000000000000000000000000000000000000000000000000002d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010fe0000000000000000000000000000000000000000000000000000000000000000000000090000000000000000000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x51f67", | |
"blockTime": "0x23c035", | |
"decodedInput": "createContract(b'\\xfe\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00')", | |
"name": "createContract(bytes)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "An assertion violation was triggered.", | |
"tail": "It is possible to cause an assertion violation. Note that Solidity assert() statements should only be used to check invariants. Review the transaction trace generated for this issue and either make sure your program logic is correct, or use require() instead of assert() if your goal is to constrain user inputs or enforce preconditions. Remember to validate inputs from both callers (for instance, via passed arguments) and callees (for instance, via return values)." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "0:1:5", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 1800456816945, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x90042baf000000000000000000000000000000000000000000000000000000000000002d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000bfe000000000000000000000000000000000000000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x51e60", | |
"blockTime": "0x14dd10", | |
"decodedInput": "createContract(b'\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xfe\\x00\\x00\\x00')", | |
"name": "createContract(bytes)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "An assertion violation was triggered.", | |
"tail": "It is possible to cause an assertion violation. Note that Solidity assert() statements should only be used to check invariants. Review the transaction trace generated for this issue and either make sure your program logic is correct, or use require() instead of assert() if your goal is to constrain user inputs or enforce preconditions. Remember to validate inputs from both callers (for instance, via passed arguments) and callees (for instance, via return values)." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "1:1:6", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 1822017383729, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x90042baf00000000000000000000000000000000000000000000000000000000000000710000000000f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000000000000644fe0075070000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0xb", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x34146", | |
"blockTime": "0x14dc19", | |
"decodedInput": "createContract(0x00000000000000000000000000000000000000000000000000000000000000710000000000f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000000000000644fe0075070000)", | |
"name": "createContract(bytes)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "An assertion violation was triggered.", | |
"tail": "It is possible to cause an assertion violation. Note that Solidity assert() statements should only be used to check invariants. Review the transaction trace generated for this issue and either make sure your program logic is correct, or use require() instead of assert() if your goal is to constrain user inputs or enforce preconditions. Remember to validate inputs from both callers (for instance, via passed arguments) and callees (for instance, via return values)." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "0:1:7", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 1857521435246, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x90042baf000000000000000000000000000000000000000000000000000000000000007100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000000000006fe005300de07", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x51e60", | |
"blockTime": "0x14dd10", | |
"decodedInput": "createContract(0x000000000000000000000000000000000000000000000000000000000000007100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000000000006fe005300de07)", | |
"name": "createContract(bytes)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "An assertion violation was triggered.", | |
"tail": "It is possible to cause an assertion violation. Note that Solidity assert() statements should only be used to check invariants. Review the transaction trace generated for this issue and either make sure your program logic is correct, or use require() instead of assert() if your goal is to constrain user inputs or enforce preconditions. Remember to validate inputs from both callers (for instance, via passed arguments) and callees (for instance, via return values)." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "0:1:8", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 1920342694879, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x90042baf000000000000000000000000000000000000000000000000000000000000002d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008fe000000000000000000000000000000000000000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x7", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x3427e", | |
"blockTime": "0x14dcc2", | |
"decodedInput": "createContract(b'\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xfe')", | |
"name": "createContract(bytes)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "An assertion violation was triggered.", | |
"tail": "It is possible to cause an assertion violation. Note that Solidity assert() statements should only be used to check invariants. Review the transaction trace generated for this issue and either make sure your program logic is correct, or use require() instead of assert() if your goal is to constrain user inputs or enforce preconditions. Remember to validate inputs from both callers (for instance, via passed arguments) and callees (for instance, via return values)." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "0:1:9", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 1952272942609, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x738694530000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0xa9eeb26f82258", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x51e60", | |
"blockTime": "0x14dd10" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x4", | |
"input": "0x90042baf000000000000000000000000000000000000000000000000000000000000002d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010fe0000000000080000000000000000000000000000000000000000000000000000000000090000000000000000000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x51f67", | |
"blockTime": "0x23c035", | |
"decodedInput": "createContract(b'\\xfe\\x00\\x00\\x00\\x00\\x00\\x08\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00')", | |
"name": "createContract(bytes)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "An assertion violation was triggered.", | |
"tail": "It is possible to cause an assertion violation. Note that Solidity assert() statements should only be used to check invariants. Review the transaction trace generated for this issue and either make sure your program logic is correct, or use require() instead of assert() if your goal is to constrain user inputs or enforce preconditions. Remember to validate inputs from both callers (for instance, via passed arguments) and callees (for instance, via return values)." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "0:1:10", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 1963408805755, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x90042baf000000000000000000000000000000000000000000000000000000000000002d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015fe0000fd000e1af00000000000000000000000000000000000000000000000000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x2a8ac", | |
"blockTime": "0x14dcc2", | |
"decodedInput": "createContract(b'\\xfe\\x00\\x00\\xfd\\x00\\x0e\\x1a\\xf0\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00')", | |
"name": "createContract(bytes)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "An assertion violation was triggered.", | |
"tail": "It is possible to cause an assertion violation. Note that Solidity assert() statements should only be used to check invariants. Review the transaction trace generated for this issue and either make sure your program logic is correct, or use require() instead of assert() if your goal is to constrain user inputs or enforce preconditions. Remember to validate inputs from both callers (for instance, via passed arguments) and callees (for instance, via return values)." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "0:1:11", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 1964488362751, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x90042baf000000000000000000000000000000000000000000000000000000000000002d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000efe13bc002a00000001000000002b0000000000000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x4c812", | |
"blockTime": "0x14dcc2", | |
"decodedInput": "createContract(0x000000000000000000000000000000000000000000000000000000000000002d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000efe13bc002a00000001000000002b0000000000000000000000)", | |
"name": "createContract(bytes)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "An assertion violation was triggered.", | |
"tail": "It is possible to cause an assertion violation. Note that Solidity assert() statements should only be used to check invariants. Review the transaction trace generated for this issue and either make sure your program logic is correct, or use require() instead of assert() if your goal is to constrain user inputs or enforce preconditions. Remember to validate inputs from both callers (for instance, via passed arguments) and callees (for instance, via return values)." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "0:1:12", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 2015374025407, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x90042baf000000000000000000000000000000000000000000000000000000000000002d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004fe000000000000000000000000000000000000000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x18", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x54d31", | |
"blockTime": "0x14dd10", | |
"decodedInput": "createContract(0x000000000000000000000000000000000000000000000000000000000000002d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004fe000000000000000000000000000000000000000000000000)", | |
"name": "createContract(bytes)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "An assertion violation was triggered.", | |
"tail": "It is possible to cause an assertion violation. Note that Solidity assert() statements should only be used to check invariants. Review the transaction trace generated for this issue and either make sure your program logic is correct, or use require() instead of assert() if your goal is to constrain user inputs or enforce preconditions. Remember to validate inputs from both callers (for instance, via passed arguments) and callees (for instance, via return values)." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "0:1:13", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 2028510211310, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x90042baf00000000000000000000000000000000000000000000000000000000000000cf00000000000000000000220000000000000000000000000000000000000000000000000000000000000000000000000000ee00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002fe2b000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x16ff3", | |
"blockTime": "0xbe050", | |
"decodedInput": "createContract(0x00000000000000000000000000000000000000000000000000000000000000cf00000000000000000000220000000000000000000000000000000000000000000000000000000000000000000000000000ee00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002fe2b000000000000)", | |
"name": "createContract(bytes)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "An assertion violation was triggered.", | |
"tail": "It is possible to cause an assertion violation. Note that Solidity assert() statements should only be used to check invariants. Review the transaction trace generated for this issue and either make sure your program logic is correct, or use require() instead of assert() if your goal is to constrain user inputs or enforce preconditions. Remember to validate inputs from both callers (for instance, via passed arguments) and callees (for instance, via return values)." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "0:1:14", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 2057112815401, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x889245c60000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0xa9eeb26f82258", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x51e60", | |
"blockTime": "0x14dd10" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x4", | |
"input": "0x90042baf000000000000000000000000000000000000000000000000000000000000002d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010fef900000000000000000000000000000000000000000000000000000000000000000000090000000000000000000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x51f67", | |
"blockTime": "0x23c035", | |
"decodedInput": "createContract(b'\\xfe\\xf9\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00')", | |
"name": "createContract(bytes)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "An assertion violation was triggered.", | |
"tail": "It is possible to cause an assertion violation. Note that Solidity assert() statements should only be used to check invariants. Review the transaction trace generated for this issue and either make sure your program logic is correct, or use require() instead of assert() if your goal is to constrain user inputs or enforce preconditions. Remember to validate inputs from both callers (for instance, via passed arguments) and callees (for instance, via return values)." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "1:1:15", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 2074582521168, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x90042baf00000000000000000000000000000000000000000000000000000000000000710000000000f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000000000000644fe007507c9000000000000000000000000000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0xb", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x34146", | |
"blockTime": "0x14dc19", | |
"decodedInput": "createContract(0x00000000000000000000000000000000000000000000000000000000000000710000000000f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000000000000644fe007507c9000000000000000000000000000000000000)", | |
"name": "createContract(bytes)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "An assertion violation was triggered.", | |
"tail": "It is possible to cause an assertion violation. Note that Solidity assert() statements should only be used to check invariants. Review the transaction trace generated for this issue and either make sure your program logic is correct, or use require() instead of assert() if your goal is to constrain user inputs or enforce preconditions. Remember to validate inputs from both callers (for instance, via passed arguments) and callees (for instance, via return values)." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "0:1:16", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 2135988388111, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x90042baf000000000000000000000000000000000000000000000000000000000000006f6e00000000fe0000000000000000000000000000000000000000000000000000000005000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000cefe00000000000026000000000000000000000000000000000000000000000000000000000000000000000000000000002100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0xac75", | |
"blockTime": "0xc9647", | |
"decodedInput": "createContract(b'\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xfe\\x00\\x00\\x00\\x00\\x00\\x00&\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00!\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00')", | |
"name": "createContract(bytes)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "An assertion violation was triggered.", | |
"tail": "It is possible to cause an assertion violation. Note that Solidity assert() statements should only be used to check invariants. Review the transaction trace generated for this issue and either make sure your program logic is correct, or use require() instead of assert() if your goal is to constrain user inputs or enforce preconditions. Remember to validate inputs from both callers (for instance, via passed arguments) and callees (for instance, via return values)." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "0:1:17", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 2199683228670, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x889245c60000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0xa9eeb26f82258", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x51e60", | |
"blockTime": "0x14dd10" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x4", | |
"input": "0x90042baf000000000000000000000000000000000000000000000000000000000000002d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010fe000000000000000000c400000000000000000000000000000000000000000000000000090000000000000000000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x51f67", | |
"blockTime": "0x23c035", | |
"decodedInput": "createContract(b'\\xfe\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xc4\\x00\\x00\\x00\\x00\\x00')", | |
"name": "createContract(bytes)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "An assertion violation was triggered.", | |
"tail": "It is possible to cause an assertion violation. Note that Solidity assert() statements should only be used to check invariants. Review the transaction trace generated for this issue and either make sure your program logic is correct, or use require() instead of assert() if your goal is to constrain user inputs or enforce preconditions. Remember to validate inputs from both callers (for instance, via passed arguments) and callees (for instance, via return values)." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "1:1:18", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 2226691597928, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x90042baf00000000000000000000000000000000000000000000000000000000000000710000000000f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000000000000644fe0075071000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0xb", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x34146", | |
"blockTime": "0x14dc19", | |
"decodedInput": "createContract(0x00000000000000000000000000000000000000000000000000000000000000710000000000f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000000000000644fe0075071000)", | |
"name": "createContract(bytes)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "An assertion violation was triggered.", | |
"tail": "It is possible to cause an assertion violation. Note that Solidity assert() statements should only be used to check invariants. Review the transaction trace generated for this issue and either make sure your program logic is correct, or use require() instead of assert() if your goal is to constrain user inputs or enforce preconditions. Remember to validate inputs from both callers (for instance, via passed arguments) and callees (for instance, via return values)." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "0:1:19", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 2282007343103, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x5d464161000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0xf4240", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x1f", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x3d523", | |
"blockTime": "0xfef13" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x90042baf000000000000000000000000000000000000000000000000000000000000007100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000000000006fe33f63ca30000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0xb", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x1c", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x8234c", | |
"blockTime": "0x1908d7", | |
"decodedInput": "createContract(0x000000000000000000000000000000000000000000000000000000000000007100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000000000006fe33f63ca30000)", | |
"name": "createContract(bytes)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "An assertion violation was triggered.", | |
"tail": "It is possible to cause an assertion violation. Note that Solidity assert() statements should only be used to check invariants. Review the transaction trace generated for this issue and either make sure your program logic is correct, or use require() instead of assert() if your goal is to constrain user inputs or enforce preconditions. Remember to validate inputs from both callers (for instance, via passed arguments) and callees (for instance, via return values)." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "0:1:20", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 2412989079043, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116149150610a819050576000805160206128a9833981519152604051610a78906122f9565b60405180910390a15b610a89611328565b6006546001600160a01b0390811691161480610aa457503330145b610acc576000805160206128a9833981519152604051610ac390612346565b60405180910390a15b6000610ad6611328565b6001600160a01b03161415610b09576000805160206128a9833981519152604051610b0090612651565b60405180910390a15b600254600090610b2390640100000000900460e01b6112c6565b6001600160a01b03161480610b3757503330145b610b5f576000805160206128a9833981519152604051610b56906120d6565b60405180910390a15b600254610b6e9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ba057503330145b610bc8576000805160206128a9833981519152604051610bbf90612445565b60405180910390a15b505050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055610c10611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610c38610355565b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610c92576000805160206128a9833981519152604051610c89906122f9565b60405180910390a15b610c9a611328565b6006546001600160a01b0390811691161480610cb557503330145b610cdd576000805160206128a9833981519152604051610cd490612346565b60405180910390a15b6000610ce7611328565b6001600160a01b03161415610d1a576000805160206128a9833981519152604051610d1190612651565b60405180910390a15b600254600090610d3490640100000000900460e01b6112c6565b6001600160a01b03161480610d4857503330145b610d70576000805160206128a9833981519152604051610d67906120d6565b60405180910390a15b600254610d7f9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610db157503330145b610dd9576000805160206128a9833981519152604051610dd090612445565b60405180910390a15b565b60006104047f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e836114b6565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556000610e4c611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610e75826114ed565b90506005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116911614610ed1576000805160206128a9833981519152604051610ec8906122f9565b60405180910390a15b610ed9611328565b6006546001600160a01b0390811691161480610ef457503330145b610f1c576000805160206128a9833981519152604051610f1390612346565b60405180910390a15b6000610f26611328565b6001600160a01b03161415610f59576000805160206128a9833981519152604051610f5090612651565b60405180910390a15b600254600090610f7390640100000000900460e01b6112c6565b6001600160a01b03161480610f8757503330145b610faf576000805160206128a9833981519152604051610fa6906120d6565b60405180910390a15b600254610fbe9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b03161480610ff057503330145b610407576000805160206128a983398151915260405161100f90612445565b60405180910390a1919050565b60006110286000610ddb565b905090565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316179055611070611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561109a8282611547565b3330146110c5576000805160206128a98339815191526040516110bc906126c2565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161461111f576000805160206128a9833981519152604051611116906122f9565b60405180910390a15b611127611328565b6006546001600160a01b039081169116148061114257503330145b61116a576000805160206128a983398151915260405161116190612346565b60405180910390a15b6000611174611328565b6001600160a01b031614156111a7576000805160206128a983398151915260405161119e90612651565b60405180910390a15b6002546000906111c190640100000000900460e01b6112c6565b6001600160a01b031614806111d557503330145b6111fd576000805160206128a98339815191526040516111f4906120d6565b60405180910390a15b60025461120c9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061123e57503330145b611266576000805160206128a983398151915260405161125d90612445565b60405180910390a15b5050565b63bc197c8160e01b98975050505050505050565b63f23a6e6160e01b9695505050505050565b600083836040516020016112a592919061209a565b60405160208183030381529060405280519060200120905081815550505050565b60006104047fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166114b6565b60006001600160e01b031982166390042baf60e01b141561131f57506001610407565b610404826115a1565b305490565b3330146113555760405162461bcd60e51b815260040161134c9061275e565b60405180910390fd5b6103f68161161e565b60015b92915050565b600080469050803084805190602001206040516020016113899392919061203d565b60405160208183030381529060405280519060200120915050919050565b3330146113c65760405162461bcd60e51b815260040161134c9061275e565b60006113d1826112c6565b6001600160a01b031614156113f85760405162461bcd60e51b815260040161134c9061223e565b6103f6816000611622565b3330146114225760405162461bcd60e51b815260040161134c9061275e565b6000611438826040516020016109bc919061272f565b90506112668183611660565b606081901c916bffffffffffffffffffffffff90911690565b611466826117b5565b600061147e83856040516020016109bc929190612812565b905061148a818361135e565b6114a65760405162461bcd60e51b815260040161134c906121b5565b6114b08185611660565b50505050565b60008083836040516020016114cc92919061209a565b60408051601f19818403018152919052805160209091012054949350505050565b600033301461150e5760405162461bcd60e51b815260040161134c9061275e565b81516020830134f090507fa506ad4e7f05eceba62a023c3219e5bd98a615f4fa87e2afb08a2da5cf62bf0c8160405161100f9190612072565b3330146115665760405162461bcd60e51b815260040161134c9061275e565b6000611571836112c6565b6001600160a01b0316146115975760405162461bcd60e51b815260040161134c90612605565b6112668282611622565b60006001600160e01b03198216630ec6aba560e41b14806115d257506001600160e01b03198216630271189760e51b145b806115ed57506001600160e01b03198216630a85bd0160e11b145b8061160857506001600160e01b0319821663607705c560e11b145b1561161557506001610407565b6104048261183f565b3055565b6112667fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a1206001600160e01b031984166001600160a01b038416611290565b60005b8151811015610bc85761167461194e565b82828151811061168057fe5b60200260200101519050600060608260000151156117095782606001516001600160a01b031683604001518460a001516040516116bd9190612021565b6000604051808303818686f4925050503d80600081146116f9576040519150601f19603f3d011682016040523d82523d6000602084013e6116fe565b606091505b50909250905061177e565b82606001516001600160a01b031683608001518460400151908560a001516040516117349190612021565b600060405180830381858888f193505050503d8060008114611772576040519150601f19603f3d011682016040523d82523d6000602084013e611777565b606091505b5090925090505b811561179f57856040516117929190612091565b60405180910390a06117aa565b6117aa83878361186a565b505050600101611663565b6000806117c183611444565b9150915060006117d083610ddb565b90508082146117f15760405162461bcd60e51b815260040161134c90612207565b600182016117ff84826118ad565b7f1f180c27086c7a39ea2a7b25239d1ab92348f07ca7bb59d1438fcf527568f881848260405161183092919061209a565b60405180910390a15050505050565b60006001600160e01b031982166296c8af60e21b141561186157506001610407565b610404826118d8565b82602001511561187c57805160208201fd5b7f3dbd1590ea96dd3253a91f24e64e3a502e1225d602a5731357bc12643070ccd78282604051610bbf9291906120a8565b6112667f8d0bf1fd623d628c741362c1289948e57b3e2905218c676d3e69abee36d6ae2e8383611290565b60006001600160e01b0319821663389901c760e01b14156118fb57506001610407565b6104048260006001600160e01b03198216158061192857506001600160e01b031982166336e7817560e01b145b1561193557506001610407565b6301ffc9a760e01b6001600160e01b0319831614610404565b6040518060c001604052806000151581526020016000151581526020016000815260200160006001600160a01b0316815260200160008152602001606081525090565b80356001600160a01b038116811461136157600080fd5b600082601f8301126119b8578081fd5b81356001600160401b03808211156119ce578283fd5b60206119dd818285020161282b565b838152935080840185820160005b85811015611a98578135880160c080601f19838d03011215611a0c57600080fd5b611a158161282b565b611a218c888501611aec565b81526040611a318d828601611aec565b888301526060808501358284015260809150611a4f8e838701611991565b818401525060a0808501358284015283850135915089821115611a7157600080fd5b611a7f8e8a84880101611b3b565b90830152508552505091830191908301906001016119eb565b50505050505092915050565b60008083601f840112611ab5578081fd5b5081356001600160401b03811115611acb578182fd5b6020830191508360208083028501011115611ae557600080fd5b9250929050565b8035801515811461136157600080fd5b60008083601f840112611b0d578182fd5b5081356001600160401b03811115611b23578182fd5b602083019150836020828501011115611ae557600080fd5b600082601f830112611b4b578081fd5b81356001600160401b03811115611b60578182fd5b611b73601f8201601f191660200161282b565b9150808252836020828501011115611b8a57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611bb4578081fd5b6106a88383611991565b60008060008060008060008060a0898b031215611bd9578384fd5b611be38a8a611991565b9750611bf28a60208b01611991565b965060408901356001600160401b0380821115611c0d578586fd5b611c198c838d01611aa4565b909850965060608b0135915080821115611c31578586fd5b611c3d8c838d01611aa4565b909650945060808b0135915080821115611c55578384fd5b50611c628b828c01611afc565b999c989b5096995094979396929594505050565b600080600080600060808688031215611c8d578081fd5b611c978787611991565b9450611ca68760208801611991565b93506040860135925060608601356001600160401b03811115611cc7578182fd5b611cd388828901611afc565b969995985093965092949392505050565b60008060008060008060a08789031215611cfc578182fd5b8635611d078161287d565b95506020870135611d178161287d565b9450604087013593506060870135925060808701356001600160401b03811115611d3f578283fd5b611d4b89828a01611afc565b979a9699509497509295939492505050565b600060208284031215611d6e578081fd5b81356001600160401b03811115611d83578182fd5b610749848285016119a8565b600080600060608486031215611da3578283fd5b83356001600160401b0380821115611db9578485fd5b611dc5878388016119a8565b9450602086013593506040860135915080821115611de1578283fd5b50611dee86828701611b3b565b9150509250925092565b600080600060408486031215611e0c578283fd5b8335925060208401356001600160401b03811115611e28578283fd5b611e3486828701611afc565b9497909650939450505050565b600060208284031215611e52578081fd5b81356106a881612892565b60008060408385031215611e6f578182fd5b8235611e7a81612892565b9150611e898460208501611991565b90509250929050565b60008060008060408587031215611ea7578182fd5b84356001600160401b0380821115611ebd578384fd5b611ec988838901611afc565b90965094506020870135915080821115611ee1578384fd5b50611eee87828801611afc565b95989497509550505050565b600060208284031215611f0b578081fd5b81356001600160401b03811115611f20578182fd5b61074984828501611b3b565b600060208284031215611f3d578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b85811015611fd8578284038952815180511515855285810151151586860152604080820151908601526060808201516001600160a01b0316908601526080808201519086015260a08082015160c08288018190529190611fc283890182611fe5565b9c89019c97505050928601925050600101611f60565b5091979650505050505050565b60008151808452611ffd816020860160208601612851565b601f01601f19169290920160200192915050565b6000828483379101908152919050565b60008251612033818460208701612851565b9190910192915050565b61190160f01b8152600281019390935260609190911b6bffffffffffffffffffffffff19166022830152603682015260560190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b918252602082015260400190565b6000838252604060208301526107496040830184611fe5565b6001600160e01b031991909116815260200190565b60208082526065908201527f5b50345d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f736574206120686f6f6b20756e6c657373207468652073656e6465722069732060608201527f7468652061646472657373206973207468697320636f6e74726163742061636360808201526437bab73a1760d91b60a082015260c00190565b6020808252602e908201527f5b50385d2065786563757465206d75737420726576657274206f6e20696e766160408201526d3634b21039b4b3b730ba3ab9329760911b606082015260800190565b60208082526032908201527f4d61696e4d6f64756c65235f7369676e617475726556616c69646174696f6e3a60408201527120494e56414c49445f5349474e415455524560701b606082015260800190565b6020808252601f908201527f4d61696e4d6f64756c65235f617574683a20494e56414c49445f4e4f4e434500604082015260600190565b6020808252602b908201527f4d6f64756c65486f6f6b732372656d6f7665486f6f6b3a20484f4f4b5f4e4f5460408201526a17d49151d254d51154915160aa1b606082015260800190565b6020808252604a908201527f5b5031325d2072656d6f7665486f6f6b206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b6020808252602d908201527f5b50315d20466163746f7279207374617465207661726961626c65206d75737460408201526c1031329031b7b739ba30b73a1760991b606082015260800190565b6020808252605c908201527f5b50325d20496d706c656d656e746174696f6e206d75737420626520636f6e7360408201527f74616e7420756e6c6573732073656e646572206973207468652061646472657360608201527f73206f66207468697320636f6e747261637420616363636f756e742e00000000608082015260a00190565b60208082526056908201527f5b50365d2065786563757465206d757374207265766572742069662070726f7660408201527f69646564206e6f6e6365206973206e6f7420657175616c20746f206375727265606082015275373a103737b731b29034b7103a34329039ba30ba329760511b608082015260a00190565b60208082526068908201527f5b50355d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f72656d6f7665206120686f6f6b20756e6c657373207468652073656e6465722060608201527f6973207468652061646472657373206973207468697320636f6e74726163742060808201526730b1b1b7bab73a1760c11b60a082015260c00190565b6020808252604a908201527f5b50395d2073656c6645786563757465206d7573742072657665727420666f7260408201527f20616c6c2073656e6465727320657863657074207468697320636f6e747261636060820152693a1030b1b1b7bab73a1760b11b608082015260a00190565b60208082526054908201527f5b5031305d20757064617465496d706c656d656e746174696f6e206d7573742060408201527f72657665727420666f7220616c6c2073656e646572732065786365707420746860608201527334b99031b7b73a3930b1ba1030b1b1b7bab73a1760611b608082015260a00190565b60208082526022908201527f5b434f5645524147455d20456e64206f6620657865637574652066756e63746960408201526137b760f11b606082015260800190565b6020808252602c908201527f4d6f64756c65486f6f6b7323616464486f6f6b3a20484f4f4b5f414c5245414460408201526b1657d49151d254d51154915160a21b606082015260800190565b6020808252604b908201527f5b50335d204974206d757374206e6f7420626520706f737369626c6520746f2060408201527f7365742074686520696d706c656d656e746174696f6e20746f20746865207a6560608201526a39379030b2323932b9b99760a91b608082015260a00190565b60208082526047908201527f5b5031315d20616464486f6f6b206d7573742072657665727420666f7220616c60408201527f6c2073656e6465727320657863657074207468697320636f6e7472616374206160608201526631b1b7bab73a1760c91b608082015260a00190565b600060408252600560408301526439b2b6331d60d91b6060830152608060208301526106a86080830184611f44565b60208082526027908201527f4d6f64756c6553656c6641757468236f6e6c7953656c663a204e4f545f4155546040820152661213d49256915160ca1b606082015260800190565b60208082526047908201527f5b50375d204e6f6e636520696e20737065636966696564207370616365206d7560408201527f737420696e637265617365206166746572207375636365737366756c2065786560608201526631baba34b7b71760c91b608082015260a00190565b6000838252604060208301526107496040830184611f44565b6040518181016001600160401b038111828210171561284957600080fd5b604052919050565b60005b8381101561286c578181015183820152602001612854565b838111156114b05750506000910152565b6001600160a01b03811681146103f657600080fd5b6001600160e01b0319811681146103f657600080fdfeb42604cb105a16c8f6db8a41e6b00c0c1b4826465e8bc504b3eb3e88b3e6a4a0a2646970667358221220834ff70151b5250072490fd780c83c3e8e7f59ddecaf1ba709e193af39fb094864736f6c63430006080033", | |
"origin": "0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x2ffffff", | |
"blockNumber": "0x0", | |
"blockTime": "0x0" | |
}, | |
{ | |
"address": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"gasLimit": "0x9f000", | |
"gasPrice": "0x0", | |
"input": "0x90042baf000000000000000000000000000000000000000000000000000000000000002d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003fe000000000000000000000000000000000000000000000000", | |
"origin": "0x0901d12ebe1b195e5aa8748e62bd7734ae19b51f", | |
"value": "0x0", | |
"blockCoinbase": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0", | |
"blockDifficulty": "0x0", | |
"blockGasLimit": "0x9f0000", | |
"blockNumber": "0x51e60", | |
"blockTime": "0x14dd10", | |
"decodedInput": "createContract(0x000000000000000000000000000000000000000000000000000000000000002d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003fe000000000000000000000000000000000000000000000000)", | |
"name": "createContract(bytes)" | |
} | |
] | |
} | |
], | |
"toolName": "harvey" | |
}, | |
"decodedLocations": null | |
}, | |
{ | |
"swcID": "SWC-110", | |
"swcTitle": "Assert Violation", | |
"description": { | |
"head": "An assertion violation was triggered.", | |
"tail": "It is possible to cause an assertion violation. Note that Solidity assert() statements should only be used to check invariants. Review the transaction trace generated for this issue and either make sure your program logic is correct, or use require() instead of assert() if your goal is to constrain user inputs or enforce preconditions. Remember to validate inputs from both callers (for instance, via passed arguments) and callees (for instance, via return values)." | |
}, | |
"severity": "Low", | |
"locations": [ | |
{ | |
"sourceMap": "0:1:21", | |
"sourceType": "raw-bytecode", | |
"sourceFormat": "evm-byzantium-bytecode", | |
"sourceList": [ | |
"0x094f51ef7257c0b5cda4910d5d33ffbd7f83e67633d5346e356c84c65cda7f64", | |
"0xbcc90f2d6dada5b18e155c17a1c0a55920aae94f39857d39d0d8ed07ae8f228b", | |
"0xd1ffaa34ca2d927c927304593ff4af0e5ca8fb859cfbfabf5a21bfd855138bc3", | |
"0xe467f315484b5c179aa51ca3712df7d040e7f3085b6bac241d10bf071d9c7074", | |
"0x9793dce7591183eb2cce226363aa559304d116b424117e1d4a4c160695fe8009", | |
"0x7aa2c1effd2f620f90502134abc6994ab71ee0b808854de8e64ce1f6ec1ed6e4", | |
"0xc544e79fe9ba213a3a2f56e89f0b69721289c61776d3c9134a2e50c4622ac096", | |
"0x531b1b133960bbf74f28d0388d3f947e4f48cd0cbf4f6ded6869246c7b40e26d", | |
"0xa94dc798fc6f22361f62de4ee08dba6b63f4516ba31a3e315d4312483be686ab", | |
"0xc0c7b306d448e3c0bed9cd5534d6c312e2f0b06b07b0a4e17f2a009128237f68", | |
"0xd05109f0ea197fed620f5bcb0405aa56da6b3467fcbe8421d22b13b1b99e3849", | |
"0x5006a0609623f183b099ef054ce6b4e7b165240a24ca537f34dcb4d0b205b25c", | |
"0x4dd593826116a9f8342e1f2b6fc3689fc66d80ee26a886e0c95cf3cb30be74a9", | |
"0x1650af90ea9d7d6595d7e451512f1c40241422e85ae663c629aa3b3862ebf28e", | |
"0x033a48f02d38174b70c0019a05bec0f6a21ba19c82d70ef15535b61fe58801a7", | |
"0x8cd6d2f2340b18c31aa8eb90f3c292127f6d1e59601b430076ca992dedbcc9ab", | |
"0x3cdb9e45aae2c72869d2e52ee0d986f99995a0b4de410d0768812d398584bf51", | |
"0x0a51f8162a4c83ca385d982e134889afe09b2e83e0df8b3137d64201ddb8bcdf", | |
"0xa795a6b3ada14bde73f12cc5d513a2951fb61e6e2a0ff34b8adb5219f4898254", | |
"0x9e8fe1b65c6db8e035baa016c4e738cf6429d501d7a84b9b5e1e6dac8edd167c", | |
"0x470a901eac70b4474edfb4b7fa5e49ed3868725edfc4ee8edfd704283849ba31", | |
"0x8483761b7bf1540f10427807ba51b57cb193ef2c5f11baa2bc0ec7b9a6dc1539", | |
"0x499e54a8689e33d74580b9e8da6d6b9469c268d0f83b5174979c720161ae624e", | |
"0x61449a55343bf473727bb8c57162fe0e4b88e16cd487881c5f2087c17dbb1ca4", | |
"0xb09a24fc528d81225bf23ea66013db76dbaaae819f4648fc6a88875cc9db943f", | |
"0xd8bd20eb3610f2c3e0e681b0358734f309eaf85b9ff0c1e680b50abd40c29c24", | |
"0xdbd218799fb728dde21c149eefcafd393b686acb7d67597060b516350a8b4f11", | |
"0xfebdda900d5424097cf9b53615871164ef0e5b67c25074bf2b3ae1f5cdb0e0cc", | |
"0x36dc730127a72fc7d460641e89b34cc853fd444d5107ed560ea67fadaf29e60e", | |
"0x85de5296de4917fd448492ef49f9bf054c700ca5ee4fb6dbe54b900fddafa840", | |
"0x4d7fc5e7e8ec3960dbc121137fd2e3819738faeed6b6ce268e95587196e6e5fa", | |
"0xfb11df2b0f7f16b2e4773c9b2a7c12b269210d0398dff6e5803747d6b449a865", | |
"0xf741392e426e2f219030c24ad1f703271d3ee0c418f1482445101deaf85c31ba", | |
"0xa4a4c4049df4924216d580ce8f60ff4f618e604c2a2e2a90ac351db2ddb726ef" | |
] | |
} | |
], | |
"extra": { | |
"discoveryTime": 2428140859615, | |
"testCases": [ | |
{ | |
"initialState": { | |
"accounts": { | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0": { | |
"nonce": 0, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000000000000000000000000000000000", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x00", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0xfd", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405260005600a165627a7a72305820466f8a1bdae15c60b8e998fe04836ef505803cfbd8edd29bd4679531357576530029", | |
"storage": {} | |
}, | |
"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6": { | |
"nonce": 1, | |
"balance": "0x00000000000000000000000000000000000000ffffffffffffffffffffffffff", | |
"code": "0x608060405273aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa63081146038578073ffffffffffffffffffffffffffffffffffffffff16ff5b5000fea165627a7a723058205e8b906b72ad42c69b05acf4542283b6080ae82562bc74baac467daac2fb0e0e0029", | |
"storage": {} | |
}, | |
"0xaffeaffeaffeaffeaffeaffeaffeaffeaffeaffe": { | |
"nonce": 0, | |
"balance": "0x0000000000000000000000000000000000ffffffffffffffffffffffffffffff", | |
"code": "", | |
"storage": {} | |
} | |
} | |
}, | |
"steps": [ | |
{ | |
"address": "", | |
"gasLimit": "0x2ffffff", | |
"gasPrice": "0x3b9aca000", | |
"input": "0x60c0604052600080546001600160a01b03191673affeaffeaffeaffeaffeaffeaffeaffeaffeaffe1781556001553480156200003a57600080fd5b5060006080527faffeaffeaffeaffeaffeaffeaffeaffeaffeaffe00000000000000000000000060a0526040516200009090600190819073aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa090602001620001c0565b60408051808303601f19018152919052805160209091012060035560028054600163ffffffff199091161763ffffffff60201b19166402000000001790819055620000f39060e01b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa162000121565b6200011b73aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa26001600160e01b036200017616565b620001e2565b620001727fbe27a319efc8734e89e26ba4bc95f5c788584163b959f03fa04e2d7ab4b9a12060001b836001600160e01b031916836001600160a01b031660001b6200017a60201b620012901760201c565b5050565b3055565b6000838360405160200162000191929190620001b2565b60405160208183030381529060405280519060200120905081815550505050565b918252602082015260400190565b92835260ff9190911660208301526001600160a01b0316604082015260600190565b60805160a05160601c6128fe620002456000398061041c52806104a8528061077752806107a9528061083752806108c55280610a285280610bdd5280610c3d5280610e175280610e7c528061103d52806110ca52508061075352506128fe6000f3fe60806040526004361061010d5760003560e01c806361c2926c1161009557806390042baf1161006457806390042baf146102cd578063affed0e0146102e0578063b93ea7ad146102f5578063bc197c8114610315578063f23a6e611461033557610114565b806361c2926c146102655780637a9a162814610285578063889231c6146102a55780638c3f5563146102ad57610114565b80631a9b2337116100dc5780631a9b2337146101c157806320c13b0b146101ee578063257671f51461020e5780632dd31000146102305780634fcf3eca1461024557610114565b806301ffc9a71461011e578063025b22bc14610154578063150b7a02146101745780631626ba7e146101a157610114565b3661011457005b61011c610355565b005b34801561012a57600080fd5b5061013e610139366004611e41565b6103f9565b60405161014b9190612086565b60405180910390f35b34801561016057600080fd5b5061011c61016f366004611ba3565b61040c565b34801561018057600080fd5b5061019461018f366004611c76565b610646565b60405161014b91906120c1565b3480156101ad57600080fd5b506101946101bc366004611df8565b610657565b3480156101cd57600080fd5b506101e16101dc366004611e41565b6106af565b60405161014b9190612072565b3480156101fa57600080fd5b50610194610209366004611e92565b6106ba565b34801561021a57600080fd5b50610223610751565b60405161014b9190612091565b34801561023c57600080fd5b506101e1610775565b34801561025157600080fd5b5061011c610260366004611e41565b610799565b34801561027157600080fd5b5061011c610280366004611d5d565b610827565b34801561029157600080fd5b5061011c6102a0366004611d8f565b6108b5565b61011c610bcd565b3480156102b957600080fd5b506102236102c8366004611f2c565b610ddb565b6101e16102db366004611efa565b610e07565b3480156102ec57600080fd5b5061022361101c565b34801561030157600080fd5b5061011c610310366004611e5d565b61102d565b34801561032157600080fd5b50610194610330366004611bbe565b61126a565b34801561034157600080fd5b50610194610350366004611ce4565b61127e565b600061036c6000356001600160e01b0319166112c6565b90506001600160a01b038116156103f65760006060826001600160a01b031660003660405161039c929190612011565b600060405180830381855af49150503d80600081146103d7576040519150601f19603f3d011682016040523d82523d6000602084013e6103dc565b606091505b5091509150816103ee57805160208201fd5b805160208201f35b50565b6000610404826112fc565b90505b919050565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561044f611328565b600680546001600160a01b0319166001600160a01b03929092169190911790556104788161132d565b3330146104a3576000805160206128a983398151915260405161049a90612549565b60405180910390a15b6005547f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169116146104fd576000805160206128a98339815191526040516104f4906122f9565b60405180910390a15b610505611328565b6006546001600160a01b039081169116148061052057503330145b610548576000805160206128a983398151915260405161053f90612346565b60405180910390a15b6000610552611328565b6001600160a01b03161415610585576000805160206128a983398151915260405161057c90612651565b60405180910390a15b60025460009061059f90640100000000900460e01b6112c6565b6001600160a01b031614806105b357503330145b6105db576000805160206128a98339815191526040516105d2906120d6565b60405180910390a15b6002546105ea9060e01b6112c6565b6001600160a01b031673aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa16001600160a01b0316148061061c57503330145b6103f6576000805160206128a983398151915260405161063b90612445565b60405180910390a150565b630a85bd0160e11b95945050505050565b60006106998484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b156106a85750630b135d3f60e11b5b9392505050565b6000610404826112c6565b600061073a6106fe86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061136792505050565b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061135e92505050565b1561074957506320c13b0b60e01b5b949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556107dc611328565b600680546001600160a01b0319166001600160a01b0392909216919091179055610805816113a7565b3330146104a3576000805160206128a983398151915260405161049a90612289565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031617905561086a611328565b600680546001600160a01b0319166001600160a01b039290921691909117905561089381611403565b3330146104a3576000805160206128a983398151915260405161049a906124d9565b600580546001600160a01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161790556108f8611328565b600680546001600160a01b0319166001600160a01b039290921691909117905560008061092484611444565b91509150600061093383610ddb565b905061094086868661145d565b600061094b84610ddb565b9050818314610978576000805160206128a983398151915260405161096f906123c9565b60405180910390a15b8181116109a3576000805160206128a983398151915260405161099a906127a5565b60405180910390a15b6109d66109d087896040516020016109bc929190612812565b604051602081830303815290604052611367565b8661135e565b6109fe576000805160206128a98339815191526040516109f590612167565b60405180910390a15b6000805160206128a9833981519152604051610a19906125c3565b60405180910390a150506005547f0000000000000000000 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment