019b3836-5d21-7226-bd0f-cd67b0cdaf79
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 |
|---|---|---|---|---|
| 9285 | artifact.fetch | complete | 1 / 3 | 3 months ago |
| 9286 | tool.cast_disasm | complete | 1 / 3 | 3 months ago |
| 83156 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 83157 | capability.graph | complete | 1 / 3 | 1 week ago |
| 83158 | detector.run | complete | 1 / 3 | 1 week ago |
| 83159 | validation.fork | complete | 1 / 3 | 1 week ago |
| 113677 | report.consolidate | complete | 1 / 6 | 1 week ago |
No slither job recorded yet.
OpenAI Codex v0.118.0 (research preview) -------- workdir: /tmp/codex-xtzqwtbt model: gpt-5.4 provider: openai approval: never sandbox: read-only reasoning effort: high reasoning summaries: none session id: 019d5c9b-4359-7580-862c-fd4b23198ade -------- 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:46:15.141127+00:00",
"returncode": 1
},
"project": {
"mode": "bytecode",
"bytecode_length": 9286,
"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 0x0124 0000000a: JUMPI 0000000b: PUSH1 0x00 0000000d: CALLDATALOAD 0000000e: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 0000002c: SWAP1 0000002d: DIV 0000002e: DUP1 0000002f: PUSH4 0x06fdde03 00000034: EQ 00000035: PUSH2 0x012d 00000038: JUMPI 00000039: DUP1 0000003a: PUSH4 0x095ea7b3 0000003f: EQ 00000040: PUSH2 0x01a8 00000043: JUMPI 00000044: DUP1 00000045: PUSH4 0x171f34a6 0000004a: EQ 0000004b: PUSH2 0x01df 0000004e: JUMPI 0000004f: DUP1 00000050: PUSH4 0x1720ea55 00000055: EQ 00000056: PUSH2 0x020b 00000059: JUMPI 0000005a: DUP1 0000005b: PUSH4 0x18160ddd 00000060: EQ 00000061: PUSH2 0x0239 00000064: JUMPI 00000065: DUP1 00000066: PUSH4 0x23b872dd 0000006b: EQ 0000006c: PUSH2 0x025c 0000006f: JUMPI 00000070: DUP1 00000071: PUSH4 0x313ce567 00000076: EQ 00000077: PUSH2 0x029c 0000007a: JUMPI 0000007b: DUP1 0000007c: PUSH4 0x354dace2 00000081: EQ 00000082: PUSH2 0x02c2 00000085: JUMPI 00000086: DUP1 00000087: PUSH4 0x5a3b7e42 0000008c: EQ 0000008d: PUSH2 0x02ee 00000090: JUMPI 00000091: DUP1 00000092: PUSH4 0x70a08231 00000097: EQ 00000098: PUSH2 0x0369 0000009b: JUMPI 0000009c: DUP1 0000009d: PUSH4 0x72689e4d 000000a2: EQ 000000a3: PUSH2 0x0395 000000a6: JUMPI 000000a7: DUP1 000000a8: PUSH4 0x836a1e23 000000ad: EQ 000000ae: PUSH2 0x03ce 000000b1: JUMPI 000000b2: DUP1 000000b3: PUSH4 0x8da5cb5b 000000b8: EQ 000000b9: PUSH2 0x03dd 000000bc: JUMPI 000000bd: DUP1 000000be: PUSH4 0x95d89b41 000000c3: EQ 000000c4: PUSH2 0x0416 000000c7: JUMPI 000000c8: DUP1 000000c9: PUSH4 0xa9059cbb 000000ce: EQ 000000cf: PUSH2 0x0491 000000d2: JUMPI 000000d3: DUP1 000000d4: PUSH4 0xb0987c03 000000d9: EQ 000000da: PUSH2 0x04b2 000000dd: JUMPI 000000de: DUP1 000000df: PUSH4 0xb6db8973 000000e4: EQ 000000e5: PUSH2 0x04eb 000000e8: JUMPI 000000e9: DUP1 000000ea: PUSH4 0xc03945f7 000000ef: EQ 000000f0: PUSH2 0x050e 000000f3: JUMPI 000000f4: DUP1 000000f5: PUSH4 0xcae9ca51 000000fa: EQ 000000fb: PUSH2 0x051d 000000fe: JUMPI 000000ff: DUP1 00000100: PUSH4 0xdd62ed3e 00000105: EQ 00000106: PUSH2 0x059b 00000109: JUMPI 0000010a: DUP1 0000010b: PUSH4 0xecf09417 00000110: EQ 00000111: PUSH2 0x05d0 00000114: JUMPI 00000115: DUP1 00000116: PUSH4 0xf8b2cb4f 0000011b: EQ 0000011c: PUSH2 0x05f3 0000011f: JUMPI 00000120: PUSH2 0x0124 00000123: JUMP 00000124: JUMPDEST 00000125: PUSH2 0x012b 00000128: JUMPDEST 00000129: JUMPDEST 0000012a: JUMP 0000012b: JUMPDEST 0000012c: STOP 0000012d: JUMPDEST 0000012e: PUSH2 0x013a 00000131: PUSH1 0x04 00000133: DUP1 00000134: POP 00000135: POP 00000136: PUSH2 0x061f 00000139: JUMP 0000013a: JUMPDEST 0000013b: PUSH1 0x40 0000013d: MLOAD 0000013e: DUP1 0000013f: DUP1 00000140: PUSH1 0x20 00000142: ADD 00000143: DUP3 00000144: DUP2 00000145: SUB 00000146: DUP3 00000147: MSTORE 00000148: DUP4 00000149: DUP2 0000014a: DUP2 0000014b: MLOAD 0000014c: DUP2 0000014d: MSTORE 0000014e: PUSH1 0x20 00000150: ADD 00000151: SWAP2 00000152: POP 00000153: DUP1 00000154: MLOAD 00000155: SWAP1 00000156: PUSH1 0x20 00000158: ADD 00000159: SWAP1 0000015a: DUP1 0000015b: DUP4 0000015c: DUP4 0000015d: DUP3 0000015e: SWAP1 0000015f: PUSH1 0x00 00000161: PUSH1 0x04 00000163: PUSH1 0x20 00000165: DUP5 00000166: PUSH1 0x1f 00000168: ADD 00000169: DIV 0000016a: PUSH1 0x03 0000016c: MUL 0000016d: PUSH1 0x0f 0000016f: ADD 00000170: CALL 00000171: POP 00000172: SWAP1 00000173: POP 00000174: SWAP1 00000175: DUP2 00000176: ADD 00000177: SWAP1 00000178: PUSH1 0x1f 0000017a: AND 0000017b: DUP1 0000017c: ISZERO 0000017d: PUSH2 0x019a 00000180: JUMPI 00000181: DUP1 00000182: DUP3 00000183: SUB 00000184: DUP1 00000185: MLOAD 00000186: PUSH1 0x01 00000188: DUP4 00000189: PUSH1 0x20 0000018b: SUB 0000018c: PUSH2 0x0100 0000018f: EXP 00000190: SUB 00000191: NOT 00000192: AND 00000193: DUP2 00000194: MSTORE 00000195: PUSH1 0x20 00000197: ADD 00000198: SWAP2 00000199: POP 0000019a: JUMPDEST 0000019b: POP 0000019c: SWAP3 0000019d: POP 0000019e: POP 0000019f: POP 000001a0: PUSH1 0x40 000001a2: MLOAD 000001a3: DUP1 000001a4: SWAP2 000001a5: SUB 000001a6: SWAP1 000001a7: RETURN 000001a8: JUMPDEST 000001a9: PUSH2 0x01c7 000001ac: PUSH1 0x04 000001ae: DUP1 000001af: DUP1 000001b0: CALLDATALOAD 000001b1: SWAP1 000001b2: PUSH1 0x20 000001b4: ADD 000001b5: SWAP1 000001b6: SWAP2 000001b7: SWAP1 000001b8: DUP1 000001b9: CALLDATALOAD 000001ba: SWAP1 000001bb: PUSH1 0x20 000001bd: ADD 000001be: SWAP1 000001bf: SWAP2 000001c0: SWAP1 000001c1: POP 000001c2: POP 000001c3: PUSH2 0x06c0 000001c6: JUMP 000001c7: JUMPDEST 000001c8: PUSH1 0x40 000001ca: MLOAD 000001cb: DUP1 000001cc: DUP3 000001cd: ISZERO 000001ce: ISZERO 000001cf: DUP2 000001d0: MSTORE 000001d1: PUSH1 0x20 000001d3: ADD 000001d4: SWAP2 000001d5: POP 000001d6: POP 000001d7: PUSH1 0x40 000001d9: MLOAD 000001da: DUP1 000001db: SWAP2 000001dc: SUB 000001dd: SWAP1 000001de: RETURN 000001df: JUMPDEST 000001e0: PUSH2 0x01f5 000001e3: PUSH1 0x04 000001e5: DUP1 000001e6: DUP1 000001e7: CALLDATALOAD 000001e8: SWAP1 000001e9: PUSH1 0x20 000001eb: ADD 000001ec: SWAP1 000001ed: SWAP2 000001ee: SWAP1 000001ef: POP 000001f0: POP 000001f1: PUSH2 0x072f 000001f4: JUMP 000001f5: JUMPDEST 000001f6: PUSH1 0x40 000001f8: MLOAD 000001f9: DUP1 000001fa: DUP3 000001fb: DUP2 000001fc: MSTORE 000001fd: PUSH1 0x20 000001ff: ADD 00000200: SWAP2 00000201: POP 00000202: POP 00000203: PUSH1 0x40 00000205: MLOAD 00000206: DUP1 00000207: SWAP2 00000208: SUB 00000209: SWAP1 0000020a: RETURN 0000020b: JUMPDEST 0000020c: PUSH2 0x0221 0000020f: PUSH1 0x04 00000211: DUP1 00000212: DUP1 00000213: CALLDATALOAD 00000214: SWAP1 00000215: PUSH1 0x20 00000217: ADD 00000218: SWAP1 00000219: SWAP2 0000021a: SWAP1 0000021b: POP 0000021c: POP 0000021d: PUSH2 0x074a 00000220: JUMP 00000221: JUMPDEST 00000222: PUSH1 0x40 00000224: MLOAD 00000225: DUP1 00000226: DUP3 00000227: ISZERO 00000228: ISZERO 00000229: DUP2 0000022a: MSTORE 0000022b: PUSH1 0x20 0000022d: ADD 0000022e: SWAP2 0000022f: POP 00000230: POP 00000231: PUSH1 0x40 00000233: MLOAD 00000234: DUP1 00000235: SWAP2 00000236: SUB 00000237: SWAP1 00000238: RETURN 00000239: JUMPDEST 0000023a: PUSH2 0x0246 0000023d: PUSH1 0x04 0000023f: DUP1 00000240: POP 00000241: POP 00000242: PUSH2 0x0872 00000245: JUMP 00000246: JUMPDEST 00000247: PUSH1 0x40 00000249: MLOAD 0000024a: DUP1 0000024b: DUP3 0000024c: DUP2 0000024d: MSTORE 0000024e: PUSH1 0x20 00000250: ADD 00000251: SWAP2 00000252: POP 00000253: POP 00000254: PUSH1 0x40 00000256: MLOAD 00000257: DUP1 00000258: SWAP2 00000259: SUB 0000025a: SWAP1 0000025b: RETURN 0000025c: JUMPDEST 0000025d: PUSH2 0x0284 00000260: PUSH1 0x04 00000262: DUP1 00000263: DUP1 00000264: CALLDATALOAD 00000265: SWAP1 00000266: PUSH1 0x20 00000268: ADD 00000269: SWAP1 0000026a: SWAP2 0000026b: SWAP1 0000026c: DUP1 0000026d: CALLDATALOAD 0000026e: SWAP1 0000026f: PUSH1 0x20 00000271: ADD 00000272: SWAP1 00000273: SWAP2 00000274: SWAP1 00000275: DUP1 00000276: CALLDATALOAD 00000277: SWAP1 00000278: PUSH1 0x20 0000027a: ADD 0000027b: SWAP1 0000027c: SWAP2 0000027d: SWAP1 0000027e: POP 0000027f: POP 00000280: PUSH2 0x087b 00000283: JUMP 00000284: JUMPDEST 00000285: PUSH1 0x40 00000287: MLOAD 00000288: DUP1 00000289: DUP3 0000028a: ISZERO 0000028b: ISZERO 0000028c: DUP2 0000028d: MSTORE 0000028e: PUSH1 0x20 00000290: ADD 00000291: SWAP2 00000292: POP 00000293: POP 00000294: PUSH1 0x40 00000296: MLOAD 00000297: DUP1 00000298: SWAP2 00000299: SUB 0000029a: SWAP1 0000029b: RETURN 0000029c: JUMPDEST 0000029d: PUSH2 0x02a9 000002a0: PUSH1 0x04 000002a2: DUP1 000002a3: POP 000002a4: POP 000002a5: PUSH2 0x0adf 000002a8: JUMP 000002a9: JUMPDEST 000002aa: PUSH1 0x40 000002ac: MLOAD 000002ad: DUP1 000002ae: DUP3 000002af: PUSH1 0xff 000002b1: AND 000002b2: DUP2 000002b3: MSTORE 000002b4: PUSH1 0x20 000002b6: ADD 000002b7: SWAP2 000002b8: POP 000002b9: POP 000002ba: PUSH1 0x40 000002bc: MLOAD 000002bd: DUP1 000002be: SWAP2 000002bf: SUB 000002c0: SWAP1 000002c1: RETURN 000002c2: JUMPDEST 000002c3: PUSH2 0x02d8 000002c6: PUSH1 0x04 000002c8: DUP1 000002c9: DUP1 000002ca: CALLDATALOAD 000002cb: SWAP1 000002cc: PUSH1 0x20 000002ce: ADD 000002cf: SWAP1 000002d0: SWAP2 000002d1: SWAP1 000002d2: POP 000002d3: POP 000002d4: PUSH2 0x0af2 000002d7: JUMP 000002d8: JUMPDEST 000002d9: PUSH1 0x40 000002db: MLOAD 000002dc: DUP1 000002dd: DUP3 000002de: DUP2 000002df: MSTORE 000002e0: PUSH1 0x20 000002e2: ADD 000002e3: SWAP2 000002e4: POP 000002e5: POP 000002e6: PUSH1 0x40 000002e8: MLOAD 000002e9: DUP1 000002ea: SWAP2 000002eb: SUB 000002ec: SWAP1 000002ed: RETURN 000002ee: JUMPDEST 000002ef: PUSH2 0x02fb 000002f2: PUSH1 0x04 000002f4: DUP1 000002f5: POP 000002f6: POP 000002f7: PUSH2 0x0b0d 000002fa: JUMP 000002fb: JUMPDEST 000002fc: PUSH1 0x40 000002fe: MLOAD 000002ff: DUP1 00000300: DUP1 00000301: PUSH1 0x20 00000303: ADD 00000304: DUP3 00000305: DUP2 00000306: SUB 00000307: DUP3 00000308: MSTORE 00000309: DUP4 0000030a: DUP2 0000030b: DUP2 0000030c: MLOAD 0000030d: DUP2 0000030e: MSTORE 0000030f: PUSH1 0x20 00000311: ADD 00000312: SWAP2 00000313: POP 00000314: DUP1 00000315: MLOAD 00000316: SWAP1 00000317: PUSH1 0x20 00000319: ADD 0000031a: SWAP1 0000031b: DUP1 0000031c: DUP4 0000031d: DUP4 0000031e: DUP3 0000031f: SWAP1 00000320: PUSH1 0x00 00000322: PUSH1 0x04 00000324: PUSH1 0x20 00000326: DUP5 00000327: PUSH1 0x1f 00000329: ADD 0000032a: DIV 0000032b: PUSH1 0x03 0000032d: MUL 0000032e: PUSH1 0x0f 00000330: ADD 00000331: CALL 00000332: POP 00000333: SWAP1 00000334: POP 00000335: SWAP1 00000336: DUP2 00000337: ADD 00000338: SWAP1 00000339: PUSH1 0x1f 0000033b: AND 0000033c: DUP1 0000033d: ISZERO 0000033e: PUSH2 0x035b 00000341: JUMPI 00000342: DUP1 00000343: DUP3 00000344: SUB 00000345: DUP1 00000346: MLOAD 00000347: PUSH1 0x01 00000349: DUP4 0000034a: PUSH1 0x20 0000034c: SUB 0000034d: PUSH2 0x0100 00000350: EXP 00000351: SUB 00000352: NOT 00000353: AND 00000354: DUP2 00000355: MSTORE 00000356: PUSH1 0x20 00000358: ADD 00000359: SWAP2 0000035a: POP 0000035b: JUMPDEST 0000035c: POP 0000035d: SWAP3 0000035e: POP 0000035f: POP 00000360: POP 00000361: PUSH1 0x40 00000363: MLOAD 00000364: DUP1 00000365: SWAP2 00000366: SUB 00000367: SWAP1 00000368: RETURN 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 0x0bae 0000037e: JUMP 0000037f: JUMPDEST 00000380: PUSH1 0x40 00000382: MLOAD 00000383: DUP1 00000384: DUP3 00000385: DUP2 00000386: MSTORE 00000387: PUSH1 0x20 00000389: ADD 0000038a: SWAP2 0000038b: POP 0000038c: POP 0000038d: PUSH1 0x40 0000038f: MLOAD 00000390: DUP1 00000391: SWAP2 00000392: SUB 00000393: SWAP1 00000394: RETURN 00000395: JUMPDEST 00000396: PUSH2 0x03a2 00000399: PUSH1 0x04 0000039b: DUP1 0000039c: POP 0000039d: POP 0000039e: PUSH2 0x0bc9 000003a1: JUMP 000003a2: JUMPDEST 000003a3: PUSH1 0x40 000003a5: MLOAD 000003a6: DUP1 000003a7: DUP3 000003a8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000003bd: AND 000003be: DUP2 000003bf: MSTORE 000003c0: PUSH1 0x20 000003c2: ADD 000003c3: SWAP2 000003c4: POP 000003c5: POP 000003c6: PUSH1 0x40 000003c8: MLOAD 000003c9: DUP1 000003ca: SWAP2 000003cb: SUB 000003cc: SWAP1 000003cd: RETURN 000003ce: JUMPDEST 000003cf: PUSH2 0x03db 000003d2: PUSH1 0x04 000003d4: DUP1 000003d5: POP 000003d6: POP 000003d7: PUSH2 0x0bef 000003da: JUMP 000003db: JUMPDEST 000003dc: STOP 000003dd: JUMPDEST 000003de: PUSH2 0x03ea 000003e1: PUSH1 0x04 000003e3: DUP1 000003e4: POP 000003e5: POP 000003e6: PUSH2 0x0cba 000003e9: JUMP 000003ea: JUMPDEST 000003eb: PUSH1 0x40 000003ed: MLOAD 000003ee: DUP1 000003ef: DUP3 000003f0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000405: AND 00000406: DUP2 00000407: MSTORE 00000408: PUSH1 0x20 0000040a: ADD 0000040b: SWAP2 0000040c: POP 0000040d: POP 0000040e: PUSH1 0x40 00000410: MLOAD 00000411: DUP1 00000412: SWAP2 00000413: SUB 00000414: SWAP1 00000415: RETURN 00000416: JUMPDEST 00000417: PUSH2 0x0423 0000041a: PUSH1 0x04 0000041c: DUP1 0000041d: POP 0000041e: POP 0000041f: PUSH2 0x0ce0 00000422: JUMP 00000423: JUMPDEST 00000424: PUSH1 0x40 00000426: MLOAD 00000427: DUP1 00000428: DUP1 00000429: PUSH1 0x20 0000042b: ADD 0000042c: DUP3 0000042d: DUP2 0000042e: SUB 0000042f: DUP3 00000430: MSTORE 00000431: DUP4 00000432: DUP2 00000433: DUP2 00000434: MLOAD 00000435: DUP2 00000436: MSTORE 00000437: PUSH1 0x20 00000439: ADD 0000043a: SWAP2 0000043b: POP 0000043c: DUP1 0000043d: MLOAD 0000043e: SWAP1 0000043f: PUSH1 0x20 00000441: ADD 00000442: SWAP1 00000443: DUP1 00000444: DUP4 00000445: DUP4 00000446: DUP3 00000447: SWAP1 00000448: PUSH1 0x00 0000044a: PUSH1 0x04 0000044c: PUSH1 0x20 0000044e: DUP5 0000044f: PUSH1 0x1f 00000451: ADD 00000452: DIV 00000453: PUSH1 0x03 00000455: MUL 00000456: PUSH1 0x0f 00000458: ADD 00000459: CALL 0000045a: POP 0000045b: SWAP1 0000045c: POP 0000045d: SWAP1 0000045e: DUP2 0000045f: ADD 00000460: SWAP1 00000461: PUSH1 0x1f 00000463: AND 00000464: DUP1 00000465: ISZERO 00000466: PUSH2 0x0483 00000469: JUMPI 0000046a: DUP1 0000046b: DUP3 0000046c: SUB 0000046d: DUP1 0000046e: MLOAD 0000046f: PUSH1 0x01 00000471: DUP4 00000472: PUSH1 0x20 00000474: SUB 00000475: PUSH2 0x0100 00000478: EXP 00000479: SUB 0000047a: NOT 0000047b: AND 0000047c: DUP2 0000047d: MSTORE 0000047e: PUSH1 0x20 00000480: ADD 00000481: SWAP2 00000482: POP 00000483: JUMPDEST 00000484: POP 00000485: SWAP3 00000486: POP 00000487: POP 00000488: POP 00000489: PUSH1 0x40 0000048b: MLOAD 0000048c: DUP1 0000048d: SWAP2 0000048e: SUB 0000048f: SWAP1 00000490: RETURN 00000491: JUMPDEST 00000492: PUSH2 0x04b0 00000495: PUSH1 0x04 00000497: DUP1 00000498: DUP1 00000499: CALLDATALOAD 0000049a: SWAP1 0000049b: PUSH1 0x20 0000049d: ADD 0000049e: SWAP1 0000049f: SWAP2 000004a0: SWAP1 000004a1: DUP1 000004a2: CALLDATALOAD 000004a3: SWAP1 000004a4: PUSH1 0x20 000004a6: ADD 000004a7: SWAP1 000004a8: SWAP2 000004a9: SWAP1 000004aa: POP 000004ab: POP 000004ac: PUSH2 0x0d81 000004af: JUMP 000004b0: JUMPDEST 000004b1: STOP 000004b2: JUMPDEST 000004b3: PUSH2 0x04bf 000004b6: PUSH1 0x04 000004b8: DUP1 000004b9: POP 000004ba: POP 000004bb: PUSH2 0x0f0c 000004be: JUMP 000004bf: JUMPDEST 000004c0: PUSH1 0x40 000004c2: MLOAD 000004c3: DUP1 000004c4: DUP3 000004c5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000004da: AND 000004db: DUP2 000004dc: MSTORE 000004dd: PUSH1 0x20 000004df: ADD 000004e0: SWAP2 000004e1: POP 000004e2: POP 000004e3: PUSH1 0x40 000004e5: MLOAD 000004e6: DUP1 000004e7: SWAP2 000004e8: SUB 000004e9: SWAP1 000004ea: RETURN 000004eb: JUMPDEST 000004ec: PUSH2 0x04f8 000004ef: PUSH1 0x04 000004f1: DUP1 000004f2: POP 000004f3: POP 000004f4: PUSH2 0x0f32 000004f7: JUMP 000004f8: JUMPDEST 000004f9: PUSH1 0x40 000004fb: MLOAD 000004fc: DUP1 000004fd: DUP3 000004fe: DUP2 000004ff: MSTORE 00000500: PUSH1 0x20 00000502: ADD 00000503: SWAP2 00000504: POP 00000505: POP 00000506: PUSH1 0x40 00000508: MLOAD 00000509: DUP1 0000050a: SWAP2 0000050b: SUB 0000050c: SWAP1 0000050d: RETURN 0000050e: JUMPDEST 0000050f: PUSH2 0x051b 00000512: PUSH1 0x04 00000514: DUP1 00000515: POP 00000516: POP 00000517: PUSH2 0x0f3b 0000051a: JUMP 0000051b: JUMPDEST 0000051c: STOP 0000051d: JUMPDEST 0000051e: PUSH2 0x0583 00000521: PUSH1 0x04 00000523: DUP1 00000524: DUP1 00000525: CALLDATALOAD 00000526: SWAP1 00000527: PUSH1 0x20 00000529: ADD 0000052a: SWAP1 0000052b: SWAP2 0000052c: SWAP1 0000052d: DUP1 0000052e: CALLDATALOAD 0000052f: SWAP1 00000530: PUSH1 0x20 00000532: ADD 00000533: SWAP1 00000534: SWAP2 00000535: SWAP1 00000536: DUP1 00000537: CALLDATALOAD 00000538: SWAP1 00000539: PUSH1 0x20 0000053b: ADD 0000053c: SWAP1 0000053d: DUP3 0000053e: ADD 0000053f: DUP1 00000540: CALLDATALOAD 00000541: SWAP1 00000542: PUSH1 0x20 00000544: ADD 00000545: SWAP2 00000546: SWAP2 00000547: SWAP1 00000548: DUP1 00000549: DUP1 0000054a: PUSH1 0x1f 0000054c: ADD 0000054d: PUSH1 0x20 0000054f: DUP1 00000550: SWAP2 00000551: DIV 00000552: MUL 00000553: PUSH1 0x20 00000555: ADD 00000556: PUSH1 0x40 00000558: MLOAD 00000559: SWAP1 0000055a: DUP2 0000055b: ADD 0000055c: PUSH1 0x40 0000055e: MSTORE 0000055f: DUP1 00000560: SWAP4 00000561: SWAP3 00000562: SWAP2 00000563: SWAP1 00000564: DUP2 00000565: DUP2 00000566: MSTORE 00000567: PUSH1 0x20 00000569: ADD 0000056a: DUP4 0000056b: DUP4 0000056c: DUP1 0000056d: DUP3 0000056e: DUP5 0000056f: CALLDATACOPY 00000570: DUP3 00000571: ADD 00000572: SWAP2 00000573: POP 00000574: POP 00000575: POP 00000576: POP 00000577: POP 00000578: POP 00000579: SWAP1 0000057a: SWAP1 0000057b: SWAP2 0000057c: SWAP1 0000057d: POP 0000057e: POP 0000057f: PUSH2 0x0fd5 00000582: JUMP 00000583: JUMPDEST 00000584: PUSH1 0x40 00000586: MLOAD 00000587: DUP1 00000588: DUP3 00000589: ISZERO 0000058a: ISZERO 0000058b: DUP2 0000058c: MSTORE 0000058d: PUSH1 0x20 0000058f: ADD 00000590: SWAP2 00000591: POP 00000592: POP 00000593: PUSH1 0x40 00000595: MLOAD 00000596: DUP1 00000597: SWAP2 00000598: SUB 00000599: SWAP1 0000059a: RETURN 0000059b: JUMPDEST 0000059c: PUSH2 0x05ba 0000059f: PUSH1 0x04 000005a1: DUP1 000005a2: DUP1 000005a3: CALLDATALOAD 000005a4: SWAP1 000005a5: PUSH1 0x20 000005a7: ADD 000005a8: SWAP1 000005a9: SWAP2 000005aa: SWAP1 000005ab: DUP1 000005ac: CALLDATALOAD 000005ad: SWAP1 000005ae: PUSH1 0x20 000005b0: ADD 000005b1: SWAP1 000005b2: SWAP2 000005b3: SWAP1 000005b4: POP 000005b5: POP 000005b6: PUSH2 0x1102 000005b9: JUMP 000005ba: JUMPDEST 000005bb: PUSH1 0x40 000005bd: MLOAD 000005be: DUP1 000005bf: DUP3 000005c0: DUP2 000005c1: MSTORE 000005c2: PUSH1 0x20 000005c4: ADD 000005c5: SWAP2 000005c6: POP 000005c7: POP 000005c8: PUSH1 0x40 000005ca: MLOAD 000005cb: DUP1 000005cc: SWAP2 000005cd: SUB 000005ce: SWAP1 000005cf: RETURN 000005d0: JUMPDEST 000005d1: PUSH2 0x05dd 000005d4: PUSH1 0x04 000005d6: DUP1 000005d7: POP 000005d8: POP 000005d9: PUSH2 0x112d 000005dc: JUMP 000005dd: JUMPDEST 000005de: PUSH1 0x40 000005e0: MLOAD 000005e1: DUP1 000005e2: DUP3 000005e3: DUP2 000005e4: MSTORE 000005e5: PUSH1 0x20 000005e7: ADD 000005e8: SWAP2 000005e9: POP 000005ea: POP 000005eb: PUSH1 0x40 000005ed: MLOAD 000005ee: DUP1 000005ef: SWAP2 000005f0: SUB 000005f1: SWAP1 000005f2: RETURN 000005f3: JUMPDEST 000005f4: PUSH2 0x0609 000005f7: PUSH1 0x04 000005f9: DUP1 000005fa: DUP1 000005fb: CALLDATALOAD 000005fc: SWAP1 000005fd: PUSH1 0x20 000005ff: ADD 00000600: SWAP1 00000601: SWAP2 00000602: SWAP1 00000603: POP 00000604: POP 00000605: PUSH2 0x1136 00000608: JUMP 00000609: JUMPDEST 0000060a: PUSH1 0x40 0000060c: MLOAD 0000060d: DUP1 0000060e: DUP3 0000060f: DUP2 00000610: MSTORE 00000611: PUSH1 0x20 00000613: ADD 00000614: SWAP2 00000615: POP 00000616: POP 00000617: PUSH1 0x40 00000619: MLOAD 0000061a: DUP1 0000061b: SWAP2 0000061c: SUB 0000061d: SWAP1 0000061e: RETURN 0000061f: JUMPDEST 00000620: PUSH1 0x01 00000622: PUSH1 0x00 00000624: POP 00000625: DUP1 00000626: SLOAD 00000627: PUSH1 0x01 00000629: DUP2 0000062a: PUSH1 0x01 0000062c: AND 0000062d: ISZERO 0000062e: PUSH2 0x0100 00000631: MUL 00000632: SUB 00000633: AND 00000634: PUSH1 0x02 00000636: SWAP1 00000637: DIV 00000638: DUP1 00000639: PUSH1 0x1f 0000063b: ADD 0000063c: PUSH1 0x20 0000063e: DUP1 0000063f: SWAP2 00000640: DIV 00000641: MUL 00000642: PUSH1 0x20 00000644: ADD 00000645: PUSH1 0x40 00000647: MLOAD 00000648: SWAP1 00000649: DUP2 0000064a: ADD 0000064b: PUSH1 0x40 0000064d: MSTORE 0000064e: DUP1 0000064f: SWAP3 00000650: SWAP2 00000651: SWAP1 00000652: DUP2 00000653: DUP2 00000654: MSTORE 00000655: PUSH1 0x20 00000657: ADD 00000658: DUP3 00000659: DUP1 0000065a: SLOAD 0000065b: PUSH1 0x01 0000065d: DUP2 0000065e: PUSH1 0x01 00000660: AND 00000661: ISZERO 00000662: PUSH2 0x0100 00000665: MUL 00000666: SUB 00000667: AND 00000668: PUSH1 0x02 0000066a: SWAP1 0000066b: DIV 0000066c: DUP1 0000066d: ISZERO 0000066e: PUSH2 0x06b8 00000671: JUMPI 00000672: DUP1 00000673: PUSH1 0x1f 00000675: LT 00000676: PUSH2 0x068d 00000679: JUMPI 0000067a: PUSH2 0x0100 0000067d: DUP1 0000067e: DUP4 0000067f: SLOAD 00000680: DIV 00000681: MUL 00000682: DUP4 00000683: MSTORE 00000684: SWAP2 00000685: PUSH1 0x20 00000687: ADD 00000688: SWAP2 00000689: PUSH2 0x06b8 0000068c: JUMP 0000068d: JUMPDEST 0000068e: DUP3 0000068f: ADD 00000690: SWAP2 00000691: SWAP1 00000692: PUSH1 0x00 00000694: MSTORE 00000695: PUSH1 0x20 00000697: PUSH1 0x00 00000699: KECCAK256 0000069a: SWAP1 0000069b: JUMPDEST 0000069c: DUP2 0000069d: SLOAD 0000069e: DUP2 0000069f: MSTORE 000006a0: SWAP1 000006a1: PUSH1 0x01 000006a3: ADD 000006a4: SWAP1 000006a5: PUSH1 0x20 000006a7: ADD 000006a8: DUP1 000006a9: DUP4 000006aa: GT 000006ab: PUSH2 0x069b 000006ae: JUMPI 000006af: DUP3 000006b0: SWAP1 000006b1: SUB 000006b2: PUSH1 0x1f 000006b4: AND 000006b5: DUP3 000006b6: ADD 000006b7: SWAP2 000006b8: JUMPDEST 000006b9: POP 000006ba: POP 000006bb: POP 000006bc: POP 000006bd: POP 000006be: DUP2 000006bf: JUMP 000006c0: JUMPDEST 000006c1: PUSH1 0x00 000006c3: DUP2 000006c4: PUSH1 0x07 000006c6: PUSH1 0x00 000006c8: POP 000006c9: PUSH1 0x00 000006cb: CALLER 000006cc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000006e1: AND 000006e2: DUP2 000006e3: MSTORE 000006e4: PUSH1 0x20 000006e6: ADD 000006e7: SWAP1 000006e8: DUP2 000006e9: MSTORE 000006ea: PUSH1 0x20 000006ec: ADD 000006ed: PUSH1 0x00 000006ef: KECCAK256 000006f0: PUSH1 0x00 000006f2: POP 000006f3: PUSH1 0x00 000006f5: DUP6 000006f6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000070b: AND 0000070c: DUP2 0000070d: MSTORE 0000070e: PUSH1 0x20 00000710: ADD 00000711: SWAP1 00000712: DUP2 00000713: MSTORE 00000714: PUSH1 0x20 00000716: ADD 00000717: PUSH1 0x00 00000719: KECCAK256 0000071a: PUSH1 0x00 0000071c: POP 0000071d: DUP2 0000071e: SWAP1 0000071f: SSTORE 00000720: POP 00000721: PUSH1 0x01 00000723: SWAP1 00000724: POP 00000725: PUSH2 0x0729 00000728: JUMP 00000729: JUMPDEST 0000072a: SWAP3 0000072b: SWAP2 0000072c: POP 0000072d: POP 0000072e: JUMP 0000072f: JUMPDEST 00000730: PUSH1 0x0b 00000732: PUSH1 0x00 00000734: POP 00000735: PUSH1 0x20 00000737: MSTORE 00000738: DUP1 00000739: PUSH1 0x00 0000073b: MSTORE 0000073c: PUSH1 0x40 0000073e: PUSH1 0x00 00000740: KECCAK256 00000741: PUSH1 0x00 00000743: SWAP2 00000744: POP 00000745: SWAP1 00000746: POP 00000747: SLOAD 00000748: DUP2 00000749: JUMP 0000074a: JUMPDEST 0000074b: PUSH1 0x00 0000074d: PUSH1 0x00 0000074f: DUP3 00000750: PUSH1 0x0b 00000752: PUSH1 0x00 00000754: POP 00000755: PUSH1 0x00 00000757: CALLER 00000758: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000076d: AND 0000076e: DUP2 0000076f: MSTORE 00000770: PUSH1 0x20 00000772: ADD 00000773: SWAP1 00000774: DUP2 00000775: MSTORE 00000776: PUSH1 0x20 00000778: ADD 00000779: PUSH1 0x00 0000077b: KECCAK256 0000077c: PUSH1 0x00 0000077e: POP 0000077f: SLOAD 00000780: LT 00000781: ISZERO 00000782: PUSH2 0x078a 00000785: JUMPI 00000786: PUSH2 0x0002 00000789: JUMP 0000078a: JUMPDEST 0000078b: PUSH1 0x0d 0000078d: PUSH1 0x00 0000078f: POP 00000790: SLOAD 00000791: DUP4 00000792: DIV 00000793: SWAP1 00000794: POP 00000795: PUSH1 0x01 00000797: ISZERO 00000798: ISZERO 00000799: CALLER 0000079a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000007af: AND 000007b0: PUSH1 0x00 000007b2: DUP6 000007b3: PUSH1 0x40 000007b5: MLOAD 000007b6: DUP1 000007b7: SWAP1 000007b8: POP 000007b9: PUSH1 0x00 000007bb: PUSH1 0x40 000007bd: MLOAD 000007be: DUP1 000007bf: DUP4 000007c0: SUB 000007c1: DUP2 000007c2: DUP6 000007c3: DUP9 000007c4: DUP9 000007c5: CALL 000007c6: SWAP4 000007c7: POP 000007c8: POP 000007c9: POP 000007ca: POP 000007cb: ISZERO 000007cc: ISZERO 000007cd: EQ 000007ce: ISZERO 000007cf: PUSH2 0x0862 000007d2: JUMPI 000007d3: DUP3 000007d4: PUSH1 0x0b 000007d6: PUSH1 0x00 000007d8: POP 000007d9: PUSH1 0x00 000007db: CALLER 000007dc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000007f1: AND 000007f2: DUP2 000007f3: MSTORE 000007f4: PUSH1 0x20 000007f6: ADD 000007f7: SWAP1 000007f8: DUP2 000007f9: MSTORE 000007fa: PUSH1 0x20 000007fc: ADD 000007fd: PUSH1 0x00 000007ff: KECCAK256 00000800: PUSH1 0x00 00000802: DUP3 00000803: DUP3 00000804: DUP3 00000805: POP 00000806: SLOAD 00000807: SUB 00000808: SWAP3 00000809: POP 0000080a: POP 0000080b: DUP2 0000080c: SWAP1 0000080d: SSTORE 0000080e: POP 0000080f: DUP1 00000810: PUSH1 0x0c 00000812: PUSH1 0x00 00000814: POP 00000815: PUSH1 0x00 00000817: CALLER 00000818: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000082d: AND 0000082e: DUP2 0000082f: MSTORE 00000830: PUSH1 0x20 00000832: ADD 00000833: SWAP1 00000834: DUP2 00000835: MSTORE 00000836: PUSH1 0x20 00000838: ADD 00000839: PUSH1 0x00 0000083b: KECCAK256 0000083c: PUSH1 0x00 0000083e: DUP3 0000083f: DUP3 00000840: DUP3 00000841: POP 00000842: SLOAD 00000843: SUB 00000844: SWAP3 00000845: POP 00000846: POP 00000847: DUP2 00000848: SWAP1 00000849: SSTORE 0000084a: POP 0000084b: PUSH2 0x0855 0000084e: PUSH1 0x01 00000850: CALLER 00000851: PUSH2 0x1174 00000854: JUMP 00000855: JUMPDEST 00000856: PUSH1 0x01 00000858: SWAP2 00000859: POP 0000085a: PUSH2 0x086c 0000085d: JUMP 0000085e: PUSH2 0x086b 00000861: JUMP 00000862: JUMPDEST 00000863: PUSH1 0x00 00000865: SWAP2 00000866: POP 00000867: PUSH2 0x086c 0000086a: JUMP 0000086b: JUMPDEST 0000086c: JUMPDEST 0000086d: POP 0000086e: SWAP2 0000086f: SWAP1 00000870: POP 00000871: JUMP 00000872: JUMPDEST 00000873: PUSH1 0x04 00000875: PUSH1 0x00 00000877: POP 00000878: SLOAD 00000879: DUP2 0000087a: JUMP 0000087b: JUMPDEST 0000087c: PUSH1 0x00 0000087e: DUP2 0000087f: PUSH1 0x06 00000881: PUSH1 0x00 00000883: POP 00000884: PUSH1 0x00 00000886: DUP7 00000887: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000089c: AND 0000089d: DUP2 0000089e: MSTORE 0000089f: PUSH1 0x20 000008a1: ADD 000008a2: SWAP1 000008a3: DUP2 000008a4: MSTORE 000008a5: PUSH1 0x20 000008a7: ADD 000008a8: PUSH1 0x00 000008aa: KECCAK256 000008ab: PUSH1 0x00 000008ad: POP 000008ae: SLOAD 000008af: LT 000008b0: ISZERO 000008b1: PUSH2 0x08b9 000008b4: JUMPI 000008b5: PUSH2 0x0002 000008b8: JUMP 000008b9: JUMPDEST 000008ba: PUSH1 0x06 000008bc: PUSH1 0x00 000008be: POP 000008bf: PUSH1 0x00 000008c1: DUP5 000008c2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000008d7: AND 000008d8: DUP2 000008d9: MSTORE 000008da: PUSH1 0x20 000008dc: ADD 000008dd: SWAP1 000008de: DUP2 000008df: MSTORE 000008e0: PUSH1 0x20 000008e2: ADD 000008e3: PUSH1 0x00 000008e5: KECCAK256 000008e6: PUSH1 0x00 000008e8: POP 000008e9: SLOAD 000008ea: DUP3 000008eb: PUSH1 0x06 000008ed: PUSH1 0x00 000008ef: POP 000008f0: PUSH1 0x00 000008f2: DUP7 000008f3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000908: AND 00000909: DUP2 0000090a: MSTORE 0000090b: PUSH1 0x20 0000090d: ADD 0000090e: SWAP1 0000090f: DUP2 00000910: MSTORE 00000911: PUSH1 0x20 00000913: ADD 00000914: PUSH1 0x00 00000916: KECCAK256 00000917: PUSH1 0x00 00000919: POP 0000091a: SLOAD 0000091b: ADD 0000091c: LT 0000091d: ISZERO 0000091e: PUSH2 0x0926 00000921: JUMPI 00000922: PUSH2 0x0002 00000925: JUMP 00000926: JUMPDEST 00000927: PUSH1 0x07 00000929: PUSH1 0x00 0000092b: POP 0000092c: PUSH1 0x00 0000092e: DUP6 0000092f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000944: AND 00000945: DUP2 00000946: MSTORE 00000947: PUSH1 0x20 00000949: ADD 0000094a: SWAP1 0000094b: DUP2 0000094c: MSTORE 0000094d: PUSH1 0x20 0000094f: ADD 00000950: PUSH1 0x00 00000952: KECCAK256 00000953: PUSH1 0x00 00000955: POP 00000956: PUSH1 0x00 00000958: CALLER 00000959: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000096e: AND 0000096f: DUP2 00000970: MSTORE 00000971: PUSH1 0x20 00000973: ADD 00000974: SWAP1 00000975: DUP2 00000976: MSTORE 00000977: PUSH1 0x20 00000979: ADD 0000097a: PUSH1 0x00 0000097c: KECCAK256 0000097d: PUSH1 0x00 0000097f: POP 00000980: SLOAD 00000981: DUP3 00000982: GT 00000983: ISZERO 00000984: PUSH2 0x098c 00000987: JUMPI 00000988: PUSH2 0x0002 0000098b: JUMP 0000098c: JUMPDEST 0000098d: DUP2 0000098e: PUSH1 0x06 00000990: PUSH1 0x00 00000992: POP 00000993: PUSH1 0x00 00000995: DUP7 00000996: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000009ab: AND 000009ac: DUP2 000009ad: MSTORE 000009ae: PUSH1 0x20 000009b0: ADD 000009b1: SWAP1 000009b2: DUP2 000009b3: MSTORE 000009b4: PUSH1 0x20 000009b6: ADD 000009b7: PUSH1 0x00 000009b9: KECCAK256 000009ba: PUSH1 0x00 000009bc: DUP3 000009bd: DUP3 000009be: DUP3 000009bf: POP 000009c0: SLOAD 000009c1: SUB 000009c2: SWAP3 000009c3: POP 000009c4: POP 000009c5: DUP2 000009c6: SWAP1 000009c7: SSTORE 000009c8: POP 000009c9: DUP2 000009ca: PUSH1 0x06 000009cc: PUSH1 0x00 000009ce: POP 000009cf: PUSH1 0x00 000009d1: DUP6 000009d2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000009e7: AND 000009e8: DUP2 000009e9: MSTORE 000009ea: PUSH1 0x20 000009ec: ADD 000009ed: SWAP1 000009ee: DUP2 000009ef: MSTORE 000009f0: PUSH1 0x20 000009f2: ADD 000009f3: PUSH1 0x00 000009f5: KECCAK256 000009f6: PUSH1 0x00 000009f8: DUP3 000009f9: DUP3 000009fa: DUP3 000009fb: POP 000009fc: SLOAD 000009fd: ADD 000009fe: SWAP3 000009ff: POP 00000a00: POP 00000a01: DUP2 00000a02: SWAP1 00000a03: SSTORE 00000a04: POP 00000a05: DUP2 00000a06: PUSH1 0x07 00000a08: PUSH1 0x00 00000a0a: POP 00000a0b: PUSH1 0x00 00000a0d: DUP7 00000a0e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a23: AND 00000a24: DUP2 00000a25: MSTORE 00000a26: PUSH1 0x20 00000a28: ADD 00000a29: SWAP1 00000a2a: DUP2 00000a2b: MSTORE 00000a2c: PUSH1 0x20 00000a2e: ADD 00000a2f: PUSH1 0x00 00000a31: KECCAK256 00000a32: PUSH1 0x00 00000a34: POP 00000a35: PUSH1 0x00 00000a37: CALLER 00000a38: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a4d: AND 00000a4e: DUP2 00000a4f: MSTORE 00000a50: PUSH1 0x20 00000a52: ADD 00000a53: SWAP1 00000a54: DUP2 00000a55: MSTORE 00000a56: PUSH1 0x20 00000a58: ADD 00000a59: PUSH1 0x00 00000a5b: KECCAK256 00000a5c: PUSH1 0x00 00000a5e: DUP3 00000a5f: DUP3 00000a60: DUP3 00000a61: POP 00000a62: SLOAD 00000a63: SUB 00000a64: SWAP3 00000a65: POP 00000a66: POP 00000a67: DUP2 00000a68: SWAP1 00000a69: SSTORE 00000a6a: POP 00000a6b: DUP3 00000a6c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a81: AND 00000a82: DUP5 00000a83: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a98: AND 00000a99: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 00000aba: DUP5 00000abb: PUSH1 0x40 00000abd: MLOAD 00000abe: DUP1 00000abf: DUP3 00000ac0: DUP2 00000ac1: MSTORE 00000ac2: PUSH1 0x20 00000ac4: ADD 00000ac5: SWAP2 00000ac6: POP 00000ac7: POP 00000ac8: PUSH1 0x40 00000aca: MLOAD 00000acb: DUP1 00000acc: SWAP2 00000acd: SUB 00000ace: SWAP1 00000acf: LOG3 00000ad0: PUSH1 0x01 00000ad2: SWAP1 00000ad3: POP 00000ad4: PUSH2 0x0ad8 00000ad7: JUMP 00000ad8: JUMPDEST 00000ad9: SWAP4 00000ada: SWAP3 00000adb: POP 00000adc: POP 00000add: POP 00000ade: JUMP 00000adf: JUMPDEST 00000ae0: PUSH1 0x03 00000ae2: PUSH1 0x00 00000ae4: SWAP1 00000ae5: SLOAD 00000ae6: SWAP1 00000ae7: PUSH2 0x0100 00000aea: EXP 00000aeb: SWAP1 00000aec: DIV 00000aed: PUSH1 0xff 00000aef: AND 00000af0: DUP2 00000af1: JUMP 00000af2: JUMPDEST 00000af3: PUSH1 0x0c 00000af5: PUSH1 0x00 00000af7: POP 00000af8: PUSH1 0x20 00000afa: MSTORE 00000afb: DUP1 00000afc: PUSH1 0x00 00000afe: MSTORE 00000aff: PUSH1 0x40 00000b01: PUSH1 0x00 00000b03: KECCAK256 00000b04: PUSH1 0x00 00000b06: SWAP2 00000b07: POP 00000b08: SWAP1 00000b09: POP 00000b0a: SLOAD 00000b0b: DUP2 00000b0c: JUMP 00000b0d: JUMPDEST 00000b0e: PUSH1 0x00 00000b10: PUSH1 0x00 00000b12: POP 00000b13: DUP1 00000b14: SLOAD 00000b15: PUSH1 0x01 00000b17: DUP2 00000b18: PUSH1 0x01 00000b1a: AND 00000b1b: ISZERO 00000b1c: PUSH2 0x0100 00000b1f: MUL 00000b20: SUB 00000b21: AND 00000b22: PUSH1 0x02 00000b24: SWAP1 00000b25: DIV 00000b26: DUP1 00000b27: PUSH1 0x1f 00000b29: ADD 00000b2a: PUSH1 0x20 00000b2c: DUP1 00000b2d: SWAP2 00000b2e: DIV 00000b2f: MUL 00000b30: PUSH1 0x20 00000b32: ADD 00000b33: PUSH1 0x40 00000b35: MLOAD 00000b36: SWAP1 00000b37: DUP2 00000b38: ADD 00000b39: PUSH1 0x40 00000b3b: MSTORE 00000b3c: DUP1 00000b3d: SWAP3 00000b3e: SWAP2 00000b3f: SWAP1 00000b40: DUP2 00000b41: DUP2 00000b42: MSTORE 00000b43: PUSH1 0x20 00000b45: ADD 00000b46: DUP3 00000b47: DUP1 00000b48: SLOAD 00000b49: PUSH1 0x01 00000b4b: DUP2 00000b4c: PUSH1 0x01 00000b4e: AND 00000b4f: ISZERO 00000b50: PUSH2 0x0100 00000b53: MUL 00000b54: SUB 00000b55: AND 00000b56: PUSH1 0x02 00000b58: SWAP1 00000b59: DIV 00000b5a: DUP1 00000b5b: ISZERO 00000b5c: PUSH2 0x0ba6 00000b5f: JUMPI 00000b60: DUP1 00000b61: PUSH1 0x1f 00000b63: LT 00000b64: PUSH2 0x0b7b 00000b67: JUMPI 00000b68: PUSH2 0x0100 00000b6b: DUP1 00000b6c: DUP4 00000b6d: SLOAD 00000b6e: DIV 00000b6f: MUL 00000b70: DUP4 00000b71: MSTORE 00000b72: SWAP2 00000b73: PUSH1 0x20 00000b75: ADD 00000b76: SWAP2 00000b77: PUSH2 0x0ba6 00000b7a: JUMP 00000b7b: JUMPDEST 00000b7c: DUP3 00000b7d: ADD 00000b7e: SWAP2 00000b7f: SWAP1 00000b80: PUSH1 0x00 00000b82: MSTORE 00000b83: PUSH1 0x20 00000b85: PUSH1 0x00 00000b87: KECCAK256 00000b88: SWAP1 00000b89: JUMPDEST 00000b8a: DUP2 00000b8b: SLOAD 00000b8c: DUP2 00000b8d: MSTORE 00000b8e: SWAP1 00000b8f: PUSH1 0x01 00000b91: ADD 00000b92: SWAP1 00000b93: PUSH1 0x20 00000b95: ADD 00000b96: DUP1 00000b97: DUP4 00000b98: GT 00000b99: PUSH2 0x0b89 00000b9c: JUMPI 00000b9d: DUP3 00000b9e: SWAP1 00000b9f: SUB 00000ba0: PUSH1 0x1f 00000ba2: AND 00000ba3: DUP3 00000ba4: ADD 00000ba5: SWAP2 00000ba6: JUMPDEST 00000ba7: POP 00000ba8: POP 00000ba9: POP 00000baa: POP 00000bab: POP 00000bac: DUP2 00000bad: JUMP 00000bae: JUMPDEST 00000baf: PUSH1 0x06 00000bb1: PUSH1 0x00 00000bb3: POP 00000bb4: PUSH1 0x20 00000bb6: MSTORE 00000bb7: DUP1 00000bb8: PUSH1 0x00 00000bba: MSTORE 00000bbb: PUSH1 0x40 00000bbd: PUSH1 0x00 00000bbf: KECCAK256 00000bc0: PUSH1 0x00 00000bc2: SWAP2 00000bc3: POP 00000bc4: SWAP1 00000bc5: POP 00000bc6: SLOAD 00000bc7: DUP2 00000bc8: JUMP 00000bc9: JUMPDEST 00000bca: PUSH1 0x0a 00000bcc: PUSH1 0x00 00000bce: SWAP1 00000bcf: SLOAD 00000bd0: SWAP1 00000bd1: PUSH2 0x0100 00000bd4: EXP 00000bd5: SWAP1 00000bd6: DIV 00000bd7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000bec: AND 00000bed: DUP2 00000bee: JUMP 00000bef: JUMPDEST 00000bf0: PUSH1 0x08 00000bf2: PUSH1 0x00 00000bf4: SWAP1 00000bf5: SLOAD 00000bf6: SWAP1 00000bf7: PUSH2 0x0100 00000bfa: EXP 00000bfb: SWAP1 00000bfc: DIV 00000bfd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000c12: AND 00000c13: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000c28: AND 00000c29: CALLER 00000c2a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000c3f: AND 00000c40: EQ 00000c41: ISZERO 00000c42: PUSH2 0x0cb7 00000c45: JUMPI 00000c46: PUSH1 0x08 00000c48: PUSH1 0x00 00000c4a: SWAP1 00000c4b: SLOAD 00000c4c: SWAP1 00000c4d: PUSH2 0x0100 00000c50: EXP 00000c51: SWAP1 00000c52: DIV 00000c53: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000c68: AND 00000c69: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000c7e: AND 00000c7f: PUSH1 0x00 00000c81: PUSH3 0x200b20 00000c85: ADDRESS 00000c86: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000c9b: AND 00000c9c: BALANCE 00000c9d: SUB 00000c9e: PUSH1 0x40 00000ca0: MLOAD 00000ca1: DUP1 00000ca2: SWAP1 00000ca3: POP 00000ca4: PUSH1 0x00 00000ca6: PUSH1 0x40 00000ca8: MLOAD 00000ca9: DUP1 00000caa: DUP4 00000cab: SUB 00000cac: DUP2 00000cad: DUP6 00000cae: DUP9 00000caf: DUP9 00000cb0: CALL 00000cb1: SWAP4 00000cb2: POP 00000cb3: POP 00000cb4: POP 00000cb5: POP 00000cb6: POP 00000cb7: JUMPDEST 00000cb8: JUMPDEST 00000cb9: JUMP 00000cba: JUMPDEST 00000cbb: PUSH1 0x08 00000cbd: PUSH1 0x00 00000cbf: SWAP1 00000cc0: SLOAD 00000cc1: SWAP1 00000cc2: PUSH2 0x0100 00000cc5: EXP 00000cc6: SWAP1 00000cc7: DIV 00000cc8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000cdd: AND 00000cde: DUP2 00000cdf: JUMP 00000ce0: JUMPDEST 00000ce1: PUSH1 0x02 00000ce3: PUSH1 0x00 00000ce5: POP 00000ce6: DUP1 00000ce7: SLOAD 00000ce8: PUSH1 0x01 00000cea: DUP2 00000ceb: PUSH1 0x01 00000ced: AND 00000cee: ISZERO 00000cef: PUSH2 0x0100 00000cf2: MUL 00000cf3: SUB 00000cf4: AND 00000cf5: PUSH1 0x02 00000cf7: SWAP1 00000cf8: DIV 00000cf9: DUP1 00000cfa: PUSH1 0x1f 00000cfc: ADD 00000cfd: PUSH1 0x20 00000cff: DUP1 00000d00: SWAP2 00000d01: DIV 00000d02: MUL 00000d03: PUSH1 0x20 00000d05: ADD 00000d06: PUSH1 0x40 00000d08: MLOAD 00000d09: SWAP1 00000d0a: DUP2 00000d0b: ADD 00000d0c: PUSH1 0x40 00000d0e: MSTORE 00000d0f: DUP1 00000d10: SWAP3 00000d11: SWAP2 00000d12: SWAP1 00000d13: DUP2 00000d14: DUP2 00000d15: MSTORE 00000d16: PUSH1 0x20 00000d18: ADD 00000d19: DUP3 00000d1a: DUP1 00000d1b: SLOAD 00000d1c: PUSH1 0x01 00000d1e: DUP2 00000d1f: PUSH1 0x01 00000d21: AND 00000d22: ISZERO 00000d23: PUSH2 0x0100 00000d26: MUL 00000d27: SUB 00000d28: AND 00000d29: PUSH1 0x02 00000d2b: SWAP1 00000d2c: DIV 00000d2d: DUP1 00000d2e: ISZERO 00000d2f: PUSH2 0x0d79 00000d32: JUMPI 00000d33: DUP1 00000d34: PUSH1 0x1f 00000d36: LT 00000d37: PUSH2 0x0d4e 00000d3a: JUMPI 00000d3b: PUSH2 0x0100 00000d3e: DUP1 00000d3f: DUP4 00000d40: SLOAD 00000d41: DIV 00000d42: MUL 00000d43: DUP4 00000d44: MSTORE 00000d45: SWAP2 00000d46: PUSH1 0x20 00000d48: ADD 00000d49: SWAP2 00000d4a: PUSH2 0x0d79 00000d4d: JUMP 00000d4e: JUMPDEST 00000d4f: DUP3 00000d50: ADD 00000d51: SWAP2 00000d52: SWAP1 00000d53: PUSH1 0x00 00000d55: MSTORE 00000d56: PUSH1 0x20 00000d58: PUSH1 0x00 00000d5a: KECCAK256 00000d5b: SWAP1 00000d5c: JUMPDEST 00000d5d: DUP2 00000d5e: SLOAD 00000d5f: DUP2 00000d60: MSTORE 00000d61: SWAP1 00000d62: PUSH1 0x01 00000d64: ADD 00000d65: SWAP1 00000d66: PUSH1 0x20 00000d68: ADD 00000d69: DUP1 00000d6a: DUP4 00000d6b: GT 00000d6c: PUSH2 0x0d5c 00000d6f: JUMPI 00000d70: DUP3 00000d71: SWAP1 00000d72: SUB 00000d73: PUSH1 0x1f 00000d75: AND 00000d76: DUP3 00000d77: ADD 00000d78: SWAP2 00000d79: JUMPDEST 00000d7a: POP 00000d7b: POP 00000d7c: POP 00000d7d: POP 00000d7e: POP 00000d7f: DUP2 00000d80: JUMP 00000d81: JUMPDEST 00000d82: DUP1 00000d83: PUSH1 0x06 00000d85: PUSH1 0x00 00000d87: POP 00000d88: PUSH1 0x00 00000d8a: CALLER 00000d8b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000da0: AND 00000da1: DUP2 00000da2: MSTORE 00000da3: PUSH1 0x20 00000da5: ADD 00000da6: SWAP1 00000da7: DUP2 00000da8: MSTORE 00000da9: PUSH1 0x20 00000dab: ADD 00000dac: PUSH1 0x00 00000dae: KECCAK256 00000daf: PUSH1 0x00 00000db1: POP 00000db2: SLOAD 00000db3: LT 00000db4: ISZERO 00000db5: PUSH2 0x0dbd 00000db8: JUMPI 00000db9: PUSH2 0x0002 00000dbc: JUMP 00000dbd: JUMPDEST 00000dbe: PUSH1 0x06 00000dc0: PUSH1 0x00 00000dc2: POP 00000dc3: PUSH1 0x00 00000dc5: DUP4 00000dc6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000ddb: AND 00000ddc: DUP2 00000ddd: MSTORE 00000dde: PUSH1 0x20 00000de0: ADD 00000de1: SWAP1 00000de2: DUP2 00000de3: MSTORE 00000de4: PUSH1 0x20 00000de6: ADD 00000de7: PUSH1 0x00 00000de9: KECCAK256 00000dea: PUSH1 0x00 00000dec: POP 00000ded: SLOAD 00000dee: DUP2 00000def: PUSH1 0x06 00000df1: PUSH1 0x00 00000df3: POP 00000df4: PUSH1 0x00 00000df6: DUP6 00000df7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e0c: AND 00000e0d: DUP2 00000e0e: MSTORE 00000e0f: PUSH1 0x20 00000e11: ADD 00000e12: SWAP1 00000e13: DUP2 00000e14: MSTORE 00000e15: PUSH1 0x20 00000e17: ADD 00000e18: PUSH1 0x00 00000e1a: KECCAK256 00000e1b: PUSH1 0x00 00000e1d: POP 00000e1e: SLOAD 00000e1f: ADD 00000e20: LT 00000e21: ISZERO 00000e22: PUSH2 0x0e2a 00000e25: JUMPI 00000e26: PUSH2 0x0002 00000e29: JUMP 00000e2a: JUMPDEST 00000e2b: DUP1 00000e2c: PUSH1 0x06 00000e2e: PUSH1 0x00 00000e30: POP 00000e31: PUSH1 0x00 00000e33: CALLER 00000e34: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e49: AND 00000e4a: DUP2 00000e4b: MSTORE 00000e4c: PUSH1 0x20 00000e4e: ADD 00000e4f: SWAP1 00000e50: DUP2 00000e51: MSTORE 00000e52: PUSH1 0x20 00000e54: ADD 00000e55: PUSH1 0x00 00000e57: KECCAK256 00000e58: PUSH1 0x00 00000e5a: DUP3 00000e5b: DUP3 00000e5c: DUP3 00000e5d: POP 00000e5e: SLOAD 00000e5f: SUB 00000e60: SWAP3 00000e61: POP 00000e62: POP 00000e63: DUP2 00000e64: SWAP1 00000e65: SSTORE 00000e66: POP 00000e67: DUP1 00000e68: PUSH1 0x06 00000e6a: PUSH1 0x00 00000e6c: POP 00000e6d: PUSH1 0x00 00000e6f: DUP5 00000e70: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e85: AND 00000e86: DUP2 00000e87: MSTORE 00000e88: PUSH1 0x20 00000e8a: ADD 00000e8b: SWAP1 00000e8c: DUP2 00000e8d: MSTORE 00000e8e: PUSH1 0x20 00000e90: ADD 00000e91: PUSH1 0x00 00000e93: KECCAK256 00000e94: PUSH1 0x00 00000e96: DUP3 00000e97: DUP3 00000e98: DUP3 00000e99: POP 00000e9a: SLOAD 00000e9b: ADD 00000e9c: SWAP3 00000e9d: POP 00000e9e: POP 00000e9f: DUP2 00000ea0: SWAP1 00000ea1: SSTORE 00000ea2: POP 00000ea3: DUP2 00000ea4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000eb9: AND 00000eba: CALLER 00000ebb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000ed0: AND 00000ed1: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 00000ef2: DUP4 00000ef3: PUSH1 0x40 00000ef5: MLOAD 00000ef6: DUP1 00000ef7: DUP3 00000ef8: DUP2 00000ef9: MSTORE 00000efa: PUSH1 0x20 00000efc: ADD 00000efd: SWAP2 00000efe: POP 00000eff: POP 00000f00: PUSH1 0x40 00000f02: MLOAD 00000f03: DUP1 00000f04: SWAP2 00000f05: SUB 00000f06: SWAP1 00000f07: LOG3 00000f08: JUMPDEST 00000f09: POP 00000f0a: POP 00000f0b: JUMP 00000f0c: JUMPDEST 00000f0d: PUSH1 0x09 00000f0f: PUSH1 0x00 00000f11: SWAP1 00000f12: SLOAD 00000f13: SWAP1 00000f14: PUSH2 0x0100 00000f17: EXP 00000f18: SWAP1 00000f19: DIV 00000f1a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000f2f: AND 00000f30: DUP2 00000f31: JUMP 00000f32: JUMPDEST 00000f33: PUSH1 0x0d 00000f35: PUSH1 0x00 00000f37: POP 00000f38: SLOAD 00000f39: DUP2 00000f3a: JUMP 00000f3b: JUMPDEST 00000f3c: PUSH1 0x0d 00000f3e: PUSH1 0x00 00000f40: POP 00000f41: SLOAD 00000f42: CALLVALUE 00000f43: LT 00000f44: ISZERO 00000f45: ISZERO 00000f46: PUSH2 0x0fcd 00000f49: JUMPI 00000f4a: CALLVALUE 00000f4b: PUSH1 0x0b 00000f4d: PUSH1 0x00 00000f4f: POP 00000f50: PUSH1 0x00 00000f52: CALLER 00000f53: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000f68: AND 00000f69: DUP2 00000f6a: MSTORE 00000f6b: PUSH1 0x20 00000f6d: ADD 00000f6e: SWAP1 00000f6f: DUP2 00000f70: MSTORE 00000f71: PUSH1 0x20 00000f73: ADD 00000f74: PUSH1 0x00 00000f76: KECCAK256 00000f77: PUSH1 0x00 00000f79: DUP3 00000f7a: DUP3 00000f7b: DUP3 00000f7c: POP 00000f7d: SLOAD 00000f7e: ADD 00000f7f: SWAP3 00000f80: POP 00000f81: POP 00000f82: DUP2 00000f83: SWAP1 00000f84: SSTORE 00000f85: POP 00000f86: PUSH1 0x0d 00000f88: PUSH1 0x00 00000f8a: POP 00000f8b: SLOAD 00000f8c: CALLVALUE 00000f8d: DIV 00000f8e: PUSH1 0x0c 00000f90: PUSH1 0x00 00000f92: POP 00000f93: PUSH1 0x00 00000f95: CALLER 00000f96: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000fab: AND 00000fac: DUP2 00000fad: MSTORE 00000fae: PUSH1 0x20 00000fb0: ADD 00000fb1: SWAP1 00000fb2: DUP2 00000fb3: MSTORE 00000fb4: PUSH1 0x20 00000fb6: ADD 00000fb7: PUSH1 0x00 00000fb9: KECCAK256 00000fba: PUSH1 0x00 00000fbc: DUP3 00000fbd: DUP3 00000fbe: DUP3 00000fbf: POP 00000fc0: SLOAD 00000fc1: ADD 00000fc2: SWAP3 00000fc3: POP 00000fc4: POP 00000fc5: DUP2 00000fc6: SWAP1 00000fc7: SSTORE 00000fc8: POP 00000fc9: PUSH2 0x0fd2 00000fcc: JUMP 00000fcd: JUMPDEST 00000fce: PUSH2 0x0002 00000fd1: JUMP 00000fd2: JUMPDEST 00000fd3: JUMPDEST 00000fd4: JUMP 00000fd5: JUMPDEST 00000fd6: PUSH1 0x00 00000fd8: PUSH1 0x00 00000fda: DUP5 00000fdb: SWAP1 00000fdc: POP 00000fdd: PUSH2 0x0fe6 00000fe0: DUP6 00000fe1: DUP6 00000fe2: PUSH2 0x06c0 00000fe5: JUMP 00000fe6: JUMPDEST 00000fe7: ISZERO 00000fe8: PUSH2 0x10f9 00000feb: JUMPI 00000fec: DUP1 00000fed: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001002: AND 00001003: PUSH4 0x8f4ffcb1 00001008: CALLER 00001009: DUP7 0000100a: ADDRESS 0000100b: DUP8 0000100c: PUSH1 0x40 0000100e: MLOAD 0000100f: DUP6 00001010: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 0000102e: MUL 0000102f: DUP2 00001030: MSTORE 00001031: PUSH1 0x04 00001033: ADD 00001034: DUP1 00001035: DUP6 00001036: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000104b: AND 0000104c: DUP2 0000104d: MSTORE 0000104e: PUSH1 0x20 00001050: ADD 00001051: DUP5 00001052: DUP2 00001053: MSTORE 00001054: PUSH1 0x20 00001056: ADD 00001057: DUP4 00001058: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000106d: AND 0000106e: DUP2 0000106f: MSTORE 00001070: PUSH1 0x20 00001072: ADD 00001073: DUP1 00001074: PUSH1 0x20 00001076: ADD 00001077: DUP3 00001078: DUP2 00001079: SUB 0000107a: DUP3 0000107b: MSTORE 0000107c: DUP4 0000107d: DUP2 0000107e: DUP2 0000107f: MLOAD 00001080: DUP2 00001081: MSTORE 00001082: PUSH1 0x20 00001084: ADD 00001085: SWAP2 00001086: POP 00001087: DUP1 00001088: MLOAD 00001089: SWAP1 0000108a: PUSH1 0x20 0000108c: ADD 0000108d: SWAP1 0000108e: DUP1 0000108f: DUP4 00001090: DUP4 00001091: DUP3 00001092: SWAP1 00001093: PUSH1 0x00 00001095: PUSH1 0x04 00001097: PUSH1 0x20 00001099: DUP5 0000109a: PUSH1 0x1f 0000109c: ADD 0000109d: DIV 0000109e: PUSH1 0x03 000010a0: MUL 000010a1: PUSH1 0x0f 000010a3: ADD 000010a4: CALL 000010a5: POP 000010a6: SWAP1 000010a7: POP 000010a8: SWAP1 000010a9: DUP2 000010aa: ADD 000010ab: SWAP1 000010ac: PUSH1 0x1f 000010ae: AND 000010af: DUP1 000010b0: ISZERO 000010b1: PUSH2 0x10ce 000010b4: JUMPI 000010b5: DUP1 000010b6: DUP3 000010b7: SUB 000010b8: DUP1 000010b9: MLOAD 000010ba: PUSH1 0x01 000010bc: DUP4 000010bd: PUSH1 0x20 000010bf: SUB 000010c0: PUSH2 0x0100 000010c3: EXP 000010c4: SUB 000010c5: NOT 000010c6: AND 000010c7: DUP2 000010c8: MSTORE 000010c9: PUSH1 0x20 000010cb: ADD 000010cc: SWAP2 000010cd: POP 000010ce: JUMPDEST 000010cf: POP 000010d0: SWAP6 000010d1: POP 000010d2: POP 000010d3: POP 000010d4: POP 000010d5: POP 000010d6: POP 000010d7: PUSH1 0x00 000010d9: PUSH1 0x40 000010db: MLOAD 000010dc: DUP1 000010dd: DUP4 000010de: SUB 000010df: DUP2 000010e0: PUSH1 0x00 000010e2: DUP8 000010e3: PUSH2 0x61da 000010e6: GAS 000010e7: SUB 000010e8: CALL 000010e9: ISZERO 000010ea: PUSH2 0x0002 000010ed: JUMPI 000010ee: POP 000010ef: POP 000010f0: POP 000010f1: PUSH1 0x01 000010f3: SWAP2 000010f4: POP 000010f5: PUSH2 0x10fa 000010f8: JUMP 000010f9: JUMPDEST 000010fa: JUMPDEST 000010fb: POP 000010fc: SWAP4 000010fd: SWAP3 000010fe: POP 000010ff: POP 00001100: POP 00001101: JUMP 00001102: JUMPDEST 00001103: PUSH1 0x07 00001105: PUSH1 0x00 00001107: POP 00001108: PUSH1 0x20 0000110a: MSTORE 0000110b: DUP2 0000110c: PUSH1 0x00 0000110e: MSTORE 0000110f: PUSH1 0x40 00001111: PUSH1 0x00 00001113: KECCAK256 00001114: PUSH1 0x00 00001116: POP 00001117: PUSH1 0x20 00001119: MSTORE 0000111a: DUP1 0000111b: PUSH1 0x00 0000111d: MSTORE 0000111e: PUSH1 0x40 00001120: PUSH1 0x00 00001122: KECCAK256 00001123: PUSH1 0x00 00001125: SWAP2 00001126: POP 00001127: SWAP2 00001128: POP 00001129: POP 0000112a: SLOAD 0000112b: DUP2 0000112c: JUMP 0000112d: JUMPDEST 0000112e: PUSH1 0x0e 00001130: PUSH1 0x00 00001132: POP 00001133: SLOAD 00001134: DUP2 00001135: JUMP 00001136: JUMPDEST 00001137: PUSH1 0x00 00001139: PUSH1 0x06 0000113b: PUSH1 0x00 0000113d: POP 0000113e: PUSH1 0x00 00001140: DUP4 00001141: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001156: AND 00001157: DUP2 00001158: MSTORE 00001159: PUSH1 0x20 0000115b: ADD 0000115c: SWAP1 0000115d: DUP2 0000115e: MSTORE 0000115f: PUSH1 0x20 00001161: ADD 00001162: PUSH1 0x00 00001164: KECCAK256 00001165: PUSH1 0x00 00001167: POP 00001168: SLOAD 00001169: SWAP1 0000116a: POP 0000116b: PUSH2 0x116f 0000116e: JUMP 0000116f: JUMPDEST 00001170: SWAP2 00001171: SWAP1 00001172: POP 00001173: JUMP 00001174: JUMPDEST 00001175: PUSH1 0x0a 00001177: PUSH1 0x00 00001179: SWAP1 0000117a: SLOAD 0000117b: SWAP1 0000117c: PUSH2 0x0100 0000117f: EXP 00001180: SWAP1 00001181: DIV 00001182: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001197: AND 00001198: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000011ad: AND 000011ae: PUSH4 0xa9059cbb 000011b3: DUP3 000011b4: DUP5 000011b5: PUSH1 0x40 000011b7: MLOAD 000011b8: DUP4 000011b9: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 000011d7: MUL 000011d8: DUP2 000011d9: MSTORE 000011da: PUSH1 0x04 000011dc: ADD 000011dd: DUP1 000011de: DUP4 000011df: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000011f4: AND 000011f5: DUP2 000011f6: MSTORE 000011f7: PUSH1 0x20 000011f9: ADD 000011fa: DUP3 000011fb: DUP2 000011fc: MSTORE 000011fd: PUSH1 0x20 000011ff: ADD 00001200: SWAP3 00001201: POP 00001202: POP 00001203: POP 00001204: PUSH1 0x00 00001206: PUSH1 0x40 00001208: MLOAD 00001209: DUP1 0000120a: DUP4 0000120b: SUB 0000120c: DUP2 0000120d: PUSH1 0x00 0000120f: DUP8 00001210: PUSH2 0x61da 00001213: GAS 00001214: SUB 00001215: CALL 00001216: ISZERO 00001217: PUSH2 0x0002 0000121a: JUMPI 0000121b: POP 0000121c: POP 0000121d: POP 0000121e: JUMPDEST 0000121f: POP 00001220: POP 00001221: JUMP
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 |
|---|---|---|---|---|---|---|---|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | yes | yes |
viewtrace_id: 0xe0afbdf6fe9d16337aba7d0c81ba6e9e2062fb7abc4c76e442def14eb60d24e3
call_targets:
0x0000000000000000000000000000000000000004, 0x69a070b0ab429b6c07d87dec3be1d4c8a51b94e7
target_varies:
yes
classification:
target_varies
validation_json{
"sink": "CALL",
"errors": 0,
"status": "confirmed",
"attempts": 1,
"trace_id": "0xe0afbdf6fe9d16337aba7d0c81ba6e9e2062fb7abc4c76e442def14eb60d24e3",
"confirmed": true,
"trace_mode": "callTracer",
"call_targets": [
"0x0000000000000000000000000000000000000004",
"0x69a070b0ab429b6c07d87dec3be1d4c8a51b94e7"
],
"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": "0x06fdde03",
"selector": "0x06fdde03",
"calldata_variants": [
"0x06fdde03",
"0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x095ea7b3",
"selector": "0x095ea7b3",
"calldata_variants": [
"0x095ea7b3",
"0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x171f34a6",
"selector": "0x171f34a6",
"calldata_variants": [
"0x171f34a6",
"0x171f34a60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1720ea55",
"selector": "0x1720ea55",
"calldata_variants": [
"0x1720ea55",
"0x1720ea550000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x18160ddd",
"selector": "0x18160ddd",
"calldata_variants": [
"0x18160ddd",
"0x18160ddd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x23b872dd",
"selector": "0x23b872dd",
"calldata_variants": [
"0x23b872dd",
"0x23b872dd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x313ce567",
"selector": "0x313ce567",
"calldata_variants": [
"0x313ce567",
"0x313ce5670000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x354dace2",
"selector": "0x354dace2",
"calldata_variants": [
"0x354dace2",
"0x354dace20000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 368,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 817,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1113,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 8,
"guards_detected": [
{
"pc": 3113,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
],
"untrusted_call_count": 8
}
|
| medium | other | detector | ETH value transfer possible | 40 | yes | yes |
viewtrace_id: 0xe0afbdf6fe9d16337aba7d0c81ba6e9e2062fb7abc4c76e442def14eb60d24e3
call_targets:
0x0000000000000000000000000000000000000004, 0x69a070b0ab429b6c07d87dec3be1d4c8a51b94e7
target_varies:
yes
classification:
target_varies
validation_json{
"sink": "CALL",
"errors": 0,
"status": "confirmed",
"attempts": 1,
"trace_id": "0xe0afbdf6fe9d16337aba7d0c81ba6e9e2062fb7abc4c76e442def14eb60d24e3",
"confirmed": true,
"trace_mode": "callTracer",
"call_targets": [
"0x0000000000000000000000000000000000000004",
"0x69a070b0ab429b6c07d87dec3be1d4c8a51b94e7"
],
"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": "0x06fdde03",
"selector": "0x06fdde03",
"calldata_variants": [
"0x06fdde03",
"0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x095ea7b3",
"selector": "0x095ea7b3",
"calldata_variants": [
"0x095ea7b3",
"0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x171f34a6",
"selector": "0x171f34a6",
"calldata_variants": [
"0x171f34a6",
"0x171f34a60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1720ea55",
"selector": "0x1720ea55",
"calldata_variants": [
"0x1720ea55",
"0x1720ea550000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x18160ddd",
"selector": "0x18160ddd",
"calldata_variants": [
"0x18160ddd",
"0x18160ddd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x23b872dd",
"selector": "0x23b872dd",
"calldata_variants": [
"0x23b872dd",
"0x23b872dd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x313ce567",
"selector": "0x313ce567",
"calldata_variants": [
"0x313ce567",
"0x313ce5670000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x354dace2",
"selector": "0x354dace2",
"calldata_variants": [
"0x354dace2",
"0x354dace20000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 368,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 817,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1113,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 8,
"guards_detected": [
{
"pc": 3113,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
]
}
|