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

Analysis Run

019ba9bc-ec96-7188-951c-3581e543fed0

complete
Chain ID
1
Address
Block Number
Created
Sat, Jan 10, 2026 9:08 PM
Review Summary

What survived the funnel

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

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

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
37825 artifact.fetch complete 1 / 3 3 months ago
37826 proxy.resolve complete 1 / 3 3 months ago
37827 tool.cast_disasm complete 1 / 3 3 months ago
37828 analysis.bundle complete 1 / 3 3 months ago
37829 capability.graph complete 1 / 3 3 months ago
37830 detector.run complete 1 / 3 3 months ago
37831 validation.fork complete 1 / 3 3 months ago
37931 report.consolidate complete 1 / 6 3 months ago

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: no not_proxy
Implementation:
Verified Source: yes
Proxy evidence
{
    "status": "not_proxy"
}

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 6
Findings
2
No findings?
no
Summary
Two issues: external token/ownership transfers are assumed to succeed without validation, which can desync fee accounting or allow ETH-for-token trades to complete without actual token transfers if a non‑reverting or misconfigured external contract/token is used.
View stdout
{"no_findings":false,"summary":"Two issues: external token/ownership transfers are assumed to succeed without validation, which can desync fee accounting or allow ETH-for-token trades to complete without actual token transfers if a non‑reverting or misconfigured external contract/token is used.","findings":[{"severity":"medium","category":"other","title":"Ownership transfer calls assume success; misconfigured or non‑reverting PoolOwners can break trade invariants","exploit_scenario":"If `poolOwners` is an EOA or a contract that returns success without actually transferring ownership (or fails silently), a seller can create a sell order without escrowed ownership and a buyer can fill it, paying ETH while receiving no LP tokens; similarly, in buy orders the seller can receive ETH while `sendOwnershipFrom` does not transfer tokens. Because no success signal is checked, the trade completes in OwnersExchange regardless.","recommendation":"Require a trusted PoolOwners implementation and validate transfer success (e.g., have `sendOwnership`/`sendOwnershipFrom` return a boolean and `require` it, or verify ownership balances before/after). Consider checking `extcodesize` for a contract address on deployment.","evidence":"External calls to `poolOwners.sendOwnership` / `sendOwnershipFrom` are made without any success validation.","locations":["contracts/Contract.sol:338","contracts/Contract.sol:426","contracts/Contract.sol:455","contracts/Contract.sol:490"]},{"severity":"low","category":"other","title":"Unchecked ERC20 `transfer` return values can desync fee accounting","exploit_scenario":"If `feeToken` is a non‑standard ERC20 that returns `false` instead of reverting on failure, `withdrawFeeToken` and fee settlement paths will still decrement `feeBalances`/`totalFees` even though the transfer did not occur. This can under‑collateralize user fee balances and allow `withdrawDistributedToPoolOwners` to sweep tokens that should remain reserved.","recommendation":"Use `require(feeToken.transfer(...))` or a SafeERC20 wrapper to ensure transfers succeed, and revert if they fail.","evidence":"Multiple `feeToken.transfer(...)` calls are executed without checking the return value.","locations":["contracts/Contract.sol:287","contracts/Contract.sol:461","contracts/Contract.sol:496","contracts/Contract.sol:508"]}]}
View stderr
OpenAI Codex v0.77.0 (research preview)
--------
workdir: /tmp/codex-ff0dbuys
model: gpt-5.2-codex
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: auto
session id: 019baa09-4e84-7521-8ecf-0e3e1150ea9c
--------
user
You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.

Scope rules:
- You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party Solidity sources in this workspace.
- Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
- If there are only dependency files and no first-party sources, set no_findings=true and explain in summary.

Output MUST be valid JSON matching the provided schema.
- If you find nothing meaningful: set no_findings=true and findings=[].
- Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.

Output constraints (IMPORTANT):
- severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
- category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
Keep summary short and concrete.
mcp startup: no servers

thinking
**Preparing to read AUDIT_BUNDLE.txt**
exec
/bin/bash -lc ls in /tmp/codex-ff0dbuys succeeded in 6ms:
AUDIT_BUNDLE.txt
codex-output-schema.json
contracts
exec
/bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-ff0dbuys succeeded in 6ms:
This file concatenates the full contents of first-party Solidity sources for auditing.
Do not treat dependency code under lib/ or @openzeppelin/ as first-party.

================================================================================
FILE: contracts/Contract.sol
================================================================================
// File: contracts/interface/PoolOwnersInterface.sol

pragma solidity ^0.4.23;

contract PoolOwnersInterface {

    bool public distributionActive;

    function sendOwnership(address _receiver, uint256 _amount) public;
    function sendOwnershipFrom(address _owner, address _receiver, uint256 _amount) public;
    function getOwnerTokens(address _owner) public view returns (uint);
    function getOwnerPercentage(address _owner) public view returns (uint);

}



thinking
**Analyzing contract for vulnerabilities**

I’m auditing a single contract file with a focus on potential security issues like reentrancy and unchecked external calls. There is a lot to unpack—especially around interactions with feeToken (an ERC677 token), order fee accounting involving totalFees and feeBalances, and external calls to poolOwners that may allow reentrancy. I’m checking how state changes and external calls sequence to see if double-spending, stuck funds, or inconsistent accounting could occur. There are subtle points about unchecked transfer return values, fee locking logic with an unused lockedFees variable, and orderBook indexing that I want to understand thoroughly to identify any exploitable risks or bugs. Let’s explore these areas carefully!
thinking
**Continuing deep vulnerability assessment**

I’m further scrutinizing unchecked token transfer return values that could lead to accounting mismatches and excess token withdrawals to poolOwners. The sequence of external calls and state changes around sending ETH and transferring ownership tokens may allow inconsistent states if failures don’t revert properly. I’m examining reentrancy potential from ERC677 token callbacks, order indexing intricacies, fee accounting with unused lockedFees, and possible denial-of-service risks from transfer gas limits. There’s also concern about cases where poolOwners might be an externally owned account instead of a contract, which could allow orders to register without actual token transfers, causing serious inconsistencies. This audit is quite involved but these detailed checks are essential to understand the contract’s robustness!
thinking
**Preparing detailed audit findings and JSON report**

