6256c05b-2461-4b8c-bf21-ac107d6d115f
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 |
|---|---|---|---|---|
| 31407 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 77068 | artifact.fetch | failed | 1 / 3 | 2 weeks ago |
| 77069 | tool.cast_disasm | complete | 1 / 3 | 2 weeks ago |
| 77070 | analysis.bundle | complete | 1 / 3 | 2 weeks ago |
| 77071 | capability.graph | complete | 1 / 3 | 2 weeks ago |
| 77072 | detector.run | complete | 1 / 3 | 2 weeks ago |
| 77073 | validation.fork | complete | 1 / 3 | 2 weeks ago |
No slither job recorded yet.
[codex:537126] OpenAI Codex v0.77.0 (research preview)
[codex:537126] --------
[codex:537126] workdir: /tmp/codex-multi-7zjdcx_b
[codex:537126] model: gpt-5.2-codex
[codex:537126] provider: openai
[codex:537126] approval: never
[codex:537126] sandbox: read-only
[codex:537126] reasoning effort: xhigh
[codex:537126] reasoning summaries: auto
[codex:537126] session id: 019b8151-d054-78e1-9580-4b6329f9b9bf
[codex:537126] --------
[codex:537126] user
[codex:537126] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:537126]
[codex:537126] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:537126]
[codex:537126] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:537126] - Gas inefficiency, code quality, naming, or best practices
[codex:537126] - Theoretical vulnerabilities without a clear extraction path
[codex:537126] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:537126] - Front-running unless it enables theft beyond MEV
[codex:537126] - DoS, griefing, or issues that don't result in attacker profit
[codex:537126] - Missing events, view function issues, or informational findings
[codex:537126]
[codex:537126] HIGH-VALUE PATTERNS TO HUNT:
[codex:537126] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:537126] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:537126] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:537126] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:537126] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:537126] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:537126] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:537126] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:537126] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:537126]
[codex:537126] For each finding, you MUST provide:
[codex:537126] 1. Exact file and line numbers of vulnerable code
[codex:537126] 2. Step-by-step exploit transaction sequence
[codex:537126] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:537126]
[codex:537126] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:537126]
[codex:537126] Output MUST be valid JSON matching the provided schema.
[codex:537126] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:537126] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:537126] mcp startup: no servers
[codex:537126]
[codex:537126] thinking
[codex:537126] **Preparing to read AUDIT_BUNDLE file**
[codex:537126] exec
[codex:537126] /bin/bash -lc ls in /tmp/codex-multi-7zjdcx_b succeeded in 5ms:
[codex:537126] AUDIT_BUNDLE.txt
[codex:537126] codex-output-schema.json
[codex:537126] contracts
[codex:537126] exec
[codex:537126] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-7zjdcx_b succeeded in 6ms:
[codex:537126] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:537126]
[codex:537126] ================================================================================
[codex:537126] FILE: contracts/Contract.sol
[codex:537126] ================================================================================
[codex:537126] pragma solidity 0.6.6;
[codex:537126]
[codex:537126] // File: contracts/util/TransferETHInterface.sol
[codex:537126]
[codex:537126]
[codex:537126]
[codex:537126]
[codex:537126] interface TransferETHInterface {
[codex:537126] receive() external payable;
[codex:537126]
[codex:537126] event LogTransferETH(address indexed from, address indexed to, uint256 value);
[codex:537126] }
[codex:537126]
[codex:537126] // File: contracts/util/TransferETH.sol
[codex:537126]
[codex:537126]
[codex:537126] thinking
[codex:537126] **Checking if file is complete**
[codex:537126] exec
[codex:537126] /bin/bash -lc 'tail -n 20 AUDIT_BUNDLE.txt' in /tmp/codex-multi-7zjdcx_b succeeded in 5ms:
[codex:537126]
[codex:537126]
[codex:537126]
[codex:537126]
[codex:537126] contract BondTokenCollateralizedEth is BondToken, TransferETH {
[codex:537126] constructor(
[codex:537126] string memory name,
[codex:537126] string memory symbol,
[codex:537126] uint8 decimals
[codex:537126] ) public BondToken(name, symbol, decimals) {}
[codex:537126]
[codex:537126] function _getCollateralDecimals() internal override view returns (uint8) {
[codex:537126] return 18;
[codex:537126] }
[codex:537126]
[codex:537126] function _sendCollateralTo(address receiver, uint256 amount) internal override {
[codex:537126] _transferETH(payable(receiver), amount);
[codex:537126] }
[codex:537126] }
[codex:537126]
[codex:537126]
[codex:537126] thinking
[codex:537126] **Analyzing contract for reentrancy and exploit risks**
[codex:537126]
[codex:537126] I'm auditing the BondToken contract to identify any exploit paths focused on profit extraction, especially reentrancy via external ETH transfers after state updates. The burn function updates balances before calling an external ETH transfer, but repeated or nested burns seem limited by balance checks and ownership controls. Decimal calculations appear safe with SafeMath and capped exponents. The owner-only expire function prevents changes after first call. There is no obvious vulnerability in allowance handling or unauthorized token burning, and no withdraw function exposing ETH. Overall, no clear profit-driven exploits emerge, so I'll prepare a JSON stating no findings with an explanatory summary.
[codex:537126] codex
[codex:537126] {"no_findings":true,"summary":"No concrete, exploitable profit-extraction paths found in the provided sources.","findings":[]}
[codex:537126] tokens used
[codex:537126] 10,255
[codex:537126] {"no_findings":true,"summary":"No concrete, exploitable profit-extraction paths found in the provided sources.","findings":[]}
{
"codex": {
"ran_at": "2026-01-03T00:46:48.598340+00:00",
"returncode": 0
},
"summary": "No concrete, exploitable profit-extraction paths found in the provided sources.",
"raw_final": {
"summary": "No concrete, exploitable profit-extraction 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: CALLDATASIZE 00000008: LT 00000009: PUSH2 0x0163 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0x715018a6 00000019: GT 0000001a: PUSH2 0x00c0 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0xa457c2d7 00000024: GT 00000025: PUSH2 0x0074 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xdd62ed3e 0000002f: GT 00000030: PUSH2 0x0059 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xdd62ed3e 0000003a: EQ 0000003b: PUSH2 0x05b5 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xf05fcdf2 00000045: EQ 00000046: PUSH2 0x05fd 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xf2fde38b 00000050: EQ 00000051: PUSH2 0x0643 00000054: JUMPI 00000055: PUSH2 0x01a1 00000058: JUMP 00000059: JUMPDEST 0000005a: DUP1 0000005b: PUSH4 0xa457c2d7 00000060: EQ 00000061: PUSH2 0x0529 00000064: JUMPI 00000065: DUP1 00000066: PUSH4 0xa9059cbb 0000006b: EQ 0000006c: PUSH2 0x056f 0000006f: JUMPI 00000070: PUSH2 0x01a1 00000073: JUMP 00000074: JUMPDEST 00000075: DUP1 00000076: PUSH4 0x903d8e77 0000007b: GT 0000007c: PUSH2 0x00a5 0000007f: JUMPI 00000080: DUP1 00000081: PUSH4 0x903d8e77 00000086: EQ 00000087: PUSH2 0x04bb 0000008a: JUMPI 0000008b: DUP1 0000008c: PUSH4 0x95d89b41 00000091: EQ 00000092: PUSH2 0x04ff 00000095: JUMPI 00000096: DUP1 00000097: PUSH4 0x9975038c 0000009c: EQ 0000009d: PUSH2 0x0514 000000a0: JUMPI 000000a1: PUSH2 0x01a1 000000a4: JUMP 000000a5: JUMPDEST 000000a6: DUP1 000000a7: PUSH4 0x715018a6 000000ac: EQ 000000ad: PUSH2 0x0466 000000b0: JUMPI 000000b1: DUP1 000000b2: PUSH4 0x8da5cb5b 000000b7: EQ 000000b8: PUSH2 0x047d 000000bb: JUMPI 000000bc: PUSH2 0x01a1 000000bf: JUMP 000000c0: JUMPDEST 000000c1: DUP1 000000c2: PUSH4 0x39509351 000000c7: GT 000000c8: PUSH2 0x0117 000000cb: JUMPI 000000cc: DUP1 000000cd: PUSH4 0x42966c68 000000d2: GT 000000d3: PUSH2 0x00fc 000000d6: JUMPI 000000d7: DUP1 000000d8: PUSH4 0x42966c68 000000dd: EQ 000000de: PUSH2 0x03b8 000000e1: JUMPI 000000e2: DUP1 000000e3: PUSH4 0x679aefce 000000e8: EQ 000000e9: PUSH2 0x03e2 000000ec: JUMPI 000000ed: DUP1 000000ee: PUSH4 0x70a08231 000000f3: EQ 000000f4: PUSH2 0x0426 000000f7: JUMPI 000000f8: PUSH2 0x01a1 000000fb: JUMP 000000fc: JUMPDEST 000000fd: DUP1 000000fe: PUSH4 0x39509351 00000103: EQ 00000104: PUSH2 0x032c 00000107: JUMPI 00000108: DUP1 00000109: PUSH4 0x40c10f19 0000010e: EQ 0000010f: PUSH2 0x0372 00000112: JUMPI 00000113: PUSH2 0x01a1 00000116: JUMP 00000117: JUMPDEST 00000118: DUP1 00000119: PUSH4 0x18160ddd 0000011e: GT 0000011f: PUSH2 0x0148 00000122: JUMPI 00000123: DUP1 00000124: PUSH4 0x18160ddd 00000129: EQ 0000012a: PUSH2 0x028a 0000012d: JUMPI 0000012e: DUP1 0000012f: PUSH4 0x23b872dd 00000134: EQ 00000135: PUSH2 0x02b1 00000138: JUMPI 00000139: DUP1 0000013a: PUSH4 0x313ce567 0000013f: EQ 00000140: PUSH2 0x0301 00000143: JUMPI 00000144: PUSH2 0x01a1 00000147: JUMP 00000148: JUMPDEST 00000149: DUP1 0000014a: PUSH4 0x06fdde03 0000014f: EQ 00000150: PUSH2 0x01a6 00000153: JUMPI 00000154: DUP1 00000155: PUSH4 0x095ea7b3 0000015a: EQ 0000015b: PUSH2 0x0230 0000015e: JUMPI 0000015f: PUSH2 0x01a1 00000162: JUMP 00000163: JUMPDEST 00000164: CALLDATASIZE 00000165: PUSH2 0x01a1 00000168: JUMPI 00000169: PUSH1 0x40 0000016b: DUP1 0000016c: MLOAD 0000016d: CALLVALUE 0000016e: DUP2 0000016f: MSTORE 00000170: SWAP1 00000171: MLOAD 00000172: ADDRESS 00000173: SWAP2 00000174: CALLER 00000175: SWAP2 00000176: PUSH32 0xdd4e7375a5084e0c4cc4e1bfc7ba67beb26a368120ea78d2e0948123910bbf7c 00000197: SWAP2 00000198: DUP2 00000199: SWAP1 0000019a: SUB 0000019b: PUSH1 0x20 0000019d: ADD 0000019e: SWAP1 0000019f: LOG3 000001a0: STOP 000001a1: JUMPDEST 000001a2: PUSH1 0x00 000001a4: DUP1 000001a5: REVERT 000001a6: JUMPDEST 000001a7: CALLVALUE 000001a8: DUP1 000001a9: ISZERO 000001aa: PUSH2 0x01b2 000001ad: JUMPI 000001ae: PUSH1 0x00 000001b0: DUP1 000001b1: REVERT 000001b2: JUMPDEST 000001b3: POP 000001b4: PUSH2 0x01bb 000001b7: PUSH2 0x0683 000001ba: JUMP 000001bb: JUMPDEST 000001bc: PUSH1 0x40 000001be: DUP1 000001bf: MLOAD 000001c0: PUSH1 0x20 000001c2: DUP1 000001c3: DUP3 000001c4: MSTORE 000001c5: DUP4 000001c6: MLOAD 000001c7: DUP2 000001c8: DUP4 000001c9: ADD 000001ca: MSTORE 000001cb: DUP4 000001cc: MLOAD 000001cd: SWAP2 000001ce: SWAP3 000001cf: DUP4 000001d0: SWAP3 000001d1: SWAP1 000001d2: DUP4 000001d3: ADD 000001d4: SWAP2 000001d5: DUP6 000001d6: ADD 000001d7: SWAP1 000001d8: DUP1 000001d9: DUP4 000001da: DUP4 000001db: PUSH1 0x00 000001dd: JUMPDEST 000001de: DUP4 000001df: DUP2 000001e0: LT 000001e1: ISZERO 000001e2: PUSH2 0x01f5 000001e5: JUMPI 000001e6: DUP2 000001e7: DUP2 000001e8: ADD 000001e9: MLOAD 000001ea: DUP4 000001eb: DUP3 000001ec: ADD 000001ed: MSTORE 000001ee: PUSH1 0x20 000001f0: ADD 000001f1: PUSH2 0x01dd 000001f4: JUMP 000001f5: JUMPDEST 000001f6: POP 000001f7: POP 000001f8: POP 000001f9: POP 000001fa: SWAP1 000001fb: POP 000001fc: SWAP1 000001fd: DUP2 000001fe: ADD 000001ff: SWAP1 00000200: PUSH1 0x1f 00000202: AND 00000203: DUP1 00000204: ISZERO 00000205: PUSH2 0x0222 00000208: JUMPI 00000209: DUP1 0000020a: DUP3 0000020b: SUB 0000020c: DUP1 0000020d: MLOAD 0000020e: PUSH1 0x01 00000210: DUP4 00000211: PUSH1 0x20 00000213: SUB 00000214: PUSH2 0x0100 00000217: EXP 00000218: SUB 00000219: NOT 0000021a: AND 0000021b: DUP2 0000021c: MSTORE 0000021d: PUSH1 0x20 0000021f: ADD 00000220: SWAP2 00000221: POP 00000222: JUMPDEST 00000223: POP 00000224: SWAP3 00000225: POP 00000226: POP 00000227: POP 00000228: PUSH1 0x40 0000022a: MLOAD 0000022b: DUP1 0000022c: SWAP2 0000022d: SUB 0000022e: SWAP1 0000022f: RETURN 00000230: JUMPDEST 00000231: CALLVALUE 00000232: DUP1 00000233: ISZERO 00000234: PUSH2 0x023c 00000237: JUMPI 00000238: PUSH1 0x00 0000023a: DUP1 0000023b: REVERT 0000023c: JUMPDEST 0000023d: POP 0000023e: PUSH2 0x0276 00000241: PUSH1 0x04 00000243: DUP1 00000244: CALLDATASIZE 00000245: SUB 00000246: PUSH1 0x40 00000248: DUP2 00000249: LT 0000024a: ISZERO 0000024b: PUSH2 0x0253 0000024e: JUMPI 0000024f: PUSH1 0x00 00000251: DUP1 00000252: REVERT 00000253: JUMPDEST 00000254: POP 00000255: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000026a: DUP2 0000026b: CALLDATALOAD 0000026c: AND 0000026d: SWAP1 0000026e: PUSH1 0x20 00000270: ADD 00000271: CALLDATALOAD 00000272: PUSH2 0x0737 00000275: JUMP 00000276: JUMPDEST 00000277: PUSH1 0x40 00000279: DUP1 0000027a: MLOAD 0000027b: SWAP2 0000027c: ISZERO 0000027d: ISZERO 0000027e: DUP3 0000027f: MSTORE 00000280: MLOAD 00000281: SWAP1 00000282: DUP2 00000283: SWAP1 00000284: SUB 00000285: PUSH1 0x20 00000287: ADD 00000288: SWAP1 00000289: RETURN 0000028a: JUMPDEST 0000028b: CALLVALUE 0000028c: DUP1 0000028d: ISZERO 0000028e: PUSH2 0x0296 00000291: JUMPI 00000292: PUSH1 0x00 00000294: DUP1 00000295: REVERT 00000296: JUMPDEST 00000297: POP 00000298: PUSH2 0x029f 0000029b: PUSH2 0x0755 0000029e: JUMP 0000029f: JUMPDEST 000002a0: PUSH1 0x40 000002a2: DUP1 000002a3: MLOAD 000002a4: SWAP2 000002a5: DUP3 000002a6: MSTORE 000002a7: MLOAD 000002a8: SWAP1 000002a9: DUP2 000002aa: SWAP1 000002ab: SUB 000002ac: PUSH1 0x20 000002ae: ADD 000002af: SWAP1 000002b0: RETURN 000002b1: JUMPDEST 000002b2: CALLVALUE 000002b3: DUP1 000002b4: ISZERO 000002b5: PUSH2 0x02bd 000002b8: JUMPI 000002b9: PUSH1 0x00 000002bb: DUP1 000002bc: REVERT 000002bd: JUMPDEST 000002be: POP 000002bf: PUSH2 0x0276 000002c2: PUSH1 0x04 000002c4: DUP1 000002c5: CALLDATASIZE 000002c6: SUB 000002c7: PUSH1 0x60 000002c9: DUP2 000002ca: LT 000002cb: ISZERO 000002cc: PUSH2 0x02d4 000002cf: JUMPI 000002d0: PUSH1 0x00 000002d2: DUP1 000002d3: REVERT 000002d4: JUMPDEST 000002d5: POP 000002d6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000002eb: DUP2 000002ec: CALLDATALOAD 000002ed: DUP2 000002ee: AND 000002ef: SWAP2 000002f0: PUSH1 0x20 000002f2: DUP2 000002f3: ADD 000002f4: CALLDATALOAD 000002f5: SWAP1 000002f6: SWAP2 000002f7: AND 000002f8: SWAP1 000002f9: PUSH1 0x40 000002fb: ADD 000002fc: CALLDATALOAD 000002fd: PUSH2 0x075b 00000300: JUMP 00000301: JUMPDEST 00000302: CALLVALUE 00000303: DUP1 00000304: ISZERO 00000305: PUSH2 0x030d 00000308: JUMPI 00000309: PUSH1 0x00 0000030b: DUP1 0000030c: REVERT 0000030d: JUMPDEST 0000030e: POP 0000030f: PUSH2 0x0316 00000312: PUSH2 0x07b0 00000315: JUMP 00000316: JUMPDEST 00000317: PUSH1 0x40 00000319: DUP1 0000031a: MLOAD 0000031b: PUSH1 0xff 0000031d: SWAP1 0000031e: SWAP3 0000031f: AND 00000320: DUP3 00000321: MSTORE 00000322: MLOAD 00000323: SWAP1 00000324: DUP2 00000325: SWAP1 00000326: SUB 00000327: PUSH1 0x20 00000329: ADD 0000032a: SWAP1 0000032b: RETURN 0000032c: JUMPDEST 0000032d: CALLVALUE 0000032e: DUP1 0000032f: ISZERO 00000330: PUSH2 0x0338 00000333: JUMPI 00000334: PUSH1 0x00 00000336: DUP1 00000337: REVERT 00000338: JUMPDEST 00000339: POP 0000033a: PUSH2 0x0276 0000033d: PUSH1 0x04 0000033f: DUP1 00000340: CALLDATASIZE 00000341: SUB 00000342: PUSH1 0x40 00000344: DUP2 00000345: LT 00000346: ISZERO 00000347: PUSH2 0x034f 0000034a: JUMPI 0000034b: PUSH1 0x00 0000034d: DUP1 0000034e: REVERT 0000034f: JUMPDEST 00000350: POP 00000351: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000366: DUP2 00000367: CALLDATALOAD 00000368: AND 00000369: SWAP1 0000036a: PUSH1 0x20 0000036c: ADD 0000036d: CALLDATALOAD 0000036e: PUSH2 0x07b9 00000371: JUMP 00000372: JUMPDEST 00000373: CALLVALUE 00000374: DUP1 00000375: ISZERO 00000376: PUSH2 0x037e 00000379: JUMPI 0000037a: PUSH1 0x00 0000037c: DUP1 0000037d: REVERT 0000037e: JUMPDEST 0000037f: POP 00000380: PUSH2 0x0276 00000383: PUSH1 0x04 00000385: DUP1 00000386: CALLDATASIZE 00000387: SUB 00000388: PUSH1 0x40 0000038a: DUP2 0000038b: LT 0000038c: ISZERO 0000038d: PUSH2 0x0395 00000390: JUMPI 00000391: PUSH1 0x00 00000393: DUP1 00000394: REVERT 00000395: JUMPDEST 00000396: POP 00000397: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000003ac: DUP2 000003ad: CALLDATALOAD 000003ae: AND 000003af: SWAP1 000003b0: PUSH1 0x20 000003b2: ADD 000003b3: CALLDATALOAD 000003b4: PUSH2 0x081a 000003b7: JUMP 000003b8: JUMPDEST 000003b9: CALLVALUE 000003ba: DUP1 000003bb: ISZERO 000003bc: PUSH2 0x03c4 000003bf: JUMPI 000003c0: PUSH1 0x00 000003c2: DUP1 000003c3: REVERT 000003c4: JUMPDEST 000003c5: POP 000003c6: PUSH2 0x0276 000003c9: PUSH1 0x04 000003cb: DUP1 000003cc: CALLDATASIZE 000003cd: SUB 000003ce: PUSH1 0x20 000003d0: DUP2 000003d1: LT 000003d2: ISZERO 000003d3: PUSH2 0x03db 000003d6: JUMPI 000003d7: PUSH1 0x00 000003d9: DUP1 000003da: REVERT 000003db: JUMPDEST 000003dc: POP 000003dd: CALLDATALOAD 000003de: PUSH2 0x092b 000003e1: JUMP 000003e2: JUMPDEST 000003e3: CALLVALUE 000003e4: DUP1 000003e5: ISZERO 000003e6: PUSH2 0x03ee 000003e9: JUMPI 000003ea: PUSH1 0x00 000003ec: DUP1 000003ed: REVERT 000003ee: JUMPDEST 000003ef: POP 000003f0: PUSH2 0x03f7 000003f3: PUSH2 0x09eb 000003f6: JUMP 000003f7: JUMPDEST 000003f8: PUSH1 0x40 000003fa: DUP1 000003fb: MLOAD 000003fc: PUSH16 0xffffffffffffffffffffffffffffffff 0000040d: SWAP4 0000040e: DUP5 0000040f: AND 00000410: DUP2 00000411: MSTORE 00000412: SWAP2 00000413: SWAP1 00000414: SWAP3 00000415: AND 00000416: PUSH1 0x20 00000418: DUP3 00000419: ADD 0000041a: MSTORE 0000041b: DUP2 0000041c: MLOAD 0000041d: SWAP1 0000041e: DUP2 0000041f: SWAP1 00000420: SUB 00000421: SWAP1 00000422: SWAP2 00000423: ADD 00000424: SWAP1 00000425: RETURN 00000426: JUMPDEST 00000427: CALLVALUE 00000428: DUP1 00000429: ISZERO 0000042a: PUSH2 0x0432 0000042d: JUMPI 0000042e: PUSH1 0x00 00000430: DUP1 00000431: REVERT 00000432: JUMPDEST 00000433: POP 00000434: PUSH2 0x029f 00000437: PUSH1 0x04 00000439: DUP1 0000043a: CALLDATASIZE 0000043b: SUB 0000043c: PUSH1 0x20 0000043e: DUP2 0000043f: LT 00000440: ISZERO 00000441: PUSH2 0x0449 00000444: JUMPI 00000445: PUSH1 0x00 00000447: DUP1 00000448: REVERT 00000449: JUMPDEST 0000044a: POP 0000044b: CALLDATALOAD 0000044c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000461: AND 00000462: PUSH2 0x0a1c 00000465: JUMP 00000466: JUMPDEST 00000467: CALLVALUE 00000468: DUP1 00000469: ISZERO 0000046a: PUSH2 0x0472 0000046d: JUMPI 0000046e: PUSH1 0x00 00000470: DUP1 00000471: REVERT 00000472: JUMPDEST 00000473: POP 00000474: PUSH2 0x047b 00000477: PUSH2 0x0a44 0000047a: JUMP 0000047b: JUMPDEST 0000047c: STOP 0000047d: JUMPDEST 0000047e: CALLVALUE 0000047f: DUP1 00000480: ISZERO 00000481: PUSH2 0x0489 00000484: JUMPI 00000485: PUSH1 0x00 00000487: DUP1 00000488: REVERT 00000489: JUMPDEST 0000048a: POP 0000048b: PUSH2 0x0492 0000048e: PUSH2 0x0b44 00000491: JUMP 00000492: JUMPDEST 00000493: PUSH1 0x40 00000495: DUP1 00000496: MLOAD 00000497: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000004ac: SWAP1 000004ad: SWAP3 000004ae: AND 000004af: DUP3 000004b0: MSTORE 000004b1: MLOAD 000004b2: SWAP1 000004b3: DUP2 000004b4: SWAP1 000004b5: SUB 000004b6: PUSH1 0x20 000004b8: ADD 000004b9: SWAP1 000004ba: RETURN 000004bb: JUMPDEST 000004bc: CALLVALUE 000004bd: DUP1 000004be: ISZERO 000004bf: PUSH2 0x04c7 000004c2: JUMPI 000004c3: PUSH1 0x00 000004c5: DUP1 000004c6: REVERT 000004c7: JUMPDEST 000004c8: POP 000004c9: PUSH2 0x0276 000004cc: PUSH1 0x04 000004ce: DUP1 000004cf: CALLDATASIZE 000004d0: SUB 000004d1: PUSH1 0x40 000004d3: DUP2 000004d4: LT 000004d5: ISZERO 000004d6: PUSH2 0x04de 000004d9: JUMPI 000004da: PUSH1 0x00 000004dc: DUP1 000004dd: REVERT 000004de: JUMPDEST 000004df: POP 000004e0: PUSH16 0xffffffffffffffffffffffffffffffff 000004f1: DUP2 000004f2: CALLDATALOAD 000004f3: DUP2 000004f4: AND 000004f5: SWAP2 000004f6: PUSH1 0x20 000004f8: ADD 000004f9: CALLDATALOAD 000004fa: AND 000004fb: PUSH2 0x0b60 000004fe: JUMP 000004ff: JUMPDEST 00000500: CALLVALUE 00000501: DUP1 00000502: ISZERO 00000503: PUSH2 0x050b 00000506: JUMPI 00000507: PUSH1 0x00 00000509: DUP1 0000050a: REVERT 0000050b: JUMPDEST 0000050c: POP 0000050d: PUSH2 0x01bb 00000510: PUSH2 0x0c9f 00000513: JUMP 00000514: JUMPDEST 00000515: CALLVALUE 00000516: DUP1 00000517: ISZERO 00000518: PUSH2 0x0520 0000051b: JUMPI 0000051c: PUSH1 0x00 0000051e: DUP1 0000051f: REVERT 00000520: JUMPDEST 00000521: POP 00000522: PUSH2 0x029f 00000525: PUSH2 0x0d1e 00000528: JUMP 00000529: JUMPDEST 0000052a: CALLVALUE 0000052b: DUP1 0000052c: ISZERO 0000052d: PUSH2 0x0535 00000530: JUMPI 00000531: PUSH1 0x00 00000533: DUP1 00000534: REVERT 00000535: JUMPDEST 00000536: POP 00000537: PUSH2 0x0276 0000053a: PUSH1 0x04 0000053c: DUP1 0000053d: CALLDATASIZE 0000053e: SUB 0000053f: PUSH1 0x40 00000541: DUP2 00000542: LT 00000543: ISZERO 00000544: PUSH2 0x054c 00000547: JUMPI 00000548: PUSH1 0x00 0000054a: DUP1 0000054b: REVERT 0000054c: JUMPDEST 0000054d: POP 0000054e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000563: DUP2 00000564: CALLDATALOAD 00000565: AND 00000566: SWAP1 00000567: PUSH1 0x20 00000569: ADD 0000056a: CALLDATALOAD 0000056b: PUSH2 0x0d46 0000056e: JUMP 0000056f: JUMPDEST 00000570: CALLVALUE 00000571: DUP1 00000572: ISZERO 00000573: PUSH2 0x057b 00000576: JUMPI 00000577: PUSH1 0x00 00000579: DUP1 0000057a: REVERT 0000057b: JUMPDEST 0000057c: POP 0000057d: PUSH2 0x0276 00000580: PUSH1 0x04 00000582: DUP1 00000583: CALLDATASIZE 00000584: SUB 00000585: PUSH1 0x40 00000587: DUP2 00000588: LT 00000589: ISZERO 0000058a: PUSH2 0x0592 0000058d: JUMPI 0000058e: PUSH1 0x00 00000590: DUP1 00000591: REVERT 00000592: JUMPDEST 00000593: POP 00000594: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000005a9: DUP2 000005aa: CALLDATALOAD 000005ab: AND 000005ac: SWAP1 000005ad: PUSH1 0x20 000005af: ADD 000005b0: CALLDATALOAD 000005b1: PUSH2 0x0dc1 000005b4: JUMP 000005b5: JUMPDEST 000005b6: CALLVALUE 000005b7: DUP1 000005b8: ISZERO 000005b9: PUSH2 0x05c1 000005bc: JUMPI 000005bd: PUSH1 0x00 000005bf: DUP1 000005c0: REVERT 000005c1: JUMPDEST 000005c2: POP 000005c3: PUSH2 0x029f 000005c6: PUSH1 0x04 000005c8: DUP1 000005c9: CALLDATASIZE 000005ca: SUB 000005cb: PUSH1 0x40 000005cd: DUP2 000005ce: LT 000005cf: ISZERO 000005d0: PUSH2 0x05d8 000005d3: JUMPI 000005d4: PUSH1 0x00 000005d6: DUP1 000005d7: REVERT 000005d8: JUMPDEST 000005d9: POP 000005da: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000005ef: DUP2 000005f0: CALLDATALOAD 000005f1: DUP2 000005f2: AND 000005f3: SWAP2 000005f4: PUSH1 0x20 000005f6: ADD 000005f7: CALLDATALOAD 000005f8: AND 000005f9: PUSH2 0x0dce 000005fc: JUMP 000005fd: JUMPDEST 000005fe: CALLVALUE 000005ff: DUP1 00000600: ISZERO 00000601: PUSH2 0x0609 00000604: JUMPI 00000605: PUSH1 0x00 00000607: DUP1 00000608: REVERT 00000609: JUMPDEST 0000060a: POP 0000060b: PUSH2 0x0276 0000060e: PUSH1 0x04 00000610: DUP1 00000611: CALLDATASIZE 00000612: SUB 00000613: PUSH1 0x40 00000615: DUP2 00000616: LT 00000617: ISZERO 00000618: PUSH2 0x0620 0000061b: JUMPI 0000061c: PUSH1 0x00 0000061e: DUP1 0000061f: REVERT 00000620: JUMPDEST 00000621: POP 00000622: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000637: DUP2 00000638: CALLDATALOAD 00000639: AND 0000063a: SWAP1 0000063b: PUSH1 0x20 0000063d: ADD 0000063e: CALLDATALOAD 0000063f: PUSH2 0x0e06 00000642: JUMP 00000643: JUMPDEST 00000644: CALLVALUE 00000645: DUP1 00000646: ISZERO 00000647: PUSH2 0x064f 0000064a: JUMPI 0000064b: PUSH1 0x00 0000064d: DUP1 0000064e: REVERT 0000064f: JUMPDEST 00000650: POP 00000651: PUSH2 0x047b 00000654: PUSH1 0x04 00000656: DUP1 00000657: CALLDATASIZE 00000658: SUB 00000659: PUSH1 0x20 0000065b: DUP2 0000065c: LT 0000065d: ISZERO 0000065e: PUSH2 0x0666 00000661: JUMPI 00000662: PUSH1 0x00 00000664: DUP1 00000665: REVERT 00000666: JUMPDEST 00000667: POP 00000668: CALLDATALOAD 00000669: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000067e: AND 0000067f: PUSH2 0x0ebb 00000682: JUMP 00000683: JUMPDEST 00000684: PUSH1 0x04 00000686: DUP1 00000687: SLOAD 00000688: PUSH1 0x40 0000068a: DUP1 0000068b: MLOAD 0000068c: PUSH1 0x20 0000068e: PUSH1 0x1f 00000690: PUSH1 0x02 00000692: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 000006b3: PUSH2 0x0100 000006b6: PUSH1 0x01 000006b8: DUP9 000006b9: AND 000006ba: ISZERO 000006bb: MUL 000006bc: ADD 000006bd: SWAP1 000006be: SWAP6 000006bf: AND 000006c0: SWAP5 000006c1: SWAP1 000006c2: SWAP5 000006c3: DIV 000006c4: SWAP4 000006c5: DUP5 000006c6: ADD 000006c7: DUP2 000006c8: SWAP1 000006c9: DIV 000006ca: DUP2 000006cb: MUL 000006cc: DUP3 000006cd: ADD 000006ce: DUP2 000006cf: ADD 000006d0: SWAP1 000006d1: SWAP3 000006d2: MSTORE 000006d3: DUP3 000006d4: DUP2 000006d5: MSTORE 000006d6: PUSH1 0x60 000006d8: SWAP4 000006d9: SWAP1 000006da: SWAP3 000006db: SWAP1 000006dc: SWAP2 000006dd: DUP4 000006de: ADD 000006df: DUP3 000006e0: DUP3 000006e1: DUP1 000006e2: ISZERO 000006e3: PUSH2 0x072d 000006e6: JUMPI 000006e7: DUP1 000006e8: PUSH1 0x1f 000006ea: LT 000006eb: PUSH2 0x0702 000006ee: JUMPI 000006ef: PUSH2 0x0100 000006f2: DUP1 000006f3: DUP4 000006f4: SLOAD 000006f5: DIV 000006f6: MUL 000006f7: DUP4 000006f8: MSTORE 000006f9: SWAP2 000006fa: PUSH1 0x20 000006fc: ADD 000006fd: SWAP2 000006fe: PUSH2 0x072d 00000701: JUMP 00000702: JUMPDEST 00000703: DUP3 00000704: ADD 00000705: SWAP2 00000706: SWAP1 00000707: PUSH1 0x00 00000709: MSTORE 0000070a: PUSH1 0x20 0000070c: PUSH1 0x00 0000070e: KECCAK256 0000070f: SWAP1 00000710: JUMPDEST 00000711: DUP2 00000712: SLOAD 00000713: DUP2 00000714: MSTORE 00000715: SWAP1 00000716: PUSH1 0x01 00000718: ADD 00000719: SWAP1 0000071a: PUSH1 0x20 0000071c: ADD 0000071d: DUP1 0000071e: DUP4 0000071f: GT 00000720: PUSH2 0x0710 00000723: JUMPI 00000724: DUP3 00000725: SWAP1 00000726: SUB 00000727: PUSH1 0x1f 00000729: AND 0000072a: DUP3 0000072b: ADD 0000072c: SWAP2 0000072d: JUMPDEST 0000072e: POP 0000072f: POP 00000730: POP 00000731: POP 00000732: POP 00000733: SWAP1 00000734: POP 00000735: SWAP1 00000736: JUMP 00000737: JUMPDEST 00000738: PUSH1 0x00 0000073a: PUSH2 0x074b 0000073d: PUSH2 0x0744 00000740: PUSH2 0x1045 00000743: JUMP 00000744: JUMPDEST 00000745: DUP5 00000746: DUP5 00000747: PUSH2 0x1049 0000074a: JUMP 0000074b: JUMPDEST 0000074c: POP 0000074d: PUSH1 0x01 0000074f: JUMPDEST 00000750: SWAP3 00000751: SWAP2 00000752: POP 00000753: POP 00000754: JUMP 00000755: JUMPDEST 00000756: PUSH1 0x03 00000758: SLOAD 00000759: SWAP1 0000075a: JUMP 0000075b: JUMPDEST 0000075c: PUSH1 0x00 0000075e: PUSH2 0x0768 00000761: DUP5 00000762: DUP5 00000763: DUP5 00000764: PUSH2 0x1190 00000767: JUMP 00000768: JUMPDEST 00000769: PUSH2 0x07a6 0000076c: DUP5 0000076d: CALLER 0000076e: PUSH2 0x07a1 00000771: DUP6 00000772: PUSH1 0x40 00000774: MLOAD 00000775: DUP1 00000776: PUSH1 0x60 00000778: ADD 00000779: PUSH1 0x40 0000077b: MSTORE 0000077c: DUP1 0000077d: PUSH1 0x28 0000077f: DUP2 00000780: MSTORE 00000781: PUSH1 0x20 00000783: ADD 00000784: PUSH2 0x1d6a 00000787: PUSH1 0x28 00000789: SWAP2 0000078a: CODECOPY 0000078b: PUSH2 0x0794 0000078e: DUP11 0000078f: CALLER 00000790: PUSH2 0x0dce 00000793: JUMP 00000794: JUMPDEST 00000795: SWAP2 00000796: SWAP1 00000797: PUSH4 0xffffffff 0000079c: PUSH2 0x136e 0000079f: AND 000007a0: JUMP 000007a1: JUMPDEST 000007a2: PUSH2 0x1049 000007a5: JUMP 000007a6: JUMPDEST 000007a7: POP 000007a8: PUSH1 0x01 000007aa: SWAP4 000007ab: SWAP3 000007ac: POP 000007ad: POP 000007ae: POP 000007af: JUMP 000007b0: JUMPDEST 000007b1: PUSH1 0x06 000007b3: SLOAD 000007b4: PUSH1 0xff 000007b6: AND 000007b7: SWAP1 000007b8: JUMP 000007b9: JUMPDEST 000007ba: PUSH1 0x00 000007bc: PUSH2 0x074b 000007bf: PUSH2 0x07c6 000007c2: PUSH2 0x1045 000007c5: JUMP 000007c6: JUMPDEST 000007c7: DUP5 000007c8: PUSH2 0x07a1 000007cb: DUP6 000007cc: PUSH1 0x02 000007ce: PUSH1 0x00 000007d0: PUSH2 0x07d7 000007d3: PUSH2 0x1045 000007d6: JUMP 000007d7: JUMPDEST 000007d8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000007ed: SWAP1 000007ee: DUP2 000007ef: AND 000007f0: DUP3 000007f1: MSTORE 000007f2: PUSH1 0x20 000007f4: DUP1 000007f5: DUP4 000007f6: ADD 000007f7: SWAP4 000007f8: SWAP1 000007f9: SWAP4 000007fa: MSTORE 000007fb: PUSH1 0x40 000007fd: SWAP2 000007fe: DUP3 000007ff: ADD 00000800: PUSH1 0x00 00000802: SWAP1 00000803: DUP2 00000804: KECCAK256 00000805: SWAP2 00000806: DUP13 00000807: AND 00000808: DUP2 00000809: MSTORE 0000080a: SWAP3 0000080b: MSTORE 0000080c: SWAP1 0000080d: KECCAK256 0000080e: SLOAD 0000080f: SWAP1 00000810: PUSH4 0xffffffff 00000815: PUSH2 0x141f 00000818: AND 00000819: JUMP 0000081a: JUMPDEST 0000081b: PUSH1 0x00 0000081d: PUSH2 0x0824 00000820: PUSH2 0x1045 00000823: JUMP 00000824: JUMPDEST 00000825: PUSH1 0x00 00000827: SLOAD 00000828: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000083d: SWAP1 0000083e: DUP2 0000083f: AND 00000840: SWAP2 00000841: AND 00000842: EQ 00000843: PUSH2 0x08ad 00000846: JUMPI 00000847: PUSH1 0x40 00000849: DUP1 0000084a: MLOAD 0000084b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000086c: DUP2 0000086d: MSTORE 0000086e: PUSH1 0x20 00000870: PUSH1 0x04 00000872: DUP3 00000873: ADD 00000874: DUP2 00000875: SWAP1 00000876: MSTORE 00000877: PUSH1 0x24 00000879: DUP3 0000087a: ADD 0000087b: MSTORE 0000087c: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572 0000089d: PUSH1 0x44 0000089f: DUP3 000008a0: ADD 000008a1: MSTORE 000008a2: SWAP1 000008a3: MLOAD 000008a4: SWAP1 000008a5: DUP2 000008a6: SWAP1 000008a7: SUB 000008a8: PUSH1 0x64 000008aa: ADD 000008ab: SWAP1 000008ac: REVERT 000008ad: JUMPDEST 000008ae: PUSH2 0x08b5 000008b1: PUSH2 0x149a 000008b4: JUMP 000008b5: JUMPDEST 000008b6: ISZERO 000008b7: PUSH2 0x0921 000008ba: JUMPI 000008bb: PUSH1 0x40 000008bd: DUP1 000008be: MLOAD 000008bf: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000008e0: DUP2 000008e1: MSTORE 000008e2: PUSH1 0x20 000008e4: PUSH1 0x04 000008e6: DUP3 000008e7: ADD 000008e8: MSTORE 000008e9: PUSH1 0x1f 000008eb: PUSH1 0x24 000008ed: DUP3 000008ee: ADD 000008ef: MSTORE 000008f0: PUSH32 0x7468697320746f6b656e20636f6e747261637420686173206578706972656400 00000911: PUSH1 0x44 00000913: DUP3 00000914: ADD 00000915: MSTORE 00000916: SWAP1 00000917: MLOAD 00000918: SWAP1 00000919: DUP2 0000091a: SWAP1 0000091b: SUB 0000091c: PUSH1 0x64 0000091e: ADD 0000091f: SWAP1 00000920: REVERT 00000921: JUMPDEST 00000922: PUSH2 0x074b 00000925: DUP4 00000926: DUP4 00000927: PUSH2 0x14c8 0000092a: JUMP 0000092b: JUMPDEST 0000092c: PUSH1 0x00 0000092e: PUSH2 0x0935 00000931: PUSH2 0x149a 00000934: JUMP 00000935: JUMPDEST 00000936: PUSH2 0x0941 00000939: JUMPI 0000093a: POP 0000093b: PUSH1 0x00 0000093d: PUSH2 0x09e6 00000940: JUMP 00000941: JUMPDEST 00000942: PUSH2 0x094b 00000945: CALLER 00000946: DUP4 00000947: PUSH2 0x1607 0000094a: JUMP 0000094b: JUMPDEST 0000094c: PUSH1 0x07 0000094e: SLOAD 0000094f: PUSH16 0xffffffffffffffffffffffffffffffff 00000960: AND 00000961: ISZERO 00000962: PUSH2 0x09e2 00000965: JUMPI 00000966: PUSH1 0x00 00000968: PUSH2 0x096f 0000096b: PUSH2 0x175d 0000096e: JUMP 0000096f: JUMPDEST 00000970: PUSH1 0x07 00000972: SLOAD 00000973: SWAP1 00000974: SWAP2 00000975: POP 00000976: PUSH1 0x00 00000978: SWAP1 00000979: PUSH2 0x09d3 0000097c: SWAP1 0000097d: PUSH16 0xffffffffffffffffffffffffffffffff 0000098e: PUSH17 0x0100000000000000000000000000000000 000009a0: DUP3 000009a1: DIV 000009a2: DUP2 000009a3: AND 000009a4: SWAP2 000009a5: PUSH2 0x09c7 000009a8: SWAP2 000009a9: AND 000009aa: PUSH2 0x09bb 000009ad: DUP9 000009ae: PUSH2 0x09b5 000009b1: PUSH2 0x07b0 000009b4: JUMP 000009b5: JUMPDEST 000009b6: DUP9 000009b7: PUSH2 0x1762 000009ba: JUMP 000009bb: JUMPDEST 000009bc: SWAP1 000009bd: PUSH4 0xffffffff 000009c2: PUSH2 0x1824 000009c5: AND 000009c6: JUMP 000009c7: JUMPDEST 000009c8: SWAP1 000009c9: PUSH4 0xffffffff 000009ce: PUSH2 0x1897 000009d1: AND 000009d2: JUMP 000009d3: JUMPDEST 000009d4: SWAP1 000009d5: POP 000009d6: PUSH2 0x09df 000009d9: CALLER 000009da: DUP3 000009db: PUSH2 0x18d9 000009de: JUMP 000009df: JUMPDEST 000009e0: POP 000009e1: POP 000009e2: JUMPDEST 000009e3: POP 000009e4: PUSH1 0x01 000009e6: JUMPDEST 000009e7: SWAP2 000009e8: SWAP1 000009e9: POP 000009ea: JUMP 000009eb: JUMPDEST 000009ec: PUSH1 0x07 000009ee: SLOAD 000009ef: PUSH16 0xffffffffffffffffffffffffffffffff 00000a00: DUP1 00000a01: DUP3 00000a02: AND 00000a03: SWAP3 00000a04: PUSH17 0x0100000000000000000000000000000000 00000a16: SWAP1 00000a17: SWAP3 00000a18: DIV 00000a19: AND 00000a1a: SWAP1 00000a1b: JUMP 00000a1c: JUMPDEST 00000a1d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a32: AND 00000a33: PUSH1 0x00 00000a35: SWAP1 00000a36: DUP2 00000a37: MSTORE 00000a38: PUSH1 0x01 00000a3a: PUSH1 0x20 00000a3c: MSTORE 00000a3d: PUSH1 0x40 00000a3f: SWAP1 00000a40: KECCAK256 00000a41: SLOAD 00000a42: SWAP1 00000a43: JUMP 00000a44: JUMPDEST 00000a45: PUSH2 0x0a4c 00000a48: PUSH2 0x1045 00000a4b: JUMP 00000a4c: JUMPDEST 00000a4d: PUSH1 0x00 00000a4f: SLOAD 00000a50: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a65: SWAP1 00000a66: DUP2 00000a67: AND 00000a68: SWAP2 00000a69: AND 00000a6a: EQ 00000a6b: PUSH2 0x0ad5 00000a6e: JUMPI 00000a6f: PUSH1 0x40 00000a71: DUP1 00000a72: MLOAD 00000a73: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000a94: DUP2 00000a95: MSTORE 00000a96: PUSH1 0x20 00000a98: PUSH1 0x04 00000a9a: DUP3 00000a9b: ADD 00000a9c: DUP2 00000a9d: SWAP1 00000a9e: MSTORE 00000a9f: PUSH1 0x24 00000aa1: DUP3 00000aa2: ADD 00000aa3: MSTORE 00000aa4: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572 00000ac5: PUSH1 0x44 00000ac7: DUP3 00000ac8: ADD 00000ac9: MSTORE 00000aca: SWAP1 00000acb: MLOAD 00000acc: SWAP1 00000acd: DUP2 00000ace: SWAP1 00000acf: SUB 00000ad0: PUSH1 0x64 00000ad2: ADD 00000ad3: SWAP1 00000ad4: REVERT 00000ad5: JUMPDEST 00000ad6: PUSH1 0x00 00000ad8: DUP1 00000ad9: SLOAD 00000ada: PUSH1 0x40 00000adc: MLOAD 00000add: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000af2: SWAP1 00000af3: SWAP2 00000af4: AND 00000af5: SWAP1 00000af6: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 00000b17: SWAP1 00000b18: DUP4 00000b19: SWAP1 00000b1a: LOG3 00000b1b: PUSH1 0x00 00000b1d: DUP1 00000b1e: SLOAD 00000b1f: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 00000b40: AND 00000b41: SWAP1 00000b42: SSTORE 00000b43: JUMP 00000b44: JUMPDEST 00000b45: PUSH1 0x00 00000b47: SLOAD 00000b48: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000b5d: AND 00000b5e: SWAP1 00000b5f: JUMP 00000b60: JUMPDEST 00000b61: PUSH1 0x00 00000b63: PUSH2 0x0b6a 00000b66: PUSH2 0x1045 00000b69: JUMP 00000b6a: JUMPDEST 00000b6b: PUSH1 0x00 00000b6d: SLOAD 00000b6e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000b83: SWAP1 00000b84: DUP2 00000b85: AND 00000b86: SWAP2 00000b87: AND 00000b88: EQ 00000b89: PUSH2 0x0bf3 00000b8c: JUMPI 00000b8d: PUSH1 0x40 00000b8f: DUP1 00000b90: MLOAD 00000b91: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000bb2: DUP2 00000bb3: MSTORE 00000bb4: PUSH1 0x20 00000bb6: PUSH1 0x04 00000bb8: DUP3 00000bb9: ADD 00000bba: DUP2 00000bbb: SWAP1 00000bbc: MSTORE 00000bbd: PUSH1 0x24 00000bbf: DUP3 00000bc0: ADD 00000bc1: MSTORE 00000bc2: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572 00000be3: PUSH1 0x44 00000be5: DUP3 00000be6: ADD 00000be7: MSTORE 00000be8: SWAP1 00000be9: MLOAD 00000bea: SWAP1 00000beb: DUP2 00000bec: SWAP1 00000bed: SUB 00000bee: PUSH1 0x64 00000bf0: ADD 00000bf1: SWAP1 00000bf2: REVERT 00000bf3: JUMPDEST 00000bf4: PUSH2 0x0bfb 00000bf7: PUSH2 0x149a 00000bfa: JUMP 00000bfb: JUMPDEST 00000bfc: ISZERO 00000bfd: SWAP1 00000bfe: POP 00000bff: DUP1 00000c00: ISZERO 00000c01: PUSH2 0x0c45 00000c04: JUMPI 00000c05: PUSH2 0x0c45 00000c08: PUSH1 0x40 00000c0a: MLOAD 00000c0b: DUP1 00000c0c: PUSH1 0x40 00000c0e: ADD 00000c0f: PUSH1 0x40 00000c11: MSTORE 00000c12: DUP1 00000c13: DUP6 00000c14: PUSH16 0xffffffffffffffffffffffffffffffff 00000c25: AND 00000c26: DUP2 00000c27: MSTORE 00000c28: PUSH1 0x20 00000c2a: ADD 00000c2b: DUP5 00000c2c: PUSH16 0xffffffffffffffffffffffffffffffff 00000c3d: AND 00000c3e: DUP2 00000c3f: MSTORE 00000c40: POP 00000c41: PUSH2 0x18e7 00000c44: JUMP 00000c45: JUMPDEST 00000c46: PUSH1 0x40 00000c48: DUP1 00000c49: MLOAD 00000c4a: PUSH16 0xffffffffffffffffffffffffffffffff 00000c5b: DUP1 00000c5c: DUP7 00000c5d: AND 00000c5e: DUP3 00000c5f: MSTORE 00000c60: DUP5 00000c61: AND 00000c62: PUSH1 0x20 00000c64: DUP3 00000c65: ADD 00000c66: MSTORE 00000c67: DUP3 00000c68: ISZERO 00000c69: ISZERO 00000c6a: DUP2 00000c6b: DUP4 00000c6c: ADD 00000c6d: MSTORE 00000c6e: SWAP1 00000c6f: MLOAD 00000c70: PUSH32 0xcdcd2e977c58a9c82d799c0986ab5c6fe48d43a9b96bbf60a654b46728c6f667 00000c91: SWAP2 00000c92: DUP2 00000c93: SWAP1 00000c94: SUB 00000c95: PUSH1 0x60 00000c97: ADD 00000c98: SWAP1 00000c99: LOG1 00000c9a: SWAP3 00000c9b: SWAP2 00000c9c: POP 00000c9d: POP 00000c9e: JUMP 00000c9f: JUMPDEST 00000ca0: PUSH1 0x05 00000ca2: DUP1 00000ca3: SLOAD 00000ca4: PUSH1 0x40 00000ca6: DUP1 00000ca7: MLOAD 00000ca8: PUSH1 0x20 00000caa: PUSH1 0x1f 00000cac: PUSH1 0x02 00000cae: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00000ccf: PUSH2 0x0100 00000cd2: PUSH1 0x01 00000cd4: DUP9 00000cd5: AND 00000cd6: ISZERO 00000cd7: MUL 00000cd8: ADD 00000cd9: SWAP1 00000cda: SWAP6 00000cdb: AND 00000cdc: SWAP5 00000cdd: SWAP1 00000cde: SWAP5 00000cdf: DIV 00000ce0: SWAP4 00000ce1: DUP5 00000ce2: ADD 00000ce3: DUP2 00000ce4: SWAP1 00000ce5: DIV 00000ce6: DUP2 00000ce7: MUL 00000ce8: DUP3 00000ce9: ADD 00000cea: DUP2 00000ceb: ADD 00000cec: SWAP1 00000ced: SWAP3 00000cee: MSTORE 00000cef: DUP3 00000cf0: DUP2 00000cf1: MSTORE 00000cf2: PUSH1 0x60 00000cf4: SWAP4 00000cf5: SWAP1 00000cf6: SWAP3 00000cf7: SWAP1 00000cf8: SWAP2 00000cf9: DUP4 00000cfa: ADD 00000cfb: DUP3 00000cfc: DUP3 00000cfd: DUP1 00000cfe: ISZERO 00000cff: PUSH2 0x072d 00000d02: JUMPI 00000d03: DUP1 00000d04: PUSH1 0x1f 00000d06: LT 00000d07: PUSH2 0x0702 00000d0a: JUMPI 00000d0b: PUSH2 0x0100 00000d0e: DUP1 00000d0f: DUP4 00000d10: SLOAD 00000d11: DIV 00000d12: MUL 00000d13: DUP4 00000d14: MSTORE 00000d15: SWAP2 00000d16: PUSH1 0x20 00000d18: ADD 00000d19: SWAP2 00000d1a: PUSH2 0x072d 00000d1d: JUMP 00000d1e: JUMPDEST 00000d1f: PUSH1 0x00 00000d21: PUSH2 0x0d29 00000d24: CALLER 00000d25: PUSH2 0x0a1c 00000d28: JUMP 00000d29: JUMPDEST 00000d2a: SWAP1 00000d2b: POP 00000d2c: PUSH1 0x00 00000d2e: PUSH2 0x0d36 00000d31: DUP3 00000d32: PUSH2 0x092b 00000d35: JUMP 00000d36: JUMPDEST 00000d37: SWAP1 00000d38: POP 00000d39: DUP1 00000d3a: PUSH2 0x0d42 00000d3d: JUMPI 00000d3e: PUSH1 0x00 00000d40: SWAP2 00000d41: POP 00000d42: JUMPDEST 00000d43: POP 00000d44: SWAP1 00000d45: JUMP 00000d46: JUMPDEST 00000d47: PUSH1 0x00 00000d49: PUSH2 0x074b 00000d4c: PUSH2 0x0d53 00000d4f: PUSH2 0x1045 00000d52: JUMP 00000d53: JUMPDEST 00000d54: DUP5 00000d55: PUSH2 0x07a1 00000d58: DUP6 00000d59: PUSH1 0x40 00000d5b: MLOAD 00000d5c: DUP1 00000d5d: PUSH1 0x60 00000d5f: ADD 00000d60: PUSH1 0x40 00000d62: MSTORE 00000d63: DUP1 00000d64: PUSH1 0x25 00000d66: DUP2 00000d67: MSTORE 00000d68: PUSH1 0x20 00000d6a: ADD 00000d6b: PUSH2 0x1e28 00000d6e: PUSH1 0x25 00000d70: SWAP2 00000d71: CODECOPY 00000d72: PUSH1 0x02 00000d74: PUSH1 0x00 00000d76: PUSH2 0x0d7d 00000d79: PUSH2 0x1045 00000d7c: JUMP 00000d7d: JUMPDEST 00000d7e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000d93: SWAP1 00000d94: DUP2 00000d95: AND 00000d96: DUP3 00000d97: MSTORE 00000d98: PUSH1 0x20 00000d9a: DUP1 00000d9b: DUP4 00000d9c: ADD 00000d9d: SWAP4 00000d9e: SWAP1 00000d9f: SWAP4 00000da0: MSTORE 00000da1: PUSH1 0x40 00000da3: SWAP2 00000da4: DUP3 00000da5: ADD 00000da6: PUSH1 0x00 00000da8: SWAP1 00000da9: DUP2 00000daa: KECCAK256 00000dab: SWAP2 00000dac: DUP14 00000dad: AND 00000dae: DUP2 00000daf: MSTORE 00000db0: SWAP3 00000db1: MSTORE 00000db2: SWAP1 00000db3: KECCAK256 00000db4: SLOAD 00000db5: SWAP2 00000db6: SWAP1 00000db7: PUSH4 0xffffffff 00000dbc: PUSH2 0x136e 00000dbf: AND 00000dc0: JUMP 00000dc1: JUMPDEST 00000dc2: PUSH1 0x00 00000dc4: PUSH2 0x074b 00000dc7: CALLER 00000dc8: DUP5 00000dc9: DUP5 00000dca: PUSH2 0x1190 00000dcd: JUMP 00000dce: JUMPDEST 00000dcf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000de4: SWAP2 00000de5: DUP3 00000de6: AND 00000de7: PUSH1 0x00 00000de9: SWAP1 00000dea: DUP2 00000deb: MSTORE 00000dec: PUSH1 0x02 00000dee: PUSH1 0x20 00000df0: SWAP1 00000df1: DUP2 00000df2: MSTORE 00000df3: PUSH1 0x40 00000df5: DUP1 00000df6: DUP4 00000df7: KECCAK256 00000df8: SWAP4 00000df9: SWAP1 00000dfa: SWAP5 00000dfb: AND 00000dfc: DUP3 00000dfd: MSTORE 00000dfe: SWAP2 00000dff: SWAP1 00000e00: SWAP2 00000e01: MSTORE 00000e02: KECCAK256 00000e03: SLOAD 00000e04: SWAP1 00000e05: JUMP 00000e06: JUMPDEST 00000e07: PUSH1 0x00 00000e09: PUSH2 0x0e10 00000e0c: PUSH2 0x1045 00000e0f: JUMP 00000e10: JUMPDEST 00000e11: PUSH1 0x00 00000e13: SLOAD 00000e14: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e29: SWAP1 00000e2a: DUP2 00000e2b: AND 00000e2c: SWAP2 00000e2d: AND 00000e2e: EQ 00000e2f: PUSH2 0x0e99 00000e32: JUMPI 00000e33: PUSH1 0x40 00000e35: DUP1 00000e36: MLOAD 00000e37: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000e58: DUP2 00000e59: MSTORE 00000e5a: PUSH1 0x20 00000e5c: PUSH1 0x04 00000e5e: DUP3 00000e5f: ADD 00000e60: DUP2 00000e61: SWAP1 00000e62: MSTORE 00000e63: PUSH1 0x24 00000e65: DUP3 00000e66: ADD 00000e67: MSTORE 00000e68: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572 00000e89: PUSH1 0x44 00000e8b: DUP3 00000e8c: ADD 00000e8d: MSTORE 00000e8e: SWAP1 00000e8f: MLOAD 00000e90: SWAP1 00000e91: DUP2 00000e92: SWAP1 00000e93: SUB 00000e94: PUSH1 0x64 00000e96: ADD 00000e97: SWAP1 00000e98: REVERT 00000e99: JUMPDEST 00000e9a: PUSH2 0x0ea2 00000e9d: DUP4 00000e9e: PUSH2 0x0a1c 00000ea1: JUMP 00000ea2: JUMPDEST 00000ea3: DUP3 00000ea4: GT 00000ea5: ISZERO 00000ea6: PUSH2 0x0eb1 00000ea9: JUMPI 00000eaa: POP 00000eab: PUSH1 0x00 00000ead: PUSH2 0x074f 00000eb0: JUMP 00000eb1: JUMPDEST 00000eb2: PUSH2 0x074b 00000eb5: DUP4 00000eb6: DUP4 00000eb7: PUSH2 0x1607 00000eba: JUMP 00000ebb: JUMPDEST 00000ebc: PUSH2 0x0ec3 00000ebf: PUSH2 0x1045 00000ec2: JUMP 00000ec3: JUMPDEST 00000ec4: PUSH1 0x00 00000ec6: SLOAD 00000ec7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000edc: SWAP1 00000edd: DUP2 00000ede: AND 00000edf: SWAP2 00000ee0: AND 00000ee1: EQ 00000ee2: PUSH2 0x0f4c 00000ee5: JUMPI 00000ee6: PUSH1 0x40 00000ee8: DUP1 00000ee9: MLOAD 00000eea: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000f0b: DUP2 00000f0c: MSTORE 00000f0d: PUSH1 0x20 00000f0f: PUSH1 0x04 00000f11: DUP3 00000f12: ADD 00000f13: DUP2 00000f14: SWAP1 00000f15: MSTORE 00000f16: PUSH1 0x24 00000f18: DUP3 00000f19: ADD 00000f1a: MSTORE 00000f1b: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572 00000f3c: PUSH1 0x44 00000f3e: DUP3 00000f3f: ADD 00000f40: MSTORE 00000f41: SWAP1 00000f42: MLOAD 00000f43: SWAP1 00000f44: DUP2 00000f45: SWAP1 00000f46: SUB 00000f47: PUSH1 0x64 00000f49: ADD 00000f4a: SWAP1 00000f4b: REVERT 00000f4c: JUMPDEST 00000f4d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000f62: DUP2 00000f63: AND 00000f64: PUSH2 0x0fb8 00000f67: JUMPI 00000f68: PUSH1 0x40 00000f6a: MLOAD 00000f6b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000f8c: DUP2 00000f8d: MSTORE 00000f8e: PUSH1 0x04 00000f90: ADD 00000f91: DUP1 00000f92: DUP1 00000f93: PUSH1 0x20 00000f95: ADD 00000f96: DUP3 00000f97: DUP2 00000f98: SUB 00000f99: DUP3 00000f9a: MSTORE 00000f9b: PUSH1 0x26 00000f9d: DUP2 00000f9e: MSTORE 00000f9f: PUSH1 0x20 00000fa1: ADD 00000fa2: DUP1 00000fa3: PUSH2 0x1ca0 00000fa6: PUSH1 0x26 00000fa8: SWAP2 00000fa9: CODECOPY 00000faa: PUSH1 0x40 00000fac: ADD 00000fad: SWAP2 00000fae: POP 00000faf: POP 00000fb0: PUSH1 0x40 00000fb2: MLOAD 00000fb3: DUP1 00000fb4: SWAP2 00000fb5: SUB 00000fb6: SWAP1 00000fb7: REVERT 00000fb8: JUMPDEST 00000fb9: PUSH1 0x00 00000fbb: DUP1 00000fbc: SLOAD 00000fbd: PUSH1 0x40 00000fbf: MLOAD 00000fc0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000fd5: DUP1 00000fd6: DUP6 00000fd7: AND 00000fd8: SWAP4 00000fd9: SWAP3 00000fda: AND 00000fdb: SWAP2 00000fdc: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 00000ffd: SWAP2 00000ffe: LOG3 00000fff: PUSH1 0x00 00001001: DUP1 00001002: SLOAD 00001003: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 00001024: AND 00001025: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000103a: SWAP3 0000103b: SWAP1 0000103c: SWAP3 0000103d: AND 0000103e: SWAP2 0000103f: SWAP1 00001040: SWAP2 00001041: OR 00001042: SWAP1 00001043: SSTORE 00001044: JUMP 00001045: JUMPDEST 00001046: CALLER 00001047: SWAP1 00001048: JUMP 00001049: JUMPDEST 0000104a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000105f: DUP4 00001060: AND 00001061: PUSH2 0x10b5 00001064: JUMPI 00001065: PUSH1 0x40 00001067: MLOAD 00001068: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001089: DUP2 0000108a: MSTORE 0000108b: PUSH1 0x04 0000108d: ADD 0000108e: DUP1 0000108f: DUP1 00001090: PUSH1 0x20 00001092: ADD 00001093: DUP3 00001094: DUP2 00001095: SUB 00001096: DUP3 00001097: MSTORE 00001098: PUSH1 0x24 0000109a: DUP2 0000109b: MSTORE 0000109c: PUSH1 0x20 0000109e: ADD 0000109f: DUP1 000010a0: PUSH2 0x1e04 000010a3: PUSH1 0x24 000010a5: SWAP2 000010a6: CODECOPY 000010a7: PUSH1 0x40 000010a9: ADD 000010aa: SWAP2 000010ab: POP 000010ac: POP 000010ad: PUSH1 0x40 000010af: MLOAD 000010b0: DUP1 000010b1: SWAP2 000010b2: SUB 000010b3: SWAP1 000010b4: REVERT 000010b5: JUMPDEST 000010b6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000010cb: DUP3 000010cc: AND 000010cd: PUSH2 0x1121 000010d0: JUMPI 000010d1: PUSH1 0x40 000010d3: MLOAD 000010d4: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000010f5: DUP2 000010f6: MSTORE 000010f7: PUSH1 0x04 000010f9: ADD 000010fa: DUP1 000010fb: DUP1 000010fc: PUSH1 0x20 000010fe: ADD 000010ff: DUP3 00001100: DUP2 00001101: SUB 00001102: DUP3 00001103: MSTORE 00001104: PUSH1 0x22 00001106: DUP2 00001107: MSTORE 00001108: PUSH1 0x20 0000110a: ADD 0000110b: DUP1 0000110c: PUSH2 0x1cc6 0000110f: PUSH1 0x22 00001111: SWAP2 00001112: CODECOPY 00001113: PUSH1 0x40 00001115: ADD 00001116: SWAP2 00001117: POP 00001118: POP 00001119: PUSH1 0x40 0000111b: MLOAD 0000111c: DUP1 0000111d: SWAP2 0000111e: SUB 0000111f: SWAP1 00001120: REVERT 00001121: JUMPDEST 00001122: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001137: DUP1 00001138: DUP5 00001139: AND 0000113a: PUSH1 0x00 0000113c: DUP2 0000113d: DUP2 0000113e: MSTORE 0000113f: PUSH1 0x02 00001141: PUSH1 0x20 00001143: SWAP1 00001144: DUP2 00001145: MSTORE 00001146: PUSH1 0x40 00001148: DUP1 00001149: DUP4 0000114a: KECCAK256 0000114b: SWAP5 0000114c: DUP8 0000114d: AND 0000114e: DUP1 0000114f: DUP5 00001150: MSTORE 00001151: SWAP5 00001152: DUP3 00001153: MSTORE 00001154: SWAP2 00001155: DUP3 00001156: SWAP1 00001157: KECCAK256 00001158: DUP6 00001159: SWAP1 0000115a: SSTORE 0000115b: DUP2 0000115c: MLOAD 0000115d: DUP6 0000115e: DUP2 0000115f: MSTORE 00001160: SWAP2 00001161: MLOAD 00001162: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925 00001183: SWAP3 00001184: DUP2 00001185: SWAP1 00001186: SUB 00001187: SWAP1 00001188: SWAP2 00001189: ADD 0000118a: SWAP1 0000118b: LOG3 0000118c: POP 0000118d: POP 0000118e: POP 0000118f: JUMP 00001190: JUMPDEST 00001191: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000011a6: DUP4 000011a7: AND 000011a8: PUSH2 0x11fc 000011ab: JUMPI 000011ac: PUSH1 0x40 000011ae: MLOAD 000011af: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000011d0: DUP2 000011d1: MSTORE 000011d2: PUSH1 0x04 000011d4: ADD 000011d5: DUP1 000011d6: DUP1 000011d7: PUSH1 0x20 000011d9: ADD 000011da: DUP3 000011db: DUP2 000011dc: SUB 000011dd: DUP3 000011de: MSTORE 000011df: PUSH1 0x25 000011e1: DUP2 000011e2: MSTORE 000011e3: PUSH1 0x20 000011e5: ADD 000011e6: DUP1 000011e7: PUSH2 0x1ddf 000011ea: PUSH1 0x25 000011ec: SWAP2 000011ed: CODECOPY 000011ee: PUSH1 0x40 000011f0: ADD 000011f1: SWAP2 000011f2: POP 000011f3: POP 000011f4: PUSH1 0x40 000011f6: MLOAD 000011f7: DUP1 000011f8: SWAP2 000011f9: SUB 000011fa: SWAP1 000011fb: REVERT 000011fc: JUMPDEST 000011fd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001212: DUP3 00001213: AND 00001214: PUSH2 0x1268 00001217: JUMPI 00001218: PUSH1 0x40 0000121a: MLOAD 0000121b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000123c: DUP2 0000123d: MSTORE 0000123e: PUSH1 0x04 00001240: ADD 00001241: DUP1 00001242: DUP1 00001243: PUSH1 0x20 00001245: ADD 00001246: DUP3 00001247: DUP2 00001248: SUB 00001249: DUP3 0000124a: MSTORE 0000124b: PUSH1 0x23 0000124d: DUP2 0000124e: MSTORE 0000124f: PUSH1 0x20 00001251: ADD 00001252: DUP1 00001253: PUSH2 0x1c36 00001256: PUSH1 0x23 00001258: SWAP2 00001259: CODECOPY 0000125a: PUSH1 0x40 0000125c: ADD 0000125d: SWAP2 0000125e: POP 0000125f: POP 00001260: PUSH1 0x40 00001262: MLOAD 00001263: DUP1 00001264: SWAP2 00001265: SUB 00001266: SWAP1 00001267: REVERT 00001268: JUMPDEST 00001269: PUSH2 0x1273 0000126c: DUP4 0000126d: DUP4 0000126e: DUP4 0000126f: PUSH2 0x19b9 00001272: JUMP 00001273: JUMPDEST 00001274: PUSH2 0x12c3 00001277: DUP2 00001278: PUSH1 0x40 0000127a: MLOAD 0000127b: DUP1 0000127c: PUSH1 0x60 0000127e: ADD 0000127f: PUSH1 0x40 00001281: MSTORE 00001282: DUP1 00001283: PUSH1 0x26 00001285: DUP2 00001286: MSTORE 00001287: PUSH1 0x20 00001289: ADD 0000128a: PUSH2 0x1ce8 0000128d: PUSH1 0x26 0000128f: SWAP2 00001290: CODECOPY 00001291: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000012a6: DUP7 000012a7: AND 000012a8: PUSH1 0x00 000012aa: SWAP1 000012ab: DUP2 000012ac: MSTORE 000012ad: PUSH1 0x01 000012af: PUSH1 0x20 000012b1: MSTORE 000012b2: PUSH1 0x40 000012b4: SWAP1 000012b5: KECCAK256 000012b6: SLOAD 000012b7: SWAP2 000012b8: SWAP1 000012b9: PUSH4 0xffffffff 000012be: PUSH2 0x136e 000012c1: AND 000012c2: JUMP 000012c3: JUMPDEST 000012c4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000012d9: DUP1 000012da: DUP6 000012db: AND 000012dc: PUSH1 0x00 000012de: SWAP1 000012df: DUP2 000012e0: MSTORE 000012e1: PUSH1 0x01 000012e3: PUSH1 0x20 000012e5: MSTORE 000012e6: PUSH1 0x40 000012e8: DUP1 000012e9: DUP3 000012ea: KECCAK256 000012eb: SWAP4 000012ec: SWAP1 000012ed: SWAP4 000012ee: SSTORE 000012ef: SWAP1 000012f0: DUP5 000012f1: AND 000012f2: DUP2 000012f3: MSTORE 000012f4: KECCAK256 000012f5: SLOAD 000012f6: PUSH2 0x1305 000012f9: SWAP1 000012fa: DUP3 000012fb: PUSH4 0xffffffff 00001300: PUSH2 0x141f 00001303: AND 00001304: JUMP 00001305: JUMPDEST 00001306: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000131b: DUP1 0000131c: DUP5 0000131d: AND 0000131e: PUSH1 0x00 00001320: DUP2 00001321: DUP2 00001322: MSTORE 00001323: PUSH1 0x01 00001325: PUSH1 0x20 00001327: SWAP1 00001328: DUP2 00001329: MSTORE 0000132a: PUSH1 0x40 0000132c: SWAP2 0000132d: DUP3 0000132e: SWAP1 0000132f: KECCAK256 00001330: SWAP5 00001331: SWAP1 00001332: SWAP5 00001333: SSTORE 00001334: DUP1 00001335: MLOAD 00001336: DUP6 00001337: DUP2 00001338: MSTORE 00001339: SWAP1 0000133a: MLOAD 0000133b: SWAP2 0000133c: SWAP4 0000133d: SWAP3 0000133e: DUP8 0000133f: AND 00001340: SWAP3 00001341: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 00001362: SWAP3 00001363: SWAP2 00001364: DUP3 00001365: SWAP1 00001366: SUB 00001367: ADD 00001368: SWAP1 00001369: LOG3 0000136a: POP 0000136b: POP 0000136c: POP 0000136d: JUMP 0000136e: JUMPDEST 0000136f: PUSH1 0x00 00001371: DUP2 00001372: DUP5 00001373: DUP5 00001374: GT 00001375: ISZERO 00001376: PUSH2 0x1417 00001379: JUMPI 0000137a: PUSH1 0x40 0000137c: MLOAD 0000137d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000139e: DUP2 0000139f: MSTORE 000013a0: PUSH1 0x04 000013a2: ADD 000013a3: DUP1 000013a4: DUP1 000013a5: PUSH1 0x20 000013a7: ADD 000013a8: DUP3 000013a9: DUP2 000013aa: SUB 000013ab: DUP3 000013ac: MSTORE 000013ad: DUP4 000013ae: DUP2 000013af: DUP2 000013b0: MLOAD 000013b1: DUP2 000013b2: MSTORE 000013b3: PUSH1 0x20 000013b5: ADD 000013b6: SWAP2 000013b7: POP 000013b8: DUP1 000013b9: MLOAD 000013ba: SWAP1 000013bb: PUSH1 0x20 000013bd: ADD 000013be: SWAP1 000013bf: DUP1 000013c0: DUP4 000013c1: DUP4 000013c2: PUSH1 0x00 000013c4: JUMPDEST 000013c5: DUP4 000013c6: DUP2 000013c7: LT 000013c8: ISZERO 000013c9: PUSH2 0x13dc 000013cc: JUMPI 000013cd: DUP2 000013ce: DUP2 000013cf: ADD 000013d0: MLOAD 000013d1: DUP4 000013d2: DUP3 000013d3: ADD 000013d4: MSTORE 000013d5: PUSH1 0x20 000013d7: ADD 000013d8: PUSH2 0x13c4 000013db: JUMP 000013dc: JUMPDEST 000013dd: POP 000013de: POP 000013df: POP 000013e0: POP 000013e1: SWAP1 000013e2: POP 000013e3: SWAP1 000013e4: DUP2 000013e5: ADD 000013e6: SWAP1 000013e7: PUSH1 0x1f 000013e9: AND 000013ea: DUP1 000013eb: ISZERO 000013ec: PUSH2 0x1409 000013ef: JUMPI 000013f0: DUP1 000013f1: DUP3 000013f2: SUB 000013f3: DUP1 000013f4: MLOAD 000013f5: PUSH1 0x01 000013f7: DUP4 000013f8: PUSH1 0x20 000013fa: SUB 000013fb: PUSH2 0x0100 000013fe: EXP 000013ff: SUB 00001400: NOT 00001401: AND 00001402: DUP2 00001403: MSTORE 00001404: PUSH1 0x20 00001406: ADD 00001407: SWAP2 00001408: POP 00001409: JUMPDEST 0000140a: POP 0000140b: SWAP3 0000140c: POP 0000140d: POP 0000140e: POP 0000140f: PUSH1 0x40 00001411: MLOAD 00001412: DUP1 00001413: SWAP2 00001414: SUB 00001415: SWAP1 00001416: REVERT 00001417: JUMPDEST 00001418: POP 00001419: POP 0000141a: POP 0000141b: SWAP1 0000141c: SUB 0000141d: SWAP1 0000141e: JUMP 0000141f: JUMPDEST 00001420: PUSH1 0x00 00001422: DUP3 00001423: DUP3 00001424: ADD 00001425: DUP4 00001426: DUP2 00001427: LT 00001428: ISZERO 00001429: PUSH2 0x1493 0000142c: JUMPI 0000142d: PUSH1 0x40 0000142f: DUP1 00001430: MLOAD 00001431: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001452: DUP2 00001453: MSTORE 00001454: PUSH1 0x20 00001456: PUSH1 0x04 00001458: DUP3 00001459: ADD 0000145a: MSTORE 0000145b: PUSH1 0x1b 0000145d: PUSH1 0x24 0000145f: DUP3 00001460: ADD 00001461: MSTORE 00001462: PUSH32 0x536166654d6174683a206164646974696f6e206f766572666c6f770000000000 00001483: PUSH1 0x44 00001485: DUP3 00001486: ADD 00001487: MSTORE 00001488: SWAP1 00001489: MLOAD 0000148a: SWAP1 0000148b: DUP2 0000148c: SWAP1 0000148d: SUB 0000148e: PUSH1 0x64 00001490: ADD 00001491: SWAP1 00001492: REVERT 00001493: JUMPDEST 00001494: SWAP4 00001495: SWAP3 00001496: POP 00001497: POP 00001498: POP 00001499: JUMP 0000149a: JUMPDEST 0000149b: PUSH1 0x07 0000149d: SLOAD 0000149e: PUSH17 0x0100000000000000000000000000000000 000014b0: SWAP1 000014b1: DIV 000014b2: PUSH16 0xffffffffffffffffffffffffffffffff 000014c3: AND 000014c4: ISZERO 000014c5: ISZERO 000014c6: SWAP1 000014c7: JUMP 000014c8: JUMPDEST 000014c9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000014de: DUP3 000014df: AND 000014e0: PUSH2 0x154a 000014e3: JUMPI 000014e4: PUSH1 0x40 000014e6: DUP1 000014e7: MLOAD 000014e8: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001509: DUP2 0000150a: MSTORE 0000150b: PUSH1 0x20 0000150d: PUSH1 0x04 0000150f: DUP3 00001510: ADD 00001511: MSTORE 00001512: PUSH1 0x1f 00001514: PUSH1 0x24 00001516: DUP3 00001517: ADD 00001518: MSTORE 00001519: PUSH32 0x45524332303a206d696e7420746f20746865207a65726f206164647265737300 0000153a: PUSH1 0x44 0000153c: DUP3 0000153d: ADD 0000153e: MSTORE 0000153f: SWAP1 00001540: MLOAD 00001541: SWAP1 00001542: DUP2 00001543: SWAP1 00001544: SUB 00001545: PUSH1 0x64 00001547: ADD 00001548: SWAP1 00001549: REVERT 0000154a: JUMPDEST 0000154b: PUSH2 0x1556 0000154e: PUSH1 0x00 00001550: DUP4 00001551: DUP4 00001552: PUSH2 0x19b9 00001555: JUMP 00001556: JUMPDEST 00001557: PUSH1 0x03 00001559: SLOAD 0000155a: PUSH2 0x1569 0000155d: SWAP1 0000155e: DUP3 0000155f: PUSH4 0xffffffff 00001564: PUSH2 0x141f 00001567: AND 00001568: JUMP 00001569: JUMPDEST 0000156a: PUSH1 0x03 0000156c: SSTORE 0000156d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001582: DUP3 00001583: AND 00001584: PUSH1 0x00 00001586: SWAP1 00001587: DUP2 00001588: MSTORE 00001589: PUSH1 0x01 0000158b: PUSH1 0x20 0000158d: MSTORE 0000158e: PUSH1 0x40 00001590: SWAP1 00001591: KECCAK256 00001592: SLOAD 00001593: PUSH2 0x15a2 00001596: SWAP1 00001597: DUP3 00001598: PUSH4 0xffffffff 0000159d: PUSH2 0x141f 000015a0: AND 000015a1: JUMP 000015a2: JUMPDEST 000015a3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000015b8: DUP4 000015b9: AND 000015ba: PUSH1 0x00 000015bc: DUP2 000015bd: DUP2 000015be: MSTORE 000015bf: PUSH1 0x01 000015c1: PUSH1 0x20 000015c3: SWAP1 000015c4: DUP2 000015c5: MSTORE 000015c6: PUSH1 0x40 000015c8: DUP1 000015c9: DUP4 000015ca: KECCAK256 000015cb: SWAP5 000015cc: SWAP1 000015cd: SWAP5 000015ce: SSTORE 000015cf: DUP4 000015d0: MLOAD 000015d1: DUP6 000015d2: DUP2 000015d3: MSTORE 000015d4: SWAP4 000015d5: MLOAD 000015d6: SWAP3 000015d7: SWAP4 000015d8: SWAP2 000015d9: SWAP3 000015da: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 000015fb: SWAP3 000015fc: DUP2 000015fd: SWAP1 000015fe: SUB 000015ff: SWAP1 00001600: SWAP2 00001601: ADD 00001602: SWAP1 00001603: LOG3 00001604: POP 00001605: POP 00001606: JUMP 00001607: JUMPDEST 00001608: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000161d: DUP3 0000161e: AND 0000161f: PUSH2 0x1673 00001622: JUMPI 00001623: PUSH1 0x40 00001625: MLOAD 00001626: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001647: DUP2 00001648: MSTORE 00001649: PUSH1 0x04 0000164b: ADD 0000164c: DUP1 0000164d: DUP1 0000164e: PUSH1 0x20 00001650: ADD 00001651: DUP3 00001652: DUP2 00001653: SUB 00001654: DUP3 00001655: MSTORE 00001656: PUSH1 0x21 00001658: DUP2 00001659: MSTORE 0000165a: PUSH1 0x20 0000165c: ADD 0000165d: DUP1 0000165e: PUSH2 0x1d92 00001661: PUSH1 0x21 00001663: SWAP2 00001664: CODECOPY 00001665: PUSH1 0x40 00001667: ADD 00001668: SWAP2 00001669: POP 0000166a: POP 0000166b: PUSH1 0x40 0000166d: MLOAD 0000166e: DUP1 0000166f: SWAP2 00001670: SUB 00001671: SWAP1 00001672: REVERT 00001673: JUMPDEST 00001674: PUSH2 0x167f 00001677: DUP3 00001678: PUSH1 0x00 0000167a: DUP4 0000167b: PUSH2 0x19b9 0000167e: JUMP 0000167f: JUMPDEST 00001680: PUSH2 0x16cf 00001683: DUP2 00001684: PUSH1 0x40 00001686: MLOAD 00001687: DUP1 00001688: PUSH1 0x60 0000168a: ADD 0000168b: PUSH1 0x40 0000168d: MSTORE 0000168e: DUP1 0000168f: PUSH1 0x22 00001691: DUP2 00001692: MSTORE 00001693: PUSH1 0x20 00001695: ADD 00001696: PUSH2 0x1c7e 00001699: PUSH1 0x22 0000169b: SWAP2 0000169c: CODECOPY 0000169d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000016b2: DUP6 000016b3: AND 000016b4: PUSH1 0x00 000016b6: SWAP1 000016b7: DUP2 000016b8: MSTORE 000016b9: PUSH1 0x01 000016bb: PUSH1 0x20 000016bd: MSTORE 000016be: PUSH1 0x40 000016c0: SWAP1 000016c1: KECCAK256 000016c2: SLOAD 000016c3: SWAP2 000016c4: SWAP1 000016c5: PUSH4 0xffffffff 000016ca: PUSH2 0x136e 000016cd: AND 000016ce: JUMP 000016cf: JUMPDEST 000016d0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000016e5: DUP4 000016e6: AND 000016e7: PUSH1 0x00 000016e9: SWAP1 000016ea: DUP2 000016eb: MSTORE 000016ec: PUSH1 0x01 000016ee: PUSH1 0x20 000016f0: MSTORE 000016f1: PUSH1 0x40 000016f3: SWAP1 000016f4: KECCAK256 000016f5: SSTORE 000016f6: PUSH1 0x03 000016f8: SLOAD 000016f9: PUSH2 0x1708 000016fc: SWAP1 000016fd: DUP3 000016fe: PUSH4 0xffffffff 00001703: PUSH2 0x19be 00001706: AND 00001707: JUMP 00001708: JUMPDEST 00001709: PUSH1 0x03 0000170b: SSTORE 0000170c: PUSH1 0x40 0000170e: DUP1 0000170f: MLOAD 00001710: DUP3 00001711: DUP2 00001712: MSTORE 00001713: SWAP1 00001714: MLOAD 00001715: PUSH1 0x00 00001717: SWAP2 00001718: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000172d: DUP6 0000172e: AND 0000172f: SWAP2 00001730: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 00001751: SWAP2 00001752: DUP2 00001753: SWAP1 00001754: SUB 00001755: PUSH1 0x20 00001757: ADD 00001758: SWAP1 00001759: LOG3 0000175a: POP 0000175b: POP 0000175c: JUMP 0000175d: JUMPDEST 0000175e: PUSH1 0x12 00001760: SWAP1 00001761: JUMP 00001762: JUMPDEST 00001763: PUSH1 0x00 00001765: DUP1 00001766: PUSH1 0x00 00001768: DUP4 00001769: PUSH1 0xff 0000176b: AND 0000176c: DUP6 0000176d: PUSH1 0xff 0000176f: AND 00001770: GT 00001771: ISZERO 00001772: PUSH2 0x1781 00001775: JUMPI 00001776: POP 00001777: PUSH1 0xff 00001779: DUP4 0000177a: DUP6 0000177b: SUB 0000177c: AND 0000177d: PUSH2 0x1798 00001780: JUMP 00001781: JUMPDEST 00001782: DUP4 00001783: PUSH1 0xff 00001785: AND 00001786: DUP6 00001787: PUSH1 0xff 00001789: AND 0000178a: LT 0000178b: ISZERO 0000178c: PUSH2 0x1798 0000178f: JUMPI 00001790: DUP5 00001791: DUP5 00001792: SUB 00001793: PUSH1 0xff 00001795: AND 00001796: SWAP2 00001797: POP 00001798: JUMPDEST 00001799: PUSH1 0x13 0000179b: DUP3 0000179c: LT 0000179d: DUP1 0000179e: ISZERO 0000179f: PUSH2 0x17a8 000017a2: JUMPI 000017a3: POP 000017a4: PUSH1 0x13 000017a6: DUP2 000017a7: LT 000017a8: JUMPDEST 000017a9: PUSH2 0x17fd 000017ac: JUMPI 000017ad: PUSH1 0x40 000017af: MLOAD 000017b0: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000017d1: DUP2 000017d2: MSTORE 000017d3: PUSH1 0x04 000017d5: ADD 000017d6: DUP1 000017d7: DUP1 000017d8: PUSH1 0x20 000017da: ADD 000017db: DUP3 000017dc: DUP2 000017dd: SUB 000017de: DUP3 000017df: MSTORE 000017e0: PUSH1 0x25 000017e2: DUP2 000017e3: MSTORE 000017e4: PUSH1 0x20 000017e6: ADD 000017e7: DUP1 000017e8: PUSH2 0x1c59 000017eb: PUSH1 0x25 000017ed: SWAP2 000017ee: CODECOPY 000017ef: PUSH1 0x40 000017f1: ADD 000017f2: SWAP2 000017f3: POP 000017f4: POP 000017f5: PUSH1 0x40 000017f7: MLOAD 000017f8: DUP1 000017f9: SWAP2 000017fa: SUB 000017fb: SWAP1 000017fc: REVERT 000017fd: JUMPDEST 000017fe: PUSH2 0x181a 00001801: DUP2 00001802: PUSH1 0x0a 00001804: EXP 00001805: PUSH2 0x09c7 00001808: DUP5 00001809: PUSH1 0x0a 0000180b: EXP 0000180c: DUP10 0000180d: PUSH2 0x1824 00001810: SWAP1 00001811: SWAP2 00001812: SWAP1 00001813: PUSH4 0xffffffff 00001818: AND 00001819: JUMP 0000181a: JUMPDEST 0000181b: SWAP7 0000181c: SWAP6 0000181d: POP 0000181e: POP 0000181f: POP 00001820: POP 00001821: POP 00001822: POP 00001823: JUMP 00001824: JUMPDEST 00001825: PUSH1 0x00 00001827: DUP3 00001828: PUSH2 0x1833 0000182b: JUMPI 0000182c: POP 0000182d: PUSH1 0x00 0000182f: PUSH2 0x074f 00001832: JUMP 00001833: JUMPDEST 00001834: DUP3 00001835: DUP3 00001836: MUL 00001837: DUP3 00001838: DUP5 00001839: DUP3 0000183a: DUP2 0000183b: PUSH2 0x1840 0000183e: JUMPI 0000183f: INVALID 00001840: JUMPDEST 00001841: DIV 00001842: EQ 00001843: PUSH2 0x1493 00001846: JUMPI 00001847: PUSH1 0x40 00001849: MLOAD 0000184a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000186b: DUP2 0000186c: MSTORE 0000186d: PUSH1 0x04 0000186f: ADD 00001870: DUP1 00001871: DUP1 00001872: PUSH1 0x20 00001874: ADD 00001875: DUP3 00001876: DUP2 00001877: SUB 00001878: DUP3 00001879: MSTORE 0000187a: PUSH1 0x21 0000187c: DUP2 0000187d: MSTORE 0000187e: PUSH1 0x20 00001880: ADD 00001881: DUP1 00001882: PUSH2 0x1d49 00001885: PUSH1 0x21 00001887: SWAP2 00001888: CODECOPY 00001889: PUSH1 0x40 0000188b: ADD 0000188c: SWAP2 0000188d: POP 0000188e: POP 0000188f: PUSH1 0x40 00001891: MLOAD 00001892: DUP1 00001893: SWAP2 00001894: SUB 00001895: SWAP1 00001896: REVERT 00001897: JUMPDEST 00001898: PUSH1 0x00 0000189a: PUSH2 0x1493 0000189d: DUP4 0000189e: DUP4 0000189f: PUSH1 0x40 000018a1: MLOAD 000018a2: DUP1 000018a3: PUSH1 0x40 000018a5: ADD 000018a6: PUSH1 0x40 000018a8: MSTORE 000018a9: DUP1 000018aa: PUSH1 0x1a 000018ac: DUP2 000018ad: MSTORE 000018ae: PUSH1 0x20 000018b0: ADD 000018b1: PUSH32 0x536166654d6174683a206469766973696f6e206279207a65726f000000000000 000018d2: DUP2 000018d3: MSTORE 000018d4: POP 000018d5: PUSH2 0x1a00 000018d8: JUMP 000018d9: JUMPDEST 000018da: PUSH2 0x18e3 000018dd: DUP3 000018de: DUP3 000018df: PUSH2 0x1a7f 000018e2: JUMP 000018e3: JUMPDEST 000018e4: POP 000018e5: POP 000018e6: JUMP 000018e7: JUMPDEST 000018e8: PUSH1 0x20 000018ea: DUP2 000018eb: ADD 000018ec: MLOAD 000018ed: PUSH16 0xffffffffffffffffffffffffffffffff 000018fe: AND 000018ff: PUSH2 0x1953 00001902: JUMPI 00001903: PUSH1 0x40 00001905: MLOAD 00001906: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001927: DUP2 00001928: MSTORE 00001929: PUSH1 0x04 0000192b: ADD 0000192c: DUP1 0000192d: DUP1 0000192e: PUSH1 0x20 00001930: ADD 00001931: DUP3 00001932: DUP2 00001933: SUB 00001934: DUP3 00001935: MSTORE 00001936: PUSH1 0x3b 00001938: DUP2 00001939: MSTORE 0000193a: PUSH1 0x20 0000193c: ADD 0000193d: DUP1 0000193e: PUSH2 0x1d0e 00001941: PUSH1 0x3b 00001943: SWAP2 00001944: CODECOPY 00001945: PUSH1 0x40 00001947: ADD 00001948: SWAP2 00001949: POP 0000194a: POP 0000194b: PUSH1 0x40 0000194d: MLOAD 0000194e: DUP1 0000194f: SWAP2 00001950: SUB 00001951: SWAP1 00001952: REVERT 00001953: JUMPDEST 00001954: DUP1 00001955: MLOAD 00001956: PUSH1 0x07 00001958: DUP1 00001959: SLOAD 0000195a: PUSH1 0x20 0000195c: SWAP1 0000195d: SWAP4 0000195e: ADD 0000195f: MLOAD 00001960: PUSH16 0xffffffffffffffffffffffffffffffff 00001971: SWAP1 00001972: DUP2 00001973: AND 00001974: PUSH17 0x0100000000000000000000000000000000 00001986: MUL 00001987: SWAP3 00001988: DUP2 00001989: AND 0000198a: PUSH32 0xffffffffffffffffffffffffffffffff00000000000000000000000000000000 000019ab: SWAP1 000019ac: SWAP5 000019ad: AND 000019ae: SWAP4 000019af: SWAP1 000019b0: SWAP4 000019b1: OR 000019b2: SWAP1 000019b3: SWAP3 000019b4: AND 000019b5: OR 000019b6: SWAP1 000019b7: SSTORE 000019b8: JUMP 000019b9: JUMPDEST 000019ba: POP 000019bb: POP 000019bc: POP 000019bd: JUMP 000019be: JUMPDEST 000019bf: PUSH1 0x00 000019c1: PUSH2 0x1493 000019c4: DUP4 000019c5: DUP4 000019c6: PUSH1 0x40 000019c8: MLOAD 000019c9: DUP1 000019ca: PUSH1 0x40 000019cc: ADD 000019cd: PUSH1 0x40 000019cf: MSTORE 000019d0: DUP1 000019d1: PUSH1 0x1e 000019d3: DUP2 000019d4: MSTORE 000019d5: PUSH1 0x20 000019d7: ADD 000019d8: PUSH32 0x536166654d6174683a207375627472616374696f6e206f766572666c6f770000 000019f9: DUP2 000019fa: MSTORE 000019fb: POP 000019fc: PUSH2 0x136e 000019ff: JUMP 00001a00: JUMPDEST 00001a01: PUSH1 0x00 00001a03: DUP2 00001a04: DUP4 00001a05: PUSH2 0x1a69 00001a08: JUMPI 00001a09: PUSH1 0x40 00001a0b: MLOAD 00001a0c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001a2d: DUP2 00001a2e: MSTORE 00001a2f: PUSH1 0x20 00001a31: PUSH1 0x04 00001a33: DUP3 00001a34: ADD 00001a35: DUP2 00001a36: DUP2 00001a37: MSTORE 00001a38: DUP4 00001a39: MLOAD 00001a3a: PUSH1 0x24 00001a3c: DUP5 00001a3d: ADD 00001a3e: MSTORE 00001a3f: DUP4 00001a40: MLOAD 00001a41: SWAP1 00001a42: SWAP3 00001a43: DUP4 00001a44: SWAP3 00001a45: PUSH1 0x44 00001a47: SWAP1 00001a48: SWAP2 00001a49: ADD 00001a4a: SWAP2 00001a4b: SWAP1 00001a4c: DUP6 00001a4d: ADD 00001a4e: SWAP1 00001a4f: DUP1 00001a50: DUP4 00001a51: DUP4 00001a52: PUSH1 0x00 00001a54: DUP4 00001a55: ISZERO 00001a56: PUSH2 0x13dc 00001a59: JUMPI 00001a5a: DUP2 00001a5b: DUP2 00001a5c: ADD 00001a5d: MLOAD 00001a5e: DUP4 00001a5f: DUP3 00001a60: ADD 00001a61: MSTORE 00001a62: PUSH1 0x20 00001a64: ADD 00001a65: PUSH2 0x13c4 00001a68: JUMP 00001a69: JUMPDEST 00001a6a: POP 00001a6b: PUSH1 0x00 00001a6d: DUP4 00001a6e: DUP6 00001a6f: DUP2 00001a70: PUSH2 0x1a75 00001a73: JUMPI 00001a74: INVALID 00001a75: JUMPDEST 00001a76: DIV 00001a77: SWAP6 00001a78: SWAP5 00001a79: POP 00001a7a: POP 00001a7b: POP 00001a7c: POP 00001a7d: POP 00001a7e: JUMP 00001a7f: JUMPDEST 00001a80: PUSH2 0x18e3 00001a83: DUP3 00001a84: DUP3 00001a85: PUSH1 0x40 00001a87: MLOAD 00001a88: DUP1 00001a89: PUSH1 0x60 00001a8b: ADD 00001a8c: PUSH1 0x40 00001a8e: MSTORE 00001a8f: DUP1 00001a90: PUSH1 0x2c 00001a92: DUP2 00001a93: MSTORE 00001a94: PUSH1 0x20 00001a96: ADD 00001a97: PUSH2 0x1db3 00001a9a: PUSH1 0x2c 00001a9c: SWAP2 00001a9d: CODECOPY 00001a9e: PUSH2 0x1aa6 00001aa1: DUP3 00001aa2: PUSH2 0x1c2e 00001aa5: JUMP 00001aa6: JUMPDEST 00001aa7: DUP2 00001aa8: SWAP1 00001aa9: PUSH2 0x1b0d 00001aac: JUMPI 00001aad: PUSH1 0x40 00001aaf: MLOAD 00001ab0: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001ad1: DUP2 00001ad2: MSTORE 00001ad3: PUSH1 0x20 00001ad5: PUSH1 0x04 00001ad7: DUP3 00001ad8: ADD 00001ad9: DUP2 00001ada: DUP2 00001adb: MSTORE 00001adc: DUP4 00001add: MLOAD 00001ade: PUSH1 0x24 00001ae0: DUP5 00001ae1: ADD 00001ae2: MSTORE 00001ae3: DUP4 00001ae4: MLOAD 00001ae5: SWAP1 00001ae6: SWAP3 00001ae7: DUP4 00001ae8: SWAP3 00001ae9: PUSH1 0x44 00001aeb: SWAP1 00001aec: SWAP2 00001aed: ADD 00001aee: SWAP2 00001aef: SWAP1 00001af0: DUP6 00001af1: ADD 00001af2: SWAP1 00001af3: DUP1 00001af4: DUP4 00001af5: DUP4 00001af6: PUSH1 0x00 00001af8: DUP4 00001af9: ISZERO 00001afa: PUSH2 0x13dc 00001afd: JUMPI 00001afe: DUP2 00001aff: DUP2 00001b00: ADD 00001b01: MLOAD 00001b02: DUP4 00001b03: DUP3 00001b04: ADD 00001b05: MSTORE 00001b06: PUSH1 0x20 00001b08: ADD 00001b09: PUSH2 0x13c4 00001b0c: JUMP 00001b0d: JUMPDEST 00001b0e: POP 00001b0f: PUSH1 0x40 00001b11: MLOAD 00001b12: PUSH1 0x00 00001b14: SWAP1 00001b15: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b2a: DUP6 00001b2b: AND 00001b2c: SWAP1 00001b2d: DUP5 00001b2e: SWAP1 00001b2f: DUP4 00001b30: DUP2 00001b31: DUP2 00001b32: DUP2 00001b33: DUP6 00001b34: DUP8 00001b35: GAS 00001b36: CALL 00001b37: SWAP3 00001b38: POP 00001b39: POP 00001b3a: POP 00001b3b: RETURNDATASIZE 00001b3c: DUP1 00001b3d: PUSH1 0x00 00001b3f: DUP2 00001b40: EQ 00001b41: PUSH2 0x1b66 00001b44: JUMPI 00001b45: PUSH1 0x40 00001b47: MLOAD 00001b48: SWAP2 00001b49: POP 00001b4a: PUSH1 0x1f 00001b4c: NOT 00001b4d: PUSH1 0x3f 00001b4f: RETURNDATASIZE 00001b50: ADD 00001b51: AND 00001b52: DUP3 00001b53: ADD 00001b54: PUSH1 0x40 00001b56: MSTORE 00001b57: RETURNDATASIZE 00001b58: DUP3 00001b59: MSTORE 00001b5a: RETURNDATASIZE 00001b5b: PUSH1 0x00 00001b5d: PUSH1 0x20 00001b5f: DUP5 00001b60: ADD 00001b61: RETURNDATACOPY 00001b62: PUSH2 0x1b6b 00001b65: JUMP 00001b66: JUMPDEST 00001b67: PUSH1 0x60 00001b69: SWAP2 00001b6a: POP 00001b6b: JUMPDEST 00001b6c: POP 00001b6d: POP 00001b6e: SWAP1 00001b6f: POP 00001b70: DUP1 00001b71: PUSH2 0x1bdb 00001b74: JUMPI 00001b75: PUSH1 0x40 00001b77: DUP1 00001b78: MLOAD 00001b79: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001b9a: DUP2 00001b9b: MSTORE 00001b9c: PUSH1 0x20 00001b9e: PUSH1 0x04 00001ba0: DUP3 00001ba1: ADD 00001ba2: MSTORE 00001ba3: PUSH1 0x19 00001ba5: PUSH1 0x24 00001ba7: DUP3 00001ba8: ADD 00001ba9: MSTORE 00001baa: PUSH32 0x7472616e7366657272696e67204574686572206661696c656400000000000000 00001bcb: PUSH1 0x44 00001bcd: DUP3 00001bce: ADD 00001bcf: MSTORE 00001bd0: SWAP1 00001bd1: MLOAD 00001bd2: SWAP1 00001bd3: DUP2 00001bd4: SWAP1 00001bd5: SUB 00001bd6: PUSH1 0x64 00001bd8: ADD 00001bd9: SWAP1 00001bda: REVERT 00001bdb: JUMPDEST 00001bdc: PUSH1 0x40 00001bde: DUP1 00001bdf: MLOAD 00001be0: DUP5 00001be1: DUP2 00001be2: MSTORE 00001be3: SWAP1 00001be4: MLOAD 00001be5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001bfa: DUP7 00001bfb: AND 00001bfc: SWAP2 00001bfd: ADDRESS 00001bfe: SWAP2 00001bff: PUSH32 0xdd4e7375a5084e0c4cc4e1bfc7ba67beb26a368120ea78d2e0948123910bbf7c 00001c20: SWAP2 00001c21: DUP2 00001c22: SWAP1 00001c23: SUB 00001c24: PUSH1 0x20 00001c26: ADD 00001c27: SWAP1 00001c28: LOG3 00001c29: POP 00001c2a: POP 00001c2b: POP 00001c2c: POP 00001c2d: JUMP 00001c2e: JUMPDEST 00001c2f: ADDRESS 00001c30: BALANCE 00001c31: LT 00001c32: ISZERO 00001c33: SWAP1 00001c34: JUMP 00001c35: INVALID 00001c36: GASLIMIT 00001c37: MSTORE 00001c38: NUMBER 00001c39: ORIGIN 00001c3a: ADDRESS 00001c3b: GASPRICE 00001c3c: KECCAK256 00001c3d: PUSH21 0x72616e7366657220746f20746865207a65726f2061 00001c53: PUSH5 0x6472657373 00001c59: PUSH5 0x6563696d61 00001c5f: PUSH13 0x20676170206e6565647320746f 00001c6d: KECCAK256 00001c6e: PUSH3 0x65206c 00001c72: PUSH16 0x776572207468616e2031394552433230 00001c83: GASPRICE 00001c84: KECCAK256 00001c85: PUSH3 0x75726e 00001c89: KECCAK256 00001c8a: PUSH2 0x6d6f 00001c8d: PUSH22 0x6e7420657863656564732062616c616e63654f776e61 00001ca4: PUSH3 0x6c653a 00001ca8: KECCAK256 00001ca9: PUSH15 0x6577206f776e657220697320746865 00001cb9: KECCAK256 00001cba: PUSH27 0x65726f206164647265737345524332303a20617070726f76652074 00001cd6: PUSH16 0x20746865207a65726f20616464726573 00001ce7: PUSH20 0x45524332303a207472616e7366657220616d6f75 00001cfc: PUSH15 0x7420657863656564732062616c616e 00001d0c: PUSH4 0x65737973 00001d11: PUSH21 0x656d206572726f723a207468652065786368616e67 00001d27: PUSH6 0x207261746520 00001d2e: PUSH14 0x757374206265206e6f6e2d6e6567 00001d3d: PUSH2 0x7469 00001d40: PUSH23 0x65206e756d626572536166654d6174683a206d756c7469 00001d58: PUSH17 0x6c69636174696f6e206f766572666c6f77 00001d6a: GASLIMIT 00001d6b: MSTORE 00001d6c: NUMBER 00001d6d: ORIGIN 00001d6e: ADDRESS 00001d6f: GASPRICE 00001d70: KECCAK256 00001d71: PUSH21 0x72616e7366657220616d6f756e7420657863656564 00001d87: PUSH20 0x20616c6c6f77616e636545524332303a20627572 00001d9c: PUSH15 0x2066726f6d20746865207a65726f20 00001dac: PUSH2 0x6464 00001daf: PUSH19 0x6573735472616e736665724554483a20747261 00001dc3: PUSH15 0x7366657220616d6f756e7420657863 00001dd3: PUSH6 0x656473206261 00001dda: PUSH13 0x616e636545524332303a207472 00001de8: PUSH2 0x6e73 00001deb: PUSH7 0x65722066726f6d 00001df3: KECCAK256 00001df4: PUSH21 0x6865207a65726f206164647265737345524332303a 00001e0a: KECCAK256 00001e0b: PUSH2 0x7070 00001e0e: PUSH19 0x6f76652066726f6d20746865207a65726f2061 00001e22: PUSH5 0x6472657373 00001e28: GASLIMIT 00001e29: MSTORE 00001e2a: NUMBER 00001e2b: ORIGIN 00001e2c: ADDRESS 00001e2d: GASPRICE 00001e2e: KECCAK256 00001e2f: PUSH5 0x6563726561 00001e35: PUSH20 0x656420616c6c6f77616e63652062656c6f77207a 00001e4a: PUSH6 0x726fa2646970 00001e51: PUSH7 0x73582212203c23 00001e59: UNKNOWN(0xB2) 00001e5a: JUMPI 00001e5b: UNKNOWN(0xE3) 00001e5c: UNKNOWN(0xEF) 00001e5d: GT 00001e5e: UNKNOWN(0xB1) 00001e5f: UNKNOWN(0x2C) 00001e60: PUSH18 0x5bd61fc423c39930aef3f353d81def868ffe 00001e73: MSIZE 00001e74: PUSH21
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | auth | detector | Authorization based on tx.origin | 70 | no | — |
viewvalidation_json{
"reason": "missing sink mapping",
"status": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xdd62ed3e",
"selector": "0xdd62ed3e",
"calldata_variants": [
"0xdd62ed3e",
"0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf05fcdf2",
"selector": "0xf05fcdf2",
"calldata_variants": [
"0xf05fcdf2",
"0xf05fcdf20000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa457c2d7",
"selector": "0xa457c2d7",
"calldata_variants": [
"0xa457c2d7",
"0xa457c2d70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa9059cbb",
"selector": "0xa9059cbb",
"calldata_variants": [
"0xa9059cbb",
"0xa9059cbb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x903d8e77",
"selector": "0x903d8e77",
"calldata_variants": [
"0x903d8e77",
"0x903d8e770000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x95d89b41",
"selector": "0x95d89b41",
"calldata_variants": [
"0x95d89b41",
"0x95d89b410000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9975038c",
"selector": "0x9975038c",
"calldata_variants": [
"0x9975038c",
"0x9975038c0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 7225,
"type": "tx_origin_used"
},
{
"pc": 7533,
"type": "tx_origin_used"
},
{
"pc": 7723,
"type": "tx_origin_used"
}
]
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0xa3a17a3f637df4f246e859aba17c8ce8687d1d3cf723db991036b1f3b626e5f5
call_targets:
0xa1544db1b6d385c6c4c4ed4998184e2edccaf2c6
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xa3a17a3f637df4f246e859aba17c8ce8687d1d3cf723db991036b1f3b626e5f5",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xa1544db1b6d385c6c4c4ed4998184e2edccaf2c6"
],
"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": "0xdd62ed3e",
"selector": "0xdd62ed3e",
"calldata_variants": [
"0xdd62ed3e",
"0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf05fcdf2",
"selector": "0xf05fcdf2",
"calldata_variants": [
"0xf05fcdf2",
"0xf05fcdf20000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa457c2d7",
"selector": "0xa457c2d7",
"calldata_variants": [
"0xa457c2d7",
"0xa457c2d70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa9059cbb",
"selector": "0xa9059cbb",
"calldata_variants": [
"0xa9059cbb",
"0xa9059cbb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x903d8e77",
"selector": "0x903d8e77",
"calldata_variants": [
"0x903d8e77",
"0x903d8e770000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x95d89b41",
"selector": "0x95d89b41",
"calldata_variants": [
"0x95d89b41",
"0x95d89b410000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9975038c",
"selector": "0x9975038c",
"calldata_variants": [
"0x9975038c",
"0x9975038c0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 6966,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 1,
"guards_detected": [
{
"pc": 7225,
"type": "tx_origin_used"
},
{
"pc": 7533,
"type": "tx_origin_used"
},
{
"pc": 7723,
"type": "tx_origin_used"
}
],
"untrusted_call_count": 1
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0xa3a17a3f637df4f246e859aba17c8ce8687d1d3cf723db991036b1f3b626e5f5
call_targets:
0xa1544db1b6d385c6c4c4ed4998184e2edccaf2c6
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xa3a17a3f637df4f246e859aba17c8ce8687d1d3cf723db991036b1f3b626e5f5",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xa1544db1b6d385c6c4c4ed4998184e2edccaf2c6"
],
"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": "0xdd62ed3e",
"selector": "0xdd62ed3e",
"calldata_variants": [
"0xdd62ed3e",
"0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf05fcdf2",
"selector": "0xf05fcdf2",
"calldata_variants": [
"0xf05fcdf2",
"0xf05fcdf20000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa457c2d7",
"selector": "0xa457c2d7",
"calldata_variants": [
"0xa457c2d7",
"0xa457c2d70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa9059cbb",
"selector": "0xa9059cbb",
"calldata_variants": [
"0xa9059cbb",
"0xa9059cbb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x903d8e77",
"selector": "0x903d8e77",
"calldata_variants": [
"0x903d8e77",
"0x903d8e770000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x95d89b41",
"selector": "0x95d89b41",
"calldata_variants": [
"0x95d89b41",
"0x95d89b410000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9975038c",
"selector": "0x9975038c",
"calldata_variants": [
"0x9975038c",
"0x9975038c0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 6966,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 1,
"guards_detected": [
{
"pc": 7225,
"type": "tx_origin_used"
},
{
"pc": 7533,
"type": "tx_origin_used"
},
{
"pc": 7723,
"type": "tx_origin_used"
}
]
}
|