019b3836-4e76-70a2-8e6f-e39bd0428ed7
Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?
| ID | Type | Status | Attempts | Heartbeat |
|---|---|---|---|---|
| 7381 | artifact.fetch | complete | 1 / 3 | 3 months ago |
| 7382 | tool.cast_disasm | complete | 1 / 3 | 3 months ago |
| 109646 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 109647 | capability.graph | complete | 1 / 3 | 1 week ago |
| 109648 | detector.run | complete | 1 / 3 | 1 week ago |
| 109649 | validation.fork | complete | 1 / 3 | 1 week ago |
| 113943 | report.consolidate | complete | 1 / 6 | 1 week ago |
No slither job recorded yet.
OpenAI Codex v0.118.0 (research preview) -------- workdir: /tmp/codex-tqrs8an2 model: gpt-5.4 provider: openai approval: never sandbox: read-only reasoning effort: high reasoning summaries: none session id: 019d5ca3-b41c-7263-8e12-bbea6b9066e9 -------- 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. warning: Codex could not find system bubblewrap on PATH. Please install bubblewrap with your package manager. Codex will use the vendored bubblewrap in the meantime. ERROR: You've hit your usage limit. Visit https://chatgpt.com/codex/settings/usage to purchase more credits or try again at Apr 8th, 2026 9:11 AM. ERROR: You've hit your usage limit. Visit https://chatgpt.com/codex/settings/usage to purchase more credits or try again at Apr 8th, 2026 9:11 AM.
{
"codex": {
"ran_at": "2026-04-05T07:55:27.256176+00:00",
"returncode": 1
},
"project": {
"mode": "bytecode",
"bytecode_length": 8836,
"bytecode_truncated": false,
"capability_graph_present": true,
"analysis_artifact_present": true
},
"summary": null,
"no_findings": null,
"schema_version": 1
}
00000000: PUSH1 0x60 00000002: PUSH1 0x40 00000004: MSTORE 00000005: CALLDATASIZE 00000006: ISZERO 00000007: PUSH2 0x00da 0000000a: JUMPI 0000000b: PUSH1 0xe0 0000000d: PUSH1 0x02 0000000f: EXP 00000010: PUSH1 0x00 00000012: CALLDATALOAD 00000013: DIV 00000014: PUSH4 0x2e1a7d4d 00000019: DUP2 0000001a: EQ 0000001b: PUSH2 0x00fa 0000001e: JUMPI 0000001f: DUP1 00000020: PUSH4 0x642f2eaf 00000025: EQ 00000026: PUSH2 0x0111 00000029: JUMPI 0000002a: DUP1 0000002b: PUSH4 0x70ba3339 00000030: EQ 00000031: PUSH2 0x0172 00000034: JUMPI 00000035: DUP1 00000036: PUSH4 0x79716e43 0000003b: EQ 0000003c: PUSH2 0x0189 0000003f: JUMPI 00000040: DUP1 00000041: PUSH4 0x7983eb31 00000046: EQ 00000047: PUSH2 0x01a3 0000004a: JUMPI 0000004b: DUP1 0000004c: PUSH4 0x87269729 00000051: EQ 00000052: PUSH2 0x01cd 00000055: JUMPI 00000056: DUP1 00000057: PUSH4 0x8988b7ff 0000005c: EQ 0000005d: PUSH2 0x01d6 00000060: JUMPI 00000061: DUP1 00000062: PUSH4 0x93a595f5 00000067: EQ 00000068: PUSH2 0x0203 0000006b: JUMPI 0000006c: DUP1 0000006d: PUSH4 0xc074a27e 00000072: EQ 00000073: PUSH2 0x022c 00000076: JUMPI 00000077: DUP1 00000078: PUSH4 0xc3b49d04 0000007d: EQ 0000007e: PUSH2 0x0266 00000081: JUMPI 00000082: DUP1 00000083: PUSH4 0xc69ed5f2 00000088: EQ 00000089: PUSH2 0x02ac 0000008c: JUMPI 0000008d: DUP1 0000008e: PUSH4 0xd00be319 00000093: EQ 00000094: PUSH2 0x02c6 00000097: JUMPI 00000098: DUP1 00000099: PUSH4 0xda018bda 0000009e: EQ 0000009f: PUSH2 0x02cf 000000a2: JUMPI 000000a3: DUP1 000000a4: PUSH4 0xe79d0860 000000a9: EQ 000000aa: PUSH2 0x02e7 000000ad: JUMPI 000000ae: DUP1 000000af: PUSH4 0xefe9b08d 000000b4: EQ 000000b5: PUSH2 0x02f0 000000b8: JUMPI 000000b9: DUP1 000000ba: PUSH4 0xf3a504f2 000000bf: EQ 000000c0: PUSH2 0x0316 000000c3: JUMPI 000000c4: DUP1 000000c5: PUSH4 0xf668660b 000000ca: EQ 000000cb: PUSH2 0x0322 000000ce: JUMPI 000000cf: DUP1 000000d0: PUSH4 0xfb932108 000000d5: EQ 000000d6: PUSH2 0x032b 000000d9: JUMPI 000000da: JUMPDEST 000000db: PUSH2 0x0354 000000de: PUSH1 0x00 000000e0: CALLVALUE 000000e1: GT 000000e2: ISZERO 000000e3: PUSH2 0x03c1 000000e6: JUMPI 000000e7: PUSH1 0x01 000000e9: SLOAD 000000ea: PUSH1 0xff 000000ec: AND 000000ed: ISZERO 000000ee: PUSH2 0x03c3 000000f1: JUMPI 000000f2: PUSH2 0x0356 000000f5: CALLER 000000f6: PUSH2 0x03c8 000000f9: JUMP 000000fa: JUMPDEST 000000fb: PUSH2 0x0354 000000fe: PUSH1 0x04 00000100: CALLDATALOAD 00000101: PUSH1 0x01 00000103: SLOAD 00000104: PUSH1 0xff 00000106: AND 00000107: ISZERO 00000108: ISZERO 00000109: PUSH2 0x109c 0000010c: JUMPI 0000010d: PUSH2 0x0002 00000110: JUMP 00000111: JUMPDEST 00000112: PUSH2 0x0499 00000115: PUSH1 0x04 00000117: CALLDATALOAD 00000118: PUSH1 0x06 0000011a: PUSH1 0x20 0000011c: MSTORE 0000011d: PUSH1 0x00 0000011f: SWAP1 00000120: DUP2 00000121: MSTORE 00000122: PUSH1 0x40 00000124: SWAP1 00000125: KECCAK256 00000126: DUP1 00000127: SLOAD 00000128: PUSH1 0x01 0000012a: DUP3 0000012b: ADD 0000012c: SLOAD 0000012d: PUSH1 0x07 0000012f: DUP4 00000130: ADD 00000131: SLOAD 00000132: PUSH1 0x05 00000134: DUP5 00000135: ADD 00000136: SLOAD 00000137: PUSH1 0x04 00000139: DUP6 0000013a: ADD 0000013b: SLOAD 0000013c: PUSH1 0xff 0000013e: DUP6 0000013f: DUP2 00000140: AND 00000141: SWAP7 00000142: PUSH2 0x0100 00000145: SWAP7 00000146: DUP8 00000147: SWAP1 00000148: DIV 00000149: PUSH1 0x01 0000014b: PUSH1 0xa0 0000014d: PUSH1 0x02 0000014f: EXP 00000150: SUB 00000151: SWAP1 00000152: DUP2 00000153: AND 00000154: SWAP8 00000155: PUSH1 0x02 00000157: DUP4 00000158: ADD 00000159: SWAP7 0000015a: PUSH1 0x03 0000015c: SWAP4 0000015d: SWAP1 0000015e: SWAP4 0000015f: ADD 00000160: SWAP6 00000161: SWAP5 00000162: SWAP1 00000163: SWAP2 00000164: AND 00000165: SWAP4 00000166: SWAP3 00000167: DUP3 00000168: DUP2 00000169: AND 0000016a: SWAP3 0000016b: SWAP2 0000016c: SWAP1 0000016d: SWAP2 0000016e: DIV 0000016f: AND 00000170: DUP10 00000171: JUMP 00000172: JUMPDEST 00000173: PUSH2 0x0354 00000176: PUSH1 0x04 00000178: CALLDATALOAD 00000179: PUSH1 0x01 0000017b: SLOAD 0000017c: PUSH1 0xff 0000017e: AND 0000017f: ISZERO 00000180: ISZERO 00000181: PUSH2 0x08b1 00000184: JUMPI 00000185: PUSH2 0x0002 00000188: JUMP 00000189: JUMPDEST 0000018a: PUSH2 0x0354 0000018d: PUSH1 0x04 0000018f: CALLDATALOAD 00000190: PUSH1 0x01 00000192: SLOAD 00000193: PUSH1 0x00 00000195: SWAP1 00000196: PUSH1 0xff 00000198: AND 00000199: ISZERO 0000019a: ISZERO 0000019b: PUSH2 0x0a6b 0000019e: JUMPI 0000019f: PUSH2 0x0002 000001a2: JUMP 000001a3: JUMPDEST 000001a4: PUSH2 0x0354 000001a7: PUSH1 0x04 000001a9: CALLDATALOAD 000001aa: PUSH1 0x00 000001ac: PUSH1 0x00 000001ae: ADDRESS 000001af: PUSH1 0x01 000001b1: PUSH1 0xa0 000001b3: PUSH1 0x02 000001b5: EXP 000001b6: SUB 000001b7: AND 000001b8: CALLER 000001b9: PUSH1 0x01 000001bb: PUSH1 0xa0 000001bd: PUSH1 0x02 000001bf: EXP 000001c0: SUB 000001c1: AND 000001c2: EQ 000001c3: ISZERO 000001c4: ISZERO 000001c5: PUSH2 0x0f2e 000001c8: JUMPI 000001c9: PUSH2 0x0002 000001cc: JUMP 000001cd: JUMPDEST 000001ce: PUSH2 0x05e1 000001d1: PUSH1 0x00 000001d3: SLOAD 000001d4: DUP2 000001d5: JUMP 000001d6: JUMPDEST 000001d7: PUSH2 0x05f3 000001da: PUSH1 0x04 000001dc: CALLDATALOAD 000001dd: PUSH1 0x03 000001df: PUSH1 0x20 000001e1: MSTORE 000001e2: PUSH1 0x00 000001e4: SWAP1 000001e5: DUP2 000001e6: MSTORE 000001e7: PUSH1 0x40 000001e9: SWAP1 000001ea: KECCAK256 000001eb: DUP1 000001ec: SLOAD 000001ed: PUSH1 0x01 000001ef: SWAP2 000001f0: SWAP1 000001f1: SWAP2 000001f2: ADD 000001f3: SLOAD 000001f4: PUSH1 0xff 000001f6: DUP3 000001f7: DUP2 000001f8: AND 000001f9: SWAP3 000001fa: PUSH2 0x0100 000001fd: SWAP1 000001fe: DIV 000001ff: AND 00000200: SWAP1 00000201: DUP4 00000202: JUMP 00000203: JUMPDEST 00000204: PUSH2 0x0354 00000207: PUSH1 0x04 00000209: CALLDATALOAD 0000020a: PUSH1 0x24 0000020c: CALLDATALOAD 0000020d: ADDRESS 0000020e: PUSH1 0x01 00000210: PUSH1 0xa0 00000212: PUSH1 0x02 00000214: EXP 00000215: SUB 00000216: AND 00000217: CALLER 00000218: PUSH1 0x01 0000021a: PUSH1 0xa0 0000021c: PUSH1 0x02 0000021e: EXP 0000021f: SUB 00000220: AND 00000221: EQ 00000222: ISZERO 00000223: ISZERO 00000224: PUSH2 0x1022 00000227: JUMPI 00000228: PUSH2 0x0002 0000022b: JUMP 0000022c: JUMPDEST 0000022d: PUSH2 0x05e1 00000230: PUSH1 0x04 00000232: DUP1 00000233: CALLDATALOAD 00000234: SWAP1 00000235: PUSH1 0x24 00000237: DUP1 00000238: CALLDATALOAD 00000239: SWAP2 0000023a: PUSH1 0x44 0000023c: CALLDATALOAD 0000023d: DUP1 0000023e: DUP4 0000023f: ADD 00000240: SWAP3 00000241: SWAP1 00000242: DUP3 00000243: ADD 00000244: CALLDATALOAD 00000245: SWAP2 00000246: PUSH1 0x64 00000248: CALLDATALOAD 00000249: SWAP2 0000024a: DUP3 0000024b: ADD 0000024c: SWAP2 0000024d: ADD 0000024e: CALLDATALOAD 0000024f: PUSH1 0x01 00000251: SLOAD 00000252: PUSH1 0x00 00000254: SWAP1 00000255: DUP2 00000256: SWAP1 00000257: DUP2 00000258: SWAP1 00000259: PUSH1 0xff 0000025b: AND 0000025c: ISZERO 0000025d: ISZERO 0000025e: PUSH2 0x062e 00000261: JUMPI 00000262: PUSH2 0x0002 00000265: JUMP 00000266: JUMPDEST 00000267: PUSH2 0x0611 0000026a: PUSH1 0x04 0000026c: CALLDATALOAD 0000026d: PUSH1 0x02 0000026f: DUP1 00000270: SLOAD 00000271: DUP3 00000272: SWAP1 00000273: DUP2 00000274: LT 00000275: ISZERO 00000276: PUSH2 0x0002 00000279: JUMPI 0000027a: POP 0000027b: PUSH1 0x00 0000027d: MSTORE 0000027e: PUSH32 0x405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace 0000029f: ADD 000002a0: SLOAD 000002a1: PUSH1 0x01 000002a3: PUSH1 0xa0 000002a5: PUSH1 0x02 000002a7: EXP 000002a8: SUB 000002a9: AND 000002aa: DUP2 000002ab: JUMP 000002ac: JUMPDEST 000002ad: PUSH2 0x0354 000002b0: PUSH1 0x04 000002b2: CALLDATALOAD 000002b3: PUSH1 0x01 000002b5: SLOAD 000002b6: PUSH1 0x00 000002b8: SWAP1 000002b9: PUSH1 0xff 000002bb: AND 000002bc: ISZERO 000002bd: ISZERO 000002be: PUSH2 0x0c11 000002c1: JUMPI 000002c2: PUSH2 0x0002 000002c5: JUMP 000002c6: JUMPDEST 000002c7: PUSH2 0x05e1 000002ca: PUSH1 0x07 000002cc: SLOAD 000002cd: DUP2 000002ce: JUMP 000002cf: JUMPDEST 000002d0: PUSH2 0x05e1 000002d3: PUSH1 0x04 000002d5: CALLDATALOAD 000002d6: PUSH1 0x08 000002d8: PUSH1 0x20 000002da: MSTORE 000002db: PUSH1 0x00 000002dd: SWAP1 000002de: DUP2 000002df: MSTORE 000002e0: PUSH1 0x40 000002e2: SWAP1 000002e3: KECCAK256 000002e4: SLOAD 000002e5: DUP2 000002e6: JUMP 000002e7: JUMPDEST 000002e8: PUSH2 0x05e1 000002eb: PUSH1 0x04 000002ed: SLOAD 000002ee: DUP2 000002ef: JUMP 000002f0: JUMPDEST 000002f1: PUSH2 0x0354 000002f4: PUSH1 0x04 000002f6: CALLDATALOAD 000002f7: ADDRESS 000002f8: PUSH1 0x01 000002fa: PUSH1 0xa0 000002fc: PUSH1 0x02 000002fe: EXP 000002ff: SUB 00000300: AND 00000301: CALLER 00000302: PUSH1 0x01 00000304: PUSH1 0xa0 00000306: PUSH1 0x02 00000308: EXP 00000309: SUB 0000030a: AND 0000030b: EQ 0000030c: ISZERO 0000030d: ISZERO 0000030e: PUSH2 0x10fe 00000311: JUMPI 00000312: PUSH2 0x0002 00000315: JUMP 00000316: JUMPDEST 00000317: PUSH2 0x05e1 0000031a: PUSH1 0x01 0000031c: SLOAD 0000031d: PUSH1 0xff 0000031f: AND 00000320: DUP2 00000321: JUMP 00000322: JUMPDEST 00000323: PUSH2 0x05e1 00000326: PUSH1 0x05 00000328: SLOAD 00000329: DUP2 0000032a: JUMP 0000032b: JUMPDEST 0000032c: PUSH2 0x0354 0000032f: PUSH1 0x04 00000331: CALLDATALOAD 00000332: PUSH1 0x24 00000334: CALLDATALOAD 00000335: ADDRESS 00000336: PUSH1 0x01 00000338: PUSH1 0xa0 0000033a: PUSH1 0x02 0000033c: EXP 0000033d: SUB 0000033e: AND 0000033f: CALLER 00000340: PUSH1 0x01 00000342: PUSH1 0xa0 00000344: PUSH1 0x02 00000346: EXP 00000347: SUB 00000348: AND 00000349: EQ 0000034a: ISZERO 0000034b: ISZERO 0000034c: PUSH2 0x0f0c 0000034f: JUMPI 00000350: PUSH2 0x0002 00000353: JUMP 00000354: JUMPDEST 00000355: STOP 00000356: JUMPDEST 00000357: ISZERO 00000358: PUSH2 0x037d 0000035b: JUMPI 0000035c: PUSH1 0x01 0000035e: PUSH1 0xa0 00000360: PUSH1 0x02 00000362: EXP 00000363: SUB 00000364: CALLER 00000365: AND 00000366: PUSH1 0x00 00000368: SWAP1 00000369: DUP2 0000036a: MSTORE 0000036b: PUSH1 0x03 0000036d: PUSH1 0x20 0000036f: MSTORE 00000370: PUSH1 0x40 00000372: SWAP1 00000373: KECCAK256 00000374: PUSH1 0x01 00000376: ADD 00000377: DUP1 00000378: SLOAD 00000379: CALLVALUE 0000037a: ADD 0000037b: SWAP1 0000037c: SSTORE 0000037d: JUMPDEST 0000037e: PUSH1 0x40 00000380: DUP1 00000381: MLOAD 00000382: PUSH1 0x01 00000384: PUSH1 0xa0 00000386: PUSH1 0x02 00000388: EXP 00000389: SUB 0000038a: CALLER 0000038b: AND 0000038c: DUP2 0000038d: MSTORE 0000038e: CALLVALUE 0000038f: PUSH1 0x20 00000391: DUP3 00000392: ADD 00000393: MSTORE 00000394: DUP2 00000395: MLOAD 00000396: PUSH32 0xe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c 000003b7: SWAP3 000003b8: SWAP2 000003b9: DUP2 000003ba: SWAP1 000003bb: SUB 000003bc: SWAP1 000003bd: SWAP2 000003be: ADD 000003bf: SWAP1 000003c0: LOG1 000003c1: JUMPDEST 000003c2: JUMP 000003c3: JUMPDEST 000003c4: PUSH2 0x03e6 000003c7: CALLER 000003c8: JUMPDEST 000003c9: PUSH1 0x01 000003cb: PUSH1 0xa0 000003cd: PUSH1 0x02 000003cf: EXP 000003d0: SUB 000003d1: AND 000003d2: PUSH1 0x00 000003d4: SWAP1 000003d5: DUP2 000003d6: MSTORE 000003d7: PUSH1 0x03 000003d9: PUSH1 0x20 000003db: MSTORE 000003dc: PUSH1 0x40 000003de: SWAP1 000003df: KECCAK256 000003e0: SLOAD 000003e1: PUSH1 0xff 000003e3: AND 000003e4: SWAP1 000003e5: JUMP 000003e6: JUMPDEST 000003e7: ISZERO 000003e8: PUSH2 0x0494 000003eb: JUMPI 000003ec: PUSH1 0x01 000003ee: PUSH1 0xa0 000003f0: PUSH1 0x02 000003f2: EXP 000003f3: SUB 000003f4: CALLER 000003f5: AND 000003f6: PUSH1 0x00 000003f8: SWAP1 000003f9: DUP2 000003fa: MSTORE 000003fb: PUSH1 0x03 000003fd: PUSH1 0x20 000003ff: MSTORE 00000400: PUSH1 0x40 00000402: SWAP1 00000403: KECCAK256 00000404: SLOAD 00000405: PUSH2 0x0100 00000408: SWAP1 00000409: DIV 0000040a: PUSH1 0xff 0000040c: AND 0000040d: ISZERO 0000040e: PUSH2 0x0416 00000411: JUMPI 00000412: PUSH2 0x0002 00000415: JUMP 00000416: JUMPDEST 00000417: PUSH1 0x00 00000419: SLOAD 0000041a: CALLVALUE 0000041b: EQ 0000041c: ISZERO 0000041d: PUSH2 0x0494 00000420: JUMPI 00000421: PUSH1 0x01 00000423: PUSH1 0xa0 00000425: PUSH1 0x02 00000427: EXP 00000428: SUB 00000429: CALLER 0000042a: AND 0000042b: PUSH1 0x00 0000042d: SWAP1 0000042e: DUP2 0000042f: MSTORE 00000430: PUSH1 0x03 00000432: PUSH1 0x20 00000434: MSTORE 00000435: PUSH1 0x40 00000437: SWAP1 00000438: KECCAK256 00000439: DUP1 0000043a: SLOAD 0000043b: PUSH2 0xff00 0000043e: NOT 0000043f: AND 00000440: PUSH2 0x0100 00000443: OR 00000444: SWAP1 00000445: SSTORE 00000446: PUSH1 0x05 00000448: DUP1 00000449: SLOAD 0000044a: PUSH1 0x01 0000044c: ADD 0000044d: SWAP1 0000044e: DUP2 0000044f: SWAP1 00000450: SSTORE 00000451: PUSH1 0x04 00000453: SLOAD 00000454: EQ 00000455: ISZERO 00000456: PUSH2 0x048f 00000459: JUMPI 0000045a: PUSH1 0x01 0000045c: DUP1 0000045d: SLOAD 0000045e: PUSH1 0xff 00000460: NOT 00000461: AND 00000462: DUP2 00000463: OR 00000464: SWAP1 00000465: SSTORE 00000466: PUSH1 0x40 00000468: MLOAD 00000469: PUSH32 0x302777af5d26fab9dd5120c5f1307c65193ebc51daf33244ada4365fab10602c 0000048a: SWAP1 0000048b: PUSH1 0x00 0000048d: SWAP1 0000048e: LOG1 0000048f: JUMPDEST 00000490: PUSH2 0x037d 00000493: JUMP 00000494: JUMPDEST 00000495: PUSH2 0x0002 00000498: JUMP 00000499: JUMPDEST 0000049a: PUSH1 0x40 0000049c: DUP1 0000049d: MLOAD 0000049e: DUP11 0000049f: DUP2 000004a0: MSTORE 000004a1: PUSH1 0x01 000004a3: PUSH1 0xa0 000004a5: PUSH1 0x02 000004a7: EXP 000004a8: SUB 000004a9: DUP11 000004aa: DUP2 000004ab: AND 000004ac: PUSH1 0x20 000004ae: DUP4 000004af: ADD 000004b0: MSTORE 000004b1: SWAP2 000004b2: DUP2 000004b3: ADD 000004b4: DUP10 000004b5: SWAP1 000004b6: MSTORE 000004b7: SWAP1 000004b8: DUP6 000004b9: AND 000004ba: PUSH1 0xa0 000004bc: DUP3 000004bd: ADD 000004be: MSTORE 000004bf: PUSH1 0xc0 000004c1: DUP2 000004c2: ADD 000004c3: DUP5 000004c4: SWAP1 000004c5: MSTORE 000004c6: PUSH1 0xe0 000004c8: DUP2 000004c9: ADD 000004ca: DUP4 000004cb: SWAP1 000004cc: MSTORE 000004cd: PUSH2 0x0100 000004d0: DUP2 000004d1: DUP2 000004d2: ADD 000004d3: DUP4 000004d4: SWAP1 000004d5: MSTORE 000004d6: PUSH2 0x0120 000004d9: PUSH1 0x60 000004db: DUP4 000004dc: ADD 000004dd: DUP2 000004de: DUP2 000004df: MSTORE 000004e0: DUP10 000004e1: SLOAD 000004e2: PUSH1 0x02 000004e4: PUSH1 0x01 000004e6: DUP3 000004e7: AND 000004e8: ISZERO 000004e9: SWAP1 000004ea: SWAP5 000004eb: MUL 000004ec: PUSH1 0x00 000004ee: NOT 000004ef: ADD 000004f0: AND 000004f1: SWAP3 000004f2: SWAP1 000004f3: SWAP3 000004f4: DIV 000004f5: SWAP1 000004f6: DUP4 000004f7: ADD 000004f8: DUP2 000004f9: SWAP1 000004fa: MSTORE 000004fb: PUSH1 0x80 000004fd: DUP4 000004fe: ADD 000004ff: SWAP1 00000500: PUSH2 0x0140 00000503: DUP5 00000504: ADD 00000505: SWAP1 00000506: DUP11 00000507: SWAP1 00000508: DUP1 00000509: ISZERO 0000050a: PUSH2 0x0554 0000050d: JUMPI 0000050e: DUP1 0000050f: PUSH1 0x1f 00000511: LT 00000512: PUSH2 0x0529 00000515: JUMPI 00000516: PUSH2 0x0100 00000519: DUP1 0000051a: DUP4 0000051b: SLOAD 0000051c: DIV 0000051d: MUL 0000051e: DUP4 0000051f: MSTORE 00000520: SWAP2 00000521: PUSH1 0x20 00000523: ADD 00000524: SWAP2 00000525: PUSH2 0x0554 00000528: JUMP 00000529: JUMPDEST 0000052a: DUP3 0000052b: ADD 0000052c: SWAP2 0000052d: SWAP1 0000052e: PUSH1 0x00 00000530: MSTORE 00000531: PUSH1 0x20 00000533: PUSH1 0x00 00000535: KECCAK256 00000536: SWAP1 00000537: JUMPDEST 00000538: DUP2 00000539: SLOAD 0000053a: DUP2 0000053b: MSTORE 0000053c: SWAP1 0000053d: PUSH1 0x01 0000053f: ADD 00000540: SWAP1 00000541: PUSH1 0x20 00000543: ADD 00000544: DUP1 00000545: DUP4 00000546: GT 00000547: PUSH2 0x0537 0000054a: JUMPI 0000054b: DUP3 0000054c: SWAP1 0000054d: SUB 0000054e: PUSH1 0x1f 00000550: AND 00000551: DUP3 00000552: ADD 00000553: SWAP2 00000554: JUMPDEST 00000555: POP 00000556: POP 00000557: DUP4 00000558: DUP2 00000559: SUB 0000055a: DUP3 0000055b: MSTORE 0000055c: DUP9 0000055d: SLOAD 0000055e: PUSH1 0x02 00000560: PUSH1 0x01 00000562: DUP3 00000563: AND 00000564: ISZERO 00000565: PUSH2 0x0100 00000568: MUL 00000569: PUSH1 0x00 0000056b: NOT 0000056c: ADD 0000056d: SWAP1 0000056e: SWAP2 0000056f: AND 00000570: DIV 00000571: DUP1 00000572: DUP3 00000573: MSTORE 00000574: PUSH1 0x20 00000576: SWAP2 00000577: SWAP1 00000578: SWAP2 00000579: ADD 0000057a: SWAP1 0000057b: DUP10 0000057c: SWAP1 0000057d: DUP1 0000057e: ISZERO 0000057f: PUSH2 0x05c9 00000582: JUMPI 00000583: DUP1 00000584: PUSH1 0x1f 00000586: LT 00000587: PUSH2 0x059e 0000058a: JUMPI 0000058b: PUSH2 0x0100 0000058e: DUP1 0000058f: DUP4 00000590: SLOAD 00000591: DIV 00000592: MUL 00000593: DUP4 00000594: MSTORE 00000595: SWAP2 00000596: PUSH1 0x20 00000598: ADD 00000599: SWAP2 0000059a: PUSH2 0x05c9 0000059d: JUMP 0000059e: JUMPDEST 0000059f: DUP3 000005a0: ADD 000005a1: SWAP2 000005a2: SWAP1 000005a3: PUSH1 0x00 000005a5: MSTORE 000005a6: PUSH1 0x20 000005a8: PUSH1 0x00 000005aa: KECCAK256 000005ab: SWAP1 000005ac: JUMPDEST 000005ad: DUP2 000005ae: SLOAD 000005af: DUP2 000005b0: MSTORE 000005b1: SWAP1 000005b2: PUSH1 0x01 000005b4: ADD 000005b5: SWAP1 000005b6: PUSH1 0x20 000005b8: ADD 000005b9: DUP1 000005ba: DUP4 000005bb: GT 000005bc: PUSH2 0x05ac 000005bf: JUMPI 000005c0: DUP3 000005c1: SWAP1 000005c2: SUB 000005c3: PUSH1 0x1f 000005c5: AND 000005c6: DUP3 000005c7: ADD 000005c8: SWAP2 000005c9: JUMPDEST 000005ca: POP 000005cb: POP 000005cc: SWAP12 000005cd: POP 000005ce: POP 000005cf: POP 000005d0: POP 000005d1: POP 000005d2: POP 000005d3: POP 000005d4: POP 000005d5: POP 000005d6: POP 000005d7: POP 000005d8: POP 000005d9: PUSH1 0x40 000005db: MLOAD 000005dc: DUP1 000005dd: SWAP2 000005de: SUB 000005df: SWAP1 000005e0: RETURN 000005e1: JUMPDEST 000005e2: PUSH1 0x40 000005e4: DUP1 000005e5: MLOAD 000005e6: SWAP2 000005e7: DUP3 000005e8: MSTORE 000005e9: MLOAD 000005ea: SWAP1 000005eb: DUP2 000005ec: SWAP1 000005ed: SUB 000005ee: PUSH1 0x20 000005f0: ADD 000005f1: SWAP1 000005f2: RETURN 000005f3: JUMPDEST 000005f4: PUSH1 0x40 000005f6: DUP1 000005f7: MLOAD 000005f8: SWAP4 000005f9: DUP5 000005fa: MSTORE 000005fb: PUSH1 0x20 000005fd: DUP5 000005fe: ADD 000005ff: SWAP3 00000600: SWAP1 00000601: SWAP3 00000602: MSTORE 00000603: DUP3 00000604: DUP3 00000605: ADD 00000606: MSTORE 00000607: MLOAD 00000608: SWAP1 00000609: DUP2 0000060a: SWAP1 0000060b: SUB 0000060c: PUSH1 0x60 0000060e: ADD 0000060f: SWAP1 00000610: RETURN 00000611: JUMPDEST 00000612: PUSH1 0x40 00000614: DUP1 00000615: MLOAD 00000616: PUSH1 0x01 00000618: PUSH1 0xa0 0000061a: PUSH1 0x02 0000061c: EXP 0000061d: SUB 0000061e: SWAP3 0000061f: SWAP1 00000620: SWAP3 00000621: AND 00000622: DUP3 00000623: MSTORE 00000624: MLOAD 00000625: SWAP1 00000626: DUP2 00000627: SWAP1 00000628: SUB 00000629: PUSH1 0x20 0000062b: ADD 0000062c: SWAP1 0000062d: RETURN 0000062e: JUMPDEST 0000062f: PUSH2 0x0637 00000632: CALLER 00000633: PUSH2 0x03c8 00000636: JUMP 00000637: JUMPDEST 00000638: ISZERO 00000639: ISZERO 0000063a: PUSH2 0x0642 0000063d: JUMPI 0000063e: PUSH2 0x0002 00000641: JUMP 00000642: JUMPDEST 00000643: PUSH1 0x00 00000645: CALLDATASIZE 00000646: NUMBER 00000647: PUSH1 0x40 00000649: MLOAD 0000064a: DUP1 0000064b: DUP5 0000064c: DUP5 0000064d: DUP1 0000064e: DUP3 0000064f: DUP5 00000650: CALLDATACOPY 00000651: DUP3 00000652: ADD 00000653: SWAP2 00000654: POP 00000655: POP 00000656: DUP3 00000657: DUP2 00000658: MSTORE 00000659: PUSH1 0x20 0000065b: ADD 0000065c: SWAP4 0000065d: POP 0000065e: POP 0000065f: POP 00000660: POP 00000661: PUSH1 0x40 00000663: MLOAD 00000664: DUP1 00000665: SWAP2 00000666: SUB 00000667: SWAP1 00000668: KECCAK256 00000669: SWAP2 0000066a: POP 0000066b: PUSH1 0x06 0000066d: PUSH1 0x00 0000066f: POP 00000670: PUSH1 0x00 00000672: DUP4 00000673: DUP2 00000674: MSTORE 00000675: PUSH1 0x20 00000677: ADD 00000678: SWAP1 00000679: DUP2 0000067a: MSTORE 0000067b: PUSH1 0x20 0000067d: ADD 0000067e: PUSH1 0x00 00000680: KECCAK256 00000681: PUSH1 0x00 00000683: POP 00000684: SWAP1 00000685: POP 00000686: PUSH1 0x01 00000688: DUP2 00000689: PUSH1 0x00 0000068b: ADD 0000068c: PUSH1 0x00 0000068e: PUSH2 0x0100 00000691: EXP 00000692: DUP2 00000693: SLOAD 00000694: DUP2 00000695: PUSH1 0xff 00000697: MUL 00000698: NOT 00000699: AND 0000069a: SWAP1 0000069b: DUP4 0000069c: MUL 0000069d: OR 0000069e: SWAP1 0000069f: SSTORE 000006a0: POP 000006a1: DUP9 000006a2: DUP2 000006a3: PUSH1 0x00 000006a5: ADD 000006a6: PUSH1 0x01 000006a8: PUSH2 0x0100 000006ab: EXP 000006ac: DUP2 000006ad: SLOAD 000006ae: DUP2 000006af: PUSH1 0x01 000006b1: PUSH1 0xa0 000006b3: PUSH1 0x02 000006b5: EXP 000006b6: SUB 000006b7: MUL 000006b8: NOT 000006b9: AND 000006ba: SWAP1 000006bb: DUP4 000006bc: MUL 000006bd: OR 000006be: SWAP1 000006bf: SSTORE 000006c0: POP 000006c1: DUP8 000006c2: DUP2 000006c3: PUSH1 0x01 000006c5: ADD 000006c6: PUSH1 0x00 000006c8: POP 000006c9: DUP2 000006ca: SWAP1 000006cb: SSTORE 000006cc: POP 000006cd: DUP7 000006ce: DUP7 000006cf: DUP3 000006d0: PUSH1 0x02 000006d2: ADD 000006d3: PUSH1 0x00 000006d5: POP 000006d6: SWAP2 000006d7: SWAP1 000006d8: DUP3 000006d9: DUP1 000006da: SLOAD 000006db: PUSH1 0x01 000006dd: DUP2 000006de: PUSH1 0x01 000006e0: AND 000006e1: ISZERO 000006e2: PUSH2 0x0100 000006e5: MUL 000006e6: SUB 000006e7: AND 000006e8: PUSH1 0x02 000006ea: SWAP1 000006eb: DIV 000006ec: SWAP1 000006ed: PUSH1 0x00 000006ef: MSTORE 000006f0: PUSH1 0x20 000006f2: PUSH1 0x00 000006f4: KECCAK256 000006f5: SWAP1 000006f6: PUSH1 0x1f 000006f8: ADD 000006f9: PUSH1 0x20 000006fb: SWAP1 000006fc: DIV 000006fd: DUP2 000006fe: ADD 000006ff: SWAP3 00000700: DUP3 00000701: PUSH1 0x1f 00000703: LT 00000704: PUSH2 0x0730 00000707: JUMPI 00000708: DUP3 00000709: DUP1 0000070a: ADD 0000070b: DUP2 0000070c: CALLDATALOAD 0000070d: PUSH1 0xff 0000070f: NOT 00000710: AND 00000711: OR 00000712: DUP6 00000713: SSTORE 00000714: JUMPDEST 00000715: POP 00000716: PUSH2 0x0760 00000719: SWAP3 0000071a: SWAP2 0000071b: POP 0000071c: JUMPDEST 0000071d: DUP1 0000071e: DUP3 0000071f: GT 00000720: ISZERO 00000721: PUSH2 0x07b6 00000724: JUMPI 00000725: PUSH1 0x00 00000727: DUP2 00000728: SSTORE 00000729: PUSH1 0x01 0000072b: ADD 0000072c: PUSH2 0x071c 0000072f: JUMP 00000730: JUMPDEST 00000731: DUP3 00000732: DUP1 00000733: ADD 00000734: PUSH1 0x01 00000736: ADD 00000737: DUP6 00000738: SSTORE 00000739: DUP3 0000073a: ISZERO 0000073b: PUSH2 0x0714 0000073e: JUMPI 0000073f: SWAP2 00000740: DUP3 00000741: ADD 00000742: JUMPDEST 00000743: DUP3 00000744: DUP2 00000745: GT 00000746: ISZERO 00000747: PUSH2 0x0714 0000074a: JUMPI 0000074b: DUP3 0000074c: CALLDATALOAD 0000074d: DUP3 0000074e: PUSH1 0x00 00000750: POP 00000751: SSTORE 00000752: SWAP2 00000753: PUSH1 0x20 00000755: ADD 00000756: SWAP2 00000757: SWAP1 00000758: PUSH1 0x01 0000075a: ADD 0000075b: SWAP1 0000075c: PUSH2 0x0742 0000075f: JUMP 00000760: JUMPDEST 00000761: POP 00000762: POP 00000763: DUP5 00000764: DUP5 00000765: DUP3 00000766: PUSH1 0x03 00000768: ADD 00000769: PUSH1 0x00 0000076b: POP 0000076c: SWAP2 0000076d: SWAP1 0000076e: DUP3 0000076f: DUP1 00000770: SLOAD 00000771: PUSH1 0x01 00000773: DUP2 00000774: PUSH1 0x01 00000776: AND 00000777: ISZERO 00000778: PUSH2 0x0100 0000077b: MUL 0000077c: SUB 0000077d: AND 0000077e: PUSH1 0x02 00000780: SWAP1 00000781: DIV 00000782: SWAP1 00000783: PUSH1 0x00 00000785: MSTORE 00000786: PUSH1 0x20 00000788: PUSH1 0x00 0000078a: KECCAK256 0000078b: SWAP1 0000078c: PUSH1 0x1f 0000078e: ADD 0000078f: PUSH1 0x20 00000791: SWAP1 00000792: DIV 00000793: DUP2 00000794: ADD 00000795: SWAP3 00000796: DUP3 00000797: PUSH1 0x1f 00000799: LT 0000079a: PUSH2 0x07ba 0000079d: JUMPI 0000079e: DUP3 0000079f: DUP1 000007a0: ADD 000007a1: DUP2 000007a2: CALLDATALOAD 000007a3: PUSH1 0xff 000007a5: NOT 000007a6: AND 000007a7: OR 000007a8: DUP6 000007a9: SSTORE 000007aa: JUMPDEST 000007ab: POP 000007ac: PUSH2 0x07ea 000007af: SWAP3 000007b0: SWAP2 000007b1: POP 000007b2: PUSH2 0x071c 000007b5: JUMP 000007b6: JUMPDEST 000007b7: POP 000007b8: SWAP1 000007b9: JUMP 000007ba: JUMPDEST 000007bb: DUP3 000007bc: DUP1 000007bd: ADD 000007be: PUSH1 0x01 000007c0: ADD 000007c1: DUP6 000007c2: SSTORE 000007c3: DUP3 000007c4: ISZERO 000007c5: PUSH2 0x07aa 000007c8: JUMPI 000007c9: SWAP2 000007ca: DUP3 000007cb: ADD 000007cc: JUMPDEST 000007cd: DUP3 000007ce: DUP2 000007cf: GT 000007d0: ISZERO 000007d1: PUSH2 0x07aa 000007d4: JUMPI 000007d5: DUP3 000007d6: CALLDATALOAD 000007d7: DUP3 000007d8: PUSH1 0x00 000007da: POP 000007db: SSTORE 000007dc: SWAP2 000007dd: PUSH1 0x20 000007df: ADD 000007e0: SWAP2 000007e1: SWAP1 000007e2: PUSH1 0x01 000007e4: ADD 000007e5: SWAP1 000007e6: PUSH2 0x07cc 000007e9: JUMP 000007ea: JUMPDEST 000007eb: POP 000007ec: POP 000007ed: PUSH1 0x04 000007ef: DUP2 000007f0: ADD 000007f1: DUP1 000007f2: SLOAD 000007f3: PUSH1 0x01 000007f5: PUSH1 0xa0 000007f7: PUSH1 0x02 000007f9: EXP 000007fa: SUB 000007fb: NOT 000007fc: AND 000007fd: CALLER 000007fe: SWAP1 000007ff: DUP2 00000800: OR 00000801: SWAP1 00000802: SWAP2 00000803: SSTORE 00000804: PUSH1 0x01 00000806: PUSH1 0x05 00000808: DUP4 00000809: ADD 0000080a: DUP2 0000080b: SWAP1 0000080c: SSTORE 0000080d: PUSH1 0x01 0000080f: PUSH1 0xa0 00000811: PUSH1 0x02 00000813: EXP 00000814: SUB 00000815: DUP3 00000816: AND 00000817: PUSH1 0x00 00000819: DUP2 0000081a: DUP2 0000081b: MSTORE 0000081c: PUSH1 0x06 0000081e: DUP6 0000081f: ADD 00000820: PUSH1 0x20 00000822: SWAP1 00000823: DUP2 00000824: MSTORE 00000825: PUSH1 0x40 00000827: SWAP2 00000828: DUP3 00000829: SWAP1 0000082a: KECCAK256 0000082b: DUP5 0000082c: SWAP1 0000082d: SSTORE 0000082e: PUSH1 0x07 00000830: DUP7 00000831: DUP2 00000832: ADD 00000833: DUP1 00000834: SLOAD 00000835: PUSH2 0xffff 00000838: NOT 00000839: AND 0000083a: SWAP1 0000083b: SSTORE 0000083c: DUP1 0000083d: SLOAD 0000083e: SWAP1 0000083f: SWAP5 00000840: ADD 00000841: SWAP1 00000842: SWAP4 00000843: SSTORE 00000844: DUP1 00000845: MLOAD 00000846: DUP7 00000847: DUP2 00000848: MSTORE 00000849: SWAP3 0000084a: DUP4 0000084b: ADD 0000084c: SWAP2 0000084d: SWAP1 0000084e: SWAP2 0000084f: MSTORE 00000850: PUSH1 0x60 00000852: SWAP1 00000853: DUP3 00000854: ADD 00000855: DUP2 00000856: DUP2 00000857: MSTORE 00000858: SWAP1 00000859: DUP3 0000085a: ADD 0000085b: DUP8 0000085c: SWAP1 0000085d: MSTORE 0000085e: PUSH32 0x97ca763cb1128628dff2b065b85024526263a3d2f1d25b75124c8ad6d787d8e3 0000087f: SWAP3 00000880: DUP6 00000881: SWAP3 00000882: SWAP1 00000883: SWAP2 00000884: DUP10 00000885: SWAP2 00000886: DUP10 00000887: SWAP2 00000888: PUSH1 0x80 0000088a: DUP3 0000088b: ADD 0000088c: DUP5 0000088d: DUP5 0000088e: DUP1 0000088f: DUP3 00000890: DUP5 00000891: CALLDATACOPY 00000892: DUP3 00000893: ADD 00000894: SWAP2 00000895: POP 00000896: POP 00000897: SWAP6 00000898: POP 00000899: POP 0000089a: POP 0000089b: POP 0000089c: POP 0000089d: POP 0000089e: PUSH1 0x40 000008a0: MLOAD 000008a1: DUP1 000008a2: SWAP2 000008a3: SUB 000008a4: SWAP1 000008a5: LOG1 000008a6: POP 000008a7: SWAP8 000008a8: SWAP7 000008a9: POP 000008aa: POP 000008ab: POP 000008ac: POP 000008ad: POP 000008ae: POP 000008af: POP 000008b0: JUMP 000008b1: JUMPDEST 000008b2: PUSH2 0x08ba 000008b5: CALLER 000008b6: PUSH2 0x03c8 000008b9: JUMP 000008ba: JUMPDEST 000008bb: ISZERO 000008bc: ISZERO 000008bd: PUSH2 0x08c5 000008c0: JUMPI 000008c1: PUSH2 0x0002 000008c4: JUMP 000008c5: JUMPDEST 000008c6: PUSH1 0x00 000008c8: DUP2 000008c9: DUP2 000008ca: MSTORE 000008cb: PUSH1 0x06 000008cd: PUSH1 0x20 000008cf: MSTORE 000008d0: PUSH1 0x40 000008d2: SWAP1 000008d3: KECCAK256 000008d4: SLOAD 000008d5: DUP2 000008d6: SWAP1 000008d7: PUSH1 0xff 000008d9: AND 000008da: ISZERO 000008db: ISZERO 000008dc: PUSH2 0x08e4 000008df: JUMPI 000008e0: PUSH2 0x0002 000008e3: JUMP 000008e4: JUMPDEST 000008e5: PUSH1 0x00 000008e7: DUP3 000008e8: DUP2 000008e9: MSTORE 000008ea: PUSH1 0x06 000008ec: PUSH1 0x20 000008ee: MSTORE 000008ef: PUSH1 0x40 000008f1: SWAP1 000008f2: KECCAK256 000008f3: PUSH1 0x07 000008f5: ADD 000008f6: SLOAD 000008f7: DUP3 000008f8: SWAP1 000008f9: PUSH1 0xff 000008fb: AND 000008fc: ISZERO 000008fd: PUSH2 0x0905 00000900: JUMPI 00000901: PUSH2 0x0002 00000904: JUMP 00000905: JUMPDEST 00000906: PUSH1 0x00 00000908: DUP4 00000909: DUP2 0000090a: MSTORE 0000090b: PUSH1 0x06 0000090d: PUSH1 0x20 0000090f: MSTORE 00000910: PUSH1 0x40 00000912: SWAP1 00000913: KECCAK256 00000914: PUSH1 0x04 00000916: ADD 00000917: SLOAD 00000918: DUP4 00000919: SWAP1 0000091a: PUSH1 0x01 0000091c: PUSH1 0xa0 0000091e: PUSH1 0x02 00000920: EXP 00000921: SUB 00000922: SWAP1 00000923: DUP2 00000924: AND 00000925: CALLER 00000926: SWAP2 00000927: SWAP1 00000928: SWAP2 00000929: AND 0000092a: EQ 0000092b: PUSH2 0x0933 0000092e: JUMPI 0000092f: PUSH2 0x0002 00000932: JUMP 00000933: JUMPDEST 00000934: PUSH1 0x00 00000936: DUP5 00000937: DUP2 00000938: MSTORE 00000939: PUSH1 0x06 0000093b: PUSH1 0x20 0000093d: MSTORE 0000093e: PUSH1 0x40 00000940: DUP2 00000941: KECCAK256 00000942: DUP1 00000943: SLOAD 00000944: PUSH21 0xffffffffffffffffffffffffffffffffffffffffff 0000095a: NOT 0000095b: AND 0000095c: DUP2 0000095d: SSTORE 0000095e: PUSH1 0x01 00000960: DUP2 00000961: DUP2 00000962: ADD 00000963: DUP4 00000964: SWAP1 00000965: SSTORE 00000966: PUSH1 0x02 00000968: DUP1 00000969: DUP4 0000096a: ADD 0000096b: DUP1 0000096c: SLOAD 0000096d: DUP6 0000096e: DUP3 0000096f: SSTORE 00000970: SWAP4 00000971: SWAP5 00000972: SWAP4 00000973: SWAP1 00000974: SWAP3 00000975: DUP2 00000976: AND 00000977: ISZERO 00000978: PUSH2 0x0100 0000097b: MUL 0000097c: PUSH1 0x00 0000097e: NOT 0000097f: ADD 00000980: AND 00000981: DIV 00000982: PUSH1 0x1f 00000984: DUP2 00000985: SWAP1 00000986: LT 00000987: PUSH2 0x0a2f 0000098a: JUMPI 0000098b: POP 0000098c: JUMPDEST 0000098d: POP 0000098e: PUSH1 0x03 00000990: DUP3 00000991: ADD 00000992: PUSH1 0x00 00000994: POP 00000995: DUP1 00000996: SLOAD 00000997: PUSH1 0x01 00000999: DUP2 0000099a: PUSH1 0x01 0000099c: AND 0000099d: ISZERO 0000099e: PUSH2 0x0100 000009a1: MUL 000009a2: SUB 000009a3: AND 000009a4: PUSH1 0x02 000009a6: SWAP1 000009a7: DIV 000009a8: PUSH1 0x00 000009aa: DUP3 000009ab: SSTORE 000009ac: DUP1 000009ad: PUSH1 0x1f 000009af: LT 000009b0: PUSH2 0x0a4d 000009b3: JUMPI 000009b4: POP 000009b5: JUMPDEST 000009b6: POP 000009b7: POP 000009b8: PUSH1 0x04 000009ba: DUP2 000009bb: ADD 000009bc: DUP1 000009bd: SLOAD 000009be: PUSH1 0x01 000009c0: PUSH1 0xa0 000009c2: PUSH1 0x02 000009c4: EXP 000009c5: SUB 000009c6: NOT 000009c7: AND 000009c8: SWAP1 000009c9: SSTORE 000009ca: PUSH1 0x00 000009cc: PUSH1 0x05 000009ce: DUP3 000009cf: ADD 000009d0: SSTORE 000009d1: PUSH1 0x07 000009d3: SWAP1 000009d4: DUP2 000009d5: ADD 000009d6: DUP1 000009d7: SLOAD 000009d8: PUSH2 0xffff 000009db: NOT 000009dc: AND 000009dd: SWAP1 000009de: SSTORE 000009df: DUP1 000009e0: SLOAD 000009e1: PUSH1 0x00 000009e3: NOT 000009e4: ADD 000009e5: SWAP1 000009e6: SSTORE 000009e7: PUSH1 0x40 000009e9: DUP1 000009ea: MLOAD 000009eb: DUP6 000009ec: DUP2 000009ed: MSTORE 000009ee: PUSH1 0x01 000009f0: PUSH1 0xa0 000009f2: PUSH1 0x02 000009f4: EXP 000009f5: SUB 000009f6: CALLER 000009f7: AND 000009f8: PUSH1 0x20 000009fa: DUP3 000009fb: ADD 000009fc: MSTORE 000009fd: DUP2 000009fe: MLOAD 000009ff: PUSH32 0x613bfe03cf8d10936342cd5f0f1bcce93454a19655ddc8557a26756d60f50c36 00000a20: SWAP3 00000a21: SWAP2 00000a22: DUP2 00000a23: SWAP1 00000a24: SUB 00000a25: SWAP1 00000a26: SWAP2 00000a27: ADD 00000a28: SWAP1 00000a29: LOG1 00000a2a: POP 00000a2b: POP 00000a2c: POP 00000a2d: POP 00000a2e: JUMP 00000a2f: JUMPDEST 00000a30: PUSH1 0x1f 00000a32: ADD 00000a33: PUSH1 0x20 00000a35: SWAP1 00000a36: DIV 00000a37: SWAP1 00000a38: PUSH1 0x00 00000a3a: MSTORE 00000a3b: PUSH1 0x20 00000a3d: PUSH1 0x00 00000a3f: KECCAK256 00000a40: SWAP1 00000a41: DUP2 00000a42: ADD 00000a43: SWAP1 00000a44: PUSH2 0x098c 00000a47: SWAP2 00000a48: SWAP1 00000a49: PUSH2 0x071c 00000a4c: JUMP 00000a4d: JUMPDEST 00000a4e: PUSH1 0x1f 00000a50: ADD 00000a51: PUSH1 0x20 00000a53: SWAP1 00000a54: DIV 00000a55: SWAP1 00000a56: PUSH1 0x00 00000a58: MSTORE 00000a59: PUSH1 0x20 00000a5b: PUSH1 0x00 00000a5d: KECCAK256 00000a5e: SWAP1 00000a5f: DUP2 00000a60: ADD 00000a61: SWAP1 00000a62: PUSH2 0x09b5 00000a65: SWAP2 00000a66: SWAP1 00000a67: PUSH2 0x071c 00000a6a: JUMP 00000a6b: JUMPDEST 00000a6c: PUSH2 0x0a74 00000a6f: CALLER 00000a70: PUSH2 0x03c8 00000a73: JUMP 00000a74: JUMPDEST 00000a75: ISZERO 00000a76: ISZERO 00000a77: PUSH2 0x0a7f 00000a7a: JUMPI 00000a7b: PUSH2 0x0002 00000a7e: JUMP 00000a7f: JUMPDEST 00000a80: PUSH1 0x00 00000a82: DUP3 00000a83: DUP2 00000a84: MSTORE 00000a85: PUSH1 0x06 00000a87: PUSH1 0x20 00000a89: MSTORE 00000a8a: PUSH1 0x40 00000a8c: SWAP1 00000a8d: KECCAK256 00000a8e: SLOAD 00000a8f: DUP3 00000a90: SWAP1 00000a91: PUSH1 0xff 00000a93: AND 00000a94: ISZERO 00000a95: ISZERO 00000a96: PUSH2 0x0a9e 00000a99: JUMPI 00000a9a: PUSH2 0x0002 00000a9d: JUMP 00000a9e: JUMPDEST 00000a9f: PUSH1 0x00 00000aa1: DUP4 00000aa2: DUP2 00000aa3: MSTORE 00000aa4: PUSH1 0x06 00000aa6: PUSH1 0x20 00000aa8: DUP2 00000aa9: DUP2 00000aaa: MSTORE 00000aab: PUSH1 0x40 00000aad: DUP1 00000aae: DUP5 00000aaf: KECCAK256 00000ab0: PUSH1 0x01 00000ab2: PUSH1 0xa0 00000ab4: PUSH1 0x02 00000ab6: EXP 00000ab7: SUB 00000ab8: CALLER 00000ab9: AND 00000aba: DUP6 00000abb: MSTORE 00000abc: SWAP3 00000abd: SWAP1 00000abe: SWAP3 00000abf: ADD 00000ac0: SWAP1 00000ac1: MSTORE 00000ac2: SWAP1 00000ac3: KECCAK256 00000ac4: SLOAD 00000ac5: DUP4 00000ac6: SWAP1 00000ac7: PUSH1 0x01 00000ac9: EQ 00000aca: ISZERO 00000acb: PUSH2 0x0ad3 00000ace: JUMPI 00000acf: PUSH2 0x0002 00000ad2: JUMP 00000ad3: JUMPDEST 00000ad4: PUSH1 0x00 00000ad6: DUP5 00000ad7: DUP2 00000ad8: MSTORE 00000ad9: PUSH1 0x06 00000adb: PUSH1 0x20 00000add: DUP2 00000ade: DUP2 00000adf: MSTORE 00000ae0: PUSH1 0x40 00000ae2: DUP1 00000ae3: DUP5 00000ae4: KECCAK256 00000ae5: PUSH1 0x05 00000ae7: DUP2 00000ae8: ADD 00000ae9: DUP1 00000aea: SLOAD 00000aeb: PUSH1 0x01 00000aed: SWAP1 00000aee: DUP2 00000aef: ADD 00000af0: DUP3 00000af1: SSTORE 00000af2: PUSH1 0x01 00000af4: PUSH1 0xa0 00000af6: PUSH1 0x02 00000af8: EXP 00000af9: SUB 00000afa: CALLER 00000afb: AND 00000afc: DUP8 00000afd: MSTORE 00000afe: SWAP5 00000aff: DUP3 00000b00: ADD 00000b01: SWAP1 00000b02: SWAP4 00000b03: MSTORE 00000b04: SWAP4 00000b05: KECCAK256 00000b06: SWAP2 00000b07: SWAP1 00000b08: SWAP2 00000b09: SSTORE 00000b0a: PUSH1 0x04 00000b0c: SLOAD 00000b0d: SWAP1 00000b0e: SLOAD 00000b0f: SWAP2 00000b10: SWAP5 00000b11: POP 00000b12: EQ 00000b13: ISZERO 00000b14: PUSH2 0x0c0b 00000b17: JUMPI 00000b18: PUSH1 0x01 00000b1a: DUP4 00000b1b: PUSH1 0x07 00000b1d: ADD 00000b1e: PUSH1 0x00 00000b20: PUSH2 0x0100 00000b23: EXP 00000b24: DUP2 00000b25: SLOAD 00000b26: DUP2 00000b27: PUSH1 0xff 00000b29: MUL 00000b2a: NOT 00000b2b: AND 00000b2c: SWAP1 00000b2d: DUP4 00000b2e: MUL 00000b2f: OR 00000b30: SWAP1 00000b31: SSTORE 00000b32: POP 00000b33: PUSH32 0x9cc47f6bc8a49c2305b0314117883fd228b7682d2bbd2c4ccc46c4685091f706 00000b54: DUP5 00000b55: CALLER 00000b56: DUP6 00000b57: PUSH1 0x03 00000b59: ADD 00000b5a: PUSH1 0x00 00000b5c: POP 00000b5d: PUSH1 0x40 00000b5f: MLOAD 00000b60: DUP1 00000b61: DUP5 00000b62: DUP2 00000b63: MSTORE 00000b64: PUSH1 0x20 00000b66: ADD 00000b67: DUP4 00000b68: PUSH1 0x01 00000b6a: PUSH1 0xa0 00000b6c: PUSH1 0x02 00000b6e: EXP 00000b6f: SUB 00000b70: AND 00000b71: DUP2 00000b72: MSTORE 00000b73: PUSH1 0x20 00000b75: ADD 00000b76: DUP1 00000b77: PUSH1 0x20 00000b79: ADD 00000b7a: DUP3 00000b7b: DUP2 00000b7c: SUB 00000b7d: DUP3 00000b7e: MSTORE 00000b7f: DUP4 00000b80: DUP2 00000b81: DUP2 00000b82: SLOAD 00000b83: PUSH1 0x01 00000b85: DUP2 00000b86: PUSH1 0x01 00000b88: AND 00000b89: ISZERO 00000b8a: PUSH2 0x0100 00000b8d: MUL 00000b8e: SUB 00000b8f: AND 00000b90: PUSH1 0x02 00000b92: SWAP1 00000b93: DIV 00000b94: DUP2 00000b95: MSTORE 00000b96: PUSH1 0x20 00000b98: ADD 00000b99: SWAP2 00000b9a: POP 00000b9b: DUP1 00000b9c: SLOAD 00000b9d: PUSH1 0x01 00000b9f: DUP2 00000ba0: PUSH1 0x01 00000ba2: AND 00000ba3: ISZERO 00000ba4: PUSH2 0x0100 00000ba7: MUL 00000ba8: SUB 00000ba9: AND 00000baa: PUSH1 0x02 00000bac: SWAP1 00000bad: DIV 00000bae: DUP1 00000baf: ISZERO 00000bb0: PUSH2 0x0bfa 00000bb3: JUMPI 00000bb4: DUP1 00000bb5: PUSH1 0x1f 00000bb7: LT 00000bb8: PUSH2 0x0bcf 00000bbb: JUMPI 00000bbc: PUSH2 0x0100 00000bbf: DUP1 00000bc0: DUP4 00000bc1: SLOAD 00000bc2: DIV 00000bc3: MUL 00000bc4: DUP4 00000bc5: MSTORE 00000bc6: SWAP2 00000bc7: PUSH1 0x20 00000bc9: ADD 00000bca: SWAP2 00000bcb: PUSH2 0x0bfa 00000bce: JUMP 00000bcf: JUMPDEST 00000bd0: DUP3 00000bd1: ADD 00000bd2: SWAP2 00000bd3: SWAP1 00000bd4: PUSH1 0x00 00000bd6: MSTORE 00000bd7: PUSH1 0x20 00000bd9: PUSH1 0x00 00000bdb: KECCAK256 00000bdc: SWAP1 00000bdd: JUMPDEST 00000bde: DUP2 00000bdf: SLOAD 00000be0: DUP2 00000be1: MSTORE 00000be2: SWAP1 00000be3: PUSH1 0x01 00000be5: ADD 00000be6: SWAP1 00000be7: PUSH1 0x20 00000be9: ADD 00000bea: DUP1 00000beb: DUP4 00000bec: GT 00000bed: PUSH2 0x0bdd 00000bf0: JUMPI 00000bf1: DUP3 00000bf2: SWAP1 00000bf3: SUB 00000bf4: PUSH1 0x1f 00000bf6: AND 00000bf7: DUP3 00000bf8: ADD 00000bf9: SWAP2 00000bfa: JUMPDEST 00000bfb: POP 00000bfc: POP 00000bfd: SWAP5 00000bfe: POP 00000bff: POP 00000c00: POP 00000c01: POP 00000c02: POP 00000c03: PUSH1 0x40 00000c05: MLOAD 00000c06: DUP1 00000c07: SWAP2 00000c08: SUB 00000c09: SWAP1 00000c0a: LOG1 00000c0b: JUMPDEST 00000c0c: POP 00000c0d: POP 00000c0e: POP 00000c0f: POP 00000c10: JUMP 00000c11: JUMPDEST 00000c12: PUSH2 0x0c1a 00000c15: CALLER 00000c16: PUSH2 0x03c8 00000c19: JUMP 00000c1a: JUMPDEST 00000c1b: ISZERO 00000c1c: ISZERO 00000c1d: PUSH2 0x0c25 00000c20: JUMPI 00000c21: PUSH2 0x0002 00000c24: JUMP 00000c25: JUMPDEST 00000c26: PUSH1 0x00 00000c28: DUP3 00000c29: DUP2 00000c2a: MSTORE 00000c2b: PUSH1 0x06 00000c2d: PUSH1 0x20 00000c2f: MSTORE 00000c30: PUSH1 0x40 00000c32: SWAP1 00000c33: KECCAK256 00000c34: PUSH1 0x07 00000c36: ADD 00000c37: SLOAD 00000c38: DUP3 00000c39: SWAP1 00000c3a: PUSH1 0xff 00000c3c: AND 00000c3d: ISZERO 00000c3e: ISZERO 00000c3f: PUSH2 0x0c47 00000c42: JUMPI 00000c43: PUSH2 0x0002 00000c46: JUMP 00000c47: JUMPDEST 00000c48: PUSH1 0x00 00000c4a: DUP4 00000c4b: DUP2 00000c4c: MSTORE 00000c4d: PUSH1 0x06 00000c4f: PUSH1 0x20 00000c51: MSTORE 00000c52: PUSH1 0x40 00000c54: SWAP1 00000c55: KECCAK256 00000c56: PUSH1 0x07 00000c58: ADD 00000c59: SLOAD 00000c5a: DUP4 00000c5b: SWAP1 00000c5c: PUSH2 0x0100 00000c5f: SWAP1 00000c60: DIV 00000c61: PUSH1 0xff 00000c63: AND 00000c64: ISZERO 00000c65: PUSH2 0x0c6d 00000c68: JUMPI 00000c69: PUSH2 0x0002 00000c6c: JUMP 00000c6d: JUMPDEST 00000c6e: PUSH1 0x00 00000c70: DUP5 00000c71: DUP2 00000c72: MSTORE 00000c73: PUSH1 0x06 00000c75: PUSH1 0x20 00000c77: MSTORE 00000c78: PUSH1 0x40 00000c7a: SWAP1 00000c7b: DUP2 00000c7c: SWAP1 00000c7d: KECCAK256 00000c7e: PUSH1 0x07 00000c80: DUP2 00000c81: DUP2 00000c82: ADD 00000c83: DUP1 00000c84: SLOAD 00000c85: PUSH2 0xff00 00000c88: NOT 00000c89: AND 00000c8a: PUSH2 0x0100 00000c8d: SWAP1 00000c8e: DUP2 00000c8f: OR 00000c90: SWAP1 00000c91: SWAP2 00000c92: SSTORE 00000c93: DUP2 00000c94: SLOAD 00000c95: PUSH1 0x00 00000c97: NOT 00000c98: SWAP1 00000c99: DUP2 00000c9a: ADD 00000c9b: SWAP1 00000c9c: SWAP3 00000c9d: SSTORE 00000c9e: SWAP3 00000c9f: MLOAD 00000ca0: DUP3 00000ca1: SLOAD 00000ca2: PUSH1 0x01 00000ca4: DUP5 00000ca5: DUP2 00000ca6: ADD 00000ca7: SLOAD 00000ca8: PUSH1 0x02 00000caa: DUP1 00000cab: DUP8 00000cac: ADD 00000cad: DUP1 00000cae: SLOAD 00000caf: SWAP8 00000cb0: SWAP12 00000cb1: POP 00000cb2: SWAP4 00000cb3: DUP9 00000cb4: SWAP1 00000cb5: DIV 00000cb6: PUSH1 0x01 00000cb8: PUSH1 0xa0 00000cba: PUSH1 0x02 00000cbc: EXP 00000cbd: SUB 00000cbe: AND 00000cbf: SWAP8 00000cc0: SWAP2 00000cc1: SWAP7 00000cc2: SWAP4 00000cc3: SWAP6 00000cc4: DUP6 00000cc5: SWAP5 00000cc6: DUP8 00000cc7: SWAP5 00000cc8: DUP2 00000cc9: AND 00000cca: ISZERO 00000ccb: SWAP1 00000ccc: SWAP4 00000ccd: MUL 00000cce: ADD 00000ccf: SWAP1 00000cd0: SWAP2 00000cd1: AND 00000cd2: DIV 00000cd3: DUP1 00000cd4: ISZERO 00000cd5: PUSH2 0x0d1f 00000cd8: JUMPI 00000cd9: DUP1 00000cda: PUSH1 0x1f 00000cdc: LT 00000cdd: PUSH2 0x0cf4 00000ce0: JUMPI 00000ce1: PUSH2 0x0100 00000ce4: DUP1 00000ce5: DUP4 00000ce6: SLOAD 00000ce7: DIV 00000ce8: MUL 00000ce9: DUP4 00000cea: MSTORE 00000ceb: SWAP2 00000cec: PUSH1 0x20 00000cee: ADD 00000cef: SWAP2 00000cf0: PUSH2 0x0d1f 00000cf3: JUMP 00000cf4: JUMPDEST 00000cf5: DUP3 00000cf6: ADD 00000cf7: SWAP2 00000cf8: SWAP1 00000cf9: PUSH1 0x00 00000cfb: MSTORE 00000cfc: PUSH1 0x20 00000cfe: PUSH1 0x00 00000d00: KECCAK256 00000d01: SWAP1 00000d02: JUMPDEST 00000d03: DUP2 00000d04: SLOAD 00000d05: DUP2 00000d06: MSTORE 00000d07: SWAP1 00000d08: PUSH1 0x01 00000d0a: ADD 00000d0b: SWAP1 00000d0c: PUSH1 0x20 00000d0e: ADD 00000d0f: DUP1 00000d10: DUP4 00000d11: GT 00000d12: PUSH2 0x0d02 00000d15: JUMPI 00000d16: DUP3 00000d17: SWAP1 00000d18: SUB 00000d19: PUSH1 0x1f 00000d1b: AND 00000d1c: DUP3 00000d1d: ADD 00000d1e: SWAP2 00000d1f: JUMPDEST 00000d20: POP 00000d21: POP 00000d22: SWAP2 00000d23: POP 00000d24: POP 00000d25: PUSH1 0x00 00000d27: PUSH1 0x40 00000d29: MLOAD 00000d2a: DUP1 00000d2b: DUP4 00000d2c: SUB 00000d2d: DUP2 00000d2e: DUP6 00000d2f: DUP8 00000d30: PUSH2 0x8502 00000d33: GAS 00000d34: SUB 00000d35: CALL 00000d36: SWAP3 00000d37: POP 00000d38: POP 00000d39: POP 00000d3a: ISZERO 00000d3b: PUSH2 0x0dcd 00000d3e: JUMPI 00000d3f: PUSH1 0x40 00000d41: DUP1 00000d42: MLOAD 00000d43: DUP6 00000d44: DUP2 00000d45: MSTORE 00000d46: PUSH1 0x01 00000d48: PUSH1 0xa0 00000d4a: PUSH1 0x02 00000d4c: EXP 00000d4d: SUB 00000d4e: CALLER 00000d4f: SWAP1 00000d50: DUP2 00000d51: AND 00000d52: PUSH1 0x20 00000d54: DUP4 00000d55: ADD 00000d56: MSTORE 00000d57: PUSH1 0x60 00000d59: SWAP3 00000d5a: DUP3 00000d5b: ADD 00000d5c: DUP4 00000d5d: DUP2 00000d5e: MSTORE 00000d5f: PUSH1 0x03 00000d61: DUP8 00000d62: ADD 00000d63: DUP1 00000d64: SLOAD 00000d65: PUSH1 0x02 00000d67: PUSH1 0x01 00000d69: DUP3 00000d6a: AND 00000d6b: ISZERO 00000d6c: PUSH2 0x0100 00000d6f: MUL 00000d70: PUSH1 0x00 00000d72: NOT 00000d73: ADD 00000d74: SWAP1 00000d75: SWAP2 00000d76: AND 00000d77: DIV 00000d78: SWAP5 00000d79: DUP5 00000d7a: ADD 00000d7b: DUP6 00000d7c: SWAP1 00000d7d: MSTORE 00000d7e: PUSH32 0x800f6438109434e13177ee5073aa82375b270499e51ab063cda29dc97c250f1c 00000d9f: SWAP5 00000da0: DUP10 00000da1: SWAP5 00000da2: SWAP2 00000da3: SWAP3 00000da4: SWAP1 00000da5: PUSH1 0x80 00000da7: DUP4 00000da8: ADD 00000da9: SWAP1 00000daa: DUP5 00000dab: SWAP1 00000dac: DUP1 00000dad: ISZERO 00000dae: PUSH2 0x0e12 00000db1: JUMPI 00000db2: DUP1 00000db3: PUSH1 0x1f 00000db5: LT 00000db6: PUSH2 0x0de7 00000db9: JUMPI 00000dba: PUSH2 0x0100 00000dbd: DUP1 00000dbe: DUP4 00000dbf: SLOAD 00000dc0: DIV 00000dc1: MUL 00000dc2: DUP4 00000dc3: MSTORE 00000dc4: SWAP2 00000dc5: PUSH1 0x20 00000dc7: ADD 00000dc8: SWAP2 00000dc9: PUSH2 0x0e12 00000dcc: JUMP 00000dcd: JUMPDEST 00000dce: POP 00000dcf: POP 00000dd0: PUSH1 0x07 00000dd2: SWAP1 00000dd3: DUP2 00000dd4: ADD 00000dd5: DUP1 00000dd6: SLOAD 00000dd7: PUSH2 0xff00 00000dda: NOT 00000ddb: AND 00000ddc: SWAP1 00000ddd: SSTORE 00000dde: DUP1 00000ddf: SLOAD 00000de0: PUSH1 0x01 00000de2: ADD 00000de3: SWAP1 00000de4: SSTORE 00000de5: POP 00000de6: JUMP 00000de7: JUMPDEST 00000de8: DUP3 00000de9: ADD 00000dea: SWAP2 00000deb: SWAP1 00000dec: PUSH1 0x00 00000dee: MSTORE 00000def: PUSH1 0x20 00000df1: PUSH1 0x00 00000df3: KECCAK256 00000df4: SWAP1 00000df5: JUMPDEST 00000df6: DUP2 00000df7: SLOAD 00000df8: DUP2 00000df9: MSTORE 00000dfa: SWAP1 00000dfb: PUSH1 0x01 00000dfd: ADD 00000dfe: SWAP1 00000dff: PUSH1 0x20 00000e01: ADD 00000e02: DUP1 00000e03: DUP4 00000e04: GT 00000e05: PUSH2 0x0df5 00000e08: JUMPI 00000e09: DUP3 00000e0a: SWAP1 00000e0b: SUB 00000e0c: PUSH1 0x1f 00000e0e: AND 00000e0f: DUP3 00000e10: ADD 00000e11: SWAP2 00000e12: JUMPDEST 00000e13: POP 00000e14: POP 00000e15: SWAP5 00000e16: POP 00000e17: POP 00000e18: POP 00000e19: POP 00000e1a: POP 00000e1b: PUSH1 0x40 00000e1d: MLOAD 00000e1e: DUP1 00000e1f: SWAP2 00000e20: SUB 00000e21: SWAP1 00000e22: LOG1 00000e23: PUSH1 0x00 00000e25: DUP5 00000e26: DUP2 00000e27: MSTORE 00000e28: PUSH1 0x06 00000e2a: PUSH1 0x20 00000e2c: MSTORE 00000e2d: PUSH1 0x40 00000e2f: DUP2 00000e30: KECCAK256 00000e31: DUP1 00000e32: SLOAD 00000e33: PUSH21 0xffffffffffffffffffffffffffffffffffffffffff 00000e49: NOT 00000e4a: AND 00000e4b: DUP2 00000e4c: SSTORE 00000e4d: PUSH1 0x01 00000e4f: DUP2 00000e50: DUP2 00000e51: ADD 00000e52: DUP4 00000e53: SWAP1 00000e54: SSTORE 00000e55: PUSH1 0x02 00000e57: DUP1 00000e58: DUP4 00000e59: ADD 00000e5a: DUP1 00000e5b: SLOAD 00000e5c: DUP6 00000e5d: DUP3 00000e5e: SSTORE 00000e5f: SWAP4 00000e60: SWAP5 00000e61: SWAP4 00000e62: SWAP1 00000e63: SWAP3 00000e64: DUP2 00000e65: AND 00000e66: ISZERO 00000e67: PUSH2 0x0100 00000e6a: MUL 00000e6b: PUSH1 0x00 00000e6d: NOT 00000e6e: ADD 00000e6f: AND 00000e70: DIV 00000e71: PUSH1 0x1f 00000e73: DUP2 00000e74: SWAP1 00000e75: LT 00000e76: PUSH2 0x0ed0 00000e79: JUMPI 00000e7a: POP 00000e7b: JUMPDEST 00000e7c: POP 00000e7d: PUSH1 0x03 00000e7f: DUP3 00000e80: ADD 00000e81: PUSH1 0x00 00000e83: POP 00000e84: DUP1 00000e85: SLOAD 00000e86: PUSH1 0x01 00000e88: DUP2 00000e89: PUSH1 0x01 00000e8b: AND 00000e8c: ISZERO 00000e8d: PUSH2 0x0100 00000e90: MUL 00000e91: SUB 00000e92: AND 00000e93: PUSH1 0x02 00000e95: SWAP1 00000e96: DIV 00000e97: PUSH1 0x00 00000e99: DUP3 00000e9a: SSTORE 00000e9b: DUP1 00000e9c: PUSH1 0x1f 00000e9e: LT 00000e9f: PUSH2 0x0eee 00000ea2: JUMPI 00000ea3: POP 00000ea4: JUMPDEST 00000ea5: POP 00000ea6: POP 00000ea7: PUSH1 0x04 00000ea9: DUP2 00000eaa: ADD 00000eab: DUP1 00000eac: SLOAD 00000ead: PUSH1 0x01 00000eaf: PUSH1 0xa0 00000eb1: PUSH1 0x02 00000eb3: EXP 00000eb4: SUB 00000eb5: NOT 00000eb6: AND 00000eb7: SWAP1 00000eb8: SSTORE 00000eb9: PUSH1 0x00 00000ebb: PUSH1 0x05 00000ebd: DUP3 00000ebe: ADD 00000ebf: SSTORE 00000ec0: PUSH1 0x07 00000ec2: ADD 00000ec3: DUP1 00000ec4: SLOAD 00000ec5: PUSH2 0xffff 00000ec8: NOT 00000ec9: AND 00000eca: SWAP1 00000ecb: SSTORE 00000ecc: PUSH2 0x0c0b 00000ecf: JUMP 00000ed0: JUMPDEST 00000ed1: PUSH1 0x1f 00000ed3: ADD 00000ed4: PUSH1 0x20 00000ed6: SWAP1 00000ed7: DIV 00000ed8: SWAP1 00000ed9: PUSH1 0x00 00000edb: MSTORE 00000edc: PUSH1 0x20 00000ede: PUSH1 0x00 00000ee0: KECCAK256 00000ee1: SWAP1 00000ee2: DUP2 00000ee3: ADD 00000ee4: SWAP1 00000ee5: PUSH2 0x0e7b 00000ee8: SWAP2 00000ee9: SWAP1 00000eea: PUSH2 0x071c 00000eed: JUMP 00000eee: JUMPDEST 00000eef: PUSH1 0x1f 00000ef1: ADD 00000ef2: PUSH1 0x20 00000ef4: SWAP1 00000ef5: DIV 00000ef6: SWAP1 00000ef7: PUSH1 0x00 00000ef9: MSTORE 00000efa: PUSH1 0x20 00000efc: PUSH1 0x00 00000efe: KECCAK256 00000eff: SWAP1 00000f00: DUP2 00000f01: ADD 00000f02: SWAP1 00000f03: PUSH2 0x0ea4 00000f06: SWAP2 00000f07: SWAP1 00000f08: PUSH2 0x071c 00000f0b: JUMP 00000f0c: JUMPDEST 00000f0d: PUSH1 0x01 00000f0f: PUSH1 0xa0 00000f11: PUSH1 0x02 00000f13: EXP 00000f14: SUB 00000f15: DUP3 00000f16: AND 00000f17: PUSH1 0x00 00000f19: SWAP1 00000f1a: DUP2 00000f1b: MSTORE 00000f1c: PUSH1 0x08 00000f1e: PUSH1 0x20 00000f20: MSTORE 00000f21: PUSH1 0x40 00000f23: SWAP1 00000f24: KECCAK256 00000f25: DUP1 00000f26: SLOAD 00000f27: DUP3 00000f28: ADD 00000f29: SWAP1 00000f2a: SSTORE 00000f2b: POP 00000f2c: POP 00000f2d: JUMP 00000f2e: JUMPDEST 00000f2f: POP 00000f30: POP 00000f31: PUSH1 0x04 00000f33: SLOAD 00000f34: DUP2 00000f35: DIV 00000f36: PUSH1 0x00 00000f38: JUMPDEST 00000f39: PUSH1 0x04 00000f3b: SLOAD 00000f3c: DUP2 00000f3d: LT 00000f3e: ISZERO 00000f3f: PUSH2 0x101d 00000f42: JUMPI 00000f43: DUP2 00000f44: PUSH1 0x08 00000f46: PUSH1 0x00 00000f48: POP 00000f49: PUSH1 0x00 00000f4b: PUSH1 0x02 00000f4d: PUSH1 0x00 00000f4f: POP 00000f50: DUP5 00000f51: DUP2 00000f52: SLOAD 00000f53: DUP2 00000f54: LT 00000f55: ISZERO 00000f56: PUSH2 0x0002 00000f59: JUMPI 00000f5a: POP 00000f5b: POP 00000f5c: PUSH32 0x405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace 00000f7d: DUP5 00000f7e: ADD 00000f7f: SLOAD 00000f80: PUSH1 0x01 00000f82: PUSH1 0xa0 00000f84: PUSH1 0x02 00000f86: EXP 00000f87: SUB 00000f88: AND 00000f89: DUP2 00000f8a: MSTORE 00000f8b: PUSH1 0x20 00000f8d: SWAP2 00000f8e: SWAP1 00000f8f: SWAP2 00000f90: MSTORE 00000f91: PUSH1 0x40 00000f93: SWAP1 00000f94: KECCAK256 00000f95: DUP1 00000f96: SLOAD 00000f97: SWAP1 00000f98: SWAP2 00000f99: ADD 00000f9a: SWAP1 00000f9b: SSTORE 00000f9c: PUSH1 0x01 00000f9e: ADD 00000f9f: PUSH2 0x0f38 00000fa2: JUMP 00000fa3: JUMPDEST 00000fa4: PUSH1 0x01 00000fa6: PUSH1 0xa0 00000fa8: PUSH1 0x02 00000faa: EXP 00000fab: SUB 00000fac: CALLER 00000fad: AND 00000fae: PUSH1 0x00 00000fb0: DUP2 00000fb1: DUP2 00000fb2: MSTORE 00000fb3: PUSH1 0x08 00000fb5: PUSH1 0x20 00000fb7: MSTORE 00000fb8: PUSH1 0x40 00000fba: DUP1 00000fbb: DUP3 00000fbc: KECCAK256 00000fbd: DUP1 00000fbe: SLOAD 00000fbf: DUP8 00000fc0: SWAP1 00000fc1: SUB 00000fc2: SWAP1 00000fc3: SSTORE 00000fc4: MLOAD 00000fc5: DUP6 00000fc6: SWAP1 00000fc7: DUP3 00000fc8: DUP2 00000fc9: DUP2 00000fca: DUP2 00000fcb: DUP6 00000fcc: DUP9 00000fcd: DUP4 00000fce: CALL 00000fcf: SWAP4 00000fd0: POP 00000fd1: POP 00000fd2: POP 00000fd3: POP 00000fd4: ISZERO 00000fd5: PUSH2 0x10db 00000fd8: JUMPI 00000fd9: PUSH1 0x40 00000fdb: DUP1 00000fdc: MLOAD 00000fdd: PUSH1 0x01 00000fdf: PUSH1 0xa0 00000fe1: PUSH1 0x02 00000fe3: EXP 00000fe4: SUB 00000fe5: CALLER 00000fe6: AND 00000fe7: DUP2 00000fe8: MSTORE 00000fe9: PUSH1 0x20 00000feb: DUP2 00000fec: ADD 00000fed: DUP6 00000fee: SWAP1 00000fef: MSTORE 00000ff0: DUP2 00000ff1: MLOAD 00000ff2: PUSH32 0x7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b65 00001013: SWAP3 00001014: SWAP2 00001015: DUP2 00001016: SWAP1 00001017: SUB 00001018: SWAP1 00001019: SWAP2 0000101a: ADD 0000101b: SWAP1 0000101c: LOG1 0000101d: JUMPDEST 0000101e: POP 0000101f: POP 00001020: POP 00001021: JUMP 00001022: JUMPDEST 00001023: DUP2 00001024: PUSH2 0x102c 00001027: DUP2 00001028: PUSH2 0x03c8 0000102b: JUMP 0000102c: JUMPDEST 0000102d: ISZERO 0000102e: ISZERO 0000102f: PUSH2 0x1037 00001032: JUMPI 00001033: PUSH2 0x0002 00001036: JUMP 00001037: JUMPDEST 00001038: PUSH1 0x01 0000103a: PUSH1 0xa0 0000103c: PUSH1 0x02 0000103e: EXP 0000103f: SUB 00001040: DUP4 00001041: AND 00001042: PUSH1 0x00 00001044: SWAP1 00001045: DUP2 00001046: MSTORE 00001047: PUSH1 0x03 00001049: PUSH1 0x20 0000104b: MSTORE 0000104c: PUSH1 0x40 0000104e: SWAP1 0000104f: KECCAK256 00001050: PUSH1 0x01 00001052: ADD 00001053: SLOAD 00001054: DUP4 00001055: SWAP1 00001056: DUP4 00001057: SWAP1 00001058: DUP2 00001059: GT 0000105a: ISZERO 0000105b: PUSH2 0x1063 0000105e: JUMPI 0000105f: PUSH2 0x0002 00001062: JUMP 00001063: JUMPDEST 00001064: POP 00001065: POP 00001066: POP 00001067: PUSH1 0x01 00001069: PUSH1 0xa0 0000106b: PUSH1 0x02 0000106d: EXP 0000106e: SUB 0000106f: DUP3 00001070: AND 00001071: PUSH1 0x00 00001073: SWAP1 00001074: DUP2 00001075: MSTORE 00001076: PUSH1 0x03 00001078: PUSH1 0x20 0000107a: SWAP1 0000107b: DUP2 0000107c: MSTORE 0000107d: PUSH1 0x40 0000107f: DUP1 00001080: DUP4 00001081: KECCAK256 00001082: PUSH1 0x01 00001084: ADD 00001085: DUP1 00001086: SLOAD 00001087: DUP6 00001088: SWAP1 00001089: SUB 0000108a: SWAP1 0000108b: SSTORE 0000108c: PUSH1 0x08 0000108e: SWAP1 0000108f: SWAP2 00001090: MSTORE 00001091: SWAP1 00001092: KECCAK256 00001093: DUP1 00001094: SLOAD 00001095: DUP3 00001096: ADD 00001097: SWAP1 00001098: SSTORE 00001099: POP 0000109a: POP 0000109b: JUMP 0000109c: JUMPDEST 0000109d: PUSH1 0x01 0000109f: PUSH1 0xa0 000010a1: PUSH1 0x02 000010a3: EXP 000010a4: SUB 000010a5: CALLER 000010a6: AND 000010a7: PUSH1 0x00 000010a9: SWAP1 000010aa: DUP2 000010ab: MSTORE 000010ac: PUSH1 0x08 000010ae: PUSH1 0x20 000010b0: MSTORE 000010b1: PUSH1 0x40 000010b3: SWAP1 000010b4: KECCAK256 000010b5: SLOAD 000010b6: DUP2 000010b7: SWAP1 000010b8: DUP2 000010b9: GT 000010ba: ISZERO 000010bb: PUSH2 0x10c3 000010be: JUMPI 000010bf: PUSH2 0x0002 000010c2: JUMP 000010c3: JUMPDEST 000010c4: DUP2 000010c5: ADDRESS 000010c6: PUSH1 0x01 000010c8: PUSH1 0xa0 000010ca: PUSH1 0x02 000010cc: EXP 000010cd: SUB 000010ce: AND 000010cf: BALANCE 000010d0: DUP2 000010d1: GT 000010d2: ISZERO 000010d3: PUSH2 0x0fa3 000010d6: JUMPI 000010d7: PUSH2 0x0002 000010da: JUMP 000010db: JUMPDEST 000010dc: PUSH1 0x01 000010de: PUSH1 0xa0 000010e0: PUSH1 0x02 000010e2: EXP 000010e3: SUB 000010e4: CALLER 000010e5: AND 000010e6: PUSH1 0x00 000010e8: SWAP1 000010e9: DUP2 000010ea: MSTORE 000010eb: PUSH1 0x08 000010ed: PUSH1 0x20 000010ef: MSTORE 000010f0: PUSH1 0x40 000010f2: SWAP1 000010f3: KECCAK256 000010f4: DUP1 000010f5: SLOAD 000010f6: DUP5 000010f7: ADD 000010f8: SWAP1 000010f9: SSTORE 000010fa: POP 000010fb: POP 000010fc: POP 000010fd: JUMP 000010fe: JUMPDEST 000010ff: DUP1 00001100: DUP1 00001101: PUSH1 0x01 00001103: PUSH1 0xa0 00001105: PUSH1 0x02 00001107: EXP 00001108: SUB 00001109: AND 0000110a: PUSH1 0x00 0000110c: EQ 0000110d: ISZERO 0000110e: PUSH2 0x1116 00001111: JUMPI 00001112: PUSH2 0x0002 00001115: JUMP 00001116: JUMPDEST 00001117: ADDRESS 00001118: PUSH1 0x01 0000111a: PUSH1 0xa0 0000111c: PUSH1 0x02 0000111e: EXP 0000111f: SUB 00001120: AND 00001121: DUP2 00001122: PUSH1 0x01 00001124: PUSH1 0xa0 00001126: PUSH1 0x02 00001128: EXP 00001129: SUB 0000112a: AND 0000112b: EQ 0000112c: ISZERO 0000112d: PUSH2 0x1135 00001130: JUMPI 00001131: PUSH2 0x0002 00001134: JUMP 00001135: JUMPDEST 00001136: DUP2 00001137: PUSH1 0x01 00001139: PUSH1 0xa0 0000113b: PUSH1 0x02 0000113d: EXP 0000113e: SUB 0000113f: AND 00001140: SELFDESTRUCT
Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. To mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment.
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | other | detector | Untrusted CALL target/value reachable | 60 | yes | yes |
viewtrace_id: 0xb20b5ba92f8f701b6c5f20f89416d6fb6032d773c38139f35c639cab93206d0a
call_targets:
0x0000000000000000000000000000000000000001, 0x12b0621d90c69867957a836d677c64c46ec4291d
target_varies:
yes
classification:
target_varies
validation_json{
"sink": "CALL",
"errors": 0,
"status": "confirmed",
"attempts": 1,
"trace_id": "0xb20b5ba92f8f701b6c5f20f89416d6fb6032d773c38139f35c639cab93206d0a",
"confirmed": true,
"trace_mode": "callTracer",
"call_targets": [
"0x0000000000000000000000000000000000000001",
"0x12b0621d90c69867957a836d677c64c46ec4291d"
],
"matched_probe": null,
"target_varies": true,
"classification": "target_varies"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x2e1a7d4d",
"selector": "0x2e1a7d4d",
"calldata_variants": [
"0x2e1a7d4d",
"0x2e1a7d4d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x642f2eaf",
"selector": "0x642f2eaf",
"calldata_variants": [
"0x642f2eaf",
"0x642f2eaf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x70ba3339",
"selector": "0x70ba3339",
"calldata_variants": [
"0x70ba3339",
"0x70ba33390000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x79716e43",
"selector": "0x79716e43",
"calldata_variants": [
"0x79716e43",
"0x79716e430000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x7983eb31",
"selector": "0x7983eb31",
"calldata_variants": [
"0x7983eb31",
"0x7983eb310000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x87269729",
"selector": "0x87269729",
"calldata_variants": [
"0x87269729",
"0x872697290000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8988b7ff",
"selector": "0x8988b7ff",
"calldata_variants": [
"0x8988b7ff",
"0x8988b7ff0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x93a595f5",
"selector": "0x93a595f5",
"calldata_variants": [
"0x93a595f5",
"0x93a595f50000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 3381,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 4046,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 2,
"guards_detected": [],
"untrusted_call_count": 2
}
|
| high | other | detector | ETH value transfer possible | 55 | yes | yes |
viewtrace_id: 0xb20b5ba92f8f701b6c5f20f89416d6fb6032d773c38139f35c639cab93206d0a
call_targets:
0x0000000000000000000000000000000000000001, 0x12b0621d90c69867957a836d677c64c46ec4291d
target_varies:
yes
classification:
target_varies
validation_json{
"sink": "CALL",
"errors": 0,
"status": "confirmed",
"attempts": 1,
"trace_id": "0xb20b5ba92f8f701b6c5f20f89416d6fb6032d773c38139f35c639cab93206d0a",
"confirmed": true,
"trace_mode": "callTracer",
"call_targets": [
"0x0000000000000000000000000000000000000001",
"0x12b0621d90c69867957a836d677c64c46ec4291d"
],
"matched_probe": null,
"target_varies": true,
"classification": "target_varies"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x2e1a7d4d",
"selector": "0x2e1a7d4d",
"calldata_variants": [
"0x2e1a7d4d",
"0x2e1a7d4d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x642f2eaf",
"selector": "0x642f2eaf",
"calldata_variants": [
"0x642f2eaf",
"0x642f2eaf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x70ba3339",
"selector": "0x70ba3339",
"calldata_variants": [
"0x70ba3339",
"0x70ba33390000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x79716e43",
"selector": "0x79716e43",
"calldata_variants": [
"0x79716e43",
"0x79716e430000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x7983eb31",
"selector": "0x7983eb31",
"calldata_variants": [
"0x7983eb31",
"0x7983eb310000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x87269729",
"selector": "0x87269729",
"calldata_variants": [
"0x87269729",
"0x872697290000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8988b7ff",
"selector": "0x8988b7ff",
"calldata_variants": [
"0x8988b7ff",
"0x8988b7ff0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x93a595f5",
"selector": "0x93a595f5",
"calldata_variants": [
"0x93a595f5",
"0x93a595f50000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 3381,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 4046,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 2,
"guards_detected": []
}
|
| high | other | detector | SELFDESTRUCT reachable | 65 | no | no |
viewtrace_id: 0xc331081c9b9e2a50c2dd19899fc7709b796400ae6cbceae0d3fe89588a1a2082
validation_json{
"sink": "SELFDESTRUCT",
"errors": 0,
"status": "unknown",
"attempts": 32,
"trace_id": "0xc331081c9b9e2a50c2dd19899fc7709b796400ae6cbceae0d3fe89588a1a2082",
"confirmed": false,
"trace_mode": "structLogs",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x2e1a7d4d",
"selector": "0x2e1a7d4d",
"calldata_variants": [
"0x2e1a7d4d",
"0x2e1a7d4d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x642f2eaf",
"selector": "0x642f2eaf",
"calldata_variants": [
"0x642f2eaf",
"0x642f2eaf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x70ba3339",
"selector": "0x70ba3339",
"calldata_variants": [
"0x70ba3339",
"0x70ba33390000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x79716e43",
"selector": "0x79716e43",
"calldata_variants": [
"0x79716e43",
"0x79716e430000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x7983eb31",
"selector": "0x7983eb31",
"calldata_variants": [
"0x7983eb31",
"0x7983eb310000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x87269729",
"selector": "0x87269729",
"calldata_variants": [
"0x87269729",
"0x872697290000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8988b7ff",
"selector": "0x8988b7ff",
"calldata_variants": [
"0x8988b7ff",
"0x8988b7ff0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x93a595f5",
"selector": "0x93a595f5",
"calldata_variants": [
"0x93a595f5",
"0x93a595f50000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [],
"selfdestruct_count": 1
}
|