7627b092-c8ea-44dc-823d-3af9980dd230
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 |
|---|---|---|---|---|
| 31088 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 76342 | artifact.fetch | failed | 1 / 3 | 2 weeks ago |
| 76343 | tool.cast_disasm | complete | 1 / 3 | 2 weeks ago |
| 76344 | analysis.bundle | complete | 1 / 3 | 2 weeks ago |
| 76345 | capability.graph | complete | 1 / 3 | 2 weeks ago |
| 76346 | detector.run | complete | 1 / 3 | 2 weeks ago |
| 76347 | validation.fork | complete | 1 / 3 | 2 weeks ago |
No slither job recorded yet.
[codex:151974] OpenAI Codex v0.77.0 (research preview)
[codex:151974] --------
[codex:151974] workdir: /tmp/codex-multi-pu0qjm1n
[codex:151974] model: gpt-5.2-codex
[codex:151974] provider: openai
[codex:151974] approval: never
[codex:151974] sandbox: read-only
[codex:151974] reasoning effort: xhigh
[codex:151974] reasoning summaries: auto
[codex:151974] session id: 019b7a83-caf9-7a12-a680-e988c396c190
[codex:151974] --------
[codex:151974] user
[codex:151974] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:151974]
[codex:151974] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:151974]
[codex:151974] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:151974] - Gas inefficiency, code quality, naming, or best practices
[codex:151974] - Theoretical vulnerabilities without a clear extraction path
[codex:151974] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:151974] - Front-running unless it enables theft beyond MEV
[codex:151974] - DoS, griefing, or issues that don't result in attacker profit
[codex:151974] - Missing events, view function issues, or informational findings
[codex:151974]
[codex:151974] HIGH-VALUE PATTERNS TO HUNT:
[codex:151974] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:151974] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:151974] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:151974] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:151974] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:151974] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:151974] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:151974] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:151974] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:151974]
[codex:151974] For each finding, you MUST provide:
[codex:151974] 1. Exact file and line numbers of vulnerable code
[codex:151974] 2. Step-by-step exploit transaction sequence
[codex:151974] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:151974]
[codex:151974] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:151974]
[codex:151974] Output MUST be valid JSON matching the provided schema.
[codex:151974] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:151974] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:151974] mcp startup: no servers
[codex:151974]
[codex:151974] thinking
[codex:151974] **Reading AUDIT_BUNDLE.txt**
[codex:151974] exec
[codex:151974] /bin/bash -lc ls in /tmp/codex-multi-pu0qjm1n succeeded in 5ms:
[codex:151974] AUDIT_BUNDLE.txt
[codex:151974] codex-output-schema.json
[codex:151974] contracts
[codex:151974] exec
[codex:151974] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-pu0qjm1n succeeded in 5ms:
[codex:151974] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:151974]
[codex:151974] ================================================================================
[codex:151974] FILE: contracts/Contract.sol
[codex:151974] ================================================================================
[codex:151974] pragma solidity ^0.4.16;
[codex:151974]
[codex:151974] contract Token {
[codex:151974] bytes32 public standard;
[codex:151974] bytes32 public name;
[codex:151974] bytes32 public symbol;
[codex:151974] uint256 public totalSupply;
[codex:151974] uint8 public decimals;
[codex:151974] bool public allowTransactions;
[codex:151974] mapping (address => uint256) public balanceOf;
[codex:151974] mapping (address => mapping (address => uint256)) public allowance;
[codex:151974] function transfer(address _to, uint256 _value) returns (bool success);
[codex:151974] function approveAndCall(address _spender, uint256 _value, bytes _extraData) returns (bool success);
[codex:151974] function approve(address _spender, uint256 _value) returns (bool success);
[codex:151974] function transferFrom(address _from, address _to, uint256 _value) returns (bool success);
[codex:151974]
[codex:151974]
[codex:151974] thinking
[codex:151974] **Analyzing potential contract exploits**
[codex:151974] thinking
[codex:151974] **Evaluating order expiry logic and invalidation**
[codex:151974]
[codex:151974] I'm carefully weighing how missing enforcement of order expiry and the off-by-one in order invalidation might affect the contract. While the missing expiry check could let old orders be filled indefinitely if the admin doesn't enforce offchain, the presence of a trusted admin limits exploitability. The off-by-one in invalidation is subtle but probably not profitable. I plan to extract exact line numbers around the trade function to highlight this for a clear report.
[codex:151974] exec
[codex:151974] /bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '1,220p'" in /tmp/codex-multi-pu0qjm1n succeeded in 6ms:
[codex:151974] 1 pragma solidity ^0.4.16;
[codex:151974] 2
[codex:151974] 3 contract Token {
[codex:151974] 4 bytes32 public standard;
[codex:151974] 5 bytes32 public name;
[codex:151974] 6 bytes32 public symbol;
[codex:151974] 7 uint256 public totalSupply;
[codex:151974] 8 uint8 public decimals;
[codex:151974] 9 bool public allowTransactions;
[codex:151974] 10 mapping (address => uint256) public balanceOf;
[codex:151974] 11 mapping (address => mapping (address => uint256)) public allowance;
[codex:151974] 12 function transfer(address _to, uint256 _value) returns (bool success);
[codex:151974] 13 function approveAndCall(address _spender, uint256 _value, bytes _extraData) returns (bool success);
[codex:151974] 14 function approve(address _spender, uint256 _value) returns (bool success);
[codex:151974] 15 function transferFrom(address _from, address _to, uint256 _value) returns (bool success);
[codex:151974] 16 }
[codex:151974] 17
[codex:151974] 18 contract Exchange {
[codex:151974] 19 function assert(bool assertion) {
[codex:151974] 20 if (!assertion) throw;
[codex:151974]
[codex:151974]
[codex:151974]
[codex:151974] thinking
[codex:151974] **Analyzing contract for exploitable profit paths**
[codex:151974] thinking
[codex:151974] **Evaluating signature and fee handling risks**
[codex:151974]
[codex:151974] I'll carefully examine signature coverage, fee parameter control, and state update ordering to spot any potential profit exploits or replay issues, focusing on signature malleability, fee administration, and reentrancy concerns across contract functions.
[codex:151974] thinking
[codex:151974] **Preparing final audit conclusion**
[codex:151974]
[codex:151974] I'll finalize the audit report confirming no concrete exploitable profit paths were found and prepare a valid JSON summary stating this clearly.
[codex:151974] codex
[codex:151974] {"no_findings":true,"summary":"No concrete, exploitable profit paths found in the audited sources.","findings":[]}
[codex:151974] tokens used
[codex:151974] 22,592
[codex:151974] {"no_findings":true,"summary":"No concrete, exploitable profit paths found in the audited sources.","findings":[]}
{
"codex": {
"ran_at": "2026-01-01T17:07:43.909854+00:00",
"returncode": 0
},
"summary": "No concrete, exploitable profit paths found in the audited sources.",
"raw_final": {
"summary": "No concrete, exploitable profit paths found in the audited sources.",
"findings": [],
"no_findings": true
},
"no_findings": true,
"schema_version": 1
}
00000000: PUSH1 0x60 00000002: PUSH1 0x40 00000004: MSTORE 00000005: CALLDATASIZE 00000006: ISZERO 00000007: PUSH2 0x012d 0000000a: JUMPI 0000000b: PUSH4 0xffffffff 00000010: PUSH1 0xe0 00000012: PUSH1 0x02 00000014: EXP 00000015: PUSH1 0x00 00000017: CALLDATALOAD 00000018: DIV 00000019: AND 0000001a: PUSH4 0x0674763c 0000001f: DUP2 00000020: EQ 00000021: PUSH2 0x0140 00000024: JUMPI 00000025: DUP1 00000026: PUSH4 0x13af4035 0000002b: EQ 0000002c: PUSH2 0x015a 0000002f: JUMPI 00000030: DUP1 00000031: PUSH4 0x2295115b 00000036: EQ 00000037: PUSH2 0x017b 0000003a: JUMPI 0000003b: DUP1 0000003c: PUSH4 0x254dcfe2 00000041: EQ 00000042: PUSH2 0x01ca 00000045: JUMPI 00000046: DUP1 00000047: PUSH4 0x338b5dea 0000004c: EQ 0000004d: PUSH2 0x01fb 00000050: JUMPI 00000051: DUP1 00000052: PUSH4 0x3823d66c 00000057: EQ 00000058: PUSH2 0x021f 0000005b: JUMPI 0000005c: DUP1 0000005d: PUSH4 0x429b62e5 00000062: EQ 00000063: PUSH2 0x0249 00000066: JUMPI 00000067: DUP1 00000068: PUSH4 0x4b0bddd2 0000006d: EQ 0000006e: PUSH2 0x027c 00000071: JUMPI 00000072: DUP1 00000073: PUSH4 0x508493bc 00000078: EQ 00000079: PUSH2 0x02a2 0000007c: JUMPI 0000007d: DUP1 0000007e: PUSH4 0x65e17c9d 00000083: EQ 00000084: PUSH2 0x02d9 00000087: JUMPI 00000088: DUP1 00000089: PUSH4 0x83dbb27b 0000008e: EQ 0000008f: PUSH2 0x0308 00000092: JUMPI 00000093: DUP1 00000094: PUSH4 0x893d20e8 00000099: EQ 0000009a: PUSH2 0x0339 0000009d: JUMPI 0000009e: DUP1 0000009f: PUSH4 0x8da5cb5b 000000a4: EQ 000000a5: PUSH2 0x0368 000000a8: JUMPI 000000a9: DUP1 000000aa: PUSH4 0xa293d1e8 000000af: EQ 000000b0: PUSH2 0x0397 000000b3: JUMPI 000000b4: DUP1 000000b5: PUSH4 0xb12de559 000000ba: EQ 000000bb: PUSH2 0x03c2 000000be: JUMPI 000000bf: DUP1 000000c0: PUSH4 0xd05c78da 000000c5: EQ 000000c6: PUSH2 0x03e6 000000c9: JUMPI 000000ca: DUP1 000000cb: PUSH4 0xd0e30db0 000000d0: EQ 000000d1: PUSH2 0x0411 000000d4: JUMPI 000000d5: DUP1 000000d6: PUSH4 0xd5813323 000000db: EQ 000000dc: PUSH2 0x041b 000000df: JUMPI 000000e0: DUP1 000000e1: PUSH4 0xdd93c74a 000000e6: EQ 000000e7: PUSH2 0x0445 000000ea: JUMPI 000000eb: DUP1 000000ec: PUSH4 0xe6cb9013 000000f1: EQ 000000f2: PUSH2 0x046f 000000f5: JUMPI 000000f6: DUP1 000000f7: PUSH4 0xef343588 000000fc: EQ 000000fd: PUSH2 0x049a 00000100: JUMPI 00000101: DUP1 00000102: PUSH4 0xf31174ee 00000107: EQ 00000108: PUSH2 0x0566 0000010b: JUMPI 0000010c: DUP1 0000010d: PUSH4 0xf3fef3a3 00000112: EQ 00000113: PUSH2 0x058b 00000116: JUMPI 00000117: DUP1 00000118: PUSH4 0xf7213db6 0000011d: EQ 0000011e: PUSH2 0x05c1 00000121: JUMPI 00000122: DUP1 00000123: PUSH4 0xf7888aec 00000128: EQ 00000129: PUSH2 0x05e9 0000012c: JUMPI 0000012d: JUMPDEST 0000012e: CALLVALUE 0000012f: ISZERO 00000130: PUSH2 0x0138 00000133: JUMPI 00000134: PUSH1 0x00 00000136: DUP1 00000137: REVERT 00000138: JUMPDEST 00000139: JUMPDEST 0000013a: PUSH1 0x00 0000013c: DUP1 0000013d: REVERT 0000013e: JUMPDEST 0000013f: STOP 00000140: JUMPDEST 00000141: CALLVALUE 00000142: ISZERO 00000143: PUSH2 0x014b 00000146: JUMPI 00000147: PUSH1 0x00 00000149: DUP1 0000014a: REVERT 0000014b: JUMPDEST 0000014c: PUSH2 0x013e 0000014f: PUSH1 0x04 00000151: CALLDATALOAD 00000152: ISZERO 00000153: ISZERO 00000154: PUSH2 0x0620 00000157: JUMP 00000158: JUMPDEST 00000159: STOP 0000015a: JUMPDEST 0000015b: CALLVALUE 0000015c: ISZERO 0000015d: PUSH2 0x0165 00000160: JUMPI 00000161: PUSH1 0x00 00000163: DUP1 00000164: REVERT 00000165: JUMPDEST 00000166: PUSH2 0x013e 00000169: PUSH1 0x01 0000016b: PUSH1 0xa0 0000016d: PUSH1 0x02 0000016f: EXP 00000170: SUB 00000171: PUSH1 0x04 00000173: CALLDATALOAD 00000174: AND 00000175: PUSH2 0x0630 00000178: JUMP 00000179: JUMPDEST 0000017a: STOP 0000017b: JUMPDEST 0000017c: CALLVALUE 0000017d: ISZERO 0000017e: PUSH2 0x0186 00000181: JUMPI 00000182: PUSH1 0x00 00000184: DUP1 00000185: REVERT 00000186: JUMPDEST 00000187: PUSH2 0x01b6 0000018a: PUSH1 0x01 0000018c: PUSH1 0xa0 0000018e: PUSH1 0x02 00000190: EXP 00000191: SUB 00000192: PUSH1 0x04 00000194: CALLDATALOAD 00000195: DUP2 00000196: AND 00000197: SWAP1 00000198: PUSH1 0x24 0000019a: CALLDATALOAD 0000019b: SWAP1 0000019c: PUSH1 0x44 0000019e: CALLDATALOAD 0000019f: AND 000001a0: PUSH1 0x64 000001a2: CALLDATALOAD 000001a3: PUSH1 0xff 000001a5: PUSH1 0x84 000001a7: CALLDATALOAD 000001a8: AND 000001a9: PUSH1 0xa4 000001ab: CALLDATALOAD 000001ac: PUSH1 0xc4 000001ae: CALLDATALOAD 000001af: PUSH1 0xe4 000001b1: CALLDATALOAD 000001b2: PUSH2 0x06b4 000001b5: JUMP 000001b6: JUMPDEST 000001b7: PUSH1 0x40 000001b9: MLOAD 000001ba: SWAP1 000001bb: ISZERO 000001bc: ISZERO 000001bd: DUP2 000001be: MSTORE 000001bf: PUSH1 0x20 000001c1: ADD 000001c2: PUSH1 0x40 000001c4: MLOAD 000001c5: DUP1 000001c6: SWAP2 000001c7: SUB 000001c8: SWAP1 000001c9: RETURN 000001ca: JUMPDEST 000001cb: CALLVALUE 000001cc: ISZERO 000001cd: PUSH2 0x01d5 000001d0: JUMPI 000001d1: PUSH1 0x00 000001d3: DUP1 000001d4: REVERT 000001d5: JUMPDEST 000001d6: PUSH2 0x01e9 000001d9: PUSH1 0x01 000001db: PUSH1 0xa0 000001dd: PUSH1 0x02 000001df: EXP 000001e0: SUB 000001e1: PUSH1 0x04 000001e3: CALLDATALOAD 000001e4: AND 000001e5: PUSH2 0x0ad9 000001e8: JUMP 000001e9: JUMPDEST 000001ea: PUSH1 0x40 000001ec: MLOAD 000001ed: SWAP1 000001ee: DUP2 000001ef: MSTORE 000001f0: PUSH1 0x20 000001f2: ADD 000001f3: PUSH1 0x40 000001f5: MLOAD 000001f6: DUP1 000001f7: SWAP2 000001f8: SUB 000001f9: SWAP1 000001fa: RETURN 000001fb: JUMPDEST 000001fc: CALLVALUE 000001fd: ISZERO 000001fe: PUSH2 0x0206 00000201: JUMPI 00000202: PUSH1 0x00 00000204: DUP1 00000205: REVERT 00000206: JUMPDEST 00000207: PUSH2 0x013e 0000020a: PUSH1 0x01 0000020c: PUSH1 0xa0 0000020e: PUSH1 0x02 00000210: EXP 00000211: SUB 00000212: PUSH1 0x04 00000214: CALLDATALOAD 00000215: AND 00000216: PUSH1 0x24 00000218: CALLDATALOAD 00000219: PUSH2 0x0aeb 0000021c: JUMP 0000021d: JUMPDEST 0000021e: STOP 0000021f: JUMPDEST 00000220: CALLVALUE 00000221: ISZERO 00000222: PUSH2 0x022a 00000225: JUMPI 00000226: PUSH1 0x00 00000228: DUP1 00000229: REVERT 0000022a: JUMPDEST 0000022b: PUSH2 0x01b6 0000022e: PUSH1 0x04 00000230: CALLDATALOAD 00000231: PUSH2 0x0c62 00000234: JUMP 00000235: JUMPDEST 00000236: PUSH1 0x40 00000238: MLOAD 00000239: SWAP1 0000023a: ISZERO 0000023b: ISZERO 0000023c: DUP2 0000023d: MSTORE 0000023e: PUSH1 0x20 00000240: ADD 00000241: PUSH1 0x40 00000243: MLOAD 00000244: DUP1 00000245: SWAP2 00000246: SUB 00000247: SWAP1 00000248: RETURN 00000249: JUMPDEST 0000024a: CALLVALUE 0000024b: ISZERO 0000024c: PUSH2 0x0254 0000024f: JUMPI 00000250: PUSH1 0x00 00000252: DUP1 00000253: REVERT 00000254: JUMPDEST 00000255: PUSH2 0x01b6 00000258: PUSH1 0x01 0000025a: PUSH1 0xa0 0000025c: PUSH1 0x02 0000025e: EXP 0000025f: SUB 00000260: PUSH1 0x04 00000262: CALLDATALOAD 00000263: AND 00000264: PUSH2 0x0c77 00000267: JUMP 00000268: JUMPDEST 00000269: PUSH1 0x40 0000026b: MLOAD 0000026c: SWAP1 0000026d: ISZERO 0000026e: ISZERO 0000026f: DUP2 00000270: MSTORE 00000271: PUSH1 0x20 00000273: ADD 00000274: PUSH1 0x40 00000276: MLOAD 00000277: DUP1 00000278: SWAP2 00000279: SUB 0000027a: SWAP1 0000027b: RETURN 0000027c: JUMPDEST 0000027d: CALLVALUE 0000027e: ISZERO 0000027f: PUSH2 0x0287 00000282: JUMPI 00000283: PUSH1 0x00 00000285: DUP1 00000286: REVERT 00000287: JUMPDEST 00000288: PUSH2 0x013e 0000028b: PUSH1 0x01 0000028d: PUSH1 0xa0 0000028f: PUSH1 0x02 00000291: EXP 00000292: SUB 00000293: PUSH1 0x04 00000295: CALLDATALOAD 00000296: AND 00000297: PUSH1 0x24 00000299: CALLDATALOAD 0000029a: ISZERO 0000029b: ISZERO 0000029c: PUSH2 0x0c8c 0000029f: JUMP 000002a0: JUMPDEST 000002a1: STOP 000002a2: JUMPDEST 000002a3: CALLVALUE 000002a4: ISZERO 000002a5: PUSH2 0x02ad 000002a8: JUMPI 000002a9: PUSH1 0x00 000002ab: DUP1 000002ac: REVERT 000002ad: JUMPDEST 000002ae: PUSH2 0x01e9 000002b1: PUSH1 0x01 000002b3: PUSH1 0xa0 000002b5: PUSH1 0x02 000002b7: EXP 000002b8: SUB 000002b9: PUSH1 0x04 000002bb: CALLDATALOAD 000002bc: DUP2 000002bd: AND 000002be: SWAP1 000002bf: PUSH1 0x24 000002c1: CALLDATALOAD 000002c2: AND 000002c3: PUSH2 0x0cd1 000002c6: JUMP 000002c7: JUMPDEST 000002c8: PUSH1 0x40 000002ca: MLOAD 000002cb: SWAP1 000002cc: DUP2 000002cd: MSTORE 000002ce: PUSH1 0x20 000002d0: ADD 000002d1: PUSH1 0x40 000002d3: MLOAD 000002d4: DUP1 000002d5: SWAP2 000002d6: SUB 000002d7: SWAP1 000002d8: RETURN 000002d9: JUMPDEST 000002da: CALLVALUE 000002db: ISZERO 000002dc: PUSH2 0x02e4 000002df: JUMPI 000002e0: PUSH1 0x00 000002e2: DUP1 000002e3: REVERT 000002e4: JUMPDEST 000002e5: PUSH2 0x02ec 000002e8: PUSH2 0x0cee 000002eb: JUMP 000002ec: JUMPDEST 000002ed: PUSH1 0x40 000002ef: MLOAD 000002f0: PUSH1 0x01 000002f2: PUSH1 0xa0 000002f4: PUSH1 0x02 000002f6: EXP 000002f7: SUB 000002f8: SWAP1 000002f9: SWAP2 000002fa: AND 000002fb: DUP2 000002fc: MSTORE 000002fd: PUSH1 0x20 000002ff: ADD 00000300: PUSH1 0x40 00000302: MLOAD 00000303: DUP1 00000304: SWAP2 00000305: SUB 00000306: SWAP1 00000307: RETURN 00000308: JUMPDEST 00000309: CALLVALUE 0000030a: ISZERO 0000030b: PUSH2 0x0313 0000030e: JUMPI 0000030f: PUSH1 0x00 00000311: DUP1 00000312: REVERT 00000313: JUMPDEST 00000314: PUSH2 0x01e9 00000317: PUSH1 0x01 00000319: PUSH1 0xa0 0000031b: PUSH1 0x02 0000031d: EXP 0000031e: SUB 0000031f: PUSH1 0x04 00000321: CALLDATALOAD 00000322: AND 00000323: PUSH2 0x0cfd 00000326: JUMP 00000327: JUMPDEST 00000328: PUSH1 0x40 0000032a: MLOAD 0000032b: SWAP1 0000032c: DUP2 0000032d: MSTORE 0000032e: PUSH1 0x20 00000330: ADD 00000331: PUSH1 0x40 00000333: MLOAD 00000334: DUP1 00000335: SWAP2 00000336: SUB 00000337: SWAP1 00000338: RETURN 00000339: JUMPDEST 0000033a: CALLVALUE 0000033b: ISZERO 0000033c: PUSH2 0x0344 0000033f: JUMPI 00000340: PUSH1 0x00 00000342: DUP1 00000343: REVERT 00000344: JUMPDEST 00000345: PUSH2 0x02ec 00000348: PUSH2 0x0d0f 0000034b: JUMP 0000034c: JUMPDEST 0000034d: PUSH1 0x40 0000034f: MLOAD 00000350: PUSH1 0x01 00000352: PUSH1 0xa0 00000354: PUSH1 0x02 00000356: EXP 00000357: SUB 00000358: SWAP1 00000359: SWAP2 0000035a: AND 0000035b: DUP2 0000035c: MSTORE 0000035d: PUSH1 0x20 0000035f: ADD 00000360: PUSH1 0x40 00000362: MLOAD 00000363: DUP1 00000364: SWAP2 00000365: SUB 00000366: SWAP1 00000367: RETURN 00000368: JUMPDEST 00000369: CALLVALUE 0000036a: ISZERO 0000036b: PUSH2 0x0373 0000036e: JUMPI 0000036f: PUSH1 0x00 00000371: DUP1 00000372: REVERT 00000373: JUMPDEST 00000374: PUSH2 0x02ec 00000377: PUSH2 0x0d1f 0000037a: JUMP 0000037b: JUMPDEST 0000037c: PUSH1 0x40 0000037e: MLOAD 0000037f: PUSH1 0x01 00000381: PUSH1 0xa0 00000383: PUSH1 0x02 00000385: EXP 00000386: SUB 00000387: SWAP1 00000388: SWAP2 00000389: AND 0000038a: DUP2 0000038b: MSTORE 0000038c: PUSH1 0x20 0000038e: ADD 0000038f: PUSH1 0x40 00000391: MLOAD 00000392: DUP1 00000393: SWAP2 00000394: SUB 00000395: SWAP1 00000396: RETURN 00000397: JUMPDEST 00000398: CALLVALUE 00000399: ISZERO 0000039a: PUSH2 0x03a2 0000039d: JUMPI 0000039e: PUSH1 0x00 000003a0: DUP1 000003a1: REVERT 000003a2: JUMPDEST 000003a3: PUSH2 0x01e9 000003a6: PUSH1 0x04 000003a8: CALLDATALOAD 000003a9: PUSH1 0x24 000003ab: CALLDATALOAD 000003ac: PUSH2 0x0d2e 000003af: JUMP 000003b0: JUMPDEST 000003b1: PUSH1 0x40 000003b3: MLOAD 000003b4: SWAP1 000003b5: DUP2 000003b6: MSTORE 000003b7: PUSH1 0x20 000003b9: ADD 000003ba: PUSH1 0x40 000003bc: MLOAD 000003bd: DUP1 000003be: SWAP2 000003bf: SUB 000003c0: SWAP1 000003c1: RETURN 000003c2: JUMPDEST 000003c3: CALLVALUE 000003c4: ISZERO 000003c5: PUSH2 0x03cd 000003c8: JUMPI 000003c9: PUSH1 0x00 000003cb: DUP1 000003cc: REVERT 000003cd: JUMPDEST 000003ce: PUSH2 0x013e 000003d1: PUSH1 0x01 000003d3: PUSH1 0xa0 000003d5: PUSH1 0x02 000003d7: EXP 000003d8: SUB 000003d9: PUSH1 0x04 000003db: CALLDATALOAD 000003dc: AND 000003dd: PUSH1 0x24 000003df: CALLDATALOAD 000003e0: PUSH2 0x0d47 000003e3: JUMP 000003e4: JUMPDEST 000003e5: STOP 000003e6: JUMPDEST 000003e7: CALLVALUE 000003e8: ISZERO 000003e9: PUSH2 0x03f1 000003ec: JUMPI 000003ed: PUSH1 0x00 000003ef: DUP1 000003f0: REVERT 000003f1: JUMPDEST 000003f2: PUSH2 0x01e9 000003f5: PUSH1 0x04 000003f7: CALLDATALOAD 000003f8: PUSH1 0x24 000003fa: CALLDATALOAD 000003fb: PUSH2 0x0dcf 000003fe: JUMP 000003ff: JUMPDEST 00000400: PUSH1 0x40 00000402: MLOAD 00000403: SWAP1 00000404: DUP2 00000405: MSTORE 00000406: PUSH1 0x20 00000408: ADD 00000409: PUSH1 0x40 0000040b: MLOAD 0000040c: DUP1 0000040d: SWAP2 0000040e: SUB 0000040f: SWAP1 00000410: RETURN 00000411: JUMPDEST 00000412: PUSH2 0x013e 00000415: PUSH2 0x0dfe 00000418: JUMP 00000419: JUMPDEST 0000041a: STOP 0000041b: JUMPDEST 0000041c: CALLVALUE 0000041d: ISZERO 0000041e: PUSH2 0x0426 00000421: JUMPI 00000422: PUSH1 0x00 00000424: DUP1 00000425: REVERT 00000426: JUMPDEST 00000427: PUSH2 0x01b6 0000042a: PUSH1 0x04 0000042c: CALLDATALOAD 0000042d: PUSH2 0x0eea 00000430: JUMP 00000431: JUMPDEST 00000432: PUSH1 0x40 00000434: MLOAD 00000435: SWAP1 00000436: ISZERO 00000437: ISZERO 00000438: DUP2 00000439: MSTORE 0000043a: PUSH1 0x20 0000043c: ADD 0000043d: PUSH1 0x40 0000043f: MLOAD 00000440: DUP1 00000441: SWAP2 00000442: SUB 00000443: SWAP1 00000444: RETURN 00000445: JUMPDEST 00000446: CALLVALUE 00000447: ISZERO 00000448: PUSH2 0x0450 0000044b: JUMPI 0000044c: PUSH1 0x00 0000044e: DUP1 0000044f: REVERT 00000450: JUMPDEST 00000451: PUSH2 0x01b6 00000454: PUSH1 0x04 00000456: CALLDATALOAD 00000457: PUSH2 0x0eff 0000045a: JUMP 0000045b: JUMPDEST 0000045c: PUSH1 0x40 0000045e: MLOAD 0000045f: SWAP1 00000460: ISZERO 00000461: ISZERO 00000462: DUP2 00000463: MSTORE 00000464: PUSH1 0x20 00000466: ADD 00000467: PUSH1 0x40 00000469: MLOAD 0000046a: DUP1 0000046b: SWAP2 0000046c: SUB 0000046d: SWAP1 0000046e: RETURN 0000046f: JUMPDEST 00000470: CALLVALUE 00000471: ISZERO 00000472: PUSH2 0x047a 00000475: JUMPI 00000476: PUSH1 0x00 00000478: DUP1 00000479: REVERT 0000047a: JUMPDEST 0000047b: PUSH2 0x01e9 0000047e: PUSH1 0x04 00000480: CALLDATALOAD 00000481: PUSH1 0x24 00000483: CALLDATALOAD 00000484: PUSH2 0x0f61 00000487: JUMP 00000488: JUMPDEST 00000489: PUSH1 0x40 0000048b: MLOAD 0000048c: SWAP1 0000048d: DUP2 0000048e: MSTORE 0000048f: PUSH1 0x20 00000491: ADD 00000492: PUSH1 0x40 00000494: MLOAD 00000495: DUP1 00000496: SWAP2 00000497: SUB 00000498: SWAP1 00000499: RETURN 0000049a: JUMPDEST 0000049b: CALLVALUE 0000049c: ISZERO 0000049d: PUSH2 0x04a5 000004a0: JUMPI 000004a1: PUSH1 0x00 000004a3: DUP1 000004a4: REVERT 000004a5: JUMPDEST 000004a6: PUSH2 0x01b6 000004a9: PUSH1 0x04 000004ab: PUSH2 0x0104 000004ae: DUP2 000004af: PUSH1 0x08 000004b1: PUSH2 0x0100 000004b4: PUSH1 0x40 000004b6: MLOAD 000004b7: SWAP1 000004b8: DUP2 000004b9: ADD 000004ba: PUSH1 0x40 000004bc: MSTORE 000004bd: SWAP2 000004be: SWAP1 000004bf: DUP3 000004c0: DUP3 000004c1: PUSH2 0x0100 000004c4: DUP1 000004c5: DUP3 000004c6: DUP5 000004c7: CALLDATACOPY 000004c8: DUP3 000004c9: ADD 000004ca: SWAP2 000004cb: POP 000004cc: POP 000004cd: POP 000004ce: POP 000004cf: POP 000004d0: SWAP2 000004d1: SWAP1 000004d2: DUP1 000004d3: PUSH1 0x80 000004d5: ADD 000004d6: SWAP1 000004d7: PUSH1 0x04 000004d9: DUP1 000004da: PUSH1 0x20 000004dc: MUL 000004dd: PUSH1 0x40 000004df: MLOAD 000004e0: SWAP1 000004e1: DUP2 000004e2: ADD 000004e3: PUSH1 0x40 000004e5: MSTORE 000004e6: SWAP2 000004e7: SWAP1 000004e8: DUP3 000004e9: DUP3 000004ea: PUSH1 0x80 000004ec: DUP1 000004ed: DUP3 000004ee: DUP5 000004ef: CALLDATACOPY 000004f0: DUP3 000004f1: ADD 000004f2: SWAP2 000004f3: POP 000004f4: POP 000004f5: POP 000004f6: POP 000004f7: POP 000004f8: SWAP2 000004f9: SWAP1 000004fa: DUP1 000004fb: PUSH1 0x40 000004fd: ADD 000004fe: SWAP1 000004ff: PUSH1 0x02 00000501: DUP1 00000502: PUSH1 0x20 00000504: MUL 00000505: PUSH1 0x40 00000507: MLOAD 00000508: SWAP1 00000509: DUP2 0000050a: ADD 0000050b: PUSH1 0x40 0000050d: MSTORE 0000050e: DUP1 0000050f: SWAP3 00000510: SWAP2 00000511: SWAP1 00000512: DUP3 00000513: PUSH1 0x02 00000515: PUSH1 0x20 00000517: MUL 00000518: DUP1 00000519: DUP3 0000051a: DUP5 0000051b: CALLDATACOPY 0000051c: DUP3 0000051d: ADD 0000051e: SWAP2 0000051f: POP 00000520: POP 00000521: POP 00000522: POP 00000523: POP 00000524: SWAP2 00000525: SWAP1 00000526: DUP1 00000527: PUSH1 0x80 00000529: ADD 0000052a: SWAP1 0000052b: PUSH1 0x04 0000052d: DUP1 0000052e: PUSH1 0x20 00000530: MUL 00000531: PUSH1 0x40 00000533: MLOAD 00000534: SWAP1 00000535: DUP2 00000536: ADD 00000537: PUSH1 0x40 00000539: MSTORE 0000053a: SWAP2 0000053b: SWAP1 0000053c: DUP3 0000053d: DUP3 0000053e: PUSH1 0x80 00000540: DUP1 00000541: DUP3 00000542: DUP5 00000543: CALLDATACOPY 00000544: POP 00000545: SWAP4 00000546: SWAP6 00000547: POP 00000548: PUSH2 0x0f89 0000054b: SWAP5 0000054c: POP 0000054d: POP 0000054e: POP 0000054f: POP 00000550: POP 00000551: JUMP 00000552: JUMPDEST 00000553: PUSH1 0x40 00000555: MLOAD 00000556: SWAP1 00000557: ISZERO 00000558: ISZERO 00000559: DUP2 0000055a: MSTORE 0000055b: PUSH1 0x20 0000055d: ADD 0000055e: PUSH1 0x40 00000560: MLOAD 00000561: DUP1 00000562: SWAP2 00000563: SUB 00000564: SWAP1 00000565: RETURN 00000566: JUMPDEST 00000567: CALLVALUE 00000568: ISZERO 00000569: PUSH2 0x0571 0000056c: JUMPI 0000056d: PUSH1 0x00 0000056f: DUP1 00000570: REVERT 00000571: JUMPDEST 00000572: PUSH2 0x01e9 00000575: PUSH2 0x1a1a 00000578: JUMP 00000579: JUMPDEST 0000057a: PUSH1 0x40 0000057c: MLOAD 0000057d: SWAP1 0000057e: DUP2 0000057f: MSTORE 00000580: PUSH1 0x20 00000582: ADD 00000583: PUSH1 0x40 00000585: MLOAD 00000586: DUP1 00000587: SWAP2 00000588: SUB 00000589: SWAP1 0000058a: RETURN 0000058b: JUMPDEST 0000058c: CALLVALUE 0000058d: ISZERO 0000058e: PUSH2 0x0596 00000591: JUMPI 00000592: PUSH1 0x00 00000594: DUP1 00000595: REVERT 00000596: JUMPDEST 00000597: PUSH2 0x01b6 0000059a: PUSH1 0x01 0000059c: PUSH1 0xa0 0000059e: PUSH1 0x02 000005a0: EXP 000005a1: SUB 000005a2: PUSH1 0x04 000005a4: CALLDATALOAD 000005a5: AND 000005a6: PUSH1 0x24 000005a8: CALLDATALOAD 000005a9: PUSH2 0x1a20 000005ac: JUMP 000005ad: JUMPDEST 000005ae: PUSH1 0x40 000005b0: MLOAD 000005b1: SWAP1 000005b2: ISZERO 000005b3: ISZERO 000005b4: DUP2 000005b5: MSTORE 000005b6: PUSH1 0x20 000005b8: ADD 000005b9: PUSH1 0x40 000005bb: MLOAD 000005bc: DUP1 000005bd: SWAP2 000005be: SUB 000005bf: SWAP1 000005c0: RETURN 000005c1: JUMPDEST 000005c2: CALLVALUE 000005c3: ISZERO 000005c4: PUSH2 0x05cc 000005c7: JUMPI 000005c8: PUSH1 0x00 000005ca: DUP1 000005cb: REVERT 000005cc: JUMPDEST 000005cd: PUSH2 0x01e9 000005d0: PUSH1 0x04 000005d2: CALLDATALOAD 000005d3: PUSH2 0x1c32 000005d6: JUMP 000005d7: JUMPDEST 000005d8: PUSH1 0x40 000005da: MLOAD 000005db: SWAP1 000005dc: DUP2 000005dd: MSTORE 000005de: PUSH1 0x20 000005e0: ADD 000005e1: PUSH1 0x40 000005e3: MLOAD 000005e4: DUP1 000005e5: SWAP2 000005e6: SUB 000005e7: SWAP1 000005e8: RETURN 000005e9: JUMPDEST 000005ea: CALLVALUE 000005eb: ISZERO 000005ec: PUSH2 0x05f4 000005ef: JUMPI 000005f0: PUSH1 0x00 000005f2: DUP1 000005f3: REVERT 000005f4: JUMPDEST 000005f5: PUSH2 0x01e9 000005f8: PUSH1 0x01 000005fa: PUSH1 0xa0 000005fc: PUSH1 0x02 000005fe: EXP 000005ff: SUB 00000600: PUSH1 0x04 00000602: CALLDATALOAD 00000603: DUP2 00000604: AND 00000605: SWAP1 00000606: PUSH1 0x24 00000608: CALLDATALOAD 00000609: AND 0000060a: PUSH2 0x1c44 0000060d: JUMP 0000060e: JUMPDEST 0000060f: PUSH1 0x40 00000611: MLOAD 00000612: SWAP1 00000613: DUP2 00000614: MSTORE 00000615: PUSH1 0x20 00000617: ADD 00000618: PUSH1 0x40 0000061a: MLOAD 0000061b: DUP1 0000061c: SWAP2 0000061d: SUB 0000061e: SWAP1 0000061f: RETURN 00000620: JUMPDEST 00000621: DUP1 00000622: ISZERO 00000623: ISZERO 00000624: PUSH2 0x062c 00000627: JUMPI 00000628: PUSH1 0x00 0000062a: DUP1 0000062b: REVERT 0000062c: JUMPDEST 0000062d: JUMPDEST 0000062e: POP 0000062f: JUMP 00000630: JUMPDEST 00000631: PUSH1 0x00 00000633: SLOAD 00000634: PUSH2 0x064b 00000637: SWAP1 00000638: CALLER 00000639: PUSH1 0x01 0000063b: PUSH1 0xa0 0000063d: PUSH1 0x02 0000063f: EXP 00000640: SUB 00000641: SWAP1 00000642: DUP2 00000643: AND 00000644: SWAP2 00000645: AND 00000646: EQ 00000647: PUSH2 0x0620 0000064a: JUMP 0000064b: JUMPDEST 0000064c: PUSH1 0x00 0000064e: SLOAD 0000064f: PUSH1 0x01 00000651: PUSH1 0xa0 00000653: PUSH1 0x02 00000655: EXP 00000656: SUB 00000657: DUP1 00000658: DUP4 00000659: AND 0000065a: SWAP2 0000065b: AND 0000065c: PUSH32 0xcbf985117192c8f614a58aaf97226bb80a754772f5f6edf06f87c675f2e6c663 0000067d: PUSH1 0x40 0000067f: MLOAD 00000680: PUSH1 0x40 00000682: MLOAD 00000683: DUP1 00000684: SWAP2 00000685: SUB 00000686: SWAP1 00000687: LOG3 00000688: PUSH1 0x00 0000068a: DUP1 0000068b: SLOAD 0000068c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000006a1: NOT 000006a2: AND 000006a3: PUSH1 0x01 000006a5: PUSH1 0xa0 000006a7: PUSH1 0x02 000006a9: EXP 000006aa: SUB 000006ab: DUP4 000006ac: AND 000006ad: OR 000006ae: SWAP1 000006af: SSTORE 000006b0: JUMPDEST 000006b1: JUMPDEST 000006b2: POP 000006b3: JUMP 000006b4: JUMPDEST 000006b5: PUSH1 0x00 000006b7: DUP1 000006b8: SLOAD 000006b9: DUP2 000006ba: SWAP1 000006bb: CALLER 000006bc: PUSH1 0x01 000006be: PUSH1 0xa0 000006c0: PUSH1 0x02 000006c2: EXP 000006c3: SUB 000006c4: SWAP1 000006c5: DUP2 000006c6: AND 000006c7: SWAP2 000006c8: AND 000006c9: EQ 000006ca: DUP1 000006cb: ISZERO 000006cc: SWAP1 000006cd: PUSH2 0x06ef 000006d0: JUMPI 000006d1: POP 000006d2: PUSH1 0x01 000006d4: PUSH1 0xa0 000006d6: PUSH1 0x02 000006d8: EXP 000006d9: SUB 000006da: CALLER 000006db: AND 000006dc: PUSH1 0x00 000006de: SWAP1 000006df: DUP2 000006e0: MSTORE 000006e1: PUSH1 0x03 000006e3: PUSH1 0x20 000006e5: MSTORE 000006e6: PUSH1 0x40 000006e8: SWAP1 000006e9: KECCAK256 000006ea: SLOAD 000006eb: PUSH1 0xff 000006ed: AND 000006ee: ISZERO 000006ef: JUMPDEST 000006f0: ISZERO 000006f1: PUSH2 0x06f9 000006f4: JUMPI 000006f5: PUSH1 0x00 000006f7: DUP1 000006f8: REVERT 000006f9: JUMPDEST 000006fa: ADDRESS 000006fb: DUP11 000006fc: DUP11 000006fd: DUP11 000006fe: DUP11 000006ff: PUSH1 0x40 00000701: MLOAD 00000702: PUSH13 0x01000000000000000000000000 00000710: PUSH1 0x01 00000712: PUSH1 0xa0 00000714: PUSH1 0x02 00000716: EXP 00000717: SUB 00000718: SWAP7 00000719: DUP8 0000071a: AND 0000071b: DUP2 0000071c: MUL 0000071d: DUP3 0000071e: MSTORE 0000071f: SWAP5 00000720: DUP7 00000721: AND 00000722: DUP6 00000723: MUL 00000724: PUSH1 0x14 00000726: DUP3 00000727: ADD 00000728: MSTORE 00000729: PUSH1 0x28 0000072b: DUP2 0000072c: ADD 0000072d: SWAP4 0000072e: SWAP1 0000072f: SWAP4 00000730: MSTORE 00000731: SWAP4 00000732: AND 00000733: SWAP1 00000734: SWAP2 00000735: MUL 00000736: PUSH1 0x48 00000738: DUP3 00000739: ADD 0000073a: MSTORE 0000073b: PUSH1 0x5c 0000073d: DUP2 0000073e: ADD 0000073f: SWAP2 00000740: SWAP1 00000741: SWAP2 00000742: MSTORE 00000743: PUSH1 0x7c 00000745: ADD 00000746: PUSH1 0x40 00000748: MLOAD 00000749: SWAP1 0000074a: DUP2 0000074b: SWAP1 0000074c: SUB 0000074d: SWAP1 0000074e: KECCAK256 0000074f: PUSH1 0x00 00000751: DUP2 00000752: DUP2 00000753: MSTORE 00000754: PUSH1 0x09 00000756: PUSH1 0x20 00000758: MSTORE 00000759: PUSH1 0x40 0000075b: SWAP1 0000075c: KECCAK256 0000075d: SLOAD 0000075e: SWAP1 0000075f: SWAP2 00000760: POP 00000761: PUSH1 0xff 00000763: AND 00000764: ISZERO 00000765: PUSH2 0x076d 00000768: JUMPI 00000769: PUSH1 0x00 0000076b: DUP1 0000076c: REVERT 0000076d: JUMPDEST 0000076e: PUSH1 0x00 00000770: DUP2 00000771: DUP2 00000772: MSTORE 00000773: PUSH1 0x09 00000775: PUSH1 0x20 00000777: MSTORE 00000778: PUSH1 0x40 0000077a: SWAP1 0000077b: DUP2 0000077c: SWAP1 0000077d: KECCAK256 0000077e: DUP1 0000077f: SLOAD 00000780: PUSH1 0xff 00000782: NOT 00000783: AND 00000784: PUSH1 0x01 00000786: SWAP1 00000787: DUP2 00000788: OR 00000789: SWAP1 0000078a: SWAP2 0000078b: SSTORE 0000078c: PUSH1 0x01 0000078e: PUSH1 0xa0 00000790: PUSH1 0x02 00000792: EXP 00000793: SUB 00000794: DUP11 00000795: AND 00000796: SWAP2 00000797: DUP4 00000798: SWAP1 00000799: MLOAD 0000079a: PUSH32 0x19457468657265756d205369676e6564204d6573736167653a0a333200000000 000007bb: DUP2 000007bc: MSTORE 000007bd: PUSH1 0x1c 000007bf: DUP2 000007c0: ADD 000007c1: SWAP2 000007c2: SWAP1 000007c3: SWAP2 000007c4: MSTORE 000007c5: PUSH1 0x3c 000007c7: ADD 000007c8: PUSH1 0x40 000007ca: MLOAD 000007cb: DUP1 000007cc: SWAP2 000007cd: SUB 000007ce: SWAP1 000007cf: KECCAK256 000007d0: DUP9 000007d1: DUP9 000007d2: DUP9 000007d3: PUSH1 0x40 000007d5: MLOAD 000007d6: PUSH1 0x00 000007d8: DUP2 000007d9: MSTORE 000007da: PUSH1 0x20 000007dc: ADD 000007dd: PUSH1 0x40 000007df: MSTORE 000007e0: PUSH1 0x00 000007e2: PUSH1 0x40 000007e4: MLOAD 000007e5: PUSH1 0x20 000007e7: ADD 000007e8: MSTORE 000007e9: PUSH1 0x40 000007eb: MLOAD 000007ec: SWAP4 000007ed: DUP5 000007ee: MSTORE 000007ef: PUSH1 0xff 000007f1: SWAP1 000007f2: SWAP3 000007f3: AND 000007f4: PUSH1 0x20 000007f6: DUP1 000007f7: DUP6 000007f8: ADD 000007f9: SWAP2 000007fa: SWAP1 000007fb: SWAP2 000007fc: MSTORE 000007fd: PUSH1 0x40 000007ff: DUP1 00000800: DUP6 00000801: ADD 00000802: SWAP3 00000803: SWAP1 00000804: SWAP3 00000805: MSTORE 00000806: PUSH1 0x60 00000808: DUP5 00000809: ADD 0000080a: SWAP3 0000080b: SWAP1 0000080c: SWAP3 0000080d: MSTORE 0000080e: PUSH1 0x80 00000810: SWAP1 00000811: SWAP3 00000812: ADD 00000813: SWAP2 00000814: MLOAD 00000815: PUSH1 0x20 00000817: DUP2 00000818: SUB 00000819: SWAP1 0000081a: DUP1 0000081b: DUP5 0000081c: SUB 0000081d: SWAP1 0000081e: PUSH1 0x00 00000820: DUP7 00000821: PUSH2 0x646e 00000824: GAS 00000825: SUB 00000826: CALL 00000827: ISZERO 00000828: ISZERO 00000829: PUSH2 0x0831 0000082c: JUMPI 0000082d: PUSH1 0x00 0000082f: DUP1 00000830: REVERT 00000831: JUMPDEST 00000832: POP 00000833: POP 00000834: PUSH1 0x20 00000836: PUSH1 0x40 00000838: MLOAD 00000839: SUB 0000083a: MLOAD 0000083b: PUSH1 0x01 0000083d: PUSH1 0xa0 0000083f: PUSH1 0x02 00000841: EXP 00000842: SUB 00000843: AND 00000844: EQ 00000845: PUSH2 0x084d 00000848: JUMPI 00000849: PUSH1 0x00 0000084b: DUP1 0000084c: REVERT 0000084d: JUMPDEST 0000084e: PUSH7 0xb1a2bc2ec50000 00000856: DUP4 00000857: GT 00000858: ISZERO 00000859: PUSH2 0x0867 0000085c: JUMPI 0000085d: PUSH7 0xb1a2bc2ec50000 00000865: SWAP3 00000866: POP 00000867: JUMPDEST 00000868: PUSH1 0x01 0000086a: PUSH1 0xa0 0000086c: PUSH1 0x02 0000086e: EXP 0000086f: SUB 00000870: DUP1 00000871: DUP12 00000872: AND 00000873: PUSH1 0x00 00000875: SWAP1 00000876: DUP2 00000877: MSTORE 00000878: PUSH1 0x02 0000087a: PUSH1 0x20 0000087c: SWAP1 0000087d: DUP2 0000087e: MSTORE 0000087f: PUSH1 0x40 00000881: DUP1 00000882: DUP4 00000883: KECCAK256 00000884: SWAP4 00000885: DUP13 00000886: AND 00000887: DUP4 00000888: MSTORE 00000889: SWAP3 0000088a: SWAP1 0000088b: MSTORE 0000088c: KECCAK256 0000088d: SLOAD 0000088e: DUP10 0000088f: SWAP1 00000890: LT 00000891: ISZERO 00000892: PUSH2 0x089a 00000895: JUMPI 00000896: PUSH1 0x00 00000898: DUP1 00000899: REVERT 0000089a: JUMPDEST 0000089b: PUSH1 0x01 0000089d: PUSH1 0xa0 0000089f: PUSH1 0x02 000008a1: EXP 000008a2: SUB 000008a3: DUP1 000008a4: DUP12 000008a5: AND 000008a6: PUSH1 0x00 000008a8: SWAP1 000008a9: DUP2 000008aa: MSTORE 000008ab: PUSH1 0x02 000008ad: PUSH1 0x20 000008af: SWAP1 000008b0: DUP2 000008b1: MSTORE 000008b2: PUSH1 0x40 000008b4: DUP1 000008b5: DUP4 000008b6: KECCAK256 000008b7: SWAP4 000008b8: DUP13 000008b9: AND 000008ba: DUP4 000008bb: MSTORE 000008bc: SWAP3 000008bd: SWAP1 000008be: MSTORE 000008bf: KECCAK256 000008c0: SLOAD 000008c1: PUSH2 0x08ca 000008c4: SWAP1 000008c5: DUP11 000008c6: PUSH2 0x0d2e 000008c9: JUMP 000008ca: JUMPDEST 000008cb: PUSH1 0x01 000008cd: PUSH1 0xa0 000008cf: PUSH1 0x02 000008d1: EXP 000008d2: SUB 000008d3: DUP12 000008d4: DUP2 000008d5: AND 000008d6: PUSH1 0x00 000008d8: SWAP1 000008d9: DUP2 000008da: MSTORE 000008db: PUSH1 0x02 000008dd: PUSH1 0x20 000008df: SWAP1 000008e0: DUP2 000008e1: MSTORE 000008e2: PUSH1 0x40 000008e4: DUP1 000008e5: DUP4 000008e6: KECCAK256 000008e7: DUP14 000008e8: DUP6 000008e9: AND 000008ea: DUP5 000008eb: MSTORE 000008ec: SWAP1 000008ed: SWAP2 000008ee: MSTORE 000008ef: DUP1 000008f0: DUP3 000008f1: KECCAK256 000008f2: SWAP4 000008f3: SWAP1 000008f4: SWAP4 000008f5: SSTORE 000008f6: PUSH1 0x06 000008f8: SLOAD 000008f9: SWAP1 000008fa: SWAP2 000008fb: AND 000008fc: DUP2 000008fd: MSTORE 000008fe: KECCAK256 000008ff: SLOAD 00000900: PUSH2 0x0925 00000903: SWAP1 00000904: PUSH8 0x0de0b6b3a7640000 0000090d: PUSH2 0x0916 00000910: DUP7 00000911: DUP14 00000912: PUSH2 0x0dcf 00000915: JUMP 00000916: JUMPDEST 00000917: DUP2 00000918: ISZERO 00000919: ISZERO 0000091a: PUSH2 0x091f 0000091d: JUMPI 0000091e: INVALID 0000091f: JUMPDEST 00000920: DIV 00000921: PUSH2 0x0f61 00000924: JUMP 00000925: JUMPDEST 00000926: PUSH1 0x01 00000928: PUSH1 0xa0 0000092a: PUSH1 0x02 0000092c: EXP 0000092d: SUB 0000092e: DUP1 0000092f: DUP13 00000930: AND 00000931: PUSH1 0x00 00000933: SWAP1 00000934: DUP2 00000935: MSTORE 00000936: PUSH1 0x02 00000938: PUSH1 0x20 0000093a: SWAP1 0000093b: DUP2 0000093c: MSTORE 0000093d: PUSH1 0x40 0000093f: DUP1 00000940: DUP4 00000941: KECCAK256 00000942: PUSH1 0x06 00000944: SLOAD 00000945: SWAP1 00000946: SWAP5 00000947: AND 00000948: DUP4 00000949: MSTORE 0000094a: SWAP3 0000094b: SWAP1 0000094c: MSTORE 0000094d: KECCAK256 0000094e: SSTORE 0000094f: PUSH8 0x0de0b6b3a7640000 00000958: PUSH2 0x0963 0000095b: DUP5 0000095c: DUP3 0000095d: SUB 0000095e: DUP12 0000095f: PUSH2 0x0dcf 00000962: JUMP 00000963: JUMPDEST 00000964: DUP2 00000965: ISZERO 00000966: ISZERO 00000967: PUSH2 0x096c 0000096a: JUMPI 0000096b: INVALID 0000096c: JUMPDEST 0000096d: DIV 0000096e: SWAP9 0000096f: POP 00000970: PUSH1 0x01 00000972: PUSH1 0xa0 00000974: PUSH1 0x02 00000976: EXP 00000977: SUB 00000978: DUP11 00000979: AND 0000097a: ISZERO 0000097b: ISZERO 0000097c: PUSH2 0x09b5 0000097f: JUMPI 00000980: PUSH1 0x01 00000982: PUSH1 0xa0 00000984: PUSH1 0x02 00000986: EXP 00000987: SUB 00000988: DUP9 00000989: AND 0000098a: DUP10 0000098b: ISZERO 0000098c: PUSH2 0x08fc 0000098f: MUL 00000990: DUP11 00000991: PUSH1 0x40 00000993: MLOAD 00000994: PUSH1 0x00 00000996: PUSH1 0x40 00000998: MLOAD 00000999: DUP1 0000099a: DUP4 0000099b: SUB 0000099c: DUP2 0000099d: DUP6 0000099e: DUP9 0000099f: DUP9 000009a0: CALL 000009a1: SWAP4 000009a2: POP 000009a3: POP 000009a4: POP 000009a5: POP 000009a6: ISZERO 000009a7: ISZERO 000009a8: PUSH2 0x09b0 000009ab: JUMPI 000009ac: PUSH1 0x00 000009ae: DUP1 000009af: REVERT 000009b0: JUMPDEST 000009b1: PUSH2 0x0a38 000009b4: JUMP 000009b5: JUMPDEST 000009b6: DUP10 000009b7: PUSH1 0x01 000009b9: PUSH1 0xa0 000009bb: PUSH1 0x02 000009bd: EXP 000009be: SUB 000009bf: AND 000009c0: PUSH4 0xa9059cbb 000009c5: DUP10 000009c6: DUP12 000009c7: PUSH1 0x00 000009c9: PUSH1 0x40 000009cb: MLOAD 000009cc: PUSH1 0x20 000009ce: ADD 000009cf: MSTORE 000009d0: PUSH1 0x40 000009d2: MLOAD 000009d3: PUSH1 0xe0 000009d5: PUSH1 0x02 000009d7: EXP 000009d8: PUSH4 0xffffffff 000009dd: DUP6 000009de: AND 000009df: MUL 000009e0: DUP2 000009e1: MSTORE 000009e2: PUSH1 0x01 000009e4: PUSH1 0xa0 000009e6: PUSH1 0x02 000009e8: EXP 000009e9: SUB 000009ea: SWAP1 000009eb: SWAP3 000009ec: AND 000009ed: PUSH1 0x04 000009ef: DUP4 000009f0: ADD 000009f1: MSTORE 000009f2: PUSH1 0x24 000009f4: DUP3 000009f5: ADD 000009f6: MSTORE 000009f7: PUSH1 0x44 000009f9: ADD 000009fa: PUSH1 0x20 000009fc: PUSH1 0x40 000009fe: MLOAD 000009ff: DUP1 00000a00: DUP4 00000a01: SUB 00000a02: DUP2 00000a03: PUSH1 0x00 00000a05: DUP8 00000a06: DUP1 00000a07: EXTCODESIZE 00000a08: ISZERO 00000a09: ISZERO 00000a0a: PUSH2 0x0a12 00000a0d: JUMPI 00000a0e: PUSH1 0x00 00000a10: DUP1 00000a11: REVERT 00000a12: JUMPDEST 00000a13: PUSH2 0x02c6 00000a16: GAS 00000a17: SUB 00000a18: CALL 00000a19: ISZERO 00000a1a: ISZERO 00000a1b: PUSH2 0x0a23 00000a1e: JUMPI 00000a1f: PUSH1 0x00 00000a21: DUP1 00000a22: REVERT 00000a23: JUMPDEST 00000a24: POP 00000a25: POP 00000a26: POP 00000a27: PUSH1 0x40 00000a29: MLOAD 00000a2a: DUP1 00000a2b: MLOAD 00000a2c: SWAP1 00000a2d: POP 00000a2e: ISZERO 00000a2f: ISZERO 00000a30: PUSH2 0x0a38 00000a33: JUMPI 00000a34: PUSH1 0x00 00000a36: DUP1 00000a37: REVERT 00000a38: JUMPDEST 00000a39: JUMPDEST 00000a3a: PUSH1 0x01 00000a3c: PUSH1 0xa0 00000a3e: PUSH1 0x02 00000a40: EXP 00000a41: SUB 00000a42: DUP1 00000a43: DUP10 00000a44: AND 00000a45: PUSH1 0x00 00000a47: DUP2 00000a48: DUP2 00000a49: MSTORE 00000a4a: PUSH1 0x04 00000a4c: PUSH1 0x20 00000a4e: SWAP1 00000a4f: DUP2 00000a50: MSTORE 00000a51: PUSH1 0x40 00000a53: DUP1 00000a54: DUP4 00000a55: KECCAK256 00000a56: NUMBER 00000a57: SWAP1 00000a58: SSTORE 00000a59: SWAP4 00000a5a: DUP15 00000a5b: AND 00000a5c: DUP3 00000a5d: MSTORE 00000a5e: PUSH1 0x02 00000a60: DUP2 00000a61: MSTORE 00000a62: DUP4 00000a63: DUP3 00000a64: KECCAK256 00000a65: SWAP3 00000a66: DUP3 00000a67: MSTORE 00000a68: SWAP2 00000a69: SWAP1 00000a6a: SWAP2 00000a6b: MSTORE 00000a6c: DUP2 00000a6d: SWAP1 00000a6e: KECCAK256 00000a6f: SLOAD 00000a70: PUSH32 0xf341246adaac6f497bc2a656f546ab9e182111d630394f0c57c710a59a2cb567 00000a91: SWAP2 00000a92: DUP13 00000a93: SWAP2 00000a94: DUP12 00000a95: SWAP2 00000a96: DUP14 00000a97: SWAP2 00000a98: SWAP1 00000a99: MLOAD 00000a9a: PUSH1 0x01 00000a9c: PUSH1 0xa0 00000a9e: PUSH1 0x02 00000aa0: EXP 00000aa1: SUB 00000aa2: SWAP5 00000aa3: DUP6 00000aa4: AND 00000aa5: DUP2 00000aa6: MSTORE 00000aa7: SWAP3 00000aa8: SWAP1 00000aa9: SWAP4 00000aaa: AND 00000aab: PUSH1 0x20 00000aad: DUP4 00000aae: ADD 00000aaf: MSTORE 00000ab0: PUSH1 0x40 00000ab2: DUP1 00000ab3: DUP4 00000ab4: ADD 00000ab5: SWAP2 00000ab6: SWAP1 00000ab7: SWAP2 00000ab8: MSTORE 00000ab9: PUSH1 0x60 00000abb: DUP3 00000abc: ADD 00000abd: SWAP3 00000abe: SWAP1 00000abf: SWAP3 00000ac0: MSTORE 00000ac1: PUSH1 0x80 00000ac3: ADD 00000ac4: SWAP1 00000ac5: MLOAD 00000ac6: DUP1 00000ac7: SWAP2 00000ac8: SUB 00000ac9: SWAP1 00000aca: LOG1 00000acb: JUMPDEST 00000acc: JUMPDEST 00000acd: POP 00000ace: SWAP9 00000acf: SWAP8 00000ad0: POP 00000ad1: POP 00000ad2: POP 00000ad3: POP 00000ad4: POP 00000ad5: POP 00000ad6: POP 00000ad7: POP 00000ad8: JUMP 00000ad9: JUMPDEST 00000ada: PUSH1 0x04 00000adc: PUSH1 0x20 00000ade: MSTORE 00000adf: PUSH1 0x00 00000ae1: SWAP1 00000ae2: DUP2 00000ae3: MSTORE 00000ae4: PUSH1 0x40 00000ae6: SWAP1 00000ae7: KECCAK256 00000ae8: SLOAD 00000ae9: DUP2 00000aea: JUMP 00000aeb: JUMPDEST 00000aec: PUSH1 0x01 00000aee: PUSH1 0xa0 00000af0: PUSH1 0x02 00000af2: EXP 00000af3: SUB 00000af4: DUP1 00000af5: DUP4 00000af6: AND 00000af7: PUSH1 0x00 00000af9: SWAP1 00000afa: DUP2 00000afb: MSTORE 00000afc: PUSH1 0x02 00000afe: PUSH1 0x20 00000b00: SWAP1 00000b01: DUP2 00000b02: MSTORE 00000b03: PUSH1 0x40 00000b05: DUP1 00000b06: DUP4 00000b07: KECCAK256 00000b08: CALLER 00000b09: SWAP1 00000b0a: SWAP5 00000b0b: AND 00000b0c: DUP4 00000b0d: MSTORE 00000b0e: SWAP3 00000b0f: SWAP1 00000b10: MSTORE 00000b11: KECCAK256 00000b12: SLOAD 00000b13: PUSH2 0x0b1c 00000b16: SWAP1 00000b17: DUP3 00000b18: PUSH2 0x0f61 00000b1b: JUMP 00000b1c: JUMPDEST 00000b1d: PUSH1 0x01 00000b1f: PUSH1 0xa0 00000b21: PUSH1 0x02 00000b23: EXP 00000b24: SUB 00000b25: DUP1 00000b26: DUP5 00000b27: AND 00000b28: PUSH1 0x00 00000b2a: DUP2 00000b2b: DUP2 00000b2c: MSTORE 00000b2d: PUSH1 0x02 00000b2f: PUSH1 0x20 00000b31: SWAP1 00000b32: DUP2 00000b33: MSTORE 00000b34: PUSH1 0x40 00000b36: DUP1 00000b37: DUP4 00000b38: KECCAK256 00000b39: CALLER 00000b3a: SWAP6 00000b3b: DUP7 00000b3c: AND 00000b3d: DUP5 00000b3e: MSTORE 00000b3f: DUP3 00000b40: MSTORE 00000b41: DUP1 00000b42: DUP4 00000b43: KECCAK256 00000b44: SWAP6 00000b45: SWAP1 00000b46: SWAP6 00000b47: SSTORE 00000b48: PUSH1 0x04 00000b4a: SWAP1 00000b4b: MSTORE 00000b4c: DUP4 00000b4d: DUP2 00000b4e: KECCAK256 00000b4f: NUMBER 00000b50: SWAP1 00000b51: SSTORE 00000b52: SWAP1 00000b53: SWAP3 00000b54: PUSH4 0x23b872dd 00000b59: SWAP3 00000b5a: SWAP2 00000b5b: ADDRESS 00000b5c: SWAP2 00000b5d: DUP7 00000b5e: SWAP2 00000b5f: SWAP1 00000b60: MLOAD 00000b61: PUSH1 0x20 00000b63: ADD 00000b64: MSTORE 00000b65: PUSH1 0x40 00000b67: MLOAD 00000b68: PUSH1 0xe0 00000b6a: PUSH1 0x02 00000b6c: EXP 00000b6d: PUSH4 0xffffffff 00000b72: DUP7 00000b73: AND 00000b74: MUL 00000b75: DUP2 00000b76: MSTORE 00000b77: PUSH1 0x01 00000b79: PUSH1 0xa0 00000b7b: PUSH1 0x02 00000b7d: EXP 00000b7e: SUB 00000b7f: SWAP4 00000b80: DUP5 00000b81: AND 00000b82: PUSH1 0x04 00000b84: DUP3 00000b85: ADD 00000b86: MSTORE 00000b87: SWAP2 00000b88: SWAP1 00000b89: SWAP3 00000b8a: AND 00000b8b: PUSH1 0x24 00000b8d: DUP3 00000b8e: ADD 00000b8f: MSTORE 00000b90: PUSH1 0x44 00000b92: DUP2 00000b93: ADD 00000b94: SWAP2 00000b95: SWAP1 00000b96: SWAP2 00000b97: MSTORE 00000b98: PUSH1 0x64 00000b9a: ADD 00000b9b: PUSH1 0x20 00000b9d: PUSH1 0x40 00000b9f: MLOAD 00000ba0: DUP1 00000ba1: DUP4 00000ba2: SUB 00000ba3: DUP2 00000ba4: PUSH1 0x00 00000ba6: DUP8 00000ba7: DUP1 00000ba8: EXTCODESIZE 00000ba9: ISZERO 00000baa: ISZERO 00000bab: PUSH2 0x0bb3 00000bae: JUMPI 00000baf: PUSH1 0x00 00000bb1: DUP1 00000bb2: REVERT 00000bb3: JUMPDEST 00000bb4: PUSH2 0x02c6 00000bb7: GAS 00000bb8: SUB 00000bb9: CALL 00000bba: ISZERO 00000bbb: ISZERO 00000bbc: PUSH2 0x0bc4 00000bbf: JUMPI 00000bc0: PUSH1 0x00 00000bc2: DUP1 00000bc3: REVERT 00000bc4: JUMPDEST 00000bc5: POP 00000bc6: POP 00000bc7: POP 00000bc8: PUSH1 0x40 00000bca: MLOAD 00000bcb: DUP1 00000bcc: MLOAD 00000bcd: SWAP1 00000bce: POP 00000bcf: ISZERO 00000bd0: ISZERO 00000bd1: PUSH2 0x0bd9 00000bd4: JUMPI 00000bd5: PUSH1 0x00 00000bd7: DUP1 00000bd8: REVERT 00000bd9: JUMPDEST 00000bda: PUSH1 0x01 00000bdc: PUSH1 0xa0 00000bde: PUSH1 0x02 00000be0: EXP 00000be1: SUB 00000be2: DUP1 00000be3: DUP4 00000be4: AND 00000be5: PUSH1 0x00 00000be7: SWAP1 00000be8: DUP2 00000be9: MSTORE 00000bea: PUSH1 0x02 00000bec: PUSH1 0x20 00000bee: SWAP1 00000bef: DUP2 00000bf0: MSTORE 00000bf1: PUSH1 0x40 00000bf3: DUP1 00000bf4: DUP4 00000bf5: KECCAK256 00000bf6: CALLER 00000bf7: SWAP5 00000bf8: DUP6 00000bf9: AND 00000bfa: DUP5 00000bfb: MSTORE 00000bfc: SWAP1 00000bfd: SWAP2 00000bfe: MSTORE 00000bff: SWAP1 00000c00: DUP2 00000c01: SWAP1 00000c02: KECCAK256 00000c03: SLOAD 00000c04: PUSH32 0xdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d7 00000c25: SWAP3 00000c26: DUP6 00000c27: SWAP3 00000c28: SWAP1 00000c29: SWAP2 00000c2a: DUP6 00000c2b: SWAP2 00000c2c: MLOAD 00000c2d: PUSH1 0x01 00000c2f: PUSH1 0xa0 00000c31: PUSH1 0x02 00000c33: EXP 00000c34: SUB 00000c35: SWAP5 00000c36: DUP6 00000c37: AND 00000c38: DUP2 00000c39: MSTORE 00000c3a: SWAP3 00000c3b: SWAP1 00000c3c: SWAP4 00000c3d: AND 00000c3e: PUSH1 0x20 00000c40: DUP4 00000c41: ADD 00000c42: MSTORE 00000c43: PUSH1 0x40 00000c45: DUP1 00000c46: DUP4 00000c47: ADD 00000c48: SWAP2 00000c49: SWAP1 00000c4a: SWAP2 00000c4b: MSTORE 00000c4c: PUSH1 0x60 00000c4e: DUP3 00000c4f: ADD 00000c50: SWAP3 00000c51: SWAP1 00000c52: SWAP3 00000c53: MSTORE 00000c54: PUSH1 0x80 00000c56: ADD 00000c57: SWAP1 00000c58: MLOAD 00000c59: DUP1 00000c5a: SWAP2 00000c5b: SUB 00000c5c: SWAP1 00000c5d: LOG1 00000c5e: JUMPDEST 00000c5f: POP 00000c60: POP 00000c61: JUMP 00000c62: JUMPDEST 00000c63: PUSH1 0x09 00000c65: PUSH1 0x20 00000c67: MSTORE 00000c68: PUSH1 0x00 00000c6a: SWAP1 00000c6b: DUP2 00000c6c: MSTORE 00000c6d: PUSH1 0x40 00000c6f: SWAP1 00000c70: KECCAK256 00000c71: SLOAD 00000c72: PUSH1 0xff 00000c74: AND 00000c75: DUP2 00000c76: JUMP 00000c77: JUMPDEST 00000c78: PUSH1 0x03 00000c7a: PUSH1 0x20 00000c7c: MSTORE 00000c7d: PUSH1 0x00 00000c7f: SWAP1 00000c80: DUP2 00000c81: MSTORE 00000c82: PUSH1 0x40 00000c84: SWAP1 00000c85: KECCAK256 00000c86: SLOAD 00000c87: PUSH1 0xff 00000c89: AND 00000c8a: DUP2 00000c8b: JUMP 00000c8c: JUMPDEST 00000c8d: PUSH1 0x00 00000c8f: SLOAD 00000c90: PUSH2 0x0ca7 00000c93: SWAP1 00000c94: CALLER 00000c95: PUSH1 0x01 00000c97: PUSH1 0xa0 00000c99: PUSH1 0x02 00000c9b: EXP 00000c9c: SUB 00000c9d: SWAP1 00000c9e: DUP2 00000c9f: AND 00000ca0: SWAP2 00000ca1: AND 00000ca2: EQ 00000ca3: PUSH2 0x0620 00000ca6: JUMP 00000ca7: JUMPDEST 00000ca8: PUSH1 0x01 00000caa: PUSH1 0xa0 00000cac: PUSH1 0x02 00000cae: EXP 00000caf: SUB 00000cb0: DUP3 00000cb1: AND 00000cb2: PUSH1 0x00 00000cb4: SWAP1 00000cb5: DUP2 00000cb6: MSTORE 00000cb7: PUSH1 0x03 00000cb9: PUSH1 0x20 00000cbb: MSTORE 00000cbc: PUSH1 0x40 00000cbe: SWAP1 00000cbf: KECCAK256 00000cc0: DUP1 00000cc1: SLOAD 00000cc2: PUSH1 0xff 00000cc4: NOT 00000cc5: AND 00000cc6: DUP3 00000cc7: ISZERO 00000cc8: ISZERO 00000cc9: OR 00000cca: SWAP1 00000ccb: SSTORE 00000ccc: JUMPDEST 00000ccd: JUMPDEST 00000cce: POP 00000ccf: POP 00000cd0: JUMP 00000cd1: JUMPDEST 00000cd2: PUSH1 0x02 00000cd4: PUSH1 0x20 00000cd6: SWAP1 00000cd7: DUP2 00000cd8: MSTORE 00000cd9: PUSH1 0x00 00000cdb: SWAP3 00000cdc: DUP4 00000cdd: MSTORE 00000cde: PUSH1 0x40 00000ce0: DUP1 00000ce1: DUP5 00000ce2: KECCAK256 00000ce3: SWAP1 00000ce4: SWAP2 00000ce5: MSTORE 00000ce6: SWAP1 00000ce7: DUP3 00000ce8: MSTORE 00000ce9: SWAP1 00000cea: KECCAK256 00000ceb: SLOAD 00000cec: DUP2 00000ced: JUMP 00000cee: JUMPDEST 00000cef: PUSH1 0x06 00000cf1: SLOAD 00000cf2: PUSH1 0x01 00000cf4: PUSH1 0xa0 00000cf6: PUSH1 0x02 00000cf8: EXP 00000cf9: SUB 00000cfa: AND 00000cfb: DUP2 00000cfc: JUMP 00000cfd: JUMPDEST 00000cfe: PUSH1 0x01 00000d00: PUSH1 0x20 00000d02: MSTORE 00000d03: PUSH1 0x00 00000d05: SWAP1 00000d06: DUP2 00000d07: MSTORE 00000d08: PUSH1 0x40 00000d0a: SWAP1 00000d0b: KECCAK256 00000d0c: SLOAD 00000d0d: DUP2 00000d0e: JUMP 00000d0f: JUMPDEST 00000d10: PUSH1 0x00 00000d12: SLOAD 00000d13: PUSH1 0x01 00000d15: PUSH1 0xa0 00000d17: PUSH1 0x02 00000d19: EXP 00000d1a: SUB 00000d1b: AND 00000d1c: JUMPDEST 00000d1d: SWAP1 00000d1e: JUMP 00000d1f: JUMPDEST 00000d20: PUSH1 0x00 00000d22: SLOAD 00000d23: PUSH1 0x01 00000d25: PUSH1 0xa0 00000d27: PUSH1 0x02 00000d29: EXP 00000d2a: SUB 00000d2b: AND 00000d2c: DUP2 00000d2d: JUMP 00000d2e: JUMPDEST 00000d2f: PUSH1 0x00 00000d31: PUSH2 0x0d3c 00000d34: DUP4 00000d35: DUP4 00000d36: GT 00000d37: ISZERO 00000d38: PUSH2 0x0620 00000d3b: JUMP 00000d3c: JUMPDEST 00000d3d: POP 00000d3e: DUP1 00000d3f: DUP3 00000d40: SUB 00000d41: JUMPDEST 00000d42: SWAP3 00000d43: SWAP2 00000d44: POP 00000d45: POP 00000d46: JUMP 00000d47: JUMPDEST 00000d48: PUSH1 0x00 00000d4a: SLOAD 00000d4b: CALLER 00000d4c: PUSH1 0x01 00000d4e: PUSH1 0xa0 00000d50: PUSH1 0x02 00000d52: EXP 00000d53: SUB 00000d54: SWAP1 00000d55: DUP2 00000d56: AND 00000d57: SWAP2 00000d58: AND 00000d59: EQ 00000d5a: DUP1 00000d5b: ISZERO 00000d5c: SWAP1 00000d5d: PUSH2 0x0d7f 00000d60: JUMPI 00000d61: POP 00000d62: PUSH1 0x01 00000d64: PUSH1 0xa0 00000d66: PUSH1 0x02 00000d68: EXP 00000d69: SUB 00000d6a: CALLER 00000d6b: AND 00000d6c: PUSH1 0x00 00000d6e: SWAP1 00000d6f: DUP2 00000d70: MSTORE 00000d71: PUSH1 0x03 00000d73: PUSH1 0x20 00000d75: MSTORE 00000d76: PUSH1 0x40 00000d78: SWAP1 00000d79: KECCAK256 00000d7a: SLOAD 00000d7b: PUSH1 0xff 00000d7d: AND 00000d7e: ISZERO 00000d7f: JUMPDEST 00000d80: ISZERO 00000d81: PUSH2 0x0d89 00000d84: JUMPI 00000d85: PUSH1 0x00 00000d87: DUP1 00000d88: REVERT 00000d89: JUMPDEST 00000d8a: PUSH1 0x01 00000d8c: PUSH1 0xa0 00000d8e: PUSH1 0x02 00000d90: EXP 00000d91: SUB 00000d92: DUP3 00000d93: AND 00000d94: PUSH1 0x00 00000d96: SWAP1 00000d97: DUP2 00000d98: MSTORE 00000d99: PUSH1 0x01 00000d9b: PUSH1 0x20 00000d9d: MSTORE 00000d9e: PUSH1 0x40 00000da0: SWAP1 00000da1: KECCAK256 00000da2: SLOAD 00000da3: DUP2 00000da4: LT 00000da5: ISZERO 00000da6: PUSH2 0x0dae 00000da9: JUMPI 00000daa: PUSH1 0x00 00000dac: DUP1 00000dad: REVERT 00000dae: JUMPDEST 00000daf: PUSH1 0x01 00000db1: PUSH1 0xa0 00000db3: PUSH1 0x02 00000db5: EXP 00000db6: SUB 00000db7: DUP3 00000db8: AND 00000db9: PUSH1 0x00 00000dbb: SWAP1 00000dbc: DUP2 00000dbd: MSTORE 00000dbe: PUSH1 0x01 00000dc0: PUSH1 0x20 00000dc2: MSTORE 00000dc3: PUSH1 0x40 00000dc5: SWAP1 00000dc6: KECCAK256 00000dc7: DUP2 00000dc8: SWAP1 00000dc9: SSTORE 00000dca: JUMPDEST 00000dcb: JUMPDEST 00000dcc: POP 00000dcd: POP 00000dce: JUMP 00000dcf: JUMPDEST 00000dd0: PUSH1 0x00 00000dd2: DUP3 00000dd3: DUP3 00000dd4: MUL 00000dd5: PUSH2 0x0df3 00000dd8: DUP5 00000dd9: ISZERO 00000dda: DUP1 00000ddb: PUSH2 0x0dee 00000dde: JUMPI 00000ddf: POP 00000de0: DUP4 00000de1: DUP6 00000de2: DUP4 00000de3: DUP2 00000de4: ISZERO 00000de5: ISZERO 00000de6: PUSH2 0x0deb 00000de9: JUMPI 00000dea: INVALID 00000deb: JUMPDEST 00000dec: DIV 00000ded: EQ 00000dee: JUMPDEST 00000def: PUSH2 0x0620 00000df2: JUMP 00000df3: JUMPDEST 00000df4: DUP1 00000df5: SWAP2 00000df6: POP 00000df7: JUMPDEST 00000df8: POP 00000df9: SWAP3 00000dfa: SWAP2 00000dfb: POP 00000dfc: POP 00000dfd: JUMP 00000dfe: JUMPDEST 00000dff: CALLER 00000e00: PUSH1 0x01 00000e02: PUSH1 0xa0 00000e04: PUSH1 0x02 00000e06: EXP 00000e07: SUB 00000e08: AND 00000e09: PUSH1 0x00 00000e0b: SWAP1 00000e0c: DUP2 00000e0d: MSTORE 00000e0e: PUSH32 0xac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b 00000e2f: PUSH1 0x20 00000e31: MSTORE 00000e32: PUSH1 0x40 00000e34: SWAP1 00000e35: KECCAK256 00000e36: SLOAD 00000e37: PUSH2 0x0e40 00000e3a: SWAP1 00000e3b: CALLVALUE 00000e3c: PUSH2 0x0f61 00000e3f: JUMP 00000e40: JUMPDEST 00000e41: CALLER 00000e42: PUSH1 0x01 00000e44: PUSH1 0xa0 00000e46: PUSH1 0x02 00000e48: EXP 00000e49: SUB 00000e4a: DUP2 00000e4b: AND 00000e4c: PUSH1 0x00 00000e4e: DUP2 00000e4f: DUP2 00000e50: MSTORE 00000e51: PUSH32 0xac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b 00000e72: PUSH1 0x20 00000e74: DUP2 00000e75: DUP2 00000e76: MSTORE 00000e77: PUSH1 0x40 00000e79: DUP1 00000e7a: DUP5 00000e7b: KECCAK256 00000e7c: SWAP7 00000e7d: DUP8 00000e7e: SSTORE 00000e7f: PUSH1 0x04 00000e81: DUP3 00000e82: MSTORE 00000e83: DUP1 00000e84: DUP5 00000e85: KECCAK256 00000e86: NUMBER 00000e87: SWAP1 00000e88: SSTORE 00000e89: SWAP4 00000e8a: DUP4 00000e8b: MSTORE 00000e8c: MSTORE 00000e8d: SWAP3 00000e8e: SLOAD 00000e8f: PUSH32 0xdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d7 00000eb0: SWAP4 00000eb1: SWAP3 00000eb2: SWAP2 00000eb3: CALLVALUE 00000eb4: SWAP2 00000eb5: SWAP1 00000eb6: MLOAD 00000eb7: PUSH1 0x01 00000eb9: PUSH1 0xa0 00000ebb: PUSH1 0x02 00000ebd: EXP 00000ebe: SUB 00000ebf: SWAP5 00000ec0: DUP6 00000ec1: AND 00000ec2: DUP2 00000ec3: MSTORE 00000ec4: SWAP3 00000ec5: SWAP1 00000ec6: SWAP4 00000ec7: AND 00000ec8: PUSH1 0x20 00000eca: DUP4 00000ecb: ADD 00000ecc: MSTORE 00000ecd: PUSH1 0x40 00000ecf: DUP1 00000ed0: DUP4 00000ed1: ADD 00000ed2: SWAP2 00000ed3: SWAP1 00000ed4: SWAP2 00000ed5: MSTORE 00000ed6: PUSH1 0x60 00000ed8: DUP3 00000ed9: ADD 00000eda: SWAP3 00000edb: SWAP1 00000edc: SWAP3 00000edd: MSTORE 00000ede: PUSH1 0x80 00000ee0: ADD 00000ee1: SWAP1 00000ee2: MLOAD 00000ee3: DUP1 00000ee4: SWAP2 00000ee5: SUB 00000ee6: SWAP1 00000ee7: LOG1 00000ee8: JUMPDEST 00000ee9: JUMP 00000eea: JUMPDEST 00000eeb: PUSH1 0x08 00000eed: PUSH1 0x20 00000eef: MSTORE 00000ef0: PUSH1 0x00 00000ef2: SWAP1 00000ef3: DUP2 00000ef4: MSTORE 00000ef5: PUSH1 0x40 00000ef7: SWAP1 00000ef8: KECCAK256 00000ef9: SLOAD 00000efa: PUSH1 0xff 00000efc: AND 00000efd: DUP2 00000efe: JUMP 00000eff: JUMPDEST 00000f00: PUSH1 0x00 00000f02: DUP1 00000f03: SLOAD 00000f04: CALLER 00000f05: PUSH1 0x01 00000f07: PUSH1 0xa0 00000f09: PUSH1 0x02 00000f0b: EXP 00000f0c: SUB 00000f0d: SWAP1 00000f0e: DUP2 00000f0f: AND 00000f10: SWAP2 00000f11: AND 00000f12: EQ 00000f13: DUP1 00000f14: ISZERO 00000f15: SWAP1 00000f16: PUSH2 0x0f38 00000f19: JUMPI 00000f1a: POP 00000f1b: PUSH1 0x01 00000f1d: PUSH1 0xa0 00000f1f: PUSH1 0x02 00000f21: EXP 00000f22: SUB 00000f23: CALLER 00000f24: AND 00000f25: PUSH1 0x00 00000f27: SWAP1 00000f28: DUP2 00000f29: MSTORE 00000f2a: PUSH1 0x03 00000f2c: PUSH1 0x20 00000f2e: MSTORE 00000f2f: PUSH1 0x40 00000f31: SWAP1 00000f32: KECCAK256 00000f33: SLOAD 00000f34: PUSH1 0xff 00000f36: AND 00000f37: ISZERO 00000f38: JUMPDEST 00000f39: ISZERO 00000f3a: PUSH2 0x0f42 00000f3d: JUMPI 00000f3e: PUSH1 0x00 00000f40: DUP1 00000f41: REVERT 00000f42: JUMPDEST 00000f43: PUSH3 0x0f4240 00000f47: DUP3 00000f48: GT 00000f49: ISZERO 00000f4a: PUSH2 0x0f52 00000f4d: JUMPI 00000f4e: PUSH1 0x00 00000f50: DUP1 00000f51: REVERT 00000f52: JUMPDEST 00000f53: POP 00000f54: PUSH1 0x07 00000f56: DUP2 00000f57: SWAP1 00000f58: SSTORE 00000f59: PUSH1 0x01 00000f5b: JUMPDEST 00000f5c: JUMPDEST 00000f5d: SWAP2 00000f5e: SWAP1 00000f5f: POP 00000f60: JUMP 00000f61: JUMPDEST 00000f62: PUSH1 0x00 00000f64: DUP3 00000f65: DUP3 00000f66: ADD 00000f67: PUSH2 0x0df3 00000f6a: DUP5 00000f6b: DUP3 00000f6c: LT 00000f6d: DUP1 00000f6e: ISZERO 00000f6f: SWAP1 00000f70: PUSH2 0x0dee 00000f73: JUMPI 00000f74: POP 00000f75: DUP4 00000f76: DUP3 00000f77: LT 00000f78: ISZERO 00000f79: JUMPDEST 00000f7a: PUSH2 0x0620 00000f7d: JUMP 00000f7e: JUMPDEST 00000f7f: DUP1 00000f80: SWAP2 00000f81: POP 00000f82: JUMPDEST 00000f83: POP 00000f84: SWAP3 00000f85: SWAP2 00000f86: POP 00000f87: POP 00000f88: JUMP 00000f89: JUMPDEST 00000f8a: PUSH1 0x00 00000f8c: DUP1 00000f8d: SLOAD 00000f8e: DUP2 00000f8f: SWAP1 00000f90: DUP2 00000f91: SWAP1 00000f92: CALLER 00000f93: PUSH1 0x01 00000f95: PUSH1 0xa0 00000f97: PUSH1 0x02 00000f99: EXP 00000f9a: SUB 00000f9b: SWAP1 00000f9c: DUP2 00000f9d: AND 00000f9e: SWAP2 00000f9f: AND 00000fa0: EQ 00000fa1: DUP1 00000fa2: ISZERO 00000fa3: SWAP1 00000fa4: PUSH2 0x0fc6 00000fa7: JUMPI 00000fa8: POP 00000fa9: PUSH1 0x01 00000fab: PUSH1 0xa0 00000fad: PUSH1 0x02 00000faf: EXP 00000fb0: SUB 00000fb1: CALLER 00000fb2: AND 00000fb3: PUSH1 0x00 00000fb5: SWAP1 00000fb6: DUP2 00000fb7: MSTORE 00000fb8: PUSH1 0x03 00000fba: PUSH1 0x20 00000fbc: MSTORE 00000fbd: PUSH1 0x40 00000fbf: SWAP1 00000fc0: KECCAK256 00000fc1: SLOAD 00000fc2: PUSH1 0xff 00000fc4: AND 00000fc5: ISZERO 00000fc6: JUMPDEST 00000fc7: ISZERO 00000fc8: PUSH2 0x0fd0 00000fcb: JUMPI 00000fcc: PUSH1 0x00 00000fce: DUP1 00000fcf: REVERT 00000fd0: JUMPDEST 00000fd1: DUP7 00000fd2: PUSH1 0x03 00000fd4: JUMPDEST 00000fd5: PUSH1 0x20 00000fd7: MUL 00000fd8: ADD 00000fd9: MLOAD 00000fda: PUSH1 0x01 00000fdc: PUSH1 0x00 00000fde: DUP9 00000fdf: PUSH1 0x02 00000fe1: JUMPDEST 00000fe2: PUSH1 0x20 00000fe4: MUL 00000fe5: ADD 00000fe6: MLOAD 00000fe7: PUSH1 0x01 00000fe9: PUSH1 0xa0 00000feb: PUSH1 0x02 00000fed: EXP 00000fee: SUB 00000fef: AND 00000ff0: PUSH1 0x01 00000ff2: PUSH1 0xa0 00000ff4: PUSH1 0x02 00000ff6: EXP 00000ff7: SUB 00000ff8: AND 00000ff9: DUP2 00000ffa: MSTORE 00000ffb: PUSH1 0x20 00000ffd: ADD 00000ffe: SWAP1 00000fff: DUP2 00001000: MSTORE 00001001: PUSH1 0x20 00001003: ADD 00001004: PUSH1 0x00 00001006: KECCAK256 00001007: SLOAD 00001008: GT 00001009: ISZERO 0000100a: PUSH2 0x1012 0000100d: JUMPI 0000100e: PUSH1 0x00 00001010: DUP1 00001011: REVERT 00001012: JUMPDEST 00001013: ADDRESS 00001014: DUP7 00001015: PUSH1 0x00 00001017: JUMPDEST 00001018: PUSH1 0x20 0000101a: MUL 0000101b: ADD 0000101c: MLOAD 0000101d: DUP9 0000101e: PUSH1 0x00 00001020: JUMPDEST 00001021: PUSH1 0x20 00001023: MUL 00001024: ADD 00001025: MLOAD 00001026: DUP9 00001027: PUSH1 0x01 00001029: JUMPDEST 0000102a: PUSH1 0x20 0000102c: MUL 0000102d: ADD 0000102e: MLOAD 0000102f: DUP11 00001030: PUSH1 0x01 00001032: JUMPDEST 00001033: PUSH1 0x20 00001035: MUL 00001036: ADD 00001037: MLOAD 00001038: DUP12 00001039: PUSH1 0x02 0000103b: JUMPDEST 0000103c: PUSH1 0x20 0000103e: MUL 0000103f: ADD 00001040: MLOAD 00001041: DUP13 00001042: PUSH1 0x03 00001044: JUMPDEST 00001045: PUSH1 0x20 00001047: MUL 00001048: ADD 00001049: MLOAD 0000104a: DUP13 0000104b: PUSH1 0x02 0000104d: JUMPDEST 0000104e: PUSH1 0x20 00001050: MUL 00001051: ADD 00001052: MLOAD 00001053: PUSH1 0x40 00001055: MLOAD 00001056: PUSH13 0x01000000000000000000000000 00001064: PUSH1 0x01 00001066: PUSH1 0xa0 00001068: PUSH1 0x02 0000106a: EXP 0000106b: SUB 0000106c: SWAP10 0000106d: DUP11 0000106e: AND 0000106f: DUP2 00001070: MUL 00001071: DUP3 00001072: MSTORE 00001073: SWAP8 00001074: DUP10 00001075: AND 00001076: DUP9 00001077: MUL 00001078: PUSH1 0x14 0000107a: DUP3 0000107b: ADD 0000107c: MSTORE 0000107d: PUSH1 0x28 0000107f: DUP2 00001080: ADD 00001081: SWAP7 00001082: SWAP1 00001083: SWAP7 00001084: MSTORE 00001085: SWAP4 00001086: DUP8 00001087: AND 00001088: DUP7 00001089: MUL 0000108a: PUSH1 0x48 0000108c: DUP7 0000108d: ADD 0000108e: MSTORE 0000108f: PUSH1 0x5c 00001091: DUP6 00001092: ADD 00001093: SWAP3 00001094: SWAP1 00001095: SWAP3 00001096: MSTORE 00001097: PUSH1 0x7c 00001099: DUP5 0000109a: ADD 0000109b: MSTORE 0000109c: PUSH1 0x9c 0000109e: DUP4 0000109f: ADD 000010a0: MSTORE 000010a1: SWAP1 000010a2: SWAP3 000010a3: AND 000010a4: MUL 000010a5: PUSH1 0xbc 000010a7: DUP3 000010a8: ADD 000010a9: MSTORE 000010aa: PUSH1 0xd0 000010ac: ADD 000010ad: PUSH1 0x40 000010af: MLOAD 000010b0: SWAP1 000010b1: DUP2 000010b2: SWAP1 000010b3: SUB 000010b4: SWAP1 000010b5: KECCAK256 000010b6: SWAP2 000010b7: POP 000010b8: DUP6 000010b9: PUSH1 0x02 000010bb: JUMPDEST 000010bc: PUSH1 0x20 000010be: MUL 000010bf: ADD 000010c0: MLOAD 000010c1: PUSH1 0x01 000010c3: PUSH1 0xa0 000010c5: PUSH1 0x02 000010c7: EXP 000010c8: SUB 000010c9: AND 000010ca: PUSH1 0x01 000010cc: DUP4 000010cd: PUSH1 0x40 000010cf: MLOAD 000010d0: PUSH32 0x19457468657265756d205369676e6564204d6573736167653a0a333200000000 000010f1: DUP2 000010f2: MSTORE 000010f3: PUSH1 0x1c 000010f5: DUP2 000010f6: ADD 000010f7: SWAP2 000010f8: SWAP1 000010f9: SWAP2 000010fa: MSTORE 000010fb: PUSH1 0x3c 000010fd: ADD 000010fe: PUSH1 0x40 00001100: MLOAD 00001101: SWAP1 00001102: DUP2 00001103: SWAP1 00001104: SUB 00001105: SWAP1 00001106: KECCAK256 00001107: DUP8 00001108: PUSH1 0x00 0000110a: JUMPDEST 0000110b: PUSH1 0x20 0000110d: MUL 0000110e: ADD 0000110f: MLOAD 00001110: DUP8 00001111: PUSH1 0x00 00001113: JUMPDEST 00001114: PUSH1 0x20 00001116: MUL 00001117: ADD 00001118: MLOAD 00001119: DUP9 0000111a: PUSH1 0x01 0000111c: JUMPDEST 0000111d: PUSH1 0x20 0000111f: MUL 00001120: ADD 00001121: MLOAD 00001122: PUSH1 0x40 00001124: MLOAD 00001125: PUSH1 0x00 00001127: DUP2 00001128: MSTORE 00001129: PUSH1 0x20 0000112b: ADD 0000112c: PUSH1 0x40 0000112e: MSTORE 0000112f: PUSH1 0x00 00001131: PUSH1 0x40 00001133: MLOAD 00001134: PUSH1 0x20 00001136: ADD 00001137: MSTORE 00001138: PUSH1 0x40 0000113a: MLOAD 0000113b: SWAP4 0000113c: DUP5 0000113d: MSTORE 0000113e: PUSH1 0xff 00001140: SWAP1 00001141: SWAP3 00001142: AND 00001143: PUSH1 0x20 00001145: DUP1 00001146: DUP6 00001147: ADD 00001148: SWAP2 00001149: SWAP1 0000114a: SWAP2 0000114b: MSTORE 0000114c: PUSH1 0x40 0000114e: DUP1 0000114f: DUP6 00001150: ADD 00001151: SWAP3 00001152: SWAP1 00001153: SWAP3 00001154: MSTORE 00001155: PUSH1 0x60 00001157: DUP5 00001158: ADD 00001159: SWAP3 0000115a: SWAP1 0000115b: SWAP3 0000115c: MSTORE 0000115d: PUSH1 0x80 0000115f: SWAP1 00001160: SWAP3 00001161: ADD 00001162: SWAP2 00001163: MLOAD 00001164: PUSH1 0x20 00001166: DUP2 00001167: SUB 00001168: SWAP1 00001169: DUP1 0000116a: DUP5 0000116b: SUB 0000116c: SWAP1 0000116d: PUSH1 0x00 0000116f: DUP7 00001170: PUSH2 0x646e 00001173: GAS 00001174: SUB 00001175: CALL 00001176: ISZERO 00001177: ISZERO 00001178: PUSH2 0x1180 0000117b: JUMPI 0000117c: PUSH1 0x00 0000117e: DUP1 0000117f: REVERT 00001180: JUMPDEST 00001181: POP 00001182: POP 00001183: PUSH1 0x20 00001185: PUSH1 0x40 00001187: MLOAD 00001188: SUB 00001189: MLOAD 0000118a: PUSH1 0x01 0000118c: PUSH1 0xa0 0000118e: PUSH1 0x02 00001190: EXP 00001191: SUB 00001192: AND 00001193: EQ 00001194: PUSH2 0x119c 00001197: JUMPI 00001198: PUSH1 0x00 0000119a: DUP1 0000119b: REVERT 0000119c: JUMPDEST 0000119d: DUP2 0000119e: DUP8 0000119f: PUSH1 0x04 000011a1: JUMPDEST 000011a2: PUSH1 0x20 000011a4: MUL 000011a5: ADD 000011a6: MLOAD 000011a7: DUP8 000011a8: PUSH1 0x03 000011aa: JUMPDEST 000011ab: PUSH1 0x20 000011ad: MUL 000011ae: ADD 000011af: MLOAD 000011b0: DUP10 000011b1: PUSH1 0x05 000011b3: JUMPDEST 000011b4: PUSH1 0x20 000011b6: MUL 000011b7: ADD 000011b8: MLOAD 000011b9: PUSH1 0x40 000011bb: MLOAD 000011bc: SWAP4 000011bd: DUP5 000011be: MSTORE 000011bf: PUSH1 0x20 000011c1: DUP5 000011c2: ADD 000011c3: SWAP3 000011c4: SWAP1 000011c5: SWAP3 000011c6: MSTORE 000011c7: PUSH1 0x01 000011c9: PUSH1 0xa0 000011cb: PUSH1 0x02 000011cd: EXP 000011ce: SUB 000011cf: AND 000011d0: PUSH13 0x01000000000000000000000000 000011de: MUL 000011df: PUSH1 0x40 000011e1: DUP1 000011e2: DUP5 000011e3: ADD 000011e4: SWAP2 000011e5: SWAP1 000011e6: SWAP2 000011e7: MSTORE 000011e8: PUSH1 0x54 000011ea: DUP4 000011eb: ADD 000011ec: SWAP2 000011ed: SWAP1 000011ee: SWAP2 000011ef: MSTORE 000011f0: PUSH1 0x74 000011f2: SWAP1 000011f3: SWAP2 000011f4: ADD 000011f5: SWAP1 000011f6: MLOAD 000011f7: SWAP1 000011f8: DUP2 000011f9: SWAP1 000011fa: SUB 000011fb: SWAP1 000011fc: KECCAK256 000011fd: SWAP1 000011fe: POP 000011ff: DUP6 00001200: PUSH1 0x03 00001202: JUMPDEST 00001203: PUSH1 0x20 00001205: MUL 00001206: ADD 00001207: MLOAD 00001208: PUSH1 0x01 0000120a: PUSH1 0xa0 0000120c: PUSH1 0x02 0000120e: EXP 0000120f: SUB 00001210: AND 00001211: PUSH1 0x01 00001213: DUP3 00001214: PUSH1 0x40 00001216: MLOAD 00001217: PUSH32 0x19457468657265756d205369676e6564204d6573736167653a0a333200000000 00001238: DUP2 00001239: MSTORE 0000123a: PUSH1 0x1c 0000123c: DUP2 0000123d: ADD 0000123e: SWAP2 0000123f: SWAP1 00001240: SWAP2 00001241: MSTORE 00001242: PUSH1 0x3c 00001244: ADD 00001245: PUSH1 0x40 00001247: MLOAD 00001248: SWAP1 00001249: DUP2 0000124a: SWAP1 0000124b: SUB 0000124c: SWAP1 0000124d: KECCAK256 0000124e: DUP8 0000124f: PUSH1 0x01 00001251: JUMPDEST 00001252: PUSH1 0x20 00001254: MUL 00001255: ADD 00001256: MLOAD 00001257: DUP8 00001258: PUSH1 0x02 0000125a: JUMPDEST 0000125b: PUSH1 0x20 0000125d: MUL 0000125e: ADD 0000125f: MLOAD 00001260: DUP9 00001261: PUSH1 0x03 00001263: JUMPDEST 00001264: PUSH1 0x20 00001266: MUL 00001267: ADD 00001268: MLOAD 00001269: PUSH1 0x40 0000126b: MLOAD 0000126c: PUSH1 0x00 0000126e: DUP2 0000126f: MSTORE 00001270: PUSH1 0x20 00001272: ADD 00001273: PUSH1 0x40 00001275: MSTORE 00001276: PUSH1 0x00 00001278: PUSH1 0x40 0000127a: MLOAD 0000127b: PUSH1 0x20 0000127d: ADD 0000127e: MSTORE 0000127f: PUSH1 0x40 00001281: MLOAD 00001282: SWAP4 00001283: DUP5 00001284: MSTORE 00001285: PUSH1 0xff 00001287: SWAP1 00001288: SWAP3 00001289: AND 0000128a: PUSH1 0x20 0000128c: DUP1 0000128d: DUP6 0000128e: ADD 0000128f: SWAP2 00001290: SWAP1 00001291: SWAP2 00001292: MSTORE 00001293: PUSH1 0x40 00001295: DUP1 00001296: DUP6 00001297: ADD 00001298: SWAP3 00001299: SWAP1 0000129a: SWAP3 0000129b: MSTORE 0000129c: PUSH1 0x60 0000129e: DUP5 0000129f: ADD 000012a0: SWAP3 000012a1: SWAP1 000012a2: SWAP3 000012a3: MSTORE 000012a4: PUSH1 0x80 000012a6: SWAP1 000012a7: SWAP3 000012a8: ADD 000012a9: SWAP2 000012aa: MLOAD 000012ab: PUSH1 0x20 000012ad: DUP2 000012ae: SUB 000012af: SWAP1 000012b0: DUP1 000012b1: DUP5 000012b2: SUB 000012b3: SWAP1 000012b4: PUSH1 0x00 000012b6: DUP7 000012b7: PUSH2 0x646e 000012ba: GAS 000012bb: SUB 000012bc: CALL 000012bd: ISZERO 000012be: ISZERO 000012bf: PUSH2 0x12c7 000012c2: JUMPI 000012c3: PUSH1 0x00 000012c5: DUP1 000012c6: REVERT 000012c7: JUMPDEST 000012c8: POP 000012c9: POP 000012ca: PUSH1 0x20 000012cc: PUSH1 0x40 000012ce: MLOAD 000012cf: SUB 000012d0: MLOAD 000012d1: PUSH1 0x01 000012d3: PUSH1 0xa0 000012d5: PUSH1 0x02 000012d7: EXP 000012d8: SUB 000012d9: AND 000012da: EQ 000012db: PUSH2 0x12e3 000012de: JUMPI 000012df: PUSH1 0x00 000012e1: DUP1 000012e2: REVERT 000012e3: JUMPDEST 000012e4: PUSH1 0x00 000012e6: DUP2 000012e7: DUP2 000012e8: MSTORE 000012e9: PUSH1 0x08 000012eb: PUSH1 0x20 000012ed: MSTORE 000012ee: PUSH1 0x40 000012f0: SWAP1 000012f1: KECCAK256 000012f2: SLOAD 000012f3: PUSH1 0xff 000012f5: AND 000012f6: ISZERO 000012f7: PUSH2 0x12ff 000012fa: JUMPI 000012fb: PUSH1 0x00 000012fd: DUP1 000012fe: REVERT 000012ff: JUMPDEST 00001300: PUSH1 0x00 00001302: DUP2 00001303: DUP2 00001304: MSTORE 00001305: PUSH1 0x08 00001307: PUSH1 0x20 00001309: MSTORE 0000130a: PUSH1 0x40 0000130c: SWAP1 0000130d: KECCAK256 0000130e: DUP1 0000130f: SLOAD 00001310: PUSH1 0xff 00001312: NOT 00001313: AND 00001314: PUSH1 0x01 00001316: OR 00001317: SWAP1 00001318: SSTORE 00001319: PUSH8 0x016345785d8a0000 00001322: DUP8 00001323: PUSH1 0x06 00001325: JUMPDEST 00001326: PUSH1 0x20 00001328: MUL 00001329: ADD 0000132a: MLOAD 0000132b: GT 0000132c: ISZERO 0000132d: PUSH2 0x1343 00001330: JUMPI 00001331: PUSH8 0x016345785d8a0000 0000133a: DUP8 0000133b: PUSH1 0x06 0000133d: JUMPDEST 0000133e: PUSH1 0x20 00001340: MUL 00001341: ADD 00001342: MSTORE 00001343: JUMPDEST 00001344: PUSH8 0x016345785d8a0000 0000134d: DUP8 0000134e: PUSH1 0x07 00001350: JUMPDEST 00001351: PUSH1 0x20 00001353: MUL 00001354: ADD 00001355: MLOAD 00001356: GT 00001357: ISZERO 00001358: PUSH2 0x136e 0000135b: JUMPI 0000135c: PUSH8 0x016345785d8a0000 00001365: DUP8 00001366: PUSH1 0x07 00001368: JUMPDEST 00001369: PUSH1 0x20 0000136b: MUL 0000136c: ADD 0000136d: MSTORE 0000136e: JUMPDEST 0000136f: DUP7 00001370: PUSH1 0x00 00001372: JUMPDEST 00001373: PUSH1 0x20 00001375: MUL 00001376: ADD 00001377: MLOAD 00001378: PUSH1 0x00 0000137a: DUP4 0000137b: DUP2 0000137c: MSTORE 0000137d: PUSH1 0x05 0000137f: PUSH1 0x20 00001381: MSTORE 00001382: PUSH1 0x40 00001384: SWAP1 00001385: KECCAK256 00001386: SLOAD 00001387: PUSH2 0x1398 0000138a: SWAP1 0000138b: DUP10 0000138c: PUSH1 0x04 0000138e: JUMPDEST 0000138f: PUSH1 0x20 00001391: MUL 00001392: ADD 00001393: MLOAD 00001394: PUSH2 0x0f61 00001397: JUMP 00001398: JUMPDEST 00001399: GT 0000139a: ISZERO 0000139b: PUSH2 0x13a3 0000139e: JUMPI 0000139f: PUSH1 0x00 000013a1: DUP1 000013a2: REVERT 000013a3: JUMPDEST 000013a4: DUP7 000013a5: PUSH1 0x04 000013a7: JUMPDEST 000013a8: PUSH1 0x20 000013aa: MUL 000013ab: ADD 000013ac: MLOAD 000013ad: PUSH1 0x02 000013af: PUSH1 0x00 000013b1: DUP9 000013b2: DUP2 000013b3: JUMPDEST 000013b4: PUSH1 0x20 000013b6: MUL 000013b7: ADD 000013b8: MLOAD 000013b9: PUSH1 0x01 000013bb: PUSH1 0xa0 000013bd: PUSH1 0x02 000013bf: EXP 000013c0: SUB 000013c1: AND 000013c2: DUP2 000013c3: MSTORE 000013c4: PUSH1 0x20 000013c6: DUP2 000013c7: ADD 000013c8: SWAP2 000013c9: SWAP1 000013ca: SWAP2 000013cb: MSTORE 000013cc: PUSH1 0x40 000013ce: ADD 000013cf: PUSH1 0x00 000013d1: SWAP1 000013d2: DUP2 000013d3: KECCAK256 000013d4: SWAP1 000013d5: DUP9 000013d6: PUSH1 0x03 000013d8: JUMPDEST 000013d9: PUSH1 0x20 000013db: MUL 000013dc: ADD 000013dd: MLOAD 000013de: PUSH1 0x01 000013e0: PUSH1 0xa0 000013e2: PUSH1 0x02 000013e4: EXP 000013e5: SUB 000013e6: AND 000013e7: PUSH1 0x01 000013e9: PUSH1 0xa0 000013eb: PUSH1 0x02 000013ed: EXP 000013ee: SUB 000013ef: AND 000013f0: DUP2 000013f1: MSTORE 000013f2: PUSH1 0x20 000013f4: ADD 000013f5: SWAP1 000013f6: DUP2 000013f7: MSTORE 000013f8: PUSH1 0x20 000013fa: ADD 000013fb: PUSH1 0x00 000013fd: KECCAK256 000013fe: SLOAD 000013ff: LT 00001400: ISZERO 00001401: PUSH2 0x1409 00001404: JUMPI 00001405: PUSH1 0x00 00001407: DUP1 00001408: REVERT 00001409: JUMPDEST 0000140a: DUP7 0000140b: PUSH1 0x00 0000140d: JUMPDEST 0000140e: PUSH1 0x20 00001410: MUL 00001411: ADD 00001412: MLOAD 00001413: PUSH2 0x142c 00001416: DUP9 00001417: PUSH1 0x01 00001419: JUMPDEST 0000141a: PUSH1 0x20 0000141c: MUL 0000141d: ADD 0000141e: MLOAD 0000141f: DUP10 00001420: PUSH1 0x04 00001422: JUMPDEST 00001423: PUSH1 0x20 00001425: MUL 00001426: ADD 00001427: MLOAD 00001428: PUSH2 0x0dcf 0000142b: JUMP 0000142c: JUMPDEST 0000142d: DUP2 0000142e: ISZERO 0000142f: ISZERO 00001430: PUSH2 0x1435 00001433: JUMPI 00001434: INVALID 00001435: JUMPDEST 00001436: DIV 00001437: PUSH1 0x02 00001439: PUSH1 0x00 0000143b: DUP9 0000143c: PUSH1 0x01 0000143e: JUMPDEST 0000143f: PUSH1 0x20 00001441: MUL 00001442: ADD 00001443: MLOAD 00001444: PUSH1 0x01 00001446: PUSH1 0xa0 00001448: PUSH1 0x02 0000144a: EXP 0000144b: SUB 0000144c: AND 0000144d: DUP2 0000144e: MSTORE 0000144f: PUSH1 0x20 00001451: DUP2 00001452: ADD 00001453: SWAP2 00001454: SWAP1 00001455: SWAP2 00001456: MSTORE 00001457: PUSH1 0x40 00001459: ADD 0000145a: PUSH1 0x00 0000145c: SWAP1 0000145d: DUP2 0000145e: KECCAK256 0000145f: SWAP1 00001460: DUP9 00001461: PUSH1 0x02 00001463: JUMPDEST 00001464: PUSH1 0x20 00001466: MUL 00001467: ADD 00001468: MLOAD 00001469: PUSH1 0x01 0000146b: PUSH1 0xa0 0000146d: PUSH1 0x02 0000146f: EXP 00001470: SUB 00001471: AND 00001472: PUSH1 0x01 00001474: PUSH1 0xa0 00001476: PUSH1 0x02 00001478: EXP 00001479: SUB 0000147a: AND 0000147b: DUP2 0000147c: MSTORE 0000147d: PUSH1 0x20 0000147f: ADD 00001480: SWAP1 00001481: DUP2 00001482: MSTORE 00001483: PUSH1 0x20 00001485: ADD 00001486: PUSH1 0x00 00001488: KECCAK256 00001489: SLOAD 0000148a: LT 0000148b: ISZERO 0000148c: PUSH2 0x1494 0000148f: JUMPI 00001490: PUSH1 0x00 00001492: DUP1 00001493: REVERT 00001494: JUMPDEST 00001495: PUSH2 0x14f0 00001498: PUSH1 0x02 0000149a: PUSH1 0x00 0000149c: DUP9 0000149d: DUP2 0000149e: JUMPDEST 0000149f: PUSH1 0x20 000014a1: MUL 000014a2: ADD 000014a3: MLOAD 000014a4: PUSH1 0x01 000014a6: PUSH1 0xa0 000014a8: PUSH1 0x02 000014aa: EXP 000014ab: SUB 000014ac: AND 000014ad: DUP2 000014ae: MSTORE 000014af: PUSH1 0x20 000014b1: DUP2 000014b2: ADD 000014b3: SWAP2 000014b4: SWAP1 000014b5: SWAP2 000014b6: MSTORE 000014b7: PUSH1 0x40 000014b9: ADD 000014ba: PUSH1 0x00 000014bc: SWAP1 000014bd: DUP2 000014be: KECCAK256 000014bf: SWAP1 000014c0: DUP9 000014c1: PUSH1 0x03 000014c3: JUMPDEST 000014c4: PUSH1 0x20 000014c6: MUL 000014c7: ADD 000014c8: MLOAD 000014c9: PUSH1 0x01 000014cb: PUSH1 0xa0 000014cd: PUSH1 0x02 000014cf: EXP 000014d0: SUB 000014d1: AND 000014d2: DUP2 000014d3: MSTORE 000014d4: PUSH1 0x20 000014d6: DUP2 000014d7: ADD 000014d8: SWAP2 000014d9: SWAP1 000014da: SWAP2 000014db: MSTORE 000014dc: PUSH1 0x40 000014de: ADD 000014df: PUSH1 0x00 000014e1: KECCAK256 000014e2: SLOAD 000014e3: DUP9 000014e4: PUSH1 0x04 000014e6: JUMPDEST 000014e7: PUSH1 0x20 000014e9: MUL 000014ea: ADD 000014eb: MLOAD 000014ec: PUSH2 0x0d2e 000014ef: JUMP 000014f0: JUMPDEST 000014f1: PUSH1 0x02 000014f3: PUSH1 0x00 000014f5: DUP9 000014f6: DUP2 000014f7: JUMPDEST 000014f8: PUSH1 0x20 000014fa: MUL 000014fb: ADD 000014fc: MLOAD 000014fd: PUSH1 0x01 000014ff: PUSH1 0xa0 00001501: PUSH1 0x02 00001503: EXP 00001504: SUB 00001505: AND 00001506: DUP2 00001507: MSTORE 00001508: PUSH1 0x20 0000150a: DUP2 0000150b: ADD 0000150c: SWAP2 0000150d: SWAP1 0000150e: SWAP2 0000150f: MSTORE 00001510: PUSH1 0x40 00001512: ADD 00001513: PUSH1 0x00 00001515: SWAP1 00001516: DUP2 00001517: KECCAK256 00001518: SWAP1 00001519: DUP9 0000151a: PUSH1 0x03 0000151c: JUMPDEST 0000151d: PUSH1 0x20 0000151f: MUL 00001520: ADD 00001521: MLOAD 00001522: PUSH1 0x01 00001524: PUSH1 0xa0 00001526: PUSH1 0x02 00001528: EXP 00001529: SUB 0000152a: AND 0000152b: DUP2 0000152c: MSTORE 0000152d: PUSH1 0x20 0000152f: DUP2 00001530: ADD 00001531: SWAP2 00001532: SWAP1 00001533: SWAP2 00001534: MSTORE 00001535: PUSH1 0x40 00001537: ADD 00001538: PUSH1 0x00 0000153a: SWAP1 0000153b: DUP2 0000153c: KECCAK256 0000153d: SWAP2 0000153e: SWAP1 0000153f: SWAP2 00001540: SSTORE 00001541: PUSH2 0x15ca 00001544: SWAP1 00001545: PUSH1 0x02 00001547: SWAP1 00001548: DUP9 00001549: DUP2 0000154a: JUMPDEST 0000154b: PUSH1 0x20 0000154d: MUL 0000154e: ADD 0000154f: MLOAD 00001550: PUSH1 0x01 00001552: PUSH1 0xa0 00001554: PUSH1 0x02 00001556: EXP 00001557: SUB 00001558: AND 00001559: DUP2 0000155a: MSTORE 0000155b: PUSH1 0x20 0000155d: DUP2 0000155e: ADD 0000155f: SWAP2 00001560: SWAP1 00001561: SWAP2 00001562: MSTORE 00001563: PUSH1 0x40 00001565: ADD 00001566: PUSH1 0x00 00001568: SWAP1 00001569: DUP2 0000156a: KECCAK256 0000156b: SWAP1 0000156c: DUP9 0000156d: PUSH1 0x02 0000156f: JUMPDEST 00001570: PUSH1 0x20 00001572: MUL 00001573: ADD 00001574: MLOAD 00001575: PUSH1 0x01 00001577: PUSH1 0xa0 00001579: PUSH1 0x02 0000157b: EXP 0000157c: SUB 0000157d: AND 0000157e: DUP2 0000157f: MSTORE 00001580: PUSH1 0x20 00001582: DUP2 00001583: ADD 00001584: SWAP2 00001585: SWAP1 00001586: SWAP2 00001587: MSTORE 00001588: PUSH1 0x40 0000158a: ADD 0000158b: PUSH1 0x00 0000158d: KECCAK256 0000158e: SLOAD 0000158f: PUSH8 0x0de0b6b3a7640000 00001598: PUSH2 0x0916 0000159b: DUP11 0000159c: PUSH1 0x04 0000159e: JUMPDEST 0000159f: PUSH1 0x20 000015a1: MUL 000015a2: ADD 000015a3: MLOAD 000015a4: DUP12 000015a5: PUSH1 0x06 000015a7: JUMPDEST 000015a8: PUSH1 0x20 000015aa: MUL 000015ab: ADD 000015ac: MLOAD 000015ad: PUSH8 0x0de0b6b3a7640000 000015b6: SUB 000015b7: PUSH2 0x0dcf 000015ba: JUMP 000015bb: JUMPDEST 000015bc: DUP2 000015bd: ISZERO 000015be: ISZERO 000015bf: PUSH2 0x091f 000015c2: JUMPI 000015c3: INVALID 000015c4: JUMPDEST 000015c5: DIV 000015c6: PUSH2 0x0f61 000015c9: JUMP 000015ca: JUMPDEST 000015cb: PUSH1 0x02 000015cd: PUSH1 0x00 000015cf: DUP9 000015d0: DUP2 000015d1: JUMPDEST 000015d2: PUSH1 0x20 000015d4: MUL 000015d5: ADD 000015d6: MLOAD 000015d7: PUSH1 0x01 000015d9: PUSH1 0xa0 000015db: PUSH1 0x02 000015dd: EXP 000015de: SUB 000015df: AND 000015e0: DUP2 000015e1: MSTORE 000015e2: PUSH1 0x20 000015e4: DUP2 000015e5: ADD 000015e6: SWAP2 000015e7: SWAP1 000015e8: SWAP2 000015e9: MSTORE 000015ea: PUSH1 0x40 000015ec: ADD 000015ed: PUSH1 0x00 000015ef: SWAP1 000015f0: DUP2 000015f1: KECCAK256 000015f2: SWAP1 000015f3: DUP9 000015f4: PUSH1 0x02 000015f6: JUMPDEST 000015f7: PUSH1 0x20 000015f9: MUL 000015fa: ADD 000015fb: MLOAD 000015fc: PUSH1 0x01 000015fe: PUSH1 0xa0 00001600: PUSH1 0x02 00001602: EXP 00001603: SUB 00001604: AND 00001605: DUP2 00001606: MSTORE 00001607: PUSH1 0x20 00001609: DUP2 0000160a: ADD 0000160b: SWAP2 0000160c: SWAP1 0000160d: SWAP2 0000160e: MSTORE 0000160f: PUSH1 0x40 00001611: ADD 00001612: PUSH1 0x00 00001614: SWAP1 00001615: DUP2 00001616: KECCAK256 00001617: SWAP2 00001618: SWAP1 00001619: SWAP2 0000161a: SSTORE 0000161b: PUSH2 0x168c 0000161e: SWAP1 0000161f: PUSH1 0x02 00001621: SWAP1 00001622: DUP9 00001623: DUP2 00001624: JUMPDEST 00001625: PUSH1 0x20 00001627: MUL 00001628: ADD 00001629: MLOAD 0000162a: PUSH1 0x01 0000162c: PUSH1 0xa0 0000162e: PUSH1 0x02 00001630: EXP 00001631: SUB 00001632: SWAP1 00001633: DUP2 00001634: AND 00001635: DUP3 00001636: MSTORE 00001637: PUSH1 0x20 00001639: DUP1 0000163a: DUP4 0000163b: ADD 0000163c: SWAP4 0000163d: SWAP1 0000163e: SWAP4 0000163f: MSTORE 00001640: PUSH1 0x40 00001642: SWAP2 00001643: DUP3 00001644: ADD 00001645: PUSH1 0x00 00001647: SWAP1 00001648: DUP2 00001649: KECCAK256 0000164a: PUSH1 0x06 0000164c: SLOAD 0000164d: SWAP1 0000164e: SWAP3 0000164f: AND 00001650: DUP2 00001651: MSTORE 00001652: SWAP3 00001653: MSTORE 00001654: SWAP1 00001655: KECCAK256 00001656: SLOAD 00001657: PUSH8 0x0de0b6b3a7640000 00001660: PUSH2 0x0916 00001663: DUP11 00001664: PUSH1 0x04 00001666: JUMPDEST 00001667: PUSH1 0x20 00001669: MUL 0000166a: ADD 0000166b: MLOAD 0000166c: DUP12 0000166d: PUSH1 0x06 0000166f: PUSH2 0x1422 00001672: JUMP 00001673: JUMPDEST 00001674: PUSH1 0x20 00001676: MUL 00001677: ADD 00001678: MLOAD 00001679: PUSH2 0x0dcf 0000167c: JUMP 0000167d: JUMPDEST 0000167e: DUP2 0000167f: ISZERO 00001680: ISZERO 00001681: PUSH2 0x091f 00001684: JUMPI 00001685: INVALID 00001686: JUMPDEST 00001687: DIV 00001688: PUSH2 0x0f61 0000168b: JUMP 0000168c: JUMPDEST 0000168d: PUSH1 0x02 0000168f: PUSH1 0x00 00001691: DUP9 00001692: DUP2 00001693: JUMPDEST 00001694: PUSH1 0x20 00001696: MUL 00001697: ADD 00001698: MLOAD 00001699: PUSH1 0x01 0000169b: PUSH1 0xa0 0000169d: PUSH1 0x02 0000169f: EXP 000016a0: SUB 000016a1: SWAP1 000016a2: DUP2 000016a3: AND 000016a4: DUP3 000016a5: MSTORE 000016a6: PUSH1 0x20 000016a8: DUP1 000016a9: DUP4 000016aa: ADD 000016ab: SWAP4 000016ac: SWAP1 000016ad: SWAP4 000016ae: MSTORE 000016af: PUSH1 0x40 000016b1: SWAP2 000016b2: DUP3 000016b3: ADD 000016b4: PUSH1 0x00 000016b6: SWAP1 000016b7: DUP2 000016b8: KECCAK256 000016b9: PUSH1 0x06 000016bb: SLOAD 000016bc: SWAP1 000016bd: SWAP3 000016be: AND 000016bf: DUP2 000016c0: MSTORE 000016c1: SWAP3 000016c2: MSTORE 000016c3: DUP2 000016c4: KECCAK256 000016c5: SWAP2 000016c6: SWAP1 000016c7: SWAP2 000016c8: SSTORE 000016c9: PUSH2 0x174f 000016cc: SWAP1 000016cd: PUSH1 0x02 000016cf: SWAP1 000016d0: DUP9 000016d1: PUSH1 0x01 000016d3: JUMPDEST 000016d4: PUSH1 0x20 000016d6: MUL 000016d7: ADD 000016d8: MLOAD 000016d9: PUSH1 0x01 000016db: PUSH1 0xa0 000016dd: PUSH1 0x02 000016df: EXP 000016e0: SUB 000016e1: AND 000016e2: DUP2 000016e3: MSTORE 000016e4: PUSH1 0x20 000016e6: DUP2 000016e7: ADD 000016e8: SWAP2 000016e9: SWAP1 000016ea: SWAP2 000016eb: MSTORE 000016ec: PUSH1 0x40 000016ee: ADD 000016ef: PUSH1 0x00 000016f1: SWAP1 000016f2: DUP2 000016f3: KECCAK256 000016f4: SWAP1 000016f5: DUP9 000016f6: PUSH1 0x02 000016f8: JUMPDEST 000016f9: PUSH1 0x20 000016fb: MUL 000016fc: ADD 000016fd: MLOAD 000016fe: PUSH1 0x01 00001700: PUSH1 0xa0 00001702: PUSH1 0x02 00001704: EXP 00001705: SUB 00001706: AND 00001707: DUP2 00001708: MSTORE 00001709: PUSH1 0x20 0000170b: DUP2 0000170c: ADD 0000170d: SWAP2 0000170e: SWAP1 0000170f: SWAP2 00001710: MSTORE 00001711: PUSH1 0x40 00001713: ADD 00001714: PUSH1 0x00 00001716: SWAP1 00001717: DUP2 00001718: KECCAK256 00001719: SLOAD 0000171a: SWAP1 0000171b: DUP10 0000171c: SWAP1 0000171d: JUMPDEST 0000171e: PUSH1 0x20 00001720: MUL 00001721: ADD 00001722: MLOAD 00001723: PUSH2 0x1740 00001726: DUP11 00001727: PUSH1 0x01 00001729: JUMPDEST 0000172a: PUSH1 0x20 0000172c: MUL 0000172d: ADD 0000172e: MLOAD 0000172f: DUP12 00001730: PUSH1 0x04 00001732: PUSH2 0x1422 00001735: JUMP 00001736: JUMPDEST 00001737: PUSH1 0x20 00001739: MUL 0000173a: ADD 0000173b: MLOAD 0000173c: PUSH2 0x0dcf 0000173f: JUMP 00001740: JUMPDEST 00001741: DUP2 00001742: ISZERO 00001743: ISZERO 00001744: PUSH2 0x1749 00001747: JUMPI 00001748: INVALID 00001749: JUMPDEST 0000174a: DIV 0000174b: PUSH2 0x0d2e 0000174e: JUMP 0000174f: JUMPDEST 00001750: PUSH1 0x02 00001752: PUSH1 0x00 00001754: DUP9 00001755: PUSH1 0x01 00001757: JUMPDEST 00001758: PUSH1 0x20 0000175a: MUL 0000175b: ADD 0000175c: MLOAD 0000175d: PUSH1 0x01 0000175f: PUSH1 0xa0 00001761: PUSH1 0x02 00001763: EXP 00001764: SUB 00001765: AND 00001766: DUP2 00001767: MSTORE 00001768: PUSH1 0x20 0000176a: DUP2 0000176b: ADD 0000176c: SWAP2 0000176d: SWAP1 0000176e: SWAP2 0000176f: MSTORE 00001770: PUSH1 0x40 00001772: ADD 00001773: PUSH1 0x00 00001775: SWAP1 00001776: DUP2 00001777: KECCAK256 00001778: SWAP1 00001779: DUP9 0000177a: PUSH1 0x02 0000177c: JUMPDEST 0000177d: PUSH1 0x20 0000177f: MUL 00001780: ADD 00001781: MLOAD 00001782: PUSH1 0x01 00001784: PUSH1 0xa0 00001786: PUSH1 0x02 00001788: EXP 00001789: SUB 0000178a: AND 0000178b: DUP2 0000178c: MSTORE 0000178d: PUSH1 0x20 0000178f: DUP2 00001790: ADD 00001791: SWAP2 00001792: SWAP1 00001793: SWAP2 00001794: MSTORE 00001795: PUSH1 0x40 00001797: ADD 00001798: PUSH1 0x00 0000179a: SWAP1 0000179b: DUP2 0000179c: KECCAK256 0000179d: SWAP2 0000179e: SWAP1 0000179f: SWAP2 000017a0: SSTORE 000017a1: PUSH2 0x185a 000017a4: SWAP1 000017a5: PUSH1 0x02 000017a7: SWAP1 000017a8: DUP9 000017a9: PUSH1 0x01 000017ab: JUMPDEST 000017ac: PUSH1 0x20 000017ae: MUL 000017af: ADD 000017b0: MLOAD 000017b1: PUSH1 0x01 000017b3: PUSH1 0xa0 000017b5: PUSH1 0x02 000017b7: EXP 000017b8: SUB 000017b9: AND 000017ba: DUP2 000017bb: MSTORE 000017bc: PUSH1 0x20 000017be: DUP2 000017bf: ADD 000017c0: SWAP2 000017c1: SWAP1 000017c2: SWAP2 000017c3: MSTORE 000017c4: PUSH1 0x40 000017c6: ADD 000017c7: PUSH1 0x00 000017c9: SWAP1 000017ca: DUP2 000017cb: KECCAK256 000017cc: SWAP1 000017cd: DUP9 000017ce: PUSH1 0x03 000017d0: JUMPDEST 000017d1: PUSH1 0x20 000017d3: MUL 000017d4: ADD 000017d5: MLOAD 000017d6: PUSH1 0x01 000017d8: PUSH1 0xa0 000017da: PUSH1 0x02 000017dc: EXP 000017dd: SUB 000017de: AND 000017df: DUP2 000017e0: MSTORE 000017e1: PUSH1 0x20 000017e3: DUP2 000017e4: ADD 000017e5: SWAP2 000017e6: SWAP1 000017e7: SWAP2 000017e8: MSTORE 000017e9: PUSH1 0x40 000017eb: ADD 000017ec: PUSH1 0x00 000017ee: SWAP1 000017ef: DUP2 000017f0: KECCAK256 000017f1: SLOAD 000017f2: SWAP1 000017f3: PUSH8 0x0de0b6b3a7640000 000017fc: SWAP1 000017fd: DUP11 000017fe: SWAP1 000017ff: JUMPDEST 00001800: PUSH1 0x20 00001802: MUL 00001803: ADD 00001804: MLOAD 00001805: PUSH2 0x1841 00001808: PUSH2 0x182f 0000180b: DUP13 0000180c: PUSH1 0x07 0000180e: JUMPDEST 0000180f: PUSH1 0x20 00001811: MUL 00001812: ADD 00001813: MLOAD 00001814: PUSH8 0x0de0b6b3a7640000 0000181d: SUB 0000181e: DUP14 0000181f: PUSH1 0x01 00001821: PUSH2 0x1422 00001824: JUMP 00001825: JUMPDEST 00001826: PUSH1 0x20 00001828: MUL 00001829: ADD 0000182a: MLOAD 0000182b: PUSH2 0x0dcf 0000182e: JUMP 0000182f: JUMPDEST 00001830: DUP13 00001831: PUSH1 0x04 00001833: PUSH2 0x1422 00001836: JUMP 00001837: JUMPDEST 00001838: PUSH1 0x20 0000183a: MUL 0000183b: ADD 0000183c: MLOAD 0000183d: PUSH2 0x0dcf 00001840: JUMP 00001841: JUMPDEST 00001842: DUP2 00001843: ISZERO 00001844: ISZERO 00001845: PUSH2 0x184a 00001848: JUMPI 00001849: INVALID 0000184a: JUMPDEST 0000184b: DIV 0000184c: DUP2 0000184d: ISZERO 0000184e: ISZERO 0000184f: PUSH2 0x091f 00001852: JUMPI 00001853: INVALID 00001854: JUMPDEST 00001855: DIV 00001856: PUSH2 0x0f61 00001859: JUMP 0000185a: JUMPDEST 0000185b: PUSH1 0x02 0000185d: PUSH1 0x00 0000185f: DUP9 00001860: PUSH1 0x01 00001862: JUMPDEST 00001863: PUSH1 0x20 00001865: MUL 00001866: ADD 00001867: MLOAD 00001868: PUSH1 0x01 0000186a: PUSH1 0xa0 0000186c: PUSH1 0x02 0000186e: EXP 0000186f: SUB 00001870: AND 00001871: DUP2 00001872: MSTORE 00001873: PUSH1 0x20 00001875: DUP2 00001876: ADD 00001877: SWAP2 00001878: SWAP1 00001879: SWAP2 0000187a: MSTORE 0000187b: PUSH1 0x40 0000187d: ADD 0000187e: PUSH1 0x00 00001880: SWAP1 00001881: DUP2 00001882: KECCAK256 00001883: SWAP1 00001884: DUP9 00001885: PUSH1 0x03 00001887: JUMPDEST 00001888: PUSH1 0x20 0000188a: MUL 0000188b: ADD 0000188c: MLOAD 0000188d: PUSH1 0x01 0000188f: PUSH1 0xa0 00001891: PUSH1 0x02 00001893: EXP 00001894: SUB 00001895: AND 00001896: DUP2 00001897: MSTORE 00001898: PUSH1 0x20 0000189a: DUP2 0000189b: ADD 0000189c: SWAP2 0000189d: SWAP1 0000189e: SWAP2 0000189f: MSTORE 000018a0: PUSH1 0x40 000018a2: ADD 000018a3: PUSH1 0x00 000018a5: SWAP1 000018a6: DUP2 000018a7: KECCAK256 000018a8: SWAP2 000018a9: SWAP1 000018aa: SWAP2 000018ab: SSTORE 000018ac: PUSH2 0x1947 000018af: SWAP1 000018b0: PUSH1 0x02 000018b2: SWAP1 000018b3: DUP9 000018b4: PUSH1 0x01 000018b6: JUMPDEST 000018b7: PUSH1 0x20 000018b9: MUL 000018ba: ADD 000018bb: MLOAD 000018bc: PUSH1 0x01 000018be: PUSH1 0xa0 000018c0: PUSH1 0x02 000018c2: EXP 000018c3: SUB 000018c4: SWAP1 000018c5: DUP2 000018c6: AND 000018c7: DUP3 000018c8: MSTORE 000018c9: PUSH1 0x20 000018cb: DUP1 000018cc: DUP4 000018cd: ADD 000018ce: SWAP4 000018cf: SWAP1 000018d0: SWAP4 000018d1: MSTORE 000018d2: PUSH1 0x40 000018d4: SWAP2 000018d5: DUP3 000018d6: ADD 000018d7: PUSH1 0x00 000018d9: SWAP1 000018da: DUP2 000018db: KECCAK256 000018dc: PUSH1 0x06 000018de: SLOAD 000018df: SWAP1 000018e0: SWAP3 000018e1: AND 000018e2: DUP2 000018e3: MSTORE 000018e4: SWAP3 000018e5: MSTORE 000018e6: DUP2 000018e7: KECCAK256 000018e8: SLOAD 000018e9: SWAP1 000018ea: PUSH8 0x0de0b6b3a7640000 000018f3: SWAP1 000018f4: DUP11 000018f5: SWAP1 000018f6: JUMPDEST 000018f7: PUSH1 0x20 000018f9: MUL 000018fa: ADD 000018fb: MLOAD 000018fc: PUSH2 0x1841 000018ff: PUSH2 0x182f 00001902: DUP13 00001903: PUSH1 0x07 00001905: JUMPDEST 00001906: PUSH1 0x20 00001908: MUL 00001909: ADD 0000190a: MLOAD 0000190b: DUP14 0000190c: PUSH1 0x01 0000190e: PUSH2 0x1422 00001911: JUMP 00001912: JUMPDEST 00001913: PUSH1 0x20 00001915: MUL 00001916: ADD 00001917: MLOAD 00001918: PUSH2 0x0dcf 0000191b: JUMP 0000191c: JUMPDEST 0000191d: DUP13 0000191e: PUSH1 0x04 00001920: PUSH2 0x1422 00001923: JUMP 00001924: JUMPDEST 00001925: PUSH1 0x20 00001927: MUL 00001928: ADD 00001929: MLOAD 0000192a: PUSH2 0x0dcf 0000192d: JUMP 0000192e: JUMPDEST 0000192f: DUP2 00001930: ISZERO 00001931: ISZERO 00001932: PUSH2 0x184a 00001935: JUMPI 00001936: INVALID 00001937: JUMPDEST 00001938: DIV 00001939: DUP2 0000193a: ISZERO 0000193b: ISZERO 0000193c: PUSH2 0x091f 0000193f: JUMPI 00001940: INVALID 00001941: JUMPDEST 00001942: DIV 00001943: PUSH2 0x0f61 00001946: JUMP 00001947: JUMPDEST 00001948: PUSH1 0x02 0000194a: PUSH1 0x00 0000194c: DUP9 0000194d: PUSH1 0x01 0000194f: JUMPDEST 00001950: PUSH1 0x20 00001952: MUL 00001953: ADD 00001954: MLOAD 00001955: PUSH1 0x01 00001957: PUSH1 0xa0 00001959: PUSH1 0x02 0000195b: EXP 0000195c: SUB 0000195d: SWAP1 0000195e: DUP2 0000195f: AND 00001960: DUP3 00001961: MSTORE 00001962: PUSH1 0x20 00001964: DUP1 00001965: DUP4 00001966: ADD 00001967: SWAP4 00001968: SWAP1 00001969: SWAP4 0000196a: MSTORE 0000196b: PUSH1 0x40 0000196d: SWAP2 0000196e: DUP3 0000196f: ADD 00001970: PUSH1 0x00 00001972: SWAP1 00001973: DUP2 00001974: KECCAK256 00001975: PUSH1 0x06 00001977: SLOAD 00001978: SWAP1 00001979: SWAP3 0000197a: AND 0000197b: DUP2 0000197c: MSTORE 0000197d: SWAP1 0000197e: DUP4 0000197f: MSTORE 00001980: DUP2 00001981: DUP2 00001982: KECCAK256 00001983: SWAP4 00001984: SWAP1 00001985: SWAP4 00001986: SSTORE 00001987: DUP5 00001988: DUP4 00001989: MSTORE 0000198a: PUSH1 0x05 0000198c: SWAP1 0000198d: SWAP2 0000198e: MSTORE 0000198f: SWAP1 00001990: KECCAK256 00001991: SLOAD 00001992: PUSH2 0x19a7 00001995: SWAP1 00001996: DUP9 00001997: PUSH1 0x04 00001999: PUSH2 0x138e 0000199c: JUMP 0000199d: JUMPDEST 0000199e: PUSH1 0x20 000019a0: MUL 000019a1: ADD 000019a2: MLOAD 000019a3: PUSH2 0x0f61 000019a6: JUMP 000019a7: JUMPDEST 000019a8: PUSH1 0x00 000019aa: DUP4 000019ab: DUP2 000019ac: MSTORE 000019ad: PUSH1 0x05 000019af: PUSH1 0x20 000019b1: MSTORE 000019b2: PUSH1 0x40 000019b4: DUP2 000019b5: KECCAK256 000019b6: SWAP2 000019b7: SWAP1 000019b8: SWAP2 000019b9: SSTORE 000019ba: NUMBER 000019bb: SWAP1 000019bc: PUSH1 0x04 000019be: SWAP1 000019bf: DUP9 000019c0: PUSH1 0x02 000019c2: JUMPDEST 000019c3: PUSH1 0x20 000019c5: MUL 000019c6: ADD 000019c7: MLOAD 000019c8: PUSH1 0x01 000019ca: PUSH1 0xa0 000019cc: PUSH1 0x02 000019ce: EXP 000019cf: SUB 000019d0: AND 000019d1: DUP2 000019d2: MSTORE 000019d3: PUSH1 0x20 000019d5: DUP2 000019d6: ADD 000019d7: SWAP2 000019d8: SWAP1 000019d9: SWAP2 000019da: MSTORE 000019db: PUSH1 0x40 000019dd: ADD 000019de: PUSH1 0x00 000019e0: SWAP1 000019e1: DUP2 000019e2: KECCAK256 000019e3: SWAP2 000019e4: SWAP1 000019e5: SWAP2 000019e6: SSTORE 000019e7: NUMBER 000019e8: SWAP1 000019e9: PUSH1 0x04 000019eb: SWAP1 000019ec: DUP9 000019ed: PUSH1 0x03 000019ef: JUMPDEST 000019f0: PUSH1 0x20 000019f2: MUL 000019f3: ADD 000019f4: MLOAD 000019f5: PUSH1 0x01 000019f7: PUSH1 0xa0 000019f9: PUSH1 0x02 000019fb: EXP 000019fc: SUB 000019fd: AND 000019fe: DUP2 000019ff: MSTORE 00001a00: PUSH1 0x20 00001a02: DUP2 00001a03: ADD 00001a04: SWAP2 00001a05: SWAP1 00001a06: SWAP2 00001a07: MSTORE 00001a08: PUSH1 0x40 00001a0a: ADD 00001a0b: PUSH1 0x00 00001a0d: KECCAK256 00001a0e: SSTORE 00001a0f: JUMPDEST 00001a10: JUMPDEST 00001a11: POP 00001a12: POP 00001a13: SWAP5 00001a14: SWAP4 00001a15: POP 00001a16: POP 00001a17: POP 00001a18: POP 00001a19: JUMP 00001a1a: JUMPDEST 00001a1b: PUSH1 0x07 00001a1d: SLOAD 00001a1e: DUP2 00001a1f: JUMP 00001a20: JUMPDEST 00001a21: PUSH1 0x07 00001a23: SLOAD 00001a24: PUSH1 0x01 00001a26: PUSH1 0xa0 00001a28: PUSH1 0x02 00001a2a: EXP 00001a2b: SUB 00001a2c: CALLER 00001a2d: AND 00001a2e: PUSH1 0x00 00001a30: SWAP1 00001a31: DUP2 00001a32: MSTORE 00001a33: PUSH1 0x04 00001a35: PUSH1 0x20 00001a37: MSTORE 00001a38: PUSH1 0x40 00001a3a: DUP2 00001a3b: KECCAK256 00001a3c: SLOAD 00001a3d: SWAP1 00001a3e: SWAP2 00001a3f: SWAP1 00001a40: PUSH2 0x1a4a 00001a43: SWAP1 00001a44: NUMBER 00001a45: SWAP1 00001a46: PUSH2 0x0d2e 00001a49: JUMP 00001a4a: JUMPDEST 00001a4b: LT 00001a4c: ISZERO 00001a4d: PUSH2 0x1a55 00001a50: JUMPI 00001a51: PUSH1 0x00 00001a53: DUP1 00001a54: REVERT 00001a55: JUMPDEST 00001a56: PUSH1 0x01 00001a58: PUSH1 0xa0 00001a5a: PUSH1 0x02 00001a5c: EXP 00001a5d: SUB 00001a5e: DUP1 00001a5f: DUP5 00001a60: AND 00001a61: PUSH1 0x00 00001a63: SWAP1 00001a64: DUP2 00001a65: MSTORE 00001a66: PUSH1 0x02 00001a68: PUSH1 0x20 00001a6a: SWAP1 00001a6b: DUP2 00001a6c: MSTORE 00001a6d: PUSH1 0x40 00001a6f: DUP1 00001a70: DUP4 00001a71: KECCAK256 00001a72: CALLER 00001a73: SWAP1 00001a74: SWAP5 00001a75: AND 00001a76: DUP4 00001a77: MSTORE 00001a78: SWAP3 00001a79: SWAP1 00001a7a: MSTORE 00001a7b: KECCAK256 00001a7c: SLOAD 00001a7d: DUP3 00001a7e: SWAP1 00001a7f: LT 00001a80: ISZERO 00001a81: PUSH2 0x1a89 00001a84: JUMPI 00001a85: PUSH1 0x00 00001a87: DUP1 00001a88: REVERT 00001a89: JUMPDEST 00001a8a: PUSH1 0x01 00001a8c: PUSH1 0xa0 00001a8e: PUSH1 0x02 00001a90: EXP 00001a91: SUB 00001a92: DUP1 00001a93: DUP5 00001a94: AND 00001a95: PUSH1 0x00 00001a97: SWAP1 00001a98: DUP2 00001a99: MSTORE 00001a9a: PUSH1 0x02 00001a9c: PUSH1 0x20 00001a9e: SWAP1 00001a9f: DUP2 00001aa0: MSTORE 00001aa1: PUSH1 0x40 00001aa3: DUP1 00001aa4: DUP4 00001aa5: KECCAK256 00001aa6: CALLER 00001aa7: SWAP1 00001aa8: SWAP5 00001aa9: AND 00001aaa: DUP4 00001aab: MSTORE 00001aac: SWAP3 00001aad: SWAP1 00001aae: MSTORE 00001aaf: KECCAK256 00001ab0: SLOAD 00001ab1: PUSH2 0x1aba 00001ab4: SWAP1 00001ab5: DUP4 00001ab6: PUSH2 0x0d2e 00001ab9: JUMP 00001aba: JUMPDEST 00001abb: PUSH1 0x01 00001abd: PUSH1 0xa0 00001abf: PUSH1 0x02 00001ac1: EXP 00001ac2: SUB 00001ac3: DUP1 00001ac4: DUP6 00001ac5: AND 00001ac6: PUSH1 0x00 00001ac8: DUP2 00001ac9: DUP2 00001aca: MSTORE 00001acb: PUSH1 0x02 00001acd: PUSH1 0x20 00001acf: SWAP1 00001ad0: DUP2 00001ad1: MSTORE 00001ad2: PUSH1 0x40 00001ad4: DUP1 00001ad5: DUP4 00001ad6: KECCAK256 00001ad7: CALLER 00001ad8: SWAP1 00001ad9: SWAP6 00001ada: AND 00001adb: DUP4 00001adc: MSTORE 00001add: SWAP4 00001ade: SWAP1 00001adf: MSTORE 00001ae0: SWAP2 00001ae1: SWAP1 00001ae2: SWAP2 00001ae3: KECCAK256 00001ae4: SWAP2 00001ae5: SWAP1 00001ae6: SWAP2 00001ae7: SSTORE 00001ae8: ISZERO 00001ae9: ISZERO 00001aea: PUSH2 0x1b23 00001aed: JUMPI 00001aee: PUSH1 0x01 00001af0: PUSH1 0xa0 00001af2: PUSH1 0x02 00001af4: EXP 00001af5: SUB 00001af6: CALLER 00001af7: AND 00001af8: DUP3 00001af9: ISZERO 00001afa: PUSH2 0x08fc 00001afd: MUL 00001afe: DUP4 00001aff: PUSH1 0x40 00001b01: MLOAD 00001b02: PUSH1 0x00 00001b04: PUSH1 0x40 00001b06: MLOAD 00001b07: DUP1 00001b08: DUP4 00001b09: SUB 00001b0a: DUP2 00001b0b: DUP6 00001b0c: DUP9 00001b0d: DUP9 00001b0e: CALL 00001b0f: SWAP4 00001b10: POP 00001b11: POP 00001b12: POP 00001b13: POP 00001b14: ISZERO 00001b15: ISZERO 00001b16: PUSH2 0x1b1e 00001b19: JUMPI 00001b1a: PUSH1 0x00 00001b1c: DUP1 00001b1d: REVERT 00001b1e: JUMPDEST 00001b1f: PUSH2 0x1ba6 00001b22: JUMP 00001b23: JUMPDEST 00001b24: DUP3 00001b25: PUSH1 0x01 00001b27: PUSH1 0xa0 00001b29: PUSH1 0x02 00001b2b: EXP 00001b2c: SUB 00001b2d: AND 00001b2e: PUSH4 0xa9059cbb 00001b33: CALLER 00001b34: DUP5 00001b35: PUSH1 0x00 00001b37: PUSH1 0x40 00001b39: MLOAD 00001b3a: PUSH1 0x20 00001b3c: ADD 00001b3d: MSTORE 00001b3e: PUSH1 0x40 00001b40: MLOAD 00001b41: PUSH1 0xe0 00001b43: PUSH1 0x02 00001b45: EXP 00001b46: PUSH4 0xffffffff 00001b4b: DUP6 00001b4c: AND 00001b4d: MUL 00001b4e: DUP2 00001b4f: MSTORE 00001b50: PUSH1 0x01 00001b52: PUSH1 0xa0 00001b54: PUSH1 0x02 00001b56: EXP 00001b57: SUB 00001b58: SWAP1 00001b59: SWAP3 00001b5a: AND 00001b5b: PUSH1 0x04 00001b5d: DUP4 00001b5e: ADD 00001b5f: MSTORE 00001b60: PUSH1 0x24 00001b62: DUP3 00001b63: ADD 00001b64: MSTORE 00001b65: PUSH1 0x44 00001b67: ADD 00001b68: PUSH1 0x20 00001b6a: PUSH1 0x40 00001b6c: MLOAD 00001b6d: DUP1 00001b6e: DUP4 00001b6f: SUB 00001b70: DUP2 00001b71: PUSH1 0x00 00001b73: DUP8 00001b74: DUP1 00001b75: EXTCODESIZE 00001b76: ISZERO 00001b77: ISZERO 00001b78: PUSH2 0x1b80 00001b7b: JUMPI 00001b7c: PUSH1 0x00 00001b7e: DUP1 00001b7f: REVERT 00001b80: JUMPDEST 00001b81: PUSH2 0x02c6 00001b84: GAS 00001b85: SUB 00001b86: CALL 00001b87: ISZERO 00001b88: ISZERO 00001b89: PUSH2 0x1b91 00001b8c: JUMPI 00001b8d: PUSH1 0x00 00001b8f: DUP1 00001b90: REVERT 00001b91: JUMPDEST 00001b92: POP 00001b93: POP 00001b94: POP 00001b95: PUSH1 0x40 00001b97: MLOAD 00001b98: DUP1 00001b99: MLOAD 00001b9a: SWAP1 00001b9b: POP 00001b9c: ISZERO 00001b9d: ISZERO 00001b9e: PUSH2 0x1ba6 00001ba1: JUMPI 00001ba2: PUSH1 0x00 00001ba4: DUP1 00001ba5: REVERT 00001ba6: JUMPDEST 00001ba7: JUMPDEST 00001ba8: PUSH1 0x01 00001baa: PUSH1 0xa0 00001bac: PUSH1 0x02 00001bae: EXP 00001baf: SUB 00001bb0: DUP1 00001bb1: DUP5 00001bb2: AND 00001bb3: PUSH1 0x00 00001bb5: SWAP1 00001bb6: DUP2 00001bb7: MSTORE 00001bb8: PUSH1 0x02 00001bba: PUSH1 0x20 00001bbc: SWAP1 00001bbd: DUP2 00001bbe: MSTORE 00001bbf: PUSH1 0x40 00001bc1: DUP1 00001bc2: DUP4 00001bc3: KECCAK256 00001bc4: CALLER 00001bc5: SWAP5 00001bc6: DUP6 00001bc7: AND 00001bc8: DUP5 00001bc9: MSTORE 00001bca: SWAP1 00001bcb: SWAP2 00001bcc: MSTORE 00001bcd: SWAP1 00001bce: DUP2 00001bcf: SWAP1 00001bd0: KECCAK256 00001bd1: SLOAD 00001bd2: PUSH32 0xf341246adaac6f497bc2a656f546ab9e182111d630394f0c57c710a59a2cb567 00001bf3: SWAP3 00001bf4: DUP7 00001bf5: SWAP3 00001bf6: SWAP1 00001bf7: SWAP2 00001bf8: DUP7 00001bf9: SWAP2 00001bfa: MLOAD 00001bfb: PUSH1 0x01 00001bfd: PUSH1 0xa0 00001bff: PUSH1 0x02 00001c01: EXP 00001c02: SUB 00001c03: SWAP5 00001c04: DUP6 00001c05: AND 00001c06: DUP2 00001c07: MSTORE 00001c08: SWAP3 00001c09: SWAP1 00001c0a: SWAP4 00001c0b: AND 00001c0c: PUSH1 0x20 00001c0e: DUP4 00001c0f: ADD 00001c10: MSTORE 00001c11: PUSH1 0x40 00001c13: DUP1 00001c14: DUP4 00001c15: ADD 00001c16: SWAP2 00001c17: SWAP1 00001c18: SWAP2 00001c19: MSTORE 00001c1a: PUSH1 0x60 00001c1c: DUP3 00001c1d: ADD 00001c1e: SWAP3 00001c1f: SWAP1 00001c20: SWAP3 00001c21: MSTORE 00001c22: PUSH1 0x80 00001c24: ADD 00001c25: SWAP1 00001c26: MLOAD 00001c27: DUP1 00001c28: SWAP2 00001c29: SUB 00001c2a: SWAP1 00001c2b: LOG1 00001c2c: JUMPDEST 00001c2d: SWAP3 00001c2e: SWAP2 00001c2f: POP 00001c30: POP 00001c31: JUMP 00001c32: JUMPDEST 00001c33: PUSH1 0x05 00001c35: PUSH1 0x20 00001c37: MSTORE 00001c38: PUSH1 0x00 00001c3a: SWAP1 00001c3b: DUP2 00001c3c: MSTORE 00001c3d: PUSH1 0x40 00001c3f: SWAP1 00001c40: KECCAK256 00001c41: SLOAD 00001c42: DUP2 00001c43: JUMP 00001c44: JUMPDEST 00001c45: PUSH1 0x01 00001c47: PUSH1 0xa0 00001c49: PUSH1 0x02 00001c4b: EXP 00001c4c: SUB 00001c4d: DUP1 00001c4e: DUP4 00001c4f: AND 00001c50: PUSH1 0x00 00001c52: SWAP1 00001c53: DUP2 00001c54: MSTORE 00001c55: PUSH1 0x02 00001c57: PUSH1 0x20 00001c59: SWAP1 00001c5a: DUP2 00001c5b: MSTORE 00001c5c: PUSH1 0x40 00001c5e: DUP1 00001c5f: DUP4 00001c60: KECCAK256 00001c61: SWAP4 00001c62: DUP6 00001c63: AND 00001c64: DUP4 00001c65: MSTORE 00001c66: SWAP3 00001c67: SWAP1 00001c68: MSTORE 00001c69: KECCAK256 00001c6a: SLOAD 00001c6b: JUMPDEST 00001c6c: SWAP3 00001c6d: SWAP2 00001c6e: POP 00001c6f: POP 00001c70: JUMP 00001c71: STOP 00001c72: LOG1 00001c73: PUSH6 0x627a7a723058 00001c7a: KECCAK256 00001c7b: GT 00001c7c: UNKNOWN(0xE4) 00001c7d: COINBASE 00001c7e: UNKNOWN(0xEE) 00001c7f: CODESIZE 00001c80: SWAP14 00001c81: UNKNOWN(0xAD) 00001c82: KECCAK256 00001c83: ORIGIN 00001c84: CLZ 00001c85: SDIV 00001c86: PUSH0 00001c87: EXTCODECOPY 00001c88: MSIZE 00001c89: PUSH27
| 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": "0x0674763c",
"selector": "0x0674763c",
"calldata_variants": [
"0x0674763c",
"0x0674763c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x13af4035",
"selector": "0x13af4035",
"calldata_variants": [
"0x13af4035",
"0x13af40350000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x2295115b",
"selector": "0x2295115b",
"calldata_variants": [
"0x2295115b",
"0x2295115b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x254dcfe2",
"selector": "0x254dcfe2",
"calldata_variants": [
"0x254dcfe2",
"0x254dcfe20000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x338b5dea",
"selector": "0x338b5dea",
"calldata_variants": [
"0x338b5dea",
"0x338b5dea0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3823d66c",
"selector": "0x3823d66c",
"calldata_variants": [
"0x3823d66c",
"0x3823d66c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x429b62e5",
"selector": "0x429b62e5",
"calldata_variants": [
"0x429b62e5",
"0x429b62e50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4b0bddd2",
"selector": "0x4b0bddd2",
"calldata_variants": [
"0x4b0bddd2",
"0x4b0bddd20000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 7299,
"type": "tx_origin_used"
}
]
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0x9428c1663bb3fdb625499739071e64e93f1c07c921d7d7eb3150ef2b1f7af529
call_targets:
0x2a0c0dbecc7e4d658f48e01e3fa353f44050c208
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x9428c1663bb3fdb625499739071e64e93f1c07c921d7d7eb3150ef2b1f7af529",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x2a0c0dbecc7e4d658f48e01e3fa353f44050c208"
],
"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": "0x0674763c",
"selector": "0x0674763c",
"calldata_variants": [
"0x0674763c",
"0x0674763c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x13af4035",
"selector": "0x13af4035",
"calldata_variants": [
"0x13af4035",
"0x13af40350000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x2295115b",
"selector": "0x2295115b",
"calldata_variants": [
"0x2295115b",
"0x2295115b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x254dcfe2",
"selector": "0x254dcfe2",
"calldata_variants": [
"0x254dcfe2",
"0x254dcfe20000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x338b5dea",
"selector": "0x338b5dea",
"calldata_variants": [
"0x338b5dea",
"0x338b5dea0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3823d66c",
"selector": "0x3823d66c",
"calldata_variants": [
"0x3823d66c",
"0x3823d66c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x429b62e5",
"selector": "0x429b62e5",
"calldata_variants": [
"0x429b62e5",
"0x429b62e50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4b0bddd2",
"selector": "0x4b0bddd2",
"calldata_variants": [
"0x4b0bddd2",
"0x4b0bddd20000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2086,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2464,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2584,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 8,
"guards_detected": [
{
"pc": 7299,
"type": "tx_origin_used"
}
],
"untrusted_call_count": 8
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0x9428c1663bb3fdb625499739071e64e93f1c07c921d7d7eb3150ef2b1f7af529
call_targets:
0x2a0c0dbecc7e4d658f48e01e3fa353f44050c208
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x9428c1663bb3fdb625499739071e64e93f1c07c921d7d7eb3150ef2b1f7af529",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x2a0c0dbecc7e4d658f48e01e3fa353f44050c208"
],
"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": "0x0674763c",
"selector": "0x0674763c",
"calldata_variants": [
"0x0674763c",
"0x0674763c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x13af4035",
"selector": "0x13af4035",
"calldata_variants": [
"0x13af4035",
"0x13af40350000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x2295115b",
"selector": "0x2295115b",
"calldata_variants": [
"0x2295115b",
"0x2295115b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x254dcfe2",
"selector": "0x254dcfe2",
"calldata_variants": [
"0x254dcfe2",
"0x254dcfe20000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x338b5dea",
"selector": "0x338b5dea",
"calldata_variants": [
"0x338b5dea",
"0x338b5dea0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3823d66c",
"selector": "0x3823d66c",
"calldata_variants": [
"0x3823d66c",
"0x3823d66c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x429b62e5",
"selector": "0x429b62e5",
"calldata_variants": [
"0x429b62e5",
"0x429b62e50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4b0bddd2",
"selector": "0x4b0bddd2",
"calldata_variants": [
"0x4b0bddd2",
"0x4b0bddd20000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2086,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2464,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2584,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 8,
"guards_detected": [
{
"pc": 7299,
"type": "tx_origin_used"
}
]
}
|