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

Analysis Run

14edca3d-a300-4496-88e8-4affcadd669d

failed
Chain ID
1
Address
Block Number
Created
Mon, Dec 29, 2025 1:31 PM
Review Summary

What survived the funnel

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

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

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
30494 report.consolidate complete 1 / 1 3 months ago
103823 artifact.fetch failed 1 / 3 1 week ago
103824 tool.cast_disasm complete 1 / 3 1 week ago
103825 analysis.bundle complete 1 / 3 1 week ago
103826 capability.graph complete 1 / 3 1 week ago
103827 detector.run complete 1 / 3 1 week ago
103828 validation.fork complete 1 / 3 1 week ago

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
2
No findings?
no
Summary
Identified 2 issues: lock accounting can be corrupted by secretHash reuse, and protocol fees from output-side swaps are not tracked, breaking fee accounting.
View stderr
[codex:1501285] OpenAI Codex v0.77.0 (research preview)
[codex:1501285] --------
[codex:1501285] workdir: /tmp/codex-multi-sivpyi0p
[codex:1501285] model: gpt-5.2-codex
[codex:1501285] provider: openai
[codex:1501285] approval: never
[codex:1501285] sandbox: read-only
[codex:1501285] reasoning effort: xhigh
[codex:1501285] reasoning summaries: auto
[codex:1501285] session id: 019b6a48-8b3b-7c52-b485-214d52f49eae
[codex:1501285] --------
[codex:1501285] user
[codex:1501285] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:1501285] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:1501285] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:1501285] 
[codex:1501285] Scope rules:
[codex:1501285] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:1501285] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:1501285] 
[codex:1501285] Output MUST be valid JSON matching the provided schema.
[codex:1501285] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:1501285] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:1501285] 
[codex:1501285] Output constraints (IMPORTANT):
[codex:1501285] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:1501285] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:1501285] mcp startup: no servers
[codex:1501285] 
[codex:1501285] thinking
[codex:1501285] **Preparing to audit with shell commands**
[codex:1501285] exec
[codex:1501285] /bin/bash -lc ls in /tmp/codex-multi-sivpyi0p succeeded in 5ms:
[codex:1501285] AUDIT_BUNDLE.txt
[codex:1501285] codex-output-schema.json
[codex:1501285] contracts
[codex:1501285] exec
[codex:1501285] /bin/bash -lc 'rg -n "" AUDIT_BUNDLE.txt' in /tmp/codex-multi-sivpyi0p succeeded in 9ms:
[codex:1501285] 1:This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:1501285] 2:
[codex:1501285] 3:================================================================================
[codex:1501285] 4:FILE: contracts/@openzeppelin/contracts/access/IAccessControl.sol
[codex:1501285] 5:================================================================================
[codex:1501285] 6:// SPDX-License-Identifier: MIT
[codex:1501285] 7:// OpenZeppelin Contracts (last updated v5.4.0) (access/IAccessControl.sol)
[codex:1501285] 8:
[codex:1501285] 9:pragma solidity >=0.8.4;
[codex:1501285] 10:
[codex:1501285] 11:/**
[codex:1501285] 12: * @dev External interface of AccessControl declared to support ERC-165 detection.
[codex:1501285] 13: */
[codex:1501285] 14:interface IAccessControl {
[codex:1501285] 15:    /**
[codex:1501285] 16:     * @dev The `account` is missing a role.
[codex:1501285] 17:     */
[codex:1501285] 18:    error AccessControlUnauthorizedAccount(address account, bytes32 neededRole);
[codex:1501285] 19:
[codex:1501285] 20:    /**
[codex:1501285] 
[codex:1501285] thinking
[codex:1501285] **Locating first-party contracts**
[codex:1501285] exec
[codex:1501285] /bin/bash -lc 'rg -n "''^FILE: contracts/contracts" AUDIT_BUNDLE.txt' in /tmp/codex-multi-sivpyi0p succeeded in 6ms:
[codex:1501285] 6874:FILE: contracts/contracts/LiquidityPool.sol
[codex:1501285] 7670:FILE: contracts/contracts/interfaces/IAllowanceTransfer.sol
[codex:1501285] 7856:FILE: contracts/contracts/interfaces/ICrossChainHTLC.sol
[codex:1501285] 7911:FILE: contracts/contracts/interfaces/IEIP712.sol
[codex:1501285] 7924:FILE: contracts/contracts/interfaces/IERC20Permit.sol
[codex:1501285] 7943:FILE: contracts/contracts/interfaces/ILiquidityPool.sol
[codex:1501285] 8087:FILE: contracts/contracts/libraries/SafePermit.sol
[codex:1501285] 
[codex:1501285] thinking
[codex:1501285] **Extracting LiquidityPool.sol for audit**
[codex:1501285] exec
[codex:1501285] /bin/bash -lc 'rg -n "LiquidityPool" AUDIT_BUNDLE.txt' in /tmp/codex-multi-sivpyi0p succeeded in 6ms:
[codex:1501285] 6874:FILE: contracts/contracts/LiquidityPool.sol
[codex:1501285] 6890:import { ILiquidityPool } from "./interfaces/ILiquidityPool.sol";
[codex:1501285] 6897: * @title LiquidityPool
[codex:1501285] 6900:contract LiquidityPool is
[codex:1501285] 6907:    ILiquidityPool
[codex:1501285] 6964:    mapping(address => ILiquidityPool.LiquidityThresholds) public liquidityThresholds; // token => thresholds
[codex:1501285] 7041:        __EIP712_init("LiquidityPool", "1");
[codex:1501285] 7088:        liquidityThresholds[token] = ILiquidityPool.LiquidityThresholds(X, Y, Z);
[codex:1501285] 7621:        ILiquidityPool.LiquidityThresholds memory thresholds = liquidityThresholds[token];
[codex:1501285] 7861:import { ILiquidityPool } from "./ILiquidityPool.sol";
[codex:1501285] 7943:FILE: contracts/contracts/interfaces/ILiquidityPool.sol
[codex:1501285] 7951: * @title ILiquidityPool
[codex:1501285] 7953:interface ILiquidityPool {
[codex:1501285] 
[codex:1501285] thinking
[codex:1501285] **Extracting LiquidityPool contract code**
[codex:1501285] exec
[codex:1501285] /bin/bash -lc "sed -n '6874,7670p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-sivpyi0p succeeded in 6ms:
[codex:1501285] FILE: contracts/contracts/LiquidityPool.sol
[codex:1501285] ================================================================================
[codex:1501285] // SPDX-License-Identifier: UNLICENSED
[codex:1501285] pragma solidity ^0.8.30;
[codex:1501285] 
[codex:1501285] import { Initializable } from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol";
[codex:1501285] import { UUPSUpgradeable } from "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol";
[codex:1501285] import { PausableUpgradeable } from "@openzeppelin/contracts-upgradeable/utils/PausableUpgradeable.sol";
[codex:1501285] import { ReentrancyGuardUpgradeable } from "@openzeppelin/contracts-upgradeable/utils/ReentrancyGuardUpgradeable.sol";
[codex:1501285] import { AccessControlEnumerableUpgradeable } from "@openzeppelin/contracts-upgradeable/access/extensions/AccessControlEnumerableUpgradeable.sol";
[codex:1501285] import { EIP712Upgradeable } from "@openzeppelin/contracts-upgradeable/utils/cryptography/EIP712Upgradeable.sol";
[codex:1501285] import { ECDSA } from "@openzeppelin/contracts/utils/cryptography/ECDSA.sol";
[codex:1501285] import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
[codex:1501285] import { IERC20Metadata } from "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
[codex:1501285] import { SafeERC20 } from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1501285] import { Address } from "@openzeppelin/contracts/utils/Address.sol";
[codex:1501285] import { ILiquidityPool } from "./interfaces/ILiquidityPool.sol";
[codex:1501285] import { ICrossChainHTLC } from "./interfaces/ICrossChainHTLC.sol";
[codex:1501285] import { IAllowanceTransfer } from "./interfaces/IAllowanceTransfer.sol";
[codex:1501285] import { IERC20Permit } from "./interfaces/IERC20Permit.sol";
[codex:1501285] 
[codex:1501285] 
[codex:1501285] 
[codex:1501285] 
[codex:1501285] thinking
[codex:1501285] **Identifying potential LiquidityPool issues**
[codex:1501285] 
[codex:1501285] I've audited the LiquidityPool contract focusing on common vulnerabilities like reentrancy, access control, signatures, and accounting. I found an accounting bug where protocol fees from swap outputs aren't tracked in `collectedFeesByToken`, causing fees to stay in the pool but remain withdrawable as liquidity—which might harm protocol reserves. Also, the `lockedAmount` mapping keyed only by `secretHash` across tokens can cause collisions, leading to stuck funds or cross-token unlocking confusion, posing a low-to-medium risk mostly if privileged routing modules misbehave. Lastly, the signature scheme for `singleChainSwapWithPermit` leaves out swap details like amountIn and tokens from user signatures, meaning the privileged CROSS_CHAIN_MANAGER_ROLE could potentially swap different amounts within existing allowances, which might be problematic depending on trust assumptions.
[codex:1501285] thinking
[codex:1501285] **Assessing signature and permit weaknesses**
[codex:1501285] 
[codex:1501285] I’m examining how missing fields in user signatures and permit validations could let privileged roles alter swap parameters or misapply approvals. The user signatures lack binding for key swap details, relying heavily on maintainer signatures and permit allowances to enforce correctness. Some permit2 checks don’t fully validate token or spender consistency, potentially allowing allowance misuse, though actual transfers still require sufficient allowance, limiting exploitability. There are also concerns about invariant breaks and locked funds due to secretHash collisions in HTLC logic, mostly causing denial-of-service rather than theft. Overall, the system depends on trusted roles and off-chain signatures for security, with some gaps in on-chain signature bindings and allowance validation that I’m unpacking carefully.
[codex:1501285] thinking
[codex:1501285] **Reviewing token transfer and nonce sequencing**
[codex:1501285] 
[codex:1501285] I’m checking if tokens are transferred before signature validation and how nonces are managed across swaps and locks. Transfers happen early but rely on full transaction revert if validations fail, so funds aren’t lost. Nonce updates occur after key validations to prevent replay, and reentrancy guards cover critical external calls. I also note lockedAmount uses secretHash only, letting repeated locks cause accounting mismatches and denial-of-service by reducing available liquidity indefinitely. Some fee tracking inconsistencies exist but don’t allow external exploits. Overall, the design depends on proper role trust and signature sequencing to maintain integrity.
[codex:1501285] thinking
[codex:1501285] **Analyzing role-based risks and accounting anomalies**
[codex:1501285] 
[codex:1501285] I'm focusing on how the privileged routing module could manipulate locks via repeated secretHash reuse to cause funds to become permanently locked or unavailable by inflating totalLockedByToken without corresponding balance increases. Although access control limits this risk, it’s a concerning accounting inconsistency that could lead to denial-of-service. I’m also noting that protocol fees applied on outputs aren’t recorded in collectedFeesByToken, leading to miscounted fees and skewed liquidity calculations. Other checks on chainId and permit data seem incomplete but less critical. Overall, role trust and internal invariants play a big part in security here.
[codex:1501285] exec
[codex:1501285] /bin/bash -lc 'rg -n "lockedAmount" AUDIT_BUNDLE.txt' in /tmp/codex-multi-sivpyi0p succeeded in 7ms:
[codex:1501285] 6965:    mapping(bytes32 => uint256) public lockedAmount; // secretHash => amount
[codex:1501285] 7450:        lockedAmount[secretHash] = amount;
[codex:1501285] 7465:        lockedAmount[secretHash] = amount;
[codex:1501285] 7494:        uint256 locked = lockedAmount[secretHash];
[codex:1501285] 7497:        lockedAmount[secretHash] = locked - amount;
[codex:1501285] 
[codex:1501285] thinking
[codex:1501285] **Confirming line number mapping approach**
[codex:1501285] exec
[codex:1501285] /bin/bash -lc 'rg -n "lockedAmount" contracts/contracts/LiquidityPool.sol' in /tmp/codex-multi-sivpyi0p succeeded in 7ms:
[codex:1501285] 90:    mapping(bytes32 => uint256) public lockedAmount; // secretHash => amount
[codex:1501285] 575:        lockedAmount[secretHash] = amount;
[codex:1501285] 590:        lockedAmount[secretHash] = amount;
[codex:1501285] 619:        uint256 locked = lockedAmount[secretHash];
[codex:1501285] 622:        lockedAmount[secretHash] = locked - amount;
[codex:1501285] 
[codex:1501285] thinking
[codex:1501285] **Checking _applyFee line numbers**
[codex:1501285] exec
[codex:1501285] /bin/bash -lc 'rg -n "_applyFee" -n contracts/contracts/LiquidityPool.sol' in /tmp/codex-multi-sivpyi0p succeeded in 6ms:
[codex:1501285] 597:        uint256 finalAmount = _applyFee(token, amount);
[codex:1501285] 712:        uint256 finalAmountOut = _applyFee(params.tokenOut, amountOut);
[codex:1501285] 764:    function _applyFee(address token, uint256 amount) internal returns (uint256) {
[codex:1501285] 
[codex:1501285] thinking
[codex:1501285] **Inspecting _applyFee method**
[codex:1501285] exec
[codex:1501285] /bin/bash -lc "sed -n '750,790p' contracts/contracts/LiquidityPool.sol" in /tmp/codex-multi-sivpyi0p succeeded in 5ms:
[codex:1501285]             revert InsufficientReserves();
[codex:1501285]         }
[codex:1501285] 
[codex:1501285]         if (available < thresholds.Y) {
[codex:1501285]             if (amount > thresholds.Z) {
[codex:1501285]                 revert InsufficientReserves();
[codex:1501285]             }
[codex:1501285]         } else {
[codex:1501285]             if (remainingAfterOperation < (thresholds.Y - thresholds.Z)) {
[codex:1501285]                 revert InsufficientReserves();
[codex:1501285]             }
[codex:1501285]         }
[codex:1501285]     }
[codex:1501285] 
[codex:1501285]     function _applyFee(address token, uint256 amount) internal returns (uint256) {
[codex:1501285]         if (!feeEnabledByToken[token]) return amount;
[codex:1501285] 
[codex:1501285]         uint256 feeRate = protocolFeeByToken[token];
[codex:1501285]         if (feeRate == 0) return amount;
[codex:1501285] 
[codex:1501285] 
[codex:1501285] thinking
[codex:1501285] **Examining related lockSource and destination code**
[codex:1501285] exec
[codex:1501285] /bin/bash -lc "sed -n '550,640p' contracts/contracts/LiquidityPool.sol" in /tmp/codex-multi-sivpyi0p succeeded in 6ms:
[codex:1501285]         _unlock(secretHash, token, amount);
[codex:1501285]     }
[codex:1501285] 
[codex:1501285]     function transferForRefund(
[codex:1501285]         bytes32 secretHash,
[codex:1501285]         address token,
[codex:1501285]         address to,
[codex:1501285]         uint256 amount
[codex:1501285]     ) external onlyRole(ROUTING_MODULE_ROLE) nonReentrant whenNotPaused {
[codex:1501285]         _transferForRefund(secretHash, token, to, amount);
[codex:1501285]     }
[codex:1501285] 
[codex:1501285]     // ========= Internal =========
[codex:1501285]     function _validateAndUpdateNonce(address user, uint256 nonce) internal {
[codex:1501285]         if (nonce != lastNonce[user] + 1) revert InvalidNonce();
[codex:1501285]         lastNonce[user] = nonce;
[codex:1501285]     }
[codex:1501285] 
[codex:1501285]     function _lockSource(
[codex:1501285]         bytes32 secretHash,
[codex:1501285] 
[codex:1501285] thinking
[codex:1501285] **Summarizing audit findings**
[codex:1501285] 
[codex:1501285] I’m gathering two main issues: first, secretHash collisions in lockedAmount mapping that can freeze funds and cause DoS by overwriting locks; second, missing protocol fee accounting in _applyFee that leaves fees untracked and withdrawFees ineffective. I’ll detail categories, severity, exploit scenarios, recommendations, and reference related code lines for clarity.
[codex:1501285] exec
[codex:1501285] /bin/bash -lc 'rg -n "collectedFeesByToken" contracts/contracts/LiquidityPool.sol' in /tmp/codex-multi-sivpyi0p succeeded in 6ms:
[codex:1501285] 95:    mapping(address => uint256) public collectedFeesByToken; // token => collected fees
[codex:1501285] 263:            uint256 withdrawAmount = collectedFeesByToken[token];
[codex:1501285] 266:                collectedFeesByToken[token] = 0;
[codex:1501285] 288:            fees[i] = collectedFeesByToken[tokens[i]];
[codex:1501285] 296:        uint256 fees = collectedFeesByToken[token];
[codex:1501285] 338:        collectedFeesByToken[params.base.tokenIn] += params.permit.fee;
[codex:1501285] 373:        collectedFeesByToken[params.base.tokenIn] += params.permit2.fee;
[codex:1501285] 402:        collectedFeesByToken[base.tokenIn] += signatureData.fee;
[codex:1501285] 450:        collectedFeesByToken[base.token] += permitData.fee;
[codex:1501285] 488:        collectedFeesByToken[base.token] += permit2Data.fee;
[codex:1501285] 522:        collectedFeesByToken[base.token] += signatureData.fee;
[codex:1501285] 
[codex:1501285] thinking
[codex:1501285] **Summarizing security findings and crafting JSON report**
[codex:1501285] 
[codex:1501285] I’m compiling two main issues from the audit: one about secretHash collisions causing lock accounting problems and possible denial-of-service, and another about protocol fee accounting mismatches where fees aren’t properly tracked. I’ll include severity levels, categories, evidence with line numbers, exploit scenarios, and recommendations, all formatted neatly into the required JSON structure. This will make the findings clear and actionable.
[codex:1501285] codex
[codex:1501285] {"no_findings":false,"summary":"Identified 2 issues: lock accounting can be corrupted by secretHash reuse, and protocol fees from output-side swaps are not tracked, breaking fee accounting.","findings":[{"severity":"medium","category":"other","title":"Locks keyed only by secretHash allow overwrites that strand funds and corrupt liquidity accounting","exploit_scenario":"A user (via the routing module) triggers two locks that reuse the same secretHash with different amounts or tokens. The second call overwrites `lockedAmount[secretHash]` while `totalLockedByToken` is incremented again. The original lock can never be unlocked (amount mismatch), and available liquidity becomes permanently reduced or even causes availability checks to revert, freezing swaps/withdrawals for that token.","recommendation":"Key locks by `(secretHash, token)` or store a struct with token/amount and enforce uniqueness (require no existing lock before setting). Consider tracking `untilTs` and validating that a lock is not overwritten. Update `_processUnlock` to verify the stored token/amount pair to prevent mismatches.","evidence":"`lockedAmount` is a single mapping keyed only by `secretHash`, and both `_lockSource` and `_lockDestination` overwrite it without checking for existing locks; `_processUnlock` only checks the amount against `lockedAmount[secretHash]` and decrements `totalLockedByToken[token]`.","locations":["contracts/contracts/LiquidityPool.sol:90","contracts/contracts/LiquidityPool.sol:575","contracts/contracts/LiquidityPool.sol:590","contracts/contracts/LiquidityPool.sol:619"]},{"severity":"low","category":"other","title":"Protocol fees deducted in `_applyFee` are not accounted in `collectedFeesByToken`","exploit_scenario":"When a swap pays protocol fees via `_applyFee`, the fee is subtracted from the user output but never recorded in `collectedFeesByToken`. Those fees remain part of available liquidity and cannot be withdrawn via `withdrawFees`, leading to protocol revenue loss or unintended reuse of fee balances as liquidity.","recommendation":"Increment `collectedFeesByToken[token]` by `protocolFee` inside `_applyFee`, and ensure `_getAvailableLiquidity` consistently excludes those fees. If fees are intended to remain in liquidity, remove or rework fee accounting to avoid misleading events/withdrawals.","evidence":"`_applyFee` computes and emits `ProtocolFeeCollected` but never updates `collectedFeesByToken`, while `withdrawFees` relies on that mapping.","locations":["contracts/contracts/LiquidityPool.sol:95","contracts/contracts/LiquidityPool.sol:764"]}]}
[codex:1501285] tokens used
[codex:1501285] 47,211
[codex:1501285] {"no_findings":false,"summary":"Identified 2 issues: lock accounting can be corrupted by secretHash reuse, and protocol fees from output-side swaps are not tracked, breaking fee accounting.","findings":[{"severity":"medium","category":"other","title":"Locks keyed only by secretHash allow overwrites that strand funds and corrupt liquidity accounting","exploit_scenario":"A user (via the routing module) triggers two locks that reuse the same secretHash with different amounts or tokens. The second call overwrites `lockedAmount[secretHash]` while `totalLockedByToken` is incremented again. The original lock can never be unlocked (amount mismatch), and available liquidity becomes permanently reduced or even causes availability checks to revert, freezing swaps/withdrawals for that token.","recommendation":"Key locks by `(secretHash, token)` or store a struct with token/amount and enforce uniqueness (require no existing lock before setting). Consider tracking `untilTs` and validating that a lock is not overwritten. Update `_processUnlock` to verify the stored token/amount pair to prevent mismatches.","evidence":"`lockedAmount` is a single mapping keyed only by `secretHash`, and both `_lockSource` and `_lockDestination` overwrite it without checking for existing locks; `_processUnlock` only checks the amount against `lockedAmount[secretHash]` and decrements `totalLockedByToken[token]`.","locations":["contracts/contracts/LiquidityPool.sol:90","contracts/contracts/LiquidityPool.sol:575","contracts/contracts/LiquidityPool.sol:590","contracts/contracts/LiquidityPool.sol:619"]},{"severity":"low","category":"other","title":"Protocol fees deducted in `_applyFee` are not accounted in `collectedFeesByToken`","exploit_scenario":"When a swap pays protocol fees via `_applyFee`, the fee is subtracted from the user output but never recorded in `collectedFeesByToken`. Those fees remain part of available liquidity and cannot be withdrawn via `withdrawFees`, leading to protocol revenue loss or unintended reuse of fee balances as liquidity.","recommendation":"Increment `collectedFeesByToken[token]` by `protocolFee` inside `_applyFee`, and ensure `_getAvailableLiquidity` consistently excludes those fees. If fees are intended to remain in liquidity, remove or rework fee accounting to avoid misleading events/withdrawals.","evidence":"`_applyFee` computes and emits `ProtocolFeeCollected` but never updates `collectedFeesByToken`, while `withdrawFees` relies on that mapping.","locations":["contracts/contracts/LiquidityPool.sol:95","contracts/contracts/LiquidityPool.sol:764"]}]}
Metadata
{
    "codex": {
        "ran_at": "2025-12-29T13:31:49.540907+00:00",
        "returncode": 0
    },
    "summary": "Identified 2 issues: lock accounting can be corrupted by secretHash reuse, and protocol fees from output-side swaps are not tracked, breaking fee accounting.",
    "raw_final": {
        "summary": "Identified 2 issues: lock accounting can be corrupted by secretHash reuse, and protocol fees from output-side swaps are not tracked, breaking fee accounting.",
        "findings": [
            {
                "title": "Locks keyed only by secretHash allow overwrites that strand funds and corrupt liquidity accounting",
                "category": "other",
                "evidence": "`lockedAmount` is a single mapping keyed only by `secretHash`, and both `_lockSource` and `_lockDestination` overwrite it without checking for existing locks; `_processUnlock` only checks the amount against `lockedAmount[secretHash]` and decrements `totalLockedByToken[token]`.",
                "severity": "medium",
                "locations": [
                    "contracts/contracts/LiquidityPool.sol:90",
                    "contracts/contracts/LiquidityPool.sol:575",
                    "contracts/contracts/LiquidityPool.sol:590",
                    "contracts/contracts/LiquidityPool.sol:619"
                ],
                "recommendation": "Key locks by `(secretHash, token)` or store a struct with token/amount and enforce uniqueness (require no existing lock before setting). Consider tracking `untilTs` and validating that a lock is not overwritten. Update `_processUnlock` to verify the stored token/amount pair to prevent mismatches.",
                "exploit_scenario": "A user (via the routing module) triggers two locks that reuse the same secretHash with different amounts or tokens. The second call overwrites `lockedAmount[secretHash]` while `totalLockedByToken` is incremented again. The original lock can never be unlocked (amount mismatch), and available liquidity becomes permanently reduced or even causes availability checks to revert, freezing swaps/withdrawals for that token."
            },
            {
                "title": "Protocol fees deducted in `_applyFee` are not accounted in `collectedFeesByToken`",
                "category": "other",
                "evidence": "`_applyFee` computes and emits `ProtocolFeeCollected` but never updates `collectedFeesByToken`, while `withdrawFees` relies on that mapping.",
                "severity": "low",
                "locations": [
                    "contracts/contracts/LiquidityPool.sol:95",
                    "contracts/contracts/LiquidityPool.sol:764"
                ],
                "recommendation": "Increment `collectedFeesByToken[token]` by `protocolFee` inside `_applyFee`, and ensure `_getAvailableLiquidity` consistently excludes those fees. If fees are intended to remain in liquidity, remove or rework fee accounting to avoid misleading events/withdrawals.",
                "exploit_scenario": "When a swap pays protocol fees via `_applyFee`, the fee is subtracted from the user output but never recorded in `collectedFeesByToken`. Those fees remain part of available liquidity and cannot be withdrawn via `withdrawFees`, leading to protocol revenue loss or unintended reuse of fee balances as liquidity."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
1
Selfdestruct
1
CREATE2
0
CALL-family (heavy)
23
EXT*/BALANCE
12
Total opcodes
15839
Flags
delegatecall_present selfdestruct_present heavy_ext_balance_usage call_family_heavy
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x0381
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x84b0196e
00000019: GT
0000001a: PUSH2 0x01d1
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0xcd20c6e8
00000024: GT
00000025: PUSH2 0x0102
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xe4e9a36d
0000002f: GT
00000030: PUSH2 0x00a0
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xf38eca0e
0000003a: GT
0000003b: PUSH2 0x006f
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xf38eca0e
00000045: EQ
00000046: PUSH2 0x0b32
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0xf72c0d8b
00000050: EQ
00000051: PUSH2 0x0b54
00000054: JUMPI
00000055: DUP1
00000056: PUSH4 0xf7e7aab0
0000005b: EQ
0000005c: PUSH2 0x0b88
0000005f: JUMPI
00000060: DUP1
00000061: PUSH4 0xfd685dee
00000066: EQ
00000067: PUSH2 0x0ba8
0000006a: JUMPI
0000006b: PUSH1 0x00
0000006d: DUP1
0000006e: REVERT
0000006f: JUMPDEST
00000070: DUP1
00000071: PUSH4 0xe4e9a36d
00000076: EQ
00000077: PUSH2 0x0a5a
0000007a: JUMPI
0000007b: DUP1
0000007c: PUSH4 0xe63ab1e9
00000081: EQ
00000082: PUSH2 0x0a7a
00000085: JUMPI
00000086: DUP1
00000087: PUSH4 0xea0d501f
0000008c: EQ
0000008d: PUSH2 0x0aae
00000090: JUMPI
00000091: DUP1
00000092: PUSH4 0xf03592cf
00000097: EQ
00000098: PUSH2 0x0b05
0000009b: JUMPI
0000009c: PUSH1 0x00
0000009e: DUP1
0000009f: REVERT
000000a0: JUMPDEST
000000a1: DUP1
000000a2: PUSH4 0xd73792a9
000000a7: GT
000000a8: PUSH2 0x00dc
000000ab: JUMPI
000000ac: DUP1
000000ad: PUSH4 0xd73792a9
000000b2: EQ
000000b3: PUSH2 0x09d6
000000b6: JUMPI
000000b7: DUP1
000000b8: PUSH4 0xd87a81f8
000000bd: EQ
000000be: PUSH2 0x09ed
000000c1: JUMPI
000000c2: DUP1
000000c3: PUSH4 0xd9f799ff
000000c8: EQ
000000c9: PUSH2 0x0a0d
000000cc: JUMPI
000000cd: DUP1
000000ce: PUSH4 0xe17a389b
000000d3: EQ
000000d4: PUSH2 0x0a3a
000000d7: JUMPI
000000d8: PUSH1 0x00
000000da: DUP1
000000db: REVERT
000000dc: JUMPDEST
000000dd: DUP1
000000de: PUSH4 0xcd20c6e8
000000e3: EQ
000000e4: PUSH2 0x0969
000000e7: JUMPI
000000e8: DUP1
000000e9: PUSH4 0xcf541282
000000ee: EQ
000000ef: PUSH2 0x0996
000000f2: JUMPI
000000f3: DUP1
000000f4: PUSH4 0xd547741f
000000f9: EQ
000000fa: PUSH2 0x09b6
000000fd: JUMPI
000000fe: PUSH1 0x00
00000100: DUP1
00000101: REVERT
00000102: JUMPDEST
00000103: DUP1
00000104: PUSH4 0xa3246ad3
00000109: GT
0000010a: PUSH2 0x016f
0000010d: JUMPI
0000010e: DUP1
0000010f: PUSH4 0xad3cb1cc
00000114: GT
00000115: PUSH2 0x0149
00000118: JUMPI
00000119: DUP1
0000011a: PUSH4 0xad3cb1cc
0000011f: EQ
00000120: PUSH2 0x08c7
00000123: JUMPI
00000124: DUP1
00000125: PUSH4 0xb8ca3b83
0000012a: EQ
0000012b: PUSH2 0x0905
0000012e: JUMPI
0000012f: DUP1
00000130: PUSH4 0xc0fd43b4
00000135: EQ
00000136: PUSH2 0x091c
00000139: JUMPI
0000013a: DUP1
0000013b: PUSH4 0xca15c873
00000140: EQ
00000141: PUSH2 0x0949
00000144: JUMPI
00000145: PUSH1 0x00
00000147: DUP1
00000148: REVERT
00000149: JUMPDEST
0000014a: DUP1
0000014b: PUSH4 0xa3246ad3
00000150: EQ
00000151: PUSH2 0x085a
00000154: JUMPI
00000155: DUP1
00000156: PUSH4 0xa9874c5b
0000015b: EQ
0000015c: PUSH2 0x0887
0000015f: JUMPI
00000160: DUP1
00000161: PUSH4 0xaa03985b
00000166: EQ
00000167: PUSH2 0x08a7
0000016a: JUMPI
0000016b: PUSH1 0x00
0000016d: DUP1
0000016e: REVERT
0000016f: JUMPDEST
00000170: DUP1
00000171: PUSH4 0x91d14854
00000176: GT
00000177: PUSH2 0x01ab
0000017a: JUMPI
0000017b: DUP1
0000017c: PUSH4 0x91d14854
00000181: EQ
00000182: PUSH2 0x07e5
00000185: JUMPI
00000186: DUP1
00000187: PUSH4 0x9850d32b
0000018c: EQ
0000018d: PUSH2 0x0805
00000190: JUMPI
00000191: DUP1
00000192: PUSH4 0x98f37a5c
00000197: EQ
00000198: PUSH2 0x0825
0000019b: JUMPI
0000019c: DUP1
0000019d: PUSH4 0xa217fddf
000001a2: EQ
000001a3: PUSH2 0x0845
000001a6: JUMPI
000001a7: PUSH1 0x00
000001a9: DUP1
000001aa: REVERT
000001ab: JUMPDEST
000001ac: DUP1
000001ad: PUSH4 0x84b0196e
000001b2: EQ
000001b3: PUSH2 0x075b
000001b6: JUMPI
000001b7: DUP1
000001b8: PUSH4 0x8ee573ac
000001bd: EQ
000001be: PUSH2 0x0783
000001c1: JUMPI
000001c2: DUP1
000001c3: PUSH4 0x9010d07c
000001c8: EQ
000001c9: PUSH2 0x07c5
000001cc: JUMPI
000001cd: PUSH1 0x00
000001cf: DUP1
000001d0: REVERT
000001d1: JUMPDEST
000001d2: DUP1
000001d3: PUSH4 0x3578077a
000001d8: GT
000001d9: PUSH2 0x02b6
000001dc: JUMPI
000001dd: DUP1
000001de: PUSH4 0x4f1ef286
000001e3: GT
000001e4: PUSH2 0x0254
000001e7: JUMPI
000001e8: DUP1
000001e9: PUSH4 0x5c975abb
000001ee: GT
000001ef: PUSH2 0x0223
000001f2: JUMPI
000001f3: DUP1
000001f4: PUSH4 0x5c975abb
000001f9: EQ
000001fa: PUSH2 0x06e1
000001fd: JUMPI
000001fe: DUP1
000001ff: PUSH4 0x6dea30e7
00000204: EQ
00000205: PUSH2 0x0706
00000208: JUMPI
00000209: DUP1
0000020a: PUSH4 0x775343a1
0000020f: EQ
00000210: PUSH2 0x0726
00000213: JUMPI
00000214: DUP1
00000215: PUSH4 0x8456cb59
0000021a: EQ
0000021b: PUSH2 0x0746
0000021e: JUMPI
0000021f: PUSH1 0x00
00000221: DUP1
00000222: REVERT
00000223: JUMPDEST
00000224: DUP1
00000225: PUSH4 0x4f1ef286
0000022a: EQ
0000022b: PUSH2 0x066a
0000022e: JUMPI
0000022f: DUP1
00000230: PUSH4 0x52d1902d
00000235: EQ
00000236: PUSH2 0x067d
00000239: JUMPI
0000023a: DUP1
0000023b: PUSH4 0x56d73568
00000240: EQ
00000241: PUSH2 0x0692
00000244: JUMPI
00000245: DUP1
00000246: PUSH4 0x576d4fef
0000024b: EQ
0000024c: PUSH2 0x06b4
0000024f: JUMPI
00000250: PUSH1 0x00
00000252: DUP1
00000253: REVERT
00000254: JUMPDEST
00000255: DUP1
00000256: PUSH4 0x3af32abf
0000025b: GT
0000025c: PUSH2 0x0290
0000025f: JUMPI
00000260: DUP1
00000261: PUSH4 0x3af32abf
00000266: EQ
00000267: PUSH2 0x05e5
0000026a: JUMPI
0000026b: DUP1
0000026c: PUSH4 0x3e99c1e4
00000271: EQ
00000272: PUSH2 0x0615
00000275: JUMPI
00000276: DUP1
00000277: PUSH4 0x3f4ba83a
0000027c: EQ
0000027d: PUSH2 0x0635
00000280: JUMPI
00000281: DUP1
00000282: PUSH4 0x49af973a
00000287: EQ
00000288: PUSH2 0x064a
0000028b: JUMPI
0000028c: PUSH1 0x00
0000028e: DUP1
0000028f: REVERT
00000290: JUMPDEST
00000291: DUP1
00000292: PUSH4 0x3578077a
00000297: EQ
00000298: PUSH2 0x0592
0000029b: JUMPI
0000029c: DUP1
0000029d: PUSH4 0x36568abe
000002a2: EQ
000002a3: PUSH2 0x05a5
000002a6: JUMPI
000002a7: DUP1
000002a8: PUSH4 0x39b41b4a
000002ad: EQ
000002ae: PUSH2 0x05c5
000002b1: JUMPI
000002b2: PUSH1 0x00
000002b4: DUP1
000002b5: REVERT
000002b6: JUMPDEST
000002b7: DUP1
000002b8: PUSH4 0x1a299d68
000002bd: GT
000002be: PUSH2 0x0323
000002c1: JUMPI
000002c2: DUP1
000002c3: PUSH4 0x266e2bd8
000002c8: GT
000002c9: PUSH2 0x02fd
000002cc: JUMPI
000002cd: DUP1
000002ce: PUSH4 0x266e2bd8
000002d3: EQ
000002d4: PUSH2 0x0510
000002d7: JUMPI
000002d8: DUP1
000002d9: PUSH4 0x2f2ff15d
000002de: EQ
000002df: PUSH2 0x0530
000002e2: JUMPI
000002e3: DUP1
000002e4: PUSH4 0x30110b30
000002e9: EQ
000002ea: PUSH2 0x0550
000002ed: JUMPI
000002ee: DUP1
000002ef: PUSH4 0x3202e4ed
000002f4: EQ
000002f5: PUSH2 0x0570
000002f8: JUMPI
000002f9: PUSH1 0x00
000002fb: DUP1
000002fc: REVERT
000002fd: JUMPDEST
000002fe: DUP1
000002ff: PUSH4 0x1a299d68
00000304: EQ
00000305: PUSH2 0x04b0
00000308: JUMPI
00000309: DUP1
0000030a: PUSH4 0x24863034
0000030f: EQ
00000310: PUSH2 0x04d0
00000313: JUMPI
00000314: DUP1
00000315: PUSH4 0x248a9ca3
0000031a: EQ
0000031b: PUSH2 0x04f0
0000031e: JUMPI
0000031f: PUSH1 0x00
00000321: DUP1
00000322: REVERT
00000323: JUMPDEST
00000324: DUP1
00000325: PUSH4 0x12261ee7
0000032a: GT
0000032b: PUSH2 0x035f
0000032e: JUMPI
0000032f: DUP1
00000330: PUSH4 0x12261ee7
00000335: EQ
00000336: PUSH2 0x03fd
00000339: JUMPI
0000033a: DUP1
0000033b: PUSH4 0x13ea5d29
00000340: EQ
00000341: PUSH2 0x0435
00000344: JUMPI
00000345: DUP1
00000346: PUSH4 0x1459457a
0000034b: EQ
0000034c: PUSH2 0x0455
0000034f: JUMPI
00000350: DUP1
00000351: PUSH4 0x172a16a4
00000356: EQ
00000357: PUSH2 0x0475
0000035a: JUMPI
0000035b: PUSH1 0x00
0000035d: DUP1
0000035e: REVERT
0000035f: JUMPDEST
00000360: DUP1
00000361: PUSH4 0x01ffc9a7
00000366: EQ
00000367: PUSH2 0x0386
0000036a: JUMPI
0000036b: DUP1
0000036c: PUSH4 0x06d47de9
00000371: EQ
00000372: PUSH2 0x03bb
00000375: JUMPI
00000376: DUP1
00000377: PUSH4 0x07b18bde
0000037c: EQ
0000037d: PUSH2 0x03dd
00000380: JUMPI
00000381: JUMPDEST
00000382: PUSH1 0x00
00000384: DUP1
00000385: REVERT
00000386: JUMPDEST
00000387: CALLVALUE
00000388: DUP1
00000389: ISZERO
0000038a: PUSH2 0x0392
0000038d: JUMPI
0000038e: PUSH1 0x00
00000390: DUP1
00000391: REVERT
00000392: JUMPDEST
00000393: POP
00000394: PUSH2 0x03a6
00000397: PUSH2 0x03a1
0000039a: CALLDATASIZE
0000039b: PUSH1 0x04
0000039d: PUSH2 0x4dbc
000003a0: JUMP
000003a1: JUMPDEST
000003a2: PUSH2 0x0bd8
000003a5: JUMP
000003a6: JUMPDEST
000003a7: PUSH1 0x40
000003a9: MLOAD
000003aa: SWAP1
000003ab: ISZERO
000003ac: ISZERO
000003ad: DUP2
000003ae: MSTORE
000003af: PUSH1 0x20
000003b1: ADD
000003b2: JUMPDEST
000003b3: PUSH1 0x40
000003b5: MLOAD
000003b6: DUP1
000003b7: SWAP2
000003b8: SUB
000003b9: SWAP1
000003ba: RETURN
000003bb: JUMPDEST
000003bc: CALLVALUE
000003bd: DUP1
000003be: ISZERO
000003bf: PUSH2 0x03c7
000003c2: JUMPI
000003c3: PUSH1 0x00
000003c5: DUP1
000003c6: REVERT
000003c7: JUMPDEST
000003c8: POP
000003c9: PUSH2 0x03db
000003cc: PUSH2 0x03d6
000003cf: CALLDATASIZE
000003d0: PUSH1 0x04
000003d2: PUSH2 0x4e0b
000003d5: JUMP
000003d6: JUMPDEST
000003d7: PUSH2 0x0c03
000003da: JUMP
000003db: JUMPDEST
000003dc: STOP
000003dd: JUMPDEST
000003de: CALLVALUE
000003df: DUP1
000003e0: ISZERO
000003e1: PUSH2 0x03e9
000003e4: JUMPI
000003e5: PUSH1 0x00
000003e7: DUP1
000003e8: REVERT
000003e9: JUMPDEST
000003ea: POP
000003eb: PUSH2 0x03db
000003ee: PUSH2 0x03f8
000003f1: CALLDATASIZE
000003f2: PUSH1 0x04
000003f4: PUSH2 0x4e0b
000003f7: JUMP
000003f8: JUMPDEST
000003f9: PUSH2 0x0cb3
000003fc: JUMP
000003fd: JUMPDEST
000003fe: CALLVALUE
000003ff: DUP1
00000400: ISZERO
00000401: PUSH2 0x0409
00000404: JUMPI
00000405: PUSH1 0x00
00000407: DUP1
00000408: REVERT
00000409: JUMPDEST
0000040a: POP
0000040b: PUSH1 0x00
0000040d: SLOAD
0000040e: PUSH2 0x041d
00000411: SWAP1
00000412: PUSH1 0x01
00000414: PUSH1 0x01
00000416: PUSH1 0xa0
00000418: SHL
00000419: SUB
0000041a: AND
0000041b: DUP2
0000041c: JUMP
0000041d: JUMPDEST
0000041e: PUSH1 0x40
00000420: MLOAD
00000421: PUSH1 0x01
00000423: PUSH1 0x01
00000425: PUSH1 0xa0
00000427: SHL
00000428: SUB
00000429: SWAP1
0000042a: SWAP2
0000042b: AND
0000042c: DUP2
0000042d: MSTORE
0000042e: PUSH1 0x20
00000430: ADD
00000431: PUSH2 0x03b2
00000434: JUMP
00000435: JUMPDEST
00000436: CALLVALUE
00000437: DUP1
00000438: ISZERO
00000439: PUSH2 0x0441
0000043c: JUMPI
0000043d: PUSH1 0x00
0000043f: DUP1
00000440: REVERT
00000441: JUMPDEST
00000442: POP
00000443: PUSH2 0x03db
00000446: PUSH2 0x0450
00000449: CALLDATASIZE
0000044a: PUSH1 0x04
0000044c: PUSH2 0x4e37
0000044f: JUMP
00000450: JUMPDEST
00000451: PUSH2 0x0e1c
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 0x03db
00000466: PUSH2 0x0470
00000469: CALLDATASIZE
0000046a: PUSH1 0x04
0000046c: PUSH2 0x4e54
0000046f: JUMP
00000470: JUMPDEST
00000471: PUSH2 0x0e7c
00000474: JUMP
00000475: JUMPDEST
00000476: CALLVALUE
00000477: DUP1
00000478: ISZERO
00000479: PUSH2 0x0481
0000047c: JUMPI
0000047d: PUSH1 0x00
0000047f: DUP1
00000480: REVERT
00000481: JUMPDEST
00000482: POP
00000483: PUSH2 0x04a2
00000486: PUSH2 0x0490
00000489: CALLDATASIZE
0000048a: PUSH1 0x04
0000048c: PUSH2 0x4ec5
0000048f: JUMP
00000490: JUMPDEST
00000491: PUSH1 0x05
00000493: PUSH1 0x20
00000495: MSTORE
00000496: PUSH1 0x00
00000498: SWAP1
00000499: DUP2
0000049a: MSTORE
0000049b: PUSH1 0x40
0000049d: SWAP1
0000049e: KECCAK256
0000049f: SLOAD
000004a0: DUP2
000004a1: JUMP
000004a2: JUMPDEST
000004a3: PUSH1 0x40
000004a5: MLOAD
000004a6: SWAP1
000004a7: DUP2
000004a8: MSTORE
000004a9: PUSH1 0x20
000004ab: ADD
000004ac: PUSH2 0x03b2
000004af: JUMP
000004b0: JUMPDEST
000004b1: CALLVALUE
000004b2: DUP1
000004b3: ISZERO
000004b4: PUSH2 0x04bc
000004b7: JUMPI
000004b8: PUSH1 0x00
000004ba: DUP1
000004bb: REVERT
000004bc: JUMPDEST
000004bd: POP
000004be: PUSH2 0x03db
000004c1: PUSH2 0x04cb
000004c4: CALLDATASIZE
000004c5: PUSH1 0x04
000004c7: PUSH2 0x4ede
000004ca: JUMP
000004cb: JUMPDEST
000004cc: PUSH2 0x1047
000004cf: JUMP
000004d0: JUMPDEST
000004d1: CALLVALUE
000004d2: DUP1
000004d3: ISZERO
000004d4: PUSH2 0x04dc
000004d7: JUMPI
000004d8: PUSH1 0x00
000004da: DUP1
000004db: REVERT
000004dc: JUMPDEST
000004dd: POP
000004de: PUSH2 0x03db
000004e1: PUSH2 0x04eb
000004e4: CALLDATASIZE
000004e5: PUSH1 0x04
000004e7: PUSH2 0x4f36
000004ea: JUMP
000004eb: JUMPDEST
000004ec: PUSH2 0x108a
000004ef: JUMP
000004f0: JUMPDEST
000004f1: CALLVALUE
000004f2: DUP1
000004f3: ISZERO
000004f4: PUSH2 0x04fc
000004f7: JUMPI
000004f8: PUSH1 0x00
000004fa: DUP1
000004fb: REVERT
000004fc: JUMPDEST
000004fd: POP
000004fe: PUSH2 0x04a2
00000501: PUSH2 0x050b
00000504: CALLDATASIZE
00000505: PUSH1 0x04
00000507: PUSH2 0x4ec5
0000050a: JUMP
0000050b: JUMPDEST
0000050c: PUSH2 0x1107
0000050f: JUMP
00000510: JUMPDEST
00000511: CALLVALUE
00000512: DUP1
00000513: ISZERO
00000514: PUSH2 0x051c
00000517: JUMPI
00000518: PUSH1 0x00
0000051a: DUP1
0000051b: REVERT
0000051c: JUMPDEST
0000051d: POP
0000051e: PUSH2 0x04a2
00000521: PUSH2 0x052b
00000524: CALLDATASIZE
00000525: PUSH1 0x04
00000527: PUSH2 0x4e37
0000052a: JUMP
0000052b: JUMPDEST
0000052c: PUSH2 0x1129
0000052f: JUMP
00000530: JUMPDEST
00000531: CALLVALUE
00000532: DUP1
00000533: ISZERO
00000534: PUSH2 0x053c
00000537: JUMPI
00000538: PUSH1 0x00
0000053a: DUP1
0000053b: REVERT
0000053c: JUMPDEST
0000053d: POP
0000053e: PUSH2 0x03db
00000541: PUSH2 0x054b
00000544: CALLDATASIZE
00000545: PUSH1 0x04
00000547: PUSH2 0x4f6b
0000054a: JUMP
0000054b: JUMPDEST
0000054c: PUSH2 0x1134
0000054f: JUMP
00000550: JUMPDEST
00000551: CALLVALUE
00000552: DUP1
00000553: ISZERO
00000554: PUSH2 0x055c
00000557: JUMPI
00000558: PUSH1 0x00
0000055a: DUP1
0000055b: REVERT
0000055c: JUMPDEST
0000055d: POP
0000055e: PUSH2 0x03db
00000561: PUSH2 0x056b
00000564: CALLDATASIZE
00000565: PUSH1 0x04
00000567: PUSH2 0x4f9b
0000056a: JUMP
0000056b: JUMPDEST
0000056c: PUSH2 0x1156
0000056f: JUMP
00000570: JUMPDEST
00000571: CALLVALUE
00000572: DUP1
00000573: ISZERO
00000574: PUSH2 0x057c
00000577: JUMPI
00000578: PUSH1 0x00
0000057a: DUP1
0000057b: REVERT
0000057c: JUMPDEST
0000057d: POP
0000057e: PUSH2 0x04a2
00000581: PUSH1 0x00
00000583: DUP1
00000584: MLOAD
00000585: PUSH1 0x20
00000587: PUSH2 0x5e5b
0000058a: DUP4
0000058b: CODECOPY
0000058c: DUP2
0000058d: MLOAD
0000058e: SWAP2
0000058f: MSTORE
00000590: DUP2
00000591: JUMP
00000592: JUMPDEST
00000593: PUSH2 0x03db
00000596: PUSH2 0x05a0
00000599: CALLDATASIZE
0000059a: PUSH1 0x04
0000059c: PUSH2 0x5052
0000059f: JUMP
000005a0: JUMPDEST
000005a1: PUSH2 0x137f
000005a4: JUMP
000005a5: JUMPDEST
000005a6: CALLVALUE
000005a7: DUP1
000005a8: ISZERO
000005a9: PUSH2 0x05b1
000005ac: JUMPI
000005ad: PUSH1 0x00
000005af: DUP1
000005b0: REVERT
000005b1: JUMPDEST
000005b2: POP
000005b3: PUSH2 0x03db
000005b6: PUSH2 0x05c0
000005b9: CALLDATASIZE
000005ba: PUSH1 0x04
000005bc: PUSH2 0x4f6b
000005bf: JUMP
000005c0: JUMPDEST
000005c1: PUSH2 0x148f
000005c4: JUMP
000005c5: JUMPDEST
000005c6: CALLVALUE
000005c7: DUP1
000005c8: ISZERO
000005c9: PUSH2 0x05d1
000005cc: JUMPI
000005cd: PUSH1 0x00
000005cf: DUP1
000005d0: REVERT
000005d1: JUMPDEST
000005d2: POP
000005d3: PUSH2 0x03db
000005d6: PUSH2 0x05e0
000005d9: CALLDATASIZE
000005da: PUSH1 0x04
000005dc: PUSH2 0x4e0b
000005df: JUMP
000005e0: JUMPDEST
000005e1: PUSH2 0x14c2
000005e4: JUMP
000005e5: JUMPDEST
000005e6: CALLVALUE
000005e7: DUP1
000005e8: ISZERO
000005e9: PUSH2 0x05f1
000005ec: JUMPI
000005ed: PUSH1 0x00
000005ef: DUP1
000005f0: REVERT
000005f1: JUMPDEST
000005f2: POP
000005f3: PUSH2 0x03a6
000005f6: PUSH2 0x0600
000005f9: CALLDATASIZE
000005fa: PUSH1 0x04
000005fc: PUSH2 0x4e37
000005ff: JUMP
00000600: JUMPDEST
00000601: PUSH1 0x02
00000603: PUSH1 0x20
00000605: MSTORE
00000606: PUSH1 0x00
00000608: SWAP1
00000609: DUP2
0000060a: MSTORE
0000060b: PUSH1 0x40
0000060d: SWAP1
0000060e: KECCAK256
0000060f: SLOAD
00000610: PUSH1 0xff
00000612: AND
00000613: DUP2
00000614: JUMP
00000615: JUMPDEST
00000616: CALLVALUE
00000617: DUP1
00000618: ISZERO
00000619: PUSH2 0x0621
0000061c: JUMPI
0000061d: PUSH1 0x00
0000061f: DUP1
00000620: REVERT
00000621: JUMPDEST
00000622: POP
00000623: PUSH2 0x04a2
00000626: PUSH2 0x0630
00000629: CALLDATASIZE
0000062a: PUSH1 0x04
0000062c: PUSH2 0x4e37
0000062f: JUMP
00000630: JUMPDEST
00000631: PUSH2 0x15ab
00000634: JUMP
00000635: JUMPDEST
00000636: CALLVALUE
00000637: DUP1
00000638: ISZERO
00000639: PUSH2 0x0641
0000063c: JUMPI
0000063d: PUSH1 0x00
0000063f: DUP1
00000640: REVERT
00000641: JUMPDEST
00000642: POP
00000643: PUSH2 0x03db
00000646: PUSH2 0x1616
00000649: JUMP
0000064a: JUMPDEST
0000064b: CALLVALUE
0000064c: DUP1
0000064d: ISZERO
0000064e: PUSH2 0x0656
00000651: JUMPI
00000652: PUSH1 0x00
00000654: DUP1
00000655: REVERT
00000656: JUMPDEST
00000657: POP
00000658: PUSH2 0x03db
0000065b: PUSH2 0x0665
0000065e: CALLDATASIZE
0000065f: PUSH1 0x04
00000661: PUSH2 0x50c0
00000664: JUMP
00000665: JUMPDEST
00000666: PUSH2 0x164b
00000669: JUMP
0000066a: JUMPDEST
0000066b: PUSH2 0x03db
0000066e: PUSH2 0x0678
00000671: CALLDATASIZE
00000672: PUSH1 0x04
00000674: PUSH2 0x51cd
00000677: JUMP
00000678: JUMPDEST
00000679: PUSH2 0x18f6
0000067c: JUMP
0000067d: JUMPDEST
0000067e: CALLVALUE
0000067f: DUP1
00000680: ISZERO
00000681: PUSH2 0x0689
00000684: JUMPI
00000685: PUSH1 0x00
00000687: DUP1
00000688: REVERT
00000689: JUMPDEST
0000068a: POP
0000068b: PUSH2 0x04a2
0000068e: PUSH2 0x1915
00000691: JUMP
00000692: JUMPDEST
00000693: CALLVALUE
00000694: DUP1
00000695: ISZERO
00000696: PUSH2 0x069e
00000699: JUMPI
0000069a: PUSH1 0x00
0000069c: DUP1
0000069d: REVERT
0000069e: JUMPDEST
0000069f: POP
000006a0: PUSH2 0x04a2
000006a3: PUSH1 0x00
000006a5: DUP1
000006a6: MLOAD
000006a7: PUSH1 0x20
000006a9: PUSH2 0x5f1b
000006ac: DUP4
000006ad: CODECOPY
000006ae: DUP2
000006af: MLOAD
000006b0: SWAP2
000006b1: MSTORE
000006b2: DUP2
000006b3: JUMP
000006b4: JUMPDEST
000006b5: CALLVALUE
000006b6: DUP1
000006b7: ISZERO
000006b8: PUSH2 0x06c0
000006bb: JUMPI
000006bc: PUSH1 0x00
000006be: DUP1
000006bf: REVERT
000006c0: JUMPDEST
000006c1: POP
000006c2: PUSH2 0x04a2
000006c5: PUSH2 0x06cf
000006c8: CALLDATASIZE
000006c9: PUSH1 0x04
000006cb: PUSH2 0x4e37
000006ce: JUMP
000006cf: JUMPDEST
000006d0: PUSH1 0x06
000006d2: PUSH1 0x20
000006d4: MSTORE
000006d5: PUSH1 0x00
000006d7: SWAP1
000006d8: DUP2
000006d9: MSTORE
000006da: PUSH1 0x40
000006dc: SWAP1
000006dd: KECCAK256
000006de: SLOAD
000006df: DUP2
000006e0: JUMP
000006e1: JUMPDEST
000006e2: CALLVALUE
000006e3: DUP1
000006e4: ISZERO
000006e5: PUSH2 0x06ed
000006e8: JUMPI
000006e9: PUSH1 0x00
000006eb: DUP1
000006ec: REVERT
000006ed: JUMPDEST
000006ee: POP
000006ef: PUSH1 0x00
000006f1: DUP1
000006f2: MLOAD
000006f3: PUSH1 0x20
000006f5: PUSH2 0x5efb
000006f8: DUP4
000006f9: CODECOPY
000006fa: DUP2
000006fb: MLOAD
000006fc: SWAP2
000006fd: MSTORE
000006fe: SLOAD
000006ff: PUSH1 0xff
00000701: AND
00000702: PUSH2 0x03a6
00000705: JUMP
00000706: JUMPDEST
00000707: CALLVALUE
00000708: DUP1
00000709: ISZERO
0000070a: PUSH2 0x0712
0000070d: JUMPI
0000070e: PUSH1 0x00
00000710: DUP1
00000711: REVERT
00000712: JUMPDEST
00000713: POP
00000714: PUSH2 0x03db
00000717: PUSH2 0x0721
0000071a: CALLDATASIZE
0000071b: PUSH1 0x04
0000071d: PUSH2 0x5278
00000720: JUMP
00000721: JUMPDEST
00000722: PUSH2 0x1932
00000725: JUMP
00000726: JUMPDEST
00000727: CALLVALUE
00000728: DUP1
00000729: ISZERO
0000072a: PUSH2 0x0732
0000072d: JUMPI
0000072e: PUSH1 0x00
00000730: DUP1
00000731: REVERT
00000732: JUMPDEST
00000733: POP
00000734: PUSH2 0x03db
00000737: PUSH2 0x0741
0000073a: CALLDATASIZE
0000073b: PUSH1 0x04
0000073d: PUSH2 0x4ede
00000740: JUMP
00000741: JUMPDEST
00000742: PUSH2 0x196d
00000745: JUMP
00000746: JUMPDEST
00000747: CALLVALUE
00000748: DUP1
00000749: ISZERO
0000074a: PUSH2 0x0752
0000074d: JUMPI
0000074e: PUSH1 0x00
00000750: DUP1
00000751: REVERT
00000752: JUMPDEST
00000753: POP
00000754: PUSH2 0x03db
00000757: PUSH2 0x19a1
0000075a: JUMP
0000075b: JUMPDEST
0000075c: CALLVALUE
0000075d: DUP1
0000075e: ISZERO
0000075f: PUSH2 0x0767
00000762: JUMPI
00000763: PUSH1 0x00
00000765: DUP1
00000766: REVERT
00000767: JUMPDEST
00000768: POP
00000769: PUSH2 0x0770
0000076c: PUSH2 0x19d3
0000076f: JUMP
00000770: JUMPDEST
00000771: PUSH1 0x40
00000773: MLOAD
00000774: PUSH2 0x03b2
00000777: SWAP8
00000778: SWAP7
00000779: SWAP6
0000077a: SWAP5
0000077b: SWAP4
0000077c: SWAP3
0000077d: SWAP2
0000077e: SWAP1
0000077f: PUSH2 0x533c
00000782: JUMP
00000783: JUMPDEST
00000784: CALLVALUE
00000785: DUP1
00000786: ISZERO
00000787: PUSH2 0x078f
0000078a: JUMPI
0000078b: PUSH1 0x00
0000078d: DUP1
0000078e: REVERT
0000078f: JUMPDEST
00000790: POP
00000791: PUSH2 0x07b3
00000794: PUSH2 0x079e
00000797: CALLDATASIZE
00000798: PUSH1 0x04
0000079a: PUSH2 0x4e37
0000079d: JUMP
0000079e: JUMPDEST
0000079f: PUSH1 0x03
000007a1: PUSH1 0x20
000007a3: MSTORE
000007a4: PUSH1 0x00
000007a6: SWAP1
000007a7: DUP2
000007a8: MSTORE
000007a9: PUSH1 0x40
000007ab: SWAP1
000007ac: KECCAK256
000007ad: SLOAD
000007ae: PUSH1 0xff
000007b0: AND
000007b1: DUP2
000007b2: JUMP
000007b3: JUMPDEST
000007b4: PUSH1 0x40
000007b6: MLOAD
000007b7: PUSH1 0xff
000007b9: SWAP1
000007ba: SWAP2
000007bb: AND
000007bc: DUP2
000007bd: MSTORE
000007be: PUSH1 0x20
000007c0: ADD
000007c1: PUSH2 0x03b2
000007c4: JUMP
000007c5: JUMPDEST
000007c6: CALLVALUE
000007c7: DUP1
000007c8: ISZERO
000007c9: PUSH2 0x07d1
000007cc: JUMPI
000007cd: PUSH1 0x00
000007cf: DUP1
000007d0: REVERT
000007d1: JUMPDEST
000007d2: POP
000007d3: PUSH2 0x041d
000007d6: PUSH2 0x07e0
000007d9: CALLDATASIZE
000007da: PUSH1 0x04
000007dc: PUSH2 0x53ac
000007df: JUMP
000007e0: JUMPDEST
000007e1: PUSH2 0x1a7f
000007e4: JUMP
000007e5: JUMPDEST
000007e6: CALLVALUE
000007e7: DUP1
000007e8: ISZERO
000007e9: PUSH2 0x07f1
000007ec: JUMPI
000007ed: PUSH1 0x00
000007ef: DUP1
000007f0: REVERT
000007f1: JUMPDEST
000007f2: POP
000007f3: PUSH2 0x03a6
000007f6: PUSH2 0x0800
000007f9: CALLDATASIZE
000007fa: PUSH1 0x04
000007fc: PUSH2 0x4f6b
000007ff: JUMP
00000800: JUMPDEST
00000801: PUSH2 0x1aae
00000804: JUMP
00000805: JUMPDEST
00000806: CALLVALUE
00000807: DUP1
00000808: ISZERO
00000809: PUSH2 0x0811
0000080c: JUMPI
0000080d: PUSH1 0x00
0000080f: DUP1
00000810: REVERT
00000811: JUMPDEST
00000812: POP
00000813: PUSH1 0x01
00000815: SLOAD
00000816: PUSH2 0x041d
00000819: SWAP1
0000081a: PUSH1 0x01
0000081c: PUSH1 0x01
0000081e: PUSH1 0xa0
00000820: SHL
00000821: SUB
00000822: AND
00000823: DUP2
00000824: JUMP
00000825: JUMPDEST
00000826: CALLVALUE
00000827: DUP1
00000828: ISZERO
00000829: PUSH2 0x0831
0000082c: JUMPI
0000082d: PUSH1 0x00
0000082f: DUP1
00000830: REVERT
00000831: JUMPDEST
00000832: POP
00000833: PUSH2 0x03db
00000836: PUSH2 0x0840
00000839: CALLDATASIZE
0000083a: PUSH1 0x04
0000083c: PUSH2 0x53e1
0000083f: JUMP
00000840: JUMPDEST
00000841: PUSH2 0x1ae6
00000844: JUMP
00000845: JUMPDEST
00000846: CALLVALUE
00000847: DUP1
00000848: ISZERO
00000849: PUSH2 0x0851
0000084c: JUMPI
0000084d: PUSH1 0x00
0000084f: DUP1
00000850: REVERT
00000851: JUMPDEST
00000852: POP
00000853: PUSH2 0x04a2
00000856: PUSH1 0x00
00000858: DUP2
00000859: JUMP
0000085a: JUMPDEST
0000085b: CALLVALUE
0000085c: DUP1
0000085d: ISZERO
0000085e: PUSH2 0x0866
00000861: JUMPI
00000862: PUSH1 0x00
00000864: DUP1
00000865: REVERT
00000866: JUMPDEST
00000867: POP
00000868: PUSH2 0x087a
0000086b: PUSH2 0x0875
0000086e: CALLDATASIZE
0000086f: PUSH1 0x04
00000871: PUSH2 0x4ec5
00000874: JUMP
00000875: JUMPDEST
00000876: PUSH2 0x1de7
00000879: JUMP
0000087a: JUMPDEST
0000087b: PUSH1 0x40
0000087d: MLOAD
0000087e: PUSH2 0x03b2
00000881: SWAP2
00000882: SWAP1
00000883: PUSH2 0x544d
00000886: JUMP
00000887: JUMPDEST
00000888: CALLVALUE
00000889: DUP1
0000088a: ISZERO
0000088b: PUSH2 0x0893
0000088e: JUMPI
0000088f: PUSH1 0x00
00000891: DUP1
00000892: REVERT
00000893: JUMPDEST
00000894: POP
00000895: PUSH2 0x03db
00000898: PUSH2 0x08a2
0000089b: CALLDATASIZE
0000089c: PUSH1 0x04
0000089e: PUSH2 0x54b0
000008a1: JUMP
000008a2: JUMPDEST
000008a3: PUSH2 0x1e19
000008a6: JUMP
000008a7: JUMPDEST
000008a8: CALLVALUE
000008a9: DUP1
000008aa: ISZERO
000008ab: PUSH2 0x08b3
000008ae: JUMPI
000008af: PUSH1 0x00
000008b1: DUP1
000008b2: REVERT
000008b3: JUMPDEST
000008b4: POP
000008b5: PUSH2 0x03db
000008b8: PUSH2 0x08c2
000008bb: CALLDATASIZE
000008bc: PUSH1 0x04
000008be: PUSH2 0x550a
000008c1: JUMP
000008c2: JUMPDEST
000008c3: PUSH2 0x1e4d
000008c6: JUMP
000008c7: JUMPDEST
000008c8: CALLVALUE
000008c9: DUP1
000008ca: ISZERO
000008cb: PUSH2 0x08d3
000008ce: JUMPI
000008cf: PUSH1 0x00
000008d1: DUP1
000008d2: REVERT
000008d3: JUMPDEST
000008d4: POP
000008d5: PUSH2 0x08f8
000008d8: PUSH1 0x40
000008da: MLOAD
000008db: DUP1
000008dc: PUSH1 0x40
000008de: ADD
000008df: PUSH1 0x40
000008e1: MSTORE
000008e2: DUP1
000008e3: PUSH1 0x05
000008e5: DUP2
000008e6: MSTORE
000008e7: PUSH1 0x20
000008e9: ADD
000008ea: PUSH5 0x0352e302e3
000008f0: PUSH1 0xdc
000008f2: SHL
000008f3: DUP2
000008f4: MSTORE
000008f5: POP
000008f6: DUP2
000008f7: JUMP
000008f8: JUMPDEST
000008f9: PUSH1 0x40
000008fb: MLOAD
000008fc: PUSH2 0x03b2
000008ff: SWAP2
00000900: SWAP1
00000901: PUSH2 0x557b
00000904: JUMP
00000905: JUMPDEST
00000906: CALLVALUE
00000907: DUP1
00000908: ISZERO
00000909: PUSH2 0x0911
0000090c: JUMPI
0000090d: PUSH1 0x00
0000090f: DUP1
00000910: REVERT
00000911: JUMPDEST
00000912: POP
00000913: PUSH2 0x04a2
00000916: PUSH3 0x0186a0
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 0x04a2
0000092d: PUSH2 0x0937
00000930: CALLDATASIZE
00000931: PUSH1 0x04
00000933: PUSH2 0x4e37
00000936: JUMP
00000937: JUMPDEST
00000938: PUSH1 0x07
0000093a: PUSH1 0x20
0000093c: MSTORE
0000093d: PUSH1 0x00
0000093f: SWAP1
00000940: DUP2
00000941: MSTORE
00000942: PUSH1 0x40
00000944: SWAP1
00000945: KECCAK256
00000946: SLOAD
00000947: DUP2
00000948: JUMP
00000949: JUMPDEST
0000094a: CALLVALUE
0000094b: DUP1
0000094c: ISZERO
0000094d: PUSH2 0x0955
00000950: JUMPI
00000951: PUSH1 0x00
00000953: DUP1
00000954: REVERT
00000955: JUMPDEST
00000956: POP
00000957: PUSH2 0x04a2
0000095a: PUSH2 0x0964
0000095d: CALLDATASIZE
0000095e: PUSH1 0x04
00000960: PUSH2 0x4ec5
00000963: JUMP
00000964: JUMPDEST
00000965: PUSH2 0x2138
00000968: JUMP
00000969: JUMPDEST
0000096a: CALLVALUE
0000096b: DUP1
0000096c: ISZERO
0000096d: PUSH2 0x0975
00000970: JUMPI
00000971: PUSH1 0x00
00000973: DUP1
00000974: REVERT
00000975: JUMPDEST
00000976: POP
00000977: PUSH2 0x04a2
0000097a: PUSH2 0x0984
0000097d: CALLDATASIZE
0000097e: PUSH1 0x04
00000980: PUSH2 0x4e37
00000983: JUMP
00000984: JUMPDEST
00000985: PUSH1 0x08
00000987: PUSH1 0x20
00000989: MSTORE
0000098a: PUSH1 0x00
0000098c: SWAP1
0000098d: DUP2
0000098e: MSTORE
0000098f: PUSH1 0x40
00000991: SWAP1
00000992: KECCAK256
00000993: SLOAD
00000994: DUP2
00000995: JUMP
00000996: JUMPDEST
00000997: CALLVALUE
00000998: DUP1
00000999: ISZERO
0000099a: PUSH2 0x09a2
0000099d: JUMPI
0000099e: PUSH1 0x00
000009a0: DUP1
000009a1: REVERT
000009a2: JUMPDEST
000009a3: POP
000009a4: PUSH2 0x03db
000009a7: PUSH2 0x09b1
000009aa: CALLDATASIZE
000009ab: PUSH1 0x04
000009ad: PUSH2 0x558e
000009b0: JUMP
000009b1: JUMPDEST
000009b2: PUSH2 0x215e
000009b5: JUMP
000009b6: JUMPDEST
000009b7: CALLVALUE
000009b8: DUP1
000009b9: ISZERO
000009ba: PUSH2 0x09c2
000009bd: JUMPI
000009be: PUSH1 0x00
000009c0: DUP1
000009c1: REVERT
000009c2: JUMPDEST
000009c3: POP
000009c4: PUSH2 0x03db
000009c7: PUSH2 0x09d1
000009ca: CALLDATASIZE
000009cb: PUSH1 0x04
000009cd: PUSH2 0x4f6b
000009d0: JUMP
000009d1: JUMPDEST
000009d2: PUSH2 0x2494
000009d5: JUMP
000009d6: JUMPDEST
000009d7: CALLVALUE
000009d8: DUP1
000009d9: ISZERO
000009da: PUSH2 0x09e2
000009dd: JUMPI
000009de: PUSH1 0x00
000009e0: DUP1
000009e1: REVERT
000009e2: JUMPDEST
000009e3: POP
000009e4: PUSH2 0x04a2
000009e7: PUSH3 0x0f4240
000009eb: DUP2
000009ec: JUMP
000009ed: JUMPDEST
000009ee: CALLVALUE
000009ef: DUP1
000009f0: ISZERO
000009f1: PUSH2 0x09f9
000009f4: JUMPI
000009f5: PUSH1 0x00
000009f7: DUP1
000009f8: REVERT
000009f9: JUMPDEST
000009fa: POP
000009fb: PUSH2 0x03db
000009fe: PUSH2 0x0a08
00000a01: CALLDATASIZE
00000a02: PUSH1 0x04
00000a04: PUSH2 0x5604
00000a07: JUMP
00000a08: JUMPDEST
00000a09: PUSH2 0x24b0
00000a0c: JUMP
00000a0d: JUMPDEST
00000a0e: CALLVALUE
00000a0f: DUP1
00000a10: ISZERO
00000a11: PUSH2 0x0a19
00000a14: JUMPI
00000a15: PUSH1 0x00
00000a17: DUP1
00000a18: REVERT
00000a19: JUMPDEST
00000a1a: POP
00000a1b: PUSH2 0x04a2
00000a1e: PUSH2 0x0a28
00000a21: CALLDATASIZE
00000a22: PUSH1 0x04
00000a24: PUSH2 0x4e37
00000a27: JUMP
00000a28: JUMPDEST
00000a29: PUSH1 0x0a
00000a2b: PUSH1 0x20
00000a2d: MSTORE
00000a2e: PUSH1 0x00
00000a30: SWAP1
00000a31: DUP2
00000a32: MSTORE
00000a33: PUSH1 0x40
00000a35: SWAP1
00000a36: KECCAK256
00000a37: SLOAD
00000a38: DUP2
00000a39: JUMP
00000a3a: JUMPDEST
00000a3b: CALLVALUE
00000a3c: DUP1
00000a3d: ISZERO
00000a3e: PUSH2 0x0a46
00000a41: JUMPI
00000a42: PUSH1 0x00
00000a44: DUP1
00000a45: REVERT
00000a46: JUMPDEST
00000a47: POP
00000a48: PUSH2 0x03db
00000a4b: PUSH2 0x0a55
00000a4e: CALLDATASIZE
00000a4f: PUSH1 0x04
00000a51: PUSH2 0x5641
00000a54: JUMP
00000a55: JUMPDEST
00000a56: PUSH2 0x25d6
00000a59: JUMP
00000a5a: JUMPDEST
00000a5b: CALLVALUE
00000a5c: DUP1
00000a5d: ISZERO
00000a5e: PUSH2 0x0a66
00000a61: JUMPI
00000a62: PUSH1 0x00
00000a64: DUP1
00000a65: REVERT
00000a66: JUMPDEST
00000a67: POP
00000a68: PUSH2 0x03db
00000a6b: PUSH2 0x0a75
00000a6e: CALLDATASIZE
00000a6f: PUSH1 0x04
00000a71: PUSH2 0x53e1
00000a74: JUMP
00000a75: JUMPDEST
00000a76: PUSH2 0x2808
00000a79: JUMP
00000a7a: JUMPDEST
00000a7b: CALLVALUE
00000a7c: DUP1
00000a7d: ISZERO
00000a7e: PUSH2 0x0a86
00000a81: JUMPI
00000a82: PUSH1 0x00
00000a84: DUP1
00000a85: REVERT
00000a86: JUMPDEST
00000a87: POP
00000a88: PUSH2 0x04a2
00000a8b: PUSH32 0x65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a
00000aac: DUP2
00000aad: JUMP
00000aae: JUMPDEST
00000aaf: CALLVALUE
00000ab0: DUP1
00000ab1: ISZERO
00000ab2: PUSH2 0x0aba
00000ab5: JUMPI
00000ab6: PUSH1 0x00
00000ab8: DUP1
00000ab9: REVERT
00000aba: JUMPDEST
00000abb: POP
00000abc: PUSH2 0x0aea
00000abf: PUSH2 0x0ac9
00000ac2: CALLDATASIZE
00000ac3: PUSH1 0x04
00000ac5: PUSH2 0x4e37
00000ac8: JUMP
00000ac9: JUMPDEST
00000aca: PUSH1 0x04
00000acc: PUSH1 0x20
00000ace: MSTORE
00000acf: PUSH1 0x00
00000ad1: SWAP1
00000ad2: DUP2
00000ad3: MSTORE
00000ad4: PUSH1 0x40
00000ad6: SWAP1
00000ad7: KECCAK256
00000ad8: DUP1
00000ad9: SLOAD
00000ada: PUSH1 0x01
00000adc: DUP3
00000add: ADD
00000ade: SLOAD
00000adf: PUSH1 0x02
00000ae1: SWAP1
00000ae2: SWAP3
00000ae3: ADD
00000ae4: SLOAD
00000ae5: SWAP1
00000ae6: SWAP2
00000ae7: SWAP1
00000ae8: DUP4
00000ae9: JUMP
00000aea: JUMPDEST
00000aeb: PUSH1 0x40
00000aed: DUP1
00000aee: MLOAD
00000aef: SWAP4
00000af0: DUP5
00000af1: MSTORE
00000af2: PUSH1 0x20
00000af4: DUP5
00000af5: ADD
00000af6: SWAP3
00000af7: SWAP1
00000af8: SWAP3
00000af9: MSTORE
00000afa: SWAP1
00000afb: DUP3
00000afc: ADD
00000afd: MSTORE
00000afe: PUSH1 0x60
00000b00: ADD
00000b01: PUSH2 0x03b2
00000b04: JUMP
00000b05: JUMPDEST
00000b06: CALLVALUE
00000b07: DUP1
00000b08: ISZERO
00000b09: PUSH2 0x0b11
00000b0c: JUMPI
00000b0d: PUSH1 0x00
00000b0f: DUP1
00000b10: REVERT
00000b11: JUMPDEST
00000b12: POP
00000b13: PUSH2 0x0b25
00000b16: PUSH2 0x0b20
00000b19: CALLDATASIZE
00000b1a: PUSH1 0x04
00000b1c: PUSH2 0x56ea
00000b1f: JUMP
00000b20: JUMPDEST
00000b21: PUSH2 0x2b21
00000b24: JUMP
00000b25: JUMPDEST
00000b26: PUSH1 0x40
00000b28: MLOAD
00000b29: PUSH2 0x03b2
00000b2c: SWAP2
00000b2d: SWAP1
00000b2e: PUSH2 0x572b
00000b31: JUMP
00000b32: JUMPDEST
00000b33: CALLVALUE
00000b34: DUP1
00000b35: ISZERO
00000b36: PUSH2 0x0b3e
00000b39: JUMPI
00000b3a: PUSH1 0x00
00000b3c: DUP1
00000b3d: REVERT
00000b3e: JUMPDEST
00000b3f: POP
00000b40: PUSH2 0x04a2
00000b43: PUSH1 0x00
00000b45: DUP1
00000b46: MLOAD
00000b47: PUSH1 0x20
00000b49: PUSH2 0x5e7b
00000b4c: DUP4
00000b4d: CODECOPY
00000b4e: DUP2
00000b4f: MLOAD
00000b50: SWAP2
00000b51: MSTORE
00000b52: DUP2
00000b53: JUMP
00000b54: JUMPDEST
00000b55: CALLVALUE
00000b56: DUP1
00000b57: ISZERO
00000b58: PUSH2 0x0b60
00000b5b: JUMPI
00000b5c: PUSH1 0x00
00000b5e: DUP1
00000b5f: REVERT
00000b60: JUMPDEST
00000b61: POP
00000b62: PUSH2 0x04a2
00000b65: PUSH32 0x189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e3
00000b86: DUP2
00000b87: JUMP
00000b88: JUMPDEST
00000b89: CALLVALUE
00000b8a: DUP1
00000b8b: ISZERO
00000b8c: PUSH2 0x0b94
00000b8f: JUMPI
00000b90: PUSH1 0x00
00000b92: DUP1
00000b93: REVERT
00000b94: JUMPDEST
00000b95: POP
00000b96: PUSH2 0x03db
00000b99: PUSH2 0x0ba3
00000b9c: CALLDATASIZE
00000b9d: PUSH1 0x04
00000b9f: PUSH2 0x573e
00000ba2: JUMP
00000ba3: JUMPDEST
00000ba4: PUSH2 0x2bea
00000ba7: JUMP
00000ba8: JUMPDEST
00000ba9: CALLVALUE
00000baa: DUP1
00000bab: ISZERO
00000bac: PUSH2 0x0bb4
00000baf: JUMPI
00000bb0: PUSH1 0x00
00000bb2: DUP1
00000bb3: REVERT
00000bb4: JUMPDEST
00000bb5: POP
00000bb6: PUSH2 0x03a6
00000bb9: PUSH2 0x0bc3
00000bbc: CALLDATASIZE
00000bbd: PUSH1 0x04
00000bbf: PUSH2 0x4e37
00000bc2: JUMP
00000bc3: JUMPDEST
00000bc4: PUSH1 0x09
00000bc6: PUSH1 0x20
00000bc8: MSTORE
00000bc9: PUSH1 0x00
00000bcb: SWAP1
00000bcc: DUP2
00000bcd: MSTORE
00000bce: PUSH1 0x40
00000bd0: SWAP1
00000bd1: KECCAK256
00000bd2: SLOAD
00000bd3: PUSH1 0xff
00000bd5: AND
00000bd6: DUP2
00000bd7: JUMP
00000bd8: JUMPDEST
00000bd9: PUSH1 0x00
00000bdb: PUSH1 0x01
00000bdd: PUSH1 0x01
00000bdf: PUSH1 0xe0
00000be1: SHL
00000be2: SUB
00000be3: NOT
00000be4: DUP3
00000be5: AND
00000be6: PUSH4 0x5a05180f
00000beb: PUSH1 0xe0
00000bed: SHL
00000bee: EQ
00000bef: DUP1
00000bf0: PUSH2 0x0bfd
00000bf3: JUMPI
00000bf4: POP
00000bf5: PUSH2 0x0bfd
00000bf8: DUP3
00000bf9: PUSH2 0x2dbf
00000bfc: JUMP
00000bfd: JUMPDEST
00000bfe: SWAP3
00000bff: SWAP2
00000c00: POP
00000c01: POP
00000c02: JUMP
00000c03: JUMPDEST
00000c04: PUSH1 0x00
00000c06: PUSH2 0x0c0e
00000c09: DUP2
00000c0a: PUSH2 0x2df4
00000c0d: JUMP
00000c0e: JUMPDEST
00000c0f: PUSH2 0x0c16
00000c12: PUSH2 0x2dfe
00000c15: JUMP
00000c16: JUMPDEST
00000c17: PUSH1 0x00
00000c19: PUSH2 0x0c21
00000c1c: DUP5
00000c1d: PUSH2 0x2e48
00000c20: JUMP
00000c21: JUMPDEST
00000c22: SWAP1
00000c23: POP
00000c24: DUP3
00000c25: DUP2
00000c26: LT
00000c27: ISZERO
00000c28: PUSH2 0x0c44
00000c2b: JUMPI
00000c2c: PUSH1 0x40
00000c2e: MLOAD
00000c2f: PUSH4 0x1a001591
00000c34: PUSH1 0xe1
00000c36: SHL
00000c37: DUP2
00000c38: MSTORE
00000c39: PUSH1 0x04
00000c3b: ADD
00000c3c: PUSH1 0x40
00000c3e: MLOAD
00000c3f: DUP1
00000c40: SWAP2
00000c41: SUB
00000c42: SWAP1
00000c43: REVERT
00000c44: JUMPDEST
00000c45: PUSH2 0x0c58
00000c48: PUSH1 0x01
00000c4a: PUSH1 0x01
00000c4c: PUSH1 0xa0
00000c4e: SHL
00000c4f: SUB
00000c50: DUP6
00000c51: AND
00000c52: CALLER
00000c53: DUP6
00000c54: PUSH2 0x2efc
00000c57: JUMP
00000c58: JUMPDEST
00000c59: PUSH1 0x40
00000c5b: DUP1
00000c5c: MLOAD
00000c5d: PUSH1 0x01
00000c5f: PUSH1 0x01
00000c61: PUSH1 0xa0
00000c63: SHL
00000c64: SUB
00000c65: DUP7
00000c66: AND
00000c67: DUP2
00000c68: MSTORE
00000c69: PUSH1 0x20
00000c6b: DUP2
00000c6c: ADD
00000c6d: DUP6
00000c6e: SWAP1
00000c6f: MSTORE
00000c70: CALLER
00000c71: SWAP2
00000c72: DUP2
00000c73: ADD
00000c74: SWAP2
00000c75: SWAP1
00000c76: SWAP2
00000c77: MSTORE
00000c78: PUSH32 0x725d2b2a111aeccedf70abe4c73292de678c38a3446d20b8bbc9ae328be13b0b
00000c99: SWAP1
00000c9a: PUSH1 0x60
00000c9c: ADD
00000c9d: JUMPDEST
00000c9e: PUSH1 0x40
00000ca0: MLOAD
00000ca1: DUP1
00000ca2: SWAP2
00000ca3: SUB
00000ca4: SWAP1
00000ca5: LOG1
00000ca6: POP
00000ca7: PUSH2 0x0cae
00000caa: PUSH2 0x2f5b
00000cad: JUMP
00000cae: JUMPDEST
00000caf: POP
00000cb0: POP
00000cb1: POP
00000cb2: JUMP
00000cb3: JUMPDEST
00000cb4: PUSH1 0x00
00000cb6: DUP1
00000cb7: MLOAD
00000cb8: PUSH1 0x20
00000cba: PUSH2 0x5e7b
00000cbd: DUP4
00000cbe: CODECOPY
00000cbf: DUP2
00000cc0: MLOAD
00000cc1: SWAP2
00000cc2: MSTORE
00000cc3: PUSH2 0x0ccb
00000cc6: DUP2
00000cc7: PUSH2 0x2df4
00000cca: JUMP
00000ccb: JUMPDEST
00000ccc: PUSH2 0x0cd3
00000ccf: PUSH2 0x2dfe
00000cd2: JUMP
00000cd3: JUMPDEST
00000cd4: PUSH1 0x01
00000cd6: PUSH1 0x01
00000cd8: PUSH1 0xa0
00000cda: SHL
00000cdb: SUB
00000cdc: DUP4
00000cdd: AND
00000cde: PUSH2 0x0d22
00000ce1: JUMPI
00000ce2: PUSH1 0x40
00000ce4: MLOAD
00000ce5: PUSH3 0x461bcd
00000ce9: PUSH1 0xe5
00000ceb: SHL
00000cec: DUP2
00000ced: MSTORE
00000cee: PUSH1 0x20
00000cf0: PUSH1 0x04
00000cf2: DUP3
00000cf3: ADD
00000cf4: MSTORE
00000cf5: PUSH1 0x11
00000cf7: PUSH1 0x24
00000cf9: DUP3
00000cfa: ADD
00000cfb: MSTORE
00000cfc: PUSH17 0x125b9d985b1a59081c9958da5c1a595b9d
00000d0e: PUSH1 0x7a
00000d10: SHL
00000d11: PUSH1 0x44
00000d13: DUP3
00000d14: ADD
00000d15: MSTORE
00000d16: PUSH1 0x64
00000d18: ADD
00000d19: JUMPDEST
00000d1a: PUSH1 0x40
00000d1c: MLOAD
00000d1d: DUP1
00000d1e: SWAP2
00000d1f: SUB
00000d20: SWAP1
00000d21: REVERT
00000d22: JUMPDEST
00000d23: PUSH1 0x00
00000d25: DUP3
00000d26: GT
00000d27: PUSH2 0x0d72
00000d2a: JUMPI
00000d2b: PUSH1 0x40
00000d2d: MLOAD
00000d2e: PUSH3 0x461bcd
00000d32: PUSH1 0xe5
00000d34: SHL
00000d35: DUP2
00000d36: MSTORE
00000d37: PUSH1 0x20
00000d39: PUSH1 0x04
00000d3b: DUP3
00000d3c: ADD
00000d3d: MSTORE
00000d3e: PUSH1 0x1d
00000d40: PUSH1 0x24
00000d42: DUP3
00000d43: ADD
00000d44: MSTORE
00000d45: PUSH32 0x416d6f756e74206d7573742062652067726561746572207468616e2030000000
00000d66: PUSH1 0x44
00000d68: DUP3
00000d69: ADD
00000d6a: MSTORE
00000d6b: PUSH1 0x64
00000d6d: ADD
00000d6e: PUSH2 0x0d19
00000d71: JUMP
00000d72: JUMPDEST
00000d73: SELFBALANCE
00000d74: DUP3
00000d75: GT
00000d76: ISZERO
00000d77: PUSH2 0x0db9
00000d7a: JUMPI
00000d7b: PUSH1 0x40
00000d7d: MLOAD
00000d7e: PUSH3 0x461bcd
00000d82: PUSH1 0xe5
00000d84: SHL
00000d85: DUP2
00000d86: MSTORE
00000d87: PUSH1 0x20
00000d89: PUSH1 0x04
00000d8b: DUP3
00000d8c: ADD
00000d8d: MSTORE
00000d8e: PUSH1 0x14
00000d90: PUSH1 0x24
00000d92: DUP3
00000d93: ADD
00000d94: MSTORE
00000d95: PUSH20 0x496e73756666696369656e742062616c616e6365
00000daa: PUSH1 0x60
00000dac: SHL
00000dad: PUSH1 0x44
00000daf: DUP3
00000db0: ADD
00000db1: MSTORE
00000db2: PUSH1 0x64
00000db4: ADD
00000db5: PUSH2 0x0d19
00000db8: JUMP
00000db9: JUMPDEST
00000dba: PUSH2 0x0dcc
00000dbd: PUSH1 0x01
00000dbf: PUSH1 0x01
00000dc1: PUSH1 0xa0
00000dc3: SHL
00000dc4: SUB
00000dc5: DUP5
00000dc6: AND
00000dc7: DUP4
00000dc8: PUSH2 0x2f81
00000dcb: JUMP
00000dcc: JUMPDEST
00000dcd: PUSH1 0x40
00000dcf: DUP1
00000dd0: MLOAD
00000dd1: PUSH1 0x01
00000dd3: PUSH1 0x01
00000dd5: PUSH1 0xa0
00000dd7: SHL
00000dd8: SUB
00000dd9: DUP6
00000dda: AND
00000ddb: DUP2
00000ddc: MSTORE
00000ddd: PUSH1 0x20
00000ddf: DUP2
00000de0: ADD
00000de1: DUP5
00000de2: SWAP1
00000de3: MSTORE
00000de4: CALLER
00000de5: DUP2
00000de6: DUP4
00000de7: ADD
00000de8: MSTORE
00000de9: SWAP1
00000dea: MLOAD
00000deb: PUSH32 0xd49af2ad2c81f47f90ecf1aee25bafacdabb9a1293c681c6708f84b17553eb2a
00000e0c: SWAP2
00000e0d: DUP2
00000e0e: SWAP1
00000e0f: SUB
00000e10: PUSH1 0x60
00000e12: ADD
00000e13: SWAP1
00000e14: LOG1
00000e15: PUSH2 0x0cae
00000e18: PUSH2 0x2f5b
00000e1b: JUMP
00000e1c: JUMPDEST
00000e1d: PUSH1 0x00
00000e1f: PUSH2 0x0e27
00000e22: DUP2
00000e23: PUSH2 0x2df4
00000e26: JUMP
00000e27: JUMPDEST
00000e28: PUSH1 0x01
00000e2a: DUP1
00000e2b: SLOAD
00000e2c: PUSH1 0x01
00000e2e: PUSH1 0x01
00000e30: PUSH1 0xa0
00000e32: SHL
00000e33: SUB
00000e34: NOT
00000e35: AND
00000e36: PUSH1 0x01
00000e38: PUSH1 0x01
00000e3a: PUSH1 0xa0
00000e3c: SHL
00000e3d: SUB
00000e3e: DUP5
00000e3f: AND
00000e40: SWAP1
00000e41: DUP2
00000e42: OR
00000e43: SWAP1
00000e44: SWAP2
00000e45: SSTORE
00000e46: PUSH1 0x40
00000e48: MLOAD
00000e49: SWAP1
00000e4a: DUP2
00000e4b: MSTORE
00000e4c: PUSH32 0x0f10c1d0da464c1238d07effa37ea79a31fff7393da1bf0a720107001f6700b8
00000e6d: SWAP1
00000e6e: PUSH1 0x20
00000e70: ADD
00000e71: PUSH1 0x40
00000e73: MLOAD
00000e74: DUP1
00000e75: SWAP2
00000e76: SUB
00000e77: SWAP1
00000e78: LOG1
00000e79: POP
00000e7a: POP
00000e7b: JUMP
00000e7c: JUMPDEST
00000e7d: PUSH1 0x00
00000e7f: PUSH2 0x0e86
00000e82: PUSH2 0x3011
00000e85: JUMP
00000e86: JUMPDEST
00000e87: DUP1
00000e88: SLOAD
00000e89: SWAP1
00000e8a: SWAP2
00000e8b: POP
00000e8c: PUSH1 0xff
00000e8e: PUSH1 0x01
00000e90: PUSH1 0x40
00000e92: SHL
00000e93: DUP3
00000e94: DIV
00000e95: AND
00000e96: ISZERO
00000e97: SWAP1
00000e98: PUSH1 0x01
00000e9a: PUSH1 0x01
00000e9c: PUSH1 0x40
00000e9e: SHL
00000e9f: SUB
00000ea0: AND
00000ea1: PUSH1 0x00
00000ea3: DUP2
00000ea4: ISZERO
00000ea5: DUP1
00000ea6: ISZERO
00000ea7: PUSH2 0x0ead
00000eaa: JUMPI
00000eab: POP
00000eac: DUP3
00000ead: JUMPDEST
00000eae: SWAP1
00000eaf: POP
00000eb0: PUSH1 0x00
00000eb2: DUP3
00000eb3: PUSH1 0x01
00000eb5: PUSH1 0x01
00000eb7: PUSH1 0x40
00000eb9: SHL
00000eba: SUB
00000ebb: AND
00000ebc: PUSH1 0x01
00000ebe: EQ
00000ebf: DUP1
00000ec0: ISZERO
00000ec1: PUSH2 0x0ec9
00000ec4: JUMPI
00000ec5: POP
00000ec6: ADDRESS
00000ec7: EXTCODESIZE
00000ec8: ISZERO
00000ec9: JUMPDEST
00000eca: SWAP1
00000ecb: POP
00000ecc: DUP2
00000ecd: ISZERO
00000ece: DUP1
00000ecf: ISZERO
00000ed0: PUSH2 0x0ed7
00000ed3: JUMPI
00000ed4: POP
00000ed5: DUP1
00000ed6: ISZERO
00000ed7: JUMPDEST
00000ed8: ISZERO
00000ed9: PUSH2 0x0ef5
00000edc: JUMPI
00000edd: PUSH1 0x40
00000edf: MLOAD
00000ee0: PUSH4 0xf92ee8a9
00000ee5: PUSH1 0xe0
00000ee7: SHL
00000ee8: DUP2
00000ee9: MSTORE
00000eea: PUSH1 0x04
00000eec: ADD
00000eed: PUSH1 0x40
00000eef: MLOAD
00000ef0: DUP1
00000ef1: SWAP2
00000ef2: SUB
00000ef3: SWAP1
00000ef4: REVERT
00000ef5: JUMPDEST
00000ef6: DUP5
00000ef7: SLOAD
00000ef8: PUSH8 0xffffffffffffffff
00000f01: NOT
00000f02: AND
00000f03: PUSH1 0x01
00000f05: OR
00000f06: DUP6
00000f07: SSTORE
00000f08: DUP4
00000f09: ISZERO
00000f0a: PUSH2 0x0f1f
00000f0d: JUMPI
00000f0e: DUP5
00000f0f: SLOAD
00000f10: PUSH1 0xff
00000f12: PUSH1 0x40
00000f14: SHL
00000f15: NOT
00000f16: AND
00000f17: PUSH1 0x01
00000f19: PUSH1 0x40
00000f1b: SHL
00000f1c: OR
00000f1d: DUP6
00000f1e: SSTORE
00000f1f: JUMPDEST
00000f20: PUSH2 0x0f27
00000f23: PUSH2 0x303a
00000f26: JUMP
00000f27: JUMPDEST
00000f28: PUSH2 0x0f2f
00000f2b: PUSH2 0x303a
00000f2e: JUMP
00000f2f: JUMPDEST
00000f30: PUSH2 0x0f37
00000f33: PUSH2 0x3044
00000f36: JUMP
00000f37: JUMPDEST
00000f38: PUSH2 0x0f3f
00000f3b: PUSH2 0x303a
00000f3e: JUMP
00000f3f: JUMPDEST
00000f40: PUSH2 0x0f87
00000f43: PUSH1 0x40
00000f45: MLOAD
00000f46: DUP1
00000f47: PUSH1 0x40
00000f49: ADD
00000f4a: PUSH1 0x40
00000f4c: MSTORE
00000f4d: DUP1
00000f4e: PUSH1 0x0d
00000f50: DUP2
00000f51: MSTORE
00000f52: PUSH1 0x20
00000f54: ADD
00000f55: PUSH13 0x131a5c5d5a591a5d1e541bdbdb
00000f63: PUSH1 0x9a
00000f65: SHL
00000f66: DUP2
00000f67: MSTORE
00000f68: POP
00000f69: PUSH1 0x40
00000f6b: MLOAD
00000f6c: DUP1
00000f6d: PUSH1 0x40
00000f6f: ADD
00000f70: PUSH1 0x40
00000f72: MSTORE
00000f73: DUP1
00000f74: PUSH1 0x01
00000f76: DUP2
00000f77: MSTORE
00000f78: PUSH1 0x20
00000f7a: ADD
00000f7b: PUSH1 0x31
00000f7d: PUSH1 0xf8
00000f7f: SHL
00000f80: DUP2
00000f81: MSTORE
00000f82: POP
00000f83: PUSH2 0x3054
00000f86: JUMP
00000f87: JUMPDEST
00000f88: PUSH2 0x0f92
00000f8b: PUSH1 0x00
00000f8d: DUP12
00000f8e: PUSH2 0x3066
00000f91: JUMP
00000f92: JUMPDEST
00000f93: POP
00000f94: PUSH2 0x0fab
00000f97: PUSH1 0x00
00000f99: DUP1
00000f9a: MLOAD
00000f9b: PUSH1 0x20
00000f9d: PUSH2 0x5e7b
00000fa0: DUP4
00000fa1: CODECOPY
00000fa2: DUP2
00000fa3: MLOAD
00000fa4: SWAP2
00000fa5: MSTORE
00000fa6: DUP11
00000fa7: PUSH2 0x3066
00000faa: JUMP
00000fab: JUMPDEST
00000fac: POP
00000fad: PUSH2 0x0fc4
00000fb0: PUSH1 0x00
00000fb2: DUP1
00000fb3: MLOAD
00000fb4: PUSH1 0x20
00000fb6: PUSH2 0x5f1b
00000fb9: DUP4
00000fba: CODECOPY
00000fbb: DUP2
00000fbc: MLOAD
00000fbd: SWAP2
00000fbe: MSTORE
00000fbf: DUP10
00000fc0: PUSH2 0x3066
00000fc3: JUMP
00000fc4: JUMPDEST
00000fc5: POP
00000fc6: PUSH1 0x01
00000fc8: DUP1
00000fc9: SLOAD
00000fca: PUSH1 0x01
00000fcc: PUSH1 0x01
00000fce: PUSH1 0xa0
00000fd0: SHL
00000fd1: SUB
00000fd2: DUP1
00000fd3: DUP11
00000fd4: AND
00000fd5: PUSH1 0x01
00000fd7: PUSH1 0x01
00000fd9: PUSH1 0xa0
00000fdb: SHL
00000fdc: SUB
00000fdd: NOT
00000fde: SWAP3
00000fdf: DUP4
00000fe0: AND
00000fe1: OR
00000fe2: SWAP1
00000fe3: SWAP3
00000fe4: SSTORE
00000fe5: PUSH1 0x00
00000fe7: DUP1
00000fe8: SLOAD
00000fe9: SWAP3
00000fea: DUP10
00000feb: AND
00000fec: SWAP3
00000fed: SWAP1
00000fee: SWAP2
00000fef: AND
00000ff0: SWAP2
00000ff1: SWAP1
00000ff2: SWAP2
00000ff3: OR
00000ff4: SWAP1
00000ff5: SSTORE
00000ff6: DUP4
00000ff7: ISZERO
00000ff8: PUSH2 0x103b
00000ffb: JUMPI
00000ffc: DUP5
00000ffd: SLOAD
00000ffe: PUSH1 0xff
00001000: PUSH1 0x40
00001002: SHL
00001003: NOT
00001004: AND
00001005: DUP6
00001006: SSTORE
00001007: PUSH1 0x40
00001009: MLOAD
0000100a: PUSH1 0x01
0000100c: DUP2
0000100d: MSTORE
0000100e: PUSH32 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2
0000102f: SWAP1
00001030: PUSH1 0x20
00001032: ADD
00001033: PUSH1 0x40
00001035: MLOAD
00001036: DUP1
00001037: SWAP2
00001038: SUB
00001039: SWAP1
0000103a: LOG1
0000103b: JUMPDEST
0000103c: POP
0000103d: POP
0000103e: POP
0000103f: POP
00001040: POP
00001041: POP
00001042: POP
00001043: POP
00001044: POP
00001045: POP
00001046: JUMP
00001047: JUMPDEST
00001048: PUSH1 0x00
0000104a: DUP1
0000104b: MLOAD
0000104c: PUSH1 0x20
0000104e: PUSH2 0x5e5b
00001051: DUP4
00001052: CODECOPY
00001053: DUP2
00001054: MLOAD
00001055: SWAP2
00001056: MSTORE
00001057: PUSH2 0x105f
0000105a: DUP2
0000105b: PUSH2 0x2df4
0000105e: JUMP
0000105f: JUMPDEST
00001060: PUSH2 0x1067
00001063: PUSH2 0x2dfe
00001066: JUMP
00001067: JUMPDEST
00001068: PUSH2 0x106f
0000106b: PUSH2 0x30ab
0000106e: JUMP
0000106f: JUMPDEST
00001070: PUSH2 0x107b
00001073: DUP6
00001074: DUP6
00001075: DUP6
00001076: DUP6
00001077: PUSH2 0x30dc
0000107a: JUMP
0000107b: JUMPDEST
0000107c: PUSH2 0x1083
0000107f: PUSH2 0x2f5b
00001082: JUMP
00001083: JUMPDEST
00001084: POP
00001085: POP
00001086: POP
00001087: POP
00001088: POP
00001089: JUMP
0000108a: JUMPDEST
0000108b: PUSH1 0x00
0000108d: DUP1
0000108e: MLOAD
0000108f: PUSH1 0x20
00001091: PUSH2 0x5f1b
00001094: DUP4
00001095: CODECOPY
00001096: DUP2
00001097: MLOAD
00001098: SWAP2
00001099: MSTORE
0000109a: PUSH2 0x10a2
0000109d: DUP2
0000109e: PUSH2 0x2df4
000010a1: JUMP
000010a2: JUMPDEST
000010a3: PUSH1 0x01
000010a5: PUSH1 0x01
000010a7: PUSH1 0xa0
000010a9: SHL
000010aa: SUB
000010ab: DUP4
000010ac: AND
000010ad: PUSH1 0x00
000010af: DUP2
000010b0: DUP2
000010b1: MSTORE
000010b2: PUSH1 0x09
000010b4: PUSH1 0x20
000010b6: SWAP1
000010b7: DUP2
000010b8: MSTORE
000010b9: PUSH1 0x40
000010bb: SWAP2
000010bc: DUP3
000010bd: SWAP1
000010be: KECCAK256
000010bf: DUP1
000010c0: SLOAD
000010c1: PUSH1 0xff
000010c3: NOT
000010c4: AND
000010c5: DUP7
000010c6: ISZERO
000010c7: ISZERO
000010c8: SWAP1
000010c9: DUP2
000010ca: OR
000010cb: SWAP1
000010cc: SWAP2
000010cd: SSTORE
000010ce: DUP3
000010cf: MLOAD
000010d0: SWAP4
000010d1: DUP5
000010d2: MSTORE
000010d3: SWAP1
000010d4: DUP4
000010d5: ADD
000010d6: MSTORE
000010d7: PUSH32 0x9299a01726807acfc4969ccbddde85c26d94abbf47b4209c5c45c1a0db43123a
000010f8: SWAP2
000010f9: ADD
000010fa: JUMPDEST
000010fb: PUSH1 0x40
000010fd: MLOAD
000010fe: DUP1
000010ff: SWAP2
00001100: SUB
00001101: SWAP1
00001102: LOG1
00001103: POP
00001104: POP
00001105: POP
00001106: JUMP
00001107: JUMPDEST
00001108: PUSH1 0x00
0000110a: SWAP1
0000110b: DUP2
0000110c: MSTORE
0000110d: PUSH1 0x00
0000110f: DUP1
00001110: MLOAD
00001111: PUSH1 0x20
00001113: PUSH2 0x5edb
00001116: DUP4
00001117: CODECOPY
00001118: DUP2
00001119: MLOAD
0000111a: SWAP2
0000111b: MSTORE
0000111c: PUSH1 0x20
0000111e: MSTORE
0000111f: PUSH1 0x40
00001121: SWAP1
00001122: KECCAK256
00001123: PUSH1 0x01
00001125: ADD
00001126: SLOAD
00001127: SWAP1
00001128: JUMP
00001129: JUMPDEST
0000112a: PUSH1 0x00
0000112c: PUSH2 0x0bfd
0000112f: DUP3
00001130: PUSH2 0x2e48
00001133: JUMP
00001134: JUMPDEST
00001135: PUSH2 0x113d
00001138: DUP3
00001139: PUSH2 0x1107
0000113c: JUMP
0000113d: JUMPDEST
0000113e: PUSH2 0x1146
00001141: DUP2
00001142: PUSH2 0x2df4
00001145: JUMP
00001146: JUMPDEST
00001147: PUSH2 0x1150
0000114a: DUP4
0000114b: DUP4
0000114c: PUSH2 0x3066
0000114f: JUMP
00001150: JUMPDEST
00001151: POP
00001152: POP
00001153: POP
00001154: POP
00001155: JUMP
00001156: JUMPDEST
00001157: PUSH1 0x00
00001159: DUP1
0000115a: MLOAD
0000115b: PUSH1 0x20
0000115d: PUSH2 0x5f1b
00001160: DUP4
00001161: CODECOPY
00001162: DUP2
00001163: MLOAD
00001164: SWAP2
00001165: MSTORE
00001166: PUSH2 0x116e
00001169: DUP2
0000116a: PUSH2 0x2df4
0000116d: JUMP
0000116e: JUMPDEST
0000116f: DUP5
00001170: DUP5
00001171: GT
00001172: PUSH2 0x118e
00001175: JUMPI
00001176: PUSH1 0x40
00001178: MLOAD
00001179: PUSH4 0x440e807d
0000117e: PUSH1 0xe1
00001180: SHL
00001181: DUP2
00001182: MSTORE
00001183: PUSH1 0x04
00001185: ADD
00001186: PUSH1 0x40
00001188: MLOAD
00001189: DUP1
0000118a: SWAP2
0000118b: SUB
0000118c: SWAP1
0000118d: REVERT
0000118e: JUMPDEST
0000118f: PUSH2 0x1198
00001192: DUP6
00001193: DUP6
00001194: PUSH2 0x57aa
00001197: JUMP
00001198: JUMPDEST
00001199: DUP4
0000119a: GT
0000119b: ISZERO
0000119c: PUSH2 0x11b8
0000119f: JUMPI
000011a0: PUSH1 0x40
000011a2: MLOAD
000011a3: PUSH4 0x440e807d
000011a8: PUSH1 0xe1
000011aa: SHL
000011ab: DUP2
000011ac: MSTORE
000011ad: PUSH1 0x04
000011af: ADD
000011b0: PUSH1 0x40
000011b2: MLOAD
000011b3: DUP1
000011b4: SWAP2
000011b5: SUB
000011b6: SWAP1
000011b7: REVERT
000011b8: JUMPDEST
000011b9: DUP3
000011ba: PUSH1 0x00
000011bc: SUB
000011bd: PUSH2 0x11d9
000011c0: JUMPI
000011c1: PUSH1 0x40
000011c3: MLOAD
000011c4: PUSH4 0x440e807d
000011c9: PUSH1 0xe1
000011cb: SHL
000011cc: DUP2
000011cd: MSTORE
000011ce: PUSH1 0x04
000011d0: ADD
000011d1: PUSH1 0x40
000011d3: MLOAD
000011d4: DUP1
000011d5: SWAP2
000011d6: SUB
000011d7: SWAP1
000011d8: REVERT
000011d9: JUMPDEST
000011da: PUSH3 0x0186a0
000011de: DUP3
000011df: GT
000011e0: ISZERO
000011e1: PUSH2 0x11fd
000011e4: JUMPI
000011e5: PUSH1 0x40
000011e7: MLOAD
000011e8: PUSH4 0x0adad233
000011ed: PUSH1 0xe3
000011ef: SHL
000011f0: DUP2
000011f1: MSTORE
000011f2: PUSH1 0x04
000011f4: ADD
000011f5: PUSH1 0x40
000011f7: MLOAD
000011f8: DUP1
000011f9: SWAP2
000011fa: SUB
000011fb: SWAP1
000011fc: REVERT
000011fd: JUMPDEST
000011fe: PUSH1 0x01
00001200: PUSH1 0x01
00001202: PUSH1 0xa0
00001204: SHL
00001205: SUB
00001206: DUP8
00001207: AND
00001208: PUSH1 0x00
0000120a: SWAP1
0000120b: DUP2
0000120c: MSTORE
0000120d: PUSH1 0x02
0000120f: PUSH1 0x20
00001211: SWAP1
00001212: DUP2
00001213: MSTORE
00001214: PUSH1 0x40
00001216: DUP1
00001217: DUP4
00001218: KECCAK256
00001219: DUP1
0000121a: SLOAD
0000121b: PUSH1 0xff
0000121d: NOT
0000121e: AND
0000121f: DUP11
00001220: ISZERO
00001221: ISZERO
00001222: OR
00001223: SWAP1
00001224: SSTORE
00001225: PUSH1 0x03
00001227: SWAP1
00001228: SWAP2
00001229: MSTORE
0000122a: DUP2
0000122b: KECCAK256
0000122c: SLOAD
0000122d: PUSH1 0xff
0000122f: AND
00001230: SWAP1
00001231: SUB
00001232: PUSH2 0x12c2
00001235: JUMPI
00001236: DUP7
00001237: PUSH1 0x01
00001239: PUSH1 0x01
0000123b: PUSH1 0xa0
0000123d: SHL
0000123e: SUB
0000123f: AND
00001240: PUSH4 0x313ce567
00001245: PUSH1 0x40
00001247: MLOAD
00001248: DUP2
00001249: PUSH4 0xffffffff
0000124e: AND
0000124f: PUSH1 0xe0
00001251: SHL
00001252: DUP2
00001253: MSTORE
00001254: PUSH1 0x04
00001256: ADD
00001257: PUSH1 0x20
00001259: PUSH1 0x40
0000125b: MLOAD
0000125c: DUP1
0000125d: DUP4
0000125e: SUB
0000125f: DUP2
00001260: DUP7
00001261: GAS
00001262: STATICCALL
00001263: ISZERO
00001264: DUP1
00001265: ISZERO
00001266: PUSH2 0x1273
00001269: JUMPI
0000126a: RETURNDATASIZE
0000126b: PUSH1 0x00
0000126d: DUP1
0000126e: RETURNDATACOPY
0000126f: RETURNDATASIZE
00001270: PUSH1 0x00
00001272: REVERT
00001273: JUMPDEST
00001274: POP
00001275: POP
00001276: POP
00001277: POP
00001278: PUSH1 0x40
0000127a: MLOAD
0000127b: RETURNDATASIZE
0000127c: PUSH1 0x1f
0000127e: NOT
0000127f: PUSH1 0x1f
00001281: DUP3
00001282: ADD
00001283: AND
00001284: DUP3
00001285: ADD
00001286: DUP1
00001287: PUSH1 0x40
00001289: MSTORE
0000128a: POP
0000128b: DUP2
0000128c: ADD
0000128d: SWAP1
0000128e: PUSH2 0x1297
00001291: SWAP2
00001292: SWAP1
00001293: PUSH2 0x57cc
00001296: JUMP
00001297: JUMPDEST
00001298: PUSH1 0x01
0000129a: PUSH1 0x01
0000129c: PUSH1 0xa0
0000129e: SHL
0000129f: SUB
000012a0: DUP9
000012a1: AND
000012a2: PUSH1 0x00
000012a4: SWAP1
000012a5: DUP2
000012a6: MSTORE
000012a7: PUSH1 0x03
000012a9: PUSH1 0x20
000012ab: MSTORE
000012ac: PUSH1 0x40
000012ae: SWAP1
000012af: KECCAK256
000012b0: DUP1
000012b1: SLOAD
000012b2: PUSH1 0xff
000012b4: NOT
000012b5: AND
000012b6: PUSH1 0xff
000012b8: SWAP3
000012b9: SWAP1
000012ba: SWAP3
000012bb: AND
000012bc: SWAP2
000012bd: SWAP1
000012be: SWAP2
000012bf: OR
000012c0: SWAP1
000012c1: SSTORE
000012c2: JUMPDEST
000012c3: PUSH1 0x40
000012c5: DUP1
000012c6: MLOAD
000012c7: PUSH1 0x60
000012c9: DUP1
000012ca: DUP3
000012cb: ADD
000012cc: DUP4
000012cd: MSTORE
000012ce: DUP8
000012cf: DUP3
000012d0: MSTORE
000012d1: PUSH1 0x20
000012d3: DUP1
000012d4: DUP4
000012d5: ADD
000012d6: DUP9
000012d7: DUP2
000012d8: MSTORE
000012d9: DUP4
000012da: DUP6
000012db: ADD
000012dc: DUP9
000012dd: DUP2
000012de: MSTORE
000012df: PUSH1 0x01
000012e1: PUSH1 0x01
000012e3: PUSH1 0xa0
000012e5: SHL
000012e6: SUB
000012e7: DUP14
000012e8: AND
000012e9: PUSH1 0x00
000012eb: DUP2
000012ec: DUP2
000012ed: MSTORE
000012ee: PUSH1 0x04
000012f0: DUP6
000012f1: MSTORE
000012f2: DUP8
000012f3: DUP2
000012f4: KECCAK256
000012f5: SWAP7
000012f6: MLOAD
000012f7: DUP8
000012f8: SSTORE
000012f9: SWAP3
000012fa: MLOAD
000012fb: PUSH1 0x01
000012fd: DUP8
000012fe: ADD
000012ff: SSTORE
00001300: SWAP1
00001301: MLOAD
00001302: PUSH1 0x02
00001304: SWAP1
00001305: SWAP6
00001306: ADD
00001307: SWAP5
00001308: SWAP1
00001309: SWAP5
0000130a: SSTORE
0000130b: PUSH1 0x08
0000130d: DUP3
0000130e: MSTORE
0000130f: DUP5
00001310: DUP2
00001311: KECCAK256
00001312: DUP8
00001313: SWAP1
00001314: SSTORE
00001315: PUSH1 0x03
00001317: DUP3
00001318: MSTORE
00001319: DUP5
0000131a: SWAP1
0000131b: KECCAK256
0000131c: SLOAD
0000131d: DUP5
0000131e: MLOAD
0000131f: DUP12
00001320: ISZERO
00001321: ISZERO
00001322: DUP2
00001323: MSTORE
00001324: PUSH1 0xff
00001326: SWAP1
00001327: SWAP2
00001328: AND
00001329: SWAP2
0000132a: DUP2
0000132b: ADD
0000132c: SWAP2
0000132d: SWAP1
0000132e: SWAP2
0000132f: MSTORE
00001330: SWAP3
00001331: DUP4
00001332: ADD
00001333: DUP9
00001334: SWAP1
00001335: MSTORE
00001336: DUP3
00001337: ADD
00001338: DUP7
00001339: SWAP1
0000133a: MSTORE
0000133b: PUSH1 0x80
0000133d: DUP3
0000133e: ADD
0000133f: DUP6
00001340: SWAP1
00001341: MSTORE
00001342: PUSH1 0xa0
00001344: DUP3
00001345: ADD
00001346: DUP5
00001347: SWAP1
00001348: MSTORE
00001349: SWAP1
0000134a: PUSH32 0x41f8285f7881a89a0b491804ce80a8ea2c35c95afb9e0c0197c2618e54c5c983
0000136b: SWAP1
0000136c: PUSH1 0xc0
0000136e: ADD
0000136f: PUSH1 0x40
00001371: MLOAD
00001372: DUP1
00001373: SWAP2
00001374: SUB
00001375: SWAP1
00001376: LOG2
00001377: POP
00001378: POP
00001379: POP
0000137a: POP
0000137b: POP
0000137c: POP
0000137d: POP
0000137e: JUMP
0000137f: JUMPDEST
00001380: PUSH2 0x1387
00001383: PUSH2 0x2dfe
00001386: JUMP
00001387: JUMPDEST
00001388: PUSH2 0x138f
0000138b: PUSH2 0x30ab
0000138e: JUMP
0000138f: JUMPDEST
00001390: DUP1
00001391: CALLVALUE
00001392: EQ
00001393: PUSH2 0x13b8
00001396: JUMPI
00001397: PUSH1 0x40
00001399: MLOAD
0000139a: PUSH4 0xe1065931
0000139f: PUSH1 0xe0
000013a1: SHL
000013a2: DUP2
000013a3: MSTORE
000013a4: PUSH1 0x04
000013a6: DUP2
000013a7: ADD
000013a8: DUP3
000013a9: SWAP1
000013aa: MSTORE
000013ab: CALLVALUE
000013ac: PUSH1 0x24
000013ae: DUP3
000013af: ADD
000013b0: MSTORE
000013b1: PUSH1 0x44
000013b3: ADD
000013b4: PUSH2 0x0d19
000013b7: JUMP
000013b8: JUMPDEST
000013b9: PUSH1 0x00
000013bb: PUSH2 0x13ca
000013be: PUSH1 0x40
000013c0: DUP7
000013c1: ADD
000013c2: PUSH1 0x20
000013c4: DUP8
000013c5: ADD
000013c6: PUSH2 0x4e37
000013c9: JUMP
000013ca: JUMPDEST
000013cb: PUSH1 0x40
000013cd: MLOAD
000013ce: PUSH4 0x70a08231
000013d3: PUSH1 0xe0
000013d5: SHL
000013d6: DUP2
000013d7: MSTORE
000013d8: ADDRESS
000013d9: PUSH1 0x04
000013db: DUP3
000013dc: ADD
000013dd: MSTORE
000013de: PUSH1 0x01
000013e0: PUSH1 0x01
000013e2: PUSH1 0xa0
000013e4: SHL
000013e5: SUB
000013e6: SWAP2
000013e7: SWAP1
000013e8: SWAP2
000013e9: AND
000013ea: SWAP1
000013eb: PUSH4 0x70a08231
000013f0: SWAP1
000013f1: PUSH1 0x24
000013f3: ADD
000013f4: PUSH1 0x20
000013f6: PUSH1 0x40
000013f8: MLOAD
000013f9: DUP1
000013fa: DUP4
000013fb: SUB
000013fc: DUP2
000013fd: DUP7
000013fe: GAS
000013ff: STATICCALL
00001400: ISZERO
00001401: DUP1
00001402: ISZERO
00001403: PUSH2 0x1410
00001406: JUMPI
00001407: RETURNDATASIZE
00001408: PUSH1 0x00
0000140a: DUP1
0000140b: RETURNDATACOPY
0000140c: RETURNDATASIZE
0000140d: PUSH1 0x00
0000140f: REVERT
00001410: JUMPDEST
00001411: POP
00001412: POP
00001413: POP
00001414: POP
00001415: PUSH1 0x40
00001417: MLOAD
00001418: RETURNDATASIZE
00001419: PUSH1 0x1f
0000141b: NOT
0000141c: PUSH1 0x1f
0000141e: DUP3
0000141f: ADD
00001420: AND
00001421: DUP3
00001422: ADD
00001423: DUP1
00001424: PUSH1 0x40
00001426: MSTORE
00001427: POP
00001428: DUP2
00001429: ADD
0000142a: SWAP1
0000142b: PUSH2 0x1434
0000142e: SWAP2
0000142f: SWAP1
00001430: PUSH2 0x57e9
00001433: JUMP
00001434: JUMPDEST
00001435: SWAP1
00001436: POP
00001437: PUSH2 0x145e
0000143a: CALLER
0000143b: ADDRESS
0000143c: DUP8
0000143d: CALLDATALOAD
0000143e: PUSH2 0x144d
00001441: PUSH1 0x40
00001443: DUP11
00001444: ADD
00001445: PUSH1 0x20
00001447: DUP12
00001448: ADD
00001449: PUSH2 0x4e37
0000144c: JUMP
0000144d: JUMPDEST
0000144e: PUSH1 0x01
00001450: PUSH1 0x01
00001452: PUSH1 0xa0
00001454: SHL
00001455: SUB
00001456: AND
00001457: SWAP3
00001458: SWAP2
00001459: SWAP1
0000145a: PUSH2 0x3165
0000145d: JUMP
0000145e: JUMPDEST
0000145f: PUSH2 0x1479
00001462: PUSH2 0x1471
00001465: PUSH1 0x40
00001467: DUP8
00001468: ADD
00001469: PUSH1 0x20
0000146b: DUP9
0000146c: ADD
0000146d: PUSH2 0x4e37
00001470: JUMP
00001471: JUMPDEST
00001472: DUP3
00001473: DUP8
00001474: CALLDATALOAD
00001475: PUSH2 0x319e
00001478: JUMP
00001479: JUMPDEST
0000147a: PUSH2 0x1486
0000147d: DUP6
0000147e: DUP6
0000147f: DUP6
00001480: CALLER
00001481: DUP7
00001482: PUSH2 0x3239
00001485: JUMP
00001486: JUMPDEST
00001487: POP
00001488: PUSH2 0x1150
0000148b: PUSH2 0x2f5b
0000148e: JUMP
0000148f: JUMPDEST
00001490: PUSH1 0x01
00001492: PUSH1 0x01
00001494: PUSH1 0xa0
00001496: SHL
00001497: SUB
00001498: DUP2
00001499: AND
0000149a: CALLER
0000149b: EQ
0000149c: PUSH2 0x14b8
0000149f: JUMPI
000014a0: PUSH1 0x40
000014a2: MLOAD
000014a3: PUSH4 0x334bd919
000014a8: PUSH1 0xe1
000014aa: SHL
000014ab: DUP2
000014ac: MSTORE
000014ad: PUSH1 0x04
000014af: ADD
000014b0: PUSH1 0x40
000014b2: MLOAD
000014b3: DUP1
000014b4: SWAP2
000014b5: SUB
000014b6: SWAP1
000014b7: REVERT
000014b8: JUMPDEST
000014b9: PUSH2 0x0cae
000014bc: DUP3
000014bd: DUP3
000014be: PUSH2 0x3251
000014c1: JUMP
000014c2: JUMPDEST
000014c3: PUSH1 0x00
000014c5: PUSH2 0x14cd
000014c8: DUP2
000014c9: PUSH2 0x2df4
000014cc: JUMP
000014cd: JUMPDEST
000014ce: PUSH2 0x14d5
000014d1: PUSH2 0x2dfe
000014d4: JUMP
000014d5: JUMPDEST
000014d6: PUSH1 0x40
000014d8: MLOAD
000014d9: PUSH4 0x70a08231
000014de: PUSH1 0xe0
000014e0: SHL
000014e1: DUP2
000014e2: MSTORE
000014e3: ADDRESS
000014e4: PUSH1 0x04
000014e6: DUP3
000014e7: ADD
000014e8: MSTORE
000014e9: PUSH1 0x00
000014eb: SWAP1
000014ec: PUSH1 0x01
000014ee: PUSH1 0x01
000014f0: PUSH1 0xa0
000014f2: SHL
000014f3: SUB
000014f4: DUP6
000014f5: AND
000014f6: SWAP1
000014f7: PUSH4 0x70a08231
000014fc: SWAP1
000014fd: PUSH1 0x24
000014ff: ADD
00001500: PUSH1 0x20
00001502: PUSH1 0x40
00001504: MLOAD
00001505: DUP1
00001506: DUP4
00001507: SUB
00001508: DUP2
00001509: DUP7
0000150a: GAS
0000150b: STATICCALL
0000150c: ISZERO
0000150d: DUP1
0000150e: ISZERO
0000150f: PUSH2 0x151c
00001512: JUMPI
00001513: RETURNDATASIZE
00001514: PUSH1 0x00
00001516: DUP1
00001517: RETURNDATACOPY
00001518: RETURNDATASIZE
00001519: PUSH1 0x00
0000151b: REVERT
0000151c: JUMPDEST
0000151d: POP
0000151e: POP
0000151f: POP
00001520: POP
00001521: PUSH1 0x40
00001523: MLOAD
00001524: RETURNDATASIZE
00001525: PUSH1 0x1f
00001527: NOT
00001528: PUSH1 0x1f
0000152a: DUP3
0000152b: ADD
0000152c: AND
0000152d: DUP3
0000152e: ADD
0000152f: DUP1
00001530: PUSH1 0x40
00001532: MSTORE
00001533: POP
00001534: DUP2
00001535: ADD
00001536: SWAP1
00001537: PUSH2 0x1540
0000153a: SWAP2
0000153b: SWAP1
0000153c: PUSH2 0x57e9
0000153f: JUMP
00001540: JUMPDEST
00001541: SWAP1
00001542: POP
00001543: PUSH2 0x1557
00001546: PUSH1 0x01
00001548: PUSH1 0x01
0000154a: PUSH1 0xa0
0000154c: SHL
0000154d: SUB
0000154e: DUP6
0000154f: AND
00001550: CALLER
00001551: ADDRESS
00001552: DUP7
00001553: PUSH2 0x3165
00001556: JUMP
00001557: JUMPDEST
00001558: PUSH2 0x1562
0000155b: DUP5
0000155c: DUP3
0000155d: DUP6
0000155e: PUSH2 0x319e
00001561: JUMP
00001562: JUMPDEST
00001563: PUSH1 0x40
00001565: DUP1
00001566: MLOAD
00001567: PUSH1 0x01
00001569: PUSH1 0x01
0000156b: PUSH1 0xa0
0000156d: SHL
0000156e: SUB
0000156f: DUP7
00001570: AND
00001571: DUP2
00001572: MSTORE
00001573: PUSH1 0x20
00001575: DUP2
00001576: ADD
00001577: DUP6
00001578: SWAP1
00001579: MSTORE
0000157a: CALLER
0000157b: SWAP2
0000157c: DUP2
0000157d: ADD
0000157e: SWAP2
0000157f: SWAP1
00001580: SWAP2
00001581: MSTORE
00001582: PUSH32 0x60dcae248663be700e577f981d2ef1ce566cffc9a956e7098e1d185059644951
000015a3: SWAP1
000015a4: PUSH1 0x60
000015a6: ADD
000015a7: PUSH2 0x0c9d
000015aa: JUMP
000015ab: JUMPDEST
000015ac: PUSH1 0x40
000015ae: MLOAD
000015af: PUSH4 0x70a08231
000015b4: PUSH1 0xe0
000015b6: SHL
000015b7: DUP2
000015b8: MSTORE
000015b9: ADDRESS
000015ba: PUSH1 0x04
000015bc: DUP3
000015bd: ADD
000015be: MSTORE
000015bf: PUSH1 0x00
000015c1: SWAP1
000015c2: PUSH1 0x01
000015c4: PUSH1 0x01
000015c6: PUSH1 0xa0
000015c8: SHL
000015c9: SUB
000015ca: DUP4
000015cb: AND
000015cc: SWAP1
000015cd: PUSH4 0x70a08231
000015d2: SWAP1
000015d3: PUSH1 0x24
000015d5: ADD
000015d6: PUSH1 0x20
000015d8: PUSH1 0x40
000015da: MLOAD
000015db: DUP1
000015dc: DUP4
000015dd: SUB
000015de: DUP2
000015df: DUP7
000015e0: GAS
000015e1: STATICCALL
000015e2: ISZERO
000015e3: DUP1
000015e4: ISZERO
000015e5: PUSH2 0x15f2
000015e8: JUMPI
000015e9: RETURNDATASIZE
000015ea: PUSH1 0x00
000015ec: DUP1
000015ed: RETURNDATACOPY
000015ee: RETURNDATASIZE
000015ef: PUSH1 0x00
000015f1: REVERT
000015f2: JUMPDEST
000015f3: POP
000015f4: POP
000015f5: POP
000015f6: POP
000015f7: PUSH1 0x40
000015f9: MLOAD
000015fa: RETURNDATASIZE
000015fb: PUSH1 0x1f
000015fd: NOT
000015fe: PUSH1 0x1f
00001600: DUP3
00001601: ADD
00001602: AND
00001603: DUP3
00001604: ADD
00001605: DUP1
00001606: PUSH1 0x40
00001608: MSTORE
00001609: POP
0000160a: DUP2
0000160b: ADD
0000160c: SWAP1
0000160d: PUSH2 0x0bfd
00001610: SWAP2
00001611: SWAP1
00001612: PUSH2 0x57e9
00001615: JUMP
00001616: JUMPDEST
00001617: PUSH32 0x65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a
00001638: PUSH2 0x1640
0000163b: DUP2
0000163c: PUSH2 0x2df4
0000163f: JUMP
00001640: JUMPDEST
00001641: PUSH2 0x1648
00001644: PUSH2 0x328d
00001647: JUMP
00001648: JUMPDEST
00001649: POP
0000164a: JUMP
0000164b: JUMPDEST
0000164c: PUSH1 0x00
0000164e: DUP1
0000164f: MLOAD
00001650: PUSH1 0x20
00001652: PUSH2 0x5e7b
00001655: DUP4
00001656: CODECOPY
00001657: DUP2
00001658: MLOAD
00001659: SWAP2
0000165a: MSTORE
0000165b: PUSH2 0x1663
0000165e: DUP2
0000165f: PUSH2 0x2df4
00001662: JUMP
00001663: JUMPDEST
00001664: PUSH2 0x166b
00001667: PUSH2 0x2dfe
0000166a: JUMP
0000166b: JUMPDEST
0000166c: PUSH2 0x1673
0000166f: PUSH2 0x30ab
00001672: JUMP
00001673: JUMPDEST
00001674: PUSH1 0x00
00001676: PUSH32 0x862b3192de3d9beb4b60d468e7d9766ff6207a2b80f3f1c0c0456f09ec1d610c
00001697: DUP7
00001698: CALLDATALOAD
00001699: PUSH2 0x16a8
0000169c: PUSH1 0x40
0000169e: DUP10
0000169f: ADD
000016a0: PUSH1 0x20
000016a2: DUP11
000016a3: ADD
000016a4: PUSH2 0x4e37
000016a7: JUMP
000016a8: JUMPDEST
000016a9: PUSH2 0x16b8
000016ac: PUSH1 0x60
000016ae: DUP11
000016af: ADD
000016b0: PUSH1 0x40
000016b2: DUP12
000016b3: ADD
000016b4: PUSH2 0x4e37
000016b7: JUMP
000016b8: JUMPDEST
000016b9: PUSH2 0x16c8
000016bc: PUSH1 0xa0
000016be: DUP12
000016bf: ADD
000016c0: PUSH1 0x80
000016c2: DUP13
000016c3: ADD
000016c4: PUSH2 0x4e37
000016c7: JUMP
000016c8: JUMPDEST
000016c9: PUSH2 0x16d8
000016cc: PUSH1 0xc0
000016ce: DUP13
000016cf: ADD
000016d0: PUSH1 0xa0
000016d2: DUP14
000016d3: ADD
000016d4: PUSH2 0x5802
000016d7: JUMP
000016d8: JUMPDEST
000016d9: PUSH2 0x16e5
000016dc: PUSH1 0x20
000016de: DUP13
000016df: ADD
000016e0: DUP13
000016e1: PUSH2 0x4e37
000016e4: JUMP
000016e5: JUMPDEST
000016e6: DUP13
000016e7: PUSH1 0xc0
000016e9: ADD
000016ea: CALLDATALOAD
000016eb: DUP13
000016ec: PUSH1 0x20
000016ee: ADD
000016ef: CALLDATALOAD
000016f0: PUSH1 0x40
000016f2: MLOAD
000016f3: PUSH1 0x20
000016f5: ADD
000016f6: PUSH2 0x1707
000016f9: SWAP10
000016fa: SWAP9
000016fb: SWAP8
000016fc: SWAP7
000016fd: SWAP6
000016fe: SWAP5
000016ff: SWAP4
00001700: SWAP3
00001701: SWAP2
00001702: SWAP1
00001703: PUSH2 0x581d
00001706: JUMP
00001707: JUMPDEST
00001708: PUSH1 0x40
0000170a: MLOAD
0000170b: PUSH1 0x20
0000170d: DUP2
0000170e: DUP4
0000170f: SUB
00001710: SUB
00001711: DUP2
00001712: MSTORE
00001713: SWAP1
00001714: PUSH1 0x40
00001716: MSTORE
00001717: DUP1
00001718: MLOAD
00001719: SWAP1
0000171a: PUSH1 0x20
0000171c: ADD
0000171d: KECCAK256
0000171e: SWAP1
0000171f: POP
00001720: PUSH1 0x00
00001722: PUSH2 0x1774
00001725: PUSH2 0x172d
00001728: DUP4
00001729: PUSH2 0x32ed
0000172c: JUMP
0000172d: JUMPDEST
0000172e: PUSH2 0x173a
00001731: PUSH1 0x40
00001733: DUP10
00001734: ADD
00001735: DUP10
00001736: PUSH2 0x5870
00001739: JUMP
0000173a: JUMPDEST
0000173b: DUP1
0000173c: DUP1
0000173d: PUSH1 0x1f
0000173f: ADD
00001740: PUSH1 0x20
00001742: DUP1
00001743: SWAP2
00001744: DIV
00001745: MUL
00001746: PUSH1 0x20
00001748: ADD
00001749: PUSH1 0x40
0000174b: MLOAD
0000174c: SWAP1
0000174d: DUP2
0000174e: ADD
0000174f: PUSH1 0x40
00001751: MSTORE
00001752: DUP1
00001753: SWAP4
00001754: SWAP3
00001755: SWAP2
00001756: SWAP1
00001757: DUP2
00001758: DUP2
00001759: MSTORE
0000175a: PUSH1 0x20
0000175c: ADD
0000175d: DUP4
0000175e: DUP4
0000175f: DUP1
00001760: DUP3
00001761: DUP5
00001762: CALLDATACOPY
00001763: PUSH1 0x00
00001765: SWAP3
00001766: ADD
00001767: SWAP2
00001768: SWAP1
00001769: SWAP2
0000176a: MSTORE
0000176b: POP
0000176c: PUSH2 0x331a
0000176f: SWAP3
00001770: POP
00001771: POP
00001772: POP
00001773: JUMP
00001774: JUMPDEST
00001775: SWAP1
00001776: POP
00001777: PUSH2 0x1783
0000177a: PUSH1 0x20
0000177c: DUP8
0000177d: ADD
0000177e: DUP8
0000177f: PUSH2 0x4e37
00001782: JUMP
00001783: JUMPDEST
00001784: PUSH1 0x01
00001786: PUSH1 0x01
00001788: PUSH1 0xa0
0000178a: SHL
0000178b: SUB
0000178c: AND
0000178d: DUP2
0000178e: PUSH1 0x01
00001790: PUSH1 0x01
00001792: PUSH1 0xa0
00001794: SHL
00001795: SUB
00001796: AND
00001797: EQ
00001798: PUSH2 0x17b4
0000179b: JUMPI
0000179c: PUSH1 0x40
0000179e: MLOAD
0000179f: PUSH4 0x8baa579f
000017a4: PUSH1 0xe0
000017a6: SHL
000017a7: DUP2
000017a8: MSTORE
000017a9: PUSH1 0x04
000017ab: ADD
000017ac: PUSH1 0x40
000017ae: MLOAD
000017af: DUP1
000017b0: SWAP2
000017b1: SUB
000017b2: SWAP1
000017b3: REVERT
000017b4: JUMPDEST
000017b5: PUSH1 0x00
000017b7: PUSH2 0x17c5
000017ba: PUSH1 0x20
000017bc: DUP9
000017bd: ADD
000017be: CALLDATALOAD
000017bf: DUP10
000017c0: CALLDATALOAD
000017c1: PUSH2 0x58b6
000017c4: JUMP
000017c5: JUMPDEST
000017c6: SWAP1
000017c7: POP
000017c8: PUSH1 0x00
000017ca: PUSH2 0x17d9
000017cd: PUSH1 0x40
000017cf: DUP11
000017d0: ADD
000017d1: PUSH1 0x20
000017d3: DUP12
000017d4: ADD
000017d5: PUSH2 0x4e37
000017d8: JUMP
000017d9: JUMPDEST
000017da: PUSH1 0x40
000017dc: MLOAD
000017dd: PUSH4 0x70a08231
000017e2: PUSH1 0xe0
000017e4: SHL
000017e5: DUP2
000017e6: MSTORE
000017e7: ADDRESS
000017e8: PUSH1 0x04
000017ea: DUP3
000017eb: ADD
000017ec: MSTORE
000017ed: PUSH1 0x01
000017ef: PUSH1 0x01
000017f1: PUSH1 0xa0
000017f3: SHL
000017f4: SUB
000017f5: SWAP2
000017f6: SWAP1
000017f7: SWAP2
000017f8: AND
000017f9: SWAP1
000017fa: PUSH4 0x70a08231
000017ff: SWAP1
00001800: PUSH1 0x24
00001802: ADD
00001803: PUSH1 0x20
00001805: PUSH1 0x40
00001807: MLOAD
00001808: DUP1
00001809: DUP4
0000180a: SUB
0000180b: DUP2
0000180c: DUP7
0000180d: GAS
0000180e: STATICCALL
0000180f: ISZERO
00001810: DUP1
00001811: ISZERO
00001812: PUSH2 0x181f
00001815: JUMPI
00001816: RETURNDATASIZE
00001817: PUSH1 0x00
00001819: DUP1
0000181a: RETURNDATACOPY
0000181b: RETURNDATASIZE
0000181c: PUSH1 0x00
0000181e: REVERT
0000181f: JUMPDEST
00001820: POP
00001821: POP
00001822: POP
00001823: POP
00001824: PUSH1 0x40
00001826: MLOAD
00001827: RETURNDATASIZE
00001828: PUSH1 0x1f
0000182a: NOT
0000182b: PUSH1 0x1f
0000182d: DUP3
0000182e: ADD
0000182f: AND
00001830: DUP3
00001831: ADD
00001832: DUP1
00001833: PUSH1 0x40
00001835: MSTORE
00001836: POP
00001837: DUP2
00001838: ADD
00001839: SWAP1
0000183a: PUSH2 0x1843
0000183d: SWAP2
0000183e: SWAP1
0000183f: PUSH2 0x57e9
00001842: JUMP
00001843: JUMPDEST
00001844: SWAP1
00001845: POP
00001846: PUSH2 0x1867
00001849: PUSH2 0x1855
0000184c: PUSH1 0x20
0000184e: DUP11
0000184f: ADD
00001850: DUP11
00001851: PUSH2 0x4e37
00001854: JUMP
00001855: JUMPDEST
00001856: ADDRESS
00001857: DUP5
00001858: PUSH2 0x144d
0000185b: PUSH1 0x40
0000185d: DUP15
0000185e: ADD
0000185f: PUSH1 0x20
00001861: DUP16
00001862: ADD
00001863: PUSH2 0x4e37
00001866: JUMP
00001867: JUMPDEST
00001868: PUSH2 0x1881
0000186b: PUSH2 0x187a
0000186e: PUSH1 0x40
00001870: DUP12
00001871: ADD
00001872: PUSH1 0x20
00001874: DUP13
00001875: ADD
00001876: PUSH2 0x4e37
00001879: JUMP
0000187a: JUMPDEST
0000187b: DUP3
0000187c: DUP5
0000187d: PUSH2 0x319e
00001880: JUMP
00001881: JUMPDEST
00001882: DUP8
00001883: PUSH1 0x20
00001885: ADD
00001886: CALLDATALOAD
00001887: PUSH1 0x0a
00001889: PUSH1 0x00
0000188b: DUP12
0000188c: PUSH1 0x20
0000188e: ADD
0000188f: PUSH1 0x20
00001891: DUP2
00001892: ADD
00001893: SWAP1
00001894: PUSH2 0x189d
00001897: SWAP2
00001898: SWAP1
00001899: PUSH2 0x4e37
0000189c: JUMP
0000189d: JUMPDEST
0000189e: PUSH1 0x01
000018a0: PUSH1 0x01
000018a2: PUSH1 0xa0
000018a4: SHL
000018a5: SUB
000018a6: AND
000018a7: PUSH1 0x01
000018a9: PUSH1 0x01
000018ab: PUSH1 0xa0
000018ad: SHL
000018ae: SUB
000018af: AND
000018b0: DUP2
000018b1: MSTORE
000018b2: PUSH1 0x20
000018b4: ADD
000018b5: SWAP1
000018b6: DUP2
000018b7: MSTORE
000018b8: PUSH1 0x20
000018ba: ADD
000018bb: PUSH1 0x00
000018bd: KECCAK256
000018be: PUSH1 0x00
000018c0: DUP3
000018c1: DUP3
000018c2: SLOAD
000018c3: PUSH2 0x18cc
000018c6: SWAP2
000018c7: SWAP1
000018c8: PUSH2 0x58b6
000018cb: JUMP
000018cc: JUMPDEST
000018cd: SWAP1
000018ce: SWAP2
000018cf: SSTORE
000018d0: POP
000018d1: PUSH2 0x18ea
000018d4: SWAP1
000018d5: POP
000018d6: DUP10
000018d7: DUP9
000018d8: DUP9
000018d9: PUSH2 0x18e5
000018dc: PUSH1 0x20
000018de: DUP14
000018df: ADD
000018e0: DUP14
000018e1: PUSH2 0x4e37
000018e4: JUMP
000018e5: JUMPDEST
000018e6: PUSH2 0x3344
000018e9: JUMP
000018ea: JUMPDEST
000018eb: POP
000018ec: POP
000018ed: POP
000018ee: POP
000018ef: PUSH2 0x1083
000018f2: PUSH2 0x2f5b
000018f5: JUMP
000018f6: JUMPDEST
000018f7: PUSH2 0x18fe
000018fa: PUSH2 0x335c
000018fd: JUMP
000018fe: JUMPDEST
000018ff: PUSH2 0x1907
00001902: DUP3
00001903: PUSH2 0x3401
00001906: JUMP
00001907: JUMPDEST
00001908: PUSH2 0x1911
0000190b: DUP3
0000190c: DUP3
0000190d: PUSH2 0x342b
00001910: JUMP
00001911: JUMPDEST
00001912: POP
00001913: POP
00001914: JUMP
00001915: JUMPDEST
00001916: PUSH1 0x00
00001918: PUSH2 0x191f
0000191b: PUSH2 0x34e8
0000191e: JUMP
0000191f: JUMPDEST
00001920: POP
00001921: PUSH1 0x00
00001923: DUP1
00001924: MLOAD
00001925: PUSH1 0x20
00001927: PUSH2 0x5ebb
0000192a: DUP4
0000192b: CODECOPY
0000192c: DUP2
0000192d: MLOAD
0000192e: SWAP2
0000192f: MSTORE
00001930: SWAP1
00001931: JUMP
00001932: JUMPDEST
00001933: PUSH1 0x00
00001935: DUP1
00001936: MLOAD
00001937: PUSH1 0x20
00001939: PUSH2 0x5e5b
0000193c: DUP4
0000193d: CODECOPY
0000193e: DUP2
0000193f: MLOAD
00001940: SWAP2
00001941: MSTORE
00001942: PUSH2 0x194a
00001945: DUP2
00001946: PUSH2 0x2df4
00001949: JUMP
0000194a: JUMPDEST
0000194b: PUSH2 0x1952
0000194e: PUSH2 0x2dfe
00001951: JUMP
00001952: JUMPDEST
00001953: PUSH2 0x195a
00001956: PUSH2 0x30ab
00001959: JUMP
0000195a: JUMPDEST
0000195b: PUSH2 0x1965
0000195e: DUP5
0000195f: DUP5
00001960: DUP5
00001961: PUSH2 0x3531
00001964: JUMP
00001965: JUMPDEST
00001966: PUSH2 0x1150
00001969: PUSH2 0x2f5b
0000196c: JUMP
0000196d: JUMPDEST
0000196e: PUSH1 0x00
00001970: DUP1
00001971: MLOAD
00001972: PUSH1 0x20
00001974: PUSH2 0x5e5b
00001977: DUP4
00001978: CODECOPY
00001979: DUP2
0000197a: MLOAD
0000197b: SWAP2
0000197c: MSTORE
0000197d: PUSH2 0x1985
00001980: DUP2
00001981: PUSH2 0x2df4
00001984: JUMP
00001985: JUMPDEST
00001986: PUSH2 0x198d
00001989: PUSH2 0x2dfe
0000198c: JUMP
0000198d: JUMPDEST
0000198e: PUSH2 0x1995
00001991: PUSH2 0x30ab
00001994: JUMP
00001995: JUMPDEST
00001996: PUSH2 0x107b
00001999: DUP6
0000199a: DUP6
0000199b: DUP6
0000199c: DUP6
0000199d: PUSH2 0x3582
000019a0: JUMP
000019a1: JUMPDEST
000019a2: PUSH32 0x65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a
000019c3: PUSH2 0x19cb
000019c6: DUP2
000019c7: PUSH2 0x2df4
000019ca: JUMP
000019cb: JUMPDEST
000019cc: PUSH2 0x1648
000019cf: PUSH2 0x35fc
000019d2: JUMP
000019d3: JUMPDEST
000019d4: PUSH1 0x00
000019d6: PUSH1 0x60
000019d8: DUP1
000019d9: DUP3
000019da: DUP1
000019db: DUP1
000019dc: DUP4
000019dd: DUP2
000019de: PUSH1 0x00
000019e0: DUP1
000019e1: MLOAD
000019e2: PUSH1 0x20
000019e4: PUSH2 0x5e9b
000019e7: DUP4
000019e8: CODECOPY
000019e9: DUP2
000019ea: MLOAD
000019eb: SWAP2
000019ec: MSTORE
000019ed: DUP1
000019ee: SLOAD
000019ef: SWAP1
000019f0: SWAP2
000019f1: POP
000019f2: ISZERO
000019f3: DUP1
000019f4: ISZERO
000019f5: PUSH2 0x1a00
000019f8: JUMPI
000019f9: POP
000019fa: PUSH1 0x01
000019fc: DUP2
000019fd: ADD
000019fe: SLOAD
000019ff: ISZERO
00001a00: JUMPDEST
00001a01: PUSH2 0x1a44
00001a04: JUMPI
00001a05: PUSH1 0x40
00001a07: MLOAD
00001a08: PUSH3 0x461bcd
00001a0c: PUSH1 0xe5
00001a0e: SHL
00001a0f: DUP2
00001a10: MSTORE
00001a11: PUSH1 0x20
00001a13: PUSH1 0x04
00001a15: DUP3
00001a16: ADD
00001a17: MSTORE
00001a18: PUSH1 0x15
00001a1a: PUSH1 0x24
00001a1c: DUP3
00001a1d: ADD
00001a1e: MSTORE
00001a1f: PUSH21 0x1152540dcc4c8e88155b9a5b9a5d1a585b1a5e9959
00001a35: PUSH1 0x5a
00001a37: SHL
00001a38: PUSH1 0x44
00001a3a: DUP3
00001a3b: ADD
00001a3c: MSTORE
00001a3d: PUSH1 0x64
00001a3f: ADD
00001a40: PUSH2 0x0d19
00001a43: JUMP
00001a44: JUMPDEST
00001a45: PUSH2 0x1a4c
00001a48: PUSH2 0x3645
00001a4b: JUMP
00001a4c: JUMPDEST
00001a4d: PUSH2 0x1a54
00001a50: PUSH2 0x3708
00001a53: JUMP
00001a54: JUMPDEST
00001a55: PUSH1 0x40
00001a57: DUP1
00001a58: MLOAD
00001a59: PUSH1 0x00
00001a5b: DUP1
00001a5c: DUP3
00001a5d: MSTORE
00001a5e: PUSH1 0x20
00001a60: DUP3
00001a61: ADD
00001a62: SWAP1
00001a63: SWAP3
00001a64: MSTORE
00001a65: PUSH1 0x0f
00001a67: PUSH1 0xf8
00001a69: SHL
00001a6a: SWAP13
00001a6b: SWAP4
00001a6c: SWAP12
00001a6d: POP
00001a6e: SWAP2
00001a6f: SWAP10
00001a70: POP
00001a71: CHAINID
00001a72: SWAP9
00001a73: POP
00001a74: ADDRESS
00001a75: SWAP8
00001a76: POP
00001a77: SWAP6
00001a78: POP
00001a79: SWAP4
00001a7a: POP
00001a7b: SWAP2
00001a7c: POP
00001a7d: POP
00001a7e: JUMP
00001a7f: JUMPDEST
00001a80: PUSH1 0x00
00001a82: DUP3
00001a83: DUP2
00001a84: MSTORE
00001a85: PUSH1 0x00
00001a87: DUP1
00001a88: MLOAD
00001a89: PUSH1 0x20
00001a8b: PUSH2 0x5e3b
00001a8e: DUP4
00001a8f: CODECOPY
00001a90: DUP2
00001a91: MLOAD
00001a92: SWAP2
00001a93: MSTORE
00001a94: PUSH1 0x20
00001a96: DUP2
00001a97: SWAP1
00001a98: MSTORE
00001a99: PUSH1 0x40
00001a9b: DUP3
00001a9c: KECCAK256
00001a9d: PUSH2 0x1aa6
00001aa0: SWAP1
00001aa1: DUP5
00001aa2: PUSH2 0x3747
00001aa5: JUMP
00001aa6: JUMPDEST
00001aa7: SWAP5
00001aa8: SWAP4
00001aa9: POP
00001aaa: POP
00001aab: POP
00001aac: POP
00001aad: JUMP
00001aae: JUMPDEST
00001aaf: PUSH1 0x00
00001ab1: SWAP2
00001ab2: DUP3
00001ab3: MSTORE
00001ab4: PUSH1 0x00
00001ab6: DUP1
00001ab7: MLOAD
00001ab8: PUSH1 0x20
00001aba: PUSH2 0x5edb
00001abd: DUP4
00001abe: CODECOPY
00001abf: DUP2
00001ac0: MLOAD
00001ac1: SWAP2
00001ac2: MSTORE
00001ac3: PUSH1 0x20
00001ac5: SWAP1
00001ac6: DUP2
00001ac7: MSTORE
00001ac8: PUSH1 0x40
00001aca: DUP1
00001acb: DUP5
00001acc: KECCAK256
00001acd: PUSH1 0x01
00001acf: PUSH1 0x01
00001ad1: PUSH1 0xa0
00001ad3: SHL
00001ad4: SUB
00001ad5: SWAP4
00001ad6: SWAP1
00001ad7: SWAP4
00001ad8: AND
00001ad9: DUP5
00001ada: MSTORE
00001adb: SWAP2
00001adc: SWAP1
00001add: MSTORE
00001ade: SWAP1
00001adf: KECCAK256
00001ae0: SLOAD
00001ae1: PUSH1 0xff
00001ae3: AND
00001ae4: SWAP1
00001ae5: JUMP
00001ae6: JUMPDEST
00001ae7: PUSH1 0x00
00001ae9: DUP1
00001aea: MLOAD
00001aeb: PUSH1 0x20
00001aed: PUSH2 0x5e7b
00001af0: DUP4
00001af1: CODECOPY
00001af2: DUP2
00001af3: MLOAD
00001af4: SWAP2
00001af5: MSTORE
00001af6: PUSH2 0x1afe
00001af9: DUP2
00001afa: PUSH2 0x2df4
00001afd: JUMP
00001afe: JUMPDEST
00001aff: PUSH2 0x1b06
00001b02: PUSH2 0x2dfe
00001b05: JUMP
00001b06: JUMPDEST
00001b07: PUSH2 0x1b0e
00001b0a: PUSH2 0x30ab
00001b0d: JUMP
00001b0e: JUMPDEST
00001b0f: PUSH1 0x00
00001b11: PUSH32 0x2153c66c50d530b83e467e0f254115139b87c8c9ef9f6960bbe04178b4e59f87
00001b32: PUSH1 0xc0
00001b34: DUP7
00001b35: ADD
00001b36: CALLDATALOAD
00001b37: PUSH2 0x1b44
00001b3a: PUSH2 0x0100
00001b3d: DUP9
00001b3e: ADD
00001b3f: DUP9
00001b40: PUSH2 0x58c9
00001b43: JUMP
00001b44: JUMPDEST
00001b45: PUSH1 0x80
00001b47: SWAP1
00001b48: DUP2
00001b49: ADD
00001b4a: CALLDATALOAD
00001b4b: SWAP1
00001b4c: PUSH2 0x1b5b
00001b4f: SWAP1
00001b50: PUSH1 0xa0
00001b52: DUP11
00001b53: ADD
00001b54: SWAP1
00001b55: DUP11
00001b56: ADD
00001b57: PUSH2 0x4e37
00001b5a: JUMP
00001b5b: JUMPDEST
00001b5c: PUSH1 0x40
00001b5e: MLOAD
00001b5f: PUSH1 0x20
00001b61: ADD
00001b62: PUSH2 0x1b6e
00001b65: SWAP5
00001b66: SWAP4
00001b67: SWAP3
00001b68: SWAP2
00001b69: SWAP1
00001b6a: PUSH2 0x58e9
00001b6d: JUMP
00001b6e: JUMPDEST
00001b6f: PUSH1 0x40
00001b71: MLOAD
00001b72: PUSH1 0x20
00001b74: DUP2
00001b75: DUP4
00001b76: SUB
00001b77: SUB
00001b78: DUP2
00001b79: MSTORE
00001b7a: SWAP1
00001b7b: PUSH1 0x40
00001b7d: MSTORE
00001b7e: DUP1
00001b7f: MLOAD
00001b80: SWAP1
00001b81: PUSH1 0x20
00001b83: ADD
00001b84: KECCAK256
00001b85: SWAP1
00001b86: POP
00001b87: PUSH1 0x00
00001b89: PUSH2 0x1bb0
00001b8c: PUSH2 0x1b94
00001b8f: DUP4
00001b90: PUSH2 0x32ed
00001b93: JUMP
00001b94: JUMPDEST
00001b95: PUSH2 0x1ba2
00001b98: PUSH2 0x0100
00001b9b: DUP10
00001b9c: ADD
00001b9d: DUP10
00001b9e: PUSH2 0x58c9
00001ba1: JUMP
00001ba2: JUMPDEST
00001ba3: PUSH2 0x173a
00001ba6: SWAP1
00001ba7: PUSH1 0xa0
00001ba9: DUP2
00001baa: ADD
00001bab: SWAP1
00001bac: PUSH2 0x5870
00001baf: JUMP
00001bb0: JUMPDEST
00001bb1: SWAP1
00001bb2: POP
00001bb3: PUSH2 0x1bc3
00001bb6: PUSH2 0x0100
00001bb9: DUP8
00001bba: ADD
00001bbb: PUSH1 0xe0
00001bbd: DUP9
00001bbe: ADD
00001bbf: PUSH2 0x4e37
00001bc2: JUMP
00001bc3: JUMPDEST
00001bc4: PUSH1 0x01
00001bc6: PUSH1 0x01
00001bc8: PUSH1 0xa0
00001bca: SHL
00001bcb: SUB
00001bcc: AND
00001bcd: DUP2
00001bce: PUSH1 0x01
00001bd0: PUSH1 0x01
00001bd2: PUSH1 0xa0
00001bd4: SHL
00001bd5: SUB
00001bd6: AND
00001bd7: EQ
00001bd8: PUSH2 0x1bf4
00001bdb: JUMPI
00001bdc: PUSH1 0x40
00001bde: MLOAD
00001bdf: PUSH4 0x8baa579f
00001be4: PUSH1 0xe0
00001be6: SHL
00001be7: DUP2
00001be8: MSTORE
00001be9: PUSH1 0x04
00001beb: ADD
00001bec: PUSH1 0x40
00001bee: MLOAD
00001bef: DUP1
00001bf0: SWAP2
00001bf1: SUB
00001bf2: SWAP1
00001bf3: REVERT
00001bf4: JUMPDEST
00001bf5: PUSH1 0x00
00001bf7: PUSH2 0x1c04
00001bfa: PUSH2 0x0100
00001bfd: DUP9
00001bfe: ADD
00001bff: DUP9
00001c00: PUSH2 0x58c9
00001c03: JUMP
00001c04: JUMPDEST
00001c05: PUSH2 0x1c13
00001c08: SWAP1
00001c09: PUSH1 0x80
00001c0b: ADD
00001c0c: CALLDATALOAD
00001c0d: DUP9
00001c0e: CALLDATALOAD
00001c0f: PUSH2 0x58b6
00001c12: JUMP
00001c13: JUMPDEST
00001c14: SWAP1
00001c15: POP
00001c16: PUSH1 0x00
00001c18: PUSH2 0x1c27
00001c1b: PUSH1 0x40
00001c1d: DUP10
00001c1e: ADD
00001c1f: PUSH1 0x20
00001c21: DUP11
00001c22: ADD
00001c23: PUSH2 0x4e37
00001c26: JUMP
00001c27: JUMPDEST
00001c28: SWAP1
00001c29: POP
00001c2a: PUSH2 0x1caa
00001c2d: PUSH2 0x1c3d
00001c30: PUSH2 0x0100
00001c33: DUP11
00001c34: ADD
00001c35: PUSH1 0xe0
00001c37: DUP12
00001c38: ADD
00001c39: PUSH2 0x4e37
00001c3c: JUMP
00001c3d: JUMPDEST
00001c3e: ADDRESS
00001c3f: DUP5
00001c40: PUSH2 0x1c4d
00001c43: PUSH2 0x0100
00001c46: DUP14
00001c47: ADD
00001c48: DUP14
00001c49: PUSH2 0x58c9
00001c4c: JUMP
00001c4d: JUMPDEST
00001c4e: CALLDATALOAD
00001c4f: PUSH2 0x1c5c
00001c52: PUSH2 0x0100
00001c55: DUP15
00001c56: ADD
00001c57: DUP15
00001c58: PUSH2 0x58c9
00001c5b: JUMP
00001c5c: JUMPDEST
00001c5d: PUSH2 0x1c6d
00001c60: SWAP1
00001c61: PUSH1 0x40
00001c63: DUP2
00001c64: ADD
00001c65: SWAP1
00001c66: PUSH1 0x20
00001c68: ADD
00001c69: PUSH2 0x590d
00001c6c: JUMP
00001c6d: JUMPDEST
00001c6e: PUSH2 0x1c7b
00001c71: PUSH2 0x0100
00001c74: DUP16
00001c75: ADD
00001c76: DUP16
00001c77: PUSH2 0x58c9
00001c7a: JUMP
00001c7b: JUMPDEST
00001c7c: PUSH1 0x40
00001c7e: ADD
00001c7f: CALLDATALOAD
00001c80: DUP15
00001c81: DUP1
00001c82: PUSH2 0x0100
00001c85: ADD
00001c86: SWAP1
00001c87: PUSH2 0x1c90
00001c8a: SWAP2
00001c8b: SWAP1
00001c8c: PUSH2 0x58c9
00001c8f: JUMP
00001c90: JUMPDEST
00001c91: PUSH1 0x01
00001c93: PUSH1 0x01
00001c95: PUSH1 0xa0
00001c97: SHL
00001c98: SUB
00001c99: DUP10
00001c9a: AND
00001c9b: SWAP7
00001c9c: SWAP6
00001c9d: SWAP5
00001c9e: SWAP4
00001c9f: SWAP3
00001ca0: SWAP2
00001ca1: SWAP1
00001ca2: PUSH1 0x60
00001ca4: ADD
00001ca5: CALLDATALOAD
00001ca6: PUSH2 0x3753
00001ca9: JUMP
00001caa: JUMPDEST
00001cab: PUSH1 0x00
00001cad: PUSH2 0x1cbc
00001cb0: PUSH1 0x40
00001cb2: DUP11
00001cb3: ADD
00001cb4: PUSH1 0x20
00001cb6: DUP12
00001cb7: ADD
00001cb8: PUSH2 0x4e37
00001cbb: JUMP
00001cbc: JUMPDEST
00001cbd: PUSH1 0x40
00001cbf: MLOAD
00001cc0: PUSH4 0x70a08231
00001cc5: PUSH1 0xe0
00001cc7: SHL
00001cc8: DUP2
00001cc9: MSTORE
00001cca: ADDRESS
00001ccb: PUSH1 0x04
00001ccd: DUP3
00001cce: ADD
00001ccf: MSTORE
00001cd0: PUSH1 0x01
00001cd2: PUSH1 0x01
00001cd4: PUSH1 0xa0
00001cd6: SHL
00001cd7: SUB
00001cd8: SWAP2
00001cd9: SWAP1
00001cda: SWAP2
00001cdb: AND
00001cdc: SWAP1
00001cdd: PUSH4 0x70a08231
00001ce2: SWAP1
00001ce3: PUSH1 0x24
00001ce5: ADD
00001ce6: PUSH1 0x20
00001ce8: PUSH1 0x40
00001cea: MLOAD
00001ceb: DUP1
00001cec: DUP4
00001ced: SUB
00001cee: DUP2
00001cef: DUP7
00001cf0: GAS
00001cf1: STATICCALL
00001cf2: ISZERO
00001cf3: DUP1
00001cf4: ISZERO
00001cf5: PUSH2 0x1d02
00001cf8: JUMPI
00001cf9: RETURNDATASIZE
00001cfa: PUSH1 0x00
00001cfc: DUP1
00001cfd: RETURNDATACOPY
00001cfe: RETURNDATASIZE
00001cff: PUSH1 0x00
00001d01: REVERT
00001d02: JUMPDEST
00001d03: POP
00001d04: POP
00001d05: POP
00001d06: POP
00001d07: PUSH1 0x40
00001d09: MLOAD
00001d0a: RETURNDATASIZE
00001d0b: PUSH1 0x1f
00001d0d: NOT
00001d0e: PUSH1 0x1f
00001d10: DUP3
00001d11: ADD
00001d12: AND
00001d13: DUP3
00001d14: ADD
00001d15: DUP1
00001d16: PUSH1 0x40
00001d18: MSTORE
00001d19: POP
00001d1a: DUP2
00001d1b: ADD
00001d1c: SWAP1
00001d1d: PUSH2 0x1d26
00001d20: SWAP2
00001d21: SWAP1
00001d22: PUSH2 0x57e9
00001d25: JUMP
00001d26: JUMPDEST
00001d27: SWAP1
00001d28: POP
00001d29: PUSH2 0x1d4e
00001d2c: PUSH2 0x1d3c
00001d2f: PUSH2 0x0100
00001d32: DUP12
00001d33: ADD
00001d34: PUSH1 0xe0
00001d36: DUP13
00001d37: ADD
00001d38: PUSH2 0x4e37
00001d3b: JUMP
00001d3c: JUMPDEST
00001d3d: ADDRESS
00001d3e: DUP6
00001d3f: PUSH2 0x144d
00001d42: PUSH1 0x40
00001d44: DUP15
00001d45: ADD
00001d46: PUSH1 0x20
00001d48: DUP16
00001d49: ADD
00001d4a: PUSH2 0x4e37
00001d4d: JUMP
00001d4e: JUMPDEST
00001d4f: PUSH2 0x1d68
00001d52: PUSH2 0x1d61
00001d55: PUSH1 0x40
00001d57: DUP12
00001d58: ADD
00001d59: PUSH1 0x20
00001d5b: DUP13
00001d5c: ADD
00001d5d: PUSH2 0x4e37
00001d60: JUMP
00001d61: JUMPDEST
00001d62: DUP3
00001d63: DUP6
00001d64: PUSH2 0x319e
00001d67: JUMP
00001d68: JUMPDEST
00001d69: PUSH2 0x1d76
00001d6c: PUSH2 0x0100
00001d6f: DUP11
00001d70: ADD
00001d71: DUP11
00001d72: PUSH2 0x58c9
00001d75: JUMP
00001d76: JUMPDEST
00001d77: PUSH1 0x80
00001d79: ADD
00001d7a: CALLDATALOAD
00001d7b: PUSH1 0x0a
00001d7d: PUSH1 0x00
00001d7f: PUSH2 0x1d8e
00001d82: PUSH1 0x40
00001d84: DUP14
00001d85: ADD
00001d86: PUSH1 0x20
00001d88: DUP15
00001d89: ADD
00001d8a: PUSH2 0x4e37
00001d8d: JUMP
00001d8e: JUMPDEST
00001d8f: PUSH1 0x01
00001d91: PUSH1 0x01
00001d93: PUSH1 0xa0
00001d95: SHL
00001d96: SUB
00001d97: AND
00001d98: PUSH1 0x01
00001d9a: PUSH1 0x01
00001d9c: PUSH1 0xa0
00001d9e: SHL
00001d9f: SUB
00001da0: AND
00001da1: DUP2
00001da2: MSTORE
00001da3: PUSH1 0x20
00001da5: ADD
00001da6: SWAP1
00001da7: DUP2
00001da8: MSTORE
00001da9: PUSH1 0x20
00001dab: ADD
00001dac: PUSH1 0x00
00001dae: KECCAK256
00001daf: PUSH1 0x00
00001db1: DUP3
00001db2: DUP3
00001db3: SLOAD
00001db4: PUSH2 0x1dbd
00001db7: SWAP2
00001db8: SWAP1
00001db9: PUSH2 0x58b6
00001dbc: JUMP
00001dbd: JUMPDEST
00001dbe: SWAP1
00001dbf: SWAP2
00001dc0: SSTORE
00001dc1: POP
00001dc2: PUSH2 0x1dda
00001dc5: SWAP1
00001dc6: POP
00001dc7: DUP10
00001dc8: DUP10
00001dc9: DUP10
00001dca: PUSH2 0x18e5
00001dcd: PUSH2 0x0100
00001dd0: DUP5
00001dd1: ADD
00001dd2: PUSH1 0xe0
00001dd4: DUP6
00001dd5: ADD
00001dd6: PUSH2 0x4e37
00001dd9: JUMP
00001dda: JUMPDEST
00001ddb: POP
00001ddc: POP
00001ddd: POP
00001dde: POP
00001ddf: POP
00001de0: PUSH2 0x1150
00001de3: PUSH2 0x2f5b
00001de6: JUMP
00001de7: JUMPDEST
00001de8: PUSH1 0x00
00001dea: DUP2
00001deb: DUP2
00001dec: MSTORE
00001ded: PUSH1 0x00
00001def: DUP1
00001df0: MLOAD
00001df1: PUSH1 0x20
00001df3: PUSH2 0x5e3b
00001df6: DUP4
00001df7: CODECOPY
00001df8: DUP2
00001df9: MLOAD
00001dfa: SWAP2
00001dfb: MSTORE
00001dfc: PUSH1 0x20
00001dfe: DUP2
00001dff: SWAP1
00001e00: MSTORE
00001e01: PUSH1 0x40
00001e03: SWAP1
00001e04: SWAP2
00001e05: KECCAK256
00001e06: PUSH1 0x60
00001e08: SWAP2
00001e09: SWAP1
00001e0a: PUSH2 0x1e12
00001e0d: SWAP1
00001e0e: PUSH2 0x38c9
00001e11: JUMP
00001e12: JUMPDEST
00001e13: SWAP4
00001e14: SWAP3
00001e15: POP
00001e16: POP
00001e17: POP
00001e18: JUMP
00001e19: JUMPDEST
00001e1a: PUSH1 0x00
00001e1c: DUP1
00001e1d: MLOAD
00001e1e: PUSH1 0x20
00001e20: PUSH2 0x5e5b
00001e23: DUP4
00001e24: CODECOPY
00001e25: DUP2
00001e26: MLOAD
00001e27: SWAP2
00001e28: MSTORE
00001e29: PUSH2 0x1e31
00001e2c: DUP2
00001e2d: PUSH2 0x2df4
00001e30: JUMP
00001e31: JUMPDEST
00001e32: PUSH2 0x1e39
00001e35: PUSH2 0x2dfe
00001e38: JUMP
00001e39: JUMPDEST
00001e3a: PUSH2 0x1e41
00001e3d: PUSH2 0x30ab
00001e40: JUMP
00001e41: JUMPDEST
00001e42: PUSH2 0x107b
00001e45: DUP6
00001e46: DUP6
00001e47: DUP6
00001e48: DUP6
00001e49: PUSH2 0x38d6
00001e4c: JUMP
00001e4d: JUMPDEST
00001e4e: PUSH1 0x00
00001e50: DUP1
00001e51: MLOAD
00001e52: PUSH1 0x20
00001e54: PUSH2 0x5e5b
00001e57: DUP4
00001e58: CODECOPY
00001e59: DUP2
00001e5a: MLOAD
00001e5b: SWAP2
00001e5c: MSTORE
00001e5d: PUSH2 0x1e65
00001e60: DUP2
00001e61: PUSH2 0x2df4
00001e64: JUMP
00001e65: JUMPDEST
00001e66: PUSH2 0x1e6d
00001e69: PUSH2 0x2dfe
00001e6c: JUMP
00001e6d: JUMPDEST
00001e6e: PUSH2 0x1e75
00001e71: PUSH2 0x30ab
00001e74: JUMP
00001e75: JUMPDEST
00001e76: PUSH2 0x1e8e
00001e79: PUSH2 0x1e88
00001e7c: PUSH1 0x80
00001e7e: DUP9
00001e7f: ADD
00001e80: PUSH1 0x60
00001e82: DUP10
00001e83: ADD
00001e84: PUSH2 0x4e37
00001e87: JUMP
00001e88: JUMPDEST
00001e89: DUP7
00001e8a: PUSH2 0x39b5
00001e8d: JUMP
00001e8e: JUMPDEST
00001e8f: PUSH1 0x00
00001e91: PUSH31 0x1b891e40d81c23409e0f23088882f464674dbf744eb800f9dda71965c1e423
00001eb1: PUSH1 0x20
00001eb3: DUP9
00001eb4: ADD
00001eb5: CALLDATALOAD
00001eb6: PUSH2 0x1ec5
00001eb9: PUSH1 0x60
00001ebb: DUP11
00001ebc: ADD
00001ebd: PUSH1 0x40
00001ebf: DUP12
00001ec0: ADD
00001ec1: PUSH2 0x4e37
00001ec4: JUMP
00001ec5: JUMPDEST
00001ec6: DUP10
00001ec7: CALLDATALOAD
00001ec8: PUSH2 0x1ed4
00001ecb: PUSH1 0x20
00001ecd: DUP10
00001ece: ADD
00001ecf: DUP10
00001ed0: PUSH2 0x4e37
00001ed3: JUMP
00001ed4: JUMPDEST
00001ed5: PUSH1 0x40
00001ed7: DUP1
00001ed8: MLOAD
00001ed9: PUSH1 0x20
00001edb: DUP2
00001edc: DUP2
00001edd: ADD
00001ede: SWAP8
00001edf: SWAP1
00001ee0: SWAP8
00001ee1: MSTORE
00001ee2: SWAP1
00001ee3: DUP2
00001ee4: ADD
00001ee5: SWAP5
00001ee6: SWAP1
00001ee7: SWAP5
00001ee8: MSTORE
00001ee9: PUSH1 0x01
00001eeb: PUSH1 0x01
00001eed: PUSH1 0xa0
00001eef: SHL
00001ef0: SUB
00001ef1: SWAP3
00001ef2: DUP4
00001ef3: AND
00001ef4: PUSH1 0x60
00001ef6: DUP6
00001ef7: ADD
00001ef8: MSTORE
00001ef9: PUSH1 0x80
00001efb: DUP5
00001efc: ADD
00001efd: SWAP2
00001efe: SWAP1
00001eff: SWAP2
00001f00: MSTORE
00001f01: DUP2
00001f02: AND
00001f03: PUSH1 0xa0
00001f05: DUP4
00001f06: ADD
00001f07: MSTORE
00001f08: PUSH1 0xc0
00001f0a: DUP3
00001f0b: ADD
00001f0c: DUP10
00001f0d: SWAP1
00001f0e: MSTORE
00001f0f: SWAP2
00001f10: DUP7
00001f11: ADD
00001f12: CALLDATALOAD
00001f13: PUSH1 0xe0
00001f15: DUP3
00001f16: ADD
00001f17: MSTORE
00001f18: SWAP1
00001f19: DUP5
00001f1a: AND
00001f1b: PUSH2 0x0100
00001f1e: DUP3
00001f1f: ADD
00001f20: MSTORE
00001f21: PUSH2 0x0120
00001f24: ADD
00001f25: PUSH1 0x40
00001f27: MLOAD
00001f28: PUSH1 0x20
00001f2a: DUP2
00001f2b: DUP4
00001f2c: SUB
00001f2d: SUB
00001f2e: DUP2
00001f2f: MSTORE
00001f30: SWAP1
00001f31: PUSH1 0x40
00001f33: MSTORE
00001f34: DUP1
00001f35: MLOAD
00001f36: SWAP1
00001f37: PUSH1 0x20
00001f39: ADD
00001f3a: KECCAK256
00001f3b: SWAP1
00001f3c: POP
00001f3d: PUSH1 0x00
00001f3f: PUSH2 0x1f57
00001f42: PUSH2 0x1f4a
00001f45: DUP4
00001f46: PUSH2 0x32ed
00001f49: JUMP
00001f4a: JUMPDEST
00001f4b: PUSH2 0x173a
00001f4e: PUSH1 0x40
00001f50: DUP9
00001f51: ADD
00001f52: DUP9
00001f53: PUSH2 0x5870
00001f56: JUMP
00001f57: JUMPDEST
00001f58: SWAP1
00001f59: POP
00001f5a: PUSH2 0x1f69
00001f5d: PUSH1 0x80
00001f5f: DUP10
00001f60: ADD
00001f61: PUSH1 0x60
00001f63: DUP11
00001f64: ADD
00001f65: PUSH2 0x4e37
00001f68: JUMP
00001f69: JUMPDEST
00001f6a: PUSH1 0x01
00001f6c: PUSH1 0x01
00001f6e: PUSH1 0xa0
00001f70: SHL
00001f71: SUB
00001f72: AND
00001f73: DUP2
00001f74: PUSH1 0x01
00001f76: PUSH1 0x01
00001f78: PUSH1 0xa0
00001f7a: SHL
00001f7b: SUB
00001f7c: AND
00001f7d: EQ
00001f7e: PUSH2 0x1f9a
00001f81: JUMPI
00001f82: PUSH1 0x40
00001f84: MLOAD
00001f85: PUSH4 0x8baa579f
00001f8a: PUSH1 0xe0
00001f8c: SHL
00001f8d: DUP2
00001f8e: MSTORE
00001f8f: PUSH1 0x04
00001f91: ADD
00001f92: PUSH1 0x40
00001f94: MLOAD
00001f95: DUP1
00001f96: SWAP2
00001f97: SUB
00001f98: SWAP1
00001f99: REVERT
00001f9a: JUMPDEST
00001f9b: PUSH2 0x1faa
00001f9e: PUSH1 0x80
00001fa0: DUP10
00001fa1: ADD
00001fa2: PUSH1 0x60
00001fa4: DUP11
00001fa5: ADD
00001fa6: PUSH2 0x4e37
00001fa9: JUMP
00001faa: JUMPDEST
00001fab: PUSH1 0x01
00001fad: PUSH1 0x01
00001faf: PUSH1 0xa0
00001fb1: SHL
00001fb2: SUB
00001fb3: AND
00001fb4: PUSH2 0x1fc0
00001fb7: PUSH1 0x20
00001fb9: DUP8
00001fba: ADD
00001fbb: DUP8
00001fbc: PUSH2 0x4e37
00001fbf: JUMP
00001fc0: JUMPDEST
00001fc1: PUSH1 0x01
00001fc3: PUSH1 0x01
00001fc5: PUSH1 0xa0
00001fc7: SHL
00001fc8: SUB
00001fc9: AND
00001fca: EQ
00001fcb: PUSH2 0x1fe7
00001fce: JUMPI
00001fcf: PUSH1 0x40
00001fd1: MLOAD
00001fd2: PUSH4 0x8baa579f
00001fd7: PUSH1 0xe0
00001fd9: SHL
00001fda: DUP2
00001fdb: MSTORE
00001fdc: PUSH1 0x04
00001fde: ADD
00001fdf: PUSH1 0x40
00001fe1: MLOAD
00001fe2: DUP1
00001fe3: SWAP2
00001fe4: SUB
00001fe5: SWAP1
00001fe6: REVERT
00001fe7: JUMPDEST
00001fe8: PUSH1 0x00
00001fea: PUSH2 0x1ffb
00001fed: PUSH1 0x20
00001fef: DUP1
00001ff0: DUP9
00001ff1: ADD
00001ff2: CALLDATALOAD
00001ff3: SWAP1
00001ff4: DUP12
00001ff5: ADD
00001ff6: CALLDATALOAD
00001ff7: PUSH2 0x58b6
00001ffa: JUMP
00001ffb: JUMPDEST
00001ffc: SWAP1
00001ffd: POP
00001ffe: PUSH1 0x00
00002000: PUSH2 0x200f
00002003: PUSH1 0x60
00002005: DUP12
00002006: ADD
00002007: PUSH1 0x40
00002009: DUP13
0000200a: ADD
0000200b: PUSH2 0x4e37
0000200e: JUMP
0000200f: JUMPDEST
00002010: PUSH1 0x40
00002012: MLOAD
00002013: PUSH4 0x70a08231
00002018: PUSH1 0xe0
0000201a: SHL
0000201b: DUP2
0000201c: MSTORE
0000201d: ADDRESS
0000201e: PUSH1 0x04
00002020: DUP3
00002021: ADD
00002022: MSTORE
00002023: PUSH1 0x01
00002025: PUSH1 0x01
00002027: PUSH1 0xa0
00002029: SHL
0000202a: SUB
0000202b: SWAP2
0000202c: SWAP1
0000202d: SWAP2
0000202e: AND
0000202f: SWAP1
00002030: PUSH4 0x70a08231
00002035: SWAP1
00002036: PUSH1 0x24
00002038: ADD
00002039: PUSH1 0x20
0000203b: PUSH1 0x40
0000203d: MLOAD
0000203e: DUP1
0000203f: DUP4
00002040: SUB
00002041: DUP2
00002042: DUP7
00002043: GAS
00002044: STATICCALL
00002045: ISZERO
00002046: DUP1
00002047: ISZERO
00002048: PUSH2 0x2055
0000204b: JUMPI
0000204c: RETURNDATASIZE
0000204d: PUSH1 0x00
0000204f: DUP1
00002050: RETURNDATACOPY
00002051: RETURNDATASIZE
00002052: PUSH1 0x00
00002054: REVERT
00002055: JUMPDEST
00002056: POP
00002057: POP
00002058: POP
00002059: POP
0000205a: PUSH1 0x40
0000205c: MLOAD
0000205d: RETURNDATASIZE
0000205e: PUSH1 0x1f
00002060: NOT
00002061: PUSH1 0x1f
00002063: DUP3
00002064: ADD
00002065: AND
00002066: DUP3
00002067: ADD
00002068: DUP1
00002069: PUSH1 0x40
0000206b: MSTORE
0000206c: POP
0000206d: DUP2
0000206e: ADD
0000206f: SWAP1
00002070: PUSH2 0x2079
00002073: SWAP2
00002074: SWAP1
00002075: PUSH2 0x57e9
00002078: JUMP
00002079: JUMPDEST
0000207a: SWAP1
0000207b: POP
0000207c: PUSH2 0x20a3
0000207f: PUSH2 0x208e
00002082: PUSH1 0x80
00002084: DUP13
00002085: ADD
00002086: PUSH1 0x60
00002088: DUP14
00002089: ADD
0000208a: PUSH2 0x4e37
0000208d: JUMP
0000208e: JUMPDEST
0000208f: ADDRESS
00002090: DUP5
00002091: DUP14
00002092: PUSH1 0x40
00002094: ADD
00002095: PUSH1 0x20
00002097: DUP2
00002098: ADD
00002099: SWAP1
0000209a: PUSH2 0x144d
0000209d: SWAP2
0000209e: SWAP1
0000209f: PUSH2 0x4e37
000020a2: JUMP
000020a3: JUMPDEST
000020a4: PUSH2 0x20b6
000020a7: PUSH2 0x187a
000020aa: PUSH1 0x60
000020ac: DUP13
000020ad: ADD
000020ae: PUSH1 0x40
000020b0: DUP14
000020b1: ADD
000020b2: PUSH2 0x4e37
000020b5: JUMP
000020b6: JUMPDEST
000020b7: PUSH1 0x20
000020b9: DUP8
000020ba: ADD
000020bb: CALLDATALOAD
000020bc: PUSH1 0x0a
000020be: PUSH1 0x00
000020c0: PUSH2 0x20cf
000020c3: PUSH1 0x60
000020c5: DUP15
000020c6: ADD
000020c7: PUSH1 0x40
000020c9: DUP16
000020ca: ADD
000020cb: PUSH2 0x4e37
000020ce: JUMP
000020cf: JUMPDEST
000020d0: PUSH1 0x01
000020d2: PUSH1 0x01
000020d4: PUSH1 0xa0
000020d6: SHL
000020d7: SUB
000020d8: AND
000020d9: PUSH1 0x01
000020db: PUSH1 0x01
000020dd: PUSH1 0xa0
000020df: SHL
000020e0: SUB
000020e1: AND
000020e2: DUP2
000020e3: MSTORE
000020e4: PUSH1 0x20
000020e6: ADD
000020e7: SWAP1
000020e8: DUP2
000020e9: MSTORE
000020ea: PUSH1 0x20
000020ec: ADD
000020ed: PUSH1 0x00
000020ef: KECCAK256
000020f0: PUSH1 0x00
000020f2: DUP3
000020f3: DUP3
000020f4: SLOAD
000020f5: PUSH2 0x20fe
000020f8: SWAP2
000020f9: SWAP1
000020fa: PUSH2 0x58b6
000020fd: JUMP
000020fe: JUMPDEST
000020ff: SWAP1
00002100: SWAP2
00002101: SSTORE
00002102: POP
00002103: PUSH2 0x2124
00002106: SWAP1
00002107: POP
00002108: DUP11
00002109: CALLDATALOAD
0000210a: PUSH2 0x2119
0000210d: PUSH1 0x60
0000210f: DUP14
00002110: ADD
00002111: PUSH1 0x40
00002113: DUP15
00002114: ADD
00002115: PUSH2 0x4e37
00002118: JUMP
00002119: JUMPDEST
0000211a: DUP13
0000211b: PUSH1 0x20
0000211d: ADD
0000211e: CALLDATALOAD
0000211f: DUP12
00002120: PUSH2 0x3a14
00002123: JUMP
00002124: JUMPDEST
00002125: POP
00002126: POP
00002127: POP
00002128: POP
00002129: PUSH2 0x2130
0000212c: PUSH2 0x2f5b
0000212f: JUMP
00002130: JUMPDEST
00002131: POP
00002132: POP
00002133: POP
00002134: POP
00002135: POP
00002136: POP
00002137: JUMP
00002138: JUMPDEST
00002139: PUSH1 0x00
0000213b: DUP2
0000213c: DUP2
0000213d: MSTORE
0000213e: PUSH1 0x00
00002140: DUP1
00002141: MLOAD
00002142: PUSH1 0x20
00002144: PUSH2 0x5e3b
00002147: DUP4
00002148: CODECOPY
00002149: DUP2
0000214a: MLOAD
0000214b: SWAP2
0000214c: MSTORE
0000214d: PUSH1 0x20
0000214f: DUP2
00002150: SWAP1
00002151: MSTORE
00002152: PUSH1 0x40
00002154: DUP3
00002155: KECCAK256
00002156: PUSH2 0x1e12
00002159: SWAP1
0000215a: PUSH2 0x3a58
0000215d: JUMP
0000215e: JUMPDEST
0000215f: PUSH1 0x00
00002161: DUP1
00002162: MLOAD
00002163: PUSH1 0x20
00002165: PUSH2 0x5e5b
00002168: DUP4
00002169: CODECOPY
0000216a: DUP2
0000216b: MLOAD
0000216c: SWAP2
0000216d: MSTORE
0000216e: PUSH2 0x2176
00002171: DUP2
00002172: PUSH2 0x2df4
00002175: JUMP
00002176: JUMPDEST
00002177: PUSH2 0x217e
0000217a: PUSH2 0x2dfe
0000217d: JUMP
0000217e: JUMPDEST
0000217f: PUSH2 0x2186
00002182: PUSH2 0x30ab
00002185: JUMP
00002186: JUMPDEST
00002187: PUSH2 0x2199
0000218a: PUSH2 0x1e88
0000218d: PUSH1 0x80
0000218f: DUP9
00002190: ADD
00002191: PUSH1 0x60
00002193: DUP10
00002194: ADD
00002195: PUSH2 0x4e37
00002198: JUMP
00002199: JUMPDEST
0000219a: PUSH1 0x00
0000219c: PUSH32 0x3e85fc5e85c603787b799a2ba38f13427c1a77cffaca9ed57d435a783aaa4255
000021bd: DUP7
000021be: DUP6
000021bf: PUSH1 0x40
000021c1: ADD
000021c2: CALLDATALOAD
000021c3: DUP6
000021c4: PUSH1 0x40
000021c6: MLOAD
000021c7: PUSH1 0x20
000021c9: ADD
000021ca: PUSH2 0x21d6
000021cd: SWAP5
000021ce: SWAP4
000021cf: SWAP3
000021d0: SWAP2
000021d1: SWAP1
000021d2: PUSH2 0x58e9
000021d5: JUMP
000021d6: JUMPDEST
000021d7: PUSH1 0x40
000021d9: MLOAD
000021da: PUSH1 0x20
000021dc: DUP2
000021dd: DUP4
000021de: SUB
000021df: SUB
000021e0: DUP2
000021e1: MSTORE
000021e2: SWAP1
000021e3: PUSH1 0x40
000021e5: MSTORE
000021e6: DUP1
000021e7: MLOAD
000021e8: SWAP1
000021e9: PUSH1 0x20
000021eb: ADD
000021ec: KECCAK256
000021ed: SWAP1
000021ee: POP
000021ef: PUSH1 0x00
000021f1: PUSH2 0x2209
000021f4: PUSH2 0x21fc
000021f7: DUP4
000021f8: PUSH2 0x32ed
000021fb: JUMP
000021fc: JUMPDEST
000021fd: PUSH2 0x173a
00002200: PUSH1 0x60
00002202: DUP9
00002203: ADD
00002204: DUP9
00002205: PUSH2 0x5870
00002208: JUMP
00002209: JUMPDEST
0000220a: SWAP1
0000220b: POP
0000220c: PUSH2 0x221b
0000220f: PUSH1 0x80
00002211: DUP10
00002212: ADD
00002213: PUSH1 0x60
00002215: DUP11
00002216: ADD
00002217: PUSH2 0x4e37
0000221a: JUMP
0000221b: JUMPDEST
0000221c: PUSH1 0x01
0000221e: PUSH1 0x01
00002220: PUSH1 0xa0
00002222: SHL
00002223: SUB
00002224: AND
00002225: DUP2
00002226: PUSH1 0x01
00002228: PUSH1 0x01
0000222a: PUSH1 0xa0
0000222c: SHL
0000222d: SUB
0000222e: AND
0000222f: EQ
00002230: PUSH2 0x224c
00002233: JUMPI
00002234: PUSH1 0x40
00002236: MLOAD
00002237: PUSH4 0x8baa579f
0000223c: PUSH1 0xe0
0000223e: SHL
0000223f: DUP2
00002240: MSTORE
00002241: PUSH1 0x04
00002243: ADD
00002244: PUSH1 0x40
00002246: MLOAD
00002247: DUP1
00002248: SWAP2
00002249: SUB
0000224a: SWAP1
0000224b: REVERT
0000224c: JUMPDEST
0000224d: PUSH1 0x00
0000224f: PUSH2 0x2260
00002252: PUSH1 0x40
00002254: DUP8
00002255: ADD
00002256: CALLDATALOAD
00002257: PUSH1 0x20
00002259: DUP12
0000225a: ADD
0000225b: CALLDATALOAD
0000225c: PUSH2 0x58b6
0000225f: JUMP
00002260: JUMPDEST
00002261: SWAP1
00002262: POP
00002263: PUSH1 0x01
00002265: PUSH1 0x01
00002267: PUSH1 0xa0
00002269: SHL
0000226a: SUB
0000226b: DUP2
0000226c: GT
0000226d: ISZERO
0000226e: PUSH2 0x228a
00002271: JUMPI
00002272: PUSH1 0x40
00002274: MLOAD
00002275: PUSH4 0x64e7a309
0000227a: PUSH1 0xe1
0000227c: SHL
0000227d: DUP2
0000227e: MSTORE
0000227f: PUSH1 0x04
00002281: ADD
00002282: PUSH1 0x40
00002284: MLOAD
00002285: DUP1
00002286: SWAP2
00002287: SUB
00002288: SWAP1
00002289: REVERT
0000228a: JUMPDEST
0000228b: PUSH1 0x00
0000228d: PUSH2 0x2296
00002290: DUP8
00002291: DUP1
00002292: PUSH2 0x5870
00002295: JUMP
00002296: JUMPDEST
00002297: DUP2
00002298: ADD
00002299: SWAP1
0000229a: PUSH2 0x22a3
0000229d: SWAP2
0000229e: SWAP1
0000229f: PUSH2 0x593e
000022a2: JUMP
000022a3: JUMPDEST
000022a4: SWAP1
000022a5: POP
000022a6: PUSH2 0x22db
000022a9: PUSH2 0x22b8
000022ac: PUSH1 0x80
000022ae: DUP13
000022af: ADD
000022b0: PUSH1 0x60
000022b2: DUP14
000022b3: ADD
000022b4: PUSH2 0x4e37
000022b7: JUMP
000022b8: JUMPDEST
000022b9: DUP3
000022ba: PUSH2 0x22c6
000022bd: PUSH1 0x20
000022bf: DUP12
000022c0: ADD
000022c1: DUP12
000022c2: PUSH2 0x5870
000022c5: JUMP
000022c6: JUMPDEST
000022c7: PUSH1 0x00
000022c9: SLOAD
000022ca: PUSH1 0x01
000022cc: PUSH1 0x01
000022ce: PUSH1 0xa0
000022d0: SHL
000022d1: SUB
000022d2: AND
000022d3: SWAP4
000022d4: SWAP3
000022d5: SWAP2
000022d6: SWAP1
000022d7: PUSH2 0x3a62
000022da: JUMP
000022db: JUMPDEST
000022dc: PUSH1 0x00
000022de: PUSH2 0x22ed
000022e1: PUSH1 0x60
000022e3: DUP13
000022e4: ADD
000022e5: PUSH1 0x40
000022e7: DUP14
000022e8: ADD
000022e9: PUSH2 0x4e37
000022ec: JUMP
000022ed: JUMPDEST
000022ee: PUSH1 0x40
000022f0: MLOAD
000022f1: PUSH4 0x70a08231
000022f6: PUSH1 0xe0
000022f8: SHL
000022f9: DUP2
000022fa: MSTORE
000022fb: ADDRESS
000022fc: PUSH1 0x04
000022fe: DUP3
000022ff: ADD
00002300: MSTORE
00002301: PUSH1 0x01
00002303: PUSH1 0x01
00002305: PUSH1 0xa0
00002307: SHL
00002308: SUB
00002309: SWAP2
0000230a: SWAP1
0000230b: SWAP2
0000230c: AND
0000230d: SWAP1
0000230e: PUSH4 0x70a08231
00002313: SWAP1
00002314: PUSH1 0x24
00002316: ADD
00002317: PUSH1 0x20
00002319: PUSH1 0x40
0000231b: MLOAD
0000231c: DUP1
0000231d: DUP4
0000231e: SUB
0000231f: DUP2
00002320: DUP7
00002321: GAS
00002322: STATICCALL
00002323: ISZERO
00002324: DUP1
00002325: ISZERO
00002326: PUSH2 0x2333
00002329: JUMPI
0000232a: RETURNDATASIZE
0000232b: PUSH1 0x00
0000232d: DUP1
0000232e: RETURNDATACOPY
0000232f: RETURNDATASIZE
00002330: PUSH1 0x00
00002332: REVERT
00002333: JUMPDEST
00002334: POP
00002335: POP
00002336: POP
00002337: POP
00002338: PUSH1 0x40
0000233a: MLOAD
0000233b: RETURNDATASIZE
0000233c: PUSH1 0x1f
0000233e: NOT
0000233f: PUSH1 0x1f
00002341: DUP3
00002342: ADD
00002343: AND
00002344: DUP3
00002345: ADD
00002346: DUP1
00002347: PUSH1 0x40
00002349: MSTORE
0000234a: POP
0000234b: DUP2
0000234c: ADD
0000234d: SWAP1
0000234e: PUSH2 0x2357
00002351: SWAP2
00002352: SWAP1
00002353: PUSH2 0x57e9
00002356: JUMP
00002357: JUMPDEST
00002358: PUSH1 0x00
0000235a: SLOAD
0000235b: SWAP1
0000235c: SWAP2
0000235d: POP
0000235e: PUSH1 0x01
00002360: PUSH1 0x01
00002362: PUSH1 0xa0
00002364: SHL
00002365: SUB
00002366: AND
00002367: PUSH4 0x36c78516
0000236c: PUSH2 0x237b
0000236f: PUSH1 0x80
00002371: DUP15
00002372: ADD
00002373: PUSH1 0x60
00002375: DUP16
00002376: ADD
00002377: PUSH2 0x4e37
0000237a: JUMP
0000237b: JUMPDEST
0000237c: ADDRESS
0000237d: DUP7
0000237e: DUP16
0000237f: PUSH1 0x40
00002381: ADD
00002382: PUSH1 0x20
00002384: DUP2
00002385: ADD
00002386: SWAP1
00002387: PUSH2 0x2390
0000238a: SWAP2
0000238b: SWAP1
0000238c: PUSH2 0x4e37
0000238f: JUMP
00002390: JUMPDEST
00002391: PUSH1 0x40
00002393: MLOAD
00002394: PUSH1 0xe0
00002396: DUP7
00002397: SWAP1
00002398: SHL
00002399: PUSH1 0x01
0000239b: PUSH1 0x01
0000239d: PUSH1 0xe0
0000239f: SHL
000023a0: SUB
000023a1: NOT
000023a2: AND
000023a3: DUP2
000023a4: MSTORE
000023a5: PUSH1 0x01
000023a7: PUSH1 0x01
000023a9: PUSH1 0xa0
000023ab: SHL
000023ac: SUB
000023ad: SWAP5
000023ae: DUP6
000023af: AND
000023b0: PUSH1 0x04
000023b2: DUP3
000023b3: ADD
000023b4: MSTORE
000023b5: SWAP3
000023b6: DUP5
000023b7: AND
000023b8: PUSH1 0x24
000023ba: DUP5
000023bb: ADD
000023bc: MSTORE
000023bd: SWAP1
000023be: DUP4
000023bf: AND
000023c0: PUSH1 0x44
000023c2: DUP4
000023c3: ADD
000023c4: MSTORE
000023c5: SWAP1
000023c6: SWAP2
000023c7: AND
000023c8: PUSH1 0x64
000023ca: DUP3
000023cb: ADD
000023cc: MSTORE
000023cd: PUSH1 0x84
000023cf: ADD
000023d0: PUSH1 0x00
000023d2: PUSH1 0x40
000023d4: MLOAD
000023d5: DUP1
000023d6: DUP4
000023d7: SUB
000023d8: DUP2
000023d9: PUSH1 0x00
000023db: DUP8
000023dc: DUP1
000023dd: EXTCODESIZE
000023de: ISZERO
000023df: DUP1
000023e0: ISZERO
000023e1: PUSH2 0x23e9
000023e4: JUMPI
000023e5: PUSH1 0x00
000023e7: DUP1
000023e8: REVERT
000023e9: JUMPDEST
000023ea: POP
000023eb: GAS
000023ec: CALL
000023ed: ISZERO
000023ee: DUP1
000023ef: ISZERO
000023f0: PUSH2 0x23fd
000023f3: JUMPI
000023f4: RETURNDATASIZE
000023f5: PUSH1 0x00
000023f7: DUP1
000023f8: RETURNDATACOPY
000023f9: RETURNDATASIZE
000023fa: PUSH1 0x00
000023fc: REVERT
000023fd: JUMPDEST
000023fe: POP
000023ff: PUSH2 0x2416
00002402: SWAP3
00002403: POP
00002404: PUSH2 0x1d61
00002407: SWAP2
00002408: POP
00002409: POP
0000240a: PUSH1 0x60
0000240c: DUP14
0000240d: ADD
0000240e: PUSH1 0x40
00002410: DUP15
00002411: ADD
00002412: PUSH2 0x4e37
00002415: JUMP
00002416: JUMPDEST
00002417: DUP8
00002418: PUSH1 0x40
0000241a: ADD
0000241b: CALLDATALOAD
0000241c: PUSH1 0x0a
0000241e: PUSH1 0x00
00002420: DUP14
00002421: PUSH1 0x40
00002423: ADD
00002424: PUSH1 0x20
00002426: DUP2
00002427: ADD
00002428: SWAP1
00002429: PUSH2 0x2432
0000242c: SWAP2
0000242d: SWAP1
0000242e: PUSH2 0x4e37
00002431: JUMP
00002432: JUMPDEST
00002433: PUSH1 0x01
00002435: PUSH1 0x01
00002437: PUSH1 0xa0
00002439: SHL
0000243a: SUB
0000243b: AND
0000243c: PUSH1 0x01
0000243e: PUSH1 0x01
00002440: PUSH1 0xa0
00002442: SHL
00002443: SUB
00002444: AND
00002445: DUP2
00002446: MSTORE
00002447: PUSH1 0x20
00002449: ADD
0000244a: SWAP1
0000244b: DUP2
0000244c: MSTORE
0000244d: PUSH1 0x20
0000244f: ADD
00002450: PUSH1 0x00
00002452: KECCAK256
00002453: PUSH1 0x00
00002455: DUP3
00002456: DUP3
00002457: SLOAD
00002458: PUSH2 0x2461
0000245b: SWAP2
0000245c: SWAP1
0000245d: PUSH2 0x58b6
00002460: JUMP
00002461: JUMPDEST
00002462: SWAP1
00002463: SWAP2
00002464: SSTORE
00002465: POP
00002466: PUSH2 0x2487
00002469: SWAP1
0000246a: POP
0000246b: DUP12
0000246c: CALLDATALOAD
0000246d: PUSH2 0x247c
00002470: PUSH1 0x60
00002472: DUP15
00002473: ADD
00002474: PUSH1 0x40
00002476: DUP16
00002477: ADD
00002478: PUSH2 0x4e37
0000247b: JUMP
0000247c: JUMPDEST
0000247d: DUP14
0000247e: PUSH1 0x20
00002480: ADD
00002481: CALLDATALOAD
00002482: DUP13
00002483: PUSH2 0x3a14
00002486: JUMP
00002487: JUMPDEST
00002488: POP
00002489: POP
0000248a: POP
0000248b: POP
0000248c: POP
0000248d: PUSH2 0x2130
00002490: PUSH2 0x2f5b
00002493: JUMP
00002494: JUMPDEST
00002495: PUSH2 0x249d
00002498: DUP3
00002499: PUSH2 0x1107
0000249c: JUMP
0000249d: JUMPDEST
0000249e: PUSH2 0x24a6
000024a1: DUP2
000024a2: PUSH2 0x2df4
000024a5: JUMP
000024a6: JUMPDEST
000024a7: PUSH2 0x1150
000024aa: DUP4
000024ab: DUP4
000024ac: PUSH2 0x3251
000024af: JUMP
000024b0: JUMPDEST
000024b1: PUSH1 0x00
000024b3: DUP1
000024b4: MLOAD
000024b5: PUSH1 0x20
000024b7: PUSH2 0x5e5b
000024ba: DUP4
000024bb: CODECOPY
000024bc: DUP2
000024bd: MLOAD
000024be: SWAP2
000024bf: MSTORE
000024c0: PUSH2 0x24c8
000024c3: DUP2
000024c4: PUSH2 0x2df4
000024c7: JUMP
000024c8: JUMPDEST
000024c9: PUSH2 0x24d0
000024cc: PUSH2 0x2dfe
000024cf: JUMP
000024d0: JUMPDEST
000024d1: PUSH2 0x24d8
000024d4: PUSH2 0x30ab
000024d7: JUMP
000024d8: JUMPDEST
000024d9: PUSH2 0x24f1
000024dc: PUSH2 0x24eb
000024df: PUSH1 0x80
000024e1: DUP7
000024e2: ADD
000024e3: PUSH1 0x60
000024e5: DUP8
000024e6: ADD
000024e7: PUSH2 0x4e37
000024ea: JUMP
000024eb: JUMPDEST
000024ec: DUP5
000024ed: PUSH2 0x39b5
000024f0: JUMP
000024f1: JUMPDEST
000024f2: PUSH1 0x00
000024f4: PUSH2 0x2503
000024f7: PUSH1 0x60
000024f9: DUP7
000024fa: ADD
000024fb: PUSH1 0x40
000024fd: DUP8
000024fe: ADD
000024ff: PUSH2 0x4e37
00002502: JUMP
00002503: JUMPDEST
00002504: PUSH1 0x40
00002506: MLOAD
00002507: PUSH4 0x70a08231
0000250c: PUSH1 0xe0
0000250e: SHL
0000250f: DUP2
00002510: MSTORE
00002511: ADDRESS
00002512: PUSH1 0x04
00002514: DUP3
00002515: ADD
00002516: MSTORE
00002517: PUSH1 0x01
00002519: PUSH1 0x01
0000251b: PUSH1 0xa0
0000251d: SHL
0000251e: SUB
0000251f: SWAP2
00002520: SWAP1
00002521: SWAP2
00002522: AND
00002523: SWAP1
00002524: PUSH4 0x70a08231
00002529: SWAP1
0000252a: PUSH1 0x24
0000252c: ADD
0000252d: PUSH1 0x20
0000252f: PUSH1 0x40
00002531: MLOAD
00002532: DUP1
00002533: DUP4
00002534: SUB
00002535: DUP2
00002536: DUP7
00002537: GAS
00002538: STATICCALL
00002539: ISZERO
0000253a: DUP1
0000253b: ISZERO
0000253c: PUSH2 0x2549
0000253f: JUMPI
00002540: RETURNDATASIZE
00002541: PUSH1 0x00
00002543: DUP1
00002544: RETURNDATACOPY
00002545: RETURNDATASIZE
00002546: PUSH1 0x00
00002548: REVERT
00002549: JUMPDEST
0000254a: POP
0000254b: POP
0000254c: POP
0000254d: POP
0000254e: PUSH1 0x40
00002550: MLOAD
00002551: RETURNDATASIZE
00002552: PUSH1 0x1f
00002554: NOT
00002555: PUSH1 0x1f
00002557: DUP3
00002558: ADD
00002559: AND
0000255a: DUP3
0000255b: ADD
0000255c: DUP1
0000255d: PUSH1 0x40
0000255f: MSTORE
00002560: POP
00002561: DUP2
00002562: ADD
00002563: SWAP1
00002564: PUSH2 0x256d
00002567: SWAP2
00002568: SWAP1
00002569: PUSH2 0x57e9
0000256c: JUMP
0000256d: JUMPDEST
0000256e: SWAP1
0000256f: POP
00002570: PUSH2 0x2598
00002573: PUSH2 0x2582
00002576: PUSH1 0x80
00002578: DUP8
00002579: ADD
0000257a: PUSH1 0x60
0000257c: DUP9
0000257d: ADD
0000257e: PUSH2 0x4e37
00002581: JUMP
00002582: JUMPDEST
00002583: ADDRESS
00002584: PUSH1 0x20
00002586: DUP9
00002587: ADD
00002588: CALLDATALOAD
00002589: PUSH2 0x144d
0000258c: PUSH1 0x60
0000258e: DUP11
0000258f: ADD
00002590: PUSH1 0x40
00002592: DUP12
00002593: ADD
00002594: PUSH2 0x4e37
00002597: JUMP
00002598: JUMPDEST
00002599: PUSH2 0x25b6
0000259c: PUSH2 0x25ab
0000259f: PUSH1 0x60
000025a1: DUP8
000025a2: ADD
000025a3: PUSH1 0x40
000025a5: DUP9
000025a6: ADD
000025a7: PUSH2 0x4e37
000025aa: JUMP
000025ab: JUMPDEST
000025ac: DUP3
000025ad: DUP8
000025ae: PUSH1 0x20
000025b0: ADD
000025b1: CALLDATALOAD
000025b2: PUSH2 0x319e
000025b5: JUMP
000025b6: JUMPDEST
000025b7: PUSH2 0x1486
000025ba: DUP6
000025bb: CALLDATALOAD
000025bc: PUSH2 0x25cb
000025bf: PUSH1 0x60
000025c1: DUP9
000025c2: ADD
000025c3: PUSH1 0x40
000025c5: DUP10
000025c6: ADD
000025c7: PUSH2 0x4e37
000025ca: JUMP
000025cb: JUMPDEST
000025cc: DUP8
000025cd: PUSH1 0x20
000025cf: ADD
000025d0: CALLDATALOAD
000025d1: DUP7
000025d2: PUSH2 0x3a14
000025d5: JUMP
000025d6: JUMPDEST
000025d7: PUSH1 0x00
000025d9: DUP1
000025da: MLOAD
000025db: PUSH1 0x20
000025dd: PUSH2 0x5e5b
000025e0: DUP4
000025e1: CODECOPY
000025e2: DUP2
000025e3: MLOAD
000025e4: SWAP2
000025e5: MSTORE
000025e6: PUSH2 0x25ee
000025e9: DUP2
000025ea: PUSH2 0x2df4
000025ed: JUMP
000025ee: JUMPDEST
000025ef: PUSH2 0x25f6
000025f2: PUSH2 0x2dfe
000025f5: JUMP
000025f6: JUMPDEST
000025f7: PUSH2 0x25fe
000025fa: PUSH2 0x30ab
000025fd: JUMP
000025fe: JUMPDEST
000025ff: PUSH2 0x2611
00002602: PUSH2 0x1e88
00002605: PUSH1 0x80
00002607: DUP9
00002608: ADD
00002609: PUSH1 0x60
0000260b: DUP10
0000260c: ADD
0000260d: PUSH2 0x4e37
00002610: JUMP
00002611: JUMPDEST
00002612: PUSH1 0x00
00002614: PUSH32 0x5baf498a801d51876d6f8a63220431288d2cd339c56ee940bc46f4809659e59c
00002635: DUP7
00002636: DUP6
00002637: PUSH1 0x80
00002639: ADD
0000263a: CALLDATALOAD
0000263b: DUP6
0000263c: PUSH1 0x40
0000263e: MLOAD
0000263f: PUSH1 0x20
00002641: ADD
00002642: PUSH2 0x264e
00002645: SWAP5
00002646: SWAP4
00002647: SWAP3
00002648: SWAP2
00002649: SWAP1
0000264a: PUSH2 0x58e9
0000264d: JUMP
0000264e: JUMPDEST
0000264f: PUSH1 0x40
00002651: MLOAD
00002652: PUSH1 0x20
00002654: DUP2
00002655: DUP4
00002656: SUB
00002657: SUB
00002658: DUP2
00002659: MSTORE
0000265a: SWAP1
0000265b: PUSH1 0x40
0000265d: MSTORE
0000265e: DUP1
0000265f: MLOAD
00002660: SWAP1
00002661: PUSH1 0x20
00002663: ADD
00002664: KECCAK256
00002665: SWAP1
00002666: POP
00002667: PUSH1 0x00
00002669: PUSH2 0x2681
0000266c: PUSH2 0x2674
0000266f: DUP4
00002670: PUSH2 0x32ed
00002673: JUMP
00002674: JUMPDEST
00002675: PUSH2 0x173a
00002678: PUSH1 0xa0
0000267a: DUP9
0000267b: ADD
0000267c: DUP9
0000267d: PUSH2 0x5870
00002680: JUMP
00002681: JUMPDEST
00002682: SWAP1
00002683: POP
00002684: PUSH2 0x2693
00002687: PUSH1 0x80
00002689: DUP10
0000268a: ADD
0000268b: PUSH1 0x60
0000268d: DUP11
0000268e: ADD
0000268f: PUSH2 0x4e37
00002692: JUMP
00002693: JUMPDEST
00002694: PUSH1 0x01
00002696: PUSH1 0x01
00002698: PUSH1 0xa0
0000269a: SHL
0000269b: SUB
0000269c: AND
0000269d: DUP2
0000269e: PUSH1 0x01
000026a0: PUSH1 0x01
000026a2: PUSH1 0xa0
000026a4: SHL
000026a5: SUB
000026a6: AND
000026a7: EQ
000026a8: PUSH2 0x26c4
000026ab: JUMPI
000026ac: PUSH1 0x40
000026ae: MLOAD
000026af: PUSH4 0x8baa579f
000026b4: PUSH1 0xe0
000026b6: SHL
000026b7: DUP2
000026b8: MSTORE
000026b9: PUSH1 0x04
000026bb: ADD
000026bc: PUSH1 0x40
000026be: MLOAD
000026bf: DUP1
000026c0: SWAP2
000026c1: SUB
000026c2: SWAP1
000026c3: REVERT
000026c4: JUMPDEST
000026c5: PUSH1 0x00
000026c7: PUSH2 0x26d8
000026ca: PUSH1 0x80
000026cc: DUP8
000026cd: ADD
000026ce: CALLDATALOAD
000026cf: PUSH1 0x20
000026d1: DUP12
000026d2: ADD
000026d3: CALLDATALOAD
000026d4: PUSH2 0x58b6
000026d7: JUMP
000026d8: JUMPDEST
000026d9: SWAP1
000026da: POP
000026db: PUSH1 0x00
000026dd: PUSH2 0x26ec
000026e0: PUSH1 0x60
000026e2: DUP12
000026e3: ADD
000026e4: PUSH1 0x40
000026e6: DUP13
000026e7: ADD
000026e8: PUSH2 0x4e37
000026eb: JUMP
000026ec: JUMPDEST
000026ed: SWAP1
000026ee: POP
000026ef: PUSH2 0x2733
000026f2: PUSH2 0x2701
000026f5: PUSH1 0x80
000026f7: DUP13
000026f8: ADD
000026f9: PUSH1 0x60
000026fb: DUP14
000026fc: ADD
000026fd: PUSH2 0x4e37
00002700: JUMP
00002701: JUMPDEST
00002702: ADDRESS
00002703: DUP5
00002704: DUP11
00002705: CALLDATALOAD
00002706: PUSH2 0x2715
00002709: PUSH1 0x40
0000270b: DUP14
0000270c: ADD
0000270d: PUSH1 0x20
0000270f: DUP15
00002710: ADD
00002711: PUSH2 0x590d
00002714: JUMP
00002715: JUMPDEST
00002716: PUSH1 0x01
00002718: PUSH1 0x01
0000271a: PUSH1 0xa0
0000271c: SHL
0000271d: SUB
0000271e: DUP8
0000271f: AND
00002720: SWAP5
00002721: SWAP4
00002722: SWAP3
00002723: SWAP2
00002724: SWAP1
00002725: PUSH1 0x40
00002727: DUP15
00002728: ADD
00002729: CALLDATALOAD
0000272a: PUSH1 0x60
0000272c: DUP16
0000272d: ADD
0000272e: CALLDATALOAD
0000272f: PUSH2 0x3753
00002732: JUMP
00002733: JUMPDEST
00002734: PUSH1 0x00
00002736: PUSH2 0x2745
00002739: PUSH1 0x60
0000273b: DUP13
0000273c: ADD
0000273d: PUSH1 0x40
0000273f: DUP14
00002740: ADD
00002741: PUSH2 0x4e37
00002744: JUMP
00002745: JUMPDEST
00002746: PUSH1 0x40
00002748: MLOAD
00002749: PUSH4 0x70a08231
0000274e: PUSH1 0xe0
00002750: SHL
00002751: DUP2
00002752: MSTORE
00002753: ADDRESS
00002754: PUSH1 0x04
00002756: DUP3
00002757: ADD
00002758: MSTORE
00002759: PUSH1 0x01
0000275b: PUSH1 0x01
0000275d: PUSH1 0xa0
0000275f: SHL
00002760: SUB
00002761: SWAP2
00002762: SWAP1
00002763: SWAP2
00002764: AND
00002765: SWAP1
00002766: PUSH4 0x70a08231
0000276b: SWAP1
0000276c: PUSH1 0x24
0000276e: ADD
0000276f: PUSH1 0x20
00002771: PUSH1 0x40
00002773: MLOAD
00002774: DUP1
00002775: DUP4
00002776: SUB
00002777: DUP2
00002778: DUP7
00002779: GAS
0000277a: STATICCALL
0000277b: ISZERO
0000277c: DUP1
0000277d: ISZERO
0000277e: PUSH2 0x278b
00002781: JUMPI
00002782: RETURNDATASIZE
00002783: PUSH1 0x00
00002785: DUP1
00002786: RETURNDATACOPY
00002787: RETURNDATASIZE
00002788: PUSH1 0x00
0000278a: REVERT
0000278b: JUMPDEST
0000278c: POP
0000278d: POP
0000278e: POP
0000278f: POP
00002790: PUSH1 0x40
00002792: MLOAD
00002793: RETURNDATASIZE
00002794: PUSH1 0x1f
00002796: NOT
00002797: PUSH1 0x1f
00002799: DUP3
0000279a: ADD
0000279b: AND
0000279c: DUP3
0000279d: ADD
0000279e: DUP1
0000279f: PUSH1 0x40
000027a1: MSTORE
000027a2: POP
000027a3: DUP2
000027a4: ADD
000027a5: SWAP1
000027a6: PUSH2 0x27af
000027a9: SWAP2
000027aa: SWAP1
000027ab: PUSH2 0x57e9
000027ae: JUMP
000027af: JUMPDEST
000027b0: SWAP1
000027b1: POP
000027b2: PUSH2 0x27d9
000027b5: PUSH2 0x27c4
000027b8: PUSH1 0x80
000027ba: DUP14
000027bb: ADD
000027bc: PUSH1 0x60
000027be: DUP15
000027bf: ADD
000027c0: PUSH2 0x4e37
000027c3: JUMP
000027c4: JUMPDEST
000027c5: ADDRESS
000027c6: DUP6
000027c7: DUP15
000027c8: PUSH1 0x40
000027ca: ADD
000027cb: PUSH1 0x20
000027cd: DUP2
000027ce: ADD
000027cf: SWAP1
000027d0: PUSH2 0x144d
000027d3: SWAP2
000027d4: SWAP1
000027d5: PUSH2 0x4e37
000027d8: JUMP
000027d9: JUMPDEST
000027da: PUSH2 0x27ec
000027dd: PUSH2 0x1d61
000027e0: PUSH1 0x60
000027e2: DUP14
000027e3: ADD
000027e4: PUSH1 0x40
000027e6: DUP15
000027e7: ADD
000027e8: PUSH2 0x4e37
000027eb: JUMP
000027ec: JUMPDEST
000027ed: DUP8
000027ee: PUSH1 0x80
000027f0: ADD
000027f1: CALLDATALOAD
000027f2: PUSH1 0x0a
000027f4: PUSH1 0x00
000027f6: DUP14
000027f7: PUSH1 0x40
000027f9: ADD
000027fa: PUSH1 0x20
000027fc: DUP2
000027fd: ADD
000027fe: SWAP1
000027ff: PUSH2 0x2432
00002802: SWAP2
00002803: SWAP1
00002804: PUSH2 0x4e37
00002807: JUMP
00002808: JUMPDEST
00002809: PUSH1 0x00
0000280b: DUP1
0000280c: MLOAD
0000280d: PUSH1 0x20
0000280f: PUSH2 0x5e7b
00002812: DUP4
00002813: CODECOPY
00002814: DUP2
00002815: MLOAD
00002816: SWAP2
00002817: MSTORE
00002818: PUSH2 0x2820
0000281b: DUP2
0000281c: PUSH2 0x2df4
0000281f: JUMP
00002820: JUMPDEST
00002821: PUSH2 0x2828
00002824: PUSH2 0x2dfe
00002827: JUMP
00002828: JUMPDEST
00002829: PUSH2 0x2830
0000282c: PUSH2 0x30ab
0000282f: JUMP
00002830: JUMPDEST
00002831: PUSH1 0x00
00002833: PUSH32 0xa93e9a20cace9575ccf7861f789b06623932898a914441b15fc6a279529c3127
00002854: PUSH1 0xc0
00002856: DUP7
00002857: ADD
00002858: CALLDATALOAD
00002859: PUSH2 0x2866
0000285c: PUSH2 0x0100
0000285f: DUP9
00002860: ADD
00002861: DUP9
00002862: PUSH2 0x59e1
00002865: JUMP
00002866: JUMPDEST
00002867: PUSH1 0x40
00002869: ADD
0000286a: CALLDATALOAD
0000286b: PUSH2 0x287a
0000286e: PUSH1 0xa0
00002870: DUP10
00002871: ADD
00002872: PUSH1 0x80
00002874: DUP11
00002875: ADD
00002876: PUSH2 0x4e37
00002879: JUMP
0000287a: JUMPDEST
0000287b: PUSH1 0x40
0000287d: MLOAD
0000287e: PUSH1 0x20
00002880: ADD
00002881: PUSH2 0x288d
00002884: SWAP5
00002885: SWAP4
00002886: SWAP3
00002887: SWAP2
00002888: SWAP1
00002889: PUSH2 0x58e9
0000288c: JUMP
0000288d: JUMPDEST
0000288e: PUSH1 0x40
00002890: MLOAD
00002891: PUSH1 0x20
00002893: DUP2
00002894: DUP4
00002895: SUB
00002896: SUB
00002897: DUP2
00002898: MSTORE
00002899: SWAP1
0000289a: PUSH1 0x40
0000289c: MSTORE
0000289d: DUP1
0000289e: MLOAD
0000289f: SWAP1
000028a0: PUSH1 0x20
000028a2: ADD
000028a3: KECCAK256
000028a4: SWAP1
000028a5: POP
000028a6: PUSH1 0x00
000028a8: PUSH2 0x28cf
000028ab: PUSH2 0x28b3
000028ae: DUP4
000028af: PUSH2 0x32ed
000028b2: JUMP
000028b3: JUMPDEST
000028b4: PUSH2 0x28c1
000028b7: PUSH2 0x0100
000028ba: DUP10
000028bb: ADD
000028bc: DUP10
000028bd: PUSH2 0x59e1
000028c0: JUMP
000028c1: JUMPDEST
000028c2: PUSH2 0x173a
000028c5: SWAP1
000028c6: PUSH1 0x60
000028c8: DUP2
000028c9: ADD
000028ca: SWAP1
000028cb: PUSH2 0x5870
000028ce: JUMP
000028cf: JUMPDEST
000028d0: SWAP1
000028d1: POP
000028d2: PUSH2 0x28e2
000028d5: PUSH2 0x0100
000028d8: DUP8
000028d9: ADD
000028da: PUSH1 0xe0
000028dc: DUP9
000028dd: ADD
000028de: PUSH2 0x4e37
000028e1: JUMP
000028e2: JUMPDEST
000028e3: PUSH1 0x01
000028e5: PUSH1 0x01
000028e7: PUSH1 0xa0
000028e9: SHL
000028ea: SUB
000028eb: AND
000028ec: DUP2
000028ed: PUSH1 0x01
000028ef: PUSH1 0x01
000028f1: PUSH1 0xa0
000028f3: SHL
000028f4: SUB
000028f5: AND
000028f6: EQ
000028f7: PUSH2 0x2913
000028fa: JUMPI
000028fb: PUSH1 0x40
000028fd: MLOAD
000028fe: PUSH4 0x8baa579f
00002903: PUSH1 0xe0
00002905: SHL
00002906: DUP2
00002907: MSTORE
00002908: PUSH1 0x04
0000290a: ADD
0000290b: PUSH1 0x40
0000290d: MLOAD
0000290e: DUP1
0000290f: SWAP2
00002910: SUB
00002911: SWAP1
00002912: REVERT
00002913: JUMPDEST
00002914: PUSH1 0x00
00002916: PUSH2 0x2923
00002919: PUSH2 0x0100
0000291c: DUP9
0000291d: ADD
0000291e: DUP9
0000291f: PUSH2 0x59e1
00002922: JUMP
00002923: JUMPDEST
00002924: PUSH2 0x292d
00002927: SWAP1
00002928: DUP1
00002929: PUSH2 0x5870
0000292c: JUMP
0000292d: JUMPDEST
0000292e: DUP2
0000292f: ADD
00002930: SWAP1
00002931: PUSH2 0x293a
00002934: SWAP2
00002935: SWAP1
00002936: PUSH2 0x593e
00002939: JUMP
0000293a: JUMPDEST
0000293b: SWAP1
0000293c: POP
0000293d: PUSH1 0x00
0000293f: PUSH2 0x294c
00002942: PUSH2 0x0100
00002945: DUP10
00002946: ADD
00002947: DUP10
00002948: PUSH2 0x59e1
0000294b: JUMP
0000294c: JUMPDEST
0000294d: PUSH2 0x295b
00002950: SWAP1
00002951: PUSH1 0x40
00002953: ADD
00002954: CALLDATALOAD
00002955: DUP10
00002956: CALLDATALOAD
00002957: PUSH2 0x58b6
0000295a: JUMP
0000295b: JUMPDEST
0000295c: SWAP1
0000295d: POP
0000295e: PUSH1 0x01
00002960: PUSH1 0x01
00002962: PUSH1 0xa0
00002964: SHL
00002965: SUB
00002966: DUP2
00002967: GT
00002968: ISZERO
00002969: PUSH2 0x2985
0000296c: JUMPI
0000296d: PUSH1 0x40
0000296f: MLOAD
00002970: PUSH4 0x64e7a309
00002975: PUSH1 0xe1
00002977: SHL
00002978: DUP2
00002979: MSTORE
0000297a: PUSH1 0x04
0000297c: ADD
0000297d: PUSH1 0x40
0000297f: MLOAD
00002980: DUP1
00002981: SWAP2
00002982: SUB
00002983: SWAP1
00002984: REVERT
00002985: JUMPDEST
00002986: PUSH2 0x29b6
00002989: PUSH2 0x2999
0000298c: PUSH2 0x0100
0000298f: DUP11
00002990: ADD
00002991: PUSH1 0xe0
00002993: DUP12
00002994: ADD
00002995: PUSH2 0x4e37
00002998: JUMP
00002999: JUMPDEST
0000299a: DUP4
0000299b: PUSH2 0x29a8
0000299e: PUSH2 0x0100
000029a1: DUP13
000029a2: ADD
000029a3: DUP13
000029a4: PUSH2 0x59e1
000029a7: JUMP
000029a8: JUMPDEST
000029a9: PUSH2 0x22c6
000029ac: SWAP1
000029ad: PUSH1 0x20
000029af: DUP2
000029b0: ADD
000029b1: SWAP1
000029b2: PUSH2 0x5870
000029b5: JUMP
000029b6: JUMPDEST
000029b7: PUSH1 0x00
000029b9: PUSH2 0x29c8
000029bc: PUSH1 0x40
000029be: DUP11
000029bf: ADD
000029c0: PUSH1 0x20
000029c2: DUP12
000029c3: ADD
000029c4: PUSH2 0x4e37
000029c7: JUMP
000029c8: JUMPDEST
000029c9: PUSH1 0x40
000029cb: MLOAD
000029cc: PUSH4 0x70a08231
000029d1: PUSH1 0xe0
000029d3: SHL
000029d4: DUP2
000029d5: MSTORE
000029d6: ADDRESS
000029d7: PUSH1 0x04
000029d9: DUP3
000029da: ADD
000029db: MSTORE
000029dc: PUSH1 0x01
000029de: PUSH1 0x01
000029e0: PUSH1 0xa0
000029e2: SHL
000029e3: SUB
000029e4: SWAP2
000029e5: SWAP1
000029e6: SWAP2
000029e7: AND
000029e8: SWAP1
000029e9: PUSH4 0x70a08231
000029ee: SWAP1
000029ef: PUSH1 0x24
000029f1: ADD
000029f2: PUSH1 0x20
000029f4: PUSH1 0x40
000029f6: MLOAD
000029f7: DUP1
000029f8: DUP4
000029f9: SUB
000029fa: DUP2
000029fb: DUP7
000029fc: GAS
000029fd: STATICCALL
000029fe: ISZERO
000029ff: DUP1
00002a00: ISZERO
00002a01: PUSH2 0x2a0e
00002a04: JUMPI
00002a05: RETURNDATASIZE
00002a06: PUSH1 0x00
00002a08: DUP1
00002a09: RETURNDATACOPY
00002a0a: RETURNDATASIZE
00002a0b: PUSH1 0x00
00002a0d: REVERT
00002a0e: JUMPDEST
00002a0f: POP
00002a10: POP
00002a11: POP
00002a12: POP
00002a13: PUSH1 0x40
00002a15: MLOAD
00002a16: RETURNDATASIZE
00002a17: PUSH1 0x1f
00002a19: NOT
00002a1a: PUSH1 0x1f
00002a1c: DUP3
00002a1d: ADD
00002a1e: AND
00002a1f: DUP3
00002a20: ADD
00002a21: DUP1
00002a22: PUSH1 0x40
00002a24: MSTORE
00002a25: POP
00002a26: DUP2
00002a27: ADD
00002a28: SWAP1
00002a29: PUSH2 0x2a32
00002a2c: SWAP2
00002a2d: SWAP1
00002a2e: PUSH2 0x57e9
00002a31: JUMP
00002a32: JUMPDEST
00002a33: PUSH1 0x00
00002a35: SLOAD
00002a36: SWAP1
00002a37: SWAP2
00002a38: POP
00002a39: PUSH1 0x01
00002a3b: PUSH1 0x01
00002a3d: PUSH1 0xa0
00002a3f: SHL
00002a40: SUB
00002a41: AND
00002a42: PUSH4 0x36c78516
00002a47: PUSH2 0x2a57
00002a4a: PUSH2 0x0100
00002a4d: DUP13
00002a4e: ADD
00002a4f: PUSH1 0xe0
00002a51: DUP14
00002a52: ADD
00002a53: PUSH2 0x4e37
00002a56: JUMP
00002a57: JUMPDEST
00002a58: ADDRESS
00002a59: DUP6
00002a5a: DUP14
00002a5b: PUSH1 0x00
00002a5d: ADD
00002a5e: PUSH1 0x20
00002a60: ADD
00002a61: PUSH1 0x20
00002a63: DUP2
00002a64: ADD
00002a65: SWAP1
00002a66: PUSH2 0x2a6f
00002a69: SWAP2
00002a6a: SWAP1
00002a6b: PUSH2 0x4e37
00002a6e: JUMP
00002a6f: JUMPDEST
00002a70: PUSH1 0x40
00002a72: MLOAD
00002a73: PUSH1 0xe0
00002a75: DUP7
00002a76: SWAP1
00002a77: SHL
00002a78: PUSH1 0x01
00002a7a: PUSH1 0x01
00002a7c: PUSH1 0xe0
00002a7e: SHL
00002a7f: SUB
00002a80: NOT
00002a81: AND
00002a82: DUP2
00002a83: MSTORE
00002a84: PUSH1 0x01
00002a86: PUSH1 0x01
00002a88: PUSH1 0xa0
00002a8a: SHL
00002a8b: SUB
00002a8c: SWAP5
00002a8d: DUP6
00002a8e: AND
00002a8f: PUSH1 0x04
00002a91: DUP3
00002a92: ADD
00002a93: MSTORE
00002a94: SWAP3
00002a95: DUP5
00002a96: AND
00002a97: PUSH1 0x24
00002a99: DUP5
00002a9a: ADD
00002a9b: MSTORE
00002a9c: SWAP1
00002a9d: DUP4
00002a9e: AND
00002a9f: PUSH1 0x44
00002aa1: DUP4
00002aa2: ADD
00002aa3: MSTORE
00002aa4: SWAP1
00002aa5: SWAP2
00002aa6: AND
00002aa7: PUSH1 0x64
00002aa9: DUP3
00002aaa: ADD
00002aab: MSTORE
00002aac: PUSH1 0x84
00002aae: ADD
00002aaf: PUSH1 0x00
00002ab1: PUSH1 0x40
00002ab3: MLOAD
00002ab4: DUP1
00002ab5: DUP4
00002ab6: SUB
00002ab7: DUP2
00002ab8: PUSH1 0x00
00002aba: DUP8
00002abb: DUP1
00002abc: EXTCODESIZE
00002abd: ISZERO
00002abe: DUP1
00002abf: ISZERO
00002ac0: PUSH2 0x2ac8
00002ac3: JUMPI
00002ac4: PUSH1 0x00
00002ac6: DUP1
00002ac7: REVERT
00002ac8: JUMPDEST
00002ac9: POP
00002aca: GAS
00002acb: CALL
00002acc: ISZERO
00002acd: DUP1
00002ace: ISZERO
00002acf: PUSH2 0x2adc
00002ad2: JUMPI
00002ad3: RETURNDATASIZE
00002ad4: PUSH1 0x00
00002ad6: DUP1
00002ad7: RETURNDATACOPY
00002ad8: RETURNDATASIZE
00002ad9: PUSH1 0x00
00002adb: REVERT
00002adc: JUMPDEST
00002add: POP
00002ade: PUSH2 0x2af5
00002ae1: SWAP3
00002ae2: POP
00002ae3: PUSH2 0x187a
00002ae6: SWAP2
00002ae7: POP
00002ae8: POP
00002ae9: PUSH1 0x40
00002aeb: DUP12
00002aec: ADD
00002aed: PUSH1 0x20
00002aef: DUP13
00002af0: ADD
00002af1: PUSH2 0x4e37
00002af4: JUMP
00002af5: JUMPDEST
00002af6: PUSH2 0x2b03
00002af9: PUSH2 0x0100
00002afc: DUP11
00002afd: ADD
00002afe: DUP11
00002aff: PUSH2 0x59e1
00002b02: JUMP
00002b03: JUMPDEST
00002b04: PUSH1 0x40
00002b06: ADD
00002b07: CALLDATALOAD
00002b08: PUSH1 0x0a
00002b0a: PUSH1 0x00
00002b0c: DUP12
00002b0d: PUSH1 0x00
00002b0f: ADD
00002b10: PUSH1 0x20
00002b12: ADD
00002b13: PUSH1 0x20
00002b15: DUP2
00002b16: ADD
00002b17: SWAP1
00002b18: PUSH2 0x1d8e
00002b1b: SWAP2
00002b1c: SWAP1
00002b1d: PUSH2 0x4e37
00002b20: JUMP
00002b21: JUMPDEST
00002b22: PUSH1 0x60
00002b24: DUP2
00002b25: PUSH1 0x01
00002b27: PUSH1 0x01
00002b29: PUSH1 0x40
00002b2b: SHL
00002b2c: SUB
00002b2d: DUP2
00002b2e: GT
00002b2f: ISZERO
00002b30: PUSH2 0x2b3b
00002b33: JUMPI
00002b34: PUSH2 0x2b3b
00002b37: PUSH2 0x513d
00002b3a: JUMP
00002b3b: JUMPDEST
00002b3c: PUSH1 0x40
00002b3e: MLOAD
00002b3f: SWAP1
00002b40: DUP1
00002b41: DUP3
00002b42: MSTORE
00002b43: DUP1
00002b44: PUSH1 0x20
00002b46: MUL
00002b47: PUSH1 0x20
00002b49: ADD
00002b4a: DUP3
00002b4b: ADD
00002b4c: PUSH1 0x40
00002b4e: MSTORE
00002b4f: DUP1
00002b50: ISZERO
00002b51: PUSH2 0x2b64
00002b54: JUMPI
00002b55: DUP2
00002b56: PUSH1 0x20
00002b58: ADD
00002b59: PUSH1 0x20
00002b5b: DUP3
00002b5c: MUL
00002b5d: DUP1
00002b5e: CALLDATASIZE
00002b5f: DUP4
00002b60: CALLDATACOPY
00002b61: ADD
00002b62: SWAP1
00002b63: POP
00002b64: JUMPDEST
00002b65: POP
00002b66: SWAP1
00002b67: POP
00002b68: PUSH1 0x00
00002b6a: JUMPDEST
00002b6b: DUP3
00002b6c: DUP2
00002b6d: LT
00002b6e: ISZERO
00002b6f: PUSH2 0x2be3
00002b72: JUMPI
00002b73: PUSH1 0x0a
00002b75: PUSH1 0x00
00002b77: DUP6
00002b78: DUP6
00002b79: DUP5
00002b7a: DUP2
00002b7b: DUP2
00002b7c: LT
00002b7d: PUSH2 0x2b88
00002b80: JUMPI
00002b81: PUSH2 0x2b88
00002b84: PUSH2 0x59f7
00002b87: JUMP
00002b88: JUMPDEST
00002b89: SWAP1
00002b8a: POP
00002b8b: PUSH1 0x20
00002b8d: MUL
00002b8e: ADD
00002b8f: PUSH1 0x20
00002b91: DUP2
00002b92: ADD
00002b93: SWAP1
00002b94: PUSH2 0x2b9d
00002b97: SWAP2
00002b98: SWAP1
00002b99: PUSH2 0x4e37
00002b9c: JUMP
00002b9d: JUMPDEST
00002b9e: PUSH1 0x01
00002ba0: PUSH1 0x01
00002ba2: PUSH1 0xa0
00002ba4: SHL
00002ba5: SUB
00002ba6: AND
00002ba7: PUSH1 0x01
00002ba9: PUSH1 0x01
00002bab: PUSH1 0xa0
00002bad: SHL
00002bae: SUB
00002baf: AND
00002bb0: DUP2
00002bb1: MSTORE
00002bb2: PUSH1 0x20
00002bb4: ADD
00002bb5: SWAP1
00002bb6: DUP2
00002bb7: MSTORE
00002bb8: PUSH1 0x20
00002bba: ADD
00002bbb: PUSH1 0x00
00002bbd: KECCAK256
00002bbe: SLOAD
00002bbf: DUP3
00002bc0: DUP3
00002bc1: DUP2
00002bc2: MLOAD
00002bc3: DUP2
00002bc4: LT
00002bc5: PUSH2 0x2bd0
00002bc8: JUMPI
00002bc9: PUSH2 0x2bd0
00002bcc: PUSH2 0x59f7
00002bcf: JUMP
00002bd0: JUMPDEST
00002bd1: PUSH1 0x20
00002bd3: SWAP1
00002bd4: DUP2
00002bd5: MUL
00002bd6: SWAP2
00002bd7: SWAP1
00002bd8: SWAP2
00002bd9: ADD
00002bda: ADD
00002bdb: MSTORE
00002bdc: PUSH1 0x01
00002bde: ADD
00002bdf: PUSH2 0x2b6a
00002be2: JUMP
00002be3: JUMPDEST
00002be4: POP
00002be5: SWAP3
00002be6: SWAP2
00002be7: POP
00002be8: POP
00002be9: JUMP
00002bea: JUMPDEST
00002beb: PUSH1 0x00
00002bed: DUP1
00002bee: MLOAD
00002bef: PUSH1 0x20
00002bf1: PUSH2 0x5e7b
00002bf4: DUP4
00002bf5: CODECOPY
00002bf6: DUP2
00002bf7: MLOAD
00002bf8: SWAP2
00002bf9: MSTORE
00002bfa: PUSH2 0x2c02
00002bfd: DUP2
00002bfe: PUSH2 0x2df4
00002c01: JUMP
00002c02: JUMPDEST
00002c03: PUSH2 0x2c0a
00002c06: PUSH2 0x2dfe
00002c09: JUMP
00002c0a: JUMPDEST
00002c0b: PUSH1 0x01
00002c0d: PUSH1 0x01
00002c0f: PUSH1 0xa0
00002c11: SHL
00002c12: SUB
00002c13: DUP3
00002c14: AND
00002c15: PUSH2 0x2c54
00002c18: JUMPI
00002c19: PUSH1 0x40
00002c1b: MLOAD
00002c1c: PUSH3 0x461bcd
00002c20: PUSH1 0xe5
00002c22: SHL
00002c23: DUP2
00002c24: MSTORE
00002c25: PUSH1 0x20
00002c27: PUSH1 0x04
00002c29: DUP3
00002c2a: ADD
00002c2b: MSTORE
00002c2c: PUSH1 0x11
00002c2e: PUSH1 0x24
00002c30: DUP3
00002c31: ADD
00002c32: MSTORE
00002c33: PUSH17 0x125b9d985b1a59081c9958da5c1a595b9d
00002c45: PUSH1 0x7a
00002c47: SHL
00002c48: PUSH1 0x44
00002c4a: DUP3
00002c4b: ADD
00002c4c: MSTORE
00002c4d: PUSH1 0x64
00002c4f: ADD
00002c50: PUSH2 0x0d19
00002c53: JUMP
00002c54: JUMPDEST
00002c55: DUP3
00002c56: PUSH2 0x2c90
00002c59: JUMPI
00002c5a: PUSH1 0x40
00002c5c: MLOAD
00002c5d: PUSH3 0x461bcd
00002c61: PUSH1 0xe5
00002c63: SHL
00002c64: DUP2
00002c65: MSTORE
00002c66: PUSH1 0x20
00002c68: PUSH1 0x04
00002c6a: DUP3
00002c6b: ADD
00002c6c: MSTORE
00002c6d: PUSH1 0x0c
00002c6f: PUSH1 0x24
00002c71: DUP3
00002c72: ADD
00002c73: MSTORE
00002c74: PUSH12 0x456d70747920617272617973
00002c81: PUSH1 0xa0
00002c83: SHL
00002c84: PUSH1 0x44
00002c86: DUP3
00002c87: ADD
00002c88: MSTORE
00002c89: PUSH1 0x64
00002c8b: ADD
00002c8c: PUSH2 0x0d19
00002c8f: JUMP
00002c90: JUMPDEST
00002c91: PUSH1 0x00
00002c93: DUP4
00002c94: PUSH1 0x01
00002c96: PUSH1 0x01
00002c98: PUSH1 0x40
00002c9a: SHL
00002c9b: SUB
00002c9c: DUP2
00002c9d: GT
00002c9e: ISZERO
00002c9f: PUSH2 0x2caa
00002ca2: JUMPI
00002ca3: PUSH2 0x2caa
00002ca6: PUSH2 0x513d
00002ca9: JUMP
00002caa: JUMPDEST
00002cab: PUSH1 0x40
00002cad: MLOAD
00002cae: SWAP1
00002caf: DUP1
00002cb0: DUP3
00002cb1: MSTORE
00002cb2: DUP1
00002cb3: PUSH1 0x20
00002cb5: MUL
00002cb6: PUSH1 0x20
00002cb8: ADD
00002cb9: DUP3
00002cba: ADD
00002cbb: PUSH1 0x40
00002cbd: MSTORE
00002cbe: DUP1
00002cbf: ISZERO
00002cc0: PUSH2 0x2cd3
00002cc3: JUMPI
00002cc4: DUP2
00002cc5: PUSH1 0x20
00002cc7: ADD
00002cc8: PUSH1 0x20
00002cca: DUP3
00002ccb: MUL
00002ccc: DUP1
00002ccd: CALLDATASIZE
00002cce: DUP4
00002ccf: CALLDATACOPY
00002cd0: ADD
00002cd1: SWAP1
00002cd2: POP
00002cd3: JUMPDEST
00002cd4: POP
00002cd5: SWAP1
00002cd6: POP
00002cd7: PUSH1 0x00
00002cd9: JUMPDEST
00002cda: DUP5
00002cdb: DUP2
00002cdc: LT
00002cdd: ISZERO
00002cde: PUSH2 0x2d78
00002ce1: JUMPI
00002ce2: PUSH1 0x00
00002ce4: DUP7
00002ce5: DUP7
00002ce6: DUP4
00002ce7: DUP2
00002ce8: DUP2
00002ce9: LT
00002cea: PUSH2 0x2cf5
00002ced: JUMPI
00002cee: PUSH2 0x2cf5
00002cf1: PUSH2 0x59f7
00002cf4: JUMP
00002cf5: JUMPDEST
00002cf6: SWAP1
00002cf7: POP
00002cf8: PUSH1 0x20
00002cfa: MUL
00002cfb: ADD
00002cfc: PUSH1 0x20
00002cfe: DUP2
00002cff: ADD
00002d00: SWAP1
00002d01: PUSH2 0x2d0a
00002d04: SWAP2
00002d05: SWAP1
00002d06: PUSH2 0x4e37
00002d09: JUMP
00002d0a: JUMPDEST
00002d0b: PUSH1 0x01
00002d0d: PUSH1 0x01
00002d0f: PUSH1 0xa0
00002d11: SHL
00002d12: SUB
00002d13: DUP2
00002d14: AND
00002d15: PUSH1 0x00
00002d17: SWAP1
00002d18: DUP2
00002d19: MSTORE
00002d1a: PUSH1 0x0a
00002d1c: PUSH1 0x20
00002d1e: MSTORE
00002d1f: PUSH1 0x40
00002d21: SWAP1
00002d22: KECCAK256
00002d23: SLOAD
00002d24: SWAP1
00002d25: SWAP2
00002d26: POP
00002d27: DUP1
00002d28: ISZERO
00002d29: PUSH2 0x2d50
00002d2c: JUMPI
00002d2d: PUSH1 0x01
00002d2f: PUSH1 0x01
00002d31: PUSH1 0xa0
00002d33: SHL
00002d34: SUB
00002d35: DUP3
00002d36: AND
00002d37: PUSH1 0x00
00002d39: DUP2
00002d3a: DUP2
00002d3b: MSTORE
00002d3c: PUSH1 0x0a
00002d3e: PUSH1 0x20
00002d40: MSTORE
00002d41: PUSH1 0x40
00002d43: DUP2
00002d44: KECCAK256
00002d45: SSTORE
00002d46: PUSH2 0x2d50
00002d49: SWAP1
00002d4a: DUP8
00002d4b: DUP4
00002d4c: PUSH2 0x2efc
00002d4f: JUMP
00002d50: JUMPDEST
00002d51: DUP1
00002d52: DUP5
00002d53: DUP5
00002d54: DUP2
00002d55: MLOAD
00002d56: DUP2
00002d57: LT
00002d58: PUSH2 0x2d63
00002d5b: JUMPI
00002d5c: PUSH2 0x2d63
00002d5f: PUSH2 0x59f7
00002d62: JUMP
00002d63: JUMPDEST
00002d64: PUSH1 0x20
00002d66: SWAP1
00002d67: DUP2
00002d68: MUL
00002d69: SWAP2
00002d6a: SWAP1
00002d6b: SWAP2
00002d6c: ADD
00002d6d: ADD
00002d6e: MSTORE
00002d6f: POP
00002d70: POP
00002d71: PUSH1 0x01
00002d73: ADD
00002d74: PUSH2 0x2cd9
00002d77: JUMP
00002d78: JUMPDEST
00002d79: POP
00002d7a: PUSH32 0x87d613aedbcc0b9877365fa7364ed182565d099028f29aa3e67a1c88e7843a47
00002d9b: DUP6
00002d9c: DUP6
00002d9d: DUP4
00002d9e: DUP7
00002d9f: PUSH1 0x40
00002da1: MLOAD
00002da2: PUSH2 0x2dae
00002da5: SWAP5
00002da6: SWAP4
00002da7: SWAP3
00002da8: SWAP2
00002da9: SWAP1
00002daa: PUSH2 0x5a0d
00002dad: JUMP
00002dae: JUMPDEST
00002daf: PUSH1 0x40
00002db1: MLOAD
00002db2: DUP1
00002db3: SWAP2
00002db4: SUB
00002db5: SWAP1
00002db6: LOG1
00002db7: POP
00002db8: PUSH2 0x1150
00002dbb: PUSH2 0x2f5b
00002dbe: JUMP
00002dbf: JUMPDEST
00002dc0: PUSH1 0x00
00002dc2: PUSH1 0x01
00002dc4: PUSH1 0x01
00002dc6: PUSH1 0xe0
00002dc8: SHL
00002dc9: SUB
00002dca: NOT
00002dcb: DUP3
00002dcc: AND
00002dcd: PUSH4 0x7965db0b
00002dd2: PUSH1 0xe0
00002dd4: SHL
00002dd5: EQ
00002dd6: DUP1
00002dd7: PUSH2 0x0bfd
00002dda: JUMPI
00002ddb: POP
00002ddc: PUSH4 0x01ffc9a7
00002de1: PUSH1 0xe0
00002de3: SHL
00002de4: PUSH1 0x01
00002de6: PUSH1 0x01
00002de8: PUSH1 0xe0
00002dea: SHL
00002deb: SUB
00002dec: NOT
00002ded: DUP4
00002dee: AND
00002def: EQ
00002df0: PUSH2 0x0bfd
00002df3: JUMP
00002df4: JUMPDEST
00002df5: PUSH2 0x1648
00002df8: DUP2
00002df9: CALLER
00002dfa: PUSH2 0x3bf3
00002dfd: JUMP
00002dfe: JUMPDEST
00002dff: PUSH32 0x9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00
00002e20: DUP1
00002e21: SLOAD
00002e22: PUSH1 0x01
00002e24: NOT
00002e25: ADD
00002e26: PUSH2 0x2e42
00002e29: JUMPI
00002e2a: PUSH1 0x40
00002e2c: MLOAD
00002e2d: PUSH4 0x3ee5aeb5
00002e32: PUSH1 0xe0
00002e34: SHL
00002e35: DUP2
00002e36: MSTORE
00002e37: PUSH1 0x04
00002e39: ADD
00002e3a: PUSH1 0x40
00002e3c: MLOAD
00002e3d: DUP1
00002e3e: SWAP2
00002e3f: SUB
00002e40: SWAP1
00002e41: REVERT
00002e42: JUMPDEST
00002e43: PUSH1 0x02
00002e45: SWAP1
00002e46: SSTORE
00002e47: JUMP
00002e48: JUMPDEST
00002e49: PUSH1 0x40
00002e4b: MLOAD
00002e4c: PUSH4 0x70a08231
00002e51: PUSH1 0xe0
00002e53: SHL
00002e54: DUP2
00002e55: MSTORE
00002e56: ADDRESS
00002e57: PUSH1 0x04
00002e59: DUP3
00002e5a: ADD
00002e5b: MSTORE
00002e5c: PUSH1 0x00
00002e5e: SWAP1
00002e5f: DUP2
00002e60: SWAP1
00002e61: PUSH1 0x01
00002e63: PUSH1 0x01
00002e65: PUSH1 0xa0
00002e67: SHL
00002e68: SUB
00002e69: DUP5
00002e6a: AND
00002e6b: SWAP1
00002e6c: PUSH4 0x70a08231
00002e71: SWAP1
00002e72: PUSH1 0x24
00002e74: ADD
00002e75: PUSH1 0x20
00002e77: PUSH1 0x40
00002e79: MLOAD
00002e7a: DUP1
00002e7b: DUP4
00002e7c: SUB
00002e7d: DUP2
00002e7e: DUP7
00002e7f: GAS
00002e80: STATICCALL
00002e81: ISZERO
00002e82: DUP1
00002e83: ISZERO
00002e84: PUSH2 0x2e91
00002e87: JUMPI
00002e88: RETURNDATASIZE
00002e89: PUSH1 0x00
00002e8b: DUP1
00002e8c: RETURNDATACOPY
00002e8d: RETURNDATASIZE
00002e8e: PUSH1 0x00
00002e90: REVERT
00002e91: JUMPDEST
00002e92: POP
00002e93: POP
00002e94: POP
00002e95: POP
00002e96: PUSH1 0x40
00002e98: MLOAD
00002e99: RETURNDATASIZE
00002e9a: PUSH1 0x1f
00002e9c: NOT
00002e9d: PUSH1 0x1f
00002e9f: DUP3
00002ea0: ADD
00002ea1: AND
00002ea2: DUP3
00002ea3: ADD
00002ea4: DUP1
00002ea5: PUSH1 0x40
00002ea7: MSTORE
00002ea8: POP
00002ea9: DUP2
00002eaa: ADD
00002eab: SWAP1
00002eac: PUSH2 0x2eb5
00002eaf: SWAP2
00002eb0: SWAP1
00002eb1: PUSH2 0x57e9
00002eb4: JUMP
00002eb5: JUMPDEST
00002eb6: PUSH1 0x01
00002eb8: PUSH1 0x01
00002eba: PUSH1 0xa0
00002ebc: SHL
00002ebd: SUB
00002ebe: DUP5
00002ebf: AND
00002ec0: PUSH1 0x00
00002ec2: SWAP1
00002ec3: DUP2
00002ec4: MSTORE
00002ec5: PUSH1 0x06
00002ec7: PUSH1 0x20
00002ec9: SWAP1
00002eca: DUP2
00002ecb: MSTORE
00002ecc: PUSH1 0x40
00002ece: DUP1
00002ecf: DUP4
00002ed0: KECCAK256
00002ed1: SLOAD
00002ed2: PUSH1 0x0a
00002ed4: SWAP1
00002ed5: SWAP3
00002ed6: MSTORE
00002ed7: SWAP1
00002ed8: SWAP2
00002ed9: KECCAK256
00002eda: SLOAD
00002edb: SWAP2
00002edc: SWAP3
00002edd: POP
00002ede: SWAP1
00002edf: DUP1
00002ee0: PUSH2 0x2ee9
00002ee3: DUP4
00002ee4: DUP6
00002ee5: PUSH2 0x57aa
00002ee8: JUMP
00002ee9: JUMPDEST
00002eea: PUSH2 0x2ef3
00002eed: SWAP2
00002eee: SWAP1
00002eef: PUSH2 0x57aa
00002ef2: JUMP
00002ef3: JUMPDEST
00002ef4: SWAP6
00002ef5: SWAP5
00002ef6: POP
00002ef7: POP
00002ef8: POP
00002ef9: POP
00002efa: POP
00002efb: JUMP
00002efc: JUMPDEST
00002efd: PUSH1 0x40
00002eff: MLOAD
00002f00: PUSH1 0x01
00002f02: PUSH1 0x01
00002f04: PUSH1 0xa0
00002f06: SHL
00002f07: SUB
00002f08: DUP4
00002f09: DUP2
00002f0a: AND
00002f0b: PUSH1 0x24
00002f0d: DUP4
00002f0e: ADD
00002f0f: MSTORE
00002f10: PUSH1 0x44
00002f12: DUP3
00002f13: ADD
00002f14: DUP4
00002f15: SWAP1
00002f16: MSTORE
00002f17: PUSH2 0x0cae
00002f1a: SWAP2
00002f1b: DUP6
00002f1c: SWAP2
00002f1d: DUP3
00002f1e: AND
00002f1f: SWAP1
00002f20: PUSH4 0xa9059cbb
00002f25: SWAP1
00002f26: PUSH1 0x64
00002f28: ADD
00002f29: JUMPDEST
00002f2a: PUSH1 0x40
00002f2c: MLOAD
00002f2d: PUSH1 0x20
00002f2f: DUP2
00002f30: DUP4
00002f31: SUB
00002f32: SUB
00002f33: DUP2
00002f34: MSTORE
00002f35: SWAP1
00002f36: PUSH1 0x40
00002f38: MSTORE
00002f39: SWAP2
00002f3a: POP
00002f3b: PUSH1 0xe0
00002f3d: SHL
00002f3e: PUSH1 0x20
00002f40: DUP3
00002f41: ADD
00002f42: DUP1
00002f43: MLOAD
00002f44: PUSH1 0x01
00002f46: PUSH1 0x01
00002f48: PUSH1 0xe0
00002f4a: SHL
00002f4b: SUB
00002f4c: DUP4
00002f4d: DUP2
00002f4e: DUP4
00002f4f: AND
00002f50: OR
00002f51: DUP4
00002f52: MSTORE
00002f53: POP
00002f54: POP
00002f55: POP
00002f56: POP
00002f57: PUSH2 0x3c2c
00002f5a: JUMP
00002f5b: JUMPDEST
00002f5c: PUSH1 0x01
00002f5e: PUSH32 0x9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00
00002f7f: SSTORE
00002f80: JUMP
00002f81: JUMPDEST
00002f82: DUP1
00002f83: SELFBALANCE
00002f84: LT
00002f85: ISZERO
00002f86: PUSH2 0x2fab
00002f89: JUMPI
00002f8a: PUSH1 0x40
00002f8c: MLOAD
00002f8d: PUSH4 0xcf479181
00002f92: PUSH1 0xe0
00002f94: SHL
00002f95: DUP2
00002f96: MSTORE
00002f97: SELFBALANCE
00002f98: PUSH1 0x04
00002f9a: DUP3
00002f9b: ADD
00002f9c: MSTORE
00002f9d: PUSH1 0x24
00002f9f: DUP2
00002fa0: ADD
00002fa1: DUP3
00002fa2: SWAP1
00002fa3: MSTORE
00002fa4: PUSH1 0x44
00002fa6: ADD
00002fa7: PUSH2 0x0d19
00002faa: JUMP
00002fab: JUMPDEST
00002fac: PUSH1 0x00
00002fae: DUP1
00002faf: DUP4
00002fb0: PUSH1 0x01
00002fb2: PUSH1 0x01
00002fb4: PUSH1 0xa0
00002fb6: SHL
00002fb7: SUB
00002fb8: AND
00002fb9: DUP4
00002fba: PUSH1 0x40
00002fbc: MLOAD
00002fbd: PUSH1 0x00
00002fbf: PUSH1 0x40
00002fc1: MLOAD
00002fc2: DUP1
00002fc3: DUP4
00002fc4: SUB
00002fc5: DUP2
00002fc6: DUP6
00002fc7: DUP8
00002fc8: GAS
00002fc9: CALL
00002fca: SWAP3
00002fcb: POP
00002fcc: POP
00002fcd: POP
00002fce: RETURNDATASIZE
00002fcf: DUP1
00002fd0: PUSH1 0x00
00002fd2: DUP2
00002fd3: EQ
00002fd4: PUSH2 0x2ff9
00002fd7: JUMPI
00002fd8: PUSH1 0x40
00002fda: MLOAD
00002fdb: SWAP2
00002fdc: POP
00002fdd: PUSH1 0x1f
00002fdf: NOT
00002fe0: PUSH1 0x3f
00002fe2: RETURNDATASIZE
00002fe3: ADD
00002fe4: AND
00002fe5: DUP3
00002fe6: ADD
00002fe7: PUSH1 0x40
00002fe9: MSTORE
00002fea: RETURNDATASIZE
00002feb: DUP3
00002fec: MSTORE
00002fed: RETURNDATASIZE
00002fee: PUSH1 0x00
00002ff0: PUSH1 0x20
00002ff2: DUP5
00002ff3: ADD
00002ff4: RETURNDATACOPY
00002ff5: PUSH2 0x2ffe
00002ff8: JUMP
00002ff9: JUMPDEST
00002ffa: PUSH1 0x60
00002ffc: SWAP2
00002ffd: POP
00002ffe: JUMPDEST
00002fff: POP
00003000: SWAP2
00003001: POP
00003002: SWAP2
00003003: POP
00003004: DUP2
00003005: PUSH2 0x1150
00003008: JUMPI
00003009: PUSH2 0x1150
0000300c: DUP2
0000300d: PUSH2 0x3c9d
00003010: JUMP
00003011: JUMPDEST
00003012: PUSH1 0x00
00003014: DUP1
00003015: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00
00003036: PUSH2 0x0bfd
00003039: JUMP
0000303a: JUMPDEST
0000303b: PUSH2 0x3042
0000303e: PUSH2 0x3cc5
00003041: JUMP
00003042: JUMPDEST
00003043: JUMP
00003044: JUMPDEST
00003045: PUSH2 0x304c
00003048: PUSH2 0x3cc5
0000304b: JUMP
0000304c: JUMPDEST
0000304d: PUSH2 0x3042
00003050: PUSH2 0x3cea
00003053: JUMP
00003054: JUMPDEST
00003055: PUSH2 0x305c
00003058: PUSH2 0x3cc5
0000305b: JUMP
0000305c: JUMPDEST
0000305d: PUSH2 0x1911
00003060: DUP3
00003061: DUP3
00003062: PUSH2 0x3cf2
00003065: JUMP
00003066: JUMPDEST
00003067: PUSH1 0x00
00003069: PUSH1 0x00
0000306b: DUP1
0000306c: MLOAD
0000306d: PUSH1 0x20
0000306f: PUSH2 0x5e3b
00003072: DUP4
00003073: CODECOPY
00003074: DUP2
00003075: MLOAD
00003076: SWAP2
00003077: MSTORE
00003078: DUP2
00003079: PUSH2 0x3082
0000307c: DUP6
0000307d: DUP6
0000307e: PUSH2 0x3d53
00003081: JUMP
00003082: JUMPDEST
00003083: SWAP1
00003084: POP
00003085: DUP1
00003086: ISZERO
00003087: PUSH2 0x1aa6
0000308a: JUMPI
0000308b: PUSH1 0x00
0000308d: DUP6
0000308e: DUP2
0000308f: MSTORE
00003090: PUSH1 0x20
00003092: DUP4
00003093: SWAP1
00003094: MSTORE
00003095: PUSH1 0x40
00003097: SWAP1
00003098: KECCAK256
00003099: PUSH2 0x30a2
0000309c: SWAP1
0000309d: DUP6
0000309e: PUSH2 0x3df8
000030a1: JUMP
000030a2: JUMPDEST
000030a3: POP
000030a4: SWAP5
000030a5: SWAP4
000030a6: POP
000030a7: POP
000030a8: POP
000030a9: POP
000030aa: JUMP
000030ab: JUMPDEST
000030ac: PUSH1 0x00
000030ae: DUP1
000030af: MLOAD
000030b0: PUSH1 0x20
000030b2: PUSH2 0x5efb
000030b5: DUP4
000030b6: CODECOPY
000030b7: DUP2
000030b8: MLOAD
000030b9: SWAP2
000030ba: MSTORE
000030bb: SLOAD
000030bc: PUSH1 0xff
000030be: AND
000030bf: ISZERO
000030c0: PUSH2 0x3042
000030c3: JUMPI
000030c4: PUSH1 0x40
000030c6: MLOAD
000030c7: PUSH4 0xd93c0665
000030cc: PUSH1 0xe0
000030ce: SHL
000030cf: DUP2
000030d0: MSTORE
000030d1: PUSH1 0x04
000030d3: ADD
000030d4: PUSH1 0x40
000030d6: MLOAD
000030d7: DUP1
000030d8: SWAP2
000030d9: SUB
000030da: SWAP1
000030db: REVERT
000030dc: JUMPDEST
000030dd: PUSH2 0x30e7
000030e0: DUP5
000030e1: DUP5
000030e2: DUP4
000030e3: PUSH2 0x3e0d
000030e6: JUMP
000030e7: JUMPDEST
000030e8: PUSH1 0x00
000030ea: PUSH2 0x30f3
000030ed: DUP5
000030ee: DUP4
000030ef: PUSH2 0x3eaa
000030f2: JUMP
000030f3: JUMPDEST
000030f4: SWAP1
000030f5: POP
000030f6: PUSH2 0x3109
000030f9: PUSH1 0x01
000030fb: PUSH1 0x01
000030fd: PUSH1 0xa0
000030ff: SHL
00003100: SUB
00003101: DUP6
00003102: AND
00003103: DUP5
00003104: DUP4
00003105: PUSH2 0x2efc
00003108: JUMP
00003109: JUMPDEST
0000310a: PUSH1 0x40
0000310c: DUP1
0000310d: MLOAD
0000310e: DUP7
0000310f: DUP2
00003110: MSTORE
00003111: PUSH1 0x01
00003113: PUSH1 0x01
00003115: PUSH1 0xa0
00003117: SHL
00003118: SUB
00003119: DUP1
0000311a: DUP8
0000311b: AND
0000311c: PUSH1 0x20
0000311e: DUP4
0000311f: ADD
00003120: MSTORE
00003121: DUP6
00003122: AND
00003123: SWAP2
00003124: DUP2
00003125: ADD
00003126: SWAP2
00003127: SWAP1
00003128: SWAP2
00003129: MSTORE
0000312a: PUSH1 0x60
0000312c: DUP2
0000312d: ADD
0000312e: DUP3
0000312f: SWAP1
00003130: MSTORE
00003131: PUSH32 0xc0d3fbcabbd045cd64b0a5a49c1cd3276adc9644e8ba007424ccda91f778257a
00003152: SWAP1
00003153: PUSH1 0x80
00003155: ADD
00003156: JUMPDEST
00003157: PUSH1 0x40
00003159: MLOAD
0000315a: DUP1
0000315b: SWAP2
0000315c: SUB
0000315d: SWAP1
0000315e: LOG1
0000315f: POP
00003160: POP
00003161: POP
00003162: POP
00003163: POP
00003164: JUMP
00003165: JUMPDEST
00003166: PUSH1 0x40
00003168: MLOAD
00003169: PUSH1 0x01
0000316b: PUSH1 0x01
0000316d: PUSH1 0xa0
0000316f: SHL
00003170: SUB
00003171: DUP5
00003172: DUP2
00003173: AND
00003174: PUSH1 0x24
00003176: DUP4
00003177: ADD
00003178: MSTORE
00003179: DUP4
0000317a: DUP2
0000317b: AND
0000317c: PUSH1 0x44
0000317e: DUP4
0000317f: ADD
00003180: MSTORE
00003181: PUSH1 0x64
00003183: DUP3
00003184: ADD
00003185: DUP4
00003186: SWAP1
00003187: MSTORE
00003188: PUSH2 0x1150
0000318b: SWAP2
0000318c: DUP7
0000318d: SWAP2
0000318e: DUP3
0000318f: AND
00003190: SWAP1
00003191: PUSH4 0x23b872dd
00003196: SWAP1
00003197: PUSH1 0x84
00003199: ADD
0000319a: PUSH2 0x2f29
0000319d: JUMP
0000319e: JUMPDEST
0000319f: PUSH1 0x40
000031a1: MLOAD
000031a2: PUSH4 0x70a08231
000031a7: PUSH1 0xe0
000031a9: SHL
000031aa: DUP2
000031ab: MSTORE
000031ac: ADDRESS
000031ad: PUSH1 0x04
000031af: DUP3
000031b0: ADD
000031b1: MSTORE
000031b2: PUSH1 0x00
000031b4: SWAP1
000031b5: PUSH1 0x01
000031b7: PUSH1 0x01
000031b9: PUSH1 0xa0
000031bb: SHL
000031bc: SUB
000031bd: DUP6
000031be: AND
000031bf: SWAP1
000031c0: PUSH4 0x70a08231
000031c5: SWAP1
000031c6: PUSH1 0x24
000031c8: ADD
000031c9: PUSH1 0x20
000031cb: PUSH1 0x40
000031cd: MLOAD
000031ce: DUP1
000031cf: DUP4
000031d0: SUB
000031d1: DUP2
000031d2: DUP7
000031d3: GAS
000031d4: STATICCALL
000031d5: ISZERO
000031d6: DUP1
000031d7: ISZERO
000031d8: PUSH2 0x31e5
000031db: JUMPI
000031dc: RETURNDATASIZE
000031dd: PUSH1 0x00
000031df: DUP1
000031e0: RETURNDATACOPY
000031e1: RETURNDATASIZE
000031e2: PUSH1 0x00
000031e4: REVERT
000031e5: JUMPDEST
000031e6: POP
000031e7: POP
000031e8: POP
000031e9: POP
000031ea: PUSH1 0x40
000031ec: MLOAD
000031ed: RETURNDATASIZE
000031ee: PUSH1 0x1f
000031f0: NOT
000031f1: PUSH1 0x1f
000031f3: DUP3
000031f4: ADD
000031f5: AND
000031f6: DUP3
000031f7: ADD
000031f8: DUP1
000031f9: PUSH1 0x40
000031fb: MSTORE
000031fc: POP
000031fd: DUP2
000031fe: ADD
000031ff: SWAP1
00003200: PUSH2 0x3209
00003203: SWAP2
00003204: SWAP1
00003205: PUSH2 0x57e9
00003208: JUMP
00003209: JUMPDEST
0000320a: SWAP1
0000320b: POP
0000320c: PUSH1 0x00
0000320e: PUSH2 0x3217
00003211: DUP5
00003212: DUP4
00003213: PUSH2 0x57aa
00003216: JUMP
00003217: JUMPDEST
00003218: SWAP1
00003219: POP
0000321a: DUP3
0000321b: DUP2
0000321c: EQ
0000321d: PUSH2 0x1083
00003220: JUMPI
00003221: PUSH1 0x40
00003223: MLOAD
00003224: PUSH4 0x9bfa3c17
00003229: PUSH1 0xe0
0000322b: SHL
0000322c: DUP2
0000322d: MSTORE
0000322e: PUSH1 0x04
00003230: ADD
00003231: PUSH1 0x40
00003233: MLOAD
00003234: DUP1
00003235: SWAP2
00003236: SUB
00003237: SWAP1
00003238: REVERT
00003239: JUMPDEST
0000323a: PUSH2 0x3246
0000323d: DUP6
0000323e: DUP6
0000323f: DUP6
00003240: DUP6
00003241: DUP6
00003242: PUSH2 0x3f83
00003245: JUMP
00003246: JUMPDEST
00003247: PUSH2 0x1083
0000324a: DUP6
0000324b: DUP4
0000324c: DUP4
0000324d: PUSH2 0x4114
00003250: JUMP
00003251: JUMPDEST
00003252: PUSH1 0x00
00003254: PUSH1 0x00
00003256: DUP1
00003257: MLOAD
00003258: PUSH1 0x20
0000325a: PUSH2 0x5e3b
0000325d: DUP4
0000325e: CODECOPY
0000325f: DUP2
00003260: MLOAD
00003261: SWAP2
00003262: MSTORE
00003263: DUP2
00003264: PUSH2 0x326d
00003267: DUP6
00003268: DUP6
00003269: PUSH2 0x434b
0000326c: JUMP
0000326d: JUMPDEST
0000326e: SWAP1
0000326f: POP
00003270: DUP1
00003271: ISZERO
00003272: PUSH2 0x1aa6
00003275: JUMPI
00003276: PUSH1 0x00
00003278: DUP6
00003279: DUP2
0000327a: MSTORE
0000327b: PUSH1 0x20
0000327d: DUP4
0000327e: SWAP1
0000327f: MSTORE
00003280: PUSH1 0x40
00003282: SWAP1
00003283: KECCAK256
00003284: PUSH2 0x30a2
00003287: SWAP1
00003288: DUP6
00003289: PUSH2 0x43c7
0000328c: JUMP
0000328d: JUMPDEST
0000328e: PUSH2 0x3295
00003291: PUSH2 0x43dc
00003294: JUMP
00003295: JUMPDEST
00003296: PUSH1 0x00
00003298: DUP1
00003299: MLOAD
0000329a: PUSH1 0x20
0000329c: PUSH2 0x5efb
0000329f: DUP4
000032a0: CODECOPY
000032a1: DUP2
000032a2: MLOAD
000032a3: SWAP2
000032a4: MSTORE
000032a5: DUP1
000032a6: SLOAD
000032a7: PUSH1 0xff
000032a9: NOT
000032aa: AND
000032ab: DUP2
000032ac: SSTORE
000032ad: PUSH32 0x5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa
000032ce: CALLER
000032cf: JUMPDEST
000032d0: PUSH1 0x40
000032d2: MLOAD
000032d3: PUSH1 0x01
000032d5: PUSH1 0x01
000032d7: PUSH1 0xa0
000032d9: SHL
000032da: SUB
000032db: SWAP1
000032dc: SWAP2
000032dd: AND
000032de: DUP2
000032df: MSTORE
000032e0: PUSH1 0x20
000032e2: ADD
000032e3: PUSH1 0x40
000032e5: MLOAD
000032e6: DUP1
000032e7: SWAP2
000032e8: SUB
000032e9: SWAP1
000032ea: LOG1
000032eb: POP
000032ec: JUMP
000032ed: JUMPDEST
000032ee: PUSH1 0x00
000032f0: PUSH2 0x0bfd
000032f3: PUSH2 0x32fa
000032f6: PUSH2 0x440c
000032f9: JUMP
000032fa: JUMPDEST
000032fb: DUP4
000032fc: PUSH1 0x40
000032fe: MLOAD
000032ff: PUSH2 0x1901
00003302: PUSH1 0xf0
00003304: SHL
00003305: DUP2
00003306: MSTORE
00003307: PUSH1 0x02
00003309: DUP2
0000330a: ADD
0000330b: SWAP3
0000330c: SWAP1
0000330d: SWAP3
0000330e: MSTORE
0000330f: PUSH1 0x22
00003311: DUP3
00003312: ADD
00003313: MSTORE
00003314: PUSH1 0x42
00003316: SWAP1
00003317: KECCAK256
00003318: SWAP1
00003319: JUMP
0000331a: JUMPDEST
0000331b: PUSH1 0x00
0000331d: DUP1
0000331e: PUSH1 0x00
00003320: DUP1
00003321: PUSH2 0x332a
00003324: DUP7
00003325: DUP7
00003326: PUSH2 0x441b
00003329: JUMP
0000332a: JUMPDEST
0000332b: SWAP3
0000332c: POP
0000332d: SWAP3
0000332e: POP
0000332f: SWAP3
00003330: POP
00003331: PUSH2 0x333a
00003334: DUP3
00003335: DUP3
00003336: PUSH2 0x4468
00003339: JUMP
0000333a: JUMPDEST
0000333b: POP
0000333c: SWAP1
0000333d: SWAP5
0000333e: SWAP4
0000333f: POP
00003340: POP
00003341: POP
00003342: POP
00003343: JUMP
00003344: JUMPDEST
00003345: PUSH2 0x3350
00003348: DUP5
00003349: DUP5
0000334a: DUP5
0000334b: DUP5
0000334c: PUSH2 0x4521
0000334f: JUMP
00003350: JUMPDEST
00003351: PUSH2 0x1150
00003354: DUP5
00003355: DUP3
00003356: PUSH1 0x00
00003358: PUSH2 0x4114
0000335b: JUMP
0000335c: JUMPDEST
0000335d: ADDRESS
0000335e: PUSH1 0x01
00003360: PUSH1 0x01
00003362: PUSH1 0xa0
00003364: SHL
00003365: SUB
00003366: PUSH32 0x0000000000000000000000000aec3b2dce260d75dbd0cc726200d09e6fa3ff35
00003387: AND
00003388: EQ
00003389: DUP1
0000338a: PUSH2 0x33e3
0000338d: JUMPI
0000338e: POP
0000338f: PUSH32 0x0000000000000000000000000aec3b2dce260d75dbd0cc726200d09e6fa3ff35
000033b0: PUSH1 0x01
000033b2: PUSH1 0x01
000033b4: PUSH1 0xa0
000033b6: SHL
000033b7: SUB
000033b8: AND
000033b9: PUSH2 0x33d7
000033bc: PUSH1 0x00
000033be: DUP1
000033bf: MLOAD
000033c0: PUSH1 0x20
000033c2: PUSH2 0x5ebb
000033c5: DUP4
000033c6: CODECOPY
000033c7: DUP2
000033c8: MLOAD
000033c9: SWAP2
000033ca: MSTORE
000033cb: SLOAD
000033cc: PUSH1 0x01
000033ce: PUSH1 0x01
000033d0: PUSH1 0xa0
000033d2: SHL
000033d3: SUB
000033d4: AND
000033d5: SWAP1
000033d6: JUMP
000033d7: JUMPDEST
000033d8: PUSH1 0x01
000033da: PUSH1 0x01
000033dc: PUSH1 0xa0
000033de: SHL
000033df: SUB
000033e0: AND
000033e1: EQ
000033e2: ISZERO
000033e3: JUMPDEST
000033e4: ISZERO
000033e5: PUSH2 0x3042
000033e8: JUMPI
000033e9: PUSH1 0x40
000033eb: MLOAD
000033ec: PUSH4 0x703e46dd
000033f1: PUSH1 0xe1
000033f3: SHL
000033f4: DUP2
000033f5: MSTORE
000033f6: PUSH1 0x04
000033f8: ADD
000033f9: PUSH1 0x40
000033fb: MLOAD
000033fc: DUP1
000033fd: SWAP2
000033fe: SUB
000033ff: SWAP1
00003400: REVERT
00003401: JUMPDEST
00003402: PUSH32 0x189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e3
00003423: PUSH2 0x1911
00003426: DUP2
00003427: PUSH2 0x2df4
0000342a: JUMP
0000342b: JUMPDEST
0000342c: DUP2
0000342d: PUSH1 0x01
0000342f: PUSH1 0x01
00003431: PUSH1 0xa0
00003433: SHL
00003434: SUB
00003435: AND
00003436: PUSH4 0x52d1902d
0000343b: PUSH1 0x40
0000343d: MLOAD
0000343e: DUP2
0000343f: PUSH4 0xffffffff
00003444: AND
00003445: PUSH1 0xe0
00003447: SHL
00003448: DUP2
00003449: MSTORE
0000344a: PUSH1 0x04
0000344c: ADD
0000344d: PUSH1 0x20
0000344f: PUSH1 0x40
00003451: MLOAD
00003452: DUP1
00003453: DUP4
00003454: SUB
00003455: DUP2
00003456: DUP7
00003457: GAS
00003458: STATICCALL
00003459: SWAP3
0000345a: POP
0000345b: POP
0000345c: POP
0000345d: DUP1
0000345e: ISZERO
0000345f: PUSH2 0x3485
00003462: JUMPI
00003463: POP
00003464: PUSH1 0x40
00003466: DUP1
00003467: MLOAD
00003468: PUSH1 0x1f
0000346a: RETURNDATASIZE
0000346b: SWAP1
0000346c: DUP2
0000346d: ADD
0000346e: PUSH1 0x1f
00003470: NOT
00003471: AND
00003472: DUP3
00003473: ADD
00003474: SWAP1
00003475: SWAP3
00003476: MSTORE
00003477: PUSH2 0x3482
0000347a: SWAP2
0000347b: DUP2
0000347c: ADD
0000347d: SWAP1
0000347e: PUSH2 0x57e9
00003481: JUMP
00003482: JUMPDEST
00003483: PUSH1 0x01
00003485: JUMPDEST
00003486: PUSH2 0x34ad
00003489: JUMPI
0000348a: PUSH1 0x40
0000348c: MLOAD
0000348d: PUSH4 0x4c9c8ce3
00003492: PUSH1 0xe0
00003494: SHL
00003495: DUP2
00003496: MSTORE
00003497: PUSH1 0x01
00003499: PUSH1 0x01
0000349b: PUSH1 0xa0
0000349d: SHL
0000349e: SUB
0000349f: DUP4
000034a0: AND
000034a1: PUSH1 0x04
000034a3: DUP3
000034a4: ADD
000034a5: MSTORE
000034a6: PUSH1 0x24
000034a8: ADD
000034a9: PUSH2 0x0d19
000034ac: JUMP
000034ad: JUMPDEST
000034ae: PUSH1 0x00
000034b0: DUP1
000034b1: MLOAD
000034b2: PUSH1 0x20
000034b4: PUSH2 0x5ebb
000034b7: DUP4
000034b8: CODECOPY
000034b9: DUP2
000034ba: MLOAD
000034bb: SWAP2
000034bc: MSTORE
000034bd: DUP2
000034be: EQ
000034bf: PUSH2 0x34de
000034c2: JUMPI
000034c3: PUSH1 0x40
000034c5: MLOAD
000034c6: PUSH4 0x2a875269
000034cb: PUSH1 0xe2
000034cd: SHL
000034ce: DUP2
000034cf: MSTORE
000034d0: PUSH1 0x04
000034d2: DUP2
000034d3: ADD
000034d4: DUP3
000034d5: SWAP1
000034d6: MSTORE
000034d7: PUSH1 0x24
000034d9: ADD
000034da: PUSH2 0x0d19
000034dd: JUMP
000034de: JUMPDEST
000034df: PUSH2 0x0cae
000034e2: DUP4
000034e3: DUP4
000034e4: PUSH2 0x46e4
000034e7: JUMP
000034e8: JUMPDEST
000034e9: ADDRESS
000034ea: PUSH1 0x01
000034ec: PUSH1 0x01
000034ee: PUSH1 0xa0
000034f0: SHL
000034f1: SUB
000034f2: PUSH32 0x0000000000000000000000000aec3b2dce260d75dbd0cc726200d09e6fa3ff35
00003513: AND
00003514: EQ
00003515: PUSH2 0x3042
00003518: JUMPI
00003519: PUSH1 0x40
0000351b: MLOAD
0000351c: PUSH4 0x703e46dd
00003521: PUSH1 0xe1
00003523: SHL
00003524: DUP2
00003525: MSTORE
00003526: PUSH1 0x04
00003528: ADD
00003529: PUSH1 0x40
0000352b: MLOAD
0000352c: DUP1
0000352d: SWAP2
0000352e: SUB
0000352f: SWAP1
00003530: REVERT
00003531: JUMPDEST
00003532: PUSH2 0x353c
00003535: DUP4
00003536: DUP4
00003537: DUP4
00003538: PUSH2 0x3e0d
0000353b: JUMP
0000353c: JUMPDEST
0000353d: PUSH1 0x40
0000353f: DUP1
00003540: MLOAD
00003541: DUP5
00003542: DUP2
00003543: MSTORE
00003544: PUSH1 0x01
00003546: PUSH1 0x01
00003548: PUSH1 0xa0
0000354a: SHL
0000354b: SUB
0000354c: DUP5
0000354d: AND
0000354e: PUSH1 0x20
00003550: DUP3
00003551: ADD
00003552: MSTORE
00003553: SWAP1
00003554: DUP2
00003555: ADD
00003556: DUP3
00003557: SWAP1
00003558: MSTORE
00003559: PUSH32 0xf5561ca90e56855f12004e8905a4a47a9fc395858c8a6cc9762c13df547e1e8f
0000357a: SWAP1
0000357b: PUSH1 0x60
0000357d: ADD
0000357e: PUSH2 0x10fa
00003581: JUMP
00003582: JUMPDEST
00003583: PUSH2 0x358d
00003586: DUP5
00003587: DUP5
00003588: DUP4
00003589: PUSH2 0x3e0d
0000358c: JUMP
0000358d: JUMPDEST
0000358e: PUSH2 0x35a1
00003591: PUSH1 0x01
00003593: PUSH1 0x01
00003595: PUSH1 0xa0
00003597: SHL
00003598: SUB
00003599: DUP5
0000359a: AND
0000359b: DUP4
0000359c: DUP4
0000359d: PUSH2 0x2efc
000035a0: JUMP
000035a1: JUMPDEST
000035a2: PUSH1 0x40
000035a4: DUP1
000035a5: MLOAD
000035a6: DUP6
000035a7: DUP2
000035a8: MSTORE
000035a9: PUSH1 0x01
000035ab: PUSH1 0x01
000035ad: PUSH1 0xa0
000035af: SHL
000035b0: SUB
000035b1: DUP1
000035b2: DUP7
000035b3: AND
000035b4: PUSH1 0x20
000035b6: DUP4
000035b7: ADD
000035b8: MSTORE
000035b9: DUP5
000035ba: AND
000035bb: SWAP2
000035bc: DUP2
000035bd: ADD
000035be: SWAP2
000035bf: SWAP1
000035c0: SWAP2
000035c1: MSTORE
000035c2: PUSH1 0x60
000035c4: DUP2
000035c5: ADD
000035c6: DUP3
000035c7: SWAP1
000035c8: MSTORE
000035c9: PUSH32 0xc0d3fbcabbd045cd64b0a5a49c1cd3276adc9644e8ba007424ccda91f778257a
000035ea: SWAP1
000035eb: PUSH1 0x80
000035ed: ADD
000035ee: JUMPDEST
000035ef: PUSH1 0x40
000035f1: MLOAD
000035f2: DUP1
000035f3: SWAP2
000035f4: SUB
000035f5: SWAP1
000035f6: LOG1
000035f7: POP
000035f8: POP
000035f9: POP
000035fa: POP
000035fb: JUMP
000035fc: JUMPDEST
000035fd: PUSH2 0x3604
00003600: PUSH2 0x30ab
00003603: JUMP
00003604: JUMPDEST
00003605: PUSH1 0x00
00003607: DUP1
00003608: MLOAD
00003609: PUSH1 0x20
0000360b: PUSH2 0x5efb
0000360e: DUP4
0000360f: CODECOPY
00003610: DUP2
00003611: MLOAD
00003612: SWAP2
00003613: MSTORE
00003614: DUP1
00003615: SLOAD
00003616: PUSH1 0xff
00003618: NOT
00003619: AND
0000361a: PUSH1 0x01
0000361c: OR
0000361d: DUP2
0000361e: SSTORE
0000361f: PUSH32 0x62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258
00003640: CALLER
00003641: PUSH2 0x32cf
00003644: JUMP
00003645: JUMPDEST
00003646: PUSH32 0xa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d102
00003667: DUP1
00003668: SLOAD
00003669: PUSH1 0x60
0000366b: SWAP2
0000366c: PUSH1 0x00
0000366e: DUP1
0000366f: MLOAD
00003670: PUSH1 0x20
00003672: PUSH2 0x5e9b
00003675: DUP4
00003676: CODECOPY
00003677: DUP2
00003678: MLOAD
00003679: SWAP2
0000367a: MSTORE
0000367b: SWAP2
0000367c: PUSH2 0x3684
0000367f: SWAP1
00003680: PUSH2 0x5a7e
00003683: JUMP
00003684: JUMPDEST
00003685: DUP1
00003686: PUSH1 0x1f
00003688: ADD
00003689: PUSH1 0x20
0000368b: DUP1
0000368c: SWAP2
0000368d: DIV
0000368e: MUL
0000368f: PUSH1 0x20
00003691: ADD
00003692: PUSH1 0x40
00003694: MLOAD
00003695: SWAP1
00003696: DUP2
00003697: ADD
00003698: PUSH1 0x40
0000369a: MSTORE
0000369b: DUP1
0000369c: SWAP3
0000369d: SWAP2
0000369e: SWAP1
0000369f: DUP2
000036a0: DUP2
000036a1: MSTORE
000036a2: PUSH1 0x20
000036a4: ADD
000036a5: DUP3
000036a6: DUP1
000036a7: SLOAD
000036a8: PUSH2 0x36b0
000036ab: SWAP1
000036ac: PUSH2 0x5a7e
000036af: JUMP
000036b0: JUMPDEST
000036b1: DUP1
000036b2: ISZERO
000036b3: PUSH2 0x36fd
000036b6: JUMPI
000036b7: DUP1
000036b8: PUSH1 0x1f
000036ba: LT
000036bb: PUSH2 0x36d2
000036be: JUMPI
000036bf: PUSH2 0x0100
000036c2: DUP1
000036c3: DUP4
000036c4: SLOAD
000036c5: DIV
000036c6: MUL
000036c7: DUP4
000036c8: MSTORE
000036c9: SWAP2
000036ca: PUSH1 0x20
000036cc: ADD
000036cd: SWAP2
000036ce: PUSH2 0x36fd
000036d1: JUMP
000036d2: JUMPDEST
000036d3: DUP3
000036d4: ADD
000036d5: SWAP2
000036d6: SWAP1
000036d7: PUSH1 0x00
000036d9: MSTORE
000036da: PUSH1 0x20
000036dc: PUSH1 0x00
000036de: KECCAK256
000036df: SWAP1
000036e0: JUMPDEST
000036e1: DUP2
000036e2: SLOAD
000036e3: DUP2
000036e4: MSTORE
000036e5: SWAP1
000036e6: PUSH1 0x01
000036e8: ADD
000036e9: SWAP1
000036ea: PUSH1 0x20
000036ec: ADD
000036ed: DUP1
000036ee: DUP4
000036ef: GT
000036f0: PUSH2 0x36e0
000036f3: JUMPI
000036f4: DUP3
000036f5: SWAP1
000036f6: SUB
000036f7: PUSH1 0x1f
000036f9: AND
000036fa: DUP3
000036fb: ADD
000036fc: SWAP2
000036fd: JUMPDEST
000036fe: POP
000036ff: POP
00003700: POP
00003701: POP
00003702: POP
00003703: SWAP2
00003704: POP
00003705: POP
00003706: SWAP1
00003707: JUMP
00003708: JUMPDEST
00003709: PUSH32 0xa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d103
0000372a: DUP1
0000372b: SLOAD
0000372c: PUSH1 0x60
0000372e: SWAP2
0000372f: PUSH1 0x00
00003731: DUP1
00003732: MLOAD
00003733: PUSH1 0x20
00003735: PUSH2 0x5e9b
00003738: DUP4
00003739: CODECOPY
0000373a: DUP2
0000373b: MLOAD
0000373c: SWAP2
0000373d: MSTORE
0000373e: SWAP2
0000373f: PUSH2 0x3684
00003742: SWAP1
00003743: PUSH2 0x5a7e
00003746: JUMP
00003747: JUMPDEST
00003748: PUSH1 0x00
0000374a: PUSH2 0x1e12
0000374d: DUP4
0000374e: DUP4
0000374f: PUSH2 0x473a
00003752: JUMP
00003753: JUMPDEST
00003754: PUSH1 0x40
00003756: MLOAD
00003757: PUSH4 0xd505accf
0000375c: PUSH1 0xe0
0000375e: SHL
0000375f: DUP2
00003760: MSTORE
00003761: PUSH1 0x01
00003763: PUSH1 0x01
00003765: PUSH1 0xa0
00003767: SHL
00003768: SUB
00003769: DUP9
0000376a: DUP2
0000376b: AND
0000376c: PUSH1 0x04
0000376e: DUP4
0000376f: ADD
00003770: MSTORE
00003771: DUP8
00003772: DUP2
00003773: AND
00003774: PUSH1 0x24
00003776: DUP4
00003777: ADD
00003778: MSTORE
00003779: PUSH1 0x44
0000377b: DUP3
0000377c: ADD
0000377d: DUP8
0000377e: SWAP1
0000377f: MSTORE
00003780: PUSH1 0x64
00003782: DUP3
00003783: ADD
00003784: DUP7
00003785: SWAP1
00003786: MSTORE
00003787: PUSH1 0xff
00003789: DUP6
0000378a: AND
0000378b: PUSH1 0x84
0000378d: DUP4
0000378e: ADD
0000378f: MSTORE
00003790: PUSH1 0xa4
00003792: DUP3
00003793: ADD
00003794: DUP5
00003795: SWAP1
00003796: MSTORE
00003797: PUSH1 0xc4
00003799: DUP3
0000379a: ADD
0000379b: DUP4
0000379c: SWAP1
0000379d: MSTORE
0000379e: DUP10
0000379f: AND
000037a0: SWAP1
000037a1: PUSH4 0xd505accf
000037a6: SWAP1
000037a7: PUSH1 0xe4
000037a9: ADD
000037aa: PUSH1 0x00
000037ac: PUSH1 0x40
000037ae: MLOAD
000037af: DUP1
000037b0: DUP4
000037b1: SUB
000037b2: DUP2
000037b3: PUSH1 0x00
000037b5: DUP8
000037b6: DUP1
000037b7: EXTCODESIZE
000037b8: ISZERO
000037b9: DUP1
000037ba: ISZERO
000037bb: PUSH2 0x37c3
000037be: JUMPI
000037bf: PUSH1 0x00
000037c1: DUP1
000037c2: REVERT
000037c3: JUMPDEST
000037c4: POP
000037c5: GAS
000037c6: CALL
000037c7: SWAP3
000037c8: POP
000037c9: POP
000037ca: POP
000037cb: DUP1
000037cc: ISZERO
000037cd: PUSH2 0x37d4
000037d0: JUMPI
000037d1: POP
000037d2: PUSH1 0x01
000037d4: JUMPDEST
000037d5: PUSH2 0x38bf
000037d8: JUMPI
000037d9: PUSH1 0x40
000037db: MLOAD
000037dc: PUSH4 0x6eb1769f
000037e1: PUSH1 0xe1
000037e3: SHL
000037e4: DUP2
000037e5: MSTORE
000037e6: PUSH1 0x01
000037e8: PUSH1 0x01
000037ea: PUSH1 0xa0
000037ec: SHL
000037ed: SUB
000037ee: DUP9
000037ef: DUP2
000037f0: AND
000037f1: PUSH1 0x04
000037f3: DUP4
000037f4: ADD
000037f5: MSTORE
000037f6: DUP8
000037f7: DUP2
000037f8: AND
000037f9: PUSH1 0x24
000037fb: DUP4
000037fc: ADD
000037fd: MSTORE
000037fe: PUSH1 0x00
00003800: SWAP2
00003801: SWAP1
00003802: DUP11
00003803: AND
00003804: SWAP1
00003805: PUSH4 0xdd62ed3e
0000380a: SWAP1
0000380b: PUSH1 0x44
0000380d: ADD
0000380e: PUSH1 0x20
00003810: PUSH1 0x40
00003812: MLOAD
00003813: DUP1
00003814: DUP4
00003815: SUB
00003816: DUP2
00003817: DUP7
00003818: GAS
00003819: STATICCALL
0000381a: ISZERO
0000381b: DUP1
0000381c: ISZERO
0000381d: PUSH2 0x382a
00003820: JUMPI
00003821: RETURNDATASIZE
00003822: PUSH1 0x00
00003824: DUP1
00003825: RETURNDATACOPY
00003826: RETURNDATASIZE
00003827: PUSH1 0x00
00003829: REVERT
0000382a: JUMPDEST
0000382b: POP
0000382c: POP
0000382d: POP
0000382e: POP
0000382f: PUSH1 0x40
00003831: MLOAD
00003832: RETURNDATASIZE
00003833: PUSH1 0x1f
00003835: NOT
00003836: PUSH1 0x1f
00003838: DUP3
00003839: ADD
0000383a: AND
0000383b: DUP3
0000383c: ADD
0000383d: DUP1
0000383e: PUSH1 0x40
00003840: MSTORE
00003841: POP
00003842: DUP2
00003843: ADD
00003844: SWAP1
00003845: PUSH2 0x384e
00003848: SWAP2
00003849: SWAP1
0000384a: PUSH2 0x57e9
0000384d: JUMP
0000384e: JUMPDEST
0000384f: SWAP1
00003850: POP
00003851: DUP6
00003852: DUP2
00003853: LT
00003854: ISZERO
00003855: PUSH2 0x38bd
00003858: JUMPI
00003859: PUSH1 0x40
0000385b: MLOAD
0000385c: PUSH3 0x461bcd
00003860: PUSH1 0xe5
00003862: SHL
00003863: DUP2
00003864: MSTORE
00003865: PUSH1 0x20
00003867: PUSH1 0x04
00003869: DUP3
0000386a: ADD
0000386b: MSTORE
0000386c: PUSH1 0x34
0000386e: PUSH1 0x24
00003870: DUP3
00003871: ADD
00003872: MSTORE
00003873: PUSH32 0x536166655065726d69743a207065726d6974206661696c656420616e6420696e
00003894: PUSH1 0x44
00003896: DUP3
00003897: ADD
00003898: MSTORE
00003899: PUSH20 0x73756666696369656e7420616c6c6f77616e6365
000038ae: PUSH1 0x60
000038b0: SHL
000038b1: PUSH1 0x64
000038b3: DUP3
000038b4: ADD
000038b5: MSTORE
000038b6: PUSH1 0x84
000038b8: ADD
000038b9: PUSH2 0x0d19
000038bc: JUMP
000038bd: JUMPDEST
000038be: POP
000038bf: JUMPDEST
000038c0: POP
000038c1: POP
000038c2: POP
000038c3: POP
000038c4: POP
000038c5: POP
000038c6: POP
000038c7: POP
000038c8: JUMP
000038c9: JUMPDEST
000038ca: PUSH1 0x60
000038cc: PUSH1 0x00
000038ce: PUSH2 0x1e12
000038d1: DUP4
000038d2: PUSH2 0x4764
000038d5: JUMP
000038d6: JUMPDEST
000038d7: PUSH1 0x01
000038d9: PUSH1 0x01
000038db: PUSH1 0xa0
000038dd: SHL
000038de: SUB
000038df: DUP4
000038e0: AND
000038e1: PUSH1 0x00
000038e3: SWAP1
000038e4: DUP2
000038e5: MSTORE
000038e6: PUSH1 0x02
000038e8: PUSH1 0x20
000038ea: MSTORE
000038eb: PUSH1 0x40
000038ed: SWAP1
000038ee: KECCAK256
000038ef: SLOAD
000038f0: PUSH1 0xff
000038f2: AND
000038f3: PUSH2 0x391a
000038f6: JUMPI
000038f7: PUSH1 0x40
000038f9: MLOAD
000038fa: PUSH4 0x6f8bf18b
000038ff: PUSH1 0xe1
00003901: SHL
00003902: DUP2
00003903: MSTORE
00003904: PUSH1 0x01
00003906: PUSH1 0x01
00003908: PUSH1 0xa0
0000390a: SHL
0000390b: SUB
0000390c: DUP5
0000390d: AND
0000390e: PUSH1 0x04
00003910: DUP3
00003911: ADD
00003912: MSTORE
00003913: PUSH1 0x24
00003915: ADD
00003916: PUSH2 0x0d19
00003919: JUMP
0000391a: JUMPDEST
0000391b: PUSH2 0x3924
0000391e: DUP4
0000391f: DUP4
00003920: PUSH2 0x47c0
00003923: JUMP
00003924: JUMPDEST
00003925: PUSH1 0x00
00003927: DUP5
00003928: DUP2
00003929: MSTORE
0000392a: PUSH1 0x05
0000392c: PUSH1 0x20
0000392e: SWAP1
0000392f: DUP2
00003930: MSTORE
00003931: PUSH1 0x40
00003933: DUP1
00003934: DUP4
00003935: KECCAK256
00003936: DUP6
00003937: SWAP1
00003938: SSTORE
00003939: PUSH1 0x01
0000393b: PUSH1 0x01
0000393d: PUSH1 0xa0
0000393f: SHL
00003940: SUB
00003941: DUP7
00003942: AND
00003943: DUP4
00003944: MSTORE
00003945: PUSH1 0x06
00003947: SWAP1
00003948: SWAP2
00003949: MSTORE
0000394a: DUP2
0000394b: KECCAK256
0000394c: DUP1
0000394d: SLOAD
0000394e: DUP5
0000394f: SWAP3
00003950: SWAP1
00003951: PUSH2 0x395b
00003954: SWAP1
00003955: DUP5
00003956: SWAP1
00003957: PUSH2 0x58b6
0000395a: JUMP
0000395b: JUMPDEST
0000395c: SWAP1
0000395d: SWAP2
0000395e: SSTORE
0000395f: POP
00003960: POP
00003961: PUSH1 0x40
00003963: DUP1
00003964: MLOAD
00003965: DUP6
00003966: DUP2
00003967: MSTORE
00003968: PUSH1 0x01
0000396a: PUSH1 0x01
0000396c: PUSH1 0xa0
0000396e: SHL
0000396f: SUB
00003970: DUP6
00003971: AND
00003972: PUSH1 0x20
00003974: DUP3
00003975: ADD
00003976: MSTORE
00003977: SWAP1
00003978: DUP2
00003979: ADD
0000397a: DUP4
0000397b: SWAP1
0000397c: MSTORE
0000397d: PUSH1 0x01
0000397f: PUSH1 0x01
00003981: PUSH1 0x40
00003983: SHL
00003984: SUB
00003985: DUP3
00003986: AND
00003987: PUSH1 0x60
00003989: DUP3
0000398a: ADD
0000398b: MSTORE
0000398c: PUSH32 0x64f34cf1e28950c2d622aa0f9d54bc8818eead9f15ebe7377df287af05a1a168
000039ad: SWAP1
000039ae: PUSH1 0x80
000039b0: ADD
000039b1: PUSH2 0x35ee
000039b4: JUMP
000039b5: JUMPDEST
000039b6: PUSH1 0x01
000039b8: PUSH1 0x01
000039ba: PUSH1 0xa0
000039bc: SHL
000039bd: SUB
000039be: DUP3
000039bf: AND
000039c0: PUSH1 0x00
000039c2: SWAP1
000039c3: DUP2
000039c4: MSTORE
000039c5: PUSH1 0x07
000039c7: PUSH1 0x20
000039c9: MSTORE
000039ca: PUSH1 0x40
000039cc: SWAP1
000039cd: KECCAK256
000039ce: SLOAD
000039cf: PUSH2 0x39d9
000039d2: SWAP1
000039d3: PUSH1 0x01
000039d5: PUSH2 0x58b6
000039d8: JUMP
000039d9: JUMPDEST
000039da: DUP2
000039db: EQ
000039dc: PUSH2 0x39f8
000039df: JUMPI
000039e0: PUSH1 0x40
000039e2: MLOAD
000039e3: PUSH4 0x3ab3447f
000039e8: PUSH1 0xe1
000039ea: SHL
000039eb: DUP2
000039ec: MSTORE
000039ed: PUSH1 0x04
000039ef: ADD
000039f0: PUSH1 0x40
000039f2: MLOAD
000039f3: DUP1
000039f4: SWAP2
000039f5: SUB
000039f6: SWAP1
000039f7: REVERT
000039f8: JUMPDEST
000039f9: PUSH1 0x01
000039fb: PUSH1 0x01
000039fd: PUSH1 0xa0
000039ff: SHL
00003a00: SUB
00003a01: SWAP1
00003a02: SWAP2
00003a03: AND
00003a04: PUSH1 0x00
00003a06: SWAP1
00003a07: DUP2
00003a08: MSTORE
00003a09: PUSH1 0x07
00003a0b: PUSH1 0x20
00003a0d: MSTORE
00003a0e: PUSH1 0x40
00003a10: SWAP1
00003a11: KECCAK256
00003a12: SSTORE
00003a13: JUMP
00003a14: JUMPDEST
00003a15: PUSH1 0x01
00003a17: PUSH1 0x01
00003a19: PUSH1 0xa0
00003a1b: SHL
00003a1c: SUB
00003a1d: DUP4
00003a1e: AND
00003a1f: PUSH1 0x00
00003a21: SWAP1
00003a22: DUP2
00003a23: MSTORE
00003a24: PUSH1 0x02
00003a26: PUSH1 0x20
00003a28: MSTORE
00003a29: PUSH1 0x40
00003a2b: SWAP1
00003a2c: KECCAK256
00003a2d: SLOAD
00003a2e: PUSH1 0xff
00003a30: AND
00003a31: PUSH2 0x3924
00003a34: JUMPI
00003a35: PUSH1 0x40
00003a37: MLOAD
00003a38: PUSH4 0x6f8bf18b
00003a3d: PUSH1 0xe1
00003a3f: SHL
00003a40: DUP2
00003a41: MSTORE
00003a42: PUSH1 0x01
00003a44: PUSH1 0x01
00003a46: PUSH1 0xa0
00003a48: SHL
00003a49: SUB
00003a4a: DUP5
00003a4b: AND
00003a4c: PUSH1 0x04
00003a4e: DUP3
00003a4f: ADD
00003a50: MSTORE
00003a51: PUSH1 0x24
00003a53: ADD
00003a54: PUSH2 0x0d19
00003a57: JUMP
00003a58: JUMPDEST
00003a59: PUSH1 0x00
00003a5b: PUSH2 0x0bfd
00003a5e: DUP3
00003a5f: SLOAD
00003a60: SWAP1
00003a61: JUMP
00003a62: JUMPDEST
00003a63: PUSH1 0x40
00003a65: MLOAD
00003a66: PUSH4 0x02b67b57
00003a6b: PUSH1 0xe4
00003a6d: SHL
00003a6e: DUP2
00003a6f: MSTORE
00003a70: PUSH1 0x01
00003a72: PUSH1 0x01
00003a74: PUSH1 0xa0
00003a76: SHL
00003a77: SUB
00003a78: DUP7
00003a79: AND
00003a7a: SWAP1
00003a7b: PUSH4 0x2b67b570
00003a80: SWAP1
00003a81: PUSH2 0x3a94
00003a84: SWAP1
00003a85: DUP8
00003a86: SWAP1
00003a87: DUP8
00003a88: SWAP1
00003a89: DUP8
00003a8a: SWAP1
00003a8b: DUP8
00003a8c: SWAP1
00003a8d: PUSH1 0x04
00003a8f: ADD
00003a90: PUSH2 0x5adb
00003a93: JUMP
00003a94: JUMPDEST
00003a95: PUSH1 0x00
00003a97: PUSH1 0x40
00003a99: MLOAD
00003a9a: DUP1
00003a9b: DUP4
00003a9c: SUB
00003a9d: DUP2
00003a9e: PUSH1 0x00
00003aa0: DUP8
00003aa1: DUP1
00003aa2: EXTCODESIZE
00003aa3: ISZERO
00003aa4: DUP1
00003aa5: ISZERO
00003aa6: PUSH2 0x3aae
00003aa9: JUMPI
00003aaa: PUSH1 0x00
00003aac: DUP1
00003aad: REVERT
00003aae: JUMPDEST
00003aaf: POP
00003ab0: GAS
00003ab1: CALL
00003ab2: SWAP3
00003ab3: POP
00003ab4: POP
00003ab5: POP
00003ab6: DUP1
00003ab7: ISZERO
00003ab8: PUSH2 0x3abf
00003abb: JUMPI
00003abc: POP
00003abd: PUSH1 0x01
00003abf: JUMPDEST
00003ac0: PUSH2 0x1083
00003ac3: JUMPI
00003ac4: DUP3
00003ac5: MLOAD
00003ac6: MLOAD
00003ac7: PUSH1 0x20
00003ac9: DUP5
00003aca: ADD
00003acb: MLOAD
00003acc: PUSH1 0x40
00003ace: MLOAD
00003acf: PUSH4 0x927da105
00003ad4: PUSH1 0xe0
00003ad6: SHL
00003ad7: DUP2
00003ad8: MSTORE
00003ad9: PUSH1 0x01
00003adb: PUSH1 0x01
00003add: PUSH1 0xa0
00003adf: SHL
00003ae0: SUB
00003ae1: DUP8
00003ae2: DUP2
00003ae3: AND
00003ae4: PUSH1 0x04
00003ae6: DUP4
00003ae7: ADD
00003ae8: MSTORE
00003ae9: SWAP3
00003aea: DUP4
00003aeb: AND
00003aec: PUSH1 0x24
00003aee: DUP3
00003aef: ADD
00003af0: MSTORE
00003af1: SWAP1
00003af2: DUP3
00003af3: AND
00003af4: PUSH1 0x44
00003af6: DUP3
00003af7: ADD
00003af8: MSTORE
00003af9: PUSH1 0x00
00003afb: SWAP2
00003afc: DUP3
00003afd: SWAP2
00003afe: SWAP1
00003aff: DUP9
00003b00: AND
00003b01: SWAP1
00003b02: PUSH4 0x927da105
00003b07: SWAP1
00003b08: PUSH1 0x64
00003b0a: ADD
00003b0b: PUSH1 0x60
00003b0d: PUSH1 0x40
00003b0f: MLOAD
00003b10: DUP1
00003b11: DUP4
00003b12: SUB
00003b13: DUP2
00003b14: DUP7
00003b15: GAS
00003b16: STATICCALL
00003b17: ISZERO
00003b18: DUP1
00003b19: ISZERO
00003b1a: PUSH2 0x3b27
00003b1d: JUMPI
00003b1e: RETURNDATASIZE
00003b1f: PUSH1 0x00
00003b21: DUP1
00003b22: RETURNDATACOPY
00003b23: RETURNDATASIZE
00003b24: PUSH1 0x00
00003b26: REVERT
00003b27: JUMPDEST
00003b28: POP
00003b29: POP
00003b2a: POP
00003b2b: POP
00003b2c: PUSH1 0x40
00003b2e: MLOAD
00003b2f: RETURNDATASIZE
00003b30: PUSH1 0x1f
00003b32: NOT
00003b33: PUSH1 0x1f
00003b35: DUP3
00003b36: ADD
00003b37: AND
00003b38: DUP3
00003b39: ADD
00003b3a: DUP1
00003b3b: PUSH1 0x40
00003b3d: MSTORE
00003b3e: POP
00003b3f: DUP2
00003b40: ADD
00003b41: SWAP1
00003b42: PUSH2 0x3b4b
00003b45: SWAP2
00003b46: SWAP1
00003b47: PUSH2 0x5b6d
00003b4a: JUMP
00003b4b: JUMPDEST
00003b4c: POP
00003b4d: SWAP2
00003b4e: POP
00003b4f: SWAP2
00003b50: POP
00003b51: DUP5
00003b52: PUSH1 0x00
00003b54: ADD
00003b55: MLOAD
00003b56: PUSH1 0x20
00003b58: ADD
00003b59: MLOAD
00003b5a: PUSH1 0x01
00003b5c: PUSH1 0x01
00003b5e: PUSH1 0xa0
00003b60: SHL
00003b61: SUB
00003b62: AND
00003b63: DUP3
00003b64: PUSH1 0x01
00003b66: PUSH1 0x01
00003b68: PUSH1 0xa0
00003b6a: SHL
00003b6b: SUB
00003b6c: AND
00003b6d: LT
00003b6e: ISZERO
00003b6f: DUP1
00003b70: ISZERO
00003b71: PUSH2 0x3b82
00003b74: JUMPI
00003b75: POP
00003b76: DUP1
00003b77: PUSH6 0xffffffffffff
00003b7e: AND
00003b7f: TIMESTAMP
00003b80: GT
00003b81: ISZERO
00003b82: JUMPDEST
00003b83: PUSH2 0x3bec
00003b86: JUMPI
00003b87: PUSH1 0x40
00003b89: MLOAD
00003b8a: PUSH3 0x461bcd
00003b8e: PUSH1 0xe5
00003b90: SHL
00003b91: DUP2
00003b92: MSTORE
00003b93: PUSH1 0x20
00003b95: PUSH1 0x04
00003b97: DUP3
00003b98: ADD
00003b99: MSTORE
00003b9a: PUSH1 0x35
00003b9c: PUSH1 0x24
00003b9e: DUP3
00003b9f: ADD
00003ba0: MSTORE
00003ba1: PUSH32 0x536166655065726d69743a205065726d697432206661696c656420616e642069
00003bc2: PUSH1 0x44
00003bc4: DUP3
00003bc5: ADD
00003bc6: MSTORE
00003bc7: PUSH21 0x6e73756666696369656e7420616c6c6f77616e6365
00003bdd: PUSH1 0x58
00003bdf: SHL
00003be0: PUSH1 0x64
00003be2: DUP3
00003be3: ADD
00003be4: MSTORE
00003be5: PUSH1 0x84
00003be7: ADD
00003be8: PUSH2 0x0d19
00003beb: JUMP
00003bec: JUMPDEST
00003bed: POP
00003bee: POP
00003bef: PUSH2 0x1083
00003bf2: JUMP
00003bf3: JUMPDEST
00003bf4: PUSH2 0x3bfd
00003bf7: DUP3
00003bf8: DUP3
00003bf9: PUSH2 0x1aae
00003bfc: JUMP
00003bfd: JUMPDEST
00003bfe: PUSH2 0x1911
00003c01: JUMPI
00003c02: PUSH1 0x40
00003c04: MLOAD
00003c05: PUSH4 0xe2517d3f
00003c0a: PUSH1 0xe0
00003c0c: SHL
00003c0d: DUP2
00003c0e: MSTORE
00003c0f: PUSH1 0x01
00003c11: PUSH1 0x01
00003c13: PUSH1 0xa0
00003c15: SHL
00003c16: SUB
00003c17: DUP3
00003c18: AND
00003c19: PUSH1 0x04
00003c1b: DUP3
00003c1c: ADD
00003c1d: MSTORE
00003c1e: PUSH1 0x24
00003c20: DUP2
00003c21: ADD
00003c22: DUP4
00003c23: SWAP1
00003c24: MSTORE
00003c25: PUSH1 0x44
00003c27: ADD
00003c28: PUSH2 0x0d19
00003c2b: JUMP
00003c2c: JUMPDEST
00003c2d: PUSH1 0x00
00003c2f: DUP1
00003c30: PUSH1 0x20
00003c32: PUSH1 0x00
00003c34: DUP5
00003c35: MLOAD
00003c36: PUSH1 0x20
00003c38: DUP7
00003c39: ADD
00003c3a: PUSH1 0x00
00003c3c: DUP9
00003c3d: GAS
00003c3e: CALL
00003c3f: DUP1
00003c40: PUSH2 0x3c4f
00003c43: JUMPI
00003c44: PUSH1 0x40
00003c46: MLOAD
00003c47: RETURNDATASIZE
00003c48: PUSH1 0x00
00003c4a: DUP3
00003c4b: RETURNDATACOPY
00003c4c: RETURNDATASIZE
00003c4d: DUP2
00003c4e: REVERT
00003c4f: JUMPDEST
00003c50: POP
00003c51: POP
00003c52: PUSH1 0x00
00003c54: MLOAD
00003c55: RETURNDATASIZE
00003c56: SWAP2
00003c57: POP
00003c58: DUP2
00003c59: ISZERO
00003c5a: PUSH2 0x3c67
00003c5d: JUMPI
00003c5e: DUP1
00003c5f: PUSH1 0x01
00003c61: EQ
00003c62: ISZERO
00003c63: PUSH2 0x3c74
00003c66: JUMP
00003c67: JUMPDEST
00003c68: PUSH1 0x01
00003c6a: PUSH1 0x01
00003c6c: PUSH1 0xa0
00003c6e: SHL
00003c6f: SUB
00003c70: DUP5
00003c71: AND
00003c72: EXTCODESIZE
00003c73: ISZERO
00003c74: JUMPDEST
00003c75: ISZERO
00003c76: PUSH2 0x1150
00003c79: JUMPI
00003c7a: PUSH1 0x40
00003c7c: MLOAD
00003c7d: PUSH4 0x5274afe7
00003c82: PUSH1 0xe0
00003c84: SHL
00003c85: DUP2
00003c86: MSTORE
00003c87: PUSH1 0x01
00003c89: PUSH1 0x01
00003c8b: PUSH1 0xa0
00003c8d: SHL
00003c8e: SUB
00003c8f: DUP6
00003c90: AND
00003c91: PUSH1 0x04
00003c93: DUP3
00003c94: ADD
00003c95: MSTORE
00003c96: PUSH1 0x24
00003c98: ADD
00003c99: PUSH2 0x0d19
00003c9c: JUMP
00003c9d: JUMPDEST
00003c9e: DUP1
00003c9f: MLOAD
00003ca0: ISZERO
00003ca1: PUSH2 0x3cac
00003ca4: JUMPI
00003ca5: DUP1
00003ca6: MLOAD
00003ca7: PUSH1 0x20
00003ca9: DUP3
00003caa: ADD
00003cab: REVERT
00003cac: JUMPDEST
00003cad: PUSH1 0x40
00003caf: MLOAD
00003cb0: PUSH4 0xd6bda275
00003cb5: PUSH1 0xe0
00003cb7: SHL
00003cb8: DUP2
00003cb9: MSTORE
00003cba: PUSH1 0x04
00003cbc: ADD
00003cbd: PUSH1 0x40
00003cbf: MLOAD
00003cc0: DUP1
00003cc1: SWAP2
00003cc2: SUB
00003cc3: SWAP1
00003cc4: REVERT
00003cc5: JUMPDEST
00003cc6: PUSH2 0x3ccd
00003cc9: PUSH2 0x48c3
00003ccc: JUMP
00003ccd: JUMPDEST
00003cce: PUSH2 0x3042
00003cd1: JUMPI
00003cd2: PUSH1 0x40
00003cd4: MLOAD
00003cd5: PUSH4 0x1afcd79f
00003cda: PUSH1 0xe3
00003cdc: SHL
00003cdd: DUP2
00003cde: MSTORE
00003cdf: PUSH1 0x04
00003ce1: ADD
00003ce2: PUSH1 0x40
00003ce4: MLOAD
00003ce5: DUP1
00003ce6: SWAP2
00003ce7: SUB
00003ce8: SWAP1
00003ce9: REVERT
00003cea: JUMPDEST
00003ceb: PUSH2 0x2f5b
00003cee: PUSH2 0x3cc5
00003cf1: JUMP
00003cf2: JUMPDEST
00003cf3: PUSH2 0x3cfa
00003cf6: PUSH2 0x3cc5
00003cf9: JUMP
00003cfa: JUMPDEST
00003cfb: PUSH1 0x00
00003cfd: DUP1
00003cfe: MLOAD
00003cff: PUSH1 0x20
00003d01: PUSH2 0x5e9b
00003d04: DUP4
00003d05: CODECOPY
00003d06: DUP2
00003d07: MLOAD
00003d08: SWAP2
00003d09: MSTORE
00003d0a: PUSH32 0xa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d102
00003d2b: PUSH2 0x3d34
00003d2e: DUP5
00003d2f: DUP3
00003d30: PUSH2 0x5bf6
00003d33: JUMP
00003d34: JUMPDEST
00003d35: POP
00003d36: PUSH1 0x03
00003d38: DUP2
00003d39: ADD
00003d3a: PUSH2 0x3d43
00003d3d: DUP4
00003d3e: DUP3
00003d3f: PUSH2 0x5bf6
00003d42: JUMP
00003d43: JUMPDEST
00003d44: POP
00003d45: PUSH1 0x00
00003d47: DUP1
00003d48: DUP3
00003d49: SSTORE
00003d4a: PUSH1 0x01
00003d4c: SWAP1
00003d4d: SWAP2
00003d4e: ADD
00003d4f: SSTORE
00003d50: POP
00003d51: POP
00003d52: JUMP
00003d53: JUMPDEST
00003d54: PUSH1 0x00
00003d56: PUSH1 0x00
00003d58: DUP1
00003d59: MLOAD
00003d5a: PUSH1 0x20
00003d5c: PUSH2 0x5edb
00003d5f: DUP4
00003d60: CODECOPY
00003d61: DUP2
00003d62: MLOAD
00003d63: SWAP2
00003d64: MSTORE
00003d65: PUSH2 0x3d6e
00003d68: DUP5
00003d69: DUP5
00003d6a: PUSH2 0x1aae
00003d6d: JUMP
00003d6e: JUMPDEST
00003d6f: PUSH2 0x3dee
00003d72: JUMPI
00003d73: PUSH1 0x00
00003d75: DUP5
00003d76: DUP2
00003d77: MSTORE
00003d78: PUSH1 0x20
00003d7a: DUP3
00003d7b: DUP2
00003d7c: MSTORE
00003d7d: PUSH1 0x40
00003d7f: DUP1
00003d80: DUP4
00003d81: KECCAK256
00003d82: PUSH1 0x01
00003d84: PUSH1 0x01
00003d86: PUSH1 0xa0
00003d88: SHL
00003d89: SUB
00003d8a: DUP8
00003d8b: AND
00003d8c: DUP5
00003d8d: MSTORE
00003d8e: SWAP1
00003d8f: SWAP2
00003d90: MSTORE
00003d91: SWAP1
00003d92: KECCAK256
00003d93: DUP1
00003d94: SLOAD
00003d95: PUSH1 0xff
00003d97: NOT
00003d98: AND
00003d99: PUSH1 0x01
00003d9b: OR
00003d9c: SWAP1
00003d9d: SSTORE
00003d9e: PUSH2 0x3da4
00003da1: CALLER
00003da2: SWAP1
00003da3: JUMP
00003da4: JUMPDEST
00003da5: PUSH1 0x01
00003da7: PUSH1 0x01
00003da9: PUSH1 0xa0
00003dab: SHL
00003dac: SUB
00003dad: AND
00003dae: DUP4
00003daf: PUSH1 0x01
00003db1: PUSH1 0x01
00003db3: PUSH1 0xa0
00003db5: SHL
00003db6: SUB
00003db7: AND
00003db8: DUP6
00003db9: PUSH32 0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d
00003dda: PUSH1 0x40
00003ddc: MLOAD
00003ddd: PUSH1 0x40
00003ddf: MLOAD
00003de0: DUP1
00003de1: SWAP2
00003de2: SUB
00003de3: SWAP1
00003de4: LOG4
00003de5: PUSH1 0x01
00003de7: SWAP2
00003de8: POP
00003de9: POP
00003dea: PUSH2 0x0bfd
00003ded: JUMP
00003dee: JUMPDEST
00003def: PUSH1 0x00
00003df1: SWAP2
00003df2: POP
00003df3: POP
00003df4: PUSH2 0x0bfd
00003df7: JUMP
00003df8: JUMPDEST
00003df9: PUSH1 0x00
00003dfb: PUSH2 0x1e12
00003dfe: DUP4
00003dff: PUSH1 0x01
00003e01: PUSH1 0x01
00003e03: PUSH1 0xa0
00003e05: SHL
00003e06: SUB
00003e07: DUP5
00003e08: AND
00003e09: PUSH2 0x48dd
00003e0c: JUMP
00003e0d: JUMPDEST
00003e0e: PUSH1 0x00
00003e10: DUP4
00003e11: DUP2
00003e12: MSTORE
00003e13: PUSH1 0x05
00003e15: PUSH1 0x20
00003e17: MSTORE
00003e18: PUSH1 0x40
00003e1a: DUP2
00003e1b: KECCAK256
00003e1c: SLOAD
00003e1d: SWAP1
00003e1e: DUP2
00003e1f: SWAP1
00003e20: SUB
00003e21: PUSH2 0x3e3d
00003e24: JUMPI
00003e25: PUSH1 0x40
00003e27: MLOAD
00003e28: PUSH4 0x6086ee6f
00003e2d: PUSH1 0xe1
00003e2f: SHL
00003e30: DUP2
00003e31: MSTORE
00003e32: PUSH1 0x04
00003e34: ADD
00003e35: PUSH1 0x40
00003e37: MLOAD
00003e38: DUP1
00003e39: SWAP2
00003e3a: SUB
00003e3b: SWAP1
00003e3c: REVERT
00003e3d: JUMPDEST
00003e3e: DUP2
00003e3f: DUP2
00003e40: EQ
00003e41: PUSH2 0x3e5d
00003e44: JUMPI
00003e45: PUSH1 0x40
00003e47: MLOAD
00003e48: PUSH4 0x40237973
00003e4d: PUSH1 0xe0
00003e4f: SHL
00003e50: DUP2
00003e51: MSTORE
00003e52: PUSH1 0x04
00003e54: ADD
00003e55: PUSH1 0x40
00003e57: MLOAD
00003e58: DUP1
00003e59: SWAP2
00003e5a: SUB
00003e5b: SWAP1
00003e5c: REVERT
00003e5d: JUMPDEST
00003e5e: PUSH2 0x3e67
00003e61: DUP3
00003e62: DUP3
00003e63: PUSH2 0x57aa
00003e66: JUMP
00003e67: JUMPDEST
00003e68: PUSH1 0x00
00003e6a: DUP6
00003e6b: DUP2
00003e6c: MSTORE
00003e6d: PUSH1 0x05
00003e6f: PUSH1 0x20
00003e71: SWAP1
00003e72: DUP2
00003e73: MSTORE
00003e74: PUSH1 0x40
00003e76: DUP1
00003e77: DUP4
00003e78: KECCAK256
00003e79: SWAP4
00003e7a: SWAP1
00003e7b: SWAP4
00003e7c: SSTORE
00003e7d: PUSH1 0x01
00003e7f: PUSH1 0x01
00003e81: PUSH1 0xa0
00003e83: SHL
00003e84: SUB
00003e85: DUP7
00003e86: AND
00003e87: DUP3
00003e88: MSTORE
00003e89: PUSH1 0x06
00003e8b: SWAP1
00003e8c: MSTORE
00003e8d: SWAP1
00003e8e: DUP2
00003e8f: KECCAK256
00003e90: DUP1
00003e91: SLOAD
00003e92: DUP5
00003e93: SWAP3
00003e94: SWAP1
00003e95: PUSH2 0x3e9f
00003e98: SWAP1
00003e99: DUP5
00003e9a: SWAP1
00003e9b: PUSH2 0x57aa
00003e9e: JUMP
00003e9f: JUMPDEST
00003ea0: SWAP1
00003ea1: SWAP2
00003ea2: SSTORE
00003ea3: POP
00003ea4: POP
00003ea5: POP
00003ea6: POP
00003ea7: POP
00003ea8: POP
00003ea9: JUMP
00003eaa: JUMPDEST
00003eab: PUSH1 0x01
00003ead: PUSH1 0x01
00003eaf: PUSH1 0xa0
00003eb1: SHL
00003eb2: SUB
00003eb3: DUP3
00003eb4: AND
00003eb5: PUSH1 0x00
00003eb7: SWAP1
00003eb8: DUP2
00003eb9: MSTORE
00003eba: PUSH1 0x09
00003ebc: PUSH1 0x20
00003ebe: MSTORE
00003ebf: PUSH1 0x40
00003ec1: DUP2
00003ec2: KECCAK256
00003ec3: SLOAD
00003ec4: PUSH1 0xff
00003ec6: AND
00003ec7: PUSH2 0x3ed1
00003eca: JUMPI
00003ecb: POP
00003ecc: DUP1
00003ecd: PUSH2 0x0bfd
00003ed0: JUMP
00003ed1: JUMPDEST
00003ed2: PUSH1 0x01
00003ed4: PUSH1 0x01
00003ed6: PUSH1 0xa0
00003ed8: SHL
00003ed9: SUB
00003eda: DUP4
00003edb: AND
00003edc: PUSH1 0x00
00003ede: SWAP1
00003edf: DUP2
00003ee0: MSTORE
00003ee1: PUSH1 0x08
00003ee3: PUSH1 0x20
00003ee5: MSTORE
00003ee6: PUSH1 0x40
00003ee8: DUP2
00003ee9: KECCAK256
00003eea: SLOAD
00003eeb: SWAP1
00003eec: DUP2
00003eed: SWAP1
00003eee: SUB
00003eef: PUSH2 0x3efb
00003ef2: JUMPI
00003ef3: DUP3
00003ef4: SWAP2
00003ef5: POP
00003ef6: POP
00003ef7: PUSH2 0x0bfd
00003efa: JUMP
00003efb: JUMPDEST
00003efc: PUSH1 0x00
00003efe: PUSH3 0x0f4240
00003f02: PUSH2 0x3f0b
00003f05: DUP4
00003f06: DUP7
00003f07: PUSH2 0x5cb4
00003f0a: JUMP
00003f0b: JUMPDEST
00003f0c: PUSH2 0x3f15
00003f0f: SWAP2
00003f10: SWAP1
00003f11: PUSH2 0x5ccb
00003f14: JUMP
00003f15: JUMPDEST
00003f16: SWAP1
00003f17: POP
00003f18: DUP1
00003f19: DUP5
00003f1a: GT
00003f1b: PUSH2 0x3f37
00003f1e: JUMPI
00003f1f: PUSH1 0x40
00003f21: MLOAD
00003f22: PUSH4 0x13b77091
00003f27: PUSH1 0xe1
00003f29: SHL
00003f2a: DUP2
00003f2b: MSTORE
00003f2c: PUSH1 0x04
00003f2e: ADD
00003f2f: PUSH1 0x40
00003f31: MLOAD
00003f32: DUP1
00003f33: SWAP2
00003f34: SUB
00003f35: SWAP1
00003f36: REVERT
00003f37: JUMPDEST
00003f38: PUSH1 0x40
00003f3a: DUP1
00003f3b: MLOAD
00003f3c: PUSH1 0x01
00003f3e: PUSH1 0x01
00003f40: PUSH1 0xa0
00003f42: SHL
00003f43: SUB
00003f44: DUP8
00003f45: AND
00003f46: DUP2
00003f47: MSTORE
00003f48: PUSH1 0x20
00003f4a: DUP2
00003f4b: ADD
00003f4c: DUP4
00003f4d: SWAP1
00003f4e: MSTORE
00003f4f: PUSH32 0x9f01c68c1df72199426e5dc03e009238218bf665f0fd62dc1a25b82c882d581b
00003f70: SWAP2
00003f71: ADD
00003f72: PUSH1 0x40
00003f74: MLOAD
00003f75: DUP1
00003f76: SWAP2
00003f77: SUB
00003f78: SWAP1
00003f79: LOG1
00003f7a: PUSH2 0x2ef3
00003f7d: DUP2
00003f7e: DUP6
00003f7f: PUSH2 0x57aa
00003f82: JUMP
00003f83: JUMPDEST
00003f84: TIMESTAMP
00003f85: PUSH2 0x3f94
00003f88: PUSH1 0xc0
00003f8a: DUP8
00003f8b: ADD
00003f8c: PUSH1 0xa0
00003f8e: DUP9
00003f8f: ADD
00003f90: PUSH2 0x5802
00003f93: JUMP
00003f94: JUMPDEST
00003f95: PUSH1 0x01
00003f97: PUSH1 0x01
00003f99: PUSH1 0x40
00003f9b: SHL
00003f9c: SUB
00003f9d: AND
00003f9e: LT
00003f9f: ISZERO
00003fa0: PUSH2 0x3fbc
00003fa3: JUMPI
00003fa4: PUSH1 0x40
00003fa6: MLOAD
00003fa7: PUSH4 0x1ab7da6b
00003fac: PUSH1 0xe0
00003fae: SHL
00003faf: DUP2
00003fb0: MSTORE
00003fb1: PUSH1 0x04
00003fb3: ADD
00003fb4: PUSH1 0x40
00003fb6: MLOAD
00003fb7: DUP1
00003fb8: SWAP2
00003fb9: SUB
00003fba: SWAP1
00003fbb: REVERT
00003fbc: JUMPDEST
00003fbd: PUSH2 0x3fcc
00003fc0: PUSH1 0x80
00003fc2: DUP7
00003fc3: ADD
00003fc4: PUSH1 0x60
00003fc6: DUP8
00003fc7: ADD
00003fc8: PUSH2 0x5802
00003fcb: JUMP
00003fcc: JUMPDEST
00003fcd: PUSH1 0x01
00003fcf: PUSH1 0x01
00003fd1: PUSH1 0x40
00003fd3: SHL
00003fd4: SUB
00003fd5: AND
00003fd6: CHAINID
00003fd7: EQ
00003fd8: PUSH2 0x3ff4
00003fdb: JUMPI
00003fdc: PUSH1 0x40
00003fde: MLOAD
00003fdf: PUSH4 0x3d23e4d1
00003fe4: PUSH1 0xe1
00003fe6: SHL
00003fe7: DUP2
00003fe8: MSTORE
00003fe9: PUSH1 0x04
00003feb: ADD
00003fec: PUSH1 0x40
00003fee: MLOAD
00003fef: DUP1
00003ff0: SWAP2
00003ff1: SUB
00003ff2: SWAP1
00003ff3: REVERT
00003ff4: JUMPDEST
00003ff5: PUSH1 0x00
00003ff7: PUSH32 0xa29fbd2d30fbfe44149fab8a7723456d284f521e5217ad62a16157719e6b4b06
00004018: DUP7
00004019: CALLDATALOAD
0000401a: PUSH2 0x4029
0000401d: PUSH1 0x40
0000401f: DUP10
00004020: ADD
00004021: PUSH1 0x20
00004023: DUP11
00004024: ADD
00004025: PUSH2 0x4e37
00004028: JUMP
00004029: JUMPDEST
0000402a: PUSH2 0x4039
0000402d: PUSH1 0x60
0000402f: DUP11
00004030: ADD
00004031: PUSH1 0x40
00004033: DUP12
00004034: ADD
00004035: PUSH2 0x4e37
00004038: JUMP
00004039: JUMPDEST
0000403a: PUSH2 0x4049
0000403d: PUSH1 0xa0
0000403f: DUP12
00004040: ADD
00004041: PUSH1 0x80
00004043: DUP13
00004044: ADD
00004045: PUSH2 0x4e37
00004048: JUMP
00004049: JUMPDEST
0000404a: PUSH2 0x4059
0000404d: PUSH1 0xc0
0000404f: DUP13
00004050: ADD
00004051: PUSH1 0xa0
00004053: DUP14
00004054: ADD
00004055: PUSH2 0x5802
00004058: JUMP
00004059: JUMPDEST
0000405a: DUP9
0000405b: DUP13
0000405c: PUSH1 0xc0
0000405e: ADD
0000405f: CALLDATALOAD
00004060: DUP10
00004061: PUSH1 0x40
00004063: MLOAD
00004064: PUSH1 0x20
00004066: ADD
00004067: PUSH2 0x4078
0000406a: SWAP10
0000406b: SWAP9
0000406c: SWAP8
0000406d: SWAP7
0000406e: SWAP6
0000406f: SWAP5
00004070: SWAP4
00004071: SWAP3
00004072: SWAP2
00004073: SWAP1
00004074: PUSH2 0x581d
00004077: JUMP
00004078: JUMPDEST
00004079: PUSH1 0x40
0000407b: MLOAD
0000407c: PUSH1 0x20
0000407e: DUP2
0000407f: DUP4
00004080: SUB
00004081: SUB
00004082: DUP2
00004083: MSTORE
00004084: SWAP1
00004085: PUSH1 0x40
00004087: MSTORE
00004088: DUP1
00004089: MLOAD
0000408a: SWAP1
0000408b: PUSH1 0x20
0000408d: ADD
0000408e: KECCAK256
0000408f: SWAP1
00004090: POP
00004091: PUSH1 0x00
00004093: PUSH2 0x40da
00004096: PUSH2 0x409e
00004099: DUP4
0000409a: PUSH2 0x32ed
0000409d: JUMP
0000409e: JUMPDEST
0000409f: DUP8
000040a0: DUP8
000040a1: DUP1
000040a2: DUP1
000040a3: PUSH1 0x1f
000040a5: ADD
000040a6: PUSH1 0x20
000040a8: DUP1
000040a9: SWAP2
000040aa: DIV
000040ab: MUL
000040ac: PUSH1 0x20
000040ae: ADD
000040af: PUSH1 0x40
000040b1: MLOAD
000040b2: SWAP1
000040b3: DUP2
000040b4: ADD
000040b5: PUSH1 0x40
000040b7: MSTORE
000040b8: DUP1
000040b9: SWAP4
000040ba: SWAP3
000040bb: SWAP2
000040bc: SWAP1
000040bd: DUP2
000040be: DUP2
000040bf: MSTORE
000040c0: PUSH1 0x20
000040c2: ADD
000040c3: DUP4
000040c4: DUP4
000040c5: DUP1
000040c6: DUP3
000040c7: DUP5
000040c8: CALLDATACOPY
000040c9: PUSH1 0x00
000040cb: SWAP3
000040cc: ADD
000040cd: SWAP2
000040ce: SWAP1
000040cf: SWAP2
000040d0: MSTORE
000040d1: POP
000040d2: PUSH2 0x331a
000040d5: SWAP3
000040d6: POP
000040d7: POP
000040d8: POP
000040d9: JUMP
000040da: JUMPDEST
000040db: PUSH1 0x01
000040dd: SLOAD
000040de: SWAP1
000040df: SWAP2
000040e0: POP
000040e1: PUSH1 0x01
000040e3: PUSH1 0x01
000040e5: PUSH1 0xa0
000040e7: SHL
000040e8: SUB
000040e9: DUP1
000040ea: DUP4
000040eb: AND
000040ec: SWAP2
000040ed: AND
000040ee: EQ
000040ef: PUSH2 0x410b
000040f2: JUMPI
000040f3: PUSH1 0x40
000040f5: MLOAD
000040f6: PUSH4 0x8baa579f
000040fb: PUSH1 0xe0
000040fd: SHL
000040fe: DUP2
000040ff: MSTORE
00004100: PUSH1 0x04
00004102: ADD
00004103: PUSH1 0x40
00004105: MLOAD
00004106: DUP1
00004107: SWAP2
00004108: SUB
00004109: SWAP1
0000410a: REVERT
0000410b: JUMPDEST
0000410c: POP
0000410d: POP
0000410e: POP
0000410f: POP
00004110: POP
00004111: POP
00004112: POP
00004113: JUMP
00004114: JUMPDEST
00004115: PUSH1 0x02
00004117: PUSH1 0x00
00004119: PUSH2 0x4128
0000411c: PUSH1 0x40
0000411e: DUP7
0000411f: ADD
00004120: PUSH1 0x20
00004122: DUP8
00004123: ADD
00004124: PUSH2 0x4e37
00004127: JUMP
00004128: JUMPDEST
00004129: PUSH1 0x01
0000412b: PUSH1 0x01
0000412d: PUSH1 0xa0
0000412f: SHL
00004130: SUB
00004131: AND
00004132: DUP2
00004133: MSTORE
00004134: PUSH1 0x20
00004136: DUP2
00004137: ADD
00004138: SWAP2
00004139: SWAP1
0000413a: SWAP2
0000413b: MSTORE
0000413c: PUSH1 0x40
0000413e: ADD
0000413f: PUSH1 0x00
00004141: KECCAK256
00004142: SLOAD
00004143: PUSH1 0xff
00004145: AND
00004146: PUSH2 0x417e
00004149: JUMPI
0000414a: PUSH2 0x4159
0000414d: PUSH1 0x40
0000414f: DUP5
00004150: ADD
00004151: PUSH1 0x20
00004153: DUP6
00004154: ADD
00004155: PUSH2 0x4e37
00004158: JUMP
00004159: JUMPDEST
0000415a: PUSH1 0x40
0000415c: MLOAD
0000415d: PUSH4 0x6f8bf18b
00004162: PUSH1 0xe1
00004164: SHL
00004165: DUP2
00004166: MSTORE
00004167: PUSH1 0x01
00004169: PUSH1 0x01
0000416b: PUSH1 0xa0
0000416d: SHL
0000416e: SUB
0000416f: SWAP1
00004170: SWAP2
00004171: AND
00004172: PUSH1 0x04
00004174: DUP3
00004175: ADD
00004176: MSTORE
00004177: PUSH1 0x24
00004179: ADD
0000417a: PUSH2 0x0d19
0000417d: JUMP
0000417e: JUMPDEST
0000417f: PUSH1 0x02
00004181: PUSH1 0x00
00004183: PUSH2 0x4192
00004186: PUSH1 0x60
00004188: DUP7
00004189: ADD
0000418a: PUSH1 0x40
0000418c: DUP8
0000418d: ADD
0000418e: PUSH2 0x4e37
00004191: JUMP
00004192: JUMPDEST
00004193: PUSH1 0x01
00004195: PUSH1 0x01
00004197: PUSH1 0xa0
00004199: SHL
0000419a: SUB
0000419b: AND
0000419c: DUP2
0000419d: MSTORE
0000419e: PUSH1 0x20
000041a0: DUP2
000041a1: ADD
000041a2: SWAP2
000041a3: SWAP1
000041a4: SWAP2
000041a5: MSTORE
000041a6: PUSH1 0x40
000041a8: ADD
000041a9: PUSH1 0x00
000041ab: KECCAK256
000041ac: SLOAD
000041ad: PUSH1 0xff
000041af: AND
000041b0: PUSH2 0x41c3
000041b3: JUMPI
000041b4: PUSH2 0x4159
000041b7: PUSH1 0x60
000041b9: DUP5
000041ba: ADD
000041bb: PUSH1 0x40
000041bd: DUP6
000041be: ADD
000041bf: PUSH2 0x4e37
000041c2: JUMP
000041c3: JUMPDEST
000041c4: PUSH1 0x00
000041c6: PUSH2 0x4235
000041c9: DUP5
000041ca: CALLDATALOAD
000041cb: PUSH1 0x03
000041cd: DUP4
000041ce: PUSH2 0x41dd
000041d1: PUSH1 0x40
000041d3: DUP10
000041d4: ADD
000041d5: PUSH1 0x20
000041d7: DUP11
000041d8: ADD
000041d9: PUSH2 0x4e37
000041dc: JUMP
000041dd: JUMPDEST
000041de: PUSH1 0x01
000041e0: PUSH1 0x01
000041e2: PUSH1 0xa0
000041e4: SHL
000041e5: SUB
000041e6: AND
000041e7: DUP2
000041e8: MSTORE
000041e9: PUSH1 0x20
000041eb: DUP2
000041ec: ADD
000041ed: SWAP2
000041ee: SWAP1
000041ef: SWAP2
000041f0: MSTORE
000041f1: PUSH1 0x40
000041f3: SWAP1
000041f4: DUP2
000041f5: ADD
000041f6: PUSH1 0x00
000041f8: SWAP1
000041f9: DUP2
000041fa: KECCAK256
000041fb: SLOAD
000041fc: PUSH1 0xff
000041fe: AND
000041ff: SWAP2
00004200: PUSH1 0x03
00004202: SWAP2
00004203: SWAP1
00004204: PUSH2 0x4213
00004207: SWAP1
00004208: PUSH1 0x60
0000420a: DUP12
0000420b: ADD
0000420c: SWAP1
0000420d: DUP12
0000420e: ADD
0000420f: PUSH2 0x4e37
00004212: JUMP
00004213: JUMPDEST
00004214: PUSH1 0x01
00004216: PUSH1 0x01
00004218: PUSH1 0xa0
0000421a: SHL
0000421b: SUB
0000421c: AND
0000421d: DUP2
0000421e: MSTORE
0000421f: PUSH1 0x20
00004221: DUP2
00004222: ADD
00004223: SWAP2
00004224: SWAP1
00004225: SWAP2
00004226: MSTORE
00004227: PUSH1 0x40
00004229: ADD
0000422a: PUSH1 0x00
0000422c: KECCAK256
0000422d: SLOAD
0000422e: PUSH1 0xff
00004230: AND
00004231: PUSH2 0x492c
00004234: JUMP
00004235: JUMPDEST
00004236: SWAP1
00004237: POP
00004238: PUSH2 0x4250
0000423b: PUSH2 0x424a
0000423e: PUSH1 0x60
00004240: DUP7
00004241: ADD
00004242: PUSH1 0x40
00004244: DUP8
00004245: ADD
00004246: PUSH2 0x4e37
00004249: JUMP
0000424a: JUMPDEST
0000424b: DUP3
0000424c: PUSH2 0x47c0
0000424f: JUMP
00004250: JUMPDEST
00004251: PUSH2 0x425e
00004254: DUP4
00004255: DUP6
00004256: PUSH1 0xc0
00004258: ADD
00004259: CALLDATALOAD
0000425a: PUSH2 0x39b5
0000425d: JUMP
0000425e: JUMPDEST
0000425f: PUSH1 0x00
00004261: PUSH2 0x4279
00004264: PUSH2 0x4273
00004267: PUSH1 0x60
00004269: DUP8
0000426a: ADD
0000426b: PUSH1 0x40
0000426d: DUP9
0000426e: ADD
0000426f: PUSH2 0x4e37
00004272: JUMP
00004273: JUMPDEST
00004274: DUP4
00004275: PUSH2 0x3eaa
00004278: JUMP
00004279: JUMPDEST
0000427a: SWAP1
0000427b: POP
0000427c: PUSH2 0x42af
0000427f: PUSH2 0x428e
00004282: PUSH1 0xa0
00004284: DUP8
00004285: ADD
00004286: PUSH1 0x80
00004288: DUP9
00004289: ADD
0000428a: PUSH2 0x4e37
0000428d: JUMP
0000428e: JUMPDEST
0000428f: DUP3
00004290: PUSH2 0x429f
00004293: PUSH1 0x60
00004295: DUP10
00004296: ADD
00004297: PUSH1 0x40
00004299: DUP11
0000429a: ADD
0000429b: PUSH2 0x4e37
0000429e: JUMP
0000429f: JUMPDEST
000042a0: PUSH1 0x01
000042a2: PUSH1 0x01
000042a4: PUSH1 0xa0
000042a6: SHL
000042a7: SUB
000042a8: AND
000042a9: SWAP2
000042aa: SWAP1
000042ab: PUSH2 0x2efc
000042ae: JUMP
000042af: JUMPDEST
000042b0: PUSH32 0xf493182244e565c50dbd2893a9e5e85a09e8726dda73a9c6fc9322021087212d
000042d1: DUP5
000042d2: PUSH2 0x42e1
000042d5: PUSH1 0x40
000042d7: DUP9
000042d8: ADD
000042d9: PUSH1 0x20
000042db: DUP10
000042dc: ADD
000042dd: PUSH2 0x4e37
000042e0: JUMP
000042e1: JUMPDEST
000042e2: PUSH2 0x42f1
000042e5: PUSH1 0x60
000042e7: DUP10
000042e8: ADD
000042e9: PUSH1 0x40
000042eb: DUP11
000042ec: ADD
000042ed: PUSH2 0x4e37
000042f0: JUMP
000042f1: JUMPDEST
000042f2: DUP9
000042f3: CALLDATALOAD
000042f4: DUP6
000042f5: PUSH2 0x4304
000042f8: PUSH1 0xa0
000042fa: DUP13
000042fb: ADD
000042fc: PUSH1 0x80
000042fe: DUP14
000042ff: ADD
00004300: PUSH2 0x4e37
00004303: JUMP
00004304: JUMPDEST
00004305: PUSH1 0x40
00004307: DUP1
00004308: MLOAD
00004309: PUSH1 0x01
0000430b: PUSH1 0x01
0000430d: PUSH1 0xa0
0000430f: SHL
00004310: SUB
00004311: SWAP8
00004312: DUP9
00004313: AND
00004314: DUP2
00004315: MSTORE
00004316: SWAP6
00004317: DUP8
00004318: AND
00004319: PUSH1 0x20
0000431b: DUP8
0000431c: ADD
0000431d: MSTORE
0000431e: SWAP4
0000431f: DUP7
00004320: AND
00004321: SWAP4
00004322: DUP6
00004323: ADD
00004324: SWAP4
00004325: SWAP1
00004326: SWAP4
00004327: MSTORE
00004328: PUSH1 0x60
0000432a: DUP5
0000432b: ADD
0000432c: SWAP2
0000432d: SWAP1
0000432e: SWAP2
0000432f: MSTORE
00004330: PUSH1 0x80
00004332: DUP4
00004333: ADD
00004334: MSTORE
00004335: SWAP1
00004336: SWAP2
00004337: AND
00004338: PUSH1 0xa0
0000433a: DUP3
0000433b: ADD
0000433c: MSTORE
0000433d: PUSH1 0xc0
0000433f: DUP2
00004340: ADD
00004341: DUP6
00004342: SWAP1
00004343: MSTORE
00004344: PUSH1 0xe0
00004346: ADD
00004347: PUSH2 0x3156
0000434a: JUMP
0000434b: JUMPDEST
0000434c: PUSH1 0x00
0000434e: PUSH1 0x00
00004350: DUP1
00004351: MLOAD
00004352: PUSH1 0x20
00004354: PUSH2 0x5edb
00004357: DUP4
00004358: CODECOPY
00004359: DUP2
0000435a: MLOAD
0000435b: SWAP2
0000435c: MSTORE
0000435d: PUSH2 0x4366
00004360: DUP5
00004361: DUP5
00004362: PUSH2 0x1aae
00004365: JUMP
00004366: JUMPDEST
00004367: ISZERO
00004368: PUSH2 0x3dee
0000436b: JUMPI
0000436c: PUSH1 0x00
0000436e: DUP5
0000436f: DUP2
00004370: MSTORE
00004371: PUSH1 0x20
00004373: DUP3
00004374: DUP2
00004375: MSTORE
00004376: PUSH1 0x40
00004378: DUP1
00004379: DUP4
0000437a: KECCAK256
0000437b: PUSH1 0x01
0000437d: PUSH1 0x01
0000437f: PUSH1 0xa0
00004381: SHL
00004382: SUB
00004383: DUP8
00004384: AND
00004385: DUP1
00004386: DUP6
00004387: MSTORE
00004388: SWAP3
00004389: MSTORE
0000438a: DUP1
0000438b: DUP4
0000438c: KECCAK256
0000438d: DUP1
0000438e: SLOAD
0000438f: PUSH1 0xff
00004391: NOT
00004392: AND
00004393: SWAP1
00004394: SSTORE
00004395: MLOAD
00004396: CALLER
00004397: SWAP3
00004398: DUP8
00004399: SWAP2
0000439a: PUSH32 0xf6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b
000043bb: SWAP2
000043bc: SWAP1
000043bd: LOG4
000043be: PUSH1 0x01
000043c0: SWAP2
000043c1: POP
000043c2: POP
000043c3: PUSH2 0x0bfd
000043c6: JUMP
000043c7: JUMPDEST
000043c8: PUSH1 0x00
000043ca: PUSH2 0x1e12
000043cd: DUP4
000043ce: PUSH1 0x01
000043d0: PUSH1 0x01
000043d2: PUSH1 0xa0
000043d4: SHL
000043d5: SUB
000043d6: DUP5
000043d7: AND
000043d8: PUSH2 0x4995
000043db: JUMP
000043dc: JUMPDEST
000043dd: PUSH1 0x00
000043df: DUP1
000043e0: MLOAD
000043e1: PUSH1 0x20
000043e3: PUSH2 0x5efb
000043e6: DUP4
000043e7: CODECOPY
000043e8: DUP2
000043e9: MLOAD
000043ea: SWAP2
000043eb: MSTORE
000043ec: SLOAD
000043ed: PUSH1 0xff
000043ef: AND
000043f0: PUSH2 0x3042
000043f3: JUMPI
000043f4: PUSH1 0x40
000043f6: MLOAD
000043f7: PUSH4 0x8dfc202b
000043fc: PUSH1 0xe0
000043fe: SHL
000043ff: DUP2
00004400: MSTORE
00004401: PUSH1 0x04
00004403: ADD
00004404: PUSH1 0x40
00004406: MLOAD
00004407: DUP1
00004408: SWAP2
00004409: SUB
0000440a: SWAP1
0000440b: REVERT
0000440c: JUMPDEST
0000440d: PUSH1 0x00
0000440f: PUSH2 0x4416
00004412: PUSH2 0x4a7e
00004415: JUMP
00004416: JUMPDEST
00004417: SWAP1
00004418: POP
00004419: SWAP1
0000441a: JUMP
0000441b: JUMPDEST
0000441c: PUSH1 0x00
0000441e: DUP1
0000441f: PUSH1 0x00
00004421: DUP4
00004422: MLOAD
00004423: PUSH1 0x41
00004425: SUB
00004426: PUSH2 0x4455
00004429: JUMPI
0000442a: PUSH1 0x20
0000442c: DUP5
0000442d: ADD
0000442e: MLOAD
0000442f: PUSH1 0x40
00004431: DUP6
00004432: ADD
00004433: MLOAD
00004434: PUSH1 0x60
00004436: DUP7
00004437: ADD
00004438: MLOAD
00004439: PUSH1 0x00
0000443b: BYTE
0000443c: PUSH2 0x4447
0000443f: DUP9
00004440: DUP3
00004441: DUP6
00004442: DUP6
00004443: PUSH2 0x4af2
00004446: JUMP
00004447: JUMPDEST
00004448: SWAP6
00004449: POP
0000444a: SWAP6
0000444b: POP
0000444c: SWAP6
0000444d: POP
0000444e: POP
0000444f: POP
00004450: POP
00004451: PUSH2 0x4461
00004454: JUMP
00004455: JUMPDEST
00004456: POP
00004457: POP
00004458: DUP2
00004459: MLOAD
0000445a: PUSH1 0x00
0000445c: SWAP2
0000445d: POP
0000445e: PUSH1 0x02
00004460: SWAP1
00004461: JUMPDEST
00004462: SWAP3
00004463: POP
00004464: SWAP3
00004465: POP
00004466: SWAP3
00004467: JUMP
00004468: JUMPDEST
00004469: PUSH1 0x00
0000446b: DUP3
0000446c: PUSH1 0x03
0000446e: DUP2
0000446f: GT
00004470: ISZERO
00004471: PUSH2 0x447c
00004474: JUMPI
00004475: PUSH2 0x447c
00004478: PUSH2 0x5ced
0000447b: JUMP
0000447c: JUMPDEST
0000447d: SUB
0000447e: PUSH2 0x4485
00004481: JUMPI
00004482: POP
00004483: POP
00004484: JUMP
00004485: JUMPDEST
00004486: PUSH1 0x01
00004488: DUP3
00004489: PUSH1 0x03
0000448b: DUP2
0000448c: GT
0000448d: ISZERO
0000448e: PUSH2 0x4499
00004491: JUMPI
00004492: PUSH2 0x4499
00004495: PUSH2 0x5ced
00004498: JUMP
00004499: JUMPDEST
0000449a: SUB
0000449b: PUSH2 0x44b7
0000449e: JUMPI
0000449f: PUSH1 0x40
000044a1: MLOAD
000044a2: PUSH4 0xf645eedf
000044a7: PUSH1 0xe0
000044a9: SHL
000044aa: DUP2
000044ab: MSTORE
000044ac: PUSH1 0x04
000044ae: ADD
000044af: PUSH1 0x40
000044b1: MLOAD
000044b2: DUP1
000044b3: SWAP2
000044b4: SUB
000044b5: SWAP1
000044b6: REVERT
000044b7: JUMPDEST
000044b8: PUSH1 0x02
000044ba: DUP3
000044bb: PUSH1 0x03
000044bd: DUP2
000044be: GT
000044bf: ISZERO
000044c0: PUSH2 0x44cb
000044c3: JUMPI
000044c4: PUSH2 0x44cb
000044c7: PUSH2 0x5ced
000044ca: JUMP
000044cb: JUMPDEST
000044cc: SUB
000044cd: PUSH2 0x44ec
000044d0: JUMPI
000044d1: PUSH1 0x40
000044d3: MLOAD
000044d4: PUSH4 0xfce698f7
000044d9: PUSH1 0xe0
000044db: SHL
000044dc: DUP2
000044dd: MSTORE
000044de: PUSH1 0x04
000044e0: DUP2
000044e1: ADD
000044e2: DUP3
000044e3: SWAP1
000044e4: MSTORE
000044e5: PUSH1 0x24
000044e7: ADD
000044e8: PUSH2 0x0d19
000044eb: JUMP
000044ec: JUMPDEST
000044ed: PUSH1 0x03
000044ef: DUP3
000044f0: PUSH1 0x03
000044f2: DUP2
000044f3: GT
000044f4: ISZERO
000044f5: PUSH2 0x4500
000044f8: JUMPI
000044f9: PUSH2 0x4500
000044fc: PUSH2 0x5ced
000044ff: JUMP
00004500: JUMPDEST
00004501: SUB
00004502: PUSH2 0x1911
00004505: JUMPI
00004506: PUSH1 0x40
00004508: MLOAD
00004509: PUSH4 0x35e2f383
0000450e: PUSH1 0xe2
00004510: SHL
00004511: DUP2
00004512: MSTORE
00004513: PUSH1 0x04
00004515: DUP2
00004516: ADD
00004517: DUP3
00004518: SWAP1
00004519: MSTORE
0000451a: PUSH1 0x24
0000451c: ADD
0000451d: PUSH2 0x0d19
00004520: JUMP
00004521: JUMPDEST
00004522: TIMESTAMP
00004523: PUSH2 0x4532
00004526: PUSH1 0xc0
00004528: DUP7
00004529: ADD
0000452a: PUSH1 0xa0
0000452c: DUP8
0000452d: ADD
0000452e: PUSH2 0x5802
00004531: JUMP
00004532: JUMPDEST
00004533: PUSH1 0x01
00004535: PUSH1 0x01
00004537: PUSH1 0x40
00004539: SHL
0000453a: SUB
0000453b: AND
0000453c: LT
0000453d: ISZERO
0000453e: PUSH2 0x455a
00004541: JUMPI
00004542: PUSH1 0x40
00004544: MLOAD
00004545: PUSH4 0x1ab7da6b
0000454a: PUSH1 0xe0
0000454c: SHL
0000454d: DUP2
0000454e: MSTORE
0000454f: PUSH1 0x04
00004551: ADD
00004552: PUSH1 0x40
00004554: MLOAD
00004555: DUP1
00004556: SWAP2
00004557: SUB
00004558: SWAP1
00004559: REVERT
0000455a: JUMPDEST
0000455b: PUSH2 0x456a
0000455e: PUSH1 0x80
00004560: DUP6
00004561: ADD
00004562: PUSH1 0x60
00004564: DUP7
00004565: ADD
00004566: PUSH2 0x5802
00004569: JUMP
0000456a: JUMPDEST
0000456b: PUSH1 0x01
0000456d: PUSH1 0x01
0000456f: PUSH1 0x40
00004571: SHL
00004572: SUB
00004573: AND
00004574: CHAINID
00004575: EQ
00004576: PUSH2 0x4592
00004579: JUMPI
0000457a: PUSH1 0x40
0000457c: MLOAD
0000457d: PUSH4 0x3d23e4d1
00004582: PUSH1 0xe1
00004584: SHL
00004585: DUP2
00004586: MSTORE
00004587: PUSH1 0x04
00004589: ADD
0000458a: PUSH1 0x40
0000458c: MLOAD
0000458d: DUP1
0000458e: SWAP2
0000458f: SUB
00004590: SWAP1
00004591: REVERT
00004592: JUMPDEST
00004593: PUSH1 0x00
00004595: PUSH32 0xc7f65c31ea6871f5b39d5b6b8c6e2b5cc52e31e4e0cba57f285db2018956148a
000045b6: DUP6
000045b7: CALLDATALOAD
000045b8: PUSH2 0x45c7
000045bb: PUSH1 0x40
000045bd: DUP9
000045be: ADD
000045bf: PUSH1 0x20
000045c1: DUP10
000045c2: ADD
000045c3: PUSH2 0x4e37
000045c6: JUMP
000045c7: JUMPDEST
000045c8: PUSH2 0x45d7
000045cb: PUSH1 0x60
000045cd: DUP10
000045ce: ADD
000045cf: PUSH1 0x40
000045d1: DUP11
000045d2: ADD
000045d3: PUSH2 0x4e37
000045d6: JUMP
000045d7: JUMPDEST
000045d8: PUSH2 0x45e7
000045db: PUSH1 0xa0
000045dd: DUP11
000045de: ADD
000045df: PUSH1 0x80
000045e1: DUP12
000045e2: ADD
000045e3: PUSH2 0x4e37
000045e6: JUMP
000045e7: JUMPDEST
000045e8: PUSH2 0x45f7
000045eb: PUSH1 0xc0
000045ed: DUP12
000045ee: ADD
000045ef: PUSH1 0xa0
000045f1: DUP13
000045f2: ADD
000045f3: PUSH2 0x5802
000045f6: JUMP
000045f7: JUMPDEST
000045f8: PUSH1 0x40
000045fa: DUP1
000045fb: MLOAD
000045fc: PUSH1 0x20
000045fe: DUP2
000045ff: ADD
00004600: SWAP8
00004601: SWAP1
00004602: SWAP8
00004603: MSTORE
00004604: DUP7
00004605: ADD
00004606: SWAP5
00004607: SWAP1
00004608: SWAP5
00004609: MSTORE
0000460a: PUSH1 0x01
0000460c: PUSH1 0x01
0000460e: PUSH1 0xa0
00004610: SHL
00004611: SUB
00004612: SWAP3
00004613: DUP4
00004614: AND
00004615: PUSH1 0x60
00004617: DUP7
00004618: ADD
00004619: MSTORE
0000461a: SWAP1
0000461b: DUP3
0000461c: AND
0000461d: PUSH1 0x80
0000461f: DUP6
00004620: ADD
00004621: MSTORE
00004622: DUP2
00004623: AND
00004624: PUSH1 0xa0
00004626: DUP5
00004627: ADD
00004628: MSTORE
00004629: PUSH1 0x01
0000462b: PUSH1 0x01
0000462d: PUSH1 0x40
0000462f: SHL
00004630: SUB
00004631: SWAP1
00004632: SWAP2
00004633: AND
00004634: PUSH1 0xc0
00004636: DUP4
00004637: DUP2
00004638: ADD
00004639: SWAP2
0000463a: SWAP1
0000463b: SWAP2
0000463c: MSTORE
0000463d: SWAP1
0000463e: DUP5
0000463f: AND
00004640: PUSH1 0xe0
00004642: DUP4
00004643: ADD
00004644: MSTORE
00004645: DUP7
00004646: ADD
00004647: CALLDATALOAD
00004648: PUSH2 0x0100
0000464b: DUP3
0000464c: ADD
0000464d: MSTORE
0000464e: PUSH2 0x0120
00004651: ADD
00004652: PUSH1 0x40
00004654: MLOAD
00004655: PUSH1 0x20
00004657: DUP2
00004658: DUP4
00004659: SUB
0000465a: SUB
0000465b: DUP2
0000465c: MSTORE
0000465d: SWAP1
0000465e: PUSH1 0x40
00004660: MSTORE
00004661: DUP1
00004662: MLOAD
00004663: SWAP1
00004664: PUSH1 0x20
00004666: ADD
00004667: KECCAK256
00004668: SWAP1
00004669: POP
0000466a: PUSH1 0x00
0000466c: PUSH2 0x46b3
0000466f: PUSH2 0x4677
00004672: DUP4
00004673: PUSH2 0x32ed
00004676: JUMP
00004677: JUMPDEST
00004678: DUP7
00004679: DUP7
0000467a: DUP1
0000467b: DUP1
0000467c: PUSH1 0x1f
0000467e: ADD
0000467f: PUSH1 0x20
00004681: DUP1
00004682: SWAP2
00004683: DIV
00004684: MUL
00004685: PUSH1 0x20
00004687: ADD
00004688: PUSH1 0x40
0000468a: MLOAD
0000468b: SWAP1
0000468c: DUP2
0000468d: ADD
0000468e: PUSH1 0x40
00004690: MSTORE
00004691: DUP1
00004692: SWAP4
00004693: SWAP3
00004694: SWAP2
00004695: SWAP1
00004696: DUP2
00004697: DUP2
00004698: MSTORE
00004699: PUSH1 0x20
0000469b: ADD
0000469c: DUP4
0000469d: DUP4
0000469e: DUP1
0000469f: DUP3
000046a0: DUP5
000046a1: CALLDATACOPY
000046a2: PUSH1 0x00
000046a4: SWAP3
000046a5: ADD
000046a6: SWAP2
000046a7: SWAP1
000046a8: SWAP2
000046a9: MSTORE
000046aa: POP
000046ab: PUSH2 0x331a
000046ae: SWAP3
000046af: POP
000046b0: POP
000046b1: POP
000046b2: JUMP
000046b3: JUMPDEST
000046b4: PUSH1 0x01
000046b6: SLOAD
000046b7: SWAP1
000046b8: SWAP2
000046b9: POP
000046ba: PUSH1 0x01
000046bc: PUSH1 0x01
000046be: PUSH1 0xa0
000046c0: SHL
000046c1: SUB
000046c2: DUP1
000046c3: DUP4
000046c4: AND
000046c5: SWAP2
000046c6: AND
000046c7: EQ
000046c8: PUSH2 0x2130
000046cb: JUMPI
000046cc: PUSH1 0x40
000046ce: MLOAD
000046cf: PUSH4 0x8baa579f
000046d4: PUSH1 0xe0
000046d6: SHL
000046d7: DUP2
000046d8: MSTORE
000046d9: PUSH1 0x04
000046db: ADD
000046dc: PUSH1 0x40
000046de: MLOAD
000046df: DUP1
000046e0: SWAP2
000046e1: SUB
000046e2: SWAP1
000046e3: REVERT
000046e4: JUMPDEST
000046e5: PUSH2 0x46ed
000046e8: DUP3
000046e9: PUSH2 0x4bc1
000046ec: JUMP
000046ed: JUMPDEST
000046ee: PUSH1 0x40
000046f0: MLOAD
000046f1: PUSH1 0x01
000046f3: PUSH1 0x01
000046f5: PUSH1 0xa0
000046f7: SHL
000046f8: SUB
000046f9: DUP4
000046fa: AND
000046fb: SWAP1
000046fc: PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b
0000471d: SWAP1
0000471e: PUSH1 0x00
00004720: SWAP1
00004721: LOG2
00004722: DUP1
00004723: MLOAD
00004724: ISZERO
00004725: PUSH2 0x4732
00004728: JUMPI
00004729: PUSH2 0x0cae
0000472c: DUP3
0000472d: DUP3
0000472e: PUSH2 0x4c26
00004731: JUMP
00004732: JUMPDEST
00004733: PUSH2 0x1911
00004736: PUSH2 0x4c93
00004739: JUMP
0000473a: JUMPDEST
0000473b: PUSH1 0x00
0000473d: DUP3
0000473e: PUSH1 0x00
00004740: ADD
00004741: DUP3
00004742: DUP2
00004743: SLOAD
00004744: DUP2
00004745: LT
00004746: PUSH2 0x4751
00004749: JUMPI
0000474a: PUSH2 0x4751
0000474d: PUSH2 0x59f7
00004750: JUMP
00004751: JUMPDEST
00004752: SWAP1
00004753: PUSH1 0x00
00004755: MSTORE
00004756: PUSH1 0x20
00004758: PUSH1 0x00
0000475a: KECCAK256
0000475b: ADD
0000475c: SLOAD
0000475d: SWAP1
0000475e: POP
0000475f: SWAP3
00004760: SWAP2
00004761: POP
00004762: POP
00004763: JUMP
00004764: JUMPDEST
00004765: PUSH1 0x60
00004767: DUP2
00004768: PUSH1 0x00
0000476a: ADD
0000476b: DUP1
0000476c: SLOAD
0000476d: DUP1
0000476e: PUSH1 0x20
00004770: MUL
00004771: PUSH1 0x20
00004773: ADD
00004774: PUSH1 0x40
00004776: MLOAD
00004777: SWAP1
00004778: DUP2
00004779: ADD
0000477a: PUSH1 0x40
0000477c: MSTORE
0000477d: DUP1
0000477e: SWAP3
0000477f: SWAP2
00004780: SWAP1
00004781: DUP2
00004782: DUP2
00004783: MSTORE
00004784: PUSH1 0x20
00004786: ADD
00004787: DUP3
00004788: DUP1
00004789: SLOAD
0000478a: DUP1
0000478b: ISZERO
0000478c: PUSH2 0x47b4
0000478f: JUMPI
00004790: PUSH1 0x20
00004792: MUL
00004793: DUP3
00004794: ADD
00004795: SWAP2
00004796: SWAP1
00004797: PUSH1 0x00
00004799: MSTORE
0000479a: PUSH1 0x20
0000479c: PUSH1 0x00
0000479e: KECCAK256
0000479f: SWAP1
000047a0: JUMPDEST
000047a1: DUP2
000047a2: SLOAD
000047a3: DUP2
000047a4: MSTORE
000047a5: PUSH1 0x20
000047a7: ADD
000047a8: SWAP1
000047a9: PUSH1 0x01
000047ab: ADD
000047ac: SWAP1
000047ad: DUP1
000047ae: DUP4
000047af: GT
000047b0: PUSH2 0x47a0
000047b3: JUMPI
000047b4: JUMPDEST
000047b5: POP
000047b6: POP
000047b7: POP
000047b8: POP
000047b9: POP
000047ba: SWAP1
000047bb: POP
000047bc: SWAP2
000047bd: SWAP1
000047be: POP
000047bf: JUMP
000047c0: JUMPDEST
000047c1: PUSH1 0x00
000047c3: PUSH2 0x47cb
000047c6: DUP4
000047c7: PUSH2 0x2e48
000047ca: JUMP
000047cb: JUMPDEST
000047cc: SWAP1
000047cd: POP
000047ce: DUP1
000047cf: DUP3
000047d0: GT
000047d1: ISZERO
000047d2: PUSH2 0x47ee
000047d5: JUMPI
000047d6: PUSH1 0x40
000047d8: MLOAD
000047d9: PUSH4 0x128bd24d
000047de: PUSH1 0xe3
000047e0: SHL
000047e1: DUP2
000047e2: MSTORE
000047e3: PUSH1 0x04
000047e5: ADD
000047e6: PUSH1 0x40
000047e8: MLOAD
000047e9: DUP1
000047ea: SWAP2
000047eb: SUB
000047ec: SWAP1
000047ed: REVERT
000047ee: JUMPDEST
000047ef: PUSH1 0x01
000047f1: PUSH1 0x01
000047f3: PUSH1 0xa0
000047f5: SHL
000047f6: SUB
000047f7: DUP4
000047f8: AND
000047f9: PUSH1 0x00
000047fb: SWAP1
000047fc: DUP2
000047fd: MSTORE
000047fe: PUSH1 0x04
00004800: PUSH1 0x20
00004802: SWAP1
00004803: DUP2
00004804: MSTORE
00004805: PUSH1 0x40
00004807: DUP1
00004808: DUP4
00004809: KECCAK256
0000480a: DUP2
0000480b: MLOAD
0000480c: PUSH1 0x60
0000480e: DUP2
0000480f: ADD
00004810: DUP4
00004811: MSTORE
00004812: DUP2
00004813: SLOAD
00004814: DUP2
00004815: MSTORE
00004816: PUSH1 0x01
00004818: DUP3
00004819: ADD
0000481a: SLOAD
0000481b: SWAP4
0000481c: DUP2
0000481d: ADD
0000481e: SWAP4
0000481f: SWAP1
00004820: SWAP4
00004821: MSTORE
00004822: PUSH1 0x02
00004824: ADD
00004825: SLOAD
00004826: SWAP1
00004827: DUP3
00004828: ADD
00004829: MSTORE
0000482a: SWAP1
0000482b: PUSH2 0x4834
0000482e: DUP5
0000482f: DUP5
00004830: PUSH2 0x57aa
00004833: JUMP
00004834: JUMPDEST
00004835: DUP3
00004836: MLOAD
00004837: SWAP1
00004838: SWAP2
00004839: POP
0000483a: DUP2
0000483b: LT
0000483c: ISZERO
0000483d: PUSH2 0x4859
00004840: JUMPI
00004841: PUSH1 0x40
00004843: MLOAD
00004844: PUSH4 0x128bd24d
00004849: PUSH1 0xe3
0000484b: SHL
0000484c: DUP2
0000484d: MSTORE
0000484e: PUSH1 0x04
00004850: ADD
00004851: PUSH1 0x40
00004853: MLOAD
00004854: DUP1
00004855: SWAP2
00004856: SUB
00004857: SWAP1
00004858: REVERT
00004859: JUMPDEST
0000485a: DUP2
0000485b: PUSH1 0x20
0000485d: ADD
0000485e: MLOAD
0000485f: DUP4
00004860: LT
00004861: ISZERO
00004862: PUSH2 0x488f
00004865: JUMPI
00004866: DUP2
00004867: PUSH1 0x40
00004869: ADD
0000486a: MLOAD
0000486b: DUP5
0000486c: GT
0000486d: ISZERO
0000486e: PUSH2 0x488a
00004871: JUMPI
00004872: PUSH1 0x40
00004874: MLOAD
00004875: PUSH4 0x128bd24d
0000487a: PUSH1 0xe3
0000487c: SHL
0000487d: DUP2
0000487e: MSTORE
0000487f: PUSH1 0x04
00004881: ADD
00004882: PUSH1 0x40
00004884: MLOAD
00004885: DUP1
00004886: SWAP2
00004887: SUB
00004888: SWAP1
00004889: REVERT
0000488a: JUMPDEST
0000488b: PUSH2 0x1083
0000488e: JUMP
0000488f: JUMPDEST
00004890: DUP2
00004891: PUSH1 0x40
00004893: ADD
00004894: MLOAD
00004895: DUP3
00004896: PUSH1 0x20
00004898: ADD
00004899: MLOAD
0000489a: PUSH2 0x48a3
0000489d: SWAP2
0000489e: SWAP1
0000489f: PUSH2 0x57aa
000048a2: JUMP
000048a3: JUMPDEST
000048a4: DUP2
000048a5: LT
000048a6: ISZERO
000048a7: PUSH2 0x1083
000048aa: JUMPI
000048ab: PUSH1 0x40
000048ad: MLOAD
000048ae: PUSH4 0x128bd24d
000048b3: PUSH1 0xe3
000048b5: SHL
000048b6: DUP2
000048b7: MSTORE
000048b8: PUSH1 0x04
000048ba: ADD
000048bb: PUSH1 0x40
000048bd: MLOAD
000048be: DUP1
000048bf: SWAP2
000048c0: SUB
000048c1: SWAP1
000048c2: REVERT
000048c3: JUMPDEST
000048c4: PUSH1 0x00
000048c6: PUSH2 0x48cd
000048c9: PUSH2 0x3011
000048cc: JUMP
000048cd: JUMPDEST
000048ce: SLOAD
000048cf: PUSH1 0x01
000048d1: PUSH1 0x40
000048d3: SHL
000048d4: SWAP1
000048d5: DIV
000048d6: PUSH1 0xff
000048d8: AND
000048d9: SWAP2
000048da: SWAP1
000048db: POP
000048dc: JUMP
000048dd: JUMPDEST
000048de: PUSH1 0x00
000048e0: DUP2
000048e1: DUP2
000048e2: MSTORE
000048e3: PUSH1 0x01
000048e5: DUP4
000048e6: ADD
000048e7: PUSH1 0x20
000048e9: MSTORE
000048ea: PUSH1 0x40
000048ec: DUP2
000048ed: KECCAK256
000048ee: SLOAD
000048ef: PUSH2 0x4924
000048f2: JUMPI
000048f3: POP
000048f4: DUP2
000048f5: SLOAD
000048f6: PUSH1 0x01
000048f8: DUP2
000048f9: DUP2
000048fa: ADD
000048fb: DUP5
000048fc: SSTORE
000048fd: PUSH1 0x00
000048ff: DUP5
00004900: DUP2
00004901: MSTORE
00004902: PUSH1 0x20
00004904: DUP1
00004905: DUP3
00004906: KECCAK256
00004907: SWAP1
00004908: SWAP4
00004909: ADD
0000490a: DUP5
0000490b: SWAP1
0000490c: SSTORE
0000490d: DUP5
0000490e: SLOAD
0000490f: DUP5
00004910: DUP3
00004911: MSTORE
00004912: DUP3
00004913: DUP7
00004914: ADD
00004915: SWAP1
00004916: SWAP4
00004917: MSTORE
00004918: PUSH1 0x40
0000491a: SWAP1
0000491b: KECCAK256
0000491c: SWAP2
0000491d: SWAP1
0000491e: SWAP2
0000491f: SSTORE
00004920: PUSH2 0x0bfd
00004923: JUMP
00004924: JUMPDEST
00004925: POP
00004926: PUSH1 0x00
00004928: PUSH2 0x0bfd
0000492b: JUMP
0000492c: JUMPDEST
0000492d: PUSH1 0x00
0000492f: DUP2
00004930: PUSH1 0xff
00004932: AND
00004933: DUP4
00004934: PUSH1 0xff
00004936: AND
00004937: SUB
00004938: PUSH2 0x4942
0000493b: JUMPI
0000493c: POP
0000493d: DUP3
0000493e: PUSH2 0x1e12
00004941: JUMP
00004942: JUMPDEST
00004943: DUP2
00004944: PUSH1 0xff
00004946: AND
00004947: DUP4
00004948: PUSH1 0xff
0000494a: AND
0000494b: GT
0000494c: ISZERO
0000494d: PUSH2 0x4976
00004950: JUMPI
00004951: PUSH2 0x495a
00004954: DUP3
00004955: DUP5
00004956: PUSH2 0x5d03
00004959: JUMP
0000495a: JUMPDEST
0000495b: PUSH2 0x4965
0000495e: SWAP1
0000495f: PUSH1 0x0a
00004961: PUSH2 0x5e03
00004964: JUMP
00004965: JUMPDEST
00004966: PUSH2 0x496f
00004969: SWAP1
0000496a: DUP6
0000496b: PUSH2 0x5ccb
0000496e: JUMP
0000496f: JUMPDEST
00004970: SWAP1
00004971: POP
00004972: PUSH2 0x1e12
00004975: JUMP
00004976: JUMPDEST
00004977: PUSH2 0x4980
0000497a: DUP4
0000497b: DUP4
0000497c: PUSH2 0x5d03
0000497f: JUMP
00004980: JUMPDEST
00004981: PUSH2 0x498b
00004984: SWAP1
00004985: PUSH1 0x0a
00004987: PUSH2 0x5e03
0000498a: JUMP
0000498b: JUMPDEST
0000498c: PUSH2 0x496f
0000498f: SWAP1
00004990: DUP6
00004991: PUSH2 0x5cb4
00004994: JUMP
00004995: JUMPDEST
00004996: PUSH1 0x00
00004998: DUP2
00004999: DUP2
0000499a: MSTORE
0000499b: PUSH1 0x01
0000499d: DUP4
0000499e: ADD
0000499f: PUSH1 0x20
000049a1: MSTORE
000049a2: PUSH1 0x40
000049a4: DUP2
000049a5: KECCAK256
000049a6: SLOAD
000049a7: DUP1
000049a8: ISZERO
000049a9: PUSH2 0x3dee
000049ac: JUMPI
000049ad: PUSH1 0x00
000049af: PUSH2 0x49b9
000049b2: PUSH1 0x01
000049b4: DUP4
000049b5: PUSH2 0x57aa
000049b8: JUMP
000049b9: JUMPDEST
000049ba: DUP6
000049bb: SLOAD
000049bc: SWAP1
000049bd: SWAP2
000049be: POP
000049bf: PUSH1 0x00
000049c1: SWAP1
000049c2: PUSH2 0x49cd
000049c5: SWAP1
000049c6: PUSH1 0x01
000049c8: SWAP1
000049c9: PUSH2 0x57aa
000049cc: JUMP
000049cd: JUMPDEST
000049ce: SWAP1
000049cf: POP
000049d0: DUP1
000049d1: DUP3
000049d2: EQ
000049d3: PUSH2 0x4a32
000049d6: JUMPI
000049d7: PUSH1 0x00
000049d9: DUP7
000049da: PUSH1 0x00
000049dc: ADD
000049dd: DUP3
000049de: DUP2
000049df: SLOAD
000049e0: DUP2
000049e1: LT
000049e2: PUSH2 0x49ed
000049e5: JUMPI
000049e6: PUSH2 0x49ed
000049e9: PUSH2 0x59f7
000049ec: JUMP
000049ed: JUMPDEST
000049ee: SWAP1
000049ef: PUSH1 0x00
000049f1: MSTORE
000049f2: PUSH1 0x20
000049f4: PUSH1 0x00
000049f6: KECCAK256
000049f7: ADD
000049f8: SLOAD
000049f9: SWAP1
000049fa: POP
000049fb: DUP1
000049fc: DUP8
000049fd: PUSH1 0x00
000049ff: ADD
00004a00: DUP5
00004a01: DUP2
00004a02: SLOAD
00004a03: DUP2
00004a04: LT
00004a05: PUSH2 0x4a10
00004a08: JUMPI
00004a09: PUSH2 0x4a10
00004a0c: PUSH2 0x59f7
00004a0f: JUMP
00004a10: JUMPDEST
00004a11: PUSH1 0x00
00004a13: SWAP2
00004a14: DUP3
00004a15: MSTORE
00004a16: PUSH1 0x20
00004a18: DUP1
00004a19: DUP4
00004a1a: KECCAK256
00004a1b: SWAP1
00004a1c: SWAP2
00004a1d: ADD
00004a1e: SWAP3
00004a1f: SWAP1
00004a20: SWAP3
00004a21: SSTORE
00004a22: SWAP2
00004a23: DUP3
00004a24: MSTORE
00004a25: PUSH1 0x01
00004a27: DUP9
00004a28: ADD
00004a29: SWAP1
00004a2a: MSTORE
00004a2b: PUSH1 0x40
00004a2d: SWAP1
00004a2e: KECCAK256
00004a2f: DUP4
00004a30: SWAP1
00004a31: SSTORE
00004a32: JUMPDEST
00004a33: DUP6
00004a34: SLOAD
00004a35: DUP7
00004a36: SWAP1
00004a37: DUP1
00004a38: PUSH2 0x4a43
00004a3b: JUMPI
00004a3c: PUSH2 0x4a43
00004a3f: PUSH2 0x5e12
00004a42: JUMP
00004a43: JUMPDEST
00004a44: PUSH1 0x01
00004a46: SWAP1
00004a47: SUB
00004a48: DUP2
00004a49: DUP2
00004a4a: SWAP1
00004a4b: PUSH1 0x00
00004a4d: MSTORE
00004a4e: PUSH1 0x20
00004a50: PUSH1 0x00
00004a52: KECCAK256
00004a53: ADD
00004a54: PUSH1 0x00
00004a56: SWAP1
00004a57: SSTORE
00004a58: SWAP1
00004a59: SSTORE
00004a5a: DUP6
00004a5b: PUSH1 0x01
00004a5d: ADD
00004a5e: PUSH1 0x00
00004a60: DUP7
00004a61: DUP2
00004a62: MSTORE
00004a63: PUSH1 0x20
00004a65: ADD
00004a66: SWAP1
00004a67: DUP2
00004a68: MSTORE
00004a69: PUSH1 0x20
00004a6b: ADD
00004a6c: PUSH1 0x00
00004a6e: KECCAK256
00004a6f: PUSH1 0x00
00004a71: SWAP1
00004a72: SSTORE
00004a73: PUSH1 0x01
00004a75: SWAP4
00004a76: POP
00004a77: POP
00004a78: POP
00004a79: POP
00004a7a: PUSH2 0x0bfd
00004a7d: JUMP
00004a7e: JUMPDEST
00004a7f: PUSH1 0x00
00004a81: PUSH32 0x8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f
00004aa2: PUSH2 0x4aa9
00004aa5: PUSH2 0x4cb2
00004aa8: JUMP
00004aa9: JUMPDEST
00004aaa: PUSH2 0x4ab1
00004aad: PUSH2 0x4d1c
00004ab0: JUMP
00004ab1: JUMPDEST
00004ab2: PUSH1 0x40
00004ab4: DUP1
00004ab5: MLOAD
00004ab6: PUSH1 0x20
00004ab8: DUP2
00004ab9: ADD
00004aba: SWAP5
00004abb: SWAP1
00004abc: SWAP5
00004abd: MSTORE
00004abe: DUP4
00004abf: ADD
00004ac0: SWAP2
00004ac1: SWAP1
00004ac2: SWAP2
00004ac3: MSTORE
00004ac4: PUSH1 0x60
00004ac6: DUP3
00004ac7: ADD
00004ac8: MSTORE
00004ac9: CHAINID
00004aca: PUSH1 0x80
00004acc: DUP3
00004acd: ADD
00004ace: MSTORE
00004acf: ADDRESS
00004ad0: PUSH1 0xa0
00004ad2: DUP3
00004ad3: ADD
00004ad4: MSTORE
00004ad5: PUSH1 0xc0
00004ad7: ADD
00004ad8: PUSH1 0x40
00004ada: MLOAD
00004adb: PUSH1 0x20
00004add: DUP2
00004ade: DUP4
00004adf: SUB
00004ae0: SUB
00004ae1: DUP2
00004ae2: MSTORE
00004ae3: SWAP1
00004ae4: PUSH1 0x40
00004ae6: MSTORE
00004ae7: DUP1
00004ae8: MLOAD
00004ae9: SWAP1
00004aea: PUSH1 0x20
00004aec: ADD
00004aed: KECCAK256
00004aee: SWAP1
00004aef: POP
00004af0: SWAP1
00004af1: JUMP
00004af2: JUMPDEST
00004af3: PUSH1 0x00
00004af5: DUP1
00004af6: DUP1
00004af7: PUSH32 0x7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0
00004b18: DUP5
00004b19: GT
00004b1a: ISZERO
00004b1b: PUSH2 0x4b2d
00004b1e: JUMPI
00004b1f: POP
00004b20: PUSH1 0x00
00004b22: SWAP2
00004b23: POP
00004b24: PUSH1 0x03
00004b26: SWAP1
00004b27: POP
00004b28: DUP3
00004b29: PUSH2 0x4bb7
00004b2c: JUMP
00004b2d: JUMPDEST
00004b2e: PUSH1 0x40
00004b30: DUP1
00004b31: MLOAD
00004b32: PUSH1 0x00
00004b34: DUP1
00004b35: DUP3
00004b36: MSTORE
00004b37: PUSH1 0x20
00004b39: DUP3
00004b3a: ADD
00004b3b: DUP1
00004b3c: DUP5
00004b3d: MSTORE
00004b3e: DUP11
00004b3f: SWAP1
00004b40: MSTORE
00004b41: PUSH1 0xff
00004b43: DUP10
00004b44: AND
00004b45: SWAP3
00004b46: DUP3
00004b47: ADD
00004b48: SWAP3
00004b49: SWAP1
00004b4a: SWAP3
00004b4b: MSTORE
00004b4c: PUSH1 0x60
00004b4e: DUP2
00004b4f: ADD
00004b50: DUP8
00004b51: SWAP1
00004b52: MSTORE
00004b53: PUSH1 0x80
00004b55: DUP2
00004b56: ADD
00004b57: DUP7
00004b58: SWAP1
00004b59: MSTORE
00004b5a: PUSH1 0x01
00004b5c: SWAP1
00004b5d: PUSH1 0xa0
00004b5f: ADD
00004b60: PUSH1 0x20
00004b62: PUSH1 0x40
00004b64: MLOAD
00004b65: PUSH1 0x20
00004b67: DUP2
00004b68: SUB
00004b69: SWAP1
00004b6a: DUP1
00004b6b: DUP5
00004b6c: SUB
00004b6d: SWAP1
00004b6e: DUP6
00004b6f: GAS
00004b70: STATICCALL
00004b71: ISZERO
00004b72: DUP1
00004b73: ISZERO
00004b74: PUSH2 0x4b81
00004b77: JUMPI
00004b78: RETURNDATASIZE
00004b79: PUSH1 0x00
00004b7b: DUP1
00004b7c: RETURNDATACOPY
00004b7d: RETURNDATASIZE
00004b7e: PUSH1 0x00
00004b80: REVERT
00004b81: JUMPDEST
00004b82: POP
00004b83: POP
00004b84: PUSH1 0x40
00004b86: MLOAD
00004b87: PUSH1 0x1f
00004b89: NOT
00004b8a: ADD
00004b8b: MLOAD
00004b8c: SWAP2
00004b8d: POP
00004b8e: POP
00004b8f: PUSH1 0x01
00004b91: PUSH1 0x01
00004b93: PUSH1 0xa0
00004b95: SHL
00004b96: SUB
00004b97: DUP2
00004b98: AND
00004b99: PUSH2 0x4bad
00004b9c: JUMPI
00004b9d: POP
00004b9e: PUSH1 0x00
00004ba0: SWAP3
00004ba1: POP
00004ba2: PUSH1 0x01
00004ba4: SWAP2
00004ba5: POP
00004ba6: DUP3
00004ba7: SWAP1
00004ba8: POP
00004ba9: PUSH2 0x4bb7
00004bac: JUMP
00004bad: JUMPDEST
00004bae: SWAP3
00004baf: POP
00004bb0: PUSH1 0x00
00004bb2: SWAP2
00004bb3: POP
00004bb4: DUP2
00004bb5: SWAP1
00004bb6: POP
00004bb7: JUMPDEST
00004bb8: SWAP5
00004bb9: POP
00004bba: SWAP5
00004bbb: POP
00004bbc: SWAP5
00004bbd: SWAP2
00004bbe: POP
00004bbf: POP
00004bc0: JUMP
00004bc1: JUMPDEST
00004bc2: DUP1
00004bc3: PUSH1 0x01
00004bc5: PUSH1 0x01
00004bc7: PUSH1 0xa0
00004bc9: SHL
00004bca: SUB
00004bcb: AND
00004bcc: EXTCODESIZE
00004bcd: PUSH1 0x00
00004bcf: SUB
00004bd0: PUSH2 0x4bf7
00004bd3: JUMPI
00004bd4: PUSH1 0x40
00004bd6: MLOAD
00004bd7: PUSH4 0x4c9c8ce3
00004bdc: PUSH1 0xe0
00004bde: SHL
00004bdf: DUP2
00004be0: MSTORE
00004be1: PUSH1 0x01
00004be3: PUSH1 0x01
00004be5: PUSH1 0xa0
00004be7: SHL
00004be8: SUB
00004be9: DUP3
00004bea: AND
00004beb: PUSH1 0x04
00004bed: DUP3
00004bee: ADD
00004bef: MSTORE
00004bf0: PUSH1 0x24
00004bf2: ADD
00004bf3: PUSH2 0x0d19
00004bf6: JUMP
00004bf7: JUMPDEST
00004bf8: PUSH1 0x00
00004bfa: DUP1
00004bfb: MLOAD
00004bfc: PUSH1 0x20
00004bfe: PUSH2 0x5ebb
00004c01: DUP4
00004c02: CODECOPY
00004c03: DUP2
00004c04: MLOAD
00004c05: SWAP2
00004c06: MSTORE
00004c07: DUP1
00004c08: SLOAD
00004c09: PUSH1 0x01
00004c0b: PUSH1 0x01
00004c0d: PUSH1 0xa0
00004c0f: SHL
00004c10: SUB
00004c11: NOT
00004c12: AND
00004c13: PUSH1 0x01
00004c15: PUSH1 0x01
00004c17: PUSH1 0xa0
00004c19: SHL
00004c1a: SUB
00004c1b: SWAP3
00004c1c: SWAP1
00004c1d: SWAP3
00004c1e: AND
00004c1f: SWAP2
00004c20: SWAP1
00004c21: SWAP2
00004c22: OR
00004c23: SWAP1
00004c24: SSTORE
00004c25: JUMP
00004c26: JUMPDEST
00004c27: PUSH1 0x60
00004c29: PUSH1 0x00
00004c2b: DUP1
00004c2c: DUP5
00004c2d: PUSH1 0x01
00004c2f: PUSH1 0x01
00004c31: PUSH1 0xa0
00004c33: SHL
00004c34: SUB
00004c35: AND
00004c36: DUP5
00004c37: PUSH1 0x40
00004c39: MLOAD
00004c3a: PUSH2 0x4c43
00004c3d: SWAP2
00004c3e: SWAP1
00004c3f: PUSH2 0x5e28
00004c42: JUMP
00004c43: JUMPDEST
00004c44: PUSH1 0x00
00004c46: PUSH1 0x40
00004c48: MLOAD
00004c49: DUP1
00004c4a: DUP4
00004c4b: SUB
00004c4c: DUP2
00004c4d: DUP6
00004c4e: GAS
00004c4f: DELEGATECALL
00004c50: SWAP2
00004c51: POP
00004c52: POP
00004c53: RETURNDATASIZE
00004c54: DUP1
00004c55: PUSH1 0x00
00004c57: DUP2
00004c58: EQ
00004c59: PUSH2 0x4c7e
00004c5c: JUMPI
00004c5d: PUSH1 0x40
00004c5f: MLOAD
00004c60: SWAP2
00004c61: POP
00004c62: PUSH1 0x1f
00004c64: NOT
00004c65: PUSH1 0x3f
00004c67: RETURNDATASIZE
00004c68: ADD
00004c69: AND
00004c6a: DUP3
00004c6b: ADD
00004c6c: PUSH1 0x40
00004c6e: MSTORE
00004c6f: RETURNDATASIZE
00004c70: DUP3
00004c71: MSTORE
00004c72: RETURNDATASIZE
00004c73: PUSH1 0x00
00004c75: PUSH1 0x20
00004c77: DUP5
00004c78: ADD
00004c79: RETURNDATACOPY
00004c7a: PUSH2 0x4c83
00004c7d: JUMP
00004c7e: JUMPDEST
00004c7f: PUSH1 0x60
00004c81: SWAP2
00004c82: POP
00004c83: JUMPDEST
00004c84: POP
00004c85: SWAP2
00004c86: POP
00004c87: SWAP2
00004c88: POP
00004c89: PUSH2 0x2ef3
00004c8c: DUP6
00004c8d: DUP4
00004c8e: DUP4
00004c8f: PUSH2 0x4d60
00004c92: JUMP
00004c93: JUMPDEST
00004c94: CALLVALUE
00004c95: ISZERO
00004c96: PUSH2 0x3042
00004c99: JUMPI
00004c9a: PUSH1 0x40
00004c9c: MLOAD
00004c9d: PUSH4 0xb398979f
00004ca2: PUSH1 0xe0
00004ca4: SHL
00004ca5: DUP2
00004ca6: MSTORE
00004ca7: PUSH1 0x04
00004ca9: ADD
00004caa: PUSH1 0x40
00004cac: MLOAD
00004cad: DUP1
00004cae: SWAP2
00004caf: SUB
00004cb0: SWAP1
00004cb1: REVERT
00004cb2: JUMPDEST
00004cb3: PUSH1 0x00
00004cb5: PUSH1 0x00
00004cb7: DUP1
00004cb8: MLOAD
00004cb9: PUSH1 0x20
00004cbb: PUSH2 0x5e9b
00004cbe: DUP4
00004cbf: CODECOPY
00004cc0: DUP2
00004cc1: MLOAD
00004cc2: SWAP2
00004cc3: MSTORE
00004cc4: DUP2
00004cc5: PUSH2 0x4ccc
00004cc8: PUSH2 0x3645
00004ccb: JUMP
00004ccc: JUMPDEST
00004ccd: DUP1
00004cce: MLOAD
00004ccf: SWAP1
00004cd0: SWAP2
00004cd1: POP
00004cd2: ISZERO
00004cd3: PUSH2 0x4ce4
00004cd6: JUMPI
00004cd7: DUP1
00004cd8: MLOAD
00004cd9: PUSH1 0x20
00004cdb: SWAP1
00004cdc: SWAP2
00004cdd: ADD
00004cde: KECCAK256
00004cdf: SWAP3
00004ce0: SWAP2
00004ce1: POP
00004ce2: POP
00004ce3: JUMP
00004ce4: JUMPDEST
00004ce5: DUP2
00004ce6: SLOAD
00004ce7: DUP1
00004ce8: ISZERO
00004ce9: PUSH2 0x4cf3
00004cec: JUMPI
00004ced: SWAP4
00004cee: SWAP3
00004cef: POP
00004cf0: POP
00004cf1: POP
00004cf2: JUMP
00004cf3: JUMPDEST
00004cf4: PUSH32 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470
00004d15: SWAP4
00004d16: POP
00004d17: POP
00004d18: POP
00004d19: POP
00004d1a: SWAP1
00004d1b: JUMP
00004d1c: JUMPDEST
00004d1d: PUSH1 0x00
00004d1f: PUSH1 0x00
00004d21: DUP1
00004d22: MLOAD
00004d23: PUSH1 0x20
00004d25: PUSH2 0x5e9b
00004d28: DUP4
00004d29: CODECOPY
00004d2a: DUP2
00004d2b: MLOAD
00004d2c: SWAP2
00004d2d: MSTORE
00004d2e: DUP2
00004d2f: PUSH2 0x4d36
00004d32: PUSH2 0x3708
00004d35: JUMP
00004d36: JUMPDEST
00004d37: DUP1
00004d38: MLOAD
00004d39: SWAP1
00004d3a: SWAP2
00004d3b: POP
00004d3c: ISZERO
00004d3d: PUSH2 0x4d4e
00004d40: JUMPI
00004d41: DUP1
00004d42: MLOAD
00004d43: PUSH1 0x20
00004d45: SWAP1
00004d46: SWAP2
00004d47: ADD
00004d48: KECCAK256
00004d49: SWAP3
00004d4a: SWAP2
00004d4b: POP
00004d4c: POP
00004d4d: JUMP
00004d4e: JUMPDEST
00004d4f: PUSH1 0x01
00004d51: DUP3
00004d52: ADD
00004d53: SLOAD
00004d54: DUP1
00004d55: ISZERO
00004d56: PUSH2 0x4cf3
00004d59: JUMPI
00004d5a: SWAP4
00004d5b: SWAP3
00004d5c: POP
00004d5d: POP
00004d5e: POP
00004d5f: JUMP
00004d60: JUMPDEST
00004d61: PUSH1 0x60
00004d63: DUP3
00004d64: PUSH2 0x4d75
00004d67: JUMPI
00004d68: PUSH2 0x4d70
00004d6b: DUP3
00004d6c: PUSH2 0x3c9d
00004d6f: JUMP
00004d70: JUMPDEST
00004d71: PUSH2 0x1e12
00004d74: JUMP
00004d75: JUMPDEST
00004d76: DUP2
00004d77: MLOAD
00004d78: ISZERO
00004d79: DUP1
00004d7a: ISZERO
00004d7b: PUSH2 0x4d8c
00004d7e: JUMPI
00004d7f: POP
00004d80: PUSH1 0x01
00004d82: PUSH1 0x01
00004d84: PUSH1 0xa0
00004d86: SHL
00004d87: SUB
00004d88: DUP5
00004d89: AND
00004d8a: EXTCODESIZE
00004d8b: ISZERO
00004d8c: JUMPDEST
00004d8d: ISZERO
00004d8e: PUSH2 0x4db5
00004d91: JUMPI
00004d92: PUSH1 0x40
00004d94: MLOAD
00004d95: PUSH4 0x9996b315
00004d9a: PUSH1 0xe0
00004d9c: SHL
00004d9d: DUP2
00004d9e: MSTORE
00004d9f: PUSH1 0x01
00004da1: PUSH1 0x01
00004da3: PUSH1 0xa0
00004da5: SHL
00004da6: SUB
00004da7: DUP6
00004da8: AND
00004da9: PUSH1 0x04
00004dab: DUP3
00004dac: ADD
00004dad: MSTORE
00004dae: PUSH1 0x24
00004db0: ADD
00004db1: PUSH2 0x0d19
00004db4: JUMP
00004db5: JUMPDEST
00004db6: POP
00004db7: DUP1
00004db8: PUSH2 0x1e12
00004dbb: JUMP
00004dbc: JUMPDEST
00004dbd: PUSH1 0x00
00004dbf: PUSH1 0x20
00004dc1: DUP3
00004dc2: DUP5
00004dc3: SUB
00004dc4: SLT
00004dc5: ISZERO
00004dc6: PUSH2 0x4dce
00004dc9: JUMPI
00004dca: PUSH1 0x00
00004dcc: DUP1
00004dcd: REVERT
00004dce: JUMPDEST
00004dcf: DUP2
00004dd0: CALLDATALOAD
00004dd1: PUSH1 0x01
00004dd3: PUSH1 0x01
00004dd5: PUSH1 0xe0
00004dd7: SHL
00004dd8: SUB
00004dd9: NOT
00004dda: DUP2
00004ddb: AND
00004ddc: DUP2
00004ddd: EQ
00004dde: PUSH2 0x1e12
00004de1: JUMPI
00004de2: PUSH1 0x00
00004de4: DUP1
00004de5: REVERT
00004de6: JUMPDEST
00004de7: PUSH1 0x01
00004de9: PUSH1 0x01
00004deb: PUSH1 0xa0
00004ded: SHL
00004dee: SUB
00004def: DUP2
00004df0: AND
00004df1: DUP2
00004df2: EQ
00004df3: PUSH2 0x1648
00004df6: JUMPI
00004df7: PUSH1 0x00
00004df9: DUP1
00004dfa: REVERT
00004dfb: JUMPDEST
00004dfc: DUP1
00004dfd: CALLDATALOAD
00004dfe: PUSH2 0x4e06
00004e01: DUP2
00004e02: PUSH2 0x4de6
00004e05: JUMP
00004e06: JUMPDEST
00004e07: SWAP2
00004e08: SWAP1
00004e09: POP
00004e0a: JUMP
00004e0b: JUMPDEST
00004e0c: PUSH1 0x00
00004e0e: DUP1
00004e0f: PUSH1 0x40
00004e11: DUP4
00004e12: DUP6
00004e13: SUB
00004e14: SLT
00004e15: ISZERO
00004e16: PUSH2 0x4e1e
00004e19: JUMPI
00004e1a: PUSH1 0x00
00004e1c: DUP1
00004e1d: REVERT
00004e1e: JUMPDEST
00004e1f: DUP3
00004e20: CALLDATALOAD
00004e21: PUSH2 0x4e29
00004e24: DUP2
00004e25: PUSH2 0x4de6
00004e28: JUMP
00004e29: JUMPDEST
00004e2a: SWAP5
00004e2b: PUSH1 0x20
00004e2d: SWAP4
00004e2e: SWAP1
00004e2f: SWAP4
00004e30: ADD
00004e31: CALLDATALOAD
00004e32: SWAP4
00004e33: POP
00004e34: POP
00004e35: POP
00004e36: JUMP
00004e37: JUMPDEST
00004e38: PUSH1 0x00
00004e3a: PUSH1 0x20
00004e3c: DUP3
00004e3d: DUP5
00004e3e: SUB
00004e3f: SLT
00004e40: ISZERO
00004e41: PUSH2 0x4e49
00004e44: JUMPI
00004e45: PUSH1 0x00
00004e47: DUP1
00004e48: REVERT
00004e49: JUMPDEST
00004e4a: DUP2
00004e4b: CALLDATALOAD
00004e4c: PUSH2 0x1e12
00004e4f: DUP2
00004e50: PUSH2 0x4de6
00004e53: JUMP
00004e54: JUMPDEST
00004e55: PUSH1 0x00
00004e57: DUP1
00004e58: PUSH1 0x00
00004e5a: DUP1
00004e5b: PUSH1 0x00
00004e5d: PUSH1 0xa0
00004e5f: DUP7
00004e60: DUP9
00004e61: SUB
00004e62: SLT
00004e63: ISZERO
00004e64: PUSH2 0x4e6c
00004e67: JUMPI
00004e68: PUSH1 0x00
00004e6a: DUP1
00004e6b: REVERT
00004e6c: JUMPDEST
00004e6d: DUP6
00004e6e: CALLDATALOAD
00004e6f: PUSH2 0x4e77
00004e72: DUP2
00004e73: PUSH2 0x4de6
00004e76: JUMP
00004e77: JUMPDEST
00004e78: SWAP5
00004e79: POP
00004e7a: PUSH1 0x20
00004e7c: DUP7
00004e7d: ADD
00004e7e: CALLDATALOAD
00004e7f: PUSH2 0x4e87
00004e82: DUP2
00004e83: PUSH2 0x4de6
00004e86: JUMP
00004e87: JUMPDEST
00004e88: SWAP4
00004e89: POP
00004e8a: PUSH1 0x40
00004e8c: DUP7
00004e8d: ADD
00004e8e: CALLDATALOAD
00004e8f: PUSH2 0x4e97
00004e92: DUP2
00004e93: PUSH2 0x4de6
00004e96: JUMP
00004e97: JUMPDEST
00004e98: SWAP3
00004e99: POP
00004e9a: PUSH1 0x60
00004e9c: DUP7
00004e9d: ADD
00004e9e: CALLDATALOAD
00004e9f: PUSH2 0x4ea7
00004ea2: DUP2
00004ea3: PUSH2 0x4de6
00004ea6: JUMP
00004ea7: JUMPDEST
00004ea8: SWAP2
00004ea9: POP
00004eaa: PUSH1 0x80
00004eac: DUP7
00004ead: ADD
00004eae: CALLDATALOAD
00004eaf: PUSH2 0x4eb7
00004eb2: DUP2
00004eb3: PUSH2 0x4de6
00004eb6: JUMP
00004eb7: JUMPDEST
00004eb8: DUP1
00004eb9: SWAP2
00004eba: POP
00004ebb: POP
00004ebc: SWAP3
00004ebd: SWAP6
00004ebe: POP
00004ebf: SWAP3
00004ec0: SWAP6
00004ec1: SWAP1
00004ec2: SWAP4
00004ec3: POP
00004ec4: JUMP
00004ec5: JUMPDEST
00004ec6: PUSH1 0x00
00004ec8: PUSH1 0x20
00004eca: DUP3
00004ecb: DUP5
00004ecc: SUB
00004ecd: SLT
00004ece: ISZERO
00004ecf: PUSH2 0x4ed7
00004ed2: JUMPI
00004ed3: PUSH1 0x00
00004ed5: DUP1
00004ed6: REVERT
00004ed7: JUMPDEST
00004ed8: POP
00004ed9: CALLDATALOAD
00004eda: SWAP2
00004edb: SWAP1
00004edc: POP
00004edd: JUMP
00004ede: JUMPDEST
00004edf: PUSH1 0x00
00004ee1: DUP1
00004ee2: PUSH1 0x00
00004ee4: DUP1
00004ee5: PUSH1 0x80
00004ee7: DUP6
00004ee8: DUP8
00004ee9: SUB
00004eea: SLT
00004eeb: ISZERO
00004eec: PUSH2 0x4ef4
00004eef: JUMPI
00004ef0: PUSH1 0x00
00004ef2: DUP1
00004ef3: REVERT
00004ef4: JUMPDEST
00004ef5: DUP5
00004ef6: CALLDATALOAD
00004ef7: SWAP4
00004ef8: POP
00004ef9: PUSH1 0x20
00004efb: DUP6
00004efc: ADD
00004efd: CALLDATALOAD
00004efe: PUSH2 0x4f06
00004f01: DUP2
00004f02: PUSH2 0x4de6
00004f05: JUMP
00004f06: JUMPDEST
00004f07: SWAP3
00004f08: POP
00004f09: PUSH1 0x40
00004f0b: DUP6
00004f0c: ADD
00004f0d: CALLDATALOAD
00004f0e: PUSH2 0x4f16
00004f11: DUP2
00004f12: PUSH2 0x4de6
00004f15: JUMP
00004f16: JUMPDEST
00004f17: SWAP4
00004f18: SWAP7
00004f19: SWAP3
00004f1a: SWAP6
00004f1b: POP
00004f1c: SWAP3
00004f1d: SWAP4
00004f1e: PUSH1 0x60
00004f20: ADD
00004f21: CALLDATALOAD
00004f22: SWAP3
00004f23: POP
00004f24: POP
00004f25: JUMP
00004f26: JUMPDEST
00004f27: DUP1
00004f28: CALLDATALOAD
00004f29: DUP1
00004f2a: ISZERO
00004f2b: ISZERO
00004f2c: DUP2
00004f2d: EQ
00004f2e: PUSH2 0x4e06
00004f31: JUMPI
00004f32: PUSH1 0x00
00004f34: DUP1
00004f35: REVERT
00004f36: JUMPDEST
00004f37: PUSH1 0x00
00004f39: DUP1
00004f3a: PUSH1 0x40
00004f3c: DUP4
00004f3d: DUP6
00004f3e: SUB
00004f3f: SLT
00004f40: ISZERO
00004f41: PUSH2 0x4f49
00004f44: JUMPI
00004f45: PUSH1 0x00
00004f47: DUP1
00004f48: REVERT
00004f49: JUMPDEST
00004f4a: DUP3
00004f4b: CALLDATALOAD
00004f4c: PUSH2 0x4f54
00004f4f: DUP2
00004f50: PUSH2 0x4de6
00004f53: JUMP
00004f54: JUMPDEST
00004f55: SWAP2
00004f56: POP
00004f57: PUSH2 0x4f62
00004f5a: PUSH1 0x20
00004f5c: DUP5
00004f5d: ADD
00004f5e: PUSH2 0x4f26
00004f61: JUMP
00004f62: JUMPDEST
00004f63: SWAP1
00004f64: POP
00004f65: SWAP3
00004f66: POP
00004f67: SWAP3
00004f68: SWAP1
00004f69: POP
00004f6a: JUMP
00004f6b: JUMPDEST
00004f6c: PUSH1 0x00
00004f6e: DUP1
00004f6f: PUSH1 0x40
00004f71: DUP4
00004f72: DUP6
00004f73: SUB
00004f74: SLT
00004f75: ISZERO
00004f76: PUSH2 0x4f7e
00004f79: JUMPI
00004f7a: PUSH1 0x00
00004f7c: DUP1
00004f7d: REVERT
00004f7e: JUMPDEST
00004f7f: DUP3
00004f80: CALLDATALOAD
00004f81: SWAP2
00004f82: POP
00004f83: PUSH1 0x20
00004f85: DUP4
00004f86: ADD
00004f87: CALLDATALOAD
00004f88: PUSH2 0x4f90
00004f8b: DUP2
00004f8c: PUSH2 0x4de6
00004f8f: JUMP
00004f90: JUMPDEST
00004f91: DUP1
00004f92: SWAP2
00004f93: POP
00004f94: POP
00004f95: SWAP3
00004f96: POP
00004f97: SWAP3
00004f98: SWAP1
00004f99: POP
00004f9a: JUMP
00004f9b: JUMPDEST
00004f9c: PUSH1 0x00
00004f9e: DUP1
00004f9f: PUSH1 0x00
00004fa1: DUP1
00004fa2: PUSH1 0x00
00004fa4: DUP1
00004fa5: PUSH1 0xc0
00004fa7: DUP8
00004fa8: DUP10
00004fa9: SUB
00004faa: SLT
00004fab: ISZERO
00004fac: PUSH2 0x4fb4
00004faf: JUMPI
00004fb0: PUSH1 0x00
00004fb2: DUP1
00004fb3: REVERT
00004fb4: JUMPDEST
00004fb5: DUP7
00004fb6: CALLDATALOAD
00004fb7: PUSH2 0x4fbf
00004fba: DUP2
00004fbb: PUSH2 0x4de6
00004fbe: JUMP
00004fbf: JUMPDEST
00004fc0: SWAP6
00004fc1: POP
00004fc2: PUSH2 0x4fcd
00004fc5: PUSH1 0x20
00004fc7: DUP9
00004fc8: ADD
00004fc9: PUSH2 0x4f26
00004fcc: JUMP
00004fcd: JUMPDEST
00004fce: SWAP6
00004fcf: SWAP9
00004fd0: SWAP6
00004fd1: SWAP8
00004fd2: POP
00004fd3: POP
00004fd4: POP
00004fd5: POP
00004fd6: PUSH1 0x40
00004fd8: DUP5
00004fd9: ADD
00004fda: CALLDATALOAD
00004fdb: SWAP4
00004fdc: PUSH1 0x60
00004fde: DUP2
00004fdf: ADD
00004fe0: CALLDATALOAD
00004fe1: SWAP4
00004fe2: PUSH1 0x80
00004fe4: DUP3
00004fe5: ADD
00004fe6: CALLDATALOAD
00004fe7: SWAP4
00004fe8: POP
00004fe9: PUSH1 0xa0
00004feb: SWAP1
00004fec: SWAP2
00004fed: ADD
00004fee: CALLDATALOAD
00004fef: SWAP2
00004ff0: POP
00004ff1: JUMP
00004ff2: JUMPDEST
00004ff3: PUSH1 0x00
00004ff5: PUSH1 0xe0
00004ff7: DUP3
00004ff8: DUP5
00004ff9: SUB
00004ffa: SLT
00004ffb: ISZERO
00004ffc: PUSH2 0x5004
00004fff: JUMPI
00005000: PUSH1 0x00
00005002: DUP1
00005003: REVERT
00005004: JUMPDEST
00005005: POP
00005006: SWAP2
00005007: SWAP1
00005008: POP
00005009: JUMP
0000500a: JUMPDEST
0000500b: PUSH1 0x00
0000500d: DUP1
0000500e: DUP4
0000500f: PUSH1 0x1f
00005011: DUP5
00005012: ADD
00005013: SLT
00005014: PUSH2 0x501c
00005017: JUMPI
00005018: PUSH1 0x00
0000501a: DUP1
0000501b: REVERT
0000501c: JUMPDEST
0000501d: POP
0000501e: DUP2
0000501f: CALLDATALOAD
00005020: PUSH1 0x01
00005022: PUSH1 0x01
00005024: PUSH1 0x40
00005026: SHL
00005027: SUB
00005028: DUP2
00005029: GT
0000502a: ISZERO
0000502b: PUSH2 0x5033
0000502e: JUMPI
0000502f: PUSH1 0x00
00005031: DUP1
00005032: REVERT
00005033: JUMPDEST
00005034: PUSH1 0x20
00005036: DUP4
00005037: ADD
00005038: SWAP2
00005039: POP
0000503a: DUP4
0000503b: PUSH1 0x20
0000503d: DUP3
0000503e: DUP6
0000503f: ADD
00005040: ADD
00005041: GT
00005042: ISZERO
00005043: PUSH2 0x504b
00005046: JUMPI
00005047: PUSH1 0x00
00005049: DUP1
0000504a: REVERT
0000504b: JUMPDEST
0000504c: SWAP3
0000504d: POP
0000504e: SWAP3
0000504f: SWAP1
00005050: POP
00005051: JUMP
00005052: JUMPDEST
00005053: PUSH1 0x00
00005055: DUP1
00005056: PUSH1 0x00
00005058: DUP1
00005059: PUSH2 0x0120
0000505c: DUP6
0000505d: DUP8
0000505e: SUB
0000505f: SLT
00005060: ISZERO
00005061: PUSH2 0x5069
00005064: JUMPI
00005065: PUSH1 0x00
00005067: DUP1
00005068: REVERT
00005069: JUMPDEST
0000506a: PUSH2 0x5073
0000506d: DUP7
0000506e: DUP7
0000506f: PUSH2 0x4ff2
00005072: JUMP
00005073: JUMPDEST
00005074: SWAP4
00005075: POP
00005076: PUSH1 0xe0
00005078: DUP6
00005079: ADD
0000507a: CALLDATALOAD
0000507b: PUSH1 0x01
0000507d: PUSH1 0x01
0000507f: PUSH1 0x40
00005081: SHL
00005082: SUB
00005083: DUP2
00005084: GT
00005085: ISZERO
00005086: PUSH2 0x508e
00005089: JUMPI
0000508a: PUSH1 0x00
0000508c: DUP1
0000508d: REVERT
0000508e: JUMPDEST
0000508f: PUSH2 0x509a
00005092: DUP8
00005093: DUP3
00005094: DUP9
00005095: ADD
00005096: PUSH2 0x500a
00005099: JUMP
0000509a: JUMPDEST
0000509b: SWAP6
0000509c: SWAP9
0000509d: SWAP1
0000509e: SWAP8
0000509f: POP
000050a0: SWAP5
000050a1: SWAP6
000050a2: PUSH2 0x0100
000050a5: ADD
000050a6: CALLDATALOAD
000050a7: SWAP5
000050a8: SWAP4
000050a9: POP
000050aa: POP
000050ab: POP
000050ac: POP
000050ad: JUMP
000050ae: JUMPDEST
000050af: PUSH1 0x00
000050b1: PUSH1 0x60
000050b3: DUP3
000050b4: DUP5
000050b5: SUB
000050b6: SLT
000050b7: ISZERO
000050b8: PUSH2 0x5004
000050bb: JUMPI
000050bc: PUSH1 0x00
000050be: DUP1
000050bf: REVERT
000050c0: JUMPDEST
000050c1: PUSH1 0x00
000050c3: DUP1
000050c4: PUSH1 0x00
000050c6: DUP1
000050c7: PUSH2 0x0120
000050ca: DUP6
000050cb: DUP8
000050cc: SUB
000050cd: SLT
000050ce: ISZERO
000050cf: PUSH2 0x50d7
000050d2: JUMPI
000050d3: PUSH1 0x00
000050d5: DUP1
000050d6: REVERT
000050d7: JUMPDEST
000050d8: PUSH2 0x50e1
000050db: DUP7
000050dc: DUP7
000050dd: PUSH2 0x4ff2
000050e0: JUMP
000050e1: JUMPDEST
000050e2: SWAP4
000050e3: POP
000050e4: PUSH1 0xe0
000050e6: DUP6
000050e7: ADD
000050e8: CALLDATALOAD
000050e9: PUSH1 0x01
000050eb: PUSH1 0x01
000050ed: PUSH1 0x40
000050ef: SHL
000050f0: SUB
000050f1: DUP2
000050f2: GT
000050f3: ISZERO
000050f4: PUSH2 0x50fc
000050f7: JUMPI
000050f8: PUSH1 0x00
000050fa: DUP1
000050fb: REVERT
000050fc: JUMPDEST
000050fd: PUSH2 0x5108
00005100: DUP8
00005101: DUP3
00005102: DUP9
00005103: ADD
00005104: PUSH2 0x50ae
00005107: JUMP
00005108: JUMPDEST
00005109: SWAP4
0000510a: POP
0000510b: POP
0000510c: PUSH2 0x0100
0000510f: DUP6
00005110: ADD
00005111: CALLDATALOAD
00005112: PUSH1 0x01
00005114: PUSH1 0x01
00005116: PUSH1 0x40
00005118: SHL
00005119: SUB
0000511a: DUP2
0000511b: GT
0000511c: ISZERO
0000511d: PUSH2 0x5125
00005120: JUMPI
00005121: PUSH1 0x00
00005123: DUP1
00005124: REVERT
00005125: JUMPDEST
00005126: PUSH2 0x5131
00005129: DUP8
0000512a: DUP3
0000512b: DUP9
0000512c: ADD
0000512d: PUSH2 0x500a
00005130: JUMP
00005131: JUMPDEST
00005132: SWAP6
00005133: SWAP9
00005134: SWAP5
00005135: SWAP8
00005136: POP
00005137: SWAP6
00005138: POP
00005139: POP
0000513a: POP
0000513b: POP
0000513c: JUMP
0000513d: JUMPDEST
0000513e: PUSH4 0x4e487b71
00005143: PUSH1 0xe0
00005145: SHL
00005146: PUSH1 0x00
00005148: MSTORE
00005149: PUSH1 0x41
0000514b: PUSH1 0x04
0000514d: MSTORE
0000514e: PUSH1 0x24
00005150: PUSH1 0x00
00005152: REVERT
00005153: JUMPDEST
00005154: PUSH1 0x40
00005156: MLOAD
00005157: PUSH1 0x60
00005159: DUP2
0000515a: ADD
0000515b: PUSH1 0x01
0000515d: PUSH1 0x01
0000515f: PUSH1 0x40
00005161: SHL
00005162: SUB
00005163: DUP2
00005164: GT
00005165: DUP3
00005166: DUP3
00005167: LT
00005168: OR
00005169: ISZERO
0000516a: PUSH2 0x5175
0000516d: JUMPI
0000516e: PUSH2 0x5175
00005171: PUSH2 0x513d
00005174: JUMP
00005175: JUMPDEST
00005176: PUSH1 0x40
00005178: MSTORE
00005179: SWAP1
0000517a: JUMP
0000517b: JUMPDEST
0000517c: PUSH1 0x40
0000517e: MLOAD
0000517f: PUSH1 0x80
00005181: DUP2
00005182: ADD
00005183: PUSH1 0x01
00005185: PUSH1 0x01
00005187: PUSH1 0x40
00005189: SHL
0000518a: SUB
0000518b: DUP2
0000518c: GT
0000518d: DUP3
0000518e: DUP3
0000518f: LT
00005190: OR
00005191: ISZERO
00005192: PUSH2 0x5175
00005195: JUMPI
00005196: PUSH2 0x5175
00005199: PUSH2 0x513d
0000519c: JUMP
0000519d: JUMPDEST
0000519e: PUSH1 0x40
000051a0: MLOAD
000051a1: PUSH1 0x1f
000051a3: DUP3
000051a4: ADD
000051a5: PUSH1 0x1f
000051a7: NOT
000051a8: AND
000051a9: DUP2
000051aa: ADD
000051ab: PUSH1 0x01
000051ad: PUSH1 0x01
000051af: PUSH1 0x40
000051b1: SHL
000051b2: SUB
000051b3: DUP2
000051b4: GT
000051b5: DUP3
000051b6: DUP3
000051b7: LT
000051b8: OR
000051b9: ISZERO
000051ba: PUSH2 0x51c5
000051bd: JUMPI
000051be: PUSH2 0x51c5
000051c1: PUSH2 0x513d
000051c4: JUMP
000051c5: JUMPDEST
000051c6: PUSH1 0x40
000051c8: MSTORE
000051c9: SWAP2
000051ca: SWAP1
000051cb: POP
000051cc: JUMP
000051cd: JUMPDEST
000051ce: PUSH1 0x00
000051d0: DUP1
000051d1: PUSH1 0x40
000051d3: DUP4
000051d4: DUP6
000051d5: SUB
000051d6: SLT
000051d7: ISZERO
000051d8: PUSH2 0x51e0
000051db: JUMPI
000051dc: PUSH1 0x00
000051de: DUP1
000051df: REVERT
000051e0: JUMPDEST
000051e1: DUP3
000051e2: CALLDATALOAD
000051e3: PUSH2 0x51eb
000051e6: DUP2
000051e7: PUSH2 0x4de6
000051ea: JUMP
000051eb: JUMPDEST
000051ec: SWAP2
000051ed: POP
000051ee: PUSH1 0x20
000051f0: DUP4
000051f1: ADD
000051f2: CALLDATALOAD
000051f3: PUSH1 0x01
000051f5: PUSH1 0x01
000051f7: PUSH1 0x40
000051f9: SHL
000051fa: SUB
000051fb: DUP2
000051fc: GT
000051fd: ISZERO
000051fe: PUSH2 0x5206
00005201: JUMPI
00005202: PUSH1 0x00
00005204: DUP1
00005205: REVERT
00005206: JUMPDEST
00005207: DUP4
00005208: ADD
00005209: PUSH1 0x1f
0000520b: DUP2
0000520c: ADD
0000520d: DUP6
0000520e: SGT
0000520f: PUSH2 0x5217
00005212: JUMPI
00005213: PUSH1 0x00
00005215: DUP1
00005216: REVERT
00005217: JUMPDEST
00005218: DUP1
00005219: CALLDATALOAD
0000521a: PUSH1 0x01
0000521c: PUSH1 0x01
0000521e: PUSH1 0x40
00005220: SHL
00005221: SUB
00005222: DUP2
00005223: GT
00005224: ISZERO
00005225: PUSH2 0x5230
00005228: JUMPI
00005229: PUSH2 0x5230
0000522c: PUSH2 0x513d
0000522f: JUMP
00005230: JUMPDEST
00005231: PUSH2 0x5243
00005234: PUSH1 0x1f
00005236: DUP3
00005237: ADD
00005238: PUSH1 0x1f
0000523a: NOT
0000523b: AND
0000523c: PUSH1 0x20
0000523e: ADD
0000523f: PUSH2 0x519d
00005242: JUMP
00005243: JUMPDEST
00005244: DUP2
00005245: DUP2
00005246: MSTORE
00005247: DUP7
00005248: PUSH1 0x20
0000524a: DUP4
0000524b: DUP6
0000524c: ADD
0000524d: ADD
0000524e: GT
0000524f: ISZERO
00005250: PUSH2 0x5258
00005253: JUMPI
00005254: PUSH1 0x00
00005256: DUP1
00005257: REVERT
00005258: JUMPDEST
00005259: DUP2
0000525a: PUSH1 0x20
0000525c: DUP5
0000525d: ADD
0000525e: PUSH1 0x20
00005260: DUP4
00005261: ADD
00005262: CALLDATACOPY
00005263: PUSH1 0x00
00005265: PUSH1 0x20
00005267: DUP4
00005268: DUP4
00005269: ADD
0000526a: ADD
0000526b: MSTORE
0000526c: DUP1
0000526d: SWAP4
0000526e: POP
0000526f: POP
00005270: POP
00005271: POP
00005272: SWAP3
00005273: POP
00005274: SWAP3
00005275: SWAP1
00005276: POP
00005277: JUMP
00005278: JUMPDEST
00005279: PUSH1 0x00
0000527b: DUP1
0000527c: PUSH1 0x00
0000527e: PUSH1 0x60
00005280: DUP5
00005281: DUP7
00005282: SUB
00005283: SLT
00005284: ISZERO
00005285: PUSH2 0x528d
00005288: JUMPI
00005289: PUSH1 0x00
0000528b: DUP1
0000528c: REVERT
0000528d: JUMPDEST
0000528e: DUP4
0000528f: CALLDATALOAD
00005290: SWAP3
00005291: POP
00005292: PUSH1 0x20
00005294: DUP5
00005295: ADD
00005296: CALLDATALOAD
00005297: PUSH2 0x529f
0000529a: DUP2
0000529b: PUSH2 0x4de6
0000529e: JUMP
0000529f: JUMPDEST
000052a0: SWAP3
000052a1: SWAP6
000052a2: SWAP3
000052a3: SWAP5
000052a4: POP
000052a5: POP
000052a6: POP
000052a7: PUSH1 0x40
000052a9: SWAP2
000052aa: SWAP1
000052ab: SWAP2
000052ac: ADD
000052ad: CALLDATALOAD
000052ae: SWAP1
000052af: JUMP
000052b0: JUMPDEST
000052b1: PUSH1 0x00
000052b3: JUMPDEST
000052b4: DUP4
000052b5: DUP2
000052b6: LT
000052b7: ISZERO
000052b8: PUSH2 0x52cb
000052bb: JUMPI
000052bc: DUP2
000052bd: DUP2
000052be: ADD
000052bf: MLOAD
000052c0: DUP4
000052c1: DUP3
000052c2: ADD
000052c3: MSTORE
000052c4: PUSH1 0x20
000052c6: ADD
000052c7: PUSH2 0x52b3
000052ca: JUMP
000052cb: JUMPDEST
000052cc: POP
000052cd: POP
000052ce: PUSH1 0x00
000052d0: SWAP2
000052d1: ADD
000052d2: MSTORE
000052d3: JUMP
000052d4: JUMPDEST
000052d5: PUSH1 0x00
000052d7: DUP2
000052d8: MLOAD
000052d9: DUP1
000052da: DUP5
000052db: MSTORE
000052dc: PUSH2 0x52ec
000052df: DUP2
000052e0: PUSH1 0x20
000052e2: DUP7
000052e3: ADD
000052e4: PUSH1 0x20
000052e6: DUP7
000052e7: ADD
000052e8: PUSH2 0x52b0
000052eb: JUMP
000052ec: JUMPDEST
000052ed: PUSH1 0x1f
000052ef: ADD
000052f0: PUSH1 0x1f
000052f2: NOT
000052f3: AND
000052f4: SWAP3
000052f5: SWAP1
000052f6: SWAP3
000052f7: ADD
000052f8: PUSH1 0x20
000052fa: ADD
000052fb: SWAP3
000052fc: SWAP2
000052fd: POP
000052fe: POP
000052ff: JUMP
00005300: JUMPDEST
00005301: PUSH1 0x00
00005303: DUP2
00005304: MLOAD
00005305: DUP1
00005306: DUP5
00005307: MSTORE
00005308: PUSH1 0x20
0000530a: DUP5
0000530b: ADD
0000530c: SWAP4
0000530d: POP
0000530e: PUSH1 0x20
00005310: DUP4
00005311: ADD
00005312: PUSH1 0x00
00005314: JUMPDEST
00005315: DUP3
00005316: DUP2
00005317: LT
00005318: ISZERO
00005319: PUSH2 0x5332
0000531c: JUMPI
0000531d: DUP2
0000531e: MLOAD
0000531f: DUP7
00005320: MSTORE
00005321: PUSH1 0x20
00005323: SWAP6
00005324: DUP7
00005325: ADD
00005326: SWAP6
00005327: SWAP1
00005328: SWAP2
00005329: ADD
0000532a: SWAP1
0000532b: PUSH1 0x01
0000532d: ADD
0000532e: PUSH2 0x5314
00005331: JUMP
00005332: JUMPDEST
00005333: POP
00005334: SWAP4
00005335: SWAP5
00005336: SWAP4
00005337: POP
00005338: POP
00005339: POP
0000533a: POP
0000533b: JUMP
0000533c: JUMPDEST
0000533d: PUSH1 0xff
0000533f: PUSH1 0xf8
00005341: SHL
00005342: DUP9
00005343: AND
00005344: DUP2
00005345: MSTORE
00005346: PUSH1 0xe0
00005348: PUSH1 0x20
0000534a: DUP3
0000534b: ADD
0000534c: MSTORE
0000534d: PUSH1 0x00
0000534f: PUSH2 0x535b
00005352: PUSH1 0xe0
00005354: DUP4
00005355: ADD
00005356: DUP10
00005357: PUSH2 0x52d4
0000535a: JUMP
0000535b: JUMPDEST
0000535c: DUP3
0000535d: DUP2
0000535e: SUB
0000535f: PUSH1 0x40
00005361: DUP5
00005362: ADD
00005363: MSTORE
00005364: PUSH2 0x536d
00005367: DUP2
00005368: DUP10
00005369: PUSH2 0x52d4
0000536c: JUMP
0000536d: JUMPDEST
0000536e: PUSH1 0x60
00005370: DUP5
00005371: ADD
00005372: DUP9
00005373: SWAP1
00005374: MSTORE
00005375: PUSH1 0x01
00005377: PUSH1 0x01
00005379: PUSH1 0xa0
0000537b: SHL
0000537c: SUB
0000537d: DUP8
0000537e: AND
0000537f: PUSH1 0x80
00005381: DUP6
00005382: ADD
00005383: MSTORE
00005384: PUSH1 0xa0
00005386: DUP5
00005387: ADD
00005388: DUP7
00005389: SWAP1
0000538a: MSTORE
0000538b: DUP4
0000538c: DUP2
0000538d: SUB
0000538e: PUSH1 0xc0
00005390: DUP6
00005391: ADD
00005392: MSTORE
00005393: SWAP1
00005394: POP
00005395: PUSH2 0x539e
00005398: DUP2
00005399: DUP6
0000539a: PUSH2 0x5300
0000539d: JUMP
0000539e: JUMPDEST
0000539f: SWAP11
000053a0: SWAP10
000053a1: POP
000053a2: POP
000053a3: POP
000053a4: POP
000053a5: POP
000053a6: POP
000053a7: POP
000053a8: POP
000053a9: POP
000053aa: POP
000053ab: JUMP
000053ac: JUMPDEST
000053ad: PUSH1 0x00
000053af: DUP1
000053b0: PUSH1 0x40
000053b2: DUP4
000053b3: DUP6
000053b4: SUB
000053b5: SLT
000053b6: ISZERO
000053b7: PUSH2 0x53bf
000053ba: JUMPI
000053bb: PUSH1 0x00
000053bd: DUP1
000053be: REVERT
000053bf: JUMPDEST
000053c0: POP
000053c1: POP
000053c2: DUP1
000053c3: CALLDATALOAD
000053c4: SWAP3
000053c5: PUSH1 0x20
000053c7: SWAP1
000053c8: SWAP2
000053c9: ADD
000053ca: CALLDATALOAD
000053cb: SWAP2
000053cc: POP
000053cd: JUMP
000053ce: JUMPDEST
000053cf: PUSH1 0x00
000053d1: PUSH2 0x0120
000053d4: DUP3
000053d5: DUP5
000053d6: SUB
000053d7: SLT
000053d8: ISZERO
000053d9: PUSH2 0x5004
000053dc: JUMPI
000053dd: PUSH1 0x00
000053df: DUP1
000053e0: REVERT
000053e1: JUMPDEST
000053e2: PUSH1 0x00
000053e4: DUP1
000053e5: PUSH1 0x00
000053e7: PUSH1 0x40
000053e9: DUP5
000053ea: DUP7
000053eb: SUB
000053ec: SLT
000053ed: ISZERO
000053ee: PUSH2 0x53f6
000053f1: JUMPI
000053f2: PUSH1 0x00
000053f4: DUP1
000053f5: REVERT
000053f6: JUMPDEST
000053f7: DUP4
000053f8: CALLDATALOAD
000053f9: PUSH1 0x01
000053fb: PUSH1 0x01
000053fd: PUSH1 0x40
000053ff: SHL
00005400: SUB
00005401: DUP2
00005402: GT
00005403: ISZERO
00005404: PUSH2 0x540c
00005407: JUMPI
00005408: PUSH1 0x00
0000540a: DUP1
0000540b: REVERT
0000540c: JUMPDEST
0000540d: PUSH2 0x5418
00005410: DUP7
00005411: DUP3
00005412: DUP8
00005413: ADD
00005414: PUSH2 0x53ce
00005417: JUMP
00005418: JUMPDEST
00005419: SWAP4
0000541a: POP
0000541b: POP
0000541c: PUSH1 0x20
0000541e: DUP5
0000541f: ADD
00005420: CALLDATALOAD
00005421: PUSH1 0x01
00005423: PUSH1 0x01
00005425: PUSH1 0x40
00005427: SHL
00005428: SUB
00005429: DUP2
0000542a: GT
0000542b: ISZERO
0000542c: PUSH2 0x5434
0000542f: JUMPI
00005430: PUSH1 0x00
00005432: DUP1
00005433: REVERT
00005434: JUMPDEST
00005435: PUSH2 0x5440
00005438: DUP7
00005439: DUP3
0000543a: DUP8
0000543b: ADD
0000543c: PUSH2 0x500a
0000543f: JUMP
00005440: JUMPDEST
00005441: SWAP5
00005442: SWAP8
00005443: SWAP1
00005444: SWAP7
00005445: POP
00005446: SWAP4
00005447: SWAP5
00005448: POP
00005449: POP
0000544a: POP
0000544b: POP
0000544c: JUMP
0000544d: JUMPDEST
0000544e: PUSH1 0x20
00005450: DUP1
00005451: DUP3
00005452: MSTORE
00005453: DUP3
00005454: MLOAD
00005455: DUP3
00005456: DUP3
00005457: ADD
00005458: DUP2
00005459: SWAP1
0000545a: MSTORE
0000545b: PUSH1 0x00
0000545d: SWAP2
0000545e: DUP5
0000545f: ADD
00005460: SWAP1
00005461: PUSH1 0x40
00005463: DUP5
00005464: ADD
00005465: SWAP1
00005466: DUP4
00005467: JUMPDEST
00005468: DUP2
00005469: DUP2
0000546a: LT
0000546b: ISZERO
0000546c: PUSH2 0x548e
0000546f: JUMPI
00005470: DUP4
00005471: MLOAD
00005472: PUSH1 0x01
00005474: PUSH1 0x01
00005476: PUSH1 0xa0
00005478: SHL
00005479: SUB
0000547a: AND
0000547b: DUP4
0000547c: MSTORE
0000547d: PUSH1 0x20
0000547f: SWAP4
00005480: DUP5
00005481: ADD
00005482: SWAP4
00005483: SWAP1
00005484: SWAP3
00005485: ADD
00005486: SWAP2
00005487: PUSH1 0x01
00005489: ADD
0000548a: PUSH2 0x5467
0000548d: JUMP
0000548e: JUMPDEST
0000548f: POP
00005490: SWAP1
00005491: SWAP6
00005492: SWAP5
00005493: POP
00005494: POP
00005495: POP
00005496: POP
00005497: POP
00005498: JUMP
00005499: JUMPDEST
0000549a: DUP1
0000549b: CALLDATALOAD
0000549c: PUSH1 0x01
0000549e: PUSH1 0x01
000054a0: PUSH1 0x40
000054a2: SHL
000054a3: SUB
000054a4: DUP2
000054a5: AND
000054a6: DUP2
000054a7: EQ
000054a8: PUSH2 0x4e06
000054ab: JUMPI
000054ac: PUSH1 0x00
000054ae: DUP1
000054af: REVERT
000054b0: JUMPDEST
000054b1: PUSH1 0x00
000054b3: DUP1
000054b4: PUSH1 0x00
000054b6: DUP1
000054b7: PUSH1 0x80
000054b9: DUP6
000054ba: DUP8
000054bb: SUB
000054bc: SLT
000054bd: ISZERO
000054be: PUSH2 0x54c6
000054c1: JUMPI
000054c2: PUSH1 0x00
000054c4: DUP1
000054c5: REVERT
000054c6: JUMPDEST
000054c7: DUP5
000054c8: CALLDATALOAD
000054c9: SWAP4
000054ca: POP
000054cb: PUSH1 0x20
000054cd: DUP6
000054ce: ADD
000054cf: CALLDATALOAD
000054d0: PUSH2 0x54d8
000054d3: DUP2
000054d4: PUSH2 0x4de6
000054d7: JUMP
000054d8: JUMPDEST
000054d9: SWAP3
000054da: POP
000054db: PUSH1 0x40
000054dd: DUP6
000054de: ADD
000054df: CALLDATALOAD
000054e0: SWAP2
000054e1: POP
000054e2: PUSH2 0x54ed
000054e5: PUSH1 0x60
000054e7: DUP7
000054e8: ADD
000054e9: PUSH2 0x5499
000054ec: JUMP
000054ed: JUMPDEST
000054ee: SWAP1
000054ef: POP
000054f0: SWAP3
000054f1: SWAP6
000054f2: SWAP2
000054f3: SWAP5
000054f4: POP
000054f5: SWAP3
000054f6: POP
000054f7: JUMP
000054f8: JUMPDEST
000054f9: PUSH1 0x00
000054fb: PUSH1 0xa0
000054fd: DUP3
000054fe: DUP5
000054ff: SUB
00005500: SLT
00005501: ISZERO
00005502: PUSH2 0x5004
00005505: JUMPI
00005506: PUSH1 0x00
00005508: DUP1
00005509: REVERT
0000550a: JUMPDEST
0000550b: PUSH1 0x00
0000550d: DUP1
0000550e: PUSH1 0x00
00005510: DUP1
00005511: PUSH1 0x00
00005513: PUSH2 0x0120
00005516: DUP7
00005517: DUP9
00005518: SUB
00005519: SLT
0000551a: ISZERO
0000551b: PUSH2 0x5523
0000551e: JUMPI
0000551f: PUSH1 0x00
00005521: DUP1
00005522: REVERT
00005523: JUMPDEST
00005524: PUSH2 0x552d
00005527: DUP8
00005528: DUP8
00005529: PUSH2 0x54f8
0000552c: JUMP
0000552d: JUMPDEST
0000552e: SWAP5
0000552f: POP
00005530: PUSH1 0xa0
00005532: DUP7
00005533: ADD
00005534: CALLDATALOAD
00005535: SWAP4
00005536: POP
00005537: PUSH2 0x5542
0000553a: PUSH1 0xc0
0000553c: DUP8
0000553d: ADD
0000553e: PUSH2 0x5499
00005541: JUMP
00005542: JUMPDEST
00005543: SWAP3
00005544: POP
00005545: PUSH1 0xe0
00005547: DUP7
00005548: ADD
00005549: CALLDATALOAD
0000554a: PUSH1 0x01
0000554c: PUSH1 0x01
0000554e: PUSH1 0x40
00005550: SHL
00005551: SUB
00005552: DUP2
00005553: GT
00005554: ISZERO
00005555: PUSH2 0x555d
00005558: JUMPI
00005559: PUSH1 0x00
0000555b: DUP1
0000555c: REVERT
0000555d: JUMPDEST
0000555e: PUSH2 0x5569
00005561: DUP9
00005562: DUP3
00005563: DUP10
00005564: ADD
00005565: PUSH2 0x50ae
00005568: JUMP
00005569: JUMPDEST
0000556a: SWAP3
0000556b: POP
0000556c: POP
0000556d: PUSH2 0x0100
00005570: DUP7
00005571: ADD
00005572: CALLDATALOAD
00005573: PUSH2 0x4eb7
00005576: DUP2
00005577: PUSH2 0x4de6
0000557a: JUMP
0000557b: JUMPDEST
0000557c: PUSH1 0x20
0000557e: DUP2
0000557f: MSTORE
00005580: PUSH1 0x00
00005582: PUSH2 0x1e12
00005585: PUSH1 0x20
00005587: DUP4
00005588: ADD
00005589: DUP5
0000558a: PUSH2 0x52d4
0000558d: JUMP
0000558e: JUMPDEST
0000558f: PUSH1 0x00
00005591: DUP1
00005592: PUSH1 0x00
00005594: DUP1
00005595: PUSH1 0x00
00005597: PUSH2 0x0120
0000559a: DUP7
0000559b: DUP9
0000559c: SUB
0000559d: SLT
0000559e: ISZERO
0000559f: PUSH2 0x55a7
000055a2: JUMPI
000055a3: PUSH1 0x00
000055a5: DUP1
000055a6: REVERT
000055a7: JUMPDEST
000055a8: PUSH2 0x55b1
000055ab: DUP8
000055ac: DUP8
000055ad: PUSH2 0x54f8
000055b0: JUMP
000055b1: JUMPDEST
000055b2: SWAP5
000055b3: POP
000055b4: PUSH1 0xa0
000055b6: DUP7
000055b7: ADD
000055b8: CALLDATALOAD
000055b9: SWAP4
000055ba: POP
000055bb: PUSH2 0x55c6
000055be: PUSH1 0xc0
000055c0: DUP8
000055c1: ADD
000055c2: PUSH2 0x5499
000055c5: JUMP
000055c6: JUMPDEST
000055c7: SWAP3
000055c8: POP
000055c9: PUSH1 0xe0
000055cb: DUP7
000055cc: ADD
000055cd: CALLDATALOAD
000055ce: PUSH1 0x01
000055d0: PUSH1 0x01
000055d2: PUSH1 0x40
000055d4: SHL
000055d5: SUB
000055d6: DUP2
000055d7: GT
000055d8: ISZERO
000055d9: PUSH2 0x55e1
000055dc: JUMPI
000055dd: PUSH1 0x00
000055df: DUP1
000055e0: REVERT
000055e1: JUMPDEST
000055e2: DUP7
000055e3: ADD
000055e4: PUSH1 0x80
000055e6: DUP2
000055e7: DUP10
000055e8: SUB
000055e9: SLT
000055ea: ISZERO
000055eb: PUSH2 0x55f3
000055ee: JUMPI
000055ef: PUSH1 0x00
000055f1: DUP1
000055f2: REVERT
000055f3: JUMPDEST
000055f4: SWAP2
000055f5: POP
000055f6: PUSH2 0x0100
000055f9: DUP7
000055fa: ADD
000055fb: CALLDATALOAD
000055fc: PUSH2 0x4eb7
000055ff: DUP2
00005600: PUSH2 0x4de6
00005603: JUMP
00005604: JUMPDEST
00005605: PUSH1 0x00
00005607: DUP1
00005608: PUSH1 0x00
0000560a: PUSH1 0xe0
0000560c: DUP5
0000560d: DUP7
0000560e: SUB
0000560f: SLT
00005610: ISZERO
00005611: PUSH2 0x5619
00005614: JUMPI
00005615: PUSH1 0x00
00005617: DUP1
00005618: REVERT
00005619: JUMPDEST
0000561a: PUSH2 0x5623
0000561d: DUP6
0000561e: DUP6
0000561f: PUSH2 0x54f8
00005622: JUMP
00005623: JUMPDEST
00005624: SWAP3
00005625: POP
00005626: PUSH1 0xa0
00005628: DUP5
00005629: ADD
0000562a: CALLDATALOAD
0000562b: SWAP2
0000562c: POP
0000562d: PUSH2 0x5638
00005630: PUSH1 0xc0
00005632: DUP6
00005633: ADD
00005634: PUSH2 0x5499
00005637: JUMP
00005638: JUMPDEST
00005639: SWAP1
0000563a: POP
0000563b: SWAP3
0000563c: POP
0000563d: SWAP3
0000563e: POP
0000563f: SWAP3
00005640: JUMP
00005641: JUMPDEST
00005642: PUSH1 0x00
00005644: DUP1
00005645: PUSH1 0x00
00005647: DUP1
00005648: PUSH1 0x00
0000564a: PUSH2 0x0120
0000564d: DUP7
0000564e: DUP9
0000564f: SUB
00005650: SLT
00005651: ISZERO
00005652: PUSH2 0x565a
00005655: JUMPI
00005656: PUSH1 0x00
00005658: DUP1
00005659: REVERT
0000565a: JUMPDEST
0000565b: PUSH2 0x5664
0000565e: DUP8
0000565f: DUP8
00005660: PUSH2 0x54f8
00005663: JUMP
00005664: JUMPDEST
00005665: SWAP5
00005666: POP
00005667: PUSH1 0xa0
00005669: DUP7
0000566a: ADD
0000566b: CALLDATALOAD
0000566c: SWAP4
0000566d: POP
0000566e: PUSH2 0x5679
00005671: PUSH1 0xc0
00005673: DUP8
00005674: ADD
00005675: PUSH2 0x5499
00005678: JUMP
00005679: JUMPDEST
0000567a: SWAP3
0000567b: POP
0000567c: PUSH1 0xe0
0000567e: DUP7
0000567f: ADD
00005680: CALLDATALOAD
00005681: PUSH1 0x01
00005683: PUSH1 0x01
00005685: PUSH1 0x40
00005687: SHL
00005688: SUB
00005689: DUP2
0000568a: GT
0000568b: ISZERO
0000568c: PUSH2 0x5694
0000568f: JUMPI
00005690: PUSH1 0x00
00005692: DUP1
00005693: REVERT
00005694: JUMPDEST
00005695: DUP7
00005696: ADD
00005697: PUSH1 0xc0
00005699: DUP2
0000569a: DUP10
0000569b: SUB
0000569c: SLT
0000569d: ISZERO
0000569e: PUSH2 0x55f3
000056a1: JUMPI
000056a2: PUSH1 0x00
000056a4: DUP1
000056a5: REVERT
000056a6: JUMPDEST
000056a7: PUSH1 0x00
000056a9: DUP1
000056aa: DUP4
000056ab: PUSH1 0x1f
000056ad: DUP5
000056ae: ADD
000056af: SLT
000056b0: PUSH2 0x56b8
000056b3: JUMPI
000056b4: PUSH1 0x00
000056b6: DUP1
000056b7: REVERT
000056b8: JUMPDEST
000056b9: POP
000056ba: DUP2
000056bb: CALLDATALOAD
000056bc: PUSH1 0x01
000056be: PUSH1 0x01
000056c0: PUSH1 0x40
000056c2: SHL
000056c3: SUB
000056c4: DUP2
000056c5: GT
000056c6: ISZERO
000056c7: PUSH2 0x56cf
000056ca: JUMPI
000056cb: PUSH1 0x00
000056cd: DUP1
000056ce: REVERT
000056cf: JUMPDEST
000056d0: PUSH1 0x20
000056d2: DUP4
000056d3: ADD
000056d4: SWAP2
000056d5: POP
000056d6: DUP4
000056d7: PUSH1 0x20
000056d9: DUP3
000056da: PUSH1 0x05
000056dc: SHL
000056dd: DUP6
000056de: ADD
000056df: ADD
000056e0: GT
000056e1: ISZERO
000056e2: PUSH2 0x504b
000056e5: JUMPI
000056e6: PUSH1 0x00
000056e8: DUP1
000056e9: REVERT
000056ea: JUMPDEST
000056eb: PUSH1 0x00
000056ed: DUP1
000056ee: PUSH1 0x20
000056f0: DUP4
000056f1: DUP6
000056f2: SUB
000056f3: SLT
000056f4: ISZERO
000056f5: PUSH2 0x56fd
000056f8: JUMPI
000056f9: PUSH1 0x00
000056fb: DUP1
000056fc: REVERT
000056fd: JUMPDEST
000056fe: DUP3
000056ff: CALLDATALOAD
00005700: PUSH1 0x01
00005702: PUSH1 0x01
00005704: PUSH1 0x40
00005706: SHL
00005707: SUB
00005708: DUP2
00005709: GT
0000570a: ISZERO
0000570b: PUSH2 0x5713
0000570e: JUMPI
0000570f: PUSH1 0x00
00005711: DUP1
00005712: REVERT
00005713: JUMPDEST
00005714: PUSH2 0x571f
00005717: DUP6
00005718: DUP3
00005719: DUP7
0000571a: ADD
0000571b: PUSH2 0x56a6
0000571e: JUMP
0000571f: JUMPDEST
00005720: SWAP1
00005721: SWAP7
00005722: SWAP1
00005723: SWAP6
00005724: POP
00005725: SWAP4
00005726: POP
00005727: POP
00005728: POP
00005729: POP
0000572a: JUMP
0000572b: JUMPDEST
0000572c: PUSH1 0x20
0000572e: DUP2
0000572f: MSTORE
00005730: PUSH1 0x00
00005732: PUSH2 0x1e12
00005735: PUSH1 0x20
00005737: DUP4
00005738: ADD
00005739: DUP5
0000573a: PUSH2 0x5300
0000573d: JUMP
0000573e: JUMPDEST
0000573f: PUSH1 0x00
00005741: DUP1
00005742: PUSH1 0x00
00005744: PUSH1 0x40
00005746: DUP5
00005747: DUP7
00005748: SUB
00005749: SLT
0000574a: ISZERO
0000574b: PUSH2 0x5753
0000574e: JUMPI
0000574f: PUSH1 0x00
00005751: DUP1
00005752: REVERT
00005753: JUMPDEST
00005754: DUP4
00005755: CALLDATALOAD
00005756: PUSH1 0x01
00005758: PUSH1 0x01
0000575a: PUSH1 0x40
0000575c: SHL
0000575d: SUB
0000575e: DUP2
0000575f: GT
00005760: ISZERO
00005761: PUSH2 0x5769
00005764: JUMPI
00005765: PUSH1 0x00
00005767: DUP1
00005768: REVERT
00005769: JUMPDEST
0000576a: PUSH2 0x5775
0000576d: DUP7
0000576e: DUP3
0000576f: DUP8
00005770: ADD
00005771: PUSH2 0x56a6
00005774: JUMP
00005775: JUMPDEST
00005776: SWAP1
00005777: SWAP5
00005778: POP
00005779: SWAP3
0000577a: POP
0000577b: POP
0000577c: PUSH1 0x20
0000577e: DUP5
0000577f: ADD
00005780: CALLDATALOAD
00005781: PUSH2 0x5789
00005784: DUP2
00005785: PUSH2 0x4de6
00005788: JUMP
00005789: JUMPDEST
0000578a: DUP1
0000578b: SWAP2
0000578c: POP
0000578d: POP
0000578e: SWAP3
0000578f: POP
00005790: SWAP3
00005791: POP
00005792: SWAP3
00005793: JUMP
00005794: JUMPDEST
00005795: PUSH4 0x4e487b71
0000579a: PUSH1 0xe0
0000579c: SHL
0000579d: PUSH1 0x00
0000579f: MSTORE
000057a0: PUSH1 0x11
000057a2: PUSH1 0x04
000057a4: MSTORE
000057a5: PUSH1 0x24
000057a7: PUSH1 0x00
000057a9: REVERT
000057aa: JUMPDEST
000057ab: DUP2
000057ac: DUP2
000057ad: SUB
000057ae: DUP2
000057af: DUP2
000057b0: GT
000057b1: ISZERO
000057b2: PUSH2 0x0bfd
000057b5: JUMPI
000057b6: PUSH2 0x0bfd
000057b9: PUSH2 0x5794
000057bc: JUMP
000057bd: JUMPDEST
000057be: PUSH1 0xff
000057c0: DUP2
000057c1: AND
000057c2: DUP2
000057c3: EQ
000057c4: PUSH2 0x1648
000057c7: JUMPI
000057c8: PUSH1 0x00
000057ca: DUP1
000057cb: REVERT
000057cc: JUMPDEST
000057cd: PUSH1 0x00
000057cf: PUSH1 0x20
000057d1: DUP3
000057d2: DUP5
000057d3: SUB
000057d4: SLT
000057d5: ISZERO
000057d6: PUSH2 0x57de
000057d9: JUMPI
000057da: PUSH1 0x00
000057dc: DUP1
000057dd: REVERT
000057de: JUMPDEST
000057df: DUP2
000057e0: MLOAD
000057e1: PUSH2 0x1e12
000057e4: DUP2
000057e5: PUSH2 0x57bd
000057e8: JUMP
000057e9: JUMPDEST
000057ea: PUSH1 0x00
000057ec: PUSH1 0x20
000057ee: DUP3
000057ef: DUP5
000057f0: SUB
000057f1: SLT
000057f2: ISZERO
000057f3: PUSH2 0x57fb
000057f6: JUMPI
000057f7: PUSH1 0x00
000057f9: DUP1
000057fa: REVERT
000057fb: JUMPDEST
000057fc: POP
000057fd: MLOAD
000057fe: SWAP2
000057ff: SWAP1
00005800: POP
00005801: JUMP
00005802: JUMPDEST
00005803: PUSH1 0x00
00005805: PUSH1 0x20
00005807: DUP3
00005808: DUP5
00005809: SUB
0000580a: SLT
0000580b: ISZERO
0000580c: PUSH2 0x5814
0000580f: JUMPI
00005810: PUSH1 0x00
00005812: DUP1
00005813: REVERT
00005814: JUMPDEST
00005815: PUSH2 0x1e12
00005818: DUP3
00005819: PUSH2 0x5499
0000581c: JUMP
0000581d: JUMPDEST
0000581e: SWAP9
0000581f: DUP10
00005820: MSTORE
00005821: PUSH1 0x20
00005823: DUP10
00005824: ADD
00005825: SWAP8
00005826: SWAP1
00005827: SWAP8
00005828: MSTORE
00005829: PUSH1 0x01
0000582b: PUSH1 0x01
0000582d: PUSH1 0xa0
0000582f: SHL
00005830: SUB
00005831: SWAP6
00005832: DUP7
00005833: AND
00005834: PUSH1 0x40
00005836: DUP10
00005837: ADD
00005838: MSTORE
00005839: SWAP4
0000583a: DUP6
0000583b: AND
0000583c: PUSH1 0x60
0000583e: DUP9
0000583f: ADD
00005840: MSTORE
00005841: SWAP2
00005842: DUP5
00005843: AND
00005844: PUSH1 0x80
00005846: DUP8
00005847: ADD
00005848: MSTORE
00005849: PUSH1 0x01
0000584b: PUSH1 0x01
0000584d: PUSH1 0x40
0000584f: SHL
00005850: SUB
00005851: AND
00005852: PUSH1 0xa0
00005854: DUP7
00005855: ADD
00005856: MSTORE
00005857: SWAP1
00005858: SWAP2
00005859: AND
0000585a: PUSH1 0xc0
0000585c: DUP5
0000585d: ADD
0000585e: MSTORE
0000585f: PUSH1 0xe0
00005861: DUP4
00005862: ADD
00005863: MSTORE
00005864: PUSH2 0x0100
00005867: DUP3
00005868: ADD
00005869: MSTORE
0000586a: PUSH2 0x0120
0000586d: ADD
0000586e: SWAP1
0000586f: JUMP
00005870: JUMPDEST
00005871: PUSH1 0x00
00005873: DUP1
00005874: DUP4
00005875: CALLDATALOAD
00005876: PUSH1 0x1e
00005878: NOT
00005879: DUP5
0000587a: CALLDATASIZE
0000587b: SUB
0000587c: ADD
0000587d: DUP2
0000587e: SLT
0000587f: PUSH2 0x5887
00005882: JUMPI
00005883: PUSH1 0x00
00005885: DUP1
00005886: REVERT
00005887: JUMPDEST
00005888: DUP4
00005889: ADD
0000588a: DUP1
0000588b: CALLDATALOAD
0000588c: SWAP2
0000588d: POP
0000588e: PUSH1 0x01
00005890: PUSH1 0x01
00005892: PUSH1 0x40
00005894: SHL
00005895: SUB
00005896: DUP3
00005897: GT
00005898: ISZERO
00005899: PUSH2 0x58a1
0000589c: JUMPI
0000589d: PUSH1 0x00
0000589f: DUP1
000058a0: REVERT
000058a1: JUMPDEST
000058a2: PUSH1 0x20
000058a4: ADD
000058a5: SWAP2
000058a6: POP
000058a7: CALLDATASIZE
000058a8: DUP2
000058a9: SWAP1
000058aa: SUB
000058ab: DUP3
000058ac: SGT
000058ad: ISZERO
000058ae: PUSH2 0x504b
000058b1: JUMPI
000058b2: PUSH1 0x00
000058b4: DUP1
000058b5: REVERT
000058b6: JUMPDEST
000058b7: DUP1
000058b8: DUP3
000058b9: ADD
000058ba: DUP1
000058bb: DUP3
000058bc: GT
000058bd: ISZERO
000058be: PUSH2 0x0bfd
000058c1: JUMPI
000058c2: PUSH2 0x0bfd
000058c5: PUSH2 0x5794
000058c8: JUMP
000058c9: JUMPDEST
000058ca: PUSH1 0x00
000058cc: DUP3
000058cd: CALLDATALOAD
000058ce: PUSH1 0xbe
000058d0: NOT
000058d1: DUP4
000058d2: CALLDATASIZE
000058d3: SUB
000058d4: ADD
000058d5: DUP2
000058d6: SLT
000058d7: PUSH2 0x58df
000058da: JUMPI
000058db: PUSH1 0x00
000058dd: DUP1
000058de: REVERT
000058df: JUMPDEST
000058e0: SWAP2
000058e1: SWAP1
000058e2: SWAP2
000058e3: ADD
000058e4: SWAP3
000058e5: SWAP2
000058e6: POP
000058e7: POP
000058e8: JUMP
000058e9: JUMPDEST
000058ea: SWAP4
000058eb: DUP5
000058ec: MSTORE
000058ed: PUSH1 0x20
000058ef: DUP5
000058f0: ADD
000058f1: SWAP3
000058f2: SWAP1
000058f3: SWAP3
000058f4: MSTORE
000058f5: PUSH1 0x40
000058f7: DUP4
000058f8: ADD
000058f9: MSTORE
000058fa: PUSH1 0x01
000058fc: PUSH1 0x01
000058fe: PUSH1 0xa0
00005900: SHL
00005901: SUB
00005902: AND
00005903: PUSH1 0x60
00005905: DUP3
00005906: ADD
00005907: MSTORE
00005908: PUSH1 0x80
0000590a: ADD
0000590b: SWAP1
0000590c: JUMP
0000590d: JUMPDEST
0000590e: PUSH1 0x00
00005910: PUSH1 0x20
00005912: DUP3
00005913: DUP5
00005914: SUB
00005915: SLT
00005916: ISZERO
00005917: PUSH2 0x591f
0000591a: JUMPI
0000591b: PUSH1 0x00
0000591d: DUP1
0000591e: REVERT
0000591f: JUMPDEST
00005920: DUP2
00005921: CALLDATALOAD
00005922: PUSH2 0x1e12
00005925: DUP2
00005926: PUSH2 0x57bd
00005929: JUMP
0000592a: JUMPDEST
0000592b: PUSH6 0xffffffffffff
00005932: DUP2
00005933: AND
00005934: DUP2
00005935: EQ
00005936: PUSH2 0x1648
00005939: JUMPI
0000593a: PUSH1 0x00
0000593c: DUP1
0000593d: REVERT
0000593e: JUMPDEST
0000593f: PUSH1 0x00
00005941: DUP2
00005942: DUP4
00005943: SUB
00005944: PUSH1 0xc0
00005946: DUP2
00005947: SLT
00005948: DUP1
00005949: ISZERO
0000594a: PUSH2 0x5952
0000594d: JUMPI
0000594e: PUSH1 0x00
00005950: DUP1
00005951: REVERT
00005952: JUMPDEST
00005953: POP
00005954: PUSH2 0x595b
00005957: PUSH2 0x5153
0000595a: JUMP
0000595b: JUMPDEST
0000595c: PUSH1 0x80
0000595e: DUP3
0000595f: SLT
00005960: ISZERO
00005961: PUSH2 0x5969
00005964: JUMPI
00005965: PUSH1 0x00
00005967: DUP1
00005968: REVERT
00005969: JUMPDEST
0000596a: PUSH2 0x5971
0000596d: PUSH2 0x517b
00005970: JUMP
00005971: JUMPDEST
00005972: SWAP2
00005973: POP
00005974: DUP4
00005975: CALLDATALOAD
00005976: PUSH2 0x597e
00005979: DUP2
0000597a: PUSH2 0x4de6
0000597d: JUMP
0000597e: JUMPDEST
0000597f: DUP3
00005980: MSTORE
00005981: PUSH1 0x20
00005983: DUP5
00005984: ADD
00005985: CALLDATALOAD
00005986: PUSH2 0x598e
00005989: DUP2
0000598a: PUSH2 0x4de6
0000598d: JUMP
0000598e: JUMPDEST
0000598f: PUSH1 0x20
00005991: DUP4
00005992: ADD
00005993: MSTORE
00005994: PUSH1 0x40
00005996: DUP5
00005997: ADD
00005998: CALLDATALOAD
00005999: PUSH2 0x59a1
0000599c: DUP2
0000599d: PUSH2 0x592a
000059a0: JUMP
000059a1: JUMPDEST
000059a2: PUSH1 0x40
000059a4: DUP4
000059a5: ADD
000059a6: MSTORE
000059a7: PUSH1 0x60
000059a9: DUP5
000059aa: ADD
000059ab: CALLDATALOAD
000059ac: PUSH2 0x59b4
000059af: DUP2
000059b0: PUSH2 0x592a
000059b3: JUMP
000059b4: JUMPDEST
000059b5: PUSH1 0x60
000059b7: DUP4
000059b8: ADD
000059b9: MSTORE
000059ba: DUP2
000059bb: DUP2
000059bc: MSTORE
000059bd: PUSH2 0x59c8
000059c0: PUSH1 0x80
000059c2: DUP6
000059c3: ADD
000059c4: PUSH2 0x4dfb
000059c7: JUMP
000059c8: JUMPDEST
000059c9: PUSH1 0x20
000059cb: DUP3
000059cc: ADD
000059cd: MSTORE
000059ce: PUSH1 0xa0
000059d0: SWAP4
000059d1: SWAP1
000059d2: SWAP4
000059d3: ADD
000059d4: CALLDATALOAD
000059d5: PUSH1 0x40
000059d7: DUP5
000059d8: ADD
000059d9: MSTORE
000059da: POP
000059db: SWAP1
000059dc: SWAP3
000059dd: SWAP2
000059de: POP
000059df: POP
000059e0: JUMP
000059e1: JUMPDEST
000059e2: PUSH1 0x00
000059e4: DUP3
000059e5: CALLDATALOAD
000059e6: PUSH1 0x7e
000059e8: NOT
000059e9: DUP4
000059ea: CALLDATASIZE
000059eb: SUB
000059ec: ADD
000059ed: DUP2
000059ee: SLT
000059ef: PUSH2 0x58df
000059f2: JUMPI
000059f3: PUSH1 0x00
000059f5: DUP1
000059f6: REVERT
000059f7: JUMPDEST
000059f8: PUSH4 0x4e487b71
000059fd: PUSH1 0xe0
000059ff: SHL
00005a00: PUSH1 0x00
00005a02: MSTORE
00005a03: PUSH1 0x32
00005a05: PUSH1 0x04
00005a07: MSTORE
00005a08: PUSH1 0x24
00005a0a: PUSH1 0x00
00005a0c: REVERT
00005a0d: JUMPDEST
00005a0e: PUSH1 0x60
00005a10: DUP1
00005a11: DUP3
00005a12: MSTORE
00005a13: DUP2
00005a14: ADD
00005a15: DUP5
00005a16: SWAP1
00005a17: MSTORE
00005a18: PUSH1 0x00
00005a1a: DUP6
00005a1b: PUSH1 0x80
00005a1d: DUP4
00005a1e: ADD
00005a1f: DUP3
00005a20: JUMPDEST
00005a21: DUP8
00005a22: DUP2
00005a23: LT
00005a24: ISZERO
00005a25: PUSH2 0x5a50
00005a28: JUMPI
00005a29: DUP3
00005a2a: CALLDATALOAD
00005a2b: PUSH2 0x5a33
00005a2e: DUP2
00005a2f: PUSH2 0x4de6
00005a32: JUMP
00005a33: JUMPDEST
00005a34: PUSH1 0x01
00005a36: PUSH1 0x01
00005a38: PUSH1 0xa0
00005a3a: SHL
00005a3b: SUB
00005a3c: AND
00005a3d: DUP3
00005a3e: MSTORE
00005a3f: PUSH1 0x20
00005a41: SWAP3
00005a42: DUP4
00005a43: ADD
00005a44: SWAP3
00005a45: SWAP1
00005a46: SWAP2
00005a47: ADD
00005a48: SWAP1
00005a49: PUSH1 0x01
00005a4b: ADD
00005a4c: PUSH2 0x5a20
00005a4f: JUMP
00005a50: JUMPDEST
00005a51: POP
00005a52: DUP4
00005a53: DUP2
00005a54: SUB
00005a55: PUSH1 0x20
00005a57: DUP6
00005a58: ADD
00005a59: MSTORE
00005a5a: PUSH2 0x5a63
00005a5d: DUP2
00005a5e: DUP8
00005a5f: PUSH2 0x5300
00005a62: JUMP
00005a63: JUMPDEST
00005a64: SWAP3
00005a65: POP
00005a66: POP
00005a67: POP
00005a68: PUSH1 0x01
00005a6a: DUP1
00005a6b: PUSH1 0xa0
00005a6d: SHL
00005a6e: SUB
00005a6f: DUP4
00005a70: AND
00005a71: PUSH1 0x40
00005a73: DUP4
00005a74: ADD
00005a75: MSTORE
00005a76: SWAP6
00005a77: SWAP5
00005a78: POP
00005a79: POP
00005a7a: POP
00005a7b: POP
00005a7c: POP
00005a7d: JUMP
00005a7e: JUMPDEST
00005a7f: PUSH1 0x01
00005a81: DUP2
00005a82: DUP2
00005a83: SHR
00005a84: SWAP1
00005a85: DUP3
00005a86: AND
00005a87: DUP1
00005a88: PUSH2 0x5a92
00005a8b: JUMPI
00005a8c: PUSH1 0x7f
00005a8e: DUP3
00005a8f: AND
00005a90: SWAP2
00005a91: POP
00005a92: JUMPDEST
00005a93: PUSH1 0x20
00005a95: DUP3
00005a96: LT
00005a97: DUP2
00005a98: SUB
00005a99: PUSH2 0x5004
00005a9c: JUMPI
00005a9d: PUSH4 0x4e487b71
00005aa2: PUSH1 0xe0
00005aa4: SHL
00005aa5: PUSH1 0x00
00005aa7: MSTORE
00005aa8: PUSH1 0x22
00005aaa: PUSH1 0x04
00005aac: MSTORE
00005aad: PUSH1 0x24
00005aaf: PUSH1 0x00
00005ab1: REVERT
00005ab2: JUMPDEST
00005ab3: DUP2
00005ab4: DUP4
00005ab5: MSTORE
00005ab6: DUP2
00005ab7: DUP2
00005ab8: PUSH1 0x20
00005aba: DUP6
00005abb: ADD
00005abc: CALLDATACOPY
00005abd: POP
00005abe: PUSH1 0x00
00005ac0: DUP3
00005ac1: DUP3
00005ac2: ADD
00005ac3: PUSH1 0x20
00005ac5: SWAP1
00005ac6: DUP2
00005ac7: ADD
00005ac8: SWAP2
00005ac9: SWAP1
00005aca: SWAP2
00005acb: MSTORE
00005acc: PUSH1 0x1f
00005ace: SWAP1
00005acf: SWAP2
00005ad0: ADD
00005ad1: PUSH1 0x1f
00005ad3: NOT
00005ad4: AND
00005ad5: SWAP1
00005ad6: SWAP2
00005ad7: ADD
00005ad8: ADD
00005ad9: SWAP1
00005ada: JUMP
00005adb: JUMPDEST
00005adc: PUSH1 0x01
00005ade: DUP1
00005adf: PUSH1 0xa0
00005ae1: SHL
00005ae2: SUB
00005ae3: DUP6
00005ae4: AND
00005ae5: DUP2
00005ae6: MSTORE
00005ae7: PUSH1 0x00
00005ae9: DUP5
00005aea: MLOAD
00005aeb: PUSH1 0x01
00005aed: DUP1
00005aee: PUSH1 0xa0
00005af0: SHL
00005af1: SUB
00005af2: DUP2
00005af3: MLOAD
00005af4: AND
00005af5: PUSH1 0x20
00005af7: DUP5
00005af8: ADD
00005af9: MSTORE
00005afa: PUSH1 0x01
00005afc: DUP1
00005afd: PUSH1 0xa0
00005aff: SHL
00005b00: SUB
00005b01: PUSH1 0x20
00005b03: DUP3
00005b04: ADD
00005b05: MLOAD
00005b06: AND
00005b07: PUSH1 0x40
00005b09: DUP5
00005b0a: ADD
00005b0b: MSTORE
00005b0c: PUSH6 0xffffffffffff
00005b13: PUSH1 0x40
00005b15: DUP3
00005b16: ADD
00005b17: MLOAD
00005b18: AND
00005b19: PUSH1 0x60
00005b1b: DUP5
00005b1c: ADD
00005b1d: MSTORE
00005b1e: PUSH6 0xffffffffffff
00005b25: PUSH1 0x60
00005b27: DUP3
00005b28: ADD
00005b29: MLOAD
00005b2a: AND
00005b2b: PUSH1 0x80
00005b2d: DUP5
00005b2e: ADD
00005b2f: MSTORE
00005b30: POP
00005b31: PUSH1 0x01
00005b33: DUP1
00005b34: PUSH1 0xa0
00005b36: SHL
00005b37: SUB
00005b38: PUSH1 0x20
00005b3a: DUP7
00005b3b: ADD
00005b3c: MLOAD
00005b3d: AND
00005b3e: PUSH1 0xa0
00005b40: DUP4
00005b41: ADD
00005b42: MSTORE
00005b43: PUSH1 0x40
00005b45: DUP6
00005b46: ADD
00005b47: MLOAD
00005b48: PUSH1 0xc0
00005b4a: DUP4
00005b4b: ADD
00005b4c: MSTORE
00005b4d: PUSH2 0x0100
00005b50: PUSH1 0xe0
00005b52: DUP4
00005b53: ADD
00005b54: MSTORE
00005b55: PUSH2 0x5b63
00005b58: PUSH2 0x0100
00005b5b: DUP4
00005b5c: ADD
00005b5d: DUP5
00005b5e: DUP7
00005b5f: PUSH2 0x5ab2
00005b62: JUMP
00005b63: JUMPDEST
00005b64: SWAP7
00005b65: SWAP6
00005b66: POP
00005b67: POP
00005b68: POP
00005b69: POP
00005b6a: POP
00005b6b: POP
00005b6c: JUMP
00005b6d: JUMPDEST
00005b6e: PUSH1 0x00
00005b70: DUP1
00005b71: PUSH1 0x00
00005b73: PUSH1 0x60
00005b75: DUP5
00005b76: DUP7
00005b77: SUB
00005b78: SLT
00005b79: ISZERO
00005b7a: PUSH2 0x5b82
00005b7d: JUMPI
00005b7e: PUSH1 0x00
00005b80: DUP1
00005b81: REVERT
00005b82: JUMPDEST
00005b83: DUP4
00005b84: MLOAD
00005b85: PUSH2 0x5b8d
00005b88: DUP2
00005b89: PUSH2 0x4de6
00005b8c: JUMP
00005b8d: JUMPDEST
00005b8e: PUSH1 0x20
00005b90: DUP6
00005b91: ADD
00005b92: MLOAD
00005b93: SWAP1
00005b94: SWAP4
00005b95: POP
00005b96: PUSH2 0x5b9e
00005b99: DUP2
00005b9a: PUSH2 0x592a
00005b9d: JUMP
00005b9e: JUMPDEST
00005b9f: PUSH1 0x40
00005ba1: DUP6
00005ba2: ADD
00005ba3: MLOAD
00005ba4: SWAP1
00005ba5: SWAP3
00005ba6: POP
00005ba7: PUSH2 0x5789
00005baa: DUP2
00005bab: PUSH2 0x592a
00005bae: JUMP
00005baf: JUMPDEST
00005bb0: PUSH1 0x1f
00005bb2: DUP3
00005bb3: GT
00005bb4: ISZERO
00005bb5: PUSH2 0x0cae
00005bb8: JUMPI
00005bb9: DUP1
00005bba: PUSH1 0x00
00005bbc: MSTORE
00005bbd: PUSH1 0x20
00005bbf: PUSH1 0x00
00005bc1: KECCAK256
00005bc2: PUSH1 0x1f
00005bc4: DUP5
00005bc5: ADD
00005bc6: PUSH1 0x05
00005bc8: SHR
00005bc9: DUP2
00005bca: ADD
00005bcb: PUSH1 0x20
00005bcd: DUP6
00005bce: LT
00005bcf: ISZERO
00005bd0: PUSH2 0x5bd6
00005bd3: JUMPI
00005bd4: POP
00005bd5: DUP1
00005bd6: JUMPDEST
00005bd7: PUSH1 0x1f
00005bd9: DUP5
00005bda: ADD
00005bdb: PUSH1 0x05
00005bdd: SHR
00005bde: DUP3
00005bdf: ADD
00005be0: SWAP2
00005be1: POP
00005be2: JUMPDEST
00005be3: DUP2
00005be4: DUP2
00005be5: LT
00005be6: ISZERO
00005be7: PUSH2 0x1083
00005bea: JUMPI
00005beb: PUSH1 0x00
00005bed: DUP2
00005bee: SSTORE
00005bef: PUSH1 0x01
00005bf1: ADD
00005bf2: PUSH2 0x5be2
00005bf5: JUMP
00005bf6: JUMPDEST
00005bf7: DUP2
00005bf8: MLOAD
00005bf9: PUSH1 0x01
00005bfb: PUSH1 0x01
00005bfd: PUSH1 0x40
00005bff: SHL
00005c00: SUB
00005c01: DUP2
00005c02: GT
00005c03: ISZERO
00005c04: PUSH2 0x5c0f
00005c07: JUMPI
00005c08: PUSH2 0x5c0f
00005c0b: PUSH2 0x513d
00005c0e: JUMP
00005c0f: JUMPDEST
00005c10: PUSH2 0x5c23
00005c13: DUP2
00005c14: PUSH2 0x5c1d
00005c17: DUP5
00005c18: SLOAD
00005c19: PUSH2 0x5a7e
00005c1c: JUMP
00005c1d: JUMPDEST
00005c1e: DUP5
00005c1f: PUSH2 0x5baf
00005c22: JUMP
00005c23: JUMPDEST
00005c24: PUSH1 0x20
00005c26: PUSH1 0x1f
00005c28: DUP3
00005c29: GT
00005c2a: PUSH1 0x01
00005c2c: DUP2
00005c2d: EQ
00005c2e: PUSH2 0x5c57
00005c31: JUMPI
00005c32: PUSH1 0x00
00005c34: DUP4
00005c35: ISZERO
00005c36: PUSH2 0x5c3f
00005c39: JUMPI
00005c3a: POP
00005c3b: DUP5
00005c3c: DUP3
00005c3d: ADD
00005c3e: MLOAD
00005c3f: JUMPDEST
00005c40: PUSH1 0x00
00005c42: NOT
00005c43: PUSH1 0x03
00005c45: DUP6
00005c46: SWAP1
00005c47: SHL
00005c48: SHR
00005c49: NOT
00005c4a: AND
00005c4b: PUSH1 0x01
00005c4d: DUP5
00005c4e: SWAP1
00005c4f: SHL
00005c50: OR
00005c51: DUP5
00005c52: SSTORE
00005c53: PUSH2 0x1083
00005c56: JUMP
00005c57: JUMPDEST
00005c58: PUSH1 0x00
00005c5a: DUP5
00005c5b: DUP2
00005c5c: MSTORE
00005c5d: PUSH1 0x20
00005c5f: DUP2
00005c60: KECCAK256
00005c61: PUSH1 0x1f
00005c63: NOT
00005c64: DUP6
00005c65: AND
00005c66: SWAP2
00005c67: JUMPDEST
00005c68: DUP3
00005c69: DUP2
00005c6a: LT
00005c6b: ISZERO
00005c6c: PUSH2 0x5c87
00005c6f: JUMPI
00005c70: DUP8
00005c71: DUP6
00005c72: ADD
00005c73: MLOAD
00005c74: DUP3
00005c75: SSTORE
00005c76: PUSH1 0x20
00005c78: SWAP5
00005c79: DUP6
00005c7a: ADD
00005c7b: SWAP5
00005c7c: PUSH1 0x01
00005c7e: SWAP1
00005c7f: SWAP3
00005c80: ADD
00005c81: SWAP2
00005c82: ADD
00005c83: PUSH2 0x5c67
00005c86: JUMP
00005c87: JUMPDEST
00005c88: POP
00005c89: DUP5
00005c8a: DUP3
00005c8b: LT
00005c8c: ISZERO
00005c8d: PUSH2 0x5ca5
00005c90: JUMPI
00005c91: DUP7
00005c92: DUP5
00005c93: ADD
00005c94: MLOAD
00005c95: PUSH1 0x00
00005c97: NOT
00005c98: PUSH1 0x03
00005c9a: DUP8
00005c9b: SWAP1
00005c9c: SHL
00005c9d: PUSH1 0xf8
00005c9f: AND
00005ca0: SHR
00005ca1: NOT
00005ca2: AND
00005ca3: DUP2
00005ca4: SSTORE
00005ca5: JUMPDEST
00005ca6: POP
00005ca7: POP
00005ca8: POP
00005ca9: POP
00005caa: PUSH1 0x01
00005cac: SWAP1
00005cad: DUP2
00005cae: SHL
00005caf: ADD
00005cb0: SWAP1
00005cb1: SSTORE
00005cb2: POP
00005cb3: JUMP
00005cb4: JUMPDEST
00005cb5: DUP1
00005cb6: DUP3
00005cb7: MUL
00005cb8: DUP2
00005cb9: ISZERO
00005cba: DUP3
00005cbb: DUP3
00005cbc: DIV
00005cbd: DUP5
00005cbe: EQ
00005cbf: OR
00005cc0: PUSH2 0x0bfd
00005cc3: JUMPI
00005cc4: PUSH2 0x0bfd
00005cc7: PUSH2 0x5794
00005cca: JUMP
00005ccb: JUMPDEST
00005ccc: PUSH1 0x00
00005cce: DUP3
00005ccf: PUSH2 0x5ce8
00005cd2: JUMPI
00005cd3: PUSH4 0x4e487b71
00005cd8: PUSH1 0xe0
00005cda: SHL
00005cdb: PUSH1 0x00
00005cdd: MSTORE
00005cde: PUSH1 0x12
00005ce0: PUSH1 0x04
00005ce2: MSTORE
00005ce3: PUSH1 0x24
00005ce5: PUSH1 0x00
00005ce7: REVERT
00005ce8: JUMPDEST
00005ce9: POP
00005cea: DIV
00005ceb: SWAP1
00005cec: JUMP
00005ced: JUMPDEST
00005cee: PUSH4 0x4e487b71
00005cf3: PUSH1 0xe0
00005cf5: SHL
00005cf6: PUSH1 0x00
00005cf8: MSTORE
00005cf9: PUSH1 0x21
00005cfb: PUSH1 0x04
00005cfd: MSTORE
00005cfe: PUSH1 0x24
00005d00: PUSH1 0x00
00005d02: REVERT
00005d03: JUMPDEST
00005d04: PUSH1 0xff
00005d06: DUP3
00005d07: DUP2
00005d08: AND
00005d09: DUP3
00005d0a: DUP3
00005d0b: AND
00005d0c: SUB
00005d0d: SWAP1
00005d0e: DUP2
00005d0f: GT
00005d10: ISZERO
00005d11: PUSH2 0x0bfd
00005d14: JUMPI
00005d15: PUSH2 0x0bfd
00005d18: PUSH2 0x5794
00005d1b: JUMP
00005d1c: JUMPDEST
00005d1d: PUSH1 0x01
00005d1f: DUP2
00005d20: JUMPDEST
00005d21: PUSH1 0x01
00005d23: DUP5
00005d24: GT
00005d25: ISZERO
00005d26: PUSH2 0x5d57
00005d29: JUMPI
00005d2a: DUP1
00005d2b: DUP6
00005d2c: DIV
00005d2d: DUP2
00005d2e: GT
00005d2f: ISZERO
00005d30: PUSH2 0x5d3b
00005d33: JUMPI
00005d34: PUSH2 0x5d3b
00005d37: PUSH2 0x5794
00005d3a: JUMP
00005d3b: JUMPDEST
00005d3c: PUSH1 0x01
00005d3e: DUP5
00005d3f: AND
00005d40: ISZERO
00005d41: PUSH2 0x5d49
00005d44: JUMPI
00005d45: SWAP1
00005d46: DUP2
00005d47: MUL
00005d48: SWAP1
00005d49: JUMPDEST
00005d4a: PUSH1 0x01
00005d4c: SWAP4
00005d4d: SWAP1
00005d4e: SWAP4
00005d4f: SHR
00005d50: SWAP3
00005d51: DUP1
00005d52: MUL
00005d53: PUSH2 0x5d20
00005d56: JUMP
00005d57: JUMPDEST
00005d58: SWAP4
00005d59: POP
00005d5a: SWAP4
00005d5b: SWAP2
00005d5c: POP
00005d5d: POP
00005d5e: JUMP
00005d5f: JUMPDEST
00005d60: PUSH1 0x00
00005d62: DUP3
00005d63: PUSH2 0x5d6e
00005d66: JUMPI
00005d67: POP
00005d68: PUSH1 0x01
00005d6a: PUSH2 0x0bfd
00005d6d: JUMP
00005d6e: JUMPDEST
00005d6f: DUP2
00005d70: PUSH2 0x5d7b
00005d73: JUMPI
00005d74: POP
00005d75: PUSH1 0x00
00005d77: PUSH2 0x0bfd
00005d7a: JUMP
00005d7b: JUMPDEST
00005d7c: DUP2
00005d7d: PUSH1 0x01
00005d7f: DUP2
00005d80: EQ
00005d81: PUSH2 0x5d91
00005d84: JUMPI
00005d85: PUSH1 0x02
00005d87: DUP2
00005d88: EQ
00005d89: PUSH2 0x5d9b
00005d8c: JUMPI
00005d8d: PUSH2 0x5db7
00005d90: JUMP
00005d91: JUMPDEST
00005d92: PUSH1 0x01
00005d94: SWAP2
00005d95: POP
00005d96: POP
00005d97: PUSH2 0x0bfd
00005d9a: JUMP
00005d9b: JUMPDEST
00005d9c: PUSH1 0xff
00005d9e: DUP5
00005d9f: GT
00005da0: ISZERO
00005da1: PUSH2 0x5dac
00005da4: JUMPI
00005da5: PUSH2 0x5dac
00005da8: PUSH2 0x5794
00005dab: JUMP
00005dac: JUMPDEST
00005dad: POP
00005dae: POP
00005daf: PUSH1 0x01
00005db1: DUP3
00005db2: SHL
00005db3: PUSH2 0x0bfd
00005db6: JUMP
00005db7: JUMPDEST
00005db8: POP
00005db9: PUSH1 0x20
00005dbb: DUP4
00005dbc: LT
00005dbd: PUSH2 0x0133
00005dc0: DUP4
00005dc1: LT
00005dc2: AND
00005dc3: PUSH1 0x4e
00005dc5: DUP5
00005dc6: LT
00005dc7: PUSH1 0x0b
00005dc9: DUP5
00005dca: LT
00005dcb: AND
00005dcc: OR
00005dcd: ISZERO
00005dce: PUSH2 0x5dda
00005dd1: JUMPI
00005dd2: POP
00005dd3: DUP2
00005dd4: DUP2
00005dd5: EXP
00005dd6: PUSH2 0x0bfd
00005dd9: JUMP
00005dda: JUMPDEST
00005ddb: PUSH2 0x5de7
00005dde: PUSH1 0x00
00005de0: NOT
00005de1: DUP5
00005de2: DUP5
00005de3: PUSH2 0x5d1c
00005de6: JUMP
00005de7: JUMPDEST
00005de8: DUP1
00005de9: PUSH1 0x00
00005deb: NOT
00005dec: DIV
00005ded: DUP3
00005dee: GT
00005def: ISZERO
00005df0: PUSH2 0x5dfb
00005df3: JUMPI
00005df4: PUSH2 0x5dfb
00005df7: PUSH2 0x5794
00005dfa: JUMP
00005dfb: JUMPDEST
00005dfc: MUL
00005dfd: SWAP4
00005dfe: SWAP3
00005dff: POP
00005e00: POP
00005e01: POP
00005e02: JUMP
00005e03: JUMPDEST
00005e04: PUSH1 0x00
00005e06: PUSH2 0x1e12
00005e09: PUSH1 0xff
00005e0b: DUP5
00005e0c: AND
00005e0d: DUP4
00005e0e: PUSH2 0x5d5f
00005e11: JUMP
00005e12: JUMPDEST
00005e13: PUSH4 0x4e487b71
00005e18: PUSH1 0xe0
00005e1a: SHL
00005e1b: PUSH1 0x00
00005e1d: MSTORE
00005e1e: PUSH1 0x31
00005e20: PUSH1 0x04
00005e22: MSTORE
00005e23: PUSH1 0x24
00005e25: PUSH1 0x00
00005e27: REVERT
00005e28: JUMPDEST
00005e29: PUSH1 0x00
00005e2b: DUP3
00005e2c: MLOAD
00005e2d: PUSH2 0x58df
00005e30: DUP2
00005e31: DUP5
00005e32: PUSH1 0x20
00005e34: DUP8
00005e35: ADD
00005e36: PUSH2 0x52b0
00005e39: JUMP
00005e3a: INVALID
00005e3b: UNKNOWN(0xC1)
00005e3c: UNKNOWN(0xF6)
00005e3d: INVALID
00005e3e: UNKNOWN(0x24)
00005e3f: PUSH3 0x1ce81e
00005e43: UNKNOWN(0xC5)
00005e44: DUP3
00005e45: PUSH29 0xaf0253cadb74709b061630e6b55e82371705932000a0121e0c2fe71ea0
00005e63: LOG4
00005e64: UNKNOWN(0xB5)
00005e65: UNKNOWN(0xD0)
00005e66: UNKNOWN(0xAC)
00005e67: UNKNOWN(0xB9)
00005e68: UNKNOWN(0x29)
00005e69: UNKNOWN(0xC8)
00005e6a: UNKNOWN(0xE4)
00005e6b: UNKNOWN(0xE7)
00005e6c: UNKNOWN(0x25)
00005e6d: PUSH25 0xecf3cce9464d4349280bc171d23d0ceed088567eb1d2a7213f
00005e87: SWAP7
00005e88: UNKNOWN(0xF8)
00005e89: BALANCE
00005e8a: UNKNOWN(0xBC)
00005e8b: BASEFEE
00005e8c: UNKNOWN(0xC5)
00005e8d: UNKNOWN(0x4E)
00005e8e: DUP11
00005e8f: JUMPDEST
00005e90: UNKNOWN(0xC4)
00005e91: UNKNOWN(0xBB)
00005e92: SIGNEXTEND
00005e93: ADDMOD
00005e94: EXTCODEHASH
00005e95: UNKNOWN(0x21)
00005e96: CALLDATACOPY
00005e97: GAS
00005e98: UNKNOWN(0xE4)
00005e99: ADD
00005e9a: BLOBBASEFEE
00005e9b: LOG1
00005e9c: PUSH11 0x46d94261c7517cc8ff89f6
00005ea8: SHR
00005ea9: UNKNOWN(0x0C)
00005eaa: UNKNOWN(0xE9)
00005eab: CALLDATALOAD
00005eac: SWAP9
00005ead: UNKNOWN(0xE3)
00005eae: UNKNOWN(0xC8)
00005eaf: BLOBHASH
00005eb0: DUP1
00005eb1: LT
00005eb2: GT
00005eb3: UNKNOWN(0xDE)
00005eb4: UNKNOWN(0xE6)
00005eb5: BLOBHASH
00005eb6: UNKNOWN(0xA6)
00005eb7: UNKNOWN(0xA5)
00005eb8: JUMPI
00005eb9: UNKNOWN(0xD1)
00005eba: STOP
00005ebb: CALLDATASIZE
00005ebc: ADDMOD
00005ebd: SWAP5
00005ebe: LOG1
00005ebf: EXTCODESIZE
00005ec0: LOG1
00005ec1: LOG3
00005ec2: UNKNOWN(0x21)
00005ec3: MOD
00005ec4: PUSH8 0xc828492db98dca3e
00005ecd: KECCAK256
00005ece: PUSH23 0xcc3735a920a3ca505d382bbc02dd7bc7dec4dceedda775
00005ee6: UNKNOWN(0xE5)
00005ee7: DUP14
00005ee8: UNKNOWN(0xD5)
00005ee9: COINBASE
00005eea: UNKNOWN(0xE0)
00005eeb: DUP11
00005eec: GT
00005eed: PUSH13 0x6c53815c0bd028192f7b626800
00005efb: UNKNOWN(0xCD)
00005efc: MCOPY
00005efd: UNKNOWN(0xD1)
00005efe: TLOAD
00005eff: PUSH15 0x187e77e9aee88184c21f4f2182ab58
00005f0f: UNKNOWN(0x27)
00005f10: UNKNOWN(0xCB)
00005f11: EXTCODESIZE
00005f12: PUSH31 0x07fbedcd63f033006077685936c8169d09204a1d97db12e41713588c38e1d2
00005f32: SWAP11
00005f33: PUSH2 0x867d
00005f36: RETURNDATASIZE
00005f37: UNKNOWN(0xCE)
00005f38: UNKNOWN(0xE9)
00005f39: DUP11
00005f3a: SELFDESTRUCT
00005f3b: LOG2
00005f3c: PUSH5 0x6970667358
00005f42: UNKNOWN(0x22)
00005f43: SLT
00005f44: KECCAK256
00005f45: PUSH8 0x4816034fa0013e77
00005f4e: UNKNOWN(0xD1)
00005f4f: UNKNOWN(0xAC)
00005f50: UNKNOWN(0xB4)
00005f51: PUSH25 0xcd4db4c85859a50ec9d68647005d5ba0f43db564736f6c6343
00005f6b: STOP
00005f6c: ADDMOD
00005f6d: CLZ
00005f6e: STOP
00005f6f: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
critical upgradeability detector Untrusted DELEGATECALL target reachable 70 no no
view
trace_id: 0x605037dcf60bdea443147eaca56baf501659f1e6f5e8a9f99e8fc58ad51b39e4
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 0,
    "status": "unknown",
    "attempts": 192,
    "trace_id": "0x605037dcf60bdea443147eaca56baf501659f1e6f5e8a9f99e8fc58ad51b39e4",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": null,
    "matched_probe": null,
    "target_varies": null,
    "classification": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xf38eca0e",
            "selector": "0xf38eca0e",
            "calldata_variants": [
                "0xf38eca0e",
                "0xf38eca0e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf72c0d8b",
            "selector": "0xf72c0d8b",
            "calldata_variants": [
                "0xf72c0d8b",
                "0xf72c0d8b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf7e7aab0",
            "selector": "0xf7e7aab0",
            "calldata_variants": [
                "0xf7e7aab0",
                "0xf7e7aab00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfd685dee",
            "selector": "0xfd685dee",
            "calldata_variants": [
                "0xfd685dee",
                "0xfd685dee0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe4e9a36d",
            "selector": "0xe4e9a36d",
            "calldata_variants": [
                "0xe4e9a36d",
                "0xe4e9a36d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe63ab1e9",
            "selector": "0xe63ab1e9",
            "calldata_variants": [
                "0xe63ab1e9",
                "0xe63ab1e90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xea0d501f",
            "selector": "0xea0d501f",
            "calldata_variants": [
                "0xea0d501f",
                "0xea0d501f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf03592cf",
            "selector": "0xf03592cf",
            "calldata_variants": [
                "0xf03592cf",
                "0xf03592cf0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 19535,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        }
    ],
    "guards_detected": [],
    "delegatecall_count": 1,
    "untrusted_delegatecall_count": 1
}
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x201ecb0255d240b0a26d55ef7f82f7f3aacf72785d2f4de40680c226cf9628bd
call_targets: 0x0aec3b2dce260d75dbd0cc726200d09e6fa3ff35
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x201ecb0255d240b0a26d55ef7f82f7f3aacf72785d2f4de40680c226cf9628bd",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x0aec3b2dce260d75dbd0cc726200d09e6fa3ff35"
    ],
    "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": "0xf38eca0e",
            "selector": "0xf38eca0e",
            "calldata_variants": [
                "0xf38eca0e",
                "0xf38eca0e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf72c0d8b",
            "selector": "0xf72c0d8b",
            "calldata_variants": [
                "0xf72c0d8b",
                "0xf72c0d8b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf7e7aab0",
            "selector": "0xf7e7aab0",
            "calldata_variants": [
                "0xf7e7aab0",
                "0xf7e7aab00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfd685dee",
            "selector": "0xfd685dee",
            "calldata_variants": [
                "0xfd685dee",
                "0xfd685dee0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe4e9a36d",
            "selector": "0xe4e9a36d",
            "calldata_variants": [
                "0xe4e9a36d",
                "0xe4e9a36d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe63ab1e9",
            "selector": "0xe63ab1e9",
            "calldata_variants": [
                "0xe63ab1e9",
                "0xe63ab1e90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xea0d501f",
            "selector": "0xea0d501f",
            "calldata_variants": [
                "0xea0d501f",
                "0xea0d501f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf03592cf",
            "selector": "0xf03592cf",
            "calldata_variants": [
                "0xf03592cf",
                "0xf03592cf0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 9196,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 10955,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 12233,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 6,
    "guards_detected": [],
    "untrusted_call_count": 6
}
high other detector SELFDESTRUCT reachable 65 no no
view
trace_id: 0xde62dda34ebbe6aa84202a255d5dbdf6fd66ebf7f5f40620feddc9ce37eec332
validation_json
{
    "sink": "SELFDESTRUCT",
    "errors": 0,
    "status": "unknown",
    "attempts": 32,
    "trace_id": "0xde62dda34ebbe6aa84202a255d5dbdf6fd66ebf7f5f40620feddc9ce37eec332",
    "confirmed": false,
    "trace_mode": "structLogs",
    "call_targets": null,
    "matched_probe": null,
    "target_varies": null,
    "classification": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xf38eca0e",
            "selector": "0xf38eca0e",
            "calldata_variants": [
                "0xf38eca0e",
                "0xf38eca0e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf72c0d8b",
            "selector": "0xf72c0d8b",
            "calldata_variants": [
                "0xf72c0d8b",
                "0xf72c0d8b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf7e7aab0",
            "selector": "0xf7e7aab0",
            "calldata_variants": [
                "0xf7e7aab0",
                "0xf7e7aab00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfd685dee",
            "selector": "0xfd685dee",
            "calldata_variants": [
                "0xfd685dee",
                "0xfd685dee0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe4e9a36d",
            "selector": "0xe4e9a36d",
            "calldata_variants": [
                "0xe4e9a36d",
                "0xe4e9a36d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe63ab1e9",
            "selector": "0xe63ab1e9",
            "calldata_variants": [
                "0xe63ab1e9",
                "0xe63ab1e90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xea0d501f",
            "selector": "0xea0d501f",
            "calldata_variants": [
                "0xea0d501f",
                "0xea0d501f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf03592cf",
            "selector": "0xf03592cf",
            "calldata_variants": [
                "0xf03592cf",
                "0xf03592cf0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [],
    "selfdestruct_count": 1
}
high other cast SELFDESTRUCT present 85 no
view
evidence_json
{
    "notes": "selfdestruct can remove contract code and send funds; review reachability",
    "selfdestruct_count": 1
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x201ecb0255d240b0a26d55ef7f82f7f3aacf72785d2f4de40680c226cf9628bd
call_targets: 0x0aec3b2dce260d75dbd0cc726200d09e6fa3ff35
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x201ecb0255d240b0a26d55ef7f82f7f3aacf72785d2f4de40680c226cf9628bd",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x0aec3b2dce260d75dbd0cc726200d09e6fa3ff35"
    ],
    "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": "0xf38eca0e",
            "selector": "0xf38eca0e",
            "calldata_variants": [
                "0xf38eca0e",
                "0xf38eca0e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf72c0d8b",
            "selector": "0xf72c0d8b",
            "calldata_variants": [
                "0xf72c0d8b",
                "0xf72c0d8b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf7e7aab0",
            "selector": "0xf7e7aab0",
            "calldata_variants": [
                "0xf7e7aab0",
                "0xf7e7aab00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfd685dee",
            "selector": "0xfd685dee",
            "calldata_variants": [
                "0xfd685dee",
                "0xfd685dee0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe4e9a36d",
            "selector": "0xe4e9a36d",
            "calldata_variants": [
                "0xe4e9a36d",
                "0xe4e9a36d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe63ab1e9",
            "selector": "0xe63ab1e9",
            "calldata_variants": [
                "0xe63ab1e9",
                "0xe63ab1e90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xea0d501f",
            "selector": "0xea0d501f",
            "calldata_variants": [
                "0xea0d501f",
                "0xea0d501f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf03592cf",
            "selector": "0xf03592cf",
            "calldata_variants": [
                "0xf03592cf",
                "0xf03592cf0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 9196,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 10955,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 12233,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 6,
    "guards_detected": []
}
medium other codex Locks keyed only by secretHash allow overwrites that strand funds and corrupt liquidity accounting 75 no
view
evidence_json
{
    "evidence": "`lockedAmount` is a single mapping keyed only by `secretHash`, and both `_lockSource` and `_lockDestination` overwrite it without checking for existing locks; `_processUnlock` only checks the amount against `lockedAmount[secretHash]` and decrements `totalLockedByToken[token]`.",
    "locations": [
        "contracts/contracts/LiquidityPool.sol:90",
        "contracts/contracts/LiquidityPool.sol:575",
        "contracts/contracts/LiquidityPool.sol:590",
        "contracts/contracts/LiquidityPool.sol:619"
    ],
    "recommendation": "Key locks by `(secretHash, token)` or store a struct with token/amount and enforce uniqueness (require no existing lock before setting). Consider tracking `untilTs` and validating that a lock is not overwritten. Update `_processUnlock` to verify the stored token/amount pair to prevent mismatches.",
    "exploit_scenario": "A user (via the routing module) triggers two locks that reuse the same secretHash with different amounts or tokens. The second call overwrites `lockedAmount[secretHash]` while `totalLockedByToken` is incremented again. The original lock can never be unlocked (amount mismatch), and available liquidity becomes permanently reduced or even causes availability checks to revert, freezing swaps/withdrawals for that token."
}
medium upgradeability cast DELEGATECALL present 80 no
view
evidence_json
{
    "notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
    "delegatecall_count": 1
}
low other codex Protocol fees deducted in `_applyFee` are not accounted in `collectedFeesByToken` 65 no
view
evidence_json
{
    "evidence": "`_applyFee` computes and emits `ProtocolFeeCollected` but never updates `collectedFeesByToken`, while `withdrawFees` relies on that mapping.",
    "locations": [
        "contracts/contracts/LiquidityPool.sol:95",
        "contracts/contracts/LiquidityPool.sol:764"
    ],
    "recommendation": "Increment `collectedFeesByToken[token]` by `protocolFee` inside `_applyFee`, and ensure `_getAvailableLiquidity` consistently excludes those fees. If fees are intended to remain in liquidity, remove or rework fee accounting to avoid misleading events/withdrawals.",
    "exploit_scenario": "When a swap pays protocol fees via `_applyFee`, the fee is subtracted from the user output but never recorded in `collectedFeesByToken`. Those fees remain part of available liquidity and cannot be withdrawn via `withdrawFees`, leading to protocol revenue loss or unintended reuse of fee balances as liquidity."
}
info other cast Heavy CALL-family usage 55 no
view
evidence_json
{
    "notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
    "call_family_count": 23
}
info other cast Heavy EXTCODE*/BALANCE usage 55 no
view
evidence_json
{
    "notes": "frequent external code or balance checks; may indicate introspection or validation logic",
    "ext_balance_count": 12
}