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

Analysis Run

44965f42-5493-4803-b5d3-c3ecb3a30541

failed
Chain ID
1
Address
Block Number
Created
Mon, Dec 29, 2025 6:34 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 CALL target/value reachable
crit 0 high 0 direct contract
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
30554 report.consolidate complete 1 / 1 3 months ago
104183 artifact.fetch failed 1 / 3 1 week ago
104184 tool.cast_disasm complete 1 / 3 1 week ago
104185 analysis.bundle complete 1 / 3 1 week ago
104186 capability.graph complete 1 / 3 1 week ago
104187 detector.run complete 1 / 3 1 week ago
104188 validation.fork complete 1 / 3 1 week ago

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: no
Implementation:
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
Found 2 issues: unverified keeper-supplied balance drives share pricing/accounting, and deposit accounting assumes full transfer amounts (fee-on-transfer tokens can inflate shares).
View stderr
[codex:1179114] OpenAI Codex v0.77.0 (research preview)
[codex:1179114] --------
[codex:1179114] workdir: /tmp/codex-multi-42otkjdm
[codex:1179114] model: gpt-5.2-codex
[codex:1179114] provider: openai
[codex:1179114] approval: never
[codex:1179114] sandbox: read-only
[codex:1179114] reasoning effort: xhigh
[codex:1179114] reasoning summaries: auto
[codex:1179114] session id: 019b6b5c-ca5e-7311-b592-6633cd6878bf
[codex:1179114] --------
[codex:1179114] user
[codex:1179114] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:1179114] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:1179114] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:1179114] 
[codex:1179114] Scope rules:
[codex:1179114] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:1179114] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:1179114] 
[codex:1179114] Output MUST be valid JSON matching the provided schema.
[codex:1179114] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:1179114] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:1179114] 
[codex:1179114] Output constraints (IMPORTANT):
[codex:1179114] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:1179114] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:1179114] mcp startup: no servers
[codex:1179114] 
[codex:1179114] thinking
[codex:1179114] **Preparing to read skills and audit files**
[codex:1179114] exec
[codex:1179114] /bin/bash -lc ls in /tmp/codex-multi-42otkjdm succeeded in 5ms:
[codex:1179114] AUDIT_BUNDLE.txt
[codex:1179114] codex-output-schema.json
[codex:1179114] contracts
[codex:1179114] 
[codex:1179114] thinking
[codex:1179114] **Reading AUDIT_BUNDLE file**
[codex:1179114] exec
[codex:1179114] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-42otkjdm succeeded in 6ms:
[codex:1179114] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:1179114] 
[codex:1179114] ================================================================================
[codex:1179114] FILE: contracts/@openzeppelin/contracts/access/Ownable.sol
[codex:1179114] ================================================================================
[codex:1179114] // SPDX-License-Identifier: MIT
[codex:1179114] // OpenZeppelin Contracts (last updated v5.0.0) (access/Ownable.sol)
[codex:1179114] 
[codex:1179114] pragma solidity ^0.8.20;
[codex:1179114] 
[codex:1179114] import {Context} from "../utils/Context.sol";
[codex:1179114] 
[codex:1179114] /**
[codex:1179114]  * @dev Contract module which provides a basic access control mechanism, where
[codex:1179114]  * there is an account (an owner) that can be granted exclusive access to
[codex:1179114]  * specific functions.
[codex:1179114]  *
[codex:1179114]  * The initial owner is set to the address provided by the deployer. This can
[codex:1179114]  * later be changed with {transferOwnership}.
[codex:1179114]  *
[codex:1179114] 
[codex:1179114] thinking
[codex:1179114] **Searching first-party contract files in bundle**
[codex:1179114] exec
[codex:1179114] /bin/bash -lc 'rg -n "''^FILE:" AUDIT_BUNDLE.txt' in /tmp/codex-multi-42otkjdm succeeded in 6ms:
[codex:1179114] 4:FILE: contracts/@openzeppelin/contracts/access/Ownable.sol
[codex:1179114] 108:FILE: contracts/@openzeppelin/contracts/access/Ownable2Step.sol
[codex:1179114] 177:FILE: contracts/@openzeppelin/contracts/interfaces/IERC1363.sol
[codex:1179114] 267:FILE: contracts/@openzeppelin/contracts/interfaces/IERC165.sol
[codex:1179114] 277:FILE: contracts/@openzeppelin/contracts/interfaces/IERC20.sol
[codex:1179114] 287:FILE: contracts/@openzeppelin/contracts/interfaces/draft-IERC6093.sol
[codex:1179114] 452:FILE: contracts/@openzeppelin/contracts/token/ERC20/ERC20.sol
[codex:1179114] 768:FILE: contracts/@openzeppelin/contracts/token/ERC20/IERC20.sol
[codex:1179114] 851:FILE: contracts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol
[codex:1179114] 881:FILE: contracts/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol
[codex:1179114] 1058:FILE: contracts/@openzeppelin/contracts/utils/Address.sol
[codex:1179114] 1213:FILE: contracts/@openzeppelin/contracts/utils/Context.sol
[codex:1179114] 1245:FILE: contracts/@openzeppelin/contracts/utils/Errors.sol
[codex:1179114] 1275:FILE: contracts/@openzeppelin/contracts/utils/ReentrancyGuard.sol
[codex:1179114] 1363:FILE: contracts/@openzeppelin/contracts/utils/introspection/IERC165.sol
[codex:1179114] 1392:FILE: contracts/contracts/Vault/TheoDepositVault.sol
[codex:1179114] 2030:FILE: contracts/contracts/Vault/interfaces/IWETH.sol
[codex:1179114] 2054:FILE: contracts/contracts/Vault/lib/ShareMath.sol
[codex:1179114] 2118:FILE: contracts/contracts/Vault/lib/Vault.sol
[codex:1179114] 2174:FILE: contracts/solady/src/utils/MerkleProofLib.sol
[codex:1179114] 
[codex:1179114] thinking
[codex:1179114] **Identifying key contract files to review**
[codex:1179114] exec
[codex:1179114] /bin/bash -lc "sed -n '1392,2053p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-42otkjdm succeeded in 5ms:
[codex:1179114] FILE: contracts/contracts/Vault/TheoDepositVault.sol
[codex:1179114] ================================================================================
[codex:1179114] // SPDX-License-Identifier: MIT
[codex:1179114] pragma solidity ^0.8.20;
[codex:1179114] 
[codex:1179114] import {ShareMath} from "./lib/ShareMath.sol";
[codex:1179114] import {Vault} from "./lib/Vault.sol";
[codex:1179114] import {IWETH} from "./interfaces/IWETH.sol";
[codex:1179114] import "@openzeppelin/contracts/access/Ownable2Step.sol";
[codex:1179114] import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
[codex:1179114] import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1179114] import {ERC20} from "@openzeppelin/contracts/token/ERC20/ERC20.sol";
[codex:1179114] import {ReentrancyGuard} from "@openzeppelin/contracts/utils/ReentrancyGuard.sol";
[codex:1179114] import {MerkleProofLib} from "solady/src/utils/MerkleProofLib.sol";
[codex:1179114] 
[codex:1179114] /**
[codex:1179114]  * @title TheoDepositVault
[codex:1179114]  * @notice A vault that allows users to deposit and withdraw from an off-chain managed Theo strategy
[codex:1179114]  * @notice Users receive shares for their deposits, which can be redeemed for assets
[codex:1179114]  * @notice The vault is managed by a keeper, who is responsible for rolling to the next round
[codex:1179114] 
[codex:1179114] 
[codex:1179114] 
[codex:1179114] 
[codex:1179114] 
[codex:1179114] 
[codex:1179114] thinking
[codex:1179114] **Assessing vulnerabilities in vault contract**
[codex:1179114] 
[codex:1179114] I’m analyzing TheoDepositVault’s main logic for potential security risks, focusing on reentrancy, access control, oracle manipulation via the keeper’s currentBalance parameter, accounting inconsistencies due to deflationary tokens, and price-per-share calculations around queued withdrawals in rollToNextRound. There’s a lot of nuanced interplay between these components that could affect trust assumptions and precision. Let’s explore these concerns carefully!
[codex:1179114] thinking
[codex:1179114] **Analyzing edge cases and arithmetic risks**
[codex:1179114] 
[codex:1179114] I'm exploring if rounding or integer arithmetic could cause underflows or inconsistencies in withdrawals and accounting, checking reentrancy protections around token transfers, risks from owner-settable parameters like asset and decimals, and the impact of relying on the keeper’s reported balances for price calculations. There’s a complex interplay of trust assumptions, token behaviors, and contract state updates that I’m carefully untangling.
[codex:1179114] thinking
[codex:1179114] **Examining token behaviors and state logic intricacies**
[codex:1179114] 
[codex:1179114] I’m investigating how fee-on-transfer or deflationary tokens might affect internal accounting and queued withdrawals, checking correctness of round increments and depositReceipt handling, verifying protections against reentrancy especially with ERC777 tokens, and considering implications of keeper-supplied balances on share pricing and potential DoS from incorrect inputs. The interplay of owner-configurable decimals and vault parameters also raises risks around share math and external integrations.
[codex:1179114] thinking
[codex:1179114] **Identifying oracle and accounting risks**
[codex:1179114] 
[codex:1179114] I'm analyzing proof verification nuances, deposit and withdrawal logic, and especially how reliance on keeper-supplied currentBalance in rollToNextRound can let a malicious keeper manipulate share prices and asset accounting. Fee-on-transfer tokens pose dilution risks since deposits may deliver fewer assets than recorded, impacting share minting and enabling value theft from other users if misconfigured.
[codex:1179114] thinking
[codex:1179114] **Examining fee-on-transfer tokens and asset handling risks**
[codex:1179114] 
[codex:1179114] I'm noting how fee-on-transfer tokens can cause share inflation since deposits credit full amounts before transfer, letting attackers gain more shares than actual assets deposited. Also, the vault’s WETH unwrap and ETH transfers may cause issues with contracts unable to receive ETH, though reentrancy guards protect against exploit here. The keeper’s trusted role in reporting balances continues to be a key trust assumption affecting share pricing and accounting.
[codex:1179114] thinking
[codex:1179114] **Preparing to locate relevant code sections for report**
[codex:1179114] exec
[codex:1179114] /bin/bash -lc "nl -ba contracts/contracts/Vault/TheoDepositVault.sol | sed -n '160,340p'" in /tmp/codex-multi-42otkjdm succeeded in 10ms:
[codex:1179114]    160	     */
[codex:1179114]    161	    function depositFor(uint256 amount, address creditor) external nonReentrant {
[codex:1179114]    162	        require(isPublic, "!public");
[codex:1179114]    163	        require(amount > 0, "!amount");
[codex:1179114]    164	        require(creditor != address(0), "!creditor");
[codex:1179114]    165	
[codex:1179114]    166	        _depositFor(amount, creditor);
[codex:1179114]    167	
[codex:1179114]    168	        // An approve() by the msg.sender is required beforehand
[codex:1179114]    169	        IERC20(vaultParams.asset).safeTransferFrom(msg.sender, address(this), amount);
[codex:1179114]    170	    }
[codex:1179114]    171	
[codex:1179114]    172	    /**
[codex:1179114]    173	     * @notice Deposits the native asset  from msg.sender added to `creditor`'s deposit.
[codex:1179114]    174	     * @notice Used for vault -> vault deposits on the user's behalf
[codex:1179114]    175	     * @param creditor is the address that can claim/withdraw deposited amount
[codex:1179114]    176	     */
[codex:1179114]    177	    function depositETHFor(address creditor) external payable nonReentrant {
[codex:1179114]    178	        require(isPublic, "!public");
[codex:1179114]    179	        require(vaultParams.asset == WETH, "!WETH");
[codex:1179114] 
[codex:1179114] thinking
[codex:1179114] **Tracking line numbers for deposit section**
[codex:1179114] exec
[codex:1179114] /bin/bash -lc "nl -ba contracts/contracts/Vault/TheoDepositVault.sol | sed -n '400,560p'" in /tmp/codex-multi-42otkjdm succeeded in 7ms:
[codex:1179114]    400	        require(numShares <= unredeemedShares, "Exceeds available");
[codex:1179114]    401	
[codex:1179114]    402	        // If we have a depositReceipt on the same round, BUT we have some unredeemed shares
[codex:1179114]    403	        // we debit from the unredeemedShares, but leave the amount field intact
[codex:1179114]    404	        // If the round has past, with no new deposits, we just zero it out for new deposits.
[codex:1179114]    405	        if (depositReceipt.round < currentRound) {
[codex:1179114]    406	            depositReceipts[msg.sender].amount = 0;
[codex:1179114]    407	        }
[codex:1179114]    408	
[codex:1179114]    409	        ShareMath.assertUint128(numShares);
[codex:1179114]    410	        depositReceipts[msg.sender].unredeemedShares = uint128(unredeemedShares - numShares);
[codex:1179114]    411	
[codex:1179114]    412	        emit Redeem(msg.sender, numShares, depositReceipt.round);
[codex:1179114]    413	
[codex:1179114]    414	        _transfer(address(this), msg.sender, numShares);
[codex:1179114]    415	    }
[codex:1179114]    416	
[codex:1179114]    417	    /************************************************
[codex:1179114]    418	     *  VAULT OPERATIONS
[codex:1179114]    419	     ***********************************************/
[codex:1179114] 
[codex:1179114] thinking
[codex:1179114] **Summarizing findings and line references**
[codex:1179114] exec
[codex:1179114] /bin/bash -lc "nl -ba contracts/contracts/Vault/TheoDepositVault.sol | sed -n '120,180p'" in /tmp/codex-multi-42otkjdm succeeded in 6ms:
[codex:1179114]    120	
[codex:1179114]    121	        vaultState.round = 1;
[codex:1179114]    122	    }
[codex:1179114]    123	
[codex:1179114]    124	    /************************************************
[codex:1179114]    125	     *  PUBLIC DEPOSITS
[codex:1179114]    126	     ***********************************************/
[codex:1179114]    127	
[codex:1179114]    128	    /**
[codex:1179114]    129	     * @notice Deposits the native asset from msg.sender.
[codex:1179114]    130	     */
[codex:1179114]    131	    function depositETH() external payable nonReentrant {
[codex:1179114]    132	        require(isPublic, "!public");
[codex:1179114]    133	        require(vaultParams.asset == WETH, "!WETH");
[codex:1179114]    134	        require(msg.value > 0, "!value");
[codex:1179114]    135	
[codex:1179114]    136	        _depositFor(msg.value, msg.sender);
[codex:1179114]    137	
[codex:1179114]    138	        IWETH(WETH).deposit{value: msg.value}();
[codex:1179114]    139	    }
[codex:1179114] 
[codex:1179114] thinking
[codex:1179114] **Drafting detailed JSON findings**
[codex:1179114] codex
[codex:1179114] {"no_findings":false,"summary":"Found 2 issues: unverified keeper-supplied balance drives share pricing/accounting, and deposit accounting assumes full transfer amounts (fee-on-transfer tokens can inflate shares).","findings":[{"severity":"medium","category":"oracle","title":"Unverified keeper-supplied currentBalance drives pricePerShare and locked accounting","exploit_scenario":"A malicious or compromised keeper can call rollToNextRound with an inflated or deflated currentBalance. This skews roundPricePerShare and lockedAmount, leading to incorrect share issuance and withdrawal accounting. Users can be diluted or withdrawals can revert due to insufficient assets while the keeper receives transfers based on the manipulated accounting.","recommendation":"Derive currentBalance from on-chain sources (e.g., pull strategy funds or query a trusted strategy contract), or enforce a verified oracle/adapter. Consider governance/timelock on keeper updates and sanity checks against on-chain balances.","evidence":"rollToNextRound uses the externally supplied currentBalance to compute newPricePerShare, queuedWithdrawAmount, and lockedAmount without on-chain validation.","locations":["contracts/contracts/Vault/TheoDepositVault.sol:429","contracts/contracts/Vault/TheoDepositVault.sol:434","contracts/contracts/Vault/TheoDepositVault.sol:460","contracts/contracts/Vault/TheoDepositVault.sol:466"]},{"severity":"low","category":"math","title":"Deposits credit the requested amount before transfer, allowing fee-on-transfer tokens to inflate shares","exploit_scenario":"If the vault asset is a fee-on-transfer or deflationary ERC20, _depositFor credits the full amount to deposit receipts and totalPending even though fewer tokens are received. An attacker can deposit such tokens to receive more shares than assets actually received and later withdraw a larger share of vault assets, diluting other users.","recommendation":"Measure actual received amount via balance-before/balance-after and use that value for receipts/totalPending, or restrict assets to non-deflationary ERC20s and enforce this in configuration.","evidence":"_depositFor updates accounting based on the input amount before safeTransferFrom executes, so it never checks the actual amount received.","locations":["contracts/contracts/Vault/TheoDepositVault.sol:145","contracts/contracts/Vault/TheoDepositVault.sol:193","contracts/contracts/Vault/TheoDepositVault.sol:219","contracts/contracts/Vault/TheoDepositVault.sol:252"]}]}
[codex:1179114] tokens used
[codex:1179114] 45,256
[codex:1179114] {"no_findings":false,"summary":"Found 2 issues: unverified keeper-supplied balance drives share pricing/accounting, and deposit accounting assumes full transfer amounts (fee-on-transfer tokens can inflate shares).","findings":[{"severity":"medium","category":"oracle","title":"Unverified keeper-supplied currentBalance drives pricePerShare and locked accounting","exploit_scenario":"A malicious or compromised keeper can call rollToNextRound with an inflated or deflated currentBalance. This skews roundPricePerShare and lockedAmount, leading to incorrect share issuance and withdrawal accounting. Users can be diluted or withdrawals can revert due to insufficient assets while the keeper receives transfers based on the manipulated accounting.","recommendation":"Derive currentBalance from on-chain sources (e.g., pull strategy funds or query a trusted strategy contract), or enforce a verified oracle/adapter. Consider governance/timelock on keeper updates and sanity checks against on-chain balances.","evidence":"rollToNextRound uses the externally supplied currentBalance to compute newPricePerShare, queuedWithdrawAmount, and lockedAmount without on-chain validation.","locations":["contracts/contracts/Vault/TheoDepositVault.sol:429","contracts/contracts/Vault/TheoDepositVault.sol:434","contracts/contracts/Vault/TheoDepositVault.sol:460","contracts/contracts/Vault/TheoDepositVault.sol:466"]},{"severity":"low","category":"math","title":"Deposits credit the requested amount before transfer, allowing fee-on-transfer tokens to inflate shares","exploit_scenario":"If the vault asset is a fee-on-transfer or deflationary ERC20, _depositFor credits the full amount to deposit receipts and totalPending even though fewer tokens are received. An attacker can deposit such tokens to receive more shares than assets actually received and later withdraw a larger share of vault assets, diluting other users.","recommendation":"Measure actual received amount via balance-before/balance-after and use that value for receipts/totalPending, or restrict assets to non-deflationary ERC20s and enforce this in configuration.","evidence":"_depositFor updates accounting based on the input amount before safeTransferFrom executes, so it never checks the actual amount received.","locations":["contracts/contracts/Vault/TheoDepositVault.sol:145","contracts/contracts/Vault/TheoDepositVault.sol:193","contracts/contracts/Vault/TheoDepositVault.sol:219","contracts/contracts/Vault/TheoDepositVault.sol:252"]}]}
Metadata
{
    "codex": {
        "ran_at": "2025-12-29T18:34:00.785848+00:00",
        "returncode": 0
    },
    "summary": "Found 2 issues: unverified keeper-supplied balance drives share pricing/accounting, and deposit accounting assumes full transfer amounts (fee-on-transfer tokens can inflate shares).",
    "raw_final": {
        "summary": "Found 2 issues: unverified keeper-supplied balance drives share pricing/accounting, and deposit accounting assumes full transfer amounts (fee-on-transfer tokens can inflate shares).",
        "findings": [
            {
                "title": "Unverified keeper-supplied currentBalance drives pricePerShare and locked accounting",
                "category": "oracle",
                "evidence": "rollToNextRound uses the externally supplied currentBalance to compute newPricePerShare, queuedWithdrawAmount, and lockedAmount without on-chain validation.",
                "severity": "medium",
                "locations": [
                    "contracts/contracts/Vault/TheoDepositVault.sol:429",
                    "contracts/contracts/Vault/TheoDepositVault.sol:434",
                    "contracts/contracts/Vault/TheoDepositVault.sol:460",
                    "contracts/contracts/Vault/TheoDepositVault.sol:466"
                ],
                "recommendation": "Derive currentBalance from on-chain sources (e.g., pull strategy funds or query a trusted strategy contract), or enforce a verified oracle/adapter. Consider governance/timelock on keeper updates and sanity checks against on-chain balances.",
                "exploit_scenario": "A malicious or compromised keeper can call rollToNextRound with an inflated or deflated currentBalance. This skews roundPricePerShare and lockedAmount, leading to incorrect share issuance and withdrawal accounting. Users can be diluted or withdrawals can revert due to insufficient assets while the keeper receives transfers based on the manipulated accounting."
            },
            {
                "title": "Deposits credit the requested amount before transfer, allowing fee-on-transfer tokens to inflate shares",
                "category": "math",
                "evidence": "_depositFor updates accounting based on the input amount before safeTransferFrom executes, so it never checks the actual amount received.",
                "severity": "low",
                "locations": [
                    "contracts/contracts/Vault/TheoDepositVault.sol:145",
                    "contracts/contracts/Vault/TheoDepositVault.sol:193",
                    "contracts/contracts/Vault/TheoDepositVault.sol:219",
                    "contracts/contracts/Vault/TheoDepositVault.sol:252"
                ],
                "recommendation": "Measure actual received amount via balance-before/balance-after and use that value for receipts/totalPending, or restrict assets to non-deflationary ERC20s and enforce this in configuration.",
                "exploit_scenario": "If the vault asset is a fee-on-transfer or deflationary ERC20, _depositFor credits the full amount to deposit receipts and totalPending even though fewer tokens are received. An attacker can deposit such tokens to receive more shares than assets actually received and later withdraw a larger share of vault assets, diluting other users."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
7
EXT*/BALANCE
4
Total opcodes
8718
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x0303
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x7cb64759
00000019: GT
0000001a: PUSH2 0x0190
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0xce7c2ac2
00000024: GT
00000025: PUSH2 0x00dc
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xeae1f265
0000002f: GT
00000030: PUSH2 0x0095
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xf6203e35
0000003a: GT
0000003b: PUSH2 0x006f
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xf6203e35
00000045: EQ
00000046: PUSH2 0x0aa9
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0xf6326fb3
00000050: EQ
00000051: PUSH2 0x0abc
00000054: JUMPI
00000055: DUP1
00000056: PUSH4 0xf656ba51
0000005b: EQ
0000005c: PUSH2 0x0ac4
0000005f: JUMPI
00000060: DUP1
00000061: PUSH4 0xf756fa21
00000066: EQ
00000067: PUSH2 0x0af9
0000006a: JUMPI
0000006b: PUSH1 0x00
0000006d: DUP1
0000006e: REVERT
0000006f: JUMPDEST
00000070: DUP1
00000071: PUSH4 0xeae1f265
00000076: EQ
00000077: PUSH2 0x0a56
0000007a: JUMPI
0000007b: DUP1
0000007c: PUSH4 0xf0b2c7e6
00000081: EQ
00000082: PUSH2 0x0a69
00000085: JUMPI
00000086: DUP1
00000087: PUSH4 0xf2fde38b
0000008c: EQ
0000008d: PUSH2 0x0a89
00000090: JUMPI
00000091: PUSH1 0x00
00000093: DUP1
00000094: REVERT
00000095: JUMPDEST
00000096: DUP1
00000097: PUSH4 0xce7c2ac2
0000009c: EQ
0000009d: PUSH2 0x0971
000000a0: JUMPI
000000a1: DUP1
000000a2: PUSH4 0xd164cc15
000000a7: EQ
000000a8: PUSH2 0x0991
000000ab: JUMPI
000000ac: DUP1
000000ad: PUSH4 0xdb006a75
000000b2: EQ
000000b3: PUSH2 0x09b1
000000b6: JUMPI
000000b7: DUP1
000000b8: PUSH4 0xdc9a1535
000000bd: EQ
000000be: PUSH2 0x09d1
000000c1: JUMPI
000000c2: DUP1
000000c3: PUSH4 0xdd62ed3e
000000c8: EQ
000000c9: PUSH2 0x09f2
000000cc: JUMPI
000000cd: DUP1
000000ce: PUSH4 0xe30c3978
000000d3: EQ
000000d4: PUSH2 0x0a38
000000d7: JUMPI
000000d8: PUSH1 0x00
000000da: DUP1
000000db: REVERT
000000dc: JUMPDEST
000000dd: DUP1
000000de: PUSH4 0x9fcc2d75
000000e3: GT
000000e4: PUSH2 0x0149
000000e7: JUMPI
000000e8: DUP1
000000e9: PUSH4 0xad5c4648
000000ee: GT
000000ef: PUSH2 0x0123
000000f2: JUMPI
000000f3: DUP1
000000f4: PUSH4 0xad5c4648
000000f9: EQ
000000fa: PUSH2 0x08e8
000000fd: JUMPI
000000fe: DUP1
000000ff: PUSH4 0xad7a672f
00000104: EQ
00000105: PUSH2 0x091c
00000108: JUMPI
00000109: DUP1
0000010a: PUSH4 0xb6b55f25
0000010f: EQ
00000110: PUSH2 0x0931
00000113: JUMPI
00000114: DUP1
00000115: PUSH4 0xc0ce93f1
0000011a: EQ
0000011b: PUSH2 0x0951
0000011e: JUMPI
0000011f: PUSH1 0x00
00000121: DUP1
00000122: REVERT
00000123: JUMPDEST
00000124: DUP1
00000125: PUSH4 0x9fcc2d75
0000012a: EQ
0000012b: PUSH2 0x081d
0000012e: JUMPI
0000012f: DUP1
00000130: PUSH4 0xa9059cbb
00000135: EQ
00000136: PUSH2 0x08a8
00000139: JUMPI
0000013a: DUP1
0000013b: PUSH4 0xaced1661
00000140: EQ
00000141: PUSH2 0x08c8
00000144: JUMPI
00000145: PUSH1 0x00
00000147: DUP1
00000148: REVERT
00000149: JUMPDEST
0000014a: DUP1
0000014b: PUSH4 0x7cb64759
00000150: EQ
00000151: PUSH2 0x0754
00000154: JUMPI
00000155: DUP1
00000156: PUSH4 0x7e108d52
0000015b: EQ
0000015c: PUSH2 0x0774
0000015f: JUMPI
00000160: DUP1
00000161: PUSH4 0x87153eb1
00000166: EQ
00000167: PUSH2 0x0794
0000016a: JUMPI
0000016b: DUP1
0000016c: PUSH4 0x8da5cb5b
00000171: EQ
00000172: PUSH2 0x07c1
00000175: JUMPI
00000176: DUP1
00000177: PUSH4 0x95d89b41
0000017c: EQ
0000017d: PUSH2 0x07f3
00000180: JUMPI
00000181: DUP1
00000182: PUSH4 0x99530b06
00000187: EQ
00000188: PUSH2 0x0808
0000018b: JUMPI
0000018c: PUSH1 0x00
0000018e: DUP1
0000018f: REVERT
00000190: JUMPDEST
00000191: DUP1
00000192: PUSH4 0x3aa03f17
00000197: GT
00000198: PUSH2 0x024f
0000019b: JUMPI
0000019c: DUP1
0000019d: PUSH4 0x5cbcec4e
000001a2: GT
000001a3: PUSH2 0x0208
000001a6: JUMPI
000001a7: DUP1
000001a8: PUSH4 0x70a08231
000001ad: GT
000001ae: PUSH2 0x01e2
000001b1: JUMPI
000001b2: DUP1
000001b3: PUSH4 0x70a08231
000001b8: EQ
000001b9: PUSH2 0x0690
000001bc: JUMPI
000001bd: DUP1
000001be: PUSH4 0x715018a6
000001c3: EQ
000001c4: PUSH2 0x06c6
000001c7: JUMPI
000001c8: DUP1
000001c9: PUSH4 0x79ba5097
000001ce: EQ
000001cf: PUSH2 0x06db
000001d2: JUMPI
000001d3: DUP1
000001d4: PUSH4 0x7a9262a2
000001d9: EQ
000001da: PUSH2 0x06f0
000001dd: JUMPI
000001de: PUSH1 0x00
000001e0: DUP1
000001e1: REVERT
000001e2: JUMPDEST
000001e3: DUP1
000001e4: PUSH4 0x5cbcec4e
000001e9: EQ
000001ea: PUSH2 0x05d7
000001ed: JUMPI
000001ee: DUP1
000001ef: PUSH4 0x6719b2ee
000001f4: EQ
000001f5: PUSH2 0x05f7
000001f8: JUMPI
000001f9: DUP1
000001fa: PUSH4 0x6f31ab34
000001ff: EQ
00000200: PUSH2 0x067b
00000203: JUMPI
00000204: PUSH1 0x00
00000206: DUP1
00000207: REVERT
00000208: JUMPDEST
00000209: DUP1
0000020a: PUSH4 0x3aa03f17
0000020f: EQ
00000210: PUSH2 0x052d
00000213: JUMPI
00000214: DUP1
00000215: PUSH4 0x3f23bb73
0000021a: EQ
0000021b: PUSH2 0x054d
0000021e: JUMPI
0000021f: DUP1
00000220: PUSH4 0x3f90916a
00000225: EQ
00000226: PUSH2 0x056d
00000229: JUMPI
0000022a: DUP1
0000022b: PUSH4 0x47786d37
00000230: EQ
00000231: PUSH2 0x058b
00000234: JUMPI
00000235: DUP1
00000236: PUSH4 0x4b2431d9
0000023b: EQ
0000023c: PUSH2 0x05ab
0000023f: JUMPI
00000240: DUP1
00000241: PUSH4 0x503c70aa
00000246: EQ
00000247: PUSH2 0x05c1
0000024a: JUMPI
0000024b: PUSH1 0x00
0000024d: DUP1
0000024e: REVERT
0000024f: JUMPDEST
00000250: DUP1
00000251: PUSH4 0x2775d01c
00000256: GT
00000257: PUSH2 0x02bc
0000025a: JUMPI
0000025b: DUP1
0000025c: PUSH4 0x3340d73c
00000261: GT
00000262: PUSH2 0x0296
00000265: JUMPI
00000266: DUP1
00000267: PUSH4 0x3340d73c
0000026c: EQ
0000026d: PUSH2 0x04af
00000270: JUMPI
00000271: DUP1
00000272: PUSH4 0x355274ea
00000277: EQ
00000278: PUSH2 0x04cf
0000027b: JUMPI
0000027c: DUP1
0000027d: PUSH4 0x36efd16f
00000282: EQ
00000283: PUSH2 0x04ed
00000286: JUMPI
00000287: DUP1
00000288: PUSH4 0x38bca726
0000028d: EQ
0000028e: PUSH2 0x050d
00000291: JUMPI
00000292: PUSH1 0x00
00000294: DUP1
00000295: REVERT
00000296: JUMPDEST
00000297: DUP1
00000298: PUSH4 0x2775d01c
0000029d: EQ
0000029e: PUSH2 0x0455
000002a1: JUMPI
000002a2: DUP1
000002a3: PUSH4 0x2eb4a7ab
000002a8: EQ
000002a9: PUSH2 0x0477
000002ac: JUMPI
000002ad: DUP1
000002ae: PUSH4 0x313ce567
000002b3: EQ
000002b4: PUSH2 0x048d
000002b7: JUMPI
000002b8: PUSH1 0x00
000002ba: DUP1
000002bb: REVERT
000002bc: JUMPDEST
000002bd: DUP1
000002be: PUSH4 0x06fdde03
000002c3: EQ
000002c4: PUSH2 0x030f
000002c7: JUMPI
000002c8: DUP1
000002c9: PUSH4 0x095ea7b3
000002ce: EQ
000002cf: PUSH2 0x033a
000002d2: JUMPI
000002d3: DUP1
000002d4: PUSH4 0x146ca531
000002d9: EQ
000002da: PUSH2 0x036a
000002dd: JUMPI
000002de: DUP1
000002df: PUSH4 0x18160ddd
000002e4: EQ
000002e5: PUSH2 0x038d
000002e8: JUMPI
000002e9: DUP1
000002ea: PUSH4 0x23b872dd
000002ef: EQ
000002f0: PUSH2 0x03a2
000002f3: JUMPI
000002f4: DUP1
000002f5: PUSH4 0x2728f333
000002fa: EQ
000002fb: PUSH2 0x03c2
000002fe: JUMPI
000002ff: PUSH1 0x00
00000301: DUP1
00000302: REVERT
00000303: JUMPDEST
00000304: CALLDATASIZE
00000305: PUSH2 0x030a
00000308: JUMPI
00000309: STOP
0000030a: JUMPDEST
0000030b: PUSH1 0x00
0000030d: DUP1
0000030e: REVERT
0000030f: JUMPDEST
00000310: CALLVALUE
00000311: DUP1
00000312: ISZERO
00000313: PUSH2 0x031b
00000316: JUMPI
00000317: PUSH1 0x00
00000319: DUP1
0000031a: REVERT
0000031b: JUMPDEST
0000031c: POP
0000031d: PUSH2 0x0324
00000320: PUSH2 0x0b0e
00000323: JUMP
00000324: JUMPDEST
00000325: PUSH1 0x40
00000327: MLOAD
00000328: PUSH2 0x0331
0000032b: SWAP2
0000032c: SWAP1
0000032d: PUSH2 0x2fb4
00000330: JUMP
00000331: JUMPDEST
00000332: PUSH1 0x40
00000334: MLOAD
00000335: DUP1
00000336: SWAP2
00000337: SUB
00000338: SWAP1
00000339: RETURN
0000033a: JUMPDEST
0000033b: CALLVALUE
0000033c: DUP1
0000033d: ISZERO
0000033e: PUSH2 0x0346
00000341: JUMPI
00000342: PUSH1 0x00
00000344: DUP1
00000345: REVERT
00000346: JUMPDEST
00000347: POP
00000348: PUSH2 0x035a
0000034b: PUSH2 0x0355
0000034e: CALLDATASIZE
0000034f: PUSH1 0x04
00000351: PUSH2 0x3003
00000354: JUMP
00000355: JUMPDEST
00000356: PUSH2 0x0ba0
00000359: JUMP
0000035a: JUMPDEST
0000035b: PUSH1 0x40
0000035d: MLOAD
0000035e: SWAP1
0000035f: ISZERO
00000360: ISZERO
00000361: DUP2
00000362: MSTORE
00000363: PUSH1 0x20
00000365: ADD
00000366: PUSH2 0x0331
00000369: JUMP
0000036a: JUMPDEST
0000036b: CALLVALUE
0000036c: DUP1
0000036d: ISZERO
0000036e: PUSH2 0x0376
00000371: JUMPI
00000372: PUSH1 0x00
00000374: DUP1
00000375: REVERT
00000376: JUMPDEST
00000377: POP
00000378: PUSH1 0x0d
0000037a: SLOAD
0000037b: PUSH2 0xffff
0000037e: AND
0000037f: JUMPDEST
00000380: PUSH1 0x40
00000382: MLOAD
00000383: SWAP1
00000384: DUP2
00000385: MSTORE
00000386: PUSH1 0x20
00000388: ADD
00000389: PUSH2 0x0331
0000038c: JUMP
0000038d: JUMPDEST
0000038e: CALLVALUE
0000038f: DUP1
00000390: ISZERO
00000391: PUSH2 0x0399
00000394: JUMPI
00000395: PUSH1 0x00
00000397: DUP1
00000398: REVERT
00000399: JUMPDEST
0000039a: POP
0000039b: PUSH1 0x03
0000039d: SLOAD
0000039e: PUSH2 0x037f
000003a1: JUMP
000003a2: JUMPDEST
000003a3: CALLVALUE
000003a4: DUP1
000003a5: ISZERO
000003a6: PUSH2 0x03ae
000003a9: JUMPI
000003aa: PUSH1 0x00
000003ac: DUP1
000003ad: REVERT
000003ae: JUMPDEST
000003af: POP
000003b0: PUSH2 0x035a
000003b3: PUSH2 0x03bd
000003b6: CALLDATASIZE
000003b7: PUSH1 0x04
000003b9: PUSH2 0x302d
000003bc: JUMP
000003bd: JUMPDEST
000003be: PUSH2 0x0bba
000003c1: JUMP
000003c2: JUMPDEST
000003c3: CALLVALUE
000003c4: DUP1
000003c5: ISZERO
000003c6: PUSH2 0x03ce
000003c9: JUMPI
000003ca: PUSH1 0x00
000003cc: DUP1
000003cd: REVERT
000003ce: JUMPDEST
000003cf: POP
000003d0: PUSH1 0x0d
000003d2: SLOAD
000003d3: PUSH1 0x0e
000003d5: SLOAD
000003d6: PUSH2 0x0410
000003d9: SWAP2
000003da: PUSH2 0xffff
000003dd: DUP2
000003de: AND
000003df: SWAP2
000003e0: PUSH1 0x01
000003e2: PUSH1 0x01
000003e4: PUSH1 0x68
000003e6: SHL
000003e7: SUB
000003e8: PUSH3 0x010000
000003ec: DUP4
000003ed: DIV
000003ee: DUP2
000003ef: AND
000003f0: SWAP3
000003f1: PUSH1 0x01
000003f3: PUSH1 0x78
000003f5: SHL
000003f6: SWAP1
000003f7: DIV
000003f8: AND
000003f9: SWAP1
000003fa: PUSH1 0x01
000003fc: PUSH1 0x01
000003fe: PUSH1 0x80
00000400: SHL
00000401: SUB
00000402: DUP1
00000403: DUP3
00000404: AND
00000405: SWAP2
00000406: PUSH1 0x01
00000408: PUSH1 0x80
0000040a: SHL
0000040b: SWAP1
0000040c: DIV
0000040d: AND
0000040e: DUP6
0000040f: JUMP
00000410: JUMPDEST
00000411: PUSH1 0x40
00000413: DUP1
00000414: MLOAD
00000415: PUSH2 0xffff
00000418: SWAP1
00000419: SWAP7
0000041a: AND
0000041b: DUP7
0000041c: MSTORE
0000041d: PUSH1 0x01
0000041f: PUSH1 0x01
00000421: PUSH1 0x68
00000423: SHL
00000424: SUB
00000425: SWAP5
00000426: DUP6
00000427: AND
00000428: PUSH1 0x20
0000042a: DUP8
0000042b: ADD
0000042c: MSTORE
0000042d: SWAP4
0000042e: SWAP1
0000042f: SWAP3
00000430: AND
00000431: SWAP3
00000432: DUP5
00000433: ADD
00000434: SWAP3
00000435: SWAP1
00000436: SWAP3
00000437: MSTORE
00000438: PUSH1 0x01
0000043a: PUSH1 0x01
0000043c: PUSH1 0x80
0000043e: SHL
0000043f: SUB
00000440: SWAP2
00000441: DUP3
00000442: AND
00000443: PUSH1 0x60
00000445: DUP5
00000446: ADD
00000447: MSTORE
00000448: AND
00000449: PUSH1 0x80
0000044b: DUP3
0000044c: ADD
0000044d: MSTORE
0000044e: PUSH1 0xa0
00000450: ADD
00000451: PUSH2 0x0331
00000454: JUMP
00000455: JUMPDEST
00000456: CALLVALUE
00000457: DUP1
00000458: ISZERO
00000459: PUSH2 0x0461
0000045c: JUMPI
0000045d: PUSH1 0x00
0000045f: DUP1
00000460: REVERT
00000461: JUMPDEST
00000462: POP
00000463: PUSH2 0x0475
00000466: PUSH2 0x0470
00000469: CALLDATASIZE
0000046a: PUSH1 0x04
0000046c: PUSH2 0x3069
0000046f: JUMP
00000470: JUMPDEST
00000471: PUSH2 0x0be0
00000474: JUMP
00000475: JUMPDEST
00000476: STOP
00000477: JUMPDEST
00000478: CALLVALUE
00000479: DUP1
0000047a: ISZERO
0000047b: PUSH2 0x0483
0000047e: JUMPI
0000047f: PUSH1 0x00
00000481: DUP1
00000482: REVERT
00000483: JUMPDEST
00000484: POP
00000485: PUSH2 0x037f
00000488: PUSH1 0x12
0000048a: SLOAD
0000048b: DUP2
0000048c: JUMP
0000048d: JUMPDEST
0000048e: CALLVALUE
0000048f: DUP1
00000490: ISZERO
00000491: PUSH2 0x0499
00000494: JUMPI
00000495: PUSH1 0x00
00000497: DUP1
00000498: REVERT
00000499: JUMPDEST
0000049a: POP
0000049b: PUSH1 0x0b
0000049d: SLOAD
0000049e: PUSH1 0x40
000004a0: MLOAD
000004a1: PUSH1 0xff
000004a3: SWAP1
000004a4: SWAP2
000004a5: AND
000004a6: DUP2
000004a7: MSTORE
000004a8: PUSH1 0x20
000004aa: ADD
000004ab: PUSH2 0x0331
000004ae: JUMP
000004af: JUMPDEST
000004b0: CALLVALUE
000004b1: DUP1
000004b2: ISZERO
000004b3: PUSH2 0x04bb
000004b6: JUMPI
000004b7: PUSH1 0x00
000004b9: DUP1
000004ba: REVERT
000004bb: JUMPDEST
000004bc: POP
000004bd: PUSH2 0x0475
000004c0: PUSH2 0x04ca
000004c3: CALLDATASIZE
000004c4: PUSH1 0x04
000004c6: PUSH2 0x3133
000004c9: JUMP
000004ca: JUMPDEST
000004cb: PUSH2 0x0d73
000004ce: JUMP
000004cf: JUMPDEST
000004d0: CALLVALUE
000004d1: DUP1
000004d2: ISZERO
000004d3: PUSH2 0x04db
000004d6: JUMPI
000004d7: PUSH1 0x00
000004d9: DUP1
000004da: REVERT
000004db: JUMPDEST
000004dc: POP
000004dd: PUSH1 0x0c
000004df: SLOAD
000004e0: PUSH1 0x01
000004e2: PUSH1 0x01
000004e4: PUSH1 0x68
000004e6: SHL
000004e7: SUB
000004e8: AND
000004e9: PUSH2 0x037f
000004ec: JUMP
000004ed: JUMPDEST
000004ee: CALLVALUE
000004ef: DUP1
000004f0: ISZERO
000004f1: PUSH2 0x04f9
000004f4: JUMPI
000004f5: PUSH1 0x00
000004f7: DUP1
000004f8: REVERT
000004f9: JUMPDEST
000004fa: POP
000004fb: PUSH2 0x0475
000004fe: PUSH2 0x0508
00000501: CALLDATASIZE
00000502: PUSH1 0x04
00000504: PUSH2 0x317a
00000507: JUMP
00000508: JUMPDEST
00000509: PUSH2 0x0e65
0000050c: JUMP
0000050d: JUMPDEST
0000050e: CALLVALUE
0000050f: DUP1
00000510: ISZERO
00000511: PUSH2 0x0519
00000514: JUMPI
00000515: PUSH1 0x00
00000517: DUP1
00000518: REVERT
00000519: JUMPDEST
0000051a: POP
0000051b: PUSH2 0x0475
0000051e: PUSH2 0x0528
00000521: CALLDATASIZE
00000522: PUSH1 0x04
00000524: PUSH2 0x3069
00000527: JUMP
00000528: JUMPDEST
00000529: PUSH2 0x0f02
0000052c: JUMP
0000052d: JUMPDEST
0000052e: CALLVALUE
0000052f: DUP1
00000530: ISZERO
00000531: PUSH2 0x0539
00000534: JUMPI
00000535: PUSH1 0x00
00000537: DUP1
00000538: REVERT
00000539: JUMPDEST
0000053a: POP
0000053b: PUSH2 0x037f
0000053e: PUSH2 0x0548
00000541: CALLDATASIZE
00000542: PUSH1 0x04
00000544: PUSH2 0x3069
00000547: JUMP
00000548: JUMPDEST
00000549: PUSH2 0x1298
0000054c: JUMP
0000054d: JUMPDEST
0000054e: CALLVALUE
0000054f: DUP1
00000550: ISZERO
00000551: PUSH2 0x0559
00000554: JUMPI
00000555: PUSH1 0x00
00000557: DUP1
00000558: REVERT
00000559: JUMPDEST
0000055a: POP
0000055b: PUSH2 0x037f
0000055e: PUSH2 0x0568
00000561: CALLDATASIZE
00000562: PUSH1 0x04
00000564: PUSH2 0x31a6
00000567: JUMP
00000568: JUMPDEST
00000569: PUSH2 0x1366
0000056c: JUMP
0000056d: JUMPDEST
0000056e: CALLVALUE
0000056f: DUP1
00000570: ISZERO
00000571: PUSH2 0x0579
00000574: JUMPI
00000575: PUSH1 0x00
00000577: DUP1
00000578: REVERT
00000579: JUMPDEST
0000057a: POP
0000057b: PUSH1 0x0e
0000057d: SLOAD
0000057e: PUSH1 0x01
00000580: PUSH1 0x01
00000582: PUSH1 0x80
00000584: SHL
00000585: SUB
00000586: AND
00000587: PUSH2 0x037f
0000058a: JUMP
0000058b: JUMPDEST
0000058c: CALLVALUE
0000058d: DUP1
0000058e: ISZERO
0000058f: PUSH2 0x0597
00000592: JUMPI
00000593: PUSH1 0x00
00000595: DUP1
00000596: REVERT
00000597: JUMPDEST
00000598: POP
00000599: PUSH2 0x0475
0000059c: PUSH2 0x05a6
0000059f: CALLDATASIZE
000005a0: PUSH1 0x04
000005a2: PUSH2 0x3069
000005a5: JUMP
000005a6: JUMPDEST
000005a7: PUSH2 0x13ab
000005aa: JUMP
000005ab: JUMPDEST
000005ac: CALLVALUE
000005ad: DUP1
000005ae: ISZERO
000005af: PUSH2 0x05b7
000005b2: JUMPI
000005b3: PUSH1 0x00
000005b5: DUP1
000005b6: REVERT
000005b7: JUMPDEST
000005b8: POP
000005b9: PUSH2 0x037f
000005bc: PUSH1 0x10
000005be: SLOAD
000005bf: DUP2
000005c0: JUMP
000005c1: JUMPDEST
000005c2: CALLVALUE
000005c3: DUP1
000005c4: ISZERO
000005c5: PUSH2 0x05cd
000005c8: JUMPI
000005c9: PUSH1 0x00
000005cb: DUP1
000005cc: REVERT
000005cd: JUMPDEST
000005ce: POP
000005cf: PUSH2 0x037f
000005d2: PUSH1 0x0f
000005d4: SLOAD
000005d5: DUP2
000005d6: JUMP
000005d7: JUMPDEST
000005d8: CALLVALUE
000005d9: DUP1
000005da: ISZERO
000005db: PUSH2 0x05e3
000005de: JUMPI
000005df: PUSH1 0x00
000005e1: DUP1
000005e2: REVERT
000005e3: JUMPDEST
000005e4: POP
000005e5: PUSH2 0x0475
000005e8: PUSH2 0x05f2
000005eb: CALLDATASIZE
000005ec: PUSH1 0x04
000005ee: PUSH2 0x31cf
000005f1: JUMP
000005f2: JUMPDEST
000005f3: PUSH2 0x1464
000005f6: JUMP
000005f7: JUMPDEST
000005f8: CALLVALUE
000005f9: DUP1
000005fa: ISZERO
000005fb: PUSH2 0x0603
000005fe: JUMPI
000005ff: PUSH1 0x00
00000601: DUP1
00000602: REVERT
00000603: JUMPDEST
00000604: POP
00000605: PUSH2 0x064a
00000608: PUSH2 0x0612
0000060b: CALLDATASIZE
0000060c: PUSH1 0x04
0000060e: PUSH2 0x31a6
00000611: JUMP
00000612: JUMPDEST
00000613: PUSH1 0x08
00000615: PUSH1 0x20
00000617: MSTORE
00000618: PUSH1 0x00
0000061a: SWAP1
0000061b: DUP2
0000061c: MSTORE
0000061d: PUSH1 0x40
0000061f: SWAP1
00000620: KECCAK256
00000621: SLOAD
00000622: PUSH2 0xffff
00000625: DUP2
00000626: AND
00000627: SWAP1
00000628: PUSH3 0x010000
0000062c: DUP2
0000062d: DIV
0000062e: PUSH1 0x01
00000630: PUSH1 0x01
00000632: PUSH1 0x68
00000634: SHL
00000635: SUB
00000636: AND
00000637: SWAP1
00000638: PUSH1 0x01
0000063a: PUSH1 0x78
0000063c: SHL
0000063d: SWAP1
0000063e: DIV
0000063f: PUSH1 0x01
00000641: PUSH1 0x01
00000643: PUSH1 0x80
00000645: SHL
00000646: SUB
00000647: AND
00000648: DUP4
00000649: JUMP
0000064a: JUMPDEST
0000064b: PUSH1 0x40
0000064d: DUP1
0000064e: MLOAD
0000064f: PUSH2 0xffff
00000652: SWAP1
00000653: SWAP5
00000654: AND
00000655: DUP5
00000656: MSTORE
00000657: PUSH1 0x01
00000659: PUSH1 0x01
0000065b: PUSH1 0x68
0000065d: SHL
0000065e: SUB
0000065f: SWAP1
00000660: SWAP3
00000661: AND
00000662: PUSH1 0x20
00000664: DUP5
00000665: ADD
00000666: MSTORE
00000667: PUSH1 0x01
00000669: PUSH1 0x01
0000066b: PUSH1 0x80
0000066d: SHL
0000066e: SUB
0000066f: AND
00000670: SWAP1
00000671: DUP3
00000672: ADD
00000673: MSTORE
00000674: PUSH1 0x60
00000676: ADD
00000677: PUSH2 0x0331
0000067a: JUMP
0000067b: JUMPDEST
0000067c: CALLVALUE
0000067d: DUP1
0000067e: ISZERO
0000067f: PUSH2 0x0687
00000682: JUMPI
00000683: PUSH1 0x00
00000685: DUP1
00000686: REVERT
00000687: JUMPDEST
00000688: POP
00000689: PUSH2 0x0475
0000068c: PUSH2 0x148a
0000068f: JUMP
00000690: JUMPDEST
00000691: CALLVALUE
00000692: DUP1
00000693: ISZERO
00000694: PUSH2 0x069c
00000697: JUMPI
00000698: PUSH1 0x00
0000069a: DUP1
0000069b: REVERT
0000069c: JUMPDEST
0000069d: POP
0000069e: PUSH2 0x037f
000006a1: PUSH2 0x06ab
000006a4: CALLDATASIZE
000006a5: PUSH1 0x04
000006a7: PUSH2 0x31a6
000006aa: JUMP
000006ab: JUMPDEST
000006ac: PUSH1 0x01
000006ae: PUSH1 0x01
000006b0: PUSH1 0xa0
000006b2: SHL
000006b3: SUB
000006b4: AND
000006b5: PUSH1 0x00
000006b7: SWAP1
000006b8: DUP2
000006b9: MSTORE
000006ba: PUSH1 0x01
000006bc: PUSH1 0x20
000006be: MSTORE
000006bf: PUSH1 0x40
000006c1: SWAP1
000006c2: KECCAK256
000006c3: SLOAD
000006c4: SWAP1
000006c5: JUMP
000006c6: JUMPDEST
000006c7: CALLVALUE
000006c8: DUP1
000006c9: ISZERO
000006ca: PUSH2 0x06d2
000006cd: JUMPI
000006ce: PUSH1 0x00
000006d0: DUP1
000006d1: REVERT
000006d2: JUMPDEST
000006d3: POP
000006d4: PUSH2 0x0475
000006d7: PUSH2 0x14aa
000006da: JUMP
000006db: JUMPDEST
000006dc: CALLVALUE
000006dd: DUP1
000006de: ISZERO
000006df: PUSH2 0x06e7
000006e2: JUMPI
000006e3: PUSH1 0x00
000006e5: DUP1
000006e6: REVERT
000006e7: JUMPDEST
000006e8: POP
000006e9: PUSH2 0x0475
000006ec: PUSH2 0x14bc
000006ef: JUMP
000006f0: JUMPDEST
000006f1: CALLVALUE
000006f2: DUP1
000006f3: ISZERO
000006f4: PUSH2 0x06fc
000006f7: JUMPI
000006f8: PUSH1 0x00
000006fa: DUP1
000006fb: REVERT
000006fc: JUMPDEST
000006fd: POP
000006fe: PUSH2 0x0732
00000701: PUSH2 0x070b
00000704: CALLDATASIZE
00000705: PUSH1 0x04
00000707: PUSH2 0x31a6
0000070a: JUMP
0000070b: JUMPDEST
0000070c: PUSH1 0x0a
0000070e: PUSH1 0x20
00000710: MSTORE
00000711: PUSH1 0x00
00000713: SWAP1
00000714: DUP2
00000715: MSTORE
00000716: PUSH1 0x40
00000718: SWAP1
00000719: KECCAK256
0000071a: SLOAD
0000071b: PUSH2 0xffff
0000071e: DUP2
0000071f: AND
00000720: SWAP1
00000721: PUSH3 0x010000
00000725: SWAP1
00000726: DIV
00000727: PUSH1 0x01
00000729: PUSH1 0x01
0000072b: PUSH1 0x80
0000072d: SHL
0000072e: SUB
0000072f: AND
00000730: DUP3
00000731: JUMP
00000732: JUMPDEST
00000733: PUSH1 0x40
00000735: DUP1
00000736: MLOAD
00000737: PUSH2 0xffff
0000073a: SWAP1
0000073b: SWAP4
0000073c: AND
0000073d: DUP4
0000073e: MSTORE
0000073f: PUSH1 0x01
00000741: PUSH1 0x01
00000743: PUSH1 0x80
00000745: SHL
00000746: SUB
00000747: SWAP1
00000748: SWAP2
00000749: AND
0000074a: PUSH1 0x20
0000074c: DUP4
0000074d: ADD
0000074e: MSTORE
0000074f: ADD
00000750: PUSH2 0x0331
00000753: JUMP
00000754: JUMPDEST
00000755: CALLVALUE
00000756: DUP1
00000757: ISZERO
00000758: PUSH2 0x0760
0000075b: JUMPI
0000075c: PUSH1 0x00
0000075e: DUP1
0000075f: REVERT
00000760: JUMPDEST
00000761: POP
00000762: PUSH2 0x0475
00000765: PUSH2 0x076f
00000768: CALLDATASIZE
00000769: PUSH1 0x04
0000076b: PUSH2 0x3069
0000076e: JUMP
0000076f: JUMPDEST
00000770: PUSH2 0x14fd
00000773: JUMP
00000774: JUMPDEST
00000775: CALLVALUE
00000776: DUP1
00000777: ISZERO
00000778: PUSH2 0x0780
0000077b: JUMPI
0000077c: PUSH1 0x00
0000077e: DUP1
0000077f: REVERT
00000780: JUMPDEST
00000781: POP
00000782: PUSH2 0x0475
00000785: PUSH2 0x078f
00000788: CALLDATASIZE
00000789: PUSH1 0x04
0000078b: PUSH2 0x3069
0000078e: JUMP
0000078f: JUMPDEST
00000790: PUSH2 0x150a
00000793: JUMP
00000794: JUMPDEST
00000795: CALLVALUE
00000796: DUP1
00000797: ISZERO
00000798: PUSH2 0x07a0
0000079b: JUMPI
0000079c: PUSH1 0x00
0000079e: DUP1
0000079f: REVERT
000007a0: JUMPDEST
000007a1: POP
000007a2: PUSH2 0x037f
000007a5: PUSH2 0x07af
000007a8: CALLDATASIZE
000007a9: PUSH1 0x04
000007ab: PUSH2 0x3069
000007ae: JUMP
000007af: JUMPDEST
000007b0: PUSH1 0x09
000007b2: PUSH1 0x20
000007b4: MSTORE
000007b5: PUSH1 0x00
000007b7: SWAP1
000007b8: DUP2
000007b9: MSTORE
000007ba: PUSH1 0x40
000007bc: SWAP1
000007bd: KECCAK256
000007be: SLOAD
000007bf: DUP2
000007c0: JUMP
000007c1: JUMPDEST
000007c2: CALLVALUE
000007c3: DUP1
000007c4: ISZERO
000007c5: PUSH2 0x07cd
000007c8: JUMPI
000007c9: PUSH1 0x00
000007cb: DUP1
000007cc: REVERT
000007cd: JUMPDEST
000007ce: POP
000007cf: PUSH1 0x06
000007d1: SLOAD
000007d2: PUSH1 0x01
000007d4: PUSH1 0x01
000007d6: PUSH1 0xa0
000007d8: SHL
000007d9: SUB
000007da: AND
000007db: JUMPDEST
000007dc: PUSH1 0x40
000007de: MLOAD
000007df: PUSH1 0x01
000007e1: PUSH1 0x01
000007e3: PUSH1 0xa0
000007e5: SHL
000007e6: SUB
000007e7: SWAP1
000007e8: SWAP2
000007e9: AND
000007ea: DUP2
000007eb: MSTORE
000007ec: PUSH1 0x20
000007ee: ADD
000007ef: PUSH2 0x0331
000007f2: JUMP
000007f3: JUMPDEST
000007f4: CALLVALUE
000007f5: DUP1
000007f6: ISZERO
000007f7: PUSH2 0x07ff
000007fa: JUMPI
000007fb: PUSH1 0x00
000007fd: DUP1
000007fe: REVERT
000007ff: JUMPDEST
00000800: POP
00000801: PUSH2 0x0324
00000804: PUSH2 0x1713
00000807: JUMP
00000808: JUMPDEST
00000809: CALLVALUE
0000080a: DUP1
0000080b: ISZERO
0000080c: PUSH2 0x0814
0000080f: JUMPI
00000810: PUSH1 0x00
00000812: DUP1
00000813: REVERT
00000814: JUMPDEST
00000815: POP
00000816: PUSH2 0x037f
00000819: PUSH2 0x1722
0000081c: JUMP
0000081d: JUMPDEST
0000081e: CALLVALUE
0000081f: DUP1
00000820: ISZERO
00000821: PUSH2 0x0829
00000824: JUMPI
00000825: PUSH1 0x00
00000827: DUP1
00000828: REVERT
00000829: JUMPDEST
0000082a: POP
0000082b: PUSH1 0x0b
0000082d: SLOAD
0000082e: PUSH1 0x0c
00000830: SLOAD
00000831: PUSH2 0x0865
00000834: SWAP2
00000835: PUSH1 0xff
00000837: DUP2
00000838: AND
00000839: SWAP2
0000083a: PUSH2 0x0100
0000083d: DUP3
0000083e: DIV
0000083f: PUSH1 0x01
00000841: PUSH1 0x01
00000843: PUSH1 0xa0
00000845: SHL
00000846: SUB
00000847: AND
00000848: SWAP2
00000849: PUSH1 0x01
0000084b: PUSH1 0xa8
0000084d: SHL
0000084e: SWAP1
0000084f: DIV
00000850: PUSH7 0xffffffffffffff
00000858: AND
00000859: SWAP1
0000085a: PUSH1 0x01
0000085c: PUSH1 0x01
0000085e: PUSH1 0x68
00000860: SHL
00000861: SUB
00000862: AND
00000863: DUP5
00000864: JUMP
00000865: JUMPDEST
00000866: PUSH1 0x40
00000868: DUP1
00000869: MLOAD
0000086a: PUSH1 0xff
0000086c: SWAP1
0000086d: SWAP6
0000086e: AND
0000086f: DUP6
00000870: MSTORE
00000871: PUSH1 0x01
00000873: PUSH1 0x01
00000875: PUSH1 0xa0
00000877: SHL
00000878: SUB
00000879: SWAP1
0000087a: SWAP4
0000087b: AND
0000087c: PUSH1 0x20
0000087e: DUP6
0000087f: ADD
00000880: MSTORE
00000881: PUSH7 0xffffffffffffff
00000889: SWAP1
0000088a: SWAP2
0000088b: AND
0000088c: SWAP2
0000088d: DUP4
0000088e: ADD
0000088f: SWAP2
00000890: SWAP1
00000891: SWAP2
00000892: MSTORE
00000893: PUSH1 0x01
00000895: PUSH1 0x01
00000897: PUSH1 0x68
00000899: SHL
0000089a: SUB
0000089b: AND
0000089c: PUSH1 0x60
0000089e: DUP3
0000089f: ADD
000008a0: MSTORE
000008a1: PUSH1 0x80
000008a3: ADD
000008a4: PUSH2 0x0331
000008a7: JUMP
000008a8: JUMPDEST
000008a9: CALLVALUE
000008aa: DUP1
000008ab: ISZERO
000008ac: PUSH2 0x08b4
000008af: JUMPI
000008b0: PUSH1 0x00
000008b2: DUP1
000008b3: REVERT
000008b4: JUMPDEST
000008b5: POP
000008b6: PUSH2 0x035a
000008b9: PUSH2 0x08c3
000008bc: CALLDATASIZE
000008bd: PUSH1 0x04
000008bf: PUSH2 0x3003
000008c2: JUMP
000008c3: JUMPDEST
000008c4: PUSH2 0x1757
000008c7: JUMP
000008c8: JUMPDEST
000008c9: CALLVALUE
000008ca: DUP1
000008cb: ISZERO
000008cc: PUSH2 0x08d4
000008cf: JUMPI
000008d0: PUSH1 0x00
000008d2: DUP1
000008d3: REVERT
000008d4: JUMPDEST
000008d5: POP
000008d6: PUSH1 0x11
000008d8: SLOAD
000008d9: PUSH2 0x07db
000008dc: SWAP1
000008dd: PUSH1 0x01
000008df: PUSH1 0x01
000008e1: PUSH1 0xa0
000008e3: SHL
000008e4: SUB
000008e5: AND
000008e6: DUP2
000008e7: JUMP
000008e8: JUMPDEST
000008e9: CALLVALUE
000008ea: DUP1
000008eb: ISZERO
000008ec: PUSH2 0x08f4
000008ef: JUMPI
000008f0: PUSH1 0x00
000008f2: DUP1
000008f3: REVERT
000008f4: JUMPDEST
000008f5: POP
000008f6: PUSH2 0x07db
000008f9: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
0000091a: DUP2
0000091b: JUMP
0000091c: JUMPDEST
0000091d: CALLVALUE
0000091e: DUP1
0000091f: ISZERO
00000920: PUSH2 0x0928
00000923: JUMPI
00000924: PUSH1 0x00
00000926: DUP1
00000927: REVERT
00000928: JUMPDEST
00000929: POP
0000092a: PUSH2 0x037f
0000092d: PUSH2 0x1765
00000930: JUMP
00000931: JUMPDEST
00000932: CALLVALUE
00000933: DUP1
00000934: ISZERO
00000935: PUSH2 0x093d
00000938: JUMPI
00000939: PUSH1 0x00
0000093b: DUP1
0000093c: REVERT
0000093d: JUMPDEST
0000093e: POP
0000093f: PUSH2 0x0475
00000942: PUSH2 0x094c
00000945: CALLDATASIZE
00000946: PUSH1 0x04
00000948: PUSH2 0x3069
0000094b: JUMP
0000094c: JUMPDEST
0000094d: PUSH2 0x17f3
00000950: JUMP
00000951: JUMPDEST
00000952: CALLVALUE
00000953: DUP1
00000954: ISZERO
00000955: PUSH2 0x095d
00000958: JUMPI
00000959: PUSH1 0x00
0000095b: DUP1
0000095c: REVERT
0000095d: JUMPDEST
0000095e: POP
0000095f: PUSH2 0x035a
00000962: PUSH2 0x096c
00000965: CALLDATASIZE
00000966: PUSH1 0x04
00000968: PUSH2 0x31ec
0000096b: JUMP
0000096c: JUMPDEST
0000096d: PUSH2 0x1875
00000970: JUMP
00000971: JUMPDEST
00000972: CALLVALUE
00000973: DUP1
00000974: ISZERO
00000975: PUSH2 0x097d
00000978: JUMPI
00000979: PUSH1 0x00
0000097b: DUP1
0000097c: REVERT
0000097d: JUMPDEST
0000097e: POP
0000097f: PUSH2 0x037f
00000982: PUSH2 0x098c
00000985: CALLDATASIZE
00000986: PUSH1 0x04
00000988: PUSH2 0x31a6
0000098b: JUMP
0000098c: JUMPDEST
0000098d: PUSH2 0x18d3
00000990: JUMP
00000991: JUMPDEST
00000992: CALLVALUE
00000993: DUP1
00000994: ISZERO
00000995: PUSH2 0x099d
00000998: JUMPI
00000999: PUSH1 0x00
0000099b: DUP1
0000099c: REVERT
0000099d: JUMPDEST
0000099e: POP
0000099f: PUSH2 0x0475
000009a2: PUSH2 0x09ac
000009a5: CALLDATASIZE
000009a6: PUSH1 0x04
000009a8: PUSH2 0x31a6
000009ab: JUMP
000009ac: JUMPDEST
000009ad: PUSH2 0x18f0
000009b0: JUMP
000009b1: JUMPDEST
000009b2: CALLVALUE
000009b3: DUP1
000009b4: ISZERO
000009b5: PUSH2 0x09bd
000009b8: JUMPI
000009b9: PUSH1 0x00
000009bb: DUP1
000009bc: REVERT
000009bd: JUMPDEST
000009be: POP
000009bf: PUSH2 0x0475
000009c2: PUSH2 0x09cc
000009c5: CALLDATASIZE
000009c6: PUSH1 0x04
000009c8: PUSH2 0x3069
000009cb: JUMP
000009cc: JUMPDEST
000009cd: PUSH2 0x195d
000009d0: JUMP
000009d1: JUMPDEST
000009d2: CALLVALUE
000009d3: DUP1
000009d4: ISZERO
000009d5: PUSH2 0x09dd
000009d8: JUMPI
000009d9: PUSH1 0x00
000009db: DUP1
000009dc: REVERT
000009dd: JUMPDEST
000009de: POP
000009df: PUSH1 0x11
000009e1: SLOAD
000009e2: PUSH2 0x035a
000009e5: SWAP1
000009e6: PUSH1 0x01
000009e8: PUSH1 0xa0
000009ea: SHL
000009eb: SWAP1
000009ec: DIV
000009ed: PUSH1 0xff
000009ef: AND
000009f0: DUP2
000009f1: JUMP
000009f2: JUMPDEST
000009f3: CALLVALUE
000009f4: DUP1
000009f5: ISZERO
000009f6: PUSH2 0x09fe
000009f9: JUMPI
000009fa: PUSH1 0x00
000009fc: DUP1
000009fd: REVERT
000009fe: JUMPDEST
000009ff: POP
00000a00: PUSH2 0x037f
00000a03: PUSH2 0x0a0d
00000a06: CALLDATASIZE
00000a07: PUSH1 0x04
00000a09: PUSH2 0x3224
00000a0c: JUMP
00000a0d: JUMPDEST
00000a0e: PUSH1 0x01
00000a10: PUSH1 0x01
00000a12: PUSH1 0xa0
00000a14: SHL
00000a15: SUB
00000a16: SWAP2
00000a17: DUP3
00000a18: AND
00000a19: PUSH1 0x00
00000a1b: SWAP1
00000a1c: DUP2
00000a1d: MSTORE
00000a1e: PUSH1 0x02
00000a20: PUSH1 0x20
00000a22: SWAP1
00000a23: DUP2
00000a24: MSTORE
00000a25: PUSH1 0x40
00000a27: DUP1
00000a28: DUP4
00000a29: KECCAK256
00000a2a: SWAP4
00000a2b: SWAP1
00000a2c: SWAP5
00000a2d: AND
00000a2e: DUP3
00000a2f: MSTORE
00000a30: SWAP2
00000a31: SWAP1
00000a32: SWAP2
00000a33: MSTORE
00000a34: KECCAK256
00000a35: SLOAD
00000a36: SWAP1
00000a37: JUMP
00000a38: JUMPDEST
00000a39: CALLVALUE
00000a3a: DUP1
00000a3b: ISZERO
00000a3c: PUSH2 0x0a44
00000a3f: JUMPI
00000a40: PUSH1 0x00
00000a42: DUP1
00000a43: REVERT
00000a44: JUMPDEST
00000a45: POP
00000a46: PUSH1 0x07
00000a48: SLOAD
00000a49: PUSH1 0x01
00000a4b: PUSH1 0x01
00000a4d: PUSH1 0xa0
00000a4f: SHL
00000a50: SUB
00000a51: AND
00000a52: PUSH2 0x07db
00000a55: JUMP
00000a56: JUMPDEST
00000a57: PUSH2 0x0475
00000a5a: PUSH2 0x0a64
00000a5d: CALLDATASIZE
00000a5e: PUSH1 0x04
00000a60: PUSH2 0x324e
00000a63: JUMP
00000a64: JUMPDEST
00000a65: PUSH2 0x19ad
00000a68: JUMP
00000a69: JUMPDEST
00000a6a: CALLVALUE
00000a6b: DUP1
00000a6c: ISZERO
00000a6d: PUSH2 0x0a75
00000a70: JUMPI
00000a71: PUSH1 0x00
00000a73: DUP1
00000a74: REVERT
00000a75: JUMPDEST
00000a76: POP
00000a77: PUSH2 0x0475
00000a7a: PUSH2 0x0a84
00000a7d: CALLDATASIZE
00000a7e: PUSH1 0x04
00000a80: PUSH2 0x3283
00000a83: JUMP
00000a84: JUMPDEST
00000a85: PUSH2 0x1b23
00000a88: JUMP
00000a89: JUMPDEST
00000a8a: CALLVALUE
00000a8b: DUP1
00000a8c: ISZERO
00000a8d: PUSH2 0x0a95
00000a90: JUMPI
00000a91: PUSH1 0x00
00000a93: DUP1
00000a94: REVERT
00000a95: JUMPDEST
00000a96: POP
00000a97: PUSH2 0x0475
00000a9a: PUSH2 0x0aa4
00000a9d: CALLDATASIZE
00000a9e: PUSH1 0x04
00000aa0: PUSH2 0x31a6
00000aa3: JUMP
00000aa4: JUMPDEST
00000aa5: PUSH2 0x1c3f
00000aa8: JUMP
00000aa9: JUMPDEST
00000aaa: PUSH2 0x0475
00000aad: PUSH2 0x0ab7
00000ab0: CALLDATASIZE
00000ab1: PUSH1 0x04
00000ab3: PUSH2 0x31a6
00000ab6: JUMP
00000ab7: JUMPDEST
00000ab8: PUSH2 0x1cb0
00000abb: JUMP
00000abc: JUMPDEST
00000abd: PUSH2 0x0475
00000ac0: PUSH2 0x1da0
00000ac3: JUMP
00000ac4: JUMPDEST
00000ac5: CALLVALUE
00000ac6: DUP1
00000ac7: ISZERO
00000ac8: PUSH2 0x0ad0
00000acb: JUMPI
00000acc: PUSH1 0x00
00000ace: DUP1
00000acf: REVERT
00000ad0: JUMPDEST
00000ad1: POP
00000ad2: PUSH2 0x0ae4
00000ad5: PUSH2 0x0adf
00000ad8: CALLDATASIZE
00000ad9: PUSH1 0x04
00000adb: PUSH2 0x31a6
00000ade: JUMP
00000adf: JUMPDEST
00000ae0: PUSH2 0x1ecc
00000ae3: JUMP
00000ae4: JUMPDEST
00000ae5: PUSH1 0x40
00000ae7: DUP1
00000ae8: MLOAD
00000ae9: SWAP3
00000aea: DUP4
00000aeb: MSTORE
00000aec: PUSH1 0x20
00000aee: DUP4
00000aef: ADD
00000af0: SWAP2
00000af1: SWAP1
00000af2: SWAP2
00000af3: MSTORE
00000af4: ADD
00000af5: PUSH2 0x0331
00000af8: JUMP
00000af9: JUMPDEST
00000afa: CALLVALUE
00000afb: DUP1
00000afc: ISZERO
00000afd: PUSH2 0x0b05
00000b00: JUMPI
00000b01: PUSH1 0x00
00000b03: DUP1
00000b04: REVERT
00000b05: JUMPDEST
00000b06: POP
00000b07: PUSH2 0x0475
00000b0a: PUSH2 0x1faa
00000b0d: JUMP
00000b0e: JUMPDEST
00000b0f: PUSH1 0x60
00000b11: PUSH1 0x04
00000b13: DUP1
00000b14: SLOAD
00000b15: PUSH2 0x0b1d
00000b18: SWAP1
00000b19: PUSH2 0x3324
00000b1c: JUMP
00000b1d: JUMPDEST
00000b1e: DUP1
00000b1f: PUSH1 0x1f
00000b21: ADD
00000b22: PUSH1 0x20
00000b24: DUP1
00000b25: SWAP2
00000b26: DIV
00000b27: MUL
00000b28: PUSH1 0x20
00000b2a: ADD
00000b2b: PUSH1 0x40
00000b2d: MLOAD
00000b2e: SWAP1
00000b2f: DUP2
00000b30: ADD
00000b31: PUSH1 0x40
00000b33: MSTORE
00000b34: DUP1
00000b35: SWAP3
00000b36: SWAP2
00000b37: SWAP1
00000b38: DUP2
00000b39: DUP2
00000b3a: MSTORE
00000b3b: PUSH1 0x20
00000b3d: ADD
00000b3e: DUP3
00000b3f: DUP1
00000b40: SLOAD
00000b41: PUSH2 0x0b49
00000b44: SWAP1
00000b45: PUSH2 0x3324
00000b48: JUMP
00000b49: JUMPDEST
00000b4a: DUP1
00000b4b: ISZERO
00000b4c: PUSH2 0x0b96
00000b4f: JUMPI
00000b50: DUP1
00000b51: PUSH1 0x1f
00000b53: LT
00000b54: PUSH2 0x0b6b
00000b57: JUMPI
00000b58: PUSH2 0x0100
00000b5b: DUP1
00000b5c: DUP4
00000b5d: SLOAD
00000b5e: DIV
00000b5f: MUL
00000b60: DUP4
00000b61: MSTORE
00000b62: SWAP2
00000b63: PUSH1 0x20
00000b65: ADD
00000b66: SWAP2
00000b67: PUSH2 0x0b96
00000b6a: JUMP
00000b6b: JUMPDEST
00000b6c: DUP3
00000b6d: ADD
00000b6e: SWAP2
00000b6f: SWAP1
00000b70: PUSH1 0x00
00000b72: MSTORE
00000b73: PUSH1 0x20
00000b75: PUSH1 0x00
00000b77: KECCAK256
00000b78: SWAP1
00000b79: JUMPDEST
00000b7a: DUP2
00000b7b: SLOAD
00000b7c: DUP2
00000b7d: MSTORE
00000b7e: SWAP1
00000b7f: PUSH1 0x01
00000b81: ADD
00000b82: SWAP1
00000b83: PUSH1 0x20
00000b85: ADD
00000b86: DUP1
00000b87: DUP4
00000b88: GT
00000b89: PUSH2 0x0b79
00000b8c: JUMPI
00000b8d: DUP3
00000b8e: SWAP1
00000b8f: SUB
00000b90: PUSH1 0x1f
00000b92: AND
00000b93: DUP3
00000b94: ADD
00000b95: SWAP2
00000b96: JUMPDEST
00000b97: POP
00000b98: POP
00000b99: POP
00000b9a: POP
00000b9b: POP
00000b9c: SWAP1
00000b9d: POP
00000b9e: SWAP1
00000b9f: JUMP
00000ba0: JUMPDEST
00000ba1: PUSH1 0x00
00000ba3: CALLER
00000ba4: PUSH2 0x0bae
00000ba7: DUP2
00000ba8: DUP6
00000ba9: DUP6
00000baa: PUSH2 0x2189
00000bad: JUMP
00000bae: JUMPDEST
00000baf: PUSH1 0x01
00000bb1: SWAP2
00000bb2: POP
00000bb3: POP
00000bb4: JUMPDEST
00000bb5: SWAP3
00000bb6: SWAP2
00000bb7: POP
00000bb8: POP
00000bb9: JUMP
00000bba: JUMPDEST
00000bbb: PUSH1 0x00
00000bbd: CALLER
00000bbe: PUSH2 0x0bc8
00000bc1: DUP6
00000bc2: DUP3
00000bc3: DUP6
00000bc4: PUSH2 0x219b
00000bc7: JUMP
00000bc8: JUMPDEST
00000bc9: PUSH2 0x0bd3
00000bcc: DUP6
00000bcd: DUP6
00000bce: DUP6
00000bcf: PUSH2 0x2219
00000bd2: JUMP
00000bd3: JUMPDEST
00000bd4: PUSH1 0x01
00000bd6: SWAP2
00000bd7: POP
00000bd8: POP
00000bd9: JUMPDEST
00000bda: SWAP4
00000bdb: SWAP3
00000bdc: POP
00000bdd: POP
00000bde: POP
00000bdf: JUMP
00000be0: JUMPDEST
00000be1: PUSH2 0x0be8
00000be4: PUSH2 0x2278
00000be7: JUMP
00000be8: JUMPDEST
00000be9: CALLER
00000bea: PUSH1 0x00
00000bec: SWAP1
00000bed: DUP2
00000bee: MSTORE
00000bef: PUSH1 0x08
00000bf1: PUSH1 0x20
00000bf3: MSTORE
00000bf4: PUSH1 0x40
00000bf6: SWAP1
00000bf7: KECCAK256
00000bf8: PUSH1 0x0d
00000bfa: SLOAD
00000bfb: PUSH2 0xffff
00000bfe: AND
00000bff: DUP3
00000c00: PUSH2 0x0c24
00000c03: JUMPI
00000c04: PUSH1 0x40
00000c06: MLOAD
00000c07: PUSH3 0x461bcd
00000c0b: PUSH1 0xe5
00000c0d: SHL
00000c0e: DUP2
00000c0f: MSTORE
00000c10: PUSH1 0x04
00000c12: ADD
00000c13: PUSH2 0x0c1b
00000c16: SWAP1
00000c17: PUSH2 0x335e
00000c1a: JUMP
00000c1b: JUMPDEST
00000c1c: PUSH1 0x40
00000c1e: MLOAD
00000c1f: DUP1
00000c20: SWAP2
00000c21: SUB
00000c22: SWAP1
00000c23: REVERT
00000c24: JUMPDEST
00000c25: DUP2
00000c26: SLOAD
00000c27: PUSH2 0xffff
00000c2a: AND
00000c2b: DUP2
00000c2c: EQ
00000c2d: PUSH2 0x0c68
00000c30: JUMPI
00000c31: PUSH1 0x40
00000c33: MLOAD
00000c34: PUSH3 0x461bcd
00000c38: PUSH1 0xe5
00000c3a: SHL
00000c3b: DUP2
00000c3c: MSTORE
00000c3d: PUSH1 0x20
00000c3f: PUSH1 0x04
00000c41: DUP3
00000c42: ADD
00000c43: MSTORE
00000c44: PUSH1 0x0d
00000c46: PUSH1 0x24
00000c48: DUP3
00000c49: ADD
00000c4a: MSTORE
00000c4b: PUSH13 0x125b9d985b1a59081c9bdd5b99
00000c59: PUSH1 0x9a
00000c5b: SHL
00000c5c: PUSH1 0x44
00000c5e: DUP3
00000c5f: ADD
00000c60: MSTORE
00000c61: PUSH1 0x64
00000c63: ADD
00000c64: PUSH2 0x0c1b
00000c67: JUMP
00000c68: JUMPDEST
00000c69: DUP2
00000c6a: SLOAD
00000c6b: PUSH3 0x010000
00000c6f: SWAP1
00000c70: DIV
00000c71: PUSH1 0x01
00000c73: PUSH1 0x01
00000c75: PUSH1 0x68
00000c77: SHL
00000c78: SUB
00000c79: AND
00000c7a: DUP4
00000c7b: DUP2
00000c7c: LT
00000c7d: ISZERO
00000c7e: PUSH2 0x0cb9
00000c81: JUMPI
00000c82: PUSH1 0x40
00000c84: MLOAD
00000c85: PUSH3 0x461bcd
00000c89: PUSH1 0xe5
00000c8b: SHL
00000c8c: DUP2
00000c8d: MSTORE
00000c8e: PUSH1 0x20
00000c90: PUSH1 0x04
00000c92: DUP3
00000c93: ADD
00000c94: MSTORE
00000c95: PUSH1 0x0d
00000c97: PUSH1 0x24
00000c99: DUP3
00000c9a: ADD
00000c9b: MSTORE
00000c9c: PUSH13 0x115e18d9595908185b5bdd5b9d
00000caa: PUSH1 0x9a
00000cac: SHL
00000cad: PUSH1 0x44
00000caf: DUP3
00000cb0: ADD
00000cb1: MSTORE
00000cb2: PUSH1 0x64
00000cb4: ADD
00000cb5: PUSH2 0x0c1b
00000cb8: JUMP
00000cb9: JUMPDEST
00000cba: PUSH2 0x0cc3
00000cbd: DUP5
00000cbe: DUP3
00000cbf: PUSH2 0x3395
00000cc2: JUMP
00000cc3: JUMPDEST
00000cc4: DUP4
00000cc5: SLOAD
00000cc6: PUSH1 0x01
00000cc8: PUSH1 0x01
00000cca: PUSH1 0x68
00000ccc: SHL
00000ccd: SUB
00000cce: SWAP2
00000ccf: SWAP1
00000cd0: SWAP2
00000cd1: AND
00000cd2: PUSH3 0x010000
00000cd6: MUL
00000cd7: PUSH3 0x010000
00000cdb: PUSH1 0x01
00000cdd: PUSH1 0x78
00000cdf: SHL
00000ce0: SUB
00000ce1: NOT
00000ce2: SWAP1
00000ce3: SWAP2
00000ce4: AND
00000ce5: OR
00000ce6: DUP4
00000ce7: SSTORE
00000ce8: PUSH1 0x0e
00000cea: SLOAD
00000ceb: PUSH2 0x0cfe
00000cee: SWAP1
00000cef: DUP6
00000cf0: SWAP1
00000cf1: PUSH1 0x01
00000cf3: PUSH1 0x01
00000cf5: PUSH1 0x80
00000cf7: SHL
00000cf8: SUB
00000cf9: AND
00000cfa: PUSH2 0x3395
00000cfd: JUMP
00000cfe: JUMPDEST
00000cff: PUSH1 0x0e
00000d01: DUP1
00000d02: SLOAD
00000d03: PUSH1 0x01
00000d05: PUSH1 0x01
00000d07: PUSH1 0x80
00000d09: SHL
00000d0a: SUB
00000d0b: NOT
00000d0c: AND
00000d0d: PUSH1 0x01
00000d0f: PUSH1 0x01
00000d11: PUSH1 0x80
00000d13: SHL
00000d14: SUB
00000d15: SWAP3
00000d16: SWAP1
00000d17: SWAP3
00000d18: AND
00000d19: SWAP2
00000d1a: SWAP1
00000d1b: SWAP2
00000d1c: OR
00000d1d: SWAP1
00000d1e: SSTORE
00000d1f: PUSH1 0x40
00000d21: DUP1
00000d22: MLOAD
00000d23: DUP6
00000d24: DUP2
00000d25: MSTORE
00000d26: PUSH1 0x20
00000d28: DUP2
00000d29: ADD
00000d2a: DUP5
00000d2b: SWAP1
00000d2c: MSTORE
00000d2d: CALLER
00000d2e: SWAP2
00000d2f: PUSH32 0xab2daf3c146ca6416cbccd2a86ed2ba995e171ef6319df14a38aef01403a9c96
00000d50: SWAP2
00000d51: ADD
00000d52: PUSH1 0x40
00000d54: MLOAD
00000d55: DUP1
00000d56: SWAP2
00000d57: SUB
00000d58: SWAP1
00000d59: LOG2
00000d5a: PUSH2 0x0d63
00000d5d: CALLER
00000d5e: DUP6
00000d5f: PUSH2 0x22a2
00000d62: JUMP
00000d63: JUMPDEST
00000d64: POP
00000d65: POP
00000d66: POP
00000d67: PUSH2 0x0d70
00000d6a: PUSH1 0x01
00000d6c: PUSH1 0x00
00000d6e: SSTORE
00000d6f: JUMP
00000d70: JUMPDEST
00000d71: POP
00000d72: JUMP
00000d73: JUMPDEST
00000d74: PUSH2 0x0d7b
00000d77: PUSH2 0x2278
00000d7a: JUMP
00000d7b: JUMPDEST
00000d7c: PUSH1 0x11
00000d7e: SLOAD
00000d7f: PUSH1 0x01
00000d81: PUSH1 0xa0
00000d83: SHL
00000d84: SWAP1
00000d85: DIV
00000d86: PUSH1 0xff
00000d88: AND
00000d89: PUSH2 0x0e10
00000d8c: JUMPI
00000d8d: PUSH1 0x12
00000d8f: SLOAD
00000d90: PUSH1 0x40
00000d92: MLOAD
00000d93: PUSH1 0x01
00000d95: PUSH1 0x01
00000d97: PUSH1 0x60
00000d99: SHL
00000d9a: SUB
00000d9b: NOT
00000d9c: CALLER
00000d9d: PUSH1 0x60
00000d9f: SHL
00000da0: AND
00000da1: PUSH1 0x20
00000da3: DUP3
00000da4: ADD
00000da5: MSTORE
00000da6: PUSH2 0x0dd4
00000da9: SWAP2
00000daa: SWAP1
00000dab: PUSH1 0x34
00000dad: ADD
00000dae: JUMPDEST
00000daf: PUSH1 0x40
00000db1: MLOAD
00000db2: PUSH1 0x20
00000db4: DUP2
00000db5: DUP4
00000db6: SUB
00000db7: SUB
00000db8: DUP2
00000db9: MSTORE
00000dba: SWAP1
00000dbb: PUSH1 0x40
00000dbd: MSTORE
00000dbe: DUP1
00000dbf: MLOAD
00000dc0: SWAP1
00000dc1: PUSH1 0x20
00000dc3: ADD
00000dc4: KECCAK256
00000dc5: DUP4
00000dc6: PUSH2 0x2408
00000dc9: SWAP1
00000dca: SWAP3
00000dcb: SWAP2
00000dcc: SWAP1
00000dcd: PUSH4 0xffffffff
00000dd2: AND
00000dd3: JUMP
00000dd4: JUMPDEST
00000dd5: PUSH2 0x0e10
00000dd8: JUMPI
00000dd9: PUSH1 0x40
00000ddb: MLOAD
00000ddc: PUSH3 0x461bcd
00000de0: PUSH1 0xe5
00000de2: SHL
00000de3: DUP2
00000de4: MSTORE
00000de5: PUSH1 0x20
00000de7: PUSH1 0x04
00000de9: DUP3
00000dea: ADD
00000deb: MSTORE
00000dec: PUSH1 0x0d
00000dee: PUSH1 0x24
00000df0: DUP3
00000df1: ADD
00000df2: MSTORE
00000df3: PUSH13 0x24b73b30b634b210383937b7b3
00000e01: PUSH1 0x99
00000e03: SHL
00000e04: PUSH1 0x44
00000e06: DUP3
00000e07: ADD
00000e08: MSTORE
00000e09: PUSH1 0x64
00000e0b: ADD
00000e0c: PUSH2 0x0c1b
00000e0f: JUMP
00000e10: JUMPDEST
00000e11: PUSH1 0x00
00000e13: DUP3
00000e14: GT
00000e15: PUSH2 0x0e30
00000e18: JUMPI
00000e19: PUSH1 0x40
00000e1b: MLOAD
00000e1c: PUSH3 0x461bcd
00000e20: PUSH1 0xe5
00000e22: SHL
00000e23: DUP2
00000e24: MSTORE
00000e25: PUSH1 0x04
00000e27: ADD
00000e28: PUSH2 0x0c1b
00000e2b: SWAP1
00000e2c: PUSH2 0x335e
00000e2f: JUMP
00000e30: JUMPDEST
00000e31: PUSH2 0x0e3a
00000e34: DUP3
00000e35: CALLER
00000e36: PUSH2 0x244a
00000e39: JUMP
00000e3a: JUMPDEST
00000e3b: PUSH1 0x0b
00000e3d: SLOAD
00000e3e: PUSH2 0x0e57
00000e41: SWAP1
00000e42: PUSH2 0x0100
00000e45: SWAP1
00000e46: DIV
00000e47: PUSH1 0x01
00000e49: PUSH1 0x01
00000e4b: PUSH1 0xa0
00000e4d: SHL
00000e4e: SUB
00000e4f: AND
00000e50: CALLER
00000e51: ADDRESS
00000e52: DUP6
00000e53: PUSH2 0x26d8
00000e56: JUMP
00000e57: JUMPDEST
00000e58: PUSH2 0x0e61
00000e5b: PUSH1 0x01
00000e5d: PUSH1 0x00
00000e5f: SSTORE
00000e60: JUMP
00000e61: JUMPDEST
00000e62: POP
00000e63: POP
00000e64: JUMP
00000e65: JUMPDEST
00000e66: PUSH2 0x0e6d
00000e69: PUSH2 0x2278
00000e6c: JUMP
00000e6d: JUMPDEST
00000e6e: PUSH1 0x11
00000e70: SLOAD
00000e71: PUSH1 0x01
00000e73: PUSH1 0xa0
00000e75: SHL
00000e76: SWAP1
00000e77: DIV
00000e78: PUSH1 0xff
00000e7a: AND
00000e7b: PUSH2 0x0e96
00000e7e: JUMPI
00000e7f: PUSH1 0x40
00000e81: MLOAD
00000e82: PUSH3 0x461bcd
00000e86: PUSH1 0xe5
00000e88: SHL
00000e89: DUP2
00000e8a: MSTORE
00000e8b: PUSH1 0x04
00000e8d: ADD
00000e8e: PUSH2 0x0c1b
00000e91: SWAP1
00000e92: PUSH2 0x33a8
00000e95: JUMP
00000e96: JUMPDEST
00000e97: PUSH1 0x00
00000e99: DUP3
00000e9a: GT
00000e9b: PUSH2 0x0eb6
00000e9e: JUMPI
00000e9f: PUSH1 0x40
00000ea1: MLOAD
00000ea2: PUSH3 0x461bcd
00000ea6: PUSH1 0xe5
00000ea8: SHL
00000ea9: DUP2
00000eaa: MSTORE
00000eab: PUSH1 0x04
00000ead: ADD
00000eae: PUSH2 0x0c1b
00000eb1: SWAP1
00000eb2: PUSH2 0x335e
00000eb5: JUMP
00000eb6: JUMPDEST
00000eb7: PUSH1 0x01
00000eb9: PUSH1 0x01
00000ebb: PUSH1 0xa0
00000ebd: SHL
00000ebe: SUB
00000ebf: DUP2
00000ec0: AND
00000ec1: PUSH2 0x0ef8
00000ec4: JUMPI
00000ec5: PUSH1 0x40
00000ec7: MLOAD
00000ec8: PUSH3 0x461bcd
00000ecc: PUSH1 0xe5
00000ece: SHL
00000ecf: DUP2
00000ed0: MSTORE
00000ed1: PUSH1 0x20
00000ed3: PUSH1 0x04
00000ed5: DUP3
00000ed6: ADD
00000ed7: MSTORE
00000ed8: PUSH1 0x09
00000eda: PUSH1 0x24
00000edc: DUP3
00000edd: ADD
00000ede: MSTORE
00000edf: PUSH9 0x10b1b932b234ba37b9
00000ee9: PUSH1 0xb9
00000eeb: SHL
00000eec: PUSH1 0x44
00000eee: DUP3
00000eef: ADD
00000ef0: MSTORE
00000ef1: PUSH1 0x64
00000ef3: ADD
00000ef4: PUSH2 0x0c1b
00000ef7: JUMP
00000ef8: JUMPDEST
00000ef9: PUSH2 0x0e3a
00000efc: DUP3
00000efd: DUP3
00000efe: PUSH2 0x244a
00000f01: JUMP
00000f02: JUMPDEST
00000f03: PUSH1 0x11
00000f05: SLOAD
00000f06: PUSH1 0x01
00000f08: PUSH1 0x01
00000f0a: PUSH1 0xa0
00000f0c: SHL
00000f0d: SUB
00000f0e: AND
00000f0f: CALLER
00000f10: EQ
00000f11: PUSH2 0x0f46
00000f14: JUMPI
00000f15: PUSH1 0x40
00000f17: MLOAD
00000f18: PUSH3 0x461bcd
00000f1c: PUSH1 0xe5
00000f1e: SHL
00000f1f: DUP2
00000f20: MSTORE
00000f21: PUSH1 0x20
00000f23: PUSH1 0x04
00000f25: DUP3
00000f26: ADD
00000f27: MSTORE
00000f28: PUSH1 0x07
00000f2a: PUSH1 0x24
00000f2c: DUP3
00000f2d: ADD
00000f2e: MSTORE
00000f2f: PUSH7 0x10b5b2b2b832b9
00000f37: PUSH1 0xc9
00000f39: SHL
00000f3a: PUSH1 0x44
00000f3c: DUP3
00000f3d: ADD
00000f3e: MSTORE
00000f3f: PUSH1 0x64
00000f41: ADD
00000f42: PUSH2 0x0c1b
00000f45: JUMP
00000f46: JUMPDEST
00000f47: PUSH2 0x0f4e
00000f4a: PUSH2 0x2278
00000f4d: JUMP
00000f4e: JUMPDEST
00000f4f: PUSH1 0x0b
00000f51: SLOAD
00000f52: PUSH1 0x01
00000f54: PUSH1 0xa8
00000f56: SHL
00000f57: SWAP1
00000f58: DIV
00000f59: PUSH7 0xffffffffffffff
00000f61: AND
00000f62: DUP2
00000f63: LT
00000f64: ISZERO
00000f65: PUSH2 0x0fa7
00000f68: JUMPI
00000f69: PUSH1 0x40
00000f6b: MLOAD
00000f6c: PUSH3 0x461bcd
00000f70: PUSH1 0xe5
00000f72: SHL
00000f73: DUP2
00000f74: MSTORE
00000f75: PUSH1 0x20
00000f77: PUSH1 0x04
00000f79: DUP3
00000f7a: ADD
00000f7b: MSTORE
00000f7c: PUSH1 0x14
00000f7e: PUSH1 0x24
00000f80: DUP3
00000f81: ADD
00000f82: MSTORE
00000f83: PUSH20 0x496e73756666696369656e742062616c616e6365
00000f98: PUSH1 0x60
00000f9a: SHL
00000f9b: PUSH1 0x44
00000f9d: DUP3
00000f9e: ADD
00000f9f: MSTORE
00000fa0: PUSH1 0x64
00000fa2: ADD
00000fa3: PUSH2 0x0c1b
00000fa6: JUMP
00000fa7: JUMPDEST
00000fa8: PUSH1 0x40
00000faa: DUP1
00000fab: MLOAD
00000fac: PUSH1 0xa0
00000fae: DUP2
00000faf: ADD
00000fb0: DUP3
00000fb1: MSTORE
00000fb2: PUSH1 0x0d
00000fb4: SLOAD
00000fb5: PUSH2 0xffff
00000fb8: DUP2
00000fb9: AND
00000fba: DUP1
00000fbb: DUP4
00000fbc: MSTORE
00000fbd: PUSH1 0x01
00000fbf: PUSH1 0x01
00000fc1: PUSH1 0x68
00000fc3: SHL
00000fc4: SUB
00000fc5: PUSH3 0x010000
00000fc9: DUP4
00000fca: DIV
00000fcb: DUP2
00000fcc: AND
00000fcd: PUSH1 0x20
00000fcf: DUP6
00000fd0: ADD
00000fd1: MSTORE
00000fd2: PUSH1 0x01
00000fd4: PUSH1 0x78
00000fd6: SHL
00000fd7: SWAP1
00000fd8: SWAP3
00000fd9: DIV
00000fda: SWAP1
00000fdb: SWAP2
00000fdc: AND
00000fdd: SWAP3
00000fde: DUP3
00000fdf: ADD
00000fe0: SWAP3
00000fe1: SWAP1
00000fe2: SWAP3
00000fe3: MSTORE
00000fe4: PUSH1 0x0e
00000fe6: SLOAD
00000fe7: PUSH1 0x01
00000fe9: PUSH1 0x01
00000feb: PUSH1 0x80
00000fed: SHL
00000fee: SUB
00000fef: DUP1
00000ff0: DUP3
00000ff1: AND
00000ff2: PUSH1 0x60
00000ff4: DUP5
00000ff5: ADD
00000ff6: MSTORE
00000ff7: PUSH1 0x01
00000ff9: PUSH1 0x80
00000ffb: SHL
00000ffc: SWAP1
00000ffd: SWAP2
00000ffe: DIV
00000fff: AND
00001000: PUSH1 0x80
00001002: DUP3
00001003: ADD
00001004: DUP2
00001005: SWAP1
00001006: MSTORE
00001007: SWAP1
00001008: SWAP2
00001009: SWAP1
0000100a: PUSH1 0x00
0000100c: SWAP1
0000100d: PUSH2 0x104c
00001010: SWAP1
00001011: PUSH2 0x1019
00001014: PUSH1 0x03
00001016: SLOAD
00001017: SWAP1
00001018: JUMP
00001019: JUMPDEST
0000101a: PUSH2 0x1023
0000101d: SWAP2
0000101e: SWAP1
0000101f: PUSH2 0x3395
00001022: JUMP
00001023: JUMPDEST
00001024: PUSH1 0x0f
00001026: SLOAD
00001027: PUSH2 0x1030
0000102a: SWAP1
0000102b: DUP8
0000102c: PUSH2 0x3395
0000102f: JUMP
00001030: JUMPDEST
00001031: PUSH1 0x60
00001033: DUP7
00001034: ADD
00001035: MLOAD
00001036: PUSH1 0x0b
00001038: SLOAD
00001039: PUSH1 0x01
0000103b: PUSH1 0x01
0000103d: PUSH1 0x80
0000103f: SHL
00001040: SUB
00001041: SWAP1
00001042: SWAP2
00001043: AND
00001044: SWAP1
00001045: PUSH1 0xff
00001047: AND
00001048: PUSH2 0x273f
0000104b: JUMP
0000104c: JUMPDEST
0000104d: PUSH1 0x00
0000104f: DUP4
00001050: DUP2
00001051: MSTORE
00001052: PUSH1 0x09
00001054: PUSH1 0x20
00001056: SWAP1
00001057: DUP2
00001058: MSTORE
00001059: PUSH1 0x40
0000105b: SWAP2
0000105c: DUP3
0000105d: SWAP1
0000105e: KECCAK256
0000105f: DUP4
00001060: SWAP1
00001061: SSTORE
00001062: DUP2
00001063: MLOAD
00001064: DUP6
00001065: DUP2
00001066: MSTORE
00001067: SWAP1
00001068: DUP2
00001069: ADD
0000106a: DUP4
0000106b: SWAP1
0000106c: MSTORE
0000106d: SWAP1
0000106e: DUP2
0000106f: ADD
00001070: DUP7
00001071: SWAP1
00001072: MSTORE
00001073: SWAP1
00001074: SWAP2
00001075: POP
00001076: PUSH32 0x509ab3a60bcf0e5158f6bdabea90d540867b8a80428adae5bad92fe0a7e604d1
00001097: SWAP1
00001098: PUSH1 0x60
0000109a: ADD
0000109b: PUSH1 0x40
0000109d: MLOAD
0000109e: DUP1
0000109f: SWAP2
000010a0: SUB
000010a1: SWAP1
000010a2: LOG1
000010a3: PUSH1 0x0e
000010a5: DUP1
000010a6: SLOAD
000010a7: PUSH1 0x01
000010a9: PUSH1 0x01
000010ab: PUSH1 0x80
000010ad: SHL
000010ae: SUB
000010af: NOT
000010b0: AND
000010b1: SWAP1
000010b2: SSTORE
000010b3: PUSH2 0x10bd
000010b6: DUP3
000010b7: PUSH1 0x01
000010b9: PUSH2 0x33c9
000010bc: JUMP
000010bd: JUMPDEST
000010be: PUSH1 0x0d
000010c0: DUP1
000010c1: SLOAD
000010c2: PUSH2 0xffff
000010c5: NOT
000010c6: AND
000010c7: PUSH2 0xffff
000010ca: SWAP3
000010cb: SWAP1
000010cc: SWAP3
000010cd: AND
000010ce: SWAP2
000010cf: SWAP1
000010d0: SWAP2
000010d1: OR
000010d2: SWAP1
000010d3: SSTORE
000010d4: PUSH1 0x60
000010d6: DUP4
000010d7: ADD
000010d8: MLOAD
000010d9: PUSH1 0x0b
000010db: SLOAD
000010dc: PUSH1 0x00
000010de: SWAP2
000010df: PUSH2 0x10f8
000010e2: SWAP2
000010e3: PUSH1 0x01
000010e5: PUSH1 0x01
000010e7: PUSH1 0x80
000010e9: SHL
000010ea: SUB
000010eb: SWAP1
000010ec: SWAP2
000010ed: AND
000010ee: SWAP1
000010ef: DUP5
000010f0: SWAP1
000010f1: PUSH1 0xff
000010f3: AND
000010f4: PUSH2 0x2786
000010f7: JUMP
000010f8: JUMPDEST
000010f9: SWAP1
000010fa: POP
000010fb: PUSH2 0x1104
000010fe: ADDRESS
000010ff: DUP3
00001100: PUSH2 0x27f0
00001103: JUMP
00001104: JUMPDEST
00001105: PUSH1 0x10
00001107: SLOAD
00001108: PUSH1 0x0b
0000110a: SLOAD
0000110b: PUSH1 0x00
0000110d: SWAP2
0000110e: PUSH2 0x111b
00001111: SWAP2
00001112: DUP6
00001113: SWAP1
00001114: PUSH1 0xff
00001116: AND
00001117: PUSH2 0x2826
0000111a: JUMP
0000111b: JUMPDEST
0000111c: PUSH1 0x0f
0000111e: SLOAD
0000111f: PUSH2 0x1128
00001122: SWAP2
00001123: SWAP1
00001124: PUSH2 0x33c9
00001127: JUMP
00001128: JUMPDEST
00001129: SWAP1
0000112a: POP
0000112b: DUP1
0000112c: PUSH1 0x0f
0000112e: DUP2
0000112f: SWAP1
00001130: SSTORE
00001131: POP
00001132: PUSH1 0x00
00001134: PUSH1 0x10
00001136: SLOAD
00001137: DUP7
00001138: PUSH1 0x80
0000113a: ADD
0000113b: MLOAD
0000113c: PUSH1 0x01
0000113e: PUSH1 0x01
00001140: PUSH1 0x80
00001142: SHL
00001143: SUB
00001144: AND
00001145: PUSH2 0x114e
00001148: SWAP2
00001149: SWAP1
0000114a: PUSH2 0x33c9
0000114d: JUMP
0000114e: JUMPDEST
0000114f: SWAP1
00001150: POP
00001151: PUSH2 0x1159
00001154: DUP2
00001155: PUSH2 0x2885
00001158: JUMP
00001159: JUMPDEST
0000115a: PUSH1 0x0e
0000115c: DUP1
0000115d: SLOAD
0000115e: PUSH1 0x01
00001160: PUSH1 0x01
00001162: PUSH1 0x80
00001164: SHL
00001165: SUB
00001166: DUP1
00001167: DUP5
00001168: AND
00001169: PUSH1 0x01
0000116b: PUSH1 0x80
0000116d: SHL
0000116e: MUL
0000116f: SWAP2
00001170: AND
00001171: OR
00001172: SWAP1
00001173: SSTORE
00001174: PUSH1 0x00
00001176: PUSH1 0x10
00001178: DUP2
00001179: SWAP1
0000117a: SSTORE
0000117b: PUSH1 0x20
0000117d: DUP8
0000117e: ADD
0000117f: MLOAD
00001180: PUSH1 0x0d
00001182: DUP1
00001183: SLOAD
00001184: PUSH1 0x01
00001186: PUSH1 0x01
00001188: PUSH1 0x68
0000118a: SHL
0000118b: SUB
0000118c: SWAP1
0000118d: SWAP3
0000118e: AND
0000118f: PUSH1 0x01
00001191: PUSH1 0x78
00001193: SHL
00001194: MUL
00001195: PUSH13 0xffffffffffffffffffffffffff
000011a3: PUSH1 0x78
000011a5: SHL
000011a6: NOT
000011a7: SWAP1
000011a8: SWAP3
000011a9: AND
000011aa: SWAP2
000011ab: SWAP1
000011ac: SWAP2
000011ad: OR
000011ae: SWAP1
000011af: SSTORE
000011b0: PUSH2 0x11b9
000011b3: DUP4
000011b4: DUP10
000011b5: PUSH2 0x3395
000011b8: JUMP
000011b9: JUMPDEST
000011ba: SWAP1
000011bb: POP
000011bc: PUSH2 0x11c4
000011bf: DUP2
000011c0: PUSH2 0x28cf
000011c3: JUMP
000011c4: JUMPDEST
000011c5: PUSH1 0x0d
000011c7: DUP1
000011c8: SLOAD
000011c9: PUSH3 0x010000
000011cd: PUSH1 0x01
000011cf: PUSH1 0x78
000011d1: SHL
000011d2: SUB
000011d3: NOT
000011d4: AND
000011d5: PUSH3 0x010000
000011d9: PUSH1 0x01
000011db: PUSH1 0x01
000011dd: PUSH1 0x68
000011df: SHL
000011e0: SUB
000011e1: DUP5
000011e2: AND
000011e3: MUL
000011e4: OR
000011e5: SWAP1
000011e6: SSTORE
000011e7: PUSH1 0x11
000011e9: SLOAD
000011ea: PUSH1 0x0b
000011ec: SLOAD
000011ed: PUSH1 0x40
000011ef: MLOAD
000011f0: PUSH4 0x70a08231
000011f5: PUSH1 0xe0
000011f7: SHL
000011f8: DUP2
000011f9: MSTORE
000011fa: ADDRESS
000011fb: PUSH1 0x04
000011fd: DUP3
000011fe: ADD
000011ff: MSTORE
00001200: PUSH2 0x1287
00001203: SWAP3
00001204: PUSH1 0x01
00001206: PUSH1 0x01
00001208: PUSH1 0xa0
0000120a: SHL
0000120b: SUB
0000120c: SWAP1
0000120d: DUP2
0000120e: AND
0000120f: SWAP3
00001210: DUP8
00001211: SWAP3
00001212: PUSH2 0x0100
00001215: SWAP1
00001216: SWAP2
00001217: DIV
00001218: SWAP1
00001219: SWAP2
0000121a: AND
0000121b: SWAP1
0000121c: PUSH4 0x70a08231
00001221: SWAP1
00001222: PUSH1 0x24
00001224: ADD
00001225: PUSH1 0x20
00001227: PUSH1 0x40
00001229: MLOAD
0000122a: DUP1
0000122b: DUP4
0000122c: SUB
0000122d: DUP2
0000122e: DUP7
0000122f: GAS
00001230: STATICCALL
00001231: ISZERO
00001232: DUP1
00001233: ISZERO
00001234: PUSH2 0x1241
00001237: JUMPI
00001238: RETURNDATASIZE
00001239: PUSH1 0x00
0000123b: DUP1
0000123c: RETURNDATACOPY
0000123d: RETURNDATASIZE
0000123e: PUSH1 0x00
00001240: REVERT
00001241: JUMPDEST
00001242: POP
00001243: POP
00001244: POP
00001245: POP
00001246: PUSH1 0x40
00001248: MLOAD
00001249: RETURNDATASIZE
0000124a: PUSH1 0x1f
0000124c: NOT
0000124d: PUSH1 0x1f
0000124f: DUP3
00001250: ADD
00001251: AND
00001252: DUP3
00001253: ADD
00001254: DUP1
00001255: PUSH1 0x40
00001257: MSTORE
00001258: POP
00001259: DUP2
0000125a: ADD
0000125b: SWAP1
0000125c: PUSH2 0x1265
0000125f: SWAP2
00001260: SWAP1
00001261: PUSH2 0x33dc
00001264: JUMP
00001265: JUMPDEST
00001266: PUSH2 0x126f
00001269: SWAP2
0000126a: SWAP1
0000126b: PUSH2 0x3395
0000126e: JUMP
0000126f: JUMPDEST
00001270: PUSH1 0x0b
00001272: SLOAD
00001273: PUSH2 0x0100
00001276: SWAP1
00001277: DIV
00001278: PUSH1 0x01
0000127a: PUSH1 0x01
0000127c: PUSH1 0xa0
0000127e: SHL
0000127f: SUB
00001280: AND
00001281: SWAP2
00001282: SWAP1
00001283: PUSH2 0x2919
00001286: JUMP
00001287: JUMPDEST
00001288: POP
00001289: POP
0000128a: POP
0000128b: POP
0000128c: POP
0000128d: POP
0000128e: POP
0000128f: PUSH2 0x0d70
00001292: PUSH1 0x01
00001294: PUSH1 0x00
00001296: SSTORE
00001297: JUMP
00001298: JUMPDEST
00001299: PUSH1 0x40
0000129b: DUP1
0000129c: MLOAD
0000129d: PUSH1 0xa0
0000129f: DUP2
000012a0: ADD
000012a1: DUP3
000012a2: MSTORE
000012a3: PUSH1 0x0d
000012a5: SLOAD
000012a6: PUSH2 0xffff
000012a9: DUP2
000012aa: AND
000012ab: DUP3
000012ac: MSTORE
000012ad: PUSH1 0x01
000012af: PUSH1 0x01
000012b1: PUSH1 0x68
000012b3: SHL
000012b4: SUB
000012b5: PUSH3 0x010000
000012b9: DUP3
000012ba: DIV
000012bb: DUP2
000012bc: AND
000012bd: PUSH1 0x20
000012bf: DUP5
000012c0: ADD
000012c1: MSTORE
000012c2: PUSH1 0x01
000012c4: PUSH1 0x78
000012c6: SHL
000012c7: SWAP1
000012c8: SWAP2
000012c9: DIV
000012ca: AND
000012cb: SWAP2
000012cc: DUP2
000012cd: ADD
000012ce: SWAP2
000012cf: SWAP1
000012d0: SWAP2
000012d1: MSTORE
000012d2: PUSH1 0x0e
000012d4: SLOAD
000012d5: PUSH1 0x01
000012d7: PUSH1 0x01
000012d9: PUSH1 0x80
000012db: SHL
000012dc: SUB
000012dd: DUP1
000012de: DUP3
000012df: AND
000012e0: PUSH1 0x60
000012e2: DUP5
000012e3: ADD
000012e4: MSTORE
000012e5: PUSH1 0x01
000012e7: PUSH1 0x80
000012e9: SHL
000012ea: SWAP1
000012eb: SWAP2
000012ec: DIV
000012ed: AND
000012ee: PUSH1 0x80
000012f0: DUP3
000012f1: ADD
000012f2: DUP2
000012f3: SWAP1
000012f4: MSTORE
000012f5: PUSH1 0x00
000012f7: SWAP2
000012f8: SWAP1
000012f9: DUP3
000012fa: SWAP1
000012fb: PUSH2 0x133a
000012fe: SWAP1
000012ff: PUSH2 0x1307
00001302: PUSH1 0x03
00001304: SLOAD
00001305: SWAP1
00001306: JUMP
00001307: JUMPDEST
00001308: PUSH2 0x1311
0000130b: SWAP2
0000130c: SWAP1
0000130d: PUSH2 0x3395
00001310: JUMP
00001311: JUMPDEST
00001312: PUSH1 0x0f
00001314: SLOAD
00001315: PUSH2 0x131e
00001318: SWAP1
00001319: DUP8
0000131a: PUSH2 0x3395
0000131d: JUMP
0000131e: JUMPDEST
0000131f: PUSH1 0x60
00001321: DUP6
00001322: ADD
00001323: MLOAD
00001324: PUSH1 0x0b
00001326: SLOAD
00001327: PUSH1 0x01
00001329: PUSH1 0x01
0000132b: PUSH1 0x80
0000132d: SHL
0000132e: SUB
0000132f: SWAP1
00001330: SWAP2
00001331: AND
00001332: SWAP1
00001333: PUSH1 0xff
00001335: AND
00001336: PUSH2 0x273f
00001339: JUMP
0000133a: JUMPDEST
0000133b: PUSH1 0x10
0000133d: SLOAD
0000133e: PUSH1 0x0b
00001340: SLOAD
00001341: SWAP2
00001342: SWAP3
00001343: POP
00001344: PUSH2 0x1351
00001347: SWAP2
00001348: DUP4
00001349: SWAP1
0000134a: PUSH1 0xff
0000134c: AND
0000134d: PUSH2 0x2826
00001350: JUMP
00001351: JUMPDEST
00001352: PUSH1 0x0f
00001354: SLOAD
00001355: PUSH2 0x135e
00001358: SWAP2
00001359: SWAP1
0000135a: PUSH2 0x33c9
0000135d: JUMP
0000135e: JUMPDEST
0000135f: SWAP5
00001360: SWAP4
00001361: POP
00001362: POP
00001363: POP
00001364: POP
00001365: JUMP
00001366: JUMPDEST
00001367: PUSH1 0x0b
00001369: SLOAD
0000136a: PUSH1 0x00
0000136c: SWAP1
0000136d: PUSH1 0xff
0000136f: AND
00001370: DUP2
00001371: PUSH2 0x1396
00001374: PUSH2 0x137c
00001377: PUSH1 0x03
00001379: SLOAD
0000137a: SWAP1
0000137b: JUMP
0000137c: JUMPDEST
0000137d: PUSH2 0x1384
00001380: PUSH2 0x1765
00001383: JUMP
00001384: JUMPDEST
00001385: PUSH1 0x0e
00001387: SLOAD
00001388: PUSH1 0x01
0000138a: PUSH1 0x01
0000138c: PUSH1 0x80
0000138e: SHL
0000138f: SUB
00001390: AND
00001391: DUP6
00001392: PUSH2 0x273f
00001395: JUMP
00001396: JUMPDEST
00001397: SWAP1
00001398: POP
00001399: PUSH2 0x135e
0000139c: PUSH2 0x13a4
0000139f: DUP6
000013a0: PUSH2 0x18d3
000013a3: JUMP
000013a4: JUMPDEST
000013a5: DUP3
000013a6: DUP5
000013a7: PUSH2 0x2826
000013aa: JUMP
000013ab: JUMPDEST
000013ac: PUSH2 0x13b3
000013af: PUSH2 0x294a
000013b2: JUMP
000013b3: JUMPDEST
000013b4: PUSH1 0x00
000013b6: DUP2
000013b7: GT
000013b8: PUSH2 0x13ed
000013bb: JUMPI
000013bc: PUSH1 0x40
000013be: MLOAD
000013bf: PUSH3 0x461bcd
000013c3: PUSH1 0xe5
000013c5: SHL
000013c6: DUP2
000013c7: MSTORE
000013c8: PUSH1 0x20
000013ca: PUSH1 0x04
000013cc: DUP3
000013cd: ADD
000013ce: MSTORE
000013cf: PUSH1 0x07
000013d1: PUSH1 0x24
000013d3: DUP3
000013d4: ADD
000013d5: MSTORE
000013d6: PUSH7 0x0216e657743617
000013de: PUSH1 0xcc
000013e0: SHL
000013e1: PUSH1 0x44
000013e3: DUP3
000013e4: ADD
000013e5: MSTORE
000013e6: PUSH1 0x64
000013e8: ADD
000013e9: PUSH2 0x0c1b
000013ec: JUMP
000013ed: JUMPDEST
000013ee: PUSH2 0x13f6
000013f1: DUP2
000013f2: PUSH2 0x28cf
000013f5: JUMP
000013f6: JUMPDEST
000013f7: PUSH1 0x0c
000013f9: SLOAD
000013fa: PUSH1 0x40
000013fc: DUP1
000013fd: MLOAD
000013fe: PUSH1 0x01
00001400: PUSH1 0x01
00001402: PUSH1 0x68
00001404: SHL
00001405: SUB
00001406: SWAP1
00001407: SWAP3
00001408: AND
00001409: DUP3
0000140a: MSTORE
0000140b: PUSH1 0x20
0000140d: DUP3
0000140e: ADD
0000140f: DUP4
00001410: SWAP1
00001411: MSTORE
00001412: PUSH32 0x5f86edbb9d92228a9edc3f0ebc0f001bda1ea345ac7335e0eeef3504b31d1a1c
00001433: SWAP2
00001434: ADD
00001435: PUSH1 0x40
00001437: MLOAD
00001438: DUP1
00001439: SWAP2
0000143a: SUB
0000143b: SWAP1
0000143c: LOG1
0000143d: PUSH1 0x0c
0000143f: DUP1
00001440: SLOAD
00001441: PUSH13 0xffffffffffffffffffffffffff
0000144f: NOT
00001450: AND
00001451: PUSH1 0x01
00001453: PUSH1 0x01
00001455: PUSH1 0x68
00001457: SHL
00001458: SUB
00001459: SWAP3
0000145a: SWAP1
0000145b: SWAP3
0000145c: AND
0000145d: SWAP2
0000145e: SWAP1
0000145f: SWAP2
00001460: OR
00001461: SWAP1
00001462: SSTORE
00001463: JUMP
00001464: JUMPDEST
00001465: PUSH2 0x146c
00001468: PUSH2 0x294a
0000146b: JUMP
0000146c: JUMPDEST
0000146d: PUSH1 0x11
0000146f: DUP1
00001470: SLOAD
00001471: SWAP2
00001472: ISZERO
00001473: ISZERO
00001474: PUSH1 0x01
00001476: PUSH1 0xa0
00001478: SHL
00001479: MUL
0000147a: PUSH1 0xff
0000147c: PUSH1 0xa0
0000147e: SHL
0000147f: NOT
00001480: SWAP1
00001481: SWAP3
00001482: AND
00001483: SWAP2
00001484: SWAP1
00001485: SWAP2
00001486: OR
00001487: SWAP1
00001488: SSTORE
00001489: JUMP
0000148a: JUMPDEST
0000148b: PUSH2 0x1492
0000148e: PUSH2 0x2278
00001491: JUMP
00001492: JUMPDEST
00001493: PUSH2 0x149e
00001496: PUSH1 0x00
00001498: PUSH1 0x01
0000149a: PUSH2 0x2977
0000149d: JUMP
0000149e: JUMPDEST
0000149f: PUSH2 0x14a8
000014a2: PUSH1 0x01
000014a4: PUSH1 0x00
000014a6: SSTORE
000014a7: JUMP
000014a8: JUMPDEST
000014a9: JUMP
000014aa: JUMPDEST
000014ab: PUSH2 0x14b2
000014ae: PUSH2 0x294a
000014b1: JUMP
000014b2: JUMPDEST
000014b3: PUSH2 0x14a8
000014b6: PUSH1 0x00
000014b8: PUSH2 0x2b24
000014bb: JUMP
000014bc: JUMPDEST
000014bd: PUSH1 0x07
000014bf: SLOAD
000014c0: CALLER
000014c1: SWAP1
000014c2: PUSH1 0x01
000014c4: PUSH1 0x01
000014c6: PUSH1 0xa0
000014c8: SHL
000014c9: SUB
000014ca: AND
000014cb: DUP2
000014cc: EQ
000014cd: PUSH2 0x14f4
000014d0: JUMPI
000014d1: PUSH1 0x40
000014d3: MLOAD
000014d4: PUSH4 0x118cdaa7
000014d9: PUSH1 0xe0
000014db: SHL
000014dc: DUP2
000014dd: MSTORE
000014de: PUSH1 0x01
000014e0: PUSH1 0x01
000014e2: PUSH1 0xa0
000014e4: SHL
000014e5: SUB
000014e6: DUP3
000014e7: AND
000014e8: PUSH1 0x04
000014ea: DUP3
000014eb: ADD
000014ec: MSTORE
000014ed: PUSH1 0x24
000014ef: ADD
000014f0: PUSH2 0x0c1b
000014f3: JUMP
000014f4: JUMPDEST
000014f5: PUSH2 0x0d70
000014f8: DUP2
000014f9: PUSH2 0x2b24
000014fc: JUMP
000014fd: JUMPDEST
000014fe: PUSH2 0x1505
00001501: PUSH2 0x294a
00001504: JUMP
00001505: JUMPDEST
00001506: PUSH1 0x12
00001508: SSTORE
00001509: JUMP
0000150a: JUMPDEST
0000150b: PUSH2 0x1512
0000150e: PUSH2 0x2278
00001511: JUMP
00001512: JUMPDEST
00001513: PUSH1 0x00
00001515: DUP2
00001516: GT
00001517: PUSH2 0x154f
0000151a: JUMPI
0000151b: PUSH1 0x40
0000151d: MLOAD
0000151e: PUSH3 0x461bcd
00001522: PUSH1 0xe5
00001524: SHL
00001525: DUP2
00001526: MSTORE
00001527: PUSH1 0x20
00001529: PUSH1 0x04
0000152b: DUP3
0000152c: ADD
0000152d: MSTORE
0000152e: PUSH1 0x0a
00001530: PUSH1 0x24
00001532: DUP3
00001533: ADD
00001534: MSTORE
00001535: PUSH10 0x216e756d536861726573
00001540: PUSH1 0xb0
00001542: SHL
00001543: PUSH1 0x44
00001545: DUP3
00001546: ADD
00001547: MSTORE
00001548: PUSH1 0x64
0000154a: ADD
0000154b: PUSH2 0x0c1b
0000154e: JUMP
0000154f: JUMPDEST
00001550: CALLER
00001551: PUSH1 0x00
00001553: SWAP1
00001554: DUP2
00001555: MSTORE
00001556: PUSH1 0x08
00001558: PUSH1 0x20
0000155a: MSTORE
0000155b: PUSH1 0x40
0000155d: SWAP1
0000155e: KECCAK256
0000155f: SLOAD
00001560: PUSH3 0x010000
00001564: SWAP1
00001565: DIV
00001566: PUSH1 0x01
00001568: PUSH1 0x01
0000156a: PUSH1 0x68
0000156c: SHL
0000156d: SUB
0000156e: AND
0000156f: ISZERO
00001570: ISZERO
00001571: DUP1
00001572: PUSH2 0x1599
00001575: JUMPI
00001576: POP
00001577: CALLER
00001578: PUSH1 0x00
0000157a: SWAP1
0000157b: DUP2
0000157c: MSTORE
0000157d: PUSH1 0x08
0000157f: PUSH1 0x20
00001581: MSTORE
00001582: PUSH1 0x40
00001584: SWAP1
00001585: KECCAK256
00001586: SLOAD
00001587: PUSH1 0x01
00001589: PUSH1 0x78
0000158b: SHL
0000158c: SWAP1
0000158d: DIV
0000158e: PUSH1 0x01
00001590: PUSH1 0x01
00001592: PUSH1 0x80
00001594: SHL
00001595: SUB
00001596: AND
00001597: ISZERO
00001598: ISZERO
00001599: JUMPDEST
0000159a: ISZERO
0000159b: PUSH2 0x15aa
0000159e: JUMPI
0000159f: PUSH2 0x15aa
000015a2: PUSH1 0x00
000015a4: PUSH1 0x01
000015a6: PUSH2 0x2977
000015a9: JUMP
000015aa: JUMPDEST
000015ab: PUSH1 0x0d
000015ad: SLOAD
000015ae: CALLER
000015af: PUSH1 0x00
000015b1: DUP2
000015b2: DUP2
000015b3: MSTORE
000015b4: PUSH1 0x0a
000015b6: PUSH1 0x20
000015b8: SWAP1
000015b9: DUP2
000015ba: MSTORE
000015bb: PUSH1 0x40
000015bd: SWAP2
000015be: DUP3
000015bf: SWAP1
000015c0: KECCAK256
000015c1: DUP3
000015c2: MLOAD
000015c3: DUP1
000015c4: DUP5
000015c5: ADD
000015c6: DUP5
000015c7: MSTORE
000015c8: SWAP1
000015c9: SLOAD
000015ca: PUSH2 0xffff
000015cd: DUP1
000015ce: DUP3
000015cf: AND
000015d0: DUP1
000015d1: DUP5
000015d2: MSTORE
000015d3: PUSH3 0x010000
000015d7: SWAP1
000015d8: SWAP3
000015d9: DIV
000015da: PUSH1 0x01
000015dc: PUSH1 0x01
000015de: PUSH1 0x80
000015e0: SHL
000015e1: SUB
000015e2: AND
000015e3: DUP4
000015e4: DUP6
000015e5: ADD
000015e6: MSTORE
000015e7: DUP5
000015e8: MLOAD
000015e9: DUP9
000015ea: DUP2
000015eb: MSTORE
000015ec: SWAP7
000015ed: AND
000015ee: SWAP3
000015ef: DUP7
000015f0: ADD
000015f1: DUP4
000015f2: SWAP1
000015f3: MSTORE
000015f4: SWAP2
000015f5: SWAP5
000015f6: SWAP1
000015f7: SWAP4
000015f8: SWAP2
000015f9: DUP6
000015fa: EQ
000015fb: SWAP3
000015fc: PUSH32 0x0c53c82ad07e2d592d88ece3b066777dd60f1118e2a081b380efc4358f0d9e2a
0000161d: SWAP2
0000161e: ADD
0000161f: PUSH1 0x40
00001621: MLOAD
00001622: DUP1
00001623: SWAP2
00001624: SUB
00001625: SWAP1
00001626: LOG2
00001627: PUSH1 0x20
00001629: DUP3
0000162a: ADD
0000162b: MLOAD
0000162c: PUSH1 0x01
0000162e: PUSH1 0x01
00001630: PUSH1 0x80
00001632: SHL
00001633: SUB
00001634: AND
00001635: PUSH1 0x00
00001637: DUP3
00001638: ISZERO
00001639: PUSH2 0x164d
0000163c: JUMPI
0000163d: PUSH2 0x1646
00001640: DUP7
00001641: DUP4
00001642: PUSH2 0x33c9
00001645: JUMP
00001646: JUMPDEST
00001647: SWAP1
00001648: POP
00001649: PUSH2 0x16b0
0000164c: JUMP
0000164d: JUMPDEST
0000164e: DUP2
0000164f: ISZERO
00001650: PUSH2 0x168f
00001653: JUMPI
00001654: PUSH1 0x40
00001656: MLOAD
00001657: PUSH3 0x461bcd
0000165b: PUSH1 0xe5
0000165d: SHL
0000165e: DUP2
0000165f: MSTORE
00001660: PUSH1 0x20
00001662: PUSH1 0x04
00001664: DUP3
00001665: ADD
00001666: MSTORE
00001667: PUSH1 0x11
00001669: PUSH1 0x24
0000166b: DUP3
0000166c: ADD
0000166d: MSTORE
0000166e: PUSH17 0x4578697374696e67207769746864726177
00001680: PUSH1 0x78
00001682: SHL
00001683: PUSH1 0x44
00001685: DUP3
00001686: ADD
00001687: MSTORE
00001688: PUSH1 0x64
0000168a: ADD
0000168b: PUSH2 0x0c1b
0000168e: JUMP
0000168f: JUMPDEST
00001690: POP
00001691: CALLER
00001692: PUSH1 0x00
00001694: SWAP1
00001695: DUP2
00001696: MSTORE
00001697: PUSH1 0x0a
00001699: PUSH1 0x20
0000169b: MSTORE
0000169c: PUSH1 0x40
0000169e: SWAP1
0000169f: KECCAK256
000016a0: DUP1
000016a1: SLOAD
000016a2: PUSH2 0xffff
000016a5: NOT
000016a6: AND
000016a7: PUSH2 0xffff
000016aa: DUP7
000016ab: AND
000016ac: OR
000016ad: SWAP1
000016ae: SSTORE
000016af: DUP5
000016b0: JUMPDEST
000016b1: PUSH2 0x16b9
000016b4: DUP2
000016b5: PUSH2 0x2885
000016b8: JUMP
000016b9: JUMPDEST
000016ba: CALLER
000016bb: PUSH1 0x00
000016bd: DUP2
000016be: DUP2
000016bf: MSTORE
000016c0: PUSH1 0x0a
000016c2: PUSH1 0x20
000016c4: MSTORE
000016c5: PUSH1 0x40
000016c7: SWAP1
000016c8: KECCAK256
000016c9: DUP1
000016ca: SLOAD
000016cb: PUSH3 0x010000
000016cf: PUSH1 0x01
000016d1: PUSH1 0x90
000016d3: SHL
000016d4: SUB
000016d5: NOT
000016d6: AND
000016d7: PUSH3 0x010000
000016db: PUSH1 0x01
000016dd: PUSH1 0x01
000016df: PUSH1 0x80
000016e1: SHL
000016e2: SUB
000016e3: DUP6
000016e4: AND
000016e5: MUL
000016e6: OR
000016e7: SWAP1
000016e8: SSTORE
000016e9: PUSH2 0x16f3
000016ec: SWAP1
000016ed: ADDRESS
000016ee: DUP9
000016ef: PUSH2 0x2219
000016f2: JUMP
000016f3: JUMPDEST
000016f4: DUP6
000016f5: PUSH1 0x10
000016f7: SLOAD
000016f8: PUSH2 0x1701
000016fb: SWAP2
000016fc: SWAP1
000016fd: PUSH2 0x33c9
00001700: JUMP
00001701: JUMPDEST
00001702: PUSH1 0x10
00001704: SSTORE
00001705: POP
00001706: PUSH2 0x0d70
00001709: SWAP4
0000170a: POP
0000170b: PUSH2 0x2401
0000170e: SWAP3
0000170f: POP
00001710: POP
00001711: POP
00001712: JUMP
00001713: JUMPDEST
00001714: PUSH1 0x60
00001716: PUSH1 0x05
00001718: DUP1
00001719: SLOAD
0000171a: PUSH2 0x0b1d
0000171d: SWAP1
0000171e: PUSH2 0x3324
00001721: JUMP
00001722: JUMPDEST
00001723: PUSH1 0x00
00001725: PUSH2 0x1752
00001728: PUSH2 0x1730
0000172b: PUSH1 0x03
0000172d: SLOAD
0000172e: SWAP1
0000172f: JUMP
00001730: JUMPDEST
00001731: PUSH2 0x1738
00001734: PUSH2 0x1765
00001737: JUMP
00001738: JUMPDEST
00001739: PUSH1 0x0e
0000173b: SLOAD
0000173c: PUSH1 0x0b
0000173e: SLOAD
0000173f: PUSH1 0x01
00001741: PUSH1 0x01
00001743: PUSH1 0x80
00001745: SHL
00001746: SUB
00001747: SWAP1
00001748: SWAP2
00001749: AND
0000174a: SWAP1
0000174b: PUSH1 0xff
0000174d: AND
0000174e: PUSH2 0x273f
00001751: JUMP
00001752: JUMPDEST
00001753: SWAP1
00001754: POP
00001755: SWAP1
00001756: JUMP
00001757: JUMPDEST
00001758: PUSH1 0x00
0000175a: CALLER
0000175b: PUSH2 0x0bae
0000175e: DUP2
0000175f: DUP6
00001760: DUP6
00001761: PUSH2 0x2219
00001764: JUMP
00001765: JUMPDEST
00001766: PUSH1 0x0b
00001768: SLOAD
00001769: PUSH1 0x40
0000176b: MLOAD
0000176c: PUSH4 0x70a08231
00001771: PUSH1 0xe0
00001773: SHL
00001774: DUP2
00001775: MSTORE
00001776: ADDRESS
00001777: PUSH1 0x04
00001779: DUP3
0000177a: ADD
0000177b: MSTORE
0000177c: PUSH1 0x00
0000177e: SWAP2
0000177f: PUSH2 0x0100
00001782: SWAP1
00001783: DIV
00001784: PUSH1 0x01
00001786: PUSH1 0x01
00001788: PUSH1 0xa0
0000178a: SHL
0000178b: SUB
0000178c: AND
0000178d: SWAP1
0000178e: PUSH4 0x70a08231
00001793: SWAP1
00001794: PUSH1 0x24
00001796: ADD
00001797: PUSH1 0x20
00001799: PUSH1 0x40
0000179b: MLOAD
0000179c: DUP1
0000179d: DUP4
0000179e: SUB
0000179f: DUP2
000017a0: DUP7
000017a1: GAS
000017a2: STATICCALL
000017a3: ISZERO
000017a4: DUP1
000017a5: ISZERO
000017a6: PUSH2 0x17b3
000017a9: JUMPI
000017aa: RETURNDATASIZE
000017ab: PUSH1 0x00
000017ad: DUP1
000017ae: RETURNDATACOPY
000017af: RETURNDATASIZE
000017b0: PUSH1 0x00
000017b2: REVERT
000017b3: JUMPDEST
000017b4: POP
000017b5: POP
000017b6: POP
000017b7: POP
000017b8: PUSH1 0x40
000017ba: MLOAD
000017bb: RETURNDATASIZE
000017bc: PUSH1 0x1f
000017be: NOT
000017bf: PUSH1 0x1f
000017c1: DUP3
000017c2: ADD
000017c3: AND
000017c4: DUP3
000017c5: ADD
000017c6: DUP1
000017c7: PUSH1 0x40
000017c9: MSTORE
000017ca: POP
000017cb: DUP2
000017cc: ADD
000017cd: SWAP1
000017ce: PUSH2 0x17d7
000017d1: SWAP2
000017d2: SWAP1
000017d3: PUSH2 0x33dc
000017d6: JUMP
000017d7: JUMPDEST
000017d8: PUSH1 0x0d
000017da: SLOAD
000017db: PUSH2 0x1752
000017de: SWAP2
000017df: SWAP1
000017e0: PUSH3 0x010000
000017e4: SWAP1
000017e5: DIV
000017e6: PUSH1 0x01
000017e8: PUSH1 0x01
000017ea: PUSH1 0x68
000017ec: SHL
000017ed: SUB
000017ee: AND
000017ef: PUSH2 0x33c9
000017f2: JUMP
000017f3: JUMPDEST
000017f4: PUSH2 0x17fb
000017f7: PUSH2 0x2278
000017fa: JUMP
000017fb: JUMPDEST
000017fc: PUSH1 0x11
000017fe: SLOAD
000017ff: PUSH1 0x01
00001801: PUSH1 0xa0
00001803: SHL
00001804: SWAP1
00001805: DIV
00001806: PUSH1 0xff
00001808: AND
00001809: PUSH2 0x1824
0000180c: JUMPI
0000180d: PUSH1 0x40
0000180f: MLOAD
00001810: PUSH3 0x461bcd
00001814: PUSH1 0xe5
00001816: SHL
00001817: DUP2
00001818: MSTORE
00001819: PUSH1 0x04
0000181b: ADD
0000181c: PUSH2 0x0c1b
0000181f: SWAP1
00001820: PUSH2 0x33a8
00001823: JUMP
00001824: JUMPDEST
00001825: PUSH1 0x00
00001827: DUP2
00001828: GT
00001829: PUSH2 0x1844
0000182c: JUMPI
0000182d: PUSH1 0x40
0000182f: MLOAD
00001830: PUSH3 0x461bcd
00001834: PUSH1 0xe5
00001836: SHL
00001837: DUP2
00001838: MSTORE
00001839: PUSH1 0x04
0000183b: ADD
0000183c: PUSH2 0x0c1b
0000183f: SWAP1
00001840: PUSH2 0x335e
00001843: JUMP
00001844: JUMPDEST
00001845: PUSH2 0x184e
00001848: DUP2
00001849: CALLER
0000184a: PUSH2 0x244a
0000184d: JUMP
0000184e: JUMPDEST
0000184f: PUSH1 0x0b
00001851: SLOAD
00001852: PUSH2 0x186b
00001855: SWAP1
00001856: PUSH2 0x0100
00001859: SWAP1
0000185a: DIV
0000185b: PUSH1 0x01
0000185d: PUSH1 0x01
0000185f: PUSH1 0xa0
00001861: SHL
00001862: SUB
00001863: AND
00001864: CALLER
00001865: ADDRESS
00001866: DUP5
00001867: PUSH2 0x26d8
0000186a: JUMP
0000186b: JUMPDEST
0000186c: PUSH2 0x0d70
0000186f: PUSH1 0x01
00001871: PUSH1 0x00
00001873: SSTORE
00001874: JUMP
00001875: JUMPDEST
00001876: PUSH1 0x11
00001878: SLOAD
00001879: PUSH1 0x00
0000187b: SWAP1
0000187c: PUSH1 0x01
0000187e: PUSH1 0xa0
00001880: SHL
00001881: SWAP1
00001882: DIV
00001883: PUSH1 0xff
00001885: AND
00001886: DUP1
00001887: PUSH2 0x0bd9
0000188a: JUMPI
0000188b: POP
0000188c: PUSH1 0x12
0000188e: SLOAD
0000188f: PUSH1 0x40
00001891: MLOAD
00001892: PUSH1 0x01
00001894: PUSH1 0x01
00001896: PUSH1 0x60
00001898: SHL
00001899: SUB
0000189a: NOT
0000189b: PUSH1 0x60
0000189d: DUP7
0000189e: SWAP1
0000189f: SHL
000018a0: AND
000018a1: PUSH1 0x20
000018a3: DUP3
000018a4: ADD
000018a5: MSTORE
000018a6: PUSH2 0x0bd9
000018a9: SWAP2
000018aa: SWAP1
000018ab: PUSH1 0x34
000018ad: ADD
000018ae: PUSH1 0x40
000018b0: MLOAD
000018b1: PUSH1 0x20
000018b3: DUP2
000018b4: DUP4
000018b5: SUB
000018b6: SUB
000018b7: DUP2
000018b8: MSTORE
000018b9: SWAP1
000018ba: PUSH1 0x40
000018bc: MSTORE
000018bd: DUP1
000018be: MLOAD
000018bf: SWAP1
000018c0: PUSH1 0x20
000018c2: ADD
000018c3: KECCAK256
000018c4: DUP5
000018c5: PUSH2 0x2408
000018c8: SWAP1
000018c9: SWAP3
000018ca: SWAP2
000018cb: SWAP1
000018cc: PUSH4 0xffffffff
000018d1: AND
000018d2: JUMP
000018d3: JUMPDEST
000018d4: PUSH1 0x00
000018d6: DUP1
000018d7: PUSH1 0x00
000018d9: PUSH2 0x18e1
000018dc: DUP5
000018dd: PUSH2 0x1ecc
000018e0: JUMP
000018e1: JUMPDEST
000018e2: SWAP1
000018e3: SWAP3
000018e4: POP
000018e5: SWAP1
000018e6: POP
000018e7: PUSH2 0x135e
000018ea: DUP2
000018eb: DUP4
000018ec: PUSH2 0x33c9
000018ef: JUMP
000018f0: JUMPDEST
000018f1: PUSH2 0x18f8
000018f4: PUSH2 0x294a
000018f7: JUMP
000018f8: JUMPDEST
000018f9: PUSH1 0x01
000018fb: PUSH1 0x01
000018fd: PUSH1 0xa0
000018ff: SHL
00001900: SUB
00001901: DUP2
00001902: AND
00001903: PUSH2 0x193b
00001906: JUMPI
00001907: PUSH1 0x40
00001909: MLOAD
0000190a: PUSH3 0x461bcd
0000190e: PUSH1 0xe5
00001910: SHL
00001911: DUP2
00001912: MSTORE
00001913: PUSH1 0x20
00001915: PUSH1 0x04
00001917: DUP3
00001918: ADD
00001919: MSTORE
0000191a: PUSH1 0x0a
0000191c: PUSH1 0x24
0000191e: DUP3
0000191f: ADD
00001920: MSTORE
00001921: PUSH10 0x10b732bba5b2b2b832b9
0000192c: PUSH1 0xb1
0000192e: SHL
0000192f: PUSH1 0x44
00001931: DUP3
00001932: ADD
00001933: MSTORE
00001934: PUSH1 0x64
00001936: ADD
00001937: PUSH2 0x0c1b
0000193a: JUMP
0000193b: JUMPDEST
0000193c: PUSH1 0x11
0000193e: DUP1
0000193f: SLOAD
00001940: PUSH1 0x01
00001942: PUSH1 0x01
00001944: PUSH1 0xa0
00001946: SHL
00001947: SUB
00001948: NOT
00001949: AND
0000194a: PUSH1 0x01
0000194c: PUSH1 0x01
0000194e: PUSH1 0xa0
00001950: SHL
00001951: SUB
00001952: SWAP3
00001953: SWAP1
00001954: SWAP3
00001955: AND
00001956: SWAP2
00001957: SWAP1
00001958: SWAP2
00001959: OR
0000195a: SWAP1
0000195b: SSTORE
0000195c: JUMP
0000195d: JUMPDEST
0000195e: PUSH2 0x1965
00001961: PUSH2 0x2278
00001964: JUMP
00001965: JUMPDEST
00001966: PUSH1 0x00
00001968: DUP2
00001969: GT
0000196a: PUSH2 0x19a2
0000196d: JUMPI
0000196e: PUSH1 0x40
00001970: MLOAD
00001971: PUSH3 0x461bcd
00001975: PUSH1 0xe5
00001977: SHL
00001978: DUP2
00001979: MSTORE
0000197a: PUSH1 0x20
0000197c: PUSH1 0x04
0000197e: DUP3
0000197f: ADD
00001980: MSTORE
00001981: PUSH1 0x0a
00001983: PUSH1 0x24
00001985: DUP3
00001986: ADD
00001987: MSTORE
00001988: PUSH10 0x216e756d536861726573
00001993: PUSH1 0xb0
00001995: SHL
00001996: PUSH1 0x44
00001998: DUP3
00001999: ADD
0000199a: MSTORE
0000199b: PUSH1 0x64
0000199d: ADD
0000199e: PUSH2 0x0c1b
000019a1: JUMP
000019a2: JUMPDEST
000019a3: PUSH2 0x186b
000019a6: DUP2
000019a7: PUSH1 0x00
000019a9: PUSH2 0x2977
000019ac: JUMP
000019ad: JUMPDEST
000019ae: PUSH2 0x19b5
000019b1: PUSH2 0x2278
000019b4: JUMP
000019b5: JUMPDEST
000019b6: PUSH1 0x11
000019b8: SLOAD
000019b9: PUSH1 0x01
000019bb: PUSH1 0xa0
000019bd: SHL
000019be: SWAP1
000019bf: DIV
000019c0: PUSH1 0xff
000019c2: AND
000019c3: PUSH2 0x1a28
000019c6: JUMPI
000019c7: PUSH1 0x12
000019c9: SLOAD
000019ca: PUSH1 0x40
000019cc: MLOAD
000019cd: PUSH1 0x01
000019cf: PUSH1 0x01
000019d1: PUSH1 0x60
000019d3: SHL
000019d4: SUB
000019d5: NOT
000019d6: CALLER
000019d7: PUSH1 0x60
000019d9: SHL
000019da: AND
000019db: PUSH1 0x20
000019dd: DUP3
000019de: ADD
000019df: MSTORE
000019e0: PUSH2 0x19ec
000019e3: SWAP2
000019e4: SWAP1
000019e5: PUSH1 0x34
000019e7: ADD
000019e8: PUSH2 0x0dae
000019eb: JUMP
000019ec: JUMPDEST
000019ed: PUSH2 0x1a28
000019f0: JUMPI
000019f1: PUSH1 0x40
000019f3: MLOAD
000019f4: PUSH3 0x461bcd
000019f8: PUSH1 0xe5
000019fa: SHL
000019fb: DUP2
000019fc: MSTORE
000019fd: PUSH1 0x20
000019ff: PUSH1 0x04
00001a01: DUP3
00001a02: ADD
00001a03: MSTORE
00001a04: PUSH1 0x0d
00001a06: PUSH1 0x24
00001a08: DUP3
00001a09: ADD
00001a0a: MSTORE
00001a0b: PUSH13 0x24b73b30b634b210383937b7b3
00001a19: PUSH1 0x99
00001a1b: SHL
00001a1c: PUSH1 0x44
00001a1e: DUP3
00001a1f: ADD
00001a20: MSTORE
00001a21: PUSH1 0x64
00001a23: ADD
00001a24: PUSH2 0x0c1b
00001a27: JUMP
00001a28: JUMPDEST
00001a29: PUSH1 0x0b
00001a2b: SLOAD
00001a2c: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00001a4d: PUSH1 0x01
00001a4f: PUSH1 0x01
00001a51: PUSH1 0xa0
00001a53: SHL
00001a54: SUB
00001a55: SWAP1
00001a56: DUP2
00001a57: AND
00001a58: PUSH2 0x0100
00001a5b: SWAP1
00001a5c: SWAP3
00001a5d: DIV
00001a5e: AND
00001a5f: EQ
00001a60: PUSH2 0x1a7b
00001a63: JUMPI
00001a64: PUSH1 0x40
00001a66: MLOAD
00001a67: PUSH3 0x461bcd
00001a6b: PUSH1 0xe5
00001a6d: SHL
00001a6e: DUP2
00001a6f: MSTORE
00001a70: PUSH1 0x04
00001a72: ADD
00001a73: PUSH2 0x0c1b
00001a76: SWAP1
00001a77: PUSH2 0x33f5
00001a7a: JUMP
00001a7b: JUMPDEST
00001a7c: PUSH1 0x00
00001a7e: CALLVALUE
00001a7f: GT
00001a80: PUSH2 0x1a9b
00001a83: JUMPI
00001a84: PUSH1 0x40
00001a86: MLOAD
00001a87: PUSH3 0x461bcd
00001a8b: PUSH1 0xe5
00001a8d: SHL
00001a8e: DUP2
00001a8f: MSTORE
00001a90: PUSH1 0x04
00001a92: ADD
00001a93: PUSH2 0x0c1b
00001a96: SWAP1
00001a97: PUSH2 0x3414
00001a9a: JUMP
00001a9b: JUMPDEST
00001a9c: PUSH2 0x1aa5
00001a9f: CALLVALUE
00001aa0: CALLER
00001aa1: PUSH2 0x244a
00001aa4: JUMP
00001aa5: JUMPDEST
00001aa6: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00001ac7: PUSH1 0x01
00001ac9: PUSH1 0x01
00001acb: PUSH1 0xa0
00001acd: SHL
00001ace: SUB
00001acf: AND
00001ad0: PUSH4 0xd0e30db0
00001ad5: CALLVALUE
00001ad6: PUSH1 0x40
00001ad8: MLOAD
00001ad9: DUP3
00001ada: PUSH4 0xffffffff
00001adf: AND
00001ae0: PUSH1 0xe0
00001ae2: SHL
00001ae3: DUP2
00001ae4: MSTORE
00001ae5: PUSH1 0x04
00001ae7: ADD
00001ae8: PUSH1 0x00
00001aea: PUSH1 0x40
00001aec: MLOAD
00001aed: DUP1
00001aee: DUP4
00001aef: SUB
00001af0: DUP2
00001af1: DUP6
00001af2: DUP9
00001af3: DUP1
00001af4: EXTCODESIZE
00001af5: ISZERO
00001af6: DUP1
00001af7: ISZERO
00001af8: PUSH2 0x1b00
00001afb: JUMPI
00001afc: PUSH1 0x00
00001afe: DUP1
00001aff: REVERT
00001b00: JUMPDEST
00001b01: POP
00001b02: GAS
00001b03: CALL
00001b04: ISZERO
00001b05: DUP1
00001b06: ISZERO
00001b07: PUSH2 0x1b14
00001b0a: JUMPI
00001b0b: RETURNDATASIZE
00001b0c: PUSH1 0x00
00001b0e: DUP1
00001b0f: RETURNDATACOPY
00001b10: RETURNDATASIZE
00001b11: PUSH1 0x00
00001b13: REVERT
00001b14: JUMPDEST
00001b15: POP
00001b16: POP
00001b17: POP
00001b18: POP
00001b19: POP
00001b1a: PUSH2 0x0d70
00001b1d: PUSH1 0x01
00001b1f: PUSH1 0x00
00001b21: SSTORE
00001b22: JUMP
00001b23: JUMPDEST
00001b24: PUSH2 0x1b2b
00001b27: PUSH2 0x294a
00001b2a: JUMP
00001b2b: JUMPDEST
00001b2c: PUSH1 0x00
00001b2e: DUP2
00001b2f: PUSH1 0x60
00001b31: ADD
00001b32: MLOAD
00001b33: PUSH1 0x01
00001b35: PUSH1 0x01
00001b37: PUSH1 0x68
00001b39: SHL
00001b3a: SUB
00001b3b: AND
00001b3c: GT
00001b3d: PUSH2 0x1b72
00001b40: JUMPI
00001b41: PUSH1 0x40
00001b43: MLOAD
00001b44: PUSH3 0x461bcd
00001b48: PUSH1 0xe5
00001b4a: SHL
00001b4b: DUP2
00001b4c: MSTORE
00001b4d: PUSH1 0x20
00001b4f: PUSH1 0x04
00001b51: DUP3
00001b52: ADD
00001b53: MSTORE
00001b54: PUSH1 0x07
00001b56: PUSH1 0x24
00001b58: DUP3
00001b59: ADD
00001b5a: MSTORE
00001b5b: PUSH7 0x0216e657743617
00001b63: PUSH1 0xcc
00001b65: SHL
00001b66: PUSH1 0x44
00001b68: DUP3
00001b69: ADD
00001b6a: MSTORE
00001b6b: PUSH1 0x64
00001b6d: ADD
00001b6e: PUSH2 0x0c1b
00001b71: JUMP
00001b72: JUMPDEST
00001b73: PUSH1 0x20
00001b75: DUP2
00001b76: ADD
00001b77: MLOAD
00001b78: PUSH1 0x01
00001b7a: PUSH1 0x01
00001b7c: PUSH1 0xa0
00001b7e: SHL
00001b7f: SUB
00001b80: AND
00001b81: PUSH2 0x1bb8
00001b84: JUMPI
00001b85: PUSH1 0x40
00001b87: MLOAD
00001b88: PUSH3 0x461bcd
00001b8c: PUSH1 0xe5
00001b8e: SHL
00001b8f: DUP2
00001b90: MSTORE
00001b91: PUSH1 0x20
00001b93: PUSH1 0x04
00001b95: DUP3
00001b96: ADD
00001b97: MSTORE
00001b98: PUSH1 0x09
00001b9a: PUSH1 0x24
00001b9c: DUP3
00001b9d: ADD
00001b9e: MSTORE
00001b9f: PUSH9 0x085b995dd05cdcd95d
00001ba9: PUSH1 0xba
00001bab: SHL
00001bac: PUSH1 0x44
00001bae: DUP3
00001baf: ADD
00001bb0: MSTORE
00001bb1: PUSH1 0x64
00001bb3: ADD
00001bb4: PUSH2 0x0c1b
00001bb7: JUMP
00001bb8: JUMPDEST
00001bb9: DUP1
00001bba: MLOAD
00001bbb: PUSH1 0x0b
00001bbd: DUP1
00001bbe: SLOAD
00001bbf: PUSH1 0x20
00001bc1: DUP5
00001bc2: ADD
00001bc3: MLOAD
00001bc4: PUSH1 0x40
00001bc6: DUP6
00001bc7: ADD
00001bc8: MLOAD
00001bc9: PUSH7 0xffffffffffffff
00001bd1: AND
00001bd2: PUSH1 0x01
00001bd4: PUSH1 0xa8
00001bd6: SHL
00001bd7: MUL
00001bd8: PUSH7 0xffffffffffffff
00001be0: PUSH1 0xa8
00001be2: SHL
00001be3: NOT
00001be4: PUSH1 0x01
00001be6: PUSH1 0x01
00001be8: PUSH1 0xa0
00001bea: SHL
00001beb: SUB
00001bec: SWAP1
00001bed: SWAP3
00001bee: AND
00001bef: PUSH2 0x0100
00001bf2: MUL
00001bf3: PUSH1 0x01
00001bf5: PUSH1 0x01
00001bf7: PUSH1 0xa8
00001bf9: SHL
00001bfa: SUB
00001bfb: NOT
00001bfc: SWAP1
00001bfd: SWAP4
00001bfe: AND
00001bff: PUSH1 0xff
00001c01: SWAP1
00001c02: SWAP6
00001c03: AND
00001c04: SWAP5
00001c05: SWAP1
00001c06: SWAP5
00001c07: OR
00001c08: SWAP2
00001c09: SWAP1
00001c0a: SWAP2
00001c0b: OR
00001c0c: AND
00001c0d: SWAP2
00001c0e: SWAP1
00001c0f: SWAP2
00001c10: OR
00001c11: SWAP1
00001c12: SSTORE
00001c13: PUSH1 0x60
00001c15: ADD
00001c16: MLOAD
00001c17: PUSH1 0x0c
00001c19: DUP1
00001c1a: SLOAD
00001c1b: PUSH1 0x01
00001c1d: PUSH1 0x01
00001c1f: PUSH1 0x68
00001c21: SHL
00001c22: SUB
00001c23: SWAP1
00001c24: SWAP3
00001c25: AND
00001c26: PUSH13 0xffffffffffffffffffffffffff
00001c34: NOT
00001c35: SWAP1
00001c36: SWAP3
00001c37: AND
00001c38: SWAP2
00001c39: SWAP1
00001c3a: SWAP2
00001c3b: OR
00001c3c: SWAP1
00001c3d: SSTORE
00001c3e: JUMP
00001c3f: JUMPDEST
00001c40: PUSH2 0x1c47
00001c43: PUSH2 0x294a
00001c46: JUMP
00001c47: JUMPDEST
00001c48: PUSH1 0x07
00001c4a: DUP1
00001c4b: SLOAD
00001c4c: PUSH1 0x01
00001c4e: PUSH1 0x01
00001c50: PUSH1 0xa0
00001c52: SHL
00001c53: SUB
00001c54: DUP4
00001c55: AND
00001c56: PUSH1 0x01
00001c58: PUSH1 0x01
00001c5a: PUSH1 0xa0
00001c5c: SHL
00001c5d: SUB
00001c5e: NOT
00001c5f: SWAP1
00001c60: SWAP2
00001c61: AND
00001c62: DUP2
00001c63: OR
00001c64: SWAP1
00001c65: SWAP2
00001c66: SSTORE
00001c67: PUSH2 0x1c78
00001c6a: PUSH1 0x06
00001c6c: SLOAD
00001c6d: PUSH1 0x01
00001c6f: PUSH1 0x01
00001c71: PUSH1 0xa0
00001c73: SHL
00001c74: SUB
00001c75: AND
00001c76: SWAP1
00001c77: JUMP
00001c78: JUMPDEST
00001c79: PUSH1 0x01
00001c7b: PUSH1 0x01
00001c7d: PUSH1 0xa0
00001c7f: SHL
00001c80: SUB
00001c81: AND
00001c82: PUSH32 0x38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700
00001ca3: PUSH1 0x40
00001ca5: MLOAD
00001ca6: PUSH1 0x40
00001ca8: MLOAD
00001ca9: DUP1
00001caa: SWAP2
00001cab: SUB
00001cac: SWAP1
00001cad: LOG3
00001cae: POP
00001caf: JUMP
00001cb0: JUMPDEST
00001cb1: PUSH2 0x1cb8
00001cb4: PUSH2 0x2278
00001cb7: JUMP
00001cb8: JUMPDEST
00001cb9: PUSH1 0x11
00001cbb: SLOAD
00001cbc: PUSH1 0x01
00001cbe: PUSH1 0xa0
00001cc0: SHL
00001cc1: SWAP1
00001cc2: DIV
00001cc3: PUSH1 0xff
00001cc5: AND
00001cc6: PUSH2 0x1ce1
00001cc9: JUMPI
00001cca: PUSH1 0x40
00001ccc: MLOAD
00001ccd: PUSH3 0x461bcd
00001cd1: PUSH1 0xe5
00001cd3: SHL
00001cd4: DUP2
00001cd5: MSTORE
00001cd6: PUSH1 0x04
00001cd8: ADD
00001cd9: PUSH2 0x0c1b
00001cdc: SWAP1
00001cdd: PUSH2 0x33a8
00001ce0: JUMP
00001ce1: JUMPDEST
00001ce2: PUSH1 0x0b
00001ce4: SLOAD
00001ce5: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00001d06: PUSH1 0x01
00001d08: PUSH1 0x01
00001d0a: PUSH1 0xa0
00001d0c: SHL
00001d0d: SUB
00001d0e: SWAP1
00001d0f: DUP2
00001d10: AND
00001d11: PUSH2 0x0100
00001d14: SWAP1
00001d15: SWAP3
00001d16: DIV
00001d17: AND
00001d18: EQ
00001d19: PUSH2 0x1d34
00001d1c: JUMPI
00001d1d: PUSH1 0x40
00001d1f: MLOAD
00001d20: PUSH3 0x461bcd
00001d24: PUSH1 0xe5
00001d26: SHL
00001d27: DUP2
00001d28: MSTORE
00001d29: PUSH1 0x04
00001d2b: ADD
00001d2c: PUSH2 0x0c1b
00001d2f: SWAP1
00001d30: PUSH2 0x33f5
00001d33: JUMP
00001d34: JUMPDEST
00001d35: PUSH1 0x00
00001d37: CALLVALUE
00001d38: GT
00001d39: PUSH2 0x1d54
00001d3c: JUMPI
00001d3d: PUSH1 0x40
00001d3f: MLOAD
00001d40: PUSH3 0x461bcd
00001d44: PUSH1 0xe5
00001d46: SHL
00001d47: DUP2
00001d48: MSTORE
00001d49: PUSH1 0x04
00001d4b: ADD
00001d4c: PUSH2 0x0c1b
00001d4f: SWAP1
00001d50: PUSH2 0x3414
00001d53: JUMP
00001d54: JUMPDEST
00001d55: PUSH1 0x01
00001d57: PUSH1 0x01
00001d59: PUSH1 0xa0
00001d5b: SHL
00001d5c: SUB
00001d5d: DUP2
00001d5e: AND
00001d5f: PUSH2 0x1d96
00001d62: JUMPI
00001d63: PUSH1 0x40
00001d65: MLOAD
00001d66: PUSH3 0x461bcd
00001d6a: PUSH1 0xe5
00001d6c: SHL
00001d6d: DUP2
00001d6e: MSTORE
00001d6f: PUSH1 0x20
00001d71: PUSH1 0x04
00001d73: DUP3
00001d74: ADD
00001d75: MSTORE
00001d76: PUSH1 0x09
00001d78: PUSH1 0x24
00001d7a: DUP3
00001d7b: ADD
00001d7c: MSTORE
00001d7d: PUSH9 0x10b1b932b234ba37b9
00001d87: PUSH1 0xb9
00001d89: SHL
00001d8a: PUSH1 0x44
00001d8c: DUP3
00001d8d: ADD
00001d8e: MSTORE
00001d8f: PUSH1 0x64
00001d91: ADD
00001d92: PUSH2 0x0c1b
00001d95: JUMP
00001d96: JUMPDEST
00001d97: PUSH2 0x1aa5
00001d9a: CALLVALUE
00001d9b: DUP3
00001d9c: PUSH2 0x244a
00001d9f: JUMP
00001da0: JUMPDEST
00001da1: PUSH2 0x1da8
00001da4: PUSH2 0x2278
00001da7: JUMP
00001da8: JUMPDEST
00001da9: PUSH1 0x11
00001dab: SLOAD
00001dac: PUSH1 0x01
00001dae: PUSH1 0xa0
00001db0: SHL
00001db1: SWAP1
00001db2: DIV
00001db3: PUSH1 0xff
00001db5: AND
00001db6: PUSH2 0x1dd1
00001db9: JUMPI
00001dba: PUSH1 0x40
00001dbc: MLOAD
00001dbd: PUSH3 0x461bcd
00001dc1: PUSH1 0xe5
00001dc3: SHL
00001dc4: DUP2
00001dc5: MSTORE
00001dc6: PUSH1 0x04
00001dc8: ADD
00001dc9: PUSH2 0x0c1b
00001dcc: SWAP1
00001dcd: PUSH2 0x33a8
00001dd0: JUMP
00001dd1: JUMPDEST
00001dd2: PUSH1 0x0b
00001dd4: SLOAD
00001dd5: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00001df6: PUSH1 0x01
00001df8: PUSH1 0x01
00001dfa: PUSH1 0xa0
00001dfc: SHL
00001dfd: SUB
00001dfe: SWAP1
00001dff: DUP2
00001e00: AND
00001e01: PUSH2 0x0100
00001e04: SWAP1
00001e05: SWAP3
00001e06: DIV
00001e07: AND
00001e08: EQ
00001e09: PUSH2 0x1e24
00001e0c: JUMPI
00001e0d: PUSH1 0x40
00001e0f: MLOAD
00001e10: PUSH3 0x461bcd
00001e14: PUSH1 0xe5
00001e16: SHL
00001e17: DUP2
00001e18: MSTORE
00001e19: PUSH1 0x04
00001e1b: ADD
00001e1c: PUSH2 0x0c1b
00001e1f: SWAP1
00001e20: PUSH2 0x33f5
00001e23: JUMP
00001e24: JUMPDEST
00001e25: PUSH1 0x00
00001e27: CALLVALUE
00001e28: GT
00001e29: PUSH2 0x1e44
00001e2c: JUMPI
00001e2d: PUSH1 0x40
00001e2f: MLOAD
00001e30: PUSH3 0x461bcd
00001e34: PUSH1 0xe5
00001e36: SHL
00001e37: DUP2
00001e38: MSTORE
00001e39: PUSH1 0x04
00001e3b: ADD
00001e3c: PUSH2 0x0c1b
00001e3f: SWAP1
00001e40: PUSH2 0x3414
00001e43: JUMP
00001e44: JUMPDEST
00001e45: PUSH2 0x1e4e
00001e48: CALLVALUE
00001e49: CALLER
00001e4a: PUSH2 0x244a
00001e4d: JUMP
00001e4e: JUMPDEST
00001e4f: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00001e70: PUSH1 0x01
00001e72: PUSH1 0x01
00001e74: PUSH1 0xa0
00001e76: SHL
00001e77: SUB
00001e78: AND
00001e79: PUSH4 0xd0e30db0
00001e7e: CALLVALUE
00001e7f: PUSH1 0x40
00001e81: MLOAD
00001e82: DUP3
00001e83: PUSH4 0xffffffff
00001e88: AND
00001e89: PUSH1 0xe0
00001e8b: SHL
00001e8c: DUP2
00001e8d: MSTORE
00001e8e: PUSH1 0x04
00001e90: ADD
00001e91: PUSH1 0x00
00001e93: PUSH1 0x40
00001e95: MLOAD
00001e96: DUP1
00001e97: DUP4
00001e98: SUB
00001e99: DUP2
00001e9a: DUP6
00001e9b: DUP9
00001e9c: DUP1
00001e9d: EXTCODESIZE
00001e9e: ISZERO
00001e9f: DUP1
00001ea0: ISZERO
00001ea1: PUSH2 0x1ea9
00001ea4: JUMPI
00001ea5: PUSH1 0x00
00001ea7: DUP1
00001ea8: REVERT
00001ea9: JUMPDEST
00001eaa: POP
00001eab: GAS
00001eac: CALL
00001ead: ISZERO
00001eae: DUP1
00001eaf: ISZERO
00001eb0: PUSH2 0x1ebd
00001eb3: JUMPI
00001eb4: RETURNDATASIZE
00001eb5: PUSH1 0x00
00001eb7: DUP1
00001eb8: RETURNDATACOPY
00001eb9: RETURNDATASIZE
00001eba: PUSH1 0x00
00001ebc: REVERT
00001ebd: JUMPDEST
00001ebe: POP
00001ebf: POP
00001ec0: POP
00001ec1: POP
00001ec2: POP
00001ec3: PUSH2 0x14a8
00001ec6: PUSH1 0x01
00001ec8: PUSH1 0x00
00001eca: SSTORE
00001ecb: JUMP
00001ecc: JUMPDEST
00001ecd: PUSH1 0x01
00001ecf: PUSH1 0x01
00001ed1: PUSH1 0xa0
00001ed3: SHL
00001ed4: SUB
00001ed5: DUP2
00001ed6: AND
00001ed7: PUSH1 0x00
00001ed9: SWAP1
00001eda: DUP2
00001edb: MSTORE
00001edc: PUSH1 0x08
00001ede: PUSH1 0x20
00001ee0: SWAP1
00001ee1: DUP2
00001ee2: MSTORE
00001ee3: PUSH1 0x40
00001ee5: DUP1
00001ee6: DUP4
00001ee7: KECCAK256
00001ee8: DUP2
00001ee9: MLOAD
00001eea: PUSH1 0x60
00001eec: DUP2
00001eed: ADD
00001eee: DUP4
00001eef: MSTORE
00001ef0: SWAP1
00001ef1: SLOAD
00001ef2: PUSH2 0xffff
00001ef5: DUP2
00001ef6: AND
00001ef7: DUP1
00001ef8: DUP4
00001ef9: MSTORE
00001efa: PUSH3 0x010000
00001efe: DUP3
00001eff: DIV
00001f00: PUSH1 0x01
00001f02: PUSH1 0x01
00001f04: PUSH1 0x68
00001f06: SHL
00001f07: SUB
00001f08: AND
00001f09: SWAP5
00001f0a: DUP4
00001f0b: ADD
00001f0c: SWAP5
00001f0d: SWAP1
00001f0e: SWAP5
00001f0f: MSTORE
00001f10: PUSH1 0x01
00001f12: PUSH1 0x78
00001f14: SHL
00001f15: SWAP1
00001f16: DIV
00001f17: PUSH1 0x01
00001f19: PUSH1 0x01
00001f1b: PUSH1 0x80
00001f1d: SHL
00001f1e: SUB
00001f1f: AND
00001f20: SWAP2
00001f21: DUP2
00001f22: ADD
00001f23: SWAP2
00001f24: SWAP1
00001f25: SWAP2
00001f26: MSTORE
00001f27: DUP3
00001f28: SWAP2
00001f29: PUSH1 0x01
00001f2b: GT
00001f2c: ISZERO
00001f2d: PUSH2 0x1f4e
00001f30: JUMPI
00001f31: POP
00001f32: POP
00001f33: POP
00001f34: PUSH1 0x01
00001f36: PUSH1 0x01
00001f38: PUSH1 0xa0
00001f3a: SHL
00001f3b: SUB
00001f3c: AND
00001f3d: PUSH1 0x00
00001f3f: SWAP1
00001f40: DUP2
00001f41: MSTORE
00001f42: PUSH1 0x01
00001f44: PUSH1 0x20
00001f46: MSTORE
00001f47: PUSH1 0x40
00001f49: DUP2
00001f4a: KECCAK256
00001f4b: SLOAD
00001f4c: SWAP2
00001f4d: JUMP
00001f4e: JUMPDEST
00001f4f: PUSH1 0x0d
00001f51: SLOAD
00001f52: DUP2
00001f53: MLOAD
00001f54: PUSH2 0xffff
00001f57: SWAP1
00001f58: DUP2
00001f59: AND
00001f5a: PUSH1 0x00
00001f5c: SWAP1
00001f5d: DUP2
00001f5e: MSTORE
00001f5f: PUSH1 0x09
00001f61: PUSH1 0x20
00001f63: MSTORE
00001f64: PUSH1 0x40
00001f66: DUP2
00001f67: KECCAK256
00001f68: SLOAD
00001f69: PUSH1 0x0b
00001f6b: SLOAD
00001f6c: SWAP2
00001f6d: SWAP4
00001f6e: PUSH2 0x1f7f
00001f71: SWAP4
00001f72: DUP7
00001f73: SWAP4
00001f74: SWAP2
00001f75: AND
00001f76: SWAP2
00001f77: SWAP1
00001f78: PUSH1 0xff
00001f7a: AND
00001f7b: PUSH2 0x2b3d
00001f7e: JUMP
00001f7f: JUMPDEST
00001f80: SWAP1
00001f81: POP
00001f82: PUSH2 0x1fa0
00001f85: DUP6
00001f86: PUSH1 0x01
00001f88: PUSH1 0x01
00001f8a: PUSH1 0xa0
00001f8c: SHL
00001f8d: SUB
00001f8e: AND
00001f8f: PUSH1 0x00
00001f91: SWAP1
00001f92: DUP2
00001f93: MSTORE
00001f94: PUSH1 0x01
00001f96: PUSH1 0x20
00001f98: MSTORE
00001f99: PUSH1 0x40
00001f9b: SWAP1
00001f9c: KECCAK256
00001f9d: SLOAD
00001f9e: SWAP1
00001f9f: JUMP
00001fa0: JUMPDEST
00001fa1: SWAP6
00001fa2: SWAP1
00001fa3: SWAP5
00001fa4: POP
00001fa5: SWAP3
00001fa6: POP
00001fa7: POP
00001fa8: POP
00001fa9: JUMP
00001faa: JUMPDEST
00001fab: PUSH2 0x1fb2
00001fae: PUSH2 0x2278
00001fb1: JUMP
00001fb2: JUMPDEST
00001fb3: CALLER
00001fb4: PUSH1 0x00
00001fb6: SWAP1
00001fb7: DUP2
00001fb8: MSTORE
00001fb9: PUSH1 0x0a
00001fbb: PUSH1 0x20
00001fbd: MSTORE
00001fbe: PUSH1 0x40
00001fc0: SWAP1
00001fc1: KECCAK256
00001fc2: DUP1
00001fc3: SLOAD
00001fc4: PUSH1 0x01
00001fc6: PUSH1 0x01
00001fc8: PUSH1 0x80
00001fca: SHL
00001fcb: SUB
00001fcc: PUSH3 0x010000
00001fd0: DUP3
00001fd1: DIV
00001fd2: AND
00001fd3: SWAP1
00001fd4: PUSH2 0xffff
00001fd7: AND
00001fd8: DUP2
00001fd9: PUSH2 0x2014
00001fdc: JUMPI
00001fdd: PUSH1 0x40
00001fdf: MLOAD
00001fe0: PUSH3 0x461bcd
00001fe4: PUSH1 0xe5
00001fe6: SHL
00001fe7: DUP2
00001fe8: MSTORE
00001fe9: PUSH1 0x20
00001feb: PUSH1 0x04
00001fed: DUP3
00001fee: ADD
00001fef: MSTORE
00001ff0: PUSH1 0x0d
00001ff2: PUSH1 0x24
00001ff4: DUP3
00001ff5: ADD
00001ff6: MSTORE
00001ff7: PUSH13 0x139bdd081a5b9a5d1a585d1959
00002005: PUSH1 0x9a
00002007: SHL
00002008: PUSH1 0x44
0000200a: DUP3
0000200b: ADD
0000200c: MSTORE
0000200d: PUSH1 0x64
0000200f: ADD
00002010: PUSH2 0x0c1b
00002013: JUMP
00002014: JUMPDEST
00002015: PUSH1 0x0d
00002017: SLOAD
00002018: PUSH2 0xffff
0000201b: AND
0000201c: DUP2
0000201d: LT
0000201e: PUSH2 0x205c
00002021: JUMPI
00002022: PUSH1 0x40
00002024: MLOAD
00002025: PUSH3 0x461bcd
00002029: PUSH1 0xe5
0000202b: SHL
0000202c: DUP2
0000202d: MSTORE
0000202e: PUSH1 0x20
00002030: PUSH1 0x04
00002032: DUP3
00002033: ADD
00002034: MSTORE
00002035: PUSH1 0x10
00002037: PUSH1 0x24
00002039: DUP3
0000203a: ADD
0000203b: MSTORE
0000203c: PUSH16 0x149bdd5b99081b9bdd0818db1bdcd959
0000204d: PUSH1 0x82
0000204f: SHL
00002050: PUSH1 0x44
00002052: DUP3
00002053: ADD
00002054: MSTORE
00002055: PUSH1 0x64
00002057: ADD
00002058: PUSH2 0x0c1b
0000205b: JUMP
0000205c: JUMPDEST
0000205d: CALLER
0000205e: PUSH1 0x00
00002060: SWAP1
00002061: DUP2
00002062: MSTORE
00002063: PUSH1 0x0a
00002065: PUSH1 0x20
00002067: MSTORE
00002068: PUSH1 0x40
0000206a: SWAP1
0000206b: KECCAK256
0000206c: DUP1
0000206d: SLOAD
0000206e: PUSH3 0x010000
00002072: PUSH1 0x01
00002074: PUSH1 0x90
00002076: SHL
00002077: SUB
00002078: NOT
00002079: AND
0000207a: SWAP1
0000207b: SSTORE
0000207c: PUSH1 0x0e
0000207e: SLOAD
0000207f: PUSH2 0x2099
00002082: SWAP1
00002083: DUP4
00002084: SWAP1
00002085: PUSH1 0x01
00002087: PUSH1 0x80
00002089: SHL
0000208a: SWAP1
0000208b: DIV
0000208c: PUSH1 0x01
0000208e: PUSH1 0x01
00002090: PUSH1 0x80
00002092: SHL
00002093: SUB
00002094: AND
00002095: PUSH2 0x3395
00002098: JUMP
00002099: JUMPDEST
0000209a: PUSH1 0x0e
0000209c: DUP1
0000209d: SLOAD
0000209e: PUSH1 0x01
000020a0: PUSH1 0x01
000020a2: PUSH1 0x80
000020a4: SHL
000020a5: SUB
000020a6: SWAP3
000020a7: DUP4
000020a8: AND
000020a9: PUSH1 0x01
000020ab: PUSH1 0x80
000020ad: SHL
000020ae: MUL
000020af: SWAP3
000020b0: AND
000020b1: SWAP2
000020b2: SWAP1
000020b3: SWAP2
000020b4: OR
000020b5: SWAP1
000020b6: SSTORE
000020b7: PUSH1 0x00
000020b9: DUP2
000020ba: DUP2
000020bb: MSTORE
000020bc: PUSH1 0x09
000020be: PUSH1 0x20
000020c0: MSTORE
000020c1: PUSH1 0x40
000020c3: DUP2
000020c4: KECCAK256
000020c5: SLOAD
000020c6: PUSH1 0x0b
000020c8: SLOAD
000020c9: PUSH2 0x20d6
000020cc: SWAP2
000020cd: DUP6
000020ce: SWAP2
000020cf: PUSH1 0xff
000020d1: AND
000020d2: PUSH2 0x2826
000020d5: JUMP
000020d6: JUMPDEST
000020d7: PUSH1 0x40
000020d9: DUP1
000020da: MLOAD
000020db: DUP3
000020dc: DUP2
000020dd: MSTORE
000020de: PUSH1 0x20
000020e0: DUP2
000020e1: ADD
000020e2: DUP7
000020e3: SWAP1
000020e4: MSTORE
000020e5: SWAP2
000020e6: SWAP3
000020e7: POP
000020e8: CALLER
000020e9: SWAP2
000020ea: PUSH32 0xf279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b568
0000210b: SWAP2
0000210c: ADD
0000210d: PUSH1 0x40
0000210f: MLOAD
00002110: DUP1
00002111: SWAP2
00002112: SUB
00002113: SWAP1
00002114: LOG2
00002115: PUSH2 0x211e
00002118: ADDRESS
00002119: DUP5
0000211a: PUSH2 0x2bae
0000211d: JUMP
0000211e: JUMPDEST
0000211f: PUSH1 0x00
00002121: DUP2
00002122: GT
00002123: PUSH2 0x2160
00002126: JUMPI
00002127: PUSH1 0x40
00002129: MLOAD
0000212a: PUSH3 0x461bcd
0000212e: PUSH1 0xe5
00002130: SHL
00002131: DUP2
00002132: MSTORE
00002133: PUSH1 0x20
00002135: PUSH1 0x04
00002137: DUP3
00002138: ADD
00002139: MSTORE
0000213a: PUSH1 0x0f
0000213c: PUSH1 0x24
0000213e: DUP3
0000213f: ADD
00002140: MSTORE
00002141: PUSH15 0x085dda5d1a191c985dd05b5bdd5b9d
00002151: PUSH1 0x8a
00002153: SHL
00002154: PUSH1 0x44
00002156: DUP3
00002157: ADD
00002158: MSTORE
00002159: PUSH1 0x64
0000215b: ADD
0000215c: PUSH2 0x0c1b
0000215f: JUMP
00002160: JUMPDEST
00002161: PUSH2 0x216a
00002164: CALLER
00002165: DUP3
00002166: PUSH2 0x22a2
00002169: JUMP
0000216a: JUMPDEST
0000216b: DUP1
0000216c: PUSH1 0x0f
0000216e: SLOAD
0000216f: PUSH2 0x2178
00002172: SWAP2
00002173: SWAP1
00002174: PUSH2 0x3395
00002177: JUMP
00002178: JUMPDEST
00002179: PUSH1 0x0f
0000217b: SSTORE
0000217c: POP
0000217d: PUSH2 0x14a8
00002180: SWAP3
00002181: POP
00002182: PUSH2 0x2401
00002185: SWAP2
00002186: POP
00002187: POP
00002188: JUMP
00002189: JUMPDEST
0000218a: PUSH2 0x2196
0000218d: DUP4
0000218e: DUP4
0000218f: DUP4
00002190: PUSH1 0x01
00002192: PUSH2 0x2be4
00002195: JUMP
00002196: JUMPDEST
00002197: POP
00002198: POP
00002199: POP
0000219a: JUMP
0000219b: JUMPDEST
0000219c: PUSH1 0x01
0000219e: PUSH1 0x01
000021a0: PUSH1 0xa0
000021a2: SHL
000021a3: SUB
000021a4: DUP4
000021a5: DUP2
000021a6: AND
000021a7: PUSH1 0x00
000021a9: SWAP1
000021aa: DUP2
000021ab: MSTORE
000021ac: PUSH1 0x02
000021ae: PUSH1 0x20
000021b0: SWAP1
000021b1: DUP2
000021b2: MSTORE
000021b3: PUSH1 0x40
000021b5: DUP1
000021b6: DUP4
000021b7: KECCAK256
000021b8: SWAP4
000021b9: DUP7
000021ba: AND
000021bb: DUP4
000021bc: MSTORE
000021bd: SWAP3
000021be: SWAP1
000021bf: MSTORE
000021c0: KECCAK256
000021c1: SLOAD
000021c2: PUSH1 0x00
000021c4: NOT
000021c5: DUP2
000021c6: EQ
000021c7: PUSH2 0x2213
000021ca: JUMPI
000021cb: DUP2
000021cc: DUP2
000021cd: LT
000021ce: ISZERO
000021cf: PUSH2 0x2204
000021d2: JUMPI
000021d3: PUSH1 0x40
000021d5: MLOAD
000021d6: PUSH4 0x7dc7a0d9
000021db: PUSH1 0xe1
000021dd: SHL
000021de: DUP2
000021df: MSTORE
000021e0: PUSH1 0x01
000021e2: PUSH1 0x01
000021e4: PUSH1 0xa0
000021e6: SHL
000021e7: SUB
000021e8: DUP5
000021e9: AND
000021ea: PUSH1 0x04
000021ec: DUP3
000021ed: ADD
000021ee: MSTORE
000021ef: PUSH1 0x24
000021f1: DUP2
000021f2: ADD
000021f3: DUP3
000021f4: SWAP1
000021f5: MSTORE
000021f6: PUSH1 0x44
000021f8: DUP2
000021f9: ADD
000021fa: DUP4
000021fb: SWAP1
000021fc: MSTORE
000021fd: PUSH1 0x64
000021ff: ADD
00002200: PUSH2 0x0c1b
00002203: JUMP
00002204: JUMPDEST
00002205: PUSH2 0x2213
00002208: DUP5
00002209: DUP5
0000220a: DUP5
0000220b: DUP5
0000220c: SUB
0000220d: PUSH1 0x00
0000220f: PUSH2 0x2be4
00002212: JUMP
00002213: JUMPDEST
00002214: POP
00002215: POP
00002216: POP
00002217: POP
00002218: JUMP
00002219: JUMPDEST
0000221a: PUSH1 0x01
0000221c: PUSH1 0x01
0000221e: PUSH1 0xa0
00002220: SHL
00002221: SUB
00002222: DUP4
00002223: AND
00002224: PUSH2 0x2243
00002227: JUMPI
00002228: PUSH1 0x40
0000222a: MLOAD
0000222b: PUSH4 0x4b637e8f
00002230: PUSH1 0xe1
00002232: SHL
00002233: DUP2
00002234: MSTORE
00002235: PUSH1 0x00
00002237: PUSH1 0x04
00002239: DUP3
0000223a: ADD
0000223b: MSTORE
0000223c: PUSH1 0x24
0000223e: ADD
0000223f: PUSH2 0x0c1b
00002242: JUMP
00002243: JUMPDEST
00002244: PUSH1 0x01
00002246: PUSH1 0x01
00002248: PUSH1 0xa0
0000224a: SHL
0000224b: SUB
0000224c: DUP3
0000224d: AND
0000224e: PUSH2 0x226d
00002251: JUMPI
00002252: PUSH1 0x40
00002254: MLOAD
00002255: PUSH4 0xec442f05
0000225a: PUSH1 0xe0
0000225c: SHL
0000225d: DUP2
0000225e: MSTORE
0000225f: PUSH1 0x00
00002261: PUSH1 0x04
00002263: DUP3
00002264: ADD
00002265: MSTORE
00002266: PUSH1 0x24
00002268: ADD
00002269: PUSH2 0x0c1b
0000226c: JUMP
0000226d: JUMPDEST
0000226e: PUSH2 0x2196
00002271: DUP4
00002272: DUP4
00002273: DUP4
00002274: PUSH2 0x2cb9
00002277: JUMP
00002278: JUMPDEST
00002279: PUSH1 0x02
0000227b: PUSH1 0x00
0000227d: SLOAD
0000227e: SUB
0000227f: PUSH2 0x229b
00002282: JUMPI
00002283: PUSH1 0x40
00002285: MLOAD
00002286: PUSH4 0x3ee5aeb5
0000228b: PUSH1 0xe0
0000228d: SHL
0000228e: DUP2
0000228f: MSTORE
00002290: PUSH1 0x04
00002292: ADD
00002293: PUSH1 0x40
00002295: MLOAD
00002296: DUP1
00002297: SWAP2
00002298: SUB
00002299: SWAP1
0000229a: REVERT
0000229b: JUMPDEST
0000229c: PUSH1 0x02
0000229e: PUSH1 0x00
000022a0: SSTORE
000022a1: JUMP
000022a2: JUMPDEST
000022a3: PUSH1 0x0b
000022a5: SLOAD
000022a6: PUSH1 0x01
000022a8: PUSH1 0x01
000022aa: PUSH1 0xa0
000022ac: SHL
000022ad: SUB
000022ae: PUSH2 0x0100
000022b1: SWAP1
000022b2: SWAP2
000022b3: DIV
000022b4: DUP2
000022b5: AND
000022b6: SWAP1
000022b7: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
000022d8: AND
000022d9: DUP2
000022da: SUB
000022db: PUSH2 0x23ed
000022de: JUMPI
000022df: PUSH1 0x40
000022e1: MLOAD
000022e2: PUSH4 0x2e1a7d4d
000022e7: PUSH1 0xe0
000022e9: SHL
000022ea: DUP2
000022eb: MSTORE
000022ec: PUSH1 0x04
000022ee: DUP2
000022ef: ADD
000022f0: DUP4
000022f1: SWAP1
000022f2: MSTORE
000022f3: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00002314: PUSH1 0x01
00002316: PUSH1 0x01
00002318: PUSH1 0xa0
0000231a: SHL
0000231b: SUB
0000231c: AND
0000231d: SWAP1
0000231e: PUSH4 0x2e1a7d4d
00002323: SWAP1
00002324: PUSH1 0x24
00002326: ADD
00002327: PUSH1 0x00
00002329: PUSH1 0x40
0000232b: MLOAD
0000232c: DUP1
0000232d: DUP4
0000232e: SUB
0000232f: DUP2
00002330: PUSH1 0x00
00002332: DUP8
00002333: DUP1
00002334: EXTCODESIZE
00002335: ISZERO
00002336: DUP1
00002337: ISZERO
00002338: PUSH2 0x2340
0000233b: JUMPI
0000233c: PUSH1 0x00
0000233e: DUP1
0000233f: REVERT
00002340: JUMPDEST
00002341: POP
00002342: GAS
00002343: CALL
00002344: ISZERO
00002345: DUP1
00002346: ISZERO
00002347: PUSH2 0x2354
0000234a: JUMPI
0000234b: RETURNDATASIZE
0000234c: PUSH1 0x00
0000234e: DUP1
0000234f: RETURNDATACOPY
00002350: RETURNDATASIZE
00002351: PUSH1 0x00
00002353: REVERT
00002354: JUMPDEST
00002355: POP
00002356: POP
00002357: POP
00002358: POP
00002359: PUSH1 0x00
0000235b: DUP4
0000235c: PUSH1 0x01
0000235e: PUSH1 0x01
00002360: PUSH1 0xa0
00002362: SHL
00002363: SUB
00002364: AND
00002365: DUP4
00002366: PUSH1 0x40
00002368: MLOAD
00002369: PUSH1 0x00
0000236b: PUSH1 0x40
0000236d: MLOAD
0000236e: DUP1
0000236f: DUP4
00002370: SUB
00002371: DUP2
00002372: DUP6
00002373: DUP8
00002374: GAS
00002375: CALL
00002376: SWAP3
00002377: POP
00002378: POP
00002379: POP
0000237a: RETURNDATASIZE
0000237b: DUP1
0000237c: PUSH1 0x00
0000237e: DUP2
0000237f: EQ
00002380: PUSH2 0x23a5
00002383: JUMPI
00002384: PUSH1 0x40
00002386: MLOAD
00002387: SWAP2
00002388: POP
00002389: PUSH1 0x1f
0000238b: NOT
0000238c: PUSH1 0x3f
0000238e: RETURNDATASIZE
0000238f: ADD
00002390: AND
00002391: DUP3
00002392: ADD
00002393: PUSH1 0x40
00002395: MSTORE
00002396: RETURNDATASIZE
00002397: DUP3
00002398: MSTORE
00002399: RETURNDATASIZE
0000239a: PUSH1 0x00
0000239c: PUSH1 0x20
0000239e: DUP5
0000239f: ADD
000023a0: RETURNDATACOPY
000023a1: PUSH2 0x23aa
000023a4: JUMP
000023a5: JUMPDEST
000023a6: PUSH1 0x60
000023a8: SWAP2
000023a9: POP
000023aa: JUMPDEST
000023ab: POP
000023ac: POP
000023ad: SWAP1
000023ae: POP
000023af: DUP1
000023b0: PUSH2 0x2213
000023b3: JUMPI
000023b4: PUSH1 0x40
000023b6: MLOAD
000023b7: PUSH3 0x461bcd
000023bb: PUSH1 0xe5
000023bd: SHL
000023be: DUP2
000023bf: MSTORE
000023c0: PUSH1 0x20
000023c2: PUSH1 0x04
000023c4: DUP3
000023c5: ADD
000023c6: MSTORE
000023c7: PUSH1 0x0f
000023c9: PUSH1 0x24
000023cb: DUP3
000023cc: ADD
000023cd: MSTORE
000023ce: PUSH15 0x151c985b9cd9995c8819985a5b1959
000023de: PUSH1 0x8a
000023e0: SHL
000023e1: PUSH1 0x44
000023e3: DUP3
000023e4: ADD
000023e5: MSTORE
000023e6: PUSH1 0x64
000023e8: ADD
000023e9: PUSH2 0x0c1b
000023ec: JUMP
000023ed: JUMPDEST
000023ee: PUSH2 0x2196
000023f1: PUSH1 0x01
000023f3: PUSH1 0x01
000023f5: PUSH1 0xa0
000023f7: SHL
000023f8: SUB
000023f9: DUP3
000023fa: AND
000023fb: DUP5
000023fc: DUP5
000023fd: PUSH2 0x2919
00002400: JUMP
00002401: JUMPDEST
00002402: PUSH1 0x01
00002404: PUSH1 0x00
00002406: SSTORE
00002407: JUMP
00002408: JUMPDEST
00002409: PUSH1 0x00
0000240b: DUP4
0000240c: MLOAD
0000240d: ISZERO
0000240e: PUSH2 0x2443
00002411: JUMPI
00002412: PUSH1 0x20
00002414: DUP5
00002415: ADD
00002416: DUP5
00002417: MLOAD
00002418: PUSH1 0x05
0000241a: SHL
0000241b: DUP2
0000241c: ADD
0000241d: JUMPDEST
0000241e: DUP2
0000241f: MLOAD
00002420: DUP5
00002421: GT
00002422: PUSH1 0x05
00002424: SHL
00002425: SWAP4
00002426: DUP5
00002427: MSTORE
00002428: DUP2
00002429: MLOAD
0000242a: PUSH1 0x20
0000242c: SWAP5
0000242d: DUP6
0000242e: XOR
0000242f: MSTORE
00002430: PUSH1 0x40
00002432: PUSH1 0x00
00002434: KECCAK256
00002435: SWAP4
00002436: SWAP1
00002437: SWAP2
00002438: ADD
00002439: SWAP1
0000243a: DUP1
0000243b: DUP3
0000243c: LT
0000243d: PUSH2 0x241d
00002440: JUMPI
00002441: POP
00002442: POP
00002443: JUMPDEST
00002444: POP
00002445: EQ
00002446: SWAP2
00002447: SWAP1
00002448: POP
00002449: JUMP
0000244a: JUMPDEST
0000244b: PUSH1 0x0d
0000244d: SLOAD
0000244e: PUSH2 0xffff
00002451: AND
00002452: PUSH1 0x00
00002454: DUP4
00002455: PUSH2 0x245c
00002458: PUSH2 0x1765
0000245b: JUMP
0000245c: JUMPDEST
0000245d: PUSH2 0x2466
00002460: SWAP2
00002461: SWAP1
00002462: PUSH2 0x33c9
00002465: JUMP
00002466: JUMPDEST
00002467: PUSH1 0x0c
00002469: SLOAD
0000246a: SWAP1
0000246b: SWAP2
0000246c: POP
0000246d: PUSH1 0x01
0000246f: PUSH1 0x01
00002471: PUSH1 0x68
00002473: SHL
00002474: SUB
00002475: AND
00002476: DUP2
00002477: GT
00002478: ISZERO
00002479: PUSH2 0x24b1
0000247c: JUMPI
0000247d: PUSH1 0x40
0000247f: MLOAD
00002480: PUSH3 0x461bcd
00002484: PUSH1 0xe5
00002486: SHL
00002487: DUP2
00002488: MSTORE
00002489: PUSH1 0x20
0000248b: PUSH1 0x04
0000248d: DUP3
0000248e: ADD
0000248f: MSTORE
00002490: PUSH1 0x0a
00002492: PUSH1 0x24
00002494: DUP3
00002495: ADD
00002496: MSTORE
00002497: PUSH10 0x04578636565642063617
000024a2: PUSH1 0xb4
000024a4: SHL
000024a5: PUSH1 0x44
000024a7: DUP3
000024a8: ADD
000024a9: MSTORE
000024aa: PUSH1 0x64
000024ac: ADD
000024ad: PUSH2 0x0c1b
000024b0: JUMP
000024b1: JUMPDEST
000024b2: PUSH1 0x0b
000024b4: SLOAD
000024b5: PUSH1 0x01
000024b7: PUSH1 0xa8
000024b9: SHL
000024ba: SWAP1
000024bb: DIV
000024bc: PUSH7 0xffffffffffffff
000024c4: AND
000024c5: DUP2
000024c6: LT
000024c7: ISZERO
000024c8: PUSH2 0x250a
000024cb: JUMPI
000024cc: PUSH1 0x40
000024ce: MLOAD
000024cf: PUSH3 0x461bcd
000024d3: PUSH1 0xe5
000024d5: SHL
000024d6: DUP2
000024d7: MSTORE
000024d8: PUSH1 0x20
000024da: PUSH1 0x04
000024dc: DUP3
000024dd: ADD
000024de: MSTORE
000024df: PUSH1 0x14
000024e1: PUSH1 0x24
000024e3: DUP3
000024e4: ADD
000024e5: MSTORE
000024e6: PUSH20 0x496e73756666696369656e742062616c616e6365
000024fb: PUSH1 0x60
000024fd: SHL
000024fe: PUSH1 0x44
00002500: DUP3
00002501: ADD
00002502: MSTORE
00002503: PUSH1 0x64
00002505: ADD
00002506: PUSH2 0x0c1b
00002509: JUMP
0000250a: JUMPDEST
0000250b: PUSH1 0x40
0000250d: DUP1
0000250e: MLOAD
0000250f: DUP6
00002510: DUP2
00002511: MSTORE
00002512: PUSH1 0x20
00002514: DUP2
00002515: ADD
00002516: DUP5
00002517: SWAP1
00002518: MSTORE
00002519: PUSH1 0x01
0000251b: PUSH1 0x01
0000251d: PUSH1 0xa0
0000251f: SHL
00002520: SUB
00002521: DUP6
00002522: AND
00002523: SWAP2
00002524: PUSH32 0x90890809c654f11d6e72a28fa60149770a0d11ec6c92319d6ceb2bb0a4ea1a15
00002545: SWAP2
00002546: ADD
00002547: PUSH1 0x40
00002549: MLOAD
0000254a: DUP1
0000254b: SWAP2
0000254c: SUB
0000254d: SWAP1
0000254e: LOG2
0000254f: PUSH1 0x01
00002551: PUSH1 0x01
00002553: PUSH1 0xa0
00002555: SHL
00002556: SUB
00002557: DUP4
00002558: AND
00002559: PUSH1 0x00
0000255b: SWAP1
0000255c: DUP2
0000255d: MSTORE
0000255e: PUSH1 0x08
00002560: PUSH1 0x20
00002562: SWAP1
00002563: DUP2
00002564: MSTORE
00002565: PUSH1 0x40
00002567: DUP1
00002568: DUP4
00002569: KECCAK256
0000256a: DUP2
0000256b: MLOAD
0000256c: PUSH1 0x60
0000256e: DUP2
0000256f: ADD
00002570: DUP4
00002571: MSTORE
00002572: SWAP1
00002573: SLOAD
00002574: PUSH2 0xffff
00002577: DUP2
00002578: AND
00002579: DUP1
0000257a: DUP4
0000257b: MSTORE
0000257c: PUSH3 0x010000
00002580: DUP3
00002581: DIV
00002582: PUSH1 0x01
00002584: PUSH1 0x01
00002586: PUSH1 0x68
00002588: SHL
00002589: SUB
0000258a: AND
0000258b: DUP4
0000258c: DUP7
0000258d: ADD
0000258e: MSTORE
0000258f: PUSH1 0x01
00002591: PUSH1 0x78
00002593: SHL
00002594: SWAP1
00002595: SWAP2
00002596: DIV
00002597: PUSH1 0x01
00002599: PUSH1 0x01
0000259b: PUSH1 0x80
0000259d: SHL
0000259e: SUB
0000259f: AND
000025a0: DUP3
000025a1: DUP5
000025a2: ADD
000025a3: MSTORE
000025a4: DUP5
000025a5: MSTORE
000025a6: PUSH1 0x09
000025a8: SWAP1
000025a9: SWAP3
000025aa: MSTORE
000025ab: DUP3
000025ac: KECCAK256
000025ad: SLOAD
000025ae: PUSH1 0x0b
000025b0: SLOAD
000025b1: SWAP2
000025b2: SWAP3
000025b3: SWAP2
000025b4: PUSH2 0x25c4
000025b7: SWAP2
000025b8: DUP5
000025b9: SWAP2
000025ba: DUP8
000025bb: SWAP2
000025bc: SWAP1
000025bd: PUSH1 0xff
000025bf: AND
000025c0: PUSH2 0x2b3d
000025c3: JUMP
000025c4: JUMPDEST
000025c5: DUP3
000025c6: MLOAD
000025c7: SWAP1
000025c8: SWAP2
000025c9: POP
000025ca: DUP7
000025cb: SWAP1
000025cc: PUSH2 0xffff
000025cf: AND
000025d0: DUP6
000025d1: SUB
000025d2: PUSH2 0x25f4
000025d5: JUMPI
000025d6: PUSH1 0x00
000025d8: DUP8
000025d9: DUP5
000025da: PUSH1 0x20
000025dc: ADD
000025dd: MLOAD
000025de: PUSH1 0x01
000025e0: PUSH1 0x01
000025e2: PUSH1 0x68
000025e4: SHL
000025e5: SUB
000025e6: AND
000025e7: PUSH2 0x25f0
000025ea: SWAP2
000025eb: SWAP1
000025ec: PUSH2 0x33c9
000025ef: JUMP
000025f0: JUMPDEST
000025f1: SWAP2
000025f2: POP
000025f3: POP
000025f4: JUMPDEST
000025f5: PUSH2 0x25fd
000025f8: DUP2
000025f9: PUSH2 0x28cf
000025fc: JUMP
000025fd: JUMPDEST
000025fe: PUSH1 0x40
00002600: DUP1
00002601: MLOAD
00002602: PUSH1 0x60
00002604: DUP2
00002605: ADD
00002606: DUP3
00002607: MSTORE
00002608: PUSH2 0xffff
0000260b: DUP1
0000260c: DUP9
0000260d: AND
0000260e: DUP3
0000260f: MSTORE
00002610: PUSH1 0x01
00002612: PUSH1 0x01
00002614: PUSH1 0x68
00002616: SHL
00002617: SUB
00002618: DUP1
00002619: DUP6
0000261a: AND
0000261b: PUSH1 0x20
0000261d: DUP1
0000261e: DUP6
0000261f: ADD
00002620: SWAP2
00002621: DUP3
00002622: MSTORE
00002623: PUSH1 0x01
00002625: PUSH1 0x01
00002627: PUSH1 0x80
00002629: SHL
0000262a: SUB
0000262b: DUP1
0000262c: DUP10
0000262d: AND
0000262e: DUP7
0000262f: DUP9
00002630: ADD
00002631: SWAP1
00002632: DUP2
00002633: MSTORE
00002634: PUSH1 0x01
00002636: PUSH1 0x01
00002638: PUSH1 0xa0
0000263a: SHL
0000263b: SUB
0000263c: DUP15
0000263d: AND
0000263e: PUSH1 0x00
00002640: SWAP1
00002641: DUP2
00002642: MSTORE
00002643: PUSH1 0x08
00002645: SWAP1
00002646: SWAP4
00002647: MSTORE
00002648: SWAP7
00002649: DUP3
0000264a: KECCAK256
0000264b: SWAP6
0000264c: MLOAD
0000264d: DUP7
0000264e: SLOAD
0000264f: SWAP4
00002650: MLOAD
00002651: SWAP8
00002652: MLOAD
00002653: DUP3
00002654: AND
00002655: PUSH1 0x01
00002657: PUSH1 0x78
00002659: SHL
0000265a: MUL
0000265b: PUSH1 0x01
0000265d: PUSH1 0x78
0000265f: SHL
00002660: PUSH1 0x01
00002662: PUSH1 0xf8
00002664: SHL
00002665: SUB
00002666: NOT
00002667: SWAP9
00002668: SWAP1
00002669: SWAP6
0000266a: AND
0000266b: PUSH3 0x010000
0000266f: MUL
00002670: PUSH15 0xffffffffffffffffffffffffffffff
00002680: NOT
00002681: SWAP1
00002682: SWAP5
00002683: AND
00002684: SWAP6
00002685: AND
00002686: SWAP5
00002687: SWAP1
00002688: SWAP5
00002689: OR
0000268a: SWAP2
0000268b: SWAP1
0000268c: SWAP2
0000268d: OR
0000268e: SWAP5
0000268f: SWAP1
00002690: SWAP5
00002691: AND
00002692: OR
00002693: SWAP1
00002694: SWAP2
00002695: SSTORE
00002696: PUSH1 0x0e
00002698: SLOAD
00002699: PUSH2 0x26a4
0000269c: SWAP2
0000269d: DUP11
0000269e: SWAP2
0000269f: AND
000026a0: PUSH2 0x33c9
000026a3: JUMP
000026a4: JUMPDEST
000026a5: SWAP1
000026a6: POP
000026a7: PUSH2 0x26af
000026aa: DUP2
000026ab: PUSH2 0x2885
000026ae: JUMP
000026af: JUMPDEST
000026b0: PUSH1 0x0e
000026b2: DUP1
000026b3: SLOAD
000026b4: PUSH1 0x01
000026b6: PUSH1 0x01
000026b8: PUSH1 0x80
000026ba: SHL
000026bb: SUB
000026bc: NOT
000026bd: AND
000026be: PUSH1 0x01
000026c0: PUSH1 0x01
000026c2: PUSH1 0x80
000026c4: SHL
000026c5: SUB
000026c6: SWAP3
000026c7: SWAP1
000026c8: SWAP3
000026c9: AND
000026ca: SWAP2
000026cb: SWAP1
000026cc: SWAP2
000026cd: OR
000026ce: SWAP1
000026cf: SSTORE
000026d0: POP
000026d1: POP
000026d2: POP
000026d3: POP
000026d4: POP
000026d5: POP
000026d6: POP
000026d7: JUMP
000026d8: JUMPDEST
000026d9: PUSH1 0x40
000026db: MLOAD
000026dc: PUSH1 0x01
000026de: PUSH1 0x01
000026e0: PUSH1 0xa0
000026e2: SHL
000026e3: SUB
000026e4: DUP5
000026e5: DUP2
000026e6: AND
000026e7: PUSH1 0x24
000026e9: DUP4
000026ea: ADD
000026eb: MSTORE
000026ec: DUP4
000026ed: DUP2
000026ee: AND
000026ef: PUSH1 0x44
000026f1: DUP4
000026f2: ADD
000026f3: MSTORE
000026f4: PUSH1 0x64
000026f6: DUP3
000026f7: ADD
000026f8: DUP4
000026f9: SWAP1
000026fa: MSTORE
000026fb: PUSH2 0x2213
000026fe: SWAP2
000026ff: DUP7
00002700: SWAP2
00002701: DUP3
00002702: AND
00002703: SWAP1
00002704: PUSH4 0x23b872dd
00002709: SWAP1
0000270a: PUSH1 0x84
0000270c: ADD
0000270d: JUMPDEST
0000270e: PUSH1 0x40
00002710: MLOAD
00002711: PUSH1 0x20
00002713: DUP2
00002714: DUP4
00002715: SUB
00002716: SUB
00002717: DUP2
00002718: MSTORE
00002719: SWAP1
0000271a: PUSH1 0x40
0000271c: MSTORE
0000271d: SWAP2
0000271e: POP
0000271f: PUSH1 0xe0
00002721: SHL
00002722: PUSH1 0x20
00002724: DUP3
00002725: ADD
00002726: DUP1
00002727: MLOAD
00002728: PUSH1 0x01
0000272a: PUSH1 0x01
0000272c: PUSH1 0xe0
0000272e: SHL
0000272f: SUB
00002730: DUP4
00002731: DUP2
00002732: DUP4
00002733: AND
00002734: OR
00002735: DUP4
00002736: MSTORE
00002737: POP
00002738: POP
00002739: POP
0000273a: POP
0000273b: PUSH2 0x2de3
0000273e: JUMP
0000273f: JUMPDEST
00002740: PUSH1 0x00
00002742: DUP1
00002743: PUSH2 0x274d
00002746: DUP4
00002747: PUSH1 0x0a
00002749: PUSH2 0x3518
0000274c: JUMP
0000274d: JUMPDEST
0000274e: SWAP1
0000274f: POP
00002750: PUSH1 0x00
00002752: DUP7
00002753: GT
00002754: PUSH2 0x275d
00002757: JUMPI
00002758: DUP1
00002759: PUSH2 0x277c
0000275c: JUMP
0000275d: JUMPDEST
0000275e: DUP6
0000275f: PUSH2 0x2768
00002762: DUP6
00002763: DUP8
00002764: PUSH2 0x3395
00002767: JUMP
00002768: JUMPDEST
00002769: PUSH2 0x2772
0000276c: SWAP1
0000276d: DUP4
0000276e: PUSH2 0x3524
00002771: JUMP
00002772: JUMPDEST
00002773: PUSH2 0x277c
00002776: SWAP2
00002777: SWAP1
00002778: PUSH2 0x353b
0000277b: JUMP
0000277c: JUMPDEST
0000277d: SWAP7
0000277e: SWAP6
0000277f: POP
00002780: POP
00002781: POP
00002782: POP
00002783: POP
00002784: POP
00002785: JUMP
00002786: JUMPDEST
00002787: PUSH1 0x00
00002789: PUSH1 0x01
0000278b: DUP4
0000278c: GT
0000278d: PUSH2 0x27d0
00002790: JUMPI
00002791: PUSH1 0x40
00002793: MLOAD
00002794: PUSH3 0x461bcd
00002798: PUSH1 0xe5
0000279a: SHL
0000279b: DUP2
0000279c: MSTORE
0000279d: PUSH1 0x20
0000279f: PUSH1 0x04
000027a1: DUP3
000027a2: ADD
000027a3: MSTORE
000027a4: PUSH1 0x15
000027a6: PUSH1 0x24
000027a8: DUP3
000027a9: ADD
000027aa: MSTORE
000027ab: PUSH21 0x496e76616c69642061737365745065725368617265
000027c1: PUSH1 0x58
000027c3: SHL
000027c4: PUSH1 0x44
000027c6: DUP3
000027c7: ADD
000027c8: MSTORE
000027c9: PUSH1 0x64
000027cb: ADD
000027cc: PUSH2 0x0c1b
000027cf: JUMP
000027d0: JUMPDEST
000027d1: DUP3
000027d2: PUSH2 0x27dc
000027d5: DUP4
000027d6: PUSH1 0x0a
000027d8: PUSH2 0x3518
000027db: JUMP
000027dc: JUMPDEST
000027dd: PUSH2 0x27e6
000027e0: SWAP1
000027e1: DUP7
000027e2: PUSH2 0x3524
000027e5: JUMP
000027e6: JUMPDEST
000027e7: PUSH2 0x135e
000027ea: SWAP2
000027eb: SWAP1
000027ec: PUSH2 0x353b
000027ef: JUMP
000027f0: JUMPDEST
000027f1: PUSH1 0x01
000027f3: PUSH1 0x01
000027f5: PUSH1 0xa0
000027f7: SHL
000027f8: SUB
000027f9: DUP3
000027fa: AND
000027fb: PUSH2 0x281a
000027fe: JUMPI
000027ff: PUSH1 0x40
00002801: MLOAD
00002802: PUSH4 0xec442f05
00002807: PUSH1 0xe0
00002809: SHL
0000280a: DUP2
0000280b: MSTORE
0000280c: PUSH1 0x00
0000280e: PUSH1 0x04
00002810: DUP3
00002811: ADD
00002812: MSTORE
00002813: PUSH1 0x24
00002815: ADD
00002816: PUSH2 0x0c1b
00002819: JUMP
0000281a: JUMPDEST
0000281b: PUSH2 0x0e61
0000281e: PUSH1 0x00
00002820: DUP4
00002821: DUP4
00002822: PUSH2 0x2cb9
00002825: JUMP
00002826: JUMPDEST
00002827: PUSH1 0x00
00002829: PUSH1 0x01
0000282b: DUP4
0000282c: GT
0000282d: PUSH2 0x2870
00002830: JUMPI
00002831: PUSH1 0x40
00002833: MLOAD
00002834: PUSH3 0x461bcd
00002838: PUSH1 0xe5
0000283a: SHL
0000283b: DUP2
0000283c: MSTORE
0000283d: PUSH1 0x20
0000283f: PUSH1 0x04
00002841: DUP3
00002842: ADD
00002843: MSTORE
00002844: PUSH1 0x15
00002846: PUSH1 0x24
00002848: DUP3
00002849: ADD
0000284a: MSTORE
0000284b: PUSH21 0x496e76616c69642061737365745065725368617265
00002861: PUSH1 0x58
00002863: SHL
00002864: PUSH1 0x44
00002866: DUP3
00002867: ADD
00002868: MSTORE
00002869: PUSH1 0x64
0000286b: ADD
0000286c: PUSH2 0x0c1b
0000286f: JUMP
00002870: JUMPDEST
00002871: PUSH2 0x287b
00002874: DUP3
00002875: PUSH1 0x0a
00002877: PUSH2 0x3518
0000287a: JUMP
0000287b: JUMPDEST
0000287c: PUSH2 0x27e6
0000287f: DUP5
00002880: DUP7
00002881: PUSH2 0x3524
00002884: JUMP
00002885: JUMPDEST
00002886: PUSH1 0x01
00002888: PUSH1 0x01
0000288a: PUSH1 0x80
0000288c: SHL
0000288d: SUB
0000288e: DUP2
0000288f: GT
00002890: ISZERO
00002891: PUSH2 0x0d70
00002894: JUMPI
00002895: PUSH1 0x40
00002897: MLOAD
00002898: PUSH3 0x461bcd
0000289c: PUSH1 0xe5
0000289e: SHL
0000289f: DUP2
000028a0: MSTORE
000028a1: PUSH1 0x20
000028a3: PUSH1 0x04
000028a5: DUP3
000028a6: ADD
000028a7: MSTORE
000028a8: PUSH1 0x10
000028aa: PUSH1 0x24
000028ac: DUP3
000028ad: ADD
000028ae: MSTORE
000028af: PUSH16 0x09eeccae4ccd8deee40ead2dce862647
000028c0: PUSH1 0x83
000028c2: SHL
000028c3: PUSH1 0x44
000028c5: DUP3
000028c6: ADD
000028c7: MSTORE
000028c8: PUSH1 0x64
000028ca: ADD
000028cb: PUSH2 0x0c1b
000028ce: JUMP
000028cf: JUMPDEST
000028d0: PUSH1 0x01
000028d2: PUSH1 0x01
000028d4: PUSH1 0x68
000028d6: SHL
000028d7: SUB
000028d8: DUP2
000028d9: GT
000028da: ISZERO
000028db: PUSH2 0x0d70
000028de: JUMPI
000028df: PUSH1 0x40
000028e1: MLOAD
000028e2: PUSH3 0x461bcd
000028e6: PUSH1 0xe5
000028e8: SHL
000028e9: DUP2
000028ea: MSTORE
000028eb: PUSH1 0x20
000028ed: PUSH1 0x04
000028ef: DUP3
000028f0: ADD
000028f1: MSTORE
000028f2: PUSH1 0x10
000028f4: PUSH1 0x24
000028f6: DUP3
000028f7: ADD
000028f8: MSTORE
000028f9: PUSH16 0x13dd995c999b1bddc81d5a5b9d0c4c0d
0000290a: PUSH1 0x82
0000290c: SHL
0000290d: PUSH1 0x44
0000290f: DUP3
00002910: ADD
00002911: MSTORE
00002912: PUSH1 0x64
00002914: ADD
00002915: PUSH2 0x0c1b
00002918: JUMP
00002919: JUMPDEST
0000291a: PUSH1 0x40
0000291c: MLOAD
0000291d: PUSH1 0x01
0000291f: PUSH1 0x01
00002921: PUSH1 0xa0
00002923: SHL
00002924: SUB
00002925: DUP4
00002926: DUP2
00002927: AND
00002928: PUSH1 0x24
0000292a: DUP4
0000292b: ADD
0000292c: MSTORE
0000292d: PUSH1 0x44
0000292f: DUP3
00002930: ADD
00002931: DUP4
00002932: SWAP1
00002933: MSTORE
00002934: PUSH2 0x2196
00002937: SWAP2
00002938: DUP6
00002939: SWAP2
0000293a: DUP3
0000293b: AND
0000293c: SWAP1
0000293d: PUSH4 0xa9059cbb
00002942: SWAP1
00002943: PUSH1 0x64
00002945: ADD
00002946: PUSH2 0x270d
00002949: JUMP
0000294a: JUMPDEST
0000294b: PUSH1 0x06
0000294d: SLOAD
0000294e: PUSH1 0x01
00002950: PUSH1 0x01
00002952: PUSH1 0xa0
00002954: SHL
00002955: SUB
00002956: AND
00002957: CALLER
00002958: EQ
00002959: PUSH2 0x14a8
0000295c: JUMPI
0000295d: PUSH1 0x40
0000295f: MLOAD
00002960: PUSH4 0x118cdaa7
00002965: PUSH1 0xe0
00002967: SHL
00002968: DUP2
00002969: MSTORE
0000296a: CALLER
0000296b: PUSH1 0x04
0000296d: DUP3
0000296e: ADD
0000296f: MSTORE
00002970: PUSH1 0x24
00002972: ADD
00002973: PUSH2 0x0c1b
00002976: JUMP
00002977: JUMPDEST
00002978: CALLER
00002979: PUSH1 0x00
0000297b: SWAP1
0000297c: DUP2
0000297d: MSTORE
0000297e: PUSH1 0x08
00002980: PUSH1 0x20
00002982: SWAP1
00002983: DUP2
00002984: MSTORE
00002985: PUSH1 0x40
00002987: DUP1
00002988: DUP4
00002989: KECCAK256
0000298a: DUP2
0000298b: MLOAD
0000298c: PUSH1 0x60
0000298e: DUP2
0000298f: ADD
00002990: DUP4
00002991: MSTORE
00002992: SWAP1
00002993: SLOAD
00002994: PUSH2 0xffff
00002997: DUP1
00002998: DUP3
00002999: AND
0000299a: DUP1
0000299b: DUP5
0000299c: MSTORE
0000299d: PUSH3 0x010000
000029a1: DUP4
000029a2: DIV
000029a3: PUSH1 0x01
000029a5: PUSH1 0x01
000029a7: PUSH1 0x68
000029a9: SHL
000029aa: SUB
000029ab: AND
000029ac: DUP5
000029ad: DUP8
000029ae: ADD
000029af: MSTORE
000029b0: PUSH1 0x01
000029b2: PUSH1 0x78
000029b4: SHL
000029b5: SWAP1
000029b6: SWAP3
000029b7: DIV
000029b8: PUSH1 0x01
000029ba: PUSH1 0x01
000029bc: PUSH1 0x80
000029be: SHL
000029bf: SUB
000029c0: AND
000029c1: DUP4
000029c2: DUP6
000029c3: ADD
000029c4: MSTORE
000029c5: PUSH1 0x0d
000029c7: SLOAD
000029c8: SWAP2
000029c9: DUP7
000029ca: MSTORE
000029cb: PUSH1 0x09
000029cd: SWAP1
000029ce: SWAP5
000029cf: MSTORE
000029d0: SWAP2
000029d1: DUP5
000029d2: KECCAK256
000029d3: SLOAD
000029d4: PUSH1 0x0b
000029d6: SLOAD
000029d7: SWAP2
000029d8: SWAP5
000029d9: SWAP3
000029da: SWAP1
000029db: SWAP4
000029dc: AND
000029dd: SWAP3
000029de: PUSH2 0x29ed
000029e1: SWAP2
000029e2: DUP6
000029e3: SWAP2
000029e4: DUP6
000029e5: SWAP2
000029e6: PUSH1 0xff
000029e8: AND
000029e9: PUSH2 0x2b3d
000029ec: JUMP
000029ed: JUMPDEST
000029ee: SWAP1
000029ef: POP
000029f0: DUP4
000029f1: PUSH2 0x29fa
000029f4: JUMPI
000029f5: DUP5
000029f6: PUSH2 0x29fc
000029f9: JUMP
000029fa: JUMPDEST
000029fb: DUP1
000029fc: JUMPDEST
000029fd: SWAP5
000029fe: POP
000029ff: DUP5
00002a00: PUSH1 0x00
00002a02: SUB
00002a03: PUSH2 0x2a0d
00002a06: JUMPI
00002a07: POP
00002a08: POP
00002a09: POP
00002a0a: POP
00002a0b: POP
00002a0c: JUMP
00002a0d: JUMPDEST
00002a0e: DUP1
00002a0f: DUP6
00002a10: GT
00002a11: ISZERO
00002a12: PUSH2 0x2a51
00002a15: JUMPI
00002a16: PUSH1 0x40
00002a18: MLOAD
00002a19: PUSH3 0x461bcd
00002a1d: PUSH1 0xe5
00002a1f: SHL
00002a20: DUP2
00002a21: MSTORE
00002a22: PUSH1 0x20
00002a24: PUSH1 0x04
00002a26: DUP3
00002a27: ADD
00002a28: MSTORE
00002a29: PUSH1 0x11
00002a2b: PUSH1 0x24
00002a2d: DUP3
00002a2e: ADD
00002a2f: MSTORE
00002a30: PUSH17 0x4578636565647320617661696c61626c65
00002a42: PUSH1 0x78
00002a44: SHL
00002a45: PUSH1 0x44
00002a47: DUP3
00002a48: ADD
00002a49: MSTORE
00002a4a: PUSH1 0x64
00002a4c: ADD
00002a4d: PUSH2 0x0c1b
00002a50: JUMP
00002a51: JUMPDEST
00002a52: DUP3
00002a53: MLOAD
00002a54: PUSH2 0xffff
00002a57: AND
00002a58: DUP3
00002a59: GT
00002a5a: ISZERO
00002a5b: PUSH2 0x2a7e
00002a5e: JUMPI
00002a5f: CALLER
00002a60: PUSH1 0x00
00002a62: SWAP1
00002a63: DUP2
00002a64: MSTORE
00002a65: PUSH1 0x08
00002a67: PUSH1 0x20
00002a69: MSTORE
00002a6a: PUSH1 0x40
00002a6c: SWAP1
00002a6d: KECCAK256
00002a6e: DUP1
00002a6f: SLOAD
00002a70: PUSH3 0x010000
00002a74: PUSH1 0x01
00002a76: PUSH1 0x78
00002a78: SHL
00002a79: SUB
00002a7a: NOT
00002a7b: AND
00002a7c: SWAP1
00002a7d: SSTORE
00002a7e: JUMPDEST
00002a7f: PUSH2 0x2a87
00002a82: DUP6
00002a83: PUSH2 0x2885
00002a86: JUMP
00002a87: JUMPDEST
00002a88: PUSH2 0x2a91
00002a8b: DUP6
00002a8c: DUP3
00002a8d: PUSH2 0x3395
00002a90: JUMP
00002a91: JUMPDEST
00002a92: CALLER
00002a93: PUSH1 0x00
00002a95: DUP2
00002a96: DUP2
00002a97: MSTORE
00002a98: PUSH1 0x08
00002a9a: PUSH1 0x20
00002a9c: MSTORE
00002a9d: PUSH1 0x40
00002a9f: SWAP1
00002aa0: DUP2
00002aa1: SWAP1
00002aa2: KECCAK256
00002aa3: DUP1
00002aa4: SLOAD
00002aa5: PUSH1 0x01
00002aa7: PUSH1 0x01
00002aa9: PUSH1 0x80
00002aab: SHL
00002aac: SUB
00002aad: SWAP5
00002aae: SWAP1
00002aaf: SWAP5
00002ab0: AND
00002ab1: PUSH1 0x01
00002ab3: PUSH1 0x78
00002ab5: SHL
00002ab6: MUL
00002ab7: PUSH1 0x01
00002ab9: PUSH1 0x78
00002abb: SHL
00002abc: PUSH1 0x01
00002abe: PUSH1 0xf8
00002ac0: SHL
00002ac1: SUB
00002ac2: NOT
00002ac3: SWAP1
00002ac4: SWAP5
00002ac5: AND
00002ac6: SWAP4
00002ac7: SWAP1
00002ac8: SWAP4
00002ac9: OR
00002aca: SWAP1
00002acb: SWAP3
00002acc: SSTORE
00002acd: DUP5
00002ace: MLOAD
00002acf: SWAP2
00002ad0: MLOAD
00002ad1: SWAP1
00002ad2: SWAP2
00002ad3: PUSH32 0xe5b754fb1abb7f01b499791d0b820ae3b6af3424ac1c59768edb53f4ec31a929
00002af4: SWAP2
00002af5: PUSH2 0x2b0a
00002af8: SWAP2
00002af9: DUP10
00002afa: DUP3
00002afb: MSTORE
00002afc: PUSH2 0xffff
00002aff: AND
00002b00: PUSH1 0x20
00002b02: DUP3
00002b03: ADD
00002b04: MSTORE
00002b05: PUSH1 0x40
00002b07: ADD
00002b08: SWAP1
00002b09: JUMP
00002b0a: JUMPDEST
00002b0b: PUSH1 0x40
00002b0d: MLOAD
00002b0e: DUP1
00002b0f: SWAP2
00002b10: SUB
00002b11: SWAP1
00002b12: LOG2
00002b13: PUSH2 0x2b1d
00002b16: ADDRESS
00002b17: CALLER
00002b18: DUP8
00002b19: PUSH2 0x2219
00002b1c: JUMP
00002b1d: JUMPDEST
00002b1e: POP
00002b1f: POP
00002b20: POP
00002b21: POP
00002b22: POP
00002b23: JUMP
00002b24: JUMPDEST
00002b25: PUSH1 0x07
00002b27: DUP1
00002b28: SLOAD
00002b29: PUSH1 0x01
00002b2b: PUSH1 0x01
00002b2d: PUSH1 0xa0
00002b2f: SHL
00002b30: SUB
00002b31: NOT
00002b32: AND
00002b33: SWAP1
00002b34: SSTORE
00002b35: PUSH2 0x0d70
00002b38: DUP2
00002b39: PUSH2 0x2e46
00002b3c: JUMP
00002b3d: JUMPDEST
00002b3e: DUP4
00002b3f: MLOAD
00002b40: PUSH1 0x00
00002b42: SWAP1
00002b43: PUSH2 0xffff
00002b46: AND
00002b47: ISZERO
00002b48: DUP1
00002b49: ISZERO
00002b4a: SWAP1
00002b4b: PUSH2 0x2b58
00002b4e: JUMPI
00002b4f: POP
00002b50: DUP5
00002b51: MLOAD
00002b52: PUSH2 0xffff
00002b55: AND
00002b56: DUP5
00002b57: GT
00002b58: JUMPDEST
00002b59: ISZERO
00002b5a: PUSH2 0x2b9a
00002b5d: JUMPI
00002b5e: PUSH1 0x00
00002b60: PUSH2 0x2b77
00002b63: DUP7
00002b64: PUSH1 0x20
00002b66: ADD
00002b67: MLOAD
00002b68: PUSH1 0x01
00002b6a: PUSH1 0x01
00002b6c: PUSH1 0x68
00002b6e: SHL
00002b6f: SUB
00002b70: AND
00002b71: DUP6
00002b72: DUP6
00002b73: PUSH2 0x2786
00002b76: JUMP
00002b77: JUMPDEST
00002b78: SWAP1
00002b79: POP
00002b7a: DUP1
00002b7b: DUP7
00002b7c: PUSH1 0x40
00002b7e: ADD
00002b7f: MLOAD
00002b80: PUSH1 0x01
00002b82: PUSH1 0x01
00002b84: PUSH1 0x80
00002b86: SHL
00002b87: SUB
00002b88: AND
00002b89: PUSH2 0x2b92
00002b8c: SWAP2
00002b8d: SWAP1
00002b8e: PUSH2 0x33c9
00002b91: JUMP
00002b92: JUMPDEST
00002b93: SWAP2
00002b94: POP
00002b95: POP
00002b96: PUSH2 0x135e
00002b99: JUMP
00002b9a: JUMPDEST
00002b9b: POP
00002b9c: POP
00002b9d: POP
00002b9e: POP
00002b9f: PUSH1 0x40
00002ba1: ADD
00002ba2: MLOAD
00002ba3: PUSH1 0x01
00002ba5: PUSH1 0x01
00002ba7: PUSH1 0x80
00002ba9: SHL
00002baa: SUB
00002bab: AND
00002bac: SWAP1
00002bad: JUMP
00002bae: JUMPDEST
00002baf: PUSH1 0x01
00002bb1: PUSH1 0x01
00002bb3: PUSH1 0xa0
00002bb5: SHL
00002bb6: SUB
00002bb7: DUP3
00002bb8: AND
00002bb9: PUSH2 0x2bd8
00002bbc: JUMPI
00002bbd: PUSH1 0x40
00002bbf: MLOAD
00002bc0: PUSH4 0x4b637e8f
00002bc5: PUSH1 0xe1
00002bc7: SHL
00002bc8: DUP2
00002bc9: MSTORE
00002bca: PUSH1 0x00
00002bcc: PUSH1 0x04
00002bce: DUP3
00002bcf: ADD
00002bd0: MSTORE
00002bd1: PUSH1 0x24
00002bd3: ADD
00002bd4: PUSH2 0x0c1b
00002bd7: JUMP
00002bd8: JUMPDEST
00002bd9: PUSH2 0x0e61
00002bdc: DUP3
00002bdd: PUSH1 0x00
00002bdf: DUP4
00002be0: PUSH2 0x2cb9
00002be3: JUMP
00002be4: JUMPDEST
00002be5: PUSH1 0x01
00002be7: PUSH1 0x01
00002be9: PUSH1 0xa0
00002beb: SHL
00002bec: SUB
00002bed: DUP5
00002bee: AND
00002bef: PUSH2 0x2c0e
00002bf2: JUMPI
00002bf3: PUSH1 0x40
00002bf5: MLOAD
00002bf6: PUSH4 0xe602df05
00002bfb: PUSH1 0xe0
00002bfd: SHL
00002bfe: DUP2
00002bff: MSTORE
00002c00: PUSH1 0x00
00002c02: PUSH1 0x04
00002c04: DUP3
00002c05: ADD
00002c06: MSTORE
00002c07: PUSH1 0x24
00002c09: ADD
00002c0a: PUSH2 0x0c1b
00002c0d: JUMP
00002c0e: JUMPDEST
00002c0f: PUSH1 0x01
00002c11: PUSH1 0x01
00002c13: PUSH1 0xa0
00002c15: SHL
00002c16: SUB
00002c17: DUP4
00002c18: AND
00002c19: PUSH2 0x2c38
00002c1c: JUMPI
00002c1d: PUSH1 0x40
00002c1f: MLOAD
00002c20: PUSH4 0x4a1406b1
00002c25: PUSH1 0xe1
00002c27: SHL
00002c28: DUP2
00002c29: MSTORE
00002c2a: PUSH1 0x00
00002c2c: PUSH1 0x04
00002c2e: DUP3
00002c2f: ADD
00002c30: MSTORE
00002c31: PUSH1 0x24
00002c33: ADD
00002c34: PUSH2 0x0c1b
00002c37: JUMP
00002c38: JUMPDEST
00002c39: PUSH1 0x01
00002c3b: PUSH1 0x01
00002c3d: PUSH1 0xa0
00002c3f: SHL
00002c40: SUB
00002c41: DUP1
00002c42: DUP6
00002c43: AND
00002c44: PUSH1 0x00
00002c46: SWAP1
00002c47: DUP2
00002c48: MSTORE
00002c49: PUSH1 0x02
00002c4b: PUSH1 0x20
00002c4d: SWAP1
00002c4e: DUP2
00002c4f: MSTORE
00002c50: PUSH1 0x40
00002c52: DUP1
00002c53: DUP4
00002c54: KECCAK256
00002c55: SWAP4
00002c56: DUP8
00002c57: AND
00002c58: DUP4
00002c59: MSTORE
00002c5a: SWAP3
00002c5b: SWAP1
00002c5c: MSTORE
00002c5d: KECCAK256
00002c5e: DUP3
00002c5f: SWAP1
00002c60: SSTORE
00002c61: DUP1
00002c62: ISZERO
00002c63: PUSH2 0x2213
00002c66: JUMPI
00002c67: DUP3
00002c68: PUSH1 0x01
00002c6a: PUSH1 0x01
00002c6c: PUSH1 0xa0
00002c6e: SHL
00002c6f: SUB
00002c70: AND
00002c71: DUP5
00002c72: PUSH1 0x01
00002c74: PUSH1 0x01
00002c76: PUSH1 0xa0
00002c78: SHL
00002c79: SUB
00002c7a: AND
00002c7b: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925
00002c9c: DUP5
00002c9d: PUSH1 0x40
00002c9f: MLOAD
00002ca0: PUSH2 0x2cab
00002ca3: SWAP2
00002ca4: DUP2
00002ca5: MSTORE
00002ca6: PUSH1 0x20
00002ca8: ADD
00002ca9: SWAP1
00002caa: JUMP
00002cab: JUMPDEST
00002cac: PUSH1 0x40
00002cae: MLOAD
00002caf: DUP1
00002cb0: SWAP2
00002cb1: SUB
00002cb2: SWAP1
00002cb3: LOG3
00002cb4: POP
00002cb5: POP
00002cb6: POP
00002cb7: POP
00002cb8: JUMP
00002cb9: JUMPDEST
00002cba: PUSH1 0x01
00002cbc: PUSH1 0x01
00002cbe: PUSH1 0xa0
00002cc0: SHL
00002cc1: SUB
00002cc2: DUP4
00002cc3: AND
00002cc4: PUSH2 0x2ce4
00002cc7: JUMPI
00002cc8: DUP1
00002cc9: PUSH1 0x03
00002ccb: PUSH1 0x00
00002ccd: DUP3
00002cce: DUP3
00002ccf: SLOAD
00002cd0: PUSH2 0x2cd9
00002cd3: SWAP2
00002cd4: SWAP1
00002cd5: PUSH2 0x33c9
00002cd8: JUMP
00002cd9: JUMPDEST
00002cda: SWAP1
00002cdb: SWAP2
00002cdc: SSTORE
00002cdd: POP
00002cde: PUSH2 0x2d56
00002ce1: SWAP1
00002ce2: POP
00002ce3: JUMP
00002ce4: JUMPDEST
00002ce5: PUSH1 0x01
00002ce7: PUSH1 0x01
00002ce9: PUSH1 0xa0
00002ceb: SHL
00002cec: SUB
00002ced: DUP4
00002cee: AND
00002cef: PUSH1 0x00
00002cf1: SWAP1
00002cf2: DUP2
00002cf3: MSTORE
00002cf4: PUSH1 0x01
00002cf6: PUSH1 0x20
00002cf8: MSTORE
00002cf9: PUSH1 0x40
00002cfb: SWAP1
00002cfc: KECCAK256
00002cfd: SLOAD
00002cfe: DUP2
00002cff: DUP2
00002d00: LT
00002d01: ISZERO
00002d02: PUSH2 0x2d37
00002d05: JUMPI
00002d06: PUSH1 0x40
00002d08: MLOAD
00002d09: PUSH4 0x391434e3
00002d0e: PUSH1 0xe2
00002d10: SHL
00002d11: DUP2
00002d12: MSTORE
00002d13: PUSH1 0x01
00002d15: PUSH1 0x01
00002d17: PUSH1 0xa0
00002d19: SHL
00002d1a: SUB
00002d1b: DUP6
00002d1c: AND
00002d1d: PUSH1 0x04
00002d1f: DUP3
00002d20: ADD
00002d21: MSTORE
00002d22: PUSH1 0x24
00002d24: DUP2
00002d25: ADD
00002d26: DUP3
00002d27: SWAP1
00002d28: MSTORE
00002d29: PUSH1 0x44
00002d2b: DUP2
00002d2c: ADD
00002d2d: DUP4
00002d2e: SWAP1
00002d2f: MSTORE
00002d30: PUSH1 0x64
00002d32: ADD
00002d33: PUSH2 0x0c1b
00002d36: JUMP
00002d37: JUMPDEST
00002d38: PUSH1 0x01
00002d3a: PUSH1 0x01
00002d3c: PUSH1 0xa0
00002d3e: SHL
00002d3f: SUB
00002d40: DUP5
00002d41: AND
00002d42: PUSH1 0x00
00002d44: SWAP1
00002d45: DUP2
00002d46: MSTORE
00002d47: PUSH1 0x01
00002d49: PUSH1 0x20
00002d4b: MSTORE
00002d4c: PUSH1 0x40
00002d4e: SWAP1
00002d4f: KECCAK256
00002d50: SWAP1
00002d51: DUP3
00002d52: SWAP1
00002d53: SUB
00002d54: SWAP1
00002d55: SSTORE
00002d56: JUMPDEST
00002d57: PUSH1 0x01
00002d59: PUSH1 0x01
00002d5b: PUSH1 0xa0
00002d5d: SHL
00002d5e: SUB
00002d5f: DUP3
00002d60: AND
00002d61: PUSH2 0x2d72
00002d64: JUMPI
00002d65: PUSH1 0x03
00002d67: DUP1
00002d68: SLOAD
00002d69: DUP3
00002d6a: SWAP1
00002d6b: SUB
00002d6c: SWAP1
00002d6d: SSTORE
00002d6e: PUSH2 0x2d91
00002d71: JUMP
00002d72: JUMPDEST
00002d73: PUSH1 0x01
00002d75: PUSH1 0x01
00002d77: PUSH1 0xa0
00002d79: SHL
00002d7a: SUB
00002d7b: DUP3
00002d7c: AND
00002d7d: PUSH1 0x00
00002d7f: SWAP1
00002d80: DUP2
00002d81: MSTORE
00002d82: PUSH1 0x01
00002d84: PUSH1 0x20
00002d86: MSTORE
00002d87: PUSH1 0x40
00002d89: SWAP1
00002d8a: KECCAK256
00002d8b: DUP1
00002d8c: SLOAD
00002d8d: DUP3
00002d8e: ADD
00002d8f: SWAP1
00002d90: SSTORE
00002d91: JUMPDEST
00002d92: DUP2
00002d93: PUSH1 0x01
00002d95: PUSH1 0x01
00002d97: PUSH1 0xa0
00002d99: SHL
00002d9a: SUB
00002d9b: AND
00002d9c: DUP4
00002d9d: PUSH1 0x01
00002d9f: PUSH1 0x01
00002da1: PUSH1 0xa0
00002da3: SHL
00002da4: SUB
00002da5: AND
00002da6: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
00002dc7: DUP4
00002dc8: PUSH1 0x40
00002dca: MLOAD
00002dcb: PUSH2 0x2dd6
00002dce: SWAP2
00002dcf: DUP2
00002dd0: MSTORE
00002dd1: PUSH1 0x20
00002dd3: ADD
00002dd4: SWAP1
00002dd5: JUMP
00002dd6: JUMPDEST
00002dd7: PUSH1 0x40
00002dd9: MLOAD
00002dda: DUP1
00002ddb: SWAP2
00002ddc: SUB
00002ddd: SWAP1
00002dde: LOG3
00002ddf: POP
00002de0: POP
00002de1: POP
00002de2: JUMP
00002de3: JUMPDEST
00002de4: PUSH1 0x00
00002de6: PUSH2 0x2df8
00002de9: PUSH1 0x01
00002deb: PUSH1 0x01
00002ded: PUSH1 0xa0
00002def: SHL
00002df0: SUB
00002df1: DUP5
00002df2: AND
00002df3: DUP4
00002df4: PUSH2 0x2e98
00002df7: JUMP
00002df8: JUMPDEST
00002df9: SWAP1
00002dfa: POP
00002dfb: DUP1
00002dfc: MLOAD
00002dfd: PUSH1 0x00
00002dff: EQ
00002e00: ISZERO
00002e01: DUP1
00002e02: ISZERO
00002e03: PUSH2 0x2e1d
00002e06: JUMPI
00002e07: POP
00002e08: DUP1
00002e09: DUP1
00002e0a: PUSH1 0x20
00002e0c: ADD
00002e0d: SWAP1
00002e0e: MLOAD
00002e0f: DUP2
00002e10: ADD
00002e11: SWAP1
00002e12: PUSH2 0x2e1b
00002e15: SWAP2
00002e16: SWAP1
00002e17: PUSH2 0x355d
00002e1a: JUMP
00002e1b: JUMPDEST
00002e1c: ISZERO
00002e1d: JUMPDEST
00002e1e: ISZERO
00002e1f: PUSH2 0x2196
00002e22: JUMPI
00002e23: PUSH1 0x40
00002e25: MLOAD
00002e26: PUSH4 0x5274afe7
00002e2b: PUSH1 0xe0
00002e2d: SHL
00002e2e: DUP2
00002e2f: MSTORE
00002e30: PUSH1 0x01
00002e32: PUSH1 0x01
00002e34: PUSH1 0xa0
00002e36: SHL
00002e37: SUB
00002e38: DUP5
00002e39: AND
00002e3a: PUSH1 0x04
00002e3c: DUP3
00002e3d: ADD
00002e3e: MSTORE
00002e3f: PUSH1 0x24
00002e41: ADD
00002e42: PUSH2 0x0c1b
00002e45: JUMP
00002e46: JUMPDEST
00002e47: PUSH1 0x06
00002e49: DUP1
00002e4a: SLOAD
00002e4b: PUSH1 0x01
00002e4d: PUSH1 0x01
00002e4f: PUSH1 0xa0
00002e51: SHL
00002e52: SUB
00002e53: DUP4
00002e54: DUP2
00002e55: AND
00002e56: PUSH1 0x01
00002e58: PUSH1 0x01
00002e5a: PUSH1 0xa0
00002e5c: SHL
00002e5d: SUB
00002e5e: NOT
00002e5f: DUP4
00002e60: AND
00002e61: DUP2
00002e62: OR
00002e63: SWAP1
00002e64: SWAP4
00002e65: SSTORE
00002e66: PUSH1 0x40
00002e68: MLOAD
00002e69: SWAP2
00002e6a: AND
00002e6b: SWAP2
00002e6c: SWAP1
00002e6d: DUP3
00002e6e: SWAP1
00002e6f: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
00002e90: SWAP1
00002e91: PUSH1 0x00
00002e93: SWAP1
00002e94: LOG3
00002e95: POP
00002e96: POP
00002e97: JUMP
00002e98: JUMPDEST
00002e99: PUSH1 0x60
00002e9b: PUSH2 0x0bd9
00002e9e: DUP4
00002e9f: DUP4
00002ea0: PUSH1 0x00
00002ea2: DUP5
00002ea3: PUSH1 0x00
00002ea5: DUP1
00002ea6: DUP6
00002ea7: PUSH1 0x01
00002ea9: PUSH1 0x01
00002eab: PUSH1 0xa0
00002ead: SHL
00002eae: SUB
00002eaf: AND
00002eb0: DUP5
00002eb1: DUP7
00002eb2: PUSH1 0x40
00002eb4: MLOAD
00002eb5: PUSH2 0x2ebe
00002eb8: SWAP2
00002eb9: SWAP1
00002eba: PUSH2 0x357a
00002ebd: JUMP
00002ebe: JUMPDEST
00002ebf: PUSH1 0x00
00002ec1: PUSH1 0x40
00002ec3: MLOAD
00002ec4: DUP1
00002ec5: DUP4
00002ec6: SUB
00002ec7: DUP2
00002ec8: DUP6
00002ec9: DUP8
00002eca: GAS
00002ecb: CALL
00002ecc: SWAP3
00002ecd: POP
00002ece: POP
00002ecf: POP
00002ed0: RETURNDATASIZE
00002ed1: DUP1
00002ed2: PUSH1 0x00
00002ed4: DUP2
00002ed5: EQ
00002ed6: PUSH2 0x2efb
00002ed9: JUMPI
00002eda: PUSH1 0x40
00002edc: MLOAD
00002edd: SWAP2
00002ede: POP
00002edf: PUSH1 0x1f
00002ee1: NOT
00002ee2: PUSH1 0x3f
00002ee4: RETURNDATASIZE
00002ee5: ADD
00002ee6: AND
00002ee7: DUP3
00002ee8: ADD
00002ee9: PUSH1 0x40
00002eeb: MSTORE
00002eec: RETURNDATASIZE
00002eed: DUP3
00002eee: MSTORE
00002eef: RETURNDATASIZE
00002ef0: PUSH1 0x00
00002ef2: PUSH1 0x20
00002ef4: DUP5
00002ef5: ADD
00002ef6: RETURNDATACOPY
00002ef7: PUSH2 0x2f00
00002efa: JUMP
00002efb: JUMPDEST
00002efc: PUSH1 0x60
00002efe: SWAP2
00002eff: POP
00002f00: JUMPDEST
00002f01: POP
00002f02: SWAP2
00002f03: POP
00002f04: SWAP2
00002f05: POP
00002f06: PUSH2 0x277c
00002f09: DUP7
00002f0a: DUP4
00002f0b: DUP4
00002f0c: PUSH1 0x60
00002f0e: DUP3
00002f0f: PUSH2 0x2f20
00002f12: JUMPI
00002f13: PUSH2 0x2f1b
00002f16: DUP3
00002f17: PUSH2 0x2f67
00002f1a: JUMP
00002f1b: JUMPDEST
00002f1c: PUSH2 0x0bd9
00002f1f: JUMP
00002f20: JUMPDEST
00002f21: DUP2
00002f22: MLOAD
00002f23: ISZERO
00002f24: DUP1
00002f25: ISZERO
00002f26: PUSH2 0x2f37
00002f29: JUMPI
00002f2a: POP
00002f2b: PUSH1 0x01
00002f2d: PUSH1 0x01
00002f2f: PUSH1 0xa0
00002f31: SHL
00002f32: SUB
00002f33: DUP5
00002f34: AND
00002f35: EXTCODESIZE
00002f36: ISZERO
00002f37: JUMPDEST
00002f38: ISZERO
00002f39: PUSH2 0x2f60
00002f3c: JUMPI
00002f3d: PUSH1 0x40
00002f3f: MLOAD
00002f40: PUSH4 0x9996b315
00002f45: PUSH1 0xe0
00002f47: SHL
00002f48: DUP2
00002f49: MSTORE
00002f4a: PUSH1 0x01
00002f4c: PUSH1 0x01
00002f4e: PUSH1 0xa0
00002f50: SHL
00002f51: SUB
00002f52: DUP6
00002f53: AND
00002f54: PUSH1 0x04
00002f56: DUP3
00002f57: ADD
00002f58: MSTORE
00002f59: PUSH1 0x24
00002f5b: ADD
00002f5c: PUSH2 0x0c1b
00002f5f: JUMP
00002f60: JUMPDEST
00002f61: POP
00002f62: DUP1
00002f63: PUSH2 0x0bd9
00002f66: JUMP
00002f67: JUMPDEST
00002f68: DUP1
00002f69: MLOAD
00002f6a: ISZERO
00002f6b: PUSH2 0x2f77
00002f6e: JUMPI
00002f6f: DUP1
00002f70: MLOAD
00002f71: DUP1
00002f72: DUP3
00002f73: PUSH1 0x20
00002f75: ADD
00002f76: REVERT
00002f77: JUMPDEST
00002f78: PUSH1 0x40
00002f7a: MLOAD
00002f7b: PUSH4 0xd6bda275
00002f80: PUSH1 0xe0
00002f82: SHL
00002f83: DUP2
00002f84: MSTORE
00002f85: PUSH1 0x04
00002f87: ADD
00002f88: PUSH1 0x40
00002f8a: MLOAD
00002f8b: DUP1
00002f8c: SWAP2
00002f8d: SUB
00002f8e: SWAP1
00002f8f: REVERT
00002f90: JUMPDEST
00002f91: PUSH1 0x00
00002f93: JUMPDEST
00002f94: DUP4
00002f95: DUP2
00002f96: LT
00002f97: ISZERO
00002f98: PUSH2 0x2fab
00002f9b: JUMPI
00002f9c: DUP2
00002f9d: DUP2
00002f9e: ADD
00002f9f: MLOAD
00002fa0: DUP4
00002fa1: DUP3
00002fa2: ADD
00002fa3: MSTORE
00002fa4: PUSH1 0x20
00002fa6: ADD
00002fa7: PUSH2 0x2f93
00002faa: JUMP
00002fab: JUMPDEST
00002fac: POP
00002fad: POP
00002fae: PUSH1 0x00
00002fb0: SWAP2
00002fb1: ADD
00002fb2: MSTORE
00002fb3: JUMP
00002fb4: JUMPDEST
00002fb5: PUSH1 0x20
00002fb7: DUP2
00002fb8: MSTORE
00002fb9: PUSH1 0x00
00002fbb: DUP3
00002fbc: MLOAD
00002fbd: DUP1
00002fbe: PUSH1 0x20
00002fc0: DUP5
00002fc1: ADD
00002fc2: MSTORE
00002fc3: PUSH2 0x2fd3
00002fc6: DUP2
00002fc7: PUSH1 0x40
00002fc9: DUP6
00002fca: ADD
00002fcb: PUSH1 0x20
00002fcd: DUP8
00002fce: ADD
00002fcf: PUSH2 0x2f90
00002fd2: JUMP
00002fd3: JUMPDEST
00002fd4: PUSH1 0x1f
00002fd6: ADD
00002fd7: PUSH1 0x1f
00002fd9: NOT
00002fda: AND
00002fdb: SWAP2
00002fdc: SWAP1
00002fdd: SWAP2
00002fde: ADD
00002fdf: PUSH1 0x40
00002fe1: ADD
00002fe2: SWAP3
00002fe3: SWAP2
00002fe4: POP
00002fe5: POP
00002fe6: JUMP
00002fe7: JUMPDEST
00002fe8: DUP1
00002fe9: CALLDATALOAD
00002fea: PUSH1 0x01
00002fec: PUSH1 0x01
00002fee: PUSH1 0xa0
00002ff0: SHL
00002ff1: SUB
00002ff2: DUP2
00002ff3: AND
00002ff4: DUP2
00002ff5: EQ
00002ff6: PUSH2 0x2ffe
00002ff9: JUMPI
00002ffa: PUSH1 0x00
00002ffc: DUP1
00002ffd: REVERT
00002ffe: JUMPDEST
00002fff: SWAP2
00003000: SWAP1
00003001: POP
00003002: JUMP
00003003: JUMPDEST
00003004: PUSH1 0x00
00003006: DUP1
00003007: PUSH1 0x40
00003009: DUP4
0000300a: DUP6
0000300b: SUB
0000300c: SLT
0000300d: ISZERO
0000300e: PUSH2 0x3016
00003011: JUMPI
00003012: PUSH1 0x00
00003014: DUP1
00003015: REVERT
00003016: JUMPDEST
00003017: PUSH2 0x301f
0000301a: DUP4
0000301b: PUSH2 0x2fe7
0000301e: JUMP
0000301f: JUMPDEST
00003020: SWAP5
00003021: PUSH1 0x20
00003023: SWAP4
00003024: SWAP1
00003025: SWAP4
00003026: ADD
00003027: CALLDATALOAD
00003028: SWAP4
00003029: POP
0000302a: POP
0000302b: POP
0000302c: JUMP
0000302d: JUMPDEST
0000302e: PUSH1 0x00
00003030: DUP1
00003031: PUSH1 0x00
00003033: PUSH1 0x60
00003035: DUP5
00003036: DUP7
00003037: SUB
00003038: SLT
00003039: ISZERO
0000303a: PUSH2 0x3042
0000303d: JUMPI
0000303e: PUSH1 0x00
00003040: DUP1
00003041: REVERT
00003042: JUMPDEST
00003043: PUSH2 0x304b
00003046: DUP5
00003047: PUSH2 0x2fe7
0000304a: JUMP
0000304b: JUMPDEST
0000304c: SWAP3
0000304d: POP
0000304e: PUSH2 0x3059
00003051: PUSH1 0x20
00003053: DUP6
00003054: ADD
00003055: PUSH2 0x2fe7
00003058: JUMP
00003059: JUMPDEST
0000305a: SWAP2
0000305b: POP
0000305c: PUSH1 0x40
0000305e: DUP5
0000305f: ADD
00003060: CALLDATALOAD
00003061: SWAP1
00003062: POP
00003063: SWAP3
00003064: POP
00003065: SWAP3
00003066: POP
00003067: SWAP3
00003068: JUMP
00003069: JUMPDEST
0000306a: PUSH1 0x00
0000306c: PUSH1 0x20
0000306e: DUP3
0000306f: DUP5
00003070: SUB
00003071: SLT
00003072: ISZERO
00003073: PUSH2 0x307b
00003076: JUMPI
00003077: PUSH1 0x00
00003079: DUP1
0000307a: REVERT
0000307b: JUMPDEST
0000307c: POP
0000307d: CALLDATALOAD
0000307e: SWAP2
0000307f: SWAP1
00003080: POP
00003081: JUMP
00003082: JUMPDEST
00003083: PUSH4 0x4e487b71
00003088: PUSH1 0xe0
0000308a: SHL
0000308b: PUSH1 0x00
0000308d: MSTORE
0000308e: PUSH1 0x41
00003090: PUSH1 0x04
00003092: MSTORE
00003093: PUSH1 0x24
00003095: PUSH1 0x00
00003097: REVERT
00003098: JUMPDEST
00003099: PUSH1 0x00
0000309b: DUP3
0000309c: PUSH1 0x1f
0000309e: DUP4
0000309f: ADD
000030a0: SLT
000030a1: PUSH2 0x30a9
000030a4: JUMPI
000030a5: PUSH1 0x00
000030a7: DUP1
000030a8: REVERT
000030a9: JUMPDEST
000030aa: DUP2
000030ab: CALLDATALOAD
000030ac: PUSH1 0x20
000030ae: PUSH8 0xffffffffffffffff
000030b7: DUP1
000030b8: DUP4
000030b9: GT
000030ba: ISZERO
000030bb: PUSH2 0x30c6
000030be: JUMPI
000030bf: PUSH2 0x30c6
000030c2: PUSH2 0x3082
000030c5: JUMP
000030c6: JUMPDEST
000030c7: DUP3
000030c8: PUSH1 0x05
000030ca: SHL
000030cb: PUSH1 0x40
000030cd: MLOAD
000030ce: PUSH1 0x1f
000030d0: NOT
000030d1: PUSH1 0x3f
000030d3: DUP4
000030d4: ADD
000030d5: AND
000030d6: DUP2
000030d7: ADD
000030d8: DUP2
000030d9: DUP2
000030da: LT
000030db: DUP5
000030dc: DUP3
000030dd: GT
000030de: OR
000030df: ISZERO
000030e0: PUSH2 0x30eb
000030e3: JUMPI
000030e4: PUSH2 0x30eb
000030e7: PUSH2 0x3082
000030ea: JUMP
000030eb: JUMPDEST
000030ec: PUSH1 0x40
000030ee: MSTORE
000030ef: SWAP4
000030f0: DUP5
000030f1: MSTORE
000030f2: DUP6
000030f3: DUP2
000030f4: ADD
000030f5: DUP4
000030f6: ADD
000030f7: SWAP4
000030f8: DUP4
000030f9: DUP2
000030fa: ADD
000030fb: SWAP3
000030fc: POP
000030fd: DUP8
000030fe: DUP6
000030ff: GT
00003100: ISZERO
00003101: PUSH2 0x3109
00003104: JUMPI
00003105: PUSH1 0x00
00003107: DUP1
00003108: REVERT
00003109: JUMPDEST
0000310a: DUP4
0000310b: DUP8
0000310c: ADD
0000310d: SWAP2
0000310e: POP
0000310f: JUMPDEST
00003110: DUP5
00003111: DUP3
00003112: LT
00003113: ISZERO
00003114: PUSH2 0x3128
00003117: JUMPI
00003118: DUP2
00003119: CALLDATALOAD
0000311a: DUP4
0000311b: MSTORE
0000311c: SWAP2
0000311d: DUP4
0000311e: ADD
0000311f: SWAP2
00003120: SWAP1
00003121: DUP4
00003122: ADD
00003123: SWAP1
00003124: PUSH2 0x310f
00003127: JUMP
00003128: JUMPDEST
00003129: SWAP8
0000312a: SWAP7
0000312b: POP
0000312c: POP
0000312d: POP
0000312e: POP
0000312f: POP
00003130: POP
00003131: POP
00003132: JUMP
00003133: JUMPDEST
00003134: PUSH1 0x00
00003136: DUP1
00003137: PUSH1 0x40
00003139: DUP4
0000313a: DUP6
0000313b: SUB
0000313c: SLT
0000313d: ISZERO
0000313e: PUSH2 0x3146
00003141: JUMPI
00003142: PUSH1 0x00
00003144: DUP1
00003145: REVERT
00003146: JUMPDEST
00003147: DUP3
00003148: CALLDATALOAD
00003149: SWAP2
0000314a: POP
0000314b: PUSH1 0x20
0000314d: DUP4
0000314e: ADD
0000314f: CALLDATALOAD
00003150: PUSH8 0xffffffffffffffff
00003159: DUP2
0000315a: GT
0000315b: ISZERO
0000315c: PUSH2 0x3164
0000315f: JUMPI
00003160: PUSH1 0x00
00003162: DUP1
00003163: REVERT
00003164: JUMPDEST
00003165: PUSH2 0x3170
00003168: DUP6
00003169: DUP3
0000316a: DUP7
0000316b: ADD
0000316c: PUSH2 0x3098
0000316f: JUMP
00003170: JUMPDEST
00003171: SWAP2
00003172: POP
00003173: POP
00003174: SWAP3
00003175: POP
00003176: SWAP3
00003177: SWAP1
00003178: POP
00003179: JUMP
0000317a: JUMPDEST
0000317b: PUSH1 0x00
0000317d: DUP1
0000317e: PUSH1 0x40
00003180: DUP4
00003181: DUP6
00003182: SUB
00003183: SLT
00003184: ISZERO
00003185: PUSH2 0x318d
00003188: JUMPI
00003189: PUSH1 0x00
0000318b: DUP1
0000318c: REVERT
0000318d: JUMPDEST
0000318e: DUP3
0000318f: CALLDATALOAD
00003190: SWAP2
00003191: POP
00003192: PUSH2 0x319d
00003195: PUSH1 0x20
00003197: DUP5
00003198: ADD
00003199: PUSH2 0x2fe7
0000319c: JUMP
0000319d: JUMPDEST
0000319e: SWAP1
0000319f: POP
000031a0: SWAP3
000031a1: POP
000031a2: SWAP3
000031a3: SWAP1
000031a4: POP
000031a5: JUMP
000031a6: JUMPDEST
000031a7: PUSH1 0x00
000031a9: PUSH1 0x20
000031ab: DUP3
000031ac: DUP5
000031ad: SUB
000031ae: SLT
000031af: ISZERO
000031b0: PUSH2 0x31b8
000031b3: JUMPI
000031b4: PUSH1 0x00
000031b6: DUP1
000031b7: REVERT
000031b8: JUMPDEST
000031b9: PUSH2 0x0bd9
000031bc: DUP3
000031bd: PUSH2 0x2fe7
000031c0: JUMP
000031c1: JUMPDEST
000031c2: DUP1
000031c3: ISZERO
000031c4: ISZERO
000031c5: DUP2
000031c6: EQ
000031c7: PUSH2 0x0d70
000031ca: JUMPI
000031cb: PUSH1 0x00
000031cd: DUP1
000031ce: REVERT
000031cf: JUMPDEST
000031d0: PUSH1 0x00
000031d2: PUSH1 0x20
000031d4: DUP3
000031d5: DUP5
000031d6: SUB
000031d7: SLT
000031d8: ISZERO
000031d9: PUSH2 0x31e1
000031dc: JUMPI
000031dd: PUSH1 0x00
000031df: DUP1
000031e0: REVERT
000031e1: JUMPDEST
000031e2: DUP2
000031e3: CALLDATALOAD
000031e4: PUSH2 0x0bd9
000031e7: DUP2
000031e8: PUSH2 0x31c1
000031eb: JUMP
000031ec: JUMPDEST
000031ed: PUSH1 0x00
000031ef: DUP1
000031f0: PUSH1 0x40
000031f2: DUP4
000031f3: DUP6
000031f4: SUB
000031f5: SLT
000031f6: ISZERO
000031f7: PUSH2 0x31ff
000031fa: JUMPI
000031fb: PUSH1 0x00
000031fd: DUP1
000031fe: REVERT
000031ff: JUMPDEST
00003200: PUSH2 0x3208
00003203: DUP4
00003204: PUSH2 0x2fe7
00003207: JUMP
00003208: JUMPDEST
00003209: SWAP2
0000320a: POP
0000320b: PUSH1 0x20
0000320d: DUP4
0000320e: ADD
0000320f: CALLDATALOAD
00003210: PUSH8 0xffffffffffffffff
00003219: DUP2
0000321a: GT
0000321b: ISZERO
0000321c: PUSH2 0x3164
0000321f: JUMPI
00003220: PUSH1 0x00
00003222: DUP1
00003223: REVERT
00003224: JUMPDEST
00003225: PUSH1 0x00
00003227: DUP1
00003228: PUSH1 0x40
0000322a: DUP4
0000322b: DUP6
0000322c: SUB
0000322d: SLT
0000322e: ISZERO
0000322f: PUSH2 0x3237
00003232: JUMPI
00003233: PUSH1 0x00
00003235: DUP1
00003236: REVERT
00003237: JUMPDEST
00003238: PUSH2 0x3240
0000323b: DUP4
0000323c: PUSH2 0x2fe7
0000323f: JUMP
00003240: JUMPDEST
00003241: SWAP2
00003242: POP
00003243: PUSH2 0x319d
00003246: PUSH1 0x20
00003248: DUP5
00003249: ADD
0000324a: PUSH2 0x2fe7
0000324d: JUMP
0000324e: JUMPDEST
0000324f: PUSH1 0x00
00003251: PUSH1 0x20
00003253: DUP3
00003254: DUP5
00003255: SUB
00003256: SLT
00003257: ISZERO
00003258: PUSH2 0x3260
0000325b: JUMPI
0000325c: PUSH1 0x00
0000325e: DUP1
0000325f: REVERT
00003260: JUMPDEST
00003261: DUP2
00003262: CALLDATALOAD
00003263: PUSH8 0xffffffffffffffff
0000326c: DUP2
0000326d: GT
0000326e: ISZERO
0000326f: PUSH2 0x3277
00003272: JUMPI
00003273: PUSH1 0x00
00003275: DUP1
00003276: REVERT
00003277: JUMPDEST
00003278: PUSH2 0x135e
0000327b: DUP5
0000327c: DUP3
0000327d: DUP6
0000327e: ADD
0000327f: PUSH2 0x3098
00003282: JUMP
00003283: JUMPDEST
00003284: PUSH1 0x00
00003286: PUSH1 0x80
00003288: DUP3
00003289: DUP5
0000328a: SUB
0000328b: SLT
0000328c: ISZERO
0000328d: PUSH2 0x3295
00003290: JUMPI
00003291: PUSH1 0x00
00003293: DUP1
00003294: REVERT
00003295: JUMPDEST
00003296: PUSH1 0x40
00003298: MLOAD
00003299: PUSH1 0x80
0000329b: DUP2
0000329c: ADD
0000329d: DUP2
0000329e: DUP2
0000329f: LT
000032a0: PUSH8 0xffffffffffffffff
000032a9: DUP3
000032aa: GT
000032ab: OR
000032ac: ISZERO
000032ad: PUSH2 0x32b8
000032b0: JUMPI
000032b1: PUSH2 0x32b8
000032b4: PUSH2 0x3082
000032b7: JUMP
000032b8: JUMPDEST
000032b9: PUSH1 0x40
000032bb: MSTORE
000032bc: DUP3
000032bd: CALLDATALOAD
000032be: PUSH1 0xff
000032c0: DUP2
000032c1: AND
000032c2: DUP2
000032c3: EQ
000032c4: PUSH2 0x32cc
000032c7: JUMPI
000032c8: PUSH1 0x00
000032ca: DUP1
000032cb: REVERT
000032cc: JUMPDEST
000032cd: DUP2
000032ce: MSTORE
000032cf: PUSH2 0x32da
000032d2: PUSH1 0x20
000032d4: DUP5
000032d5: ADD
000032d6: PUSH2 0x2fe7
000032d9: JUMP
000032da: JUMPDEST
000032db: PUSH1 0x20
000032dd: DUP3
000032de: ADD
000032df: MSTORE
000032e0: PUSH1 0x40
000032e2: DUP4
000032e3: ADD
000032e4: CALLDATALOAD
000032e5: PUSH7 0xffffffffffffff
000032ed: DUP2
000032ee: AND
000032ef: DUP2
000032f0: EQ
000032f1: PUSH2 0x32f9
000032f4: JUMPI
000032f5: PUSH1 0x00
000032f7: DUP1
000032f8: REVERT
000032f9: JUMPDEST
000032fa: PUSH1 0x40
000032fc: DUP3
000032fd: ADD
000032fe: MSTORE
000032ff: PUSH1 0x60
00003301: DUP4
00003302: ADD
00003303: CALLDATALOAD
00003304: PUSH1 0x01
00003306: PUSH1 0x01
00003308: PUSH1 0x68
0000330a: SHL
0000330b: SUB
0000330c: DUP2
0000330d: AND
0000330e: DUP2
0000330f: EQ
00003310: PUSH2 0x3318
00003313: JUMPI
00003314: PUSH1 0x00
00003316: DUP1
00003317: REVERT
00003318: JUMPDEST
00003319: PUSH1 0x60
0000331b: DUP3
0000331c: ADD
0000331d: MSTORE
0000331e: SWAP4
0000331f: SWAP3
00003320: POP
00003321: POP
00003322: POP
00003323: JUMP
00003324: JUMPDEST
00003325: PUSH1 0x01
00003327: DUP2
00003328: DUP2
00003329: SHR
0000332a: SWAP1
0000332b: DUP3
0000332c: AND
0000332d: DUP1
0000332e: PUSH2 0x3338
00003331: JUMPI
00003332: PUSH1 0x7f
00003334: DUP3
00003335: AND
00003336: SWAP2
00003337: POP
00003338: JUMPDEST
00003339: PUSH1 0x20
0000333b: DUP3
0000333c: LT
0000333d: DUP2
0000333e: SUB
0000333f: PUSH2 0x3358
00003342: JUMPI
00003343: PUSH4 0x4e487b71
00003348: PUSH1 0xe0
0000334a: SHL
0000334b: PUSH1 0x00
0000334d: MSTORE
0000334e: PUSH1 0x22
00003350: PUSH1 0x04
00003352: MSTORE
00003353: PUSH1 0x24
00003355: PUSH1 0x00
00003357: REVERT
00003358: JUMPDEST
00003359: POP
0000335a: SWAP2
0000335b: SWAP1
0000335c: POP
0000335d: JUMP
0000335e: JUMPDEST
0000335f: PUSH1 0x20
00003361: DUP1
00003362: DUP3
00003363: MSTORE
00003364: PUSH1 0x07
00003366: SWAP1
00003367: DUP3
00003368: ADD
00003369: MSTORE
0000336a: PUSH7 0x08585b5bdd5b9d
00003372: PUSH1 0xca
00003374: SHL
00003375: PUSH1 0x40
00003377: DUP3
00003378: ADD
00003379: MSTORE
0000337a: PUSH1 0x60
0000337c: ADD
0000337d: SWAP1
0000337e: JUMP
0000337f: JUMPDEST
00003380: PUSH4 0x4e487b71
00003385: PUSH1 0xe0
00003387: SHL
00003388: PUSH1 0x00
0000338a: MSTORE
0000338b: PUSH1 0x11
0000338d: PUSH1 0x04
0000338f: MSTORE
00003390: PUSH1 0x24
00003392: PUSH1 0x00
00003394: REVERT
00003395: JUMPDEST
00003396: DUP2
00003397: DUP2
00003398: SUB
00003399: DUP2
0000339a: DUP2
0000339b: GT
0000339c: ISZERO
0000339d: PUSH2 0x0bb4
000033a0: JUMPI
000033a1: PUSH2 0x0bb4
000033a4: PUSH2 0x337f
000033a7: JUMP
000033a8: JUMPDEST
000033a9: PUSH1 0x20
000033ab: DUP1
000033ac: DUP3
000033ad: MSTORE
000033ae: PUSH1 0x07
000033b0: SWAP1
000033b1: DUP3
000033b2: ADD
000033b3: MSTORE
000033b4: PUSH7 0x217075626c6963
000033bc: PUSH1 0xc8
000033be: SHL
000033bf: PUSH1 0x40
000033c1: DUP3
000033c2: ADD
000033c3: MSTORE
000033c4: PUSH1 0x60
000033c6: ADD
000033c7: SWAP1
000033c8: JUMP
000033c9: JUMPDEST
000033ca: DUP1
000033cb: DUP3
000033cc: ADD
000033cd: DUP1
000033ce: DUP3
000033cf: GT
000033d0: ISZERO
000033d1: PUSH2 0x0bb4
000033d4: JUMPI
000033d5: PUSH2 0x0bb4
000033d8: PUSH2 0x337f
000033db: JUMP
000033dc: JUMPDEST
000033dd: PUSH1 0x00
000033df: PUSH1 0x20
000033e1: DUP3
000033e2: DUP5
000033e3: SUB
000033e4: SLT
000033e5: ISZERO
000033e6: PUSH2 0x33ee
000033e9: JUMPI
000033ea: PUSH1 0x00
000033ec: DUP1
000033ed: REVERT
000033ee: JUMPDEST
000033ef: POP
000033f0: MLOAD
000033f1: SWAP2
000033f2: SWAP1
000033f3: POP
000033f4: JUMP
000033f5: JUMPDEST
000033f6: PUSH1 0x20
000033f8: DUP1
000033f9: DUP3
000033fa: MSTORE
000033fb: PUSH1 0x05
000033fd: SWAP1
000033fe: DUP3
000033ff: ADD
00003400: MSTORE
00003401: PUSH5 0x042ae8aa89
00003407: PUSH1 0xdb
00003409: SHL
0000340a: PUSH1 0x40
0000340c: DUP3
0000340d: ADD
0000340e: MSTORE
0000340f: PUSH1 0x60
00003411: ADD
00003412: SWAP1
00003413: JUMP
00003414: JUMPDEST
00003415: PUSH1 0x20
00003417: DUP1
00003418: DUP3
00003419: MSTORE
0000341a: PUSH1 0x06
0000341c: SWAP1
0000341d: DUP3
0000341e: ADD
0000341f: MSTORE
00003420: PUSH6 0x2176616c7565
00003427: PUSH1 0xd0
00003429: SHL
0000342a: PUSH1 0x40
0000342c: DUP3
0000342d: ADD
0000342e: MSTORE
0000342f: PUSH1 0x60
00003431: ADD
00003432: SWAP1
00003433: JUMP
00003434: JUMPDEST
00003435: PUSH1 0x01
00003437: DUP2
00003438: DUP2
00003439: JUMPDEST
0000343a: DUP1
0000343b: DUP6
0000343c: GT
0000343d: ISZERO
0000343e: PUSH2 0x346f
00003441: JUMPI
00003442: DUP2
00003443: PUSH1 0x00
00003445: NOT
00003446: DIV
00003447: DUP3
00003448: GT
00003449: ISZERO
0000344a: PUSH2 0x3455
0000344d: JUMPI
0000344e: PUSH2 0x3455
00003451: PUSH2 0x337f
00003454: JUMP
00003455: JUMPDEST
00003456: DUP1
00003457: DUP6
00003458: AND
00003459: ISZERO
0000345a: PUSH2 0x3462
0000345d: JUMPI
0000345e: SWAP2
0000345f: DUP2
00003460: MUL
00003461: SWAP2
00003462: JUMPDEST
00003463: SWAP4
00003464: DUP5
00003465: SHR
00003466: SWAP4
00003467: SWAP1
00003468: DUP1
00003469: MUL
0000346a: SWAP1
0000346b: PUSH2 0x3439
0000346e: JUMP
0000346f: JUMPDEST
00003470: POP
00003471: SWAP3
00003472: POP
00003473: SWAP3
00003474: SWAP1
00003475: POP
00003476: JUMP
00003477: JUMPDEST
00003478: PUSH1 0x00
0000347a: DUP3
0000347b: PUSH2 0x3486
0000347e: JUMPI
0000347f: POP
00003480: PUSH1 0x01
00003482: PUSH2 0x0bb4
00003485: JUMP
00003486: JUMPDEST
00003487: DUP2
00003488: PUSH2 0x3493
0000348b: JUMPI
0000348c: POP
0000348d: PUSH1 0x00
0000348f: PUSH2 0x0bb4
00003492: JUMP
00003493: JUMPDEST
00003494: DUP2
00003495: PUSH1 0x01
00003497: DUP2
00003498: EQ
00003499: PUSH2 0x34a9
0000349c: JUMPI
0000349d: PUSH1 0x02
0000349f: DUP2
000034a0: EQ
000034a1: PUSH2 0x34b3
000034a4: JUMPI
000034a5: PUSH2 0x34cf
000034a8: JUMP
000034a9: JUMPDEST
000034aa: PUSH1 0x01
000034ac: SWAP2
000034ad: POP
000034ae: POP
000034af: PUSH2 0x0bb4
000034b2: JUMP
000034b3: JUMPDEST
000034b4: PUSH1 0xff
000034b6: DUP5
000034b7: GT
000034b8: ISZERO
000034b9: PUSH2 0x34c4
000034bc: JUMPI
000034bd: PUSH2 0x34c4
000034c0: PUSH2 0x337f
000034c3: JUMP
000034c4: JUMPDEST
000034c5: POP
000034c6: POP
000034c7: PUSH1 0x01
000034c9: DUP3
000034ca: SHL
000034cb: PUSH2 0x0bb4
000034ce: JUMP
000034cf: JUMPDEST
000034d0: POP
000034d1: PUSH1 0x20
000034d3: DUP4
000034d4: LT
000034d5: PUSH2 0x0133
000034d8: DUP4
000034d9: LT
000034da: AND
000034db: PUSH1 0x4e
000034dd: DUP5
000034de: LT
000034df: PUSH1 0x0b
000034e1: DUP5
000034e2: LT
000034e3: AND
000034e4: OR
000034e5: ISZERO
000034e6: PUSH2 0x34f2
000034e9: JUMPI
000034ea: POP
000034eb: DUP2
000034ec: DUP2
000034ed: EXP
000034ee: PUSH2 0x0bb4
000034f1: JUMP
000034f2: JUMPDEST
000034f3: PUSH2 0x34fc
000034f6: DUP4
000034f7: DUP4
000034f8: PUSH2 0x3434
000034fb: JUMP
000034fc: JUMPDEST
000034fd: DUP1
000034fe: PUSH1 0x00
00003500: NOT
00003501: DIV
00003502: DUP3
00003503: GT
00003504: ISZERO
00003505: PUSH2 0x3510
00003508: JUMPI
00003509: PUSH2 0x3510
0000350c: PUSH2 0x337f
0000350f: JUMP
00003510: JUMPDEST
00003511: MUL
00003512: SWAP4
00003513: SWAP3
00003514: POP
00003515: POP
00003516: POP
00003517: JUMP
00003518: JUMPDEST
00003519: PUSH1 0x00
0000351b: PUSH2 0x0bd9
0000351e: DUP4
0000351f: DUP4
00003520: PUSH2 0x3477
00003523: JUMP
00003524: JUMPDEST
00003525: DUP1
00003526: DUP3
00003527: MUL
00003528: DUP2
00003529: ISZERO
0000352a: DUP3
0000352b: DUP3
0000352c: DIV
0000352d: DUP5
0000352e: EQ
0000352f: OR
00003530: PUSH2 0x0bb4
00003533: JUMPI
00003534: PUSH2 0x0bb4
00003537: PUSH2 0x337f
0000353a: JUMP
0000353b: JUMPDEST
0000353c: PUSH1 0x00
0000353e: DUP3
0000353f: PUSH2 0x3558
00003542: JUMPI
00003543: PUSH4 0x4e487b71
00003548: PUSH1 0xe0
0000354a: SHL
0000354b: PUSH1 0x00
0000354d: MSTORE
0000354e: PUSH1 0x12
00003550: PUSH1 0x04
00003552: MSTORE
00003553: PUSH1 0x24
00003555: PUSH1 0x00
00003557: REVERT
00003558: JUMPDEST
00003559: POP
0000355a: DIV
0000355b: SWAP1
0000355c: JUMP
0000355d: JUMPDEST
0000355e: PUSH1 0x00
00003560: PUSH1 0x20
00003562: DUP3
00003563: DUP5
00003564: SUB
00003565: SLT
00003566: ISZERO
00003567: PUSH2 0x356f
0000356a: JUMPI
0000356b: PUSH1 0x00
0000356d: DUP1
0000356e: REVERT
0000356f: JUMPDEST
00003570: DUP2
00003571: MLOAD
00003572: PUSH2 0x0bd9
00003575: DUP2
00003576: PUSH2 0x31c1
00003579: JUMP
0000357a: JUMPDEST
0000357b: PUSH1 0x00
0000357d: DUP3
0000357e: MLOAD
0000357f: PUSH2 0x358c
00003582: DUP2
00003583: DUP5
00003584: PUSH1 0x20
00003586: DUP8
00003587: ADD
00003588: PUSH2 0x2f90
0000358b: JUMP
0000358c: JUMPDEST
0000358d: SWAP2
0000358e: SWAP1
0000358f: SWAP2
00003590: ADD
00003591: SWAP3
00003592: SWAP2
00003593: POP
00003594: POP
00003595: JUMP
00003596: INVALID
00003597: LOG2
00003598: PUSH5 0x6970667358
0000359e: UNKNOWN(0x22)
0000359f: SLT
000035a0: KECCAK256
000035a1: UNKNOWN(0xBB)
000035a2: UNKNOWN(0x0F)
000035a3: UNKNOWN(0xED)
000035a4: SWAP1
000035a5: UNKNOWN(0x26)
000035a6: UNKNOWN(0xB6)
000035a7: UNKNOWN(0xBA)
000035a8: SWAP15
000035a9: UNKNOWN(0x2C)
000035aa: DUP9
000035ab: PUSH26 0x0c2c79c6ba39a252ef7df3801b972c21dfa52382dd64736f6c63
000035c6: NUMBER
000035c7: STOP
000035c8: ADDMOD
000035c9: EQ
000035ca: STOP
000035cb: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0xca1ee1e11a6d3a28652f04d84cb8bb795a5f261c0972c1c56d2ebc92d2e9e4b9
call_targets: 0xd912325c960f1a6276f1e905d2f7715bd3d5c06d
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xca1ee1e11a6d3a28652f04d84cb8bb795a5f261c0972c1c56d2ebc92d2e9e4b9",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xd912325c960f1a6276f1e905d2f7715bd3d5c06d"
    ],
    "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": "0xf6203e35",
            "selector": "0xf6203e35",
            "calldata_variants": [
                "0xf6203e35",
                "0xf6203e350000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf6326fb3",
            "selector": "0xf6326fb3",
            "calldata_variants": [
                "0xf6326fb3",
                "0xf6326fb30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf656ba51",
            "selector": "0xf656ba51",
            "calldata_variants": [
                "0xf656ba51",
                "0xf656ba510000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf756fa21",
            "selector": "0xf756fa21",
            "calldata_variants": [
                "0xf756fa21",
                "0xf756fa210000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xeae1f265",
            "selector": "0xeae1f265",
            "calldata_variants": [
                "0xeae1f265",
                "0xeae1f2650000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf0b2c7e6",
            "selector": "0xf0b2c7e6",
            "calldata_variants": [
                "0xf0b2c7e6",
                "0xf0b2c7e60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xce7c2ac2",
            "selector": "0xce7c2ac2",
            "calldata_variants": [
                "0xce7c2ac2",
                "0xce7c2ac20000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 6915,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 7852,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 9027,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 5,
    "guards_detected": [],
    "untrusted_call_count": 5
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0xca1ee1e11a6d3a28652f04d84cb8bb795a5f261c0972c1c56d2ebc92d2e9e4b9
call_targets: 0xd912325c960f1a6276f1e905d2f7715bd3d5c06d
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xca1ee1e11a6d3a28652f04d84cb8bb795a5f261c0972c1c56d2ebc92d2e9e4b9",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xd912325c960f1a6276f1e905d2f7715bd3d5c06d"
    ],
    "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": "0xf6203e35",
            "selector": "0xf6203e35",
            "calldata_variants": [
                "0xf6203e35",
                "0xf6203e350000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf6326fb3",
            "selector": "0xf6326fb3",
            "calldata_variants": [
                "0xf6326fb3",
                "0xf6326fb30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf656ba51",
            "selector": "0xf656ba51",
            "calldata_variants": [
                "0xf656ba51",
                "0xf656ba510000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf756fa21",
            "selector": "0xf756fa21",
            "calldata_variants": [
                "0xf756fa21",
                "0xf756fa210000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xeae1f265",
            "selector": "0xeae1f265",
            "calldata_variants": [
                "0xeae1f265",
                "0xeae1f2650000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf0b2c7e6",
            "selector": "0xf0b2c7e6",
            "calldata_variants": [
                "0xf0b2c7e6",
                "0xf0b2c7e60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xce7c2ac2",
            "selector": "0xce7c2ac2",
            "calldata_variants": [
                "0xce7c2ac2",
                "0xce7c2ac20000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 6915,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 7852,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 9027,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 5,
    "guards_detected": []
}
medium oracle codex Unverified keeper-supplied currentBalance drives pricePerShare and locked accounting 75 no
view
evidence_json
{
    "evidence": "rollToNextRound uses the externally supplied currentBalance to compute newPricePerShare, queuedWithdrawAmount, and lockedAmount without on-chain validation.",
    "locations": [
        "contracts/contracts/Vault/TheoDepositVault.sol:429",
        "contracts/contracts/Vault/TheoDepositVault.sol:434",
        "contracts/contracts/Vault/TheoDepositVault.sol:460",
        "contracts/contracts/Vault/TheoDepositVault.sol:466"
    ],
    "recommendation": "Derive currentBalance from on-chain sources (e.g., pull strategy funds or query a trusted strategy contract), or enforce a verified oracle/adapter. Consider governance/timelock on keeper updates and sanity checks against on-chain balances.",
    "exploit_scenario": "A malicious or compromised keeper can call rollToNextRound with an inflated or deflated currentBalance. This skews roundPricePerShare and lockedAmount, leading to incorrect share issuance and withdrawal accounting. Users can be diluted or withdrawals can revert due to insufficient assets while the keeper receives transfers based on the manipulated accounting."
}
low math codex Deposits credit the requested amount before transfer, allowing fee-on-transfer tokens to inflate shares 65 no
view
evidence_json
{
    "evidence": "_depositFor updates accounting based on the input amount before safeTransferFrom executes, so it never checks the actual amount received.",
    "locations": [
        "contracts/contracts/Vault/TheoDepositVault.sol:145",
        "contracts/contracts/Vault/TheoDepositVault.sol:193",
        "contracts/contracts/Vault/TheoDepositVault.sol:219",
        "contracts/contracts/Vault/TheoDepositVault.sol:252"
    ],
    "recommendation": "Measure actual received amount via balance-before/balance-after and use that value for receipts/totalPending, or restrict assets to non-deflationary ERC20s and enforce this in configuration.",
    "exploit_scenario": "If the vault asset is a fee-on-transfer or deflationary ERC20, _depositFor credits the full amount to deposit receipts and totalPending even though fewer tokens are received. An attacker can deposit such tokens to receive more shares than assets actually received and later withdraw a larger share of vault assets, diluting other users."
}