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

Analysis Run

cc0af19c-f5b5-4769-92bd-1d29f762fd1e

failed
Chain ID
1
Address
Block Number
Created
Sun, Dec 28, 2025 1:10 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
Not yet
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
30257 report.consolidate complete 1 / 1 3 months ago
73726 artifact.fetch failed 1 / 3 2 weeks ago
73727 tool.cast_disasm complete 1 / 3 2 weeks ago
73728 analysis.bundle complete 1 / 3 2 weeks ago
73729 capability.graph complete 1 / 3 2 weeks ago
73730 detector.run complete 1 / 3 2 weeks ago
73731 validation.fork complete 1 / 3 2 weeks 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
0
No findings?
yes
Summary
No exploitable vulnerabilities found in the first-party contracts in scope. Residual risk: core invariants (fees/caps/accounting) assume a well-behaved `baseToken` and trusted, non-manipulable `ISwapWrapper` implementations configured in `Registry`; if those assumptions are violated, limits and accounting can be undermined.
View stderr
[codex:1027767] OpenAI Codex v0.77.0 (research preview)
[codex:1027767] --------
[codex:1027767] workdir: /tmp/codex-multi-wo4bau6h
[codex:1027767] model: gpt-5.2-codex
[codex:1027767] provider: openai
[codex:1027767] approval: never
[codex:1027767] sandbox: read-only
[codex:1027767] reasoning effort: xhigh
[codex:1027767] reasoning summaries: auto
[codex:1027767] session id: 019b6278-e14d-7b52-a3dc-8031823bd570
[codex:1027767] --------
[codex:1027767] user
[codex:1027767] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:1027767] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:1027767] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:1027767] 
[codex:1027767] Scope rules:
[codex:1027767] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:1027767] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:1027767] 
[codex:1027767] Output MUST be valid JSON matching the provided schema.
[codex:1027767] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:1027767] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:1027767] 
[codex:1027767] Output constraints (IMPORTANT):
[codex:1027767] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:1027767] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:1027767] mcp startup: no servers
[codex:1027767] 
[codex:1027767] thinking
[codex:1027767] **Preparing to read AUDIT_BUNDLE.txt**
[codex:1027767] exec
[codex:1027767] /bin/bash -lc ls in /tmp/codex-multi-wo4bau6h succeeded in 5ms:
[codex:1027767] AUDIT_BUNDLE.txt
[codex:1027767] codex-output-schema.json
[codex:1027767] contracts
[codex:1027767] exec
[codex:1027767] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-wo4bau6h succeeded in 7ms:
[codex:1027767] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:1027767] 
[codex:1027767] ================================================================================
[codex:1027767] FILE: contracts/lib/solmate/src/tokens/ERC20.sol
[codex:1027767] ================================================================================
[codex:1027767] // SPDX-License-Identifier: AGPL-3.0-only
[codex:1027767] pragma solidity >=0.8.0;
[codex:1027767] 
[codex:1027767] /// @notice Modern and gas efficient ERC20 + EIP-2612 implementation.
[codex:1027767] /// @author Solmate (https://github.com/Rari-Capital/solmate/blob/main/src/tokens/ERC20.sol)
[codex:1027767] /// @author Modified from Uniswap (https://github.com/Uniswap/uniswap-v2-core/blob/master/contracts/UniswapV2ERC20.sol)
[codex:1027767] /// @dev Do not manually set balances without updating totalSupply, as the sum of all user balances must not exceed it.
[codex:1027767] abstract contract ERC20 {
[codex:1027767]     /*///////////////////////////////////////////////////////////////
[codex:1027767]                                   EVENTS
[codex:1027767]     //////////////////////////////////////////////////////////////*/
[codex:1027767] 
[codex:1027767]     event Transfer(address indexed from, address indexed to, uint256 amount);
[codex:1027767] 
[codex:1027767]     event Approval(address indexed owner, address indexed spender, uint256 amount);
[codex:1027767] 
[codex:1027767] thinking
[codex:1027767] **Preparing to audit smart contract bundle**
[codex:1027767] exec
[codex:1027767] /bin/bash -lc 'rg -n "''^FILE:" AUDIT_BUNDLE.txt' in /tmp/codex-multi-wo4bau6h succeeded in 7ms:
[codex:1027767] 4:FILE: contracts/lib/solmate/src/tokens/ERC20.sol
[codex:1027767] 203:FILE: contracts/lib/solmate/src/utils/ReentrancyGuard.sol
[codex:1027767] 226:FILE: contracts/lib/solmate/src/utils/SafeTransferLib.sol
[codex:1027767] 370:FILE: contracts/src/Entity.sol
[codex:1027767] 912:FILE: contracts/src/Portfolio.sol
[codex:1027767] 1447:FILE: contracts/src/Registry.sol
[codex:1027767] 1791:FILE: contracts/src/RegistryAuth.sol
[codex:1027767] 1850:FILE: contracts/src/interfaces/ISwapWrapper.sol
[codex:1027767] 1892:FILE: contracts/src/lib/Math.sol
[codex:1027767] 1951:FILE: contracts/src/lib/ReentrancyGuard.sol
[codex:1027767] 1981:FILE: contracts/src/lib/auth/Auth.sol
[codex:1027767] 2047:FILE: contracts/src/lib/auth/EndaomentAuth.sol
[codex:1027767] 2126:FILE: contracts/src/lib/auth/authorities/RolesAuthority.sol
[codex:1027767] 2226:FILE: contracts/src/portfolios/SingleTokenPortfolio.sol
[codex:1027767] 
[codex:1027767] thinking
[codex:1027767] **Reviewing key smart contract files**
[codex:1027767] exec
[codex:1027767] /bin/bash -lc "sed -n '370,912p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-wo4bau6h succeeded in 5ms:
[codex:1027767] FILE: contracts/src/Entity.sol
[codex:1027767] ================================================================================
[codex:1027767] //SPDX-License-Identifier: BSD 3-Clause
[codex:1027767] pragma solidity >=0.8.0;
[codex:1027767] 
[codex:1027767] import "solmate/tokens/ERC20.sol";
[codex:1027767] import "solmate/utils/SafeTransferLib.sol";
[codex:1027767] import "./lib/ReentrancyGuard.sol";
[codex:1027767] 
[codex:1027767] import {Registry} from "./Registry.sol";
[codex:1027767] import {ISwapWrapper} from "./interfaces/ISwapWrapper.sol";
[codex:1027767] import {EndaomentAuth} from "./lib/auth/EndaomentAuth.sol";
[codex:1027767] import {Portfolio} from "./Portfolio.sol";
[codex:1027767] import {Math} from "./lib/Math.sol";
[codex:1027767] 
[codex:1027767] error EntityInactive();
[codex:1027767] error PortfolioInactive();
[codex:1027767] error InsufficientFunds();
[codex:1027767] error InvalidAction();
[codex:1027767] error BalanceMismatch();
[codex:1027767] exec
[codex:1027767] /bin/bash -lc "sed -n '912,1447p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-wo4bau6h succeeded in 6ms:
[codex:1027767] FILE: contracts/src/Portfolio.sol
[codex:1027767] ================================================================================
[codex:1027767] //SPDX-License-Identifier: BSD 3-Clause
[codex:1027767] pragma solidity >=0.8.0;
[codex:1027767] 
[codex:1027767] import {ReentrancyGuard} from "solmate/utils/ReentrancyGuard.sol";
[codex:1027767] import {ERC20} from "solmate/tokens/ERC20.sol";
[codex:1027767] import {SafeTransferLib} from "solmate/utils/SafeTransferLib.sol";
[codex:1027767] import {Registry} from "./Registry.sol";
[codex:1027767] import {Entity} from "./Entity.sol";
[codex:1027767] import {EndaomentAuth} from "./lib/auth/EndaomentAuth.sol";
[codex:1027767] import {Math} from "./lib/Math.sol";
[codex:1027767] 
[codex:1027767] abstract contract Portfolio is ERC20, EndaomentAuth, ReentrancyGuard {
[codex:1027767]     using Math for uint256;
[codex:1027767]     using SafeTransferLib for ERC20;
[codex:1027767] 
[codex:1027767]     Registry public immutable registry;
[codex:1027767]     uint256 public cap;
[codex:1027767]     address public feeTreasury;
[codex:1027767] exec
[codex:1027767] /bin/bash -lc "sed -n '1447,1791p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-wo4bau6h succeeded in 6ms:
[codex:1027767] FILE: contracts/src/Registry.sol
[codex:1027767] ================================================================================
[codex:1027767] //SPDX-License-Identifier: BSD 3-Clause
[codex:1027767] pragma solidity 0.8.13;
[codex:1027767] 
[codex:1027767] import {Math} from "./lib/Math.sol";
[codex:1027767] import {ERC20} from "solmate/tokens/ERC20.sol";
[codex:1027767] import {Auth, Authority} from "./lib/auth/Auth.sol";
[codex:1027767] import {SafeTransferLib} from "solmate/utils/SafeTransferLib.sol";
[codex:1027767] 
[codex:1027767] import {RegistryAuth} from "./RegistryAuth.sol";
[codex:1027767] import {Entity} from "./Entity.sol";
[codex:1027767] import {ISwapWrapper} from "./interfaces/ISwapWrapper.sol";
[codex:1027767] import {Portfolio} from "./Portfolio.sol";
[codex:1027767] 
[codex:1027767] // --- Errors ---
[codex:1027767] error Unauthorized();
[codex:1027767] error UnsupportedSwapper();
[codex:1027767] 
[codex:1027767] /**
[codex:1027767] exec
[codex:1027767] /bin/bash -lc "sed -n '1791,1892p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-wo4bau6h succeeded in 6ms:
[codex:1027767] FILE: contracts/src/RegistryAuth.sol
[codex:1027767] ================================================================================
[codex:1027767] //SPDX-License-Identifier: BSD 3-Clause
[codex:1027767] pragma solidity 0.8.13;
[codex:1027767] 
[codex:1027767] import {Auth, Authority} from "./lib/auth/Auth.sol";
[codex:1027767] import {RolesAuthority} from "./lib/auth/authorities/RolesAuthority.sol";
[codex:1027767] 
[codex:1027767] // --- Errors ---
[codex:1027767] error OwnershipInvalid();
[codex:1027767] 
[codex:1027767] /**
[codex:1027767]  * @notice RegistryAuth - contract to control ownership of the Registry.
[codex:1027767]  */
[codex:1027767] contract RegistryAuth is RolesAuthority {
[codex:1027767]     /// @notice Emitted when the first step of an ownership transfer (proposal) is done.
[codex:1027767]     event OwnershipTransferProposed(address indexed user, address indexed newOwner);
[codex:1027767] 
[codex:1027767]     /// @notice Emitted when the second step of an ownership transfer (claim) is done.
[codex:1027767]     event OwnershipChanged(address indexed owner, address indexed newOwner);
[codex:1027767] exec
[codex:1027767] /bin/bash -lc "sed -n '1892,1981p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-wo4bau6h succeeded in 6ms:
[codex:1027767] FILE: contracts/src/lib/Math.sol
[codex:1027767] ================================================================================
[codex:1027767] // SPDX-License-Identifier: BSD 3-Clause
[codex:1027767] pragma solidity 0.8.13;
[codex:1027767] 
[codex:1027767] library Math {
[codex:1027767]     uint256 internal constant ZOC = 1e4;
[codex:1027767] 
[codex:1027767]     /**
[codex:1027767]      * @dev Multiply 2 numbers where at least one is a zoc, return product in original units of the other number.
[codex:1027767]      */
[codex:1027767]     function zocmul(uint256 x, uint256 y) internal pure returns (uint256 z) {
[codex:1027767]         z = x * y;
[codex:1027767]         unchecked {
[codex:1027767]             z /= ZOC;
[codex:1027767]         }
[codex:1027767]     }
[codex:1027767] 
[codex:1027767]     // Below is WAD math from solmate's FixedPointMathLib.
[codex:1027767]     // https://github.com/Rari-Capital/solmate/blob/c8278b3cb948cffda3f1de5a401858035f262060/src/utils/FixedPointMathLib.sol
[codex:1027767] exec
[codex:1027767] /bin/bash -lc "sed -n '1981,2047p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-wo4bau6h succeeded in 7ms:
[codex:1027767] FILE: contracts/src/lib/auth/Auth.sol
[codex:1027767] ================================================================================
[codex:1027767] // SPDX-License-Identifier: AGPL-3.0-only
[codex:1027767] pragma solidity >=0.8.0;
[codex:1027767] 
[codex:1027767] // This contract is modified from Solmate only to make requiresAuth virtual on line 26
[codex:1027767] 
[codex:1027767] /// @notice Provides a flexible and updatable auth pattern which is completely separate from application logic.
[codex:1027767] /// @author Solmate (https://github.com/Rari-Capital/solmate/blob/main/src/auth/Auth.sol)
[codex:1027767] /// @author Modified from Dappsys (https://github.com/dapphub/ds-auth/blob/master/src/auth.sol)
[codex:1027767] abstract contract Auth {
[codex:1027767]     event OwnerUpdated(address indexed user, address indexed newOwner);
[codex:1027767] 
[codex:1027767]     event AuthorityUpdated(address indexed user, Authority indexed newAuthority);
[codex:1027767] 
[codex:1027767]     address public owner;
[codex:1027767] 
[codex:1027767]     Authority public authority;
[codex:1027767] 
[codex:1027767]     constructor(address _owner, Authority _authority) {
[codex:1027767] 
[codex:1027767] 
[codex:1027767] 
[codex:1027767] 
[codex:1027767] 
[codex:1027767] 
[codex:1027767] 
[codex:1027767] 
[codex:1027767] 
[codex:1027767] thinking
[codex:1027767] **Evaluating contract security and potential vulnerabilities**
[codex:1027767] 
[codex:1027767] I'm auditing the contracts focusing on reentrancy, access control, upgradeability, signature validation, oracle manipulation, accounting integrity, external calls, and delegatecall risks. I’m digging into how balance updates and external token calls interact, especially around ERC20 transfers and potential callbacks, plus the safety of admin functions and initialization guards. There’s a lot about carefully checking if any external or reentrant calls can be exploited given internal state updates and permissions. Let’s explore these nuanced patterns and see where risks might lie!
[codex:1027767] thinking
[codex:1027767] **Reviewing token handling and access control nuances**
[codex:1027767] 
[codex:1027767] There's a lot to unravel here! I’m analyzing how ETH amounts and approvals are managed with swap wrappers, noting the reliance on admin-only arbitrary calls without reentrancy guards. I’m also exploring how price oracles via swap outputs could let deposits bypass caps through manipulation, and reviewing how slippage, approvals, and signature checks interplay. The evaluation also covers potential edge cases like division-by-zero, leftover assets after shutdown, and approval patterns that might cause failures with some tokens. I want to see how these contract interactions might affect security or correctness under various scenarios.
[codex:1027767] thinking
[codex:1027767] **Evaluating permission tags and entity activation risks**
[codex:1027767] 
[codex:1027767] I'm examining how permission tags use address-like bytes that might collide with real contract addresses, considering how active entities can be set by any approved factory without strict ownership checks. Also, I’m looking into how the receiveTransfer function can be called by any active entity to alter balances without actual token transfers, potentially causing accounting confusion, though it’s fixable. There are also nuances in deposit/redeem logic, fee calculations, approvals, and reentrancy protections that seem designed carefully but deserve close attention to subtle edge cases.
[codex:1027767] thinking
[codex:1027767] **Analyzing token transfer nuances and reentrancy considerations**
[codex:1027767] 
[codex:1027767] I'm reviewing how fee-on-transfer tokens could cause balance mismatches in transfers and payouts, considering that the baseToken is assumed stable and fee-free. I’m also looking into subtle operator precedence in role checks, access control on key functions, and reentrancy risks in external calls where state updates happen after transfers. The intricacies of deposit/redeem logic, permission checks, and allowance handling show a thoughtful design, though some edge cases with ERC777-like tokens and token approvals deserve attention to possible reentrancy or mismatch issues.
[codex:1027767] thinking
[codex:1027767] **Evaluating deposit/redeem logic and role-based access nuances**
[codex:1027767] 
[codex:1027767] I’m walking through how asset-to-share conversions handle fees and swaps, checking for any edge cases in cap enforcement and decoding of swap data. I’m also contemplating the impact of allowed active entities on deposit permissions and how approvals with tokens like USDT are managed. The interplay of access controls, especially around entity activation and role checks, reveals a complex but mostly safe system, though some scenarios around trusted factories and active EOAs might subtly affect permissions.
[codex:1027767] thinking
[codex:1027767] **Inspecting authority mappings and approval edge cases**
[codex:1027767] 
[codex:1027767] I’m analyzing how specialTarget addresses and capability mappings could affect function permissions, especially around public access flags. I’m also looking into allowance management during portfolio deposits, considering non-standard tokens and potential leftover approvals, alongside subtle transfer scenarios when entities might be EOAs instead of contracts. There is quite a bit to unpack about configuration risks and nuanced contract interactions!
[codex:1027767] thinking
[codex:1027767] **Evaluating portfolio shutdown reentrancy and oracle risks**
[codex:1027767] 
[codex:1027767] I’m looking closely at shutdown’s lack of reentrancy guard and how a malicious swap wrapper could reenter during the swap to call redeem, though it seems harmless overall. I’m also considering how price manipulation via the swap wrapper’s output could let deposits bypass portfolio caps, posing an oracle manipulation risk worth mentioning among low-to-medium severity findings.
[codex:1027767] thinking
[codex:1027767] **Summarizing oracle manipulation and accounting observations**
[codex:1027767] 
[codex:1027767] I’m weighing the oracle manipulation risk from using the swap wrapper’s spot price for the portfolio cap check, which could let deposits bypass the cap, though it doesn't cause direct loss. I’m also noting minor issues like active entities being able to inflate balances via `receiveTransfer`, causing temporary accounting mismatches without theft, and some event reporting inconsistencies—these seem low severity and mostly operational nuances rather than exploitable vulnerabilities. Overall, no critical issues stand out, but I’ll highlight these residual considerations.
[codex:1027767] thinking
[codex:1027767] **Preparing final JSON audit summary**
[codex:1027767] 
[codex:1027767] I’m finalizing a clear JSON report that states no exploitable vulnerabilities were found while noting residual risks around trusted swap wrappers and cap enforcement relying on on-chain pricing. I’m making sure the output matches the required schema with no findings array and a concise summary highlighting assumptions and testing gaps.
[codex:1027767] codex
[codex:1027767] {"no_findings":true,"summary":"No exploitable vulnerabilities found in the first-party contracts in scope. Residual risk: core invariants (fees/caps/accounting) assume a well-behaved `baseToken` and trusted, non-manipulable `ISwapWrapper` implementations configured in `Registry`; if those assumptions are violated, limits and accounting can be undermined.","findings":[]}
[codex:1027767] tokens used
[codex:1027767] 68,157
[codex:1027767] {"no_findings":true,"summary":"No exploitable vulnerabilities found in the first-party contracts in scope. Residual risk: core invariants (fees/caps/accounting) assume a well-behaved `baseToken` and trusted, non-manipulable `ISwapWrapper` implementations configured in `Registry`; if those assumptions are violated, limits and accounting can be undermined.","findings":[]}
Metadata
{
    "codex": {
        "ran_at": "2025-12-28T01:10:39.613043+00:00",
        "returncode": 0
    },
    "summary": "No exploitable vulnerabilities found in the first-party contracts in scope. Residual risk: core invariants (fees/caps/accounting) assume a well-behaved `baseToken` and trusted, non-manipulable `ISwapWrapper` implementations configured in `Registry`; if those assumptions are violated, limits and accounting can be undermined.",
    "raw_final": {
        "summary": "No exploitable vulnerabilities found in the first-party contracts in scope. Residual risk: core invariants (fees/caps/accounting) assume a well-behaved `baseToken` and trusted, non-manipulable `ISwapWrapper` implementations configured in `Registry`; if those assumptions are violated, limits and accounting can be undermined.",
        "findings": [],
        "no_findings": true
    },
    "no_findings": true,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
15
EXT*/BALANCE
0
Total opcodes
5871
Flags
call_family_heavy
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x02fd
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x5d303519
00000019: GT
0000001a: PUSH2 0x018f
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0xbfa37e37
00000024: GT
00000025: PUSH2 0x00e1
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xe37d15bf
0000002f: GT
00000030: PUSH2 0x008a
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xf06dfacb
0000003a: GT
0000003b: PUSH2 0x0064
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xf06dfacb
00000045: EQ
00000046: PUSH2 0x0919
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0xfef78497
00000050: EQ
00000051: PUSH2 0x092f
00000054: JUMPI
00000055: DUP1
00000056: PUSH4 0xff5ac9a4
0000005b: EQ
0000005c: PUSH2 0x0942
0000005f: JUMPI
00000060: PUSH1 0x00
00000062: DUP1
00000063: REVERT
00000064: JUMPDEST
00000065: DUP1
00000066: PUSH4 0xe37d15bf
0000006b: EQ
0000006c: PUSH2 0x08c3
0000006f: JUMPI
00000070: DUP1
00000071: PUSH4 0xe77c646d
00000076: EQ
00000077: PUSH2 0x08d9
0000007a: JUMPI
0000007b: DUP1
0000007c: PUSH4 0xf029748d
00000081: EQ
00000082: PUSH2 0x08f9
00000085: JUMPI
00000086: PUSH1 0x00
00000088: DUP1
00000089: REVERT
0000008a: JUMPDEST
0000008b: DUP1
0000008c: PUSH4 0xcbb94359
00000091: GT
00000092: PUSH2 0x00bb
00000095: JUMPI
00000096: DUP1
00000097: PUSH4 0xcbb94359
0000009c: EQ
0000009d: PUSH2 0x084b
000000a0: JUMPI
000000a1: DUP1
000000a2: PUSH4 0xd505accf
000000a7: EQ
000000a8: PUSH2 0x086b
000000ab: JUMPI
000000ac: DUP1
000000ad: PUSH4 0xdd62ed3e
000000b2: EQ
000000b3: PUSH2 0x088b
000000b6: JUMPI
000000b7: PUSH1 0x00
000000b9: DUP1
000000ba: REVERT
000000bb: JUMPDEST
000000bc: DUP1
000000bd: PUSH4 0xbfa37e37
000000c2: EQ
000000c3: PUSH2 0x07d7
000000c6: JUMPI
000000c7: DUP1
000000c8: PUSH4 0xc55dae63
000000cd: EQ
000000ce: PUSH2 0x07f7
000000d1: JUMPI
000000d2: DUP1
000000d3: PUSH4 0xc6e6f592
000000d8: EQ
000000d9: PUSH2 0x082b
000000dc: JUMPI
000000dd: PUSH1 0x00
000000df: DUP1
000000e0: REVERT
000000e1: JUMPDEST
000000e2: DUP1
000000e3: PUSH4 0x7dbc1df0
000000e8: GT
000000e9: PUSH2 0x0143
000000ec: JUMPI
000000ed: DUP1
000000ee: PUSH4 0x99aa7348
000000f3: GT
000000f4: PUSH2 0x011d
000000f7: JUMPI
000000f8: DUP1
000000f9: PUSH4 0x99aa7348
000000fe: EQ
000000ff: PUSH2 0x0795
00000102: JUMPI
00000103: DUP1
00000104: PUSH4 0xa9059cbb
00000109: EQ
0000010a: PUSH2 0x036c
0000010d: JUMPI
0000010e: DUP1
0000010f: PUSH4 0xbf7e214f
00000114: EQ
00000115: PUSH2 0x07aa
00000118: JUMPI
00000119: PUSH1 0x00
0000011b: DUP1
0000011c: REVERT
0000011d: JUMPDEST
0000011e: DUP1
0000011f: PUSH4 0x7dbc1df0
00000124: EQ
00000125: PUSH2 0x0733
00000128: JUMPI
00000129: DUP1
0000012a: PUSH4 0x7ecebe00
0000012f: EQ
00000130: PUSH2 0x0753
00000133: JUMPI
00000134: DUP1
00000135: PUSH4 0x95d89b41
0000013a: EQ
0000013b: PUSH2 0x0780
0000013e: JUMPI
0000013f: PUSH1 0x00
00000141: DUP1
00000142: REVERT
00000143: JUMPDEST
00000144: DUP1
00000145: PUSH4 0x67a52793
0000014a: GT
0000014b: PUSH2 0x0174
0000014e: JUMPI
0000014f: DUP1
00000150: PUSH4 0x67a52793
00000155: EQ
00000156: PUSH2 0x06bc
00000159: JUMPI
0000015a: DUP1
0000015b: PUSH4 0x70a08231
00000160: EQ
00000161: PUSH2 0x06d2
00000164: JUMPI
00000165: DUP1
00000166: PUSH4 0x7b103999
0000016b: EQ
0000016c: PUSH2 0x06ff
0000016f: JUMPI
00000170: PUSH1 0x00
00000172: DUP1
00000173: REVERT
00000174: JUMPDEST
00000175: DUP1
00000176: PUSH4 0x5d303519
0000017b: EQ
0000017c: PUSH2 0x066f
0000017f: JUMPI
00000180: DUP1
00000181: PUSH4 0x60dc2340
00000186: EQ
00000187: PUSH2 0x068f
0000018a: JUMPI
0000018b: PUSH1 0x00
0000018d: DUP1
0000018e: REVERT
0000018f: JUMPDEST
00000190: DUP1
00000191: PUSH4 0x23b872dd
00000196: GT
00000197: PUSH2 0x0253
0000019a: JUMPI
0000019b: DUP1
0000019c: PUSH4 0x38d52e0f
000001a1: GT
000001a2: PUSH2 0x01fc
000001a5: JUMPI
000001a6: DUP1
000001a7: PUSH4 0x47786d37
000001ac: GT
000001ad: PUSH2 0x01d6
000001b0: JUMPI
000001b1: DUP1
000001b2: PUSH4 0x47786d37
000001b7: EQ
000001b8: PUSH2 0x060f
000001bb: JUMPI
000001bc: DUP1
000001bd: PUSH4 0x490ae210
000001c2: EQ
000001c3: PUSH2 0x062f
000001c6: JUMPI
000001c7: DUP1
000001c8: PUSH4 0x5bae19ef
000001cd: EQ
000001ce: PUSH2 0x064f
000001d1: JUMPI
000001d2: PUSH1 0x00
000001d4: DUP1
000001d5: REVERT
000001d6: JUMPDEST
000001d7: DUP1
000001d8: PUSH4 0x38d52e0f
000001dd: EQ
000001de: PUSH2 0x056c
000001e1: JUMPI
000001e2: DUP1
000001e3: PUSH4 0x4288d871
000001e8: EQ
000001e9: PUSH2 0x05c5
000001ec: JUMPI
000001ed: DUP1
000001ee: PUSH4 0x458f5815
000001f3: EQ
000001f4: PUSH2 0x05f9
000001f7: JUMPI
000001f8: PUSH1 0x00
000001fa: DUP1
000001fb: REVERT
000001fc: JUMPDEST
000001fd: DUP1
000001fe: PUSH4 0x313ce567
00000203: GT
00000204: PUSH2 0x022d
00000207: JUMPI
00000208: DUP1
00000209: PUSH4 0x313ce567
0000020e: EQ
0000020f: PUSH2 0x04fb
00000212: JUMPI
00000213: DUP1
00000214: PUSH4 0x355274ea
00000219: EQ
0000021a: PUSH2 0x0541
0000021d: JUMPI
0000021e: DUP1
0000021f: PUSH4 0x3644e515
00000224: EQ
00000225: PUSH2 0x0557
00000228: JUMPI
00000229: PUSH1 0x00
0000022b: DUP1
0000022c: REVERT
0000022d: JUMPDEST
0000022e: DUP1
0000022f: PUSH4 0x23b872dd
00000234: EQ
00000235: PUSH2 0x048c
00000238: JUMPI
00000239: DUP1
0000023a: PUSH4 0x280398b5
0000023f: EQ
00000240: PUSH2 0x04a7
00000243: JUMPI
00000244: DUP1
00000245: PUSH4 0x30adf81f
0000024a: EQ
0000024b: PUSH2 0x04c7
0000024e: JUMPI
0000024f: PUSH1 0x00
00000251: DUP1
00000252: REVERT
00000253: JUMPDEST
00000254: DUP1
00000255: PUSH4 0x106f276f
0000025a: GT
0000025b: PUSH2 0x02b5
0000025e: JUMPI
0000025f: DUP1
00000260: PUSH4 0x1e7ee237
00000265: GT
00000266: PUSH2 0x028f
00000269: JUMPI
0000026a: DUP1
0000026b: PUSH4 0x1e7ee237
00000270: EQ
00000271: PUSH2 0x0405
00000274: JUMPI
00000275: DUP1
00000276: PUSH4 0x2031ee95
0000027b: EQ
0000027c: PUSH2 0x041f
0000027f: JUMPI
00000280: DUP1
00000281: PUSH4 0x22dc2909
00000286: EQ
00000287: PUSH2 0x046a
0000028a: JUMPI
0000028b: PUSH1 0x00
0000028d: DUP1
0000028e: REVERT
0000028f: JUMPDEST
00000290: DUP1
00000291: PUSH4 0x106f276f
00000296: EQ
00000297: PUSH2 0x03b1
0000029a: JUMPI
0000029b: DUP1
0000029c: PUSH4 0x18160ddd
000002a1: EQ
000002a2: PUSH2 0x03d1
000002a5: JUMPI
000002a6: DUP1
000002a7: PUSH4 0x1e500759
000002ac: EQ
000002ad: PUSH2 0x03e7
000002b0: JUMPI
000002b1: PUSH1 0x00
000002b3: DUP1
000002b4: REVERT
000002b5: JUMPDEST
000002b6: DUP1
000002b7: PUSH4 0x07a2d13a
000002bc: GT
000002bd: PUSH2 0x02e6
000002c0: JUMPI
000002c1: DUP1
000002c2: PUSH4 0x07a2d13a
000002c7: EQ
000002c8: PUSH2 0x034c
000002cb: JUMPI
000002cc: DUP1
000002cd: PUSH4 0x095ea7b3
000002d2: EQ
000002d3: PUSH2 0x036c
000002d6: JUMPI
000002d7: DUP1
000002d8: PUSH4 0x0a9d5514
000002dd: EQ
000002de: PUSH2 0x039c
000002e1: JUMPI
000002e2: PUSH1 0x00
000002e4: DUP1
000002e5: REVERT
000002e6: JUMPDEST
000002e7: DUP1
000002e8: PUSH4 0x01e1d114
000002ed: EQ
000002ee: PUSH2 0x0302
000002f1: JUMPI
000002f2: DUP1
000002f3: PUSH4 0x06fdde03
000002f8: EQ
000002f9: PUSH2 0x032a
000002fc: JUMPI
000002fd: JUMPDEST
000002fe: PUSH1 0x00
00000300: DUP1
00000301: REVERT
00000302: JUMPDEST
00000303: CALLVALUE
00000304: DUP1
00000305: ISZERO
00000306: PUSH2 0x030e
00000309: JUMPI
0000030a: PUSH1 0x00
0000030c: DUP1
0000030d: REVERT
0000030e: JUMPDEST
0000030f: POP
00000310: PUSH2 0x0317
00000313: PUSH2 0x0958
00000316: JUMP
00000317: JUMPDEST
00000318: PUSH1 0x40
0000031a: MLOAD
0000031b: SWAP1
0000031c: DUP2
0000031d: MSTORE
0000031e: PUSH1 0x20
00000320: ADD
00000321: JUMPDEST
00000322: PUSH1 0x40
00000324: MLOAD
00000325: DUP1
00000326: SWAP2
00000327: SUB
00000328: SWAP1
00000329: RETURN
0000032a: JUMPDEST
0000032b: CALLVALUE
0000032c: DUP1
0000032d: ISZERO
0000032e: PUSH2 0x0336
00000331: JUMPI
00000332: PUSH1 0x00
00000334: DUP1
00000335: REVERT
00000336: JUMPDEST
00000337: POP
00000338: PUSH2 0x033f
0000033b: PUSH2 0x096a
0000033e: JUMP
0000033f: JUMPDEST
00000340: PUSH1 0x40
00000342: MLOAD
00000343: PUSH2 0x0321
00000346: SWAP2
00000347: SWAP1
00000348: PUSH2 0x2b03
0000034b: JUMP
0000034c: JUMPDEST
0000034d: CALLVALUE
0000034e: DUP1
0000034f: ISZERO
00000350: PUSH2 0x0358
00000353: JUMPI
00000354: PUSH1 0x00
00000356: DUP1
00000357: REVERT
00000358: JUMPDEST
00000359: POP
0000035a: PUSH2 0x0317
0000035d: PUSH2 0x0367
00000360: CALLDATASIZE
00000361: PUSH1 0x04
00000363: PUSH2 0x2b16
00000366: JUMP
00000367: JUMPDEST
00000368: PUSH2 0x09f8
0000036b: JUMP
0000036c: JUMPDEST
0000036d: CALLVALUE
0000036e: DUP1
0000036f: ISZERO
00000370: PUSH2 0x0378
00000373: JUMPI
00000374: PUSH1 0x00
00000376: DUP1
00000377: REVERT
00000378: JUMPDEST
00000379: POP
0000037a: PUSH2 0x038c
0000037d: PUSH2 0x0387
00000380: CALLDATASIZE
00000381: PUSH1 0x04
00000383: PUSH2 0x2b54
00000386: JUMP
00000387: JUMPDEST
00000388: PUSH2 0x0a25
0000038b: JUMP
0000038c: JUMPDEST
0000038d: PUSH1 0x40
0000038f: MLOAD
00000390: SWAP1
00000391: ISZERO
00000392: ISZERO
00000393: DUP2
00000394: MSTORE
00000395: PUSH1 0x20
00000397: ADD
00000398: PUSH2 0x0321
0000039b: JUMP
0000039c: JUMPDEST
0000039d: CALLVALUE
0000039e: DUP1
0000039f: ISZERO
000003a0: PUSH2 0x03a8
000003a3: JUMPI
000003a4: PUSH1 0x00
000003a6: DUP1
000003a7: REVERT
000003a8: JUMPDEST
000003a9: POP
000003aa: PUSH2 0x0317
000003ad: PUSH2 0x0a59
000003b0: JUMP
000003b1: JUMPDEST
000003b2: CALLVALUE
000003b3: DUP1
000003b4: ISZERO
000003b5: PUSH2 0x03bd
000003b8: JUMPI
000003b9: PUSH1 0x00
000003bb: DUP1
000003bc: REVERT
000003bd: JUMPDEST
000003be: POP
000003bf: PUSH2 0x0317
000003c2: PUSH2 0x03cc
000003c5: CALLDATASIZE
000003c6: PUSH1 0x04
000003c8: PUSH2 0x2bc9
000003cb: JUMP
000003cc: JUMPDEST
000003cd: PUSH2 0x0b0a
000003d0: JUMP
000003d1: JUMPDEST
000003d2: CALLVALUE
000003d3: DUP1
000003d4: ISZERO
000003d5: PUSH2 0x03dd
000003d8: JUMPI
000003d9: PUSH1 0x00
000003db: DUP1
000003dc: REVERT
000003dd: JUMPDEST
000003de: POP
000003df: PUSH2 0x0317
000003e2: PUSH1 0x02
000003e4: SLOAD
000003e5: DUP2
000003e6: JUMP
000003e7: JUMPDEST
000003e8: CALLVALUE
000003e9: DUP1
000003ea: ISZERO
000003eb: PUSH2 0x03f3
000003ee: JUMPI
000003ef: PUSH1 0x00
000003f1: DUP1
000003f2: REVERT
000003f3: JUMPDEST
000003f4: POP
000003f5: PUSH2 0x0317
000003f8: PUSH2 0x0402
000003fb: CALLDATASIZE
000003fc: PUSH1 0x04
000003fe: PUSH2 0x2b16
00000401: JUMP
00000402: JUMPDEST
00000403: SWAP1
00000404: JUMP
00000405: JUMPDEST
00000406: CALLVALUE
00000407: DUP1
00000408: ISZERO
00000409: PUSH2 0x0411
0000040c: JUMPI
0000040d: PUSH1 0x00
0000040f: DUP1
00000410: REVERT
00000411: JUMPDEST
00000412: POP
00000413: PUSH1 0x0d
00000415: SLOAD
00000416: PUSH2 0x038c
00000419: SWAP1
0000041a: PUSH1 0xff
0000041c: AND
0000041d: DUP2
0000041e: JUMP
0000041f: JUMPDEST
00000420: CALLVALUE
00000421: DUP1
00000422: ISZERO
00000423: PUSH2 0x042b
00000426: JUMPI
00000427: PUSH1 0x00
00000429: DUP1
0000042a: REVERT
0000042b: JUMPDEST
0000042c: POP
0000042d: PUSH1 0x07
0000042f: SLOAD
00000430: PUSH2 0x0439
00000433: SWAP1
00000434: PUSH1 0x60
00000436: SHL
00000437: DUP2
00000438: JUMP
00000439: JUMPDEST
0000043a: PUSH1 0x40
0000043c: MLOAD
0000043d: PUSH32 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000
0000045e: SWAP1
0000045f: SWAP2
00000460: AND
00000461: DUP2
00000462: MSTORE
00000463: PUSH1 0x20
00000465: ADD
00000466: PUSH2 0x0321
00000469: JUMP
0000046a: JUMPDEST
0000046b: CALLVALUE
0000046c: DUP1
0000046d: ISZERO
0000046e: PUSH2 0x0476
00000471: JUMPI
00000472: PUSH1 0x00
00000474: DUP1
00000475: REVERT
00000476: JUMPDEST
00000477: POP
00000478: PUSH2 0x048a
0000047b: PUSH2 0x0485
0000047e: CALLDATASIZE
0000047f: PUSH1 0x04
00000481: PUSH2 0x2b16
00000484: JUMP
00000485: JUMPDEST
00000486: PUSH2 0x0c3c
00000489: JUMP
0000048a: JUMPDEST
0000048b: STOP
0000048c: JUMPDEST
0000048d: CALLVALUE
0000048e: DUP1
0000048f: ISZERO
00000490: PUSH2 0x0498
00000493: JUMPI
00000494: PUSH1 0x00
00000496: DUP1
00000497: REVERT
00000498: JUMPDEST
00000499: POP
0000049a: PUSH2 0x038c
0000049d: PUSH2 0x0387
000004a0: CALLDATASIZE
000004a1: PUSH1 0x04
000004a3: PUSH2 0x2c0b
000004a6: JUMP
000004a7: JUMPDEST
000004a8: CALLVALUE
000004a9: DUP1
000004aa: ISZERO
000004ab: PUSH2 0x04b3
000004ae: JUMPI
000004af: PUSH1 0x00
000004b1: DUP1
000004b2: REVERT
000004b3: JUMPDEST
000004b4: POP
000004b5: PUSH2 0x0317
000004b8: PUSH2 0x04c2
000004bb: CALLDATASIZE
000004bc: PUSH1 0x04
000004be: PUSH2 0x2c4c
000004c1: JUMP
000004c2: JUMPDEST
000004c3: PUSH2 0x0d1e
000004c6: JUMP
000004c7: JUMPDEST
000004c8: CALLVALUE
000004c9: DUP1
000004ca: ISZERO
000004cb: PUSH2 0x04d3
000004ce: JUMPI
000004cf: PUSH1 0x00
000004d1: DUP1
000004d2: REVERT
000004d3: JUMPDEST
000004d4: POP
000004d5: PUSH2 0x0317
000004d8: PUSH32 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9
000004f9: DUP2
000004fa: JUMP
000004fb: JUMPDEST
000004fc: CALLVALUE
000004fd: DUP1
000004fe: ISZERO
000004ff: PUSH2 0x0507
00000502: JUMPI
00000503: PUSH1 0x00
00000505: DUP1
00000506: REVERT
00000507: JUMPDEST
00000508: POP
00000509: PUSH2 0x052f
0000050c: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000012
0000052d: DUP2
0000052e: JUMP
0000052f: JUMPDEST
00000530: PUSH1 0x40
00000532: MLOAD
00000533: PUSH1 0xff
00000535: SWAP1
00000536: SWAP2
00000537: AND
00000538: DUP2
00000539: MSTORE
0000053a: PUSH1 0x20
0000053c: ADD
0000053d: PUSH2 0x0321
00000540: JUMP
00000541: JUMPDEST
00000542: CALLVALUE
00000543: DUP1
00000544: ISZERO
00000545: PUSH2 0x054d
00000548: JUMPI
00000549: PUSH1 0x00
0000054b: DUP1
0000054c: REVERT
0000054d: JUMPDEST
0000054e: POP
0000054f: PUSH2 0x0317
00000552: PUSH1 0x09
00000554: SLOAD
00000555: DUP2
00000556: JUMP
00000557: JUMPDEST
00000558: CALLVALUE
00000559: DUP1
0000055a: ISZERO
0000055b: PUSH2 0x0563
0000055e: JUMPI
0000055f: PUSH1 0x00
00000561: DUP1
00000562: REVERT
00000563: JUMPDEST
00000564: POP
00000565: PUSH2 0x0317
00000568: PUSH2 0x0d95
0000056b: JUMP
0000056c: JUMPDEST
0000056d: CALLVALUE
0000056e: DUP1
0000056f: ISZERO
00000570: PUSH2 0x0578
00000573: JUMPI
00000574: PUSH1 0x00
00000576: DUP1
00000577: REVERT
00000578: JUMPDEST
00000579: POP
0000057a: PUSH2 0x05a0
0000057d: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
0000059e: DUP2
0000059f: JUMP
000005a0: JUMPDEST
000005a1: PUSH1 0x40
000005a3: MLOAD
000005a4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000005b9: SWAP1
000005ba: SWAP2
000005bb: AND
000005bc: DUP2
000005bd: MSTORE
000005be: PUSH1 0x20
000005c0: ADD
000005c1: PUSH2 0x0321
000005c4: JUMP
000005c5: JUMPDEST
000005c6: CALLVALUE
000005c7: DUP1
000005c8: ISZERO
000005c9: PUSH2 0x05d1
000005cc: JUMPI
000005cd: PUSH1 0x00
000005cf: DUP1
000005d0: REVERT
000005d1: JUMPDEST
000005d2: POP
000005d3: PUSH2 0x05a0
000005d6: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
000005f7: DUP2
000005f8: JUMP
000005f9: JUMPDEST
000005fa: CALLVALUE
000005fb: DUP1
000005fc: ISZERO
000005fd: PUSH2 0x0605
00000600: JUMPI
00000601: PUSH1 0x00
00000603: DUP1
00000604: REVERT
00000605: JUMPDEST
00000606: POP
00000607: PUSH2 0x0317
0000060a: PUSH1 0x0c
0000060c: SLOAD
0000060d: DUP2
0000060e: JUMP
0000060f: JUMPDEST
00000610: CALLVALUE
00000611: DUP1
00000612: ISZERO
00000613: PUSH2 0x061b
00000616: JUMPI
00000617: PUSH1 0x00
00000619: DUP1
0000061a: REVERT
0000061b: JUMPDEST
0000061c: POP
0000061d: PUSH2 0x048a
00000620: PUSH2 0x062a
00000623: CALLDATASIZE
00000624: PUSH1 0x04
00000626: PUSH2 0x2b16
00000629: JUMP
0000062a: JUMPDEST
0000062b: PUSH2 0x0deb
0000062e: JUMP
0000062f: JUMPDEST
00000630: CALLVALUE
00000631: DUP1
00000632: ISZERO
00000633: PUSH2 0x063b
00000636: JUMPI
00000637: PUSH1 0x00
00000639: DUP1
0000063a: REVERT
0000063b: JUMPDEST
0000063c: POP
0000063d: PUSH2 0x048a
00000640: PUSH2 0x064a
00000643: CALLDATASIZE
00000644: PUSH1 0x04
00000646: PUSH2 0x2b16
00000649: JUMP
0000064a: JUMPDEST
0000064b: PUSH2 0x0e84
0000064e: JUMP
0000064f: JUMPDEST
00000650: CALLVALUE
00000651: DUP1
00000652: ISZERO
00000653: PUSH2 0x065b
00000656: JUMPI
00000657: PUSH1 0x00
00000659: DUP1
0000065a: REVERT
0000065b: JUMPDEST
0000065c: POP
0000065d: PUSH2 0x048a
00000660: PUSH2 0x066a
00000663: CALLDATASIZE
00000664: PUSH1 0x04
00000666: PUSH2 0x2b16
00000669: JUMP
0000066a: JUMPDEST
0000066b: PUSH2 0x0f59
0000066e: JUMP
0000066f: JUMPDEST
00000670: CALLVALUE
00000671: DUP1
00000672: ISZERO
00000673: PUSH2 0x067b
00000676: JUMPI
00000677: PUSH1 0x00
00000679: DUP1
0000067a: REVERT
0000067b: JUMPDEST
0000067c: POP
0000067d: PUSH2 0x0317
00000680: PUSH2 0x068a
00000683: CALLDATASIZE
00000684: PUSH1 0x04
00000686: PUSH2 0x2c6e
00000689: JUMP
0000068a: JUMPDEST
0000068b: PUSH2 0x1038
0000068e: JUMP
0000068f: JUMPDEST
00000690: CALLVALUE
00000691: DUP1
00000692: ISZERO
00000693: PUSH2 0x069b
00000696: JUMPI
00000697: PUSH1 0x00
00000699: DUP1
0000069a: REVERT
0000069b: JUMPDEST
0000069c: POP
0000069d: PUSH1 0x0a
0000069f: SLOAD
000006a0: PUSH2 0x05a0
000006a3: SWAP1
000006a4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000006b9: AND
000006ba: DUP2
000006bb: JUMP
000006bc: JUMPDEST
000006bd: CALLVALUE
000006be: DUP1
000006bf: ISZERO
000006c0: PUSH2 0x06c8
000006c3: JUMPI
000006c4: PUSH1 0x00
000006c6: DUP1
000006c7: REVERT
000006c8: JUMPDEST
000006c9: POP
000006ca: PUSH2 0x0317
000006cd: PUSH1 0x0b
000006cf: SLOAD
000006d0: DUP2
000006d1: JUMP
000006d2: JUMPDEST
000006d3: CALLVALUE
000006d4: DUP1
000006d5: ISZERO
000006d6: PUSH2 0x06de
000006d9: JUMPI
000006da: PUSH1 0x00
000006dc: DUP1
000006dd: REVERT
000006de: JUMPDEST
000006df: POP
000006e0: PUSH2 0x0317
000006e3: PUSH2 0x06ed
000006e6: CALLDATASIZE
000006e7: PUSH1 0x04
000006e9: PUSH2 0x2cba
000006ec: JUMP
000006ed: JUMPDEST
000006ee: PUSH1 0x03
000006f0: PUSH1 0x20
000006f2: MSTORE
000006f3: PUSH1 0x00
000006f5: SWAP1
000006f6: DUP2
000006f7: MSTORE
000006f8: PUSH1 0x40
000006fa: SWAP1
000006fb: KECCAK256
000006fc: SLOAD
000006fd: DUP2
000006fe: JUMP
000006ff: JUMPDEST
00000700: CALLVALUE
00000701: DUP1
00000702: ISZERO
00000703: PUSH2 0x070b
00000706: JUMPI
00000707: PUSH1 0x00
00000709: DUP1
0000070a: REVERT
0000070b: JUMPDEST
0000070c: POP
0000070d: PUSH2 0x05a0
00000710: PUSH32 0x00000000000000000000000094106ca9c7e567109a1d39413052887d1f412183
00000731: DUP2
00000732: JUMP
00000733: JUMPDEST
00000734: CALLVALUE
00000735: DUP1
00000736: ISZERO
00000737: PUSH2 0x073f
0000073a: JUMPI
0000073b: PUSH1 0x00
0000073d: DUP1
0000073e: REVERT
0000073f: JUMPDEST
00000740: POP
00000741: PUSH2 0x048a
00000744: PUSH2 0x074e
00000747: CALLDATASIZE
00000748: PUSH1 0x04
0000074a: PUSH2 0x2b16
0000074d: JUMP
0000074e: JUMPDEST
0000074f: PUSH2 0x1232
00000752: JUMP
00000753: JUMPDEST
00000754: CALLVALUE
00000755: DUP1
00000756: ISZERO
00000757: PUSH2 0x075f
0000075a: JUMPI
0000075b: PUSH1 0x00
0000075d: DUP1
0000075e: REVERT
0000075f: JUMPDEST
00000760: POP
00000761: PUSH2 0x0317
00000764: PUSH2 0x076e
00000767: CALLDATASIZE
00000768: PUSH1 0x04
0000076a: PUSH2 0x2cba
0000076d: JUMP
0000076e: JUMPDEST
0000076f: PUSH1 0x05
00000771: PUSH1 0x20
00000773: MSTORE
00000774: PUSH1 0x00
00000776: SWAP1
00000777: DUP2
00000778: MSTORE
00000779: PUSH1 0x40
0000077b: SWAP1
0000077c: KECCAK256
0000077d: SLOAD
0000077e: DUP2
0000077f: JUMP
00000780: JUMPDEST
00000781: CALLVALUE
00000782: DUP1
00000783: ISZERO
00000784: PUSH2 0x078c
00000787: JUMPI
00000788: PUSH1 0x00
0000078a: DUP1
0000078b: REVERT
0000078c: JUMPDEST
0000078d: POP
0000078e: PUSH2 0x033f
00000791: PUSH2 0x1307
00000794: JUMP
00000795: JUMPDEST
00000796: CALLVALUE
00000797: DUP1
00000798: ISZERO
00000799: PUSH2 0x07a1
0000079c: JUMPI
0000079d: PUSH1 0x00
0000079f: DUP1
000007a0: REVERT
000007a1: JUMPDEST
000007a2: POP
000007a3: PUSH2 0x048a
000007a6: PUSH2 0x1314
000007a9: JUMP
000007aa: JUMPDEST
000007ab: CALLVALUE
000007ac: DUP1
000007ad: ISZERO
000007ae: PUSH2 0x07b6
000007b1: JUMPI
000007b2: PUSH1 0x00
000007b4: DUP1
000007b5: REVERT
000007b6: JUMPDEST
000007b7: POP
000007b8: PUSH1 0x06
000007ba: SLOAD
000007bb: PUSH2 0x05a0
000007be: SWAP1
000007bf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000007d4: AND
000007d5: DUP2
000007d6: JUMP
000007d7: JUMPDEST
000007d8: CALLVALUE
000007d9: DUP1
000007da: ISZERO
000007db: PUSH2 0x07e3
000007de: JUMPI
000007df: PUSH1 0x00
000007e1: DUP1
000007e2: REVERT
000007e3: JUMPDEST
000007e4: POP
000007e5: PUSH2 0x048a
000007e8: PUSH2 0x07f2
000007eb: CALLDATASIZE
000007ec: PUSH1 0x04
000007ee: PUSH2 0x2cba
000007f1: JUMP
000007f2: JUMPDEST
000007f3: PUSH2 0x1404
000007f6: JUMP
000007f7: JUMPDEST
000007f8: CALLVALUE
000007f9: DUP1
000007fa: ISZERO
000007fb: PUSH2 0x0803
000007fe: JUMPI
000007ff: PUSH1 0x00
00000801: DUP1
00000802: REVERT
00000803: JUMPDEST
00000804: POP
00000805: PUSH2 0x05a0
00000808: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
00000829: DUP2
0000082a: JUMP
0000082b: JUMPDEST
0000082c: CALLVALUE
0000082d: DUP1
0000082e: ISZERO
0000082f: PUSH2 0x0837
00000832: JUMPI
00000833: PUSH1 0x00
00000835: DUP1
00000836: REVERT
00000837: JUMPDEST
00000838: POP
00000839: PUSH2 0x0317
0000083c: PUSH2 0x0846
0000083f: CALLDATASIZE
00000840: PUSH1 0x04
00000842: PUSH2 0x2b16
00000845: JUMP
00000846: JUMPDEST
00000847: PUSH2 0x14db
0000084a: JUMP
0000084b: JUMPDEST
0000084c: CALLVALUE
0000084d: DUP1
0000084e: ISZERO
0000084f: PUSH2 0x0857
00000852: JUMPI
00000853: PUSH1 0x00
00000855: DUP1
00000856: REVERT
00000857: JUMPDEST
00000858: POP
00000859: PUSH2 0x048a
0000085c: PUSH2 0x0866
0000085f: CALLDATASIZE
00000860: PUSH1 0x04
00000862: PUSH2 0x2b16
00000865: JUMP
00000866: JUMPDEST
00000867: PUSH2 0x14fb
0000086a: JUMP
0000086b: JUMPDEST
0000086c: CALLVALUE
0000086d: DUP1
0000086e: ISZERO
0000086f: PUSH2 0x0877
00000872: JUMPI
00000873: PUSH1 0x00
00000875: DUP1
00000876: REVERT
00000877: JUMPDEST
00000878: POP
00000879: PUSH2 0x048a
0000087c: PUSH2 0x0886
0000087f: CALLDATASIZE
00000880: PUSH1 0x04
00000882: PUSH2 0x2cd7
00000885: JUMP
00000886: JUMPDEST
00000887: PUSH2 0x15d6
0000088a: JUMP
0000088b: JUMPDEST
0000088c: CALLVALUE
0000088d: DUP1
0000088e: ISZERO
0000088f: PUSH2 0x0897
00000892: JUMPI
00000893: PUSH1 0x00
00000895: DUP1
00000896: REVERT
00000897: JUMPDEST
00000898: POP
00000899: PUSH2 0x0317
0000089c: PUSH2 0x08a6
0000089f: CALLDATASIZE
000008a0: PUSH1 0x04
000008a2: PUSH2 0x2d4e
000008a5: JUMP
000008a6: JUMPDEST
000008a7: PUSH1 0x04
000008a9: PUSH1 0x20
000008ab: SWAP1
000008ac: DUP2
000008ad: MSTORE
000008ae: PUSH1 0x00
000008b0: SWAP3
000008b1: DUP4
000008b2: MSTORE
000008b3: PUSH1 0x40
000008b5: DUP1
000008b6: DUP5
000008b7: KECCAK256
000008b8: SWAP1
000008b9: SWAP2
000008ba: MSTORE
000008bb: SWAP1
000008bc: DUP3
000008bd: MSTORE
000008be: SWAP1
000008bf: KECCAK256
000008c0: SLOAD
000008c1: DUP2
000008c2: JUMP
000008c3: JUMPDEST
000008c4: CALLVALUE
000008c5: DUP1
000008c6: ISZERO
000008c7: PUSH2 0x08cf
000008ca: JUMPI
000008cb: PUSH1 0x00
000008cd: DUP1
000008ce: REVERT
000008cf: JUMPDEST
000008d0: POP
000008d1: PUSH2 0x0317
000008d4: PUSH1 0x0f
000008d6: SLOAD
000008d7: DUP2
000008d8: JUMP
000008d9: JUMPDEST
000008da: CALLVALUE
000008db: DUP1
000008dc: ISZERO
000008dd: PUSH2 0x08e5
000008e0: JUMPI
000008e1: PUSH1 0x00
000008e3: DUP1
000008e4: REVERT
000008e5: JUMPDEST
000008e6: POP
000008e7: PUSH2 0x0317
000008ea: PUSH2 0x08f4
000008ed: CALLDATASIZE
000008ee: PUSH1 0x04
000008f0: PUSH2 0x2c6e
000008f3: JUMP
000008f4: JUMPDEST
000008f5: PUSH2 0x1608
000008f8: JUMP
000008f9: JUMPDEST
000008fa: CALLVALUE
000008fb: DUP1
000008fc: ISZERO
000008fd: PUSH2 0x0905
00000900: JUMPI
00000901: PUSH1 0x00
00000903: DUP1
00000904: REVERT
00000905: JUMPDEST
00000906: POP
00000907: PUSH2 0x0317
0000090a: PUSH2 0x0914
0000090d: CALLDATASIZE
0000090e: PUSH1 0x04
00000910: PUSH2 0x2b16
00000913: JUMP
00000914: JUMPDEST
00000915: PUSH2 0x17ec
00000918: JUMP
00000919: JUMPDEST
0000091a: CALLVALUE
0000091b: DUP1
0000091c: ISZERO
0000091d: PUSH2 0x0925
00000920: JUMPI
00000921: PUSH1 0x00
00000923: DUP1
00000924: REVERT
00000925: JUMPDEST
00000926: POP
00000927: PUSH2 0x0317
0000092a: PUSH1 0x10
0000092c: SLOAD
0000092d: DUP2
0000092e: JUMP
0000092f: JUMPDEST
00000930: PUSH2 0x033f
00000933: PUSH2 0x093d
00000936: CALLDATASIZE
00000937: PUSH1 0x04
00000939: PUSH2 0x2db6
0000093c: JUMP
0000093d: JUMPDEST
0000093e: PUSH2 0x18aa
00000941: JUMP
00000942: JUMPDEST
00000943: CALLVALUE
00000944: DUP1
00000945: ISZERO
00000946: PUSH2 0x094e
00000949: JUMPI
0000094a: PUSH1 0x00
0000094c: DUP1
0000094d: REVERT
0000094e: JUMPDEST
0000094f: POP
00000950: PUSH2 0x0317
00000953: PUSH1 0x0e
00000955: SLOAD
00000956: DUP2
00000957: JUMP
00000958: JUMPDEST
00000959: PUSH1 0x00
0000095b: PUSH2 0x0965
0000095e: PUSH2 0x0402
00000961: PUSH2 0x0a59
00000964: JUMP
00000965: JUMPDEST
00000966: SWAP1
00000967: POP
00000968: SWAP1
00000969: JUMP
0000096a: JUMPDEST
0000096b: PUSH1 0x00
0000096d: DUP1
0000096e: SLOAD
0000096f: PUSH2 0x0977
00000972: SWAP1
00000973: PUSH2 0x2ea1
00000976: JUMP
00000977: JUMPDEST
00000978: DUP1
00000979: PUSH1 0x1f
0000097b: ADD
0000097c: PUSH1 0x20
0000097e: DUP1
0000097f: SWAP2
00000980: DIV
00000981: MUL
00000982: PUSH1 0x20
00000984: ADD
00000985: PUSH1 0x40
00000987: MLOAD
00000988: SWAP1
00000989: DUP2
0000098a: ADD
0000098b: PUSH1 0x40
0000098d: MSTORE
0000098e: DUP1
0000098f: SWAP3
00000990: SWAP2
00000991: SWAP1
00000992: DUP2
00000993: DUP2
00000994: MSTORE
00000995: PUSH1 0x20
00000997: ADD
00000998: DUP3
00000999: DUP1
0000099a: SLOAD
0000099b: PUSH2 0x09a3
0000099e: SWAP1
0000099f: PUSH2 0x2ea1
000009a2: JUMP
000009a3: JUMPDEST
000009a4: DUP1
000009a5: ISZERO
000009a6: PUSH2 0x09f0
000009a9: JUMPI
000009aa: DUP1
000009ab: PUSH1 0x1f
000009ad: LT
000009ae: PUSH2 0x09c5
000009b1: JUMPI
000009b2: PUSH2 0x0100
000009b5: DUP1
000009b6: DUP4
000009b7: SLOAD
000009b8: DIV
000009b9: MUL
000009ba: DUP4
000009bb: MSTORE
000009bc: SWAP2
000009bd: PUSH1 0x20
000009bf: ADD
000009c0: SWAP2
000009c1: PUSH2 0x09f0
000009c4: JUMP
000009c5: JUMPDEST
000009c6: DUP3
000009c7: ADD
000009c8: SWAP2
000009c9: SWAP1
000009ca: PUSH1 0x00
000009cc: MSTORE
000009cd: PUSH1 0x20
000009cf: PUSH1 0x00
000009d1: KECCAK256
000009d2: SWAP1
000009d3: JUMPDEST
000009d4: DUP2
000009d5: SLOAD
000009d6: DUP2
000009d7: MSTORE
000009d8: SWAP1
000009d9: PUSH1 0x01
000009db: ADD
000009dc: SWAP1
000009dd: PUSH1 0x20
000009df: ADD
000009e0: DUP1
000009e1: DUP4
000009e2: GT
000009e3: PUSH2 0x09d3
000009e6: JUMPI
000009e7: DUP3
000009e8: SWAP1
000009e9: SUB
000009ea: PUSH1 0x1f
000009ec: AND
000009ed: DUP3
000009ee: ADD
000009ef: SWAP2
000009f0: JUMPDEST
000009f1: POP
000009f2: POP
000009f3: POP
000009f4: POP
000009f5: POP
000009f6: DUP2
000009f7: JUMP
000009f8: JUMPDEST
000009f9: PUSH1 0x02
000009fb: SLOAD
000009fc: PUSH1 0x00
000009fe: SWAP1
000009ff: DUP1
00000a00: ISZERO
00000a01: PUSH2 0x0a1c
00000a04: JUMPI
00000a05: PUSH2 0x0a17
00000a08: PUSH2 0x0a0f
00000a0b: PUSH2 0x0958
00000a0e: JUMP
00000a0f: JUMPDEST
00000a10: DUP5
00000a11: SWAP1
00000a12: DUP4
00000a13: PUSH2 0x19c2
00000a16: JUMP
00000a17: JUMPDEST
00000a18: PUSH2 0x0a1e
00000a1b: JUMP
00000a1c: JUMPDEST
00000a1d: DUP3
00000a1e: JUMPDEST
00000a1f: SWAP4
00000a20: SWAP3
00000a21: POP
00000a22: POP
00000a23: POP
00000a24: JUMP
00000a25: JUMPDEST
00000a26: PUSH1 0x00
00000a28: PUSH1 0x40
00000a2a: MLOAD
00000a2b: PUSH32 0xc31c949300000000000000000000000000000000000000000000000000000000
00000a4c: DUP2
00000a4d: MSTORE
00000a4e: PUSH1 0x04
00000a50: ADD
00000a51: PUSH1 0x40
00000a53: MLOAD
00000a54: DUP1
00000a55: SWAP2
00000a56: SUB
00000a57: SWAP1
00000a58: REVERT
00000a59: JUMPDEST
00000a5a: PUSH1 0x40
00000a5c: MLOAD
00000a5d: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000
00000a7e: DUP2
00000a7f: MSTORE
00000a80: ADDRESS
00000a81: PUSH1 0x04
00000a83: DUP3
00000a84: ADD
00000a85: MSTORE
00000a86: PUSH1 0x00
00000a88: SWAP1
00000a89: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00000aaa: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000abf: AND
00000ac0: SWAP1
00000ac1: PUSH4 0x70a08231
00000ac6: SWAP1
00000ac7: PUSH1 0x24
00000ac9: ADD
00000aca: PUSH1 0x20
00000acc: PUSH1 0x40
00000ace: MLOAD
00000acf: DUP1
00000ad0: DUP4
00000ad1: SUB
00000ad2: DUP2
00000ad3: DUP7
00000ad4: GAS
00000ad5: STATICCALL
00000ad6: ISZERO
00000ad7: DUP1
00000ad8: ISZERO
00000ad9: PUSH2 0x0ae6
00000adc: JUMPI
00000add: RETURNDATASIZE
00000ade: PUSH1 0x00
00000ae0: DUP1
00000ae1: RETURNDATACOPY
00000ae2: RETURNDATASIZE
00000ae3: PUSH1 0x00
00000ae5: REVERT
00000ae6: JUMPDEST
00000ae7: POP
00000ae8: POP
00000ae9: POP
00000aea: POP
00000aeb: PUSH1 0x40
00000aed: MLOAD
00000aee: RETURNDATASIZE
00000aef: PUSH1 0x1f
00000af1: NOT
00000af2: PUSH1 0x1f
00000af4: DUP3
00000af5: ADD
00000af6: AND
00000af7: DUP3
00000af8: ADD
00000af9: DUP1
00000afa: PUSH1 0x40
00000afc: MSTORE
00000afd: POP
00000afe: DUP2
00000aff: ADD
00000b00: SWAP1
00000b01: PUSH2 0x0965
00000b04: SWAP2
00000b05: SWAP1
00000b06: PUSH2 0x2ef4
00000b09: JUMP
00000b0a: JUMPDEST
00000b0b: PUSH1 0x00
00000b0d: PUSH2 0x0b3a
00000b10: CALLER
00000b11: PUSH1 0x00
00000b13: CALLDATALOAD
00000b14: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
00000b35: AND
00000b36: PUSH2 0x19e1
00000b39: JUMP
00000b3a: JUMPDEST
00000b3b: PUSH2 0x0b70
00000b3e: JUMPI
00000b3f: PUSH1 0x40
00000b41: MLOAD
00000b42: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000
00000b63: DUP2
00000b64: MSTORE
00000b65: PUSH1 0x04
00000b67: ADD
00000b68: PUSH1 0x40
00000b6a: MLOAD
00000b6b: DUP1
00000b6c: SWAP2
00000b6d: SUB
00000b6e: SWAP1
00000b6f: REVERT
00000b70: JUMPDEST
00000b71: PUSH1 0x0d
00000b73: SLOAD
00000b74: PUSH1 0xff
00000b76: AND
00000b77: ISZERO
00000b78: PUSH2 0x0bad
00000b7b: JUMPI
00000b7c: PUSH1 0x40
00000b7e: MLOAD
00000b7f: PUSH32 0x2a542da400000000000000000000000000000000000000000000000000000000
00000ba0: DUP2
00000ba1: MSTORE
00000ba2: PUSH1 0x04
00000ba4: ADD
00000ba5: PUSH1 0x40
00000ba7: MLOAD
00000ba8: DUP1
00000ba9: SWAP2
00000baa: SUB
00000bab: SWAP1
00000bac: REVERT
00000bad: JUMPDEST
00000bae: PUSH1 0x0d
00000bb0: DUP1
00000bb1: SLOAD
00000bb2: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
00000bd3: AND
00000bd4: PUSH1 0x01
00000bd6: OR
00000bd7: SWAP1
00000bd8: SSTORE
00000bd9: PUSH1 0x00
00000bdb: PUSH2 0x0be2
00000bde: PUSH2 0x0958
00000be1: JUMP
00000be2: JUMPDEST
00000be3: SWAP1
00000be4: POP
00000be5: PUSH1 0x00
00000be7: DUP1
00000be8: PUSH2 0x0bf2
00000beb: DUP4
00000bec: DUP8
00000bed: DUP8
00000bee: PUSH2 0x1bbd
00000bf1: JUMP
00000bf2: JUMPDEST
00000bf3: PUSH1 0x40
00000bf5: DUP1
00000bf6: MLOAD
00000bf7: DUP4
00000bf8: DUP2
00000bf9: MSTORE
00000bfa: PUSH1 0x20
00000bfc: DUP2
00000bfd: ADD
00000bfe: DUP4
00000bff: SWAP1
00000c00: MSTORE
00000c01: SWAP3
00000c02: SWAP5
00000c03: POP
00000c04: SWAP1
00000c05: SWAP3
00000c06: POP
00000c07: PUSH32 0xbf74a2393b907f335184e6dbeb4daa93812b077b8e034c2e61c8e6864002dda7
00000c28: SWAP2
00000c29: ADD
00000c2a: PUSH1 0x40
00000c2c: MLOAD
00000c2d: DUP1
00000c2e: SWAP2
00000c2f: SUB
00000c30: SWAP1
00000c31: LOG1
00000c32: SWAP3
00000c33: POP
00000c34: POP
00000c35: POP
00000c36: JUMPDEST
00000c37: SWAP3
00000c38: SWAP2
00000c39: POP
00000c3a: POP
00000c3b: JUMP
00000c3c: JUMPDEST
00000c3d: PUSH2 0x0c6a
00000c40: CALLER
00000c41: PUSH1 0x00
00000c43: CALLDATALOAD
00000c44: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
00000c65: AND
00000c66: PUSH2 0x19e1
00000c69: JUMP
00000c6a: JUMPDEST
00000c6b: PUSH2 0x0ca0
00000c6e: JUMPI
00000c6f: PUSH1 0x40
00000c71: MLOAD
00000c72: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000
00000c93: DUP2
00000c94: MSTORE
00000c95: PUSH1 0x04
00000c97: ADD
00000c98: PUSH1 0x40
00000c9a: MLOAD
00000c9b: DUP1
00000c9c: SWAP2
00000c9d: SUB
00000c9e: SWAP1
00000c9f: REVERT
00000ca0: JUMPDEST
00000ca1: PUSH8 0x0de0b6b3a7640000
00000caa: DUP2
00000cab: GT
00000cac: ISZERO
00000cad: PUSH2 0x0ce2
00000cb0: JUMPI
00000cb1: PUSH1 0x40
00000cb3: MLOAD
00000cb4: PUSH32 0xf08319c600000000000000000000000000000000000000000000000000000000
00000cd5: DUP2
00000cd6: MSTORE
00000cd7: PUSH1 0x04
00000cd9: ADD
00000cda: PUSH1 0x40
00000cdc: MLOAD
00000cdd: DUP1
00000cde: SWAP2
00000cdf: SUB
00000ce0: SWAP1
00000ce1: REVERT
00000ce2: JUMPDEST
00000ce3: PUSH1 0x10
00000ce5: DUP2
00000ce6: SWAP1
00000ce7: SSTORE
00000ce8: PUSH1 0x40
00000cea: MLOAD
00000ceb: DUP2
00000cec: DUP2
00000ced: MSTORE
00000cee: PUSH32 0x1b93bc9809c55f88e4bd6c7309c9ee1954771b4b87fcf5df7e4593b9ab0e1c9c
00000d0f: SWAP1
00000d10: PUSH1 0x20
00000d12: ADD
00000d13: JUMPDEST
00000d14: PUSH1 0x40
00000d16: MLOAD
00000d17: DUP1
00000d18: SWAP2
00000d19: SUB
00000d1a: SWAP1
00000d1b: LOG1
00000d1c: POP
00000d1d: JUMP
00000d1e: JUMPDEST
00000d1f: PUSH1 0x02
00000d21: SLOAD
00000d22: PUSH1 0x00
00000d24: SWAP1
00000d25: DUP2
00000d26: PUSH2 0x0d2d
00000d29: PUSH2 0x0958
00000d2c: JUMP
00000d2d: JUMPDEST
00000d2e: SWAP1
00000d2f: POP
00000d30: PUSH1 0x00
00000d32: PUSH2 0x0d53
00000d35: DUP3
00000d36: PUSH1 0x0e
00000d38: SLOAD
00000d39: DUP8
00000d3a: TIMESTAMP
00000d3b: PUSH2 0x0d44
00000d3e: SWAP2
00000d3f: SWAP1
00000d40: PUSH2 0x2f3c
00000d43: JUMP
00000d44: JUMPDEST
00000d45: PUSH2 0x0d4e
00000d48: SWAP2
00000d49: SWAP1
00000d4a: PUSH2 0x2f54
00000d4d: JUMP
00000d4e: JUMPDEST
00000d4f: PUSH2 0x1eb8
00000d52: JUMP
00000d53: JUMPDEST
00000d54: SWAP1
00000d55: POP
00000d56: DUP2
00000d57: DUP2
00000d58: GT
00000d59: ISZERO
00000d5a: PUSH2 0x0d69
00000d5d: JUMPI
00000d5e: PUSH1 0x00
00000d60: SWAP4
00000d61: POP
00000d62: POP
00000d63: POP
00000d64: POP
00000d65: PUSH2 0x0c36
00000d68: JUMP
00000d69: JUMPDEST
00000d6a: DUP3
00000d6b: ISZERO
00000d6c: PUSH2 0x0d89
00000d6f: JUMPI
00000d70: PUSH2 0x0d84
00000d73: PUSH2 0x0d7c
00000d76: DUP3
00000d77: DUP5
00000d78: PUSH2 0x2f54
00000d7b: JUMP
00000d7c: JUMPDEST
00000d7d: DUP8
00000d7e: SWAP1
00000d7f: DUP6
00000d80: PUSH2 0x19c2
00000d83: JUMP
00000d84: JUMPDEST
00000d85: PUSH2 0x0d8b
00000d88: JUMP
00000d89: JUMPDEST
00000d8a: DUP6
00000d8b: JUMPDEST
00000d8c: SWAP7
00000d8d: SWAP6
00000d8e: POP
00000d8f: POP
00000d90: POP
00000d91: POP
00000d92: POP
00000d93: POP
00000d94: JUMP
00000d95: JUMPDEST
00000d96: PUSH1 0x00
00000d98: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001
00000db9: CHAINID
00000dba: EQ
00000dbb: PUSH2 0x0dc6
00000dbe: JUMPI
00000dbf: PUSH2 0x0965
00000dc2: PUSH2 0x1ef5
00000dc5: JUMP
00000dc6: JUMPDEST
00000dc7: POP
00000dc8: PUSH32 0xdb6130c13f63a6e2088519c4c8e873b529d390a553a47f54d560cc23bfedd250
00000de9: SWAP1
00000dea: JUMP
00000deb: JUMPDEST
00000dec: PUSH2 0x0e19
00000def: CALLER
00000df0: PUSH1 0x00
00000df2: CALLDATALOAD
00000df3: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
00000e14: AND
00000e15: PUSH2 0x19e1
00000e18: JUMP
00000e19: JUMPDEST
00000e1a: PUSH2 0x0e4f
00000e1d: JUMPI
00000e1e: PUSH1 0x40
00000e20: MLOAD
00000e21: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000
00000e42: DUP2
00000e43: MSTORE
00000e44: PUSH1 0x04
00000e46: ADD
00000e47: PUSH1 0x40
00000e49: MLOAD
00000e4a: DUP1
00000e4b: SWAP2
00000e4c: SUB
00000e4d: SWAP1
00000e4e: REVERT
00000e4f: JUMPDEST
00000e50: PUSH1 0x09
00000e52: DUP2
00000e53: SWAP1
00000e54: SSTORE
00000e55: PUSH1 0x40
00000e57: MLOAD
00000e58: DUP2
00000e59: DUP2
00000e5a: MSTORE
00000e5b: PUSH32 0x9872d5eb566b79923d043f1b59aca655ca80a2bb5b6bca4824e515b0e398902f
00000e7c: SWAP1
00000e7d: PUSH1 0x20
00000e7f: ADD
00000e80: PUSH2 0x0d13
00000e83: JUMP
00000e84: JUMPDEST
00000e85: PUSH2 0x0eb2
00000e88: CALLER
00000e89: PUSH1 0x00
00000e8b: CALLDATALOAD
00000e8c: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
00000ead: AND
00000eae: PUSH2 0x19e1
00000eb1: JUMP
00000eb2: JUMPDEST
00000eb3: PUSH2 0x0ee8
00000eb6: JUMPI
00000eb7: PUSH1 0x40
00000eb9: MLOAD
00000eba: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000
00000edb: DUP2
00000edc: MSTORE
00000edd: PUSH1 0x04
00000edf: ADD
00000ee0: PUSH1 0x40
00000ee2: MLOAD
00000ee3: DUP1
00000ee4: SWAP2
00000ee5: SUB
00000ee6: SWAP1
00000ee7: REVERT
00000ee8: JUMPDEST
00000ee9: PUSH2 0x2710
00000eec: DUP2
00000eed: GT
00000eee: ISZERO
00000eef: PUSH2 0x0f24
00000ef2: JUMPI
00000ef3: PUSH1 0x40
00000ef5: MLOAD
00000ef6: PUSH32 0xf08319c600000000000000000000000000000000000000000000000000000000
00000f17: DUP2
00000f18: MSTORE
00000f19: PUSH1 0x04
00000f1b: ADD
00000f1c: PUSH1 0x40
00000f1e: MLOAD
00000f1f: DUP1
00000f20: SWAP2
00000f21: SUB
00000f22: SWAP1
00000f23: REVERT
00000f24: JUMPDEST
00000f25: PUSH1 0x0b
00000f27: DUP2
00000f28: SWAP1
00000f29: SSTORE
00000f2a: PUSH1 0x40
00000f2c: MLOAD
00000f2d: DUP2
00000f2e: DUP2
00000f2f: MSTORE
00000f30: PUSH32 0x12865465a7036a0232cbf9fb63ce880a3ee54f702775fe7abbc3c416e7968cd5
00000f51: SWAP1
00000f52: PUSH1 0x20
00000f54: ADD
00000f55: PUSH2 0x0d13
00000f58: JUMP
00000f59: JUMPDEST
00000f5a: PUSH2 0x0f87
00000f5d: CALLER
00000f5e: PUSH1 0x00
00000f60: CALLDATALOAD
00000f61: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
00000f82: AND
00000f83: PUSH2 0x19e1
00000f86: JUMP
00000f87: JUMPDEST
00000f88: PUSH2 0x0fbd
00000f8b: JUMPI
00000f8c: PUSH1 0x40
00000f8e: MLOAD
00000f8f: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000
00000fb0: DUP2
00000fb1: MSTORE
00000fb2: PUSH1 0x04
00000fb4: ADD
00000fb5: PUSH1 0x40
00000fb7: MLOAD
00000fb8: DUP1
00000fb9: SWAP2
00000fba: SUB
00000fbb: SWAP1
00000fbc: REVERT
00000fbd: JUMPDEST
00000fbe: PUSH4 0xbce02f4e
00000fc3: DUP2
00000fc4: GT
00000fc5: ISZERO
00000fc6: PUSH2 0x0ffb
00000fc9: JUMPI
00000fca: PUSH1 0x40
00000fcc: MLOAD
00000fcd: PUSH32 0x6a43f8d100000000000000000000000000000000000000000000000000000000
00000fee: DUP2
00000fef: MSTORE
00000ff0: PUSH1 0x04
00000ff2: ADD
00000ff3: PUSH1 0x40
00000ff5: MLOAD
00000ff6: DUP1
00000ff7: SWAP2
00000ff8: SUB
00000ff9: SWAP1
00000ffa: REVERT
00000ffb: JUMPDEST
00000ffc: PUSH2 0x1003
00000fff: PUSH2 0x1314
00001002: JUMP
00001003: JUMPDEST
00001004: PUSH1 0x0f
00001006: DUP2
00001007: SWAP1
00001008: SSTORE
00001009: PUSH1 0x40
0000100b: MLOAD
0000100c: DUP2
0000100d: DUP2
0000100e: MSTORE
0000100f: PUSH32 0xad2a1b372bf4c8402696d0ed78880c15faa5b69298ede2615a228810a52dc6c4
00001030: SWAP1
00001031: PUSH1 0x20
00001033: ADD
00001034: PUSH2 0x0d13
00001037: JUMP
00001038: JUMPDEST
00001039: PUSH1 0x00
0000103b: PUSH1 0x08
0000103d: SLOAD
0000103e: PUSH1 0x01
00001040: EQ
00001041: PUSH2 0x10ab
00001044: JUMPI
00001045: PUSH1 0x40
00001047: MLOAD
00001048: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001069: DUP2
0000106a: MSTORE
0000106b: PUSH1 0x20
0000106d: PUSH1 0x04
0000106f: DUP3
00001070: ADD
00001071: MSTORE
00001072: PUSH1 0x0a
00001074: PUSH1 0x24
00001076: DUP3
00001077: ADD
00001078: MSTORE
00001079: PUSH32 0x5245454e5452414e435900000000000000000000000000000000000000000000
0000109a: PUSH1 0x44
0000109c: DUP3
0000109d: ADD
0000109e: MSTORE
0000109f: PUSH1 0x64
000010a1: ADD
000010a2: JUMPDEST
000010a3: PUSH1 0x40
000010a5: MLOAD
000010a6: DUP1
000010a7: SWAP2
000010a8: SUB
000010a9: SWAP1
000010aa: REVERT
000010ab: JUMPDEST
000010ac: PUSH1 0x02
000010ae: PUSH1 0x08
000010b0: SSTORE
000010b1: PUSH1 0x0d
000010b3: SLOAD
000010b4: PUSH1 0xff
000010b6: AND
000010b7: ISZERO
000010b8: PUSH2 0x10ed
000010bb: JUMPI
000010bc: PUSH1 0x40
000010be: MLOAD
000010bf: PUSH32 0x326eab7500000000000000000000000000000000000000000000000000000000
000010e0: DUP2
000010e1: MSTORE
000010e2: PUSH1 0x04
000010e4: ADD
000010e5: PUSH1 0x40
000010e7: MLOAD
000010e8: DUP1
000010e9: SWAP2
000010ea: SUB
000010eb: SWAP1
000010ec: REVERT
000010ed: JUMPDEST
000010ee: PUSH2 0x10f6
000010f1: CALLER
000010f2: PUSH2 0x1f8f
000010f5: JUMP
000010f6: JUMPDEST
000010f7: PUSH2 0x112c
000010fa: JUMPI
000010fb: PUSH1 0x40
000010fd: MLOAD
000010fe: PUSH32 0x184849cf00000000000000000000000000000000000000000000000000000000
0000111f: DUP2
00001120: MSTORE
00001121: PUSH1 0x04
00001123: ADD
00001124: PUSH1 0x40
00001126: MLOAD
00001127: DUP1
00001128: SWAP2
00001129: SUB
0000112a: SWAP1
0000112b: REVERT
0000112c: JUMPDEST
0000112d: PUSH2 0x1134
00001130: PUSH2 0x1314
00001133: JUMP
00001134: JUMPDEST
00001135: PUSH1 0x00
00001137: DUP1
00001138: PUSH1 0x00
0000113a: PUSH2 0x1144
0000113d: DUP8
0000113e: DUP8
0000113f: DUP8
00001140: PUSH2 0x2044
00001143: JUMP
00001144: JUMPDEST
00001145: SWAP2
00001146: SWAP5
00001147: POP
00001148: SWAP3
00001149: POP
0000114a: SWAP1
0000114b: POP
0000114c: PUSH2 0x1157
0000114f: DUP6
00001150: DUP8
00001151: ADD
00001152: DUP8
00001153: PUSH2 0x2b16
00001156: JUMP
00001157: JUMPDEST
00001158: DUP4
00001159: LT
0000115a: ISZERO
0000115b: PUSH2 0x1190
0000115e: JUMPI
0000115f: PUSH1 0x40
00001161: MLOAD
00001162: PUSH32 0x7dd37f7000000000000000000000000000000000000000000000000000000000
00001183: DUP2
00001184: MSTORE
00001185: PUSH1 0x04
00001187: ADD
00001188: PUSH1 0x40
0000118a: MLOAD
0000118b: DUP1
0000118c: SWAP2
0000118d: SUB
0000118e: SWAP1
0000118f: REVERT
00001190: JUMPDEST
00001191: DUP3
00001192: PUSH1 0x00
00001194: SUB
00001195: PUSH2 0x11ca
00001198: JUMPI
00001199: PUSH1 0x40
0000119b: MLOAD
0000119c: PUSH32 0xc440e0aa00000000000000000000000000000000000000000000000000000000
000011bd: DUP2
000011be: MSTORE
000011bf: PUSH1 0x04
000011c1: ADD
000011c2: PUSH1 0x40
000011c4: MLOAD
000011c5: DUP1
000011c6: SWAP2
000011c7: SUB
000011c8: SWAP1
000011c9: REVERT
000011ca: JUMPDEST
000011cb: PUSH2 0x11d4
000011ce: CALLER
000011cf: DUP5
000011d0: PUSH2 0x23bd
000011d3: JUMP
000011d4: JUMPDEST
000011d5: PUSH1 0x40
000011d7: DUP1
000011d8: MLOAD
000011d9: DUP4
000011da: DUP2
000011db: MSTORE
000011dc: PUSH1 0x20
000011de: DUP2
000011df: ADD
000011e0: DUP6
000011e1: SWAP1
000011e2: MSTORE
000011e3: SWAP1
000011e4: DUP2
000011e5: ADD
000011e6: DUP9
000011e7: SWAP1
000011e8: MSTORE
000011e9: PUSH1 0x60
000011eb: DUP2
000011ec: ADD
000011ed: DUP3
000011ee: SWAP1
000011ef: MSTORE
000011f0: CALLER
000011f1: SWAP1
000011f2: DUP2
000011f3: SWAP1
000011f4: PUSH32 0x5f971bd00bf3ffbca8a6d72cdd4fd92cfd4f62636161921d1e5a64f0b64ccb6d
00001215: SWAP1
00001216: PUSH1 0x80
00001218: ADD
00001219: PUSH1 0x40
0000121b: MLOAD
0000121c: DUP1
0000121d: SWAP2
0000121e: SUB
0000121f: SWAP1
00001220: LOG3
00001221: POP
00001222: SWAP1
00001223: SWAP2
00001224: POP
00001225: POP
00001226: JUMPDEST
00001227: PUSH1 0x01
00001229: PUSH1 0x08
0000122b: SSTORE
0000122c: SWAP4
0000122d: SWAP3
0000122e: POP
0000122f: POP
00001230: POP
00001231: JUMP
00001232: JUMPDEST
00001233: PUSH2 0x1260
00001236: CALLER
00001237: PUSH1 0x00
00001239: CALLDATALOAD
0000123a: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
0000125b: AND
0000125c: PUSH2 0x19e1
0000125f: JUMP
00001260: JUMPDEST
00001261: PUSH2 0x1296
00001264: JUMPI
00001265: PUSH1 0x40
00001267: MLOAD
00001268: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000
00001289: DUP2
0000128a: MSTORE
0000128b: PUSH1 0x04
0000128d: ADD
0000128e: PUSH1 0x40
00001290: MLOAD
00001291: DUP1
00001292: SWAP2
00001293: SUB
00001294: SWAP1
00001295: REVERT
00001296: JUMPDEST
00001297: PUSH2 0x2710
0000129a: DUP2
0000129b: GT
0000129c: ISZERO
0000129d: PUSH2 0x12d2
000012a0: JUMPI
000012a1: PUSH1 0x40
000012a3: MLOAD
000012a4: PUSH32 0xf08319c600000000000000000000000000000000000000000000000000000000
000012c5: DUP2
000012c6: MSTORE
000012c7: PUSH1 0x04
000012c9: ADD
000012ca: PUSH1 0x40
000012cc: MLOAD
000012cd: DUP1
000012ce: SWAP2
000012cf: SUB
000012d0: SWAP1
000012d1: REVERT
000012d2: JUMPDEST
000012d3: PUSH1 0x0c
000012d5: DUP2
000012d6: SWAP1
000012d7: SSTORE
000012d8: PUSH1 0x40
000012da: MLOAD
000012db: DUP2
000012dc: DUP2
000012dd: MSTORE
000012de: PUSH32 0x91cc643d187eb250905520d3dae0b1017edd16961d27ab9a4a61fea5e38f717d
000012ff: SWAP1
00001300: PUSH1 0x20
00001302: ADD
00001303: PUSH2 0x0d13
00001306: JUMP
00001307: JUMPDEST
00001308: PUSH1 0x01
0000130a: DUP1
0000130b: SLOAD
0000130c: PUSH2 0x0977
0000130f: SWAP1
00001310: PUSH2 0x2ea1
00001313: JUMP
00001314: JUMPDEST
00001315: PUSH1 0x0d
00001317: SLOAD
00001318: PUSH1 0xff
0000131a: AND
0000131b: ISZERO
0000131c: PUSH2 0x1329
0000131f: JUMPI
00001320: PUSH2 0x1327
00001323: PUSH2 0x2436
00001326: JUMP
00001327: JUMPDEST
00001328: JUMP
00001329: JUMPDEST
0000132a: PUSH1 0x00
0000132c: PUSH2 0x1333
0000132f: PUSH2 0x0a59
00001332: JUMP
00001333: JUMPDEST
00001334: SWAP1
00001335: POP
00001336: PUSH1 0x00
00001338: PUSH1 0x0e
0000133a: SLOAD
0000133b: TIMESTAMP
0000133c: PUSH2 0x1345
0000133f: SWAP2
00001340: SWAP1
00001341: PUSH2 0x2f54
00001344: JUMP
00001345: JUMPDEST
00001346: SWAP1
00001347: POP
00001348: PUSH1 0x00
0000134a: PUSH2 0x1353
0000134d: DUP4
0000134e: DUP4
0000134f: PUSH2 0x1eb8
00001352: JUMP
00001353: JUMPDEST
00001354: SWAP1
00001355: POP
00001356: DUP3
00001357: DUP2
00001358: GT
00001359: ISZERO
0000135a: PUSH2 0x1360
0000135d: JUMPI
0000135e: POP
0000135f: DUP2
00001360: JUMPDEST
00001361: PUSH1 0x00
00001363: DUP2
00001364: GT
00001365: DUP1
00001366: PUSH2 0x136f
00001369: JUMPI
0000136a: POP
0000136b: PUSH1 0x02
0000136d: SLOAD
0000136e: ISZERO
0000136f: JUMPDEST
00001370: ISZERO
00001371: PUSH2 0x13ff
00001374: JUMPI
00001375: TIMESTAMP
00001376: PUSH1 0x0e
00001378: SSTORE
00001379: DUP1
0000137a: ISZERO
0000137b: PUSH2 0x13ff
0000137e: JUMPI
0000137f: PUSH1 0x0a
00001381: SLOAD
00001382: PUSH2 0x13c5
00001385: SWAP1
00001386: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000139b: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
000013bc: DUP2
000013bd: AND
000013be: SWAP2
000013bf: AND
000013c0: DUP4
000013c1: PUSH2 0x2561
000013c4: JUMP
000013c5: JUMPDEST
000013c6: PUSH1 0x40
000013c8: DUP1
000013c9: MLOAD
000013ca: DUP3
000013cb: DUP2
000013cc: MSTORE
000013cd: PUSH1 0x20
000013cf: DUP2
000013d0: ADD
000013d1: DUP5
000013d2: SWAP1
000013d3: MSTORE
000013d4: PUSH32 0xc5bd0ea7a1520a37af6ec1d295e0b4f9820e066c078ae82f4abcc49286ab1028
000013f5: SWAP2
000013f6: ADD
000013f7: PUSH1 0x40
000013f9: MLOAD
000013fa: DUP1
000013fb: SWAP2
000013fc: SUB
000013fd: SWAP1
000013fe: LOG1
000013ff: JUMPDEST
00001400: POP
00001401: POP
00001402: POP
00001403: JUMP
00001404: JUMPDEST
00001405: PUSH2 0x1432
00001408: CALLER
00001409: PUSH1 0x00
0000140b: CALLDATALOAD
0000140c: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
0000142d: AND
0000142e: PUSH2 0x19e1
00001431: JUMP
00001432: JUMPDEST
00001433: PUSH2 0x1468
00001436: JUMPI
00001437: PUSH1 0x40
00001439: MLOAD
0000143a: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000
0000145b: DUP2
0000145c: MSTORE
0000145d: PUSH1 0x04
0000145f: ADD
00001460: PUSH1 0x40
00001462: MLOAD
00001463: DUP1
00001464: SWAP2
00001465: SUB
00001466: SWAP1
00001467: REVERT
00001468: JUMPDEST
00001469: PUSH1 0x0a
0000146b: DUP1
0000146c: SLOAD
0000146d: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000
0000148e: AND
0000148f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000014a4: DUP4
000014a5: AND
000014a6: SWAP1
000014a7: DUP2
000014a8: OR
000014a9: SWAP1
000014aa: SWAP2
000014ab: SSTORE
000014ac: PUSH1 0x40
000014ae: MLOAD
000014af: SWAP1
000014b0: DUP2
000014b1: MSTORE
000014b2: PUSH32 0xfa91b2d5be9caed9cc205220f1d5f3c5fee252dea3faf893928e0e639c0ccc70
000014d3: SWAP1
000014d4: PUSH1 0x20
000014d6: ADD
000014d7: PUSH2 0x0d13
000014da: JUMP
000014db: JUMPDEST
000014dc: PUSH1 0x02
000014de: SLOAD
000014df: PUSH1 0x00
000014e1: SWAP1
000014e2: DUP1
000014e3: ISZERO
000014e4: PUSH2 0x0a1c
000014e7: JUMPI
000014e8: PUSH2 0x0a17
000014eb: DUP2
000014ec: PUSH2 0x14f3
000014ef: PUSH2 0x0958
000014f2: JUMP
000014f3: JUMPDEST
000014f4: DUP6
000014f5: SWAP2
000014f6: SWAP1
000014f7: PUSH2 0x19c2
000014fa: JUMP
000014fb: JUMPDEST
000014fc: PUSH2 0x1529
000014ff: CALLER
00001500: PUSH1 0x00
00001502: CALLDATALOAD
00001503: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
00001524: AND
00001525: PUSH2 0x19e1
00001528: JUMP
00001529: JUMPDEST
0000152a: PUSH2 0x155f
0000152d: JUMPI
0000152e: PUSH1 0x40
00001530: MLOAD
00001531: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000
00001552: DUP2
00001553: MSTORE
00001554: PUSH1 0x04
00001556: ADD
00001557: PUSH1 0x40
00001559: MLOAD
0000155a: DUP1
0000155b: SWAP2
0000155c: SUB
0000155d: SWAP1
0000155e: REVERT
0000155f: JUMPDEST
00001560: PUSH1 0x0a
00001562: SLOAD
00001563: PUSH2 0x15a6
00001566: SWAP1
00001567: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000157c: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
0000159d: DUP2
0000159e: AND
0000159f: SWAP2
000015a0: AND
000015a1: DUP4
000015a2: PUSH2 0x2561
000015a5: JUMP
000015a6: JUMPDEST
000015a7: PUSH1 0x40
000015a9: MLOAD
000015aa: DUP2
000015ab: DUP2
000015ac: MSTORE
000015ad: PUSH32 0xfba1cbbf893e6a61412440b48fca1c80a5bf24d2f7deb6d5544717745077a360
000015ce: SWAP1
000015cf: PUSH1 0x20
000015d1: ADD
000015d2: PUSH2 0x0d13
000015d5: JUMP
000015d6: JUMPDEST
000015d7: PUSH1 0x40
000015d9: MLOAD
000015da: PUSH32 0xc31c949300000000000000000000000000000000000000000000000000000000
000015fb: DUP2
000015fc: MSTORE
000015fd: PUSH1 0x04
000015ff: ADD
00001600: PUSH1 0x40
00001602: MLOAD
00001603: DUP1
00001604: SWAP2
00001605: SUB
00001606: SWAP1
00001607: REVERT
00001608: JUMPDEST
00001609: PUSH1 0x00
0000160b: PUSH1 0x08
0000160d: SLOAD
0000160e: PUSH1 0x01
00001610: EQ
00001611: PUSH2 0x1676
00001614: JUMPI
00001615: PUSH1 0x40
00001617: MLOAD
00001618: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001639: DUP2
0000163a: MSTORE
0000163b: PUSH1 0x20
0000163d: PUSH1 0x04
0000163f: DUP3
00001640: ADD
00001641: MSTORE
00001642: PUSH1 0x0a
00001644: PUSH1 0x24
00001646: DUP3
00001647: ADD
00001648: MSTORE
00001649: PUSH32 0x5245454e5452414e435900000000000000000000000000000000000000000000
0000166a: PUSH1 0x44
0000166c: DUP3
0000166d: ADD
0000166e: MSTORE
0000166f: PUSH1 0x64
00001671: ADD
00001672: PUSH2 0x10a2
00001675: JUMP
00001676: JUMPDEST
00001677: PUSH1 0x02
00001679: PUSH1 0x08
0000167b: SSTORE
0000167c: PUSH2 0x1683
0000167f: PUSH2 0x1314
00001682: JUMP
00001683: JUMPDEST
00001684: PUSH1 0x0d
00001686: SLOAD
00001687: PUSH1 0xff
00001689: AND
0000168a: ISZERO
0000168b: PUSH2 0x169e
0000168e: JUMPI
0000168f: PUSH2 0x1697
00001692: DUP5
00001693: PUSH2 0x262e
00001696: JUMP
00001697: JUMPDEST
00001698: SWAP1
00001699: POP
0000169a: PUSH2 0x1226
0000169d: JUMP
0000169e: JUMPDEST
0000169f: PUSH1 0x00
000016a1: DUP1
000016a2: PUSH2 0x16ac
000016a5: DUP7
000016a6: DUP7
000016a7: DUP7
000016a8: PUSH2 0x2736
000016ab: JUMP
000016ac: JUMPDEST
000016ad: SWAP2
000016ae: POP
000016af: SWAP2
000016b0: POP
000016b1: DUP2
000016b2: PUSH1 0x00
000016b4: SUB
000016b5: PUSH2 0x16ea
000016b8: JUMPI
000016b9: PUSH1 0x40
000016bb: MLOAD
000016bc: PUSH32 0xc440e0aa00000000000000000000000000000000000000000000000000000000
000016dd: DUP2
000016de: MSTORE
000016df: PUSH1 0x04
000016e1: ADD
000016e2: PUSH1 0x40
000016e4: MLOAD
000016e5: DUP1
000016e6: SWAP2
000016e7: SUB
000016e8: SWAP1
000016e9: REVERT
000016ea: JUMPDEST
000016eb: PUSH2 0x16f4
000016ee: CALLER
000016ef: DUP8
000016f0: PUSH2 0x2763
000016f3: JUMP
000016f4: JUMPDEST
000016f5: PUSH1 0x00
000016f7: DUP1
000016f8: PUSH2 0x1703
000016fb: DUP4
000016fc: PUSH1 0x0c
000016fe: SLOAD
000016ff: PUSH2 0x27f1
00001702: JUMP
00001703: JUMPDEST
00001704: PUSH1 0x0a
00001706: SLOAD
00001707: SWAP2
00001708: SWAP4
00001709: POP
0000170a: SWAP2
0000170b: POP
0000170c: PUSH2 0x174f
0000170f: SWAP1
00001710: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001725: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
00001746: DUP2
00001747: AND
00001748: SWAP2
00001749: AND
0000174a: DUP4
0000174b: PUSH2 0x2561
0000174e: JUMP
0000174f: JUMPDEST
00001750: PUSH2 0x1790
00001753: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001768: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
00001789: AND
0000178a: CALLER
0000178b: DUP5
0000178c: PUSH2 0x2561
0000178f: JUMP
00001790: JUMPDEST
00001791: PUSH1 0x40
00001793: DUP1
00001794: MLOAD
00001795: DUP6
00001796: DUP2
00001797: MSTORE
00001798: PUSH1 0x20
0000179a: DUP2
0000179b: ADD
0000179c: DUP11
0000179d: SWAP1
0000179e: MSTORE
0000179f: SWAP1
000017a0: DUP2
000017a1: ADD
000017a2: DUP4
000017a3: SWAP1
000017a4: MSTORE
000017a5: PUSH1 0x60
000017a7: DUP2
000017a8: ADD
000017a9: DUP3
000017aa: SWAP1
000017ab: MSTORE
000017ac: CALLER
000017ad: SWAP1
000017ae: DUP2
000017af: SWAP1
000017b0: PUSH32 0x8caf04742286d017f9ac3924388e188c73e6e5094311c5e59a61a7ef86dda8bf
000017d1: SWAP1
000017d2: PUSH1 0x80
000017d4: ADD
000017d5: PUSH1 0x40
000017d7: MLOAD
000017d8: DUP1
000017d9: SWAP2
000017da: SUB
000017db: SWAP1
000017dc: LOG3
000017dd: POP
000017de: PUSH1 0x01
000017e0: PUSH1 0x08
000017e2: SSTORE
000017e3: SWAP7
000017e4: SWAP6
000017e5: POP
000017e6: POP
000017e7: POP
000017e8: POP
000017e9: POP
000017ea: POP
000017eb: JUMP
000017ec: JUMPDEST
000017ed: PUSH1 0x02
000017ef: SLOAD
000017f0: PUSH1 0x00
000017f2: SWAP1
000017f3: DUP1
000017f4: ISZERO
000017f5: PUSH2 0x0a1c
000017f8: JUMPI
000017f9: PUSH1 0x40
000017fb: MLOAD
000017fc: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000
0000181d: DUP2
0000181e: MSTORE
0000181f: ADDRESS
00001820: PUSH1 0x04
00001822: DUP3
00001823: ADD
00001824: MSTORE
00001825: PUSH2 0x0a17
00001828: SWAP1
00001829: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
0000184a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000185f: AND
00001860: SWAP1
00001861: PUSH4 0x70a08231
00001866: SWAP1
00001867: PUSH1 0x24
00001869: ADD
0000186a: PUSH1 0x20
0000186c: PUSH1 0x40
0000186e: MLOAD
0000186f: DUP1
00001870: DUP4
00001871: SUB
00001872: DUP2
00001873: DUP7
00001874: GAS
00001875: STATICCALL
00001876: ISZERO
00001877: DUP1
00001878: ISZERO
00001879: PUSH2 0x1886
0000187c: JUMPI
0000187d: RETURNDATASIZE
0000187e: PUSH1 0x00
00001880: DUP1
00001881: RETURNDATACOPY
00001882: RETURNDATASIZE
00001883: PUSH1 0x00
00001885: REVERT
00001886: JUMPDEST
00001887: POP
00001888: POP
00001889: POP
0000188a: POP
0000188b: PUSH1 0x40
0000188d: MLOAD
0000188e: RETURNDATASIZE
0000188f: PUSH1 0x1f
00001891: NOT
00001892: PUSH1 0x1f
00001894: DUP3
00001895: ADD
00001896: AND
00001897: DUP3
00001898: ADD
00001899: DUP1
0000189a: PUSH1 0x40
0000189c: MSTORE
0000189d: POP
0000189e: DUP2
0000189f: ADD
000018a0: SWAP1
000018a1: PUSH2 0x0a0f
000018a4: SWAP2
000018a5: SWAP1
000018a6: PUSH2 0x2ef4
000018a9: JUMP
000018aa: JUMPDEST
000018ab: PUSH1 0x60
000018ad: PUSH2 0x18da
000018b0: CALLER
000018b1: PUSH1 0x00
000018b3: CALLDATALOAD
000018b4: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
000018d5: AND
000018d6: PUSH2 0x19e1
000018d9: JUMP
000018da: JUMPDEST
000018db: PUSH2 0x1910
000018de: JUMPI
000018df: PUSH1 0x40
000018e1: MLOAD
000018e2: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000
00001903: DUP2
00001904: MSTORE
00001905: PUSH1 0x04
00001907: ADD
00001908: PUSH1 0x40
0000190a: MLOAD
0000190b: DUP1
0000190c: SWAP2
0000190d: SUB
0000190e: SWAP1
0000190f: REVERT
00001910: JUMPDEST
00001911: PUSH1 0x00
00001913: DUP1
00001914: DUP6
00001915: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000192a: AND
0000192b: DUP6
0000192c: DUP6
0000192d: PUSH1 0x40
0000192f: MLOAD
00001930: PUSH2 0x1939
00001933: SWAP2
00001934: SWAP1
00001935: PUSH2 0x2f6b
00001938: JUMP
00001939: JUMPDEST
0000193a: PUSH1 0x00
0000193c: PUSH1 0x40
0000193e: MLOAD
0000193f: DUP1
00001940: DUP4
00001941: SUB
00001942: DUP2
00001943: DUP6
00001944: DUP8
00001945: GAS
00001946: CALL
00001947: SWAP3
00001948: POP
00001949: POP
0000194a: POP
0000194b: RETURNDATASIZE
0000194c: DUP1
0000194d: PUSH1 0x00
0000194f: DUP2
00001950: EQ
00001951: PUSH2 0x1976
00001954: JUMPI
00001955: PUSH1 0x40
00001957: MLOAD
00001958: SWAP2
00001959: POP
0000195a: PUSH1 0x1f
0000195c: NOT
0000195d: PUSH1 0x3f
0000195f: RETURNDATASIZE
00001960: ADD
00001961: AND
00001962: DUP3
00001963: ADD
00001964: PUSH1 0x40
00001966: MSTORE
00001967: RETURNDATASIZE
00001968: DUP3
00001969: MSTORE
0000196a: RETURNDATASIZE
0000196b: PUSH1 0x00
0000196d: PUSH1 0x20
0000196f: DUP5
00001970: ADD
00001971: RETURNDATACOPY
00001972: PUSH2 0x197b
00001975: JUMP
00001976: JUMPDEST
00001977: PUSH1 0x60
00001979: SWAP2
0000197a: POP
0000197b: JUMPDEST
0000197c: POP
0000197d: SWAP2
0000197e: POP
0000197f: SWAP2
00001980: POP
00001981: DUP2
00001982: PUSH2 0x19b9
00001985: JUMPI
00001986: DUP1
00001987: PUSH1 0x40
00001989: MLOAD
0000198a: PUSH32 0xa5fa8d2b00000000000000000000000000000000000000000000000000000000
000019ab: DUP2
000019ac: MSTORE
000019ad: PUSH1 0x04
000019af: ADD
000019b0: PUSH2 0x10a2
000019b3: SWAP2
000019b4: SWAP1
000019b5: PUSH2 0x2b03
000019b8: JUMP
000019b9: JUMPDEST
000019ba: SWAP6
000019bb: SWAP5
000019bc: POP
000019bd: POP
000019be: POP
000019bf: POP
000019c0: POP
000019c1: JUMP
000019c2: JUMPDEST
000019c3: DUP3
000019c4: DUP3
000019c5: MUL
000019c6: DUP2
000019c7: ISZERO
000019c8: ISZERO
000019c9: DUP5
000019ca: ISZERO
000019cb: DUP6
000019cc: DUP4
000019cd: DIV
000019ce: DUP6
000019cf: EQ
000019d0: OR
000019d1: AND
000019d2: PUSH2 0x19da
000019d5: JUMPI
000019d6: PUSH1 0x00
000019d8: DUP1
000019d9: REVERT
000019da: JUMPDEST
000019db: DIV
000019dc: SWAP3
000019dd: SWAP2
000019de: POP
000019df: POP
000019e0: JUMP
000019e1: JUMPDEST
000019e2: PUSH1 0x06
000019e4: SLOAD
000019e5: PUSH1 0x07
000019e7: SLOAD
000019e8: PUSH1 0x00
000019ea: SWAP2
000019eb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001a00: AND
00001a01: SWAP1
00001a02: DUP3
00001a03: SWAP1
00001a04: PUSH1 0x60
00001a06: SHL
00001a07: PUSH32 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000
00001a28: AND
00001a29: ISZERO
00001a2a: PUSH2 0x1a4b
00001a2d: JUMPI
00001a2e: PUSH1 0x07
00001a30: SLOAD
00001a31: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001a46: AND
00001a47: PUSH2 0x1a4d
00001a4a: JUMP
00001a4b: JUMPDEST
00001a4c: ADDRESS
00001a4d: JUMPDEST
00001a4e: PUSH1 0x40
00001a50: MLOAD
00001a51: PUSH32 0xb700961300000000000000000000000000000000000000000000000000000000
00001a72: DUP2
00001a73: MSTORE
00001a74: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001a89: DUP8
00001a8a: DUP2
00001a8b: AND
00001a8c: PUSH1 0x04
00001a8e: DUP4
00001a8f: ADD
00001a90: MSTORE
00001a91: DUP1
00001a92: DUP4
00001a93: AND
00001a94: PUSH1 0x24
00001a96: DUP4
00001a97: ADD
00001a98: MSTORE
00001a99: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
00001aba: DUP8
00001abb: AND
00001abc: PUSH1 0x44
00001abe: DUP4
00001abf: ADD
00001ac0: MSTORE
00001ac1: SWAP2
00001ac2: SWAP3
00001ac3: POP
00001ac4: SWAP1
00001ac5: DUP4
00001ac6: AND
00001ac7: SWAP1
00001ac8: PUSH4 0xb7009613
00001acd: SWAP1
00001ace: PUSH1 0x64
00001ad0: ADD
00001ad1: PUSH1 0x20
00001ad3: PUSH1 0x40
00001ad5: MLOAD
00001ad6: DUP1
00001ad7: DUP4
00001ad8: SUB
00001ad9: DUP2
00001ada: DUP7
00001adb: GAS
00001adc: STATICCALL
00001add: ISZERO
00001ade: DUP1
00001adf: ISZERO
00001ae0: PUSH2 0x1aed
00001ae3: JUMPI
00001ae4: RETURNDATASIZE
00001ae5: PUSH1 0x00
00001ae7: DUP1
00001ae8: RETURNDATACOPY
00001ae9: RETURNDATASIZE
00001aea: PUSH1 0x00
00001aec: REVERT
00001aed: JUMPDEST
00001aee: POP
00001aef: POP
00001af0: POP
00001af1: POP
00001af2: PUSH1 0x40
00001af4: MLOAD
00001af5: RETURNDATASIZE
00001af6: PUSH1 0x1f
00001af8: NOT
00001af9: PUSH1 0x1f
00001afb: DUP3
00001afc: ADD
00001afd: AND
00001afe: DUP3
00001aff: ADD
00001b00: DUP1
00001b01: PUSH1 0x40
00001b03: MSTORE
00001b04: POP
00001b05: DUP2
00001b06: ADD
00001b07: SWAP1
00001b08: PUSH2 0x1b11
00001b0b: SWAP2
00001b0c: SWAP1
00001b0d: PUSH2 0x2f87
00001b10: JUMP
00001b11: JUMPDEST
00001b12: DUP1
00001b13: PUSH2 0x19b9
00001b16: JUMPI
00001b17: POP
00001b18: DUP2
00001b19: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001b2e: AND
00001b2f: PUSH4 0x8da5cb5b
00001b34: PUSH1 0x40
00001b36: MLOAD
00001b37: DUP2
00001b38: PUSH4 0xffffffff
00001b3d: AND
00001b3e: PUSH1 0xe0
00001b40: SHL
00001b41: DUP2
00001b42: MSTORE
00001b43: PUSH1 0x04
00001b45: ADD
00001b46: PUSH1 0x20
00001b48: PUSH1 0x40
00001b4a: MLOAD
00001b4b: DUP1
00001b4c: DUP4
00001b4d: SUB
00001b4e: DUP2
00001b4f: DUP7
00001b50: GAS
00001b51: STATICCALL
00001b52: ISZERO
00001b53: DUP1
00001b54: ISZERO
00001b55: PUSH2 0x1b62
00001b58: JUMPI
00001b59: RETURNDATASIZE
00001b5a: PUSH1 0x00
00001b5c: DUP1
00001b5d: RETURNDATACOPY
00001b5e: RETURNDATASIZE
00001b5f: PUSH1 0x00
00001b61: REVERT
00001b62: JUMPDEST
00001b63: POP
00001b64: POP
00001b65: POP
00001b66: POP
00001b67: PUSH1 0x40
00001b69: MLOAD
00001b6a: RETURNDATASIZE
00001b6b: PUSH1 0x1f
00001b6d: NOT
00001b6e: PUSH1 0x1f
00001b70: DUP3
00001b71: ADD
00001b72: AND
00001b73: DUP3
00001b74: ADD
00001b75: DUP1
00001b76: PUSH1 0x40
00001b78: MSTORE
00001b79: POP
00001b7a: DUP2
00001b7b: ADD
00001b7c: SWAP1
00001b7d: PUSH2 0x1b86
00001b80: SWAP2
00001b81: SWAP1
00001b82: PUSH2 0x2fa9
00001b85: JUMP
00001b86: JUMPDEST
00001b87: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001b9c: AND
00001b9d: DUP6
00001b9e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001bb3: AND
00001bb4: EQ
00001bb5: SWAP6
00001bb6: SWAP5
00001bb7: POP
00001bb8: POP
00001bb9: POP
00001bba: POP
00001bbb: POP
00001bbc: JUMP
00001bbd: JUMPDEST
00001bbe: PUSH1 0x00
00001bc0: DUP1
00001bc1: DUP1
00001bc2: PUSH2 0x1bcf
00001bc5: PUSH1 0x34
00001bc7: PUSH1 0x20
00001bc9: DUP7
00001bca: DUP9
00001bcb: PUSH2 0x2fc6
00001bce: JUMP
00001bcf: JUMPDEST
00001bd0: PUSH2 0x1bd8
00001bd3: SWAP2
00001bd4: PUSH2 0x2ff0
00001bd7: JUMP
00001bd8: JUMPDEST
00001bd9: PUSH1 0x40
00001bdb: MLOAD
00001bdc: PUSH32 0x6ab3905700000000000000000000000000000000000000000000000000000000
00001bfd: DUP2
00001bfe: MSTORE
00001bff: PUSH1 0x60
00001c01: SWAP2
00001c02: SWAP1
00001c03: SWAP2
00001c04: SHR
00001c05: PUSH1 0x04
00001c07: DUP3
00001c08: ADD
00001c09: DUP2
00001c0a: SWAP1
00001c0b: MSTORE
00001c0c: SWAP2
00001c0d: POP
00001c0e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001c23: PUSH32 0x00000000000000000000000094106ca9c7e567109a1d39413052887d1f412183
00001c44: AND
00001c45: SWAP1
00001c46: PUSH4 0x6ab39057
00001c4b: SWAP1
00001c4c: PUSH1 0x24
00001c4e: ADD
00001c4f: PUSH1 0x20
00001c51: PUSH1 0x40
00001c53: MLOAD
00001c54: DUP1
00001c55: DUP4
00001c56: SUB
00001c57: DUP2
00001c58: DUP7
00001c59: GAS
00001c5a: STATICCALL
00001c5b: ISZERO
00001c5c: DUP1
00001c5d: ISZERO
00001c5e: PUSH2 0x1c6b
00001c61: JUMPI
00001c62: RETURNDATASIZE
00001c63: PUSH1 0x00
00001c65: DUP1
00001c66: RETURNDATACOPY
00001c67: RETURNDATASIZE
00001c68: PUSH1 0x00
00001c6a: REVERT
00001c6b: JUMPDEST
00001c6c: POP
00001c6d: POP
00001c6e: POP
00001c6f: POP
00001c70: PUSH1 0x40
00001c72: MLOAD
00001c73: RETURNDATASIZE
00001c74: PUSH1 0x1f
00001c76: NOT
00001c77: PUSH1 0x1f
00001c79: DUP3
00001c7a: ADD
00001c7b: AND
00001c7c: DUP3
00001c7d: ADD
00001c7e: DUP1
00001c7f: PUSH1 0x40
00001c81: MSTORE
00001c82: POP
00001c83: DUP2
00001c84: ADD
00001c85: SWAP1
00001c86: PUSH2 0x1c8f
00001c89: SWAP2
00001c8a: SWAP1
00001c8b: PUSH2 0x2f87
00001c8e: JUMP
00001c8f: JUMPDEST
00001c90: PUSH2 0x1cc5
00001c93: JUMPI
00001c94: PUSH1 0x40
00001c96: MLOAD
00001c97: PUSH32 0xc94f7a9a00000000000000000000000000000000000000000000000000000000
00001cb8: DUP2
00001cb9: MSTORE
00001cba: PUSH1 0x04
00001cbc: ADD
00001cbd: PUSH1 0x40
00001cbf: MLOAD
00001cc0: DUP1
00001cc1: SWAP2
00001cc2: SUB
00001cc3: SWAP1
00001cc4: REVERT
00001cc5: JUMPDEST
00001cc6: PUSH1 0x00
00001cc8: PUSH2 0x1cd3
00001ccb: DUP6
00001ccc: DUP8
00001ccd: ADD
00001cce: DUP8
00001ccf: PUSH2 0x2b16
00001cd2: JUMP
00001cd3: JUMPDEST
00001cd4: SWAP1
00001cd5: POP
00001cd6: PUSH1 0x00
00001cd8: PUSH2 0x1cec
00001cdb: PUSH1 0x10
00001cdd: SLOAD
00001cde: DUP10
00001cdf: PUSH2 0x2845
00001ce2: SWAP1
00001ce3: SWAP2
00001ce4: SWAP1
00001ce5: PUSH4 0xffffffff
00001cea: AND
00001ceb: JUMP
00001cec: JUMPDEST
00001ced: SWAP1
00001cee: POP
00001cef: DUP8
00001cf0: DUP3
00001cf1: GT
00001cf2: DUP1
00001cf3: PUSH2 0x1d04
00001cf6: JUMPI
00001cf7: POP
00001cf8: DUP1
00001cf9: PUSH2 0x1d02
00001cfc: DUP4
00001cfd: DUP11
00001cfe: PUSH2 0x2f54
00001d01: JUMP
00001d02: JUMPDEST
00001d03: GT
00001d04: JUMPDEST
00001d05: ISZERO
00001d06: PUSH2 0x1d4c
00001d09: JUMPI
00001d0a: PUSH1 0x40
00001d0c: MLOAD
00001d0d: PUSH32 0x07a7129e00000000000000000000000000000000000000000000000000000000
00001d2e: DUP2
00001d2f: MSTORE
00001d30: PUSH1 0x04
00001d32: DUP2
00001d33: ADD
00001d34: DUP4
00001d35: SWAP1
00001d36: MSTORE
00001d37: PUSH1 0x24
00001d39: DUP2
00001d3a: ADD
00001d3b: DUP10
00001d3c: SWAP1
00001d3d: MSTORE
00001d3e: PUSH1 0x44
00001d40: DUP2
00001d41: ADD
00001d42: DUP3
00001d43: SWAP1
00001d44: MSTORE
00001d45: PUSH1 0x64
00001d47: ADD
00001d48: PUSH2 0x10a2
00001d4b: JUMP
00001d4c: JUMPDEST
00001d4d: PUSH2 0x1d8e
00001d50: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001d65: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00001d86: AND
00001d87: DUP5
00001d88: PUSH1 0x00
00001d8a: PUSH2 0x285a
00001d8d: JUMP
00001d8e: JUMPDEST
00001d8f: PUSH2 0x1dcf
00001d92: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001da7: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00001dc8: AND
00001dc9: DUP5
00001dca: DUP5
00001dcb: PUSH2 0x285a
00001dce: JUMP
00001dcf: JUMPDEST
00001dd0: PUSH1 0x00
00001dd2: DUP4
00001dd3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001de8: AND
00001de9: PUSH4 0xda145263
00001dee: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00001e0f: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
00001e30: ADDRESS
00001e31: DUP8
00001e32: DUP14
00001e33: DUP14
00001e34: PUSH1 0x34
00001e36: SWAP1
00001e37: DUP1
00001e38: SWAP3
00001e39: PUSH2 0x1e44
00001e3c: SWAP4
00001e3d: SWAP3
00001e3e: SWAP2
00001e3f: SWAP1
00001e40: PUSH2 0x2fc6
00001e43: JUMP
00001e44: JUMPDEST
00001e45: PUSH1 0x40
00001e47: MLOAD
00001e48: DUP8
00001e49: PUSH4 0xffffffff
00001e4e: AND
00001e4f: PUSH1 0xe0
00001e51: SHL
00001e52: DUP2
00001e53: MSTORE
00001e54: PUSH1 0x04
00001e56: ADD
00001e57: PUSH2 0x1e65
00001e5a: SWAP7
00001e5b: SWAP6
00001e5c: SWAP5
00001e5d: SWAP4
00001e5e: SWAP3
00001e5f: SWAP2
00001e60: SWAP1
00001e61: PUSH2 0x3038
00001e64: JUMP
00001e65: JUMPDEST
00001e66: PUSH1 0x20
00001e68: PUSH1 0x40
00001e6a: MLOAD
00001e6b: DUP1
00001e6c: DUP4
00001e6d: SUB
00001e6e: DUP2
00001e6f: PUSH1 0x00
00001e71: DUP8
00001e72: GAS
00001e73: CALL
00001e74: ISZERO
00001e75: DUP1
00001e76: ISZERO
00001e77: PUSH2 0x1e84
00001e7a: JUMPI
00001e7b: RETURNDATASIZE
00001e7c: PUSH1 0x00
00001e7e: DUP1
00001e7f: RETURNDATACOPY
00001e80: RETURNDATASIZE
00001e81: PUSH1 0x00
00001e83: REVERT
00001e84: JUMPDEST
00001e85: POP
00001e86: POP
00001e87: POP
00001e88: POP
00001e89: PUSH1 0x40
00001e8b: MLOAD
00001e8c: RETURNDATASIZE
00001e8d: PUSH1 0x1f
00001e8f: NOT
00001e90: PUSH1 0x1f
00001e92: DUP3
00001e93: ADD
00001e94: AND
00001e95: DUP3
00001e96: ADD
00001e97: DUP1
00001e98: PUSH1 0x40
00001e9a: MSTORE
00001e9b: POP
00001e9c: DUP2
00001e9d: ADD
00001e9e: SWAP1
00001e9f: PUSH2 0x1ea8
00001ea2: SWAP2
00001ea3: SWAP1
00001ea4: PUSH2 0x2ef4
00001ea7: JUMP
00001ea8: JUMPDEST
00001ea9: SWAP3
00001eaa: SWAP10
00001eab: SWAP3
00001eac: SWAP9
00001ead: POP
00001eae: SWAP2
00001eaf: SWAP7
00001eb0: POP
00001eb1: POP
00001eb2: POP
00001eb3: POP
00001eb4: POP
00001eb5: POP
00001eb6: POP
00001eb7: JUMP
00001eb8: JUMPDEST
00001eb9: PUSH1 0x00
00001ebb: DUP3
00001ebc: ISZERO
00001ebd: DUP1
00001ebe: PUSH2 0x1ec7
00001ec1: JUMPI
00001ec2: POP
00001ec3: PUSH1 0x0f
00001ec5: SLOAD
00001ec6: ISZERO
00001ec7: JUMPDEST
00001ec8: DUP1
00001ec9: PUSH2 0x1ed0
00001ecc: JUMPI
00001ecd: POP
00001ece: DUP2
00001ecf: ISZERO
00001ed0: JUMPDEST
00001ed1: ISZERO
00001ed2: PUSH2 0x1edd
00001ed5: JUMPI
00001ed6: POP
00001ed7: PUSH1 0x00
00001ed9: PUSH2 0x0c36
00001edc: JUMP
00001edd: JUMPDEST
00001ede: PUSH2 0x0a1e
00001ee1: PUSH1 0x0f
00001ee3: SLOAD
00001ee4: DUP4
00001ee5: PUSH2 0x1eee
00001ee8: SWAP2
00001ee9: SWAP1
00001eea: PUSH2 0x30c0
00001eed: JUMP
00001eee: JUMPDEST
00001eef: DUP5
00001ef0: SWAP1
00001ef1: PUSH2 0x2845
00001ef4: JUMP
00001ef5: JUMPDEST
00001ef6: PUSH1 0x00
00001ef8: PUSH32 0x8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f
00001f19: PUSH1 0x00
00001f1b: PUSH1 0x40
00001f1d: MLOAD
00001f1e: PUSH2 0x1f27
00001f21: SWAP2
00001f22: SWAP1
00001f23: PUSH2 0x30fd
00001f26: JUMP
00001f27: JUMPDEST
00001f28: PUSH1 0x40
00001f2a: DUP1
00001f2b: MLOAD
00001f2c: SWAP2
00001f2d: DUP3
00001f2e: SWAP1
00001f2f: SUB
00001f30: DUP3
00001f31: KECCAK256
00001f32: PUSH1 0x20
00001f34: DUP4
00001f35: ADD
00001f36: SWAP4
00001f37: SWAP1
00001f38: SWAP4
00001f39: MSTORE
00001f3a: DUP2
00001f3b: ADD
00001f3c: SWAP2
00001f3d: SWAP1
00001f3e: SWAP2
00001f3f: MSTORE
00001f40: PUSH32 0xc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc6
00001f61: PUSH1 0x60
00001f63: DUP3
00001f64: ADD
00001f65: MSTORE
00001f66: CHAINID
00001f67: PUSH1 0x80
00001f69: DUP3
00001f6a: ADD
00001f6b: MSTORE
00001f6c: ADDRESS
00001f6d: PUSH1 0xa0
00001f6f: DUP3
00001f70: ADD
00001f71: MSTORE
00001f72: PUSH1 0xc0
00001f74: ADD
00001f75: PUSH1 0x40
00001f77: MLOAD
00001f78: PUSH1 0x20
00001f7a: DUP2
00001f7b: DUP4
00001f7c: SUB
00001f7d: SUB
00001f7e: DUP2
00001f7f: MSTORE
00001f80: SWAP1
00001f81: PUSH1 0x40
00001f83: MSTORE
00001f84: DUP1
00001f85: MLOAD
00001f86: SWAP1
00001f87: PUSH1 0x20
00001f89: ADD
00001f8a: KECCAK256
00001f8b: SWAP1
00001f8c: POP
00001f8d: SWAP1
00001f8e: JUMP
00001f8f: JUMPDEST
00001f90: PUSH1 0x40
00001f92: MLOAD
00001f93: PUSH32 0xea3fff6800000000000000000000000000000000000000000000000000000000
00001fb4: DUP2
00001fb5: MSTORE
00001fb6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001fcb: DUP3
00001fcc: DUP2
00001fcd: AND
00001fce: PUSH1 0x04
00001fd0: DUP4
00001fd1: ADD
00001fd2: MSTORE
00001fd3: PUSH1 0x00
00001fd5: SWAP2
00001fd6: PUSH32 0x00000000000000000000000094106ca9c7e567109a1d39413052887d1f412183
00001ff7: SWAP1
00001ff8: SWAP2
00001ff9: AND
00001ffa: SWAP1
00001ffb: PUSH4 0xea3fff68
00002000: SWAP1
00002001: PUSH1 0x24
00002003: ADD
00002004: PUSH1 0x20
00002006: PUSH1 0x40
00002008: MLOAD
00002009: DUP1
0000200a: DUP4
0000200b: SUB
0000200c: DUP2
0000200d: DUP7
0000200e: GAS
0000200f: STATICCALL
00002010: ISZERO
00002011: DUP1
00002012: ISZERO
00002013: PUSH2 0x2020
00002016: JUMPI
00002017: RETURNDATASIZE
00002018: PUSH1 0x00
0000201a: DUP1
0000201b: RETURNDATACOPY
0000201c: RETURNDATASIZE
0000201d: PUSH1 0x00
0000201f: REVERT
00002020: JUMPDEST
00002021: POP
00002022: POP
00002023: POP
00002024: POP
00002025: PUSH1 0x40
00002027: MLOAD
00002028: RETURNDATASIZE
00002029: PUSH1 0x1f
0000202b: NOT
0000202c: PUSH1 0x1f
0000202e: DUP3
0000202f: ADD
00002030: AND
00002031: DUP3
00002032: ADD
00002033: DUP1
00002034: PUSH1 0x40
00002036: MSTORE
00002037: POP
00002038: DUP2
00002039: ADD
0000203a: SWAP1
0000203b: PUSH2 0x0c36
0000203e: SWAP2
0000203f: SWAP1
00002040: PUSH2 0x2f87
00002043: JUMP
00002044: JUMPDEST
00002045: PUSH1 0x00
00002047: DUP1
00002048: DUP1
00002049: DUP1
0000204a: PUSH2 0x2057
0000204d: PUSH1 0x34
0000204f: PUSH1 0x20
00002051: DUP8
00002052: DUP10
00002053: PUSH2 0x2fc6
00002056: JUMP
00002057: JUMPDEST
00002058: PUSH2 0x2060
0000205b: SWAP2
0000205c: PUSH2 0x2ff0
0000205f: JUMP
00002060: JUMPDEST
00002061: PUSH1 0x40
00002063: MLOAD
00002064: PUSH32 0x6ab3905700000000000000000000000000000000000000000000000000000000
00002085: DUP2
00002086: MSTORE
00002087: PUSH1 0x60
00002089: SWAP2
0000208a: SWAP1
0000208b: SWAP2
0000208c: SHR
0000208d: PUSH1 0x04
0000208f: DUP3
00002090: ADD
00002091: DUP2
00002092: SWAP1
00002093: MSTORE
00002094: SWAP2
00002095: POP
00002096: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000020ab: PUSH32 0x00000000000000000000000094106ca9c7e567109a1d39413052887d1f412183
000020cc: AND
000020cd: SWAP1
000020ce: PUSH4 0x6ab39057
000020d3: SWAP1
000020d4: PUSH1 0x24
000020d6: ADD
000020d7: PUSH1 0x20
000020d9: PUSH1 0x40
000020db: MLOAD
000020dc: DUP1
000020dd: DUP4
000020de: SUB
000020df: DUP2
000020e0: DUP7
000020e1: GAS
000020e2: STATICCALL
000020e3: ISZERO
000020e4: DUP1
000020e5: ISZERO
000020e6: PUSH2 0x20f3
000020e9: JUMPI
000020ea: RETURNDATASIZE
000020eb: PUSH1 0x00
000020ed: DUP1
000020ee: RETURNDATACOPY
000020ef: RETURNDATASIZE
000020f0: PUSH1 0x00
000020f2: REVERT
000020f3: JUMPDEST
000020f4: POP
000020f5: POP
000020f6: POP
000020f7: POP
000020f8: PUSH1 0x40
000020fa: MLOAD
000020fb: RETURNDATASIZE
000020fc: PUSH1 0x1f
000020fe: NOT
000020ff: PUSH1 0x1f
00002101: DUP3
00002102: ADD
00002103: AND
00002104: DUP3
00002105: ADD
00002106: DUP1
00002107: PUSH1 0x40
00002109: MSTORE
0000210a: POP
0000210b: DUP2
0000210c: ADD
0000210d: SWAP1
0000210e: PUSH2 0x2117
00002111: SWAP2
00002112: SWAP1
00002113: PUSH2 0x2f87
00002116: JUMP
00002117: JUMPDEST
00002118: PUSH2 0x214d
0000211b: JUMPI
0000211c: PUSH1 0x40
0000211e: MLOAD
0000211f: PUSH32 0xc94f7a9a00000000000000000000000000000000000000000000000000000000
00002140: DUP2
00002141: MSTORE
00002142: PUSH1 0x04
00002144: ADD
00002145: PUSH1 0x40
00002147: MLOAD
00002148: DUP1
00002149: SWAP2
0000214a: SUB
0000214b: SWAP1
0000214c: REVERT
0000214d: JUMPDEST
0000214e: PUSH1 0x00
00002150: DUP1
00002151: PUSH2 0x215c
00002154: DUP10
00002155: PUSH1 0x0b
00002157: SLOAD
00002158: PUSH2 0x27f1
0000215b: JUMP
0000215c: JUMPDEST
0000215d: SWAP1
0000215e: SWAP3
0000215f: POP
00002160: SWAP1
00002161: POP
00002162: PUSH2 0x21a3
00002165: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000217a: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
0000219b: AND
0000219c: CALLER
0000219d: ADDRESS
0000219e: DUP13
0000219f: PUSH2 0x2921
000021a2: JUMP
000021a3: JUMPDEST
000021a4: PUSH1 0x0a
000021a6: SLOAD
000021a7: PUSH2 0x21ea
000021aa: SWAP1
000021ab: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000021c0: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
000021e1: DUP2
000021e2: AND
000021e3: SWAP2
000021e4: AND
000021e5: DUP4
000021e6: PUSH2 0x2561
000021e9: JUMP
000021ea: JUMPDEST
000021eb: PUSH2 0x222c
000021ee: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002203: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
00002224: AND
00002225: DUP5
00002226: PUSH1 0x00
00002228: PUSH2 0x285a
0000222b: JUMP
0000222c: JUMPDEST
0000222d: PUSH2 0x226d
00002230: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002245: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
00002266: AND
00002267: DUP5
00002268: DUP5
00002269: PUSH2 0x285a
0000226c: JUMP
0000226d: JUMPDEST
0000226e: PUSH1 0x00
00002270: DUP4
00002271: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002286: AND
00002287: PUSH4 0xda145263
0000228c: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
000022ad: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
000022ce: ADDRESS
000022cf: DUP8
000022d0: DUP15
000022d1: DUP15
000022d2: PUSH1 0x34
000022d4: SWAP1
000022d5: DUP1
000022d6: SWAP3
000022d7: PUSH2 0x22e2
000022da: SWAP4
000022db: SWAP3
000022dc: SWAP2
000022dd: SWAP1
000022de: PUSH2 0x2fc6
000022e1: JUMP
000022e2: JUMPDEST
000022e3: PUSH1 0x40
000022e5: MLOAD
000022e6: DUP8
000022e7: PUSH4 0xffffffff
000022ec: AND
000022ed: PUSH1 0xe0
000022ef: SHL
000022f0: DUP2
000022f1: MSTORE
000022f2: PUSH1 0x04
000022f4: ADD
000022f5: PUSH2 0x2303
000022f8: SWAP7
000022f9: SWAP6
000022fa: SWAP5
000022fb: SWAP4
000022fc: SWAP3
000022fd: SWAP2
000022fe: SWAP1
000022ff: PUSH2 0x3038
00002302: JUMP
00002303: JUMPDEST
00002304: PUSH1 0x20
00002306: PUSH1 0x40
00002308: MLOAD
00002309: DUP1
0000230a: DUP4
0000230b: SUB
0000230c: DUP2
0000230d: PUSH1 0x00
0000230f: DUP8
00002310: GAS
00002311: CALL
00002312: ISZERO
00002313: DUP1
00002314: ISZERO
00002315: PUSH2 0x2322
00002318: JUMPI
00002319: RETURNDATASIZE
0000231a: PUSH1 0x00
0000231c: DUP1
0000231d: RETURNDATACOPY
0000231e: RETURNDATASIZE
0000231f: PUSH1 0x00
00002321: REVERT
00002322: JUMPDEST
00002323: POP
00002324: POP
00002325: POP
00002326: POP
00002327: PUSH1 0x40
00002329: MLOAD
0000232a: RETURNDATASIZE
0000232b: PUSH1 0x1f
0000232d: NOT
0000232e: PUSH1 0x1f
00002330: DUP3
00002331: ADD
00002332: AND
00002333: DUP3
00002334: ADD
00002335: DUP1
00002336: PUSH1 0x40
00002338: MSTORE
00002339: POP
0000233a: DUP2
0000233b: ADD
0000233c: SWAP1
0000233d: PUSH2 0x2346
00002340: SWAP2
00002341: SWAP1
00002342: PUSH2 0x2ef4
00002345: JUMP
00002346: JUMPDEST
00002347: SWAP1
00002348: POP
00002349: PUSH1 0x09
0000234b: SLOAD
0000234c: DUP2
0000234d: DUP5
0000234e: PUSH2 0x2355
00002351: PUSH2 0x0958
00002354: JUMP
00002355: JUMPDEST
00002356: PUSH2 0x235f
00002359: SWAP2
0000235a: SWAP1
0000235b: PUSH2 0x30c0
0000235e: JUMP
0000235f: JUMPDEST
00002360: PUSH2 0x2369
00002363: SWAP2
00002364: SWAP1
00002365: PUSH2 0x31cf
00002368: JUMP
00002369: JUMPDEST
0000236a: GT
0000236b: ISZERO
0000236c: PUSH2 0x23a1
0000236f: JUMPI
00002370: PUSH1 0x40
00002372: MLOAD
00002373: PUSH32 0x2edaff4300000000000000000000000000000000000000000000000000000000
00002394: DUP2
00002395: MSTORE
00002396: PUSH1 0x04
00002398: ADD
00002399: PUSH1 0x40
0000239b: MLOAD
0000239c: DUP1
0000239d: SWAP2
0000239e: SUB
0000239f: SWAP1
000023a0: REVERT
000023a1: JUMPDEST
000023a2: PUSH1 0x00
000023a4: PUSH2 0x23ac
000023a7: DUP3
000023a8: PUSH2 0x2a0b
000023ab: JUMP
000023ac: JUMPDEST
000023ad: SWAP12
000023ae: SWAP2
000023af: SWAP11
000023b0: POP
000023b1: SWAP2
000023b2: SWAP9
000023b3: POP
000023b4: SWAP7
000023b5: POP
000023b6: POP
000023b7: POP
000023b8: POP
000023b9: POP
000023ba: POP
000023bb: POP
000023bc: JUMP
000023bd: JUMPDEST
000023be: DUP1
000023bf: PUSH1 0x02
000023c1: PUSH1 0x00
000023c3: DUP3
000023c4: DUP3
000023c5: SLOAD
000023c6: PUSH2 0x23cf
000023c9: SWAP2
000023ca: SWAP1
000023cb: PUSH2 0x2f3c
000023ce: JUMP
000023cf: JUMPDEST
000023d0: SWAP1
000023d1: SWAP2
000023d2: SSTORE
000023d3: POP
000023d4: POP
000023d5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000023ea: DUP3
000023eb: AND
000023ec: PUSH1 0x00
000023ee: DUP2
000023ef: DUP2
000023f0: MSTORE
000023f1: PUSH1 0x03
000023f3: PUSH1 0x20
000023f5: SWAP1
000023f6: DUP2
000023f7: MSTORE
000023f8: PUSH1 0x40
000023fa: DUP1
000023fb: DUP4
000023fc: KECCAK256
000023fd: DUP1
000023fe: SLOAD
000023ff: DUP7
00002400: ADD
00002401: SWAP1
00002402: SSTORE
00002403: MLOAD
00002404: DUP5
00002405: DUP2
00002406: MSTORE
00002407: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
00002428: SWAP2
00002429: ADD
0000242a: JUMPDEST
0000242b: PUSH1 0x40
0000242d: MLOAD
0000242e: DUP1
0000242f: SWAP2
00002430: SUB
00002431: SWAP1
00002432: LOG3
00002433: POP
00002434: POP
00002435: JUMP
00002436: JUMPDEST
00002437: PUSH1 0x40
00002439: MLOAD
0000243a: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000
0000245b: DUP2
0000245c: MSTORE
0000245d: ADDRESS
0000245e: PUSH1 0x04
00002460: DUP3
00002461: ADD
00002462: MSTORE
00002463: PUSH1 0x00
00002465: SWAP1
00002466: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
00002487: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000249c: AND
0000249d: SWAP1
0000249e: PUSH4 0x70a08231
000024a3: SWAP1
000024a4: PUSH1 0x24
000024a6: ADD
000024a7: PUSH1 0x20
000024a9: PUSH1 0x40
000024ab: MLOAD
000024ac: DUP1
000024ad: DUP4
000024ae: SUB
000024af: DUP2
000024b0: DUP7
000024b1: GAS
000024b2: STATICCALL
000024b3: ISZERO
000024b4: DUP1
000024b5: ISZERO
000024b6: PUSH2 0x24c3
000024b9: JUMPI
000024ba: RETURNDATASIZE
000024bb: PUSH1 0x00
000024bd: DUP1
000024be: RETURNDATACOPY
000024bf: RETURNDATASIZE
000024c0: PUSH1 0x00
000024c2: REVERT
000024c3: JUMPDEST
000024c4: POP
000024c5: POP
000024c6: POP
000024c7: POP
000024c8: PUSH1 0x40
000024ca: MLOAD
000024cb: RETURNDATASIZE
000024cc: PUSH1 0x1f
000024ce: NOT
000024cf: PUSH1 0x1f
000024d1: DUP3
000024d2: ADD
000024d3: AND
000024d4: DUP3
000024d5: ADD
000024d6: DUP1
000024d7: PUSH1 0x40
000024d9: MSTORE
000024da: POP
000024db: DUP2
000024dc: ADD
000024dd: SWAP1
000024de: PUSH2 0x24e7
000024e1: SWAP2
000024e2: SWAP1
000024e3: PUSH2 0x2ef4
000024e6: JUMP
000024e7: JUMPDEST
000024e8: SWAP1
000024e9: POP
000024ea: PUSH1 0x00
000024ec: PUSH1 0x0e
000024ee: SLOAD
000024ef: TIMESTAMP
000024f0: PUSH2 0x24f9
000024f3: SWAP2
000024f4: SWAP1
000024f5: PUSH2 0x2f54
000024f8: JUMP
000024f9: JUMPDEST
000024fa: SWAP1
000024fb: POP
000024fc: PUSH1 0x00
000024fe: PUSH2 0x2507
00002501: DUP4
00002502: DUP4
00002503: PUSH2 0x1eb8
00002506: JUMP
00002507: JUMPDEST
00002508: SWAP1
00002509: POP
0000250a: DUP3
0000250b: DUP2
0000250c: GT
0000250d: ISZERO
0000250e: PUSH2 0x2514
00002511: JUMPI
00002512: POP
00002513: DUP2
00002514: JUMPDEST
00002515: DUP1
00002516: ISZERO
00002517: PUSH2 0x13ff
0000251a: JUMPI
0000251b: TIMESTAMP
0000251c: PUSH1 0x0e
0000251e: SSTORE
0000251f: PUSH1 0x0a
00002521: SLOAD
00002522: PUSH2 0x13c5
00002525: SWAP1
00002526: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000253b: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
0000255c: DUP2
0000255d: AND
0000255e: SWAP2
0000255f: AND
00002560: DUP4
00002561: JUMPDEST
00002562: PUSH1 0x00
00002564: PUSH1 0x40
00002566: MLOAD
00002567: PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000
00002588: DUP2
00002589: MSTORE
0000258a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000259f: DUP5
000025a0: AND
000025a1: PUSH1 0x04
000025a3: DUP3
000025a4: ADD
000025a5: MSTORE
000025a6: DUP3
000025a7: PUSH1 0x24
000025a9: DUP3
000025aa: ADD
000025ab: MSTORE
000025ac: PUSH1 0x00
000025ae: DUP1
000025af: PUSH1 0x44
000025b1: DUP4
000025b2: PUSH1 0x00
000025b4: DUP10
000025b5: GAS
000025b6: CALL
000025b7: SWAP2
000025b8: POP
000025b9: POP
000025ba: PUSH2 0x25c2
000025bd: DUP2
000025be: PUSH2 0x2a2e
000025c1: JUMP
000025c2: JUMPDEST
000025c3: PUSH2 0x2628
000025c6: JUMPI
000025c7: PUSH1 0x40
000025c9: MLOAD
000025ca: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000025eb: DUP2
000025ec: MSTORE
000025ed: PUSH1 0x20
000025ef: PUSH1 0x04
000025f1: DUP3
000025f2: ADD
000025f3: MSTORE
000025f4: PUSH1 0x0f
000025f6: PUSH1 0x24
000025f8: DUP3
000025f9: ADD
000025fa: MSTORE
000025fb: PUSH32 0x5452414e534645525f4641494c45440000000000000000000000000000000000
0000261c: PUSH1 0x44
0000261e: DUP3
0000261f: ADD
00002620: MSTORE
00002621: PUSH1 0x64
00002623: ADD
00002624: PUSH2 0x10a2
00002627: JUMP
00002628: JUMPDEST
00002629: POP
0000262a: POP
0000262b: POP
0000262c: POP
0000262d: JUMP
0000262e: JUMPDEST
0000262f: PUSH1 0x00
00002631: DUP1
00002632: PUSH2 0x263a
00002635: DUP4
00002636: PUSH2 0x17ec
00002639: JUMP
0000263a: JUMPDEST
0000263b: SWAP1
0000263c: POP
0000263d: PUSH2 0x2646
00002640: CALLER
00002641: DUP5
00002642: PUSH2 0x2763
00002645: JUMP
00002646: JUMPDEST
00002647: PUSH1 0x00
00002649: DUP1
0000264a: PUSH2 0x2655
0000264d: DUP4
0000264e: PUSH1 0x0c
00002650: SLOAD
00002651: PUSH2 0x27f1
00002654: JUMP
00002655: JUMPDEST
00002656: PUSH1 0x0a
00002658: SLOAD
00002659: SWAP2
0000265a: SWAP4
0000265b: POP
0000265c: SWAP2
0000265d: POP
0000265e: PUSH2 0x26a1
00002661: SWAP1
00002662: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002677: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
00002698: DUP2
00002699: AND
0000269a: SWAP2
0000269b: AND
0000269c: DUP4
0000269d: PUSH2 0x2561
000026a0: JUMP
000026a1: JUMPDEST
000026a2: PUSH2 0x26e2
000026a5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000026ba: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
000026db: AND
000026dc: CALLER
000026dd: DUP5
000026de: PUSH2 0x2561
000026e1: JUMP
000026e2: JUMPDEST
000026e3: PUSH1 0x40
000026e5: DUP1
000026e6: MLOAD
000026e7: DUP5
000026e8: DUP2
000026e9: MSTORE
000026ea: PUSH1 0x20
000026ec: DUP2
000026ed: ADD
000026ee: DUP8
000026ef: SWAP1
000026f0: MSTORE
000026f1: SWAP1
000026f2: DUP2
000026f3: ADD
000026f4: DUP4
000026f5: SWAP1
000026f6: MSTORE
000026f7: PUSH1 0x60
000026f9: DUP2
000026fa: ADD
000026fb: DUP3
000026fc: SWAP1
000026fd: MSTORE
000026fe: CALLER
000026ff: SWAP1
00002700: DUP2
00002701: SWAP1
00002702: PUSH32 0x8caf04742286d017f9ac3924388e188c73e6e5094311c5e59a61a7ef86dda8bf
00002723: SWAP1
00002724: PUSH1 0x80
00002726: ADD
00002727: PUSH1 0x40
00002729: MLOAD
0000272a: DUP1
0000272b: SWAP2
0000272c: SUB
0000272d: SWAP1
0000272e: LOG3
0000272f: POP
00002730: SWAP4
00002731: SWAP3
00002732: POP
00002733: POP
00002734: POP
00002735: JUMP
00002736: JUMPDEST
00002737: PUSH1 0x00
00002739: DUP1
0000273a: PUSH1 0x00
0000273c: PUSH2 0x2744
0000273f: DUP7
00002740: PUSH2 0x09f8
00002743: JUMP
00002744: JUMPDEST
00002745: SWAP1
00002746: POP
00002747: PUSH1 0x00
00002749: DUP1
0000274a: PUSH2 0x2754
0000274d: DUP4
0000274e: DUP9
0000274f: DUP9
00002750: PUSH2 0x1bbd
00002753: JUMP
00002754: JUMPDEST
00002755: SWAP1
00002756: SWAP10
00002757: SWAP1
00002758: SWAP9
00002759: POP
0000275a: SWAP7
0000275b: POP
0000275c: POP
0000275d: POP
0000275e: POP
0000275f: POP
00002760: POP
00002761: POP
00002762: JUMP
00002763: JUMPDEST
00002764: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002779: DUP3
0000277a: AND
0000277b: PUSH1 0x00
0000277d: SWAP1
0000277e: DUP2
0000277f: MSTORE
00002780: PUSH1 0x03
00002782: PUSH1 0x20
00002784: MSTORE
00002785: PUSH1 0x40
00002787: DUP2
00002788: KECCAK256
00002789: DUP1
0000278a: SLOAD
0000278b: DUP4
0000278c: SWAP3
0000278d: SWAP1
0000278e: PUSH2 0x2798
00002791: SWAP1
00002792: DUP5
00002793: SWAP1
00002794: PUSH2 0x2f54
00002797: JUMP
00002798: JUMPDEST
00002799: SWAP1
0000279a: SWAP2
0000279b: SSTORE
0000279c: POP
0000279d: POP
0000279e: PUSH1 0x02
000027a0: DUP1
000027a1: SLOAD
000027a2: DUP3
000027a3: SWAP1
000027a4: SUB
000027a5: SWAP1
000027a6: SSTORE
000027a7: PUSH1 0x40
000027a9: MLOAD
000027aa: DUP2
000027ab: DUP2
000027ac: MSTORE
000027ad: PUSH1 0x00
000027af: SWAP1
000027b0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000027c5: DUP5
000027c6: AND
000027c7: SWAP1
000027c8: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
000027e9: SWAP1
000027ea: PUSH1 0x20
000027ec: ADD
000027ed: PUSH2 0x242a
000027f0: JUMP
000027f1: JUMPDEST
000027f2: PUSH1 0x00
000027f4: DUP1
000027f5: PUSH2 0x2710
000027f8: DUP4
000027f9: GT
000027fa: ISZERO
000027fb: PUSH2 0x2830
000027fe: JUMPI
000027ff: PUSH1 0x40
00002801: MLOAD
00002802: PUSH32 0xf08319c600000000000000000000000000000000000000000000000000000000
00002823: DUP2
00002824: MSTORE
00002825: PUSH1 0x04
00002827: ADD
00002828: PUSH1 0x40
0000282a: MLOAD
0000282b: DUP1
0000282c: SWAP2
0000282d: SUB
0000282e: SWAP1
0000282f: REVERT
00002830: JUMPDEST
00002831: PUSH2 0x283a
00002834: DUP5
00002835: DUP5
00002836: PUSH2 0x2a75
00002839: JUMP
0000283a: JUMPDEST
0000283b: SWAP4
0000283c: DUP5
0000283d: SWAP1
0000283e: SUB
0000283f: SWAP5
00002840: SWAP3
00002841: POP
00002842: POP
00002843: POP
00002844: JUMP
00002845: JUMPDEST
00002846: PUSH1 0x00
00002848: PUSH2 0x0a1e
0000284b: DUP4
0000284c: DUP4
0000284d: PUSH8 0x0de0b6b3a7640000
00002856: PUSH2 0x19c2
00002859: JUMP
0000285a: JUMPDEST
0000285b: PUSH1 0x00
0000285d: PUSH1 0x40
0000285f: MLOAD
00002860: PUSH32 0x095ea7b300000000000000000000000000000000000000000000000000000000
00002881: DUP2
00002882: MSTORE
00002883: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002898: DUP5
00002899: AND
0000289a: PUSH1 0x04
0000289c: DUP3
0000289d: ADD
0000289e: MSTORE
0000289f: DUP3
000028a0: PUSH1 0x24
000028a2: DUP3
000028a3: ADD
000028a4: MSTORE
000028a5: PUSH1 0x00
000028a7: DUP1
000028a8: PUSH1 0x44
000028aa: DUP4
000028ab: PUSH1 0x00
000028ad: DUP10
000028ae: GAS
000028af: CALL
000028b0: SWAP2
000028b1: POP
000028b2: POP
000028b3: PUSH2 0x28bb
000028b6: DUP2
000028b7: PUSH2 0x2a2e
000028ba: JUMP
000028bb: JUMPDEST
000028bc: PUSH2 0x2628
000028bf: JUMPI
000028c0: PUSH1 0x40
000028c2: MLOAD
000028c3: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000028e4: DUP2
000028e5: MSTORE
000028e6: PUSH1 0x20
000028e8: PUSH1 0x04
000028ea: DUP3
000028eb: ADD
000028ec: MSTORE
000028ed: PUSH1 0x0e
000028ef: PUSH1 0x24
000028f1: DUP3
000028f2: ADD
000028f3: MSTORE
000028f4: PUSH32 0x415050524f56455f4641494c4544000000000000000000000000000000000000
00002915: PUSH1 0x44
00002917: DUP3
00002918: ADD
00002919: MSTORE
0000291a: PUSH1 0x64
0000291c: ADD
0000291d: PUSH2 0x10a2
00002920: JUMP
00002921: JUMPDEST
00002922: PUSH1 0x00
00002924: PUSH1 0x40
00002926: MLOAD
00002927: PUSH32 0x23b872dd00000000000000000000000000000000000000000000000000000000
00002948: DUP2
00002949: MSTORE
0000294a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000295f: DUP6
00002960: AND
00002961: PUSH1 0x04
00002963: DUP3
00002964: ADD
00002965: MSTORE
00002966: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000297b: DUP5
0000297c: AND
0000297d: PUSH1 0x24
0000297f: DUP3
00002980: ADD
00002981: MSTORE
00002982: DUP3
00002983: PUSH1 0x44
00002985: DUP3
00002986: ADD
00002987: MSTORE
00002988: PUSH1 0x00
0000298a: DUP1
0000298b: PUSH1 0x64
0000298d: DUP4
0000298e: PUSH1 0x00
00002990: DUP11
00002991: GAS
00002992: CALL
00002993: SWAP2
00002994: POP
00002995: POP
00002996: PUSH2 0x299e
00002999: DUP2
0000299a: PUSH2 0x2a2e
0000299d: JUMP
0000299e: JUMPDEST
0000299f: PUSH2 0x2a04
000029a2: JUMPI
000029a3: PUSH1 0x40
000029a5: MLOAD
000029a6: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000029c7: DUP2
000029c8: MSTORE
000029c9: PUSH1 0x20
000029cb: PUSH1 0x04
000029cd: DUP3
000029ce: ADD
000029cf: MSTORE
000029d0: PUSH1 0x14
000029d2: PUSH1 0x24
000029d4: DUP3
000029d5: ADD
000029d6: MSTORE
000029d7: PUSH32 0x5452414e534645525f46524f4d5f4641494c4544000000000000000000000000
000029f8: PUSH1 0x44
000029fa: DUP3
000029fb: ADD
000029fc: MSTORE
000029fd: PUSH1 0x64
000029ff: ADD
00002a00: PUSH2 0x10a2
00002a03: JUMP
00002a04: JUMPDEST
00002a05: POP
00002a06: POP
00002a07: POP
00002a08: POP
00002a09: POP
00002a0a: JUMP
00002a0b: JUMPDEST
00002a0c: PUSH1 0x02
00002a0e: SLOAD
00002a0f: PUSH1 0x00
00002a11: SWAP1
00002a12: DUP1
00002a13: ISZERO
00002a14: PUSH2 0x0a1c
00002a17: JUMPI
00002a18: PUSH2 0x0a17
00002a1b: DUP2
00002a1c: DUP5
00002a1d: PUSH2 0x2a24
00002a20: PUSH2 0x0958
00002a23: JUMP
00002a24: JUMPDEST
00002a25: PUSH2 0x14f3
00002a28: SWAP2
00002a29: SWAP1
00002a2a: PUSH2 0x2f54
00002a2d: JUMP
00002a2e: JUMPDEST
00002a2f: PUSH1 0x00
00002a31: RETURNDATASIZE
00002a32: DUP3
00002a33: PUSH2 0x2a40
00002a36: JUMPI
00002a37: DUP1
00002a38: PUSH1 0x00
00002a3a: DUP1
00002a3b: RETURNDATACOPY
00002a3c: DUP1
00002a3d: PUSH1 0x00
00002a3f: REVERT
00002a40: JUMPDEST
00002a41: DUP1
00002a42: PUSH1 0x20
00002a44: DUP2
00002a45: EQ
00002a46: PUSH2 0x2a58
00002a49: JUMPI
00002a4a: DUP1
00002a4b: ISZERO
00002a4c: PUSH2 0x2a69
00002a4f: JUMPI
00002a50: PUSH1 0x00
00002a52: SWAP3
00002a53: POP
00002a54: PUSH2 0x2a6e
00002a57: JUMP
00002a58: JUMPDEST
00002a59: DUP2
00002a5a: PUSH1 0x00
00002a5c: DUP1
00002a5d: RETURNDATACOPY
00002a5e: PUSH1 0x00
00002a60: MLOAD
00002a61: ISZERO
00002a62: ISZERO
00002a63: SWAP3
00002a64: POP
00002a65: PUSH2 0x2a6e
00002a68: JUMP
00002a69: JUMPDEST
00002a6a: PUSH1 0x01
00002a6c: SWAP3
00002a6d: POP
00002a6e: JUMPDEST
00002a6f: POP
00002a70: POP
00002a71: SWAP2
00002a72: SWAP1
00002a73: POP
00002a74: JUMP
00002a75: JUMPDEST
00002a76: PUSH1 0x00
00002a78: PUSH2 0x2a81
00002a7b: DUP3
00002a7c: DUP5
00002a7d: PUSH2 0x30c0
00002a80: JUMP
00002a81: JUMPDEST
00002a82: PUSH2 0x2710
00002a85: SWAP1
00002a86: DIV
00002a87: SWAP4
00002a88: SWAP3
00002a89: POP
00002a8a: POP
00002a8b: POP
00002a8c: JUMP
00002a8d: JUMPDEST
00002a8e: PUSH1 0x00
00002a90: JUMPDEST
00002a91: DUP4
00002a92: DUP2
00002a93: LT
00002a94: ISZERO
00002a95: PUSH2 0x2aa8
00002a98: JUMPI
00002a99: DUP2
00002a9a: DUP2
00002a9b: ADD
00002a9c: MLOAD
00002a9d: DUP4
00002a9e: DUP3
00002a9f: ADD
00002aa0: MSTORE
00002aa1: PUSH1 0x20
00002aa3: ADD
00002aa4: PUSH2 0x2a90
00002aa7: JUMP
00002aa8: JUMPDEST
00002aa9: DUP4
00002aaa: DUP2
00002aab: GT
00002aac: ISZERO
00002aad: PUSH2 0x2628
00002ab0: JUMPI
00002ab1: POP
00002ab2: POP
00002ab3: PUSH1 0x00
00002ab5: SWAP2
00002ab6: ADD
00002ab7: MSTORE
00002ab8: JUMP
00002ab9: JUMPDEST
00002aba: PUSH1 0x00
00002abc: DUP2
00002abd: MLOAD
00002abe: DUP1
00002abf: DUP5
00002ac0: MSTORE
00002ac1: PUSH2 0x2ad1
00002ac4: DUP2
00002ac5: PUSH1 0x20
00002ac7: DUP7
00002ac8: ADD
00002ac9: PUSH1 0x20
00002acb: DUP7
00002acc: ADD
00002acd: PUSH2 0x2a8d
00002ad0: JUMP
00002ad1: JUMPDEST
00002ad2: PUSH1 0x1f
00002ad4: ADD
00002ad5: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0
00002af6: AND
00002af7: SWAP3
00002af8: SWAP1
00002af9: SWAP3
00002afa: ADD
00002afb: PUSH1 0x20
00002afd: ADD
00002afe: SWAP3
00002aff: SWAP2
00002b00: POP
00002b01: POP
00002b02: JUMP
00002b03: JUMPDEST
00002b04: PUSH1 0x20
00002b06: DUP2
00002b07: MSTORE
00002b08: PUSH1 0x00
00002b0a: PUSH2 0x0a1e
00002b0d: PUSH1 0x20
00002b0f: DUP4
00002b10: ADD
00002b11: DUP5
00002b12: PUSH2 0x2ab9
00002b15: JUMP
00002b16: JUMPDEST
00002b17: PUSH1 0x00
00002b19: PUSH1 0x20
00002b1b: DUP3
00002b1c: DUP5
00002b1d: SUB
00002b1e: SLT
00002b1f: ISZERO
00002b20: PUSH2 0x2b28
00002b23: JUMPI
00002b24: PUSH1 0x00
00002b26: DUP1
00002b27: REVERT
00002b28: JUMPDEST
00002b29: POP
00002b2a: CALLDATALOAD
00002b2b: SWAP2
00002b2c: SWAP1
00002b2d: POP
00002b2e: JUMP
00002b2f: JUMPDEST
00002b30: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002b45: DUP2
00002b46: AND
00002b47: DUP2
00002b48: EQ
00002b49: PUSH2 0x2b51
00002b4c: JUMPI
00002b4d: PUSH1 0x00
00002b4f: DUP1
00002b50: REVERT
00002b51: JUMPDEST
00002b52: POP
00002b53: JUMP
00002b54: JUMPDEST
00002b55: PUSH1 0x00
00002b57: DUP1
00002b58: PUSH1 0x40
00002b5a: DUP4
00002b5b: DUP6
00002b5c: SUB
00002b5d: SLT
00002b5e: ISZERO
00002b5f: PUSH2 0x2b67
00002b62: JUMPI
00002b63: PUSH1 0x00
00002b65: DUP1
00002b66: REVERT
00002b67: JUMPDEST
00002b68: DUP3
00002b69: CALLDATALOAD
00002b6a: PUSH2 0x2b72
00002b6d: DUP2
00002b6e: PUSH2 0x2b2f
00002b71: JUMP
00002b72: JUMPDEST
00002b73: SWAP5
00002b74: PUSH1 0x20
00002b76: SWAP4
00002b77: SWAP1
00002b78: SWAP4
00002b79: ADD
00002b7a: CALLDATALOAD
00002b7b: SWAP4
00002b7c: POP
00002b7d: POP
00002b7e: POP
00002b7f: JUMP
00002b80: JUMPDEST
00002b81: PUSH1 0x00
00002b83: DUP1
00002b84: DUP4
00002b85: PUSH1 0x1f
00002b87: DUP5
00002b88: ADD
00002b89: SLT
00002b8a: PUSH2 0x2b92
00002b8d: JUMPI
00002b8e: PUSH1 0x00
00002b90: DUP1
00002b91: REVERT
00002b92: JUMPDEST
00002b93: POP
00002b94: DUP2
00002b95: CALLDATALOAD
00002b96: PUSH8 0xffffffffffffffff
00002b9f: DUP2
00002ba0: GT
00002ba1: ISZERO
00002ba2: PUSH2 0x2baa
00002ba5: JUMPI
00002ba6: PUSH1 0x00
00002ba8: DUP1
00002ba9: REVERT
00002baa: JUMPDEST
00002bab: PUSH1 0x20
00002bad: DUP4
00002bae: ADD
00002baf: SWAP2
00002bb0: POP
00002bb1: DUP4
00002bb2: PUSH1 0x20
00002bb4: DUP3
00002bb5: DUP6
00002bb6: ADD
00002bb7: ADD
00002bb8: GT
00002bb9: ISZERO
00002bba: PUSH2 0x2bc2
00002bbd: JUMPI
00002bbe: PUSH1 0x00
00002bc0: DUP1
00002bc1: REVERT
00002bc2: JUMPDEST
00002bc3: SWAP3
00002bc4: POP
00002bc5: SWAP3
00002bc6: SWAP1
00002bc7: POP
00002bc8: JUMP
00002bc9: JUMPDEST
00002bca: PUSH1 0x00
00002bcc: DUP1
00002bcd: PUSH1 0x20
00002bcf: DUP4
00002bd0: DUP6
00002bd1: SUB
00002bd2: SLT
00002bd3: ISZERO
00002bd4: PUSH2 0x2bdc
00002bd7: JUMPI
00002bd8: PUSH1 0x00
00002bda: DUP1
00002bdb: REVERT
00002bdc: JUMPDEST
00002bdd: DUP3
00002bde: CALLDATALOAD
00002bdf: PUSH8 0xffffffffffffffff
00002be8: DUP2
00002be9: GT
00002bea: ISZERO
00002beb: PUSH2 0x2bf3
00002bee: JUMPI
00002bef: PUSH1 0x00
00002bf1: DUP1
00002bf2: REVERT
00002bf3: JUMPDEST
00002bf4: PUSH2 0x2bff
00002bf7: DUP6
00002bf8: DUP3
00002bf9: DUP7
00002bfa: ADD
00002bfb: PUSH2 0x2b80
00002bfe: JUMP
00002bff: JUMPDEST
00002c00: SWAP1
00002c01: SWAP7
00002c02: SWAP1
00002c03: SWAP6
00002c04: POP
00002c05: SWAP4
00002c06: POP
00002c07: POP
00002c08: POP
00002c09: POP
00002c0a: JUMP
00002c0b: JUMPDEST
00002c0c: PUSH1 0x00
00002c0e: DUP1
00002c0f: PUSH1 0x00
00002c11: PUSH1 0x60
00002c13: DUP5
00002c14: DUP7
00002c15: SUB
00002c16: SLT
00002c17: ISZERO
00002c18: PUSH2 0x2c20
00002c1b: JUMPI
00002c1c: PUSH1 0x00
00002c1e: DUP1
00002c1f: REVERT
00002c20: JUMPDEST
00002c21: DUP4
00002c22: CALLDATALOAD
00002c23: PUSH2 0x2c2b
00002c26: DUP2
00002c27: PUSH2 0x2b2f
00002c2a: JUMP
00002c2b: JUMPDEST
00002c2c: SWAP3
00002c2d: POP
00002c2e: PUSH1 0x20
00002c30: DUP5
00002c31: ADD
00002c32: CALLDATALOAD
00002c33: PUSH2 0x2c3b
00002c36: DUP2
00002c37: PUSH2 0x2b2f
00002c3a: JUMP
00002c3b: JUMPDEST
00002c3c: SWAP3
00002c3d: SWAP6
00002c3e: SWAP3
00002c3f: SWAP5
00002c40: POP
00002c41: POP
00002c42: POP
00002c43: PUSH1 0x40
00002c45: SWAP2
00002c46: SWAP1
00002c47: SWAP2
00002c48: ADD
00002c49: CALLDATALOAD
00002c4a: SWAP1
00002c4b: JUMP
00002c4c: JUMPDEST
00002c4d: PUSH1 0x00
00002c4f: DUP1
00002c50: PUSH1 0x40
00002c52: DUP4
00002c53: DUP6
00002c54: SUB
00002c55: SLT
00002c56: ISZERO
00002c57: PUSH2 0x2c5f
00002c5a: JUMPI
00002c5b: PUSH1 0x00
00002c5d: DUP1
00002c5e: REVERT
00002c5f: JUMPDEST
00002c60: POP
00002c61: POP
00002c62: DUP1
00002c63: CALLDATALOAD
00002c64: SWAP3
00002c65: PUSH1 0x20
00002c67: SWAP1
00002c68: SWAP2
00002c69: ADD
00002c6a: CALLDATALOAD
00002c6b: SWAP2
00002c6c: POP
00002c6d: JUMP
00002c6e: JUMPDEST
00002c6f: PUSH1 0x00
00002c71: DUP1
00002c72: PUSH1 0x00
00002c74: PUSH1 0x40
00002c76: DUP5
00002c77: DUP7
00002c78: SUB
00002c79: SLT
00002c7a: ISZERO
00002c7b: PUSH2 0x2c83
00002c7e: JUMPI
00002c7f: PUSH1 0x00
00002c81: DUP1
00002c82: REVERT
00002c83: JUMPDEST
00002c84: DUP4
00002c85: CALLDATALOAD
00002c86: SWAP3
00002c87: POP
00002c88: PUSH1 0x20
00002c8a: DUP5
00002c8b: ADD
00002c8c: CALLDATALOAD
00002c8d: PUSH8 0xffffffffffffffff
00002c96: DUP2
00002c97: GT
00002c98: ISZERO
00002c99: PUSH2 0x2ca1
00002c9c: JUMPI
00002c9d: PUSH1 0x00
00002c9f: DUP1
00002ca0: REVERT
00002ca1: JUMPDEST
00002ca2: PUSH2 0x2cad
00002ca5: DUP7
00002ca6: DUP3
00002ca7: DUP8
00002ca8: ADD
00002ca9: PUSH2 0x2b80
00002cac: JUMP
00002cad: JUMPDEST
00002cae: SWAP5
00002caf: SWAP8
00002cb0: SWAP1
00002cb1: SWAP7
00002cb2: POP
00002cb3: SWAP4
00002cb4: SWAP5
00002cb5: POP
00002cb6: POP
00002cb7: POP
00002cb8: POP
00002cb9: JUMP
00002cba: JUMPDEST
00002cbb: PUSH1 0x00
00002cbd: PUSH1 0x20
00002cbf: DUP3
00002cc0: DUP5
00002cc1: SUB
00002cc2: SLT
00002cc3: ISZERO
00002cc4: PUSH2 0x2ccc
00002cc7: JUMPI
00002cc8: PUSH1 0x00
00002cca: DUP1
00002ccb: REVERT
00002ccc: JUMPDEST
00002ccd: DUP2
00002cce: CALLDATALOAD
00002ccf: PUSH2 0x0a1e
00002cd2: DUP2
00002cd3: PUSH2 0x2b2f
00002cd6: JUMP
00002cd7: JUMPDEST
00002cd8: PUSH1 0x00
00002cda: DUP1
00002cdb: PUSH1 0x00
00002cdd: DUP1
00002cde: PUSH1 0x00
00002ce0: DUP1
00002ce1: PUSH1 0x00
00002ce3: PUSH1 0xe0
00002ce5: DUP9
00002ce6: DUP11
00002ce7: SUB
00002ce8: SLT
00002ce9: ISZERO
00002cea: PUSH2 0x2cf2
00002ced: JUMPI
00002cee: PUSH1 0x00
00002cf0: DUP1
00002cf1: REVERT
00002cf2: JUMPDEST
00002cf3: DUP8
00002cf4: CALLDATALOAD
00002cf5: PUSH2 0x2cfd
00002cf8: DUP2
00002cf9: PUSH2 0x2b2f
00002cfc: JUMP
00002cfd: JUMPDEST
00002cfe: SWAP7
00002cff: POP
00002d00: PUSH1 0x20
00002d02: DUP9
00002d03: ADD
00002d04: CALLDATALOAD
00002d05: PUSH2 0x2d0d
00002d08: DUP2
00002d09: PUSH2 0x2b2f
00002d0c: JUMP
00002d0d: JUMPDEST
00002d0e: SWAP6
00002d0f: POP
00002d10: PUSH1 0x40
00002d12: DUP9
00002d13: ADD
00002d14: CALLDATALOAD
00002d15: SWAP5
00002d16: POP
00002d17: PUSH1 0x60
00002d19: DUP9
00002d1a: ADD
00002d1b: CALLDATALOAD
00002d1c: SWAP4
00002d1d: POP
00002d1e: PUSH1 0x80
00002d20: DUP9
00002d21: ADD
00002d22: CALLDATALOAD
00002d23: PUSH1 0xff
00002d25: DUP2
00002d26: AND
00002d27: DUP2
00002d28: EQ
00002d29: PUSH2 0x2d31
00002d2c: JUMPI
00002d2d: PUSH1 0x00
00002d2f: DUP1
00002d30: REVERT
00002d31: JUMPDEST
00002d32: SWAP7
00002d33: SWAP10
00002d34: SWAP6
00002d35: SWAP9
00002d36: POP
00002d37: SWAP4
00002d38: SWAP7
00002d39: SWAP3
00002d3a: SWAP6
00002d3b: SWAP5
00002d3c: PUSH1 0xa0
00002d3e: DUP5
00002d3f: ADD
00002d40: CALLDATALOAD
00002d41: SWAP5
00002d42: POP
00002d43: PUSH1 0xc0
00002d45: SWAP1
00002d46: SWAP4
00002d47: ADD
00002d48: CALLDATALOAD
00002d49: SWAP3
00002d4a: SWAP2
00002d4b: POP
00002d4c: POP
00002d4d: JUMP
00002d4e: JUMPDEST
00002d4f: PUSH1 0x00
00002d51: DUP1
00002d52: PUSH1 0x40
00002d54: DUP4
00002d55: DUP6
00002d56: SUB
00002d57: SLT
00002d58: ISZERO
00002d59: PUSH2 0x2d61
00002d5c: JUMPI
00002d5d: PUSH1 0x00
00002d5f: DUP1
00002d60: REVERT
00002d61: JUMPDEST
00002d62: DUP3
00002d63: CALLDATALOAD
00002d64: PUSH2 0x2d6c
00002d67: DUP2
00002d68: PUSH2 0x2b2f
00002d6b: JUMP
00002d6c: JUMPDEST
00002d6d: SWAP2
00002d6e: POP
00002d6f: PUSH1 0x20
00002d71: DUP4
00002d72: ADD
00002d73: CALLDATALOAD
00002d74: PUSH2 0x2d7c
00002d77: DUP2
00002d78: PUSH2 0x2b2f
00002d7b: JUMP
00002d7c: JUMPDEST
00002d7d: DUP1
00002d7e: SWAP2
00002d7f: POP
00002d80: POP
00002d81: SWAP3
00002d82: POP
00002d83: SWAP3
00002d84: SWAP1
00002d85: POP
00002d86: JUMP
00002d87: JUMPDEST
00002d88: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00002da9: PUSH1 0x00
00002dab: MSTORE
00002dac: PUSH1 0x41
00002dae: PUSH1 0x04
00002db0: MSTORE
00002db1: PUSH1 0x24
00002db3: PUSH1 0x00
00002db5: REVERT
00002db6: JUMPDEST
00002db7: PUSH1 0x00
00002db9: DUP1
00002dba: PUSH1 0x00
00002dbc: PUSH1 0x60
00002dbe: DUP5
00002dbf: DUP7
00002dc0: SUB
00002dc1: SLT
00002dc2: ISZERO
00002dc3: PUSH2 0x2dcb
00002dc6: JUMPI
00002dc7: PUSH1 0x00
00002dc9: DUP1
00002dca: REVERT
00002dcb: JUMPDEST
00002dcc: DUP4
00002dcd: CALLDATALOAD
00002dce: PUSH2 0x2dd6
00002dd1: DUP2
00002dd2: PUSH2 0x2b2f
00002dd5: JUMP
00002dd6: JUMPDEST
00002dd7: SWAP3
00002dd8: POP
00002dd9: PUSH1 0x20
00002ddb: DUP5
00002ddc: ADD
00002ddd: CALLDATALOAD
00002dde: SWAP2
00002ddf: POP
00002de0: PUSH1 0x40
00002de2: DUP5
00002de3: ADD
00002de4: CALLDATALOAD
00002de5: PUSH8 0xffffffffffffffff
00002dee: DUP1
00002def: DUP3
00002df0: GT
00002df1: ISZERO
00002df2: PUSH2 0x2dfa
00002df5: JUMPI
00002df6: PUSH1 0x00
00002df8: DUP1
00002df9: REVERT
00002dfa: JUMPDEST
00002dfb: DUP2
00002dfc: DUP7
00002dfd: ADD
00002dfe: SWAP2
00002dff: POP
00002e00: DUP7
00002e01: PUSH1 0x1f
00002e03: DUP4
00002e04: ADD
00002e05: SLT
00002e06: PUSH2 0x2e0e
00002e09: JUMPI
00002e0a: PUSH1 0x00
00002e0c: DUP1
00002e0d: REVERT
00002e0e: JUMPDEST
00002e0f: DUP2
00002e10: CALLDATALOAD
00002e11: DUP2
00002e12: DUP2
00002e13: GT
00002e14: ISZERO
00002e15: PUSH2 0x2e20
00002e18: JUMPI
00002e19: PUSH2 0x2e20
00002e1c: PUSH2 0x2d87
00002e1f: JUMP
00002e20: JUMPDEST
00002e21: PUSH1 0x40
00002e23: MLOAD
00002e24: PUSH1 0x1f
00002e26: DUP3
00002e27: ADD
00002e28: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0
00002e49: SWAP1
00002e4a: DUP2
00002e4b: AND
00002e4c: PUSH1 0x3f
00002e4e: ADD
00002e4f: AND
00002e50: DUP2
00002e51: ADD
00002e52: SWAP1
00002e53: DUP4
00002e54: DUP3
00002e55: GT
00002e56: DUP2
00002e57: DUP4
00002e58: LT
00002e59: OR
00002e5a: ISZERO
00002e5b: PUSH2 0x2e66
00002e5e: JUMPI
00002e5f: PUSH2 0x2e66
00002e62: PUSH2 0x2d87
00002e65: JUMP
00002e66: JUMPDEST
00002e67: DUP2
00002e68: PUSH1 0x40
00002e6a: MSTORE
00002e6b: DUP3
00002e6c: DUP2
00002e6d: MSTORE
00002e6e: DUP10
00002e6f: PUSH1 0x20
00002e71: DUP5
00002e72: DUP8
00002e73: ADD
00002e74: ADD
00002e75: GT
00002e76: ISZERO
00002e77: PUSH2 0x2e7f
00002e7a: JUMPI
00002e7b: PUSH1 0x00
00002e7d: DUP1
00002e7e: REVERT
00002e7f: JUMPDEST
00002e80: DUP3
00002e81: PUSH1 0x20
00002e83: DUP7
00002e84: ADD
00002e85: PUSH1 0x20
00002e87: DUP4
00002e88: ADD
00002e89: CALLDATACOPY
00002e8a: PUSH1 0x00
00002e8c: PUSH1 0x20
00002e8e: DUP5
00002e8f: DUP4
00002e90: ADD
00002e91: ADD
00002e92: MSTORE
00002e93: DUP1
00002e94: SWAP6
00002e95: POP
00002e96: POP
00002e97: POP
00002e98: POP
00002e99: POP
00002e9a: POP
00002e9b: SWAP3
00002e9c: POP
00002e9d: SWAP3
00002e9e: POP
00002e9f: SWAP3
00002ea0: JUMP
00002ea1: JUMPDEST
00002ea2: PUSH1 0x01
00002ea4: DUP2
00002ea5: DUP2
00002ea6: SHR
00002ea7: SWAP1
00002ea8: DUP3
00002ea9: AND
00002eaa: DUP1
00002eab: PUSH2 0x2eb5
00002eae: JUMPI
00002eaf: PUSH1 0x7f
00002eb1: DUP3
00002eb2: AND
00002eb3: SWAP2
00002eb4: POP
00002eb5: JUMPDEST
00002eb6: PUSH1 0x20
00002eb8: DUP3
00002eb9: LT
00002eba: DUP2
00002ebb: SUB
00002ebc: PUSH2 0x2eee
00002ebf: JUMPI
00002ec0: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00002ee1: PUSH1 0x00
00002ee3: MSTORE
00002ee4: PUSH1 0x22
00002ee6: PUSH1 0x04
00002ee8: MSTORE
00002ee9: PUSH1 0x24
00002eeb: PUSH1 0x00
00002eed: REVERT
00002eee: JUMPDEST
00002eef: POP
00002ef0: SWAP2
00002ef1: SWAP1
00002ef2: POP
00002ef3: JUMP
00002ef4: JUMPDEST
00002ef5: PUSH1 0x00
00002ef7: PUSH1 0x20
00002ef9: DUP3
00002efa: DUP5
00002efb: SUB
00002efc: SLT
00002efd: ISZERO
00002efe: PUSH2 0x2f06
00002f01: JUMPI
00002f02: PUSH1 0x00
00002f04: DUP1
00002f05: REVERT
00002f06: JUMPDEST
00002f07: POP
00002f08: MLOAD
00002f09: SWAP2
00002f0a: SWAP1
00002f0b: POP
00002f0c: JUMP
00002f0d: JUMPDEST
00002f0e: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00002f2f: PUSH1 0x00
00002f31: MSTORE
00002f32: PUSH1 0x11
00002f34: PUSH1 0x04
00002f36: MSTORE
00002f37: PUSH1 0x24
00002f39: PUSH1 0x00
00002f3b: REVERT
00002f3c: JUMPDEST
00002f3d: PUSH1 0x00
00002f3f: DUP3
00002f40: NOT
00002f41: DUP3
00002f42: GT
00002f43: ISZERO
00002f44: PUSH2 0x2f4f
00002f47: JUMPI
00002f48: PUSH2 0x2f4f
00002f4b: PUSH2 0x2f0d
00002f4e: JUMP
00002f4f: JUMPDEST
00002f50: POP
00002f51: ADD
00002f52: SWAP1
00002f53: JUMP
00002f54: JUMPDEST
00002f55: PUSH1 0x00
00002f57: DUP3
00002f58: DUP3
00002f59: LT
00002f5a: ISZERO
00002f5b: PUSH2 0x2f66
00002f5e: JUMPI
00002f5f: PUSH2 0x2f66
00002f62: PUSH2 0x2f0d
00002f65: JUMP
00002f66: JUMPDEST
00002f67: POP
00002f68: SUB
00002f69: SWAP1
00002f6a: JUMP
00002f6b: JUMPDEST
00002f6c: PUSH1 0x00
00002f6e: DUP3
00002f6f: MLOAD
00002f70: PUSH2 0x2f7d
00002f73: DUP2
00002f74: DUP5
00002f75: PUSH1 0x20
00002f77: DUP8
00002f78: ADD
00002f79: PUSH2 0x2a8d
00002f7c: JUMP
00002f7d: JUMPDEST
00002f7e: SWAP2
00002f7f: SWAP1
00002f80: SWAP2
00002f81: ADD
00002f82: SWAP3
00002f83: SWAP2
00002f84: POP
00002f85: POP
00002f86: JUMP
00002f87: JUMPDEST
00002f88: PUSH1 0x00
00002f8a: PUSH1 0x20
00002f8c: DUP3
00002f8d: DUP5
00002f8e: SUB
00002f8f: SLT
00002f90: ISZERO
00002f91: PUSH2 0x2f99
00002f94: JUMPI
00002f95: PUSH1 0x00
00002f97: DUP1
00002f98: REVERT
00002f99: JUMPDEST
00002f9a: DUP2
00002f9b: MLOAD
00002f9c: DUP1
00002f9d: ISZERO
00002f9e: ISZERO
00002f9f: DUP2
00002fa0: EQ
00002fa1: PUSH2 0x0a1e
00002fa4: JUMPI
00002fa5: PUSH1 0x00
00002fa7: DUP1
00002fa8: REVERT
00002fa9: JUMPDEST
00002faa: PUSH1 0x00
00002fac: PUSH1 0x20
00002fae: DUP3
00002faf: DUP5
00002fb0: SUB
00002fb1: SLT
00002fb2: ISZERO
00002fb3: PUSH2 0x2fbb
00002fb6: JUMPI
00002fb7: PUSH1 0x00
00002fb9: DUP1
00002fba: REVERT
00002fbb: JUMPDEST
00002fbc: DUP2
00002fbd: MLOAD
00002fbe: PUSH2 0x0a1e
00002fc1: DUP2
00002fc2: PUSH2 0x2b2f
00002fc5: JUMP
00002fc6: JUMPDEST
00002fc7: PUSH1 0x00
00002fc9: DUP1
00002fca: DUP6
00002fcb: DUP6
00002fcc: GT
00002fcd: ISZERO
00002fce: PUSH2 0x2fd6
00002fd1: JUMPI
00002fd2: PUSH1 0x00
00002fd4: DUP1
00002fd5: REVERT
00002fd6: JUMPDEST
00002fd7: DUP4
00002fd8: DUP7
00002fd9: GT
00002fda: ISZERO
00002fdb: PUSH2 0x2fe3
00002fde: JUMPI
00002fdf: PUSH1 0x00
00002fe1: DUP1
00002fe2: REVERT
00002fe3: JUMPDEST
00002fe4: POP
00002fe5: POP
00002fe6: DUP3
00002fe7: ADD
00002fe8: SWAP4
00002fe9: SWAP2
00002fea: SWAP1
00002feb: SWAP3
00002fec: SUB
00002fed: SWAP2
00002fee: POP
00002fef: JUMP
00002ff0: JUMPDEST
00002ff1: PUSH32 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000
00003012: DUP2
00003013: CALLDATALOAD
00003014: DUP2
00003015: DUP2
00003016: AND
00003017: SWAP2
00003018: PUSH1 0x14
0000301a: DUP6
0000301b: LT
0000301c: ISZERO
0000301d: PUSH2 0x3030
00003020: JUMPI
00003021: DUP1
00003022: DUP2
00003023: DUP7
00003024: PUSH1 0x14
00003026: SUB
00003027: PUSH1 0x03
00003029: SHL
0000302a: SHL
0000302b: DUP4
0000302c: AND
0000302d: AND
0000302e: SWAP3
0000302f: POP
00003030: JUMPDEST
00003031: POP
00003032: POP
00003033: SWAP3
00003034: SWAP2
00003035: POP
00003036: POP
00003037: JUMP
00003038: JUMPDEST
00003039: PUSH1 0x00
0000303b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00003050: DUP1
00003051: DUP10
00003052: AND
00003053: DUP4
00003054: MSTORE
00003055: DUP1
00003056: DUP9
00003057: AND
00003058: PUSH1 0x20
0000305a: DUP5
0000305b: ADD
0000305c: MSTORE
0000305d: DUP1
0000305e: DUP8
0000305f: AND
00003060: PUSH1 0x40
00003062: DUP5
00003063: ADD
00003064: MSTORE
00003065: POP
00003066: DUP5
00003067: PUSH1 0x60
00003069: DUP4
0000306a: ADD
0000306b: MSTORE
0000306c: PUSH1 0xa0
0000306e: PUSH1 0x80
00003070: DUP4
00003071: ADD
00003072: MSTORE
00003073: DUP3
00003074: PUSH1 0xa0
00003076: DUP4
00003077: ADD
00003078: MSTORE
00003079: DUP3
0000307a: DUP5
0000307b: PUSH1 0xc0
0000307d: DUP5
0000307e: ADD
0000307f: CALLDATACOPY
00003080: PUSH1 0x00
00003082: PUSH1 0xc0
00003084: DUP5
00003085: DUP5
00003086: ADD
00003087: ADD
00003088: MSTORE
00003089: PUSH1 0xc0
0000308b: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0
000030ac: PUSH1 0x1f
000030ae: DUP6
000030af: ADD
000030b0: AND
000030b1: DUP4
000030b2: ADD
000030b3: ADD
000030b4: SWAP1
000030b5: POP
000030b6: SWAP8
000030b7: SWAP7
000030b8: POP
000030b9: POP
000030ba: POP
000030bb: POP
000030bc: POP
000030bd: POP
000030be: POP
000030bf: JUMP
000030c0: JUMPDEST
000030c1: PUSH1 0x00
000030c3: DUP2
000030c4: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
000030e5: DIV
000030e6: DUP4
000030e7: GT
000030e8: DUP3
000030e9: ISZERO
000030ea: ISZERO
000030eb: AND
000030ec: ISZERO
000030ed: PUSH2 0x30f8
000030f0: JUMPI
000030f1: PUSH2 0x30f8
000030f4: PUSH2 0x2f0d
000030f7: JUMP
000030f8: JUMPDEST
000030f9: POP
000030fa: MUL
000030fb: SWAP1
000030fc: JUMP
000030fd: JUMPDEST
000030fe: PUSH1 0x00
00003100: DUP1
00003101: DUP4
00003102: SLOAD
00003103: DUP2
00003104: PUSH1 0x01
00003106: DUP3
00003107: DUP2
00003108: SHR
00003109: SWAP2
0000310a: POP
0000310b: DUP1
0000310c: DUP4
0000310d: AND
0000310e: DUP1
0000310f: PUSH2 0x3119
00003112: JUMPI
00003113: PUSH1 0x7f
00003115: DUP4
00003116: AND
00003117: SWAP3
00003118: POP
00003119: JUMPDEST
0000311a: PUSH1 0x20
0000311c: DUP1
0000311d: DUP5
0000311e: LT
0000311f: DUP3
00003120: SUB
00003121: PUSH2 0x3151
00003124: JUMPI
00003125: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00003146: DUP7
00003147: MSTORE
00003148: PUSH1 0x22
0000314a: PUSH1 0x04
0000314c: MSTORE
0000314d: PUSH1 0x24
0000314f: DUP7
00003150: REVERT
00003151: JUMPDEST
00003152: DUP2
00003153: DUP1
00003154: ISZERO
00003155: PUSH2 0x3165
00003158: JUMPI
00003159: PUSH1 0x01
0000315b: DUP2
0000315c: EQ
0000315d: PUSH2 0x3194
00003160: JUMPI
00003161: PUSH2 0x31c1
00003164: JUMP
00003165: JUMPDEST
00003166: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
00003187: DUP7
00003188: AND
00003189: DUP10
0000318a: MSTORE
0000318b: DUP5
0000318c: DUP10
0000318d: ADD
0000318e: SWAP7
0000318f: POP
00003190: PUSH2 0x31c1
00003193: JUMP
00003194: JUMPDEST
00003195: PUSH1 0x00
00003197: DUP11
00003198: DUP2
00003199: MSTORE
0000319a: PUSH1 0x20
0000319c: SWAP1
0000319d: KECCAK256
0000319e: PUSH1 0x00
000031a0: JUMPDEST
000031a1: DUP7
000031a2: DUP2
000031a3: LT
000031a4: ISZERO
000031a5: PUSH2 0x31b9
000031a8: JUMPI
000031a9: DUP2
000031aa: SLOAD
000031ab: DUP12
000031ac: DUP3
000031ad: ADD
000031ae: MSTORE
000031af: SWAP1
000031b0: DUP6
000031b1: ADD
000031b2: SWAP1
000031b3: DUP4
000031b4: ADD
000031b5: PUSH2 0x31a0
000031b8: JUMP
000031b9: JUMPDEST
000031ba: POP
000031bb: POP
000031bc: DUP5
000031bd: DUP10
000031be: ADD
000031bf: SWAP7
000031c0: POP
000031c1: JUMPDEST
000031c2: POP
000031c3: SWAP5
000031c4: SWAP9
000031c5: SWAP8
000031c6: POP
000031c7: POP
000031c8: POP
000031c9: POP
000031ca: POP
000031cb: POP
000031cc: POP
000031cd: POP
000031ce: JUMP
000031cf: JUMPDEST
000031d0: PUSH1 0x00
000031d2: DUP3
000031d3: PUSH2 0x3205
000031d6: JUMPI
000031d7: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
000031f8: PUSH1 0x00
000031fa: MSTORE
000031fb: PUSH1 0x12
000031fd: PUSH1 0x04
000031ff: MSTORE
00003200: PUSH1 0x24
00003202: PUSH1 0x00
00003204: REVERT
00003205: JUMPDEST
00003206: POP
00003207: DIV
00003208: SWAP1
00003209: JUMP
0000320a: INVALID
0000320b: LOG2
0000320c: PUSH5 0x6970667358
00003212: UNKNOWN(0x22)
00003213: SLT
00003214: KECCAK256
00003215: STATICCALL
00003216: KECCAK256
00003217: UNKNOWN(0xF7)
00003218: BLOBBASEFEE
00003219: UNKNOWN(0xBE)
0000321a: DUP8
0000321b: UNKNOWN(0xCA)
0000321c: DUP14
0000321d: UNKNOWN(0xDF)
0000321e: OR
0000321f: UNKNOWN(0xA8)
00003220: PUSH25 0xafa311510d37ea822582c7b0c73b89672f28e0f764736f6c63
0000323a: NUMBER
0000323b: STOP
0000323c: ADDMOD
0000323d: UNKNOWN(0x0D)
0000323e: STOP
0000323f: 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: 0x1427b98e28115c5f6a7cba929f1761cf863c8ed084aab262bcb4aa171c491f44
call_targets: 0xe521a0dc9f00c67979d875f0ef9f8080f322e3db
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x1427b98e28115c5f6a7cba929f1761cf863c8ed084aab262bcb4aa171c491f44",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xe521a0dc9f00c67979d875f0ef9f8080f322e3db"
    ],
    "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": "0xf06dfacb",
            "selector": "0xf06dfacb",
            "calldata_variants": [
                "0xf06dfacb",
                "0xf06dfacb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfef78497",
            "selector": "0xfef78497",
            "calldata_variants": [
                "0xfef78497",
                "0xfef784970000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xff5ac9a4",
            "selector": "0xff5ac9a4",
            "calldata_variants": [
                "0xff5ac9a4",
                "0xff5ac9a40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe37d15bf",
            "selector": "0xe37d15bf",
            "calldata_variants": [
                "0xe37d15bf",
                "0xe37d15bf0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe77c646d",
            "selector": "0xe77c646d",
            "calldata_variants": [
                "0xe77c646d",
                "0xe77c646d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf029748d",
            "selector": "0xf029748d",
            "calldata_variants": [
                "0xf029748d",
                "0xf029748d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xcbb94359",
            "selector": "0xcbb94359",
            "calldata_variants": [
                "0xcbb94359",
                "0xcbb943590000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd505accf",
            "selector": "0xd505accf",
            "calldata_variants": [
                "0xd505accf",
                "0xd505accf0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 6470,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 7795,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 8977,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 6,
    "guards_detected": [],
    "untrusted_call_count": 6
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x1427b98e28115c5f6a7cba929f1761cf863c8ed084aab262bcb4aa171c491f44
call_targets: 0xe521a0dc9f00c67979d875f0ef9f8080f322e3db
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x1427b98e28115c5f6a7cba929f1761cf863c8ed084aab262bcb4aa171c491f44",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xe521a0dc9f00c67979d875f0ef9f8080f322e3db"
    ],
    "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": "0xf06dfacb",
            "selector": "0xf06dfacb",
            "calldata_variants": [
                "0xf06dfacb",
                "0xf06dfacb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfef78497",
            "selector": "0xfef78497",
            "calldata_variants": [
                "0xfef78497",
                "0xfef784970000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xff5ac9a4",
            "selector": "0xff5ac9a4",
            "calldata_variants": [
                "0xff5ac9a4",
                "0xff5ac9a40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe37d15bf",
            "selector": "0xe37d15bf",
            "calldata_variants": [
                "0xe37d15bf",
                "0xe37d15bf0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe77c646d",
            "selector": "0xe77c646d",
            "calldata_variants": [
                "0xe77c646d",
                "0xe77c646d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf029748d",
            "selector": "0xf029748d",
            "calldata_variants": [
                "0xf029748d",
                "0xf029748d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xcbb94359",
            "selector": "0xcbb94359",
            "calldata_variants": [
                "0xcbb94359",
                "0xcbb943590000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd505accf",
            "selector": "0xd505accf",
            "calldata_variants": [
                "0xd505accf",
                "0xd505accf0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 6470,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 7795,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 8977,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 6,
    "guards_detected": []
}
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": 15
}