b92d2e03-21a2-487f-9e4b-54e0e3b1a93c
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 |
|---|---|---|---|---|
| 30205 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 93829 | artifact.fetch | failed | 1 / 3 | 1 week ago |
| 93830 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 93831 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 93832 | capability.graph | complete | 1 / 3 | 1 week ago |
| 93833 | detector.run | complete | 1 / 3 | 1 week ago |
| 93834 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:1470633] OpenAI Codex v0.77.0 (research preview)
[codex:1470633] --------
[codex:1470633] workdir: /tmp/codex-multi-ro42vpic
[codex:1470633] model: gpt-5.2-codex
[codex:1470633] provider: openai
[codex:1470633] approval: never
[codex:1470633] sandbox: read-only
[codex:1470633] reasoning effort: xhigh
[codex:1470633] reasoning summaries: auto
[codex:1470633] session id: 019b61c1-9823-7090-a797-0e274a3e044a
[codex:1470633] --------
[codex:1470633] user
[codex:1470633] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:1470633] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:1470633] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:1470633]
[codex:1470633] Scope rules:
[codex:1470633] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:1470633] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:1470633]
[codex:1470633] Output MUST be valid JSON matching the provided schema.
[codex:1470633] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:1470633] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:1470633]
[codex:1470633] Output constraints (IMPORTANT):
[codex:1470633] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:1470633] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:1470633] mcp startup: no servers
[codex:1470633]
[codex:1470633] thinking
[codex:1470633] **Reading audit file**
[codex:1470633] exec
[codex:1470633] /bin/bash -lc ls in /tmp/codex-multi-ro42vpic succeeded in 6ms:
[codex:1470633] AUDIT_BUNDLE.txt
[codex:1470633] codex-output-schema.json
[codex:1470633] contracts
[codex:1470633] exec
[codex:1470633] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-ro42vpic succeeded in 6ms:
[codex:1470633] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:1470633]
[codex:1470633] ================================================================================
[codex:1470633] FILE: contracts/lib/openzeppelin-contracts/contracts/access/IAccessControl.sol
[codex:1470633] ================================================================================
[codex:1470633] // SPDX-License-Identifier: MIT
[codex:1470633] // OpenZeppelin Contracts (last updated v5.4.0) (access/IAccessControl.sol)
[codex:1470633]
[codex:1470633] pragma solidity >=0.8.4;
[codex:1470633]
[codex:1470633] /**
[codex:1470633] * @dev External interface of AccessControl declared to support ERC-165 detection.
[codex:1470633] */
[codex:1470633] interface IAccessControl {
[codex:1470633] /**
[codex:1470633] * @dev The `account` is missing a role.
[codex:1470633] */
[codex:1470633] error AccessControlUnauthorizedAccount(address account, bytes32 neededRole);
[codex:1470633]
[codex:1470633] /**
[codex:1470633]
[codex:1470633] thinking
[codex:1470633] **Identifying first-party contracts in audit bundle**
[codex:1470633] exec
[codex:1470633] /bin/bash -lc 'rg "''^FILE: contracts/" AUDIT_BUNDLE.txt' in /tmp/codex-multi-ro42vpic succeeded in 6ms:
[codex:1470633] FILE: contracts/lib/openzeppelin-contracts/contracts/access/IAccessControl.sol
[codex:1470633] FILE: contracts/lib/openzeppelin-contracts/contracts/access/extensions/IAccessControlEnumerable.sol
[codex:1470633] FILE: contracts/lib/openzeppelin-contracts/contracts/interfaces/IERC1363.sol
[codex:1470633] FILE: contracts/lib/openzeppelin-contracts/contracts/interfaces/IERC165.sol
[codex:1470633] FILE: contracts/lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol
[codex:1470633] FILE: contracts/lib/openzeppelin-contracts/contracts/interfaces/IERC20.sol
[codex:1470633] FILE: contracts/lib/openzeppelin-contracts/contracts/interfaces/IERC4626.sol
[codex:1470633] FILE: contracts/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol
[codex:1470633] FILE: contracts/lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Utils.sol
[codex:1470633] FILE: contracts/lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol
[codex:1470633] FILE: contracts/lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol
[codex:1470633] FILE: contracts/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol
[codex:1470633] FILE: contracts/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol
[codex:1470633] FILE: contracts/lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol
[codex:1470633] FILE: contracts/lib/openzeppelin-contracts/contracts/utils/Address.sol
[codex:1470633] FILE: contracts/lib/openzeppelin-contracts/contracts/utils/Arrays.sol
[codex:1470633] FILE: contracts/lib/openzeppelin-contracts/contracts/utils/Comparators.sol
[codex:1470633] FILE: contracts/lib/openzeppelin-contracts/contracts/utils/Errors.sol
[codex:1470633] FILE: contracts/lib/openzeppelin-contracts/contracts/utils/Panic.sol
[codex:1470633] FILE: contracts/lib/openzeppelin-contracts/contracts/utils/SlotDerivation.sol
[codex:1470633]
[codex:1470633] thinking
[codex:1470633] **Identifying relevant contract files**
[codex:1470633] exec
[codex:1470633] /bin/bash -lc "awk '/"'^FILE: contracts'"\\/src\\/ISparkVault.sol/{flag=1} flag{print} /"'^FILE: contracts'"\\// && "'!/''^FILE: contracts'"\\/src\\/ISparkVault.sol/ && flag && NR>1 {exit}' AUDIT_BUNDLE.txt" in /tmp/codex-multi-ro42vpic succeeded in 10ms:
[codex:1470633] FILE: contracts/src/ISparkVault.sol
[codex:1470633] ================================================================================
[codex:1470633] // SPDX-License-Identifier: AGPL-3.0-or-later
[codex:1470633]
[codex:1470633] // Copyright (C) 2021 Dai Foundation
[codex:1470633] //
[codex:1470633] // This program is free software: you can redistribute it and/or modify
[codex:1470633] // it under the terms of the GNU Affero General Public License as published by
[codex:1470633] // the Free Software Foundation, either version 3 of the License, or
[codex:1470633] // (at your option) any later version.
[codex:1470633] //
[codex:1470633] // This program is distributed in the hope that it will be useful,
[codex:1470633] // but WITHOUT ANY WARRANTY; without even the implied warranty of
[codex:1470633] // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
[codex:1470633] // GNU Affero General Public License for more details.
[codex:1470633] //
[codex:1470633] // You should have received a copy of the GNU Affero General Public License
[codex:1470633] // along with this program. If not, see <https://www.gnu.org/licenses/>.
[codex:1470633]
[codex:1470633] pragma solidity >=0.8.0;
[codex:1470633]
[codex:1470633] thinking
[codex:1470633] **Requesting more file content**
[codex:1470633] exec
[codex:1470633] /bin/bash -lc "awk '/"'^FILE: contracts'"\\/src\\/SparkVault.sol/{flag=1} flag{print} /"'^FILE: contracts'"\\// && "'!/''^FILE: contracts'"\\/src\\/SparkVault.sol/ && flag && NR>1 {exit}' AUDIT_BUNDLE.txt" in /tmp/codex-multi-ro42vpic succeeded in 9ms:
[codex:1470633] FILE: contracts/src/SparkVault.sol
[codex:1470633] ================================================================================
[codex:1470633] // SPDX-License-Identifier: AGPL-3.0-or-later
[codex:1470633] pragma solidity ^0.8.25;
[codex:1470633]
[codex:1470633] import { ERC1967Utils } from "openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Utils.sol";
[codex:1470633] import { SafeERC20 } from "openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1470633] import { IERC20 } from "openzeppelin-contracts/contracts/token/ERC20/IERC20.sol";
[codex:1470633] import { IERC20Metadata } from "openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol";
[codex:1470633]
[codex:1470633] import { AccessControlEnumerableUpgradeable }
[codex:1470633] from "openzeppelin-contracts-upgradeable/contracts/access/extensions/AccessControlEnumerableUpgradeable.sol";
[codex:1470633]
[codex:1470633] import { UUPSUpgradeable } from "openzeppelin-contracts-upgradeable/contracts/proxy/utils/UUPSUpgradeable.sol";
[codex:1470633]
[codex:1470633] import { ISparkVault } from "./ISparkVault.sol";
[codex:1470633]
[codex:1470633] interface IERC1271 {
[codex:1470633] function isValidSignature(bytes32, bytes memory) external view returns (bytes4);
[codex:1470633] }
[codex:1470633]
[codex:1470633] thinking
[codex:1470633] **Analyzing SparkVault security risks**
[codex:1470633] exec
[codex:1470633] /bin/bash -lc 'rg -n "contract UUPSUpgradeable" -n AUDIT_BUNDLE.txt' in /tmp/codex-multi-ro42vpic succeeded in 6ms:
[codex:1470633] 5649:abstract contract UUPSUpgradeable is Initializable, IERC1822Proxiable {
[codex:1470633] exec
[codex:1470633] /bin/bash -lc "sed -n '5649,5805p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-ro42vpic succeeded in 6ms:
[codex:1470633] abstract contract UUPSUpgradeable is Initializable, IERC1822Proxiable {
[codex:1470633] /// @custom:oz-upgrades-unsafe-allow state-variable-immutable
[codex:1470633] address private immutable __self = address(this);
[codex:1470633]
[codex:1470633] /**
[codex:1470633] * @dev The version of the upgrade interface of the contract. If this getter is missing, both `upgradeTo(address)`
[codex:1470633] * and `upgradeToAndCall(address,bytes)` are present, and `upgradeTo` must be used if no function should be called,
[codex:1470633] * while `upgradeToAndCall` will invoke the `receive` function if the second argument is the empty byte string.
[codex:1470633] * If the getter returns `"5.0.0"`, only `upgradeToAndCall(address,bytes)` is present, and the second argument must
[codex:1470633] * be the empty byte string if no function should be called, making it impossible to invoke the `receive` function
[codex:1470633] * during an upgrade.
[codex:1470633] */
[codex:1470633] string public constant UPGRADE_INTERFACE_VERSION = "5.0.0";
[codex:1470633]
[codex:1470633] /**
[codex:1470633] * @dev The call is from an unauthorized context.
[codex:1470633] */
[codex:1470633] error UUPSUnauthorizedCallContext();
[codex:1470633]
[codex:1470633] /**
[codex:1470633]
[codex:1470633]
[codex:1470633]
[codex:1470633]
[codex:1470633] thinking
[codex:1470633] **Analyzing complex contract risks**
[codex:1470633]
[codex:1470633] I’m carefully reviewing potential issues around signature handling, interest accounting with `chi`, role-based controls, and reentrancy risks especially in deposit and `take`. The main concerns relate to how interest is tracked without backing assets, possible deposit cap bypass via reentrancy, and overflow in `drip` after long inactivity, but overall these appear to be design trade-offs rather than clear vulnerabilities.
[codex:1470633] thinking
[codex:1470633] **Examining reentrancy and accounting nuances**
[codex:1470633]
[codex:1470633] There is a notable reentrancy risk via ERC777 tokens allowing depositCap bypass since external calls happen before state updates. Also, the `take` function enables privileged roles to withdraw assets without adjusting shares, risking liquidity for regular users. Most other points appear to be design trade-offs or expected behaviors, yet these access control and reentrancy issues stand out as important considerations.
[codex:1470633] thinking
[codex:1470633] **Analyzing interface support and math edge cases**
[codex:1470633]
[codex:1470633] I’m reviewing interface implementations, math overflows, and permit signature handling while checking for subtle logic or access control gaps. Most points appear expected or low risk, and I find no major exploitable vulnerabilities given the current code.
[codex:1470633] thinking
[codex:1470633] **Identifying upgrade and reentrancy considerations**
[codex:1470633]
[codex:1470633] I’m weighing upgradeable contract storage gaps and potential reentrancy in token transfers that might enable depositCap bypass on reentrant tokens like ERC777, plus noting risks around fee-on-transfer assets and state update ordering, aiming to highlight subtle edge cases worth flagging despite no critical vulnerabilities.
[codex:1470633] exec
[codex:1470633] /bin/bash -lc "nl -ba contracts/src/SparkVault.sol | sed -n '220,360p'" in /tmp/codex-multi-ro42vpic succeeded in 6ms:
[codex:1470633] 220
[codex:1470633] 221 return true;
[codex:1470633] 222 }
[codex:1470633] 223
[codex:1470633] 224 /**********************************************************************************************/
[codex:1470633] 225 /*** EIP712 external mutating functions ***/
[codex:1470633] 226 /**********************************************************************************************/
[codex:1470633] 227
[codex:1470633] 228 function permit(
[codex:1470633] 229 address owner,
[codex:1470633] 230 address spender,
[codex:1470633] 231 uint256 value,
[codex:1470633] 232 uint256 deadline,
[codex:1470633] 233 bytes memory signature
[codex:1470633] 234 ) public {
[codex:1470633] 235 require(block.timestamp <= deadline, "SparkVault/permit-expired");
[codex:1470633] 236 require(owner != address(0), "SparkVault/invalid-owner");
[codex:1470633] 237
[codex:1470633] 238 uint256 nonce;
[codex:1470633] 239 unchecked { nonce = nonces[owner]++; }
[codex:1470633]
[codex:1470633] thinking
[codex:1470633] **Checking relevant code lines around 430**
[codex:1470633] exec
[codex:1470633] /bin/bash -lc "nl -ba contracts/src/SparkVault.sol | sed -n '430,560p'" in /tmp/codex-multi-ro42vpic succeeded in 6ms:
[codex:1470633] 430 // and balance <= totalSupply
[codex:1470633] 431 unchecked {
[codex:1470633] 432 balanceOf[owner] = balance - shares;
[codex:1470633] 433 totalSupply = totalSupply - shares;
[codex:1470633] 434 }
[codex:1470633] 435
[codex:1470633] 436 _pushAsset(receiver, assets);
[codex:1470633] 437
[codex:1470633] 438 emit Transfer(owner, address(0), shares);
[codex:1470633] 439 emit Withdraw(msg.sender, receiver, owner, assets, shares);
[codex:1470633] 440 }
[codex:1470633] 441
[codex:1470633] 442 function _mint(uint256 assets, uint256 shares, address receiver) internal {
[codex:1470633] 443 require(receiver != address(0) && receiver != address(this), "SparkVault/invalid-address");
[codex:1470633] 444
[codex:1470633] 445 require(
[codex:1470633] 446 !hasRole(TAKER_ROLE, msg.sender) && !hasRole(TAKER_ROLE, receiver),
[codex:1470633] 447 "SparkVault/taker-cannot-deposit"
[codex:1470633] 448 );
[codex:1470633] 449
[codex:1470633]
[codex:1470633] thinking
[codex:1470633] **Summarizing audit findings**
[codex:1470633]
[codex:1470633] I’m gathering my thoughts on real risks in the SparkVault contract. The main issue seems to be a low-severity reentrancy vulnerability enabling depositCap bypass due to an external call before state is updated in `_mint`. Another is an informational flaw where shares are minted based on requested assets without verifying actually received amounts, which may cause dilution if fee-on-transfer or rebasing tokens are used. I’m noting clear evidence, exploit scenarios, and recommendations with line references to deliver a precise and balanced audit summary.
[codex:1470633] codex
[codex:1470633] {"no_findings":false,"summary":"Reviewed `contracts/src/SparkVault.sol` and found two low-risk issues: a reentrancy-enabled deposit cap bypass and an accounting assumption around fee-on-transfer assets.","findings":[{"severity":"low","category":"reentrancy","title":"Reentrancy during `_mint` can bypass `depositCap`","exploit_scenario":"If the underlying asset is ERC777 or otherwise reentrant, an attacker can reenter `deposit`/`mint` during `_pullAsset`. Each reentrant call observes the same pre-mint `totalSupply`, so `totalAssets() + assets <= depositCap` passes repeatedly, allowing deposits that cumulatively exceed the cap within a single transaction.","recommendation":"Follow CEI or add a reentrancy guard: update `totalSupply`/`balanceOf` (or track pending deposits) before external token transfers, or block reentrancy on `deposit`/`mint` so the cap check cannot be bypassed.","evidence":"`_mint` checks `depositCap` and then calls `_pullAsset` (external call) before updating `totalSupply`/`balanceOf`, so reentrancy sees stale state.","locations":["contracts/src/SparkVault.sol:442","contracts/src/SparkVault.sol:450","contracts/src/SparkVault.sol:452"]},{"severity":"info","category":"other","title":"Shares minted without verifying actual assets received","exploit_scenario":"If the configured asset is fee-on-transfer/rebasing, `_mint` mints shares based on the user-supplied `assets` value even when fewer tokens arrive. An attacker can deposit with high transfer fees to overmint shares and dilute other holders.","recommendation":"Either constrain `asset` to non-fee-on-transfer tokens or compute shares based on the balance delta after `_pullAsset` (and/or revert if the received amount is less than expected).","evidence":"`deposit`/`mint` derive shares from `assets` and `_mint` does not check the actual amount received via `_pullAsset`.","locations":["contracts/src/SparkVault.sol:277","contracts/src/SparkVault.sol:442","contracts/src/SparkVault.sol:465"]}]}
[codex:1470633] tokens used
[codex:1470633] 50,403
[codex:1470633] {"no_findings":false,"summary":"Reviewed `contracts/src/SparkVault.sol` and found two low-risk issues: a reentrancy-enabled deposit cap bypass and an accounting assumption around fee-on-transfer assets.","findings":[{"severity":"low","category":"reentrancy","title":"Reentrancy during `_mint` can bypass `depositCap`","exploit_scenario":"If the underlying asset is ERC777 or otherwise reentrant, an attacker can reenter `deposit`/`mint` during `_pullAsset`. Each reentrant call observes the same pre-mint `totalSupply`, so `totalAssets() + assets <= depositCap` passes repeatedly, allowing deposits that cumulatively exceed the cap within a single transaction.","recommendation":"Follow CEI or add a reentrancy guard: update `totalSupply`/`balanceOf` (or track pending deposits) before external token transfers, or block reentrancy on `deposit`/`mint` so the cap check cannot be bypassed.","evidence":"`_mint` checks `depositCap` and then calls `_pullAsset` (external call) before updating `totalSupply`/`balanceOf`, so reentrancy sees stale state.","locations":["contracts/src/SparkVault.sol:442","contracts/src/SparkVault.sol:450","contracts/src/SparkVault.sol:452"]},{"severity":"info","category":"other","title":"Shares minted without verifying actual assets received","exploit_scenario":"If the configured asset is fee-on-transfer/rebasing, `_mint` mints shares based on the user-supplied `assets` value even when fewer tokens arrive. An attacker can deposit with high transfer fees to overmint shares and dilute other holders.","recommendation":"Either constrain `asset` to non-fee-on-transfer tokens or compute shares based on the balance delta after `_pullAsset` (and/or revert if the received amount is less than expected).","evidence":"`deposit`/`mint` derive shares from `assets` and `_mint` does not check the actual amount received via `_pullAsset`.","locations":["contracts/src/SparkVault.sol:277","contracts/src/SparkVault.sol:442","contracts/src/SparkVault.sol:465"]}]}
{
"codex": {
"ran_at": "2025-12-27T21:47:52.906185+00:00",
"returncode": 0
},
"summary": "Reviewed `contracts/src/SparkVault.sol` and found two low-risk issues: a reentrancy-enabled deposit cap bypass and an accounting assumption around fee-on-transfer assets.",
"raw_final": {
"summary": "Reviewed `contracts/src/SparkVault.sol` and found two low-risk issues: a reentrancy-enabled deposit cap bypass and an accounting assumption around fee-on-transfer assets.",
"findings": [
{
"title": "Reentrancy during `_mint` can bypass `depositCap`",
"category": "reentrancy",
"evidence": "`_mint` checks `depositCap` and then calls `_pullAsset` (external call) before updating `totalSupply`/`balanceOf`, so reentrancy sees stale state.",
"severity": "low",
"locations": [
"contracts/src/SparkVault.sol:442",
"contracts/src/SparkVault.sol:450",
"contracts/src/SparkVault.sol:452"
],
"recommendation": "Follow CEI or add a reentrancy guard: update `totalSupply`/`balanceOf` (or track pending deposits) before external token transfers, or block reentrancy on `deposit`/`mint` so the cap check cannot be bypassed.",
"exploit_scenario": "If the underlying asset is ERC777 or otherwise reentrant, an attacker can reenter `deposit`/`mint` during `_pullAsset`. Each reentrant call observes the same pre-mint `totalSupply`, so `totalAssets() + assets <= depositCap` passes repeatedly, allowing deposits that cumulatively exceed the cap within a single transaction."
},
{
"title": "Shares minted without verifying actual assets received",
"category": "other",
"evidence": "`deposit`/`mint` derive shares from `assets` and `_mint` does not check the actual amount received via `_pullAsset`.",
"severity": "info",
"locations": [
"contracts/src/SparkVault.sol:277",
"contracts/src/SparkVault.sol:442",
"contracts/src/SparkVault.sol:465"
],
"recommendation": "Either constrain `asset` to non-fee-on-transfer tokens or compute shares based on the balance delta after `_pullAsset` (and/or revert if the received amount is less than expected).",
"exploit_scenario": "If the configured asset is fee-on-transfer/rebasing, `_mint` mints shares based on the user-supplied `assets` value even when fewer tokens arrive. An attacker can deposit with high transfer fees to overmint shares and dilute other holders."
}
],
"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 0x03c9 0000000c: JUMPI 0000000d: PUSH0 0000000e: CALLDATALOAD 0000000f: PUSH1 0xe0 00000011: SHR 00000012: DUP1 00000013: PUSH4 0x78d3e538 00000018: GT 00000019: PUSH2 0x01f4 0000001c: JUMPI 0000001d: DUP1 0000001e: PUSH4 0xad3cb1cc 00000023: GT 00000024: PUSH2 0x0113 00000027: JUMPI 00000028: DUP1 00000029: PUSH4 0xce96cb77 0000002e: GT 0000002f: PUSH2 0x00a8 00000032: JUMPI 00000033: DUP1 00000034: PUSH4 0xd9d5f4cb 00000039: GT 0000003a: PUSH2 0x0078 0000003d: JUMPI 0000003e: DUP1 0000003f: PUSH4 0xd9d5f4cb 00000044: EQ 00000045: PUSH2 0x0b93 00000048: JUMPI 00000049: DUP1 0000004a: PUSH4 0xdbd5edc7 0000004f: EQ 00000050: PUSH2 0x0ba8 00000053: JUMPI 00000054: DUP1 00000055: PUSH4 0xdd62ed3e 0000005a: EQ 0000005b: PUSH2 0x0bbd 0000005e: JUMPI 0000005f: DUP1 00000060: PUSH4 0xef8b30f7 00000065: EQ 00000066: PUSH2 0x0bf3 00000069: JUMPI 0000006a: DUP1 0000006b: PUSH4 0xf65de94a 00000070: EQ 00000071: PUSH2 0x0c12 00000074: JUMPI 00000075: PUSH0 00000076: PUSH0 00000077: REVERT 00000078: JUMPDEST 00000079: DUP1 0000007a: PUSH4 0xce96cb77 0000007f: EQ 00000080: PUSH2 0x0b17 00000083: JUMPI 00000084: DUP1 00000085: PUSH4 0xd505accf 0000008a: EQ 0000008b: PUSH2 0x0b36 0000008e: JUMPI 0000008f: DUP1 00000090: PUSH4 0xd547741f 00000095: EQ 00000096: PUSH2 0x0b55 00000099: JUMPI 0000009a: DUP1 0000009b: PUSH4 0xd905777e 000000a0: EQ 000000a1: PUSH2 0x0b74 000000a4: JUMPI 000000a5: PUSH0 000000a6: PUSH0 000000a7: REVERT 000000a8: JUMPDEST 000000a9: DUP1 000000aa: PUSH4 0xc63d75b6 000000af: GT 000000b0: PUSH2 0x00e3 000000b3: JUMPI 000000b4: DUP1 000000b5: PUSH4 0xc63d75b6 000000ba: EQ 000000bb: PUSH2 0x0a7c 000000be: JUMPI 000000bf: DUP1 000000c0: PUSH4 0xc6e6f592 000000c5: EQ 000000c6: PUSH2 0x0a9b 000000c9: JUMPI 000000ca: DUP1 000000cb: PUSH4 0xc92aecc4 000000d0: EQ 000000d1: PUSH2 0x0aba 000000d4: JUMPI 000000d5: DUP1 000000d6: PUSH4 0xca15c873 000000db: EQ 000000dc: PUSH2 0x0af8 000000df: JUMPI 000000e0: PUSH0 000000e1: PUSH0 000000e2: REVERT 000000e3: JUMPDEST 000000e4: DUP1 000000e5: PUSH4 0xad3cb1cc 000000ea: EQ 000000eb: PUSH2 0x09ef 000000ee: JUMPI 000000ef: DUP1 000000f0: PUSH4 0xb3d7f6b9 000000f5: EQ 000000f6: PUSH2 0x0a1f 000000f9: JUMPI 000000fa: DUP1 000000fb: PUSH4 0xb460af94 00000100: EQ 00000101: PUSH2 0x0a3e 00000104: JUMPI 00000105: DUP1 00000106: PUSH4 0xba087652 0000010b: EQ 0000010c: PUSH2 0x0a5d 0000010f: JUMPI 00000110: PUSH0 00000111: PUSH0 00000112: REVERT 00000113: JUMPDEST 00000114: DUP1 00000115: PUSH4 0x9b8d6d38 0000011a: GT 0000011b: PUSH2 0x0189 0000011e: JUMPI 0000011f: DUP1 00000120: PUSH4 0xa217fddf 00000125: GT 00000126: PUSH2 0x0159 00000129: JUMPI 0000012a: DUP1 0000012b: PUSH4 0xa217fddf 00000130: EQ 00000131: PUSH2 0x097d 00000134: JUMPI 00000135: DUP1 00000136: PUSH4 0xa3246ad3 0000013b: EQ 0000013c: PUSH2 0x0990 0000013f: JUMPI 00000140: DUP1 00000141: PUSH4 0xa9059cbb 00000146: EQ 00000147: PUSH2 0x09bc 0000014a: JUMPI 0000014b: DUP1 0000014c: PUSH4 0xaaf10f42 00000151: EQ 00000152: PUSH2 0x09db 00000155: JUMPI 00000156: PUSH0 00000157: PUSH0 00000158: REVERT 00000159: JUMPDEST 0000015a: DUP1 0000015b: PUSH4 0x9b8d6d38 00000160: EQ 00000161: PUSH2 0x08f8 00000164: JUMPI 00000165: DUP1 00000166: PUSH4 0x9f678cca 0000016b: EQ 0000016c: PUSH2 0x0917 0000016f: JUMPI 00000170: DUP1 00000171: PUSH4 0x9fd5a6cf 00000176: EQ 00000177: PUSH2 0x092b 0000017a: JUMPI 0000017b: DUP1 0000017c: PUSH4 0xa2011b3f 00000181: EQ 00000182: PUSH2 0x094a 00000185: JUMPI 00000186: PUSH0 00000187: PUSH0 00000188: REVERT 00000189: JUMPDEST 0000018a: DUP1 0000018b: PUSH4 0x91d14854 00000190: GT 00000191: PUSH2 0x01c4 00000194: JUMPI 00000195: DUP1 00000196: PUSH4 0x91d14854 0000019b: EQ 0000019c: PUSH2 0x0892 0000019f: JUMPI 000001a0: DUP1 000001a1: PUSH4 0x925455ca 000001a6: EQ 000001a7: PUSH2 0x08b1 000001aa: JUMPI 000001ab: DUP1 000001ac: PUSH4 0x94bf804d 000001b1: EQ 000001b2: PUSH2 0x08c5 000001b5: JUMPI 000001b6: DUP1 000001b7: PUSH4 0x95d89b41 000001bc: EQ 000001bd: PUSH2 0x08e4 000001c0: JUMPI 000001c1: PUSH0 000001c2: PUSH0 000001c3: REVERT 000001c4: JUMPDEST 000001c5: DUP1 000001c6: PUSH4 0x78d3e538 000001cb: EQ 000001cc: PUSH2 0x080a 000001cf: JUMPI 000001d0: DUP1 000001d1: PUSH4 0x7ecebe00 000001d6: EQ 000001d7: PUSH2 0x0829 000001da: JUMPI 000001db: DUP1 000001dc: PUSH4 0x86651203 000001e1: EQ 000001e2: PUSH2 0x0854 000001e5: JUMPI 000001e6: DUP1 000001e7: PUSH4 0x9010d07c 000001ec: EQ 000001ed: PUSH2 0x0873 000001f0: JUMPI 000001f1: PUSH0 000001f2: PUSH0 000001f3: REVERT 000001f4: JUMPDEST 000001f5: DUP1 000001f6: PUSH4 0x313ce567 000001fb: GT 000001fc: PUSH2 0x02eb 000001ff: JUMPI 00000200: DUP1 00000201: PUSH4 0x4fd9efc4 00000206: GT 00000207: PUSH2 0x0280 0000020a: JUMPI 0000020b: DUP1 0000020c: PUSH4 0x5cc66269 00000211: GT 00000212: PUSH2 0x0250 00000215: JUMPI 00000216: DUP1 00000217: PUSH4 0x5cc66269 0000021c: EQ 0000021d: PUSH2 0x0763 00000220: JUMPI 00000221: DUP1 00000222: PUSH4 0x613d25bb 00000227: EQ 00000228: PUSH2 0x0782 0000022b: JUMPI 0000022c: DUP1 0000022d: PUSH4 0x6e553f65 00000232: EQ 00000233: PUSH2 0x07a1 00000236: JUMPI 00000237: DUP1 00000238: PUSH4 0x70a08231 0000023d: EQ 0000023e: PUSH2 0x07c0 00000241: JUMPI 00000242: DUP1 00000243: PUSH4 0x7497d46c 00000248: EQ 00000249: PUSH2 0x07eb 0000024c: JUMPI 0000024d: PUSH0 0000024e: PUSH0 0000024f: REVERT 00000250: JUMPDEST 00000251: DUP1 00000252: PUSH4 0x4fd9efc4 00000257: EQ 00000258: PUSH2 0x06e6 0000025b: JUMPI 0000025c: DUP1 0000025d: PUSH4 0x52d1902d 00000262: EQ 00000263: PUSH2 0x0705 00000266: JUMPI 00000267: DUP1 00000268: PUSH4 0x54fd4d50 0000026d: EQ 0000026e: PUSH2 0x0719 00000271: JUMPI 00000272: DUP1 00000273: PUSH4 0x552033c4 00000278: EQ 00000279: PUSH2 0x0745 0000027c: JUMPI 0000027d: PUSH0 0000027e: PUSH0 0000027f: REVERT 00000280: JUMPDEST 00000281: DUP1 00000282: PUSH4 0x402d267d 00000287: GT 00000288: PUSH2 0x02bb 0000028b: JUMPI 0000028c: DUP1 0000028d: PUSH4 0x402d267d 00000292: EQ 00000293: PUSH2 0x0681 00000296: JUMPI 00000297: DUP1 00000298: PUSH4 0x4ab65039 0000029d: EQ 0000029e: PUSH2 0x06a0 000002a1: JUMPI 000002a2: DUP1 000002a3: PUSH4 0x4cdad506 000002a8: EQ 000002a9: PUSH2 0x06b4 000002ac: JUMPI 000002ad: DUP1 000002ae: PUSH4 0x4f1ef286 000002b3: EQ 000002b4: PUSH2 0x06d3 000002b7: JUMPI 000002b8: PUSH0 000002b9: PUSH0 000002ba: REVERT 000002bb: JUMPDEST 000002bc: DUP1 000002bd: PUSH4 0x313ce567 000002c2: EQ 000002c3: PUSH2 0x05e7 000002c6: JUMPI 000002c7: DUP1 000002c8: PUSH4 0x3644e515 000002cd: EQ 000002ce: PUSH2 0x0618 000002d1: JUMPI 000002d2: DUP1 000002d3: PUSH4 0x36568abe 000002d8: EQ 000002d9: PUSH2 0x062c 000002dc: JUMPI 000002dd: DUP1 000002de: PUSH4 0x38d52e0f 000002e3: EQ 000002e4: PUSH2 0x064b 000002e7: JUMPI 000002e8: PUSH0 000002e9: PUSH0 000002ea: REVERT 000002eb: JUMPDEST 000002ec: DUP1 000002ed: PUSH4 0x20aba08b 000002f2: GT 000002f3: PUSH2 0x0361 000002f6: JUMPI 000002f7: DUP1 000002f8: PUSH4 0x2c62fa10 000002fd: GT 000002fe: PUSH2 0x0331 00000301: JUMPI 00000302: DUP1 00000303: PUSH4 0x2c62fa10 00000308: EQ 00000309: PUSH2 0x055f 0000030c: JUMPI 0000030d: DUP1 0000030e: PUSH4 0x2ced1b2d 00000313: EQ 00000314: PUSH2 0x057e 00000317: JUMPI 00000318: DUP1 00000319: PUSH4 0x2f2ff15d 0000031e: EQ 0000031f: PUSH2 0x0593 00000322: JUMPI 00000323: DUP1 00000324: PUSH4 0x30adf81f 00000329: EQ 0000032a: PUSH2 0x05b4 0000032d: JUMPI 0000032e: PUSH0 0000032f: PUSH0 00000330: REVERT 00000331: JUMPDEST 00000332: DUP1 00000333: PUSH4 0x20aba08b 00000338: EQ 00000339: PUSH2 0x04cb 0000033c: JUMPI 0000033d: DUP1 0000033e: PUSH4 0x216740a0 00000343: EQ 00000344: PUSH2 0x0502 00000347: JUMPI 00000348: DUP1 00000349: PUSH4 0x23b872dd 0000034e: EQ 0000034f: PUSH2 0x0521 00000352: JUMPI 00000353: DUP1 00000354: PUSH4 0x248a9ca3 00000359: EQ 0000035a: PUSH2 0x0540 0000035d: JUMPI 0000035e: PUSH0 0000035f: PUSH0 00000360: REVERT 00000361: JUMPDEST 00000362: DUP1 00000363: PUSH4 0x095ea7b3 00000368: GT 00000369: PUSH2 0x039c 0000036c: JUMPI 0000036d: DUP1 0000036e: PUSH4 0x095ea7b3 00000373: EQ 00000374: PUSH2 0x0463 00000377: JUMPI 00000378: DUP1 00000379: PUSH4 0x0a28a477 0000037e: EQ 0000037f: PUSH2 0x0482 00000382: JUMPI 00000383: DUP1 00000384: PUSH4 0x18160ddd 00000389: EQ 0000038a: PUSH2 0x04a1 0000038d: JUMPI 0000038e: DUP1 0000038f: PUSH4 0x1e7b14d3 00000394: EQ 00000395: PUSH2 0x04b6 00000398: JUMPI 00000399: PUSH0 0000039a: PUSH0 0000039b: REVERT 0000039c: JUMPDEST 0000039d: DUP1 0000039e: PUSH4 0x01e1d114 000003a3: EQ 000003a4: PUSH2 0x03cd 000003a7: JUMPI 000003a8: DUP1 000003a9: PUSH4 0x01ffc9a7 000003ae: EQ 000003af: PUSH2 0x03f4 000003b2: JUMPI 000003b3: DUP1 000003b4: PUSH4 0x06fdde03 000003b9: EQ 000003ba: PUSH2 0x0423 000003bd: JUMPI 000003be: DUP1 000003bf: PUSH4 0x07a2d13a 000003c4: EQ 000003c5: PUSH2 0x0444 000003c8: JUMPI 000003c9: JUMPDEST 000003ca: PUSH0 000003cb: PUSH0 000003cc: REVERT 000003cd: JUMPDEST 000003ce: CALLVALUE 000003cf: DUP1 000003d0: ISZERO 000003d1: PUSH2 0x03d8 000003d4: JUMPI 000003d5: PUSH0 000003d6: PUSH0 000003d7: REVERT 000003d8: JUMPDEST 000003d9: POP 000003da: PUSH2 0x03e1 000003dd: PUSH2 0x0c32 000003e0: JUMP 000003e1: JUMPDEST 000003e2: PUSH1 0x40 000003e4: MLOAD 000003e5: SWAP1 000003e6: DUP2 000003e7: MSTORE 000003e8: PUSH1 0x20 000003ea: ADD 000003eb: JUMPDEST 000003ec: PUSH1 0x40 000003ee: MLOAD 000003ef: DUP1 000003f0: SWAP2 000003f1: SUB 000003f2: SWAP1 000003f3: RETURN 000003f4: JUMPDEST 000003f5: CALLVALUE 000003f6: DUP1 000003f7: ISZERO 000003f8: PUSH2 0x03ff 000003fb: JUMPI 000003fc: PUSH0 000003fd: PUSH0 000003fe: REVERT 000003ff: JUMPDEST 00000400: POP 00000401: PUSH2 0x0413 00000404: PUSH2 0x040e 00000407: CALLDATASIZE 00000408: PUSH1 0x04 0000040a: PUSH2 0x302d 0000040d: JUMP 0000040e: JUMPDEST 0000040f: PUSH2 0x0c43 00000412: JUMP 00000413: JUMPDEST 00000414: PUSH1 0x40 00000416: MLOAD 00000417: SWAP1 00000418: ISZERO 00000419: ISZERO 0000041a: DUP2 0000041b: MSTORE 0000041c: PUSH1 0x20 0000041e: ADD 0000041f: PUSH2 0x03eb 00000422: JUMP 00000423: JUMPDEST 00000424: CALLVALUE 00000425: DUP1 00000426: ISZERO 00000427: PUSH2 0x042e 0000042a: JUMPI 0000042b: PUSH0 0000042c: PUSH0 0000042d: REVERT 0000042e: JUMPDEST 0000042f: POP 00000430: PUSH2 0x0437 00000433: PUSH2 0x0c6d 00000436: JUMP 00000437: JUMPDEST 00000438: PUSH1 0x40 0000043a: MLOAD 0000043b: PUSH2 0x03eb 0000043e: SWAP2 0000043f: SWAP1 00000440: PUSH2 0x3076 00000443: JUMP 00000444: JUMPDEST 00000445: CALLVALUE 00000446: DUP1 00000447: ISZERO 00000448: PUSH2 0x044f 0000044b: JUMPI 0000044c: PUSH0 0000044d: PUSH0 0000044e: REVERT 0000044f: JUMPDEST 00000450: POP 00000451: PUSH2 0x03e1 00000454: PUSH2 0x045e 00000457: CALLDATASIZE 00000458: PUSH1 0x04 0000045a: PUSH2 0x3088 0000045d: JUMP 0000045e: JUMPDEST 0000045f: PUSH2 0x0cf9 00000462: JUMP 00000463: JUMPDEST 00000464: CALLVALUE 00000465: DUP1 00000466: ISZERO 00000467: PUSH2 0x046e 0000046a: JUMPI 0000046b: PUSH0 0000046c: PUSH0 0000046d: REVERT 0000046e: JUMPDEST 0000046f: POP 00000470: PUSH2 0x0413 00000473: PUSH2 0x047d 00000476: CALLDATASIZE 00000477: PUSH1 0x04 00000479: PUSH2 0x30b5 0000047c: JUMP 0000047d: JUMPDEST 0000047e: PUSH2 0x0d22 00000481: JUMP 00000482: JUMPDEST 00000483: CALLVALUE 00000484: DUP1 00000485: ISZERO 00000486: PUSH2 0x048d 00000489: JUMPI 0000048a: PUSH0 0000048b: PUSH0 0000048c: REVERT 0000048d: JUMPDEST 0000048e: POP 0000048f: PUSH2 0x03e1 00000492: PUSH2 0x049c 00000495: CALLDATASIZE 00000496: PUSH1 0x04 00000498: PUSH2 0x3088 0000049b: JUMP 0000049c: JUMPDEST 0000049d: PUSH2 0x0d8d 000004a0: JUMP 000004a1: JUMPDEST 000004a2: CALLVALUE 000004a3: DUP1 000004a4: ISZERO 000004a5: PUSH2 0x04ac 000004a8: JUMPI 000004a9: PUSH0 000004aa: PUSH0 000004ab: REVERT 000004ac: JUMPDEST 000004ad: POP 000004ae: PUSH2 0x03e1 000004b1: PUSH1 0x08 000004b3: SLOAD 000004b4: DUP2 000004b5: JUMP 000004b6: JUMPDEST 000004b7: CALLVALUE 000004b8: DUP1 000004b9: ISZERO 000004ba: PUSH2 0x04c1 000004bd: JUMPI 000004be: PUSH0 000004bf: PUSH0 000004c0: REVERT 000004c1: JUMPDEST 000004c2: POP 000004c3: PUSH2 0x03e1 000004c6: PUSH1 0x04 000004c8: SLOAD 000004c9: DUP2 000004ca: JUMP 000004cb: JUMPDEST 000004cc: CALLVALUE 000004cd: DUP1 000004ce: ISZERO 000004cf: PUSH2 0x04d6 000004d2: JUMPI 000004d3: PUSH0 000004d4: PUSH0 000004d5: REVERT 000004d6: JUMPDEST 000004d7: POP 000004d8: PUSH1 0x03 000004da: SLOAD 000004db: PUSH2 0x04ea 000004de: SWAP1 000004df: PUSH1 0x01 000004e1: PUSH1 0x01 000004e3: PUSH1 0x40 000004e5: SHL 000004e6: SUB 000004e7: AND 000004e8: DUP2 000004e9: JUMP 000004ea: JUMPDEST 000004eb: PUSH1 0x40 000004ed: MLOAD 000004ee: PUSH1 0x01 000004f0: PUSH1 0x01 000004f2: PUSH1 0x40 000004f4: SHL 000004f5: SUB 000004f6: SWAP1 000004f7: SWAP2 000004f8: AND 000004f9: DUP2 000004fa: MSTORE 000004fb: PUSH1 0x20 000004fd: ADD 000004fe: PUSH2 0x03eb 00000501: JUMP 00000502: JUMPDEST 00000503: CALLVALUE 00000504: DUP1 00000505: ISZERO 00000506: PUSH2 0x050d 00000509: JUMPI 0000050a: PUSH0 0000050b: PUSH0 0000050c: REVERT 0000050d: JUMPDEST 0000050e: POP 0000050f: PUSH2 0x03e1 00000512: PUSH2 0x051c 00000515: CALLDATASIZE 00000516: PUSH1 0x04 00000518: PUSH2 0x30dd 0000051b: JUMP 0000051c: JUMPDEST 0000051d: PUSH2 0x0e43 00000520: JUMP 00000521: JUMPDEST 00000522: CALLVALUE 00000523: DUP1 00000524: ISZERO 00000525: PUSH2 0x052c 00000528: JUMPI 00000529: PUSH0 0000052a: PUSH0 0000052b: REVERT 0000052c: JUMPDEST 0000052d: POP 0000052e: PUSH2 0x0413 00000531: PUSH2 0x053b 00000534: CALLDATASIZE 00000535: PUSH1 0x04 00000537: PUSH2 0x3120 0000053a: JUMP 0000053b: JUMPDEST 0000053c: PUSH2 0x0ea8 0000053f: JUMP 00000540: JUMPDEST 00000541: CALLVALUE 00000542: DUP1 00000543: ISZERO 00000544: PUSH2 0x054b 00000547: JUMPI 00000548: PUSH0 00000549: PUSH0 0000054a: REVERT 0000054b: JUMPDEST 0000054c: POP 0000054d: PUSH2 0x03e1 00000550: PUSH2 0x055a 00000553: CALLDATASIZE 00000554: PUSH1 0x04 00000556: PUSH2 0x3088 00000559: JUMP 0000055a: JUMPDEST 0000055b: PUSH2 0x1004 0000055e: JUMP 0000055f: JUMPDEST 00000560: CALLVALUE 00000561: DUP1 00000562: ISZERO 00000563: PUSH2 0x056a 00000566: JUMPI 00000567: PUSH0 00000568: PUSH0 00000569: REVERT 0000056a: JUMPDEST 0000056b: POP 0000056c: PUSH2 0x03e1 0000056f: PUSH2 0x0579 00000572: CALLDATASIZE 00000573: PUSH1 0x04 00000575: PUSH2 0x315a 00000578: JUMP 00000579: JUMPDEST 0000057a: PUSH2 0x1024 0000057d: JUMP 0000057e: JUMPDEST 0000057f: CALLVALUE 00000580: DUP1 00000581: ISZERO 00000582: PUSH2 0x0589 00000585: JUMPI 00000586: PUSH0 00000587: PUSH0 00000588: REVERT 00000589: JUMPDEST 0000058a: POP 0000058b: PUSH2 0x03e1 0000058e: PUSH1 0x05 00000590: SLOAD 00000591: DUP2 00000592: JUMP 00000593: JUMPDEST 00000594: CALLVALUE 00000595: DUP1 00000596: ISZERO 00000597: PUSH2 0x059e 0000059a: JUMPI 0000059b: PUSH0 0000059c: PUSH0 0000059d: REVERT 0000059e: JUMPDEST 0000059f: POP 000005a0: PUSH2 0x05b2 000005a3: PUSH2 0x05ad 000005a6: CALLDATASIZE 000005a7: PUSH1 0x04 000005a9: PUSH2 0x3173 000005ac: JUMP 000005ad: JUMPDEST 000005ae: PUSH2 0x1045 000005b1: JUMP 000005b2: JUMPDEST 000005b3: STOP 000005b4: JUMPDEST 000005b5: CALLVALUE 000005b6: DUP1 000005b7: ISZERO 000005b8: PUSH2 0x05bf 000005bb: JUMPI 000005bc: PUSH0 000005bd: PUSH0 000005be: REVERT 000005bf: JUMPDEST 000005c0: POP 000005c1: PUSH2 0x03e1 000005c4: PUSH32 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9 000005e5: DUP2 000005e6: JUMP 000005e7: JUMPDEST 000005e8: CALLVALUE 000005e9: DUP1 000005ea: ISZERO 000005eb: PUSH2 0x05f2 000005ee: JUMPI 000005ef: PUSH0 000005f0: PUSH0 000005f1: REVERT 000005f2: JUMPDEST 000005f3: POP 000005f4: PUSH0 000005f5: SLOAD 000005f6: PUSH2 0x0606 000005f9: SWAP1 000005fa: PUSH1 0x01 000005fc: PUSH1 0xa0 000005fe: SHL 000005ff: SWAP1 00000600: DIV 00000601: PUSH1 0xff 00000603: AND 00000604: DUP2 00000605: JUMP 00000606: JUMPDEST 00000607: PUSH1 0x40 00000609: MLOAD 0000060a: PUSH1 0xff 0000060c: SWAP1 0000060d: SWAP2 0000060e: AND 0000060f: DUP2 00000610: MSTORE 00000611: PUSH1 0x20 00000613: ADD 00000614: PUSH2 0x03eb 00000617: JUMP 00000618: JUMPDEST 00000619: CALLVALUE 0000061a: DUP1 0000061b: ISZERO 0000061c: PUSH2 0x0623 0000061f: JUMPI 00000620: PUSH0 00000621: PUSH0 00000622: REVERT 00000623: JUMPDEST 00000624: POP 00000625: PUSH2 0x03e1 00000628: PUSH2 0x1067 0000062b: JUMP 0000062c: JUMPDEST 0000062d: CALLVALUE 0000062e: DUP1 0000062f: ISZERO 00000630: PUSH2 0x0637 00000633: JUMPI 00000634: PUSH0 00000635: PUSH0 00000636: REVERT 00000637: JUMPDEST 00000638: POP 00000639: PUSH2 0x05b2 0000063c: PUSH2 0x0646 0000063f: CALLDATASIZE 00000640: PUSH1 0x04 00000642: PUSH2 0x3173 00000645: JUMP 00000646: JUMPDEST 00000647: PUSH2 0x1071 0000064a: JUMP 0000064b: JUMPDEST 0000064c: CALLVALUE 0000064d: DUP1 0000064e: ISZERO 0000064f: PUSH2 0x0656 00000652: JUMPI 00000653: PUSH0 00000654: PUSH0 00000655: REVERT 00000656: JUMPDEST 00000657: POP 00000658: PUSH0 00000659: SLOAD 0000065a: PUSH2 0x0669 0000065d: SWAP1 0000065e: PUSH1 0x01 00000660: PUSH1 0x01 00000662: PUSH1 0xa0 00000664: SHL 00000665: SUB 00000666: AND 00000667: DUP2 00000668: JUMP 00000669: JUMPDEST 0000066a: PUSH1 0x40 0000066c: MLOAD 0000066d: PUSH1 0x01 0000066f: PUSH1 0x01 00000671: PUSH1 0xa0 00000673: SHL 00000674: SUB 00000675: SWAP1 00000676: SWAP2 00000677: AND 00000678: DUP2 00000679: MSTORE 0000067a: PUSH1 0x20 0000067c: ADD 0000067d: PUSH2 0x03eb 00000680: JUMP 00000681: JUMPDEST 00000682: CALLVALUE 00000683: DUP1 00000684: ISZERO 00000685: PUSH2 0x068c 00000688: JUMPI 00000689: PUSH0 0000068a: PUSH0 0000068b: REVERT 0000068c: JUMPDEST 0000068d: POP 0000068e: PUSH2 0x03e1 00000691: PUSH2 0x069b 00000694: CALLDATASIZE 00000695: PUSH1 0x04 00000697: PUSH2 0x315a 0000069a: JUMP 0000069b: JUMPDEST 0000069c: PUSH2 0x10a9 0000069f: JUMP 000006a0: JUMPDEST 000006a1: CALLVALUE 000006a2: DUP1 000006a3: ISZERO 000006a4: PUSH2 0x06ab 000006a7: JUMPI 000006a8: PUSH0 000006a9: PUSH0 000006aa: REVERT 000006ab: JUMPDEST 000006ac: POP 000006ad: PUSH2 0x03e1 000006b0: PUSH2 0x10da 000006b3: JUMP 000006b4: JUMPDEST 000006b5: CALLVALUE 000006b6: DUP1 000006b7: ISZERO 000006b8: PUSH2 0x06bf 000006bb: JUMPI 000006bc: PUSH0 000006bd: PUSH0 000006be: REVERT 000006bf: JUMPDEST 000006c0: POP 000006c1: PUSH2 0x03e1 000006c4: PUSH2 0x06ce 000006c7: CALLDATASIZE 000006c8: PUSH1 0x04 000006ca: PUSH2 0x3088 000006cd: JUMP 000006ce: JUMPDEST 000006cf: PUSH2 0x1159 000006d2: JUMP 000006d3: JUMPDEST 000006d4: PUSH2 0x05b2 000006d7: PUSH2 0x06e1 000006da: CALLDATASIZE 000006db: PUSH1 0x04 000006dd: PUSH2 0x3240 000006e0: JUMP 000006e1: JUMPDEST 000006e2: PUSH2 0x11f4 000006e5: JUMP 000006e6: JUMPDEST 000006e7: CALLVALUE 000006e8: DUP1 000006e9: ISZERO 000006ea: PUSH2 0x06f1 000006ed: JUMPI 000006ee: PUSH0 000006ef: PUSH0 000006f0: REVERT 000006f1: JUMPDEST 000006f2: POP 000006f3: PUSH2 0x05b2 000006f6: PUSH2 0x0700 000006f9: CALLDATASIZE 000006fa: PUSH1 0x04 000006fc: PUSH2 0x3088 000006ff: JUMP 00000700: JUMPDEST 00000701: PUSH2 0x1213 00000704: JUMP 00000705: JUMPDEST 00000706: CALLVALUE 00000707: DUP1 00000708: ISZERO 00000709: PUSH2 0x0710 0000070c: JUMPI 0000070d: PUSH0 0000070e: PUSH0 0000070f: REVERT 00000710: JUMPDEST 00000711: POP 00000712: PUSH2 0x03e1 00000715: PUSH2 0x126d 00000718: JUMP 00000719: JUMPDEST 0000071a: CALLVALUE 0000071b: DUP1 0000071c: ISZERO 0000071d: PUSH2 0x0724 00000720: JUMPI 00000721: PUSH0 00000722: PUSH0 00000723: REVERT 00000724: JUMPDEST 00000725: POP 00000726: PUSH2 0x0437 00000729: PUSH1 0x40 0000072b: MLOAD 0000072c: DUP1 0000072d: PUSH1 0x40 0000072f: ADD 00000730: PUSH1 0x40 00000732: MSTORE 00000733: DUP1 00000734: PUSH1 0x01 00000736: DUP2 00000737: MSTORE 00000738: PUSH1 0x20 0000073a: ADD 0000073b: PUSH1 0x31 0000073d: PUSH1 0xf8 0000073f: SHL 00000740: DUP2 00000741: MSTORE 00000742: POP 00000743: DUP2 00000744: JUMP 00000745: JUMPDEST 00000746: CALLVALUE 00000747: DUP1 00000748: ISZERO 00000749: PUSH2 0x0750 0000074c: JUMPI 0000074d: PUSH0 0000074e: PUSH0 0000074f: REVERT 00000750: JUMPDEST 00000751: POP 00000752: PUSH2 0x03e1 00000755: PUSH8 0x6765c793fa10079d 0000075e: PUSH1 0x1b 00000760: SHL 00000761: DUP2 00000762: JUMP 00000763: JUMPDEST 00000764: CALLVALUE 00000765: DUP1 00000766: ISZERO 00000767: PUSH2 0x076e 0000076a: JUMPI 0000076b: PUSH0 0000076c: PUSH0 0000076d: REVERT 0000076e: JUMPDEST 0000076f: POP 00000770: PUSH2 0x03e1 00000773: PUSH12 0x033b2e3dd0d78f60556d6583 00000780: DUP2 00000781: JUMP 00000782: JUMPDEST 00000783: CALLVALUE 00000784: DUP1 00000785: ISZERO 00000786: PUSH2 0x078d 00000789: JUMPI 0000078a: PUSH0 0000078b: PUSH0 0000078c: REVERT 0000078d: JUMPDEST 0000078e: POP 0000078f: PUSH2 0x05b2 00000792: PUSH2 0x079c 00000795: CALLDATASIZE 00000796: PUSH1 0x04 00000798: PUSH2 0x328a 0000079b: JUMP 0000079c: JUMPDEST 0000079d: PUSH2 0x1288 000007a0: JUMP 000007a1: JUMPDEST 000007a2: CALLVALUE 000007a3: DUP1 000007a4: ISZERO 000007a5: PUSH2 0x07ac 000007a8: JUMPI 000007a9: PUSH0 000007aa: PUSH0 000007ab: REVERT 000007ac: JUMPDEST 000007ad: POP 000007ae: PUSH2 0x03e1 000007b1: PUSH2 0x07bb 000007b4: CALLDATASIZE 000007b5: PUSH1 0x04 000007b7: PUSH2 0x3173 000007ba: JUMP 000007bb: JUMPDEST 000007bc: PUSH2 0x1469 000007bf: JUMP 000007c0: JUMPDEST 000007c1: CALLVALUE 000007c2: DUP1 000007c3: ISZERO 000007c4: PUSH2 0x07cb 000007c7: JUMPI 000007c8: PUSH0 000007c9: PUSH0 000007ca: REVERT 000007cb: JUMPDEST 000007cc: POP 000007cd: PUSH2 0x03e1 000007d0: PUSH2 0x07da 000007d3: CALLDATASIZE 000007d4: PUSH1 0x04 000007d6: PUSH2 0x315a 000007d9: JUMP 000007da: JUMPDEST 000007db: PUSH1 0x09 000007dd: PUSH1 0x20 000007df: MSTORE 000007e0: PUSH0 000007e1: SWAP1 000007e2: DUP2 000007e3: MSTORE 000007e4: PUSH1 0x40 000007e6: SWAP1 000007e7: KECCAK256 000007e8: SLOAD 000007e9: DUP2 000007ea: JUMP 000007eb: JUMPDEST 000007ec: CALLVALUE 000007ed: DUP1 000007ee: ISZERO 000007ef: PUSH2 0x07f6 000007f2: JUMPI 000007f3: PUSH0 000007f4: PUSH0 000007f5: REVERT 000007f6: JUMPDEST 000007f7: POP 000007f8: PUSH2 0x05b2 000007fb: PUSH2 0x0805 000007fe: CALLDATASIZE 000007ff: PUSH1 0x04 00000801: PUSH2 0x3088 00000804: JUMP 00000805: JUMPDEST 00000806: PUSH2 0x149e 00000809: JUMP 0000080a: JUMPDEST 0000080b: CALLVALUE 0000080c: DUP1 0000080d: ISZERO 0000080e: PUSH2 0x0815 00000811: JUMPI 00000812: PUSH0 00000813: PUSH0 00000814: REVERT 00000815: JUMPDEST 00000816: POP 00000817: PUSH2 0x05b2 0000081a: PUSH2 0x0824 0000081d: CALLDATASIZE 0000081e: PUSH1 0x04 00000820: PUSH2 0x330d 00000823: JUMP 00000824: JUMPDEST 00000825: PUSH2 0x15b0 00000828: JUMP 00000829: JUMPDEST 0000082a: CALLVALUE 0000082b: DUP1 0000082c: ISZERO 0000082d: PUSH2 0x0834 00000830: JUMPI 00000831: PUSH0 00000832: PUSH0 00000833: REVERT 00000834: JUMPDEST 00000835: POP 00000836: PUSH2 0x03e1 00000839: PUSH2 0x0843 0000083c: CALLDATASIZE 0000083d: PUSH1 0x04 0000083f: PUSH2 0x315a 00000842: JUMP 00000843: JUMPDEST 00000844: PUSH1 0x0a 00000846: PUSH1 0x20 00000848: MSTORE 00000849: PUSH0 0000084a: SWAP1 0000084b: DUP2 0000084c: MSTORE 0000084d: PUSH1 0x40 0000084f: SWAP1 00000850: KECCAK256 00000851: SLOAD 00000852: DUP2 00000853: JUMP 00000854: JUMPDEST 00000855: CALLVALUE 00000856: DUP1 00000857: ISZERO 00000858: PUSH2 0x085f 0000085b: JUMPI 0000085c: PUSH0 0000085d: PUSH0 0000085e: REVERT 0000085f: JUMPDEST 00000860: POP 00000861: PUSH2 0x05b2 00000864: PUSH2 0x086e 00000867: CALLDATASIZE 00000868: PUSH1 0x04 0000086a: PUSH2 0x3088 0000086d: JUMP 0000086e: JUMPDEST 0000086f: PUSH2 0x170e 00000872: JUMP 00000873: JUMPDEST 00000874: CALLVALUE 00000875: DUP1 00000876: ISZERO 00000877: PUSH2 0x087e 0000087a: JUMPI 0000087b: PUSH0 0000087c: PUSH0 0000087d: REVERT 0000087e: JUMPDEST 0000087f: POP 00000880: PUSH2 0x0669 00000883: PUSH2 0x088d 00000886: CALLDATASIZE 00000887: PUSH1 0x04 00000889: PUSH2 0x330d 0000088c: JUMP 0000088d: JUMPDEST 0000088e: PUSH2 0x175a 00000891: JUMP 00000892: JUMPDEST 00000893: CALLVALUE 00000894: DUP1 00000895: ISZERO 00000896: PUSH2 0x089d 00000899: JUMPI 0000089a: PUSH0 0000089b: PUSH0 0000089c: REVERT 0000089d: JUMPDEST 0000089e: POP 0000089f: PUSH2 0x0413 000008a2: PUSH2 0x08ac 000008a5: CALLDATASIZE 000008a6: PUSH1 0x04 000008a8: PUSH2 0x3173 000008ab: JUMP 000008ac: JUMPDEST 000008ad: PUSH2 0x177f 000008b0: JUMP 000008b1: JUMPDEST 000008b2: CALLVALUE 000008b3: DUP1 000008b4: ISZERO 000008b5: PUSH2 0x08bc 000008b8: JUMPI 000008b9: PUSH0 000008ba: PUSH0 000008bb: REVERT 000008bc: JUMPDEST 000008bd: POP 000008be: PUSH2 0x03e1 000008c1: PUSH2 0x17b5 000008c4: JUMP 000008c5: JUMPDEST 000008c6: CALLVALUE 000008c7: DUP1 000008c8: ISZERO 000008c9: PUSH2 0x08d0 000008cc: JUMPI 000008cd: PUSH0 000008ce: PUSH0 000008cf: REVERT 000008d0: JUMPDEST 000008d1: POP 000008d2: PUSH2 0x03e1 000008d5: PUSH2 0x08df 000008d8: CALLDATASIZE 000008d9: PUSH1 0x04 000008db: PUSH2 0x3173 000008de: JUMP 000008df: JUMPDEST 000008e0: PUSH2 0x184b 000008e3: JUMP 000008e4: JUMPDEST 000008e5: CALLVALUE 000008e6: DUP1 000008e7: ISZERO 000008e8: PUSH2 0x08ef 000008eb: JUMPI 000008ec: PUSH0 000008ed: PUSH0 000008ee: REVERT 000008ef: JUMPDEST 000008f0: POP 000008f1: PUSH2 0x0437 000008f4: PUSH2 0x187f 000008f7: JUMP 000008f8: JUMPDEST 000008f9: CALLVALUE 000008fa: DUP1 000008fb: ISZERO 000008fc: PUSH2 0x0903 000008ff: JUMPI 00000900: PUSH0 00000901: PUSH0 00000902: REVERT 00000903: JUMPDEST 00000904: POP 00000905: PUSH2 0x03e1 00000908: PUSH2 0x0912 0000090b: CALLDATASIZE 0000090c: PUSH1 0x04 0000090e: PUSH2 0x30dd 00000911: JUMP 00000912: JUMPDEST 00000913: PUSH2 0x188c 00000916: JUMP 00000917: JUMPDEST 00000918: CALLVALUE 00000919: DUP1 0000091a: ISZERO 0000091b: PUSH2 0x0922 0000091e: JUMPI 0000091f: PUSH0 00000920: PUSH0 00000921: REVERT 00000922: JUMPDEST 00000923: POP 00000924: PUSH2 0x03e1 00000927: PUSH2 0x18e2 0000092a: JUMP 0000092b: JUMPDEST 0000092c: CALLVALUE 0000092d: DUP1 0000092e: ISZERO 0000092f: PUSH2 0x0936 00000932: JUMPI 00000933: PUSH0 00000934: PUSH0 00000935: REVERT 00000936: JUMPDEST 00000937: POP 00000938: PUSH2 0x05b2 0000093b: PUSH2 0x0945 0000093e: CALLDATASIZE 0000093f: PUSH1 0x04 00000941: PUSH2 0x332d 00000944: JUMP 00000945: JUMPDEST 00000946: PUSH2 0x1a02 00000949: JUMP 0000094a: JUMPDEST 0000094b: CALLVALUE 0000094c: DUP1 0000094d: ISZERO 0000094e: PUSH2 0x0955 00000951: JUMPI 00000952: PUSH0 00000953: PUSH0 00000954: REVERT 00000955: JUMPDEST 00000956: POP 00000957: PUSH2 0x03e1 0000095a: PUSH32 0x61c92169ef077349011ff0b1383c894d86c5f0b41d986366b58a6cf31e93beda 0000097b: DUP2 0000097c: JUMP 0000097d: JUMPDEST 0000097e: CALLVALUE 0000097f: DUP1 00000980: ISZERO 00000981: PUSH2 0x0988 00000984: JUMPI 00000985: PUSH0 00000986: PUSH0 00000987: REVERT 00000988: JUMPDEST 00000989: POP 0000098a: PUSH2 0x03e1 0000098d: PUSH0 0000098e: DUP2 0000098f: JUMP 00000990: JUMPDEST 00000991: CALLVALUE 00000992: DUP1 00000993: ISZERO 00000994: PUSH2 0x099b 00000997: JUMPI 00000998: PUSH0 00000999: PUSH0 0000099a: REVERT 0000099b: JUMPDEST 0000099c: POP 0000099d: PUSH2 0x09af 000009a0: PUSH2 0x09aa 000009a3: CALLDATASIZE 000009a4: PUSH1 0x04 000009a6: PUSH2 0x3088 000009a9: JUMP 000009aa: JUMPDEST 000009ab: PUSH2 0x1c3e 000009ae: JUMP 000009af: JUMPDEST 000009b0: PUSH1 0x40 000009b2: MLOAD 000009b3: PUSH2 0x03eb 000009b6: SWAP2 000009b7: SWAP1 000009b8: PUSH2 0x3399 000009bb: JUMP 000009bc: JUMPDEST 000009bd: CALLVALUE 000009be: DUP1 000009bf: ISZERO 000009c0: PUSH2 0x09c7 000009c3: JUMPI 000009c4: PUSH0 000009c5: PUSH0 000009c6: REVERT 000009c7: JUMPDEST 000009c8: POP 000009c9: PUSH2 0x0413 000009cc: PUSH2 0x09d6 000009cf: CALLDATASIZE 000009d0: PUSH1 0x04 000009d2: PUSH2 0x30b5 000009d5: JUMP 000009d6: JUMPDEST 000009d7: PUSH2 0x1c67 000009da: JUMP 000009db: JUMPDEST 000009dc: CALLVALUE 000009dd: DUP1 000009de: ISZERO 000009df: PUSH2 0x09e6 000009e2: JUMPI 000009e3: PUSH0 000009e4: PUSH0 000009e5: REVERT 000009e6: JUMPDEST 000009e7: POP 000009e8: PUSH2 0x0669 000009eb: PUSH2 0x1d2a 000009ee: JUMP 000009ef: JUMPDEST 000009f0: CALLVALUE 000009f1: DUP1 000009f2: ISZERO 000009f3: PUSH2 0x09fa 000009f6: JUMPI 000009f7: PUSH0 000009f8: PUSH0 000009f9: REVERT 000009fa: JUMPDEST 000009fb: POP 000009fc: PUSH2 0x0437 000009ff: PUSH1 0x40 00000a01: MLOAD 00000a02: DUP1 00000a03: PUSH1 0x40 00000a05: ADD 00000a06: PUSH1 0x40 00000a08: MSTORE 00000a09: DUP1 00000a0a: PUSH1 0x05 00000a0c: DUP2 00000a0d: MSTORE 00000a0e: PUSH1 0x20 00000a10: ADD 00000a11: PUSH5 0x0352e302e3 00000a17: PUSH1 0xdc 00000a19: SHL 00000a1a: DUP2 00000a1b: MSTORE 00000a1c: POP 00000a1d: DUP2 00000a1e: JUMP 00000a1f: JUMPDEST 00000a20: CALLVALUE 00000a21: DUP1 00000a22: ISZERO 00000a23: PUSH2 0x0a2a 00000a26: JUMPI 00000a27: PUSH0 00000a28: PUSH0 00000a29: REVERT 00000a2a: JUMPDEST 00000a2b: POP 00000a2c: PUSH2 0x03e1 00000a2f: PUSH2 0x0a39 00000a32: CALLDATASIZE 00000a33: PUSH1 0x04 00000a35: PUSH2 0x3088 00000a38: JUMP 00000a39: JUMPDEST 00000a3a: PUSH2 0x1d49 00000a3d: JUMP 00000a3e: JUMPDEST 00000a3f: CALLVALUE 00000a40: DUP1 00000a41: ISZERO 00000a42: PUSH2 0x0a49 00000a45: JUMPI 00000a46: PUSH0 00000a47: PUSH0 00000a48: REVERT 00000a49: JUMPDEST 00000a4a: POP 00000a4b: PUSH2 0x03e1 00000a4e: PUSH2 0x0a58 00000a51: CALLDATASIZE 00000a52: PUSH1 0x04 00000a54: PUSH2 0x33e4 00000a57: JUMP 00000a58: JUMPDEST 00000a59: PUSH2 0x1d5f 00000a5c: JUMP 00000a5d: JUMPDEST 00000a5e: CALLVALUE 00000a5f: DUP1 00000a60: ISZERO 00000a61: PUSH2 0x0a68 00000a64: JUMPI 00000a65: PUSH0 00000a66: PUSH0 00000a67: REVERT 00000a68: JUMPDEST 00000a69: POP 00000a6a: PUSH2 0x03e1 00000a6d: PUSH2 0x0a77 00000a70: CALLDATASIZE 00000a71: PUSH1 0x04 00000a73: PUSH2 0x33e4 00000a76: JUMP 00000a77: JUMPDEST 00000a78: PUSH2 0x1d8e 00000a7b: JUMP 00000a7c: JUMPDEST 00000a7d: CALLVALUE 00000a7e: DUP1 00000a7f: ISZERO 00000a80: PUSH2 0x0a87 00000a83: JUMPI 00000a84: PUSH0 00000a85: PUSH0 00000a86: REVERT 00000a87: JUMPDEST 00000a88: POP 00000a89: PUSH2 0x03e1 00000a8c: PUSH2 0x0a96 00000a8f: CALLDATASIZE 00000a90: PUSH1 0x04 00000a92: PUSH2 0x315a 00000a95: JUMP 00000a96: JUMPDEST 00000a97: PUSH2 0x1dc5 00000a9a: JUMP 00000a9b: JUMPDEST 00000a9c: CALLVALUE 00000a9d: DUP1 00000a9e: ISZERO 00000a9f: PUSH2 0x0aa6 00000aa2: JUMPI 00000aa3: PUSH0 00000aa4: PUSH0 00000aa5: REVERT 00000aa6: JUMPDEST 00000aa7: POP 00000aa8: PUSH2 0x03e1 00000aab: PUSH2 0x0ab5 00000aae: CALLDATASIZE 00000aaf: PUSH1 0x04 00000ab1: PUSH2 0x3088 00000ab4: JUMP 00000ab5: JUMPDEST 00000ab6: PUSH2 0x1e35 00000ab9: JUMP 00000aba: JUMPDEST 00000abb: CALLVALUE 00000abc: DUP1 00000abd: ISZERO 00000abe: PUSH2 0x0ac5 00000ac1: JUMPI 00000ac2: PUSH0 00000ac3: PUSH0 00000ac4: REVERT 00000ac5: JUMPDEST 00000ac6: POP 00000ac7: PUSH1 0x03 00000ac9: SLOAD 00000aca: PUSH2 0x0ae0 00000acd: SWAP1 00000ace: PUSH1 0x01 00000ad0: PUSH1 0x40 00000ad2: SHL 00000ad3: SWAP1 00000ad4: DIV 00000ad5: PUSH1 0x01 00000ad7: PUSH1 0x01 00000ad9: PUSH1 0xc0 00000adb: SHL 00000adc: SUB 00000add: AND 00000ade: DUP2 00000adf: JUMP 00000ae0: JUMPDEST 00000ae1: PUSH1 0x40 00000ae3: MLOAD 00000ae4: PUSH1 0x01 00000ae6: PUSH1 0x01 00000ae8: PUSH1 0xc0 00000aea: SHL 00000aeb: SUB 00000aec: SWAP1 00000aed: SWAP2 00000aee: AND 00000aef: DUP2 00000af0: MSTORE 00000af1: PUSH1 0x20 00000af3: ADD 00000af4: PUSH2 0x03eb 00000af7: JUMP 00000af8: JUMPDEST 00000af9: CALLVALUE 00000afa: DUP1 00000afb: ISZERO 00000afc: PUSH2 0x0b03 00000aff: JUMPI 00000b00: PUSH0 00000b01: PUSH0 00000b02: REVERT 00000b03: JUMPDEST 00000b04: POP 00000b05: PUSH2 0x03e1 00000b08: PUSH2 0x0b12 00000b0b: CALLDATASIZE 00000b0c: PUSH1 0x04 00000b0e: PUSH2 0x3088 00000b11: JUMP 00000b12: JUMPDEST 00000b13: PUSH2 0x1e53 00000b16: JUMP 00000b17: JUMPDEST 00000b18: CALLVALUE 00000b19: DUP1 00000b1a: ISZERO 00000b1b: PUSH2 0x0b22 00000b1e: JUMPI 00000b1f: PUSH0 00000b20: PUSH0 00000b21: REVERT 00000b22: JUMPDEST 00000b23: POP 00000b24: PUSH2 0x03e1 00000b27: PUSH2 0x0b31 00000b2a: CALLDATASIZE 00000b2b: PUSH1 0x04 00000b2d: PUSH2 0x315a 00000b30: JUMP 00000b31: JUMPDEST 00000b32: PUSH2 0x1e77 00000b35: JUMP 00000b36: JUMPDEST 00000b37: CALLVALUE 00000b38: DUP1 00000b39: ISZERO 00000b3a: PUSH2 0x0b41 00000b3d: JUMPI 00000b3e: PUSH0 00000b3f: PUSH0 00000b40: REVERT 00000b41: JUMPDEST 00000b42: POP 00000b43: PUSH2 0x05b2 00000b46: PUSH2 0x0b50 00000b49: CALLDATASIZE 00000b4a: PUSH1 0x04 00000b4c: PUSH2 0x342b 00000b4f: JUMP 00000b50: JUMPDEST 00000b51: PUSH2 0x1efc 00000b54: JUMP 00000b55: JUMPDEST 00000b56: CALLVALUE 00000b57: DUP1 00000b58: ISZERO 00000b59: PUSH2 0x0b60 00000b5c: JUMPI 00000b5d: PUSH0 00000b5e: PUSH0 00000b5f: REVERT 00000b60: JUMPDEST 00000b61: POP 00000b62: PUSH2 0x05b2 00000b65: PUSH2 0x0b6f 00000b68: CALLDATASIZE 00000b69: PUSH1 0x04 00000b6b: PUSH2 0x3173 00000b6e: JUMP 00000b6f: JUMPDEST 00000b70: PUSH2 0x1f53 00000b73: JUMP 00000b74: JUMPDEST 00000b75: CALLVALUE 00000b76: DUP1 00000b77: ISZERO 00000b78: PUSH2 0x0b7f 00000b7b: JUMPI 00000b7c: PUSH0 00000b7d: PUSH0 00000b7e: REVERT 00000b7f: JUMPDEST 00000b80: POP 00000b81: PUSH2 0x03e1 00000b84: PUSH2 0x0b8e 00000b87: CALLDATASIZE 00000b88: PUSH1 0x04 00000b8a: PUSH2 0x315a 00000b8d: JUMP 00000b8e: JUMPDEST 00000b8f: PUSH2 0x1f6f 00000b92: JUMP 00000b93: JUMPDEST 00000b94: CALLVALUE 00000b95: DUP1 00000b96: ISZERO 00000b97: PUSH2 0x0b9e 00000b9a: JUMPI 00000b9b: PUSH0 00000b9c: PUSH0 00000b9d: REVERT 00000b9e: JUMPDEST 00000b9f: POP 00000ba0: PUSH2 0x03e1 00000ba3: PUSH1 0x06 00000ba5: SLOAD 00000ba6: DUP2 00000ba7: JUMP 00000ba8: JUMPDEST 00000ba9: CALLVALUE 00000baa: DUP1 00000bab: ISZERO 00000bac: PUSH2 0x0bb3 00000baf: JUMPI 00000bb0: PUSH0 00000bb1: PUSH0 00000bb2: REVERT 00000bb3: JUMPDEST 00000bb4: POP 00000bb5: PUSH2 0x03e1 00000bb8: PUSH1 0x07 00000bba: SLOAD 00000bbb: DUP2 00000bbc: JUMP 00000bbd: JUMPDEST 00000bbe: CALLVALUE 00000bbf: DUP1 00000bc0: ISZERO 00000bc1: PUSH2 0x0bc8 00000bc4: JUMPI 00000bc5: PUSH0 00000bc6: PUSH0 00000bc7: REVERT 00000bc8: JUMPDEST 00000bc9: POP 00000bca: PUSH2 0x03e1 00000bcd: PUSH2 0x0bd7 00000bd0: CALLDATASIZE 00000bd1: PUSH1 0x04 00000bd3: PUSH2 0x3493 00000bd6: JUMP 00000bd7: JUMPDEST 00000bd8: PUSH1 0x0b 00000bda: PUSH1 0x20 00000bdc: SWAP1 00000bdd: DUP2 00000bde: MSTORE 00000bdf: PUSH0 00000be0: SWAP3 00000be1: DUP4 00000be2: MSTORE 00000be3: PUSH1 0x40 00000be5: DUP1 00000be6: DUP5 00000be7: KECCAK256 00000be8: SWAP1 00000be9: SWAP2 00000bea: MSTORE 00000beb: SWAP1 00000bec: DUP3 00000bed: MSTORE 00000bee: SWAP1 00000bef: KECCAK256 00000bf0: SLOAD 00000bf1: DUP2 00000bf2: JUMP 00000bf3: JUMPDEST 00000bf4: CALLVALUE 00000bf5: DUP1 00000bf6: ISZERO 00000bf7: PUSH2 0x0bfe 00000bfa: JUMPI 00000bfb: PUSH0 00000bfc: PUSH0 00000bfd: REVERT 00000bfe: JUMPDEST 00000bff: POP 00000c00: PUSH2 0x03e1 00000c03: PUSH2 0x0c0d 00000c06: CALLDATASIZE 00000c07: PUSH1 0x04 00000c09: PUSH2 0x3088 00000c0c: JUMP 00000c0d: JUMPDEST 00000c0e: PUSH2 0x2029 00000c11: JUMP 00000c12: JUMPDEST 00000c13: CALLVALUE 00000c14: DUP1 00000c15: ISZERO 00000c16: PUSH2 0x0c1d 00000c19: JUMPI 00000c1a: PUSH0 00000c1b: PUSH0 00000c1c: REVERT 00000c1d: JUMPDEST 00000c1e: POP 00000c1f: PUSH2 0x03e1 00000c22: PUSH0 00000c23: MLOAD 00000c24: PUSH1 0x20 00000c26: PUSH2 0x3901 00000c29: PUSH0 00000c2a: CODECOPY 00000c2b: PUSH0 00000c2c: MLOAD 00000c2d: SWAP1 00000c2e: PUSH0 00000c2f: MSTORE 00000c30: DUP2 00000c31: JUMP 00000c32: JUMPDEST 00000c33: PUSH0 00000c34: PUSH2 0x0c3e 00000c37: PUSH1 0x08 00000c39: SLOAD 00000c3a: PUSH2 0x0cf9 00000c3d: JUMP 00000c3e: JUMPDEST 00000c3f: SWAP1 00000c40: POP 00000c41: SWAP1 00000c42: JUMP 00000c43: JUMPDEST 00000c44: PUSH0 00000c45: PUSH1 0x01 00000c47: PUSH1 0x01 00000c49: PUSH1 0xe0 00000c4b: SHL 00000c4c: SUB 00000c4d: NOT 00000c4e: DUP3 00000c4f: AND 00000c50: PUSH4 0x5a05180f 00000c55: PUSH1 0xe0 00000c57: SHL 00000c58: EQ 00000c59: DUP1 00000c5a: PUSH2 0x0c67 00000c5d: JUMPI 00000c5e: POP 00000c5f: PUSH2 0x0c67 00000c62: DUP3 00000c63: PUSH2 0x2033 00000c66: JUMP 00000c67: JUMPDEST 00000c68: SWAP3 00000c69: SWAP2 00000c6a: POP 00000c6b: POP 00000c6c: JUMP 00000c6d: JUMPDEST 00000c6e: PUSH1 0x01 00000c70: DUP1 00000c71: SLOAD 00000c72: PUSH2 0x0c7a 00000c75: SWAP1 00000c76: PUSH2 0x34bb 00000c79: JUMP 00000c7a: JUMPDEST 00000c7b: DUP1 00000c7c: PUSH1 0x1f 00000c7e: ADD 00000c7f: PUSH1 0x20 00000c81: DUP1 00000c82: SWAP2 00000c83: DIV 00000c84: MUL 00000c85: PUSH1 0x20 00000c87: ADD 00000c88: PUSH1 0x40 00000c8a: MLOAD 00000c8b: SWAP1 00000c8c: DUP2 00000c8d: ADD 00000c8e: PUSH1 0x40 00000c90: MSTORE 00000c91: DUP1 00000c92: SWAP3 00000c93: SWAP2 00000c94: SWAP1 00000c95: DUP2 00000c96: DUP2 00000c97: MSTORE 00000c98: PUSH1 0x20 00000c9a: ADD 00000c9b: DUP3 00000c9c: DUP1 00000c9d: SLOAD 00000c9e: PUSH2 0x0ca6 00000ca1: SWAP1 00000ca2: PUSH2 0x34bb 00000ca5: JUMP 00000ca6: JUMPDEST 00000ca7: DUP1 00000ca8: ISZERO 00000ca9: PUSH2 0x0cf1 00000cac: JUMPI 00000cad: DUP1 00000cae: PUSH1 0x1f 00000cb0: LT 00000cb1: PUSH2 0x0cc8 00000cb4: JUMPI 00000cb5: PUSH2 0x0100 00000cb8: DUP1 00000cb9: DUP4 00000cba: SLOAD 00000cbb: DIV 00000cbc: MUL 00000cbd: DUP4 00000cbe: MSTORE 00000cbf: SWAP2 00000cc0: PUSH1 0x20 00000cc2: ADD 00000cc3: SWAP2 00000cc4: PUSH2 0x0cf1 00000cc7: JUMP 00000cc8: JUMPDEST 00000cc9: DUP3 00000cca: ADD 00000ccb: SWAP2 00000ccc: SWAP1 00000ccd: PUSH0 00000cce: MSTORE 00000ccf: PUSH1 0x20 00000cd1: PUSH0 00000cd2: KECCAK256 00000cd3: SWAP1 00000cd4: JUMPDEST 00000cd5: DUP2 00000cd6: SLOAD 00000cd7: DUP2 00000cd8: MSTORE 00000cd9: SWAP1 00000cda: PUSH1 0x01 00000cdc: ADD 00000cdd: SWAP1 00000cde: PUSH1 0x20 00000ce0: ADD 00000ce1: DUP1 00000ce2: DUP4 00000ce3: GT 00000ce4: PUSH2 0x0cd4 00000ce7: JUMPI 00000ce8: DUP3 00000ce9: SWAP1 00000cea: SUB 00000ceb: PUSH1 0x1f 00000ced: AND 00000cee: DUP3 00000cef: ADD 00000cf0: SWAP2 00000cf1: JUMPDEST 00000cf2: POP 00000cf3: POP 00000cf4: POP 00000cf5: POP 00000cf6: POP 00000cf7: DUP2 00000cf8: JUMP 00000cf9: JUMPDEST 00000cfa: PUSH0 00000cfb: PUSH8 0x6765c793fa10079d 00000d04: PUSH1 0x1b 00000d06: SHL 00000d07: PUSH2 0x0d0e 00000d0a: PUSH2 0x10da 00000d0d: JUMP 00000d0e: JUMPDEST 00000d0f: PUSH2 0x0d18 00000d12: SWAP1 00000d13: DUP5 00000d14: PUSH2 0x3507 00000d17: JUMP 00000d18: JUMPDEST 00000d19: PUSH2 0x0c67 00000d1c: SWAP2 00000d1d: SWAP1 00000d1e: PUSH2 0x3532 00000d21: JUMP 00000d22: JUMPDEST 00000d23: CALLER 00000d24: PUSH0 00000d25: DUP2 00000d26: DUP2 00000d27: MSTORE 00000d28: PUSH1 0x0b 00000d2a: PUSH1 0x20 00000d2c: SWAP1 00000d2d: DUP2 00000d2e: MSTORE 00000d2f: PUSH1 0x40 00000d31: DUP1 00000d32: DUP4 00000d33: KECCAK256 00000d34: PUSH1 0x01 00000d36: PUSH1 0x01 00000d38: PUSH1 0xa0 00000d3a: SHL 00000d3b: SUB 00000d3c: DUP8 00000d3d: AND 00000d3e: DUP1 00000d3f: DUP6 00000d40: MSTORE 00000d41: SWAP3 00000d42: MSTORE 00000d43: DUP1 00000d44: DUP4 00000d45: KECCAK256 00000d46: DUP6 00000d47: SWAP1 00000d48: SSTORE 00000d49: MLOAD 00000d4a: SWAP2 00000d4b: SWAP3 00000d4c: SWAP1 00000d4d: SWAP2 00000d4e: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925 00000d6f: SWAP1 00000d70: PUSH2 0x0d7c 00000d73: SWAP1 00000d74: DUP7 00000d75: DUP2 00000d76: MSTORE 00000d77: PUSH1 0x20 00000d79: ADD 00000d7a: SWAP1 00000d7b: JUMP 00000d7c: JUMPDEST 00000d7d: PUSH1 0x40 00000d7f: MLOAD 00000d80: DUP1 00000d81: SWAP2 00000d82: SUB 00000d83: SWAP1 00000d84: LOG3 00000d85: POP 00000d86: PUSH1 0x01 00000d88: SWAP3 00000d89: SWAP2 00000d8a: POP 00000d8b: POP 00000d8c: JUMP 00000d8d: JUMPDEST 00000d8e: PUSH0 00000d8f: DUP1 00000d90: SLOAD 00000d91: PUSH1 0x40 00000d93: MLOAD 00000d94: PUSH4 0x70a08231 00000d99: PUSH1 0xe0 00000d9b: SHL 00000d9c: DUP2 00000d9d: MSTORE 00000d9e: ADDRESS 00000d9f: PUSH1 0x04 00000da1: DUP3 00000da2: ADD 00000da3: MSTORE 00000da4: DUP4 00000da5: SWAP2 00000da6: PUSH1 0x01 00000da8: PUSH1 0x01 00000daa: PUSH1 0xa0 00000dac: SHL 00000dad: SUB 00000dae: AND 00000daf: SWAP1 00000db0: PUSH4 0x70a08231 00000db5: SWAP1 00000db6: PUSH1 0x24 00000db8: ADD 00000db9: PUSH1 0x20 00000dbb: PUSH1 0x40 00000dbd: MLOAD 00000dbe: DUP1 00000dbf: DUP4 00000dc0: SUB 00000dc1: DUP2 00000dc2: DUP7 00000dc3: GAS 00000dc4: STATICCALL 00000dc5: ISZERO 00000dc6: DUP1 00000dc7: ISZERO 00000dc8: PUSH2 0x0dd3 00000dcb: JUMPI 00000dcc: RETURNDATASIZE 00000dcd: PUSH0 00000dce: PUSH0 00000dcf: RETURNDATACOPY 00000dd0: RETURNDATASIZE 00000dd1: PUSH0 00000dd2: REVERT 00000dd3: JUMPDEST 00000dd4: POP 00000dd5: POP 00000dd6: POP 00000dd7: POP 00000dd8: PUSH1 0x40 00000dda: MLOAD 00000ddb: RETURNDATASIZE 00000ddc: PUSH1 0x1f 00000dde: NOT 00000ddf: PUSH1 0x1f 00000de1: DUP3 00000de2: ADD 00000de3: AND 00000de4: DUP3 00000de5: ADD 00000de6: DUP1 00000de7: PUSH1 0x40 00000de9: MSTORE 00000dea: POP 00000deb: DUP2 00000dec: ADD 00000ded: SWAP1 00000dee: PUSH2 0x0df7 00000df1: SWAP2 00000df2: SWAP1 00000df3: PUSH2 0x3551 00000df6: JUMP 00000df7: JUMPDEST 00000df8: LT 00000df9: ISZERO 00000dfa: PUSH2 0x0e1e 00000dfd: JUMPI 00000dfe: PUSH1 0x40 00000e00: MLOAD 00000e01: PUSH3 0x461bcd 00000e05: PUSH1 0xe5 00000e07: SHL 00000e08: DUP2 00000e09: MSTORE 00000e0a: PUSH1 0x04 00000e0c: ADD 00000e0d: PUSH2 0x0e15 00000e10: SWAP1 00000e11: PUSH2 0x3568 00000e14: JUMP 00000e15: JUMPDEST 00000e16: PUSH1 0x40 00000e18: MLOAD 00000e19: DUP1 00000e1a: SWAP2 00000e1b: SUB 00000e1c: SWAP1 00000e1d: REVERT 00000e1e: JUMPDEST 00000e1f: PUSH2 0x0c67 00000e22: PUSH2 0x0e36 00000e25: PUSH8 0x6765c793fa10079d 00000e2e: PUSH1 0x1b 00000e30: SHL 00000e31: DUP5 00000e32: PUSH2 0x3507 00000e35: JUMP 00000e36: JUMPDEST 00000e37: PUSH2 0x0e3e 00000e3a: PUSH2 0x10da 00000e3d: JUMP 00000e3e: JUMPDEST 00000e3f: PUSH2 0x2067 00000e42: JUMP 00000e43: JUMPDEST 00000e44: PUSH0 00000e45: PUSH2 0x0e4e 00000e48: DUP5 00000e49: DUP5 00000e4a: PUSH2 0x184b 00000e4d: JUMP 00000e4e: JUMPDEST 00000e4f: SWAP1 00000e50: POP 00000e51: DUP3 00000e52: PUSH1 0x01 00000e54: PUSH1 0x01 00000e56: PUSH1 0xa0 00000e58: SHL 00000e59: SUB 00000e5a: AND 00000e5b: DUP3 00000e5c: PUSH2 0xffff 00000e5f: AND 00000e60: PUSH32 0xb30a03a0e2a407f18ae0e83491331dc069d1521e292feffb071e61c8f7f40636 00000e81: DUP4 00000e82: DUP8 00000e83: PUSH1 0x40 00000e85: MLOAD 00000e86: PUSH2 0x0e99 00000e89: SWAP3 00000e8a: SWAP2 00000e8b: SWAP1 00000e8c: SWAP2 00000e8d: DUP3 00000e8e: MSTORE 00000e8f: PUSH1 0x20 00000e91: DUP3 00000e92: ADD 00000e93: MSTORE 00000e94: PUSH1 0x40 00000e96: ADD 00000e97: SWAP1 00000e98: JUMP 00000e99: JUMPDEST 00000e9a: PUSH1 0x40 00000e9c: MLOAD 00000e9d: DUP1 00000e9e: SWAP2 00000e9f: SUB 00000ea0: SWAP1 00000ea1: LOG3 00000ea2: SWAP4 00000ea3: SWAP3 00000ea4: POP 00000ea5: POP 00000ea6: POP 00000ea7: JUMP 00000ea8: JUMPDEST 00000ea9: PUSH0 00000eaa: PUSH1 0x01 00000eac: PUSH1 0x01 00000eae: PUSH1 0xa0 00000eb0: SHL 00000eb1: SUB 00000eb2: DUP4 00000eb3: AND 00000eb4: ISZERO 00000eb5: DUP1 00000eb6: ISZERO 00000eb7: SWAP1 00000eb8: PUSH2 0x0eca 00000ebb: JUMPI 00000ebc: POP 00000ebd: PUSH1 0x01 00000ebf: PUSH1 0x01 00000ec1: PUSH1 0xa0 00000ec3: SHL 00000ec4: SUB 00000ec5: DUP4 00000ec6: AND 00000ec7: ADDRESS 00000ec8: EQ 00000ec9: ISZERO 00000eca: JUMPDEST 00000ecb: PUSH2 0x0ee6 00000ece: JUMPI 00000ecf: PUSH1 0x40 00000ed1: MLOAD 00000ed2: PUSH3 0x461bcd 00000ed6: PUSH1 0xe5 00000ed8: SHL 00000ed9: DUP2 00000eda: MSTORE 00000edb: PUSH1 0x04 00000edd: ADD 00000ede: PUSH2 0x0e15 00000ee1: SWAP1 00000ee2: PUSH2 0x35a9 00000ee5: JUMP 00000ee6: JUMPDEST 00000ee7: PUSH1 0x01 00000ee9: PUSH1 0x01 00000eeb: PUSH1 0xa0 00000eed: SHL 00000eee: SUB 00000eef: DUP5 00000ef0: AND 00000ef1: PUSH0 00000ef2: SWAP1 00000ef3: DUP2 00000ef4: MSTORE 00000ef5: PUSH1 0x09 00000ef7: PUSH1 0x20 00000ef9: MSTORE 00000efa: PUSH1 0x40 00000efc: SWAP1 00000efd: KECCAK256 00000efe: SLOAD 00000eff: DUP3 00000f00: DUP2 00000f01: LT 00000f02: ISZERO 00000f03: PUSH2 0x0f1e 00000f06: JUMPI 00000f07: PUSH1 0x40 00000f09: MLOAD 00000f0a: PUSH3 0x461bcd 00000f0e: PUSH1 0xe5 00000f10: SHL 00000f11: DUP2 00000f12: MSTORE 00000f13: PUSH1 0x04 00000f15: ADD 00000f16: PUSH2 0x0e15 00000f19: SWAP1 00000f1a: PUSH2 0x35e0 00000f1d: JUMP 00000f1e: JUMPDEST 00000f1f: PUSH1 0x01 00000f21: PUSH1 0x01 00000f23: PUSH1 0xa0 00000f25: SHL 00000f26: SUB 00000f27: DUP6 00000f28: AND 00000f29: CALLER 00000f2a: EQ 00000f2b: PUSH2 0x0fa3 00000f2e: JUMPI 00000f2f: PUSH1 0x01 00000f31: PUSH1 0x01 00000f33: PUSH1 0xa0 00000f35: SHL 00000f36: SUB 00000f37: DUP6 00000f38: AND 00000f39: PUSH0 00000f3a: SWAP1 00000f3b: DUP2 00000f3c: MSTORE 00000f3d: PUSH1 0x0b 00000f3f: PUSH1 0x20 00000f41: SWAP1 00000f42: DUP2 00000f43: MSTORE 00000f44: PUSH1 0x40 00000f46: DUP1 00000f47: DUP4 00000f48: KECCAK256 00000f49: CALLER 00000f4a: DUP5 00000f4b: MSTORE 00000f4c: SWAP1 00000f4d: SWAP2 00000f4e: MSTORE 00000f4f: SWAP1 00000f50: KECCAK256 00000f51: SLOAD 00000f52: PUSH0 00000f53: NOT 00000f54: DUP2 00000f55: EQ 00000f56: PUSH2 0x0fa1 00000f59: JUMPI 00000f5a: DUP4 00000f5b: DUP2 00000f5c: LT 00000f5d: ISZERO 00000f5e: PUSH2 0x0f79 00000f61: JUMPI 00000f62: PUSH1 0x40 00000f64: MLOAD 00000f65: PUSH3 0x461bcd 00000f69: PUSH1 0xe5 00000f6b: SHL 00000f6c: DUP2 00000f6d: MSTORE 00000f6e: PUSH1 0x04 00000f70: ADD 00000f71: PUSH2 0x0e15 00000f74: SWAP1 00000f75: PUSH2 0x3617 00000f78: JUMP 00000f79: JUMPDEST 00000f7a: PUSH1 0x01 00000f7c: PUSH1 0x01 00000f7e: PUSH1 0xa0 00000f80: SHL 00000f81: SUB 00000f82: DUP7 00000f83: AND 00000f84: PUSH0 00000f85: SWAP1 00000f86: DUP2 00000f87: MSTORE 00000f88: PUSH1 0x0b 00000f8a: PUSH1 0x20 00000f8c: SWAP1 00000f8d: DUP2 00000f8e: MSTORE 00000f8f: PUSH1 0x40 00000f91: DUP1 00000f92: DUP4 00000f93: KECCAK256 00000f94: CALLER 00000f95: DUP5 00000f96: MSTORE 00000f97: SWAP1 00000f98: SWAP2 00000f99: MSTORE 00000f9a: SWAP1 00000f9b: KECCAK256 00000f9c: DUP5 00000f9d: DUP3 00000f9e: SUB 00000f9f: SWAP1 00000fa0: SSTORE 00000fa1: JUMPDEST 00000fa2: POP 00000fa3: JUMPDEST 00000fa4: PUSH1 0x01 00000fa6: PUSH1 0x01 00000fa8: PUSH1 0xa0 00000faa: SHL 00000fab: SUB 00000fac: DUP1 00000fad: DUP7 00000fae: AND 00000faf: PUSH0 00000fb0: DUP2 00000fb1: DUP2 00000fb2: MSTORE 00000fb3: PUSH1 0x09 00000fb5: PUSH1 0x20 00000fb7: MSTORE 00000fb8: PUSH1 0x40 00000fba: DUP1 00000fbb: DUP3 00000fbc: KECCAK256 00000fbd: DUP8 00000fbe: DUP7 00000fbf: SUB 00000fc0: SWAP1 00000fc1: SSTORE 00000fc2: SWAP3 00000fc3: DUP8 00000fc4: AND 00000fc5: DUP1 00000fc6: DUP3 00000fc7: MSTORE 00000fc8: SWAP1 00000fc9: DUP4 00000fca: SWAP1 00000fcb: KECCAK256 00000fcc: DUP1 00000fcd: SLOAD 00000fce: DUP8 00000fcf: ADD 00000fd0: SWAP1 00000fd1: SSTORE 00000fd2: SWAP2 00000fd3: MLOAD 00000fd4: PUSH0 00000fd5: MLOAD 00000fd6: PUSH1 0x20 00000fd8: PUSH2 0x38c1 00000fdb: PUSH0 00000fdc: CODECOPY 00000fdd: PUSH0 00000fde: MLOAD 00000fdf: SWAP1 00000fe0: PUSH0 00000fe1: MSTORE 00000fe2: SWAP1 00000fe3: PUSH2 0x0fef 00000fe6: SWAP1 00000fe7: DUP8 00000fe8: DUP2 00000fe9: MSTORE 00000fea: PUSH1 0x20 00000fec: ADD 00000fed: SWAP1 00000fee: JUMP 00000fef: JUMPDEST 00000ff0: PUSH1 0x40 00000ff2: MLOAD 00000ff3: DUP1 00000ff4: SWAP2 00000ff5: SUB 00000ff6: SWAP1 00000ff7: LOG3 00000ff8: PUSH1 0x01 00000ffa: SWAP2 00000ffb: POP 00000ffc: POP 00000ffd: JUMPDEST 00000ffe: SWAP4 00000fff: SWAP3 00001000: POP 00001001: POP 00001002: POP 00001003: JUMP 00001004: JUMPDEST 00001005: PUSH0 00001006: SWAP1 00001007: DUP2 00001008: MSTORE 00001009: PUSH0 0000100a: MLOAD 0000100b: PUSH1 0x20 0000100d: PUSH2 0x38e1 00001010: PUSH0 00001011: CODECOPY 00001012: PUSH0 00001013: MLOAD 00001014: SWAP1 00001015: PUSH0 00001016: MSTORE 00001017: PUSH1 0x20 00001019: MSTORE 0000101a: PUSH1 0x40 0000101c: SWAP1 0000101d: KECCAK256 0000101e: PUSH1 0x01 00001020: ADD 00001021: SLOAD 00001022: SWAP1 00001023: JUMP 00001024: JUMPDEST 00001025: PUSH1 0x01 00001027: PUSH1 0x01 00001029: PUSH1 0xa0 0000102b: SHL 0000102c: SUB 0000102d: DUP2 0000102e: AND 0000102f: PUSH0 00001030: SWAP1 00001031: DUP2 00001032: MSTORE 00001033: PUSH1 0x09 00001035: PUSH1 0x20 00001037: MSTORE 00001038: PUSH1 0x40 0000103a: DUP2 0000103b: KECCAK256 0000103c: SLOAD 0000103d: PUSH2 0x0c67 00001040: SWAP1 00001041: PUSH2 0x0cf9 00001044: JUMP 00001045: JUMPDEST 00001046: PUSH2 0x104e 00001049: DUP3 0000104a: PUSH2 0x1004 0000104d: JUMP 0000104e: JUMPDEST 0000104f: PUSH2 0x1057 00001052: DUP2 00001053: PUSH2 0x2092 00001056: JUMP 00001057: JUMPDEST 00001058: PUSH2 0x1061 0000105b: DUP4 0000105c: DUP4 0000105d: PUSH2 0x209f 00001060: JUMP 00001061: JUMPDEST 00001062: POP 00001063: POP 00001064: POP 00001065: POP 00001066: JUMP 00001067: JUMPDEST 00001068: PUSH0 00001069: PUSH2 0x0c3e 0000106c: CHAINID 0000106d: PUSH2 0x20e1 00001070: JUMP 00001071: JUMPDEST 00001072: PUSH1 0x01 00001074: PUSH1 0x01 00001076: PUSH1 0xa0 00001078: SHL 00001079: SUB 0000107a: DUP2 0000107b: AND 0000107c: CALLER 0000107d: EQ 0000107e: PUSH2 0x109a 00001081: JUMPI 00001082: PUSH1 0x40 00001084: MLOAD 00001085: PUSH4 0x334bd919 0000108a: PUSH1 0xe1 0000108c: SHL 0000108d: DUP2 0000108e: MSTORE 0000108f: PUSH1 0x04 00001091: ADD 00001092: PUSH1 0x40 00001094: MLOAD 00001095: DUP1 00001096: SWAP2 00001097: SUB 00001098: SWAP1 00001099: REVERT 0000109a: JUMPDEST 0000109b: PUSH2 0x10a4 0000109e: DUP3 0000109f: DUP3 000010a0: PUSH2 0x2192 000010a3: JUMP 000010a4: JUMPDEST 000010a5: POP 000010a6: POP 000010a7: POP 000010a8: JUMP 000010a9: JUMPDEST 000010aa: PUSH0 000010ab: PUSH0 000010ac: PUSH2 0x10b3 000010af: PUSH2 0x0c32 000010b2: JUMP 000010b3: JUMPDEST 000010b4: PUSH1 0x07 000010b6: SLOAD 000010b7: SWAP1 000010b8: SWAP2 000010b9: POP 000010ba: DUP2 000010bb: DUP2 000010bc: GT 000010bd: ISZERO 000010be: PUSH2 0x10d0 000010c1: JUMPI 000010c2: PUSH2 0x10cb 000010c5: DUP3 000010c6: DUP3 000010c7: PUSH2 0x3658 000010ca: JUMP 000010cb: JUMPDEST 000010cc: PUSH2 0x10d2 000010cf: JUMP 000010d0: JUMPDEST 000010d1: PUSH0 000010d2: JUMPDEST 000010d3: SWAP5 000010d4: SWAP4 000010d5: POP 000010d6: POP 000010d7: POP 000010d8: POP 000010d9: JUMP 000010da: JUMPDEST 000010db: PUSH1 0x03 000010dd: SLOAD 000010de: PUSH0 000010df: SWAP1 000010e0: PUSH1 0x01 000010e2: PUSH1 0x01 000010e4: PUSH1 0x40 000010e6: SHL 000010e7: SUB 000010e8: AND 000010e9: TIMESTAMP 000010ea: GT 000010eb: PUSH2 0x1105 000010ee: JUMPI 000010ef: POP 000010f0: PUSH1 0x03 000010f2: SLOAD 000010f3: PUSH1 0x01 000010f5: PUSH1 0x40 000010f7: SHL 000010f8: SWAP1 000010f9: DIV 000010fa: PUSH1 0x01 000010fc: PUSH1 0x01 000010fe: PUSH1 0xc0 00001100: SHL 00001101: SUB 00001102: AND 00001103: SWAP1 00001104: JUMP 00001105: JUMPDEST 00001106: PUSH1 0x03 00001108: SLOAD 00001109: PUSH1 0x04 0000110b: SLOAD 0000110c: PUSH8 0x6765c793fa10079d 00001115: PUSH1 0x1b 00001117: SHL 00001118: SWAP2 00001119: PUSH1 0x01 0000111b: PUSH1 0x01 0000111d: PUSH1 0xc0 0000111f: SHL 00001120: SUB 00001121: PUSH1 0x01 00001123: PUSH1 0x40 00001125: SHL 00001126: DUP3 00001127: DIV 00001128: AND 00001129: SWAP2 0000112a: PUSH2 0x1145 0000112d: SWAP2 0000112e: PUSH2 0x1140 00001131: SWAP1 00001132: PUSH1 0x01 00001134: PUSH1 0x01 00001136: PUSH1 0x40 00001138: SHL 00001139: SUB 0000113a: AND 0000113b: TIMESTAMP 0000113c: PUSH2 0x3658 0000113f: JUMP 00001140: JUMPDEST 00001141: PUSH2 0x21cb 00001144: JUMP 00001145: JUMPDEST 00001146: PUSH2 0x114f 00001149: SWAP2 0000114a: SWAP1 0000114b: PUSH2 0x3507 0000114e: JUMP 0000114f: JUMPDEST 00001150: PUSH2 0x0c3e 00001153: SWAP2 00001154: SWAP1 00001155: PUSH2 0x3532 00001158: JUMP 00001159: JUMPDEST 0000115a: PUSH0 0000115b: PUSH2 0x1163 0000115e: DUP3 0000115f: PUSH2 0x0cf9 00001162: JUMP 00001163: JUMPDEST 00001164: PUSH0 00001165: SLOAD 00001166: PUSH1 0x40 00001168: MLOAD 00001169: PUSH4 0x70a08231 0000116e: PUSH1 0xe0 00001170: SHL 00001171: DUP2 00001172: MSTORE 00001173: ADDRESS 00001174: PUSH1 0x04 00001176: DUP3 00001177: ADD 00001178: MSTORE 00001179: SWAP2 0000117a: SWAP3 0000117b: POP 0000117c: DUP3 0000117d: SWAP2 0000117e: PUSH1 0x01 00001180: PUSH1 0x01 00001182: PUSH1 0xa0 00001184: SHL 00001185: SUB 00001186: SWAP1 00001187: SWAP2 00001188: AND 00001189: SWAP1 0000118a: PUSH4 0x70a08231 0000118f: SWAP1 00001190: PUSH1 0x24 00001192: ADD 00001193: PUSH1 0x20 00001195: PUSH1 0x40 00001197: MLOAD 00001198: DUP1 00001199: DUP4 0000119a: SUB 0000119b: DUP2 0000119c: DUP7 0000119d: GAS 0000119e: STATICCALL 0000119f: ISZERO 000011a0: DUP1 000011a1: ISZERO 000011a2: PUSH2 0x11ad 000011a5: JUMPI 000011a6: RETURNDATASIZE 000011a7: PUSH0 000011a8: PUSH0 000011a9: RETURNDATACOPY 000011aa: RETURNDATASIZE 000011ab: PUSH0 000011ac: REVERT 000011ad: JUMPDEST 000011ae: POP 000011af: POP 000011b0: POP 000011b1: POP 000011b2: PUSH1 0x40 000011b4: MLOAD 000011b5: RETURNDATASIZE 000011b6: PUSH1 0x1f 000011b8: NOT 000011b9: PUSH1 0x1f 000011bb: DUP3 000011bc: ADD 000011bd: AND 000011be: DUP3 000011bf: ADD 000011c0: DUP1 000011c1: PUSH1 0x40 000011c3: MSTORE 000011c4: POP 000011c5: DUP2 000011c6: ADD 000011c7: SWAP1 000011c8: PUSH2 0x11d1 000011cb: SWAP2 000011cc: SWAP1 000011cd: PUSH2 0x3551 000011d0: JUMP 000011d1: JUMPDEST 000011d2: LT 000011d3: ISZERO 000011d4: PUSH2 0x11ef 000011d7: JUMPI 000011d8: PUSH1 0x40 000011da: MLOAD 000011db: PUSH3 0x461bcd 000011df: PUSH1 0xe5 000011e1: SHL 000011e2: DUP2 000011e3: MSTORE 000011e4: PUSH1 0x04 000011e6: ADD 000011e7: PUSH2 0x0e15 000011ea: SWAP1 000011eb: PUSH2 0x3568 000011ee: JUMP 000011ef: JUMPDEST 000011f0: SWAP2 000011f1: SWAP1 000011f2: POP 000011f3: JUMP 000011f4: JUMPDEST 000011f5: PUSH2 0x11fc 000011f8: PUSH2 0x22b7 000011fb: JUMP 000011fc: JUMPDEST 000011fd: PUSH2 0x1205 00001200: DUP3 00001201: PUSH2 0x235d 00001204: JUMP 00001205: JUMPDEST 00001206: PUSH2 0x120f 00001209: DUP3 0000120a: DUP3 0000120b: PUSH2 0x2367 0000120e: JUMP 0000120f: JUMPDEST 00001210: POP 00001211: POP 00001212: JUMP 00001213: JUMPDEST 00001214: PUSH0 00001215: MLOAD 00001216: PUSH1 0x20 00001218: PUSH2 0x3901 0000121b: PUSH0 0000121c: CODECOPY 0000121d: PUSH0 0000121e: MLOAD 0000121f: SWAP1 00001220: PUSH0 00001221: MSTORE 00001222: PUSH2 0x122a 00001225: DUP2 00001226: PUSH2 0x2092 00001229: JUMP 0000122a: JUMPDEST 0000122b: PUSH2 0x1234 0000122e: CALLER 0000122f: DUP4 00001230: PUSH2 0x2423 00001233: JUMP 00001234: JUMPDEST 00001235: PUSH1 0x40 00001237: MLOAD 00001238: DUP3 00001239: DUP2 0000123a: MSTORE 0000123b: CALLER 0000123c: SWAP1 0000123d: PUSH32 0xd69eabfc802f58b2a23d16767d1fcab6551f30a60ab43a24f147d3823d7d0368 0000125e: SWAP1 0000125f: PUSH1 0x20 00001261: ADD 00001262: PUSH1 0x40 00001264: MLOAD 00001265: DUP1 00001266: SWAP2 00001267: SUB 00001268: SWAP1 00001269: LOG2 0000126a: POP 0000126b: POP 0000126c: JUMP 0000126d: JUMPDEST 0000126e: PUSH0 0000126f: PUSH2 0x1276 00001272: PUSH2 0x24c1 00001275: JUMP 00001276: JUMPDEST 00001277: POP 00001278: PUSH0 00001279: MLOAD 0000127a: PUSH1 0x20 0000127c: PUSH2 0x38a1 0000127f: PUSH0 00001280: CODECOPY 00001281: PUSH0 00001282: MLOAD 00001283: SWAP1 00001284: PUSH0 00001285: MSTORE 00001286: SWAP1 00001287: JUMP 00001288: JUMPDEST 00001289: PUSH0 0000128a: PUSH2 0x1291 0000128d: PUSH2 0x250a 00001290: JUMP 00001291: JUMPDEST 00001292: DUP1 00001293: SLOAD 00001294: SWAP1 00001295: SWAP2 00001296: POP 00001297: PUSH1 0xff 00001299: PUSH1 0x01 0000129b: PUSH1 0x40 0000129d: SHL 0000129e: DUP3 0000129f: DIV 000012a0: AND 000012a1: ISZERO 000012a2: SWAP1 000012a3: PUSH1 0x01 000012a5: PUSH1 0x01 000012a7: PUSH1 0x40 000012a9: SHL 000012aa: SUB 000012ab: AND 000012ac: PUSH0 000012ad: DUP2 000012ae: ISZERO 000012af: DUP1 000012b0: ISZERO 000012b1: PUSH2 0x12b7 000012b4: JUMPI 000012b5: POP 000012b6: DUP3 000012b7: JUMPDEST 000012b8: SWAP1 000012b9: POP 000012ba: PUSH0 000012bb: DUP3 000012bc: PUSH1 0x01 000012be: PUSH1 0x01 000012c0: PUSH1 0x40 000012c2: SHL 000012c3: SUB 000012c4: AND 000012c5: PUSH1 0x01 000012c7: EQ 000012c8: DUP1 000012c9: ISZERO 000012ca: PUSH2 0x12d2 000012cd: JUMPI 000012ce: POP 000012cf: ADDRESS 000012d0: EXTCODESIZE 000012d1: ISZERO 000012d2: JUMPDEST 000012d3: SWAP1 000012d4: POP 000012d5: DUP2 000012d6: ISZERO 000012d7: DUP1 000012d8: ISZERO 000012d9: PUSH2 0x12e0 000012dc: JUMPI 000012dd: POP 000012de: DUP1 000012df: ISZERO 000012e0: JUMPDEST 000012e1: ISZERO 000012e2: PUSH2 0x12fe 000012e5: JUMPI 000012e6: PUSH1 0x40 000012e8: MLOAD 000012e9: PUSH4 0xf92ee8a9 000012ee: PUSH1 0xe0 000012f0: SHL 000012f1: DUP2 000012f2: MSTORE 000012f3: PUSH1 0x04 000012f5: ADD 000012f6: PUSH1 0x40 000012f8: MLOAD 000012f9: DUP1 000012fa: SWAP2 000012fb: SUB 000012fc: SWAP1 000012fd: REVERT 000012fe: JUMPDEST 000012ff: DUP5 00001300: SLOAD 00001301: PUSH8 0xffffffffffffffff 0000130a: NOT 0000130b: AND 0000130c: PUSH1 0x01 0000130e: OR 0000130f: DUP6 00001310: SSTORE 00001311: DUP4 00001312: ISZERO 00001313: PUSH2 0x1328 00001316: JUMPI 00001317: DUP5 00001318: SLOAD 00001319: PUSH1 0xff 0000131b: PUSH1 0x40 0000131d: SHL 0000131e: NOT 0000131f: AND 00001320: PUSH1 0x01 00001322: PUSH1 0x40 00001324: SHL 00001325: OR 00001326: DUP6 00001327: SSTORE 00001328: JUMPDEST 00001329: PUSH0 0000132a: DUP1 0000132b: SLOAD 0000132c: PUSH1 0x01 0000132e: PUSH1 0x01 00001330: PUSH1 0xa0 00001332: SHL 00001333: SUB 00001334: NOT 00001335: AND 00001336: PUSH1 0x01 00001338: PUSH1 0x01 0000133a: PUSH1 0xa0 0000133c: SHL 0000133d: SUB 0000133e: DUP12 0000133f: AND 00001340: OR 00001341: SWAP1 00001342: SSTORE 00001343: PUSH1 0x01 00001345: PUSH2 0x134e 00001348: DUP10 00001349: DUP3 0000134a: PUSH2 0x36b6 0000134d: JUMP 0000134e: JUMPDEST 0000134f: POP 00001350: PUSH1 0x02 00001352: PUSH2 0x135b 00001355: DUP9 00001356: DUP3 00001357: PUSH2 0x36b6 0000135a: JUMP 0000135b: JUMPDEST 0000135c: POP 0000135d: PUSH2 0x1366 00001360: PUSH0 00001361: DUP8 00001362: PUSH2 0x209f 00001365: JUMP 00001366: JUMPDEST 00001367: POP 00001368: DUP9 00001369: PUSH1 0x01 0000136b: PUSH1 0x01 0000136d: PUSH1 0xa0 0000136f: SHL 00001370: SUB 00001371: AND 00001372: PUSH4 0x313ce567 00001377: PUSH1 0x40 00001379: MLOAD 0000137a: DUP2 0000137b: PUSH4 0xffffffff 00001380: AND 00001381: PUSH1 0xe0 00001383: SHL 00001384: DUP2 00001385: MSTORE 00001386: PUSH1 0x04 00001388: ADD 00001389: PUSH1 0x20 0000138b: PUSH1 0x40 0000138d: MLOAD 0000138e: DUP1 0000138f: DUP4 00001390: SUB 00001391: DUP2 00001392: DUP7 00001393: GAS 00001394: STATICCALL 00001395: ISZERO 00001396: DUP1 00001397: ISZERO 00001398: PUSH2 0x13a3 0000139b: JUMPI 0000139c: RETURNDATASIZE 0000139d: PUSH0 0000139e: PUSH0 0000139f: RETURNDATACOPY 000013a0: RETURNDATASIZE 000013a1: PUSH0 000013a2: REVERT 000013a3: JUMPDEST 000013a4: POP 000013a5: POP 000013a6: POP 000013a7: POP 000013a8: PUSH1 0x40 000013aa: MLOAD 000013ab: RETURNDATASIZE 000013ac: PUSH1 0x1f 000013ae: NOT 000013af: PUSH1 0x1f 000013b1: DUP3 000013b2: ADD 000013b3: AND 000013b4: DUP3 000013b5: ADD 000013b6: DUP1 000013b7: PUSH1 0x40 000013b9: MSTORE 000013ba: POP 000013bb: DUP2 000013bc: ADD 000013bd: SWAP1 000013be: PUSH2 0x13c7 000013c1: SWAP2 000013c2: SWAP1 000013c3: PUSH2 0x3770 000013c6: JUMP 000013c7: JUMPDEST 000013c8: PUSH0 000013c9: DUP1 000013ca: SLOAD 000013cb: PUSH1 0xff 000013cd: SWAP3 000013ce: SWAP1 000013cf: SWAP3 000013d0: AND 000013d1: PUSH1 0x01 000013d3: PUSH1 0xa0 000013d5: SHL 000013d6: MUL 000013d7: PUSH1 0xff 000013d9: PUSH1 0xa0 000013db: SHL 000013dc: NOT 000013dd: SWAP1 000013de: SWAP3 000013df: AND 000013e0: SWAP2 000013e1: SWAP1 000013e2: SWAP2 000013e3: OR 000013e4: SWAP1 000013e5: SSTORE 000013e6: TIMESTAMP 000013e7: PUSH1 0x01 000013e9: PUSH1 0x01 000013eb: PUSH1 0x40 000013ed: SHL 000013ee: SUB 000013ef: AND 000013f0: PUSH8 0x6765c793fa10079d 000013f9: PUSH1 0x5b 000013fb: SHL 000013fc: OR 000013fd: PUSH1 0x03 000013ff: SSTORE 00001400: PUSH8 0x6765c793fa10079d 00001409: PUSH1 0x1b 0000140b: SHL 0000140c: PUSH1 0x04 0000140e: DUP2 0000140f: SWAP1 00001410: SSTORE 00001411: PUSH1 0x05 00001413: DUP2 00001414: SWAP1 00001415: SSTORE 00001416: PUSH1 0x06 00001418: SSTORE 00001419: DUP4 0000141a: ISZERO 0000141b: PUSH2 0x145e 0000141e: JUMPI 0000141f: DUP5 00001420: SLOAD 00001421: PUSH1 0xff 00001423: PUSH1 0x40 00001425: SHL 00001426: NOT 00001427: AND 00001428: DUP6 00001429: SSTORE 0000142a: PUSH1 0x40 0000142c: MLOAD 0000142d: PUSH1 0x01 0000142f: DUP2 00001430: MSTORE 00001431: PUSH32 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2 00001452: SWAP1 00001453: PUSH1 0x20 00001455: ADD 00001456: PUSH1 0x40 00001458: MLOAD 00001459: DUP1 0000145a: SWAP2 0000145b: SUB 0000145c: SWAP1 0000145d: LOG1 0000145e: JUMPDEST 0000145f: POP 00001460: POP 00001461: POP 00001462: POP 00001463: POP 00001464: POP 00001465: POP 00001466: POP 00001467: POP 00001468: JUMP 00001469: JUMPDEST 0000146a: PUSH0 0000146b: PUSH2 0x1472 0000146e: PUSH2 0x18e2 00001471: JUMP 00001472: JUMPDEST 00001473: PUSH2 0x1487 00001476: PUSH8 0x6765c793fa10079d 0000147f: PUSH1 0x1b 00001481: SHL 00001482: DUP6 00001483: PUSH2 0x3507 00001486: JUMP 00001487: JUMPDEST 00001488: PUSH2 0x1491 0000148b: SWAP2 0000148c: SWAP1 0000148d: PUSH2 0x3532 00001490: JUMP 00001491: JUMPDEST 00001492: SWAP1 00001493: POP 00001494: PUSH2 0x0c67 00001497: DUP4 00001498: DUP3 00001499: DUP5 0000149a: PUSH2 0x2532 0000149d: JUMP 0000149e: JUMPDEST 0000149f: PUSH32 0x61c92169ef077349011ff0b1383c894d86c5f0b41d986366b58a6cf31e93beda 000014c0: PUSH2 0x14c8 000014c3: DUP2 000014c4: PUSH2 0x2092 000014c7: JUMP 000014c8: JUMPDEST 000014c9: PUSH1 0x05 000014cb: SLOAD 000014cc: DUP3 000014cd: LT 000014ce: ISZERO 000014cf: PUSH2 0x1513 000014d2: JUMPI 000014d3: PUSH1 0x40 000014d5: MLOAD 000014d6: PUSH3 0x461bcd 000014da: PUSH1 0xe5 000014dc: SHL 000014dd: DUP2 000014de: MSTORE 000014df: PUSH1 0x20 000014e1: PUSH1 0x04 000014e3: DUP3 000014e4: ADD 000014e5: MSTORE 000014e6: PUSH1 0x16 000014e8: PUSH1 0x24 000014ea: DUP3 000014eb: ADD 000014ec: MSTORE 000014ed: PUSH22 0x537061726b5661756c742f7673722d746f6f2d6c6f77 00001504: PUSH1 0x50 00001506: SHL 00001507: PUSH1 0x44 00001509: DUP3 0000150a: ADD 0000150b: MSTORE 0000150c: PUSH1 0x64 0000150e: ADD 0000150f: PUSH2 0x0e15 00001512: JUMP 00001513: JUMPDEST 00001514: PUSH1 0x06 00001516: SLOAD 00001517: DUP3 00001518: GT 00001519: ISZERO 0000151a: PUSH2 0x155f 0000151d: JUMPI 0000151e: PUSH1 0x40 00001520: MLOAD 00001521: PUSH3 0x461bcd 00001525: PUSH1 0xe5 00001527: SHL 00001528: DUP2 00001529: MSTORE 0000152a: PUSH1 0x20 0000152c: PUSH1 0x04 0000152e: DUP3 0000152f: ADD 00001530: MSTORE 00001531: PUSH1 0x17 00001533: PUSH1 0x24 00001535: DUP3 00001536: ADD 00001537: MSTORE 00001538: PUSH23 0x0a6e0c2e4d6acc2ead8e85eece6e45ae8dede5ad0d2ced 00001550: PUSH1 0x4b 00001552: SHL 00001553: PUSH1 0x44 00001555: DUP3 00001556: ADD 00001557: MSTORE 00001558: PUSH1 0x64 0000155a: ADD 0000155b: PUSH2 0x0e15 0000155e: JUMP 0000155f: JUMPDEST 00001560: PUSH2 0x1567 00001563: PUSH2 0x18e2 00001566: JUMP 00001567: JUMPDEST 00001568: POP 00001569: PUSH1 0x04 0000156b: DUP1 0000156c: SLOAD 0000156d: SWAP1 0000156e: DUP4 0000156f: SWAP1 00001570: SSTORE 00001571: PUSH1 0x40 00001573: DUP1 00001574: MLOAD 00001575: DUP3 00001576: DUP2 00001577: MSTORE 00001578: PUSH1 0x20 0000157a: DUP2 0000157b: ADD 0000157c: DUP6 0000157d: SWAP1 0000157e: MSTORE 0000157f: CALLER 00001580: SWAP2 00001581: PUSH32 0xdd4573165d2d2b3ad7be79cfb35bd79c5d5e90e9a51ca373b975e89591b1e513 000015a2: SWAP2 000015a3: ADD 000015a4: PUSH1 0x40 000015a6: MLOAD 000015a7: DUP1 000015a8: SWAP2 000015a9: SUB 000015aa: SWAP1 000015ab: LOG2 000015ac: POP 000015ad: POP 000015ae: POP 000015af: JUMP 000015b0: JUMPDEST 000015b1: PUSH0 000015b2: PUSH2 0x15ba 000015b5: DUP2 000015b6: PUSH2 0x2092 000015b9: JUMP 000015ba: JUMPDEST 000015bb: PUSH8 0x6765c793fa10079d 000015c4: PUSH1 0x1b 000015c6: SHL 000015c7: DUP4 000015c8: LT 000015c9: ISZERO 000015ca: PUSH2 0x160e 000015cd: JUMPI 000015ce: PUSH1 0x40 000015d0: MLOAD 000015d1: PUSH3 0x461bcd 000015d5: PUSH1 0xe5 000015d7: SHL 000015d8: DUP2 000015d9: MSTORE 000015da: PUSH1 0x20 000015dc: PUSH1 0x04 000015de: DUP3 000015df: ADD 000015e0: MSTORE 000015e1: PUSH1 0x16 000015e3: PUSH1 0x24 000015e5: DUP3 000015e6: ADD 000015e7: MSTORE 000015e8: PUSH22 0x537061726b5661756c742f7673722d746f6f2d6c6f77 000015ff: PUSH1 0x50 00001601: SHL 00001602: PUSH1 0x44 00001604: DUP3 00001605: ADD 00001606: MSTORE 00001607: PUSH1 0x64 00001609: ADD 0000160a: PUSH2 0x0e15 0000160d: JUMP 0000160e: JUMPDEST 0000160f: PUSH12 0x033b2e3dd0d78f60556d6583 0000161c: DUP3 0000161d: GT 0000161e: ISZERO 0000161f: PUSH2 0x1664 00001622: JUMPI 00001623: PUSH1 0x40 00001625: MLOAD 00001626: PUSH3 0x461bcd 0000162a: PUSH1 0xe5 0000162c: SHL 0000162d: DUP2 0000162e: MSTORE 0000162f: PUSH1 0x20 00001631: PUSH1 0x04 00001633: DUP3 00001634: ADD 00001635: MSTORE 00001636: PUSH1 0x17 00001638: PUSH1 0x24 0000163a: DUP3 0000163b: ADD 0000163c: MSTORE 0000163d: PUSH23 0x0a6e0c2e4d6acc2ead8e85eece6e45ae8dede5ad0d2ced 00001655: PUSH1 0x4b 00001657: SHL 00001658: PUSH1 0x44 0000165a: DUP3 0000165b: ADD 0000165c: MSTORE 0000165d: PUSH1 0x64 0000165f: ADD 00001660: PUSH2 0x0e15 00001663: JUMP 00001664: JUMPDEST 00001665: DUP2 00001666: DUP4 00001667: GT 00001668: ISZERO 00001669: PUSH2 0x16b4 0000166c: JUMPI 0000166d: PUSH1 0x40 0000166f: MLOAD 00001670: PUSH3 0x461bcd 00001674: PUSH1 0xe5 00001676: SHL 00001677: DUP2 00001678: MSTORE 00001679: PUSH1 0x20 0000167b: PUSH1 0x04 0000167d: DUP3 0000167e: ADD 0000167f: MSTORE 00001680: PUSH1 0x1d 00001682: PUSH1 0x24 00001684: DUP3 00001685: ADD 00001686: MSTORE 00001687: PUSH32 0x537061726b5661756c742f6d696e2d7673722d67742d6d61782d767372000000 000016a8: PUSH1 0x44 000016aa: DUP3 000016ab: ADD 000016ac: MSTORE 000016ad: PUSH1 0x64 000016af: ADD 000016b0: PUSH2 0x0e15 000016b3: JUMP 000016b4: JUMPDEST 000016b5: PUSH1 0x05 000016b7: SLOAD 000016b8: PUSH1 0x06 000016ba: SLOAD 000016bb: PUSH1 0x40 000016bd: DUP1 000016be: MLOAD 000016bf: SWAP3 000016c0: DUP4 000016c1: MSTORE 000016c2: PUSH1 0x20 000016c4: DUP4 000016c5: ADD 000016c6: SWAP2 000016c7: SWAP1 000016c8: SWAP2 000016c9: MSTORE 000016ca: DUP2 000016cb: ADD 000016cc: DUP5 000016cd: SWAP1 000016ce: MSTORE 000016cf: PUSH1 0x60 000016d1: DUP2 000016d2: ADD 000016d3: DUP4 000016d4: SWAP1 000016d5: MSTORE 000016d6: PUSH32 0x6074f38f2f0894d37e6c6842e522ed5a263a62e38db11377b063d485b0b30220 000016f7: SWAP1 000016f8: PUSH1 0x80 000016fa: ADD 000016fb: PUSH1 0x40 000016fd: MLOAD 000016fe: DUP1 000016ff: SWAP2 00001700: SUB 00001701: SWAP1 00001702: LOG1 00001703: POP 00001704: PUSH1 0x05 00001706: SWAP2 00001707: SWAP1 00001708: SWAP2 00001709: SSTORE 0000170a: PUSH1 0x06 0000170c: SSTORE 0000170d: JUMP 0000170e: JUMPDEST 0000170f: PUSH0 00001710: PUSH2 0x1718 00001713: DUP2 00001714: PUSH2 0x2092 00001717: JUMP 00001718: JUMPDEST 00001719: PUSH1 0x07 0000171b: SLOAD 0000171c: PUSH1 0x40 0000171e: DUP1 0000171f: MLOAD 00001720: SWAP2 00001721: DUP3 00001722: MSTORE 00001723: PUSH1 0x20 00001725: DUP3 00001726: ADD 00001727: DUP5 00001728: SWAP1 00001729: MSTORE 0000172a: PUSH32 0x296bce538ac6d09f30846d670defb82b44ccc28a772613d99904be3f6ed7a167 0000174b: SWAP2 0000174c: ADD 0000174d: PUSH1 0x40 0000174f: MLOAD 00001750: DUP1 00001751: SWAP2 00001752: SUB 00001753: SWAP1 00001754: LOG1 00001755: POP 00001756: PUSH1 0x07 00001758: SSTORE 00001759: JUMP 0000175a: JUMPDEST 0000175b: PUSH0 0000175c: DUP3 0000175d: DUP2 0000175e: MSTORE 0000175f: PUSH0 00001760: MLOAD 00001761: PUSH1 0x20 00001763: PUSH2 0x3881 00001766: PUSH0 00001767: CODECOPY 00001768: PUSH0 00001769: MLOAD 0000176a: SWAP1 0000176b: PUSH0 0000176c: MSTORE 0000176d: PUSH1 0x20 0000176f: DUP2 00001770: SWAP1 00001771: MSTORE 00001772: PUSH1 0x40 00001774: DUP3 00001775: KECCAK256 00001776: PUSH2 0x10d2 00001779: SWAP1 0000177a: DUP5 0000177b: PUSH2 0x26fd 0000177e: JUMP 0000177f: JUMPDEST 00001780: PUSH0 00001781: SWAP2 00001782: DUP3 00001783: MSTORE 00001784: PUSH0 00001785: MLOAD 00001786: PUSH1 0x20 00001788: PUSH2 0x38e1 0000178b: PUSH0 0000178c: CODECOPY 0000178d: PUSH0 0000178e: MLOAD 0000178f: SWAP1 00001790: PUSH0 00001791: MSTORE 00001792: PUSH1 0x20 00001794: SWAP1 00001795: DUP2 00001796: MSTORE 00001797: PUSH1 0x40 00001799: DUP1 0000179a: DUP5 0000179b: KECCAK256 0000179c: PUSH1 0x01 0000179e: PUSH1 0x01 000017a0: PUSH1 0xa0 000017a2: SHL 000017a3: SUB 000017a4: SWAP4 000017a5: SWAP1 000017a6: SWAP4 000017a7: AND 000017a8: DUP5 000017a9: MSTORE 000017aa: SWAP2 000017ab: SWAP1 000017ac: MSTORE 000017ad: SWAP1 000017ae: KECCAK256 000017af: SLOAD 000017b0: PUSH1 0xff 000017b2: AND 000017b3: SWAP1 000017b4: JUMP 000017b5: JUMPDEST 000017b6: PUSH0 000017b7: DUP1 000017b8: SLOAD 000017b9: PUSH1 0x40 000017bb: MLOAD 000017bc: PUSH4 0x70a08231 000017c1: PUSH1 0xe0 000017c3: SHL 000017c4: DUP2 000017c5: MSTORE 000017c6: ADDRESS 000017c7: PUSH1 0x04 000017c9: DUP3 000017ca: ADD 000017cb: MSTORE 000017cc: DUP3 000017cd: SWAP2 000017ce: PUSH1 0x01 000017d0: PUSH1 0x01 000017d2: PUSH1 0xa0 000017d4: SHL 000017d5: SUB 000017d6: AND 000017d7: SWAP1 000017d8: PUSH4 0x70a08231 000017dd: SWAP1 000017de: PUSH1 0x24 000017e0: ADD 000017e1: PUSH1 0x20 000017e3: PUSH1 0x40 000017e5: MLOAD 000017e6: DUP1 000017e7: DUP4 000017e8: SUB 000017e9: DUP2 000017ea: DUP7 000017eb: GAS 000017ec: STATICCALL 000017ed: ISZERO 000017ee: DUP1 000017ef: ISZERO 000017f0: PUSH2 0x17fb 000017f3: JUMPI 000017f4: RETURNDATASIZE 000017f5: PUSH0 000017f6: PUSH0 000017f7: RETURNDATACOPY 000017f8: RETURNDATASIZE 000017f9: PUSH0 000017fa: REVERT 000017fb: JUMPDEST 000017fc: POP 000017fd: POP 000017fe: POP 000017ff: POP 00001800: PUSH1 0x40 00001802: MLOAD 00001803: RETURNDATASIZE 00001804: PUSH1 0x1f 00001806: NOT 00001807: PUSH1 0x1f 00001809: DUP3 0000180a: ADD 0000180b: AND 0000180c: DUP3 0000180d: ADD 0000180e: DUP1 0000180f: PUSH1 0x40 00001811: MSTORE 00001812: POP 00001813: DUP2 00001814: ADD 00001815: SWAP1 00001816: PUSH2 0x181f 00001819: SWAP2 0000181a: SWAP1 0000181b: PUSH2 0x3551 0000181e: JUMP 0000181f: JUMPDEST 00001820: SWAP1 00001821: POP 00001822: PUSH0 00001823: PUSH2 0x182a 00001826: PUSH2 0x0c32 00001829: JUMP 0000182a: JUMPDEST 0000182b: SWAP1 0000182c: POP 0000182d: DUP2 0000182e: DUP2 0000182f: LT 00001830: ISZERO 00001831: PUSH2 0x183a 00001834: JUMPI 00001835: PUSH0 00001836: PUSH2 0x1844 00001839: JUMP 0000183a: JUMPDEST 0000183b: PUSH2 0x1844 0000183e: DUP3 0000183f: DUP3 00001840: PUSH2 0x3658 00001843: JUMP 00001844: JUMPDEST 00001845: SWAP3 00001846: POP 00001847: POP 00001848: POP 00001849: SWAP1 0000184a: JUMP 0000184b: JUMPDEST 0000184c: PUSH0 0000184d: PUSH2 0x1872 00001850: PUSH2 0x1857 00001853: PUSH2 0x18e2 00001856: JUMP 00001857: JUMPDEST 00001858: PUSH2 0x1861 0000185b: SWAP1 0000185c: DUP6 0000185d: PUSH2 0x3507 00001860: JUMP 00001861: JUMPDEST 00001862: PUSH8 0x6765c793fa10079d 0000186b: PUSH1 0x1b 0000186d: SHL 0000186e: PUSH2 0x2067 00001871: JUMP 00001872: JUMPDEST 00001873: SWAP1 00001874: POP 00001875: PUSH2 0x0c67 00001878: DUP2 00001879: DUP5 0000187a: DUP5 0000187b: PUSH2 0x2532 0000187e: JUMP 0000187f: JUMPDEST 00001880: PUSH1 0x02 00001882: DUP1 00001883: SLOAD 00001884: PUSH2 0x0c7a 00001887: SWAP1 00001888: PUSH2 0x34bb 0000188b: JUMP 0000188c: JUMPDEST 0000188d: PUSH0 0000188e: PUSH2 0x1897 00001891: DUP5 00001892: DUP5 00001893: PUSH2 0x1469 00001896: JUMP 00001897: JUMPDEST 00001898: SWAP1 00001899: POP 0000189a: DUP3 0000189b: PUSH1 0x01 0000189d: PUSH1 0x01 0000189f: PUSH1 0xa0 000018a1: SHL 000018a2: SUB 000018a3: AND 000018a4: DUP3 000018a5: PUSH2 0xffff 000018a8: AND 000018a9: PUSH32 0xb30a03a0e2a407f18ae0e83491331dc069d1521e292feffb071e61c8f7f40636 000018ca: DUP7 000018cb: DUP5 000018cc: PUSH1 0x40 000018ce: MLOAD 000018cf: PUSH2 0x0e99 000018d2: SWAP3 000018d3: SWAP2 000018d4: SWAP1 000018d5: SWAP2 000018d6: DUP3 000018d7: MSTORE 000018d8: PUSH1 0x20 000018da: DUP3 000018db: ADD 000018dc: MSTORE 000018dd: PUSH1 0x40 000018df: ADD 000018e0: SWAP1 000018e1: JUMP 000018e2: JUMPDEST 000018e3: PUSH1 0x03 000018e5: SLOAD 000018e6: PUSH0 000018e7: SWAP1 000018e8: PUSH1 0x01 000018ea: PUSH1 0x01 000018ec: PUSH1 0xc0 000018ee: SHL 000018ef: SUB 000018f0: PUSH1 0x01 000018f2: PUSH1 0x40 000018f4: SHL 000018f5: DUP3 000018f6: DIV 000018f7: AND 000018f8: SWAP1 000018f9: PUSH1 0x01 000018fb: PUSH1 0x01 000018fd: PUSH1 0x40 000018ff: SHL 00001900: SUB 00001901: AND 00001902: DUP3 00001903: TIMESTAMP 00001904: DUP3 00001905: LT 00001906: ISZERO 00001907: PUSH2 0x19bf 0000190a: JUMPI 0000190b: PUSH8 0x6765c793fa10079d 00001914: PUSH1 0x1b 00001916: SHL 00001917: DUP4 00001918: PUSH2 0x1929 0000191b: PUSH1 0x04 0000191d: SLOAD 0000191e: DUP6 0000191f: TIMESTAMP 00001920: PUSH2 0x1140 00001923: SWAP2 00001924: SWAP1 00001925: PUSH2 0x3658 00001928: JUMP 00001929: JUMPDEST 0000192a: PUSH2 0x1933 0000192d: SWAP2 0000192e: SWAP1 0000192f: PUSH2 0x3507 00001932: JUMP 00001933: JUMPDEST 00001934: PUSH2 0x193d 00001937: SWAP2 00001938: SWAP1 00001939: PUSH2 0x3532 0000193c: JUMP 0000193d: JUMPDEST 0000193e: PUSH1 0x08 00001940: SLOAD 00001941: SWAP1 00001942: SWAP5 00001943: POP 00001944: PUSH8 0x6765c793fa10079d 0000194d: PUSH1 0x1b 0000194f: SHL 00001950: PUSH2 0x1959 00001953: DUP6 00001954: DUP4 00001955: PUSH2 0x3507 00001958: JUMP 00001959: JUMPDEST 0000195a: PUSH2 0x1963 0000195d: SWAP2 0000195e: SWAP1 0000195f: PUSH2 0x3532 00001962: JUMP 00001963: JUMPDEST 00001964: PUSH8 0x6765c793fa10079d 0000196d: PUSH1 0x1b 0000196f: SHL 00001970: PUSH2 0x1979 00001973: DUP8 00001974: DUP5 00001975: PUSH2 0x3507 00001978: JUMP 00001979: JUMPDEST 0000197a: PUSH2 0x1983 0000197d: SWAP2 0000197e: SWAP1 0000197f: PUSH2 0x3532 00001982: JUMP 00001983: JUMPDEST 00001984: PUSH2 0x198d 00001987: SWAP2 00001988: SWAP1 00001989: PUSH2 0x3658 0000198c: JUMP 0000198d: JUMPDEST 0000198e: TIMESTAMP 0000198f: PUSH1 0x01 00001991: PUSH1 0x01 00001993: PUSH1 0x40 00001995: SHL 00001996: SUB 00001997: AND 00001998: PUSH1 0x01 0000199a: PUSH1 0x01 0000199c: PUSH1 0xc0 0000199e: SHL 0000199f: SUB 000019a0: DUP8 000019a1: AND 000019a2: PUSH1 0x01 000019a4: PUSH1 0x40 000019a6: SHL 000019a7: MUL 000019a8: PUSH8 0xffffffffffffffff 000019b1: NOT 000019b2: AND 000019b3: OR 000019b4: PUSH1 0x03 000019b6: SSTORE 000019b7: SWAP2 000019b8: POP 000019b9: PUSH2 0x19c3 000019bc: SWAP1 000019bd: POP 000019be: JUMP 000019bf: JUMPDEST 000019c0: DUP3 000019c1: SWAP4 000019c2: POP 000019c3: JUMPDEST 000019c4: PUSH1 0x40 000019c6: DUP1 000019c7: MLOAD 000019c8: DUP6 000019c9: DUP2 000019ca: MSTORE 000019cb: PUSH1 0x20 000019cd: DUP2 000019ce: ADD 000019cf: DUP4 000019d0: SWAP1 000019d1: MSTORE 000019d2: PUSH32 0xad1e8a53178522eb68a9d94d862bf30c841f709d2115f743eb6b34528751c79f 000019f3: SWAP2 000019f4: ADD 000019f5: PUSH1 0x40 000019f7: MLOAD 000019f8: DUP1 000019f9: SWAP2 000019fa: SUB 000019fb: SWAP1 000019fc: LOG1 000019fd: POP 000019fe: POP 000019ff: POP 00001a00: SWAP1 00001a01: JUMP 00001a02: JUMPDEST 00001a03: DUP2 00001a04: TIMESTAMP 00001a05: GT 00001a06: ISZERO 00001a07: PUSH2 0x1a52 00001a0a: JUMPI 00001a0b: PUSH1 0x40 00001a0d: MLOAD 00001a0e: PUSH3 0x461bcd 00001a12: PUSH1 0xe5 00001a14: SHL 00001a15: DUP2 00001a16: MSTORE 00001a17: PUSH1 0x20 00001a19: PUSH1 0x04 00001a1b: DUP3 00001a1c: ADD 00001a1d: MSTORE 00001a1e: PUSH1 0x19 00001a20: PUSH1 0x24 00001a22: DUP3 00001a23: ADD 00001a24: MSTORE 00001a25: PUSH32 0x537061726b5661756c742f7065726d69742d6578706972656400000000000000 00001a46: PUSH1 0x44 00001a48: DUP3 00001a49: ADD 00001a4a: MSTORE 00001a4b: PUSH1 0x64 00001a4d: ADD 00001a4e: PUSH2 0x0e15 00001a51: JUMP 00001a52: JUMPDEST 00001a53: PUSH1 0x01 00001a55: PUSH1 0x01 00001a57: PUSH1 0xa0 00001a59: SHL 00001a5a: SUB 00001a5b: DUP6 00001a5c: AND 00001a5d: PUSH2 0x1aa8 00001a60: JUMPI 00001a61: PUSH1 0x40 00001a63: MLOAD 00001a64: PUSH3 0x461bcd 00001a68: PUSH1 0xe5 00001a6a: SHL 00001a6b: DUP2 00001a6c: MSTORE 00001a6d: PUSH1 0x20 00001a6f: PUSH1 0x04 00001a71: DUP3 00001a72: ADD 00001a73: MSTORE 00001a74: PUSH1 0x18 00001a76: PUSH1 0x24 00001a78: DUP3 00001a79: ADD 00001a7a: MSTORE 00001a7b: PUSH32 0x537061726b5661756c742f696e76616c69642d6f776e65720000000000000000 00001a9c: PUSH1 0x44 00001a9e: DUP3 00001a9f: ADD 00001aa0: MSTORE 00001aa1: PUSH1 0x64 00001aa3: ADD 00001aa4: PUSH2 0x0e15 00001aa7: JUMP 00001aa8: JUMPDEST 00001aa9: PUSH1 0x01 00001aab: PUSH1 0x01 00001aad: PUSH1 0xa0 00001aaf: SHL 00001ab0: SUB 00001ab1: DUP6 00001ab2: AND 00001ab3: PUSH0 00001ab4: SWAP1 00001ab5: DUP2 00001ab6: MSTORE 00001ab7: PUSH1 0x0a 00001ab9: PUSH1 0x20 00001abb: MSTORE 00001abc: PUSH1 0x40 00001abe: DUP2 00001abf: KECCAK256 00001ac0: DUP1 00001ac1: SLOAD 00001ac2: PUSH1 0x01 00001ac4: DUP2 00001ac5: ADD 00001ac6: SWAP1 00001ac7: SWAP2 00001ac8: SSTORE 00001ac9: SWAP1 00001aca: PUSH2 0x1ad2 00001acd: CHAINID 00001ace: PUSH2 0x20e1 00001ad1: JUMP 00001ad2: JUMPDEST 00001ad3: PUSH1 0x40 00001ad5: DUP1 00001ad6: MLOAD 00001ad7: PUSH32 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9 00001af8: PUSH1 0x20 00001afa: DUP3 00001afb: ADD 00001afc: MSTORE 00001afd: PUSH1 0x01 00001aff: PUSH1 0x01 00001b01: PUSH1 0xa0 00001b03: SHL 00001b04: SUB 00001b05: DUP1 00001b06: DUP12 00001b07: AND 00001b08: SWAP3 00001b09: DUP3 00001b0a: ADD 00001b0b: SWAP3 00001b0c: SWAP1 00001b0d: SWAP3 00001b0e: MSTORE 00001b0f: SWAP1 00001b10: DUP9 00001b11: AND 00001b12: PUSH1 0x60 00001b14: DUP3 00001b15: ADD 00001b16: MSTORE 00001b17: PUSH1 0x80 00001b19: DUP2 00001b1a: ADD 00001b1b: DUP8 00001b1c: SWAP1 00001b1d: MSTORE 00001b1e: PUSH1 0xa0 00001b20: DUP2 00001b21: ADD 00001b22: DUP5 00001b23: SWAP1 00001b24: MSTORE 00001b25: PUSH1 0xc0 00001b27: DUP2 00001b28: ADD 00001b29: DUP7 00001b2a: SWAP1 00001b2b: MSTORE 00001b2c: PUSH1 0xe0 00001b2e: ADD 00001b2f: PUSH1 0x40 00001b31: MLOAD 00001b32: PUSH1 0x20 00001b34: DUP2 00001b35: DUP4 00001b36: SUB 00001b37: SUB 00001b38: DUP2 00001b39: MSTORE 00001b3a: SWAP1 00001b3b: PUSH1 0x40 00001b3d: MSTORE 00001b3e: DUP1 00001b3f: MLOAD 00001b40: SWAP1 00001b41: PUSH1 0x20 00001b43: ADD 00001b44: KECCAK256 00001b45: PUSH1 0x40 00001b47: MLOAD 00001b48: PUSH1 0x20 00001b4a: ADD 00001b4b: PUSH2 0x1b6b 00001b4e: SWAP3 00001b4f: SWAP2 00001b50: SWAP1 00001b51: PUSH2 0x1901 00001b54: PUSH1 0xf0 00001b56: SHL 00001b57: DUP2 00001b58: MSTORE 00001b59: PUSH1 0x02 00001b5b: DUP2 00001b5c: ADD 00001b5d: SWAP3 00001b5e: SWAP1 00001b5f: SWAP3 00001b60: MSTORE 00001b61: PUSH1 0x22 00001b63: DUP3 00001b64: ADD 00001b65: MSTORE 00001b66: PUSH1 0x42 00001b68: ADD 00001b69: SWAP1 00001b6a: JUMP 00001b6b: JUMPDEST 00001b6c: PUSH1 0x40 00001b6e: MLOAD 00001b6f: PUSH1 0x20 00001b71: DUP2 00001b72: DUP4 00001b73: SUB 00001b74: SUB 00001b75: DUP2 00001b76: MSTORE 00001b77: SWAP1 00001b78: PUSH1 0x40 00001b7a: MSTORE 00001b7b: DUP1 00001b7c: MLOAD 00001b7d: SWAP1 00001b7e: PUSH1 0x20 00001b80: ADD 00001b81: KECCAK256 00001b82: SWAP1 00001b83: POP 00001b84: PUSH2 0x1b8e 00001b87: DUP8 00001b88: DUP3 00001b89: DUP6 00001b8a: PUSH2 0x2708 00001b8d: JUMP 00001b8e: JUMPDEST 00001b8f: PUSH2 0x1bda 00001b92: JUMPI 00001b93: PUSH1 0x40 00001b95: MLOAD 00001b96: PUSH3 0x461bcd 00001b9a: PUSH1 0xe5 00001b9c: SHL 00001b9d: DUP2 00001b9e: MSTORE 00001b9f: PUSH1 0x20 00001ba1: PUSH1 0x04 00001ba3: DUP3 00001ba4: ADD 00001ba5: MSTORE 00001ba6: PUSH1 0x19 00001ba8: PUSH1 0x24 00001baa: DUP3 00001bab: ADD 00001bac: MSTORE 00001bad: PUSH32 0x537061726b5661756c742f696e76616c69642d7065726d697400000000000000 00001bce: PUSH1 0x44 00001bd0: DUP3 00001bd1: ADD 00001bd2: MSTORE 00001bd3: PUSH1 0x64 00001bd5: ADD 00001bd6: PUSH2 0x0e15 00001bd9: JUMP 00001bda: JUMPDEST 00001bdb: PUSH1 0x01 00001bdd: PUSH1 0x01 00001bdf: PUSH1 0xa0 00001be1: SHL 00001be2: SUB 00001be3: DUP8 00001be4: DUP2 00001be5: AND 00001be6: PUSH0 00001be7: DUP2 00001be8: DUP2 00001be9: MSTORE 00001bea: PUSH1 0x0b 00001bec: PUSH1 0x20 00001bee: SWAP1 00001bef: DUP2 00001bf0: MSTORE 00001bf1: PUSH1 0x40 00001bf3: DUP1 00001bf4: DUP4 00001bf5: KECCAK256 00001bf6: SWAP5 00001bf7: DUP12 00001bf8: AND 00001bf9: DUP1 00001bfa: DUP5 00001bfb: MSTORE 00001bfc: SWAP5 00001bfd: DUP3 00001bfe: MSTORE 00001bff: SWAP2 00001c00: DUP3 00001c01: SWAP1 00001c02: KECCAK256 00001c03: DUP10 00001c04: SWAP1 00001c05: SSTORE 00001c06: SWAP1 00001c07: MLOAD 00001c08: DUP9 00001c09: DUP2 00001c0a: MSTORE 00001c0b: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925 00001c2c: SWAP2 00001c2d: ADD 00001c2e: PUSH1 0x40 00001c30: MLOAD 00001c31: DUP1 00001c32: SWAP2 00001c33: SUB 00001c34: SWAP1 00001c35: LOG3 00001c36: POP 00001c37: POP 00001c38: POP 00001c39: POP 00001c3a: POP 00001c3b: POP 00001c3c: POP 00001c3d: JUMP 00001c3e: JUMPDEST 00001c3f: PUSH0 00001c40: DUP2 00001c41: DUP2 00001c42: MSTORE 00001c43: PUSH0 00001c44: MLOAD 00001c45: PUSH1 0x20 00001c47: PUSH2 0x3881 00001c4a: PUSH0 00001c4b: CODECOPY 00001c4c: PUSH0 00001c4d: MLOAD 00001c4e: SWAP1 00001c4f: PUSH0 00001c50: MSTORE 00001c51: PUSH1 0x20 00001c53: DUP2 00001c54: SWAP1 00001c55: MSTORE 00001c56: PUSH1 0x40 00001c58: SWAP1 00001c59: SWAP2 00001c5a: KECCAK256 00001c5b: PUSH1 0x60 00001c5d: SWAP2 00001c5e: SWAP1 00001c5f: PUSH2 0x0ffd 00001c62: SWAP1 00001c63: PUSH2 0x2890 00001c66: JUMP 00001c67: JUMPDEST 00001c68: PUSH0 00001c69: PUSH1 0x01 00001c6b: PUSH1 0x01 00001c6d: PUSH1 0xa0 00001c6f: SHL 00001c70: SUB 00001c71: DUP4 00001c72: AND 00001c73: ISZERO 00001c74: DUP1 00001c75: ISZERO 00001c76: SWAP1 00001c77: PUSH2 0x1c89 00001c7a: JUMPI 00001c7b: POP 00001c7c: PUSH1 0x01 00001c7e: PUSH1 0x01 00001c80: PUSH1 0xa0 00001c82: SHL 00001c83: SUB 00001c84: DUP4 00001c85: AND 00001c86: ADDRESS 00001c87: EQ 00001c88: ISZERO 00001c89: JUMPDEST 00001c8a: PUSH2 0x1ca5 00001c8d: JUMPI 00001c8e: PUSH1 0x40 00001c90: MLOAD 00001c91: PUSH3 0x461bcd 00001c95: PUSH1 0xe5 00001c97: SHL 00001c98: DUP2 00001c99: MSTORE 00001c9a: PUSH1 0x04 00001c9c: ADD 00001c9d: PUSH2 0x0e15 00001ca0: SWAP1 00001ca1: PUSH2 0x35a9 00001ca4: JUMP 00001ca5: JUMPDEST 00001ca6: CALLER 00001ca7: PUSH0 00001ca8: SWAP1 00001ca9: DUP2 00001caa: MSTORE 00001cab: PUSH1 0x09 00001cad: PUSH1 0x20 00001caf: MSTORE 00001cb0: PUSH1 0x40 00001cb2: SWAP1 00001cb3: KECCAK256 00001cb4: SLOAD 00001cb5: DUP3 00001cb6: DUP2 00001cb7: LT 00001cb8: ISZERO 00001cb9: PUSH2 0x1cd4 00001cbc: JUMPI 00001cbd: PUSH1 0x40 00001cbf: MLOAD 00001cc0: PUSH3 0x461bcd 00001cc4: PUSH1 0xe5 00001cc6: SHL 00001cc7: DUP2 00001cc8: MSTORE 00001cc9: PUSH1 0x04 00001ccb: ADD 00001ccc: PUSH2 0x0e15 00001ccf: SWAP1 00001cd0: PUSH2 0x35e0 00001cd3: JUMP 00001cd4: JUMPDEST 00001cd5: CALLER 00001cd6: PUSH0 00001cd7: DUP2 00001cd8: DUP2 00001cd9: MSTORE 00001cda: PUSH1 0x09 00001cdc: PUSH1 0x20 00001cde: SWAP1 00001cdf: DUP2 00001ce0: MSTORE 00001ce1: PUSH1 0x40 00001ce3: DUP1 00001ce4: DUP4 00001ce5: KECCAK256 00001ce6: DUP8 00001ce7: DUP7 00001ce8: SUB 00001ce9: SWAP1 00001cea: SSTORE 00001ceb: PUSH1 0x01 00001ced: PUSH1 0x01 00001cef: PUSH1 0xa0 00001cf1: SHL 00001cf2: SUB 00001cf3: DUP9 00001cf4: AND 00001cf5: DUP1 00001cf6: DUP5 00001cf7: MSTORE 00001cf8: SWAP3 00001cf9: DUP2 00001cfa: SWAP1 00001cfb: KECCAK256 00001cfc: DUP1 00001cfd: SLOAD 00001cfe: DUP9 00001cff: ADD 00001d00: SWAP1 00001d01: SSTORE 00001d02: MLOAD 00001d03: DUP7 00001d04: DUP2 00001d05: MSTORE 00001d06: SWAP2 00001d07: SWAP3 00001d08: SWAP2 00001d09: PUSH0 00001d0a: MLOAD 00001d0b: PUSH1 0x20 00001d0d: PUSH2 0x38c1 00001d10: PUSH0 00001d11: CODECOPY 00001d12: PUSH0 00001d13: MLOAD 00001d14: SWAP1 00001d15: PUSH0 00001d16: MSTORE 00001d17: SWAP2 00001d18: ADD 00001d19: PUSH1 0x40 00001d1b: MLOAD 00001d1c: DUP1 00001d1d: SWAP2 00001d1e: SUB 00001d1f: SWAP1 00001d20: LOG3 00001d21: POP 00001d22: PUSH1 0x01 00001d24: SWAP4 00001d25: SWAP3 00001d26: POP 00001d27: POP 00001d28: POP 00001d29: JUMP 00001d2a: JUMPDEST 00001d2b: PUSH0 00001d2c: PUSH2 0x0c3e 00001d2f: PUSH0 00001d30: MLOAD 00001d31: PUSH1 0x20 00001d33: PUSH2 0x38a1 00001d36: PUSH0 00001d37: CODECOPY 00001d38: PUSH0 00001d39: MLOAD 00001d3a: SWAP1 00001d3b: PUSH0 00001d3c: MSTORE 00001d3d: SLOAD 00001d3e: PUSH1 0x01 00001d40: PUSH1 0x01 00001d42: PUSH1 0xa0 00001d44: SHL 00001d45: SUB 00001d46: AND 00001d47: SWAP1 00001d48: JUMP 00001d49: JUMPDEST 00001d4a: PUSH0 00001d4b: PUSH2 0x0c67 00001d4e: PUSH2 0x1d55 00001d51: PUSH2 0x10da 00001d54: JUMP 00001d55: JUMPDEST 00001d56: PUSH2 0x1861 00001d59: SWAP1 00001d5a: DUP5 00001d5b: PUSH2 0x3507 00001d5e: JUMP 00001d5f: JUMPDEST 00001d60: PUSH0 00001d61: PUSH2 0x1d80 00001d64: PUSH2 0x1d78 00001d67: PUSH8 0x6765c793fa10079d 00001d70: PUSH1 0x1b 00001d72: SHL 00001d73: DUP7 00001d74: PUSH2 0x3507 00001d77: JUMP 00001d78: JUMPDEST 00001d79: PUSH2 0x0e3e 00001d7c: PUSH2 0x18e2 00001d7f: JUMP 00001d80: JUMPDEST 00001d81: SWAP1 00001d82: POP 00001d83: PUSH2 0x0ffd 00001d86: DUP5 00001d87: DUP3 00001d88: DUP6 00001d89: DUP6 00001d8a: PUSH2 0x289c 00001d8d: JUMP 00001d8e: JUMPDEST 00001d8f: PUSH0 00001d90: PUSH8 0x6765c793fa10079d 00001d99: PUSH1 0x1b 00001d9b: SHL 00001d9c: PUSH2 0x1da3 00001d9f: PUSH2 0x18e2 00001da2: JUMP 00001da3: JUMPDEST 00001da4: PUSH2 0x1dad 00001da7: SWAP1 00001da8: DUP7 00001da9: PUSH2 0x3507 00001dac: JUMP 00001dad: JUMPDEST 00001dae: PUSH2 0x1db7 00001db1: SWAP2 00001db2: SWAP1 00001db3: PUSH2 0x3532 00001db6: JUMP 00001db7: JUMPDEST 00001db8: SWAP1 00001db9: POP 00001dba: PUSH2 0x0ffd 00001dbd: DUP2 00001dbe: DUP6 00001dbf: DUP6 00001dc0: DUP6 00001dc1: PUSH2 0x289c 00001dc4: JUMP 00001dc5: JUMPDEST 00001dc6: PUSH1 0x07 00001dc8: SLOAD 00001dc9: PUSH0 00001dca: SWAP1 00001dcb: PUSH2 0x1de0 00001dce: PUSH8 0x6765c793fa10079d 00001dd7: PUSH1 0x1b 00001dd9: SHL 00001dda: PUSH0 00001ddb: NOT 00001ddc: PUSH2 0x3532 00001ddf: JUMP 00001de0: JUMPDEST 00001de1: DUP2 00001de2: GT 00001de3: ISZERO 00001de4: PUSH2 0x1df0 00001de7: JUMPI 00001de8: POP 00001de9: PUSH0 00001dea: NOT 00001deb: SWAP3 00001dec: SWAP2 00001ded: POP 00001dee: POP 00001def: JUMP 00001df0: JUMPDEST 00001df1: PUSH0 00001df2: PUSH2 0x1df9 00001df5: PUSH2 0x0c32 00001df8: JUMP 00001df9: JUMPDEST 00001dfa: SWAP1 00001dfb: POP 00001dfc: DUP1 00001dfd: DUP3 00001dfe: GT 00001dff: ISZERO 00001e00: PUSH2 0x10d0 00001e03: JUMPI 00001e04: PUSH2 0x1e0b 00001e07: PUSH2 0x10da 00001e0a: JUMP 00001e0b: JUMPDEST 00001e0c: PUSH8 0x6765c793fa10079d 00001e15: PUSH1 0x1b 00001e17: SHL 00001e18: PUSH2 0x1e21 00001e1b: DUP4 00001e1c: DUP6 00001e1d: PUSH2 0x3658 00001e20: JUMP 00001e21: JUMPDEST 00001e22: PUSH2 0x1e2b 00001e25: SWAP2 00001e26: SWAP1 00001e27: PUSH2 0x3507 00001e2a: JUMP 00001e2b: JUMPDEST 00001e2c: PUSH2 0x10cb 00001e2f: SWAP2 00001e30: SWAP1 00001e31: PUSH2 0x3532 00001e34: JUMP 00001e35: JUMPDEST 00001e36: PUSH0 00001e37: PUSH2 0x1e3e 00001e3a: PUSH2 0x10da 00001e3d: JUMP 00001e3e: JUMPDEST 00001e3f: PUSH2 0x0d18 00001e42: PUSH8 0x6765c793fa10079d 00001e4b: PUSH1 0x1b 00001e4d: SHL 00001e4e: DUP5 00001e4f: PUSH2 0x3507 00001e52: JUMP 00001e53: JUMPDEST 00001e54: PUSH0 00001e55: DUP2 00001e56: DUP2 00001e57: MSTORE 00001e58: PUSH0 00001e59: MLOAD 00001e5a: PUSH1 0x20 00001e5c: PUSH2 0x3881 00001e5f: PUSH0 00001e60: CODECOPY 00001e61: PUSH0 00001e62: MLOAD 00001e63: SWAP1 00001e64: PUSH0 00001e65: MSTORE 00001e66: PUSH1 0x20 00001e68: DUP2 00001e69: SWAP1 00001e6a: MSTORE 00001e6b: PUSH1 0x40 00001e6d: DUP3 00001e6e: KECCAK256 00001e6f: PUSH2 0x0ffd 00001e72: SWAP1 00001e73: PUSH2 0x2a07 00001e76: JUMP 00001e77: JUMPDEST 00001e78: PUSH0 00001e79: DUP1 00001e7a: SLOAD 00001e7b: PUSH1 0x40 00001e7d: MLOAD 00001e7e: PUSH4 0x70a08231 00001e83: PUSH1 0xe0 00001e85: SHL 00001e86: DUP2 00001e87: MSTORE 00001e88: ADDRESS 00001e89: PUSH1 0x04 00001e8b: DUP3 00001e8c: ADD 00001e8d: MSTORE 00001e8e: DUP3 00001e8f: SWAP2 00001e90: PUSH1 0x01 00001e92: PUSH1 0x01 00001e94: PUSH1 0xa0 00001e96: SHL 00001e97: SUB 00001e98: AND 00001e99: SWAP1 00001e9a: PUSH4 0x70a08231 00001e9f: SWAP1 00001ea0: PUSH1 0x24 00001ea2: ADD 00001ea3: PUSH1 0x20 00001ea5: PUSH1 0x40 00001ea7: MLOAD 00001ea8: DUP1 00001ea9: DUP4 00001eaa: SUB 00001eab: DUP2 00001eac: DUP7 00001ead: GAS 00001eae: STATICCALL 00001eaf: ISZERO 00001eb0: DUP1 00001eb1: ISZERO 00001eb2: PUSH2 0x1ebd 00001eb5: JUMPI 00001eb6: RETURNDATASIZE 00001eb7: PUSH0 00001eb8: PUSH0 00001eb9: RETURNDATACOPY 00001eba: RETURNDATASIZE 00001ebb: PUSH0 00001ebc: REVERT 00001ebd: JUMPDEST 00001ebe: POP 00001ebf: POP 00001ec0: POP 00001ec1: POP 00001ec2: PUSH1 0x40 00001ec4: MLOAD 00001ec5: RETURNDATASIZE 00001ec6: PUSH1 0x1f 00001ec8: NOT 00001ec9: PUSH1 0x1f 00001ecb: DUP3 00001ecc: ADD 00001ecd: AND 00001ece: DUP3 00001ecf: ADD 00001ed0: DUP1 00001ed1: PUSH1 0x40 00001ed3: MSTORE 00001ed4: POP 00001ed5: DUP2 00001ed6: ADD 00001ed7: SWAP1 00001ed8: PUSH2 0x1ee1 00001edb: SWAP2 00001edc: SWAP1 00001edd: PUSH2 0x3551 00001ee0: JUMP 00001ee1: JUMPDEST 00001ee2: SWAP1 00001ee3: POP 00001ee4: PUSH0 00001ee5: PUSH2 0x1eed 00001ee8: DUP5 00001ee9: PUSH2 0x1024 00001eec: JUMP 00001eed: JUMPDEST 00001eee: SWAP1 00001eef: POP 00001ef0: DUP1 00001ef1: DUP3 00001ef2: GT 00001ef3: PUSH2 0x0ffd 00001ef6: JUMPI 00001ef7: DUP2 00001ef8: PUSH2 0x10d2 00001efb: JUMP 00001efc: JUMPDEST 00001efd: PUSH2 0x1f4a 00001f00: DUP8 00001f01: DUP8 00001f02: DUP8 00001f03: DUP8 00001f04: DUP7 00001f05: DUP7 00001f06: DUP10 00001f07: PUSH1 0x40 00001f09: MLOAD 00001f0a: PUSH1 0x20 00001f0c: ADD 00001f0d: PUSH2 0x1f36 00001f10: SWAP4 00001f11: SWAP3 00001f12: SWAP2 00001f13: SWAP1 00001f14: SWAP3 00001f15: DUP4 00001f16: MSTORE 00001f17: PUSH1 0x20 00001f19: DUP4 00001f1a: ADD 00001f1b: SWAP2 00001f1c: SWAP1 00001f1d: SWAP2 00001f1e: MSTORE 00001f1f: PUSH1 0xf8 00001f21: SHL 00001f22: PUSH1 0x01 00001f24: PUSH1 0x01 00001f26: PUSH1 0xf8 00001f28: SHL 00001f29: SUB 00001f2a: NOT 00001f2b: AND 00001f2c: PUSH1 0x40 00001f2e: DUP3 00001f2f: ADD 00001f30: MSTORE 00001f31: PUSH1 0x41 00001f33: ADD 00001f34: SWAP1 00001f35: JUMP 00001f36: JUMPDEST 00001f37: PUSH1 0x40 00001f39: MLOAD 00001f3a: PUSH1 0x20 00001f3c: DUP2 00001f3d: DUP4 00001f3e: SUB 00001f3f: SUB 00001f40: DUP2 00001f41: MSTORE 00001f42: SWAP1 00001f43: PUSH1 0x40 00001f45: MSTORE 00001f46: PUSH2 0x1a02 00001f49: JUMP 00001f4a: JUMPDEST 00001f4b: POP 00001f4c: POP 00001f4d: POP 00001f4e: POP 00001f4f: POP 00001f50: POP 00001f51: POP 00001f52: JUMP 00001f53: JUMPDEST 00001f54: PUSH2 0x1f5c 00001f57: DUP3 00001f58: PUSH2 0x1004 00001f5b: JUMP 00001f5c: JUMPDEST 00001f5d: PUSH2 0x1f65 00001f60: DUP2 00001f61: PUSH2 0x2092 00001f64: JUMP 00001f65: JUMPDEST 00001f66: PUSH2 0x1061 00001f69: DUP4 00001f6a: DUP4 00001f6b: PUSH2 0x2192 00001f6e: JUMP 00001f6f: JUMPDEST 00001f70: PUSH0 00001f71: PUSH0 00001f72: PUSH2 0x1f79 00001f75: PUSH2 0x10da 00001f78: JUMP 00001f79: JUMPDEST 00001f7a: PUSH0 00001f7b: SLOAD 00001f7c: PUSH1 0x40 00001f7e: MLOAD 00001f7f: PUSH4 0x70a08231 00001f84: PUSH1 0xe0 00001f86: SHL 00001f87: DUP2 00001f88: MSTORE 00001f89: ADDRESS 00001f8a: PUSH1 0x04 00001f8c: DUP3 00001f8d: ADD 00001f8e: MSTORE 00001f8f: PUSH8 0x6765c793fa10079d 00001f98: PUSH1 0x1b 00001f9a: SHL 00001f9b: SWAP2 00001f9c: PUSH1 0x01 00001f9e: PUSH1 0x01 00001fa0: PUSH1 0xa0 00001fa2: SHL 00001fa3: SUB 00001fa4: AND 00001fa5: SWAP1 00001fa6: PUSH4 0x70a08231 00001fab: SWAP1 00001fac: PUSH1 0x24 00001fae: ADD 00001faf: PUSH1 0x20 00001fb1: PUSH1 0x40 00001fb3: MLOAD 00001fb4: DUP1 00001fb5: DUP4 00001fb6: SUB 00001fb7: DUP2 00001fb8: DUP7 00001fb9: GAS 00001fba: STATICCALL 00001fbb: ISZERO 00001fbc: DUP1 00001fbd: ISZERO 00001fbe: PUSH2 0x1fc9 00001fc1: JUMPI 00001fc2: RETURNDATASIZE 00001fc3: PUSH0 00001fc4: PUSH0 00001fc5: RETURNDATACOPY 00001fc6: RETURNDATASIZE 00001fc7: PUSH0 00001fc8: REVERT 00001fc9: JUMPDEST 00001fca: POP 00001fcb: POP 00001fcc: POP 00001fcd: POP 00001fce: PUSH1 0x40 00001fd0: MLOAD 00001fd1: RETURNDATASIZE 00001fd2: PUSH1 0x1f 00001fd4: NOT 00001fd5: PUSH1 0x1f 00001fd7: DUP3 00001fd8: ADD 00001fd9: AND 00001fda: DUP3 00001fdb: ADD 00001fdc: DUP1 00001fdd: PUSH1 0x40 00001fdf: MSTORE 00001fe0: POP 00001fe1: DUP2 00001fe2: ADD 00001fe3: SWAP1 00001fe4: PUSH2 0x1fed 00001fe7: SWAP2 00001fe8: SWAP1 00001fe9: PUSH2 0x3551 00001fec: JUMP 00001fed: JUMPDEST 00001fee: PUSH2 0x1ff7 00001ff1: SWAP2 00001ff2: SWAP1 00001ff3: PUSH2 0x3507 00001ff6: JUMP 00001ff7: JUMPDEST 00001ff8: PUSH2 0x2001 00001ffb: SWAP2 00001ffc: SWAP1 00001ffd: PUSH2 0x3532 00002000: JUMP 00002001: JUMPDEST 00002002: PUSH1 0x01 00002004: PUSH1 0x01 00002006: PUSH1 0xa0 00002008: SHL 00002009: SUB 0000200a: DUP5 0000200b: AND 0000200c: PUSH0 0000200d: SWAP1 0000200e: DUP2 0000200f: MSTORE 00002010: PUSH1 0x09 00002012: PUSH1 0x20 00002014: MSTORE 00002015: PUSH1 0x40 00002017: SWAP1 00002018: KECCAK256 00002019: SLOAD 0000201a: SWAP1 0000201b: SWAP2 0000201c: POP 0000201d: DUP1 0000201e: DUP3 0000201f: GT 00002020: PUSH2 0x0ffd 00002023: JUMPI 00002024: DUP2 00002025: PUSH2 0x10d2 00002028: JUMP 00002029: JUMPDEST 0000202a: PUSH0 0000202b: PUSH2 0x0c67 0000202e: DUP3 0000202f: PUSH2 0x1e35 00002032: JUMP 00002033: JUMPDEST 00002034: PUSH0 00002035: PUSH1 0x01 00002037: PUSH1 0x01 00002039: PUSH1 0xe0 0000203b: SHL 0000203c: SUB 0000203d: NOT 0000203e: DUP3 0000203f: AND 00002040: PUSH4 0x7965db0b 00002045: PUSH1 0xe0 00002047: SHL 00002048: EQ 00002049: DUP1 0000204a: PUSH2 0x0c67 0000204d: JUMPI 0000204e: POP 0000204f: PUSH4 0x01ffc9a7 00002054: PUSH1 0xe0 00002056: SHL 00002057: PUSH1 0x01 00002059: PUSH1 0x01 0000205b: PUSH1 0xe0 0000205d: SHL 0000205e: SUB 0000205f: NOT 00002060: DUP4 00002061: AND 00002062: EQ 00002063: PUSH2 0x0c67 00002066: JUMP 00002067: JUMPDEST 00002068: PUSH0 00002069: DUP3 0000206a: PUSH0 0000206b: SUB 0000206c: PUSH2 0x2075 0000206f: JUMPI 00002070: PUSH0 00002071: PUSH2 0x0ffd 00002074: JUMP 00002075: JUMPDEST 00002076: DUP2 00002077: PUSH1 0x01 00002079: DUP5 0000207a: SUB 0000207b: DUP2 0000207c: PUSH2 0x2087 0000207f: JUMPI 00002080: PUSH2 0x2087 00002083: PUSH2 0x351e 00002086: JUMP 00002087: JUMPDEST 00002088: DIV 00002089: PUSH1 0x01 0000208b: ADD 0000208c: SWAP4 0000208d: SWAP3 0000208e: POP 0000208f: POP 00002090: POP 00002091: JUMP 00002092: JUMPDEST 00002093: PUSH2 0x209c 00002096: DUP2 00002097: CALLER 00002098: PUSH2 0x2a10 0000209b: JUMP 0000209c: JUMPDEST 0000209d: POP 0000209e: JUMP 0000209f: JUMPDEST 000020a0: PUSH0 000020a1: PUSH0 000020a2: MLOAD 000020a3: PUSH1 0x20 000020a5: PUSH2 0x3881 000020a8: PUSH0 000020a9: CODECOPY 000020aa: PUSH0 000020ab: MLOAD 000020ac: SWAP1 000020ad: PUSH0 000020ae: MSTORE 000020af: DUP2 000020b0: PUSH2 0x20b9 000020b3: DUP6 000020b4: DUP6 000020b5: PUSH2 0x2a49 000020b8: JUMP 000020b9: JUMPDEST 000020ba: SWAP1 000020bb: POP 000020bc: DUP1 000020bd: ISZERO 000020be: PUSH2 0x10d2 000020c1: JUMPI 000020c2: PUSH0 000020c3: DUP6 000020c4: DUP2 000020c5: MSTORE 000020c6: PUSH1 0x20 000020c8: DUP4 000020c9: SWAP1 000020ca: MSTORE 000020cb: PUSH1 0x40 000020cd: SWAP1 000020ce: KECCAK256 000020cf: PUSH2 0x20d8 000020d2: SWAP1 000020d3: DUP6 000020d4: PUSH2 0x2aea 000020d7: JUMP 000020d8: JUMPDEST 000020d9: POP 000020da: SWAP5 000020db: SWAP4 000020dc: POP 000020dd: POP 000020de: POP 000020df: POP 000020e0: JUMP 000020e1: JUMPDEST 000020e2: PUSH0 000020e3: PUSH32 0x8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f 00002104: PUSH1 0x01 00002106: PUSH1 0x40 00002108: MLOAD 00002109: PUSH2 0x2112 0000210c: SWAP2 0000210d: SWAP1 0000210e: PUSH2 0x378b 00002111: JUMP 00002112: JUMPDEST 00002113: PUSH1 0x40 00002115: DUP1 00002116: MLOAD 00002117: SWAP2 00002118: DUP3 00002119: SWAP1 0000211a: SUB 0000211b: DUP3 0000211c: KECCAK256 0000211d: DUP3 0000211e: DUP3 0000211f: ADD 00002120: DUP3 00002121: MSTORE 00002122: PUSH1 0x01 00002124: DUP4 00002125: MSTORE 00002126: PUSH1 0x31 00002128: PUSH1 0xf8 0000212a: SHL 0000212b: PUSH1 0x20 0000212d: SWAP4 0000212e: DUP5 0000212f: ADD 00002130: MSTORE 00002131: DUP2 00002132: MLOAD 00002133: SWAP3 00002134: DUP4 00002135: ADD 00002136: SWAP4 00002137: SWAP1 00002138: SWAP4 00002139: MSTORE 0000213a: DUP2 0000213b: ADD 0000213c: SWAP2 0000213d: SWAP1 0000213e: SWAP2 0000213f: MSTORE 00002140: PUSH32 0xc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc6 00002161: PUSH1 0x60 00002163: DUP3 00002164: ADD 00002165: MSTORE 00002166: PUSH1 0x80 00002168: DUP2 00002169: ADD 0000216a: DUP4 0000216b: SWAP1 0000216c: MSTORE 0000216d: ADDRESS 0000216e: PUSH1 0xa0 00002170: DUP3 00002171: ADD 00002172: MSTORE 00002173: PUSH1 0xc0 00002175: ADD 00002176: PUSH1 0x40 00002178: MLOAD 00002179: PUSH1 0x20 0000217b: DUP2 0000217c: DUP4 0000217d: SUB 0000217e: SUB 0000217f: DUP2 00002180: MSTORE 00002181: SWAP1 00002182: PUSH1 0x40 00002184: MSTORE 00002185: DUP1 00002186: MLOAD 00002187: SWAP1 00002188: PUSH1 0x20 0000218a: ADD 0000218b: KECCAK256 0000218c: SWAP1 0000218d: POP 0000218e: SWAP2 0000218f: SWAP1 00002190: POP 00002191: JUMP 00002192: JUMPDEST 00002193: PUSH0 00002194: PUSH0 00002195: MLOAD 00002196: PUSH1 0x20 00002198: PUSH2 0x3881 0000219b: PUSH0 0000219c: CODECOPY 0000219d: PUSH0 0000219e: MLOAD 0000219f: SWAP1 000021a0: PUSH0 000021a1: MSTORE 000021a2: DUP2 000021a3: PUSH2 0x21ac 000021a6: DUP6 000021a7: DUP6 000021a8: PUSH2 0x2afe 000021ab: JUMP 000021ac: JUMPDEST 000021ad: SWAP1 000021ae: POP 000021af: DUP1 000021b0: ISZERO 000021b1: PUSH2 0x10d2 000021b4: JUMPI 000021b5: PUSH0 000021b6: DUP6 000021b7: DUP2 000021b8: MSTORE 000021b9: PUSH1 0x20 000021bb: DUP4 000021bc: SWAP1 000021bd: MSTORE 000021be: PUSH1 0x40 000021c0: SWAP1 000021c1: KECCAK256 000021c2: PUSH2 0x20d8 000021c5: SWAP1 000021c6: DUP6 000021c7: PUSH2 0x2b77 000021ca: JUMP 000021cb: JUMPDEST 000021cc: PUSH0 000021cd: DUP3 000021ce: DUP1 000021cf: ISZERO 000021d0: PUSH2 0x2290 000021d3: JUMPI 000021d4: PUSH1 0x01 000021d6: DUP4 000021d7: AND 000021d8: DUP1 000021d9: ISZERO 000021da: PUSH2 0x21e5 000021dd: JUMPI 000021de: DUP5 000021df: SWAP3 000021e0: POP 000021e1: PUSH2 0x21f4 000021e4: JUMP 000021e5: JUMPDEST 000021e6: PUSH8 0x6765c793fa10079d 000021ef: PUSH1 0x1b 000021f1: SHL 000021f2: SWAP3 000021f3: POP 000021f4: JUMPDEST 000021f5: POP 000021f6: PUSH1 0x02 000021f8: SWAP1 000021f9: SWAP3 000021fa: DIV 000021fb: SWAP2 000021fc: PUSH12 0x019d971e4fe8401e74000000 00002209: JUMPDEST 0000220a: DUP4 0000220b: ISZERO 0000220c: PUSH2 0x228a 0000220f: JUMPI 00002210: DUP5 00002211: DUP6 00002212: MUL 00002213: DUP6 00002214: DUP7 00002215: DUP3 00002216: DIV 00002217: EQ 00002218: PUSH2 0x221f 0000221b: JUMPI 0000221c: PUSH0 0000221d: PUSH0 0000221e: REVERT 0000221f: JUMPDEST 00002220: DUP2 00002221: DUP2 00002222: ADD 00002223: DUP2 00002224: DUP2 00002225: LT 00002226: ISZERO 00002227: PUSH2 0x222e 0000222a: JUMPI 0000222b: PUSH0 0000222c: PUSH0 0000222d: REVERT 0000222e: JUMPDEST 0000222f: PUSH8 0x6765c793fa10079d 00002238: PUSH1 0x1b 0000223a: SHL 0000223b: SWAP1 0000223c: DIV 0000223d: SWAP6 0000223e: POP 0000223f: POP 00002240: PUSH1 0x01 00002242: DUP5 00002243: AND 00002244: ISZERO 00002245: PUSH2 0x227f 00002248: JUMPI 00002249: DUP5 0000224a: DUP4 0000224b: MUL 0000224c: DUP4 0000224d: DUP7 0000224e: DUP3 0000224f: DIV 00002250: EQ 00002251: ISZERO 00002252: DUP7 00002253: ISZERO 00002254: ISZERO 00002255: AND 00002256: ISZERO 00002257: PUSH2 0x225e 0000225a: JUMPI 0000225b: PUSH0 0000225c: PUSH0 0000225d: REVERT 0000225e: JUMPDEST 0000225f: DUP2 00002260: DUP2 00002261: ADD 00002262: DUP2 00002263: DUP2 00002264: LT 00002265: ISZERO 00002266: PUSH2 0x226d 00002269: JUMPI 0000226a: PUSH0 0000226b: PUSH0 0000226c: REVERT 0000226d: JUMPDEST 0000226e: PUSH8 0x6765c793fa10079d 00002277: PUSH1 0x1b 00002279: SHL 0000227a: SWAP1 0000227b: DIV 0000227c: SWAP4 0000227d: POP 0000227e: POP 0000227f: JUMPDEST 00002280: PUSH1 0x02 00002282: DUP5 00002283: DIV 00002284: SWAP4 00002285: POP 00002286: PUSH2 0x2209 00002289: JUMP 0000228a: JUMPDEST 0000228b: POP 0000228c: PUSH2 0x22b0 0000228f: JUMP 00002290: JUMPDEST 00002291: DUP3 00002292: DUP1 00002293: ISZERO 00002294: PUSH2 0x229f 00002297: JUMPI 00002298: PUSH0 00002299: SWAP3 0000229a: POP 0000229b: PUSH2 0x22ae 0000229e: JUMP 0000229f: JUMPDEST 000022a0: PUSH8 0x6765c793fa10079d 000022a9: PUSH1 0x1b 000022ab: SHL 000022ac: SWAP3 000022ad: POP 000022ae: JUMPDEST 000022af: POP 000022b0: JUMPDEST 000022b1: POP 000022b2: SWAP3 000022b3: SWAP2 000022b4: POP 000022b5: POP 000022b6: JUMP 000022b7: JUMPDEST 000022b8: ADDRESS 000022b9: PUSH1 0x01 000022bb: PUSH1 0x01 000022bd: PUSH1 0xa0 000022bf: SHL 000022c0: SUB 000022c1: PUSH32 0x0000000000000000000000001b992302652a92611dcd5090d1cb388c6377f455 000022e2: AND 000022e3: EQ 000022e4: DUP1 000022e5: PUSH2 0x233d 000022e8: JUMPI 000022e9: POP 000022ea: PUSH32 0x0000000000000000000000001b992302652a92611dcd5090d1cb388c6377f455 0000230b: PUSH1 0x01 0000230d: PUSH1 0x01 0000230f: PUSH1 0xa0 00002311: SHL 00002312: SUB 00002313: AND 00002314: PUSH2 0x2331 00002317: PUSH0 00002318: MLOAD 00002319: PUSH1 0x20 0000231b: PUSH2 0x38a1 0000231e: PUSH0 0000231f: CODECOPY 00002320: PUSH0 00002321: MLOAD 00002322: SWAP1 00002323: PUSH0 00002324: MSTORE 00002325: SLOAD 00002326: PUSH1 0x01 00002328: PUSH1 0x01 0000232a: PUSH1 0xa0 0000232c: SHL 0000232d: SUB 0000232e: AND 0000232f: SWAP1 00002330: JUMP 00002331: JUMPDEST 00002332: PUSH1 0x01 00002334: PUSH1 0x01 00002336: PUSH1 0xa0 00002338: SHL 00002339: SUB 0000233a: AND 0000233b: EQ 0000233c: ISZERO 0000233d: JUMPDEST 0000233e: ISZERO 0000233f: PUSH2 0x235b 00002342: JUMPI 00002343: PUSH1 0x40 00002345: MLOAD 00002346: PUSH4 0x703e46dd 0000234b: PUSH1 0xe1 0000234d: SHL 0000234e: DUP2 0000234f: MSTORE 00002350: PUSH1 0x04 00002352: ADD 00002353: PUSH1 0x40 00002355: MLOAD 00002356: DUP1 00002357: SWAP2 00002358: SUB 00002359: SWAP1 0000235a: REVERT 0000235b: JUMPDEST 0000235c: JUMP 0000235d: JUMPDEST 0000235e: PUSH0 0000235f: PUSH2 0x120f 00002362: DUP2 00002363: PUSH2 0x2092 00002366: JUMP 00002367: JUMPDEST 00002368: DUP2 00002369: PUSH1 0x01 0000236b: PUSH1 0x01 0000236d: PUSH1 0xa0 0000236f: SHL 00002370: SUB 00002371: AND 00002372: PUSH4 0x52d1902d 00002377: PUSH1 0x40 00002379: MLOAD 0000237a: DUP2 0000237b: PUSH4 0xffffffff 00002380: AND 00002381: PUSH1 0xe0 00002383: SHL 00002384: DUP2 00002385: MSTORE 00002386: PUSH1 0x04 00002388: ADD 00002389: PUSH1 0x20 0000238b: PUSH1 0x40 0000238d: MLOAD 0000238e: DUP1 0000238f: DUP4 00002390: SUB 00002391: DUP2 00002392: DUP7 00002393: GAS 00002394: STATICCALL 00002395: SWAP3 00002396: POP 00002397: POP 00002398: POP 00002399: DUP1 0000239a: ISZERO 0000239b: PUSH2 0x23c1 0000239e: JUMPI 0000239f: POP 000023a0: PUSH1 0x40 000023a2: DUP1 000023a3: MLOAD 000023a4: PUSH1 0x1f 000023a6: RETURNDATASIZE 000023a7: SWAP1 000023a8: DUP2 000023a9: ADD 000023aa: PUSH1 0x1f 000023ac: NOT 000023ad: AND 000023ae: DUP3 000023af: ADD 000023b0: SWAP1 000023b1: SWAP3 000023b2: MSTORE 000023b3: PUSH2 0x23be 000023b6: SWAP2 000023b7: DUP2 000023b8: ADD 000023b9: SWAP1 000023ba: PUSH2 0x3551 000023bd: JUMP 000023be: JUMPDEST 000023bf: PUSH1 0x01 000023c1: JUMPDEST 000023c2: PUSH2 0x23e9 000023c5: JUMPI 000023c6: PUSH1 0x40 000023c8: MLOAD 000023c9: PUSH4 0x4c9c8ce3 000023ce: PUSH1 0xe0 000023d0: SHL 000023d1: DUP2 000023d2: MSTORE 000023d3: PUSH1 0x01 000023d5: PUSH1 0x01 000023d7: PUSH1 0xa0 000023d9: SHL 000023da: SUB 000023db: DUP4 000023dc: AND 000023dd: PUSH1 0x04 000023df: DUP3 000023e0: ADD 000023e1: MSTORE 000023e2: PUSH1 0x24 000023e4: ADD 000023e5: PUSH2 0x0e15 000023e8: JUMP 000023e9: JUMPDEST 000023ea: PUSH0 000023eb: MLOAD 000023ec: PUSH1 0x20 000023ee: PUSH2 0x38a1 000023f1: PUSH0 000023f2: CODECOPY 000023f3: PUSH0 000023f4: MLOAD 000023f5: SWAP1 000023f6: PUSH0 000023f7: MSTORE 000023f8: DUP2 000023f9: EQ 000023fa: PUSH2 0x2419 000023fd: JUMPI 000023fe: PUSH1 0x40 00002400: MLOAD 00002401: PUSH4 0x2a875269 00002406: PUSH1 0xe2 00002408: SHL 00002409: DUP2 0000240a: MSTORE 0000240b: PUSH1 0x04 0000240d: DUP2 0000240e: ADD 0000240f: DUP3 00002410: SWAP1 00002411: MSTORE 00002412: PUSH1 0x24 00002414: ADD 00002415: PUSH2 0x0e15 00002418: JUMP 00002419: JUMPDEST 0000241a: PUSH2 0x10a4 0000241d: DUP4 0000241e: DUP4 0000241f: PUSH2 0x2b8b 00002422: JUMP 00002423: JUMPDEST 00002424: PUSH0 00002425: SLOAD 00002426: PUSH1 0x40 00002428: MLOAD 00002429: PUSH4 0x70a08231 0000242e: PUSH1 0xe0 00002430: SHL 00002431: DUP2 00002432: MSTORE 00002433: ADDRESS 00002434: PUSH1 0x04 00002436: DUP3 00002437: ADD 00002438: MSTORE 00002439: PUSH1 0x01 0000243b: PUSH1 0x01 0000243d: PUSH1 0xa0 0000243f: SHL 00002440: SUB 00002441: SWAP1 00002442: SWAP2 00002443: AND 00002444: SWAP1 00002445: PUSH4 0x70a08231 0000244a: SWAP1 0000244b: PUSH1 0x24 0000244d: ADD 0000244e: PUSH1 0x20 00002450: PUSH1 0x40 00002452: MLOAD 00002453: DUP1 00002454: DUP4 00002455: SUB 00002456: DUP2 00002457: DUP7 00002458: GAS 00002459: STATICCALL 0000245a: ISZERO 0000245b: DUP1 0000245c: ISZERO 0000245d: PUSH2 0x2468 00002460: JUMPI 00002461: RETURNDATASIZE 00002462: PUSH0 00002463: PUSH0 00002464: RETURNDATACOPY 00002465: RETURNDATASIZE 00002466: PUSH0 00002467: REVERT 00002468: JUMPDEST 00002469: POP 0000246a: POP 0000246b: POP 0000246c: POP 0000246d: PUSH1 0x40 0000246f: MLOAD 00002470: RETURNDATASIZE 00002471: PUSH1 0x1f 00002473: NOT 00002474: PUSH1 0x1f 00002476: DUP3 00002477: ADD 00002478: AND 00002479: DUP3 0000247a: ADD 0000247b: DUP1 0000247c: PUSH1 0x40 0000247e: MSTORE 0000247f: POP 00002480: DUP2 00002481: ADD 00002482: SWAP1 00002483: PUSH2 0x248c 00002486: SWAP2 00002487: SWAP1 00002488: PUSH2 0x3551 0000248b: JUMP 0000248c: JUMPDEST 0000248d: DUP2 0000248e: GT 0000248f: ISZERO 00002490: PUSH2 0x24ab 00002493: JUMPI 00002494: PUSH1 0x40 00002496: MLOAD 00002497: PUSH3 0x461bcd 0000249b: PUSH1 0xe5 0000249d: SHL 0000249e: DUP2 0000249f: MSTORE 000024a0: PUSH1 0x04 000024a2: ADD 000024a3: PUSH2 0x0e15 000024a6: SWAP1 000024a7: PUSH2 0x3568 000024aa: JUMP 000024ab: JUMPDEST 000024ac: PUSH0 000024ad: SLOAD 000024ae: PUSH2 0x120f 000024b1: SWAP1 000024b2: PUSH1 0x01 000024b4: PUSH1 0x01 000024b6: PUSH1 0xa0 000024b8: SHL 000024b9: SUB 000024ba: AND 000024bb: DUP4 000024bc: DUP4 000024bd: PUSH2 0x2be0 000024c0: JUMP 000024c1: JUMPDEST 000024c2: ADDRESS 000024c3: PUSH1 0x01 000024c5: PUSH1 0x01 000024c7: PUSH1 0xa0 000024c9: SHL 000024ca: SUB 000024cb: PUSH32 0x0000000000000000000000001b992302652a92611dcd5090d1cb388c6377f455 000024ec: AND 000024ed: EQ 000024ee: PUSH2 0x235b 000024f1: JUMPI 000024f2: PUSH1 0x40 000024f4: MLOAD 000024f5: PUSH4 0x703e46dd 000024fa: PUSH1 0xe1 000024fc: SHL 000024fd: DUP2 000024fe: MSTORE 000024ff: PUSH1 0x04 00002501: ADD 00002502: PUSH1 0x40 00002504: MLOAD 00002505: DUP1 00002506: SWAP2 00002507: SUB 00002508: SWAP1 00002509: REVERT 0000250a: JUMPDEST 0000250b: PUSH0 0000250c: DUP1 0000250d: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 0000252e: PUSH2 0x0c67 00002531: JUMP 00002532: JUMPDEST 00002533: PUSH1 0x01 00002535: PUSH1 0x01 00002537: PUSH1 0xa0 00002539: SHL 0000253a: SUB 0000253b: DUP2 0000253c: AND 0000253d: ISZERO 0000253e: DUP1 0000253f: ISZERO 00002540: SWAP1 00002541: PUSH2 0x2553 00002544: JUMPI 00002545: POP 00002546: PUSH1 0x01 00002548: PUSH1 0x01 0000254a: PUSH1 0xa0 0000254c: SHL 0000254d: SUB 0000254e: DUP2 0000254f: AND 00002550: ADDRESS 00002551: EQ 00002552: ISZERO 00002553: JUMPDEST 00002554: PUSH2 0x256f 00002557: JUMPI 00002558: PUSH1 0x40 0000255a: MLOAD 0000255b: PUSH3 0x461bcd 0000255f: PUSH1 0xe5 00002561: SHL 00002562: DUP2 00002563: MSTORE 00002564: PUSH1 0x04 00002566: ADD 00002567: PUSH2 0x0e15 0000256a: SWAP1 0000256b: PUSH2 0x35a9 0000256e: JUMP 0000256f: JUMPDEST 00002570: PUSH2 0x2586 00002573: PUSH0 00002574: MLOAD 00002575: PUSH1 0x20 00002577: PUSH2 0x3901 0000257a: PUSH0 0000257b: CODECOPY 0000257c: PUSH0 0000257d: MLOAD 0000257e: SWAP1 0000257f: PUSH0 00002580: MSTORE 00002581: CALLER 00002582: PUSH2 0x177f 00002585: JUMP 00002586: JUMPDEST 00002587: ISZERO 00002588: DUP1 00002589: ISZERO 0000258a: PUSH2 0x25a7 0000258d: JUMPI 0000258e: POP 0000258f: PUSH2 0x25a5 00002592: PUSH0 00002593: MLOAD 00002594: PUSH1 0x20 00002596: PUSH2 0x3901 00002599: PUSH0 0000259a: CODECOPY 0000259b: PUSH0 0000259c: MLOAD 0000259d: SWAP1 0000259e: PUSH0 0000259f: MSTORE 000025a0: DUP3 000025a1: PUSH2 0x177f 000025a4: JUMP 000025a5: JUMPDEST 000025a6: ISZERO 000025a7: JUMPDEST 000025a8: PUSH2 0x25f3 000025ab: JUMPI 000025ac: PUSH1 0x40 000025ae: MLOAD 000025af: PUSH3 0x461bcd 000025b3: PUSH1 0xe5 000025b5: SHL 000025b6: DUP2 000025b7: MSTORE 000025b8: PUSH1 0x20 000025ba: PUSH1 0x04 000025bc: DUP3 000025bd: ADD 000025be: MSTORE 000025bf: PUSH1 0x1f 000025c1: PUSH1 0x24 000025c3: DUP3 000025c4: ADD 000025c5: MSTORE 000025c6: PUSH32 0x537061726b5661756c742f74616b65722d63616e6e6f742d6465706f73697400 000025e7: PUSH1 0x44 000025e9: DUP3 000025ea: ADD 000025eb: MSTORE 000025ec: PUSH1 0x64 000025ee: ADD 000025ef: PUSH2 0x0e15 000025f2: JUMP 000025f3: JUMPDEST 000025f4: PUSH1 0x07 000025f6: SLOAD 000025f7: DUP4 000025f8: PUSH2 0x25ff 000025fb: PUSH2 0x0c32 000025fe: JUMP 000025ff: JUMPDEST 00002600: PUSH2 0x2609 00002603: SWAP2 00002604: SWAP1 00002605: PUSH2 0x37fc 00002608: JUMP 00002609: JUMPDEST 0000260a: GT 0000260b: ISZERO 0000260c: PUSH2 0x2657 0000260f: JUMPI 00002610: PUSH1 0x40 00002612: MLOAD 00002613: PUSH3 0x461bcd 00002617: PUSH1 0xe5 00002619: SHL 0000261a: DUP2 0000261b: MSTORE 0000261c: PUSH1 0x20 0000261e: PUSH1 0x04 00002620: DUP3 00002621: ADD 00002622: MSTORE 00002623: PUSH1 0x1f 00002625: PUSH1 0x24 00002627: DUP3 00002628: ADD 00002629: MSTORE 0000262a: PUSH32 0x537061726b5661756c742f6465706f7369742d6361702d657863656564656400 0000264b: PUSH1 0x44 0000264d: DUP3 0000264e: ADD 0000264f: MSTORE 00002650: PUSH1 0x64 00002652: ADD 00002653: PUSH2 0x0e15 00002656: JUMP 00002657: JUMPDEST 00002658: PUSH2 0x2661 0000265b: CALLER 0000265c: DUP5 0000265d: PUSH2 0x2c3f 00002660: JUMP 00002661: JUMPDEST 00002662: DUP2 00002663: PUSH1 0x08 00002665: SLOAD 00002666: PUSH2 0x266f 00002669: SWAP2 0000266a: SWAP1 0000266b: PUSH2 0x37fc 0000266e: JUMP 0000266f: JUMPDEST 00002670: PUSH1 0x08 00002672: SSTORE 00002673: PUSH1 0x01 00002675: PUSH1 0x01 00002677: PUSH1 0xa0 00002679: SHL 0000267a: SUB 0000267b: DUP2 0000267c: AND 0000267d: PUSH0 0000267e: DUP2 0000267f: DUP2 00002680: MSTORE 00002681: PUSH1 0x09 00002683: PUSH1 0x20 00002685: SWAP1 00002686: DUP2 00002687: MSTORE 00002688: PUSH1 0x40 0000268a: SWAP2 0000268b: DUP3 0000268c: SWAP1 0000268d: KECCAK256 0000268e: DUP1 0000268f: SLOAD 00002690: DUP7 00002691: ADD 00002692: SWAP1 00002693: SSTORE 00002694: DUP2 00002695: MLOAD 00002696: DUP7 00002697: DUP2 00002698: MSTORE 00002699: SWAP1 0000269a: DUP2 0000269b: ADD 0000269c: DUP6 0000269d: SWAP1 0000269e: MSTORE 0000269f: CALLER 000026a0: SWAP2 000026a1: PUSH32 0xdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d7 000026c2: SWAP2 000026c3: ADD 000026c4: PUSH1 0x40 000026c6: MLOAD 000026c7: DUP1 000026c8: SWAP2 000026c9: SUB 000026ca: SWAP1 000026cb: LOG3 000026cc: PUSH1 0x40 000026ce: MLOAD 000026cf: DUP3 000026d0: DUP2 000026d1: MSTORE 000026d2: PUSH1 0x01 000026d4: PUSH1 0x01 000026d6: PUSH1 0xa0 000026d8: SHL 000026d9: SUB 000026da: DUP3 000026db: AND 000026dc: SWAP1 000026dd: PUSH0 000026de: SWAP1 000026df: PUSH0 000026e0: MLOAD 000026e1: PUSH1 0x20 000026e3: PUSH2 0x38c1 000026e6: PUSH0 000026e7: CODECOPY 000026e8: PUSH0 000026e9: MLOAD 000026ea: SWAP1 000026eb: PUSH0 000026ec: MSTORE 000026ed: SWAP1 000026ee: PUSH1 0x20 000026f0: ADD 000026f1: PUSH1 0x40 000026f3: MLOAD 000026f4: DUP1 000026f5: SWAP2 000026f6: SUB 000026f7: SWAP1 000026f8: LOG3 000026f9: POP 000026fa: POP 000026fb: POP 000026fc: JUMP 000026fd: JUMPDEST 000026fe: PUSH0 000026ff: PUSH2 0x0ffd 00002702: DUP4 00002703: DUP4 00002704: PUSH2 0x2c56 00002707: JUMP 00002708: JUMPDEST 00002709: PUSH0 0000270a: DUP2 0000270b: MLOAD 0000270c: PUSH1 0x41 0000270e: SUB 0000270f: PUSH2 0x27a1 00002712: JUMPI 00002713: PUSH1 0x20 00002715: DUP3 00002716: DUP2 00002717: ADD 00002718: MLOAD 00002719: PUSH1 0x40 0000271b: DUP1 0000271c: DUP6 0000271d: ADD 0000271e: MLOAD 0000271f: PUSH1 0x60 00002721: DUP1 00002722: DUP8 00002723: ADD 00002724: MLOAD 00002725: DUP4 00002726: MLOAD 00002727: PUSH0 00002728: DUP1 00002729: DUP3 0000272a: MSTORE 0000272b: SWAP7 0000272c: DUP2 0000272d: ADD 0000272e: DUP1 0000272f: DUP7 00002730: MSTORE 00002731: DUP11 00002732: SWAP1 00002733: MSTORE 00002734: SWAP6 00002735: BYTE 00002736: SWAP3 00002737: DUP6 00002738: ADD 00002739: DUP4 0000273a: SWAP1 0000273b: MSTORE 0000273c: DUP5 0000273d: ADD 0000273e: DUP4 0000273f: SWAP1 00002740: MSTORE 00002741: PUSH1 0x80 00002743: DUP5 00002744: ADD 00002745: DUP2 00002746: SWAP1 00002747: MSTORE 00002748: SWAP2 00002749: SWAP3 0000274a: PUSH1 0x01 0000274c: SWAP1 0000274d: PUSH1 0xa0 0000274f: ADD 00002750: PUSH1 0x20 00002752: PUSH1 0x40 00002754: MLOAD 00002755: PUSH1 0x20 00002757: DUP2 00002758: SUB 00002759: SWAP1 0000275a: DUP1 0000275b: DUP5 0000275c: SUB 0000275d: SWAP1 0000275e: DUP6 0000275f: GAS 00002760: STATICCALL 00002761: ISZERO 00002762: DUP1 00002763: ISZERO 00002764: PUSH2 0x276f 00002767: JUMPI 00002768: RETURNDATASIZE 00002769: PUSH0 0000276a: PUSH0 0000276b: RETURNDATACOPY 0000276c: RETURNDATASIZE 0000276d: PUSH0 0000276e: REVERT 0000276f: JUMPDEST 00002770: POP 00002771: POP 00002772: POP 00002773: PUSH1 0x20 00002775: PUSH1 0x40 00002777: MLOAD 00002778: SUB 00002779: MLOAD 0000277a: PUSH1 0x01 0000277c: PUSH1 0x01 0000277e: PUSH1 0xa0 00002780: SHL 00002781: SUB 00002782: AND 00002783: DUP8 00002784: PUSH1 0x01 00002786: PUSH1 0x01 00002788: PUSH1 0xa0 0000278a: SHL 0000278b: SUB 0000278c: AND 0000278d: SUB 0000278e: PUSH2 0x279d 00002791: JUMPI 00002792: PUSH1 0x01 00002794: SWAP4 00002795: POP 00002796: POP 00002797: POP 00002798: POP 00002799: PUSH2 0x0ffd 0000279c: JUMP 0000279d: JUMPDEST 0000279e: POP 0000279f: POP 000027a0: POP 000027a1: JUMPDEST 000027a2: PUSH1 0x01 000027a4: PUSH1 0x01 000027a6: PUSH1 0xa0 000027a8: SHL 000027a9: SUB 000027aa: DUP5 000027ab: AND 000027ac: EXTCODESIZE 000027ad: ISZERO 000027ae: PUSH2 0x0ffd 000027b1: JUMPI 000027b2: PUSH0 000027b3: PUSH0 000027b4: DUP6 000027b5: PUSH1 0x01 000027b7: PUSH1 0x01 000027b9: PUSH1 0xa0 000027bb: SHL 000027bc: SUB 000027bd: AND 000027be: DUP6 000027bf: DUP6 000027c0: PUSH1 0x40 000027c2: MLOAD 000027c3: PUSH1 0x24 000027c5: ADD 000027c6: PUSH2 0x27d0 000027c9: SWAP3 000027ca: SWAP2 000027cb: SWAP1 000027cc: PUSH2 0x380f 000027cf: JUMP 000027d0: JUMPDEST 000027d1: PUSH1 0x40 000027d3: DUP1 000027d4: MLOAD 000027d5: PUSH1 0x1f 000027d7: NOT 000027d8: DUP2 000027d9: DUP5 000027da: SUB 000027db: ADD 000027dc: DUP2 000027dd: MSTORE 000027de: SWAP2 000027df: DUP2 000027e0: MSTORE 000027e1: PUSH1 0x20 000027e3: DUP3 000027e4: ADD 000027e5: DUP1 000027e6: MLOAD 000027e7: PUSH1 0x01 000027e9: PUSH1 0x01 000027eb: PUSH1 0xe0 000027ed: SHL 000027ee: SUB 000027ef: AND 000027f0: PUSH4 0x0b135d3f 000027f5: PUSH1 0xe1 000027f7: SHL 000027f8: OR 000027f9: SWAP1 000027fa: MSTORE 000027fb: MLOAD 000027fc: PUSH2 0x2805 000027ff: SWAP2 00002800: SWAP1 00002801: PUSH2 0x3827 00002804: JUMP 00002805: JUMPDEST 00002806: PUSH0 00002807: PUSH1 0x40 00002809: MLOAD 0000280a: DUP1 0000280b: DUP4 0000280c: SUB 0000280d: DUP2 0000280e: DUP6 0000280f: GAS 00002810: STATICCALL 00002811: SWAP2 00002812: POP 00002813: POP 00002814: RETURNDATASIZE 00002815: DUP1 00002816: PUSH0 00002817: DUP2 00002818: EQ 00002819: PUSH2 0x283d 0000281c: JUMPI 0000281d: PUSH1 0x40 0000281f: MLOAD 00002820: SWAP2 00002821: POP 00002822: PUSH1 0x1f 00002824: NOT 00002825: PUSH1 0x3f 00002827: RETURNDATASIZE 00002828: ADD 00002829: AND 0000282a: DUP3 0000282b: ADD 0000282c: PUSH1 0x40 0000282e: MSTORE 0000282f: RETURNDATASIZE 00002830: DUP3 00002831: MSTORE 00002832: RETURNDATASIZE 00002833: PUSH0 00002834: PUSH1 0x20 00002836: DUP5 00002837: ADD 00002838: RETURNDATACOPY 00002839: PUSH2 0x2842 0000283c: JUMP 0000283d: JUMPDEST 0000283e: PUSH1 0x60 00002840: SWAP2 00002841: POP 00002842: JUMPDEST 00002843: POP 00002844: SWAP2 00002845: POP 00002846: SWAP2 00002847: POP 00002848: DUP2 00002849: DUP1 0000284a: ISZERO 0000284b: PUSH2 0x2855 0000284e: JUMPI 0000284f: POP 00002850: DUP1 00002851: MLOAD 00002852: PUSH1 0x20 00002854: EQ 00002855: JUMPDEST 00002856: DUP1 00002857: ISZERO 00002858: PUSH2 0x2886 0000285b: JUMPI 0000285c: POP 0000285d: DUP1 0000285e: MLOAD 0000285f: PUSH4 0x0b135d3f 00002864: PUSH1 0xe1 00002866: SHL 00002867: SWAP1 00002868: PUSH2 0x287a 0000286b: SWAP1 0000286c: DUP4 0000286d: ADD 0000286e: PUSH1 0x20 00002870: SWAP1 00002871: DUP2 00002872: ADD 00002873: SWAP1 00002874: DUP5 00002875: ADD 00002876: PUSH2 0x383d 00002879: JUMP 0000287a: JUMPDEST 0000287b: PUSH1 0x01 0000287d: PUSH1 0x01 0000287f: PUSH1 0xe0 00002881: SHL 00002882: SUB 00002883: NOT 00002884: AND 00002885: EQ 00002886: JUMPDEST 00002887: SWAP7 00002888: SWAP6 00002889: POP 0000288a: POP 0000288b: POP 0000288c: POP 0000288d: POP 0000288e: POP 0000288f: JUMP 00002890: JUMPDEST 00002891: PUSH1 0x60 00002893: PUSH0 00002894: PUSH2 0x0ffd 00002897: DUP4 00002898: PUSH2 0x2c7c 0000289b: JUMP 0000289c: JUMPDEST 0000289d: PUSH1 0x01 0000289f: PUSH1 0x01 000028a1: PUSH1 0xa0 000028a3: SHL 000028a4: SUB 000028a5: DUP2 000028a6: AND 000028a7: PUSH0 000028a8: SWAP1 000028a9: DUP2 000028aa: MSTORE 000028ab: PUSH1 0x09 000028ad: PUSH1 0x20 000028af: MSTORE 000028b0: PUSH1 0x40 000028b2: SWAP1 000028b3: KECCAK256 000028b4: SLOAD 000028b5: DUP4 000028b6: DUP2 000028b7: LT 000028b8: ISZERO 000028b9: PUSH2 0x28d4 000028bc: JUMPI 000028bd: PUSH1 0x40 000028bf: MLOAD 000028c0: PUSH3 0x461bcd 000028c4: PUSH1 0xe5 000028c6: SHL 000028c7: DUP2 000028c8: MSTORE 000028c9: PUSH1 0x04 000028cb: ADD 000028cc: PUSH2 0x0e15 000028cf: SWAP1 000028d0: PUSH2 0x35e0 000028d3: JUMP 000028d4: JUMPDEST 000028d5: PUSH1 0x01 000028d7: PUSH1 0x01 000028d9: PUSH1 0xa0 000028db: SHL 000028dc: SUB 000028dd: DUP3 000028de: AND 000028df: CALLER 000028e0: EQ 000028e1: PUSH2 0x2959 000028e4: JUMPI 000028e5: PUSH1 0x01 000028e7: PUSH1 0x01 000028e9: PUSH1 0xa0 000028eb: SHL 000028ec: SUB 000028ed: DUP3 000028ee: AND 000028ef: PUSH0 000028f0: SWAP1 000028f1: DUP2 000028f2: MSTORE 000028f3: PUSH1 0x0b 000028f5: PUSH1 0x20 000028f7: SWAP1 000028f8: DUP2 000028f9: MSTORE 000028fa: PUSH1 0x40 000028fc: DUP1 000028fd: DUP4 000028fe: KECCAK256 000028ff: CALLER 00002900: DUP5 00002901: MSTORE 00002902: SWAP1 00002903: SWAP2 00002904: MSTORE 00002905: SWAP1 00002906: KECCAK256 00002907: SLOAD 00002908: PUSH0 00002909: NOT 0000290a: DUP2 0000290b: EQ 0000290c: PUSH2 0x2957 0000290f: JUMPI 00002910: DUP5 00002911: DUP2 00002912: LT 00002913: ISZERO 00002914: PUSH2 0x292f 00002917: JUMPI 00002918: PUSH1 0x40 0000291a: MLOAD 0000291b: PUSH3 0x461bcd 0000291f: PUSH1 0xe5 00002921: SHL 00002922: DUP2 00002923: MSTORE 00002924: PUSH1 0x04 00002926: ADD 00002927: PUSH2 0x0e15 0000292a: SWAP1 0000292b: PUSH2 0x3617 0000292e: JUMP 0000292f: JUMPDEST 00002930: PUSH1 0x01 00002932: PUSH1 0x01 00002934: PUSH1 0xa0 00002936: SHL 00002937: SUB 00002938: DUP4 00002939: AND 0000293a: PUSH0 0000293b: SWAP1 0000293c: DUP2 0000293d: MSTORE 0000293e: PUSH1 0x0b 00002940: PUSH1 0x20 00002942: SWAP1 00002943: DUP2 00002944: MSTORE 00002945: PUSH1 0x40 00002947: DUP1 00002948: DUP4 00002949: KECCAK256 0000294a: CALLER 0000294b: DUP5 0000294c: MSTORE 0000294d: SWAP1 0000294e: SWAP2 0000294f: MSTORE 00002950: SWAP1 00002951: KECCAK256 00002952: DUP6 00002953: DUP3 00002954: SUB 00002955: SWAP1 00002956: SSTORE 00002957: JUMPDEST 00002958: POP 00002959: JUMPDEST 0000295a: PUSH1 0x01 0000295c: PUSH1 0x01 0000295e: PUSH1 0xa0 00002960: SHL 00002961: SUB 00002962: DUP3 00002963: AND 00002964: PUSH0 00002965: SWAP1 00002966: DUP2 00002967: MSTORE 00002968: PUSH1 0x09 0000296a: PUSH1 0x20 0000296c: MSTORE 0000296d: PUSH1 0x40 0000296f: SWAP1 00002970: KECCAK256 00002971: DUP5 00002972: DUP3 00002973: SUB 00002974: SWAP1 00002975: SSTORE 00002976: PUSH1 0x08 00002978: DUP1 00002979: SLOAD 0000297a: DUP6 0000297b: SWAP1 0000297c: SUB 0000297d: SWAP1 0000297e: SSTORE 0000297f: PUSH2 0x2988 00002982: DUP4 00002983: DUP7 00002984: PUSH2 0x2423 00002987: JUMP 00002988: JUMPDEST 00002989: PUSH1 0x40 0000298b: MLOAD 0000298c: DUP5 0000298d: DUP2 0000298e: MSTORE 0000298f: PUSH0 00002990: SWAP1 00002991: PUSH1 0x01 00002993: PUSH1 0x01 00002995: PUSH1 0xa0 00002997: SHL 00002998: SUB 00002999: DUP5 0000299a: AND 0000299b: SWAP1 0000299c: PUSH0 0000299d: MLOAD 0000299e: PUSH1 0x20 000029a0: PUSH2 0x38c1 000029a3: PUSH0 000029a4: CODECOPY 000029a5: PUSH0 000029a6: MLOAD 000029a7: SWAP1 000029a8: PUSH0 000029a9: MSTORE 000029aa: SWAP1 000029ab: PUSH1 0x20 000029ad: ADD 000029ae: PUSH1 0x40 000029b0: MLOAD 000029b1: DUP1 000029b2: SWAP2 000029b3: SUB 000029b4: SWAP1 000029b5: LOG3 000029b6: PUSH1 0x40 000029b8: DUP1 000029b9: MLOAD 000029ba: DUP7 000029bb: DUP2 000029bc: MSTORE 000029bd: PUSH1 0x20 000029bf: DUP2 000029c0: ADD 000029c1: DUP7 000029c2: SWAP1 000029c3: MSTORE 000029c4: PUSH1 0x01 000029c6: PUSH1 0x01 000029c8: PUSH1 0xa0 000029ca: SHL 000029cb: SUB 000029cc: DUP1 000029cd: DUP6 000029ce: AND 000029cf: SWAP3 000029d0: SWAP1 000029d1: DUP7 000029d2: AND 000029d3: SWAP2 000029d4: CALLER 000029d5: SWAP2 000029d6: PUSH32 0xfbde797d201c681b91056529119e0b02407c7bb96a4a2c75c01fc9667232c8db 000029f7: SWAP2 000029f8: ADD 000029f9: PUSH1 0x40 000029fb: MLOAD 000029fc: DUP1 000029fd: SWAP2 000029fe: SUB 000029ff: SWAP1 00002a00: LOG4 00002a01: POP 00002a02: POP 00002a03: POP 00002a04: POP 00002a05: POP 00002a06: JUMP 00002a07: JUMPDEST 00002a08: PUSH0 00002a09: PUSH2 0x0c67 00002a0c: DUP3 00002a0d: SLOAD 00002a0e: SWAP1 00002a0f: JUMP 00002a10: JUMPDEST 00002a11: PUSH2 0x2a1a 00002a14: DUP3 00002a15: DUP3 00002a16: PUSH2 0x177f 00002a19: JUMP 00002a1a: JUMPDEST 00002a1b: PUSH2 0x120f 00002a1e: JUMPI 00002a1f: PUSH1 0x40 00002a21: MLOAD 00002a22: PUSH4 0xe2517d3f 00002a27: PUSH1 0xe0 00002a29: SHL 00002a2a: DUP2 00002a2b: MSTORE 00002a2c: PUSH1 0x01 00002a2e: PUSH1 0x01 00002a30: PUSH1 0xa0 00002a32: SHL 00002a33: SUB 00002a34: DUP3 00002a35: AND 00002a36: PUSH1 0x04 00002a38: DUP3 00002a39: ADD 00002a3a: MSTORE 00002a3b: PUSH1 0x24 00002a3d: DUP2 00002a3e: ADD 00002a3f: DUP4 00002a40: SWAP1 00002a41: MSTORE 00002a42: PUSH1 0x44 00002a44: ADD 00002a45: PUSH2 0x0e15 00002a48: JUMP 00002a49: JUMPDEST 00002a4a: PUSH0 00002a4b: PUSH0 00002a4c: MLOAD 00002a4d: PUSH1 0x20 00002a4f: PUSH2 0x38e1 00002a52: PUSH0 00002a53: CODECOPY 00002a54: PUSH0 00002a55: MLOAD 00002a56: SWAP1 00002a57: PUSH0 00002a58: MSTORE 00002a59: PUSH2 0x2a62 00002a5c: DUP5 00002a5d: DUP5 00002a5e: PUSH2 0x177f 00002a61: JUMP 00002a62: JUMPDEST 00002a63: PUSH2 0x2ae1 00002a66: JUMPI 00002a67: PUSH0 00002a68: DUP5 00002a69: DUP2 00002a6a: MSTORE 00002a6b: PUSH1 0x20 00002a6d: DUP3 00002a6e: DUP2 00002a6f: MSTORE 00002a70: PUSH1 0x40 00002a72: DUP1 00002a73: DUP4 00002a74: KECCAK256 00002a75: PUSH1 0x01 00002a77: PUSH1 0x01 00002a79: PUSH1 0xa0 00002a7b: SHL 00002a7c: SUB 00002a7d: DUP8 00002a7e: AND 00002a7f: DUP5 00002a80: MSTORE 00002a81: SWAP1 00002a82: SWAP2 00002a83: MSTORE 00002a84: SWAP1 00002a85: KECCAK256 00002a86: DUP1 00002a87: SLOAD 00002a88: PUSH1 0xff 00002a8a: NOT 00002a8b: AND 00002a8c: PUSH1 0x01 00002a8e: OR 00002a8f: SWAP1 00002a90: SSTORE 00002a91: PUSH2 0x2a97 00002a94: CALLER 00002a95: SWAP1 00002a96: JUMP 00002a97: JUMPDEST 00002a98: PUSH1 0x01 00002a9a: PUSH1 0x01 00002a9c: PUSH1 0xa0 00002a9e: SHL 00002a9f: SUB 00002aa0: AND 00002aa1: DUP4 00002aa2: PUSH1 0x01 00002aa4: PUSH1 0x01 00002aa6: PUSH1 0xa0 00002aa8: SHL 00002aa9: SUB 00002aaa: AND 00002aab: DUP6 00002aac: PUSH32 0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d 00002acd: PUSH1 0x40 00002acf: MLOAD 00002ad0: PUSH1 0x40 00002ad2: MLOAD 00002ad3: DUP1 00002ad4: SWAP2 00002ad5: SUB 00002ad6: SWAP1 00002ad7: LOG4 00002ad8: PUSH1 0x01 00002ada: SWAP2 00002adb: POP 00002adc: POP 00002add: PUSH2 0x0c67 00002ae0: JUMP 00002ae1: JUMPDEST 00002ae2: PUSH0 00002ae3: SWAP2 00002ae4: POP 00002ae5: POP 00002ae6: PUSH2 0x0c67 00002ae9: JUMP 00002aea: JUMPDEST 00002aeb: PUSH0 00002aec: PUSH2 0x0ffd 00002aef: DUP4 00002af0: PUSH1 0x01 00002af2: PUSH1 0x01 00002af4: PUSH1 0xa0 00002af6: SHL 00002af7: SUB 00002af8: DUP5 00002af9: AND 00002afa: PUSH2 0x2cd5 00002afd: JUMP 00002afe: JUMPDEST 00002aff: PUSH0 00002b00: PUSH0 00002b01: MLOAD 00002b02: PUSH1 0x20 00002b04: PUSH2 0x38e1 00002b07: PUSH0 00002b08: CODECOPY 00002b09: PUSH0 00002b0a: MLOAD 00002b0b: SWAP1 00002b0c: PUSH0 00002b0d: MSTORE 00002b0e: PUSH2 0x2b17 00002b11: DUP5 00002b12: DUP5 00002b13: PUSH2 0x177f 00002b16: JUMP 00002b17: JUMPDEST 00002b18: ISZERO 00002b19: PUSH2 0x2ae1 00002b1c: JUMPI 00002b1d: PUSH0 00002b1e: DUP5 00002b1f: DUP2 00002b20: MSTORE 00002b21: PUSH1 0x20 00002b23: DUP3 00002b24: DUP2 00002b25: MSTORE 00002b26: PUSH1 0x40 00002b28: DUP1 00002b29: DUP4 00002b2a: KECCAK256 00002b2b: PUSH1 0x01 00002b2d: PUSH1 0x01 00002b2f: PUSH1 0xa0 00002b31: SHL 00002b32: SUB 00002b33: DUP8 00002b34: AND 00002b35: DUP1 00002b36: DUP6 00002b37: MSTORE 00002b38: SWAP3 00002b39: MSTORE 00002b3a: DUP1 00002b3b: DUP4 00002b3c: KECCAK256 00002b3d: DUP1 00002b3e: SLOAD 00002b3f: PUSH1 0xff 00002b41: NOT 00002b42: AND 00002b43: SWAP1 00002b44: SSTORE 00002b45: MLOAD 00002b46: CALLER 00002b47: SWAP3 00002b48: DUP8 00002b49: SWAP2 00002b4a: PUSH32 0xf6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b 00002b6b: SWAP2 00002b6c: SWAP1 00002b6d: LOG4 00002b6e: PUSH1 0x01 00002b70: SWAP2 00002b71: POP 00002b72: POP 00002b73: PUSH2 0x0c67 00002b76: JUMP 00002b77: JUMPDEST 00002b78: PUSH0 00002b79: PUSH2 0x0ffd 00002b7c: DUP4 00002b7d: PUSH1 0x01 00002b7f: PUSH1 0x01 00002b81: PUSH1 0xa0 00002b83: SHL 00002b84: SUB 00002b85: DUP5 00002b86: AND 00002b87: PUSH2 0x2d21 00002b8a: JUMP 00002b8b: JUMPDEST 00002b8c: PUSH2 0x2b94 00002b8f: DUP3 00002b90: PUSH2 0x2dfb 00002b93: JUMP 00002b94: JUMPDEST 00002b95: PUSH1 0x40 00002b97: MLOAD 00002b98: PUSH1 0x01 00002b9a: PUSH1 0x01 00002b9c: PUSH1 0xa0 00002b9e: SHL 00002b9f: SUB 00002ba0: DUP4 00002ba1: AND 00002ba2: SWAP1 00002ba3: PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b 00002bc4: SWAP1 00002bc5: PUSH0 00002bc6: SWAP1 00002bc7: LOG2 00002bc8: DUP1 00002bc9: MLOAD 00002bca: ISZERO 00002bcb: PUSH2 0x2bd8 00002bce: JUMPI 00002bcf: PUSH2 0x10a4 00002bd2: DUP3 00002bd3: DUP3 00002bd4: PUSH2 0x2e5e 00002bd7: JUMP 00002bd8: JUMPDEST 00002bd9: PUSH2 0x120f 00002bdc: PUSH2 0x2ed0 00002bdf: JUMP 00002be0: JUMPDEST 00002be1: PUSH1 0x40 00002be3: MLOAD 00002be4: PUSH1 0x01 00002be6: PUSH1 0x01 00002be8: PUSH1 0xa0 00002bea: SHL 00002beb: SUB 00002bec: DUP4 00002bed: DUP2 00002bee: AND 00002bef: PUSH1 0x24 00002bf1: DUP4 00002bf2: ADD 00002bf3: MSTORE 00002bf4: PUSH1 0x44 00002bf6: DUP3 00002bf7: ADD 00002bf8: DUP4 00002bf9: SWAP1 00002bfa: MSTORE 00002bfb: PUSH2 0x10a4 00002bfe: SWAP2 00002bff: DUP6 00002c00: SWAP2 00002c01: DUP3 00002c02: AND 00002c03: SWAP1 00002c04: PUSH4 0xa9059cbb 00002c09: SWAP1 00002c0a: PUSH1 0x64 00002c0c: ADD 00002c0d: JUMPDEST 00002c0e: PUSH1 0x40 00002c10: MLOAD 00002c11: PUSH1 0x20 00002c13: DUP2 00002c14: DUP4 00002c15: SUB 00002c16: SUB 00002c17: DUP2 00002c18: MSTORE 00002c19: SWAP1 00002c1a: PUSH1 0x40 00002c1c: MSTORE 00002c1d: SWAP2 00002c1e: POP 00002c1f: PUSH1 0xe0 00002c21: SHL 00002c22: PUSH1 0x20 00002c24: DUP3 00002c25: ADD 00002c26: DUP1 00002c27: MLOAD 00002c28: PUSH1 0x01 00002c2a: PUSH1 0x01 00002c2c: PUSH1 0xe0 00002c2e: SHL 00002c2f: SUB 00002c30: DUP4 00002c31: DUP2 00002c32: DUP4 00002c33: AND 00002c34: OR 00002c35: DUP4 00002c36: MSTORE 00002c37: POP 00002c38: POP 00002c39: POP 00002c3a: POP 00002c3b: PUSH2 0x2eef 00002c3e: JUMP 00002c3f: JUMPDEST 00002c40: PUSH0 00002c41: SLOAD 00002c42: PUSH2 0x120f 00002c45: SWAP1 00002c46: PUSH1 0x01 00002c48: PUSH1 0x01 00002c4a: PUSH1 0xa0 00002c4c: SHL 00002c4d: SUB 00002c4e: AND 00002c4f: DUP4 00002c50: ADDRESS 00002c51: DUP5 00002c52: PUSH2 0x2f5b 00002c55: JUMP 00002c56: JUMPDEST 00002c57: PUSH0 00002c58: DUP3 00002c59: PUSH0 00002c5a: ADD 00002c5b: DUP3 00002c5c: DUP2 00002c5d: SLOAD 00002c5e: DUP2 00002c5f: LT 00002c60: PUSH2 0x2c6b 00002c63: JUMPI 00002c64: PUSH2 0x2c6b 00002c67: PUSH2 0x3858 00002c6a: JUMP 00002c6b: JUMPDEST 00002c6c: SWAP1 00002c6d: PUSH0 00002c6e: MSTORE 00002c6f: PUSH1 0x20 00002c71: PUSH0 00002c72: KECCAK256 00002c73: ADD 00002c74: SLOAD 00002c75: SWAP1 00002c76: POP 00002c77: SWAP3 00002c78: SWAP2 00002c79: POP 00002c7a: POP 00002c7b: JUMP 00002c7c: JUMPDEST 00002c7d: PUSH1 0x60 00002c7f: DUP2 00002c80: PUSH0 00002c81: ADD 00002c82: DUP1 00002c83: SLOAD 00002c84: DUP1 00002c85: PUSH1 0x20 00002c87: MUL 00002c88: PUSH1 0x20 00002c8a: ADD 00002c8b: PUSH1 0x40 00002c8d: MLOAD 00002c8e: SWAP1 00002c8f: DUP2 00002c90: ADD 00002c91: PUSH1 0x40 00002c93: MSTORE 00002c94: DUP1 00002c95: SWAP3 00002c96: SWAP2 00002c97: SWAP1 00002c98: DUP2 00002c99: DUP2 00002c9a: MSTORE 00002c9b: PUSH1 0x20 00002c9d: ADD 00002c9e: DUP3 00002c9f: DUP1 00002ca0: SLOAD 00002ca1: DUP1 00002ca2: ISZERO 00002ca3: PUSH2 0x2cc9 00002ca6: JUMPI 00002ca7: PUSH1 0x20 00002ca9: MUL 00002caa: DUP3 00002cab: ADD 00002cac: SWAP2 00002cad: SWAP1 00002cae: PUSH0 00002caf: MSTORE 00002cb0: PUSH1 0x20 00002cb2: PUSH0 00002cb3: KECCAK256 00002cb4: SWAP1 00002cb5: JUMPDEST 00002cb6: DUP2 00002cb7: SLOAD 00002cb8: DUP2 00002cb9: MSTORE 00002cba: PUSH1 0x20 00002cbc: ADD 00002cbd: SWAP1 00002cbe: PUSH1 0x01 00002cc0: ADD 00002cc1: SWAP1 00002cc2: DUP1 00002cc3: DUP4 00002cc4: GT 00002cc5: PUSH2 0x2cb5 00002cc8: JUMPI 00002cc9: JUMPDEST 00002cca: POP 00002ccb: POP 00002ccc: POP 00002ccd: POP 00002cce: POP 00002ccf: SWAP1 00002cd0: POP 00002cd1: SWAP2 00002cd2: SWAP1 00002cd3: POP 00002cd4: JUMP 00002cd5: JUMPDEST 00002cd6: PUSH0 00002cd7: DUP2 00002cd8: DUP2 00002cd9: MSTORE 00002cda: PUSH1 0x01 00002cdc: DUP4 00002cdd: ADD 00002cde: PUSH1 0x20 00002ce0: MSTORE 00002ce1: PUSH1 0x40 00002ce3: DUP2 00002ce4: KECCAK256 00002ce5: SLOAD 00002ce6: PUSH2 0x2d1a 00002ce9: JUMPI 00002cea: POP 00002ceb: DUP2 00002cec: SLOAD 00002ced: PUSH1 0x01 00002cef: DUP2 00002cf0: DUP2 00002cf1: ADD 00002cf2: DUP5 00002cf3: SSTORE 00002cf4: PUSH0 00002cf5: DUP5 00002cf6: DUP2 00002cf7: MSTORE 00002cf8: PUSH1 0x20 00002cfa: DUP1 00002cfb: DUP3 00002cfc: KECCAK256 00002cfd: SWAP1 00002cfe: SWAP4 00002cff: ADD 00002d00: DUP5 00002d01: SWAP1 00002d02: SSTORE 00002d03: DUP5 00002d04: SLOAD 00002d05: DUP5 00002d06: DUP3 00002d07: MSTORE 00002d08: DUP3 00002d09: DUP7 00002d0a: ADD 00002d0b: SWAP1 00002d0c: SWAP4 00002d0d: MSTORE 00002d0e: PUSH1 0x40 00002d10: SWAP1 00002d11: KECCAK256 00002d12: SWAP2 00002d13: SWAP1 00002d14: SWAP2 00002d15: SSTORE 00002d16: PUSH2 0x0c67 00002d19: JUMP 00002d1a: JUMPDEST 00002d1b: POP 00002d1c: PUSH0 00002d1d: PUSH2 0x0c67 00002d20: JUMP 00002d21: JUMPDEST 00002d22: PUSH0 00002d23: DUP2 00002d24: DUP2 00002d25: MSTORE 00002d26: PUSH1 0x01 00002d28: DUP4 00002d29: ADD 00002d2a: PUSH1 0x20 00002d2c: MSTORE 00002d2d: PUSH1 0x40 00002d2f: DUP2 00002d30: KECCAK256 00002d31: SLOAD 00002d32: DUP1 00002d33: ISZERO 00002d34: PUSH2 0x2ae1 00002d37: JUMPI 00002d38: PUSH0 00002d39: PUSH2 0x2d43 00002d3c: PUSH1 0x01 00002d3e: DUP4 00002d3f: PUSH2 0x3658 00002d42: JUMP 00002d43: JUMPDEST 00002d44: DUP6 00002d45: SLOAD 00002d46: SWAP1 00002d47: SWAP2 00002d48: POP 00002d49: PUSH0 00002d4a: SWAP1 00002d4b: PUSH2 0x2d56 00002d4e: SWAP1 00002d4f: PUSH1 0x01 00002d51: SWAP1 00002d52: PUSH2 0x3658 00002d55: JUMP 00002d56: JUMPDEST 00002d57: SWAP1 00002d58: POP 00002d59: DUP1 00002d5a: DUP3 00002d5b: EQ 00002d5c: PUSH2 0x2db5 00002d5f: JUMPI 00002d60: PUSH0 00002d61: DUP7 00002d62: PUSH0 00002d63: ADD 00002d64: DUP3 00002d65: DUP2 00002d66: SLOAD 00002d67: DUP2 00002d68: LT 00002d69: PUSH2 0x2d74 00002d6c: JUMPI 00002d6d: PUSH2 0x2d74 00002d70: PUSH2 0x3858 00002d73: JUMP 00002d74: JUMPDEST 00002d75: SWAP1 00002d76: PUSH0 00002d77: MSTORE 00002d78: PUSH1 0x20 00002d7a: PUSH0 00002d7b: KECCAK256 00002d7c: ADD 00002d7d: SLOAD 00002d7e: SWAP1 00002d7f: POP 00002d80: DUP1 00002d81: DUP8 00002d82: PUSH0 00002d83: ADD 00002d84: DUP5 00002d85: DUP2 00002d86: SLOAD 00002d87: DUP2 00002d88: LT 00002d89: PUSH2 0x2d94 00002d8c: JUMPI 00002d8d: PUSH2 0x2d94 00002d90: PUSH2 0x3858 00002d93: JUMP 00002d94: JUMPDEST 00002d95: PUSH0 00002d96: SWAP2 00002d97: DUP3 00002d98: MSTORE 00002d99: PUSH1 0x20 00002d9b: DUP1 00002d9c: DUP4 00002d9d: KECCAK256 00002d9e: SWAP1 00002d9f: SWAP2 00002da0: ADD 00002da1: SWAP3 00002da2: SWAP1 00002da3: SWAP3 00002da4: SSTORE 00002da5: SWAP2 00002da6: DUP3 00002da7: MSTORE 00002da8: PUSH1 0x01 00002daa: DUP9 00002dab: ADD 00002dac: SWAP1 00002dad: MSTORE 00002dae: PUSH1 0x40 00002db0: SWAP1 00002db1: KECCAK256 00002db2: DUP4 00002db3: SWAP1 00002db4: SSTORE 00002db5: JUMPDEST 00002db6: DUP6 00002db7: SLOAD 00002db8: DUP7 00002db9: SWAP1 00002dba: DUP1 00002dbb: PUSH2 0x2dc6 00002dbe: JUMPI 00002dbf: PUSH2 0x2dc6 00002dc2: PUSH2 0x386c 00002dc5: JUMP 00002dc6: JUMPDEST 00002dc7: PUSH1 0x01 00002dc9: SWAP1 00002dca: SUB 00002dcb: DUP2 00002dcc: DUP2 00002dcd: SWAP1 00002dce: PUSH0 00002dcf: MSTORE 00002dd0: PUSH1 0x20 00002dd2: PUSH0 00002dd3: KECCAK256 00002dd4: ADD 00002dd5: PUSH0 00002dd6: SWAP1 00002dd7: SSTORE 00002dd8: SWAP1 00002dd9: SSTORE 00002dda: DUP6 00002ddb: PUSH1 0x01 00002ddd: ADD 00002dde: PUSH0 00002ddf: DUP7 00002de0: DUP2 00002de1: MSTORE 00002de2: PUSH1 0x20 00002de4: ADD 00002de5: SWAP1 00002de6: DUP2 00002de7: MSTORE 00002de8: PUSH1 0x20 00002dea: ADD 00002deb: PUSH0 00002dec: KECCAK256 00002ded: PUSH0 00002dee: SWAP1 00002def: SSTORE 00002df0: PUSH1 0x01 00002df2: SWAP4 00002df3: POP 00002df4: POP 00002df5: POP 00002df6: POP 00002df7: PUSH2 0x0c67 00002dfa: JUMP 00002dfb: JUMPDEST 00002dfc: DUP1 00002dfd: PUSH1 0x01 00002dff: PUSH1 0x01 00002e01: PUSH1 0xa0 00002e03: SHL 00002e04: SUB 00002e05: AND 00002e06: EXTCODESIZE 00002e07: PUSH0 00002e08: SUB 00002e09: PUSH2 0x2e30 00002e0c: JUMPI 00002e0d: PUSH1 0x40 00002e0f: MLOAD 00002e10: PUSH4 0x4c9c8ce3 00002e15: PUSH1 0xe0 00002e17: SHL 00002e18: DUP2 00002e19: MSTORE 00002e1a: PUSH1 0x01 00002e1c: PUSH1 0x01 00002e1e: PUSH1 0xa0 00002e20: SHL 00002e21: SUB 00002e22: DUP3 00002e23: AND 00002e24: PUSH1 0x04 00002e26: DUP3 00002e27: ADD 00002e28: MSTORE 00002e29: PUSH1 0x24 00002e2b: ADD 00002e2c: PUSH2 0x0e15 00002e2f: JUMP 00002e30: JUMPDEST 00002e31: PUSH0 00002e32: MLOAD 00002e33: PUSH1 0x20 00002e35: PUSH2 0x38a1 00002e38: PUSH0 00002e39: CODECOPY 00002e3a: PUSH0 00002e3b: MLOAD 00002e3c: SWAP1 00002e3d: PUSH0 00002e3e: MSTORE 00002e3f: DUP1 00002e40: SLOAD 00002e41: PUSH1 0x01 00002e43: PUSH1 0x01 00002e45: PUSH1 0xa0 00002e47: SHL 00002e48: SUB 00002e49: NOT 00002e4a: AND 00002e4b: PUSH1 0x01 00002e4d: PUSH1 0x01 00002e4f: PUSH1 0xa0 00002e51: SHL 00002e52: SUB 00002e53: SWAP3 00002e54: SWAP1 00002e55: SWAP3 00002e56: AND 00002e57: SWAP2 00002e58: SWAP1 00002e59: SWAP2 00002e5a: OR 00002e5b: SWAP1 00002e5c: SSTORE 00002e5d: JUMP 00002e5e: JUMPDEST 00002e5f: PUSH1 0x60 00002e61: PUSH0 00002e62: PUSH0 00002e63: DUP5 00002e64: PUSH1 0x01 00002e66: PUSH1 0x01 00002e68: PUSH1 0xa0 00002e6a: SHL 00002e6b: SUB 00002e6c: AND 00002e6d: DUP5 00002e6e: PUSH1 0x40 00002e70: MLOAD 00002e71: PUSH2 0x2e7a 00002e74: SWAP2 00002e75: SWAP1 00002e76: PUSH2 0x3827 00002e79: JUMP 00002e7a: JUMPDEST 00002e7b: PUSH0 00002e7c: PUSH1 0x40 00002e7e: MLOAD 00002e7f: DUP1 00002e80: DUP4 00002e81: SUB 00002e82: DUP2 00002e83: DUP6 00002e84: GAS 00002e85: DELEGATECALL 00002e86: SWAP2 00002e87: POP 00002e88: POP 00002e89: RETURNDATASIZE 00002e8a: DUP1 00002e8b: PUSH0 00002e8c: DUP2 00002e8d: EQ 00002e8e: PUSH2 0x2eb2 00002e91: JUMPI 00002e92: PUSH1 0x40 00002e94: MLOAD 00002e95: SWAP2 00002e96: POP 00002e97: PUSH1 0x1f 00002e99: NOT 00002e9a: PUSH1 0x3f 00002e9c: RETURNDATASIZE 00002e9d: ADD 00002e9e: AND 00002e9f: DUP3 00002ea0: ADD 00002ea1: PUSH1 0x40 00002ea3: MSTORE 00002ea4: RETURNDATASIZE 00002ea5: DUP3 00002ea6: MSTORE 00002ea7: RETURNDATASIZE 00002ea8: PUSH0 00002ea9: PUSH1 0x20 00002eab: DUP5 00002eac: ADD 00002ead: RETURNDATACOPY 00002eae: PUSH2 0x2eb7 00002eb1: JUMP 00002eb2: JUMPDEST 00002eb3: PUSH1 0x60 00002eb5: SWAP2 00002eb6: POP 00002eb7: JUMPDEST 00002eb8: POP 00002eb9: SWAP2 00002eba: POP 00002ebb: SWAP2 00002ebc: POP 00002ebd: PUSH2 0x2ec7 00002ec0: DUP6 00002ec1: DUP4 00002ec2: DUP4 00002ec3: PUSH2 0x2f94 00002ec6: JUMP 00002ec7: JUMPDEST 00002ec8: SWAP6 00002ec9: SWAP5 00002eca: POP 00002ecb: POP 00002ecc: POP 00002ecd: POP 00002ece: POP 00002ecf: JUMP 00002ed0: JUMPDEST 00002ed1: CALLVALUE 00002ed2: ISZERO 00002ed3: PUSH2 0x235b 00002ed6: JUMPI 00002ed7: PUSH1 0x40 00002ed9: MLOAD 00002eda: PUSH4 0xb398979f 00002edf: PUSH1 0xe0 00002ee1: SHL 00002ee2: DUP2 00002ee3: MSTORE 00002ee4: PUSH1 0x04 00002ee6: ADD 00002ee7: PUSH1 0x40 00002ee9: MLOAD 00002eea: DUP1 00002eeb: SWAP2 00002eec: SUB 00002eed: SWAP1 00002eee: REVERT 00002eef: JUMPDEST 00002ef0: PUSH0 00002ef1: PUSH0 00002ef2: PUSH1 0x20 00002ef4: PUSH0 00002ef5: DUP5 00002ef6: MLOAD 00002ef7: PUSH1 0x20 00002ef9: DUP7 00002efa: ADD 00002efb: PUSH0 00002efc: DUP9 00002efd: GAS 00002efe: CALL 00002eff: DUP1 00002f00: PUSH2 0x2f0e 00002f03: JUMPI 00002f04: PUSH1 0x40 00002f06: MLOAD 00002f07: RETURNDATASIZE 00002f08: PUSH0 00002f09: DUP3 00002f0a: RETURNDATACOPY 00002f0b: RETURNDATASIZE 00002f0c: DUP2 00002f0d: REVERT 00002f0e: JUMPDEST 00002f0f: POP 00002f10: POP 00002f11: PUSH0 00002f12: MLOAD 00002f13: RETURNDATASIZE 00002f14: SWAP2 00002f15: POP 00002f16: DUP2 00002f17: ISZERO 00002f18: PUSH2 0x2f25 00002f1b: JUMPI 00002f1c: DUP1 00002f1d: PUSH1 0x01 00002f1f: EQ 00002f20: ISZERO 00002f21: PUSH2 0x2f32 00002f24: JUMP 00002f25: JUMPDEST 00002f26: PUSH1 0x01 00002f28: PUSH1 0x01 00002f2a: PUSH1 0xa0 00002f2c: SHL 00002f2d: SUB 00002f2e: DUP5 00002f2f: AND 00002f30: EXTCODESIZE 00002f31: ISZERO 00002f32: JUMPDEST 00002f33: ISZERO 00002f34: PUSH2 0x1061 00002f37: JUMPI 00002f38: PUSH1 0x40 00002f3a: MLOAD 00002f3b: PUSH4 0x5274afe7 00002f40: PUSH1 0xe0 00002f42: SHL 00002f43: DUP2 00002f44: MSTORE 00002f45: PUSH1 0x01 00002f47: PUSH1 0x01 00002f49: PUSH1 0xa0 00002f4b: SHL 00002f4c: SUB 00002f4d: DUP6 00002f4e: AND 00002f4f: PUSH1 0x04 00002f51: DUP3 00002f52: ADD 00002f53: MSTORE 00002f54: PUSH1 0x24 00002f56: ADD 00002f57: PUSH2 0x0e15 00002f5a: JUMP 00002f5b: JUMPDEST 00002f5c: PUSH1 0x40 00002f5e: MLOAD 00002f5f: PUSH1 0x01 00002f61: PUSH1 0x01 00002f63: PUSH1 0xa0 00002f65: SHL 00002f66: SUB 00002f67: DUP5 00002f68: DUP2 00002f69: AND 00002f6a: PUSH1 0x24 00002f6c: DUP4 00002f6d: ADD 00002f6e: MSTORE 00002f6f: DUP4 00002f70: DUP2 00002f71: AND 00002f72: PUSH1 0x44 00002f74: DUP4 00002f75: ADD 00002f76: MSTORE 00002f77: PUSH1 0x64 00002f79: DUP3 00002f7a: ADD 00002f7b: DUP4 00002f7c: SWAP1 00002f7d: MSTORE 00002f7e: PUSH2 0x1061 00002f81: SWAP2 00002f82: DUP7 00002f83: SWAP2 00002f84: DUP3 00002f85: AND 00002f86: SWAP1 00002f87: PUSH4 0x23b872dd 00002f8c: SWAP1 00002f8d: PUSH1 0x84 00002f8f: ADD 00002f90: PUSH2 0x2c0d 00002f93: JUMP 00002f94: JUMPDEST 00002f95: PUSH1 0x60 00002f97: DUP3 00002f98: PUSH2 0x2fa9 00002f9b: JUMPI 00002f9c: PUSH2 0x2fa4 00002f9f: DUP3 00002fa0: PUSH2 0x2ff0 00002fa3: JUMP 00002fa4: JUMPDEST 00002fa5: PUSH2 0x0ffd 00002fa8: JUMP 00002fa9: JUMPDEST 00002faa: DUP2 00002fab: MLOAD 00002fac: ISZERO 00002fad: DUP1 00002fae: ISZERO 00002faf: PUSH2 0x2fc0 00002fb2: JUMPI 00002fb3: POP 00002fb4: PUSH1 0x01 00002fb6: PUSH1 0x01 00002fb8: PUSH1 0xa0 00002fba: SHL 00002fbb: SUB 00002fbc: DUP5 00002fbd: AND 00002fbe: EXTCODESIZE 00002fbf: ISZERO 00002fc0: JUMPDEST 00002fc1: ISZERO 00002fc2: PUSH2 0x2fe9 00002fc5: JUMPI 00002fc6: PUSH1 0x40 00002fc8: MLOAD 00002fc9: PUSH4 0x9996b315 00002fce: PUSH1 0xe0 00002fd0: SHL 00002fd1: DUP2 00002fd2: MSTORE 00002fd3: PUSH1 0x01 00002fd5: PUSH1 0x01 00002fd7: PUSH1 0xa0 00002fd9: SHL 00002fda: SUB 00002fdb: DUP6 00002fdc: AND 00002fdd: PUSH1 0x04 00002fdf: DUP3 00002fe0: ADD 00002fe1: MSTORE 00002fe2: PUSH1 0x24 00002fe4: ADD 00002fe5: PUSH2 0x0e15 00002fe8: JUMP 00002fe9: JUMPDEST 00002fea: POP 00002feb: DUP1 00002fec: PUSH2 0x0ffd 00002fef: JUMP 00002ff0: JUMPDEST 00002ff1: DUP1 00002ff2: MLOAD 00002ff3: ISZERO 00002ff4: PUSH2 0x2fff 00002ff7: JUMPI 00002ff8: DUP1 00002ff9: MLOAD 00002ffa: PUSH1 0x20 00002ffc: DUP3 00002ffd: ADD 00002ffe: REVERT 00002fff: JUMPDEST 00003000: PUSH1 0x40 00003002: MLOAD 00003003: PUSH4 0xd6bda275 00003008: PUSH1 0xe0 0000300a: SHL 0000300b: DUP2 0000300c: MSTORE 0000300d: PUSH1 0x04 0000300f: ADD 00003010: PUSH1 0x40 00003012: MLOAD 00003013: DUP1 00003014: SWAP2 00003015: SUB 00003016: SWAP1 00003017: REVERT 00003018: JUMPDEST 00003019: PUSH1 0x01 0000301b: PUSH1 0x01 0000301d: PUSH1 0xe0 0000301f: SHL 00003020: SUB 00003021: NOT 00003022: DUP2 00003023: AND 00003024: DUP2 00003025: EQ 00003026: PUSH2 0x209c 00003029: JUMPI 0000302a: PUSH0 0000302b: PUSH0 0000302c: REVERT 0000302d: JUMPDEST 0000302e: PUSH0 0000302f: PUSH1 0x20 00003031: DUP3 00003032: DUP5 00003033: SUB 00003034: SLT 00003035: ISZERO 00003036: PUSH2 0x303d 00003039: JUMPI 0000303a: PUSH0 0000303b: PUSH0 0000303c: REVERT 0000303d: JUMPDEST 0000303e: DUP2 0000303f: CALLDATALOAD 00003040: PUSH2 0x0ffd 00003043: DUP2 00003044: PUSH2 0x3018 00003047: JUMP 00003048: JUMPDEST 00003049: PUSH0 0000304a: DUP2 0000304b: MLOAD 0000304c: DUP1 0000304d: DUP5 0000304e: MSTORE 0000304f: DUP1 00003050: PUSH1 0x20 00003052: DUP5 00003053: ADD 00003054: PUSH1 0x20 00003056: DUP7 00003057: ADD 00003058: MCOPY 00003059: PUSH0 0000305a: PUSH1 0x20 0000305c: DUP3 0000305d: DUP7 0000305e: ADD 0000305f: ADD 00003060: MSTORE 00003061: PUSH1 0x20 00003063: PUSH1 0x1f 00003065: NOT 00003066: PUSH1 0x1f 00003068: DUP4 00003069: ADD 0000306a: AND 0000306b: DUP6 0000306c: ADD 0000306d: ADD 0000306e: SWAP2 0000306f: POP 00003070: POP 00003071: SWAP3 00003072: SWAP2 00003073: POP 00003074: POP 00003075: JUMP 00003076: JUMPDEST 00003077: PUSH1 0x20 00003079: DUP2 0000307a: MSTORE 0000307b: PUSH0 0000307c: PUSH2 0x0ffd 0000307f: PUSH1 0x20 00003081: DUP4 00003082: ADD 00003083: DUP5 00003084: PUSH2 0x3048 00003087: JUMP 00003088: JUMPDEST 00003089: PUSH0 0000308a: PUSH1 0x20 0000308c: DUP3 0000308d: DUP5 0000308e: SUB 0000308f: SLT 00003090: ISZERO 00003091: PUSH2 0x3098 00003094: JUMPI 00003095: PUSH0 00003096: PUSH0 00003097: REVERT 00003098: JUMPDEST 00003099: POP 0000309a: CALLDATALOAD 0000309b: SWAP2 0000309c: SWAP1 0000309d: POP 0000309e: JUMP 0000309f: JUMPDEST 000030a0: DUP1 000030a1: CALLDATALOAD 000030a2: PUSH1 0x01 000030a4: PUSH1 0x01 000030a6: PUSH1 0xa0 000030a8: SHL 000030a9: SUB 000030aa: DUP2 000030ab: AND 000030ac: DUP2 000030ad: EQ 000030ae: PUSH2 0x11ef 000030b1: JUMPI 000030b2: PUSH0 000030b3: PUSH0 000030b4: REVERT 000030b5: JUMPDEST 000030b6: PUSH0 000030b7: PUSH0 000030b8: PUSH1 0x40 000030ba: DUP4 000030bb: DUP6 000030bc: SUB 000030bd: SLT 000030be: ISZERO 000030bf: PUSH2 0x30c6 000030c2: JUMPI 000030c3: PUSH0 000030c4: PUSH0 000030c5: REVERT 000030c6: JUMPDEST 000030c7: PUSH2 0x30cf 000030ca: DUP4 000030cb: PUSH2 0x309f 000030ce: JUMP 000030cf: JUMPDEST 000030d0: SWAP5 000030d1: PUSH1 0x20 000030d3: SWAP4 000030d4: SWAP1 000030d5: SWAP4 000030d6: ADD 000030d7: CALLDATALOAD 000030d8: SWAP4 000030d9: POP 000030da: POP 000030db: POP 000030dc: JUMP 000030dd: JUMPDEST 000030de: PUSH0 000030df: PUSH0 000030e0: PUSH0 000030e1: PUSH1 0x60 000030e3: DUP5 000030e4: DUP7 000030e5: SUB 000030e6: SLT 000030e7: ISZERO 000030e8: PUSH2 0x30ef 000030eb: JUMPI 000030ec: PUSH0 000030ed: PUSH0 000030ee: REVERT 000030ef: JUMPDEST 000030f0: DUP4 000030f1: CALLDATALOAD 000030f2: SWAP3 000030f3: POP 000030f4: PUSH2 0x30ff 000030f7: PUSH1 0x20 000030f9: DUP6 000030fa: ADD 000030fb: PUSH2 0x309f 000030fe: JUMP 000030ff: JUMPDEST 00003100: SWAP2 00003101: POP 00003102: PUSH1 0x40 00003104: DUP5 00003105: ADD 00003106: CALLDATALOAD 00003107: PUSH2 0xffff 0000310a: DUP2 0000310b: AND 0000310c: DUP2 0000310d: EQ 0000310e: PUSH2 0x3115 00003111: JUMPI 00003112: PUSH0 00003113: PUSH0 00003114: REVERT 00003115: JUMPDEST 00003116: DUP1 00003117: SWAP2 00003118: POP 00003119: POP 0000311a: SWAP3 0000311b: POP 0000311c: SWAP3 0000311d: POP 0000311e: SWAP3 0000311f: JUMP 00003120: JUMPDEST 00003121: PUSH0 00003122: PUSH0 00003123: PUSH0 00003124: PUSH1 0x60 00003126: DUP5 00003127: DUP7 00003128: SUB 00003129: SLT 0000312a: ISZERO 0000312b: PUSH2 0x3132 0000312e: JUMPI 0000312f: PUSH0 00003130: PUSH0 00003131: REVERT 00003132: JUMPDEST 00003133: PUSH2 0x313b 00003136: DUP5 00003137: PUSH2 0x309f 0000313a: JUMP 0000313b: JUMPDEST 0000313c: SWAP3 0000313d: POP 0000313e: PUSH2 0x3149 00003141: PUSH1 0x20 00003143: DUP6 00003144: ADD 00003145: PUSH2 0x309f 00003148: JUMP 00003149: JUMPDEST 0000314a: SWAP3 0000314b: SWAP6 0000314c: SWAP3 0000314d: SWAP5 0000314e: POP 0000314f: POP 00003150: POP 00003151: PUSH1 0x40 00003153: SWAP2 00003154: SWAP1 00003155: SWAP2 00003156: ADD 00003157: CALLDATALOAD 00003158: SWAP1 00003159: JUMP 0000315a: JUMPDEST 0000315b: PUSH0 0000315c: PUSH1 0x20 0000315e: DUP3 0000315f: DUP5 00003160: SUB 00003161: SLT 00003162: ISZERO 00003163: PUSH2 0x316a 00003166: JUMPI 00003167: PUSH0 00003168: PUSH0 00003169: REVERT 0000316a: JUMPDEST 0000316b: PUSH2 0x0ffd 0000316e: DUP3 0000316f: PUSH2 0x309f 00003172: JUMP 00003173: JUMPDEST 00003174: PUSH0 00003175: PUSH0 00003176: PUSH1 0x40 00003178: DUP4 00003179: DUP6 0000317a: SUB 0000317b: SLT 0000317c: ISZERO 0000317d: PUSH2 0x3184 00003180: JUMPI 00003181: PUSH0 00003182: PUSH0 00003183: REVERT 00003184: JUMPDEST 00003185: DUP3 00003186: CALLDATALOAD 00003187: SWAP2 00003188: POP 00003189: PUSH2 0x3194 0000318c: PUSH1 0x20 0000318e: DUP5 0000318f: ADD 00003190: PUSH2 0x309f 00003193: JUMP 00003194: JUMPDEST 00003195: SWAP1 00003196: POP 00003197: SWAP3 00003198: POP 00003199: SWAP3 0000319a: SWAP1 0000319b: POP 0000319c: JUMP 0000319d: JUMPDEST 0000319e: PUSH4 0x4e487b71 000031a3: PUSH1 0xe0 000031a5: SHL 000031a6: PUSH0 000031a7: MSTORE 000031a8: PUSH1 0x41 000031aa: PUSH1 0x04 000031ac: MSTORE 000031ad: PUSH1 0x24 000031af: PUSH0 000031b0: REVERT 000031b1: JUMPDEST 000031b2: PUSH0 000031b3: DUP3 000031b4: PUSH1 0x1f 000031b6: DUP4 000031b7: ADD 000031b8: SLT 000031b9: PUSH2 0x31c0 000031bc: JUMPI 000031bd: PUSH0 000031be: PUSH0 000031bf: REVERT 000031c0: JUMPDEST 000031c1: DUP2 000031c2: CALLDATALOAD 000031c3: PUSH1 0x20 000031c5: DUP4 000031c6: ADD 000031c7: PUSH0 000031c8: PUSH0 000031c9: PUSH1 0x01 000031cb: PUSH1 0x01 000031cd: PUSH1 0x40 000031cf: SHL 000031d0: SUB 000031d1: DUP5 000031d2: GT 000031d3: ISZERO 000031d4: PUSH2 0x31df 000031d7: JUMPI 000031d8: PUSH2 0x31df 000031db: PUSH2 0x319d 000031de: JUMP 000031df: JUMPDEST 000031e0: POP 000031e1: PUSH1 0x40 000031e3: MLOAD 000031e4: PUSH1 0x1f 000031e6: NOT 000031e7: PUSH1 0x1f 000031e9: DUP6 000031ea: ADD 000031eb: DUP2 000031ec: AND 000031ed: PUSH1 0x3f 000031ef: ADD 000031f0: AND 000031f1: DUP2 000031f2: ADD 000031f3: DUP2 000031f4: DUP2 000031f5: LT 000031f6: PUSH1 0x01 000031f8: PUSH1 0x01 000031fa: PUSH1 0x40 000031fc: SHL 000031fd: SUB 000031fe: DUP3 000031ff: GT 00003200: OR 00003201: ISZERO 00003202: PUSH2 0x320d 00003205: JUMPI 00003206: PUSH2 0x320d 00003209: PUSH2 0x319d 0000320c: JUMP 0000320d: JUMPDEST 0000320e: PUSH1 0x40 00003210: MSTORE 00003211: DUP4 00003212: DUP2 00003213: MSTORE 00003214: SWAP1 00003215: POP 00003216: DUP1 00003217: DUP3 00003218: DUP5 00003219: ADD 0000321a: DUP8 0000321b: LT 0000321c: ISZERO 0000321d: PUSH2 0x3224 00003220: JUMPI 00003221: PUSH0 00003222: PUSH0 00003223: REVERT 00003224: JUMPDEST 00003225: DUP4 00003226: DUP4 00003227: PUSH1 0x20 00003229: DUP4 0000322a: ADD 0000322b: CALLDATACOPY 0000322c: PUSH0 0000322d: PUSH1 0x20 0000322f: DUP6 00003230: DUP4 00003231: ADD 00003232: ADD 00003233: MSTORE 00003234: DUP1 00003235: SWAP5 00003236: POP 00003237: POP 00003238: POP 00003239: POP 0000323a: POP 0000323b: SWAP3 0000323c: SWAP2 0000323d: POP 0000323e: POP 0000323f: JUMP 00003240: JUMPDEST 00003241: PUSH0 00003242: PUSH0 00003243: PUSH1 0x40 00003245: DUP4 00003246: DUP6 00003247: SUB 00003248: SLT 00003249: ISZERO 0000324a: PUSH2 0x3251 0000324d: JUMPI 0000324e: PUSH0 0000324f: PUSH0 00003250: REVERT 00003251: JUMPDEST 00003252: PUSH2 0x325a 00003255: DUP4 00003256: PUSH2 0x309f 00003259: JUMP 0000325a: JUMPDEST 0000325b: SWAP2 0000325c: POP 0000325d: PUSH1 0x20 0000325f: DUP4 00003260: ADD 00003261: CALLDATALOAD 00003262: PUSH1 0x01 00003264: PUSH1 0x01 00003266: PUSH1 0x40 00003268: SHL 00003269: SUB 0000326a: DUP2 0000326b: GT 0000326c: ISZERO 0000326d: PUSH2 0x3274 00003270: JUMPI 00003271: PUSH0 00003272: PUSH0 00003273: REVERT 00003274: JUMPDEST 00003275: PUSH2 0x3280 00003278: DUP6 00003279: DUP3 0000327a: DUP7 0000327b: ADD 0000327c: PUSH2 0x31b1 0000327f: JUMP 00003280: JUMPDEST 00003281: SWAP2 00003282: POP 00003283: POP 00003284: SWAP3 00003285: POP 00003286: SWAP3 00003287: SWAP1 00003288: POP 00003289: JUMP 0000328a: JUMPDEST 0000328b: PUSH0 0000328c: PUSH0 0000328d: PUSH0 0000328e: PUSH0 0000328f: PUSH1 0x80 00003291: DUP6 00003292: DUP8 00003293: SUB 00003294: SLT 00003295: ISZERO 00003296: PUSH2 0x329d 00003299: JUMPI 0000329a: PUSH0 0000329b: PUSH0 0000329c: REVERT 0000329d: JUMPDEST 0000329e: PUSH2 0x32a6 000032a1: DUP6 000032a2: PUSH2 0x309f 000032a5: JUMP 000032a6: JUMPDEST 000032a7: SWAP4 000032a8: POP 000032a9: PUSH1 0x20 000032ab: DUP6 000032ac: ADD 000032ad: CALLDATALOAD 000032ae: PUSH1 0x01 000032b0: PUSH1 0x01 000032b2: PUSH1 0x40 000032b4: SHL 000032b5: SUB 000032b6: DUP2 000032b7: GT 000032b8: ISZERO 000032b9: PUSH2 0x32c0 000032bc: JUMPI 000032bd: PUSH0 000032be: PUSH0 000032bf: REVERT 000032c0: JUMPDEST 000032c1: PUSH2 0x32cc 000032c4: DUP8 000032c5: DUP3 000032c6: DUP9 000032c7: ADD 000032c8: PUSH2 0x31b1 000032cb: JUMP 000032cc: JUMPDEST 000032cd: SWAP4 000032ce: POP 000032cf: POP 000032d0: PUSH1 0x40 000032d2: DUP6 000032d3: ADD 000032d4: CALLDATALOAD 000032d5: PUSH1 0x01 000032d7: PUSH1 0x01 000032d9: PUSH1 0x40 000032db: SHL 000032dc: SUB 000032dd: DUP2 000032de: GT 000032df: ISZERO 000032e0: PUSH2 0x32e7 000032e3: JUMPI 000032e4: PUSH0 000032e5: PUSH0 000032e6: REVERT 000032e7: JUMPDEST 000032e8: PUSH2 0x32f3 000032eb: DUP8 000032ec: DUP3 000032ed: DUP9 000032ee: ADD 000032ef: PUSH2 0x31b1 000032f2: JUMP 000032f3: JUMPDEST 000032f4: SWAP3 000032f5: POP 000032f6: POP 000032f7: PUSH2 0x3302 000032fa: PUSH1 0x60 000032fc: DUP7 000032fd: ADD 000032fe: PUSH2 0x309f 00003301: JUMP 00003302: JUMPDEST 00003303: SWAP1 00003304: POP 00003305: SWAP3 00003306: SWAP6 00003307: SWAP2 00003308: SWAP5 00003309: POP 0000330a: SWAP3 0000330b: POP 0000330c: JUMP 0000330d: JUMPDEST 0000330e: PUSH0 0000330f: PUSH0 00003310: PUSH1 0x40 00003312: DUP4 00003313: DUP6 00003314: SUB 00003315: SLT 00003316: ISZERO 00003317: PUSH2 0x331e 0000331a: JUMPI 0000331b: PUSH0 0000331c: PUSH0 0000331d: REVERT 0000331e: JUMPDEST 0000331f: POP 00003320: POP 00003321: DUP1 00003322: CALLDATALOAD 00003323: SWAP3 00003324: PUSH1 0x20 00003326: SWAP1 00003327: SWAP2 00003328: ADD 00003329: CALLDATALOAD 0000332a: SWAP2 0000332b: POP 0000332c: JUMP 0000332d: JUMPDEST 0000332e: PUSH0 0000332f: PUSH0 00003330: PUSH0 00003331: PUSH0 00003332: PUSH0 00003333: PUSH1 0xa0 00003335: DUP7 00003336: DUP9 00003337: SUB 00003338: SLT 00003339: ISZERO 0000333a: PUSH2 0x3341 0000333d: JUMPI 0000333e: PUSH0 0000333f: PUSH0 00003340: REVERT 00003341: JUMPDEST 00003342: PUSH2 0x334a 00003345: DUP7 00003346: PUSH2 0x309f 00003349: JUMP 0000334a: JUMPDEST 0000334b: SWAP5 0000334c: POP 0000334d: PUSH2 0x3358 00003350: PUSH1 0x20 00003352: DUP8 00003353: ADD 00003354: PUSH2 0x309f 00003357: JUMP 00003358: JUMPDEST 00003359: SWAP4 0000335a: POP 0000335b: PUSH1 0x40 0000335d: DUP7 0000335e: ADD 0000335f: CALLDATALOAD 00003360: SWAP3 00003361: POP 00003362: PUSH1 0x60 00003364: DUP7 00003365: ADD 00003366: CALLDATALOAD 00003367: SWAP2 00003368: POP 00003369: PUSH1 0x80 0000336b: DUP7 0000336c: ADD 0000336d: CALLDATALOAD 0000336e: PUSH1 0x01 00003370: PUSH1 0x01 00003372: PUSH1 0x40 00003374: SHL 00003375: SUB 00003376: DUP2 00003377: GT 00003378: ISZERO 00003379: PUSH2 0x3380 0000337c: JUMPI 0000337d: PUSH0 0000337e: PUSH0 0000337f: REVERT 00003380: JUMPDEST 00003381: PUSH2 0x338c 00003384: DUP9 00003385: DUP3 00003386: DUP10 00003387: ADD 00003388: PUSH2 0x31b1 0000338b: JUMP 0000338c: JUMPDEST 0000338d: SWAP2 0000338e: POP 0000338f: POP 00003390: SWAP3 00003391: SWAP6 00003392: POP 00003393: SWAP3 00003394: SWAP6 00003395: SWAP1 00003396: SWAP4 00003397: POP 00003398: JUMP 00003399: JUMPDEST 0000339a: PUSH1 0x20 0000339c: DUP1 0000339d: DUP3 0000339e: MSTORE 0000339f: DUP3 000033a0: MLOAD 000033a1: DUP3 000033a2: DUP3 000033a3: ADD 000033a4: DUP2 000033a5: SWAP1 000033a6: MSTORE 000033a7: PUSH0 000033a8: SWAP2 000033a9: DUP5 000033aa: ADD 000033ab: SWAP1 000033ac: PUSH1 0x40 000033ae: DUP5 000033af: ADD 000033b0: SWAP1 000033b1: DUP4 000033b2: JUMPDEST 000033b3: DUP2 000033b4: DUP2 000033b5: LT 000033b6: ISZERO 000033b7: PUSH2 0x33d9 000033ba: JUMPI 000033bb: DUP4 000033bc: MLOAD 000033bd: PUSH1 0x01 000033bf: PUSH1 0x01 000033c1: PUSH1 0xa0 000033c3: SHL 000033c4: SUB 000033c5: AND 000033c6: DUP4 000033c7: MSTORE 000033c8: PUSH1 0x20 000033ca: SWAP4 000033cb: DUP5 000033cc: ADD 000033cd: SWAP4 000033ce: SWAP1 000033cf: SWAP3 000033d0: ADD 000033d1: SWAP2 000033d2: PUSH1 0x01 000033d4: ADD 000033d5: PUSH2 0x33b2 000033d8: JUMP 000033d9: JUMPDEST 000033da: POP 000033db: SWAP1 000033dc: SWAP6 000033dd: SWAP5 000033de: POP 000033df: POP 000033e0: POP 000033e1: POP 000033e2: POP 000033e3: JUMP 000033e4: JUMPDEST 000033e5: PUSH0 000033e6: PUSH0 000033e7: PUSH0 000033e8: PUSH1 0x60 000033ea: DUP5 000033eb: DUP7 000033ec: SUB 000033ed: SLT 000033ee: ISZERO 000033ef: PUSH2 0x33f6 000033f2: JUMPI 000033f3: PUSH0 000033f4: PUSH0 000033f5: REVERT 000033f6: JUMPDEST 000033f7: DUP4 000033f8: CALLDATALOAD 000033f9: SWAP3 000033fa: POP 000033fb: PUSH2 0x3406 000033fe: PUSH1 0x20 00003400: DUP6 00003401: ADD 00003402: PUSH2 0x309f 00003405: JUMP 00003406: JUMPDEST 00003407: SWAP2 00003408: POP 00003409: PUSH2 0x3414 0000340c: PUSH1 0x40 0000340e: DUP6 0000340f: ADD 00003410: PUSH2 0x309f 00003413: JUMP 00003414: JUMPDEST 00003415: SWAP1 00003416: POP 00003417: SWAP3 00003418: POP 00003419: SWAP3 0000341a: POP 0000341b: SWAP3 0000341c: JUMP 0000341d: JUMPDEST 0000341e: PUSH1 0xff 00003420: DUP2 00003421: AND 00003422: DUP2 00003423: EQ 00003424: PUSH2 0x209c 00003427: JUMPI 00003428: PUSH0 00003429: PUSH0 0000342a: REVERT 0000342b: JUMPDEST 0000342c: PUSH0 0000342d: PUSH0 0000342e: PUSH0 0000342f: PUSH0 00003430: PUSH0 00003431: PUSH0 00003432: PUSH0 00003433: PUSH1 0xe0 00003435: DUP9 00003436: DUP11 00003437: SUB 00003438: SLT 00003439: ISZERO 0000343a: PUSH2 0x3441 0000343d: JUMPI 0000343e: PUSH0 0000343f: PUSH0 00003440: REVERT 00003441: JUMPDEST 00003442: PUSH2 0x344a 00003445: DUP9 00003446: PUSH2 0x309f 00003449: JUMP 0000344a: JUMPDEST 0000344b: SWAP7 0000344c: POP 0000344d: PUSH2 0x3458 00003450: PUSH1 0x20 00003452: DUP10 00003453: ADD 00003454: PUSH2 0x309f 00003457: JUMP 00003458: JUMPDEST 00003459: SWAP6 0000345a: POP 0000345b: PUSH1 0x40 0000345d: DUP9 0000345e: ADD 0000345f: CALLDATALOAD 00003460: SWAP5 00003461: POP 00003462: PUSH1 0x60 00003464: DUP9 00003465: ADD 00003466: CALLDATALOAD 00003467: SWAP4 00003468: POP 00003469: PUSH1 0x80 0000346b: DUP9 0000346c: ADD 0000346d: CALLDATALOAD 0000346e: PUSH2 0x3476 00003471: DUP2 00003472: PUSH2 0x341d 00003475: JUMP 00003476: JUMPDEST 00003477: SWAP7 00003478: SWAP10 00003479: SWAP6 0000347a: SWAP9 0000347b: POP 0000347c: SWAP4 0000347d: SWAP7 0000347e: SWAP3 0000347f: SWAP6 00003480: SWAP5 00003481: PUSH1 0xa0 00003483: DUP5 00003484: ADD 00003485: CALLDATALOAD 00003486: SWAP5 00003487: POP 00003488: PUSH1 0xc0 0000348a: SWAP1 0000348b: SWAP4 0000348c: ADD 0000348d: CALLDATALOAD 0000348e: SWAP3 0000348f: SWAP2 00003490: POP 00003491: POP 00003492: JUMP 00003493: JUMPDEST 00003494: PUSH0 00003495: PUSH0 00003496: PUSH1 0x40 00003498: DUP4 00003499: DUP6 0000349a: SUB 0000349b: SLT 0000349c: ISZERO 0000349d: PUSH2 0x34a4 000034a0: JUMPI 000034a1: PUSH0 000034a2: PUSH0 000034a3: REVERT 000034a4: JUMPDEST 000034a5: PUSH2 0x34ad 000034a8: DUP4 000034a9: PUSH2 0x309f 000034ac: JUMP 000034ad: JUMPDEST 000034ae: SWAP2 000034af: POP 000034b0: PUSH2 0x3194 000034b3: PUSH1 0x20 000034b5: DUP5 000034b6: ADD 000034b7: PUSH2 0x309f 000034ba: JUMP 000034bb: JUMPDEST 000034bc: PUSH1 0x01 000034be: DUP2 000034bf: DUP2 000034c0: SHR 000034c1: SWAP1 000034c2: DUP3 000034c3: AND 000034c4: DUP1 000034c5: PUSH2 0x34cf 000034c8: JUMPI 000034c9: PUSH1 0x7f 000034cb: DUP3 000034cc: AND 000034cd: SWAP2 000034ce: POP 000034cf: JUMPDEST 000034d0: PUSH1 0x20 000034d2: DUP3 000034d3: LT 000034d4: DUP2 000034d5: SUB 000034d6: PUSH2 0x34ed 000034d9: JUMPI 000034da: PUSH4 0x4e487b71 000034df: PUSH1 0xe0 000034e1: SHL 000034e2: PUSH0 000034e3: MSTORE 000034e4: PUSH1 0x22 000034e6: PUSH1 0x04 000034e8: MSTORE 000034e9: PUSH1 0x24 000034eb: PUSH0 000034ec: REVERT 000034ed: JUMPDEST 000034ee: POP 000034ef: SWAP2 000034f0: SWAP1 000034f1: POP 000034f2: JUMP 000034f3: JUMPDEST 000034f4: PUSH4 0x4e487b71 000034f9: PUSH1 0xe0 000034fb: SHL 000034fc: PUSH0 000034fd: MSTORE 000034fe: PUSH1 0x11 00003500: PUSH1 0x04 00003502: MSTORE 00003503: PUSH1 0x24 00003505: PUSH0 00003506: REVERT 00003507: JUMPDEST 00003508: DUP1 00003509: DUP3 0000350a: MUL 0000350b: DUP2 0000350c: ISZERO 0000350d: DUP3 0000350e: DUP3 0000350f: DIV 00003510: DUP5 00003511: EQ 00003512: OR 00003513: PUSH2 0x0c67 00003516: JUMPI 00003517: PUSH2 0x0c67 0000351a: PUSH2 0x34f3 0000351d: JUMP 0000351e: JUMPDEST 0000351f: PUSH4 0x4e487b71 00003524: PUSH1 0xe0 00003526: SHL 00003527: PUSH0 00003528: MSTORE 00003529: PUSH1 0x12 0000352b: PUSH1 0x04 0000352d: MSTORE 0000352e: PUSH1 0x24 00003530: PUSH0 00003531: REVERT 00003532: JUMPDEST 00003533: PUSH0 00003534: DUP3 00003535: PUSH2 0x354c 00003538: JUMPI 00003539: PUSH4 0x4e487b71 0000353e: PUSH1 0xe0 00003540: SHL 00003541: PUSH0 00003542: MSTORE 00003543: PUSH1 0x12 00003545: PUSH1 0x04 00003547: MSTORE 00003548: PUSH1 0x24 0000354a: PUSH0 0000354b: REVERT 0000354c: JUMPDEST 0000354d: POP 0000354e: DIV 0000354f: SWAP1 00003550: JUMP 00003551: JUMPDEST 00003552: PUSH0 00003553: PUSH1 0x20 00003555: DUP3 00003556: DUP5 00003557: SUB 00003558: SLT 00003559: ISZERO 0000355a: PUSH2 0x3561 0000355d: JUMPI 0000355e: PUSH0 0000355f: PUSH0 00003560: REVERT 00003561: JUMPDEST 00003562: POP 00003563: MLOAD 00003564: SWAP2 00003565: SWAP1 00003566: POP 00003567: JUMP 00003568: JUMPDEST 00003569: PUSH1 0x20 0000356b: DUP1 0000356c: DUP3 0000356d: MSTORE 0000356e: PUSH1 0x21 00003570: SWAP1 00003571: DUP3 00003572: ADD 00003573: MSTORE 00003574: PUSH32 0x537061726b5661756c742f696e73756666696369656e742d6c69717569646974 00003595: PUSH1 0x40 00003597: DUP3 00003598: ADD 00003599: MSTORE 0000359a: PUSH1 0x79 0000359c: PUSH1 0xf8 0000359e: SHL 0000359f: PUSH1 0x60 000035a1: DUP3 000035a2: ADD 000035a3: MSTORE 000035a4: PUSH1 0x80 000035a6: ADD 000035a7: SWAP1 000035a8: JUMP 000035a9: JUMPDEST 000035aa: PUSH1 0x20 000035ac: DUP1 000035ad: DUP3 000035ae: MSTORE 000035af: PUSH1 0x1a 000035b1: SWAP1 000035b2: DUP3 000035b3: ADD 000035b4: MSTORE 000035b5: PUSH32 0x537061726b5661756c742f696e76616c69642d61646472657373000000000000 000035d6: PUSH1 0x40 000035d8: DUP3 000035d9: ADD 000035da: MSTORE 000035db: PUSH1 0x60 000035dd: ADD 000035de: SWAP1 000035df: JUMP 000035e0: JUMPDEST 000035e1: PUSH1 0x20 000035e3: DUP1 000035e4: DUP3 000035e5: MSTORE 000035e6: PUSH1 0x1f 000035e8: SWAP1 000035e9: DUP3 000035ea: ADD 000035eb: MSTORE 000035ec: PUSH32 0x537061726b5661756c742f696e73756666696369656e742d62616c616e636500 0000360d: PUSH1 0x40 0000360f: DUP3 00003610: ADD 00003611: MSTORE 00003612: PUSH1 0x60 00003614: ADD 00003615: SWAP1 00003616: JUMP 00003617: JUMPDEST 00003618: PUSH1 0x20 0000361a: DUP1 0000361b: DUP3 0000361c: MSTORE 0000361d: PUSH1 0x21 0000361f: SWAP1 00003620: DUP3 00003621: ADD 00003622: MSTORE 00003623: PUSH32 0x537061726b5661756c742f696e73756666696369656e742d616c6c6f77616e63 00003644: PUSH1 0x40 00003646: DUP3 00003647: ADD 00003648: MSTORE 00003649: PUSH1 0x65 0000364b: PUSH1 0xf8 0000364d: SHL 0000364e: PUSH1 0x60 00003650: DUP3 00003651: ADD 00003652: MSTORE 00003653: PUSH1 0x80 00003655: ADD 00003656: SWAP1 00003657: JUMP 00003658: JUMPDEST 00003659: DUP2 0000365a: DUP2 0000365b: SUB 0000365c: DUP2 0000365d: DUP2 0000365e: GT 0000365f: ISZERO 00003660: PUSH2 0x0c67 00003663: JUMPI 00003664: PUSH2 0x0c67 00003667: PUSH2 0x34f3 0000366a: JUMP 0000366b: JUMPDEST 0000366c: PUSH1 0x1f 0000366e: DUP3 0000366f: GT 00003670: ISZERO 00003671: PUSH2 0x10a4 00003674: JUMPI 00003675: DUP1 00003676: PUSH0 00003677: MSTORE 00003678: PUSH1 0x20 0000367a: PUSH0 0000367b: KECCAK256 0000367c: PUSH1 0x1f 0000367e: DUP5 0000367f: ADD 00003680: PUSH1 0x05 00003682: SHR 00003683: DUP2 00003684: ADD 00003685: PUSH1 0x20 00003687: DUP6 00003688: LT 00003689: ISZERO 0000368a: PUSH2 0x3690 0000368d: JUMPI 0000368e: POP 0000368f: DUP1 00003690: JUMPDEST 00003691: PUSH1 0x1f 00003693: DUP5 00003694: ADD 00003695: PUSH1 0x05 00003697: SHR 00003698: DUP3 00003699: ADD 0000369a: SWAP2 0000369b: POP 0000369c: JUMPDEST 0000369d: DUP2 0000369e: DUP2 0000369f: LT 000036a0: ISZERO 000036a1: PUSH2 0x36af 000036a4: JUMPI 000036a5: PUSH0 000036a6: DUP2 000036a7: SSTORE 000036a8: PUSH1 0x01 000036aa: ADD 000036ab: PUSH2 0x369c 000036ae: JUMP 000036af: JUMPDEST 000036b0: POP 000036b1: POP 000036b2: POP 000036b3: POP 000036b4: POP 000036b5: JUMP 000036b6: JUMPDEST 000036b7: DUP2 000036b8: MLOAD 000036b9: PUSH1 0x01 000036bb: PUSH1 0x01 000036bd: PUSH1 0x40 000036bf: SHL 000036c0: SUB 000036c1: DUP2 000036c2: GT 000036c3: ISZERO 000036c4: PUSH2 0x36cf 000036c7: JUMPI 000036c8: PUSH2 0x36cf 000036cb: PUSH2 0x319d 000036ce: JUMP 000036cf: JUMPDEST 000036d0: PUSH2 0x36e3 000036d3: DUP2 000036d4: PUSH2 0x36dd 000036d7: DUP5 000036d8: SLOAD 000036d9: PUSH2 0x34bb 000036dc: JUMP 000036dd: JUMPDEST 000036de: DUP5 000036df: PUSH2 0x366b 000036e2: JUMP 000036e3: JUMPDEST 000036e4: PUSH1 0x20 000036e6: PUSH1 0x1f 000036e8: DUP3 000036e9: GT 000036ea: PUSH1 0x01 000036ec: DUP2 000036ed: EQ 000036ee: PUSH2 0x3715 000036f1: JUMPI 000036f2: PUSH0 000036f3: DUP4 000036f4: ISZERO 000036f5: PUSH2 0x36fe 000036f8: JUMPI 000036f9: POP 000036fa: DUP5 000036fb: DUP3 000036fc: ADD 000036fd: MLOAD 000036fe: JUMPDEST 000036ff: PUSH0 00003700: NOT 00003701: PUSH1 0x03 00003703: DUP6 00003704: SWAP1 00003705: SHL 00003706: SHR 00003707: NOT 00003708: AND 00003709: PUSH1 0x01 0000370b: DUP5 0000370c: SWAP1 0000370d: SHL 0000370e: OR 0000370f: DUP5 00003710: SSTORE 00003711: PUSH2 0x36af 00003714: JUMP 00003715: JUMPDEST 00003716: PUSH0 00003717: DUP5 00003718: DUP2 00003719: MSTORE 0000371a: PUSH1 0x20 0000371c: DUP2 0000371d: KECCAK256 0000371e: PUSH1 0x1f 00003720: NOT 00003721: DUP6 00003722: AND 00003723: SWAP2 00003724: JUMPDEST 00003725: DUP3 00003726: DUP2 00003727: LT 00003728: ISZERO 00003729: PUSH2 0x3744 0000372c: JUMPI 0000372d: DUP8 0000372e: DUP6 0000372f: ADD 00003730: MLOAD 00003731: DUP3 00003732: SSTORE 00003733: PUSH1 0x20 00003735: SWAP5 00003736: DUP6 00003737: ADD 00003738: SWAP5 00003739: PUSH1 0x01 0000373b: SWAP1 0000373c: SWAP3 0000373d: ADD 0000373e: SWAP2 0000373f: ADD 00003740: PUSH2 0x3724 00003743: JUMP 00003744: JUMPDEST 00003745: POP 00003746: DUP5 00003747: DUP3 00003748: LT 00003749: ISZERO 0000374a: PUSH2 0x3761 0000374d: JUMPI 0000374e: DUP7 0000374f: DUP5 00003750: ADD 00003751: MLOAD 00003752: PUSH0 00003753: NOT 00003754: PUSH1 0x03 00003756: DUP8 00003757: SWAP1 00003758: SHL 00003759: PUSH1 0xf8 0000375b: AND 0000375c: SHR 0000375d: NOT 0000375e: AND 0000375f: DUP2 00003760: SSTORE 00003761: JUMPDEST 00003762: POP 00003763: POP 00003764: POP 00003765: POP 00003766: PUSH1 0x01 00003768: SWAP1 00003769: DUP2 0000376a: SHL 0000376b: ADD 0000376c: SWAP1 0000376d: SSTORE 0000376e: POP 0000376f: JUMP 00003770: JUMPDEST 00003771: PUSH0 00003772: PUSH1 0x20 00003774: DUP3 00003775: DUP5 00003776: SUB 00003777: SLT 00003778: ISZERO 00003779: PUSH2 0x3780 0000377c: JUMPI 0000377d: PUSH0 0000377e: PUSH0 0000377f: REVERT 00003780: JUMPDEST 00003781: DUP2 00003782: MLOAD 00003783: PUSH2 0x0ffd 00003786: DUP2 00003787: PUSH2 0x341d 0000378a: JUMP 0000378b: JUMPDEST 0000378c: PUSH0 0000378d: PUSH0 0000378e: DUP4 0000378f: SLOAD 00003790: PUSH2 0x3798 00003793: DUP2 00003794: PUSH2 0x34bb 00003797: JUMP 00003798: JUMPDEST 00003799: PUSH1 0x01 0000379b: DUP3 0000379c: AND 0000379d: DUP1 0000379e: ISZERO 0000379f: PUSH2 0x37af 000037a2: JUMPI 000037a3: PUSH1 0x01 000037a5: DUP2 000037a6: EQ 000037a7: PUSH2 0x37c4 000037aa: JUMPI 000037ab: PUSH2 0x37f1 000037ae: JUMP 000037af: JUMPDEST 000037b0: PUSH1 0xff 000037b2: NOT 000037b3: DUP4 000037b4: AND 000037b5: DUP7 000037b6: MSTORE 000037b7: DUP2 000037b8: ISZERO 000037b9: ISZERO 000037ba: DUP3 000037bb: MUL 000037bc: DUP7 000037bd: ADD 000037be: SWAP4 000037bf: POP 000037c0: PUSH2 0x37f1 000037c3: JUMP 000037c4: JUMPDEST 000037c5: DUP7 000037c6: PUSH0 000037c7: MSTORE 000037c8: PUSH1 0x20 000037ca: PUSH0 000037cb: KECCAK256 000037cc: PUSH0 000037cd: JUMPDEST 000037ce: DUP4 000037cf: DUP2 000037d0: LT 000037d1: ISZERO 000037d2: PUSH2 0x37e9 000037d5: JUMPI 000037d6: DUP2 000037d7: SLOAD 000037d8: DUP9 000037d9: DUP3 000037da: ADD 000037db: MSTORE 000037dc: PUSH1 0x01 000037de: SWAP1 000037df: SWAP2 000037e0: ADD 000037e1: SWAP1 000037e2: PUSH1 0x20 000037e4: ADD 000037e5: PUSH2 0x37cd 000037e8: JUMP 000037e9: JUMPDEST 000037ea: POP 000037eb: POP 000037ec: DUP2 000037ed: DUP7 000037ee: ADD 000037ef: SWAP4 000037f0: POP 000037f1: JUMPDEST 000037f2: POP 000037f3: SWAP2 000037f4: SWAP6 000037f5: SWAP5 000037f6: POP 000037f7: POP 000037f8: POP 000037f9: POP 000037fa: POP 000037fb: JUMP 000037fc: JUMPDEST 000037fd: DUP1 000037fe: DUP3 000037ff: ADD 00003800: DUP1 00003801: DUP3 00003802: GT 00003803: ISZERO 00003804: PUSH2 0x0c67 00003807: JUMPI 00003808: PUSH2 0x0c67 0000380b: PUSH2 0x34f3 0000380e: JUMP 0000380f: JUMPDEST 00003810: DUP3 00003811: DUP2 00003812: MSTORE 00003813: PUSH1 0x40 00003815: PUSH1 0x20 00003817: DUP3 00003818: ADD 00003819: MSTORE 0000381a: PUSH0 0000381b: PUSH2 0x10d2 0000381e: PUSH1 0x40 00003820: DUP4 00003821: ADD 00003822: DUP5 00003823: PUSH2 0x3048 00003826: JUMP 00003827: JUMPDEST 00003828: PUSH0 00003829: DUP3 0000382a: MLOAD 0000382b: DUP1 0000382c: PUSH1 0x20 0000382e: DUP6 0000382f: ADD 00003830: DUP5 00003831: MCOPY 00003832: PUSH0 00003833: SWAP3 00003834: ADD 00003835: SWAP2 00003836: DUP3 00003837: MSTORE 00003838: POP 00003839: SWAP2 0000383a: SWAP1 0000383b: POP 0000383c: JUMP 0000383d: JUMPDEST 0000383e: PUSH0 0000383f: PUSH1 0x20 00003841: DUP3 00003842: DUP5 00003843: SUB 00003844: SLT 00003845: ISZERO 00003846: PUSH2 0x384d 00003849: JUMPI 0000384a: PUSH0 0000384b: PUSH0 0000384c: REVERT 0000384d: JUMPDEST 0000384e: DUP2 0000384f: MLOAD 00003850: PUSH2 0x0ffd 00003853: DUP2 00003854: PUSH2 0x3018 00003857: JUMP 00003858: JUMPDEST 00003859: PUSH4 0x4e487b71 0000385e: PUSH1 0xe0 00003860: SHL 00003861: PUSH0 00003862: MSTORE 00003863: PUSH1 0x32 00003865: PUSH1 0x04 00003867: MSTORE 00003868: PUSH1 0x24 0000386a: PUSH0 0000386b: REVERT 0000386c: JUMPDEST 0000386d: PUSH4 0x4e487b71 00003872: PUSH1 0xe0 00003874: SHL 00003875: PUSH0 00003876: MSTORE 00003877: PUSH1 0x31 00003879: PUSH1 0x04 0000387b: MSTORE 0000387c: PUSH1 0x24 0000387e: PUSH0 0000387f: REVERT 00003880: INVALID 00003881: UNKNOWN(0xC1) 00003882: UNKNOWN(0xF6) 00003883: INVALID 00003884: UNKNOWN(0x24) 00003885: PUSH3 0x1ce81e 00003889: UNKNOWN(0xC5) 0000388a: DUP3 0000388b: PUSH29 0xaf0253cadb74709b061630e6b55e82371705932000360894a13ba1a321 000038a9: MOD 000038aa: PUSH8 0xc828492db98dca3e 000038b3: KECCAK256 000038b4: PUSH23 0xcc3735a920a3ca505d382bbcddf252ad1be2c89b69c2b0 000038cc: PUSH9 0xfc378daa952ba7f163 000038d6: UNKNOWN(0xC4) 000038d7: LOG1 000038d8: AND 000038d9: UNKNOWN(0x28) 000038da: CREATE2 000038db: GAS 000038dc: UNKNOWN(0x4D) 000038dd: CREATE2 000038de: UNKNOWN(0x23) 000038df: UNKNOWN(0xB3) 000038e0: UNKNOWN(0xEF) 000038e1: MUL 000038e2: UNKNOWN(0xDD) 000038e3: PUSH28 0xc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268 00003900: STOP 00003901: POP 00003902: DUP15 00003903: UNKNOWN(0xE8) 00003904: UNKNOWN(0x2D) 00003905: SIGNEXTEND 00003906: UNKNOWN(0xDF) 00003907: DIV 00003908: UNKNOWN(0xE0) 00003909: STOP 0000390a: ADDRESS 0000390b: GASPRICE 0000390c: UNKNOWN(0xB4) 0000390d: CREATE 0000390e: UNKNOWN(0x2B) 0000390f: OR 00003910: UNKNOWN(0x2E) 00003911: PUSH1 0xc5 00003913: CALLCODE 00003914: UNKNOWN(0xD3) 00003915: JUMPDEST 00003916: UNKNOWN(0x2E) 00003917: SSTORE 00003918: SWAP12 00003919: SDIV 0000391a: UNKNOWN(0xBE) 0000391b: UNKNOWN(0xD2) 0000391c: UNKNOWN(0xCF) 0000391d: BLOCKHASH 0000391e: EXTCODESIZE 0000391f: UNKNOWN(0xB5) 00003920: DUP12 00003921: LOG2 00003922: PUSH5 0x6970667358 00003928: UNKNOWN(0x22) 00003929: SLT 0000392a: KECCAK256 0000392b: ORIGIN 0000392c: SWAP1 0000392d: ADDRESS 0000392e: UNKNOWN(0xD6) 0000392f: UNKNOWN(0xD6) 00003930: SWAP15 00003931: UNKNOWN(0xB7) 00003932: UNKNOWN(0xB2) 00003933: STATICCALL 00003934: UNKNOWN(0x1F) 00003935: DUP8 00003936: PUSH7 0x70e9b93d587817 0000393e: CALLER 0000393f: SAR 00003940: UNKNOWN(0xD4) 00003941: UNKNOWN(0xBC) 00003942: UNKNOWN(0xBB) 00003943: PUSH10 0xee4149cbe18f3764736f 0000394e: PUSH13
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | upgradeability | detector | Untrusted DELEGATECALL target reachable | 55 | no | no |
viewtrace_id: 0xea640c94c92ac61c3aa53a17d67d376d895a586832de622021cd5606809638bf
validation_json{
"sink": "DELEGATECALL",
"errors": 0,
"status": "unknown",
"attempts": 192,
"trace_id": "0xea640c94c92ac61c3aa53a17d67d376d895a586832de622021cd5606809638bf",
"confirmed": false,
"trace_mode": "callTracer",
"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": "0xd9d5f4cb",
"selector": "0xd9d5f4cb",
"calldata_variants": [
"0xd9d5f4cb",
"0xd9d5f4cb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdbd5edc7",
"selector": "0xdbd5edc7",
"calldata_variants": [
"0xdbd5edc7",
"0xdbd5edc70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdd62ed3e",
"selector": "0xdd62ed3e",
"calldata_variants": [
"0xdd62ed3e",
"0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xef8b30f7",
"selector": "0xef8b30f7",
"calldata_variants": [
"0xef8b30f7",
"0xef8b30f70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf65de94a",
"selector": "0xf65de94a",
"calldata_variants": [
"0xf65de94a",
"0xf65de94a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xce96cb77",
"selector": "0xce96cb77",
"calldata_variants": [
"0xce96cb77",
"0xce96cb770000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd505accf",
"selector": "0xd505accf",
"calldata_variants": [
"0xd505accf",
"0xd505accf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd547741f",
"selector": "0xd547741f",
"calldata_variants": [
"0xd547741f",
"0xd547741f0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 11909,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
}
],
"guards_detected": [
{
"pc": 14635,
"type": "tx_origin_used"
}
],
"delegatecall_count": 1,
"untrusted_delegatecall_count": 1
}
|
| high | auth | detector | Authorization based on tx.origin | 70 | no | — |
viewvalidation_json{
"reason": "missing sink mapping",
"status": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xd9d5f4cb",
"selector": "0xd9d5f4cb",
"calldata_variants": [
"0xd9d5f4cb",
"0xd9d5f4cb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdbd5edc7",
"selector": "0xdbd5edc7",
"calldata_variants": [
"0xdbd5edc7",
"0xdbd5edc70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdd62ed3e",
"selector": "0xdd62ed3e",
"calldata_variants": [
"0xdd62ed3e",
"0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xef8b30f7",
"selector": "0xef8b30f7",
"calldata_variants": [
"0xef8b30f7",
"0xef8b30f70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf65de94a",
"selector": "0xf65de94a",
"calldata_variants": [
"0xf65de94a",
"0xf65de94a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xce96cb77",
"selector": "0xce96cb77",
"calldata_variants": [
"0xce96cb77",
"0xce96cb770000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd505accf",
"selector": "0xd505accf",
"calldata_variants": [
"0xd505accf",
"0xd505accf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd547741f",
"selector": "0xd547741f",
"calldata_variants": [
"0xd547741f",
"0xd547741f0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 14635,
"type": "tx_origin_used"
}
]
}
|
| medium | other | detector | CREATE/CREATE2 reachable | 45 | no | no |
viewtrace_id: 0xb1aa4a5ec2b9dea5e894433c33f11b2887f1ef58a353b22d65a502546f58a8ee
validation_json{
"sink": "CREATE",
"errors": 0,
"status": "unknown",
"attempts": 32,
"trace_id": "0xb1aa4a5ec2b9dea5e894433c33f11b2887f1ef58a353b22d65a502546f58a8ee",
"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": "0xd9d5f4cb",
"selector": "0xd9d5f4cb",
"calldata_variants": [
"0xd9d5f4cb",
"0xd9d5f4cb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdbd5edc7",
"selector": "0xdbd5edc7",
"calldata_variants": [
"0xdbd5edc7",
"0xdbd5edc70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdd62ed3e",
"selector": "0xdd62ed3e",
"calldata_variants": [
"0xdd62ed3e",
"0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xef8b30f7",
"selector": "0xef8b30f7",
"calldata_variants": [
"0xef8b30f7",
"0xef8b30f70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf65de94a",
"selector": "0xf65de94a",
"calldata_variants": [
"0xf65de94a",
"0xf65de94a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xce96cb77",
"selector": "0xce96cb77",
"calldata_variants": [
"0xce96cb77",
"0xce96cb770000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd505accf",
"selector": "0xd505accf",
"calldata_variants": [
"0xd505accf",
"0xd505accf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd547741f",
"selector": "0xd547741f",
"calldata_variants": [
"0xd547741f",
"0xd547741f0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"create_count": 1,
"create2_count": 2
}
|
| medium | upgradeability | cast | DELEGATECALL present | 80 | no | — |
viewevidence_json{
"notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
"delegatecall_count": 1
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0x21b0e1cd540ee58328fd1917148eaa288f607123729ba27c8b100e1e104bb34c
call_targets:
0x1b992302652a92611dcd5090d1cb388c6377f455
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x21b0e1cd540ee58328fd1917148eaa288f607123729ba27c8b100e1e104bb34c",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x1b992302652a92611dcd5090d1cb388c6377f455"
],
"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": "0xd9d5f4cb",
"selector": "0xd9d5f4cb",
"calldata_variants": [
"0xd9d5f4cb",
"0xd9d5f4cb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdbd5edc7",
"selector": "0xdbd5edc7",
"calldata_variants": [
"0xdbd5edc7",
"0xdbd5edc70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdd62ed3e",
"selector": "0xdd62ed3e",
"calldata_variants": [
"0xdd62ed3e",
"0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xef8b30f7",
"selector": "0xef8b30f7",
"calldata_variants": [
"0xef8b30f7",
"0xef8b30f70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf65de94a",
"selector": "0xf65de94a",
"calldata_variants": [
"0xf65de94a",
"0xf65de94a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xce96cb77",
"selector": "0xce96cb77",
"calldata_variants": [
"0xce96cb77",
"0xce96cb770000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd505accf",
"selector": "0xd505accf",
"calldata_variants": [
"0xd505accf",
"0xd505accf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd547741f",
"selector": "0xd547741f",
"calldata_variants": [
"0xd547741f",
"0xd547741f0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 14611,
"opcode": "CALLCODE",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 1,
"guards_detected": [
{
"pc": 14635,
"type": "tx_origin_used"
}
]
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0x21b0e1cd540ee58328fd1917148eaa288f607123729ba27c8b100e1e104bb34c
call_targets:
0x1b992302652a92611dcd5090d1cb388c6377f455
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x21b0e1cd540ee58328fd1917148eaa288f607123729ba27c8b100e1e104bb34c",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x1b992302652a92611dcd5090d1cb388c6377f455"
],
"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": "0xd9d5f4cb",
"selector": "0xd9d5f4cb",
"calldata_variants": [
"0xd9d5f4cb",
"0xd9d5f4cb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdbd5edc7",
"selector": "0xdbd5edc7",
"calldata_variants": [
"0xdbd5edc7",
"0xdbd5edc70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdd62ed3e",
"selector": "0xdd62ed3e",
"calldata_variants": [
"0xdd62ed3e",
"0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xef8b30f7",
"selector": "0xef8b30f7",
"calldata_variants": [
"0xef8b30f7",
"0xef8b30f70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf65de94a",
"selector": "0xf65de94a",
"calldata_variants": [
"0xf65de94a",
"0xf65de94a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xce96cb77",
"selector": "0xce96cb77",
"calldata_variants": [
"0xce96cb77",
"0xce96cb770000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd505accf",
"selector": "0xd505accf",
"calldata_variants": [
"0xd505accf",
"0xd505accf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd547741f",
"selector": "0xd547741f",
"calldata_variants": [
"0xd547741f",
"0xd547741f0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 12030,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "constant_zero",
"target_expression_category": "computed"
},
{
"pc": 14611,
"opcode": "CALLCODE",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 2,
"guards_detected": [
{
"pc": 14635,
"type": "tx_origin_used"
}
],
"untrusted_call_count": 2
}
|
| low | reentrancy | codex | Reentrancy during `_mint` can bypass `depositCap` | 65 | no | — |
viewevidence_json{
"evidence": "`_mint` checks `depositCap` and then calls `_pullAsset` (external call) before updating `totalSupply`/`balanceOf`, so reentrancy sees stale state.",
"locations": [
"contracts/src/SparkVault.sol:442",
"contracts/src/SparkVault.sol:450",
"contracts/src/SparkVault.sol:452"
],
"recommendation": "Follow CEI or add a reentrancy guard: update `totalSupply`/`balanceOf` (or track pending deposits) before external token transfers, or block reentrancy on `deposit`/`mint` so the cap check cannot be bypassed.",
"exploit_scenario": "If the underlying asset is ERC777 or otherwise reentrant, an attacker can reenter `deposit`/`mint` during `_pullAsset`. Each reentrant call observes the same pre-mint `totalSupply`, so `totalAssets() + assets <= depositCap` passes repeatedly, allowing deposits that cumulatively exceed the cap within a single transaction."
}
|
| 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": 2
}
|
| info | other | cast | Heavy CALL-family usage | 55 | no | — |
viewevidence_json{
"notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
"call_family_count": 13
}
|
| info | other | cast | Heavy EXTCODE*/BALANCE usage | 55 | no | — |
viewevidence_json{
"notes": "frequent external code or balance checks; may indicate introspection or validation logic",
"ext_balance_count": 6
}
|
| info | other | codex | Shares minted without verifying actual assets received | 60 | no | — |
viewevidence_json{
"evidence": "`deposit`/`mint` derive shares from `assets` and `_mint` does not check the actual amount received via `_pullAsset`.",
"locations": [
"contracts/src/SparkVault.sol:277",
"contracts/src/SparkVault.sol:442",
"contracts/src/SparkVault.sol:465"
],
"recommendation": "Either constrain `asset` to non-fee-on-transfer tokens or compute shares based on the balance delta after `_pullAsset` (and/or revert if the received amount is less than expected).",
"exploit_scenario": "If the configured asset is fee-on-transfer/rebasing, `_mint` mints shares based on the user-supplied `assets` value even when fewer tokens arrive. An attacker can deposit with high transfer fees to overmint shares and dilute other holders."
}
|