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

Analysis Run

019bb50b-e15a-7115-8d01-ea31f8f1f81c

complete
Chain ID
1
Address
Block Number
Created
Tue, Jan 13, 2026 1:50 AM
Review Summary

What survived the funnel

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

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

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
40373 artifact.fetch complete 1 / 3 3 months ago
40374 proxy.resolve complete 1 / 3 3 months ago
40375 tool.cast_disasm complete 1 / 3 3 months ago
40376 analysis.bundle complete 1 / 3 3 months ago
40377 capability.graph complete 1 / 3 3 months ago
40378 detector.run complete 1 / 3 3 months ago
40379 validation.fork complete 1 / 3 3 months ago
40490 report.consolidate complete 1 / 6 3 months ago

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 6
Findings
1
No findings?
no
Summary
Bytecode analysis shows a single CALL site (pc:0x1fd7/8151) that may transfer ETH. Validation suggests the target is the contract itself, so impact is uncertain but could allow self-reentrancy or unchecked failure if return data is not handled.
View stdout
{"no_findings":false,"summary":"Bytecode analysis shows a single CALL site (pc:0x1fd7/8151) that may transfer ETH. Validation suggests the target is the contract itself, so impact is uncertain but could allow self-reentrancy or unchecked failure if return data is not handled.","findings":[{"severity":"low","category":"reentrancy","title":"Self-CALL with value enables potential reentrancy via fallback/other entrypoints","exploit_scenario":"If the CALL at pc 8151 is used to invoke the contract itself (validation suggests constant target 0x25ab… which matches the contract address), execution can re-enter via fallback/receive or other selectors with msg.sender == address(this). If state updates occur after this call or privileged logic trusts msg.sender, the self-reentrancy path could bypass assumptions or create unexpected state transitions. Evidence is limited to bytecode, so this is a conservative risk.","recommendation":"Prefer internal function calls over external CALL to self. If external CALL is required, add explicit reentrancy protection and ensure state is updated before the call. Also validate return data and handle failure paths explicitly.","evidence":"Detector shows a CALL at pc 8151 with computed target/value and returndata_checked=null. Validation indicates constant target 0x25ab5a… (contract address) and sink reached.","locations":["pc:0x1fd7"]}]}
View stderr
OpenAI Codex v0.77.0 (research preview)
--------
workdir: /tmp/codex-tjhqnwyn
model: gpt-5.2-codex
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: auto
session id: 019bb528-9914-7322-bdae-31871e834118
--------
user
You are a security auditor. You ONLY have runtime bytecode + analysis artifacts.
You MUST read `BYTECODE_BUNDLE.json` before concluding; it contains the bytecode summary,
evidence bundle, callsites, storage slots, and detector findings.

Special cases when reasoning from bytecode (be explicit about uncertainty):
- Selector inference is best-effort; missing selectors are common.
- Fallback/receive paths may be the only entrypoints.
- CALL vs DELEGATECALL semantics differ; DELEGATECALL executes in caller storage.
- Proxy patterns (EIP-1967, minimal proxies, beacon) change which storage is authoritative.
- Storage slots are raw; mappings/arrays appear via keccak patterns, names are unknown.
- Guard detection is heuristic; absence of guards does NOT mean unguarded.
- Returndata checking is unknown unless explicitly shown in evidence.
- Precompiles (0x1..0x9) and common ERC20 transfer selectors may appear; do not over-claim.

Output MUST be valid JSON matching the provided schema.
- If you find nothing meaningful: set no_findings=true and findings=[].
- Otherwise: set no_findings=false and include findings with severity/category/title.
- Locations can be pc references like "pc:0x123" or selectors like "selector:0xa9059cbb".

Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation,
accounting/invariant breaks, dangerous delegatecall, and untrusted external calls.
Be conservative: if evidence is weak, mark severity low/medium and explain why.
mcp startup: no servers

