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

Analysis Run

7627b092-c8ea-44dc-823d-3af9980dd230

failed
Chain ID
1
Address
Block Number
Created
Thu, Jan 1, 2026 5:07 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
Not yet
Best current signal
Authorization based on tx.origin
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
31088 report.consolidate complete 1 / 1 3 months ago
76342 artifact.fetch failed 1 / 3 2 weeks ago
76343 tool.cast_disasm complete 1 / 3 2 weeks ago
76344 analysis.bundle complete 1 / 3 2 weeks ago
76345 capability.graph complete 1 / 3 2 weeks ago
76346 detector.run complete 1 / 3 2 weeks ago
76347 validation.fork complete 1 / 3 2 weeks ago

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
0
No findings?
yes
Summary
No concrete, exploitable profit paths found in the audited sources.
View stderr
[codex:151974] OpenAI Codex v0.77.0 (research preview)
[codex:151974] --------
[codex:151974] workdir: /tmp/codex-multi-pu0qjm1n
[codex:151974] model: gpt-5.2-codex
[codex:151974] provider: openai
[codex:151974] approval: never
[codex:151974] sandbox: read-only
[codex:151974] reasoning effort: xhigh
[codex:151974] reasoning summaries: auto
[codex:151974] session id: 019b7a83-caf9-7a12-a680-e988c396c190
[codex:151974] --------
[codex:151974] user
[codex:151974] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:151974] 
[codex:151974] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:151974] 
[codex:151974] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:151974] - Gas inefficiency, code quality, naming, or best practices
[codex:151974] - Theoretical vulnerabilities without a clear extraction path
[codex:151974] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:151974] - Front-running unless it enables theft beyond MEV
[codex:151974] - DoS, griefing, or issues that don't result in attacker profit
[codex:151974] - Missing events, view function issues, or informational findings
[codex:151974] 
[codex:151974] HIGH-VALUE PATTERNS TO HUNT:
[codex:151974] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:151974] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:151974] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:151974] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:151974] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:151974] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:151974] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:151974] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:151974] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:151974] 
[codex:151974] For each finding, you MUST provide:
[codex:151974] 1. Exact file and line numbers of vulnerable code
[codex:151974] 2. Step-by-step exploit transaction sequence
[codex:151974] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:151974] 
[codex:151974] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:151974] 
[codex:151974] Output MUST be valid JSON matching the provided schema.
[codex:151974] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:151974] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:151974] mcp startup: no servers
[codex:151974] 
[codex:151974] thinking
[codex:151974] **Reading AUDIT_BUNDLE.txt**
[codex:151974] exec
[codex:151974] /bin/bash -lc ls in /tmp/codex-multi-pu0qjm1n succeeded in 5ms:
[codex:151974] AUDIT_BUNDLE.txt
[codex:151974] codex-output-schema.json
[codex:151974] contracts
[codex:151974] exec
[codex:151974] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-pu0qjm1n succeeded in 5ms:
[codex:151974] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:151974] 
[codex:151974] ================================================================================
[codex:151974] FILE: contracts/Contract.sol
[codex:151974] ================================================================================
[codex:151974] pragma solidity ^0.4.16;
[codex:151974] 
[codex:151974] contract Token {
[codex:151974]     bytes32 public standard;
[codex:151974]     bytes32 public name;
[codex:151974]     bytes32 public symbol;
[codex:151974]     uint256 public totalSupply;
[codex:151974]     uint8 public decimals;
[codex:151974]     bool public allowTransactions;
[codex:151974]     mapping (address => uint256) public balanceOf;
[codex:151974]     mapping (address => mapping (address => uint256)) public allowance;
[codex:151974]     function transfer(address _to, uint256 _value) returns (bool success);
[codex:151974]     function approveAndCall(address _spender, uint256 _value, bytes _extraData) returns (bool success);
[codex:151974]     function approve(address _spender, uint256 _value) returns (bool success);
[codex:151974]     function transferFrom(address _from, address _to, uint256 _value) returns (bool success);
[codex:151974] 
[codex:151974] 
[codex:151974] thinking
[codex:151974] **Analyzing potential contract exploits**
[codex:151974] thinking
[codex:151974] **Evaluating order expiry logic and invalidation**
[codex:151974] 
[codex:151974] I'm carefully weighing how missing enforcement of order expiry and the off-by-one in order invalidation might affect the contract. While the missing expiry check could let old orders be filled indefinitely if the admin doesn't enforce offchain, the presence of a trusted admin limits exploitability. The off-by-one in invalidation is subtle but probably not profitable. I plan to extract exact line numbers around the trade function to highlight this for a clear report.
[codex:151974] exec
[codex:151974] /bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '1,220p'" in /tmp/codex-multi-pu0qjm1n succeeded in 6ms:
[codex:151974]      1	pragma solidity ^0.4.16;
[codex:151974]      2	
[codex:151974]      3	contract Token {
[codex:151974]      4	    bytes32 public standard;
[codex:151974]      5	    bytes32 public name;
[codex:151974]      6	    bytes32 public symbol;
[codex:151974]      7	    uint256 public totalSupply;
[codex:151974]      8	    uint8 public decimals;
[codex:151974]      9	    bool public allowTransactions;
[codex:151974]     10	    mapping (address => uint256) public balanceOf;
[codex:151974]     11	    mapping (address => mapping (address => uint256)) public allowance;
[codex:151974]     12	    function transfer(address _to, uint256 _value) returns (bool success);
[codex:151974]     13	    function approveAndCall(address _spender, uint256 _value, bytes _extraData) returns (bool success);
[codex:151974]     14	    function approve(address _spender, uint256 _value) returns (bool success);
[codex:151974]     15	    function transferFrom(address _from, address _to, uint256 _value) returns (bool success);
[codex:151974]     16	}
[codex:151974]     17	
[codex:151974]     18	contract Exchange {
[codex:151974]     19	  function assert(bool assertion) {
[codex:151974]     20	    if (!assertion) throw;
[codex:151974] 
[codex:151974] 
[codex:151974] 
[codex:151974] thinking
[codex:151974] **Analyzing contract for exploitable profit paths**
[codex:151974] thinking
[codex:151974] **Evaluating signature and fee handling risks**
[codex:151974] 
[codex:151974] I'll carefully examine signature coverage, fee parameter control, and state update ordering to spot any potential profit exploits or replay issues, focusing on signature malleability, fee administration, and reentrancy concerns across contract functions.
[codex:151974] thinking
[codex:151974] **Preparing final audit conclusion**
[codex:151974] 
[codex:151974] I'll finalize the audit report confirming no concrete exploitable profit paths were found and prepare a valid JSON summary stating this clearly.
[codex:151974] codex
[codex:151974] {"no_findings":true,"summary":"No concrete, exploitable profit paths found in the audited sources.","findings":[]}
[codex:151974] tokens used
[codex:151974] 22,592
[codex:151974] {"no_findings":true,"summary":"No concrete, exploitable profit paths found in the audited sources.","findings":[]}
Metadata
{
    "codex": {
        "ran_at": "2026-01-01T17:07:43.909854+00:00",
        "returncode": 0
    },
    "summary": "No concrete, exploitable profit paths found in the audited sources.",
    "raw_final": {
        "summary": "No concrete, exploitable profit paths found in the audited sources.",
        "findings": [],
        "no_findings": true
    },
    "no_findings": true,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
8
EXT*/BALANCE
4
Total opcodes
5159
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x60
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLDATASIZE
00000006: ISZERO
00000007: PUSH2 0x012d
0000000a: JUMPI
0000000b: PUSH4 0xffffffff
00000010: PUSH1 0xe0
00000012: PUSH1 0x02
00000014: EXP
00000015: PUSH1 0x00
00000017: CALLDATALOAD
00000018: DIV
00000019: AND
0000001a: PUSH4 0x0674763c
0000001f: DUP2
00000020: EQ
00000021: PUSH2 0x0140
00000024: JUMPI
00000025: DUP1
00000026: PUSH4 0x13af4035
0000002b: EQ
0000002c: PUSH2 0x015a
0000002f: JUMPI
00000030: DUP1
00000031: PUSH4 0x2295115b
00000036: EQ
00000037: PUSH2 0x017b
0000003a: JUMPI
0000003b: DUP1
0000003c: PUSH4 0x254dcfe2
00000041: EQ
00000042: PUSH2 0x01ca
00000045: JUMPI
00000046: DUP1
00000047: PUSH4 0x338b5dea
0000004c: EQ
0000004d: PUSH2 0x01fb
00000050: JUMPI
00000051: DUP1
00000052: PUSH4 0x3823d66c
00000057: EQ
00000058: PUSH2 0x021f
0000005b: JUMPI
0000005c: DUP1
0000005d: PUSH4 0x429b62e5
00000062: EQ
00000063: PUSH2 0x0249
00000066: JUMPI
00000067: DUP1
00000068: PUSH4 0x4b0bddd2
0000006d: EQ
0000006e: PUSH2 0x027c
00000071: JUMPI
00000072: DUP1
00000073: PUSH4 0x508493bc
00000078: EQ
00000079: PUSH2 0x02a2
0000007c: JUMPI
0000007d: DUP1
0000007e: PUSH4 0x65e17c9d
00000083: EQ
00000084: PUSH2 0x02d9
00000087: JUMPI
00000088: DUP1
00000089: PUSH4 0x83dbb27b
0000008e: EQ
0000008f: PUSH2 0x0308
00000092: JUMPI
00000093: DUP1
00000094: PUSH4 0x893d20e8
00000099: EQ
0000009a: PUSH2 0x0339
0000009d: JUMPI
0000009e: DUP1
0000009f: PUSH4 0x8da5cb5b
000000a4: EQ
000000a5: PUSH2 0x0368
000000a8: JUMPI
000000a9: DUP1
000000aa: PUSH4 0xa293d1e8
000000af: EQ
000000b0: PUSH2 0x0397
000000b3: JUMPI
000000b4: DUP1
000000b5: PUSH4 0xb12de559
000000ba: EQ
000000bb: PUSH2 0x03c2
000000be: JUMPI
000000bf: DUP1
000000c0: PUSH4 0xd05c78da
000000c5: EQ
000000c6: PUSH2 0x03e6
000000c9: JUMPI
000000ca: DUP1
000000cb: PUSH4 0xd0e30db0
000000d0: EQ
000000d1: PUSH2 0x0411
000000d4: JUMPI
000000d5: DUP1
000000d6: PUSH4 0xd5813323
000000db: EQ
000000dc: PUSH2 0x041b
000000df: JUMPI
000000e0: DUP1
000000e1: PUSH4 0xdd93c74a
000000e6: EQ
000000e7: PUSH2 0x0445
000000ea: JUMPI
000000eb: DUP1
000000ec: PUSH4 0xe6cb9013
000000f1: EQ
000000f2: PUSH2 0x046f
000000f5: JUMPI
000000f6: DUP1
000000f7: PUSH4 0xef343588
000000fc: EQ
000000fd: PUSH2 0x049a
00000100: JUMPI
00000101: DUP1
00000102: PUSH4 0xf31174ee
00000107: EQ
00000108: PUSH2 0x0566
0000010b: JUMPI
0000010c: DUP1
0000010d: PUSH4 0xf3fef3a3
00000112: EQ
00000113: PUSH2 0x058b
00000116: JUMPI
00000117: DUP1
00000118: PUSH4 0xf7213db6
0000011d: EQ
0000011e: PUSH2 0x05c1
00000121: JUMPI
00000122: DUP1
00000123: PUSH4 0xf7888aec
00000128: EQ
00000129: PUSH2 0x05e9
0000012c: JUMPI
0000012d: JUMPDEST
0000012e: CALLVALUE
0000012f: ISZERO
00000130: PUSH2 0x0138
00000133: JUMPI
00000134: PUSH1 0x00
00000136: DUP1
00000137: REVERT
00000138: JUMPDEST
00000139: JUMPDEST
0000013a: PUSH1 0x00
0000013c: DUP1
0000013d: REVERT
0000013e: JUMPDEST
0000013f: STOP
00000140: JUMPDEST
00000141: CALLVALUE
00000142: ISZERO
00000143: PUSH2 0x014b
00000146: JUMPI
00000147: PUSH1 0x00
00000149: DUP1
0000014a: REVERT
0000014b: JUMPDEST
0000014c: PUSH2 0x013e
0000014f: PUSH1 0x04
00000151: CALLDATALOAD
00000152: ISZERO
00000153: ISZERO
00000154: PUSH2 0x0620
00000157: JUMP
00000158: JUMPDEST
00000159: STOP
0000015a: JUMPDEST
0000015b: CALLVALUE
0000015c: ISZERO
0000015d: PUSH2 0x0165
00000160: JUMPI
00000161: PUSH1 0x00
00000163: DUP1
00000164: REVERT
00000165: JUMPDEST
00000166: PUSH2 0x013e
00000169: PUSH1 0x01
0000016b: PUSH1 0xa0
0000016d: PUSH1 0x02
0000016f: EXP
00000170: SUB
00000171: PUSH1 0x04
00000173: CALLDATALOAD
00000174: AND
00000175: PUSH2 0x0630
00000178: JUMP
00000179: JUMPDEST
0000017a: STOP
0000017b: JUMPDEST
0000017c: CALLVALUE
0000017d: ISZERO
0000017e: PUSH2 0x0186
00000181: JUMPI
00000182: PUSH1 0x00
00000184: DUP1
00000185: REVERT
00000186: JUMPDEST
00000187: PUSH2 0x01b6
0000018a: PUSH1 0x01
0000018c: PUSH1 0xa0
0000018e: PUSH1 0x02
00000190: EXP
00000191: SUB
00000192: PUSH1 0x04
00000194: CALLDATALOAD
00000195: DUP2
00000196: AND
00000197: SWAP1
00000198: PUSH1 0x24
0000019a: CALLDATALOAD
0000019b: SWAP1
0000019c: PUSH1 0x44
0000019e: CALLDATALOAD
0000019f: AND
000001a0: PUSH1 0x64
000001a2: CALLDATALOAD
000001a3: PUSH1 0xff
000001a5: PUSH1 0x84
000001a7: CALLDATALOAD
000001a8: AND
000001a9: PUSH1 0xa4
000001ab: CALLDATALOAD
000001ac: PUSH1 0xc4
000001ae: CALLDATALOAD
000001af: PUSH1 0xe4
000001b1: CALLDATALOAD
000001b2: PUSH2 0x06b4
000001b5: JUMP
000001b6: JUMPDEST
000001b7: PUSH1 0x40
000001b9: MLOAD
000001ba: SWAP1
000001bb: ISZERO
000001bc: ISZERO
000001bd: DUP2
000001be: MSTORE
000001bf: PUSH1 0x20
000001c1: ADD
000001c2: PUSH1 0x40
000001c4: MLOAD
000001c5: DUP1
000001c6: SWAP2
000001c7: SUB
000001c8: SWAP1
000001c9: RETURN
000001ca: JUMPDEST
000001cb: CALLVALUE
000001cc: ISZERO
000001cd: PUSH2 0x01d5
000001d0: JUMPI
000001d1: PUSH1 0x00
000001d3: DUP1
000001d4: REVERT
000001d5: JUMPDEST
000001d6: PUSH2 0x01e9
000001d9: PUSH1 0x01
000001db: PUSH1 0xa0
000001dd: PUSH1 0x02
000001df: EXP
000001e0: SUB
000001e1: PUSH1 0x04
000001e3: CALLDATALOAD
000001e4: AND
000001e5: PUSH2 0x0ad9
000001e8: JUMP
000001e9: JUMPDEST
000001ea: PUSH1 0x40
000001ec: MLOAD
000001ed: SWAP1
000001ee: DUP2
000001ef: MSTORE
000001f0: PUSH1 0x20
000001f2: ADD
000001f3: PUSH1 0x40
000001f5: MLOAD
000001f6: DUP1
000001f7: SWAP2
000001f8: SUB
000001f9: SWAP1
000001fa: RETURN
000001fb: JUMPDEST
000001fc: CALLVALUE
000001fd: ISZERO
000001fe: PUSH2 0x0206
00000201: JUMPI
00000202: PUSH1 0x00
00000204: DUP1
00000205: REVERT
00000206: JUMPDEST
00000207: PUSH2 0x013e
0000020a: PUSH1 0x01
0000020c: PUSH1 0xa0
0000020e: PUSH1 0x02
00000210: EXP
00000211: SUB
00000212: PUSH1 0x04
00000214: CALLDATALOAD
00000215: AND
00000216: PUSH1 0x24
00000218: CALLDATALOAD
00000219: PUSH2 0x0aeb
0000021c: JUMP
0000021d: JUMPDEST
0000021e: STOP
0000021f: JUMPDEST
00000220: CALLVALUE
00000221: ISZERO
00000222: PUSH2 0x022a
00000225: JUMPI
00000226: PUSH1 0x00
00000228: DUP1
00000229: REVERT
0000022a: JUMPDEST
0000022b: PUSH2 0x01b6
0000022e: PUSH1 0x04
00000230: CALLDATALOAD
00000231: PUSH2 0x0c62
00000234: JUMP
00000235: JUMPDEST
00000236: PUSH1 0x40
00000238: MLOAD
00000239: SWAP1
0000023a: ISZERO
0000023b: ISZERO
0000023c: DUP2
0000023d: MSTORE
0000023e: PUSH1 0x20
00000240: ADD
00000241: PUSH1 0x40
00000243: MLOAD
00000244: DUP1
00000245: SWAP2
00000246: SUB
00000247: SWAP1
00000248: RETURN
00000249: JUMPDEST
0000024a: CALLVALUE
0000024b: ISZERO
0000024c: PUSH2 0x0254
0000024f: JUMPI
00000250: PUSH1 0x00
00000252: DUP1
00000253: REVERT
00000254: JUMPDEST
00000255: PUSH2 0x01b6
00000258: PUSH1 0x01
0000025a: PUSH1 0xa0
0000025c: PUSH1 0x02
0000025e: EXP
0000025f: SUB
00000260: PUSH1 0x04
00000262: CALLDATALOAD
00000263: AND
00000264: PUSH2 0x0c77
00000267: JUMP
00000268: JUMPDEST
00000269: PUSH1 0x40
0000026b: MLOAD
0000026c: SWAP1
0000026d: ISZERO
0000026e: ISZERO
0000026f: DUP2
00000270: MSTORE
00000271: PUSH1 0x20
00000273: ADD
00000274: PUSH1 0x40
00000276: MLOAD
00000277: DUP1
00000278: SWAP2
00000279: SUB
0000027a: SWAP1
0000027b: RETURN
0000027c: JUMPDEST
0000027d: CALLVALUE
0000027e: ISZERO
0000027f: PUSH2 0x0287
00000282: JUMPI
00000283: PUSH1 0x00
00000285: DUP1
00000286: REVERT
00000287: JUMPDEST
00000288: PUSH2 0x013e
0000028b: PUSH1 0x01
0000028d: PUSH1 0xa0
0000028f: PUSH1 0x02
00000291: EXP
00000292: SUB
00000293: PUSH1 0x04
00000295: CALLDATALOAD
00000296: AND
00000297: PUSH1 0x24
00000299: CALLDATALOAD
0000029a: ISZERO
0000029b: ISZERO
0000029c: PUSH2 0x0c8c
0000029f: JUMP
000002a0: JUMPDEST
000002a1: STOP
000002a2: JUMPDEST
000002a3: CALLVALUE
000002a4: ISZERO
000002a5: PUSH2 0x02ad
000002a8: JUMPI
000002a9: PUSH1 0x00
000002ab: DUP1
000002ac: REVERT
000002ad: JUMPDEST
000002ae: PUSH2 0x01e9
000002b1: PUSH1 0x01
000002b3: PUSH1 0xa0
000002b5: PUSH1 0x02
000002b7: EXP
000002b8: SUB
000002b9: PUSH1 0x04
000002bb: CALLDATALOAD
000002bc: DUP2
000002bd: AND
000002be: SWAP1
000002bf: PUSH1 0x24
000002c1: CALLDATALOAD
000002c2: AND
000002c3: PUSH2 0x0cd1
000002c6: JUMP
000002c7: JUMPDEST
000002c8: PUSH1 0x40
000002ca: MLOAD
000002cb: SWAP1
000002cc: DUP2
000002cd: MSTORE
000002ce: PUSH1 0x20
000002d0: ADD
000002d1: PUSH1 0x40
000002d3: MLOAD
000002d4: DUP1
000002d5: SWAP2
000002d6: SUB
000002d7: SWAP1
000002d8: RETURN
000002d9: JUMPDEST
000002da: CALLVALUE
000002db: ISZERO
000002dc: PUSH2 0x02e4
000002df: JUMPI
000002e0: PUSH1 0x00
000002e2: DUP1
000002e3: REVERT
000002e4: JUMPDEST
000002e5: PUSH2 0x02ec
000002e8: PUSH2 0x0cee
000002eb: JUMP
000002ec: JUMPDEST
000002ed: PUSH1 0x40
000002ef: MLOAD
000002f0: PUSH1 0x01
000002f2: PUSH1 0xa0
000002f4: PUSH1 0x02
000002f6: EXP
000002f7: SUB
000002f8: SWAP1
000002f9: SWAP2
000002fa: AND
000002fb: DUP2
000002fc: MSTORE
000002fd: PUSH1 0x20
000002ff: ADD
00000300: PUSH1 0x40
00000302: MLOAD
00000303: DUP1
00000304: SWAP2
00000305: SUB
00000306: SWAP1
00000307: RETURN
00000308: JUMPDEST
00000309: CALLVALUE
0000030a: ISZERO
0000030b: PUSH2 0x0313
0000030e: JUMPI
0000030f: PUSH1 0x00
00000311: DUP1
00000312: REVERT
00000313: JUMPDEST
00000314: PUSH2 0x01e9
00000317: PUSH1 0x01
00000319: PUSH1 0xa0
0000031b: PUSH1 0x02
0000031d: EXP
0000031e: SUB
0000031f: PUSH1 0x04
00000321: CALLDATALOAD
00000322: AND
00000323: PUSH2 0x0cfd
00000326: JUMP
00000327: JUMPDEST
00000328: PUSH1 0x40
0000032a: MLOAD
0000032b: SWAP1
0000032c: DUP2
0000032d: MSTORE
0000032e: PUSH1 0x20
00000330: ADD
00000331: PUSH1 0x40
00000333: MLOAD
00000334: DUP1
00000335: SWAP2
00000336: SUB
00000337: SWAP1
00000338: RETURN
00000339: JUMPDEST
0000033a: CALLVALUE
0000033b: ISZERO
0000033c: PUSH2 0x0344
0000033f: JUMPI
00000340: PUSH1 0x00
00000342: DUP1
00000343: REVERT
00000344: JUMPDEST
00000345: PUSH2 0x02ec
00000348: PUSH2 0x0d0f
0000034b: JUMP
0000034c: JUMPDEST
0000034d: PUSH1 0x40
0000034f: MLOAD
00000350: PUSH1 0x01
00000352: PUSH1 0xa0
00000354: PUSH1 0x02
00000356: EXP
00000357: SUB
00000358: SWAP1
00000359: SWAP2
0000035a: AND
0000035b: DUP2
0000035c: MSTORE
0000035d: PUSH1 0x20
0000035f: ADD
00000360: PUSH1 0x40
00000362: MLOAD
00000363: DUP1
00000364: SWAP2
00000365: SUB
00000366: SWAP1
00000367: RETURN
00000368: JUMPDEST
00000369: CALLVALUE
0000036a: ISZERO
0000036b: PUSH2 0x0373
0000036e: JUMPI
0000036f: PUSH1 0x00
00000371: DUP1
00000372: REVERT
00000373: JUMPDEST
00000374: PUSH2 0x02ec
00000377: PUSH2 0x0d1f
0000037a: JUMP
0000037b: JUMPDEST
0000037c: PUSH1 0x40
0000037e: MLOAD
0000037f: PUSH1 0x01
00000381: PUSH1 0xa0
00000383: PUSH1 0x02
00000385: EXP
00000386: SUB
00000387: SWAP1
00000388: SWAP2
00000389: AND
0000038a: DUP2
0000038b: MSTORE
0000038c: PUSH1 0x20
0000038e: ADD
0000038f: PUSH1 0x40
00000391: MLOAD
00000392: DUP1
00000393: SWAP2
00000394: SUB
00000395: SWAP1
00000396: RETURN
00000397: JUMPDEST
00000398: CALLVALUE
00000399: ISZERO
0000039a: PUSH2 0x03a2
0000039d: JUMPI
0000039e: PUSH1 0x00
000003a0: DUP1
000003a1: REVERT
000003a2: JUMPDEST
000003a3: PUSH2 0x01e9
000003a6: PUSH1 0x04
000003a8: CALLDATALOAD
000003a9: PUSH1 0x24
000003ab: CALLDATALOAD
000003ac: PUSH2 0x0d2e
000003af: JUMP
000003b0: JUMPDEST
000003b1: PUSH1 0x40
000003b3: MLOAD
000003b4: SWAP1
000003b5: DUP2
000003b6: MSTORE
000003b7: PUSH1 0x20
000003b9: ADD
000003ba: PUSH1 0x40
000003bc: MLOAD
000003bd: DUP1
000003be: SWAP2
000003bf: SUB
000003c0: SWAP1
000003c1: RETURN
000003c2: JUMPDEST
000003c3: CALLVALUE
000003c4: ISZERO
000003c5: PUSH2 0x03cd
000003c8: JUMPI
000003c9: PUSH1 0x00
000003cb: DUP1
000003cc: REVERT
000003cd: JUMPDEST
000003ce: PUSH2 0x013e
000003d1: PUSH1 0x01
000003d3: PUSH1 0xa0
000003d5: PUSH1 0x02
000003d7: EXP
000003d8: SUB
000003d9: PUSH1 0x04
000003db: CALLDATALOAD
000003dc: AND
000003dd: PUSH1 0x24
000003df: CALLDATALOAD
000003e0: PUSH2 0x0d47
000003e3: JUMP
000003e4: JUMPDEST
000003e5: STOP
000003e6: JUMPDEST
000003e7: CALLVALUE
000003e8: ISZERO
000003e9: PUSH2 0x03f1
000003ec: JUMPI
000003ed: PUSH1 0x00
000003ef: DUP1
000003f0: REVERT
000003f1: JUMPDEST
000003f2: PUSH2 0x01e9
000003f5: PUSH1 0x04
000003f7: CALLDATALOAD
000003f8: PUSH1 0x24
000003fa: CALLDATALOAD
000003fb: PUSH2 0x0dcf
000003fe: JUMP
000003ff: JUMPDEST
00000400: PUSH1 0x40
00000402: MLOAD
00000403: SWAP1
00000404: DUP2
00000405: MSTORE
00000406: PUSH1 0x20
00000408: ADD
00000409: PUSH1 0x40
0000040b: MLOAD
0000040c: DUP1
0000040d: SWAP2
0000040e: SUB
0000040f: SWAP1
00000410: RETURN
00000411: JUMPDEST
00000412: PUSH2 0x013e
00000415: PUSH2 0x0dfe
00000418: JUMP
00000419: JUMPDEST
0000041a: STOP
0000041b: JUMPDEST
0000041c: CALLVALUE
0000041d: ISZERO
0000041e: PUSH2 0x0426
00000421: JUMPI
00000422: PUSH1 0x00
00000424: DUP1
00000425: REVERT
00000426: JUMPDEST
00000427: PUSH2 0x01b6
0000042a: PUSH1 0x04
0000042c: CALLDATALOAD
0000042d: PUSH2 0x0eea
00000430: JUMP
00000431: JUMPDEST
00000432: PUSH1 0x40
00000434: MLOAD
00000435: SWAP1
00000436: ISZERO
00000437: ISZERO
00000438: DUP2
00000439: MSTORE
0000043a: PUSH1 0x20
0000043c: ADD
0000043d: PUSH1 0x40
0000043f: MLOAD
00000440: DUP1
00000441: SWAP2
00000442: SUB
00000443: SWAP1
00000444: RETURN
00000445: JUMPDEST
00000446: CALLVALUE
00000447: ISZERO
00000448: PUSH2 0x0450
0000044b: JUMPI
0000044c: PUSH1 0x00
0000044e: DUP1
0000044f: REVERT
00000450: JUMPDEST
00000451: PUSH2 0x01b6
00000454: PUSH1 0x04
00000456: CALLDATALOAD
00000457: PUSH2 0x0eff
0000045a: JUMP
0000045b: JUMPDEST
0000045c: PUSH1 0x40
0000045e: MLOAD
0000045f: SWAP1
00000460: ISZERO
00000461: ISZERO
00000462: DUP2
00000463: MSTORE
00000464: PUSH1 0x20
00000466: ADD
00000467: PUSH1 0x40
00000469: MLOAD
0000046a: DUP1
0000046b: SWAP2
0000046c: SUB
0000046d: SWAP1
0000046e: RETURN
0000046f: JUMPDEST
00000470: CALLVALUE
00000471: ISZERO
00000472: PUSH2 0x047a
00000475: JUMPI
00000476: PUSH1 0x00
00000478: DUP1
00000479: REVERT
0000047a: JUMPDEST
0000047b: PUSH2 0x01e9
0000047e: PUSH1 0x04
00000480: CALLDATALOAD
00000481: PUSH1 0x24
00000483: CALLDATALOAD
00000484: PUSH2 0x0f61
00000487: JUMP
00000488: JUMPDEST
00000489: PUSH1 0x40
0000048b: MLOAD
0000048c: SWAP1
0000048d: DUP2
0000048e: MSTORE
0000048f: PUSH1 0x20
00000491: ADD
00000492: PUSH1 0x40
00000494: MLOAD
00000495: DUP1
00000496: SWAP2
00000497: SUB
00000498: SWAP1
00000499: RETURN
0000049a: JUMPDEST
0000049b: CALLVALUE
0000049c: ISZERO
0000049d: PUSH2 0x04a5
000004a0: JUMPI
000004a1: PUSH1 0x00
000004a3: DUP1
000004a4: REVERT
000004a5: JUMPDEST
000004a6: PUSH2 0x01b6
000004a9: PUSH1 0x04
000004ab: PUSH2 0x0104
000004ae: DUP2
000004af: PUSH1 0x08
000004b1: PUSH2 0x0100
000004b4: PUSH1 0x40
000004b6: MLOAD
000004b7: SWAP1
000004b8: DUP2
000004b9: ADD
000004ba: PUSH1 0x40
000004bc: MSTORE
000004bd: SWAP2
000004be: SWAP1
000004bf: DUP3
000004c0: DUP3
000004c1: PUSH2 0x0100
000004c4: DUP1
000004c5: DUP3
000004c6: DUP5
000004c7: CALLDATACOPY
000004c8: DUP3
000004c9: ADD
000004ca: SWAP2
000004cb: POP
000004cc: POP
000004cd: POP
000004ce: POP
000004cf: POP
000004d0: SWAP2
000004d1: SWAP1
000004d2: DUP1
000004d3: PUSH1 0x80
000004d5: ADD
000004d6: SWAP1
000004d7: PUSH1 0x04
000004d9: DUP1
000004da: PUSH1 0x20
000004dc: MUL
000004dd: PUSH1 0x40
000004df: MLOAD
000004e0: SWAP1
000004e1: DUP2
000004e2: ADD
000004e3: PUSH1 0x40
000004e5: MSTORE
000004e6: SWAP2
000004e7: SWAP1
000004e8: DUP3
000004e9: DUP3
000004ea: PUSH1 0x80
000004ec: DUP1
000004ed: DUP3
000004ee: DUP5
000004ef: CALLDATACOPY
000004f0: DUP3
000004f1: ADD
000004f2: SWAP2
000004f3: POP
000004f4: POP
000004f5: POP
000004f6: POP
000004f7: POP
000004f8: SWAP2
000004f9: SWAP1
000004fa: DUP1
000004fb: PUSH1 0x40
000004fd: ADD
000004fe: SWAP1
000004ff: PUSH1 0x02
00000501: DUP1
00000502: PUSH1 0x20
00000504: MUL
00000505: PUSH1 0x40
00000507: MLOAD
00000508: SWAP1
00000509: DUP2
0000050a: ADD
0000050b: PUSH1 0x40
0000050d: MSTORE
0000050e: DUP1
0000050f: SWAP3
00000510: SWAP2
00000511: SWAP1
00000512: DUP3
00000513: PUSH1 0x02
00000515: PUSH1 0x20
00000517: MUL
00000518: DUP1
00000519: DUP3
0000051a: DUP5
0000051b: CALLDATACOPY
0000051c: DUP3
0000051d: ADD
0000051e: SWAP2
0000051f: POP
00000520: POP
00000521: POP
00000522: POP
00000523: POP
00000524: SWAP2
00000525: SWAP1
00000526: DUP1
00000527: PUSH1 0x80
00000529: ADD
0000052a: SWAP1
0000052b: PUSH1 0x04
0000052d: DUP1
0000052e: PUSH1 0x20
00000530: MUL
00000531: PUSH1 0x40
00000533: MLOAD
00000534: SWAP1
00000535: DUP2
00000536: ADD
00000537: PUSH1 0x40
00000539: MSTORE
0000053a: SWAP2
0000053b: SWAP1
0000053c: DUP3
0000053d: DUP3
0000053e: PUSH1 0x80
00000540: DUP1
00000541: DUP3
00000542: DUP5
00000543: CALLDATACOPY
00000544: POP
00000545: SWAP4
00000546: SWAP6
00000547: POP
00000548: PUSH2 0x0f89
0000054b: SWAP5
0000054c: POP
0000054d: POP
0000054e: POP
0000054f: POP
00000550: POP
00000551: JUMP
00000552: JUMPDEST
00000553: PUSH1 0x40
00000555: MLOAD
00000556: SWAP1
00000557: ISZERO
00000558: ISZERO
00000559: DUP2
0000055a: MSTORE
0000055b: PUSH1 0x20
0000055d: ADD
0000055e: PUSH1 0x40
00000560: MLOAD
00000561: DUP1
00000562: SWAP2
00000563: SUB
00000564: SWAP1
00000565: RETURN
00000566: JUMPDEST
00000567: CALLVALUE
00000568: ISZERO
00000569: PUSH2 0x0571
0000056c: JUMPI
0000056d: PUSH1 0x00
0000056f: DUP1
00000570: REVERT
00000571: JUMPDEST
00000572: PUSH2 0x01e9
00000575: PUSH2 0x1a1a
00000578: JUMP
00000579: JUMPDEST
0000057a: PUSH1 0x40
0000057c: MLOAD
0000057d: SWAP1
0000057e: DUP2
0000057f: MSTORE
00000580: PUSH1 0x20
00000582: ADD
00000583: PUSH1 0x40
00000585: MLOAD
00000586: DUP1
00000587: SWAP2
00000588: SUB
00000589: SWAP1
0000058a: RETURN
0000058b: JUMPDEST
0000058c: CALLVALUE
0000058d: ISZERO
0000058e: PUSH2 0x0596
00000591: JUMPI
00000592: PUSH1 0x00
00000594: DUP1
00000595: REVERT
00000596: JUMPDEST
00000597: PUSH2 0x01b6
0000059a: PUSH1 0x01
0000059c: PUSH1 0xa0
0000059e: PUSH1 0x02
000005a0: EXP
000005a1: SUB
000005a2: PUSH1 0x04
000005a4: CALLDATALOAD
000005a5: AND
000005a6: PUSH1 0x24
000005a8: CALLDATALOAD
000005a9: PUSH2 0x1a20
000005ac: JUMP
000005ad: JUMPDEST
000005ae: PUSH1 0x40
000005b0: MLOAD
000005b1: SWAP1
000005b2: ISZERO
000005b3: ISZERO
000005b4: DUP2
000005b5: MSTORE
000005b6: PUSH1 0x20
000005b8: ADD
000005b9: PUSH1 0x40
000005bb: MLOAD
000005bc: DUP1
000005bd: SWAP2
000005be: SUB
000005bf: SWAP1
000005c0: RETURN
000005c1: JUMPDEST
000005c2: CALLVALUE
000005c3: ISZERO
000005c4: PUSH2 0x05cc
000005c7: JUMPI
000005c8: PUSH1 0x00
000005ca: DUP1
000005cb: REVERT
000005cc: JUMPDEST
000005cd: PUSH2 0x01e9
000005d0: PUSH1 0x04
000005d2: CALLDATALOAD
000005d3: PUSH2 0x1c32
000005d6: JUMP
000005d7: JUMPDEST
000005d8: PUSH1 0x40
000005da: MLOAD
000005db: SWAP1
000005dc: DUP2
000005dd: MSTORE
000005de: PUSH1 0x20
000005e0: ADD
000005e1: PUSH1 0x40
000005e3: MLOAD
000005e4: DUP1
000005e5: SWAP2
000005e6: SUB
000005e7: SWAP1
000005e8: RETURN
000005e9: JUMPDEST
000005ea: CALLVALUE
000005eb: ISZERO
000005ec: PUSH2 0x05f4
000005ef: JUMPI
000005f0: PUSH1 0x00
000005f2: DUP1
000005f3: REVERT
000005f4: JUMPDEST
000005f5: PUSH2 0x01e9
000005f8: PUSH1 0x01
000005fa: PUSH1 0xa0
000005fc: PUSH1 0x02
000005fe: EXP
000005ff: SUB
00000600: PUSH1 0x04
00000602: CALLDATALOAD
00000603: DUP2
00000604: AND
00000605: SWAP1
00000606: PUSH1 0x24
00000608: CALLDATALOAD
00000609: AND
0000060a: PUSH2 0x1c44
0000060d: JUMP
0000060e: JUMPDEST
0000060f: PUSH1 0x40
00000611: MLOAD
00000612: SWAP1
00000613: DUP2
00000614: MSTORE
00000615: PUSH1 0x20
00000617: ADD
00000618: PUSH1 0x40
0000061a: MLOAD
0000061b: DUP1
0000061c: SWAP2
0000061d: SUB
0000061e: SWAP1
0000061f: RETURN
00000620: JUMPDEST
00000621: DUP1
00000622: ISZERO
00000623: ISZERO
00000624: PUSH2 0x062c
00000627: JUMPI
00000628: PUSH1 0x00
0000062a: DUP1
0000062b: REVERT
0000062c: JUMPDEST
0000062d: JUMPDEST
0000062e: POP
0000062f: JUMP
00000630: JUMPDEST
00000631: PUSH1 0x00
00000633: SLOAD
00000634: PUSH2 0x064b
00000637: SWAP1
00000638: CALLER
00000639: PUSH1 0x01
0000063b: PUSH1 0xa0
0000063d: PUSH1 0x02
0000063f: EXP
00000640: SUB
00000641: SWAP1
00000642: DUP2
00000643: AND
00000644: SWAP2
00000645: AND
00000646: EQ
00000647: PUSH2 0x0620
0000064a: JUMP
0000064b: JUMPDEST
0000064c: PUSH1 0x00
0000064e: SLOAD
0000064f: PUSH1 0x01
00000651: PUSH1 0xa0
00000653: PUSH1 0x02
00000655: EXP
00000656: SUB
00000657: DUP1
00000658: DUP4
00000659: AND
0000065a: SWAP2
0000065b: AND
0000065c: PUSH32 0xcbf985117192c8f614a58aaf97226bb80a754772f5f6edf06f87c675f2e6c663
0000067d: PUSH1 0x40
0000067f: MLOAD
00000680: PUSH1 0x40
00000682: MLOAD
00000683: DUP1
00000684: SWAP2
00000685: SUB
00000686: SWAP1
00000687: LOG3
00000688: PUSH1 0x00
0000068a: DUP1
0000068b: SLOAD
0000068c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000006a1: NOT
000006a2: AND
000006a3: PUSH1 0x01
000006a5: PUSH1 0xa0
000006a7: PUSH1 0x02
000006a9: EXP
000006aa: SUB
000006ab: DUP4
000006ac: AND
000006ad: OR
000006ae: SWAP1
000006af: SSTORE
000006b0: JUMPDEST
000006b1: JUMPDEST
000006b2: POP
000006b3: JUMP
000006b4: JUMPDEST
000006b5: PUSH1 0x00
000006b7: DUP1
000006b8: SLOAD
000006b9: DUP2
000006ba: SWAP1
000006bb: CALLER
000006bc: PUSH1 0x01
000006be: PUSH1 0xa0
000006c0: PUSH1 0x02
000006c2: EXP
000006c3: SUB
000006c4: SWAP1
000006c5: DUP2
000006c6: AND
000006c7: SWAP2
000006c8: AND
000006c9: EQ
000006ca: DUP1
000006cb: ISZERO
000006cc: SWAP1
000006cd: PUSH2 0x06ef
000006d0: JUMPI
000006d1: POP
000006d2: PUSH1 0x01
000006d4: PUSH1 0xa0
000006d6: PUSH1 0x02
000006d8: EXP
000006d9: SUB
000006da: CALLER
000006db: AND
000006dc: PUSH1 0x00
000006de: SWAP1
000006df: DUP2
000006e0: MSTORE
000006e1: PUSH1 0x03
000006e3: PUSH1 0x20
000006e5: MSTORE
000006e6: PUSH1 0x40
000006e8: SWAP1
000006e9: KECCAK256
000006ea: SLOAD
000006eb: PUSH1 0xff
000006ed: AND
000006ee: ISZERO
000006ef: JUMPDEST
000006f0: ISZERO
000006f1: PUSH2 0x06f9
000006f4: JUMPI
000006f5: PUSH1 0x00
000006f7: DUP1
000006f8: REVERT
000006f9: JUMPDEST
000006fa: ADDRESS
000006fb: DUP11
000006fc: DUP11
000006fd: DUP11
000006fe: DUP11
000006ff: PUSH1 0x40
00000701: MLOAD
00000702: PUSH13 0x01000000000000000000000000
00000710: PUSH1 0x01
00000712: PUSH1 0xa0
00000714: PUSH1 0x02
00000716: EXP
00000717: SUB
00000718: SWAP7
00000719: DUP8
0000071a: AND
0000071b: DUP2
0000071c: MUL
0000071d: DUP3
0000071e: MSTORE
0000071f: SWAP5
00000720: DUP7
00000721: AND
00000722: DUP6
00000723: MUL
00000724: PUSH1 0x14
00000726: DUP3
00000727: ADD
00000728: MSTORE
00000729: PUSH1 0x28
0000072b: DUP2
0000072c: ADD
0000072d: SWAP4
0000072e: SWAP1
0000072f: SWAP4
00000730: MSTORE
00000731: SWAP4
00000732: AND
00000733: SWAP1
00000734: SWAP2
00000735: MUL
00000736: PUSH1 0x48
00000738: DUP3
00000739: ADD
0000073a: MSTORE
0000073b: PUSH1 0x5c
0000073d: DUP2
0000073e: ADD
0000073f: SWAP2
00000740: SWAP1
00000741: SWAP2
00000742: MSTORE
00000743: PUSH1 0x7c
00000745: ADD
00000746: PUSH1 0x40
00000748: MLOAD
00000749: SWAP1
0000074a: DUP2
0000074b: SWAP1
0000074c: SUB
0000074d: SWAP1
0000074e: KECCAK256
0000074f: PUSH1 0x00
00000751: DUP2
00000752: DUP2
00000753: MSTORE
00000754: PUSH1 0x09
00000756: PUSH1 0x20
00000758: MSTORE
00000759: PUSH1 0x40
0000075b: SWAP1
0000075c: KECCAK256
0000075d: SLOAD
0000075e: SWAP1
0000075f: SWAP2
00000760: POP
00000761: PUSH1 0xff
00000763: AND
00000764: ISZERO
00000765: PUSH2 0x076d
00000768: JUMPI
00000769: PUSH1 0x00
0000076b: DUP1
0000076c: REVERT
0000076d: JUMPDEST
0000076e: PUSH1 0x00
00000770: DUP2
00000771: DUP2
00000772: MSTORE
00000773: PUSH1 0x09
00000775: PUSH1 0x20
00000777: MSTORE
00000778: PUSH1 0x40
0000077a: SWAP1
0000077b: DUP2
0000077c: SWAP1
0000077d: KECCAK256
0000077e: DUP1
0000077f: SLOAD
00000780: PUSH1 0xff
00000782: NOT
00000783: AND
00000784: PUSH1 0x01
00000786: SWAP1
00000787: DUP2
00000788: OR
00000789: SWAP1
0000078a: SWAP2
0000078b: SSTORE
0000078c: PUSH1 0x01
0000078e: PUSH1 0xa0
00000790: PUSH1 0x02
00000792: EXP
00000793: SUB
00000794: DUP11
00000795: AND
00000796: SWAP2
00000797: DUP4
00000798: SWAP1
00000799: MLOAD
0000079a: PUSH32 0x19457468657265756d205369676e6564204d6573736167653a0a333200000000
000007bb: DUP2
000007bc: MSTORE
000007bd: PUSH1 0x1c
000007bf: DUP2
000007c0: ADD
000007c1: SWAP2
000007c2: SWAP1
000007c3: SWAP2
000007c4: MSTORE
000007c5: PUSH1 0x3c
000007c7: ADD
000007c8: PUSH1 0x40
000007ca: MLOAD
000007cb: DUP1
000007cc: SWAP2
000007cd: SUB
000007ce: SWAP1
000007cf: KECCAK256
000007d0: DUP9
000007d1: DUP9
000007d2: DUP9
000007d3: PUSH1 0x40
000007d5: MLOAD
000007d6: PUSH1 0x00
000007d8: DUP2
000007d9: MSTORE
000007da: PUSH1 0x20
000007dc: ADD
000007dd: PUSH1 0x40
000007df: MSTORE
000007e0: PUSH1 0x00
000007e2: PUSH1 0x40
000007e4: MLOAD
000007e5: PUSH1 0x20
000007e7: ADD
000007e8: MSTORE
000007e9: PUSH1 0x40
000007eb: MLOAD
000007ec: SWAP4
000007ed: DUP5
000007ee: MSTORE
000007ef: PUSH1 0xff
000007f1: SWAP1
000007f2: SWAP3
000007f3: AND
000007f4: PUSH1 0x20
000007f6: DUP1
000007f7: DUP6
000007f8: ADD
000007f9: SWAP2
000007fa: SWAP1
000007fb: SWAP2
000007fc: MSTORE
000007fd: PUSH1 0x40
000007ff: DUP1
00000800: DUP6
00000801: ADD
00000802: SWAP3
00000803: SWAP1
00000804: SWAP3
00000805: MSTORE
00000806: PUSH1 0x60
00000808: DUP5
00000809: ADD
0000080a: SWAP3
0000080b: SWAP1
0000080c: SWAP3
0000080d: MSTORE
0000080e: PUSH1 0x80
00000810: SWAP1
00000811: SWAP3
00000812: ADD
00000813: SWAP2
00000814: MLOAD
00000815: PUSH1 0x20
00000817: DUP2
00000818: SUB
00000819: SWAP1
0000081a: DUP1
0000081b: DUP5
0000081c: SUB
0000081d: SWAP1
0000081e: PUSH1 0x00
00000820: DUP7
00000821: PUSH2 0x646e
00000824: GAS
00000825: SUB
00000826: CALL
00000827: ISZERO
00000828: ISZERO
00000829: PUSH2 0x0831
0000082c: JUMPI
0000082d: PUSH1 0x00
0000082f: DUP1
00000830: REVERT
00000831: JUMPDEST
00000832: POP
00000833: POP
00000834: PUSH1 0x20
00000836: PUSH1 0x40
00000838: MLOAD
00000839: SUB
0000083a: MLOAD
0000083b: PUSH1 0x01
0000083d: PUSH1 0xa0
0000083f: PUSH1 0x02
00000841: EXP
00000842: SUB
00000843: AND
00000844: EQ
00000845: PUSH2 0x084d
00000848: JUMPI
00000849: PUSH1 0x00
0000084b: DUP1
0000084c: REVERT
0000084d: JUMPDEST
0000084e: PUSH7 0xb1a2bc2ec50000
00000856: DUP4
00000857: GT
00000858: ISZERO
00000859: PUSH2 0x0867
0000085c: JUMPI
0000085d: PUSH7 0xb1a2bc2ec50000
00000865: SWAP3
00000866: POP
00000867: JUMPDEST
00000868: PUSH1 0x01
0000086a: PUSH1 0xa0
0000086c: PUSH1 0x02
0000086e: EXP
0000086f: SUB
00000870: DUP1
00000871: DUP12
00000872: AND
00000873: PUSH1 0x00
00000875: SWAP1
00000876: DUP2
00000877: MSTORE
00000878: PUSH1 0x02
0000087a: PUSH1 0x20
0000087c: SWAP1
0000087d: DUP2
0000087e: MSTORE
0000087f: PUSH1 0x40
00000881: DUP1
00000882: DUP4
00000883: KECCAK256
00000884: SWAP4
00000885: DUP13
00000886: AND
00000887: DUP4
00000888: MSTORE
00000889: SWAP3
0000088a: SWAP1
0000088b: MSTORE
0000088c: KECCAK256
0000088d: SLOAD
0000088e: DUP10
0000088f: SWAP1
00000890: LT
00000891: ISZERO
00000892: PUSH2 0x089a
00000895: JUMPI
00000896: PUSH1 0x00
00000898: DUP1
00000899: REVERT
0000089a: JUMPDEST
0000089b: PUSH1 0x01
0000089d: PUSH1 0xa0
0000089f: PUSH1 0x02
000008a1: EXP
000008a2: SUB
000008a3: DUP1
000008a4: DUP12
000008a5: AND
000008a6: PUSH1 0x00
000008a8: SWAP1
000008a9: DUP2
000008aa: MSTORE
000008ab: PUSH1 0x02
000008ad: PUSH1 0x20
000008af: SWAP1
000008b0: DUP2
000008b1: MSTORE
000008b2: PUSH1 0x40
000008b4: DUP1
000008b5: DUP4
000008b6: KECCAK256
000008b7: SWAP4
000008b8: DUP13
000008b9: AND
000008ba: DUP4
000008bb: MSTORE
000008bc: SWAP3
000008bd: SWAP1
000008be: MSTORE
000008bf: KECCAK256
000008c0: SLOAD
000008c1: PUSH2 0x08ca
000008c4: SWAP1
000008c5: DUP11
000008c6: PUSH2 0x0d2e
000008c9: JUMP
000008ca: JUMPDEST
000008cb: PUSH1 0x01
000008cd: PUSH1 0xa0
000008cf: PUSH1 0x02
000008d1: EXP
000008d2: SUB
000008d3: DUP12
000008d4: DUP2
000008d5: AND
000008d6: PUSH1 0x00
000008d8: SWAP1
000008d9: DUP2
000008da: MSTORE
000008db: PUSH1 0x02
000008dd: PUSH1 0x20
000008df: SWAP1
000008e0: DUP2
000008e1: MSTORE
000008e2: PUSH1 0x40
000008e4: DUP1
000008e5: DUP4
000008e6: KECCAK256
000008e7: DUP14
000008e8: DUP6
000008e9: AND
000008ea: DUP5
000008eb: MSTORE
000008ec: SWAP1
000008ed: SWAP2
000008ee: MSTORE
000008ef: DUP1
000008f0: DUP3
000008f1: KECCAK256
000008f2: SWAP4
000008f3: SWAP1
000008f4: SWAP4
000008f5: SSTORE
000008f6: PUSH1 0x06
000008f8: SLOAD
000008f9: SWAP1
000008fa: SWAP2
000008fb: AND
000008fc: DUP2
000008fd: MSTORE
000008fe: KECCAK256
000008ff: SLOAD
00000900: PUSH2 0x0925
00000903: SWAP1
00000904: PUSH8 0x0de0b6b3a7640000
0000090d: PUSH2 0x0916
00000910: DUP7
00000911: DUP14
00000912: PUSH2 0x0dcf
00000915: JUMP
00000916: JUMPDEST
00000917: DUP2
00000918: ISZERO
00000919: ISZERO
0000091a: PUSH2 0x091f
0000091d: JUMPI
0000091e: INVALID
0000091f: JUMPDEST
00000920: DIV
00000921: PUSH2 0x0f61
00000924: JUMP
00000925: JUMPDEST
00000926: PUSH1 0x01
00000928: PUSH1 0xa0
0000092a: PUSH1 0x02
0000092c: EXP
0000092d: SUB
0000092e: DUP1
0000092f: DUP13
00000930: AND
00000931: PUSH1 0x00
00000933: SWAP1
00000934: DUP2
00000935: MSTORE
00000936: PUSH1 0x02
00000938: PUSH1 0x20
0000093a: SWAP1
0000093b: DUP2
0000093c: MSTORE
0000093d: PUSH1 0x40
0000093f: DUP1
00000940: DUP4
00000941: KECCAK256
00000942: PUSH1 0x06
00000944: SLOAD
00000945: SWAP1
00000946: SWAP5
00000947: AND
00000948: DUP4
00000949: MSTORE
0000094a: SWAP3
0000094b: SWAP1
0000094c: MSTORE
0000094d: KECCAK256
0000094e: SSTORE
0000094f: PUSH8 0x0de0b6b3a7640000
00000958: PUSH2 0x0963
0000095b: DUP5
0000095c: DUP3
0000095d: SUB
0000095e: DUP12
0000095f: PUSH2 0x0dcf
00000962: JUMP
00000963: JUMPDEST
00000964: DUP2
00000965: ISZERO
00000966: ISZERO
00000967: PUSH2 0x096c
0000096a: JUMPI
0000096b: INVALID
0000096c: JUMPDEST
0000096d: DIV
0000096e: SWAP9
0000096f: POP
00000970: PUSH1 0x01
00000972: PUSH1 0xa0
00000974: PUSH1 0x02
00000976: EXP
00000977: SUB
00000978: DUP11
00000979: AND
0000097a: ISZERO
0000097b: ISZERO
0000097c: PUSH2 0x09b5
0000097f: JUMPI
00000980: PUSH1 0x01
00000982: PUSH1 0xa0
00000984: PUSH1 0x02
00000986: EXP
00000987: SUB
00000988: DUP9
00000989: AND
0000098a: DUP10
0000098b: ISZERO
0000098c: PUSH2 0x08fc
0000098f: MUL
00000990: DUP11
00000991: PUSH1 0x40
00000993: MLOAD
00000994: PUSH1 0x00
00000996: PUSH1 0x40
00000998: MLOAD
00000999: DUP1
0000099a: DUP4
0000099b: SUB
0000099c: DUP2
0000099d: DUP6
0000099e: DUP9
0000099f: DUP9
000009a0: CALL
000009a1: SWAP4
000009a2: POP
000009a3: POP
000009a4: POP
000009a5: POP
000009a6: ISZERO
000009a7: ISZERO
000009a8: PUSH2 0x09b0
000009ab: JUMPI
000009ac: PUSH1 0x00
000009ae: DUP1
000009af: REVERT
000009b0: JUMPDEST
000009b1: PUSH2 0x0a38
000009b4: JUMP
000009b5: JUMPDEST
000009b6: DUP10
000009b7: PUSH1 0x01
000009b9: PUSH1 0xa0
000009bb: PUSH1 0x02
000009bd: EXP
000009be: SUB
000009bf: AND
000009c0: PUSH4 0xa9059cbb
000009c5: DUP10
000009c6: DUP12
000009c7: PUSH1 0x00
000009c9: PUSH1 0x40
000009cb: MLOAD
000009cc: PUSH1 0x20
000009ce: ADD
000009cf: MSTORE
000009d0: PUSH1 0x40
000009d2: MLOAD
000009d3: PUSH1 0xe0
000009d5: PUSH1 0x02
000009d7: EXP
000009d8: PUSH4 0xffffffff
000009dd: DUP6
000009de: AND
000009df: MUL
000009e0: DUP2
000009e1: MSTORE
000009e2: PUSH1 0x01
000009e4: PUSH1 0xa0
000009e6: PUSH1 0x02
000009e8: EXP
000009e9: SUB
000009ea: SWAP1
000009eb: SWAP3
000009ec: AND
000009ed: PUSH1 0x04
000009ef: DUP4
000009f0: ADD
000009f1: MSTORE
000009f2: PUSH1 0x24
000009f4: DUP3
000009f5: ADD
000009f6: MSTORE
000009f7: PUSH1 0x44
000009f9: ADD
000009fa: PUSH1 0x20
000009fc: PUSH1 0x40
000009fe: MLOAD
000009ff: DUP1
00000a00: DUP4
00000a01: SUB
00000a02: DUP2
00000a03: PUSH1 0x00
00000a05: DUP8
00000a06: DUP1
00000a07: EXTCODESIZE
00000a08: ISZERO
00000a09: ISZERO
00000a0a: PUSH2 0x0a12
00000a0d: JUMPI
00000a0e: PUSH1 0x00
00000a10: DUP1
00000a11: REVERT
00000a12: JUMPDEST
00000a13: PUSH2 0x02c6
00000a16: GAS
00000a17: SUB
00000a18: CALL
00000a19: ISZERO
00000a1a: ISZERO
00000a1b: PUSH2 0x0a23
00000a1e: JUMPI
00000a1f: PUSH1 0x00
00000a21: DUP1
00000a22: REVERT
00000a23: JUMPDEST
00000a24: POP
00000a25: POP
00000a26: POP
00000a27: PUSH1 0x40
00000a29: MLOAD
00000a2a: DUP1
00000a2b: MLOAD
00000a2c: SWAP1
00000a2d: POP
00000a2e: ISZERO
00000a2f: ISZERO
00000a30: PUSH2 0x0a38
00000a33: JUMPI
00000a34: PUSH1 0x00
00000a36: DUP1
00000a37: REVERT
00000a38: JUMPDEST
00000a39: JUMPDEST
00000a3a: PUSH1 0x01
00000a3c: PUSH1 0xa0
00000a3e: PUSH1 0x02
00000a40: EXP
00000a41: SUB
00000a42: DUP1
00000a43: DUP10
00000a44: AND
00000a45: PUSH1 0x00
00000a47: DUP2
00000a48: DUP2
00000a49: MSTORE
00000a4a: PUSH1 0x04
00000a4c: PUSH1 0x20
00000a4e: SWAP1
00000a4f: DUP2
00000a50: MSTORE
00000a51: PUSH1 0x40
00000a53: DUP1
00000a54: DUP4
00000a55: KECCAK256
00000a56: NUMBER
00000a57: SWAP1
00000a58: SSTORE
00000a59: SWAP4
00000a5a: DUP15
00000a5b: AND
00000a5c: DUP3
00000a5d: MSTORE
00000a5e: PUSH1 0x02
00000a60: DUP2
00000a61: MSTORE
00000a62: DUP4
00000a63: DUP3
00000a64: KECCAK256
00000a65: SWAP3
00000a66: DUP3
00000a67: MSTORE
00000a68: SWAP2
00000a69: SWAP1
00000a6a: SWAP2
00000a6b: MSTORE
00000a6c: DUP2
00000a6d: SWAP1
00000a6e: KECCAK256
00000a6f: SLOAD
00000a70: PUSH32 0xf341246adaac6f497bc2a656f546ab9e182111d630394f0c57c710a59a2cb567
00000a91: SWAP2
00000a92: DUP13
00000a93: SWAP2
00000a94: DUP12
00000a95: SWAP2
00000a96: DUP14
00000a97: SWAP2
00000a98: SWAP1
00000a99: MLOAD
00000a9a: PUSH1 0x01
00000a9c: PUSH1 0xa0
00000a9e: PUSH1 0x02
00000aa0: EXP
00000aa1: SUB
00000aa2: SWAP5
00000aa3: DUP6
00000aa4: AND
00000aa5: DUP2
00000aa6: MSTORE
00000aa7: SWAP3
00000aa8: SWAP1
00000aa9: SWAP4
00000aaa: AND
00000aab: PUSH1 0x20
00000aad: DUP4
00000aae: ADD
00000aaf: MSTORE
00000ab0: PUSH1 0x40
00000ab2: DUP1
00000ab3: DUP4
00000ab4: ADD
00000ab5: SWAP2
00000ab6: SWAP1
00000ab7: SWAP2
00000ab8: MSTORE
00000ab9: PUSH1 0x60
00000abb: DUP3
00000abc: ADD
00000abd: SWAP3
00000abe: SWAP1
00000abf: SWAP3
00000ac0: MSTORE
00000ac1: PUSH1 0x80
00000ac3: ADD
00000ac4: SWAP1
00000ac5: MLOAD
00000ac6: DUP1
00000ac7: SWAP2
00000ac8: SUB
00000ac9: SWAP1
00000aca: LOG1
00000acb: JUMPDEST
00000acc: JUMPDEST
00000acd: POP
00000ace: SWAP9
00000acf: SWAP8
00000ad0: POP
00000ad1: POP
00000ad2: POP
00000ad3: POP
00000ad4: POP
00000ad5: POP
00000ad6: POP
00000ad7: POP
00000ad8: JUMP
00000ad9: JUMPDEST
00000ada: PUSH1 0x04
00000adc: PUSH1 0x20
00000ade: MSTORE
00000adf: PUSH1 0x00
00000ae1: SWAP1
00000ae2: DUP2
00000ae3: MSTORE
00000ae4: PUSH1 0x40
00000ae6: SWAP1
00000ae7: KECCAK256
00000ae8: SLOAD
00000ae9: DUP2
00000aea: JUMP
00000aeb: JUMPDEST
00000aec: PUSH1 0x01
00000aee: PUSH1 0xa0
00000af0: PUSH1 0x02
00000af2: EXP
00000af3: SUB
00000af4: DUP1
00000af5: DUP4
00000af6: AND
00000af7: PUSH1 0x00
00000af9: SWAP1
00000afa: DUP2
00000afb: MSTORE
00000afc: PUSH1 0x02
00000afe: PUSH1 0x20
00000b00: SWAP1
00000b01: DUP2
00000b02: MSTORE
00000b03: PUSH1 0x40
00000b05: DUP1
00000b06: DUP4
00000b07: KECCAK256
00000b08: CALLER
00000b09: SWAP1
00000b0a: SWAP5
00000b0b: AND
00000b0c: DUP4
00000b0d: MSTORE
00000b0e: SWAP3
00000b0f: SWAP1
00000b10: MSTORE
00000b11: KECCAK256
00000b12: SLOAD
00000b13: PUSH2 0x0b1c
00000b16: SWAP1
00000b17: DUP3
00000b18: PUSH2 0x0f61
00000b1b: JUMP
00000b1c: JUMPDEST
00000b1d: PUSH1 0x01
00000b1f: PUSH1 0xa0
00000b21: PUSH1 0x02
00000b23: EXP
00000b24: SUB
00000b25: DUP1
00000b26: DUP5
00000b27: AND
00000b28: PUSH1 0x00
00000b2a: DUP2
00000b2b: DUP2
00000b2c: MSTORE
00000b2d: PUSH1 0x02
00000b2f: PUSH1 0x20
00000b31: SWAP1
00000b32: DUP2
00000b33: MSTORE
00000b34: PUSH1 0x40
00000b36: DUP1
00000b37: DUP4
00000b38: KECCAK256
00000b39: CALLER
00000b3a: SWAP6
00000b3b: DUP7
00000b3c: AND
00000b3d: DUP5
00000b3e: MSTORE
00000b3f: DUP3
00000b40: MSTORE
00000b41: DUP1
00000b42: DUP4
00000b43: KECCAK256
00000b44: SWAP6
00000b45: SWAP1
00000b46: SWAP6
00000b47: SSTORE
00000b48: PUSH1 0x04
00000b4a: SWAP1
00000b4b: MSTORE
00000b4c: DUP4
00000b4d: DUP2
00000b4e: KECCAK256
00000b4f: NUMBER
00000b50: SWAP1
00000b51: SSTORE
00000b52: SWAP1
00000b53: SWAP3
00000b54: PUSH4 0x23b872dd
00000b59: SWAP3
00000b5a: SWAP2
00000b5b: ADDRESS
00000b5c: SWAP2
00000b5d: DUP7
00000b5e: SWAP2
00000b5f: SWAP1
00000b60: MLOAD
00000b61: PUSH1 0x20
00000b63: ADD
00000b64: MSTORE
00000b65: PUSH1 0x40
00000b67: MLOAD
00000b68: PUSH1 0xe0
00000b6a: PUSH1 0x02
00000b6c: EXP
00000b6d: PUSH4 0xffffffff
00000b72: DUP7
00000b73: AND
00000b74: MUL
00000b75: DUP2
00000b76: MSTORE
00000b77: PUSH1 0x01
00000b79: PUSH1 0xa0
00000b7b: PUSH1 0x02
00000b7d: EXP
00000b7e: SUB
00000b7f: SWAP4
00000b80: DUP5
00000b81: AND
00000b82: PUSH1 0x04
00000b84: DUP3
00000b85: ADD
00000b86: MSTORE
00000b87: SWAP2
00000b88: SWAP1
00000b89: SWAP3
00000b8a: AND
00000b8b: PUSH1 0x24
00000b8d: DUP3
00000b8e: ADD
00000b8f: MSTORE
00000b90: PUSH1 0x44
00000b92: DUP2
00000b93: ADD
00000b94: SWAP2
00000b95: SWAP1
00000b96: SWAP2
00000b97: MSTORE
00000b98: PUSH1 0x64
00000b9a: ADD
00000b9b: PUSH1 0x20
00000b9d: PUSH1 0x40
00000b9f: MLOAD
00000ba0: DUP1
00000ba1: DUP4
00000ba2: SUB
00000ba3: DUP2
00000ba4: PUSH1 0x00
00000ba6: DUP8
00000ba7: DUP1
00000ba8: EXTCODESIZE
00000ba9: ISZERO
00000baa: ISZERO
00000bab: PUSH2 0x0bb3
00000bae: JUMPI
00000baf: PUSH1 0x00
00000bb1: DUP1
00000bb2: REVERT
00000bb3: JUMPDEST
00000bb4: PUSH2 0x02c6
00000bb7: GAS
00000bb8: SUB
00000bb9: CALL
00000bba: ISZERO
00000bbb: ISZERO
00000bbc: PUSH2 0x0bc4
00000bbf: JUMPI
00000bc0: PUSH1 0x00
00000bc2: DUP1
00000bc3: REVERT
00000bc4: JUMPDEST
00000bc5: POP
00000bc6: POP
00000bc7: POP
00000bc8: PUSH1 0x40
00000bca: MLOAD
00000bcb: DUP1
00000bcc: MLOAD
00000bcd: SWAP1
00000bce: POP
00000bcf: ISZERO
00000bd0: ISZERO
00000bd1: PUSH2 0x0bd9
00000bd4: JUMPI
00000bd5: PUSH1 0x00
00000bd7: DUP1
00000bd8: REVERT
00000bd9: JUMPDEST
00000bda: PUSH1 0x01
00000bdc: PUSH1 0xa0
00000bde: PUSH1 0x02
00000be0: EXP
00000be1: SUB
00000be2: DUP1
00000be3: DUP4
00000be4: AND
00000be5: PUSH1 0x00
00000be7: SWAP1
00000be8: DUP2
00000be9: MSTORE
00000bea: PUSH1 0x02
00000bec: PUSH1 0x20
00000bee: SWAP1
00000bef: DUP2
00000bf0: MSTORE
00000bf1: PUSH1 0x40
00000bf3: DUP1
00000bf4: DUP4
00000bf5: KECCAK256
00000bf6: CALLER
00000bf7: SWAP5
00000bf8: DUP6
00000bf9: AND
00000bfa: DUP5
00000bfb: MSTORE
00000bfc: SWAP1
00000bfd: SWAP2
00000bfe: MSTORE
00000bff: SWAP1
00000c00: DUP2
00000c01: SWAP1
00000c02: KECCAK256
00000c03: SLOAD
00000c04: PUSH32 0xdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d7
00000c25: SWAP3
00000c26: DUP6
00000c27: SWAP3
00000c28: SWAP1
00000c29: SWAP2
00000c2a: DUP6
00000c2b: SWAP2
00000c2c: MLOAD
00000c2d: PUSH1 0x01
00000c2f: PUSH1 0xa0
00000c31: PUSH1 0x02
00000c33: EXP
00000c34: SUB
00000c35: SWAP5
00000c36: DUP6
00000c37: AND
00000c38: DUP2
00000c39: MSTORE
00000c3a: SWAP3
00000c3b: SWAP1
00000c3c: SWAP4
00000c3d: AND
00000c3e: PUSH1 0x20
00000c40: DUP4
00000c41: ADD
00000c42: MSTORE
00000c43: PUSH1 0x40
00000c45: DUP1
00000c46: DUP4
00000c47: ADD
00000c48: SWAP2
00000c49: SWAP1
00000c4a: SWAP2
00000c4b: MSTORE
00000c4c: PUSH1 0x60
00000c4e: DUP3
00000c4f: ADD
00000c50: SWAP3
00000c51: SWAP1
00000c52: SWAP3
00000c53: MSTORE
00000c54: PUSH1 0x80
00000c56: ADD
00000c57: SWAP1
00000c58: MLOAD
00000c59: DUP1
00000c5a: SWAP2
00000c5b: SUB
00000c5c: SWAP1
00000c5d: LOG1
00000c5e: JUMPDEST
00000c5f: POP
00000c60: POP
00000c61: JUMP
00000c62: JUMPDEST
00000c63: PUSH1 0x09
00000c65: PUSH1 0x20
00000c67: MSTORE
00000c68: PUSH1 0x00
00000c6a: SWAP1
00000c6b: DUP2
00000c6c: MSTORE
00000c6d: PUSH1 0x40
00000c6f: SWAP1
00000c70: KECCAK256
00000c71: SLOAD
00000c72: PUSH1 0xff
00000c74: AND
00000c75: DUP2
00000c76: JUMP
00000c77: JUMPDEST
00000c78: PUSH1 0x03
00000c7a: PUSH1 0x20
00000c7c: MSTORE
00000c7d: PUSH1 0x00
00000c7f: SWAP1
00000c80: DUP2
00000c81: MSTORE
00000c82: PUSH1 0x40
00000c84: SWAP1
00000c85: KECCAK256
00000c86: SLOAD
00000c87: PUSH1 0xff
00000c89: AND
00000c8a: DUP2
00000c8b: JUMP
00000c8c: JUMPDEST
00000c8d: PUSH1 0x00
00000c8f: SLOAD
00000c90: PUSH2 0x0ca7
00000c93: SWAP1
00000c94: CALLER
00000c95: PUSH1 0x01
00000c97: PUSH1 0xa0
00000c99: PUSH1 0x02
00000c9b: EXP
00000c9c: SUB
00000c9d: SWAP1
00000c9e: DUP2
00000c9f: AND
00000ca0: SWAP2
00000ca1: AND
00000ca2: EQ
00000ca3: PUSH2 0x0620
00000ca6: JUMP
00000ca7: JUMPDEST
00000ca8: PUSH1 0x01
00000caa: PUSH1 0xa0
00000cac: PUSH1 0x02
00000cae: EXP
00000caf: SUB
00000cb0: DUP3
00000cb1: AND
00000cb2: PUSH1 0x00
00000cb4: SWAP1
00000cb5: DUP2
00000cb6: MSTORE
00000cb7: PUSH1 0x03
00000cb9: PUSH1 0x20
00000cbb: MSTORE
00000cbc: PUSH1 0x40
00000cbe: SWAP1
00000cbf: KECCAK256
00000cc0: DUP1
00000cc1: SLOAD
00000cc2: PUSH1 0xff
00000cc4: NOT
00000cc5: AND
00000cc6: DUP3
00000cc7: ISZERO
00000cc8: ISZERO
00000cc9: OR
00000cca: SWAP1
00000ccb: SSTORE
00000ccc: JUMPDEST
00000ccd: JUMPDEST
00000cce: POP
00000ccf: POP
00000cd0: JUMP
00000cd1: JUMPDEST
00000cd2: PUSH1 0x02
00000cd4: PUSH1 0x20
00000cd6: SWAP1
00000cd7: DUP2
00000cd8: MSTORE
00000cd9: PUSH1 0x00
00000cdb: SWAP3
00000cdc: DUP4
00000cdd: MSTORE
00000cde: PUSH1 0x40
00000ce0: DUP1
00000ce1: DUP5
00000ce2: KECCAK256
00000ce3: SWAP1
00000ce4: SWAP2
00000ce5: MSTORE
00000ce6: SWAP1
00000ce7: DUP3
00000ce8: MSTORE
00000ce9: SWAP1
00000cea: KECCAK256
00000ceb: SLOAD
00000cec: DUP2
00000ced: JUMP
00000cee: JUMPDEST
00000cef: PUSH1 0x06
00000cf1: SLOAD
00000cf2: PUSH1 0x01
00000cf4: PUSH1 0xa0
00000cf6: PUSH1 0x02
00000cf8: EXP
00000cf9: SUB
00000cfa: AND
00000cfb: DUP2
00000cfc: JUMP
00000cfd: JUMPDEST
00000cfe: PUSH1 0x01
00000d00: PUSH1 0x20
00000d02: MSTORE
00000d03: PUSH1 0x00
00000d05: SWAP1
00000d06: DUP2
00000d07: MSTORE
00000d08: PUSH1 0x40
00000d0a: SWAP1
00000d0b: KECCAK256
00000d0c: SLOAD
00000d0d: DUP2
00000d0e: JUMP
00000d0f: JUMPDEST
00000d10: PUSH1 0x00
00000d12: SLOAD
00000d13: PUSH1 0x01
00000d15: PUSH1 0xa0
00000d17: PUSH1 0x02
00000d19: EXP
00000d1a: SUB
00000d1b: AND
00000d1c: JUMPDEST
00000d1d: SWAP1
00000d1e: JUMP
00000d1f: JUMPDEST
00000d20: PUSH1 0x00
00000d22: SLOAD
00000d23: PUSH1 0x01
00000d25: PUSH1 0xa0
00000d27: PUSH1 0x02
00000d29: EXP
00000d2a: SUB
00000d2b: AND
00000d2c: DUP2
00000d2d: JUMP
00000d2e: JUMPDEST
00000d2f: PUSH1 0x00
00000d31: PUSH2 0x0d3c
00000d34: DUP4
00000d35: DUP4
00000d36: GT
00000d37: ISZERO
00000d38: PUSH2 0x0620
00000d3b: JUMP
00000d3c: JUMPDEST
00000d3d: POP
00000d3e: DUP1
00000d3f: DUP3
00000d40: SUB
00000d41: JUMPDEST
00000d42: SWAP3
00000d43: SWAP2
00000d44: POP
00000d45: POP
00000d46: JUMP
00000d47: JUMPDEST
00000d48: PUSH1 0x00
00000d4a: SLOAD
00000d4b: CALLER
00000d4c: PUSH1 0x01
00000d4e: PUSH1 0xa0
00000d50: PUSH1 0x02
00000d52: EXP
00000d53: SUB
00000d54: SWAP1
00000d55: DUP2
00000d56: AND
00000d57: SWAP2
00000d58: AND
00000d59: EQ
00000d5a: DUP1
00000d5b: ISZERO
00000d5c: SWAP1
00000d5d: PUSH2 0x0d7f
00000d60: JUMPI
00000d61: POP
00000d62: PUSH1 0x01
00000d64: PUSH1 0xa0
00000d66: PUSH1 0x02
00000d68: EXP
00000d69: SUB
00000d6a: CALLER
00000d6b: AND
00000d6c: PUSH1 0x00
00000d6e: SWAP1
00000d6f: DUP2
00000d70: MSTORE
00000d71: PUSH1 0x03
00000d73: PUSH1 0x20
00000d75: MSTORE
00000d76: PUSH1 0x40
00000d78: SWAP1
00000d79: KECCAK256
00000d7a: SLOAD
00000d7b: PUSH1 0xff
00000d7d: AND
00000d7e: ISZERO
00000d7f: JUMPDEST
00000d80: ISZERO
00000d81: PUSH2 0x0d89
00000d84: JUMPI
00000d85: PUSH1 0x00
00000d87: DUP1
00000d88: REVERT
00000d89: JUMPDEST
00000d8a: PUSH1 0x01
00000d8c: PUSH1 0xa0
00000d8e: PUSH1 0x02
00000d90: EXP
00000d91: SUB
00000d92: DUP3
00000d93: AND
00000d94: PUSH1 0x00
00000d96: SWAP1
00000d97: DUP2
00000d98: MSTORE
00000d99: PUSH1 0x01
00000d9b: PUSH1 0x20
00000d9d: MSTORE
00000d9e: PUSH1 0x40
00000da0: SWAP1
00000da1: KECCAK256
00000da2: SLOAD
00000da3: DUP2
00000da4: LT
00000da5: ISZERO
00000da6: PUSH2 0x0dae
00000da9: JUMPI
00000daa: PUSH1 0x00
00000dac: DUP1
00000dad: REVERT
00000dae: JUMPDEST
00000daf: PUSH1 0x01
00000db1: PUSH1 0xa0
00000db3: PUSH1 0x02
00000db5: EXP
00000db6: SUB
00000db7: DUP3
00000db8: AND
00000db9: PUSH1 0x00
00000dbb: SWAP1
00000dbc: DUP2
00000dbd: MSTORE
00000dbe: PUSH1 0x01
00000dc0: PUSH1 0x20
00000dc2: MSTORE
00000dc3: PUSH1 0x40
00000dc5: SWAP1
00000dc6: KECCAK256
00000dc7: DUP2
00000dc8: SWAP1
00000dc9: SSTORE
00000dca: JUMPDEST
00000dcb: JUMPDEST
00000dcc: POP
00000dcd: POP
00000dce: JUMP
00000dcf: JUMPDEST
00000dd0: PUSH1 0x00
00000dd2: DUP3
00000dd3: DUP3
00000dd4: MUL
00000dd5: PUSH2 0x0df3
00000dd8: DUP5
00000dd9: ISZERO
00000dda: DUP1
00000ddb: PUSH2 0x0dee
00000dde: JUMPI
00000ddf: POP
00000de0: DUP4
00000de1: DUP6
00000de2: DUP4
00000de3: DUP2
00000de4: ISZERO
00000de5: ISZERO
00000de6: PUSH2 0x0deb
00000de9: JUMPI
00000dea: INVALID
00000deb: JUMPDEST
00000dec: DIV
00000ded: EQ
00000dee: JUMPDEST
00000def: PUSH2 0x0620
00000df2: JUMP
00000df3: JUMPDEST
00000df4: DUP1
00000df5: SWAP2
00000df6: POP
00000df7: JUMPDEST
00000df8: POP
00000df9: SWAP3
00000dfa: SWAP2
00000dfb: POP
00000dfc: POP
00000dfd: JUMP
00000dfe: JUMPDEST
00000dff: CALLER
00000e00: PUSH1 0x01
00000e02: PUSH1 0xa0
00000e04: PUSH1 0x02
00000e06: EXP
00000e07: SUB
00000e08: AND
00000e09: PUSH1 0x00
00000e0b: SWAP1
00000e0c: DUP2
00000e0d: MSTORE
00000e0e: PUSH32 0xac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b
00000e2f: PUSH1 0x20
00000e31: MSTORE
00000e32: PUSH1 0x40
00000e34: SWAP1
00000e35: KECCAK256
00000e36: SLOAD
00000e37: PUSH2 0x0e40
00000e3a: SWAP1
00000e3b: CALLVALUE
00000e3c: PUSH2 0x0f61
00000e3f: JUMP
00000e40: JUMPDEST
00000e41: CALLER
00000e42: PUSH1 0x01
00000e44: PUSH1 0xa0
00000e46: PUSH1 0x02
00000e48: EXP
00000e49: SUB
00000e4a: DUP2
00000e4b: AND
00000e4c: PUSH1 0x00
00000e4e: DUP2
00000e4f: DUP2
00000e50: MSTORE
00000e51: PUSH32 0xac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b
00000e72: PUSH1 0x20
00000e74: DUP2
00000e75: DUP2
00000e76: MSTORE
00000e77: PUSH1 0x40
00000e79: DUP1
00000e7a: DUP5
00000e7b: KECCAK256
00000e7c: SWAP7
00000e7d: DUP8
00000e7e: SSTORE
00000e7f: PUSH1 0x04
00000e81: DUP3
00000e82: MSTORE
00000e83: DUP1
00000e84: DUP5
00000e85: KECCAK256
00000e86: NUMBER
00000e87: SWAP1
00000e88: SSTORE
00000e89: SWAP4
00000e8a: DUP4
00000e8b: MSTORE
00000e8c: MSTORE
00000e8d: SWAP3
00000e8e: SLOAD
00000e8f: PUSH32 0xdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d7
00000eb0: SWAP4
00000eb1: SWAP3
00000eb2: SWAP2
00000eb3: CALLVALUE
00000eb4: SWAP2
00000eb5: SWAP1
00000eb6: MLOAD
00000eb7: PUSH1 0x01
00000eb9: PUSH1 0xa0
00000ebb: PUSH1 0x02
00000ebd: EXP
00000ebe: SUB
00000ebf: SWAP5
00000ec0: DUP6
00000ec1: AND
00000ec2: DUP2
00000ec3: MSTORE
00000ec4: SWAP3
00000ec5: SWAP1
00000ec6: SWAP4
00000ec7: AND
00000ec8: PUSH1 0x20
00000eca: DUP4
00000ecb: ADD
00000ecc: MSTORE
00000ecd: PUSH1 0x40
00000ecf: DUP1
00000ed0: DUP4
00000ed1: ADD
00000ed2: SWAP2
00000ed3: SWAP1
00000ed4: SWAP2
00000ed5: MSTORE
00000ed6: PUSH1 0x60
00000ed8: DUP3
00000ed9: ADD
00000eda: SWAP3
00000edb: SWAP1
00000edc: SWAP3
00000edd: MSTORE
00000ede: PUSH1 0x80
00000ee0: ADD
00000ee1: SWAP1
00000ee2: MLOAD
00000ee3: DUP1
00000ee4: SWAP2
00000ee5: SUB
00000ee6: SWAP1
00000ee7: LOG1
00000ee8: JUMPDEST
00000ee9: JUMP
00000eea: JUMPDEST
00000eeb: PUSH1 0x08
00000eed: PUSH1 0x20
00000eef: MSTORE
00000ef0: PUSH1 0x00
00000ef2: SWAP1
00000ef3: DUP2
00000ef4: MSTORE
00000ef5: PUSH1 0x40
00000ef7: SWAP1
00000ef8: KECCAK256
00000ef9: SLOAD
00000efa: PUSH1 0xff
00000efc: AND
00000efd: DUP2
00000efe: JUMP
00000eff: JUMPDEST
00000f00: PUSH1 0x00
00000f02: DUP1
00000f03: SLOAD
00000f04: CALLER
00000f05: PUSH1 0x01
00000f07: PUSH1 0xa0
00000f09: PUSH1 0x02
00000f0b: EXP
00000f0c: SUB
00000f0d: SWAP1
00000f0e: DUP2
00000f0f: AND
00000f10: SWAP2
00000f11: AND
00000f12: EQ
00000f13: DUP1
00000f14: ISZERO
00000f15: SWAP1
00000f16: PUSH2 0x0f38
00000f19: JUMPI
00000f1a: POP
00000f1b: PUSH1 0x01
00000f1d: PUSH1 0xa0
00000f1f: PUSH1 0x02
00000f21: EXP
00000f22: SUB
00000f23: CALLER
00000f24: AND
00000f25: PUSH1 0x00
00000f27: SWAP1
00000f28: DUP2
00000f29: MSTORE
00000f2a: PUSH1 0x03
00000f2c: PUSH1 0x20
00000f2e: MSTORE
00000f2f: PUSH1 0x40
00000f31: SWAP1
00000f32: KECCAK256
00000f33: SLOAD
00000f34: PUSH1 0xff
00000f36: AND
00000f37: ISZERO
00000f38: JUMPDEST
00000f39: ISZERO
00000f3a: PUSH2 0x0f42
00000f3d: JUMPI
00000f3e: PUSH1 0x00
00000f40: DUP1
00000f41: REVERT
00000f42: JUMPDEST
00000f43: PUSH3 0x0f4240
00000f47: DUP3
00000f48: GT
00000f49: ISZERO
00000f4a: PUSH2 0x0f52
00000f4d: JUMPI
00000f4e: PUSH1 0x00
00000f50: DUP1
00000f51: REVERT
00000f52: JUMPDEST
00000f53: POP
00000f54: PUSH1 0x07
00000f56: DUP2
00000f57: SWAP1
00000f58: SSTORE
00000f59: PUSH1 0x01
00000f5b: JUMPDEST
00000f5c: JUMPDEST
00000f5d: SWAP2
00000f5e: SWAP1
00000f5f: POP
00000f60: JUMP
00000f61: JUMPDEST
00000f62: PUSH1 0x00
00000f64: DUP3
00000f65: DUP3
00000f66: ADD
00000f67: PUSH2 0x0df3
00000f6a: DUP5
00000f6b: DUP3
00000f6c: LT
00000f6d: DUP1
00000f6e: ISZERO
00000f6f: SWAP1
00000f70: PUSH2 0x0dee
00000f73: JUMPI
00000f74: POP
00000f75: DUP4
00000f76: DUP3
00000f77: LT
00000f78: ISZERO
00000f79: JUMPDEST
00000f7a: PUSH2 0x0620
00000f7d: JUMP
00000f7e: JUMPDEST
00000f7f: DUP1
00000f80: SWAP2
00000f81: POP
00000f82: JUMPDEST
00000f83: POP
00000f84: SWAP3
00000f85: SWAP2
00000f86: POP
00000f87: POP
00000f88: JUMP
00000f89: JUMPDEST
00000f8a: PUSH1 0x00
00000f8c: DUP1
00000f8d: SLOAD
00000f8e: DUP2
00000f8f: SWAP1
00000f90: DUP2
00000f91: SWAP1
00000f92: CALLER
00000f93: PUSH1 0x01
00000f95: PUSH1 0xa0
00000f97: PUSH1 0x02
00000f99: EXP
00000f9a: SUB
00000f9b: SWAP1
00000f9c: DUP2
00000f9d: AND
00000f9e: SWAP2
00000f9f: AND
00000fa0: EQ
00000fa1: DUP1
00000fa2: ISZERO
00000fa3: SWAP1
00000fa4: PUSH2 0x0fc6
00000fa7: JUMPI
00000fa8: POP
00000fa9: PUSH1 0x01
00000fab: PUSH1 0xa0
00000fad: PUSH1 0x02
00000faf: EXP
00000fb0: SUB
00000fb1: CALLER
00000fb2: AND
00000fb3: PUSH1 0x00
00000fb5: SWAP1
00000fb6: DUP2
00000fb7: MSTORE
00000fb8: PUSH1 0x03
00000fba: PUSH1 0x20
00000fbc: MSTORE
00000fbd: PUSH1 0x40
00000fbf: SWAP1
00000fc0: KECCAK256
00000fc1: SLOAD
00000fc2: PUSH1 0xff
00000fc4: AND
00000fc5: ISZERO
00000fc6: JUMPDEST
00000fc7: ISZERO
00000fc8: PUSH2 0x0fd0
00000fcb: JUMPI
00000fcc: PUSH1 0x00
00000fce: DUP1
00000fcf: REVERT
00000fd0: JUMPDEST
00000fd1: DUP7
00000fd2: PUSH1 0x03
00000fd4: JUMPDEST
00000fd5: PUSH1 0x20
00000fd7: MUL
00000fd8: ADD
00000fd9: MLOAD
00000fda: PUSH1 0x01
00000fdc: PUSH1 0x00
00000fde: DUP9
00000fdf: PUSH1 0x02
00000fe1: JUMPDEST
00000fe2: PUSH1 0x20
00000fe4: MUL
00000fe5: ADD
00000fe6: MLOAD
00000fe7: PUSH1 0x01
00000fe9: PUSH1 0xa0
00000feb: PUSH1 0x02
00000fed: EXP
00000fee: SUB
00000fef: AND
00000ff0: PUSH1 0x01
00000ff2: PUSH1 0xa0
00000ff4: PUSH1 0x02
00000ff6: EXP
00000ff7: SUB
00000ff8: AND
00000ff9: DUP2
00000ffa: MSTORE
00000ffb: PUSH1 0x20
00000ffd: ADD
00000ffe: SWAP1
00000fff: DUP2
00001000: MSTORE
00001001: PUSH1 0x20
00001003: ADD
00001004: PUSH1 0x00
00001006: KECCAK256
00001007: SLOAD
00001008: GT
00001009: ISZERO
0000100a: PUSH2 0x1012
0000100d: JUMPI
0000100e: PUSH1 0x00
00001010: DUP1
00001011: REVERT
00001012: JUMPDEST
00001013: ADDRESS
00001014: DUP7
00001015: PUSH1 0x00
00001017: JUMPDEST
00001018: PUSH1 0x20
0000101a: MUL
0000101b: ADD
0000101c: MLOAD
0000101d: DUP9
0000101e: PUSH1 0x00
00001020: JUMPDEST
00001021: PUSH1 0x20
00001023: MUL
00001024: ADD
00001025: MLOAD
00001026: DUP9
00001027: PUSH1 0x01
00001029: JUMPDEST
0000102a: PUSH1 0x20
0000102c: MUL
0000102d: ADD
0000102e: MLOAD
0000102f: DUP11
00001030: PUSH1 0x01
00001032: JUMPDEST
00001033: PUSH1 0x20
00001035: MUL
00001036: ADD
00001037: MLOAD
00001038: DUP12
00001039: PUSH1 0x02
0000103b: JUMPDEST
0000103c: PUSH1 0x20
0000103e: MUL
0000103f: ADD
00001040: MLOAD
00001041: DUP13
00001042: PUSH1 0x03
00001044: JUMPDEST
00001045: PUSH1 0x20
00001047: MUL
00001048: ADD
00001049: MLOAD
0000104a: DUP13
0000104b: PUSH1 0x02
0000104d: JUMPDEST
0000104e: PUSH1 0x20
00001050: MUL
00001051: ADD
00001052: MLOAD
00001053: PUSH1 0x40
00001055: MLOAD
00001056: PUSH13 0x01000000000000000000000000
00001064: PUSH1 0x01
00001066: PUSH1 0xa0
00001068: PUSH1 0x02
0000106a: EXP
0000106b: SUB
0000106c: SWAP10
0000106d: DUP11
0000106e: AND
0000106f: DUP2
00001070: MUL
00001071: DUP3
00001072: MSTORE
00001073: SWAP8
00001074: DUP10
00001075: AND
00001076: DUP9
00001077: MUL
00001078: PUSH1 0x14
0000107a: DUP3
0000107b: ADD
0000107c: MSTORE
0000107d: PUSH1 0x28
0000107f: DUP2
00001080: ADD
00001081: SWAP7
00001082: SWAP1
00001083: SWAP7
00001084: MSTORE
00001085: SWAP4
00001086: DUP8
00001087: AND
00001088: DUP7
00001089: MUL
0000108a: PUSH1 0x48
0000108c: DUP7
0000108d: ADD
0000108e: MSTORE
0000108f: PUSH1 0x5c
00001091: DUP6
00001092: ADD
00001093: SWAP3
00001094: SWAP1
00001095: SWAP3
00001096: MSTORE
00001097: PUSH1 0x7c
00001099: DUP5
0000109a: ADD
0000109b: MSTORE
0000109c: PUSH1 0x9c
0000109e: DUP4
0000109f: ADD
000010a0: MSTORE
000010a1: SWAP1
000010a2: SWAP3
000010a3: AND
000010a4: MUL
000010a5: PUSH1 0xbc
000010a7: DUP3
000010a8: ADD
000010a9: MSTORE
000010aa: PUSH1 0xd0
000010ac: ADD
000010ad: PUSH1 0x40
000010af: MLOAD
000010b0: SWAP1
000010b1: DUP2
000010b2: SWAP1
000010b3: SUB
000010b4: SWAP1
000010b5: KECCAK256
000010b6: SWAP2
000010b7: POP
000010b8: DUP6
000010b9: PUSH1 0x02
000010bb: JUMPDEST
000010bc: PUSH1 0x20
000010be: MUL
000010bf: ADD
000010c0: MLOAD
000010c1: PUSH1 0x01
000010c3: PUSH1 0xa0
000010c5: PUSH1 0x02
000010c7: EXP
000010c8: SUB
000010c9: AND
000010ca: PUSH1 0x01
000010cc: DUP4
000010cd: PUSH1 0x40
000010cf: MLOAD
000010d0: PUSH32 0x19457468657265756d205369676e6564204d6573736167653a0a333200000000
000010f1: DUP2
000010f2: MSTORE
000010f3: PUSH1 0x1c
000010f5: DUP2
000010f6: ADD
000010f7: SWAP2
000010f8: SWAP1
000010f9: SWAP2
000010fa: MSTORE
000010fb: PUSH1 0x3c
000010fd: ADD
000010fe: PUSH1 0x40
00001100: MLOAD
00001101: SWAP1
00001102: DUP2
00001103: SWAP1
00001104: SUB
00001105: SWAP1
00001106: KECCAK256
00001107: DUP8
00001108: PUSH1 0x00
0000110a: JUMPDEST
0000110b: PUSH1 0x20
0000110d: MUL
0000110e: ADD
0000110f: MLOAD
00001110: DUP8
00001111: PUSH1 0x00
00001113: JUMPDEST
00001114: PUSH1 0x20
00001116: MUL
00001117: ADD
00001118: MLOAD
00001119: DUP9
0000111a: PUSH1 0x01
0000111c: JUMPDEST
0000111d: PUSH1 0x20
0000111f: MUL
00001120: ADD
00001121: MLOAD
00001122: PUSH1 0x40
00001124: MLOAD
00001125: PUSH1 0x00
00001127: DUP2
00001128: MSTORE
00001129: PUSH1 0x20
0000112b: ADD
0000112c: PUSH1 0x40
0000112e: MSTORE
0000112f: PUSH1 0x00
00001131: PUSH1 0x40
00001133: MLOAD
00001134: PUSH1 0x20
00001136: ADD
00001137: MSTORE
00001138: PUSH1 0x40
0000113a: MLOAD
0000113b: SWAP4
0000113c: DUP5
0000113d: MSTORE
0000113e: PUSH1 0xff
00001140: SWAP1
00001141: SWAP3
00001142: AND
00001143: PUSH1 0x20
00001145: DUP1
00001146: DUP6
00001147: ADD
00001148: SWAP2
00001149: SWAP1
0000114a: SWAP2
0000114b: MSTORE
0000114c: PUSH1 0x40
0000114e: DUP1
0000114f: DUP6
00001150: ADD
00001151: SWAP3
00001152: SWAP1
00001153: SWAP3
00001154: MSTORE
00001155: PUSH1 0x60
00001157: DUP5
00001158: ADD
00001159: SWAP3
0000115a: SWAP1
0000115b: SWAP3
0000115c: MSTORE
0000115d: PUSH1 0x80
0000115f: SWAP1
00001160: SWAP3
00001161: ADD
00001162: SWAP2
00001163: MLOAD
00001164: PUSH1 0x20
00001166: DUP2
00001167: SUB
00001168: SWAP1
00001169: DUP1
0000116a: DUP5
0000116b: SUB
0000116c: SWAP1
0000116d: PUSH1 0x00
0000116f: DUP7
00001170: PUSH2 0x646e
00001173: GAS
00001174: SUB
00001175: CALL
00001176: ISZERO
00001177: ISZERO
00001178: PUSH2 0x1180
0000117b: JUMPI
0000117c: PUSH1 0x00
0000117e: DUP1
0000117f: REVERT
00001180: JUMPDEST
00001181: POP
00001182: POP
00001183: PUSH1 0x20
00001185: PUSH1 0x40
00001187: MLOAD
00001188: SUB
00001189: MLOAD
0000118a: PUSH1 0x01
0000118c: PUSH1 0xa0
0000118e: PUSH1 0x02
00001190: EXP
00001191: SUB
00001192: AND
00001193: EQ
00001194: PUSH2 0x119c
00001197: JUMPI
00001198: PUSH1 0x00
0000119a: DUP1
0000119b: REVERT
0000119c: JUMPDEST
0000119d: DUP2
0000119e: DUP8
0000119f: PUSH1 0x04
000011a1: JUMPDEST
000011a2: PUSH1 0x20
000011a4: MUL
000011a5: ADD
000011a6: MLOAD
000011a7: DUP8
000011a8: PUSH1 0x03
000011aa: JUMPDEST
000011ab: PUSH1 0x20
000011ad: MUL
000011ae: ADD
000011af: MLOAD
000011b0: DUP10
000011b1: PUSH1 0x05
000011b3: JUMPDEST
000011b4: PUSH1 0x20
000011b6: MUL
000011b7: ADD
000011b8: MLOAD
000011b9: PUSH1 0x40
000011bb: MLOAD
000011bc: SWAP4
000011bd: DUP5
000011be: MSTORE
000011bf: PUSH1 0x20
000011c1: DUP5
000011c2: ADD
000011c3: SWAP3
000011c4: SWAP1
000011c5: SWAP3
000011c6: MSTORE
000011c7: PUSH1 0x01
000011c9: PUSH1 0xa0
000011cb: PUSH1 0x02
000011cd: EXP
000011ce: SUB
000011cf: AND
000011d0: PUSH13 0x01000000000000000000000000
000011de: MUL
000011df: PUSH1 0x40
000011e1: DUP1
000011e2: DUP5
000011e3: ADD
000011e4: SWAP2
000011e5: SWAP1
000011e6: SWAP2
000011e7: MSTORE
000011e8: PUSH1 0x54
000011ea: DUP4
000011eb: ADD
000011ec: SWAP2
000011ed: SWAP1
000011ee: SWAP2
000011ef: MSTORE
000011f0: PUSH1 0x74
000011f2: SWAP1
000011f3: SWAP2
000011f4: ADD
000011f5: SWAP1
000011f6: MLOAD
000011f7: SWAP1
000011f8: DUP2
000011f9: SWAP1
000011fa: SUB
000011fb: SWAP1
000011fc: KECCAK256
000011fd: SWAP1
000011fe: POP
000011ff: DUP6
00001200: PUSH1 0x03
00001202: JUMPDEST
00001203: PUSH1 0x20
00001205: MUL
00001206: ADD
00001207: MLOAD
00001208: PUSH1 0x01
0000120a: PUSH1 0xa0
0000120c: PUSH1 0x02
0000120e: EXP
0000120f: SUB
00001210: AND
00001211: PUSH1 0x01
00001213: DUP3
00001214: PUSH1 0x40
00001216: MLOAD
00001217: PUSH32 0x19457468657265756d205369676e6564204d6573736167653a0a333200000000
00001238: DUP2
00001239: MSTORE
0000123a: PUSH1 0x1c
0000123c: DUP2
0000123d: ADD
0000123e: SWAP2
0000123f: SWAP1
00001240: SWAP2
00001241: MSTORE
00001242: PUSH1 0x3c
00001244: ADD
00001245: PUSH1 0x40
00001247: MLOAD
00001248: SWAP1
00001249: DUP2
0000124a: SWAP1
0000124b: SUB
0000124c: SWAP1
0000124d: KECCAK256
0000124e: DUP8
0000124f: PUSH1 0x01
00001251: JUMPDEST
00001252: PUSH1 0x20
00001254: MUL
00001255: ADD
00001256: MLOAD
00001257: DUP8
00001258: PUSH1 0x02
0000125a: JUMPDEST
0000125b: PUSH1 0x20
0000125d: MUL
0000125e: ADD
0000125f: MLOAD
00001260: DUP9
00001261: PUSH1 0x03
00001263: JUMPDEST
00001264: PUSH1 0x20
00001266: MUL
00001267: ADD
00001268: MLOAD
00001269: PUSH1 0x40
0000126b: MLOAD
0000126c: PUSH1 0x00
0000126e: DUP2
0000126f: MSTORE
00001270: PUSH1 0x20
00001272: ADD
00001273: PUSH1 0x40
00001275: MSTORE
00001276: PUSH1 0x00
00001278: PUSH1 0x40
0000127a: MLOAD
0000127b: PUSH1 0x20
0000127d: ADD
0000127e: MSTORE
0000127f: PUSH1 0x40
00001281: MLOAD
00001282: SWAP4
00001283: DUP5
00001284: MSTORE
00001285: PUSH1 0xff
00001287: SWAP1
00001288: SWAP3
00001289: AND
0000128a: PUSH1 0x20
0000128c: DUP1
0000128d: DUP6
0000128e: ADD
0000128f: SWAP2
00001290: SWAP1
00001291: SWAP2
00001292: MSTORE
00001293: PUSH1 0x40
00001295: DUP1
00001296: DUP6
00001297: ADD
00001298: SWAP3
00001299: SWAP1
0000129a: SWAP3
0000129b: MSTORE
0000129c: PUSH1 0x60
0000129e: DUP5
0000129f: ADD
000012a0: SWAP3
000012a1: SWAP1
000012a2: SWAP3
000012a3: MSTORE
000012a4: PUSH1 0x80
000012a6: SWAP1
000012a7: SWAP3
000012a8: ADD
000012a9: SWAP2
000012aa: MLOAD
000012ab: PUSH1 0x20
000012ad: DUP2
000012ae: SUB
000012af: SWAP1
000012b0: DUP1
000012b1: DUP5
000012b2: SUB
000012b3: SWAP1
000012b4: PUSH1 0x00
000012b6: DUP7
000012b7: PUSH2 0x646e
000012ba: GAS
000012bb: SUB
000012bc: CALL
000012bd: ISZERO
000012be: ISZERO
000012bf: PUSH2 0x12c7
000012c2: JUMPI
000012c3: PUSH1 0x00
000012c5: DUP1
000012c6: REVERT
000012c7: JUMPDEST
000012c8: POP
000012c9: POP
000012ca: PUSH1 0x20
000012cc: PUSH1 0x40
000012ce: MLOAD
000012cf: SUB
000012d0: MLOAD
000012d1: PUSH1 0x01
000012d3: PUSH1 0xa0
000012d5: PUSH1 0x02
000012d7: EXP
000012d8: SUB
000012d9: AND
000012da: EQ
000012db: PUSH2 0x12e3
000012de: JUMPI
000012df: PUSH1 0x00
000012e1: DUP1
000012e2: REVERT
000012e3: JUMPDEST
000012e4: PUSH1 0x00
000012e6: DUP2
000012e7: DUP2
000012e8: MSTORE
000012e9: PUSH1 0x08
000012eb: PUSH1 0x20
000012ed: MSTORE
000012ee: PUSH1 0x40
000012f0: SWAP1
000012f1: KECCAK256
000012f2: SLOAD
000012f3: PUSH1 0xff
000012f5: AND
000012f6: ISZERO
000012f7: PUSH2 0x12ff
000012fa: JUMPI
000012fb: PUSH1 0x00
000012fd: DUP1
000012fe: REVERT
000012ff: JUMPDEST
00001300: PUSH1 0x00
00001302: DUP2
00001303: DUP2
00001304: MSTORE
00001305: PUSH1 0x08
00001307: PUSH1 0x20
00001309: MSTORE
0000130a: PUSH1 0x40
0000130c: SWAP1
0000130d: KECCAK256
0000130e: DUP1
0000130f: SLOAD
00001310: PUSH1 0xff
00001312: NOT
00001313: AND
00001314: PUSH1 0x01
00001316: OR
00001317: SWAP1
00001318: SSTORE
00001319: PUSH8 0x016345785d8a0000
00001322: DUP8
00001323: PUSH1 0x06
00001325: JUMPDEST
00001326: PUSH1 0x20
00001328: MUL
00001329: ADD
0000132a: MLOAD
0000132b: GT
0000132c: ISZERO
0000132d: PUSH2 0x1343
00001330: JUMPI
00001331: PUSH8 0x016345785d8a0000
0000133a: DUP8
0000133b: PUSH1 0x06
0000133d: JUMPDEST
0000133e: PUSH1 0x20
00001340: MUL
00001341: ADD
00001342: MSTORE
00001343: JUMPDEST
00001344: PUSH8 0x016345785d8a0000
0000134d: DUP8
0000134e: PUSH1 0x07
00001350: JUMPDEST
00001351: PUSH1 0x20
00001353: MUL
00001354: ADD
00001355: MLOAD
00001356: GT
00001357: ISZERO
00001358: PUSH2 0x136e
0000135b: JUMPI
0000135c: PUSH8 0x016345785d8a0000
00001365: DUP8
00001366: PUSH1 0x07
00001368: JUMPDEST
00001369: PUSH1 0x20
0000136b: MUL
0000136c: ADD
0000136d: MSTORE
0000136e: JUMPDEST
0000136f: DUP7
00001370: PUSH1 0x00
00001372: JUMPDEST
00001373: PUSH1 0x20
00001375: MUL
00001376: ADD
00001377: MLOAD
00001378: PUSH1 0x00
0000137a: DUP4
0000137b: DUP2
0000137c: MSTORE
0000137d: PUSH1 0x05
0000137f: PUSH1 0x20
00001381: MSTORE
00001382: PUSH1 0x40
00001384: SWAP1
00001385: KECCAK256
00001386: SLOAD
00001387: PUSH2 0x1398
0000138a: SWAP1
0000138b: DUP10
0000138c: PUSH1 0x04
0000138e: JUMPDEST
0000138f: PUSH1 0x20
00001391: MUL
00001392: ADD
00001393: MLOAD
00001394: PUSH2 0x0f61
00001397: JUMP
00001398: JUMPDEST
00001399: GT
0000139a: ISZERO
0000139b: PUSH2 0x13a3
0000139e: JUMPI
0000139f: PUSH1 0x00
000013a1: DUP1
000013a2: REVERT
000013a3: JUMPDEST
000013a4: DUP7
000013a5: PUSH1 0x04
000013a7: JUMPDEST
000013a8: PUSH1 0x20
000013aa: MUL
000013ab: ADD
000013ac: MLOAD
000013ad: PUSH1 0x02
000013af: PUSH1 0x00
000013b1: DUP9
000013b2: DUP2
000013b3: JUMPDEST
000013b4: PUSH1 0x20
000013b6: MUL
000013b7: ADD
000013b8: MLOAD
000013b9: PUSH1 0x01
000013bb: PUSH1 0xa0
000013bd: PUSH1 0x02
000013bf: EXP
000013c0: SUB
000013c1: AND
000013c2: DUP2
000013c3: MSTORE
000013c4: PUSH1 0x20
000013c6: DUP2
000013c7: ADD
000013c8: SWAP2
000013c9: SWAP1
000013ca: SWAP2
000013cb: MSTORE
000013cc: PUSH1 0x40
000013ce: ADD
000013cf: PUSH1 0x00
000013d1: SWAP1
000013d2: DUP2
000013d3: KECCAK256
000013d4: SWAP1
000013d5: DUP9
000013d6: PUSH1 0x03
000013d8: JUMPDEST
000013d9: PUSH1 0x20
000013db: MUL
000013dc: ADD
000013dd: MLOAD
000013de: PUSH1 0x01
000013e0: PUSH1 0xa0
000013e2: PUSH1 0x02
000013e4: EXP
000013e5: SUB
000013e6: AND
000013e7: PUSH1 0x01
000013e9: PUSH1 0xa0
000013eb: PUSH1 0x02
000013ed: EXP
000013ee: SUB
000013ef: AND
000013f0: DUP2
000013f1: MSTORE
000013f2: PUSH1 0x20
000013f4: ADD
000013f5: SWAP1
000013f6: DUP2
000013f7: MSTORE
000013f8: PUSH1 0x20
000013fa: ADD
000013fb: PUSH1 0x00
000013fd: KECCAK256
000013fe: SLOAD
000013ff: LT
00001400: ISZERO
00001401: PUSH2 0x1409
00001404: JUMPI
00001405: PUSH1 0x00
00001407: DUP1
00001408: REVERT
00001409: JUMPDEST
0000140a: DUP7
0000140b: PUSH1 0x00
0000140d: JUMPDEST
0000140e: PUSH1 0x20
00001410: MUL
00001411: ADD
00001412: MLOAD
00001413: PUSH2 0x142c
00001416: DUP9
00001417: PUSH1 0x01
00001419: JUMPDEST
0000141a: PUSH1 0x20
0000141c: MUL
0000141d: ADD
0000141e: MLOAD
0000141f: DUP10
00001420: PUSH1 0x04
00001422: JUMPDEST
00001423: PUSH1 0x20
00001425: MUL
00001426: ADD
00001427: MLOAD
00001428: PUSH2 0x0dcf
0000142b: JUMP
0000142c: JUMPDEST
0000142d: DUP2
0000142e: ISZERO
0000142f: ISZERO
00001430: PUSH2 0x1435
00001433: JUMPI
00001434: INVALID
00001435: JUMPDEST
00001436: DIV
00001437: PUSH1 0x02
00001439: PUSH1 0x00
0000143b: DUP9
0000143c: PUSH1 0x01
0000143e: JUMPDEST
0000143f: PUSH1 0x20
00001441: MUL
00001442: ADD
00001443: MLOAD
00001444: PUSH1 0x01
00001446: PUSH1 0xa0
00001448: PUSH1 0x02
0000144a: EXP
0000144b: SUB
0000144c: AND
0000144d: DUP2
0000144e: MSTORE
0000144f: PUSH1 0x20
00001451: DUP2
00001452: ADD
00001453: SWAP2
00001454: SWAP1
00001455: SWAP2
00001456: MSTORE
00001457: PUSH1 0x40
00001459: ADD
0000145a: PUSH1 0x00
0000145c: SWAP1
0000145d: DUP2
0000145e: KECCAK256
0000145f: SWAP1
00001460: DUP9
00001461: PUSH1 0x02
00001463: JUMPDEST
00001464: PUSH1 0x20
00001466: MUL
00001467: ADD
00001468: MLOAD
00001469: PUSH1 0x01
0000146b: PUSH1 0xa0
0000146d: PUSH1 0x02
0000146f: EXP
00001470: SUB
00001471: AND
00001472: PUSH1 0x01
00001474: PUSH1 0xa0
00001476: PUSH1 0x02
00001478: EXP
00001479: SUB
0000147a: AND
0000147b: DUP2
0000147c: MSTORE
0000147d: PUSH1 0x20
0000147f: ADD
00001480: SWAP1
00001481: DUP2
00001482: MSTORE
00001483: PUSH1 0x20
00001485: ADD
00001486: PUSH1 0x00
00001488: KECCAK256
00001489: SLOAD
0000148a: LT
0000148b: ISZERO
0000148c: PUSH2 0x1494
0000148f: JUMPI
00001490: PUSH1 0x00
00001492: DUP1
00001493: REVERT
00001494: JUMPDEST
00001495: PUSH2 0x14f0
00001498: PUSH1 0x02
0000149a: PUSH1 0x00
0000149c: DUP9
0000149d: DUP2
0000149e: JUMPDEST
0000149f: PUSH1 0x20
000014a1: MUL
000014a2: ADD
000014a3: MLOAD
000014a4: PUSH1 0x01
000014a6: PUSH1 0xa0
000014a8: PUSH1 0x02
000014aa: EXP
000014ab: SUB
000014ac: AND
000014ad: DUP2
000014ae: MSTORE
000014af: PUSH1 0x20
000014b1: DUP2
000014b2: ADD
000014b3: SWAP2
000014b4: SWAP1
000014b5: SWAP2
000014b6: MSTORE
000014b7: PUSH1 0x40
000014b9: ADD
000014ba: PUSH1 0x00
000014bc: SWAP1
000014bd: DUP2
000014be: KECCAK256
000014bf: SWAP1
000014c0: DUP9
000014c1: PUSH1 0x03
000014c3: JUMPDEST
000014c4: PUSH1 0x20
000014c6: MUL
000014c7: ADD
000014c8: MLOAD
000014c9: PUSH1 0x01
000014cb: PUSH1 0xa0
000014cd: PUSH1 0x02
000014cf: EXP
000014d0: SUB
000014d1: AND
000014d2: DUP2
000014d3: MSTORE
000014d4: PUSH1 0x20
000014d6: DUP2
000014d7: ADD
000014d8: SWAP2
000014d9: SWAP1
000014da: SWAP2
000014db: MSTORE
000014dc: PUSH1 0x40
000014de: ADD
000014df: PUSH1 0x00
000014e1: KECCAK256
000014e2: SLOAD
000014e3: DUP9
000014e4: PUSH1 0x04
000014e6: JUMPDEST
000014e7: PUSH1 0x20
000014e9: MUL
000014ea: ADD
000014eb: MLOAD
000014ec: PUSH2 0x0d2e
000014ef: JUMP
000014f0: JUMPDEST
000014f1: PUSH1 0x02
000014f3: PUSH1 0x00
000014f5: DUP9
000014f6: DUP2
000014f7: JUMPDEST
000014f8: PUSH1 0x20
000014fa: MUL
000014fb: ADD
000014fc: MLOAD
000014fd: PUSH1 0x01
000014ff: PUSH1 0xa0
00001501: PUSH1 0x02
00001503: EXP
00001504: SUB
00001505: AND
00001506: DUP2
00001507: MSTORE
00001508: PUSH1 0x20
0000150a: DUP2
0000150b: ADD
0000150c: SWAP2
0000150d: SWAP1
0000150e: SWAP2
0000150f: MSTORE
00001510: PUSH1 0x40
00001512: ADD
00001513: PUSH1 0x00
00001515: SWAP1
00001516: DUP2
00001517: KECCAK256
00001518: SWAP1
00001519: DUP9
0000151a: PUSH1 0x03
0000151c: JUMPDEST
0000151d: PUSH1 0x20
0000151f: MUL
00001520: ADD
00001521: MLOAD
00001522: PUSH1 0x01
00001524: PUSH1 0xa0
00001526: PUSH1 0x02
00001528: EXP
00001529: SUB
0000152a: AND
0000152b: DUP2
0000152c: MSTORE
0000152d: PUSH1 0x20
0000152f: DUP2
00001530: ADD
00001531: SWAP2
00001532: SWAP1
00001533: SWAP2
00001534: MSTORE
00001535: PUSH1 0x40
00001537: ADD
00001538: PUSH1 0x00
0000153a: SWAP1
0000153b: DUP2
0000153c: KECCAK256
0000153d: SWAP2
0000153e: SWAP1
0000153f: SWAP2
00001540: SSTORE
00001541: PUSH2 0x15ca
00001544: SWAP1
00001545: PUSH1 0x02
00001547: SWAP1
00001548: DUP9
00001549: DUP2
0000154a: JUMPDEST
0000154b: PUSH1 0x20
0000154d: MUL
0000154e: ADD
0000154f: MLOAD
00001550: PUSH1 0x01
00001552: PUSH1 0xa0
00001554: PUSH1 0x02
00001556: EXP
00001557: SUB
00001558: AND
00001559: DUP2
0000155a: MSTORE
0000155b: PUSH1 0x20
0000155d: DUP2
0000155e: ADD
0000155f: SWAP2
00001560: SWAP1
00001561: SWAP2
00001562: MSTORE
00001563: PUSH1 0x40
00001565: ADD
00001566: PUSH1 0x00
00001568: SWAP1
00001569: DUP2
0000156a: KECCAK256
0000156b: SWAP1
0000156c: DUP9
0000156d: PUSH1 0x02
0000156f: JUMPDEST
00001570: PUSH1 0x20
00001572: MUL
00001573: ADD
00001574: MLOAD
00001575: PUSH1 0x01
00001577: PUSH1 0xa0
00001579: PUSH1 0x02
0000157b: EXP
0000157c: SUB
0000157d: AND
0000157e: DUP2
0000157f: MSTORE
00001580: PUSH1 0x20
00001582: DUP2
00001583: ADD
00001584: SWAP2
00001585: SWAP1
00001586: SWAP2
00001587: MSTORE
00001588: PUSH1 0x40
0000158a: ADD
0000158b: PUSH1 0x00
0000158d: KECCAK256
0000158e: SLOAD
0000158f: PUSH8 0x0de0b6b3a7640000
00001598: PUSH2 0x0916
0000159b: DUP11
0000159c: PUSH1 0x04
0000159e: JUMPDEST
0000159f: PUSH1 0x20
000015a1: MUL
000015a2: ADD
000015a3: MLOAD
000015a4: DUP12
000015a5: PUSH1 0x06
000015a7: JUMPDEST
000015a8: PUSH1 0x20
000015aa: MUL
000015ab: ADD
000015ac: MLOAD
000015ad: PUSH8 0x0de0b6b3a7640000
000015b6: SUB
000015b7: PUSH2 0x0dcf
000015ba: JUMP
000015bb: JUMPDEST
000015bc: DUP2
000015bd: ISZERO
000015be: ISZERO
000015bf: PUSH2 0x091f
000015c2: JUMPI
000015c3: INVALID
000015c4: JUMPDEST
000015c5: DIV
000015c6: PUSH2 0x0f61
000015c9: JUMP
000015ca: JUMPDEST
000015cb: PUSH1 0x02
000015cd: PUSH1 0x00
000015cf: DUP9
000015d0: DUP2
000015d1: JUMPDEST
000015d2: PUSH1 0x20
000015d4: MUL
000015d5: ADD
000015d6: MLOAD
000015d7: PUSH1 0x01
000015d9: PUSH1 0xa0
000015db: PUSH1 0x02
000015dd: EXP
000015de: SUB
000015df: AND
000015e0: DUP2
000015e1: MSTORE
000015e2: PUSH1 0x20
000015e4: DUP2
000015e5: ADD
000015e6: SWAP2
000015e7: SWAP1
000015e8: SWAP2
000015e9: MSTORE
000015ea: PUSH1 0x40
000015ec: ADD
000015ed: PUSH1 0x00
000015ef: SWAP1
000015f0: DUP2
000015f1: KECCAK256
000015f2: SWAP1
000015f3: DUP9
000015f4: PUSH1 0x02
000015f6: JUMPDEST
000015f7: PUSH1 0x20
000015f9: MUL
000015fa: ADD
000015fb: MLOAD
000015fc: PUSH1 0x01
000015fe: PUSH1 0xa0
00001600: PUSH1 0x02
00001602: EXP
00001603: SUB
00001604: AND
00001605: DUP2
00001606: MSTORE
00001607: PUSH1 0x20
00001609: DUP2
0000160a: ADD
0000160b: SWAP2
0000160c: SWAP1
0000160d: SWAP2
0000160e: MSTORE
0000160f: PUSH1 0x40
00001611: ADD
00001612: PUSH1 0x00
00001614: SWAP1
00001615: DUP2
00001616: KECCAK256
00001617: SWAP2
00001618: SWAP1
00001619: SWAP2
0000161a: SSTORE
0000161b: PUSH2 0x168c
0000161e: SWAP1
0000161f: PUSH1 0x02
00001621: SWAP1
00001622: DUP9
00001623: DUP2
00001624: JUMPDEST
00001625: PUSH1 0x20
00001627: MUL
00001628: ADD
00001629: MLOAD
0000162a: PUSH1 0x01
0000162c: PUSH1 0xa0
0000162e: PUSH1 0x02
00001630: EXP
00001631: SUB
00001632: SWAP1
00001633: DUP2
00001634: AND
00001635: DUP3
00001636: MSTORE
00001637: PUSH1 0x20
00001639: DUP1
0000163a: DUP4
0000163b: ADD
0000163c: SWAP4
0000163d: SWAP1
0000163e: SWAP4
0000163f: MSTORE
00001640: PUSH1 0x40
00001642: SWAP2
00001643: DUP3
00001644: ADD
00001645: PUSH1 0x00
00001647: SWAP1
00001648: DUP2
00001649: KECCAK256
0000164a: PUSH1 0x06
0000164c: SLOAD
0000164d: SWAP1
0000164e: SWAP3
0000164f: AND
00001650: DUP2
00001651: MSTORE
00001652: SWAP3
00001653: MSTORE
00001654: SWAP1
00001655: KECCAK256
00001656: SLOAD
00001657: PUSH8 0x0de0b6b3a7640000
00001660: PUSH2 0x0916
00001663: DUP11
00001664: PUSH1 0x04
00001666: JUMPDEST
00001667: PUSH1 0x20
00001669: MUL
0000166a: ADD
0000166b: MLOAD
0000166c: DUP12
0000166d: PUSH1 0x06
0000166f: PUSH2 0x1422
00001672: JUMP
00001673: JUMPDEST
00001674: PUSH1 0x20
00001676: MUL
00001677: ADD
00001678: MLOAD
00001679: PUSH2 0x0dcf
0000167c: JUMP
0000167d: JUMPDEST
0000167e: DUP2
0000167f: ISZERO
00001680: ISZERO
00001681: PUSH2 0x091f
00001684: JUMPI
00001685: INVALID
00001686: JUMPDEST
00001687: DIV
00001688: PUSH2 0x0f61
0000168b: JUMP
0000168c: JUMPDEST
0000168d: PUSH1 0x02
0000168f: PUSH1 0x00
00001691: DUP9
00001692: DUP2
00001693: JUMPDEST
00001694: PUSH1 0x20
00001696: MUL
00001697: ADD
00001698: MLOAD
00001699: PUSH1 0x01
0000169b: PUSH1 0xa0
0000169d: PUSH1 0x02
0000169f: EXP
000016a0: SUB
000016a1: SWAP1
000016a2: DUP2
000016a3: AND
000016a4: DUP3
000016a5: MSTORE
000016a6: PUSH1 0x20
000016a8: DUP1
000016a9: DUP4
000016aa: ADD
000016ab: SWAP4
000016ac: SWAP1
000016ad: SWAP4
000016ae: MSTORE
000016af: PUSH1 0x40
000016b1: SWAP2
000016b2: DUP3
000016b3: ADD
000016b4: PUSH1 0x00
000016b6: SWAP1
000016b7: DUP2
000016b8: KECCAK256
000016b9: PUSH1 0x06
000016bb: SLOAD
000016bc: SWAP1
000016bd: SWAP3
000016be: AND
000016bf: DUP2
000016c0: MSTORE
000016c1: SWAP3
000016c2: MSTORE
000016c3: DUP2
000016c4: KECCAK256
000016c5: SWAP2
000016c6: SWAP1
000016c7: SWAP2
000016c8: SSTORE
000016c9: PUSH2 0x174f
000016cc: SWAP1
000016cd: PUSH1 0x02
000016cf: SWAP1
000016d0: DUP9
000016d1: PUSH1 0x01
000016d3: JUMPDEST
000016d4: PUSH1 0x20
000016d6: MUL
000016d7: ADD
000016d8: MLOAD
000016d9: PUSH1 0x01
000016db: PUSH1 0xa0
000016dd: PUSH1 0x02
000016df: EXP
000016e0: SUB
000016e1: AND
000016e2: DUP2
000016e3: MSTORE
000016e4: PUSH1 0x20
000016e6: DUP2
000016e7: ADD
000016e8: SWAP2
000016e9: SWAP1
000016ea: SWAP2
000016eb: MSTORE
000016ec: PUSH1 0x40
000016ee: ADD
000016ef: PUSH1 0x00
000016f1: SWAP1
000016f2: DUP2
000016f3: KECCAK256
000016f4: SWAP1
000016f5: DUP9
000016f6: PUSH1 0x02
000016f8: JUMPDEST
000016f9: PUSH1 0x20
000016fb: MUL
000016fc: ADD
000016fd: MLOAD
000016fe: PUSH1 0x01
00001700: PUSH1 0xa0
00001702: PUSH1 0x02
00001704: EXP
00001705: SUB
00001706: AND
00001707: DUP2
00001708: MSTORE
00001709: PUSH1 0x20
0000170b: DUP2
0000170c: ADD
0000170d: SWAP2
0000170e: SWAP1
0000170f: SWAP2
00001710: MSTORE
00001711: PUSH1 0x40
00001713: ADD
00001714: PUSH1 0x00
00001716: SWAP1
00001717: DUP2
00001718: KECCAK256
00001719: SLOAD
0000171a: SWAP1
0000171b: DUP10
0000171c: SWAP1
0000171d: JUMPDEST
0000171e: PUSH1 0x20
00001720: MUL
00001721: ADD
00001722: MLOAD
00001723: PUSH2 0x1740
00001726: DUP11
00001727: PUSH1 0x01
00001729: JUMPDEST
0000172a: PUSH1 0x20
0000172c: MUL
0000172d: ADD
0000172e: MLOAD
0000172f: DUP12
00001730: PUSH1 0x04
00001732: PUSH2 0x1422
00001735: JUMP
00001736: JUMPDEST
00001737: PUSH1 0x20
00001739: MUL
0000173a: ADD
0000173b: MLOAD
0000173c: PUSH2 0x0dcf
0000173f: JUMP
00001740: JUMPDEST
00001741: DUP2
00001742: ISZERO
00001743: ISZERO
00001744: PUSH2 0x1749
00001747: JUMPI
00001748: INVALID
00001749: JUMPDEST
0000174a: DIV
0000174b: PUSH2 0x0d2e
0000174e: JUMP
0000174f: JUMPDEST
00001750: PUSH1 0x02
00001752: PUSH1 0x00
00001754: DUP9
00001755: PUSH1 0x01
00001757: JUMPDEST
00001758: PUSH1 0x20
0000175a: MUL
0000175b: ADD
0000175c: MLOAD
0000175d: PUSH1 0x01
0000175f: PUSH1 0xa0
00001761: PUSH1 0x02
00001763: EXP
00001764: SUB
00001765: AND
00001766: DUP2
00001767: MSTORE
00001768: PUSH1 0x20
0000176a: DUP2
0000176b: ADD
0000176c: SWAP2
0000176d: SWAP1
0000176e: SWAP2
0000176f: MSTORE
00001770: PUSH1 0x40
00001772: ADD
00001773: PUSH1 0x00
00001775: SWAP1
00001776: DUP2
00001777: KECCAK256
00001778: SWAP1
00001779: DUP9
0000177a: PUSH1 0x02
0000177c: JUMPDEST
0000177d: PUSH1 0x20
0000177f: MUL
00001780: ADD
00001781: MLOAD
00001782: PUSH1 0x01
00001784: PUSH1 0xa0
00001786: PUSH1 0x02
00001788: EXP
00001789: SUB
0000178a: AND
0000178b: DUP2
0000178c: MSTORE
0000178d: PUSH1 0x20
0000178f: DUP2
00001790: ADD
00001791: SWAP2
00001792: SWAP1
00001793: SWAP2
00001794: MSTORE
00001795: PUSH1 0x40
00001797: ADD
00001798: PUSH1 0x00
0000179a: SWAP1
0000179b: DUP2
0000179c: KECCAK256
0000179d: SWAP2
0000179e: SWAP1
0000179f: SWAP2
000017a0: SSTORE
000017a1: PUSH2 0x185a
000017a4: SWAP1
000017a5: PUSH1 0x02
000017a7: SWAP1
000017a8: DUP9
000017a9: PUSH1 0x01
000017ab: JUMPDEST
000017ac: PUSH1 0x20
000017ae: MUL
000017af: ADD
000017b0: MLOAD
000017b1: PUSH1 0x01
000017b3: PUSH1 0xa0
000017b5: PUSH1 0x02
000017b7: EXP
000017b8: SUB
000017b9: AND
000017ba: DUP2
000017bb: MSTORE
000017bc: PUSH1 0x20
000017be: DUP2
000017bf: ADD
000017c0: SWAP2
000017c1: SWAP1
000017c2: SWAP2
000017c3: MSTORE
000017c4: PUSH1 0x40
000017c6: ADD
000017c7: PUSH1 0x00
000017c9: SWAP1
000017ca: DUP2
000017cb: KECCAK256
000017cc: SWAP1
000017cd: DUP9
000017ce: PUSH1 0x03
000017d0: JUMPDEST
000017d1: PUSH1 0x20
000017d3: MUL
000017d4: ADD
000017d5: MLOAD
000017d6: PUSH1 0x01
000017d8: PUSH1 0xa0
000017da: PUSH1 0x02
000017dc: EXP
000017dd: SUB
000017de: AND
000017df: DUP2
000017e0: MSTORE
000017e1: PUSH1 0x20
000017e3: DUP2
000017e4: ADD
000017e5: SWAP2
000017e6: SWAP1
000017e7: SWAP2
000017e8: MSTORE
000017e9: PUSH1 0x40
000017eb: ADD
000017ec: PUSH1 0x00
000017ee: SWAP1
000017ef: DUP2
000017f0: KECCAK256
000017f1: SLOAD
000017f2: SWAP1
000017f3: PUSH8 0x0de0b6b3a7640000
000017fc: SWAP1
000017fd: DUP11
000017fe: SWAP1
000017ff: JUMPDEST
00001800: PUSH1 0x20
00001802: MUL
00001803: ADD
00001804: MLOAD
00001805: PUSH2 0x1841
00001808: PUSH2 0x182f
0000180b: DUP13
0000180c: PUSH1 0x07
0000180e: JUMPDEST
0000180f: PUSH1 0x20
00001811: MUL
00001812: ADD
00001813: MLOAD
00001814: PUSH8 0x0de0b6b3a7640000
0000181d: SUB
0000181e: DUP14
0000181f: PUSH1 0x01
00001821: PUSH2 0x1422
00001824: JUMP
00001825: JUMPDEST
00001826: PUSH1 0x20
00001828: MUL
00001829: ADD
0000182a: MLOAD
0000182b: PUSH2 0x0dcf
0000182e: JUMP
0000182f: JUMPDEST
00001830: DUP13
00001831: PUSH1 0x04
00001833: PUSH2 0x1422
00001836: JUMP
00001837: JUMPDEST
00001838: PUSH1 0x20
0000183a: MUL
0000183b: ADD
0000183c: MLOAD
0000183d: PUSH2 0x0dcf
00001840: JUMP
00001841: JUMPDEST
00001842: DUP2
00001843: ISZERO
00001844: ISZERO
00001845: PUSH2 0x184a
00001848: JUMPI
00001849: INVALID
0000184a: JUMPDEST
0000184b: DIV
0000184c: DUP2
0000184d: ISZERO
0000184e: ISZERO
0000184f: PUSH2 0x091f
00001852: JUMPI
00001853: INVALID
00001854: JUMPDEST
00001855: DIV
00001856: PUSH2 0x0f61
00001859: JUMP
0000185a: JUMPDEST
0000185b: PUSH1 0x02
0000185d: PUSH1 0x00
0000185f: DUP9
00001860: PUSH1 0x01
00001862: JUMPDEST
00001863: PUSH1 0x20
00001865: MUL
00001866: ADD
00001867: MLOAD
00001868: PUSH1 0x01
0000186a: PUSH1 0xa0
0000186c: PUSH1 0x02
0000186e: EXP
0000186f: SUB
00001870: AND
00001871: DUP2
00001872: MSTORE
00001873: PUSH1 0x20
00001875: DUP2
00001876: ADD
00001877: SWAP2
00001878: SWAP1
00001879: SWAP2
0000187a: MSTORE
0000187b: PUSH1 0x40
0000187d: ADD
0000187e: PUSH1 0x00
00001880: SWAP1
00001881: DUP2
00001882: KECCAK256
00001883: SWAP1
00001884: DUP9
00001885: PUSH1 0x03
00001887: JUMPDEST
00001888: PUSH1 0x20
0000188a: MUL
0000188b: ADD
0000188c: MLOAD
0000188d: PUSH1 0x01
0000188f: PUSH1 0xa0
00001891: PUSH1 0x02
00001893: EXP
00001894: SUB
00001895: AND
00001896: DUP2
00001897: MSTORE
00001898: PUSH1 0x20
0000189a: DUP2
0000189b: ADD
0000189c: SWAP2
0000189d: SWAP1
0000189e: SWAP2
0000189f: MSTORE
000018a0: PUSH1 0x40
000018a2: ADD
000018a3: PUSH1 0x00
000018a5: SWAP1
000018a6: DUP2
000018a7: KECCAK256
000018a8: SWAP2
000018a9: SWAP1
000018aa: SWAP2
000018ab: SSTORE
000018ac: PUSH2 0x1947
000018af: SWAP1
000018b0: PUSH1 0x02
000018b2: SWAP1
000018b3: DUP9
000018b4: PUSH1 0x01
000018b6: JUMPDEST
000018b7: PUSH1 0x20
000018b9: MUL
000018ba: ADD
000018bb: MLOAD
000018bc: PUSH1 0x01
000018be: PUSH1 0xa0
000018c0: PUSH1 0x02
000018c2: EXP
000018c3: SUB
000018c4: SWAP1
000018c5: DUP2
000018c6: AND
000018c7: DUP3
000018c8: MSTORE
000018c9: PUSH1 0x20
000018cb: DUP1
000018cc: DUP4
000018cd: ADD
000018ce: SWAP4
000018cf: SWAP1
000018d0: SWAP4
000018d1: MSTORE
000018d2: PUSH1 0x40
000018d4: SWAP2
000018d5: DUP3
000018d6: ADD
000018d7: PUSH1 0x00
000018d9: SWAP1
000018da: DUP2
000018db: KECCAK256
000018dc: PUSH1 0x06
000018de: SLOAD
000018df: SWAP1
000018e0: SWAP3
000018e1: AND
000018e2: DUP2
000018e3: MSTORE
000018e4: SWAP3
000018e5: MSTORE
000018e6: DUP2
000018e7: KECCAK256
000018e8: SLOAD
000018e9: SWAP1
000018ea: PUSH8 0x0de0b6b3a7640000
000018f3: SWAP1
000018f4: DUP11
000018f5: SWAP1
000018f6: JUMPDEST
000018f7: PUSH1 0x20
000018f9: MUL
000018fa: ADD
000018fb: MLOAD
000018fc: PUSH2 0x1841
000018ff: PUSH2 0x182f
00001902: DUP13
00001903: PUSH1 0x07
00001905: JUMPDEST
00001906: PUSH1 0x20
00001908: MUL
00001909: ADD
0000190a: MLOAD
0000190b: DUP14
0000190c: PUSH1 0x01
0000190e: PUSH2 0x1422
00001911: JUMP
00001912: JUMPDEST
00001913: PUSH1 0x20
00001915: MUL
00001916: ADD
00001917: MLOAD
00001918: PUSH2 0x0dcf
0000191b: JUMP
0000191c: JUMPDEST
0000191d: DUP13
0000191e: PUSH1 0x04
00001920: PUSH2 0x1422
00001923: JUMP
00001924: JUMPDEST
00001925: PUSH1 0x20
00001927: MUL
00001928: ADD
00001929: MLOAD
0000192a: PUSH2 0x0dcf
0000192d: JUMP
0000192e: JUMPDEST
0000192f: DUP2
00001930: ISZERO
00001931: ISZERO
00001932: PUSH2 0x184a
00001935: JUMPI
00001936: INVALID
00001937: JUMPDEST
00001938: DIV
00001939: DUP2
0000193a: ISZERO
0000193b: ISZERO
0000193c: PUSH2 0x091f
0000193f: JUMPI
00001940: INVALID
00001941: JUMPDEST
00001942: DIV
00001943: PUSH2 0x0f61
00001946: JUMP
00001947: JUMPDEST
00001948: PUSH1 0x02
0000194a: PUSH1 0x00
0000194c: DUP9
0000194d: PUSH1 0x01
0000194f: JUMPDEST
00001950: PUSH1 0x20
00001952: MUL
00001953: ADD
00001954: MLOAD
00001955: PUSH1 0x01
00001957: PUSH1 0xa0
00001959: PUSH1 0x02
0000195b: EXP
0000195c: SUB
0000195d: SWAP1
0000195e: DUP2
0000195f: AND
00001960: DUP3
00001961: MSTORE
00001962: PUSH1 0x20
00001964: DUP1
00001965: DUP4
00001966: ADD
00001967: SWAP4
00001968: SWAP1
00001969: SWAP4
0000196a: MSTORE
0000196b: PUSH1 0x40
0000196d: SWAP2
0000196e: DUP3
0000196f: ADD
00001970: PUSH1 0x00
00001972: SWAP1
00001973: DUP2
00001974: KECCAK256
00001975: PUSH1 0x06
00001977: SLOAD
00001978: SWAP1
00001979: SWAP3
0000197a: AND
0000197b: DUP2
0000197c: MSTORE
0000197d: SWAP1
0000197e: DUP4
0000197f: MSTORE
00001980: DUP2
00001981: DUP2
00001982: KECCAK256
00001983: SWAP4
00001984: SWAP1
00001985: SWAP4
00001986: SSTORE
00001987: DUP5
00001988: DUP4
00001989: MSTORE
0000198a: PUSH1 0x05
0000198c: SWAP1
0000198d: SWAP2
0000198e: MSTORE
0000198f: SWAP1
00001990: KECCAK256
00001991: SLOAD
00001992: PUSH2 0x19a7
00001995: SWAP1
00001996: DUP9
00001997: PUSH1 0x04
00001999: PUSH2 0x138e
0000199c: JUMP
0000199d: JUMPDEST
0000199e: PUSH1 0x20
000019a0: MUL
000019a1: ADD
000019a2: MLOAD
000019a3: PUSH2 0x0f61
000019a6: JUMP
000019a7: JUMPDEST
000019a8: PUSH1 0x00
000019aa: DUP4
000019ab: DUP2
000019ac: MSTORE
000019ad: PUSH1 0x05
000019af: PUSH1 0x20
000019b1: MSTORE
000019b2: PUSH1 0x40
000019b4: DUP2
000019b5: KECCAK256
000019b6: SWAP2
000019b7: SWAP1
000019b8: SWAP2
000019b9: SSTORE
000019ba: NUMBER
000019bb: SWAP1
000019bc: PUSH1 0x04
000019be: SWAP1
000019bf: DUP9
000019c0: PUSH1 0x02
000019c2: JUMPDEST
000019c3: PUSH1 0x20
000019c5: MUL
000019c6: ADD
000019c7: MLOAD
000019c8: PUSH1 0x01
000019ca: PUSH1 0xa0
000019cc: PUSH1 0x02
000019ce: EXP
000019cf: SUB
000019d0: AND
000019d1: DUP2
000019d2: MSTORE
000019d3: PUSH1 0x20
000019d5: DUP2
000019d6: ADD
000019d7: SWAP2
000019d8: SWAP1
000019d9: SWAP2
000019da: MSTORE
000019db: PUSH1 0x40
000019dd: ADD
000019de: PUSH1 0x00
000019e0: SWAP1
000019e1: DUP2
000019e2: KECCAK256
000019e3: SWAP2
000019e4: SWAP1
000019e5: SWAP2
000019e6: SSTORE
000019e7: NUMBER
000019e8: SWAP1
000019e9: PUSH1 0x04
000019eb: SWAP1
000019ec: DUP9
000019ed: PUSH1 0x03
000019ef: JUMPDEST
000019f0: PUSH1 0x20
000019f2: MUL
000019f3: ADD
000019f4: MLOAD
000019f5: PUSH1 0x01
000019f7: PUSH1 0xa0
000019f9: PUSH1 0x02
000019fb: EXP
000019fc: SUB
000019fd: AND
000019fe: DUP2
000019ff: MSTORE
00001a00: PUSH1 0x20
00001a02: DUP2
00001a03: ADD
00001a04: SWAP2
00001a05: SWAP1
00001a06: SWAP2
00001a07: MSTORE
00001a08: PUSH1 0x40
00001a0a: ADD
00001a0b: PUSH1 0x00
00001a0d: KECCAK256
00001a0e: SSTORE
00001a0f: JUMPDEST
00001a10: JUMPDEST
00001a11: POP
00001a12: POP
00001a13: SWAP5
00001a14: SWAP4
00001a15: POP
00001a16: POP
00001a17: POP
00001a18: POP
00001a19: JUMP
00001a1a: JUMPDEST
00001a1b: PUSH1 0x07
00001a1d: SLOAD
00001a1e: DUP2
00001a1f: JUMP
00001a20: JUMPDEST
00001a21: PUSH1 0x07
00001a23: SLOAD
00001a24: PUSH1 0x01
00001a26: PUSH1 0xa0
00001a28: PUSH1 0x02
00001a2a: EXP
00001a2b: SUB
00001a2c: CALLER
00001a2d: AND
00001a2e: PUSH1 0x00
00001a30: SWAP1
00001a31: DUP2
00001a32: MSTORE
00001a33: PUSH1 0x04
00001a35: PUSH1 0x20
00001a37: MSTORE
00001a38: PUSH1 0x40
00001a3a: DUP2
00001a3b: KECCAK256
00001a3c: SLOAD
00001a3d: SWAP1
00001a3e: SWAP2
00001a3f: SWAP1
00001a40: PUSH2 0x1a4a
00001a43: SWAP1
00001a44: NUMBER
00001a45: SWAP1
00001a46: PUSH2 0x0d2e
00001a49: JUMP
00001a4a: JUMPDEST
00001a4b: LT
00001a4c: ISZERO
00001a4d: PUSH2 0x1a55
00001a50: JUMPI
00001a51: PUSH1 0x00
00001a53: DUP1
00001a54: REVERT
00001a55: JUMPDEST
00001a56: PUSH1 0x01
00001a58: PUSH1 0xa0
00001a5a: PUSH1 0x02
00001a5c: EXP
00001a5d: SUB
00001a5e: DUP1
00001a5f: DUP5
00001a60: AND
00001a61: PUSH1 0x00
00001a63: SWAP1
00001a64: DUP2
00001a65: MSTORE
00001a66: PUSH1 0x02
00001a68: PUSH1 0x20
00001a6a: SWAP1
00001a6b: DUP2
00001a6c: MSTORE
00001a6d: PUSH1 0x40
00001a6f: DUP1
00001a70: DUP4
00001a71: KECCAK256
00001a72: CALLER
00001a73: SWAP1
00001a74: SWAP5
00001a75: AND
00001a76: DUP4
00001a77: MSTORE
00001a78: SWAP3
00001a79: SWAP1
00001a7a: MSTORE
00001a7b: KECCAK256
00001a7c: SLOAD
00001a7d: DUP3
00001a7e: SWAP1
00001a7f: LT
00001a80: ISZERO
00001a81: PUSH2 0x1a89
00001a84: JUMPI
00001a85: PUSH1 0x00
00001a87: DUP1
00001a88: REVERT
00001a89: JUMPDEST
00001a8a: PUSH1 0x01
00001a8c: PUSH1 0xa0
00001a8e: PUSH1 0x02
00001a90: EXP
00001a91: SUB
00001a92: DUP1
00001a93: DUP5
00001a94: AND
00001a95: PUSH1 0x00
00001a97: SWAP1
00001a98: DUP2
00001a99: MSTORE
00001a9a: PUSH1 0x02
00001a9c: PUSH1 0x20
00001a9e: SWAP1
00001a9f: DUP2
00001aa0: MSTORE
00001aa1: PUSH1 0x40
00001aa3: DUP1
00001aa4: DUP4
00001aa5: KECCAK256
00001aa6: CALLER
00001aa7: SWAP1
00001aa8: SWAP5
00001aa9: AND
00001aaa: DUP4
00001aab: MSTORE
00001aac: SWAP3
00001aad: SWAP1
00001aae: MSTORE
00001aaf: KECCAK256
00001ab0: SLOAD
00001ab1: PUSH2 0x1aba
00001ab4: SWAP1
00001ab5: DUP4
00001ab6: PUSH2 0x0d2e
00001ab9: JUMP
00001aba: JUMPDEST
00001abb: PUSH1 0x01
00001abd: PUSH1 0xa0
00001abf: PUSH1 0x02
00001ac1: EXP
00001ac2: SUB
00001ac3: DUP1
00001ac4: DUP6
00001ac5: AND
00001ac6: PUSH1 0x00
00001ac8: DUP2
00001ac9: DUP2
00001aca: MSTORE
00001acb: PUSH1 0x02
00001acd: PUSH1 0x20
00001acf: SWAP1
00001ad0: DUP2
00001ad1: MSTORE
00001ad2: PUSH1 0x40
00001ad4: DUP1
00001ad5: DUP4
00001ad6: KECCAK256
00001ad7: CALLER
00001ad8: SWAP1
00001ad9: SWAP6
00001ada: AND
00001adb: DUP4
00001adc: MSTORE
00001add: SWAP4
00001ade: SWAP1
00001adf: MSTORE
00001ae0: SWAP2
00001ae1: SWAP1
00001ae2: SWAP2
00001ae3: KECCAK256
00001ae4: SWAP2
00001ae5: SWAP1
00001ae6: SWAP2
00001ae7: SSTORE
00001ae8: ISZERO
00001ae9: ISZERO
00001aea: PUSH2 0x1b23
00001aed: JUMPI
00001aee: PUSH1 0x01
00001af0: PUSH1 0xa0
00001af2: PUSH1 0x02
00001af4: EXP
00001af5: SUB
00001af6: CALLER
00001af7: AND
00001af8: DUP3
00001af9: ISZERO
00001afa: PUSH2 0x08fc
00001afd: MUL
00001afe: DUP4
00001aff: PUSH1 0x40
00001b01: MLOAD
00001b02: PUSH1 0x00
00001b04: PUSH1 0x40
00001b06: MLOAD
00001b07: DUP1
00001b08: DUP4
00001b09: SUB
00001b0a: DUP2
00001b0b: DUP6
00001b0c: DUP9
00001b0d: DUP9
00001b0e: CALL
00001b0f: SWAP4
00001b10: POP
00001b11: POP
00001b12: POP
00001b13: POP
00001b14: ISZERO
00001b15: ISZERO
00001b16: PUSH2 0x1b1e
00001b19: JUMPI
00001b1a: PUSH1 0x00
00001b1c: DUP1
00001b1d: REVERT
00001b1e: JUMPDEST
00001b1f: PUSH2 0x1ba6
00001b22: JUMP
00001b23: JUMPDEST
00001b24: DUP3
00001b25: PUSH1 0x01
00001b27: PUSH1 0xa0
00001b29: PUSH1 0x02
00001b2b: EXP
00001b2c: SUB
00001b2d: AND
00001b2e: PUSH4 0xa9059cbb
00001b33: CALLER
00001b34: DUP5
00001b35: PUSH1 0x00
00001b37: PUSH1 0x40
00001b39: MLOAD
00001b3a: PUSH1 0x20
00001b3c: ADD
00001b3d: MSTORE
00001b3e: PUSH1 0x40
00001b40: MLOAD
00001b41: PUSH1 0xe0
00001b43: PUSH1 0x02
00001b45: EXP
00001b46: PUSH4 0xffffffff
00001b4b: DUP6
00001b4c: AND
00001b4d: MUL
00001b4e: DUP2
00001b4f: MSTORE
00001b50: PUSH1 0x01
00001b52: PUSH1 0xa0
00001b54: PUSH1 0x02
00001b56: EXP
00001b57: SUB
00001b58: SWAP1
00001b59: SWAP3
00001b5a: AND
00001b5b: PUSH1 0x04
00001b5d: DUP4
00001b5e: ADD
00001b5f: MSTORE
00001b60: PUSH1 0x24
00001b62: DUP3
00001b63: ADD
00001b64: MSTORE
00001b65: PUSH1 0x44
00001b67: ADD
00001b68: PUSH1 0x20
00001b6a: PUSH1 0x40
00001b6c: MLOAD
00001b6d: DUP1
00001b6e: DUP4
00001b6f: SUB
00001b70: DUP2
00001b71: PUSH1 0x00
00001b73: DUP8
00001b74: DUP1
00001b75: EXTCODESIZE
00001b76: ISZERO
00001b77: ISZERO
00001b78: PUSH2 0x1b80
00001b7b: JUMPI
00001b7c: PUSH1 0x00
00001b7e: DUP1
00001b7f: REVERT
00001b80: JUMPDEST
00001b81: PUSH2 0x02c6
00001b84: GAS
00001b85: SUB
00001b86: CALL
00001b87: ISZERO
00001b88: ISZERO
00001b89: PUSH2 0x1b91
00001b8c: JUMPI
00001b8d: PUSH1 0x00
00001b8f: DUP1
00001b90: REVERT
00001b91: JUMPDEST
00001b92: POP
00001b93: POP
00001b94: POP
00001b95: PUSH1 0x40
00001b97: MLOAD
00001b98: DUP1
00001b99: MLOAD
00001b9a: SWAP1
00001b9b: POP
00001b9c: ISZERO
00001b9d: ISZERO
00001b9e: PUSH2 0x1ba6
00001ba1: JUMPI
00001ba2: PUSH1 0x00
00001ba4: DUP1
00001ba5: REVERT
00001ba6: JUMPDEST
00001ba7: JUMPDEST
00001ba8: PUSH1 0x01
00001baa: PUSH1 0xa0
00001bac: PUSH1 0x02
00001bae: EXP
00001baf: SUB
00001bb0: DUP1
00001bb1: DUP5
00001bb2: AND
00001bb3: PUSH1 0x00
00001bb5: SWAP1
00001bb6: DUP2
00001bb7: MSTORE
00001bb8: PUSH1 0x02
00001bba: PUSH1 0x20
00001bbc: SWAP1
00001bbd: DUP2
00001bbe: MSTORE
00001bbf: PUSH1 0x40
00001bc1: DUP1
00001bc2: DUP4
00001bc3: KECCAK256
00001bc4: CALLER
00001bc5: SWAP5
00001bc6: DUP6
00001bc7: AND
00001bc8: DUP5
00001bc9: MSTORE
00001bca: SWAP1
00001bcb: SWAP2
00001bcc: MSTORE
00001bcd: SWAP1
00001bce: DUP2
00001bcf: SWAP1
00001bd0: KECCAK256
00001bd1: SLOAD
00001bd2: PUSH32 0xf341246adaac6f497bc2a656f546ab9e182111d630394f0c57c710a59a2cb567
00001bf3: SWAP3
00001bf4: DUP7
00001bf5: SWAP3
00001bf6: SWAP1
00001bf7: SWAP2
00001bf8: DUP7
00001bf9: SWAP2
00001bfa: MLOAD
00001bfb: PUSH1 0x01
00001bfd: PUSH1 0xa0
00001bff: PUSH1 0x02
00001c01: EXP
00001c02: SUB
00001c03: SWAP5
00001c04: DUP6
00001c05: AND
00001c06: DUP2
00001c07: MSTORE
00001c08: SWAP3
00001c09: SWAP1
00001c0a: SWAP4
00001c0b: AND
00001c0c: PUSH1 0x20
00001c0e: DUP4
00001c0f: ADD
00001c10: MSTORE
00001c11: PUSH1 0x40
00001c13: DUP1
00001c14: DUP4
00001c15: ADD
00001c16: SWAP2
00001c17: SWAP1
00001c18: SWAP2
00001c19: MSTORE
00001c1a: PUSH1 0x60
00001c1c: DUP3
00001c1d: ADD
00001c1e: SWAP3
00001c1f: SWAP1
00001c20: SWAP3
00001c21: MSTORE
00001c22: PUSH1 0x80
00001c24: ADD
00001c25: SWAP1
00001c26: MLOAD
00001c27: DUP1
00001c28: SWAP2
00001c29: SUB
00001c2a: SWAP1
00001c2b: LOG1
00001c2c: JUMPDEST
00001c2d: SWAP3
00001c2e: SWAP2
00001c2f: POP
00001c30: POP
00001c31: JUMP
00001c32: JUMPDEST
00001c33: PUSH1 0x05
00001c35: PUSH1 0x20
00001c37: MSTORE
00001c38: PUSH1 0x00
00001c3a: SWAP1
00001c3b: DUP2
00001c3c: MSTORE
00001c3d: PUSH1 0x40
00001c3f: SWAP1
00001c40: KECCAK256
00001c41: SLOAD
00001c42: DUP2
00001c43: JUMP
00001c44: JUMPDEST
00001c45: PUSH1 0x01
00001c47: PUSH1 0xa0
00001c49: PUSH1 0x02
00001c4b: EXP
00001c4c: SUB
00001c4d: DUP1
00001c4e: DUP4
00001c4f: AND
00001c50: PUSH1 0x00
00001c52: SWAP1
00001c53: DUP2
00001c54: MSTORE
00001c55: PUSH1 0x02
00001c57: PUSH1 0x20
00001c59: SWAP1
00001c5a: DUP2
00001c5b: MSTORE
00001c5c: PUSH1 0x40
00001c5e: DUP1
00001c5f: DUP4
00001c60: KECCAK256
00001c61: SWAP4
00001c62: DUP6
00001c63: AND
00001c64: DUP4
00001c65: MSTORE
00001c66: SWAP3
00001c67: SWAP1
00001c68: MSTORE
00001c69: KECCAK256
00001c6a: SLOAD
00001c6b: JUMPDEST
00001c6c: SWAP3
00001c6d: SWAP2
00001c6e: POP
00001c6f: POP
00001c70: JUMP
00001c71: STOP
00001c72: LOG1
00001c73: PUSH6 0x627a7a723058
00001c7a: KECCAK256
00001c7b: GT
00001c7c: UNKNOWN(0xE4)
00001c7d: COINBASE
00001c7e: UNKNOWN(0xEE)
00001c7f: CODESIZE
00001c80: SWAP14
00001c81: UNKNOWN(0xAD)
00001c82: KECCAK256
00001c83: ORIGIN
00001c84: CLZ
00001c85: SDIV
00001c86: PUSH0
00001c87: EXTCODECOPY
00001c88: MSIZE
00001c89: PUSH27

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high auth detector Authorization based on tx.origin 70 no
view
validation_json
{
    "reason": "missing sink mapping",
    "status": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x0674763c",
            "selector": "0x0674763c",
            "calldata_variants": [
                "0x0674763c",
                "0x0674763c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x13af4035",
            "selector": "0x13af4035",
            "calldata_variants": [
                "0x13af4035",
                "0x13af40350000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2295115b",
            "selector": "0x2295115b",
            "calldata_variants": [
                "0x2295115b",
                "0x2295115b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x254dcfe2",
            "selector": "0x254dcfe2",
            "calldata_variants": [
                "0x254dcfe2",
                "0x254dcfe20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x338b5dea",
            "selector": "0x338b5dea",
            "calldata_variants": [
                "0x338b5dea",
                "0x338b5dea0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3823d66c",
            "selector": "0x3823d66c",
            "calldata_variants": [
                "0x3823d66c",
                "0x3823d66c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x429b62e5",
            "selector": "0x429b62e5",
            "calldata_variants": [
                "0x429b62e5",
                "0x429b62e50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4b0bddd2",
            "selector": "0x4b0bddd2",
            "calldata_variants": [
                "0x4b0bddd2",
                "0x4b0bddd20000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 7299,
            "type": "tx_origin_used"
        }
    ]
}
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0x9428c1663bb3fdb625499739071e64e93f1c07c921d7d7eb3150ef2b1f7af529
call_targets: 0x2a0c0dbecc7e4d658f48e01e3fa353f44050c208
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x9428c1663bb3fdb625499739071e64e93f1c07c921d7d7eb3150ef2b1f7af529",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x2a0c0dbecc7e4d658f48e01e3fa353f44050c208"
    ],
    "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": "0x0674763c",
            "selector": "0x0674763c",
            "calldata_variants": [
                "0x0674763c",
                "0x0674763c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x13af4035",
            "selector": "0x13af4035",
            "calldata_variants": [
                "0x13af4035",
                "0x13af40350000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2295115b",
            "selector": "0x2295115b",
            "calldata_variants": [
                "0x2295115b",
                "0x2295115b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x254dcfe2",
            "selector": "0x254dcfe2",
            "calldata_variants": [
                "0x254dcfe2",
                "0x254dcfe20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x338b5dea",
            "selector": "0x338b5dea",
            "calldata_variants": [
                "0x338b5dea",
                "0x338b5dea0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3823d66c",
            "selector": "0x3823d66c",
            "calldata_variants": [
                "0x3823d66c",
                "0x3823d66c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x429b62e5",
            "selector": "0x429b62e5",
            "calldata_variants": [
                "0x429b62e5",
                "0x429b62e50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4b0bddd2",
            "selector": "0x4b0bddd2",
            "calldata_variants": [
                "0x4b0bddd2",
                "0x4b0bddd20000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 2086,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2464,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2584,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 8,
    "guards_detected": [
        {
            "pc": 7299,
            "type": "tx_origin_used"
        }
    ],
    "untrusted_call_count": 8
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0x9428c1663bb3fdb625499739071e64e93f1c07c921d7d7eb3150ef2b1f7af529
call_targets: 0x2a0c0dbecc7e4d658f48e01e3fa353f44050c208
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x9428c1663bb3fdb625499739071e64e93f1c07c921d7d7eb3150ef2b1f7af529",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x2a0c0dbecc7e4d658f48e01e3fa353f44050c208"
    ],
    "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": "0x0674763c",
            "selector": "0x0674763c",
            "calldata_variants": [
                "0x0674763c",
                "0x0674763c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x13af4035",
            "selector": "0x13af4035",
            "calldata_variants": [
                "0x13af4035",
                "0x13af40350000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2295115b",
            "selector": "0x2295115b",
            "calldata_variants": [
                "0x2295115b",
                "0x2295115b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x254dcfe2",
            "selector": "0x254dcfe2",
            "calldata_variants": [
                "0x254dcfe2",
                "0x254dcfe20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x338b5dea",
            "selector": "0x338b5dea",
            "calldata_variants": [
                "0x338b5dea",
                "0x338b5dea0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3823d66c",
            "selector": "0x3823d66c",
            "calldata_variants": [
                "0x3823d66c",
                "0x3823d66c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x429b62e5",
            "selector": "0x429b62e5",
            "calldata_variants": [
                "0x429b62e5",
                "0x429b62e50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4b0bddd2",
            "selector": "0x4b0bddd2",
            "calldata_variants": [
                "0x4b0bddd2",
                "0x4b0bddd20000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 2086,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2464,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2584,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 8,
    "guards_detected": [
        {
            "pc": 7299,
            "type": "tx_origin_used"
        }
    ]
}