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

Analysis Run

7f435b0b-07c9-42c2-8634-81c9a806bf16

complete
Chain ID
1
Address
Block Number
Created
Tue, Dec 30, 2025 12:11 AM
Review Summary

What survived the funnel

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

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

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
30625 report.consolidate complete 1 / 1 3 months ago
74746 artifact.fetch complete 1 / 3 1 week ago
74747 tool.cast_disasm complete 1 / 3 1 week ago
74748 analysis.bundle complete 1 / 3 1 week ago
74749 capability.graph complete 1 / 3 1 week ago
74750 detector.run complete 1 / 3 1 week ago
74751 validation.fork complete 1 / 3 1 week ago

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
3
No findings?
no
Summary
Found 3 issues: swap pricing fully trusts the external oracle, the pair can be reinitialized by the factory, and permit signatures are malleable.
View stderr
[codex:541012] OpenAI Codex v0.77.0 (research preview)
[codex:541012] --------
[codex:541012] workdir: /tmp/codex-multi-_5sdrcr7
[codex:541012] model: gpt-5.2-codex
[codex:541012] provider: openai
[codex:541012] approval: never
[codex:541012] sandbox: read-only
[codex:541012] reasoning effort: xhigh
[codex:541012] reasoning summaries: auto
[codex:541012] session id: 019b6c92-bdfc-77d3-8ef4-3cf68eb7f55b
[codex:541012] --------
[codex:541012] user
[codex:541012] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:541012] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:541012] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:541012] 
[codex:541012] Scope rules:
[codex:541012] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:541012] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:541012] 
[codex:541012] Output MUST be valid JSON matching the provided schema.
[codex:541012] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:541012] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:541012] 
[codex:541012] Output constraints (IMPORTANT):
[codex:541012] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:541012] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:541012] mcp startup: no servers
[codex:541012] 
[codex:541012] thinking
[codex:541012] **Preparing to read AUDIT_BUNDLE.txt**
[codex:541012] exec
[codex:541012] /bin/bash -lc ls in /tmp/codex-multi-_5sdrcr7 succeeded in 5ms:
[codex:541012] AUDIT_BUNDLE.txt
[codex:541012] codex-output-schema.json
[codex:541012] contracts
[codex:541012] 
[codex:541012] thinking
[codex:541012] **Reading file**
[codex:541012] exec
[codex:541012] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-_5sdrcr7 succeeded in 5ms:
[codex:541012] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:541012] 
[codex:541012] ================================================================================
[codex:541012] FILE: contracts/AbstractERC20.sol
[codex:541012] ================================================================================
[codex:541012] // SPDX-License-Identifier: GPL-3.0-or-later
[codex:541012] // Deployed with donations via Gitcoin GR9
[codex:541012] 
[codex:541012] pragma solidity 0.7.5;
[codex:541012] 
[codex:541012] import 'IIntegralERC20.sol';
[codex:541012] import 'SafeMath.sol';
[codex:541012] 
[codex:541012] abstract contract AbstractERC20 is IIntegralERC20 {
[codex:541012]     using SafeMath for uint256;
[codex:541012] 
[codex:541012]     uint256 public override totalSupply;
[codex:541012]     mapping(address => uint256) public override balanceOf;
[codex:541012]     mapping(address => mapping(address => uint256)) public override allowance;
[codex:541012] 
[codex:541012] 
[codex:541012] thinking
[codex:541012] **Planning to retrieve full file content**
[codex:541012] exec
[codex:541012] /bin/bash -lc "sed -n '1,260p' contracts/IntegralPair.sol" in /tmp/codex-multi-_5sdrcr7 succeeded in 5ms:
[codex:541012] // SPDX-License-Identifier: GPL-3.0-or-later
[codex:541012] // Deployed with donations via Gitcoin GR9
[codex:541012] 
[codex:541012] pragma solidity 0.7.5;
[codex:541012] 
[codex:541012] import 'IIntegralPair.sol';
[codex:541012] import 'Reserves.sol';
[codex:541012] import 'IntegralERC20.sol';
[codex:541012] import 'Math.sol';
[codex:541012] import 'IERC20.sol';
[codex:541012] import 'IIntegralFactory.sol';
[codex:541012] import 'IIntegralOracle.sol';
[codex:541012] import 'Normalizer.sol';
[codex:541012] 
[codex:541012] contract IntegralPair is Reserves, IntegralERC20, IIntegralPair {
[codex:541012]     using SafeMath for uint256;
[codex:541012]     using Normalizer for uint256;
[codex:541012] 
[codex:541012]     uint256 private constant PRECISION = 10**18;
[codex:541012] 
[codex:541012] 
[codex:541012] thinking
[codex:541012] **Requesting more file content**
[codex:541012] exec
[codex:541012] /bin/bash -lc "sed -n '260,520p' contracts/IntegralPair.sol" in /tmp/codex-multi-_5sdrcr7 succeeded in 6ms:
[codex:541012]             (uint112 reference0, uint112 reference1, ) = getReferences();
[codex:541012] 
[codex:541012]             uint256 fee1 = amount1In.mul(swapFee).div(PRECISION);
[codex:541012]             uint256 balance0After = IIntegralOracle(oracle).tradeY(balance1.sub(fee1), reference0, reference1);
[codex:541012]             require(balance0 >= balance0After, 'IP_INVALID_SWAP');
[codex:541012]             _checkToken0Limits(balance0After, reference0);
[codex:541012]             uint256 fee0 = balance0.sub(balance0After);
[codex:541012]             addFees(fee0, fee1);
[codex:541012]             updateReserves(balance0.sub(fee0), balance1.sub(fee1));
[codex:541012]         } else {
[codex:541012]             // trading token0 for token1
[codex:541012]             (uint112 reference0, uint112 reference1, ) = getReferences();
[codex:541012] 
[codex:541012]             uint256 fee0 = amount0In.mul(swapFee).div(PRECISION);
[codex:541012]             uint256 balance1After = IIntegralOracle(oracle).tradeX(balance0.sub(fee0), reference0, reference1);
[codex:541012]             require(balance1 >= balance1After, 'IP_INVALID_SWAP');
[codex:541012]             _checkToken1Limits(balance1After, reference1);
[codex:541012]             uint256 fee1 = balance1.sub(balance1After);
[codex:541012]             addFees(fee0, fee1);
[codex:541012]             updateReserves(balance0.sub(fee0), balance1.sub(fee1));
[codex:541012] 
[codex:541012] thinking
[codex:541012] **Listing contract files**
[codex:541012] exec
[codex:541012] /bin/bash -lc 'rg --files contracts' in /tmp/codex-multi-_5sdrcr7 succeeded in 9ms:
[codex:541012] contracts/IIntegralOracle.sol
[codex:541012] contracts/AbstractERC20.sol
[codex:541012] contracts/IntegralERC20.sol
[codex:541012] contracts/IIntegralPair.sol
[codex:541012] contracts/SafeMath.sol
[codex:541012] contracts/Normalizer.sol
[codex:541012] contracts/Reserves.sol
[codex:541012] contracts/IIntegralERC20.sol
[codex:541012] contracts/IERC20.sol
[codex:541012] contracts/Math.sol
[codex:541012] contracts/IReserves.sol
[codex:541012] contracts/IntegralPair.sol
[codex:541012] contracts/IIntegralFactory.sol
[codex:541012] 
[codex:541012] 
[codex:541012] 
[codex:541012] 
[codex:541012] thinking
[codex:541012] **Analyzing potential vulnerabilities and external call risks**
[codex:541012] 
[codex:541012] I'm examining reentrancy, access control, oracle manipulation, and transfer safety in the core contracts. The lack of lock in `syncWithOracle` allows reentrancy during oracle callbacks, risking inconsistent state and possible price manipulation. I’m also verifying unchecked returns in token transfers, access controls, and signature handling, while considering how external calls to oracles and tokens might open attack vectors. This deep dive highlights how trusted or malicious oracles could influence state and price checks despite existing safeguards.
[codex:541012] thinking
[codex:541012] **Identifying access control gaps and token handling quirks**
[codex:541012] 
[codex:541012] I'm digging into the missing initialization guard that lets the factory reinitialize pairs, which could let a compromised factory swap tokens or oracles after deployment, risking fund loss or stuck assets. I also see how sending both tokens before swap might distort reserve accounting but isn’t exploitable, and I’m noting quirks like open updateDomainSeparator calls and signature malleability in permits. There’s a lot here about how privileged actors’ powers and token behaviors could impact contract safety.
[codex:541012] thinking
[codex:541012] **Evaluating oracle interplay and fee calculations**
[codex:541012] 
[codex:541012] There’s a complex interplay between oracle calls, reserve updates, and fee accounting that could allow edge-case price deviations or fee manipulations, especially since `syncWithOracle` can be called without lock and by anyone. I’m also seeing how fee computations handle multiple layers correctly, and how oracle manipulation risk arises from trusting external price data, plus some config risks if fees are misset by privileged actors. This feels like a subtle audit of design choices more than outright vulnerabilities.
[codex:541012] thinking
[codex:541012] **Reviewing access controls and initialization risks**
[codex:541012] 
[codex:541012] I’m analyzing various access controls around factory-only setters, trade permissions, and public functions. The unguarded `initialize` can be called multiple times by factory, posing a governance risk. Also, potential reentrancy via `syncWithOracle` during swaps and minor signature malleability in permit stand out. Overall, these reflect design trade-offs and centralization assumptions rather than outright external exploits.
[codex:541012] exec
[codex:541012] /bin/bash -lc "nl -ba contracts/AbstractERC20.sol | sed -n '70,150p'" in /tmp/codex-multi-_5sdrcr7 succeeded in 7ms:
[codex:541012]     70	    function approve(address spender, uint256 value) external override returns (bool) {
[codex:541012]     71	        _approve(msg.sender, spender, value);
[codex:541012]     72	        return true;
[codex:541012]     73	    }
[codex:541012]     74	
[codex:541012]     75	    function increaseAllowance(address spender, uint256 addedValue) external override returns (bool) {
[codex:541012]     76	        _approve(msg.sender, spender, allowance[msg.sender][spender].add(addedValue));
[codex:541012]     77	        return true;
[codex:541012]     78	    }
[codex:541012]     79	
[codex:541012]     80	    function decreaseAllowance(address spender, uint256 subtractedValue) external override returns (bool) {
[codex:541012]     81	        uint256 currentAllowance = allowance[msg.sender][spender];
[codex:541012]     82	        require(currentAllowance >= subtractedValue, 'IA_CANNOT_DECREASE');
[codex:541012]     83	        _approve(msg.sender, spender, currentAllowance.sub(subtractedValue));
[codex:541012]     84	        return true;
[codex:541012]     85	    }
[codex:541012]     86	
[codex:541012]     87	    function transfer(address to, uint256 value) external override returns (bool) {
[codex:541012]     88	        _transfer(msg.sender, to, value);
[codex:541012]     89	        return true;
[codex:541012] 
[codex:541012] thinking
[codex:541012] **Planning line number addition**
[codex:541012] exec
[codex:541012] /bin/bash -lc "nl -ba contracts/IntegralPair.sol | sed -n '120,220p'" in /tmp/codex-multi-_5sdrcr7 succeeded in 6ms:
[codex:541012]    120	        emit SetPriceDeviationLimit(priceDeviationLimit);
[codex:541012]    121	    }
[codex:541012]    122	
[codex:541012]    123	    function collect(address to) external override lock {
[codex:541012]    124	        require(msg.sender == factory, 'IP_FORBIDDEN');
[codex:541012]    125	        require(to != address(0), 'IP_ADDRESS_ZERO');
[codex:541012]    126	        (uint256 fee0, uint256 fee1) = getFees();
[codex:541012]    127	        if (fee0 > 0) _safeTransfer(token0, to, fee0);
[codex:541012]    128	        if (fee1 > 0) _safeTransfer(token1, to, fee1);
[codex:541012]    129	        setFees(0, 0);
[codex:541012]    130	        _sync();
[codex:541012]    131	    }
[codex:541012]    132	
[codex:541012]    133	    function _safeTransfer(
[codex:541012]    134	        address token,
[codex:541012]    135	        address to,
[codex:541012]    136	        uint256 value
[codex:541012]    137	    ) private {
[codex:541012]    138	        (bool success, bytes memory data) = token.call(abi.encodeWithSelector(SELECTOR, to, value));
[codex:541012]    139	        require(success && (data.length == 0 || abi.decode(data, (bool))), 'IP_TRANSFER_FAILED');
[codex:541012] 
[codex:541012] thinking
[codex:541012] **Extracting oracle usage lines**
[codex:541012] exec
[codex:541012] /bin/bash -lc "nl -ba contracts/IntegralPair.sol | sed -n '230,360p'" in /tmp/codex-multi-_5sdrcr7 succeeded in 6ms:
[codex:541012]    230	    // this low-level function should be called from a contract which performs important safety checks
[codex:541012]    231	    function swap(
[codex:541012]    232	        uint256 amount0Out,
[codex:541012]    233	        uint256 amount1Out,
[codex:541012]    234	        address to
[codex:541012]    235	    ) external override lock {
[codex:541012]    236	        require(canTrade(msg.sender), 'IP_UNAUTHORIZED_TRADER');
[codex:541012]    237	        require(to != address(0), 'IP_ADDRESS_ZERO');
[codex:541012]    238	        require(amount0Out > 0 || amount1Out > 0, 'IP_INSUFFICIENT_OUTPUT_AMOUNT');
[codex:541012]    239	        require(amount0Out == 0 || amount1Out == 0, 'IP_MULTIPLE_OUTPUTS_SPECIFIED');
[codex:541012]    240	        (uint112 _reserve0, uint112 _reserve1, ) = getReserves();
[codex:541012]    241	        require(amount0Out < _reserve0 && amount1Out < _reserve1, 'IP_INSUFFICIENT_LIQUIDITY');
[codex:541012]    242	
[codex:541012]    243	        _syncWithOracle();
[codex:541012]    244	
[codex:541012]    245	        {
[codex:541012]    246	            // scope for _token{0,1}, avoids stack too deep errors
[codex:541012]    247	            address _token0 = token0;
[codex:541012]    248	            address _token1 = token1;
[codex:541012]    249	            require(to != _token0 && to != _token1, 'IP_INVALID_TO');
[codex:541012] 
[codex:541012] thinking
[codex:541012] **Summarizing security analysis and findings**
[codex:541012] 
[codex:541012] I'll organize the main security concerns found: oracle trust assumptions that allow manipulation-driven drains, the risk of reinitialization by the factory, and signature malleability in permits due to missing validation. I'll structure these as findings with severity, exploit scenarios, recommendations, evidence from code lines, and prepare the final JSON output.
[codex:541012] codex
[codex:541012] {"no_findings":false,"summary":"Found 3 issues: swap pricing fully trusts the external oracle, the pair can be reinitialized by the factory, and permit signatures are malleable.","findings":[{"severity":"medium","category":"oracle","title":"Swap pricing fully trusts external oracle output (no invariant check)","exploit_scenario":"If the oracle can be manipulated (e.g., spot‑price feed or compromised oracle), an attacker can skew `tradeX`/`tradeY` outputs to make `balanceAfter` artificially low. The pair then accepts swaps that pay out excessive amounts, draining reserves. The only checks (`_checkPriceDeviationLimit` and token limits) also rely on oracle-derived values, so they do not protect against a poisoned oracle.","recommendation":"Enforce an on-chain invariant (e.g., constant product or bounded price impact) independent of the oracle, or use a manipulation‑resistant oracle with enforced update intervals and sanity checks against current reserves. Consider hard caps on swap output relative to reserves.","evidence":"swap() computes output using `IIntegralOracle(oracle).tradeY`/`tradeX` and updates reserves based solely on those values, without any invariant check independent of the oracle.","locations":["contracts/IntegralPair.sol:258","contracts/IntegralPair.sol:273","contracts/IntegralPair.sol:282"]},{"severity":"low","category":"access_control","title":"Pair initialization can be called multiple times by the factory","exploit_scenario":"The factory can re-call `initialize` after liquidity exists, changing `token0`, `token1`, `oracle`, and `trader`. A compromised or malicious factory could redirect the pair to attacker‑controlled tokens/oracle, potentially locking existing reserves or enabling abusive swaps.","recommendation":"Add a one‑time initialization guard (e.g., `require(token0 == address(0) && token1 == address(0))` or an `initialized` flag) so `initialize` can only run once.","evidence":"`initialize` lacks any check that it has already been called, allowing repeated reconfiguration by the factory.","locations":["contracts/IntegralPair.sol:150","contracts/IntegralPair.sol:157","contracts/IntegralPair.sol:161"]},{"severity":"low","category":"auth","title":"Permit signatures are malleable (no EIP‑2 `s`/`v` checks)","exploit_scenario":"An attacker can derive an alternative valid signature (by flipping `s` and `v`) for the same permit message, potentially front‑running or confusing systems that assume signature uniqueness. Nonce protection prevents replay, but malleability still enables signature substitution/griefing.","recommendation":"Validate `v` is 27/28 and enforce `s` in the lower half‑order (EIP‑2). Using OpenZeppelin’s `ECDSA.recover` is a common fix.","evidence":"`permit` accepts any `v`/`s` that passes `ecrecover` without canonicality checks.","locations":["contracts/AbstractERC20.sol:104","contracts/AbstractERC20.sol:121"]}]}
[codex:541012] tokens used
[codex:541012] 55,471
[codex:541012] {"no_findings":false,"summary":"Found 3 issues: swap pricing fully trusts the external oracle, the pair can be reinitialized by the factory, and permit signatures are malleable.","findings":[{"severity":"medium","category":"oracle","title":"Swap pricing fully trusts external oracle output (no invariant check)","exploit_scenario":"If the oracle can be manipulated (e.g., spot‑price feed or compromised oracle), an attacker can skew `tradeX`/`tradeY` outputs to make `balanceAfter` artificially low. The pair then accepts swaps that pay out excessive amounts, draining reserves. The only checks (`_checkPriceDeviationLimit` and token limits) also rely on oracle-derived values, so they do not protect against a poisoned oracle.","recommendation":"Enforce an on-chain invariant (e.g., constant product or bounded price impact) independent of the oracle, or use a manipulation‑resistant oracle with enforced update intervals and sanity checks against current reserves. Consider hard caps on swap output relative to reserves.","evidence":"swap() computes output using `IIntegralOracle(oracle).tradeY`/`tradeX` and updates reserves based solely on those values, without any invariant check independent of the oracle.","locations":["contracts/IntegralPair.sol:258","contracts/IntegralPair.sol:273","contracts/IntegralPair.sol:282"]},{"severity":"low","category":"access_control","title":"Pair initialization can be called multiple times by the factory","exploit_scenario":"The factory can re-call `initialize` after liquidity exists, changing `token0`, `token1`, `oracle`, and `trader`. A compromised or malicious factory could redirect the pair to attacker‑controlled tokens/oracle, potentially locking existing reserves or enabling abusive swaps.","recommendation":"Add a one‑time initialization guard (e.g., `require(token0 == address(0) && token1 == address(0))` or an `initialized` flag) so `initialize` can only run once.","evidence":"`initialize` lacks any check that it has already been called, allowing repeated reconfiguration by the factory.","locations":["contracts/IntegralPair.sol:150","contracts/IntegralPair.sol:157","contracts/IntegralPair.sol:161"]},{"severity":"low","category":"auth","title":"Permit signatures are malleable (no EIP‑2 `s`/`v` checks)","exploit_scenario":"An attacker can derive an alternative valid signature (by flipping `s` and `v`) for the same permit message, potentially front‑running or confusing systems that assume signature uniqueness. Nonce protection prevents replay, but malleability still enables signature substitution/griefing.","recommendation":"Validate `v` is 27/28 and enforce `s` in the lower half‑order (EIP‑2). Using OpenZeppelin’s `ECDSA.recover` is a common fix.","evidence":"`permit` accepts any `v`/`s` that passes `ecrecover` without canonicality checks.","locations":["contracts/AbstractERC20.sol:104","contracts/AbstractERC20.sol:121"]}]}
Metadata
{
    "codex": {
        "ran_at": "2025-12-30T00:11:11.844887+00:00",
        "returncode": 0
    },
    "summary": "Found 3 issues: swap pricing fully trusts the external oracle, the pair can be reinitialized by the factory, and permit signatures are malleable.",
    "raw_final": {
        "summary": "Found 3 issues: swap pricing fully trusts the external oracle, the pair can be reinitialized by the factory, and permit signatures are malleable.",
        "findings": [
            {
                "title": "Swap pricing fully trusts external oracle output (no invariant check)",
                "category": "oracle",
                "evidence": "swap() computes output using `IIntegralOracle(oracle).tradeY`/`tradeX` and updates reserves based solely on those values, without any invariant check independent of the oracle.",
                "severity": "medium",
                "locations": [
                    "contracts/IntegralPair.sol:258",
                    "contracts/IntegralPair.sol:273",
                    "contracts/IntegralPair.sol:282"
                ],
                "recommendation": "Enforce an on-chain invariant (e.g., constant product or bounded price impact) independent of the oracle, or use a manipulation\u2011resistant oracle with enforced update intervals and sanity checks against current reserves. Consider hard caps on swap output relative to reserves.",
                "exploit_scenario": "If the oracle can be manipulated (e.g., spot\u2011price feed or compromised oracle), an attacker can skew `tradeX`/`tradeY` outputs to make `balanceAfter` artificially low. The pair then accepts swaps that pay out excessive amounts, draining reserves. The only checks (`_checkPriceDeviationLimit` and token limits) also rely on oracle-derived values, so they do not protect against a poisoned oracle."
            },
            {
                "title": "Pair initialization can be called multiple times by the factory",
                "category": "access_control",
                "evidence": "`initialize` lacks any check that it has already been called, allowing repeated reconfiguration by the factory.",
                "severity": "low",
                "locations": [
                    "contracts/IntegralPair.sol:150",
                    "contracts/IntegralPair.sol:157",
                    "contracts/IntegralPair.sol:161"
                ],
                "recommendation": "Add a one\u2011time initialization guard (e.g., `require(token0 == address(0) && token1 == address(0))` or an `initialized` flag) so `initialize` can only run once.",
                "exploit_scenario": "The factory can re-call `initialize` after liquidity exists, changing `token0`, `token1`, `oracle`, and `trader`. A compromised or malicious factory could redirect the pair to attacker\u2011controlled tokens/oracle, potentially locking existing reserves or enabling abusive swaps."
            },
            {
                "title": "Permit signatures are malleable (no EIP\u20112 `s`/`v` checks)",
                "category": "auth",
                "evidence": "`permit` accepts any `v`/`s` that passes `ecrecover` without canonicality checks.",
                "severity": "low",
                "locations": [
                    "contracts/AbstractERC20.sol:104",
                    "contracts/AbstractERC20.sol:121"
                ],
                "recommendation": "Validate `v` is 27/28 and enforce `s` in the lower half\u2011order (EIP\u20112). Using OpenZeppelin\u2019s `ECDSA.recover` is a common fix.",
                "exploit_scenario": "An attacker can derive an alternative valid signature (by flipping `s` and `v`) for the same permit message, potentially front\u2011running or confusing systems that assume signature uniqueness. Nonce protection prevents replay, but malleability still enables signature substitution/griefing."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
18
EXT*/BALANCE
17
Total opcodes
10536
Flags
heavy_ext_balance_usage call_family_heavy
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLVALUE
00000006: DUP1
00000007: ISZERO
00000008: PUSH2 0x0010
0000000b: JUMPI
0000000c: PUSH1 0x00
0000000e: DUP1
0000000f: REVERT
00000010: JUMPDEST
00000011: POP
00000012: PUSH1 0x04
00000014: CALLDATASIZE
00000015: LT
00000016: PUSH2 0x038e
00000019: JUMPI
0000001a: PUSH1 0x00
0000001c: CALLDATALOAD
0000001d: PUSH1 0xe0
0000001f: SHR
00000020: DUP1
00000021: PUSH4 0x84c150a6
00000026: GT
00000027: PUSH2 0x01de
0000002a: JUMPI
0000002b: DUP1
0000002c: PUSH4 0xc45a0155
00000031: GT
00000032: PUSH2 0x010f
00000035: JUMPI
00000036: DUP1
00000037: PUSH4 0xdc76fabc
0000003c: GT
0000003d: PUSH2 0x00ad
00000040: JUMPI
00000041: DUP1
00000042: PUSH4 0xfce589d8
00000047: GT
00000048: PUSH2 0x007c
0000004b: JUMPI
0000004c: DUP1
0000004d: PUSH4 0xfce589d8
00000052: EQ
00000053: PUSH2 0x09b6
00000056: JUMPI
00000057: DUP1
00000058: PUSH4 0xff3549a3
0000005d: EQ
0000005e: PUSH2 0x09be
00000061: JUMPI
00000062: DUP1
00000063: PUSH4 0xff91c78d
00000068: EQ
00000069: PUSH2 0x09db
0000006c: JUMPI
0000006d: DUP1
0000006e: PUSH4 0xfff6cae9
00000073: EQ
00000074: PUSH2 0x09f8
00000077: JUMPI
00000078: PUSH2 0x038e
0000007b: JUMP
0000007c: JUMPDEST
0000007d: DUP1
0000007e: PUSH4 0xdc76fabc
00000083: EQ
00000084: PUSH2 0x0925
00000087: JUMPI
00000088: DUP1
00000089: PUSH4 0xdd62ed3e
0000008e: EQ
0000008f: PUSH2 0x092d
00000092: JUMPI
00000093: DUP1
00000094: PUSH4 0xeddd0d9c
00000099: EQ
0000009a: PUSH2 0x095b
0000009d: JUMPI
0000009e: DUP1
0000009f: PUSH4 0xf8c8765e
000000a4: EQ
000000a5: PUSH2 0x0978
000000a8: JUMPI
000000a9: PUSH2 0x038e
000000ac: JUMP
000000ad: JUMPDEST
000000ae: DUP1
000000af: PUSH4 0xd505accf
000000b4: GT
000000b5: PUSH2 0x00e9
000000b8: JUMPI
000000b9: DUP1
000000ba: PUSH4 0xd505accf
000000bf: EQ
000000c0: PUSH2 0x08a7
000000c3: JUMPI
000000c4: DUP1
000000c5: PUSH4 0xd727dfc9
000000ca: EQ
000000cb: PUSH2 0x08f8
000000ce: JUMPI
000000cf: DUP1
000000d0: PUSH4 0xdb8d55f1
000000d5: EQ
000000d6: PUSH2 0x0900
000000d9: JUMPI
000000da: DUP1
000000db: PUSH4 0xdc084e78
000000e0: EQ
000000e1: PUSH2 0x0908
000000e4: JUMPI
000000e5: PUSH2 0x038e
000000e8: JUMP
000000e9: JUMPDEST
000000ea: DUP1
000000eb: PUSH4 0xc45a0155
000000f0: EQ
000000f1: PUSH2 0x088f
000000f4: JUMPI
000000f5: DUP1
000000f6: PUSH4 0xcaeba217
000000fb: EQ
000000fc: PUSH2 0x0897
000000ff: JUMPI
00000100: DUP1
00000101: PUSH4 0xd21220a7
00000106: EQ
00000107: PUSH2 0x089f
0000010a: JUMPI
0000010b: PUSH2 0x038e
0000010e: JUMP
0000010f: JUMPDEST
00000110: DUP1
00000111: PUSH4 0xa6bc18f9
00000116: GT
00000117: PUSH2 0x017c
0000011a: JUMPI
0000011b: DUP1
0000011c: PUSH4 0xb81af619
00000121: GT
00000122: PUSH2 0x0156
00000125: JUMPI
00000126: DUP1
00000127: PUSH4 0xb81af619
0000012c: EQ
0000012d: PUSH2 0x0845
00000130: JUMPI
00000131: DUP1
00000132: PUSH4 0xb8d3f31c
00000137: EQ
00000138: PUSH2 0x084d
0000013b: JUMPI
0000013c: DUP1
0000013d: PUSH4 0xba9a7a56
00000142: EQ
00000143: PUSH2 0x086a
00000146: JUMPI
00000147: DUP1
00000148: PUSH4 0xbc103be8
0000014d: EQ
0000014e: PUSH2 0x0872
00000151: JUMPI
00000152: PUSH2 0x038e
00000155: JUMP
00000156: JUMPDEST
00000157: DUP1
00000158: PUSH4 0xa6bc18f9
0000015d: EQ
0000015e: PUSH2 0x07d6
00000161: JUMPI
00000162: DUP1
00000163: PUSH4 0xa9059cbb
00000168: EQ
00000169: PUSH2 0x07fc
0000016c: JUMPI
0000016d: DUP1
0000016e: PUSH4 0xafb600fe
00000173: EQ
00000174: PUSH2 0x0828
00000177: JUMPI
00000178: PUSH2 0x038e
0000017b: JUMP
0000017c: JUMPDEST
0000017d: DUP1
0000017e: PUSH4 0x95d89b41
00000183: GT
00000184: PUSH2 0x01b8
00000187: JUMPI
00000188: DUP1
00000189: PUSH4 0x95d89b41
0000018e: EQ
0000018f: PUSH2 0x077d
00000192: JUMPI
00000193: DUP1
00000194: PUSH4 0x99ce42bb
00000199: EQ
0000019a: PUSH2 0x0785
0000019d: JUMPI
0000019e: DUP1
0000019f: PUSH4 0xa457c2d7
000001a4: EQ
000001a5: PUSH2 0x078d
000001a8: JUMPI
000001a9: DUP1
000001aa: PUSH4 0xa66f459a
000001af: EQ
000001b0: PUSH2 0x07b9
000001b3: JUMPI
000001b4: PUSH2 0x038e
000001b7: JUMP
000001b8: JUMPDEST
000001b9: DUP1
000001ba: PUSH4 0x84c150a6
000001bf: EQ
000001c0: PUSH2 0x0719
000001c3: JUMPI
000001c4: DUP1
000001c5: PUSH4 0x89afcb44
000001ca: EQ
000001cb: PUSH2 0x0736
000001ce: JUMPI
000001cf: DUP1
000001d0: PUSH4 0x89ccfe89
000001d5: EQ
000001d6: PUSH2 0x0775
000001d9: JUMPI
000001da: PUSH2 0x038e
000001dd: JUMP
000001de: JUMPDEST
000001df: DUP1
000001e0: PUSH4 0x3644e515
000001e5: GT
000001e6: PUSH2 0x02c3
000001e9: JUMPI
000001ea: DUP1
000001eb: PUSH4 0x61556e1e
000001f0: GT
000001f1: PUSH2 0x0261
000001f4: JUMPI
000001f5: DUP1
000001f6: PUSH4 0x7a6337fa
000001fb: GT
000001fc: PUSH2 0x0230
000001ff: JUMPI
00000200: DUP1
00000201: PUSH4 0x7a6337fa
00000206: EQ
00000207: PUSH2 0x06bd
0000020a: JUMPI
0000020b: DUP1
0000020c: PUSH4 0x7adbf973
00000211: EQ
00000212: PUSH2 0x06c5
00000215: JUMPI
00000216: DUP1
00000217: PUSH4 0x7dc0d1d0
0000021c: EQ
0000021d: PUSH2 0x06eb
00000220: JUMPI
00000221: DUP1
00000222: PUSH4 0x7ecebe00
00000227: EQ
00000228: PUSH2 0x06f3
0000022b: JUMPI
0000022c: PUSH2 0x038e
0000022f: JUMP
00000230: JUMPDEST
00000231: DUP1
00000232: PUSH4 0x61556e1e
00000237: EQ
00000238: PUSH2 0x0622
0000023b: JUMPI
0000023c: DUP1
0000023d: PUSH4 0x6a627842
00000242: EQ
00000243: PUSH2 0x063f
00000246: JUMPI
00000247: DUP1
00000248: PUSH4 0x6d9a640a
0000024d: EQ
0000024e: PUSH2 0x0665
00000251: JUMPI
00000252: DUP1
00000253: PUSH4 0x70a08231
00000258: EQ
00000259: PUSH2 0x0697
0000025c: JUMPI
0000025d: PUSH2 0x038e
00000260: JUMP
00000261: JUMPDEST
00000262: DUP1
00000263: PUSH4 0x3c80f8a7
00000268: GT
00000269: PUSH2 0x029d
0000026c: JUMPI
0000026d: DUP1
0000026e: PUSH4 0x3c80f8a7
00000273: EQ
00000274: PUSH2 0x05c3
00000277: JUMPI
00000278: DUP1
00000279: PUSH4 0x4bf2c7c9
0000027e: EQ
0000027f: PUSH2 0x05e0
00000282: JUMPI
00000283: DUP1
00000284: PUSH4 0x4e775aad
00000289: EQ
0000028a: PUSH2 0x05fd
0000028d: JUMPI
0000028e: DUP1
0000028f: PUSH4 0x54cf2aeb
00000294: EQ
00000295: PUSH2 0x061a
00000298: JUMPI
00000299: PUSH2 0x038e
0000029c: JUMP
0000029d: JUMPDEST
0000029e: DUP1
0000029f: PUSH4 0x3644e515
000002a4: EQ
000002a5: PUSH2 0x0587
000002a8: JUMPI
000002a9: DUP1
000002aa: PUSH4 0x36a2b585
000002af: EQ
000002b0: PUSH2 0x058f
000002b3: JUMPI
000002b4: DUP1
000002b5: PUSH4 0x39509351
000002ba: EQ
000002bb: PUSH2 0x0597
000002be: JUMPI
000002bf: PUSH2 0x038e
000002c2: JUMP
000002c3: JUMPDEST
000002c4: DUP1
000002c5: PUSH4 0x1758078b
000002ca: GT
000002cb: PUSH2 0x0330
000002ce: JUMPI
000002cf: DUP1
000002d0: PUSH4 0x283d8df7
000002d5: GT
000002d6: PUSH2 0x030a
000002d9: JUMPI
000002da: DUP1
000002db: PUSH4 0x283d8df7
000002e0: EQ
000002e1: PUSH2 0x053c
000002e4: JUMPI
000002e5: DUP1
000002e6: PUSH4 0x30adf81f
000002eb: EQ
000002ec: PUSH2 0x0544
000002ef: JUMPI
000002f0: DUP1
000002f1: PUSH4 0x313ce567
000002f6: EQ
000002f7: PUSH2 0x054c
000002fa: JUMPI
000002fb: DUP1
000002fc: PUSH4 0x34e19907
00000301: EQ
00000302: PUSH2 0x056a
00000305: JUMPI
00000306: PUSH2 0x038e
00000309: JUMP
0000030a: JUMPDEST
0000030b: DUP1
0000030c: PUSH4 0x1758078b
00000311: EQ
00000312: PUSH2 0x04f6
00000315: JUMPI
00000316: DUP1
00000317: PUSH4 0x18160ddd
0000031c: EQ
0000031d: PUSH2 0x04fe
00000320: JUMPI
00000321: DUP1
00000322: PUSH4 0x23b872dd
00000327: EQ
00000328: PUSH2 0x0506
0000032b: JUMPI
0000032c: PUSH2 0x038e
0000032f: JUMP
00000330: JUMPDEST
00000331: DUP1
00000332: PUSH4 0x0902f1ac
00000337: GT
00000338: PUSH2 0x036c
0000033b: JUMPI
0000033c: DUP1
0000033d: PUSH4 0x0902f1ac
00000342: EQ
00000343: PUSH2 0x0452
00000346: JUMPI
00000347: DUP1
00000348: PUSH4 0x095ea7b3
0000034d: EQ
0000034e: PUSH2 0x048a
00000351: JUMPI
00000352: DUP1
00000353: PUSH4 0x0dfe1681
00000358: EQ
00000359: PUSH2 0x04ca
0000035c: JUMPI
0000035d: DUP1
0000035e: PUSH4 0x13966db5
00000363: EQ
00000364: PUSH2 0x04ee
00000367: JUMPI
00000368: PUSH2 0x038e
0000036b: JUMP
0000036c: JUMPDEST
0000036d: DUP1
0000036e: PUSH4 0x0699df58
00000373: EQ
00000374: PUSH2 0x0393
00000377: JUMPI
00000378: DUP1
00000379: PUSH4 0x06ec16f8
0000037e: EQ
0000037f: PUSH2 0x03ad
00000382: JUMPI
00000383: DUP1
00000384: PUSH4 0x06fdde03
00000389: EQ
0000038a: PUSH2 0x03d5
0000038d: JUMPI
0000038e: JUMPDEST
0000038f: PUSH1 0x00
00000391: DUP1
00000392: REVERT
00000393: JUMPDEST
00000394: PUSH2 0x039b
00000397: PUSH2 0x0a00
0000039a: JUMP
0000039b: JUMPDEST
0000039c: PUSH1 0x40
0000039e: DUP1
0000039f: MLOAD
000003a0: SWAP2
000003a1: DUP3
000003a2: MSTORE
000003a3: MLOAD
000003a4: SWAP1
000003a5: DUP2
000003a6: SWAP1
000003a7: SUB
000003a8: PUSH1 0x20
000003aa: ADD
000003ab: SWAP1
000003ac: RETURN
000003ad: JUMPDEST
000003ae: PUSH2 0x03d3
000003b1: PUSH1 0x04
000003b3: DUP1
000003b4: CALLDATASIZE
000003b5: SUB
000003b6: PUSH1 0x20
000003b8: DUP2
000003b9: LT
000003ba: ISZERO
000003bb: PUSH2 0x03c3
000003be: JUMPI
000003bf: PUSH1 0x00
000003c1: DUP1
000003c2: REVERT
000003c3: JUMPDEST
000003c4: POP
000003c5: CALLDATALOAD
000003c6: PUSH1 0x01
000003c8: PUSH1 0x01
000003ca: PUSH1 0xa0
000003cc: SHL
000003cd: SUB
000003ce: AND
000003cf: PUSH2 0x0a06
000003d2: JUMP
000003d3: JUMPDEST
000003d4: STOP
000003d5: JUMPDEST
000003d6: PUSH2 0x03dd
000003d9: PUSH2 0x0b50
000003dc: JUMP
000003dd: JUMPDEST
000003de: PUSH1 0x40
000003e0: DUP1
000003e1: MLOAD
000003e2: PUSH1 0x20
000003e4: DUP1
000003e5: DUP3
000003e6: MSTORE
000003e7: DUP4
000003e8: MLOAD
000003e9: DUP2
000003ea: DUP4
000003eb: ADD
000003ec: MSTORE
000003ed: DUP4
000003ee: MLOAD
000003ef: SWAP2
000003f0: SWAP3
000003f1: DUP4
000003f2: SWAP3
000003f3: SWAP1
000003f4: DUP4
000003f5: ADD
000003f6: SWAP2
000003f7: DUP6
000003f8: ADD
000003f9: SWAP1
000003fa: DUP1
000003fb: DUP4
000003fc: DUP4
000003fd: PUSH1 0x00
000003ff: JUMPDEST
00000400: DUP4
00000401: DUP2
00000402: LT
00000403: ISZERO
00000404: PUSH2 0x0417
00000407: JUMPI
00000408: DUP2
00000409: DUP2
0000040a: ADD
0000040b: MLOAD
0000040c: DUP4
0000040d: DUP3
0000040e: ADD
0000040f: MSTORE
00000410: PUSH1 0x20
00000412: ADD
00000413: PUSH2 0x03ff
00000416: JUMP
00000417: JUMPDEST
00000418: POP
00000419: POP
0000041a: POP
0000041b: POP
0000041c: SWAP1
0000041d: POP
0000041e: SWAP1
0000041f: DUP2
00000420: ADD
00000421: SWAP1
00000422: PUSH1 0x1f
00000424: AND
00000425: DUP1
00000426: ISZERO
00000427: PUSH2 0x0444
0000042a: JUMPI
0000042b: DUP1
0000042c: DUP3
0000042d: SUB
0000042e: DUP1
0000042f: MLOAD
00000430: PUSH1 0x01
00000432: DUP4
00000433: PUSH1 0x20
00000435: SUB
00000436: PUSH2 0x0100
00000439: EXP
0000043a: SUB
0000043b: NOT
0000043c: AND
0000043d: DUP2
0000043e: MSTORE
0000043f: PUSH1 0x20
00000441: ADD
00000442: SWAP2
00000443: POP
00000444: JUMPDEST
00000445: POP
00000446: SWAP3
00000447: POP
00000448: POP
00000449: POP
0000044a: PUSH1 0x40
0000044c: MLOAD
0000044d: DUP1
0000044e: SWAP2
0000044f: SUB
00000450: SWAP1
00000451: RETURN
00000452: JUMPDEST
00000453: PUSH2 0x045a
00000456: PUSH2 0x0b77
00000459: JUMP
0000045a: JUMPDEST
0000045b: PUSH1 0x40
0000045d: DUP1
0000045e: MLOAD
0000045f: PUSH1 0x01
00000461: PUSH1 0x01
00000463: PUSH1 0x70
00000465: SHL
00000466: SUB
00000467: SWAP5
00000468: DUP6
00000469: AND
0000046a: DUP2
0000046b: MSTORE
0000046c: SWAP3
0000046d: SWAP1
0000046e: SWAP4
0000046f: AND
00000470: PUSH1 0x20
00000472: DUP4
00000473: ADD
00000474: MSTORE
00000475: PUSH4 0xffffffff
0000047a: AND
0000047b: DUP2
0000047c: DUP4
0000047d: ADD
0000047e: MSTORE
0000047f: SWAP1
00000480: MLOAD
00000481: SWAP1
00000482: DUP2
00000483: SWAP1
00000484: SUB
00000485: PUSH1 0x60
00000487: ADD
00000488: SWAP1
00000489: RETURN
0000048a: JUMPDEST
0000048b: PUSH2 0x04b6
0000048e: PUSH1 0x04
00000490: DUP1
00000491: CALLDATASIZE
00000492: SUB
00000493: PUSH1 0x40
00000495: DUP2
00000496: LT
00000497: ISZERO
00000498: PUSH2 0x04a0
0000049b: JUMPI
0000049c: PUSH1 0x00
0000049e: DUP1
0000049f: REVERT
000004a0: JUMPDEST
000004a1: POP
000004a2: PUSH1 0x01
000004a4: PUSH1 0x01
000004a6: PUSH1 0xa0
000004a8: SHL
000004a9: SUB
000004aa: DUP2
000004ab: CALLDATALOAD
000004ac: AND
000004ad: SWAP1
000004ae: PUSH1 0x20
000004b0: ADD
000004b1: CALLDATALOAD
000004b2: PUSH2 0x0ba1
000004b5: JUMP
000004b6: JUMPDEST
000004b7: PUSH1 0x40
000004b9: DUP1
000004ba: MLOAD
000004bb: SWAP2
000004bc: ISZERO
000004bd: ISZERO
000004be: DUP3
000004bf: MSTORE
000004c0: MLOAD
000004c1: SWAP1
000004c2: DUP2
000004c3: SWAP1
000004c4: SUB
000004c5: PUSH1 0x20
000004c7: ADD
000004c8: SWAP1
000004c9: RETURN
000004ca: JUMPDEST
000004cb: PUSH2 0x04d2
000004ce: PUSH2 0x0bb8
000004d1: JUMP
000004d2: JUMPDEST
000004d3: PUSH1 0x40
000004d5: DUP1
000004d6: MLOAD
000004d7: PUSH1 0x01
000004d9: PUSH1 0x01
000004db: PUSH1 0xa0
000004dd: SHL
000004de: SUB
000004df: SWAP1
000004e0: SWAP3
000004e1: AND
000004e2: DUP3
000004e3: MSTORE
000004e4: MLOAD
000004e5: SWAP1
000004e6: DUP2
000004e7: SWAP1
000004e8: SUB
000004e9: PUSH1 0x20
000004eb: ADD
000004ec: SWAP1
000004ed: RETURN
000004ee: JUMPDEST
000004ef: PUSH2 0x039b
000004f2: PUSH2 0x0bc7
000004f5: JUMP
000004f6: JUMPDEST
000004f7: PUSH2 0x04d2
000004fa: PUSH2 0x0bcd
000004fd: JUMP
000004fe: JUMPDEST
000004ff: PUSH2 0x039b
00000502: PUSH2 0x0bdc
00000505: JUMP
00000506: JUMPDEST
00000507: PUSH2 0x04b6
0000050a: PUSH1 0x04
0000050c: DUP1
0000050d: CALLDATASIZE
0000050e: SUB
0000050f: PUSH1 0x60
00000511: DUP2
00000512: LT
00000513: ISZERO
00000514: PUSH2 0x051c
00000517: JUMPI
00000518: PUSH1 0x00
0000051a: DUP1
0000051b: REVERT
0000051c: JUMPDEST
0000051d: POP
0000051e: PUSH1 0x01
00000520: PUSH1 0x01
00000522: PUSH1 0xa0
00000524: SHL
00000525: SUB
00000526: DUP2
00000527: CALLDATALOAD
00000528: DUP2
00000529: AND
0000052a: SWAP2
0000052b: PUSH1 0x20
0000052d: DUP2
0000052e: ADD
0000052f: CALLDATALOAD
00000530: SWAP1
00000531: SWAP2
00000532: AND
00000533: SWAP1
00000534: PUSH1 0x40
00000536: ADD
00000537: CALLDATALOAD
00000538: PUSH2 0x0be2
0000053b: JUMP
0000053c: JUMPDEST
0000053d: PUSH2 0x039b
00000540: PUSH2 0x0c76
00000543: JUMP
00000544: JUMPDEST
00000545: PUSH2 0x039b
00000548: PUSH2 0x0c7c
0000054b: JUMP
0000054c: JUMPDEST
0000054d: PUSH2 0x0554
00000550: PUSH2 0x0ca0
00000553: JUMP
00000554: JUMPDEST
00000555: PUSH1 0x40
00000557: DUP1
00000558: MLOAD
00000559: PUSH1 0xff
0000055b: SWAP1
0000055c: SWAP3
0000055d: AND
0000055e: DUP3
0000055f: MSTORE
00000560: MLOAD
00000561: SWAP1
00000562: DUP2
00000563: SWAP1
00000564: SUB
00000565: PUSH1 0x20
00000567: ADD
00000568: SWAP1
00000569: RETURN
0000056a: JUMPDEST
0000056b: PUSH2 0x03d3
0000056e: PUSH1 0x04
00000570: DUP1
00000571: CALLDATASIZE
00000572: SUB
00000573: PUSH1 0x20
00000575: DUP2
00000576: LT
00000577: ISZERO
00000578: PUSH2 0x0580
0000057b: JUMPI
0000057c: PUSH1 0x00
0000057e: DUP1
0000057f: REVERT
00000580: JUMPDEST
00000581: POP
00000582: CALLDATALOAD
00000583: PUSH2 0x0ca5
00000586: JUMP
00000587: JUMPDEST
00000588: PUSH2 0x039b
0000058b: PUSH2 0x0d2e
0000058e: JUMP
0000058f: JUMPDEST
00000590: PUSH2 0x039b
00000593: PUSH2 0x0d34
00000596: JUMP
00000597: JUMPDEST
00000598: PUSH2 0x04b6
0000059b: PUSH1 0x04
0000059d: DUP1
0000059e: CALLDATASIZE
0000059f: SUB
000005a0: PUSH1 0x40
000005a2: DUP2
000005a3: LT
000005a4: ISZERO
000005a5: PUSH2 0x05ad
000005a8: JUMPI
000005a9: PUSH1 0x00
000005ab: DUP1
000005ac: REVERT
000005ad: JUMPDEST
000005ae: POP
000005af: PUSH1 0x01
000005b1: PUSH1 0x01
000005b3: PUSH1 0xa0
000005b5: SHL
000005b6: SUB
000005b7: DUP2
000005b8: CALLDATALOAD
000005b9: AND
000005ba: SWAP1
000005bb: PUSH1 0x20
000005bd: ADD
000005be: CALLDATALOAD
000005bf: PUSH2 0x0d3a
000005c2: JUMP
000005c3: JUMPDEST
000005c4: PUSH2 0x03d3
000005c7: PUSH1 0x04
000005c9: DUP1
000005ca: CALLDATASIZE
000005cb: SUB
000005cc: PUSH1 0x20
000005ce: DUP2
000005cf: LT
000005d0: ISZERO
000005d1: PUSH2 0x05d9
000005d4: JUMPI
000005d5: PUSH1 0x00
000005d7: DUP1
000005d8: REVERT
000005d9: JUMPDEST
000005da: POP
000005db: CALLDATALOAD
000005dc: PUSH2 0x0d75
000005df: JUMP
000005e0: JUMPDEST
000005e1: PUSH2 0x03d3
000005e4: PUSH1 0x04
000005e6: DUP1
000005e7: CALLDATASIZE
000005e8: SUB
000005e9: PUSH1 0x20
000005eb: DUP2
000005ec: LT
000005ed: ISZERO
000005ee: PUSH2 0x05f6
000005f1: JUMPI
000005f2: PUSH1 0x00
000005f4: DUP1
000005f5: REVERT
000005f6: JUMPDEST
000005f7: POP
000005f8: CALLDATALOAD
000005f9: PUSH2 0x0dfe
000005fc: JUMP
000005fd: JUMPDEST
000005fe: PUSH2 0x03d3
00000601: PUSH1 0x04
00000603: DUP1
00000604: CALLDATASIZE
00000605: SUB
00000606: PUSH1 0x20
00000608: DUP2
00000609: LT
0000060a: ISZERO
0000060b: PUSH2 0x0613
0000060e: JUMPI
0000060f: PUSH1 0x00
00000611: DUP1
00000612: REVERT
00000613: JUMPDEST
00000614: POP
00000615: CALLDATALOAD
00000616: PUSH2 0x0e87
00000619: JUMP
0000061a: JUMPDEST
0000061b: PUSH2 0x039b
0000061e: PUSH2 0x0f10
00000621: JUMP
00000622: JUMPDEST
00000623: PUSH2 0x03d3
00000626: PUSH1 0x04
00000628: DUP1
00000629: CALLDATASIZE
0000062a: SUB
0000062b: PUSH1 0x20
0000062d: DUP2
0000062e: LT
0000062f: ISZERO
00000630: PUSH2 0x0638
00000633: JUMPI
00000634: PUSH1 0x00
00000636: DUP1
00000637: REVERT
00000638: JUMPDEST
00000639: POP
0000063a: CALLDATALOAD
0000063b: PUSH2 0x0f16
0000063e: JUMP
0000063f: JUMPDEST
00000640: PUSH2 0x039b
00000643: PUSH1 0x04
00000645: DUP1
00000646: CALLDATASIZE
00000647: SUB
00000648: PUSH1 0x20
0000064a: DUP2
0000064b: LT
0000064c: ISZERO
0000064d: PUSH2 0x0655
00000650: JUMPI
00000651: PUSH1 0x00
00000653: DUP1
00000654: REVERT
00000655: JUMPDEST
00000656: POP
00000657: CALLDATALOAD
00000658: PUSH1 0x01
0000065a: PUSH1 0x01
0000065c: PUSH1 0xa0
0000065e: SHL
0000065f: SUB
00000660: AND
00000661: PUSH2 0x0f9f
00000664: JUMP
00000665: JUMPDEST
00000666: PUSH2 0x03d3
00000669: PUSH1 0x04
0000066b: DUP1
0000066c: CALLDATASIZE
0000066d: SUB
0000066e: PUSH1 0x60
00000670: DUP2
00000671: LT
00000672: ISZERO
00000673: PUSH2 0x067b
00000676: JUMPI
00000677: PUSH1 0x00
00000679: DUP1
0000067a: REVERT
0000067b: JUMPDEST
0000067c: POP
0000067d: DUP1
0000067e: CALLDATALOAD
0000067f: SWAP1
00000680: PUSH1 0x20
00000682: DUP2
00000683: ADD
00000684: CALLDATALOAD
00000685: SWAP1
00000686: PUSH1 0x40
00000688: ADD
00000689: CALLDATALOAD
0000068a: PUSH1 0x01
0000068c: PUSH1 0x01
0000068e: PUSH1 0xa0
00000690: SHL
00000691: SUB
00000692: AND
00000693: PUSH2 0x1276
00000696: JUMP
00000697: JUMPDEST
00000698: PUSH2 0x039b
0000069b: PUSH1 0x04
0000069d: DUP1
0000069e: CALLDATASIZE
0000069f: SUB
000006a0: PUSH1 0x20
000006a2: DUP2
000006a3: LT
000006a4: ISZERO
000006a5: PUSH2 0x06ad
000006a8: JUMPI
000006a9: PUSH1 0x00
000006ab: DUP1
000006ac: REVERT
000006ad: JUMPDEST
000006ae: POP
000006af: CALLDATALOAD
000006b0: PUSH1 0x01
000006b2: PUSH1 0x01
000006b4: PUSH1 0xa0
000006b6: SHL
000006b7: SUB
000006b8: AND
000006b9: PUSH2 0x1937
000006bc: JUMP
000006bd: JUMPDEST
000006be: PUSH2 0x045a
000006c1: PUSH2 0x1949
000006c4: JUMP
000006c5: JUMPDEST
000006c6: PUSH2 0x03d3
000006c9: PUSH1 0x04
000006cb: DUP1
000006cc: CALLDATASIZE
000006cd: SUB
000006ce: PUSH1 0x20
000006d0: DUP2
000006d1: LT
000006d2: ISZERO
000006d3: PUSH2 0x06db
000006d6: JUMPI
000006d7: PUSH1 0x00
000006d9: DUP1
000006da: REVERT
000006db: JUMPDEST
000006dc: POP
000006dd: CALLDATALOAD
000006de: PUSH1 0x01
000006e0: PUSH1 0x01
000006e2: PUSH1 0xa0
000006e4: SHL
000006e5: SUB
000006e6: AND
000006e7: PUSH2 0x1973
000006ea: JUMP
000006eb: JUMPDEST
000006ec: PUSH2 0x04d2
000006ef: PUSH2 0x1acf
000006f2: JUMP
000006f3: JUMPDEST
000006f4: PUSH2 0x039b
000006f7: PUSH1 0x04
000006f9: DUP1
000006fa: CALLDATASIZE
000006fb: SUB
000006fc: PUSH1 0x20
000006fe: DUP2
000006ff: LT
00000700: ISZERO
00000701: PUSH2 0x0709
00000704: JUMPI
00000705: PUSH1 0x00
00000707: DUP1
00000708: REVERT
00000709: JUMPDEST
0000070a: POP
0000070b: CALLDATALOAD
0000070c: PUSH1 0x01
0000070e: PUSH1 0x01
00000710: PUSH1 0xa0
00000712: SHL
00000713: SUB
00000714: AND
00000715: PUSH2 0x1ade
00000718: JUMP
00000719: JUMPDEST
0000071a: PUSH2 0x03d3
0000071d: PUSH1 0x04
0000071f: DUP1
00000720: CALLDATASIZE
00000721: SUB
00000722: PUSH1 0x20
00000724: DUP2
00000725: LT
00000726: ISZERO
00000727: PUSH2 0x072f
0000072a: JUMPI
0000072b: PUSH1 0x00
0000072d: DUP1
0000072e: REVERT
0000072f: JUMPDEST
00000730: POP
00000731: CALLDATALOAD
00000732: PUSH2 0x1af0
00000735: JUMP
00000736: JUMPDEST
00000737: PUSH2 0x075c
0000073a: PUSH1 0x04
0000073c: DUP1
0000073d: CALLDATASIZE
0000073e: SUB
0000073f: PUSH1 0x20
00000741: DUP2
00000742: LT
00000743: ISZERO
00000744: PUSH2 0x074c
00000747: JUMPI
00000748: PUSH1 0x00
0000074a: DUP1
0000074b: REVERT
0000074c: JUMPDEST
0000074d: POP
0000074e: CALLDATALOAD
0000074f: PUSH1 0x01
00000751: PUSH1 0x01
00000753: PUSH1 0xa0
00000755: SHL
00000756: SUB
00000757: AND
00000758: PUSH2 0x1b79
0000075b: JUMP
0000075c: JUMPDEST
0000075d: PUSH1 0x40
0000075f: DUP1
00000760: MLOAD
00000761: SWAP3
00000762: DUP4
00000763: MSTORE
00000764: PUSH1 0x20
00000766: DUP4
00000767: ADD
00000768: SWAP2
00000769: SWAP1
0000076a: SWAP2
0000076b: MSTORE
0000076c: DUP1
0000076d: MLOAD
0000076e: SWAP2
0000076f: DUP3
00000770: SWAP1
00000771: SUB
00000772: ADD
00000773: SWAP1
00000774: RETURN
00000775: JUMPDEST
00000776: PUSH2 0x03d3
00000779: PUSH2 0x1e26
0000077c: JUMP
0000077d: JUMPDEST
0000077e: PUSH2 0x03dd
00000781: PUSH2 0x1e54
00000784: JUMP
00000785: JUMPDEST
00000786: PUSH2 0x03d3
00000789: PUSH2 0x1e77
0000078c: JUMP
0000078d: JUMPDEST
0000078e: PUSH2 0x04b6
00000791: PUSH1 0x04
00000793: DUP1
00000794: CALLDATASIZE
00000795: SUB
00000796: PUSH1 0x40
00000798: DUP2
00000799: LT
0000079a: ISZERO
0000079b: PUSH2 0x07a3
0000079e: JUMPI
0000079f: PUSH1 0x00
000007a1: DUP1
000007a2: REVERT
000007a3: JUMPDEST
000007a4: POP
000007a5: PUSH1 0x01
000007a7: PUSH1 0x01
000007a9: PUSH1 0xa0
000007ab: SHL
000007ac: SUB
000007ad: DUP2
000007ae: CALLDATALOAD
000007af: AND
000007b0: SWAP1
000007b1: PUSH1 0x20
000007b3: ADD
000007b4: CALLDATALOAD
000007b5: PUSH2 0x1e7f
000007b8: JUMP
000007b9: JUMPDEST
000007ba: PUSH2 0x039b
000007bd: PUSH1 0x04
000007bf: DUP1
000007c0: CALLDATASIZE
000007c1: SUB
000007c2: PUSH1 0x20
000007c4: DUP2
000007c5: LT
000007c6: ISZERO
000007c7: PUSH2 0x07cf
000007ca: JUMPI
000007cb: PUSH1 0x00
000007cd: DUP1
000007ce: REVERT
000007cf: JUMPDEST
000007d0: POP
000007d1: CALLDATALOAD
000007d2: PUSH2 0x1efc
000007d5: JUMP
000007d6: JUMPDEST
000007d7: PUSH2 0x03d3
000007da: PUSH1 0x04
000007dc: DUP1
000007dd: CALLDATASIZE
000007de: SUB
000007df: PUSH1 0x20
000007e1: DUP2
000007e2: LT
000007e3: ISZERO
000007e4: PUSH2 0x07ec
000007e7: JUMPI
000007e8: PUSH1 0x00
000007ea: DUP1
000007eb: REVERT
000007ec: JUMPDEST
000007ed: POP
000007ee: CALLDATALOAD
000007ef: PUSH1 0x01
000007f1: PUSH1 0x01
000007f3: PUSH1 0xa0
000007f5: SHL
000007f6: SUB
000007f7: AND
000007f8: PUSH2 0x2113
000007fb: JUMP
000007fc: JUMPDEST
000007fd: PUSH2 0x04b6
00000800: PUSH1 0x04
00000802: DUP1
00000803: CALLDATASIZE
00000804: SUB
00000805: PUSH1 0x40
00000807: DUP2
00000808: LT
00000809: ISZERO
0000080a: PUSH2 0x0812
0000080d: JUMPI
0000080e: PUSH1 0x00
00000810: DUP1
00000811: REVERT
00000812: JUMPDEST
00000813: POP
00000814: PUSH1 0x01
00000816: PUSH1 0x01
00000818: PUSH1 0xa0
0000081a: SHL
0000081b: SUB
0000081c: DUP2
0000081d: CALLDATALOAD
0000081e: AND
0000081f: SWAP1
00000820: PUSH1 0x20
00000822: ADD
00000823: CALLDATALOAD
00000824: PUSH2 0x21bb
00000827: JUMP
00000828: JUMPDEST
00000829: PUSH2 0x039b
0000082c: PUSH1 0x04
0000082e: DUP1
0000082f: CALLDATASIZE
00000830: SUB
00000831: PUSH1 0x20
00000833: DUP2
00000834: LT
00000835: ISZERO
00000836: PUSH2 0x083e
00000839: JUMPI
0000083a: PUSH1 0x00
0000083c: DUP1
0000083d: REVERT
0000083e: JUMPDEST
0000083f: POP
00000840: CALLDATALOAD
00000841: PUSH2 0x21c8
00000844: JUMP
00000845: JUMPDEST
00000846: PUSH2 0x039b
00000849: PUSH2 0x22de
0000084c: JUMP
0000084d: JUMPDEST
0000084e: PUSH2 0x039b
00000851: PUSH1 0x04
00000853: DUP1
00000854: CALLDATASIZE
00000855: SUB
00000856: PUSH1 0x20
00000858: DUP2
00000859: LT
0000085a: ISZERO
0000085b: PUSH2 0x0863
0000085e: JUMPI
0000085f: PUSH1 0x00
00000861: DUP1
00000862: REVERT
00000863: JUMPDEST
00000864: POP
00000865: CALLDATALOAD
00000866: PUSH2 0x22e4
00000869: JUMP
0000086a: JUMPDEST
0000086b: PUSH2 0x039b
0000086e: PUSH2 0x23ee
00000871: JUMP
00000872: JUMPDEST
00000873: PUSH2 0x039b
00000876: PUSH1 0x04
00000878: DUP1
00000879: CALLDATASIZE
0000087a: SUB
0000087b: PUSH1 0x20
0000087d: DUP2
0000087e: LT
0000087f: ISZERO
00000880: PUSH2 0x0888
00000883: JUMPI
00000884: PUSH1 0x00
00000886: DUP1
00000887: REVERT
00000888: JUMPDEST
00000889: POP
0000088a: CALLDATALOAD
0000088b: PUSH2 0x23f4
0000088e: JUMP
0000088f: JUMPDEST
00000890: PUSH2 0x04d2
00000893: PUSH2 0x2503
00000896: JUMP
00000897: JUMPDEST
00000898: PUSH2 0x03d3
0000089b: PUSH2 0x2512
0000089e: JUMP
0000089f: JUMPDEST
000008a0: PUSH2 0x04d2
000008a3: PUSH2 0x256d
000008a6: JUMP
000008a7: JUMPDEST
000008a8: PUSH2 0x03d3
000008ab: PUSH1 0x04
000008ad: DUP1
000008ae: CALLDATASIZE
000008af: SUB
000008b0: PUSH1 0xe0
000008b2: DUP2
000008b3: LT
000008b4: ISZERO
000008b5: PUSH2 0x08bd
000008b8: JUMPI
000008b9: PUSH1 0x00
000008bb: DUP1
000008bc: REVERT
000008bd: JUMPDEST
000008be: POP
000008bf: PUSH1 0x01
000008c1: PUSH1 0x01
000008c3: PUSH1 0xa0
000008c5: SHL
000008c6: SUB
000008c7: DUP2
000008c8: CALLDATALOAD
000008c9: DUP2
000008ca: AND
000008cb: SWAP2
000008cc: PUSH1 0x20
000008ce: DUP2
000008cf: ADD
000008d0: CALLDATALOAD
000008d1: SWAP1
000008d2: SWAP2
000008d3: AND
000008d4: SWAP1
000008d5: PUSH1 0x40
000008d7: DUP2
000008d8: ADD
000008d9: CALLDATALOAD
000008da: SWAP1
000008db: PUSH1 0x60
000008dd: DUP2
000008de: ADD
000008df: CALLDATALOAD
000008e0: SWAP1
000008e1: PUSH1 0xff
000008e3: PUSH1 0x80
000008e5: DUP3
000008e6: ADD
000008e7: CALLDATALOAD
000008e8: AND
000008e9: SWAP1
000008ea: PUSH1 0xa0
000008ec: DUP2
000008ed: ADD
000008ee: CALLDATALOAD
000008ef: SWAP1
000008f0: PUSH1 0xc0
000008f2: ADD
000008f3: CALLDATALOAD
000008f4: PUSH2 0x257c
000008f7: JUMP
000008f8: JUMPDEST
000008f9: PUSH2 0x039b
000008fc: PUSH2 0x276d
000008ff: JUMP
00000900: JUMPDEST
00000901: PUSH2 0x075c
00000904: PUSH2 0x2773
00000907: JUMP
00000908: JUMPDEST
00000909: PUSH2 0x039b
0000090c: PUSH1 0x04
0000090e: DUP1
0000090f: CALLDATASIZE
00000910: SUB
00000911: PUSH1 0x20
00000913: DUP2
00000914: LT
00000915: ISZERO
00000916: PUSH2 0x091e
00000919: JUMPI
0000091a: PUSH1 0x00
0000091c: DUP1
0000091d: REVERT
0000091e: JUMPDEST
0000091f: POP
00000920: CALLDATALOAD
00000921: PUSH2 0x277d
00000924: JUMP
00000925: JUMPDEST
00000926: PUSH2 0x039b
00000929: PUSH2 0x2886
0000092c: JUMP
0000092d: JUMPDEST
0000092e: PUSH2 0x039b
00000931: PUSH1 0x04
00000933: DUP1
00000934: CALLDATASIZE
00000935: SUB
00000936: PUSH1 0x40
00000938: DUP2
00000939: LT
0000093a: ISZERO
0000093b: PUSH2 0x0943
0000093e: JUMPI
0000093f: PUSH1 0x00
00000941: DUP1
00000942: REVERT
00000943: JUMPDEST
00000944: POP
00000945: PUSH1 0x01
00000947: PUSH1 0x01
00000949: PUSH1 0xa0
0000094b: SHL
0000094c: SUB
0000094d: DUP2
0000094e: CALLDATALOAD
0000094f: DUP2
00000950: AND
00000951: SWAP2
00000952: PUSH1 0x20
00000954: ADD
00000955: CALLDATALOAD
00000956: AND
00000957: PUSH2 0x2933
0000095a: JUMP
0000095b: JUMPDEST
0000095c: PUSH2 0x03d3
0000095f: PUSH1 0x04
00000961: DUP1
00000962: CALLDATASIZE
00000963: SUB
00000964: PUSH1 0x20
00000966: DUP2
00000967: LT
00000968: ISZERO
00000969: PUSH2 0x0971
0000096c: JUMPI
0000096d: PUSH1 0x00
0000096f: DUP1
00000970: REVERT
00000971: JUMPDEST
00000972: POP
00000973: CALLDATALOAD
00000974: PUSH2 0x2950
00000977: JUMP
00000978: JUMPDEST
00000979: PUSH2 0x03d3
0000097c: PUSH1 0x04
0000097e: DUP1
0000097f: CALLDATASIZE
00000980: SUB
00000981: PUSH1 0x80
00000983: DUP2
00000984: LT
00000985: ISZERO
00000986: PUSH2 0x098e
00000989: JUMPI
0000098a: PUSH1 0x00
0000098c: DUP1
0000098d: REVERT
0000098e: JUMPDEST
0000098f: POP
00000990: PUSH1 0x01
00000992: PUSH1 0x01
00000994: PUSH1 0xa0
00000996: SHL
00000997: SUB
00000998: DUP2
00000999: CALLDATALOAD
0000099a: DUP2
0000099b: AND
0000099c: SWAP2
0000099d: PUSH1 0x20
0000099f: DUP2
000009a0: ADD
000009a1: CALLDATALOAD
000009a2: DUP3
000009a3: AND
000009a4: SWAP2
000009a5: PUSH1 0x40
000009a7: DUP3
000009a8: ADD
000009a9: CALLDATALOAD
000009aa: DUP2
000009ab: AND
000009ac: SWAP2
000009ad: PUSH1 0x60
000009af: ADD
000009b0: CALLDATALOAD
000009b1: AND
000009b2: PUSH2 0x29d9
000009b5: JUMP
000009b6: JUMPDEST
000009b7: PUSH2 0x039b
000009ba: PUSH2 0x2b88
000009bd: JUMP
000009be: JUMPDEST
000009bf: PUSH2 0x03d3
000009c2: PUSH1 0x04
000009c4: DUP1
000009c5: CALLDATASIZE
000009c6: SUB
000009c7: PUSH1 0x20
000009c9: DUP2
000009ca: LT
000009cb: ISZERO
000009cc: PUSH2 0x09d4
000009cf: JUMPI
000009d0: PUSH1 0x00
000009d2: DUP1
000009d3: REVERT
000009d4: JUMPDEST
000009d5: POP
000009d6: CALLDATALOAD
000009d7: PUSH2 0x2b8e
000009da: JUMP
000009db: JUMPDEST
000009dc: PUSH2 0x039b
000009df: PUSH1 0x04
000009e1: DUP1
000009e2: CALLDATASIZE
000009e3: SUB
000009e4: PUSH1 0x20
000009e6: DUP2
000009e7: LT
000009e8: ISZERO
000009e9: PUSH2 0x09f1
000009ec: JUMPI
000009ed: PUSH1 0x00
000009ef: DUP1
000009f0: REVERT
000009f1: JUMPDEST
000009f2: POP
000009f3: CALLDATALOAD
000009f4: PUSH2 0x2c17
000009f7: JUMP
000009f8: JUMPDEST
000009f9: PUSH2 0x03d3
000009fc: PUSH2 0x2e1d
000009ff: JUMP
00000a00: JUMPDEST
00000a01: PUSH1 0x16
00000a03: SLOAD
00000a04: DUP2
00000a05: JUMP
00000a06: JUMPDEST
00000a07: PUSH1 0x17
00000a09: SLOAD
00000a0a: PUSH1 0x01
00000a0c: EQ
00000a0d: PUSH2 0x0a49
00000a10: JUMPI
00000a11: PUSH1 0x40
00000a13: DUP1
00000a14: MLOAD
00000a15: PUSH3 0x461bcd
00000a19: PUSH1 0xe5
00000a1b: SHL
00000a1c: DUP2
00000a1d: MSTORE
00000a1e: PUSH1 0x20
00000a20: PUSH1 0x04
00000a22: DUP3
00000a23: ADD
00000a24: MSTORE
00000a25: PUSH1 0x09
00000a27: PUSH1 0x24
00000a29: DUP3
00000a2a: ADD
00000a2b: MSTORE
00000a2c: PUSH9 0x125417d313d0d2d151
00000a36: PUSH1 0xba
00000a38: SHL
00000a39: PUSH1 0x44
00000a3b: DUP3
00000a3c: ADD
00000a3d: MSTORE
00000a3e: SWAP1
00000a3f: MLOAD
00000a40: SWAP1
00000a41: DUP2
00000a42: SWAP1
00000a43: SUB
00000a44: PUSH1 0x64
00000a46: ADD
00000a47: SWAP1
00000a48: REVERT
00000a49: JUMPDEST
00000a4a: PUSH1 0x00
00000a4c: PUSH1 0x17
00000a4e: SSTORE
00000a4f: PUSH1 0x0c
00000a51: SLOAD
00000a52: PUSH1 0x01
00000a54: PUSH1 0x01
00000a56: PUSH1 0xa0
00000a58: SHL
00000a59: SUB
00000a5a: AND
00000a5b: CALLER
00000a5c: EQ
00000a5d: PUSH2 0x0a9c
00000a60: JUMPI
00000a61: PUSH1 0x40
00000a63: DUP1
00000a64: MLOAD
00000a65: PUSH3 0x461bcd
00000a69: PUSH1 0xe5
00000a6b: SHL
00000a6c: DUP2
00000a6d: MSTORE
00000a6e: PUSH1 0x20
00000a70: PUSH1 0x04
00000a72: DUP3
00000a73: ADD
00000a74: MSTORE
00000a75: PUSH1 0x0c
00000a77: PUSH1 0x24
00000a79: DUP3
00000a7a: ADD
00000a7b: MSTORE
00000a7c: PUSH12 0x24a82fa327a92124a22222a7
00000a89: PUSH1 0xa1
00000a8b: SHL
00000a8c: PUSH1 0x44
00000a8e: DUP3
00000a8f: ADD
00000a90: MSTORE
00000a91: SWAP1
00000a92: MLOAD
00000a93: SWAP1
00000a94: DUP2
00000a95: SWAP1
00000a96: SUB
00000a97: PUSH1 0x64
00000a99: ADD
00000a9a: SWAP1
00000a9b: REVERT
00000a9c: JUMPDEST
00000a9d: PUSH1 0x01
00000a9f: PUSH1 0x01
00000aa1: PUSH1 0xa0
00000aa3: SHL
00000aa4: SUB
00000aa5: DUP2
00000aa6: AND
00000aa7: PUSH2 0x0ae9
00000aaa: JUMPI
00000aab: PUSH1 0x40
00000aad: DUP1
00000aae: MLOAD
00000aaf: PUSH3 0x461bcd
00000ab3: PUSH1 0xe5
00000ab5: SHL
00000ab6: DUP2
00000ab7: MSTORE
00000ab8: PUSH1 0x20
00000aba: PUSH1 0x04
00000abc: DUP3
00000abd: ADD
00000abe: MSTORE
00000abf: PUSH1 0x0f
00000ac1: PUSH1 0x24
00000ac3: DUP3
00000ac4: ADD
00000ac5: MSTORE
00000ac6: PUSH15 0x49505f414444524553535f5a45524f
00000ad6: PUSH1 0x88
00000ad8: SHL
00000ad9: PUSH1 0x44
00000adb: DUP3
00000adc: ADD
00000add: MSTORE
00000ade: SWAP1
00000adf: MLOAD
00000ae0: SWAP1
00000ae1: DUP2
00000ae2: SWAP1
00000ae3: SUB
00000ae4: PUSH1 0x64
00000ae6: ADD
00000ae7: SWAP1
00000ae8: REVERT
00000ae9: JUMPDEST
00000aea: PUSH1 0x00
00000aec: DUP1
00000aed: PUSH2 0x0af4
00000af0: PUSH2 0x2773
00000af3: JUMP
00000af4: JUMPDEST
00000af5: SWAP1
00000af6: SWAP3
00000af7: POP
00000af8: SWAP1
00000af9: POP
00000afa: DUP2
00000afb: ISZERO
00000afc: PUSH2 0x0b16
00000aff: JUMPI
00000b00: PUSH1 0x0d
00000b02: SLOAD
00000b03: PUSH2 0x0b16
00000b06: SWAP1
00000b07: PUSH1 0x01
00000b09: PUSH1 0x01
00000b0b: PUSH1 0xa0
00000b0d: SHL
00000b0e: SUB
00000b0f: AND
00000b10: DUP5
00000b11: DUP5
00000b12: PUSH2 0x2ec7
00000b15: JUMP
00000b16: JUMPDEST
00000b17: DUP1
00000b18: ISZERO
00000b19: PUSH2 0x0b33
00000b1c: JUMPI
00000b1d: PUSH1 0x0e
00000b1f: SLOAD
00000b20: PUSH2 0x0b33
00000b23: SWAP1
00000b24: PUSH1 0x01
00000b26: PUSH1 0x01
00000b28: PUSH1 0xa0
00000b2a: SHL
00000b2b: SUB
00000b2c: AND
00000b2d: DUP5
00000b2e: DUP4
00000b2f: PUSH2 0x2ec7
00000b32: JUMP
00000b33: JUMPDEST
00000b34: PUSH2 0x0b3e
00000b37: PUSH1 0x00
00000b39: DUP1
00000b3a: PUSH2 0x3056
00000b3d: JUMP
00000b3e: JUMPDEST
00000b3f: PUSH2 0x0b46
00000b42: PUSH2 0x309f
00000b45: JUMP
00000b46: JUMPDEST
00000b47: POP
00000b48: POP
00000b49: PUSH1 0x01
00000b4b: PUSH1 0x17
00000b4d: SSTORE
00000b4e: POP
00000b4f: JUMP
00000b50: JUMPDEST
00000b51: PUSH1 0x40
00000b53: MLOAD
00000b54: DUP1
00000b55: PUSH1 0x40
00000b57: ADD
00000b58: PUSH1 0x40
00000b5a: MSTORE
00000b5b: DUP1
00000b5c: PUSH1 0x0b
00000b5e: DUP2
00000b5f: MSTORE
00000b60: PUSH1 0x20
00000b62: ADD
00000b63: PUSH11 0x0496e74656772616c204c5
00000b6f: PUSH1 0xac
00000b71: SHL
00000b72: DUP2
00000b73: MSTORE
00000b74: POP
00000b75: DUP2
00000b76: JUMP
00000b77: JUMPDEST
00000b78: PUSH1 0x00
00000b7a: SLOAD
00000b7b: PUSH1 0x01
00000b7d: PUSH1 0x01
00000b7f: PUSH1 0x70
00000b81: SHL
00000b82: SUB
00000b83: DUP1
00000b84: DUP3
00000b85: AND
00000b86: SWAP3
00000b87: PUSH1 0x01
00000b89: PUSH1 0x70
00000b8b: SHL
00000b8c: DUP4
00000b8d: DIV
00000b8e: SWAP1
00000b8f: SWAP2
00000b90: AND
00000b91: SWAP2
00000b92: PUSH1 0x01
00000b94: PUSH1 0xe0
00000b96: SHL
00000b97: SWAP1
00000b98: DIV
00000b99: PUSH4 0xffffffff
00000b9e: AND
00000b9f: SWAP1
00000ba0: JUMP
00000ba1: JUMPDEST
00000ba2: PUSH1 0x00
00000ba4: PUSH2 0x0bae
00000ba7: CALLER
00000ba8: DUP5
00000ba9: DUP5
00000baa: PUSH2 0x30ec
00000bad: JUMP
00000bae: JUMPDEST
00000baf: POP
00000bb0: PUSH1 0x01
00000bb2: JUMPDEST
00000bb3: SWAP3
00000bb4: SWAP2
00000bb5: POP
00000bb6: POP
00000bb7: JUMP
00000bb8: JUMPDEST
00000bb9: PUSH1 0x0d
00000bbb: SLOAD
00000bbc: PUSH1 0x01
00000bbe: PUSH1 0x01
00000bc0: PUSH1 0xa0
00000bc2: SHL
00000bc3: SUB
00000bc4: AND
00000bc5: DUP2
00000bc6: JUMP
00000bc7: JUMPDEST
00000bc8: PUSH1 0x09
00000bca: SLOAD
00000bcb: DUP2
00000bcc: JUMP
00000bcd: JUMPDEST
00000bce: PUSH1 0x10
00000bd0: SLOAD
00000bd1: PUSH1 0x01
00000bd3: PUSH1 0x01
00000bd5: PUSH1 0xa0
00000bd7: SHL
00000bd8: SUB
00000bd9: AND
00000bda: DUP2
00000bdb: JUMP
00000bdc: JUMPDEST
00000bdd: PUSH1 0x04
00000bdf: SLOAD
00000be0: DUP2
00000be1: JUMP
00000be2: JUMPDEST
00000be3: PUSH1 0x01
00000be5: PUSH1 0x01
00000be7: PUSH1 0xa0
00000be9: SHL
00000bea: SUB
00000beb: DUP4
00000bec: AND
00000bed: PUSH1 0x00
00000bef: SWAP1
00000bf0: DUP2
00000bf1: MSTORE
00000bf2: PUSH1 0x06
00000bf4: PUSH1 0x20
00000bf6: SWAP1
00000bf7: DUP2
00000bf8: MSTORE
00000bf9: PUSH1 0x40
00000bfb: DUP1
00000bfc: DUP4
00000bfd: KECCAK256
00000bfe: CALLER
00000bff: DUP5
00000c00: MSTORE
00000c01: SWAP1
00000c02: SWAP2
00000c03: MSTORE
00000c04: DUP2
00000c05: KECCAK256
00000c06: SLOAD
00000c07: PUSH1 0x00
00000c09: NOT
00000c0a: EQ
00000c0b: PUSH2 0x0c61
00000c0e: JUMPI
00000c0f: PUSH1 0x01
00000c11: PUSH1 0x01
00000c13: PUSH1 0xa0
00000c15: SHL
00000c16: SUB
00000c17: DUP5
00000c18: AND
00000c19: PUSH1 0x00
00000c1b: SWAP1
00000c1c: DUP2
00000c1d: MSTORE
00000c1e: PUSH1 0x06
00000c20: PUSH1 0x20
00000c22: SWAP1
00000c23: DUP2
00000c24: MSTORE
00000c25: PUSH1 0x40
00000c27: DUP1
00000c28: DUP4
00000c29: KECCAK256
00000c2a: CALLER
00000c2b: DUP5
00000c2c: MSTORE
00000c2d: SWAP1
00000c2e: SWAP2
00000c2f: MSTORE
00000c30: SWAP1
00000c31: KECCAK256
00000c32: SLOAD
00000c33: PUSH2 0x0c3c
00000c36: SWAP1
00000c37: DUP4
00000c38: PUSH2 0x314e
00000c3b: JUMP
00000c3c: JUMPDEST
00000c3d: PUSH1 0x01
00000c3f: PUSH1 0x01
00000c41: PUSH1 0xa0
00000c43: SHL
00000c44: SUB
00000c45: DUP6
00000c46: AND
00000c47: PUSH1 0x00
00000c49: SWAP1
00000c4a: DUP2
00000c4b: MSTORE
00000c4c: PUSH1 0x06
00000c4e: PUSH1 0x20
00000c50: SWAP1
00000c51: DUP2
00000c52: MSTORE
00000c53: PUSH1 0x40
00000c55: DUP1
00000c56: DUP4
00000c57: KECCAK256
00000c58: CALLER
00000c59: DUP5
00000c5a: MSTORE
00000c5b: SWAP1
00000c5c: SWAP2
00000c5d: MSTORE
00000c5e: SWAP1
00000c5f: KECCAK256
00000c60: SSTORE
00000c61: JUMPDEST
00000c62: PUSH2 0x0c6c
00000c65: DUP5
00000c66: DUP5
00000c67: DUP5
00000c68: PUSH2 0x318a
00000c6b: JUMP
00000c6c: JUMPDEST
00000c6d: POP
00000c6e: PUSH1 0x01
00000c70: SWAP4
00000c71: SWAP3
00000c72: POP
00000c73: POP
00000c74: POP
00000c75: JUMP
00000c76: JUMPDEST
00000c77: PUSH1 0x14
00000c79: SLOAD
00000c7a: DUP2
00000c7b: JUMP
00000c7c: JUMPDEST
00000c7d: PUSH32 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9
00000c9e: DUP2
00000c9f: JUMP
00000ca0: JUMPDEST
00000ca1: PUSH1 0x12
00000ca3: DUP2
00000ca4: JUMP
00000ca5: JUMPDEST
00000ca6: PUSH1 0x0c
00000ca8: SLOAD
00000ca9: PUSH1 0x01
00000cab: PUSH1 0x01
00000cad: PUSH1 0xa0
00000caf: SHL
00000cb0: SUB
00000cb1: AND
00000cb2: CALLER
00000cb3: EQ
00000cb4: PUSH2 0x0cf3
00000cb7: JUMPI
00000cb8: PUSH1 0x40
00000cba: DUP1
00000cbb: MLOAD
00000cbc: PUSH3 0x461bcd
00000cc0: PUSH1 0xe5
00000cc2: SHL
00000cc3: DUP2
00000cc4: MSTORE
00000cc5: PUSH1 0x20
00000cc7: PUSH1 0x04
00000cc9: DUP3
00000cca: ADD
00000ccb: MSTORE
00000ccc: PUSH1 0x0c
00000cce: PUSH1 0x24
00000cd0: DUP3
00000cd1: ADD
00000cd2: MSTORE
00000cd3: PUSH12 0x24a82fa327a92124a22222a7
00000ce0: PUSH1 0xa1
00000ce2: SHL
00000ce3: PUSH1 0x44
00000ce5: DUP3
00000ce6: ADD
00000ce7: MSTORE
00000ce8: SWAP1
00000ce9: MLOAD
00000cea: SWAP1
00000ceb: DUP2
00000cec: SWAP1
00000ced: SUB
00000cee: PUSH1 0x64
00000cf0: ADD
00000cf1: SWAP1
00000cf2: REVERT
00000cf3: JUMPDEST
00000cf4: PUSH1 0x0b
00000cf6: DUP2
00000cf7: SWAP1
00000cf8: SSTORE
00000cf9: PUSH1 0x40
00000cfb: DUP1
00000cfc: MLOAD
00000cfd: DUP3
00000cfe: DUP2
00000cff: MSTORE
00000d00: SWAP1
00000d01: MLOAD
00000d02: PUSH32 0xcda74150def0ede554aff5f677be9df0e226fddff9bd9ceddf732b9673b1c92d
00000d23: SWAP2
00000d24: DUP2
00000d25: SWAP1
00000d26: SUB
00000d27: PUSH1 0x20
00000d29: ADD
00000d2a: SWAP1
00000d2b: LOG1
00000d2c: POP
00000d2d: JUMP
00000d2e: JUMPDEST
00000d2f: PUSH1 0x07
00000d31: SLOAD
00000d32: DUP2
00000d33: JUMP
00000d34: JUMPDEST
00000d35: PUSH1 0x15
00000d37: SLOAD
00000d38: DUP2
00000d39: JUMP
00000d3a: JUMPDEST
00000d3b: CALLER
00000d3c: PUSH1 0x00
00000d3e: DUP2
00000d3f: DUP2
00000d40: MSTORE
00000d41: PUSH1 0x06
00000d43: PUSH1 0x20
00000d45: SWAP1
00000d46: DUP2
00000d47: MSTORE
00000d48: PUSH1 0x40
00000d4a: DUP1
00000d4b: DUP4
00000d4c: KECCAK256
00000d4d: PUSH1 0x01
00000d4f: PUSH1 0x01
00000d51: PUSH1 0xa0
00000d53: SHL
00000d54: SUB
00000d55: DUP8
00000d56: AND
00000d57: DUP5
00000d58: MSTORE
00000d59: SWAP1
00000d5a: SWAP2
00000d5b: MSTORE
00000d5c: DUP2
00000d5d: KECCAK256
00000d5e: SLOAD
00000d5f: SWAP1
00000d60: SWAP2
00000d61: PUSH2 0x0bae
00000d64: SWAP2
00000d65: DUP6
00000d66: SWAP1
00000d67: PUSH2 0x0d70
00000d6a: SWAP1
00000d6b: DUP7
00000d6c: PUSH2 0x3238
00000d6f: JUMP
00000d70: JUMPDEST
00000d71: PUSH2 0x30ec
00000d74: JUMP
00000d75: JUMPDEST
00000d76: PUSH1 0x0c
00000d78: SLOAD
00000d79: PUSH1 0x01
00000d7b: PUSH1 0x01
00000d7d: PUSH1 0xa0
00000d7f: SHL
00000d80: SUB
00000d81: AND
00000d82: CALLER
00000d83: EQ
00000d84: PUSH2 0x0dc3
00000d87: JUMPI
00000d88: PUSH1 0x40
00000d8a: DUP1
00000d8b: MLOAD
00000d8c: PUSH3 0x461bcd
00000d90: PUSH1 0xe5
00000d92: SHL
00000d93: DUP2
00000d94: MSTORE
00000d95: PUSH1 0x20
00000d97: PUSH1 0x04
00000d99: DUP3
00000d9a: ADD
00000d9b: MSTORE
00000d9c: PUSH1 0x0c
00000d9e: PUSH1 0x24
00000da0: DUP3
00000da1: ADD
00000da2: MSTORE
00000da3: PUSH12 0x24a82fa327a92124a22222a7
00000db0: PUSH1 0xa1
00000db2: SHL
00000db3: PUSH1 0x44
00000db5: DUP3
00000db6: ADD
00000db7: MSTORE
00000db8: SWAP1
00000db9: MLOAD
00000dba: SWAP1
00000dbb: DUP2
00000dbc: SWAP1
00000dbd: SUB
00000dbe: PUSH1 0x64
00000dc0: ADD
00000dc1: SWAP1
00000dc2: REVERT
00000dc3: JUMPDEST
00000dc4: PUSH1 0x13
00000dc6: DUP2
00000dc7: SWAP1
00000dc8: SSTORE
00000dc9: PUSH1 0x40
00000dcb: DUP1
00000dcc: MLOAD
00000dcd: DUP3
00000dce: DUP2
00000dcf: MSTORE
00000dd0: SWAP1
00000dd1: MLOAD
00000dd2: PUSH32 0xbecb607f688c25b67976d7ae1088f9c092d792c4acd14d1ab019e93dcddb4c0e
00000df3: SWAP2
00000df4: DUP2
00000df5: SWAP1
00000df6: SUB
00000df7: PUSH1 0x20
00000df9: ADD
00000dfa: SWAP1
00000dfb: LOG1
00000dfc: POP
00000dfd: JUMP
00000dfe: JUMPDEST
00000dff: PUSH1 0x0c
00000e01: SLOAD
00000e02: PUSH1 0x01
00000e04: PUSH1 0x01
00000e06: PUSH1 0xa0
00000e08: SHL
00000e09: SUB
00000e0a: AND
00000e0b: CALLER
00000e0c: EQ
00000e0d: PUSH2 0x0e4c
00000e10: JUMPI
00000e11: PUSH1 0x40
00000e13: DUP1
00000e14: MLOAD
00000e15: PUSH3 0x461bcd
00000e19: PUSH1 0xe5
00000e1b: SHL
00000e1c: DUP2
00000e1d: MSTORE
00000e1e: PUSH1 0x20
00000e20: PUSH1 0x04
00000e22: DUP3
00000e23: ADD
00000e24: MSTORE
00000e25: PUSH1 0x0c
00000e27: PUSH1 0x24
00000e29: DUP3
00000e2a: ADD
00000e2b: MSTORE
00000e2c: PUSH12 0x24a82fa327a92124a22222a7
00000e39: PUSH1 0xa1
00000e3b: SHL
00000e3c: PUSH1 0x44
00000e3e: DUP3
00000e3f: ADD
00000e40: MSTORE
00000e41: SWAP1
00000e42: MLOAD
00000e43: SWAP1
00000e44: DUP2
00000e45: SWAP1
00000e46: SUB
00000e47: PUSH1 0x64
00000e49: ADD
00000e4a: SWAP1
00000e4b: REVERT
00000e4c: JUMPDEST
00000e4d: PUSH1 0x0a
00000e4f: DUP2
00000e50: SWAP1
00000e51: SSTORE
00000e52: PUSH1 0x40
00000e54: DUP1
00000e55: MLOAD
00000e56: DUP3
00000e57: DUP2
00000e58: MSTORE
00000e59: SWAP1
00000e5a: MLOAD
00000e5b: PUSH32 0x0476fcc77110b6ac2d8f2dd346f80d2c5cda54dae5c6ddd6f82b603a4d9b9dc9
00000e7c: SWAP2
00000e7d: DUP2
00000e7e: SWAP1
00000e7f: SUB
00000e80: PUSH1 0x20
00000e82: ADD
00000e83: SWAP1
00000e84: LOG1
00000e85: POP
00000e86: JUMP
00000e87: JUMPDEST
00000e88: PUSH1 0x0c
00000e8a: SLOAD
00000e8b: PUSH1 0x01
00000e8d: PUSH1 0x01
00000e8f: PUSH1 0xa0
00000e91: SHL
00000e92: SUB
00000e93: AND
00000e94: CALLER
00000e95: EQ
00000e96: PUSH2 0x0ed5
00000e99: JUMPI
00000e9a: PUSH1 0x40
00000e9c: DUP1
00000e9d: MLOAD
00000e9e: PUSH3 0x461bcd
00000ea2: PUSH1 0xe5
00000ea4: SHL
00000ea5: DUP2
00000ea6: MSTORE
00000ea7: PUSH1 0x20
00000ea9: PUSH1 0x04
00000eab: DUP3
00000eac: ADD
00000ead: MSTORE
00000eae: PUSH1 0x0c
00000eb0: PUSH1 0x24
00000eb2: DUP3
00000eb3: ADD
00000eb4: MSTORE
00000eb5: PUSH12 0x24a82fa327a92124a22222a7
00000ec2: PUSH1 0xa1
00000ec4: SHL
00000ec5: PUSH1 0x44
00000ec7: DUP3
00000ec8: ADD
00000ec9: MSTORE
00000eca: SWAP1
00000ecb: MLOAD
00000ecc: SWAP1
00000ecd: DUP2
00000ece: SWAP1
00000ecf: SUB
00000ed0: PUSH1 0x64
00000ed2: ADD
00000ed3: SWAP1
00000ed4: REVERT
00000ed5: JUMPDEST
00000ed6: PUSH1 0x16
00000ed8: DUP2
00000ed9: SWAP1
00000eda: SSTORE
00000edb: PUSH1 0x40
00000edd: DUP1
00000ede: MLOAD
00000edf: DUP3
00000ee0: DUP2
00000ee1: MSTORE
00000ee2: SWAP1
00000ee3: MLOAD
00000ee4: PUSH32 0x6147eb4c6e239797de749cd53345ceb99d1324d4a5be7c8c2a06c8fcfdb273e8
00000f05: SWAP2
00000f06: DUP2
00000f07: SWAP1
00000f08: SUB
00000f09: PUSH1 0x20
00000f0b: ADD
00000f0c: SWAP1
00000f0d: LOG1
00000f0e: POP
00000f0f: JUMP
00000f10: JUMPDEST
00000f11: PUSH1 0x0b
00000f13: SLOAD
00000f14: DUP2
00000f15: JUMP
00000f16: JUMPDEST
00000f17: PUSH1 0x0c
00000f19: SLOAD
00000f1a: PUSH1 0x01
00000f1c: PUSH1 0x01
00000f1e: PUSH1 0xa0
00000f20: SHL
00000f21: SUB
00000f22: AND
00000f23: CALLER
00000f24: EQ
00000f25: PUSH2 0x0f64
00000f28: JUMPI
00000f29: PUSH1 0x40
00000f2b: DUP1
00000f2c: MLOAD
00000f2d: PUSH3 0x461bcd
00000f31: PUSH1 0xe5
00000f33: SHL
00000f34: DUP2
00000f35: MSTORE
00000f36: PUSH1 0x20
00000f38: PUSH1 0x04
00000f3a: DUP3
00000f3b: ADD
00000f3c: MSTORE
00000f3d: PUSH1 0x0c
00000f3f: PUSH1 0x24
00000f41: DUP3
00000f42: ADD
00000f43: MSTORE
00000f44: PUSH12 0x24a82fa327a92124a22222a7
00000f51: PUSH1 0xa1
00000f53: SHL
00000f54: PUSH1 0x44
00000f56: DUP3
00000f57: ADD
00000f58: MSTORE
00000f59: SWAP1
00000f5a: MLOAD
00000f5b: SWAP1
00000f5c: DUP2
00000f5d: SWAP1
00000f5e: SUB
00000f5f: PUSH1 0x64
00000f61: ADD
00000f62: SWAP1
00000f63: REVERT
00000f64: JUMPDEST
00000f65: PUSH1 0x15
00000f67: DUP2
00000f68: SWAP1
00000f69: SSTORE
00000f6a: PUSH1 0x40
00000f6c: DUP1
00000f6d: MLOAD
00000f6e: DUP3
00000f6f: DUP2
00000f70: MSTORE
00000f71: SWAP1
00000f72: MLOAD
00000f73: PUSH32 0x3b339c4ba98a20478eefc95650e25b07d84a3220f5fab02b19e5b49152a4bf10
00000f94: SWAP2
00000f95: DUP2
00000f96: SWAP1
00000f97: SUB
00000f98: PUSH1 0x20
00000f9a: ADD
00000f9b: SWAP1
00000f9c: LOG1
00000f9d: POP
00000f9e: JUMP
00000f9f: JUMPDEST
00000fa0: PUSH1 0x00
00000fa2: PUSH1 0x17
00000fa4: SLOAD
00000fa5: PUSH1 0x01
00000fa7: EQ
00000fa8: PUSH2 0x0fe4
00000fab: JUMPI
00000fac: PUSH1 0x40
00000fae: DUP1
00000faf: MLOAD
00000fb0: PUSH3 0x461bcd
00000fb4: PUSH1 0xe5
00000fb6: SHL
00000fb7: DUP2
00000fb8: MSTORE
00000fb9: PUSH1 0x20
00000fbb: PUSH1 0x04
00000fbd: DUP3
00000fbe: ADD
00000fbf: MSTORE
00000fc0: PUSH1 0x09
00000fc2: PUSH1 0x24
00000fc4: DUP3
00000fc5: ADD
00000fc6: MSTORE
00000fc7: PUSH9 0x125417d313d0d2d151
00000fd1: PUSH1 0xba
00000fd3: SHL
00000fd4: PUSH1 0x44
00000fd6: DUP3
00000fd7: ADD
00000fd8: MSTORE
00000fd9: SWAP1
00000fda: MLOAD
00000fdb: SWAP1
00000fdc: DUP2
00000fdd: SWAP1
00000fde: SUB
00000fdf: PUSH1 0x64
00000fe1: ADD
00000fe2: SWAP1
00000fe3: REVERT
00000fe4: JUMPDEST
00000fe5: PUSH1 0x00
00000fe7: PUSH1 0x17
00000fe9: SSTORE
00000fea: PUSH2 0x0ff2
00000fed: CALLER
00000fee: PUSH2 0x3282
00000ff1: JUMP
00000ff2: JUMPDEST
00000ff3: PUSH2 0x103c
00000ff6: JUMPI
00000ff7: PUSH1 0x40
00000ff9: DUP1
00000ffa: MLOAD
00000ffb: PUSH3 0x461bcd
00000fff: PUSH1 0xe5
00001001: SHL
00001002: DUP2
00001003: MSTORE
00001004: PUSH1 0x20
00001006: PUSH1 0x04
00001008: DUP3
00001009: ADD
0000100a: MSTORE
0000100b: PUSH1 0x16
0000100d: PUSH1 0x24
0000100f: DUP3
00001010: ADD
00001011: MSTORE
00001012: PUSH22 0x24a82faaa720aaaa2427a924ad22a22faa2920a222a9
00001029: PUSH1 0x51
0000102b: SHL
0000102c: PUSH1 0x44
0000102e: DUP3
0000102f: ADD
00001030: MSTORE
00001031: SWAP1
00001032: MLOAD
00001033: SWAP1
00001034: DUP2
00001035: SWAP1
00001036: SUB
00001037: PUSH1 0x64
00001039: ADD
0000103a: SWAP1
0000103b: REVERT
0000103c: JUMPDEST
0000103d: PUSH1 0x01
0000103f: PUSH1 0x01
00001041: PUSH1 0xa0
00001043: SHL
00001044: SUB
00001045: DUP3
00001046: AND
00001047: PUSH2 0x1089
0000104a: JUMPI
0000104b: PUSH1 0x40
0000104d: DUP1
0000104e: MLOAD
0000104f: PUSH3 0x461bcd
00001053: PUSH1 0xe5
00001055: SHL
00001056: DUP2
00001057: MSTORE
00001058: PUSH1 0x20
0000105a: PUSH1 0x04
0000105c: DUP3
0000105d: ADD
0000105e: MSTORE
0000105f: PUSH1 0x0f
00001061: PUSH1 0x24
00001063: DUP3
00001064: ADD
00001065: MSTORE
00001066: PUSH15 0x49505f414444524553535f5a45524f
00001076: PUSH1 0x88
00001078: SHL
00001079: PUSH1 0x44
0000107b: DUP3
0000107c: ADD
0000107d: MSTORE
0000107e: SWAP1
0000107f: MLOAD
00001080: SWAP1
00001081: DUP2
00001082: SWAP1
00001083: SUB
00001084: PUSH1 0x64
00001086: ADD
00001087: SWAP1
00001088: REVERT
00001089: JUMPDEST
0000108a: PUSH1 0x00
0000108c: DUP1
0000108d: PUSH2 0x1094
00001090: PUSH2 0x0b77
00001093: JUMP
00001094: JUMPDEST
00001095: POP
00001096: PUSH1 0x0d
00001098: SLOAD
00001099: PUSH1 0x0e
0000109b: SLOAD
0000109c: SWAP3
0000109d: SWAP5
0000109e: POP
0000109f: SWAP1
000010a0: SWAP3
000010a1: POP
000010a2: PUSH1 0x00
000010a4: SWAP2
000010a5: DUP3
000010a6: SWAP2
000010a7: PUSH2 0x10bc
000010aa: SWAP2
000010ab: PUSH1 0x01
000010ad: PUSH1 0x01
000010af: PUSH1 0xa0
000010b1: SHL
000010b2: SUB
000010b3: SWAP2
000010b4: DUP3
000010b5: AND
000010b6: SWAP2
000010b7: AND
000010b8: PUSH2 0x32c9
000010bb: JUMP
000010bc: JUMPDEST
000010bd: SWAP1
000010be: SWAP3
000010bf: POP
000010c0: SWAP1
000010c1: POP
000010c2: PUSH1 0x00
000010c4: PUSH2 0x10d6
000010c7: DUP4
000010c8: PUSH1 0x01
000010ca: PUSH1 0x01
000010cc: PUSH1 0x70
000010ce: SHL
000010cf: SUB
000010d0: DUP8
000010d1: AND
000010d2: PUSH2 0x314e
000010d5: JUMP
000010d6: JUMPDEST
000010d7: SWAP1
000010d8: POP
000010d9: PUSH1 0x00
000010db: PUSH2 0x10ed
000010de: DUP4
000010df: PUSH1 0x01
000010e1: PUSH1 0x01
000010e3: PUSH1 0x70
000010e5: SHL
000010e6: SUB
000010e7: DUP8
000010e8: AND
000010e9: PUSH2 0x314e
000010ec: JUMP
000010ed: JUMPDEST
000010ee: SWAP1
000010ef: POP
000010f0: PUSH2 0x10f7
000010f3: PUSH2 0x3486
000010f6: JUMP
000010f7: JUMPDEST
000010f8: PUSH1 0x04
000010fa: SLOAD
000010fb: DUP1
000010fc: PUSH2 0x1131
000010ff: JUMPI
00001100: PUSH2 0x111d
00001103: PUSH2 0x03e8
00001106: PUSH2 0x1117
00001109: PUSH2 0x1112
0000110c: DUP7
0000110d: DUP7
0000110e: PUSH2 0x3534
00001111: JUMP
00001112: JUMPDEST
00001113: PUSH2 0x3592
00001116: JUMP
00001117: JUMPDEST
00001118: SWAP1
00001119: PUSH2 0x314e
0000111c: JUMP
0000111d: JUMPDEST
0000111e: SWAP8
0000111f: POP
00001120: PUSH2 0x112c
00001123: PUSH1 0x00
00001125: PUSH2 0x03e8
00001128: PUSH2 0x35e3
0000112b: JUMP
0000112c: JUMPDEST
0000112d: PUSH2 0x1174
00001130: JUMP
00001131: JUMPDEST
00001132: PUSH2 0x1171
00001135: PUSH1 0x01
00001137: PUSH1 0x01
00001139: PUSH1 0x70
0000113b: SHL
0000113c: SUB
0000113d: DUP9
0000113e: AND
0000113f: PUSH2 0x1148
00001142: DUP6
00001143: DUP5
00001144: PUSH2 0x3534
00001147: JUMP
00001148: JUMPDEST
00001149: DUP2
0000114a: PUSH2 0x114f
0000114d: JUMPI
0000114e: INVALID
0000114f: JUMPDEST
00001150: DIV
00001151: PUSH1 0x01
00001153: PUSH1 0x01
00001155: PUSH1 0x70
00001157: SHL
00001158: SUB
00001159: DUP9
0000115a: AND
0000115b: PUSH2 0x1164
0000115e: DUP6
0000115f: DUP6
00001160: PUSH2 0x3534
00001163: JUMP
00001164: JUMPDEST
00001165: DUP2
00001166: PUSH2 0x116b
00001169: JUMPI
0000116a: INVALID
0000116b: JUMPDEST
0000116c: DIV
0000116d: PUSH2 0x366e
00001170: JUMP
00001171: JUMPDEST
00001172: SWAP8
00001173: POP
00001174: JUMPDEST
00001175: PUSH1 0x00
00001177: DUP9
00001178: GT
00001179: PUSH2 0x11c9
0000117c: JUMPI
0000117d: PUSH1 0x40
0000117f: DUP1
00001180: MLOAD
00001181: PUSH3 0x461bcd
00001185: PUSH1 0xe5
00001187: SHL
00001188: DUP2
00001189: MSTORE
0000118a: PUSH1 0x20
0000118c: PUSH1 0x04
0000118e: DUP3
0000118f: ADD
00001190: DUP2
00001191: SWAP1
00001192: MSTORE
00001193: PUSH1 0x24
00001195: DUP3
00001196: ADD
00001197: MSTORE
00001198: PUSH32 0x49505f494e53554646494349454e545f4c49515549444954595f4d494e544544
000011b9: PUSH1 0x44
000011bb: DUP3
000011bc: ADD
000011bd: MSTORE
000011be: SWAP1
000011bf: MLOAD
000011c0: SWAP1
000011c1: DUP2
000011c2: SWAP1
000011c3: SUB
000011c4: PUSH1 0x64
000011c6: ADD
000011c7: SWAP1
000011c8: REVERT
000011c9: JUMPDEST
000011ca: PUSH1 0x00
000011cc: PUSH2 0x11f2
000011cf: PUSH8 0x0de0b6b3a7640000
000011d8: PUSH2 0x11ec
000011db: PUSH1 0x09
000011dd: SLOAD
000011de: DUP13
000011df: PUSH2 0x3534
000011e2: SWAP1
000011e3: SWAP2
000011e4: SWAP1
000011e5: PUSH4 0xffffffff
000011ea: AND
000011eb: JUMP
000011ec: JUMPDEST
000011ed: SWAP1
000011ee: PUSH2 0x3684
000011f1: JUMP
000011f2: JUMPDEST
000011f3: SWAP1
000011f4: POP
000011f5: PUSH1 0x00
000011f7: PUSH2 0x1200
000011fa: DUP11
000011fb: DUP4
000011fc: PUSH2 0x314e
000011ff: JUMP
00001200: JUMPDEST
00001201: SWAP1
00001202: POP
00001203: PUSH2 0x120c
00001206: DUP12
00001207: DUP3
00001208: PUSH2 0x35e3
0000120b: JUMP
0000120c: JUMPDEST
0000120d: PUSH1 0x0c
0000120f: SLOAD
00001210: PUSH2 0x1222
00001213: SWAP1
00001214: PUSH1 0x01
00001216: PUSH1 0x01
00001218: PUSH1 0xa0
0000121a: SHL
0000121b: SUB
0000121c: AND
0000121d: DUP4
0000121e: PUSH2 0x35e3
00001221: JUMP
00001222: JUMPDEST
00001223: PUSH2 0x122c
00001226: DUP8
00001227: DUP8
00001228: PUSH2 0x36df
0000122b: JUMP
0000122c: JUMPDEST
0000122d: PUSH1 0x40
0000122f: MLOAD
00001230: PUSH1 0x01
00001232: PUSH1 0x01
00001234: PUSH1 0xa0
00001236: SHL
00001237: SUB
00001238: DUP13
00001239: AND
0000123a: SWAP1
0000123b: CALLER
0000123c: SWAP1
0000123d: PUSH32 0xc5004d0de103a4ce335ec7dfbb178f69e81ecd773d402c331dafc66c465a020a
0000125e: SWAP1
0000125f: PUSH1 0x00
00001261: SWAP1
00001262: LOG3
00001263: POP
00001264: POP
00001265: PUSH1 0x01
00001267: PUSH1 0x17
00001269: SSTORE
0000126a: POP
0000126b: SWAP6
0000126c: SWAP8
0000126d: SWAP7
0000126e: POP
0000126f: POP
00001270: POP
00001271: POP
00001272: POP
00001273: POP
00001274: POP
00001275: JUMP
00001276: JUMPDEST
00001277: PUSH1 0x17
00001279: SLOAD
0000127a: PUSH1 0x01
0000127c: EQ
0000127d: PUSH2 0x12b9
00001280: JUMPI
00001281: PUSH1 0x40
00001283: DUP1
00001284: MLOAD
00001285: PUSH3 0x461bcd
00001289: PUSH1 0xe5
0000128b: SHL
0000128c: DUP2
0000128d: MSTORE
0000128e: PUSH1 0x20
00001290: PUSH1 0x04
00001292: DUP3
00001293: ADD
00001294: MSTORE
00001295: PUSH1 0x09
00001297: PUSH1 0x24
00001299: DUP3
0000129a: ADD
0000129b: MSTORE
0000129c: PUSH9 0x125417d313d0d2d151
000012a6: PUSH1 0xba
000012a8: SHL
000012a9: PUSH1 0x44
000012ab: DUP3
000012ac: ADD
000012ad: MSTORE
000012ae: SWAP1
000012af: MLOAD
000012b0: SWAP1
000012b1: DUP2
000012b2: SWAP1
000012b3: SUB
000012b4: PUSH1 0x64
000012b6: ADD
000012b7: SWAP1
000012b8: REVERT
000012b9: JUMPDEST
000012ba: PUSH1 0x00
000012bc: PUSH1 0x17
000012be: SSTORE
000012bf: PUSH2 0x12c7
000012c2: CALLER
000012c3: PUSH2 0x3282
000012c6: JUMP
000012c7: JUMPDEST
000012c8: PUSH2 0x1311
000012cb: JUMPI
000012cc: PUSH1 0x40
000012ce: DUP1
000012cf: MLOAD
000012d0: PUSH3 0x461bcd
000012d4: PUSH1 0xe5
000012d6: SHL
000012d7: DUP2
000012d8: MSTORE
000012d9: PUSH1 0x20
000012db: PUSH1 0x04
000012dd: DUP3
000012de: ADD
000012df: MSTORE
000012e0: PUSH1 0x16
000012e2: PUSH1 0x24
000012e4: DUP3
000012e5: ADD
000012e6: MSTORE
000012e7: PUSH22 0x24a82faaa720aaaa2427a924ad22a22faa2920a222a9
000012fe: PUSH1 0x51
00001300: SHL
00001301: PUSH1 0x44
00001303: DUP3
00001304: ADD
00001305: MSTORE
00001306: SWAP1
00001307: MLOAD
00001308: SWAP1
00001309: DUP2
0000130a: SWAP1
0000130b: SUB
0000130c: PUSH1 0x64
0000130e: ADD
0000130f: SWAP1
00001310: REVERT
00001311: JUMPDEST
00001312: PUSH1 0x01
00001314: PUSH1 0x01
00001316: PUSH1 0xa0
00001318: SHL
00001319: SUB
0000131a: DUP2
0000131b: AND
0000131c: PUSH2 0x135e
0000131f: JUMPI
00001320: PUSH1 0x40
00001322: DUP1
00001323: MLOAD
00001324: PUSH3 0x461bcd
00001328: PUSH1 0xe5
0000132a: SHL
0000132b: DUP2
0000132c: MSTORE
0000132d: PUSH1 0x20
0000132f: PUSH1 0x04
00001331: DUP3
00001332: ADD
00001333: MSTORE
00001334: PUSH1 0x0f
00001336: PUSH1 0x24
00001338: DUP3
00001339: ADD
0000133a: MSTORE
0000133b: PUSH15 0x49505f414444524553535f5a45524f
0000134b: PUSH1 0x88
0000134d: SHL
0000134e: PUSH1 0x44
00001350: DUP3
00001351: ADD
00001352: MSTORE
00001353: SWAP1
00001354: MLOAD
00001355: SWAP1
00001356: DUP2
00001357: SWAP1
00001358: SUB
00001359: PUSH1 0x64
0000135b: ADD
0000135c: SWAP1
0000135d: REVERT
0000135e: JUMPDEST
0000135f: PUSH1 0x00
00001361: DUP4
00001362: GT
00001363: DUP1
00001364: PUSH2 0x136d
00001367: JUMPI
00001368: POP
00001369: PUSH1 0x00
0000136b: DUP3
0000136c: GT
0000136d: JUMPDEST
0000136e: PUSH2 0x13be
00001371: JUMPI
00001372: PUSH1 0x40
00001374: DUP1
00001375: MLOAD
00001376: PUSH3 0x461bcd
0000137a: PUSH1 0xe5
0000137c: SHL
0000137d: DUP2
0000137e: MSTORE
0000137f: PUSH1 0x20
00001381: PUSH1 0x04
00001383: DUP3
00001384: ADD
00001385: MSTORE
00001386: PUSH1 0x1d
00001388: PUSH1 0x24
0000138a: DUP3
0000138b: ADD
0000138c: MSTORE
0000138d: PUSH32 0x49505f494e53554646494349454e545f4f55545055545f414d4f554e54000000
000013ae: PUSH1 0x44
000013b0: DUP3
000013b1: ADD
000013b2: MSTORE
000013b3: SWAP1
000013b4: MLOAD
000013b5: SWAP1
000013b6: DUP2
000013b7: SWAP1
000013b8: SUB
000013b9: PUSH1 0x64
000013bb: ADD
000013bc: SWAP1
000013bd: REVERT
000013be: JUMPDEST
000013bf: DUP3
000013c0: ISZERO
000013c1: DUP1
000013c2: PUSH2 0x13c9
000013c5: JUMPI
000013c6: POP
000013c7: DUP2
000013c8: ISZERO
000013c9: JUMPDEST
000013ca: PUSH2 0x141a
000013cd: JUMPI
000013ce: PUSH1 0x40
000013d0: DUP1
000013d1: MLOAD
000013d2: PUSH3 0x461bcd
000013d6: PUSH1 0xe5
000013d8: SHL
000013d9: DUP2
000013da: MSTORE
000013db: PUSH1 0x20
000013dd: PUSH1 0x04
000013df: DUP3
000013e0: ADD
000013e1: MSTORE
000013e2: PUSH1 0x1d
000013e4: PUSH1 0x24
000013e6: DUP3
000013e7: ADD
000013e8: MSTORE
000013e9: PUSH32 0x49505f4d554c5449504c455f4f5554505554535f535045434946494544000000
0000140a: PUSH1 0x44
0000140c: DUP3
0000140d: ADD
0000140e: MSTORE
0000140f: SWAP1
00001410: MLOAD
00001411: SWAP1
00001412: DUP2
00001413: SWAP1
00001414: SUB
00001415: PUSH1 0x64
00001417: ADD
00001418: SWAP1
00001419: REVERT
0000141a: JUMPDEST
0000141b: PUSH1 0x00
0000141d: DUP1
0000141e: PUSH2 0x1425
00001421: PUSH2 0x0b77
00001424: JUMP
00001425: JUMPDEST
00001426: POP
00001427: SWAP2
00001428: POP
00001429: SWAP2
0000142a: POP
0000142b: DUP2
0000142c: PUSH1 0x01
0000142e: PUSH1 0x01
00001430: PUSH1 0x70
00001432: SHL
00001433: SUB
00001434: AND
00001435: DUP6
00001436: LT
00001437: DUP1
00001438: ISZERO
00001439: PUSH2 0x144a
0000143c: JUMPI
0000143d: POP
0000143e: DUP1
0000143f: PUSH1 0x01
00001441: PUSH1 0x01
00001443: PUSH1 0x70
00001445: SHL
00001446: SUB
00001447: AND
00001448: DUP5
00001449: LT
0000144a: JUMPDEST
0000144b: PUSH2 0x149b
0000144e: JUMPI
0000144f: PUSH1 0x40
00001451: DUP1
00001452: MLOAD
00001453: PUSH3 0x461bcd
00001457: PUSH1 0xe5
00001459: SHL
0000145a: DUP2
0000145b: MSTORE
0000145c: PUSH1 0x20
0000145e: PUSH1 0x04
00001460: DUP3
00001461: ADD
00001462: MSTORE
00001463: PUSH1 0x19
00001465: PUSH1 0x24
00001467: DUP3
00001468: ADD
00001469: MSTORE
0000146a: PUSH32 0x49505f494e53554646494349454e545f4c495155494449545900000000000000
0000148b: PUSH1 0x44
0000148d: DUP3
0000148e: ADD
0000148f: MSTORE
00001490: SWAP1
00001491: MLOAD
00001492: SWAP1
00001493: DUP2
00001494: SWAP1
00001495: SUB
00001496: PUSH1 0x64
00001498: ADD
00001499: SWAP1
0000149a: REVERT
0000149b: JUMPDEST
0000149c: PUSH2 0x14a3
0000149f: PUSH2 0x3486
000014a2: JUMP
000014a3: JUMPDEST
000014a4: PUSH1 0x0d
000014a6: SLOAD
000014a7: PUSH1 0x0e
000014a9: SLOAD
000014aa: PUSH1 0x01
000014ac: PUSH1 0x01
000014ae: PUSH1 0xa0
000014b0: SHL
000014b1: SUB
000014b2: SWAP2
000014b3: DUP3
000014b4: AND
000014b5: SWAP2
000014b6: SWAP1
000014b7: DUP2
000014b8: AND
000014b9: SWAP1
000014ba: DUP6
000014bb: AND
000014bc: DUP3
000014bd: EQ
000014be: DUP1
000014bf: ISZERO
000014c0: SWAP1
000014c1: PUSH2 0x14dc
000014c4: JUMPI
000014c5: POP
000014c6: DUP1
000014c7: PUSH1 0x01
000014c9: PUSH1 0x01
000014cb: PUSH1 0xa0
000014cd: SHL
000014ce: SUB
000014cf: AND
000014d0: DUP6
000014d1: PUSH1 0x01
000014d3: PUSH1 0x01
000014d5: PUSH1 0xa0
000014d7: SHL
000014d8: SUB
000014d9: AND
000014da: EQ
000014db: ISZERO
000014dc: JUMPDEST
000014dd: PUSH2 0x151d
000014e0: JUMPI
000014e1: PUSH1 0x40
000014e3: DUP1
000014e4: MLOAD
000014e5: PUSH3 0x461bcd
000014e9: PUSH1 0xe5
000014eb: SHL
000014ec: DUP2
000014ed: MSTORE
000014ee: PUSH1 0x20
000014f0: PUSH1 0x04
000014f2: DUP3
000014f3: ADD
000014f4: MSTORE
000014f5: PUSH1 0x0d
000014f7: PUSH1 0x24
000014f9: DUP3
000014fa: ADD
000014fb: MSTORE
000014fc: PUSH13 0x49505f494e56414c49445f544f
0000150a: PUSH1 0x98
0000150c: SHL
0000150d: PUSH1 0x44
0000150f: DUP3
00001510: ADD
00001511: MSTORE
00001512: SWAP1
00001513: MLOAD
00001514: SWAP1
00001515: DUP2
00001516: SWAP1
00001517: SUB
00001518: PUSH1 0x64
0000151a: ADD
0000151b: SWAP1
0000151c: REVERT
0000151d: JUMPDEST
0000151e: DUP7
0000151f: ISZERO
00001520: PUSH2 0x152e
00001523: JUMPI
00001524: PUSH2 0x152e
00001527: DUP3
00001528: DUP7
00001529: DUP10
0000152a: PUSH2 0x2ec7
0000152d: JUMP
0000152e: JUMPDEST
0000152f: DUP6
00001530: ISZERO
00001531: PUSH2 0x153f
00001534: JUMPI
00001535: PUSH2 0x153f
00001538: DUP2
00001539: DUP7
0000153a: DUP9
0000153b: PUSH2 0x2ec7
0000153e: JUMP
0000153f: JUMPDEST
00001540: POP
00001541: POP
00001542: PUSH1 0x0d
00001544: SLOAD
00001545: PUSH1 0x0e
00001547: SLOAD
00001548: PUSH1 0x00
0000154a: SWAP2
0000154b: DUP3
0000154c: SWAP2
0000154d: PUSH2 0x1562
00001550: SWAP2
00001551: PUSH1 0x01
00001553: PUSH1 0x01
00001555: PUSH1 0xa0
00001557: SHL
00001558: SUB
00001559: SWAP1
0000155a: DUP2
0000155b: AND
0000155c: SWAP2
0000155d: AND
0000155e: PUSH2 0x32c9
00001561: JUMP
00001562: JUMPDEST
00001563: SWAP2
00001564: POP
00001565: SWAP2
00001566: POP
00001567: PUSH1 0x00
00001569: DUP8
0000156a: DUP6
0000156b: PUSH1 0x01
0000156d: PUSH1 0x01
0000156f: PUSH1 0x70
00001571: SHL
00001572: SUB
00001573: AND
00001574: SUB
00001575: DUP4
00001576: GT
00001577: PUSH2 0x1581
0000157a: JUMPI
0000157b: PUSH1 0x00
0000157d: PUSH2 0x1590
00001580: JUMP
00001581: JUMPDEST
00001582: DUP8
00001583: DUP6
00001584: PUSH1 0x01
00001586: PUSH1 0x01
00001588: PUSH1 0x70
0000158a: SHL
0000158b: SUB
0000158c: AND
0000158d: SUB
0000158e: DUP4
0000158f: SUB
00001590: JUMPDEST
00001591: SWAP1
00001592: POP
00001593: PUSH1 0x00
00001595: DUP8
00001596: DUP6
00001597: PUSH1 0x01
00001599: PUSH1 0x01
0000159b: PUSH1 0x70
0000159d: SHL
0000159e: SUB
0000159f: AND
000015a0: SUB
000015a1: DUP4
000015a2: GT
000015a3: PUSH2 0x15ad
000015a6: JUMPI
000015a7: PUSH1 0x00
000015a9: PUSH2 0x15bc
000015ac: JUMP
000015ad: JUMPDEST
000015ae: DUP8
000015af: DUP6
000015b0: PUSH1 0x01
000015b2: PUSH1 0x01
000015b4: PUSH1 0x70
000015b6: SHL
000015b7: SUB
000015b8: AND
000015b9: SUB
000015ba: DUP4
000015bb: SUB
000015bc: JUMPDEST
000015bd: SWAP1
000015be: POP
000015bf: PUSH1 0x00
000015c1: DUP3
000015c2: GT
000015c3: DUP1
000015c4: PUSH2 0x15cd
000015c7: JUMPI
000015c8: POP
000015c9: PUSH1 0x00
000015cb: DUP2
000015cc: GT
000015cd: JUMPDEST
000015ce: PUSH2 0x161e
000015d1: JUMPI
000015d2: PUSH1 0x40
000015d4: DUP1
000015d5: MLOAD
000015d6: PUSH3 0x461bcd
000015da: PUSH1 0xe5
000015dc: SHL
000015dd: DUP2
000015de: MSTORE
000015df: PUSH1 0x20
000015e1: PUSH1 0x04
000015e3: DUP3
000015e4: ADD
000015e5: MSTORE
000015e6: PUSH1 0x1c
000015e8: PUSH1 0x24
000015ea: DUP3
000015eb: ADD
000015ec: MSTORE
000015ed: PUSH32 0x49505f494e53554646494349454e545f494e5055545f414d4f554e5400000000
0000160e: PUSH1 0x44
00001610: DUP3
00001611: ADD
00001612: MSTORE
00001613: SWAP1
00001614: MLOAD
00001615: SWAP1
00001616: DUP2
00001617: SWAP1
00001618: SUB
00001619: PUSH1 0x64
0000161b: ADD
0000161c: SWAP1
0000161d: REVERT
0000161e: JUMPDEST
0000161f: DUP9
00001620: ISZERO
00001621: PUSH2 0x178b
00001624: JUMPI
00001625: PUSH1 0x00
00001627: DUP1
00001628: PUSH2 0x162f
0000162b: PUSH2 0x1949
0000162e: JUMP
0000162f: JUMPDEST
00001630: POP
00001631: SWAP2
00001632: POP
00001633: SWAP2
00001634: POP
00001635: PUSH1 0x00
00001637: PUSH2 0x1657
0000163a: PUSH8 0x0de0b6b3a7640000
00001643: PUSH2 0x11ec
00001646: PUSH1 0x0b
00001648: SLOAD
00001649: DUP8
0000164a: PUSH2 0x3534
0000164d: SWAP1
0000164e: SWAP2
0000164f: SWAP1
00001650: PUSH4 0xffffffff
00001655: AND
00001656: JUMP
00001657: JUMPDEST
00001658: PUSH1 0x0f
0000165a: SLOAD
0000165b: SWAP1
0000165c: SWAP2
0000165d: POP
0000165e: PUSH1 0x00
00001660: SWAP1
00001661: PUSH1 0x01
00001663: PUSH1 0x01
00001665: PUSH1 0xa0
00001667: SHL
00001668: SUB
00001669: AND
0000166a: PUSH4 0x071f0653
0000166f: PUSH2 0x1678
00001672: DUP10
00001673: DUP6
00001674: PUSH2 0x314e
00001677: JUMP
00001678: JUMPDEST
00001679: DUP7
0000167a: DUP7
0000167b: PUSH1 0x40
0000167d: MLOAD
0000167e: DUP5
0000167f: PUSH4 0xffffffff
00001684: AND
00001685: PUSH1 0xe0
00001687: SHL
00001688: DUP2
00001689: MSTORE
0000168a: PUSH1 0x04
0000168c: ADD
0000168d: DUP1
0000168e: DUP5
0000168f: DUP2
00001690: MSTORE
00001691: PUSH1 0x20
00001693: ADD
00001694: DUP4
00001695: PUSH1 0x01
00001697: PUSH1 0x01
00001699: PUSH1 0x70
0000169b: SHL
0000169c: SUB
0000169d: AND
0000169e: DUP2
0000169f: MSTORE
000016a0: PUSH1 0x20
000016a2: ADD
000016a3: DUP3
000016a4: PUSH1 0x01
000016a6: PUSH1 0x01
000016a8: PUSH1 0x70
000016aa: SHL
000016ab: SUB
000016ac: AND
000016ad: DUP2
000016ae: MSTORE
000016af: PUSH1 0x20
000016b1: ADD
000016b2: SWAP4
000016b3: POP
000016b4: POP
000016b5: POP
000016b6: POP
000016b7: PUSH1 0x20
000016b9: PUSH1 0x40
000016bb: MLOAD
000016bc: DUP1
000016bd: DUP4
000016be: SUB
000016bf: DUP2
000016c0: DUP7
000016c1: DUP1
000016c2: EXTCODESIZE
000016c3: ISZERO
000016c4: DUP1
000016c5: ISZERO
000016c6: PUSH2 0x16ce
000016c9: JUMPI
000016ca: PUSH1 0x00
000016cc: DUP1
000016cd: REVERT
000016ce: JUMPDEST
000016cf: POP
000016d0: GAS
000016d1: STATICCALL
000016d2: ISZERO
000016d3: DUP1
000016d4: ISZERO
000016d5: PUSH2 0x16e2
000016d8: JUMPI
000016d9: RETURNDATASIZE
000016da: PUSH1 0x00
000016dc: DUP1
000016dd: RETURNDATACOPY
000016de: RETURNDATASIZE
000016df: PUSH1 0x00
000016e1: REVERT
000016e2: JUMPDEST
000016e3: POP
000016e4: POP
000016e5: POP
000016e6: POP
000016e7: PUSH1 0x40
000016e9: MLOAD
000016ea: RETURNDATASIZE
000016eb: PUSH1 0x20
000016ed: DUP2
000016ee: LT
000016ef: ISZERO
000016f0: PUSH2 0x16f8
000016f3: JUMPI
000016f4: PUSH1 0x00
000016f6: DUP1
000016f7: REVERT
000016f8: JUMPDEST
000016f9: POP
000016fa: MLOAD
000016fb: SWAP1
000016fc: POP
000016fd: DUP1
000016fe: DUP9
000016ff: LT
00001700: ISZERO
00001701: PUSH2 0x1743
00001704: JUMPI
00001705: PUSH1 0x40
00001707: DUP1
00001708: MLOAD
00001709: PUSH3 0x461bcd
0000170d: PUSH1 0xe5
0000170f: SHL
00001710: DUP2
00001711: MSTORE
00001712: PUSH1 0x20
00001714: PUSH1 0x04
00001716: DUP3
00001717: ADD
00001718: MSTORE
00001719: PUSH1 0x0f
0000171b: PUSH1 0x24
0000171d: DUP3
0000171e: ADD
0000171f: MSTORE
00001720: PUSH15 0x049505f494e56414c49445f5357415
00001730: PUSH1 0x8c
00001732: SHL
00001733: PUSH1 0x44
00001735: DUP3
00001736: ADD
00001737: MSTORE
00001738: SWAP1
00001739: MLOAD
0000173a: SWAP1
0000173b: DUP2
0000173c: SWAP1
0000173d: SUB
0000173e: PUSH1 0x64
00001740: ADD
00001741: SWAP1
00001742: REVERT
00001743: JUMPDEST
00001744: PUSH2 0x174d
00001747: DUP2
00001748: DUP6
00001749: PUSH2 0x3780
0000174c: JUMP
0000174d: JUMPDEST
0000174e: PUSH1 0x00
00001750: PUSH2 0x1759
00001753: DUP10
00001754: DUP4
00001755: PUSH2 0x314e
00001758: JUMP
00001759: JUMPDEST
0000175a: SWAP1
0000175b: POP
0000175c: PUSH2 0x1765
0000175f: DUP2
00001760: DUP5
00001761: PUSH2 0x3879
00001764: JUMP
00001765: JUMPDEST
00001766: PUSH2 0x1781
00001769: PUSH2 0x1772
0000176c: DUP11
0000176d: DUP4
0000176e: PUSH2 0x314e
00001771: JUMP
00001772: JUMPDEST
00001773: PUSH2 0x177c
00001776: DUP11
00001777: DUP7
00001778: PUSH2 0x314e
0000177b: JUMP
0000177c: JUMPDEST
0000177d: PUSH2 0x389c
00001780: JUMP
00001781: JUMPDEST
00001782: POP
00001783: POP
00001784: POP
00001785: POP
00001786: POP
00001787: PUSH2 0x18e9
0000178a: JUMP
0000178b: JUMPDEST
0000178c: PUSH1 0x00
0000178e: DUP1
0000178f: PUSH2 0x1796
00001792: PUSH2 0x1949
00001795: JUMP
00001796: JUMPDEST
00001797: POP
00001798: SWAP2
00001799: POP
0000179a: SWAP2
0000179b: POP
0000179c: PUSH1 0x00
0000179e: PUSH2 0x17be
000017a1: PUSH8 0x0de0b6b3a7640000
000017aa: PUSH2 0x11ec
000017ad: PUSH1 0x0b
000017af: SLOAD
000017b0: DUP9
000017b1: PUSH2 0x3534
000017b4: SWAP1
000017b5: SWAP2
000017b6: SWAP1
000017b7: PUSH4 0xffffffff
000017bc: AND
000017bd: JUMP
000017be: JUMPDEST
000017bf: PUSH1 0x0f
000017c1: SLOAD
000017c2: SWAP1
000017c3: SWAP2
000017c4: POP
000017c5: PUSH1 0x00
000017c7: SWAP1
000017c8: PUSH1 0x01
000017ca: PUSH1 0x01
000017cc: PUSH1 0xa0
000017ce: SHL
000017cf: SUB
000017d0: AND
000017d1: PUSH4 0x4666c77a
000017d6: PUSH2 0x17df
000017d9: DUP11
000017da: DUP6
000017db: PUSH2 0x314e
000017de: JUMP
000017df: JUMPDEST
000017e0: DUP7
000017e1: DUP7
000017e2: PUSH1 0x40
000017e4: MLOAD
000017e5: DUP5
000017e6: PUSH4 0xffffffff
000017eb: AND
000017ec: PUSH1 0xe0
000017ee: SHL
000017ef: DUP2
000017f0: MSTORE
000017f1: PUSH1 0x04
000017f3: ADD
000017f4: DUP1
000017f5: DUP5
000017f6: DUP2
000017f7: MSTORE
000017f8: PUSH1 0x20
000017fa: ADD
000017fb: DUP4
000017fc: PUSH1 0x01
000017fe: PUSH1 0x01
00001800: PUSH1 0x70
00001802: SHL
00001803: SUB
00001804: AND
00001805: DUP2
00001806: MSTORE
00001807: PUSH1 0x20
00001809: ADD
0000180a: DUP3
0000180b: PUSH1 0x01
0000180d: PUSH1 0x01
0000180f: PUSH1 0x70
00001811: SHL
00001812: SUB
00001813: AND
00001814: DUP2
00001815: MSTORE
00001816: PUSH1 0x20
00001818: ADD
00001819: SWAP4
0000181a: POP
0000181b: POP
0000181c: POP
0000181d: POP
0000181e: PUSH1 0x20
00001820: PUSH1 0x40
00001822: MLOAD
00001823: DUP1
00001824: DUP4
00001825: SUB
00001826: DUP2
00001827: DUP7
00001828: DUP1
00001829: EXTCODESIZE
0000182a: ISZERO
0000182b: DUP1
0000182c: ISZERO
0000182d: PUSH2 0x1835
00001830: JUMPI
00001831: PUSH1 0x00
00001833: DUP1
00001834: REVERT
00001835: JUMPDEST
00001836: POP
00001837: GAS
00001838: STATICCALL
00001839: ISZERO
0000183a: DUP1
0000183b: ISZERO
0000183c: PUSH2 0x1849
0000183f: JUMPI
00001840: RETURNDATASIZE
00001841: PUSH1 0x00
00001843: DUP1
00001844: RETURNDATACOPY
00001845: RETURNDATASIZE
00001846: PUSH1 0x00
00001848: REVERT
00001849: JUMPDEST
0000184a: POP
0000184b: POP
0000184c: POP
0000184d: POP
0000184e: PUSH1 0x40
00001850: MLOAD
00001851: RETURNDATASIZE
00001852: PUSH1 0x20
00001854: DUP2
00001855: LT
00001856: ISZERO
00001857: PUSH2 0x185f
0000185a: JUMPI
0000185b: PUSH1 0x00
0000185d: DUP1
0000185e: REVERT
0000185f: JUMPDEST
00001860: POP
00001861: MLOAD
00001862: SWAP1
00001863: POP
00001864: DUP1
00001865: DUP8
00001866: LT
00001867: ISZERO
00001868: PUSH2 0x18aa
0000186b: JUMPI
0000186c: PUSH1 0x40
0000186e: DUP1
0000186f: MLOAD
00001870: PUSH3 0x461bcd
00001874: PUSH1 0xe5
00001876: SHL
00001877: DUP2
00001878: MSTORE
00001879: PUSH1 0x20
0000187b: PUSH1 0x04
0000187d: DUP3
0000187e: ADD
0000187f: MSTORE
00001880: PUSH1 0x0f
00001882: PUSH1 0x24
00001884: DUP3
00001885: ADD
00001886: MSTORE
00001887: PUSH15 0x049505f494e56414c49445f5357415
00001897: PUSH1 0x8c
00001899: SHL
0000189a: PUSH1 0x44
0000189c: DUP3
0000189d: ADD
0000189e: MSTORE
0000189f: SWAP1
000018a0: MLOAD
000018a1: SWAP1
000018a2: DUP2
000018a3: SWAP1
000018a4: SUB
000018a5: PUSH1 0x64
000018a7: ADD
000018a8: SWAP1
000018a9: REVERT
000018aa: JUMPDEST
000018ab: PUSH2 0x18b4
000018ae: DUP2
000018af: DUP5
000018b0: PUSH2 0x390b
000018b3: JUMP
000018b4: JUMPDEST
000018b5: PUSH1 0x00
000018b7: PUSH2 0x18c0
000018ba: DUP9
000018bb: DUP4
000018bc: PUSH2 0x314e
000018bf: JUMP
000018c0: JUMPDEST
000018c1: SWAP1
000018c2: POP
000018c3: PUSH2 0x18cc
000018c6: DUP4
000018c7: DUP3
000018c8: PUSH2 0x3879
000018cb: JUMP
000018cc: JUMPDEST
000018cd: PUSH2 0x18e3
000018d0: PUSH2 0x18d9
000018d3: DUP11
000018d4: DUP6
000018d5: PUSH2 0x314e
000018d8: JUMP
000018d9: JUMPDEST
000018da: PUSH2 0x177c
000018dd: DUP11
000018de: DUP5
000018df: PUSH2 0x314e
000018e2: JUMP
000018e3: JUMPDEST
000018e4: POP
000018e5: POP
000018e6: POP
000018e7: POP
000018e8: POP
000018e9: JUMPDEST
000018ea: PUSH2 0x18f1
000018ed: PUSH2 0x39ff
000018f0: JUMP
000018f1: JUMPDEST
000018f2: PUSH1 0x40
000018f4: MLOAD
000018f5: PUSH1 0x01
000018f7: PUSH1 0x01
000018f9: PUSH1 0xa0
000018fb: SHL
000018fc: SUB
000018fd: DUP9
000018fe: AND
000018ff: SWAP1
00001900: CALLER
00001901: SWAP1
00001902: PUSH32 0xe1d4504fa5e661f80f16e8d613b5bc290ee6afe00a96b833a972d8e4490976e1
00001923: SWAP1
00001924: PUSH1 0x00
00001926: SWAP1
00001927: LOG3
00001928: POP
00001929: POP
0000192a: PUSH1 0x01
0000192c: PUSH1 0x17
0000192e: SSTORE
0000192f: POP
00001930: POP
00001931: POP
00001932: POP
00001933: POP
00001934: POP
00001935: POP
00001936: JUMP
00001937: JUMPDEST
00001938: PUSH1 0x05
0000193a: PUSH1 0x20
0000193c: MSTORE
0000193d: PUSH1 0x00
0000193f: SWAP1
00001940: DUP2
00001941: MSTORE
00001942: PUSH1 0x40
00001944: SWAP1
00001945: KECCAK256
00001946: SLOAD
00001947: DUP2
00001948: JUMP
00001949: JUMPDEST
0000194a: PUSH1 0x01
0000194c: SLOAD
0000194d: PUSH1 0x01
0000194f: PUSH1 0x01
00001951: PUSH1 0x70
00001953: SHL
00001954: SUB
00001955: DUP1
00001956: DUP3
00001957: AND
00001958: SWAP3
00001959: PUSH1 0x01
0000195b: PUSH1 0x70
0000195d: SHL
0000195e: DUP4
0000195f: DIV
00001960: SWAP1
00001961: SWAP2
00001962: AND
00001963: SWAP2
00001964: PUSH1 0x01
00001966: PUSH1 0xe0
00001968: SHL
00001969: SWAP1
0000196a: DIV
0000196b: PUSH4 0xffffffff
00001970: AND
00001971: SWAP1
00001972: JUMP
00001973: JUMPDEST
00001974: PUSH1 0x0c
00001976: SLOAD
00001977: PUSH1 0x01
00001979: PUSH1 0x01
0000197b: PUSH1 0xa0
0000197d: SHL
0000197e: SUB
0000197f: AND
00001980: CALLER
00001981: EQ
00001982: PUSH2 0x19c1
00001985: JUMPI
00001986: PUSH1 0x40
00001988: DUP1
00001989: MLOAD
0000198a: PUSH3 0x461bcd
0000198e: PUSH1 0xe5
00001990: SHL
00001991: DUP2
00001992: MSTORE
00001993: PUSH1 0x20
00001995: PUSH1 0x04
00001997: DUP3
00001998: ADD
00001999: MSTORE
0000199a: PUSH1 0x0c
0000199c: PUSH1 0x24
0000199e: DUP3
0000199f: ADD
000019a0: MSTORE
000019a1: PUSH12 0x24a82fa327a92124a22222a7
000019ae: PUSH1 0xa1
000019b0: SHL
000019b1: PUSH1 0x44
000019b3: DUP3
000019b4: ADD
000019b5: MSTORE
000019b6: SWAP1
000019b7: MLOAD
000019b8: SWAP1
000019b9: DUP2
000019ba: SWAP1
000019bb: SUB
000019bc: PUSH1 0x64
000019be: ADD
000019bf: SWAP1
000019c0: REVERT
000019c1: JUMPDEST
000019c2: PUSH1 0x01
000019c4: PUSH1 0x01
000019c6: PUSH1 0xa0
000019c8: SHL
000019c9: SUB
000019ca: DUP2
000019cb: AND
000019cc: PUSH2 0x1a0e
000019cf: JUMPI
000019d0: PUSH1 0x40
000019d2: DUP1
000019d3: MLOAD
000019d4: PUSH3 0x461bcd
000019d8: PUSH1 0xe5
000019da: SHL
000019db: DUP2
000019dc: MSTORE
000019dd: PUSH1 0x20
000019df: PUSH1 0x04
000019e1: DUP3
000019e2: ADD
000019e3: MSTORE
000019e4: PUSH1 0x0f
000019e6: PUSH1 0x24
000019e8: DUP3
000019e9: ADD
000019ea: MSTORE
000019eb: PUSH15 0x49505f414444524553535f5a45524f
000019fb: PUSH1 0x88
000019fd: SHL
000019fe: PUSH1 0x44
00001a00: DUP3
00001a01: ADD
00001a02: MSTORE
00001a03: SWAP1
00001a04: MLOAD
00001a05: SWAP1
00001a06: DUP2
00001a07: SWAP1
00001a08: SUB
00001a09: PUSH1 0x64
00001a0b: ADD
00001a0c: SWAP1
00001a0d: REVERT
00001a0e: JUMPDEST
00001a0f: PUSH2 0x1a17
00001a12: DUP2
00001a13: PUSH2 0x3aae
00001a16: JUMP
00001a17: JUMPDEST
00001a18: PUSH2 0x1a68
00001a1b: JUMPI
00001a1c: PUSH1 0x40
00001a1e: DUP1
00001a1f: MLOAD
00001a20: PUSH3 0x461bcd
00001a24: PUSH1 0xe5
00001a26: SHL
00001a27: DUP2
00001a28: MSTORE
00001a29: PUSH1 0x20
00001a2b: PUSH1 0x04
00001a2d: DUP3
00001a2e: ADD
00001a2f: MSTORE
00001a30: PUSH1 0x1a
00001a32: PUSH1 0x24
00001a34: DUP3
00001a35: ADD
00001a36: MSTORE
00001a37: PUSH32 0x49505f4f5241434c455f4d5553545f42455f434f4e5452414354000000000000
00001a58: PUSH1 0x44
00001a5a: DUP3
00001a5b: ADD
00001a5c: MSTORE
00001a5d: SWAP1
00001a5e: MLOAD
00001a5f: SWAP1
00001a60: DUP2
00001a61: SWAP1
00001a62: SUB
00001a63: PUSH1 0x64
00001a65: ADD
00001a66: SWAP1
00001a67: REVERT
00001a68: JUMPDEST
00001a69: PUSH1 0x0f
00001a6b: DUP1
00001a6c: SLOAD
00001a6d: PUSH1 0x01
00001a6f: PUSH1 0x01
00001a71: PUSH1 0xa0
00001a73: SHL
00001a74: SUB
00001a75: NOT
00001a76: AND
00001a77: PUSH1 0x01
00001a79: PUSH1 0x01
00001a7b: PUSH1 0xa0
00001a7d: SHL
00001a7e: SUB
00001a7f: DUP4
00001a80: AND
00001a81: OR
00001a82: SWAP1
00001a83: SSTORE
00001a84: PUSH2 0x1a8d
00001a87: PUSH1 0x00
00001a89: PUSH2 0x3ab4
00001a8c: JUMP
00001a8d: JUMPDEST
00001a8e: PUSH1 0x0f
00001a90: SLOAD
00001a91: PUSH1 0x40
00001a93: DUP1
00001a94: MLOAD
00001a95: PUSH1 0x01
00001a97: PUSH1 0x01
00001a99: PUSH1 0xa0
00001a9b: SHL
00001a9c: SUB
00001a9d: SWAP1
00001a9e: SWAP3
00001a9f: AND
00001aa0: DUP3
00001aa1: MSTORE
00001aa2: MLOAD
00001aa3: PUSH32 0xd3b5d1e0ffaeff528910f3663f0adace7694ab8241d58e17a91351ced2e08031
00001ac4: SWAP2
00001ac5: DUP2
00001ac6: SWAP1
00001ac7: SUB
00001ac8: PUSH1 0x20
00001aca: ADD
00001acb: SWAP1
00001acc: LOG1
00001acd: POP
00001ace: JUMP
00001acf: JUMPDEST
00001ad0: PUSH1 0x0f
00001ad2: SLOAD
00001ad3: PUSH1 0x01
00001ad5: PUSH1 0x01
00001ad7: PUSH1 0xa0
00001ad9: SHL
00001ada: SUB
00001adb: AND
00001adc: DUP2
00001add: JUMP
00001ade: JUMPDEST
00001adf: PUSH1 0x08
00001ae1: PUSH1 0x20
00001ae3: MSTORE
00001ae4: PUSH1 0x00
00001ae6: SWAP1
00001ae7: DUP2
00001ae8: MSTORE
00001ae9: PUSH1 0x40
00001aeb: SWAP1
00001aec: KECCAK256
00001aed: SLOAD
00001aee: DUP2
00001aef: JUMP
00001af0: JUMPDEST
00001af1: PUSH1 0x0c
00001af3: SLOAD
00001af4: PUSH1 0x01
00001af6: PUSH1 0x01
00001af8: PUSH1 0xa0
00001afa: SHL
00001afb: SUB
00001afc: AND
00001afd: CALLER
00001afe: EQ
00001aff: PUSH2 0x1b3e
00001b02: JUMPI
00001b03: PUSH1 0x40
00001b05: DUP1
00001b06: MLOAD
00001b07: PUSH3 0x461bcd
00001b0b: PUSH1 0xe5
00001b0d: SHL
00001b0e: DUP2
00001b0f: MSTORE
00001b10: PUSH1 0x20
00001b12: PUSH1 0x04
00001b14: DUP3
00001b15: ADD
00001b16: MSTORE
00001b17: PUSH1 0x0c
00001b19: PUSH1 0x24
00001b1b: DUP3
00001b1c: ADD
00001b1d: MSTORE
00001b1e: PUSH12 0x24a82fa327a92124a22222a7
00001b2b: PUSH1 0xa1
00001b2d: SHL
00001b2e: PUSH1 0x44
00001b30: DUP3
00001b31: ADD
00001b32: MSTORE
00001b33: SWAP1
00001b34: MLOAD
00001b35: SWAP1
00001b36: DUP2
00001b37: SWAP1
00001b38: SUB
00001b39: PUSH1 0x64
00001b3b: ADD
00001b3c: SWAP1
00001b3d: REVERT
00001b3e: JUMPDEST
00001b3f: PUSH1 0x12
00001b41: DUP2
00001b42: SWAP1
00001b43: SSTORE
00001b44: PUSH1 0x40
00001b46: DUP1
00001b47: MLOAD
00001b48: DUP3
00001b49: DUP2
00001b4a: MSTORE
00001b4b: SWAP1
00001b4c: MLOAD
00001b4d: PUSH32 0xb9ed71b42368ae3983f4c7f7e95d2a971bf1d0da90be88a1f2236251f228ed5a
00001b6e: SWAP2
00001b6f: DUP2
00001b70: SWAP1
00001b71: SUB
00001b72: PUSH1 0x20
00001b74: ADD
00001b75: SWAP1
00001b76: LOG1
00001b77: POP
00001b78: JUMP
00001b79: JUMPDEST
00001b7a: PUSH1 0x00
00001b7c: DUP1
00001b7d: PUSH1 0x17
00001b7f: SLOAD
00001b80: PUSH1 0x01
00001b82: EQ
00001b83: PUSH2 0x1bbf
00001b86: JUMPI
00001b87: PUSH1 0x40
00001b89: DUP1
00001b8a: MLOAD
00001b8b: PUSH3 0x461bcd
00001b8f: PUSH1 0xe5
00001b91: SHL
00001b92: DUP2
00001b93: MSTORE
00001b94: PUSH1 0x20
00001b96: PUSH1 0x04
00001b98: DUP3
00001b99: ADD
00001b9a: MSTORE
00001b9b: PUSH1 0x09
00001b9d: PUSH1 0x24
00001b9f: DUP3
00001ba0: ADD
00001ba1: MSTORE
00001ba2: PUSH9 0x125417d313d0d2d151
00001bac: PUSH1 0xba
00001bae: SHL
00001baf: PUSH1 0x44
00001bb1: DUP3
00001bb2: ADD
00001bb3: MSTORE
00001bb4: SWAP1
00001bb5: MLOAD
00001bb6: SWAP1
00001bb7: DUP2
00001bb8: SWAP1
00001bb9: SUB
00001bba: PUSH1 0x64
00001bbc: ADD
00001bbd: SWAP1
00001bbe: REVERT
00001bbf: JUMPDEST
00001bc0: PUSH1 0x00
00001bc2: PUSH1 0x17
00001bc4: SSTORE
00001bc5: PUSH2 0x1bcd
00001bc8: CALLER
00001bc9: PUSH2 0x3282
00001bcc: JUMP
00001bcd: JUMPDEST
00001bce: PUSH2 0x1c17
00001bd1: JUMPI
00001bd2: PUSH1 0x40
00001bd4: DUP1
00001bd5: MLOAD
00001bd6: PUSH3 0x461bcd
00001bda: PUSH1 0xe5
00001bdc: SHL
00001bdd: DUP2
00001bde: MSTORE
00001bdf: PUSH1 0x20
00001be1: PUSH1 0x04
00001be3: DUP3
00001be4: ADD
00001be5: MSTORE
00001be6: PUSH1 0x16
00001be8: PUSH1 0x24
00001bea: DUP3
00001beb: ADD
00001bec: MSTORE
00001bed: PUSH22 0x24a82faaa720aaaa2427a924ad22a22faa2920a222a9
00001c04: PUSH1 0x51
00001c06: SHL
00001c07: PUSH1 0x44
00001c09: DUP3
00001c0a: ADD
00001c0b: MSTORE
00001c0c: SWAP1
00001c0d: MLOAD
00001c0e: SWAP1
00001c0f: DUP2
00001c10: SWAP1
00001c11: SUB
00001c12: PUSH1 0x64
00001c14: ADD
00001c15: SWAP1
00001c16: REVERT
00001c17: JUMPDEST
00001c18: PUSH1 0x01
00001c1a: PUSH1 0x01
00001c1c: PUSH1 0xa0
00001c1e: SHL
00001c1f: SUB
00001c20: DUP4
00001c21: AND
00001c22: PUSH2 0x1c64
00001c25: JUMPI
00001c26: PUSH1 0x40
00001c28: DUP1
00001c29: MLOAD
00001c2a: PUSH3 0x461bcd
00001c2e: PUSH1 0xe5
00001c30: SHL
00001c31: DUP2
00001c32: MSTORE
00001c33: PUSH1 0x20
00001c35: PUSH1 0x04
00001c37: DUP3
00001c38: ADD
00001c39: MSTORE
00001c3a: PUSH1 0x0f
00001c3c: PUSH1 0x24
00001c3e: DUP3
00001c3f: ADD
00001c40: MSTORE
00001c41: PUSH15 0x49505f414444524553535f5a45524f
00001c51: PUSH1 0x88
00001c53: SHL
00001c54: PUSH1 0x44
00001c56: DUP3
00001c57: ADD
00001c58: MSTORE
00001c59: SWAP1
00001c5a: MLOAD
00001c5b: SWAP1
00001c5c: DUP2
00001c5d: SWAP1
00001c5e: SUB
00001c5f: PUSH1 0x64
00001c61: ADD
00001c62: SWAP1
00001c63: REVERT
00001c64: JUMPDEST
00001c65: PUSH1 0x0d
00001c67: SLOAD
00001c68: PUSH1 0x0e
00001c6a: SLOAD
00001c6b: PUSH1 0x01
00001c6d: PUSH1 0x01
00001c6f: PUSH1 0xa0
00001c71: SHL
00001c72: SUB
00001c73: SWAP2
00001c74: DUP3
00001c75: AND
00001c76: SWAP2
00001c77: AND
00001c78: PUSH1 0x00
00001c7a: DUP1
00001c7b: PUSH2 0x1c84
00001c7e: DUP5
00001c7f: DUP5
00001c80: PUSH2 0x32c9
00001c83: JUMP
00001c84: JUMPDEST
00001c85: ADDRESS
00001c86: PUSH1 0x00
00001c88: SWAP1
00001c89: DUP2
00001c8a: MSTORE
00001c8b: PUSH1 0x05
00001c8d: PUSH1 0x20
00001c8f: MSTORE
00001c90: PUSH1 0x40
00001c92: SWAP1
00001c93: KECCAK256
00001c94: SLOAD
00001c95: PUSH1 0x04
00001c97: SLOAD
00001c98: SWAP3
00001c99: SWAP5
00001c9a: POP
00001c9b: SWAP1
00001c9c: SWAP3
00001c9d: POP
00001c9e: SWAP1
00001c9f: PUSH2 0x1ca6
00001ca2: PUSH2 0x3486
00001ca5: JUMP
00001ca6: JUMPDEST
00001ca7: PUSH1 0x0c
00001ca9: SLOAD
00001caa: PUSH1 0x00
00001cac: SWAP1
00001cad: PUSH1 0x01
00001caf: PUSH1 0x01
00001cb1: PUSH1 0xa0
00001cb3: SHL
00001cb4: SUB
00001cb5: AND
00001cb6: CALLER
00001cb7: EQ
00001cb8: PUSH2 0x1cf7
00001cbb: JUMPI
00001cbc: PUSH2 0x1cdc
00001cbf: PUSH8 0x0de0b6b3a7640000
00001cc8: PUSH2 0x11ec
00001ccb: PUSH1 0x0a
00001ccd: SLOAD
00001cce: DUP7
00001ccf: PUSH2 0x3534
00001cd2: SWAP1
00001cd3: SWAP2
00001cd4: SWAP1
00001cd5: PUSH4 0xffffffff
00001cda: AND
00001cdb: JUMP
00001cdc: JUMPDEST
00001cdd: PUSH1 0x0c
00001cdf: SLOAD
00001ce0: SWAP1
00001ce1: SWAP2
00001ce2: POP
00001ce3: PUSH2 0x1cf7
00001ce6: SWAP1
00001ce7: ADDRESS
00001ce8: SWAP1
00001ce9: PUSH1 0x01
00001ceb: PUSH1 0x01
00001ced: PUSH1 0xa0
00001cef: SHL
00001cf0: SUB
00001cf1: AND
00001cf2: DUP4
00001cf3: PUSH2 0x318a
00001cf6: JUMP
00001cf7: JUMPDEST
00001cf8: PUSH1 0x00
00001cfa: PUSH2 0x1d03
00001cfd: DUP5
00001cfe: DUP4
00001cff: PUSH2 0x314e
00001d02: JUMP
00001d03: JUMPDEST
00001d04: SWAP1
00001d05: POP
00001d06: PUSH2 0x1d0f
00001d09: ADDRESS
00001d0a: DUP3
00001d0b: PUSH2 0x3b15
00001d0e: JUMP
00001d0f: JUMPDEST
00001d10: DUP3
00001d11: PUSH2 0x1d1a
00001d14: DUP3
00001d15: DUP9
00001d16: PUSH2 0x3534
00001d19: JUMP
00001d1a: JUMPDEST
00001d1b: DUP2
00001d1c: PUSH2 0x1d21
00001d1f: JUMPI
00001d20: INVALID
00001d21: JUMPDEST
00001d22: DIV
00001d23: SWAP10
00001d24: POP
00001d25: DUP3
00001d26: PUSH2 0x1d2f
00001d29: DUP3
00001d2a: DUP8
00001d2b: PUSH2 0x3534
00001d2e: JUMP
00001d2f: JUMPDEST
00001d30: DUP2
00001d31: PUSH2 0x1d36
00001d34: JUMPI
00001d35: INVALID
00001d36: JUMPDEST
00001d37: DIV
00001d38: SWAP9
00001d39: POP
00001d3a: PUSH1 0x00
00001d3c: DUP11
00001d3d: GT
00001d3e: DUP1
00001d3f: ISZERO
00001d40: PUSH2 0x1d49
00001d43: JUMPI
00001d44: POP
00001d45: PUSH1 0x00
00001d47: DUP10
00001d48: GT
00001d49: JUMPDEST
00001d4a: PUSH2 0x1d9a
00001d4d: JUMPI
00001d4e: PUSH1 0x40
00001d50: DUP1
00001d51: MLOAD
00001d52: PUSH3 0x461bcd
00001d56: PUSH1 0xe5
00001d58: SHL
00001d59: DUP2
00001d5a: MSTORE
00001d5b: PUSH1 0x20
00001d5d: PUSH1 0x04
00001d5f: DUP3
00001d60: ADD
00001d61: DUP2
00001d62: SWAP1
00001d63: MSTORE
00001d64: PUSH1 0x24
00001d66: DUP3
00001d67: ADD
00001d68: MSTORE
00001d69: PUSH32 0x49505f494e53554646494349454e545f4c49515549444954595f4255524e4544
00001d8a: PUSH1 0x44
00001d8c: DUP3
00001d8d: ADD
00001d8e: MSTORE
00001d8f: SWAP1
00001d90: MLOAD
00001d91: SWAP1
00001d92: DUP2
00001d93: SWAP1
00001d94: SUB
00001d95: PUSH1 0x64
00001d97: ADD
00001d98: SWAP1
00001d99: REVERT
00001d9a: JUMPDEST
00001d9b: PUSH2 0x1da5
00001d9e: DUP9
00001d9f: DUP13
00001da0: DUP13
00001da1: PUSH2 0x2ec7
00001da4: JUMP
00001da5: JUMPDEST
00001da6: PUSH2 0x1db0
00001da9: DUP8
00001daa: DUP13
00001dab: DUP12
00001dac: PUSH2 0x2ec7
00001daf: JUMP
00001db0: JUMPDEST
00001db1: PUSH1 0x0d
00001db3: SLOAD
00001db4: PUSH1 0x0e
00001db6: SLOAD
00001db7: PUSH2 0x1dcc
00001dba: SWAP2
00001dbb: PUSH1 0x01
00001dbd: PUSH1 0x01
00001dbf: PUSH1 0xa0
00001dc1: SHL
00001dc2: SUB
00001dc3: SWAP1
00001dc4: DUP2
00001dc5: AND
00001dc6: SWAP2
00001dc7: AND
00001dc8: PUSH2 0x32c9
00001dcb: JUMP
00001dcc: JUMPDEST
00001dcd: SWAP1
00001dce: SWAP7
00001dcf: POP
00001dd0: SWAP5
00001dd1: POP
00001dd2: PUSH2 0x1ddb
00001dd5: DUP7
00001dd6: DUP7
00001dd7: PUSH2 0x36df
00001dda: JUMP
00001ddb: JUMPDEST
00001ddc: PUSH1 0x40
00001dde: MLOAD
00001ddf: PUSH1 0x01
00001de1: PUSH1 0x01
00001de3: PUSH1 0xa0
00001de5: SHL
00001de6: SUB
00001de7: DUP13
00001de8: AND
00001de9: SWAP1
00001dea: CALLER
00001deb: SWAP1
00001dec: PUSH32 0x4d0027a9041907e192071c137c856e360354ad357b52ca464608ed2c13d8f997
00001e0d: SWAP1
00001e0e: PUSH1 0x00
00001e10: SWAP1
00001e11: LOG3
00001e12: POP
00001e13: POP
00001e14: POP
00001e15: POP
00001e16: POP
00001e17: POP
00001e18: POP
00001e19: POP
00001e1a: PUSH1 0x01
00001e1c: PUSH1 0x17
00001e1e: DUP2
00001e1f: SWAP1
00001e20: SSTORE
00001e21: POP
00001e22: SWAP2
00001e23: POP
00001e24: SWAP2
00001e25: JUMP
00001e26: JUMPDEST
00001e27: PUSH2 0x1e52
00001e2a: PUSH1 0x40
00001e2c: MLOAD
00001e2d: DUP1
00001e2e: PUSH1 0x40
00001e30: ADD
00001e31: PUSH1 0x40
00001e33: MSTORE
00001e34: DUP1
00001e35: PUSH1 0x0b
00001e37: DUP2
00001e38: MSTORE
00001e39: PUSH1 0x20
00001e3b: ADD
00001e3c: PUSH11 0x0496e74656772616c204c5
00001e48: PUSH1 0xac
00001e4a: SHL
00001e4b: DUP2
00001e4c: MSTORE
00001e4d: POP
00001e4e: PUSH2 0x3ba6
00001e51: JUMP
00001e52: JUMPDEST
00001e53: JUMP
00001e54: JUMPDEST
00001e55: PUSH1 0x40
00001e57: MLOAD
00001e58: DUP1
00001e59: PUSH1 0x40
00001e5b: ADD
00001e5c: PUSH1 0x40
00001e5e: MSTORE
00001e5f: DUP1
00001e60: PUSH1 0x07
00001e62: DUP2
00001e63: MSTORE
00001e64: PUSH1 0x20
00001e66: ADD
00001e67: PUSH7 0x0495447522d4c5
00001e6f: PUSH1 0xcc
00001e71: SHL
00001e72: DUP2
00001e73: MSTORE
00001e74: POP
00001e75: DUP2
00001e76: JUMP
00001e77: JUMPDEST
00001e78: PUSH2 0x1e52
00001e7b: PUSH2 0x3486
00001e7e: JUMP
00001e7f: JUMPDEST
00001e80: CALLER
00001e81: PUSH1 0x00
00001e83: SWAP1
00001e84: DUP2
00001e85: MSTORE
00001e86: PUSH1 0x06
00001e88: PUSH1 0x20
00001e8a: SWAP1
00001e8b: DUP2
00001e8c: MSTORE
00001e8d: PUSH1 0x40
00001e8f: DUP1
00001e90: DUP4
00001e91: KECCAK256
00001e92: PUSH1 0x01
00001e94: PUSH1 0x01
00001e96: PUSH1 0xa0
00001e98: SHL
00001e99: SUB
00001e9a: DUP7
00001e9b: AND
00001e9c: DUP5
00001e9d: MSTORE
00001e9e: SWAP1
00001e9f: SWAP2
00001ea0: MSTORE
00001ea1: DUP2
00001ea2: KECCAK256
00001ea3: SLOAD
00001ea4: DUP3
00001ea5: DUP2
00001ea6: LT
00001ea7: ISZERO
00001ea8: PUSH2 0x1eed
00001eab: JUMPI
00001eac: PUSH1 0x40
00001eae: DUP1
00001eaf: MLOAD
00001eb0: PUSH3 0x461bcd
00001eb4: PUSH1 0xe5
00001eb6: SHL
00001eb7: DUP2
00001eb8: MSTORE
00001eb9: PUSH1 0x20
00001ebb: PUSH1 0x04
00001ebd: DUP3
00001ebe: ADD
00001ebf: MSTORE
00001ec0: PUSH1 0x12
00001ec2: PUSH1 0x24
00001ec4: DUP3
00001ec5: ADD
00001ec6: MSTORE
00001ec7: PUSH18 0x49415f43414e4e4f545f4445435245415345
00001eda: PUSH1 0x70
00001edc: SHL
00001edd: PUSH1 0x44
00001edf: DUP3
00001ee0: ADD
00001ee1: MSTORE
00001ee2: SWAP1
00001ee3: MLOAD
00001ee4: SWAP1
00001ee5: DUP2
00001ee6: SWAP1
00001ee7: SUB
00001ee8: PUSH1 0x64
00001eea: ADD
00001eeb: SWAP1
00001eec: REVERT
00001eed: JUMPDEST
00001eee: PUSH2 0x0c6c
00001ef1: CALLER
00001ef2: DUP6
00001ef3: PUSH2 0x0d70
00001ef6: DUP5
00001ef7: DUP8
00001ef8: PUSH2 0x314e
00001efb: JUMP
00001efc: JUMPDEST
00001efd: PUSH1 0x00
00001eff: DUP1
00001f00: PUSH1 0x00
00001f02: PUSH2 0x1f09
00001f05: PUSH2 0x0b77
00001f08: JUMP
00001f09: JUMPDEST
00001f0a: POP
00001f0b: SWAP2
00001f0c: POP
00001f0d: SWAP2
00001f0e: POP
00001f0f: DUP2
00001f10: PUSH1 0x01
00001f12: PUSH1 0x01
00001f14: PUSH1 0x70
00001f16: SHL
00001f17: SUB
00001f18: AND
00001f19: PUSH1 0x00
00001f1b: EQ
00001f1c: DUP1
00001f1d: PUSH2 0x1f2d
00001f20: JUMPI
00001f21: POP
00001f22: PUSH1 0x01
00001f24: PUSH1 0x01
00001f26: PUSH1 0x70
00001f28: SHL
00001f29: SUB
00001f2a: DUP2
00001f2b: AND
00001f2c: ISZERO
00001f2d: JUMPDEST
00001f2e: ISZERO
00001f2f: PUSH2 0x1f3d
00001f32: JUMPI
00001f33: PUSH1 0x00
00001f35: SWAP3
00001f36: POP
00001f37: POP
00001f38: POP
00001f39: PUSH2 0x210e
00001f3c: JUMP
00001f3d: JUMPDEST
00001f3e: PUSH1 0x0f
00001f40: SLOAD
00001f41: PUSH1 0x40
00001f43: DUP1
00001f44: MLOAD
00001f45: PUSH4 0xb16c524b
00001f4a: PUSH1 0xe0
00001f4c: SHL
00001f4d: DUP2
00001f4e: MSTORE
00001f4f: SWAP1
00001f50: MLOAD
00001f51: PUSH1 0x00
00001f53: SWAP3
00001f54: PUSH1 0x01
00001f56: PUSH1 0x01
00001f58: PUSH1 0xa0
00001f5a: SHL
00001f5b: SUB
00001f5c: AND
00001f5d: SWAP2
00001f5e: PUSH4 0xb16c524b
00001f63: SWAP2
00001f64: PUSH1 0x04
00001f66: DUP1
00001f67: DUP4
00001f68: ADD
00001f69: SWAP3
00001f6a: PUSH1 0x20
00001f6c: SWAP3
00001f6d: SWAP2
00001f6e: SWAP1
00001f6f: DUP3
00001f70: SWAP1
00001f71: SUB
00001f72: ADD
00001f73: DUP2
00001f74: DUP7
00001f75: DUP1
00001f76: EXTCODESIZE
00001f77: ISZERO
00001f78: DUP1
00001f79: ISZERO
00001f7a: PUSH2 0x1f82
00001f7d: JUMPI
00001f7e: PUSH1 0x00
00001f80: DUP1
00001f81: REVERT
00001f82: JUMPDEST
00001f83: POP
00001f84: GAS
00001f85: STATICCALL
00001f86: ISZERO
00001f87: DUP1
00001f88: ISZERO
00001f89: PUSH2 0x1f96
00001f8c: JUMPI
00001f8d: RETURNDATASIZE
00001f8e: PUSH1 0x00
00001f90: DUP1
00001f91: RETURNDATACOPY
00001f92: RETURNDATASIZE
00001f93: PUSH1 0x00
00001f95: REVERT
00001f96: JUMPDEST
00001f97: POP
00001f98: POP
00001f99: POP
00001f9a: POP
00001f9b: PUSH1 0x40
00001f9d: MLOAD
00001f9e: RETURNDATASIZE
00001f9f: PUSH1 0x20
00001fa1: DUP2
00001fa2: LT
00001fa3: ISZERO
00001fa4: PUSH2 0x1fac
00001fa7: JUMPI
00001fa8: PUSH1 0x00
00001faa: DUP1
00001fab: REVERT
00001fac: JUMPDEST
00001fad: POP
00001fae: MLOAD
00001faf: PUSH1 0x0f
00001fb1: SLOAD
00001fb2: PUSH1 0x40
00001fb4: DUP1
00001fb5: MLOAD
00001fb6: PUSH4 0x90c7204d
00001fbb: PUSH1 0xe0
00001fbd: SHL
00001fbe: DUP2
00001fbf: MSTORE
00001fc0: SWAP1
00001fc1: MLOAD
00001fc2: SWAP3
00001fc3: SWAP4
00001fc4: POP
00001fc5: PUSH1 0x00
00001fc7: SWAP3
00001fc8: PUSH1 0x01
00001fca: PUSH1 0x01
00001fcc: PUSH1 0xa0
00001fce: SHL
00001fcf: SUB
00001fd0: SWAP1
00001fd1: SWAP3
00001fd2: AND
00001fd3: SWAP2
00001fd4: PUSH4 0x90c7204d
00001fd9: SWAP2
00001fda: PUSH1 0x04
00001fdc: DUP1
00001fdd: DUP3
00001fde: ADD
00001fdf: SWAP3
00001fe0: PUSH1 0x20
00001fe2: SWAP3
00001fe3: SWAP1
00001fe4: SWAP2
00001fe5: SWAP1
00001fe6: DUP3
00001fe7: SWAP1
00001fe8: SUB
00001fe9: ADD
00001fea: DUP2
00001feb: DUP7
00001fec: DUP1
00001fed: EXTCODESIZE
00001fee: ISZERO
00001fef: DUP1
00001ff0: ISZERO
00001ff1: PUSH2 0x1ff9
00001ff4: JUMPI
00001ff5: PUSH1 0x00
00001ff7: DUP1
00001ff8: REVERT
00001ff9: JUMPDEST
00001ffa: POP
00001ffb: GAS
00001ffc: STATICCALL
00001ffd: ISZERO
00001ffe: DUP1
00001fff: ISZERO
00002000: PUSH2 0x200d
00002003: JUMPI
00002004: RETURNDATASIZE
00002005: PUSH1 0x00
00002007: DUP1
00002008: RETURNDATACOPY
00002009: RETURNDATASIZE
0000200a: PUSH1 0x00
0000200c: REVERT
0000200d: JUMPDEST
0000200e: POP
0000200f: POP
00002010: POP
00002011: POP
00002012: PUSH1 0x40
00002014: MLOAD
00002015: RETURNDATASIZE
00002016: PUSH1 0x20
00002018: DUP2
00002019: LT
0000201a: ISZERO
0000201b: PUSH2 0x2023
0000201e: JUMPI
0000201f: PUSH1 0x00
00002021: DUP1
00002022: REVERT
00002023: JUMPDEST
00002024: POP
00002025: MLOAD
00002026: SWAP1
00002027: POP
00002028: PUSH1 0x00
0000202a: PUSH2 0x2031
0000202d: PUSH2 0x2886
00002030: JUMP
00002031: JUMPDEST
00002032: SWAP1
00002033: POP
00002034: PUSH1 0x00
00002036: PUSH2 0x203f
00002039: DUP9
0000203a: DUP6
0000203b: PUSH2 0x3c43
0000203e: JUMP
0000203f: JUMPDEST
00002040: SWAP1
00002041: POP
00002042: PUSH1 0x00
00002044: PUSH2 0x2056
00002047: PUSH1 0x01
00002049: PUSH1 0x01
0000204b: PUSH1 0x70
0000204d: SHL
0000204e: SUB
0000204f: DUP9
00002050: AND
00002051: DUP7
00002052: PUSH2 0x3c43
00002055: JUMP
00002056: JUMPDEST
00002057: SWAP1
00002058: POP
00002059: PUSH1 0x00
0000205b: PUSH2 0x206d
0000205e: PUSH1 0x01
00002060: PUSH1 0x01
00002062: PUSH1 0x70
00002064: SHL
00002065: SUB
00002066: DUP9
00002067: AND
00002068: DUP7
00002069: PUSH2 0x3c43
0000206c: JUMP
0000206d: JUMPDEST
0000206e: SWAP1
0000206f: POP
00002070: PUSH1 0x00
00002072: PUSH2 0x207b
00002075: DUP5
00002076: DUP4
00002077: PUSH2 0x3534
0000207a: JUMP
0000207b: JUMPDEST
0000207c: SWAP1
0000207d: POP
0000207e: PUSH1 0x00
00002080: PUSH2 0x20a9
00002083: DUP4
00002084: PUSH2 0x20a3
00002087: PUSH8 0x0de0b6b3a7640000
00002090: PUSH2 0x11ec
00002093: PUSH2 0x209c
00002096: DUP11
00002097: DUP11
00002098: PUSH2 0x3238
0000209b: JUMP
0000209c: JUMPDEST
0000209d: DUP12
0000209e: SWAP1
0000209f: PUSH2 0x3534
000020a2: JUMP
000020a3: JUMPDEST
000020a4: SWAP1
000020a5: PUSH2 0x3238
000020a8: JUMP
000020a9: JUMPDEST
000020aa: SWAP1
000020ab: POP
000020ac: PUSH1 0x00
000020ae: PUSH2 0x20b7
000020b1: DUP4
000020b2: DUP4
000020b3: PUSH2 0x3684
000020b6: JUMP
000020b7: JUMPDEST
000020b8: SWAP1
000020b9: POP
000020ba: DUP4
000020bb: PUSH2 0x20d0
000020be: PUSH8 0x0de0b6b3a7640000
000020c7: PUSH2 0x11ec
000020ca: DUP5
000020cb: DUP12
000020cc: PUSH2 0x3534
000020cf: JUMP
000020d0: JUMPDEST
000020d1: LT
000020d2: ISZERO
000020d3: DUP1
000020d4: PUSH2 0x20dd
000020d7: JUMPI
000020d8: POP
000020d9: DUP6
000020da: DUP2
000020db: LT
000020dc: ISZERO
000020dd: JUMPDEST
000020de: ISZERO
000020df: PUSH2 0x20f6
000020e2: JUMPI
000020e3: PUSH1 0x00
000020e5: SWAP12
000020e6: POP
000020e7: POP
000020e8: POP
000020e9: POP
000020ea: POP
000020eb: POP
000020ec: POP
000020ed: POP
000020ee: POP
000020ef: POP
000020f0: POP
000020f1: POP
000020f2: PUSH2 0x210e
000020f5: JUMP
000020f6: JUMPDEST
000020f7: PUSH2 0x2100
000020fa: DUP2
000020fb: DUP11
000020fc: PUSH2 0x3c93
000020ff: JUMP
00002100: JUMPDEST
00002101: SWAP12
00002102: POP
00002103: POP
00002104: POP
00002105: POP
00002106: POP
00002107: POP
00002108: POP
00002109: POP
0000210a: POP
0000210b: POP
0000210c: POP
0000210d: POP
0000210e: JUMPDEST
0000210f: SWAP2
00002110: SWAP1
00002111: POP
00002112: JUMP
00002113: JUMPDEST
00002114: PUSH1 0x0c
00002116: SLOAD
00002117: PUSH1 0x01
00002119: PUSH1 0x01
0000211b: PUSH1 0xa0
0000211d: SHL
0000211e: SUB
0000211f: AND
00002120: CALLER
00002121: EQ
00002122: PUSH2 0x2161
00002125: JUMPI
00002126: PUSH1 0x40
00002128: DUP1
00002129: MLOAD
0000212a: PUSH3 0x461bcd
0000212e: PUSH1 0xe5
00002130: SHL
00002131: DUP2
00002132: MSTORE
00002133: PUSH1 0x20
00002135: PUSH1 0x04
00002137: DUP3
00002138: ADD
00002139: MSTORE
0000213a: PUSH1 0x0c
0000213c: PUSH1 0x24
0000213e: DUP3
0000213f: ADD
00002140: MSTORE
00002141: PUSH12 0x24a82fa327a92124a22222a7
0000214e: PUSH1 0xa1
00002150: SHL
00002151: PUSH1 0x44
00002153: DUP3
00002154: ADD
00002155: MSTORE
00002156: SWAP1
00002157: MLOAD
00002158: SWAP1
00002159: DUP2
0000215a: SWAP1
0000215b: SUB
0000215c: PUSH1 0x64
0000215e: ADD
0000215f: SWAP1
00002160: REVERT
00002161: JUMPDEST
00002162: PUSH1 0x10
00002164: DUP1
00002165: SLOAD
00002166: PUSH1 0x01
00002168: PUSH1 0x01
0000216a: PUSH1 0xa0
0000216c: SHL
0000216d: SUB
0000216e: NOT
0000216f: AND
00002170: PUSH1 0x01
00002172: PUSH1 0x01
00002174: PUSH1 0xa0
00002176: SHL
00002177: SUB
00002178: DUP4
00002179: DUP2
0000217a: AND
0000217b: SWAP2
0000217c: SWAP1
0000217d: SWAP2
0000217e: OR
0000217f: SWAP2
00002180: DUP3
00002181: SWAP1
00002182: SSTORE
00002183: PUSH1 0x40
00002185: DUP1
00002186: MLOAD
00002187: SWAP3
00002188: SWAP1
00002189: SWAP2
0000218a: AND
0000218b: DUP3
0000218c: MSTORE
0000218d: MLOAD
0000218e: PUSH32 0x985b4dd4654f00a77259f8971c3a5aa21910e31ed411ffd8c4106d7e9a0c2285
000021af: SWAP2
000021b0: PUSH1 0x20
000021b2: SWAP1
000021b3: DUP3
000021b4: SWAP1
000021b5: SUB
000021b6: ADD
000021b7: SWAP1
000021b8: LOG1
000021b9: POP
000021ba: JUMP
000021bb: JUMPDEST
000021bc: PUSH1 0x00
000021be: PUSH2 0x0bae
000021c1: CALLER
000021c2: DUP5
000021c3: DUP5
000021c4: PUSH2 0x318a
000021c7: JUMP
000021c8: JUMPDEST
000021c9: PUSH1 0x00
000021cb: DUP1
000021cc: PUSH1 0x00
000021ce: PUSH2 0x21d5
000021d1: PUSH2 0x0b77
000021d4: JUMP
000021d5: JUMPDEST
000021d6: POP
000021d7: SWAP2
000021d8: POP
000021d9: SWAP2
000021da: POP
000021db: PUSH1 0x00
000021dd: DUP1
000021de: PUSH2 0x21e5
000021e1: PUSH2 0x1949
000021e4: JUMP
000021e5: JUMPDEST
000021e6: POP
000021e7: SWAP2
000021e8: POP
000021e9: SWAP2
000021ea: POP
000021eb: PUSH1 0x00
000021ed: PUSH2 0x220d
000021f0: PUSH8 0x0de0b6b3a7640000
000021f9: PUSH2 0x11ec
000021fc: PUSH1 0x0b
000021fe: SLOAD
000021ff: DUP11
00002200: PUSH2 0x3534
00002203: SWAP1
00002204: SWAP2
00002205: SWAP1
00002206: PUSH4 0xffffffff
0000220b: AND
0000220c: JUMP
0000220d: JUMPDEST
0000220e: PUSH1 0x0f
00002210: SLOAD
00002211: SWAP1
00002212: SWAP2
00002213: POP
00002214: PUSH1 0x00
00002216: SWAP1
00002217: PUSH1 0x01
00002219: PUSH1 0x01
0000221b: PUSH1 0xa0
0000221d: SHL
0000221e: SUB
0000221f: AND
00002220: PUSH4 0x4666c77a
00002225: PUSH2 0x223b
00002228: DUP5
00002229: PUSH2 0x1117
0000222c: PUSH1 0x01
0000222e: PUSH1 0x01
00002230: PUSH1 0x70
00002232: SHL
00002233: SUB
00002234: DUP12
00002235: AND
00002236: DUP14
00002237: PUSH2 0x3238
0000223a: JUMP
0000223b: JUMPDEST
0000223c: DUP7
0000223d: DUP7
0000223e: PUSH1 0x40
00002240: MLOAD
00002241: DUP5
00002242: PUSH4 0xffffffff
00002247: AND
00002248: PUSH1 0xe0
0000224a: SHL
0000224b: DUP2
0000224c: MSTORE
0000224d: PUSH1 0x04
0000224f: ADD
00002250: DUP1
00002251: DUP5
00002252: DUP2
00002253: MSTORE
00002254: PUSH1 0x20
00002256: ADD
00002257: DUP4
00002258: PUSH1 0x01
0000225a: PUSH1 0x01
0000225c: PUSH1 0x70
0000225e: SHL
0000225f: SUB
00002260: AND
00002261: DUP2
00002262: MSTORE
00002263: PUSH1 0x20
00002265: ADD
00002266: DUP3
00002267: PUSH1 0x01
00002269: PUSH1 0x01
0000226b: PUSH1 0x70
0000226d: SHL
0000226e: SUB
0000226f: AND
00002270: DUP2
00002271: MSTORE
00002272: PUSH1 0x20
00002274: ADD
00002275: SWAP4
00002276: POP
00002277: POP
00002278: POP
00002279: POP
0000227a: PUSH1 0x20
0000227c: PUSH1 0x40
0000227e: MLOAD
0000227f: DUP1
00002280: DUP4
00002281: SUB
00002282: DUP2
00002283: DUP7
00002284: DUP1
00002285: EXTCODESIZE
00002286: ISZERO
00002287: DUP1
00002288: ISZERO
00002289: PUSH2 0x2291
0000228c: JUMPI
0000228d: PUSH1 0x00
0000228f: DUP1
00002290: REVERT
00002291: JUMPDEST
00002292: POP
00002293: GAS
00002294: STATICCALL
00002295: ISZERO
00002296: DUP1
00002297: ISZERO
00002298: PUSH2 0x22a5
0000229b: JUMPI
0000229c: RETURNDATASIZE
0000229d: PUSH1 0x00
0000229f: DUP1
000022a0: RETURNDATACOPY
000022a1: RETURNDATASIZE
000022a2: PUSH1 0x00
000022a4: REVERT
000022a5: JUMPDEST
000022a6: POP
000022a7: POP
000022a8: POP
000022a9: POP
000022aa: PUSH1 0x40
000022ac: MLOAD
000022ad: RETURNDATASIZE
000022ae: PUSH1 0x20
000022b0: DUP2
000022b1: LT
000022b2: ISZERO
000022b3: PUSH2 0x22bb
000022b6: JUMPI
000022b7: PUSH1 0x00
000022b9: DUP1
000022ba: REVERT
000022bb: JUMPDEST
000022bc: POP
000022bd: MLOAD
000022be: SWAP1
000022bf: POP
000022c0: PUSH2 0x22d2
000022c3: PUSH1 0x01
000022c5: PUSH1 0x01
000022c7: PUSH1 0x70
000022c9: SHL
000022ca: SUB
000022cb: DUP7
000022cc: AND
000022cd: DUP3
000022ce: PUSH2 0x314e
000022d1: JUMP
000022d2: JUMPDEST
000022d3: SWAP9
000022d4: SWAP8
000022d5: POP
000022d6: POP
000022d7: POP
000022d8: POP
000022d9: POP
000022da: POP
000022db: POP
000022dc: POP
000022dd: JUMP
000022de: JUMPDEST
000022df: PUSH1 0x13
000022e1: SLOAD
000022e2: DUP2
000022e3: JUMP
000022e4: JUMPDEST
000022e5: PUSH1 0x00
000022e7: DUP1
000022e8: PUSH1 0x00
000022ea: PUSH2 0x22f1
000022ed: PUSH2 0x0b77
000022f0: JUMP
000022f1: JUMPDEST
000022f2: POP
000022f3: SWAP2
000022f4: POP
000022f5: SWAP2
000022f6: POP
000022f7: PUSH1 0x00
000022f9: DUP1
000022fa: PUSH2 0x2301
000022fd: PUSH2 0x1949
00002300: JUMP
00002301: JUMPDEST
00002302: POP
00002303: SWAP2
00002304: POP
00002305: SWAP2
00002306: POP
00002307: PUSH1 0x00
00002309: PUSH2 0x2329
0000230c: PUSH8 0x0de0b6b3a7640000
00002315: PUSH2 0x11ec
00002318: PUSH1 0x0b
0000231a: SLOAD
0000231b: DUP11
0000231c: PUSH2 0x3534
0000231f: SWAP1
00002320: SWAP2
00002321: SWAP1
00002322: PUSH4 0xffffffff
00002327: AND
00002328: JUMP
00002329: JUMPDEST
0000232a: PUSH1 0x0f
0000232c: SLOAD
0000232d: SWAP1
0000232e: SWAP2
0000232f: POP
00002330: PUSH1 0x00
00002332: SWAP1
00002333: PUSH1 0x01
00002335: PUSH1 0x01
00002337: PUSH1 0xa0
00002339: SHL
0000233a: SUB
0000233b: AND
0000233c: PUSH4 0x071f0653
00002341: PUSH2 0x2357
00002344: DUP5
00002345: PUSH2 0x1117
00002348: PUSH1 0x01
0000234a: PUSH1 0x01
0000234c: PUSH1 0x70
0000234e: SHL
0000234f: SUB
00002350: DUP11
00002351: AND
00002352: DUP14
00002353: PUSH2 0x3238
00002356: JUMP
00002357: JUMPDEST
00002358: DUP7
00002359: DUP7
0000235a: PUSH1 0x40
0000235c: MLOAD
0000235d: DUP5
0000235e: PUSH4 0xffffffff
00002363: AND
00002364: PUSH1 0xe0
00002366: SHL
00002367: DUP2
00002368: MSTORE
00002369: PUSH1 0x04
0000236b: ADD
0000236c: DUP1
0000236d: DUP5
0000236e: DUP2
0000236f: MSTORE
00002370: PUSH1 0x20
00002372: ADD
00002373: DUP4
00002374: PUSH1 0x01
00002376: PUSH1 0x01
00002378: PUSH1 0x70
0000237a: SHL
0000237b: SUB
0000237c: AND
0000237d: DUP2
0000237e: MSTORE
0000237f: PUSH1 0x20
00002381: ADD
00002382: DUP3
00002383: PUSH1 0x01
00002385: PUSH1 0x01
00002387: PUSH1 0x70
00002389: SHL
0000238a: SUB
0000238b: AND
0000238c: DUP2
0000238d: MSTORE
0000238e: PUSH1 0x20
00002390: ADD
00002391: SWAP4
00002392: POP
00002393: POP
00002394: POP
00002395: POP
00002396: PUSH1 0x20
00002398: PUSH1 0x40
0000239a: MLOAD
0000239b: DUP1
0000239c: DUP4
0000239d: SUB
0000239e: DUP2
0000239f: DUP7
000023a0: DUP1
000023a1: EXTCODESIZE
000023a2: ISZERO
000023a3: DUP1
000023a4: ISZERO
000023a5: PUSH2 0x23ad
000023a8: JUMPI
000023a9: PUSH1 0x00
000023ab: DUP1
000023ac: REVERT
000023ad: JUMPDEST
000023ae: POP
000023af: GAS
000023b0: STATICCALL
000023b1: ISZERO
000023b2: DUP1
000023b3: ISZERO
000023b4: PUSH2 0x23c1
000023b7: JUMPI
000023b8: RETURNDATASIZE
000023b9: PUSH1 0x00
000023bb: DUP1
000023bc: RETURNDATACOPY
000023bd: RETURNDATASIZE
000023be: PUSH1 0x00
000023c0: REVERT
000023c1: JUMPDEST
000023c2: POP
000023c3: POP
000023c4: POP
000023c5: POP
000023c6: PUSH1 0x40
000023c8: MLOAD
000023c9: RETURNDATASIZE
000023ca: PUSH1 0x20
000023cc: DUP2
000023cd: LT
000023ce: ISZERO
000023cf: PUSH2 0x23d7
000023d2: JUMPI
000023d3: PUSH1 0x00
000023d5: DUP1
000023d6: REVERT
000023d7: JUMPDEST
000023d8: POP
000023d9: MLOAD
000023da: SWAP1
000023db: POP
000023dc: PUSH2 0x22d2
000023df: PUSH1 0x01
000023e1: PUSH1 0x01
000023e3: PUSH1 0x70
000023e5: SHL
000023e6: SUB
000023e7: DUP8
000023e8: AND
000023e9: DUP3
000023ea: PUSH2 0x314e
000023ed: JUMP
000023ee: JUMPDEST
000023ef: PUSH2 0x03e8
000023f2: DUP2
000023f3: JUMP
000023f4: JUMPDEST
000023f5: PUSH1 0x00
000023f7: DUP1
000023f8: PUSH1 0x00
000023fa: PUSH2 0x2401
000023fd: PUSH2 0x0b77
00002400: JUMP
00002401: JUMPDEST
00002402: POP
00002403: SWAP2
00002404: POP
00002405: SWAP2
00002406: POP
00002407: PUSH1 0x00
00002409: DUP1
0000240a: PUSH2 0x2411
0000240d: PUSH2 0x1949
00002410: JUMP
00002411: JUMPDEST
00002412: POP
00002413: SWAP1
00002414: SWAP3
00002415: POP
00002416: SWAP1
00002417: POP
00002418: PUSH1 0x00
0000241a: PUSH2 0x242c
0000241d: PUSH1 0x01
0000241f: PUSH1 0x01
00002421: PUSH1 0x70
00002423: SHL
00002424: SUB
00002425: DUP7
00002426: AND
00002427: DUP9
00002428: PUSH2 0x314e
0000242b: JUMP
0000242c: JUMPDEST
0000242d: PUSH1 0x0f
0000242f: SLOAD
00002430: PUSH1 0x40
00002432: DUP1
00002433: MLOAD
00002434: PUSH4 0x233363bd
00002439: PUSH1 0xe1
0000243b: SHL
0000243c: DUP2
0000243d: MSTORE
0000243e: PUSH1 0x04
00002440: DUP2
00002441: ADD
00002442: DUP5
00002443: SWAP1
00002444: MSTORE
00002445: PUSH1 0x01
00002447: PUSH1 0x01
00002449: PUSH1 0x70
0000244b: SHL
0000244c: SUB
0000244d: DUP1
0000244e: DUP9
0000244f: AND
00002450: PUSH1 0x24
00002452: DUP4
00002453: ADD
00002454: MSTORE
00002455: DUP7
00002456: AND
00002457: PUSH1 0x44
00002459: DUP3
0000245a: ADD
0000245b: MSTORE
0000245c: SWAP1
0000245d: MLOAD
0000245e: SWAP3
0000245f: SWAP4
00002460: POP
00002461: PUSH1 0x00
00002463: SWAP3
00002464: PUSH1 0x01
00002466: PUSH1 0x01
00002468: PUSH1 0xa0
0000246a: SHL
0000246b: SUB
0000246c: SWAP1
0000246d: SWAP3
0000246e: AND
0000246f: SWAP2
00002470: PUSH4 0x4666c77a
00002475: SWAP2
00002476: PUSH1 0x64
00002478: DUP1
00002479: DUP3
0000247a: ADD
0000247b: SWAP3
0000247c: PUSH1 0x20
0000247e: SWAP3
0000247f: SWAP1
00002480: SWAP2
00002481: SWAP1
00002482: DUP3
00002483: SWAP1
00002484: SUB
00002485: ADD
00002486: DUP2
00002487: DUP7
00002488: DUP1
00002489: EXTCODESIZE
0000248a: ISZERO
0000248b: DUP1
0000248c: ISZERO
0000248d: PUSH2 0x2495
00002490: JUMPI
00002491: PUSH1 0x00
00002493: DUP1
00002494: REVERT
00002495: JUMPDEST
00002496: POP
00002497: GAS
00002498: STATICCALL
00002499: ISZERO
0000249a: DUP1
0000249b: ISZERO
0000249c: PUSH2 0x24a9
0000249f: JUMPI
000024a0: RETURNDATASIZE
000024a1: PUSH1 0x00
000024a3: DUP1
000024a4: RETURNDATACOPY
000024a5: RETURNDATASIZE
000024a6: PUSH1 0x00
000024a8: REVERT
000024a9: JUMPDEST
000024aa: POP
000024ab: POP
000024ac: POP
000024ad: POP
000024ae: PUSH1 0x40
000024b0: MLOAD
000024b1: RETURNDATASIZE
000024b2: PUSH1 0x20
000024b4: DUP2
000024b5: LT
000024b6: ISZERO
000024b7: PUSH2 0x24bf
000024ba: JUMPI
000024bb: PUSH1 0x00
000024bd: DUP1
000024be: REVERT
000024bf: JUMPDEST
000024c0: POP
000024c1: MLOAD
000024c2: PUSH1 0x0b
000024c4: SLOAD
000024c5: SWAP1
000024c6: SWAP2
000024c7: POP
000024c8: PUSH2 0x22d2
000024cb: SWAP1
000024cc: PUSH2 0x24de
000024cf: SWAP1
000024d0: PUSH8 0x0de0b6b3a7640000
000024d9: SWAP1
000024da: PUSH2 0x314e
000024dd: JUMP
000024de: JUMPDEST
000024df: PUSH2 0x11ec
000024e2: PUSH8 0x0de0b6b5fb6fe400
000024eb: PUSH2 0x24fd
000024ee: DUP6
000024ef: PUSH1 0x01
000024f1: PUSH1 0x01
000024f3: PUSH1 0x70
000024f5: SHL
000024f6: SUB
000024f7: DUP12
000024f8: AND
000024f9: PUSH2 0x314e
000024fc: JUMP
000024fd: JUMPDEST
000024fe: SWAP1
000024ff: PUSH2 0x3534
00002502: JUMP
00002503: JUMPDEST
00002504: PUSH1 0x0c
00002506: SLOAD
00002507: PUSH1 0x01
00002509: PUSH1 0x01
0000250b: PUSH1 0xa0
0000250d: SHL
0000250e: SUB
0000250f: AND
00002510: DUP2
00002511: JUMP
00002512: JUMPDEST
00002513: PUSH2 0x251b
00002516: CALLER
00002517: PUSH2 0x3282
0000251a: JUMP
0000251b: JUMPDEST
0000251c: PUSH2 0x2565
0000251f: JUMPI
00002520: PUSH1 0x40
00002522: DUP1
00002523: MLOAD
00002524: PUSH3 0x461bcd
00002528: PUSH1 0xe5
0000252a: SHL
0000252b: DUP2
0000252c: MSTORE
0000252d: PUSH1 0x20
0000252f: PUSH1 0x04
00002531: DUP3
00002532: ADD
00002533: MSTORE
00002534: PUSH1 0x16
00002536: PUSH1 0x24
00002538: DUP3
00002539: ADD
0000253a: MSTORE
0000253b: PUSH22 0x24a82faaa720aaaa2427a924ad22a22faa2920a222a9
00002552: PUSH1 0x51
00002554: SHL
00002555: PUSH1 0x44
00002557: DUP3
00002558: ADD
00002559: MSTORE
0000255a: SWAP1
0000255b: MLOAD
0000255c: SWAP1
0000255d: DUP2
0000255e: SWAP1
0000255f: SUB
00002560: PUSH1 0x64
00002562: ADD
00002563: SWAP1
00002564: REVERT
00002565: JUMPDEST
00002566: PUSH2 0x1e77
00002569: PUSH2 0x309f
0000256c: JUMP
0000256d: JUMPDEST
0000256e: PUSH1 0x0e
00002570: SLOAD
00002571: PUSH1 0x01
00002573: PUSH1 0x01
00002575: PUSH1 0xa0
00002577: SHL
00002578: SUB
00002579: AND
0000257a: DUP2
0000257b: JUMP
0000257c: JUMPDEST
0000257d: TIMESTAMP
0000257e: DUP5
0000257f: LT
00002580: ISZERO
00002581: PUSH2 0x25be
00002584: JUMPI
00002585: PUSH1 0x40
00002587: DUP1
00002588: MLOAD
00002589: PUSH3 0x461bcd
0000258d: PUSH1 0xe5
0000258f: SHL
00002590: DUP2
00002591: MSTORE
00002592: PUSH1 0x20
00002594: PUSH1 0x04
00002596: DUP3
00002597: ADD
00002598: MSTORE
00002599: PUSH1 0x0a
0000259b: PUSH1 0x24
0000259d: DUP3
0000259e: ADD
0000259f: MSTORE
000025a0: PUSH10 0x125057d1561412549151
000025ab: PUSH1 0xb2
000025ad: SHL
000025ae: PUSH1 0x44
000025b0: DUP3
000025b1: ADD
000025b2: MSTORE
000025b3: SWAP1
000025b4: MLOAD
000025b5: SWAP1
000025b6: DUP2
000025b7: SWAP1
000025b8: SUB
000025b9: PUSH1 0x64
000025bb: ADD
000025bc: SWAP1
000025bd: REVERT
000025be: JUMPDEST
000025bf: PUSH1 0x07
000025c1: SLOAD
000025c2: PUSH1 0x01
000025c4: PUSH1 0x01
000025c6: PUSH1 0xa0
000025c8: SHL
000025c9: SUB
000025ca: DUP1
000025cb: DUP10
000025cc: AND
000025cd: PUSH1 0x00
000025cf: DUP2
000025d0: DUP2
000025d1: MSTORE
000025d2: PUSH1 0x08
000025d4: PUSH1 0x20
000025d6: SWAP1
000025d7: DUP2
000025d8: MSTORE
000025d9: PUSH1 0x40
000025db: DUP1
000025dc: DUP4
000025dd: KECCAK256
000025de: DUP1
000025df: SLOAD
000025e0: PUSH1 0x01
000025e2: DUP1
000025e3: DUP3
000025e4: ADD
000025e5: SWAP1
000025e6: SWAP3
000025e7: SSTORE
000025e8: DUP3
000025e9: MLOAD
000025ea: PUSH32 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9
0000260b: DUP2
0000260c: DUP7
0000260d: ADD
0000260e: MSTORE
0000260f: DUP1
00002610: DUP5
00002611: ADD
00002612: SWAP7
00002613: SWAP1
00002614: SWAP7
00002615: MSTORE
00002616: SWAP6
00002617: DUP14
00002618: AND
00002619: PUSH1 0x60
0000261b: DUP7
0000261c: ADD
0000261d: MSTORE
0000261e: PUSH1 0x80
00002620: DUP6
00002621: ADD
00002622: DUP13
00002623: SWAP1
00002624: MSTORE
00002625: PUSH1 0xa0
00002627: DUP6
00002628: ADD
00002629: SWAP6
0000262a: SWAP1
0000262b: SWAP6
0000262c: MSTORE
0000262d: PUSH1 0xc0
0000262f: DUP1
00002630: DUP6
00002631: ADD
00002632: DUP12
00002633: SWAP1
00002634: MSTORE
00002635: DUP2
00002636: MLOAD
00002637: DUP1
00002638: DUP7
00002639: SUB
0000263a: SWAP1
0000263b: SWAP2
0000263c: ADD
0000263d: DUP2
0000263e: MSTORE
0000263f: PUSH1 0xe0
00002641: DUP6
00002642: ADD
00002643: DUP3
00002644: MSTORE
00002645: DUP1
00002646: MLOAD
00002647: SWAP1
00002648: DUP4
00002649: ADD
0000264a: KECCAK256
0000264b: PUSH2 0x1901
0000264e: PUSH1 0xf0
00002650: SHL
00002651: PUSH2 0x0100
00002654: DUP7
00002655: ADD
00002656: MSTORE
00002657: PUSH2 0x0102
0000265a: DUP6
0000265b: ADD
0000265c: SWAP7
0000265d: SWAP1
0000265e: SWAP7
0000265f: MSTORE
00002660: PUSH2 0x0122
00002663: DUP1
00002664: DUP6
00002665: ADD
00002666: SWAP7
00002667: SWAP1
00002668: SWAP7
00002669: MSTORE
0000266a: DUP1
0000266b: MLOAD
0000266c: DUP1
0000266d: DUP6
0000266e: SUB
0000266f: SWAP1
00002670: SWAP7
00002671: ADD
00002672: DUP7
00002673: MSTORE
00002674: PUSH2 0x0142
00002677: DUP5
00002678: ADD
00002679: DUP1
0000267a: DUP3
0000267b: MSTORE
0000267c: DUP7
0000267d: MLOAD
0000267e: SWAP7
0000267f: DUP4
00002680: ADD
00002681: SWAP7
00002682: SWAP1
00002683: SWAP7
00002684: KECCAK256
00002685: SWAP6
00002686: DUP4
00002687: SWAP1
00002688: MSTORE
00002689: PUSH2 0x0162
0000268c: DUP5
0000268d: ADD
0000268e: DUP1
0000268f: DUP3
00002690: MSTORE
00002691: DUP7
00002692: SWAP1
00002693: MSTORE
00002694: PUSH1 0xff
00002696: DUP10
00002697: AND
00002698: PUSH2 0x0182
0000269b: DUP6
0000269c: ADD
0000269d: MSTORE
0000269e: PUSH2 0x01a2
000026a1: DUP5
000026a2: ADD
000026a3: DUP9
000026a4: SWAP1
000026a5: MSTORE
000026a6: PUSH2 0x01c2
000026a9: DUP5
000026aa: ADD
000026ab: DUP8
000026ac: SWAP1
000026ad: MSTORE
000026ae: MLOAD
000026af: SWAP2
000026b0: SWAP4
000026b1: SWAP3
000026b2: PUSH2 0x01e2
000026b5: DUP1
000026b6: DUP3
000026b7: ADD
000026b8: SWAP4
000026b9: PUSH1 0x1f
000026bb: NOT
000026bc: DUP2
000026bd: ADD
000026be: SWAP3
000026bf: DUP2
000026c0: SWAP1
000026c1: SUB
000026c2: SWAP1
000026c3: SWAP2
000026c4: ADD
000026c5: SWAP1
000026c6: DUP6
000026c7: GAS
000026c8: STATICCALL
000026c9: ISZERO
000026ca: DUP1
000026cb: ISZERO
000026cc: PUSH2 0x26d9
000026cf: JUMPI
000026d0: RETURNDATASIZE
000026d1: PUSH1 0x00
000026d3: DUP1
000026d4: RETURNDATACOPY
000026d5: RETURNDATASIZE
000026d6: PUSH1 0x00
000026d8: REVERT
000026d9: JUMPDEST
000026da: POP
000026db: POP
000026dc: PUSH1 0x40
000026de: MLOAD
000026df: PUSH1 0x1f
000026e1: NOT
000026e2: ADD
000026e3: MLOAD
000026e4: SWAP2
000026e5: POP
000026e6: POP
000026e7: PUSH1 0x01
000026e9: PUSH1 0x01
000026eb: PUSH1 0xa0
000026ed: SHL
000026ee: SUB
000026ef: DUP2
000026f0: AND
000026f1: ISZERO
000026f2: DUP1
000026f3: ISZERO
000026f4: SWAP1
000026f5: PUSH2 0x270f
000026f8: JUMPI
000026f9: POP
000026fa: DUP9
000026fb: PUSH1 0x01
000026fd: PUSH1 0x01
000026ff: PUSH1 0xa0
00002701: SHL
00002702: SUB
00002703: AND
00002704: DUP2
00002705: PUSH1 0x01
00002707: PUSH1 0x01
00002709: PUSH1 0xa0
0000270b: SHL
0000270c: SUB
0000270d: AND
0000270e: EQ
0000270f: JUMPDEST
00002710: PUSH2 0x2757
00002713: JUMPI
00002714: PUSH1 0x40
00002716: DUP1
00002717: MLOAD
00002718: PUSH3 0x461bcd
0000271c: PUSH1 0xe5
0000271e: SHL
0000271f: DUP2
00002720: MSTORE
00002721: PUSH1 0x20
00002723: PUSH1 0x04
00002725: DUP3
00002726: ADD
00002727: MSTORE
00002728: PUSH1 0x14
0000272a: PUSH1 0x24
0000272c: DUP3
0000272d: ADD
0000272e: MSTORE
0000272f: PUSH20 0x49415f494e56414c49445f5349474e4154555245
00002744: PUSH1 0x60
00002746: SHL
00002747: PUSH1 0x44
00002749: DUP3
0000274a: ADD
0000274b: MSTORE
0000274c: SWAP1
0000274d: MLOAD
0000274e: SWAP1
0000274f: DUP2
00002750: SWAP1
00002751: SUB
00002752: PUSH1 0x64
00002754: ADD
00002755: SWAP1
00002756: REVERT
00002757: JUMPDEST
00002758: PUSH2 0x2762
0000275b: DUP10
0000275c: DUP10
0000275d: DUP10
0000275e: PUSH2 0x30ec
00002761: JUMP
00002762: JUMPDEST
00002763: POP
00002764: POP
00002765: POP
00002766: POP
00002767: POP
00002768: POP
00002769: POP
0000276a: POP
0000276b: POP
0000276c: JUMP
0000276d: JUMPDEST
0000276e: PUSH1 0x12
00002770: SLOAD
00002771: DUP2
00002772: JUMP
00002773: JUMPDEST
00002774: PUSH1 0x02
00002776: SLOAD
00002777: PUSH1 0x03
00002779: SLOAD
0000277a: SWAP1
0000277b: SWAP2
0000277c: JUMP
0000277d: JUMPDEST
0000277e: PUSH1 0x00
00002780: DUP1
00002781: PUSH1 0x00
00002783: PUSH2 0x278a
00002786: PUSH2 0x0b77
00002789: JUMP
0000278a: JUMPDEST
0000278b: POP
0000278c: SWAP2
0000278d: POP
0000278e: SWAP2
0000278f: POP
00002790: PUSH1 0x00
00002792: DUP1
00002793: PUSH2 0x279a
00002796: PUSH2 0x1949
00002799: JUMP
0000279a: JUMPDEST
0000279b: POP
0000279c: SWAP1
0000279d: SWAP3
0000279e: POP
0000279f: SWAP1
000027a0: POP
000027a1: PUSH1 0x00
000027a3: PUSH2 0x27b5
000027a6: PUSH1 0x01
000027a8: PUSH1 0x01
000027aa: PUSH1 0x70
000027ac: SHL
000027ad: SUB
000027ae: DUP6
000027af: AND
000027b0: DUP9
000027b1: PUSH2 0x314e
000027b4: JUMP
000027b5: JUMPDEST
000027b6: PUSH1 0x0f
000027b8: SLOAD
000027b9: PUSH1 0x40
000027bb: DUP1
000027bc: MLOAD
000027bd: PUSH4 0x071f0653
000027c2: PUSH1 0xe0
000027c4: SHL
000027c5: DUP2
000027c6: MSTORE
000027c7: PUSH1 0x04
000027c9: DUP2
000027ca: ADD
000027cb: DUP5
000027cc: SWAP1
000027cd: MSTORE
000027ce: PUSH1 0x01
000027d0: PUSH1 0x01
000027d2: PUSH1 0x70
000027d4: SHL
000027d5: SUB
000027d6: DUP1
000027d7: DUP9
000027d8: AND
000027d9: PUSH1 0x24
000027db: DUP4
000027dc: ADD
000027dd: MSTORE
000027de: DUP7
000027df: AND
000027e0: PUSH1 0x44
000027e2: DUP3
000027e3: ADD
000027e4: MSTORE
000027e5: SWAP1
000027e6: MLOAD
000027e7: SWAP3
000027e8: SWAP4
000027e9: POP
000027ea: PUSH1 0x00
000027ec: SWAP3
000027ed: PUSH1 0x01
000027ef: PUSH1 0x01
000027f1: PUSH1 0xa0
000027f3: SHL
000027f4: SUB
000027f5: SWAP1
000027f6: SWAP3
000027f7: AND
000027f8: SWAP2
000027f9: PUSH4 0x071f0653
000027fe: SWAP2
000027ff: PUSH1 0x64
00002801: DUP1
00002802: DUP3
00002803: ADD
00002804: SWAP3
00002805: PUSH1 0x20
00002807: SWAP3
00002808: SWAP1
00002809: SWAP2
0000280a: SWAP1
0000280b: DUP3
0000280c: SWAP1
0000280d: SUB
0000280e: ADD
0000280f: DUP2
00002810: DUP7
00002811: DUP1
00002812: EXTCODESIZE
00002813: ISZERO
00002814: DUP1
00002815: ISZERO
00002816: PUSH2 0x281e
00002819: JUMPI
0000281a: PUSH1 0x00
0000281c: DUP1
0000281d: REVERT
0000281e: JUMPDEST
0000281f: POP
00002820: GAS
00002821: STATICCALL
00002822: ISZERO
00002823: DUP1
00002824: ISZERO
00002825: PUSH2 0x2832
00002828: JUMPI
00002829: RETURNDATASIZE
0000282a: PUSH1 0x00
0000282c: DUP1
0000282d: RETURNDATACOPY
0000282e: RETURNDATASIZE
0000282f: PUSH1 0x00
00002831: REVERT
00002832: JUMPDEST
00002833: POP
00002834: POP
00002835: POP
00002836: POP
00002837: PUSH1 0x40
00002839: MLOAD
0000283a: RETURNDATASIZE
0000283b: PUSH1 0x20
0000283d: DUP2
0000283e: LT
0000283f: ISZERO
00002840: PUSH2 0x2848
00002843: JUMPI
00002844: PUSH1 0x00
00002846: DUP1
00002847: REVERT
00002848: JUMPDEST
00002849: POP
0000284a: MLOAD
0000284b: PUSH1 0x0b
0000284d: SLOAD
0000284e: SWAP1
0000284f: SWAP2
00002850: POP
00002851: PUSH2 0x22d2
00002854: SWAP1
00002855: PUSH2 0x2867
00002858: SWAP1
00002859: PUSH8 0x0de0b6b3a7640000
00002862: SWAP1
00002863: PUSH2 0x314e
00002866: JUMP
00002867: JUMPDEST
00002868: PUSH2 0x11ec
0000286b: PUSH8 0x0de0b6b5fb6fe400
00002874: PUSH2 0x24fd
00002877: DUP6
00002878: PUSH1 0x01
0000287a: PUSH1 0x01
0000287c: PUSH1 0x70
0000287e: SHL
0000287f: SUB
00002880: DUP13
00002881: AND
00002882: PUSH2 0x314e
00002885: JUMP
00002886: JUMPDEST
00002887: PUSH1 0x00
00002889: DUP1
0000288a: PUSH2 0x2891
0000288d: PUSH2 0x0b77
00002890: JUMP
00002891: JUMPDEST
00002892: POP
00002893: POP
00002894: SWAP1
00002895: POP
00002896: PUSH1 0x00
00002898: PUSH2 0x289f
0000289b: PUSH2 0x1949
0000289e: JUMP
0000289f: JUMPDEST
000028a0: POP
000028a1: POP
000028a2: PUSH1 0x0f
000028a4: SLOAD
000028a5: PUSH1 0x40
000028a7: DUP1
000028a8: MLOAD
000028a9: PUSH4 0x1fc09441
000028ae: PUSH1 0xe1
000028b0: SHL
000028b1: DUP2
000028b2: MSTORE
000028b3: PUSH1 0x01
000028b5: PUSH1 0x01
000028b7: PUSH1 0x70
000028b9: SHL
000028ba: SUB
000028bb: DUP1
000028bc: DUP8
000028bd: AND
000028be: PUSH1 0x04
000028c0: DUP4
000028c1: ADD
000028c2: MSTORE
000028c3: DUP5
000028c4: AND
000028c5: PUSH1 0x24
000028c7: DUP3
000028c8: ADD
000028c9: MSTORE
000028ca: SWAP1
000028cb: MLOAD
000028cc: SWAP3
000028cd: SWAP4
000028ce: POP
000028cf: PUSH1 0x01
000028d1: PUSH1 0x01
000028d3: PUSH1 0xa0
000028d5: SHL
000028d6: SUB
000028d7: SWAP1
000028d8: SWAP2
000028d9: AND
000028da: SWAP2
000028db: PUSH4 0x3f812882
000028e0: SWAP2
000028e1: PUSH1 0x44
000028e3: DUP1
000028e4: DUP3
000028e5: ADD
000028e6: SWAP3
000028e7: PUSH1 0x20
000028e9: SWAP3
000028ea: SWAP1
000028eb: SWAP2
000028ec: SWAP1
000028ed: DUP3
000028ee: SWAP1
000028ef: SUB
000028f0: ADD
000028f1: DUP2
000028f2: DUP7
000028f3: DUP1
000028f4: EXTCODESIZE
000028f5: ISZERO
000028f6: DUP1
000028f7: ISZERO
000028f8: PUSH2 0x2900
000028fb: JUMPI
000028fc: PUSH1 0x00
000028fe: DUP1
000028ff: REVERT
00002900: JUMPDEST
00002901: POP
00002902: GAS
00002903: STATICCALL
00002904: ISZERO
00002905: DUP1
00002906: ISZERO
00002907: PUSH2 0x2914
0000290a: JUMPI
0000290b: RETURNDATASIZE
0000290c: PUSH1 0x00
0000290e: DUP1
0000290f: RETURNDATACOPY
00002910: RETURNDATASIZE
00002911: PUSH1 0x00
00002913: REVERT
00002914: JUMPDEST
00002915: POP
00002916: POP
00002917: POP
00002918: POP
00002919: PUSH1 0x40
0000291b: MLOAD
0000291c: RETURNDATASIZE
0000291d: PUSH1 0x20
0000291f: DUP2
00002920: LT
00002921: ISZERO
00002922: PUSH2 0x292a
00002925: JUMPI
00002926: PUSH1 0x00
00002928: DUP1
00002929: REVERT
0000292a: JUMPDEST
0000292b: POP
0000292c: MLOAD
0000292d: SWAP3
0000292e: POP
0000292f: POP
00002930: POP
00002931: SWAP1
00002932: JUMP
00002933: JUMPDEST
00002934: PUSH1 0x06
00002936: PUSH1 0x20
00002938: SWAP1
00002939: DUP2
0000293a: MSTORE
0000293b: PUSH1 0x00
0000293d: SWAP3
0000293e: DUP4
0000293f: MSTORE
00002940: PUSH1 0x40
00002942: DUP1
00002943: DUP5
00002944: KECCAK256
00002945: SWAP1
00002946: SWAP2
00002947: MSTORE
00002948: SWAP1
00002949: DUP3
0000294a: MSTORE
0000294b: SWAP1
0000294c: KECCAK256
0000294d: SLOAD
0000294e: DUP2
0000294f: JUMP
00002950: JUMPDEST
00002951: PUSH1 0x0c
00002953: SLOAD
00002954: PUSH1 0x01
00002956: PUSH1 0x01
00002958: PUSH1 0xa0
0000295a: SHL
0000295b: SUB
0000295c: AND
0000295d: CALLER
0000295e: EQ
0000295f: PUSH2 0x299e
00002962: JUMPI
00002963: PUSH1 0x40
00002965: DUP1
00002966: MLOAD
00002967: PUSH3 0x461bcd
0000296b: PUSH1 0xe5
0000296d: SHL
0000296e: DUP2
0000296f: MSTORE
00002970: PUSH1 0x20
00002972: PUSH1 0x04
00002974: DUP3
00002975: ADD
00002976: MSTORE
00002977: PUSH1 0x0c
00002979: PUSH1 0x24
0000297b: DUP3
0000297c: ADD
0000297d: MSTORE
0000297e: PUSH12 0x24a82fa327a92124a22222a7
0000298b: PUSH1 0xa1
0000298d: SHL
0000298e: PUSH1 0x44
00002990: DUP3
00002991: ADD
00002992: MSTORE
00002993: SWAP1
00002994: MLOAD
00002995: SWAP1
00002996: DUP2
00002997: SWAP1
00002998: SUB
00002999: PUSH1 0x64
0000299b: ADD
0000299c: SWAP1
0000299d: REVERT
0000299e: JUMPDEST
0000299f: PUSH1 0x09
000029a1: DUP2
000029a2: SWAP1
000029a3: SSTORE
000029a4: PUSH1 0x40
000029a6: DUP1
000029a7: MLOAD
000029a8: DUP3
000029a9: DUP2
000029aa: MSTORE
000029ab: SWAP1
000029ac: MLOAD
000029ad: PUSH32 0x276a443d2b2c8332fc729f4de8847f12625c9f099e07b8501c91df8a4fcb1210
000029ce: SWAP2
000029cf: DUP2
000029d0: SWAP1
000029d1: SUB
000029d2: PUSH1 0x20
000029d4: ADD
000029d5: SWAP1
000029d6: LOG1
000029d7: POP
000029d8: JUMP
000029d9: JUMPDEST
000029da: PUSH1 0x0c
000029dc: SLOAD
000029dd: PUSH1 0x01
000029df: PUSH1 0x01
000029e1: PUSH1 0xa0
000029e3: SHL
000029e4: SUB
000029e5: AND
000029e6: CALLER
000029e7: EQ
000029e8: PUSH2 0x2a27
000029eb: JUMPI
000029ec: PUSH1 0x40
000029ee: DUP1
000029ef: MLOAD
000029f0: PUSH3 0x461bcd
000029f4: PUSH1 0xe5
000029f6: SHL
000029f7: DUP2
000029f8: MSTORE
000029f9: PUSH1 0x20
000029fb: PUSH1 0x04
000029fd: DUP3
000029fe: ADD
000029ff: MSTORE
00002a00: PUSH1 0x0c
00002a02: PUSH1 0x24
00002a04: DUP3
00002a05: ADD
00002a06: MSTORE
00002a07: PUSH12 0x24a82fa327a92124a22222a7
00002a14: PUSH1 0xa1
00002a16: SHL
00002a17: PUSH1 0x44
00002a19: DUP3
00002a1a: ADD
00002a1b: MSTORE
00002a1c: SWAP1
00002a1d: MLOAD
00002a1e: SWAP1
00002a1f: DUP2
00002a20: SWAP1
00002a21: SUB
00002a22: PUSH1 0x64
00002a24: ADD
00002a25: SWAP1
00002a26: REVERT
00002a27: JUMPDEST
00002a28: PUSH1 0x01
00002a2a: PUSH1 0x01
00002a2c: PUSH1 0xa0
00002a2e: SHL
00002a2f: SUB
00002a30: DUP3
00002a31: AND
00002a32: PUSH2 0x2a74
00002a35: JUMPI
00002a36: PUSH1 0x40
00002a38: DUP1
00002a39: MLOAD
00002a3a: PUSH3 0x461bcd
00002a3e: PUSH1 0xe5
00002a40: SHL
00002a41: DUP2
00002a42: MSTORE
00002a43: PUSH1 0x20
00002a45: PUSH1 0x04
00002a47: DUP3
00002a48: ADD
00002a49: MSTORE
00002a4a: PUSH1 0x0f
00002a4c: PUSH1 0x24
00002a4e: DUP3
00002a4f: ADD
00002a50: MSTORE
00002a51: PUSH15 0x49505f414444524553535f5a45524f
00002a61: PUSH1 0x88
00002a63: SHL
00002a64: PUSH1 0x44
00002a66: DUP3
00002a67: ADD
00002a68: MSTORE
00002a69: SWAP1
00002a6a: MLOAD
00002a6b: SWAP1
00002a6c: DUP2
00002a6d: SWAP1
00002a6e: SUB
00002a6f: PUSH1 0x64
00002a71: ADD
00002a72: SWAP1
00002a73: REVERT
00002a74: JUMPDEST
00002a75: PUSH2 0x2a7d
00002a78: DUP3
00002a79: PUSH2 0x3aae
00002a7c: JUMP
00002a7d: JUMPDEST
00002a7e: PUSH2 0x2ace
00002a81: JUMPI
00002a82: PUSH1 0x40
00002a84: DUP1
00002a85: MLOAD
00002a86: PUSH3 0x461bcd
00002a8a: PUSH1 0xe5
00002a8c: SHL
00002a8d: DUP2
00002a8e: MSTORE
00002a8f: PUSH1 0x20
00002a91: PUSH1 0x04
00002a93: DUP3
00002a94: ADD
00002a95: MSTORE
00002a96: PUSH1 0x1a
00002a98: PUSH1 0x24
00002a9a: DUP3
00002a9b: ADD
00002a9c: MSTORE
00002a9d: PUSH32 0x49505f4f5241434c455f4d5553545f42455f434f4e5452414354000000000000
00002abe: PUSH1 0x44
00002ac0: DUP3
00002ac1: ADD
00002ac2: MSTORE
00002ac3: SWAP1
00002ac4: MLOAD
00002ac5: SWAP1
00002ac6: DUP2
00002ac7: SWAP1
00002ac8: SUB
00002ac9: PUSH1 0x64
00002acb: ADD
00002acc: SWAP1
00002acd: REVERT
00002ace: JUMPDEST
00002acf: PUSH2 0x2ad7
00002ad2: DUP5
00002ad3: PUSH2 0x3aae
00002ad6: JUMP
00002ad7: JUMPDEST
00002ad8: DUP1
00002ad9: ISZERO
00002ada: PUSH2 0x2ae7
00002add: JUMPI
00002ade: POP
00002adf: PUSH2 0x2ae7
00002ae2: DUP4
00002ae3: PUSH2 0x3aae
00002ae6: JUMP
00002ae7: JUMPDEST
00002ae8: PUSH2 0x2b38
00002aeb: JUMPI
00002aec: PUSH1 0x40
00002aee: DUP1
00002aef: MLOAD
00002af0: PUSH3 0x461bcd
00002af4: PUSH1 0xe5
00002af6: SHL
00002af7: DUP2
00002af8: MSTORE
00002af9: PUSH1 0x20
00002afb: PUSH1 0x04
00002afd: DUP3
00002afe: ADD
00002aff: MSTORE
00002b00: PUSH1 0x19
00002b02: PUSH1 0x24
00002b04: DUP3
00002b05: ADD
00002b06: MSTORE
00002b07: PUSH32 0x49505f544f4b454e5f4d5553545f42455f434f4e545241435400000000000000
00002b28: PUSH1 0x44
00002b2a: DUP3
00002b2b: ADD
00002b2c: MSTORE
00002b2d: SWAP1
00002b2e: MLOAD
00002b2f: SWAP1
00002b30: DUP2
00002b31: SWAP1
00002b32: SUB
00002b33: PUSH1 0x64
00002b35: ADD
00002b36: SWAP1
00002b37: REVERT
00002b38: JUMPDEST
00002b39: PUSH1 0x0d
00002b3b: DUP1
00002b3c: SLOAD
00002b3d: PUSH1 0x01
00002b3f: PUSH1 0x01
00002b41: PUSH1 0xa0
00002b43: SHL
00002b44: SUB
00002b45: SWAP6
00002b46: DUP7
00002b47: AND
00002b48: PUSH1 0x01
00002b4a: PUSH1 0x01
00002b4c: PUSH1 0xa0
00002b4e: SHL
00002b4f: SUB
00002b50: NOT
00002b51: SWAP2
00002b52: DUP3
00002b53: AND
00002b54: OR
00002b55: SWAP1
00002b56: SWAP2
00002b57: SSTORE
00002b58: PUSH1 0x0e
00002b5a: DUP1
00002b5b: SLOAD
00002b5c: SWAP5
00002b5d: DUP7
00002b5e: AND
00002b5f: SWAP5
00002b60: DUP3
00002b61: AND
00002b62: SWAP5
00002b63: SWAP1
00002b64: SWAP5
00002b65: OR
00002b66: SWAP1
00002b67: SWAP4
00002b68: SSTORE
00002b69: PUSH1 0x0f
00002b6b: DUP1
00002b6c: SLOAD
00002b6d: SWAP3
00002b6e: DUP6
00002b6f: AND
00002b70: SWAP3
00002b71: DUP5
00002b72: AND
00002b73: SWAP3
00002b74: SWAP1
00002b75: SWAP3
00002b76: OR
00002b77: SWAP1
00002b78: SWAP2
00002b79: SSTORE
00002b7a: PUSH1 0x10
00002b7c: DUP1
00002b7d: SLOAD
00002b7e: SWAP2
00002b7f: SWAP1
00002b80: SWAP4
00002b81: AND
00002b82: SWAP2
00002b83: AND
00002b84: OR
00002b85: SWAP1
00002b86: SSTORE
00002b87: JUMP
00002b88: JUMPDEST
00002b89: PUSH1 0x0a
00002b8b: SLOAD
00002b8c: DUP2
00002b8d: JUMP
00002b8e: JUMPDEST
00002b8f: PUSH1 0x0c
00002b91: SLOAD
00002b92: PUSH1 0x01
00002b94: PUSH1 0x01
00002b96: PUSH1 0xa0
00002b98: SHL
00002b99: SUB
00002b9a: AND
00002b9b: CALLER
00002b9c: EQ
00002b9d: PUSH2 0x2bdc
00002ba0: JUMPI
00002ba1: PUSH1 0x40
00002ba3: DUP1
00002ba4: MLOAD
00002ba5: PUSH3 0x461bcd
00002ba9: PUSH1 0xe5
00002bab: SHL
00002bac: DUP2
00002bad: MSTORE
00002bae: PUSH1 0x20
00002bb0: PUSH1 0x04
00002bb2: DUP3
00002bb3: ADD
00002bb4: MSTORE
00002bb5: PUSH1 0x0c
00002bb7: PUSH1 0x24
00002bb9: DUP3
00002bba: ADD
00002bbb: MSTORE
00002bbc: PUSH12 0x24a82fa327a92124a22222a7
00002bc9: PUSH1 0xa1
00002bcb: SHL
00002bcc: PUSH1 0x44
00002bce: DUP3
00002bcf: ADD
00002bd0: MSTORE
00002bd1: SWAP1
00002bd2: MLOAD
00002bd3: SWAP1
00002bd4: DUP2
00002bd5: SWAP1
00002bd6: SUB
00002bd7: PUSH1 0x64
00002bd9: ADD
00002bda: SWAP1
00002bdb: REVERT
00002bdc: JUMPDEST
00002bdd: PUSH1 0x14
00002bdf: DUP2
00002be0: SWAP1
00002be1: SSTORE
00002be2: PUSH1 0x40
00002be4: DUP1
00002be5: MLOAD
00002be6: DUP3
00002be7: DUP2
00002be8: MSTORE
00002be9: SWAP1
00002bea: MLOAD
00002beb: PUSH32 0xe966d8dc3048c1b7a968db22b3b768457971432a526a78d0b9923bd1c9c3e621
00002c0c: SWAP2
00002c0d: DUP2
00002c0e: SWAP1
00002c0f: SUB
00002c10: PUSH1 0x20
00002c12: ADD
00002c13: SWAP1
00002c14: LOG1
00002c15: POP
00002c16: JUMP
00002c17: JUMPDEST
00002c18: PUSH1 0x00
00002c1a: DUP1
00002c1b: PUSH1 0x00
00002c1d: PUSH2 0x2c24
00002c20: PUSH2 0x0b77
00002c23: JUMP
00002c24: JUMPDEST
00002c25: POP
00002c26: SWAP2
00002c27: POP
00002c28: SWAP2
00002c29: POP
00002c2a: DUP2
00002c2b: PUSH1 0x01
00002c2d: PUSH1 0x01
00002c2f: PUSH1 0x70
00002c31: SHL
00002c32: SUB
00002c33: AND
00002c34: PUSH1 0x00
00002c36: EQ
00002c37: DUP1
00002c38: PUSH2 0x2c48
00002c3b: JUMPI
00002c3c: POP
00002c3d: PUSH1 0x01
00002c3f: PUSH1 0x01
00002c41: PUSH1 0x70
00002c43: SHL
00002c44: SUB
00002c45: DUP2
00002c46: AND
00002c47: ISZERO
00002c48: JUMPDEST
00002c49: ISZERO
00002c4a: PUSH2 0x2c58
00002c4d: JUMPI
00002c4e: PUSH1 0x00
00002c50: SWAP3
00002c51: POP
00002c52: POP
00002c53: POP
00002c54: PUSH2 0x210e
00002c57: JUMP
00002c58: JUMPDEST
00002c59: PUSH1 0x0f
00002c5b: SLOAD
00002c5c: PUSH1 0x40
00002c5e: DUP1
00002c5f: MLOAD
00002c60: PUSH4 0xb16c524b
00002c65: PUSH1 0xe0
00002c67: SHL
00002c68: DUP2
00002c69: MSTORE
00002c6a: SWAP1
00002c6b: MLOAD
00002c6c: PUSH1 0x00
00002c6e: SWAP3
00002c6f: PUSH1 0x01
00002c71: PUSH1 0x01
00002c73: PUSH1 0xa0
00002c75: SHL
00002c76: SUB
00002c77: AND
00002c78: SWAP2
00002c79: PUSH4 0xb16c524b
00002c7e: SWAP2
00002c7f: PUSH1 0x04
00002c81: DUP1
00002c82: DUP4
00002c83: ADD
00002c84: SWAP3
00002c85: PUSH1 0x20
00002c87: SWAP3
00002c88: SWAP2
00002c89: SWAP1
00002c8a: DUP3
00002c8b: SWAP1
00002c8c: SUB
00002c8d: ADD
00002c8e: DUP2
00002c8f: DUP7
00002c90: DUP1
00002c91: EXTCODESIZE
00002c92: ISZERO
00002c93: DUP1
00002c94: ISZERO
00002c95: PUSH2 0x2c9d
00002c98: JUMPI
00002c99: PUSH1 0x00
00002c9b: DUP1
00002c9c: REVERT
00002c9d: JUMPDEST
00002c9e: POP
00002c9f: GAS
00002ca0: STATICCALL
00002ca1: ISZERO
00002ca2: DUP1
00002ca3: ISZERO
00002ca4: PUSH2 0x2cb1
00002ca7: JUMPI
00002ca8: RETURNDATASIZE
00002ca9: PUSH1 0x00
00002cab: DUP1
00002cac: RETURNDATACOPY
00002cad: RETURNDATASIZE
00002cae: PUSH1 0x00
00002cb0: REVERT
00002cb1: JUMPDEST
00002cb2: POP
00002cb3: POP
00002cb4: POP
00002cb5: POP
00002cb6: PUSH1 0x40
00002cb8: MLOAD
00002cb9: RETURNDATASIZE
00002cba: PUSH1 0x20
00002cbc: DUP2
00002cbd: LT
00002cbe: ISZERO
00002cbf: PUSH2 0x2cc7
00002cc2: JUMPI
00002cc3: PUSH1 0x00
00002cc5: DUP1
00002cc6: REVERT
00002cc7: JUMPDEST
00002cc8: POP
00002cc9: MLOAD
00002cca: PUSH1 0x0f
00002ccc: SLOAD
00002ccd: PUSH1 0x40
00002ccf: DUP1
00002cd0: MLOAD
00002cd1: PUSH4 0x90c7204d
00002cd6: PUSH1 0xe0
00002cd8: SHL
00002cd9: DUP2
00002cda: MSTORE
00002cdb: SWAP1
00002cdc: MLOAD
00002cdd: SWAP3
00002cde: SWAP4
00002cdf: POP
00002ce0: PUSH1 0x00
00002ce2: SWAP3
00002ce3: PUSH1 0x01
00002ce5: PUSH1 0x01
00002ce7: PUSH1 0xa0
00002ce9: SHL
00002cea: SUB
00002ceb: SWAP1
00002cec: SWAP3
00002ced: AND
00002cee: SWAP2
00002cef: PUSH4 0x90c7204d
00002cf4: SWAP2
00002cf5: PUSH1 0x04
00002cf7: DUP1
00002cf8: DUP3
00002cf9: ADD
00002cfa: SWAP3
00002cfb: PUSH1 0x20
00002cfd: SWAP3
00002cfe: SWAP1
00002cff: SWAP2
00002d00: SWAP1
00002d01: DUP3
00002d02: SWAP1
00002d03: SUB
00002d04: ADD
00002d05: DUP2
00002d06: DUP7
00002d07: DUP1
00002d08: EXTCODESIZE
00002d09: ISZERO
00002d0a: DUP1
00002d0b: ISZERO
00002d0c: PUSH2 0x2d14
00002d0f: JUMPI
00002d10: PUSH1 0x00
00002d12: DUP1
00002d13: REVERT
00002d14: JUMPDEST
00002d15: POP
00002d16: GAS
00002d17: STATICCALL
00002d18: ISZERO
00002d19: DUP1
00002d1a: ISZERO
00002d1b: PUSH2 0x2d28
00002d1e: JUMPI
00002d1f: RETURNDATASIZE
00002d20: PUSH1 0x00
00002d22: DUP1
00002d23: RETURNDATACOPY
00002d24: RETURNDATASIZE
00002d25: PUSH1 0x00
00002d27: REVERT
00002d28: JUMPDEST
00002d29: POP
00002d2a: POP
00002d2b: POP
00002d2c: POP
00002d2d: PUSH1 0x40
00002d2f: MLOAD
00002d30: RETURNDATASIZE
00002d31: PUSH1 0x20
00002d33: DUP2
00002d34: LT
00002d35: ISZERO
00002d36: PUSH2 0x2d3e
00002d39: JUMPI
00002d3a: PUSH1 0x00
00002d3c: DUP1
00002d3d: REVERT
00002d3e: JUMPDEST
00002d3f: POP
00002d40: MLOAD
00002d41: SWAP1
00002d42: POP
00002d43: PUSH1 0x00
00002d45: PUSH2 0x2d4c
00002d48: PUSH2 0x2886
00002d4b: JUMP
00002d4c: JUMPDEST
00002d4d: SWAP1
00002d4e: POP
00002d4f: PUSH1 0x00
00002d51: PUSH2 0x2d5a
00002d54: DUP9
00002d55: DUP5
00002d56: PUSH2 0x3c43
00002d59: JUMP
00002d5a: JUMPDEST
00002d5b: SWAP1
00002d5c: POP
00002d5d: PUSH1 0x00
00002d5f: PUSH2 0x2d71
00002d62: PUSH1 0x01
00002d64: PUSH1 0x01
00002d66: PUSH1 0x70
00002d68: SHL
00002d69: SUB
00002d6a: DUP9
00002d6b: AND
00002d6c: DUP7
00002d6d: PUSH2 0x3c43
00002d70: JUMP
00002d71: JUMPDEST
00002d72: SWAP1
00002d73: POP
00002d74: PUSH1 0x00
00002d76: PUSH2 0x2d88
00002d79: PUSH1 0x01
00002d7b: PUSH1 0x01
00002d7d: PUSH1 0x70
00002d7f: SHL
00002d80: SUB
00002d81: DUP9
00002d82: AND
00002d83: DUP7
00002d84: PUSH2 0x3c43
00002d87: JUMP
00002d88: JUMPDEST
00002d89: SWAP1
00002d8a: POP
00002d8b: PUSH1 0x00
00002d8d: PUSH2 0x2da6
00002d90: DUP6
00002d91: PUSH2 0x24fd
00002d94: PUSH8 0x0de0b6b3a7640000
00002d9d: PUSH2 0x11ec
00002da0: DUP8
00002da1: DUP10
00002da2: PUSH2 0x3534
00002da5: JUMP
00002da6: JUMPDEST
00002da7: SWAP1
00002da8: POP
00002da9: PUSH1 0x00
00002dab: PUSH2 0x2dc6
00002dae: DUP4
00002daf: PUSH2 0x20a3
00002db2: DUP8
00002db3: DUP2
00002db4: PUSH8 0x0de0b6b3a7640000
00002dbd: PUSH2 0x11ec
00002dc0: DUP11
00002dc1: DUP14
00002dc2: PUSH2 0x3534
00002dc5: JUMP
00002dc6: JUMPDEST
00002dc7: SWAP1
00002dc8: POP
00002dc9: PUSH1 0x00
00002dcb: PUSH2 0x2dd4
00002dce: DUP4
00002dcf: DUP4
00002dd0: PUSH2 0x3684
00002dd3: JUMP
00002dd4: JUMPDEST
00002dd5: SWAP1
00002dd6: POP
00002dd7: DUP5
00002dd8: PUSH2 0x2ded
00002ddb: DUP9
00002ddc: PUSH2 0x11ec
00002ddf: DUP5
00002de0: PUSH8 0x0de0b6b3a7640000
00002de9: PUSH2 0x3534
00002dec: JUMP
00002ded: JUMPDEST
00002dee: LT
00002def: ISZERO
00002df0: DUP1
00002df1: PUSH2 0x2dfa
00002df4: JUMPI
00002df5: POP
00002df6: DUP6
00002df7: DUP2
00002df8: LT
00002df9: ISZERO
00002dfa: JUMPDEST
00002dfb: ISZERO
00002dfc: PUSH2 0x2e13
00002dff: JUMPI
00002e00: PUSH1 0x00
00002e02: SWAP12
00002e03: POP
00002e04: POP
00002e05: POP
00002e06: POP
00002e07: POP
00002e08: POP
00002e09: POP
00002e0a: POP
00002e0b: POP
00002e0c: POP
00002e0d: POP
00002e0e: POP
00002e0f: PUSH2 0x210e
00002e12: JUMP
00002e13: JUMPDEST
00002e14: PUSH2 0x2100
00002e17: DUP2
00002e18: DUP10
00002e19: PUSH2 0x3c93
00002e1c: JUMP
00002e1d: JUMPDEST
00002e1e: PUSH1 0x17
00002e20: SLOAD
00002e21: PUSH1 0x01
00002e23: EQ
00002e24: PUSH2 0x2e60
00002e27: JUMPI
00002e28: PUSH1 0x40
00002e2a: DUP1
00002e2b: MLOAD
00002e2c: PUSH3 0x461bcd
00002e30: PUSH1 0xe5
00002e32: SHL
00002e33: DUP2
00002e34: MSTORE
00002e35: PUSH1 0x20
00002e37: PUSH1 0x04
00002e39: DUP3
00002e3a: ADD
00002e3b: MSTORE
00002e3c: PUSH1 0x09
00002e3e: PUSH1 0x24
00002e40: DUP3
00002e41: ADD
00002e42: MSTORE
00002e43: PUSH9 0x125417d313d0d2d151
00002e4d: PUSH1 0xba
00002e4f: SHL
00002e50: PUSH1 0x44
00002e52: DUP3
00002e53: ADD
00002e54: MSTORE
00002e55: SWAP1
00002e56: MLOAD
00002e57: SWAP1
00002e58: DUP2
00002e59: SWAP1
00002e5a: SUB
00002e5b: PUSH1 0x64
00002e5d: ADD
00002e5e: SWAP1
00002e5f: REVERT
00002e60: JUMPDEST
00002e61: PUSH1 0x00
00002e63: PUSH1 0x17
00002e65: SSTORE
00002e66: PUSH2 0x2e6e
00002e69: CALLER
00002e6a: PUSH2 0x3282
00002e6d: JUMP
00002e6e: JUMPDEST
00002e6f: PUSH2 0x2eb8
00002e72: JUMPI
00002e73: PUSH1 0x40
00002e75: DUP1
00002e76: MLOAD
00002e77: PUSH3 0x461bcd
00002e7b: PUSH1 0xe5
00002e7d: SHL
00002e7e: DUP2
00002e7f: MSTORE
00002e80: PUSH1 0x20
00002e82: PUSH1 0x04
00002e84: DUP3
00002e85: ADD
00002e86: MSTORE
00002e87: PUSH1 0x16
00002e89: PUSH1 0x24
00002e8b: DUP3
00002e8c: ADD
00002e8d: MSTORE
00002e8e: PUSH22 0x24a82faaa720aaaa2427a924ad22a22faa2920a222a9
00002ea5: PUSH1 0x51
00002ea7: SHL
00002ea8: PUSH1 0x44
00002eaa: DUP3
00002eab: ADD
00002eac: MSTORE
00002ead: SWAP1
00002eae: MLOAD
00002eaf: SWAP1
00002eb0: DUP2
00002eb1: SWAP1
00002eb2: SUB
00002eb3: PUSH1 0x64
00002eb5: ADD
00002eb6: SWAP1
00002eb7: REVERT
00002eb8: JUMPDEST
00002eb9: PUSH2 0x2ec0
00002ebc: PUSH2 0x309f
00002ebf: JUMP
00002ec0: JUMPDEST
00002ec1: PUSH1 0x01
00002ec3: PUSH1 0x17
00002ec5: SSTORE
00002ec6: JUMP
00002ec7: JUMPDEST
00002ec8: PUSH1 0x40
00002eca: DUP1
00002ecb: MLOAD
00002ecc: DUP1
00002ecd: DUP3
00002ece: ADD
00002ecf: DUP3
00002ed0: MSTORE
00002ed1: PUSH1 0x19
00002ed3: DUP2
00002ed4: MSTORE
00002ed5: PUSH32 0x7472616e7366657228616464726573732c75696e743235362900000000000000
00002ef6: PUSH1 0x20
00002ef8: SWAP2
00002ef9: DUP3
00002efa: ADD
00002efb: MSTORE
00002efc: DUP2
00002efd: MLOAD
00002efe: PUSH1 0x01
00002f00: PUSH1 0x01
00002f02: PUSH1 0xa0
00002f04: SHL
00002f05: SUB
00002f06: DUP6
00002f07: DUP2
00002f08: AND
00002f09: PUSH1 0x24
00002f0b: DUP4
00002f0c: ADD
00002f0d: MSTORE
00002f0e: PUSH1 0x44
00002f10: DUP1
00002f11: DUP4
00002f12: ADD
00002f13: DUP7
00002f14: SWAP1
00002f15: MSTORE
00002f16: DUP5
00002f17: MLOAD
00002f18: DUP1
00002f19: DUP5
00002f1a: SUB
00002f1b: SWAP1
00002f1c: SWAP2
00002f1d: ADD
00002f1e: DUP2
00002f1f: MSTORE
00002f20: PUSH1 0x64
00002f22: SWAP1
00002f23: SWAP3
00002f24: ADD
00002f25: DUP5
00002f26: MSTORE
00002f27: SWAP2
00002f28: DUP2
00002f29: ADD
00002f2a: DUP1
00002f2b: MLOAD
00002f2c: PUSH1 0x01
00002f2e: PUSH1 0x01
00002f30: PUSH1 0xe0
00002f32: SHL
00002f33: SUB
00002f34: AND
00002f35: PUSH4 0xa9059cbb
00002f3a: PUSH1 0xe0
00002f3c: SHL
00002f3d: OR
00002f3e: DUP2
00002f3f: MSTORE
00002f40: SWAP3
00002f41: MLOAD
00002f42: DUP2
00002f43: MLOAD
00002f44: PUSH1 0x00
00002f46: SWAP5
00002f47: PUSH1 0x60
00002f49: SWAP5
00002f4a: DUP10
00002f4b: AND
00002f4c: SWAP4
00002f4d: SWAP3
00002f4e: SWAP2
00002f4f: DUP3
00002f50: SWAP2
00002f51: SWAP1
00002f52: DUP1
00002f53: DUP4
00002f54: DUP4
00002f55: JUMPDEST
00002f56: PUSH1 0x20
00002f58: DUP4
00002f59: LT
00002f5a: PUSH2 0x2f74
00002f5d: JUMPI
00002f5e: DUP1
00002f5f: MLOAD
00002f60: DUP3
00002f61: MSTORE
00002f62: PUSH1 0x1f
00002f64: NOT
00002f65: SWAP1
00002f66: SWAP3
00002f67: ADD
00002f68: SWAP2
00002f69: PUSH1 0x20
00002f6b: SWAP2
00002f6c: DUP3
00002f6d: ADD
00002f6e: SWAP2
00002f6f: ADD
00002f70: PUSH2 0x2f55
00002f73: JUMP
00002f74: JUMPDEST
00002f75: PUSH1 0x01
00002f77: DUP4
00002f78: PUSH1 0x20
00002f7a: SUB
00002f7b: PUSH2 0x0100
00002f7e: EXP
00002f7f: SUB
00002f80: DUP1
00002f81: NOT
00002f82: DUP3
00002f83: MLOAD
00002f84: AND
00002f85: DUP2
00002f86: DUP5
00002f87: MLOAD
00002f88: AND
00002f89: DUP1
00002f8a: DUP3
00002f8b: OR
00002f8c: DUP6
00002f8d: MSTORE
00002f8e: POP
00002f8f: POP
00002f90: POP
00002f91: POP
00002f92: POP
00002f93: POP
00002f94: SWAP1
00002f95: POP
00002f96: ADD
00002f97: SWAP2
00002f98: POP
00002f99: POP
00002f9a: PUSH1 0x00
00002f9c: PUSH1 0x40
00002f9e: MLOAD
00002f9f: DUP1
00002fa0: DUP4
00002fa1: SUB
00002fa2: DUP2
00002fa3: PUSH1 0x00
00002fa5: DUP7
00002fa6: GAS
00002fa7: CALL
00002fa8: SWAP2
00002fa9: POP
00002faa: POP
00002fab: RETURNDATASIZE
00002fac: DUP1
00002fad: PUSH1 0x00
00002faf: DUP2
00002fb0: EQ
00002fb1: PUSH2 0x2fd6
00002fb4: JUMPI
00002fb5: PUSH1 0x40
00002fb7: MLOAD
00002fb8: SWAP2
00002fb9: POP
00002fba: PUSH1 0x1f
00002fbc: NOT
00002fbd: PUSH1 0x3f
00002fbf: RETURNDATASIZE
00002fc0: ADD
00002fc1: AND
00002fc2: DUP3
00002fc3: ADD
00002fc4: PUSH1 0x40
00002fc6: MSTORE
00002fc7: RETURNDATASIZE
00002fc8: DUP3
00002fc9: MSTORE
00002fca: RETURNDATASIZE
00002fcb: PUSH1 0x00
00002fcd: PUSH1 0x20
00002fcf: DUP5
00002fd0: ADD
00002fd1: RETURNDATACOPY
00002fd2: PUSH2 0x2fdb
00002fd5: JUMP
00002fd6: JUMPDEST
00002fd7: PUSH1 0x60
00002fd9: SWAP2
00002fda: POP
00002fdb: JUMPDEST
00002fdc: POP
00002fdd: SWAP2
00002fde: POP
00002fdf: SWAP2
00002fe0: POP
00002fe1: DUP2
00002fe2: DUP1
00002fe3: ISZERO
00002fe4: PUSH2 0x3009
00002fe7: JUMPI
00002fe8: POP
00002fe9: DUP1
00002fea: MLOAD
00002feb: ISZERO
00002fec: DUP1
00002fed: PUSH2 0x3009
00002ff0: JUMPI
00002ff1: POP
00002ff2: DUP1
00002ff3: DUP1
00002ff4: PUSH1 0x20
00002ff6: ADD
00002ff7: SWAP1
00002ff8: MLOAD
00002ff9: PUSH1 0x20
00002ffb: DUP2
00002ffc: LT
00002ffd: ISZERO
00002ffe: PUSH2 0x3006
00003001: JUMPI
00003002: PUSH1 0x00
00003004: DUP1
00003005: REVERT
00003006: JUMPDEST
00003007: POP
00003008: MLOAD
00003009: JUMPDEST
0000300a: PUSH2 0x304f
0000300d: JUMPI
0000300e: PUSH1 0x40
00003010: DUP1
00003011: MLOAD
00003012: PUSH3 0x461bcd
00003016: PUSH1 0xe5
00003018: SHL
00003019: DUP2
0000301a: MSTORE
0000301b: PUSH1 0x20
0000301d: PUSH1 0x04
0000301f: DUP3
00003020: ADD
00003021: MSTORE
00003022: PUSH1 0x12
00003024: PUSH1 0x24
00003026: DUP3
00003027: ADD
00003028: MSTORE
00003029: PUSH18 0x125417d514905394d1915497d19052531151
0000303c: PUSH1 0x72
0000303e: SHL
0000303f: PUSH1 0x44
00003041: DUP3
00003042: ADD
00003043: MSTORE
00003044: SWAP1
00003045: MLOAD
00003046: SWAP1
00003047: DUP2
00003048: SWAP1
00003049: SUB
0000304a: PUSH1 0x64
0000304c: ADD
0000304d: SWAP1
0000304e: REVERT
0000304f: JUMPDEST
00003050: POP
00003051: POP
00003052: POP
00003053: POP
00003054: POP
00003055: JUMP
00003056: JUMPDEST
00003057: PUSH1 0x02
00003059: DUP3
0000305a: SWAP1
0000305b: SSTORE
0000305c: PUSH1 0x03
0000305e: DUP2
0000305f: SWAP1
00003060: SSTORE
00003061: PUSH1 0x40
00003063: DUP1
00003064: MLOAD
00003065: DUP4
00003066: DUP2
00003067: MSTORE
00003068: PUSH1 0x20
0000306a: DUP2
0000306b: ADD
0000306c: DUP4
0000306d: SWAP1
0000306e: MSTORE
0000306f: DUP2
00003070: MLOAD
00003071: PUSH32 0x2cc59d6e1281c9f122c4f6930ae083db22762e74c7aacbfeded26fcbb367936b
00003092: SWAP3
00003093: SWAP2
00003094: DUP2
00003095: SWAP1
00003096: SUB
00003097: SWAP1
00003098: SWAP2
00003099: ADD
0000309a: SWAP1
0000309b: LOG1
0000309c: POP
0000309d: POP
0000309e: JUMP
0000309f: JUMPDEST
000030a0: PUSH1 0x0d
000030a2: SLOAD
000030a3: PUSH1 0x0e
000030a5: SLOAD
000030a6: PUSH2 0x30bb
000030a9: SWAP2
000030aa: PUSH1 0x01
000030ac: PUSH1 0x01
000030ae: PUSH1 0xa0
000030b0: SHL
000030b1: SUB
000030b2: SWAP1
000030b3: DUP2
000030b4: AND
000030b5: SWAP2
000030b6: AND
000030b7: PUSH2 0x3cdc
000030ba: JUMP
000030bb: JUMPDEST
000030bc: ADDRESS
000030bd: PUSH1 0x00
000030bf: SWAP1
000030c0: DUP2
000030c1: MSTORE
000030c2: PUSH1 0x05
000030c4: PUSH1 0x20
000030c6: MSTORE
000030c7: PUSH1 0x40
000030c9: SWAP1
000030ca: KECCAK256
000030cb: SLOAD
000030cc: DUP1
000030cd: ISZERO
000030ce: PUSH2 0x30e9
000030d1: JUMPI
000030d2: PUSH1 0x0c
000030d4: SLOAD
000030d5: PUSH2 0x30e9
000030d8: SWAP1
000030d9: ADDRESS
000030da: SWAP1
000030db: PUSH1 0x01
000030dd: PUSH1 0x01
000030df: PUSH1 0xa0
000030e1: SHL
000030e2: SUB
000030e3: AND
000030e4: DUP4
000030e5: PUSH2 0x318a
000030e8: JUMP
000030e9: JUMPDEST
000030ea: POP
000030eb: JUMP
000030ec: JUMPDEST
000030ed: PUSH1 0x01
000030ef: PUSH1 0x01
000030f1: PUSH1 0xa0
000030f3: SHL
000030f4: SUB
000030f5: DUP1
000030f6: DUP5
000030f7: AND
000030f8: PUSH1 0x00
000030fa: DUP2
000030fb: DUP2
000030fc: MSTORE
000030fd: PUSH1 0x06
000030ff: PUSH1 0x20
00003101: SWAP1
00003102: DUP2
00003103: MSTORE
00003104: PUSH1 0x40
00003106: DUP1
00003107: DUP4
00003108: KECCAK256
00003109: SWAP5
0000310a: DUP8
0000310b: AND
0000310c: DUP1
0000310d: DUP5
0000310e: MSTORE
0000310f: SWAP5
00003110: DUP3
00003111: MSTORE
00003112: SWAP2
00003113: DUP3
00003114: SWAP1
00003115: KECCAK256
00003116: DUP6
00003117: SWAP1
00003118: SSTORE
00003119: DUP2
0000311a: MLOAD
0000311b: DUP6
0000311c: DUP2
0000311d: MSTORE
0000311e: SWAP2
0000311f: MLOAD
00003120: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925
00003141: SWAP3
00003142: DUP2
00003143: SWAP1
00003144: SUB
00003145: SWAP1
00003146: SWAP2
00003147: ADD
00003148: SWAP1
00003149: LOG3
0000314a: POP
0000314b: POP
0000314c: POP
0000314d: JUMP
0000314e: JUMPDEST
0000314f: PUSH1 0x00
00003151: PUSH2 0x3183
00003154: DUP4
00003155: DUP4
00003156: PUSH1 0x40
00003158: MLOAD
00003159: DUP1
0000315a: PUSH1 0x40
0000315c: ADD
0000315d: PUSH1 0x40
0000315f: MSTORE
00003160: DUP1
00003161: PUSH1 0x10
00003163: DUP2
00003164: MSTORE
00003165: PUSH1 0x20
00003167: ADD
00003168: PUSH16 0x534d5f5355425f554e444552464c4f57
00003179: PUSH1 0x80
0000317b: SHL
0000317c: DUP2
0000317d: MSTORE
0000317e: POP
0000317f: PUSH2 0x3f35
00003182: JUMP
00003183: JUMPDEST
00003184: SWAP4
00003185: SWAP3
00003186: POP
00003187: POP
00003188: POP
00003189: JUMP
0000318a: JUMPDEST
0000318b: PUSH1 0x01
0000318d: PUSH1 0x01
0000318f: PUSH1 0xa0
00003191: SHL
00003192: SUB
00003193: DUP4
00003194: AND
00003195: PUSH1 0x00
00003197: SWAP1
00003198: DUP2
00003199: MSTORE
0000319a: PUSH1 0x05
0000319c: PUSH1 0x20
0000319e: MSTORE
0000319f: PUSH1 0x40
000031a1: SWAP1
000031a2: KECCAK256
000031a3: SLOAD
000031a4: PUSH2 0x31ad
000031a7: SWAP1
000031a8: DUP3
000031a9: PUSH2 0x314e
000031ac: JUMP
000031ad: JUMPDEST
000031ae: PUSH1 0x01
000031b0: PUSH1 0x01
000031b2: PUSH1 0xa0
000031b4: SHL
000031b5: SUB
000031b6: DUP1
000031b7: DUP6
000031b8: AND
000031b9: PUSH1 0x00
000031bb: SWAP1
000031bc: DUP2
000031bd: MSTORE
000031be: PUSH1 0x05
000031c0: PUSH1 0x20
000031c2: MSTORE
000031c3: PUSH1 0x40
000031c5: DUP1
000031c6: DUP3
000031c7: KECCAK256
000031c8: SWAP4
000031c9: SWAP1
000031ca: SWAP4
000031cb: SSTORE
000031cc: SWAP1
000031cd: DUP5
000031ce: AND
000031cf: DUP2
000031d0: MSTORE
000031d1: KECCAK256
000031d2: SLOAD
000031d3: PUSH2 0x31dc
000031d6: SWAP1
000031d7: DUP3
000031d8: PUSH2 0x3238
000031db: JUMP
000031dc: JUMPDEST
000031dd: PUSH1 0x01
000031df: PUSH1 0x01
000031e1: PUSH1 0xa0
000031e3: SHL
000031e4: SUB
000031e5: DUP1
000031e6: DUP5
000031e7: AND
000031e8: PUSH1 0x00
000031ea: DUP2
000031eb: DUP2
000031ec: MSTORE
000031ed: PUSH1 0x05
000031ef: PUSH1 0x20
000031f1: SWAP1
000031f2: DUP2
000031f3: MSTORE
000031f4: PUSH1 0x40
000031f6: SWAP2
000031f7: DUP3
000031f8: SWAP1
000031f9: KECCAK256
000031fa: SWAP5
000031fb: SWAP1
000031fc: SWAP5
000031fd: SSTORE
000031fe: DUP1
000031ff: MLOAD
00003200: DUP6
00003201: DUP2
00003202: MSTORE
00003203: SWAP1
00003204: MLOAD
00003205: SWAP2
00003206: SWAP4
00003207: SWAP3
00003208: DUP8
00003209: AND
0000320a: SWAP3
0000320b: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
0000322c: SWAP3
0000322d: SWAP2
0000322e: DUP3
0000322f: SWAP1
00003230: SUB
00003231: ADD
00003232: SWAP1
00003233: LOG3
00003234: POP
00003235: POP
00003236: POP
00003237: JUMP
00003238: JUMPDEST
00003239: DUP1
0000323a: DUP3
0000323b: ADD
0000323c: DUP3
0000323d: DUP2
0000323e: LT
0000323f: ISZERO
00003240: PUSH2 0x0bb2
00003243: JUMPI
00003244: PUSH1 0x40
00003246: DUP1
00003247: MLOAD
00003248: PUSH3 0x461bcd
0000324c: PUSH1 0xe5
0000324e: SHL
0000324f: DUP2
00003250: MSTORE
00003251: PUSH1 0x20
00003253: PUSH1 0x04
00003255: DUP3
00003256: ADD
00003257: MSTORE
00003258: PUSH1 0x0f
0000325a: PUSH1 0x24
0000325c: DUP3
0000325d: ADD
0000325e: MSTORE
0000325f: PUSH15 0x534d5f4144445f4f564552464c4f57
0000326f: PUSH1 0x88
00003271: SHL
00003272: PUSH1 0x44
00003274: DUP3
00003275: ADD
00003276: MSTORE
00003277: SWAP1
00003278: MLOAD
00003279: SWAP1
0000327a: DUP2
0000327b: SWAP1
0000327c: SUB
0000327d: PUSH1 0x64
0000327f: ADD
00003280: SWAP1
00003281: REVERT
00003282: JUMPDEST
00003283: PUSH1 0x10
00003285: SLOAD
00003286: PUSH1 0x00
00003288: SWAP1
00003289: PUSH1 0x01
0000328b: PUSH1 0x01
0000328d: PUSH1 0xa0
0000328f: SHL
00003290: SUB
00003291: DUP4
00003292: DUP2
00003293: AND
00003294: SWAP2
00003295: AND
00003296: EQ
00003297: DUP1
00003298: PUSH2 0x32ae
0000329b: JUMPI
0000329c: POP
0000329d: PUSH1 0x0c
0000329f: SLOAD
000032a0: PUSH1 0x01
000032a2: PUSH1 0x01
000032a4: PUSH1 0xa0
000032a6: SHL
000032a7: SUB
000032a8: DUP4
000032a9: DUP2
000032aa: AND
000032ab: SWAP2
000032ac: AND
000032ad: EQ
000032ae: JUMPDEST
000032af: DUP1
000032b0: PUSH2 0x0bb2
000032b3: JUMPI
000032b4: POP
000032b5: PUSH1 0x10
000032b7: SLOAD
000032b8: PUSH1 0x01
000032ba: PUSH1 0x01
000032bc: PUSH1 0xa0
000032be: SHL
000032bf: SUB
000032c0: SWAP1
000032c1: DUP2
000032c2: AND
000032c3: EQ
000032c4: SWAP3
000032c5: SWAP2
000032c6: POP
000032c7: POP
000032c8: JUMP
000032c9: JUMPDEST
000032ca: PUSH1 0x00
000032cc: DUP1
000032cd: PUSH1 0x00
000032cf: DUP5
000032d0: PUSH1 0x01
000032d2: PUSH1 0x01
000032d4: PUSH1 0xa0
000032d6: SHL
000032d7: SUB
000032d8: AND
000032d9: PUSH4 0x70a08231
000032de: ADDRESS
000032df: PUSH1 0x40
000032e1: MLOAD
000032e2: DUP3
000032e3: PUSH4 0xffffffff
000032e8: AND
000032e9: PUSH1 0xe0
000032eb: SHL
000032ec: DUP2
000032ed: MSTORE
000032ee: PUSH1 0x04
000032f0: ADD
000032f1: DUP1
000032f2: DUP3
000032f3: PUSH1 0x01
000032f5: PUSH1 0x01
000032f7: PUSH1 0xa0
000032f9: SHL
000032fa: SUB
000032fb: AND
000032fc: DUP2
000032fd: MSTORE
000032fe: PUSH1 0x20
00003300: ADD
00003301: SWAP2
00003302: POP
00003303: POP
00003304: PUSH1 0x20
00003306: PUSH1 0x40
00003308: MLOAD
00003309: DUP1
0000330a: DUP4
0000330b: SUB
0000330c: DUP2
0000330d: DUP7
0000330e: DUP1
0000330f: EXTCODESIZE
00003310: ISZERO
00003311: DUP1
00003312: ISZERO
00003313: PUSH2 0x331b
00003316: JUMPI
00003317: PUSH1 0x00
00003319: DUP1
0000331a: REVERT
0000331b: JUMPDEST
0000331c: POP
0000331d: GAS
0000331e: STATICCALL
0000331f: ISZERO
00003320: DUP1
00003321: ISZERO
00003322: PUSH2 0x332f
00003325: JUMPI
00003326: RETURNDATASIZE
00003327: PUSH1 0x00
00003329: DUP1
0000332a: RETURNDATACOPY
0000332b: RETURNDATASIZE
0000332c: PUSH1 0x00
0000332e: REVERT
0000332f: JUMPDEST
00003330: POP
00003331: POP
00003332: POP
00003333: POP
00003334: PUSH1 0x40
00003336: MLOAD
00003337: RETURNDATASIZE
00003338: PUSH1 0x20
0000333a: DUP2
0000333b: LT
0000333c: ISZERO
0000333d: PUSH2 0x3345
00003340: JUMPI
00003341: PUSH1 0x00
00003343: DUP1
00003344: REVERT
00003345: JUMPDEST
00003346: POP
00003347: MLOAD
00003348: PUSH1 0x40
0000334a: DUP1
0000334b: MLOAD
0000334c: PUSH4 0x70a08231
00003351: PUSH1 0xe0
00003353: SHL
00003354: DUP2
00003355: MSTORE
00003356: ADDRESS
00003357: PUSH1 0x04
00003359: DUP3
0000335a: ADD
0000335b: MSTORE
0000335c: SWAP1
0000335d: MLOAD
0000335e: SWAP2
0000335f: SWAP3
00003360: POP
00003361: PUSH1 0x00
00003363: SWAP2
00003364: PUSH1 0x01
00003366: PUSH1 0x01
00003368: PUSH1 0xa0
0000336a: SHL
0000336b: SUB
0000336c: DUP8
0000336d: AND
0000336e: SWAP2
0000336f: PUSH4 0x70a08231
00003374: SWAP2
00003375: PUSH1 0x24
00003377: DUP1
00003378: DUP4
00003379: ADD
0000337a: SWAP3
0000337b: PUSH1 0x20
0000337d: SWAP3
0000337e: SWAP2
0000337f: SWAP1
00003380: DUP3
00003381: SWAP1
00003382: SUB
00003383: ADD
00003384: DUP2
00003385: DUP7
00003386: DUP1
00003387: EXTCODESIZE
00003388: ISZERO
00003389: DUP1
0000338a: ISZERO
0000338b: PUSH2 0x3393
0000338e: JUMPI
0000338f: PUSH1 0x00
00003391: DUP1
00003392: REVERT
00003393: JUMPDEST
00003394: POP
00003395: GAS
00003396: STATICCALL
00003397: ISZERO
00003398: DUP1
00003399: ISZERO
0000339a: PUSH2 0x33a7
0000339d: JUMPI
0000339e: RETURNDATASIZE
0000339f: PUSH1 0x00
000033a1: DUP1
000033a2: RETURNDATACOPY
000033a3: RETURNDATASIZE
000033a4: PUSH1 0x00
000033a6: REVERT
000033a7: JUMPDEST
000033a8: POP
000033a9: POP
000033aa: POP
000033ab: POP
000033ac: PUSH1 0x40
000033ae: MLOAD
000033af: RETURNDATASIZE
000033b0: PUSH1 0x20
000033b2: DUP2
000033b3: LT
000033b4: ISZERO
000033b5: PUSH2 0x33bd
000033b8: JUMPI
000033b9: PUSH1 0x00
000033bb: DUP1
000033bc: REVERT
000033bd: JUMPDEST
000033be: POP
000033bf: MLOAD
000033c0: PUSH1 0x02
000033c2: SLOAD
000033c3: SWAP1
000033c4: SWAP2
000033c5: POP
000033c6: DUP3
000033c7: LT
000033c8: ISZERO
000033c9: PUSH2 0x3410
000033cc: JUMPI
000033cd: PUSH1 0x02
000033cf: DUP3
000033d0: SWAP1
000033d1: SSTORE
000033d2: PUSH1 0x03
000033d4: SLOAD
000033d5: PUSH1 0x40
000033d7: DUP1
000033d8: MLOAD
000033d9: DUP5
000033da: DUP2
000033db: MSTORE
000033dc: PUSH1 0x20
000033de: DUP2
000033df: ADD
000033e0: SWAP3
000033e1: SWAP1
000033e2: SWAP3
000033e3: MSTORE
000033e4: DUP1
000033e5: MLOAD
000033e6: PUSH32 0x2cc59d6e1281c9f122c4f6930ae083db22762e74c7aacbfeded26fcbb367936b
00003407: SWAP3
00003408: DUP2
00003409: SWAP1
0000340a: SUB
0000340b: SWAP1
0000340c: SWAP2
0000340d: ADD
0000340e: SWAP1
0000340f: LOG1
00003410: JUMPDEST
00003411: DUP1
00003412: PUSH1 0x03
00003414: SLOAD
00003415: GT
00003416: ISZERO
00003417: PUSH2 0x345d
0000341a: JUMPI
0000341b: PUSH1 0x03
0000341d: DUP2
0000341e: SWAP1
0000341f: SSTORE
00003420: PUSH1 0x02
00003422: SLOAD
00003423: PUSH1 0x40
00003425: DUP1
00003426: MLOAD
00003427: SWAP2
00003428: DUP3
00003429: MSTORE
0000342a: PUSH1 0x20
0000342c: DUP3
0000342d: ADD
0000342e: DUP4
0000342f: SWAP1
00003430: MSTORE
00003431: DUP1
00003432: MLOAD
00003433: PUSH32 0x2cc59d6e1281c9f122c4f6930ae083db22762e74c7aacbfeded26fcbb367936b
00003454: SWAP3
00003455: DUP2
00003456: SWAP1
00003457: SUB
00003458: SWAP1
00003459: SWAP2
0000345a: ADD
0000345b: SWAP1
0000345c: LOG1
0000345d: JUMPDEST
0000345e: PUSH1 0x02
00003460: SLOAD
00003461: PUSH2 0x346b
00003464: SWAP1
00003465: DUP4
00003466: SWAP1
00003467: PUSH2 0x314e
0000346a: JUMP
0000346b: JUMPDEST
0000346c: PUSH1 0x03
0000346e: SLOAD
0000346f: PUSH2 0x3479
00003472: SWAP1
00003473: DUP4
00003474: SWAP1
00003475: PUSH2 0x314e
00003478: JUMP
00003479: JUMPDEST
0000347a: SWAP4
0000347b: POP
0000347c: SWAP4
0000347d: POP
0000347e: POP
0000347f: POP
00003480: SWAP3
00003481: POP
00003482: SWAP3
00003483: SWAP1
00003484: POP
00003485: JUMP
00003486: JUMPDEST
00003487: PUSH1 0x0f
00003489: SLOAD
0000348a: PUSH1 0x40
0000348c: DUP1
0000348d: MLOAD
0000348e: PUSH4 0x0ce74fc5
00003493: PUSH1 0xe3
00003495: SHL
00003496: DUP2
00003497: MSTORE
00003498: SWAP1
00003499: MLOAD
0000349a: PUSH1 0x00
0000349c: SWAP3
0000349d: PUSH1 0x01
0000349f: PUSH1 0x01
000034a1: PUSH1 0xa0
000034a3: SHL
000034a4: SUB
000034a5: AND
000034a6: SWAP2
000034a7: PUSH4 0x673a7e28
000034ac: SWAP2
000034ad: PUSH1 0x04
000034af: DUP1
000034b0: DUP4
000034b1: ADD
000034b2: SWAP3
000034b3: PUSH1 0x20
000034b5: SWAP3
000034b6: SWAP2
000034b7: SWAP1
000034b8: DUP3
000034b9: SWAP1
000034ba: SUB
000034bb: ADD
000034bc: DUP2
000034bd: DUP8
000034be: DUP8
000034bf: DUP1
000034c0: EXTCODESIZE
000034c1: ISZERO
000034c2: DUP1
000034c3: ISZERO
000034c4: PUSH2 0x34cc
000034c7: JUMPI
000034c8: PUSH1 0x00
000034ca: DUP1
000034cb: REVERT
000034cc: JUMPDEST
000034cd: POP
000034ce: GAS
000034cf: CALL
000034d0: ISZERO
000034d1: DUP1
000034d2: ISZERO
000034d3: PUSH2 0x34e0
000034d6: JUMPI
000034d7: RETURNDATASIZE
000034d8: PUSH1 0x00
000034da: DUP1
000034db: RETURNDATACOPY
000034dc: RETURNDATASIZE
000034dd: PUSH1 0x00
000034df: REVERT
000034e0: JUMPDEST
000034e1: POP
000034e2: POP
000034e3: POP
000034e4: POP
000034e5: PUSH1 0x40
000034e7: MLOAD
000034e8: RETURNDATASIZE
000034e9: PUSH1 0x20
000034eb: DUP2
000034ec: LT
000034ed: ISZERO
000034ee: PUSH2 0x34f6
000034f1: JUMPI
000034f2: PUSH1 0x00
000034f4: DUP1
000034f5: REVERT
000034f6: JUMPDEST
000034f7: POP
000034f8: MLOAD
000034f9: SWAP1
000034fa: POP
000034fb: PUSH1 0x00
000034fd: PUSH2 0x3504
00003500: PUSH2 0x1949
00003503: JUMP
00003504: JUMPDEST
00003505: SWAP3
00003506: POP
00003507: POP
00003508: POP
00003509: DUP1
0000350a: PUSH4 0xffffffff
0000350f: AND
00003510: DUP3
00003511: PUSH4 0xffffffff
00003516: AND
00003517: EQ
00003518: PUSH2 0x3530
0000351b: JUMPI
0000351c: PUSH2 0x3524
0000351f: DUP3
00003520: PUSH2 0x3ab4
00003523: JUMP
00003524: JUMPDEST
00003525: PUSH2 0x352c
00003528: PUSH2 0x2886
0000352b: JUMP
0000352c: JUMPDEST
0000352d: PUSH1 0x11
0000352f: SSTORE
00003530: JUMPDEST
00003531: POP
00003532: POP
00003533: JUMP
00003534: JUMPDEST
00003535: PUSH1 0x00
00003537: DUP2
00003538: ISZERO
00003539: DUP1
0000353a: PUSH2 0x354f
0000353d: JUMPI
0000353e: POP
0000353f: POP
00003540: DUP1
00003541: DUP3
00003542: MUL
00003543: DUP3
00003544: DUP3
00003545: DUP3
00003546: DUP2
00003547: PUSH2 0x354c
0000354a: JUMPI
0000354b: INVALID
0000354c: JUMPDEST
0000354d: DIV
0000354e: EQ
0000354f: JUMPDEST
00003550: PUSH2 0x0bb2
00003553: JUMPI
00003554: PUSH1 0x40
00003556: DUP1
00003557: MLOAD
00003558: PUSH3 0x461bcd
0000355c: PUSH1 0xe5
0000355e: SHL
0000355f: DUP2
00003560: MSTORE
00003561: PUSH1 0x20
00003563: PUSH1 0x04
00003565: DUP3
00003566: ADD
00003567: MSTORE
00003568: PUSH1 0x0f
0000356a: PUSH1 0x24
0000356c: DUP3
0000356d: ADD
0000356e: MSTORE
0000356f: PUSH15 0x534d5f4d554c5f4f564552464c4f57
0000357f: PUSH1 0x88
00003581: SHL
00003582: PUSH1 0x44
00003584: DUP3
00003585: ADD
00003586: MSTORE
00003587: SWAP1
00003588: MLOAD
00003589: SWAP1
0000358a: DUP2
0000358b: SWAP1
0000358c: SUB
0000358d: PUSH1 0x64
0000358f: ADD
00003590: SWAP1
00003591: REVERT
00003592: JUMPDEST
00003593: PUSH1 0x00
00003595: PUSH1 0x03
00003597: DUP3
00003598: GT
00003599: ISZERO
0000359a: PUSH2 0x35d5
0000359d: JUMPI
0000359e: POP
0000359f: DUP1
000035a0: PUSH1 0x01
000035a2: PUSH1 0x02
000035a4: DUP3
000035a5: DIV
000035a6: ADD
000035a7: JUMPDEST
000035a8: DUP2
000035a9: DUP2
000035aa: LT
000035ab: ISZERO
000035ac: PUSH2 0x35cf
000035af: JUMPI
000035b0: DUP1
000035b1: SWAP2
000035b2: POP
000035b3: PUSH1 0x02
000035b5: DUP2
000035b6: DUP3
000035b7: DUP6
000035b8: DUP2
000035b9: PUSH2 0x35be
000035bc: JUMPI
000035bd: INVALID
000035be: JUMPDEST
000035bf: DIV
000035c0: ADD
000035c1: DUP2
000035c2: PUSH2 0x35c7
000035c5: JUMPI
000035c6: INVALID
000035c7: JUMPDEST
000035c8: DIV
000035c9: SWAP1
000035ca: POP
000035cb: PUSH2 0x35a7
000035ce: JUMP
000035cf: JUMPDEST
000035d0: POP
000035d1: PUSH2 0x210e
000035d4: JUMP
000035d5: JUMPDEST
000035d6: DUP2
000035d7: ISZERO
000035d8: PUSH2 0x210e
000035db: JUMPI
000035dc: POP
000035dd: PUSH1 0x01
000035df: SWAP2
000035e0: SWAP1
000035e1: POP
000035e2: JUMP
000035e3: JUMPDEST
000035e4: PUSH1 0x04
000035e6: SLOAD
000035e7: PUSH2 0x35f0
000035ea: SWAP1
000035eb: DUP3
000035ec: PUSH2 0x3238
000035ef: JUMP
000035f0: JUMPDEST
000035f1: PUSH1 0x04
000035f3: SSTORE
000035f4: PUSH1 0x01
000035f6: PUSH1 0x01
000035f8: PUSH1 0xa0
000035fa: SHL
000035fb: SUB
000035fc: DUP3
000035fd: AND
000035fe: PUSH1 0x00
00003600: SWAP1
00003601: DUP2
00003602: MSTORE
00003603: PUSH1 0x05
00003605: PUSH1 0x20
00003607: MSTORE
00003608: PUSH1 0x40
0000360a: SWAP1
0000360b: KECCAK256
0000360c: SLOAD
0000360d: PUSH2 0x3616
00003610: SWAP1
00003611: DUP3
00003612: PUSH2 0x3238
00003615: JUMP
00003616: JUMPDEST
00003617: PUSH1 0x01
00003619: PUSH1 0x01
0000361b: PUSH1 0xa0
0000361d: SHL
0000361e: SUB
0000361f: DUP4
00003620: AND
00003621: PUSH1 0x00
00003623: DUP2
00003624: DUP2
00003625: MSTORE
00003626: PUSH1 0x05
00003628: PUSH1 0x20
0000362a: SWAP1
0000362b: DUP2
0000362c: MSTORE
0000362d: PUSH1 0x40
0000362f: DUP1
00003630: DUP4
00003631: KECCAK256
00003632: SWAP5
00003633: SWAP1
00003634: SWAP5
00003635: SSTORE
00003636: DUP4
00003637: MLOAD
00003638: DUP6
00003639: DUP2
0000363a: MSTORE
0000363b: SWAP4
0000363c: MLOAD
0000363d: SWAP3
0000363e: SWAP4
0000363f: SWAP2
00003640: SWAP3
00003641: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
00003662: SWAP3
00003663: DUP2
00003664: SWAP1
00003665: SUB
00003666: SWAP1
00003667: SWAP2
00003668: ADD
00003669: SWAP1
0000366a: LOG3
0000366b: POP
0000366c: POP
0000366d: JUMP
0000366e: JUMPDEST
0000366f: PUSH1 0x00
00003671: DUP2
00003672: DUP4
00003673: LT
00003674: PUSH2 0x367d
00003677: JUMPI
00003678: DUP2
00003679: PUSH2 0x3183
0000367c: JUMP
0000367d: JUMPDEST
0000367e: POP
0000367f: SWAP1
00003680: SWAP2
00003681: SWAP1
00003682: POP
00003683: JUMP
00003684: JUMPDEST
00003685: PUSH1 0x00
00003687: DUP1
00003688: DUP3
00003689: GT
0000368a: PUSH2 0x36cb
0000368d: JUMPI
0000368e: PUSH1 0x40
00003690: DUP1
00003691: MLOAD
00003692: PUSH3 0x461bcd
00003696: PUSH1 0xe5
00003698: SHL
00003699: DUP2
0000369a: MSTORE
0000369b: PUSH1 0x20
0000369d: PUSH1 0x04
0000369f: DUP3
000036a0: ADD
000036a1: MSTORE
000036a2: PUSH1 0x0e
000036a4: PUSH1 0x24
000036a6: DUP3
000036a7: ADD
000036a8: MSTORE
000036a9: PUSH14 0x534d5f4449565f42595f5a45524f
000036b8: PUSH1 0x90
000036ba: SHL
000036bb: PUSH1 0x44
000036bd: DUP3
000036be: ADD
000036bf: MSTORE
000036c0: SWAP1
000036c1: MLOAD
000036c2: SWAP1
000036c3: DUP2
000036c4: SWAP1
000036c5: SUB
000036c6: PUSH1 0x64
000036c8: ADD
000036c9: SWAP1
000036ca: REVERT
000036cb: JUMPDEST
000036cc: PUSH1 0x00
000036ce: DUP3
000036cf: DUP5
000036d0: DUP2
000036d1: PUSH2 0x36d6
000036d4: JUMPI
000036d5: INVALID
000036d6: JUMPDEST
000036d7: DIV
000036d8: SWAP5
000036d9: SWAP4
000036da: POP
000036db: POP
000036dc: POP
000036dd: POP
000036de: JUMP
000036df: JUMPDEST
000036e0: PUSH1 0x00
000036e2: DUP1
000036e3: PUSH2 0x36ea
000036e6: PUSH2 0x0b77
000036e9: JUMP
000036ea: JUMPDEST
000036eb: POP
000036ec: SWAP2
000036ed: POP
000036ee: SWAP2
000036ef: POP
000036f0: DUP4
000036f1: DUP3
000036f2: PUSH1 0x01
000036f4: PUSH1 0x01
000036f6: PUSH1 0x70
000036f8: SHL
000036f9: SUB
000036fa: AND
000036fb: EQ
000036fc: ISZERO
000036fd: DUP1
000036fe: PUSH2 0x3710
00003701: JUMPI
00003702: POP
00003703: DUP3
00003704: DUP2
00003705: PUSH1 0x01
00003707: PUSH1 0x01
00003709: PUSH1 0x70
0000370b: SHL
0000370c: SUB
0000370d: AND
0000370e: EQ
0000370f: ISZERO
00003710: JUMPDEST
00003711: ISZERO
00003712: PUSH2 0x377a
00003715: JUMPI
00003716: PUSH2 0x371f
00003719: DUP5
0000371a: DUP5
0000371b: PUSH2 0x389c
0000371e: JUMP
0000371f: JUMPDEST
00003720: PUSH1 0x00
00003722: SLOAD
00003723: PUSH1 0x01
00003725: SLOAD
00003726: PUSH2 0x377a
00003729: SWAP2
0000372a: PUSH2 0x3746
0000372d: SWAP2
0000372e: PUSH1 0x01
00003730: PUSH1 0x01
00003732: PUSH1 0x70
00003734: SHL
00003735: SUB
00003736: DUP1
00003737: DUP8
00003738: AND
00003739: SWAP3
0000373a: PUSH2 0x1117
0000373d: SWAP3
0000373e: DUP3
0000373f: AND
00003740: SWAP2
00003741: AND
00003742: PUSH2 0x3238
00003745: JUMP
00003746: JUMPDEST
00003747: PUSH1 0x00
00003749: SLOAD
0000374a: PUSH1 0x01
0000374c: SLOAD
0000374d: PUSH2 0x3775
00003750: SWAP2
00003751: PUSH1 0x01
00003753: PUSH1 0x01
00003755: PUSH1 0x70
00003757: SHL
00003758: SUB
00003759: DUP1
0000375a: DUP8
0000375b: AND
0000375c: SWAP3
0000375d: PUSH2 0x1117
00003760: SWAP3
00003761: PUSH1 0x01
00003763: PUSH1 0x70
00003765: SHL
00003766: SWAP2
00003767: DUP3
00003768: SWAP1
00003769: DIV
0000376a: DUP4
0000376b: AND
0000376c: SWAP3
0000376d: SWAP2
0000376e: SWAP1
0000376f: DIV
00003770: AND
00003771: PUSH2 0x3238
00003774: JUMP
00003775: JUMPDEST
00003776: PUSH2 0x3fcd
00003779: JUMP
0000377a: JUMPDEST
0000377b: POP
0000377c: POP
0000377d: POP
0000377e: POP
0000377f: JUMP
00003780: JUMPDEST
00003781: DUP1
00003782: PUSH1 0x01
00003784: PUSH1 0x01
00003786: PUSH1 0x70
00003788: SHL
00003789: SUB
0000378a: AND
0000378b: DUP3
0000378c: LT
0000378d: ISZERO
0000378e: PUSH2 0x3530
00003791: JUMPI
00003792: PUSH1 0x00
00003794: PUSH2 0x37a6
00003797: PUSH1 0x01
00003799: PUSH1 0x01
0000379b: PUSH1 0x70
0000379d: SHL
0000379e: SUB
0000379f: DUP4
000037a0: AND
000037a1: DUP5
000037a2: PUSH2 0x314e
000037a5: JUMP
000037a6: JUMPDEST
000037a7: SWAP1
000037a8: POP
000037a9: PUSH1 0x12
000037ab: SLOAD
000037ac: DUP2
000037ad: GT
000037ae: ISZERO
000037af: PUSH2 0x37ff
000037b2: JUMPI
000037b3: PUSH1 0x40
000037b5: DUP1
000037b6: MLOAD
000037b7: PUSH3 0x461bcd
000037bb: PUSH1 0xe5
000037bd: SHL
000037be: DUP2
000037bf: MSTORE
000037c0: PUSH1 0x20
000037c2: PUSH1 0x04
000037c4: DUP3
000037c5: ADD
000037c6: MSTORE
000037c7: PUSH1 0x1e
000037c9: PUSH1 0x24
000037cb: DUP3
000037cc: ADD
000037cd: MSTORE
000037ce: PUSH32 0x49505f41305f4c49515549444954595f4c494d49545f45584345454445440000
000037ef: PUSH1 0x44
000037f1: DUP3
000037f2: ADD
000037f3: MSTORE
000037f4: SWAP1
000037f5: MLOAD
000037f6: SWAP1
000037f7: DUP2
000037f8: SWAP1
000037f9: SUB
000037fa: PUSH1 0x64
000037fc: ADD
000037fd: SWAP1
000037fe: REVERT
000037ff: JUMPDEST
00003800: PUSH1 0x14
00003802: SLOAD
00003803: PUSH2 0x3821
00003806: PUSH1 0x01
00003808: PUSH1 0x01
0000380a: PUSH1 0x70
0000380c: SHL
0000380d: SUB
0000380e: DUP5
0000380f: AND
00003810: PUSH2 0x11ec
00003813: DUP5
00003814: PUSH8 0x0de0b6b3a7640000
0000381d: PUSH2 0x3534
00003820: JUMP
00003821: JUMPDEST
00003822: GT
00003823: ISZERO
00003824: PUSH2 0x3874
00003827: JUMPI
00003828: PUSH1 0x40
0000382a: DUP1
0000382b: MLOAD
0000382c: PUSH3 0x461bcd
00003830: PUSH1 0xe5
00003832: SHL
00003833: DUP2
00003834: MSTORE
00003835: PUSH1 0x20
00003837: PUSH1 0x04
00003839: DUP3
0000383a: ADD
0000383b: MSTORE
0000383c: PUSH1 0x1e
0000383e: PUSH1 0x24
00003840: DUP3
00003841: ADD
00003842: MSTORE
00003843: PUSH32 0x49505f52305f4c49515549444954595f4c494d49545f45584345454445440000
00003864: PUSH1 0x44
00003866: DUP3
00003867: ADD
00003868: MSTORE
00003869: SWAP1
0000386a: MLOAD
0000386b: SWAP1
0000386c: DUP2
0000386d: SWAP1
0000386e: SUB
0000386f: PUSH1 0x64
00003871: ADD
00003872: SWAP1
00003873: REVERT
00003874: JUMPDEST
00003875: POP
00003876: POP
00003877: POP
00003878: JUMP
00003879: JUMPDEST
0000387a: PUSH1 0x02
0000387c: SLOAD
0000387d: PUSH2 0x3530
00003880: SWAP1
00003881: PUSH2 0x388a
00003884: SWAP1
00003885: DUP5
00003886: PUSH2 0x3238
00003889: JUMP
0000388a: JUMPDEST
0000388b: PUSH1 0x03
0000388d: SLOAD
0000388e: PUSH2 0x3897
00003891: SWAP1
00003892: DUP5
00003893: PUSH2 0x3238
00003896: JUMP
00003897: JUMPDEST
00003898: PUSH2 0x3056
0000389b: JUMP
0000389c: JUMPDEST
0000389d: PUSH1 0x01
0000389f: PUSH1 0x01
000038a1: PUSH1 0x70
000038a3: SHL
000038a4: SUB
000038a5: DUP3
000038a6: GT
000038a7: DUP1
000038a8: ISZERO
000038a9: SWAP1
000038aa: PUSH2 0x38ba
000038ad: JUMPI
000038ae: POP
000038af: PUSH1 0x01
000038b1: PUSH1 0x01
000038b3: PUSH1 0x70
000038b5: SHL
000038b6: SUB
000038b7: DUP2
000038b8: GT
000038b9: ISZERO
000038ba: JUMPDEST
000038bb: PUSH2 0x38f9
000038be: JUMPI
000038bf: PUSH1 0x40
000038c1: DUP1
000038c2: MLOAD
000038c3: PUSH3 0x461bcd
000038c7: PUSH1 0xe5
000038c9: SHL
000038ca: DUP2
000038cb: MSTORE
000038cc: PUSH1 0x20
000038ce: PUSH1 0x04
000038d0: DUP3
000038d1: ADD
000038d2: MSTORE
000038d3: PUSH1 0x0b
000038d5: PUSH1 0x24
000038d7: DUP3
000038d8: ADD
000038d9: MSTORE
000038da: PUSH11 0x52535f4f564552464c4f57
000038e6: PUSH1 0xa8
000038e8: SHL
000038e9: PUSH1 0x44
000038eb: DUP3
000038ec: ADD
000038ed: MSTORE
000038ee: SWAP1
000038ef: MLOAD
000038f0: SWAP1
000038f1: DUP2
000038f2: SWAP1
000038f3: SUB
000038f4: PUSH1 0x64
000038f6: ADD
000038f7: SWAP1
000038f8: REVERT
000038f9: JUMPDEST
000038fa: PUSH4 0xffffffff
000038ff: TIMESTAMP
00003900: AND
00003901: PUSH2 0x3874
00003904: DUP4
00003905: DUP4
00003906: DUP4
00003907: PUSH2 0x4065
0000390a: JUMP
0000390b: JUMPDEST
0000390c: DUP1
0000390d: PUSH1 0x01
0000390f: PUSH1 0x01
00003911: PUSH1 0x70
00003913: SHL
00003914: SUB
00003915: AND
00003916: DUP3
00003917: LT
00003918: ISZERO
00003919: PUSH2 0x3530
0000391c: JUMPI
0000391d: PUSH1 0x00
0000391f: PUSH2 0x3931
00003922: PUSH1 0x01
00003924: PUSH1 0x01
00003926: PUSH1 0x70
00003928: SHL
00003929: SUB
0000392a: DUP4
0000392b: AND
0000392c: DUP5
0000392d: PUSH2 0x314e
00003930: JUMP
00003931: JUMPDEST
00003932: SWAP1
00003933: POP
00003934: PUSH1 0x13
00003936: SLOAD
00003937: DUP2
00003938: GT
00003939: ISZERO
0000393a: PUSH2 0x398a
0000393d: JUMPI
0000393e: PUSH1 0x40
00003940: DUP1
00003941: MLOAD
00003942: PUSH3 0x461bcd
00003946: PUSH1 0xe5
00003948: SHL
00003949: DUP2
0000394a: MSTORE
0000394b: PUSH1 0x20
0000394d: PUSH1 0x04
0000394f: DUP3
00003950: ADD
00003951: MSTORE
00003952: PUSH1 0x1e
00003954: PUSH1 0x24
00003956: DUP3
00003957: ADD
00003958: MSTORE
00003959: PUSH32 0x49505f41315f4c49515549444954595f4c494d49545f45584345454445440000
0000397a: PUSH1 0x44
0000397c: DUP3
0000397d: ADD
0000397e: MSTORE
0000397f: SWAP1
00003980: MLOAD
00003981: SWAP1
00003982: DUP2
00003983: SWAP1
00003984: SUB
00003985: PUSH1 0x64
00003987: ADD
00003988: SWAP1
00003989: REVERT
0000398a: JUMPDEST
0000398b: PUSH1 0x15
0000398d: SLOAD
0000398e: PUSH2 0x39ac
00003991: PUSH1 0x01
00003993: PUSH1 0x01
00003995: PUSH1 0x70
00003997: SHL
00003998: SUB
00003999: DUP5
0000399a: AND
0000399b: PUSH2 0x11ec
0000399e: DUP5
0000399f: PUSH8 0x0de0b6b3a7640000
000039a8: PUSH2 0x3534
000039ab: JUMP
000039ac: JUMPDEST
000039ad: GT
000039ae: ISZERO
000039af: PUSH2 0x3874
000039b2: JUMPI
000039b3: PUSH1 0x40
000039b5: DUP1
000039b6: MLOAD
000039b7: PUSH3 0x461bcd
000039bb: PUSH1 0xe5
000039bd: SHL
000039be: DUP2
000039bf: MSTORE
000039c0: PUSH1 0x20
000039c2: PUSH1 0x04
000039c4: DUP3
000039c5: ADD
000039c6: MSTORE
000039c7: PUSH1 0x1e
000039c9: PUSH1 0x24
000039cb: DUP3
000039cc: ADD
000039cd: MSTORE
000039ce: PUSH32 0x49505f52315f4c49515549444954595f4c494d49545f45584345454445440000
000039ef: PUSH1 0x44
000039f1: DUP3
000039f2: ADD
000039f3: MSTORE
000039f4: SWAP1
000039f5: MLOAD
000039f6: SWAP1
000039f7: DUP2
000039f8: SWAP1
000039f9: SUB
000039fa: PUSH1 0x64
000039fc: ADD
000039fd: SWAP1
000039fe: REVERT
000039ff: JUMPDEST
00003a00: PUSH1 0x00
00003a02: PUSH2 0x3a09
00003a05: PUSH2 0x2886
00003a08: JUMP
00003a09: JUMPDEST
00003a0a: PUSH1 0x11
00003a0c: SLOAD
00003a0d: SWAP1
00003a0e: SWAP2
00003a0f: POP
00003a10: ISZERO
00003a11: PUSH2 0x30e9
00003a14: JUMPI
00003a15: PUSH1 0x00
00003a17: DUP2
00003a18: PUSH1 0x11
00003a1a: SLOAD
00003a1b: GT
00003a1c: PUSH2 0x3a32
00003a1f: JUMPI
00003a20: PUSH1 0x11
00003a22: SLOAD
00003a23: PUSH2 0x3a2d
00003a26: SWAP1
00003a27: DUP4
00003a28: SWAP1
00003a29: PUSH2 0x314e
00003a2c: JUMP
00003a2d: JUMPDEST
00003a2e: PUSH2 0x3a3f
00003a31: JUMP
00003a32: JUMPDEST
00003a33: PUSH1 0x11
00003a35: SLOAD
00003a36: PUSH2 0x3a3f
00003a39: SWAP1
00003a3a: DUP4
00003a3b: PUSH2 0x314e
00003a3e: JUMP
00003a3f: JUMPDEST
00003a40: SWAP1
00003a41: POP
00003a42: PUSH1 0x16
00003a44: SLOAD
00003a45: PUSH2 0x3a65
00003a48: PUSH1 0x11
00003a4a: SLOAD
00003a4b: PUSH2 0x11ec
00003a4e: PUSH8 0x0de0b6b3a7640000
00003a57: DUP6
00003a58: PUSH2 0x3534
00003a5b: SWAP1
00003a5c: SWAP2
00003a5d: SWAP1
00003a5e: PUSH4 0xffffffff
00003a63: AND
00003a64: JUMP
00003a65: JUMPDEST
00003a66: GT
00003a67: ISZERO
00003a68: PUSH2 0x3530
00003a6b: JUMPI
00003a6c: PUSH1 0x40
00003a6e: DUP1
00003a6f: MLOAD
00003a70: PUSH3 0x461bcd
00003a74: PUSH1 0xe5
00003a76: SHL
00003a77: DUP2
00003a78: MSTORE
00003a79: PUSH1 0x20
00003a7b: PUSH1 0x04
00003a7d: DUP3
00003a7e: ADD
00003a7f: MSTORE
00003a80: PUSH1 0x13
00003a82: PUSH1 0x24
00003a84: DUP3
00003a85: ADD
00003a86: MSTORE
00003a87: PUSH19 0x125417d417d31253525517d15610d151511151
00003a9b: PUSH1 0x6a
00003a9d: SHL
00003a9e: PUSH1 0x44
00003aa0: DUP3
00003aa1: ADD
00003aa2: MSTORE
00003aa3: SWAP1
00003aa4: MLOAD
00003aa5: SWAP1
00003aa6: DUP2
00003aa7: SWAP1
00003aa8: SUB
00003aa9: PUSH1 0x64
00003aab: ADD
00003aac: SWAP1
00003aad: REVERT
00003aae: JUMPDEST
00003aaf: EXTCODESIZE
00003ab0: ISZERO
00003ab1: ISZERO
00003ab2: SWAP1
00003ab3: JUMP
00003ab4: JUMPDEST
00003ab5: PUSH1 0x00
00003ab7: SLOAD
00003ab8: PUSH1 0x01
00003aba: DUP1
00003abb: SLOAD
00003abc: PUSH4 0xffffffff
00003ac1: SWAP1
00003ac2: SWAP4
00003ac3: AND
00003ac4: PUSH1 0x01
00003ac6: PUSH1 0xe0
00003ac8: SHL
00003ac9: MUL
00003aca: PUSH1 0x01
00003acc: PUSH1 0x01
00003ace: PUSH1 0xe0
00003ad0: SHL
00003ad1: SUB
00003ad2: PUSH1 0x01
00003ad4: PUSH1 0x70
00003ad6: SHL
00003ad7: DUP1
00003ad8: DUP6
00003ad9: DIV
00003ada: PUSH1 0x01
00003adc: PUSH1 0x01
00003ade: PUSH1 0x70
00003ae0: SHL
00003ae1: SUB
00003ae2: SWAP1
00003ae3: DUP2
00003ae4: AND
00003ae5: SWAP1
00003ae6: SWAP2
00003ae7: MUL
00003ae8: PUSH1 0x01
00003aea: PUSH1 0x70
00003aec: SHL
00003aed: PUSH1 0x01
00003aef: PUSH1 0xe0
00003af1: SHL
00003af2: SUB
00003af3: NOT
00003af4: PUSH1 0x01
00003af6: PUSH1 0x01
00003af8: PUSH1 0x70
00003afa: SHL
00003afb: SUB
00003afc: NOT
00003afd: SWAP1
00003afe: SWAP8
00003aff: AND
00003b00: SWAP2
00003b01: SWAP1
00003b02: SWAP6
00003b03: AND
00003b04: OR
00003b05: SWAP5
00003b06: SWAP1
00003b07: SWAP5
00003b08: AND
00003b09: SWAP3
00003b0a: SWAP1
00003b0b: SWAP3
00003b0c: OR
00003b0d: SWAP3
00003b0e: SWAP1
00003b0f: SWAP3
00003b10: AND
00003b11: OR
00003b12: SWAP1
00003b13: SSTORE
00003b14: JUMP
00003b15: JUMPDEST
00003b16: PUSH1 0x01
00003b18: PUSH1 0x01
00003b1a: PUSH1 0xa0
00003b1c: SHL
00003b1d: SUB
00003b1e: DUP3
00003b1f: AND
00003b20: PUSH1 0x00
00003b22: SWAP1
00003b23: DUP2
00003b24: MSTORE
00003b25: PUSH1 0x05
00003b27: PUSH1 0x20
00003b29: MSTORE
00003b2a: PUSH1 0x40
00003b2c: SWAP1
00003b2d: KECCAK256
00003b2e: SLOAD
00003b2f: PUSH2 0x3b38
00003b32: SWAP1
00003b33: DUP3
00003b34: PUSH2 0x314e
00003b37: JUMP
00003b38: JUMPDEST
00003b39: PUSH1 0x01
00003b3b: PUSH1 0x01
00003b3d: PUSH1 0xa0
00003b3f: SHL
00003b40: SUB
00003b41: DUP4
00003b42: AND
00003b43: PUSH1 0x00
00003b45: SWAP1
00003b46: DUP2
00003b47: MSTORE
00003b48: PUSH1 0x05
00003b4a: PUSH1 0x20
00003b4c: MSTORE
00003b4d: PUSH1 0x40
00003b4f: SWAP1
00003b50: KECCAK256
00003b51: SSTORE
00003b52: PUSH1 0x04
00003b54: SLOAD
00003b55: PUSH2 0x3b5e
00003b58: SWAP1
00003b59: DUP3
00003b5a: PUSH2 0x314e
00003b5d: JUMP
00003b5e: JUMPDEST
00003b5f: PUSH1 0x04
00003b61: SSTORE
00003b62: PUSH1 0x40
00003b64: DUP1
00003b65: MLOAD
00003b66: DUP3
00003b67: DUP2
00003b68: MSTORE
00003b69: SWAP1
00003b6a: MLOAD
00003b6b: PUSH1 0x00
00003b6d: SWAP2
00003b6e: PUSH1 0x01
00003b70: PUSH1 0x01
00003b72: PUSH1 0xa0
00003b74: SHL
00003b75: SUB
00003b76: DUP6
00003b77: AND
00003b78: SWAP2
00003b79: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
00003b9a: SWAP2
00003b9b: DUP2
00003b9c: SWAP1
00003b9d: SUB
00003b9e: PUSH1 0x20
00003ba0: ADD
00003ba1: SWAP1
00003ba2: LOG3
00003ba3: POP
00003ba4: POP
00003ba5: JUMP
00003ba6: JUMPDEST
00003ba7: DUP1
00003ba8: MLOAD
00003ba9: PUSH1 0x20
00003bab: SWAP2
00003bac: DUP3
00003bad: ADD
00003bae: KECCAK256
00003baf: PUSH1 0x40
00003bb1: DUP1
00003bb2: MLOAD
00003bb3: DUP1
00003bb4: DUP3
00003bb5: ADD
00003bb6: DUP3
00003bb7: MSTORE
00003bb8: PUSH1 0x01
00003bba: DUP2
00003bbb: MSTORE
00003bbc: PUSH1 0x31
00003bbe: PUSH1 0xf8
00003bc0: SHL
00003bc1: SWAP1
00003bc2: DUP5
00003bc3: ADD
00003bc4: MSTORE
00003bc5: DUP1
00003bc6: MLOAD
00003bc7: PUSH32 0x8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f
00003be8: DUP2
00003be9: DUP6
00003bea: ADD
00003beb: MSTORE
00003bec: DUP1
00003bed: DUP3
00003bee: ADD
00003bef: SWAP3
00003bf0: SWAP1
00003bf1: SWAP3
00003bf2: MSTORE
00003bf3: PUSH32 0xc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc6
00003c14: PUSH1 0x60
00003c16: DUP4
00003c17: ADD
00003c18: MSTORE
00003c19: CHAINID
00003c1a: PUSH1 0x80
00003c1c: DUP4
00003c1d: ADD
00003c1e: MSTORE
00003c1f: ADDRESS
00003c20: PUSH1 0xa0
00003c22: DUP1
00003c23: DUP5
00003c24: ADD
00003c25: SWAP2
00003c26: SWAP1
00003c27: SWAP2
00003c28: MSTORE
00003c29: DUP2
00003c2a: MLOAD
00003c2b: DUP1
00003c2c: DUP5
00003c2d: SUB
00003c2e: SWAP1
00003c2f: SWAP2
00003c30: ADD
00003c31: DUP2
00003c32: MSTORE
00003c33: PUSH1 0xc0
00003c35: SWAP1
00003c36: SWAP3
00003c37: ADD
00003c38: SWAP1
00003c39: MSTORE
00003c3a: DUP1
00003c3b: MLOAD
00003c3c: SWAP2
00003c3d: ADD
00003c3e: KECCAK256
00003c3f: PUSH1 0x07
00003c41: SSTORE
00003c42: JUMP
00003c43: JUMPDEST
00003c44: PUSH1 0x00
00003c46: DUP2
00003c47: PUSH1 0xff
00003c49: AND
00003c4a: PUSH1 0x12
00003c4c: EQ
00003c4d: ISZERO
00003c4e: PUSH2 0x3c58
00003c51: JUMPI
00003c52: POP
00003c53: DUP2
00003c54: PUSH2 0x0bb2
00003c57: JUMP
00003c58: JUMPDEST
00003c59: PUSH1 0x12
00003c5b: DUP3
00003c5c: PUSH1 0xff
00003c5e: AND
00003c5f: GT
00003c60: ISZERO
00003c61: PUSH2 0x3c7f
00003c64: JUMPI
00003c65: PUSH2 0x3c78
00003c68: DUP4
00003c69: PUSH1 0xff
00003c6b: PUSH1 0x11
00003c6d: NOT
00003c6e: DUP6
00003c6f: ADD
00003c70: AND
00003c71: PUSH1 0x0a
00003c73: EXP
00003c74: PUSH2 0x3684
00003c77: JUMP
00003c78: JUMPDEST
00003c79: SWAP1
00003c7a: POP
00003c7b: PUSH2 0x0bb2
00003c7e: JUMP
00003c7f: JUMPDEST
00003c80: PUSH2 0x3c78
00003c83: DUP4
00003c84: PUSH1 0xff
00003c86: PUSH1 0x12
00003c88: DUP6
00003c89: SWAP1
00003c8a: SUB
00003c8b: AND
00003c8c: PUSH1 0x0a
00003c8e: EXP
00003c8f: PUSH2 0x3534
00003c92: JUMP
00003c93: JUMPDEST
00003c94: PUSH1 0x00
00003c96: DUP2
00003c97: PUSH1 0xff
00003c99: AND
00003c9a: PUSH1 0x12
00003c9c: EQ
00003c9d: ISZERO
00003c9e: PUSH2 0x3ca8
00003ca1: JUMPI
00003ca2: POP
00003ca3: DUP2
00003ca4: PUSH2 0x0bb2
00003ca7: JUMP
00003ca8: JUMPDEST
00003ca9: PUSH1 0x12
00003cab: DUP3
00003cac: PUSH1 0xff
00003cae: AND
00003caf: GT
00003cb0: ISZERO
00003cb1: PUSH2 0x3cc8
00003cb4: JUMPI
00003cb5: PUSH2 0x3c78
00003cb8: DUP4
00003cb9: PUSH1 0xff
00003cbb: PUSH1 0x11
00003cbd: NOT
00003cbe: DUP6
00003cbf: ADD
00003cc0: AND
00003cc1: PUSH1 0x0a
00003cc3: EXP
00003cc4: PUSH2 0x3534
00003cc7: JUMP
00003cc8: JUMPDEST
00003cc9: PUSH2 0x3c78
00003ccc: DUP4
00003ccd: PUSH1 0xff
00003ccf: PUSH1 0x12
00003cd1: DUP6
00003cd2: SWAP1
00003cd3: SUB
00003cd4: AND
00003cd5: PUSH1 0x0a
00003cd7: EXP
00003cd8: PUSH2 0x3684
00003cdb: JUMP
00003cdc: JUMPDEST
00003cdd: PUSH1 0x00
00003cdf: DUP3
00003ce0: PUSH1 0x01
00003ce2: PUSH1 0x01
00003ce4: PUSH1 0xa0
00003ce6: SHL
00003ce7: SUB
00003ce8: AND
00003ce9: PUSH4 0x70a08231
00003cee: ADDRESS
00003cef: PUSH1 0x40
00003cf1: MLOAD
00003cf2: DUP3
00003cf3: PUSH4 0xffffffff
00003cf8: AND
00003cf9: PUSH1 0xe0
00003cfb: SHL
00003cfc: DUP2
00003cfd: MSTORE
00003cfe: PUSH1 0x04
00003d00: ADD
00003d01: DUP1
00003d02: DUP3
00003d03: PUSH1 0x01
00003d05: PUSH1 0x01
00003d07: PUSH1 0xa0
00003d09: SHL
00003d0a: SUB
00003d0b: AND
00003d0c: DUP2
00003d0d: MSTORE
00003d0e: PUSH1 0x20
00003d10: ADD
00003d11: SWAP2
00003d12: POP
00003d13: POP
00003d14: PUSH1 0x20
00003d16: PUSH1 0x40
00003d18: MLOAD
00003d19: DUP1
00003d1a: DUP4
00003d1b: SUB
00003d1c: DUP2
00003d1d: DUP7
00003d1e: DUP1
00003d1f: EXTCODESIZE
00003d20: ISZERO
00003d21: DUP1
00003d22: ISZERO
00003d23: PUSH2 0x3d2b
00003d26: JUMPI
00003d27: PUSH1 0x00
00003d29: DUP1
00003d2a: REVERT
00003d2b: JUMPDEST
00003d2c: POP
00003d2d: GAS
00003d2e: STATICCALL
00003d2f: ISZERO
00003d30: DUP1
00003d31: ISZERO
00003d32: PUSH2 0x3d3f
00003d35: JUMPI
00003d36: RETURNDATASIZE
00003d37: PUSH1 0x00
00003d39: DUP1
00003d3a: RETURNDATACOPY
00003d3b: RETURNDATASIZE
00003d3c: PUSH1 0x00
00003d3e: REVERT
00003d3f: JUMPDEST
00003d40: POP
00003d41: POP
00003d42: POP
00003d43: POP
00003d44: PUSH1 0x40
00003d46: MLOAD
00003d47: RETURNDATASIZE
00003d48: PUSH1 0x20
00003d4a: DUP2
00003d4b: LT
00003d4c: ISZERO
00003d4d: PUSH2 0x3d55
00003d50: JUMPI
00003d51: PUSH1 0x00
00003d53: DUP1
00003d54: REVERT
00003d55: JUMPDEST
00003d56: POP
00003d57: MLOAD
00003d58: PUSH1 0x40
00003d5a: DUP1
00003d5b: MLOAD
00003d5c: PUSH4 0x70a08231
00003d61: PUSH1 0xe0
00003d63: SHL
00003d64: DUP2
00003d65: MSTORE
00003d66: ADDRESS
00003d67: PUSH1 0x04
00003d69: DUP3
00003d6a: ADD
00003d6b: MSTORE
00003d6c: SWAP1
00003d6d: MLOAD
00003d6e: SWAP2
00003d6f: SWAP3
00003d70: POP
00003d71: PUSH1 0x00
00003d73: SWAP2
00003d74: PUSH1 0x01
00003d76: PUSH1 0x01
00003d78: PUSH1 0xa0
00003d7a: SHL
00003d7b: SUB
00003d7c: DUP6
00003d7d: AND
00003d7e: SWAP2
00003d7f: PUSH4 0x70a08231
00003d84: SWAP2
00003d85: PUSH1 0x24
00003d87: DUP1
00003d88: DUP4
00003d89: ADD
00003d8a: SWAP3
00003d8b: PUSH1 0x20
00003d8d: SWAP3
00003d8e: SWAP2
00003d8f: SWAP1
00003d90: DUP3
00003d91: SWAP1
00003d92: SUB
00003d93: ADD
00003d94: DUP2
00003d95: DUP7
00003d96: DUP1
00003d97: EXTCODESIZE
00003d98: ISZERO
00003d99: DUP1
00003d9a: ISZERO
00003d9b: PUSH2 0x3da3
00003d9e: JUMPI
00003d9f: PUSH1 0x00
00003da1: DUP1
00003da2: REVERT
00003da3: JUMPDEST
00003da4: POP
00003da5: GAS
00003da6: STATICCALL
00003da7: ISZERO
00003da8: DUP1
00003da9: ISZERO
00003daa: PUSH2 0x3db7
00003dad: JUMPI
00003dae: RETURNDATASIZE
00003daf: PUSH1 0x00
00003db1: DUP1
00003db2: RETURNDATACOPY
00003db3: RETURNDATASIZE
00003db4: PUSH1 0x00
00003db6: REVERT
00003db7: JUMPDEST
00003db8: POP
00003db9: POP
00003dba: POP
00003dbb: POP
00003dbc: PUSH1 0x40
00003dbe: MLOAD
00003dbf: RETURNDATASIZE
00003dc0: PUSH1 0x20
00003dc2: DUP2
00003dc3: LT
00003dc4: ISZERO
00003dc5: PUSH2 0x3dcd
00003dc8: JUMPI
00003dc9: PUSH1 0x00
00003dcb: DUP1
00003dcc: REVERT
00003dcd: JUMPDEST
00003dce: POP
00003dcf: MLOAD
00003dd0: SWAP1
00003dd1: POP
00003dd2: PUSH1 0x00
00003dd4: DUP1
00003dd5: PUSH2 0x3ddc
00003dd8: PUSH2 0x0b77
00003ddb: JUMP
00003ddc: JUMPDEST
00003ddd: POP
00003dde: SWAP2
00003ddf: POP
00003de0: SWAP2
00003de1: POP
00003de2: PUSH1 0x00
00003de4: PUSH2 0x3e01
00003de7: DUP4
00003de8: PUSH1 0x01
00003dea: PUSH1 0x01
00003dec: PUSH1 0x70
00003dee: SHL
00003def: SUB
00003df0: AND
00003df1: PUSH1 0x02
00003df3: SLOAD
00003df4: PUSH2 0x3238
00003df7: SWAP1
00003df8: SWAP2
00003df9: SWAP1
00003dfa: PUSH4 0xffffffff
00003dff: AND
00003e00: JUMP
00003e01: JUMPDEST
00003e02: SWAP1
00003e03: POP
00003e04: PUSH1 0x00
00003e06: PUSH2 0x3e23
00003e09: DUP4
00003e0a: PUSH1 0x01
00003e0c: PUSH1 0x01
00003e0e: PUSH1 0x70
00003e10: SHL
00003e11: SUB
00003e12: AND
00003e13: PUSH1 0x03
00003e15: SLOAD
00003e16: PUSH2 0x3238
00003e19: SWAP1
00003e1a: SWAP2
00003e1b: SWAP1
00003e1c: PUSH4 0xffffffff
00003e21: AND
00003e22: JUMP
00003e23: JUMPDEST
00003e24: SWAP1
00003e25: POP
00003e26: DUP2
00003e27: PUSH2 0x3e32
00003e2a: JUMPI
00003e2b: PUSH1 0x02
00003e2d: SLOAD
00003e2e: PUSH2 0x3e4b
00003e31: JUMP
00003e32: JUMPDEST
00003e33: PUSH2 0x3e4b
00003e36: DUP3
00003e37: PUSH2 0x11ec
00003e3a: DUP9
00003e3b: PUSH1 0x02
00003e3d: SLOAD
00003e3e: PUSH2 0x3534
00003e41: SWAP1
00003e42: SWAP2
00003e43: SWAP1
00003e44: PUSH4 0xffffffff
00003e49: AND
00003e4a: JUMP
00003e4b: JUMPDEST
00003e4c: PUSH1 0x02
00003e4e: SSTORE
00003e4f: DUP1
00003e50: PUSH2 0x3e5b
00003e53: JUMPI
00003e54: PUSH1 0x03
00003e56: SLOAD
00003e57: PUSH2 0x3e74
00003e5a: JUMP
00003e5b: JUMPDEST
00003e5c: PUSH2 0x3e74
00003e5f: DUP2
00003e60: PUSH2 0x11ec
00003e63: DUP8
00003e64: PUSH1 0x03
00003e66: SLOAD
00003e67: PUSH2 0x3534
00003e6a: SWAP1
00003e6b: SWAP2
00003e6c: SWAP1
00003e6d: PUSH4 0xffffffff
00003e72: AND
00003e73: JUMP
00003e74: JUMPDEST
00003e75: PUSH1 0x03
00003e77: SSTORE
00003e78: PUSH1 0x02
00003e7a: SLOAD
00003e7b: PUSH1 0x00
00003e7d: SWAP1
00003e7e: PUSH2 0x3e88
00003e81: SWAP1
00003e82: DUP9
00003e83: SWAP1
00003e84: PUSH2 0x314e
00003e87: JUMP
00003e88: JUMPDEST
00003e89: SWAP1
00003e8a: POP
00003e8b: PUSH1 0x00
00003e8d: PUSH2 0x3ea1
00003e90: PUSH1 0x03
00003e92: SLOAD
00003e93: DUP9
00003e94: PUSH2 0x314e
00003e97: SWAP1
00003e98: SWAP2
00003e99: SWAP1
00003e9a: PUSH4 0xffffffff
00003e9f: AND
00003ea0: JUMP
00003ea1: JUMPDEST
00003ea2: SWAP1
00003ea3: POP
00003ea4: DUP2
00003ea5: DUP7
00003ea6: PUSH1 0x01
00003ea8: PUSH1 0x01
00003eaa: PUSH1 0x70
00003eac: SHL
00003ead: SUB
00003eae: AND
00003eaf: EQ
00003eb0: ISZERO
00003eb1: DUP1
00003eb2: PUSH2 0x3ec4
00003eb5: JUMPI
00003eb6: POP
00003eb7: DUP1
00003eb8: DUP6
00003eb9: PUSH1 0x01
00003ebb: PUSH1 0x01
00003ebd: PUSH1 0x70
00003ebf: SHL
00003ec0: SUB
00003ec1: AND
00003ec2: EQ
00003ec3: ISZERO
00003ec4: JUMPDEST
00003ec5: ISZERO
00003ec6: PUSH2 0x3f29
00003ec9: JUMPI
00003eca: PUSH2 0x3ed3
00003ecd: DUP3
00003ece: DUP3
00003ecf: PUSH2 0x389c
00003ed2: JUMP
00003ed3: JUMPDEST
00003ed4: PUSH1 0x00
00003ed6: SLOAD
00003ed7: PUSH1 0x01
00003ed9: SLOAD
00003eda: PUSH2 0x3f29
00003edd: SWAP2
00003ede: PUSH2 0x3efa
00003ee1: SWAP2
00003ee2: PUSH1 0x01
00003ee4: PUSH1 0x01
00003ee6: PUSH1 0x70
00003ee8: SHL
00003ee9: SUB
00003eea: DUP1
00003eeb: DUP12
00003eec: AND
00003eed: SWAP3
00003eee: PUSH2 0x1117
00003ef1: SWAP3
00003ef2: DUP3
00003ef3: AND
00003ef4: SWAP2
00003ef5: AND
00003ef6: PUSH2 0x3238
00003ef9: JUMP
00003efa: JUMPDEST
00003efb: PUSH1 0x00
00003efd: SLOAD
00003efe: PUSH1 0x01
00003f00: SLOAD
00003f01: PUSH2 0x3775
00003f04: SWAP2
00003f05: PUSH1 0x01
00003f07: PUSH1 0x01
00003f09: PUSH1 0x70
00003f0b: SHL
00003f0c: SUB
00003f0d: DUP1
00003f0e: DUP12
00003f0f: AND
00003f10: SWAP3
00003f11: PUSH2 0x1117
00003f14: SWAP3
00003f15: PUSH1 0x01
00003f17: PUSH1 0x70
00003f19: SHL
00003f1a: SWAP2
00003f1b: DUP3
00003f1c: SWAP1
00003f1d: DIV
00003f1e: DUP4
00003f1f: AND
00003f20: SWAP3
00003f21: SWAP2
00003f22: SWAP1
00003f23: DIV
00003f24: AND
00003f25: PUSH2 0x3238
00003f28: JUMP
00003f29: JUMPDEST
00003f2a: POP
00003f2b: POP
00003f2c: POP
00003f2d: POP
00003f2e: POP
00003f2f: POP
00003f30: POP
00003f31: POP
00003f32: POP
00003f33: POP
00003f34: JUMP
00003f35: JUMPDEST
00003f36: DUP2
00003f37: DUP4
00003f38: SUB
00003f39: DUP2
00003f3a: DUP5
00003f3b: DUP3
00003f3c: GT
00003f3d: ISZERO
00003f3e: PUSH2 0x3fc5
00003f41: JUMPI
00003f42: PUSH1 0x40
00003f44: MLOAD
00003f45: PUSH3 0x461bcd
00003f49: PUSH1 0xe5
00003f4b: SHL
00003f4c: DUP2
00003f4d: MSTORE
00003f4e: PUSH1 0x04
00003f50: ADD
00003f51: DUP1
00003f52: DUP1
00003f53: PUSH1 0x20
00003f55: ADD
00003f56: DUP3
00003f57: DUP2
00003f58: SUB
00003f59: DUP3
00003f5a: MSTORE
00003f5b: DUP4
00003f5c: DUP2
00003f5d: DUP2
00003f5e: MLOAD
00003f5f: DUP2
00003f60: MSTORE
00003f61: PUSH1 0x20
00003f63: ADD
00003f64: SWAP2
00003f65: POP
00003f66: DUP1
00003f67: MLOAD
00003f68: SWAP1
00003f69: PUSH1 0x20
00003f6b: ADD
00003f6c: SWAP1
00003f6d: DUP1
00003f6e: DUP4
00003f6f: DUP4
00003f70: PUSH1 0x00
00003f72: JUMPDEST
00003f73: DUP4
00003f74: DUP2
00003f75: LT
00003f76: ISZERO
00003f77: PUSH2 0x3f8a
00003f7a: JUMPI
00003f7b: DUP2
00003f7c: DUP2
00003f7d: ADD
00003f7e: MLOAD
00003f7f: DUP4
00003f80: DUP3
00003f81: ADD
00003f82: MSTORE
00003f83: PUSH1 0x20
00003f85: ADD
00003f86: PUSH2 0x3f72
00003f89: JUMP
00003f8a: JUMPDEST
00003f8b: POP
00003f8c: POP
00003f8d: POP
00003f8e: POP
00003f8f: SWAP1
00003f90: POP
00003f91: SWAP1
00003f92: DUP2
00003f93: ADD
00003f94: SWAP1
00003f95: PUSH1 0x1f
00003f97: AND
00003f98: DUP1
00003f99: ISZERO
00003f9a: PUSH2 0x3fb7
00003f9d: JUMPI
00003f9e: DUP1
00003f9f: DUP3
00003fa0: SUB
00003fa1: DUP1
00003fa2: MLOAD
00003fa3: PUSH1 0x01
00003fa5: DUP4
00003fa6: PUSH1 0x20
00003fa8: SUB
00003fa9: PUSH2 0x0100
00003fac: EXP
00003fad: SUB
00003fae: NOT
00003faf: AND
00003fb0: DUP2
00003fb1: MSTORE
00003fb2: PUSH1 0x20
00003fb4: ADD
00003fb5: SWAP2
00003fb6: POP
00003fb7: JUMPDEST
00003fb8: POP
00003fb9: SWAP3
00003fba: POP
00003fbb: POP
00003fbc: POP
00003fbd: PUSH1 0x40
00003fbf: MLOAD
00003fc0: DUP1
00003fc1: SWAP2
00003fc2: SUB
00003fc3: SWAP1
00003fc4: REVERT
00003fc5: JUMPDEST
00003fc6: POP
00003fc7: SWAP4
00003fc8: SWAP3
00003fc9: POP
00003fca: POP
00003fcb: POP
00003fcc: JUMP
00003fcd: JUMPDEST
00003fce: PUSH1 0x01
00003fd0: PUSH1 0x01
00003fd2: PUSH1 0x70
00003fd4: SHL
00003fd5: SUB
00003fd6: DUP3
00003fd7: GT
00003fd8: DUP1
00003fd9: ISZERO
00003fda: SWAP1
00003fdb: PUSH2 0x3feb
00003fde: JUMPI
00003fdf: POP
00003fe0: PUSH1 0x01
00003fe2: PUSH1 0x01
00003fe4: PUSH1 0x70
00003fe6: SHL
00003fe7: SUB
00003fe8: DUP2
00003fe9: GT
00003fea: ISZERO
00003feb: JUMPDEST
00003fec: PUSH2 0x402a
00003fef: JUMPI
00003ff0: PUSH1 0x40
00003ff2: DUP1
00003ff3: MLOAD
00003ff4: PUSH3 0x461bcd
00003ff8: PUSH1 0xe5
00003ffa: SHL
00003ffb: DUP2
00003ffc: MSTORE
00003ffd: PUSH1 0x20
00003fff: PUSH1 0x04
00004001: DUP3
00004002: ADD
00004003: MSTORE
00004004: PUSH1 0x0b
00004006: PUSH1 0x24
00004008: DUP3
00004009: ADD
0000400a: MSTORE
0000400b: PUSH11 0x52535f4f564552464c4f57
00004017: PUSH1 0xa8
00004019: SHL
0000401a: PUSH1 0x44
0000401c: DUP3
0000401d: ADD
0000401e: MSTORE
0000401f: SWAP1
00004020: MLOAD
00004021: SWAP1
00004022: DUP2
00004023: SWAP1
00004024: SUB
00004025: PUSH1 0x64
00004027: ADD
00004028: SWAP1
00004029: REVERT
0000402a: JUMPDEST
0000402b: PUSH1 0x01
0000402d: DUP1
0000402e: SLOAD
0000402f: PUSH1 0x01
00004031: PUSH1 0x01
00004033: PUSH1 0x70
00004035: SHL
00004036: SUB
00004037: SWAP3
00004038: DUP4
00004039: AND
0000403a: PUSH1 0x01
0000403c: PUSH1 0x70
0000403e: SHL
0000403f: MUL
00004040: PUSH1 0x01
00004042: PUSH1 0x70
00004044: SHL
00004045: PUSH1 0x01
00004047: PUSH1 0xe0
00004049: SHL
0000404a: SUB
0000404b: NOT
0000404c: SWAP5
0000404d: SWAP1
0000404e: SWAP4
0000404f: AND
00004050: PUSH1 0x01
00004052: PUSH1 0x01
00004054: PUSH1 0x70
00004056: SHL
00004057: SUB
00004058: NOT
00004059: SWAP1
0000405a: SWAP2
0000405b: AND
0000405c: OR
0000405d: SWAP3
0000405e: SWAP1
0000405f: SWAP3
00004060: AND
00004061: OR
00004062: SWAP1
00004063: SSTORE
00004064: JUMP
00004065: JUMPDEST
00004066: PUSH1 0x01
00004068: PUSH1 0x01
0000406a: PUSH1 0x70
0000406c: SHL
0000406d: SUB
0000406e: DUP4
0000406f: AND
00004070: ISZERO
00004071: DUP1
00004072: ISZERO
00004073: SWAP1
00004074: PUSH2 0x4085
00004077: JUMPI
00004078: POP
00004079: PUSH1 0x01
0000407b: PUSH1 0x01
0000407d: PUSH1 0x70
0000407f: SHL
00004080: SUB
00004081: DUP3
00004082: AND
00004083: ISZERO
00004084: ISZERO
00004085: JUMPDEST
00004086: PUSH2 0x40c0
00004089: JUMPI
0000408a: PUSH1 0x40
0000408c: DUP1
0000408d: MLOAD
0000408e: PUSH3 0x461bcd
00004092: PUSH1 0xe5
00004094: SHL
00004095: DUP2
00004096: MSTORE
00004097: PUSH1 0x20
00004099: PUSH1 0x04
0000409b: DUP3
0000409c: ADD
0000409d: MSTORE
0000409e: PUSH1 0x07
000040a0: PUSH1 0x24
000040a2: DUP3
000040a3: ADD
000040a4: MSTORE
000040a5: PUSH7 0x52535f5a45524f
000040ad: PUSH1 0xc8
000040af: SHL
000040b0: PUSH1 0x44
000040b2: DUP3
000040b3: ADD
000040b4: MSTORE
000040b5: SWAP1
000040b6: MLOAD
000040b7: SWAP1
000040b8: DUP2
000040b9: SWAP1
000040ba: SUB
000040bb: PUSH1 0x64
000040bd: ADD
000040be: SWAP1
000040bf: REVERT
000040c0: JUMPDEST
000040c1: PUSH1 0x00
000040c3: DUP1
000040c4: SLOAD
000040c5: PUSH1 0x01
000040c7: PUSH1 0x01
000040c9: PUSH1 0x70
000040cb: SHL
000040cc: SUB
000040cd: NOT
000040ce: AND
000040cf: PUSH1 0x01
000040d1: PUSH1 0x01
000040d3: PUSH1 0x70
000040d5: SHL
000040d6: SUB
000040d7: DUP6
000040d8: DUP2
000040d9: AND
000040da: SWAP2
000040db: SWAP1
000040dc: SWAP2
000040dd: OR
000040de: PUSH1 0x01
000040e0: PUSH1 0x70
000040e2: SHL
000040e3: PUSH1 0x01
000040e5: PUSH1 0xe0
000040e7: SHL
000040e8: SUB
000040e9: NOT
000040ea: AND
000040eb: PUSH1 0x01
000040ed: PUSH1 0x70
000040ef: SHL
000040f0: DUP6
000040f1: DUP4
000040f2: AND
000040f3: DUP2
000040f4: MUL
000040f5: SWAP2
000040f6: SWAP1
000040f7: SWAP2
000040f8: OR
000040f9: PUSH1 0x01
000040fb: PUSH1 0x01
000040fd: PUSH1 0xe0
000040ff: SHL
00004100: SUB
00004101: AND
00004102: PUSH1 0x01
00004104: PUSH1 0xe0
00004106: SHL
00004107: PUSH4 0xffffffff
0000410c: DUP7
0000410d: AND
0000410e: MUL
0000410f: OR
00004110: SWAP3
00004111: DUP4
00004112: SWAP1
00004113: SSTORE
00004114: PUSH1 0x40
00004116: DUP1
00004117: MLOAD
00004118: DUP5
00004119: DUP5
0000411a: AND
0000411b: DUP2
0000411c: MSTORE
0000411d: SWAP2
0000411e: SWAP1
0000411f: SWAP4
00004120: DIV
00004121: SWAP1
00004122: SWAP2
00004123: AND
00004124: PUSH1 0x20
00004126: DUP3
00004127: ADD
00004128: MSTORE
00004129: DUP2
0000412a: MLOAD
0000412b: PUSH32 0x1c411e9a96e071241c2f21f7726b17ae89e3cab4c78be50e062b03a9fffbbad1
0000414c: SWAP3
0000414d: SWAP2
0000414e: DUP2
0000414f: SWAP1
00004150: SUB
00004151: SWAP1
00004152: SWAP2
00004153: ADD
00004154: SWAP1
00004155: LOG1
00004156: POP
00004157: POP
00004158: POP
00004159: JUMP
0000415a: INVALID
0000415b: LOG2
0000415c: PUSH5 0x6970667358
00004162: UNKNOWN(0x22)
00004163: SLT
00004164: KECCAK256
00004165: EXP
00004166: UNKNOWN(0xC7)
00004167: TIMESTAMP
00004168: SWAP15
00004169: UNKNOWN(0xAE)
0000416a: UNKNOWN(0xB0)
0000416b: SSTORE
0000416c: SGT
0000416d: UNKNOWN(0xB9)
0000416e: JUMP
0000416f: UNKNOWN(0x25)
00004170: MCOPY
00004171: UNKNOWN(0xBB)
00004172: PUSH27 0xe31ef023b2e50a47923f0013925fa96b5fab64736f6c6343000705
0000418e: STOP
0000418f: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x2400963c94ee834a4f6ddeb5de7f51b4f7317cf79b5f9d31180d1c90e7321a26
call_targets: 0x8b0bb0d0d8b3d83ebb7c1b49d79d74df396634c6
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x2400963c94ee834a4f6ddeb5de7f51b4f7317cf79b5f9d31180d1c90e7321a26",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x8b0bb0d0d8b3d83ebb7c1b49d79d74df396634c6"
    ],
    "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": "0xfce589d8",
            "selector": "0xfce589d8",
            "calldata_variants": [
                "0xfce589d8",
                "0xfce589d80000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xff3549a3",
            "selector": "0xff3549a3",
            "calldata_variants": [
                "0xff3549a3",
                "0xff3549a30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xff91c78d",
            "selector": "0xff91c78d",
            "calldata_variants": [
                "0xff91c78d",
                "0xff91c78d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfff6cae9",
            "selector": "0xfff6cae9",
            "calldata_variants": [
                "0xfff6cae9",
                "0xfff6cae90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdc76fabc",
            "selector": "0xdc76fabc",
            "calldata_variants": [
                "0xdc76fabc",
                "0xdc76fabc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdd62ed3e",
            "selector": "0xdd62ed3e",
            "calldata_variants": [
                "0xdd62ed3e",
                "0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xeddd0d9c",
            "selector": "0xeddd0d9c",
            "calldata_variants": [
                "0xeddd0d9c",
                "0xeddd0d9c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf8c8765e",
            "selector": "0xf8c8765e",
            "calldata_variants": [
                "0xf8c8765e",
                "0xf8c8765e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 12199,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 13519,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 2,
    "guards_detected": [],
    "untrusted_call_count": 2
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x2400963c94ee834a4f6ddeb5de7f51b4f7317cf79b5f9d31180d1c90e7321a26
call_targets: 0x8b0bb0d0d8b3d83ebb7c1b49d79d74df396634c6
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x2400963c94ee834a4f6ddeb5de7f51b4f7317cf79b5f9d31180d1c90e7321a26",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x8b0bb0d0d8b3d83ebb7c1b49d79d74df396634c6"
    ],
    "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": "0xfce589d8",
            "selector": "0xfce589d8",
            "calldata_variants": [
                "0xfce589d8",
                "0xfce589d80000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xff3549a3",
            "selector": "0xff3549a3",
            "calldata_variants": [
                "0xff3549a3",
                "0xff3549a30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xff91c78d",
            "selector": "0xff91c78d",
            "calldata_variants": [
                "0xff91c78d",
                "0xff91c78d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfff6cae9",
            "selector": "0xfff6cae9",
            "calldata_variants": [
                "0xfff6cae9",
                "0xfff6cae90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdc76fabc",
            "selector": "0xdc76fabc",
            "calldata_variants": [
                "0xdc76fabc",
                "0xdc76fabc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdd62ed3e",
            "selector": "0xdd62ed3e",
            "calldata_variants": [
                "0xdd62ed3e",
                "0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xeddd0d9c",
            "selector": "0xeddd0d9c",
            "calldata_variants": [
                "0xeddd0d9c",
                "0xeddd0d9c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf8c8765e",
            "selector": "0xf8c8765e",
            "calldata_variants": [
                "0xf8c8765e",
                "0xf8c8765e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 12199,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 13519,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 2,
    "guards_detected": []
}
medium oracle codex Swap pricing fully trusts external oracle output (no invariant check) 75 no
view
evidence_json
{
    "evidence": "swap() computes output using `IIntegralOracle(oracle).tradeY`/`tradeX` and updates reserves based solely on those values, without any invariant check independent of the oracle.",
    "locations": [
        "contracts/IntegralPair.sol:258",
        "contracts/IntegralPair.sol:273",
        "contracts/IntegralPair.sol:282"
    ],
    "recommendation": "Enforce an on-chain invariant (e.g., constant product or bounded price impact) independent of the oracle, or use a manipulation\u2011resistant oracle with enforced update intervals and sanity checks against current reserves. Consider hard caps on swap output relative to reserves.",
    "exploit_scenario": "If the oracle can be manipulated (e.g., spot\u2011price feed or compromised oracle), an attacker can skew `tradeX`/`tradeY` outputs to make `balanceAfter` artificially low. The pair then accepts swaps that pay out excessive amounts, draining reserves. The only checks (`_checkPriceDeviationLimit` and token limits) also rely on oracle-derived values, so they do not protect against a poisoned oracle."
}
low auth codex Permit signatures are malleable (no EIP‑2 `s`/`v` checks) 65 no
view
evidence_json
{
    "evidence": "`permit` accepts any `v`/`s` that passes `ecrecover` without canonicality checks.",
    "locations": [
        "contracts/AbstractERC20.sol:104",
        "contracts/AbstractERC20.sol:121"
    ],
    "recommendation": "Validate `v` is 27/28 and enforce `s` in the lower half\u2011order (EIP\u20112). Using OpenZeppelin\u2019s `ECDSA.recover` is a common fix.",
    "exploit_scenario": "An attacker can derive an alternative valid signature (by flipping `s` and `v`) for the same permit message, potentially front\u2011running or confusing systems that assume signature uniqueness. Nonce protection prevents replay, but malleability still enables signature substitution/griefing."
}
low access_control codex Pair initialization can be called multiple times by the factory 65 no
view
evidence_json
{
    "evidence": "`initialize` lacks any check that it has already been called, allowing repeated reconfiguration by the factory.",
    "locations": [
        "contracts/IntegralPair.sol:150",
        "contracts/IntegralPair.sol:157",
        "contracts/IntegralPair.sol:161"
    ],
    "recommendation": "Add a one\u2011time initialization guard (e.g., `require(token0 == address(0) && token1 == address(0))` or an `initialized` flag) so `initialize` can only run once.",
    "exploit_scenario": "The factory can re-call `initialize` after liquidity exists, changing `token0`, `token1`, `oracle`, and `trader`. A compromised or malicious factory could redirect the pair to attacker\u2011controlled tokens/oracle, potentially locking existing reserves or enabling abusive swaps."
}
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": 18
}
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": 17
}