thinking
**Reading BYTECODE_BUNDLE file**
exec
/bin/bash -lc ls in /tmp/codex-tjhqnwyn succeeded in 5ms:
BYTECODE_BUNDLE.json
codex-output-schema.json
exec
/bin/bash -lc 'cat BYTECODE_BUNDLE.json' in /tmp/codex-tjhqnwyn succeeded in 12ms:
{
  "analysis_artifact": {
    "address": "0x25ab5aa1462f02edb00bdebe32e7432a30a76937",
    "artifact_hash": "0x2c2857969d38d489a54c1db5ce0e0347379e74129de5694b78772639672f9f49",
    "artifact_json": {
      "auth": {
        "guards": [
          {
            "pc": 2169,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
          },
          {
            "pc": 3497,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
          },
          {
            "pc": 5617,
            "type": "msg_sender_eq_const",

thinking
**Analyzing low-severity CALL to self**
codex
{"no_findings":false,"summary":"Bytecode analysis shows a single CALL site (pc:0x1fd7/8151) that may transfer ETH. Validation suggests the target is the contract itself, so impact is uncertain but could allow self-reentrancy or unchecked failure if return data is not handled.","findings":[{"severity":"low","category":"reentrancy","title":"Self-CALL with value enables potential reentrancy via fallback/other entrypoints","exploit_scenario":"If the CALL at pc 8151 is used to invoke the contract itself (validation suggests constant target 0x25ab… which matches the contract address), execution can re-enter via fallback/receive or other selectors with msg.sender == address(this). If state updates occur after this call or privileged logic trusts msg.sender, the self-reentrancy path could bypass assumptions or create unexpected state transitions. Evidence is limited to bytecode, so this is a conservative risk.","recommendation":"Prefer internal function calls over external CALL to self. If external CALL is required, add explicit reentrancy protection and ensure state is updated before the call. Also validate return data and handle failure paths explicitly.","evidence":"Detector shows a CALL at pc 8151 with computed target/value and returndata_checked=null. Validation indicates constant target 0x25ab5a… (contract address) and sink reached.","locations":["pc:0x1fd7"]}]}
tokens used
28,966
Metadata
{
    "codex": {
        "ran_at": "2026-01-13T02:22:13.525098+00:00",
        "returncode": 0
    },
    "project": {
        "mode": "bytecode",
        "bytecode_length": 17012,
        "bytecode_truncated": false,
        "capability_graph_present": true,
        "analysis_artifact_present": true
    },
    "summary": "Bytecode analysis shows a single CALL site (pc:0x1fd7/8151) that may transfer ETH. Validation suggests the target is the contract itself, so impact is uncertain but could allow self-reentrancy or unchecked failure if return data is not handled.",
    "raw_final": {
        "summary": "Bytecode analysis shows a single CALL site (pc:0x1fd7/8151) that may transfer ETH. Validation suggests the target is the contract itself, so impact is uncertain but could allow self-reentrancy or unchecked failure if return data is not handled.",
        "findings": [
            {
                "title": "Self-CALL with value enables potential reentrancy via fallback/other entrypoints",
                "category": "reentrancy",
                "evidence": "Detector shows a CALL at pc 8151 with computed target/value and returndata_checked=null. Validation indicates constant target 0x25ab5a\u2026 (contract address) and sink reached.",
                "severity": "low",
                "locations": [
                    "pc:0x1fd7"
                ],
                "recommendation": "Prefer internal function calls over external CALL to self. If external CALL is required, add explicit reentrancy protection and ensure state is updated before the call. Also validate return data and handle failure paths explicitly.",
                "exploit_scenario": "If the CALL at pc 8151 is used to invoke the contract itself (validation suggests constant target 0x25ab\u2026 which matches the contract address), execution can re-enter via fallback/receive or other selectors with msg.sender == address(this). If state updates occur after this call or privileged logic trusts msg.sender, the self-reentrancy path could bypass assumptions or create unexpected state transitions. Evidence is limited to bytecode, so this is a conservative risk."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
1
EXT*/BALANCE
0
Total opcodes
4778
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x60
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLDATASIZE
00000006: ISZERO
00000007: PUSH2 0x011b
0000000a: JUMPI
0000000b: PUSH1 0x00
0000000d: CALLDATALOAD
0000000e: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
0000002c: SWAP1
0000002d: DIV
0000002e: PUSH4 0xffffffff
00000033: AND
00000034: DUP1
00000035: PUSH4 0x025e7c27
0000003a: EQ
0000003b: PUSH2 0x0177
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0x173825d9
00000045: EQ
00000046: PUSH2 0x01da
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0x20ea8d86
00000050: EQ
00000051: PUSH2 0x0213
00000054: JUMPI
00000055: DUP1
00000056: PUSH4 0x2f54bf6e
0000005b: EQ
0000005c: PUSH2 0x0236
0000005f: JUMPI
00000060: DUP1
00000061: PUSH4 0x3411c81c
00000066: EQ
00000067: PUSH2 0x0287
0000006a: JUMPI
0000006b: DUP1
0000006c: PUSH4 0x54741525
00000071: EQ
00000072: PUSH2 0x02e1
00000075: JUMPI
00000076: DUP1
00000077: PUSH4 0x7065cb48
0000007c: EQ
0000007d: PUSH2 0x0325
00000080: JUMPI
00000081: DUP1
00000082: PUSH4 0x784547a7
00000087: EQ
00000088: PUSH2 0x035e
0000008b: JUMPI
0000008c: DUP1
0000008d: PUSH4 0x8b51d13f
00000092: EQ
00000093: PUSH2 0x0399
00000096: JUMPI
00000097: DUP1
00000098: PUSH4 0x9ace38c2
0000009d: EQ
0000009e: PUSH2 0x03d0
000000a1: JUMPI
000000a2: DUP1
000000a3: PUSH4 0xa0e67e2b
000000a8: EQ
000000a9: PUSH2 0x04ce
000000ac: JUMPI
000000ad: DUP1
000000ae: PUSH4 0xa8abe69a
000000b3: EQ
000000b4: PUSH2 0x0539
000000b7: JUMPI
000000b8: DUP1
000000b9: PUSH4 0xb5dc40c3
000000be: EQ
000000bf: PUSH2 0x05d1
000000c2: JUMPI
000000c3: DUP1
000000c4: PUSH4 0xb77bf600
000000c9: EQ
000000ca: PUSH2 0x064a
000000cd: JUMPI
000000ce: DUP1
000000cf: PUSH4 0xba51a6df
000000d4: EQ
000000d5: PUSH2 0x0673
000000d8: JUMPI
000000d9: DUP1
000000da: PUSH4 0xc01a8c84
000000df: EQ
000000e0: PUSH2 0x0696
000000e3: JUMPI
000000e4: DUP1
000000e5: PUSH4 0xc6427474
000000ea: EQ
000000eb: PUSH2 0x06b9
000000ee: JUMPI
000000ef: DUP1
000000f0: PUSH4 0xd74f8edd
000000f5: EQ
000000f6: PUSH2 0x0752
000000f9: JUMPI
000000fa: DUP1
000000fb: PUSH4 0xdc8452cd
00000100: EQ
00000101: PUSH2 0x077b
00000104: JUMPI
00000105: DUP1
00000106: PUSH4 0xe20056e6
0000010b: EQ
0000010c: PUSH2 0x07a4
0000010f: JUMPI
00000110: DUP1
00000111: PUSH4 0xee22610b
00000116: EQ
00000117: PUSH2 0x07fc
0000011a: JUMPI
0000011b: JUMPDEST
0000011c: JUMPDEST
0000011d: PUSH1 0x00
0000011f: CALLVALUE
00000120: GT
00000121: ISZERO
00000122: PUSH2 0x0174
00000125: JUMPI
00000126: CALLER
00000127: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000013c: AND
0000013d: PUSH32 0xe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c
0000015e: CALLVALUE
0000015f: PUSH1 0x40
00000161: MLOAD
00000162: DUP1
00000163: DUP3
00000164: DUP2
00000165: MSTORE
00000166: PUSH1 0x20
00000168: ADD
00000169: SWAP2
0000016a: POP
0000016b: POP
0000016c: PUSH1 0x40
0000016e: MLOAD
0000016f: DUP1
00000170: SWAP2
00000171: SUB
00000172: SWAP1
00000173: LOG2
00000174: JUMPDEST
00000175: JUMPDEST
00000176: STOP
00000177: JUMPDEST
00000178: CALLVALUE
00000179: ISZERO
0000017a: PUSH2 0x0182
0000017d: JUMPI
0000017e: PUSH1 0x00
00000180: DUP1
00000181: REVERT
00000182: JUMPDEST
00000183: PUSH2 0x0198
00000186: PUSH1 0x04
00000188: DUP1
00000189: DUP1
0000018a: CALLDATALOAD
0000018b: SWAP1
0000018c: PUSH1 0x20
0000018e: ADD
0000018f: SWAP1
00000190: SWAP2
00000191: SWAP1
00000192: POP
00000193: POP
00000194: PUSH2 0x081f
00000197: JUMP
00000198: JUMPDEST
00000199: PUSH1 0x40
0000019b: MLOAD
0000019c: DUP1
0000019d: DUP3
0000019e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001b3: AND
000001b4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001c9: AND
000001ca: DUP2
000001cb: MSTORE
000001cc: PUSH1 0x20
000001ce: ADD
000001cf: SWAP2
000001d0: POP
000001d1: POP
000001d2: PUSH1 0x40
000001d4: MLOAD
000001d5: DUP1
000001d6: SWAP2
000001d7: SUB
000001d8: SWAP1
000001d9: RETURN
000001da: JUMPDEST
000001db: CALLVALUE
000001dc: ISZERO
000001dd: PUSH2 0x01e5
000001e0: JUMPI
000001e1: PUSH1 0x00
000001e3: DUP1
000001e4: REVERT
000001e5: JUMPDEST
000001e6: PUSH2 0x0211
000001e9: PUSH1 0x04
000001eb: DUP1
000001ec: DUP1
000001ed: CALLDATALOAD
000001ee: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000203: AND
00000204: SWAP1
00000205: PUSH1 0x20
00000207: ADD
00000208: SWAP1
00000209: SWAP2
0000020a: SWAP1
0000020b: POP
0000020c: POP
0000020d: PUSH2 0x085f
00000210: JUMP
00000211: JUMPDEST
00000212: STOP
00000213: JUMPDEST
00000214: CALLVALUE
00000215: ISZERO
00000216: PUSH2 0x021e
00000219: JUMPI
0000021a: PUSH1 0x00
0000021c: DUP1
0000021d: REVERT
0000021e: JUMPDEST
0000021f: PUSH2 0x0234
00000222: PUSH1 0x04
00000224: DUP1
00000225: DUP1
00000226: CALLDATALOAD
00000227: SWAP1
00000228: PUSH1 0x20
0000022a: ADD
0000022b: SWAP1
0000022c: SWAP2
0000022d: SWAP1
0000022e: POP
0000022f: POP
00000230: PUSH2 0x0b02
00000233: JUMP
00000234: JUMPDEST
00000235: STOP
00000236: JUMPDEST
00000237: CALLVALUE
00000238: ISZERO
00000239: PUSH2 0x0241
0000023c: JUMPI
0000023d: PUSH1 0x00
0000023f: DUP1
00000240: REVERT
00000241: JUMPDEST
00000242: PUSH2 0x026d
00000245: PUSH1 0x04
00000247: DUP1
00000248: DUP1
00000249: CALLDATALOAD
0000024a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000025f: AND
00000260: SWAP1
00000261: PUSH1 0x20
00000263: ADD
00000264: SWAP1
00000265: SWAP2
00000266: SWAP1
00000267: POP
00000268: POP
00000269: PUSH2 0x0cae
0000026c: JUMP
0000026d: JUMPDEST
0000026e: PUSH1 0x40
00000270: MLOAD
00000271: DUP1
00000272: DUP3
00000273: ISZERO
00000274: ISZERO
00000275: ISZERO
00000276: ISZERO
00000277: DUP2
00000278: MSTORE
00000279: PUSH1 0x20
0000027b: ADD
0000027c: SWAP2
0000027d: POP
0000027e: POP
0000027f: PUSH1 0x40
00000281: MLOAD
00000282: DUP1
00000283: SWAP2
00000284: SUB
00000285: SWAP1
00000286: RETURN
00000287: JUMPDEST
00000288: CALLVALUE
00000289: ISZERO
0000028a: PUSH2 0x0292
0000028d: JUMPI
0000028e: PUSH1 0x00
00000290: DUP1
00000291: REVERT
00000292: JUMPDEST
00000293: PUSH2 0x02c7
00000296: PUSH1 0x04
00000298: DUP1
00000299: DUP1
0000029a: CALLDATALOAD
0000029b: SWAP1
0000029c: PUSH1 0x20
0000029e: ADD
0000029f: SWAP1
000002a0: SWAP2
000002a1: SWAP1
000002a2: DUP1
000002a3: CALLDATALOAD
000002a4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000002b9: AND
000002ba: SWAP1
000002bb: PUSH1 0x20
000002bd: ADD
000002be: SWAP1
000002bf: SWAP2
000002c0: SWAP1
000002c1: POP
000002c2: POP
000002c3: PUSH2 0x0cce
000002c6: JUMP
000002c7: JUMPDEST
000002c8: PUSH1 0x40
000002ca: MLOAD
000002cb: DUP1
000002cc: DUP3
000002cd: ISZERO
000002ce: ISZERO
000002cf: ISZERO
000002d0: ISZERO
000002d1: DUP2
000002d2: MSTORE
000002d3: PUSH1 0x20
000002d5: ADD
000002d6: SWAP2
000002d7: POP
000002d8: POP
000002d9: PUSH1 0x40
000002db: MLOAD
000002dc: DUP1
000002dd: SWAP2
000002de: SUB
000002df: SWAP1
000002e0: RETURN
000002e1: JUMPDEST
000002e2: CALLVALUE
000002e3: ISZERO
000002e4: PUSH2 0x02ec
000002e7: JUMPI
000002e8: PUSH1 0x00
000002ea: DUP1
000002eb: REVERT
000002ec: JUMPDEST
000002ed: PUSH2 0x030f
000002f0: PUSH1 0x04
000002f2: DUP1
000002f3: DUP1
000002f4: CALLDATALOAD
000002f5: ISZERO
000002f6: ISZERO
000002f7: SWAP1
000002f8: PUSH1 0x20
000002fa: ADD
000002fb: SWAP1
000002fc: SWAP2
000002fd: SWAP1
000002fe: DUP1
000002ff: CALLDATALOAD
00000300: ISZERO
00000301: ISZERO
00000302: SWAP1
00000303: PUSH1 0x20
00000305: ADD
00000306: SWAP1
00000307: SWAP2
00000308: SWAP1
00000309: POP
0000030a: POP
0000030b: PUSH2 0x0cfd
0000030e: JUMP
0000030f: JUMPDEST
00000310: PUSH1 0x40
00000312: MLOAD
00000313: DUP1
00000314: DUP3
00000315: DUP2
00000316: MSTORE
00000317: PUSH1 0x20
00000319: ADD
0000031a: SWAP2
0000031b: POP
0000031c: POP
0000031d: PUSH1 0x40
0000031f: MLOAD
00000320: DUP1
00000321: SWAP2
00000322: SUB
00000323: SWAP1
00000324: RETURN
00000325: JUMPDEST
00000326: CALLVALUE
00000327: ISZERO
00000328: PUSH2 0x0330
0000032b: JUMPI
0000032c: PUSH1 0x00
0000032e: DUP1
0000032f: REVERT
00000330: JUMPDEST
00000331: PUSH2 0x035c
00000334: PUSH1 0x04
00000336: DUP1
00000337: DUP1
00000338: CALLDATALOAD
00000339: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000034e: AND
0000034f: SWAP1
00000350: PUSH1 0x20
00000352: ADD
00000353: SWAP1
00000354: SWAP2
00000355: SWAP1
00000356: POP
00000357: POP
00000358: PUSH2 0x0d91
0000035b: JUMP
0000035c: JUMPDEST
0000035d: STOP
0000035e: JUMPDEST
0000035f: CALLVALUE
00000360: ISZERO
00000361: PUSH2 0x0369
00000364: JUMPI
00000365: PUSH1 0x00
00000367: DUP1
00000368: REVERT
00000369: JUMPDEST
0000036a: PUSH2 0x037f
0000036d: PUSH1 0x04
0000036f: DUP1
00000370: DUP1
00000371: CALLDATALOAD
00000372: SWAP1
00000373: PUSH1 0x20
00000375: ADD
00000376: SWAP1
00000377: SWAP2
00000378: SWAP1
00000379: POP
0000037a: POP
0000037b: PUSH2 0x0f99
0000037e: JUMP
0000037f: JUMPDEST
00000380: PUSH1 0x40
00000382: MLOAD
00000383: DUP1
00000384: DUP3
00000385: ISZERO
00000386: ISZERO
00000387: ISZERO
00000388: ISZERO
00000389: DUP2
0000038a: MSTORE
0000038b: PUSH1 0x20
0000038d: ADD
0000038e: SWAP2
0000038f: POP
00000390: POP
00000391: PUSH1 0x40
00000393: MLOAD
00000394: DUP1
00000395: SWAP2
00000396: SUB
00000397: SWAP1
00000398: RETURN
00000399: JUMPDEST
0000039a: CALLVALUE
0000039b: ISZERO
0000039c: PUSH2 0x03a4
0000039f: JUMPI
000003a0: PUSH1 0x00
000003a2: DUP1
000003a3: REVERT
000003a4: JUMPDEST
000003a5: PUSH2 0x03ba
000003a8: PUSH1 0x04
000003aa: DUP1
000003ab: DUP1
000003ac: CALLDATALOAD
000003ad: SWAP1
000003ae: PUSH1 0x20
000003b0: ADD
000003b1: SWAP1
000003b2: SWAP2
000003b3: SWAP1
000003b4: POP
000003b5: POP
000003b6: PUSH2 0x1081
000003b9: JUMP
000003ba: JUMPDEST
000003bb: PUSH1 0x40
000003bd: MLOAD
000003be: DUP1
000003bf: DUP3
000003c0: DUP2
000003c1: MSTORE
000003c2: PUSH1 0x20
000003c4: ADD
000003c5: SWAP2
000003c6: POP
000003c7: POP
000003c8: PUSH1 0x40
000003ca: MLOAD
000003cb: DUP1
000003cc: SWAP2
000003cd: SUB
000003ce: SWAP1
000003cf: RETURN
000003d0: JUMPDEST
000003d1: CALLVALUE
000003d2: ISZERO
000003d3: PUSH2 0x03db
000003d6: JUMPI
000003d7: PUSH1 0x00
000003d9: DUP1
000003da: REVERT
000003db: JUMPDEST
000003dc: PUSH2 0x03f1
000003df: PUSH1 0x04
000003e1: DUP1
000003e2: DUP1
000003e3: CALLDATALOAD
000003e4: SWAP1
000003e5: PUSH1 0x20
000003e7: ADD
000003e8: SWAP1
000003e9: SWAP2
000003ea: SWAP1
000003eb: POP
000003ec: POP
000003ed: PUSH2 0x1150
000003f0: JUMP
000003f1: JUMPDEST
000003f2: PUSH1 0x40
000003f4: MLOAD
000003f5: DUP1
000003f6: DUP6
000003f7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000040c: AND
0000040d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000422: AND
00000423: DUP2
00000424: MSTORE
00000425: PUSH1 0x20
00000427: ADD
00000428: DUP5
00000429: DUP2
0000042a: MSTORE
0000042b: PUSH1 0x20
0000042d: ADD
0000042e: DUP1
0000042f: PUSH1 0x20
00000431: ADD
00000432: DUP4
00000433: ISZERO
00000434: ISZERO
00000435: ISZERO
00000436: ISZERO
00000437: DUP2
00000438: MSTORE
00000439: PUSH1 0x20
0000043b: ADD
0000043c: DUP3
0000043d: DUP2
0000043e: SUB
0000043f: DUP3
00000440: MSTORE
00000441: DUP5
00000442: DUP2
00000443: DUP2
00000444: SLOAD
00000445: PUSH1 0x01
00000447: DUP2
00000448: PUSH1 0x01
0000044a: AND
0000044b: ISZERO
0000044c: PUSH2 0x0100
0000044f: MUL
00000450: SUB
00000451: AND
00000452: PUSH1 0x02
00000454: SWAP1
00000455: DIV
00000456: DUP2
00000457: MSTORE
00000458: PUSH1 0x20
0000045a: ADD
0000045b: SWAP2
0000045c: POP
0000045d: DUP1
0000045e: SLOAD
0000045f: PUSH1 0x01
00000461: DUP2
00000462: PUSH1 0x01
00000464: AND
00000465: ISZERO
00000466: PUSH2 0x0100
00000469: MUL
0000046a: SUB
0000046b: AND
0000046c: PUSH1 0x02
0000046e: SWAP1
0000046f: DIV
00000470: DUP1
00000471: ISZERO
00000472: PUSH2 0x04bc
00000475: JUMPI
00000476: DUP1
00000477: PUSH1 0x1f
00000479: LT
0000047a: PUSH2 0x0491
0000047d: JUMPI
0000047e: PUSH2 0x0100
00000481: DUP1
00000482: DUP4
00000483: SLOAD
00000484: DIV
00000485: MUL
00000486: DUP4
00000487: MSTORE
00000488: SWAP2
00000489: PUSH1 0x20
0000048b: ADD
0000048c: SWAP2
0000048d: PUSH2 0x04bc
00000490: JUMP
00000491: JUMPDEST
00000492: DUP3
00000493: ADD
00000494: SWAP2
00000495: SWAP1
00000496: PUSH1 0x00
00000498: MSTORE
00000499: PUSH1 0x20
0000049b: PUSH1 0x00
0000049d: KECCAK256
0000049e: SWAP1
0000049f: JUMPDEST
000004a0: DUP2
000004a1: SLOAD
000004a2: DUP2
000004a3: MSTORE
000004a4: SWAP1
000004a5: PUSH1 0x01
000004a7: ADD
000004a8: SWAP1
000004a9: PUSH1 0x20
000004ab: ADD
000004ac: DUP1
000004ad: DUP4
000004ae: GT
000004af: PUSH2 0x049f
000004b2: JUMPI
000004b3: DUP3
000004b4: SWAP1
000004b5: SUB
000004b6: PUSH1 0x1f
000004b8: AND
000004b9: DUP3
000004ba: ADD
000004bb: SWAP2
000004bc: JUMPDEST
000004bd: POP
000004be: POP
000004bf: SWAP6
000004c0: POP
000004c1: POP
000004c2: POP
000004c3: POP
000004c4: POP
000004c5: POP
000004c6: PUSH1 0x40
000004c8: MLOAD
000004c9: DUP1
000004ca: SWAP2
000004cb: SUB
000004cc: SWAP1
000004cd: RETURN
000004ce: JUMPDEST
000004cf: CALLVALUE
000004d0: ISZERO
000004d1: PUSH2 0x04d9
000004d4: JUMPI
000004d5: PUSH1 0x00
000004d7: DUP1
000004d8: REVERT
000004d9: JUMPDEST
000004da: PUSH2 0x04e1
000004dd: PUSH2 0x11ac
000004e0: JUMP
000004e1: JUMPDEST
000004e2: PUSH1 0x40
000004e4: MLOAD
000004e5: DUP1
000004e6: DUP1
000004e7: PUSH1 0x20
000004e9: ADD
000004ea: DUP3
000004eb: DUP2
000004ec: SUB
000004ed: DUP3
000004ee: MSTORE
000004ef: DUP4
000004f0: DUP2
000004f1: DUP2
000004f2: MLOAD
000004f3: DUP2
000004f4: MSTORE
000004f5: PUSH1 0x20
000004f7: ADD
000004f8: SWAP2
000004f9: POP
000004fa: DUP1
000004fb: MLOAD
000004fc: SWAP1
000004fd: PUSH1 0x20
000004ff: ADD
00000500: SWAP1
00000501: PUSH1 0x20
00000503: MUL
00000504: DUP1
00000505: DUP4
00000506: DUP4
00000507: PUSH1 0x00
00000509: JUMPDEST
0000050a: DUP4
0000050b: DUP2
0000050c: LT
0000050d: ISZERO
0000050e: PUSH2 0x0525
00000511: JUMPI
00000512: DUP1
00000513: DUP3
00000514: ADD
00000515: MLOAD
00000516: DUP2
00000517: DUP5
00000518: ADD
00000519: MSTORE
0000051a: JUMPDEST
0000051b: PUSH1 0x20
0000051d: DUP2
0000051e: ADD
0000051f: SWAP1
00000520: POP
00000521: PUSH2 0x0509
00000524: JUMP
00000525: JUMPDEST
00000526: POP
00000527: POP
00000528: POP
00000529: POP
0000052a: SWAP1
0000052b: POP
0000052c: ADD
0000052d: SWAP3
0000052e: POP
0000052f: POP
00000530: POP
00000531: PUSH1 0x40
00000533: MLOAD
00000534: DUP1
00000535: SWAP2
00000536: SUB
00000537: SWAP1
00000538: RETURN
00000539: JUMPDEST
0000053a: CALLVALUE
0000053b: ISZERO
0000053c: PUSH2 0x0544
0000053f: JUMPI
00000540: PUSH1 0x00
00000542: DUP1
00000543: REVERT
00000544: JUMPDEST
00000545: PUSH2 0x0579
00000548: PUSH1 0x04
0000054a: DUP1
0000054b: DUP1
0000054c: CALLDATALOAD
0000054d: SWAP1
0000054e: PUSH1 0x20
00000550: ADD
00000551: SWAP1
00000552: SWAP2
00000553: SWAP1
00000554: DUP1
00000555: CALLDATALOAD
00000556: SWAP1
00000557: PUSH1 0x20
00000559: ADD
0000055a: SWAP1
0000055b: SWAP2
0000055c: SWAP1
0000055d: DUP1
0000055e: CALLDATALOAD
0000055f: ISZERO
00000560: ISZERO
00000561: SWAP1
00000562: PUSH1 0x20
00000564: ADD
00000565: SWAP1
00000566: SWAP2
00000567: SWAP1
00000568: DUP1
00000569: CALLDATALOAD
0000056a: ISZERO
0000056b: ISZERO
0000056c: SWAP1
0000056d: PUSH1 0x20
0000056f: ADD
00000570: SWAP1
00000571: SWAP2
00000572: SWAP1
00000573: POP
00000574: POP
00000575: PUSH2 0x1241
00000578: JUMP
00000579: JUMPDEST
0000057a: PUSH1 0x40
0000057c: MLOAD
0000057d: DUP1
0000057e: DUP1
0000057f: PUSH1 0x20
00000581: ADD
00000582: DUP3
00000583: DUP2
00000584: SUB
00000585: DUP3
00000586: MSTORE
00000587: DUP4
00000588: DUP2
00000589: DUP2
0000058a: MLOAD
0000058b: DUP2
0000058c: MSTORE
0000058d: PUSH1 0x20
0000058f: ADD
00000590: SWAP2
00000591: POP
00000592: DUP1
00000593: MLOAD
00000594: SWAP1
00000595: PUSH1 0x20
00000597: ADD
00000598: SWAP1
00000599: PUSH1 0x20
0000059b: MUL
0000059c: DUP1
0000059d: DUP4
0000059e: DUP4
0000059f: PUSH1 0x00
000005a1: JUMPDEST
000005a2: DUP4
000005a3: DUP2
000005a4: LT
000005a5: ISZERO
000005a6: PUSH2 0x05bd
000005a9: JUMPI
000005aa: DUP1
000005ab: DUP3
000005ac: ADD
000005ad: MLOAD
000005ae: DUP2
000005af: DUP5
000005b0: ADD
000005b1: MSTORE
000005b2: JUMPDEST
000005b3: PUSH1 0x20
000005b5: DUP2
000005b6: ADD
000005b7: SWAP1
000005b8: POP
000005b9: PUSH2 0x05a1
000005bc: JUMP
000005bd: JUMPDEST
000005be: POP
000005bf: POP
000005c0: POP
000005c1: POP
000005c2: SWAP1
000005c3: POP
000005c4: ADD
000005c5: SWAP3
000005c6: POP
000005c7: POP
000005c8: POP
000005c9: PUSH1 0x40
000005cb: MLOAD
000005cc: DUP1
000005cd: SWAP2
000005ce: SUB
000005cf: SWAP1
000005d0: RETURN
000005d1: JUMPDEST
000005d2: CALLVALUE
000005d3: ISZERO
000005d4: PUSH2 0x05dc
000005d7: JUMPI
000005d8: PUSH1 0x00
000005da: DUP1
000005db: REVERT
000005dc: JUMPDEST
000005dd: PUSH2 0x05f2
000005e0: PUSH1 0x04
000005e2: DUP1
000005e3: DUP1
000005e4: CALLDATALOAD
000005e5: SWAP1
000005e6: PUSH1 0x20
000005e8: ADD
000005e9: SWAP1
000005ea: SWAP2
000005eb: SWAP1
000005ec: POP
000005ed: POP
000005ee: PUSH2 0x13a2
000005f1: JUMP
000005f2: JUMPDEST
000005f3: PUSH1 0x40
000005f5: MLOAD
000005f6: DUP1
000005f7: DUP1
000005f8: PUSH1 0x20
000005fa: ADD
000005fb: DUP3
000005fc: DUP2
000005fd: SUB
000005fe: DUP3
000005ff: MSTORE
00000600: DUP4
00000601: DUP2
00000602: DUP2
00000603: MLOAD
00000604: DUP2
00000605: MSTORE
00000606: PUSH1 0x20
00000608: ADD
00000609: SWAP2
0000060a: POP
0000060b: DUP1
0000060c: MLOAD
0000060d: SWAP1
0000060e: PUSH1 0x20
00000610: ADD
00000611: SWAP1
00000612: PUSH1 0x20
00000614: MUL
00000615: DUP1
00000616: DUP4
00000617: DUP4
00000618: PUSH1 0x00
0000061a: JUMPDEST
0000061b: DUP4
0000061c: DUP2
0000061d: LT
0000061e: ISZERO
0000061f: PUSH2 0x0636
00000622: JUMPI
00000623: DUP1
00000624: DUP3
00000625: ADD
00000626: MLOAD
00000627: DUP2
00000628: DUP5
00000629: ADD
0000062a: MSTORE
0000062b: JUMPDEST
0000062c: PUSH1 0x20
0000062e: DUP2
0000062f: ADD
00000630: SWAP1
00000631: POP
00000632: PUSH2 0x061a
00000635: JUMP
00000636: JUMPDEST
00000637: POP
00000638: POP
00000639: POP
0000063a: POP
0000063b: SWAP1
0000063c: POP
0000063d: ADD
0000063e: SWAP3
0000063f: POP
00000640: POP
00000641: POP
00000642: PUSH1 0x40
00000644: MLOAD
00000645: DUP1
00000646: SWAP2
00000647: SUB
00000648: SWAP1
00000649: RETURN
0000064a: JUMPDEST
0000064b: CALLVALUE
0000064c: ISZERO
0000064d: PUSH2 0x0655
00000650: JUMPI
00000651: PUSH1 0x00
00000653: DUP1
00000654: REVERT
00000655: JUMPDEST
00000656: PUSH2 0x065d
00000659: PUSH2 0x15d3
0000065c: JUMP
0000065d: JUMPDEST
0000065e: PUSH1 0x40
00000660: MLOAD
00000661: DUP1
00000662: DUP3
00000663: DUP2
00000664: MSTORE
00000665: PUSH1 0x20
00000667: ADD
00000668: SWAP2
00000669: POP
0000066a: POP
0000066b: PUSH1 0x40
0000066d: MLOAD
0000066e: DUP1
0000066f: SWAP2
00000670: SUB
00000671: SWAP1
00000672: RETURN
00000673: JUMPDEST
00000674: CALLVALUE
00000675: ISZERO
00000676: PUSH2 0x067e
00000679: JUMPI
0000067a: PUSH1 0x00
0000067c: DUP1
0000067d: REVERT
0000067e: JUMPDEST
0000067f: PUSH2 0x0694
00000682: PUSH1 0x04
00000684: DUP1
00000685: DUP1
00000686: CALLDATALOAD
00000687: SWAP1
00000688: PUSH1 0x20
0000068a: ADD
0000068b: SWAP1
0000068c: SWAP2
0000068d: SWAP1
0000068e: POP
0000068f: POP
00000690: PUSH2 0x15d9
00000693: JUMP
00000694: JUMPDEST
00000695: STOP
00000696: JUMPDEST
00000697: CALLVALUE
00000698: ISZERO
00000699: PUSH2 0x06a1
0000069c: JUMPI
0000069d: PUSH1 0x00
0000069f: DUP1
000006a0: REVERT
000006a1: JUMPDEST
000006a2: PUSH2 0x06b7
000006a5: PUSH1 0x04
000006a7: DUP1
000006a8: DUP1
000006a9: CALLDATALOAD
000006aa: SWAP1
000006ab: PUSH1 0x20
000006ad: ADD
000006ae: SWAP1
000006af: SWAP2
000006b0: SWAP1
000006b1: POP
000006b2: POP
000006b3: PUSH2 0x1696
000006b6: JUMP
000006b7: JUMPDEST
000006b8: STOP
000006b9: JUMPDEST
000006ba: CALLVALUE
000006bb: ISZERO
000006bc: PUSH2 0x06c4
000006bf: JUMPI
000006c0: PUSH1 0x00
000006c2: DUP1
000006c3: REVERT
000006c4: JUMPDEST
000006c5: PUSH2 0x073c
000006c8: PUSH1 0x04
000006ca: DUP1
000006cb: DUP1
000006cc: CALLDATALOAD
000006cd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000006e2: AND
000006e3: SWAP1
000006e4: PUSH1 0x20
000006e6: ADD
000006e7: SWAP1
000006e8: SWAP2
000006e9: SWAP1
000006ea: DUP1
000006eb: CALLDATALOAD
000006ec: SWAP1
000006ed: PUSH1 0x20
000006ef: ADD
000006f0: SWAP1
000006f1: SWAP2
000006f2: SWAP1
000006f3: DUP1
000006f4: CALLDATALOAD
000006f5: SWAP1
000006f6: PUSH1 0x20
000006f8: ADD
000006f9: SWAP1
000006fa: DUP3
000006fb: ADD
000006fc: DUP1
000006fd: CALLDATALOAD
000006fe: SWAP1
000006ff: PUSH1 0x20
00000701: ADD
00000702: SWAP1
00000703: DUP1
00000704: DUP1
00000705: PUSH1 0x1f
00000707: ADD
00000708: PUSH1 0x20
0000070a: DUP1
0000070b: SWAP2
0000070c: DIV
0000070d: MUL
0000070e: PUSH1 0x20
00000710: ADD
00000711: PUSH1 0x40
00000713: MLOAD
00000714: SWAP1
00000715: DUP2
00000716: ADD
00000717: PUSH1 0x40
00000719: MSTORE
0000071a: DUP1
0000071b: SWAP4
0000071c: SWAP3
0000071d: SWAP2
0000071e: SWAP1
0000071f: DUP2
00000720: DUP2
00000721: MSTORE
00000722: PUSH1 0x20
00000724: ADD
00000725: DUP4
00000726: DUP4
00000727: DUP1
00000728: DUP3
00000729: DUP5
0000072a: CALLDATACOPY
0000072b: DUP3
0000072c: ADD
0000072d: SWAP2
0000072e: POP
0000072f: POP
00000730: POP
00000731: POP
00000732: POP
00000733: POP
00000734: SWAP2
00000735: SWAP1
00000736: POP
00000737: POP
00000738: PUSH2 0x1877
0000073b: JUMP
0000073c: JUMPDEST
0000073d: PUSH1 0x40
0000073f: MLOAD
00000740: DUP1
00000741: DUP3
00000742: DUP2
00000743: MSTORE
00000744: PUSH1 0x20
00000746: ADD
00000747: SWAP2
00000748: POP
00000749: POP
0000074a: PUSH1 0x40
0000074c: MLOAD
0000074d: DUP1
0000074e: SWAP2
0000074f: SUB
00000750: SWAP1
00000751: RETURN
00000752: JUMPDEST
00000753: CALLVALUE
00000754: ISZERO
00000755: PUSH2 0x075d
00000758: JUMPI
00000759: PUSH1 0x00
0000075b: DUP1
0000075c: REVERT
0000075d: JUMPDEST
0000075e: PUSH2 0x0765
00000761: PUSH2 0x1897
00000764: JUMP
00000765: JUMPDEST
00000766: PUSH1 0x40
00000768: MLOAD
00000769: DUP1
0000076a: DUP3
0000076b: DUP2
0000076c: MSTORE
0000076d: PUSH1 0x20
0000076f: ADD
00000770: SWAP2
00000771: POP
00000772: POP
00000773: PUSH1 0x40
00000775: MLOAD
00000776: DUP1
00000777: SWAP2
00000778: SUB
00000779: SWAP1
0000077a: RETURN
0000077b: JUMPDEST
0000077c: CALLVALUE
0000077d: ISZERO
0000077e: PUSH2 0x0786
00000781: JUMPI
00000782: PUSH1 0x00
00000784: DUP1
00000785: REVERT
00000786: JUMPDEST
00000787: PUSH2 0x078e
0000078a: PUSH2 0x189c
0000078d: JUMP
0000078e: JUMPDEST
0000078f: PUSH1 0x40
00000791: MLOAD
00000792: DUP1
00000793: DUP3
00000794: DUP2
00000795: MSTORE
00000796: PUSH1 0x20
00000798: ADD
00000799: SWAP2
0000079a: POP
0000079b: POP
0000079c: PUSH1 0x40
0000079e: MLOAD
0000079f: DUP1
000007a0: SWAP2
000007a1: SUB
000007a2: SWAP1
000007a3: RETURN
000007a4: JUMPDEST
000007a5: CALLVALUE
000007a6: ISZERO
000007a7: PUSH2 0x07af
000007aa: JUMPI
000007ab: PUSH1 0x00
000007ad: DUP1
000007ae: REVERT
000007af: JUMPDEST
000007b0: PUSH2 0x07fa
000007b3: PUSH1 0x04
000007b5: DUP1
000007b6: DUP1
000007b7: CALLDATALOAD
000007b8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000007cd: AND
000007ce: SWAP1
000007cf: PUSH1 0x20
000007d1: ADD
000007d2: SWAP1
000007d3: SWAP2
000007d4: SWAP1
000007d5: DUP1
000007d6: CALLDATALOAD
000007d7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000007ec: AND
000007ed: SWAP1
000007ee: PUSH1 0x20
000007f0: ADD
000007f1: SWAP1
000007f2: SWAP2
000007f3: SWAP1
000007f4: POP
000007f5: POP
000007f6: PUSH2 0x18a2
000007f9: JUMP
000007fa: JUMPDEST
000007fb: STOP
000007fc: JUMPDEST
000007fd: CALLVALUE
000007fe: ISZERO
000007ff: PUSH2 0x0807
00000802: JUMPI
00000803: PUSH1 0x00
00000805: DUP1
00000806: REVERT
00000807: JUMPDEST
00000808: PUSH2 0x081d
0000080b: PUSH1 0x04
0000080d: DUP1
0000080e: DUP1
0000080f: CALLDATALOAD
00000810: SWAP1
00000811: PUSH1 0x20
00000813: ADD
00000814: SWAP1
00000815: SWAP2
00000816: SWAP1
00000817: POP
00000818: POP
00000819: PUSH2 0x1bc0
0000081c: JUMP
0000081d: JUMPDEST
0000081e: STOP
0000081f: JUMPDEST
00000820: PUSH1 0x03
00000822: DUP2
00000823: DUP2
00000824: SLOAD
00000825: DUP2
00000826: LT
00000827: ISZERO
00000828: ISZERO
00000829: PUSH2 0x082e
0000082c: JUMPI
0000082d: INVALID
0000082e: JUMPDEST
0000082f: SWAP1
00000830: PUSH1 0x00
00000832: MSTORE
00000833: PUSH1 0x20
00000835: PUSH1 0x00
00000837: KECCAK256
00000838: SWAP1
00000839: ADD
0000083a: PUSH1 0x00
0000083c: JUMPDEST
0000083d: SWAP2
0000083e: POP
0000083f: SLOAD
00000840: SWAP1
00000841: PUSH2 0x0100
00000844: EXP
00000845: SWAP1
00000846: DIV
00000847: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000085c: AND
0000085d: DUP2
0000085e: JUMP
0000085f: JUMPDEST
00000860: PUSH1 0x00
00000862: ADDRESS
00000863: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000878: AND
00000879: CALLER
0000087a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000088f: AND
00000890: EQ
00000891: ISZERO
00000892: ISZERO
00000893: PUSH2 0x089b
00000896: JUMPI
00000897: PUSH1 0x00
00000899: DUP1
0000089a: REVERT
0000089b: JUMPDEST
0000089c: DUP2
0000089d: PUSH1 0x02
0000089f: PUSH1 0x00
000008a1: DUP3
000008a2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000008b7: AND
000008b8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000008cd: AND
000008ce: DUP2
000008cf: MSTORE
000008d0: PUSH1 0x20
000008d2: ADD
000008d3: SWAP1
000008d4: DUP2
000008d5: MSTORE
000008d6: PUSH1 0x20
000008d8: ADD
000008d9: PUSH1 0x00
000008db: KECCAK256
000008dc: PUSH1 0x00
000008de: SWAP1
000008df: SLOAD
000008e0: SWAP1
000008e1: PUSH2 0x0100
000008e4: EXP
000008e5: SWAP1
000008e6: DIV
000008e7: PUSH1 0xff
000008e9: AND
000008ea: ISZERO
000008eb: ISZERO
000008ec: PUSH2 0x08f4
000008ef: JUMPI
000008f0: PUSH1 0x00
000008f2: DUP1
000008f3: REVERT
000008f4: JUMPDEST
000008f5: PUSH1 0x00
000008f7: PUSH1 0x02
000008f9: PUSH1 0x00
000008fb: DUP6
000008fc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000911: AND
00000912: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000927: AND
00000928: DUP2
00000929: MSTORE
0000092a: PUSH1 0x20
0000092c: ADD
0000092d: SWAP1
0000092e: DUP2
0000092f: MSTORE
00000930: PUSH1 0x20
00000932: ADD
00000933: PUSH1 0x00
00000935: KECCAK256
00000936: PUSH1 0x00
00000938: PUSH2 0x0100
0000093b: EXP
0000093c: DUP2
0000093d: SLOAD
0000093e: DUP2
0000093f: PUSH1 0xff
00000941: MUL
00000942: NOT
00000943: AND
00000944: SWAP1
00000945: DUP4
00000946: ISZERO
00000947: ISZERO
00000948: MUL
00000949: OR
0000094a: SWAP1
0000094b: SSTORE
0000094c: POP
0000094d: PUSH1 0x00
0000094f: SWAP2
00000950: POP
00000951: JUMPDEST
00000952: PUSH1 0x01
00000954: PUSH1 0x03
00000956: DUP1
00000957: SLOAD
00000958: SWAP1
00000959: POP
0000095a: SUB
0000095b: DUP3
0000095c: LT
0000095d: ISZERO
0000095e: PUSH2 0x0a80
00000961: JUMPI
00000962: DUP3
00000963: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000978: AND
00000979: PUSH1 0x03
0000097b: DUP4
0000097c: DUP2
0000097d: SLOAD
0000097e: DUP2
0000097f: LT
00000980: ISZERO
00000981: ISZERO
00000982: PUSH2 0x0987
00000985: JUMPI
00000986: INVALID
00000987: JUMPDEST
00000988: SWAP1
00000989: PUSH1 0x00
0000098b: MSTORE
0000098c: PUSH1 0x20
0000098e: PUSH1 0x00
00000990: KECCAK256
00000991: SWAP1
00000992: ADD
00000993: PUSH1 0x00
00000995: JUMPDEST
00000996: SWAP1
00000997: SLOAD
00000998: SWAP1
00000999: PUSH2 0x0100
0000099c: EXP
0000099d: SWAP1
0000099e: DIV
0000099f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009b4: AND
000009b5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009ca: AND
000009cb: EQ
000009cc: ISZERO
000009cd: PUSH2 0x0a72
000009d0: JUMPI
000009d1: PUSH1 0x03
000009d3: PUSH1 0x01
000009d5: PUSH1 0x03
000009d7: DUP1
000009d8: SLOAD
000009d9: SWAP1
000009da: POP
000009db: SUB
000009dc: DUP2
000009dd: SLOAD
000009de: DUP2
000009df: LT
000009e0: ISZERO
000009e1: ISZERO
000009e2: PUSH2 0x09e7
000009e5: JUMPI
000009e6: INVALID
000009e7: JUMPDEST
000009e8: SWAP1
000009e9: PUSH1 0x00
000009eb: MSTORE
000009ec: PUSH1 0x20
000009ee: PUSH1 0x00
000009f0: KECCAK256
000009f1: SWAP1
000009f2: ADD
000009f3: PUSH1 0x00
000009f5: JUMPDEST
000009f6: SWAP1
000009f7: SLOAD
000009f8: SWAP1
000009f9: PUSH2 0x0100
000009fc: EXP
000009fd: SWAP1
000009fe: DIV
000009ff: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a14: AND
00000a15: PUSH1 0x03
00000a17: DUP4
00000a18: DUP2
00000a19: SLOAD
00000a1a: DUP2
00000a1b: LT
00000a1c: ISZERO
00000a1d: ISZERO
00000a1e: PUSH2 0x0a23
00000a21: JUMPI
00000a22: INVALID
00000a23: JUMPDEST
00000a24: SWAP1
00000a25: PUSH1 0x00
00000a27: MSTORE
00000a28: PUSH1 0x20
00000a2a: PUSH1 0x00
00000a2c: KECCAK256
00000a2d: SWAP1
00000a2e: ADD
00000a2f: PUSH1 0x00
00000a31: JUMPDEST
00000a32: PUSH2 0x0100
00000a35: EXP
00000a36: DUP2
00000a37: SLOAD
00000a38: DUP2
00000a39: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a4e: MUL
00000a4f: NOT
00000a50: AND
00000a51: SWAP1
00000a52: DUP4
00000a53: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a68: AND
00000a69: MUL
00000a6a: OR
00000a6b: SWAP1
00000a6c: SSTORE
00000a6d: POP
00000a6e: PUSH2 0x0a80
00000a71: JUMP
00000a72: JUMPDEST
00000a73: JUMPDEST
00000a74: DUP2
00000a75: DUP1
00000a76: PUSH1 0x01
00000a78: ADD
00000a79: SWAP3
00000a7a: POP
00000a7b: POP
00000a7c: PUSH2 0x0951
00000a7f: JUMP
00000a80: JUMPDEST
00000a81: PUSH1 0x01
00000a83: PUSH1 0x03
00000a85: DUP2
00000a86: DUP2
00000a87: DUP1
00000a88: SLOAD
00000a89: SWAP1
00000a8a: POP
00000a8b: SUB
00000a8c: SWAP2
00000a8d: POP
00000a8e: DUP2
00000a8f: PUSH2 0x0a98
00000a92: SWAP2
00000a93: SWAP1
00000a94: PUSH2 0x1fe8
00000a97: JUMP
00000a98: JUMPDEST
00000a99: POP
00000a9a: PUSH1 0x03
00000a9c: DUP1
00000a9d: SLOAD
00000a9e: SWAP1
00000a9f: POP
00000aa0: PUSH1 0x04
00000aa2: SLOAD
00000aa3: GT
00000aa4: ISZERO
00000aa5: PUSH2 0x0ab7
00000aa8: JUMPI
00000aa9: PUSH2 0x0ab6
00000aac: PUSH1 0x03
00000aae: DUP1
00000aaf: SLOAD
00000ab0: SWAP1
00000ab1: POP
00000ab2: PUSH2 0x15d9
00000ab5: JUMP
00000ab6: JUMPDEST
00000ab7: JUMPDEST
00000ab8: DUP3
00000ab9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ace: AND
00000acf: PUSH32 0x8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b90
00000af0: PUSH1 0x40
00000af2: MLOAD
00000af3: PUSH1 0x40
00000af5: MLOAD
00000af6: DUP1
00000af7: SWAP2
00000af8: SUB
00000af9: SWAP1
00000afa: LOG2
00000afb: JUMPDEST
00000afc: JUMPDEST
00000afd: POP
00000afe: JUMPDEST
00000aff: POP
00000b00: POP
00000b01: JUMP
00000b02: JUMPDEST
00000b03: CALLER
00000b04: PUSH1 0x02
00000b06: PUSH1 0x00
00000b08: DUP3
00000b09: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b1e: AND
00000b1f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b34: AND
00000b35: DUP2
00000b36: MSTORE
00000b37: PUSH1 0x20
00000b39: ADD
00000b3a: SWAP1
00000b3b: DUP2
00000b3c: MSTORE
00000b3d: PUSH1 0x20
00000b3f: ADD
00000b40: PUSH1 0x00
00000b42: KECCAK256
00000b43: PUSH1 0x00
00000b45: SWAP1
00000b46: SLOAD
00000b47: SWAP1
00000b48: PUSH2 0x0100
00000b4b: EXP
00000b4c: SWAP1
00000b4d: DIV
00000b4e: PUSH1 0xff
00000b50: AND
00000b51: ISZERO
00000b52: ISZERO
00000b53: PUSH2 0x0b5b
00000b56: JUMPI
00000b57: PUSH1 0x00
00000b59: DUP1
00000b5a: REVERT
00000b5b: JUMPDEST
00000b5c: DUP2
00000b5d: CALLER
00000b5e: PUSH1 0x01
00000b60: PUSH1 0x00
00000b62: DUP4
00000b63: DUP2
00000b64: MSTORE
00000b65: PUSH1 0x20
00000b67: ADD
00000b68: SWAP1
00000b69: DUP2
00000b6a: MSTORE
00000b6b: PUSH1 0x20
00000b6d: ADD
00000b6e: PUSH1 0x00
00000b70: KECCAK256
00000b71: PUSH1 0x00
00000b73: DUP3
00000b74: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b89: AND
00000b8a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b9f: AND
00000ba0: DUP2
00000ba1: MSTORE
00000ba2: PUSH1 0x20
00000ba4: ADD
00000ba5: SWAP1
00000ba6: DUP2
00000ba7: MSTORE
00000ba8: PUSH1 0x20
00000baa: ADD
00000bab: PUSH1 0x00
00000bad: KECCAK256
00000bae: PUSH1 0x00
00000bb0: SWAP1
00000bb1: SLOAD
00000bb2: SWAP1
00000bb3: PUSH2 0x0100
00000bb6: EXP
00000bb7: SWAP1
00000bb8: DIV
00000bb9: PUSH1 0xff
00000bbb: AND
00000bbc: ISZERO
00000bbd: ISZERO
00000bbe: PUSH2 0x0bc6
00000bc1: JUMPI
00000bc2: PUSH1 0x00
00000bc4: DUP1
00000bc5: REVERT
00000bc6: JUMPDEST
00000bc7: DUP4
00000bc8: PUSH1 0x00
00000bca: DUP1
00000bcb: DUP3
00000bcc: DUP2
00000bcd: MSTORE
00000bce: PUSH1 0x20
00000bd0: ADD
00000bd1: SWAP1
00000bd2: DUP2
00000bd3: MSTORE
00000bd4: PUSH1 0x20
00000bd6: ADD
00000bd7: PUSH1 0x00
00000bd9: KECCAK256
00000bda: PUSH1 0x03
00000bdc: ADD
00000bdd: PUSH1 0x00
00000bdf: SWAP1
00000be0: SLOAD
00000be1: SWAP1
00000be2: PUSH2 0x0100
00000be5: EXP
00000be6: SWAP1
00000be7: DIV
00000be8: PUSH1 0xff
00000bea: AND
00000beb: ISZERO
00000bec: ISZERO
00000bed: ISZERO
00000bee: PUSH2 0x0bf6
00000bf1: JUMPI
00000bf2: PUSH1 0x00
00000bf4: DUP1
00000bf5: REVERT
00000bf6: JUMPDEST
00000bf7: PUSH1 0x00
00000bf9: PUSH1 0x01
00000bfb: PUSH1 0x00
00000bfd: DUP8
00000bfe: DUP2
00000bff: MSTORE
00000c00: PUSH1 0x20
00000c02: ADD
00000c03: SWAP1
00000c04: DUP2
00000c05: MSTORE
00000c06: PUSH1 0x20
00000c08: ADD
00000c09: PUSH1 0x00
00000c0b: KECCAK256
00000c0c: PUSH1 0x00
00000c0e: CALLER
00000c0f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c24: AND
00000c25: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c3a: AND
00000c3b: DUP2
00000c3c: MSTORE
00000c3d: PUSH1 0x20
00000c3f: ADD
00000c40: SWAP1
00000c41: DUP2
00000c42: MSTORE
00000c43: PUSH1 0x20
00000c45: ADD
00000c46: PUSH1 0x00
00000c48: KECCAK256
00000c49: PUSH1 0x00
00000c4b: PUSH2 0x0100
00000c4e: EXP
00000c4f: DUP2
00000c50: SLOAD
00000c51: DUP2
00000c52: PUSH1 0xff
00000c54: MUL
00000c55: NOT
00000c56: AND
00000c57: SWAP1
00000c58: DUP4
00000c59: ISZERO
00000c5a: ISZERO
00000c5b: MUL
00000c5c: OR
00000c5d: SWAP1
00000c5e: SSTORE
00000c5f: POP
00000c60: DUP5
00000c61: CALLER
00000c62: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c77: AND
00000c78: PUSH32 0xf6a317157440607f36269043eb55f1287a5a19ba2216afeab88cd46cbcfb88e9
00000c99: PUSH1 0x40
00000c9b: MLOAD
00000c9c: PUSH1 0x40
00000c9e: MLOAD
00000c9f: DUP1
00000ca0: SWAP2
00000ca1: SUB
00000ca2: SWAP1
00000ca3: LOG3
00000ca4: JUMPDEST
00000ca5: JUMPDEST
00000ca6: POP
00000ca7: JUMPDEST
00000ca8: POP
00000ca9: POP
00000caa: JUMPDEST
00000cab: POP
00000cac: POP
00000cad: JUMP
00000cae: JUMPDEST
00000caf: PUSH1 0x02
00000cb1: PUSH1 0x20
00000cb3: MSTORE
00000cb4: DUP1
00000cb5: PUSH1 0x00
00000cb7: MSTORE
00000cb8: PUSH1 0x40
00000cba: PUSH1 0x00
00000cbc: KECCAK256
00000cbd: PUSH1 0x00
00000cbf: SWAP2
00000cc0: POP
00000cc1: SLOAD
00000cc2: SWAP1
00000cc3: PUSH2 0x0100
00000cc6: EXP
00000cc7: SWAP1
00000cc8: DIV
00000cc9: PUSH1 0xff
00000ccb: AND
00000ccc: DUP2
00000ccd: JUMP
00000cce: JUMPDEST
00000ccf: PUSH1 0x01
00000cd1: PUSH1 0x20
00000cd3: MSTORE
00000cd4: DUP2
00000cd5: PUSH1 0x00
00000cd7: MSTORE
00000cd8: PUSH1 0x40
00000cda: PUSH1 0x00
00000cdc: KECCAK256
00000cdd: PUSH1 0x20
00000cdf: MSTORE
00000ce0: DUP1
00000ce1: PUSH1 0x00
00000ce3: MSTORE
00000ce4: PUSH1 0x40
00000ce6: PUSH1 0x00
00000ce8: KECCAK256
00000ce9: PUSH1 0x00
00000ceb: SWAP2
00000cec: POP
00000ced: SWAP2
00000cee: POP
00000cef: SWAP1
00000cf0: SLOAD
00000cf1: SWAP1
00000cf2: PUSH2 0x0100
00000cf5: EXP
00000cf6: SWAP1
00000cf7: DIV
00000cf8: PUSH1 0xff
00000cfa: AND
00000cfb: DUP2
00000cfc: JUMP
00000cfd: JUMPDEST
00000cfe: PUSH1 0x00
00000d00: DUP1
00000d01: PUSH1 0x00
00000d03: SWAP1
00000d04: POP
00000d05: JUMPDEST
00000d06: PUSH1 0x05
00000d08: SLOAD
00000d09: DUP2
00000d0a: LT
00000d0b: ISZERO
00000d0c: PUSH2 0x0d89
00000d0f: JUMPI
00000d10: DUP4
00000d11: DUP1
00000d12: ISZERO
00000d13: PUSH2 0x0d3c
00000d16: JUMPI
00000d17: POP
00000d18: PUSH1 0x00
00000d1a: DUP1
00000d1b: DUP3
00000d1c: DUP2
00000d1d: MSTORE
00000d1e: PUSH1 0x20
00000d20: ADD
00000d21: SWAP1
00000d22: DUP2
00000d23: MSTORE
00000d24: PUSH1 0x20
00000d26: ADD
00000d27: PUSH1 0x00
00000d29: KECCAK256
00000d2a: PUSH1 0x03
00000d2c: ADD
00000d2d: PUSH1 0x00
00000d2f: SWAP1
00000d30: SLOAD
00000d31: SWAP1
00000d32: PUSH2 0x0100
00000d35: EXP
00000d36: SWAP1
00000d37: DIV
00000d38: PUSH1 0xff
00000d3a: AND
00000d3b: ISZERO
00000d3c: JUMPDEST
00000d3d: DUP1
00000d3e: PUSH2 0x0d6f
00000d41: JUMPI
00000d42: POP
00000d43: DUP3
00000d44: DUP1
00000d45: ISZERO
00000d46: PUSH2 0x0d6e
00000d49: JUMPI
00000d4a: POP
00000d4b: PUSH1 0x00
00000d4d: DUP1
00000d4e: DUP3
00000d4f: DUP2
00000d50: MSTORE
00000d51: PUSH1 0x20
00000d53: ADD
00000d54: SWAP1
00000d55: DUP2
00000d56: MSTORE
00000d57: PUSH1 0x20
00000d59: ADD
00000d5a: PUSH1 0x00
00000d5c: KECCAK256
00000d5d: PUSH1 0x03
00000d5f: ADD
00000d60: PUSH1 0x00
00000d62: SWAP1
00000d63: SLOAD
00000d64: SWAP1
00000d65: PUSH2 0x0100
00000d68: EXP
00000d69: SWAP1
00000d6a: DIV
00000d6b: PUSH1 0xff
00000d6d: AND
00000d6e: JUMPDEST
00000d6f: JUMPDEST
00000d70: ISZERO
00000d71: PUSH2 0x0d7b
00000d74: JUMPI
00000d75: PUSH1 0x01
00000d77: DUP3
00000d78: ADD
00000d79: SWAP2
00000d7a: POP
00000d7b: JUMPDEST
00000d7c: JUMPDEST
00000d7d: DUP1
00000d7e: DUP1
00000d7f: PUSH1 0x01
00000d81: ADD
00000d82: SWAP2
00000d83: POP
00000d84: POP
00000d85: PUSH2 0x0d05
00000d88: JUMP
00000d89: JUMPDEST
00000d8a: JUMPDEST
00000d8b: POP
00000d8c: SWAP3
00000d8d: SWAP2
00000d8e: POP
00000d8f: POP
00000d90: JUMP
00000d91: JUMPDEST
00000d92: ADDRESS
00000d93: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000da8: AND
00000da9: CALLER
00000daa: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000dbf: AND
00000dc0: EQ
00000dc1: ISZERO
00000dc2: ISZERO
00000dc3: PUSH2 0x0dcb
00000dc6: JUMPI
00000dc7: PUSH1 0x00
00000dc9: DUP1
00000dca: REVERT
00000dcb: JUMPDEST
00000dcc: DUP1
00000dcd: PUSH1 0x02
00000dcf: PUSH1 0x00
00000dd1: DUP3
00000dd2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000de7: AND
00000de8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000dfd: AND
00000dfe: DUP2
00000dff: MSTORE
00000e00: PUSH1 0x20
00000e02: ADD
00000e03: SWAP1
00000e04: DUP2
00000e05: MSTORE
00000e06: PUSH1 0x20
00000e08: ADD
00000e09: PUSH1 0x00
00000e0b: KECCAK256
00000e0c: PUSH1 0x00
00000e0e: SWAP1
00000e0f: SLOAD
00000e10: SWAP1
00000e11: PUSH2 0x0100
00000e14: EXP
00000e15: SWAP1
00000e16: DIV
00000e17: PUSH1 0xff
00000e19: AND
00000e1a: ISZERO
00000e1b: ISZERO
00000e1c: ISZERO
00000e1d: PUSH2 0x0e25
00000e20: JUMPI
00000e21: PUSH1 0x00
00000e23: DUP1
00000e24: REVERT
00000e25: JUMPDEST
00000e26: DUP2
00000e27: PUSH1 0x00
00000e29: DUP2
00000e2a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000e3f: AND
00000e40: EQ
00000e41: ISZERO
00000e42: ISZERO
00000e43: ISZERO
00000e44: PUSH2 0x0e4c
00000e47: JUMPI
00000e48: PUSH1 0x00
00000e4a: DUP1
00000e4b: REVERT
00000e4c: JUMPDEST
00000e4d: PUSH1 0x01
00000e4f: PUSH1 0x03
00000e51: DUP1
00000e52: SLOAD
00000e53: SWAP1
00000e54: POP
00000e55: ADD
00000e56: PUSH1 0x04
00000e58: SLOAD
00000e59: PUSH1 0x32
00000e5b: DUP3
00000e5c: GT
00000e5d: ISZERO
00000e5e: DUP1
00000e5f: ISZERO
00000e60: PUSH2 0x0e69
00000e63: JUMPI
00000e64: POP
00000e65: DUP2
00000e66: DUP2
00000e67: GT
00000e68: ISZERO
00000e69: JUMPDEST
00000e6a: DUP1
00000e6b: ISZERO
00000e6c: PUSH2 0x0e76
00000e6f: JUMPI
00000e70: POP
00000e71: PUSH1 0x00
00000e73: DUP2
00000e74: EQ
00000e75: ISZERO
00000e76: JUMPDEST
00000e77: DUP1
00000e78: ISZERO
00000e79: PUSH2 0x0e83
00000e7c: JUMPI
00000e7d: POP
00000e7e: PUSH1 0x00
00000e80: DUP3
00000e81: EQ
00000e82: ISZERO
00000e83: JUMPDEST
00000e84: ISZERO
00000e85: ISZERO
00000e86: PUSH2 0x0e8e
00000e89: JUMPI
00000e8a: PUSH1 0x00
00000e8c: DUP1
00000e8d: REVERT
00000e8e: JUMPDEST
00000e8f: PUSH1 0x01
00000e91: PUSH1 0x02
00000e93: PUSH1 0x00
00000e95: DUP8
00000e96: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000eab: AND
00000eac: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ec1: AND
00000ec2: DUP2
00000ec3: MSTORE
00000ec4: PUSH1 0x20
00000ec6: ADD
00000ec7: SWAP1
00000ec8: DUP2
00000ec9: MSTORE
00000eca: PUSH1 0x20
00000ecc: ADD
00000ecd: PUSH1 0x00
00000ecf: KECCAK256
00000ed0: PUSH1 0x00
00000ed2: PUSH2 0x0100
00000ed5: EXP
00000ed6: DUP2
00000ed7: SLOAD
00000ed8: DUP2
00000ed9: PUSH1 0xff
00000edb: MUL
00000edc: NOT
00000edd: AND
00000ede: SWAP1
00000edf: DUP4
00000ee0: ISZERO
00000ee1: ISZERO
00000ee2: MUL
00000ee3: OR
00000ee4: SWAP1
00000ee5: SSTORE
00000ee6: POP
00000ee7: PUSH1 0x03
00000ee9: DUP1
00000eea: SLOAD
00000eeb: DUP1
00000eec: PUSH1 0x01
00000eee: ADD
00000eef: DUP3
00000ef0: DUP2
00000ef1: PUSH2 0x0efa
00000ef4: SWAP2
00000ef5: SWAP1
00000ef6: PUSH2 0x2014
00000ef9: JUMP
00000efa: JUMPDEST
00000efb: SWAP2
00000efc: PUSH1 0x00
00000efe: MSTORE
00000eff: PUSH1 0x20
00000f01: PUSH1 0x00
00000f03: KECCAK256
00000f04: SWAP1
00000f05: ADD
00000f06: PUSH1 0x00
00000f08: JUMPDEST
00000f09: DUP8
00000f0a: SWAP1
00000f0b: SWAP2
00000f0c: SWAP1
00000f0d: SWAP2
00000f0e: PUSH2 0x0100
00000f11: EXP
00000f12: DUP2
00000f13: SLOAD
00000f14: DUP2
00000f15: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f2a: MUL
00000f2b: NOT
00000f2c: AND
00000f2d: SWAP1
00000f2e: DUP4
00000f2f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f44: AND
00000f45: MUL
00000f46: OR
00000f47: SWAP1
00000f48: SSTORE
00000f49: POP
00000f4a: POP
00000f4b: DUP5
00000f4c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f61: AND
00000f62: PUSH32 0xf39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d
00000f83: PUSH1 0x40
00000f85: MLOAD
00000f86: PUSH1 0x40
00000f88: MLOAD
00000f89: DUP1
00000f8a: SWAP2
00000f8b: SUB
00000f8c: SWAP1
00000f8d: LOG2
00000f8e: JUMPDEST
00000f8f: JUMPDEST
00000f90: POP
00000f91: POP
00000f92: JUMPDEST
00000f93: POP
00000f94: JUMPDEST
00000f95: POP
00000f96: JUMPDEST
00000f97: POP
00000f98: JUMP
00000f99: JUMPDEST
00000f9a: PUSH1 0x00
00000f9c: DUP1
00000f9d: PUSH1 0x00
00000f9f: DUP1
00000fa0: SWAP2
00000fa1: POP
00000fa2: PUSH1 0x00
00000fa4: SWAP1
00000fa5: POP
00000fa6: JUMPDEST
00000fa7: PUSH1 0x03
00000fa9: DUP1
00000faa: SLOAD
00000fab: SWAP1
00000fac: POP
00000fad: DUP2
00000fae: LT
00000faf: ISZERO
00000fb0: PUSH2 0x1079
00000fb3: JUMPI
00000fb4: PUSH1 0x01
00000fb6: PUSH1 0x00
00000fb8: DUP6
00000fb9: DUP2
00000fba: MSTORE
00000fbb: PUSH1 0x20
00000fbd: ADD
00000fbe: SWAP1
00000fbf: DUP2
00000fc0: MSTORE
00000fc1: PUSH1 0x20
00000fc3: ADD
00000fc4: PUSH1 0x00
00000fc6: KECCAK256
00000fc7: PUSH1 0x00
00000fc9: PUSH1 0x03
00000fcb: DUP4
00000fcc: DUP2
00000fcd: SLOAD
00000fce: DUP2
00000fcf: LT
00000fd0: ISZERO
00000fd1: ISZERO
00000fd2: PUSH2 0x0fd7
00000fd5: JUMPI
00000fd6: INVALID
00000fd7: JUMPDEST
00000fd8: SWAP1
00000fd9: PUSH1 0x00
00000fdb: MSTORE
00000fdc: PUSH1 0x20
00000fde: PUSH1 0x00
00000fe0: KECCAK256
00000fe1: SWAP1
00000fe2: ADD
00000fe3: PUSH1 0x00
00000fe5: JUMPDEST
00000fe6: SWAP1
00000fe7: SLOAD
00000fe8: SWAP1
00000fe9: PUSH2 0x0100
00000fec: EXP
00000fed: SWAP1
00000fee: DIV
00000fef: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001004: AND
00001005: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000101a: AND
0000101b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001030: AND
00001031: DUP2
00001032: MSTORE
00001033: PUSH1 0x20
00001035: ADD
00001036: SWAP1
00001037: DUP2
00001038: MSTORE
00001039: PUSH1 0x20
0000103b: ADD
0000103c: PUSH1 0x00
0000103e: KECCAK256
0000103f: PUSH1 0x00
00001041: SWAP1
00001042: SLOAD
00001043: SWAP1
00001044: PUSH2 0x0100
00001047: EXP
00001048: SWAP1
00001049: DIV
0000104a: PUSH1 0xff
0000104c: AND
0000104d: ISZERO
0000104e: PUSH2 0x1058
00001051: JUMPI
00001052: PUSH1 0x01
00001054: DUP3
00001055: ADD
00001056: SWAP2
00001057: POP
00001058: JUMPDEST
00001059: PUSH1 0x04
0000105b: SLOAD
0000105c: DUP3
0000105d: EQ
0000105e: ISZERO
0000105f: PUSH2 0x106b
00001062: JUMPI
00001063: PUSH1 0x01
00001065: SWAP3
00001066: POP
00001067: PUSH2 0x107a
0000106a: JUMP
0000106b: JUMPDEST
0000106c: JUMPDEST
0000106d: DUP1
0000106e: DUP1
0000106f: PUSH1 0x01
00001071: ADD
00001072: SWAP2
00001073: POP
00001074: POP
00001075: PUSH2 0x0fa6
00001078: JUMP
00001079: JUMPDEST
0000107a: JUMPDEST
0000107b: POP
0000107c: POP
0000107d: SWAP2
0000107e: SWAP1
0000107f: POP
00001080: JUMP
00001081: JUMPDEST
00001082: PUSH1 0x00
00001084: DUP1
00001085: PUSH1 0x00
00001087: SWAP1
00001088: POP
00001089: JUMPDEST
0000108a: PUSH1 0x03
0000108c: DUP1
0000108d: SLOAD
0000108e: SWAP1
0000108f: POP
00001090: DUP2
00001091: LT
00001092: ISZERO
00001093: PUSH2 0x1149
00001096: JUMPI
00001097: PUSH1 0x01
00001099: PUSH1 0x00
0000109b: DUP5
0000109c: DUP2
0000109d: MSTORE
0000109e: PUSH1 0x20
000010a0: ADD
000010a1: SWAP1
000010a2: DUP2
000010a3: MSTORE
000010a4: PUSH1 0x20
000010a6: ADD
000010a7: PUSH1 0x00
000010a9: KECCAK256
000010aa: PUSH1 0x00
000010ac: PUSH1 0x03
000010ae: DUP4
000010af: DUP2
000010b0: SLOAD
000010b1: DUP2
000010b2: LT
000010b3: ISZERO
000010b4: ISZERO
000010b5: PUSH2 0x10ba
000010b8: JUMPI
000010b9: INVALID
000010ba: JUMPDEST
000010bb: SWAP1
000010bc: PUSH1 0x00
000010be: MSTORE
000010bf: PUSH1 0x20
000010c1: PUSH1 0x00
000010c3: KECCAK256
000010c4: SWAP1
000010c5: ADD
000010c6: PUSH1 0x00
000010c8: JUMPDEST
000010c9: SWAP1
000010ca: SLOAD
000010cb: SWAP1
000010cc: PUSH2 0x0100
000010cf: EXP
000010d0: SWAP1
000010d1: DIV
000010d2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000010e7: AND
000010e8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000010fd: AND
000010fe: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001113: AND
00001114: DUP2
00001115: MSTORE
00001116: PUSH1 0x20
00001118: ADD
00001119: SWAP1
0000111a: DUP2
0000111b: MSTORE
0000111c: PUSH1 0x20
0000111e: ADD
0000111f: PUSH1 0x00
00001121: KECCAK256
00001122: PUSH1 0x00
00001124: SWAP1
00001125: SLOAD
00001126: SWAP1
00001127: PUSH2 0x0100
0000112a: EXP
0000112b: SWAP1
0000112c: DIV
0000112d: PUSH1 0xff
0000112f: AND
00001130: ISZERO
00001131: PUSH2 0x113b
00001134: JUMPI
00001135: PUSH1 0x01
00001137: DUP3
00001138: ADD
00001139: SWAP2
0000113a: POP
0000113b: JUMPDEST
0000113c: JUMPDEST
0000113d: DUP1
0000113e: DUP1
0000113f: PUSH1 0x01
00001141: ADD
00001142: SWAP2
00001143: POP
00001144: POP
00001145: PUSH2 0x1089
00001148: JUMP
00001149: JUMPDEST
0000114a: JUMPDEST
0000114b: POP
0000114c: SWAP2
0000114d: SWAP1
0000114e: POP
0000114f: JUMP
00001150: JUMPDEST
00001151: PUSH1 0x00
00001153: PUSH1 0x20
00001155: MSTORE
00001156: DUP1
00001157: PUSH1 0x00
00001159: MSTORE
0000115a: PUSH1 0x40
0000115c: PUSH1 0x00
0000115e: KECCAK256
0000115f: PUSH1 0x00
00001161: SWAP2
00001162: POP
00001163: SWAP1
00001164: POP
00001165: DUP1
00001166: PUSH1 0x00
00001168: ADD
00001169: PUSH1 0x00
0000116b: SWAP1
0000116c: SLOAD
0000116d: SWAP1
0000116e: PUSH2 0x0100
00001171: EXP
00001172: SWAP1
00001173: DIV
00001174: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001189: AND
0000118a: SWAP1
0000118b: DUP1
0000118c: PUSH1 0x01
0000118e: ADD
0000118f: SLOAD
00001190: SWAP1
00001191: DUP1
00001192: PUSH1 0x02
00001194: ADD
00001195: SWAP1
00001196: DUP1
00001197: PUSH1 0x03
00001199: ADD
0000119a: PUSH1 0x00
0000119c: SWAP1
0000119d: SLOAD
0000119e: SWAP1
0000119f: PUSH2 0x0100
000011a2: EXP
000011a3: SWAP1
000011a4: DIV
000011a5: PUSH1 0xff
000011a7: AND
000011a8: SWAP1
000011a9: POP
000011aa: DUP5
000011ab: JUMP
000011ac: JUMPDEST
000011ad: PUSH2 0x11b4
000011b0: PUSH2 0x2040
000011b3: JUMP
000011b4: JUMPDEST
000011b5: PUSH1 0x03
000011b7: DUP1
000011b8: SLOAD
000011b9: DUP1
000011ba: PUSH1 0x20
000011bc: MUL
000011bd: PUSH1 0x20
000011bf: ADD
000011c0: PUSH1 0x40
000011c2: MLOAD
000011c3: SWAP1
000011c4: DUP2
000011c5: ADD
000011c6: PUSH1 0x40
000011c8: MSTORE
000011c9: DUP1
000011ca: SWAP3
000011cb: SWAP2
000011cc: SWAP1
000011cd: DUP2
000011ce: DUP2
000011cf: MSTORE
000011d0: PUSH1 0x20
000011d2: ADD
000011d3: DUP3
000011d4: DUP1
000011d5: SLOAD
000011d6: DUP1
000011d7: ISZERO
000011d8: PUSH2 0x1236
000011db: JUMPI
000011dc: PUSH1 0x20
000011de: MUL
000011df: DUP3
000011e0: ADD
000011e1: SWAP2
000011e2: SWAP1
000011e3: PUSH1 0x00
000011e5: MSTORE
000011e6: PUSH1 0x20
000011e8: PUSH1 0x00
000011ea: KECCAK256
000011eb: SWAP1
000011ec: JUMPDEST
000011ed: DUP2
000011ee: PUSH1 0x00
000011f0: SWAP1
000011f1: SLOAD
000011f2: SWAP1
000011f3: PUSH2 0x0100
000011f6: EXP
000011f7: SWAP1
000011f8: DIV
000011f9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000120e: AND
0000120f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001224: AND
00001225: DUP2
00001226: MSTORE
00001227: PUSH1 0x20
00001229: ADD
0000122a: SWAP1
0000122b: PUSH1 0x01
0000122d: ADD
0000122e: SWAP1
0000122f: DUP1
00001230: DUP4
00001231: GT
00001232: PUSH2 0x11ec
00001235: JUMPI
00001236: JUMPDEST
00001237: POP
00001238: POP
00001239: POP
0000123a: POP
0000123b: POP
0000123c: SWAP1
0000123d: POP
0000123e: JUMPDEST
0000123f: SWAP1
00001240: JUMP
00001241: JUMPDEST
00001242: PUSH2 0x1249
00001245: PUSH2 0x2054
00001248: JUMP
00001249: JUMPDEST
0000124a: PUSH2 0x1251
0000124d: PUSH2 0x2054
00001250: JUMP
00001251: JUMPDEST
00001252: PUSH1 0x00
00001254: DUP1
00001255: PUSH1 0x05
00001257: SLOAD
00001258: PUSH1 0x40
0000125a: MLOAD
0000125b: DUP1
0000125c: MSIZE
0000125d: LT
0000125e: PUSH2 0x1264
00001261: JUMPI
00001262: POP
00001263: MSIZE
00001264: JUMPDEST
00001265: SWAP1
00001266: DUP1
00001267: DUP3
00001268: MSTORE
00001269: DUP1
0000126a: PUSH1 0x20
0000126c: MUL
0000126d: PUSH1 0x20
0000126f: ADD
00001270: DUP3
00001271: ADD
00001272: PUSH1 0x40
00001274: MSTORE
00001275: JUMPDEST
00001276: POP
00001277: SWAP3
00001278: POP
00001279: PUSH1 0x00
0000127b: SWAP2
0000127c: POP
0000127d: PUSH1 0x00
0000127f: SWAP1
00001280: POP
00001281: JUMPDEST
00001282: PUSH1 0x05
00001284: SLOAD
00001285: DUP2
00001286: LT
00001287: ISZERO
00001288: PUSH2 0x1322
0000128b: JUMPI
0000128c: DUP6
0000128d: DUP1
0000128e: ISZERO
0000128f: PUSH2 0x12b8
00001292: JUMPI
00001293: POP
00001294: PUSH1 0x00
00001296: DUP1
00001297: DUP3
00001298: DUP2
00001299: MSTORE
0000129a: PUSH1 0x20
0000129c: ADD
0000129d: SWAP1
0000129e: DUP2
0000129f: MSTORE
000012a0: PUSH1 0x20
000012a2: ADD
000012a3: PUSH1 0x00
000012a5: KECCAK256
000012a6: PUSH1 0x03
000012a8: ADD
000012a9: PUSH1 0x00
000012ab: SWAP1
000012ac: SLOAD
000012ad: SWAP1
000012ae: PUSH2 0x0100
000012b1: EXP
000012b2: SWAP1
000012b3: DIV
000012b4: PUSH1 0xff
000012b6: AND
000012b7: ISZERO
000012b8: JUMPDEST
000012b9: DUP1
000012ba: PUSH2 0x12eb
000012bd: JUMPI
000012be: POP
000012bf: DUP5
000012c0: DUP1
000012c1: ISZERO
000012c2: PUSH2 0x12ea
000012c5: JUMPI
000012c6: POP
000012c7: PUSH1 0x00
000012c9: DUP1
000012ca: DUP3
000012cb: DUP2
000012cc: MSTORE
000012cd: PUSH1 0x20
000012cf: ADD
000012d0: SWAP1
000012d1: DUP2
000012d2: MSTORE
000012d3: PUSH1 0x20
000012d5: ADD
000012d6: PUSH1 0x00
000012d8: KECCAK256
000012d9: PUSH1 0x03
000012db: ADD
000012dc: PUSH1 0x00
000012de: SWAP1
000012df: SLOAD
000012e0: SWAP1
000012e1: PUSH2 0x0100
000012e4: EXP
000012e5: SWAP1
000012e6: DIV
000012e7: PUSH1 0xff
000012e9: AND
000012ea: JUMPDEST
000012eb: JUMPDEST
000012ec: ISZERO
000012ed: PUSH2 0x1314
000012f0: JUMPI
000012f1: DUP1
000012f2: DUP4
000012f3: DUP4
000012f4: DUP2
000012f5: MLOAD
000012f6: DUP2
000012f7: LT
000012f8: ISZERO
000012f9: ISZERO
000012fa: PUSH2 0x12ff
000012fd: JUMPI
000012fe: INVALID
000012ff: JUMPDEST
00001300: SWAP1
00001301: PUSH1 0x20
00001303: ADD
00001304: SWAP1
00001305: PUSH1 0x20
00001307: MUL
00001308: ADD
00001309: DUP2
0000130a: DUP2
0000130b: MSTORE
0000130c: POP
0000130d: POP
0000130e: PUSH1 0x01
00001310: DUP3
00001311: ADD
00001312: SWAP2
00001313: POP
00001314: JUMPDEST
00001315: JUMPDEST
00001316: DUP1
00001317: DUP1
00001318: PUSH1 0x01
0000131a: ADD
0000131b: SWAP2
0000131c: POP
0000131d: POP
0000131e: PUSH2 0x1281
00001321: JUMP
00001322: JUMPDEST
00001323: DUP8
00001324: DUP8
00001325: SUB
00001326: PUSH1 0x40
00001328: MLOAD
00001329: DUP1
0000132a: MSIZE
0000132b: LT
0000132c: PUSH2 0x1332
0000132f: JUMPI
00001330: POP
00001331: MSIZE
00001332: JUMPDEST
00001333: SWAP1
00001334: DUP1
00001335: DUP3
00001336: MSTORE
00001337: DUP1
00001338: PUSH1 0x20
0000133a: MUL
0000133b: PUSH1 0x20
0000133d: ADD
0000133e: DUP3
0000133f: ADD
00001340: PUSH1 0x40
00001342: MSTORE
00001343: JUMPDEST
00001344: POP
00001345: SWAP4
00001346: POP
00001347: DUP8
00001348: SWAP1
00001349: POP
0000134a: JUMPDEST
0000134b: DUP7
0000134c: DUP2
0000134d: LT
0000134e: ISZERO
0000134f: PUSH2 0x1396
00001352: JUMPI
00001353: DUP3
00001354: DUP2
00001355: DUP2
00001356: MLOAD
00001357: DUP2
00001358: LT
00001359: ISZERO
0000135a: ISZERO
0000135b: PUSH2 0x1360
0000135e: JUMPI
0000135f: INVALID
00001360: JUMPDEST
00001361: SWAP1
00001362: PUSH1 0x20
00001364: ADD
00001365: SWAP1
00001366: PUSH1 0x20
00001368: MUL
00001369: ADD
0000136a: MLOAD
0000136b: DUP5
0000136c: DUP10
0000136d: DUP4
0000136e: SUB
0000136f: DUP2
00001370: MLOAD
00001371: DUP2
00001372: LT
00001373: ISZERO
00001374: ISZERO
00001375: PUSH2 0x137a
00001378: JUMPI
00001379: INVALID
0000137a: JUMPDEST
0000137b: SWAP1
0000137c: PUSH1 0x20
0000137e: ADD
0000137f: SWAP1
00001380: PUSH1 0x20
00001382: MUL
00001383: ADD
00001384: DUP2
00001385: DUP2
00001386: MSTORE
00001387: POP
00001388: POP
00001389: JUMPDEST
0000138a: DUP1
0000138b: DUP1
0000138c: PUSH1 0x01
0000138e: ADD
0000138f: SWAP2
00001390: POP
00001391: POP
00001392: PUSH2 0x134a
00001395: JUMP
00001396: JUMPDEST
00001397: JUMPDEST
00001398: POP
00001399: POP
0000139a: POP
0000139b: SWAP5
0000139c: SWAP4
0000139d: POP
0000139e: POP
0000139f: POP
000013a0: POP
000013a1: JUMP
000013a2: JUMPDEST
000013a3: PUSH2 0x13aa
000013a6: PUSH2 0x2040
000013a9: JUMP
000013aa: JUMPDEST
000013ab: PUSH2 0x13b2
000013ae: PUSH2 0x2040
000013b1: JUMP
000013b2: JUMPDEST
000013b3: PUSH1 0x00
000013b5: DUP1
000013b6: PUSH1 0x03
000013b8: DUP1
000013b9: SLOAD
000013ba: SWAP1
000013bb: POP
000013bc: PUSH1 0x40
000013be: MLOAD
000013bf: DUP1
000013c0: MSIZE
000013c1: LT
000013c2: PUSH2 0x13c8
000013c5: JUMPI
000013c6: POP
000013c7: MSIZE
000013c8: JUMPDEST
000013c9: SWAP1
000013ca: DUP1
000013cb: DUP3
000013cc: MSTORE
000013cd: DUP1
000013ce: PUSH1 0x20
000013d0: MUL
000013d1: PUSH1 0x20
000013d3: ADD
000013d4: DUP3
000013d5: ADD
000013d6: PUSH1 0x40
000013d8: MSTORE
000013d9: JUMPDEST
000013da: POP
000013db: SWAP3
000013dc: POP
000013dd: PUSH1 0x00
000013df: SWAP2
000013e0: POP
000013e1: PUSH1 0x00
000013e3: SWAP1
000013e4: POP
000013e5: JUMPDEST
000013e6: PUSH1 0x03
000013e8: DUP1
000013e9: SLOAD
000013ea: SWAP1
000013eb: POP
000013ec: DUP2
000013ed: LT
000013ee: ISZERO
000013ef: PUSH2 0x152b
000013f2: JUMPI
000013f3: PUSH1 0x01
000013f5: PUSH1 0x00
000013f7: DUP7
000013f8: DUP2
000013f9: MSTORE
000013fa: PUSH1 0x20
000013fc: ADD
000013fd: SWAP1
000013fe: DUP2
000013ff: MSTORE
00001400: PUSH1 0x20
00001402: ADD
00001403: PUSH1 0x00
00001405: KECCAK256
00001406: PUSH1 0x00
00001408: PUSH1 0x03
0000140a: DUP4
0000140b: DUP2
0000140c: SLOAD
0000140d: DUP2
0000140e: LT
0000140f: ISZERO
00001410: ISZERO
00001411: PUSH2 0x1416
00001414: JUMPI
00001415: INVALID
00001416: JUMPDEST
00001417: SWAP1
00001418: PUSH1 0x00
0000141a: MSTORE
0000141b: PUSH1 0x20
0000141d: PUSH1 0x00
0000141f: KECCAK256
00001420: SWAP1
00001421: ADD
00001422: PUSH1 0x00
00001424: JUMPDEST
00001425: SWAP1
00001426: SLOAD
00001427: SWAP1
00001428: PUSH2 0x0100
0000142b: EXP
0000142c: SWAP1
0000142d: DIV
0000142e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001443: AND
00001444: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001459: AND
0000145a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000146f: AND
00001470: DUP2
00001471: MSTORE
00001472: PUSH1 0x20
00001474: ADD
00001475: SWAP1
00001476: DUP2
00001477: MSTORE
00001478: PUSH1 0x20
0000147a: ADD
0000147b: PUSH1 0x00
0000147d: KECCAK256
0000147e: PUSH1 0x00
00001480: SWAP1
00001481: SLOAD
00001482: SWAP1
00001483: PUSH2 0x0100
00001486: EXP
00001487: SWAP1
00001488: DIV
00001489: PUSH1 0xff
0000148b: AND
0000148c: ISZERO
0000148d: PUSH2 0x151d
00001490: JUMPI
00001491: PUSH1 0x03
00001493: DUP2
00001494: DUP2
00001495: SLOAD
00001496: DUP2
00001497: LT
00001498: ISZERO
00001499: ISZERO
0000149a: PUSH2 0x149f
0000149d: JUMPI
0000149e: INVALID
0000149f: JUMPDEST
000014a0: SWAP1
000014a1: PUSH1 0x00
000014a3: MSTORE
000014a4: PUSH1 0x20
000014a6: PUSH1 0x00
000014a8: KECCAK256
000014a9: SWAP1
000014aa: ADD
000014ab: PUSH1 0x00
000014ad: JUMPDEST
000014ae: SWAP1
000014af: SLOAD
000014b0: SWAP1
000014b1: PUSH2 0x0100
000014b4: EXP
000014b5: SWAP1
000014b6: DIV
000014b7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000014cc: AND
000014cd: DUP4
000014ce: DUP4
000014cf: DUP2
000014d0: MLOAD
000014d1: DUP2
000014d2: LT
000014d3: ISZERO
000014d4: ISZERO
000014d5: PUSH2 0x14da
000014d8: JUMPI
000014d9: INVALID
000014da: JUMPDEST
000014db: SWAP1
000014dc: PUSH1 0x20
000014de: ADD
000014df: SWAP1
000014e0: PUSH1 0x20
000014e2: MUL
000014e3: ADD
000014e4: SWAP1
000014e5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000014fa: AND
000014fb: SWAP1
000014fc: DUP2
000014fd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001512: AND
00001513: DUP2
00001514: MSTORE
00001515: POP
00001516: POP
00001517: PUSH1 0x01
00001519: DUP3
0000151a: ADD
0000151b: SWAP2
0000151c: POP
0000151d: JUMPDEST
0000151e: JUMPDEST
0000151f: DUP1
00001520: DUP1
00001521: PUSH1 0x01
00001523: ADD
00001524: SWAP2
00001525: POP
00001526: POP
00001527: PUSH2 0x13e5
0000152a: JUMP
0000152b: JUMPDEST
0000152c: DUP2
0000152d: PUSH1 0x40
0000152f: MLOAD
00001530: DUP1
00001531: MSIZE
00001532: LT
00001533: PUSH2 0x1539
00001536: JUMPI
00001537: POP
00001538: MSIZE
00001539: JUMPDEST
0000153a: SWAP1
0000153b: DUP1
0000153c: DUP3
0000153d: MSTORE
0000153e: DUP1
0000153f: PUSH1 0x20
00001541: MUL
00001542: PUSH1 0x20
00001544: ADD
00001545: DUP3
00001546: ADD
00001547: PUSH1 0x40
00001549: MSTORE
0000154a: JUMPDEST
0000154b: POP
0000154c: SWAP4
0000154d: POP
0000154e: PUSH1 0x00
00001550: SWAP1
00001551: POP
00001552: JUMPDEST
00001553: DUP2
00001554: DUP2
00001555: LT
00001556: ISZERO
00001557: PUSH2 0x15ca
0000155a: JUMPI
0000155b: DUP3
0000155c: DUP2
0000155d: DUP2
0000155e: MLOAD
0000155f: DUP2
00001560: LT
00001561: ISZERO
00001562: ISZERO
00001563: PUSH2 0x1568
00001566: JUMPI
00001567: INVALID
00001568: JUMPDEST
00001569: SWAP1
0000156a: PUSH1 0x20
0000156c: ADD
0000156d: SWAP1
0000156e: PUSH1 0x20
00001570: MUL
00001571: ADD
00001572: MLOAD
00001573: DUP5
00001574: DUP3
00001575: DUP2
00001576: MLOAD
00001577: DUP2
00001578: LT
00001579: ISZERO
0000157a: ISZERO
0000157b: PUSH2 0x1580
0000157e: JUMPI
0000157f: INVALID
00001580: JUMPDEST
00001581: SWAP1
00001582: PUSH1 0x20
00001584: ADD
00001585: SWAP1
00001586: PUSH1 0x20
00001588: MUL
00001589: ADD
0000158a: SWAP1
0000158b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000015a0: AND
000015a1: SWAP1
000015a2: DUP2
000015a3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000015b8: AND
000015b9: DUP2
000015ba: MSTORE
000015bb: POP
000015bc: POP
000015bd: JUMPDEST
000015be: DUP1
000015bf: DUP1
000015c0: PUSH1 0x01
000015c2: ADD
000015c3: SWAP2
000015c4: POP
000015c5: POP
000015c6: PUSH2 0x1552
000015c9: JUMP
000015ca: JUMPDEST
000015cb: JUMPDEST
000015cc: POP
000015cd: POP
000015ce: POP
000015cf: SWAP2
000015d0: SWAP1
000015d1: POP
000015d2: JUMP
000015d3: JUMPDEST
000015d4: PUSH1 0x05
000015d6: SLOAD
000015d7: DUP2
000015d8: JUMP
000015d9: JUMPDEST
000015da: ADDRESS
000015db: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000015f0: AND
000015f1: CALLER
000015f2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001607: AND
00001608: EQ
00001609: ISZERO
0000160a: ISZERO
0000160b: PUSH2 0x1613
0000160e: JUMPI
0000160f: PUSH1 0x00
00001611: DUP1
00001612: REVERT
00001613: JUMPDEST
00001614: PUSH1 0x03
00001616: DUP1
00001617: SLOAD
00001618: SWAP1
00001619: POP
0000161a: DUP2
0000161b: PUSH1 0x32
0000161d: DUP3
0000161e: GT
0000161f: ISZERO
00001620: DUP1
00001621: ISZERO
00001622: PUSH2 0x162b
00001625: JUMPI
00001626: POP
00001627: DUP2
00001628: DUP2
00001629: GT
0000162a: ISZERO
0000162b: JUMPDEST
0000162c: DUP1
0000162d: ISZERO
0000162e: PUSH2 0x1638
00001631: JUMPI
00001632: POP
00001633: PUSH1 0x00
00001635: DUP2
00001636: EQ
00001637: ISZERO
00001638: JUMPDEST
00001639: DUP1
0000163a: ISZERO
0000163b: PUSH2 0x1645
0000163e: JUMPI
0000163f: POP
00001640: PUSH1 0x00
00001642: DUP3
00001643: EQ
00001644: ISZERO
00001645: JUMPDEST
00001646: ISZERO
00001647: ISZERO
00001648: PUSH2 0x1650
0000164b: JUMPI
0000164c: PUSH1 0x00
0000164e: DUP1
0000164f: REVERT
00001650: JUMPDEST
00001651: DUP3
00001652: PUSH1 0x04
00001654: DUP2
00001655: SWAP1
00001656: SSTORE
00001657: POP
00001658: PUSH32 0xa3f1ee9126a074d9326c682f561767f710e927faa811f7a99829d49dc421797a
00001679: DUP4
0000167a: PUSH1 0x40
0000167c: MLOAD
0000167d: DUP1
0000167e: DUP3
0000167f: DUP2
00001680: MSTORE
00001681: PUSH1 0x20
00001683: ADD
00001684: SWAP2
00001685: POP
00001686: POP
00001687: PUSH1 0x40
00001689: MLOAD
0000168a: DUP1
0000168b: SWAP2
0000168c: SUB
0000168d: SWAP1
0000168e: LOG1
0000168f: JUMPDEST
00001690: JUMPDEST
00001691: POP
00001692: POP
00001693: JUMPDEST
00001694: POP
00001695: JUMP
00001696: JUMPDEST
00001697: CALLER
00001698: PUSH1 0x02
0000169a: PUSH1 0x00
0000169c: DUP3
0000169d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000016b2: AND
000016b3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000016c8: AND
000016c9: DUP2
000016ca: MSTORE
000016cb: PUSH1 0x20
000016cd: ADD
000016ce: SWAP1
000016cf: DUP2
000016d0: MSTORE
000016d1: PUSH1 0x20
000016d3: ADD
000016d4: PUSH1 0x00
000016d6: KECCAK256
000016d7: PUSH1 0x00
000016d9: SWAP1
000016da: SLOAD
000016db: SWAP1
000016dc: PUSH2 0x0100
000016df: EXP
000016e0: SWAP1
000016e1: DIV
000016e2: PUSH1 0xff
000016e4: AND
000016e5: ISZERO
000016e6: ISZERO
000016e7: PUSH2 0x16ef
000016ea: JUMPI
000016eb: PUSH1 0x00
000016ed: DUP1
000016ee: REVERT
000016ef: JUMPDEST
000016f0: DUP2
000016f1: PUSH1 0x00
000016f3: DUP1
000016f4: PUSH1 0x00
000016f6: DUP4
000016f7: DUP2
000016f8: MSTORE
000016f9: PUSH1 0x20
000016fb: ADD
000016fc: SWAP1
000016fd: DUP2
000016fe: MSTORE
000016ff: PUSH1 0x20
00001701: ADD
00001702: PUSH1 0x00
00001704: KECCAK256
00001705: PUSH1 0x00
00001707: ADD
00001708: PUSH1 0x00
0000170a: SWAP1
0000170b: SLOAD
0000170c: SWAP1
0000170d: PUSH2 0x0100
00001710: EXP
00001711: SWAP1
00001712: DIV
00001713: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001728: AND
00001729: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000173e: AND
0000173f: EQ
00001740: ISZERO
00001741: ISZERO
00001742: ISZERO
00001743: PUSH2 0x174b
00001746: JUMPI
00001747: PUSH1 0x00
00001749: DUP1
0000174a: REVERT
0000174b: JUMPDEST
0000174c: DUP3
0000174d: CALLER
0000174e: PUSH1 0x01
00001750: PUSH1 0x00
00001752: DUP4
00001753: DUP2
00001754: MSTORE
00001755: PUSH1 0x20
00001757: ADD
00001758: SWAP1
00001759: DUP2
0000175a: MSTORE
0000175b: PUSH1 0x20
0000175d: ADD
0000175e: PUSH1 0x00
00001760: KECCAK256
00001761: PUSH1 0x00
00001763: DUP3
00001764: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001779: AND
0000177a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000178f: AND
00001790: DUP2
00001791: MSTORE
00001792: PUSH1 0x20
00001794: ADD
00001795: SWAP1
00001796: DUP2
00001797: MSTORE
00001798: PUSH1 0x20
0000179a: ADD
0000179b: PUSH1 0x00
0000179d: KECCAK256
0000179e: PUSH1 0x00
000017a0: SWAP1
000017a1: SLOAD
000017a2: SWAP1
000017a3: PUSH2 0x0100
000017a6: EXP
000017a7: SWAP1
000017a8: DIV
000017a9: PUSH1 0xff
000017ab: AND
000017ac: ISZERO
000017ad: ISZERO
000017ae: ISZERO
000017af: PUSH2 0x17b7
000017b2: JUMPI
000017b3: PUSH1 0x00
000017b5: DUP1
000017b6: REVERT
000017b7: JUMPDEST
000017b8: PUSH1 0x01
000017ba: DUP1
000017bb: PUSH1 0x00
000017bd: DUP8
000017be: DUP2
000017bf: MSTORE
000017c0: PUSH1 0x20
000017c2: ADD
000017c3: SWAP1
000017c4: DUP2
000017c5: MSTORE
000017c6: PUSH1 0x20
000017c8: ADD
000017c9: PUSH1 0x00
000017cb: KECCAK256
000017cc: PUSH1 0x00
000017ce: CALLER
000017cf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000017e4: AND
000017e5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000017fa: AND
000017fb: DUP2
000017fc: MSTORE
000017fd: PUSH1 0x20
000017ff: ADD
00001800: SWAP1
00001801: DUP2
00001802: MSTORE
00001803: PUSH1 0x20
00001805: ADD
00001806: PUSH1 0x00
00001808: KECCAK256
00001809: PUSH1 0x00
0000180b: PUSH2 0x0100
0000180e: EXP
0000180f: DUP2
00001810: SLOAD
00001811: DUP2
00001812: PUSH1 0xff
00001814: MUL
00001815: NOT
00001816: AND
00001817: SWAP1
00001818: DUP4
00001819: ISZERO
0000181a: ISZERO
0000181b: MUL
0000181c: OR
0000181d: SWAP1
0000181e: SSTORE
0000181f: POP
00001820: DUP5
00001821: CALLER
00001822: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001837: AND
00001838: PUSH32 0x4a504a94899432a9846e1aa406dceb1bcfd538bb839071d49d1e5e23f5be30ef
00001859: PUSH1 0x40
0000185b: MLOAD
0000185c: PUSH1 0x40
0000185e: MLOAD
0000185f: DUP1
00001860: SWAP2
00001861: SUB
00001862: SWAP1
00001863: LOG3
00001864: PUSH2 0x186c
00001867: DUP6
00001868: PUSH2 0x1bc0
0000186b: JUMP
0000186c: JUMPDEST
0000186d: JUMPDEST
0000186e: JUMPDEST
0000186f: POP
00001870: POP
00001871: JUMPDEST
00001872: POP
00001873: JUMPDEST
00001874: POP
00001875: POP
00001876: JUMP
00001877: JUMPDEST
00001878: PUSH1 0x00
0000187a: PUSH2 0x1884
0000187d: DUP5
0000187e: DUP5
0000187f: DUP5
00001880: PUSH2 0x1e6c
00001883: JUMP
00001884: JUMPDEST
00001885: SWAP1
00001886: POP
00001887: PUSH2 0x188f
0000188a: DUP2
0000188b: PUSH2 0x1696
0000188e: JUMP
0000188f: JUMPDEST
00001890: JUMPDEST
00001891: SWAP4
00001892: SWAP3
00001893: POP
00001894: POP
00001895: POP
00001896: JUMP
00001897: JUMPDEST
00001898: PUSH1 0x32
0000189a: DUP2
0000189b: JUMP
0000189c: JUMPDEST
0000189d: PUSH1 0x04
0000189f: SLOAD
000018a0: DUP2
000018a1: JUMP
000018a2: JUMPDEST
000018a3: PUSH1 0x00
000018a5: ADDRESS
000018a6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000018bb: AND
000018bc: CALLER
000018bd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000018d2: AND
000018d3: EQ
000018d4: ISZERO
000018d5: ISZERO
000018d6: PUSH2 0x18de
000018d9: JUMPI
000018da: PUSH1 0x00
000018dc: DUP1
000018dd: REVERT
000018de: JUMPDEST
000018df: DUP3
000018e0: PUSH1 0x02
000018e2: PUSH1 0x00
000018e4: DUP3
000018e5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000018fa: AND
000018fb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001910: AND
00001911: DUP2
00001912: MSTORE
00001913: PUSH1 0x20
00001915: ADD
00001916: SWAP1
00001917: DUP2
00001918: MSTORE
00001919: PUSH1 0x20
0000191b: ADD
0000191c: PUSH1 0x00
0000191e: KECCAK256
0000191f: PUSH1 0x00
00001921: SWAP1
00001922: SLOAD
00001923: SWAP1
00001924: PUSH2 0x0100
00001927: EXP
00001928: SWAP1
00001929: DIV
0000192a: PUSH1 0xff
0000192c: AND
0000192d: ISZERO
0000192e: ISZERO
0000192f: PUSH2 0x1937
00001932: JUMPI
00001933: PUSH1 0x00
00001935: DUP1
00001936: REVERT
00001937: JUMPDEST
00001938: DUP3
00001939: PUSH1 0x02
0000193b: PUSH1 0x00
0000193d: DUP3
0000193e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001953: AND
00001954: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001969: AND
0000196a: DUP2
0000196b: MSTORE
0000196c: PUSH1 0x20
0000196e: ADD
0000196f: SWAP1
00001970: DUP2
00001971: MSTORE
00001972: PUSH1 0x20
00001974: ADD
00001975: PUSH1 0x00
00001977: KECCAK256
00001978: PUSH1 0x00
0000197a: SWAP1
0000197b: SLOAD
0000197c: SWAP1
0000197d: PUSH2 0x0100
00001980: EXP
00001981: SWAP1
00001982: DIV
00001983: PUSH1 0xff
00001985: AND
00001986: ISZERO
00001987: ISZERO
00001988: ISZERO
00001989: PUSH2 0x1991
0000198c: JUMPI
0000198d: PUSH1 0x00
0000198f: DUP1
00001990: REVERT
00001991: JUMPDEST
00001992: PUSH1 0x00
00001994: SWAP3
00001995: POP
00001996: JUMPDEST
00001997: PUSH1 0x03
00001999: DUP1
0000199a: SLOAD
0000199b: SWAP1
0000199c: POP
0000199d: DUP4
0000199e: LT
0000199f: ISZERO
000019a0: PUSH2 0x1a7f
000019a3: JUMPI
000019a4: DUP5
000019a5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000019ba: AND
000019bb: PUSH1 0x03
000019bd: DUP5
000019be: DUP2
000019bf: SLOAD
000019c0: DUP2
000019c1: LT
000019c2: ISZERO
000019c3: ISZERO
000019c4: PUSH2 0x19c9
000019c7: JUMPI
000019c8: INVALID
000019c9: JUMPDEST
000019ca: SWAP1
000019cb: PUSH1 0x00
000019cd: MSTORE
000019ce: PUSH1 0x20
000019d0: PUSH1 0x00
000019d2: KECCAK256
000019d3: SWAP1
000019d4: ADD
000019d5: PUSH1 0x00
000019d7: JUMPDEST
000019d8: SWAP1
000019d9: SLOAD
000019da: SWAP1
000019db: PUSH2 0x0100
000019de: EXP
000019df: SWAP1
000019e0: DIV
000019e1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000019f6: AND
000019f7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001a0c: AND
00001a0d: EQ
00001a0e: ISZERO
00001a0f: PUSH2 0x1a71
00001a12: JUMPI
00001a13: DUP4
00001a14: PUSH1 0x03
00001a16: DUP5
00001a17: DUP2
00001a18: SLOAD
00001a19: DUP2
00001a1a: LT
00001a1b: ISZERO
00001a1c: ISZERO
00001a1d: PUSH2 0x1a22
00001a20: JUMPI
00001a21: INVALID
00001a22: JUMPDEST
00001a23: SWAP1
00001a24: PUSH1 0x00
00001a26: MSTORE
00001a27: PUSH1 0x20
00001a29: PUSH1 0x00
00001a2b: KECCAK256
00001a2c: SWAP1
00001a2d: ADD
00001a2e: PUSH1 0x00
00001a30: JUMPDEST
00001a31: PUSH2 0x0100
00001a34: EXP
00001a35: DUP2
00001a36: SLOAD
00001a37: DUP2
00001a38: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001a4d: MUL
00001a4e: NOT
00001a4f: AND
00001a50: SWAP1
00001a51: DUP4
00001a52: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001a67: AND
00001a68: MUL
00001a69: OR
00001a6a: SWAP1
00001a6b: SSTORE
00001a6c: POP
00001a6d: PUSH2 0x1a7f
00001a70: JUMP
00001a71: JUMPDEST
00001a72: JUMPDEST
00001a73: DUP3
00001a74: DUP1
00001a75: PUSH1 0x01
00001a77: ADD
00001a78: SWAP4
00001a79: POP
00001a7a: POP
00001a7b: PUSH2 0x1996
00001a7e: JUMP
00001a7f: JUMPDEST
00001a80: PUSH1 0x00
00001a82: PUSH1 0x02
00001a84: PUSH1 0x00
00001a86: DUP8
00001a87: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001a9c: AND
00001a9d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001ab2: AND
00001ab3: DUP2
00001ab4: MSTORE
00001ab5: PUSH1 0x20
00001ab7: ADD
00001ab8: SWAP1
00001ab9: DUP2
00001aba: MSTORE
00001abb: PUSH1 0x20
00001abd: ADD
00001abe: PUSH1 0x00
00001ac0: KECCAK256
00001ac1: PUSH1 0x00
00001ac3: PUSH2 0x0100
00001ac6: EXP
00001ac7: DUP2
00001ac8: SLOAD
00001ac9: DUP2
00001aca: PUSH1 0xff
00001acc: MUL
00001acd: NOT
00001ace: AND
00001acf: SWAP1
00001ad0: DUP4
00001ad1: ISZERO
00001ad2: ISZERO
00001ad3: MUL
00001ad4: OR
00001ad5: SWAP1
00001ad6: SSTORE
00001ad7: POP
00001ad8: PUSH1 0x01
00001ada: PUSH1 0x02
00001adc: PUSH1 0x00
00001ade: DUP7
00001adf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001af4: AND
00001af5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001b0a: AND
00001b0b: DUP2
00001b0c: MSTORE
00001b0d: PUSH1 0x20
00001b0f: ADD
00001b10: SWAP1
00001b11: DUP2
00001b12: MSTORE
00001b13: PUSH1 0x20
00001b15: ADD
00001b16: PUSH1 0x00
00001b18: KECCAK256
00001b19: PUSH1 0x00
00001b1b: PUSH2 0x0100
00001b1e: EXP
00001b1f: DUP2
00001b20: SLOAD
00001b21: DUP2
00001b22: PUSH1 0xff
00001b24: MUL
00001b25: NOT
00001b26: AND
00001b27: SWAP1
00001b28: DUP4
00001b29: ISZERO
00001b2a: ISZERO
00001b2b: MUL
00001b2c: OR
00001b2d: SWAP1
00001b2e: SSTORE
00001b2f: POP
00001b30: DUP5
00001b31: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001b46: AND
00001b47: PUSH32 0x8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b90
00001b68: PUSH1 0x40
00001b6a: MLOAD
00001b6b: PUSH1 0x40
00001b6d: MLOAD
00001b6e: DUP1
00001b6f: SWAP2
00001b70: SUB
00001b71: SWAP1
00001b72: LOG2
00001b73: DUP4
00001b74: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001b89: AND
00001b8a: PUSH32 0xf39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d
00001bab: PUSH1 0x40
00001bad: MLOAD
00001bae: PUSH1 0x40
00001bb0: MLOAD
00001bb1: DUP1
00001bb2: SWAP2
00001bb3: SUB
00001bb4: SWAP1
00001bb5: LOG2
00001bb6: JUMPDEST
00001bb7: JUMPDEST
00001bb8: POP
00001bb9: JUMPDEST
00001bba: POP
00001bbb: JUMPDEST
00001bbc: POP
00001bbd: POP
00001bbe: POP
00001bbf: JUMP
00001bc0: JUMPDEST
00001bc1: PUSH1 0x00
00001bc3: CALLER
00001bc4: PUSH1 0x02
00001bc6: PUSH1 0x00
00001bc8: DUP3
00001bc9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001bde: AND
00001bdf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001bf4: AND
00001bf5: DUP2
00001bf6: MSTORE
00001bf7: PUSH1 0x20
00001bf9: ADD
00001bfa: SWAP1
00001bfb: DUP2
00001bfc: MSTORE
00001bfd: PUSH1 0x20
00001bff: ADD
00001c00: PUSH1 0x00
00001c02: KECCAK256
00001c03: PUSH1 0x00
00001c05: SWAP1
00001c06: SLOAD
00001c07: SWAP1
00001c08: PUSH2 0x0100
00001c0b: EXP
00001c0c: SWAP1
00001c0d: DIV
00001c0e: PUSH1 0xff
00001c10: AND
00001c11: ISZERO
00001c12: ISZERO
00001c13: PUSH2 0x1c1b
00001c16: JUMPI
00001c17: PUSH1 0x00
00001c19: DUP1
00001c1a: REVERT
00001c1b: JUMPDEST
00001c1c: DUP3
00001c1d: CALLER
00001c1e: PUSH1 0x01
00001c20: PUSH1 0x00
00001c22: DUP4
00001c23: DUP2
00001c24: MSTORE
00001c25: PUSH1 0x20
00001c27: ADD
00001c28: SWAP1
00001c29: DUP2
00001c2a: MSTORE
00001c2b: PUSH1 0x20
00001c2d: ADD
00001c2e: PUSH1 0x00
00001c30: KECCAK256
00001c31: PUSH1 0x00
00001c33: DUP3
00001c34: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001c49: AND
00001c4a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001c5f: AND
00001c60: DUP2
00001c61: MSTORE
00001c62: PUSH1 0x20
00001c64: ADD
00001c65: SWAP1
00001c66: DUP2
00001c67: MSTORE
00001c68: PUSH1 0x20
00001c6a: ADD
00001c6b: PUSH1 0x00
00001c6d: KECCAK256
00001c6e: PUSH1 0x00
00001c70: SWAP1
00001c71: SLOAD
00001c72: SWAP1
00001c73: PUSH2 0x0100
00001c76: EXP
00001c77: SWAP1
00001c78: DIV
00001c79: PUSH1 0xff
00001c7b: AND
00001c7c: ISZERO
00001c7d: ISZERO
00001c7e: PUSH2 0x1c86
00001c81: JUMPI
00001c82: PUSH1 0x00
00001c84: DUP1
00001c85: REVERT
00001c86: JUMPDEST
00001c87: DUP5
00001c88: PUSH1 0x00
00001c8a: DUP1
00001c8b: DUP3
00001c8c: DUP2
00001c8d: MSTORE
00001c8e: PUSH1 0x20
00001c90: ADD
00001c91: SWAP1
00001c92: DUP2
00001c93: MSTORE
00001c94: PUSH1 0x20
00001c96: ADD
00001c97: PUSH1 0x00
00001c99: KECCAK256
00001c9a: PUSH1 0x03
00001c9c: ADD
00001c9d: PUSH1 0x00
00001c9f: SWAP1
00001ca0: SLOAD
00001ca1: SWAP1
00001ca2: PUSH2 0x0100
00001ca5: EXP
00001ca6: SWAP1
00001ca7: DIV
00001ca8: PUSH1 0xff
00001caa: AND
00001cab: ISZERO
00001cac: ISZERO
00001cad: ISZERO
00001cae: PUSH2 0x1cb6
00001cb1: JUMPI
00001cb2: PUSH1 0x00
00001cb4: DUP1
00001cb5: REVERT
00001cb6: JUMPDEST
00001cb7: PUSH2 0x1cbf
00001cba: DUP7
00001cbb: PUSH2 0x0f99
00001cbe: JUMP
00001cbf: JUMPDEST
00001cc0: ISZERO
00001cc1: PUSH2 0x1e60
00001cc4: JUMPI
00001cc5: PUSH1 0x00
00001cc7: DUP1
00001cc8: DUP8
00001cc9: DUP2
00001cca: MSTORE
00001ccb: PUSH1 0x20
00001ccd: ADD
00001cce: SWAP1
00001ccf: DUP2
00001cd0: MSTORE
00001cd1: PUSH1 0x20
00001cd3: ADD
00001cd4: PUSH1 0x00
00001cd6: KECCAK256
00001cd7: SWAP5
00001cd8: POP
00001cd9: PUSH1 0x01
00001cdb: DUP6
00001cdc: PUSH1 0x03
00001cde: ADD
00001cdf: PUSH1 0x00
00001ce1: PUSH2 0x0100
00001ce4: EXP
00001ce5: DUP2
00001ce6: SLOAD
00001ce7: DUP2
00001ce8: PUSH1 0xff
00001cea: MUL
00001ceb: NOT
00001cec: AND
00001ced: SWAP1
00001cee: DUP4
00001cef: ISZERO
00001cf0: ISZERO
00001cf1: MUL
00001cf2: OR
00001cf3: SWAP1
00001cf4: SSTORE
00001cf5: POP
00001cf6: PUSH2 0x1ddd
00001cf9: DUP6
00001cfa: PUSH1 0x00
00001cfc: ADD
00001cfd: PUSH1 0x00
00001cff: SWAP1
00001d00: SLOAD
00001d01: SWAP1
00001d02: PUSH2 0x0100
00001d05: EXP
00001d06: SWAP1
00001d07: DIV
00001d08: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001d1d: AND
00001d1e: DUP7
00001d1f: PUSH1 0x01
00001d21: ADD
00001d22: SLOAD
00001d23: DUP8
00001d24: PUSH1 0x02
00001d26: ADD
00001d27: DUP1
00001d28: SLOAD
00001d29: PUSH1 0x01
00001d2b: DUP2
00001d2c: PUSH1 0x01
00001d2e: AND
00001d2f: ISZERO
00001d30: PUSH2 0x0100
00001d33: MUL
00001d34: SUB
00001d35: AND
00001d36: PUSH1 0x02
00001d38: SWAP1
00001d39: DIV
00001d3a: SWAP1
00001d3b: POP
00001d3c: DUP9
00001d3d: PUSH1 0x02
00001d3f: ADD
00001d40: DUP1
00001d41: SLOAD
00001d42: PUSH1 0x01
00001d44: DUP2
00001d45: PUSH1 0x01
00001d47: AND
00001d48: ISZERO
00001d49: PUSH2 0x0100
00001d4c: MUL
00001d4d: SUB
00001d4e: AND
00001d4f: PUSH1 0x02
00001d51: SWAP1
00001d52: DIV
00001d53: DUP1
00001d54: PUSH1 0x1f
00001d56: ADD
00001d57: PUSH1 0x20
00001d59: DUP1
00001d5a: SWAP2
00001d5b: DIV
00001d5c: MUL
00001d5d: PUSH1 0x20
00001d5f: ADD
00001d60: PUSH1 0x40
00001d62: MLOAD
00001d63: SWAP1
00001d64: DUP2
00001d65: ADD
00001d66: PUSH1 0x40
00001d68: MSTORE
00001d69: DUP1
00001d6a: SWAP3
00001d6b: SWAP2
00001d6c: SWAP1
00001d6d: DUP2
00001d6e: DUP2
00001d6f: MSTORE
00001d70: PUSH1 0x20
00001d72: ADD
00001d73: DUP3
00001d74: DUP1
00001d75: SLOAD
00001d76: PUSH1 0x01
00001d78: DUP2
00001d79: PUSH1 0x01
00001d7b: AND
00001d7c: ISZERO
00001d7d: PUSH2 0x0100
00001d80: MUL
00001d81: SUB
00001d82: AND
00001d83: PUSH1 0x02
00001d85: SWAP1
00001d86: DIV
00001d87: DUP1
00001d88: ISZERO
00001d89: PUSH2 0x1dd3
00001d8c: JUMPI
00001d8d: DUP1
00001d8e: PUSH1 0x1f
00001d90: LT
00001d91: PUSH2 0x1da8
00001d94: JUMPI
00001d95: PUSH2 0x0100
00001d98: DUP1
00001d99: DUP4
00001d9a: SLOAD
00001d9b: DIV
00001d9c: MUL
00001d9d: DUP4
00001d9e: MSTORE
00001d9f: SWAP2
00001da0: PUSH1 0x20
00001da2: ADD
00001da3: SWAP2
00001da4: PUSH2 0x1dd3
00001da7: JUMP
00001da8: JUMPDEST
00001da9: DUP3
00001daa: ADD
00001dab: SWAP2
00001dac: SWAP1
00001dad: PUSH1 0x00
00001daf: MSTORE
00001db0: PUSH1 0x20
00001db2: PUSH1 0x00
00001db4: KECCAK256
00001db5: SWAP1
00001db6: JUMPDEST
00001db7: DUP2
00001db8: SLOAD
00001db9: DUP2
00001dba: MSTORE
00001dbb: SWAP1
00001dbc: PUSH1 0x01
00001dbe: ADD
00001dbf: SWAP1
00001dc0: PUSH1 0x20
00001dc2: ADD
00001dc3: DUP1
00001dc4: DUP4
00001dc5: GT
00001dc6: PUSH2 0x1db6
00001dc9: JUMPI
00001dca: DUP3
00001dcb: SWAP1
00001dcc: SUB
00001dcd: PUSH1 0x1f
00001dcf: AND
00001dd0: DUP3
00001dd1: ADD
00001dd2: SWAP2
00001dd3: JUMPDEST
00001dd4: POP
00001dd5: POP
00001dd6: POP
00001dd7: POP
00001dd8: POP
00001dd9: PUSH2 0x1fc0
00001ddc: JUMP
00001ddd: JUMPDEST
00001dde: ISZERO
00001ddf: PUSH2 0x1e14
00001de2: JUMPI
00001de3: DUP6
00001de4: PUSH32 0x33e13ecb54c3076d8e8bb8c2881800a4d972b792045ffae98fdf46df365fed75
00001e05: PUSH1 0x40
00001e07: MLOAD
00001e08: PUSH1 0x40
00001e0a: MLOAD
00001e0b: DUP1
00001e0c: SWAP2
00001e0d: SUB
00001e0e: SWAP1
00001e0f: LOG2
00001e10: PUSH2 0x1e5f
00001e13: JUMP
00001e14: JUMPDEST
00001e15: DUP6
00001e16: PUSH32 0x526441bb6c1aba3c9a4a6ca1d6545da9c2333c8c48343ef398eb858d72b79236
00001e37: PUSH1 0x40
00001e39: MLOAD
00001e3a: PUSH1 0x40
00001e3c: MLOAD
00001e3d: DUP1
00001e3e: SWAP2
00001e3f: SUB
00001e40: SWAP1
00001e41: LOG2
00001e42: PUSH1 0x00
00001e44: DUP6
00001e45: PUSH1 0x03
00001e47: ADD
00001e48: PUSH1 0x00
00001e4a: PUSH2 0x0100
00001e4d: EXP
00001e4e: DUP2
00001e4f: SLOAD
00001e50: DUP2
00001e51: PUSH1 0xff
00001e53: MUL
00001e54: NOT
00001e55: AND
00001e56: SWAP1
00001e57: DUP4
00001e58: ISZERO
00001e59: ISZERO
00001e5a: MUL
00001e5b: OR
00001e5c: SWAP1
00001e5d: SSTORE
00001e5e: POP
00001e5f: JUMPDEST
00001e60: JUMPDEST
00001e61: JUMPDEST
00001e62: JUMPDEST
00001e63: POP
00001e64: JUMPDEST
00001e65: POP
00001e66: POP
00001e67: JUMPDEST
00001e68: POP
00001e69: POP
00001e6a: POP
00001e6b: JUMP
00001e6c: JUMPDEST
00001e6d: PUSH1 0x00
00001e6f: DUP4
00001e70: PUSH1 0x00
00001e72: DUP2
00001e73: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001e88: AND
00001e89: EQ
00001e8a: ISZERO
00001e8b: ISZERO
00001e8c: ISZERO
00001e8d: PUSH2 0x1e95
00001e90: JUMPI
00001e91: PUSH1 0x00
00001e93: DUP1
00001e94: REVERT
00001e95: JUMPDEST
00001e96: PUSH1 0x05
00001e98: SLOAD
00001e99: SWAP2
00001e9a: POP
00001e9b: PUSH1 0x80
00001e9d: PUSH1 0x40
00001e9f: MLOAD
00001ea0: SWAP1
00001ea1: DUP2
00001ea2: ADD
00001ea3: PUSH1 0x40
00001ea5: MSTORE
00001ea6: DUP1
00001ea7: DUP7
00001ea8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001ebd: AND
00001ebe: DUP2
00001ebf: MSTORE
00001ec0: PUSH1 0x20
00001ec2: ADD
00001ec3: DUP6
00001ec4: DUP2
00001ec5: MSTORE
00001ec6: PUSH1 0x20
00001ec8: ADD
00001ec9: DUP5
00001eca: DUP2
00001ecb: MSTORE
00001ecc: PUSH1 0x20
00001ece: ADD
00001ecf: PUSH1 0x00
00001ed1: ISZERO
00001ed2: ISZERO
00001ed3: DUP2
00001ed4: MSTORE
00001ed5: POP
00001ed6: PUSH1 0x00
00001ed8: DUP1
00001ed9: DUP5
00001eda: DUP2
00001edb: MSTORE
00001edc: PUSH1 0x20
00001ede: ADD
00001edf: SWAP1
00001ee0: DUP2
00001ee1: MSTORE
00001ee2: PUSH1 0x20
00001ee4: ADD
00001ee5: PUSH1 0x00
00001ee7: KECCAK256
00001ee8: PUSH1 0x00
00001eea: DUP3
00001eeb: ADD
00001eec: MLOAD
00001eed: DUP2
00001eee: PUSH1 0x00
00001ef0: ADD
00001ef1: PUSH1 0x00
00001ef3: PUSH2 0x0100
00001ef6: EXP
00001ef7: DUP2
00001ef8: SLOAD
00001ef9: DUP2
00001efa: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001f0f: MUL
00001f10: NOT
00001f11: AND
00001f12: SWAP1
00001f13: DUP4
00001f14: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001f29: AND
00001f2a: MUL
00001f2b: OR
00001f2c: SWAP1
00001f2d: SSTORE
00001f2e: POP
00001f2f: PUSH1 0x20
00001f31: DUP3
00001f32: ADD
00001f33: MLOAD
00001f34: DUP2
00001f35: PUSH1 0x01
00001f37: ADD
00001f38: SSTORE
00001f39: PUSH1 0x40
00001f3b: DUP3
00001f3c: ADD
00001f3d: MLOAD
00001f3e: DUP2
00001f3f: PUSH1 0x02
00001f41: ADD
00001f42: SWAP1
00001f43: DUP1
00001f44: MLOAD
00001f45: SWAP1
00001f46: PUSH1 0x20
00001f48: ADD
00001f49: SWAP1
00001f4a: PUSH2 0x1f54
00001f4d: SWAP3
00001f4e: SWAP2
00001f4f: SWAP1
00001f50: PUSH2 0x2068
00001f53: JUMP
00001f54: JUMPDEST
00001f55: POP
00001f56: PUSH1 0x60
00001f58: DUP3
00001f59: ADD
00001f5a: MLOAD
00001f5b: DUP2
00001f5c: PUSH1 0x03
00001f5e: ADD
00001f5f: PUSH1 0x00
00001f61: PUSH2 0x0100
00001f64: EXP
00001f65: DUP2
00001f66: SLOAD
00001f67: DUP2
00001f68: PUSH1 0xff
00001f6a: MUL
00001f6b: NOT
00001f6c: AND
00001f6d: SWAP1
00001f6e: DUP4
00001f6f: ISZERO
00001f70: ISZERO
00001f71: MUL
00001f72: OR
00001f73: SWAP1
00001f74: SSTORE
00001f75: POP
00001f76: SWAP1
00001f77: POP
00001f78: POP
00001f79: PUSH1 0x01
00001f7b: PUSH1 0x05
00001f7d: PUSH1 0x00
00001f7f: DUP3
00001f80: DUP3
00001f81: SLOAD
00001f82: ADD
00001f83: SWAP3
00001f84: POP
00001f85: POP
00001f86: DUP2
00001f87: SWAP1
00001f88: SSTORE
00001f89: POP
00001f8a: DUP2
00001f8b: PUSH32 0xc0ba8fe4b176c1714197d43b9cc6bcf797a4a7461c5fe8d0ef6e184ae7601e51
00001fac: PUSH1 0x40
00001fae: MLOAD
00001faf: PUSH1 0x40
00001fb1: MLOAD
00001fb2: DUP1
00001fb3: SWAP2
00001fb4: SUB
00001fb5: SWAP1
00001fb6: LOG2
00001fb7: JUMPDEST
00001fb8: JUMPDEST
00001fb9: POP
00001fba: SWAP4
00001fbb: SWAP3
00001fbc: POP
00001fbd: POP
00001fbe: POP
00001fbf: JUMP
00001fc0: JUMPDEST
00001fc1: PUSH1 0x00
00001fc3: DUP1
00001fc4: PUSH1 0x40
00001fc6: MLOAD
00001fc7: PUSH1 0x20
00001fc9: DUP5
00001fca: ADD
00001fcb: PUSH1 0x00
00001fcd: DUP3
00001fce: DUP8
00001fcf: DUP4
00001fd0: DUP11
00001fd1: DUP13
00001fd2: PUSH2 0x8796
00001fd5: GAS
00001fd6: SUB
00001fd7: CALL
00001fd8: SWAP3
00001fd9: POP
00001fda: POP
00001fdb: POP
00001fdc: DUP1
00001fdd: SWAP2
00001fde: POP
00001fdf: JUMPDEST
00001fe0: POP
00001fe1: SWAP5
00001fe2: SWAP4
00001fe3: POP
00001fe4: POP
00001fe5: POP
00001fe6: POP
00001fe7: JUMP
00001fe8: JUMPDEST
00001fe9: DUP2
00001fea: SLOAD
00001feb: DUP2
00001fec: DUP4
00001fed: SSTORE
00001fee: DUP2
00001fef: DUP2
00001ff0: ISZERO
00001ff1: GT
00001ff2: PUSH2 0x200f
00001ff5: JUMPI
00001ff6: DUP2
00001ff7: DUP4
00001ff8: PUSH1 0x00
00001ffa: MSTORE
00001ffb: PUSH1 0x20
00001ffd: PUSH1 0x00
00001fff: KECCAK256
00002000: SWAP2
00002001: DUP3
00002002: ADD
00002003: SWAP2
00002004: ADD
00002005: PUSH2 0x200e
00002008: SWAP2
00002009: SWAP1
0000200a: PUSH2 0x20e8
0000200d: JUMP
0000200e: JUMPDEST
0000200f: JUMPDEST
00002010: POP
00002011: POP
00002012: POP
00002013: JUMP
00002014: JUMPDEST
00002015: DUP2
00002016: SLOAD
00002017: DUP2
00002018: DUP4
00002019: SSTORE
0000201a: DUP2
0000201b: DUP2
0000201c: ISZERO
0000201d: GT
0000201e: PUSH2 0x203b
00002021: JUMPI
00002022: DUP2
00002023: DUP4
00002024: PUSH1 0x00
00002026: MSTORE
00002027: PUSH1 0x20
00002029: PUSH1 0x00
0000202b: KECCAK256
0000202c: SWAP2
0000202d: DUP3
0000202e: ADD
0000202f: SWAP2
00002030: ADD
00002031: PUSH2 0x203a
00002034: SWAP2
00002035: SWAP1
00002036: PUSH2 0x20e8
00002039: JUMP
0000203a: JUMPDEST
0000203b: JUMPDEST
0000203c: POP
0000203d: POP
0000203e: POP
0000203f: JUMP
00002040: JUMPDEST
00002041: PUSH1 0x20
00002043: PUSH1 0x40
00002045: MLOAD
00002046: SWAP1
00002047: DUP2
00002048: ADD
00002049: PUSH1 0x40
0000204b: MSTORE
0000204c: DUP1
0000204d: PUSH1 0x00
0000204f: DUP2
00002050: MSTORE
00002051: POP
00002052: SWAP1
00002053: JUMP
00002054: JUMPDEST
00002055: PUSH1 0x20
00002057: PUSH1 0x40
00002059: MLOAD
0000205a: SWAP1
0000205b: DUP2
0000205c: ADD
0000205d: PUSH1 0x40
0000205f: MSTORE
00002060: DUP1
00002061: PUSH1 0x00
00002063: DUP2
00002064: MSTORE
00002065: POP
00002066: SWAP1
00002067: JUMP
00002068: JUMPDEST
00002069: DUP3
0000206a: DUP1
0000206b: SLOAD
0000206c: PUSH1 0x01
0000206e: DUP2
0000206f: PUSH1 0x01
00002071: AND
00002072: ISZERO
00002073: PUSH2 0x0100
00002076: MUL
00002077: SUB
00002078: AND
00002079: PUSH1 0x02
0000207b: SWAP1
0000207c: DIV
0000207d: SWAP1
0000207e: PUSH1 0x00
00002080: MSTORE
00002081: PUSH1 0x20
00002083: PUSH1 0x00
00002085: KECCAK256
00002086: SWAP1
00002087: PUSH1 0x1f
00002089: ADD
0000208a: PUSH1 0x20
0000208c: SWAP1
0000208d: DIV
0000208e: DUP2
0000208f: ADD
00002090: SWAP3
00002091: DUP3
00002092: PUSH1 0x1f
00002094: LT
00002095: PUSH2 0x20a9
00002098: JUMPI
00002099: DUP1
0000209a: MLOAD
0000209b: PUSH1 0xff
0000209d: NOT
0000209e: AND
0000209f: DUP4
000020a0: DUP1
000020a1: ADD
000020a2: OR
000020a3: DUP6
000020a4: SSTORE
000020a5: PUSH2 0x20d7
000020a8: JUMP
000020a9: JUMPDEST
000020aa: DUP3
000020ab: DUP1
000020ac: ADD
000020ad: PUSH1 0x01
000020af: ADD
000020b0: DUP6
000020b1: SSTORE
000020b2: DUP3
000020b3: ISZERO
000020b4: PUSH2 0x20d7
000020b7: JUMPI
000020b8: SWAP2
000020b9: DUP3
000020ba: ADD
000020bb: JUMPDEST
000020bc: DUP3
000020bd: DUP2
000020be: GT
000020bf: ISZERO
000020c0: PUSH2 0x20d6
000020c3: JUMPI
000020c4: DUP3
000020c5: MLOAD
000020c6: DUP3
000020c7: SSTORE
000020c8: SWAP2
000020c9: PUSH1 0x20
000020cb: ADD
000020cc: SWAP2
000020cd: SWAP1
000020ce: PUSH1 0x01
000020d0: ADD
000020d1: SWAP1
000020d2: PUSH2 0x20bb
000020d5: JUMP
000020d6: JUMPDEST
000020d7: JUMPDEST
000020d8: POP
000020d9: SWAP1
000020da: POP
000020db: PUSH2 0x20e4
000020de: SWAP2
000020df: SWAP1
000020e0: PUSH2 0x20e8
000020e3: JUMP
000020e4: JUMPDEST
000020e5: POP
000020e6: SWAP1
000020e7: JUMP
000020e8: JUMPDEST
000020e9: PUSH2 0x210a
000020ec: SWAP2
000020ed: SWAP1
000020ee: JUMPDEST
000020ef: DUP1
000020f0: DUP3
000020f1: GT
000020f2: ISZERO
000020f3: PUSH2 0x2106
000020f6: JUMPI
000020f7: PUSH1 0x00
000020f9: DUP2
000020fa: PUSH1 0x00
000020fc: SWAP1
000020fd: SSTORE
000020fe: POP
000020ff: PUSH1 0x01
00002101: ADD
00002102: PUSH2 0x20ee
00002105: JUMP
00002106: JUMPDEST
00002107: POP
00002108: SWAP1
00002109: JUMP
0000210a: JUMPDEST
0000210b: SWAP1
0000210c: JUMP
0000210d: STOP
0000210e: LOG1
0000210f: PUSH6 0x627a7a723058
00002116: KECCAK256
00002117: UNKNOWN(0xD9)
00002118: UNKNOWN(0xC4)
00002119: UNKNOWN(0xBD)
0000211a: UNKNOWN(0xAF)
0000211b: UNKNOWN(0x1F)
0000211c: UNKNOWN(0xBB)
0000211d: UNKNOWN(0xEE)
0000211e: PUSH2 0x19e3
00002121: UNKNOWN(0x1F)
00002122: PUSH23

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0xd74fe87afd8cc35676cd3a9ed0bf9be0961842e3b90263b7c3b59e5992c867ff
call_targets: 0x25ab5aa1462f02edb00bdebe32e7432a30a76937
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xd74fe87afd8cc35676cd3a9ed0bf9be0961842e3b90263b7c3b59e5992c867ff",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x25ab5aa1462f02edb00bdebe32e7432a30a76937"
    ],
    "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": "0xffffffff",
            "selector": "0xffffffff",
            "calldata_variants": [
                "0xffffffff",
                "0xffffffff0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x025e7c27",
            "selector": "0x025e7c27",
            "calldata_variants": [
                "0x025e7c27",
                "0x025e7c270000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x173825d9",
            "selector": "0x173825d9",
            "calldata_variants": [
                "0x173825d9",
                "0x173825d90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x20ea8d86",
            "selector": "0x20ea8d86",
            "calldata_variants": [
                "0x20ea8d86",
                "0x20ea8d860000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2f54bf6e",
            "selector": "0x2f54bf6e",
            "calldata_variants": [
                "0x2f54bf6e",
                "0x2f54bf6e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3411c81c",
            "selector": "0x3411c81c",
            "calldata_variants": [
                "0x3411c81c",
                "0x3411c81c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x54741525",
            "selector": "0x54741525",
            "calldata_variants": [
                "0x54741525",
                "0x547415250000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7065cb48",
            "selector": "0x7065cb48",
            "calldata_variants": [
                "0x7065cb48",
                "0x7065cb480000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 8151,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 1,
    "guards_detected": [
        {
            "pc": 2169,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 3497,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 5617,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 6332,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ],
    "untrusted_call_count": 1
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0xd74fe87afd8cc35676cd3a9ed0bf9be0961842e3b90263b7c3b59e5992c867ff
call_targets: 0x25ab5aa1462f02edb00bdebe32e7432a30a76937
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xd74fe87afd8cc35676cd3a9ed0bf9be0961842e3b90263b7c3b59e5992c867ff",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x25ab5aa1462f02edb00bdebe32e7432a30a76937"
    ],
    "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": "0xffffffff",
            "selector": "0xffffffff",
            "calldata_variants": [
                "0xffffffff",
                "0xffffffff0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x025e7c27",
            "selector": "0x025e7c27",
            "calldata_variants": [
                "0x025e7c27",
                "0x025e7c270000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x173825d9",
            "selector": "0x173825d9",
            "calldata_variants": [
                "0x173825d9",
                "0x173825d90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x20ea8d86",
            "selector": "0x20ea8d86",
            "calldata_variants": [
                "0x20ea8d86",
                "0x20ea8d860000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2f54bf6e",
            "selector": "0x2f54bf6e",
            "calldata_variants": [
                "0x2f54bf6e",
                "0x2f54bf6e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3411c81c",
            "selector": "0x3411c81c",
            "calldata_variants": [
                "0x3411c81c",
                "0x3411c81c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x54741525",
            "selector": "0x54741525",
            "calldata_variants": [
                "0x54741525",
                "0x547415250000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7065cb48",
            "selector": "0x7065cb48",
            "calldata_variants": [
                "0x7065cb48",
                "0x7065cb480000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 8151,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 1,
    "guards_detected": [
        {
            "pc": 2169,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 3497,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 5617,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 6332,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ]
}
low reentrancy codex Self-CALL with value enables potential reentrancy via fallback/other entrypoints 65 no
view
evidence_json
{
    "evidence": "Detector shows a CALL at pc 8151 with computed target/value and returndata_checked=null. Validation indicates constant target 0x25ab5a\u2026 (contract address) and sink reached.",
    "locations": [
        "pc:0x1fd7"
    ],
    "recommendation": "Prefer internal function calls over external CALL to self. If external CALL is required, add explicit reentrancy protection and ensure state is updated before the call. Also validate return data and handle failure paths explicitly.",
    "exploit_scenario": "If the CALL at pc 8151 is used to invoke the contract itself (validation suggests constant target 0x25ab\u2026 which matches the contract address), execution can re-enter via fallback/receive or other selectors with msg.sender == address(this). If state updates occur after this call or privileged logic trusts msg.sender, the self-reentrancy path could bypass assumptions or create unexpected state transitions. Evidence is limited to bytecode, so this is a conservative risk."
}