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

Analysis Run

27ee1ca4-c4f9-43c9-aec1-51bca40c0d0f

failed
Chain ID
1
Address
Block Number
Created
Mon, Jan 5, 2026 9:36 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
Untrusted CALL target/value reachable
crit 0 high 0 direct contract
Review Checklist
1. Read the findings table first. Ignore raw jobs until the result looks real.
2. Confirm attacker control, not just the existence of a sink.
3. Confirm money or privilege impact.
4. Keep it if the behavior is real. Kill it if this is normal proxy, admin, or upgrade plumbing.

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
31780 report.consolidate complete 1 / 1 3 months ago
96103 artifact.fetch failed 1 / 3 1 week ago
96104 tool.cast_disasm complete 1 / 3 1 week ago
96105 analysis.bundle complete 1 / 3 1 week ago
96106 capability.graph complete 1 / 3 1 week ago
96107 detector.run complete 1 / 3 1 week ago
96108 validation.fork complete 1 / 3 1 week ago

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
0
No findings?
yes
Summary
Reviewed contracts/Contract.sol (LaunchSwap and helpers); no concrete exploitable profit paths found under stated constraints.
View stderr
[codex:1070630] OpenAI Codex v0.77.0 (research preview)
[codex:1070630] --------
[codex:1070630] workdir: /tmp/codex-multi-yfgyc5fy
[codex:1070630] model: gpt-5.2-codex
[codex:1070630] provider: openai
[codex:1070630] approval: never
[codex:1070630] sandbox: read-only
[codex:1070630] reasoning effort: xhigh
[codex:1070630] reasoning summaries: auto
[codex:1070630] session id: 019b9013-561d-7ce3-8796-8ff01de56d2f
[codex:1070630] --------
[codex:1070630] user
[codex:1070630] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:1070630] 
[codex:1070630] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:1070630] 
[codex:1070630] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:1070630] - Gas inefficiency, code quality, naming, or best practices
[codex:1070630] - Theoretical vulnerabilities without a clear extraction path
[codex:1070630] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:1070630] - Front-running unless it enables theft beyond MEV
[codex:1070630] - DoS, griefing, or issues that don't result in attacker profit
[codex:1070630] - Missing events, view function issues, or informational findings
[codex:1070630] 
[codex:1070630] HIGH-VALUE PATTERNS TO HUNT:
[codex:1070630] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:1070630] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:1070630] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:1070630] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:1070630] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:1070630] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:1070630] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:1070630] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:1070630] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:1070630] 
[codex:1070630] For each finding, you MUST provide:
[codex:1070630] 1. Exact file and line numbers of vulnerable code
[codex:1070630] 2. Step-by-step exploit transaction sequence
[codex:1070630] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:1070630] 
[codex:1070630] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:1070630] 
[codex:1070630] Output MUST be valid JSON matching the provided schema.
[codex:1070630] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:1070630] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:1070630] mcp startup: no servers
[codex:1070630] 
[codex:1070630] thinking
[codex:1070630] **Preparing to read AUDIT_BUNDLE**
[codex:1070630] exec
[codex:1070630] /bin/bash -lc ls in /tmp/codex-multi-yfgyc5fy succeeded in 5ms:
[codex:1070630] AUDIT_BUNDLE.txt
[codex:1070630] codex-output-schema.json
[codex:1070630] contracts
[codex:1070630] 
[codex:1070630] thinking
[codex:1070630] **Reading AUDIT_BUNDLE.txt**
[codex:1070630] exec
[codex:1070630] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-yfgyc5fy succeeded in 5ms:
[codex:1070630] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:1070630] 
[codex:1070630] ================================================================================
[codex:1070630] FILE: contracts/Contract.sol
[codex:1070630] ================================================================================
[codex:1070630] // SPDX-License-Identifier: MIT
[codex:1070630] 
[codex:1070630] // File @openzeppelin/contracts/utils/introspection/IERC165.sol@v4.8.1
[codex:1070630] 
[codex:1070630] 
[codex:1070630] // OpenZeppelin Contracts v4.4.1 (utils/introspection/IERC165.sol)
[codex:1070630] 
[codex:1070630] pragma solidity ^0.8.0;
[codex:1070630] 
[codex:1070630] /**
[codex:1070630]  * @dev Interface of the ERC165 standard, as defined in the
[codex:1070630]  * https://eips.ethereum.org/EIPS/eip-165[EIP].
[codex:1070630]  *
[codex:1070630]  * Implementers can declare support of contract interfaces, which can then be
[codex:1070630]  * queried by others ({ERC165Checker}).
[codex:1070630] 
[codex:1070630] 
[codex:1070630] 
[codex:1070630] 
[codex:1070630] thinking
[codex:1070630] **Analyzing LaunchSwap for exploits**
[codex:1070630] thinking
[codex:1070630] **Examining token transfer and fee logic**
[codex:1070630] 
[codex:1070630] I’m exploring how the LaunchSwap contract handles token transfers with embedded commands and whether anyone can create pools or manipulate fee logic. I’m also digging into various edge cases with malformed data, rounding in buy/sell calculations, and possible reentrancy via token callbacks—all to see if there’s a way for an attacker to extract ETH or tokens profitably.
[codex:1070630] thinking
[codex:1070630] **Analyzing fee mechanics and price adjustments**
[codex:1070630] 
[codex:1070630] I’m carefully investigating how creator fees and price updates interact, especially examining if price increases funded by fees could enable profitable manipulation or unbacked ETH withdrawals. I’m also verifying reentrancy protections and the trust assumptions around token callbacks to confirm no exploitable paths appear despite complex fee and swap calculations.
[codex:1070630] thinking
[codex:1070630] ```json
[codex:1070630] {
[codex:1070630]   "no_findings": true,
[codex:1070630]   "summary": "Reviewed `contracts/Contract.sol` (LaunchSwap and helpers); no concrete exploitable profit paths found under stated constraints.",
[codex:1070630]   "findings": []
[codex:1070630] }
[codex:1070630] ```
[codex:1070630] codex
[codex:1070630] {"no_findings":true,"summary":"Reviewed contracts/Contract.sol (LaunchSwap and helpers); no concrete exploitable profit paths found under stated constraints.","findings":[]}
[codex:1070630] tokens used
[codex:1070630] 25,976
[codex:1070630] {"no_findings":true,"summary":"Reviewed contracts/Contract.sol (LaunchSwap and helpers); no concrete exploitable profit paths found under stated constraints.","findings":[]}
Metadata
{
    "codex": {
        "ran_at": "2026-01-05T21:36:36.163448+00:00",
        "returncode": 0
    },
    "summary": "Reviewed contracts/Contract.sol (LaunchSwap and helpers); no concrete exploitable profit paths found under stated constraints.",
    "raw_final": {
        "summary": "Reviewed contracts/Contract.sol (LaunchSwap and helpers); no concrete exploitable profit paths found under stated constraints.",
        "findings": [],
        "no_findings": true
    },
    "no_findings": true,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
3
EXT*/BALANCE
1
Total opcodes
3677
Flags
create_opcodes_present
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x00c2
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x85dc1df5
00000019: GT
0000001a: PUSH2 0x007f
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0xb0e21e8a
00000024: GT
00000025: PUSH2 0x0059
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xb0e21e8a
0000002f: EQ
00000030: PUSH2 0x02b5
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xbc197c81
0000003a: EQ
0000003b: PUSH2 0x02e3
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xe74b981b
00000045: EQ
00000046: PUSH2 0x031c
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0xf23a6e61
00000050: EQ
00000051: PUSH2 0x033c
00000054: JUMPI
00000055: PUSH1 0x00
00000057: DUP1
00000058: REVERT
00000059: JUMPDEST
0000005a: DUP1
0000005b: PUSH4 0x85dc1df5
00000060: EQ
00000061: PUSH2 0x01d0
00000064: JUMPI
00000065: DUP1
00000066: PUSH4 0x8795cccb
0000006b: EQ
0000006c: PUSH2 0x01e3
0000006f: JUMPI
00000070: DUP1
00000071: PUSH4 0xaefe78db
00000076: EQ
00000077: PUSH2 0x01f8
0000007a: JUMPI
0000007b: PUSH1 0x00
0000007d: DUP1
0000007e: REVERT
0000007f: JUMPDEST
00000080: DUP1
00000081: PUSH4 0x01ffc9a7
00000086: EQ
00000087: PUSH2 0x00c7
0000008a: JUMPI
0000008b: DUP1
0000008c: PUSH4 0x230ed44a
00000091: EQ
00000092: PUSH2 0x00fc
00000095: JUMPI
00000096: DUP1
00000097: PUSH4 0x28b275a8
0000009c: EQ
0000009d: PUSH2 0x012c
000000a0: JUMPI
000000a1: DUP1
000000a2: PUSH4 0x2db69c55
000000a7: EQ
000000a8: PUSH2 0x0150
000000ab: JUMPI
000000ac: DUP1
000000ad: PUSH4 0x38f5571f
000000b2: EQ
000000b3: PUSH2 0x0172
000000b6: JUMPI
000000b7: DUP1
000000b8: PUSH4 0x467d9b9d
000000bd: EQ
000000be: PUSH2 0x0192
000000c1: JUMPI
000000c2: JUMPDEST
000000c3: PUSH1 0x00
000000c5: DUP1
000000c6: REVERT
000000c7: JUMPDEST
000000c8: CALLVALUE
000000c9: DUP1
000000ca: ISZERO
000000cb: PUSH2 0x00d3
000000ce: JUMPI
000000cf: PUSH1 0x00
000000d1: DUP1
000000d2: REVERT
000000d3: JUMPDEST
000000d4: POP
000000d5: PUSH2 0x00e7
000000d8: PUSH2 0x00e2
000000db: CALLDATASIZE
000000dc: PUSH1 0x04
000000de: PUSH2 0x10d3
000000e1: JUMP
000000e2: JUMPDEST
000000e3: PUSH2 0x035c
000000e6: JUMP
000000e7: JUMPDEST
000000e8: PUSH1 0x40
000000ea: MLOAD
000000eb: SWAP1
000000ec: ISZERO
000000ed: ISZERO
000000ee: DUP2
000000ef: MSTORE
000000f0: PUSH1 0x20
000000f2: ADD
000000f3: JUMPDEST
000000f4: PUSH1 0x40
000000f6: MLOAD
000000f7: DUP1
000000f8: SWAP2
000000f9: SUB
000000fa: SWAP1
000000fb: RETURN
000000fc: JUMPDEST
000000fd: CALLVALUE
000000fe: DUP1
000000ff: ISZERO
00000100: PUSH2 0x0108
00000103: JUMPI
00000104: PUSH1 0x00
00000106: DUP1
00000107: REVERT
00000108: JUMPDEST
00000109: POP
0000010a: PUSH2 0x00e7
0000010d: PUSH2 0x0117
00000110: CALLDATASIZE
00000111: PUSH1 0x04
00000113: PUSH2 0x1104
00000116: JUMP
00000117: JUMPDEST
00000118: PUSH1 0x06
0000011a: PUSH1 0x20
0000011c: MSTORE
0000011d: PUSH1 0x00
0000011f: SWAP1
00000120: DUP2
00000121: MSTORE
00000122: PUSH1 0x40
00000124: SWAP1
00000125: KECCAK256
00000126: SLOAD
00000127: PUSH1 0xff
00000129: AND
0000012a: DUP2
0000012b: JUMP
0000012c: JUMPDEST
0000012d: CALLVALUE
0000012e: DUP1
0000012f: ISZERO
00000130: PUSH2 0x0138
00000133: JUMPI
00000134: PUSH1 0x00
00000136: DUP1
00000137: REVERT
00000138: JUMPDEST
00000139: POP
0000013a: PUSH2 0x0142
0000013d: PUSH1 0x01
0000013f: SLOAD
00000140: DUP2
00000141: JUMP
00000142: JUMPDEST
00000143: PUSH1 0x40
00000145: MLOAD
00000146: SWAP1
00000147: DUP2
00000148: MSTORE
00000149: PUSH1 0x20
0000014b: ADD
0000014c: PUSH2 0x00f3
0000014f: JUMP
00000150: JUMPDEST
00000151: CALLVALUE
00000152: DUP1
00000153: ISZERO
00000154: PUSH2 0x015c
00000157: JUMPI
00000158: PUSH1 0x00
0000015a: DUP1
0000015b: REVERT
0000015c: JUMPDEST
0000015d: POP
0000015e: PUSH2 0x0170
00000161: PUSH2 0x016b
00000164: CALLDATASIZE
00000165: PUSH1 0x04
00000167: PUSH2 0x111d
0000016a: JUMP
0000016b: JUMPDEST
0000016c: PUSH2 0x0393
0000016f: JUMP
00000170: JUMPDEST
00000171: STOP
00000172: JUMPDEST
00000173: CALLVALUE
00000174: DUP1
00000175: ISZERO
00000176: PUSH2 0x017e
00000179: JUMPI
0000017a: PUSH1 0x00
0000017c: DUP1
0000017d: REVERT
0000017e: JUMPDEST
0000017f: POP
00000180: PUSH2 0x0170
00000183: PUSH2 0x018d
00000186: CALLDATASIZE
00000187: PUSH1 0x04
00000189: PUSH2 0x1167
0000018c: JUMP
0000018d: JUMPDEST
0000018e: PUSH2 0x03d9
00000191: JUMP
00000192: JUMPDEST
00000193: CALLVALUE
00000194: DUP1
00000195: ISZERO
00000196: PUSH2 0x019e
00000199: JUMPI
0000019a: PUSH1 0x00
0000019c: DUP1
0000019d: REVERT
0000019e: JUMPDEST
0000019f: POP
000001a0: PUSH1 0x02
000001a2: SLOAD
000001a3: PUSH2 0x01b8
000001a6: SWAP1
000001a7: PUSH3 0x010000
000001ab: SWAP1
000001ac: DIV
000001ad: PUSH1 0x01
000001af: PUSH1 0x01
000001b1: PUSH1 0xa0
000001b3: SHL
000001b4: SUB
000001b5: AND
000001b6: DUP2
000001b7: JUMP
000001b8: JUMPDEST
000001b9: PUSH1 0x40
000001bb: MLOAD
000001bc: PUSH1 0x01
000001be: PUSH1 0x01
000001c0: PUSH1 0xa0
000001c2: SHL
000001c3: SUB
000001c4: SWAP1
000001c5: SWAP2
000001c6: AND
000001c7: DUP2
000001c8: MSTORE
000001c9: PUSH1 0x20
000001cb: ADD
000001cc: PUSH2 0x00f3
000001cf: JUMP
000001d0: JUMPDEST
000001d1: PUSH2 0x0142
000001d4: PUSH2 0x01de
000001d7: CALLDATASIZE
000001d8: PUSH1 0x04
000001da: PUSH2 0x1184
000001dd: JUMP
000001de: JUMPDEST
000001df: PUSH2 0x0424
000001e2: JUMP
000001e3: JUMPDEST
000001e4: CALLVALUE
000001e5: DUP1
000001e6: ISZERO
000001e7: PUSH2 0x01ef
000001ea: JUMPI
000001eb: PUSH1 0x00
000001ed: DUP1
000001ee: REVERT
000001ef: JUMPDEST
000001f0: POP
000001f1: PUSH2 0x0170
000001f4: PUSH2 0x088a
000001f7: JUMP
000001f8: JUMPDEST
000001f9: CALLVALUE
000001fa: DUP1
000001fb: ISZERO
000001fc: PUSH2 0x0204
000001ff: JUMPI
00000200: PUSH1 0x00
00000202: DUP1
00000203: REVERT
00000204: JUMPDEST
00000205: POP
00000206: PUSH2 0x0268
00000209: PUSH2 0x0213
0000020c: CALLDATASIZE
0000020d: PUSH1 0x04
0000020f: PUSH2 0x1167
00000212: JUMP
00000213: JUMPDEST
00000214: PUSH1 0x05
00000216: PUSH1 0x20
00000218: DUP2
00000219: SWAP1
0000021a: MSTORE
0000021b: PUSH1 0x00
0000021d: SWAP2
0000021e: DUP3
0000021f: MSTORE
00000220: PUSH1 0x40
00000222: SWAP1
00000223: SWAP2
00000224: KECCAK256
00000225: DUP1
00000226: SLOAD
00000227: PUSH1 0x01
00000229: DUP3
0000022a: ADD
0000022b: SLOAD
0000022c: PUSH1 0x02
0000022e: DUP4
0000022f: ADD
00000230: SLOAD
00000231: PUSH1 0x03
00000233: DUP5
00000234: ADD
00000235: SLOAD
00000236: PUSH1 0x04
00000238: DUP6
00000239: ADD
0000023a: SLOAD
0000023b: SWAP6
0000023c: DUP6
0000023d: ADD
0000023e: SLOAD
0000023f: PUSH1 0x06
00000241: DUP7
00000242: ADD
00000243: SLOAD
00000244: PUSH1 0x07
00000246: DUP8
00000247: ADD
00000248: SLOAD
00000249: PUSH1 0x08
0000024b: SWAP1
0000024c: SWAP8
0000024d: ADD
0000024e: SLOAD
0000024f: SWAP6
00000250: SWAP8
00000251: SWAP5
00000252: SWAP7
00000253: SWAP4
00000254: SWAP6
00000255: SWAP3
00000256: SWAP5
00000257: SWAP4
00000258: SWAP2
00000259: SWAP3
0000025a: SWAP1
0000025b: SWAP2
0000025c: PUSH1 0x01
0000025e: PUSH1 0x01
00000260: PUSH1 0xa0
00000262: SHL
00000263: SUB
00000264: AND
00000265: SWAP1
00000266: DUP10
00000267: JUMP
00000268: JUMPDEST
00000269: PUSH1 0x40
0000026b: DUP1
0000026c: MLOAD
0000026d: SWAP10
0000026e: DUP11
0000026f: MSTORE
00000270: PUSH1 0x20
00000272: DUP11
00000273: ADD
00000274: SWAP9
00000275: SWAP1
00000276: SWAP9
00000277: MSTORE
00000278: SWAP7
00000279: DUP9
0000027a: ADD
0000027b: SWAP6
0000027c: SWAP1
0000027d: SWAP6
0000027e: MSTORE
0000027f: PUSH1 0x60
00000281: DUP8
00000282: ADD
00000283: SWAP4
00000284: SWAP1
00000285: SWAP4
00000286: MSTORE
00000287: PUSH1 0x80
00000289: DUP7
0000028a: ADD
0000028b: SWAP2
0000028c: SWAP1
0000028d: SWAP2
0000028e: MSTORE
0000028f: PUSH1 0xa0
00000291: DUP6
00000292: ADD
00000293: MSTORE
00000294: PUSH1 0xc0
00000296: DUP5
00000297: ADD
00000298: MSTORE
00000299: PUSH1 0x01
0000029b: PUSH1 0x01
0000029d: PUSH1 0xa0
0000029f: SHL
000002a0: SUB
000002a1: AND
000002a2: PUSH1 0xe0
000002a4: DUP4
000002a5: ADD
000002a6: MSTORE
000002a7: PUSH2 0x0100
000002aa: DUP3
000002ab: ADD
000002ac: MSTORE
000002ad: PUSH2 0x0120
000002b0: ADD
000002b1: PUSH2 0x00f3
000002b4: JUMP
000002b5: JUMPDEST
000002b6: CALLVALUE
000002b7: DUP1
000002b8: ISZERO
000002b9: PUSH2 0x02c1
000002bc: JUMPI
000002bd: PUSH1 0x00
000002bf: DUP1
000002c0: REVERT
000002c1: JUMPDEST
000002c2: POP
000002c3: PUSH1 0x02
000002c5: SLOAD
000002c6: PUSH2 0x02d0
000002c9: SWAP1
000002ca: PUSH2 0xffff
000002cd: AND
000002ce: DUP2
000002cf: JUMP
000002d0: JUMPDEST
000002d1: PUSH1 0x40
000002d3: MLOAD
000002d4: PUSH2 0xffff
000002d7: SWAP1
000002d8: SWAP2
000002d9: AND
000002da: DUP2
000002db: MSTORE
000002dc: PUSH1 0x20
000002de: ADD
000002df: PUSH2 0x00f3
000002e2: JUMP
000002e3: JUMPDEST
000002e4: CALLVALUE
000002e5: DUP1
000002e6: ISZERO
000002e7: PUSH2 0x02ef
000002ea: JUMPI
000002eb: PUSH1 0x00
000002ed: DUP1
000002ee: REVERT
000002ef: JUMPDEST
000002f0: POP
000002f1: PUSH2 0x0303
000002f4: PUSH2 0x02fe
000002f7: CALLDATASIZE
000002f8: PUSH1 0x04
000002fa: PUSH2 0x125c
000002fd: JUMP
000002fe: JUMPDEST
000002ff: PUSH2 0x08be
00000302: JUMP
00000303: JUMPDEST
00000304: PUSH1 0x40
00000306: MLOAD
00000307: PUSH1 0x01
00000309: PUSH1 0x01
0000030b: PUSH1 0xe0
0000030d: SHL
0000030e: SUB
0000030f: NOT
00000310: SWAP1
00000311: SWAP2
00000312: AND
00000313: DUP2
00000314: MSTORE
00000315: PUSH1 0x20
00000317: ADD
00000318: PUSH2 0x00f3
0000031b: JUMP
0000031c: JUMPDEST
0000031d: CALLVALUE
0000031e: DUP1
0000031f: ISZERO
00000320: PUSH2 0x0328
00000323: JUMPI
00000324: PUSH1 0x00
00000326: DUP1
00000327: REVERT
00000328: JUMPDEST
00000329: POP
0000032a: PUSH2 0x0170
0000032d: PUSH2 0x0337
00000330: CALLDATASIZE
00000331: PUSH1 0x04
00000333: PUSH2 0x1167
00000336: JUMP
00000337: JUMPDEST
00000338: PUSH2 0x08d9
0000033b: JUMP
0000033c: JUMPDEST
0000033d: CALLVALUE
0000033e: DUP1
0000033f: ISZERO
00000340: PUSH2 0x0348
00000343: JUMPI
00000344: PUSH1 0x00
00000346: DUP1
00000347: REVERT
00000348: JUMPDEST
00000349: POP
0000034a: PUSH2 0x0303
0000034d: PUSH2 0x0357
00000350: CALLDATASIZE
00000351: PUSH1 0x04
00000353: PUSH2 0x131b
00000356: JUMP
00000357: JUMPDEST
00000358: PUSH2 0x0912
0000035b: JUMP
0000035c: JUMPDEST
0000035d: PUSH1 0x00
0000035f: PUSH1 0x01
00000361: PUSH1 0x01
00000363: PUSH1 0xe0
00000365: SHL
00000366: SUB
00000367: NOT
00000368: DUP3
00000369: AND
0000036a: PUSH4 0x02711897
0000036f: PUSH1 0xe5
00000371: SHL
00000372: EQ
00000373: DUP1
00000374: PUSH2 0x038d
00000377: JUMPI
00000378: POP
00000379: PUSH4 0x01ffc9a7
0000037e: PUSH1 0xe0
00000380: SHL
00000381: PUSH1 0x01
00000383: PUSH1 0x01
00000385: PUSH1 0xe0
00000387: SHL
00000388: SUB
00000389: NOT
0000038a: DUP4
0000038b: AND
0000038c: EQ
0000038d: JUMPDEST
0000038e: SWAP3
0000038f: SWAP2
00000390: POP
00000391: POP
00000392: JUMP
00000393: JUMPDEST
00000394: PUSH2 0x03e8
00000397: DUP3
00000398: GT
00000399: ISZERO
0000039a: PUSH2 0x03a2
0000039d: JUMPI
0000039e: PUSH1 0x00
000003a0: DUP1
000003a1: REVERT
000003a2: JUMPDEST
000003a3: PUSH1 0x04
000003a5: SLOAD
000003a6: PUSH1 0x01
000003a8: PUSH1 0x01
000003aa: PUSH1 0xa0
000003ac: SHL
000003ad: SUB
000003ae: AND
000003af: CALLER
000003b0: EQ
000003b1: PUSH2 0x03b9
000003b4: JUMPI
000003b5: PUSH1 0x00
000003b7: DUP1
000003b8: REVERT
000003b9: JUMPDEST
000003ba: PUSH1 0x00
000003bc: SWAP2
000003bd: DUP3
000003be: MSTORE
000003bf: PUSH1 0x06
000003c1: PUSH1 0x20
000003c3: MSTORE
000003c4: PUSH1 0x40
000003c6: SWAP1
000003c7: SWAP2
000003c8: KECCAK256
000003c9: DUP1
000003ca: SLOAD
000003cb: PUSH1 0xff
000003cd: NOT
000003ce: AND
000003cf: SWAP2
000003d0: ISZERO
000003d1: ISZERO
000003d2: SWAP2
000003d3: SWAP1
000003d4: SWAP2
000003d5: OR
000003d6: SWAP1
000003d7: SSTORE
000003d8: JUMP
000003d9: JUMPDEST
000003da: PUSH2 0x03e1
000003dd: PUSH2 0x09fd
000003e0: JUMP
000003e1: JUMPDEST
000003e2: PUSH1 0x01
000003e4: PUSH1 0x01
000003e6: PUSH1 0xa0
000003e8: SHL
000003e9: SUB
000003ea: DUP1
000003eb: DUP3
000003ec: AND
000003ed: PUSH1 0x00
000003ef: SWAP1
000003f0: DUP2
000003f1: MSTORE
000003f2: PUSH1 0x05
000003f4: PUSH1 0x20
000003f6: MSTORE
000003f7: PUSH1 0x40
000003f9: DUP2
000003fa: KECCAK256
000003fb: PUSH1 0x08
000003fd: DUP2
000003fe: ADD
000003ff: DUP1
00000400: SLOAD
00000401: SWAP3
00000402: SWAP1
00000403: SSTORE
00000404: PUSH1 0x07
00000406: DUP2
00000407: ADD
00000408: SLOAD
00000409: SWAP1
0000040a: SWAP3
0000040b: PUSH2 0x0415
0000040e: SWAP2
0000040f: AND
00000410: DUP3
00000411: PUSH2 0x0a5b
00000414: JUMP
00000415: JUMPDEST
00000416: POP
00000417: POP
00000418: PUSH2 0x0421
0000041b: PUSH1 0x01
0000041d: PUSH1 0x00
0000041f: SSTORE
00000420: JUMP
00000421: JUMPDEST
00000422: POP
00000423: JUMP
00000424: JUMPDEST
00000425: PUSH1 0x00
00000427: DUP3
00000428: TIMESTAMP
00000429: DUP2
0000042a: LT
0000042b: ISZERO
0000042c: PUSH2 0x0448
0000042f: JUMPI
00000430: PUSH1 0x40
00000432: MLOAD
00000433: PUSH4 0x0407b05b
00000438: PUSH1 0xe3
0000043a: SHL
0000043b: DUP2
0000043c: MSTORE
0000043d: PUSH1 0x04
0000043f: ADD
00000440: PUSH1 0x40
00000442: MLOAD
00000443: DUP1
00000444: SWAP2
00000445: SUB
00000446: SWAP1
00000447: REVERT
00000448: JUMPDEST
00000449: PUSH2 0x0450
0000044c: PUSH2 0x09fd
0000044f: JUMP
00000450: JUMPDEST
00000451: CALLVALUE
00000452: PUSH1 0x00
00000454: SUB
00000455: PUSH2 0x0471
00000458: JUMPI
00000459: PUSH1 0x40
0000045b: MLOAD
0000045c: PUSH4 0x990965c1
00000461: PUSH1 0xe0
00000463: SHL
00000464: DUP2
00000465: MSTORE
00000466: PUSH1 0x04
00000468: ADD
00000469: PUSH1 0x40
0000046b: MLOAD
0000046c: DUP1
0000046d: SWAP2
0000046e: SUB
0000046f: SWAP1
00000470: REVERT
00000471: JUMPDEST
00000472: PUSH1 0x01
00000474: PUSH1 0x01
00000476: PUSH1 0xa0
00000478: SHL
00000479: SUB
0000047a: DUP7
0000047b: AND
0000047c: PUSH1 0x00
0000047e: SWAP1
0000047f: DUP2
00000480: MSTORE
00000481: PUSH1 0x05
00000483: PUSH1 0x20
00000485: MSTORE
00000486: PUSH1 0x40
00000488: SWAP1
00000489: KECCAK256
0000048a: PUSH1 0x04
0000048c: DUP2
0000048d: ADD
0000048e: SLOAD
0000048f: ISZERO
00000490: DUP1
00000491: ISZERO
00000492: SWAP1
00000493: PUSH2 0x049f
00000496: JUMPI
00000497: POP
00000498: DUP1
00000499: PUSH1 0x04
0000049b: ADD
0000049c: SLOAD
0000049d: DUP7
0000049e: GT
0000049f: JUMPDEST
000004a0: ISZERO
000004a1: PUSH2 0x04bd
000004a4: JUMPI
000004a5: PUSH1 0x40
000004a7: MLOAD
000004a8: PUSH4 0x08af9b09
000004ad: PUSH1 0xe2
000004af: SHL
000004b0: DUP2
000004b1: MSTORE
000004b2: PUSH1 0x04
000004b4: ADD
000004b5: PUSH1 0x40
000004b7: MLOAD
000004b8: DUP1
000004b9: SWAP2
000004ba: SUB
000004bb: SWAP1
000004bc: REVERT
000004bd: JUMPDEST
000004be: DUP1
000004bf: PUSH1 0x01
000004c1: ADD
000004c2: SLOAD
000004c3: DUP7
000004c4: LT
000004c5: PUSH2 0x04e1
000004c8: JUMPI
000004c9: PUSH1 0x40
000004cb: MLOAD
000004cc: PUSH4 0x7294b855
000004d1: PUSH1 0xe1
000004d3: SHL
000004d4: DUP2
000004d5: MSTORE
000004d6: PUSH1 0x04
000004d8: ADD
000004d9: PUSH1 0x40
000004db: MLOAD
000004dc: DUP1
000004dd: SWAP2
000004de: SUB
000004df: SWAP1
000004e0: REVERT
000004e1: JUMPDEST
000004e2: PUSH1 0x00
000004e4: DUP1
000004e5: DUP3
000004e6: PUSH1 0x02
000004e8: ADD
000004e9: SLOAD
000004ea: DUP4
000004eb: PUSH1 0x01
000004ed: ADD
000004ee: SLOAD
000004ef: GT
000004f0: ISZERO
000004f1: PUSH2 0x0531
000004f4: JUMPI
000004f5: PUSH1 0x00
000004f7: DUP4
000004f8: PUSH1 0x02
000004fa: ADD
000004fb: SLOAD
000004fc: DUP5
000004fd: PUSH1 0x01
000004ff: ADD
00000500: SLOAD
00000501: PUSH2 0x050a
00000504: SWAP2
00000505: SWAP1
00000506: PUSH2 0x13ad
00000509: JUMP
0000050a: JUMPDEST
0000050b: SWAP1
0000050c: POP
0000050d: DUP9
0000050e: DUP2
0000050f: LT
00000510: PUSH2 0x051b
00000513: JUMPI
00000514: DUP9
00000515: SWAP3
00000516: POP
00000517: PUSH2 0x052b
0000051a: JUMP
0000051b: JUMPDEST
0000051c: PUSH2 0x0525
0000051f: DUP2
00000520: DUP11
00000521: PUSH2 0x13ad
00000524: JUMP
00000525: JUMPDEST
00000526: SWAP2
00000527: POP
00000528: DUP1
00000529: SWAP3
0000052a: POP
0000052b: JUMPDEST
0000052c: POP
0000052d: PUSH2 0x0534
00000530: JUMP
00000531: JUMPDEST
00000532: POP
00000533: DUP7
00000534: JUMPDEST
00000535: PUSH1 0x00
00000537: DUP3
00000538: ISZERO
00000539: PUSH2 0x0596
0000053c: JUMPI
0000053d: PUSH8 0x0de0b6b3a7640000
00000546: DUP4
00000547: DUP6
00000548: PUSH1 0x03
0000054a: ADD
0000054b: SLOAD
0000054c: PUSH2 0x0555
0000054f: SWAP2
00000550: SWAP1
00000551: PUSH2 0x13c0
00000554: JUMP
00000555: JUMPDEST
00000556: PUSH2 0x055f
00000559: SWAP2
0000055a: SWAP1
0000055b: PUSH2 0x13d7
0000055e: JUMP
0000055f: JUMPDEST
00000560: SWAP1
00000561: POP
00000562: DUP1
00000563: DUP5
00000564: PUSH1 0x00
00000566: ADD
00000567: PUSH1 0x00
00000569: DUP3
0000056a: DUP3
0000056b: SLOAD
0000056c: PUSH2 0x0575
0000056f: SWAP2
00000570: SWAP1
00000571: PUSH2 0x13f9
00000574: JUMP
00000575: JUMPDEST
00000576: SWAP3
00000577: POP
00000578: POP
00000579: DUP2
0000057a: SWAP1
0000057b: SSTORE
0000057c: POP
0000057d: DUP3
0000057e: DUP5
0000057f: PUSH1 0x01
00000581: ADD
00000582: PUSH1 0x00
00000584: DUP3
00000585: DUP3
00000586: SLOAD
00000587: PUSH2 0x0590
0000058a: SWAP2
0000058b: SWAP1
0000058c: PUSH2 0x13ad
0000058f: JUMP
00000590: JUMPDEST
00000591: SWAP1
00000592: SWAP2
00000593: SSTORE
00000594: POP
00000595: POP
00000596: JUMPDEST
00000597: DUP2
00000598: ISZERO
00000599: PUSH2 0x0733
0000059c: JUMPI
0000059d: DUP4
0000059e: PUSH1 0x01
000005a0: ADD
000005a1: SLOAD
000005a2: DUP3
000005a3: LT
000005a4: PUSH2 0x05c0
000005a7: JUMPI
000005a8: PUSH1 0x40
000005aa: MLOAD
000005ab: PUSH4 0x7294b855
000005b0: PUSH1 0xe1
000005b2: SHL
000005b3: DUP2
000005b4: MSTORE
000005b5: PUSH1 0x04
000005b7: ADD
000005b8: PUSH1 0x40
000005ba: MLOAD
000005bb: DUP1
000005bc: SWAP2
000005bd: SUB
000005be: SWAP1
000005bf: REVERT
000005c0: JUMPDEST
000005c1: DUP4
000005c2: SLOAD
000005c3: PUSH1 0x00
000005c5: SWAP1
000005c6: PUSH2 0x05cf
000005c9: SWAP1
000005ca: DUP5
000005cb: PUSH2 0x13c0
000005ce: JUMP
000005cf: JUMPDEST
000005d0: SWAP1
000005d1: POP
000005d2: PUSH1 0x00
000005d4: DUP4
000005d5: DUP7
000005d6: PUSH1 0x01
000005d8: ADD
000005d9: SLOAD
000005da: PUSH2 0x05e3
000005dd: SWAP2
000005de: SWAP1
000005df: PUSH2 0x13ad
000005e2: JUMP
000005e3: JUMPDEST
000005e4: SWAP1
000005e5: POP
000005e6: PUSH1 0x00
000005e8: PUSH2 0x05f1
000005eb: DUP3
000005ec: DUP5
000005ed: PUSH2 0x13d7
000005f0: JUMP
000005f1: JUMPDEST
000005f2: PUSH2 0x05fc
000005f5: SWAP1
000005f6: PUSH1 0x01
000005f8: PUSH2 0x13f9
000005fb: JUMP
000005fc: JUMPDEST
000005fd: SWAP1
000005fe: POP
000005ff: PUSH1 0x00
00000601: PUSH2 0x2710
00000604: DUP9
00000605: PUSH1 0x06
00000607: ADD
00000608: SLOAD
00000609: DUP4
0000060a: PUSH2 0x0613
0000060d: SWAP2
0000060e: SWAP1
0000060f: PUSH2 0x13c0
00000612: JUMP
00000613: JUMPDEST
00000614: PUSH2 0x061d
00000617: SWAP2
00000618: SWAP1
00000619: PUSH2 0x13d7
0000061c: JUMP
0000061d: JUMPDEST
0000061e: PUSH1 0x02
00000620: SLOAD
00000621: SWAP1
00000622: SWAP2
00000623: POP
00000624: PUSH1 0x00
00000626: SWAP1
00000627: PUSH1 0x64
00000629: SWAP1
0000062a: PUSH2 0x0637
0000062d: SWAP1
0000062e: PUSH2 0xffff
00000631: AND
00000632: DUP5
00000633: PUSH2 0x13c0
00000636: JUMP
00000637: JUMPDEST
00000638: PUSH2 0x0641
0000063b: SWAP2
0000063c: SWAP1
0000063d: PUSH2 0x13d7
00000640: JUMP
00000641: JUMPDEST
00000642: SWAP1
00000643: POP
00000644: PUSH1 0x00
00000646: PUSH1 0x64
00000648: PUSH2 0x0652
0000064b: DUP4
0000064c: PUSH1 0x4b
0000064e: PUSH2 0x13c0
00000651: JUMP
00000652: JUMPDEST
00000653: PUSH2 0x065c
00000656: SWAP2
00000657: SWAP1
00000658: PUSH2 0x13d7
0000065b: JUMP
0000065c: JUMPDEST
0000065d: SWAP1
0000065e: POP
0000065f: PUSH1 0x00
00000661: PUSH2 0x066a
00000664: DUP4
00000665: DUP6
00000666: PUSH2 0x13ad
00000669: JUMP
0000066a: JUMPDEST
0000066b: SWAP1
0000066c: POP
0000066d: PUSH2 0x0676
00000670: DUP3
00000671: DUP5
00000672: PUSH2 0x13ad
00000675: JUMP
00000676: JUMPDEST
00000677: PUSH1 0x01
00000679: PUSH1 0x00
0000067b: DUP3
0000067c: DUP3
0000067d: SLOAD
0000067e: PUSH2 0x0687
00000681: SWAP2
00000682: SWAP1
00000683: PUSH2 0x13f9
00000686: JUMP
00000687: JUMPDEST
00000688: SWAP3
00000689: POP
0000068a: POP
0000068b: DUP2
0000068c: SWAP1
0000068d: SSTORE
0000068e: POP
0000068f: DUP2
00000690: DUP12
00000691: PUSH1 0x08
00000693: ADD
00000694: PUSH1 0x00
00000696: DUP3
00000697: DUP3
00000698: SLOAD
00000699: PUSH2 0x06a2
0000069c: SWAP2
0000069d: SWAP1
0000069e: PUSH2 0x13f9
000006a1: JUMP
000006a2: JUMPDEST
000006a3: SWAP1
000006a4: SWAP2
000006a5: SSTORE
000006a6: POP
000006a7: POP
000006a8: DUP11
000006a9: SLOAD
000006aa: DUP6
000006ab: SWAP1
000006ac: DUP13
000006ad: SWAP1
000006ae: PUSH1 0x00
000006b0: SWAP1
000006b1: PUSH2 0x06bb
000006b4: SWAP1
000006b5: DUP5
000006b6: SWAP1
000006b7: PUSH2 0x13f9
000006ba: JUMP
000006bb: JUMPDEST
000006bc: SWAP3
000006bd: POP
000006be: POP
000006bf: DUP2
000006c0: SWAP1
000006c1: SSTORE
000006c2: POP
000006c3: DUP9
000006c4: DUP12
000006c5: PUSH1 0x01
000006c7: ADD
000006c8: PUSH1 0x00
000006ca: DUP3
000006cb: DUP3
000006cc: SLOAD
000006cd: PUSH2 0x06d6
000006d0: SWAP2
000006d1: SWAP1
000006d2: PUSH2 0x13ad
000006d5: JUMP
000006d6: JUMPDEST
000006d7: SWAP1
000006d8: SWAP2
000006d9: SSTORE
000006da: POP
000006db: POP
000006dc: PUSH1 0x02
000006de: DUP12
000006df: ADD
000006e0: SLOAD
000006e1: PUSH2 0x06f2
000006e4: DUP3
000006e5: PUSH8 0x0de0b6b3a7640000
000006ee: PUSH2 0x13c0
000006f1: JUMP
000006f2: JUMPDEST
000006f3: PUSH2 0x06fc
000006f6: SWAP2
000006f7: SWAP1
000006f8: PUSH2 0x13d7
000006fb: JUMP
000006fc: JUMPDEST
000006fd: DUP12
000006fe: PUSH1 0x03
00000700: ADD
00000701: PUSH1 0x00
00000703: DUP3
00000704: DUP3
00000705: SLOAD
00000706: PUSH2 0x070f
00000709: SWAP2
0000070a: SWAP1
0000070b: PUSH2 0x13f9
0000070e: JUMP
0000070f: JUMPDEST
00000710: SWAP1
00000711: SWAP2
00000712: SSTORE
00000713: POP
00000714: PUSH2 0x071f
00000717: SWAP1
00000718: POP
00000719: DUP5
0000071a: DUP7
0000071b: PUSH2 0x13f9
0000071e: JUMP
0000071f: JUMPDEST
00000720: PUSH2 0x0729
00000723: SWAP1
00000724: DUP10
00000725: PUSH2 0x13f9
00000728: JUMP
00000729: JUMPDEST
0000072a: SWAP8
0000072b: POP
0000072c: POP
0000072d: POP
0000072e: POP
0000072f: POP
00000730: POP
00000731: POP
00000732: POP
00000733: JUMPDEST
00000734: DUP1
00000735: CALLVALUE
00000736: LT
00000737: ISZERO
00000738: PUSH2 0x0754
0000073b: JUMPI
0000073c: PUSH1 0x40
0000073e: MLOAD
0000073f: PUSH4 0x6fad9773
00000744: PUSH1 0xe1
00000746: SHL
00000747: DUP2
00000748: MSTORE
00000749: PUSH1 0x04
0000074b: ADD
0000074c: PUSH1 0x40
0000074e: MLOAD
0000074f: DUP1
00000750: SWAP2
00000751: SUB
00000752: SWAP1
00000753: REVERT
00000754: JUMPDEST
00000755: PUSH1 0x60
00000757: PUSH1 0x01
00000759: PUSH1 0x01
0000075b: PUSH1 0xa0
0000075d: SHL
0000075e: SUB
0000075f: DUP9
00000760: AND
00000761: ISZERO
00000762: DUP1
00000763: PUSH2 0x0774
00000766: JUMPI
00000767: POP
00000768: PUSH1 0x01
0000076a: PUSH1 0x01
0000076c: PUSH1 0xa0
0000076e: SHL
0000076f: SUB
00000770: DUP9
00000771: AND
00000772: CALLER
00000773: EQ
00000774: JUMPDEST
00000775: ISZERO
00000776: PUSH2 0x0781
00000779: JUMPI
0000077a: CALLER
0000077b: SWAP8
0000077c: POP
0000077d: PUSH2 0x079e
00000780: JUMP
00000781: JUMPDEST
00000782: PUSH1 0x40
00000784: DUP1
00000785: MLOAD
00000786: CALLER
00000787: PUSH1 0x20
00000789: DUP3
0000078a: ADD
0000078b: MSTORE
0000078c: ADD
0000078d: PUSH1 0x40
0000078f: MLOAD
00000790: PUSH1 0x20
00000792: DUP2
00000793: DUP4
00000794: SUB
00000795: SUB
00000796: DUP2
00000797: MSTORE
00000798: SWAP1
00000799: PUSH1 0x40
0000079b: MSTORE
0000079c: SWAP1
0000079d: POP
0000079e: JUMPDEST
0000079f: PUSH1 0x02
000007a1: SLOAD
000007a2: PUSH1 0x40
000007a4: MLOAD
000007a5: PUSH4 0xdabd76e9
000007aa: PUSH1 0xe0
000007ac: SHL
000007ad: DUP2
000007ae: MSTORE
000007af: PUSH3 0x010000
000007b3: SWAP1
000007b4: SWAP2
000007b5: DIV
000007b6: PUSH1 0x01
000007b8: PUSH1 0x01
000007ba: PUSH1 0xa0
000007bc: SHL
000007bd: SUB
000007be: AND
000007bf: SWAP1
000007c0: PUSH4 0xdabd76e9
000007c5: SWAP1
000007c6: PUSH2 0x07d9
000007c9: SWAP1
000007ca: DUP12
000007cb: SWAP1
000007cc: DUP16
000007cd: SWAP1
000007ce: DUP16
000007cf: SWAP1
000007d0: DUP8
000007d1: SWAP1
000007d2: PUSH1 0x04
000007d4: ADD
000007d5: PUSH2 0x1430
000007d8: JUMP
000007d9: JUMPDEST
000007da: PUSH1 0x00
000007dc: PUSH1 0x40
000007de: MLOAD
000007df: DUP1
000007e0: DUP4
000007e1: SUB
000007e2: DUP2
000007e3: PUSH1 0x00
000007e5: DUP8
000007e6: DUP1
000007e7: EXTCODESIZE
000007e8: ISZERO
000007e9: DUP1
000007ea: ISZERO
000007eb: PUSH2 0x07f3
000007ee: JUMPI
000007ef: PUSH1 0x00
000007f1: DUP1
000007f2: REVERT
000007f3: JUMPDEST
000007f4: POP
000007f5: GAS
000007f6: CALL
000007f7: ISZERO
000007f8: DUP1
000007f9: ISZERO
000007fa: PUSH2 0x0807
000007fd: JUMPI
000007fe: RETURNDATASIZE
000007ff: PUSH1 0x00
00000801: DUP1
00000802: RETURNDATACOPY
00000803: RETURNDATASIZE
00000804: PUSH1 0x00
00000806: REVERT
00000807: JUMPDEST
00000808: POP
00000809: POP
0000080a: POP
0000080b: POP
0000080c: PUSH1 0x00
0000080e: DUP3
0000080f: CALLVALUE
00000810: PUSH2 0x0819
00000813: SWAP2
00000814: SWAP1
00000815: PUSH2 0x13ad
00000818: JUMP
00000819: JUMPDEST
0000081a: SWAP1
0000081b: POP
0000081c: DUP1
0000081d: ISZERO
0000081e: PUSH2 0x082b
00000821: JUMPI
00000822: PUSH2 0x082b
00000825: CALLER
00000826: DUP3
00000827: PUSH2 0x0a5b
0000082a: JUMP
0000082b: JUMPDEST
0000082c: PUSH1 0x40
0000082e: DUP1
0000082f: MLOAD
00000830: DUP5
00000831: DUP2
00000832: MSTORE
00000833: PUSH1 0x20
00000835: DUP2
00000836: ADD
00000837: DUP14
00000838: SWAP1
00000839: MSTORE
0000083a: PUSH1 0x01
0000083c: PUSH1 0x01
0000083e: PUSH1 0xa0
00000840: SHL
00000841: SUB
00000842: DUP15
00000843: AND
00000844: SWAP2
00000845: PUSH32 0x414e2af7d9e148af9dd239499d0abecf8aa2174a1b62d0ee195fce7ca0b77f86
00000866: SWAP2
00000867: ADD
00000868: PUSH1 0x40
0000086a: MLOAD
0000086b: DUP1
0000086c: SWAP2
0000086d: SUB
0000086e: SWAP1
0000086f: LOG2
00000870: POP
00000871: SWAP1
00000872: SWAP6
00000873: POP
00000874: POP
00000875: POP
00000876: POP
00000877: POP
00000878: PUSH2 0x0881
0000087b: PUSH1 0x01
0000087d: PUSH1 0x00
0000087f: SSTORE
00000880: JUMP
00000881: JUMPDEST
00000882: POP
00000883: SWAP5
00000884: SWAP4
00000885: POP
00000886: POP
00000887: POP
00000888: POP
00000889: JUMP
0000088a: JUMPDEST
0000088b: PUSH2 0x0892
0000088e: PUSH2 0x09fd
00000891: JUMP
00000892: JUMPDEST
00000893: PUSH1 0x01
00000895: DUP1
00000896: SLOAD
00000897: PUSH1 0x00
00000899: SWAP1
0000089a: SWAP2
0000089b: SSTORE
0000089c: PUSH1 0x03
0000089e: SLOAD
0000089f: PUSH2 0x08b1
000008a2: SWAP1
000008a3: PUSH1 0x01
000008a5: PUSH1 0x01
000008a7: PUSH1 0xa0
000008a9: SHL
000008aa: SUB
000008ab: AND
000008ac: DUP3
000008ad: PUSH2 0x0a5b
000008b0: JUMP
000008b1: JUMPDEST
000008b2: POP
000008b3: PUSH2 0x08bc
000008b6: PUSH1 0x01
000008b8: PUSH1 0x00
000008ba: SSTORE
000008bb: JUMP
000008bc: JUMPDEST
000008bd: JUMP
000008be: JUMPDEST
000008bf: PUSH1 0x00
000008c1: PUSH1 0x40
000008c3: MLOAD
000008c4: PUSH4 0xb893332b
000008c9: PUSH1 0xe0
000008cb: SHL
000008cc: DUP2
000008cd: MSTORE
000008ce: PUSH1 0x04
000008d0: ADD
000008d1: PUSH1 0x40
000008d3: MLOAD
000008d4: DUP1
000008d5: SWAP2
000008d6: SUB
000008d7: SWAP1
000008d8: REVERT
000008d9: JUMPDEST
000008da: PUSH1 0x04
000008dc: SLOAD
000008dd: PUSH1 0x01
000008df: PUSH1 0x01
000008e1: PUSH1 0xa0
000008e3: SHL
000008e4: SUB
000008e5: AND
000008e6: CALLER
000008e7: EQ
000008e8: PUSH2 0x08f0
000008eb: JUMPI
000008ec: PUSH1 0x00
000008ee: DUP1
000008ef: REVERT
000008f0: JUMPDEST
000008f1: PUSH1 0x03
000008f3: DUP1
000008f4: SLOAD
000008f5: PUSH1 0x01
000008f7: PUSH1 0x01
000008f9: PUSH1 0xa0
000008fb: SHL
000008fc: SUB
000008fd: NOT
000008fe: AND
000008ff: PUSH1 0x01
00000901: PUSH1 0x01
00000903: PUSH1 0xa0
00000905: SHL
00000906: SUB
00000907: SWAP3
00000908: SWAP1
00000909: SWAP3
0000090a: AND
0000090b: SWAP2
0000090c: SWAP1
0000090d: SWAP2
0000090e: OR
0000090f: SWAP1
00000910: SSTORE
00000911: JUMP
00000912: JUMPDEST
00000913: PUSH1 0x02
00000915: SLOAD
00000916: PUSH1 0x00
00000918: SWAP1
00000919: PUSH3 0x010000
0000091d: SWAP1
0000091e: DIV
0000091f: PUSH1 0x01
00000921: PUSH1 0x01
00000923: PUSH1 0xa0
00000925: SHL
00000926: SUB
00000927: AND
00000928: CALLER
00000929: EQ
0000092a: PUSH2 0x0946
0000092d: JUMPI
0000092e: PUSH1 0x40
00000930: MLOAD
00000931: PUSH4 0x6edaef2f
00000936: PUSH1 0xe1
00000938: SHL
00000939: DUP2
0000093a: MSTORE
0000093b: PUSH1 0x04
0000093d: ADD
0000093e: PUSH1 0x40
00000940: MLOAD
00000941: DUP1
00000942: SWAP2
00000943: SUB
00000944: SWAP1
00000945: REVERT
00000946: JUMPDEST
00000947: PUSH1 0x00
00000949: DUP4
0000094a: DUP4
0000094b: PUSH1 0x00
0000094d: DUP2
0000094e: DUP2
0000094f: LT
00000950: PUSH2 0x095b
00000953: JUMPI
00000954: PUSH2 0x095b
00000957: PUSH2 0x1484
0000095a: JUMP
0000095b: JUMPDEST
0000095c: SWAP2
0000095d: SWAP1
0000095e: SWAP2
0000095f: ADD
00000960: CALLDATALOAD
00000961: PUSH1 0xf8
00000963: SHR
00000964: SWAP2
00000965: POP
00000966: POP
00000967: PUSH1 0x01
00000969: DUP2
0000096a: SWAP1
0000096b: SUB
0000096c: PUSH2 0x0993
0000096f: JUMPI
00000970: PUSH1 0x01
00000972: DUP5
00000973: ADD
00000974: CALLDATALOAD
00000975: PUSH1 0x21
00000977: DUP6
00000978: ADD
00000979: CALLDATALOAD
0000097a: PUSH1 0x41
0000097c: DUP7
0000097d: ADD
0000097e: CALLDATALOAD
0000097f: PUSH2 0x098b
00000982: DUP10
00000983: DUP5
00000984: DUP11
00000985: DUP6
00000986: DUP6
00000987: PUSH2 0x0b03
0000098a: JUMP
0000098b: JUMPDEST
0000098c: POP
0000098d: POP
0000098e: POP
0000098f: PUSH2 0x09e9
00000992: JUMP
00000993: JUMPDEST
00000994: DUP1
00000995: PUSH1 0xff
00000997: AND
00000998: PUSH1 0x02
0000099a: SUB
0000099b: PUSH2 0x09d0
0000099e: JUMPI
0000099f: PUSH1 0x01
000009a1: DUP5
000009a2: ADD
000009a3: CALLDATALOAD
000009a4: PUSH1 0x21
000009a6: DUP6
000009a7: ADD
000009a8: CALLDATALOAD
000009a9: PUSH1 0x41
000009ab: DUP7
000009ac: ADD
000009ad: CALLDATALOAD
000009ae: PUSH1 0x61
000009b0: DUP8
000009b1: ADD
000009b2: CALLDATALOAD
000009b3: PUSH1 0x81
000009b5: DUP9
000009b6: ADD
000009b7: CALLDATALOAD
000009b8: PUSH2 0x09c6
000009bb: DUP12
000009bc: DUP12
000009bd: DUP8
000009be: DUP8
000009bf: DUP8
000009c0: DUP8
000009c1: DUP8
000009c2: PUSH2 0x0eac
000009c5: JUMP
000009c6: JUMPDEST
000009c7: POP
000009c8: POP
000009c9: POP
000009ca: POP
000009cb: POP
000009cc: PUSH2 0x09e9
000009cf: JUMP
000009d0: JUMPDEST
000009d1: PUSH1 0x40
000009d3: MLOAD
000009d4: PUSH4 0x574b16a7
000009d9: PUSH1 0xe1
000009db: SHL
000009dc: DUP2
000009dd: MSTORE
000009de: PUSH1 0x04
000009e0: ADD
000009e1: PUSH1 0x40
000009e3: MLOAD
000009e4: DUP1
000009e5: SWAP2
000009e6: SUB
000009e7: SWAP1
000009e8: REVERT
000009e9: JUMPDEST
000009ea: POP
000009eb: PUSH4 0xf23a6e61
000009f0: PUSH1 0xe0
000009f2: SHL
000009f3: SWAP8
000009f4: SWAP7
000009f5: POP
000009f6: POP
000009f7: POP
000009f8: POP
000009f9: POP
000009fa: POP
000009fb: POP
000009fc: JUMP
000009fd: JUMPDEST
000009fe: PUSH1 0x02
00000a00: PUSH1 0x00
00000a02: SLOAD
00000a03: SUB
00000a04: PUSH2 0x0a54
00000a07: JUMPI
00000a08: PUSH1 0x40
00000a0a: MLOAD
00000a0b: PUSH3 0x461bcd
00000a0f: PUSH1 0xe5
00000a11: SHL
00000a12: DUP2
00000a13: MSTORE
00000a14: PUSH1 0x20
00000a16: PUSH1 0x04
00000a18: DUP3
00000a19: ADD
00000a1a: MSTORE
00000a1b: PUSH1 0x1f
00000a1d: PUSH1 0x24
00000a1f: DUP3
00000a20: ADD
00000a21: MSTORE
00000a22: PUSH32 0x5265656e7472616e637947756172643a207265656e7472616e742063616c6c00
00000a43: PUSH1 0x44
00000a45: DUP3
00000a46: ADD
00000a47: MSTORE
00000a48: PUSH1 0x64
00000a4a: ADD
00000a4b: JUMPDEST
00000a4c: PUSH1 0x40
00000a4e: MLOAD
00000a4f: DUP1
00000a50: SWAP2
00000a51: SUB
00000a52: SWAP1
00000a53: REVERT
00000a54: JUMPDEST
00000a55: PUSH1 0x02
00000a57: PUSH1 0x00
00000a59: SSTORE
00000a5a: JUMP
00000a5b: JUMPDEST
00000a5c: PUSH1 0x40
00000a5e: DUP1
00000a5f: MLOAD
00000a60: PUSH1 0x00
00000a62: DUP1
00000a63: DUP3
00000a64: MSTORE
00000a65: PUSH1 0x20
00000a67: DUP3
00000a68: ADD
00000a69: SWAP1
00000a6a: SWAP3
00000a6b: MSTORE
00000a6c: PUSH1 0x01
00000a6e: PUSH1 0x01
00000a70: PUSH1 0xa0
00000a72: SHL
00000a73: SUB
00000a74: DUP5
00000a75: AND
00000a76: SWAP1
00000a77: DUP4
00000a78: SWAP1
00000a79: PUSH1 0x40
00000a7b: MLOAD
00000a7c: PUSH2 0x0a85
00000a7f: SWAP2
00000a80: SWAP1
00000a81: PUSH2 0x149a
00000a84: JUMP
00000a85: JUMPDEST
00000a86: PUSH1 0x00
00000a88: PUSH1 0x40
00000a8a: MLOAD
00000a8b: DUP1
00000a8c: DUP4
00000a8d: SUB
00000a8e: DUP2
00000a8f: DUP6
00000a90: DUP8
00000a91: GAS
00000a92: CALL
00000a93: SWAP3
00000a94: POP
00000a95: POP
00000a96: POP
00000a97: RETURNDATASIZE
00000a98: DUP1
00000a99: PUSH1 0x00
00000a9b: DUP2
00000a9c: EQ
00000a9d: PUSH2 0x0ac2
00000aa0: JUMPI
00000aa1: PUSH1 0x40
00000aa3: MLOAD
00000aa4: SWAP2
00000aa5: POP
00000aa6: PUSH1 0x1f
00000aa8: NOT
00000aa9: PUSH1 0x3f
00000aab: RETURNDATASIZE
00000aac: ADD
00000aad: AND
00000aae: DUP3
00000aaf: ADD
00000ab0: PUSH1 0x40
00000ab2: MSTORE
00000ab3: RETURNDATASIZE
00000ab4: DUP3
00000ab5: MSTORE
00000ab6: RETURNDATASIZE
00000ab7: PUSH1 0x00
00000ab9: PUSH1 0x20
00000abb: DUP5
00000abc: ADD
00000abd: RETURNDATACOPY
00000abe: PUSH2 0x0ac7
00000ac1: JUMP
00000ac2: JUMPDEST
00000ac3: PUSH1 0x60
00000ac5: SWAP2
00000ac6: POP
00000ac7: JUMPDEST
00000ac8: POP
00000ac9: POP
00000aca: SWAP1
00000acb: POP
00000acc: DUP1
00000acd: PUSH2 0x0afe
00000ad0: JUMPI
00000ad1: PUSH1 0x40
00000ad3: MLOAD
00000ad4: PUSH3 0x461bcd
00000ad8: PUSH1 0xe5
00000ada: SHL
00000adb: DUP2
00000adc: MSTORE
00000add: PUSH1 0x20
00000adf: PUSH1 0x04
00000ae1: DUP3
00000ae2: ADD
00000ae3: MSTORE
00000ae4: PUSH1 0x03
00000ae6: PUSH1 0x24
00000ae8: DUP3
00000ae9: ADD
00000aea: MSTORE
00000aeb: PUSH3 0x535445
00000aef: PUSH1 0xe8
00000af1: SHL
00000af2: PUSH1 0x44
00000af4: DUP3
00000af5: ADD
00000af6: MSTORE
00000af7: PUSH1 0x64
00000af9: ADD
00000afa: PUSH2 0x0a4b
00000afd: JUMP
00000afe: JUMPDEST
00000aff: POP
00000b00: POP
00000b01: POP
00000b02: JUMP
00000b03: JUMPDEST
00000b04: DUP1
00000b05: TIMESTAMP
00000b06: DUP2
00000b07: LT
00000b08: ISZERO
00000b09: PUSH2 0x0b25
00000b0c: JUMPI
00000b0d: PUSH1 0x40
00000b0f: MLOAD
00000b10: PUSH4 0x0407b05b
00000b15: PUSH1 0xe3
00000b17: SHL
00000b18: DUP2
00000b19: MSTORE
00000b1a: PUSH1 0x04
00000b1c: ADD
00000b1d: PUSH1 0x40
00000b1f: MLOAD
00000b20: DUP1
00000b21: SWAP2
00000b22: SUB
00000b23: SWAP1
00000b24: REVERT
00000b25: JUMPDEST
00000b26: PUSH2 0x0b2d
00000b29: PUSH2 0x09fd
00000b2c: JUMP
00000b2d: JUMPDEST
00000b2e: PUSH1 0x01
00000b30: PUSH1 0x01
00000b32: PUSH1 0xa0
00000b34: SHL
00000b35: SUB
00000b36: DUP1
00000b37: DUP8
00000b38: AND
00000b39: PUSH1 0x00
00000b3b: SWAP1
00000b3c: DUP2
00000b3d: MSTORE
00000b3e: PUSH1 0x05
00000b40: PUSH1 0x20
00000b42: MSTORE
00000b43: PUSH1 0x40
00000b45: SWAP1
00000b46: KECCAK256
00000b47: SWAP1
00000b48: DUP7
00000b49: AND
00000b4a: PUSH2 0x0b66
00000b4d: JUMPI
00000b4e: PUSH1 0x40
00000b50: MLOAD
00000b51: PUSH4 0x4e469669
00000b56: PUSH1 0xe1
00000b58: SHL
00000b59: DUP2
00000b5a: MSTORE
00000b5b: PUSH1 0x04
00000b5d: ADD
00000b5e: PUSH1 0x40
00000b60: MLOAD
00000b61: DUP1
00000b62: SWAP2
00000b63: SUB
00000b64: SWAP1
00000b65: REVERT
00000b66: JUMPDEST
00000b67: DUP5
00000b68: PUSH1 0x00
00000b6a: SUB
00000b6b: PUSH2 0x0b87
00000b6e: JUMPI
00000b6f: PUSH1 0x40
00000b71: MLOAD
00000b72: PUSH4 0x990965c1
00000b77: PUSH1 0xe0
00000b79: SHL
00000b7a: DUP2
00000b7b: MSTORE
00000b7c: PUSH1 0x04
00000b7e: ADD
00000b7f: PUSH1 0x40
00000b81: MLOAD
00000b82: DUP1
00000b83: SWAP2
00000b84: SUB
00000b85: SWAP1
00000b86: REVERT
00000b87: JUMPDEST
00000b88: PUSH1 0x00
00000b8a: DUP2
00000b8b: PUSH1 0x05
00000b8d: ADD
00000b8e: SLOAD
00000b8f: GT
00000b90: DUP1
00000b91: ISZERO
00000b92: PUSH2 0x0b9e
00000b95: JUMPI
00000b96: POP
00000b97: DUP1
00000b98: PUSH1 0x05
00000b9a: ADD
00000b9b: SLOAD
00000b9c: DUP6
00000b9d: GT
00000b9e: JUMPDEST
00000b9f: ISZERO
00000ba0: PUSH2 0x0bbc
00000ba3: JUMPI
00000ba4: PUSH1 0x40
00000ba6: MLOAD
00000ba7: PUSH4 0x023e69fd
00000bac: PUSH1 0xe5
00000bae: SHL
00000baf: DUP2
00000bb0: MSTORE
00000bb1: PUSH1 0x04
00000bb3: ADD
00000bb4: PUSH1 0x40
00000bb6: MLOAD
00000bb7: DUP1
00000bb8: SWAP2
00000bb9: SUB
00000bba: SWAP1
00000bbb: REVERT
00000bbc: JUMPDEST
00000bbd: PUSH1 0x00
00000bbf: DUP1
00000bc0: DUP3
00000bc1: PUSH1 0x02
00000bc3: ADD
00000bc4: SLOAD
00000bc5: DUP4
00000bc6: PUSH1 0x01
00000bc8: ADD
00000bc9: SLOAD
00000bca: LT
00000bcb: PUSH2 0x0bd6
00000bce: JUMPI
00000bcf: DUP7
00000bd0: SWAP2
00000bd1: POP
00000bd2: PUSH2 0x0c0f
00000bd5: JUMP
00000bd6: JUMPDEST
00000bd7: PUSH1 0x00
00000bd9: DUP4
00000bda: PUSH1 0x01
00000bdc: ADD
00000bdd: SLOAD
00000bde: DUP5
00000bdf: PUSH1 0x02
00000be1: ADD
00000be2: SLOAD
00000be3: PUSH2 0x0bec
00000be6: SWAP2
00000be7: SWAP1
00000be8: PUSH2 0x13ad
00000beb: JUMP
00000bec: JUMPDEST
00000bed: SWAP1
00000bee: POP
00000bef: DUP8
00000bf0: DUP2
00000bf1: LT
00000bf2: PUSH2 0x0bfd
00000bf5: JUMPI
00000bf6: DUP8
00000bf7: SWAP2
00000bf8: POP
00000bf9: PUSH2 0x0c0d
00000bfc: JUMP
00000bfd: JUMPDEST
00000bfe: SWAP1
00000bff: POP
00000c00: DUP1
00000c01: PUSH2 0x0c0a
00000c04: DUP2
00000c05: DUP10
00000c06: PUSH2 0x13ad
00000c09: JUMP
00000c0a: JUMPDEST
00000c0b: SWAP3
00000c0c: POP
00000c0d: JUMPDEST
00000c0e: POP
00000c0f: JUMPDEST
00000c10: PUSH1 0x00
00000c12: DUP2
00000c13: ISZERO
00000c14: PUSH2 0x0d7e
00000c17: JUMPI
00000c18: DUP4
00000c19: SLOAD
00000c1a: PUSH1 0x00
00000c1c: SWAP1
00000c1d: PUSH2 0x0c26
00000c20: SWAP1
00000c21: DUP5
00000c22: PUSH2 0x13c0
00000c25: JUMP
00000c26: JUMPDEST
00000c27: SWAP1
00000c28: POP
00000c29: PUSH1 0x00
00000c2b: DUP4
00000c2c: DUP7
00000c2d: PUSH1 0x01
00000c2f: ADD
00000c30: SLOAD
00000c31: PUSH2 0x0c3a
00000c34: SWAP2
00000c35: SWAP1
00000c36: PUSH2 0x13f9
00000c39: JUMP
00000c3a: JUMPDEST
00000c3b: SWAP1
00000c3c: POP
00000c3d: PUSH1 0x01
00000c3f: PUSH2 0x0c48
00000c42: DUP3
00000c43: DUP5
00000c44: PUSH2 0x13d7
00000c47: JUMP
00000c48: JUMPDEST
00000c49: PUSH2 0x0c52
00000c4c: SWAP2
00000c4d: SWAP1
00000c4e: PUSH2 0x13ad
00000c51: JUMP
00000c52: JUMPDEST
00000c53: SWAP3
00000c54: POP
00000c55: PUSH1 0x00
00000c57: PUSH2 0x2710
00000c5a: DUP8
00000c5b: PUSH1 0x06
00000c5d: ADD
00000c5e: SLOAD
00000c5f: DUP6
00000c60: PUSH2 0x0c69
00000c63: SWAP2
00000c64: SWAP1
00000c65: PUSH2 0x13c0
00000c68: JUMP
00000c69: JUMPDEST
00000c6a: PUSH2 0x0c73
00000c6d: SWAP2
00000c6e: SWAP1
00000c6f: PUSH2 0x13d7
00000c72: JUMP
00000c73: JUMPDEST
00000c74: PUSH1 0x02
00000c76: SLOAD
00000c77: SWAP1
00000c78: SWAP2
00000c79: POP
00000c7a: PUSH1 0x00
00000c7c: SWAP1
00000c7d: PUSH1 0x64
00000c7f: SWAP1
00000c80: PUSH2 0x0c8d
00000c83: SWAP1
00000c84: PUSH2 0xffff
00000c87: AND
00000c88: DUP5
00000c89: PUSH2 0x13c0
00000c8c: JUMP
00000c8d: JUMPDEST
00000c8e: PUSH2 0x0c97
00000c91: SWAP2
00000c92: SWAP1
00000c93: PUSH2 0x13d7
00000c96: JUMP
00000c97: JUMPDEST
00000c98: SWAP1
00000c99: POP
00000c9a: PUSH1 0x00
00000c9c: PUSH1 0x64
00000c9e: PUSH2 0x0ca8
00000ca1: DUP4
00000ca2: PUSH1 0x4b
00000ca4: PUSH2 0x13c0
00000ca7: JUMP
00000ca8: JUMPDEST
00000ca9: PUSH2 0x0cb2
00000cac: SWAP2
00000cad: SWAP1
00000cae: PUSH2 0x13d7
00000cb1: JUMP
00000cb2: JUMPDEST
00000cb3: SWAP1
00000cb4: POP
00000cb5: PUSH1 0x00
00000cb7: PUSH2 0x0cc0
00000cba: DUP4
00000cbb: DUP6
00000cbc: PUSH2 0x13ad
00000cbf: JUMP
00000cc0: JUMPDEST
00000cc1: SWAP1
00000cc2: POP
00000cc3: PUSH2 0x0ccc
00000cc6: DUP3
00000cc7: DUP5
00000cc8: PUSH2 0x13ad
00000ccb: JUMP
00000ccc: JUMPDEST
00000ccd: PUSH1 0x01
00000ccf: PUSH1 0x00
00000cd1: DUP3
00000cd2: DUP3
00000cd3: SLOAD
00000cd4: PUSH2 0x0cdd
00000cd7: SWAP2
00000cd8: SWAP1
00000cd9: PUSH2 0x13f9
00000cdc: JUMP
00000cdd: JUMPDEST
00000cde: SWAP3
00000cdf: POP
00000ce0: POP
00000ce1: DUP2
00000ce2: SWAP1
00000ce3: SSTORE
00000ce4: POP
00000ce5: DUP2
00000ce6: DUP11
00000ce7: PUSH1 0x08
00000ce9: ADD
00000cea: PUSH1 0x00
00000cec: DUP3
00000ced: DUP3
00000cee: SLOAD
00000cef: PUSH2 0x0cf8
00000cf2: SWAP2
00000cf3: SWAP1
00000cf4: PUSH2 0x13f9
00000cf7: JUMP
00000cf8: JUMPDEST
00000cf9: SWAP1
00000cfa: SWAP2
00000cfb: SSTORE
00000cfc: POP
00000cfd: POP
00000cfe: DUP10
00000cff: SLOAD
00000d00: DUP8
00000d01: SWAP1
00000d02: DUP12
00000d03: SWAP1
00000d04: PUSH1 0x00
00000d06: SWAP1
00000d07: PUSH2 0x0d11
00000d0a: SWAP1
00000d0b: DUP5
00000d0c: SWAP1
00000d0d: PUSH2 0x13ad
00000d10: JUMP
00000d11: JUMPDEST
00000d12: SWAP3
00000d13: POP
00000d14: POP
00000d15: DUP2
00000d16: SWAP1
00000d17: SSTORE
00000d18: POP
00000d19: DUP8
00000d1a: DUP11
00000d1b: PUSH1 0x01
00000d1d: ADD
00000d1e: PUSH1 0x00
00000d20: DUP3
00000d21: DUP3
00000d22: SLOAD
00000d23: PUSH2 0x0d2c
00000d26: SWAP2
00000d27: SWAP1
00000d28: PUSH2 0x13f9
00000d2b: JUMP
00000d2c: JUMPDEST
00000d2d: SWAP1
00000d2e: SWAP2
00000d2f: SSTORE
00000d30: POP
00000d31: POP
00000d32: PUSH1 0x02
00000d34: DUP11
00000d35: ADD
00000d36: SLOAD
00000d37: PUSH2 0x0d48
00000d3a: DUP3
00000d3b: PUSH8 0x0de0b6b3a7640000
00000d44: PUSH2 0x13c0
00000d47: JUMP
00000d48: JUMPDEST
00000d49: PUSH2 0x0d52
00000d4c: SWAP2
00000d4d: SWAP1
00000d4e: PUSH2 0x13d7
00000d51: JUMP
00000d52: JUMPDEST
00000d53: DUP11
00000d54: PUSH1 0x03
00000d56: ADD
00000d57: PUSH1 0x00
00000d59: DUP3
00000d5a: DUP3
00000d5b: SLOAD
00000d5c: PUSH2 0x0d65
00000d5f: SWAP2
00000d60: SWAP1
00000d61: PUSH2 0x13f9
00000d64: JUMP
00000d65: JUMPDEST
00000d66: SWAP1
00000d67: SWAP2
00000d68: SSTORE
00000d69: POP
00000d6a: PUSH2 0x0d75
00000d6d: SWAP1
00000d6e: POP
00000d6f: DUP5
00000d70: DUP9
00000d71: PUSH2 0x13ad
00000d74: JUMP
00000d75: JUMPDEST
00000d76: SWAP7
00000d77: POP
00000d78: POP
00000d79: POP
00000d7a: POP
00000d7b: POP
00000d7c: POP
00000d7d: POP
00000d7e: JUMPDEST
00000d7f: DUP4
00000d80: PUSH1 0x02
00000d82: ADD
00000d83: SLOAD
00000d84: DUP5
00000d85: PUSH1 0x01
00000d87: ADD
00000d88: SLOAD
00000d89: SUB
00000d8a: PUSH2 0x0db7
00000d8d: JUMPI
00000d8e: PUSH8 0x0de0b6b3a7640000
00000d97: DUP5
00000d98: PUSH1 0x02
00000d9a: ADD
00000d9b: SLOAD
00000d9c: DUP6
00000d9d: PUSH1 0x03
00000d9f: ADD
00000da0: SLOAD
00000da1: PUSH2 0x0daa
00000da4: SWAP2
00000da5: SWAP1
00000da6: PUSH2 0x13c0
00000da9: JUMP
00000daa: JUMPDEST
00000dab: PUSH2 0x0db4
00000dae: SWAP2
00000daf: SWAP1
00000db0: PUSH2 0x13d7
00000db3: JUMP
00000db4: JUMPDEST
00000db5: DUP5
00000db6: SSTORE
00000db7: JUMPDEST
00000db8: DUP3
00000db9: ISZERO
00000dba: PUSH2 0x0e27
00000dbd: JUMPI
00000dbe: PUSH1 0x00
00000dc0: PUSH8 0x0de0b6b3a7640000
00000dc9: DUP6
00000dca: PUSH1 0x03
00000dcc: ADD
00000dcd: SLOAD
00000dce: DUP6
00000dcf: PUSH2 0x0dd8
00000dd2: SWAP2
00000dd3: SWAP1
00000dd4: PUSH2 0x13c0
00000dd7: JUMP
00000dd8: JUMPDEST
00000dd9: PUSH2 0x0de2
00000ddc: SWAP2
00000ddd: SWAP1
00000dde: PUSH2 0x13d7
00000de1: JUMP
00000de2: JUMPDEST
00000de3: SWAP1
00000de4: POP
00000de5: DUP1
00000de6: DUP6
00000de7: PUSH1 0x00
00000de9: ADD
00000dea: PUSH1 0x00
00000dec: DUP3
00000ded: DUP3
00000dee: SLOAD
00000def: PUSH2 0x0df8
00000df2: SWAP2
00000df3: SWAP1
00000df4: PUSH2 0x13ad
00000df7: JUMP
00000df8: JUMPDEST
00000df9: SWAP3
00000dfa: POP
00000dfb: POP
00000dfc: DUP2
00000dfd: SWAP1
00000dfe: SSTORE
00000dff: POP
00000e00: DUP4
00000e01: DUP6
00000e02: PUSH1 0x01
00000e04: ADD
00000e05: PUSH1 0x00
00000e07: DUP3
00000e08: DUP3
00000e09: SLOAD
00000e0a: PUSH2 0x0e13
00000e0d: SWAP2
00000e0e: SWAP1
00000e0f: PUSH2 0x13f9
00000e12: JUMP
00000e13: JUMPDEST
00000e14: SWAP1
00000e15: SWAP2
00000e16: SSTORE
00000e17: POP
00000e18: PUSH2 0x0e23
00000e1b: SWAP1
00000e1c: POP
00000e1d: DUP2
00000e1e: DUP4
00000e1f: PUSH2 0x13f9
00000e22: JUMP
00000e23: JUMPDEST
00000e24: SWAP2
00000e25: POP
00000e26: POP
00000e27: JUMPDEST
00000e28: DUP7
00000e29: DUP2
00000e2a: LT
00000e2b: ISZERO
00000e2c: PUSH2 0x0e48
00000e2f: JUMPI
00000e30: PUSH1 0x40
00000e32: MLOAD
00000e33: PUSH4 0x63830727
00000e38: PUSH1 0xe1
00000e3a: SHL
00000e3b: DUP2
00000e3c: MSTORE
00000e3d: PUSH1 0x04
00000e3f: ADD
00000e40: PUSH1 0x40
00000e42: MLOAD
00000e43: DUP1
00000e44: SWAP2
00000e45: SUB
00000e46: SWAP1
00000e47: REVERT
00000e48: JUMPDEST
00000e49: PUSH2 0x0e52
00000e4c: DUP10
00000e4d: DUP3
00000e4e: PUSH2 0x0a5b
00000e51: JUMP
00000e52: JUMPDEST
00000e53: PUSH1 0x40
00000e55: DUP1
00000e56: MLOAD
00000e57: DUP10
00000e58: DUP2
00000e59: MSTORE
00000e5a: PUSH1 0x20
00000e5c: DUP2
00000e5d: ADD
00000e5e: DUP4
00000e5f: SWAP1
00000e60: MSTORE
00000e61: PUSH1 0x01
00000e63: PUSH1 0x01
00000e65: PUSH1 0xa0
00000e67: SHL
00000e68: SUB
00000e69: DUP13
00000e6a: AND
00000e6b: SWAP2
00000e6c: PUSH32 0xa51c3fd9f12784345ed139a5fb52b323c591368bab8a4d38f2073adeef0167f8
00000e8d: SWAP2
00000e8e: ADD
00000e8f: PUSH1 0x40
00000e91: MLOAD
00000e92: DUP1
00000e93: SWAP2
00000e94: SUB
00000e95: SWAP1
00000e96: LOG2
00000e97: POP
00000e98: POP
00000e99: POP
00000e9a: POP
00000e9b: PUSH2 0x0ea4
00000e9e: PUSH1 0x01
00000ea0: PUSH1 0x00
00000ea2: SSTORE
00000ea3: JUMP
00000ea4: JUMPDEST
00000ea5: POP
00000ea6: POP
00000ea7: POP
00000ea8: POP
00000ea9: POP
00000eaa: POP
00000eab: JUMP
00000eac: JUMPDEST
00000ead: PUSH1 0x01
00000eaf: PUSH1 0x01
00000eb1: PUSH1 0xa0
00000eb3: SHL
00000eb4: SUB
00000eb5: DUP8
00000eb6: AND
00000eb7: PUSH1 0x00
00000eb9: SWAP1
00000eba: DUP2
00000ebb: MSTORE
00000ebc: PUSH1 0x05
00000ebe: PUSH1 0x20
00000ec0: MSTORE
00000ec1: PUSH1 0x40
00000ec3: SWAP1
00000ec4: KECCAK256
00000ec5: PUSH1 0x01
00000ec7: DUP2
00000ec8: ADD
00000ec9: SLOAD
00000eca: ISZERO
00000ecb: PUSH2 0x0ee7
00000ece: JUMPI
00000ecf: PUSH1 0x40
00000ed1: MLOAD
00000ed2: PUSH4 0x0149ba8b
00000ed7: PUSH1 0xe1
00000ed9: SHL
00000eda: DUP2
00000edb: MSTORE
00000edc: PUSH1 0x04
00000ede: ADD
00000edf: PUSH1 0x40
00000ee1: MLOAD
00000ee2: DUP1
00000ee3: SWAP2
00000ee4: SUB
00000ee5: SWAP1
00000ee6: REVERT
00000ee7: JUMPDEST
00000ee8: PUSH1 0x02
00000eea: SLOAD
00000eeb: PUSH1 0x40
00000eed: MLOAD
00000eee: PUSH4 0xbd85b039
00000ef3: PUSH1 0xe0
00000ef5: SHL
00000ef6: DUP2
00000ef7: MSTORE
00000ef8: PUSH1 0x01
00000efa: PUSH1 0x01
00000efc: PUSH1 0xa0
00000efe: SHL
00000eff: SUB
00000f00: DUP11
00000f01: DUP2
00000f02: AND
00000f03: PUSH1 0x04
00000f05: DUP4
00000f06: ADD
00000f07: MSTORE
00000f08: PUSH1 0x00
00000f0a: SWAP3
00000f0b: PUSH3 0x010000
00000f0f: SWAP1
00000f10: DIV
00000f11: AND
00000f12: SWAP1
00000f13: PUSH4 0xbd85b039
00000f18: SWAP1
00000f19: PUSH1 0x24
00000f1b: ADD
00000f1c: PUSH1 0x20
00000f1e: PUSH1 0x40
00000f20: MLOAD
00000f21: DUP1
00000f22: DUP4
00000f23: SUB
00000f24: DUP2
00000f25: DUP7
00000f26: GAS
00000f27: STATICCALL
00000f28: ISZERO
00000f29: DUP1
00000f2a: ISZERO
00000f2b: PUSH2 0x0f38
00000f2e: JUMPI
00000f2f: RETURNDATASIZE
00000f30: PUSH1 0x00
00000f32: DUP1
00000f33: RETURNDATACOPY
00000f34: RETURNDATASIZE
00000f35: PUSH1 0x00
00000f37: REVERT
00000f38: JUMPDEST
00000f39: POP
00000f3a: POP
00000f3b: POP
00000f3c: POP
00000f3d: PUSH1 0x40
00000f3f: MLOAD
00000f40: RETURNDATASIZE
00000f41: PUSH1 0x1f
00000f43: NOT
00000f44: PUSH1 0x1f
00000f46: DUP3
00000f47: ADD
00000f48: AND
00000f49: DUP3
00000f4a: ADD
00000f4b: DUP1
00000f4c: PUSH1 0x40
00000f4e: MSTORE
00000f4f: POP
00000f50: DUP2
00000f51: ADD
00000f52: SWAP1
00000f53: PUSH2 0x0f5c
00000f56: SWAP2
00000f57: SWAP1
00000f58: PUSH2 0x14b6
00000f5b: JUMP
00000f5c: JUMPDEST
00000f5d: SWAP1
00000f5e: POP
00000f5f: DUP1
00000f60: DUP9
00000f61: EQ
00000f62: PUSH2 0x0f7e
00000f65: JUMPI
00000f66: PUSH1 0x40
00000f68: MLOAD
00000f69: PUSH4 0x34bbd585
00000f6e: PUSH1 0xe0
00000f70: SHL
00000f71: DUP2
00000f72: MSTORE
00000f73: PUSH1 0x04
00000f75: ADD
00000f76: PUSH1 0x40
00000f78: MLOAD
00000f79: DUP1
00000f7a: SWAP2
00000f7b: SUB
00000f7c: SWAP1
00000f7d: REVERT
00000f7e: JUMPDEST
00000f7f: PUSH1 0x00
00000f81: DUP5
00000f82: DUP2
00000f83: MSTORE
00000f84: PUSH1 0x06
00000f86: PUSH1 0x20
00000f88: MSTORE
00000f89: PUSH1 0x40
00000f8b: SWAP1
00000f8c: KECCAK256
00000f8d: SLOAD
00000f8e: PUSH1 0xff
00000f90: AND
00000f91: PUSH2 0x0fad
00000f94: JUMPI
00000f95: PUSH1 0x40
00000f97: MLOAD
00000f98: PUSH4 0x0adad233
00000f9d: PUSH1 0xe3
00000f9f: SHL
00000fa0: DUP2
00000fa1: MSTORE
00000fa2: PUSH1 0x04
00000fa4: ADD
00000fa5: PUSH1 0x40
00000fa7: MLOAD
00000fa8: DUP1
00000fa9: SWAP2
00000faa: SUB
00000fab: SWAP1
00000fac: REVERT
00000fad: JUMPDEST
00000fae: DUP8
00000faf: PUSH2 0x0fb9
00000fb2: PUSH1 0x02
00000fb4: DUP3
00000fb5: PUSH2 0x13d7
00000fb8: JUMP
00000fb9: JUMPDEST
00000fba: PUSH2 0x0fc4
00000fbd: SWAP1
00000fbe: PUSH1 0x02
00000fc0: PUSH2 0x13c0
00000fc3: JUMP
00000fc4: JUMPDEST
00000fc5: EQ
00000fc6: PUSH2 0x0fe2
00000fc9: JUMPI
00000fca: PUSH1 0x40
00000fcc: MLOAD
00000fcd: PUSH4 0x01c7a0c5
00000fd2: PUSH1 0xe7
00000fd4: SHL
00000fd5: DUP2
00000fd6: MSTORE
00000fd7: PUSH1 0x04
00000fd9: ADD
00000fda: PUSH1 0x40
00000fdc: MLOAD
00000fdd: DUP1
00000fde: SWAP2
00000fdf: SUB
00000fe0: SWAP1
00000fe1: REVERT
00000fe2: JUMPDEST
00000fe3: PUSH1 0x00
00000fe5: DUP3
00000fe6: SSTORE
00000fe7: PUSH1 0x01
00000fe9: DUP3
00000fea: ADD
00000feb: DUP9
00000fec: SWAP1
00000fed: SSTORE
00000fee: PUSH2 0x0ff8
00000ff1: PUSH1 0x02
00000ff3: DUP10
00000ff4: PUSH2 0x13d7
00000ff7: JUMP
00000ff8: JUMPDEST
00000ff9: PUSH1 0x02
00000ffb: DUP4
00000ffc: ADD
00000ffd: DUP2
00000ffe: SWAP1
00000fff: SSTORE
00001000: PUSH1 0x03
00001002: DUP4
00001003: ADD
00001004: DUP9
00001005: SWAP1
00001006: SSTORE
00001007: PUSH1 0x04
00001009: DUP4
0000100a: ADD
0000100b: DUP8
0000100c: SWAP1
0000100d: SSTORE
0000100e: PUSH1 0x05
00001010: DUP4
00001011: ADD
00001012: DUP7
00001013: SWAP1
00001014: SSTORE
00001015: PUSH1 0x06
00001017: DUP4
00001018: ADD
00001019: DUP6
0000101a: SWAP1
0000101b: SSTORE
0000101c: PUSH1 0x07
0000101e: DUP4
0000101f: ADD
00001020: DUP1
00001021: SLOAD
00001022: PUSH1 0x01
00001024: PUSH1 0x01
00001026: PUSH1 0xa0
00001028: SHL
00001029: SUB
0000102a: NOT
0000102b: AND
0000102c: PUSH1 0x01
0000102e: PUSH1 0x01
00001030: PUSH1 0xa0
00001032: SHL
00001033: SUB
00001034: DUP7
00001035: AND
00001036: OR
00001037: SWAP1
00001038: SSTORE
00001039: PUSH8 0x0de0b6b3a7640000
00001042: SWAP1
00001043: PUSH2 0x104d
00001046: SWAP1
00001047: DUP10
00001048: SWAP1
00001049: PUSH2 0x13c0
0000104c: JUMP
0000104d: JUMPDEST
0000104e: PUSH2 0x1057
00001051: SWAP2
00001052: SWAP1
00001053: PUSH2 0x13d7
00001056: JUMP
00001057: JUMPDEST
00001058: PUSH1 0x00
0000105a: SUB
0000105b: PUSH2 0x1077
0000105e: JUMPI
0000105f: PUSH1 0x40
00001061: MLOAD
00001062: PUSH4 0x3e6f5e77
00001067: PUSH1 0xe0
00001069: SHL
0000106a: DUP2
0000106b: MSTORE
0000106c: PUSH1 0x04
0000106e: ADD
0000106f: PUSH1 0x40
00001071: MLOAD
00001072: DUP1
00001073: SWAP2
00001074: SUB
00001075: SWAP1
00001076: REVERT
00001077: JUMPDEST
00001078: PUSH1 0x40
0000107a: DUP1
0000107b: MLOAD
0000107c: DUP10
0000107d: DUP2
0000107e: MSTORE
0000107f: PUSH1 0x20
00001081: DUP2
00001082: ADD
00001083: DUP10
00001084: SWAP1
00001085: MSTORE
00001086: SWAP1
00001087: DUP2
00001088: ADD
00001089: DUP6
0000108a: SWAP1
0000108b: MSTORE
0000108c: PUSH1 0x01
0000108e: PUSH1 0x01
00001090: PUSH1 0xa0
00001092: SHL
00001093: SUB
00001094: DUP1
00001095: DUP12
00001096: AND
00001097: SWAP2
00001098: SWAP1
00001099: DUP6
0000109a: AND
0000109b: SWAP1
0000109c: PUSH32 0xf51250db2729f4349d2702ea57244f542214e68012d507e78eaba60bed629d30
000010bd: SWAP1
000010be: PUSH1 0x60
000010c0: ADD
000010c1: PUSH1 0x40
000010c3: MLOAD
000010c4: DUP1
000010c5: SWAP2
000010c6: SUB
000010c7: SWAP1
000010c8: LOG3
000010c9: POP
000010ca: POP
000010cb: POP
000010cc: POP
000010cd: POP
000010ce: POP
000010cf: POP
000010d0: POP
000010d1: POP
000010d2: JUMP
000010d3: JUMPDEST
000010d4: PUSH1 0x00
000010d6: PUSH1 0x20
000010d8: DUP3
000010d9: DUP5
000010da: SUB
000010db: SLT
000010dc: ISZERO
000010dd: PUSH2 0x10e5
000010e0: JUMPI
000010e1: PUSH1 0x00
000010e3: DUP1
000010e4: REVERT
000010e5: JUMPDEST
000010e6: DUP2
000010e7: CALLDATALOAD
000010e8: PUSH1 0x01
000010ea: PUSH1 0x01
000010ec: PUSH1 0xe0
000010ee: SHL
000010ef: SUB
000010f0: NOT
000010f1: DUP2
000010f2: AND
000010f3: DUP2
000010f4: EQ
000010f5: PUSH2 0x10fd
000010f8: JUMPI
000010f9: PUSH1 0x00
000010fb: DUP1
000010fc: REVERT
000010fd: JUMPDEST
000010fe: SWAP4
000010ff: SWAP3
00001100: POP
00001101: POP
00001102: POP
00001103: JUMP
00001104: JUMPDEST
00001105: PUSH1 0x00
00001107: PUSH1 0x20
00001109: DUP3
0000110a: DUP5
0000110b: SUB
0000110c: SLT
0000110d: ISZERO
0000110e: PUSH2 0x1116
00001111: JUMPI
00001112: PUSH1 0x00
00001114: DUP1
00001115: REVERT
00001116: JUMPDEST
00001117: POP
00001118: CALLDATALOAD
00001119: SWAP2
0000111a: SWAP1
0000111b: POP
0000111c: JUMP
0000111d: JUMPDEST
0000111e: PUSH1 0x00
00001120: DUP1
00001121: PUSH1 0x40
00001123: DUP4
00001124: DUP6
00001125: SUB
00001126: SLT
00001127: ISZERO
00001128: PUSH2 0x1130
0000112b: JUMPI
0000112c: PUSH1 0x00
0000112e: DUP1
0000112f: REVERT
00001130: JUMPDEST
00001131: DUP3
00001132: CALLDATALOAD
00001133: SWAP2
00001134: POP
00001135: PUSH1 0x20
00001137: DUP4
00001138: ADD
00001139: CALLDATALOAD
0000113a: DUP1
0000113b: ISZERO
0000113c: ISZERO
0000113d: DUP2
0000113e: EQ
0000113f: PUSH2 0x1147
00001142: JUMPI
00001143: PUSH1 0x00
00001145: DUP1
00001146: REVERT
00001147: JUMPDEST
00001148: DUP1
00001149: SWAP2
0000114a: POP
0000114b: POP
0000114c: SWAP3
0000114d: POP
0000114e: SWAP3
0000114f: SWAP1
00001150: POP
00001151: JUMP
00001152: JUMPDEST
00001153: PUSH1 0x01
00001155: PUSH1 0x01
00001157: PUSH1 0xa0
00001159: SHL
0000115a: SUB
0000115b: DUP2
0000115c: AND
0000115d: DUP2
0000115e: EQ
0000115f: PUSH2 0x0421
00001162: JUMPI
00001163: PUSH1 0x00
00001165: DUP1
00001166: REVERT
00001167: JUMPDEST
00001168: PUSH1 0x00
0000116a: PUSH1 0x20
0000116c: DUP3
0000116d: DUP5
0000116e: SUB
0000116f: SLT
00001170: ISZERO
00001171: PUSH2 0x1179
00001174: JUMPI
00001175: PUSH1 0x00
00001177: DUP1
00001178: REVERT
00001179: JUMPDEST
0000117a: DUP2
0000117b: CALLDATALOAD
0000117c: PUSH2 0x10fd
0000117f: DUP2
00001180: PUSH2 0x1152
00001183: JUMP
00001184: JUMPDEST
00001185: PUSH1 0x00
00001187: DUP1
00001188: PUSH1 0x00
0000118a: DUP1
0000118b: PUSH1 0x80
0000118d: DUP6
0000118e: DUP8
0000118f: SUB
00001190: SLT
00001191: ISZERO
00001192: PUSH2 0x119a
00001195: JUMPI
00001196: PUSH1 0x00
00001198: DUP1
00001199: REVERT
0000119a: JUMPDEST
0000119b: DUP5
0000119c: CALLDATALOAD
0000119d: PUSH2 0x11a5
000011a0: DUP2
000011a1: PUSH2 0x1152
000011a4: JUMP
000011a5: JUMPDEST
000011a6: SWAP4
000011a7: POP
000011a8: PUSH1 0x20
000011aa: DUP6
000011ab: ADD
000011ac: CALLDATALOAD
000011ad: SWAP3
000011ae: POP
000011af: PUSH1 0x40
000011b1: DUP6
000011b2: ADD
000011b3: CALLDATALOAD
000011b4: SWAP2
000011b5: POP
000011b6: PUSH1 0x60
000011b8: DUP6
000011b9: ADD
000011ba: CALLDATALOAD
000011bb: PUSH2 0x11c3
000011be: DUP2
000011bf: PUSH2 0x1152
000011c2: JUMP
000011c3: JUMPDEST
000011c4: SWAP4
000011c5: SWAP7
000011c6: SWAP3
000011c7: SWAP6
000011c8: POP
000011c9: SWAP1
000011ca: SWAP4
000011cb: POP
000011cc: POP
000011cd: JUMP
000011ce: JUMPDEST
000011cf: PUSH1 0x00
000011d1: DUP1
000011d2: DUP4
000011d3: PUSH1 0x1f
000011d5: DUP5
000011d6: ADD
000011d7: SLT
000011d8: PUSH2 0x11e0
000011db: JUMPI
000011dc: PUSH1 0x00
000011de: DUP1
000011df: REVERT
000011e0: JUMPDEST
000011e1: POP
000011e2: DUP2
000011e3: CALLDATALOAD
000011e4: PUSH8 0xffffffffffffffff
000011ed: DUP2
000011ee: GT
000011ef: ISZERO
000011f0: PUSH2 0x11f8
000011f3: JUMPI
000011f4: PUSH1 0x00
000011f6: DUP1
000011f7: REVERT
000011f8: JUMPDEST
000011f9: PUSH1 0x20
000011fb: DUP4
000011fc: ADD
000011fd: SWAP2
000011fe: POP
000011ff: DUP4
00001200: PUSH1 0x20
00001202: DUP3
00001203: PUSH1 0x05
00001205: SHL
00001206: DUP6
00001207: ADD
00001208: ADD
00001209: GT
0000120a: ISZERO
0000120b: PUSH2 0x1213
0000120e: JUMPI
0000120f: PUSH1 0x00
00001211: DUP1
00001212: REVERT
00001213: JUMPDEST
00001214: SWAP3
00001215: POP
00001216: SWAP3
00001217: SWAP1
00001218: POP
00001219: JUMP
0000121a: JUMPDEST
0000121b: PUSH1 0x00
0000121d: DUP1
0000121e: DUP4
0000121f: PUSH1 0x1f
00001221: DUP5
00001222: ADD
00001223: SLT
00001224: PUSH2 0x122c
00001227: JUMPI
00001228: PUSH1 0x00
0000122a: DUP1
0000122b: REVERT
0000122c: JUMPDEST
0000122d: POP
0000122e: DUP2
0000122f: CALLDATALOAD
00001230: PUSH8 0xffffffffffffffff
00001239: DUP2
0000123a: GT
0000123b: ISZERO
0000123c: PUSH2 0x1244
0000123f: JUMPI
00001240: PUSH1 0x00
00001242: DUP1
00001243: REVERT
00001244: JUMPDEST
00001245: PUSH1 0x20
00001247: DUP4
00001248: ADD
00001249: SWAP2
0000124a: POP
0000124b: DUP4
0000124c: PUSH1 0x20
0000124e: DUP3
0000124f: DUP6
00001250: ADD
00001251: ADD
00001252: GT
00001253: ISZERO
00001254: PUSH2 0x1213
00001257: JUMPI
00001258: PUSH1 0x00
0000125a: DUP1
0000125b: REVERT
0000125c: JUMPDEST
0000125d: PUSH1 0x00
0000125f: DUP1
00001260: PUSH1 0x00
00001262: DUP1
00001263: PUSH1 0x00
00001265: DUP1
00001266: PUSH1 0x00
00001268: DUP1
00001269: PUSH1 0xa0
0000126b: DUP10
0000126c: DUP12
0000126d: SUB
0000126e: SLT
0000126f: ISZERO
00001270: PUSH2 0x1278
00001273: JUMPI
00001274: PUSH1 0x00
00001276: DUP1
00001277: REVERT
00001278: JUMPDEST
00001279: DUP9
0000127a: CALLDATALOAD
0000127b: PUSH2 0x1283
0000127e: DUP2
0000127f: PUSH2 0x1152
00001282: JUMP
00001283: JUMPDEST
00001284: SWAP8
00001285: POP
00001286: PUSH1 0x20
00001288: DUP10
00001289: ADD
0000128a: CALLDATALOAD
0000128b: PUSH2 0x1293
0000128e: DUP2
0000128f: PUSH2 0x1152
00001292: JUMP
00001293: JUMPDEST
00001294: SWAP7
00001295: POP
00001296: PUSH1 0x40
00001298: DUP10
00001299: ADD
0000129a: CALLDATALOAD
0000129b: PUSH8 0xffffffffffffffff
000012a4: DUP1
000012a5: DUP3
000012a6: GT
000012a7: ISZERO
000012a8: PUSH2 0x12b0
000012ab: JUMPI
000012ac: PUSH1 0x00
000012ae: DUP1
000012af: REVERT
000012b0: JUMPDEST
000012b1: PUSH2 0x12bc
000012b4: DUP13
000012b5: DUP4
000012b6: DUP14
000012b7: ADD
000012b8: PUSH2 0x11ce
000012bb: JUMP
000012bc: JUMPDEST
000012bd: SWAP1
000012be: SWAP9
000012bf: POP
000012c0: SWAP7
000012c1: POP
000012c2: PUSH1 0x60
000012c4: DUP12
000012c5: ADD
000012c6: CALLDATALOAD
000012c7: SWAP2
000012c8: POP
000012c9: DUP1
000012ca: DUP3
000012cb: GT
000012cc: ISZERO
000012cd: PUSH2 0x12d5
000012d0: JUMPI
000012d1: PUSH1 0x00
000012d3: DUP1
000012d4: REVERT
000012d5: JUMPDEST
000012d6: PUSH2 0x12e1
000012d9: DUP13
000012da: DUP4
000012db: DUP14
000012dc: ADD
000012dd: PUSH2 0x11ce
000012e0: JUMP
000012e1: JUMPDEST
000012e2: SWAP1
000012e3: SWAP7
000012e4: POP
000012e5: SWAP5
000012e6: POP
000012e7: PUSH1 0x80
000012e9: DUP12
000012ea: ADD
000012eb: CALLDATALOAD
000012ec: SWAP2
000012ed: POP
000012ee: DUP1
000012ef: DUP3
000012f0: GT
000012f1: ISZERO
000012f2: PUSH2 0x12fa
000012f5: JUMPI
000012f6: PUSH1 0x00
000012f8: DUP1
000012f9: REVERT
000012fa: JUMPDEST
000012fb: POP
000012fc: PUSH2 0x1307
000012ff: DUP12
00001300: DUP3
00001301: DUP13
00001302: ADD
00001303: PUSH2 0x121a
00001306: JUMP
00001307: JUMPDEST
00001308: SWAP10
00001309: SWAP13
0000130a: SWAP9
0000130b: SWAP12
0000130c: POP
0000130d: SWAP7
0000130e: SWAP10
0000130f: POP
00001310: SWAP5
00001311: SWAP8
00001312: SWAP4
00001313: SWAP7
00001314: SWAP3
00001315: SWAP6
00001316: SWAP5
00001317: POP
00001318: POP
00001319: POP
0000131a: JUMP
0000131b: JUMPDEST
0000131c: PUSH1 0x00
0000131e: DUP1
0000131f: PUSH1 0x00
00001321: DUP1
00001322: PUSH1 0x00
00001324: DUP1
00001325: PUSH1 0xa0
00001327: DUP8
00001328: DUP10
00001329: SUB
0000132a: SLT
0000132b: ISZERO
0000132c: PUSH2 0x1334
0000132f: JUMPI
00001330: PUSH1 0x00
00001332: DUP1
00001333: REVERT
00001334: JUMPDEST
00001335: DUP7
00001336: CALLDATALOAD
00001337: PUSH2 0x133f
0000133a: DUP2
0000133b: PUSH2 0x1152
0000133e: JUMP
0000133f: JUMPDEST
00001340: SWAP6
00001341: POP
00001342: PUSH1 0x20
00001344: DUP8
00001345: ADD
00001346: CALLDATALOAD
00001347: PUSH2 0x134f
0000134a: DUP2
0000134b: PUSH2 0x1152
0000134e: JUMP
0000134f: JUMPDEST
00001350: SWAP5
00001351: POP
00001352: PUSH1 0x40
00001354: DUP8
00001355: ADD
00001356: CALLDATALOAD
00001357: SWAP4
00001358: POP
00001359: PUSH1 0x60
0000135b: DUP8
0000135c: ADD
0000135d: CALLDATALOAD
0000135e: SWAP3
0000135f: POP
00001360: PUSH1 0x80
00001362: DUP8
00001363: ADD
00001364: CALLDATALOAD
00001365: PUSH8 0xffffffffffffffff
0000136e: DUP2
0000136f: GT
00001370: ISZERO
00001371: PUSH2 0x1379
00001374: JUMPI
00001375: PUSH1 0x00
00001377: DUP1
00001378: REVERT
00001379: JUMPDEST
0000137a: PUSH2 0x1385
0000137d: DUP10
0000137e: DUP3
0000137f: DUP11
00001380: ADD
00001381: PUSH2 0x121a
00001384: JUMP
00001385: JUMPDEST
00001386: SWAP8
00001387: SWAP11
00001388: SWAP7
00001389: SWAP10
0000138a: POP
0000138b: SWAP5
0000138c: SWAP8
0000138d: POP
0000138e: SWAP3
0000138f: SWAP6
00001390: SWAP4
00001391: SWAP5
00001392: SWAP3
00001393: POP
00001394: POP
00001395: POP
00001396: JUMP
00001397: JUMPDEST
00001398: PUSH4 0x4e487b71
0000139d: PUSH1 0xe0
0000139f: SHL
000013a0: PUSH1 0x00
000013a2: MSTORE
000013a3: PUSH1 0x11
000013a5: PUSH1 0x04
000013a7: MSTORE
000013a8: PUSH1 0x24
000013aa: PUSH1 0x00
000013ac: REVERT
000013ad: JUMPDEST
000013ae: DUP2
000013af: DUP2
000013b0: SUB
000013b1: DUP2
000013b2: DUP2
000013b3: GT
000013b4: ISZERO
000013b5: PUSH2 0x038d
000013b8: JUMPI
000013b9: PUSH2 0x038d
000013bc: PUSH2 0x1397
000013bf: JUMP
000013c0: JUMPDEST
000013c1: DUP1
000013c2: DUP3
000013c3: MUL
000013c4: DUP2
000013c5: ISZERO
000013c6: DUP3
000013c7: DUP3
000013c8: DIV
000013c9: DUP5
000013ca: EQ
000013cb: OR
000013cc: PUSH2 0x038d
000013cf: JUMPI
000013d0: PUSH2 0x038d
000013d3: PUSH2 0x1397
000013d6: JUMP
000013d7: JUMPDEST
000013d8: PUSH1 0x00
000013da: DUP3
000013db: PUSH2 0x13f4
000013de: JUMPI
000013df: PUSH4 0x4e487b71
000013e4: PUSH1 0xe0
000013e6: SHL
000013e7: PUSH1 0x00
000013e9: MSTORE
000013ea: PUSH1 0x12
000013ec: PUSH1 0x04
000013ee: MSTORE
000013ef: PUSH1 0x24
000013f1: PUSH1 0x00
000013f3: REVERT
000013f4: JUMPDEST
000013f5: POP
000013f6: DIV
000013f7: SWAP1
000013f8: JUMP
000013f9: JUMPDEST
000013fa: DUP1
000013fb: DUP3
000013fc: ADD
000013fd: DUP1
000013fe: DUP3
000013ff: GT
00001400: ISZERO
00001401: PUSH2 0x038d
00001404: JUMPI
00001405: PUSH2 0x038d
00001408: PUSH2 0x1397
0000140b: JUMP
0000140c: JUMPDEST
0000140d: PUSH1 0x00
0000140f: JUMPDEST
00001410: DUP4
00001411: DUP2
00001412: LT
00001413: ISZERO
00001414: PUSH2 0x1427
00001417: JUMPI
00001418: DUP2
00001419: DUP2
0000141a: ADD
0000141b: MLOAD
0000141c: DUP4
0000141d: DUP3
0000141e: ADD
0000141f: MSTORE
00001420: PUSH1 0x20
00001422: ADD
00001423: PUSH2 0x140f
00001426: JUMP
00001427: JUMPDEST
00001428: POP
00001429: POP
0000142a: PUSH1 0x00
0000142c: SWAP2
0000142d: ADD
0000142e: MSTORE
0000142f: JUMP
00001430: JUMPDEST
00001431: PUSH1 0x00
00001433: PUSH1 0x01
00001435: DUP1
00001436: PUSH1 0xa0
00001438: SHL
00001439: SUB
0000143a: DUP1
0000143b: DUP8
0000143c: AND
0000143d: DUP4
0000143e: MSTORE
0000143f: DUP1
00001440: DUP7
00001441: AND
00001442: PUSH1 0x20
00001444: DUP5
00001445: ADD
00001446: MSTORE
00001447: POP
00001448: DUP4
00001449: PUSH1 0x40
0000144b: DUP4
0000144c: ADD
0000144d: MSTORE
0000144e: PUSH1 0x80
00001450: PUSH1 0x60
00001452: DUP4
00001453: ADD
00001454: MSTORE
00001455: DUP3
00001456: MLOAD
00001457: DUP1
00001458: PUSH1 0x80
0000145a: DUP5
0000145b: ADD
0000145c: MSTORE
0000145d: PUSH2 0x146d
00001460: DUP2
00001461: PUSH1 0xa0
00001463: DUP6
00001464: ADD
00001465: PUSH1 0x20
00001467: DUP8
00001468: ADD
00001469: PUSH2 0x140c
0000146c: JUMP
0000146d: JUMPDEST
0000146e: PUSH1 0x1f
00001470: ADD
00001471: PUSH1 0x1f
00001473: NOT
00001474: AND
00001475: SWAP2
00001476: SWAP1
00001477: SWAP2
00001478: ADD
00001479: PUSH1 0xa0
0000147b: ADD
0000147c: SWAP6
0000147d: SWAP5
0000147e: POP
0000147f: POP
00001480: POP
00001481: POP
00001482: POP
00001483: JUMP
00001484: JUMPDEST
00001485: PUSH4 0x4e487b71
0000148a: PUSH1 0xe0
0000148c: SHL
0000148d: PUSH1 0x00
0000148f: MSTORE
00001490: PUSH1 0x32
00001492: PUSH1 0x04
00001494: MSTORE
00001495: PUSH1 0x24
00001497: PUSH1 0x00
00001499: REVERT
0000149a: JUMPDEST
0000149b: PUSH1 0x00
0000149d: DUP3
0000149e: MLOAD
0000149f: PUSH2 0x14ac
000014a2: DUP2
000014a3: DUP5
000014a4: PUSH1 0x20
000014a6: DUP8
000014a7: ADD
000014a8: PUSH2 0x140c
000014ab: JUMP
000014ac: JUMPDEST
000014ad: SWAP2
000014ae: SWAP1
000014af: SWAP2
000014b0: ADD
000014b1: SWAP3
000014b2: SWAP2
000014b3: POP
000014b4: POP
000014b5: JUMP
000014b6: JUMPDEST
000014b7: PUSH1 0x00
000014b9: PUSH1 0x20
000014bb: DUP3
000014bc: DUP5
000014bd: SUB
000014be: SLT
000014bf: ISZERO
000014c0: PUSH2 0x14c8
000014c3: JUMPI
000014c4: PUSH1 0x00
000014c6: DUP1
000014c7: REVERT
000014c8: JUMPDEST
000014c9: POP
000014ca: MLOAD
000014cb: SWAP2
000014cc: SWAP1
000014cd: POP
000014ce: JUMP
000014cf: INVALID
000014d0: LOG2
000014d1: PUSH5 0x6970667358
000014d7: UNKNOWN(0x22)
000014d8: SLT
000014d9: KECCAK256
000014da: UNKNOWN(0xEE)
000014db: CREATE
000014dc: DUP15
000014dd: UNKNOWN(0xB6)
000014de: UNKNOWN(0xB3)
000014df: UNKNOWN(0xBF)
000014e0: UNKNOWN(0x29)
000014e1: CLZ
000014e2: DUP1
000014e3: UNKNOWN(0x4F)
000014e4: UNKNOWN(0xBC)
000014e5: UNKNOWN(0xD4)
000014e6: UNKNOWN(0xDD)
000014e7: UNKNOWN(0xD7)
000014e8: POP
000014e9: UNKNOWN(0xB9)
000014ea: PUSH1 0x13
000014ec: CALLVALUE
000014ed: PUSH23 0x104574bcfc704efad99a325d64736f6c63430008110033

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0xb8ad403352c2488536d92ea9e1cb4ef10bf456d7229755cbeb3eb1f20ff3cfd7
call_targets: 0x49caeb8175dc9db709d4e6299cf8252dddee2738
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xb8ad403352c2488536d92ea9e1cb4ef10bf456d7229755cbeb3eb1f20ff3cfd7",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x49caeb8175dc9db709d4e6299cf8252dddee2738"
    ],
    "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": "0xb0e21e8a",
            "selector": "0xb0e21e8a",
            "calldata_variants": [
                "0xb0e21e8a",
                "0xb0e21e8a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xbc197c81",
            "selector": "0xbc197c81",
            "calldata_variants": [
                "0xbc197c81",
                "0xbc197c810000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe74b981b",
            "selector": "0xe74b981b",
            "calldata_variants": [
                "0xe74b981b",
                "0xe74b981b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf23a6e61",
            "selector": "0xf23a6e61",
            "calldata_variants": [
                "0xf23a6e61",
                "0xf23a6e610000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x85dc1df5",
            "selector": "0x85dc1df5",
            "calldata_variants": [
                "0x85dc1df5",
                "0x85dc1df50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8795cccb",
            "selector": "0x8795cccb",
            "calldata_variants": [
                "0x8795cccb",
                "0x8795cccb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xaefe78db",
            "selector": "0xaefe78db",
            "calldata_variants": [
                "0xaefe78db",
                "0xaefe78db0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x01ffc9a7",
            "selector": "0x01ffc9a7",
            "calldata_variants": [
                "0x01ffc9a7",
                "0x01ffc9a70000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 2038,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2706,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 2,
    "guards_detected": [],
    "untrusted_call_count": 2
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0xb8ad403352c2488536d92ea9e1cb4ef10bf456d7229755cbeb3eb1f20ff3cfd7
call_targets: 0x49caeb8175dc9db709d4e6299cf8252dddee2738
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xb8ad403352c2488536d92ea9e1cb4ef10bf456d7229755cbeb3eb1f20ff3cfd7",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x49caeb8175dc9db709d4e6299cf8252dddee2738"
    ],
    "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": "0xb0e21e8a",
            "selector": "0xb0e21e8a",
            "calldata_variants": [
                "0xb0e21e8a",
                "0xb0e21e8a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xbc197c81",
            "selector": "0xbc197c81",
            "calldata_variants": [
                "0xbc197c81",
                "0xbc197c810000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe74b981b",
            "selector": "0xe74b981b",
            "calldata_variants": [
                "0xe74b981b",
                "0xe74b981b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf23a6e61",
            "selector": "0xf23a6e61",
            "calldata_variants": [
                "0xf23a6e61",
                "0xf23a6e610000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x85dc1df5",
            "selector": "0x85dc1df5",
            "calldata_variants": [
                "0x85dc1df5",
                "0x85dc1df50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8795cccb",
            "selector": "0x8795cccb",
            "calldata_variants": [
                "0x8795cccb",
                "0x8795cccb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xaefe78db",
            "selector": "0xaefe78db",
            "calldata_variants": [
                "0xaefe78db",
                "0xaefe78db0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x01ffc9a7",
            "selector": "0x01ffc9a7",
            "calldata_variants": [
                "0x01ffc9a7",
                "0x01ffc9a70000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 2038,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2706,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 2,
    "guards_detected": []
}
medium other detector CREATE/CREATE2 reachable 45 no no
view
trace_id: 0xe6e46a1c15264de042d59efb5bf4c1bbbee63f21f72e1e169fb9905b271d1783
validation_json
{
    "sink": "CREATE",
    "errors": 0,
    "status": "unknown",
    "attempts": 28,
    "trace_id": "0xe6e46a1c15264de042d59efb5bf4c1bbbee63f21f72e1e169fb9905b271d1783",
    "confirmed": false,
    "trace_mode": "structLogs",
    "call_targets": null,
    "matched_probe": null,
    "target_varies": null,
    "classification": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xb0e21e8a",
            "selector": "0xb0e21e8a",
            "calldata_variants": [
                "0xb0e21e8a",
                "0xb0e21e8a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xbc197c81",
            "selector": "0xbc197c81",
            "calldata_variants": [
                "0xbc197c81",
                "0xbc197c810000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe74b981b",
            "selector": "0xe74b981b",
            "calldata_variants": [
                "0xe74b981b",
                "0xe74b981b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf23a6e61",
            "selector": "0xf23a6e61",
            "calldata_variants": [
                "0xf23a6e61",
                "0xf23a6e610000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x85dc1df5",
            "selector": "0x85dc1df5",
            "calldata_variants": [
                "0x85dc1df5",
                "0x85dc1df50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8795cccb",
            "selector": "0x8795cccb",
            "calldata_variants": [
                "0x8795cccb",
                "0x8795cccb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xaefe78db",
            "selector": "0xaefe78db",
            "calldata_variants": [
                "0xaefe78db",
                "0xaefe78db0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x01ffc9a7",
            "selector": "0x01ffc9a7",
            "calldata_variants": [
                "0x01ffc9a7",
                "0x01ffc9a70000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "create_count": 1,
    "create2_count": 0
}
low other cast Contract creation opcode present 60 no
view
evidence_json
{
    "notes": "runtime can deploy contracts dynamically via CREATE/CREATE2",
    "create_count": 1,
    "create2_count": 0
}