e9597aef-e9cc-49ba-9d81-2312231691b5
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 |
|---|---|---|---|---|
| 30204 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 93823 | artifact.fetch | complete | 1 / 3 | 1 week ago |
| 93824 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 93825 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 93826 | capability.graph | complete | 1 / 3 | 1 week ago |
| 93827 | detector.run | complete | 1 / 3 | 1 week ago |
| 93828 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:1126409] OpenAI Codex v0.77.0 (research preview)
[codex:1126409] --------
[codex:1126409] workdir: /tmp/codex-multi-x2ul4g9t
[codex:1126409] model: gpt-5.2-codex
[codex:1126409] provider: openai
[codex:1126409] approval: never
[codex:1126409] sandbox: read-only
[codex:1126409] reasoning effort: xhigh
[codex:1126409] reasoning summaries: auto
[codex:1126409] session id: 019b61bc-8032-7741-a477-e7db8b9922d8
[codex:1126409] --------
[codex:1126409] user
[codex:1126409] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:1126409] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:1126409] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:1126409]
[codex:1126409] Scope rules:
[codex:1126409] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:1126409] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:1126409]
[codex:1126409] Output MUST be valid JSON matching the provided schema.
[codex:1126409] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:1126409] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:1126409]
[codex:1126409] Output constraints (IMPORTANT):
[codex:1126409] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:1126409] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:1126409] mcp startup: no servers
[codex:1126409]
[codex:1126409] thinking
[codex:1126409] **Reading AUDIT_BUNDLE.txt**
[codex:1126409] exec
[codex:1126409] /bin/bash -lc ls in /tmp/codex-multi-x2ul4g9t succeeded in 5ms:
[codex:1126409] AUDIT_BUNDLE.txt
[codex:1126409] codex-output-schema.json
[codex:1126409] contracts
[codex:1126409] exec
[codex:1126409] /bin/bash -lc 'wc -l AUDIT_BUNDLE.txt' in /tmp/codex-multi-x2ul4g9t succeeded in 5ms:
[codex:1126409] 3424 AUDIT_BUNDLE.txt
[codex:1126409] exec
[codex:1126409] /bin/bash -lc "sed -n '1,200p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-x2ul4g9t succeeded in 6ms:
[codex:1126409] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:1126409]
[codex:1126409] ================================================================================
[codex:1126409] FILE: contracts/contracts/tokenbridge/ethereum/L1ArbitrumMessenger.sol
[codex:1126409] ================================================================================
[codex:1126409] // SPDX-License-Identifier: Apache-2.0
[codex:1126409]
[codex:1126409] /*
[codex:1126409] * Copyright 2020, Offchain Labs, Inc.
[codex:1126409] *
[codex:1126409] * Licensed under the Apache License, Version 2.0 (the "License");
[codex:1126409] * you may not use this file except in compliance with the License.
[codex:1126409] * You may obtain a copy of the License at
[codex:1126409] *
[codex:1126409] * http://www.apache.org/licenses/LICENSE-2.0
[codex:1126409] *
[codex:1126409] * Unless required by applicable law or agreed to in writing, software
[codex:1126409] * distributed under the License is distributed on an "AS IS" BASIS,
[codex:1126409] * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
[codex:1126409] * See the License for the specific language governing permissions and
[codex:1126409]
[codex:1126409] thinking
[codex:1126409] **Planning full file inspection**
[codex:1126409] exec
[codex:1126409] /bin/bash -lc "sed -n '200,400p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-x2ul4g9t succeeded in 6ms:
[codex:1126409] uint256 l2CallValue,
[codex:1126409] uint256 maxSubmissionCost,
[codex:1126409] address excessFeeRefundAddress,
[codex:1126409] address callValueRefundAddress,
[codex:1126409] uint256 gasLimit,
[codex:1126409] uint256 maxFeePerGas,
[codex:1126409] uint256 tokenTotalFeeAmount,
[codex:1126409] bytes calldata data
[codex:1126409] ) external returns (uint256);
[codex:1126409] }
[codex:1126409]
[codex:1126409] ================================================================================
[codex:1126409] FILE: contracts/contracts/tokenbridge/ethereum/gateway/IL1ArbitrumGateway.sol
[codex:1126409] ================================================================================
[codex:1126409] // SPDX-License-Identifier: Apache-2.0
[codex:1126409]
[codex:1126409] /*
[codex:1126409] * Copyright 2020, Offchain Labs, Inc.
[codex:1126409] *
[codex:1126409] * Licensed under the Apache License, Version 2.0 (the "License");
[codex:1126409]
[codex:1126409] thinking
[codex:1126409] **Proceeding with next steps**
[codex:1126409] exec
[codex:1126409] /bin/bash -lc "sed -n '400,800p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-x2ul4g9t succeeded in 6ms:
[codex:1126409] address _newDestination,
[codex:1126409] bytes memory _newData
[codex:1126409] ) internal virtual {
[codex:1126409] bytes32 withdrawData = encodeWithdrawal(_exitNum, _initialDestination);
[codex:1126409] redirectedExits[withdrawData] = ExitData(true, _newDestination, _newData);
[codex:1126409] }
[codex:1126409]
[codex:1126409] function encodeWithdrawal(uint256 _exitNum, address _initialDestination)
[codex:1126409] public
[codex:1126409] pure
[codex:1126409] returns (bytes32)
[codex:1126409] {
[codex:1126409] // here we assume the L2 bridge gives a unique exitNum to each exit
[codex:1126409] return keccak256(abi.encode(_exitNum, _initialDestination));
[codex:1126409] }
[codex:1126409] }
[codex:1126409]
[codex:1126409] ================================================================================
[codex:1126409] FILE: contracts/contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol
[codex:1126409] ================================================================================
[codex:1126409]
[codex:1126409] thinking
[codex:1126409] **Continuing process**
[codex:1126409] exec
[codex:1126409] /bin/bash -lc "sed -n '800,1200p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-x2ul4g9t succeeded in 5ms:
[codex:1126409] * @return res abi encoded inbox sequence number
[codex:1126409] */
[codex:1126409] function _initiateDeposit(
[codex:1126409] address _refundTo,
[codex:1126409] address _from,
[codex:1126409] uint256 _amount,
[codex:1126409] uint256 _maxGas,
[codex:1126409] uint256 _gasPriceBid,
[codex:1126409] uint256 _maxSubmissionCost,
[codex:1126409] uint256, // tokenTotalFeeAmount - amount of fees to be deposited in native token to cover for retryable ticket cost (used only in ERC20-based rollups)
[codex:1126409] bytes memory _data
[codex:1126409] ) internal virtual returns (uint256) {
[codex:1126409] return
[codex:1126409] createOutboundTxCustomRefund(
[codex:1126409] _refundTo,
[codex:1126409] _from,
[codex:1126409] _amount,
[codex:1126409] _maxGas,
[codex:1126409] _gasPriceBid,
[codex:1126409] _maxSubmissionCost,
[codex:1126409]
[codex:1126409] thinking
[codex:1126409] **Continuing exploration**
[codex:1126409] exec
[codex:1126409] /bin/bash -lc "sed -n '1200,1600p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-x2ul4g9t succeeded in 6ms:
[codex:1126409] * to learn more about how these ids are created.
[codex:1126409] *
[codex:1126409] * This function call must use less than 30 000 gas.
[codex:1126409] */
[codex:1126409] function supportsInterface(bytes4 interfaceId) external view returns (bool);
[codex:1126409] }
[codex:1126409]
[codex:1126409] ================================================================================
[codex:1126409] FILE: contracts/contracts/tokenbridge/libraries/IERC20Bridge.sol
[codex:1126409] ================================================================================
[codex:1126409] // SPDX-License-Identifier: Apache-2.0
[codex:1126409]
[codex:1126409] // solhint-disable-next-line compiler-version
[codex:1126409] pragma solidity >=0.6.9 <0.9.0;
[codex:1126409]
[codex:1126409] interface IERC20Bridge {
[codex:1126409] /**
[codex:1126409] * @dev token that is escrowed in bridge on L1 side and minted on L2 as native currency. Also fees are paid in this token.
[codex:1126409] */
[codex:1126409] function nativeToken() external view returns (address);
[codex:1126409]
[codex:1126409] thinking
[codex:1126409] **Evaluating third-party contract handling**
[codex:1126409] exec
[codex:1126409] /bin/bash -lc "sed -n '1600,2000p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-x2ul4g9t succeeded in 5ms:
[codex:1126409] ================================================================================
[codex:1126409] // Copyright 2021-2022, Offchain Labs, Inc.
[codex:1126409] // For license information, see https://github.com/nitro/blob/master/LICENSE
[codex:1126409] // SPDX-License-Identifier: BUSL-1.1
[codex:1126409]
[codex:1126409] // solhint-disable-next-line compiler-version
[codex:1126409] pragma solidity >=0.6.9 <0.9.0;
[codex:1126409]
[codex:1126409] import "./IOwnable.sol";
[codex:1126409]
[codex:1126409] interface IBridge {
[codex:1126409] event MessageDelivered(
[codex:1126409] uint256 indexed messageIndex,
[codex:1126409] bytes32 indexed beforeInboxAcc,
[codex:1126409] address inbox,
[codex:1126409] uint8 kind,
[codex:1126409] address sender,
[codex:1126409] bytes32 messageDataHash,
[codex:1126409] uint256 baseFeeL1,
[codex:1126409] uint64 timestamp
[codex:1126409]
[codex:1126409] thinking
[codex:1126409] **Continuing the process**
[codex:1126409] exec
[codex:1126409] /bin/bash -lc "sed -n '2000,2400p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-x2ul4g9t succeeded in 5ms:
[codex:1126409] function executeTransaction(
[codex:1126409] bytes32[] calldata proof,
[codex:1126409] uint256 index,
[codex:1126409] address l2Sender,
[codex:1126409] address to,
[codex:1126409] uint256 l2Block,
[codex:1126409] uint256 l1Block,
[codex:1126409] uint256 l2Timestamp,
[codex:1126409] uint256 value,
[codex:1126409] bytes calldata data
[codex:1126409] ) external;
[codex:1126409]
[codex:1126409] /**
[codex:1126409] * @dev function used to simulate the result of a particular function call from the outbox
[codex:1126409] * it is useful for things such as gas estimates. This function includes all costs except for
[codex:1126409] * proof validation (which can be considered offchain as a somewhat of a fixed cost - it's
[codex:1126409] * not really a fixed cost, but can be treated as so with a fixed overhead for gas estimation).
[codex:1126409] * We can't include the cost of proof validation since this is intended to be used to simulate txs
[codex:1126409] * that are included in yet-to-be confirmed merkle roots. The simulation entrypoint could instead pretend
[codex:1126409] * to confirm a pending merkle root, but that would be less practical for integrating with tooling.
[codex:1126409]
[codex:1126409] thinking
[codex:1126409] **Reviewing full AUDIT_BUNDLE.txt**
[codex:1126409] exec
[codex:1126409] /bin/bash -lc "sed -n '2400,2800p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-x2ul4g9t succeeded in 5ms:
[codex:1126409] }
[codex:1126409]
[codex:1126409] /**
[codex:1126409] * @dev See {IERC20-allowance}.
[codex:1126409] */
[codex:1126409] function allowance(address owner, address spender) public view virtual override returns (uint256) {
[codex:1126409] return _allowances[owner][spender];
[codex:1126409] }
[codex:1126409]
[codex:1126409] /**
[codex:1126409] * @dev See {IERC20-approve}.
[codex:1126409] *
[codex:1126409] * NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on
[codex:1126409] * `transferFrom`. This is semantically equivalent to an infinite approval.
[codex:1126409] *
[codex:1126409] * Requirements:
[codex:1126409] *
[codex:1126409] * - `spender` cannot be the zero address.
[codex:1126409] */
[codex:1126409] function approve(address spender, uint256 amount) public virtual override returns (bool) {
[codex:1126409]
[codex:1126409] thinking
[codex:1126409] **Continuing near end**
[codex:1126409] exec
[codex:1126409] /bin/bash -lc "sed -n '2800,3200p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-x2ul4g9t succeeded in 5ms:
[codex:1126409] /**
[codex:1126409] * @dev Interface of the ERC20 Permit extension allowing approvals to be made via signatures, as defined in
[codex:1126409] * https://eips.ethereum.org/EIPS/eip-2612[EIP-2612].
[codex:1126409] *
[codex:1126409] * Adds the {permit} method, which can be used to change an account's ERC20 allowance (see {IERC20-allowance}) by
[codex:1126409] * presenting a message signed by the account. By not relying on {IERC20-approve}, the token holder account doesn't
[codex:1126409] * need to send a transaction, and thus is not required to hold Ether at all.
[codex:1126409] */
[codex:1126409] interface IERC20Permit {
[codex:1126409] /**
[codex:1126409] * @dev Sets `value` as the allowance of `spender` over ``owner``'s tokens,
[codex:1126409] * given ``owner``'s signed approval.
[codex:1126409] *
[codex:1126409] * IMPORTANT: The same issues {IERC20-approve} has related to transaction
[codex:1126409] * ordering also apply here.
[codex:1126409] *
[codex:1126409] * Emits an {Approval} event.
[codex:1126409] *
[codex:1126409] * Requirements:
[codex:1126409] *
[codex:1126409]
[codex:1126409] thinking
[codex:1126409] **Continuing to review final lines**
[codex:1126409] exec
[codex:1126409] /bin/bash -lc "sed -n '3200,3424p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-x2ul4g9t succeeded in 5ms:
[codex:1126409] string memory errorMessage
[codex:1126409] ) internal pure returns (bytes memory) {
[codex:1126409] if (success) {
[codex:1126409] return returndata;
[codex:1126409] } else {
[codex:1126409] _revert(returndata, errorMessage);
[codex:1126409] }
[codex:1126409] }
[codex:1126409]
[codex:1126409] function _revert(bytes memory returndata, string memory errorMessage) private pure {
[codex:1126409] // Look for revert reason and bubble it up if present
[codex:1126409] if (returndata.length > 0) {
[codex:1126409] // The easiest way to bubble the revert reason is using memory via assembly
[codex:1126409] /// @solidity memory-safe-assembly
[codex:1126409] assembly {
[codex:1126409] let returndata_size := mload(returndata)
[codex:1126409] revert(add(32, returndata), returndata_size)
[codex:1126409] }
[codex:1126409] } else {
[codex:1126409] revert(errorMessage);
[codex:1126409]
[codex:1126409]
[codex:1126409]
[codex:1126409] thinking
[codex:1126409] **Reviewing first-party contract vulnerabilities**
[codex:1126409] thinking
[codex:1126409] **Identifying upgrade and access control nuances**
[codex:1126409]
[codex:1126409] I’m noting potential risks around unprotected initialize functions in proxy setups that could allow front-run initialization if not done atomically, plus quirks in whitelist disabling that prevent re-enabling. These aren’t direct exploits but represent deployment-sensitive conditions worth mentioning.
[codex:1126409] thinking
[codex:1126409] **Evaluating router call logic and reentrancy setup**
[codex:1126409] exec
[codex:1126409] /bin/bash -lc 'rg -n "delegatecall" contracts/contracts' in /tmp/codex-multi-x2ul4g9t exited 1 in 10ms:
[codex:1126409]
[codex:1126409]
[codex:1126409] thinking
[codex:1126409] **Searching for `.call` usages**
[codex:1126409] exec
[codex:1126409] /bin/bash -lc "rg -n \"\\.call|call\\{\" contracts/contracts" in /tmp/codex-multi-x2ul4g9t exited 1 in 9ms:
[codex:1126409]
[codex:1126409]
[codex:1126409]
[codex:1126409] thinking
[codex:1126409] **Evaluating security and initialization risks**
[codex:1126409]
[codex:1126409] I’m carefully reviewing potential issues around reentrancy, access control, upgradeability, and external calls in the Arbitrum token bridge code. The main takeaway is the publicly callable `initialize` without admin restriction poses a real risk if not properly set during deployment. Other findings are mainly user or router trust assumptions and subtle behavior with fee payments and token balances, but not clear vulnerabilities. Overall, I lean toward reporting the unprotected initializer as a low-to-medium severity upgradeability concern while marking no critical runtime vulnerabilities.
[codex:1126409] thinking
[codex:1126409] **Detailing initializer vulnerability with impact**
[codex:1126409]
[codex:1126409] I’m outlining how the public, unrestricted `initialize` function lets an attacker on a freshly deployed proxy set critical addresses to malicious contracts, enabling escrow theft or denial of service. This issue affects both L1ERC20Gateway and L1OrbitERC20Gateway, posing a severe risk if initialization is missed or left unprotected at deployment. The finding will include exact source locations and emphasize its conditional but high-impact nature.
[codex:1126409] exec
[codex:1126409] /bin/bash -lc "nl -ba contracts/contracts/tokenbridge/ethereum/gateway/L1ERC20Gateway.sol | sed -n '70,150p'" in /tmp/codex-multi-x2ul4g9t succeeded in 6ms:
[codex:1126409] 70 _to,
[codex:1126409] 71 _amount,
[codex:1126409] 72 _maxGas,
[codex:1126409] 73 _gasPriceBid,
[codex:1126409] 74 _data
[codex:1126409] 75 );
[codex:1126409] 76 }
[codex:1126409] 77
[codex:1126409] 78 function finalizeInboundTransfer(
[codex:1126409] 79 address _token,
[codex:1126409] 80 address _from,
[codex:1126409] 81 address _to,
[codex:1126409] 82 uint256 _amount,
[codex:1126409] 83 bytes calldata _data
[codex:1126409] 84 ) public payable override nonReentrant {
[codex:1126409] 85 // the superclass checks onlyCounterpartGateway
[codex:1126409] 86 super.finalizeInboundTransfer(_token, _from, _to, _amount, _data);
[codex:1126409] 87 }
[codex:1126409] 88
[codex:1126409] 89 function initialize(
[codex:1126409]
[codex:1126409] thinking
[codex:1126409] **Evaluating unprotected initializer risks**
[codex:1126409] exec
[codex:1126409] /bin/bash -lc "nl -ba contracts/contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol | sed -n '50,120p'" in /tmp/codex-multi-x2ul4g9t succeeded in 7ms:
[codex:1126409] 50 address indexed _to,
[codex:1126409] 51 uint256 indexed _sequenceNumber,
[codex:1126409] 52 uint256 _amount
[codex:1126409] 53 );
[codex:1126409] 54
[codex:1126409] 55 event WithdrawalFinalized(
[codex:1126409] 56 address l1Token,
[codex:1126409] 57 address indexed _from,
[codex:1126409] 58 address indexed _to,
[codex:1126409] 59 uint256 indexed _exitNum,
[codex:1126409] 60 uint256 _amount
[codex:1126409] 61 );
[codex:1126409] 62
[codex:1126409] 63 modifier onlyCounterpartGateway() override {
[codex:1126409] 64 address _inbox = inbox;
[codex:1126409] 65
[codex:1126409] 66 // a message coming from the counterpart gateway was executed by the bridge
[codex:1126409] 67 address bridge = address(super.getBridge(_inbox));
[codex:1126409] 68 require(msg.sender == bridge, "NOT_FROM_BRIDGE");
[codex:1126409] 69
[codex:1126409]
[codex:1126409] thinking
[codex:1126409] **Evaluating unprotected initializer risk**
[codex:1126409] codex
[codex:1126409] {"no_findings":false,"summary":"Found 1 upgradeability issue: an unprotected initializer can allow hostile initialization if deployment is not atomic.","findings":[{"severity":"high","category":"upgradeability","title":"Unprotected initialize allows hostile setup of critical bridge addresses","exploit_scenario":"If the proxy/implementation is deployed without calling initialize in the same transaction, any external account can call initialize first and set the inbox/router/counterpartGateway to attacker-controlled contracts. A malicious inbox/bridge/outbox can then satisfy onlyCounterpartGateway checks and call finalizeInboundTransfer to release escrowed tokens to the attacker or permanently block legitimate bridging.","recommendation":"Protect initialization with an access-control guard or OpenZeppelin's initializer/onlyProxy pattern, and ensure proxies are initialized atomically on deployment (e.g., via constructor calldata). Consider adding an explicit admin role check to initialize.","evidence":"L1ERC20Gateway.initialize is public and lacks any access control beyond a single-call guard in _initialize; it sets critical addresses (counterpart, router, inbox).","locations":["contracts/contracts/tokenbridge/ethereum/gateway/L1ERC20Gateway.sol:89"]}]}
[codex:1126409] tokens used
[codex:1126409] 80,999
[codex:1126409] {"no_findings":false,"summary":"Found 1 upgradeability issue: an unprotected initializer can allow hostile initialization if deployment is not atomic.","findings":[{"severity":"high","category":"upgradeability","title":"Unprotected initialize allows hostile setup of critical bridge addresses","exploit_scenario":"If the proxy/implementation is deployed without calling initialize in the same transaction, any external account can call initialize first and set the inbox/router/counterpartGateway to attacker-controlled contracts. A malicious inbox/bridge/outbox can then satisfy onlyCounterpartGateway checks and call finalizeInboundTransfer to release escrowed tokens to the attacker or permanently block legitimate bridging.","recommendation":"Protect initialization with an access-control guard or OpenZeppelin's initializer/onlyProxy pattern, and ensure proxies are initialized atomically on deployment (e.g., via constructor calldata). Consider adding an explicit admin role check to initialize.","evidence":"L1ERC20Gateway.initialize is public and lacks any access control beyond a single-call guard in _initialize; it sets critical addresses (counterpart, router, inbox).","locations":["contracts/contracts/tokenbridge/ethereum/gateway/L1ERC20Gateway.sol:89"]}]}
{
"codex": {
"ran_at": "2025-12-27T21:40:33.638588+00:00",
"returncode": 0
},
"summary": "Found 1 upgradeability issue: an unprotected initializer can allow hostile initialization if deployment is not atomic.",
"raw_final": {
"summary": "Found 1 upgradeability issue: an unprotected initializer can allow hostile initialization if deployment is not atomic.",
"findings": [
{
"title": "Unprotected initialize allows hostile setup of critical bridge addresses",
"category": "upgradeability",
"evidence": "L1ERC20Gateway.initialize is public and lacks any access control beyond a single-call guard in _initialize; it sets critical addresses (counterpart, router, inbox).",
"severity": "high",
"locations": [
"contracts/contracts/tokenbridge/ethereum/gateway/L1ERC20Gateway.sol:89"
],
"recommendation": "Protect initialization with an access-control guard or OpenZeppelin's initializer/onlyProxy pattern, and ensure proxies are initialized atomically on deployment (e.g., via constructor calldata). Consider adding an explicit admin role check to initialize.",
"exploit_scenario": "If the proxy/implementation is deployed without calling initialize in the same transaction, any external account can call initialize first and set the inbox/router/counterpartGateway to attacker-controlled contracts. A malicious inbox/bridge/outbox can then satisfy onlyCounterpartGateway checks and call finalizeInboundTransfer to release escrowed tokens to the attacker or permanently block legitimate bridging."
}
],
"no_findings": false
},
"no_findings": false,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: PUSH2 0x00e9 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0xa01893bf 00000019: GT 0000001a: PUSH2 0x0085 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0xa01893bf 00000024: EQ 00000025: PUSH2 0x021e 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xa0c76a96 0000002f: EQ 00000030: PUSH2 0x023e 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xa7e28d48 0000003a: EQ 0000003b: PUSH2 0x025e 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xbcf2e6eb 00000045: EQ 00000046: PUSH2 0x027e 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xbd5f3e7d 00000050: EQ 00000051: PUSH2 0x02ad 00000054: JUMPI 00000055: DUP1 00000056: PUSH4 0xd2ce7d65 0000005b: EQ 0000005c: PUSH2 0x02cd 0000005f: JUMPI 00000060: DUP1 00000061: PUSH4 0xf68a9082 00000066: EQ 00000067: PUSH2 0x02e0 0000006a: JUMPI 0000006b: DUP1 0000006c: PUSH4 0xf887ea40 00000071: EQ 00000072: PUSH2 0x030e 00000075: JUMPI 00000076: DUP1 00000077: PUSH4 0xfb0e722b 0000007c: EQ 0000007d: PUSH2 0x032e 00000080: JUMPI 00000081: PUSH1 0x00 00000083: DUP1 00000084: REVERT 00000085: JUMPDEST 00000086: DUP1 00000087: PUSH4 0x01ffc9a7 0000008c: EQ 0000008d: PUSH2 0x00ee 00000090: JUMPI 00000091: DUP1 00000092: PUSH4 0x020a6058 00000097: EQ 00000098: PUSH2 0x0123 0000009b: JUMPI 0000009c: DUP1 0000009d: PUSH4 0x2db09c1c 000000a2: EQ 000000a3: PUSH2 0x0151 000000a6: JUMPI 000000a7: DUP1 000000a8: PUSH4 0x2e567b36 000000ad: EQ 000000ae: PUSH2 0x017e 000000b1: JUMPI 000000b2: DUP1 000000b3: PUSH4 0x4fb1a07b 000000b8: EQ 000000b9: PUSH2 0x0193 000000bc: JUMPI 000000bd: DUP1 000000be: PUSH4 0x70fc045f 000000c3: EQ 000000c4: PUSH2 0x01b3 000000c7: JUMPI 000000c8: DUP1 000000c9: PUSH4 0x93e59dc1 000000ce: EQ 000000cf: PUSH2 0x01d3 000000d2: JUMPI 000000d3: DUP1 000000d4: PUSH4 0x95fcea78 000000d9: EQ 000000da: PUSH2 0x01f3 000000dd: JUMPI 000000de: DUP1 000000df: PUSH4 0x97881f8d 000000e4: EQ 000000e5: PUSH2 0x0208 000000e8: JUMPI 000000e9: JUMPDEST 000000ea: PUSH1 0x00 000000ec: DUP1 000000ed: REVERT 000000ee: JUMPDEST 000000ef: CALLVALUE 000000f0: DUP1 000000f1: ISZERO 000000f2: PUSH2 0x00fa 000000f5: JUMPI 000000f6: PUSH1 0x00 000000f8: DUP1 000000f9: REVERT 000000fa: JUMPDEST 000000fb: POP 000000fc: PUSH2 0x010e 000000ff: PUSH2 0x0109 00000102: CALLDATASIZE 00000103: PUSH1 0x04 00000105: PUSH2 0x1b4e 00000108: JUMP 00000109: JUMPDEST 0000010a: PUSH2 0x034e 0000010d: JUMP 0000010e: JUMPDEST 0000010f: PUSH1 0x40 00000111: MLOAD 00000112: SWAP1 00000113: ISZERO 00000114: ISZERO 00000115: DUP2 00000116: MSTORE 00000117: PUSH1 0x20 00000119: ADD 0000011a: JUMPDEST 0000011b: PUSH1 0x40 0000011d: MLOAD 0000011e: DUP1 0000011f: SWAP2 00000120: SUB 00000121: SWAP1 00000122: RETURN 00000123: JUMPDEST 00000124: CALLVALUE 00000125: DUP1 00000126: ISZERO 00000127: PUSH2 0x012f 0000012a: JUMPI 0000012b: PUSH1 0x00 0000012d: DUP1 0000012e: REVERT 0000012f: JUMPDEST 00000130: POP 00000131: PUSH2 0x0143 00000134: PUSH2 0x013e 00000137: CALLDATASIZE 00000138: PUSH1 0x04 0000013a: PUSH2 0x1b8d 0000013d: JUMP 0000013e: JUMPDEST 0000013f: PUSH2 0x0385 00000142: JUMP 00000143: JUMPDEST 00000144: PUSH1 0x40 00000146: MLOAD 00000147: SWAP1 00000148: DUP2 00000149: MSTORE 0000014a: PUSH1 0x20 0000014c: ADD 0000014d: PUSH2 0x011a 00000150: JUMP 00000151: JUMPDEST 00000152: CALLVALUE 00000153: DUP1 00000154: ISZERO 00000155: PUSH2 0x015d 00000158: JUMPI 00000159: PUSH1 0x00 0000015b: DUP1 0000015c: REVERT 0000015d: JUMPDEST 0000015e: POP 0000015f: PUSH1 0x00 00000161: SLOAD 00000162: PUSH2 0x0171 00000165: SWAP1 00000166: PUSH1 0x01 00000168: PUSH1 0x01 0000016a: PUSH1 0xa0 0000016c: SHL 0000016d: SUB 0000016e: AND 0000016f: DUP2 00000170: JUMP 00000171: JUMPDEST 00000172: PUSH1 0x40 00000174: MLOAD 00000175: PUSH2 0x011a 00000178: SWAP2 00000179: SWAP1 0000017a: PUSH2 0x1bbd 0000017d: JUMP 0000017e: JUMPDEST 0000017f: PUSH2 0x0191 00000182: PUSH2 0x018c 00000185: CALLDATASIZE 00000186: PUSH1 0x04 00000188: PUSH2 0x1c12 0000018b: JUMP 0000018c: JUMPDEST 0000018d: PUSH2 0x03ca 00000190: JUMP 00000191: JUMPDEST 00000192: STOP 00000193: JUMPDEST 00000194: PUSH2 0x01a6 00000197: PUSH2 0x01a1 0000019a: CALLDATASIZE 0000019b: PUSH1 0x04 0000019d: PUSH2 0x1c96 000001a0: JUMP 000001a1: JUMPDEST 000001a2: PUSH2 0x0415 000001a5: JUMP 000001a6: JUMPDEST 000001a7: PUSH1 0x40 000001a9: MLOAD 000001aa: PUSH2 0x011a 000001ad: SWAP2 000001ae: SWAP1 000001af: PUSH2 0x1d7d 000001b2: JUMP 000001b3: JUMPDEST 000001b4: CALLVALUE 000001b5: DUP1 000001b6: ISZERO 000001b7: PUSH2 0x01bf 000001ba: JUMPI 000001bb: PUSH1 0x00 000001bd: DUP1 000001be: REVERT 000001bf: JUMPDEST 000001c0: POP 000001c1: PUSH1 0x05 000001c3: SLOAD 000001c4: PUSH2 0x0171 000001c7: SWAP1 000001c8: PUSH1 0x01 000001ca: PUSH1 0x01 000001cc: PUSH1 0xa0 000001ce: SHL 000001cf: SUB 000001d0: AND 000001d1: DUP2 000001d2: JUMP 000001d3: JUMPDEST 000001d4: CALLVALUE 000001d5: DUP1 000001d6: ISZERO 000001d7: PUSH2 0x01df 000001da: JUMPI 000001db: PUSH1 0x00 000001dd: DUP1 000001de: REVERT 000001df: JUMPDEST 000001e0: POP 000001e1: PUSH1 0x06 000001e3: SLOAD 000001e4: PUSH2 0x0171 000001e7: SWAP1 000001e8: PUSH1 0x01 000001ea: PUSH1 0x01 000001ec: PUSH1 0xa0 000001ee: SHL 000001ef: SUB 000001f0: AND 000001f1: DUP2 000001f2: JUMP 000001f3: JUMPDEST 000001f4: CALLVALUE 000001f5: DUP1 000001f6: ISZERO 000001f7: PUSH2 0x01ff 000001fa: JUMPI 000001fb: PUSH1 0x00 000001fd: DUP1 000001fe: REVERT 000001ff: JUMPDEST 00000200: POP 00000201: PUSH2 0x0191 00000204: PUSH2 0x04d5 00000207: JUMP 00000208: JUMPDEST 00000209: CALLVALUE 0000020a: DUP1 0000020b: ISZERO 0000020c: PUSH2 0x0214 0000020f: JUMPI 00000210: PUSH1 0x00 00000212: DUP1 00000213: REVERT 00000214: JUMPDEST 00000215: POP 00000216: PUSH2 0x0143 00000219: PUSH1 0x04 0000021b: SLOAD 0000021c: DUP2 0000021d: JUMP 0000021e: JUMPDEST 0000021f: CALLVALUE 00000220: DUP1 00000221: ISZERO 00000222: PUSH2 0x022a 00000225: JUMPI 00000226: PUSH1 0x00 00000228: DUP1 00000229: REVERT 0000022a: JUMPDEST 0000022b: POP 0000022c: PUSH2 0x0191 0000022f: PUSH2 0x0239 00000232: CALLDATASIZE 00000233: PUSH1 0x04 00000235: PUSH2 0x1d90 00000238: JUMP 00000239: JUMPDEST 0000023a: PUSH2 0x054d 0000023d: JUMP 0000023e: JUMPDEST 0000023f: CALLVALUE 00000240: DUP1 00000241: ISZERO 00000242: PUSH2 0x024a 00000245: JUMPI 00000246: PUSH1 0x00 00000248: DUP1 00000249: REVERT 0000024a: JUMPDEST 0000024b: POP 0000024c: PUSH2 0x01a6 0000024f: PUSH2 0x0259 00000252: CALLDATASIZE 00000253: PUSH1 0x04 00000255: PUSH2 0x1ebb 00000258: JUMP 00000259: JUMPDEST 0000025a: PUSH2 0x0617 0000025d: JUMP 0000025e: JUMPDEST 0000025f: CALLVALUE 00000260: DUP1 00000261: ISZERO 00000262: PUSH2 0x026a 00000265: JUMPI 00000266: PUSH1 0x00 00000268: DUP1 00000269: REVERT 0000026a: JUMPDEST 0000026b: POP 0000026c: PUSH2 0x0171 0000026f: PUSH2 0x0279 00000272: CALLDATASIZE 00000273: PUSH1 0x04 00000275: PUSH2 0x1f39 00000278: JUMP 00000279: JUMPDEST 0000027a: PUSH2 0x06da 0000027d: JUMP 0000027e: JUMPDEST 0000027f: CALLVALUE 00000280: DUP1 00000281: ISZERO 00000282: PUSH2 0x028a 00000285: JUMPI 00000286: PUSH1 0x00 00000288: DUP1 00000289: REVERT 0000028a: JUMPDEST 0000028b: POP 0000028c: PUSH2 0x029e 0000028f: PUSH2 0x0299 00000292: CALLDATASIZE 00000293: PUSH1 0x04 00000295: PUSH2 0x1f56 00000298: JUMP 00000299: JUMPDEST 0000029a: PUSH2 0x070b 0000029d: JUMP 0000029e: JUMPDEST 0000029f: PUSH1 0x40 000002a1: MLOAD 000002a2: PUSH2 0x011a 000002a5: SWAP4 000002a6: SWAP3 000002a7: SWAP2 000002a8: SWAP1 000002a9: PUSH2 0x1f6f 000002ac: JUMP 000002ad: JUMPDEST 000002ae: CALLVALUE 000002af: DUP1 000002b0: ISZERO 000002b1: PUSH2 0x02b9 000002b4: JUMPI 000002b5: PUSH1 0x00 000002b7: DUP1 000002b8: REVERT 000002b9: JUMPDEST 000002ba: POP 000002bb: PUSH2 0x0191 000002be: PUSH2 0x02c8 000002c1: CALLDATASIZE 000002c2: PUSH1 0x04 000002c4: PUSH2 0x1fa4 000002c7: JUMP 000002c8: JUMPDEST 000002c9: PUSH2 0x07c4 000002cc: JUMP 000002cd: JUMPDEST 000002ce: PUSH2 0x01a6 000002d1: PUSH2 0x02db 000002d4: CALLDATASIZE 000002d5: PUSH1 0x04 000002d7: PUSH2 0x2042 000002da: JUMP 000002db: JUMPDEST 000002dc: PUSH2 0x0a24 000002df: JUMP 000002e0: JUMPDEST 000002e1: CALLVALUE 000002e2: DUP1 000002e3: ISZERO 000002e4: PUSH2 0x02ec 000002e7: JUMPI 000002e8: PUSH1 0x00 000002ea: DUP1 000002eb: REVERT 000002ec: JUMPDEST 000002ed: POP 000002ee: PUSH2 0x0300 000002f1: PUSH2 0x02fb 000002f4: CALLDATASIZE 000002f5: PUSH1 0x04 000002f7: PUSH2 0x20b4 000002fa: JUMP 000002fb: JUMPDEST 000002fc: PUSH2 0x0a42 000002ff: JUMP 00000300: JUMPDEST 00000301: PUSH1 0x40 00000303: MLOAD 00000304: PUSH2 0x011a 00000307: SWAP3 00000308: SWAP2 00000309: SWAP1 0000030a: PUSH2 0x210c 0000030d: JUMP 0000030e: JUMPDEST 0000030f: CALLVALUE 00000310: DUP1 00000311: ISZERO 00000312: PUSH2 0x031a 00000315: JUMPI 00000316: PUSH1 0x00 00000318: DUP1 00000319: REVERT 0000031a: JUMPDEST 0000031b: POP 0000031c: PUSH1 0x01 0000031e: SLOAD 0000031f: PUSH2 0x0171 00000322: SWAP1 00000323: PUSH1 0x01 00000325: PUSH1 0x01 00000327: PUSH1 0xa0 00000329: SHL 0000032a: SUB 0000032b: AND 0000032c: DUP2 0000032d: JUMP 0000032e: JUMPDEST 0000032f: CALLVALUE 00000330: DUP1 00000331: ISZERO 00000332: PUSH2 0x033a 00000335: JUMPI 00000336: PUSH1 0x00 00000338: DUP1 00000339: REVERT 0000033a: JUMPDEST 0000033b: POP 0000033c: PUSH1 0x02 0000033e: SLOAD 0000033f: PUSH2 0x0171 00000342: SWAP1 00000343: PUSH1 0x01 00000345: PUSH1 0x01 00000347: PUSH1 0xa0 00000349: SHL 0000034a: SUB 0000034b: AND 0000034c: DUP2 0000034d: JUMP 0000034e: JUMPDEST 0000034f: PUSH1 0x00 00000351: PUSH1 0x01 00000353: PUSH1 0x01 00000355: PUSH1 0xe0 00000357: SHL 00000358: SUB 00000359: NOT 0000035a: DUP3 0000035b: AND 0000035c: PUSH4 0x4fb1a07b 00000361: PUSH1 0xe0 00000363: SHL 00000364: EQ 00000365: DUP1 00000366: PUSH2 0x037f 00000369: JUMPI 0000036a: POP 0000036b: PUSH4 0x01ffc9a7 00000370: PUSH1 0xe0 00000372: SHL 00000373: PUSH1 0x01 00000375: PUSH1 0x01 00000377: PUSH1 0xe0 00000379: SHL 0000037a: SUB 0000037b: NOT 0000037c: DUP4 0000037d: AND 0000037e: EQ 0000037f: JUMPDEST 00000380: SWAP3 00000381: SWAP2 00000382: POP 00000383: POP 00000384: JUMP 00000385: JUMPDEST 00000386: PUSH1 0x00 00000388: DUP3 00000389: DUP3 0000038a: PUSH1 0x40 0000038c: MLOAD 0000038d: PUSH1 0x20 0000038f: ADD 00000390: PUSH2 0x03ac 00000393: SWAP3 00000394: SWAP2 00000395: SWAP1 00000396: SWAP2 00000397: DUP3 00000398: MSTORE 00000399: PUSH1 0x01 0000039b: PUSH1 0x01 0000039d: PUSH1 0xa0 0000039f: SHL 000003a0: SUB 000003a1: AND 000003a2: PUSH1 0x20 000003a4: DUP3 000003a5: ADD 000003a6: MSTORE 000003a7: PUSH1 0x40 000003a9: ADD 000003aa: SWAP1 000003ab: JUMP 000003ac: JUMPDEST 000003ad: PUSH1 0x40 000003af: MLOAD 000003b0: PUSH1 0x20 000003b2: DUP2 000003b3: DUP4 000003b4: SUB 000003b5: SUB 000003b6: DUP2 000003b7: MSTORE 000003b8: SWAP1 000003b9: PUSH1 0x40 000003bb: MSTORE 000003bc: DUP1 000003bd: MLOAD 000003be: SWAP1 000003bf: PUSH1 0x20 000003c1: ADD 000003c2: KECCAK256 000003c3: SWAP1 000003c4: POP 000003c5: SWAP3 000003c6: SWAP2 000003c7: POP 000003c8: POP 000003c9: JUMP 000003ca: JUMPDEST 000003cb: PUSH1 0x02 000003cd: PUSH1 0x07 000003cf: SLOAD 000003d0: SUB 000003d1: PUSH2 0x03f5 000003d4: JUMPI 000003d5: PUSH1 0x40 000003d7: MLOAD 000003d8: PUSH3 0x461bcd 000003dc: PUSH1 0xe5 000003de: SHL 000003df: DUP2 000003e0: MSTORE 000003e1: PUSH1 0x04 000003e3: ADD 000003e4: PUSH2 0x03ec 000003e7: SWAP1 000003e8: PUSH2 0x2130 000003eb: JUMP 000003ec: JUMPDEST 000003ed: PUSH1 0x40 000003ef: MLOAD 000003f0: DUP1 000003f1: SWAP2 000003f2: SUB 000003f3: SWAP1 000003f4: REVERT 000003f5: JUMPDEST 000003f6: PUSH1 0x02 000003f8: PUSH1 0x07 000003fa: SSTORE 000003fb: PUSH2 0x0408 000003fe: DUP7 000003ff: DUP7 00000400: DUP7 00000401: DUP7 00000402: DUP7 00000403: DUP7 00000404: PUSH2 0x0b32 00000407: JUMP 00000408: JUMPDEST 00000409: POP 0000040a: POP 0000040b: PUSH1 0x01 0000040d: PUSH1 0x07 0000040f: SSTORE 00000410: POP 00000411: POP 00000412: POP 00000413: POP 00000414: JUMP 00000415: JUMPDEST 00000416: PUSH1 0x60 00000418: CALLVALUE 00000419: ISZERO 0000041a: PUSH2 0x0450 0000041d: JUMPI 0000041e: PUSH1 0x40 00000420: MLOAD 00000421: PUSH3 0x461bcd 00000425: PUSH1 0xe5 00000427: SHL 00000428: DUP2 00000429: MSTORE 0000042a: PUSH1 0x20 0000042c: PUSH1 0x04 0000042e: DUP3 0000042f: ADD 00000430: MSTORE 00000431: PUSH1 0x08 00000433: PUSH1 0x24 00000435: DUP3 00000436: ADD 00000437: MSTORE 00000438: PUSH8 0x4e4f5f56414c5545 00000441: PUSH1 0xc0 00000443: SHL 00000444: PUSH1 0x44 00000446: DUP3 00000447: ADD 00000448: MSTORE 00000449: PUSH1 0x64 0000044b: ADD 0000044c: PUSH2 0x03ec 0000044f: JUMP 00000450: JUMPDEST 00000451: PUSH2 0x0458 00000454: PUSH2 0x0c9a 00000457: JUMP 00000458: JUMPDEST 00000459: PUSH1 0x01 0000045b: PUSH1 0x01 0000045d: PUSH1 0xa0 0000045f: SHL 00000460: SUB 00000461: AND 00000462: DUP10 00000463: PUSH1 0x01 00000465: PUSH1 0x01 00000467: PUSH1 0xa0 00000469: SHL 0000046a: SUB 0000046b: AND 0000046c: SUB 0000046d: PUSH2 0x04b8 00000470: JUMPI 00000471: PUSH1 0x40 00000473: MLOAD 00000474: PUSH3 0x461bcd 00000478: PUSH1 0xe5 0000047a: SHL 0000047b: DUP2 0000047c: MSTORE 0000047d: PUSH1 0x20 0000047f: PUSH1 0x04 00000481: DUP3 00000482: ADD 00000483: MSTORE 00000484: PUSH1 0x1f 00000486: PUSH1 0x24 00000488: DUP3 00000489: ADD 0000048a: MSTORE 0000048b: PUSH32 0x4e4f545f414c4c4f5745445f544f5f4252494447455f4645455f544f4b454e00 000004ac: PUSH1 0x44 000004ae: DUP3 000004af: ADD 000004b0: MSTORE 000004b1: PUSH1 0x64 000004b3: ADD 000004b4: PUSH2 0x03ec 000004b7: JUMP 000004b8: JUMPDEST 000004b9: PUSH2 0x04c8 000004bc: DUP10 000004bd: DUP10 000004be: DUP10 000004bf: DUP10 000004c0: DUP10 000004c1: DUP10 000004c2: DUP10 000004c3: DUP10 000004c4: PUSH2 0x0d1e 000004c7: JUMP 000004c8: JUMPDEST 000004c9: SWAP10 000004ca: SWAP9 000004cb: POP 000004cc: POP 000004cd: POP 000004ce: POP 000004cf: POP 000004d0: POP 000004d1: POP 000004d2: POP 000004d3: POP 000004d4: JUMP 000004d5: JUMPDEST 000004d6: PUSH1 0x00 000004d8: PUSH2 0x04ff 000004db: PUSH32 0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103 000004fc: SLOAD 000004fd: SWAP1 000004fe: JUMP 000004ff: JUMPDEST 00000500: SWAP1 00000501: POP 00000502: CALLER 00000503: PUSH1 0x01 00000505: PUSH1 0x01 00000507: PUSH1 0xa0 00000509: SHL 0000050a: SUB 0000050b: DUP3 0000050c: AND 0000050d: EQ 0000050e: PUSH2 0x054a 00000511: JUMPI 00000512: PUSH1 0x40 00000514: MLOAD 00000515: PUSH3 0x461bcd 00000519: PUSH1 0xe5 0000051b: SHL 0000051c: DUP2 0000051d: MSTORE 0000051e: PUSH1 0x20 00000520: PUSH1 0x04 00000522: DUP3 00000523: ADD 00000524: MSTORE 00000525: PUSH1 0x0e 00000527: PUSH1 0x24 00000529: DUP3 0000052a: ADD 0000052b: MSTORE 0000052c: PUSH14 0x2727aa2fa32927a6afa0a226a4a7 0000053b: PUSH1 0x91 0000053d: SHL 0000053e: PUSH1 0x44 00000540: DUP3 00000541: ADD 00000542: MSTORE 00000543: PUSH1 0x64 00000545: ADD 00000546: PUSH2 0x03ec 00000549: JUMP 0000054a: JUMPDEST 0000054b: POP 0000054c: JUMP 0000054d: JUMPDEST 0000054e: PUSH2 0x0558 00000551: DUP6 00000552: DUP6 00000553: DUP6 00000554: PUSH2 0x0d69 00000557: JUMP 00000558: JUMPDEST 00000559: DUP2 0000055a: PUSH2 0x0599 0000055d: JUMPI 0000055e: PUSH1 0x40 00000560: MLOAD 00000561: PUSH3 0x461bcd 00000565: PUSH1 0xe5 00000567: SHL 00000568: DUP2 00000569: MSTORE 0000056a: PUSH1 0x20 0000056c: PUSH1 0x04 0000056e: DUP3 0000056f: ADD 00000570: MSTORE 00000571: PUSH1 0x11 00000573: PUSH1 0x24 00000575: DUP3 00000576: ADD 00000577: MSTORE 00000578: PUSH17 0x0929cac82989288bea0a49eb0b29082a69 0000058a: PUSH1 0x7b 0000058c: SHL 0000058d: PUSH1 0x44 0000058f: DUP3 00000590: ADD 00000591: MSTORE 00000592: PUSH1 0x64 00000594: ADD 00000595: PUSH2 0x03ec 00000598: JUMP 00000599: JUMPDEST 0000059a: PUSH1 0x01 0000059c: PUSH1 0x01 0000059e: PUSH1 0xa0 000005a0: SHL 000005a1: SUB 000005a2: DUP2 000005a3: AND 000005a4: PUSH2 0x05e0 000005a7: JUMPI 000005a8: PUSH1 0x40 000005aa: MLOAD 000005ab: PUSH3 0x461bcd 000005af: PUSH1 0xe5 000005b1: SHL 000005b2: DUP2 000005b3: MSTORE 000005b4: PUSH1 0x20 000005b6: PUSH1 0x04 000005b8: DUP3 000005b9: ADD 000005ba: MSTORE 000005bb: PUSH1 0x0e 000005bd: PUSH1 0x24 000005bf: DUP3 000005c0: ADD 000005c1: MSTORE 000005c2: PUSH14 0x24a72b20a624a22fa122a0a1a7a7 000005d1: PUSH1 0x91 000005d3: SHL 000005d4: PUSH1 0x44 000005d6: DUP3 000005d7: ADD 000005d8: MSTORE 000005d9: PUSH1 0x64 000005db: ADD 000005dc: PUSH2 0x03ec 000005df: JUMP 000005e0: JUMPDEST 000005e1: PUSH1 0x04 000005e3: SWAP2 000005e4: SWAP1 000005e5: SWAP2 000005e6: SSTORE 000005e7: PUSH1 0x05 000005e9: DUP1 000005ea: SLOAD 000005eb: PUSH1 0x01 000005ed: PUSH1 0x01 000005ef: PUSH1 0xa0 000005f1: SHL 000005f2: SUB 000005f3: SWAP1 000005f4: SWAP3 000005f5: AND 000005f6: PUSH1 0x01 000005f8: PUSH1 0x01 000005fa: PUSH1 0xa0 000005fc: SHL 000005fd: SUB 000005fe: NOT 000005ff: SWAP3 00000600: DUP4 00000601: AND 00000602: OR 00000603: SWAP1 00000604: SSTORE 00000605: PUSH1 0x06 00000607: DUP1 00000608: SLOAD 00000609: SWAP1 0000060a: SWAP2 0000060b: AND 0000060c: SWAP1 0000060d: SSTORE 0000060e: POP 0000060f: POP 00000610: PUSH1 0x01 00000612: PUSH1 0x07 00000614: SSTORE 00000615: POP 00000616: JUMP 00000617: JUMPDEST 00000618: PUSH1 0x60 0000061a: PUSH1 0x00 0000061c: PUSH2 0x062c 0000061f: DUP8 00000620: PUSH4 0x06fdde03 00000625: PUSH1 0xe0 00000627: SHL 00000628: PUSH2 0x0e1c 0000062b: JUMP 0000062c: JUMPDEST 0000062d: PUSH2 0x063d 00000630: DUP9 00000631: PUSH4 0x95d89b41 00000636: PUSH1 0xe0 00000638: SHL 00000639: PUSH2 0x0e1c 0000063c: JUMP 0000063d: JUMPDEST 0000063e: PUSH2 0x064e 00000641: DUP10 00000642: PUSH4 0x313ce567 00000647: PUSH1 0xe0 00000649: SHL 0000064a: PUSH2 0x0e1c 0000064d: JUMP 0000064e: JUMPDEST 0000064f: PUSH1 0x40 00000651: MLOAD 00000652: PUSH1 0x20 00000654: ADD 00000655: PUSH2 0x0660 00000658: SWAP4 00000659: SWAP3 0000065a: SWAP2 0000065b: SWAP1 0000065c: PUSH2 0x2167 0000065f: JUMP 00000660: JUMPDEST 00000661: PUSH1 0x40 00000663: DUP1 00000664: MLOAD 00000665: PUSH1 0x1f 00000667: NOT 00000668: DUP2 00000669: DUP5 0000066a: SUB 0000066b: ADD 0000066c: DUP2 0000066d: MSTORE 0000066e: SWAP2 0000066f: SWAP1 00000670: MSTORE 00000671: SWAP1 00000672: POP 00000673: PUSH4 0x172b3d9b 00000678: PUSH1 0xe1 0000067a: SHL 0000067b: DUP8 0000067c: DUP8 0000067d: DUP8 0000067e: DUP8 0000067f: PUSH2 0x0688 00000682: DUP7 00000683: DUP10 00000684: PUSH2 0x0ead 00000687: JUMP 00000688: JUMPDEST 00000689: PUSH1 0x40 0000068b: MLOAD 0000068c: PUSH1 0x24 0000068e: ADD 0000068f: PUSH2 0x069c 00000692: SWAP6 00000693: SWAP5 00000694: SWAP4 00000695: SWAP3 00000696: SWAP2 00000697: SWAP1 00000698: PUSH2 0x21a0 0000069b: JUMP 0000069c: JUMPDEST 0000069d: PUSH1 0x40 0000069f: DUP1 000006a0: MLOAD 000006a1: PUSH1 0x1f 000006a3: NOT 000006a4: DUP2 000006a5: DUP5 000006a6: SUB 000006a7: ADD 000006a8: DUP2 000006a9: MSTORE 000006aa: SWAP2 000006ab: SWAP1 000006ac: MSTORE 000006ad: PUSH1 0x20 000006af: DUP2 000006b0: ADD 000006b1: DUP1 000006b2: MLOAD 000006b3: PUSH1 0x01 000006b5: PUSH1 0x01 000006b7: PUSH1 0xe0 000006b9: SHL 000006ba: SUB 000006bb: AND 000006bc: PUSH1 0x01 000006be: PUSH1 0x01 000006c0: PUSH1 0xe0 000006c2: SHL 000006c3: SUB 000006c4: NOT 000006c5: SWAP1 000006c6: SWAP4 000006c7: AND 000006c8: SWAP3 000006c9: SWAP1 000006ca: SWAP3 000006cb: OR 000006cc: SWAP1 000006cd: SWAP2 000006ce: MSTORE 000006cf: SWAP2 000006d0: POP 000006d1: POP 000006d2: SWAP6 000006d3: SWAP5 000006d4: POP 000006d5: POP 000006d6: POP 000006d7: POP 000006d8: POP 000006d9: JUMP 000006da: JUMPDEST 000006db: PUSH1 0x00 000006dd: DUP1 000006de: PUSH2 0x06e6 000006e1: DUP4 000006e2: PUSH2 0x0ed9 000006e5: JUMP 000006e6: JUMPDEST 000006e7: PUSH1 0x04 000006e9: SLOAD 000006ea: PUSH1 0x05 000006ec: SLOAD 000006ed: SWAP2 000006ee: SWAP3 000006ef: POP 000006f0: PUSH2 0x0704 000006f3: SWAP2 000006f4: DUP4 000006f5: SWAP2 000006f6: SWAP1 000006f7: PUSH1 0x01 000006f9: PUSH1 0x01 000006fb: PUSH1 0xa0 000006fd: SHL 000006fe: SUB 000006ff: AND 00000700: PUSH2 0x0f3e 00000703: JUMP 00000704: JUMPDEST 00000705: SWAP4 00000706: SWAP3 00000707: POP 00000708: POP 00000709: POP 0000070a: JUMP 0000070b: JUMPDEST 0000070c: PUSH1 0x03 0000070e: PUSH1 0x20 00000710: MSTORE 00000711: PUSH1 0x00 00000713: SWAP1 00000714: DUP2 00000715: MSTORE 00000716: PUSH1 0x40 00000718: SWAP1 00000719: KECCAK256 0000071a: DUP1 0000071b: SLOAD 0000071c: PUSH1 0x01 0000071e: DUP3 0000071f: ADD 00000720: DUP1 00000721: SLOAD 00000722: PUSH1 0xff 00000724: DUP4 00000725: AND 00000726: SWAP4 00000727: PUSH2 0x0100 0000072a: SWAP1 0000072b: SWAP4 0000072c: DIV 0000072d: PUSH1 0x01 0000072f: PUSH1 0x01 00000731: PUSH1 0xa0 00000733: SHL 00000734: SUB 00000735: AND 00000736: SWAP3 00000737: SWAP2 00000738: SWAP1 00000739: PUSH2 0x0741 0000073c: SWAP1 0000073d: PUSH2 0x21db 00000740: JUMP 00000741: JUMPDEST 00000742: DUP1 00000743: PUSH1 0x1f 00000745: ADD 00000746: PUSH1 0x20 00000748: DUP1 00000749: SWAP2 0000074a: DIV 0000074b: MUL 0000074c: PUSH1 0x20 0000074e: ADD 0000074f: PUSH1 0x40 00000751: MLOAD 00000752: SWAP1 00000753: DUP2 00000754: ADD 00000755: PUSH1 0x40 00000757: MSTORE 00000758: DUP1 00000759: SWAP3 0000075a: SWAP2 0000075b: SWAP1 0000075c: DUP2 0000075d: DUP2 0000075e: MSTORE 0000075f: PUSH1 0x20 00000761: ADD 00000762: DUP3 00000763: DUP1 00000764: SLOAD 00000765: PUSH2 0x076d 00000768: SWAP1 00000769: PUSH2 0x21db 0000076c: JUMP 0000076d: JUMPDEST 0000076e: DUP1 0000076f: ISZERO 00000770: PUSH2 0x07ba 00000773: JUMPI 00000774: DUP1 00000775: PUSH1 0x1f 00000777: LT 00000778: PUSH2 0x078f 0000077b: JUMPI 0000077c: PUSH2 0x0100 0000077f: DUP1 00000780: DUP4 00000781: SLOAD 00000782: DIV 00000783: MUL 00000784: DUP4 00000785: MSTORE 00000786: SWAP2 00000787: PUSH1 0x20 00000789: ADD 0000078a: SWAP2 0000078b: PUSH2 0x07ba 0000078e: JUMP 0000078f: JUMPDEST 00000790: DUP3 00000791: ADD 00000792: SWAP2 00000793: SWAP1 00000794: PUSH1 0x00 00000796: MSTORE 00000797: PUSH1 0x20 00000799: PUSH1 0x00 0000079b: KECCAK256 0000079c: SWAP1 0000079d: JUMPDEST 0000079e: DUP2 0000079f: SLOAD 000007a0: DUP2 000007a1: MSTORE 000007a2: SWAP1 000007a3: PUSH1 0x01 000007a5: ADD 000007a6: SWAP1 000007a7: PUSH1 0x20 000007a9: ADD 000007aa: DUP1 000007ab: DUP4 000007ac: GT 000007ad: PUSH2 0x079d 000007b0: JUMPI 000007b1: DUP3 000007b2: SWAP1 000007b3: SUB 000007b4: PUSH1 0x1f 000007b6: AND 000007b7: DUP3 000007b8: ADD 000007b9: SWAP2 000007ba: JUMPDEST 000007bb: POP 000007bc: POP 000007bd: POP 000007be: POP 000007bf: POP 000007c0: SWAP1 000007c1: POP 000007c2: DUP4 000007c3: JUMP 000007c4: JUMPDEST 000007c5: PUSH1 0x00 000007c7: PUSH2 0x07e0 000007ca: DUP9 000007cb: DUP9 000007cc: PUSH1 0x40 000007ce: MLOAD 000007cf: DUP1 000007d0: PUSH1 0x20 000007d2: ADD 000007d3: PUSH1 0x40 000007d5: MSTORE 000007d6: DUP1 000007d7: PUSH1 0x00 000007d9: DUP2 000007da: MSTORE 000007db: POP 000007dc: PUSH2 0x0a42 000007df: JUMP 000007e0: JUMPDEST 000007e1: POP 000007e2: SWAP1 000007e3: POP 000007e4: CALLER 000007e5: PUSH1 0x01 000007e7: PUSH1 0x01 000007e9: PUSH1 0xa0 000007eb: SHL 000007ec: SUB 000007ed: DUP3 000007ee: AND 000007ef: EQ 000007f0: PUSH2 0x0831 000007f3: JUMPI 000007f4: PUSH1 0x40 000007f6: MLOAD 000007f7: PUSH3 0x461bcd 000007fb: PUSH1 0xe5 000007fd: SHL 000007fe: DUP2 000007ff: MSTORE 00000800: PUSH1 0x20 00000802: PUSH1 0x04 00000804: DUP3 00000805: ADD 00000806: MSTORE 00000807: PUSH1 0x13 00000809: PUSH1 0x24 0000080b: DUP3 0000080c: ADD 0000080d: MSTORE 0000080e: PUSH19 0x2727aa2fa2ac2822a1aa22a22fa9a2a72222a9 00000822: PUSH1 0x69 00000824: SHL 00000825: PUSH1 0x44 00000827: DUP3 00000828: ADD 00000829: MSTORE 0000082a: PUSH1 0x64 0000082c: ADD 0000082d: PUSH2 0x03ec 00000830: JUMP 00000831: JUMPDEST 00000832: DUP4 00000833: ISZERO 00000834: PUSH2 0x0871 00000837: JUMPI 00000838: PUSH1 0x40 0000083a: MLOAD 0000083b: PUSH3 0x461bcd 0000083f: PUSH1 0xe5 00000841: SHL 00000842: DUP2 00000843: MSTORE 00000844: PUSH1 0x20 00000846: PUSH1 0x04 00000848: DUP3 00000849: ADD 0000084a: MSTORE 0000084b: PUSH1 0x0f 0000084d: PUSH1 0x24 0000084f: DUP3 00000850: ADD 00000851: MSTORE 00000852: PUSH15 0x1393d7d110551057d0531313d5d151 00000862: PUSH1 0x8a 00000864: SHL 00000865: PUSH1 0x44 00000867: DUP3 00000868: ADD 00000869: MSTORE 0000086a: PUSH1 0x64 0000086c: ADD 0000086d: PUSH2 0x03ec 00000870: JUMP 00000871: JUMPDEST 00000872: PUSH2 0x08b3 00000875: DUP9 00000876: DUP9 00000877: DUP9 00000878: DUP9 00000879: DUP9 0000087a: DUP1 0000087b: DUP1 0000087c: PUSH1 0x1f 0000087e: ADD 0000087f: PUSH1 0x20 00000881: DUP1 00000882: SWAP2 00000883: DIV 00000884: MUL 00000885: PUSH1 0x20 00000887: ADD 00000888: PUSH1 0x40 0000088a: MLOAD 0000088b: SWAP1 0000088c: DUP2 0000088d: ADD 0000088e: PUSH1 0x40 00000890: MSTORE 00000891: DUP1 00000892: SWAP4 00000893: SWAP3 00000894: SWAP2 00000895: SWAP1 00000896: DUP2 00000897: DUP2 00000898: MSTORE 00000899: PUSH1 0x20 0000089b: ADD 0000089c: DUP4 0000089d: DUP4 0000089e: DUP1 0000089f: DUP3 000008a0: DUP5 000008a1: CALLDATACOPY 000008a2: PUSH1 0x00 000008a4: SWAP3 000008a5: ADD 000008a6: SWAP2 000008a7: SWAP1 000008a8: SWAP2 000008a9: MSTORE 000008aa: POP 000008ab: PUSH2 0x0f68 000008ae: SWAP3 000008af: POP 000008b0: POP 000008b1: POP 000008b2: JUMP 000008b3: JUMPDEST 000008b4: DUP2 000008b5: ISZERO 000008b6: PUSH2 0x09c0 000008b9: JUMPI 000008ba: PUSH1 0x01 000008bc: PUSH1 0x01 000008be: PUSH1 0xa0 000008c0: SHL 000008c1: SUB 000008c2: DUP7 000008c3: AND 000008c4: EXTCODESIZE 000008c5: PUSH2 0x0902 000008c8: JUMPI 000008c9: PUSH1 0x40 000008cb: MLOAD 000008cc: PUSH3 0x461bcd 000008d0: PUSH1 0xe5 000008d2: SHL 000008d3: DUP2 000008d4: MSTORE 000008d5: PUSH1 0x20 000008d7: PUSH1 0x04 000008d9: DUP3 000008da: ADD 000008db: MSTORE 000008dc: PUSH1 0x0f 000008de: PUSH1 0x24 000008e0: DUP3 000008e1: ADD 000008e2: MSTORE 000008e3: PUSH15 0x1513d7d393d517d0d3d395149050d5 000008f3: PUSH1 0x8a 000008f5: SHL 000008f6: PUSH1 0x44 000008f8: DUP3 000008f9: ADD 000008fa: MSTORE 000008fb: PUSH1 0x64 000008fd: ADD 000008fe: PUSH2 0x03ec 00000901: JUMP 00000902: JUMPDEST 00000903: PUSH1 0x40 00000905: MLOAD 00000906: PUSH4 0x0592e207 0000090b: PUSH1 0xe4 0000090d: SHL 0000090e: DUP2 0000090f: MSTORE 00000910: PUSH1 0x00 00000912: SWAP1 00000913: PUSH1 0x01 00000915: PUSH1 0x01 00000917: PUSH1 0xa0 00000919: SHL 0000091a: SUB 0000091b: DUP9 0000091c: AND 0000091d: SWAP1 0000091e: PUSH4 0x592e2070 00000923: SWAP1 00000924: PUSH2 0x0937 00000927: SWAP1 00000928: DUP6 00000929: SWAP1 0000092a: DUP14 0000092b: SWAP1 0000092c: DUP10 0000092d: SWAP1 0000092e: DUP10 0000092f: SWAP1 00000930: PUSH1 0x04 00000932: ADD 00000933: PUSH2 0x223e 00000936: JUMP 00000937: JUMPDEST 00000938: PUSH1 0x20 0000093a: PUSH1 0x40 0000093c: MLOAD 0000093d: DUP1 0000093e: DUP4 0000093f: SUB 00000940: DUP2 00000941: PUSH1 0x00 00000943: DUP8 00000944: GAS 00000945: CALL 00000946: ISZERO 00000947: DUP1 00000948: ISZERO 00000949: PUSH2 0x0956 0000094c: JUMPI 0000094d: RETURNDATASIZE 0000094e: PUSH1 0x00 00000950: DUP1 00000951: RETURNDATACOPY 00000952: RETURNDATASIZE 00000953: PUSH1 0x00 00000955: REVERT 00000956: JUMPDEST 00000957: POP 00000958: POP 00000959: POP 0000095a: POP 0000095b: PUSH1 0x40 0000095d: MLOAD 0000095e: RETURNDATASIZE 0000095f: PUSH1 0x1f 00000961: NOT 00000962: PUSH1 0x1f 00000964: DUP3 00000965: ADD 00000966: AND 00000967: DUP3 00000968: ADD 00000969: DUP1 0000096a: PUSH1 0x40 0000096c: MSTORE 0000096d: POP 0000096e: DUP2 0000096f: ADD 00000970: SWAP1 00000971: PUSH2 0x097a 00000974: SWAP2 00000975: SWAP1 00000976: PUSH2 0x2266 00000979: JUMP 0000097a: JUMPDEST 0000097b: SWAP1 0000097c: POP 0000097d: DUP1 0000097e: PUSH2 0x09be 00000981: JUMPI 00000982: PUSH1 0x40 00000984: MLOAD 00000985: PUSH3 0x461bcd 00000989: PUSH1 0xe5 0000098b: SHL 0000098c: DUP2 0000098d: MSTORE 0000098e: PUSH1 0x20 00000990: PUSH1 0x04 00000992: DUP3 00000993: ADD 00000994: MSTORE 00000995: PUSH1 0x12 00000997: PUSH1 0x24 00000999: DUP3 0000099a: ADD 0000099b: MSTORE 0000099c: PUSH18 0x1514905394d1915497d213d3d2d7d1905253 000009af: PUSH1 0x72 000009b1: SHL 000009b2: PUSH1 0x44 000009b4: DUP3 000009b5: ADD 000009b6: MSTORE 000009b7: PUSH1 0x64 000009b9: ADD 000009ba: PUSH2 0x03ec 000009bd: JUMP 000009be: JUMPDEST 000009bf: POP 000009c0: JUMPDEST 000009c1: DUP8 000009c2: DUP7 000009c3: PUSH1 0x01 000009c5: PUSH1 0x01 000009c7: PUSH1 0xa0 000009c9: SHL 000009ca: SUB 000009cb: AND 000009cc: DUP3 000009cd: PUSH1 0x01 000009cf: PUSH1 0x01 000009d1: PUSH1 0xa0 000009d3: SHL 000009d4: SUB 000009d5: AND 000009d6: PUSH32 0x56735ccb9dc7d2222ce4177fc3aea44c33882e2a2c73e0fb1c6b93c9c13a04d4 000009f7: DUP9 000009f8: DUP9 000009f9: DUP9 000009fa: DUP9 000009fb: PUSH1 0x00 000009fd: DUP12 000009fe: DUP12 000009ff: SWAP1 00000a00: POP 00000a01: GT 00000a02: PUSH1 0x40 00000a04: MLOAD 00000a05: PUSH2 0x0a12 00000a08: SWAP6 00000a09: SWAP5 00000a0a: SWAP4 00000a0b: SWAP3 00000a0c: SWAP2 00000a0d: SWAP1 00000a0e: PUSH2 0x2288 00000a11: JUMP 00000a12: JUMPDEST 00000a13: PUSH1 0x40 00000a15: MLOAD 00000a16: DUP1 00000a17: SWAP2 00000a18: SUB 00000a19: SWAP1 00000a1a: LOG4 00000a1b: POP 00000a1c: POP 00000a1d: POP 00000a1e: POP 00000a1f: POP 00000a20: POP 00000a21: POP 00000a22: POP 00000a23: JUMP 00000a24: JUMPDEST 00000a25: PUSH1 0x60 00000a27: PUSH2 0x0a36 00000a2a: DUP9 00000a2b: DUP9 00000a2c: DUP10 00000a2d: DUP10 00000a2e: DUP10 00000a2f: DUP10 00000a30: DUP10 00000a31: DUP10 00000a32: PUSH2 0x0415 00000a35: JUMP 00000a36: JUMPDEST 00000a37: SWAP9 00000a38: SWAP8 00000a39: POP 00000a3a: POP 00000a3b: POP 00000a3c: POP 00000a3d: POP 00000a3e: POP 00000a3f: POP 00000a40: POP 00000a41: JUMP 00000a42: JUMPDEST 00000a43: PUSH1 0x00 00000a45: PUSH1 0x60 00000a47: PUSH1 0x00 00000a49: PUSH2 0x0a52 00000a4c: DUP7 00000a4d: DUP7 00000a4e: PUSH2 0x0385 00000a51: JUMP 00000a52: JUMPDEST 00000a53: PUSH1 0x00 00000a55: DUP2 00000a56: DUP2 00000a57: MSTORE 00000a58: PUSH1 0x03 00000a5a: PUSH1 0x20 00000a5c: MSTORE 00000a5d: PUSH1 0x40 00000a5f: SWAP1 00000a60: KECCAK256 00000a61: DUP1 00000a62: SLOAD 00000a63: SWAP2 00000a64: SWAP3 00000a65: POP 00000a66: SWAP1 00000a67: PUSH1 0xff 00000a69: AND 00000a6a: ISZERO 00000a6b: PUSH2 0x0b21 00000a6e: JUMPI 00000a6f: DUP1 00000a70: PUSH1 0x00 00000a72: ADD 00000a73: PUSH1 0x01 00000a75: SWAP1 00000a76: SLOAD 00000a77: SWAP1 00000a78: PUSH2 0x0100 00000a7b: EXP 00000a7c: SWAP1 00000a7d: DIV 00000a7e: PUSH1 0x01 00000a80: PUSH1 0x01 00000a82: PUSH1 0xa0 00000a84: SHL 00000a85: SUB 00000a86: AND 00000a87: DUP2 00000a88: PUSH1 0x01 00000a8a: ADD 00000a8b: DUP1 00000a8c: DUP1 00000a8d: SLOAD 00000a8e: PUSH2 0x0a96 00000a91: SWAP1 00000a92: PUSH2 0x21db 00000a95: JUMP 00000a96: JUMPDEST 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: SWAP3 00000aaf: SWAP2 00000ab0: SWAP1 00000ab1: DUP2 00000ab2: DUP2 00000ab3: MSTORE 00000ab4: PUSH1 0x20 00000ab6: ADD 00000ab7: DUP3 00000ab8: DUP1 00000ab9: SLOAD 00000aba: PUSH2 0x0ac2 00000abd: SWAP1 00000abe: PUSH2 0x21db 00000ac1: JUMP 00000ac2: JUMPDEST 00000ac3: DUP1 00000ac4: ISZERO 00000ac5: PUSH2 0x0b0f 00000ac8: JUMPI 00000ac9: DUP1 00000aca: PUSH1 0x1f 00000acc: LT 00000acd: PUSH2 0x0ae4 00000ad0: JUMPI 00000ad1: PUSH2 0x0100 00000ad4: DUP1 00000ad5: DUP4 00000ad6: SLOAD 00000ad7: DIV 00000ad8: MUL 00000ad9: DUP4 00000ada: MSTORE 00000adb: SWAP2 00000adc: PUSH1 0x20 00000ade: ADD 00000adf: SWAP2 00000ae0: PUSH2 0x0b0f 00000ae3: JUMP 00000ae4: JUMPDEST 00000ae5: DUP3 00000ae6: ADD 00000ae7: SWAP2 00000ae8: SWAP1 00000ae9: PUSH1 0x00 00000aeb: MSTORE 00000aec: PUSH1 0x20 00000aee: PUSH1 0x00 00000af0: KECCAK256 00000af1: SWAP1 00000af2: JUMPDEST 00000af3: DUP2 00000af4: SLOAD 00000af5: DUP2 00000af6: MSTORE 00000af7: SWAP1 00000af8: PUSH1 0x01 00000afa: ADD 00000afb: SWAP1 00000afc: PUSH1 0x20 00000afe: ADD 00000aff: DUP1 00000b00: DUP4 00000b01: GT 00000b02: PUSH2 0x0af2 00000b05: JUMPI 00000b06: DUP3 00000b07: SWAP1 00000b08: SUB 00000b09: PUSH1 0x1f 00000b0b: AND 00000b0c: DUP3 00000b0d: ADD 00000b0e: SWAP2 00000b0f: JUMPDEST 00000b10: POP 00000b11: POP 00000b12: POP 00000b13: POP 00000b14: POP 00000b15: SWAP1 00000b16: POP 00000b17: SWAP4 00000b18: POP 00000b19: SWAP4 00000b1a: POP 00000b1b: POP 00000b1c: POP 00000b1d: PUSH2 0x0b2a 00000b20: JUMP 00000b21: JUMPDEST 00000b22: DUP6 00000b23: DUP6 00000b24: SWAP4 00000b25: POP 00000b26: SWAP4 00000b27: POP 00000b28: POP 00000b29: POP 00000b2a: JUMPDEST 00000b2b: SWAP4 00000b2c: POP 00000b2d: SWAP4 00000b2e: SWAP2 00000b2f: POP 00000b30: POP 00000b31: JUMP 00000b32: JUMPDEST 00000b33: PUSH1 0x02 00000b35: SLOAD 00000b36: PUSH1 0x01 00000b38: PUSH1 0x01 00000b3a: PUSH1 0xa0 00000b3c: SHL 00000b3d: SUB 00000b3e: AND 00000b3f: PUSH1 0x00 00000b41: PUSH2 0x0b49 00000b44: DUP3 00000b45: PUSH2 0x0ffa 00000b48: JUMP 00000b49: JUMPDEST 00000b4a: SWAP1 00000b4b: POP 00000b4c: CALLER 00000b4d: PUSH1 0x01 00000b4f: PUSH1 0x01 00000b51: PUSH1 0xa0 00000b53: SHL 00000b54: SUB 00000b55: DUP3 00000b56: AND 00000b57: EQ 00000b58: PUSH2 0x0b95 00000b5b: JUMPI 00000b5c: PUSH1 0x40 00000b5e: MLOAD 00000b5f: PUSH3 0x461bcd 00000b63: PUSH1 0xe5 00000b65: SHL 00000b66: DUP2 00000b67: MSTORE 00000b68: PUSH1 0x20 00000b6a: PUSH1 0x04 00000b6c: DUP3 00000b6d: ADD 00000b6e: MSTORE 00000b6f: PUSH1 0x0f 00000b71: PUSH1 0x24 00000b73: DUP3 00000b74: ADD 00000b75: MSTORE 00000b76: PUSH15 0x4e4f545f46524f4d5f425249444745 00000b86: PUSH1 0x88 00000b88: SHL 00000b89: PUSH1 0x44 00000b8b: DUP3 00000b8c: ADD 00000b8d: MSTORE 00000b8e: PUSH1 0x64 00000b90: ADD 00000b91: PUSH2 0x03ec 00000b94: JUMP 00000b95: JUMPDEST 00000b96: PUSH1 0x00 00000b98: PUSH2 0x0ba0 00000b9b: DUP4 00000b9c: PUSH2 0x105e 00000b9f: JUMP 00000ba0: JUMPDEST 00000ba1: PUSH1 0x00 00000ba3: SLOAD 00000ba4: SWAP1 00000ba5: SWAP2 00000ba6: POP 00000ba7: PUSH1 0x01 00000ba9: PUSH1 0x01 00000bab: PUSH1 0xa0 00000bad: SHL 00000bae: SUB 00000baf: DUP1 00000bb0: DUP4 00000bb1: AND 00000bb2: SWAP2 00000bb3: AND 00000bb4: EQ 00000bb5: PUSH2 0x0bfb 00000bb8: JUMPI 00000bb9: PUSH1 0x40 00000bbb: MLOAD 00000bbc: PUSH3 0x461bcd 00000bc0: PUSH1 0xe5 00000bc2: SHL 00000bc3: DUP2 00000bc4: MSTORE 00000bc5: PUSH1 0x20 00000bc7: PUSH1 0x04 00000bc9: DUP3 00000bca: ADD 00000bcb: MSTORE 00000bcc: PUSH1 0x18 00000bce: PUSH1 0x24 00000bd0: DUP3 00000bd1: ADD 00000bd2: MSTORE 00000bd3: PUSH24 0x4f4e4c595f434f554e544552504152545f47415445574159 00000bec: PUSH1 0x40 00000bee: SHL 00000bef: PUSH1 0x44 00000bf1: DUP3 00000bf2: ADD 00000bf3: MSTORE 00000bf4: PUSH1 0x64 00000bf6: ADD 00000bf7: PUSH2 0x03ec 00000bfa: JUMP 00000bfb: JUMPDEST 00000bfc: PUSH1 0x00 00000bfe: DUP1 00000bff: PUSH2 0x0c08 00000c02: DUP8 00000c03: DUP8 00000c04: PUSH2 0x1175 00000c07: JUMP 00000c08: JUMPDEST 00000c09: SWAP2 00000c0a: POP 00000c0b: SWAP2 00000c0c: POP 00000c0d: DUP1 00000c0e: MLOAD 00000c0f: PUSH1 0x00 00000c11: EQ 00000c12: PUSH2 0x0c26 00000c15: JUMPI 00000c16: POP 00000c17: PUSH1 0x40 00000c19: DUP1 00000c1a: MLOAD 00000c1b: PUSH1 0x20 00000c1d: DUP2 00000c1e: ADD 00000c1f: SWAP1 00000c20: SWAP2 00000c21: MSTORE 00000c22: PUSH1 0x00 00000c24: DUP2 00000c25: MSTORE 00000c26: JUMPDEST 00000c27: PUSH2 0x0c31 00000c2a: DUP3 00000c2b: DUP11 00000c2c: DUP4 00000c2d: PUSH2 0x0a42 00000c30: JUMP 00000c31: JUMPDEST 00000c32: POP 00000c33: SWAP9 00000c34: POP 00000c35: PUSH2 0x0c3f 00000c38: DUP12 00000c39: DUP11 00000c3a: DUP11 00000c3b: PUSH2 0x1190 00000c3e: JUMP 00000c3f: JUMPDEST 00000c40: DUP2 00000c41: DUP10 00000c42: PUSH1 0x01 00000c44: PUSH1 0x01 00000c46: PUSH1 0xa0 00000c48: SHL 00000c49: SUB 00000c4a: AND 00000c4b: DUP12 00000c4c: PUSH1 0x01 00000c4e: PUSH1 0x01 00000c50: PUSH1 0xa0 00000c52: SHL 00000c53: SUB 00000c54: AND 00000c55: PUSH32 0x891afe029c75c4f8c5855fc3480598bc5a53739344f6ae575bdb7ea2a79f56b3 00000c76: DUP15 00000c77: DUP13 00000c78: PUSH1 0x40 00000c7a: MLOAD 00000c7b: PUSH2 0x0c85 00000c7e: SWAP3 00000c7f: SWAP2 00000c80: SWAP1 00000c81: PUSH2 0x22c4 00000c84: JUMP 00000c85: JUMPDEST 00000c86: PUSH1 0x40 00000c88: MLOAD 00000c89: DUP1 00000c8a: SWAP2 00000c8b: SUB 00000c8c: SWAP1 00000c8d: LOG4 00000c8e: POP 00000c8f: POP 00000c90: POP 00000c91: POP 00000c92: POP 00000c93: POP 00000c94: POP 00000c95: POP 00000c96: POP 00000c97: POP 00000c98: POP 00000c99: JUMP 00000c9a: JUMPDEST 00000c9b: PUSH1 0x02 00000c9d: SLOAD 00000c9e: PUSH1 0x00 00000ca0: SWAP1 00000ca1: DUP2 00000ca2: SWAP1 00000ca3: PUSH2 0x0cb4 00000ca6: SWAP1 00000ca7: PUSH1 0x01 00000ca9: PUSH1 0x01 00000cab: PUSH1 0xa0 00000cad: SHL 00000cae: SUB 00000caf: AND 00000cb0: PUSH2 0x0ffa 00000cb3: JUMP 00000cb4: JUMPDEST 00000cb5: SWAP1 00000cb6: POP 00000cb7: DUP1 00000cb8: PUSH1 0x01 00000cba: PUSH1 0x01 00000cbc: PUSH1 0xa0 00000cbe: SHL 00000cbf: SUB 00000cc0: AND 00000cc1: PUSH4 0xe1758bd8 00000cc6: PUSH1 0x40 00000cc8: MLOAD 00000cc9: DUP2 00000cca: PUSH4 0xffffffff 00000ccf: AND 00000cd0: PUSH1 0xe0 00000cd2: SHL 00000cd3: DUP2 00000cd4: MSTORE 00000cd5: PUSH1 0x04 00000cd7: ADD 00000cd8: PUSH1 0x20 00000cda: PUSH1 0x40 00000cdc: MLOAD 00000cdd: DUP1 00000cde: DUP4 00000cdf: SUB 00000ce0: DUP2 00000ce1: DUP7 00000ce2: GAS 00000ce3: STATICCALL 00000ce4: ISZERO 00000ce5: DUP1 00000ce6: ISZERO 00000ce7: PUSH2 0x0cf4 00000cea: JUMPI 00000ceb: RETURNDATASIZE 00000cec: PUSH1 0x00 00000cee: DUP1 00000cef: RETURNDATACOPY 00000cf0: RETURNDATASIZE 00000cf1: PUSH1 0x00 00000cf3: REVERT 00000cf4: JUMPDEST 00000cf5: POP 00000cf6: POP 00000cf7: POP 00000cf8: POP 00000cf9: PUSH1 0x40 00000cfb: MLOAD 00000cfc: RETURNDATASIZE 00000cfd: PUSH1 0x1f 00000cff: NOT 00000d00: PUSH1 0x1f 00000d02: DUP3 00000d03: ADD 00000d04: AND 00000d05: DUP3 00000d06: ADD 00000d07: DUP1 00000d08: PUSH1 0x40 00000d0a: MSTORE 00000d0b: POP 00000d0c: DUP2 00000d0d: ADD 00000d0e: SWAP1 00000d0f: PUSH2 0x0d18 00000d12: SWAP2 00000d13: SWAP1 00000d14: PUSH2 0x22dd 00000d17: JUMP 00000d18: JUMPDEST 00000d19: SWAP2 00000d1a: POP 00000d1b: POP 00000d1c: SWAP1 00000d1d: JUMP 00000d1e: JUMPDEST 00000d1f: PUSH1 0x60 00000d21: PUSH1 0x02 00000d23: PUSH1 0x07 00000d25: SLOAD 00000d26: SUB 00000d27: PUSH2 0x0d42 00000d2a: JUMPI 00000d2b: PUSH1 0x40 00000d2d: MLOAD 00000d2e: PUSH3 0x461bcd 00000d32: PUSH1 0xe5 00000d34: SHL 00000d35: DUP2 00000d36: MSTORE 00000d37: PUSH1 0x04 00000d39: ADD 00000d3a: PUSH2 0x03ec 00000d3d: SWAP1 00000d3e: PUSH2 0x2130 00000d41: JUMP 00000d42: JUMPDEST 00000d43: PUSH1 0x02 00000d45: PUSH1 0x07 00000d47: SSTORE 00000d48: PUSH2 0x0d57 00000d4b: DUP10 00000d4c: DUP10 00000d4d: DUP10 00000d4e: DUP10 00000d4f: DUP10 00000d50: DUP10 00000d51: DUP10 00000d52: DUP10 00000d53: PUSH2 0x11a9 00000d56: JUMP 00000d57: JUMPDEST 00000d58: PUSH1 0x01 00000d5a: PUSH1 0x07 00000d5c: SSTORE 00000d5d: SWAP10 00000d5e: SWAP9 00000d5f: POP 00000d60: POP 00000d61: POP 00000d62: POP 00000d63: POP 00000d64: POP 00000d65: POP 00000d66: POP 00000d67: POP 00000d68: JUMP 00000d69: JUMPDEST 00000d6a: PUSH2 0x0d73 00000d6d: DUP4 00000d6e: DUP4 00000d6f: PUSH2 0x13f9 00000d72: JUMP 00000d73: JUMPDEST 00000d74: PUSH1 0x01 00000d76: PUSH1 0x01 00000d78: PUSH1 0xa0 00000d7a: SHL 00000d7b: SUB 00000d7c: DUP3 00000d7d: AND 00000d7e: PUSH2 0x0db6 00000d81: JUMPI 00000d82: PUSH1 0x40 00000d84: MLOAD 00000d85: PUSH3 0x461bcd 00000d89: PUSH1 0xe5 00000d8b: SHL 00000d8c: DUP2 00000d8d: MSTORE 00000d8e: PUSH1 0x20 00000d90: PUSH1 0x04 00000d92: DUP3 00000d93: ADD 00000d94: MSTORE 00000d95: PUSH1 0x0a 00000d97: PUSH1 0x24 00000d99: DUP3 00000d9a: ADD 00000d9b: MSTORE 00000d9c: PUSH10 0x2120a22fa927aaaa22a9 00000da7: PUSH1 0xb1 00000da9: SHL 00000daa: PUSH1 0x44 00000dac: DUP3 00000dad: ADD 00000dae: MSTORE 00000daf: PUSH1 0x64 00000db1: ADD 00000db2: PUSH2 0x03ec 00000db5: JUMP 00000db6: JUMPDEST 00000db7: PUSH1 0x01 00000db9: PUSH1 0x01 00000dbb: PUSH1 0xa0 00000dbd: SHL 00000dbe: SUB 00000dbf: DUP2 00000dc0: AND 00000dc1: PUSH2 0x0df8 00000dc4: JUMPI 00000dc5: PUSH1 0x40 00000dc7: MLOAD 00000dc8: PUSH3 0x461bcd 00000dcc: PUSH1 0xe5 00000dce: SHL 00000dcf: DUP2 00000dd0: MSTORE 00000dd1: PUSH1 0x20 00000dd3: PUSH1 0x04 00000dd5: DUP3 00000dd6: ADD 00000dd7: MSTORE 00000dd8: PUSH1 0x09 00000dda: PUSH1 0x24 00000ddc: DUP3 00000ddd: ADD 00000dde: MSTORE 00000ddf: PUSH9 0x0848288be929c849eb 00000de9: PUSH1 0xbb 00000deb: SHL 00000dec: PUSH1 0x44 00000dee: DUP3 00000def: ADD 00000df0: MSTORE 00000df1: PUSH1 0x64 00000df3: ADD 00000df4: PUSH2 0x03ec 00000df7: JUMP 00000df8: JUMPDEST 00000df9: PUSH1 0x02 00000dfb: DUP1 00000dfc: SLOAD 00000dfd: PUSH1 0x01 00000dff: PUSH1 0x01 00000e01: PUSH1 0xa0 00000e03: SHL 00000e04: SUB 00000e05: NOT 00000e06: AND 00000e07: PUSH1 0x01 00000e09: PUSH1 0x01 00000e0b: PUSH1 0xa0 00000e0d: SHL 00000e0e: SUB 00000e0f: SWAP3 00000e10: SWAP1 00000e11: SWAP3 00000e12: AND 00000e13: SWAP2 00000e14: SWAP1 00000e15: SWAP2 00000e16: OR 00000e17: SWAP1 00000e18: SSTORE 00000e19: POP 00000e1a: POP 00000e1b: JUMP 00000e1c: JUMPDEST 00000e1d: PUSH1 0x40 00000e1f: DUP1 00000e20: MLOAD 00000e21: PUSH1 0x04 00000e23: DUP2 00000e24: MSTORE 00000e25: PUSH1 0x24 00000e27: DUP2 00000e28: ADD 00000e29: DUP3 00000e2a: MSTORE 00000e2b: PUSH1 0x20 00000e2d: DUP2 00000e2e: ADD 00000e2f: DUP1 00000e30: MLOAD 00000e31: PUSH1 0x01 00000e33: PUSH1 0x01 00000e35: PUSH1 0xe0 00000e37: SHL 00000e38: SUB 00000e39: AND 00000e3a: PUSH1 0x01 00000e3c: PUSH1 0x01 00000e3e: PUSH1 0xe0 00000e40: SHL 00000e41: SUB 00000e42: NOT 00000e43: DUP6 00000e44: AND 00000e45: OR 00000e46: SWAP1 00000e47: MSTORE 00000e48: SWAP1 00000e49: MLOAD 00000e4a: PUSH1 0x60 00000e4c: SWAP2 00000e4d: PUSH1 0x00 00000e4f: SWAP2 00000e50: PUSH1 0x01 00000e52: PUSH1 0x01 00000e54: PUSH1 0xa0 00000e56: SHL 00000e57: SUB 00000e58: DUP7 00000e59: AND 00000e5a: SWAP2 00000e5b: PUSH2 0x0e63 00000e5e: SWAP2 00000e5f: PUSH2 0x22fa 00000e62: JUMP 00000e63: JUMPDEST 00000e64: PUSH1 0x00 00000e66: PUSH1 0x40 00000e68: MLOAD 00000e69: DUP1 00000e6a: DUP4 00000e6b: SUB 00000e6c: DUP2 00000e6d: DUP6 00000e6e: GAS 00000e6f: STATICCALL 00000e70: SWAP2 00000e71: POP 00000e72: POP 00000e73: RETURNDATASIZE 00000e74: DUP1 00000e75: PUSH1 0x00 00000e77: DUP2 00000e78: EQ 00000e79: PUSH2 0x0e9e 00000e7c: JUMPI 00000e7d: PUSH1 0x40 00000e7f: MLOAD 00000e80: SWAP2 00000e81: POP 00000e82: PUSH1 0x1f 00000e84: NOT 00000e85: PUSH1 0x3f 00000e87: RETURNDATASIZE 00000e88: ADD 00000e89: AND 00000e8a: DUP3 00000e8b: ADD 00000e8c: PUSH1 0x40 00000e8e: MSTORE 00000e8f: RETURNDATASIZE 00000e90: DUP3 00000e91: MSTORE 00000e92: RETURNDATASIZE 00000e93: PUSH1 0x00 00000e95: PUSH1 0x20 00000e97: DUP5 00000e98: ADD 00000e99: RETURNDATACOPY 00000e9a: PUSH2 0x0ea3 00000e9d: JUMP 00000e9e: JUMPDEST 00000e9f: PUSH1 0x60 00000ea1: SWAP2 00000ea2: POP 00000ea3: JUMPDEST 00000ea4: POP 00000ea5: SWAP6 00000ea6: SWAP5 00000ea7: POP 00000ea8: POP 00000ea9: POP 00000eaa: POP 00000eab: POP 00000eac: JUMP 00000ead: JUMPDEST 00000eae: PUSH1 0x60 00000eb0: DUP3 00000eb1: DUP3 00000eb2: PUSH1 0x40 00000eb4: MLOAD 00000eb5: PUSH1 0x20 00000eb7: ADD 00000eb8: PUSH2 0x0ec2 00000ebb: SWAP3 00000ebc: SWAP2 00000ebd: SWAP1 00000ebe: PUSH2 0x2316 00000ec1: JUMP 00000ec2: JUMPDEST 00000ec3: PUSH1 0x40 00000ec5: MLOAD 00000ec6: PUSH1 0x20 00000ec8: DUP2 00000ec9: DUP4 00000eca: SUB 00000ecb: SUB 00000ecc: DUP2 00000ecd: MSTORE 00000ece: SWAP1 00000ecf: PUSH1 0x40 00000ed1: MSTORE 00000ed2: SWAP1 00000ed3: POP 00000ed4: SWAP3 00000ed5: SWAP2 00000ed6: POP 00000ed7: POP 00000ed8: JUMP 00000ed9: JUMPDEST 00000eda: PUSH1 0x00 00000edc: DUP1 00000edd: SLOAD 00000ede: PUSH1 0x40 00000ee0: MLOAD 00000ee1: PUSH1 0x01 00000ee3: PUSH1 0x01 00000ee5: PUSH1 0xa0 00000ee7: SHL 00000ee8: SUB 00000ee9: SWAP1 00000eea: SWAP2 00000eeb: AND 00000eec: SWAP1 00000eed: PUSH2 0x0efa 00000ef0: SWAP1 00000ef1: DUP5 00000ef2: SWAP1 00000ef3: PUSH1 0x20 00000ef5: ADD 00000ef6: PUSH2 0x1bbd 00000ef9: JUMP 00000efa: JUMPDEST 00000efb: PUSH1 0x40 00000efd: MLOAD 00000efe: PUSH1 0x20 00000f00: DUP2 00000f01: DUP4 00000f02: SUB 00000f03: SUB 00000f04: DUP2 00000f05: MSTORE 00000f06: SWAP1 00000f07: PUSH1 0x40 00000f09: MSTORE 00000f0a: DUP1 00000f0b: MLOAD 00000f0c: SWAP1 00000f0d: PUSH1 0x20 00000f0f: ADD 00000f10: KECCAK256 00000f11: PUSH1 0x40 00000f13: MLOAD 00000f14: PUSH1 0x20 00000f16: ADD 00000f17: PUSH2 0x0f21 00000f1a: SWAP3 00000f1b: SWAP2 00000f1c: SWAP1 00000f1d: PUSH2 0x22c4 00000f20: JUMP 00000f21: JUMPDEST 00000f22: PUSH1 0x40 00000f24: MLOAD 00000f25: PUSH1 0x20 00000f27: DUP2 00000f28: DUP4 00000f29: SUB 00000f2a: SUB 00000f2b: DUP2 00000f2c: MSTORE 00000f2d: SWAP1 00000f2e: PUSH1 0x40 00000f30: MSTORE 00000f31: DUP1 00000f32: MLOAD 00000f33: SWAP1 00000f34: PUSH1 0x20 00000f36: ADD 00000f37: KECCAK256 00000f38: SWAP1 00000f39: POP 00000f3a: SWAP2 00000f3b: SWAP1 00000f3c: POP 00000f3d: JUMP 00000f3e: JUMPDEST 00000f3f: PUSH1 0x00 00000f41: PUSH1 0x40 00000f43: MLOAD 00000f44: DUP4 00000f45: PUSH1 0x40 00000f47: DUP3 00000f48: ADD 00000f49: MSTORE 00000f4a: DUP5 00000f4b: PUSH1 0x20 00000f4d: DUP3 00000f4e: ADD 00000f4f: MSTORE 00000f50: DUP3 00000f51: DUP2 00000f52: MSTORE 00000f53: PUSH1 0x0b 00000f55: DUP2 00000f56: ADD 00000f57: SWAP1 00000f58: POP 00000f59: PUSH1 0xff 00000f5b: DUP2 00000f5c: MSTORE8 00000f5d: PUSH1 0x55 00000f5f: SWAP1 00000f60: KECCAK256 00000f61: SWAP5 00000f62: SWAP4 00000f63: POP 00000f64: POP 00000f65: POP 00000f66: POP 00000f67: JUMP 00000f68: JUMPDEST 00000f69: PUSH1 0x00 00000f6b: PUSH2 0x0f74 00000f6e: DUP6 00000f6f: DUP6 00000f70: PUSH2 0x0385 00000f73: JUMP 00000f74: JUMPDEST 00000f75: PUSH1 0x40 00000f77: DUP1 00000f78: MLOAD 00000f79: PUSH1 0x60 00000f7b: DUP2 00000f7c: ADD 00000f7d: DUP3 00000f7e: MSTORE 00000f7f: PUSH1 0x01 00000f81: DUP1 00000f82: DUP3 00000f83: MSTORE 00000f84: PUSH1 0x01 00000f86: PUSH1 0x01 00000f88: PUSH1 0xa0 00000f8a: SHL 00000f8b: SUB 00000f8c: DUP8 00000f8d: DUP2 00000f8e: AND 00000f8f: PUSH1 0x20 00000f91: DUP1 00000f92: DUP6 00000f93: ADD 00000f94: SWAP2 00000f95: DUP3 00000f96: MSTORE 00000f97: DUP5 00000f98: DUP7 00000f99: ADD 00000f9a: DUP10 00000f9b: DUP2 00000f9c: MSTORE 00000f9d: PUSH1 0x00 00000f9f: DUP9 00000fa0: DUP2 00000fa1: MSTORE 00000fa2: PUSH1 0x03 00000fa4: SWAP1 00000fa5: SWAP3 00000fa6: MSTORE 00000fa7: SWAP6 00000fa8: SWAP1 00000fa9: KECCAK256 00000faa: DUP5 00000fab: MLOAD 00000fac: DUP2 00000fad: SLOAD 00000fae: SWAP3 00000faf: MLOAD 00000fb0: PUSH1 0x01 00000fb2: PUSH1 0x01 00000fb4: PUSH1 0xa8 00000fb6: SHL 00000fb7: SUB 00000fb8: NOT 00000fb9: SWAP1 00000fba: SWAP4 00000fbb: AND 00000fbc: SWAP1 00000fbd: ISZERO 00000fbe: ISZERO 00000fbf: PUSH2 0x0100 00000fc2: PUSH1 0x01 00000fc4: PUSH1 0xa8 00000fc6: SHL 00000fc7: SUB 00000fc8: NOT 00000fc9: AND 00000fca: OR 00000fcb: PUSH2 0x0100 00000fce: SWAP3 00000fcf: SWAP1 00000fd0: SWAP4 00000fd1: AND 00000fd2: SWAP2 00000fd3: SWAP1 00000fd4: SWAP2 00000fd5: MUL 00000fd6: SWAP2 00000fd7: SWAP1 00000fd8: SWAP2 00000fd9: OR 00000fda: DUP2 00000fdb: SSTORE 00000fdc: SWAP3 00000fdd: MLOAD 00000fde: SWAP4 00000fdf: SWAP5 00000fe0: POP 00000fe1: SWAP1 00000fe2: SWAP3 00000fe3: SWAP1 00000fe4: DUP3 00000fe5: ADD 00000fe6: SWAP1 00000fe7: PUSH2 0x0ff0 00000fea: SWAP1 00000feb: DUP3 00000fec: PUSH2 0x2389 00000fef: JUMP 00000ff0: JUMPDEST 00000ff1: POP 00000ff2: POP 00000ff3: POP 00000ff4: POP 00000ff5: POP 00000ff6: POP 00000ff7: POP 00000ff8: POP 00000ff9: JUMP 00000ffa: JUMPDEST 00000ffb: PUSH1 0x00 00000ffd: DUP2 00000ffe: PUSH1 0x01 00001000: PUSH1 0x01 00001002: PUSH1 0xa0 00001004: SHL 00001005: SUB 00001006: AND 00001007: PUSH4 0xe78cea92 0000100c: PUSH1 0x40 0000100e: MLOAD 0000100f: DUP2 00001010: PUSH4 0xffffffff 00001015: AND 00001016: PUSH1 0xe0 00001018: SHL 00001019: DUP2 0000101a: MSTORE 0000101b: PUSH1 0x04 0000101d: ADD 0000101e: PUSH1 0x20 00001020: PUSH1 0x40 00001022: MLOAD 00001023: DUP1 00001024: DUP4 00001025: SUB 00001026: DUP2 00001027: DUP7 00001028: GAS 00001029: STATICCALL 0000102a: ISZERO 0000102b: DUP1 0000102c: ISZERO 0000102d: PUSH2 0x103a 00001030: JUMPI 00001031: RETURNDATASIZE 00001032: PUSH1 0x00 00001034: DUP1 00001035: RETURNDATACOPY 00001036: RETURNDATASIZE 00001037: PUSH1 0x00 00001039: REVERT 0000103a: JUMPDEST 0000103b: POP 0000103c: POP 0000103d: POP 0000103e: POP 0000103f: PUSH1 0x40 00001041: MLOAD 00001042: RETURNDATASIZE 00001043: PUSH1 0x1f 00001045: NOT 00001046: PUSH1 0x1f 00001048: DUP3 00001049: ADD 0000104a: AND 0000104b: DUP3 0000104c: ADD 0000104d: DUP1 0000104e: PUSH1 0x40 00001050: MSTORE 00001051: POP 00001052: DUP2 00001053: ADD 00001054: SWAP1 00001055: PUSH2 0x037f 00001058: SWAP2 00001059: SWAP1 0000105a: PUSH2 0x22dd 0000105d: JUMP 0000105e: JUMPDEST 0000105f: PUSH1 0x00 00001061: DUP1 00001062: PUSH2 0x106a 00001065: DUP4 00001066: PUSH2 0x0ffa 00001069: JUMP 0000106a: JUMPDEST 0000106b: PUSH1 0x01 0000106d: PUSH1 0x01 0000106f: PUSH1 0xa0 00001071: SHL 00001072: SUB 00001073: AND 00001074: PUSH4 0xab5d8943 00001079: PUSH1 0x40 0000107b: MLOAD 0000107c: DUP2 0000107d: PUSH4 0xffffffff 00001082: AND 00001083: PUSH1 0xe0 00001085: SHL 00001086: DUP2 00001087: MSTORE 00001088: PUSH1 0x04 0000108a: ADD 0000108b: PUSH1 0x20 0000108d: PUSH1 0x40 0000108f: MLOAD 00001090: DUP1 00001091: DUP4 00001092: SUB 00001093: DUP2 00001094: DUP7 00001095: GAS 00001096: STATICCALL 00001097: ISZERO 00001098: DUP1 00001099: ISZERO 0000109a: PUSH2 0x10a7 0000109d: JUMPI 0000109e: RETURNDATASIZE 0000109f: PUSH1 0x00 000010a1: DUP1 000010a2: RETURNDATACOPY 000010a3: RETURNDATASIZE 000010a4: PUSH1 0x00 000010a6: REVERT 000010a7: JUMPDEST 000010a8: POP 000010a9: POP 000010aa: POP 000010ab: POP 000010ac: PUSH1 0x40 000010ae: MLOAD 000010af: RETURNDATASIZE 000010b0: PUSH1 0x1f 000010b2: NOT 000010b3: PUSH1 0x1f 000010b5: DUP3 000010b6: ADD 000010b7: AND 000010b8: DUP3 000010b9: ADD 000010ba: DUP1 000010bb: PUSH1 0x40 000010bd: MSTORE 000010be: POP 000010bf: DUP2 000010c0: ADD 000010c1: SWAP1 000010c2: PUSH2 0x10cb 000010c5: SWAP2 000010c6: SWAP1 000010c7: PUSH2 0x22dd 000010ca: JUMP 000010cb: JUMPDEST 000010cc: SWAP1 000010cd: POP 000010ce: PUSH1 0x00 000010d0: DUP2 000010d1: PUSH1 0x01 000010d3: PUSH1 0x01 000010d5: PUSH1 0xa0 000010d7: SHL 000010d8: SUB 000010d9: AND 000010da: PUSH4 0x80648b02 000010df: PUSH1 0x40 000010e1: MLOAD 000010e2: DUP2 000010e3: PUSH4 0xffffffff 000010e8: AND 000010e9: PUSH1 0xe0 000010eb: SHL 000010ec: DUP2 000010ed: MSTORE 000010ee: PUSH1 0x04 000010f0: ADD 000010f1: PUSH1 0x20 000010f3: PUSH1 0x40 000010f5: MLOAD 000010f6: DUP1 000010f7: DUP4 000010f8: SUB 000010f9: DUP2 000010fa: DUP7 000010fb: GAS 000010fc: STATICCALL 000010fd: ISZERO 000010fe: DUP1 000010ff: ISZERO 00001100: PUSH2 0x110d 00001103: JUMPI 00001104: RETURNDATASIZE 00001105: PUSH1 0x00 00001107: DUP1 00001108: RETURNDATACOPY 00001109: RETURNDATASIZE 0000110a: PUSH1 0x00 0000110c: REVERT 0000110d: JUMPDEST 0000110e: POP 0000110f: POP 00001110: POP 00001111: POP 00001112: PUSH1 0x40 00001114: MLOAD 00001115: RETURNDATASIZE 00001116: PUSH1 0x1f 00001118: NOT 00001119: PUSH1 0x1f 0000111b: DUP3 0000111c: ADD 0000111d: AND 0000111e: DUP3 0000111f: ADD 00001120: DUP1 00001121: PUSH1 0x40 00001123: MSTORE 00001124: POP 00001125: DUP2 00001126: ADD 00001127: SWAP1 00001128: PUSH2 0x1131 0000112b: SWAP2 0000112c: SWAP1 0000112d: PUSH2 0x22dd 00001130: JUMP 00001131: JUMPDEST 00001132: SWAP1 00001133: POP 00001134: PUSH1 0x01 00001136: PUSH1 0x01 00001138: PUSH1 0xa0 0000113a: SHL 0000113b: SUB 0000113c: DUP2 0000113d: AND 0000113e: PUSH2 0x0704 00001141: JUMPI 00001142: PUSH1 0x40 00001144: MLOAD 00001145: PUSH3 0x461bcd 00001149: PUSH1 0xe5 0000114b: SHL 0000114c: DUP2 0000114d: MSTORE 0000114e: PUSH1 0x20 00001150: PUSH1 0x04 00001152: DUP3 00001153: ADD 00001154: MSTORE 00001155: PUSH1 0x09 00001157: PUSH1 0x24 00001159: DUP3 0000115a: ADD 0000115b: MSTORE 0000115c: PUSH9 0x2727afa9a2a72222a9 00001166: PUSH1 0xb9 00001168: SHL 00001169: PUSH1 0x44 0000116b: DUP3 0000116c: ADD 0000116d: MSTORE 0000116e: PUSH1 0x64 00001170: ADD 00001171: PUSH2 0x03ec 00001174: JUMP 00001175: JUMPDEST 00001176: PUSH1 0x00 00001178: PUSH1 0x60 0000117a: PUSH2 0x1185 0000117d: DUP4 0000117e: DUP6 0000117f: ADD 00001180: DUP6 00001181: PUSH2 0x2448 00001184: JUMP 00001185: JUMPDEST 00001186: SWAP1 00001187: SWAP6 00001188: SWAP1 00001189: SWAP5 0000118a: POP 0000118b: SWAP3 0000118c: POP 0000118d: POP 0000118e: POP 0000118f: JUMP 00001190: JUMPDEST 00001191: PUSH2 0x11a4 00001194: PUSH1 0x01 00001196: PUSH1 0x01 00001198: PUSH1 0xa0 0000119a: SHL 0000119b: SUB 0000119c: DUP5 0000119d: AND 0000119e: DUP4 0000119f: DUP4 000011a0: PUSH2 0x14bb 000011a3: JUMP 000011a4: JUMPDEST 000011a5: POP 000011a6: POP 000011a7: POP 000011a8: JUMP 000011a9: JUMPDEST 000011aa: PUSH1 0x60 000011ac: PUSH2 0x11b4 000011af: CALLER 000011b0: PUSH2 0x1511 000011b3: JUMP 000011b4: JUMPDEST 000011b5: PUSH2 0x11f2 000011b8: JUMPI 000011b9: PUSH1 0x40 000011bb: MLOAD 000011bc: PUSH3 0x461bcd 000011c0: PUSH1 0xe5 000011c2: SHL 000011c3: DUP2 000011c4: MSTORE 000011c5: PUSH1 0x20 000011c7: PUSH1 0x04 000011c9: DUP3 000011ca: ADD 000011cb: MSTORE 000011cc: PUSH1 0x0f 000011ce: PUSH1 0x24 000011d0: DUP3 000011d1: ADD 000011d2: MSTORE 000011d3: PUSH15 0x2727aa2fa32927a6afa927aaaa22a9 000011e3: PUSH1 0x89 000011e5: SHL 000011e6: PUSH1 0x44 000011e8: DUP3 000011e9: ADD 000011ea: MSTORE 000011eb: PUSH1 0x64 000011ed: ADD 000011ee: PUSH2 0x03ec 000011f1: JUMP 000011f2: JUMPDEST 000011f3: PUSH1 0x00 000011f5: DUP1 000011f6: PUSH1 0x60 000011f8: PUSH1 0x00 000011fa: DUP1 000011fb: PUSH2 0x1203 000011fe: CALLER 000011ff: PUSH2 0x1511 00001202: JUMP 00001203: JUMPDEST 00001204: ISZERO 00001205: PUSH2 0x121c 00001208: JUMPI 00001209: PUSH2 0x1212 0000120c: DUP9 0000120d: DUP9 0000120e: PUSH2 0x1525 00001211: JUMP 00001212: JUMPDEST 00001213: SWAP1 00001214: SWAP6 00001215: POP 00001216: SWAP3 00001217: POP 00001218: PUSH2 0x1259 0000121b: JUMP 0000121c: JUMPDEST 0000121d: CALLER 0000121e: SWAP5 0000121f: POP 00001220: DUP8 00001221: DUP8 00001222: DUP1 00001223: DUP1 00001224: PUSH1 0x1f 00001226: ADD 00001227: PUSH1 0x20 00001229: DUP1 0000122a: SWAP2 0000122b: DIV 0000122c: MUL 0000122d: PUSH1 0x20 0000122f: ADD 00001230: PUSH1 0x40 00001232: MLOAD 00001233: SWAP1 00001234: DUP2 00001235: ADD 00001236: PUSH1 0x40 00001238: MSTORE 00001239: DUP1 0000123a: SWAP4 0000123b: SWAP3 0000123c: SWAP2 0000123d: SWAP1 0000123e: DUP2 0000123f: DUP2 00001240: MSTORE 00001241: PUSH1 0x20 00001243: ADD 00001244: DUP4 00001245: DUP4 00001246: DUP1 00001247: DUP3 00001248: DUP5 00001249: CALLDATACOPY 0000124a: PUSH1 0x00 0000124c: SWAP3 0000124d: ADD 0000124e: SWAP2 0000124f: SWAP1 00001250: SWAP2 00001251: MSTORE 00001252: POP 00001253: SWAP3 00001254: SWAP6 00001255: POP 00001256: POP 00001257: POP 00001258: POP 00001259: JUMPDEST 0000125a: PUSH2 0x1262 0000125d: DUP4 0000125e: PUSH2 0x1541 00001261: JUMP 00001262: JUMPDEST 00001263: DUP2 00001264: MLOAD 00001265: SWAP2 00001266: SWAP6 00001267: POP 00001268: SWAP2 00001269: SWAP4 0000126a: POP 0000126b: SWAP1 0000126c: SWAP2 0000126d: POP 0000126e: ISZERO 0000126f: PUSH2 0x12b0 00001272: JUMPI 00001273: PUSH1 0x40 00001275: MLOAD 00001276: PUSH3 0x461bcd 0000127a: PUSH1 0xe5 0000127c: SHL 0000127d: DUP2 0000127e: MSTORE 0000127f: PUSH1 0x20 00001281: PUSH1 0x04 00001283: DUP3 00001284: ADD 00001285: MSTORE 00001286: PUSH1 0x13 00001288: PUSH1 0x24 0000128a: DUP3 0000128b: ADD 0000128c: MSTORE 0000128d: PUSH19 0x115615149057d110551057d11254d050931151 000012a1: PUSH1 0x6a 000012a3: SHL 000012a4: PUSH1 0x44 000012a6: DUP3 000012a7: ADD 000012a8: MSTORE 000012a9: PUSH1 0x64 000012ab: ADD 000012ac: PUSH2 0x03ec 000012af: JUMP 000012b0: JUMPDEST 000012b1: PUSH1 0x01 000012b3: PUSH1 0x01 000012b5: PUSH1 0xa0 000012b7: SHL 000012b8: SUB 000012b9: DUP15 000012ba: AND 000012bb: EXTCODESIZE 000012bc: PUSH2 0x12f9 000012bf: JUMPI 000012c0: PUSH1 0x40 000012c2: MLOAD 000012c3: PUSH3 0x461bcd 000012c7: PUSH1 0xe5 000012c9: SHL 000012ca: DUP2 000012cb: MSTORE 000012cc: PUSH1 0x20 000012ce: PUSH1 0x04 000012d0: DUP3 000012d1: ADD 000012d2: MSTORE 000012d3: PUSH1 0x0f 000012d5: PUSH1 0x24 000012d7: DUP3 000012d8: ADD 000012d9: MSTORE 000012da: PUSH15 0x130c57d393d517d0d3d395149050d5 000012ea: PUSH1 0x8a 000012ec: SHL 000012ed: PUSH1 0x44 000012ef: DUP3 000012f0: ADD 000012f1: MSTORE 000012f2: PUSH1 0x64 000012f4: ADD 000012f5: PUSH2 0x03ec 000012f8: JUMP 000012f9: JUMPDEST 000012fa: PUSH1 0x00 000012fc: PUSH2 0x1304 000012ff: DUP16 00001300: PUSH2 0x06da 00001303: JUMP 00001304: JUMPDEST 00001305: SWAP1 00001306: POP 00001307: PUSH1 0x01 00001309: PUSH1 0x01 0000130b: PUSH1 0xa0 0000130d: SHL 0000130e: SUB 0000130f: DUP2 00001310: AND 00001311: PUSH2 0x134e 00001314: JUMPI 00001315: PUSH1 0x40 00001317: MLOAD 00001318: PUSH3 0x461bcd 0000131c: PUSH1 0xe5 0000131e: SHL 0000131f: DUP2 00001320: MSTORE 00001321: PUSH1 0x20 00001323: PUSH1 0x04 00001325: DUP3 00001326: ADD 00001327: MSTORE 00001328: PUSH1 0x0f 0000132a: PUSH1 0x24 0000132c: DUP3 0000132d: ADD 0000132e: MSTORE 0000132f: PUSH15 0x1393d7d30c97d513d2d15397d4d155 0000133f: PUSH1 0x8a 00001341: SHL 00001342: PUSH1 0x44 00001344: DUP3 00001345: ADD 00001346: MSTORE 00001347: PUSH1 0x64 00001349: ADD 0000134a: PUSH2 0x03ec 0000134d: JUMP 0000134e: JUMPDEST 0000134f: PUSH2 0x1359 00001352: DUP16 00001353: DUP8 00001354: DUP15 00001355: PUSH2 0x1568 00001358: JUMP 00001359: JUMPDEST 0000135a: SWAP12 0000135b: POP 0000135c: PUSH2 0x1368 0000135f: DUP16 00001360: DUP8 00001361: DUP16 00001362: DUP16 00001363: DUP9 00001364: PUSH2 0x0617 00001367: JUMP 00001368: JUMPDEST 00001369: SWAP7 0000136a: POP 0000136b: PUSH2 0x137a 0000136e: DUP15 0000136f: DUP8 00001370: DUP15 00001371: DUP15 00001372: DUP15 00001373: DUP9 00001374: DUP9 00001375: DUP15 00001376: PUSH2 0x1675 00001379: JUMP 0000137a: JUMPDEST 0000137b: SWAP5 0000137c: POP 0000137d: POP 0000137e: POP 0000137f: POP 00001380: DUP2 00001381: DUP11 00001382: PUSH1 0x01 00001384: PUSH1 0x01 00001386: PUSH1 0xa0 00001388: SHL 00001389: SUB 0000138a: AND 0000138b: DUP5 0000138c: PUSH1 0x01 0000138e: PUSH1 0x01 00001390: PUSH1 0xa0 00001392: SHL 00001393: SUB 00001394: AND 00001395: PUSH32 0xb8910b9960c443aac3240b98585384e3a6f109fbf6969e264c3f183d69aba7e1 000013b6: DUP16 000013b7: DUP14 000013b8: PUSH1 0x40 000013ba: MLOAD 000013bb: PUSH2 0x13c5 000013be: SWAP3 000013bf: SWAP2 000013c0: SWAP1 000013c1: PUSH2 0x22c4 000013c4: JUMP 000013c5: JUMPDEST 000013c6: PUSH1 0x40 000013c8: MLOAD 000013c9: DUP1 000013ca: SWAP2 000013cb: SUB 000013cc: SWAP1 000013cd: LOG4 000013ce: PUSH1 0x40 000013d0: DUP1 000013d1: MLOAD 000013d2: PUSH1 0x20 000013d4: DUP2 000013d5: ADD 000013d6: DUP5 000013d7: SWAP1 000013d8: MSTORE 000013d9: ADD 000013da: PUSH1 0x40 000013dc: MLOAD 000013dd: PUSH1 0x20 000013df: DUP2 000013e0: DUP4 000013e1: SUB 000013e2: SUB 000013e3: DUP2 000013e4: MSTORE 000013e5: SWAP1 000013e6: PUSH1 0x40 000013e8: MSTORE 000013e9: SWAP4 000013ea: POP 000013eb: POP 000013ec: POP 000013ed: POP 000013ee: SWAP9 000013ef: SWAP8 000013f0: POP 000013f1: POP 000013f2: POP 000013f3: POP 000013f4: POP 000013f5: POP 000013f6: POP 000013f7: POP 000013f8: JUMP 000013f9: JUMPDEST 000013fa: PUSH1 0x01 000013fc: PUSH1 0x01 000013fe: PUSH1 0xa0 00001400: SHL 00001401: SUB 00001402: DUP3 00001403: AND 00001404: PUSH2 0x1445 00001407: JUMPI 00001408: PUSH1 0x40 0000140a: MLOAD 0000140b: PUSH3 0x461bcd 0000140f: PUSH1 0xe5 00001411: SHL 00001412: DUP2 00001413: MSTORE 00001414: PUSH1 0x20 00001416: PUSH1 0x04 00001418: DUP3 00001419: ADD 0000141a: MSTORE 0000141b: PUSH1 0x13 0000141d: PUSH1 0x24 0000141f: DUP3 00001420: ADD 00001421: MSTORE 00001422: PUSH19 0x1253959053125117d0d3d55395115494105495 00001436: PUSH1 0x6a 00001438: SHL 00001439: PUSH1 0x44 0000143b: DUP3 0000143c: ADD 0000143d: MSTORE 0000143e: PUSH1 0x64 00001440: ADD 00001441: PUSH2 0x03ec 00001444: JUMP 00001445: JUMPDEST 00001446: PUSH1 0x00 00001448: SLOAD 00001449: PUSH1 0x01 0000144b: PUSH1 0x01 0000144d: PUSH1 0xa0 0000144f: SHL 00001450: SUB 00001451: AND 00001452: ISZERO 00001453: PUSH2 0x148d 00001456: JUMPI 00001457: PUSH1 0x40 00001459: MLOAD 0000145a: PUSH3 0x461bcd 0000145e: PUSH1 0xe5 00001460: SHL 00001461: DUP2 00001462: MSTORE 00001463: PUSH1 0x20 00001465: PUSH1 0x04 00001467: DUP3 00001468: ADD 00001469: MSTORE 0000146a: PUSH1 0x0c 0000146c: PUSH1 0x24 0000146e: DUP3 0000146f: ADD 00001470: MSTORE 00001471: PUSH12 0x1053149150511657d2539255 0000147e: PUSH1 0xa2 00001480: SHL 00001481: PUSH1 0x44 00001483: DUP3 00001484: ADD 00001485: MSTORE 00001486: PUSH1 0x64 00001488: ADD 00001489: PUSH2 0x03ec 0000148c: JUMP 0000148d: JUMPDEST 0000148e: PUSH1 0x00 00001490: DUP1 00001491: SLOAD 00001492: PUSH1 0x01 00001494: PUSH1 0x01 00001496: PUSH1 0xa0 00001498: SHL 00001499: SUB 0000149a: SWAP4 0000149b: DUP5 0000149c: AND 0000149d: PUSH1 0x01 0000149f: PUSH1 0x01 000014a1: PUSH1 0xa0 000014a3: SHL 000014a4: SUB 000014a5: NOT 000014a6: SWAP2 000014a7: DUP3 000014a8: AND 000014a9: OR 000014aa: SWAP1 000014ab: SWAP2 000014ac: SSTORE 000014ad: PUSH1 0x01 000014af: DUP1 000014b0: SLOAD 000014b1: SWAP3 000014b2: SWAP1 000014b3: SWAP4 000014b4: AND 000014b5: SWAP2 000014b6: AND 000014b7: OR 000014b8: SWAP1 000014b9: SSTORE 000014ba: JUMP 000014bb: JUMPDEST 000014bc: PUSH2 0x11a4 000014bf: DUP4 000014c0: PUSH4 0xa9059cbb 000014c5: PUSH1 0xe0 000014c7: SHL 000014c8: DUP5 000014c9: DUP5 000014ca: PUSH1 0x40 000014cc: MLOAD 000014cd: PUSH1 0x24 000014cf: ADD 000014d0: PUSH2 0x14da 000014d3: SWAP3 000014d4: SWAP2 000014d5: SWAP1 000014d6: PUSH2 0x22c4 000014d9: JUMP 000014da: JUMPDEST 000014db: PUSH1 0x40 000014dd: DUP1 000014de: MLOAD 000014df: PUSH1 0x1f 000014e1: NOT 000014e2: DUP2 000014e3: DUP5 000014e4: SUB 000014e5: ADD 000014e6: DUP2 000014e7: MSTORE 000014e8: SWAP2 000014e9: SWAP1 000014ea: MSTORE 000014eb: PUSH1 0x20 000014ed: DUP2 000014ee: ADD 000014ef: DUP1 000014f0: MLOAD 000014f1: PUSH1 0x01 000014f3: PUSH1 0x01 000014f5: PUSH1 0xe0 000014f7: SHL 000014f8: SUB 000014f9: AND 000014fa: PUSH1 0x01 000014fc: PUSH1 0x01 000014fe: PUSH1 0xe0 00001500: SHL 00001501: SUB 00001502: NOT 00001503: SWAP1 00001504: SWAP4 00001505: AND 00001506: SWAP3 00001507: SWAP1 00001508: SWAP3 00001509: OR 0000150a: SWAP1 0000150b: SWAP2 0000150c: MSTORE 0000150d: PUSH2 0x16ca 00001510: JUMP 00001511: JUMPDEST 00001512: PUSH1 0x01 00001514: SLOAD 00001515: PUSH1 0x01 00001517: PUSH1 0x01 00001519: PUSH1 0xa0 0000151b: SHL 0000151c: SUB 0000151d: SWAP2 0000151e: DUP3 0000151f: AND 00001520: SWAP2 00001521: AND 00001522: EQ 00001523: SWAP1 00001524: JUMP 00001525: JUMPDEST 00001526: PUSH1 0x00 00001528: PUSH1 0x60 0000152a: PUSH2 0x1535 0000152d: DUP4 0000152e: DUP6 0000152f: ADD 00001530: DUP6 00001531: PUSH2 0x248e 00001534: JUMP 00001535: JUMPDEST 00001536: SWAP2 00001537: POP 00001538: SWAP2 00001539: POP 0000153a: JUMPDEST 0000153b: SWAP3 0000153c: POP 0000153d: SWAP3 0000153e: SWAP1 0000153f: POP 00001540: JUMP 00001541: JUMPDEST 00001542: PUSH1 0x00 00001544: PUSH1 0x60 00001546: PUSH1 0x00 00001548: DUP4 00001549: DUP1 0000154a: PUSH1 0x20 0000154c: ADD 0000154d: SWAP1 0000154e: MLOAD 0000154f: DUP2 00001550: ADD 00001551: SWAP1 00001552: PUSH2 0x155b 00001555: SWAP2 00001556: SWAP1 00001557: PUSH2 0x24c7 0000155a: JUMP 0000155b: JUMPDEST 0000155c: SWAP2 0000155d: SWAP7 0000155e: SWAP1 0000155f: SWAP6 00001560: POP 00001561: SWAP1 00001562: SWAP4 00001563: POP 00001564: SWAP2 00001565: POP 00001566: POP 00001567: JUMP 00001568: JUMPDEST 00001569: PUSH1 0x00 0000156b: DUP1 0000156c: DUP5 0000156d: PUSH1 0x01 0000156f: PUSH1 0x01 00001571: PUSH1 0xa0 00001573: SHL 00001574: SUB 00001575: AND 00001576: PUSH4 0x70a08231 0000157b: ADDRESS 0000157c: PUSH1 0x40 0000157e: MLOAD 0000157f: DUP3 00001580: PUSH4 0xffffffff 00001585: AND 00001586: PUSH1 0xe0 00001588: SHL 00001589: DUP2 0000158a: MSTORE 0000158b: PUSH1 0x04 0000158d: ADD 0000158e: PUSH2 0x1597 00001591: SWAP2 00001592: SWAP1 00001593: PUSH2 0x1bbd 00001596: JUMP 00001597: JUMPDEST 00001598: PUSH1 0x20 0000159a: PUSH1 0x40 0000159c: MLOAD 0000159d: DUP1 0000159e: DUP4 0000159f: SUB 000015a0: DUP2 000015a1: DUP7 000015a2: GAS 000015a3: STATICCALL 000015a4: ISZERO 000015a5: DUP1 000015a6: ISZERO 000015a7: PUSH2 0x15b4 000015aa: JUMPI 000015ab: RETURNDATASIZE 000015ac: PUSH1 0x00 000015ae: DUP1 000015af: RETURNDATACOPY 000015b0: RETURNDATASIZE 000015b1: PUSH1 0x00 000015b3: REVERT 000015b4: JUMPDEST 000015b5: POP 000015b6: POP 000015b7: POP 000015b8: POP 000015b9: PUSH1 0x40 000015bb: MLOAD 000015bc: RETURNDATASIZE 000015bd: PUSH1 0x1f 000015bf: NOT 000015c0: PUSH1 0x1f 000015c2: DUP3 000015c3: ADD 000015c4: AND 000015c5: DUP3 000015c6: ADD 000015c7: DUP1 000015c8: PUSH1 0x40 000015ca: MSTORE 000015cb: POP 000015cc: DUP2 000015cd: ADD 000015ce: SWAP1 000015cf: PUSH2 0x15d8 000015d2: SWAP2 000015d3: SWAP1 000015d4: PUSH2 0x2552 000015d7: JUMP 000015d8: JUMPDEST 000015d9: SWAP1 000015da: POP 000015db: PUSH2 0x15ef 000015de: PUSH1 0x01 000015e0: PUSH1 0x01 000015e2: PUSH1 0xa0 000015e4: SHL 000015e5: SUB 000015e6: DUP7 000015e7: AND 000015e8: DUP6 000015e9: ADDRESS 000015ea: DUP7 000015eb: PUSH2 0x179c 000015ee: JUMP 000015ef: JUMPDEST 000015f0: PUSH1 0x40 000015f2: MLOAD 000015f3: PUSH4 0x70a08231 000015f8: PUSH1 0xe0 000015fa: SHL 000015fb: DUP2 000015fc: MSTORE 000015fd: PUSH1 0x00 000015ff: SWAP1 00001600: PUSH1 0x01 00001602: PUSH1 0x01 00001604: PUSH1 0xa0 00001606: SHL 00001607: SUB 00001608: DUP8 00001609: AND 0000160a: SWAP1 0000160b: PUSH4 0x70a08231 00001610: SWAP1 00001611: PUSH2 0x161e 00001614: SWAP1 00001615: ADDRESS 00001616: SWAP1 00001617: PUSH1 0x04 00001619: ADD 0000161a: PUSH2 0x1bbd 0000161d: JUMP 0000161e: JUMPDEST 0000161f: PUSH1 0x20 00001621: PUSH1 0x40 00001623: MLOAD 00001624: DUP1 00001625: DUP4 00001626: SUB 00001627: DUP2 00001628: DUP7 00001629: GAS 0000162a: STATICCALL 0000162b: ISZERO 0000162c: DUP1 0000162d: ISZERO 0000162e: PUSH2 0x163b 00001631: JUMPI 00001632: RETURNDATASIZE 00001633: PUSH1 0x00 00001635: DUP1 00001636: RETURNDATACOPY 00001637: RETURNDATASIZE 00001638: PUSH1 0x00 0000163a: REVERT 0000163b: JUMPDEST 0000163c: POP 0000163d: POP 0000163e: POP 0000163f: POP 00001640: PUSH1 0x40 00001642: MLOAD 00001643: RETURNDATASIZE 00001644: PUSH1 0x1f 00001646: NOT 00001647: PUSH1 0x1f 00001649: DUP3 0000164a: ADD 0000164b: AND 0000164c: DUP3 0000164d: ADD 0000164e: DUP1 0000164f: PUSH1 0x40 00001651: MSTORE 00001652: POP 00001653: DUP2 00001654: ADD 00001655: SWAP1 00001656: PUSH2 0x165f 00001659: SWAP2 0000165a: SWAP1 0000165b: PUSH2 0x2552 0000165e: JUMP 0000165f: JUMPDEST 00001660: SWAP1 00001661: POP 00001662: PUSH2 0x166b 00001665: DUP3 00001666: DUP3 00001667: PUSH2 0x256b 0000166a: JUMP 0000166b: JUMPDEST 0000166c: SWAP7 0000166d: SWAP6 0000166e: POP 0000166f: POP 00001670: POP 00001671: POP 00001672: POP 00001673: POP 00001674: JUMP 00001675: JUMPDEST 00001676: PUSH1 0x00 00001678: PUSH2 0x04c8 0000167b: PUSH1 0x02 0000167d: PUSH1 0x00 0000167f: SWAP1 00001680: SLOAD 00001681: SWAP1 00001682: PUSH2 0x0100 00001685: EXP 00001686: SWAP1 00001687: DIV 00001688: PUSH1 0x01 0000168a: PUSH1 0x01 0000168c: PUSH1 0xa0 0000168e: SHL 0000168f: SUB 00001690: AND 00001691: PUSH1 0x00 00001693: DUP1 00001694: SLOAD 00001695: SWAP1 00001696: PUSH2 0x0100 00001699: EXP 0000169a: SWAP1 0000169b: DIV 0000169c: PUSH1 0x01 0000169e: PUSH1 0x01 000016a0: PUSH1 0xa0 000016a2: SHL 000016a3: SUB 000016a4: AND 000016a5: DUP12 000016a6: DUP12 000016a7: DUP8 000016a8: PUSH1 0x00 000016aa: PUSH1 0x40 000016ac: MLOAD 000016ad: DUP1 000016ae: PUSH1 0x60 000016b0: ADD 000016b1: PUSH1 0x40 000016b3: MSTORE 000016b4: DUP1 000016b5: DUP13 000016b6: DUP2 000016b7: MSTORE 000016b8: PUSH1 0x20 000016ba: ADD 000016bb: DUP15 000016bc: DUP2 000016bd: MSTORE 000016be: PUSH1 0x20 000016c0: ADD 000016c1: DUP14 000016c2: DUP2 000016c3: MSTORE 000016c4: POP 000016c5: DUP10 000016c6: PUSH2 0x17da 000016c9: JUMP 000016ca: JUMPDEST 000016cb: PUSH1 0x00 000016cd: PUSH2 0x171f 000016d0: DUP3 000016d1: PUSH1 0x40 000016d3: MLOAD 000016d4: DUP1 000016d5: PUSH1 0x40 000016d7: ADD 000016d8: PUSH1 0x40 000016da: MSTORE 000016db: DUP1 000016dc: PUSH1 0x20 000016de: DUP2 000016df: MSTORE 000016e0: PUSH1 0x20 000016e2: ADD 000016e3: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564 00001704: DUP2 00001705: MSTORE 00001706: POP 00001707: DUP6 00001708: PUSH1 0x01 0000170a: PUSH1 0x01 0000170c: PUSH1 0xa0 0000170e: SHL 0000170f: SUB 00001710: AND 00001711: PUSH2 0x17fa 00001714: SWAP1 00001715: SWAP3 00001716: SWAP2 00001717: SWAP1 00001718: PUSH4 0xffffffff 0000171d: AND 0000171e: JUMP 0000171f: JUMPDEST 00001720: DUP1 00001721: MLOAD 00001722: SWAP1 00001723: SWAP2 00001724: POP 00001725: ISZERO 00001726: PUSH2 0x11a4 00001729: JUMPI 0000172a: DUP1 0000172b: DUP1 0000172c: PUSH1 0x20 0000172e: ADD 0000172f: SWAP1 00001730: MLOAD 00001731: DUP2 00001732: ADD 00001733: SWAP1 00001734: PUSH2 0x173d 00001737: SWAP2 00001738: SWAP1 00001739: PUSH2 0x2266 0000173c: JUMP 0000173d: JUMPDEST 0000173e: PUSH2 0x11a4 00001741: JUMPI 00001742: PUSH1 0x40 00001744: MLOAD 00001745: PUSH3 0x461bcd 00001749: PUSH1 0xe5 0000174b: SHL 0000174c: DUP2 0000174d: MSTORE 0000174e: PUSH1 0x20 00001750: PUSH1 0x04 00001752: DUP3 00001753: ADD 00001754: MSTORE 00001755: PUSH1 0x2a 00001757: PUSH1 0x24 00001759: DUP3 0000175a: ADD 0000175b: MSTORE 0000175c: PUSH32 0x5361666545524332303a204552433230206f7065726174696f6e20646964206e 0000177d: PUSH1 0x44 0000177f: DUP3 00001780: ADD 00001781: MSTORE 00001782: PUSH10 0x1bdd081cdd58d8d95959 0000178d: PUSH1 0xb2 0000178f: SHL 00001790: PUSH1 0x64 00001792: DUP3 00001793: ADD 00001794: MSTORE 00001795: PUSH1 0x84 00001797: ADD 00001798: PUSH2 0x03ec 0000179b: JUMP 0000179c: JUMPDEST 0000179d: PUSH1 0x40 0000179f: MLOAD 000017a0: PUSH1 0x01 000017a2: PUSH1 0x01 000017a4: PUSH1 0xa0 000017a6: SHL 000017a7: SUB 000017a8: DUP1 000017a9: DUP6 000017aa: AND 000017ab: PUSH1 0x24 000017ad: DUP4 000017ae: ADD 000017af: MSTORE 000017b0: DUP4 000017b1: AND 000017b2: PUSH1 0x44 000017b4: DUP3 000017b5: ADD 000017b6: MSTORE 000017b7: PUSH1 0x64 000017b9: DUP2 000017ba: ADD 000017bb: DUP3 000017bc: SWAP1 000017bd: MSTORE 000017be: PUSH2 0x17d4 000017c1: SWAP1 000017c2: DUP6 000017c3: SWAP1 000017c4: PUSH4 0x23b872dd 000017c9: PUSH1 0xe0 000017cb: SHL 000017cc: SWAP1 000017cd: PUSH1 0x84 000017cf: ADD 000017d0: PUSH2 0x14da 000017d3: JUMP 000017d4: JUMPDEST 000017d5: POP 000017d6: POP 000017d7: POP 000017d8: POP 000017d9: JUMP 000017da: JUMPDEST 000017db: PUSH1 0x00 000017dd: PUSH2 0x04c8 000017e0: DUP10 000017e1: DUP10 000017e2: DUP10 000017e3: DUP10 000017e4: DUP10 000017e5: DUP10 000017e6: DUP10 000017e7: PUSH1 0x00 000017e9: ADD 000017ea: MLOAD 000017eb: DUP11 000017ec: PUSH1 0x20 000017ee: ADD 000017ef: MLOAD 000017f0: DUP12 000017f1: PUSH1 0x40 000017f3: ADD 000017f4: MLOAD 000017f5: DUP12 000017f6: PUSH2 0x1811 000017f9: JUMP 000017fa: JUMPDEST 000017fb: PUSH1 0x60 000017fd: PUSH2 0x1809 00001800: DUP5 00001801: DUP5 00001802: PUSH1 0x00 00001804: DUP6 00001805: PUSH2 0x1883 00001808: JUMP 00001809: JUMPDEST 0000180a: SWAP5 0000180b: SWAP4 0000180c: POP 0000180d: POP 0000180e: POP 0000180f: POP 00001810: JUMP 00001811: JUMPDEST 00001812: PUSH1 0x00 00001814: DUP1 00001815: PUSH2 0x1826 00001818: DUP13 00001819: DUP13 0000181a: DUP13 0000181b: DUP13 0000181c: DUP13 0000181d: DUP13 0000181e: DUP13 0000181f: DUP13 00001820: DUP13 00001821: DUP13 00001822: PUSH2 0x195e 00001825: JUMP 00001826: JUMPDEST 00001827: SWAP1 00001828: POP 00001829: DUP1 0000182a: DUP12 0000182b: PUSH1 0x01 0000182d: PUSH1 0x01 0000182f: PUSH1 0xa0 00001831: SHL 00001832: SUB 00001833: AND 00001834: DUP11 00001835: PUSH1 0x01 00001837: PUSH1 0x01 00001839: PUSH1 0xa0 0000183b: SHL 0000183c: SUB 0000183d: AND 0000183e: PUSH32 0xc1d1490cf25c3b40d600dfb27c7680340ed1ab901b7e8f3551280968a3b372b0 0000185f: DUP7 00001860: PUSH1 0x40 00001862: MLOAD 00001863: PUSH2 0x186c 00001866: SWAP2 00001867: SWAP1 00001868: PUSH2 0x1d7d 0000186b: JUMP 0000186c: JUMPDEST 0000186d: PUSH1 0x40 0000186f: MLOAD 00001870: DUP1 00001871: SWAP2 00001872: SUB 00001873: SWAP1 00001874: LOG4 00001875: SWAP12 00001876: SWAP11 00001877: POP 00001878: POP 00001879: POP 0000187a: POP 0000187b: POP 0000187c: POP 0000187d: POP 0000187e: POP 0000187f: POP 00001880: POP 00001881: POP 00001882: JUMP 00001883: JUMPDEST 00001884: PUSH1 0x60 00001886: DUP3 00001887: SELFBALANCE 00001888: LT 00001889: ISZERO 0000188a: PUSH2 0x18e4 0000188d: JUMPI 0000188e: PUSH1 0x40 00001890: MLOAD 00001891: PUSH3 0x461bcd 00001895: PUSH1 0xe5 00001897: SHL 00001898: DUP2 00001899: MSTORE 0000189a: PUSH1 0x20 0000189c: PUSH1 0x04 0000189e: DUP3 0000189f: ADD 000018a0: MSTORE 000018a1: PUSH1 0x26 000018a3: PUSH1 0x24 000018a5: DUP3 000018a6: ADD 000018a7: MSTORE 000018a8: PUSH32 0x416464726573733a20696e73756666696369656e742062616c616e636520666f 000018c9: PUSH1 0x44 000018cb: DUP3 000018cc: ADD 000018cd: MSTORE 000018ce: PUSH6 0x1c8818d85b1b 000018d5: PUSH1 0xd2 000018d7: SHL 000018d8: PUSH1 0x64 000018da: DUP3 000018db: ADD 000018dc: MSTORE 000018dd: PUSH1 0x84 000018df: ADD 000018e0: PUSH2 0x03ec 000018e3: JUMP 000018e4: JUMPDEST 000018e5: PUSH1 0x00 000018e7: DUP1 000018e8: DUP7 000018e9: PUSH1 0x01 000018eb: PUSH1 0x01 000018ed: PUSH1 0xa0 000018ef: SHL 000018f0: SUB 000018f1: AND 000018f2: DUP6 000018f3: DUP8 000018f4: PUSH1 0x40 000018f6: MLOAD 000018f7: PUSH2 0x1900 000018fa: SWAP2 000018fb: SWAP1 000018fc: PUSH2 0x22fa 000018ff: JUMP 00001900: JUMPDEST 00001901: PUSH1 0x00 00001903: PUSH1 0x40 00001905: MLOAD 00001906: DUP1 00001907: DUP4 00001908: SUB 00001909: DUP2 0000190a: DUP6 0000190b: DUP8 0000190c: GAS 0000190d: CALL 0000190e: SWAP3 0000190f: POP 00001910: POP 00001911: POP 00001912: RETURNDATASIZE 00001913: DUP1 00001914: PUSH1 0x00 00001916: DUP2 00001917: EQ 00001918: PUSH2 0x193d 0000191b: JUMPI 0000191c: PUSH1 0x40 0000191e: MLOAD 0000191f: SWAP2 00001920: POP 00001921: PUSH1 0x1f 00001923: NOT 00001924: PUSH1 0x3f 00001926: RETURNDATASIZE 00001927: ADD 00001928: AND 00001929: DUP3 0000192a: ADD 0000192b: PUSH1 0x40 0000192d: MSTORE 0000192e: RETURNDATASIZE 0000192f: DUP3 00001930: MSTORE 00001931: RETURNDATASIZE 00001932: PUSH1 0x00 00001934: PUSH1 0x20 00001936: DUP5 00001937: ADD 00001938: RETURNDATACOPY 00001939: PUSH2 0x1942 0000193c: JUMP 0000193d: JUMPDEST 0000193e: PUSH1 0x60 00001940: SWAP2 00001941: POP 00001942: JUMPDEST 00001943: POP 00001944: SWAP2 00001945: POP 00001946: SWAP2 00001947: POP 00001948: PUSH2 0x1953 0000194b: DUP8 0000194c: DUP4 0000194d: DUP4 0000194e: DUP8 0000194f: PUSH2 0x1ab0 00001952: JUMP 00001953: JUMPDEST 00001954: SWAP8 00001955: SWAP7 00001956: POP 00001957: POP 00001958: POP 00001959: POP 0000195a: POP 0000195b: POP 0000195c: POP 0000195d: JUMP 0000195e: JUMPDEST 0000195f: PUSH1 0x00 00001961: DUP1 00001962: PUSH2 0x1969 00001965: PUSH2 0x0c9a 00001968: JUMP 00001969: JUMPDEST 0000196a: SWAP1 0000196b: POP 0000196c: PUSH1 0x00 0000196e: DUP2 0000196f: PUSH1 0x01 00001971: PUSH1 0x01 00001973: PUSH1 0xa0 00001975: SHL 00001976: SUB 00001977: AND 00001978: PUSH4 0x70a08231 0000197d: DUP15 0000197e: PUSH1 0x40 00001980: MLOAD 00001981: DUP3 00001982: PUSH4 0xffffffff 00001987: AND 00001988: PUSH1 0xe0 0000198a: SHL 0000198b: DUP2 0000198c: MSTORE 0000198d: PUSH1 0x04 0000198f: ADD 00001990: PUSH2 0x1999 00001993: SWAP2 00001994: SWAP1 00001995: PUSH2 0x1bbd 00001998: JUMP 00001999: JUMPDEST 0000199a: PUSH1 0x20 0000199c: PUSH1 0x40 0000199e: MLOAD 0000199f: DUP1 000019a0: DUP4 000019a1: SUB 000019a2: DUP2 000019a3: DUP7 000019a4: GAS 000019a5: STATICCALL 000019a6: ISZERO 000019a7: DUP1 000019a8: ISZERO 000019a9: PUSH2 0x19b6 000019ac: JUMPI 000019ad: RETURNDATASIZE 000019ae: PUSH1 0x00 000019b0: DUP1 000019b1: RETURNDATACOPY 000019b2: RETURNDATASIZE 000019b3: PUSH1 0x00 000019b5: REVERT 000019b6: JUMPDEST 000019b7: POP 000019b8: POP 000019b9: POP 000019ba: POP 000019bb: PUSH1 0x40 000019bd: MLOAD 000019be: RETURNDATASIZE 000019bf: PUSH1 0x1f 000019c1: NOT 000019c2: PUSH1 0x1f 000019c4: DUP3 000019c5: ADD 000019c6: AND 000019c7: DUP3 000019c8: ADD 000019c9: DUP1 000019ca: PUSH1 0x40 000019cc: MSTORE 000019cd: POP 000019ce: DUP2 000019cf: ADD 000019d0: SWAP1 000019d1: PUSH2 0x19da 000019d4: SWAP2 000019d5: SWAP1 000019d6: PUSH2 0x2552 000019d9: JUMP 000019da: JUMPDEST 000019db: SWAP1 000019dc: POP 000019dd: DUP9 000019de: DUP2 000019df: LT 000019e0: ISZERO 000019e1: PUSH2 0x1a20 000019e4: JUMPI 000019e5: PUSH1 0x00 000019e7: PUSH2 0x19ef 000019ea: CALLER 000019eb: PUSH2 0x1511 000019ee: JUMP 000019ef: JUMPDEST 000019f0: PUSH2 0x19f9 000019f3: JUMPI 000019f4: CALLER 000019f5: PUSH2 0x19fb 000019f8: JUMP 000019f9: JUMPDEST 000019fa: DUP11 000019fb: JUMPDEST 000019fc: SWAP1 000019fd: POP 000019fe: PUSH2 0x1a1e 00001a01: DUP2 00001a02: DUP16 00001a03: PUSH2 0x1a0c 00001a06: DUP6 00001a07: DUP15 00001a08: PUSH2 0x256b 00001a0b: JUMP 00001a0c: JUMPDEST 00001a0d: PUSH1 0x01 00001a0f: PUSH1 0x01 00001a11: PUSH1 0xa0 00001a13: SHL 00001a14: SUB 00001a15: DUP8 00001a16: AND 00001a17: SWAP3 00001a18: SWAP2 00001a19: SWAP1 00001a1a: PUSH2 0x179c 00001a1d: JUMP 00001a1e: JUMPDEST 00001a1f: POP 00001a20: JUMPDEST 00001a21: POP 00001a22: POP 00001a23: DUP11 00001a24: PUSH1 0x01 00001a26: PUSH1 0x01 00001a28: PUSH1 0xa0 00001a2a: SHL 00001a2b: SUB 00001a2c: AND 00001a2d: PUSH4 0x549e8426 00001a32: DUP12 00001a33: DUP9 00001a34: DUP9 00001a35: DUP14 00001a36: DUP14 00001a37: DUP11 00001a38: DUP11 00001a39: DUP16 00001a3a: DUP12 00001a3b: PUSH1 0x40 00001a3d: MLOAD 00001a3e: DUP11 00001a3f: PUSH4 0xffffffff 00001a44: AND 00001a45: PUSH1 0xe0 00001a47: SHL 00001a48: DUP2 00001a49: MSTORE 00001a4a: PUSH1 0x04 00001a4c: ADD 00001a4d: PUSH2 0x1a5e 00001a50: SWAP10 00001a51: SWAP9 00001a52: SWAP8 00001a53: SWAP7 00001a54: SWAP6 00001a55: SWAP5 00001a56: SWAP4 00001a57: SWAP3 00001a58: SWAP2 00001a59: SWAP1 00001a5a: PUSH2 0x258c 00001a5d: JUMP 00001a5e: JUMPDEST 00001a5f: PUSH1 0x20 00001a61: PUSH1 0x40 00001a63: MLOAD 00001a64: DUP1 00001a65: DUP4 00001a66: SUB 00001a67: DUP2 00001a68: PUSH1 0x00 00001a6a: DUP8 00001a6b: GAS 00001a6c: CALL 00001a6d: ISZERO 00001a6e: DUP1 00001a6f: ISZERO 00001a70: PUSH2 0x1a7d 00001a73: JUMPI 00001a74: RETURNDATASIZE 00001a75: PUSH1 0x00 00001a77: DUP1 00001a78: RETURNDATACOPY 00001a79: RETURNDATASIZE 00001a7a: PUSH1 0x00 00001a7c: REVERT 00001a7d: JUMPDEST 00001a7e: POP 00001a7f: POP 00001a80: POP 00001a81: POP 00001a82: PUSH1 0x40 00001a84: MLOAD 00001a85: RETURNDATASIZE 00001a86: PUSH1 0x1f 00001a88: NOT 00001a89: PUSH1 0x1f 00001a8b: DUP3 00001a8c: ADD 00001a8d: AND 00001a8e: DUP3 00001a8f: ADD 00001a90: DUP1 00001a91: PUSH1 0x40 00001a93: MSTORE 00001a94: POP 00001a95: DUP2 00001a96: ADD 00001a97: SWAP1 00001a98: PUSH2 0x1aa1 00001a9b: SWAP2 00001a9c: SWAP1 00001a9d: PUSH2 0x2552 00001aa0: JUMP 00001aa1: JUMPDEST 00001aa2: SWAP12 00001aa3: SWAP11 00001aa4: POP 00001aa5: POP 00001aa6: POP 00001aa7: POP 00001aa8: POP 00001aa9: POP 00001aaa: POP 00001aab: POP 00001aac: POP 00001aad: POP 00001aae: POP 00001aaf: JUMP 00001ab0: JUMPDEST 00001ab1: PUSH1 0x60 00001ab3: DUP4 00001ab4: ISZERO 00001ab5: PUSH2 0x1b1f 00001ab8: JUMPI 00001ab9: DUP3 00001aba: MLOAD 00001abb: PUSH1 0x00 00001abd: SUB 00001abe: PUSH2 0x1b18 00001ac1: JUMPI 00001ac2: PUSH1 0x01 00001ac4: PUSH1 0x01 00001ac6: PUSH1 0xa0 00001ac8: SHL 00001ac9: SUB 00001aca: DUP6 00001acb: AND 00001acc: EXTCODESIZE 00001acd: PUSH2 0x1b18 00001ad0: JUMPI 00001ad1: PUSH1 0x40 00001ad3: MLOAD 00001ad4: PUSH3 0x461bcd 00001ad8: PUSH1 0xe5 00001ada: SHL 00001adb: DUP2 00001adc: MSTORE 00001add: PUSH1 0x20 00001adf: PUSH1 0x04 00001ae1: DUP3 00001ae2: ADD 00001ae3: MSTORE 00001ae4: PUSH1 0x1d 00001ae6: PUSH1 0x24 00001ae8: DUP3 00001ae9: ADD 00001aea: MSTORE 00001aeb: PUSH32 0x416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000 00001b0c: PUSH1 0x44 00001b0e: DUP3 00001b0f: ADD 00001b10: MSTORE 00001b11: PUSH1 0x64 00001b13: ADD 00001b14: PUSH2 0x03ec 00001b17: JUMP 00001b18: JUMPDEST 00001b19: POP 00001b1a: DUP2 00001b1b: PUSH2 0x1809 00001b1e: JUMP 00001b1f: JUMPDEST 00001b20: PUSH2 0x1809 00001b23: DUP4 00001b24: DUP4 00001b25: DUP2 00001b26: MLOAD 00001b27: ISZERO 00001b28: PUSH2 0x1b34 00001b2b: JUMPI 00001b2c: DUP2 00001b2d: MLOAD 00001b2e: DUP1 00001b2f: DUP4 00001b30: PUSH1 0x20 00001b32: ADD 00001b33: REVERT 00001b34: JUMPDEST 00001b35: DUP1 00001b36: PUSH1 0x40 00001b38: MLOAD 00001b39: PUSH3 0x461bcd 00001b3d: PUSH1 0xe5 00001b3f: SHL 00001b40: DUP2 00001b41: MSTORE 00001b42: PUSH1 0x04 00001b44: ADD 00001b45: PUSH2 0x03ec 00001b48: SWAP2 00001b49: SWAP1 00001b4a: PUSH2 0x1d7d 00001b4d: JUMP 00001b4e: JUMPDEST 00001b4f: PUSH1 0x00 00001b51: PUSH1 0x20 00001b53: DUP3 00001b54: DUP5 00001b55: SUB 00001b56: SLT 00001b57: ISZERO 00001b58: PUSH2 0x1b60 00001b5b: JUMPI 00001b5c: PUSH1 0x00 00001b5e: DUP1 00001b5f: REVERT 00001b60: JUMPDEST 00001b61: DUP2 00001b62: CALLDATALOAD 00001b63: PUSH1 0x01 00001b65: PUSH1 0x01 00001b67: PUSH1 0xe0 00001b69: SHL 00001b6a: SUB 00001b6b: NOT 00001b6c: DUP2 00001b6d: AND 00001b6e: DUP2 00001b6f: EQ 00001b70: PUSH2 0x0704 00001b73: JUMPI 00001b74: PUSH1 0x00 00001b76: DUP1 00001b77: REVERT 00001b78: JUMPDEST 00001b79: PUSH1 0x01 00001b7b: PUSH1 0x01 00001b7d: PUSH1 0xa0 00001b7f: SHL 00001b80: SUB 00001b81: DUP2 00001b82: AND 00001b83: DUP2 00001b84: EQ 00001b85: PUSH2 0x054a 00001b88: JUMPI 00001b89: PUSH1 0x00 00001b8b: DUP1 00001b8c: REVERT 00001b8d: JUMPDEST 00001b8e: PUSH1 0x00 00001b90: DUP1 00001b91: PUSH1 0x40 00001b93: DUP4 00001b94: DUP6 00001b95: SUB 00001b96: SLT 00001b97: ISZERO 00001b98: PUSH2 0x1ba0 00001b9b: JUMPI 00001b9c: PUSH1 0x00 00001b9e: DUP1 00001b9f: REVERT 00001ba0: JUMPDEST 00001ba1: DUP3 00001ba2: CALLDATALOAD 00001ba3: SWAP2 00001ba4: POP 00001ba5: PUSH1 0x20 00001ba7: DUP4 00001ba8: ADD 00001ba9: CALLDATALOAD 00001baa: PUSH2 0x1bb2 00001bad: DUP2 00001bae: PUSH2 0x1b78 00001bb1: JUMP 00001bb2: JUMPDEST 00001bb3: DUP1 00001bb4: SWAP2 00001bb5: POP 00001bb6: POP 00001bb7: SWAP3 00001bb8: POP 00001bb9: SWAP3 00001bba: SWAP1 00001bbb: POP 00001bbc: JUMP 00001bbd: JUMPDEST 00001bbe: PUSH1 0x01 00001bc0: PUSH1 0x01 00001bc2: PUSH1 0xa0 00001bc4: SHL 00001bc5: SUB 00001bc6: SWAP2 00001bc7: SWAP1 00001bc8: SWAP2 00001bc9: AND 00001bca: DUP2 00001bcb: MSTORE 00001bcc: PUSH1 0x20 00001bce: ADD 00001bcf: SWAP1 00001bd0: JUMP 00001bd1: JUMPDEST 00001bd2: PUSH1 0x00 00001bd4: DUP1 00001bd5: DUP4 00001bd6: PUSH1 0x1f 00001bd8: DUP5 00001bd9: ADD 00001bda: SLT 00001bdb: PUSH2 0x1be3 00001bde: JUMPI 00001bdf: PUSH1 0x00 00001be1: DUP1 00001be2: REVERT 00001be3: JUMPDEST 00001be4: POP 00001be5: DUP2 00001be6: CALLDATALOAD 00001be7: PUSH1 0x01 00001be9: PUSH1 0x01 00001beb: PUSH1 0x40 00001bed: SHL 00001bee: SUB 00001bef: DUP2 00001bf0: GT 00001bf1: ISZERO 00001bf2: PUSH2 0x1bfa 00001bf5: JUMPI 00001bf6: PUSH1 0x00 00001bf8: DUP1 00001bf9: REVERT 00001bfa: JUMPDEST 00001bfb: PUSH1 0x20 00001bfd: DUP4 00001bfe: ADD 00001bff: SWAP2 00001c00: POP 00001c01: DUP4 00001c02: PUSH1 0x20 00001c04: DUP3 00001c05: DUP6 00001c06: ADD 00001c07: ADD 00001c08: GT 00001c09: ISZERO 00001c0a: PUSH2 0x153a 00001c0d: JUMPI 00001c0e: PUSH1 0x00 00001c10: DUP1 00001c11: REVERT 00001c12: JUMPDEST 00001c13: PUSH1 0x00 00001c15: DUP1 00001c16: PUSH1 0x00 00001c18: DUP1 00001c19: PUSH1 0x00 00001c1b: DUP1 00001c1c: PUSH1 0xa0 00001c1e: DUP8 00001c1f: DUP10 00001c20: SUB 00001c21: SLT 00001c22: ISZERO 00001c23: PUSH2 0x1c2b 00001c26: JUMPI 00001c27: PUSH1 0x00 00001c29: DUP1 00001c2a: REVERT 00001c2b: JUMPDEST 00001c2c: DUP7 00001c2d: CALLDATALOAD 00001c2e: PUSH2 0x1c36 00001c31: DUP2 00001c32: PUSH2 0x1b78 00001c35: JUMP 00001c36: JUMPDEST 00001c37: SWAP6 00001c38: POP 00001c39: PUSH1 0x20 00001c3b: DUP8 00001c3c: ADD 00001c3d: CALLDATALOAD 00001c3e: PUSH2 0x1c46 00001c41: DUP2 00001c42: PUSH2 0x1b78 00001c45: JUMP 00001c46: JUMPDEST 00001c47: SWAP5 00001c48: POP 00001c49: PUSH1 0x40 00001c4b: DUP8 00001c4c: ADD 00001c4d: CALLDATALOAD 00001c4e: PUSH2 0x1c56 00001c51: DUP2 00001c52: PUSH2 0x1b78 00001c55: JUMP 00001c56: JUMPDEST 00001c57: SWAP4 00001c58: POP 00001c59: PUSH1 0x60 00001c5b: DUP8 00001c5c: ADD 00001c5d: CALLDATALOAD 00001c5e: SWAP3 00001c5f: POP 00001c60: PUSH1 0x80 00001c62: DUP8 00001c63: ADD 00001c64: CALLDATALOAD 00001c65: PUSH1 0x01 00001c67: PUSH1 0x01 00001c69: PUSH1 0x40 00001c6b: SHL 00001c6c: SUB 00001c6d: DUP2 00001c6e: GT 00001c6f: ISZERO 00001c70: PUSH2 0x1c78 00001c73: JUMPI 00001c74: PUSH1 0x00 00001c76: DUP1 00001c77: REVERT 00001c78: JUMPDEST 00001c79: PUSH2 0x1c84 00001c7c: DUP10 00001c7d: DUP3 00001c7e: DUP11 00001c7f: ADD 00001c80: PUSH2 0x1bd1 00001c83: JUMP 00001c84: JUMPDEST 00001c85: SWAP8 00001c86: SWAP11 00001c87: SWAP7 00001c88: SWAP10 00001c89: POP 00001c8a: SWAP5 00001c8b: SWAP8 00001c8c: POP 00001c8d: SWAP3 00001c8e: SWAP6 00001c8f: SWAP4 00001c90: SWAP5 00001c91: SWAP3 00001c92: POP 00001c93: POP 00001c94: POP 00001c95: JUMP 00001c96: JUMPDEST 00001c97: PUSH1 0x00 00001c99: DUP1 00001c9a: PUSH1 0x00 00001c9c: DUP1 00001c9d: PUSH1 0x00 00001c9f: DUP1 00001ca0: PUSH1 0x00 00001ca2: DUP1 00001ca3: PUSH1 0xe0 00001ca5: DUP10 00001ca6: DUP12 00001ca7: SUB 00001ca8: SLT 00001ca9: ISZERO 00001caa: PUSH2 0x1cb2 00001cad: JUMPI 00001cae: PUSH1 0x00 00001cb0: DUP1 00001cb1: REVERT 00001cb2: JUMPDEST 00001cb3: DUP9 00001cb4: CALLDATALOAD 00001cb5: PUSH2 0x1cbd 00001cb8: DUP2 00001cb9: PUSH2 0x1b78 00001cbc: JUMP 00001cbd: JUMPDEST 00001cbe: SWAP8 00001cbf: POP 00001cc0: PUSH1 0x20 00001cc2: DUP10 00001cc3: ADD 00001cc4: CALLDATALOAD 00001cc5: PUSH2 0x1ccd 00001cc8: DUP2 00001cc9: PUSH2 0x1b78 00001ccc: JUMP 00001ccd: JUMPDEST 00001cce: SWAP7 00001ccf: POP 00001cd0: PUSH1 0x40 00001cd2: DUP10 00001cd3: ADD 00001cd4: CALLDATALOAD 00001cd5: PUSH2 0x1cdd 00001cd8: DUP2 00001cd9: PUSH2 0x1b78 00001cdc: JUMP 00001cdd: JUMPDEST 00001cde: SWAP6 00001cdf: POP 00001ce0: PUSH1 0x60 00001ce2: DUP10 00001ce3: ADD 00001ce4: CALLDATALOAD 00001ce5: SWAP5 00001ce6: POP 00001ce7: PUSH1 0x80 00001ce9: DUP10 00001cea: ADD 00001ceb: CALLDATALOAD 00001cec: SWAP4 00001ced: POP 00001cee: PUSH1 0xa0 00001cf0: DUP10 00001cf1: ADD 00001cf2: CALLDATALOAD 00001cf3: SWAP3 00001cf4: POP 00001cf5: PUSH1 0xc0 00001cf7: DUP10 00001cf8: ADD 00001cf9: CALLDATALOAD 00001cfa: PUSH1 0x01 00001cfc: PUSH1 0x01 00001cfe: PUSH1 0x40 00001d00: SHL 00001d01: SUB 00001d02: DUP2 00001d03: GT 00001d04: ISZERO 00001d05: PUSH2 0x1d0d 00001d08: JUMPI 00001d09: PUSH1 0x00 00001d0b: DUP1 00001d0c: REVERT 00001d0d: JUMPDEST 00001d0e: PUSH2 0x1d19 00001d11: DUP12 00001d12: DUP3 00001d13: DUP13 00001d14: ADD 00001d15: PUSH2 0x1bd1 00001d18: JUMP 00001d19: JUMPDEST 00001d1a: SWAP10 00001d1b: SWAP13 00001d1c: SWAP9 00001d1d: SWAP12 00001d1e: POP 00001d1f: SWAP7 00001d20: SWAP10 00001d21: POP 00001d22: SWAP5 00001d23: SWAP8 00001d24: SWAP4 00001d25: SWAP7 00001d26: SWAP3 00001d27: SWAP6 00001d28: SWAP5 00001d29: POP 00001d2a: POP 00001d2b: POP 00001d2c: JUMP 00001d2d: JUMPDEST 00001d2e: PUSH1 0x00 00001d30: JUMPDEST 00001d31: DUP4 00001d32: DUP2 00001d33: LT 00001d34: ISZERO 00001d35: PUSH2 0x1d48 00001d38: JUMPI 00001d39: DUP2 00001d3a: DUP2 00001d3b: ADD 00001d3c: MLOAD 00001d3d: DUP4 00001d3e: DUP3 00001d3f: ADD 00001d40: MSTORE 00001d41: PUSH1 0x20 00001d43: ADD 00001d44: PUSH2 0x1d30 00001d47: JUMP 00001d48: JUMPDEST 00001d49: POP 00001d4a: POP 00001d4b: PUSH1 0x00 00001d4d: SWAP2 00001d4e: ADD 00001d4f: MSTORE 00001d50: JUMP 00001d51: JUMPDEST 00001d52: PUSH1 0x00 00001d54: DUP2 00001d55: MLOAD 00001d56: DUP1 00001d57: DUP5 00001d58: MSTORE 00001d59: PUSH2 0x1d69 00001d5c: DUP2 00001d5d: PUSH1 0x20 00001d5f: DUP7 00001d60: ADD 00001d61: PUSH1 0x20 00001d63: DUP7 00001d64: ADD 00001d65: PUSH2 0x1d2d 00001d68: JUMP 00001d69: JUMPDEST 00001d6a: PUSH1 0x1f 00001d6c: ADD 00001d6d: PUSH1 0x1f 00001d6f: NOT 00001d70: AND 00001d71: SWAP3 00001d72: SWAP1 00001d73: SWAP3 00001d74: ADD 00001d75: PUSH1 0x20 00001d77: ADD 00001d78: SWAP3 00001d79: SWAP2 00001d7a: POP 00001d7b: POP 00001d7c: JUMP 00001d7d: JUMPDEST 00001d7e: PUSH1 0x20 00001d80: DUP2 00001d81: MSTORE 00001d82: PUSH1 0x00 00001d84: PUSH2 0x0704 00001d87: PUSH1 0x20 00001d89: DUP4 00001d8a: ADD 00001d8b: DUP5 00001d8c: PUSH2 0x1d51 00001d8f: JUMP 00001d90: JUMPDEST 00001d91: PUSH1 0x00 00001d93: DUP1 00001d94: PUSH1 0x00 00001d96: DUP1 00001d97: PUSH1 0x00 00001d99: PUSH1 0xa0 00001d9b: DUP7 00001d9c: DUP9 00001d9d: SUB 00001d9e: SLT 00001d9f: ISZERO 00001da0: PUSH2 0x1da8 00001da3: JUMPI 00001da4: PUSH1 0x00 00001da6: DUP1 00001da7: REVERT 00001da8: JUMPDEST 00001da9: DUP6 00001daa: CALLDATALOAD 00001dab: PUSH2 0x1db3 00001dae: DUP2 00001daf: PUSH2 0x1b78 00001db2: JUMP 00001db3: JUMPDEST 00001db4: SWAP5 00001db5: POP 00001db6: PUSH1 0x20 00001db8: DUP7 00001db9: ADD 00001dba: CALLDATALOAD 00001dbb: PUSH2 0x1dc3 00001dbe: DUP2 00001dbf: PUSH2 0x1b78 00001dc2: JUMP 00001dc3: JUMPDEST 00001dc4: SWAP4 00001dc5: POP 00001dc6: PUSH1 0x40 00001dc8: DUP7 00001dc9: ADD 00001dca: CALLDATALOAD 00001dcb: PUSH2 0x1dd3 00001dce: DUP2 00001dcf: PUSH2 0x1b78 00001dd2: JUMP 00001dd3: JUMPDEST 00001dd4: SWAP3 00001dd5: POP 00001dd6: PUSH1 0x60 00001dd8: DUP7 00001dd9: ADD 00001dda: CALLDATALOAD 00001ddb: SWAP2 00001ddc: POP 00001ddd: PUSH1 0x80 00001ddf: DUP7 00001de0: ADD 00001de1: CALLDATALOAD 00001de2: PUSH2 0x1dea 00001de5: DUP2 00001de6: PUSH2 0x1b78 00001de9: JUMP 00001dea: JUMPDEST 00001deb: DUP1 00001dec: SWAP2 00001ded: POP 00001dee: POP 00001def: SWAP3 00001df0: SWAP6 00001df1: POP 00001df2: SWAP3 00001df3: SWAP6 00001df4: SWAP1 00001df5: SWAP4 00001df6: POP 00001df7: JUMP 00001df8: JUMPDEST 00001df9: PUSH4 0x4e487b71 00001dfe: PUSH1 0xe0 00001e00: SHL 00001e01: PUSH1 0x00 00001e03: MSTORE 00001e04: PUSH1 0x41 00001e06: PUSH1 0x04 00001e08: MSTORE 00001e09: PUSH1 0x24 00001e0b: PUSH1 0x00 00001e0d: REVERT 00001e0e: JUMPDEST 00001e0f: PUSH1 0x40 00001e11: MLOAD 00001e12: PUSH1 0x1f 00001e14: DUP3 00001e15: ADD 00001e16: PUSH1 0x1f 00001e18: NOT 00001e19: AND 00001e1a: DUP2 00001e1b: ADD 00001e1c: PUSH1 0x01 00001e1e: PUSH1 0x01 00001e20: PUSH1 0x40 00001e22: SHL 00001e23: SUB 00001e24: DUP2 00001e25: GT 00001e26: DUP3 00001e27: DUP3 00001e28: LT 00001e29: OR 00001e2a: ISZERO 00001e2b: PUSH2 0x1e36 00001e2e: JUMPI 00001e2f: PUSH2 0x1e36 00001e32: PUSH2 0x1df8 00001e35: JUMP 00001e36: JUMPDEST 00001e37: PUSH1 0x40 00001e39: MSTORE 00001e3a: SWAP2 00001e3b: SWAP1 00001e3c: POP 00001e3d: JUMP 00001e3e: JUMPDEST 00001e3f: PUSH1 0x00 00001e41: PUSH1 0x01 00001e43: PUSH1 0x01 00001e45: PUSH1 0x40 00001e47: SHL 00001e48: SUB 00001e49: DUP3 00001e4a: GT 00001e4b: ISZERO 00001e4c: PUSH2 0x1e57 00001e4f: JUMPI 00001e50: PUSH2 0x1e57 00001e53: PUSH2 0x1df8 00001e56: JUMP 00001e57: JUMPDEST 00001e58: POP 00001e59: PUSH1 0x1f 00001e5b: ADD 00001e5c: PUSH1 0x1f 00001e5e: NOT 00001e5f: AND 00001e60: PUSH1 0x20 00001e62: ADD 00001e63: SWAP1 00001e64: JUMP 00001e65: JUMPDEST 00001e66: PUSH1 0x00 00001e68: DUP3 00001e69: PUSH1 0x1f 00001e6b: DUP4 00001e6c: ADD 00001e6d: SLT 00001e6e: PUSH2 0x1e76 00001e71: JUMPI 00001e72: PUSH1 0x00 00001e74: DUP1 00001e75: REVERT 00001e76: JUMPDEST 00001e77: DUP2 00001e78: CALLDATALOAD 00001e79: PUSH2 0x1e89 00001e7c: PUSH2 0x1e84 00001e7f: DUP3 00001e80: PUSH2 0x1e3e 00001e83: JUMP 00001e84: JUMPDEST 00001e85: PUSH2 0x1e0e 00001e88: JUMP 00001e89: JUMPDEST 00001e8a: DUP2 00001e8b: DUP2 00001e8c: MSTORE 00001e8d: DUP5 00001e8e: PUSH1 0x20 00001e90: DUP4 00001e91: DUP7 00001e92: ADD 00001e93: ADD 00001e94: GT 00001e95: ISZERO 00001e96: PUSH2 0x1e9e 00001e99: JUMPI 00001e9a: PUSH1 0x00 00001e9c: DUP1 00001e9d: REVERT 00001e9e: JUMPDEST 00001e9f: DUP2 00001ea0: PUSH1 0x20 00001ea2: DUP6 00001ea3: ADD 00001ea4: PUSH1 0x20 00001ea6: DUP4 00001ea7: ADD 00001ea8: CALLDATACOPY 00001ea9: PUSH1 0x00 00001eab: SWAP2 00001eac: DUP2 00001ead: ADD 00001eae: PUSH1 0x20 00001eb0: ADD 00001eb1: SWAP2 00001eb2: SWAP1 00001eb3: SWAP2 00001eb4: MSTORE 00001eb5: SWAP4 00001eb6: SWAP3 00001eb7: POP 00001eb8: POP 00001eb9: POP 00001eba: JUMP 00001ebb: JUMPDEST 00001ebc: PUSH1 0x00 00001ebe: DUP1 00001ebf: PUSH1 0x00 00001ec1: DUP1 00001ec2: PUSH1 0x00 00001ec4: PUSH1 0xa0 00001ec6: DUP7 00001ec7: DUP9 00001ec8: SUB 00001ec9: SLT 00001eca: ISZERO 00001ecb: PUSH2 0x1ed3 00001ece: JUMPI 00001ecf: PUSH1 0x00 00001ed1: DUP1 00001ed2: REVERT 00001ed3: JUMPDEST 00001ed4: DUP6 00001ed5: CALLDATALOAD 00001ed6: PUSH2 0x1ede 00001ed9: DUP2 00001eda: PUSH2 0x1b78 00001edd: JUMP 00001ede: JUMPDEST 00001edf: SWAP5 00001ee0: POP 00001ee1: PUSH1 0x20 00001ee3: DUP7 00001ee4: ADD 00001ee5: CALLDATALOAD 00001ee6: PUSH2 0x1eee 00001ee9: DUP2 00001eea: PUSH2 0x1b78 00001eed: JUMP 00001eee: JUMPDEST 00001eef: SWAP4 00001ef0: POP 00001ef1: PUSH1 0x40 00001ef3: DUP7 00001ef4: ADD 00001ef5: CALLDATALOAD 00001ef6: PUSH2 0x1efe 00001ef9: DUP2 00001efa: PUSH2 0x1b78 00001efd: JUMP 00001efe: JUMPDEST 00001eff: SWAP3 00001f00: POP 00001f01: PUSH1 0x60 00001f03: DUP7 00001f04: ADD 00001f05: CALLDATALOAD 00001f06: SWAP2 00001f07: POP 00001f08: PUSH1 0x80 00001f0a: DUP7 00001f0b: ADD 00001f0c: CALLDATALOAD 00001f0d: PUSH1 0x01 00001f0f: PUSH1 0x01 00001f11: PUSH1 0x40 00001f13: SHL 00001f14: SUB 00001f15: DUP2 00001f16: GT 00001f17: ISZERO 00001f18: PUSH2 0x1f20 00001f1b: JUMPI 00001f1c: PUSH1 0x00 00001f1e: DUP1 00001f1f: REVERT 00001f20: JUMPDEST 00001f21: PUSH2 0x1f2c 00001f24: DUP9 00001f25: DUP3 00001f26: DUP10 00001f27: ADD 00001f28: PUSH2 0x1e65 00001f2b: JUMP 00001f2c: JUMPDEST 00001f2d: SWAP2 00001f2e: POP 00001f2f: POP 00001f30: SWAP3 00001f31: SWAP6 00001f32: POP 00001f33: SWAP3 00001f34: SWAP6 00001f35: SWAP1 00001f36: SWAP4 00001f37: POP 00001f38: JUMP 00001f39: JUMPDEST 00001f3a: PUSH1 0x00 00001f3c: PUSH1 0x20 00001f3e: DUP3 00001f3f: DUP5 00001f40: SUB 00001f41: SLT 00001f42: ISZERO 00001f43: PUSH2 0x1f4b 00001f46: JUMPI 00001f47: PUSH1 0x00 00001f49: DUP1 00001f4a: REVERT 00001f4b: JUMPDEST 00001f4c: DUP2 00001f4d: CALLDATALOAD 00001f4e: PUSH2 0x0704 00001f51: DUP2 00001f52: PUSH2 0x1b78 00001f55: JUMP 00001f56: JUMPDEST 00001f57: PUSH1 0x00 00001f59: PUSH1 0x20 00001f5b: DUP3 00001f5c: DUP5 00001f5d: SUB 00001f5e: SLT 00001f5f: ISZERO 00001f60: PUSH2 0x1f68 00001f63: JUMPI 00001f64: PUSH1 0x00 00001f66: DUP1 00001f67: REVERT 00001f68: JUMPDEST 00001f69: POP 00001f6a: CALLDATALOAD 00001f6b: SWAP2 00001f6c: SWAP1 00001f6d: POP 00001f6e: JUMP 00001f6f: JUMPDEST 00001f70: DUP4 00001f71: ISZERO 00001f72: ISZERO 00001f73: DUP2 00001f74: MSTORE 00001f75: PUSH1 0x01 00001f77: PUSH1 0x01 00001f79: PUSH1 0xa0 00001f7b: SHL 00001f7c: SUB 00001f7d: DUP4 00001f7e: AND 00001f7f: PUSH1 0x20 00001f81: DUP3 00001f82: ADD 00001f83: MSTORE 00001f84: PUSH1 0x60 00001f86: PUSH1 0x40 00001f88: DUP3 00001f89: ADD 00001f8a: DUP2 00001f8b: SWAP1 00001f8c: MSTORE 00001f8d: PUSH1 0x00 00001f8f: SWAP1 00001f90: PUSH2 0x1f9b 00001f93: SWAP1 00001f94: DUP4 00001f95: ADD 00001f96: DUP5 00001f97: PUSH2 0x1d51 00001f9a: JUMP 00001f9b: JUMPDEST 00001f9c: SWAP6 00001f9d: SWAP5 00001f9e: POP 00001f9f: POP 00001fa0: POP 00001fa1: POP 00001fa2: POP 00001fa3: JUMP 00001fa4: JUMPDEST 00001fa5: PUSH1 0x00 00001fa7: DUP1 00001fa8: PUSH1 0x00 00001faa: DUP1 00001fab: PUSH1 0x00 00001fad: DUP1 00001fae: PUSH1 0x00 00001fb0: PUSH1 0xa0 00001fb2: DUP9 00001fb3: DUP11 00001fb4: SUB 00001fb5: SLT 00001fb6: ISZERO 00001fb7: PUSH2 0x1fbf 00001fba: JUMPI 00001fbb: PUSH1 0x00 00001fbd: DUP1 00001fbe: REVERT 00001fbf: JUMPDEST 00001fc0: DUP8 00001fc1: CALLDATALOAD 00001fc2: SWAP7 00001fc3: POP 00001fc4: PUSH1 0x20 00001fc6: DUP9 00001fc7: ADD 00001fc8: CALLDATALOAD 00001fc9: PUSH2 0x1fd1 00001fcc: DUP2 00001fcd: PUSH2 0x1b78 00001fd0: JUMP 00001fd1: JUMPDEST 00001fd2: SWAP6 00001fd3: POP 00001fd4: PUSH1 0x40 00001fd6: DUP9 00001fd7: ADD 00001fd8: CALLDATALOAD 00001fd9: PUSH2 0x1fe1 00001fdc: DUP2 00001fdd: PUSH2 0x1b78 00001fe0: JUMP 00001fe1: JUMPDEST 00001fe2: SWAP5 00001fe3: POP 00001fe4: PUSH1 0x60 00001fe6: DUP9 00001fe7: ADD 00001fe8: CALLDATALOAD 00001fe9: PUSH1 0x01 00001feb: PUSH1 0x01 00001fed: PUSH1 0x40 00001fef: SHL 00001ff0: SUB 00001ff1: DUP1 00001ff2: DUP3 00001ff3: GT 00001ff4: ISZERO 00001ff5: PUSH2 0x1ffd 00001ff8: JUMPI 00001ff9: PUSH1 0x00 00001ffb: DUP1 00001ffc: REVERT 00001ffd: JUMPDEST 00001ffe: PUSH2 0x2009 00002001: DUP12 00002002: DUP4 00002003: DUP13 00002004: ADD 00002005: PUSH2 0x1bd1 00002008: JUMP 00002009: JUMPDEST 0000200a: SWAP1 0000200b: SWAP7 0000200c: POP 0000200d: SWAP5 0000200e: POP 0000200f: PUSH1 0x80 00002011: DUP11 00002012: ADD 00002013: CALLDATALOAD 00002014: SWAP2 00002015: POP 00002016: DUP1 00002017: DUP3 00002018: GT 00002019: ISZERO 0000201a: PUSH2 0x2022 0000201d: JUMPI 0000201e: PUSH1 0x00 00002020: DUP1 00002021: REVERT 00002022: JUMPDEST 00002023: POP 00002024: PUSH2 0x202f 00002027: DUP11 00002028: DUP3 00002029: DUP12 0000202a: ADD 0000202b: PUSH2 0x1bd1 0000202e: JUMP 0000202f: JUMPDEST 00002030: SWAP9 00002031: SWAP12 00002032: SWAP8 00002033: SWAP11 00002034: POP 00002035: SWAP6 00002036: SWAP9 00002037: POP 00002038: SWAP4 00002039: SWAP7 0000203a: SWAP3 0000203b: SWAP6 0000203c: SWAP3 0000203d: SWAP4 0000203e: POP 0000203f: POP 00002040: POP 00002041: JUMP 00002042: JUMPDEST 00002043: PUSH1 0x00 00002045: DUP1 00002046: PUSH1 0x00 00002048: DUP1 00002049: PUSH1 0x00 0000204b: DUP1 0000204c: PUSH1 0x00 0000204e: PUSH1 0xc0 00002050: DUP9 00002051: DUP11 00002052: SUB 00002053: SLT 00002054: ISZERO 00002055: PUSH2 0x205d 00002058: JUMPI 00002059: PUSH1 0x00 0000205b: DUP1 0000205c: REVERT 0000205d: JUMPDEST 0000205e: DUP8 0000205f: CALLDATALOAD 00002060: PUSH2 0x2068 00002063: DUP2 00002064: PUSH2 0x1b78 00002067: JUMP 00002068: JUMPDEST 00002069: SWAP7 0000206a: POP 0000206b: PUSH1 0x20 0000206d: DUP9 0000206e: ADD 0000206f: CALLDATALOAD 00002070: PUSH2 0x2078 00002073: DUP2 00002074: PUSH2 0x1b78 00002077: JUMP 00002078: JUMPDEST 00002079: SWAP6 0000207a: POP 0000207b: PUSH1 0x40 0000207d: DUP9 0000207e: ADD 0000207f: CALLDATALOAD 00002080: SWAP5 00002081: POP 00002082: PUSH1 0x60 00002084: DUP9 00002085: ADD 00002086: CALLDATALOAD 00002087: SWAP4 00002088: POP 00002089: PUSH1 0x80 0000208b: DUP9 0000208c: ADD 0000208d: CALLDATALOAD 0000208e: SWAP3 0000208f: POP 00002090: PUSH1 0xa0 00002092: DUP9 00002093: ADD 00002094: CALLDATALOAD 00002095: PUSH1 0x01 00002097: PUSH1 0x01 00002099: PUSH1 0x40 0000209b: SHL 0000209c: SUB 0000209d: DUP2 0000209e: GT 0000209f: ISZERO 000020a0: PUSH2 0x20a8 000020a3: JUMPI 000020a4: PUSH1 0x00 000020a6: DUP1 000020a7: REVERT 000020a8: JUMPDEST 000020a9: PUSH2 0x202f 000020ac: DUP11 000020ad: DUP3 000020ae: DUP12 000020af: ADD 000020b0: PUSH2 0x1bd1 000020b3: JUMP 000020b4: JUMPDEST 000020b5: PUSH1 0x00 000020b7: DUP1 000020b8: PUSH1 0x00 000020ba: PUSH1 0x60 000020bc: DUP5 000020bd: DUP7 000020be: SUB 000020bf: SLT 000020c0: ISZERO 000020c1: PUSH2 0x20c9 000020c4: JUMPI 000020c5: PUSH1 0x00 000020c7: DUP1 000020c8: REVERT 000020c9: JUMPDEST 000020ca: DUP4 000020cb: CALLDATALOAD 000020cc: SWAP3 000020cd: POP 000020ce: PUSH1 0x20 000020d0: DUP5 000020d1: ADD 000020d2: CALLDATALOAD 000020d3: PUSH2 0x20db 000020d6: DUP2 000020d7: PUSH2 0x1b78 000020da: JUMP 000020db: JUMPDEST 000020dc: SWAP2 000020dd: POP 000020de: PUSH1 0x40 000020e0: DUP5 000020e1: ADD 000020e2: CALLDATALOAD 000020e3: PUSH1 0x01 000020e5: PUSH1 0x01 000020e7: PUSH1 0x40 000020e9: SHL 000020ea: SUB 000020eb: DUP2 000020ec: GT 000020ed: ISZERO 000020ee: PUSH2 0x20f6 000020f1: JUMPI 000020f2: PUSH1 0x00 000020f4: DUP1 000020f5: REVERT 000020f6: JUMPDEST 000020f7: PUSH2 0x2102 000020fa: DUP7 000020fb: DUP3 000020fc: DUP8 000020fd: ADD 000020fe: PUSH2 0x1e65 00002101: JUMP 00002102: JUMPDEST 00002103: SWAP2 00002104: POP 00002105: POP 00002106: SWAP3 00002107: POP 00002108: SWAP3 00002109: POP 0000210a: SWAP3 0000210b: JUMP 0000210c: JUMPDEST 0000210d: PUSH1 0x01 0000210f: PUSH1 0x01 00002111: PUSH1 0xa0 00002113: SHL 00002114: SUB 00002115: DUP4 00002116: AND 00002117: DUP2 00002118: MSTORE 00002119: PUSH1 0x40 0000211b: PUSH1 0x20 0000211d: DUP3 0000211e: ADD 0000211f: DUP2 00002120: SWAP1 00002121: MSTORE 00002122: PUSH1 0x00 00002124: SWAP1 00002125: PUSH2 0x1809 00002128: SWAP1 00002129: DUP4 0000212a: ADD 0000212b: DUP5 0000212c: PUSH2 0x1d51 0000212f: JUMP 00002130: JUMPDEST 00002131: PUSH1 0x20 00002133: DUP1 00002134: DUP3 00002135: MSTORE 00002136: PUSH1 0x1f 00002138: SWAP1 00002139: DUP3 0000213a: ADD 0000213b: MSTORE 0000213c: PUSH32 0x5265656e7472616e637947756172643a207265656e7472616e742063616c6c00 0000215d: PUSH1 0x40 0000215f: DUP3 00002160: ADD 00002161: MSTORE 00002162: PUSH1 0x60 00002164: ADD 00002165: SWAP1 00002166: JUMP 00002167: JUMPDEST 00002168: PUSH1 0x60 0000216a: DUP2 0000216b: MSTORE 0000216c: PUSH1 0x00 0000216e: PUSH2 0x217a 00002171: PUSH1 0x60 00002173: DUP4 00002174: ADD 00002175: DUP7 00002176: PUSH2 0x1d51 00002179: JUMP 0000217a: JUMPDEST 0000217b: DUP3 0000217c: DUP2 0000217d: SUB 0000217e: PUSH1 0x20 00002180: DUP5 00002181: ADD 00002182: MSTORE 00002183: PUSH2 0x218c 00002186: DUP2 00002187: DUP7 00002188: PUSH2 0x1d51 0000218b: JUMP 0000218c: JUMPDEST 0000218d: SWAP1 0000218e: POP 0000218f: DUP3 00002190: DUP2 00002191: SUB 00002192: PUSH1 0x40 00002194: DUP5 00002195: ADD 00002196: MSTORE 00002197: PUSH2 0x166b 0000219a: DUP2 0000219b: DUP6 0000219c: PUSH2 0x1d51 0000219f: JUMP 000021a0: JUMPDEST 000021a1: PUSH1 0x01 000021a3: PUSH1 0x01 000021a5: PUSH1 0xa0 000021a7: SHL 000021a8: SUB 000021a9: DUP7 000021aa: DUP2 000021ab: AND 000021ac: DUP3 000021ad: MSTORE 000021ae: DUP6 000021af: DUP2 000021b0: AND 000021b1: PUSH1 0x20 000021b3: DUP4 000021b4: ADD 000021b5: MSTORE 000021b6: DUP5 000021b7: AND 000021b8: PUSH1 0x40 000021ba: DUP3 000021bb: ADD 000021bc: MSTORE 000021bd: PUSH1 0x60 000021bf: DUP2 000021c0: ADD 000021c1: DUP4 000021c2: SWAP1 000021c3: MSTORE 000021c4: PUSH1 0xa0 000021c6: PUSH1 0x80 000021c8: DUP3 000021c9: ADD 000021ca: DUP2 000021cb: SWAP1 000021cc: MSTORE 000021cd: PUSH1 0x00 000021cf: SWAP1 000021d0: PUSH2 0x1953 000021d3: SWAP1 000021d4: DUP4 000021d5: ADD 000021d6: DUP5 000021d7: PUSH2 0x1d51 000021da: JUMP 000021db: JUMPDEST 000021dc: PUSH1 0x01 000021de: DUP2 000021df: DUP2 000021e0: SHR 000021e1: SWAP1 000021e2: DUP3 000021e3: AND 000021e4: DUP1 000021e5: PUSH2 0x21ef 000021e8: JUMPI 000021e9: PUSH1 0x7f 000021eb: DUP3 000021ec: AND 000021ed: SWAP2 000021ee: POP 000021ef: JUMPDEST 000021f0: PUSH1 0x20 000021f2: DUP3 000021f3: LT 000021f4: DUP2 000021f5: SUB 000021f6: PUSH2 0x220f 000021f9: JUMPI 000021fa: PUSH4 0x4e487b71 000021ff: PUSH1 0xe0 00002201: SHL 00002202: PUSH1 0x00 00002204: MSTORE 00002205: PUSH1 0x22 00002207: PUSH1 0x04 00002209: MSTORE 0000220a: PUSH1 0x24 0000220c: PUSH1 0x00 0000220e: REVERT 0000220f: JUMPDEST 00002210: POP 00002211: SWAP2 00002212: SWAP1 00002213: POP 00002214: JUMP 00002215: JUMPDEST 00002216: DUP2 00002217: DUP4 00002218: MSTORE 00002219: DUP2 0000221a: DUP2 0000221b: PUSH1 0x20 0000221d: DUP6 0000221e: ADD 0000221f: CALLDATACOPY 00002220: POP 00002221: PUSH1 0x00 00002223: DUP3 00002224: DUP3 00002225: ADD 00002226: PUSH1 0x20 00002228: SWAP1 00002229: DUP2 0000222a: ADD 0000222b: SWAP2 0000222c: SWAP1 0000222d: SWAP2 0000222e: MSTORE 0000222f: PUSH1 0x1f 00002231: SWAP1 00002232: SWAP2 00002233: ADD 00002234: PUSH1 0x1f 00002236: NOT 00002237: AND 00002238: SWAP1 00002239: SWAP2 0000223a: ADD 0000223b: ADD 0000223c: SWAP1 0000223d: JUMP 0000223e: JUMPDEST 0000223f: PUSH1 0x01 00002241: DUP1 00002242: PUSH1 0xa0 00002244: SHL 00002245: SUB 00002246: DUP6 00002247: AND 00002248: DUP2 00002249: MSTORE 0000224a: DUP4 0000224b: PUSH1 0x20 0000224d: DUP3 0000224e: ADD 0000224f: MSTORE 00002250: PUSH1 0x60 00002252: PUSH1 0x40 00002254: DUP3 00002255: ADD 00002256: MSTORE 00002257: PUSH1 0x00 00002259: PUSH2 0x166b 0000225c: PUSH1 0x60 0000225e: DUP4 0000225f: ADD 00002260: DUP5 00002261: DUP7 00002262: PUSH2 0x2215 00002265: JUMP 00002266: JUMPDEST 00002267: PUSH1 0x00 00002269: PUSH1 0x20 0000226b: DUP3 0000226c: DUP5 0000226d: SUB 0000226e: SLT 0000226f: ISZERO 00002270: PUSH2 0x2278 00002273: JUMPI 00002274: PUSH1 0x00 00002276: DUP1 00002277: REVERT 00002278: JUMPDEST 00002279: DUP2 0000227a: MLOAD 0000227b: DUP1 0000227c: ISZERO 0000227d: ISZERO 0000227e: DUP2 0000227f: EQ 00002280: PUSH2 0x0704 00002283: JUMPI 00002284: PUSH1 0x00 00002286: DUP1 00002287: REVERT 00002288: JUMPDEST 00002289: PUSH1 0x60 0000228b: DUP2 0000228c: MSTORE 0000228d: PUSH1 0x00 0000228f: PUSH2 0x229c 00002292: PUSH1 0x60 00002294: DUP4 00002295: ADD 00002296: DUP8 00002297: DUP10 00002298: PUSH2 0x2215 0000229b: JUMP 0000229c: JUMPDEST 0000229d: DUP3 0000229e: DUP2 0000229f: SUB 000022a0: PUSH1 0x20 000022a2: DUP5 000022a3: ADD 000022a4: MSTORE 000022a5: PUSH2 0x22af 000022a8: DUP2 000022a9: DUP7 000022aa: DUP9 000022ab: PUSH2 0x2215 000022ae: JUMP 000022af: JUMPDEST 000022b0: SWAP2 000022b1: POP 000022b2: POP 000022b3: DUP3 000022b4: ISZERO 000022b5: ISZERO 000022b6: PUSH1 0x40 000022b8: DUP4 000022b9: ADD 000022ba: MSTORE 000022bb: SWAP7 000022bc: SWAP6 000022bd: POP 000022be: POP 000022bf: POP 000022c0: POP 000022c1: POP 000022c2: POP 000022c3: JUMP 000022c4: JUMPDEST 000022c5: PUSH1 0x01 000022c7: PUSH1 0x01 000022c9: PUSH1 0xa0 000022cb: SHL 000022cc: SUB 000022cd: SWAP3 000022ce: SWAP1 000022cf: SWAP3 000022d0: AND 000022d1: DUP3 000022d2: MSTORE 000022d3: PUSH1 0x20 000022d5: DUP3 000022d6: ADD 000022d7: MSTORE 000022d8: PUSH1 0x40 000022da: ADD 000022db: SWAP1 000022dc: JUMP 000022dd: JUMPDEST 000022de: PUSH1 0x00 000022e0: PUSH1 0x20 000022e2: DUP3 000022e3: DUP5 000022e4: SUB 000022e5: SLT 000022e6: ISZERO 000022e7: PUSH2 0x22ef 000022ea: JUMPI 000022eb: PUSH1 0x00 000022ed: DUP1 000022ee: REVERT 000022ef: JUMPDEST 000022f0: DUP2 000022f1: MLOAD 000022f2: PUSH2 0x0704 000022f5: DUP2 000022f6: PUSH2 0x1b78 000022f9: JUMP 000022fa: JUMPDEST 000022fb: PUSH1 0x00 000022fd: DUP3 000022fe: MLOAD 000022ff: PUSH2 0x230c 00002302: DUP2 00002303: DUP5 00002304: PUSH1 0x20 00002306: DUP8 00002307: ADD 00002308: PUSH2 0x1d2d 0000230b: JUMP 0000230c: JUMPDEST 0000230d: SWAP2 0000230e: SWAP1 0000230f: SWAP2 00002310: ADD 00002311: SWAP3 00002312: SWAP2 00002313: POP 00002314: POP 00002315: JUMP 00002316: JUMPDEST 00002317: PUSH1 0x40 00002319: DUP2 0000231a: MSTORE 0000231b: PUSH1 0x00 0000231d: PUSH2 0x2329 00002320: PUSH1 0x40 00002322: DUP4 00002323: ADD 00002324: DUP6 00002325: PUSH2 0x1d51 00002328: JUMP 00002329: JUMPDEST 0000232a: DUP3 0000232b: DUP2 0000232c: SUB 0000232d: PUSH1 0x20 0000232f: DUP5 00002330: ADD 00002331: MSTORE 00002332: PUSH2 0x1f9b 00002335: DUP2 00002336: DUP6 00002337: PUSH2 0x1d51 0000233a: JUMP 0000233b: JUMPDEST 0000233c: PUSH1 0x1f 0000233e: DUP3 0000233f: GT 00002340: ISZERO 00002341: PUSH2 0x11a4 00002344: JUMPI 00002345: PUSH1 0x00 00002347: DUP2 00002348: DUP2 00002349: MSTORE 0000234a: PUSH1 0x20 0000234c: DUP2 0000234d: KECCAK256 0000234e: PUSH1 0x1f 00002350: DUP6 00002351: ADD 00002352: PUSH1 0x05 00002354: SHR 00002355: DUP2 00002356: ADD 00002357: PUSH1 0x20 00002359: DUP7 0000235a: LT 0000235b: ISZERO 0000235c: PUSH2 0x2362 0000235f: JUMPI 00002360: POP 00002361: DUP1 00002362: JUMPDEST 00002363: PUSH1 0x1f 00002365: DUP6 00002366: ADD 00002367: PUSH1 0x05 00002369: SHR 0000236a: DUP3 0000236b: ADD 0000236c: SWAP2 0000236d: POP 0000236e: JUMPDEST 0000236f: DUP2 00002370: DUP2 00002371: LT 00002372: ISZERO 00002373: PUSH2 0x2381 00002376: JUMPI 00002377: DUP3 00002378: DUP2 00002379: SSTORE 0000237a: PUSH1 0x01 0000237c: ADD 0000237d: PUSH2 0x236e 00002380: JUMP 00002381: JUMPDEST 00002382: POP 00002383: POP 00002384: POP 00002385: POP 00002386: POP 00002387: POP 00002388: JUMP 00002389: JUMPDEST 0000238a: DUP2 0000238b: MLOAD 0000238c: PUSH1 0x01 0000238e: PUSH1 0x01 00002390: PUSH1 0x40 00002392: SHL 00002393: SUB 00002394: DUP2 00002395: GT 00002396: ISZERO 00002397: PUSH2 0x23a2 0000239a: JUMPI 0000239b: PUSH2 0x23a2 0000239e: PUSH2 0x1df8 000023a1: JUMP 000023a2: JUMPDEST 000023a3: PUSH2 0x23b6 000023a6: DUP2 000023a7: PUSH2 0x23b0 000023aa: DUP5 000023ab: SLOAD 000023ac: PUSH2 0x21db 000023af: JUMP 000023b0: JUMPDEST 000023b1: DUP5 000023b2: PUSH2 0x233b 000023b5: JUMP 000023b6: JUMPDEST 000023b7: PUSH1 0x20 000023b9: DUP1 000023ba: PUSH1 0x1f 000023bc: DUP4 000023bd: GT 000023be: PUSH1 0x01 000023c0: DUP2 000023c1: EQ 000023c2: PUSH2 0x23eb 000023c5: JUMPI 000023c6: PUSH1 0x00 000023c8: DUP5 000023c9: ISZERO 000023ca: PUSH2 0x23d3 000023cd: JUMPI 000023ce: POP 000023cf: DUP6 000023d0: DUP4 000023d1: ADD 000023d2: MLOAD 000023d3: JUMPDEST 000023d4: PUSH1 0x00 000023d6: NOT 000023d7: PUSH1 0x03 000023d9: DUP7 000023da: SWAP1 000023db: SHL 000023dc: SHR 000023dd: NOT 000023de: AND 000023df: PUSH1 0x01 000023e1: DUP6 000023e2: SWAP1 000023e3: SHL 000023e4: OR 000023e5: DUP6 000023e6: SSTORE 000023e7: PUSH2 0x2381 000023ea: JUMP 000023eb: JUMPDEST 000023ec: PUSH1 0x00 000023ee: DUP6 000023ef: DUP2 000023f0: MSTORE 000023f1: PUSH1 0x20 000023f3: DUP2 000023f4: KECCAK256 000023f5: PUSH1 0x1f 000023f7: NOT 000023f8: DUP7 000023f9: AND 000023fa: SWAP2 000023fb: JUMPDEST 000023fc: DUP3 000023fd: DUP2 000023fe: LT 000023ff: ISZERO 00002400: PUSH2 0x241a 00002403: JUMPI 00002404: DUP9 00002405: DUP7 00002406: ADD 00002407: MLOAD 00002408: DUP3 00002409: SSTORE 0000240a: SWAP5 0000240b: DUP5 0000240c: ADD 0000240d: SWAP5 0000240e: PUSH1 0x01 00002410: SWAP1 00002411: SWAP2 00002412: ADD 00002413: SWAP1 00002414: DUP5 00002415: ADD 00002416: PUSH2 0x23fb 00002419: JUMP 0000241a: JUMPDEST 0000241b: POP 0000241c: DUP6 0000241d: DUP3 0000241e: LT 0000241f: ISZERO 00002420: PUSH2 0x2438 00002423: JUMPI 00002424: DUP8 00002425: DUP6 00002426: ADD 00002427: MLOAD 00002428: PUSH1 0x00 0000242a: NOT 0000242b: PUSH1 0x03 0000242d: DUP9 0000242e: SWAP1 0000242f: SHL 00002430: PUSH1 0xf8 00002432: AND 00002433: SHR 00002434: NOT 00002435: AND 00002436: DUP2 00002437: SSTORE 00002438: JUMPDEST 00002439: POP 0000243a: POP 0000243b: POP 0000243c: POP 0000243d: POP 0000243e: PUSH1 0x01 00002440: SWAP1 00002441: DUP2 00002442: SHL 00002443: ADD 00002444: SWAP1 00002445: SSTORE 00002446: POP 00002447: JUMP 00002448: JUMPDEST 00002449: PUSH1 0x00 0000244b: DUP1 0000244c: PUSH1 0x40 0000244e: DUP4 0000244f: DUP6 00002450: SUB 00002451: SLT 00002452: ISZERO 00002453: PUSH2 0x245b 00002456: JUMPI 00002457: PUSH1 0x00 00002459: DUP1 0000245a: REVERT 0000245b: JUMPDEST 0000245c: DUP3 0000245d: CALLDATALOAD 0000245e: SWAP2 0000245f: POP 00002460: PUSH1 0x20 00002462: DUP4 00002463: ADD 00002464: CALLDATALOAD 00002465: PUSH1 0x01 00002467: PUSH1 0x01 00002469: PUSH1 0x40 0000246b: SHL 0000246c: SUB 0000246d: DUP2 0000246e: GT 0000246f: ISZERO 00002470: PUSH2 0x2478 00002473: JUMPI 00002474: PUSH1 0x00 00002476: DUP1 00002477: REVERT 00002478: JUMPDEST 00002479: PUSH2 0x2484 0000247c: DUP6 0000247d: DUP3 0000247e: DUP7 0000247f: ADD 00002480: PUSH2 0x1e65 00002483: JUMP 00002484: JUMPDEST 00002485: SWAP2 00002486: POP 00002487: POP 00002488: SWAP3 00002489: POP 0000248a: SWAP3 0000248b: SWAP1 0000248c: POP 0000248d: JUMP 0000248e: JUMPDEST 0000248f: PUSH1 0x00 00002491: DUP1 00002492: PUSH1 0x40 00002494: DUP4 00002495: DUP6 00002496: SUB 00002497: SLT 00002498: ISZERO 00002499: PUSH2 0x24a1 0000249c: JUMPI 0000249d: PUSH1 0x00 0000249f: DUP1 000024a0: REVERT 000024a1: JUMPDEST 000024a2: DUP3 000024a3: CALLDATALOAD 000024a4: PUSH2 0x24ac 000024a7: DUP2 000024a8: PUSH2 0x1b78 000024ab: JUMP 000024ac: JUMPDEST 000024ad: SWAP2 000024ae: POP 000024af: PUSH1 0x20 000024b1: DUP4 000024b2: ADD 000024b3: CALLDATALOAD 000024b4: PUSH1 0x01 000024b6: PUSH1 0x01 000024b8: PUSH1 0x40 000024ba: SHL 000024bb: SUB 000024bc: DUP2 000024bd: GT 000024be: ISZERO 000024bf: PUSH2 0x2478 000024c2: JUMPI 000024c3: PUSH1 0x00 000024c5: DUP1 000024c6: REVERT 000024c7: JUMPDEST 000024c8: PUSH1 0x00 000024ca: DUP1 000024cb: PUSH1 0x00 000024cd: PUSH1 0x60 000024cf: DUP5 000024d0: DUP7 000024d1: SUB 000024d2: SLT 000024d3: ISZERO 000024d4: PUSH2 0x24dc 000024d7: JUMPI 000024d8: PUSH1 0x00 000024da: DUP1 000024db: REVERT 000024dc: JUMPDEST 000024dd: DUP4 000024de: MLOAD 000024df: SWAP3 000024e0: POP 000024e1: PUSH1 0x20 000024e3: DUP5 000024e4: ADD 000024e5: MLOAD 000024e6: PUSH1 0x01 000024e8: PUSH1 0x01 000024ea: PUSH1 0x40 000024ec: SHL 000024ed: SUB 000024ee: DUP2 000024ef: GT 000024f0: ISZERO 000024f1: PUSH2 0x24f9 000024f4: JUMPI 000024f5: PUSH1 0x00 000024f7: DUP1 000024f8: REVERT 000024f9: JUMPDEST 000024fa: DUP5 000024fb: ADD 000024fc: PUSH1 0x1f 000024fe: DUP2 000024ff: ADD 00002500: DUP7 00002501: SGT 00002502: PUSH2 0x250a 00002505: JUMPI 00002506: PUSH1 0x00 00002508: DUP1 00002509: REVERT 0000250a: JUMPDEST 0000250b: DUP1 0000250c: MLOAD 0000250d: PUSH2 0x2518 00002510: PUSH2 0x1e84 00002513: DUP3 00002514: PUSH2 0x1e3e 00002517: JUMP 00002518: JUMPDEST 00002519: DUP2 0000251a: DUP2 0000251b: MSTORE 0000251c: DUP8 0000251d: PUSH1 0x20 0000251f: DUP4 00002520: DUP6 00002521: ADD 00002522: ADD 00002523: GT 00002524: ISZERO 00002525: PUSH2 0x252d 00002528: JUMPI 00002529: PUSH1 0x00 0000252b: DUP1 0000252c: REVERT 0000252d: JUMPDEST 0000252e: PUSH2 0x253e 00002531: DUP3 00002532: PUSH1 0x20 00002534: DUP4 00002535: ADD 00002536: PUSH1 0x20 00002538: DUP7 00002539: ADD 0000253a: PUSH2 0x1d2d 0000253d: JUMP 0000253e: JUMPDEST 0000253f: DUP1 00002540: SWAP5 00002541: POP 00002542: POP 00002543: POP 00002544: POP 00002545: PUSH1 0x40 00002547: DUP5 00002548: ADD 00002549: MLOAD 0000254a: SWAP1 0000254b: POP 0000254c: SWAP3 0000254d: POP 0000254e: SWAP3 0000254f: POP 00002550: SWAP3 00002551: JUMP 00002552: JUMPDEST 00002553: PUSH1 0x00 00002555: PUSH1 0x20 00002557: DUP3 00002558: DUP5 00002559: SUB 0000255a: SLT 0000255b: ISZERO 0000255c: PUSH2 0x2564 0000255f: JUMPI 00002560: PUSH1 0x00 00002562: DUP1 00002563: REVERT 00002564: JUMPDEST 00002565: POP 00002566: MLOAD 00002567: SWAP2 00002568: SWAP1 00002569: POP 0000256a: JUMP 0000256b: JUMPDEST 0000256c: DUP2 0000256d: DUP2 0000256e: SUB 0000256f: DUP2 00002570: DUP2 00002571: GT 00002572: ISZERO 00002573: PUSH2 0x037f 00002576: JUMPI 00002577: PUSH4 0x4e487b71 0000257c: PUSH1 0xe0 0000257e: SHL 0000257f: PUSH1 0x00 00002581: MSTORE 00002582: PUSH1 0x11 00002584: PUSH1 0x04 00002586: MSTORE 00002587: PUSH1 0x24 00002589: PUSH1 0x00 0000258b: REVERT 0000258c: JUMPDEST 0000258d: PUSH1 0x00 0000258f: PUSH2 0x0120 00002592: PUSH1 0x01 00002594: DUP1 00002595: PUSH1 0xa0 00002597: SHL 00002598: SUB 00002599: DUP1 0000259a: DUP14 0000259b: AND 0000259c: DUP5 0000259d: MSTORE 0000259e: DUP12 0000259f: PUSH1 0x20 000025a1: DUP6 000025a2: ADD 000025a3: MSTORE 000025a4: DUP11 000025a5: PUSH1 0x40 000025a7: DUP6 000025a8: ADD 000025a9: MSTORE 000025aa: DUP1 000025ab: DUP11 000025ac: AND 000025ad: PUSH1 0x60 000025af: DUP6 000025b0: ADD 000025b1: MSTORE 000025b2: DUP1 000025b3: DUP10 000025b4: AND 000025b5: PUSH1 0x80 000025b7: DUP6 000025b8: ADD 000025b9: MSTORE 000025ba: POP 000025bb: DUP7 000025bc: PUSH1 0xa0 000025be: DUP5 000025bf: ADD 000025c0: MSTORE 000025c1: DUP6 000025c2: PUSH1 0xc0 000025c4: DUP5 000025c5: ADD 000025c6: MSTORE 000025c7: DUP5 000025c8: PUSH1 0xe0 000025ca: DUP5 000025cb: ADD 000025cc: MSTORE 000025cd: DUP1 000025ce: PUSH2 0x0100 000025d1: DUP5 000025d2: ADD 000025d3: MSTORE 000025d4: PUSH2 0x25df 000025d7: DUP2 000025d8: DUP5 000025d9: ADD 000025da: DUP6 000025db: PUSH2 0x1d51 000025de: JUMP 000025df: JUMPDEST 000025e0: SWAP13 000025e1: SWAP12 000025e2: POP 000025e3: POP 000025e4: POP 000025e5: POP 000025e6: POP 000025e7: POP 000025e8: POP 000025e9: POP 000025ea: POP 000025eb: POP 000025ec: POP 000025ed: POP 000025ee: JUMP 000025ef: INVALID 000025f0: LOG2 000025f1: PUSH5 0x6970667358 000025f7: UNKNOWN(0x22) 000025f8: SLT 000025f9: KECCAK256 000025fa: SWAP7 000025fb: DUP1 000025fc: UNKNOWN(0x2D) 000025fd: PUSH12 0xc55351407cc4962860edc0cd 0000260a: UNKNOWN(0xBA) 0000260b: CREATE 0000260c: UNKNOWN(0xB0) 0000260d: PUSH10 0xdeb9e72c7fbc22ae181e 00002618: LOG3 00002619: SELFDESTRUCT 0000261a: PUSH5 0x736f6c6343 00002620: STOP 00002621: ADDMOD 00002622: LT 00002623: STOP 00002624: CALLER
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_id: 0xa9bdc10b442929a04cb015c8fd06c904de74e0744b30592cb758c9efc6c6f5ea
call_targets:
0xe80b4e0ed5e92d865f4708eee0e1564287a7d848
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xa9bdc10b442929a04cb015c8fd06c904de74e0744b30592cb758c9efc6c6f5ea",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xe80b4e0ed5e92d865f4708eee0e1564287a7d848"
],
"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": "0xa01893bf",
"selector": "0xa01893bf",
"calldata_variants": [
"0xa01893bf",
"0xa01893bf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa0c76a96",
"selector": "0xa0c76a96",
"calldata_variants": [
"0xa0c76a96",
"0xa0c76a960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa7e28d48",
"selector": "0xa7e28d48",
"calldata_variants": [
"0xa7e28d48",
"0xa7e28d480000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbcf2e6eb",
"selector": "0xbcf2e6eb",
"calldata_variants": [
"0xbcf2e6eb",
"0xbcf2e6eb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbd5f3e7d",
"selector": "0xbd5f3e7d",
"calldata_variants": [
"0xbd5f3e7d",
"0xbd5f3e7d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd2ce7d65",
"selector": "0xd2ce7d65",
"calldata_variants": [
"0xd2ce7d65",
"0xd2ce7d650000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf68a9082",
"selector": "0xf68a9082",
"calldata_variants": [
"0xf68a9082",
"0xf68a90820000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf887ea40",
"selector": "0xf887ea40",
"calldata_variants": [
"0xf887ea40",
"0xf887ea400000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2373,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 6413,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 6764,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 3,
"guards_detected": [],
"untrusted_call_count": 3
}
|
| high | other | cast | SELFDESTRUCT present | 85 | no | — |
viewevidence_json{
"notes": "selfdestruct can remove contract code and send funds; review reachability",
"selfdestruct_count": 1
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0xa9bdc10b442929a04cb015c8fd06c904de74e0744b30592cb758c9efc6c6f5ea
call_targets:
0xe80b4e0ed5e92d865f4708eee0e1564287a7d848
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xa9bdc10b442929a04cb015c8fd06c904de74e0744b30592cb758c9efc6c6f5ea",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xe80b4e0ed5e92d865f4708eee0e1564287a7d848"
],
"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": "0xa01893bf",
"selector": "0xa01893bf",
"calldata_variants": [
"0xa01893bf",
"0xa01893bf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa0c76a96",
"selector": "0xa0c76a96",
"calldata_variants": [
"0xa0c76a96",
"0xa0c76a960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa7e28d48",
"selector": "0xa7e28d48",
"calldata_variants": [
"0xa7e28d48",
"0xa7e28d480000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbcf2e6eb",
"selector": "0xbcf2e6eb",
"calldata_variants": [
"0xbcf2e6eb",
"0xbcf2e6eb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbd5f3e7d",
"selector": "0xbd5f3e7d",
"calldata_variants": [
"0xbd5f3e7d",
"0xbd5f3e7d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd2ce7d65",
"selector": "0xd2ce7d65",
"calldata_variants": [
"0xd2ce7d65",
"0xd2ce7d650000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf68a9082",
"selector": "0xf68a9082",
"calldata_variants": [
"0xf68a9082",
"0xf68a90820000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf887ea40",
"selector": "0xf887ea40",
"calldata_variants": [
"0xf887ea40",
"0xf887ea400000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2373,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 6413,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 6764,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 3,
"guards_detected": []
}
|
| high | upgradeability | codex | Unprotected initialize allows hostile setup of critical bridge addresses | 85 | no | — |
viewevidence_json{
"evidence": "L1ERC20Gateway.initialize is public and lacks any access control beyond a single-call guard in _initialize; it sets critical addresses (counterpart, router, inbox).",
"locations": [
"contracts/contracts/tokenbridge/ethereum/gateway/L1ERC20Gateway.sol:89"
],
"recommendation": "Protect initialization with an access-control guard or OpenZeppelin's initializer/onlyProxy pattern, and ensure proxies are initialized atomically on deployment (e.g., via constructor calldata). Consider adding an explicit admin role check to initialize.",
"exploit_scenario": "If the proxy/implementation is deployed without calling initialize in the same transaction, any external account can call initialize first and set the inbox/router/counterpartGateway to attacker-controlled contracts. A malicious inbox/bridge/outbox can then satisfy onlyCounterpartGateway checks and call finalizeInboundTransfer to release escrowed tokens to the attacker or permanently block legitimate bridging."
}
|
| high | other | detector | SELFDESTRUCT reachable | 65 | no | no |
viewtrace_id: 0xaead01fc060c755950ca4a7e5188175e9715c50a4f8aef349fa7aa2c84907ba2
validation_json{
"sink": "SELFDESTRUCT",
"errors": 0,
"status": "unknown",
"attempts": 32,
"trace_id": "0xaead01fc060c755950ca4a7e5188175e9715c50a4f8aef349fa7aa2c84907ba2",
"confirmed": false,
"trace_mode": "structLogs",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xa01893bf",
"selector": "0xa01893bf",
"calldata_variants": [
"0xa01893bf",
"0xa01893bf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa0c76a96",
"selector": "0xa0c76a96",
"calldata_variants": [
"0xa0c76a96",
"0xa0c76a960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa7e28d48",
"selector": "0xa7e28d48",
"calldata_variants": [
"0xa7e28d48",
"0xa7e28d480000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbcf2e6eb",
"selector": "0xbcf2e6eb",
"calldata_variants": [
"0xbcf2e6eb",
"0xbcf2e6eb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbd5f3e7d",
"selector": "0xbd5f3e7d",
"calldata_variants": [
"0xbd5f3e7d",
"0xbd5f3e7d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd2ce7d65",
"selector": "0xd2ce7d65",
"calldata_variants": [
"0xd2ce7d65",
"0xd2ce7d650000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf68a9082",
"selector": "0xf68a9082",
"calldata_variants": [
"0xf68a9082",
"0xf68a90820000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf887ea40",
"selector": "0xf887ea40",
"calldata_variants": [
"0xf887ea40",
"0xf887ea400000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [],
"selfdestruct_count": 1
}
|
| medium | other | detector | CREATE/CREATE2 reachable | 45 | no | no |
viewtrace_id: 0xaead01fc060c755950ca4a7e5188175e9715c50a4f8aef349fa7aa2c84907ba2
validation_json{
"sink": "CREATE",
"errors": 0,
"status": "unknown",
"attempts": 32,
"trace_id": "0xaead01fc060c755950ca4a7e5188175e9715c50a4f8aef349fa7aa2c84907ba2",
"confirmed": false,
"trace_mode": "structLogs",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xa01893bf",
"selector": "0xa01893bf",
"calldata_variants": [
"0xa01893bf",
"0xa01893bf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa0c76a96",
"selector": "0xa0c76a96",
"calldata_variants": [
"0xa0c76a96",
"0xa0c76a960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa7e28d48",
"selector": "0xa7e28d48",
"calldata_variants": [
"0xa7e28d48",
"0xa7e28d480000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbcf2e6eb",
"selector": "0xbcf2e6eb",
"calldata_variants": [
"0xbcf2e6eb",
"0xbcf2e6eb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbd5f3e7d",
"selector": "0xbd5f3e7d",
"calldata_variants": [
"0xbd5f3e7d",
"0xbd5f3e7d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd2ce7d65",
"selector": "0xd2ce7d65",
"calldata_variants": [
"0xd2ce7d65",
"0xd2ce7d650000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf68a9082",
"selector": "0xf68a9082",
"calldata_variants": [
"0xf68a9082",
"0xf68a90820000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf887ea40",
"selector": "0xf887ea40",
"calldata_variants": [
"0xf887ea40",
"0xf887ea400000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"create_count": 1,
"create2_count": 0
}
|
| low | other | cast | Contract creation opcode present | 60 | no | — |
viewevidence_json{
"notes": "runtime can deploy contracts dynamically via CREATE/CREATE2",
"create_count": 1,
"create2_count": 0
}
|