I’m organizing the identified risks into clear audit findings, focusing on unchecked token transfer return values and unverified external ownership transfers that could lead to accounting inconsistencies or lost assets if nonstandard tokens or misconfigured poolOwners contracts are used. I’m also planning to gather precise line numbers from the code using search commands to cite evidence in the JSON report. This structured approach will make the findings actionable and help clarify severity and locations for the user’s benefit.
exec
/bin/bash -lc 'rg -n "withdrawFeeToken|fillSellOrder|fillBuyOrder|withdrawDistributedToPoolOwners|sendOwnershipFrom|sendOwnership" AUDIT_BUNDLE.txt' in /tmp/codex-ff0dbuys succeeded in 35ms:
15:    function sendOwnership(address _receiver, uint256 _amount) public;
16:    function sendOwnershipFrom(address _owner, address _receiver, uint256 _amount) public;
285:    function withdrawFeeToken(uint256 _value) public {
344:        poolOwners.sendOwnershipFrom(msg.sender, this, _amount);
432:        poolOwners.sendOwnership(msg.sender, amount);
442:    function fillSellOrder(uint _key) public payable {
461:        poolOwners.sendOwnership(msg.sender, amount);
478:    function fillBuyOrder(uint _key) public {
496:        poolOwners.sendOwnershipFrom(msg.sender, addressRegistry[(order << 2) >> 224], amount);
511:    function withdrawDistributedToPoolOwners() public {

thinking
**Choosing line numbers source**
exec
/bin/bash -lc 'rg -n "withdrawFeeToken|fillSellOrder|fillBuyOrder|withdrawDistributedToPoolOwners|sendOwnershipFrom|sendOwnership" contracts/Contract.sol' in /tmp/codex-ff0dbuys succeeded in 10ms:
9:    function sendOwnership(address _receiver, uint256 _amount) public;
10:    function sendOwnershipFrom(address _owner, address _receiver, uint256 _amount) public;
279:    function withdrawFeeToken(uint256 _value) public {
338:        poolOwners.sendOwnershipFrom(msg.sender, this, _amount);
426:        poolOwners.sendOwnership(msg.sender, amount);
436:    function fillSellOrder(uint _key) public payable {
455:        poolOwners.sendOwnership(msg.sender, amount);
472:    function fillBuyOrder(uint _key) public {
490:        poolOwners.sendOwnershipFrom(msg.sender, addressRegistry[(order << 2) >> 224], amount);
505:    function withdrawDistributedToPoolOwners() public {

thinking
**Locating transfer function lines**
exec
/bin/bash -lc "rg -n \"feeToken\\.transfer\" contracts/Contract.sol" in /tmp/codex-ff0dbuys succeeded in 6ms:
287:        feeToken.transfer(msg.sender, _value);
461:            feeToken.transfer(poolOwners, totalFee);
496:            feeToken.transfer(poolOwners, totalFee);
508:        feeToken.transfer(poolOwners, balance);

thinking
**Formulating findings on external call risks**
codex
{"no_findings":false,"summary":"Two issues: external token/ownership transfers are assumed to succeed without validation, which can desync fee accounting or allow ETH-for-token trades to complete without actual token transfers if a non‑reverting or misconfigured external contract/token is used.","findings":[{"severity":"medium","category":"other","title":"Ownership transfer calls assume success; misconfigured or non‑reverting PoolOwners can break trade invariants","exploit_scenario":"If `poolOwners` is an EOA or a contract that returns success without actually transferring ownership (or fails silently), a seller can create a sell order without escrowed ownership and a buyer can fill it, paying ETH while receiving no LP tokens; similarly, in buy orders the seller can receive ETH while `sendOwnershipFrom` does not transfer tokens. Because no success signal is checked, the trade completes in OwnersExchange regardless.","recommendation":"Require a trusted PoolOwners implementation and validate transfer success (e.g., have `sendOwnership`/`sendOwnershipFrom` return a boolean and `require` it, or verify ownership balances before/after). Consider checking `extcodesize` for a contract address on deployment.","evidence":"External calls to `poolOwners.sendOwnership` / `sendOwnershipFrom` are made without any success validation.","locations":["contracts/Contract.sol:338","contracts/Contract.sol:426","contracts/Contract.sol:455","contracts/Contract.sol:490"]},{"severity":"low","category":"other","title":"Unchecked ERC20 `transfer` return values can desync fee accounting","exploit_scenario":"If `feeToken` is a non‑standard ERC20 that returns `false` instead of reverting on failure, `withdrawFeeToken` and fee settlement paths will still decrement `feeBalances`/`totalFees` even though the transfer did not occur. This can under‑collateralize user fee balances and allow `withdrawDistributedToPoolOwners` to sweep tokens that should remain reserved.","recommendation":"Use `require(feeToken.transfer(...))` or a SafeERC20 wrapper to ensure transfers succeed, and revert if they fail.","evidence":"Multiple `feeToken.transfer(...)` calls are executed without checking the return value.","locations":["contracts/Contract.sol:287","contracts/Contract.sol:461","contracts/Contract.sol:496","contracts/Contract.sol:508"]}]}
tokens used
27,882
Metadata
{
    "codex": {
        "ran_at": "2026-01-10T22:35:07.389514+00:00",
        "returncode": 0
    },
    "project": {
        "mode": "source",
        "file_count": 1,
        "import_count": 0,
        "first_party_contracts_count": 1
    },
    "summary": "Two issues: external token/ownership transfers are assumed to succeed without validation, which can desync fee accounting or allow ETH-for-token trades to complete without actual token transfers if a non\u2011reverting or misconfigured external contract/token is used.",
    "raw_final": {
        "summary": "Two issues: external token/ownership transfers are assumed to succeed without validation, which can desync fee accounting or allow ETH-for-token trades to complete without actual token transfers if a non\u2011reverting or misconfigured external contract/token is used.",
        "findings": [
            {
                "title": "Ownership transfer calls assume success; misconfigured or non\u2011reverting PoolOwners can break trade invariants",
                "category": "other",
                "evidence": "External calls to `poolOwners.sendOwnership` / `sendOwnershipFrom` are made without any success validation.",
                "severity": "medium",
                "locations": [
                    "contracts/Contract.sol:338",
                    "contracts/Contract.sol:426",
                    "contracts/Contract.sol:455",
                    "contracts/Contract.sol:490"
                ],
                "recommendation": "Require a trusted PoolOwners implementation and validate transfer success (e.g., have `sendOwnership`/`sendOwnershipFrom` return a boolean and `require` it, or verify ownership balances before/after). Consider checking `extcodesize` for a contract address on deployment.",
                "exploit_scenario": "If `poolOwners` is an EOA or a contract that returns success without actually transferring ownership (or fails silently), a seller can create a sell order without escrowed ownership and a buyer can fill it, paying ETH while receiving no LP tokens; similarly, in buy orders the seller can receive ETH while `sendOwnershipFrom` does not transfer tokens. Because no success signal is checked, the trade completes in OwnersExchange regardless."
            },
            {
                "title": "Unchecked ERC20 `transfer` return values can desync fee accounting",
                "category": "other",
                "evidence": "Multiple `feeToken.transfer(...)` calls are executed without checking the return value.",
                "severity": "low",
                "locations": [
                    "contracts/Contract.sol:287",
                    "contracts/Contract.sol:461",
                    "contracts/Contract.sol:496",
                    "contracts/Contract.sol:508"
                ],
                "recommendation": "Use `require(feeToken.transfer(...))` or a SafeERC20 wrapper to ensure transfers succeed, and revert if they fail.",
                "exploit_scenario": "If `feeToken` is a non\u2011standard ERC20 that returns `false` instead of reverting on failure, `withdrawFeeToken` and fee settlement paths will still decrement `feeBalances`/`totalFees` even though the transfer did not occur. This can under\u2011collateralize user fee balances and allow `withdrawDistributedToPoolOwners` to sweep tokens that should remain reserved."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
10
EXT*/BALANCE
8
Total opcodes
5925
Flags
heavy_ext_balance_usage
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x0150
0000000c: JUMPI
0000000d: PUSH4 0xffffffff
00000012: PUSH1 0xe0
00000014: PUSH1 0x02
00000016: EXP
00000017: PUSH1 0x00
00000019: CALLDATALOAD
0000001a: DIV
0000001b: AND
0000001c: PUSH4 0x0559c114
00000021: DUP2
00000022: EQ
00000023: PUSH2 0x0155
00000026: JUMPI
00000027: DUP1
00000028: PUSH4 0x05e0141d
0000002d: EQ
0000002e: PUSH2 0x016f
00000031: JUMPI
00000032: DUP1
00000033: PUSH4 0x13114a9d
00000038: EQ
00000039: PUSH2 0x0270
0000003c: JUMPI
0000003d: DUP1
0000003e: PUSH4 0x169c4733
00000043: EQ
00000044: PUSH2 0x0297
00000047: JUMPI
00000048: DUP1
00000049: PUSH4 0x1a3352c1
0000004e: EQ
0000004f: PUSH2 0x02b2
00000052: JUMPI
00000053: DUP1
00000054: PUSH4 0x1c76e2b2
00000059: EQ
0000005a: PUSH2 0x02c7
0000005d: JUMPI
0000005e: DUP1
0000005f: PUSH4 0x2453ffa8
00000064: EQ
00000065: PUSH2 0x02df
00000068: JUMPI
00000069: DUP1
0000006a: PUSH4 0x3acde419
0000006f: EQ
00000070: PUSH2 0x02f4
00000073: JUMPI
00000074: DUP1
00000075: PUSH4 0x3d48f3af
0000007a: EQ
0000007b: PUSH2 0x030f
0000007e: JUMPI
0000007f: DUP1
00000080: PUSH4 0x410ac68c
00000085: EQ
00000086: PUSH2 0x032a
00000089: JUMPI
0000008a: DUP1
0000008b: PUSH4 0x416c334d
00000090: EQ
00000091: PUSH2 0x033f
00000094: JUMPI
00000095: DUP1
00000096: PUSH4 0x647846a5
0000009b: EQ
0000009c: PUSH2 0x0354
0000009f: JUMPI
000000a0: DUP1
000000a1: PUSH4 0x69fe0e2d
000000a6: EQ
000000a7: PUSH2 0x0385
000000aa: JUMPI
000000ab: DUP1
000000ac: PUSH4 0x8cbcca07
000000b1: EQ
000000b2: PUSH2 0x039d
000000b5: JUMPI
000000b6: DUP1
000000b7: PUSH4 0x8da5cb5b
000000bc: EQ
000000bd: PUSH2 0x03b5
000000c0: JUMPI
000000c1: DUP1
000000c2: PUSH4 0x9049681c
000000c7: EQ
000000c8: PUSH2 0x03ca
000000cb: JUMPI
000000cc: DUP1
000000cd: PUSH4 0x935c1fb1
000000d2: EQ
000000d3: PUSH2 0x03d8
000000d6: JUMPI
000000d7: DUP1
000000d8: PUSH4 0xa4c0ed36
000000dd: EQ
000000de: PUSH2 0x03f9
000000e1: JUMPI
000000e2: DUP1
000000e3: PUSH4 0xaa072d0c
000000e8: EQ
000000e9: PUSH2 0x0462
000000ec: JUMPI
000000ed: DUP1
000000ee: PUSH4 0xc375fcfa
000000f3: EQ
000000f4: PUSH2 0x047a
000000f7: JUMPI
000000f8: DUP1
000000f9: PUSH4 0xc3aea22e
000000fe: EQ
000000ff: PUSH2 0x048f
00000102: JUMPI
00000103: DUP1
00000104: PUSH4 0xd05bb517
00000109: EQ
0000010a: PUSH2 0x049a
0000010d: JUMPI
0000010e: DUP1
0000010f: PUSH4 0xd09ef241
00000114: EQ
00000115: PUSH2 0x04b2
00000118: JUMPI
00000119: DUP1
0000011a: PUSH4 0xddca3f43
0000011f: EQ
00000120: PUSH2 0x050a
00000123: JUMPI
00000124: DUP1
00000125: PUSH4 0xdef8ecf4
0000012a: EQ
0000012b: PUSH2 0x051f
0000012e: JUMPI
0000012f: DUP1
00000130: PUSH4 0xe96716ee
00000135: EQ
00000136: PUSH2 0x0537
00000139: JUMPI
0000013a: DUP1
0000013b: PUSH4 0xf2fde38b
00000140: EQ
00000141: PUSH2 0x054f
00000144: JUMPI
00000145: DUP1
00000146: PUSH4 0xf8b42f78
0000014b: EQ
0000014c: PUSH2 0x0570
0000014f: JUMPI
00000150: JUMPDEST
00000151: PUSH1 0x00
00000153: DUP1
00000154: REVERT
00000155: JUMPDEST
00000156: CALLVALUE
00000157: DUP1
00000158: ISZERO
00000159: PUSH2 0x0161
0000015c: JUMPI
0000015d: PUSH1 0x00
0000015f: DUP1
00000160: REVERT
00000161: JUMPDEST
00000162: POP
00000163: PUSH2 0x016d
00000166: PUSH1 0x04
00000168: CALLDATALOAD
00000169: PUSH2 0x05c1
0000016c: JUMP
0000016d: JUMPDEST
0000016e: STOP
0000016f: JUMPDEST
00000170: CALLVALUE
00000171: DUP1
00000172: ISZERO
00000173: PUSH2 0x017b
00000176: JUMPI
00000177: PUSH1 0x00
00000179: DUP1
0000017a: REVERT
0000017b: JUMPDEST
0000017c: POP
0000017d: PUSH2 0x0187
00000180: PUSH1 0x04
00000182: CALLDATALOAD
00000183: PUSH2 0x0878
00000186: JUMP
00000187: JUMPDEST
00000188: PUSH1 0x40
0000018a: MLOAD
0000018b: DUP1
0000018c: DUP7
0000018d: PUSH2 0x0140
00000190: DUP1
00000191: DUP4
00000192: DUP4
00000193: PUSH1 0x00
00000195: JUMPDEST
00000196: DUP4
00000197: DUP2
00000198: LT
00000199: ISZERO
0000019a: PUSH2 0x01ad
0000019d: JUMPI
0000019e: DUP2
0000019f: DUP2
000001a0: ADD
000001a1: MLOAD
000001a2: DUP4
000001a3: DUP3
000001a4: ADD
000001a5: MSTORE
000001a6: PUSH1 0x20
000001a8: ADD
000001a9: PUSH2 0x0195
000001ac: JUMP
000001ad: JUMPDEST
000001ae: POP
000001af: POP
000001b0: POP
000001b1: POP
000001b2: SWAP1
000001b3: POP
000001b4: ADD
000001b5: DUP6
000001b6: PUSH1 0x0a
000001b8: PUSH1 0x20
000001ba: MUL
000001bb: DUP1
000001bc: DUP4
000001bd: DUP4
000001be: PUSH1 0x00
000001c0: JUMPDEST
000001c1: DUP4
000001c2: DUP2
000001c3: LT
000001c4: ISZERO
000001c5: PUSH2 0x01d8
000001c8: JUMPI
000001c9: DUP2
000001ca: DUP2
000001cb: ADD
000001cc: MLOAD
000001cd: DUP4
000001ce: DUP3
000001cf: ADD
000001d0: MSTORE
000001d1: PUSH1 0x20
000001d3: ADD
000001d4: PUSH2 0x01c0
000001d7: JUMP
000001d8: JUMPDEST
000001d9: POP
000001da: POP
000001db: POP
000001dc: POP
000001dd: SWAP1
000001de: POP
000001df: ADD
000001e0: DUP5
000001e1: PUSH1 0x0a
000001e3: PUSH1 0x20
000001e5: MUL
000001e6: DUP1
000001e7: DUP4
000001e8: DUP4
000001e9: PUSH1 0x00
000001eb: JUMPDEST
000001ec: DUP4
000001ed: DUP2
000001ee: LT
000001ef: ISZERO
000001f0: PUSH2 0x0203
000001f3: JUMPI
000001f4: DUP2
000001f5: DUP2
000001f6: ADD
000001f7: MLOAD
000001f8: DUP4
000001f9: DUP3
000001fa: ADD
000001fb: MSTORE
000001fc: PUSH1 0x20
000001fe: ADD
000001ff: PUSH2 0x01eb
00000202: JUMP
00000203: JUMPDEST
00000204: POP
00000205: POP
00000206: POP
00000207: POP
00000208: SWAP1
00000209: POP
0000020a: ADD
0000020b: DUP4
0000020c: PUSH1 0x0a
0000020e: PUSH1 0x20
00000210: MUL
00000211: DUP1
00000212: DUP4
00000213: DUP4
00000214: PUSH1 0x00
00000216: JUMPDEST
00000217: DUP4
00000218: DUP2
00000219: LT
0000021a: ISZERO
0000021b: PUSH2 0x022e
0000021e: JUMPI
0000021f: DUP2
00000220: DUP2
00000221: ADD
00000222: MLOAD
00000223: DUP4
00000224: DUP3
00000225: ADD
00000226: MSTORE
00000227: PUSH1 0x20
00000229: ADD
0000022a: PUSH2 0x0216
0000022d: JUMP
0000022e: JUMPDEST
0000022f: POP
00000230: POP
00000231: POP
00000232: POP
00000233: SWAP1
00000234: POP
00000235: ADD
00000236: DUP3
00000237: PUSH1 0x0a
00000239: PUSH1 0x20
0000023b: MUL
0000023c: DUP1
0000023d: DUP4
0000023e: DUP4
0000023f: PUSH1 0x00
00000241: JUMPDEST
00000242: DUP4
00000243: DUP2
00000244: LT
00000245: ISZERO
00000246: PUSH2 0x0259
00000249: JUMPI
0000024a: DUP2
0000024b: DUP2
0000024c: ADD
0000024d: MLOAD
0000024e: DUP4
0000024f: DUP3
00000250: ADD
00000251: MSTORE
00000252: PUSH1 0x20
00000254: ADD
00000255: PUSH2 0x0241
00000258: JUMP
00000259: JUMPDEST
0000025a: POP
0000025b: POP
0000025c: POP
0000025d: POP
0000025e: SWAP1
0000025f: POP
00000260: ADD
00000261: SWAP6
00000262: POP
00000263: POP
00000264: POP
00000265: POP
00000266: POP
00000267: POP
00000268: PUSH1 0x40
0000026a: MLOAD
0000026b: DUP1
0000026c: SWAP2
0000026d: SUB
0000026e: SWAP1
0000026f: RETURN
00000270: JUMPDEST
00000271: CALLVALUE
00000272: DUP1
00000273: ISZERO
00000274: PUSH2 0x027c
00000277: JUMPI
00000278: PUSH1 0x00
0000027a: DUP1
0000027b: REVERT
0000027c: JUMPDEST
0000027d: POP
0000027e: PUSH2 0x0285
00000281: PUSH2 0x09db
00000284: JUMP
00000285: JUMPDEST
00000286: PUSH1 0x40
00000288: DUP1
00000289: MLOAD
0000028a: SWAP2
0000028b: DUP3
0000028c: MSTORE
0000028d: MLOAD
0000028e: SWAP1
0000028f: DUP2
00000290: SWAP1
00000291: SUB
00000292: PUSH1 0x20
00000294: ADD
00000295: SWAP1
00000296: RETURN
00000297: JUMPDEST
00000298: CALLVALUE
00000299: DUP1
0000029a: ISZERO
0000029b: PUSH2 0x02a3
0000029e: JUMPI
0000029f: PUSH1 0x00
000002a1: DUP1
000002a2: REVERT
000002a3: JUMPDEST
000002a4: POP
000002a5: PUSH2 0x0285
000002a8: PUSH1 0x04
000002aa: CALLDATALOAD
000002ab: PUSH1 0x24
000002ad: CALLDATALOAD
000002ae: PUSH2 0x09e1
000002b1: JUMP
000002b2: JUMPDEST
000002b3: CALLVALUE
000002b4: DUP1
000002b5: ISZERO
000002b6: PUSH2 0x02be
000002b9: JUMPI
000002ba: PUSH1 0x00
000002bc: DUP1
000002bd: REVERT
000002be: JUMPDEST
000002bf: POP
000002c0: PUSH2 0x0285
000002c3: PUSH2 0x0a33
000002c6: JUMP
000002c7: JUMPDEST
000002c8: CALLVALUE
000002c9: DUP1
000002ca: ISZERO
000002cb: PUSH2 0x02d3
000002ce: JUMPI
000002cf: PUSH1 0x00
000002d1: DUP1
000002d2: REVERT
000002d3: JUMPDEST
000002d4: POP
000002d5: PUSH2 0x0285
000002d8: PUSH1 0x04
000002da: CALLDATALOAD
000002db: PUSH2 0x0a45
000002de: JUMP
000002df: JUMPDEST
000002e0: CALLVALUE
000002e1: DUP1
000002e2: ISZERO
000002e3: PUSH2 0x02eb
000002e6: JUMPI
000002e7: PUSH1 0x00
000002e9: DUP1
000002ea: REVERT
000002eb: JUMPDEST
000002ec: POP
000002ed: PUSH2 0x0285
000002f0: PUSH2 0x0a79
000002f3: JUMP
000002f4: JUMPDEST
000002f5: CALLVALUE
000002f6: DUP1
000002f7: ISZERO
000002f8: PUSH2 0x0300
000002fb: JUMPI
000002fc: PUSH1 0x00
000002fe: DUP1
000002ff: REVERT
00000300: JUMPDEST
00000301: POP
00000302: PUSH2 0x016d
00000305: PUSH1 0x04
00000307: CALLDATALOAD
00000308: PUSH1 0x24
0000030a: CALLDATALOAD
0000030b: PUSH2 0x0a7f
0000030e: JUMP
0000030f: JUMPDEST
00000310: CALLVALUE
00000311: DUP1
00000312: ISZERO
00000313: PUSH2 0x031b
00000316: JUMPI
00000317: PUSH1 0x00
00000319: DUP1
0000031a: REVERT
0000031b: JUMPDEST
0000031c: POP
0000031d: PUSH2 0x0285
00000320: PUSH1 0x04
00000322: CALLDATALOAD
00000323: PUSH1 0x24
00000325: CALLDATALOAD
00000326: PUSH2 0x0df1
00000329: JUMP
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 0x0285
0000033b: PUSH2 0x0e0f
0000033e: JUMP
0000033f: JUMPDEST
00000340: CALLVALUE
00000341: DUP1
00000342: ISZERO
00000343: PUSH2 0x034b
00000346: JUMPI
00000347: PUSH1 0x00
00000349: DUP1
0000034a: REVERT
0000034b: JUMPDEST
0000034c: POP
0000034d: PUSH2 0x016d
00000350: PUSH2 0x0e15
00000353: JUMP
00000354: JUMPDEST
00000355: CALLVALUE
00000356: DUP1
00000357: ISZERO
00000358: PUSH2 0x0360
0000035b: JUMPI
0000035c: PUSH1 0x00
0000035e: DUP1
0000035f: REVERT
00000360: JUMPDEST
00000361: POP
00000362: PUSH2 0x0369
00000365: PUSH2 0x0fde
00000368: JUMP
00000369: JUMPDEST
0000036a: PUSH1 0x40
0000036c: DUP1
0000036d: MLOAD
0000036e: PUSH1 0x01
00000370: PUSH1 0xa0
00000372: PUSH1 0x02
00000374: EXP
00000375: SUB
00000376: SWAP1
00000377: SWAP3
00000378: AND
00000379: DUP3
0000037a: MSTORE
0000037b: MLOAD
0000037c: SWAP1
0000037d: DUP2
0000037e: SWAP1
0000037f: SUB
00000380: PUSH1 0x20
00000382: ADD
00000383: SWAP1
00000384: RETURN
00000385: JUMPDEST
00000386: CALLVALUE
00000387: DUP1
00000388: ISZERO
00000389: PUSH2 0x0391
0000038c: JUMPI
0000038d: PUSH1 0x00
0000038f: DUP1
00000390: REVERT
00000391: JUMPDEST
00000392: POP
00000393: PUSH2 0x016d
00000396: PUSH1 0x04
00000398: CALLDATALOAD
00000399: PUSH2 0x0fed
0000039c: JUMP
0000039d: JUMPDEST
0000039e: CALLVALUE
0000039f: DUP1
000003a0: ISZERO
000003a1: PUSH2 0x03a9
000003a4: JUMPI
000003a5: PUSH1 0x00
000003a7: DUP1
000003a8: REVERT
000003a9: JUMPDEST
000003aa: POP
000003ab: PUSH2 0x016d
000003ae: PUSH1 0x04
000003b0: CALLDATALOAD
000003b1: PUSH2 0x10b4
000003b4: JUMP
000003b5: JUMPDEST
000003b6: CALLVALUE
000003b7: DUP1
000003b8: ISZERO
000003b9: PUSH2 0x03c1
000003bc: JUMPI
000003bd: PUSH1 0x00
000003bf: DUP1
000003c0: REVERT
000003c1: JUMPDEST
000003c2: POP
000003c3: PUSH2 0x0369
000003c6: PUSH2 0x1517
000003c9: JUMP
000003ca: JUMPDEST
000003cb: PUSH2 0x016d
000003ce: PUSH1 0x04
000003d0: CALLDATALOAD
000003d1: PUSH1 0x24
000003d3: CALLDATALOAD
000003d4: PUSH2 0x1526
000003d7: JUMP
000003d8: JUMPDEST
000003d9: CALLVALUE
000003da: DUP1
000003db: ISZERO
000003dc: PUSH2 0x03e4
000003df: JUMPI
000003e0: PUSH1 0x00
000003e2: DUP1
000003e3: REVERT
000003e4: JUMPDEST
000003e5: POP
000003e6: PUSH2 0x0285
000003e9: PUSH1 0x01
000003eb: PUSH1 0xa0
000003ed: PUSH1 0x02
000003ef: EXP
000003f0: SUB
000003f1: PUSH1 0x04
000003f3: CALLDATALOAD
000003f4: AND
000003f5: PUSH2 0x190c
000003f8: JUMP
000003f9: JUMPDEST
000003fa: CALLVALUE
000003fb: DUP1
000003fc: ISZERO
000003fd: PUSH2 0x0405
00000400: JUMPI
00000401: PUSH1 0x00
00000403: DUP1
00000404: REVERT
00000405: JUMPDEST
00000406: POP
00000407: PUSH1 0x40
00000409: DUP1
0000040a: MLOAD
0000040b: PUSH1 0x20
0000040d: PUSH1 0x04
0000040f: PUSH1 0x44
00000411: CALLDATALOAD
00000412: DUP2
00000413: DUP2
00000414: ADD
00000415: CALLDATALOAD
00000416: PUSH1 0x1f
00000418: DUP2
00000419: ADD
0000041a: DUP5
0000041b: SWAP1
0000041c: DIV
0000041d: DUP5
0000041e: MUL
0000041f: DUP6
00000420: ADD
00000421: DUP5
00000422: ADD
00000423: SWAP1
00000424: SWAP6
00000425: MSTORE
00000426: DUP5
00000427: DUP5
00000428: MSTORE
00000429: PUSH2 0x016d
0000042c: SWAP5
0000042d: DUP3
0000042e: CALLDATALOAD
0000042f: PUSH1 0x01
00000431: PUSH1 0xa0
00000433: PUSH1 0x02
00000435: EXP
00000436: SUB
00000437: AND
00000438: SWAP5
00000439: PUSH1 0x24
0000043b: DUP1
0000043c: CALLDATALOAD
0000043d: SWAP6
0000043e: CALLDATASIZE
0000043f: SWAP6
00000440: SWAP5
00000441: PUSH1 0x64
00000443: SWAP5
00000444: SWAP3
00000445: ADD
00000446: SWAP2
00000447: SWAP1
00000448: DUP2
00000449: SWAP1
0000044a: DUP5
0000044b: ADD
0000044c: DUP4
0000044d: DUP3
0000044e: DUP1
0000044f: DUP3
00000450: DUP5
00000451: CALLDATACOPY
00000452: POP
00000453: SWAP5
00000454: SWAP8
00000455: POP
00000456: PUSH2 0x191e
00000459: SWAP7
0000045a: POP
0000045b: POP
0000045c: POP
0000045d: POP
0000045e: POP
0000045f: POP
00000460: POP
00000461: JUMP
00000462: JUMPDEST
00000463: CALLVALUE
00000464: DUP1
00000465: ISZERO
00000466: PUSH2 0x046e
00000469: JUMPI
0000046a: PUSH1 0x00
0000046c: DUP1
0000046d: REVERT
0000046e: JUMPDEST
0000046f: POP
00000470: PUSH2 0x0285
00000473: PUSH1 0x04
00000475: CALLDATALOAD
00000476: PUSH2 0x19d9
00000479: JUMP
0000047a: JUMPDEST
0000047b: CALLVALUE
0000047c: DUP1
0000047d: ISZERO
0000047e: PUSH2 0x0486
00000481: JUMPI
00000482: PUSH1 0x00
00000484: DUP1
00000485: REVERT
00000486: JUMPDEST
00000487: POP
00000488: PUSH2 0x0369
0000048b: PUSH2 0x19eb
0000048e: JUMP
0000048f: JUMPDEST
00000490: PUSH2 0x016d
00000493: PUSH1 0x04
00000495: CALLDATALOAD
00000496: PUSH2 0x19fa
00000499: JUMP
0000049a: JUMPDEST
0000049b: CALLVALUE
0000049c: DUP1
0000049d: ISZERO
0000049e: PUSH2 0x04a6
000004a1: JUMPI
000004a2: PUSH1 0x00
000004a4: DUP1
000004a5: REVERT
000004a6: JUMPDEST
000004a7: POP
000004a8: PUSH2 0x016d
000004ab: PUSH1 0x04
000004ad: CALLDATALOAD
000004ae: PUSH2 0x1d27
000004b1: JUMP
000004b2: JUMPDEST
000004b3: CALLVALUE
000004b4: DUP1
000004b5: ISZERO
000004b6: PUSH2 0x04be
000004b9: JUMPI
000004ba: PUSH1 0x00
000004bc: DUP1
000004bd: REVERT
000004be: JUMPDEST
000004bf: POP
000004c0: PUSH2 0x04ca
000004c3: PUSH1 0x04
000004c5: CALLDATALOAD
000004c6: PUSH2 0x1ec7
000004c9: JUMP
000004ca: JUMPDEST
000004cb: PUSH1 0x40
000004cd: MLOAD
000004ce: DUP1
000004cf: DUP6
000004d0: PUSH1 0x02
000004d2: DUP2
000004d3: GT
000004d4: ISZERO
000004d5: PUSH2 0x04da
000004d8: JUMPI
000004d9: INVALID
000004da: JUMPDEST
000004db: PUSH1 0xff
000004dd: AND
000004de: DUP2
000004df: MSTORE
000004e0: PUSH1 0x01
000004e2: PUSH1 0xa0
000004e4: PUSH1 0x02
000004e6: EXP
000004e7: SUB
000004e8: SWAP1
000004e9: SWAP5
000004ea: AND
000004eb: PUSH1 0x20
000004ed: DUP6
000004ee: ADD
000004ef: MSTORE
000004f0: POP
000004f1: PUSH1 0x40
000004f3: DUP1
000004f4: DUP5
000004f5: ADD
000004f6: SWAP3
000004f7: SWAP1
000004f8: SWAP3
000004f9: MSTORE
000004fa: PUSH1 0x60
000004fc: DUP4
000004fd: ADD
000004fe: MSTORE
000004ff: MLOAD
00000500: SWAP1
00000501: DUP2
00000502: SWAP1
00000503: SUB
00000504: PUSH1 0x80
00000506: ADD
00000507: SWAP2
00000508: POP
00000509: RETURN
0000050a: JUMPDEST
0000050b: CALLVALUE
0000050c: DUP1
0000050d: ISZERO
0000050e: PUSH2 0x0516
00000511: JUMPI
00000512: PUSH1 0x00
00000514: DUP1
00000515: REVERT
00000516: JUMPDEST
00000517: POP
00000518: PUSH2 0x0285
0000051b: PUSH2 0x1f43
0000051e: JUMP
0000051f: JUMPDEST
00000520: CALLVALUE
00000521: DUP1
00000522: ISZERO
00000523: PUSH2 0x052b
00000526: JUMPI
00000527: PUSH1 0x00
00000529: DUP1
0000052a: REVERT
0000052b: JUMPDEST
0000052c: POP
0000052d: PUSH2 0x016d
00000530: PUSH1 0x04
00000532: CALLDATALOAD
00000533: PUSH2 0x1f49
00000536: JUMP
00000537: JUMPDEST
00000538: CALLVALUE
00000539: DUP1
0000053a: ISZERO
0000053b: PUSH2 0x0543
0000053e: JUMPI
0000053f: PUSH1 0x00
00000541: DUP1
00000542: REVERT
00000543: JUMPDEST
00000544: POP
00000545: PUSH2 0x0369
00000548: PUSH1 0x04
0000054a: CALLDATALOAD
0000054b: PUSH2 0x21c2
0000054e: JUMP
0000054f: JUMPDEST
00000550: CALLVALUE
00000551: DUP1
00000552: ISZERO
00000553: PUSH2 0x055b
00000556: JUMPI
00000557: PUSH1 0x00
00000559: DUP1
0000055a: REVERT
0000055b: JUMPDEST
0000055c: POP
0000055d: PUSH2 0x016d
00000560: PUSH1 0x01
00000562: PUSH1 0xa0
00000564: PUSH1 0x02
00000566: EXP
00000567: SUB
00000568: PUSH1 0x04
0000056a: CALLDATALOAD
0000056b: AND
0000056c: PUSH2 0x21ea
0000056f: JUMP
00000570: JUMPDEST
00000571: CALLVALUE
00000572: DUP1
00000573: ISZERO
00000574: PUSH2 0x057c
00000577: JUMPI
00000578: PUSH1 0x00
0000057a: DUP1
0000057b: REVERT
0000057c: JUMPDEST
0000057d: POP
0000057e: PUSH2 0x0588
00000581: PUSH1 0x04
00000583: CALLDATALOAD
00000584: PUSH2 0x22c9
00000587: JUMP
00000588: JUMPDEST
00000589: PUSH1 0x40
0000058b: MLOAD
0000058c: DUP1
0000058d: DUP3
0000058e: PUSH2 0x0140
00000591: DUP1
00000592: DUP4
00000593: DUP4
00000594: PUSH1 0x00
00000596: JUMPDEST
00000597: DUP4
00000598: DUP2
00000599: LT
0000059a: ISZERO
0000059b: PUSH2 0x05ae
0000059e: JUMPI
0000059f: DUP2
000005a0: DUP2
000005a1: ADD
000005a2: MLOAD
000005a3: DUP4
000005a4: DUP3
000005a5: ADD
000005a6: MSTORE
000005a7: PUSH1 0x20
000005a9: ADD
000005aa: PUSH2 0x0596
000005ad: JUMP
000005ae: JUMPDEST
000005af: POP
000005b0: POP
000005b1: POP
000005b2: POP
000005b3: SWAP1
000005b4: POP
000005b5: ADD
000005b6: SWAP2
000005b7: POP
000005b8: POP
000005b9: PUSH1 0x40
000005bb: MLOAD
000005bc: DUP1
000005bd: SWAP2
000005be: SUB
000005bf: SWAP1
000005c0: RETURN
000005c1: JUMPDEST
000005c2: PUSH1 0x00
000005c4: DUP1
000005c5: DUP1
000005c6: DUP1
000005c7: DUP1
000005c8: DUP1
000005c9: PUSH2 0x05d9
000005cc: PUSH1 0x08
000005ce: DUP9
000005cf: PUSH4 0xffffffff
000005d4: PUSH2 0x233b
000005d7: AND
000005d8: JUMP
000005d9: JUMPDEST
000005da: SWAP6
000005db: POP
000005dc: PUSH1 0xfe
000005de: PUSH1 0x02
000005e0: EXP
000005e1: DUP7
000005e2: DIV
000005e3: PUSH1 0x02
000005e5: DUP2
000005e6: GT
000005e7: ISZERO
000005e8: PUSH2 0x05ed
000005eb: JUMPI
000005ec: INVALID
000005ed: JUMPDEST
000005ee: SWAP5
000005ef: POP
000005f0: PUSH1 0x02
000005f2: DUP6
000005f3: PUSH1 0x02
000005f5: DUP2
000005f6: GT
000005f7: ISZERO
000005f8: PUSH2 0x05fd
000005fb: JUMPI
000005fc: INVALID
000005fd: JUMPDEST
000005fe: EQ
000005ff: PUSH2 0x0652
00000602: JUMPI
00000603: PUSH1 0x40
00000605: DUP1
00000606: MLOAD
00000607: PUSH1 0xe5
00000609: PUSH1 0x02
0000060b: EXP
0000060c: PUSH3 0x461bcd
00000610: MUL
00000611: DUP2
00000612: MSTORE
00000613: PUSH1 0x20
00000615: PUSH1 0x04
00000617: DUP3
00000618: ADD
00000619: MSTORE
0000061a: PUSH1 0x18
0000061c: PUSH1 0x24
0000061e: DUP3
0000061f: ADD
00000620: MSTORE
00000621: PUSH32 0x54686973206973206e6f7420612073656c6c206f726465720000000000000000
00000642: PUSH1 0x44
00000644: DUP3
00000645: ADD
00000646: MSTORE
00000647: SWAP1
00000648: MLOAD
00000649: SWAP1
0000064a: DUP2
0000064b: SWAP1
0000064c: SUB
0000064d: PUSH1 0x64
0000064f: ADD
00000650: SWAP1
00000651: REVERT
00000652: JUMPDEST
00000653: CALLER
00000654: PUSH1 0x00
00000656: SWAP1
00000657: DUP2
00000658: MSTORE
00000659: PUSH1 0x07
0000065b: PUSH1 0x20
0000065d: MSTORE
0000065e: PUSH1 0x40
00000660: SWAP1
00000661: KECCAK256
00000662: SLOAD
00000663: SWAP4
00000664: POP
00000665: PUSH1 0xe0
00000667: PUSH1 0x02
00000669: EXP
0000066a: PUSH1 0x04
0000066c: DUP8
0000066d: MUL
0000066e: DIV
0000066f: DUP5
00000670: EQ
00000671: PUSH2 0x06e9
00000674: JUMPI
00000675: PUSH1 0x40
00000677: DUP1
00000678: MLOAD
00000679: PUSH1 0xe5
0000067b: PUSH1 0x02
0000067d: EXP
0000067e: PUSH3 0x461bcd
00000682: MUL
00000683: DUP2
00000684: MSTORE
00000685: PUSH1 0x20
00000687: PUSH1 0x04
00000689: DUP3
0000068a: ADD
0000068b: MSTORE
0000068c: PUSH1 0x24
0000068e: DUP1
0000068f: DUP3
00000690: ADD
00000691: MSTORE
00000692: PUSH32 0x596f7520617265206e6f74207468652073656e646572206f662074686973206f
000006b3: PUSH1 0x44
000006b5: DUP3
000006b6: ADD
000006b7: MSTORE
000006b8: PUSH32 0x7264657200000000000000000000000000000000000000000000000000000000
000006d9: PUSH1 0x64
000006db: DUP3
000006dc: ADD
000006dd: MSTORE
000006de: SWAP1
000006df: MLOAD
000006e0: SWAP1
000006e1: DUP2
000006e2: SWAP1
000006e3: SUB
000006e4: PUSH1 0x84
000006e6: ADD
000006e7: SWAP1
000006e8: REVERT
000006e9: JUMPDEST
000006ea: PUSH1 0x91
000006ec: PUSH1 0x02
000006ee: EXP
000006ef: PUSH5 0x0400000000
000006f5: DUP8
000006f6: MUL
000006f7: DUP2
000006f8: SWAP1
000006f9: DIV
000006fa: SWAP4
000006fb: POP
000006fc: DUP1
000006fd: DUP8
000006fe: MUL
000006ff: DIV
00000700: SWAP2
00000701: POP
00000702: PUSH2 0x0712
00000705: PUSH1 0x08
00000707: DUP9
00000708: PUSH4 0xffffffff
0000070d: PUSH2 0x2351
00000710: AND
00000711: JUMP
00000712: JUMPDEST
00000713: ISZERO
00000714: ISZERO
00000715: PUSH2 0x0756
00000718: JUMPI
00000719: PUSH1 0x40
0000071b: DUP1
0000071c: MLOAD
0000071d: PUSH1 0xe5
0000071f: PUSH1 0x02
00000721: EXP
00000722: PUSH3 0x461bcd
00000726: MUL
00000727: DUP2
00000728: MSTORE
00000729: PUSH1 0x20
0000072b: PUSH1 0x04
0000072d: DUP3
0000072e: ADD
0000072f: MSTORE
00000730: PUSH1 0x11
00000732: PUSH1 0x24
00000734: DUP3
00000735: ADD
00000736: MSTORE
00000737: PUSH1 0x00
00000739: DUP1
0000073a: MLOAD
0000073b: PUSH1 0x20
0000073d: PUSH2 0x26cb
00000740: DUP4
00000741: CODECOPY
00000742: DUP2
00000743: MLOAD
00000744: SWAP2
00000745: MSTORE
00000746: PUSH1 0x44
00000748: DUP3
00000749: ADD
0000074a: MSTORE
0000074b: SWAP1
0000074c: MLOAD
0000074d: SWAP1
0000074e: DUP2
0000074f: SWAP1
00000750: SUB
00000751: PUSH1 0x64
00000753: ADD
00000754: SWAP1
00000755: REVERT
00000756: JUMPDEST
00000757: PUSH2 0x0760
0000075a: DUP4
0000075b: DUP4
0000075c: PUSH2 0x09e1
0000075f: JUMP
00000760: JUMPDEST
00000761: SWAP1
00000762: POP
00000763: PUSH1 0x00
00000765: DUP2
00000766: GT
00000767: ISZERO
00000768: PUSH2 0x079a
0000076b: JUMPI
0000076c: PUSH1 0x00
0000076e: DUP5
0000076f: DUP2
00000770: MSTORE
00000771: PUSH1 0x05
00000773: PUSH1 0x20
00000775: MSTORE
00000776: PUSH1 0x40
00000778: SWAP1
00000779: KECCAK256
0000077a: SLOAD
0000077b: PUSH2 0x078a
0000077e: SWAP1
0000077f: DUP3
00000780: PUSH4 0xffffffff
00000785: PUSH2 0x2432
00000788: AND
00000789: JUMP
0000078a: JUMPDEST
0000078b: PUSH1 0x00
0000078d: DUP6
0000078e: DUP2
0000078f: MSTORE
00000790: PUSH1 0x05
00000792: PUSH1 0x20
00000794: MSTORE
00000795: PUSH1 0x40
00000797: SWAP1
00000798: KECCAK256
00000799: SSTORE
0000079a: JUMPDEST
0000079b: PUSH1 0x0a
0000079d: SLOAD
0000079e: PUSH1 0x40
000007a0: DUP1
000007a1: MLOAD
000007a2: PUSH32 0xe2d0d51900000000000000000000000000000000000000000000000000000000
000007c3: DUP2
000007c4: MSTORE
000007c5: CALLER
000007c6: PUSH1 0x04
000007c8: DUP3
000007c9: ADD
000007ca: MSTORE
000007cb: PUSH1 0x24
000007cd: DUP2
000007ce: ADD
000007cf: DUP6
000007d0: SWAP1
000007d1: MSTORE
000007d2: SWAP1
000007d3: MLOAD
000007d4: PUSH1 0x01
000007d6: PUSH1 0xa0
000007d8: PUSH1 0x02
000007da: EXP
000007db: SUB
000007dc: SWAP1
000007dd: SWAP3
000007de: AND
000007df: SWAP2
000007e0: PUSH4 0xe2d0d519
000007e5: SWAP2
000007e6: PUSH1 0x44
000007e8: DUP1
000007e9: DUP3
000007ea: ADD
000007eb: SWAP3
000007ec: PUSH1 0x00
000007ee: SWAP3
000007ef: SWAP1
000007f0: SWAP2
000007f1: SWAP1
000007f2: DUP3
000007f3: SWAP1
000007f4: SUB
000007f5: ADD
000007f6: DUP2
000007f7: DUP4
000007f8: DUP8
000007f9: DUP1
000007fa: EXTCODESIZE
000007fb: ISZERO
000007fc: DUP1
000007fd: ISZERO
000007fe: PUSH2 0x0806
00000801: JUMPI
00000802: PUSH1 0x00
00000804: DUP1
00000805: REVERT
00000806: JUMPDEST
00000807: POP
00000808: GAS
00000809: CALL
0000080a: ISZERO
0000080b: DUP1
0000080c: ISZERO
0000080d: PUSH2 0x081a
00000810: JUMPI
00000811: RETURNDATASIZE
00000812: PUSH1 0x00
00000814: DUP1
00000815: RETURNDATACOPY
00000816: RETURNDATASIZE
00000817: PUSH1 0x00
00000819: REVERT
0000081a: JUMPDEST
0000081b: POP
0000081c: POP
0000081d: POP
0000081e: POP
0000081f: CALLER
00000820: PUSH1 0x01
00000822: PUSH1 0xa0
00000824: PUSH1 0x02
00000826: EXP
00000827: SUB
00000828: AND
00000829: DUP6
0000082a: PUSH1 0x02
0000082c: DUP2
0000082d: GT
0000082e: ISZERO
0000082f: PUSH2 0x0834
00000832: JUMPI
00000833: INVALID
00000834: JUMPDEST
00000835: PUSH1 0x40
00000837: DUP1
00000838: MLOAD
00000839: DUP7
0000083a: DUP2
0000083b: MSTORE
0000083c: PUSH1 0x20
0000083e: DUP2
0000083f: ADD
00000840: DUP7
00000841: SWAP1
00000842: MSTORE
00000843: DUP2
00000844: MLOAD
00000845: PUSH32 0xe2f99b27ce844edd7e242a1056afe8f0a4f5c28c45b300a13fec9aff87d82bff
00000866: SWAP3
00000867: SWAP2
00000868: DUP2
00000869: SWAP1
0000086a: SUB
0000086b: SWAP1
0000086c: SWAP2
0000086d: ADD
0000086e: SWAP1
0000086f: LOG3
00000870: POP
00000871: POP
00000872: POP
00000873: POP
00000874: POP
00000875: POP
00000876: POP
00000877: JUMP
00000878: JUMPDEST
00000879: PUSH2 0x0880
0000087c: PUSH2 0x264d
0000087f: JUMP
00000880: JUMPDEST
00000881: PUSH2 0x0888
00000884: PUSH2 0x264d
00000887: JUMP
00000888: JUMPDEST
00000889: PUSH2 0x0890
0000088c: PUSH2 0x264d
0000088f: JUMP
00000890: JUMPDEST
00000891: PUSH2 0x0898
00000894: PUSH2 0x264d
00000897: JUMP
00000898: JUMPDEST
00000899: PUSH2 0x08a0
0000089c: PUSH2 0x264d
0000089f: JUMP
000008a0: JUMPDEST
000008a1: PUSH1 0x00
000008a3: DUP1
000008a4: DUP1
000008a5: JUMPDEST
000008a6: PUSH1 0x0a
000008a8: DUP4
000008a9: LT
000008aa: ISZERO
000008ab: PUSH2 0x09cf
000008ae: JUMPI
000008af: DUP3
000008b0: DUP10
000008b1: ADD
000008b2: PUSH2 0x08bb
000008b5: PUSH1 0x08
000008b7: PUSH2 0x2441
000008ba: JUMP
000008bb: JUMPDEST
000008bc: EQ
000008bd: ISZERO
000008be: PUSH2 0x08c6
000008c1: JUMPI
000008c2: PUSH2 0x09cf
000008c5: JUMP
000008c6: JUMPDEST
000008c7: PUSH2 0x08d9
000008ca: PUSH1 0x08
000008cc: DUP11
000008cd: DUP6
000008ce: ADD
000008cf: PUSH4 0xffffffff
000008d4: PUSH2 0x2448
000008d7: AND
000008d8: JUMP
000008d9: JUMPDEST
000008da: SWAP2
000008db: POP
000008dc: DUP2
000008dd: DUP9
000008de: DUP5
000008df: PUSH1 0x0a
000008e1: DUP2
000008e2: LT
000008e3: PUSH2 0x08e8
000008e6: JUMPI
000008e7: INVALID
000008e8: JUMPDEST
000008e9: PUSH1 0x20
000008eb: MUL
000008ec: ADD
000008ed: MSTORE
000008ee: PUSH2 0x08fe
000008f1: PUSH1 0x08
000008f3: DUP4
000008f4: PUSH4 0xffffffff
000008f9: PUSH2 0x233b
000008fc: AND
000008fd: JUMP
000008fe: JUMPDEST
000008ff: PUSH1 0x06
00000901: DUP1
00000902: SLOAD
00000903: SWAP2
00000904: SWAP3
00000905: POP
00000906: SWAP1
00000907: PUSH1 0xe0
00000909: PUSH1 0x02
0000090b: EXP
0000090c: PUSH1 0x04
0000090e: DUP5
0000090f: MUL
00000910: DIV
00000911: SWAP1
00000912: DUP2
00000913: LT
00000914: PUSH2 0x0919
00000917: JUMPI
00000918: INVALID
00000919: JUMPDEST
0000091a: PUSH1 0x00
0000091c: SWAP2
0000091d: DUP3
0000091e: MSTORE
0000091f: PUSH1 0x20
00000921: SWAP1
00000922: SWAP2
00000923: KECCAK256
00000924: ADD
00000925: SLOAD
00000926: PUSH1 0x01
00000928: PUSH1 0xa0
0000092a: PUSH1 0x02
0000092c: EXP
0000092d: SUB
0000092e: AND
0000092f: DUP8
00000930: DUP5
00000931: PUSH1 0x0a
00000933: DUP2
00000934: LT
00000935: PUSH2 0x093a
00000938: JUMPI
00000939: INVALID
0000093a: JUMPDEST
0000093b: PUSH1 0x01
0000093d: PUSH1 0xa0
0000093f: PUSH1 0x02
00000941: EXP
00000942: SUB
00000943: SWAP1
00000944: SWAP3
00000945: AND
00000946: PUSH1 0x20
00000948: SWAP3
00000949: SWAP1
0000094a: SWAP3
0000094b: MUL
0000094c: ADD
0000094d: MSTORE
0000094e: PUSH1 0xfe
00000950: PUSH1 0x02
00000952: EXP
00000953: DUP2
00000954: DIV
00000955: PUSH1 0x02
00000957: DUP2
00000958: GT
00000959: ISZERO
0000095a: PUSH2 0x095f
0000095d: JUMPI
0000095e: INVALID
0000095f: JUMPDEST
00000960: DUP7
00000961: DUP5
00000962: PUSH1 0x0a
00000964: DUP2
00000965: LT
00000966: PUSH2 0x096b
00000969: JUMPI
0000096a: INVALID
0000096b: JUMPDEST
0000096c: PUSH1 0x20
0000096e: MUL
0000096f: ADD
00000970: SWAP1
00000971: PUSH1 0x02
00000973: DUP2
00000974: GT
00000975: ISZERO
00000976: PUSH2 0x097b
00000979: JUMPI
0000097a: INVALID
0000097b: JUMPDEST
0000097c: SWAP1
0000097d: DUP2
0000097e: PUSH1 0x02
00000980: DUP2
00000981: GT
00000982: ISZERO
00000983: PUSH2 0x0988
00000986: JUMPI
00000987: INVALID
00000988: JUMPDEST
00000989: SWAP1
0000098a: MSTORE
0000098b: POP
0000098c: PUSH1 0x91
0000098e: PUSH1 0x02
00000990: EXP
00000991: PUSH5 0x0400000000
00000997: DUP3
00000998: MUL
00000999: DIV
0000099a: DUP6
0000099b: DUP5
0000099c: PUSH1 0x0a
0000099e: DUP2
0000099f: LT
000009a0: PUSH2 0x09a5
000009a3: JUMPI
000009a4: INVALID
000009a5: JUMPDEST
000009a6: PUSH1 0x20
000009a8: MUL
000009a9: ADD
000009aa: MSTORE
000009ab: PUSH1 0x91
000009ad: PUSH1 0x02
000009af: EXP
000009b0: DUP1
000009b1: DUP3
000009b2: MUL
000009b3: DIV
000009b4: DUP5
000009b5: DUP5
000009b6: PUSH1 0x0a
000009b8: DUP2
000009b9: LT
000009ba: PUSH2 0x09bf
000009bd: JUMPI
000009be: INVALID
000009bf: JUMPDEST
000009c0: PUSH1 0x20
000009c2: MUL
000009c3: ADD
000009c4: MSTORE
000009c5: PUSH1 0x01
000009c7: SWAP1
000009c8: SWAP3
000009c9: ADD
000009ca: SWAP2
000009cb: PUSH2 0x08a5
000009ce: JUMP
000009cf: JUMPDEST
000009d0: POP
000009d1: POP
000009d2: POP
000009d3: SWAP2
000009d4: SWAP4
000009d5: SWAP6
000009d6: SWAP1
000009d7: SWAP3
000009d8: SWAP5
000009d9: POP
000009da: JUMP
000009db: JUMPDEST
000009dc: PUSH1 0x04
000009de: SLOAD
000009df: DUP2
000009e0: JUMP
000009e1: JUMPDEST
000009e2: PUSH1 0x00
000009e4: PUSH2 0x0a2c
000009e7: PUSH8 0x0de0b6b3a7640000
000009f0: PUSH2 0x0a14
000009f3: PUSH1 0x02
000009f5: SLOAD
000009f6: PUSH2 0x0a20
000009f9: PUSH8 0x0de0b6b3a7640000
00000a02: PUSH2 0x0a14
00000a05: DUP9
00000a06: DUP11
00000a07: PUSH2 0x246e
00000a0a: SWAP1
00000a0b: SWAP2
00000a0c: SWAP1
00000a0d: PUSH4 0xffffffff
00000a12: AND
00000a13: JUMP
00000a14: JUMPDEST
00000a15: SWAP1
00000a16: PUSH4 0xffffffff
00000a1b: PUSH2 0x2492
00000a1e: AND
00000a1f: JUMP
00000a20: JUMPDEST
00000a21: SWAP1
00000a22: PUSH4 0xffffffff
00000a27: PUSH2 0x246e
00000a2a: AND
00000a2b: JUMP
00000a2c: JUMPDEST
00000a2d: SWAP4
00000a2e: SWAP3
00000a2f: POP
00000a30: POP
00000a31: POP
00000a32: JUMP
00000a33: JUMPDEST
00000a34: PUSH1 0x00
00000a36: PUSH2 0x0a3f
00000a39: PUSH1 0x08
00000a3b: PUSH2 0x2441
00000a3e: JUMP
00000a3f: JUMPDEST
00000a40: SWAP1
00000a41: POP
00000a42: JUMPDEST
00000a43: SWAP1
00000a44: JUMP
00000a45: JUMPDEST
00000a46: PUSH1 0x00
00000a48: PUSH2 0x0a51
00000a4b: PUSH1 0x08
00000a4d: PUSH2 0x2441
00000a50: JUMP
00000a51: JUMPDEST
00000a52: DUP3
00000a53: LT
00000a54: ISZERO
00000a55: PUSH2 0x0a70
00000a58: JUMPI
00000a59: PUSH2 0x0a69
00000a5c: PUSH1 0x08
00000a5e: DUP4
00000a5f: PUSH4 0xffffffff
00000a64: PUSH2 0x2448
00000a67: AND
00000a68: JUMP
00000a69: JUMPDEST
00000a6a: SWAP1
00000a6b: POP
00000a6c: PUSH2 0x0a74
00000a6f: JUMP
00000a70: JUMPDEST
00000a71: POP
00000a72: PUSH1 0x00
00000a74: JUMPDEST
00000a75: SWAP2
00000a76: SWAP1
00000a77: POP
00000a78: JUMP
00000a79: JUMPDEST
00000a7a: PUSH1 0x01
00000a7c: SLOAD
00000a7d: DUP2
00000a7e: JUMP
00000a7f: JUMPDEST
00000a80: PUSH1 0x00
00000a82: DUP1
00000a83: PUSH2 0x0a8b
00000a86: DUP5
00000a87: PUSH2 0x24a9
00000a8a: JUMP
00000a8b: JUMPDEST
00000a8c: DUP1
00000a8d: ISZERO
00000a8e: PUSH2 0x0a9b
00000a91: JUMPI
00000a92: POP
00000a93: PUSH2 0x0a9b
00000a96: DUP4
00000a97: PUSH2 0x24a9
00000a9a: JUMP
00000a9b: JUMPDEST
00000a9c: ISZERO
00000a9d: ISZERO
00000a9e: PUSH2 0x0af1
00000aa1: JUMPI
00000aa2: PUSH1 0x40
00000aa4: DUP1
00000aa5: MLOAD
00000aa6: PUSH1 0xe5
00000aa8: PUSH1 0x02
00000aaa: EXP
00000aab: PUSH3 0x461bcd
00000aaf: MUL
00000ab0: DUP2
00000ab1: MSTORE
00000ab2: PUSH1 0x20
00000ab4: PUSH1 0x04
00000ab6: DUP3
00000ab7: ADD
00000ab8: DUP2
00000ab9: SWAP1
00000aba: MSTORE
00000abb: PUSH1 0x24
00000abd: DUP3
00000abe: ADD
00000abf: MSTORE
00000ac0: PUSH32 0x5072696365206f7220616d6f756e742065786365656473203131312062697473
00000ae1: PUSH1 0x44
00000ae3: DUP3
00000ae4: ADD
00000ae5: MSTORE
00000ae6: SWAP1
00000ae7: MLOAD
00000ae8: SWAP1
00000ae9: DUP2
00000aea: SWAP1
00000aeb: SUB
00000aec: PUSH1 0x64
00000aee: ADD
00000aef: SWAP1
00000af0: REVERT
00000af1: JUMPDEST
00000af2: PUSH1 0x00
00000af4: DUP5
00000af5: GT
00000af6: PUSH2 0x0b49
00000af9: JUMPI
00000afa: PUSH1 0x40
00000afc: DUP1
00000afd: MLOAD
00000afe: PUSH1 0xe5
00000b00: PUSH1 0x02
00000b02: EXP
00000b03: PUSH3 0x461bcd
00000b07: MUL
00000b08: DUP2
00000b09: MSTORE
00000b0a: PUSH1 0x20
00000b0c: PUSH1 0x04
00000b0e: DUP3
00000b0f: ADD
00000b10: DUP2
00000b11: SWAP1
00000b12: MSTORE
00000b13: PUSH1 0x24
00000b15: DUP3
00000b16: ADD
00000b17: MSTORE
00000b18: PUSH32 0x5072696365206e6565647320746f2062652067726561746572207468616e2030
00000b39: PUSH1 0x44
00000b3b: DUP3
00000b3c: ADD
00000b3d: MSTORE
00000b3e: SWAP1
00000b3f: MLOAD
00000b40: SWAP1
00000b41: DUP2
00000b42: SWAP1
00000b43: SUB
00000b44: PUSH1 0x64
00000b46: ADD
00000b47: SWAP1
00000b48: REVERT
00000b49: JUMPDEST
00000b4a: PUSH1 0x00
00000b4c: DUP4
00000b4d: GT
00000b4e: PUSH2 0x0bc7
00000b51: JUMPI
00000b52: PUSH1 0x40
00000b54: DUP1
00000b55: MLOAD
00000b56: PUSH1 0xe5
00000b58: PUSH1 0x02
00000b5a: EXP
00000b5b: PUSH3 0x461bcd
00000b5f: MUL
00000b60: DUP2
00000b61: MSTORE
00000b62: PUSH1 0x20
00000b64: PUSH1 0x04
00000b66: DUP3
00000b67: ADD
00000b68: MSTORE
00000b69: PUSH1 0x21
00000b6b: PUSH1 0x24
00000b6d: DUP3
00000b6e: ADD
00000b6f: MSTORE
00000b70: PUSH32 0x416d6f756e74206e6565647320746f2062652067726561746572207468616e20
00000b91: PUSH1 0x44
00000b93: DUP3
00000b94: ADD
00000b95: MSTORE
00000b96: PUSH32 0x3000000000000000000000000000000000000000000000000000000000000000
00000bb7: PUSH1 0x64
00000bb9: DUP3
00000bba: ADD
00000bbb: MSTORE
00000bbc: SWAP1
00000bbd: MLOAD
00000bbe: SWAP1
00000bbf: DUP2
00000bc0: SWAP1
00000bc1: SUB
00000bc2: PUSH1 0x84
00000bc4: ADD
00000bc5: SWAP1
00000bc6: REVERT
00000bc7: JUMPDEST
00000bc8: PUSH2 0x0bd1
00000bcb: DUP5
00000bcc: DUP5
00000bcd: PUSH2 0x09e1
00000bd0: JUMP
00000bd1: JUMPDEST
00000bd2: SWAP2
00000bd3: POP
00000bd4: PUSH2 0x0bdc
00000bd7: CALLER
00000bd8: PUSH2 0x24bc
00000bdb: JUMP
00000bdc: JUMPDEST
00000bdd: SWAP1
00000bde: POP
00000bdf: PUSH1 0x00
00000be1: DUP3
00000be2: GT
00000be3: ISZERO
00000be4: PUSH2 0x0c90
00000be7: JUMPI
00000be8: PUSH1 0x00
00000bea: DUP2
00000beb: DUP2
00000bec: MSTORE
00000bed: PUSH1 0x05
00000bef: PUSH1 0x20
00000bf1: MSTORE
00000bf2: PUSH1 0x40
00000bf4: SWAP1
00000bf5: KECCAK256
00000bf6: SLOAD
00000bf7: DUP3
00000bf8: GT
00000bf9: ISZERO
00000bfa: PUSH2 0x0c61
00000bfd: JUMPI
00000bfe: PUSH1 0x40
00000c00: DUP1
00000c01: MLOAD
00000c02: PUSH1 0xe5
00000c04: PUSH1 0x02
00000c06: EXP
00000c07: PUSH3 0x461bcd
00000c0b: MUL
00000c0c: DUP2
00000c0d: MSTORE
00000c0e: PUSH1 0x20
00000c10: PUSH1 0x04
00000c12: DUP3
00000c13: ADD
00000c14: MSTORE
00000c15: PUSH1 0x29
00000c17: PUSH1 0x24
00000c19: DUP3
00000c1a: ADD
00000c1b: MSTORE
00000c1c: PUSH1 0x00
00000c1e: DUP1
00000c1f: MLOAD
00000c20: PUSH1 0x20
00000c22: PUSH2 0x26ab
00000c25: DUP4
00000c26: CODECOPY
00000c27: DUP2
00000c28: MLOAD
00000c29: SWAP2
00000c2a: MSTORE
00000c2b: PUSH1 0x44
00000c2d: DUP3
00000c2e: ADD
00000c2f: MSTORE
00000c30: PUSH32 0x20666f7220666565730000000000000000000000000000000000000000000000
00000c51: PUSH1 0x64
00000c53: DUP3
00000c54: ADD
00000c55: MSTORE
00000c56: SWAP1
00000c57: MLOAD
00000c58: SWAP1
00000c59: DUP2
00000c5a: SWAP1
00000c5b: SUB
00000c5c: PUSH1 0x84
00000c5e: ADD
00000c5f: SWAP1
00000c60: REVERT
00000c61: JUMPDEST
00000c62: PUSH1 0x00
00000c64: DUP2
00000c65: DUP2
00000c66: MSTORE
00000c67: PUSH1 0x05
00000c69: PUSH1 0x20
00000c6b: MSTORE
00000c6c: PUSH1 0x40
00000c6e: SWAP1
00000c6f: KECCAK256
00000c70: SLOAD
00000c71: PUSH2 0x0c80
00000c74: SWAP1
00000c75: DUP4
00000c76: PUSH4 0xffffffff
00000c7b: PUSH2 0x25cc
00000c7e: AND
00000c7f: JUMP
00000c80: JUMPDEST
00000c81: PUSH1 0x00
00000c83: DUP3
00000c84: DUP2
00000c85: MSTORE
00000c86: PUSH1 0x05
00000c88: PUSH1 0x20
00000c8a: MSTORE
00000c8b: PUSH1 0x40
00000c8d: SWAP1
00000c8e: KECCAK256
00000c8f: SSTORE
00000c90: JUMPDEST
00000c91: PUSH1 0x0a
00000c93: SLOAD
00000c94: PUSH1 0x40
00000c96: DUP1
00000c97: MLOAD
00000c98: PUSH32 0xde995b9000000000000000000000000000000000000000000000000000000000
00000cb9: DUP2
00000cba: MSTORE
00000cbb: CALLER
00000cbc: PUSH1 0x04
00000cbe: DUP3
00000cbf: ADD
00000cc0: MSTORE
00000cc1: ADDRESS
00000cc2: PUSH1 0x24
00000cc4: DUP3
00000cc5: ADD
00000cc6: MSTORE
00000cc7: PUSH1 0x44
00000cc9: DUP2
00000cca: ADD
00000ccb: DUP7
00000ccc: SWAP1
00000ccd: MSTORE
00000cce: SWAP1
00000ccf: MLOAD
00000cd0: PUSH1 0x01
00000cd2: PUSH1 0xa0
00000cd4: PUSH1 0x02
00000cd6: EXP
00000cd7: SUB
00000cd8: SWAP1
00000cd9: SWAP3
00000cda: AND
00000cdb: SWAP2
00000cdc: PUSH4 0xde995b90
00000ce1: SWAP2
00000ce2: PUSH1 0x64
00000ce4: DUP1
00000ce5: DUP3
00000ce6: ADD
00000ce7: SWAP3
00000ce8: PUSH1 0x00
00000cea: SWAP3
00000ceb: SWAP1
00000cec: SWAP2
00000ced: SWAP1
00000cee: DUP3
00000cef: SWAP1
00000cf0: SUB
00000cf1: ADD
00000cf2: DUP2
00000cf3: DUP4
00000cf4: DUP8
00000cf5: DUP1
00000cf6: EXTCODESIZE
00000cf7: ISZERO
00000cf8: DUP1
00000cf9: ISZERO
00000cfa: PUSH2 0x0d02
00000cfd: JUMPI
00000cfe: PUSH1 0x00
00000d00: DUP1
00000d01: REVERT
00000d02: JUMPDEST
00000d03: POP
00000d04: GAS
00000d05: CALL
00000d06: ISZERO
00000d07: DUP1
00000d08: ISZERO
00000d09: PUSH2 0x0d16
00000d0c: JUMPI
00000d0d: RETURNDATASIZE
00000d0e: PUSH1 0x00
00000d10: DUP1
00000d11: RETURNDATACOPY
00000d12: RETURNDATASIZE
00000d13: PUSH1 0x00
00000d15: REVERT
00000d16: JUMPDEST
00000d17: POP
00000d18: POP
00000d19: PUSH1 0x01
00000d1b: SLOAD
00000d1c: PUSH2 0x0d50
00000d1f: SWAP3
00000d20: POP
00000d21: SWAP1
00000d22: POP
00000d23: DUP5
00000d24: PUSH1 0x6f
00000d26: DUP8
00000d27: DUP2
00000d28: DUP7
00000d29: PUSH1 0x20
00000d2b: PUSH1 0x02
00000d2d: JUMPDEST
00000d2e: SWAP1
00000d2f: PUSH1 0x02
00000d31: EXP
00000d32: MUL
00000d33: OR
00000d34: SWAP1
00000d35: PUSH1 0x02
00000d37: EXP
00000d38: MUL
00000d39: OR
00000d3a: SWAP1
00000d3b: PUSH1 0x02
00000d3d: EXP
00000d3e: MUL
00000d3f: OR
00000d40: PUSH1 0x08
00000d42: PUSH2 0x25de
00000d45: SWAP1
00000d46: SWAP3
00000d47: SWAP2
00000d48: SWAP1
00000d49: PUSH4 0xffffffff
00000d4e: AND
00000d4f: JUMP
00000d50: JUMPDEST
00000d51: ISZERO
00000d52: PUSH2 0x0da5
00000d55: JUMPI
00000d56: PUSH1 0x40
00000d58: DUP1
00000d59: MLOAD
00000d5a: PUSH1 0xe5
00000d5c: PUSH1 0x02
00000d5e: EXP
00000d5f: PUSH3 0x461bcd
00000d63: MUL
00000d64: DUP2
00000d65: MSTORE
00000d66: PUSH1 0x20
00000d68: PUSH1 0x04
00000d6a: DUP3
00000d6b: ADD
00000d6c: MSTORE
00000d6d: PUSH1 0x18
00000d6f: PUSH1 0x24
00000d71: DUP3
00000d72: ADD
00000d73: MSTORE
00000d74: PUSH32 0x4d6170207265706c6163656d656e742064657465637465640000000000000000
00000d95: PUSH1 0x44
00000d97: DUP3
00000d98: ADD
00000d99: MSTORE
00000d9a: SWAP1
00000d9b: MLOAD
00000d9c: SWAP1
00000d9d: DUP2
00000d9e: SWAP1
00000d9f: SUB
00000da0: PUSH1 0x64
00000da2: ADD
00000da3: SWAP1
00000da4: REVERT
00000da5: JUMPDEST
00000da6: PUSH1 0x01
00000da8: DUP1
00000da9: SLOAD
00000daa: DUP2
00000dab: ADD
00000dac: SWAP1
00000dad: SSTORE
00000dae: CALLER
00000daf: PUSH1 0x02
00000db1: PUSH1 0x40
00000db3: DUP1
00000db4: MLOAD
00000db5: DUP8
00000db6: DUP2
00000db7: MSTORE
00000db8: PUSH1 0x20
00000dba: DUP2
00000dbb: ADD
00000dbc: DUP8
00000dbd: SWAP1
00000dbe: MSTORE
00000dbf: DUP2
00000dc0: MLOAD
00000dc1: PUSH32 0xbcbf7b263490465b953d70010fc8e536abfdfbcae985c547ef7e2ada714af4ff
00000de2: SWAP3
00000de3: SWAP2
00000de4: DUP2
00000de5: SWAP1
00000de6: SUB
00000de7: SWAP1
00000de8: SWAP2
00000de9: ADD
00000dea: SWAP1
00000deb: LOG3
00000dec: POP
00000ded: POP
00000dee: POP
00000def: POP
00000df0: JUMP
00000df1: JUMPDEST
00000df2: PUSH1 0x00
00000df4: PUSH2 0x0a2c
00000df7: PUSH8 0x0de0b6b3a7640000
00000e00: PUSH2 0x0a14
00000e03: DUP6
00000e04: DUP6
00000e05: PUSH4 0xffffffff
00000e0a: PUSH2 0x246e
00000e0d: AND
00000e0e: JUMP
00000e0f: JUMPDEST
00000e10: PUSH1 0x03
00000e12: SLOAD
00000e13: DUP2
00000e14: JUMP
00000e15: JUMPDEST
00000e16: PUSH1 0x04
00000e18: DUP1
00000e19: SLOAD
00000e1a: PUSH1 0x0b
00000e1c: SLOAD
00000e1d: PUSH1 0x40
00000e1f: DUP1
00000e20: MLOAD
00000e21: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000
00000e42: DUP2
00000e43: MSTORE
00000e44: ADDRESS
00000e45: SWAP5
00000e46: DUP2
00000e47: ADD
00000e48: SWAP5
00000e49: SWAP1
00000e4a: SWAP5
00000e4b: MSTORE
00000e4c: MLOAD
00000e4d: PUSH1 0x00
00000e4f: SWAP4
00000e50: PUSH2 0x0ebd
00000e53: SWAP4
00000e54: SWAP3
00000e55: PUSH1 0x01
00000e57: PUSH1 0xa0
00000e59: PUSH1 0x02
00000e5b: EXP
00000e5c: SUB
00000e5d: AND
00000e5e: SWAP2
00000e5f: PUSH4 0x70a08231
00000e64: SWAP2
00000e65: PUSH1 0x24
00000e67: DUP1
00000e68: DUP3
00000e69: ADD
00000e6a: SWAP3
00000e6b: PUSH1 0x20
00000e6d: SWAP3
00000e6e: SWAP1
00000e6f: SWAP2
00000e70: SWAP1
00000e71: DUP3
00000e72: SWAP1
00000e73: SUB
00000e74: ADD
00000e75: DUP2
00000e76: DUP10
00000e77: DUP8
00000e78: DUP1
00000e79: EXTCODESIZE
00000e7a: ISZERO
00000e7b: DUP1
00000e7c: ISZERO
00000e7d: PUSH2 0x0e85
00000e80: JUMPI
00000e81: PUSH1 0x00
00000e83: DUP1
00000e84: REVERT
00000e85: JUMPDEST
00000e86: POP
00000e87: GAS
00000e88: CALL
00000e89: ISZERO
00000e8a: DUP1
00000e8b: ISZERO
00000e8c: PUSH2 0x0e99
00000e8f: JUMPI
00000e90: RETURNDATASIZE
00000e91: PUSH1 0x00
00000e93: DUP1
00000e94: RETURNDATACOPY
00000e95: RETURNDATASIZE
00000e96: PUSH1 0x00
00000e98: REVERT
00000e99: JUMPDEST
00000e9a: POP
00000e9b: POP
00000e9c: POP
00000e9d: POP
00000e9e: PUSH1 0x40
00000ea0: MLOAD
00000ea1: RETURNDATASIZE
00000ea2: PUSH1 0x20
00000ea4: DUP2
00000ea5: LT
00000ea6: ISZERO
00000ea7: PUSH2 0x0eaf
00000eaa: JUMPI
00000eab: PUSH1 0x00
00000ead: DUP1
00000eae: REVERT
00000eaf: JUMPDEST
00000eb0: POP
00000eb1: MLOAD
00000eb2: SWAP1
00000eb3: PUSH4 0xffffffff
00000eb8: PUSH2 0x25cc
00000ebb: AND
00000ebc: JUMP
00000ebd: JUMPDEST
00000ebe: SWAP1
00000ebf: POP
00000ec0: PUSH1 0x00
00000ec2: DUP2
00000ec3: GT
00000ec4: PUSH2 0x0f3d
00000ec7: JUMPI
00000ec8: PUSH1 0x40
00000eca: DUP1
00000ecb: MLOAD
00000ecc: PUSH1 0xe5
00000ece: PUSH1 0x02
00000ed0: EXP
00000ed1: PUSH3 0x461bcd
00000ed5: MUL
00000ed6: DUP2
00000ed7: MSTORE
00000ed8: PUSH1 0x20
00000eda: PUSH1 0x04
00000edc: DUP3
00000edd: ADD
00000ede: MSTORE
00000edf: PUSH1 0x39
00000ee1: PUSH1 0x24
00000ee3: DUP3
00000ee4: ADD
00000ee5: MSTORE
00000ee6: PUSH32 0x5468657265206973206e6f2064697374726962757465642066656520746f6b65
00000f07: PUSH1 0x44
00000f09: DUP3
00000f0a: ADD
00000f0b: MSTORE
00000f0c: PUSH32 0x6e2062616c616e636520696e2074686520636f6e747261637400000000000000
00000f2d: PUSH1 0x64
00000f2f: DUP3
00000f30: ADD
00000f31: MSTORE
00000f32: SWAP1
00000f33: MLOAD
00000f34: SWAP1
00000f35: DUP2
00000f36: SWAP1
00000f37: SUB
00000f38: PUSH1 0x84
00000f3a: ADD
00000f3b: SWAP1
00000f3c: REVERT
00000f3d: JUMPDEST
00000f3e: PUSH1 0x0b
00000f40: SLOAD
00000f41: PUSH1 0x0a
00000f43: SLOAD
00000f44: PUSH1 0x40
00000f46: DUP1
00000f47: MLOAD
00000f48: PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000
00000f69: DUP2
00000f6a: MSTORE
00000f6b: PUSH1 0x01
00000f6d: PUSH1 0xa0
00000f6f: PUSH1 0x02
00000f71: EXP
00000f72: SUB
00000f73: SWAP3
00000f74: DUP4
00000f75: AND
00000f76: PUSH1 0x04
00000f78: DUP3
00000f79: ADD
00000f7a: MSTORE
00000f7b: PUSH1 0x24
00000f7d: DUP2
00000f7e: ADD
00000f7f: DUP6
00000f80: SWAP1
00000f81: MSTORE
00000f82: SWAP1
00000f83: MLOAD
00000f84: SWAP2
00000f85: SWAP1
00000f86: SWAP3
00000f87: AND
00000f88: SWAP2
00000f89: PUSH4 0xa9059cbb
00000f8e: SWAP2
00000f8f: PUSH1 0x44
00000f91: DUP1
00000f92: DUP4
00000f93: ADD
00000f94: SWAP3
00000f95: PUSH1 0x20
00000f97: SWAP3
00000f98: SWAP2
00000f99: SWAP1
00000f9a: DUP3
00000f9b: SWAP1
00000f9c: SUB
00000f9d: ADD
00000f9e: DUP2
00000f9f: PUSH1 0x00
00000fa1: DUP8
00000fa2: DUP1
00000fa3: EXTCODESIZE
00000fa4: ISZERO
00000fa5: DUP1
00000fa6: ISZERO
00000fa7: PUSH2 0x0faf
00000faa: JUMPI
00000fab: PUSH1 0x00
00000fad: DUP1
00000fae: REVERT
00000faf: JUMPDEST
00000fb0: POP
00000fb1: GAS
00000fb2: CALL
00000fb3: ISZERO
00000fb4: DUP1
00000fb5: ISZERO
00000fb6: PUSH2 0x0fc3
00000fb9: JUMPI
00000fba: RETURNDATASIZE
00000fbb: PUSH1 0x00
00000fbd: DUP1
00000fbe: RETURNDATACOPY
00000fbf: RETURNDATASIZE
00000fc0: PUSH1 0x00
00000fc2: REVERT
00000fc3: JUMPDEST
00000fc4: POP
00000fc5: POP
00000fc6: POP
00000fc7: POP
00000fc8: PUSH1 0x40
00000fca: MLOAD
00000fcb: RETURNDATASIZE
00000fcc: PUSH1 0x20
00000fce: DUP2
00000fcf: LT
00000fd0: ISZERO
00000fd1: PUSH2 0x0fd9
00000fd4: JUMPI
00000fd5: PUSH1 0x00
00000fd7: DUP1
00000fd8: REVERT
00000fd9: JUMPDEST
00000fda: POP
00000fdb: POP
00000fdc: POP
00000fdd: JUMP
00000fde: JUMPDEST
00000fdf: PUSH1 0x0b
00000fe1: SLOAD
00000fe2: PUSH1 0x01
00000fe4: PUSH1 0xa0
00000fe6: PUSH1 0x02
00000fe8: EXP
00000fe9: SUB
00000fea: AND
00000feb: DUP2
00000fec: JUMP
00000fed: JUMPDEST
00000fee: PUSH1 0x00
00000ff0: SLOAD
00000ff1: PUSH1 0x01
00000ff3: PUSH1 0xa0
00000ff5: PUSH1 0x02
00000ff7: EXP
00000ff8: SUB
00000ff9: AND
00000ffa: CALLER
00000ffb: EQ
00000ffc: PUSH2 0x104f
00000fff: JUMPI
00001000: PUSH1 0x40
00001002: DUP1
00001003: MLOAD
00001004: PUSH1 0xe5
00001006: PUSH1 0x02
00001008: EXP
00001009: PUSH3 0x461bcd
0000100d: MUL
0000100e: DUP2
0000100f: MSTORE
00001010: PUSH1 0x20
00001012: PUSH1 0x04
00001014: DUP3
00001015: ADD
00001016: MSTORE
00001017: PUSH1 0x15
00001019: PUSH1 0x24
0000101b: DUP3
0000101c: ADD
0000101d: MSTORE
0000101e: PUSH32 0x53656e646572206e6f7420617574686f72697365640000000000000000000000
0000103f: PUSH1 0x44
00001041: DUP3
00001042: ADD
00001043: MSTORE
00001044: SWAP1
00001045: MLOAD
00001046: SWAP1
00001047: DUP2
00001048: SWAP1
00001049: SUB
0000104a: PUSH1 0x64
0000104c: ADD
0000104d: SWAP1
0000104e: REVERT
0000104f: JUMPDEST
00001050: PUSH8 0x06f05b59d3b20000
00001059: DUP2
0000105a: GT
0000105b: ISZERO
0000105c: PUSH2 0x10af
0000105f: JUMPI
00001060: PUSH1 0x40
00001062: DUP1
00001063: MLOAD
00001064: PUSH1 0xe5
00001066: PUSH1 0x02
00001068: EXP
00001069: PUSH3 0x461bcd
0000106d: MUL
0000106e: DUP2
0000106f: MSTORE
00001070: PUSH1 0x20
00001072: PUSH1 0x04
00001074: DUP3
00001075: ADD
00001076: MSTORE
00001077: PUSH1 0x1b
00001079: PUSH1 0x24
0000107b: DUP3
0000107c: ADD
0000107d: MSTORE
0000107e: PUSH32 0x466565732063616e2774206265206d6f7265207468616e203530250000000000
0000109f: PUSH1 0x44
000010a1: DUP3
000010a2: ADD
000010a3: MSTORE
000010a4: SWAP1
000010a5: MLOAD
000010a6: SWAP1
000010a7: DUP2
000010a8: SWAP1
000010a9: SUB
000010aa: PUSH1 0x64
000010ac: ADD
000010ad: SWAP1
000010ae: REVERT
000010af: JUMPDEST
000010b0: PUSH1 0x02
000010b2: SSTORE
000010b3: JUMP
000010b4: JUMPDEST
000010b5: PUSH1 0x00
000010b7: DUP1
000010b8: DUP1
000010b9: DUP1
000010ba: DUP1
000010bb: DUP1
000010bc: DUP1
000010bd: DUP1
000010be: PUSH2 0x10ce
000010c1: PUSH1 0x08
000010c3: DUP11
000010c4: PUSH4 0xffffffff
000010c9: PUSH2 0x233b
000010cc: AND
000010cd: JUMP
000010ce: JUMPDEST
000010cf: SWAP8
000010d0: POP
000010d1: PUSH1 0xfe
000010d3: PUSH1 0x02
000010d5: EXP
000010d6: DUP9
000010d7: DIV
000010d8: PUSH1 0x02
000010da: DUP2
000010db: GT
000010dc: ISZERO
000010dd: PUSH2 0x10e2
000010e0: JUMPI
000010e1: INVALID
000010e2: JUMPDEST
000010e3: SWAP7
000010e4: POP
000010e5: PUSH1 0x01
000010e7: DUP8
000010e8: PUSH1 0x02
000010ea: DUP2
000010eb: GT
000010ec: ISZERO
000010ed: PUSH2 0x10f2
000010f0: JUMPI
000010f1: INVALID
000010f2: JUMPDEST
000010f3: EQ
000010f4: PUSH2 0x1147
000010f7: JUMPI
000010f8: PUSH1 0x40
000010fa: DUP1
000010fb: MLOAD
000010fc: PUSH1 0xe5
000010fe: PUSH1 0x02
00001100: EXP
00001101: PUSH3 0x461bcd
00001105: MUL
00001106: DUP2
00001107: MSTORE
00001108: PUSH1 0x20
0000110a: PUSH1 0x04
0000110c: DUP3
0000110d: ADD
0000110e: MSTORE
0000110f: PUSH1 0x17
00001111: PUSH1 0x24
00001113: DUP3
00001114: ADD
00001115: MSTORE
00001116: PUSH32 0x54686973206973206e6f74206120627579206f72646572000000000000000000
00001137: PUSH1 0x44
00001139: DUP3
0000113a: ADD
0000113b: MSTORE
0000113c: SWAP1
0000113d: MLOAD
0000113e: SWAP1
0000113f: DUP2
00001140: SWAP1
00001141: SUB
00001142: PUSH1 0x64
00001144: ADD
00001145: SWAP1
00001146: REVERT
00001147: JUMPDEST
00001148: PUSH2 0x1150
0000114b: CALLER
0000114c: PUSH2 0x24bc
0000114f: JUMP
00001150: JUMPDEST
00001151: SWAP6
00001152: POP
00001153: PUSH1 0xe0
00001155: PUSH1 0x02
00001157: EXP
00001158: PUSH1 0x04
0000115a: DUP10
0000115b: MUL
0000115c: DIV
0000115d: DUP7
0000115e: EQ
0000115f: ISZERO
00001160: PUSH2 0x11b3
00001163: JUMPI
00001164: PUSH1 0x40
00001166: DUP1
00001167: MLOAD
00001168: PUSH1 0xe5
0000116a: PUSH1 0x02
0000116c: EXP
0000116d: PUSH3 0x461bcd
00001171: MUL
00001172: DUP2
00001173: MSTORE
00001174: PUSH1 0x20
00001176: PUSH1 0x04
00001178: DUP3
00001179: ADD
0000117a: MSTORE
0000117b: PUSH1 0x1e
0000117d: PUSH1 0x24
0000117f: DUP3
00001180: ADD
00001181: MSTORE
00001182: PUSH32 0x596f752063616e6e6f742066696c6c20796f7572206f776e206f726465720000
000011a3: PUSH1 0x44
000011a5: DUP3
000011a6: ADD
000011a7: MSTORE
000011a8: SWAP1
000011a9: MLOAD
000011aa: SWAP1
000011ab: DUP2
000011ac: SWAP1
000011ad: SUB
000011ae: PUSH1 0x64
000011b0: ADD
000011b1: SWAP1
000011b2: REVERT
000011b3: JUMPDEST
000011b4: PUSH1 0x91
000011b6: PUSH1 0x02
000011b8: EXP
000011b9: PUSH5 0x0400000000
000011bf: DUP10
000011c0: MUL
000011c1: DUP2
000011c2: SWAP1
000011c3: DIV
000011c4: SWAP6
000011c5: POP
000011c6: DUP1
000011c7: DUP10
000011c8: MUL
000011c9: DIV
000011ca: SWAP4
000011cb: POP
000011cc: PUSH2 0x11d5
000011cf: DUP6
000011d0: DUP6
000011d1: PUSH2 0x09e1
000011d4: JUMP
000011d5: JUMPDEST
000011d6: PUSH1 0x00
000011d8: DUP8
000011d9: DUP2
000011da: MSTORE
000011db: PUSH1 0x05
000011dd: PUSH1 0x20
000011df: MSTORE
000011e0: PUSH1 0x40
000011e2: SWAP1
000011e3: KECCAK256
000011e4: SLOAD
000011e5: SWAP1
000011e6: SWAP4
000011e7: POP
000011e8: DUP4
000011e9: GT
000011ea: ISZERO
000011eb: PUSH2 0x1252
000011ee: JUMPI
000011ef: PUSH1 0x40
000011f1: DUP1
000011f2: MLOAD
000011f3: PUSH1 0xe5
000011f5: PUSH1 0x02
000011f7: EXP
000011f8: PUSH3 0x461bcd
000011fc: MUL
000011fd: DUP2
000011fe: MSTORE
000011ff: PUSH1 0x20
00001201: PUSH1 0x04
00001203: DUP3
00001204: ADD
00001205: MSTORE
00001206: PUSH1 0x38
00001208: PUSH1 0x24
0000120a: DUP3
0000120b: ADD
0000120c: MSTORE
0000120d: PUSH1 0x00
0000120f: DUP1
00001210: MLOAD
00001211: PUSH1 0x20
00001213: PUSH2 0x26ab
00001216: DUP4
00001217: CODECOPY
00001218: DUP2
00001219: MLOAD
0000121a: SWAP2
0000121b: MSTORE
0000121c: PUSH1 0x44
0000121e: DUP3
0000121f: ADD
00001220: MSTORE
00001221: PUSH32 0x206665657320746f2066696c6c2074686973206f726465720000000000000000
00001242: PUSH1 0x64
00001244: DUP3
00001245: ADD
00001246: MSTORE
00001247: SWAP1
00001248: MLOAD
00001249: SWAP1
0000124a: DUP2
0000124b: SWAP1
0000124c: SUB
0000124d: PUSH1 0x84
0000124f: ADD
00001250: SWAP1
00001251: REVERT
00001252: JUMPDEST
00001253: PUSH2 0x126e
00001256: PUSH8 0x0de0b6b3a7640000
0000125f: PUSH2 0x0a14
00001262: DUP8
00001263: DUP8
00001264: PUSH4 0xffffffff
00001269: PUSH2 0x246e
0000126c: AND
0000126d: JUMP
0000126e: JUMPDEST
0000126f: SWAP2
00001270: POP
00001271: PUSH2 0x1281
00001274: PUSH1 0x08
00001276: DUP11
00001277: PUSH4 0xffffffff
0000127c: PUSH2 0x2351
0000127f: AND
00001280: JUMP
00001281: JUMPDEST
00001282: ISZERO
00001283: ISZERO
00001284: PUSH2 0x12c5
00001287: JUMPI
00001288: PUSH1 0x40
0000128a: DUP1
0000128b: MLOAD
0000128c: PUSH1 0xe5
0000128e: PUSH1 0x02
00001290: EXP
00001291: PUSH3 0x461bcd
00001295: MUL
00001296: DUP2
00001297: MSTORE
00001298: PUSH1 0x20
0000129a: PUSH1 0x04
0000129c: DUP3
0000129d: ADD
0000129e: MSTORE
0000129f: PUSH1 0x11
000012a1: PUSH1 0x24
000012a3: DUP3
000012a4: ADD
000012a5: MSTORE
000012a6: PUSH1 0x00
000012a8: DUP1
000012a9: MLOAD
000012aa: PUSH1 0x20
000012ac: PUSH2 0x26cb
000012af: DUP4
000012b0: CODECOPY
000012b1: DUP2
000012b2: MLOAD
000012b3: SWAP2
000012b4: MSTORE
000012b5: PUSH1 0x44
000012b7: DUP3
000012b8: ADD
000012b9: MSTORE
000012ba: SWAP1
000012bb: MLOAD
000012bc: SWAP1
000012bd: DUP2
000012be: SWAP1
000012bf: SUB
000012c0: PUSH1 0x64
000012c2: ADD
000012c3: SWAP1
000012c4: REVERT
000012c5: JUMPDEST
000012c6: PUSH1 0x40
000012c8: MLOAD
000012c9: CALLER
000012ca: SWAP1
000012cb: DUP4
000012cc: ISZERO
000012cd: PUSH2 0x08fc
000012d0: MUL
000012d1: SWAP1
000012d2: DUP5
000012d3: SWAP1
000012d4: PUSH1 0x00
000012d6: DUP2
000012d7: DUP2
000012d8: DUP2
000012d9: DUP6
000012da: DUP9
000012db: DUP9
000012dc: CALL
000012dd: SWAP4
000012de: POP
000012df: POP
000012e0: POP
000012e1: POP
000012e2: ISZERO
000012e3: DUP1
000012e4: ISZERO
000012e5: PUSH2 0x12f2
000012e8: JUMPI
000012e9: RETURNDATASIZE
000012ea: PUSH1 0x00
000012ec: DUP1
000012ed: RETURNDATACOPY
000012ee: RETURNDATASIZE
000012ef: PUSH1 0x00
000012f1: REVERT
000012f2: JUMPDEST
000012f3: POP
000012f4: PUSH1 0x0a
000012f6: SLOAD
000012f7: PUSH1 0x06
000012f9: DUP1
000012fa: SLOAD
000012fb: PUSH1 0x01
000012fd: PUSH1 0xa0
000012ff: PUSH1 0x02
00001301: EXP
00001302: SUB
00001303: SWAP1
00001304: SWAP3
00001305: AND
00001306: SWAP2
00001307: PUSH4 0xde995b90
0000130c: SWAP2
0000130d: CALLER
0000130e: SWAP2
0000130f: PUSH1 0xe0
00001311: PUSH1 0x02
00001313: EXP
00001314: PUSH1 0x04
00001316: DUP15
00001317: MUL
00001318: DIV
00001319: SWAP1
0000131a: DUP2
0000131b: LT
0000131c: PUSH2 0x1321
0000131f: JUMPI
00001320: INVALID
00001321: JUMPDEST
00001322: PUSH1 0x00
00001324: SWAP2
00001325: DUP3
00001326: MSTORE
00001327: PUSH1 0x20
00001329: DUP3
0000132a: KECCAK256
0000132b: ADD
0000132c: SLOAD
0000132d: PUSH1 0x40
0000132f: DUP1
00001330: MLOAD
00001331: PUSH1 0xe0
00001333: PUSH1 0x02
00001335: EXP
00001336: PUSH4 0xffffffff
0000133b: DUP8
0000133c: AND
0000133d: MUL
0000133e: DUP2
0000133f: MSTORE
00001340: PUSH1 0x01
00001342: PUSH1 0xa0
00001344: PUSH1 0x02
00001346: EXP
00001347: SUB
00001348: SWAP5
00001349: DUP6
0000134a: AND
0000134b: PUSH1 0x04
0000134d: DUP3
0000134e: ADD
0000134f: MSTORE
00001350: SWAP4
00001351: SWAP1
00001352: SWAP2
00001353: AND
00001354: PUSH1 0x24
00001356: DUP5
00001357: ADD
00001358: MSTORE
00001359: PUSH1 0x44
0000135b: DUP4
0000135c: ADD
0000135d: DUP10
0000135e: SWAP1
0000135f: MSTORE
00001360: MLOAD
00001361: PUSH1 0x64
00001363: DUP1
00001364: DUP5
00001365: ADD
00001366: SWAP4
00001367: DUP3
00001368: SWAP1
00001369: SUB
0000136a: ADD
0000136b: DUP2
0000136c: DUP4
0000136d: DUP8
0000136e: DUP1
0000136f: EXTCODESIZE
00001370: ISZERO
00001371: DUP1
00001372: ISZERO
00001373: PUSH2 0x137b
00001376: JUMPI
00001377: PUSH1 0x00
00001379: DUP1
0000137a: REVERT
0000137b: JUMPDEST
0000137c: POP
0000137d: GAS
0000137e: CALL
0000137f: ISZERO
00001380: DUP1
00001381: ISZERO
00001382: PUSH2 0x138f
00001385: JUMPI
00001386: RETURNDATASIZE
00001387: PUSH1 0x00
00001389: DUP1
0000138a: RETURNDATACOPY
0000138b: RETURNDATASIZE
0000138c: PUSH1 0x00
0000138e: REVERT
0000138f: JUMPDEST
00001390: POP
00001391: POP
00001392: POP
00001393: POP
00001394: PUSH1 0x00
00001396: DUP4
00001397: GT
00001398: ISZERO
00001399: PUSH2 0x1494
0000139c: JUMPI
0000139d: PUSH1 0x00
0000139f: DUP7
000013a0: DUP2
000013a1: MSTORE
000013a2: PUSH1 0x05
000013a4: PUSH1 0x20
000013a6: MSTORE
000013a7: PUSH1 0x40
000013a9: SWAP1
000013aa: KECCAK256
000013ab: SLOAD
000013ac: PUSH2 0x13bb
000013af: SWAP1
000013b0: DUP5
000013b1: PUSH4 0xffffffff
000013b6: PUSH2 0x25cc
000013b9: AND
000013ba: JUMP
000013bb: JUMPDEST
000013bc: PUSH1 0x00
000013be: DUP8
000013bf: DUP2
000013c0: MSTORE
000013c1: PUSH1 0x05
000013c3: PUSH1 0x20
000013c5: MSTORE
000013c6: PUSH1 0x40
000013c8: SWAP1
000013c9: KECCAK256
000013ca: SSTORE
000013cb: PUSH2 0x13db
000013ce: DUP4
000013cf: PUSH1 0x02
000013d1: PUSH4 0xffffffff
000013d6: PUSH2 0x246e
000013d9: AND
000013da: JUMP
000013db: JUMPDEST
000013dc: PUSH1 0x04
000013de: SLOAD
000013df: SWAP1
000013e0: SWAP2
000013e1: POP
000013e2: PUSH2 0x13f1
000013e5: SWAP1
000013e6: DUP3
000013e7: PUSH4 0xffffffff
000013ec: PUSH2 0x25cc
000013ef: AND
000013f0: JUMP
000013f1: JUMPDEST
000013f2: PUSH1 0x04
000013f4: SWAP1
000013f5: DUP2
000013f6: SSTORE
000013f7: PUSH1 0x0b
000013f9: SLOAD
000013fa: PUSH1 0x0a
000013fc: SLOAD
000013fd: PUSH1 0x40
000013ff: DUP1
00001400: MLOAD
00001401: PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000
00001422: DUP2
00001423: MSTORE
00001424: PUSH1 0x01
00001426: PUSH1 0xa0
00001428: PUSH1 0x02
0000142a: EXP
0000142b: SUB
0000142c: SWAP3
0000142d: DUP4
0000142e: AND
0000142f: SWAP5
00001430: DUP2
00001431: ADD
00001432: SWAP5
00001433: SWAP1
00001434: SWAP5
00001435: MSTORE
00001436: PUSH1 0x24
00001438: DUP5
00001439: ADD
0000143a: DUP6
0000143b: SWAP1
0000143c: MSTORE
0000143d: MLOAD
0000143e: SWAP2
0000143f: AND
00001440: SWAP2
00001441: PUSH4 0xa9059cbb
00001446: SWAP2
00001447: PUSH1 0x44
00001449: DUP1
0000144a: DUP4
0000144b: ADD
0000144c: SWAP3
0000144d: PUSH1 0x20
0000144f: SWAP3
00001450: SWAP2
00001451: SWAP1
00001452: DUP3
00001453: SWAP1
00001454: SUB
00001455: ADD
00001456: DUP2
00001457: PUSH1 0x00
00001459: DUP8
0000145a: DUP1
0000145b: EXTCODESIZE
0000145c: ISZERO
0000145d: DUP1
0000145e: ISZERO
0000145f: PUSH2 0x1467
00001462: JUMPI
00001463: PUSH1 0x00
00001465: DUP1
00001466: REVERT
00001467: JUMPDEST
00001468: POP
00001469: GAS
0000146a: CALL
0000146b: ISZERO
0000146c: DUP1
0000146d: ISZERO
0000146e: PUSH2 0x147b
00001471: JUMPI
00001472: RETURNDATASIZE
00001473: PUSH1 0x00
00001475: DUP1
00001476: RETURNDATACOPY
00001477: RETURNDATASIZE
00001478: PUSH1 0x00
0000147a: REVERT
0000147b: JUMPDEST
0000147c: POP
0000147d: POP
0000147e: POP
0000147f: POP
00001480: PUSH1 0x40
00001482: MLOAD
00001483: RETURNDATASIZE
00001484: PUSH1 0x20
00001486: DUP2
00001487: LT
00001488: ISZERO
00001489: PUSH2 0x1491
0000148c: JUMPI
0000148d: PUSH1 0x00
0000148f: DUP1
00001490: REVERT
00001491: JUMPDEST
00001492: POP
00001493: POP
00001494: JUMPDEST
00001495: PUSH1 0x06
00001497: DUP1
00001498: SLOAD
00001499: PUSH1 0xe0
0000149b: PUSH1 0x02
0000149d: EXP
0000149e: PUSH1 0x04
000014a0: DUP12
000014a1: MUL
000014a2: DIV
000014a3: SWAP1
000014a4: DUP2
000014a5: LT
000014a6: PUSH2 0x14ab
000014a9: JUMPI
000014aa: INVALID
000014ab: JUMPDEST
000014ac: PUSH1 0x00
000014ae: SWAP2
000014af: DUP3
000014b0: MSTORE
000014b1: PUSH1 0x20
000014b3: SWAP1
000014b4: SWAP2
000014b5: KECCAK256
000014b6: ADD
000014b7: SLOAD
000014b8: PUSH1 0x01
000014ba: PUSH1 0xa0
000014bc: PUSH1 0x02
000014be: EXP
000014bf: SUB
000014c0: AND
000014c1: DUP8
000014c2: PUSH1 0x02
000014c4: DUP2
000014c5: GT
000014c6: ISZERO
000014c7: PUSH2 0x14cc
000014ca: JUMPI
000014cb: INVALID
000014cc: JUMPDEST
000014cd: PUSH1 0x40
000014cf: DUP1
000014d0: MLOAD
000014d1: CALLER
000014d2: DUP2
000014d3: MSTORE
000014d4: PUSH1 0x20
000014d6: DUP2
000014d7: ADD
000014d8: DUP10
000014d9: SWAP1
000014da: MSTORE
000014db: DUP1
000014dc: DUP3
000014dd: ADD
000014de: DUP9
000014df: SWAP1
000014e0: MSTORE
000014e1: SWAP1
000014e2: MLOAD
000014e3: PUSH32 0x37561a23711d8277a49bc8fdac68dafcf982b917f213a7691984a6dcea1edcd2
00001504: SWAP2
00001505: DUP2
00001506: SWAP1
00001507: SUB
00001508: PUSH1 0x60
0000150a: ADD
0000150b: SWAP1
0000150c: LOG3
0000150d: POP
0000150e: POP
0000150f: POP
00001510: POP
00001511: POP
00001512: POP
00001513: POP
00001514: POP
00001515: POP
00001516: JUMP
00001517: JUMPDEST
00001518: PUSH1 0x00
0000151a: SLOAD
0000151b: PUSH1 0x01
0000151d: PUSH1 0xa0
0000151f: PUSH1 0x02
00001521: EXP
00001522: SUB
00001523: AND
00001524: DUP2
00001525: JUMP
00001526: JUMPDEST
00001527: PUSH1 0x00
00001529: DUP1
0000152a: PUSH1 0x00
0000152c: PUSH2 0x1534
0000152f: DUP6
00001530: PUSH2 0x24a9
00001533: JUMP
00001534: JUMPDEST
00001535: DUP1
00001536: ISZERO
00001537: PUSH2 0x1544
0000153a: JUMPI
0000153b: POP
0000153c: PUSH2 0x1544
0000153f: DUP5
00001540: PUSH2 0x24a9
00001543: JUMP
00001544: JUMPDEST
00001545: ISZERO
00001546: ISZERO
00001547: PUSH2 0x159a
0000154a: JUMPI
0000154b: PUSH1 0x40
0000154d: DUP1
0000154e: MLOAD
0000154f: PUSH1 0xe5
00001551: PUSH1 0x02
00001553: EXP
00001554: PUSH3 0x461bcd
00001558: MUL
00001559: DUP2
0000155a: MSTORE
0000155b: PUSH1 0x20
0000155d: PUSH1 0x04
0000155f: DUP3
00001560: ADD
00001561: DUP2
00001562: SWAP1
00001563: MSTORE
00001564: PUSH1 0x24
00001566: DUP3
00001567: ADD
00001568: MSTORE
00001569: PUSH32 0x5072696365206f7220616d6f756e742065786365656473203131312062697473
0000158a: PUSH1 0x44
0000158c: DUP3
0000158d: ADD
0000158e: MSTORE
0000158f: SWAP1
00001590: MLOAD
00001591: SWAP1
00001592: DUP2
00001593: SWAP1
00001594: SUB
00001595: PUSH1 0x64
00001597: ADD
00001598: SWAP1
00001599: REVERT
0000159a: JUMPDEST
0000159b: PUSH1 0x00
0000159d: DUP6
0000159e: GT
0000159f: PUSH2 0x15f2
000015a2: JUMPI
000015a3: PUSH1 0x40
000015a5: DUP1
000015a6: MLOAD
000015a7: PUSH1 0xe5
000015a9: PUSH1 0x02
000015ab: EXP
000015ac: PUSH3 0x461bcd
000015b0: MUL
000015b1: DUP2
000015b2: MSTORE
000015b3: PUSH1 0x20
000015b5: PUSH1 0x04
000015b7: DUP3
000015b8: ADD
000015b9: DUP2
000015ba: SWAP1
000015bb: MSTORE
000015bc: PUSH1 0x24
000015be: DUP3
000015bf: ADD
000015c0: MSTORE
000015c1: PUSH32 0x5072696365206e6565647320746f2062652067726561746572207468616e2030
000015e2: PUSH1 0x44
000015e4: DUP3
000015e5: ADD
000015e6: MSTORE
000015e7: SWAP1
000015e8: MLOAD
000015e9: SWAP1
000015ea: DUP2
000015eb: SWAP1
000015ec: SUB
000015ed: PUSH1 0x64
000015ef: ADD
000015f0: SWAP1
000015f1: REVERT
000015f2: JUMPDEST
000015f3: PUSH1 0x00
000015f5: DUP5
000015f6: GT
000015f7: PUSH2 0x1670
000015fa: JUMPI
000015fb: PUSH1 0x40
000015fd: DUP1
000015fe: MLOAD
000015ff: PUSH1 0xe5
00001601: PUSH1 0x02
00001603: EXP
00001604: PUSH3 0x461bcd
00001608: MUL
00001609: DUP2
0000160a: MSTORE
0000160b: PUSH1 0x20
0000160d: PUSH1 0x04
0000160f: DUP3
00001610: ADD
00001611: MSTORE
00001612: PUSH1 0x21
00001614: PUSH1 0x24
00001616: DUP3
00001617: ADD
00001618: MSTORE
00001619: PUSH32 0x416d6f756e74206e6565647320746f2062652067726561746572207468616e20
0000163a: PUSH1 0x44
0000163c: DUP3
0000163d: ADD
0000163e: MSTORE
0000163f: PUSH32 0x3000000000000000000000000000000000000000000000000000000000000000
00001660: PUSH1 0x64
00001662: DUP3
00001663: ADD
00001664: MSTORE
00001665: SWAP1
00001666: MLOAD
00001667: SWAP1
00001668: DUP2
00001669: SWAP1
0000166a: SUB
0000166b: PUSH1 0x84
0000166d: ADD
0000166e: SWAP1
0000166f: REVERT
00001670: JUMPDEST
00001671: PUSH2 0x167a
00001674: DUP6
00001675: DUP6
00001676: PUSH2 0x09e1
00001679: JUMP
0000167a: JUMPDEST
0000167b: SWAP3
0000167c: POP
0000167d: PUSH2 0x1685
00001680: CALLER
00001681: PUSH2 0x24bc
00001684: JUMP
00001685: JUMPDEST
00001686: SWAP2
00001687: POP
00001688: PUSH1 0x00
0000168a: DUP4
0000168b: GT
0000168c: ISZERO
0000168d: PUSH2 0x1739
00001690: JUMPI
00001691: PUSH1 0x00
00001693: DUP3
00001694: DUP2
00001695: MSTORE
00001696: PUSH1 0x05
00001698: PUSH1 0x20
0000169a: MSTORE
0000169b: PUSH1 0x40
0000169d: SWAP1
0000169e: KECCAK256
0000169f: SLOAD
000016a0: DUP4
000016a1: GT
000016a2: ISZERO
000016a3: PUSH2 0x170a
000016a6: JUMPI
000016a7: PUSH1 0x40
000016a9: DUP1
000016aa: MLOAD
000016ab: PUSH1 0xe5
000016ad: PUSH1 0x02
000016af: EXP
000016b0: PUSH3 0x461bcd
000016b4: MUL
000016b5: DUP2
000016b6: MSTORE
000016b7: PUSH1 0x20
000016b9: PUSH1 0x04
000016bb: DUP3
000016bc: ADD
000016bd: MSTORE
000016be: PUSH1 0x29
000016c0: PUSH1 0x24
000016c2: DUP3
000016c3: ADD
000016c4: MSTORE
000016c5: PUSH1 0x00
000016c7: DUP1
000016c8: MLOAD
000016c9: PUSH1 0x20
000016cb: PUSH2 0x26ab
000016ce: DUP4
000016cf: CODECOPY
000016d0: DUP2
000016d1: MLOAD
000016d2: SWAP2
000016d3: MSTORE
000016d4: PUSH1 0x44
000016d6: DUP3
000016d7: ADD
000016d8: MSTORE
000016d9: PUSH32 0x20666f7220666565730000000000000000000000000000000000000000000000
000016fa: PUSH1 0x64
000016fc: DUP3
000016fd: ADD
000016fe: MSTORE
000016ff: SWAP1
00001700: MLOAD
00001701: SWAP1
00001702: DUP2
00001703: SWAP1
00001704: SUB
00001705: PUSH1 0x84
00001707: ADD
00001708: SWAP1
00001709: REVERT
0000170a: JUMPDEST
0000170b: PUSH1 0x00
0000170d: DUP3
0000170e: DUP2
0000170f: MSTORE
00001710: PUSH1 0x05
00001712: PUSH1 0x20
00001714: MSTORE
00001715: PUSH1 0x40
00001717: SWAP1
00001718: KECCAK256
00001719: SLOAD
0000171a: PUSH2 0x1729
0000171d: SWAP1
0000171e: DUP5
0000171f: PUSH4 0xffffffff
00001724: PUSH2 0x25cc
00001727: AND
00001728: JUMP
00001729: JUMPDEST
0000172a: PUSH1 0x00
0000172c: DUP4
0000172d: DUP2
0000172e: MSTORE
0000172f: PUSH1 0x05
00001731: PUSH1 0x20
00001733: MSTORE
00001734: PUSH1 0x40
00001736: SWAP1
00001737: KECCAK256
00001738: SSTORE
00001739: JUMPDEST
0000173a: PUSH2 0x1755
0000173d: PUSH8 0x0de0b6b3a7640000
00001746: PUSH2 0x0a14
00001749: DUP8
0000174a: DUP8
0000174b: PUSH4 0xffffffff
00001750: PUSH2 0x246e
00001753: AND
00001754: JUMP
00001755: JUMPDEST
00001756: SWAP1
00001757: POP
00001758: PUSH2 0x176f
0000175b: DUP2
0000175c: PUSH8 0x0de0b6b3a7640000
00001765: PUSH4 0xffffffff
0000176a: PUSH2 0x246e
0000176d: AND
0000176e: JUMP
0000176f: JUMPDEST
00001770: PUSH2 0x177f
00001773: DUP7
00001774: DUP7
00001775: PUSH4 0xffffffff
0000177a: PUSH2 0x246e
0000177d: AND
0000177e: JUMP
0000177f: JUMPDEST
00001780: EQ
00001781: PUSH2 0x17fa
00001784: JUMPI
00001785: PUSH1 0x40
00001787: DUP1
00001788: MLOAD
00001789: PUSH1 0xe5
0000178b: PUSH1 0x02
0000178d: EXP
0000178e: PUSH3 0x461bcd
00001792: MUL
00001793: DUP2
00001794: MSTORE
00001795: PUSH1 0x20
00001797: PUSH1 0x04
00001799: DUP3
0000179a: ADD
0000179b: MSTORE
0000179c: PUSH1 0x2f
0000179e: PUSH1 0x24
000017a0: DUP3
000017a1: ADD
000017a2: MSTORE
000017a3: PUSH32 0x54686520707269636520616e6420616d6f756e74206f662074686973206f7264
000017c4: PUSH1 0x44
000017c6: DUP3
000017c7: ADD
000017c8: MSTORE
000017c9: PUSH32 0x657220697320746f6f20736d616c6c0000000000000000000000000000000000
000017ea: PUSH1 0x64
000017ec: DUP3
000017ed: ADD
000017ee: MSTORE
000017ef: SWAP1
000017f0: MLOAD
000017f1: SWAP1
000017f2: DUP2
000017f3: SWAP1
000017f4: SUB
000017f5: PUSH1 0x84
000017f7: ADD
000017f8: SWAP1
000017f9: REVERT
000017fa: JUMPDEST
000017fb: CALLVALUE
000017fc: DUP2
000017fd: EQ
000017fe: PUSH2 0x1851
00001801: JUMPI
00001802: PUSH1 0x40
00001804: DUP1
00001805: MLOAD
00001806: PUSH1 0xe5
00001808: PUSH1 0x02
0000180a: EXP
0000180b: PUSH3 0x461bcd
0000180f: MUL
00001810: DUP2
00001811: MSTORE
00001812: PUSH1 0x20
00001814: PUSH1 0x04
00001816: DUP3
00001817: ADD
00001818: DUP2
00001819: SWAP1
0000181a: MSTORE
0000181b: PUSH1 0x24
0000181d: DUP3
0000181e: ADD
0000181f: MSTORE
00001820: PUSH32 0x4554482073656e74206e6565647320746f20657175616c2074686520636f7374
00001841: PUSH1 0x44
00001843: DUP3
00001844: ADD
00001845: MSTORE
00001846: SWAP1
00001847: MLOAD
00001848: SWAP1
00001849: DUP2
0000184a: SWAP1
0000184b: SUB
0000184c: PUSH1 0x64
0000184e: ADD
0000184f: SWAP1
00001850: REVERT
00001851: JUMPDEST
00001852: PUSH2 0x186d
00001855: PUSH1 0x01
00001857: SLOAD
00001858: DUP6
00001859: PUSH1 0x6f
0000185b: DUP9
0000185c: PUSH1 0x6f
0000185e: DUP8
0000185f: PUSH1 0x20
00001861: PUSH1 0x01
00001863: PUSH1 0x02
00001865: DUP2
00001866: GT
00001867: ISZERO
00001868: PUSH2 0x0d2d
0000186b: JUMPI
0000186c: INVALID
0000186d: JUMPDEST
0000186e: ISZERO
0000186f: PUSH2 0x18c2
00001872: JUMPI
00001873: PUSH1 0x40
00001875: DUP1
00001876: MLOAD
00001877: PUSH1 0xe5
00001879: PUSH1 0x02
0000187b: EXP
0000187c: PUSH3 0x461bcd
00001880: MUL
00001881: DUP2
00001882: MSTORE
00001883: PUSH1 0x20
00001885: PUSH1 0x04
00001887: DUP3
00001888: ADD
00001889: MSTORE
0000188a: PUSH1 0x18
0000188c: PUSH1 0x24
0000188e: DUP3
0000188f: ADD
00001890: MSTORE
00001891: PUSH32 0x4d6170207265706c6163656d656e742064657465637465640000000000000000
000018b2: PUSH1 0x44
000018b4: DUP3
000018b5: ADD
000018b6: MSTORE
000018b7: SWAP1
000018b8: MLOAD
000018b9: SWAP1
000018ba: DUP2
000018bb: SWAP1
000018bc: SUB
000018bd: PUSH1 0x64
000018bf: ADD
000018c0: SWAP1
000018c1: REVERT
000018c2: JUMPDEST
000018c3: PUSH1 0x01
000018c5: DUP1
000018c6: SLOAD
000018c7: DUP2
000018c8: ADD
000018c9: DUP2
000018ca: SSTORE
000018cb: PUSH1 0x40
000018cd: DUP1
000018ce: MLOAD
000018cf: DUP8
000018d0: DUP2
000018d1: MSTORE
000018d2: PUSH1 0x20
000018d4: DUP2
000018d5: ADD
000018d6: DUP8
000018d7: SWAP1
000018d8: MSTORE
000018d9: DUP2
000018da: MLOAD
000018db: CALLER
000018dc: SWAP4
000018dd: SWAP3
000018de: PUSH32 0xbcbf7b263490465b953d70010fc8e536abfdfbcae985c547ef7e2ada714af4ff
000018ff: SWAP3
00001900: DUP3
00001901: SWAP1
00001902: SUB
00001903: ADD
00001904: SWAP1
00001905: LOG3
00001906: POP
00001907: POP
00001908: POP
00001909: POP
0000190a: POP
0000190b: JUMP
0000190c: JUMPDEST
0000190d: PUSH1 0x07
0000190f: PUSH1 0x20
00001911: MSTORE
00001912: PUSH1 0x00
00001914: SWAP1
00001915: DUP2
00001916: MSTORE
00001917: PUSH1 0x40
00001919: SWAP1
0000191a: KECCAK256
0000191b: SLOAD
0000191c: DUP2
0000191d: JUMP
0000191e: JUMPDEST
0000191f: PUSH1 0x0b
00001921: SLOAD
00001922: PUSH1 0x00
00001924: SWAP1
00001925: PUSH1 0x01
00001927: PUSH1 0xa0
00001929: PUSH1 0x02
0000192b: EXP
0000192c: SUB
0000192d: AND
0000192e: CALLER
0000192f: EQ
00001930: PUSH2 0x1983
00001933: JUMPI
00001934: PUSH1 0x40
00001936: DUP1
00001937: MLOAD
00001938: PUSH1 0xe5
0000193a: PUSH1 0x02
0000193c: EXP
0000193d: PUSH3 0x461bcd
00001941: MUL
00001942: DUP2
00001943: MSTORE
00001944: PUSH1 0x20
00001946: PUSH1 0x04
00001948: DUP3
00001949: ADD
0000194a: DUP2
0000194b: SWAP1
0000194c: MSTORE
0000194d: PUSH1 0x24
0000194f: DUP3
00001950: ADD
00001951: MSTORE
00001952: PUSH32 0x53656e646572206e6565647320746f206265207468652066656520746f6b656e
00001973: PUSH1 0x44
00001975: DUP3
00001976: ADD
00001977: MSTORE
00001978: SWAP1
00001979: MLOAD
0000197a: SWAP1
0000197b: DUP2
0000197c: SWAP1
0000197d: SUB
0000197e: PUSH1 0x64
00001980: ADD
00001981: SWAP1
00001982: REVERT
00001983: JUMPDEST
00001984: PUSH2 0x198c
00001987: DUP5
00001988: PUSH2 0x24bc
0000198b: JUMP
0000198c: JUMPDEST
0000198d: PUSH1 0x00
0000198f: DUP2
00001990: DUP2
00001991: MSTORE
00001992: PUSH1 0x05
00001994: PUSH1 0x20
00001996: MSTORE
00001997: PUSH1 0x40
00001999: SWAP1
0000199a: KECCAK256
0000199b: SLOAD
0000199c: SWAP1
0000199d: SWAP2
0000199e: POP
0000199f: PUSH2 0x19ae
000019a2: SWAP1
000019a3: DUP5
000019a4: PUSH4 0xffffffff
000019a9: PUSH2 0x2432
000019ac: AND
000019ad: JUMP
000019ae: JUMPDEST
000019af: PUSH1 0x00
000019b1: DUP3
000019b2: DUP2
000019b3: MSTORE
000019b4: PUSH1 0x05
000019b6: PUSH1 0x20
000019b8: MSTORE
000019b9: PUSH1 0x40
000019bb: SWAP1
000019bc: KECCAK256
000019bd: SSTORE
000019be: PUSH1 0x04
000019c0: SLOAD
000019c1: PUSH2 0x19d0
000019c4: SWAP1
000019c5: DUP5
000019c6: PUSH4 0xffffffff
000019cb: PUSH2 0x2432
000019ce: AND
000019cf: JUMP
000019d0: JUMPDEST
000019d1: PUSH1 0x04
000019d3: SSTORE
000019d4: POP
000019d5: POP
000019d6: POP
000019d7: POP
000019d8: JUMP
000019d9: JUMPDEST
000019da: PUSH1 0x05
000019dc: PUSH1 0x20
000019de: MSTORE
000019df: PUSH1 0x00
000019e1: SWAP1
000019e2: DUP2
000019e3: MSTORE
000019e4: PUSH1 0x40
000019e6: SWAP1
000019e7: KECCAK256
000019e8: SLOAD
000019e9: DUP2
000019ea: JUMP
000019eb: JUMPDEST
000019ec: PUSH1 0x0a
000019ee: SLOAD
000019ef: PUSH1 0x01
000019f1: PUSH1 0xa0
000019f3: PUSH1 0x02
000019f5: EXP
000019f6: SUB
000019f7: AND
000019f8: DUP2
000019f9: JUMP
000019fa: JUMPDEST
000019fb: PUSH1 0x00
000019fd: DUP1
000019fe: DUP1
000019ff: DUP1
00001a00: DUP1
00001a01: DUP1
00001a02: DUP1
00001a03: DUP1
00001a04: PUSH2 0x1a14
00001a07: PUSH1 0x08
00001a09: DUP11
00001a0a: PUSH4 0xffffffff
00001a0f: PUSH2 0x233b
00001a12: AND
00001a13: JUMP
00001a14: JUMPDEST
00001a15: SWAP8
00001a16: POP
00001a17: PUSH1 0xfe
00001a19: PUSH1 0x02
00001a1b: EXP
00001a1c: DUP9
00001a1d: DIV
00001a1e: PUSH1 0x02
00001a20: DUP2
00001a21: GT
00001a22: ISZERO
00001a23: PUSH2 0x1a28
00001a26: JUMPI
00001a27: INVALID
00001a28: JUMPDEST
00001a29: SWAP7
00001a2a: POP
00001a2b: PUSH1 0x02
00001a2d: DUP8
00001a2e: PUSH1 0x02
00001a30: DUP2
00001a31: GT
00001a32: ISZERO
00001a33: PUSH2 0x1a38
00001a36: JUMPI
00001a37: INVALID
00001a38: JUMPDEST
00001a39: EQ
00001a3a: PUSH2 0x1a8d
00001a3d: JUMPI
00001a3e: PUSH1 0x40
00001a40: DUP1
00001a41: MLOAD
00001a42: PUSH1 0xe5
00001a44: PUSH1 0x02
00001a46: EXP
00001a47: PUSH3 0x461bcd
00001a4b: MUL
00001a4c: DUP2
00001a4d: MSTORE
00001a4e: PUSH1 0x20
00001a50: PUSH1 0x04
00001a52: DUP3
00001a53: ADD
00001a54: MSTORE
00001a55: PUSH1 0x18
00001a57: PUSH1 0x24
00001a59: DUP3
00001a5a: ADD
00001a5b: MSTORE
00001a5c: PUSH32 0x54686973206973206e6f7420612073656c6c206f726465720000000000000000
00001a7d: PUSH1 0x44
00001a7f: DUP3
00001a80: ADD
00001a81: MSTORE
00001a82: SWAP1
00001a83: MLOAD
00001a84: SWAP1
00001a85: DUP2
00001a86: SWAP1
00001a87: SUB
00001a88: PUSH1 0x64
00001a8a: ADD
00001a8b: SWAP1
00001a8c: REVERT
00001a8d: JUMPDEST
00001a8e: PUSH2 0x1a96
00001a91: CALLER
00001a92: PUSH2 0x24bc
00001a95: JUMP
00001a96: JUMPDEST
00001a97: SWAP6
00001a98: POP
00001a99: PUSH1 0xe0
00001a9b: PUSH1 0x02
00001a9d: EXP
00001a9e: PUSH1 0x04
00001aa0: DUP10
00001aa1: MUL
00001aa2: DIV
00001aa3: DUP7
00001aa4: EQ
00001aa5: ISZERO
00001aa6: PUSH2 0x1af9
00001aa9: JUMPI
00001aaa: PUSH1 0x40
00001aac: DUP1
00001aad: MLOAD
00001aae: PUSH1 0xe5
00001ab0: PUSH1 0x02
00001ab2: EXP
00001ab3: PUSH3 0x461bcd
00001ab7: MUL
00001ab8: DUP2
00001ab9: MSTORE
00001aba: PUSH1 0x20
00001abc: PUSH1 0x04
00001abe: DUP3
00001abf: ADD
00001ac0: MSTORE
00001ac1: PUSH1 0x1e
00001ac3: PUSH1 0x24
00001ac5: DUP3
00001ac6: ADD
00001ac7: MSTORE
00001ac8: PUSH32 0x596f752063616e6e6f742066696c6c20796f7572206f776e206f726465720000
00001ae9: PUSH1 0x44
00001aeb: DUP3
00001aec: ADD
00001aed: MSTORE
00001aee: SWAP1
00001aef: MLOAD
00001af0: SWAP1
00001af1: DUP2
00001af2: SWAP1
00001af3: SUB
00001af4: PUSH1 0x64
00001af6: ADD
00001af7: SWAP1
00001af8: REVERT
00001af9: JUMPDEST
00001afa: PUSH1 0x91
00001afc: PUSH1 0x02
00001afe: EXP
00001aff: PUSH5 0x0400000000
00001b05: DUP10
00001b06: MUL
00001b07: DUP2
00001b08: SWAP1
00001b09: DIV
00001b0a: SWAP6
00001b0b: POP
00001b0c: DUP1
00001b0d: DUP10
00001b0e: MUL
00001b0f: DIV
00001b10: SWAP4
00001b11: POP
00001b12: PUSH2 0x1b1b
00001b15: DUP6
00001b16: DUP6
00001b17: PUSH2 0x09e1
00001b1a: JUMP
00001b1b: JUMPDEST
00001b1c: PUSH1 0x00
00001b1e: DUP8
00001b1f: DUP2
00001b20: MSTORE
00001b21: PUSH1 0x05
00001b23: PUSH1 0x20
00001b25: MSTORE
00001b26: PUSH1 0x40
00001b28: SWAP1
00001b29: KECCAK256
00001b2a: SLOAD
00001b2b: SWAP1
00001b2c: SWAP4
00001b2d: POP
00001b2e: DUP4
00001b2f: GT
00001b30: ISZERO
00001b31: PUSH2 0x1b98
00001b34: JUMPI
00001b35: PUSH1 0x40
00001b37: DUP1
00001b38: MLOAD
00001b39: PUSH1 0xe5
00001b3b: PUSH1 0x02
00001b3d: EXP
00001b3e: PUSH3 0x461bcd
00001b42: MUL
00001b43: DUP2
00001b44: MSTORE
00001b45: PUSH1 0x20
00001b47: PUSH1 0x04
00001b49: DUP3
00001b4a: ADD
00001b4b: MSTORE
00001b4c: PUSH1 0x38
00001b4e: PUSH1 0x24
00001b50: DUP3
00001b51: ADD
00001b52: MSTORE
00001b53: PUSH1 0x00
00001b55: DUP1
00001b56: MLOAD
00001b57: PUSH1 0x20
00001b59: PUSH2 0x26ab
00001b5c: DUP4
00001b5d: CODECOPY
00001b5e: DUP2
00001b5f: MLOAD
00001b60: SWAP2
00001b61: MSTORE
00001b62: PUSH1 0x44
00001b64: DUP3
00001b65: ADD
00001b66: MSTORE
00001b67: PUSH32 0x206665657320746f2066696c6c2074686973206f726465720000000000000000
00001b88: PUSH1 0x64
00001b8a: DUP3
00001b8b: ADD
00001b8c: MSTORE
00001b8d: SWAP1
00001b8e: MLOAD
00001b8f: SWAP1
00001b90: DUP2
00001b91: SWAP1
00001b92: SUB
00001b93: PUSH1 0x84
00001b95: ADD
00001b96: SWAP1
00001b97: REVERT
00001b98: JUMPDEST
00001b99: PUSH2 0x1bb4
00001b9c: PUSH8 0x0de0b6b3a7640000
00001ba5: PUSH2 0x0a14
00001ba8: DUP8
00001ba9: DUP8
00001baa: PUSH4 0xffffffff
00001baf: PUSH2 0x246e
00001bb2: AND
00001bb3: JUMP
00001bb4: JUMPDEST
00001bb5: SWAP2
00001bb6: POP
00001bb7: CALLVALUE
00001bb8: DUP3
00001bb9: EQ
00001bba: PUSH2 0x1c0d
00001bbd: JUMPI
00001bbe: PUSH1 0x40
00001bc0: DUP1
00001bc1: MLOAD
00001bc2: PUSH1 0xe5
00001bc4: PUSH1 0x02
00001bc6: EXP
00001bc7: PUSH3 0x461bcd
00001bcb: MUL
00001bcc: DUP2
00001bcd: MSTORE
00001bce: PUSH1 0x20
00001bd0: PUSH1 0x04
00001bd2: DUP3
00001bd3: ADD
00001bd4: DUP2
00001bd5: SWAP1
00001bd6: MSTORE
00001bd7: PUSH1 0x24
00001bd9: DUP3
00001bda: ADD
00001bdb: MSTORE
00001bdc: PUSH32 0x4554482073656e74206e6565647320746f20657175616c2074686520636f7374
00001bfd: PUSH1 0x44
00001bff: DUP3
00001c00: ADD
00001c01: MSTORE
00001c02: SWAP1
00001c03: MLOAD
00001c04: SWAP1
00001c05: DUP2
00001c06: SWAP1
00001c07: SUB
00001c08: PUSH1 0x64
00001c0a: ADD
00001c0b: SWAP1
00001c0c: REVERT
00001c0d: JUMPDEST
00001c0e: PUSH2 0x1c1e
00001c11: PUSH1 0x08
00001c13: DUP11
00001c14: PUSH4 0xffffffff
00001c19: PUSH2 0x2351
00001c1c: AND
00001c1d: JUMP
00001c1e: JUMPDEST
00001c1f: ISZERO
00001c20: ISZERO
00001c21: PUSH2 0x1c62
00001c24: JUMPI
00001c25: PUSH1 0x40
00001c27: DUP1
00001c28: MLOAD
00001c29: PUSH1 0xe5
00001c2b: PUSH1 0x02
00001c2d: EXP
00001c2e: PUSH3 0x461bcd
00001c32: MUL
00001c33: DUP2
00001c34: MSTORE
00001c35: PUSH1 0x20
00001c37: PUSH1 0x04
00001c39: DUP3
00001c3a: ADD
00001c3b: MSTORE
00001c3c: PUSH1 0x11
00001c3e: PUSH1 0x24
00001c40: DUP3
00001c41: ADD
00001c42: MSTORE
00001c43: PUSH1 0x00
00001c45: DUP1
00001c46: MLOAD
00001c47: PUSH1 0x20
00001c49: PUSH2 0x26cb
00001c4c: DUP4
00001c4d: CODECOPY
00001c4e: DUP2
00001c4f: MLOAD
00001c50: SWAP2
00001c51: MSTORE
00001c52: PUSH1 0x44
00001c54: DUP3
00001c55: ADD
00001c56: MSTORE
00001c57: SWAP1
00001c58: MLOAD
00001c59: SWAP1
00001c5a: DUP2
00001c5b: SWAP1
00001c5c: SUB
00001c5d: PUSH1 0x64
00001c5f: ADD
00001c60: SWAP1
00001c61: REVERT
00001c62: JUMPDEST
00001c63: PUSH1 0x06
00001c65: DUP1
00001c66: SLOAD
00001c67: PUSH1 0xe0
00001c69: PUSH1 0x02
00001c6b: EXP
00001c6c: PUSH1 0x04
00001c6e: DUP12
00001c6f: MUL
00001c70: DIV
00001c71: SWAP1
00001c72: DUP2
00001c73: LT
00001c74: PUSH2 0x1c79
00001c77: JUMPI
00001c78: INVALID
00001c79: JUMPDEST
00001c7a: PUSH1 0x00
00001c7c: SWAP2
00001c7d: DUP3
00001c7e: MSTORE
00001c7f: PUSH1 0x20
00001c81: DUP3
00001c82: KECCAK256
00001c83: ADD
00001c84: SLOAD
00001c85: PUSH1 0x40
00001c87: MLOAD
00001c88: PUSH1 0x01
00001c8a: PUSH1 0xa0
00001c8c: PUSH1 0x02
00001c8e: EXP
00001c8f: SUB
00001c90: SWAP1
00001c91: SWAP2
00001c92: AND
00001c93: SWAP2
00001c94: CALLVALUE
00001c95: DUP1
00001c96: ISZERO
00001c97: PUSH2 0x08fc
00001c9a: MUL
00001c9b: SWAP3
00001c9c: SWAP1
00001c9d: SWAP2
00001c9e: DUP2
00001c9f: DUP2
00001ca0: DUP2
00001ca1: DUP6
00001ca2: DUP9
00001ca3: DUP9
00001ca4: CALL
00001ca5: SWAP4
00001ca6: POP
00001ca7: POP
00001ca8: POP
00001ca9: POP
00001caa: ISZERO
00001cab: DUP1
00001cac: ISZERO
00001cad: PUSH2 0x1cba
00001cb0: JUMPI
00001cb1: RETURNDATASIZE
00001cb2: PUSH1 0x00
00001cb4: DUP1
00001cb5: RETURNDATACOPY
00001cb6: RETURNDATASIZE
00001cb7: PUSH1 0x00
00001cb9: REVERT
00001cba: JUMPDEST
00001cbb: POP
00001cbc: PUSH1 0x0a
00001cbe: SLOAD
00001cbf: PUSH1 0x40
00001cc1: DUP1
00001cc2: MLOAD
00001cc3: PUSH32 0xe2d0d51900000000000000000000000000000000000000000000000000000000
00001ce4: DUP2
00001ce5: MSTORE
00001ce6: CALLER
00001ce7: PUSH1 0x04
00001ce9: DUP3
00001cea: ADD
00001ceb: MSTORE
00001cec: PUSH1 0x24
00001cee: DUP2
00001cef: ADD
00001cf0: DUP8
00001cf1: SWAP1
00001cf2: MSTORE
00001cf3: SWAP1
00001cf4: MLOAD
00001cf5: PUSH1 0x01
00001cf7: PUSH1 0xa0
00001cf9: PUSH1 0x02
00001cfb: EXP
00001cfc: SUB
00001cfd: SWAP1
00001cfe: SWAP3
00001cff: AND
00001d00: SWAP2
00001d01: PUSH4 0xe2d0d519
00001d06: SWAP2
00001d07: PUSH1 0x44
00001d09: DUP1
00001d0a: DUP3
00001d0b: ADD
00001d0c: SWAP3
00001d0d: PUSH1 0x00
00001d0f: SWAP3
00001d10: SWAP1
00001d11: SWAP2
00001d12: SWAP1
00001d13: DUP3
00001d14: SWAP1
00001d15: SUB
00001d16: ADD
00001d17: DUP2
00001d18: DUP4
00001d19: DUP8
00001d1a: DUP1
00001d1b: EXTCODESIZE
00001d1c: ISZERO
00001d1d: DUP1
00001d1e: ISZERO
00001d1f: PUSH2 0x137b
00001d22: JUMPI
00001d23: PUSH1 0x00
00001d25: DUP1
00001d26: REVERT
00001d27: JUMPDEST
00001d28: PUSH1 0x00
00001d2a: PUSH2 0x1d32
00001d2d: CALLER
00001d2e: PUSH2 0x24bc
00001d31: JUMP
00001d32: JUMPDEST
00001d33: PUSH1 0x00
00001d35: DUP2
00001d36: DUP2
00001d37: MSTORE
00001d38: PUSH1 0x05
00001d3a: PUSH1 0x20
00001d3c: MSTORE
00001d3d: PUSH1 0x40
00001d3f: SWAP1
00001d40: KECCAK256
00001d41: SLOAD
00001d42: SWAP1
00001d43: SWAP2
00001d44: POP
00001d45: DUP3
00001d46: GT
00001d47: ISZERO
00001d48: PUSH2 0x1dc1
00001d4b: JUMPI
00001d4c: PUSH1 0x40
00001d4e: DUP1
00001d4f: MLOAD
00001d50: PUSH1 0xe5
00001d52: PUSH1 0x02
00001d54: EXP
00001d55: PUSH3 0x461bcd
00001d59: MUL
00001d5a: DUP2
00001d5b: MSTORE
00001d5c: PUSH1 0x20
00001d5e: PUSH1 0x04
00001d60: DUP3
00001d61: ADD
00001d62: MSTORE
00001d63: PUSH1 0x29
00001d65: PUSH1 0x24
00001d67: DUP3
00001d68: ADD
00001d69: MSTORE
00001d6a: PUSH32 0x596f75277265207769746864726177696e67206d6f7265207468616e20796f75
00001d8b: PUSH1 0x44
00001d8d: DUP3
00001d8e: ADD
00001d8f: MSTORE
00001d90: PUSH32 0x722062616c616e63650000000000000000000000000000000000000000000000
00001db1: PUSH1 0x64
00001db3: DUP3
00001db4: ADD
00001db5: MSTORE
00001db6: SWAP1
00001db7: MLOAD
00001db8: SWAP1
00001db9: DUP2
00001dba: SWAP1
00001dbb: SUB
00001dbc: PUSH1 0x84
00001dbe: ADD
00001dbf: SWAP1
00001dc0: REVERT
00001dc1: JUMPDEST
00001dc2: PUSH1 0x00
00001dc4: DUP2
00001dc5: DUP2
00001dc6: MSTORE
00001dc7: PUSH1 0x05
00001dc9: PUSH1 0x20
00001dcb: MSTORE
00001dcc: PUSH1 0x40
00001dce: SWAP1
00001dcf: KECCAK256
00001dd0: SLOAD
00001dd1: PUSH2 0x1de0
00001dd4: SWAP1
00001dd5: DUP4
00001dd6: PUSH4 0xffffffff
00001ddb: PUSH2 0x25cc
00001dde: AND
00001ddf: JUMP
00001de0: JUMPDEST
00001de1: PUSH1 0x00
00001de3: DUP3
00001de4: DUP2
00001de5: MSTORE
00001de6: PUSH1 0x05
00001de8: PUSH1 0x20
00001dea: MSTORE
00001deb: PUSH1 0x40
00001ded: SWAP1
00001dee: KECCAK256
00001def: SSTORE
00001df0: PUSH1 0x04
00001df2: SLOAD
00001df3: PUSH2 0x1e02
00001df6: SWAP1
00001df7: DUP4
00001df8: PUSH4 0xffffffff
00001dfd: PUSH2 0x25cc
00001e00: AND
00001e01: JUMP
00001e02: JUMPDEST
00001e03: PUSH1 0x04
00001e05: SSTORE
00001e06: PUSH1 0x00
00001e08: DUP2
00001e09: DUP2
00001e0a: MSTORE
00001e0b: PUSH1 0x05
00001e0d: PUSH1 0x20
00001e0f: MSTORE
00001e10: PUSH1 0x40
00001e12: SWAP1
00001e13: KECCAK256
00001e14: SLOAD
00001e15: ISZERO
00001e16: ISZERO
00001e17: PUSH2 0x1e2a
00001e1a: JUMPI
00001e1b: PUSH1 0x00
00001e1d: DUP2
00001e1e: DUP2
00001e1f: MSTORE
00001e20: PUSH1 0x05
00001e22: PUSH1 0x20
00001e24: MSTORE
00001e25: PUSH1 0x40
00001e27: DUP2
00001e28: KECCAK256
00001e29: SSTORE
00001e2a: JUMPDEST
00001e2b: PUSH1 0x0b
00001e2d: SLOAD
00001e2e: PUSH1 0x40
00001e30: DUP1
00001e31: MLOAD
00001e32: PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000
00001e53: DUP2
00001e54: MSTORE
00001e55: CALLER
00001e56: PUSH1 0x04
00001e58: DUP3
00001e59: ADD
00001e5a: MSTORE
00001e5b: PUSH1 0x24
00001e5d: DUP2
00001e5e: ADD
00001e5f: DUP6
00001e60: SWAP1
00001e61: MSTORE
00001e62: SWAP1
00001e63: MLOAD
00001e64: PUSH1 0x01
00001e66: PUSH1 0xa0
00001e68: PUSH1 0x02
00001e6a: EXP
00001e6b: SUB
00001e6c: SWAP1
00001e6d: SWAP3
00001e6e: AND
00001e6f: SWAP2
00001e70: PUSH4 0xa9059cbb
00001e75: SWAP2
00001e76: PUSH1 0x44
00001e78: DUP1
00001e79: DUP3
00001e7a: ADD
00001e7b: SWAP3
00001e7c: PUSH1 0x20
00001e7e: SWAP3
00001e7f: SWAP1
00001e80: SWAP2
00001e81: SWAP1
00001e82: DUP3
00001e83: SWAP1
00001e84: SUB
00001e85: ADD
00001e86: DUP2
00001e87: PUSH1 0x00
00001e89: DUP8
00001e8a: DUP1
00001e8b: EXTCODESIZE
00001e8c: ISZERO
00001e8d: DUP1
00001e8e: ISZERO
00001e8f: PUSH2 0x1e97
00001e92: JUMPI
00001e93: PUSH1 0x00
00001e95: DUP1
00001e96: REVERT
00001e97: JUMPDEST
00001e98: POP
00001e99: GAS
00001e9a: CALL
00001e9b: ISZERO
00001e9c: DUP1
00001e9d: ISZERO
00001e9e: PUSH2 0x1eab
00001ea1: JUMPI
00001ea2: RETURNDATASIZE
00001ea3: PUSH1 0x00
00001ea5: DUP1
00001ea6: RETURNDATACOPY
00001ea7: RETURNDATASIZE
00001ea8: PUSH1 0x00
00001eaa: REVERT
00001eab: JUMPDEST
00001eac: POP
00001ead: POP
00001eae: POP
00001eaf: POP
00001eb0: PUSH1 0x40
00001eb2: MLOAD
00001eb3: RETURNDATASIZE
00001eb4: PUSH1 0x20
00001eb6: DUP2
00001eb7: LT
00001eb8: ISZERO
00001eb9: PUSH2 0x1ec1
00001ebc: JUMPI
00001ebd: PUSH1 0x00
00001ebf: DUP1
00001ec0: REVERT
00001ec1: JUMPDEST
00001ec2: POP
00001ec3: POP
00001ec4: POP
00001ec5: POP
00001ec6: JUMP
00001ec7: JUMPDEST
00001ec8: PUSH1 0x00
00001eca: DUP1
00001ecb: DUP1
00001ecc: DUP1
00001ecd: DUP1
00001ece: PUSH2 0x1ede
00001ed1: PUSH1 0x08
00001ed3: DUP8
00001ed4: PUSH4 0xffffffff
00001ed9: PUSH2 0x233b
00001edc: AND
00001edd: JUMP
00001ede: JUMPDEST
00001edf: SWAP1
00001ee0: POP
00001ee1: PUSH1 0xfe
00001ee3: PUSH1 0x02
00001ee5: EXP
00001ee6: DUP2
00001ee7: DIV
00001ee8: PUSH1 0x02
00001eea: DUP2
00001eeb: GT
00001eec: ISZERO
00001eed: PUSH2 0x1ef2
00001ef0: JUMPI
00001ef1: INVALID
00001ef2: JUMPDEST
00001ef3: PUSH1 0x06
00001ef5: DUP1
00001ef6: SLOAD
00001ef7: PUSH1 0xe0
00001ef9: PUSH1 0x02
00001efb: EXP
00001efc: PUSH1 0x04
00001efe: DUP6
00001eff: MUL
00001f00: DIV
00001f01: SWAP1
00001f02: DUP2
00001f03: LT
00001f04: PUSH2 0x1f09
00001f07: JUMPI
00001f08: INVALID
00001f09: JUMPDEST
00001f0a: PUSH1 0x00
00001f0c: SWAP2
00001f0d: DUP3
00001f0e: MSTORE
00001f0f: PUSH1 0x20
00001f11: SWAP1
00001f12: SWAP2
00001f13: KECCAK256
00001f14: ADD
00001f15: SLOAD
00001f16: SWAP1
00001f17: SWAP6
00001f18: POP
00001f19: PUSH1 0x01
00001f1b: PUSH1 0xa0
00001f1d: PUSH1 0x02
00001f1f: EXP
00001f20: SUB
00001f21: AND
00001f22: SWAP4
00001f23: POP
00001f24: PUSH1 0x91
00001f26: PUSH1 0x02
00001f28: EXP
00001f29: PUSH5 0x0400000000
00001f2f: DUP3
00001f30: MUL
00001f31: DUP2
00001f32: SWAP1
00001f33: DIV
00001f34: SWAP4
00001f35: POP
00001f36: DUP1
00001f37: DUP3
00001f38: MUL
00001f39: DIV
00001f3a: SWAP2
00001f3b: POP
00001f3c: POP
00001f3d: SWAP2
00001f3e: SWAP4
00001f3f: POP
00001f40: SWAP2
00001f41: SWAP4
00001f42: JUMP
00001f43: JUMPDEST
00001f44: PUSH1 0x02
00001f46: SLOAD
00001f47: DUP2
00001f48: JUMP
00001f49: JUMPDEST
00001f4a: PUSH1 0x00
00001f4c: DUP1
00001f4d: DUP1
00001f4e: DUP1
00001f4f: DUP1
00001f50: DUP1
00001f51: DUP1
00001f52: PUSH2 0x1f62
00001f55: PUSH1 0x08
00001f57: DUP10
00001f58: PUSH4 0xffffffff
00001f5d: PUSH2 0x233b
00001f60: AND
00001f61: JUMP
00001f62: JUMPDEST
00001f63: SWAP7
00001f64: POP
00001f65: PUSH1 0xfe
00001f67: PUSH1 0x02
00001f69: EXP
00001f6a: DUP8
00001f6b: DIV
00001f6c: PUSH1 0x02
00001f6e: DUP2
00001f6f: GT
00001f70: ISZERO
00001f71: PUSH2 0x1f76
00001f74: JUMPI
00001f75: INVALID
00001f76: JUMPDEST
00001f77: SWAP6
00001f78: POP
00001f79: PUSH1 0x01
00001f7b: DUP7
00001f7c: PUSH1 0x02
00001f7e: DUP2
00001f7f: GT
00001f80: ISZERO
00001f81: PUSH2 0x1f86
00001f84: JUMPI
00001f85: INVALID
00001f86: JUMPDEST
00001f87: EQ
00001f88: PUSH2 0x1fdb
00001f8b: JUMPI
00001f8c: PUSH1 0x40
00001f8e: DUP1
00001f8f: MLOAD
00001f90: PUSH1 0xe5
00001f92: PUSH1 0x02
00001f94: EXP
00001f95: PUSH3 0x461bcd
00001f99: MUL
00001f9a: DUP2
00001f9b: MSTORE
00001f9c: PUSH1 0x20
00001f9e: PUSH1 0x04
00001fa0: DUP3
00001fa1: ADD
00001fa2: MSTORE
00001fa3: PUSH1 0x17
00001fa5: PUSH1 0x24
00001fa7: DUP3
00001fa8: ADD
00001fa9: MSTORE
00001faa: PUSH32 0x54686973206973206e6f74206120627579206f72646572000000000000000000
00001fcb: PUSH1 0x44
00001fcd: DUP3
00001fce: ADD
00001fcf: MSTORE
00001fd0: SWAP1
00001fd1: MLOAD
00001fd2: SWAP1
00001fd3: DUP2
00001fd4: SWAP1
00001fd5: SUB
00001fd6: PUSH1 0x64
00001fd8: ADD
00001fd9: SWAP1
00001fda: REVERT
00001fdb: JUMPDEST
00001fdc: CALLER
00001fdd: PUSH1 0x00
00001fdf: SWAP1
00001fe0: DUP2
00001fe1: MSTORE
00001fe2: PUSH1 0x07
00001fe4: PUSH1 0x20
00001fe6: MSTORE
00001fe7: PUSH1 0x40
00001fe9: SWAP1
00001fea: KECCAK256
00001feb: SLOAD
00001fec: SWAP5
00001fed: POP
00001fee: PUSH1 0xe0
00001ff0: PUSH1 0x02
00001ff2: EXP
00001ff3: PUSH1 0x04
00001ff5: DUP9
00001ff6: MUL
00001ff7: DIV
00001ff8: DUP6
00001ff9: EQ
00001ffa: PUSH2 0x2072
00001ffd: JUMPI
00001ffe: PUSH1 0x40
00002000: DUP1
00002001: MLOAD
00002002: PUSH1 0xe5
00002004: PUSH1 0x02
00002006: EXP
00002007: PUSH3 0x461bcd
0000200b: MUL
0000200c: DUP2
0000200d: MSTORE
0000200e: PUSH1 0x20
00002010: PUSH1 0x04
00002012: DUP3
00002013: ADD
00002014: MSTORE
00002015: PUSH1 0x24
00002017: DUP1
00002018: DUP3
00002019: ADD
0000201a: MSTORE
0000201b: PUSH32 0x596f7520617265206e6f74207468652073656e646572206f662074686973206f
0000203c: PUSH1 0x44
0000203e: DUP3
0000203f: ADD
00002040: MSTORE
00002041: PUSH32 0x7264657200000000000000000000000000000000000000000000000000000000
00002062: PUSH1 0x64
00002064: DUP3
00002065: ADD
00002066: MSTORE
00002067: SWAP1
00002068: MLOAD
00002069: SWAP1
0000206a: DUP2
0000206b: SWAP1
0000206c: SUB
0000206d: PUSH1 0x84
0000206f: ADD
00002070: SWAP1
00002071: REVERT
00002072: JUMPDEST
00002073: PUSH1 0x91
00002075: PUSH1 0x02
00002077: EXP
00002078: PUSH5 0x0400000000
0000207e: DUP9
0000207f: MUL
00002080: DUP2
00002081: SWAP1
00002082: DIV
00002083: SWAP5
00002084: POP
00002085: DUP1
00002086: DUP9
00002087: MUL
00002088: DIV
00002089: SWAP3
0000208a: POP
0000208b: PUSH2 0x209b
0000208e: PUSH1 0x08
00002090: DUP10
00002091: PUSH4 0xffffffff
00002096: PUSH2 0x2351
00002099: AND
0000209a: JUMP
0000209b: JUMPDEST
0000209c: ISZERO
0000209d: ISZERO
0000209e: PUSH2 0x20df
000020a1: JUMPI
000020a2: PUSH1 0x40
000020a4: DUP1
000020a5: MLOAD
000020a6: PUSH1 0xe5
000020a8: PUSH1 0x02
000020aa: EXP
000020ab: PUSH3 0x461bcd
000020af: MUL
000020b0: DUP2
000020b1: MSTORE
000020b2: PUSH1 0x20
000020b4: PUSH1 0x04
000020b6: DUP3
000020b7: ADD
000020b8: MSTORE
000020b9: PUSH1 0x11
000020bb: PUSH1 0x24
000020bd: DUP3
000020be: ADD
000020bf: MSTORE
000020c0: PUSH1 0x00
000020c2: DUP1
000020c3: MLOAD
000020c4: PUSH1 0x20
000020c6: PUSH2 0x26cb
000020c9: DUP4
000020ca: CODECOPY
000020cb: DUP2
000020cc: MLOAD
000020cd: SWAP2
000020ce: MSTORE
000020cf: PUSH1 0x44
000020d1: DUP3
000020d2: ADD
000020d3: MSTORE
000020d4: SWAP1
000020d5: MLOAD
000020d6: SWAP1
000020d7: DUP2
000020d8: SWAP1
000020d9: SUB
000020da: PUSH1 0x64
000020dc: ADD
000020dd: SWAP1
000020de: REVERT
000020df: JUMPDEST
000020e0: PUSH2 0x20e9
000020e3: DUP5
000020e4: DUP5
000020e5: PUSH2 0x09e1
000020e8: JUMP
000020e9: JUMPDEST
000020ea: SWAP2
000020eb: POP
000020ec: PUSH1 0x00
000020ee: DUP3
000020ef: GT
000020f0: ISZERO
000020f1: PUSH2 0x2123
000020f4: JUMPI
000020f5: PUSH1 0x00
000020f7: DUP6
000020f8: DUP2
000020f9: MSTORE
000020fa: PUSH1 0x05
000020fc: PUSH1 0x20
000020fe: MSTORE
000020ff: PUSH1 0x40
00002101: SWAP1
00002102: KECCAK256
00002103: SLOAD
00002104: PUSH2 0x2113
00002107: SWAP1
00002108: DUP4
00002109: PUSH4 0xffffffff
0000210e: PUSH2 0x2432
00002111: AND
00002112: JUMP
00002113: JUMPDEST
00002114: PUSH1 0x00
00002116: DUP7
00002117: DUP2
00002118: MSTORE
00002119: PUSH1 0x05
0000211b: PUSH1 0x20
0000211d: MSTORE
0000211e: PUSH1 0x40
00002120: SWAP1
00002121: KECCAK256
00002122: SSTORE
00002123: JUMPDEST
00002124: PUSH2 0x213f
00002127: PUSH8 0x0de0b6b3a7640000
00002130: PUSH2 0x0a14
00002133: DUP7
00002134: DUP7
00002135: PUSH4 0xffffffff
0000213a: PUSH2 0x246e
0000213d: AND
0000213e: JUMP
0000213f: JUMPDEST
00002140: PUSH1 0x40
00002142: MLOAD
00002143: SWAP1
00002144: SWAP2
00002145: POP
00002146: CALLER
00002147: SWAP1
00002148: DUP3
00002149: ISZERO
0000214a: PUSH2 0x08fc
0000214d: MUL
0000214e: SWAP1
0000214f: DUP4
00002150: SWAP1
00002151: PUSH1 0x00
00002153: DUP2
00002154: DUP2
00002155: DUP2
00002156: DUP6
00002157: DUP9
00002158: DUP9
00002159: CALL
0000215a: SWAP4
0000215b: POP
0000215c: POP
0000215d: POP
0000215e: POP
0000215f: ISZERO
00002160: DUP1
00002161: ISZERO
00002162: PUSH2 0x216f
00002165: JUMPI
00002166: RETURNDATASIZE
00002167: PUSH1 0x00
00002169: DUP1
0000216a: RETURNDATACOPY
0000216b: RETURNDATASIZE
0000216c: PUSH1 0x00
0000216e: REVERT
0000216f: JUMPDEST
00002170: POP
00002171: CALLER
00002172: DUP7
00002173: PUSH1 0x02
00002175: DUP2
00002176: GT
00002177: ISZERO
00002178: PUSH2 0x217d
0000217b: JUMPI
0000217c: INVALID
0000217d: JUMPDEST
0000217e: PUSH1 0x40
00002180: DUP1
00002181: MLOAD
00002182: DUP8
00002183: DUP2
00002184: MSTORE
00002185: PUSH1 0x20
00002187: DUP2
00002188: ADD
00002189: DUP8
0000218a: SWAP1
0000218b: MSTORE
0000218c: DUP2
0000218d: MLOAD
0000218e: PUSH32 0xe2f99b27ce844edd7e242a1056afe8f0a4f5c28c45b300a13fec9aff87d82bff
000021af: SWAP3
000021b0: SWAP2
000021b1: DUP2
000021b2: SWAP1
000021b3: SUB
000021b4: SWAP1
000021b5: SWAP2
000021b6: ADD
000021b7: SWAP1
000021b8: LOG3
000021b9: POP
000021ba: POP
000021bb: POP
000021bc: POP
000021bd: POP
000021be: POP
000021bf: POP
000021c0: POP
000021c1: JUMP
000021c2: JUMPDEST
000021c3: PUSH1 0x06
000021c5: DUP1
000021c6: SLOAD
000021c7: DUP3
000021c8: SWAP1
000021c9: DUP2
000021ca: LT
000021cb: PUSH2 0x21d0
000021ce: JUMPI
000021cf: INVALID
000021d0: JUMPDEST
000021d1: PUSH1 0x00
000021d3: SWAP2
000021d4: DUP3
000021d5: MSTORE
000021d6: PUSH1 0x20
000021d8: SWAP1
000021d9: SWAP2
000021da: KECCAK256
000021db: ADD
000021dc: SLOAD
000021dd: PUSH1 0x01
000021df: PUSH1 0xa0
000021e1: PUSH1 0x02
000021e3: EXP
000021e4: SUB
000021e5: AND
000021e6: SWAP1
000021e7: POP
000021e8: DUP2
000021e9: JUMP
000021ea: JUMPDEST
000021eb: PUSH1 0x00
000021ed: SLOAD
000021ee: PUSH1 0x01
000021f0: PUSH1 0xa0
000021f2: PUSH1 0x02
000021f4: EXP
000021f5: SUB
000021f6: AND
000021f7: CALLER
000021f8: EQ
000021f9: PUSH2 0x224c
000021fc: JUMPI
000021fd: PUSH1 0x40
000021ff: DUP1
00002200: MLOAD
00002201: PUSH1 0xe5
00002203: PUSH1 0x02
00002205: EXP
00002206: PUSH3 0x461bcd
0000220a: MUL
0000220b: DUP2
0000220c: MSTORE
0000220d: PUSH1 0x20
0000220f: PUSH1 0x04
00002211: DUP3
00002212: ADD
00002213: MSTORE
00002214: PUSH1 0x15
00002216: PUSH1 0x24
00002218: DUP3
00002219: ADD
0000221a: MSTORE
0000221b: PUSH32 0x53656e646572206e6f7420617574686f72697365640000000000000000000000
0000223c: PUSH1 0x44
0000223e: DUP3
0000223f: ADD
00002240: MSTORE
00002241: SWAP1
00002242: MLOAD
00002243: SWAP1
00002244: DUP2
00002245: SWAP1
00002246: SUB
00002247: PUSH1 0x64
00002249: ADD
0000224a: SWAP1
0000224b: REVERT
0000224c: JUMPDEST
0000224d: PUSH1 0x01
0000224f: PUSH1 0xa0
00002251: PUSH1 0x02
00002253: EXP
00002254: SUB
00002255: DUP2
00002256: AND
00002257: ISZERO
00002258: ISZERO
00002259: PUSH2 0x2261
0000225c: JUMPI
0000225d: PUSH1 0x00
0000225f: DUP1
00002260: REVERT
00002261: JUMPDEST
00002262: PUSH1 0x00
00002264: DUP1
00002265: SLOAD
00002266: PUSH1 0x40
00002268: MLOAD
00002269: PUSH1 0x01
0000226b: PUSH1 0xa0
0000226d: PUSH1 0x02
0000226f: EXP
00002270: SUB
00002271: DUP1
00002272: DUP6
00002273: AND
00002274: SWAP4
00002275: SWAP3
00002276: AND
00002277: SWAP2
00002278: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
00002299: SWAP2
0000229a: LOG3
0000229b: PUSH1 0x00
0000229d: DUP1
0000229e: SLOAD
0000229f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000022b4: NOT
000022b5: AND
000022b6: PUSH1 0x01
000022b8: PUSH1 0xa0
000022ba: PUSH1 0x02
000022bc: EXP
000022bd: SUB
000022be: SWAP3
000022bf: SWAP1
000022c0: SWAP3
000022c1: AND
000022c2: SWAP2
000022c3: SWAP1
000022c4: SWAP2
000022c5: OR
000022c6: SWAP1
000022c7: SSTORE
000022c8: JUMP
000022c9: JUMPDEST
000022ca: PUSH2 0x22d1
000022cd: PUSH2 0x264d
000022d0: JUMP
000022d1: JUMPDEST
000022d2: PUSH1 0x00
000022d4: JUMPDEST
000022d5: PUSH1 0x0a
000022d7: DUP2
000022d8: LT
000022d9: ISZERO
000022da: PUSH2 0x2335
000022dd: JUMPI
000022de: PUSH2 0x22e7
000022e1: PUSH1 0x08
000022e3: PUSH2 0x2441
000022e6: JUMP
000022e7: JUMPDEST
000022e8: DUP4
000022e9: DUP3
000022ea: ADD
000022eb: LT
000022ec: ISZERO
000022ed: PUSH2 0x2319
000022f0: JUMPI
000022f1: PUSH2 0x2303
000022f4: PUSH1 0x08
000022f6: DUP5
000022f7: DUP4
000022f8: ADD
000022f9: PUSH4 0xffffffff
000022fe: PUSH2 0x2448
00002301: AND
00002302: JUMP
00002303: JUMPDEST
00002304: DUP3
00002305: DUP3
00002306: PUSH1 0x0a
00002308: DUP2
00002309: LT
0000230a: PUSH2 0x230f
0000230d: JUMPI
0000230e: INVALID
0000230f: JUMPDEST
00002310: PUSH1 0x20
00002312: MUL
00002313: ADD
00002314: MSTORE
00002315: PUSH2 0x232d
00002318: JUMP
00002319: JUMPDEST
0000231a: PUSH1 0x00
0000231c: DUP3
0000231d: DUP3
0000231e: PUSH1 0x0a
00002320: DUP2
00002321: LT
00002322: PUSH2 0x2327
00002325: JUMPI
00002326: INVALID
00002327: JUMPDEST
00002328: PUSH1 0x20
0000232a: MUL
0000232b: ADD
0000232c: MSTORE
0000232d: JUMPDEST
0000232e: PUSH1 0x01
00002330: ADD
00002331: PUSH2 0x22d4
00002334: JUMP
00002335: JUMPDEST
00002336: POP
00002337: SWAP2
00002338: SWAP1
00002339: POP
0000233a: JUMP
0000233b: JUMPDEST
0000233c: PUSH1 0x00
0000233e: SWAP1
0000233f: DUP2
00002340: MSTORE
00002341: PUSH1 0x20
00002343: SWAP2
00002344: SWAP1
00002345: SWAP2
00002346: MSTORE
00002347: PUSH1 0x40
00002349: SWAP1
0000234a: KECCAK256
0000234b: PUSH1 0x01
0000234d: ADD
0000234e: SLOAD
0000234f: SWAP1
00002350: JUMP
00002351: JUMPDEST
00002352: PUSH1 0x00
00002354: DUP2
00002355: DUP2
00002356: MSTORE
00002357: PUSH1 0x20
00002359: DUP4
0000235a: SWAP1
0000235b: MSTORE
0000235c: PUSH1 0x40
0000235e: DUP2
0000235f: KECCAK256
00002360: DUP1
00002361: SLOAD
00002362: ISZERO
00002363: ISZERO
00002364: PUSH2 0x2370
00002367: JUMPI
00002368: PUSH1 0x00
0000236a: SWAP2
0000236b: POP
0000236c: PUSH2 0x242b
0000236f: JUMP
00002370: JUMPDEST
00002371: PUSH1 0x01
00002373: DUP5
00002374: ADD
00002375: SLOAD
00002376: DUP2
00002377: SLOAD
00002378: LT
00002379: ISZERO
0000237a: PUSH2 0x23f8
0000237d: JUMPI
0000237e: DUP1
0000237f: SLOAD
00002380: PUSH1 0x01
00002382: DUP6
00002383: ADD
00002384: DUP1
00002385: SLOAD
00002386: DUP7
00002387: SWAP2
00002388: PUSH1 0x00
0000238a: SWAP2
0000238b: PUSH1 0x00
0000238d: NOT
0000238e: DUP2
0000238f: ADD
00002390: SWAP1
00002391: DUP2
00002392: LT
00002393: PUSH2 0x2398
00002396: JUMPI
00002397: INVALID
00002398: JUMPDEST
00002399: PUSH1 0x00
0000239b: SWAP2
0000239c: DUP3
0000239d: MSTORE
0000239e: PUSH1 0x20
000023a0: DUP1
000023a1: DUP4
000023a2: KECCAK256
000023a3: SWAP1
000023a4: SWAP2
000023a5: ADD
000023a6: SLOAD
000023a7: DUP4
000023a8: MSTORE
000023a9: DUP3
000023aa: ADD
000023ab: SWAP3
000023ac: SWAP1
000023ad: SWAP3
000023ae: MSTORE
000023af: PUSH1 0x40
000023b1: ADD
000023b2: SWAP1
000023b3: KECCAK256
000023b4: SSTORE
000023b5: PUSH1 0x01
000023b7: DUP5
000023b8: ADD
000023b9: DUP1
000023ba: SLOAD
000023bb: PUSH1 0x00
000023bd: NOT
000023be: DUP2
000023bf: ADD
000023c0: SWAP1
000023c1: DUP2
000023c2: LT
000023c3: PUSH2 0x23c8
000023c6: JUMPI
000023c7: INVALID
000023c8: JUMPDEST
000023c9: SWAP1
000023ca: PUSH1 0x00
000023cc: MSTORE
000023cd: PUSH1 0x20
000023cf: PUSH1 0x00
000023d1: KECCAK256
000023d2: ADD
000023d3: SLOAD
000023d4: DUP5
000023d5: PUSH1 0x01
000023d7: ADD
000023d8: PUSH1 0x01
000023da: DUP4
000023db: PUSH1 0x00
000023dd: ADD
000023de: SLOAD
000023df: SUB
000023e0: DUP2
000023e1: SLOAD
000023e2: DUP2
000023e3: LT
000023e4: ISZERO
000023e5: ISZERO
000023e6: PUSH2 0x23eb
000023e9: JUMPI
000023ea: INVALID
000023eb: JUMPDEST
000023ec: PUSH1 0x00
000023ee: SWAP2
000023ef: DUP3
000023f0: MSTORE
000023f1: PUSH1 0x20
000023f3: SWAP1
000023f4: SWAP2
000023f5: KECCAK256
000023f6: ADD
000023f7: SSTORE
000023f8: JUMPDEST
000023f9: PUSH1 0x01
000023fb: DUP5
000023fc: ADD
000023fd: DUP1
000023fe: SLOAD
000023ff: PUSH1 0x00
00002401: NOT
00002402: ADD
00002403: SWAP1
00002404: PUSH2 0x240d
00002407: SWAP1
00002408: DUP3
00002409: PUSH2 0x266d
0000240c: JUMP
0000240d: JUMPDEST
0000240e: POP
0000240f: PUSH1 0x00
00002411: DUP4
00002412: DUP2
00002413: MSTORE
00002414: PUSH1 0x20
00002416: DUP6
00002417: SWAP1
00002418: MSTORE
00002419: PUSH1 0x40
0000241b: DUP2
0000241c: KECCAK256
0000241d: DUP2
0000241e: DUP2
0000241f: SSTORE
00002420: PUSH1 0x01
00002422: SWAP1
00002423: DUP2
00002424: ADD
00002425: SWAP2
00002426: SWAP1
00002427: SWAP2
00002428: SSTORE
00002429: SWAP2
0000242a: POP
0000242b: JUMPDEST
0000242c: POP
0000242d: SWAP3
0000242e: SWAP2
0000242f: POP
00002430: POP
00002431: JUMP
00002432: JUMPDEST
00002433: PUSH1 0x00
00002435: DUP3
00002436: DUP3
00002437: ADD
00002438: DUP4
00002439: DUP2
0000243a: LT
0000243b: ISZERO
0000243c: PUSH2 0x0a2c
0000243f: JUMPI
00002440: INVALID
00002441: JUMPDEST
00002442: PUSH1 0x01
00002444: ADD
00002445: SLOAD
00002446: SWAP1
00002447: JUMP
00002448: JUMPDEST
00002449: PUSH1 0x00
0000244b: DUP3
0000244c: PUSH1 0x01
0000244e: ADD
0000244f: DUP3
00002450: DUP2
00002451: SLOAD
00002452: DUP2
00002453: LT
00002454: ISZERO
00002455: ISZERO
00002456: PUSH2 0x245b
00002459: JUMPI
0000245a: INVALID
0000245b: JUMPDEST
0000245c: SWAP1
0000245d: PUSH1 0x00
0000245f: MSTORE
00002460: PUSH1 0x20
00002462: PUSH1 0x00
00002464: KECCAK256
00002465: ADD
00002466: SLOAD
00002467: SWAP1
00002468: POP
00002469: SWAP3
0000246a: SWAP2
0000246b: POP
0000246c: POP
0000246d: JUMP
0000246e: JUMPDEST
0000246f: PUSH1 0x00
00002471: DUP3
00002472: DUP3
00002473: MUL
00002474: DUP4
00002475: ISZERO
00002476: DUP1
00002477: PUSH2 0x248a
0000247a: JUMPI
0000247b: POP
0000247c: DUP3
0000247d: DUP5
0000247e: DUP3
0000247f: DUP2
00002480: ISZERO
00002481: ISZERO
00002482: PUSH2 0x2487
00002485: JUMPI
00002486: INVALID
00002487: JUMPDEST
00002488: DIV
00002489: EQ
0000248a: JUMPDEST
0000248b: ISZERO
0000248c: ISZERO
0000248d: PUSH2 0x0a2c
00002490: JUMPI
00002491: INVALID
00002492: JUMPDEST
00002493: PUSH1 0x00
00002495: DUP1
00002496: DUP3
00002497: DUP5
00002498: DUP2
00002499: ISZERO
0000249a: ISZERO
0000249b: PUSH2 0x24a0
0000249e: JUMPI
0000249f: INVALID
000024a0: JUMPDEST
000024a1: DIV
000024a2: SWAP5
000024a3: SWAP4
000024a4: POP
000024a5: POP
000024a6: POP
000024a7: POP
000024a8: JUMP
000024a9: JUMPDEST
000024aa: PUSH14 0x8000000000000000000000000000
000024b9: GT
000024ba: SWAP1
000024bb: JUMP
000024bc: JUMPDEST
000024bd: PUSH1 0x01
000024bf: PUSH1 0xa0
000024c1: PUSH1 0x02
000024c3: EXP
000024c4: SUB
000024c5: DUP2
000024c6: AND
000024c7: PUSH1 0x00
000024c9: SWAP1
000024ca: DUP2
000024cb: MSTORE
000024cc: PUSH1 0x07
000024ce: PUSH1 0x20
000024d0: MSTORE
000024d1: PUSH1 0x40
000024d3: DUP2
000024d4: KECCAK256
000024d5: SLOAD
000024d6: ISZERO
000024d7: PUSH2 0x24f9
000024da: JUMPI
000024db: POP
000024dc: PUSH1 0x01
000024de: PUSH1 0xa0
000024e0: PUSH1 0x02
000024e2: EXP
000024e3: SUB
000024e4: DUP2
000024e5: AND
000024e6: PUSH1 0x00
000024e8: SWAP1
000024e9: DUP2
000024ea: MSTORE
000024eb: PUSH1 0x07
000024ed: PUSH1 0x20
000024ef: MSTORE
000024f0: PUSH1 0x40
000024f2: SWAP1
000024f3: KECCAK256
000024f4: SLOAD
000024f5: PUSH2 0x0a74
000024f8: JUMP
000024f9: JUMPDEST
000024fa: PUSH1 0x06
000024fc: SLOAD
000024fd: PUSH5 0x0100000000
00002503: GT
00002504: PUSH2 0x2557
00002507: JUMPI
00002508: PUSH1 0x40
0000250a: DUP1
0000250b: MLOAD
0000250c: PUSH1 0xe5
0000250e: PUSH1 0x02
00002510: EXP
00002511: PUSH3 0x461bcd
00002515: MUL
00002516: DUP2
00002517: MSTORE
00002518: PUSH1 0x20
0000251a: PUSH1 0x04
0000251c: DUP3
0000251d: ADD
0000251e: DUP2
0000251f: SWAP1
00002520: MSTORE
00002521: PUSH1 0x24
00002523: DUP3
00002524: ADD
00002525: MSTORE
00002526: PUSH32 0x526567697374657265642061646472657373657320686974206d6178696d756d
00002547: PUSH1 0x44
00002549: DUP3
0000254a: ADD
0000254b: MSTORE
0000254c: SWAP1
0000254d: MLOAD
0000254e: SWAP1
0000254f: DUP2
00002550: SWAP1
00002551: SUB
00002552: PUSH1 0x64
00002554: ADD
00002555: SWAP1
00002556: REVERT
00002557: JUMPDEST
00002558: POP
00002559: PUSH1 0x06
0000255b: DUP1
0000255c: SLOAD
0000255d: PUSH1 0x01
0000255f: PUSH1 0xa0
00002561: PUSH1 0x02
00002563: EXP
00002564: SUB
00002565: DUP4
00002566: AND
00002567: PUSH1 0x00
00002569: DUP2
0000256a: DUP2
0000256b: MSTORE
0000256c: PUSH1 0x07
0000256e: PUSH1 0x20
00002570: MSTORE
00002571: PUSH1 0x40
00002573: DUP2
00002574: KECCAK256
00002575: DUP4
00002576: SWAP1
00002577: SSTORE
00002578: PUSH1 0x01
0000257a: DUP4
0000257b: ADD
0000257c: DUP5
0000257d: SSTORE
0000257e: DUP4
0000257f: SWAP1
00002580: MSTORE
00002581: PUSH32 0xf652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f
000025a2: SWAP1
000025a3: SWAP2
000025a4: ADD
000025a5: DUP1
000025a6: SLOAD
000025a7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000025bc: NOT
000025bd: AND
000025be: SWAP1
000025bf: SWAP2
000025c0: OR
000025c1: SWAP1
000025c2: SSTORE
000025c3: SLOAD
000025c4: PUSH1 0x00
000025c6: NOT
000025c7: ADD
000025c8: PUSH2 0x0a74
000025cb: JUMP
000025cc: JUMPDEST
000025cd: PUSH1 0x00
000025cf: DUP3
000025d0: DUP3
000025d1: GT
000025d2: ISZERO
000025d3: PUSH2 0x25d8
000025d6: JUMPI
000025d7: INVALID
000025d8: JUMPDEST
000025d9: POP
000025da: SWAP1
000025db: SUB
000025dc: SWAP1
000025dd: JUMP
000025de: JUMPDEST
000025df: PUSH1 0x00
000025e1: DUP3
000025e2: DUP2
000025e3: MSTORE
000025e4: PUSH1 0x20
000025e6: DUP5
000025e7: SWAP1
000025e8: MSTORE
000025e9: PUSH1 0x40
000025eb: DUP2
000025ec: KECCAK256
000025ed: PUSH1 0x01
000025ef: DUP2
000025f0: ADD
000025f1: DUP4
000025f2: SWAP1
000025f3: SSTORE
000025f4: DUP1
000025f5: SLOAD
000025f6: DUP3
000025f7: LT
000025f8: ISZERO
000025f9: PUSH2 0x2605
000025fc: JUMPI
000025fd: PUSH1 0x01
000025ff: SWAP2
00002600: POP
00002601: PUSH2 0x2645
00002604: JUMP
00002605: JUMPDEST
00002606: DUP5
00002607: PUSH1 0x01
00002609: ADD
0000260a: DUP1
0000260b: SLOAD
0000260c: PUSH1 0x01
0000260e: ADD
0000260f: SWAP1
00002610: DUP2
00002611: PUSH2 0x261a
00002614: SWAP2
00002615: SWAP1
00002616: PUSH2 0x266d
00002619: JUMP
0000261a: JUMPDEST
0000261b: DUP1
0000261c: DUP3
0000261d: SSTORE
0000261e: PUSH1 0x01
00002620: DUP7
00002621: ADD
00002622: DUP1
00002623: SLOAD
00002624: DUP7
00002625: SWAP3
00002626: PUSH1 0x00
00002628: NOT
00002629: ADD
0000262a: SWAP1
0000262b: DUP2
0000262c: LT
0000262d: PUSH2 0x2632
00002630: JUMPI
00002631: INVALID
00002632: JUMPDEST
00002633: SWAP1
00002634: PUSH1 0x00
00002636: MSTORE
00002637: PUSH1 0x20
00002639: PUSH1 0x00
0000263b: KECCAK256
0000263c: ADD
0000263d: DUP2
0000263e: SWAP1
0000263f: SSTORE
00002640: POP
00002641: PUSH1 0x00
00002643: SWAP2
00002644: POP
00002645: JUMPDEST
00002646: POP
00002647: SWAP4
00002648: SWAP3
00002649: POP
0000264a: POP
0000264b: POP
0000264c: JUMP
0000264d: JUMPDEST
0000264e: PUSH2 0x0140
00002651: PUSH1 0x40
00002653: MLOAD
00002654: SWAP1
00002655: DUP2
00002656: ADD
00002657: PUSH1 0x40
00002659: MSTORE
0000265a: DUP1
0000265b: PUSH1 0x0a
0000265d: SWAP1
0000265e: PUSH1 0x20
00002660: DUP3
00002661: MUL
00002662: DUP1
00002663: CODESIZE
00002664: DUP4
00002665: CODECOPY
00002666: POP
00002667: SWAP2
00002668: SWAP3
00002669: SWAP2
0000266a: POP
0000266b: POP
0000266c: JUMP
0000266d: JUMPDEST
0000266e: DUP2
0000266f: SLOAD
00002670: DUP2
00002671: DUP4
00002672: SSTORE
00002673: DUP2
00002674: DUP2
00002675: GT
00002676: ISZERO
00002677: PUSH2 0x0fd9
0000267a: JUMPI
0000267b: PUSH1 0x00
0000267d: DUP4
0000267e: DUP2
0000267f: MSTORE
00002680: PUSH1 0x20
00002682: SWAP1
00002683: KECCAK256
00002684: PUSH2 0x0fd9
00002687: SWAP2
00002688: DUP2
00002689: ADD
0000268a: SWAP1
0000268b: DUP4
0000268c: ADD
0000268d: PUSH2 0x0a42
00002690: SWAP2
00002691: SWAP1
00002692: JUMPDEST
00002693: DUP1
00002694: DUP3
00002695: GT
00002696: ISZERO
00002697: PUSH2 0x26a6
0000269a: JUMPI
0000269b: PUSH1 0x00
0000269d: DUP2
0000269e: SSTORE
0000269f: PUSH1 0x01
000026a1: ADD
000026a2: PUSH2 0x2692
000026a5: JUMP
000026a6: JUMPDEST
000026a7: POP
000026a8: SWAP1
000026a9: JUMP
000026aa: STOP
000026ab: MSIZE
000026ac: PUSH16 0x7520646f206e6f74206861766520656e
000026bd: PUSH16 0x756768206465706f73697465644d6170
000026ce: KECCAK256
000026cf: PUSH19 0x656d6f7665206661696c656400000000000000
000026e3: STOP
000026e4: STOP
000026e5: STOP
000026e6: STOP
000026e7: STOP
000026e8: STOP
000026e9: STOP
000026ea: STOP
000026eb: LOG1
000026ec: PUSH6 0x627a7a723058
000026f3: KECCAK256
000026f4: PUSH16 0x21fef149cfd5eb425253dd093f85f424
00002705: SDIV
00002706: UNKNOWN(0xF8)
00002707: PUSH23

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: 0xc912a7d4cea4a367e70c99ee59e7eca010bed543a0bfa77a141df7aade65db9d
call_targets: 0xa9375923ddb69cd32955f536a351007415c02696
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xc912a7d4cea4a367e70c99ee59e7eca010bed543a0bfa77a141df7aade65db9d",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xa9375923ddb69cd32955f536a351007415c02696"
    ],
    "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": "0x0559c114",
            "selector": "0x0559c114",
            "calldata_variants": [
                "0x0559c114",
                "0x0559c1140000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x05e0141d",
            "selector": "0x05e0141d",
            "calldata_variants": [
                "0x05e0141d",
                "0x05e0141d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x13114a9d",
            "selector": "0x13114a9d",
            "calldata_variants": [
                "0x13114a9d",
                "0x13114a9d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x169c4733",
            "selector": "0x169c4733",
            "calldata_variants": [
                "0x169c4733",
                "0x169c47330000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1a3352c1",
            "selector": "0x1a3352c1",
            "calldata_variants": [
                "0x1a3352c1",
                "0x1a3352c10000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1c76e2b2",
            "selector": "0x1c76e2b2",
            "calldata_variants": [
                "0x1c76e2b2",
                "0x1c76e2b20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2453ffa8",
            "selector": "0x2453ffa8",
            "calldata_variants": [
                "0x2453ffa8",
                "0x2453ffa80000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3acde419",
            "selector": "0x3acde419",
            "calldata_variants": [
                "0x3acde419",
                "0x3acde4190000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 2057,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3333,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3720,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 10,
    "guards_detected": [],
    "untrusted_call_count": 10
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0xc912a7d4cea4a367e70c99ee59e7eca010bed543a0bfa77a141df7aade65db9d
call_targets: 0xa9375923ddb69cd32955f536a351007415c02696
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xc912a7d4cea4a367e70c99ee59e7eca010bed543a0bfa77a141df7aade65db9d",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xa9375923ddb69cd32955f536a351007415c02696"
    ],
    "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": "0x0559c114",
            "selector": "0x0559c114",
            "calldata_variants": [
                "0x0559c114",
                "0x0559c1140000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x05e0141d",
            "selector": "0x05e0141d",
            "calldata_variants": [
                "0x05e0141d",
                "0x05e0141d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x13114a9d",
            "selector": "0x13114a9d",
            "calldata_variants": [
                "0x13114a9d",
                "0x13114a9d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x169c4733",
            "selector": "0x169c4733",
            "calldata_variants": [
                "0x169c4733",
                "0x169c47330000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1a3352c1",
            "selector": "0x1a3352c1",
            "calldata_variants": [
                "0x1a3352c1",
                "0x1a3352c10000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1c76e2b2",
            "selector": "0x1c76e2b2",
            "calldata_variants": [
                "0x1c76e2b2",
                "0x1c76e2b20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2453ffa8",
            "selector": "0x2453ffa8",
            "calldata_variants": [
                "0x2453ffa8",
                "0x2453ffa80000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3acde419",
            "selector": "0x3acde419",
            "calldata_variants": [
                "0x3acde419",
                "0x3acde4190000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 2057,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3333,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3720,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 10,
    "guards_detected": []
}
medium other codex Ownership transfer calls assume success; misconfigured or non‑reverting PoolOwners can break trade invariants 75 no
view
evidence_json
{
    "evidence": "External calls to `poolOwners.sendOwnership` / `sendOwnershipFrom` are made without any success validation.",
    "locations": [
        "contracts/Contract.sol:338",
        "contracts/Contract.sol:426",
        "contracts/Contract.sol:455",
        "contracts/Contract.sol:490"
    ],
    "recommendation": "Require a trusted PoolOwners implementation and validate transfer success (e.g., have `sendOwnership`/`sendOwnershipFrom` return a boolean and `require` it, or verify ownership balances before/after). Consider checking `extcodesize` for a contract address on deployment.",
    "exploit_scenario": "If `poolOwners` is an EOA or a contract that returns success without actually transferring ownership (or fails silently), a seller can create a sell order without escrowed ownership and a buyer can fill it, paying ETH while receiving no LP tokens; similarly, in buy orders the seller can receive ETH while `sendOwnershipFrom` does not transfer tokens. Because no success signal is checked, the trade completes in OwnersExchange regardless."
}
low other codex Unchecked ERC20 `transfer` return values can desync fee accounting 65 no
view
evidence_json
{
    "evidence": "Multiple `feeToken.transfer(...)` calls are executed without checking the return value.",
    "locations": [
        "contracts/Contract.sol:287",
        "contracts/Contract.sol:461",
        "contracts/Contract.sol:496",
        "contracts/Contract.sol:508"
    ],
    "recommendation": "Use `require(feeToken.transfer(...))` or a SafeERC20 wrapper to ensure transfers succeed, and revert if they fail.",
    "exploit_scenario": "If `feeToken` is a non\u2011standard ERC20 that returns `false` instead of reverting on failure, `withdrawFeeToken` and fee settlement paths will still decrement `feeBalances`/`totalFees` even though the transfer did not occur. This can under\u2011collateralize user fee balances and allow `withdrawDistributedToPoolOwners` to sweep tokens that should remain reserved."
}
info other cast Heavy EXTCODE*/BALANCE usage 55 no
view
evidence_json
{
    "notes": "frequent external code or balance checks; may indicate introspection or validation logic",
    "ext_balance_count": 8
}