TW
Tripwire
Find contracts. Test them. Review real vulns.

Analysis Run

b92d2e03-21a2-487f-9e4b-54e0e3b1a93c

failed
Chain ID
1
Address
Block Number
Created
Sat, Dec 27, 2025 9:47 PM
Review Summary

What survived the funnel

Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?

Confirmed
0
Validated
0
Source
Verified
Review Backing
Present
Best current signal
Untrusted DELEGATECALL target reachable
crit 0 high 0 proxy context implementation known
Review Checklist
1. Read the findings table first. Ignore raw jobs until the result looks real.
2. Confirm attacker control, not just the existence of a sink.
3. Confirm money or privilege impact.
4. Keep it if the behavior is real. Kill it if this is normal proxy, admin, or upgrade plumbing.

Processing Jobs

Status & attempts
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

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: yes
Verified Source: yes

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
2
No findings?
no
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.
View stderr
[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"]}]}
Metadata
{
    "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
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
1
Selfdestruct
0
CREATE2
2
CALL-family (heavy)
13
EXT*/BALANCE
6
Total opcodes
9439
Flags
delegatecall_present create_opcodes_present heavy_ext_balance_usage call_family_heavy
View cast disassembly output
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

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high upgradeability detector Untrusted DELEGATECALL target reachable 55 no no
view
trace_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
view
validation_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
view
trace_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
view
evidence_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
view
trace_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
view
trace_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
view
evidence_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
view
evidence_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
view
evidence_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
view
evidence_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
view
evidence_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."
}