8f037ff8-7b26-40c9-a075-d3ec49fd1853
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 |
|---|---|---|---|---|
| 31613 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 111476 | artifact.fetch | failed | 1 / 3 | 1 week ago |
| 111477 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 111478 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 111479 | capability.graph | complete | 1 / 3 | 1 week ago |
| 111480 | detector.run | complete | 1 / 3 | 1 week ago |
| 111481 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:854500] OpenAI Codex v0.77.0 (research preview)
[codex:854500] --------
[codex:854500] workdir: /tmp/codex-multi-etfb5o0w
[codex:854500] model: gpt-5.2-codex
[codex:854500] provider: openai
[codex:854500] approval: never
[codex:854500] sandbox: read-only
[codex:854500] reasoning effort: xhigh
[codex:854500] reasoning summaries: auto
[codex:854500] session id: 019b8847-e1ed-7d92-b710-a75ea5c25229
[codex:854500] --------
[codex:854500] user
[codex:854500] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:854500]
[codex:854500] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:854500]
[codex:854500] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:854500] - Gas inefficiency, code quality, naming, or best practices
[codex:854500] - Theoretical vulnerabilities without a clear extraction path
[codex:854500] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:854500] - Front-running unless it enables theft beyond MEV
[codex:854500] - DoS, griefing, or issues that don't result in attacker profit
[codex:854500] - Missing events, view function issues, or informational findings
[codex:854500]
[codex:854500] HIGH-VALUE PATTERNS TO HUNT:
[codex:854500] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:854500] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:854500] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:854500] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:854500] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:854500] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:854500] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:854500] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:854500] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:854500]
[codex:854500] For each finding, you MUST provide:
[codex:854500] 1. Exact file and line numbers of vulnerable code
[codex:854500] 2. Step-by-step exploit transaction sequence
[codex:854500] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:854500]
[codex:854500] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:854500]
[codex:854500] Output MUST be valid JSON matching the provided schema.
[codex:854500] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:854500] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:854500] mcp startup: no servers
[codex:854500]
[codex:854500] thinking
[codex:854500] **Preparing to audit task requirements**
[codex:854500] exec
[codex:854500] /bin/bash -lc ls in /tmp/codex-multi-etfb5o0w succeeded in 5ms:
[codex:854500] AUDIT_BUNDLE.txt
[codex:854500] codex-output-schema.json
[codex:854500] contracts
[codex:854500]
[codex:854500] thinking
[codex:854500] **Reading AUDIT_BUNDLE.txt**
[codex:854500] exec
[codex:854500] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-etfb5o0w succeeded in 5ms:
[codex:854500] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:854500]
[codex:854500] ================================================================================
[codex:854500] FILE: contracts/contracts/pendle/contracts/LiquidityMining/VeDistributor/PendleFeeDistributorV2.sol
[codex:854500] ================================================================================
[codex:854500] // SPDX-License-Identifier: GPL-3.0-or-later
[codex:854500] pragma solidity 0.8.17;
[codex:854500]
[codex:854500] import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:854500] import "@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol";
[codex:854500] import "@openzeppelin/contracts/utils/cryptography/MerkleProof.sol";
[codex:854500] import "../../core/libraries/BoringOwnableUpgradeable.sol";
[codex:854500] import "../../core/libraries/TokenHelper.sol";
[codex:854500] import "../../core/libraries/Errors.sol";
[codex:854500] import "../../interfaces/IPFeeDistributorV2.sol";
[codex:854500]
[codex:854500] contract PendleFeeDistributorV2 is
[codex:854500] UUPSUpgradeable,
[codex:854500] BoringOwnableUpgradeable,
[codex:854500] IPFeeDistributorV2,
[codex:854500]
[codex:854500]
[codex:854500] thinking
[codex:854500] **Analyzing potential vulnerabilities in fee distributor contract**
[codex:854500] thinking
[codex:854500] **Preparing final audit result JSON**
[codex:854500]
[codex:854500] I'll generate a JSON output indicating no exploitable issues found, following the schema with no_findings true, a brief summary, and an empty findings array.
[codex:854500] codex
[codex:854500] {"no_findings":true,"summary":"No concrete, exploitable profit paths found in the provided sources.","findings":[]}
[codex:854500] tokens used
[codex:854500] 14,150
[codex:854500] {"no_findings":true,"summary":"No concrete, exploitable profit paths found in the provided sources.","findings":[]}
{
"codex": {
"ran_at": "2026-01-04T09:14:15.356553+00:00",
"returncode": 0
},
"summary": "No concrete, exploitable profit paths found in the provided sources.",
"raw_final": {
"summary": "No concrete, exploitable profit paths found in the provided sources.",
"findings": [],
"no_findings": true
},
"no_findings": true,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: DUP1 00000008: CALLDATASIZE 00000009: LT 0000000a: ISZERO 0000000b: PUSH2 0x001d 0000000e: JUMPI 0000000f: JUMPDEST 00000010: POP 00000011: CALLDATASIZE 00000012: ISZERO 00000013: PUSH2 0x001b 00000016: JUMPI 00000017: PUSH1 0x00 00000019: DUP1 0000001a: REVERT 0000001b: JUMPDEST 0000001c: STOP 0000001d: JUMPDEST 0000001e: PUSH1 0x00 00000020: CALLDATALOAD 00000021: PUSH1 0xe0 00000023: SHR 00000024: DUP1 00000025: PUSH4 0x053f6a70 0000002a: EQ 0000002b: PUSH2 0x18e4 0000002e: JUMPI 0000002f: DUP1 00000030: PUSH4 0x078dfbe7 00000035: EQ 00000036: PUSH2 0x1758 00000039: JUMPI 0000003a: DUP1 0000003b: PUSH4 0x0ef863f6 00000040: EQ 00000041: PUSH2 0x166c 00000044: JUMPI 00000045: DUP1 00000046: PUSH4 0x2eb4a7ab 0000004b: EQ 0000004c: PUSH2 0x1630 0000004f: JUMPI 00000050: DUP1 00000051: PUSH4 0x3659cfe6 00000056: EQ 00000057: PUSH2 0x1226 0000005a: JUMPI 0000005b: DUP1 0000005c: PUSH4 0x4e71e0c8 00000061: EQ 00000062: PUSH2 0x1119 00000065: JUMPI 00000066: DUP1 00000067: PUSH4 0x4f1ef286 0000006c: EQ 0000006d: PUSH2 0x0d02 00000070: JUMPI 00000071: DUP1 00000072: PUSH4 0x52d1902d 00000077: EQ 00000078: PUSH2 0x0be7 0000007b: JUMPI 0000007c: DUP1 0000007d: PUSH4 0x5305f829 00000082: EQ 00000083: PUSH2 0x0b7f 00000086: JUMPI 00000087: DUP1 00000088: PUSH4 0x6157daba 0000008d: EQ 0000008e: PUSH2 0x09b9 00000091: JUMPI 00000092: DUP1 00000093: PUSH4 0x6db69ec5 00000098: EQ 00000099: PUSH2 0x08dd 0000009c: JUMPI 0000009d: DUP1 0000009e: PUSH4 0x8129fc1c 000000a3: EQ 000000a4: PUSH2 0x0644 000000a7: JUMPI 000000a8: DUP1 000000a9: PUSH4 0x8da5cb5b 000000ae: EQ 000000af: PUSH2 0x05f2 000000b2: JUMPI 000000b3: DUP1 000000b4: PUSH4 0xafda4e5c 000000b9: EQ 000000ba: PUSH2 0x035d 000000bd: JUMPI 000000be: DUP1 000000bf: PUSH4 0xc884ef83 000000c4: EQ 000000c5: PUSH2 0x02f8 000000c8: JUMPI 000000c9: DUP1 000000ca: PUSH4 0xe30c3978 000000cf: EQ 000000d0: PUSH2 0x02a6 000000d3: JUMPI 000000d4: PUSH4 0xff5b4066 000000d9: SUB 000000da: PUSH2 0x000f 000000dd: JUMPI 000000de: CALLVALUE 000000df: PUSH2 0x02a1 000000e2: JUMPI 000000e3: PUSH2 0x00eb 000000e6: CALLDATASIZE 000000e7: PUSH2 0x1b28 000000ea: JUMP 000000eb: JUMPDEST 000000ec: SWAP2 000000ed: SWAP1 000000ee: SWAP3 000000ef: PUSH1 0x00 000000f1: SWAP3 000000f2: PUSH2 0x00fa 000000f5: DUP2 000000f6: PUSH2 0x1ec5 000000f9: JUMP 000000fa: JUMPDEST 000000fb: SWAP5 000000fc: PUSH1 0x00 000000fe: JUMPDEST 000000ff: DUP3 00000100: DUP2 00000101: LT 00000102: PUSH2 0x01ba 00000105: JUMPI 00000106: POP 00000107: POP 00000108: POP 00000109: CALLER 0000010a: PUSH1 0x00 0000010c: MSTORE 0000010d: PUSH1 0x33 0000010f: PUSH1 0x20 00000111: MSTORE 00000112: PUSH1 0x40 00000114: PUSH1 0x00 00000116: KECCAK256 00000117: DUP4 00000118: DUP2 00000119: SLOAD 0000011a: ADD 0000011b: SWAP1 0000011c: SSTORE 0000011d: PUSH1 0x40 0000011f: PUSH1 0x00 00000121: KECCAK256 00000122: SLOAD 00000123: PUSH1 0x34 00000125: PUSH1 0x20 00000127: MSTORE 00000128: PUSH1 0x01 0000012a: PUSH1 0x40 0000012c: PUSH1 0x00 0000012e: KECCAK256 0000012f: ADD 00000130: SLOAD 00000131: LT 00000132: PUSH2 0x018c 00000135: JUMPI 00000136: POP 00000137: DUP2 00000138: PUSH2 0x0140 0000013b: SWAP2 0000013c: PUSH2 0x2183 0000013f: JUMP 00000140: JUMPDEST 00000141: PUSH1 0x40 00000143: MLOAD 00000144: DUP2 00000145: DUP2 00000146: MSTORE 00000147: PUSH32 0xd8138f8a3f377c5259ca548e70e4c2de94f129f5a11036a15b69513cba2b426a 00000168: PUSH1 0x20 0000016a: CALLER 0000016b: SWAP3 0000016c: LOG2 0000016d: PUSH2 0x0188 00000170: PUSH1 0x40 00000172: MLOAD 00000173: SWAP3 00000174: DUP4 00000175: SWAP3 00000176: DUP4 00000177: MSTORE 00000178: PUSH1 0x40 0000017a: PUSH1 0x20 0000017c: DUP5 0000017d: ADD 0000017e: MSTORE 0000017f: PUSH1 0x40 00000181: DUP4 00000182: ADD 00000183: SWAP1 00000184: PUSH2 0x1b97 00000187: JUMP 00000188: JUMPDEST 00000189: SUB 0000018a: SWAP1 0000018b: RETURN 0000018c: JUMPDEST 0000018d: PUSH1 0x01 0000018f: SWAP1 00000190: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 000001b1: PUSH1 0x00 000001b3: MSTORE 000001b4: MSTORE 000001b5: PUSH1 0x24 000001b7: PUSH1 0x00 000001b9: REVERT 000001ba: JUMPDEST 000001bb: CALLER 000001bc: PUSH1 0x00 000001be: MSTORE 000001bf: PUSH1 0x34 000001c1: SWAP6 000001c2: PUSH1 0x20 000001c4: DUP8 000001c5: DUP2 000001c6: MSTORE 000001c7: PUSH1 0x40 000001c9: PUSH1 0x00 000001cb: KECCAK256 000001cc: SWAP2 000001cd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000001e2: SWAP3 000001e3: DUP4 000001e4: PUSH2 0x01f6 000001e7: PUSH2 0x01f1 000001ea: DUP8 000001eb: DUP11 000001ec: DUP11 000001ed: PUSH2 0x1f14 000001f0: JUMP 000001f1: JUMPDEST 000001f2: PUSH2 0x1f53 000001f5: JUMP 000001f6: JUMPDEST 000001f7: AND 000001f8: PUSH1 0x00 000001fa: MSTORE 000001fb: DUP3 000001fc: MSTORE 000001fd: PUSH1 0x40 000001ff: PUSH1 0x00 00000201: KECCAK256 00000202: SLOAD 00000203: PUSH2 0x020c 00000206: DUP6 00000207: DUP13 00000208: PUSH2 0x1f74 0000020b: JUMP 0000020c: JUMPDEST 0000020d: MSTORE 0000020e: PUSH2 0x0217 00000211: DUP5 00000212: DUP12 00000213: PUSH2 0x1f74 00000216: JUMP 00000217: JUMPDEST 00000218: MLOAD 00000219: ISZERO 0000021a: PUSH2 0x0295 0000021d: JUMPI 0000021e: SWAP1 0000021f: DUP4 00000220: SWAP3 00000221: SWAP2 00000222: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00000243: PUSH2 0x024e 00000246: PUSH1 0x01 00000248: SWAP7 00000249: DUP14 0000024a: PUSH2 0x1f74 0000024d: JUMP 0000024e: JUMPDEST 0000024f: MLOAD 00000250: ADD 00000251: PUSH2 0x025a 00000254: DUP6 00000255: DUP14 00000256: PUSH2 0x1f74 00000259: JUMP 0000025a: JUMPDEST 0000025b: MSTORE 0000025c: PUSH2 0x0265 0000025f: DUP5 00000260: DUP13 00000261: PUSH2 0x1f74 00000264: JUMP 00000265: JUMPDEST 00000266: MLOAD 00000267: ADD 00000268: SWAP9 00000269: CALLER 0000026a: PUSH1 0x00 0000026c: MSTORE 0000026d: DUP2 0000026e: MSTORE 0000026f: PUSH1 0x40 00000271: PUSH1 0x00 00000273: KECCAK256 00000274: SWAP2 00000275: PUSH2 0x0282 00000278: PUSH2 0x01f1 0000027b: DUP6 0000027c: DUP10 0000027d: DUP10 0000027e: PUSH2 0x1f14 00000281: JUMP 00000282: JUMPDEST 00000283: AND 00000284: PUSH1 0x00 00000286: MSTORE 00000287: MSTORE 00000288: DUP2 00000289: PUSH1 0x40 0000028b: PUSH1 0x00 0000028d: KECCAK256 0000028e: SSTORE 0000028f: JUMPDEST 00000290: ADD 00000291: PUSH2 0x00fe 00000294: JUMP 00000295: JUMPDEST 00000296: SWAP8 00000297: POP 00000298: POP 00000299: POP 0000029a: PUSH1 0x01 0000029c: SWAP1 0000029d: PUSH2 0x028f 000002a0: JUMP 000002a1: JUMPDEST 000002a2: PUSH1 0x00 000002a4: DUP1 000002a5: REVERT 000002a6: JUMPDEST 000002a7: CALLVALUE 000002a8: PUSH2 0x02a1 000002ab: JUMPI 000002ac: PUSH1 0x00 000002ae: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 000002cf: CALLDATASIZE 000002d0: ADD 000002d1: SLT 000002d2: PUSH2 0x02a1 000002d5: JUMPI 000002d6: PUSH1 0x20 000002d8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000002ed: PUSH1 0x01 000002ef: SLOAD 000002f0: AND 000002f1: PUSH1 0x40 000002f3: MLOAD 000002f4: SWAP1 000002f5: DUP2 000002f6: MSTORE 000002f7: RETURN 000002f8: JUMPDEST 000002f9: CALLVALUE 000002fa: PUSH2 0x02a1 000002fd: JUMPI 000002fe: PUSH1 0x20 00000300: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 00000321: CALLDATASIZE 00000322: ADD 00000323: SLT 00000324: PUSH2 0x02a1 00000327: JUMPI 00000328: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000033d: PUSH2 0x0344 00000340: PUSH2 0x1a0e 00000343: JUMP 00000344: JUMPDEST 00000345: AND 00000346: PUSH1 0x00 00000348: MSTORE 00000349: PUSH1 0x33 0000034b: PUSH1 0x20 0000034d: MSTORE 0000034e: PUSH1 0x20 00000350: PUSH1 0x40 00000352: PUSH1 0x00 00000354: KECCAK256 00000355: SLOAD 00000356: PUSH1 0x40 00000358: MLOAD 00000359: SWAP1 0000035a: DUP2 0000035b: MSTORE 0000035c: RETURN 0000035d: JUMPDEST 0000035e: POP 0000035f: CALLVALUE 00000360: PUSH2 0x02a1 00000363: JUMPI 00000364: PUSH1 0x20 00000366: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 00000387: CALLDATASIZE 00000388: ADD 00000389: SLT 0000038a: PUSH2 0x02a1 0000038d: JUMPI 0000038e: DUP1 0000038f: CALLDATALOAD 00000390: PUSH8 0xffffffffffffffff 00000399: DUP2 0000039a: GT 0000039b: PUSH2 0x02a1 0000039e: JUMPI 0000039f: PUSH2 0x03ab 000003a2: SWAP1 000003a3: CALLDATASIZE 000003a4: SWAP1 000003a5: DUP4 000003a6: ADD 000003a7: PUSH2 0x1a31 000003aa: JUMP 000003ab: JUMPDEST 000003ac: SWAP1 000003ad: PUSH1 0x00 000003af: JUMPDEST 000003b0: DUP3 000003b1: DUP2 000003b2: LT 000003b3: PUSH2 0x03b8 000003b6: JUMPI 000003b7: STOP 000003b8: JUMPDEST 000003b9: DUP1 000003ba: PUSH1 0x05 000003bc: SHL 000003bd: DUP3 000003be: ADD 000003bf: CALLDATALOAD 000003c0: SWAP1 000003c1: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81 000003e2: DUP4 000003e3: CALLDATASIZE 000003e4: SUB 000003e5: ADD 000003e6: DUP3 000003e7: SLT 000003e8: ISZERO 000003e9: PUSH2 0x02a1 000003ec: JUMPI 000003ed: PUSH2 0x040f 000003f0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000405: PUSH1 0x00 00000407: SLOAD 00000408: AND 00000409: CALLER 0000040a: EQ 0000040b: PUSH2 0x20ca 0000040e: JUMP 0000040f: JUMPDEST 00000410: PUSH2 0x041a 00000413: DUP3 00000414: DUP5 00000415: ADD 00000416: PUSH2 0x1f53 00000419: JUMP 0000041a: JUMPDEST 0000041b: SWAP2 0000041c: PUSH2 0x042b 0000041f: DUP5 00000420: DUP3 00000421: ADD 00000422: PUSH1 0x60 00000424: DUP2 00000425: ADD 00000426: SWAP1 00000427: PUSH2 0x212f 0000042a: JUMP 0000042b: JUMPDEST 0000042c: SWAP1 0000042d: SWAP2 0000042e: PUSH2 0x043d 00000431: DUP7 00000432: DUP3 00000433: ADD 00000434: PUSH1 0x40 00000436: DUP2 00000437: ADD 00000438: SWAP1 00000439: PUSH2 0x212f 0000043c: JUMP 0000043d: JUMPDEST 0000043e: SWAP2 0000043f: SWAP1 00000440: POP 00000441: PUSH2 0x0450 00000444: DUP8 00000445: DUP3 00000446: ADD 00000447: PUSH1 0x20 00000449: DUP2 0000044a: ADD 0000044b: SWAP1 0000044c: PUSH2 0x212f 0000044f: JUMP 00000450: JUMPDEST 00000451: SWAP3 00000452: SWAP1 00000453: SWAP4 00000454: DUP1 00000455: DUP3 00000456: SUB 00000457: PUSH2 0x05c9 0000045a: JUMPI 0000045b: SWAP5 0000045c: SWAP2 0000045d: SWAP1 0000045e: PUSH1 0x00 00000460: SWAP6 00000461: PUSH1 0x00 00000463: SWAP4 00000464: JUMPDEST 00000465: DUP3 00000466: DUP6 00000467: LT 00000468: PUSH2 0x0532 0000046b: JUMPI 0000046c: POP 0000046d: POP 0000046e: POP 0000046f: POP 00000470: POP 00000471: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000486: DUP6 00000487: AND 00000488: PUSH1 0x00 0000048a: MSTORE 0000048b: PUSH1 0x34 0000048d: DUP1 0000048e: PUSH1 0x20 00000490: MSTORE 00000491: PUSH2 0x04a8 00000494: PUSH1 0x01 00000496: SWAP3 00000497: DUP6 00000498: DUP5 00000499: PUSH1 0x40 0000049b: PUSH1 0x00 0000049d: KECCAK256 0000049e: ADD 0000049f: SLOAD 000004a0: ADD 000004a1: SWAP5 000004a2: DUP6 000004a3: DUP10 000004a4: PUSH2 0x1f88 000004a7: JUMP 000004a8: JUMPDEST 000004a9: ISZERO 000004aa: PUSH2 0x0509 000004ad: JUMPI 000004ae: DUP6 000004af: PUSH32 0x4d490fc5b632b5a4319f50b51d1716cf9c227f26dfb9f1c3ea96a1d0707af184 000004d0: SWAP4 000004d1: PUSH1 0x20 000004d3: SWAP4 000004d4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000004e9: SWAP4 000004ea: DUP5 000004eb: PUSH1 0x01 000004ed: SWAP11 000004ee: AND 000004ef: PUSH1 0x00 000004f1: MSTORE 000004f2: DUP6 000004f3: MSTORE 000004f4: PUSH1 0x40 000004f6: PUSH1 0x00 000004f8: KECCAK256 000004f9: ADD 000004fa: SSTORE 000004fb: PUSH1 0x40 000004fd: MLOAD 000004fe: SWAP5 000004ff: DUP6 00000500: MSTORE 00000501: AND 00000502: SWAP3 00000503: LOG2 00000504: ADD 00000505: PUSH2 0x03af 00000508: JUMP 00000509: JUMPDEST 0000050a: DUP9 0000050b: PUSH1 0x40 0000050d: MLOAD 0000050e: PUSH32 0xb05e92fa00000000000000000000000000000000000000000000000000000000 0000052f: DUP2 00000530: MSTORE 00000531: REVERT 00000532: JUMPDEST 00000533: SWAP1 00000534: SWAP2 00000535: SWAP3 00000536: SWAP4 00000537: SWAP7 00000538: PUSH1 0x01 0000053a: SWAP1 0000053b: PUSH2 0x0545 0000053e: DUP10 0000053f: DUP6 00000540: DUP6 00000541: PUSH2 0x1f14 00000544: JUMP 00000545: JUMPDEST 00000546: CALLDATALOAD 00000547: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000055c: DUP13 0000055d: AND 0000055e: PUSH1 0x00 00000560: MSTORE 00000561: PUSH1 0x34 00000563: PUSH1 0x20 00000565: MSTORE 00000566: DUP13 00000567: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000057c: PUSH2 0x059f 0000057f: PUSH2 0x01f1 00000582: DUP14 00000583: PUSH2 0x0599 00000586: PUSH1 0x40 00000588: PUSH1 0x00 0000058a: KECCAK256 0000058b: SWAP6 0000058c: DUP14 0000058d: PUSH1 0x40 0000058f: DUP2 00000590: DUP4 00000591: ADD 00000592: ADD 00000593: SWAP2 00000594: ADD 00000595: PUSH2 0x212f 00000598: JUMP 00000599: JUMPDEST 0000059a: SWAP1 0000059b: PUSH2 0x1f14 0000059e: JUMP 0000059f: JUMPDEST 000005a0: AND 000005a1: PUSH1 0x00 000005a3: MSTORE 000005a4: PUSH1 0x20 000005a6: MSTORE 000005a7: PUSH1 0x40 000005a9: PUSH1 0x00 000005ab: KECCAK256 000005ac: SWAP1 000005ad: DUP2 000005ae: SLOAD 000005af: ADD 000005b0: SWAP1 000005b1: SSTORE 000005b2: PUSH2 0x05bc 000005b5: DUP10 000005b6: DUP6 000005b7: DUP6 000005b8: PUSH2 0x1f14 000005bb: JUMP 000005bc: JUMPDEST 000005bd: CALLDATALOAD 000005be: ADD 000005bf: SWAP8 000005c0: ADD 000005c1: SWAP4 000005c2: SWAP3 000005c3: SWAP2 000005c4: SWAP1 000005c5: PUSH2 0x0464 000005c8: JUMP 000005c9: JUMPDEST 000005ca: DUP11 000005cb: PUSH1 0x40 000005cd: MLOAD 000005ce: PUSH32 0xa24a13a600000000000000000000000000000000000000000000000000000000 000005ef: DUP2 000005f0: MSTORE 000005f1: REVERT 000005f2: JUMPDEST 000005f3: CALLVALUE 000005f4: PUSH2 0x02a1 000005f7: JUMPI 000005f8: PUSH1 0x00 000005fa: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 0000061b: CALLDATASIZE 0000061c: ADD 0000061d: SLT 0000061e: PUSH2 0x02a1 00000621: JUMPI 00000622: PUSH1 0x20 00000624: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000639: PUSH1 0x00 0000063b: SLOAD 0000063c: AND 0000063d: PUSH1 0x40 0000063f: MLOAD 00000640: SWAP1 00000641: DUP2 00000642: MSTORE 00000643: RETURN 00000644: JUMPDEST 00000645: POP 00000646: CALLVALUE 00000647: PUSH2 0x02a1 0000064a: JUMPI 0000064b: PUSH1 0x00 0000064d: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 0000066e: CALLDATASIZE 0000066f: ADD 00000670: SLT 00000671: PUSH2 0x02a1 00000674: JUMPI 00000675: PUSH1 0x01 00000677: SWAP1 00000678: DUP2 00000679: SLOAD 0000067a: PUSH1 0xff 0000067c: DUP2 0000067d: PUSH1 0xa8 0000067f: SHR 00000680: AND 00000681: ISZERO 00000682: SWAP1 00000683: DUP2 00000684: DUP1 00000685: SWAP3 00000686: PUSH2 0x08ce 00000689: JUMPI 0000068a: JUMPDEST 0000068b: DUP1 0000068c: ISZERO 0000068d: PUSH2 0x08b5 00000690: JUMPI 00000691: JUMPDEST 00000692: ISZERO 00000693: PUSH2 0x0831 00000696: JUMPI 00000697: DUP2 00000698: PUSH21 0x010000000000000000000000000000000000000000 000006ae: PUSH32 0xffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff 000006cf: DUP4 000006d0: AND 000006d1: OR 000006d2: DUP6 000006d3: SSTORE 000006d4: PUSH2 0x07ef 000006d7: JUMPI 000006d8: JUMPDEST 000006d9: POP 000006da: DUP3 000006db: SLOAD 000006dc: SWAP2 000006dd: PUSH1 0xff 000006df: DUP4 000006e0: PUSH1 0xa8 000006e2: SHR 000006e3: AND 000006e4: ISZERO 000006e5: PUSH2 0x076b 000006e8: JUMPI 000006e9: POP 000006ea: CALLER 000006eb: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 0000070c: PUSH1 0x00 0000070e: SLOAD 0000070f: AND 00000710: OR 00000711: PUSH1 0x00 00000713: SSTORE 00000714: PUSH2 0x0719 00000717: JUMPI 00000718: STOP 00000719: JUMPDEST 0000071a: PUSH32 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498 0000073b: SWAP2 0000073c: PUSH32 0xffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff 0000075d: PUSH1 0x20 0000075f: SWAP3 00000760: AND 00000761: DUP2 00000762: SSTORE 00000763: PUSH1 0x40 00000765: MLOAD 00000766: SWAP1 00000767: DUP2 00000768: MSTORE 00000769: LOG1 0000076a: STOP 0000076b: JUMPDEST 0000076c: PUSH1 0x84 0000076e: SWAP1 0000076f: PUSH1 0x20 00000771: PUSH1 0x40 00000773: MLOAD 00000774: SWAP2 00000775: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000796: DUP4 00000797: MSTORE 00000798: DUP3 00000799: ADD 0000079a: MSTORE 0000079b: PUSH1 0x2b 0000079d: PUSH1 0x24 0000079f: DUP3 000007a0: ADD 000007a1: MSTORE 000007a2: PUSH32 0x496e697469616c697a61626c653a20636f6e7472616374206973206e6f742069 000007c3: PUSH1 0x44 000007c5: DUP3 000007c6: ADD 000007c7: MSTORE 000007c8: PUSH32 0x6e697469616c697a696e67000000000000000000000000000000000000000000 000007e9: PUSH1 0x64 000007eb: DUP3 000007ec: ADD 000007ed: MSTORE 000007ee: REVERT 000007ef: JUMPDEST 000007f0: PUSH32 0xffffffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffff 00000811: AND 00000812: PUSH22 0x01010000000000000000000000000000000000000000 00000829: OR 0000082a: DUP4 0000082b: SSTORE 0000082c: CODESIZE 0000082d: PUSH2 0x06d8 00000830: JUMP 00000831: JUMPDEST 00000832: PUSH1 0x84 00000834: DUP4 00000835: PUSH1 0x20 00000837: PUSH1 0x40 00000839: MLOAD 0000083a: SWAP2 0000083b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000085c: DUP4 0000085d: MSTORE 0000085e: DUP3 0000085f: ADD 00000860: MSTORE 00000861: PUSH1 0x2e 00000863: PUSH1 0x24 00000865: DUP3 00000866: ADD 00000867: MSTORE 00000868: PUSH32 0x496e697469616c697a61626c653a20636f6e747261637420697320616c726561 00000889: PUSH1 0x44 0000088b: DUP3 0000088c: ADD 0000088d: MSTORE 0000088e: PUSH32 0x647920696e697469616c697a6564000000000000000000000000000000000000 000008af: PUSH1 0x64 000008b1: DUP3 000008b2: ADD 000008b3: MSTORE 000008b4: REVERT 000008b5: JUMPDEST 000008b6: POP 000008b7: ADDRESS 000008b8: EXTCODESIZE 000008b9: ISZERO 000008ba: DUP1 000008bb: ISZERO 000008bc: PUSH2 0x0691 000008bf: JUMPI 000008c0: POP 000008c1: DUP4 000008c2: PUSH1 0xff 000008c4: DUP3 000008c5: PUSH1 0xa0 000008c7: SHR 000008c8: AND 000008c9: EQ 000008ca: PUSH2 0x0691 000008cd: JUMP 000008ce: JUMPDEST 000008cf: POP 000008d0: DUP4 000008d1: PUSH1 0xff 000008d3: DUP3 000008d4: PUSH1 0xa0 000008d6: SHR 000008d7: AND 000008d8: LT 000008d9: PUSH2 0x068a 000008dc: JUMP 000008dd: JUMPDEST 000008de: CALLVALUE 000008df: PUSH2 0x02a1 000008e2: JUMPI 000008e3: PUSH2 0x08eb 000008e6: CALLDATASIZE 000008e7: PUSH2 0x1b28 000008ea: JUMP 000008eb: JUMPDEST 000008ec: SWAP2 000008ed: SWAP1 000008ee: PUSH2 0x08f6 000008f1: DUP4 000008f2: PUSH2 0x1ec5 000008f5: JUMP 000008f6: JUMPDEST 000008f7: SWAP3 000008f8: PUSH1 0x00 000008fa: JUMPDEST 000008fb: DUP2 000008fc: DUP2 000008fd: LT 000008fe: PUSH2 0x0917 00000901: JUMPI 00000902: PUSH1 0x40 00000904: MLOAD 00000905: PUSH1 0x20 00000907: DUP1 00000908: DUP3 00000909: MSTORE 0000090a: DUP2 0000090b: SWAP1 0000090c: PUSH2 0x0188 0000090f: SWAP1 00000910: DUP3 00000911: ADD 00000912: DUP9 00000913: PUSH2 0x1b97 00000916: JUMP 00000917: JUMPDEST 00000918: PUSH1 0x01 0000091a: SWAP1 0000091b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000930: DUP1 00000931: DUP7 00000932: AND 00000933: PUSH1 0x00 00000935: MSTORE 00000936: PUSH1 0x20 00000938: PUSH1 0x34 0000093a: DUP2 0000093b: MSTORE 0000093c: PUSH1 0x40 0000093e: PUSH1 0x00 00000940: KECCAK256 00000941: SWAP2 00000942: PUSH2 0x094f 00000945: PUSH2 0x01f1 00000948: DUP6 00000949: DUP9 0000094a: DUP11 0000094b: PUSH2 0x1f14 0000094e: JUMP 0000094f: JUMPDEST 00000950: AND 00000951: PUSH1 0x00 00000953: MSTORE 00000954: MSTORE 00000955: PUSH1 0x40 00000957: PUSH1 0x00 00000959: KECCAK256 0000095a: SLOAD 0000095b: PUSH2 0x0964 0000095e: DUP3 0000095f: DUP9 00000960: PUSH2 0x1f74 00000963: JUMP 00000964: JUMPDEST 00000965: MSTORE 00000966: PUSH2 0x096f 00000969: DUP2 0000096a: DUP8 0000096b: PUSH2 0x1f74 0000096e: JUMP 0000096f: JUMPDEST 00000970: MLOAD 00000971: ISZERO 00000972: PUSH2 0x09b4 00000975: JUMPI 00000976: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00000997: PUSH2 0x09a0 0000099a: DUP3 0000099b: DUP9 0000099c: PUSH2 0x1f74 0000099f: JUMP 000009a0: JUMPDEST 000009a1: MLOAD 000009a2: ADD 000009a3: PUSH2 0x09ac 000009a6: DUP3 000009a7: DUP9 000009a8: PUSH2 0x1f74 000009ab: JUMP 000009ac: JUMPDEST 000009ad: MSTORE 000009ae: JUMPDEST 000009af: ADD 000009b0: PUSH2 0x08fa 000009b3: JUMP 000009b4: JUMPDEST 000009b5: PUSH2 0x09ae 000009b8: JUMP 000009b9: JUMPDEST 000009ba: POP 000009bb: CALLVALUE 000009bc: PUSH2 0x02a1 000009bf: JUMPI 000009c0: PUSH1 0x20 000009c2: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 000009e3: SWAP1 000009e4: DUP1 000009e5: DUP3 000009e6: CALLDATASIZE 000009e7: ADD 000009e8: SLT 000009e9: PUSH2 0x02a1 000009ec: JUMPI 000009ed: DUP3 000009ee: CALLDATALOAD 000009ef: SWAP2 000009f0: PUSH8 0xffffffffffffffff 000009f9: DUP4 000009fa: GT 000009fb: PUSH2 0x02a1 000009fe: JUMPI 000009ff: PUSH1 0x80 00000a01: DUP4 00000a02: DUP6 00000a03: ADD 00000a04: SWAP2 00000a05: DUP5 00000a06: CALLDATASIZE 00000a07: SUB 00000a08: ADD 00000a09: SLT 00000a0a: PUSH2 0x02a1 00000a0d: JUMPI 00000a0e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a23: SWAP1 00000a24: PUSH2 0x0a32 00000a27: DUP3 00000a28: PUSH1 0x00 00000a2a: SLOAD 00000a2b: AND 00000a2c: CALLER 00000a2d: EQ 00000a2e: PUSH2 0x20ca 00000a31: JUMP 00000a32: JUMPDEST 00000a33: PUSH2 0x0a3b 00000a36: DUP2 00000a37: PUSH2 0x1f53 00000a3a: JUMP 00000a3b: JUMPDEST 00000a3c: SWAP1 00000a3d: PUSH2 0x0a49 00000a40: PUSH1 0x64 00000a42: DUP7 00000a43: ADD 00000a44: DUP3 00000a45: PUSH2 0x212f 00000a48: JUMP 00000a49: JUMPDEST 00000a4a: PUSH1 0x44 00000a4c: DUP8 00000a4d: SWAP4 00000a4e: SWAP3 00000a4f: SWAP4 00000a50: ADD 00000a51: SWAP1 00000a52: PUSH2 0x0a6a 00000a55: PUSH1 0x24 00000a57: PUSH2 0x0a60 00000a5a: DUP5 00000a5b: DUP7 00000a5c: PUSH2 0x212f 00000a5f: JUMP 00000a60: JUMPDEST 00000a61: SWAP11 00000a62: SWAP1 00000a63: POP 00000a64: ADD 00000a65: DUP5 00000a66: PUSH2 0x212f 00000a69: JUMP 00000a6a: JUMPDEST 00000a6b: SWAP5 00000a6c: SWAP1 00000a6d: SWAP4 00000a6e: DUP3 00000a6f: DUP11 00000a70: SUB 00000a71: PUSH2 0x05c9 00000a74: JUMPI 00000a75: SWAP7 00000a76: SWAP3 00000a77: SWAP9 00000a78: SWAP2 00000a79: SWAP1 00000a7a: PUSH1 0x00 00000a7c: SWAP8 00000a7d: PUSH1 0x00 00000a7f: SWAP5 00000a80: DUP1 00000a81: DUP10 00000a82: AND 00000a83: SWAP12 00000a84: JUMPDEST 00000a85: DUP13 00000a86: DUP13 00000a87: DUP8 00000a88: DUP10 00000a89: LT 00000a8a: PUSH2 0x0b1d 00000a8d: JUMPI 00000a8e: DUP16 00000a8f: SWAP3 00000a90: POP 00000a91: DUP13 00000a92: DUP13 00000a93: PUSH2 0x0ab1 00000a96: DUP14 00000a97: DUP14 00000a98: DUP7 00000a99: PUSH1 0x00 00000a9b: MSTORE 00000a9c: PUSH1 0x34 00000a9e: DUP7 00000a9f: MSTORE 00000aa0: DUP5 00000aa1: PUSH1 0x01 00000aa3: PUSH1 0x40 00000aa5: PUSH1 0x00 00000aa7: KECCAK256 00000aa8: ADD 00000aa9: SLOAD 00000aaa: ADD 00000aab: DUP1 00000aac: SWAP5 00000aad: PUSH2 0x1f88 00000ab0: JUMP 00000ab1: JUMPDEST 00000ab2: ISZERO 00000ab3: PUSH2 0x0af4 00000ab6: JUMPI 00000ab7: DUP4 00000ab8: PUSH32 0x4d490fc5b632b5a4319f50b51d1716cf9c227f26dfb9f1c3ea96a1d0707af184 00000ad9: SWAP5 00000ada: SWAP6 00000adb: POP 00000adc: PUSH1 0x00 00000ade: MSTORE 00000adf: PUSH1 0x34 00000ae1: DUP4 00000ae2: MSTORE 00000ae3: PUSH1 0x01 00000ae5: PUSH1 0x40 00000ae7: PUSH1 0x00 00000ae9: KECCAK256 00000aea: ADD 00000aeb: SSTORE 00000aec: PUSH1 0x40 00000aee: MLOAD 00000aef: SWAP1 00000af0: DUP2 00000af1: MSTORE 00000af2: LOG2 00000af3: STOP 00000af4: JUMPDEST 00000af5: DUP5 00000af6: PUSH1 0x40 00000af8: MLOAD 00000af9: PUSH32 0xb05e92fa00000000000000000000000000000000000000000000000000000000 00000b1a: DUP2 00000b1b: MSTORE 00000b1c: REVERT 00000b1d: JUMPDEST 00000b1e: SWAP1 00000b1f: DUP9 00000b20: DUP1 00000b21: SWAP14 00000b22: SWAP3 00000b23: PUSH2 0x0b35 00000b26: DUP10 00000b27: SWAP11 00000b28: SWAP12 00000b29: DUP10 00000b2a: SWAP11 00000b2b: PUSH1 0x01 00000b2d: SWAP8 00000b2e: SWAP9 00000b2f: SWAP10 00000b30: SWAP11 00000b31: PUSH2 0x1f14 00000b34: JUMP 00000b35: JUMPDEST 00000b36: CALLDATALOAD 00000b37: SWAP3 00000b38: PUSH1 0x00 00000b3a: MSTORE 00000b3b: PUSH1 0x34 00000b3d: DUP2 00000b3e: MSTORE 00000b3f: DUP7 00000b40: PUSH2 0x0b55 00000b43: PUSH2 0x01f1 00000b46: PUSH1 0x40 00000b48: PUSH1 0x00 00000b4a: KECCAK256 00000b4b: SWAP5 00000b4c: PUSH2 0x0599 00000b4f: DUP11 00000b50: DUP14 00000b51: PUSH2 0x212f 00000b54: JUMP 00000b55: JUMPDEST 00000b56: AND 00000b57: PUSH1 0x00 00000b59: MSTORE 00000b5a: MSTORE 00000b5b: PUSH1 0x40 00000b5d: PUSH1 0x00 00000b5f: KECCAK256 00000b60: SWAP1 00000b61: DUP2 00000b62: SLOAD 00000b63: ADD 00000b64: SWAP1 00000b65: SSTORE 00000b66: PUSH2 0x0b70 00000b69: DUP13 00000b6a: DUP9 00000b6b: DUP9 00000b6c: PUSH2 0x1f14 00000b6f: JUMP 00000b70: JUMPDEST 00000b71: CALLDATALOAD 00000b72: ADD 00000b73: SWAP11 00000b74: ADD 00000b75: SWAP6 00000b76: SWAP5 00000b77: SWAP4 00000b78: SWAP3 00000b79: SWAP2 00000b7a: SWAP1 00000b7b: PUSH2 0x0a84 00000b7e: JUMP 00000b7f: JUMPDEST 00000b80: CALLVALUE 00000b81: PUSH2 0x02a1 00000b84: JUMPI 00000b85: PUSH1 0x20 00000b87: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 00000ba8: CALLDATASIZE 00000ba9: ADD 00000baa: SLT 00000bab: PUSH2 0x02a1 00000bae: JUMPI 00000baf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000bc4: PUSH2 0x0bcb 00000bc7: PUSH2 0x1a0e 00000bca: JUMP 00000bcb: JUMPDEST 00000bcc: AND 00000bcd: PUSH1 0x00 00000bcf: MSTORE 00000bd0: PUSH1 0x34 00000bd2: PUSH1 0x20 00000bd4: MSTORE 00000bd5: PUSH1 0x20 00000bd7: PUSH1 0x01 00000bd9: PUSH1 0x40 00000bdb: PUSH1 0x00 00000bdd: KECCAK256 00000bde: ADD 00000bdf: SLOAD 00000be0: PUSH1 0x40 00000be2: MLOAD 00000be3: SWAP1 00000be4: DUP2 00000be5: MSTORE 00000be6: RETURN 00000be7: JUMPDEST 00000be8: POP 00000be9: CALLVALUE 00000bea: PUSH2 0x02a1 00000bed: JUMPI 00000bee: PUSH1 0x00 00000bf0: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 00000c11: CALLDATASIZE 00000c12: ADD 00000c13: SLT 00000c14: PUSH2 0x02a1 00000c17: JUMPI 00000c18: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000c2d: PUSH32 0x000000000000000000000000afaae49c7684a2f386eb18569966604973f9d83d 00000c4e: AND 00000c4f: ADDRESS 00000c50: SUB 00000c51: PUSH2 0x0c7e 00000c54: JUMPI 00000c55: PUSH1 0x20 00000c57: PUSH1 0x40 00000c59: MLOAD 00000c5a: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc 00000c7b: DUP2 00000c7c: MSTORE 00000c7d: RETURN 00000c7e: JUMPDEST 00000c7f: PUSH1 0x84 00000c81: SWAP1 00000c82: PUSH1 0x20 00000c84: PUSH1 0x40 00000c86: MLOAD 00000c87: SWAP2 00000c88: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000ca9: DUP4 00000caa: MSTORE 00000cab: DUP3 00000cac: ADD 00000cad: MSTORE 00000cae: PUSH1 0x38 00000cb0: PUSH1 0x24 00000cb2: DUP3 00000cb3: ADD 00000cb4: MSTORE 00000cb5: PUSH32 0x555550535570677261646561626c653a206d757374206e6f742062652063616c 00000cd6: PUSH1 0x44 00000cd8: DUP3 00000cd9: ADD 00000cda: MSTORE 00000cdb: PUSH32 0x6c6564207468726f7567682064656c656761746563616c6c0000000000000000 00000cfc: PUSH1 0x64 00000cfe: DUP3 00000cff: ADD 00000d00: MSTORE 00000d01: REVERT 00000d02: JUMPDEST 00000d03: POP 00000d04: PUSH1 0x40 00000d06: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 00000d27: CALLDATASIZE 00000d28: ADD 00000d29: SLT 00000d2a: PUSH2 0x02a1 00000d2d: JUMPI 00000d2e: PUSH2 0x0d35 00000d31: PUSH2 0x1a0e 00000d34: JUMP 00000d35: JUMPDEST 00000d36: PUSH1 0x24 00000d38: SWAP2 00000d39: DUP3 00000d3a: CALLDATALOAD 00000d3b: SWAP3 00000d3c: PUSH8 0xffffffffffffffff 00000d45: DUP5 00000d46: GT 00000d47: PUSH2 0x02a1 00000d4a: JUMPI 00000d4b: CALLDATASIZE 00000d4c: PUSH1 0x23 00000d4e: DUP6 00000d4f: ADD 00000d50: SLT 00000d51: ISZERO 00000d52: PUSH2 0x02a1 00000d55: JUMPI 00000d56: DUP4 00000d57: DUP3 00000d58: ADD 00000d59: CALLDATALOAD 00000d5a: SWAP4 00000d5b: PUSH2 0x0d63 00000d5e: DUP6 00000d5f: PUSH2 0x1aee 00000d62: JUMP 00000d63: JUMPDEST 00000d64: PUSH2 0x0d70 00000d67: PUSH1 0x40 00000d69: MLOAD 00000d6a: SWAP2 00000d6b: DUP3 00000d6c: PUSH2 0x1aad 00000d6f: JUMP 00000d70: JUMPDEST 00000d71: DUP6 00000d72: DUP2 00000d73: MSTORE 00000d74: PUSH1 0x20 00000d76: SWAP6 00000d77: DUP7 00000d78: DUP3 00000d79: ADD 00000d7a: SWAP3 00000d7b: CALLDATASIZE 00000d7c: DUP6 00000d7d: DUP4 00000d7e: DUP4 00000d7f: ADD 00000d80: ADD 00000d81: GT 00000d82: PUSH2 0x02a1 00000d85: JUMPI 00000d86: DUP2 00000d87: PUSH1 0x00 00000d89: SWAP3 00000d8a: DUP7 00000d8b: DUP11 00000d8c: SWAP4 00000d8d: ADD 00000d8e: DUP7 00000d8f: CALLDATACOPY 00000d90: DUP4 00000d91: ADD 00000d92: ADD 00000d93: MSTORE 00000d94: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000da9: DUP1 00000daa: PUSH32 0x000000000000000000000000afaae49c7684a2f386eb18569966604973f9d83d 00000dcb: AND 00000dcc: SWAP1 00000dcd: PUSH2 0x0dd8 00000dd0: DUP3 00000dd1: ADDRESS 00000dd2: EQ 00000dd3: ISZERO 00000dd4: PUSH2 0x1bcb 00000dd7: JUMP 00000dd8: JUMPDEST 00000dd9: PUSH2 0x0e07 00000ddc: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc 00000dfd: SWAP3 00000dfe: DUP3 00000dff: DUP5 00000e00: SLOAD 00000e01: AND 00000e02: EQ 00000e03: PUSH2 0x1c56 00000e06: JUMP 00000e07: JUMPDEST 00000e08: PUSH2 0x0e16 00000e0b: DUP2 00000e0c: PUSH1 0x00 00000e0e: SLOAD 00000e0f: AND 00000e10: CALLER 00000e11: EQ 00000e12: PUSH2 0x20ca 00000e15: JUMP 00000e16: JUMPDEST 00000e17: PUSH32 0x4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143 00000e38: SLOAD 00000e39: PUSH1 0xff 00000e3b: AND 00000e3c: ISZERO 00000e3d: PUSH2 0x0e50 00000e40: JUMPI 00000e41: POP 00000e42: POP 00000e43: POP 00000e44: POP 00000e45: POP 00000e46: POP 00000e47: PUSH2 0x001b 00000e4a: SWAP2 00000e4b: POP 00000e4c: PUSH2 0x1ce1 00000e4f: JUMP 00000e50: JUMPDEST 00000e51: DUP7 00000e52: SWAP5 00000e53: SWAP6 00000e54: SWAP7 00000e55: AND 00000e56: SWAP1 00000e57: PUSH1 0x40 00000e59: MLOAD 00000e5a: PUSH32 0x52d1902d00000000000000000000000000000000000000000000000000000000 00000e7b: DUP2 00000e7c: MSTORE 00000e7d: DUP9 00000e7e: DUP2 00000e7f: DUP10 00000e80: DUP2 00000e81: DUP7 00000e82: GAS 00000e83: STATICCALL 00000e84: PUSH1 0x00 00000e86: SWAP2 00000e87: DUP2 00000e88: PUSH2 0x10ea 00000e8b: JUMPI 00000e8c: JUMPDEST 00000e8d: POP 00000e8e: PUSH2 0x0f13 00000e91: JUMPI 00000e92: PUSH1 0x84 00000e94: DUP9 00000e95: PUSH1 0x2e 00000e97: DUP10 00000e98: DUP13 00000e99: PUSH1 0x40 00000e9b: MLOAD 00000e9c: SWAP4 00000e9d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000ebe: DUP6 00000ebf: MSTORE 00000ec0: DUP5 00000ec1: ADD 00000ec2: MSTORE 00000ec3: DUP3 00000ec4: ADD 00000ec5: MSTORE 00000ec6: PUSH32 0x45524331393637557067726164653a206e657720696d706c656d656e74617469 00000ee7: PUSH1 0x44 00000ee9: DUP3 00000eea: ADD 00000eeb: MSTORE 00000eec: PUSH32 0x6f6e206973206e6f742055555053000000000000000000000000000000000000 00000f0d: PUSH1 0x64 00000f0f: DUP3 00000f10: ADD 00000f11: MSTORE 00000f12: REVERT 00000f13: JUMPDEST 00000f14: SWAP8 00000f15: SWAP7 00000f16: SWAP4 00000f17: SWAP6 00000f18: SWAP3 00000f19: SWAP5 00000f1a: SWAP8 00000f1b: SUB 00000f1c: PUSH2 0x1068 00000f1f: JUMPI 00000f20: PUSH2 0x0f28 00000f23: DUP8 00000f24: PUSH2 0x1ce1 00000f27: JUMP 00000f28: JUMPDEST 00000f29: PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b 00000f4a: PUSH1 0x00 00000f4c: DUP1 00000f4d: LOG2 00000f4e: DUP3 00000f4f: MLOAD 00000f50: ISZERO 00000f51: DUP1 00000f52: ISZERO 00000f53: SWAP1 00000f54: PUSH2 0x1060 00000f57: JUMPI 00000f58: JUMPDEST 00000f59: PUSH2 0x0f5e 00000f5c: JUMPI 00000f5d: STOP 00000f5e: JUMPDEST 00000f5f: PUSH1 0x40 00000f61: MLOAD 00000f62: SWAP5 00000f63: PUSH2 0x0f6b 00000f66: DUP7 00000f67: PUSH2 0x1a62 00000f6a: JUMP 00000f6b: JUMPDEST 00000f6c: PUSH1 0x27 00000f6e: DUP7 00000f6f: MSTORE 00000f70: PUSH32 0x416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c 00000f91: DUP2 00000f92: DUP8 00000f93: ADD 00000f94: MSTORE 00000f95: PUSH32 0x206661696c656400000000000000000000000000000000000000000000000000 00000fb6: PUSH1 0x40 00000fb8: DUP8 00000fb9: ADD 00000fba: MSTORE 00000fbb: DUP7 00000fbc: EXTCODESIZE 00000fbd: ISZERO 00000fbe: PUSH2 0x0fdf 00000fc1: JUMPI 00000fc2: POP 00000fc3: POP 00000fc4: POP 00000fc5: PUSH2 0x001b 00000fc8: SWAP4 00000fc9: PUSH1 0x00 00000fcb: SWAP3 00000fcc: DUP4 00000fcd: SWAP3 00000fce: MLOAD 00000fcf: SWAP2 00000fd0: GAS 00000fd1: DELEGATECALL 00000fd2: PUSH2 0x0fd9 00000fd5: PUSH2 0x1dcd 00000fd8: JUMP 00000fd9: JUMPDEST 00000fda: SWAP1 00000fdb: PUSH2 0x1dfd 00000fde: JUMP 00000fdf: JUMPDEST 00000fe0: PUSH1 0x40 00000fe2: MLOAD 00000fe3: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001004: DUP2 00001005: MSTORE 00001006: SWAP3 00001007: DUP4 00001008: ADD 00001009: MSTORE 0000100a: PUSH1 0x26 0000100c: SWAP1 0000100d: DUP3 0000100e: ADD 0000100f: MSTORE 00001010: PUSH32 0x416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f 00001031: PUSH1 0x44 00001033: DUP3 00001034: ADD 00001035: MSTORE 00001036: PUSH32 0x6e74726163740000000000000000000000000000000000000000000000000000 00001057: PUSH1 0x64 00001059: DUP3 0000105a: ADD 0000105b: MSTORE 0000105c: PUSH1 0x84 0000105e: SWAP1 0000105f: REVERT 00001060: JUMPDEST 00001061: POP 00001062: PUSH1 0x01 00001064: PUSH2 0x0f58 00001067: JUMP 00001068: JUMPDEST 00001069: PUSH1 0x84 0000106b: DUP4 0000106c: PUSH1 0x29 0000106e: DUP5 0000106f: DUP10 00001070: PUSH1 0x40 00001072: MLOAD 00001073: SWAP4 00001074: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001095: DUP6 00001096: MSTORE 00001097: DUP5 00001098: ADD 00001099: MSTORE 0000109a: DUP3 0000109b: ADD 0000109c: MSTORE 0000109d: PUSH32 0x45524331393637557067726164653a20756e737570706f727465642070726f78 000010be: PUSH1 0x44 000010c0: DUP3 000010c1: ADD 000010c2: MSTORE 000010c3: PUSH32 0x6961626c65555549440000000000000000000000000000000000000000000000 000010e4: PUSH1 0x64 000010e6: DUP3 000010e7: ADD 000010e8: MSTORE 000010e9: REVERT 000010ea: JUMPDEST 000010eb: SWAP1 000010ec: SWAP2 000010ed: POP 000010ee: DUP10 000010ef: DUP2 000010f0: DUP2 000010f1: RETURNDATASIZE 000010f2: DUP4 000010f3: GT 000010f4: PUSH2 0x1112 000010f7: JUMPI 000010f8: JUMPDEST 000010f9: PUSH2 0x1102 000010fc: DUP2 000010fd: DUP4 000010fe: PUSH2 0x1aad 00001101: JUMP 00001102: JUMPDEST 00001103: DUP2 00001104: ADD 00001105: SUB 00001106: SLT 00001107: PUSH2 0x02a1 0000110a: JUMPI 0000110b: MLOAD 0000110c: SWAP1 0000110d: CODESIZE 0000110e: PUSH2 0x0e8c 00001111: JUMP 00001112: JUMPDEST 00001113: POP 00001114: RETURNDATASIZE 00001115: PUSH2 0x10f8 00001118: JUMP 00001119: JUMPDEST 0000111a: POP 0000111b: CALLVALUE 0000111c: PUSH2 0x02a1 0000111f: JUMPI 00001120: PUSH1 0x00 00001122: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 00001143: CALLDATASIZE 00001144: ADD 00001145: SLT 00001146: PUSH2 0x02a1 00001149: JUMPI 0000114a: PUSH1 0x01 0000114c: SLOAD 0000114d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001162: SWAP2 00001163: DUP3 00001164: DUP3 00001165: AND 00001166: SWAP1 00001167: DUP2 00001168: CALLER 00001169: SUB 0000116a: PUSH2 0x11c8 0000116d: JUMPI 0000116e: POP 0000116f: DUP1 00001170: PUSH1 0x00 00001172: SLOAD 00001173: SWAP4 00001174: DUP5 00001175: AND 00001176: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 00001197: PUSH1 0x00 00001199: DUP1 0000119a: LOG3 0000119b: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 000011bc: SWAP3 000011bd: DUP4 000011be: AND 000011bf: OR 000011c0: PUSH1 0x00 000011c2: SSTORE 000011c3: AND 000011c4: PUSH1 0x01 000011c6: SSTORE 000011c7: STOP 000011c8: JUMPDEST 000011c9: PUSH1 0x64 000011cb: SWAP1 000011cc: PUSH1 0x20 000011ce: PUSH1 0x40 000011d0: MLOAD 000011d1: SWAP2 000011d2: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000011f3: DUP4 000011f4: MSTORE 000011f5: DUP3 000011f6: ADD 000011f7: MSTORE 000011f8: PUSH1 0x20 000011fa: PUSH1 0x24 000011fc: DUP3 000011fd: ADD 000011fe: MSTORE 000011ff: PUSH32 0x4f776e61626c653a2063616c6c657220213d2070656e64696e67206f776e6572 00001220: PUSH1 0x44 00001222: DUP3 00001223: ADD 00001224: MSTORE 00001225: REVERT 00001226: JUMPDEST 00001227: POP 00001228: CALLVALUE 00001229: PUSH2 0x02a1 0000122c: JUMPI 0000122d: PUSH1 0x20 0000122f: SWAP1 00001230: DUP2 00001231: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 00001252: CALLDATASIZE 00001253: ADD 00001254: SLT 00001255: PUSH2 0x02a1 00001258: JUMPI 00001259: PUSH2 0x1260 0000125c: PUSH2 0x1a0e 0000125f: JUMP 00001260: JUMPDEST 00001261: SWAP2 00001262: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001277: DUP1 00001278: PUSH32 0x000000000000000000000000afaae49c7684a2f386eb18569966604973f9d83d 00001299: AND 0000129a: PUSH2 0x12a5 0000129d: DUP2 0000129e: ADDRESS 0000129f: EQ 000012a0: ISZERO 000012a1: PUSH2 0x1bcb 000012a4: JUMP 000012a5: JUMPDEST 000012a6: PUSH2 0x12d4 000012a9: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc 000012ca: SWAP2 000012cb: DUP4 000012cc: DUP4 000012cd: SLOAD 000012ce: AND 000012cf: EQ 000012d0: PUSH2 0x1c56 000012d3: JUMP 000012d4: JUMPDEST 000012d5: PUSH2 0x12e3 000012d8: DUP3 000012d9: PUSH1 0x00 000012db: SLOAD 000012dc: AND 000012dd: CALLER 000012de: EQ 000012df: PUSH2 0x20ca 000012e2: JUMP 000012e3: JUMPDEST 000012e4: PUSH1 0x40 000012e6: MLOAD 000012e7: SWAP1 000012e8: DUP4 000012e9: DUP3 000012ea: ADD 000012eb: SWAP3 000012ec: DUP3 000012ed: DUP5 000012ee: LT 000012ef: PUSH8 0xffffffffffffffff 000012f8: DUP6 000012f9: GT 000012fa: OR 000012fb: PUSH2 0x1602 000012fe: JUMPI 000012ff: DUP4 00001300: PUSH1 0x40 00001302: MSTORE 00001303: PUSH1 0x00 00001305: DUP4 00001306: MSTORE 00001307: PUSH1 0xff 00001309: PUSH32 0x4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143 0000132a: SLOAD 0000132b: AND 0000132c: PUSH1 0x00 0000132e: EQ 0000132f: PUSH2 0x1341 00001332: JUMPI 00001333: POP 00001334: POP 00001335: POP 00001336: POP 00001337: POP 00001338: POP 00001339: PUSH2 0x001b 0000133c: SWAP1 0000133d: PUSH2 0x1ce1 00001340: JUMP 00001341: JUMPDEST 00001342: DUP7 00001343: AND 00001344: SWAP1 00001345: PUSH1 0x40 00001347: MLOAD 00001348: PUSH32 0x52d1902d00000000000000000000000000000000000000000000000000000000 00001369: DUP2 0000136a: MSTORE 0000136b: DUP6 0000136c: DUP2 0000136d: DUP9 0000136e: DUP2 0000136f: DUP7 00001370: GAS 00001371: STATICCALL 00001372: PUSH1 0x00 00001374: SWAP2 00001375: DUP2 00001376: PUSH2 0x15d3 00001379: JUMPI 0000137a: JUMPDEST 0000137b: POP 0000137c: PUSH2 0x1402 0000137f: JUMPI 00001380: PUSH1 0x84 00001382: DUP8 00001383: DUP8 00001384: PUSH1 0x40 00001386: MLOAD 00001387: SWAP2 00001388: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000013a9: DUP4 000013aa: MSTORE 000013ab: DUP3 000013ac: ADD 000013ad: MSTORE 000013ae: PUSH1 0x2e 000013b0: PUSH1 0x24 000013b2: DUP3 000013b3: ADD 000013b4: MSTORE 000013b5: PUSH32 0x45524331393637557067726164653a206e657720696d706c656d656e74617469 000013d6: PUSH1 0x44 000013d8: DUP3 000013d9: ADD 000013da: MSTORE 000013db: PUSH32 0x6f6e206973206e6f742055555053000000000000000000000000000000000000 000013fc: PUSH1 0x64 000013fe: DUP3 000013ff: ADD 00001400: MSTORE 00001401: REVERT 00001402: JUMPDEST 00001403: SWAP6 00001404: SWAP3 00001405: SWAP4 00001406: SWAP5 00001407: SWAP6 00001408: SUB 00001409: PUSH2 0x1550 0000140c: JUMPI 0000140d: PUSH2 0x1415 00001410: DUP7 00001411: PUSH2 0x1ce1 00001414: JUMP 00001415: JUMPDEST 00001416: PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b 00001437: PUSH1 0x00 00001439: DUP1 0000143a: LOG2 0000143b: DUP2 0000143c: MLOAD 0000143d: ISZERO 0000143e: DUP1 0000143f: ISZERO 00001440: SWAP1 00001441: PUSH2 0x1548 00001444: JUMPI 00001445: JUMPDEST 00001446: PUSH2 0x144b 00001449: JUMPI 0000144a: STOP 0000144b: JUMPDEST 0000144c: PUSH1 0x40 0000144e: MLOAD 0000144f: SWAP4 00001450: PUSH2 0x1458 00001453: DUP6 00001454: PUSH2 0x1a62 00001457: JUMP 00001458: JUMPDEST 00001459: PUSH1 0x27 0000145b: DUP6 0000145c: MSTORE 0000145d: PUSH32 0x416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c 0000147e: DUP2 0000147f: DUP7 00001480: ADD 00001481: MSTORE 00001482: PUSH32 0x206661696c656400000000000000000000000000000000000000000000000000 000014a3: PUSH1 0x40 000014a5: DUP7 000014a6: ADD 000014a7: MSTORE 000014a8: DUP6 000014a9: EXTCODESIZE 000014aa: ISZERO 000014ab: PUSH2 0x14c5 000014ae: JUMPI 000014af: POP 000014b0: POP 000014b1: PUSH2 0x001b 000014b4: SWAP4 000014b5: PUSH1 0x00 000014b7: SWAP3 000014b8: DUP4 000014b9: SWAP3 000014ba: MLOAD 000014bb: SWAP2 000014bc: GAS 000014bd: DELEGATECALL 000014be: PUSH2 0x0fd9 000014c1: PUSH2 0x1dcd 000014c4: JUMP 000014c5: JUMPDEST 000014c6: PUSH1 0x84 000014c8: SWAP3 000014c9: POP 000014ca: PUSH1 0x40 000014cc: MLOAD 000014cd: SWAP2 000014ce: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000014ef: DUP4 000014f0: MSTORE 000014f1: DUP3 000014f2: ADD 000014f3: MSTORE 000014f4: PUSH1 0x26 000014f6: PUSH1 0x24 000014f8: DUP3 000014f9: ADD 000014fa: MSTORE 000014fb: PUSH32 0x416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f 0000151c: PUSH1 0x44 0000151e: DUP3 0000151f: ADD 00001520: MSTORE 00001521: PUSH32 0x6e74726163740000000000000000000000000000000000000000000000000000 00001542: PUSH1 0x64 00001544: DUP3 00001545: ADD 00001546: MSTORE 00001547: REVERT 00001548: JUMPDEST 00001549: POP 0000154a: PUSH1 0x00 0000154c: PUSH2 0x1445 0000154f: JUMP 00001550: JUMPDEST 00001551: PUSH1 0x84 00001553: DUP3 00001554: DUP7 00001555: PUSH1 0x40 00001557: MLOAD 00001558: SWAP2 00001559: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000157a: DUP4 0000157b: MSTORE 0000157c: DUP3 0000157d: ADD 0000157e: MSTORE 0000157f: PUSH1 0x29 00001581: PUSH1 0x24 00001583: DUP3 00001584: ADD 00001585: MSTORE 00001586: PUSH32 0x45524331393637557067726164653a20756e737570706f727465642070726f78 000015a7: PUSH1 0x44 000015a9: DUP3 000015aa: ADD 000015ab: MSTORE 000015ac: PUSH32 0x6961626c65555549440000000000000000000000000000000000000000000000 000015cd: PUSH1 0x64 000015cf: DUP3 000015d0: ADD 000015d1: MSTORE 000015d2: REVERT 000015d3: JUMPDEST 000015d4: SWAP1 000015d5: SWAP2 000015d6: POP 000015d7: DUP7 000015d8: DUP2 000015d9: DUP2 000015da: RETURNDATASIZE 000015db: DUP4 000015dc: GT 000015dd: PUSH2 0x15fb 000015e0: JUMPI 000015e1: JUMPDEST 000015e2: PUSH2 0x15eb 000015e5: DUP2 000015e6: DUP4 000015e7: PUSH2 0x1aad 000015ea: JUMP 000015eb: JUMPDEST 000015ec: DUP2 000015ed: ADD 000015ee: SUB 000015ef: SLT 000015f0: PUSH2 0x02a1 000015f3: JUMPI 000015f4: MLOAD 000015f5: SWAP1 000015f6: CODESIZE 000015f7: PUSH2 0x137a 000015fa: JUMP 000015fb: JUMPDEST 000015fc: POP 000015fd: RETURNDATASIZE 000015fe: PUSH2 0x15e1 00001601: JUMP 00001602: JUMPDEST 00001603: PUSH1 0x41 00001605: DUP7 00001606: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00001627: PUSH1 0x00 00001629: MSTORE 0000162a: MSTORE 0000162b: PUSH1 0x24 0000162d: PUSH1 0x00 0000162f: REVERT 00001630: JUMPDEST 00001631: CALLVALUE 00001632: PUSH2 0x02a1 00001635: JUMPI 00001636: PUSH1 0x00 00001638: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 00001659: CALLDATASIZE 0000165a: ADD 0000165b: SLT 0000165c: PUSH2 0x02a1 0000165f: JUMPI 00001660: PUSH1 0x20 00001662: PUSH1 0x32 00001664: SLOAD 00001665: PUSH1 0x40 00001667: MLOAD 00001668: SWAP1 00001669: DUP2 0000166a: MSTORE 0000166b: RETURN 0000166c: JUMPDEST 0000166d: POP 0000166e: PUSH1 0x40 00001670: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 00001691: CALLDATASIZE 00001692: ADD 00001693: SLT 00001694: PUSH2 0x02a1 00001697: JUMPI 00001698: DUP1 00001699: CALLDATALOAD 0000169a: SWAP1 0000169b: PUSH1 0x24 0000169d: CALLDATALOAD 0000169e: SWAP1 0000169f: PUSH2 0x16c1 000016a2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000016b7: PUSH1 0x00 000016b9: SLOAD 000016ba: AND 000016bb: CALLER 000016bc: EQ 000016bd: PUSH2 0x20ca 000016c0: JUMP 000016c1: JUMPDEST 000016c2: DUP2 000016c3: CALLVALUE 000016c4: SUB 000016c5: PUSH2 0x16fa 000016c8: JUMPI 000016c9: POP 000016ca: PUSH1 0x20 000016cc: PUSH32 0xc3cf50db282eb67e0c487a5fe4dbeb3a964478b2edd1615ef91160c7205ffccd 000016ed: SWAP2 000016ee: DUP4 000016ef: PUSH1 0x32 000016f1: SSTORE 000016f2: PUSH1 0x40 000016f4: MLOAD 000016f5: SWAP1 000016f6: DUP2 000016f7: MSTORE 000016f8: LOG2 000016f9: STOP 000016fa: JUMPDEST 000016fb: PUSH1 0x64 000016fd: SWAP1 000016fe: PUSH1 0x20 00001700: PUSH1 0x40 00001702: MLOAD 00001703: SWAP2 00001704: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001725: DUP4 00001726: MSTORE 00001727: DUP3 00001728: ADD 00001729: MSTORE 0000172a: PUSH1 0x0c 0000172c: PUSH1 0x24 0000172e: DUP3 0000172f: ADD 00001730: MSTORE 00001731: PUSH32 0x657468206d69736d617463680000000000000000000000000000000000000000 00001752: PUSH1 0x44 00001754: DUP3 00001755: ADD 00001756: MSTORE 00001757: REVERT 00001758: JUMPDEST 00001759: POP 0000175a: CALLVALUE 0000175b: PUSH2 0x02a1 0000175e: JUMPI 0000175f: PUSH1 0x60 00001761: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 00001782: CALLDATASIZE 00001783: ADD 00001784: SLT 00001785: PUSH2 0x02a1 00001788: JUMPI 00001789: PUSH2 0x1790 0000178c: PUSH2 0x1a0e 0000178f: JUMP 00001790: JUMPDEST 00001791: SWAP1 00001792: PUSH1 0x24 00001794: CALLDATALOAD 00001795: SWAP1 00001796: DUP2 00001797: ISZERO 00001798: ISZERO 00001799: DUP3 0000179a: SUB 0000179b: PUSH2 0x02a1 0000179e: JUMPI 0000179f: PUSH1 0x44 000017a1: CALLDATALOAD 000017a2: SWAP2 000017a3: DUP3 000017a4: ISZERO 000017a5: ISZERO 000017a6: DUP4 000017a7: SUB 000017a8: PUSH2 0x02a1 000017ab: JUMPI 000017ac: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000017c1: SWAP4 000017c2: DUP5 000017c3: SWAP2 000017c4: PUSH2 0x17d2 000017c7: DUP4 000017c8: PUSH1 0x00 000017ca: SLOAD 000017cb: AND 000017cc: CALLER 000017cd: EQ 000017ce: PUSH2 0x20ca 000017d1: JUMP 000017d2: JUMPDEST 000017d3: ISZERO 000017d4: PUSH2 0x18b1 000017d7: JUMPI 000017d8: AND 000017d9: SWAP2 000017da: DUP3 000017db: ISZERO 000017dc: SWAP1 000017dd: DUP2 000017de: ISZERO 000017df: SWAP2 000017e0: PUSH2 0x18a9 000017e3: JUMPI 000017e4: JUMPDEST 000017e5: POP 000017e6: ISZERO 000017e7: PUSH2 0x184b 000017ea: JUMPI 000017eb: POP 000017ec: DUP1 000017ed: PUSH1 0x00 000017ef: SLOAD 000017f0: SWAP3 000017f1: DUP4 000017f2: AND 000017f3: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 00001814: PUSH1 0x00 00001816: DUP1 00001817: LOG3 00001818: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 00001839: DUP1 0000183a: SWAP3 0000183b: AND 0000183c: OR 0000183d: PUSH1 0x00 0000183f: SSTORE 00001840: PUSH1 0x01 00001842: SLOAD 00001843: AND 00001844: PUSH1 0x01 00001846: SSTORE 00001847: PUSH1 0x00 00001849: DUP1 0000184a: RETURN 0000184b: JUMPDEST 0000184c: PUSH1 0x64 0000184e: SWAP1 0000184f: PUSH1 0x20 00001851: PUSH1 0x40 00001853: MLOAD 00001854: SWAP2 00001855: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001876: DUP4 00001877: MSTORE 00001878: DUP3 00001879: ADD 0000187a: MSTORE 0000187b: PUSH1 0x15 0000187d: PUSH1 0x24 0000187f: DUP3 00001880: ADD 00001881: MSTORE 00001882: PUSH32 0x4f776e61626c653a207a65726f20616464726573730000000000000000000000 000018a3: PUSH1 0x44 000018a5: DUP3 000018a6: ADD 000018a7: MSTORE 000018a8: REVERT 000018a9: JUMPDEST 000018aa: SWAP1 000018ab: POP 000018ac: CODESIZE 000018ad: PUSH2 0x17e4 000018b0: JUMP 000018b1: JUMPDEST 000018b2: SWAP3 000018b3: POP 000018b4: POP 000018b5: POP 000018b6: AND 000018b7: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 000018d8: PUSH1 0x01 000018da: SLOAD 000018db: AND 000018dc: OR 000018dd: PUSH1 0x01 000018df: SSTORE 000018e0: PUSH1 0x00 000018e2: DUP1 000018e3: RETURN 000018e4: JUMPDEST 000018e5: POP 000018e6: CALLVALUE 000018e7: PUSH2 0x02a1 000018ea: JUMPI 000018eb: PUSH1 0x60 000018ed: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 0000190e: CALLDATASIZE 0000190f: ADD 00001910: SLT 00001911: PUSH2 0x02a1 00001914: JUMPI 00001915: PUSH2 0x191c 00001918: PUSH2 0x1a0e 0000191b: JUMP 0000191c: JUMPDEST 0000191d: SWAP1 0000191e: PUSH1 0x24 00001920: CALLDATALOAD 00001921: PUSH1 0x44 00001923: CALLDATALOAD 00001924: PUSH8 0xffffffffffffffff 0000192d: DUP2 0000192e: GT 0000192f: PUSH2 0x02a1 00001932: JUMPI 00001933: PUSH2 0x1942 00001936: PUSH2 0x194a 00001939: SWAP2 0000193a: CALLDATASIZE 0000193b: SWAP1 0000193c: DUP6 0000193d: ADD 0000193e: PUSH2 0x1a31 00001941: JUMP 00001942: JUMPDEST 00001943: SWAP1 00001944: DUP4 00001945: CALLER 00001946: PUSH2 0x1f88 00001949: JUMP 0000194a: JUMPDEST 0000194b: ISZERO 0000194c: PUSH2 0x19e5 0000194f: JUMPI 00001950: CALLER 00001951: PUSH1 0x00 00001953: MSTORE 00001954: PUSH1 0x33 00001956: PUSH1 0x20 00001958: MSTORE 00001959: PUSH1 0x40 0000195b: PUSH1 0x00 0000195d: KECCAK256 0000195e: SLOAD 0000195f: DUP2 00001960: SUB 00001961: SWAP2 00001962: DUP2 00001963: DUP4 00001964: GT 00001965: PUSH2 0x19b7 00001968: JUMPI 00001969: POP 0000196a: DUP2 0000196b: PUSH1 0x20 0000196d: SWAP4 0000196e: PUSH2 0x1984 00001971: SWAP3 00001972: CALLER 00001973: PUSH1 0x00 00001975: MSTORE 00001976: PUSH1 0x33 00001978: DUP7 00001979: MSTORE 0000197a: PUSH1 0x40 0000197c: PUSH1 0x00 0000197e: KECCAK256 0000197f: SSTORE 00001980: PUSH2 0x2183 00001983: JUMP 00001984: JUMPDEST 00001985: PUSH1 0x40 00001987: MLOAD 00001988: DUP2 00001989: DUP2 0000198a: MSTORE 0000198b: PUSH32 0xd8138f8a3f377c5259ca548e70e4c2de94f129f5a11036a15b69513cba2b426a 000019ac: DUP4 000019ad: CALLER 000019ae: SWAP3 000019af: LOG2 000019b0: PUSH1 0x40 000019b2: MLOAD 000019b3: SWAP1 000019b4: DUP2 000019b5: MSTORE 000019b6: RETURN 000019b7: JUMPDEST 000019b8: PUSH1 0x11 000019ba: SWAP1 000019bb: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 000019dc: PUSH1 0x00 000019de: MSTORE 000019df: MSTORE 000019e0: PUSH1 0x24 000019e2: PUSH1 0x00 000019e4: REVERT 000019e5: JUMPDEST 000019e6: POP 000019e7: PUSH1 0x40 000019e9: MLOAD 000019ea: PUSH32 0xb05e92fa00000000000000000000000000000000000000000000000000000000 00001a0b: DUP2 00001a0c: MSTORE 00001a0d: REVERT 00001a0e: JUMPDEST 00001a0f: PUSH1 0x04 00001a11: CALLDATALOAD 00001a12: SWAP1 00001a13: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a28: DUP3 00001a29: AND 00001a2a: DUP3 00001a2b: SUB 00001a2c: PUSH2 0x02a1 00001a2f: JUMPI 00001a30: JUMP 00001a31: JUMPDEST 00001a32: SWAP2 00001a33: DUP2 00001a34: PUSH1 0x1f 00001a36: DUP5 00001a37: ADD 00001a38: SLT 00001a39: ISZERO 00001a3a: PUSH2 0x02a1 00001a3d: JUMPI 00001a3e: DUP3 00001a3f: CALLDATALOAD 00001a40: SWAP2 00001a41: PUSH8 0xffffffffffffffff 00001a4a: DUP4 00001a4b: GT 00001a4c: PUSH2 0x02a1 00001a4f: JUMPI 00001a50: PUSH1 0x20 00001a52: DUP1 00001a53: DUP6 00001a54: ADD 00001a55: SWAP5 00001a56: DUP5 00001a57: PUSH1 0x05 00001a59: SHL 00001a5a: ADD 00001a5b: ADD 00001a5c: GT 00001a5d: PUSH2 0x02a1 00001a60: JUMPI 00001a61: JUMP 00001a62: JUMPDEST 00001a63: PUSH1 0x60 00001a65: DUP2 00001a66: ADD 00001a67: SWAP1 00001a68: DUP2 00001a69: LT 00001a6a: PUSH8 0xffffffffffffffff 00001a73: DUP3 00001a74: GT 00001a75: OR 00001a76: PUSH2 0x1a7e 00001a79: JUMPI 00001a7a: PUSH1 0x40 00001a7c: MSTORE 00001a7d: JUMP 00001a7e: JUMPDEST 00001a7f: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00001aa0: PUSH1 0x00 00001aa2: MSTORE 00001aa3: PUSH1 0x41 00001aa5: PUSH1 0x04 00001aa7: MSTORE 00001aa8: PUSH1 0x24 00001aaa: PUSH1 0x00 00001aac: REVERT 00001aad: JUMPDEST 00001aae: SWAP1 00001aaf: PUSH1 0x1f 00001ab1: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00001ad2: SWAP2 00001ad3: ADD 00001ad4: AND 00001ad5: DUP2 00001ad6: ADD 00001ad7: SWAP1 00001ad8: DUP2 00001ad9: LT 00001ada: PUSH8 0xffffffffffffffff 00001ae3: DUP3 00001ae4: GT 00001ae5: OR 00001ae6: PUSH2 0x1a7e 00001ae9: JUMPI 00001aea: PUSH1 0x40 00001aec: MSTORE 00001aed: JUMP 00001aee: JUMPDEST 00001aef: PUSH8 0xffffffffffffffff 00001af8: DUP2 00001af9: GT 00001afa: PUSH2 0x1a7e 00001afd: JUMPI 00001afe: PUSH1 0x1f 00001b00: ADD 00001b01: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00001b22: AND 00001b23: PUSH1 0x20 00001b25: ADD 00001b26: SWAP1 00001b27: JUMP 00001b28: JUMPDEST 00001b29: SWAP1 00001b2a: PUSH1 0x40 00001b2c: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 00001b4d: DUP4 00001b4e: ADD 00001b4f: SLT 00001b50: PUSH2 0x02a1 00001b53: JUMPI 00001b54: PUSH1 0x04 00001b56: CALLDATALOAD 00001b57: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b6c: DUP2 00001b6d: AND 00001b6e: DUP2 00001b6f: SUB 00001b70: PUSH2 0x02a1 00001b73: JUMPI 00001b74: SWAP2 00001b75: PUSH1 0x24 00001b77: CALLDATALOAD 00001b78: SWAP1 00001b79: PUSH8 0xffffffffffffffff 00001b82: DUP3 00001b83: GT 00001b84: PUSH2 0x02a1 00001b87: JUMPI 00001b88: PUSH2 0x1b93 00001b8b: SWAP2 00001b8c: PUSH1 0x04 00001b8e: ADD 00001b8f: PUSH2 0x1a31 00001b92: JUMP 00001b93: JUMPDEST 00001b94: SWAP1 00001b95: SWAP2 00001b96: JUMP 00001b97: JUMPDEST 00001b98: SWAP1 00001b99: DUP2 00001b9a: MLOAD 00001b9b: DUP1 00001b9c: DUP3 00001b9d: MSTORE 00001b9e: PUSH1 0x20 00001ba0: DUP1 00001ba1: DUP1 00001ba2: SWAP4 00001ba3: ADD 00001ba4: SWAP4 00001ba5: ADD 00001ba6: SWAP2 00001ba7: PUSH1 0x00 00001ba9: JUMPDEST 00001baa: DUP3 00001bab: DUP2 00001bac: LT 00001bad: PUSH2 0x1bb7 00001bb0: JUMPI 00001bb1: POP 00001bb2: POP 00001bb3: POP 00001bb4: POP 00001bb5: SWAP1 00001bb6: JUMP 00001bb7: JUMPDEST 00001bb8: DUP4 00001bb9: MLOAD 00001bba: DUP6 00001bbb: MSTORE 00001bbc: SWAP4 00001bbd: DUP2 00001bbe: ADD 00001bbf: SWAP4 00001bc0: SWAP3 00001bc1: DUP2 00001bc2: ADD 00001bc3: SWAP3 00001bc4: PUSH1 0x01 00001bc6: ADD 00001bc7: PUSH2 0x1ba9 00001bca: JUMP 00001bcb: JUMPDEST 00001bcc: ISZERO 00001bcd: PUSH2 0x1bd2 00001bd0: JUMPI 00001bd1: JUMP 00001bd2: JUMPDEST 00001bd3: PUSH1 0x84 00001bd5: PUSH1 0x40 00001bd7: MLOAD 00001bd8: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001bf9: DUP2 00001bfa: MSTORE 00001bfb: PUSH1 0x20 00001bfd: PUSH1 0x04 00001bff: DUP3 00001c00: ADD 00001c01: MSTORE 00001c02: PUSH1 0x2c 00001c04: PUSH1 0x24 00001c06: DUP3 00001c07: ADD 00001c08: MSTORE 00001c09: PUSH32 0x46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820 00001c2a: PUSH1 0x44 00001c2c: DUP3 00001c2d: ADD 00001c2e: MSTORE 00001c2f: PUSH32 0x64656c656761746563616c6c0000000000000000000000000000000000000000 00001c50: PUSH1 0x64 00001c52: DUP3 00001c53: ADD 00001c54: MSTORE 00001c55: REVERT 00001c56: JUMPDEST 00001c57: ISZERO 00001c58: PUSH2 0x1c5d 00001c5b: JUMPI 00001c5c: JUMP 00001c5d: JUMPDEST 00001c5e: PUSH1 0x84 00001c60: PUSH1 0x40 00001c62: MLOAD 00001c63: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001c84: DUP2 00001c85: MSTORE 00001c86: PUSH1 0x20 00001c88: PUSH1 0x04 00001c8a: DUP3 00001c8b: ADD 00001c8c: MSTORE 00001c8d: PUSH1 0x2c 00001c8f: PUSH1 0x24 00001c91: DUP3 00001c92: ADD 00001c93: MSTORE 00001c94: PUSH32 0x46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820 00001cb5: PUSH1 0x44 00001cb7: DUP3 00001cb8: ADD 00001cb9: MSTORE 00001cba: PUSH32 0x6163746976652070726f78790000000000000000000000000000000000000000 00001cdb: PUSH1 0x64 00001cdd: DUP3 00001cde: ADD 00001cdf: MSTORE 00001ce0: REVERT 00001ce1: JUMPDEST 00001ce2: DUP1 00001ce3: EXTCODESIZE 00001ce4: ISZERO 00001ce5: PUSH2 0x1d49 00001ce8: JUMPI 00001ce9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001cfe: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc 00001d1f: SWAP2 00001d20: AND 00001d21: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 00001d42: DUP3 00001d43: SLOAD 00001d44: AND 00001d45: OR 00001d46: SWAP1 00001d47: SSTORE 00001d48: JUMP 00001d49: JUMPDEST 00001d4a: PUSH1 0x84 00001d4c: PUSH1 0x40 00001d4e: MLOAD 00001d4f: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001d70: DUP2 00001d71: MSTORE 00001d72: PUSH1 0x20 00001d74: PUSH1 0x04 00001d76: DUP3 00001d77: ADD 00001d78: MSTORE 00001d79: PUSH1 0x2d 00001d7b: PUSH1 0x24 00001d7d: DUP3 00001d7e: ADD 00001d7f: MSTORE 00001d80: PUSH32 0x455243313936373a206e657720696d706c656d656e746174696f6e206973206e 00001da1: PUSH1 0x44 00001da3: DUP3 00001da4: ADD 00001da5: MSTORE 00001da6: PUSH32 0x6f74206120636f6e747261637400000000000000000000000000000000000000 00001dc7: PUSH1 0x64 00001dc9: DUP3 00001dca: ADD 00001dcb: MSTORE 00001dcc: REVERT 00001dcd: JUMPDEST 00001dce: RETURNDATASIZE 00001dcf: ISZERO 00001dd0: PUSH2 0x1df8 00001dd3: JUMPI 00001dd4: RETURNDATASIZE 00001dd5: SWAP1 00001dd6: PUSH2 0x1dde 00001dd9: DUP3 00001dda: PUSH2 0x1aee 00001ddd: JUMP 00001dde: JUMPDEST 00001ddf: SWAP2 00001de0: PUSH2 0x1dec 00001de3: PUSH1 0x40 00001de5: MLOAD 00001de6: SWAP4 00001de7: DUP5 00001de8: PUSH2 0x1aad 00001deb: JUMP 00001dec: JUMPDEST 00001ded: DUP3 00001dee: MSTORE 00001def: RETURNDATASIZE 00001df0: PUSH1 0x00 00001df2: PUSH1 0x20 00001df4: DUP5 00001df5: ADD 00001df6: RETURNDATACOPY 00001df7: JUMP 00001df8: JUMPDEST 00001df9: PUSH1 0x60 00001dfb: SWAP1 00001dfc: JUMP 00001dfd: JUMPDEST 00001dfe: SWAP1 00001dff: SWAP2 00001e00: SWAP1 00001e01: ISZERO 00001e02: PUSH2 0x1e09 00001e05: JUMPI 00001e06: POP 00001e07: SWAP1 00001e08: JUMP 00001e09: JUMPDEST 00001e0a: DUP2 00001e0b: MLOAD 00001e0c: ISZERO 00001e0d: PUSH2 0x1e19 00001e10: JUMPI 00001e11: POP 00001e12: DUP1 00001e13: MLOAD 00001e14: SWAP1 00001e15: PUSH1 0x20 00001e17: ADD 00001e18: REVERT 00001e19: JUMPDEST 00001e1a: PUSH1 0x40 00001e1c: MLOAD 00001e1d: SWAP1 00001e1e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001e3f: DUP3 00001e40: MSTORE 00001e41: DUP2 00001e42: PUSH1 0x20 00001e44: DUP1 00001e45: PUSH1 0x04 00001e47: DUP4 00001e48: ADD 00001e49: MSTORE 00001e4a: DUP3 00001e4b: MLOAD 00001e4c: SWAP3 00001e4d: DUP4 00001e4e: PUSH1 0x24 00001e50: DUP5 00001e51: ADD 00001e52: MSTORE 00001e53: PUSH1 0x00 00001e55: JUMPDEST 00001e56: DUP5 00001e57: DUP2 00001e58: LT 00001e59: PUSH2 0x1e96 00001e5c: JUMPI 00001e5d: POP 00001e5e: POP 00001e5f: POP 00001e60: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00001e81: PUSH1 0x1f 00001e83: DUP4 00001e84: PUSH1 0x00 00001e86: PUSH1 0x44 00001e88: DUP1 00001e89: SWAP7 00001e8a: DUP7 00001e8b: ADD 00001e8c: ADD 00001e8d: MSTORE 00001e8e: ADD 00001e8f: AND 00001e90: DUP2 00001e91: ADD 00001e92: SUB 00001e93: ADD 00001e94: SWAP1 00001e95: REVERT 00001e96: JUMPDEST 00001e97: DUP2 00001e98: DUP2 00001e99: ADD 00001e9a: DUP4 00001e9b: ADD 00001e9c: MLOAD 00001e9d: DUP7 00001e9e: DUP3 00001e9f: ADD 00001ea0: PUSH1 0x44 00001ea2: ADD 00001ea3: MSTORE 00001ea4: DUP6 00001ea5: SWAP4 00001ea6: POP 00001ea7: DUP3 00001ea8: ADD 00001ea9: PUSH2 0x1e55 00001eac: JUMP 00001ead: JUMPDEST 00001eae: PUSH8 0xffffffffffffffff 00001eb7: DUP2 00001eb8: GT 00001eb9: PUSH2 0x1a7e 00001ebc: JUMPI 00001ebd: PUSH1 0x05 00001ebf: SHL 00001ec0: PUSH1 0x20 00001ec2: ADD 00001ec3: SWAP1 00001ec4: JUMP 00001ec5: JUMPDEST 00001ec6: SWAP1 00001ec7: PUSH2 0x1ecf 00001eca: DUP3 00001ecb: PUSH2 0x1ead 00001ece: JUMP 00001ecf: JUMPDEST 00001ed0: PUSH2 0x1edc 00001ed3: PUSH1 0x40 00001ed5: MLOAD 00001ed6: SWAP2 00001ed7: DUP3 00001ed8: PUSH2 0x1aad 00001edb: JUMP 00001edc: JUMPDEST 00001edd: DUP3 00001ede: DUP2 00001edf: MSTORE 00001ee0: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00001f01: PUSH2 0x1f0a 00001f04: DUP3 00001f05: SWAP5 00001f06: PUSH2 0x1ead 00001f09: JUMP 00001f0a: JUMPDEST 00001f0b: ADD 00001f0c: SWAP1 00001f0d: PUSH1 0x20 00001f0f: CALLDATASIZE 00001f10: SWAP2 00001f11: ADD 00001f12: CALLDATACOPY 00001f13: JUMP 00001f14: JUMPDEST 00001f15: SWAP2 00001f16: SWAP1 00001f17: DUP2 00001f18: LT 00001f19: ISZERO 00001f1a: PUSH2 0x1f24 00001f1d: JUMPI 00001f1e: PUSH1 0x05 00001f20: SHL 00001f21: ADD 00001f22: SWAP1 00001f23: JUMP 00001f24: JUMPDEST 00001f25: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00001f46: PUSH1 0x00 00001f48: MSTORE 00001f49: PUSH1 0x32 00001f4b: PUSH1 0x04 00001f4d: MSTORE 00001f4e: PUSH1 0x24 00001f50: PUSH1 0x00 00001f52: REVERT 00001f53: JUMPDEST 00001f54: CALLDATALOAD 00001f55: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001f6a: DUP2 00001f6b: AND 00001f6c: DUP2 00001f6d: SUB 00001f6e: PUSH2 0x02a1 00001f71: JUMPI 00001f72: SWAP1 00001f73: JUMP 00001f74: JUMPDEST 00001f75: DUP1 00001f76: MLOAD 00001f77: DUP3 00001f78: LT 00001f79: ISZERO 00001f7a: PUSH2 0x1f24 00001f7d: JUMPI 00001f7e: PUSH1 0x20 00001f80: SWAP2 00001f81: PUSH1 0x05 00001f83: SHL 00001f84: ADD 00001f85: ADD 00001f86: SWAP1 00001f87: JUMP 00001f88: JUMPDEST 00001f89: SWAP3 00001f8a: SWAP4 00001f8b: SWAP2 00001f8c: SWAP4 00001f8d: PUSH1 0x40 00001f8f: SWAP4 00001f90: DUP5 00001f91: MLOAD 00001f92: PUSH1 0x20 00001f94: SWAP4 00001f95: PUSH32 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000 00001fb6: DUP6 00001fb7: DUP4 00001fb8: ADD 00001fb9: SWAP4 00001fba: PUSH1 0x60 00001fbc: SHL 00001fbd: AND 00001fbe: DUP4 00001fbf: MSTORE 00001fc0: PUSH1 0x34 00001fc2: DUP3 00001fc3: ADD 00001fc4: MSTORE 00001fc5: PUSH1 0x34 00001fc7: DUP2 00001fc8: MSTORE 00001fc9: PUSH2 0x1fd1 00001fcc: DUP2 00001fcd: PUSH2 0x1a62 00001fd0: JUMP 00001fd1: JUMPDEST 00001fd2: MLOAD 00001fd3: SWAP1 00001fd4: KECCAK256 00001fd5: PUSH1 0x32 00001fd7: SLOAD 00001fd8: SWAP6 00001fd9: PUSH2 0x1fe1 00001fdc: DUP4 00001fdd: PUSH2 0x1ead 00001fe0: JUMP 00001fe1: JUMPDEST 00001fe2: SWAP3 00001fe3: PUSH2 0x1fee 00001fe6: DUP8 00001fe7: MLOAD 00001fe8: SWAP5 00001fe9: DUP6 00001fea: PUSH2 0x1aad 00001fed: JUMP 00001fee: JUMPDEST 00001fef: DUP1 00001ff0: DUP5 00001ff1: MSTORE 00001ff2: DUP5 00001ff3: DUP5 00001ff4: ADD 00001ff5: SWAP1 00001ff6: PUSH1 0x05 00001ff8: SHL 00001ff9: DUP3 00001ffa: ADD 00001ffb: SWAP2 00001ffc: CALLDATASIZE 00001ffd: DUP4 00001ffe: GT 00001fff: PUSH2 0x02a1 00002002: JUMPI 00002003: DUP6 00002004: SWAP1 00002005: SWAP2 00002006: JUMPDEST 00002007: DUP4 00002008: DUP4 00002009: LT 0000200a: PUSH2 0x20ba 0000200d: JUMPI 0000200e: POP 0000200f: POP 00002010: POP 00002011: POP 00002012: SWAP3 00002013: PUSH1 0x00 00002015: SWAP4 00002016: JUMPDEST 00002017: DUP3 00002018: MLOAD 00002019: DUP6 0000201a: LT 0000201b: ISZERO 0000201c: PUSH2 0x20af 0000201f: JUMPI 00002020: PUSH2 0x2029 00002023: DUP6 00002024: DUP5 00002025: PUSH2 0x1f74 00002028: JUMP 00002029: JUMPDEST 0000202a: MLOAD 0000202b: SWAP1 0000202c: DUP7 0000202d: PUSH1 0x00 0000202f: DUP4 00002030: DUP4 00002031: LT 00002032: ISZERO 00002033: PUSH2 0x20a2 00002036: JUMPI 00002037: POP 00002038: POP 00002039: PUSH1 0x00 0000203b: MSTORE 0000203c: DUP4 0000203d: MSTORE 0000203e: DUP5 0000203f: PUSH1 0x00 00002041: KECCAK256 00002042: JUMPDEST 00002043: SWAP4 00002044: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00002065: DUP2 00002066: EQ 00002067: PUSH2 0x2073 0000206a: JUMPI 0000206b: PUSH1 0x01 0000206d: ADD 0000206e: SWAP4 0000206f: PUSH2 0x2016 00002072: JUMP 00002073: JUMPDEST 00002074: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00002095: PUSH1 0x00 00002097: MSTORE 00002098: PUSH1 0x11 0000209a: PUSH1 0x04 0000209c: MSTORE 0000209d: PUSH1 0x24 0000209f: PUSH1 0x00 000020a1: REVERT 000020a2: JUMPDEST 000020a3: SWAP2 000020a4: SWAP1 000020a5: SWAP3 000020a6: DUP3 000020a7: MSTORE 000020a8: DUP6 000020a9: MSTORE 000020aa: KECCAK256 000020ab: PUSH2 0x2042 000020ae: JUMP 000020af: JUMPDEST 000020b0: SWAP4 000020b1: POP 000020b2: SWAP5 000020b3: SWAP4 000020b4: POP 000020b5: POP 000020b6: POP 000020b7: EQ 000020b8: SWAP1 000020b9: JUMP 000020ba: JUMPDEST 000020bb: DUP3 000020bc: CALLDATALOAD 000020bd: DUP2 000020be: MSTORE 000020bf: SWAP2 000020c0: DUP2 000020c1: ADD 000020c2: SWAP2 000020c3: DUP7 000020c4: SWAP2 000020c5: ADD 000020c6: PUSH2 0x2006 000020c9: JUMP 000020ca: JUMPDEST 000020cb: ISZERO 000020cc: PUSH2 0x20d1 000020cf: JUMPI 000020d0: JUMP 000020d1: JUMPDEST 000020d2: PUSH1 0x64 000020d4: PUSH1 0x40 000020d6: MLOAD 000020d7: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000020f8: DUP2 000020f9: MSTORE 000020fa: PUSH1 0x20 000020fc: PUSH1 0x04 000020fe: DUP3 000020ff: ADD 00002100: MSTORE 00002101: PUSH1 0x20 00002103: PUSH1 0x24 00002105: DUP3 00002106: ADD 00002107: MSTORE 00002108: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572 00002129: PUSH1 0x44 0000212b: DUP3 0000212c: ADD 0000212d: MSTORE 0000212e: REVERT 0000212f: JUMPDEST 00002130: SWAP1 00002131: CALLDATALOAD 00002132: SWAP1 00002133: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1 00002154: DUP2 00002155: CALLDATASIZE 00002156: SUB 00002157: ADD 00002158: DUP3 00002159: SLT 0000215a: ISZERO 0000215b: PUSH2 0x02a1 0000215e: JUMPI 0000215f: ADD 00002160: DUP1 00002161: CALLDATALOAD 00002162: SWAP1 00002163: PUSH8 0xffffffffffffffff 0000216c: DUP3 0000216d: GT 0000216e: PUSH2 0x02a1 00002171: JUMPI 00002172: PUSH1 0x20 00002174: ADD 00002175: SWAP2 00002176: DUP2 00002177: PUSH1 0x05 00002179: SHL 0000217a: CALLDATASIZE 0000217b: SUB 0000217c: DUP4 0000217d: SGT 0000217e: PUSH2 0x02a1 00002181: JUMPI 00002182: JUMP 00002183: JUMPDEST 00002184: DUP2 00002185: ISZERO 00002186: PUSH2 0x2200 00002189: JUMPI 0000218a: PUSH1 0x00 0000218c: DUP1 0000218d: DUP1 0000218e: SWAP4 0000218f: DUP2 00002190: SWAP4 00002191: GAS 00002192: CALL 00002193: PUSH2 0x219a 00002196: PUSH2 0x1dcd 00002199: JUMP 0000219a: JUMPDEST 0000219b: POP 0000219c: ISZERO 0000219d: PUSH2 0x21a2 000021a0: JUMPI 000021a1: JUMP 000021a2: JUMPDEST 000021a3: PUSH1 0x64 000021a5: PUSH1 0x40 000021a7: MLOAD 000021a8: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000021c9: DUP2 000021ca: MSTORE 000021cb: PUSH1 0x20 000021cd: PUSH1 0x04 000021cf: DUP3 000021d0: ADD 000021d1: MSTORE 000021d2: PUSH1 0x0f 000021d4: PUSH1 0x24 000021d6: DUP3 000021d7: ADD 000021d8: MSTORE 000021d9: PUSH32 0x6574682073656e64206661696c65640000000000000000000000000000000000 000021fa: PUSH1 0x44 000021fc: DUP3 000021fd: ADD 000021fe: MSTORE 000021ff: REVERT 00002200: JUMPDEST 00002201: POP 00002202: POP 00002203: JUMP 00002204: INVALID 00002205: LOG2 00002206: PUSH5 0x6970667358 0000220c: UNKNOWN(0x22) 0000220d: SLT 0000220e: KECCAK256 0000220f: LT 00002210: SWAP1 00002211: UNKNOWN(0xC6) 00002212: DUP5 00002213: PC 00002214: UNKNOWN(0xE6) 00002215: UNKNOWN(0xE1) 00002216: EQ 00002217: UNKNOWN(0xCA) 00002218: UNKNOWN(0xA9) 00002219: UNKNOWN(0xE0) 0000221a: UNKNOWN(0xB7) 0000221b: UNKNOWN(0x26) 0000221c: PUSH13 0x1e0940a786102a145d12b21fd1 0000222a: CODECOPY 0000222b: UNKNOWN(0xB1) 0000222c: UNKNOWN(0x4C) 0000222d: ADDMOD 0000222e: DUP12 0000222f: PUSH5 0x736f6c6343 00002235: STOP 00002236: ADDMOD 00002237: GT 00002238: STOP 00002239: CALLER
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| critical | upgradeability | detector | Untrusted DELEGATECALL target reachable | 70 | no | no |
viewtrace_id: 0xcf9eadcfaf6cca8f1ffe6d107a53c222dbb6e6e414d6795a653a20b8dcaa5e83
validation_json{
"sink": "DELEGATECALL",
"errors": 0,
"status": "unknown",
"attempts": 192,
"trace_id": "0xcf9eadcfaf6cca8f1ffe6d107a53c222dbb6e6e414d6795a653a20b8dcaa5e83",
"confirmed": false,
"trace_mode": "callTracer",
"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": "0x053f6a70",
"selector": "0x053f6a70",
"calldata_variants": [
"0x053f6a70",
"0x053f6a700000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x078dfbe7",
"selector": "0x078dfbe7",
"calldata_variants": [
"0x078dfbe7",
"0x078dfbe70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0ef863f6",
"selector": "0x0ef863f6",
"calldata_variants": [
"0x0ef863f6",
"0x0ef863f60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x2eb4a7ab",
"selector": "0x2eb4a7ab",
"calldata_variants": [
"0x2eb4a7ab",
"0x2eb4a7ab0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3659cfe6",
"selector": "0x3659cfe6",
"calldata_variants": [
"0x3659cfe6",
"0x3659cfe60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4e71e0c8",
"selector": "0x4e71e0c8",
"calldata_variants": [
"0x4e71e0c8",
"0x4e71e0c80000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4f1ef286",
"selector": "0x4f1ef286",
"calldata_variants": [
"0x4f1ef286",
"0x4f1ef2860000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x52d1902d",
"selector": "0x52d1902d",
"calldata_variants": [
"0x52d1902d",
"0x52d1902d0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 4049,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
},
{
"pc": 5309,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
}
],
"guards_detected": [],
"delegatecall_count": 2,
"untrusted_delegatecall_count": 2
}
|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_id: 0x84ddb50eb247809f8cffbff5938b2d0ef32107789fdfb7a096ba3592f976c419
call_targets:
0xafaae49c7684a2f386eb18569966604973f9d83d
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x84ddb50eb247809f8cffbff5938b2d0ef32107789fdfb7a096ba3592f976c419",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xafaae49c7684a2f386eb18569966604973f9d83d"
],
"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": "0x053f6a70",
"selector": "0x053f6a70",
"calldata_variants": [
"0x053f6a70",
"0x053f6a700000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x078dfbe7",
"selector": "0x078dfbe7",
"calldata_variants": [
"0x078dfbe7",
"0x078dfbe70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0ef863f6",
"selector": "0x0ef863f6",
"calldata_variants": [
"0x0ef863f6",
"0x0ef863f60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x2eb4a7ab",
"selector": "0x2eb4a7ab",
"calldata_variants": [
"0x2eb4a7ab",
"0x2eb4a7ab0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3659cfe6",
"selector": "0x3659cfe6",
"calldata_variants": [
"0x3659cfe6",
"0x3659cfe60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4e71e0c8",
"selector": "0x4e71e0c8",
"calldata_variants": [
"0x4e71e0c8",
"0x4e71e0c80000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4f1ef286",
"selector": "0x4f1ef286",
"calldata_variants": [
"0x4f1ef286",
"0x4f1ef2860000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x52d1902d",
"selector": "0x52d1902d",
"calldata_variants": [
"0x52d1902d",
"0x52d1902d0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 8594,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 1,
"guards_detected": [],
"untrusted_call_count": 1
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0x84ddb50eb247809f8cffbff5938b2d0ef32107789fdfb7a096ba3592f976c419
call_targets:
0xafaae49c7684a2f386eb18569966604973f9d83d
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x84ddb50eb247809f8cffbff5938b2d0ef32107789fdfb7a096ba3592f976c419",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xafaae49c7684a2f386eb18569966604973f9d83d"
],
"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": "0x053f6a70",
"selector": "0x053f6a70",
"calldata_variants": [
"0x053f6a70",
"0x053f6a700000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x078dfbe7",
"selector": "0x078dfbe7",
"calldata_variants": [
"0x078dfbe7",
"0x078dfbe70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0ef863f6",
"selector": "0x0ef863f6",
"calldata_variants": [
"0x0ef863f6",
"0x0ef863f60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x2eb4a7ab",
"selector": "0x2eb4a7ab",
"calldata_variants": [
"0x2eb4a7ab",
"0x2eb4a7ab0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3659cfe6",
"selector": "0x3659cfe6",
"calldata_variants": [
"0x3659cfe6",
"0x3659cfe60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4e71e0c8",
"selector": "0x4e71e0c8",
"calldata_variants": [
"0x4e71e0c8",
"0x4e71e0c80000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4f1ef286",
"selector": "0x4f1ef286",
"calldata_variants": [
"0x4f1ef286",
"0x4f1ef2860000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x52d1902d",
"selector": "0x52d1902d",
"calldata_variants": [
"0x52d1902d",
"0x52d1902d0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 8594,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 1,
"guards_detected": []
}
|
| medium | upgradeability | cast | DELEGATECALL present | 80 | no | — |
viewevidence_json{
"notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
"delegatecall_count": 2
}
|