beff50ed-8a5d-4ecb-b02d-15eda8a9cea4
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 |
|---|---|---|---|---|
| 31347 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 111080 | artifact.fetch | failed | 1 / 3 | 1 week ago |
| 111081 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 111082 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 111083 | capability.graph | complete | 1 / 3 | 1 week ago |
| 111084 | detector.run | complete | 1 / 3 | 1 week ago |
| 111085 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:302547] OpenAI Codex v0.77.0 (research preview)
[codex:302547] --------
[codex:302547] workdir: /tmp/codex-multi-dzyg_r_b
[codex:302547] model: gpt-5.2-codex
[codex:302547] provider: openai
[codex:302547] approval: never
[codex:302547] sandbox: read-only
[codex:302547] reasoning effort: xhigh
[codex:302547] reasoning summaries: auto
[codex:302547] session id: 019b809d-8fbc-7210-b7da-1e990b5f4366
[codex:302547] --------
[codex:302547] user
[codex:302547] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:302547]
[codex:302547] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:302547]
[codex:302547] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:302547] - Gas inefficiency, code quality, naming, or best practices
[codex:302547] - Theoretical vulnerabilities without a clear extraction path
[codex:302547] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:302547] - Front-running unless it enables theft beyond MEV
[codex:302547] - DoS, griefing, or issues that don't result in attacker profit
[codex:302547] - Missing events, view function issues, or informational findings
[codex:302547]
[codex:302547] HIGH-VALUE PATTERNS TO HUNT:
[codex:302547] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:302547] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:302547] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:302547] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:302547] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:302547] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:302547] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:302547] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:302547] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:302547]
[codex:302547] For each finding, you MUST provide:
[codex:302547] 1. Exact file and line numbers of vulnerable code
[codex:302547] 2. Step-by-step exploit transaction sequence
[codex:302547] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:302547]
[codex:302547] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:302547]
[codex:302547] Output MUST be valid JSON matching the provided schema.
[codex:302547] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:302547] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:302547] mcp startup: no servers
[codex:302547]
[codex:302547] thinking
[codex:302547] **Preparing to audit file**
[codex:302547] exec
[codex:302547] /bin/bash -lc ls in /tmp/codex-multi-dzyg_r_b succeeded in 5ms:
[codex:302547] AUDIT_BUNDLE.txt
[codex:302547] codex-output-schema.json
[codex:302547] contracts
[codex:302547]
[codex:302547] thinking
[codex:302547] **Reading AUDIT_BUNDLE.txt**
[codex:302547] exec
[codex:302547] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-dzyg_r_b succeeded in 5ms:
[codex:302547] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:302547]
[codex:302547] ================================================================================
[codex:302547] FILE: contracts/Contract.sol
[codex:302547] ================================================================================
[codex:302547] pragma solidity ^0.4.21;
[codex:302547]
[codex:302547] // File: openzeppelin-solidity/contracts/math/SafeMath.sol
[codex:302547]
[codex:302547] /**
[codex:302547] * @title SafeMath
[codex:302547] * @dev Math operations with safety checks that throw on error
[codex:302547] */
[codex:302547] library SafeMath {
[codex:302547]
[codex:302547] /**
[codex:302547] * @dev Multiplies two numbers, throws on overflow.
[codex:302547] */
[codex:302547] function mul(uint256 a, uint256 b) internal pure returns (uint256 c) {
[codex:302547] if (a == 0) {
[codex:302547]
[codex:302547] thinking
[codex:302547] **Analyzing contract for exploit paths**
[codex:302547]
[codex:302547] I'm carefully examining the refund and reset functions, considering reentrancy, access controls, and potential manipulation of balances. The refund can be triggered by anyone but refunds only to the original sender, yielding no direct profit. Even complex reentrancy scenarios appear to preserve state consistency without exploitable gain. Checking edge cases like transfers to zero address or forced Ether sending also reveals no immediate vulnerabilities. Overall, no concrete exploit paths or profit opportunities stand out. I'll compile a JSON response noting no findings.
[codex:302547] codex
[codex:302547] {"no_findings":true,"summary":"No concrete, exploitable profit extraction paths found after reviewing AUDIT_BUNDLE.txt.","findings":[]}
[codex:302547] tokens used
[codex:302547] 6,771
[codex:302547] {"no_findings":true,"summary":"No concrete, exploitable profit extraction paths found after reviewing AUDIT_BUNDLE.txt.","findings":[]}
{
"codex": {
"ran_at": "2026-01-02T21:30:21.321562+00:00",
"returncode": 0
},
"summary": "No concrete, exploitable profit extraction paths found after reviewing AUDIT_BUNDLE.txt.",
"raw_final": {
"summary": "No concrete, exploitable profit extraction paths found after reviewing AUDIT_BUNDLE.txt.",
"findings": [],
"no_findings": true
},
"no_findings": true,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: PUSH2 0x00fc 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 0000002e: SWAP1 0000002f: DIV 00000030: PUSH4 0xffffffff 00000035: AND 00000036: DUP1 00000037: PUSH4 0x0ef845df 0000003c: EQ 0000003d: PUSH2 0x0101 00000040: JUMPI 00000041: DUP1 00000042: PUSH4 0x0fb5a6b4 00000047: EQ 00000048: PUSH2 0x02bd 0000004b: JUMPI 0000004c: DUP1 0000004d: PUSH4 0x146ca531 00000052: EQ 00000053: PUSH2 0x02e8 00000056: JUMPI 00000057: DUP1 00000058: PUSH4 0x38af3eed 0000005d: EQ 0000005e: PUSH2 0x0313 00000061: JUMPI 00000062: DUP1 00000063: PUSH4 0x3f19d043 00000068: EQ 00000069: PUSH2 0x036a 0000006c: JUMPI 0000006d: DUP1 0000006e: PUSH4 0x41c0e1b5 00000073: EQ 00000074: PUSH2 0x03c1 00000077: JUMPI 00000078: DUP1 00000079: PUSH4 0x51dc78df 0000007e: EQ 0000007f: PUSH2 0x03d8 00000082: JUMPI 00000083: DUP1 00000084: PUSH4 0x68ec0d99 00000089: EQ 0000008a: PUSH2 0x0419 0000008d: JUMPI 0000008e: DUP1 0000008f: PUSH4 0x752430df 00000094: EQ 00000095: PUSH2 0x0470 00000098: JUMPI 00000099: DUP1 0000009a: PUSH4 0x78e97925 0000009f: EQ 000000a0: PUSH2 0x0735 000000a3: JUMPI 000000a4: DUP1 000000a5: PUSH4 0x8da5cb5b 000000aa: EQ 000000ab: PUSH2 0x0760 000000ae: JUMPI 000000af: DUP1 000000b0: PUSH4 0xa6801cbd 000000b5: EQ 000000b6: PUSH2 0x07b7 000000b9: JUMPI 000000ba: DUP1 000000bb: PUSH4 0xc4d66de8 000000c0: EQ 000000c1: PUSH2 0x07f8 000000c4: JUMPI 000000c5: DUP1 000000c6: PUSH4 0xc50c0d78 000000cb: EQ 000000cc: PUSH2 0x083b 000000cf: JUMPI 000000d0: DUP1 000000d1: PUSH4 0xf2fde38b 000000d6: EQ 000000d7: PUSH2 0x08cc 000000da: JUMPI 000000db: DUP1 000000dc: PUSH4 0xf54a2ddc 000000e1: EQ 000000e2: PUSH2 0x090f 000000e5: JUMPI 000000e6: DUP1 000000e7: PUSH4 0xfa89401a 000000ec: EQ 000000ed: PUSH2 0x095c 000000f0: JUMPI 000000f1: DUP1 000000f2: PUSH4 0xfb86a404 000000f7: EQ 000000f8: PUSH2 0x099f 000000fb: JUMPI 000000fc: JUMPDEST 000000fd: PUSH1 0x00 000000ff: DUP1 00000100: REVERT 00000101: JUMPDEST 00000102: PUSH2 0x02bb 00000105: PUSH1 0x04 00000107: DUP1 00000108: CALLDATASIZE 00000109: SUB 0000010a: DUP2 0000010b: ADD 0000010c: SWAP1 0000010d: DUP1 0000010e: DUP1 0000010f: CALLDATALOAD 00000110: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000125: AND 00000126: SWAP1 00000127: PUSH1 0x20 00000129: ADD 0000012a: SWAP1 0000012b: SWAP3 0000012c: SWAP2 0000012d: SWAP1 0000012e: DUP1 0000012f: CALLDATALOAD 00000130: SWAP1 00000131: PUSH1 0x20 00000133: ADD 00000134: SWAP1 00000135: DUP3 00000136: ADD 00000137: DUP1 00000138: CALLDATALOAD 00000139: SWAP1 0000013a: PUSH1 0x20 0000013c: ADD 0000013d: SWAP1 0000013e: DUP1 0000013f: DUP1 00000140: PUSH1 0x1f 00000142: ADD 00000143: PUSH1 0x20 00000145: DUP1 00000146: SWAP2 00000147: DIV 00000148: MUL 00000149: PUSH1 0x20 0000014b: ADD 0000014c: PUSH1 0x40 0000014e: MLOAD 0000014f: SWAP1 00000150: DUP2 00000151: ADD 00000152: PUSH1 0x40 00000154: MSTORE 00000155: DUP1 00000156: SWAP4 00000157: SWAP3 00000158: SWAP2 00000159: SWAP1 0000015a: DUP2 0000015b: DUP2 0000015c: MSTORE 0000015d: PUSH1 0x20 0000015f: ADD 00000160: DUP4 00000161: DUP4 00000162: DUP1 00000163: DUP3 00000164: DUP5 00000165: CALLDATACOPY 00000166: DUP3 00000167: ADD 00000168: SWAP2 00000169: POP 0000016a: POP 0000016b: POP 0000016c: POP 0000016d: POP 0000016e: POP 0000016f: SWAP2 00000170: SWAP3 00000171: SWAP2 00000172: SWAP3 00000173: SWAP1 00000174: DUP1 00000175: CALLDATALOAD 00000176: SWAP1 00000177: PUSH1 0x20 00000179: ADD 0000017a: SWAP1 0000017b: DUP3 0000017c: ADD 0000017d: DUP1 0000017e: CALLDATALOAD 0000017f: SWAP1 00000180: PUSH1 0x20 00000182: ADD 00000183: SWAP1 00000184: DUP1 00000185: DUP1 00000186: PUSH1 0x1f 00000188: ADD 00000189: PUSH1 0x20 0000018b: DUP1 0000018c: SWAP2 0000018d: DIV 0000018e: MUL 0000018f: PUSH1 0x20 00000191: ADD 00000192: PUSH1 0x40 00000194: MLOAD 00000195: SWAP1 00000196: DUP2 00000197: ADD 00000198: PUSH1 0x40 0000019a: MSTORE 0000019b: DUP1 0000019c: SWAP4 0000019d: SWAP3 0000019e: SWAP2 0000019f: SWAP1 000001a0: DUP2 000001a1: DUP2 000001a2: MSTORE 000001a3: PUSH1 0x20 000001a5: ADD 000001a6: DUP4 000001a7: DUP4 000001a8: DUP1 000001a9: DUP3 000001aa: DUP5 000001ab: CALLDATACOPY 000001ac: DUP3 000001ad: ADD 000001ae: SWAP2 000001af: POP 000001b0: POP 000001b1: POP 000001b2: POP 000001b3: POP 000001b4: POP 000001b5: SWAP2 000001b6: SWAP3 000001b7: SWAP2 000001b8: SWAP3 000001b9: SWAP1 000001ba: DUP1 000001bb: CALLDATALOAD 000001bc: SWAP1 000001bd: PUSH1 0x20 000001bf: ADD 000001c0: SWAP1 000001c1: DUP3 000001c2: ADD 000001c3: DUP1 000001c4: CALLDATALOAD 000001c5: SWAP1 000001c6: PUSH1 0x20 000001c8: ADD 000001c9: SWAP1 000001ca: DUP1 000001cb: DUP1 000001cc: PUSH1 0x1f 000001ce: ADD 000001cf: PUSH1 0x20 000001d1: DUP1 000001d2: SWAP2 000001d3: DIV 000001d4: MUL 000001d5: PUSH1 0x20 000001d7: ADD 000001d8: PUSH1 0x40 000001da: MLOAD 000001db: SWAP1 000001dc: DUP2 000001dd: ADD 000001de: PUSH1 0x40 000001e0: MSTORE 000001e1: DUP1 000001e2: SWAP4 000001e3: SWAP3 000001e4: SWAP2 000001e5: SWAP1 000001e6: DUP2 000001e7: DUP2 000001e8: MSTORE 000001e9: PUSH1 0x20 000001eb: ADD 000001ec: DUP4 000001ed: DUP4 000001ee: DUP1 000001ef: DUP3 000001f0: DUP5 000001f1: CALLDATACOPY 000001f2: DUP3 000001f3: ADD 000001f4: SWAP2 000001f5: POP 000001f6: POP 000001f7: POP 000001f8: POP 000001f9: POP 000001fa: POP 000001fb: SWAP2 000001fc: SWAP3 000001fd: SWAP2 000001fe: SWAP3 000001ff: SWAP1 00000200: DUP1 00000201: CALLDATALOAD 00000202: SWAP1 00000203: PUSH1 0x20 00000205: ADD 00000206: SWAP1 00000207: DUP3 00000208: ADD 00000209: DUP1 0000020a: CALLDATALOAD 0000020b: SWAP1 0000020c: PUSH1 0x20 0000020e: ADD 0000020f: SWAP1 00000210: DUP1 00000211: DUP1 00000212: PUSH1 0x1f 00000214: ADD 00000215: PUSH1 0x20 00000217: DUP1 00000218: SWAP2 00000219: DIV 0000021a: MUL 0000021b: PUSH1 0x20 0000021d: ADD 0000021e: PUSH1 0x40 00000220: MLOAD 00000221: SWAP1 00000222: DUP2 00000223: ADD 00000224: PUSH1 0x40 00000226: MSTORE 00000227: DUP1 00000228: SWAP4 00000229: SWAP3 0000022a: SWAP2 0000022b: SWAP1 0000022c: DUP2 0000022d: DUP2 0000022e: MSTORE 0000022f: PUSH1 0x20 00000231: ADD 00000232: DUP4 00000233: DUP4 00000234: DUP1 00000235: DUP3 00000236: DUP5 00000237: CALLDATACOPY 00000238: DUP3 00000239: ADD 0000023a: SWAP2 0000023b: POP 0000023c: POP 0000023d: POP 0000023e: POP 0000023f: POP 00000240: POP 00000241: SWAP2 00000242: SWAP3 00000243: SWAP2 00000244: SWAP3 00000245: SWAP1 00000246: DUP1 00000247: CALLDATALOAD 00000248: SWAP1 00000249: PUSH1 0x20 0000024b: ADD 0000024c: SWAP1 0000024d: DUP3 0000024e: ADD 0000024f: DUP1 00000250: CALLDATALOAD 00000251: SWAP1 00000252: PUSH1 0x20 00000254: ADD 00000255: SWAP1 00000256: DUP1 00000257: DUP1 00000258: PUSH1 0x1f 0000025a: ADD 0000025b: PUSH1 0x20 0000025d: DUP1 0000025e: SWAP2 0000025f: DIV 00000260: MUL 00000261: PUSH1 0x20 00000263: ADD 00000264: PUSH1 0x40 00000266: MLOAD 00000267: SWAP1 00000268: DUP2 00000269: ADD 0000026a: PUSH1 0x40 0000026c: MSTORE 0000026d: DUP1 0000026e: SWAP4 0000026f: SWAP3 00000270: SWAP2 00000271: SWAP1 00000272: DUP2 00000273: DUP2 00000274: MSTORE 00000275: PUSH1 0x20 00000277: ADD 00000278: DUP4 00000279: DUP4 0000027a: DUP1 0000027b: DUP3 0000027c: DUP5 0000027d: CALLDATACOPY 0000027e: DUP3 0000027f: ADD 00000280: SWAP2 00000281: POP 00000282: POP 00000283: POP 00000284: POP 00000285: POP 00000286: POP 00000287: SWAP2 00000288: SWAP3 00000289: SWAP2 0000028a: SWAP3 0000028b: SWAP1 0000028c: DUP1 0000028d: CALLDATALOAD 0000028e: SWAP1 0000028f: PUSH1 0x20 00000291: ADD 00000292: SWAP1 00000293: SWAP3 00000294: SWAP2 00000295: SWAP1 00000296: DUP1 00000297: CALLDATALOAD 00000298: SWAP1 00000299: PUSH1 0x20 0000029b: ADD 0000029c: SWAP1 0000029d: SWAP3 0000029e: SWAP2 0000029f: SWAP1 000002a0: DUP1 000002a1: CALLDATALOAD 000002a2: SWAP1 000002a3: PUSH1 0x20 000002a5: ADD 000002a6: SWAP1 000002a7: SWAP3 000002a8: SWAP2 000002a9: SWAP1 000002aa: DUP1 000002ab: CALLDATALOAD 000002ac: SWAP1 000002ad: PUSH1 0x20 000002af: ADD 000002b0: SWAP1 000002b1: SWAP3 000002b2: SWAP2 000002b3: SWAP1 000002b4: POP 000002b5: POP 000002b6: POP 000002b7: PUSH2 0x09ca 000002ba: JUMP 000002bb: JUMPDEST 000002bc: STOP 000002bd: JUMPDEST 000002be: CALLVALUE 000002bf: DUP1 000002c0: ISZERO 000002c1: PUSH2 0x02c9 000002c4: JUMPI 000002c5: PUSH1 0x00 000002c7: DUP1 000002c8: REVERT 000002c9: JUMPDEST 000002ca: POP 000002cb: PUSH2 0x02d2 000002ce: PUSH2 0x0d7f 000002d1: JUMP 000002d2: JUMPDEST 000002d3: PUSH1 0x40 000002d5: MLOAD 000002d6: DUP1 000002d7: DUP3 000002d8: DUP2 000002d9: MSTORE 000002da: PUSH1 0x20 000002dc: ADD 000002dd: SWAP2 000002de: POP 000002df: POP 000002e0: PUSH1 0x40 000002e2: MLOAD 000002e3: DUP1 000002e4: SWAP2 000002e5: SUB 000002e6: SWAP1 000002e7: RETURN 000002e8: JUMPDEST 000002e9: CALLVALUE 000002ea: DUP1 000002eb: ISZERO 000002ec: PUSH2 0x02f4 000002ef: JUMPI 000002f0: PUSH1 0x00 000002f2: DUP1 000002f3: REVERT 000002f4: JUMPDEST 000002f5: POP 000002f6: PUSH2 0x02fd 000002f9: PUSH2 0x0d85 000002fc: JUMP 000002fd: JUMPDEST 000002fe: PUSH1 0x40 00000300: MLOAD 00000301: DUP1 00000302: DUP3 00000303: DUP2 00000304: MSTORE 00000305: PUSH1 0x20 00000307: ADD 00000308: SWAP2 00000309: POP 0000030a: POP 0000030b: PUSH1 0x40 0000030d: MLOAD 0000030e: DUP1 0000030f: SWAP2 00000310: SUB 00000311: SWAP1 00000312: RETURN 00000313: JUMPDEST 00000314: CALLVALUE 00000315: DUP1 00000316: ISZERO 00000317: PUSH2 0x031f 0000031a: JUMPI 0000031b: PUSH1 0x00 0000031d: DUP1 0000031e: REVERT 0000031f: JUMPDEST 00000320: POP 00000321: PUSH2 0x0328 00000324: PUSH2 0x0d8b 00000327: JUMP 00000328: JUMPDEST 00000329: PUSH1 0x40 0000032b: MLOAD 0000032c: DUP1 0000032d: DUP3 0000032e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000343: AND 00000344: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000359: AND 0000035a: DUP2 0000035b: MSTORE 0000035c: PUSH1 0x20 0000035e: ADD 0000035f: SWAP2 00000360: POP 00000361: POP 00000362: PUSH1 0x40 00000364: MLOAD 00000365: DUP1 00000366: SWAP2 00000367: SUB 00000368: SWAP1 00000369: RETURN 0000036a: JUMPDEST 0000036b: CALLVALUE 0000036c: DUP1 0000036d: ISZERO 0000036e: PUSH2 0x0376 00000371: JUMPI 00000372: PUSH1 0x00 00000374: DUP1 00000375: REVERT 00000376: JUMPDEST 00000377: POP 00000378: PUSH2 0x03ab 0000037b: PUSH1 0x04 0000037d: DUP1 0000037e: CALLDATASIZE 0000037f: SUB 00000380: DUP2 00000381: ADD 00000382: SWAP1 00000383: DUP1 00000384: DUP1 00000385: CALLDATALOAD 00000386: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000039b: AND 0000039c: SWAP1 0000039d: PUSH1 0x20 0000039f: ADD 000003a0: SWAP1 000003a1: SWAP3 000003a2: SWAP2 000003a3: SWAP1 000003a4: POP 000003a5: POP 000003a6: POP 000003a7: PUSH2 0x0db1 000003aa: JUMP 000003ab: JUMPDEST 000003ac: PUSH1 0x40 000003ae: MLOAD 000003af: DUP1 000003b0: DUP3 000003b1: DUP2 000003b2: MSTORE 000003b3: PUSH1 0x20 000003b5: ADD 000003b6: SWAP2 000003b7: POP 000003b8: POP 000003b9: PUSH1 0x40 000003bb: MLOAD 000003bc: DUP1 000003bd: SWAP2 000003be: SUB 000003bf: SWAP1 000003c0: RETURN 000003c1: JUMPDEST 000003c2: CALLVALUE 000003c3: DUP1 000003c4: ISZERO 000003c5: PUSH2 0x03cd 000003c8: JUMPI 000003c9: PUSH1 0x00 000003cb: DUP1 000003cc: REVERT 000003cd: JUMPDEST 000003ce: POP 000003cf: PUSH2 0x03d6 000003d2: PUSH2 0x0dfd 000003d5: JUMP 000003d6: JUMPDEST 000003d7: STOP 000003d8: JUMPDEST 000003d9: CALLVALUE 000003da: DUP1 000003db: ISZERO 000003dc: PUSH2 0x03e4 000003df: JUMPI 000003e0: PUSH1 0x00 000003e2: DUP1 000003e3: REVERT 000003e4: JUMPDEST 000003e5: POP 000003e6: PUSH2 0x0403 000003e9: PUSH1 0x04 000003eb: DUP1 000003ec: CALLDATASIZE 000003ed: SUB 000003ee: DUP2 000003ef: ADD 000003f0: SWAP1 000003f1: DUP1 000003f2: DUP1 000003f3: CALLDATALOAD 000003f4: SWAP1 000003f5: PUSH1 0x20 000003f7: ADD 000003f8: SWAP1 000003f9: SWAP3 000003fa: SWAP2 000003fb: SWAP1 000003fc: POP 000003fd: POP 000003fe: POP 000003ff: PUSH2 0x0e93 00000402: JUMP 00000403: JUMPDEST 00000404: PUSH1 0x40 00000406: MLOAD 00000407: DUP1 00000408: DUP3 00000409: DUP2 0000040a: MSTORE 0000040b: PUSH1 0x20 0000040d: ADD 0000040e: SWAP2 0000040f: POP 00000410: POP 00000411: PUSH1 0x40 00000413: MLOAD 00000414: DUP1 00000415: SWAP2 00000416: SUB 00000417: SWAP1 00000418: RETURN 00000419: JUMPDEST 0000041a: CALLVALUE 0000041b: DUP1 0000041c: ISZERO 0000041d: PUSH2 0x0425 00000420: JUMPI 00000421: PUSH1 0x00 00000423: DUP1 00000424: REVERT 00000425: JUMPDEST 00000426: POP 00000427: PUSH2 0x045a 0000042a: PUSH1 0x04 0000042c: DUP1 0000042d: CALLDATASIZE 0000042e: SUB 0000042f: DUP2 00000430: ADD 00000431: SWAP1 00000432: DUP1 00000433: DUP1 00000434: CALLDATALOAD 00000435: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000044a: AND 0000044b: SWAP1 0000044c: PUSH1 0x20 0000044e: ADD 0000044f: SWAP1 00000450: SWAP3 00000451: SWAP2 00000452: SWAP1 00000453: POP 00000454: POP 00000455: POP 00000456: PUSH2 0x0eab 00000459: JUMP 0000045a: JUMPDEST 0000045b: PUSH1 0x40 0000045d: MLOAD 0000045e: DUP1 0000045f: DUP3 00000460: DUP2 00000461: MSTORE 00000462: PUSH1 0x20 00000464: ADD 00000465: SWAP2 00000466: POP 00000467: POP 00000468: PUSH1 0x40 0000046a: MLOAD 0000046b: DUP1 0000046c: SWAP2 0000046d: SUB 0000046e: SWAP1 0000046f: RETURN 00000470: JUMPDEST 00000471: CALLVALUE 00000472: DUP1 00000473: ISZERO 00000474: PUSH2 0x047c 00000477: JUMPI 00000478: PUSH1 0x00 0000047a: DUP1 0000047b: REVERT 0000047c: JUMPDEST 0000047d: POP 0000047e: PUSH2 0x04bb 00000481: PUSH1 0x04 00000483: DUP1 00000484: CALLDATASIZE 00000485: SUB 00000486: DUP2 00000487: ADD 00000488: SWAP1 00000489: DUP1 0000048a: DUP1 0000048b: CALLDATALOAD 0000048c: SWAP1 0000048d: PUSH1 0x20 0000048f: ADD 00000490: SWAP1 00000491: SWAP3 00000492: SWAP2 00000493: SWAP1 00000494: DUP1 00000495: CALLDATALOAD 00000496: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000004ab: AND 000004ac: SWAP1 000004ad: PUSH1 0x20 000004af: ADD 000004b0: SWAP1 000004b1: SWAP3 000004b2: SWAP2 000004b3: SWAP1 000004b4: POP 000004b5: POP 000004b6: POP 000004b7: PUSH2 0x0ec3 000004ba: JUMP 000004bb: JUMPDEST 000004bc: PUSH1 0x40 000004be: MLOAD 000004bf: DUP1 000004c0: DUP12 000004c1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000004d6: AND 000004d7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000004ec: AND 000004ed: DUP2 000004ee: MSTORE 000004ef: PUSH1 0x20 000004f1: ADD 000004f2: DUP1 000004f3: PUSH1 0x20 000004f5: ADD 000004f6: DUP1 000004f7: PUSH1 0x20 000004f9: ADD 000004fa: DUP1 000004fb: PUSH1 0x20 000004fd: ADD 000004fe: DUP1 000004ff: PUSH1 0x20 00000501: ADD 00000502: DUP1 00000503: PUSH1 0x20 00000505: ADD 00000506: DUP11 00000507: DUP2 00000508: MSTORE 00000509: PUSH1 0x20 0000050b: ADD 0000050c: DUP10 0000050d: DUP2 0000050e: MSTORE 0000050f: PUSH1 0x20 00000511: ADD 00000512: DUP9 00000513: DUP2 00000514: MSTORE 00000515: PUSH1 0x20 00000517: ADD 00000518: DUP8 00000519: DUP2 0000051a: MSTORE 0000051b: PUSH1 0x20 0000051d: ADD 0000051e: DUP7 0000051f: DUP2 00000520: SUB 00000521: DUP7 00000522: MSTORE 00000523: DUP16 00000524: DUP2 00000525: DUP2 00000526: MLOAD 00000527: DUP2 00000528: MSTORE 00000529: PUSH1 0x20 0000052b: ADD 0000052c: SWAP2 0000052d: POP 0000052e: DUP1 0000052f: MLOAD 00000530: SWAP1 00000531: PUSH1 0x20 00000533: ADD 00000534: SWAP1 00000535: DUP1 00000536: DUP4 00000537: DUP4 00000538: PUSH1 0x00 0000053a: JUMPDEST 0000053b: DUP4 0000053c: DUP2 0000053d: LT 0000053e: ISZERO 0000053f: PUSH2 0x0555 00000542: JUMPI 00000543: DUP1 00000544: DUP3 00000545: ADD 00000546: MLOAD 00000547: DUP2 00000548: DUP5 00000549: ADD 0000054a: MSTORE 0000054b: PUSH1 0x20 0000054d: DUP2 0000054e: ADD 0000054f: SWAP1 00000550: POP 00000551: PUSH2 0x053a 00000554: JUMP 00000555: JUMPDEST 00000556: POP 00000557: POP 00000558: POP 00000559: POP 0000055a: SWAP1 0000055b: POP 0000055c: SWAP1 0000055d: DUP2 0000055e: ADD 0000055f: SWAP1 00000560: PUSH1 0x1f 00000562: AND 00000563: DUP1 00000564: ISZERO 00000565: PUSH2 0x0582 00000568: JUMPI 00000569: DUP1 0000056a: DUP3 0000056b: SUB 0000056c: DUP1 0000056d: MLOAD 0000056e: PUSH1 0x01 00000570: DUP4 00000571: PUSH1 0x20 00000573: SUB 00000574: PUSH2 0x0100 00000577: EXP 00000578: SUB 00000579: NOT 0000057a: AND 0000057b: DUP2 0000057c: MSTORE 0000057d: PUSH1 0x20 0000057f: ADD 00000580: SWAP2 00000581: POP 00000582: JUMPDEST 00000583: POP 00000584: DUP7 00000585: DUP2 00000586: SUB 00000587: DUP6 00000588: MSTORE 00000589: DUP15 0000058a: DUP2 0000058b: DUP2 0000058c: MLOAD 0000058d: DUP2 0000058e: MSTORE 0000058f: PUSH1 0x20 00000591: ADD 00000592: SWAP2 00000593: POP 00000594: DUP1 00000595: MLOAD 00000596: SWAP1 00000597: PUSH1 0x20 00000599: ADD 0000059a: SWAP1 0000059b: DUP1 0000059c: DUP4 0000059d: DUP4 0000059e: PUSH1 0x00 000005a0: JUMPDEST 000005a1: DUP4 000005a2: DUP2 000005a3: LT 000005a4: ISZERO 000005a5: PUSH2 0x05bb 000005a8: JUMPI 000005a9: DUP1 000005aa: DUP3 000005ab: ADD 000005ac: MLOAD 000005ad: DUP2 000005ae: DUP5 000005af: ADD 000005b0: MSTORE 000005b1: PUSH1 0x20 000005b3: DUP2 000005b4: ADD 000005b5: SWAP1 000005b6: POP 000005b7: PUSH2 0x05a0 000005ba: JUMP 000005bb: JUMPDEST 000005bc: POP 000005bd: POP 000005be: POP 000005bf: POP 000005c0: SWAP1 000005c1: POP 000005c2: SWAP1 000005c3: DUP2 000005c4: ADD 000005c5: SWAP1 000005c6: PUSH1 0x1f 000005c8: AND 000005c9: DUP1 000005ca: ISZERO 000005cb: PUSH2 0x05e8 000005ce: JUMPI 000005cf: DUP1 000005d0: DUP3 000005d1: SUB 000005d2: DUP1 000005d3: MLOAD 000005d4: PUSH1 0x01 000005d6: DUP4 000005d7: PUSH1 0x20 000005d9: SUB 000005da: PUSH2 0x0100 000005dd: EXP 000005de: SUB 000005df: NOT 000005e0: AND 000005e1: DUP2 000005e2: MSTORE 000005e3: PUSH1 0x20 000005e5: ADD 000005e6: SWAP2 000005e7: POP 000005e8: JUMPDEST 000005e9: POP 000005ea: DUP7 000005eb: DUP2 000005ec: SUB 000005ed: DUP5 000005ee: MSTORE 000005ef: DUP14 000005f0: DUP2 000005f1: DUP2 000005f2: MLOAD 000005f3: DUP2 000005f4: MSTORE 000005f5: PUSH1 0x20 000005f7: ADD 000005f8: SWAP2 000005f9: POP 000005fa: DUP1 000005fb: MLOAD 000005fc: SWAP1 000005fd: PUSH1 0x20 000005ff: ADD 00000600: SWAP1 00000601: DUP1 00000602: DUP4 00000603: DUP4 00000604: PUSH1 0x00 00000606: JUMPDEST 00000607: DUP4 00000608: DUP2 00000609: LT 0000060a: ISZERO 0000060b: PUSH2 0x0621 0000060e: JUMPI 0000060f: DUP1 00000610: DUP3 00000611: ADD 00000612: MLOAD 00000613: DUP2 00000614: DUP5 00000615: ADD 00000616: MSTORE 00000617: PUSH1 0x20 00000619: DUP2 0000061a: ADD 0000061b: SWAP1 0000061c: POP 0000061d: PUSH2 0x0606 00000620: JUMP 00000621: JUMPDEST 00000622: POP 00000623: POP 00000624: POP 00000625: POP 00000626: SWAP1 00000627: POP 00000628: SWAP1 00000629: DUP2 0000062a: ADD 0000062b: SWAP1 0000062c: PUSH1 0x1f 0000062e: AND 0000062f: DUP1 00000630: ISZERO 00000631: PUSH2 0x064e 00000634: JUMPI 00000635: DUP1 00000636: DUP3 00000637: SUB 00000638: DUP1 00000639: MLOAD 0000063a: PUSH1 0x01 0000063c: DUP4 0000063d: PUSH1 0x20 0000063f: SUB 00000640: PUSH2 0x0100 00000643: EXP 00000644: SUB 00000645: NOT 00000646: AND 00000647: DUP2 00000648: MSTORE 00000649: PUSH1 0x20 0000064b: ADD 0000064c: SWAP2 0000064d: POP 0000064e: JUMPDEST 0000064f: POP 00000650: DUP7 00000651: DUP2 00000652: SUB 00000653: DUP4 00000654: MSTORE 00000655: DUP13 00000656: DUP2 00000657: DUP2 00000658: MLOAD 00000659: DUP2 0000065a: MSTORE 0000065b: PUSH1 0x20 0000065d: ADD 0000065e: SWAP2 0000065f: POP 00000660: DUP1 00000661: MLOAD 00000662: SWAP1 00000663: PUSH1 0x20 00000665: ADD 00000666: SWAP1 00000667: DUP1 00000668: DUP4 00000669: DUP4 0000066a: PUSH1 0x00 0000066c: JUMPDEST 0000066d: DUP4 0000066e: DUP2 0000066f: LT 00000670: ISZERO 00000671: PUSH2 0x0687 00000674: JUMPI 00000675: DUP1 00000676: DUP3 00000677: ADD 00000678: MLOAD 00000679: DUP2 0000067a: DUP5 0000067b: ADD 0000067c: MSTORE 0000067d: PUSH1 0x20 0000067f: DUP2 00000680: ADD 00000681: SWAP1 00000682: POP 00000683: PUSH2 0x066c 00000686: JUMP 00000687: JUMPDEST 00000688: POP 00000689: POP 0000068a: POP 0000068b: POP 0000068c: SWAP1 0000068d: POP 0000068e: SWAP1 0000068f: DUP2 00000690: ADD 00000691: SWAP1 00000692: PUSH1 0x1f 00000694: AND 00000695: DUP1 00000696: ISZERO 00000697: PUSH2 0x06b4 0000069a: JUMPI 0000069b: DUP1 0000069c: DUP3 0000069d: SUB 0000069e: DUP1 0000069f: MLOAD 000006a0: PUSH1 0x01 000006a2: DUP4 000006a3: PUSH1 0x20 000006a5: SUB 000006a6: PUSH2 0x0100 000006a9: EXP 000006aa: SUB 000006ab: NOT 000006ac: AND 000006ad: DUP2 000006ae: MSTORE 000006af: PUSH1 0x20 000006b1: ADD 000006b2: SWAP2 000006b3: POP 000006b4: JUMPDEST 000006b5: POP 000006b6: DUP7 000006b7: DUP2 000006b8: SUB 000006b9: DUP3 000006ba: MSTORE 000006bb: DUP12 000006bc: DUP2 000006bd: DUP2 000006be: MLOAD 000006bf: DUP2 000006c0: MSTORE 000006c1: PUSH1 0x20 000006c3: ADD 000006c4: SWAP2 000006c5: POP 000006c6: DUP1 000006c7: MLOAD 000006c8: SWAP1 000006c9: PUSH1 0x20 000006cb: ADD 000006cc: SWAP1 000006cd: DUP1 000006ce: DUP4 000006cf: DUP4 000006d0: PUSH1 0x00 000006d2: JUMPDEST 000006d3: DUP4 000006d4: DUP2 000006d5: LT 000006d6: ISZERO 000006d7: PUSH2 0x06ed 000006da: JUMPI 000006db: DUP1 000006dc: DUP3 000006dd: ADD 000006de: MLOAD 000006df: DUP2 000006e0: DUP5 000006e1: ADD 000006e2: MSTORE 000006e3: PUSH1 0x20 000006e5: DUP2 000006e6: ADD 000006e7: SWAP1 000006e8: POP 000006e9: PUSH2 0x06d2 000006ec: JUMP 000006ed: JUMPDEST 000006ee: POP 000006ef: POP 000006f0: POP 000006f1: POP 000006f2: SWAP1 000006f3: POP 000006f4: SWAP1 000006f5: DUP2 000006f6: ADD 000006f7: SWAP1 000006f8: PUSH1 0x1f 000006fa: AND 000006fb: DUP1 000006fc: ISZERO 000006fd: PUSH2 0x071a 00000700: JUMPI 00000701: DUP1 00000702: DUP3 00000703: SUB 00000704: DUP1 00000705: MLOAD 00000706: PUSH1 0x01 00000708: DUP4 00000709: PUSH1 0x20 0000070b: SUB 0000070c: PUSH2 0x0100 0000070f: EXP 00000710: SUB 00000711: NOT 00000712: AND 00000713: DUP2 00000714: MSTORE 00000715: PUSH1 0x20 00000717: ADD 00000718: SWAP2 00000719: POP 0000071a: JUMPDEST 0000071b: POP 0000071c: SWAP16 0000071d: POP 0000071e: POP 0000071f: POP 00000720: POP 00000721: POP 00000722: POP 00000723: POP 00000724: POP 00000725: POP 00000726: POP 00000727: POP 00000728: POP 00000729: POP 0000072a: POP 0000072b: POP 0000072c: POP 0000072d: PUSH1 0x40 0000072f: MLOAD 00000730: DUP1 00000731: SWAP2 00000732: SUB 00000733: SWAP1 00000734: RETURN 00000735: JUMPDEST 00000736: CALLVALUE 00000737: DUP1 00000738: ISZERO 00000739: PUSH2 0x0741 0000073c: JUMPI 0000073d: PUSH1 0x00 0000073f: DUP1 00000740: REVERT 00000741: JUMPDEST 00000742: POP 00000743: PUSH2 0x074a 00000746: PUSH2 0x123c 00000749: JUMP 0000074a: JUMPDEST 0000074b: PUSH1 0x40 0000074d: MLOAD 0000074e: DUP1 0000074f: DUP3 00000750: DUP2 00000751: MSTORE 00000752: PUSH1 0x20 00000754: ADD 00000755: SWAP2 00000756: POP 00000757: POP 00000758: PUSH1 0x40 0000075a: MLOAD 0000075b: DUP1 0000075c: SWAP2 0000075d: SUB 0000075e: SWAP1 0000075f: RETURN 00000760: JUMPDEST 00000761: CALLVALUE 00000762: DUP1 00000763: ISZERO 00000764: PUSH2 0x076c 00000767: JUMPI 00000768: PUSH1 0x00 0000076a: DUP1 0000076b: REVERT 0000076c: JUMPDEST 0000076d: POP 0000076e: PUSH2 0x0775 00000771: PUSH2 0x1242 00000774: JUMP 00000775: JUMPDEST 00000776: PUSH1 0x40 00000778: MLOAD 00000779: DUP1 0000077a: DUP3 0000077b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000790: AND 00000791: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000007a6: AND 000007a7: DUP2 000007a8: MSTORE 000007a9: PUSH1 0x20 000007ab: ADD 000007ac: SWAP2 000007ad: POP 000007ae: POP 000007af: PUSH1 0x40 000007b1: MLOAD 000007b2: DUP1 000007b3: SWAP2 000007b4: SUB 000007b5: SWAP1 000007b6: RETURN 000007b7: JUMPDEST 000007b8: CALLVALUE 000007b9: DUP1 000007ba: ISZERO 000007bb: PUSH2 0x07c3 000007be: JUMPI 000007bf: PUSH1 0x00 000007c1: DUP1 000007c2: REVERT 000007c3: JUMPDEST 000007c4: POP 000007c5: PUSH2 0x07f6 000007c8: PUSH1 0x04 000007ca: DUP1 000007cb: CALLDATASIZE 000007cc: SUB 000007cd: DUP2 000007ce: ADD 000007cf: SWAP1 000007d0: DUP1 000007d1: DUP1 000007d2: CALLDATALOAD 000007d3: SWAP1 000007d4: PUSH1 0x20 000007d6: ADD 000007d7: SWAP1 000007d8: SWAP3 000007d9: SWAP2 000007da: SWAP1 000007db: DUP1 000007dc: CALLDATALOAD 000007dd: SWAP1 000007de: PUSH1 0x20 000007e0: ADD 000007e1: SWAP1 000007e2: SWAP3 000007e3: SWAP2 000007e4: SWAP1 000007e5: DUP1 000007e6: CALLDATALOAD 000007e7: SWAP1 000007e8: PUSH1 0x20 000007ea: ADD 000007eb: SWAP1 000007ec: SWAP3 000007ed: SWAP2 000007ee: SWAP1 000007ef: POP 000007f0: POP 000007f1: POP 000007f2: PUSH2 0x1267 000007f5: JUMP 000007f6: JUMPDEST 000007f7: STOP 000007f8: JUMPDEST 000007f9: CALLVALUE 000007fa: DUP1 000007fb: ISZERO 000007fc: PUSH2 0x0804 000007ff: JUMPI 00000800: PUSH1 0x00 00000802: DUP1 00000803: REVERT 00000804: JUMPDEST 00000805: POP 00000806: PUSH2 0x0839 00000809: PUSH1 0x04 0000080b: DUP1 0000080c: CALLDATASIZE 0000080d: SUB 0000080e: DUP2 0000080f: ADD 00000810: SWAP1 00000811: DUP1 00000812: DUP1 00000813: CALLDATALOAD 00000814: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000829: AND 0000082a: SWAP1 0000082b: PUSH1 0x20 0000082d: ADD 0000082e: SWAP1 0000082f: SWAP3 00000830: SWAP2 00000831: SWAP1 00000832: POP 00000833: POP 00000834: POP 00000835: PUSH2 0x13e4 00000838: JUMP 00000839: JUMPDEST 0000083a: STOP 0000083b: JUMPDEST 0000083c: CALLVALUE 0000083d: DUP1 0000083e: ISZERO 0000083f: PUSH2 0x0847 00000842: JUMPI 00000843: PUSH1 0x00 00000845: DUP1 00000846: REVERT 00000847: JUMPDEST 00000848: POP 00000849: PUSH2 0x087c 0000084c: PUSH1 0x04 0000084e: DUP1 0000084f: CALLDATASIZE 00000850: SUB 00000851: DUP2 00000852: ADD 00000853: SWAP1 00000854: DUP1 00000855: DUP1 00000856: CALLDATALOAD 00000857: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000086c: AND 0000086d: SWAP1 0000086e: PUSH1 0x20 00000870: ADD 00000871: SWAP1 00000872: SWAP3 00000873: SWAP2 00000874: SWAP1 00000875: POP 00000876: POP 00000877: POP 00000878: PUSH2 0x1483 0000087b: JUMP 0000087c: JUMPDEST 0000087d: PUSH1 0x40 0000087f: MLOAD 00000880: DUP1 00000881: DUP5 00000882: DUP2 00000883: MSTORE 00000884: PUSH1 0x20 00000886: ADD 00000887: DUP4 00000888: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000089d: AND 0000089e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000008b3: AND 000008b4: DUP2 000008b5: MSTORE 000008b6: PUSH1 0x20 000008b8: ADD 000008b9: DUP3 000008ba: DUP2 000008bb: MSTORE 000008bc: PUSH1 0x20 000008be: ADD 000008bf: SWAP4 000008c0: POP 000008c1: POP 000008c2: POP 000008c3: POP 000008c4: PUSH1 0x40 000008c6: MLOAD 000008c7: DUP1 000008c8: SWAP2 000008c9: SUB 000008ca: SWAP1 000008cb: RETURN 000008cc: JUMPDEST 000008cd: CALLVALUE 000008ce: DUP1 000008cf: ISZERO 000008d0: PUSH2 0x08d8 000008d3: JUMPI 000008d4: PUSH1 0x00 000008d6: DUP1 000008d7: REVERT 000008d8: JUMPDEST 000008d9: POP 000008da: PUSH2 0x090d 000008dd: PUSH1 0x04 000008df: DUP1 000008e0: CALLDATASIZE 000008e1: SUB 000008e2: DUP2 000008e3: ADD 000008e4: SWAP1 000008e5: DUP1 000008e6: DUP1 000008e7: CALLDATALOAD 000008e8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000008fd: AND 000008fe: SWAP1 000008ff: PUSH1 0x20 00000901: ADD 00000902: SWAP1 00000903: SWAP3 00000904: SWAP2 00000905: SWAP1 00000906: POP 00000907: POP 00000908: POP 00000909: PUSH2 0x14cd 0000090c: JUMP 0000090d: JUMPDEST 0000090e: STOP 0000090f: JUMPDEST 00000910: CALLVALUE 00000911: DUP1 00000912: ISZERO 00000913: PUSH2 0x091b 00000916: JUMPI 00000917: PUSH1 0x00 00000919: DUP1 0000091a: REVERT 0000091b: JUMPDEST 0000091c: POP 0000091d: PUSH2 0x095a 00000920: PUSH1 0x04 00000922: DUP1 00000923: CALLDATASIZE 00000924: SUB 00000925: DUP2 00000926: ADD 00000927: SWAP1 00000928: DUP1 00000929: DUP1 0000092a: CALLDATALOAD 0000092b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000940: AND 00000941: SWAP1 00000942: PUSH1 0x20 00000944: ADD 00000945: SWAP1 00000946: SWAP3 00000947: SWAP2 00000948: SWAP1 00000949: DUP1 0000094a: CALLDATALOAD 0000094b: SWAP1 0000094c: PUSH1 0x20 0000094e: ADD 0000094f: SWAP1 00000950: SWAP3 00000951: SWAP2 00000952: SWAP1 00000953: POP 00000954: POP 00000955: POP 00000956: PUSH2 0x1622 00000959: JUMP 0000095a: JUMPDEST 0000095b: STOP 0000095c: JUMPDEST 0000095d: CALLVALUE 0000095e: DUP1 0000095f: ISZERO 00000960: PUSH2 0x0968 00000963: JUMPI 00000964: PUSH1 0x00 00000966: DUP1 00000967: REVERT 00000968: JUMPDEST 00000969: POP 0000096a: PUSH2 0x099d 0000096d: PUSH1 0x04 0000096f: DUP1 00000970: CALLDATASIZE 00000971: SUB 00000972: DUP2 00000973: ADD 00000974: SWAP1 00000975: DUP1 00000976: DUP1 00000977: CALLDATALOAD 00000978: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000098d: AND 0000098e: SWAP1 0000098f: PUSH1 0x20 00000991: ADD 00000992: SWAP1 00000993: SWAP3 00000994: SWAP2 00000995: SWAP1 00000996: POP 00000997: POP 00000998: POP 00000999: PUSH2 0x16c5 0000099c: JUMP 0000099d: JUMPDEST 0000099e: STOP 0000099f: JUMPDEST 000009a0: CALLVALUE 000009a1: DUP1 000009a2: ISZERO 000009a3: PUSH2 0x09ab 000009a6: JUMPI 000009a7: PUSH1 0x00 000009a9: DUP1 000009aa: REVERT 000009ab: JUMPDEST 000009ac: POP 000009ad: PUSH2 0x09b4 000009b0: PUSH2 0x19c3 000009b3: JUMP 000009b4: JUMPDEST 000009b5: PUSH1 0x40 000009b7: MLOAD 000009b8: DUP1 000009b9: DUP3 000009ba: DUP2 000009bb: MSTORE 000009bc: PUSH1 0x20 000009be: ADD 000009bf: SWAP2 000009c0: POP 000009c1: POP 000009c2: PUSH1 0x40 000009c4: MLOAD 000009c5: DUP1 000009c6: SWAP2 000009c7: SUB 000009c8: SWAP1 000009c9: RETURN 000009ca: JUMPDEST 000009cb: PUSH1 0x00 000009cd: PUSH1 0x04 000009cf: PUSH1 0x00 000009d1: DUP13 000009d2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000009e7: AND 000009e8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000009fd: AND 000009fe: DUP2 000009ff: MSTORE 00000a00: PUSH1 0x20 00000a02: ADD 00000a03: SWAP1 00000a04: DUP2 00000a05: MSTORE 00000a06: PUSH1 0x20 00000a08: ADD 00000a09: PUSH1 0x00 00000a0b: KECCAK256 00000a0c: PUSH1 0x00 00000a0e: ADD 00000a0f: SLOAD 00000a10: EQ 00000a11: ISZERO 00000a12: ISZERO 00000a13: PUSH2 0x0a1b 00000a16: JUMPI 00000a17: PUSH1 0x00 00000a19: DUP1 00000a1a: REVERT 00000a1b: JUMPDEST 00000a1c: PUSH1 0x09 00000a1e: SLOAD 00000a1f: PUSH1 0x07 00000a21: SLOAD 00000a22: ADD 00000a23: PUSH2 0x0a2a 00000a26: PUSH2 0x19c9 00000a29: JUMP 00000a2a: JUMPDEST 00000a2b: LT 00000a2c: ISZERO 00000a2d: ISZERO 00000a2e: PUSH2 0x0a36 00000a31: JUMPI 00000a32: PUSH1 0x00 00000a34: DUP1 00000a35: REVERT 00000a36: JUMPDEST 00000a37: PUSH1 0x08 00000a39: SLOAD 00000a3a: CALLVALUE 00000a3b: LT 00000a3c: ISZERO 00000a3d: ISZERO 00000a3e: ISZERO 00000a3f: PUSH2 0x0a47 00000a42: JUMPI 00000a43: PUSH1 0x00 00000a45: DUP1 00000a46: REVERT 00000a47: JUMPDEST 00000a48: PUSH2 0x0140 00000a4b: PUSH1 0x40 00000a4d: MLOAD 00000a4e: SWAP1 00000a4f: DUP2 00000a50: ADD 00000a51: PUSH1 0x40 00000a53: MSTORE 00000a54: DUP1 00000a55: DUP12 00000a56: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a6b: AND 00000a6c: DUP2 00000a6d: MSTORE 00000a6e: PUSH1 0x20 00000a70: ADD 00000a71: DUP11 00000a72: DUP2 00000a73: MSTORE 00000a74: PUSH1 0x20 00000a76: ADD 00000a77: DUP10 00000a78: DUP2 00000a79: MSTORE 00000a7a: PUSH1 0x20 00000a7c: ADD 00000a7d: DUP9 00000a7e: DUP2 00000a7f: MSTORE 00000a80: PUSH1 0x20 00000a82: ADD 00000a83: DUP8 00000a84: DUP2 00000a85: MSTORE 00000a86: PUSH1 0x20 00000a88: ADD 00000a89: DUP7 00000a8a: DUP2 00000a8b: MSTORE 00000a8c: PUSH1 0x20 00000a8e: ADD 00000a8f: DUP6 00000a90: DUP2 00000a91: MSTORE 00000a92: PUSH1 0x20 00000a94: ADD 00000a95: DUP5 00000a96: DUP2 00000a97: MSTORE 00000a98: PUSH1 0x20 00000a9a: ADD 00000a9b: DUP4 00000a9c: DUP2 00000a9d: MSTORE 00000a9e: PUSH1 0x20 00000aa0: ADD 00000aa1: DUP3 00000aa2: DUP2 00000aa3: MSTORE 00000aa4: POP 00000aa5: PUSH1 0x03 00000aa7: PUSH1 0x00 00000aa9: PUSH1 0x01 00000aab: SLOAD 00000aac: DUP2 00000aad: MSTORE 00000aae: PUSH1 0x20 00000ab0: ADD 00000ab1: SWAP1 00000ab2: DUP2 00000ab3: MSTORE 00000ab4: PUSH1 0x20 00000ab6: ADD 00000ab7: PUSH1 0x00 00000ab9: KECCAK256 00000aba: PUSH1 0x00 00000abc: DUP13 00000abd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000ad2: AND 00000ad3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000ae8: AND 00000ae9: DUP2 00000aea: MSTORE 00000aeb: PUSH1 0x20 00000aed: ADD 00000aee: SWAP1 00000aef: DUP2 00000af0: MSTORE 00000af1: PUSH1 0x20 00000af3: ADD 00000af4: PUSH1 0x00 00000af6: KECCAK256 00000af7: PUSH1 0x00 00000af9: DUP3 00000afa: ADD 00000afb: MLOAD 00000afc: DUP2 00000afd: PUSH1 0x00 00000aff: ADD 00000b00: PUSH1 0x00 00000b02: PUSH2 0x0100 00000b05: EXP 00000b06: DUP2 00000b07: SLOAD 00000b08: DUP2 00000b09: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000b1e: MUL 00000b1f: NOT 00000b20: AND 00000b21: SWAP1 00000b22: DUP4 00000b23: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000b38: AND 00000b39: MUL 00000b3a: OR 00000b3b: SWAP1 00000b3c: SSTORE 00000b3d: POP 00000b3e: PUSH1 0x20 00000b40: DUP3 00000b41: ADD 00000b42: MLOAD 00000b43: DUP2 00000b44: PUSH1 0x01 00000b46: ADD 00000b47: SWAP1 00000b48: DUP1 00000b49: MLOAD 00000b4a: SWAP1 00000b4b: PUSH1 0x20 00000b4d: ADD 00000b4e: SWAP1 00000b4f: PUSH2 0x0b59 00000b52: SWAP3 00000b53: SWAP2 00000b54: SWAP1 00000b55: PUSH2 0x1a06 00000b58: JUMP 00000b59: JUMPDEST 00000b5a: POP 00000b5b: PUSH1 0x40 00000b5d: DUP3 00000b5e: ADD 00000b5f: MLOAD 00000b60: DUP2 00000b61: PUSH1 0x02 00000b63: ADD 00000b64: SWAP1 00000b65: DUP1 00000b66: MLOAD 00000b67: SWAP1 00000b68: PUSH1 0x20 00000b6a: ADD 00000b6b: SWAP1 00000b6c: PUSH2 0x0b76 00000b6f: SWAP3 00000b70: SWAP2 00000b71: SWAP1 00000b72: PUSH2 0x1a06 00000b75: JUMP 00000b76: JUMPDEST 00000b77: POP 00000b78: PUSH1 0x60 00000b7a: DUP3 00000b7b: ADD 00000b7c: MLOAD 00000b7d: DUP2 00000b7e: PUSH1 0x03 00000b80: ADD 00000b81: SWAP1 00000b82: DUP1 00000b83: MLOAD 00000b84: SWAP1 00000b85: PUSH1 0x20 00000b87: ADD 00000b88: SWAP1 00000b89: PUSH2 0x0b93 00000b8c: SWAP3 00000b8d: SWAP2 00000b8e: SWAP1 00000b8f: PUSH2 0x1a06 00000b92: JUMP 00000b93: JUMPDEST 00000b94: POP 00000b95: PUSH1 0x80 00000b97: DUP3 00000b98: ADD 00000b99: MLOAD 00000b9a: DUP2 00000b9b: PUSH1 0x04 00000b9d: ADD 00000b9e: SWAP1 00000b9f: DUP1 00000ba0: MLOAD 00000ba1: SWAP1 00000ba2: PUSH1 0x20 00000ba4: ADD 00000ba5: SWAP1 00000ba6: PUSH2 0x0bb0 00000ba9: SWAP3 00000baa: SWAP2 00000bab: SWAP1 00000bac: PUSH2 0x1a06 00000baf: JUMP 00000bb0: JUMPDEST 00000bb1: POP 00000bb2: PUSH1 0xa0 00000bb4: DUP3 00000bb5: ADD 00000bb6: MLOAD 00000bb7: DUP2 00000bb8: PUSH1 0x05 00000bba: ADD 00000bbb: SWAP1 00000bbc: DUP1 00000bbd: MLOAD 00000bbe: SWAP1 00000bbf: PUSH1 0x20 00000bc1: ADD 00000bc2: SWAP1 00000bc3: PUSH2 0x0bcd 00000bc6: SWAP3 00000bc7: SWAP2 00000bc8: SWAP1 00000bc9: PUSH2 0x1a06 00000bcc: JUMP 00000bcd: JUMPDEST 00000bce: POP 00000bcf: PUSH1 0xc0 00000bd1: DUP3 00000bd2: ADD 00000bd3: MLOAD 00000bd4: DUP2 00000bd5: PUSH1 0x06 00000bd7: ADD 00000bd8: SSTORE 00000bd9: PUSH1 0xe0 00000bdb: DUP3 00000bdc: ADD 00000bdd: MLOAD 00000bde: DUP2 00000bdf: PUSH1 0x07 00000be1: ADD 00000be2: SSTORE 00000be3: PUSH2 0x0100 00000be6: DUP3 00000be7: ADD 00000be8: MLOAD 00000be9: DUP2 00000bea: PUSH1 0x08 00000bec: ADD 00000bed: SSTORE 00000bee: PUSH2 0x0120 00000bf1: DUP3 00000bf2: ADD 00000bf3: MLOAD 00000bf4: DUP2 00000bf5: PUSH1 0x09 00000bf7: ADD 00000bf8: SSTORE 00000bf9: SWAP1 00000bfa: POP 00000bfb: POP 00000bfc: PUSH1 0x60 00000bfe: PUSH1 0x40 00000c00: MLOAD 00000c01: SWAP1 00000c02: DUP2 00000c03: ADD 00000c04: PUSH1 0x40 00000c06: MSTORE 00000c07: DUP1 00000c08: CALLVALUE 00000c09: DUP2 00000c0a: MSTORE 00000c0b: PUSH1 0x20 00000c0d: ADD 00000c0e: CALLER 00000c0f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000c24: AND 00000c25: DUP2 00000c26: MSTORE 00000c27: PUSH1 0x20 00000c29: ADD 00000c2a: PUSH1 0x01 00000c2c: SLOAD 00000c2d: DUP2 00000c2e: MSTORE 00000c2f: POP 00000c30: PUSH1 0x04 00000c32: PUSH1 0x00 00000c34: DUP13 00000c35: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000c4a: AND 00000c4b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000c60: AND 00000c61: DUP2 00000c62: MSTORE 00000c63: PUSH1 0x20 00000c65: ADD 00000c66: SWAP1 00000c67: DUP2 00000c68: MSTORE 00000c69: PUSH1 0x20 00000c6b: ADD 00000c6c: PUSH1 0x00 00000c6e: KECCAK256 00000c6f: PUSH1 0x00 00000c71: DUP3 00000c72: ADD 00000c73: MLOAD 00000c74: DUP2 00000c75: PUSH1 0x00 00000c77: ADD 00000c78: SSTORE 00000c79: PUSH1 0x20 00000c7b: DUP3 00000c7c: ADD 00000c7d: MLOAD 00000c7e: DUP2 00000c7f: PUSH1 0x01 00000c81: ADD 00000c82: PUSH1 0x00 00000c84: PUSH2 0x0100 00000c87: EXP 00000c88: DUP2 00000c89: SLOAD 00000c8a: DUP2 00000c8b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000ca0: MUL 00000ca1: NOT 00000ca2: AND 00000ca3: SWAP1 00000ca4: DUP4 00000ca5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000cba: AND 00000cbb: MUL 00000cbc: OR 00000cbd: SWAP1 00000cbe: SSTORE 00000cbf: POP 00000cc0: PUSH1 0x40 00000cc2: DUP3 00000cc3: ADD 00000cc4: MLOAD 00000cc5: DUP2 00000cc6: PUSH1 0x02 00000cc8: ADD 00000cc9: SSTORE 00000cca: SWAP1 00000ccb: POP 00000ccc: POP 00000ccd: PUSH2 0x0cf4 00000cd0: CALLVALUE 00000cd1: PUSH1 0x05 00000cd3: PUSH1 0x00 00000cd5: PUSH1 0x01 00000cd7: SLOAD 00000cd8: DUP2 00000cd9: MSTORE 00000cda: PUSH1 0x20 00000cdc: ADD 00000cdd: SWAP1 00000cde: DUP2 00000cdf: MSTORE 00000ce0: PUSH1 0x20 00000ce2: ADD 00000ce3: PUSH1 0x00 00000ce5: KECCAK256 00000ce6: SLOAD 00000ce7: PUSH2 0x19d1 00000cea: SWAP1 00000ceb: SWAP2 00000cec: SWAP1 00000ced: PUSH4 0xffffffff 00000cf2: AND 00000cf3: JUMP 00000cf4: JUMPDEST 00000cf5: PUSH1 0x05 00000cf7: PUSH1 0x00 00000cf9: PUSH1 0x01 00000cfb: SLOAD 00000cfc: DUP2 00000cfd: MSTORE 00000cfe: PUSH1 0x20 00000d00: ADD 00000d01: SWAP1 00000d02: DUP2 00000d03: MSTORE 00000d04: PUSH1 0x20 00000d06: ADD 00000d07: PUSH1 0x00 00000d09: KECCAK256 00000d0a: DUP2 00000d0b: SWAP1 00000d0c: SSTORE 00000d0d: POP 00000d0e: PUSH1 0x01 00000d10: SLOAD 00000d11: PUSH32 0x46ea865f00e44354e9a94289893da72054251f9d0131ecbc6ce70c3c77c60195 00000d32: DUP12 00000d33: PUSH1 0x40 00000d35: MLOAD 00000d36: DUP1 00000d37: DUP3 00000d38: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000d4d: AND 00000d4e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000d63: AND 00000d64: DUP2 00000d65: MSTORE 00000d66: PUSH1 0x20 00000d68: ADD 00000d69: SWAP2 00000d6a: POP 00000d6b: POP 00000d6c: PUSH1 0x40 00000d6e: MLOAD 00000d6f: DUP1 00000d70: SWAP2 00000d71: SUB 00000d72: SWAP1 00000d73: LOG2 00000d74: POP 00000d75: POP 00000d76: POP 00000d77: POP 00000d78: POP 00000d79: POP 00000d7a: POP 00000d7b: POP 00000d7c: POP 00000d7d: POP 00000d7e: JUMP 00000d7f: JUMPDEST 00000d80: PUSH1 0x09 00000d82: SLOAD 00000d83: DUP2 00000d84: JUMP 00000d85: JUMPDEST 00000d86: PUSH1 0x01 00000d88: SLOAD 00000d89: DUP2 00000d8a: JUMP 00000d8b: JUMPDEST 00000d8c: PUSH1 0x02 00000d8e: PUSH1 0x00 00000d90: SWAP1 00000d91: SLOAD 00000d92: SWAP1 00000d93: PUSH2 0x0100 00000d96: EXP 00000d97: SWAP1 00000d98: DIV 00000d99: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000dae: AND 00000daf: DUP2 00000db0: JUMP 00000db1: JUMPDEST 00000db2: PUSH1 0x00 00000db4: PUSH1 0x04 00000db6: PUSH1 0x00 00000db8: DUP4 00000db9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000dce: AND 00000dcf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000de4: AND 00000de5: DUP2 00000de6: MSTORE 00000de7: PUSH1 0x20 00000de9: ADD 00000dea: SWAP1 00000deb: DUP2 00000dec: MSTORE 00000ded: PUSH1 0x20 00000def: ADD 00000df0: PUSH1 0x00 00000df2: KECCAK256 00000df3: PUSH1 0x00 00000df5: ADD 00000df6: SLOAD 00000df7: SWAP1 00000df8: POP 00000df9: SWAP2 00000dfa: SWAP1 00000dfb: POP 00000dfc: JUMP 00000dfd: JUMPDEST 00000dfe: PUSH1 0x00 00000e00: DUP1 00000e01: SWAP1 00000e02: SLOAD 00000e03: SWAP1 00000e04: PUSH2 0x0100 00000e07: EXP 00000e08: SWAP1 00000e09: DIV 00000e0a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e1f: AND 00000e20: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e35: AND 00000e36: CALLER 00000e37: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e4c: AND 00000e4d: EQ 00000e4e: ISZERO 00000e4f: ISZERO 00000e50: PUSH2 0x0e58 00000e53: JUMPI 00000e54: PUSH1 0x00 00000e56: DUP1 00000e57: REVERT 00000e58: JUMPDEST 00000e59: PUSH1 0x02 00000e5b: PUSH1 0x00 00000e5d: SWAP1 00000e5e: SLOAD 00000e5f: SWAP1 00000e60: PUSH2 0x0100 00000e63: EXP 00000e64: SWAP1 00000e65: DIV 00000e66: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e7b: AND 00000e7c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e91: AND 00000e92: SELFDESTRUCT 00000e93: JUMPDEST 00000e94: PUSH1 0x05 00000e96: PUSH1 0x20 00000e98: MSTORE 00000e99: DUP1 00000e9a: PUSH1 0x00 00000e9c: MSTORE 00000e9d: PUSH1 0x40 00000e9f: PUSH1 0x00 00000ea1: KECCAK256 00000ea2: PUSH1 0x00 00000ea4: SWAP2 00000ea5: POP 00000ea6: SWAP1 00000ea7: POP 00000ea8: SLOAD 00000ea9: DUP2 00000eaa: JUMP 00000eab: JUMPDEST 00000eac: PUSH1 0x06 00000eae: PUSH1 0x20 00000eb0: MSTORE 00000eb1: DUP1 00000eb2: PUSH1 0x00 00000eb4: MSTORE 00000eb5: PUSH1 0x40 00000eb7: PUSH1 0x00 00000eb9: KECCAK256 00000eba: PUSH1 0x00 00000ebc: SWAP2 00000ebd: POP 00000ebe: SWAP1 00000ebf: POP 00000ec0: SLOAD 00000ec1: DUP2 00000ec2: JUMP 00000ec3: JUMPDEST 00000ec4: PUSH1 0x03 00000ec6: PUSH1 0x20 00000ec8: MSTORE 00000ec9: DUP2 00000eca: PUSH1 0x00 00000ecc: MSTORE 00000ecd: PUSH1 0x40 00000ecf: PUSH1 0x00 00000ed1: KECCAK256 00000ed2: PUSH1 0x20 00000ed4: MSTORE 00000ed5: DUP1 00000ed6: PUSH1 0x00 00000ed8: MSTORE 00000ed9: PUSH1 0x40 00000edb: PUSH1 0x00 00000edd: KECCAK256 00000ede: PUSH1 0x00 00000ee0: SWAP2 00000ee1: POP 00000ee2: SWAP2 00000ee3: POP 00000ee4: POP 00000ee5: DUP1 00000ee6: PUSH1 0x00 00000ee8: ADD 00000ee9: PUSH1 0x00 00000eeb: SWAP1 00000eec: SLOAD 00000eed: SWAP1 00000eee: PUSH2 0x0100 00000ef1: EXP 00000ef2: SWAP1 00000ef3: DIV 00000ef4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000f09: AND 00000f0a: SWAP1 00000f0b: DUP1 00000f0c: PUSH1 0x01 00000f0e: ADD 00000f0f: DUP1 00000f10: SLOAD 00000f11: PUSH1 0x01 00000f13: DUP2 00000f14: PUSH1 0x01 00000f16: AND 00000f17: ISZERO 00000f18: PUSH2 0x0100 00000f1b: MUL 00000f1c: SUB 00000f1d: AND 00000f1e: PUSH1 0x02 00000f20: SWAP1 00000f21: DIV 00000f22: DUP1 00000f23: PUSH1 0x1f 00000f25: ADD 00000f26: PUSH1 0x20 00000f28: DUP1 00000f29: SWAP2 00000f2a: DIV 00000f2b: MUL 00000f2c: PUSH1 0x20 00000f2e: ADD 00000f2f: PUSH1 0x40 00000f31: MLOAD 00000f32: SWAP1 00000f33: DUP2 00000f34: ADD 00000f35: PUSH1 0x40 00000f37: MSTORE 00000f38: DUP1 00000f39: SWAP3 00000f3a: SWAP2 00000f3b: SWAP1 00000f3c: DUP2 00000f3d: DUP2 00000f3e: MSTORE 00000f3f: PUSH1 0x20 00000f41: ADD 00000f42: DUP3 00000f43: DUP1 00000f44: SLOAD 00000f45: PUSH1 0x01 00000f47: DUP2 00000f48: PUSH1 0x01 00000f4a: AND 00000f4b: ISZERO 00000f4c: PUSH2 0x0100 00000f4f: MUL 00000f50: SUB 00000f51: AND 00000f52: PUSH1 0x02 00000f54: SWAP1 00000f55: DIV 00000f56: DUP1 00000f57: ISZERO 00000f58: PUSH2 0x0fa2 00000f5b: JUMPI 00000f5c: DUP1 00000f5d: PUSH1 0x1f 00000f5f: LT 00000f60: PUSH2 0x0f77 00000f63: JUMPI 00000f64: PUSH2 0x0100 00000f67: DUP1 00000f68: DUP4 00000f69: SLOAD 00000f6a: DIV 00000f6b: MUL 00000f6c: DUP4 00000f6d: MSTORE 00000f6e: SWAP2 00000f6f: PUSH1 0x20 00000f71: ADD 00000f72: SWAP2 00000f73: PUSH2 0x0fa2 00000f76: JUMP 00000f77: JUMPDEST 00000f78: DUP3 00000f79: ADD 00000f7a: SWAP2 00000f7b: SWAP1 00000f7c: PUSH1 0x00 00000f7e: MSTORE 00000f7f: PUSH1 0x20 00000f81: PUSH1 0x00 00000f83: KECCAK256 00000f84: SWAP1 00000f85: JUMPDEST 00000f86: DUP2 00000f87: SLOAD 00000f88: DUP2 00000f89: MSTORE 00000f8a: SWAP1 00000f8b: PUSH1 0x01 00000f8d: ADD 00000f8e: SWAP1 00000f8f: PUSH1 0x20 00000f91: ADD 00000f92: DUP1 00000f93: DUP4 00000f94: GT 00000f95: PUSH2 0x0f85 00000f98: JUMPI 00000f99: DUP3 00000f9a: SWAP1 00000f9b: SUB 00000f9c: PUSH1 0x1f 00000f9e: AND 00000f9f: DUP3 00000fa0: ADD 00000fa1: SWAP2 00000fa2: JUMPDEST 00000fa3: POP 00000fa4: POP 00000fa5: POP 00000fa6: POP 00000fa7: POP 00000fa8: SWAP1 00000fa9: DUP1 00000faa: PUSH1 0x02 00000fac: ADD 00000fad: DUP1 00000fae: SLOAD 00000faf: PUSH1 0x01 00000fb1: DUP2 00000fb2: PUSH1 0x01 00000fb4: AND 00000fb5: ISZERO 00000fb6: PUSH2 0x0100 00000fb9: MUL 00000fba: SUB 00000fbb: AND 00000fbc: PUSH1 0x02 00000fbe: SWAP1 00000fbf: DIV 00000fc0: DUP1 00000fc1: PUSH1 0x1f 00000fc3: ADD 00000fc4: PUSH1 0x20 00000fc6: DUP1 00000fc7: SWAP2 00000fc8: DIV 00000fc9: MUL 00000fca: PUSH1 0x20 00000fcc: ADD 00000fcd: PUSH1 0x40 00000fcf: MLOAD 00000fd0: SWAP1 00000fd1: DUP2 00000fd2: ADD 00000fd3: PUSH1 0x40 00000fd5: MSTORE 00000fd6: DUP1 00000fd7: SWAP3 00000fd8: SWAP2 00000fd9: SWAP1 00000fda: DUP2 00000fdb: DUP2 00000fdc: MSTORE 00000fdd: PUSH1 0x20 00000fdf: ADD 00000fe0: DUP3 00000fe1: DUP1 00000fe2: SLOAD 00000fe3: PUSH1 0x01 00000fe5: DUP2 00000fe6: PUSH1 0x01 00000fe8: AND 00000fe9: ISZERO 00000fea: PUSH2 0x0100 00000fed: MUL 00000fee: SUB 00000fef: AND 00000ff0: PUSH1 0x02 00000ff2: SWAP1 00000ff3: DIV 00000ff4: DUP1 00000ff5: ISZERO 00000ff6: PUSH2 0x1040 00000ff9: JUMPI 00000ffa: DUP1 00000ffb: PUSH1 0x1f 00000ffd: LT 00000ffe: PUSH2 0x1015 00001001: JUMPI 00001002: PUSH2 0x0100 00001005: DUP1 00001006: DUP4 00001007: SLOAD 00001008: DIV 00001009: MUL 0000100a: DUP4 0000100b: MSTORE 0000100c: SWAP2 0000100d: PUSH1 0x20 0000100f: ADD 00001010: SWAP2 00001011: PUSH2 0x1040 00001014: JUMP 00001015: JUMPDEST 00001016: DUP3 00001017: ADD 00001018: SWAP2 00001019: SWAP1 0000101a: PUSH1 0x00 0000101c: MSTORE 0000101d: PUSH1 0x20 0000101f: PUSH1 0x00 00001021: KECCAK256 00001022: SWAP1 00001023: JUMPDEST 00001024: DUP2 00001025: SLOAD 00001026: DUP2 00001027: MSTORE 00001028: SWAP1 00001029: PUSH1 0x01 0000102b: ADD 0000102c: SWAP1 0000102d: PUSH1 0x20 0000102f: ADD 00001030: DUP1 00001031: DUP4 00001032: GT 00001033: PUSH2 0x1023 00001036: JUMPI 00001037: DUP3 00001038: SWAP1 00001039: SUB 0000103a: PUSH1 0x1f 0000103c: AND 0000103d: DUP3 0000103e: ADD 0000103f: SWAP2 00001040: JUMPDEST 00001041: POP 00001042: POP 00001043: POP 00001044: POP 00001045: POP 00001046: SWAP1 00001047: DUP1 00001048: PUSH1 0x03 0000104a: ADD 0000104b: DUP1 0000104c: SLOAD 0000104d: PUSH1 0x01 0000104f: DUP2 00001050: PUSH1 0x01 00001052: AND 00001053: ISZERO 00001054: PUSH2 0x0100 00001057: MUL 00001058: SUB 00001059: AND 0000105a: PUSH1 0x02 0000105c: SWAP1 0000105d: DIV 0000105e: DUP1 0000105f: PUSH1 0x1f 00001061: ADD 00001062: PUSH1 0x20 00001064: DUP1 00001065: SWAP2 00001066: DIV 00001067: MUL 00001068: PUSH1 0x20 0000106a: ADD 0000106b: PUSH1 0x40 0000106d: MLOAD 0000106e: SWAP1 0000106f: DUP2 00001070: ADD 00001071: PUSH1 0x40 00001073: MSTORE 00001074: DUP1 00001075: SWAP3 00001076: SWAP2 00001077: SWAP1 00001078: DUP2 00001079: DUP2 0000107a: MSTORE 0000107b: PUSH1 0x20 0000107d: ADD 0000107e: DUP3 0000107f: DUP1 00001080: SLOAD 00001081: PUSH1 0x01 00001083: DUP2 00001084: PUSH1 0x01 00001086: AND 00001087: ISZERO 00001088: PUSH2 0x0100 0000108b: MUL 0000108c: SUB 0000108d: AND 0000108e: PUSH1 0x02 00001090: SWAP1 00001091: DIV 00001092: DUP1 00001093: ISZERO 00001094: PUSH2 0x10de 00001097: JUMPI 00001098: DUP1 00001099: PUSH1 0x1f 0000109b: LT 0000109c: PUSH2 0x10b3 0000109f: JUMPI 000010a0: PUSH2 0x0100 000010a3: DUP1 000010a4: DUP4 000010a5: SLOAD 000010a6: DIV 000010a7: MUL 000010a8: DUP4 000010a9: MSTORE 000010aa: SWAP2 000010ab: PUSH1 0x20 000010ad: ADD 000010ae: SWAP2 000010af: PUSH2 0x10de 000010b2: JUMP 000010b3: JUMPDEST 000010b4: DUP3 000010b5: ADD 000010b6: SWAP2 000010b7: SWAP1 000010b8: PUSH1 0x00 000010ba: MSTORE 000010bb: PUSH1 0x20 000010bd: PUSH1 0x00 000010bf: KECCAK256 000010c0: SWAP1 000010c1: JUMPDEST 000010c2: DUP2 000010c3: SLOAD 000010c4: DUP2 000010c5: MSTORE 000010c6: SWAP1 000010c7: PUSH1 0x01 000010c9: ADD 000010ca: SWAP1 000010cb: PUSH1 0x20 000010cd: ADD 000010ce: DUP1 000010cf: DUP4 000010d0: GT 000010d1: PUSH2 0x10c1 000010d4: JUMPI 000010d5: DUP3 000010d6: SWAP1 000010d7: SUB 000010d8: PUSH1 0x1f 000010da: AND 000010db: DUP3 000010dc: ADD 000010dd: SWAP2 000010de: JUMPDEST 000010df: POP 000010e0: POP 000010e1: POP 000010e2: POP 000010e3: POP 000010e4: SWAP1 000010e5: DUP1 000010e6: PUSH1 0x04 000010e8: ADD 000010e9: DUP1 000010ea: SLOAD 000010eb: PUSH1 0x01 000010ed: DUP2 000010ee: PUSH1 0x01 000010f0: AND 000010f1: ISZERO 000010f2: PUSH2 0x0100 000010f5: MUL 000010f6: SUB 000010f7: AND 000010f8: PUSH1 0x02 000010fa: SWAP1 000010fb: DIV 000010fc: DUP1 000010fd: PUSH1 0x1f 000010ff: ADD 00001100: PUSH1 0x20 00001102: DUP1 00001103: SWAP2 00001104: DIV 00001105: MUL 00001106: PUSH1 0x20 00001108: ADD 00001109: PUSH1 0x40 0000110b: MLOAD 0000110c: SWAP1 0000110d: DUP2 0000110e: ADD 0000110f: PUSH1 0x40 00001111: MSTORE 00001112: DUP1 00001113: SWAP3 00001114: SWAP2 00001115: SWAP1 00001116: DUP2 00001117: DUP2 00001118: MSTORE 00001119: PUSH1 0x20 0000111b: ADD 0000111c: DUP3 0000111d: DUP1 0000111e: SLOAD 0000111f: PUSH1 0x01 00001121: DUP2 00001122: PUSH1 0x01 00001124: AND 00001125: ISZERO 00001126: PUSH2 0x0100 00001129: MUL 0000112a: SUB 0000112b: AND 0000112c: PUSH1 0x02 0000112e: SWAP1 0000112f: DIV 00001130: DUP1 00001131: ISZERO 00001132: PUSH2 0x117c 00001135: JUMPI 00001136: DUP1 00001137: PUSH1 0x1f 00001139: LT 0000113a: PUSH2 0x1151 0000113d: JUMPI 0000113e: PUSH2 0x0100 00001141: DUP1 00001142: DUP4 00001143: SLOAD 00001144: DIV 00001145: MUL 00001146: DUP4 00001147: MSTORE 00001148: SWAP2 00001149: PUSH1 0x20 0000114b: ADD 0000114c: SWAP2 0000114d: PUSH2 0x117c 00001150: JUMP 00001151: JUMPDEST 00001152: DUP3 00001153: ADD 00001154: SWAP2 00001155: SWAP1 00001156: PUSH1 0x00 00001158: MSTORE 00001159: PUSH1 0x20 0000115b: PUSH1 0x00 0000115d: KECCAK256 0000115e: SWAP1 0000115f: JUMPDEST 00001160: DUP2 00001161: SLOAD 00001162: DUP2 00001163: MSTORE 00001164: SWAP1 00001165: PUSH1 0x01 00001167: ADD 00001168: SWAP1 00001169: PUSH1 0x20 0000116b: ADD 0000116c: DUP1 0000116d: DUP4 0000116e: GT 0000116f: PUSH2 0x115f 00001172: JUMPI 00001173: DUP3 00001174: SWAP1 00001175: SUB 00001176: PUSH1 0x1f 00001178: AND 00001179: DUP3 0000117a: ADD 0000117b: SWAP2 0000117c: JUMPDEST 0000117d: POP 0000117e: POP 0000117f: POP 00001180: POP 00001181: POP 00001182: SWAP1 00001183: DUP1 00001184: PUSH1 0x05 00001186: ADD 00001187: DUP1 00001188: SLOAD 00001189: PUSH1 0x01 0000118b: DUP2 0000118c: PUSH1 0x01 0000118e: AND 0000118f: ISZERO 00001190: PUSH2 0x0100 00001193: MUL 00001194: SUB 00001195: AND 00001196: PUSH1 0x02 00001198: SWAP1 00001199: DIV 0000119a: DUP1 0000119b: PUSH1 0x1f 0000119d: ADD 0000119e: PUSH1 0x20 000011a0: DUP1 000011a1: SWAP2 000011a2: DIV 000011a3: MUL 000011a4: PUSH1 0x20 000011a6: ADD 000011a7: PUSH1 0x40 000011a9: MLOAD 000011aa: SWAP1 000011ab: DUP2 000011ac: ADD 000011ad: PUSH1 0x40 000011af: MSTORE 000011b0: DUP1 000011b1: SWAP3 000011b2: SWAP2 000011b3: SWAP1 000011b4: DUP2 000011b5: DUP2 000011b6: MSTORE 000011b7: PUSH1 0x20 000011b9: ADD 000011ba: DUP3 000011bb: DUP1 000011bc: SLOAD 000011bd: PUSH1 0x01 000011bf: DUP2 000011c0: PUSH1 0x01 000011c2: AND 000011c3: ISZERO 000011c4: PUSH2 0x0100 000011c7: MUL 000011c8: SUB 000011c9: AND 000011ca: PUSH1 0x02 000011cc: SWAP1 000011cd: DIV 000011ce: DUP1 000011cf: ISZERO 000011d0: PUSH2 0x121a 000011d3: JUMPI 000011d4: DUP1 000011d5: PUSH1 0x1f 000011d7: LT 000011d8: PUSH2 0x11ef 000011db: JUMPI 000011dc: PUSH2 0x0100 000011df: DUP1 000011e0: DUP4 000011e1: SLOAD 000011e2: DIV 000011e3: MUL 000011e4: DUP4 000011e5: MSTORE 000011e6: SWAP2 000011e7: PUSH1 0x20 000011e9: ADD 000011ea: SWAP2 000011eb: PUSH2 0x121a 000011ee: JUMP 000011ef: JUMPDEST 000011f0: DUP3 000011f1: ADD 000011f2: SWAP2 000011f3: SWAP1 000011f4: PUSH1 0x00 000011f6: MSTORE 000011f7: PUSH1 0x20 000011f9: PUSH1 0x00 000011fb: KECCAK256 000011fc: SWAP1 000011fd: JUMPDEST 000011fe: DUP2 000011ff: SLOAD 00001200: DUP2 00001201: MSTORE 00001202: SWAP1 00001203: PUSH1 0x01 00001205: ADD 00001206: SWAP1 00001207: PUSH1 0x20 00001209: ADD 0000120a: DUP1 0000120b: DUP4 0000120c: GT 0000120d: PUSH2 0x11fd 00001210: JUMPI 00001211: DUP3 00001212: SWAP1 00001213: SUB 00001214: PUSH1 0x1f 00001216: AND 00001217: DUP3 00001218: ADD 00001219: SWAP2 0000121a: JUMPDEST 0000121b: POP 0000121c: POP 0000121d: POP 0000121e: POP 0000121f: POP 00001220: SWAP1 00001221: DUP1 00001222: PUSH1 0x06 00001224: ADD 00001225: SLOAD 00001226: SWAP1 00001227: DUP1 00001228: PUSH1 0x07 0000122a: ADD 0000122b: SLOAD 0000122c: SWAP1 0000122d: DUP1 0000122e: PUSH1 0x08 00001230: ADD 00001231: SLOAD 00001232: SWAP1 00001233: DUP1 00001234: PUSH1 0x09 00001236: ADD 00001237: SLOAD 00001238: SWAP1 00001239: POP 0000123a: DUP11 0000123b: JUMP 0000123c: JUMPDEST 0000123d: PUSH1 0x07 0000123f: SLOAD 00001240: DUP2 00001241: JUMP 00001242: JUMPDEST 00001243: PUSH1 0x00 00001245: DUP1 00001246: SWAP1 00001247: SLOAD 00001248: SWAP1 00001249: PUSH2 0x0100 0000124c: EXP 0000124d: SWAP1 0000124e: DIV 0000124f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001264: AND 00001265: DUP2 00001266: JUMP 00001267: JUMPDEST 00001268: PUSH1 0x00 0000126a: DUP1 0000126b: SWAP1 0000126c: SLOAD 0000126d: SWAP1 0000126e: PUSH2 0x0100 00001271: EXP 00001272: SWAP1 00001273: DIV 00001274: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001289: AND 0000128a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000129f: AND 000012a0: CALLER 000012a1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000012b6: AND 000012b7: EQ 000012b8: ISZERO 000012b9: ISZERO 000012ba: PUSH2 0x12c2 000012bd: JUMPI 000012be: PUSH1 0x00 000012c0: DUP1 000012c1: REVERT 000012c2: JUMPDEST 000012c3: PUSH1 0x09 000012c5: SLOAD 000012c6: PUSH1 0x07 000012c8: SLOAD 000012c9: ADD 000012ca: PUSH2 0x12d1 000012cd: PUSH2 0x19c9 000012d0: JUMP 000012d1: JUMPDEST 000012d2: LT 000012d3: ISZERO 000012d4: ISZERO 000012d5: ISZERO 000012d6: PUSH2 0x12de 000012d9: JUMPI 000012da: PUSH1 0x00 000012dc: DUP1 000012dd: REVERT 000012de: JUMPDEST 000012df: PUSH1 0x00 000012e1: PUSH1 0x01 000012e3: SLOAD 000012e4: GT 000012e5: ISZERO 000012e6: PUSH2 0x1381 000012e9: JUMPI 000012ea: PUSH1 0x02 000012ec: PUSH1 0x00 000012ee: SWAP1 000012ef: SLOAD 000012f0: SWAP1 000012f1: PUSH2 0x0100 000012f4: EXP 000012f5: SWAP1 000012f6: DIV 000012f7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000130c: AND 0000130d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001322: AND 00001323: PUSH2 0x08fc 00001326: PUSH1 0x05 00001328: PUSH1 0x00 0000132a: PUSH1 0x01 0000132c: SLOAD 0000132d: DUP2 0000132e: MSTORE 0000132f: PUSH1 0x20 00001331: ADD 00001332: SWAP1 00001333: DUP2 00001334: MSTORE 00001335: PUSH1 0x20 00001337: ADD 00001338: PUSH1 0x00 0000133a: KECCAK256 0000133b: SLOAD 0000133c: ADDRESS 0000133d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001352: AND 00001353: BALANCE 00001354: SUB 00001355: SWAP1 00001356: DUP2 00001357: ISZERO 00001358: MUL 00001359: SWAP1 0000135a: PUSH1 0x40 0000135c: MLOAD 0000135d: PUSH1 0x00 0000135f: PUSH1 0x40 00001361: MLOAD 00001362: DUP1 00001363: DUP4 00001364: SUB 00001365: DUP2 00001366: DUP6 00001367: DUP9 00001368: DUP9 00001369: CALL 0000136a: SWAP4 0000136b: POP 0000136c: POP 0000136d: POP 0000136e: POP 0000136f: ISZERO 00001370: DUP1 00001371: ISZERO 00001372: PUSH2 0x137f 00001375: JUMPI 00001376: RETURNDATASIZE 00001377: PUSH1 0x00 00001379: DUP1 0000137a: RETURNDATACOPY 0000137b: RETURNDATASIZE 0000137c: PUSH1 0x00 0000137e: REVERT 0000137f: JUMPDEST 00001380: POP 00001381: JUMPDEST 00001382: DUP3 00001383: PUSH1 0x07 00001385: DUP2 00001386: SWAP1 00001387: SSTORE 00001388: POP 00001389: DUP2 0000138a: PUSH1 0x09 0000138c: DUP2 0000138d: SWAP1 0000138e: SSTORE 0000138f: POP 00001390: DUP1 00001391: PUSH1 0x08 00001393: DUP2 00001394: SWAP1 00001395: SSTORE 00001396: POP 00001397: PUSH32 0xd49620ec6474d72a2f05dd60f5ab59ad0d2d9d29090cb3b81defc30db3d510c3 000013b8: PUSH1 0x01 000013ba: SLOAD 000013bb: PUSH1 0x40 000013bd: MLOAD 000013be: DUP1 000013bf: DUP3 000013c0: DUP2 000013c1: MSTORE 000013c2: PUSH1 0x20 000013c4: ADD 000013c5: SWAP2 000013c6: POP 000013c7: POP 000013c8: PUSH1 0x40 000013ca: MLOAD 000013cb: DUP1 000013cc: SWAP2 000013cd: SUB 000013ce: SWAP1 000013cf: LOG1 000013d0: PUSH1 0x01 000013d2: DUP1 000013d3: PUSH1 0x00 000013d5: DUP3 000013d6: DUP3 000013d7: SLOAD 000013d8: ADD 000013d9: SWAP3 000013da: POP 000013db: POP 000013dc: DUP2 000013dd: SWAP1 000013de: SSTORE 000013df: POP 000013e0: POP 000013e1: POP 000013e2: POP 000013e3: JUMP 000013e4: JUMPDEST 000013e5: PUSH1 0x00 000013e7: DUP1 000013e8: SWAP1 000013e9: SLOAD 000013ea: SWAP1 000013eb: PUSH2 0x0100 000013ee: EXP 000013ef: SWAP1 000013f0: DIV 000013f1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001406: AND 00001407: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000141c: AND 0000141d: CALLER 0000141e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001433: AND 00001434: EQ 00001435: ISZERO 00001436: ISZERO 00001437: PUSH2 0x143f 0000143a: JUMPI 0000143b: PUSH1 0x00 0000143d: DUP1 0000143e: REVERT 0000143f: JUMPDEST 00001440: DUP1 00001441: PUSH1 0x02 00001443: PUSH1 0x00 00001445: PUSH2 0x0100 00001448: EXP 00001449: DUP2 0000144a: SLOAD 0000144b: DUP2 0000144c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001461: MUL 00001462: NOT 00001463: AND 00001464: SWAP1 00001465: DUP4 00001466: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000147b: AND 0000147c: MUL 0000147d: OR 0000147e: SWAP1 0000147f: SSTORE 00001480: POP 00001481: POP 00001482: JUMP 00001483: JUMPDEST 00001484: PUSH1 0x04 00001486: PUSH1 0x20 00001488: MSTORE 00001489: DUP1 0000148a: PUSH1 0x00 0000148c: MSTORE 0000148d: PUSH1 0x40 0000148f: PUSH1 0x00 00001491: KECCAK256 00001492: PUSH1 0x00 00001494: SWAP2 00001495: POP 00001496: SWAP1 00001497: POP 00001498: DUP1 00001499: PUSH1 0x00 0000149b: ADD 0000149c: SLOAD 0000149d: SWAP1 0000149e: DUP1 0000149f: PUSH1 0x01 000014a1: ADD 000014a2: PUSH1 0x00 000014a4: SWAP1 000014a5: SLOAD 000014a6: SWAP1 000014a7: PUSH2 0x0100 000014aa: EXP 000014ab: SWAP1 000014ac: DIV 000014ad: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000014c2: AND 000014c3: SWAP1 000014c4: DUP1 000014c5: PUSH1 0x02 000014c7: ADD 000014c8: SLOAD 000014c9: SWAP1 000014ca: POP 000014cb: DUP4 000014cc: JUMP 000014cd: JUMPDEST 000014ce: PUSH1 0x00 000014d0: DUP1 000014d1: SWAP1 000014d2: SLOAD 000014d3: SWAP1 000014d4: PUSH2 0x0100 000014d7: EXP 000014d8: SWAP1 000014d9: DIV 000014da: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000014ef: AND 000014f0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001505: AND 00001506: CALLER 00001507: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000151c: AND 0000151d: EQ 0000151e: ISZERO 0000151f: ISZERO 00001520: PUSH2 0x1528 00001523: JUMPI 00001524: PUSH1 0x00 00001526: DUP1 00001527: REVERT 00001528: JUMPDEST 00001529: PUSH1 0x00 0000152b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001540: AND 00001541: DUP2 00001542: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001557: AND 00001558: EQ 00001559: ISZERO 0000155a: ISZERO 0000155b: ISZERO 0000155c: PUSH2 0x1564 0000155f: JUMPI 00001560: PUSH1 0x00 00001562: DUP1 00001563: REVERT 00001564: JUMPDEST 00001565: DUP1 00001566: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000157b: AND 0000157c: PUSH1 0x00 0000157e: DUP1 0000157f: SWAP1 00001580: SLOAD 00001581: SWAP1 00001582: PUSH2 0x0100 00001585: EXP 00001586: SWAP1 00001587: DIV 00001588: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000159d: AND 0000159e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000015b3: AND 000015b4: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 000015d5: PUSH1 0x40 000015d7: MLOAD 000015d8: PUSH1 0x40 000015da: MLOAD 000015db: DUP1 000015dc: SWAP2 000015dd: SUB 000015de: SWAP1 000015df: LOG3 000015e0: DUP1 000015e1: PUSH1 0x00 000015e3: DUP1 000015e4: PUSH2 0x0100 000015e7: EXP 000015e8: DUP2 000015e9: SLOAD 000015ea: DUP2 000015eb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001600: MUL 00001601: NOT 00001602: AND 00001603: SWAP1 00001604: DUP4 00001605: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000161a: AND 0000161b: MUL 0000161c: OR 0000161d: SWAP1 0000161e: SSTORE 0000161f: POP 00001620: POP 00001621: JUMP 00001622: JUMPDEST 00001623: PUSH1 0x00 00001625: DUP1 00001626: SWAP1 00001627: SLOAD 00001628: SWAP1 00001629: PUSH2 0x0100 0000162c: EXP 0000162d: SWAP1 0000162e: DIV 0000162f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001644: AND 00001645: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000165a: AND 0000165b: CALLER 0000165c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001671: AND 00001672: EQ 00001673: ISZERO 00001674: ISZERO 00001675: PUSH2 0x167d 00001678: JUMPI 00001679: PUSH1 0x00 0000167b: DUP1 0000167c: REVERT 0000167d: JUMPDEST 0000167e: DUP1 0000167f: PUSH1 0x06 00001681: PUSH1 0x00 00001683: DUP5 00001684: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001699: AND 0000169a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000016af: AND 000016b0: DUP2 000016b1: MSTORE 000016b2: PUSH1 0x20 000016b4: ADD 000016b5: SWAP1 000016b6: DUP2 000016b7: MSTORE 000016b8: PUSH1 0x20 000016ba: ADD 000016bb: PUSH1 0x00 000016bd: KECCAK256 000016be: DUP2 000016bf: SWAP1 000016c0: SSTORE 000016c1: POP 000016c2: POP 000016c3: POP 000016c4: JUMP 000016c5: JUMPDEST 000016c6: PUSH1 0x00 000016c8: DUP1 000016c9: PUSH1 0x06 000016cb: PUSH1 0x00 000016cd: DUP5 000016ce: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000016e3: AND 000016e4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000016f9: AND 000016fa: DUP2 000016fb: MSTORE 000016fc: PUSH1 0x20 000016fe: ADD 000016ff: SWAP1 00001700: DUP2 00001701: MSTORE 00001702: PUSH1 0x20 00001704: ADD 00001705: PUSH1 0x00 00001707: KECCAK256 00001708: SLOAD 00001709: GT 0000170a: DUP1 0000170b: ISZERO 0000170c: PUSH2 0x175a 0000170f: JUMPI 00001710: POP 00001711: PUSH1 0x06 00001713: PUSH1 0x00 00001715: DUP4 00001716: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000172b: AND 0000172c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001741: AND 00001742: DUP2 00001743: MSTORE 00001744: PUSH1 0x20 00001746: ADD 00001747: SWAP1 00001748: DUP2 00001749: MSTORE 0000174a: PUSH1 0x20 0000174c: ADD 0000174d: PUSH1 0x00 0000174f: KECCAK256 00001750: SLOAD 00001751: PUSH2 0x1758 00001754: PUSH2 0x19c9 00001757: JUMP 00001758: JUMPDEST 00001759: LT 0000175a: JUMPDEST 0000175b: ISZERO 0000175c: ISZERO 0000175d: PUSH2 0x1765 00001760: JUMPI 00001761: PUSH1 0x00 00001763: DUP1 00001764: REVERT 00001765: JUMPDEST 00001766: PUSH1 0x04 00001768: PUSH1 0x00 0000176a: DUP4 0000176b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001780: AND 00001781: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001796: AND 00001797: DUP2 00001798: MSTORE 00001799: PUSH1 0x20 0000179b: ADD 0000179c: SWAP1 0000179d: DUP2 0000179e: MSTORE 0000179f: PUSH1 0x20 000017a1: ADD 000017a2: PUSH1 0x00 000017a4: KECCAK256 000017a5: PUSH1 0x00 000017a7: ADD 000017a8: SLOAD 000017a9: SWAP1 000017aa: POP 000017ab: PUSH1 0x00 000017ad: PUSH1 0x04 000017af: PUSH1 0x00 000017b1: DUP5 000017b2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000017c7: AND 000017c8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000017dd: AND 000017de: DUP2 000017df: MSTORE 000017e0: PUSH1 0x20 000017e2: ADD 000017e3: SWAP1 000017e4: DUP2 000017e5: MSTORE 000017e6: PUSH1 0x20 000017e8: ADD 000017e9: PUSH1 0x00 000017eb: KECCAK256 000017ec: PUSH1 0x00 000017ee: ADD 000017ef: DUP2 000017f0: SWAP1 000017f1: SSTORE 000017f2: POP 000017f3: PUSH2 0x185a 000017f6: DUP2 000017f7: PUSH1 0x05 000017f9: PUSH1 0x00 000017fb: PUSH1 0x04 000017fd: PUSH1 0x00 000017ff: DUP8 00001800: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001815: AND 00001816: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000182b: AND 0000182c: DUP2 0000182d: MSTORE 0000182e: PUSH1 0x20 00001830: ADD 00001831: SWAP1 00001832: DUP2 00001833: MSTORE 00001834: PUSH1 0x20 00001836: ADD 00001837: PUSH1 0x00 00001839: KECCAK256 0000183a: PUSH1 0x02 0000183c: ADD 0000183d: SLOAD 0000183e: DUP2 0000183f: MSTORE 00001840: PUSH1 0x20 00001842: ADD 00001843: SWAP1 00001844: DUP2 00001845: MSTORE 00001846: PUSH1 0x20 00001848: ADD 00001849: PUSH1 0x00 0000184b: KECCAK256 0000184c: SLOAD 0000184d: PUSH2 0x19ed 00001850: SWAP1 00001851: SWAP2 00001852: SWAP1 00001853: PUSH4 0xffffffff 00001858: AND 00001859: JUMP 0000185a: JUMPDEST 0000185b: PUSH1 0x05 0000185d: PUSH1 0x00 0000185f: PUSH1 0x04 00001861: PUSH1 0x00 00001863: DUP7 00001864: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001879: AND 0000187a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000188f: AND 00001890: DUP2 00001891: MSTORE 00001892: PUSH1 0x20 00001894: ADD 00001895: SWAP1 00001896: DUP2 00001897: MSTORE 00001898: PUSH1 0x20 0000189a: ADD 0000189b: PUSH1 0x00 0000189d: KECCAK256 0000189e: PUSH1 0x02 000018a0: ADD 000018a1: SLOAD 000018a2: DUP2 000018a3: MSTORE 000018a4: PUSH1 0x20 000018a6: ADD 000018a7: SWAP1 000018a8: DUP2 000018a9: MSTORE 000018aa: PUSH1 0x20 000018ac: ADD 000018ad: PUSH1 0x00 000018af: KECCAK256 000018b0: DUP2 000018b1: SWAP1 000018b2: SSTORE 000018b3: POP 000018b4: PUSH1 0x04 000018b6: PUSH1 0x00 000018b8: DUP4 000018b9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000018ce: AND 000018cf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000018e4: AND 000018e5: DUP2 000018e6: MSTORE 000018e7: PUSH1 0x20 000018e9: ADD 000018ea: SWAP1 000018eb: DUP2 000018ec: MSTORE 000018ed: PUSH1 0x20 000018ef: ADD 000018f0: PUSH1 0x00 000018f2: KECCAK256 000018f3: PUSH1 0x01 000018f5: ADD 000018f6: PUSH1 0x00 000018f8: SWAP1 000018f9: SLOAD 000018fa: SWAP1 000018fb: PUSH2 0x0100 000018fe: EXP 000018ff: SWAP1 00001900: DIV 00001901: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001916: AND 00001917: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000192c: AND 0000192d: PUSH2 0x08fc 00001930: DUP3 00001931: SWAP1 00001932: DUP2 00001933: ISZERO 00001934: MUL 00001935: SWAP1 00001936: PUSH1 0x40 00001938: MLOAD 00001939: PUSH1 0x00 0000193b: PUSH1 0x40 0000193d: MLOAD 0000193e: DUP1 0000193f: DUP4 00001940: SUB 00001941: DUP2 00001942: DUP6 00001943: DUP9 00001944: DUP9 00001945: CALL 00001946: SWAP4 00001947: POP 00001948: POP 00001949: POP 0000194a: POP 0000194b: ISZERO 0000194c: DUP1 0000194d: ISZERO 0000194e: PUSH2 0x195b 00001951: JUMPI 00001952: RETURNDATASIZE 00001953: PUSH1 0x00 00001955: DUP1 00001956: RETURNDATACOPY 00001957: RETURNDATASIZE 00001958: PUSH1 0x00 0000195a: REVERT 0000195b: JUMPDEST 0000195c: POP 0000195d: PUSH32 0xdfe4a8c8989865d5117985fe19383af4fbc50754c51da9e8f66b01f0d27830a0 0000197e: DUP3 0000197f: PUSH1 0x40 00001981: MLOAD 00001982: DUP1 00001983: DUP3 00001984: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001999: AND 0000199a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000019af: AND 000019b0: DUP2 000019b1: MSTORE 000019b2: PUSH1 0x20 000019b4: ADD 000019b5: SWAP2 000019b6: POP 000019b7: POP 000019b8: PUSH1 0x40 000019ba: MLOAD 000019bb: DUP1 000019bc: SWAP2 000019bd: SUB 000019be: SWAP1 000019bf: LOG1 000019c0: POP 000019c1: POP 000019c2: JUMP 000019c3: JUMPDEST 000019c4: PUSH1 0x08 000019c6: SLOAD 000019c7: DUP2 000019c8: JUMP 000019c9: JUMPDEST 000019ca: PUSH1 0x00 000019cc: TIMESTAMP 000019cd: SWAP1 000019ce: POP 000019cf: SWAP1 000019d0: JUMP 000019d1: JUMPDEST 000019d2: PUSH1 0x00 000019d4: DUP2 000019d5: DUP4 000019d6: ADD 000019d7: SWAP1 000019d8: POP 000019d9: DUP3 000019da: DUP2 000019db: LT 000019dc: ISZERO 000019dd: ISZERO 000019de: ISZERO 000019df: PUSH2 0x19e4 000019e2: JUMPI 000019e3: INVALID 000019e4: JUMPDEST 000019e5: DUP1 000019e6: SWAP1 000019e7: POP 000019e8: SWAP3 000019e9: SWAP2 000019ea: POP 000019eb: POP 000019ec: JUMP 000019ed: JUMPDEST 000019ee: PUSH1 0x00 000019f0: DUP3 000019f1: DUP3 000019f2: GT 000019f3: ISZERO 000019f4: ISZERO 000019f5: ISZERO 000019f6: PUSH2 0x19fb 000019f9: JUMPI 000019fa: INVALID 000019fb: JUMPDEST 000019fc: DUP2 000019fd: DUP4 000019fe: SUB 000019ff: SWAP1 00001a00: POP 00001a01: SWAP3 00001a02: SWAP2 00001a03: POP 00001a04: POP 00001a05: JUMP 00001a06: JUMPDEST 00001a07: DUP3 00001a08: DUP1 00001a09: SLOAD 00001a0a: PUSH1 0x01 00001a0c: DUP2 00001a0d: PUSH1 0x01 00001a0f: AND 00001a10: ISZERO 00001a11: PUSH2 0x0100 00001a14: MUL 00001a15: SUB 00001a16: AND 00001a17: PUSH1 0x02 00001a19: SWAP1 00001a1a: DIV 00001a1b: SWAP1 00001a1c: PUSH1 0x00 00001a1e: MSTORE 00001a1f: PUSH1 0x20 00001a21: PUSH1 0x00 00001a23: KECCAK256 00001a24: SWAP1 00001a25: PUSH1 0x1f 00001a27: ADD 00001a28: PUSH1 0x20 00001a2a: SWAP1 00001a2b: DIV 00001a2c: DUP2 00001a2d: ADD 00001a2e: SWAP3 00001a2f: DUP3 00001a30: PUSH1 0x1f 00001a32: LT 00001a33: PUSH2 0x1a47 00001a36: JUMPI 00001a37: DUP1 00001a38: MLOAD 00001a39: PUSH1 0xff 00001a3b: NOT 00001a3c: AND 00001a3d: DUP4 00001a3e: DUP1 00001a3f: ADD 00001a40: OR 00001a41: DUP6 00001a42: SSTORE 00001a43: PUSH2 0x1a75 00001a46: JUMP 00001a47: JUMPDEST 00001a48: DUP3 00001a49: DUP1 00001a4a: ADD 00001a4b: PUSH1 0x01 00001a4d: ADD 00001a4e: DUP6 00001a4f: SSTORE 00001a50: DUP3 00001a51: ISZERO 00001a52: PUSH2 0x1a75 00001a55: JUMPI 00001a56: SWAP2 00001a57: DUP3 00001a58: ADD 00001a59: JUMPDEST 00001a5a: DUP3 00001a5b: DUP2 00001a5c: GT 00001a5d: ISZERO 00001a5e: PUSH2 0x1a74 00001a61: JUMPI 00001a62: DUP3 00001a63: MLOAD 00001a64: DUP3 00001a65: SSTORE 00001a66: SWAP2 00001a67: PUSH1 0x20 00001a69: ADD 00001a6a: SWAP2 00001a6b: SWAP1 00001a6c: PUSH1 0x01 00001a6e: ADD 00001a6f: SWAP1 00001a70: PUSH2 0x1a59 00001a73: JUMP 00001a74: JUMPDEST 00001a75: JUMPDEST 00001a76: POP 00001a77: SWAP1 00001a78: POP 00001a79: PUSH2 0x1a82 00001a7c: SWAP2 00001a7d: SWAP1 00001a7e: PUSH2 0x1a86 00001a81: JUMP 00001a82: JUMPDEST 00001a83: POP 00001a84: SWAP1 00001a85: JUMP 00001a86: JUMPDEST 00001a87: PUSH2 0x1aa8 00001a8a: SWAP2 00001a8b: SWAP1 00001a8c: JUMPDEST 00001a8d: DUP1 00001a8e: DUP3 00001a8f: GT 00001a90: ISZERO 00001a91: PUSH2 0x1aa4 00001a94: JUMPI 00001a95: PUSH1 0x00 00001a97: DUP2 00001a98: PUSH1 0x00 00001a9a: SWAP1 00001a9b: SSTORE 00001a9c: POP 00001a9d: PUSH1 0x01 00001a9f: ADD 00001aa0: PUSH2 0x1a8c 00001aa3: JUMP 00001aa4: JUMPDEST 00001aa5: POP 00001aa6: SWAP1 00001aa7: JUMP 00001aa8: JUMPDEST 00001aa9: SWAP1 00001aaa: JUMP 00001aab: STOP 00001aac: LOG1 00001aad: PUSH6 0x627a7a723058 00001ab4: KECCAK256 00001ab5: UNKNOWN(0xC9) 00001ab6: REVERT 00001ab7: DUP5 00001ab8: UNKNOWN(0xE1) 00001ab9: PUSH32
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | other | cast | SELFDESTRUCT present | 85 | no | — |
viewevidence_json{
"notes": "selfdestruct can remove contract code and send funds; review reachability",
"selfdestruct_count": 1
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0x6e9f30e693165218cd443f5156a3590c7403a48a0df663d7ff8618eff43e39ef
call_targets:
0xb9fbe1315824a466d05df4882ffac592ce9c009a
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x6e9f30e693165218cd443f5156a3590c7403a48a0df663d7ff8618eff43e39ef",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xb9fbe1315824a466d05df4882ffac592ce9c009a"
],
"matched_probe": null,
"target_varies": false,
"classification": "constant_target"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xffffffff",
"selector": "0xffffffff",
"calldata_variants": [
"0xffffffff",
"0xffffffff0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0ef845df",
"selector": "0x0ef845df",
"calldata_variants": [
"0x0ef845df",
"0x0ef845df0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0fb5a6b4",
"selector": "0x0fb5a6b4",
"calldata_variants": [
"0x0fb5a6b4",
"0x0fb5a6b40000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x146ca531",
"selector": "0x146ca531",
"calldata_variants": [
"0x146ca531",
"0x146ca5310000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x38af3eed",
"selector": "0x38af3eed",
"calldata_variants": [
"0x38af3eed",
"0x38af3eed0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3f19d043",
"selector": "0x3f19d043",
"calldata_variants": [
"0x3f19d043",
"0x3f19d0430000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x41c0e1b5",
"selector": "0x41c0e1b5",
"calldata_variants": [
"0x41c0e1b5",
"0x41c0e1b50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x51dc78df",
"selector": "0x51dc78df",
"calldata_variants": [
"0x51dc78df",
"0x51dc78df0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 4969,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 6469,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 2,
"guards_detected": [
{
"pc": 3638,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 4768,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 5149,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 5382,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 5723,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
],
"untrusted_call_count": 2
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0x6e9f30e693165218cd443f5156a3590c7403a48a0df663d7ff8618eff43e39ef
call_targets:
0xb9fbe1315824a466d05df4882ffac592ce9c009a
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x6e9f30e693165218cd443f5156a3590c7403a48a0df663d7ff8618eff43e39ef",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xb9fbe1315824a466d05df4882ffac592ce9c009a"
],
"matched_probe": null,
"target_varies": false,
"classification": "constant_target"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xffffffff",
"selector": "0xffffffff",
"calldata_variants": [
"0xffffffff",
"0xffffffff0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0ef845df",
"selector": "0x0ef845df",
"calldata_variants": [
"0x0ef845df",
"0x0ef845df0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0fb5a6b4",
"selector": "0x0fb5a6b4",
"calldata_variants": [
"0x0fb5a6b4",
"0x0fb5a6b40000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x146ca531",
"selector": "0x146ca531",
"calldata_variants": [
"0x146ca531",
"0x146ca5310000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x38af3eed",
"selector": "0x38af3eed",
"calldata_variants": [
"0x38af3eed",
"0x38af3eed0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3f19d043",
"selector": "0x3f19d043",
"calldata_variants": [
"0x3f19d043",
"0x3f19d0430000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x41c0e1b5",
"selector": "0x41c0e1b5",
"calldata_variants": [
"0x41c0e1b5",
"0x41c0e1b50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x51dc78df",
"selector": "0x51dc78df",
"calldata_variants": [
"0x51dc78df",
"0x51dc78df0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 4969,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 6469,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 2,
"guards_detected": [
{
"pc": 3638,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 4768,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 5149,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 5382,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 5723,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
]
}
|
| medium | other | detector | SELFDESTRUCT reachable | 45 | no | no |
viewtrace_id: 0x1ec2ac7a060eea8bb678a966b125509cc04059dbb142fc5aff470bdcf1337e65
validation_json{
"sink": "SELFDESTRUCT",
"errors": 0,
"status": "unknown",
"attempts": 32,
"trace_id": "0x1ec2ac7a060eea8bb678a966b125509cc04059dbb142fc5aff470bdcf1337e65",
"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": "0xffffffff",
"selector": "0xffffffff",
"calldata_variants": [
"0xffffffff",
"0xffffffff0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0ef845df",
"selector": "0x0ef845df",
"calldata_variants": [
"0x0ef845df",
"0x0ef845df0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0fb5a6b4",
"selector": "0x0fb5a6b4",
"calldata_variants": [
"0x0fb5a6b4",
"0x0fb5a6b40000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x146ca531",
"selector": "0x146ca531",
"calldata_variants": [
"0x146ca531",
"0x146ca5310000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x38af3eed",
"selector": "0x38af3eed",
"calldata_variants": [
"0x38af3eed",
"0x38af3eed0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3f19d043",
"selector": "0x3f19d043",
"calldata_variants": [
"0x3f19d043",
"0x3f19d0430000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x41c0e1b5",
"selector": "0x41c0e1b5",
"calldata_variants": [
"0x41c0e1b5",
"0x41c0e1b50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x51dc78df",
"selector": "0x51dc78df",
"calldata_variants": [
"0x51dc78df",
"0x51dc78df0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 3638,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 4768,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 5149,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 5382,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 5723,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
],
"selfdestruct_count": 1
}
|