13091b3c-277e-49b6-b3a2-b9a7c1dd7535
Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?
| ID | Type | Status | Attempts | Heartbeat |
|---|---|---|---|---|
| 30187 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 93721 | artifact.fetch | failed | 1 / 3 | 2 weeks ago |
| 93722 | tool.cast_disasm | complete | 1 / 3 | 2 weeks ago |
| 93723 | analysis.bundle | complete | 1 / 3 | 2 weeks ago |
| 93724 | capability.graph | complete | 1 / 3 | 2 weeks ago |
| 93725 | detector.run | complete | 1 / 3 | 2 weeks ago |
| 93726 | validation.fork | complete | 1 / 3 | 2 weeks ago |
No slither job recorded yet.
[codex:1278555] OpenAI Codex v0.77.0 (research preview)
[codex:1278555] --------
[codex:1278555] workdir: /tmp/codex-multi-tm69_vsg
[codex:1278555] model: gpt-5.2-codex
[codex:1278555] provider: openai
[codex:1278555] approval: never
[codex:1278555] sandbox: read-only
[codex:1278555] reasoning effort: xhigh
[codex:1278555] reasoning summaries: auto
[codex:1278555] session id: 019b616d-c3c4-7291-974d-e0c1c1b2664c
[codex:1278555] --------
[codex:1278555] user
[codex:1278555] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:1278555] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:1278555] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:1278555]
[codex:1278555] Scope rules:
[codex:1278555] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:1278555] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:1278555]
[codex:1278555] Output MUST be valid JSON matching the provided schema.
[codex:1278555] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:1278555] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:1278555]
[codex:1278555] Output constraints (IMPORTANT):
[codex:1278555] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:1278555] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:1278555] mcp startup: no servers
[codex:1278555]
[codex:1278555] thinking
[codex:1278555] **Preparing to audit instructions and files**
[codex:1278555] exec
[codex:1278555] /bin/bash -lc ls in /tmp/codex-multi-tm69_vsg succeeded in 5ms:
[codex:1278555] AUDIT_BUNDLE.txt
[codex:1278555] codex-output-schema.json
[codex:1278555] contracts
[codex:1278555] exec
[codex:1278555] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-tm69_vsg succeeded in 5ms:
[codex:1278555] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:1278555]
[codex:1278555] ================================================================================
[codex:1278555] FILE: contracts/interfaces/L1/IResourceMetering.sol
[codex:1278555] ================================================================================
[codex:1278555] // SPDX-License-Identifier: MIT
[codex:1278555] pragma solidity ^0.8.0;
[codex:1278555]
[codex:1278555] interface IResourceMetering {
[codex:1278555] struct ResourceParams {
[codex:1278555] uint128 prevBaseFee;
[codex:1278555] uint64 prevBoughtGas;
[codex:1278555] uint64 prevBlockNum;
[codex:1278555] }
[codex:1278555]
[codex:1278555] struct ResourceConfig {
[codex:1278555] uint32 maxResourceLimit;
[codex:1278555] uint8 elasticityMultiplier;
[codex:1278555] uint8 baseFeeMaxChangeDenominator;
[codex:1278555] uint32 minimumBaseFee;
[codex:1278555]
[codex:1278555] thinking
[codex:1278555] **Preparing to fully read AUDIT_BUNDLE.txt**
[codex:1278555] exec
[codex:1278555] /bin/bash -lc "sed -n '1,200p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-tm69_vsg succeeded in 5ms:
[codex:1278555] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:1278555]
[codex:1278555] ================================================================================
[codex:1278555] FILE: contracts/interfaces/L1/IResourceMetering.sol
[codex:1278555] ================================================================================
[codex:1278555] // SPDX-License-Identifier: MIT
[codex:1278555] pragma solidity ^0.8.0;
[codex:1278555]
[codex:1278555] interface IResourceMetering {
[codex:1278555] struct ResourceParams {
[codex:1278555] uint128 prevBaseFee;
[codex:1278555] uint64 prevBoughtGas;
[codex:1278555] uint64 prevBlockNum;
[codex:1278555] }
[codex:1278555]
[codex:1278555] struct ResourceConfig {
[codex:1278555] uint32 maxResourceLimit;
[codex:1278555] uint8 elasticityMultiplier;
[codex:1278555] uint8 baseFeeMaxChangeDenominator;
[codex:1278555] uint32 minimumBaseFee;
[codex:1278555]
[codex:1278555] thinking
[codex:1278555] **Continuing audit file analysis**
[codex:1278555] exec
[codex:1278555] /bin/bash -lc "sed -n '200,400p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-tm69_vsg succeeded in 5ms:
[codex:1278555] function RELAY_GAS_CHECK_BUFFER() external view returns (uint64);
[codex:1278555] function RELAY_RESERVED_GAS() external view returns (uint64);
[codex:1278555] function TX_BASE_GAS() external view returns (uint64);
[codex:1278555] function FLOOR_CALLDATA_OVERHEAD() external view returns (uint64);
[codex:1278555] function ENCODING_OVERHEAD() external view returns (uint64);
[codex:1278555] function baseGas(bytes memory _message, uint32 _minGasLimit) external pure returns (uint64);
[codex:1278555] function failedMessages(bytes32) external view returns (bool);
[codex:1278555] function messageNonce() external view returns (uint256);
[codex:1278555] function otherMessenger() external view returns (ICrossDomainMessenger);
[codex:1278555] function paused() external view returns (bool);
[codex:1278555] function relayMessage(
[codex:1278555] uint256 _nonce,
[codex:1278555] address _sender,
[codex:1278555] address _target,
[codex:1278555] uint256 _value,
[codex:1278555] uint256 _minGasLimit,
[codex:1278555] bytes memory _message
[codex:1278555] )
[codex:1278555] external
[codex:1278555] payable;
[codex:1278555]
[codex:1278555] thinking
[codex:1278555] **Preparing to locate first-party contracts**
[codex:1278555] exec
[codex:1278555] /bin/bash -lc 'rg -n "''^FILE:" AUDIT_BUNDLE.txt' in /tmp/codex-multi-tm69_vsg succeeded in 6ms:
[codex:1278555] 4:FILE: contracts/interfaces/L1/IResourceMetering.sol
[codex:1278555] 35:FILE: contracts/interfaces/L1/ISuperchainConfig.sol
[codex:1278555] 63:FILE: contracts/interfaces/L1/ISystemConfig.sol
[codex:1278555] 160:FILE: contracts/interfaces/legacy/ILegacyMintableERC20.sol
[codex:1278555] 181:FILE: contracts/interfaces/universal/ICrossDomainMessenger.sol
[codex:1278555] 228:FILE: contracts/interfaces/universal/IOptimismMintableERC20.sol
[codex:1278555] 250:FILE: contracts/interfaces/universal/ISemver.sol
[codex:1278555] 267:FILE: contracts/lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol
[codex:1278555] 409:FILE: contracts/lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol
[codex:1278555] 495:FILE: contracts/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol
[codex:1278555] 559:FILE: contracts/lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol
[codex:1278555] 679:FILE: contracts/lib/openzeppelin-contracts/contracts/utils/Address.sol
[codex:1278555] 905:FILE: contracts/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol
[codex:1278555] 1032:FILE: contracts/lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol
[codex:1278555] 1061:FILE: contracts/src/L1/L1StandardBridge.sol
[codex:1278555] 1407:FILE: contracts/src/libraries/Constants.sol
[codex:1278555] 1465:FILE: contracts/src/libraries/EOA.sol
[codex:1278555] 1494:FILE: contracts/src/libraries/Predeploys.sol
[codex:1278555] 1679:FILE: contracts/src/libraries/SafeCall.sol
[codex:1278555] 1851:FILE: contracts/src/universal/StandardBridge.sol
[codex:1278555]
[codex:1278555] thinking
[codex:1278555] **Inspecting key contract files**
[codex:1278555] exec
[codex:1278555] /bin/bash -lc "sed -n '1030,1200p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-tm69_vsg succeeded in 6ms:
[codex:1278555]
[codex:1278555] ================================================================================
[codex:1278555] FILE: contracts/lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol
[codex:1278555] ================================================================================
[codex:1278555] // SPDX-License-Identifier: MIT
[codex:1278555] // OpenZeppelin Contracts v4.4.1 (utils/introspection/IERC165.sol)
[codex:1278555]
[codex:1278555] pragma solidity ^0.8.0;
[codex:1278555]
[codex:1278555] /**
[codex:1278555] * @dev Interface of the ERC165 standard, as defined in the
[codex:1278555] * https://eips.ethereum.org/EIPS/eip-165[EIP].
[codex:1278555] *
[codex:1278555] * Implementers can declare support of contract interfaces, which can then be
[codex:1278555] * queried by others ({ERC165Checker}).
[codex:1278555] *
[codex:1278555] * For an implementation, see {ERC165}.
[codex:1278555] */
[codex:1278555] interface IERC165 {
[codex:1278555] /**
[codex:1278555]
[codex:1278555] thinking
[codex:1278555] **Continuing exploration**
[codex:1278555] exec
[codex:1278555] /bin/bash -lc "sed -n '1200,1407p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-tm69_vsg succeeded in 5ms:
[codex:1278555] /// Note that if ETH is sent to a contract on L2 and the call fails, then that ETH will
[codex:1278555] /// be locked in the L2StandardBridge. ETH may be recoverable if the call can be
[codex:1278555] /// successfully replayed by increasing the amount of gas supplied to the call. If the
[codex:1278555] /// call will fail for any amount of gas, then the ETH will be locked permanently.
[codex:1278555] /// @param _to Address of the recipient on L2.
[codex:1278555] /// @param _minGasLimit Minimum gas limit for the deposit message on L2.
[codex:1278555] /// @param _extraData Optional data to forward to L2.
[codex:1278555] /// Data supplied here will not be used to execute any code on L2 and is
[codex:1278555] /// only emitted as extra data for the convenience of off-chain tooling.
[codex:1278555] function depositETHTo(address _to, uint32 _minGasLimit, bytes calldata _extraData) external payable {
[codex:1278555] _initiateETHDeposit(msg.sender, _to, _minGasLimit, _extraData);
[codex:1278555] }
[codex:1278555]
[codex:1278555] /// @custom:legacy
[codex:1278555] /// @notice Deposits some amount of ERC20 tokens into the sender's account on L2.
[codex:1278555] /// @param _l1Token Address of the L1 token being deposited.
[codex:1278555] /// @param _l2Token Address of the corresponding token on L2.
[codex:1278555] /// @param _amount Amount of the ERC20 to deposit.
[codex:1278555] /// @param _minGasLimit Minimum gas limit for the deposit message on L2.
[codex:1278555] /// @param _extraData Optional data to forward to L2.
[codex:1278555]
[codex:1278555] thinking
[codex:1278555] **Continuing to review libraries**
[codex:1278555] exec
[codex:1278555] /bin/bash -lc "sed -n '1407,1545p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-tm69_vsg succeeded in 6ms:
[codex:1278555] FILE: contracts/src/libraries/Constants.sol
[codex:1278555] ================================================================================
[codex:1278555] // SPDX-License-Identifier: MIT
[codex:1278555] pragma solidity ^0.8.0;
[codex:1278555]
[codex:1278555] // Interfaces
[codex:1278555] import { IResourceMetering } from "interfaces/L1/IResourceMetering.sol";
[codex:1278555]
[codex:1278555] /// @title Constants
[codex:1278555] /// @notice Constants is a library for storing constants. Simple! Don't put everything in here, just
[codex:1278555] /// the stuff used in multiple contracts. Constants that only apply to a single contract
[codex:1278555] /// should be defined in that contract instead.
[codex:1278555] library Constants {
[codex:1278555] /// @notice Special address to be used as the tx origin for gas estimation calls in the
[codex:1278555] /// OptimismPortal and CrossDomainMessenger calls. You only need to use this address if
[codex:1278555] /// the minimum gas limit specified by the user is not actually enough to execute the
[codex:1278555] /// given message and you're attempting to estimate the actual necessary gas limit. We
[codex:1278555] /// use address(1) because it's the ecrecover precompile and therefore guaranteed to
[codex:1278555] /// never have any code on any EVM chain.
[codex:1278555] address internal constant ESTIMATION_ADDRESS = address(1);
[codex:1278555]
[codex:1278555] thinking
[codex:1278555] **Continuing analysis**
[codex:1278555] exec
[codex:1278555] /bin/bash -lc "sed -n '1545,1710p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-tm69_vsg succeeded in 6ms:
[codex:1278555] /// @notice Address of the L2ERC721Bridge predeploy.
[codex:1278555] address internal constant L2_ERC721_BRIDGE = 0x4200000000000000000000000000000000000014;
[codex:1278555]
[codex:1278555] /// @notice Address of the L1Block predeploy.
[codex:1278555] address internal constant L1_BLOCK_ATTRIBUTES = 0x4200000000000000000000000000000000000015;
[codex:1278555]
[codex:1278555] /// @notice Address of the L2ToL1MessagePasser predeploy.
[codex:1278555] address internal constant L2_TO_L1_MESSAGE_PASSER = 0x4200000000000000000000000000000000000016;
[codex:1278555]
[codex:1278555] /// @notice Address of the OptimismMintableERC721Factory predeploy.
[codex:1278555] address internal constant OPTIMISM_MINTABLE_ERC721_FACTORY = 0x4200000000000000000000000000000000000017;
[codex:1278555]
[codex:1278555] /// @notice Address of the ProxyAdmin predeploy.
[codex:1278555] address internal constant PROXY_ADMIN = 0x4200000000000000000000000000000000000018;
[codex:1278555]
[codex:1278555] /// @notice Address of the BaseFeeVault predeploy.
[codex:1278555] address internal constant BASE_FEE_VAULT = 0x4200000000000000000000000000000000000019;
[codex:1278555]
[codex:1278555] /// @notice Address of the L1FeeVault predeploy.
[codex:1278555] address internal constant L1_FEE_VAULT = 0x420000000000000000000000000000000000001A;
[codex:1278555]
[codex:1278555] thinking
[codex:1278555] **Continuing exploration of SafeCall and StandardBridge**
[codex:1278555] exec
[codex:1278555] /bin/bash -lc "sed -n '1710,1890p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-tm69_vsg succeeded in 5ms:
[codex:1278555] function send(address _target, uint256 _value) internal returns (bool success_) {
[codex:1278555] success_ = send(_target, gasleft(), _value);
[codex:1278555] }
[codex:1278555]
[codex:1278555] /// @notice Perform a low level call without copying any returndata
[codex:1278555] /// @param _target Address to call
[codex:1278555] /// @param _gas Amount of gas to pass to the call
[codex:1278555] /// @param _value Amount of value to pass to the call
[codex:1278555] /// @param _calldata Calldata to pass to the call
[codex:1278555] function call(
[codex:1278555] address _target,
[codex:1278555] uint256 _gas,
[codex:1278555] uint256 _value,
[codex:1278555] bytes memory _calldata
[codex:1278555] )
[codex:1278555] internal
[codex:1278555] returns (bool success_)
[codex:1278555] {
[codex:1278555] assembly {
[codex:1278555] success_ :=
[codex:1278555]
[codex:1278555] thinking
[codex:1278555] **Continuing exploration**
[codex:1278555] exec
[codex:1278555] /bin/bash -lc "sed -n '1890,2100p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-tm69_vsg succeeded in 6ms:
[codex:1278555] /// @notice Spacer for backwards compatibility.
[codex:1278555] address private spacer_1_0_20;
[codex:1278555]
[codex:1278555] /// @notice Mapping that stores deposits for a given pair of local and remote tokens.
[codex:1278555] mapping(address => mapping(address => uint256)) public deposits;
[codex:1278555]
[codex:1278555] /// @notice Messenger contract on this domain.
[codex:1278555] /// @custom:network-specific
[codex:1278555] ICrossDomainMessenger public messenger;
[codex:1278555]
[codex:1278555] /// @notice Corresponding bridge on the other domain.
[codex:1278555] /// @custom:network-specific
[codex:1278555] StandardBridge public otherBridge;
[codex:1278555]
[codex:1278555] /// @notice Reserve extra slots (to a total of 50) in the storage layout for future upgrades.
[codex:1278555] /// A gap size of 45 was chosen here, so that the first slot used in a child contract
[codex:1278555] /// would be a multiple of 50.
[codex:1278555] uint256[45] private __gap;
[codex:1278555]
[codex:1278555] /// @notice Emitted when an ETH bridge is initiated to the other chain.
[codex:1278555]
[codex:1278555] thinking
[codex:1278555] **Continuing review of finalized content**
[codex:1278555] exec
[codex:1278555] /bin/bash -lc "sed -n '2100,2354p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-tm69_vsg succeeded in 5ms:
[codex:1278555] /// to identify the transaction.
[codex:1278555] function finalizeBridgeETH(
[codex:1278555] address _from,
[codex:1278555] address _to,
[codex:1278555] uint256 _amount,
[codex:1278555] bytes calldata _extraData
[codex:1278555] )
[codex:1278555] public
[codex:1278555] payable
[codex:1278555] onlyOtherBridge
[codex:1278555] {
[codex:1278555] require(paused() == false, "StandardBridge: paused");
[codex:1278555] require(isCustomGasToken() == false, "StandardBridge: cannot bridge ETH with custom gas token");
[codex:1278555] require(msg.value == _amount, "StandardBridge: amount sent does not match amount required");
[codex:1278555] require(_to != address(this), "StandardBridge: cannot send to self");
[codex:1278555] require(_to != address(messenger), "StandardBridge: cannot send to messenger");
[codex:1278555]
[codex:1278555] // Emit the correct events. By default this will be _amount, but child
[codex:1278555] // contracts may override this function in order to emit legacy events as well.
[codex:1278555] _emitETHBridgeFinalized(_from, _to, _amount, _extraData);
[codex:1278555]
[codex:1278555]
[codex:1278555]
[codex:1278555] thinking
[codex:1278555] **Analyzing StandardBridge for vulnerabilities**
[codex:1278555] thinking
[codex:1278555] **Evaluating finalizeBridgeETH and upgradeable initialization risks**
[codex:1278555]
[codex:1278555] I’m examining the finalizeBridgeETH call’s handling of ETH transfers and potential replay or revert issues, alongside upgradeable contract initialization risks where improper proxy setup might allow malicious initialization and control over bridge addresses. I’m also considering token transfer and deposit accounting edge cases related to mintable and non-mintable token logic, plus reentrancy and external call patterns to check for exploitable loopholes.
[codex:1278555] thinking
[codex:1278555] **Identifying uninitialized proxy exploitation risk**
[codex:1278555]
[codex:1278555] I’m exploring how an attacker controlling the messenger and otherBridge addresses via uninitialized proxy setup could exploit finalizeBridgeERC20 to drain escrowed tokens, highlighting the classic risk of improperly initialized upgradeable contracts allowing takeover and unauthorized withdrawals.
[codex:1278555] exec
[codex:1278555] /bin/bash -lc 'rg -n "delegatecall" AUDIT_BUNDLE.txt' in /tmp/codex-multi-tm69_vsg succeeded in 7ms:
[codex:1278555] 871: (bool success, bytes memory returndata) = target.delegatecall(data);
[codex:1278555]
[codex:1278555] thinking
[codex:1278555] **Reviewing bridge contract security and call patterns**
[codex:1278555] exec
[codex:1278555] /bin/bash -lc 'cat codex-output-schema.json' in /tmp/codex-multi-tm69_vsg succeeded in 7ms:
[codex:1278555] {"type": "object", "additionalProperties": false, "required": ["no_findings", "summary", "findings"], "properties": {"no_findings": {"type": "boolean"}, "summary": {"type": "string"}, "findings": {"type": "array", "items": {"type": "object", "additionalProperties": false, "required": ["severity", "category", "title", "evidence", "locations", "exploit_scenario", "recommendation"], "properties": {"severity": {"type": "string", "enum": ["info", "low", "medium", "high", "critical"]}, "category": {"type": "string", "enum": ["access_control", "reentrancy", "math", "oracle", "upgradeability", "auth", "other"]}, "title": {"type": "string"}, "exploit_scenario": {"type": "string"}, "recommendation": {"type": "string"}, "evidence": {"type": "string"}, "locations": {"type": "array", "items": {"type": "string"}}}}}}}
[codex:1278555]
[codex:1278555] thinking
[codex:1278555] **Preparing JSON report for vulnerabilities**
[codex:1278555] codex
[codex:1278555] {"no_findings":true,"summary":"No exploitable vulnerabilities found in reviewed first-party contracts.","findings":[]}
[codex:1278555] tokens used
[codex:1278555] 45,764
[codex:1278555] {"no_findings":true,"summary":"No exploitable vulnerabilities found in reviewed first-party contracts.","findings":[]}
{
"codex": {
"ran_at": "2025-12-27T20:12:55.532886+00:00",
"returncode": 0
},
"summary": "No exploitable vulnerabilities found in reviewed first-party contracts.",
"raw_final": {
"summary": "No exploitable vulnerabilities found in reviewed first-party contracts.",
"findings": [],
"no_findings": true
},
"no_findings": true,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: PUSH2 0x0184 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0x7f46ddb2 00000019: GT 0000001a: PUSH2 0x00d6 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0x9a2ac6d5 00000024: GT 00000025: PUSH2 0x007f 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xc0c53b8b 0000002f: GT 00000030: PUSH2 0x0059 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xc0c53b8b 0000003a: EQ 0000003b: PUSH2 0x052e 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xc89701a2 00000045: EQ 00000046: PUSH2 0x054e 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xe11013dd 00000050: EQ 00000051: PUSH2 0x057b 00000054: JUMPI 00000055: PUSH1 0x00 00000057: DUP1 00000058: REVERT 00000059: JUMPDEST 0000005a: DUP1 0000005b: PUSH4 0x9a2ac6d5 00000060: EQ 00000061: PUSH2 0x04e8 00000064: JUMPI 00000065: DUP1 00000066: PUSH4 0xa9f9e675 0000006b: EQ 0000006c: PUSH2 0x04fb 0000006f: JUMPI 00000070: DUP1 00000071: PUSH4 0xb1a1a882 00000076: EQ 00000077: PUSH2 0x051b 0000007a: JUMPI 0000007b: PUSH1 0x00 0000007d: DUP1 0000007e: REVERT 0000007f: JUMPDEST 00000080: DUP1 00000081: PUSH4 0x8f601f66 00000086: GT 00000087: PUSH2 0x00b0 0000008a: JUMPI 0000008b: DUP1 0000008c: PUSH4 0x8f601f66 00000091: EQ 00000092: PUSH2 0x0477 00000095: JUMPI 00000096: DUP1 00000097: PUSH4 0x91c49bf8 0000009c: EQ 0000009d: PUSH2 0x040c 000000a0: JUMPI 000000a1: DUP1 000000a2: PUSH4 0x927ede2d 000000a7: EQ 000000a8: PUSH2 0x04bd 000000ab: JUMPI 000000ac: PUSH1 0x00 000000ae: DUP1 000000af: REVERT 000000b0: JUMPDEST 000000b1: DUP1 000000b2: PUSH4 0x7f46ddb2 000000b7: EQ 000000b8: PUSH2 0x040c 000000bb: JUMPI 000000bc: DUP1 000000bd: PUSH4 0x838b2520 000000c2: EQ 000000c3: PUSH2 0x0437 000000c6: JUMPI 000000c7: DUP1 000000c8: PUSH4 0x87087623 000000cd: EQ 000000ce: PUSH2 0x0457 000000d1: JUMPI 000000d2: PUSH1 0x00 000000d4: DUP1 000000d5: REVERT 000000d6: JUMPDEST 000000d7: DUP1 000000d8: PUSH4 0x35e80ab3 000000dd: GT 000000de: PUSH2 0x0138 000000e1: JUMPI 000000e2: DUP1 000000e3: PUSH4 0x54fd4d50 000000e8: GT 000000e9: PUSH2 0x0112 000000ec: JUMPI 000000ed: DUP1 000000ee: PUSH4 0x54fd4d50 000000f3: EQ 000000f4: PUSH2 0x0371 000000f7: JUMPI 000000f8: DUP1 000000f9: PUSH4 0x58a997f6 000000fe: EQ 000000ff: PUSH2 0x03c7 00000102: JUMPI 00000103: DUP1 00000104: PUSH4 0x5c975abb 00000109: EQ 0000010a: PUSH2 0x03e7 0000010d: JUMPI 0000010e: PUSH1 0x00 00000110: DUP1 00000111: REVERT 00000112: JUMPDEST 00000113: DUP1 00000114: PUSH4 0x35e80ab3 00000119: EQ 0000011a: PUSH2 0x02f7 0000011d: JUMPI 0000011e: DUP1 0000011f: PUSH4 0x3cb747bf 00000124: EQ 00000125: PUSH2 0x0324 00000128: JUMPI 00000129: DUP1 0000012a: PUSH4 0x540abf73 0000012f: EQ 00000130: PUSH2 0x0351 00000133: JUMPI 00000134: PUSH1 0x00 00000136: DUP1 00000137: REVERT 00000138: JUMPDEST 00000139: DUP1 0000013a: PUSH4 0x1532ec34 0000013f: GT 00000140: PUSH2 0x0169 00000143: JUMPI 00000144: DUP1 00000145: PUSH4 0x1532ec34 0000014a: EQ 0000014b: PUSH2 0x027a 0000014e: JUMPI 0000014f: DUP1 00000150: PUSH4 0x1635f5fd 00000155: EQ 00000156: PUSH2 0x028d 00000159: JUMPI 0000015a: DUP1 0000015b: PUSH4 0x33d7e2bd 00000160: EQ 00000161: PUSH2 0x02a0 00000164: JUMPI 00000165: PUSH1 0x00 00000167: DUP1 00000168: REVERT 00000169: JUMPDEST 0000016a: DUP1 0000016b: PUSH4 0x0166a07a 00000170: EQ 00000171: PUSH2 0x0247 00000174: JUMPI 00000175: DUP1 00000176: PUSH4 0x09fc8843 0000017b: EQ 0000017c: PUSH2 0x0267 0000017f: JUMPI 00000180: PUSH1 0x00 00000182: DUP1 00000183: REVERT 00000184: JUMPDEST 00000185: CALLDATASIZE 00000186: PUSH2 0x0242 00000189: JUMPI 0000018a: PUSH2 0x0191 0000018d: PUSH2 0x058e 00000190: JUMP 00000191: JUMPDEST 00000192: PUSH2 0x0222 00000195: JUMPI 00000196: PUSH1 0x40 00000198: MLOAD 00000199: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000001ba: DUP2 000001bb: MSTORE 000001bc: PUSH1 0x20 000001be: PUSH1 0x04 000001c0: DUP3 000001c1: ADD 000001c2: MSTORE 000001c3: PUSH1 0x37 000001c5: PUSH1 0x24 000001c7: DUP3 000001c8: ADD 000001c9: MSTORE 000001ca: PUSH32 0x5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c 000001eb: PUSH1 0x44 000001ed: DUP3 000001ee: ADD 000001ef: MSTORE 000001f0: PUSH32 0x792062652063616c6c65642066726f6d20616e20454f41000000000000000000 00000211: PUSH1 0x64 00000213: DUP3 00000214: ADD 00000215: MSTORE 00000216: PUSH1 0x84 00000218: ADD 00000219: JUMPDEST 0000021a: PUSH1 0x40 0000021c: MLOAD 0000021d: DUP1 0000021e: SWAP2 0000021f: SUB 00000220: SWAP1 00000221: REVERT 00000222: JUMPDEST 00000223: PUSH2 0x0240 00000226: CALLER 00000227: CALLER 00000228: PUSH3 0x030d40 0000022c: PUSH1 0x40 0000022e: MLOAD 0000022f: DUP1 00000230: PUSH1 0x20 00000232: ADD 00000233: PUSH1 0x40 00000235: MSTORE 00000236: DUP1 00000237: PUSH1 0x00 00000239: DUP2 0000023a: MSTORE 0000023b: POP 0000023c: PUSH2 0x05cb 0000023f: JUMP 00000240: JUMPDEST 00000241: STOP 00000242: JUMPDEST 00000243: PUSH1 0x00 00000245: DUP1 00000246: REVERT 00000247: JUMPDEST 00000248: CALLVALUE 00000249: DUP1 0000024a: ISZERO 0000024b: PUSH2 0x0253 0000024e: JUMPI 0000024f: PUSH1 0x00 00000251: DUP1 00000252: REVERT 00000253: JUMPDEST 00000254: POP 00000255: PUSH2 0x0240 00000258: PUSH2 0x0262 0000025b: CALLDATASIZE 0000025c: PUSH1 0x04 0000025e: PUSH2 0x29cb 00000261: JUMP 00000262: JUMPDEST 00000263: PUSH2 0x05de 00000266: JUMP 00000267: JUMPDEST 00000268: PUSH2 0x0240 0000026b: PUSH2 0x0275 0000026e: CALLDATASIZE 0000026f: PUSH1 0x04 00000271: PUSH2 0x2a7c 00000274: JUMP 00000275: JUMPDEST 00000276: PUSH2 0x09f8 00000279: JUMP 0000027a: JUMPDEST 0000027b: PUSH2 0x0240 0000027e: PUSH2 0x0288 00000281: CALLDATASIZE 00000282: PUSH1 0x04 00000284: PUSH2 0x2acf 00000287: JUMP 00000288: JUMPDEST 00000289: PUSH2 0x0ad4 0000028c: JUMP 0000028d: JUMPDEST 0000028e: PUSH2 0x0240 00000291: PUSH2 0x029b 00000294: CALLDATASIZE 00000295: PUSH1 0x04 00000297: PUSH2 0x2acf 0000029a: JUMP 0000029b: JUMPDEST 0000029c: PUSH2 0x0ae8 0000029f: JUMP 000002a0: JUMPDEST 000002a1: CALLVALUE 000002a2: DUP1 000002a3: ISZERO 000002a4: PUSH2 0x02ac 000002a7: JUMPI 000002a8: PUSH1 0x00 000002aa: DUP1 000002ab: REVERT 000002ac: JUMPDEST 000002ad: POP 000002ae: PUSH1 0x33 000002b0: SLOAD 000002b1: PUSH2 0x02cd 000002b4: SWAP1 000002b5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000002ca: AND 000002cb: DUP2 000002cc: JUMP 000002cd: JUMPDEST 000002ce: PUSH1 0x40 000002d0: MLOAD 000002d1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000002e6: SWAP1 000002e7: SWAP2 000002e8: AND 000002e9: DUP2 000002ea: MSTORE 000002eb: PUSH1 0x20 000002ed: ADD 000002ee: JUMPDEST 000002ef: PUSH1 0x40 000002f1: MLOAD 000002f2: DUP1 000002f3: SWAP2 000002f4: SUB 000002f5: SWAP1 000002f6: RETURN 000002f7: JUMPDEST 000002f8: CALLVALUE 000002f9: DUP1 000002fa: ISZERO 000002fb: PUSH2 0x0303 000002fe: JUMPI 000002ff: PUSH1 0x00 00000301: DUP1 00000302: REVERT 00000303: JUMPDEST 00000304: POP 00000305: PUSH1 0x32 00000307: SLOAD 00000308: PUSH2 0x02cd 0000030b: SWAP1 0000030c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000321: AND 00000322: DUP2 00000323: JUMP 00000324: JUMPDEST 00000325: CALLVALUE 00000326: DUP1 00000327: ISZERO 00000328: PUSH2 0x0330 0000032b: JUMPI 0000032c: PUSH1 0x00 0000032e: DUP1 0000032f: REVERT 00000330: JUMPDEST 00000331: POP 00000332: PUSH1 0x03 00000334: SLOAD 00000335: PUSH2 0x02cd 00000338: SWAP1 00000339: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000034e: AND 0000034f: DUP2 00000350: JUMP 00000351: JUMPDEST 00000352: CALLVALUE 00000353: DUP1 00000354: ISZERO 00000355: PUSH2 0x035d 00000358: JUMPI 00000359: PUSH1 0x00 0000035b: DUP1 0000035c: REVERT 0000035d: JUMPDEST 0000035e: POP 0000035f: PUSH2 0x0240 00000362: PUSH2 0x036c 00000365: CALLDATASIZE 00000366: PUSH1 0x04 00000368: PUSH2 0x2b42 0000036b: JUMP 0000036c: JUMPDEST 0000036d: PUSH2 0x1046 00000370: JUMP 00000371: JUMPDEST 00000372: CALLVALUE 00000373: DUP1 00000374: ISZERO 00000375: PUSH2 0x037d 00000378: JUMPI 00000379: PUSH1 0x00 0000037b: DUP1 0000037c: REVERT 0000037d: JUMPDEST 0000037e: POP 0000037f: PUSH2 0x03ba 00000382: PUSH1 0x40 00000384: MLOAD 00000385: DUP1 00000386: PUSH1 0x40 00000388: ADD 00000389: PUSH1 0x40 0000038b: MSTORE 0000038c: DUP1 0000038d: PUSH1 0x05 0000038f: DUP2 00000390: MSTORE 00000391: PUSH1 0x20 00000393: ADD 00000394: PUSH32 0x322e332e30000000000000000000000000000000000000000000000000000000 000003b5: DUP2 000003b6: MSTORE 000003b7: POP 000003b8: DUP2 000003b9: JUMP 000003ba: JUMPDEST 000003bb: PUSH1 0x40 000003bd: MLOAD 000003be: PUSH2 0x02ee 000003c1: SWAP2 000003c2: SWAP1 000003c3: PUSH2 0x2c2f 000003c6: JUMP 000003c7: JUMPDEST 000003c8: CALLVALUE 000003c9: DUP1 000003ca: ISZERO 000003cb: PUSH2 0x03d3 000003ce: JUMPI 000003cf: PUSH1 0x00 000003d1: DUP1 000003d2: REVERT 000003d3: JUMPDEST 000003d4: POP 000003d5: PUSH2 0x0240 000003d8: PUSH2 0x03e2 000003db: CALLDATASIZE 000003dc: PUSH1 0x04 000003de: PUSH2 0x2c42 000003e1: JUMP 000003e2: JUMPDEST 000003e3: PUSH2 0x108b 000003e6: JUMP 000003e7: JUMPDEST 000003e8: CALLVALUE 000003e9: DUP1 000003ea: ISZERO 000003eb: PUSH2 0x03f3 000003ee: JUMPI 000003ef: PUSH1 0x00 000003f1: DUP1 000003f2: REVERT 000003f3: JUMPDEST 000003f4: POP 000003f5: PUSH2 0x03fc 000003f8: PUSH2 0x1164 000003fb: JUMP 000003fc: JUMPDEST 000003fd: PUSH1 0x40 000003ff: MLOAD 00000400: SWAP1 00000401: ISZERO 00000402: ISZERO 00000403: DUP2 00000404: MSTORE 00000405: PUSH1 0x20 00000407: ADD 00000408: PUSH2 0x02ee 0000040b: JUMP 0000040c: JUMPDEST 0000040d: CALLVALUE 0000040e: DUP1 0000040f: ISZERO 00000410: PUSH2 0x0418 00000413: JUMPI 00000414: PUSH1 0x00 00000416: DUP1 00000417: REVERT 00000418: JUMPDEST 00000419: POP 0000041a: PUSH1 0x04 0000041c: SLOAD 0000041d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000432: AND 00000433: PUSH2 0x02cd 00000436: JUMP 00000437: JUMPDEST 00000438: CALLVALUE 00000439: DUP1 0000043a: ISZERO 0000043b: PUSH2 0x0443 0000043e: JUMPI 0000043f: PUSH1 0x00 00000441: DUP1 00000442: REVERT 00000443: JUMPDEST 00000444: POP 00000445: PUSH2 0x0240 00000448: PUSH2 0x0452 0000044b: CALLDATASIZE 0000044c: PUSH1 0x04 0000044e: PUSH2 0x2b42 00000451: JUMP 00000452: JUMPDEST 00000453: PUSH2 0x11fd 00000456: JUMP 00000457: JUMPDEST 00000458: CALLVALUE 00000459: DUP1 0000045a: ISZERO 0000045b: PUSH2 0x0463 0000045e: JUMPI 0000045f: PUSH1 0x00 00000461: DUP1 00000462: REVERT 00000463: JUMPDEST 00000464: POP 00000465: PUSH2 0x0240 00000468: PUSH2 0x0472 0000046b: CALLDATASIZE 0000046c: PUSH1 0x04 0000046e: PUSH2 0x2c42 00000471: JUMP 00000472: JUMPDEST 00000473: PUSH2 0x1242 00000476: JUMP 00000477: JUMPDEST 00000478: CALLVALUE 00000479: DUP1 0000047a: ISZERO 0000047b: PUSH2 0x0483 0000047e: JUMPI 0000047f: PUSH1 0x00 00000481: DUP1 00000482: REVERT 00000483: JUMPDEST 00000484: POP 00000485: PUSH2 0x04af 00000488: PUSH2 0x0492 0000048b: CALLDATASIZE 0000048c: PUSH1 0x04 0000048e: PUSH2 0x2cc5 00000491: JUMP 00000492: JUMPDEST 00000493: PUSH1 0x02 00000495: PUSH1 0x20 00000497: SWAP1 00000498: DUP2 00000499: MSTORE 0000049a: PUSH1 0x00 0000049c: SWAP3 0000049d: DUP4 0000049e: MSTORE 0000049f: PUSH1 0x40 000004a1: DUP1 000004a2: DUP5 000004a3: KECCAK256 000004a4: SWAP1 000004a5: SWAP2 000004a6: MSTORE 000004a7: SWAP1 000004a8: DUP3 000004a9: MSTORE 000004aa: SWAP1 000004ab: KECCAK256 000004ac: SLOAD 000004ad: DUP2 000004ae: JUMP 000004af: JUMPDEST 000004b0: PUSH1 0x40 000004b2: MLOAD 000004b3: SWAP1 000004b4: DUP2 000004b5: MSTORE 000004b6: PUSH1 0x20 000004b8: ADD 000004b9: PUSH2 0x02ee 000004bc: JUMP 000004bd: JUMPDEST 000004be: CALLVALUE 000004bf: DUP1 000004c0: ISZERO 000004c1: PUSH2 0x04c9 000004c4: JUMPI 000004c5: PUSH1 0x00 000004c7: DUP1 000004c8: REVERT 000004c9: JUMPDEST 000004ca: POP 000004cb: PUSH1 0x03 000004cd: SLOAD 000004ce: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000004e3: AND 000004e4: PUSH2 0x02cd 000004e7: JUMP 000004e8: JUMPDEST 000004e9: PUSH2 0x0240 000004ec: PUSH2 0x04f6 000004ef: CALLDATASIZE 000004f0: PUSH1 0x04 000004f2: PUSH2 0x2cfe 000004f5: JUMP 000004f6: JUMPDEST 000004f7: PUSH2 0x131b 000004fa: JUMP 000004fb: JUMPDEST 000004fc: CALLVALUE 000004fd: DUP1 000004fe: ISZERO 000004ff: PUSH2 0x0507 00000502: JUMPI 00000503: PUSH1 0x00 00000505: DUP1 00000506: REVERT 00000507: JUMPDEST 00000508: POP 00000509: PUSH2 0x0240 0000050c: PUSH2 0x0516 0000050f: CALLDATASIZE 00000510: PUSH1 0x04 00000512: PUSH2 0x29cb 00000515: JUMP 00000516: JUMPDEST 00000517: PUSH2 0x135d 0000051a: JUMP 0000051b: JUMPDEST 0000051c: PUSH2 0x0240 0000051f: PUSH2 0x0529 00000522: CALLDATASIZE 00000523: PUSH1 0x04 00000525: PUSH2 0x2a7c 00000528: JUMP 00000529: JUMPDEST 0000052a: PUSH2 0x136c 0000052d: JUMP 0000052e: JUMPDEST 0000052f: CALLVALUE 00000530: DUP1 00000531: ISZERO 00000532: PUSH2 0x053a 00000535: JUMPI 00000536: PUSH1 0x00 00000538: DUP1 00000539: REVERT 0000053a: JUMPDEST 0000053b: POP 0000053c: PUSH2 0x0240 0000053f: PUSH2 0x0549 00000542: CALLDATASIZE 00000543: PUSH1 0x04 00000545: PUSH2 0x2d61 00000548: JUMP 00000549: JUMPDEST 0000054a: PUSH2 0x1442 0000054d: JUMP 0000054e: JUMPDEST 0000054f: CALLVALUE 00000550: DUP1 00000551: ISZERO 00000552: PUSH2 0x055a 00000555: JUMPI 00000556: PUSH1 0x00 00000558: DUP1 00000559: REVERT 0000055a: JUMPDEST 0000055b: POP 0000055c: PUSH1 0x04 0000055e: SLOAD 0000055f: PUSH2 0x02cd 00000562: SWAP1 00000563: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000578: AND 00000579: DUP2 0000057a: JUMP 0000057b: JUMPDEST 0000057c: PUSH2 0x0240 0000057f: PUSH2 0x0589 00000582: CALLDATASIZE 00000583: PUSH1 0x04 00000585: PUSH2 0x2cfe 00000588: JUMP 00000589: JUMPDEST 0000058a: PUSH2 0x1641 0000058d: JUMP 0000058e: JUMPDEST 0000058f: PUSH1 0x00 00000591: ORIGIN 00000592: CALLER 00000593: SUB 00000594: PUSH2 0x059d 00000597: JUMPI 00000598: POP 00000599: PUSH1 0x01 0000059b: SWAP1 0000059c: JUMP 0000059d: JUMPDEST 0000059e: CALLER 0000059f: EXTCODESIZE 000005a0: PUSH1 0x17 000005a2: SUB 000005a3: PUSH2 0x05c5 000005a6: JUMPI 000005a7: PUSH1 0x40 000005a9: MLOAD 000005aa: PUSH1 0x20 000005ac: DUP2 000005ad: ADD 000005ae: PUSH1 0x40 000005b0: MSTORE 000005b1: PUSH1 0x20 000005b3: PUSH1 0x00 000005b5: DUP3 000005b6: CALLER 000005b7: EXTCODECOPY 000005b8: MLOAD 000005b9: PUSH1 0xe8 000005bb: SHR 000005bc: PUSH3 0xef0100 000005c0: EQ 000005c1: SWAP1 000005c2: POP 000005c3: SWAP1 000005c4: JUMP 000005c5: JUMPDEST 000005c6: POP 000005c7: PUSH1 0x00 000005c9: SWAP1 000005ca: JUMP 000005cb: JUMPDEST 000005cc: PUSH2 0x05d8 000005cf: DUP5 000005d0: DUP5 000005d1: CALLVALUE 000005d2: DUP6 000005d3: DUP6 000005d4: PUSH2 0x1684 000005d7: JUMP 000005d8: JUMPDEST 000005d9: POP 000005da: POP 000005db: POP 000005dc: POP 000005dd: JUMP 000005de: JUMPDEST 000005df: PUSH1 0x03 000005e1: SLOAD 000005e2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000005f7: AND 000005f8: CALLER 000005f9: EQ 000005fa: DUP1 000005fb: ISZERO 000005fc: PUSH2 0x06b1 000005ff: JUMPI 00000600: POP 00000601: PUSH1 0x04 00000603: DUP1 00000604: SLOAD 00000605: PUSH1 0x03 00000607: SLOAD 00000608: PUSH1 0x40 0000060a: DUP1 0000060b: MLOAD 0000060c: PUSH32 0x6e296e4500000000000000000000000000000000000000000000000000000000 0000062d: DUP2 0000062e: MSTORE 0000062f: SWAP1 00000630: MLOAD 00000631: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000646: SWAP4 00000647: DUP5 00000648: AND 00000649: SWAP5 0000064a: SWAP4 0000064b: SWAP1 0000064c: SWAP3 0000064d: AND 0000064e: SWAP3 0000064f: PUSH4 0x6e296e45 00000654: SWAP3 00000655: DUP3 00000656: DUP3 00000657: ADD 00000658: SWAP3 00000659: PUSH1 0x20 0000065b: SWAP3 0000065c: SWAP1 0000065d: DUP3 0000065e: SWAP1 0000065f: SUB 00000660: ADD 00000661: DUP2 00000662: DUP7 00000663: GAS 00000664: STATICCALL 00000665: ISZERO 00000666: DUP1 00000667: ISZERO 00000668: PUSH2 0x0675 0000066b: JUMPI 0000066c: RETURNDATASIZE 0000066d: PUSH1 0x00 0000066f: DUP1 00000670: RETURNDATACOPY 00000671: RETURNDATASIZE 00000672: PUSH1 0x00 00000674: REVERT 00000675: JUMPDEST 00000676: POP 00000677: POP 00000678: POP 00000679: POP 0000067a: PUSH1 0x40 0000067c: MLOAD 0000067d: RETURNDATASIZE 0000067e: PUSH1 0x1f 00000680: NOT 00000681: PUSH1 0x1f 00000683: DUP3 00000684: ADD 00000685: AND 00000686: DUP3 00000687: ADD 00000688: DUP1 00000689: PUSH1 0x40 0000068b: MSTORE 0000068c: POP 0000068d: DUP2 0000068e: ADD 0000068f: SWAP1 00000690: PUSH2 0x0699 00000693: SWAP2 00000694: SWAP1 00000695: PUSH2 0x2dac 00000698: JUMP 00000699: JUMPDEST 0000069a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000006af: AND 000006b0: EQ 000006b1: JUMPDEST 000006b2: PUSH2 0x0763 000006b5: JUMPI 000006b6: PUSH1 0x40 000006b8: MLOAD 000006b9: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000006da: DUP2 000006db: MSTORE 000006dc: PUSH1 0x20 000006de: PUSH1 0x04 000006e0: DUP3 000006e1: ADD 000006e2: MSTORE 000006e3: PUSH1 0x41 000006e5: PUSH1 0x24 000006e7: DUP3 000006e8: ADD 000006e9: MSTORE 000006ea: PUSH32 0x5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c 0000070b: PUSH1 0x44 0000070d: DUP3 0000070e: ADD 0000070f: MSTORE 00000710: PUSH32 0x792062652063616c6c65642066726f6d20746865206f74686572206272696467 00000731: PUSH1 0x64 00000733: DUP3 00000734: ADD 00000735: MSTORE 00000736: PUSH32 0x6500000000000000000000000000000000000000000000000000000000000000 00000757: PUSH1 0x84 00000759: DUP3 0000075a: ADD 0000075b: MSTORE 0000075c: PUSH1 0xa4 0000075e: ADD 0000075f: PUSH2 0x0219 00000762: JUMP 00000763: JUMPDEST 00000764: PUSH2 0x076b 00000767: PUSH2 0x1164 0000076a: JUMP 0000076b: JUMPDEST 0000076c: ISZERO 0000076d: PUSH2 0x07d2 00000770: JUMPI 00000771: PUSH1 0x40 00000773: MLOAD 00000774: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000795: DUP2 00000796: MSTORE 00000797: PUSH1 0x20 00000799: PUSH1 0x04 0000079b: DUP3 0000079c: ADD 0000079d: MSTORE 0000079e: PUSH1 0x16 000007a0: PUSH1 0x24 000007a2: DUP3 000007a3: ADD 000007a4: MSTORE 000007a5: PUSH32 0x5374616e646172644272696467653a2070617573656400000000000000000000 000007c6: PUSH1 0x44 000007c8: DUP3 000007c9: ADD 000007ca: MSTORE 000007cb: PUSH1 0x64 000007cd: ADD 000007ce: PUSH2 0x0219 000007d1: JUMP 000007d2: JUMPDEST 000007d3: PUSH2 0x07db 000007d6: DUP8 000007d7: PUSH2 0x18e3 000007da: JUMP 000007db: JUMPDEST 000007dc: ISZERO 000007dd: PUSH2 0x0929 000007e0: JUMPI 000007e1: PUSH2 0x07ea 000007e4: DUP8 000007e5: DUP8 000007e6: PUSH2 0x1945 000007e9: JUMP 000007ea: JUMPDEST 000007eb: PUSH2 0x089c 000007ee: JUMPI 000007ef: PUSH1 0x40 000007f1: MLOAD 000007f2: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000813: DUP2 00000814: MSTORE 00000815: PUSH1 0x20 00000817: PUSH1 0x04 00000819: DUP3 0000081a: ADD 0000081b: MSTORE 0000081c: PUSH1 0x4a 0000081e: PUSH1 0x24 00000820: DUP3 00000821: ADD 00000822: MSTORE 00000823: PUSH32 0x5374616e646172644272696467653a2077726f6e672072656d6f746520746f6b 00000844: PUSH1 0x44 00000846: DUP3 00000847: ADD 00000848: MSTORE 00000849: PUSH32 0x656e20666f72204f7074696d69736d204d696e7461626c65204552433230206c 0000086a: PUSH1 0x64 0000086c: DUP3 0000086d: ADD 0000086e: MSTORE 0000086f: PUSH32 0x6f63616c20746f6b656e00000000000000000000000000000000000000000000 00000890: PUSH1 0x84 00000892: DUP3 00000893: ADD 00000894: MSTORE 00000895: PUSH1 0xa4 00000897: ADD 00000898: PUSH2 0x0219 0000089b: JUMP 0000089c: JUMPDEST 0000089d: PUSH1 0x40 0000089f: MLOAD 000008a0: PUSH32 0x40c10f1900000000000000000000000000000000000000000000000000000000 000008c1: DUP2 000008c2: MSTORE 000008c3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000008d8: DUP6 000008d9: DUP2 000008da: AND 000008db: PUSH1 0x04 000008dd: DUP4 000008de: ADD 000008df: MSTORE 000008e0: PUSH1 0x24 000008e2: DUP3 000008e3: ADD 000008e4: DUP6 000008e5: SWAP1 000008e6: MSTORE 000008e7: DUP9 000008e8: AND 000008e9: SWAP1 000008ea: PUSH4 0x40c10f19 000008ef: SWAP1 000008f0: PUSH1 0x44 000008f2: ADD 000008f3: PUSH1 0x00 000008f5: PUSH1 0x40 000008f7: MLOAD 000008f8: DUP1 000008f9: DUP4 000008fa: SUB 000008fb: DUP2 000008fc: PUSH1 0x00 000008fe: DUP8 000008ff: DUP1 00000900: EXTCODESIZE 00000901: ISZERO 00000902: DUP1 00000903: ISZERO 00000904: PUSH2 0x090c 00000907: JUMPI 00000908: PUSH1 0x00 0000090a: DUP1 0000090b: REVERT 0000090c: JUMPDEST 0000090d: POP 0000090e: GAS 0000090f: CALL 00000910: ISZERO 00000911: DUP1 00000912: ISZERO 00000913: PUSH2 0x0920 00000916: JUMPI 00000917: RETURNDATASIZE 00000918: PUSH1 0x00 0000091a: DUP1 0000091b: RETURNDATACOPY 0000091c: RETURNDATASIZE 0000091d: PUSH1 0x00 0000091f: REVERT 00000920: JUMPDEST 00000921: POP 00000922: POP 00000923: POP 00000924: POP 00000925: PUSH2 0x09ab 00000928: JUMP 00000929: JUMPDEST 0000092a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000093f: DUP1 00000940: DUP9 00000941: AND 00000942: PUSH1 0x00 00000944: SWAP1 00000945: DUP2 00000946: MSTORE 00000947: PUSH1 0x02 00000949: PUSH1 0x20 0000094b: SWAP1 0000094c: DUP2 0000094d: MSTORE 0000094e: PUSH1 0x40 00000950: DUP1 00000951: DUP4 00000952: KECCAK256 00000953: SWAP4 00000954: DUP11 00000955: AND 00000956: DUP4 00000957: MSTORE 00000958: SWAP3 00000959: SWAP1 0000095a: MSTORE 0000095b: KECCAK256 0000095c: SLOAD 0000095d: PUSH2 0x0967 00000960: SWAP1 00000961: DUP5 00000962: SWAP1 00000963: PUSH2 0x2df8 00000966: JUMP 00000967: JUMPDEST 00000968: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000097d: DUP1 0000097e: DUP10 0000097f: AND 00000980: PUSH1 0x00 00000982: DUP2 00000983: DUP2 00000984: MSTORE 00000985: PUSH1 0x02 00000987: PUSH1 0x20 00000989: SWAP1 0000098a: DUP2 0000098b: MSTORE 0000098c: PUSH1 0x40 0000098e: DUP1 0000098f: DUP4 00000990: KECCAK256 00000991: SWAP5 00000992: DUP13 00000993: AND 00000994: DUP4 00000995: MSTORE 00000996: SWAP4 00000997: SWAP1 00000998: MSTORE 00000999: SWAP2 0000099a: SWAP1 0000099b: SWAP2 0000099c: KECCAK256 0000099d: SWAP2 0000099e: SWAP1 0000099f: SWAP2 000009a0: SSTORE 000009a1: PUSH2 0x09ab 000009a4: SWAP1 000009a5: DUP6 000009a6: DUP6 000009a7: PUSH2 0x1a65 000009aa: JUMP 000009ab: JUMPDEST 000009ac: PUSH2 0x09ef 000009af: DUP8 000009b0: DUP8 000009b1: DUP8 000009b2: DUP8 000009b3: DUP8 000009b4: DUP8 000009b5: DUP8 000009b6: DUP1 000009b7: DUP1 000009b8: PUSH1 0x1f 000009ba: ADD 000009bb: PUSH1 0x20 000009bd: DUP1 000009be: SWAP2 000009bf: DIV 000009c0: MUL 000009c1: PUSH1 0x20 000009c3: ADD 000009c4: PUSH1 0x40 000009c6: MLOAD 000009c7: SWAP1 000009c8: DUP2 000009c9: ADD 000009ca: PUSH1 0x40 000009cc: MSTORE 000009cd: DUP1 000009ce: SWAP4 000009cf: SWAP3 000009d0: SWAP2 000009d1: SWAP1 000009d2: DUP2 000009d3: DUP2 000009d4: MSTORE 000009d5: PUSH1 0x20 000009d7: ADD 000009d8: DUP4 000009d9: DUP4 000009da: DUP1 000009db: DUP3 000009dc: DUP5 000009dd: CALLDATACOPY 000009de: PUSH1 0x00 000009e0: SWAP3 000009e1: ADD 000009e2: SWAP2 000009e3: SWAP1 000009e4: SWAP2 000009e5: MSTORE 000009e6: POP 000009e7: PUSH2 0x1b39 000009ea: SWAP3 000009eb: POP 000009ec: POP 000009ed: POP 000009ee: JUMP 000009ef: JUMPDEST 000009f0: POP 000009f1: POP 000009f2: POP 000009f3: POP 000009f4: POP 000009f5: POP 000009f6: POP 000009f7: JUMP 000009f8: JUMPDEST 000009f9: PUSH2 0x0a00 000009fc: PUSH2 0x058e 000009ff: JUMP 00000a00: JUMPDEST 00000a01: PUSH2 0x0a8c 00000a04: JUMPI 00000a05: PUSH1 0x40 00000a07: MLOAD 00000a08: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000a29: DUP2 00000a2a: MSTORE 00000a2b: PUSH1 0x20 00000a2d: PUSH1 0x04 00000a2f: DUP3 00000a30: ADD 00000a31: MSTORE 00000a32: PUSH1 0x37 00000a34: PUSH1 0x24 00000a36: DUP3 00000a37: ADD 00000a38: MSTORE 00000a39: PUSH32 0x5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c 00000a5a: PUSH1 0x44 00000a5c: DUP3 00000a5d: ADD 00000a5e: MSTORE 00000a5f: PUSH32 0x792062652063616c6c65642066726f6d20616e20454f41000000000000000000 00000a80: PUSH1 0x64 00000a82: DUP3 00000a83: ADD 00000a84: MSTORE 00000a85: PUSH1 0x84 00000a87: ADD 00000a88: PUSH2 0x0219 00000a8b: JUMP 00000a8c: JUMPDEST 00000a8d: PUSH2 0x0acf 00000a90: CALLER 00000a91: CALLER 00000a92: CALLVALUE 00000a93: DUP7 00000a94: DUP7 00000a95: DUP7 00000a96: DUP1 00000a97: DUP1 00000a98: PUSH1 0x1f 00000a9a: ADD 00000a9b: PUSH1 0x20 00000a9d: DUP1 00000a9e: SWAP2 00000a9f: DIV 00000aa0: MUL 00000aa1: PUSH1 0x20 00000aa3: ADD 00000aa4: PUSH1 0x40 00000aa6: MLOAD 00000aa7: SWAP1 00000aa8: DUP2 00000aa9: ADD 00000aaa: PUSH1 0x40 00000aac: MSTORE 00000aad: DUP1 00000aae: SWAP4 00000aaf: SWAP3 00000ab0: SWAP2 00000ab1: SWAP1 00000ab2: DUP2 00000ab3: DUP2 00000ab4: MSTORE 00000ab5: PUSH1 0x20 00000ab7: ADD 00000ab8: DUP4 00000ab9: DUP4 00000aba: DUP1 00000abb: DUP3 00000abc: DUP5 00000abd: CALLDATACOPY 00000abe: PUSH1 0x00 00000ac0: SWAP3 00000ac1: ADD 00000ac2: SWAP2 00000ac3: SWAP1 00000ac4: SWAP2 00000ac5: MSTORE 00000ac6: POP 00000ac7: PUSH2 0x1684 00000aca: SWAP3 00000acb: POP 00000acc: POP 00000acd: POP 00000ace: JUMP 00000acf: JUMPDEST 00000ad0: POP 00000ad1: POP 00000ad2: POP 00000ad3: JUMP 00000ad4: JUMPDEST 00000ad5: PUSH2 0x0ae1 00000ad8: DUP6 00000ad9: DUP6 00000ada: DUP6 00000adb: DUP6 00000adc: DUP6 00000add: PUSH2 0x0ae8 00000ae0: JUMP 00000ae1: JUMPDEST 00000ae2: POP 00000ae3: POP 00000ae4: POP 00000ae5: POP 00000ae6: POP 00000ae7: JUMP 00000ae8: JUMPDEST 00000ae9: PUSH1 0x03 00000aeb: SLOAD 00000aec: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000b01: AND 00000b02: CALLER 00000b03: EQ 00000b04: DUP1 00000b05: ISZERO 00000b06: PUSH2 0x0bbb 00000b09: JUMPI 00000b0a: POP 00000b0b: PUSH1 0x04 00000b0d: DUP1 00000b0e: SLOAD 00000b0f: PUSH1 0x03 00000b11: SLOAD 00000b12: PUSH1 0x40 00000b14: DUP1 00000b15: MLOAD 00000b16: PUSH32 0x6e296e4500000000000000000000000000000000000000000000000000000000 00000b37: DUP2 00000b38: MSTORE 00000b39: SWAP1 00000b3a: MLOAD 00000b3b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000b50: SWAP4 00000b51: DUP5 00000b52: AND 00000b53: SWAP5 00000b54: SWAP4 00000b55: SWAP1 00000b56: SWAP3 00000b57: AND 00000b58: SWAP3 00000b59: PUSH4 0x6e296e45 00000b5e: SWAP3 00000b5f: DUP3 00000b60: DUP3 00000b61: ADD 00000b62: SWAP3 00000b63: PUSH1 0x20 00000b65: SWAP3 00000b66: SWAP1 00000b67: DUP3 00000b68: SWAP1 00000b69: SUB 00000b6a: ADD 00000b6b: DUP2 00000b6c: DUP7 00000b6d: GAS 00000b6e: STATICCALL 00000b6f: ISZERO 00000b70: DUP1 00000b71: ISZERO 00000b72: PUSH2 0x0b7f 00000b75: JUMPI 00000b76: RETURNDATASIZE 00000b77: PUSH1 0x00 00000b79: DUP1 00000b7a: RETURNDATACOPY 00000b7b: RETURNDATASIZE 00000b7c: PUSH1 0x00 00000b7e: REVERT 00000b7f: JUMPDEST 00000b80: POP 00000b81: POP 00000b82: POP 00000b83: POP 00000b84: PUSH1 0x40 00000b86: MLOAD 00000b87: RETURNDATASIZE 00000b88: PUSH1 0x1f 00000b8a: NOT 00000b8b: PUSH1 0x1f 00000b8d: DUP3 00000b8e: ADD 00000b8f: AND 00000b90: DUP3 00000b91: ADD 00000b92: DUP1 00000b93: PUSH1 0x40 00000b95: MSTORE 00000b96: POP 00000b97: DUP2 00000b98: ADD 00000b99: SWAP1 00000b9a: PUSH2 0x0ba3 00000b9d: SWAP2 00000b9e: SWAP1 00000b9f: PUSH2 0x2dac 00000ba2: JUMP 00000ba3: JUMPDEST 00000ba4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000bb9: AND 00000bba: EQ 00000bbb: JUMPDEST 00000bbc: PUSH2 0x0c6d 00000bbf: JUMPI 00000bc0: PUSH1 0x40 00000bc2: MLOAD 00000bc3: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000be4: DUP2 00000be5: MSTORE 00000be6: PUSH1 0x20 00000be8: PUSH1 0x04 00000bea: DUP3 00000beb: ADD 00000bec: MSTORE 00000bed: PUSH1 0x41 00000bef: PUSH1 0x24 00000bf1: DUP3 00000bf2: ADD 00000bf3: MSTORE 00000bf4: PUSH32 0x5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c 00000c15: PUSH1 0x44 00000c17: DUP3 00000c18: ADD 00000c19: MSTORE 00000c1a: PUSH32 0x792062652063616c6c65642066726f6d20746865206f74686572206272696467 00000c3b: PUSH1 0x64 00000c3d: DUP3 00000c3e: ADD 00000c3f: MSTORE 00000c40: PUSH32 0x6500000000000000000000000000000000000000000000000000000000000000 00000c61: PUSH1 0x84 00000c63: DUP3 00000c64: ADD 00000c65: MSTORE 00000c66: PUSH1 0xa4 00000c68: ADD 00000c69: PUSH2 0x0219 00000c6c: JUMP 00000c6d: JUMPDEST 00000c6e: PUSH2 0x0c75 00000c71: PUSH2 0x1164 00000c74: JUMP 00000c75: JUMPDEST 00000c76: ISZERO 00000c77: PUSH2 0x0cdc 00000c7a: JUMPI 00000c7b: PUSH1 0x40 00000c7d: MLOAD 00000c7e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000c9f: DUP2 00000ca0: MSTORE 00000ca1: PUSH1 0x20 00000ca3: PUSH1 0x04 00000ca5: DUP3 00000ca6: ADD 00000ca7: MSTORE 00000ca8: PUSH1 0x16 00000caa: PUSH1 0x24 00000cac: DUP3 00000cad: ADD 00000cae: MSTORE 00000caf: PUSH32 0x5374616e646172644272696467653a2070617573656400000000000000000000 00000cd0: PUSH1 0x44 00000cd2: DUP3 00000cd3: ADD 00000cd4: MSTORE 00000cd5: PUSH1 0x64 00000cd7: ADD 00000cd8: PUSH2 0x0219 00000cdb: JUMP 00000cdc: JUMPDEST 00000cdd: PUSH2 0x0ce4 00000ce0: PUSH2 0x1bc7 00000ce3: JUMP 00000ce4: JUMPDEST 00000ce5: ISZERO 00000ce6: PUSH2 0x0d71 00000ce9: JUMPI 00000cea: PUSH1 0x40 00000cec: MLOAD 00000ced: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000d0e: DUP2 00000d0f: MSTORE 00000d10: PUSH1 0x20 00000d12: PUSH1 0x04 00000d14: DUP3 00000d15: ADD 00000d16: MSTORE 00000d17: PUSH1 0x37 00000d19: PUSH1 0x24 00000d1b: DUP3 00000d1c: ADD 00000d1d: MSTORE 00000d1e: PUSH32 0x5374616e646172644272696467653a2063616e6e6f7420627269646765204554 00000d3f: PUSH1 0x44 00000d41: DUP3 00000d42: ADD 00000d43: MSTORE 00000d44: PUSH32 0x48207769746820637573746f6d2067617320746f6b656e000000000000000000 00000d65: PUSH1 0x64 00000d67: DUP3 00000d68: ADD 00000d69: MSTORE 00000d6a: PUSH1 0x84 00000d6c: ADD 00000d6d: PUSH2 0x0219 00000d70: JUMP 00000d71: JUMPDEST 00000d72: DUP3 00000d73: CALLVALUE 00000d74: EQ 00000d75: PUSH2 0x0e00 00000d78: JUMPI 00000d79: PUSH1 0x40 00000d7b: MLOAD 00000d7c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000d9d: DUP2 00000d9e: MSTORE 00000d9f: PUSH1 0x20 00000da1: PUSH1 0x04 00000da3: DUP3 00000da4: ADD 00000da5: MSTORE 00000da6: PUSH1 0x3a 00000da8: PUSH1 0x24 00000daa: DUP3 00000dab: ADD 00000dac: MSTORE 00000dad: PUSH32 0x5374616e646172644272696467653a20616d6f756e742073656e7420646f6573 00000dce: PUSH1 0x44 00000dd0: DUP3 00000dd1: ADD 00000dd2: MSTORE 00000dd3: PUSH32 0x206e6f74206d6174636820616d6f756e74207265717569726564000000000000 00000df4: PUSH1 0x64 00000df6: DUP3 00000df7: ADD 00000df8: MSTORE 00000df9: PUSH1 0x84 00000dfb: ADD 00000dfc: PUSH2 0x0219 00000dff: JUMP 00000e00: JUMPDEST 00000e01: ADDRESS 00000e02: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e17: DUP6 00000e18: AND 00000e19: SUB 00000e1a: PUSH2 0x0ea5 00000e1d: JUMPI 00000e1e: PUSH1 0x40 00000e20: MLOAD 00000e21: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000e42: DUP2 00000e43: MSTORE 00000e44: PUSH1 0x20 00000e46: PUSH1 0x04 00000e48: DUP3 00000e49: ADD 00000e4a: MSTORE 00000e4b: PUSH1 0x23 00000e4d: PUSH1 0x24 00000e4f: DUP3 00000e50: ADD 00000e51: MSTORE 00000e52: PUSH32 0x5374616e646172644272696467653a2063616e6e6f742073656e6420746f2073 00000e73: PUSH1 0x44 00000e75: DUP3 00000e76: ADD 00000e77: MSTORE 00000e78: PUSH32 0x656c660000000000000000000000000000000000000000000000000000000000 00000e99: PUSH1 0x64 00000e9b: DUP3 00000e9c: ADD 00000e9d: MSTORE 00000e9e: PUSH1 0x84 00000ea0: ADD 00000ea1: PUSH2 0x0219 00000ea4: JUMP 00000ea5: JUMPDEST 00000ea6: PUSH1 0x03 00000ea8: SLOAD 00000ea9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000ebe: SWAP1 00000ebf: DUP2 00000ec0: AND 00000ec1: SWAP1 00000ec2: DUP6 00000ec3: AND 00000ec4: SUB 00000ec5: PUSH2 0x0f50 00000ec8: JUMPI 00000ec9: PUSH1 0x40 00000ecb: MLOAD 00000ecc: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000eed: DUP2 00000eee: MSTORE 00000eef: PUSH1 0x20 00000ef1: PUSH1 0x04 00000ef3: DUP3 00000ef4: ADD 00000ef5: MSTORE 00000ef6: PUSH1 0x28 00000ef8: PUSH1 0x24 00000efa: DUP3 00000efb: ADD 00000efc: MSTORE 00000efd: PUSH32 0x5374616e646172644272696467653a2063616e6e6f742073656e6420746f206d 00000f1e: PUSH1 0x44 00000f20: DUP3 00000f21: ADD 00000f22: MSTORE 00000f23: PUSH32 0x657373656e676572000000000000000000000000000000000000000000000000 00000f44: PUSH1 0x64 00000f46: DUP3 00000f47: ADD 00000f48: MSTORE 00000f49: PUSH1 0x84 00000f4b: ADD 00000f4c: PUSH2 0x0219 00000f4f: JUMP 00000f50: JUMPDEST 00000f51: PUSH2 0x0f92 00000f54: DUP6 00000f55: DUP6 00000f56: DUP6 00000f57: DUP6 00000f58: DUP6 00000f59: DUP1 00000f5a: DUP1 00000f5b: PUSH1 0x1f 00000f5d: ADD 00000f5e: PUSH1 0x20 00000f60: DUP1 00000f61: SWAP2 00000f62: DIV 00000f63: MUL 00000f64: PUSH1 0x20 00000f66: ADD 00000f67: PUSH1 0x40 00000f69: MLOAD 00000f6a: SWAP1 00000f6b: DUP2 00000f6c: ADD 00000f6d: PUSH1 0x40 00000f6f: MSTORE 00000f70: DUP1 00000f71: SWAP4 00000f72: SWAP3 00000f73: SWAP2 00000f74: SWAP1 00000f75: DUP2 00000f76: DUP2 00000f77: MSTORE 00000f78: PUSH1 0x20 00000f7a: ADD 00000f7b: DUP4 00000f7c: DUP4 00000f7d: DUP1 00000f7e: DUP3 00000f7f: DUP5 00000f80: CALLDATACOPY 00000f81: PUSH1 0x00 00000f83: SWAP3 00000f84: ADD 00000f85: SWAP2 00000f86: SWAP1 00000f87: SWAP2 00000f88: MSTORE 00000f89: POP 00000f8a: PUSH2 0x1c06 00000f8d: SWAP3 00000f8e: POP 00000f8f: POP 00000f90: POP 00000f91: JUMP 00000f92: JUMPDEST 00000f93: PUSH1 0x00 00000f95: PUSH2 0x0faf 00000f98: DUP6 00000f99: GAS 00000f9a: DUP7 00000f9b: PUSH1 0x40 00000f9d: MLOAD 00000f9e: DUP1 00000f9f: PUSH1 0x20 00000fa1: ADD 00000fa2: PUSH1 0x40 00000fa4: MSTORE 00000fa5: DUP1 00000fa6: PUSH1 0x00 00000fa8: DUP2 00000fa9: MSTORE 00000faa: POP 00000fab: PUSH2 0x1c79 00000fae: JUMP 00000faf: JUMPDEST 00000fb0: SWAP1 00000fb1: POP 00000fb2: DUP1 00000fb3: PUSH2 0x103e 00000fb6: JUMPI 00000fb7: PUSH1 0x40 00000fb9: MLOAD 00000fba: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000fdb: DUP2 00000fdc: MSTORE 00000fdd: PUSH1 0x20 00000fdf: PUSH1 0x04 00000fe1: DUP3 00000fe2: ADD 00000fe3: MSTORE 00000fe4: PUSH1 0x23 00000fe6: PUSH1 0x24 00000fe8: DUP3 00000fe9: ADD 00000fea: MSTORE 00000feb: PUSH32 0x5374616e646172644272696467653a20455448207472616e7366657220666169 0000100c: PUSH1 0x44 0000100e: DUP3 0000100f: ADD 00001010: MSTORE 00001011: PUSH32 0x6c65640000000000000000000000000000000000000000000000000000000000 00001032: PUSH1 0x64 00001034: DUP3 00001035: ADD 00001036: MSTORE 00001037: PUSH1 0x84 00001039: ADD 0000103a: PUSH2 0x0219 0000103d: JUMP 0000103e: JUMPDEST 0000103f: POP 00001040: POP 00001041: POP 00001042: POP 00001043: POP 00001044: POP 00001045: JUMP 00001046: JUMPDEST 00001047: PUSH2 0x09ef 0000104a: DUP8 0000104b: DUP8 0000104c: CALLER 0000104d: DUP9 0000104e: DUP9 0000104f: DUP9 00001050: DUP9 00001051: DUP9 00001052: DUP1 00001053: DUP1 00001054: PUSH1 0x1f 00001056: ADD 00001057: PUSH1 0x20 00001059: DUP1 0000105a: SWAP2 0000105b: DIV 0000105c: MUL 0000105d: PUSH1 0x20 0000105f: ADD 00001060: PUSH1 0x40 00001062: MLOAD 00001063: SWAP1 00001064: DUP2 00001065: ADD 00001066: PUSH1 0x40 00001068: MSTORE 00001069: DUP1 0000106a: SWAP4 0000106b: SWAP3 0000106c: SWAP2 0000106d: SWAP1 0000106e: DUP2 0000106f: DUP2 00001070: MSTORE 00001071: PUSH1 0x20 00001073: ADD 00001074: DUP4 00001075: DUP4 00001076: DUP1 00001077: DUP3 00001078: DUP5 00001079: CALLDATACOPY 0000107a: PUSH1 0x00 0000107c: SWAP3 0000107d: ADD 0000107e: SWAP2 0000107f: SWAP1 00001080: SWAP2 00001081: MSTORE 00001082: POP 00001083: PUSH2 0x1c91 00001086: SWAP3 00001087: POP 00001088: POP 00001089: POP 0000108a: JUMP 0000108b: JUMPDEST 0000108c: PUSH2 0x1093 0000108f: PUSH2 0x058e 00001092: JUMP 00001093: JUMPDEST 00001094: PUSH2 0x111f 00001097: JUMPI 00001098: PUSH1 0x40 0000109a: MLOAD 0000109b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000010bc: DUP2 000010bd: MSTORE 000010be: PUSH1 0x20 000010c0: PUSH1 0x04 000010c2: DUP3 000010c3: ADD 000010c4: MSTORE 000010c5: PUSH1 0x37 000010c7: PUSH1 0x24 000010c9: DUP3 000010ca: ADD 000010cb: MSTORE 000010cc: PUSH32 0x5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c 000010ed: PUSH1 0x44 000010ef: DUP3 000010f0: ADD 000010f1: MSTORE 000010f2: PUSH32 0x792062652063616c6c65642066726f6d20616e20454f41000000000000000000 00001113: PUSH1 0x64 00001115: DUP3 00001116: ADD 00001117: MSTORE 00001118: PUSH1 0x84 0000111a: ADD 0000111b: PUSH2 0x0219 0000111e: JUMP 0000111f: JUMPDEST 00001120: PUSH2 0x103e 00001123: DUP7 00001124: DUP7 00001125: CALLER 00001126: CALLER 00001127: DUP9 00001128: DUP9 00001129: DUP9 0000112a: DUP9 0000112b: DUP1 0000112c: DUP1 0000112d: PUSH1 0x1f 0000112f: ADD 00001130: PUSH1 0x20 00001132: DUP1 00001133: SWAP2 00001134: DIV 00001135: MUL 00001136: PUSH1 0x20 00001138: ADD 00001139: PUSH1 0x40 0000113b: MLOAD 0000113c: SWAP1 0000113d: DUP2 0000113e: ADD 0000113f: PUSH1 0x40 00001141: MSTORE 00001142: DUP1 00001143: SWAP4 00001144: SWAP3 00001145: SWAP2 00001146: SWAP1 00001147: DUP2 00001148: DUP2 00001149: MSTORE 0000114a: PUSH1 0x20 0000114c: ADD 0000114d: DUP4 0000114e: DUP4 0000114f: DUP1 00001150: DUP3 00001151: DUP5 00001152: CALLDATACOPY 00001153: PUSH1 0x00 00001155: SWAP3 00001156: ADD 00001157: SWAP2 00001158: SWAP1 00001159: SWAP2 0000115a: MSTORE 0000115b: POP 0000115c: PUSH2 0x204a 0000115f: SWAP3 00001160: POP 00001161: POP 00001162: POP 00001163: JUMP 00001164: JUMPDEST 00001165: PUSH1 0x32 00001167: SLOAD 00001168: PUSH1 0x40 0000116a: DUP1 0000116b: MLOAD 0000116c: PUSH32 0x5c975abb00000000000000000000000000000000000000000000000000000000 0000118d: DUP2 0000118e: MSTORE 0000118f: SWAP1 00001190: MLOAD 00001191: PUSH1 0x00 00001193: SWAP3 00001194: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000011a9: AND 000011aa: SWAP2 000011ab: PUSH4 0x5c975abb 000011b0: SWAP2 000011b1: PUSH1 0x04 000011b3: DUP1 000011b4: DUP4 000011b5: ADD 000011b6: SWAP3 000011b7: PUSH1 0x20 000011b9: SWAP3 000011ba: SWAP2 000011bb: SWAP1 000011bc: DUP3 000011bd: SWAP1 000011be: SUB 000011bf: ADD 000011c0: DUP2 000011c1: DUP7 000011c2: GAS 000011c3: STATICCALL 000011c4: ISZERO 000011c5: DUP1 000011c6: ISZERO 000011c7: PUSH2 0x11d4 000011ca: JUMPI 000011cb: RETURNDATASIZE 000011cc: PUSH1 0x00 000011ce: DUP1 000011cf: RETURNDATACOPY 000011d0: RETURNDATASIZE 000011d1: PUSH1 0x00 000011d3: REVERT 000011d4: JUMPDEST 000011d5: POP 000011d6: POP 000011d7: POP 000011d8: POP 000011d9: PUSH1 0x40 000011db: MLOAD 000011dc: RETURNDATASIZE 000011dd: PUSH1 0x1f 000011df: NOT 000011e0: PUSH1 0x1f 000011e2: DUP3 000011e3: ADD 000011e4: AND 000011e5: DUP3 000011e6: ADD 000011e7: DUP1 000011e8: PUSH1 0x40 000011ea: MSTORE 000011eb: POP 000011ec: DUP2 000011ed: ADD 000011ee: SWAP1 000011ef: PUSH2 0x11f8 000011f2: SWAP2 000011f3: SWAP1 000011f4: PUSH2 0x2e0f 000011f7: JUMP 000011f8: JUMPDEST 000011f9: SWAP1 000011fa: POP 000011fb: SWAP1 000011fc: JUMP 000011fd: JUMPDEST 000011fe: PUSH2 0x09ef 00001201: DUP8 00001202: DUP8 00001203: CALLER 00001204: DUP9 00001205: DUP9 00001206: DUP9 00001207: DUP9 00001208: DUP9 00001209: DUP1 0000120a: DUP1 0000120b: PUSH1 0x1f 0000120d: ADD 0000120e: PUSH1 0x20 00001210: DUP1 00001211: SWAP2 00001212: DIV 00001213: MUL 00001214: PUSH1 0x20 00001216: ADD 00001217: PUSH1 0x40 00001219: MLOAD 0000121a: SWAP1 0000121b: DUP2 0000121c: ADD 0000121d: PUSH1 0x40 0000121f: MSTORE 00001220: DUP1 00001221: SWAP4 00001222: SWAP3 00001223: SWAP2 00001224: SWAP1 00001225: DUP2 00001226: DUP2 00001227: MSTORE 00001228: PUSH1 0x20 0000122a: ADD 0000122b: DUP4 0000122c: DUP4 0000122d: DUP1 0000122e: DUP3 0000122f: DUP5 00001230: CALLDATACOPY 00001231: PUSH1 0x00 00001233: SWAP3 00001234: ADD 00001235: SWAP2 00001236: SWAP1 00001237: SWAP2 00001238: MSTORE 00001239: POP 0000123a: PUSH2 0x204a 0000123d: SWAP3 0000123e: POP 0000123f: POP 00001240: POP 00001241: JUMP 00001242: JUMPDEST 00001243: PUSH2 0x124a 00001246: PUSH2 0x058e 00001249: JUMP 0000124a: JUMPDEST 0000124b: PUSH2 0x12d6 0000124e: JUMPI 0000124f: PUSH1 0x40 00001251: MLOAD 00001252: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001273: DUP2 00001274: MSTORE 00001275: PUSH1 0x20 00001277: PUSH1 0x04 00001279: DUP3 0000127a: ADD 0000127b: MSTORE 0000127c: PUSH1 0x37 0000127e: PUSH1 0x24 00001280: DUP3 00001281: ADD 00001282: MSTORE 00001283: PUSH32 0x5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c 000012a4: PUSH1 0x44 000012a6: DUP3 000012a7: ADD 000012a8: MSTORE 000012a9: PUSH32 0x792062652063616c6c65642066726f6d20616e20454f41000000000000000000 000012ca: PUSH1 0x64 000012cc: DUP3 000012cd: ADD 000012ce: MSTORE 000012cf: PUSH1 0x84 000012d1: ADD 000012d2: PUSH2 0x0219 000012d5: JUMP 000012d6: JUMPDEST 000012d7: PUSH2 0x103e 000012da: DUP7 000012db: DUP7 000012dc: CALLER 000012dd: CALLER 000012de: DUP9 000012df: DUP9 000012e0: DUP9 000012e1: DUP9 000012e2: DUP1 000012e3: DUP1 000012e4: PUSH1 0x1f 000012e6: ADD 000012e7: PUSH1 0x20 000012e9: DUP1 000012ea: SWAP2 000012eb: DIV 000012ec: MUL 000012ed: PUSH1 0x20 000012ef: ADD 000012f0: PUSH1 0x40 000012f2: MLOAD 000012f3: SWAP1 000012f4: DUP2 000012f5: ADD 000012f6: PUSH1 0x40 000012f8: MSTORE 000012f9: DUP1 000012fa: SWAP4 000012fb: SWAP3 000012fc: SWAP2 000012fd: SWAP1 000012fe: DUP2 000012ff: DUP2 00001300: MSTORE 00001301: PUSH1 0x20 00001303: ADD 00001304: DUP4 00001305: DUP4 00001306: DUP1 00001307: DUP3 00001308: DUP5 00001309: CALLDATACOPY 0000130a: PUSH1 0x00 0000130c: SWAP3 0000130d: ADD 0000130e: SWAP2 0000130f: SWAP1 00001310: SWAP2 00001311: MSTORE 00001312: POP 00001313: PUSH2 0x1c91 00001316: SWAP3 00001317: POP 00001318: POP 00001319: POP 0000131a: JUMP 0000131b: JUMPDEST 0000131c: PUSH2 0x05d8 0000131f: CALLER 00001320: DUP6 00001321: DUP6 00001322: DUP6 00001323: DUP6 00001324: DUP1 00001325: DUP1 00001326: PUSH1 0x1f 00001328: ADD 00001329: PUSH1 0x20 0000132b: DUP1 0000132c: SWAP2 0000132d: DIV 0000132e: MUL 0000132f: PUSH1 0x20 00001331: ADD 00001332: PUSH1 0x40 00001334: MLOAD 00001335: SWAP1 00001336: DUP2 00001337: ADD 00001338: PUSH1 0x40 0000133a: MSTORE 0000133b: DUP1 0000133c: SWAP4 0000133d: SWAP3 0000133e: SWAP2 0000133f: SWAP1 00001340: DUP2 00001341: DUP2 00001342: MSTORE 00001343: PUSH1 0x20 00001345: ADD 00001346: DUP4 00001347: DUP4 00001348: DUP1 00001349: DUP3 0000134a: DUP5 0000134b: CALLDATACOPY 0000134c: PUSH1 0x00 0000134e: SWAP3 0000134f: ADD 00001350: SWAP2 00001351: SWAP1 00001352: SWAP2 00001353: MSTORE 00001354: POP 00001355: PUSH2 0x05cb 00001358: SWAP3 00001359: POP 0000135a: POP 0000135b: POP 0000135c: JUMP 0000135d: JUMPDEST 0000135e: PUSH2 0x09ef 00001361: DUP8 00001362: DUP8 00001363: DUP8 00001364: DUP8 00001365: DUP8 00001366: DUP8 00001367: DUP8 00001368: PUSH2 0x05de 0000136b: JUMP 0000136c: JUMPDEST 0000136d: PUSH2 0x1374 00001370: PUSH2 0x058e 00001373: JUMP 00001374: JUMPDEST 00001375: PUSH2 0x1400 00001378: JUMPI 00001379: PUSH1 0x40 0000137b: MLOAD 0000137c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000139d: DUP2 0000139e: MSTORE 0000139f: PUSH1 0x20 000013a1: PUSH1 0x04 000013a3: DUP3 000013a4: ADD 000013a5: MSTORE 000013a6: PUSH1 0x37 000013a8: PUSH1 0x24 000013aa: DUP3 000013ab: ADD 000013ac: MSTORE 000013ad: PUSH32 0x5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c 000013ce: PUSH1 0x44 000013d0: DUP3 000013d1: ADD 000013d2: MSTORE 000013d3: PUSH32 0x792062652063616c6c65642066726f6d20616e20454f41000000000000000000 000013f4: PUSH1 0x64 000013f6: DUP3 000013f7: ADD 000013f8: MSTORE 000013f9: PUSH1 0x84 000013fb: ADD 000013fc: PUSH2 0x0219 000013ff: JUMP 00001400: JUMPDEST 00001401: PUSH2 0x0acf 00001404: CALLER 00001405: CALLER 00001406: DUP6 00001407: DUP6 00001408: DUP6 00001409: DUP1 0000140a: DUP1 0000140b: PUSH1 0x1f 0000140d: ADD 0000140e: PUSH1 0x20 00001410: DUP1 00001411: SWAP2 00001412: DIV 00001413: MUL 00001414: PUSH1 0x20 00001416: ADD 00001417: PUSH1 0x40 00001419: MLOAD 0000141a: SWAP1 0000141b: DUP2 0000141c: ADD 0000141d: PUSH1 0x40 0000141f: MSTORE 00001420: DUP1 00001421: SWAP4 00001422: SWAP3 00001423: SWAP2 00001424: SWAP1 00001425: DUP2 00001426: DUP2 00001427: MSTORE 00001428: PUSH1 0x20 0000142a: ADD 0000142b: DUP4 0000142c: DUP4 0000142d: DUP1 0000142e: DUP3 0000142f: DUP5 00001430: CALLDATACOPY 00001431: PUSH1 0x00 00001433: SWAP3 00001434: ADD 00001435: SWAP2 00001436: SWAP1 00001437: SWAP2 00001438: MSTORE 00001439: POP 0000143a: PUSH2 0x05cb 0000143d: SWAP3 0000143e: POP 0000143f: POP 00001440: POP 00001441: JUMP 00001442: JUMPDEST 00001443: PUSH1 0x00 00001445: SLOAD 00001446: PUSH2 0x0100 00001449: SWAP1 0000144a: DIV 0000144b: PUSH1 0xff 0000144d: AND 0000144e: ISZERO 0000144f: DUP1 00001450: DUP1 00001451: ISZERO 00001452: PUSH2 0x1462 00001455: JUMPI 00001456: POP 00001457: PUSH1 0x00 00001459: SLOAD 0000145a: PUSH1 0x01 0000145c: PUSH1 0xff 0000145e: SWAP1 0000145f: SWAP2 00001460: AND 00001461: LT 00001462: JUMPDEST 00001463: DUP1 00001464: PUSH2 0x147c 00001467: JUMPI 00001468: POP 00001469: ADDRESS 0000146a: EXTCODESIZE 0000146b: ISZERO 0000146c: DUP1 0000146d: ISZERO 0000146e: PUSH2 0x147c 00001471: JUMPI 00001472: POP 00001473: PUSH1 0x00 00001475: SLOAD 00001476: PUSH1 0xff 00001478: AND 00001479: PUSH1 0x01 0000147b: EQ 0000147c: JUMPDEST 0000147d: PUSH2 0x1508 00001480: JUMPI 00001481: PUSH1 0x40 00001483: MLOAD 00001484: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000014a5: DUP2 000014a6: MSTORE 000014a7: PUSH1 0x20 000014a9: PUSH1 0x04 000014ab: DUP3 000014ac: ADD 000014ad: MSTORE 000014ae: PUSH1 0x2e 000014b0: PUSH1 0x24 000014b2: DUP3 000014b3: ADD 000014b4: MSTORE 000014b5: PUSH32 0x496e697469616c697a61626c653a20636f6e747261637420697320616c726561 000014d6: PUSH1 0x44 000014d8: DUP3 000014d9: ADD 000014da: MSTORE 000014db: PUSH32 0x647920696e697469616c697a6564000000000000000000000000000000000000 000014fc: PUSH1 0x64 000014fe: DUP3 000014ff: ADD 00001500: MSTORE 00001501: PUSH1 0x84 00001503: ADD 00001504: PUSH2 0x0219 00001507: JUMP 00001508: JUMPDEST 00001509: PUSH1 0x00 0000150b: DUP1 0000150c: SLOAD 0000150d: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 0000152e: AND 0000152f: PUSH1 0x01 00001531: OR 00001532: SWAP1 00001533: SSTORE 00001534: DUP1 00001535: ISZERO 00001536: PUSH2 0x1566 00001539: JUMPI 0000153a: PUSH1 0x00 0000153c: DUP1 0000153d: SLOAD 0000153e: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff 0000155f: AND 00001560: PUSH2 0x0100 00001563: OR 00001564: SWAP1 00001565: SSTORE 00001566: JUMPDEST 00001567: PUSH1 0x32 00001569: DUP1 0000156a: SLOAD 0000156b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001580: DUP1 00001581: DUP7 00001582: AND 00001583: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 000015a4: SWAP3 000015a5: DUP4 000015a6: AND 000015a7: OR 000015a8: SWAP1 000015a9: SWAP3 000015aa: SSTORE 000015ab: PUSH1 0x33 000015ad: DUP1 000015ae: SLOAD 000015af: SWAP3 000015b0: DUP6 000015b1: AND 000015b2: SWAP3 000015b3: SWAP1 000015b4: SWAP2 000015b5: AND 000015b6: SWAP2 000015b7: SWAP1 000015b8: SWAP2 000015b9: OR 000015ba: SWAP1 000015bb: SSTORE 000015bc: PUSH2 0x15d9 000015bf: DUP5 000015c0: PUSH20 0x4200000000000000000000000000000000000010 000015d5: PUSH2 0x2059 000015d8: JUMP 000015d9: JUMPDEST 000015da: DUP1 000015db: ISZERO 000015dc: PUSH2 0x05d8 000015df: JUMPI 000015e0: PUSH1 0x00 000015e2: DUP1 000015e3: SLOAD 000015e4: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff 00001605: AND 00001606: SWAP1 00001607: SSTORE 00001608: PUSH1 0x40 0000160a: MLOAD 0000160b: PUSH1 0x01 0000160d: DUP2 0000160e: MSTORE 0000160f: PUSH32 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498 00001630: SWAP1 00001631: PUSH1 0x20 00001633: ADD 00001634: PUSH1 0x40 00001636: MLOAD 00001637: DUP1 00001638: SWAP2 00001639: SUB 0000163a: SWAP1 0000163b: LOG1 0000163c: POP 0000163d: POP 0000163e: POP 0000163f: POP 00001640: JUMP 00001641: JUMPDEST 00001642: PUSH2 0x05d8 00001645: CALLER 00001646: DUP6 00001647: CALLVALUE 00001648: DUP7 00001649: DUP7 0000164a: DUP7 0000164b: DUP1 0000164c: DUP1 0000164d: PUSH1 0x1f 0000164f: ADD 00001650: PUSH1 0x20 00001652: DUP1 00001653: SWAP2 00001654: DIV 00001655: MUL 00001656: PUSH1 0x20 00001658: ADD 00001659: PUSH1 0x40 0000165b: MLOAD 0000165c: SWAP1 0000165d: DUP2 0000165e: ADD 0000165f: PUSH1 0x40 00001661: MSTORE 00001662: DUP1 00001663: SWAP4 00001664: SWAP3 00001665: SWAP2 00001666: SWAP1 00001667: DUP2 00001668: DUP2 00001669: MSTORE 0000166a: PUSH1 0x20 0000166c: ADD 0000166d: DUP4 0000166e: DUP4 0000166f: DUP1 00001670: DUP3 00001671: DUP5 00001672: CALLDATACOPY 00001673: PUSH1 0x00 00001675: SWAP3 00001676: ADD 00001677: SWAP2 00001678: SWAP1 00001679: SWAP2 0000167a: MSTORE 0000167b: POP 0000167c: PUSH2 0x1684 0000167f: SWAP3 00001680: POP 00001681: POP 00001682: POP 00001683: JUMP 00001684: JUMPDEST 00001685: PUSH2 0x168c 00001688: PUSH2 0x1bc7 0000168b: JUMP 0000168c: JUMPDEST 0000168d: ISZERO 0000168e: PUSH2 0x1719 00001691: JUMPI 00001692: PUSH1 0x40 00001694: MLOAD 00001695: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000016b6: DUP2 000016b7: MSTORE 000016b8: PUSH1 0x20 000016ba: PUSH1 0x04 000016bc: DUP3 000016bd: ADD 000016be: MSTORE 000016bf: PUSH1 0x37 000016c1: PUSH1 0x24 000016c3: DUP3 000016c4: ADD 000016c5: MSTORE 000016c6: PUSH32 0x5374616e646172644272696467653a2063616e6e6f7420627269646765204554 000016e7: PUSH1 0x44 000016e9: DUP3 000016ea: ADD 000016eb: MSTORE 000016ec: PUSH32 0x48207769746820637573746f6d2067617320746f6b656e000000000000000000 0000170d: PUSH1 0x64 0000170f: DUP3 00001710: ADD 00001711: MSTORE 00001712: PUSH1 0x84 00001714: ADD 00001715: PUSH2 0x0219 00001718: JUMP 00001719: JUMPDEST 0000171a: DUP3 0000171b: CALLVALUE 0000171c: EQ 0000171d: PUSH2 0x17a8 00001720: JUMPI 00001721: PUSH1 0x40 00001723: MLOAD 00001724: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001745: DUP2 00001746: MSTORE 00001747: PUSH1 0x20 00001749: PUSH1 0x04 0000174b: DUP3 0000174c: ADD 0000174d: MSTORE 0000174e: PUSH1 0x3e 00001750: PUSH1 0x24 00001752: DUP3 00001753: ADD 00001754: MSTORE 00001755: PUSH32 0x5374616e646172644272696467653a206272696467696e6720455448206d7573 00001776: PUSH1 0x44 00001778: DUP3 00001779: ADD 0000177a: MSTORE 0000177b: PUSH32 0x7420696e636c7564652073756666696369656e74204554482076616c75650000 0000179c: PUSH1 0x64 0000179e: DUP3 0000179f: ADD 000017a0: MSTORE 000017a1: PUSH1 0x84 000017a3: ADD 000017a4: PUSH2 0x0219 000017a7: JUMP 000017a8: JUMPDEST 000017a9: PUSH2 0x17b4 000017ac: DUP6 000017ad: DUP6 000017ae: DUP6 000017af: DUP5 000017b0: PUSH2 0x2143 000017b3: JUMP 000017b4: JUMPDEST 000017b5: PUSH1 0x03 000017b7: SLOAD 000017b8: PUSH1 0x04 000017ba: SLOAD 000017bb: PUSH1 0x40 000017bd: MLOAD 000017be: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000017d3: SWAP3 000017d4: DUP4 000017d5: AND 000017d6: SWAP3 000017d7: PUSH4 0x3dbb202b 000017dc: SWAP3 000017dd: DUP8 000017de: SWAP3 000017df: SWAP2 000017e0: AND 000017e1: SWAP1 000017e2: PUSH32 0x1635f5fd00000000000000000000000000000000000000000000000000000000 00001803: SWAP1 00001804: PUSH2 0x1817 00001807: SWAP1 00001808: DUP12 00001809: SWAP1 0000180a: DUP12 0000180b: SWAP1 0000180c: DUP7 0000180d: SWAP1 0000180e: DUP11 0000180f: SWAP1 00001810: PUSH1 0x24 00001812: ADD 00001813: PUSH2 0x2e31 00001816: JUMP 00001817: JUMPDEST 00001818: PUSH1 0x40 0000181a: DUP1 0000181b: MLOAD 0000181c: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 0000183d: DUP2 0000183e: DUP5 0000183f: SUB 00001840: ADD 00001841: DUP2 00001842: MSTORE 00001843: SWAP2 00001844: DUP2 00001845: MSTORE 00001846: PUSH1 0x20 00001848: DUP3 00001849: ADD 0000184a: DUP1 0000184b: MLOAD 0000184c: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00001869: AND 0000186a: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 0000188b: SWAP5 0000188c: DUP6 0000188d: AND 0000188e: OR 0000188f: SWAP1 00001890: MSTORE 00001891: MLOAD 00001892: PUSH1 0xe0 00001894: DUP7 00001895: SWAP1 00001896: SHL 00001897: SWAP1 00001898: SWAP3 00001899: AND 0000189a: DUP3 0000189b: MSTORE 0000189c: PUSH2 0x18aa 0000189f: SWAP3 000018a0: SWAP2 000018a1: DUP9 000018a2: SWAP1 000018a3: PUSH1 0x04 000018a5: ADD 000018a6: PUSH2 0x2e7a 000018a9: JUMP 000018aa: JUMPDEST 000018ab: PUSH1 0x00 000018ad: PUSH1 0x40 000018af: MLOAD 000018b0: DUP1 000018b1: DUP4 000018b2: SUB 000018b3: DUP2 000018b4: DUP6 000018b5: DUP9 000018b6: DUP1 000018b7: EXTCODESIZE 000018b8: ISZERO 000018b9: DUP1 000018ba: ISZERO 000018bb: PUSH2 0x18c3 000018be: JUMPI 000018bf: PUSH1 0x00 000018c1: DUP1 000018c2: REVERT 000018c3: JUMPDEST 000018c4: POP 000018c5: GAS 000018c6: CALL 000018c7: ISZERO 000018c8: DUP1 000018c9: ISZERO 000018ca: PUSH2 0x18d7 000018cd: JUMPI 000018ce: RETURNDATASIZE 000018cf: PUSH1 0x00 000018d1: DUP1 000018d2: RETURNDATACOPY 000018d3: RETURNDATASIZE 000018d4: PUSH1 0x00 000018d6: REVERT 000018d7: JUMPDEST 000018d8: POP 000018d9: POP 000018da: POP 000018db: POP 000018dc: POP 000018dd: POP 000018de: POP 000018df: POP 000018e0: POP 000018e1: POP 000018e2: JUMP 000018e3: JUMPDEST 000018e4: PUSH1 0x00 000018e6: PUSH2 0x190f 000018e9: DUP3 000018ea: PUSH32 0x1d1d8b6300000000000000000000000000000000000000000000000000000000 0000190b: PUSH2 0x21b6 0000190e: JUMP 0000190f: JUMPDEST 00001910: DUP1 00001911: PUSH2 0x193f 00001914: JUMPI 00001915: POP 00001916: PUSH2 0x193f 00001919: DUP3 0000191a: PUSH32 0xec4fc8e300000000000000000000000000000000000000000000000000000000 0000193b: PUSH2 0x21b6 0000193e: JUMP 0000193f: JUMPDEST 00001940: SWAP3 00001941: SWAP2 00001942: POP 00001943: POP 00001944: JUMP 00001945: JUMPDEST 00001946: PUSH1 0x00 00001948: PUSH2 0x1971 0000194b: DUP4 0000194c: PUSH32 0x1d1d8b6300000000000000000000000000000000000000000000000000000000 0000196d: PUSH2 0x21b6 00001970: JUMP 00001971: JUMPDEST 00001972: ISZERO 00001973: PUSH2 0x1a1a 00001976: JUMPI 00001977: DUP3 00001978: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000198d: AND 0000198e: PUSH4 0xc01e1bd6 00001993: PUSH1 0x40 00001995: MLOAD 00001996: DUP2 00001997: PUSH4 0xffffffff 0000199c: AND 0000199d: PUSH1 0xe0 0000199f: SHL 000019a0: DUP2 000019a1: MSTORE 000019a2: PUSH1 0x04 000019a4: ADD 000019a5: PUSH1 0x20 000019a7: PUSH1 0x40 000019a9: MLOAD 000019aa: DUP1 000019ab: DUP4 000019ac: SUB 000019ad: DUP2 000019ae: DUP7 000019af: GAS 000019b0: STATICCALL 000019b1: ISZERO 000019b2: DUP1 000019b3: ISZERO 000019b4: PUSH2 0x19c1 000019b7: JUMPI 000019b8: RETURNDATASIZE 000019b9: PUSH1 0x00 000019bb: DUP1 000019bc: RETURNDATACOPY 000019bd: RETURNDATASIZE 000019be: PUSH1 0x00 000019c0: REVERT 000019c1: JUMPDEST 000019c2: POP 000019c3: POP 000019c4: POP 000019c5: POP 000019c6: PUSH1 0x40 000019c8: MLOAD 000019c9: RETURNDATASIZE 000019ca: PUSH1 0x1f 000019cc: NOT 000019cd: PUSH1 0x1f 000019cf: DUP3 000019d0: ADD 000019d1: AND 000019d2: DUP3 000019d3: ADD 000019d4: DUP1 000019d5: PUSH1 0x40 000019d7: MSTORE 000019d8: POP 000019d9: DUP2 000019da: ADD 000019db: SWAP1 000019dc: PUSH2 0x19e5 000019df: SWAP2 000019e0: SWAP1 000019e1: PUSH2 0x2dac 000019e4: JUMP 000019e5: JUMPDEST 000019e6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000019fb: AND 000019fc: DUP3 000019fd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a12: AND 00001a13: EQ 00001a14: SWAP1 00001a15: POP 00001a16: PUSH2 0x193f 00001a19: JUMP 00001a1a: JUMPDEST 00001a1b: DUP3 00001a1c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a31: AND 00001a32: PUSH4 0xd6c0b2c4 00001a37: PUSH1 0x40 00001a39: MLOAD 00001a3a: DUP2 00001a3b: PUSH4 0xffffffff 00001a40: AND 00001a41: PUSH1 0xe0 00001a43: SHL 00001a44: DUP2 00001a45: MSTORE 00001a46: PUSH1 0x04 00001a48: ADD 00001a49: PUSH1 0x20 00001a4b: PUSH1 0x40 00001a4d: MLOAD 00001a4e: DUP1 00001a4f: DUP4 00001a50: SUB 00001a51: DUP2 00001a52: DUP7 00001a53: GAS 00001a54: STATICCALL 00001a55: ISZERO 00001a56: DUP1 00001a57: ISZERO 00001a58: PUSH2 0x19c1 00001a5b: JUMPI 00001a5c: RETURNDATASIZE 00001a5d: PUSH1 0x00 00001a5f: DUP1 00001a60: RETURNDATACOPY 00001a61: RETURNDATASIZE 00001a62: PUSH1 0x00 00001a64: REVERT 00001a65: JUMPDEST 00001a66: PUSH1 0x40 00001a68: MLOAD 00001a69: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a7e: DUP4 00001a7f: AND 00001a80: PUSH1 0x24 00001a82: DUP3 00001a83: ADD 00001a84: MSTORE 00001a85: PUSH1 0x44 00001a87: DUP2 00001a88: ADD 00001a89: DUP3 00001a8a: SWAP1 00001a8b: MSTORE 00001a8c: PUSH2 0x0acf 00001a8f: SWAP1 00001a90: DUP5 00001a91: SWAP1 00001a92: PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000 00001ab3: SWAP1 00001ab4: PUSH1 0x64 00001ab6: ADD 00001ab7: JUMPDEST 00001ab8: PUSH1 0x40 00001aba: DUP1 00001abb: MLOAD 00001abc: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00001add: DUP2 00001ade: DUP5 00001adf: SUB 00001ae0: ADD 00001ae1: DUP2 00001ae2: MSTORE 00001ae3: SWAP2 00001ae4: SWAP1 00001ae5: MSTORE 00001ae6: PUSH1 0x20 00001ae8: DUP2 00001ae9: ADD 00001aea: DUP1 00001aeb: MLOAD 00001aec: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00001b09: AND 00001b0a: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 00001b2b: SWAP1 00001b2c: SWAP4 00001b2d: AND 00001b2e: SWAP3 00001b2f: SWAP1 00001b30: SWAP3 00001b31: OR 00001b32: SWAP1 00001b33: SWAP2 00001b34: MSTORE 00001b35: PUSH2 0x21d9 00001b38: JUMP 00001b39: JUMPDEST 00001b3a: DUP4 00001b3b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b50: AND 00001b51: DUP6 00001b52: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b67: AND 00001b68: DUP8 00001b69: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b7e: AND 00001b7f: PUSH32 0x3ceee06c1e37648fcbb6ed52e17b3e1f275a1f8c7b22a84b2b84732431e046b3 00001ba0: DUP7 00001ba1: DUP7 00001ba2: DUP7 00001ba3: PUSH1 0x40 00001ba5: MLOAD 00001ba6: PUSH2 0x1bb1 00001ba9: SWAP4 00001baa: SWAP3 00001bab: SWAP2 00001bac: SWAP1 00001bad: PUSH2 0x2ebf 00001bb0: JUMP 00001bb1: JUMPDEST 00001bb2: PUSH1 0x40 00001bb4: MLOAD 00001bb5: DUP1 00001bb6: SWAP2 00001bb7: SUB 00001bb8: SWAP1 00001bb9: LOG4 00001bba: PUSH2 0x103e 00001bbd: DUP7 00001bbe: DUP7 00001bbf: DUP7 00001bc0: DUP7 00001bc1: DUP7 00001bc2: DUP7 00001bc3: PUSH2 0x22e5 00001bc6: JUMP 00001bc7: JUMPDEST 00001bc8: PUSH1 0x00 00001bca: DUP1 00001bcb: PUSH2 0x1bd2 00001bce: PUSH2 0x236d 00001bd1: JUMP 00001bd2: JUMPDEST 00001bd3: POP 00001bd4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001be9: AND 00001bea: PUSH20 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee 00001bff: EQ 00001c00: ISZERO 00001c01: SWAP3 00001c02: SWAP2 00001c03: POP 00001c04: POP 00001c05: JUMP 00001c06: JUMPDEST 00001c07: DUP3 00001c08: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001c1d: AND 00001c1e: DUP5 00001c1f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001c34: AND 00001c35: PUSH32 0x2ac69ee804d9a7a0984249f508dfab7cb2534b465b6ce1580f99a38ba9c5e631 00001c56: DUP5 00001c57: DUP5 00001c58: PUSH1 0x40 00001c5a: MLOAD 00001c5b: PUSH2 0x1c65 00001c5e: SWAP3 00001c5f: SWAP2 00001c60: SWAP1 00001c61: PUSH2 0x2efd 00001c64: JUMP 00001c65: JUMPDEST 00001c66: PUSH1 0x40 00001c68: MLOAD 00001c69: DUP1 00001c6a: SWAP2 00001c6b: SUB 00001c6c: SWAP1 00001c6d: LOG3 00001c6e: PUSH2 0x05d8 00001c71: DUP5 00001c72: DUP5 00001c73: DUP5 00001c74: DUP5 00001c75: PUSH2 0x240a 00001c78: JUMP 00001c79: JUMPDEST 00001c7a: PUSH1 0x00 00001c7c: DUP1 00001c7d: PUSH1 0x00 00001c7f: DUP4 00001c80: MLOAD 00001c81: PUSH1 0x20 00001c83: DUP6 00001c84: ADD 00001c85: DUP7 00001c86: DUP10 00001c87: DUP10 00001c88: CALL 00001c89: SWAP6 00001c8a: SWAP5 00001c8b: POP 00001c8c: POP 00001c8d: POP 00001c8e: POP 00001c8f: POP 00001c90: JUMP 00001c91: JUMPDEST 00001c92: CALLVALUE 00001c93: ISZERO 00001c94: PUSH2 0x1d1f 00001c97: JUMPI 00001c98: PUSH1 0x40 00001c9a: MLOAD 00001c9b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001cbc: DUP2 00001cbd: MSTORE 00001cbe: PUSH1 0x20 00001cc0: PUSH1 0x04 00001cc2: DUP3 00001cc3: ADD 00001cc4: MSTORE 00001cc5: PUSH1 0x21 00001cc7: PUSH1 0x24 00001cc9: DUP3 00001cca: ADD 00001ccb: MSTORE 00001ccc: PUSH32 0x5374616e646172644272696467653a2063616e6e6f742073656e642076616c75 00001ced: PUSH1 0x44 00001cef: DUP3 00001cf0: ADD 00001cf1: MSTORE 00001cf2: PUSH32 0x6500000000000000000000000000000000000000000000000000000000000000 00001d13: PUSH1 0x64 00001d15: DUP3 00001d16: ADD 00001d17: MSTORE 00001d18: PUSH1 0x84 00001d1a: ADD 00001d1b: PUSH2 0x0219 00001d1e: JUMP 00001d1f: JUMPDEST 00001d20: PUSH2 0x1d28 00001d23: DUP8 00001d24: PUSH2 0x18e3 00001d27: JUMP 00001d28: JUMPDEST 00001d29: ISZERO 00001d2a: PUSH2 0x1e76 00001d2d: JUMPI 00001d2e: PUSH2 0x1d37 00001d31: DUP8 00001d32: DUP8 00001d33: PUSH2 0x1945 00001d36: JUMP 00001d37: JUMPDEST 00001d38: PUSH2 0x1de9 00001d3b: JUMPI 00001d3c: PUSH1 0x40 00001d3e: MLOAD 00001d3f: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001d60: DUP2 00001d61: MSTORE 00001d62: PUSH1 0x20 00001d64: PUSH1 0x04 00001d66: DUP3 00001d67: ADD 00001d68: MSTORE 00001d69: PUSH1 0x4a 00001d6b: PUSH1 0x24 00001d6d: DUP3 00001d6e: ADD 00001d6f: MSTORE 00001d70: PUSH32 0x5374616e646172644272696467653a2077726f6e672072656d6f746520746f6b 00001d91: PUSH1 0x44 00001d93: DUP3 00001d94: ADD 00001d95: MSTORE 00001d96: PUSH32 0x656e20666f72204f7074696d69736d204d696e7461626c65204552433230206c 00001db7: PUSH1 0x64 00001db9: DUP3 00001dba: ADD 00001dbb: MSTORE 00001dbc: PUSH32 0x6f63616c20746f6b656e00000000000000000000000000000000000000000000 00001ddd: PUSH1 0x84 00001ddf: DUP3 00001de0: ADD 00001de1: MSTORE 00001de2: PUSH1 0xa4 00001de4: ADD 00001de5: PUSH2 0x0219 00001de8: JUMP 00001de9: JUMPDEST 00001dea: PUSH1 0x40 00001dec: MLOAD 00001ded: PUSH32 0x9dc29fac00000000000000000000000000000000000000000000000000000000 00001e0e: DUP2 00001e0f: MSTORE 00001e10: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001e25: DUP7 00001e26: DUP2 00001e27: AND 00001e28: PUSH1 0x04 00001e2a: DUP4 00001e2b: ADD 00001e2c: MSTORE 00001e2d: PUSH1 0x24 00001e2f: DUP3 00001e30: ADD 00001e31: DUP6 00001e32: SWAP1 00001e33: MSTORE 00001e34: DUP9 00001e35: AND 00001e36: SWAP1 00001e37: PUSH4 0x9dc29fac 00001e3c: SWAP1 00001e3d: PUSH1 0x44 00001e3f: ADD 00001e40: PUSH1 0x00 00001e42: PUSH1 0x40 00001e44: MLOAD 00001e45: DUP1 00001e46: DUP4 00001e47: SUB 00001e48: DUP2 00001e49: PUSH1 0x00 00001e4b: DUP8 00001e4c: DUP1 00001e4d: EXTCODESIZE 00001e4e: ISZERO 00001e4f: DUP1 00001e50: ISZERO 00001e51: PUSH2 0x1e59 00001e54: JUMPI 00001e55: PUSH1 0x00 00001e57: DUP1 00001e58: REVERT 00001e59: JUMPDEST 00001e5a: POP 00001e5b: GAS 00001e5c: CALL 00001e5d: ISZERO 00001e5e: DUP1 00001e5f: ISZERO 00001e60: PUSH2 0x1e6d 00001e63: JUMPI 00001e64: RETURNDATASIZE 00001e65: PUSH1 0x00 00001e67: DUP1 00001e68: RETURNDATACOPY 00001e69: RETURNDATASIZE 00001e6a: PUSH1 0x00 00001e6c: REVERT 00001e6d: JUMPDEST 00001e6e: POP 00001e6f: POP 00001e70: POP 00001e71: POP 00001e72: PUSH2 0x1f0a 00001e75: JUMP 00001e76: JUMPDEST 00001e77: PUSH2 0x1e98 00001e7a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001e8f: DUP9 00001e90: AND 00001e91: DUP7 00001e92: ADDRESS 00001e93: DUP7 00001e94: PUSH2 0x2477 00001e97: JUMP 00001e98: JUMPDEST 00001e99: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001eae: DUP1 00001eaf: DUP9 00001eb0: AND 00001eb1: PUSH1 0x00 00001eb3: SWAP1 00001eb4: DUP2 00001eb5: MSTORE 00001eb6: PUSH1 0x02 00001eb8: PUSH1 0x20 00001eba: SWAP1 00001ebb: DUP2 00001ebc: MSTORE 00001ebd: PUSH1 0x40 00001ebf: DUP1 00001ec0: DUP4 00001ec1: KECCAK256 00001ec2: SWAP4 00001ec3: DUP11 00001ec4: AND 00001ec5: DUP4 00001ec6: MSTORE 00001ec7: SWAP3 00001ec8: SWAP1 00001ec9: MSTORE 00001eca: KECCAK256 00001ecb: SLOAD 00001ecc: PUSH2 0x1ed6 00001ecf: SWAP1 00001ed0: DUP5 00001ed1: SWAP1 00001ed2: PUSH2 0x2f16 00001ed5: JUMP 00001ed6: JUMPDEST 00001ed7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001eec: DUP1 00001eed: DUP10 00001eee: AND 00001eef: PUSH1 0x00 00001ef1: SWAP1 00001ef2: DUP2 00001ef3: MSTORE 00001ef4: PUSH1 0x02 00001ef6: PUSH1 0x20 00001ef8: SWAP1 00001ef9: DUP2 00001efa: MSTORE 00001efb: PUSH1 0x40 00001efd: DUP1 00001efe: DUP4 00001eff: KECCAK256 00001f00: SWAP4 00001f01: DUP12 00001f02: AND 00001f03: DUP4 00001f04: MSTORE 00001f05: SWAP3 00001f06: SWAP1 00001f07: MSTORE 00001f08: KECCAK256 00001f09: SSTORE 00001f0a: JUMPDEST 00001f0b: PUSH2 0x1f18 00001f0e: DUP8 00001f0f: DUP8 00001f10: DUP8 00001f11: DUP8 00001f12: DUP8 00001f13: DUP7 00001f14: PUSH2 0x24d5 00001f17: JUMP 00001f18: JUMPDEST 00001f19: PUSH1 0x03 00001f1b: SLOAD 00001f1c: PUSH1 0x04 00001f1e: SLOAD 00001f1f: PUSH1 0x40 00001f21: MLOAD 00001f22: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001f37: SWAP3 00001f38: DUP4 00001f39: AND 00001f3a: SWAP3 00001f3b: PUSH4 0x3dbb202b 00001f40: SWAP3 00001f41: AND 00001f42: SWAP1 00001f43: PUSH32 0x0166a07a00000000000000000000000000000000000000000000000000000000 00001f64: SWAP1 00001f65: PUSH2 0x1f7c 00001f68: SWAP1 00001f69: DUP12 00001f6a: SWAP1 00001f6b: DUP14 00001f6c: SWAP1 00001f6d: DUP13 00001f6e: SWAP1 00001f6f: DUP13 00001f70: SWAP1 00001f71: DUP13 00001f72: SWAP1 00001f73: DUP12 00001f74: SWAP1 00001f75: PUSH1 0x24 00001f77: ADD 00001f78: PUSH2 0x2f2e 00001f7b: JUMP 00001f7c: JUMPDEST 00001f7d: PUSH1 0x40 00001f7f: DUP1 00001f80: MLOAD 00001f81: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00001fa2: DUP2 00001fa3: DUP5 00001fa4: SUB 00001fa5: ADD 00001fa6: DUP2 00001fa7: MSTORE 00001fa8: SWAP2 00001fa9: DUP2 00001faa: MSTORE 00001fab: PUSH1 0x20 00001fad: DUP3 00001fae: ADD 00001faf: DUP1 00001fb0: MLOAD 00001fb1: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00001fce: AND 00001fcf: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 00001ff0: SWAP5 00001ff1: DUP6 00001ff2: AND 00001ff3: OR 00001ff4: SWAP1 00001ff5: MSTORE 00001ff6: MLOAD 00001ff7: PUSH1 0xe0 00001ff9: DUP6 00001ffa: SWAP1 00001ffb: SHL 00001ffc: SWAP1 00001ffd: SWAP3 00001ffe: AND 00001fff: DUP3 00002000: MSTORE 00002001: PUSH2 0x200f 00002004: SWAP3 00002005: SWAP2 00002006: DUP8 00002007: SWAP1 00002008: PUSH1 0x04 0000200a: ADD 0000200b: PUSH2 0x2e7a 0000200e: JUMP 0000200f: JUMPDEST 00002010: PUSH1 0x00 00002012: PUSH1 0x40 00002014: MLOAD 00002015: DUP1 00002016: DUP4 00002017: SUB 00002018: DUP2 00002019: PUSH1 0x00 0000201b: DUP8 0000201c: DUP1 0000201d: EXTCODESIZE 0000201e: ISZERO 0000201f: DUP1 00002020: ISZERO 00002021: PUSH2 0x2029 00002024: JUMPI 00002025: PUSH1 0x00 00002027: DUP1 00002028: REVERT 00002029: JUMPDEST 0000202a: POP 0000202b: GAS 0000202c: CALL 0000202d: ISZERO 0000202e: DUP1 0000202f: ISZERO 00002030: PUSH2 0x203d 00002033: JUMPI 00002034: RETURNDATASIZE 00002035: PUSH1 0x00 00002037: DUP1 00002038: RETURNDATACOPY 00002039: RETURNDATASIZE 0000203a: PUSH1 0x00 0000203c: REVERT 0000203d: JUMPDEST 0000203e: POP 0000203f: POP 00002040: POP 00002041: POP 00002042: POP 00002043: POP 00002044: POP 00002045: POP 00002046: POP 00002047: POP 00002048: POP 00002049: JUMP 0000204a: JUMPDEST 0000204b: PUSH2 0x09ef 0000204e: DUP8 0000204f: DUP8 00002050: DUP8 00002051: DUP8 00002052: DUP8 00002053: DUP8 00002054: DUP8 00002055: PUSH2 0x1c91 00002058: JUMP 00002059: JUMPDEST 0000205a: PUSH1 0x00 0000205c: SLOAD 0000205d: PUSH2 0x0100 00002060: SWAP1 00002061: DIV 00002062: PUSH1 0xff 00002064: AND 00002065: PUSH2 0x20f0 00002068: JUMPI 00002069: PUSH1 0x40 0000206b: MLOAD 0000206c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000208d: DUP2 0000208e: MSTORE 0000208f: PUSH1 0x20 00002091: PUSH1 0x04 00002093: DUP3 00002094: ADD 00002095: MSTORE 00002096: PUSH1 0x2b 00002098: PUSH1 0x24 0000209a: DUP3 0000209b: ADD 0000209c: MSTORE 0000209d: PUSH32 0x496e697469616c697a61626c653a20636f6e7472616374206973206e6f742069 000020be: PUSH1 0x44 000020c0: DUP3 000020c1: ADD 000020c2: MSTORE 000020c3: PUSH32 0x6e697469616c697a696e67000000000000000000000000000000000000000000 000020e4: PUSH1 0x64 000020e6: DUP3 000020e7: ADD 000020e8: MSTORE 000020e9: PUSH1 0x84 000020eb: ADD 000020ec: PUSH2 0x0219 000020ef: JUMP 000020f0: JUMPDEST 000020f1: PUSH1 0x03 000020f3: DUP1 000020f4: SLOAD 000020f5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000210a: SWAP4 0000210b: DUP5 0000210c: AND 0000210d: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 0000212e: SWAP2 0000212f: DUP3 00002130: AND 00002131: OR 00002132: SWAP1 00002133: SWAP2 00002134: SSTORE 00002135: PUSH1 0x04 00002137: DUP1 00002138: SLOAD 00002139: SWAP3 0000213a: SWAP1 0000213b: SWAP4 0000213c: AND 0000213d: SWAP2 0000213e: AND 0000213f: OR 00002140: SWAP1 00002141: SSTORE 00002142: JUMP 00002143: JUMPDEST 00002144: DUP3 00002145: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000215a: AND 0000215b: DUP5 0000215c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002171: AND 00002172: PUSH32 0x35d79ab81f2b2017e19afb5c5571778877782d7a8786f5907f93b0f4702f4f23 00002193: DUP5 00002194: DUP5 00002195: PUSH1 0x40 00002197: MLOAD 00002198: PUSH2 0x21a2 0000219b: SWAP3 0000219c: SWAP2 0000219d: SWAP1 0000219e: PUSH2 0x2efd 000021a1: JUMP 000021a2: JUMPDEST 000021a3: PUSH1 0x40 000021a5: MLOAD 000021a6: DUP1 000021a7: SWAP2 000021a8: SUB 000021a9: SWAP1 000021aa: LOG3 000021ab: PUSH2 0x05d8 000021ae: DUP5 000021af: DUP5 000021b0: DUP5 000021b1: DUP5 000021b2: PUSH2 0x2563 000021b5: JUMP 000021b6: JUMPDEST 000021b7: PUSH1 0x00 000021b9: PUSH2 0x21c1 000021bc: DUP4 000021bd: PUSH2 0x25c2 000021c0: JUMP 000021c1: JUMPDEST 000021c2: DUP1 000021c3: ISZERO 000021c4: PUSH2 0x21d2 000021c7: JUMPI 000021c8: POP 000021c9: PUSH2 0x21d2 000021cc: DUP4 000021cd: DUP4 000021ce: PUSH2 0x2626 000021d1: JUMP 000021d2: JUMPDEST 000021d3: SWAP4 000021d4: SWAP3 000021d5: POP 000021d6: POP 000021d7: POP 000021d8: JUMP 000021d9: JUMPDEST 000021da: PUSH1 0x00 000021dc: PUSH2 0x223b 000021df: DUP3 000021e0: PUSH1 0x40 000021e2: MLOAD 000021e3: DUP1 000021e4: PUSH1 0x40 000021e6: ADD 000021e7: PUSH1 0x40 000021e9: MSTORE 000021ea: DUP1 000021eb: PUSH1 0x20 000021ed: DUP2 000021ee: MSTORE 000021ef: PUSH1 0x20 000021f1: ADD 000021f2: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564 00002213: DUP2 00002214: MSTORE 00002215: POP 00002216: DUP6 00002217: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000222c: AND 0000222d: PUSH2 0x26f5 00002230: SWAP1 00002231: SWAP3 00002232: SWAP2 00002233: SWAP1 00002234: PUSH4 0xffffffff 00002239: AND 0000223a: JUMP 0000223b: JUMPDEST 0000223c: DUP1 0000223d: MLOAD 0000223e: SWAP1 0000223f: SWAP2 00002240: POP 00002241: ISZERO 00002242: PUSH2 0x0acf 00002245: JUMPI 00002246: DUP1 00002247: DUP1 00002248: PUSH1 0x20 0000224a: ADD 0000224b: SWAP1 0000224c: MLOAD 0000224d: DUP2 0000224e: ADD 0000224f: SWAP1 00002250: PUSH2 0x2259 00002253: SWAP2 00002254: SWAP1 00002255: PUSH2 0x2e0f 00002258: JUMP 00002259: JUMPDEST 0000225a: PUSH2 0x0acf 0000225d: JUMPI 0000225e: PUSH1 0x40 00002260: MLOAD 00002261: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002282: DUP2 00002283: MSTORE 00002284: PUSH1 0x20 00002286: PUSH1 0x04 00002288: DUP3 00002289: ADD 0000228a: MSTORE 0000228b: PUSH1 0x2a 0000228d: PUSH1 0x24 0000228f: DUP3 00002290: ADD 00002291: MSTORE 00002292: PUSH32 0x5361666545524332303a204552433230206f7065726174696f6e20646964206e 000022b3: PUSH1 0x44 000022b5: DUP3 000022b6: ADD 000022b7: MSTORE 000022b8: PUSH32 0x6f74207375636365656400000000000000000000000000000000000000000000 000022d9: PUSH1 0x64 000022db: DUP3 000022dc: ADD 000022dd: MSTORE 000022de: PUSH1 0x84 000022e0: ADD 000022e1: PUSH2 0x0219 000022e4: JUMP 000022e5: JUMPDEST 000022e6: DUP4 000022e7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000022fc: AND 000022fd: DUP6 000022fe: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002313: AND 00002314: DUP8 00002315: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000232a: AND 0000232b: PUSH32 0xd59c65b35445225835c83f50b6ede06a7be047d22e357073e250d9af537518cd 0000234c: DUP7 0000234d: DUP7 0000234e: DUP7 0000234f: PUSH1 0x40 00002351: MLOAD 00002352: PUSH2 0x235d 00002355: SWAP4 00002356: SWAP3 00002357: SWAP2 00002358: SWAP1 00002359: PUSH2 0x2ebf 0000235c: JUMP 0000235d: JUMPDEST 0000235e: PUSH1 0x40 00002360: MLOAD 00002361: DUP1 00002362: SWAP2 00002363: SUB 00002364: SWAP1 00002365: LOG4 00002366: POP 00002367: POP 00002368: POP 00002369: POP 0000236a: POP 0000236b: POP 0000236c: JUMP 0000236d: JUMPDEST 0000236e: PUSH1 0x33 00002370: SLOAD 00002371: PUSH1 0x40 00002373: DUP1 00002374: MLOAD 00002375: PUSH32 0x4397dfef00000000000000000000000000000000000000000000000000000000 00002396: DUP2 00002397: MSTORE 00002398: DUP2 00002399: MLOAD 0000239a: PUSH1 0x00 0000239c: SWAP4 0000239d: DUP5 0000239e: SWAP4 0000239f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000023b4: SWAP1 000023b5: SWAP2 000023b6: AND 000023b7: SWAP3 000023b8: PUSH4 0x4397dfef 000023bd: SWAP3 000023be: PUSH1 0x04 000023c0: DUP1 000023c1: DUP4 000023c2: ADD 000023c3: SWAP4 000023c4: SWAP3 000023c5: DUP3 000023c6: SWAP1 000023c7: SUB 000023c8: ADD 000023c9: DUP2 000023ca: DUP7 000023cb: GAS 000023cc: STATICCALL 000023cd: ISZERO 000023ce: DUP1 000023cf: ISZERO 000023d0: PUSH2 0x23dd 000023d3: JUMPI 000023d4: RETURNDATASIZE 000023d5: PUSH1 0x00 000023d7: DUP1 000023d8: RETURNDATACOPY 000023d9: RETURNDATASIZE 000023da: PUSH1 0x00 000023dc: REVERT 000023dd: JUMPDEST 000023de: POP 000023df: POP 000023e0: POP 000023e1: POP 000023e2: PUSH1 0x40 000023e4: MLOAD 000023e5: RETURNDATASIZE 000023e6: PUSH1 0x1f 000023e8: NOT 000023e9: PUSH1 0x1f 000023eb: DUP3 000023ec: ADD 000023ed: AND 000023ee: DUP3 000023ef: ADD 000023f0: DUP1 000023f1: PUSH1 0x40 000023f3: MSTORE 000023f4: POP 000023f5: DUP2 000023f6: ADD 000023f7: SWAP1 000023f8: PUSH2 0x2401 000023fb: SWAP2 000023fc: SWAP1 000023fd: PUSH2 0x2f89 00002400: JUMP 00002401: JUMPDEST 00002402: SWAP1 00002403: SWAP4 00002404: SWAP1 00002405: SWAP3 00002406: POP 00002407: SWAP1 00002408: POP 00002409: JUMP 0000240a: JUMPDEST 0000240b: DUP3 0000240c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002421: AND 00002422: DUP5 00002423: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002438: AND 00002439: PUSH32 0x31b2166ff604fc5672ea5df08a78081d2bc6d746cadce880747f3643d819e83d 0000245a: DUP5 0000245b: DUP5 0000245c: PUSH1 0x40 0000245e: MLOAD 0000245f: PUSH2 0x2469 00002462: SWAP3 00002463: SWAP2 00002464: SWAP1 00002465: PUSH2 0x2efd 00002468: JUMP 00002469: JUMPDEST 0000246a: PUSH1 0x40 0000246c: MLOAD 0000246d: DUP1 0000246e: SWAP2 0000246f: SUB 00002470: SWAP1 00002471: LOG3 00002472: POP 00002473: POP 00002474: POP 00002475: POP 00002476: JUMP 00002477: JUMPDEST 00002478: PUSH1 0x40 0000247a: MLOAD 0000247b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002490: DUP1 00002491: DUP6 00002492: AND 00002493: PUSH1 0x24 00002495: DUP4 00002496: ADD 00002497: MSTORE 00002498: DUP4 00002499: AND 0000249a: PUSH1 0x44 0000249c: DUP3 0000249d: ADD 0000249e: MSTORE 0000249f: PUSH1 0x64 000024a1: DUP2 000024a2: ADD 000024a3: DUP3 000024a4: SWAP1 000024a5: MSTORE 000024a6: PUSH2 0x05d8 000024a9: SWAP1 000024aa: DUP6 000024ab: SWAP1 000024ac: PUSH32 0x23b872dd00000000000000000000000000000000000000000000000000000000 000024cd: SWAP1 000024ce: PUSH1 0x84 000024d0: ADD 000024d1: PUSH2 0x1ab7 000024d4: JUMP 000024d5: JUMPDEST 000024d6: DUP4 000024d7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000024ec: AND 000024ed: DUP6 000024ee: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002503: AND 00002504: DUP8 00002505: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000251a: AND 0000251b: PUSH32 0x718594027abd4eaed59f95162563e0cc6d0e8d5b86b1c7be8b1b0ac3343d0396 0000253c: DUP7 0000253d: DUP7 0000253e: DUP7 0000253f: PUSH1 0x40 00002541: MLOAD 00002542: PUSH2 0x254d 00002545: SWAP4 00002546: SWAP3 00002547: SWAP2 00002548: SWAP1 00002549: PUSH2 0x2ebf 0000254c: JUMP 0000254d: JUMPDEST 0000254e: PUSH1 0x40 00002550: MLOAD 00002551: DUP1 00002552: SWAP2 00002553: SUB 00002554: SWAP1 00002555: LOG4 00002556: PUSH2 0x103e 00002559: DUP7 0000255a: DUP7 0000255b: DUP7 0000255c: DUP7 0000255d: DUP7 0000255e: DUP7 0000255f: PUSH2 0x270c 00002562: JUMP 00002563: JUMPDEST 00002564: DUP3 00002565: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000257a: AND 0000257b: DUP5 0000257c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002591: AND 00002592: PUSH32 0x2849b43074093a05396b6f2a937dee8565b15a48a7b3d4bffb732a5017380af5 000025b3: DUP5 000025b4: DUP5 000025b5: PUSH1 0x40 000025b7: MLOAD 000025b8: PUSH2 0x2469 000025bb: SWAP3 000025bc: SWAP2 000025bd: SWAP1 000025be: PUSH2 0x2efd 000025c1: JUMP 000025c2: JUMPDEST 000025c3: PUSH1 0x00 000025c5: PUSH2 0x25ee 000025c8: DUP3 000025c9: PUSH32 0x01ffc9a700000000000000000000000000000000000000000000000000000000 000025ea: PUSH2 0x2626 000025ed: JUMP 000025ee: JUMPDEST 000025ef: DUP1 000025f0: ISZERO 000025f1: PUSH2 0x193f 000025f4: JUMPI 000025f5: POP 000025f6: PUSH2 0x261f 000025f9: DUP3 000025fa: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 0000261b: PUSH2 0x2626 0000261e: JUMP 0000261f: JUMPDEST 00002620: ISZERO 00002621: SWAP3 00002622: SWAP2 00002623: POP 00002624: POP 00002625: JUMP 00002626: JUMPDEST 00002627: PUSH1 0x40 00002629: DUP1 0000262a: MLOAD 0000262b: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 0000264c: DUP4 0000264d: AND 0000264e: PUSH1 0x24 00002650: DUP1 00002651: DUP4 00002652: ADD 00002653: SWAP2 00002654: SWAP1 00002655: SWAP2 00002656: MSTORE 00002657: DUP3 00002658: MLOAD 00002659: DUP1 0000265a: DUP4 0000265b: SUB 0000265c: SWAP1 0000265d: SWAP2 0000265e: ADD 0000265f: DUP2 00002660: MSTORE 00002661: PUSH1 0x44 00002663: SWAP1 00002664: SWAP2 00002665: ADD 00002666: SWAP1 00002667: SWAP2 00002668: MSTORE 00002669: PUSH1 0x20 0000266b: DUP1 0000266c: DUP3 0000266d: ADD 0000266e: DUP1 0000266f: MLOAD 00002670: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 0000268d: AND 0000268e: PUSH32 0x01ffc9a700000000000000000000000000000000000000000000000000000000 000026af: OR 000026b0: DUP2 000026b1: MSTORE 000026b2: DUP3 000026b3: MLOAD 000026b4: PUSH1 0x00 000026b6: SWAP4 000026b7: SWAP3 000026b8: DUP5 000026b9: SWAP3 000026ba: DUP4 000026bb: SWAP3 000026bc: DUP4 000026bd: SWAP3 000026be: SWAP2 000026bf: DUP4 000026c0: SWAP2 000026c1: SWAP1 000026c2: DUP11 000026c3: PUSH2 0x7530 000026c6: STATICCALL 000026c7: SWAP3 000026c8: POP 000026c9: RETURNDATASIZE 000026ca: SWAP2 000026cb: POP 000026cc: PUSH1 0x00 000026ce: MLOAD 000026cf: SWAP1 000026d0: POP 000026d1: DUP3 000026d2: DUP1 000026d3: ISZERO 000026d4: PUSH2 0x26de 000026d7: JUMPI 000026d8: POP 000026d9: PUSH1 0x20 000026db: DUP3 000026dc: LT 000026dd: ISZERO 000026de: JUMPDEST 000026df: DUP1 000026e0: ISZERO 000026e1: PUSH2 0x26ea 000026e4: JUMPI 000026e5: POP 000026e6: PUSH1 0x00 000026e8: DUP2 000026e9: GT 000026ea: JUMPDEST 000026eb: SWAP8 000026ec: SWAP7 000026ed: POP 000026ee: POP 000026ef: POP 000026f0: POP 000026f1: POP 000026f2: POP 000026f3: POP 000026f4: JUMP 000026f5: JUMPDEST 000026f6: PUSH1 0x60 000026f8: PUSH2 0x2704 000026fb: DUP5 000026fc: DUP5 000026fd: PUSH1 0x00 000026ff: DUP6 00002700: PUSH2 0x2784 00002703: JUMP 00002704: JUMPDEST 00002705: SWAP5 00002706: SWAP4 00002707: POP 00002708: POP 00002709: POP 0000270a: POP 0000270b: JUMP 0000270c: JUMPDEST 0000270d: DUP4 0000270e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002723: AND 00002724: DUP6 00002725: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000273a: AND 0000273b: DUP8 0000273c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002751: AND 00002752: PUSH32 0x7ff126db8024424bbfd9826e8ab82ff59136289ea440b04b39a0df1b03b9cabf 00002773: DUP7 00002774: DUP7 00002775: DUP7 00002776: PUSH1 0x40 00002778: MLOAD 00002779: PUSH2 0x235d 0000277c: SWAP4 0000277d: SWAP3 0000277e: SWAP2 0000277f: SWAP1 00002780: PUSH2 0x2ebf 00002783: JUMP 00002784: JUMPDEST 00002785: PUSH1 0x60 00002787: DUP3 00002788: SELFBALANCE 00002789: LT 0000278a: ISZERO 0000278b: PUSH2 0x2816 0000278e: JUMPI 0000278f: PUSH1 0x40 00002791: MLOAD 00002792: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000027b3: DUP2 000027b4: MSTORE 000027b5: PUSH1 0x20 000027b7: PUSH1 0x04 000027b9: DUP3 000027ba: ADD 000027bb: MSTORE 000027bc: PUSH1 0x26 000027be: PUSH1 0x24 000027c0: DUP3 000027c1: ADD 000027c2: MSTORE 000027c3: PUSH32 0x416464726573733a20696e73756666696369656e742062616c616e636520666f 000027e4: PUSH1 0x44 000027e6: DUP3 000027e7: ADD 000027e8: MSTORE 000027e9: PUSH32 0x722063616c6c0000000000000000000000000000000000000000000000000000 0000280a: PUSH1 0x64 0000280c: DUP3 0000280d: ADD 0000280e: MSTORE 0000280f: PUSH1 0x84 00002811: ADD 00002812: PUSH2 0x0219 00002815: JUMP 00002816: JUMPDEST 00002817: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000282c: DUP6 0000282d: AND 0000282e: EXTCODESIZE 0000282f: PUSH2 0x2894 00002832: JUMPI 00002833: PUSH1 0x40 00002835: MLOAD 00002836: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002857: DUP2 00002858: MSTORE 00002859: PUSH1 0x20 0000285b: PUSH1 0x04 0000285d: DUP3 0000285e: ADD 0000285f: MSTORE 00002860: PUSH1 0x1d 00002862: PUSH1 0x24 00002864: DUP3 00002865: ADD 00002866: MSTORE 00002867: PUSH32 0x416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000 00002888: PUSH1 0x44 0000288a: DUP3 0000288b: ADD 0000288c: MSTORE 0000288d: PUSH1 0x64 0000288f: ADD 00002890: PUSH2 0x0219 00002893: JUMP 00002894: JUMPDEST 00002895: PUSH1 0x00 00002897: DUP1 00002898: DUP7 00002899: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000028ae: AND 000028af: DUP6 000028b0: DUP8 000028b1: PUSH1 0x40 000028b3: MLOAD 000028b4: PUSH2 0x28bd 000028b7: SWAP2 000028b8: SWAP1 000028b9: PUSH2 0x2fbe 000028bc: JUMP 000028bd: JUMPDEST 000028be: PUSH1 0x00 000028c0: PUSH1 0x40 000028c2: MLOAD 000028c3: DUP1 000028c4: DUP4 000028c5: SUB 000028c6: DUP2 000028c7: DUP6 000028c8: DUP8 000028c9: GAS 000028ca: CALL 000028cb: SWAP3 000028cc: POP 000028cd: POP 000028ce: POP 000028cf: RETURNDATASIZE 000028d0: DUP1 000028d1: PUSH1 0x00 000028d3: DUP2 000028d4: EQ 000028d5: PUSH2 0x28fa 000028d8: JUMPI 000028d9: PUSH1 0x40 000028db: MLOAD 000028dc: SWAP2 000028dd: POP 000028de: PUSH1 0x1f 000028e0: NOT 000028e1: PUSH1 0x3f 000028e3: RETURNDATASIZE 000028e4: ADD 000028e5: AND 000028e6: DUP3 000028e7: ADD 000028e8: PUSH1 0x40 000028ea: MSTORE 000028eb: RETURNDATASIZE 000028ec: DUP3 000028ed: MSTORE 000028ee: RETURNDATASIZE 000028ef: PUSH1 0x00 000028f1: PUSH1 0x20 000028f3: DUP5 000028f4: ADD 000028f5: RETURNDATACOPY 000028f6: PUSH2 0x28ff 000028f9: JUMP 000028fa: JUMPDEST 000028fb: PUSH1 0x60 000028fd: SWAP2 000028fe: POP 000028ff: JUMPDEST 00002900: POP 00002901: SWAP2 00002902: POP 00002903: SWAP2 00002904: POP 00002905: PUSH2 0x26ea 00002908: DUP3 00002909: DUP3 0000290a: DUP7 0000290b: PUSH1 0x60 0000290d: DUP4 0000290e: ISZERO 0000290f: PUSH2 0x2919 00002912: JUMPI 00002913: POP 00002914: DUP2 00002915: PUSH2 0x21d2 00002918: JUMP 00002919: JUMPDEST 0000291a: DUP3 0000291b: MLOAD 0000291c: ISZERO 0000291d: PUSH2 0x2929 00002920: JUMPI 00002921: DUP3 00002922: MLOAD 00002923: DUP1 00002924: DUP5 00002925: PUSH1 0x20 00002927: ADD 00002928: REVERT 00002929: JUMPDEST 0000292a: DUP2 0000292b: PUSH1 0x40 0000292d: MLOAD 0000292e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000294f: DUP2 00002950: MSTORE 00002951: PUSH1 0x04 00002953: ADD 00002954: PUSH2 0x0219 00002957: SWAP2 00002958: SWAP1 00002959: PUSH2 0x2c2f 0000295c: JUMP 0000295d: JUMPDEST 0000295e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002973: DUP2 00002974: AND 00002975: DUP2 00002976: EQ 00002977: PUSH2 0x297f 0000297a: JUMPI 0000297b: PUSH1 0x00 0000297d: DUP1 0000297e: REVERT 0000297f: JUMPDEST 00002980: POP 00002981: JUMP 00002982: JUMPDEST 00002983: PUSH1 0x00 00002985: DUP1 00002986: DUP4 00002987: PUSH1 0x1f 00002989: DUP5 0000298a: ADD 0000298b: SLT 0000298c: PUSH2 0x2994 0000298f: JUMPI 00002990: PUSH1 0x00 00002992: DUP1 00002993: REVERT 00002994: JUMPDEST 00002995: POP 00002996: DUP2 00002997: CALLDATALOAD 00002998: PUSH8 0xffffffffffffffff 000029a1: DUP2 000029a2: GT 000029a3: ISZERO 000029a4: PUSH2 0x29ac 000029a7: JUMPI 000029a8: PUSH1 0x00 000029aa: DUP1 000029ab: REVERT 000029ac: JUMPDEST 000029ad: PUSH1 0x20 000029af: DUP4 000029b0: ADD 000029b1: SWAP2 000029b2: POP 000029b3: DUP4 000029b4: PUSH1 0x20 000029b6: DUP3 000029b7: DUP6 000029b8: ADD 000029b9: ADD 000029ba: GT 000029bb: ISZERO 000029bc: PUSH2 0x29c4 000029bf: JUMPI 000029c0: PUSH1 0x00 000029c2: DUP1 000029c3: REVERT 000029c4: JUMPDEST 000029c5: SWAP3 000029c6: POP 000029c7: SWAP3 000029c8: SWAP1 000029c9: POP 000029ca: JUMP 000029cb: JUMPDEST 000029cc: PUSH1 0x00 000029ce: DUP1 000029cf: PUSH1 0x00 000029d1: DUP1 000029d2: PUSH1 0x00 000029d4: DUP1 000029d5: PUSH1 0x00 000029d7: PUSH1 0xc0 000029d9: DUP9 000029da: DUP11 000029db: SUB 000029dc: SLT 000029dd: ISZERO 000029de: PUSH2 0x29e6 000029e1: JUMPI 000029e2: PUSH1 0x00 000029e4: DUP1 000029e5: REVERT 000029e6: JUMPDEST 000029e7: DUP8 000029e8: CALLDATALOAD 000029e9: PUSH2 0x29f1 000029ec: DUP2 000029ed: PUSH2 0x295d 000029f0: JUMP 000029f1: JUMPDEST 000029f2: SWAP7 000029f3: POP 000029f4: PUSH1 0x20 000029f6: DUP9 000029f7: ADD 000029f8: CALLDATALOAD 000029f9: PUSH2 0x2a01 000029fc: DUP2 000029fd: PUSH2 0x295d 00002a00: JUMP 00002a01: JUMPDEST 00002a02: SWAP6 00002a03: POP 00002a04: PUSH1 0x40 00002a06: DUP9 00002a07: ADD 00002a08: CALLDATALOAD 00002a09: PUSH2 0x2a11 00002a0c: DUP2 00002a0d: PUSH2 0x295d 00002a10: JUMP 00002a11: JUMPDEST 00002a12: SWAP5 00002a13: POP 00002a14: PUSH1 0x60 00002a16: DUP9 00002a17: ADD 00002a18: CALLDATALOAD 00002a19: PUSH2 0x2a21 00002a1c: DUP2 00002a1d: PUSH2 0x295d 00002a20: JUMP 00002a21: JUMPDEST 00002a22: SWAP4 00002a23: POP 00002a24: PUSH1 0x80 00002a26: DUP9 00002a27: ADD 00002a28: CALLDATALOAD 00002a29: SWAP3 00002a2a: POP 00002a2b: PUSH1 0xa0 00002a2d: DUP9 00002a2e: ADD 00002a2f: CALLDATALOAD 00002a30: PUSH8 0xffffffffffffffff 00002a39: DUP2 00002a3a: GT 00002a3b: ISZERO 00002a3c: PUSH2 0x2a44 00002a3f: JUMPI 00002a40: PUSH1 0x00 00002a42: DUP1 00002a43: REVERT 00002a44: JUMPDEST 00002a45: PUSH2 0x2a50 00002a48: DUP11 00002a49: DUP3 00002a4a: DUP12 00002a4b: ADD 00002a4c: PUSH2 0x2982 00002a4f: JUMP 00002a50: JUMPDEST 00002a51: SWAP9 00002a52: SWAP12 00002a53: SWAP8 00002a54: SWAP11 00002a55: POP 00002a56: SWAP6 00002a57: SWAP9 00002a58: POP 00002a59: SWAP4 00002a5a: SWAP7 00002a5b: SWAP3 00002a5c: SWAP6 00002a5d: SWAP3 00002a5e: SWAP4 00002a5f: POP 00002a60: POP 00002a61: POP 00002a62: JUMP 00002a63: JUMPDEST 00002a64: DUP1 00002a65: CALLDATALOAD 00002a66: PUSH4 0xffffffff 00002a6b: DUP2 00002a6c: AND 00002a6d: DUP2 00002a6e: EQ 00002a6f: PUSH2 0x2a77 00002a72: JUMPI 00002a73: PUSH1 0x00 00002a75: DUP1 00002a76: REVERT 00002a77: JUMPDEST 00002a78: SWAP2 00002a79: SWAP1 00002a7a: POP 00002a7b: JUMP 00002a7c: JUMPDEST 00002a7d: PUSH1 0x00 00002a7f: DUP1 00002a80: PUSH1 0x00 00002a82: PUSH1 0x40 00002a84: DUP5 00002a85: DUP7 00002a86: SUB 00002a87: SLT 00002a88: ISZERO 00002a89: PUSH2 0x2a91 00002a8c: JUMPI 00002a8d: PUSH1 0x00 00002a8f: DUP1 00002a90: REVERT 00002a91: JUMPDEST 00002a92: PUSH2 0x2a9a 00002a95: DUP5 00002a96: PUSH2 0x2a63 00002a99: JUMP 00002a9a: JUMPDEST 00002a9b: SWAP3 00002a9c: POP 00002a9d: PUSH1 0x20 00002a9f: DUP5 00002aa0: ADD 00002aa1: CALLDATALOAD 00002aa2: PUSH8 0xffffffffffffffff 00002aab: DUP2 00002aac: GT 00002aad: ISZERO 00002aae: PUSH2 0x2ab6 00002ab1: JUMPI 00002ab2: PUSH1 0x00 00002ab4: DUP1 00002ab5: REVERT 00002ab6: JUMPDEST 00002ab7: PUSH2 0x2ac2 00002aba: DUP7 00002abb: DUP3 00002abc: DUP8 00002abd: ADD 00002abe: PUSH2 0x2982 00002ac1: JUMP 00002ac2: JUMPDEST 00002ac3: SWAP5 00002ac4: SWAP8 00002ac5: SWAP1 00002ac6: SWAP7 00002ac7: POP 00002ac8: SWAP4 00002ac9: SWAP5 00002aca: POP 00002acb: POP 00002acc: POP 00002acd: POP 00002ace: JUMP 00002acf: JUMPDEST 00002ad0: PUSH1 0x00 00002ad2: DUP1 00002ad3: PUSH1 0x00 00002ad5: DUP1 00002ad6: PUSH1 0x00 00002ad8: PUSH1 0x80 00002ada: DUP7 00002adb: DUP9 00002adc: SUB 00002add: SLT 00002ade: ISZERO 00002adf: PUSH2 0x2ae7 00002ae2: JUMPI 00002ae3: PUSH1 0x00 00002ae5: DUP1 00002ae6: REVERT 00002ae7: JUMPDEST 00002ae8: DUP6 00002ae9: CALLDATALOAD 00002aea: PUSH2 0x2af2 00002aed: DUP2 00002aee: PUSH2 0x295d 00002af1: JUMP 00002af2: JUMPDEST 00002af3: SWAP5 00002af4: POP 00002af5: PUSH1 0x20 00002af7: DUP7 00002af8: ADD 00002af9: CALLDATALOAD 00002afa: PUSH2 0x2b02 00002afd: DUP2 00002afe: PUSH2 0x295d 00002b01: JUMP 00002b02: JUMPDEST 00002b03: SWAP4 00002b04: POP 00002b05: PUSH1 0x40 00002b07: DUP7 00002b08: ADD 00002b09: CALLDATALOAD 00002b0a: SWAP3 00002b0b: POP 00002b0c: PUSH1 0x60 00002b0e: DUP7 00002b0f: ADD 00002b10: CALLDATALOAD 00002b11: PUSH8 0xffffffffffffffff 00002b1a: DUP2 00002b1b: GT 00002b1c: ISZERO 00002b1d: PUSH2 0x2b25 00002b20: JUMPI 00002b21: PUSH1 0x00 00002b23: DUP1 00002b24: REVERT 00002b25: JUMPDEST 00002b26: PUSH2 0x2b31 00002b29: DUP9 00002b2a: DUP3 00002b2b: DUP10 00002b2c: ADD 00002b2d: PUSH2 0x2982 00002b30: JUMP 00002b31: JUMPDEST 00002b32: SWAP7 00002b33: SWAP10 00002b34: SWAP6 00002b35: SWAP9 00002b36: POP 00002b37: SWAP4 00002b38: SWAP7 00002b39: POP 00002b3a: SWAP3 00002b3b: SWAP5 00002b3c: SWAP4 00002b3d: SWAP3 00002b3e: POP 00002b3f: POP 00002b40: POP 00002b41: JUMP 00002b42: JUMPDEST 00002b43: PUSH1 0x00 00002b45: DUP1 00002b46: PUSH1 0x00 00002b48: DUP1 00002b49: PUSH1 0x00 00002b4b: DUP1 00002b4c: PUSH1 0x00 00002b4e: PUSH1 0xc0 00002b50: DUP9 00002b51: DUP11 00002b52: SUB 00002b53: SLT 00002b54: ISZERO 00002b55: PUSH2 0x2b5d 00002b58: JUMPI 00002b59: PUSH1 0x00 00002b5b: DUP1 00002b5c: REVERT 00002b5d: JUMPDEST 00002b5e: DUP8 00002b5f: CALLDATALOAD 00002b60: PUSH2 0x2b68 00002b63: DUP2 00002b64: PUSH2 0x295d 00002b67: JUMP 00002b68: JUMPDEST 00002b69: SWAP7 00002b6a: POP 00002b6b: PUSH1 0x20 00002b6d: DUP9 00002b6e: ADD 00002b6f: CALLDATALOAD 00002b70: PUSH2 0x2b78 00002b73: DUP2 00002b74: PUSH2 0x295d 00002b77: JUMP 00002b78: JUMPDEST 00002b79: SWAP6 00002b7a: POP 00002b7b: PUSH1 0x40 00002b7d: DUP9 00002b7e: ADD 00002b7f: CALLDATALOAD 00002b80: PUSH2 0x2b88 00002b83: DUP2 00002b84: PUSH2 0x295d 00002b87: JUMP 00002b88: JUMPDEST 00002b89: SWAP5 00002b8a: POP 00002b8b: PUSH1 0x60 00002b8d: DUP9 00002b8e: ADD 00002b8f: CALLDATALOAD 00002b90: SWAP4 00002b91: POP 00002b92: PUSH2 0x2b9d 00002b95: PUSH1 0x80 00002b97: DUP10 00002b98: ADD 00002b99: PUSH2 0x2a63 00002b9c: JUMP 00002b9d: JUMPDEST 00002b9e: SWAP3 00002b9f: POP 00002ba0: PUSH1 0xa0 00002ba2: DUP9 00002ba3: ADD 00002ba4: CALLDATALOAD 00002ba5: PUSH8 0xffffffffffffffff 00002bae: DUP2 00002baf: GT 00002bb0: ISZERO 00002bb1: PUSH2 0x2a44 00002bb4: JUMPI 00002bb5: PUSH1 0x00 00002bb7: DUP1 00002bb8: REVERT 00002bb9: JUMPDEST 00002bba: PUSH1 0x00 00002bbc: JUMPDEST 00002bbd: DUP4 00002bbe: DUP2 00002bbf: LT 00002bc0: ISZERO 00002bc1: PUSH2 0x2bd4 00002bc4: JUMPI 00002bc5: DUP2 00002bc6: DUP2 00002bc7: ADD 00002bc8: MLOAD 00002bc9: DUP4 00002bca: DUP3 00002bcb: ADD 00002bcc: MSTORE 00002bcd: PUSH1 0x20 00002bcf: ADD 00002bd0: PUSH2 0x2bbc 00002bd3: JUMP 00002bd4: JUMPDEST 00002bd5: DUP4 00002bd6: DUP2 00002bd7: GT 00002bd8: ISZERO 00002bd9: PUSH2 0x05d8 00002bdc: JUMPI 00002bdd: POP 00002bde: POP 00002bdf: PUSH1 0x00 00002be1: SWAP2 00002be2: ADD 00002be3: MSTORE 00002be4: JUMP 00002be5: JUMPDEST 00002be6: PUSH1 0x00 00002be8: DUP2 00002be9: MLOAD 00002bea: DUP1 00002beb: DUP5 00002bec: MSTORE 00002bed: PUSH2 0x2bfd 00002bf0: DUP2 00002bf1: PUSH1 0x20 00002bf3: DUP7 00002bf4: ADD 00002bf5: PUSH1 0x20 00002bf7: DUP7 00002bf8: ADD 00002bf9: PUSH2 0x2bb9 00002bfc: JUMP 00002bfd: JUMPDEST 00002bfe: PUSH1 0x1f 00002c00: ADD 00002c01: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00002c22: AND 00002c23: SWAP3 00002c24: SWAP1 00002c25: SWAP3 00002c26: ADD 00002c27: PUSH1 0x20 00002c29: ADD 00002c2a: SWAP3 00002c2b: SWAP2 00002c2c: POP 00002c2d: POP 00002c2e: JUMP 00002c2f: JUMPDEST 00002c30: PUSH1 0x20 00002c32: DUP2 00002c33: MSTORE 00002c34: PUSH1 0x00 00002c36: PUSH2 0x21d2 00002c39: PUSH1 0x20 00002c3b: DUP4 00002c3c: ADD 00002c3d: DUP5 00002c3e: PUSH2 0x2be5 00002c41: JUMP 00002c42: JUMPDEST 00002c43: PUSH1 0x00 00002c45: DUP1 00002c46: PUSH1 0x00 00002c48: DUP1 00002c49: PUSH1 0x00 00002c4b: DUP1 00002c4c: PUSH1 0xa0 00002c4e: DUP8 00002c4f: DUP10 00002c50: SUB 00002c51: SLT 00002c52: ISZERO 00002c53: PUSH2 0x2c5b 00002c56: JUMPI 00002c57: PUSH1 0x00 00002c59: DUP1 00002c5a: REVERT 00002c5b: JUMPDEST 00002c5c: DUP7 00002c5d: CALLDATALOAD 00002c5e: PUSH2 0x2c66 00002c61: DUP2 00002c62: PUSH2 0x295d 00002c65: JUMP 00002c66: JUMPDEST 00002c67: SWAP6 00002c68: POP 00002c69: PUSH1 0x20 00002c6b: DUP8 00002c6c: ADD 00002c6d: CALLDATALOAD 00002c6e: PUSH2 0x2c76 00002c71: DUP2 00002c72: PUSH2 0x295d 00002c75: JUMP 00002c76: JUMPDEST 00002c77: SWAP5 00002c78: POP 00002c79: PUSH1 0x40 00002c7b: DUP8 00002c7c: ADD 00002c7d: CALLDATALOAD 00002c7e: SWAP4 00002c7f: POP 00002c80: PUSH2 0x2c8b 00002c83: PUSH1 0x60 00002c85: DUP9 00002c86: ADD 00002c87: PUSH2 0x2a63 00002c8a: JUMP 00002c8b: JUMPDEST 00002c8c: SWAP3 00002c8d: POP 00002c8e: PUSH1 0x80 00002c90: DUP8 00002c91: ADD 00002c92: CALLDATALOAD 00002c93: PUSH8 0xffffffffffffffff 00002c9c: DUP2 00002c9d: GT 00002c9e: ISZERO 00002c9f: PUSH2 0x2ca7 00002ca2: JUMPI 00002ca3: PUSH1 0x00 00002ca5: DUP1 00002ca6: REVERT 00002ca7: JUMPDEST 00002ca8: PUSH2 0x2cb3 00002cab: DUP10 00002cac: DUP3 00002cad: DUP11 00002cae: ADD 00002caf: PUSH2 0x2982 00002cb2: JUMP 00002cb3: JUMPDEST 00002cb4: SWAP8 00002cb5: SWAP11 00002cb6: SWAP7 00002cb7: SWAP10 00002cb8: POP 00002cb9: SWAP5 00002cba: SWAP8 00002cbb: POP 00002cbc: SWAP3 00002cbd: SWAP6 00002cbe: SWAP4 00002cbf: SWAP5 00002cc0: SWAP3 00002cc1: POP 00002cc2: POP 00002cc3: POP 00002cc4: JUMP 00002cc5: JUMPDEST 00002cc6: PUSH1 0x00 00002cc8: DUP1 00002cc9: PUSH1 0x40 00002ccb: DUP4 00002ccc: DUP6 00002ccd: SUB 00002cce: SLT 00002ccf: ISZERO 00002cd0: PUSH2 0x2cd8 00002cd3: JUMPI 00002cd4: PUSH1 0x00 00002cd6: DUP1 00002cd7: REVERT 00002cd8: JUMPDEST 00002cd9: DUP3 00002cda: CALLDATALOAD 00002cdb: PUSH2 0x2ce3 00002cde: DUP2 00002cdf: PUSH2 0x295d 00002ce2: JUMP 00002ce3: JUMPDEST 00002ce4: SWAP2 00002ce5: POP 00002ce6: PUSH1 0x20 00002ce8: DUP4 00002ce9: ADD 00002cea: CALLDATALOAD 00002ceb: PUSH2 0x2cf3 00002cee: DUP2 00002cef: PUSH2 0x295d 00002cf2: JUMP 00002cf3: JUMPDEST 00002cf4: DUP1 00002cf5: SWAP2 00002cf6: POP 00002cf7: POP 00002cf8: SWAP3 00002cf9: POP 00002cfa: SWAP3 00002cfb: SWAP1 00002cfc: POP 00002cfd: JUMP 00002cfe: JUMPDEST 00002cff: PUSH1 0x00 00002d01: DUP1 00002d02: PUSH1 0x00 00002d04: DUP1 00002d05: PUSH1 0x60 00002d07: DUP6 00002d08: DUP8 00002d09: SUB 00002d0a: SLT 00002d0b: ISZERO 00002d0c: PUSH2 0x2d14 00002d0f: JUMPI 00002d10: PUSH1 0x00 00002d12: DUP1 00002d13: REVERT 00002d14: JUMPDEST 00002d15: DUP5 00002d16: CALLDATALOAD 00002d17: PUSH2 0x2d1f 00002d1a: DUP2 00002d1b: PUSH2 0x295d 00002d1e: JUMP 00002d1f: JUMPDEST 00002d20: SWAP4 00002d21: POP 00002d22: PUSH2 0x2d2d 00002d25: PUSH1 0x20 00002d27: DUP7 00002d28: ADD 00002d29: PUSH2 0x2a63 00002d2c: JUMP 00002d2d: JUMPDEST 00002d2e: SWAP3 00002d2f: POP 00002d30: PUSH1 0x40 00002d32: DUP6 00002d33: ADD 00002d34: CALLDATALOAD 00002d35: PUSH8 0xffffffffffffffff 00002d3e: DUP2 00002d3f: GT 00002d40: ISZERO 00002d41: PUSH2 0x2d49 00002d44: JUMPI 00002d45: PUSH1 0x00 00002d47: DUP1 00002d48: REVERT 00002d49: JUMPDEST 00002d4a: PUSH2 0x2d55 00002d4d: DUP8 00002d4e: DUP3 00002d4f: DUP9 00002d50: ADD 00002d51: PUSH2 0x2982 00002d54: JUMP 00002d55: JUMPDEST 00002d56: SWAP6 00002d57: SWAP9 00002d58: SWAP5 00002d59: SWAP8 00002d5a: POP 00002d5b: SWAP6 00002d5c: POP 00002d5d: POP 00002d5e: POP 00002d5f: POP 00002d60: JUMP 00002d61: JUMPDEST 00002d62: PUSH1 0x00 00002d64: DUP1 00002d65: PUSH1 0x00 00002d67: PUSH1 0x60 00002d69: DUP5 00002d6a: DUP7 00002d6b: SUB 00002d6c: SLT 00002d6d: ISZERO 00002d6e: PUSH2 0x2d76 00002d71: JUMPI 00002d72: PUSH1 0x00 00002d74: DUP1 00002d75: REVERT 00002d76: JUMPDEST 00002d77: DUP4 00002d78: CALLDATALOAD 00002d79: PUSH2 0x2d81 00002d7c: DUP2 00002d7d: PUSH2 0x295d 00002d80: JUMP 00002d81: JUMPDEST 00002d82: SWAP3 00002d83: POP 00002d84: PUSH1 0x20 00002d86: DUP5 00002d87: ADD 00002d88: CALLDATALOAD 00002d89: PUSH2 0x2d91 00002d8c: DUP2 00002d8d: PUSH2 0x295d 00002d90: JUMP 00002d91: JUMPDEST 00002d92: SWAP2 00002d93: POP 00002d94: PUSH1 0x40 00002d96: DUP5 00002d97: ADD 00002d98: CALLDATALOAD 00002d99: PUSH2 0x2da1 00002d9c: DUP2 00002d9d: PUSH2 0x295d 00002da0: JUMP 00002da1: JUMPDEST 00002da2: DUP1 00002da3: SWAP2 00002da4: POP 00002da5: POP 00002da6: SWAP3 00002da7: POP 00002da8: SWAP3 00002da9: POP 00002daa: SWAP3 00002dab: JUMP 00002dac: JUMPDEST 00002dad: PUSH1 0x00 00002daf: PUSH1 0x20 00002db1: DUP3 00002db2: DUP5 00002db3: SUB 00002db4: SLT 00002db5: ISZERO 00002db6: PUSH2 0x2dbe 00002db9: JUMPI 00002dba: PUSH1 0x00 00002dbc: DUP1 00002dbd: REVERT 00002dbe: JUMPDEST 00002dbf: DUP2 00002dc0: MLOAD 00002dc1: PUSH2 0x21d2 00002dc4: DUP2 00002dc5: PUSH2 0x295d 00002dc8: JUMP 00002dc9: JUMPDEST 00002dca: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00002deb: PUSH1 0x00 00002ded: MSTORE 00002dee: PUSH1 0x11 00002df0: PUSH1 0x04 00002df2: MSTORE 00002df3: PUSH1 0x24 00002df5: PUSH1 0x00 00002df7: REVERT 00002df8: JUMPDEST 00002df9: PUSH1 0x00 00002dfb: DUP3 00002dfc: DUP3 00002dfd: LT 00002dfe: ISZERO 00002dff: PUSH2 0x2e0a 00002e02: JUMPI 00002e03: PUSH2 0x2e0a 00002e06: PUSH2 0x2dc9 00002e09: JUMP 00002e0a: JUMPDEST 00002e0b: POP 00002e0c: SUB 00002e0d: SWAP1 00002e0e: JUMP 00002e0f: JUMPDEST 00002e10: PUSH1 0x00 00002e12: PUSH1 0x20 00002e14: DUP3 00002e15: DUP5 00002e16: SUB 00002e17: SLT 00002e18: ISZERO 00002e19: PUSH2 0x2e21 00002e1c: JUMPI 00002e1d: PUSH1 0x00 00002e1f: DUP1 00002e20: REVERT 00002e21: JUMPDEST 00002e22: DUP2 00002e23: MLOAD 00002e24: DUP1 00002e25: ISZERO 00002e26: ISZERO 00002e27: DUP2 00002e28: EQ 00002e29: PUSH2 0x21d2 00002e2c: JUMPI 00002e2d: PUSH1 0x00 00002e2f: DUP1 00002e30: REVERT 00002e31: JUMPDEST 00002e32: PUSH1 0x00 00002e34: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002e49: DUP1 00002e4a: DUP8 00002e4b: AND 00002e4c: DUP4 00002e4d: MSTORE 00002e4e: DUP1 00002e4f: DUP7 00002e50: AND 00002e51: PUSH1 0x20 00002e53: DUP5 00002e54: ADD 00002e55: MSTORE 00002e56: POP 00002e57: DUP4 00002e58: PUSH1 0x40 00002e5a: DUP4 00002e5b: ADD 00002e5c: MSTORE 00002e5d: PUSH1 0x80 00002e5f: PUSH1 0x60 00002e61: DUP4 00002e62: ADD 00002e63: MSTORE 00002e64: PUSH2 0x2e70 00002e67: PUSH1 0x80 00002e69: DUP4 00002e6a: ADD 00002e6b: DUP5 00002e6c: PUSH2 0x2be5 00002e6f: JUMP 00002e70: JUMPDEST 00002e71: SWAP7 00002e72: SWAP6 00002e73: POP 00002e74: POP 00002e75: POP 00002e76: POP 00002e77: POP 00002e78: POP 00002e79: JUMP 00002e7a: JUMPDEST 00002e7b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002e90: DUP5 00002e91: AND 00002e92: DUP2 00002e93: MSTORE 00002e94: PUSH1 0x60 00002e96: PUSH1 0x20 00002e98: DUP3 00002e99: ADD 00002e9a: MSTORE 00002e9b: PUSH1 0x00 00002e9d: PUSH2 0x2ea9 00002ea0: PUSH1 0x60 00002ea2: DUP4 00002ea3: ADD 00002ea4: DUP6 00002ea5: PUSH2 0x2be5 00002ea8: JUMP 00002ea9: JUMPDEST 00002eaa: SWAP1 00002eab: POP 00002eac: PUSH4 0xffffffff 00002eb1: DUP4 00002eb2: AND 00002eb3: PUSH1 0x40 00002eb5: DUP4 00002eb6: ADD 00002eb7: MSTORE 00002eb8: SWAP5 00002eb9: SWAP4 00002eba: POP 00002ebb: POP 00002ebc: POP 00002ebd: POP 00002ebe: JUMP 00002ebf: JUMPDEST 00002ec0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002ed5: DUP5 00002ed6: AND 00002ed7: DUP2 00002ed8: MSTORE 00002ed9: DUP3 00002eda: PUSH1 0x20 00002edc: DUP3 00002edd: ADD 00002ede: MSTORE 00002edf: PUSH1 0x60 00002ee1: PUSH1 0x40 00002ee3: DUP3 00002ee4: ADD 00002ee5: MSTORE 00002ee6: PUSH1 0x00 00002ee8: PUSH2 0x2ef4 00002eeb: PUSH1 0x60 00002eed: DUP4 00002eee: ADD 00002eef: DUP5 00002ef0: PUSH2 0x2be5 00002ef3: JUMP 00002ef4: JUMPDEST 00002ef5: SWAP6 00002ef6: SWAP5 00002ef7: POP 00002ef8: POP 00002ef9: POP 00002efa: POP 00002efb: POP 00002efc: JUMP 00002efd: JUMPDEST 00002efe: DUP3 00002eff: DUP2 00002f00: MSTORE 00002f01: PUSH1 0x40 00002f03: PUSH1 0x20 00002f05: DUP3 00002f06: ADD 00002f07: MSTORE 00002f08: PUSH1 0x00 00002f0a: PUSH2 0x2704 00002f0d: PUSH1 0x40 00002f0f: DUP4 00002f10: ADD 00002f11: DUP5 00002f12: PUSH2 0x2be5 00002f15: JUMP 00002f16: JUMPDEST 00002f17: PUSH1 0x00 00002f19: DUP3 00002f1a: NOT 00002f1b: DUP3 00002f1c: GT 00002f1d: ISZERO 00002f1e: PUSH2 0x2f29 00002f21: JUMPI 00002f22: PUSH2 0x2f29 00002f25: PUSH2 0x2dc9 00002f28: JUMP 00002f29: JUMPDEST 00002f2a: POP 00002f2b: ADD 00002f2c: SWAP1 00002f2d: JUMP 00002f2e: JUMPDEST 00002f2f: PUSH1 0x00 00002f31: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002f46: DUP1 00002f47: DUP10 00002f48: AND 00002f49: DUP4 00002f4a: MSTORE 00002f4b: DUP1 00002f4c: DUP9 00002f4d: AND 00002f4e: PUSH1 0x20 00002f50: DUP5 00002f51: ADD 00002f52: MSTORE 00002f53: DUP1 00002f54: DUP8 00002f55: AND 00002f56: PUSH1 0x40 00002f58: DUP5 00002f59: ADD 00002f5a: MSTORE 00002f5b: DUP1 00002f5c: DUP7 00002f5d: AND 00002f5e: PUSH1 0x60 00002f60: DUP5 00002f61: ADD 00002f62: MSTORE 00002f63: POP 00002f64: DUP4 00002f65: PUSH1 0x80 00002f67: DUP4 00002f68: ADD 00002f69: MSTORE 00002f6a: PUSH1 0xc0 00002f6c: PUSH1 0xa0 00002f6e: DUP4 00002f6f: ADD 00002f70: MSTORE 00002f71: PUSH2 0x2f7d 00002f74: PUSH1 0xc0 00002f76: DUP4 00002f77: ADD 00002f78: DUP5 00002f79: PUSH2 0x2be5 00002f7c: JUMP 00002f7d: JUMPDEST 00002f7e: SWAP9 00002f7f: SWAP8 00002f80: POP 00002f81: POP 00002f82: POP 00002f83: POP 00002f84: POP 00002f85: POP 00002f86: POP 00002f87: POP 00002f88: JUMP 00002f89: JUMPDEST 00002f8a: PUSH1 0x00 00002f8c: DUP1 00002f8d: PUSH1 0x40 00002f8f: DUP4 00002f90: DUP6 00002f91: SUB 00002f92: SLT 00002f93: ISZERO 00002f94: PUSH2 0x2f9c 00002f97: JUMPI 00002f98: PUSH1 0x00 00002f9a: DUP1 00002f9b: REVERT 00002f9c: JUMPDEST 00002f9d: DUP3 00002f9e: MLOAD 00002f9f: PUSH2 0x2fa7 00002fa2: DUP2 00002fa3: PUSH2 0x295d 00002fa6: JUMP 00002fa7: JUMPDEST 00002fa8: PUSH1 0x20 00002faa: DUP5 00002fab: ADD 00002fac: MLOAD 00002fad: SWAP1 00002fae: SWAP3 00002faf: POP 00002fb0: PUSH1 0xff 00002fb2: DUP2 00002fb3: AND 00002fb4: DUP2 00002fb5: EQ 00002fb6: PUSH2 0x2cf3 00002fb9: JUMPI 00002fba: PUSH1 0x00 00002fbc: DUP1 00002fbd: REVERT 00002fbe: JUMPDEST 00002fbf: PUSH1 0x00 00002fc1: DUP3 00002fc2: MLOAD 00002fc3: PUSH2 0x2fd0 00002fc6: DUP2 00002fc7: DUP5 00002fc8: PUSH1 0x20 00002fca: DUP8 00002fcb: ADD 00002fcc: PUSH2 0x2bb9 00002fcf: JUMP 00002fd0: JUMPDEST 00002fd1: SWAP2 00002fd2: SWAP1 00002fd3: SWAP2 00002fd4: ADD 00002fd5: SWAP3 00002fd6: SWAP2 00002fd7: POP 00002fd8: POP 00002fd9: JUMP 00002fda: INVALID 00002fdb: LOG1 00002fdc: PUSH5 0x736f6c6343 00002fe2: STOP 00002fe3: ADDMOD 00002fe4: UNKNOWN(0x0F) 00002fe5: STOP 00002fe6: EXP
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | auth | detector | Authorization based on tx.origin | 70 | no | — |
viewvalidation_json{
"reason": "missing sink mapping",
"status": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xc0c53b8b",
"selector": "0xc0c53b8b",
"calldata_variants": [
"0xc0c53b8b",
"0xc0c53b8b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc89701a2",
"selector": "0xc89701a2",
"calldata_variants": [
"0xc89701a2",
"0xc89701a20000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe11013dd",
"selector": "0xe11013dd",
"calldata_variants": [
"0xe11013dd",
"0xe11013dd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9a2ac6d5",
"selector": "0x9a2ac6d5",
"calldata_variants": [
"0x9a2ac6d5",
"0x9a2ac6d50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa9f9e675",
"selector": "0xa9f9e675",
"calldata_variants": [
"0xa9f9e675",
"0xa9f9e6750000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb1a1a882",
"selector": "0xb1a1a882",
"calldata_variants": [
"0xb1a1a882",
"0xb1a1a8820000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8f601f66",
"selector": "0x8f601f66",
"calldata_variants": [
"0x8f601f66",
"0x8f601f660000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x91c49bf8",
"selector": "0x91c49bf8",
"calldata_variants": [
"0x91c49bf8",
"0x91c49bf80000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 1425,
"type": "tx_origin_used"
}
]
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0x77597320ba051dd454b672eaa9190031d1a1560fbf5d44cd53346d4185704024
call_targets:
0x28841965b26d41304905a836da5c0921da7dbb84
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x77597320ba051dd454b672eaa9190031d1a1560fbf5d44cd53346d4185704024",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x28841965b26d41304905a836da5c0921da7dbb84"
],
"matched_probe": null,
"target_varies": false,
"classification": "constant_target"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xc0c53b8b",
"selector": "0xc0c53b8b",
"calldata_variants": [
"0xc0c53b8b",
"0xc0c53b8b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc89701a2",
"selector": "0xc89701a2",
"calldata_variants": [
"0xc89701a2",
"0xc89701a20000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe11013dd",
"selector": "0xe11013dd",
"calldata_variants": [
"0xe11013dd",
"0xe11013dd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9a2ac6d5",
"selector": "0x9a2ac6d5",
"calldata_variants": [
"0x9a2ac6d5",
"0x9a2ac6d50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa9f9e675",
"selector": "0xa9f9e675",
"calldata_variants": [
"0xa9f9e675",
"0xa9f9e6750000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb1a1a882",
"selector": "0xb1a1a882",
"calldata_variants": [
"0xb1a1a882",
"0xb1a1a8820000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8f601f66",
"selector": "0x8f601f66",
"calldata_variants": [
"0x8f601f66",
"0x8f601f660000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x91c49bf8",
"selector": "0x91c49bf8",
"calldata_variants": [
"0x91c49bf8",
"0x91c49bf80000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2319,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 6342,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 7304,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 6,
"guards_detected": [
{
"pc": 1425,
"type": "tx_origin_used"
}
],
"untrusted_call_count": 6
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0x77597320ba051dd454b672eaa9190031d1a1560fbf5d44cd53346d4185704024
call_targets:
0x28841965b26d41304905a836da5c0921da7dbb84
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x77597320ba051dd454b672eaa9190031d1a1560fbf5d44cd53346d4185704024",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x28841965b26d41304905a836da5c0921da7dbb84"
],
"matched_probe": null,
"target_varies": false,
"classification": "constant_target"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xc0c53b8b",
"selector": "0xc0c53b8b",
"calldata_variants": [
"0xc0c53b8b",
"0xc0c53b8b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc89701a2",
"selector": "0xc89701a2",
"calldata_variants": [
"0xc89701a2",
"0xc89701a20000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe11013dd",
"selector": "0xe11013dd",
"calldata_variants": [
"0xe11013dd",
"0xe11013dd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9a2ac6d5",
"selector": "0x9a2ac6d5",
"calldata_variants": [
"0x9a2ac6d5",
"0x9a2ac6d50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa9f9e675",
"selector": "0xa9f9e675",
"calldata_variants": [
"0xa9f9e675",
"0xa9f9e6750000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb1a1a882",
"selector": "0xb1a1a882",
"calldata_variants": [
"0xb1a1a882",
"0xb1a1a8820000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8f601f66",
"selector": "0x8f601f66",
"calldata_variants": [
"0x8f601f66",
"0x8f601f660000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x91c49bf8",
"selector": "0x91c49bf8",
"calldata_variants": [
"0x91c49bf8",
"0x91c49bf80000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2319,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 6342,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 7304,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 6,
"guards_detected": [
{
"pc": 1425,
"type": "tx_origin_used"
}
]
}
|
| info | other | cast | Heavy EXTCODE*/BALANCE usage | 55 | no | — |
viewevidence_json{
"notes": "frequent external code or balance checks; may indicate introspection or validation logic",
"ext_balance_count": 8
}
|
| info | other | cast | Heavy CALL-family usage | 55 | no | — |
viewevidence_json{
"notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
"call_family_count": 13
}
|