a07440d4-9742-4482-9bb0-05239d80eb1f
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 |
|---|---|---|---|---|
| 30155 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 93529 | artifact.fetch | complete | 1 / 3 | 1 week ago |
| 93530 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 93531 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 93532 | capability.graph | complete | 1 / 3 | 1 week ago |
| 93533 | detector.run | complete | 1 / 3 | 1 week ago |
| 93534 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:211783] OpenAI Codex v0.77.0 (research preview)
[codex:211783] --------
[codex:211783] workdir: /tmp/codex-multi-ueozhdiq
[codex:211783] model: gpt-5.2-codex
[codex:211783] provider: openai
[codex:211783] approval: never
[codex:211783] sandbox: read-only
[codex:211783] reasoning effort: none
[codex:211783] reasoning summaries: auto
[codex:211783] session id: 019b4de1-27b2-74f0-823c-7578dcdfff3a
[codex:211783] --------
[codex:211783] user
[codex:211783] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:211783] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:211783] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:211783]
[codex:211783] Scope rules:
[codex:211783] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:211783] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:211783]
[codex:211783] Output MUST be valid JSON matching the provided schema.
[codex:211783] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:211783] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:211783]
[codex:211783] Output constraints (IMPORTANT):
[codex:211783] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:211783] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:211783] mcp startup: no servers
[codex:211783]
[codex:211783] thinking
[codex:211783] **Reading the bundle file**
[codex:211783] exec
[codex:211783] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-ueozhdiq succeeded in 6ms:
[codex:211783] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:211783]
[codex:211783] ================================================================================
[codex:211783] FILE: contracts/Contract.sol
[codex:211783] ================================================================================
[codex:211783] // hevm: flattened sources of src/tub.sol
[codex:211783] pragma solidity ^0.4.18;
[codex:211783]
[codex:211783] ////// lib/ds-guard/lib/ds-auth/src/auth.sol
[codex:211783] // This program is free software: you can redistribute it and/or modify
[codex:211783] // it under the terms of the GNU General Public License as published by
[codex:211783] // the Free Software Foundation, either version 3 of the License, or
[codex:211783] // (at your option) any later version.
[codex:211783]
[codex:211783] // This program is distributed in the hope that it will be useful,
[codex:211783] // but WITHOUT ANY WARRANTY; without even the implied warranty of
[codex:211783] // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
[codex:211783] // GNU General Public License for more details.
[codex:211783]
[codex:211783] // You should have received a copy of the GNU General Public License
[codex:211783]
[codex:211783] thinking
[codex:211783] **Analyzing reentrancy and access control risks**
[codex:211783] exec
[codex:211783] /bin/bash -lc "nl -ba AUDIT_BUNDLE.txt | sed -n '220,520p'" in /tmp/codex-multi-ueozhdiq succeeded in 6ms:
[codex:211783] 220 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
[codex:211783] 221 // GNU General Public License for more details.
[codex:211783] 222
[codex:211783] 223 // You should have received a copy of the GNU General Public License
[codex:211783] 224 // along with this program. If not, see <http://www.gnu.org/licenses/>.
[codex:211783] 225
[codex:211783] 226 /* pragma solidity ^0.4.13; */
[codex:211783] 227
[codex:211783] 228 /* import 'ds-auth/auth.sol'; */
[codex:211783] 229 /* import 'ds-note/note.sol'; */
[codex:211783] 230 /* import 'ds-math/math.sol'; */
[codex:211783] 231
[codex:211783] 232 contract DSThing is DSAuth, DSNote, DSMath {
[codex:211783] 233
[codex:211783] 234 function S(string s) internal pure returns (bytes4) {
[codex:211783] 235 return bytes4(keccak256(s));
[codex:211783] 236 }
[codex:211783] 237
[codex:211783] 238 }
[codex:211783] 239
[codex:211783]
[codex:211783] thinking
[codex:211783] **Noting requirement for tub surround**
[codex:211783] exec
[codex:211783] /bin/bash -lc "nl -ba AUDIT_BUNDLE.txt | sed -n '720,1040p'" in /tmp/codex-multi-ueozhdiq succeeded in 6ms:
[codex:211783] 720 ) public {
[codex:211783] 721 gem = gem_;
[codex:211783] 722 skr = skr_;
[codex:211783] 723
[codex:211783] 724 sai = sai_;
[codex:211783] 725 sin = sin_;
[codex:211783] 726
[codex:211783] 727 gov = gov_;
[codex:211783] 728 pit = pit_;
[codex:211783] 729
[codex:211783] 730 pip = pip_;
[codex:211783] 731 pep = pep_;
[codex:211783] 732 vox = vox_;
[codex:211783] 733
[codex:211783] 734 axe = RAY;
[codex:211783] 735 mat = RAY;
[codex:211783] 736 tax = RAY;
[codex:211783] 737 fee = RAY;
[codex:211783] 738 gap = WAD;
[codex:211783] 739
[codex:211783]
[codex:211783] thinking
[codex:211783] **Composing JSON report**
[codex:211783] codex
[codex:211783] {"no_findings":false,"summary":"Found one high-severity access control issue allowing an arbitrary address to seize the liquidator role (tap) and collect protocol fees/liquidations.","findings":[{"severity":"high","category":"access_control","title":"Unrestricted initialization of tap allows attacker-controlled liquidator","exploit_scenario":"Because `turn` lacks `auth`, any external account can call it once (while `tap == 0`) to set `tap` to themselves. This lets the attacker collect newly minted `sai` fees in `drip`, receive liquidation proceeds in `bite`, and receive `gem` in `cage`, effectively diverting protocol value to the attacker.","recommendation":"Restrict `turn` with `auth` or set `tap` in the constructor. If a one-time setter is required, still gate it with `auth` and consider emitting an event.","evidence":"`turn` only checks `tap == 0` and `tap_ != 0`, but has no access control.","locations":["contracts/Contract.sol:775"]}]}
[codex:211783] tokens used
[codex:211783] 20,367
[codex:211783] {"no_findings":false,"summary":"Found one high-severity access control issue allowing an arbitrary address to seize the liquidator role (tap) and collect protocol fees/liquidations.","findings":[{"severity":"high","category":"access_control","title":"Unrestricted initialization of tap allows attacker-controlled liquidator","exploit_scenario":"Because `turn` lacks `auth`, any external account can call it once (while `tap == 0`) to set `tap` to themselves. This lets the attacker collect newly minted `sai` fees in `drip`, receive liquidation proceeds in `bite`, and receive `gem` in `cage`, effectively diverting protocol value to the attacker.","recommendation":"Restrict `turn` with `auth` or set `tap` in the constructor. If a one-time setter is required, still gate it with `auth` and consider emitting an event.","evidence":"`turn` only checks `tap == 0` and `tap_ != 0`, but has no access control.","locations":["contracts/Contract.sol:775"]}]}
{
"codex": {
"ran_at": "2025-12-24T01:03:09.270014+00:00",
"returncode": 0
},
"summary": "Found one high-severity access control issue allowing an arbitrary address to seize the liquidator role (tap) and collect protocol fees/liquidations.",
"raw_final": {
"summary": "Found one high-severity access control issue allowing an arbitrary address to seize the liquidator role (tap) and collect protocol fees/liquidations.",
"findings": [
{
"title": "Unrestricted initialization of tap allows attacker-controlled liquidator",
"category": "access_control",
"evidence": "`turn` only checks `tap == 0` and `tap_ != 0`, but has no access control.",
"severity": "high",
"locations": [
"contracts/Contract.sol:775"
],
"recommendation": "Restrict `turn` with `auth` or set `tap` in the constructor. If a one-time setter is required, still gate it with `auth` and consider emitting an event.",
"exploit_scenario": "Because `turn` lacks `auth`, any external account can call it once (while `tap == 0`) to set `tap` to themselves. This lets the attacker collect newly minted `sai` fees in `drip`, receive liquidation proceeds in `bite`, and receive `gem` in `cage`, effectively diverting protocol value to the attacker."
}
],
"no_findings": false
},
"no_findings": false,
"schema_version": 1
}
00000000: PUSH1 0x60 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: PUSH2 0x02b0 0000000c: JUMPI 0000000d: PUSH4 0xffffffff 00000012: PUSH1 0xe0 00000014: PUSH1 0x02 00000016: EXP 00000017: PUSH1 0x00 00000019: CALLDATALOAD 0000001a: DIV 0000001b: AND 0000001c: PUSH4 0x049878f3 00000021: DUP2 00000022: EQ 00000023: PUSH2 0x02b5 00000026: JUMPI 00000027: DUP1 00000028: PUSH4 0x071bafb5 0000002d: EQ 0000002e: PUSH2 0x02cd 00000031: JUMPI 00000032: DUP1 00000033: PUSH4 0x0f8a771e 00000038: EQ 00000039: PUSH2 0x02fc 0000003c: JUMPI 0000003d: DUP1 0000003e: PUSH4 0x12d43a51 00000043: EQ 00000044: PUSH2 0x030f 00000047: JUMPI 00000048: DUP1 00000049: PUSH4 0x13af4035 0000004e: EQ 0000004f: PUSH2 0x0322 00000052: JUMPI 00000053: DUP1 00000054: PUSH4 0x143e55e0 00000059: EQ 0000005a: PUSH2 0x0341 0000005d: JUMPI 0000005e: DUP1 0000005f: PUSH4 0x1f3634ed 00000064: EQ 00000065: PUSH2 0x0366 00000068: JUMPI 00000069: DUP1 0000006a: PUSH4 0x20aba08b 0000006f: EQ 00000070: PUSH2 0x037c 00000073: JUMPI 00000074: DUP1 00000075: PUSH4 0x27e7e21e 0000007a: EQ 0000007b: PUSH2 0x038f 0000007e: JUMPI 0000007f: DUP1 00000080: PUSH4 0x338a0261 00000085: EQ 00000086: PUSH2 0x03a2 00000089: JUMPI 0000008a: DUP1 0000008b: PUSH4 0x343aad82 00000090: EQ 00000091: PUSH2 0x03b5 00000094: JUMPI 00000095: DUP1 00000096: PUSH4 0x355274ea 0000009b: EQ 0000009c: PUSH2 0x03c8 0000009f: JUMPI 000000a0: DUP1 000000a1: PUSH4 0x40cc8854 000000a6: EQ 000000a7: PUSH2 0x03db 000000aa: JUMPI 000000ab: DUP1 000000ac: PUSH4 0x440f19ba 000000b1: EQ 000000b2: PUSH2 0x03f1 000000b5: JUMPI 000000b6: DUP1 000000b7: PUSH4 0x454a2ab3 000000bc: EQ 000000bd: PUSH2 0x040a 000000c0: JUMPI 000000c1: DUP1 000000c2: PUSH4 0x49955431 000000c7: EQ 000000c8: PUSH2 0x0420 000000cb: JUMPI 000000cc: DUP1 000000cd: PUSH4 0x509bf2bf 000000d2: EQ 000000d3: PUSH2 0x0433 000000d6: JUMPI 000000d7: DUP1 000000d8: PUSH4 0x51f91066 000000dd: EQ 000000de: PUSH2 0x0446 000000e1: JUMPI 000000e2: DUP1 000000e3: PUSH4 0x6626b26d 000000e8: EQ 000000e9: PUSH2 0x0459 000000ec: JUMPI 000000ed: DUP1 000000ee: PUSH4 0x67550a35 000000f3: EQ 000000f4: PUSH2 0x0480 000000f7: JUMPI 000000f8: DUP1 000000f9: PUSH4 0x6c32c0a6 000000fe: EQ 000000ff: PUSH2 0x0493 00000102: JUMPI 00000103: DUP1 00000104: PUSH4 0x6f78ee0d 00000109: EQ 0000010a: PUSH2 0x04a6 0000010d: JUMPI 0000010e: DUP1 0000010f: PUSH4 0x73b38101 00000114: EQ 00000115: PUSH2 0x04bc 00000118: JUMPI 00000119: DUP1 0000011a: PUSH4 0x7a9e5e4b 0000011f: EQ 00000120: PUSH2 0x04d5 00000123: JUMPI 00000124: DUP1 00000125: PUSH4 0x7bd2bea7 0000012a: EQ 0000012b: PUSH2 0x04f4 0000012e: JUMPI 0000012f: DUP1 00000130: PUSH4 0x7e74325f 00000135: EQ 00000136: PUSH2 0x0507 00000139: JUMPI 0000013a: DUP1 0000013b: PUSH4 0x7ec9c3b8 00000140: EQ 00000141: PUSH2 0x0526 00000144: JUMPI 00000145: DUP1 00000146: PUSH4 0x7f8661a1 0000014b: EQ 0000014c: PUSH2 0x0539 0000014f: JUMPI 00000150: DUP1 00000151: PUSH4 0x82bf9a75 00000156: EQ 00000157: PUSH2 0x054f 0000015a: JUMPI 0000015b: DUP1 0000015c: PUSH4 0x8a95a746 00000161: EQ 00000162: PUSH2 0x056e 00000165: JUMPI 00000166: DUP1 00000167: PUSH4 0x8ceedb47 0000016c: EQ 0000016d: PUSH2 0x0581 00000170: JUMPI 00000171: DUP1 00000172: PUSH4 0x8cf0c191 00000177: EQ 00000178: PUSH2 0x059a 0000017b: JUMPI 0000017c: DUP1 0000017d: PUSH4 0x8da5cb5b 00000182: EQ 00000183: PUSH2 0x05ad 00000186: JUMPI 00000187: DUP1 00000188: PUSH4 0x9166cba4 0000018d: EQ 0000018e: PUSH2 0x05c0 00000191: JUMPI 00000192: DUP1 00000193: PUSH4 0x92b0d721 00000198: EQ 00000199: PUSH2 0x05d3 0000019c: JUMPI 0000019d: DUP1 0000019e: PUSH4 0x99c8d556 000001a3: EQ 000001a4: PUSH2 0x05ec 000001a7: JUMPI 000001a8: DUP1 000001a9: PUSH4 0x9f678cca 000001ae: EQ 000001af: PUSH2 0x05ff 000001b2: JUMPI 000001b3: DUP1 000001b4: PUSH4 0xa5cd184e 000001b9: EQ 000001ba: PUSH2 0x0612 000001bd: JUMPI 000001be: DUP1 000001bf: PUSH4 0xab0783da 000001c4: EQ 000001c5: PUSH2 0x062b 000001c8: JUMPI 000001c9: DUP1 000001ca: PUSH4 0xace237f5 000001cf: EQ 000001d0: PUSH2 0x063e 000001d3: JUMPI 000001d4: DUP1 000001d5: PUSH4 0xb2a1449b 000001da: EQ 000001db: PUSH2 0x0651 000001de: JUMPI 000001df: DUP1 000001e0: PUSH4 0xb3b77a51 000001e5: EQ 000001e6: PUSH2 0x0664 000001e9: JUMPI 000001ea: DUP1 000001eb: PUSH4 0xb84d2106 000001f0: EQ 000001f1: PUSH2 0x067d 000001f4: JUMPI 000001f5: DUP1 000001f6: PUSH4 0xbaa8529c 000001fb: EQ 000001fc: PUSH2 0x0693 000001ff: JUMPI 00000200: DUP1 00000201: PUSH4 0xbf7e214f 00000206: EQ 00000207: PUSH2 0x06b5 0000020a: JUMPI 0000020b: DUP1 0000020c: PUSH4 0xc8e13bb4 00000211: EQ 00000212: PUSH2 0x06c8 00000215: JUMPI 00000216: DUP1 00000217: PUSH4 0xc92aecc4 0000021c: EQ 0000021d: PUSH2 0x06db 00000220: JUMPI 00000221: DUP1 00000222: PUSH4 0xcf48d1a6 00000227: EQ 00000228: PUSH2 0x06ee 0000022b: JUMPI 0000022c: DUP1 0000022d: PUSH4 0xd741e2f9 00000232: EQ 00000233: PUSH2 0x070d 00000236: JUMPI 00000237: DUP1 00000238: PUSH4 0xd9c27cc6 0000023d: EQ 0000023e: PUSH2 0x0720 00000241: JUMPI 00000242: DUP1 00000243: PUSH4 0xddca3f43 00000248: EQ 00000249: PUSH2 0x073f 0000024c: JUMPI 0000024d: DUP1 0000024e: PUSH4 0xde5f5517 00000253: EQ 00000254: PUSH2 0x0752 00000257: JUMPI 00000258: DUP1 00000259: PUSH4 0xe0ae96e9 0000025e: EQ 0000025f: PUSH2 0x0768 00000262: JUMPI 00000263: DUP1 00000264: PUSH4 0xe47e7e66 00000269: EQ 0000026a: PUSH2 0x077b 0000026d: JUMPI 0000026e: DUP1 0000026f: PUSH4 0xe95823ad 00000274: EQ 00000275: PUSH2 0x0791 00000278: JUMPI 00000279: DUP1 0000027a: PUSH4 0xf03c7c6e 0000027f: EQ 00000280: PUSH2 0x07a7 00000283: JUMPI 00000284: DUP1 00000285: PUSH4 0xf7c8d634 0000028a: EQ 0000028b: PUSH2 0x07ba 0000028e: JUMPI 0000028f: DUP1 00000290: PUSH4 0xfcfff16f 00000295: EQ 00000296: PUSH2 0x07d0 00000299: JUMPI 0000029a: DUP1 0000029b: PUSH4 0xfd221031 000002a0: EQ 000002a1: PUSH2 0x07e3 000002a4: JUMPI 000002a5: DUP1 000002a6: PUSH4 0xfdac0025 000002ab: EQ 000002ac: PUSH2 0x07f6 000002af: JUMPI 000002b0: JUMPDEST 000002b1: PUSH1 0x00 000002b3: DUP1 000002b4: REVERT 000002b5: JUMPDEST 000002b6: CALLVALUE 000002b7: ISZERO 000002b8: PUSH2 0x02c0 000002bb: JUMPI 000002bc: PUSH1 0x00 000002be: DUP1 000002bf: REVERT 000002c0: JUMPDEST 000002c1: PUSH2 0x02cb 000002c4: PUSH1 0x04 000002c6: CALLDATALOAD 000002c7: PUSH2 0x0849 000002ca: JUMP 000002cb: JUMPDEST 000002cc: STOP 000002cd: JUMPDEST 000002ce: CALLVALUE 000002cf: ISZERO 000002d0: PUSH2 0x02d8 000002d3: JUMPI 000002d4: PUSH1 0x00 000002d6: DUP1 000002d7: REVERT 000002d8: JUMPDEST 000002d9: PUSH2 0x02e0 000002dc: PUSH2 0x09cd 000002df: JUMP 000002e0: JUMPDEST 000002e1: PUSH1 0x40 000002e3: MLOAD 000002e4: PUSH1 0x01 000002e6: PUSH1 0xa0 000002e8: PUSH1 0x02 000002ea: EXP 000002eb: SUB 000002ec: SWAP1 000002ed: SWAP2 000002ee: AND 000002ef: DUP2 000002f0: MSTORE 000002f1: PUSH1 0x20 000002f3: ADD 000002f4: PUSH1 0x40 000002f6: MLOAD 000002f7: DUP1 000002f8: SWAP2 000002f9: SUB 000002fa: SWAP1 000002fb: RETURN 000002fc: JUMPDEST 000002fd: CALLVALUE 000002fe: ISZERO 000002ff: PUSH2 0x0307 00000302: JUMPI 00000303: PUSH1 0x00 00000305: DUP1 00000306: REVERT 00000307: JUMPDEST 00000308: PUSH2 0x02e0 0000030b: PUSH2 0x09dc 0000030e: JUMP 0000030f: JUMPDEST 00000310: CALLVALUE 00000311: ISZERO 00000312: PUSH2 0x031a 00000315: JUMPI 00000316: PUSH1 0x00 00000318: DUP1 00000319: REVERT 0000031a: JUMPDEST 0000031b: PUSH2 0x02e0 0000031e: PUSH2 0x09eb 00000321: JUMP 00000322: JUMPDEST 00000323: CALLVALUE 00000324: ISZERO 00000325: PUSH2 0x032d 00000328: JUMPI 00000329: PUSH1 0x00 0000032b: DUP1 0000032c: REVERT 0000032d: JUMPDEST 0000032e: PUSH2 0x02cb 00000331: PUSH1 0x01 00000333: PUSH1 0xa0 00000335: PUSH1 0x02 00000337: EXP 00000338: SUB 00000339: PUSH1 0x04 0000033b: CALLDATALOAD 0000033c: AND 0000033d: PUSH2 0x09fa 00000340: JUMP 00000341: JUMPDEST 00000342: CALLVALUE 00000343: ISZERO 00000344: PUSH2 0x034c 00000347: JUMPI 00000348: PUSH1 0x00 0000034a: DUP1 0000034b: REVERT 0000034c: JUMPDEST 0000034d: PUSH2 0x0354 00000350: PUSH2 0x0a6c 00000353: JUMP 00000354: JUMPDEST 00000355: PUSH1 0x40 00000357: MLOAD 00000358: SWAP1 00000359: DUP2 0000035a: MSTORE 0000035b: PUSH1 0x20 0000035d: ADD 0000035e: PUSH1 0x40 00000360: MLOAD 00000361: DUP1 00000362: SWAP2 00000363: SUB 00000364: SWAP1 00000365: RETURN 00000366: JUMPDEST 00000367: CALLVALUE 00000368: ISZERO 00000369: PUSH2 0x0371 0000036c: JUMPI 0000036d: PUSH1 0x00 0000036f: DUP1 00000370: REVERT 00000371: JUMPDEST 00000372: PUSH2 0x0354 00000375: PUSH1 0x04 00000377: CALLDATALOAD 00000378: PUSH2 0x0a70 0000037b: JUMP 0000037c: JUMPDEST 0000037d: CALLVALUE 0000037e: ISZERO 0000037f: PUSH2 0x0387 00000382: JUMPI 00000383: PUSH1 0x00 00000385: DUP1 00000386: REVERT 00000387: JUMPDEST 00000388: PUSH2 0x0354 0000038b: PUSH2 0x0a85 0000038e: JUMP 0000038f: JUMPDEST 00000390: CALLVALUE 00000391: ISZERO 00000392: PUSH2 0x039a 00000395: JUMPI 00000396: PUSH1 0x00 00000398: DUP1 00000399: REVERT 0000039a: JUMPDEST 0000039b: PUSH2 0x0354 0000039e: PUSH2 0x0a8b 000003a1: JUMP 000003a2: JUMPDEST 000003a3: CALLVALUE 000003a4: ISZERO 000003a5: PUSH2 0x03ad 000003a8: JUMPI 000003a9: PUSH1 0x00 000003ab: DUP1 000003ac: REVERT 000003ad: JUMPDEST 000003ae: PUSH2 0x0354 000003b1: PUSH2 0x0b05 000003b4: JUMP 000003b5: JUMPDEST 000003b6: CALLVALUE 000003b7: ISZERO 000003b8: PUSH2 0x03c0 000003bb: JUMPI 000003bc: PUSH1 0x00 000003be: DUP1 000003bf: REVERT 000003c0: JUMPDEST 000003c1: PUSH2 0x02cb 000003c4: PUSH2 0x0b16 000003c7: JUMP 000003c8: JUMPDEST 000003c9: CALLVALUE 000003ca: ISZERO 000003cb: PUSH2 0x03d3 000003ce: JUMPI 000003cf: PUSH1 0x00 000003d1: DUP1 000003d2: REVERT 000003d3: JUMPDEST 000003d4: PUSH2 0x0354 000003d7: PUSH2 0x0bb1 000003da: JUMP 000003db: JUMPDEST 000003dc: CALLVALUE 000003dd: ISZERO 000003de: PUSH2 0x03e6 000003e1: JUMPI 000003e2: PUSH1 0x00 000003e4: DUP1 000003e5: REVERT 000003e6: JUMPDEST 000003e7: PUSH2 0x02cb 000003ea: PUSH1 0x04 000003ec: CALLDATALOAD 000003ed: PUSH2 0x0bb7 000003f0: JUMP 000003f1: JUMPDEST 000003f2: CALLVALUE 000003f3: ISZERO 000003f4: PUSH2 0x03fc 000003f7: JUMPI 000003f8: PUSH1 0x00 000003fa: DUP1 000003fb: REVERT 000003fc: JUMPDEST 000003fd: PUSH2 0x02cb 00000400: PUSH1 0x04 00000402: CALLDATALOAD 00000403: PUSH1 0x24 00000405: CALLDATALOAD 00000406: PUSH2 0x0e4b 00000409: JUMP 0000040a: JUMPDEST 0000040b: CALLVALUE 0000040c: ISZERO 0000040d: PUSH2 0x0415 00000410: JUMPI 00000411: PUSH1 0x00 00000413: DUP1 00000414: REVERT 00000415: JUMPDEST 00000416: PUSH2 0x0354 00000419: PUSH1 0x04 0000041b: CALLDATALOAD 0000041c: PUSH2 0x1077 0000041f: JUMP 00000420: JUMPDEST 00000421: CALLVALUE 00000422: ISZERO 00000423: PUSH2 0x042b 00000426: JUMPI 00000427: PUSH1 0x00 00000429: DUP1 0000042a: REVERT 0000042b: JUMPDEST 0000042c: PUSH2 0x0354 0000042f: PUSH2 0x10af 00000432: JUMP 00000433: JUMPDEST 00000434: CALLVALUE 00000435: ISZERO 00000436: PUSH2 0x043e 00000439: JUMPI 0000043a: PUSH1 0x00 0000043c: DUP1 0000043d: REVERT 0000043e: JUMPDEST 0000043f: PUSH2 0x0354 00000442: PUSH2 0x10b5 00000445: JUMP 00000446: JUMPDEST 00000447: CALLVALUE 00000448: ISZERO 00000449: PUSH2 0x0451 0000044c: JUMPI 0000044d: PUSH1 0x00 0000044f: DUP1 00000450: REVERT 00000451: JUMPDEST 00000452: PUSH2 0x0354 00000455: PUSH2 0x10bb 00000458: JUMP 00000459: JUMPDEST 0000045a: CALLVALUE 0000045b: ISZERO 0000045c: PUSH2 0x0464 0000045f: JUMPI 00000460: PUSH1 0x00 00000462: DUP1 00000463: REVERT 00000464: JUMPDEST 00000465: PUSH2 0x046c 00000468: PUSH2 0x1149 0000046b: JUMP 0000046c: JUMPDEST 0000046d: PUSH1 0x40 0000046f: MLOAD 00000470: SWAP1 00000471: ISZERO 00000472: ISZERO 00000473: DUP2 00000474: MSTORE 00000475: PUSH1 0x20 00000477: ADD 00000478: PUSH1 0x40 0000047a: MLOAD 0000047b: DUP1 0000047c: SWAP2 0000047d: SUB 0000047e: SWAP1 0000047f: RETURN 00000480: JUMPDEST 00000481: CALLVALUE 00000482: ISZERO 00000483: PUSH2 0x048b 00000486: JUMPI 00000487: PUSH1 0x00 00000489: DUP1 0000048a: REVERT 0000048b: JUMPDEST 0000048c: PUSH2 0x02e0 0000048f: PUSH2 0x1152 00000492: JUMP 00000493: JUMPDEST 00000494: CALLVALUE 00000495: ISZERO 00000496: PUSH2 0x049e 00000499: JUMPI 0000049a: PUSH1 0x00 0000049c: DUP1 0000049d: REVERT 0000049e: JUMPDEST 0000049f: PUSH2 0x0354 000004a2: PUSH2 0x1161 000004a5: JUMP 000004a6: JUMPDEST 000004a7: CALLVALUE 000004a8: ISZERO 000004a9: PUSH2 0x04b1 000004ac: JUMPI 000004ad: PUSH1 0x00 000004af: DUP1 000004b0: REVERT 000004b1: JUMPDEST 000004b2: PUSH2 0x0354 000004b5: PUSH1 0x04 000004b7: CALLDATALOAD 000004b8: PUSH2 0x1167 000004bb: JUMP 000004bc: JUMPDEST 000004bd: CALLVALUE 000004be: ISZERO 000004bf: PUSH2 0x04c7 000004c2: JUMPI 000004c3: PUSH1 0x00 000004c5: DUP1 000004c6: REVERT 000004c7: JUMPDEST 000004c8: PUSH2 0x02cb 000004cb: PUSH1 0x04 000004cd: CALLDATALOAD 000004ce: PUSH1 0x24 000004d0: CALLDATALOAD 000004d1: PUSH2 0x1197 000004d4: JUMP 000004d5: JUMPDEST 000004d6: CALLVALUE 000004d7: ISZERO 000004d8: PUSH2 0x04e0 000004db: JUMPI 000004dc: PUSH1 0x00 000004de: DUP1 000004df: REVERT 000004e0: JUMPDEST 000004e1: PUSH2 0x02cb 000004e4: PUSH1 0x01 000004e6: PUSH1 0xa0 000004e8: PUSH1 0x02 000004ea: EXP 000004eb: SUB 000004ec: PUSH1 0x04 000004ee: CALLDATALOAD 000004ef: AND 000004f0: PUSH2 0x1422 000004f3: JUMP 000004f4: JUMPDEST 000004f5: CALLVALUE 000004f6: ISZERO 000004f7: PUSH2 0x04ff 000004fa: JUMPI 000004fb: PUSH1 0x00 000004fd: DUP1 000004fe: REVERT 000004ff: JUMPDEST 00000500: PUSH2 0x02e0 00000503: PUSH2 0x1494 00000506: JUMP 00000507: JUMPDEST 00000508: CALLVALUE 00000509: ISZERO 0000050a: PUSH2 0x0512 0000050d: JUMPI 0000050e: PUSH1 0x00 00000510: DUP1 00000511: REVERT 00000512: JUMPDEST 00000513: PUSH2 0x02cb 00000516: PUSH1 0x01 00000518: PUSH1 0xa0 0000051a: PUSH1 0x02 0000051c: EXP 0000051d: SUB 0000051e: PUSH1 0x04 00000520: CALLDATALOAD 00000521: AND 00000522: PUSH2 0x14a3 00000525: JUMP 00000526: JUMPDEST 00000527: CALLVALUE 00000528: ISZERO 00000529: PUSH2 0x0531 0000052c: JUMPI 0000052d: PUSH1 0x00 0000052f: DUP1 00000530: REVERT 00000531: JUMPDEST 00000532: PUSH2 0x0354 00000535: PUSH2 0x1548 00000538: JUMP 00000539: JUMPDEST 0000053a: CALLVALUE 0000053b: ISZERO 0000053c: PUSH2 0x0544 0000053f: JUMPI 00000540: PUSH1 0x00 00000542: DUP1 00000543: REVERT 00000544: JUMPDEST 00000545: PUSH2 0x02cb 00000548: PUSH1 0x04 0000054a: CALLDATALOAD 0000054b: PUSH2 0x1636 0000054e: JUMP 0000054f: JUMPDEST 00000550: CALLVALUE 00000551: ISZERO 00000552: PUSH2 0x055a 00000555: JUMPI 00000556: PUSH1 0x00 00000558: DUP1 00000559: REVERT 0000055a: JUMPDEST 0000055b: PUSH2 0x02cb 0000055e: PUSH1 0x01 00000560: PUSH1 0xa0 00000562: PUSH1 0x02 00000564: EXP 00000565: SUB 00000566: PUSH1 0x04 00000568: CALLDATALOAD 00000569: AND 0000056a: PUSH2 0x1793 0000056d: JUMP 0000056e: JUMPDEST 0000056f: CALLVALUE 00000570: ISZERO 00000571: PUSH2 0x0579 00000574: JUMPI 00000575: PUSH1 0x00 00000577: DUP1 00000578: REVERT 00000579: JUMPDEST 0000057a: PUSH2 0x0354 0000057d: PUSH2 0x182e 00000580: JUMP 00000581: JUMPDEST 00000582: CALLVALUE 00000583: ISZERO 00000584: PUSH2 0x058c 00000587: JUMPI 00000588: PUSH1 0x00 0000058a: DUP1 0000058b: REVERT 0000058c: JUMPDEST 0000058d: PUSH2 0x02cb 00000590: PUSH1 0x04 00000592: CALLDATALOAD 00000593: PUSH1 0x24 00000595: CALLDATALOAD 00000596: PUSH2 0x1889 00000599: JUMP 0000059a: JUMPDEST 0000059b: CALLVALUE 0000059c: ISZERO 0000059d: PUSH2 0x05a5 000005a0: JUMPI 000005a1: PUSH1 0x00 000005a3: DUP1 000005a4: REVERT 000005a5: JUMPDEST 000005a6: PUSH2 0x0354 000005a9: PUSH2 0x19d7 000005ac: JUMP 000005ad: JUMPDEST 000005ae: CALLVALUE 000005af: ISZERO 000005b0: PUSH2 0x05b8 000005b3: JUMPI 000005b4: PUSH1 0x00 000005b6: DUP1 000005b7: REVERT 000005b8: JUMPDEST 000005b9: PUSH2 0x02e0 000005bc: PUSH2 0x19dd 000005bf: JUMP 000005c0: JUMPDEST 000005c1: CALLVALUE 000005c2: ISZERO 000005c3: PUSH2 0x05cb 000005c6: JUMPI 000005c7: PUSH1 0x00 000005c9: DUP1 000005ca: REVERT 000005cb: JUMPDEST 000005cc: PUSH2 0x02e0 000005cf: PUSH2 0x19ec 000005d2: JUMP 000005d3: JUMPDEST 000005d4: CALLVALUE 000005d5: ISZERO 000005d6: PUSH2 0x05de 000005d9: JUMPI 000005da: PUSH1 0x00 000005dc: DUP1 000005dd: REVERT 000005de: JUMPDEST 000005df: PUSH2 0x02cb 000005e2: PUSH1 0x04 000005e4: CALLDATALOAD 000005e5: PUSH1 0x24 000005e7: CALLDATALOAD 000005e8: PUSH2 0x19fb 000005eb: JUMP 000005ec: JUMPDEST 000005ed: CALLVALUE 000005ee: ISZERO 000005ef: PUSH2 0x05f7 000005f2: JUMPI 000005f3: PUSH1 0x00 000005f5: DUP1 000005f6: REVERT 000005f7: JUMPDEST 000005f8: PUSH2 0x0354 000005fb: PUSH2 0x1c2c 000005fe: JUMP 000005ff: JUMPDEST 00000600: CALLVALUE 00000601: ISZERO 00000602: PUSH2 0x060a 00000605: JUMPI 00000606: PUSH1 0x00 00000608: DUP1 00000609: REVERT 0000060a: JUMPDEST 0000060b: PUSH2 0x02cb 0000060e: PUSH2 0x1c32 00000611: JUMP 00000612: JUMPDEST 00000613: CALLVALUE 00000614: ISZERO 00000615: PUSH2 0x061d 00000618: JUMPI 00000619: PUSH1 0x00 0000061b: DUP1 0000061c: REVERT 0000061d: JUMPDEST 0000061e: PUSH2 0x02cb 00000621: PUSH1 0x04 00000623: CALLDATALOAD 00000624: PUSH1 0x24 00000626: CALLDATALOAD 00000627: PUSH2 0x1dd6 0000062a: JUMP 0000062b: JUMPDEST 0000062c: CALLVALUE 0000062d: ISZERO 0000062e: PUSH2 0x0636 00000631: JUMPI 00000632: PUSH1 0x00 00000634: DUP1 00000635: REVERT 00000636: JUMPDEST 00000637: PUSH2 0x0354 0000063a: PUSH2 0x1f47 0000063d: JUMP 0000063e: JUMPDEST 0000063f: CALLVALUE 00000640: ISZERO 00000641: PUSH2 0x0649 00000644: JUMPI 00000645: PUSH1 0x00 00000647: DUP1 00000648: REVERT 00000649: JUMPDEST 0000064a: PUSH2 0x02e0 0000064d: PUSH2 0x1f4d 00000650: JUMP 00000651: JUMPDEST 00000652: CALLVALUE 00000653: ISZERO 00000654: PUSH2 0x065c 00000657: JUMPI 00000658: PUSH1 0x00 0000065a: DUP1 0000065b: REVERT 0000065c: JUMPDEST 0000065d: PUSH2 0x046c 00000660: PUSH2 0x1f5c 00000663: JUMP 00000664: JUMPDEST 00000665: CALLVALUE 00000666: ISZERO 00000667: PUSH2 0x066f 0000066a: JUMPI 0000066b: PUSH1 0x00 0000066d: DUP1 0000066e: REVERT 0000066f: JUMPDEST 00000670: PUSH2 0x02cb 00000673: PUSH1 0x04 00000675: CALLDATALOAD 00000676: PUSH1 0x24 00000678: CALLDATALOAD 00000679: PUSH2 0x1f6a 0000067c: JUMP 0000067d: JUMPDEST 0000067e: CALLVALUE 0000067f: ISZERO 00000680: PUSH2 0x0688 00000683: JUMPI 00000684: PUSH1 0x00 00000686: DUP1 00000687: REVERT 00000688: JUMPDEST 00000689: PUSH2 0x02cb 0000068c: PUSH1 0x04 0000068e: CALLDATALOAD 0000068f: PUSH2 0x20ad 00000692: JUMP 00000693: JUMPDEST 00000694: CALLVALUE 00000695: ISZERO 00000696: PUSH2 0x069e 00000699: JUMPI 0000069a: PUSH1 0x00 0000069c: DUP1 0000069d: REVERT 0000069e: JUMPDEST 0000069f: PUSH2 0x02cb 000006a2: PUSH1 0x04 000006a4: CALLDATALOAD 000006a5: PUSH1 0x01 000006a7: PUSH1 0xa0 000006a9: PUSH1 0x02 000006ab: EXP 000006ac: SUB 000006ad: PUSH1 0x24 000006af: CALLDATALOAD 000006b0: AND 000006b1: PUSH2 0x21ac 000006b4: JUMP 000006b5: JUMPDEST 000006b6: CALLVALUE 000006b7: ISZERO 000006b8: PUSH2 0x06c0 000006bb: JUMPI 000006bc: PUSH1 0x00 000006be: DUP1 000006bf: REVERT 000006c0: JUMPDEST 000006c1: PUSH2 0x02e0 000006c4: PUSH2 0x226e 000006c7: JUMP 000006c8: JUMPDEST 000006c9: CALLVALUE 000006ca: ISZERO 000006cb: PUSH2 0x06d3 000006ce: JUMPI 000006cf: PUSH1 0x00 000006d1: DUP1 000006d2: REVERT 000006d3: JUMPDEST 000006d4: PUSH2 0x0354 000006d7: PUSH2 0x227d 000006da: JUMP 000006db: JUMPDEST 000006dc: CALLVALUE 000006dd: ISZERO 000006de: PUSH2 0x06e6 000006e1: JUMPI 000006e2: PUSH1 0x00 000006e4: DUP1 000006e5: REVERT 000006e6: JUMPDEST 000006e7: PUSH2 0x0354 000006ea: PUSH2 0x2283 000006ed: JUMP 000006ee: JUMPDEST 000006ef: CALLVALUE 000006f0: ISZERO 000006f1: PUSH2 0x06f9 000006f4: JUMPI 000006f5: PUSH1 0x00 000006f7: DUP1 000006f8: REVERT 000006f9: JUMPDEST 000006fa: PUSH2 0x02cb 000006fd: PUSH1 0x01 000006ff: PUSH1 0xa0 00000701: PUSH1 0x02 00000703: EXP 00000704: SUB 00000705: PUSH1 0x04 00000707: CALLDATALOAD 00000708: AND 00000709: PUSH2 0x2294 0000070c: JUMP 0000070d: JUMPDEST 0000070e: CALLVALUE 0000070f: ISZERO 00000710: PUSH2 0x0718 00000713: JUMPI 00000714: PUSH1 0x00 00000716: DUP1 00000717: REVERT 00000718: JUMPDEST 00000719: PUSH2 0x02e0 0000071c: PUSH2 0x232f 0000071f: JUMP 00000720: JUMPDEST 00000721: CALLVALUE 00000722: ISZERO 00000723: PUSH2 0x072b 00000726: JUMPI 00000727: PUSH1 0x00 00000729: DUP1 0000072a: REVERT 0000072b: JUMPDEST 0000072c: PUSH2 0x02cb 0000072f: PUSH1 0x01 00000731: PUSH1 0xa0 00000733: PUSH1 0x02 00000735: EXP 00000736: SUB 00000737: PUSH1 0x04 00000739: CALLDATALOAD 0000073a: AND 0000073b: PUSH2 0x233e 0000073e: JUMP 0000073f: JUMPDEST 00000740: CALLVALUE 00000741: ISZERO 00000742: PUSH2 0x074a 00000745: JUMPI 00000746: PUSH1 0x00 00000748: DUP1 00000749: REVERT 0000074a: JUMPDEST 0000074b: PUSH2 0x0354 0000074e: PUSH2 0x23d9 00000751: JUMP 00000752: JUMPDEST 00000753: CALLVALUE 00000754: ISZERO 00000755: PUSH2 0x075d 00000758: JUMPI 00000759: PUSH1 0x00 0000075b: DUP1 0000075c: REVERT 0000075d: JUMPDEST 0000075e: PUSH2 0x02e0 00000761: PUSH1 0x04 00000763: CALLDATALOAD 00000764: PUSH2 0x23df 00000767: JUMP 00000768: JUMPDEST 00000769: CALLVALUE 0000076a: ISZERO 0000076b: PUSH2 0x0773 0000076e: JUMPI 0000076f: PUSH1 0x00 00000771: DUP1 00000772: REVERT 00000773: JUMPDEST 00000774: PUSH2 0x0354 00000777: PUSH2 0x23fa 0000077a: JUMP 0000077b: JUMPDEST 0000077c: CALLVALUE 0000077d: ISZERO 0000077e: PUSH2 0x0786 00000781: JUMPI 00000782: PUSH1 0x00 00000784: DUP1 00000785: REVERT 00000786: JUMPDEST 00000787: PUSH2 0x0354 0000078a: PUSH1 0x04 0000078c: CALLDATALOAD 0000078d: PUSH2 0x240a 00000790: JUMP 00000791: JUMPDEST 00000792: CALLVALUE 00000793: ISZERO 00000794: PUSH2 0x079c 00000797: JUMPI 00000798: PUSH1 0x00 0000079a: DUP1 0000079b: REVERT 0000079c: JUMPDEST 0000079d: PUSH2 0x046c 000007a0: PUSH1 0x04 000007a2: CALLDATALOAD 000007a3: PUSH2 0x2423 000007a6: JUMP 000007a7: JUMPDEST 000007a8: CALLVALUE 000007a9: ISZERO 000007aa: PUSH2 0x07b2 000007ad: JUMPI 000007ae: PUSH1 0x00 000007b0: DUP1 000007b1: REVERT 000007b2: JUMPDEST 000007b3: PUSH2 0x02e0 000007b6: PUSH2 0x24ca 000007b9: JUMP 000007ba: JUMPDEST 000007bb: CALLVALUE 000007bc: ISZERO 000007bd: PUSH2 0x07c5 000007c0: JUMPI 000007c1: PUSH1 0x00 000007c3: DUP1 000007c4: REVERT 000007c5: JUMPDEST 000007c6: PUSH2 0x0354 000007c9: PUSH1 0x04 000007cb: CALLDATALOAD 000007cc: PUSH2 0x24d9 000007cf: JUMP 000007d0: JUMPDEST 000007d1: CALLVALUE 000007d2: ISZERO 000007d3: PUSH2 0x07db 000007d6: JUMPI 000007d7: PUSH1 0x00 000007d9: DUP1 000007da: REVERT 000007db: JUMPDEST 000007dc: PUSH2 0x0354 000007df: PUSH2 0x24f7 000007e2: JUMP 000007e3: JUMPDEST 000007e4: CALLVALUE 000007e5: ISZERO 000007e6: PUSH2 0x07ee 000007e9: JUMPI 000007ea: PUSH1 0x00 000007ec: DUP1 000007ed: REVERT 000007ee: JUMPDEST 000007ef: PUSH2 0x02e0 000007f2: PUSH2 0x25d5 000007f5: JUMP 000007f6: JUMPDEST 000007f7: CALLVALUE 000007f8: ISZERO 000007f9: PUSH2 0x0801 000007fc: JUMPI 000007fd: PUSH1 0x00 000007ff: DUP1 00000800: REVERT 00000801: JUMPDEST 00000802: PUSH2 0x080c 00000805: PUSH1 0x04 00000807: CALLDATALOAD 00000808: PUSH2 0x25e4 0000080b: JUMP 0000080c: JUMPDEST 0000080d: PUSH1 0x40 0000080f: MLOAD 00000810: DUP1 00000811: DUP6 00000812: PUSH1 0x01 00000814: PUSH1 0xa0 00000816: PUSH1 0x02 00000818: EXP 00000819: SUB 0000081a: AND 0000081b: PUSH1 0x01 0000081d: PUSH1 0xa0 0000081f: PUSH1 0x02 00000821: EXP 00000822: SUB 00000823: AND 00000824: DUP2 00000825: MSTORE 00000826: PUSH1 0x20 00000828: ADD 00000829: DUP5 0000082a: DUP2 0000082b: MSTORE 0000082c: PUSH1 0x20 0000082e: ADD 0000082f: DUP4 00000830: DUP2 00000831: MSTORE 00000832: PUSH1 0x20 00000834: ADD 00000835: DUP3 00000836: DUP2 00000837: MSTORE 00000838: PUSH1 0x20 0000083a: ADD 0000083b: SWAP5 0000083c: POP 0000083d: POP 0000083e: POP 0000083f: POP 00000840: POP 00000841: PUSH1 0x40 00000843: MLOAD 00000844: DUP1 00000845: SWAP2 00000846: SUB 00000847: SWAP1 00000848: RETURN 00000849: JUMPDEST 0000084a: PUSH1 0x04 0000084c: CALLDATALOAD 0000084d: PUSH1 0x24 0000084f: CALLDATALOAD 00000850: DUP1 00000851: DUP3 00000852: CALLER 00000853: PUSH1 0x01 00000855: PUSH1 0xa0 00000857: PUSH1 0x02 00000859: EXP 0000085a: SUB 0000085b: AND 0000085c: PUSH1 0x00 0000085e: DUP1 0000085f: CALLDATALOAD 00000860: PUSH1 0x01 00000862: PUSH1 0xe0 00000864: PUSH1 0x02 00000866: EXP 00000867: SUB 00000868: NOT 00000869: AND 0000086a: SWAP1 0000086b: CALLVALUE 0000086c: SWAP1 0000086d: CALLDATASIZE 0000086e: PUSH1 0x40 00000870: MLOAD 00000871: DUP4 00000872: DUP2 00000873: MSTORE 00000874: PUSH1 0x40 00000876: PUSH1 0x20 00000878: DUP3 00000879: ADD 0000087a: DUP2 0000087b: DUP2 0000087c: MSTORE 0000087d: SWAP1 0000087e: DUP3 0000087f: ADD 00000880: DUP4 00000881: SWAP1 00000882: MSTORE 00000883: PUSH1 0x60 00000885: DUP3 00000886: ADD 00000887: DUP5 00000888: DUP5 00000889: DUP1 0000088a: DUP3 0000088b: DUP5 0000088c: CALLDATACOPY 0000088d: DUP3 0000088e: ADD 0000088f: SWAP2 00000890: POP 00000891: POP 00000892: SWAP5 00000893: POP 00000894: POP 00000895: POP 00000896: POP 00000897: POP 00000898: PUSH1 0x40 0000089a: MLOAD 0000089b: DUP1 0000089c: SWAP2 0000089d: SUB 0000089e: SWAP1 0000089f: LOG4 000008a0: PUSH1 0x12 000008a2: SLOAD 000008a3: PUSH1 0xff 000008a5: AND 000008a6: ISZERO 000008a7: PUSH2 0x08af 000008aa: JUMPI 000008ab: PUSH1 0x00 000008ad: DUP1 000008ae: REVERT 000008af: JUMPDEST 000008b0: PUSH1 0x00 000008b2: PUSH2 0x08ba 000008b5: DUP5 000008b6: PUSH2 0x240a 000008b9: JUMP 000008ba: JUMPDEST 000008bb: GT 000008bc: PUSH2 0x08c4 000008bf: JUMPI 000008c0: PUSH1 0x00 000008c2: DUP1 000008c3: REVERT 000008c4: JUMPDEST 000008c5: PUSH1 0x05 000008c7: SLOAD 000008c8: PUSH1 0x01 000008ca: PUSH1 0xa0 000008cc: PUSH1 0x02 000008ce: EXP 000008cf: SUB 000008d0: AND 000008d1: PUSH4 0x23b872dd 000008d6: CALLER 000008d7: ADDRESS 000008d8: PUSH2 0x08e0 000008db: DUP8 000008dc: PUSH2 0x240a 000008df: JUMP 000008e0: JUMPDEST 000008e1: PUSH1 0x00 000008e3: PUSH1 0x40 000008e5: MLOAD 000008e6: PUSH1 0x20 000008e8: ADD 000008e9: MSTORE 000008ea: PUSH1 0x40 000008ec: MLOAD 000008ed: PUSH1 0xe0 000008ef: PUSH1 0x02 000008f1: EXP 000008f2: PUSH4 0xffffffff 000008f7: DUP7 000008f8: AND 000008f9: MUL 000008fa: DUP2 000008fb: MSTORE 000008fc: PUSH1 0x01 000008fe: PUSH1 0xa0 00000900: PUSH1 0x02 00000902: EXP 00000903: SUB 00000904: SWAP4 00000905: DUP5 00000906: AND 00000907: PUSH1 0x04 00000909: DUP3 0000090a: ADD 0000090b: MSTORE 0000090c: SWAP2 0000090d: SWAP1 0000090e: SWAP3 0000090f: AND 00000910: PUSH1 0x24 00000912: DUP3 00000913: ADD 00000914: MSTORE 00000915: PUSH1 0x44 00000917: DUP2 00000918: ADD 00000919: SWAP2 0000091a: SWAP1 0000091b: SWAP2 0000091c: MSTORE 0000091d: PUSH1 0x64 0000091f: ADD 00000920: PUSH1 0x20 00000922: PUSH1 0x40 00000924: MLOAD 00000925: DUP1 00000926: DUP4 00000927: SUB 00000928: DUP2 00000929: PUSH1 0x00 0000092b: DUP8 0000092c: DUP1 0000092d: EXTCODESIZE 0000092e: ISZERO 0000092f: ISZERO 00000930: PUSH2 0x0938 00000933: JUMPI 00000934: PUSH1 0x00 00000936: DUP1 00000937: REVERT 00000938: JUMPDEST 00000939: PUSH2 0x02c6 0000093c: GAS 0000093d: SUB 0000093e: CALL 0000093f: ISZERO 00000940: ISZERO 00000941: PUSH2 0x0949 00000944: JUMPI 00000945: PUSH1 0x00 00000947: DUP1 00000948: REVERT 00000949: JUMPDEST 0000094a: POP 0000094b: POP 0000094c: POP 0000094d: PUSH1 0x40 0000094f: MLOAD 00000950: DUP1 00000951: MLOAD 00000952: SWAP1 00000953: POP 00000954: ISZERO 00000955: ISZERO 00000956: PUSH2 0x095e 00000959: JUMPI 0000095a: PUSH1 0x00 0000095c: DUP1 0000095d: REVERT 0000095e: JUMPDEST 0000095f: PUSH1 0x04 00000961: SLOAD 00000962: PUSH1 0x01 00000964: PUSH1 0xa0 00000966: PUSH1 0x02 00000968: EXP 00000969: SUB 0000096a: AND 0000096b: PUSH4 0x40c10f19 00000970: CALLER 00000971: DUP6 00000972: PUSH1 0x40 00000974: MLOAD 00000975: PUSH1 0xe0 00000977: PUSH1 0x02 00000979: EXP 0000097a: PUSH4 0xffffffff 0000097f: DUP6 00000980: AND 00000981: MUL 00000982: DUP2 00000983: MSTORE 00000984: PUSH1 0x01 00000986: PUSH1 0xa0 00000988: PUSH1 0x02 0000098a: EXP 0000098b: SUB 0000098c: SWAP1 0000098d: SWAP3 0000098e: AND 0000098f: PUSH1 0x04 00000991: DUP4 00000992: ADD 00000993: MSTORE 00000994: PUSH1 0x24 00000996: DUP3 00000997: ADD 00000998: MSTORE 00000999: PUSH1 0x44 0000099b: ADD 0000099c: PUSH1 0x00 0000099e: PUSH1 0x40 000009a0: MLOAD 000009a1: DUP1 000009a2: DUP4 000009a3: SUB 000009a4: DUP2 000009a5: PUSH1 0x00 000009a7: DUP8 000009a8: DUP1 000009a9: EXTCODESIZE 000009aa: ISZERO 000009ab: ISZERO 000009ac: PUSH2 0x09b4 000009af: JUMPI 000009b0: PUSH1 0x00 000009b2: DUP1 000009b3: REVERT 000009b4: JUMPDEST 000009b5: PUSH2 0x02c6 000009b8: GAS 000009b9: SUB 000009ba: CALL 000009bb: ISZERO 000009bc: ISZERO 000009bd: PUSH2 0x09c5 000009c0: JUMPI 000009c1: PUSH1 0x00 000009c3: DUP1 000009c4: REVERT 000009c5: JUMPDEST 000009c6: POP 000009c7: POP 000009c8: POP 000009c9: POP 000009ca: POP 000009cb: POP 000009cc: JUMP 000009cd: JUMPDEST 000009ce: PUSH1 0x03 000009d0: SLOAD 000009d1: PUSH1 0x01 000009d3: PUSH1 0xa0 000009d5: PUSH1 0x02 000009d7: EXP 000009d8: SUB 000009d9: AND 000009da: DUP2 000009db: JUMP 000009dc: JUMPDEST 000009dd: PUSH1 0x04 000009df: SLOAD 000009e0: PUSH1 0x01 000009e2: PUSH1 0xa0 000009e4: PUSH1 0x02 000009e6: EXP 000009e7: SUB 000009e8: AND 000009e9: DUP2 000009ea: JUMP 000009eb: JUMPDEST 000009ec: PUSH1 0x06 000009ee: SLOAD 000009ef: PUSH1 0x01 000009f1: PUSH1 0xa0 000009f3: PUSH1 0x02 000009f5: EXP 000009f6: SUB 000009f7: AND 000009f8: DUP2 000009f9: JUMP 000009fa: JUMPDEST 000009fb: PUSH2 0x0a10 000009fe: CALLER 000009ff: PUSH1 0x00 00000a01: CALLDATALOAD 00000a02: PUSH1 0x01 00000a04: PUSH1 0xe0 00000a06: PUSH1 0x02 00000a08: EXP 00000a09: SUB 00000a0a: NOT 00000a0b: AND 00000a0c: PUSH2 0x2615 00000a0f: JUMP 00000a10: JUMPDEST 00000a11: ISZERO 00000a12: ISZERO 00000a13: PUSH2 0x0a1b 00000a16: JUMPI 00000a17: PUSH1 0x00 00000a19: DUP1 00000a1a: REVERT 00000a1b: JUMPDEST 00000a1c: PUSH1 0x01 00000a1e: DUP1 00000a1f: SLOAD 00000a20: PUSH1 0x01 00000a22: PUSH1 0xa0 00000a24: PUSH1 0x02 00000a26: EXP 00000a27: SUB 00000a28: NOT 00000a29: AND 00000a2a: PUSH1 0x01 00000a2c: PUSH1 0xa0 00000a2e: PUSH1 0x02 00000a30: EXP 00000a31: SUB 00000a32: DUP4 00000a33: DUP2 00000a34: AND 00000a35: SWAP2 00000a36: SWAP1 00000a37: SWAP2 00000a38: OR 00000a39: SWAP2 00000a3a: DUP3 00000a3b: SWAP1 00000a3c: SSTORE 00000a3d: AND 00000a3e: PUSH32 0xce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed94 00000a5f: PUSH1 0x40 00000a61: MLOAD 00000a62: PUSH1 0x40 00000a64: MLOAD 00000a65: DUP1 00000a66: SWAP2 00000a67: SUB 00000a68: SWAP1 00000a69: LOG2 00000a6a: POP 00000a6b: JUMP 00000a6c: JUMPDEST 00000a6d: TIMESTAMP 00000a6e: SWAP1 00000a6f: JUMP 00000a70: JUMPDEST 00000a71: PUSH1 0x00 00000a73: SWAP1 00000a74: DUP2 00000a75: MSTORE 00000a76: PUSH1 0x19 00000a78: PUSH1 0x20 00000a7a: MSTORE 00000a7b: PUSH1 0x40 00000a7d: SWAP1 00000a7e: KECCAK256 00000a7f: PUSH1 0x01 00000a81: ADD 00000a82: SLOAD 00000a83: SWAP1 00000a84: JUMP 00000a85: JUMPDEST 00000a86: PUSH1 0x14 00000a88: SLOAD 00000a89: DUP2 00000a8a: JUMP 00000a8b: JUMPDEST 00000a8c: PUSH1 0x04 00000a8e: SLOAD 00000a8f: PUSH1 0x00 00000a91: SWAP1 00000a92: PUSH1 0x01 00000a94: PUSH1 0xa0 00000a96: PUSH1 0x02 00000a98: EXP 00000a99: SUB 00000a9a: AND 00000a9b: PUSH4 0x70a08231 00000aa0: ADDRESS 00000aa1: DUP4 00000aa2: PUSH1 0x40 00000aa4: MLOAD 00000aa5: PUSH1 0x20 00000aa7: ADD 00000aa8: MSTORE 00000aa9: PUSH1 0x40 00000aab: MLOAD 00000aac: PUSH1 0xe0 00000aae: PUSH1 0x02 00000ab0: EXP 00000ab1: PUSH4 0xffffffff 00000ab6: DUP5 00000ab7: AND 00000ab8: MUL 00000ab9: DUP2 00000aba: MSTORE 00000abb: PUSH1 0x01 00000abd: PUSH1 0xa0 00000abf: PUSH1 0x02 00000ac1: EXP 00000ac2: SUB 00000ac3: SWAP1 00000ac4: SWAP2 00000ac5: AND 00000ac6: PUSH1 0x04 00000ac8: DUP3 00000ac9: ADD 00000aca: MSTORE 00000acb: PUSH1 0x24 00000acd: ADD 00000ace: PUSH1 0x20 00000ad0: PUSH1 0x40 00000ad2: MLOAD 00000ad3: DUP1 00000ad4: DUP4 00000ad5: SUB 00000ad6: DUP2 00000ad7: PUSH1 0x00 00000ad9: DUP8 00000ada: DUP1 00000adb: EXTCODESIZE 00000adc: ISZERO 00000add: ISZERO 00000ade: PUSH2 0x0ae6 00000ae1: JUMPI 00000ae2: PUSH1 0x00 00000ae4: DUP1 00000ae5: REVERT 00000ae6: JUMPDEST 00000ae7: PUSH2 0x02c6 00000aea: GAS 00000aeb: SUB 00000aec: CALL 00000aed: ISZERO 00000aee: ISZERO 00000aef: PUSH2 0x0af7 00000af2: JUMPI 00000af3: PUSH1 0x00 00000af5: DUP1 00000af6: REVERT 00000af7: JUMPDEST 00000af8: POP 00000af9: POP 00000afa: POP 00000afb: PUSH1 0x40 00000afd: MLOAD 00000afe: DUP1 00000aff: MLOAD 00000b00: SWAP2 00000b01: POP 00000b02: POP 00000b03: SWAP1 00000b04: JUMP 00000b05: JUMPDEST 00000b06: PUSH1 0x00 00000b08: PUSH2 0x0b0f 00000b0b: PUSH2 0x1c32 00000b0e: JUMP 00000b0f: JUMPDEST 00000b10: POP 00000b11: PUSH1 0x16 00000b13: SLOAD 00000b14: SWAP1 00000b15: JUMP 00000b16: JUMPDEST 00000b17: PUSH1 0x04 00000b19: CALLDATALOAD 00000b1a: PUSH1 0x24 00000b1c: CALLDATALOAD 00000b1d: DUP1 00000b1e: DUP3 00000b1f: CALLER 00000b20: PUSH1 0x01 00000b22: PUSH1 0xa0 00000b24: PUSH1 0x02 00000b26: EXP 00000b27: SUB 00000b28: AND 00000b29: PUSH1 0x00 00000b2b: DUP1 00000b2c: CALLDATALOAD 00000b2d: PUSH1 0x01 00000b2f: PUSH1 0xe0 00000b31: PUSH1 0x02 00000b33: EXP 00000b34: SUB 00000b35: NOT 00000b36: AND 00000b37: SWAP1 00000b38: CALLVALUE 00000b39: SWAP1 00000b3a: CALLDATASIZE 00000b3b: PUSH1 0x40 00000b3d: MLOAD 00000b3e: DUP4 00000b3f: DUP2 00000b40: MSTORE 00000b41: PUSH1 0x40 00000b43: PUSH1 0x20 00000b45: DUP3 00000b46: ADD 00000b47: DUP2 00000b48: DUP2 00000b49: MSTORE 00000b4a: SWAP1 00000b4b: DUP3 00000b4c: ADD 00000b4d: DUP4 00000b4e: SWAP1 00000b4f: MSTORE 00000b50: PUSH1 0x60 00000b52: DUP3 00000b53: ADD 00000b54: DUP5 00000b55: DUP5 00000b56: DUP1 00000b57: DUP3 00000b58: DUP5 00000b59: CALLDATACOPY 00000b5a: DUP3 00000b5b: ADD 00000b5c: SWAP2 00000b5d: POP 00000b5e: POP 00000b5f: SWAP5 00000b60: POP 00000b61: POP 00000b62: POP 00000b63: POP 00000b64: POP 00000b65: PUSH1 0x40 00000b67: MLOAD 00000b68: DUP1 00000b69: SWAP2 00000b6a: SUB 00000b6b: SWAP1 00000b6c: LOG4 00000b6d: PUSH2 0x0b82 00000b70: CALLER 00000b71: PUSH1 0x00 00000b73: CALLDATALOAD 00000b74: PUSH1 0x01 00000b76: PUSH1 0xe0 00000b78: PUSH1 0x02 00000b7a: EXP 00000b7b: SUB 00000b7c: NOT 00000b7d: AND 00000b7e: PUSH2 0x2615 00000b81: JUMP 00000b82: JUMPDEST 00000b83: ISZERO 00000b84: ISZERO 00000b85: PUSH2 0x0b8d 00000b88: JUMPI 00000b89: PUSH1 0x00 00000b8b: DUP1 00000b8c: REVERT 00000b8d: JUMPDEST 00000b8e: PUSH1 0x12 00000b90: SLOAD 00000b91: PUSH1 0xff 00000b93: AND 00000b94: ISZERO 00000b95: ISZERO 00000b96: PUSH2 0x0b9e 00000b99: JUMPI 00000b9a: PUSH1 0x00 00000b9c: DUP1 00000b9d: REVERT 00000b9e: JUMPDEST 00000b9f: POP 00000ba0: POP 00000ba1: PUSH1 0x12 00000ba3: DUP1 00000ba4: SLOAD 00000ba5: PUSH2 0xff00 00000ba8: NOT 00000ba9: AND 00000baa: PUSH2 0x0100 00000bad: OR 00000bae: SWAP1 00000baf: SSTORE 00000bb0: JUMP 00000bb1: JUMPDEST 00000bb2: PUSH1 0x0d 00000bb4: SLOAD 00000bb5: DUP2 00000bb6: JUMP 00000bb7: JUMPDEST 00000bb8: PUSH1 0x00 00000bba: DUP1 00000bbb: PUSH1 0x04 00000bbd: CALLDATALOAD 00000bbe: PUSH1 0x24 00000bc0: CALLDATALOAD 00000bc1: DUP1 00000bc2: DUP3 00000bc3: PUSH1 0x01 00000bc5: PUSH1 0xa0 00000bc7: PUSH1 0x02 00000bc9: EXP 00000bca: SUB 00000bcb: CALLER 00000bcc: AND 00000bcd: PUSH1 0x01 00000bcf: PUSH1 0xe0 00000bd1: PUSH1 0x02 00000bd3: EXP 00000bd4: SUB 00000bd5: NOT 00000bd6: DUP7 00000bd7: CALLDATALOAD 00000bd8: AND 00000bd9: CALLVALUE 00000bda: DUP8 00000bdb: CALLDATASIZE 00000bdc: PUSH1 0x40 00000bde: MLOAD 00000bdf: DUP4 00000be0: DUP2 00000be1: MSTORE 00000be2: PUSH1 0x40 00000be4: PUSH1 0x20 00000be6: DUP3 00000be7: ADD 00000be8: DUP2 00000be9: DUP2 00000bea: MSTORE 00000beb: SWAP1 00000bec: DUP3 00000bed: ADD 00000bee: DUP4 00000bef: SWAP1 00000bf0: MSTORE 00000bf1: PUSH1 0x60 00000bf3: DUP3 00000bf4: ADD 00000bf5: DUP5 00000bf6: DUP5 00000bf7: DUP1 00000bf8: DUP3 00000bf9: DUP5 00000bfa: CALLDATACOPY 00000bfb: DUP3 00000bfc: ADD 00000bfd: SWAP2 00000bfe: POP 00000bff: POP 00000c00: SWAP5 00000c01: POP 00000c02: POP 00000c03: POP 00000c04: POP 00000c05: POP 00000c06: PUSH1 0x40 00000c08: MLOAD 00000c09: DUP1 00000c0a: SWAP2 00000c0b: SUB 00000c0c: SWAP1 00000c0d: LOG4 00000c0e: PUSH2 0x0c16 00000c11: DUP6 00000c12: PUSH2 0x2423 00000c15: JUMP 00000c16: JUMPDEST 00000c17: ISZERO 00000c18: DUP1 00000c19: PUSH2 0x0c24 00000c1c: JUMPI 00000c1d: POP 00000c1e: PUSH1 0x12 00000c20: SLOAD 00000c21: PUSH1 0xff 00000c23: AND 00000c24: JUMPDEST 00000c25: ISZERO 00000c26: ISZERO 00000c27: PUSH2 0x0c2f 00000c2a: JUMPI 00000c2b: PUSH1 0x00 00000c2d: DUP1 00000c2e: REVERT 00000c2f: JUMPDEST 00000c30: PUSH2 0x0c38 00000c33: DUP6 00000c34: PUSH2 0x24d9 00000c37: JUMP 00000c38: JUMPDEST 00000c39: PUSH1 0x03 00000c3b: SLOAD 00000c3c: PUSH1 0x0a 00000c3e: SLOAD 00000c3f: SWAP2 00000c40: SWAP6 00000c41: POP 00000c42: PUSH1 0x01 00000c44: PUSH1 0xa0 00000c46: PUSH1 0x02 00000c48: EXP 00000c49: SUB 00000c4a: SWAP1 00000c4b: DUP2 00000c4c: AND 00000c4d: SWAP2 00000c4e: PUSH4 0x40c10f19 00000c53: SWAP2 00000c54: AND 00000c55: DUP7 00000c56: PUSH1 0x40 00000c58: MLOAD 00000c59: PUSH1 0xe0 00000c5b: PUSH1 0x02 00000c5d: EXP 00000c5e: PUSH4 0xffffffff 00000c63: DUP6 00000c64: AND 00000c65: MUL 00000c66: DUP2 00000c67: MSTORE 00000c68: PUSH1 0x01 00000c6a: PUSH1 0xa0 00000c6c: PUSH1 0x02 00000c6e: EXP 00000c6f: SUB 00000c70: SWAP1 00000c71: SWAP3 00000c72: AND 00000c73: PUSH1 0x04 00000c75: DUP4 00000c76: ADD 00000c77: MSTORE 00000c78: PUSH1 0x24 00000c7a: DUP3 00000c7b: ADD 00000c7c: MSTORE 00000c7d: PUSH1 0x44 00000c7f: ADD 00000c80: PUSH1 0x00 00000c82: PUSH1 0x40 00000c84: MLOAD 00000c85: DUP1 00000c86: DUP4 00000c87: SUB 00000c88: DUP2 00000c89: PUSH1 0x00 00000c8b: DUP8 00000c8c: DUP1 00000c8d: EXTCODESIZE 00000c8e: ISZERO 00000c8f: ISZERO 00000c90: PUSH2 0x0c98 00000c93: JUMPI 00000c94: PUSH1 0x00 00000c96: DUP1 00000c97: REVERT 00000c98: JUMPDEST 00000c99: PUSH2 0x02c6 00000c9c: GAS 00000c9d: SUB 00000c9e: CALL 00000c9f: ISZERO 00000ca0: ISZERO 00000ca1: PUSH2 0x0ca9 00000ca4: JUMPI 00000ca5: PUSH1 0x00 00000ca7: DUP1 00000ca8: REVERT 00000ca9: JUMPDEST 00000caa: POP 00000cab: POP 00000cac: PUSH1 0x17 00000cae: SLOAD 00000caf: PUSH1 0x00 00000cb1: DUP8 00000cb2: DUP2 00000cb3: MSTORE 00000cb4: PUSH1 0x19 00000cb6: PUSH1 0x20 00000cb8: MSTORE 00000cb9: PUSH1 0x40 00000cbb: SWAP1 00000cbc: KECCAK256 00000cbd: PUSH1 0x02 00000cbf: ADD 00000cc0: SLOAD 00000cc1: PUSH2 0x0cca 00000cc4: SWAP3 00000cc5: POP 00000cc6: PUSH2 0x270b 00000cc9: JUMP 00000cca: JUMPDEST 00000ccb: PUSH1 0x17 00000ccd: SSTORE 00000cce: PUSH1 0x00 00000cd0: DUP6 00000cd1: DUP2 00000cd2: MSTORE 00000cd3: PUSH1 0x19 00000cd5: PUSH1 0x20 00000cd7: MSTORE 00000cd8: PUSH1 0x40 00000cda: DUP2 00000cdb: KECCAK256 00000cdc: PUSH1 0x02 00000cde: DUP2 00000cdf: ADD 00000ce0: DUP3 00000ce1: SWAP1 00000ce2: SSTORE 00000ce3: PUSH1 0x03 00000ce5: ADD 00000ce6: SSTORE 00000ce7: PUSH1 0x0c 00000ce9: SLOAD 00000cea: PUSH2 0x0d71 00000ced: SWAP1 00000cee: PUSH2 0x0d64 00000cf1: SWAP1 00000cf2: PUSH2 0x0cfc 00000cf5: SWAP1 00000cf6: DUP8 00000cf7: SWAP1 00000cf8: PUSH2 0x271b 00000cfb: JUMP 00000cfc: JUMPDEST 00000cfd: PUSH1 0x07 00000cff: SLOAD 00000d00: PUSH1 0x01 00000d02: PUSH1 0xa0 00000d04: PUSH1 0x02 00000d06: EXP 00000d07: SUB 00000d08: AND 00000d09: PUSH4 0x495d32cb 00000d0e: PUSH1 0x00 00000d10: PUSH1 0x40 00000d12: MLOAD 00000d13: PUSH1 0x20 00000d15: ADD 00000d16: MSTORE 00000d17: PUSH1 0x40 00000d19: MLOAD 00000d1a: DUP2 00000d1b: PUSH4 0xffffffff 00000d20: AND 00000d21: PUSH1 0xe0 00000d23: PUSH1 0x02 00000d25: EXP 00000d26: MUL 00000d27: DUP2 00000d28: MSTORE 00000d29: PUSH1 0x04 00000d2b: ADD 00000d2c: PUSH1 0x20 00000d2e: PUSH1 0x40 00000d30: MLOAD 00000d31: DUP1 00000d32: DUP4 00000d33: SUB 00000d34: DUP2 00000d35: PUSH1 0x00 00000d37: DUP8 00000d38: DUP1 00000d39: EXTCODESIZE 00000d3a: ISZERO 00000d3b: ISZERO 00000d3c: PUSH2 0x0d44 00000d3f: JUMPI 00000d40: PUSH1 0x00 00000d42: DUP1 00000d43: REVERT 00000d44: JUMPDEST 00000d45: PUSH2 0x02c6 00000d48: GAS 00000d49: SUB 00000d4a: CALL 00000d4b: ISZERO 00000d4c: ISZERO 00000d4d: PUSH2 0x0d55 00000d50: JUMPI 00000d51: PUSH1 0x00 00000d53: DUP1 00000d54: REVERT 00000d55: JUMPDEST 00000d56: POP 00000d57: POP 00000d58: POP 00000d59: PUSH1 0x40 00000d5b: MLOAD 00000d5c: DUP1 00000d5d: MLOAD 00000d5e: SWAP1 00000d5f: POP 00000d60: PUSH2 0x271b 00000d63: JUMP 00000d64: JUMPDEST 00000d65: PUSH2 0x0d6c 00000d68: PUSH2 0x10bb 00000d6b: JUMP 00000d6c: JUMPDEST 00000d6d: PUSH2 0x275e 00000d70: JUMP 00000d71: JUMPDEST 00000d72: PUSH1 0x00 00000d74: DUP7 00000d75: DUP2 00000d76: MSTORE 00000d77: PUSH1 0x19 00000d79: PUSH1 0x20 00000d7b: MSTORE 00000d7c: PUSH1 0x40 00000d7e: SWAP1 00000d7f: KECCAK256 00000d80: PUSH1 0x01 00000d82: ADD 00000d83: SLOAD 00000d84: SWAP1 00000d85: SWAP4 00000d86: POP 00000d87: DUP4 00000d88: GT 00000d89: ISZERO 00000d8a: PUSH2 0x0da2 00000d8d: JUMPI 00000d8e: PUSH1 0x00 00000d90: DUP6 00000d91: DUP2 00000d92: MSTORE 00000d93: PUSH1 0x19 00000d95: PUSH1 0x20 00000d97: MSTORE 00000d98: PUSH1 0x40 00000d9a: SWAP1 00000d9b: KECCAK256 00000d9c: PUSH1 0x01 00000d9e: ADD 00000d9f: SLOAD 00000da0: SWAP3 00000da1: POP 00000da2: JUMPDEST 00000da3: PUSH1 0x04 00000da5: SLOAD 00000da6: PUSH1 0x0a 00000da8: SLOAD 00000da9: PUSH1 0x01 00000dab: PUSH1 0xa0 00000dad: PUSH1 0x02 00000daf: EXP 00000db0: SUB 00000db1: SWAP2 00000db2: DUP3 00000db3: AND 00000db4: SWAP2 00000db5: PUSH4 0xb753a98c 00000dba: SWAP2 00000dbb: AND 00000dbc: DUP6 00000dbd: PUSH1 0x40 00000dbf: MLOAD 00000dc0: PUSH1 0xe0 00000dc2: PUSH1 0x02 00000dc4: EXP 00000dc5: PUSH4 0xffffffff 00000dca: DUP6 00000dcb: AND 00000dcc: MUL 00000dcd: DUP2 00000dce: MSTORE 00000dcf: PUSH1 0x01 00000dd1: PUSH1 0xa0 00000dd3: PUSH1 0x02 00000dd5: EXP 00000dd6: SUB 00000dd7: SWAP1 00000dd8: SWAP3 00000dd9: AND 00000dda: PUSH1 0x04 00000ddc: DUP4 00000ddd: ADD 00000dde: MSTORE 00000ddf: PUSH1 0x24 00000de1: DUP3 00000de2: ADD 00000de3: MSTORE 00000de4: PUSH1 0x44 00000de6: ADD 00000de7: PUSH1 0x00 00000de9: PUSH1 0x40 00000deb: MLOAD 00000dec: DUP1 00000ded: DUP4 00000dee: SUB 00000def: DUP2 00000df0: PUSH1 0x00 00000df2: DUP8 00000df3: DUP1 00000df4: EXTCODESIZE 00000df5: ISZERO 00000df6: ISZERO 00000df7: PUSH2 0x0dff 00000dfa: JUMPI 00000dfb: PUSH1 0x00 00000dfd: DUP1 00000dfe: REVERT 00000dff: JUMPDEST 00000e00: PUSH2 0x02c6 00000e03: GAS 00000e04: SUB 00000e05: CALL 00000e06: ISZERO 00000e07: ISZERO 00000e08: PUSH2 0x0e10 00000e0b: JUMPI 00000e0c: PUSH1 0x00 00000e0e: DUP1 00000e0f: REVERT 00000e10: JUMPDEST 00000e11: POP 00000e12: POP 00000e13: POP 00000e14: PUSH1 0x00 00000e16: DUP6 00000e17: DUP2 00000e18: MSTORE 00000e19: PUSH1 0x19 00000e1b: PUSH1 0x20 00000e1d: MSTORE 00000e1e: PUSH1 0x40 00000e20: SWAP1 00000e21: KECCAK256 00000e22: PUSH1 0x01 00000e24: ADD 00000e25: SLOAD 00000e26: PUSH2 0x0e2f 00000e29: SWAP1 00000e2a: DUP5 00000e2b: PUSH2 0x270b 00000e2e: JUMP 00000e2f: JUMPDEST 00000e30: PUSH1 0x00 00000e32: SWAP6 00000e33: DUP7 00000e34: MSTORE 00000e35: PUSH1 0x19 00000e37: PUSH1 0x20 00000e39: MSTORE 00000e3a: PUSH1 0x40 00000e3c: SWAP1 00000e3d: SWAP6 00000e3e: KECCAK256 00000e3f: PUSH1 0x01 00000e41: ADD 00000e42: SWAP5 00000e43: SWAP1 00000e44: SWAP5 00000e45: SSTORE 00000e46: POP 00000e47: POP 00000e48: POP 00000e49: POP 00000e4a: JUMP 00000e4b: JUMPDEST 00000e4c: PUSH1 0x04 00000e4e: CALLDATALOAD 00000e4f: PUSH1 0x24 00000e51: CALLDATALOAD 00000e52: DUP1 00000e53: DUP3 00000e54: CALLER 00000e55: PUSH1 0x01 00000e57: PUSH1 0xa0 00000e59: PUSH1 0x02 00000e5b: EXP 00000e5c: SUB 00000e5d: AND 00000e5e: PUSH1 0x00 00000e60: DUP1 00000e61: CALLDATALOAD 00000e62: PUSH1 0x01 00000e64: PUSH1 0xe0 00000e66: PUSH1 0x02 00000e68: EXP 00000e69: SUB 00000e6a: NOT 00000e6b: AND 00000e6c: SWAP1 00000e6d: CALLVALUE 00000e6e: SWAP1 00000e6f: CALLDATASIZE 00000e70: PUSH1 0x40 00000e72: MLOAD 00000e73: DUP4 00000e74: DUP2 00000e75: MSTORE 00000e76: PUSH1 0x40 00000e78: PUSH1 0x20 00000e7a: DUP3 00000e7b: ADD 00000e7c: DUP2 00000e7d: DUP2 00000e7e: MSTORE 00000e7f: SWAP1 00000e80: DUP3 00000e81: ADD 00000e82: DUP4 00000e83: SWAP1 00000e84: MSTORE 00000e85: PUSH1 0x60 00000e87: DUP3 00000e88: ADD 00000e89: DUP5 00000e8a: DUP5 00000e8b: DUP1 00000e8c: DUP3 00000e8d: DUP5 00000e8e: CALLDATACOPY 00000e8f: DUP3 00000e90: ADD 00000e91: SWAP2 00000e92: POP 00000e93: POP 00000e94: SWAP5 00000e95: POP 00000e96: POP 00000e97: POP 00000e98: POP 00000e99: POP 00000e9a: PUSH1 0x40 00000e9c: MLOAD 00000e9d: DUP1 00000e9e: SWAP2 00000e9f: SUB 00000ea0: SWAP1 00000ea1: LOG4 00000ea2: PUSH1 0x12 00000ea4: SLOAD 00000ea5: PUSH1 0xff 00000ea7: AND 00000ea8: ISZERO 00000ea9: PUSH2 0x0eb1 00000eac: JUMPI 00000ead: PUSH1 0x00 00000eaf: DUP1 00000eb0: REVERT 00000eb1: JUMPDEST 00000eb2: PUSH1 0x00 00000eb4: DUP5 00000eb5: DUP2 00000eb6: MSTORE 00000eb7: PUSH1 0x19 00000eb9: PUSH1 0x20 00000ebb: MSTORE 00000ebc: PUSH1 0x40 00000ebe: SWAP1 00000ebf: KECCAK256 00000ec0: SLOAD 00000ec1: CALLER 00000ec2: PUSH1 0x01 00000ec4: PUSH1 0xa0 00000ec6: PUSH1 0x02 00000ec8: EXP 00000ec9: SUB 00000eca: SWAP1 00000ecb: DUP2 00000ecc: AND 00000ecd: SWAP2 00000ece: AND 00000ecf: EQ 00000ed0: PUSH2 0x0ed8 00000ed3: JUMPI 00000ed4: PUSH1 0x00 00000ed6: DUP1 00000ed7: REVERT 00000ed8: JUMPDEST 00000ed9: PUSH1 0x00 00000edb: PUSH2 0x0ee6 00000ede: DUP5 00000edf: PUSH2 0x0d6c 00000ee2: PUSH2 0x2283 00000ee5: JUMP 00000ee6: JUMPDEST 00000ee7: GT 00000ee8: PUSH2 0x0ef0 00000eeb: JUMPI 00000eec: PUSH1 0x00 00000eee: DUP1 00000eef: REVERT 00000ef0: JUMPDEST 00000ef1: PUSH1 0x00 00000ef3: DUP5 00000ef4: DUP2 00000ef5: MSTORE 00000ef6: PUSH1 0x19 00000ef8: PUSH1 0x20 00000efa: MSTORE 00000efb: PUSH1 0x40 00000efd: SWAP1 00000efe: KECCAK256 00000eff: PUSH1 0x02 00000f01: ADD 00000f02: SLOAD 00000f03: PUSH2 0x0f17 00000f06: SWAP1 00000f07: PUSH2 0x0f12 00000f0a: DUP6 00000f0b: PUSH2 0x0d6c 00000f0e: PUSH2 0x2283 00000f11: JUMP 00000f12: JUMPDEST 00000f13: PUSH2 0x2782 00000f16: JUMP 00000f17: JUMPDEST 00000f18: PUSH1 0x00 00000f1a: DUP6 00000f1b: DUP2 00000f1c: MSTORE 00000f1d: PUSH1 0x19 00000f1f: PUSH1 0x20 00000f21: MSTORE 00000f22: PUSH1 0x40 00000f24: SWAP1 00000f25: KECCAK256 00000f26: PUSH1 0x02 00000f28: ADD 00000f29: SSTORE 00000f2a: PUSH1 0x17 00000f2c: SLOAD 00000f2d: PUSH2 0x0f3c 00000f30: SWAP1 00000f31: PUSH2 0x0f12 00000f34: DUP6 00000f35: PUSH2 0x0d6c 00000f38: PUSH2 0x2283 00000f3b: JUMP 00000f3c: JUMPDEST 00000f3d: PUSH1 0x17 00000f3f: SSTORE 00000f40: PUSH1 0x00 00000f42: DUP5 00000f43: DUP2 00000f44: MSTORE 00000f45: PUSH1 0x19 00000f47: PUSH1 0x20 00000f49: MSTORE 00000f4a: PUSH1 0x40 00000f4c: SWAP1 00000f4d: KECCAK256 00000f4e: PUSH1 0x03 00000f50: ADD 00000f51: SLOAD 00000f52: PUSH2 0x0f61 00000f55: SWAP1 00000f56: PUSH2 0x0f12 00000f59: DUP6 00000f5a: PUSH2 0x0d6c 00000f5d: PUSH2 0x0b05 00000f60: JUMP 00000f61: JUMPDEST 00000f62: PUSH1 0x00 00000f64: DUP6 00000f65: DUP2 00000f66: MSTORE 00000f67: PUSH1 0x19 00000f69: PUSH1 0x20 00000f6b: MSTORE 00000f6c: PUSH1 0x40 00000f6e: SWAP1 00000f6f: DUP2 00000f70: SWAP1 00000f71: KECCAK256 00000f72: PUSH1 0x03 00000f74: DUP2 00000f75: ADD 00000f76: SWAP3 00000f77: SWAP1 00000f78: SWAP3 00000f79: SSTORE 00000f7a: PUSH1 0x02 00000f7c: SLOAD 00000f7d: SWAP2 00000f7e: SLOAD 00000f7f: PUSH1 0x01 00000f81: PUSH1 0xa0 00000f83: PUSH1 0x02 00000f85: EXP 00000f86: SUB 00000f87: SWAP3 00000f88: DUP4 00000f89: AND 00000f8a: SWAP3 00000f8b: PUSH4 0x40c10f19 00000f90: SWAP3 00000f91: SWAP2 00000f92: AND 00000f93: SWAP1 00000f94: DUP7 00000f95: SWAP1 00000f96: MLOAD 00000f97: PUSH1 0xe0 00000f99: PUSH1 0x02 00000f9b: EXP 00000f9c: PUSH4 0xffffffff 00000fa1: DUP6 00000fa2: AND 00000fa3: MUL 00000fa4: DUP2 00000fa5: MSTORE 00000fa6: PUSH1 0x01 00000fa8: PUSH1 0xa0 00000faa: PUSH1 0x02 00000fac: EXP 00000fad: SUB 00000fae: SWAP1 00000faf: SWAP3 00000fb0: AND 00000fb1: PUSH1 0x04 00000fb3: DUP4 00000fb4: ADD 00000fb5: MSTORE 00000fb6: PUSH1 0x24 00000fb8: DUP3 00000fb9: ADD 00000fba: MSTORE 00000fbb: PUSH1 0x44 00000fbd: ADD 00000fbe: PUSH1 0x00 00000fc0: PUSH1 0x40 00000fc2: MLOAD 00000fc3: DUP1 00000fc4: DUP4 00000fc5: SUB 00000fc6: DUP2 00000fc7: PUSH1 0x00 00000fc9: DUP8 00000fca: DUP1 00000fcb: EXTCODESIZE 00000fcc: ISZERO 00000fcd: ISZERO 00000fce: PUSH2 0x0fd6 00000fd1: JUMPI 00000fd2: PUSH1 0x00 00000fd4: DUP1 00000fd5: REVERT 00000fd6: JUMPDEST 00000fd7: PUSH2 0x02c6 00000fda: GAS 00000fdb: SUB 00000fdc: CALL 00000fdd: ISZERO 00000fde: ISZERO 00000fdf: PUSH2 0x0fe7 00000fe2: JUMPI 00000fe3: PUSH1 0x00 00000fe5: DUP1 00000fe6: REVERT 00000fe7: JUMPDEST 00000fe8: POP 00000fe9: POP 00000fea: POP 00000feb: PUSH2 0x0ff3 00000fee: DUP5 00000fef: PUSH2 0x2423 00000ff2: JUMP 00000ff3: JUMPDEST 00000ff4: ISZERO 00000ff5: ISZERO 00000ff6: PUSH2 0x0ffe 00000ff9: JUMPI 00000ffa: PUSH1 0x00 00000ffc: DUP1 00000ffd: REVERT 00000ffe: JUMPDEST 00000fff: PUSH1 0x0d 00001001: SLOAD 00001002: PUSH1 0x02 00001004: SLOAD 00001005: PUSH1 0x01 00001007: PUSH1 0xa0 00001009: PUSH1 0x02 0000100b: EXP 0000100c: SUB 0000100d: AND 0000100e: PUSH4 0x18160ddd 00001013: PUSH1 0x00 00001015: PUSH1 0x40 00001017: MLOAD 00001018: PUSH1 0x20 0000101a: ADD 0000101b: MSTORE 0000101c: PUSH1 0x40 0000101e: MLOAD 0000101f: DUP2 00001020: PUSH4 0xffffffff 00001025: AND 00001026: PUSH1 0xe0 00001028: PUSH1 0x02 0000102a: EXP 0000102b: MUL 0000102c: DUP2 0000102d: MSTORE 0000102e: PUSH1 0x04 00001030: ADD 00001031: PUSH1 0x20 00001033: PUSH1 0x40 00001035: MLOAD 00001036: DUP1 00001037: DUP4 00001038: SUB 00001039: DUP2 0000103a: PUSH1 0x00 0000103c: DUP8 0000103d: DUP1 0000103e: EXTCODESIZE 0000103f: ISZERO 00001040: ISZERO 00001041: PUSH2 0x1049 00001044: JUMPI 00001045: PUSH1 0x00 00001047: DUP1 00001048: REVERT 00001049: JUMPDEST 0000104a: PUSH2 0x02c6 0000104d: GAS 0000104e: SUB 0000104f: CALL 00001050: ISZERO 00001051: ISZERO 00001052: PUSH2 0x105a 00001055: JUMPI 00001056: PUSH1 0x00 00001058: DUP1 00001059: REVERT 0000105a: JUMPDEST 0000105b: POP 0000105c: POP 0000105d: POP 0000105e: PUSH1 0x40 00001060: MLOAD 00001061: DUP1 00001062: MLOAD 00001063: SWAP1 00001064: POP 00001065: GT 00001066: ISZERO 00001067: ISZERO 00001068: ISZERO 00001069: PUSH2 0x1071 0000106c: JUMPI 0000106d: PUSH1 0x00 0000106f: DUP1 00001070: REVERT 00001071: JUMPDEST 00001072: POP 00001073: POP 00001074: POP 00001075: POP 00001076: JUMP 00001077: JUMPDEST 00001078: PUSH1 0x00 0000107a: PUSH2 0x10a9 0000107d: DUP3 0000107e: PUSH2 0x10a4 00001081: PUSH2 0x1088 00001084: PUSH2 0x1548 00001087: JUMP 00001088: JUMPDEST 00001089: PUSH2 0x109f 0000108c: PUSH8 0x0de0b6b3a7640000 00001095: PUSH1 0x02 00001097: MUL 00001098: PUSH1 0x11 0000109a: SLOAD 0000109b: PUSH2 0x270b 0000109e: JUMP 0000109f: JUMPDEST 000010a0: PUSH2 0x2792 000010a3: JUMP 000010a4: JUMPDEST 000010a5: PUSH2 0x271b 000010a8: JUMP 000010a9: JUMPDEST 000010aa: SWAP3 000010ab: SWAP2 000010ac: POP 000010ad: POP 000010ae: JUMP 000010af: JUMPDEST 000010b0: PUSH1 0x18 000010b2: SLOAD 000010b3: DUP2 000010b4: JUMP 000010b5: JUMPDEST 000010b6: PUSH1 0x0c 000010b8: SLOAD 000010b9: DUP2 000010ba: JUMP 000010bb: JUMPDEST 000010bc: PUSH1 0x12 000010be: SLOAD 000010bf: PUSH1 0x00 000010c1: SWAP1 000010c2: PUSH1 0xff 000010c4: AND 000010c5: PUSH2 0x1140 000010c8: JUMPI 000010c9: PUSH2 0x113b 000010cc: PUSH2 0x10d3 000010cf: PUSH2 0x1548 000010d2: JUMP 000010d3: JUMPDEST 000010d4: PUSH1 0x08 000010d6: SLOAD 000010d7: PUSH1 0x01 000010d9: PUSH1 0xa0 000010db: PUSH1 0x02 000010dd: EXP 000010de: SUB 000010df: AND 000010e0: PUSH4 0x57de26a4 000010e5: PUSH1 0x00 000010e7: PUSH1 0x40 000010e9: MLOAD 000010ea: PUSH1 0x20 000010ec: ADD 000010ed: MSTORE 000010ee: PUSH1 0x40 000010f0: MLOAD 000010f1: DUP2 000010f2: PUSH4 0xffffffff 000010f7: AND 000010f8: PUSH1 0xe0 000010fa: PUSH1 0x02 000010fc: EXP 000010fd: MUL 000010fe: DUP2 000010ff: MSTORE 00001100: PUSH1 0x04 00001102: ADD 00001103: PUSH1 0x20 00001105: PUSH1 0x40 00001107: MLOAD 00001108: DUP1 00001109: DUP4 0000110a: SUB 0000110b: DUP2 0000110c: PUSH1 0x00 0000110e: DUP8 0000110f: DUP1 00001110: EXTCODESIZE 00001111: ISZERO 00001112: ISZERO 00001113: PUSH2 0x111b 00001116: JUMPI 00001117: PUSH1 0x00 00001119: DUP1 0000111a: REVERT 0000111b: JUMPDEST 0000111c: PUSH2 0x02c6 0000111f: GAS 00001120: SUB 00001121: CALL 00001122: ISZERO 00001123: ISZERO 00001124: PUSH2 0x112c 00001127: JUMPI 00001128: PUSH1 0x00 0000112a: DUP1 0000112b: REVERT 0000112c: JUMPDEST 0000112d: POP 0000112e: POP 0000112f: POP 00001130: PUSH1 0x40 00001132: MLOAD 00001133: DUP1 00001134: MLOAD 00001135: SWAP1 00001136: POP 00001137: PUSH2 0x2792 0000113a: JUMP 0000113b: JUMPDEST 0000113c: PUSH2 0x1144 0000113f: JUMP 00001140: JUMPDEST 00001141: PUSH1 0x13 00001143: SLOAD 00001144: JUMPDEST 00001145: SWAP1 00001146: POP 00001147: SWAP1 00001148: JUMP 00001149: JUMPDEST 0000114a: PUSH1 0x12 0000114c: SLOAD 0000114d: PUSH1 0xff 0000114f: AND 00001150: DUP2 00001151: JUMP 00001152: JUMPDEST 00001153: PUSH1 0x07 00001155: SLOAD 00001156: PUSH1 0x01 00001158: PUSH1 0xa0 0000115a: PUSH1 0x02 0000115c: EXP 0000115d: SUB 0000115e: AND 0000115f: DUP2 00001160: JUMP 00001161: JUMPDEST 00001162: PUSH1 0x11 00001164: SLOAD 00001165: DUP2 00001166: JUMP 00001167: JUMPDEST 00001168: PUSH1 0x00 0000116a: DUP2 0000116b: DUP2 0000116c: MSTORE 0000116d: PUSH1 0x19 0000116f: PUSH1 0x20 00001171: MSTORE 00001172: PUSH1 0x40 00001174: DUP2 00001175: KECCAK256 00001176: PUSH1 0x03 00001178: ADD 00001179: SLOAD 0000117a: PUSH2 0x10a9 0000117d: SWAP1 0000117e: PUSH2 0x1189 00001181: SWAP1 00001182: PUSH2 0x10a4 00001185: PUSH2 0x0b05 00001188: JUMP 00001189: JUMPDEST 0000118a: PUSH2 0x1192 0000118d: DUP5 0000118e: PUSH2 0x24d9 00001191: JUMP 00001192: JUMPDEST 00001193: PUSH2 0x270b 00001196: JUMP 00001197: JUMPDEST 00001198: PUSH1 0x00 0000119a: DUP1 0000119b: DUP1 0000119c: PUSH1 0x04 0000119e: CALLDATALOAD 0000119f: PUSH1 0x24 000011a1: CALLDATALOAD 000011a2: DUP1 000011a3: DUP3 000011a4: PUSH1 0x01 000011a6: PUSH1 0xa0 000011a8: PUSH1 0x02 000011aa: EXP 000011ab: SUB 000011ac: CALLER 000011ad: AND 000011ae: PUSH1 0x01 000011b0: PUSH1 0xe0 000011b2: PUSH1 0x02 000011b4: EXP 000011b5: SUB 000011b6: NOT 000011b7: DUP7 000011b8: CALLDATALOAD 000011b9: AND 000011ba: CALLVALUE 000011bb: DUP8 000011bc: CALLDATASIZE 000011bd: PUSH1 0x40 000011bf: MLOAD 000011c0: DUP4 000011c1: DUP2 000011c2: MSTORE 000011c3: PUSH1 0x40 000011c5: PUSH1 0x20 000011c7: DUP3 000011c8: ADD 000011c9: DUP2 000011ca: DUP2 000011cb: MSTORE 000011cc: SWAP1 000011cd: DUP3 000011ce: ADD 000011cf: DUP4 000011d0: SWAP1 000011d1: MSTORE 000011d2: PUSH1 0x60 000011d4: DUP3 000011d5: ADD 000011d6: DUP5 000011d7: DUP5 000011d8: DUP1 000011d9: DUP3 000011da: DUP5 000011db: CALLDATACOPY 000011dc: DUP3 000011dd: ADD 000011de: SWAP2 000011df: POP 000011e0: POP 000011e1: SWAP5 000011e2: POP 000011e3: POP 000011e4: POP 000011e5: POP 000011e6: POP 000011e7: PUSH1 0x40 000011e9: MLOAD 000011ea: DUP1 000011eb: SWAP2 000011ec: SUB 000011ed: SWAP1 000011ee: LOG4 000011ef: PUSH1 0x12 000011f1: SLOAD 000011f2: PUSH1 0xff 000011f4: AND 000011f5: ISZERO 000011f6: PUSH2 0x11fe 000011f9: JUMPI 000011fa: PUSH1 0x00 000011fc: DUP1 000011fd: REVERT 000011fe: JUMPDEST 000011ff: PUSH2 0x1217 00001202: DUP7 00001203: PUSH2 0x10a4 00001206: PUSH2 0x120e 00001209: DUP11 0000120a: PUSH2 0x1167 0000120d: JUMP 0000120e: JUMPDEST 0000120f: PUSH2 0x0d6c 00001212: DUP12 00001213: PUSH2 0x24d9 00001216: JUMP 00001217: JUMPDEST 00001218: PUSH1 0x00 0000121a: DUP9 0000121b: DUP2 0000121c: MSTORE 0000121d: PUSH1 0x19 0000121f: PUSH1 0x20 00001221: MSTORE 00001222: PUSH1 0x40 00001224: SWAP1 00001225: KECCAK256 00001226: PUSH1 0x02 00001228: ADD 00001229: SLOAD 0000122a: SWAP1 0000122b: SWAP6 0000122c: POP 0000122d: PUSH2 0x123c 00001230: SWAP1 00001231: PUSH2 0x1192 00001234: DUP9 00001235: PUSH2 0x0d6c 00001238: PUSH2 0x2283 0000123b: JUMP 0000123c: JUMPDEST 0000123d: PUSH1 0x00 0000123f: DUP9 00001240: DUP2 00001241: MSTORE 00001242: PUSH1 0x19 00001244: PUSH1 0x20 00001246: MSTORE 00001247: PUSH1 0x40 00001249: SWAP1 0000124a: KECCAK256 0000124b: PUSH1 0x02 0000124d: ADD 0000124e: SSTORE 0000124f: PUSH1 0x17 00001251: SLOAD 00001252: PUSH2 0x1261 00001255: SWAP1 00001256: PUSH2 0x1192 00001259: DUP9 0000125a: PUSH2 0x0d6c 0000125d: PUSH2 0x2283 00001260: JUMP 00001261: JUMPDEST 00001262: PUSH1 0x17 00001264: SSTORE 00001265: PUSH1 0x00 00001267: DUP8 00001268: DUP2 00001269: MSTORE 0000126a: PUSH1 0x19 0000126c: PUSH1 0x20 0000126e: MSTORE 0000126f: PUSH1 0x40 00001271: SWAP1 00001272: KECCAK256 00001273: PUSH1 0x03 00001275: ADD 00001276: SLOAD 00001277: PUSH2 0x128f 0000127a: SWAP1 0000127b: PUSH2 0x1192 0000127e: PUSH2 0x1287 00001281: DUP10 00001282: DUP10 00001283: PUSH2 0x2782 00001286: JUMP 00001287: JUMPDEST 00001288: PUSH2 0x0d6c 0000128b: PUSH2 0x0b05 0000128e: JUMP 0000128f: JUMPDEST 00001290: PUSH1 0x00 00001292: DUP9 00001293: DUP2 00001294: MSTORE 00001295: PUSH1 0x19 00001297: PUSH1 0x20 00001299: MSTORE 0000129a: PUSH1 0x40 0000129c: SWAP1 0000129d: DUP2 0000129e: SWAP1 0000129f: KECCAK256 000012a0: PUSH1 0x03 000012a2: ADD 000012a3: SWAP2 000012a4: SWAP1 000012a5: SWAP2 000012a6: SSTORE 000012a7: PUSH1 0x02 000012a9: SLOAD 000012aa: PUSH1 0x01 000012ac: PUSH1 0xa0 000012ae: PUSH1 0x02 000012b0: EXP 000012b1: SUB 000012b2: AND 000012b3: SWAP1 000012b4: PUSH4 0x9dc29fac 000012b9: SWAP1 000012ba: CALLER 000012bb: SWAP1 000012bc: DUP10 000012bd: SWAP1 000012be: MLOAD 000012bf: PUSH1 0xe0 000012c1: PUSH1 0x02 000012c3: EXP 000012c4: PUSH4 0xffffffff 000012c9: DUP6 000012ca: AND 000012cb: MUL 000012cc: DUP2 000012cd: MSTORE 000012ce: PUSH1 0x01 000012d0: PUSH1 0xa0 000012d2: PUSH1 0x02 000012d4: EXP 000012d5: SUB 000012d6: SWAP1 000012d7: SWAP3 000012d8: AND 000012d9: PUSH1 0x04 000012db: DUP4 000012dc: ADD 000012dd: MSTORE 000012de: PUSH1 0x24 000012e0: DUP3 000012e1: ADD 000012e2: MSTORE 000012e3: PUSH1 0x44 000012e5: ADD 000012e6: PUSH1 0x00 000012e8: PUSH1 0x40 000012ea: MLOAD 000012eb: DUP1 000012ec: DUP4 000012ed: SUB 000012ee: DUP2 000012ef: PUSH1 0x00 000012f1: DUP8 000012f2: DUP1 000012f3: EXTCODESIZE 000012f4: ISZERO 000012f5: ISZERO 000012f6: PUSH2 0x12fe 000012f9: JUMPI 000012fa: PUSH1 0x00 000012fc: DUP1 000012fd: REVERT 000012fe: JUMPDEST 000012ff: PUSH2 0x02c6 00001302: GAS 00001303: SUB 00001304: CALL 00001305: ISZERO 00001306: ISZERO 00001307: PUSH2 0x130f 0000130a: JUMPI 0000130b: PUSH1 0x00 0000130d: DUP1 0000130e: REVERT 0000130f: JUMPDEST 00001310: POP 00001311: POP 00001312: PUSH1 0x09 00001314: SLOAD 00001315: PUSH1 0x01 00001317: PUSH1 0xa0 00001319: PUSH1 0x02 0000131b: EXP 0000131c: SUB 0000131d: AND 0000131e: SWAP1 0000131f: POP 00001320: PUSH4 0x59e02dd7 00001325: PUSH1 0x00 00001327: PUSH1 0x40 00001329: MLOAD 0000132a: PUSH1 0x40 0000132c: ADD 0000132d: MSTORE 0000132e: PUSH1 0x40 00001330: MLOAD 00001331: DUP2 00001332: PUSH4 0xffffffff 00001337: AND 00001338: PUSH1 0xe0 0000133a: PUSH1 0x02 0000133c: EXP 0000133d: MUL 0000133e: DUP2 0000133f: MSTORE 00001340: PUSH1 0x04 00001342: ADD 00001343: PUSH1 0x40 00001345: DUP1 00001346: MLOAD 00001347: DUP1 00001348: DUP4 00001349: SUB 0000134a: DUP2 0000134b: PUSH1 0x00 0000134d: DUP8 0000134e: DUP1 0000134f: EXTCODESIZE 00001350: ISZERO 00001351: ISZERO 00001352: PUSH2 0x135a 00001355: JUMPI 00001356: PUSH1 0x00 00001358: DUP1 00001359: REVERT 0000135a: JUMPDEST 0000135b: PUSH2 0x02c6 0000135e: GAS 0000135f: SUB 00001360: CALL 00001361: ISZERO 00001362: ISZERO 00001363: PUSH2 0x136b 00001366: JUMPI 00001367: PUSH1 0x00 00001369: DUP1 0000136a: REVERT 0000136b: JUMPDEST 0000136c: POP 0000136d: POP 0000136e: POP 0000136f: PUSH1 0x40 00001371: MLOAD 00001372: DUP1 00001373: MLOAD 00001374: SWAP1 00001375: PUSH1 0x20 00001377: ADD 00001378: DUP1 00001379: MLOAD 0000137a: SWAP1 0000137b: POP 0000137c: SWAP4 0000137d: POP 0000137e: SWAP4 0000137f: POP 00001380: DUP3 00001381: DUP1 00001382: ISZERO 00001383: PUSH2 0x138b 00001386: JUMPI 00001387: POP 00001388: DUP4 00001389: ISZERO 0000138a: ISZERO 0000138b: JUMPDEST 0000138c: ISZERO 0000138d: PUSH2 0x1419 00001390: JUMPI 00001391: PUSH1 0x06 00001393: SLOAD 00001394: PUSH1 0x0b 00001396: SLOAD 00001397: PUSH1 0x01 00001399: PUSH1 0xa0 0000139b: PUSH1 0x02 0000139d: EXP 0000139e: SUB 0000139f: SWAP2 000013a0: DUP3 000013a1: AND 000013a2: SWAP2 000013a3: PUSH4 0xbb35783b 000013a8: SWAP2 000013a9: CALLER 000013aa: SWAP2 000013ab: AND 000013ac: PUSH2 0x13b5 000013af: DUP10 000013b0: DUP10 000013b1: PUSH2 0x27ba 000013b4: JUMP 000013b5: JUMPDEST 000013b6: PUSH1 0x40 000013b8: MLOAD 000013b9: PUSH1 0xe0 000013bb: PUSH1 0x02 000013bd: EXP 000013be: PUSH4 0xffffffff 000013c3: DUP7 000013c4: AND 000013c5: MUL 000013c6: DUP2 000013c7: MSTORE 000013c8: PUSH1 0x01 000013ca: PUSH1 0xa0 000013cc: PUSH1 0x02 000013ce: EXP 000013cf: SUB 000013d0: SWAP4 000013d1: DUP5 000013d2: AND 000013d3: PUSH1 0x04 000013d5: DUP3 000013d6: ADD 000013d7: MSTORE 000013d8: SWAP2 000013d9: SWAP1 000013da: SWAP3 000013db: AND 000013dc: PUSH1 0x24 000013de: DUP3 000013df: ADD 000013e0: MSTORE 000013e1: PUSH1 0x44 000013e3: DUP2 000013e4: ADD 000013e5: SWAP2 000013e6: SWAP1 000013e7: SWAP2 000013e8: MSTORE 000013e9: PUSH1 0x64 000013eb: ADD 000013ec: PUSH1 0x00 000013ee: PUSH1 0x40 000013f0: MLOAD 000013f1: DUP1 000013f2: DUP4 000013f3: SUB 000013f4: DUP2 000013f5: PUSH1 0x00 000013f7: DUP8 000013f8: DUP1 000013f9: EXTCODESIZE 000013fa: ISZERO 000013fb: ISZERO 000013fc: PUSH2 0x1404 000013ff: JUMPI 00001400: PUSH1 0x00 00001402: DUP1 00001403: REVERT 00001404: JUMPDEST 00001405: PUSH2 0x02c6 00001408: GAS 00001409: SUB 0000140a: CALL 0000140b: ISZERO 0000140c: ISZERO 0000140d: PUSH2 0x1415 00001410: JUMPI 00001411: PUSH1 0x00 00001413: DUP1 00001414: REVERT 00001415: JUMPDEST 00001416: POP 00001417: POP 00001418: POP 00001419: JUMPDEST 0000141a: POP 0000141b: POP 0000141c: POP 0000141d: POP 0000141e: POP 0000141f: POP 00001420: POP 00001421: JUMP 00001422: JUMPDEST 00001423: PUSH2 0x1438 00001426: CALLER 00001427: PUSH1 0x00 00001429: CALLDATALOAD 0000142a: PUSH1 0x01 0000142c: PUSH1 0xe0 0000142e: PUSH1 0x02 00001430: EXP 00001431: SUB 00001432: NOT 00001433: AND 00001434: PUSH2 0x2615 00001437: JUMP 00001438: JUMPDEST 00001439: ISZERO 0000143a: ISZERO 0000143b: PUSH2 0x1443 0000143e: JUMPI 0000143f: PUSH1 0x00 00001441: DUP1 00001442: REVERT 00001443: JUMPDEST 00001444: PUSH1 0x00 00001446: DUP1 00001447: SLOAD 00001448: PUSH1 0x01 0000144a: PUSH1 0xa0 0000144c: PUSH1 0x02 0000144e: EXP 0000144f: SUB 00001450: NOT 00001451: AND 00001452: PUSH1 0x01 00001454: PUSH1 0xa0 00001456: PUSH1 0x02 00001458: EXP 00001459: SUB 0000145a: DUP4 0000145b: DUP2 0000145c: AND 0000145d: SWAP2 0000145e: SWAP1 0000145f: SWAP2 00001460: OR 00001461: SWAP2 00001462: DUP3 00001463: SWAP1 00001464: SSTORE 00001465: AND 00001466: PUSH32 0x1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada4 00001487: PUSH1 0x40 00001489: MLOAD 0000148a: PUSH1 0x40 0000148c: MLOAD 0000148d: DUP1 0000148e: SWAP2 0000148f: SUB 00001490: SWAP1 00001491: LOG2 00001492: POP 00001493: JUMP 00001494: JUMPDEST 00001495: PUSH1 0x05 00001497: SLOAD 00001498: PUSH1 0x01 0000149a: PUSH1 0xa0 0000149c: PUSH1 0x02 0000149e: EXP 0000149f: SUB 000014a0: AND 000014a1: DUP2 000014a2: JUMP 000014a3: JUMPDEST 000014a4: PUSH1 0x04 000014a6: CALLDATALOAD 000014a7: PUSH1 0x24 000014a9: CALLDATALOAD 000014aa: DUP1 000014ab: DUP3 000014ac: CALLER 000014ad: PUSH1 0x01 000014af: PUSH1 0xa0 000014b1: PUSH1 0x02 000014b3: EXP 000014b4: SUB 000014b5: AND 000014b6: PUSH1 0x00 000014b8: DUP1 000014b9: CALLDATALOAD 000014ba: PUSH1 0x01 000014bc: PUSH1 0xe0 000014be: PUSH1 0x02 000014c0: EXP 000014c1: SUB 000014c2: NOT 000014c3: AND 000014c4: SWAP1 000014c5: CALLVALUE 000014c6: SWAP1 000014c7: CALLDATASIZE 000014c8: PUSH1 0x40 000014ca: MLOAD 000014cb: DUP4 000014cc: DUP2 000014cd: MSTORE 000014ce: PUSH1 0x40 000014d0: PUSH1 0x20 000014d2: DUP3 000014d3: ADD 000014d4: DUP2 000014d5: DUP2 000014d6: MSTORE 000014d7: SWAP1 000014d8: DUP3 000014d9: ADD 000014da: DUP4 000014db: SWAP1 000014dc: MSTORE 000014dd: PUSH1 0x60 000014df: DUP3 000014e0: ADD 000014e1: DUP5 000014e2: DUP5 000014e3: DUP1 000014e4: DUP3 000014e5: DUP5 000014e6: CALLDATACOPY 000014e7: DUP3 000014e8: ADD 000014e9: SWAP2 000014ea: POP 000014eb: POP 000014ec: SWAP5 000014ed: POP 000014ee: POP 000014ef: POP 000014f0: POP 000014f1: POP 000014f2: PUSH1 0x40 000014f4: MLOAD 000014f5: DUP1 000014f6: SWAP2 000014f7: SUB 000014f8: SWAP1 000014f9: LOG4 000014fa: PUSH1 0x0a 000014fc: SLOAD 000014fd: PUSH1 0x01 000014ff: PUSH1 0xa0 00001501: PUSH1 0x02 00001503: EXP 00001504: SUB 00001505: AND 00001506: ISZERO 00001507: PUSH2 0x150f 0000150a: JUMPI 0000150b: PUSH1 0x00 0000150d: DUP1 0000150e: REVERT 0000150f: JUMPDEST 00001510: PUSH1 0x01 00001512: PUSH1 0xa0 00001514: PUSH1 0x02 00001516: EXP 00001517: SUB 00001518: DUP4 00001519: AND 0000151a: ISZERO 0000151b: ISZERO 0000151c: PUSH2 0x1524 0000151f: JUMPI 00001520: PUSH1 0x00 00001522: DUP1 00001523: REVERT 00001524: JUMPDEST 00001525: POP 00001526: POP 00001527: PUSH1 0x0a 00001529: DUP1 0000152a: SLOAD 0000152b: PUSH1 0x01 0000152d: PUSH1 0xa0 0000152f: PUSH1 0x02 00001531: EXP 00001532: SUB 00001533: NOT 00001534: AND 00001535: PUSH1 0x01 00001537: PUSH1 0xa0 00001539: PUSH1 0x02 0000153b: EXP 0000153c: SUB 0000153d: SWAP3 0000153e: SWAP1 0000153f: SWAP3 00001540: AND 00001541: SWAP2 00001542: SWAP1 00001543: SWAP2 00001544: OR 00001545: SWAP1 00001546: SSTORE 00001547: JUMP 00001548: JUMPDEST 00001549: PUSH1 0x04 0000154b: SLOAD 0000154c: PUSH1 0x00 0000154e: SWAP1 0000154f: PUSH1 0x01 00001551: PUSH1 0xa0 00001553: PUSH1 0x02 00001555: EXP 00001556: SUB 00001557: AND 00001558: PUSH4 0x18160ddd 0000155d: DUP3 0000155e: PUSH1 0x40 00001560: MLOAD 00001561: PUSH1 0x20 00001563: ADD 00001564: MSTORE 00001565: PUSH1 0x40 00001567: MLOAD 00001568: DUP2 00001569: PUSH4 0xffffffff 0000156e: AND 0000156f: PUSH1 0xe0 00001571: PUSH1 0x02 00001573: EXP 00001574: MUL 00001575: DUP2 00001576: MSTORE 00001577: PUSH1 0x04 00001579: ADD 0000157a: PUSH1 0x20 0000157c: PUSH1 0x40 0000157e: MLOAD 0000157f: DUP1 00001580: DUP4 00001581: SUB 00001582: DUP2 00001583: PUSH1 0x00 00001585: DUP8 00001586: DUP1 00001587: EXTCODESIZE 00001588: ISZERO 00001589: ISZERO 0000158a: PUSH2 0x1592 0000158d: JUMPI 0000158e: PUSH1 0x00 00001590: DUP1 00001591: REVERT 00001592: JUMPDEST 00001593: PUSH2 0x02c6 00001596: GAS 00001597: SUB 00001598: CALL 00001599: ISZERO 0000159a: ISZERO 0000159b: PUSH2 0x15a3 0000159e: JUMPI 0000159f: PUSH1 0x00 000015a1: DUP1 000015a2: REVERT 000015a3: JUMPDEST 000015a4: POP 000015a5: POP 000015a6: POP 000015a7: PUSH1 0x40 000015a9: MLOAD 000015aa: DUP1 000015ab: MLOAD 000015ac: ISZERO 000015ad: SWAP1 000015ae: POP 000015af: PUSH2 0x1625 000015b2: JUMPI 000015b3: PUSH2 0x113b 000015b6: PUSH2 0x15bd 000015b9: PUSH2 0x182e 000015bc: JUMP 000015bd: JUMPDEST 000015be: PUSH1 0x04 000015c0: SLOAD 000015c1: PUSH1 0x01 000015c3: PUSH1 0xa0 000015c5: PUSH1 0x02 000015c7: EXP 000015c8: SUB 000015c9: AND 000015ca: PUSH4 0x18160ddd 000015cf: PUSH1 0x00 000015d1: PUSH1 0x40 000015d3: MLOAD 000015d4: PUSH1 0x20 000015d6: ADD 000015d7: MSTORE 000015d8: PUSH1 0x40 000015da: MLOAD 000015db: DUP2 000015dc: PUSH4 0xffffffff 000015e1: AND 000015e2: PUSH1 0xe0 000015e4: PUSH1 0x02 000015e6: EXP 000015e7: MUL 000015e8: DUP2 000015e9: MSTORE 000015ea: PUSH1 0x04 000015ec: ADD 000015ed: PUSH1 0x20 000015ef: PUSH1 0x40 000015f1: MLOAD 000015f2: DUP1 000015f3: DUP4 000015f4: SUB 000015f5: DUP2 000015f6: PUSH1 0x00 000015f8: DUP8 000015f9: DUP1 000015fa: EXTCODESIZE 000015fb: ISZERO 000015fc: ISZERO 000015fd: PUSH2 0x1605 00001600: JUMPI 00001601: PUSH1 0x00 00001603: DUP1 00001604: REVERT 00001605: JUMPDEST 00001606: PUSH2 0x02c6 00001609: GAS 0000160a: SUB 0000160b: CALL 0000160c: ISZERO 0000160d: ISZERO 0000160e: PUSH2 0x1616 00001611: JUMPI 00001612: PUSH1 0x00 00001614: DUP1 00001615: REVERT 00001616: JUMPDEST 00001617: POP 00001618: POP 00001619: POP 0000161a: PUSH1 0x40 0000161c: MLOAD 0000161d: DUP1 0000161e: MLOAD 0000161f: SWAP1 00001620: POP 00001621: PUSH2 0x275e 00001624: JUMP 00001625: JUMPDEST 00001626: POP 00001627: PUSH12 0x033b2e3c9fd0803ce8000000 00001634: SWAP1 00001635: JUMP 00001636: JUMPDEST 00001637: PUSH1 0x04 00001639: CALLDATALOAD 0000163a: PUSH1 0x24 0000163c: CALLDATALOAD 0000163d: DUP1 0000163e: DUP3 0000163f: CALLER 00001640: PUSH1 0x01 00001642: PUSH1 0xa0 00001644: PUSH1 0x02 00001646: EXP 00001647: SUB 00001648: AND 00001649: PUSH1 0x00 0000164b: DUP1 0000164c: CALLDATALOAD 0000164d: PUSH1 0x01 0000164f: PUSH1 0xe0 00001651: PUSH1 0x02 00001653: EXP 00001654: SUB 00001655: NOT 00001656: AND 00001657: SWAP1 00001658: CALLVALUE 00001659: SWAP1 0000165a: CALLDATASIZE 0000165b: PUSH1 0x40 0000165d: MLOAD 0000165e: DUP4 0000165f: DUP2 00001660: MSTORE 00001661: PUSH1 0x40 00001663: PUSH1 0x20 00001665: DUP3 00001666: ADD 00001667: DUP2 00001668: DUP2 00001669: MSTORE 0000166a: SWAP1 0000166b: DUP3 0000166c: ADD 0000166d: DUP4 0000166e: SWAP1 0000166f: MSTORE 00001670: PUSH1 0x60 00001672: DUP3 00001673: ADD 00001674: DUP5 00001675: DUP5 00001676: DUP1 00001677: DUP3 00001678: DUP5 00001679: CALLDATACOPY 0000167a: DUP3 0000167b: ADD 0000167c: SWAP2 0000167d: POP 0000167e: POP 0000167f: SWAP5 00001680: POP 00001681: POP 00001682: POP 00001683: POP 00001684: POP 00001685: PUSH1 0x40 00001687: MLOAD 00001688: DUP1 00001689: SWAP2 0000168a: SUB 0000168b: SWAP1 0000168c: LOG4 0000168d: PUSH1 0x12 0000168f: SLOAD 00001690: PUSH1 0xff 00001692: AND 00001693: ISZERO 00001694: DUP1 00001695: PUSH2 0x16a5 00001698: JUMPI 00001699: POP 0000169a: PUSH1 0x12 0000169c: SLOAD 0000169d: PUSH2 0x0100 000016a0: SWAP1 000016a1: DIV 000016a2: PUSH1 0xff 000016a4: AND 000016a5: JUMPDEST 000016a6: ISZERO 000016a7: ISZERO 000016a8: PUSH2 0x16b0 000016ab: JUMPI 000016ac: PUSH1 0x00 000016ae: DUP1 000016af: REVERT 000016b0: JUMPDEST 000016b1: PUSH1 0x05 000016b3: SLOAD 000016b4: PUSH1 0x01 000016b6: PUSH1 0xa0 000016b8: PUSH1 0x02 000016ba: EXP 000016bb: SUB 000016bc: AND 000016bd: PUSH4 0xa9059cbb 000016c2: CALLER 000016c3: PUSH2 0x16cb 000016c6: DUP7 000016c7: PUSH2 0x1077 000016ca: JUMP 000016cb: JUMPDEST 000016cc: PUSH1 0x00 000016ce: PUSH1 0x40 000016d0: MLOAD 000016d1: PUSH1 0x20 000016d3: ADD 000016d4: MSTORE 000016d5: PUSH1 0x40 000016d7: MLOAD 000016d8: PUSH1 0xe0 000016da: PUSH1 0x02 000016dc: EXP 000016dd: PUSH4 0xffffffff 000016e2: DUP6 000016e3: AND 000016e4: MUL 000016e5: DUP2 000016e6: MSTORE 000016e7: PUSH1 0x01 000016e9: PUSH1 0xa0 000016eb: PUSH1 0x02 000016ed: EXP 000016ee: SUB 000016ef: SWAP1 000016f0: SWAP3 000016f1: AND 000016f2: PUSH1 0x04 000016f4: DUP4 000016f5: ADD 000016f6: MSTORE 000016f7: PUSH1 0x24 000016f9: DUP3 000016fa: ADD 000016fb: MSTORE 000016fc: PUSH1 0x44 000016fe: ADD 000016ff: PUSH1 0x20 00001701: PUSH1 0x40 00001703: MLOAD 00001704: DUP1 00001705: DUP4 00001706: SUB 00001707: DUP2 00001708: PUSH1 0x00 0000170a: DUP8 0000170b: DUP1 0000170c: EXTCODESIZE 0000170d: ISZERO 0000170e: ISZERO 0000170f: PUSH2 0x1717 00001712: JUMPI 00001713: PUSH1 0x00 00001715: DUP1 00001716: REVERT 00001717: JUMPDEST 00001718: PUSH2 0x02c6 0000171b: GAS 0000171c: SUB 0000171d: CALL 0000171e: ISZERO 0000171f: ISZERO 00001720: PUSH2 0x1728 00001723: JUMPI 00001724: PUSH1 0x00 00001726: DUP1 00001727: REVERT 00001728: JUMPDEST 00001729: POP 0000172a: POP 0000172b: POP 0000172c: PUSH1 0x40 0000172e: MLOAD 0000172f: DUP1 00001730: MLOAD 00001731: SWAP1 00001732: POP 00001733: ISZERO 00001734: ISZERO 00001735: PUSH2 0x173d 00001738: JUMPI 00001739: PUSH1 0x00 0000173b: DUP1 0000173c: REVERT 0000173d: JUMPDEST 0000173e: PUSH1 0x04 00001740: SLOAD 00001741: PUSH1 0x01 00001743: PUSH1 0xa0 00001745: PUSH1 0x02 00001747: EXP 00001748: SUB 00001749: AND 0000174a: PUSH4 0x9dc29fac 0000174f: CALLER 00001750: DUP6 00001751: PUSH1 0x40 00001753: MLOAD 00001754: PUSH1 0xe0 00001756: PUSH1 0x02 00001758: EXP 00001759: PUSH4 0xffffffff 0000175e: DUP6 0000175f: AND 00001760: MUL 00001761: DUP2 00001762: MSTORE 00001763: PUSH1 0x01 00001765: PUSH1 0xa0 00001767: PUSH1 0x02 00001769: EXP 0000176a: SUB 0000176b: SWAP1 0000176c: SWAP3 0000176d: AND 0000176e: PUSH1 0x04 00001770: DUP4 00001771: ADD 00001772: MSTORE 00001773: PUSH1 0x24 00001775: DUP3 00001776: ADD 00001777: MSTORE 00001778: PUSH1 0x44 0000177a: ADD 0000177b: PUSH1 0x00 0000177d: PUSH1 0x40 0000177f: MLOAD 00001780: DUP1 00001781: DUP4 00001782: SUB 00001783: DUP2 00001784: PUSH1 0x00 00001786: DUP8 00001787: DUP1 00001788: EXTCODESIZE 00001789: ISZERO 0000178a: ISZERO 0000178b: PUSH2 0x09b4 0000178e: JUMPI 0000178f: PUSH1 0x00 00001791: DUP1 00001792: REVERT 00001793: JUMPDEST 00001794: PUSH1 0x04 00001796: CALLDATALOAD 00001797: PUSH1 0x24 00001799: CALLDATALOAD 0000179a: DUP1 0000179b: DUP3 0000179c: CALLER 0000179d: PUSH1 0x01 0000179f: PUSH1 0xa0 000017a1: PUSH1 0x02 000017a3: EXP 000017a4: SUB 000017a5: AND 000017a6: PUSH1 0x00 000017a8: DUP1 000017a9: CALLDATALOAD 000017aa: PUSH1 0x01 000017ac: PUSH1 0xe0 000017ae: PUSH1 0x02 000017b0: EXP 000017b1: SUB 000017b2: NOT 000017b3: AND 000017b4: SWAP1 000017b5: CALLVALUE 000017b6: SWAP1 000017b7: CALLDATASIZE 000017b8: PUSH1 0x40 000017ba: MLOAD 000017bb: DUP4 000017bc: DUP2 000017bd: MSTORE 000017be: PUSH1 0x40 000017c0: PUSH1 0x20 000017c2: DUP3 000017c3: ADD 000017c4: DUP2 000017c5: DUP2 000017c6: MSTORE 000017c7: SWAP1 000017c8: DUP3 000017c9: ADD 000017ca: DUP4 000017cb: SWAP1 000017cc: MSTORE 000017cd: PUSH1 0x60 000017cf: DUP3 000017d0: ADD 000017d1: DUP5 000017d2: DUP5 000017d3: DUP1 000017d4: DUP3 000017d5: DUP5 000017d6: CALLDATACOPY 000017d7: DUP3 000017d8: ADD 000017d9: SWAP2 000017da: POP 000017db: POP 000017dc: SWAP5 000017dd: POP 000017de: POP 000017df: POP 000017e0: POP 000017e1: POP 000017e2: PUSH1 0x40 000017e4: MLOAD 000017e5: DUP1 000017e6: SWAP2 000017e7: SUB 000017e8: SWAP1 000017e9: LOG4 000017ea: PUSH2 0x17ff 000017ed: CALLER 000017ee: PUSH1 0x00 000017f0: CALLDATALOAD 000017f1: PUSH1 0x01 000017f3: PUSH1 0xe0 000017f5: PUSH1 0x02 000017f7: EXP 000017f8: SUB 000017f9: NOT 000017fa: AND 000017fb: PUSH2 0x2615 000017fe: JUMP 000017ff: JUMPDEST 00001800: ISZERO 00001801: ISZERO 00001802: PUSH2 0x180a 00001805: JUMPI 00001806: PUSH1 0x00 00001808: DUP1 00001809: REVERT 0000180a: JUMPDEST 0000180b: POP 0000180c: POP 0000180d: PUSH1 0x08 0000180f: DUP1 00001810: SLOAD 00001811: PUSH1 0x01 00001813: PUSH1 0xa0 00001815: PUSH1 0x02 00001817: EXP 00001818: SUB 00001819: NOT 0000181a: AND 0000181b: PUSH1 0x01 0000181d: PUSH1 0xa0 0000181f: PUSH1 0x02 00001821: EXP 00001822: SUB 00001823: SWAP3 00001824: SWAP1 00001825: SWAP3 00001826: AND 00001827: SWAP2 00001828: SWAP1 00001829: SWAP2 0000182a: OR 0000182b: SWAP1 0000182c: SSTORE 0000182d: JUMP 0000182e: JUMPDEST 0000182f: PUSH1 0x05 00001831: SLOAD 00001832: PUSH1 0x00 00001834: SWAP1 00001835: PUSH1 0x01 00001837: PUSH1 0xa0 00001839: PUSH1 0x02 0000183b: EXP 0000183c: SUB 0000183d: AND 0000183e: PUSH4 0x70a08231 00001843: ADDRESS 00001844: DUP4 00001845: PUSH1 0x40 00001847: MLOAD 00001848: PUSH1 0x20 0000184a: ADD 0000184b: MSTORE 0000184c: PUSH1 0x40 0000184e: MLOAD 0000184f: PUSH1 0xe0 00001851: PUSH1 0x02 00001853: EXP 00001854: PUSH4 0xffffffff 00001859: DUP5 0000185a: AND 0000185b: MUL 0000185c: DUP2 0000185d: MSTORE 0000185e: PUSH1 0x01 00001860: PUSH1 0xa0 00001862: PUSH1 0x02 00001864: EXP 00001865: SUB 00001866: SWAP1 00001867: SWAP2 00001868: AND 00001869: PUSH1 0x04 0000186b: DUP3 0000186c: ADD 0000186d: MSTORE 0000186e: PUSH1 0x24 00001870: ADD 00001871: PUSH1 0x20 00001873: PUSH1 0x40 00001875: MLOAD 00001876: DUP1 00001877: DUP4 00001878: SUB 00001879: DUP2 0000187a: PUSH1 0x00 0000187c: DUP8 0000187d: DUP1 0000187e: EXTCODESIZE 0000187f: ISZERO 00001880: ISZERO 00001881: PUSH2 0x0ae6 00001884: JUMPI 00001885: PUSH1 0x00 00001887: DUP1 00001888: REVERT 00001889: JUMPDEST 0000188a: PUSH1 0x04 0000188c: CALLDATALOAD 0000188d: PUSH1 0x24 0000188f: CALLDATALOAD 00001890: DUP1 00001891: DUP3 00001892: CALLER 00001893: PUSH1 0x01 00001895: PUSH1 0xa0 00001897: PUSH1 0x02 00001899: EXP 0000189a: SUB 0000189b: AND 0000189c: PUSH1 0x00 0000189e: DUP1 0000189f: CALLDATALOAD 000018a0: PUSH1 0x01 000018a2: PUSH1 0xe0 000018a4: PUSH1 0x02 000018a6: EXP 000018a7: SUB 000018a8: NOT 000018a9: AND 000018aa: SWAP1 000018ab: CALLVALUE 000018ac: SWAP1 000018ad: CALLDATASIZE 000018ae: PUSH1 0x40 000018b0: MLOAD 000018b1: DUP4 000018b2: DUP2 000018b3: MSTORE 000018b4: PUSH1 0x40 000018b6: PUSH1 0x20 000018b8: DUP3 000018b9: ADD 000018ba: DUP2 000018bb: DUP2 000018bc: MSTORE 000018bd: SWAP1 000018be: DUP3 000018bf: ADD 000018c0: DUP4 000018c1: SWAP1 000018c2: MSTORE 000018c3: PUSH1 0x60 000018c5: DUP3 000018c6: ADD 000018c7: DUP5 000018c8: DUP5 000018c9: DUP1 000018ca: DUP3 000018cb: DUP5 000018cc: CALLDATACOPY 000018cd: DUP3 000018ce: ADD 000018cf: SWAP2 000018d0: POP 000018d1: POP 000018d2: SWAP5 000018d3: POP 000018d4: POP 000018d5: POP 000018d6: POP 000018d7: POP 000018d8: PUSH1 0x40 000018da: MLOAD 000018db: DUP1 000018dc: SWAP2 000018dd: SUB 000018de: SWAP1 000018df: LOG4 000018e0: PUSH2 0x18f5 000018e3: CALLER 000018e4: PUSH1 0x00 000018e6: CALLDATALOAD 000018e7: PUSH1 0x01 000018e9: PUSH1 0xe0 000018eb: PUSH1 0x02 000018ed: EXP 000018ee: SUB 000018ef: NOT 000018f0: AND 000018f1: PUSH2 0x2615 000018f4: JUMP 000018f5: JUMPDEST 000018f6: ISZERO 000018f7: ISZERO 000018f8: PUSH2 0x1900 000018fb: JUMPI 000018fc: PUSH1 0x00 000018fe: DUP1 000018ff: REVERT 00001900: JUMPDEST 00001901: PUSH1 0x12 00001903: SLOAD 00001904: PUSH1 0xff 00001906: AND 00001907: ISZERO 00001908: DUP1 00001909: ISZERO 0000190a: PUSH2 0x1912 0000190d: JUMPI 0000190e: POP 0000190f: DUP4 00001910: ISZERO 00001911: ISZERO 00001912: JUMPDEST 00001913: ISZERO 00001914: ISZERO 00001915: PUSH2 0x191d 00001918: JUMPI 00001919: PUSH1 0x00 0000191b: DUP1 0000191c: REVERT 0000191d: JUMPDEST 0000191e: PUSH1 0x12 00001920: DUP1 00001921: SLOAD 00001922: PUSH1 0xff 00001924: NOT 00001925: AND 00001926: PUSH1 0x01 00001928: OR 00001929: SWAP1 0000192a: SSTORE 0000192b: PUSH12 0x033b2e3c9fd0803ce8000000 00001938: PUSH1 0x0c 0000193a: SSTORE 0000193b: PUSH8 0x0de0b6b3a7640000 00001944: PUSH1 0x11 00001946: SSTORE 00001947: PUSH1 0x13 00001949: DUP5 0000194a: SWAP1 0000194b: SSTORE 0000194c: PUSH1 0x05 0000194e: SLOAD 0000194f: PUSH1 0x0a 00001951: SLOAD 00001952: PUSH1 0x01 00001954: PUSH1 0xa0 00001956: PUSH1 0x02 00001958: EXP 00001959: SUB 0000195a: SWAP2 0000195b: DUP3 0000195c: AND 0000195d: SWAP2 0000195e: PUSH4 0xa9059cbb 00001963: SWAP2 00001964: AND 00001965: DUP6 00001966: PUSH1 0x00 00001968: PUSH1 0x40 0000196a: MLOAD 0000196b: PUSH1 0x20 0000196d: ADD 0000196e: MSTORE 0000196f: PUSH1 0x40 00001971: MLOAD 00001972: PUSH1 0xe0 00001974: PUSH1 0x02 00001976: EXP 00001977: PUSH4 0xffffffff 0000197c: DUP6 0000197d: AND 0000197e: MUL 0000197f: DUP2 00001980: MSTORE 00001981: PUSH1 0x01 00001983: PUSH1 0xa0 00001985: PUSH1 0x02 00001987: EXP 00001988: SUB 00001989: SWAP1 0000198a: SWAP3 0000198b: AND 0000198c: PUSH1 0x04 0000198e: DUP4 0000198f: ADD 00001990: MSTORE 00001991: PUSH1 0x24 00001993: DUP3 00001994: ADD 00001995: MSTORE 00001996: PUSH1 0x44 00001998: ADD 00001999: PUSH1 0x20 0000199b: PUSH1 0x40 0000199d: MLOAD 0000199e: DUP1 0000199f: DUP4 000019a0: SUB 000019a1: DUP2 000019a2: PUSH1 0x00 000019a4: DUP8 000019a5: DUP1 000019a6: EXTCODESIZE 000019a7: ISZERO 000019a8: ISZERO 000019a9: PUSH2 0x19b1 000019ac: JUMPI 000019ad: PUSH1 0x00 000019af: DUP1 000019b0: REVERT 000019b1: JUMPDEST 000019b2: PUSH2 0x02c6 000019b5: GAS 000019b6: SUB 000019b7: CALL 000019b8: ISZERO 000019b9: ISZERO 000019ba: PUSH2 0x19c2 000019bd: JUMPI 000019be: PUSH1 0x00 000019c0: DUP1 000019c1: REVERT 000019c2: JUMPDEST 000019c3: POP 000019c4: POP 000019c5: POP 000019c6: PUSH1 0x40 000019c8: MLOAD 000019c9: DUP1 000019ca: MLOAD 000019cb: SWAP1 000019cc: POP 000019cd: ISZERO 000019ce: ISZERO 000019cf: PUSH2 0x1071 000019d2: JUMPI 000019d3: PUSH1 0x00 000019d5: DUP1 000019d6: REVERT 000019d7: JUMPDEST 000019d8: PUSH1 0x17 000019da: SLOAD 000019db: DUP2 000019dc: JUMP 000019dd: JUMPDEST 000019de: PUSH1 0x01 000019e0: SLOAD 000019e1: PUSH1 0x01 000019e3: PUSH1 0xa0 000019e5: PUSH1 0x02 000019e7: EXP 000019e8: SUB 000019e9: AND 000019ea: DUP2 000019eb: JUMP 000019ec: JUMPDEST 000019ed: PUSH1 0x02 000019ef: SLOAD 000019f0: PUSH1 0x01 000019f2: PUSH1 0xa0 000019f4: PUSH1 0x02 000019f6: EXP 000019f7: SUB 000019f8: AND 000019f9: DUP2 000019fa: JUMP 000019fb: JUMPDEST 000019fc: PUSH1 0x04 000019fe: CALLDATALOAD 000019ff: PUSH1 0x24 00001a01: CALLDATALOAD 00001a02: DUP1 00001a03: DUP3 00001a04: CALLER 00001a05: PUSH1 0x01 00001a07: PUSH1 0xa0 00001a09: PUSH1 0x02 00001a0b: EXP 00001a0c: SUB 00001a0d: AND 00001a0e: PUSH1 0x00 00001a10: DUP1 00001a11: CALLDATALOAD 00001a12: PUSH1 0x01 00001a14: PUSH1 0xe0 00001a16: PUSH1 0x02 00001a18: EXP 00001a19: SUB 00001a1a: NOT 00001a1b: AND 00001a1c: SWAP1 00001a1d: CALLVALUE 00001a1e: SWAP1 00001a1f: CALLDATASIZE 00001a20: PUSH1 0x40 00001a22: MLOAD 00001a23: DUP4 00001a24: DUP2 00001a25: MSTORE 00001a26: PUSH1 0x40 00001a28: PUSH1 0x20 00001a2a: DUP3 00001a2b: ADD 00001a2c: DUP2 00001a2d: DUP2 00001a2e: MSTORE 00001a2f: SWAP1 00001a30: DUP3 00001a31: ADD 00001a32: DUP4 00001a33: SWAP1 00001a34: MSTORE 00001a35: PUSH1 0x60 00001a37: DUP3 00001a38: ADD 00001a39: DUP5 00001a3a: DUP5 00001a3b: DUP1 00001a3c: DUP3 00001a3d: DUP5 00001a3e: CALLDATACOPY 00001a3f: DUP3 00001a40: ADD 00001a41: SWAP2 00001a42: POP 00001a43: POP 00001a44: SWAP5 00001a45: POP 00001a46: POP 00001a47: POP 00001a48: POP 00001a49: POP 00001a4a: PUSH1 0x40 00001a4c: MLOAD 00001a4d: DUP1 00001a4e: SWAP2 00001a4f: SUB 00001a50: SWAP1 00001a51: LOG4 00001a52: PUSH2 0x1a67 00001a55: CALLER 00001a56: PUSH1 0x00 00001a58: CALLDATALOAD 00001a59: PUSH1 0x01 00001a5b: PUSH1 0xe0 00001a5d: PUSH1 0x02 00001a5f: EXP 00001a60: SUB 00001a61: NOT 00001a62: AND 00001a63: PUSH2 0x2615 00001a66: JUMP 00001a67: JUMPDEST 00001a68: ISZERO 00001a69: ISZERO 00001a6a: PUSH2 0x1a72 00001a6d: JUMPI 00001a6e: PUSH1 0x00 00001a70: DUP1 00001a71: REVERT 00001a72: JUMPDEST 00001a73: PUSH32 0x6361700000000000000000000000000000000000000000000000000000000000 00001a94: DUP5 00001a95: EQ 00001a96: ISZERO 00001a97: PUSH2 0x1aa4 00001a9a: JUMPI 00001a9b: PUSH1 0x0d 00001a9d: DUP4 00001a9e: SWAP1 00001a9f: SSTORE 00001aa0: PUSH2 0x1071 00001aa3: JUMP 00001aa4: JUMPDEST 00001aa5: PUSH32 0x6d61740000000000000000000000000000000000000000000000000000000000 00001ac6: DUP5 00001ac7: EQ 00001ac8: ISZERO 00001ac9: PUSH2 0x1aef 00001acc: JUMPI 00001acd: PUSH12 0x033b2e3c9fd0803ce8000000 00001ada: DUP4 00001adb: LT 00001adc: ISZERO 00001add: PUSH2 0x1ae5 00001ae0: JUMPI 00001ae1: PUSH1 0x00 00001ae3: DUP1 00001ae4: REVERT 00001ae5: JUMPDEST 00001ae6: PUSH1 0x0e 00001ae8: DUP4 00001ae9: SWAP1 00001aea: SSTORE 00001aeb: PUSH2 0x1071 00001aee: JUMP 00001aef: JUMPDEST 00001af0: PUSH32 0x7461780000000000000000000000000000000000000000000000000000000000 00001b11: DUP5 00001b12: EQ 00001b13: ISZERO 00001b14: PUSH2 0x1b42 00001b17: JUMPI 00001b18: PUSH12 0x033b2e3c9fd0803ce8000000 00001b25: DUP4 00001b26: LT 00001b27: ISZERO 00001b28: PUSH2 0x1b30 00001b2b: JUMPI 00001b2c: PUSH1 0x00 00001b2e: DUP1 00001b2f: REVERT 00001b30: JUMPDEST 00001b31: PUSH2 0x1b38 00001b34: PUSH2 0x1c32 00001b37: JUMP 00001b38: JUMPDEST 00001b39: PUSH1 0x0f 00001b3b: DUP4 00001b3c: SWAP1 00001b3d: SSTORE 00001b3e: PUSH2 0x1071 00001b41: JUMP 00001b42: JUMPDEST 00001b43: PUSH32 0x6665650000000000000000000000000000000000000000000000000000000000 00001b64: DUP5 00001b65: EQ 00001b66: ISZERO 00001b67: PUSH2 0x1b95 00001b6a: JUMPI 00001b6b: PUSH12 0x033b2e3c9fd0803ce8000000 00001b78: DUP4 00001b79: LT 00001b7a: ISZERO 00001b7b: PUSH2 0x1b83 00001b7e: JUMPI 00001b7f: PUSH1 0x00 00001b81: DUP1 00001b82: REVERT 00001b83: JUMPDEST 00001b84: PUSH2 0x1b8b 00001b87: PUSH2 0x1c32 00001b8a: JUMP 00001b8b: JUMPDEST 00001b8c: PUSH1 0x10 00001b8e: DUP4 00001b8f: SWAP1 00001b90: SSTORE 00001b91: PUSH2 0x1071 00001b94: JUMP 00001b95: JUMPDEST 00001b96: PUSH32 0x6178650000000000000000000000000000000000000000000000000000000000 00001bb7: DUP5 00001bb8: EQ 00001bb9: ISZERO 00001bba: PUSH2 0x1be0 00001bbd: JUMPI 00001bbe: PUSH12 0x033b2e3c9fd0803ce8000000 00001bcb: DUP4 00001bcc: LT 00001bcd: ISZERO 00001bce: PUSH2 0x1bd6 00001bd1: JUMPI 00001bd2: PUSH1 0x00 00001bd4: DUP1 00001bd5: REVERT 00001bd6: JUMPDEST 00001bd7: PUSH1 0x0c 00001bd9: DUP4 00001bda: SWAP1 00001bdb: SSTORE 00001bdc: PUSH2 0x1071 00001bdf: JUMP 00001be0: JUMPDEST 00001be1: PUSH32 0x6761700000000000000000000000000000000000000000000000000000000000 00001c02: DUP5 00001c03: EQ 00001c04: ISZERO 00001c05: PUSH2 0x1c27 00001c08: JUMPI 00001c09: PUSH8 0x0de0b6b3a7640000 00001c12: DUP4 00001c13: LT 00001c14: ISZERO 00001c15: PUSH2 0x1c1d 00001c18: JUMPI 00001c19: PUSH1 0x00 00001c1b: DUP1 00001c1c: REVERT 00001c1d: JUMPDEST 00001c1e: PUSH1 0x11 00001c20: DUP4 00001c21: SWAP1 00001c22: SSTORE 00001c23: PUSH2 0x1071 00001c26: JUMP 00001c27: JUMPDEST 00001c28: PUSH2 0x1071 00001c2b: JUMP 00001c2c: JUMPDEST 00001c2d: PUSH1 0x0f 00001c2f: SLOAD 00001c30: DUP2 00001c31: JUMP 00001c32: JUMPDEST 00001c33: PUSH1 0x00 00001c35: DUP1 00001c36: DUP1 00001c37: DUP1 00001c38: PUSH1 0x04 00001c3a: CALLDATALOAD 00001c3b: PUSH1 0x24 00001c3d: CALLDATALOAD 00001c3e: DUP1 00001c3f: DUP3 00001c40: PUSH1 0x01 00001c42: PUSH1 0xa0 00001c44: PUSH1 0x02 00001c46: EXP 00001c47: SUB 00001c48: CALLER 00001c49: AND 00001c4a: PUSH1 0x01 00001c4c: PUSH1 0xe0 00001c4e: PUSH1 0x02 00001c50: EXP 00001c51: SUB 00001c52: NOT 00001c53: DUP7 00001c54: CALLDATALOAD 00001c55: AND 00001c56: CALLVALUE 00001c57: DUP8 00001c58: CALLDATASIZE 00001c59: PUSH1 0x40 00001c5b: MLOAD 00001c5c: DUP4 00001c5d: DUP2 00001c5e: MSTORE 00001c5f: PUSH1 0x40 00001c61: PUSH1 0x20 00001c63: DUP3 00001c64: ADD 00001c65: DUP2 00001c66: DUP2 00001c67: MSTORE 00001c68: SWAP1 00001c69: DUP3 00001c6a: ADD 00001c6b: DUP4 00001c6c: SWAP1 00001c6d: MSTORE 00001c6e: PUSH1 0x60 00001c70: DUP3 00001c71: ADD 00001c72: DUP5 00001c73: DUP5 00001c74: DUP1 00001c75: DUP3 00001c76: DUP5 00001c77: CALLDATACOPY 00001c78: DUP3 00001c79: ADD 00001c7a: SWAP2 00001c7b: POP 00001c7c: POP 00001c7d: SWAP5 00001c7e: POP 00001c7f: POP 00001c80: POP 00001c81: POP 00001c82: POP 00001c83: PUSH1 0x40 00001c85: MLOAD 00001c86: DUP1 00001c87: SWAP2 00001c88: SUB 00001c89: SWAP1 00001c8a: LOG4 00001c8b: PUSH1 0x12 00001c8d: SLOAD 00001c8e: PUSH1 0xff 00001c90: AND 00001c91: ISZERO 00001c92: PUSH2 0x1c9a 00001c95: JUMPI 00001c96: PUSH2 0x09c5 00001c99: JUMP 00001c9a: JUMPDEST 00001c9b: PUSH2 0x1ca2 00001c9e: PUSH2 0x0a6c 00001ca1: JUMP 00001ca2: JUMPDEST 00001ca3: SWAP6 00001ca4: POP 00001ca5: PUSH1 0x14 00001ca7: SLOAD 00001ca8: DUP7 00001ca9: SUB 00001caa: SWAP5 00001cab: POP 00001cac: DUP5 00001cad: PUSH1 0x00 00001caf: EQ 00001cb0: ISZERO 00001cb1: PUSH2 0x1cb9 00001cb4: JUMPI 00001cb5: PUSH2 0x09c5 00001cb8: JUMP 00001cb9: JUMPDEST 00001cba: PUSH1 0x14 00001cbc: DUP7 00001cbd: SWAP1 00001cbe: SSTORE 00001cbf: PUSH1 0x0f 00001cc1: SLOAD 00001cc2: PUSH12 0x033b2e3c9fd0803ce8000000 00001ccf: SWAP5 00001cd0: POP 00001cd1: DUP5 00001cd2: EQ 00001cd3: PUSH2 0x1d84 00001cd6: JUMPI 00001cd7: PUSH1 0x15 00001cd9: SLOAD 00001cda: SWAP3 00001cdb: POP 00001cdc: PUSH2 0x1ce7 00001cdf: PUSH1 0x0f 00001ce1: SLOAD 00001ce2: DUP7 00001ce3: PUSH2 0x27d2 00001ce6: JUMP 00001ce7: JUMPDEST 00001ce8: SWAP4 00001ce9: POP 00001cea: PUSH2 0x1cf5 00001ced: PUSH1 0x15 00001cef: SLOAD 00001cf0: DUP6 00001cf1: PUSH2 0x271b 00001cf4: JUMP 00001cf5: JUMPDEST 00001cf6: PUSH1 0x15 00001cf8: DUP2 00001cf9: SWAP1 00001cfa: SSTORE 00001cfb: PUSH1 0x02 00001cfd: SLOAD 00001cfe: PUSH1 0x0a 00001d00: SLOAD 00001d01: PUSH1 0x01 00001d03: PUSH1 0xa0 00001d05: PUSH1 0x02 00001d07: EXP 00001d08: SUB 00001d09: SWAP2 00001d0a: DUP3 00001d0b: AND 00001d0c: SWAP3 00001d0d: PUSH4 0x40c10f19 00001d12: SWAP3 00001d13: SWAP1 00001d14: SWAP2 00001d15: AND 00001d16: SWAP1 00001d17: PUSH2 0x1d2c 00001d1a: SWAP1 00001d1b: PUSH2 0x1d24 00001d1e: SWAP1 00001d1f: DUP9 00001d20: PUSH2 0x270b 00001d23: JUMP 00001d24: JUMPDEST 00001d25: PUSH1 0x17 00001d27: SLOAD 00001d28: PUSH2 0x271b 00001d2b: JUMP 00001d2c: JUMPDEST 00001d2d: PUSH1 0x40 00001d2f: MLOAD 00001d30: PUSH1 0xe0 00001d32: PUSH1 0x02 00001d34: EXP 00001d35: PUSH4 0xffffffff 00001d3a: DUP6 00001d3b: AND 00001d3c: MUL 00001d3d: DUP2 00001d3e: MSTORE 00001d3f: PUSH1 0x01 00001d41: PUSH1 0xa0 00001d43: PUSH1 0x02 00001d45: EXP 00001d46: SUB 00001d47: SWAP1 00001d48: SWAP3 00001d49: AND 00001d4a: PUSH1 0x04 00001d4c: DUP4 00001d4d: ADD 00001d4e: MSTORE 00001d4f: PUSH1 0x24 00001d51: DUP3 00001d52: ADD 00001d53: MSTORE 00001d54: PUSH1 0x44 00001d56: ADD 00001d57: PUSH1 0x00 00001d59: PUSH1 0x40 00001d5b: MLOAD 00001d5c: DUP1 00001d5d: DUP4 00001d5e: SUB 00001d5f: DUP2 00001d60: PUSH1 0x00 00001d62: DUP8 00001d63: DUP1 00001d64: EXTCODESIZE 00001d65: ISZERO 00001d66: ISZERO 00001d67: PUSH2 0x1d6f 00001d6a: JUMPI 00001d6b: PUSH1 0x00 00001d6d: DUP1 00001d6e: REVERT 00001d6f: JUMPDEST 00001d70: PUSH2 0x02c6 00001d73: GAS 00001d74: SUB 00001d75: CALL 00001d76: ISZERO 00001d77: ISZERO 00001d78: PUSH2 0x1d80 00001d7b: JUMPI 00001d7c: PUSH1 0x00 00001d7e: DUP1 00001d7f: REVERT 00001d80: JUMPDEST 00001d81: POP 00001d82: POP 00001d83: POP 00001d84: JUMPDEST 00001d85: PUSH1 0x10 00001d87: SLOAD 00001d88: PUSH12 0x033b2e3c9fd0803ce8000000 00001d95: EQ 00001d96: PUSH2 0x1dac 00001d99: JUMPI 00001d9a: PUSH2 0x1da9 00001d9d: DUP5 00001d9e: PUSH2 0x10a4 00001da1: PUSH1 0x10 00001da3: SLOAD 00001da4: DUP9 00001da5: PUSH2 0x27d2 00001da8: JUMP 00001da9: JUMPDEST 00001daa: SWAP4 00001dab: POP 00001dac: JUMPDEST 00001dad: PUSH12 0x033b2e3c9fd0803ce8000000 00001dba: DUP5 00001dbb: EQ 00001dbc: PUSH2 0x09c5 00001dbf: JUMPI 00001dc0: PUSH2 0x1dcb 00001dc3: PUSH1 0x16 00001dc5: SLOAD 00001dc6: DUP6 00001dc7: PUSH2 0x271b 00001dca: JUMP 00001dcb: JUMPDEST 00001dcc: PUSH1 0x16 00001dce: SSTORE 00001dcf: POP 00001dd0: POP 00001dd1: POP 00001dd2: POP 00001dd3: POP 00001dd4: POP 00001dd5: JUMP 00001dd6: JUMPDEST 00001dd7: PUSH1 0x04 00001dd9: CALLDATALOAD 00001dda: PUSH1 0x24 00001ddc: CALLDATALOAD 00001ddd: DUP1 00001dde: DUP3 00001ddf: CALLER 00001de0: PUSH1 0x01 00001de2: PUSH1 0xa0 00001de4: PUSH1 0x02 00001de6: EXP 00001de7: SUB 00001de8: AND 00001de9: PUSH1 0x00 00001deb: DUP1 00001dec: CALLDATALOAD 00001ded: PUSH1 0x01 00001def: PUSH1 0xe0 00001df1: PUSH1 0x02 00001df3: EXP 00001df4: SUB 00001df5: NOT 00001df6: AND 00001df7: SWAP1 00001df8: CALLVALUE 00001df9: SWAP1 00001dfa: CALLDATASIZE 00001dfb: PUSH1 0x40 00001dfd: MLOAD 00001dfe: DUP4 00001dff: DUP2 00001e00: MSTORE 00001e01: PUSH1 0x40 00001e03: PUSH1 0x20 00001e05: DUP3 00001e06: ADD 00001e07: DUP2 00001e08: DUP2 00001e09: MSTORE 00001e0a: SWAP1 00001e0b: DUP3 00001e0c: ADD 00001e0d: DUP4 00001e0e: SWAP1 00001e0f: MSTORE 00001e10: PUSH1 0x60 00001e12: DUP3 00001e13: ADD 00001e14: DUP5 00001e15: DUP5 00001e16: DUP1 00001e17: DUP3 00001e18: DUP5 00001e19: CALLDATACOPY 00001e1a: DUP3 00001e1b: ADD 00001e1c: SWAP2 00001e1d: POP 00001e1e: POP 00001e1f: SWAP5 00001e20: POP 00001e21: POP 00001e22: POP 00001e23: POP 00001e24: POP 00001e25: PUSH1 0x40 00001e27: MLOAD 00001e28: DUP1 00001e29: SWAP2 00001e2a: SUB 00001e2b: SWAP1 00001e2c: LOG4 00001e2d: PUSH1 0x00 00001e2f: DUP5 00001e30: DUP2 00001e31: MSTORE 00001e32: PUSH1 0x19 00001e34: PUSH1 0x20 00001e36: MSTORE 00001e37: PUSH1 0x40 00001e39: SWAP1 00001e3a: KECCAK256 00001e3b: SLOAD 00001e3c: CALLER 00001e3d: PUSH1 0x01 00001e3f: PUSH1 0xa0 00001e41: PUSH1 0x02 00001e43: EXP 00001e44: SUB 00001e45: SWAP1 00001e46: DUP2 00001e47: AND 00001e48: SWAP2 00001e49: AND 00001e4a: EQ 00001e4b: PUSH2 0x1e53 00001e4e: JUMPI 00001e4f: PUSH1 0x00 00001e51: DUP1 00001e52: REVERT 00001e53: JUMPDEST 00001e54: PUSH1 0x00 00001e56: DUP5 00001e57: DUP2 00001e58: MSTORE 00001e59: PUSH1 0x19 00001e5b: PUSH1 0x20 00001e5d: MSTORE 00001e5e: PUSH1 0x40 00001e60: SWAP1 00001e61: KECCAK256 00001e62: PUSH1 0x01 00001e64: ADD 00001e65: SLOAD 00001e66: PUSH2 0x1e6f 00001e69: SWAP1 00001e6a: DUP5 00001e6b: PUSH2 0x270b 00001e6e: JUMP 00001e6f: JUMPDEST 00001e70: PUSH1 0x00 00001e72: DUP6 00001e73: DUP2 00001e74: MSTORE 00001e75: PUSH1 0x19 00001e77: PUSH1 0x20 00001e79: MSTORE 00001e7a: PUSH1 0x40 00001e7c: SWAP1 00001e7d: DUP2 00001e7e: SWAP1 00001e7f: KECCAK256 00001e80: PUSH1 0x01 00001e82: ADD 00001e83: SWAP2 00001e84: SWAP1 00001e85: SWAP2 00001e86: SSTORE 00001e87: PUSH1 0x04 00001e89: SLOAD 00001e8a: PUSH1 0x01 00001e8c: PUSH1 0xa0 00001e8e: PUSH1 0x02 00001e90: EXP 00001e91: SUB 00001e92: AND 00001e93: SWAP1 00001e94: PUSH4 0xb753a98c 00001e99: SWAP1 00001e9a: CALLER 00001e9b: SWAP1 00001e9c: DUP7 00001e9d: SWAP1 00001e9e: MLOAD 00001e9f: PUSH1 0xe0 00001ea1: PUSH1 0x02 00001ea3: EXP 00001ea4: PUSH4 0xffffffff 00001ea9: DUP6 00001eaa: AND 00001eab: MUL 00001eac: DUP2 00001ead: MSTORE 00001eae: PUSH1 0x01 00001eb0: PUSH1 0xa0 00001eb2: PUSH1 0x02 00001eb4: EXP 00001eb5: SUB 00001eb6: SWAP1 00001eb7: SWAP3 00001eb8: AND 00001eb9: PUSH1 0x04 00001ebb: DUP4 00001ebc: ADD 00001ebd: MSTORE 00001ebe: PUSH1 0x24 00001ec0: DUP3 00001ec1: ADD 00001ec2: MSTORE 00001ec3: PUSH1 0x44 00001ec5: ADD 00001ec6: PUSH1 0x00 00001ec8: PUSH1 0x40 00001eca: MLOAD 00001ecb: DUP1 00001ecc: DUP4 00001ecd: SUB 00001ece: DUP2 00001ecf: PUSH1 0x00 00001ed1: DUP8 00001ed2: DUP1 00001ed3: EXTCODESIZE 00001ed4: ISZERO 00001ed5: ISZERO 00001ed6: PUSH2 0x1ede 00001ed9: JUMPI 00001eda: PUSH1 0x00 00001edc: DUP1 00001edd: REVERT 00001ede: JUMPDEST 00001edf: PUSH2 0x02c6 00001ee2: GAS 00001ee3: SUB 00001ee4: CALL 00001ee5: ISZERO 00001ee6: ISZERO 00001ee7: PUSH2 0x1eef 00001eea: JUMPI 00001eeb: PUSH1 0x00 00001eed: DUP1 00001eee: REVERT 00001eef: JUMPDEST 00001ef0: POP 00001ef1: POP 00001ef2: POP 00001ef3: PUSH2 0x1efb 00001ef6: DUP5 00001ef7: PUSH2 0x2423 00001efa: JUMP 00001efb: JUMPDEST 00001efc: ISZERO 00001efd: ISZERO 00001efe: PUSH2 0x1f06 00001f01: JUMPI 00001f02: PUSH1 0x00 00001f04: DUP1 00001f05: REVERT 00001f06: JUMPDEST 00001f07: PUSH1 0x00 00001f09: DUP5 00001f0a: DUP2 00001f0b: MSTORE 00001f0c: PUSH1 0x19 00001f0e: PUSH1 0x20 00001f10: MSTORE 00001f11: PUSH1 0x40 00001f13: SWAP1 00001f14: KECCAK256 00001f15: PUSH1 0x01 00001f17: ADD 00001f18: SLOAD 00001f19: ISZERO 00001f1a: DUP1 00001f1b: PUSH2 0x1f3c 00001f1e: JUMPI 00001f1f: POP 00001f20: PUSH1 0x00 00001f22: DUP5 00001f23: DUP2 00001f24: MSTORE 00001f25: PUSH1 0x19 00001f27: PUSH1 0x20 00001f29: MSTORE 00001f2a: PUSH1 0x40 00001f2c: SWAP1 00001f2d: KECCAK256 00001f2e: PUSH1 0x01 00001f30: ADD 00001f31: SLOAD 00001f32: PUSH7 0x11c37937e08000 00001f3a: SWAP1 00001f3b: GT 00001f3c: JUMPDEST 00001f3d: ISZERO 00001f3e: ISZERO 00001f3f: PUSH2 0x1071 00001f42: JUMPI 00001f43: PUSH1 0x00 00001f45: DUP1 00001f46: REVERT 00001f47: JUMPDEST 00001f48: PUSH1 0x0e 00001f4a: SLOAD 00001f4b: DUP2 00001f4c: JUMP 00001f4d: JUMPDEST 00001f4e: PUSH1 0x09 00001f50: SLOAD 00001f51: PUSH1 0x01 00001f53: PUSH1 0xa0 00001f55: PUSH1 0x02 00001f57: EXP 00001f58: SUB 00001f59: AND 00001f5a: DUP2 00001f5b: JUMP 00001f5c: JUMPDEST 00001f5d: PUSH1 0x12 00001f5f: SLOAD 00001f60: PUSH2 0x0100 00001f63: SWAP1 00001f64: DIV 00001f65: PUSH1 0xff 00001f67: AND 00001f68: DUP2 00001f69: JUMP 00001f6a: JUMPDEST 00001f6b: PUSH1 0x04 00001f6d: CALLDATALOAD 00001f6e: PUSH1 0x24 00001f70: CALLDATALOAD 00001f71: DUP1 00001f72: DUP3 00001f73: CALLER 00001f74: PUSH1 0x01 00001f76: PUSH1 0xa0 00001f78: PUSH1 0x02 00001f7a: EXP 00001f7b: SUB 00001f7c: AND 00001f7d: PUSH1 0x00 00001f7f: DUP1 00001f80: CALLDATALOAD 00001f81: PUSH1 0x01 00001f83: PUSH1 0xe0 00001f85: PUSH1 0x02 00001f87: EXP 00001f88: SUB 00001f89: NOT 00001f8a: AND 00001f8b: SWAP1 00001f8c: CALLVALUE 00001f8d: SWAP1 00001f8e: CALLDATASIZE 00001f8f: PUSH1 0x40 00001f91: MLOAD 00001f92: DUP4 00001f93: DUP2 00001f94: MSTORE 00001f95: PUSH1 0x40 00001f97: PUSH1 0x20 00001f99: DUP3 00001f9a: ADD 00001f9b: DUP2 00001f9c: DUP2 00001f9d: MSTORE 00001f9e: SWAP1 00001f9f: DUP3 00001fa0: ADD 00001fa1: DUP4 00001fa2: SWAP1 00001fa3: MSTORE 00001fa4: PUSH1 0x60 00001fa6: DUP3 00001fa7: ADD 00001fa8: DUP5 00001fa9: DUP5 00001faa: DUP1 00001fab: DUP3 00001fac: DUP5 00001fad: CALLDATACOPY 00001fae: DUP3 00001faf: ADD 00001fb0: SWAP2 00001fb1: POP 00001fb2: POP 00001fb3: SWAP5 00001fb4: POP 00001fb5: POP 00001fb6: POP 00001fb7: POP 00001fb8: POP 00001fb9: PUSH1 0x40 00001fbb: MLOAD 00001fbc: DUP1 00001fbd: SWAP2 00001fbe: SUB 00001fbf: SWAP1 00001fc0: LOG4 00001fc1: PUSH1 0x12 00001fc3: SLOAD 00001fc4: PUSH1 0xff 00001fc6: AND 00001fc7: ISZERO 00001fc8: PUSH2 0x1fd0 00001fcb: JUMPI 00001fcc: PUSH1 0x00 00001fce: DUP1 00001fcf: REVERT 00001fd0: JUMPDEST 00001fd1: PUSH1 0x00 00001fd3: DUP5 00001fd4: DUP2 00001fd5: MSTORE 00001fd6: PUSH1 0x19 00001fd8: PUSH1 0x20 00001fda: MSTORE 00001fdb: PUSH1 0x40 00001fdd: SWAP1 00001fde: KECCAK256 00001fdf: PUSH1 0x01 00001fe1: ADD 00001fe2: SLOAD 00001fe3: PUSH2 0x1fec 00001fe6: SWAP1 00001fe7: DUP5 00001fe8: PUSH2 0x2782 00001feb: JUMP 00001fec: JUMPDEST 00001fed: PUSH1 0x00 00001fef: DUP6 00001ff0: DUP2 00001ff1: MSTORE 00001ff2: PUSH1 0x19 00001ff4: PUSH1 0x20 00001ff6: MSTORE 00001ff7: PUSH1 0x40 00001ff9: SWAP1 00001ffa: DUP2 00001ffb: SWAP1 00001ffc: KECCAK256 00001ffd: PUSH1 0x01 00001fff: ADD 00002000: SWAP2 00002001: SWAP1 00002002: SWAP2 00002003: SSTORE 00002004: PUSH1 0x04 00002006: SLOAD 00002007: PUSH1 0x01 00002009: PUSH1 0xa0 0000200b: PUSH1 0x02 0000200d: EXP 0000200e: SUB 0000200f: AND 00002010: SWAP1 00002011: PUSH4 0xf2d5d56b 00002016: SWAP1 00002017: CALLER 00002018: SWAP1 00002019: DUP7 0000201a: SWAP1 0000201b: MLOAD 0000201c: PUSH1 0xe0 0000201e: PUSH1 0x02 00002020: EXP 00002021: PUSH4 0xffffffff 00002026: DUP6 00002027: AND 00002028: MUL 00002029: DUP2 0000202a: MSTORE 0000202b: PUSH1 0x01 0000202d: PUSH1 0xa0 0000202f: PUSH1 0x02 00002031: EXP 00002032: SUB 00002033: SWAP1 00002034: SWAP3 00002035: AND 00002036: PUSH1 0x04 00002038: DUP4 00002039: ADD 0000203a: MSTORE 0000203b: PUSH1 0x24 0000203d: DUP3 0000203e: ADD 0000203f: MSTORE 00002040: PUSH1 0x44 00002042: ADD 00002043: PUSH1 0x00 00002045: PUSH1 0x40 00002047: MLOAD 00002048: DUP1 00002049: DUP4 0000204a: SUB 0000204b: DUP2 0000204c: PUSH1 0x00 0000204e: DUP8 0000204f: DUP1 00002050: EXTCODESIZE 00002051: ISZERO 00002052: ISZERO 00002053: PUSH2 0x205b 00002056: JUMPI 00002057: PUSH1 0x00 00002059: DUP1 0000205a: REVERT 0000205b: JUMPDEST 0000205c: PUSH2 0x02c6 0000205f: GAS 00002060: SUB 00002061: CALL 00002062: ISZERO 00002063: ISZERO 00002064: PUSH2 0x206c 00002067: JUMPI 00002068: PUSH1 0x00 0000206a: DUP1 0000206b: REVERT 0000206c: JUMPDEST 0000206d: POP 0000206e: POP 0000206f: POP 00002070: PUSH1 0x00 00002072: DUP5 00002073: DUP2 00002074: MSTORE 00002075: PUSH1 0x19 00002077: PUSH1 0x20 00002079: MSTORE 0000207a: PUSH1 0x40 0000207c: SWAP1 0000207d: KECCAK256 0000207e: PUSH1 0x01 00002080: ADD 00002081: SLOAD 00002082: ISZERO 00002083: DUP1 00002084: PUSH2 0x1f3c 00002087: JUMPI 00002088: POP 00002089: PUSH1 0x00 0000208b: DUP5 0000208c: DUP2 0000208d: MSTORE 0000208e: PUSH1 0x19 00002090: PUSH1 0x20 00002092: MSTORE 00002093: PUSH1 0x40 00002095: SWAP1 00002096: KECCAK256 00002097: PUSH1 0x01 00002099: ADD 0000209a: SLOAD 0000209b: PUSH7 0x11c37937e08000 000020a3: SWAP1 000020a4: GT 000020a5: PUSH2 0x1071 000020a8: JUMPI 000020a9: PUSH1 0x00 000020ab: DUP1 000020ac: REVERT 000020ad: JUMPDEST 000020ae: PUSH1 0x04 000020b0: CALLDATALOAD 000020b1: PUSH1 0x24 000020b3: CALLDATALOAD 000020b4: DUP1 000020b5: DUP3 000020b6: CALLER 000020b7: PUSH1 0x01 000020b9: PUSH1 0xa0 000020bb: PUSH1 0x02 000020bd: EXP 000020be: SUB 000020bf: AND 000020c0: PUSH1 0x00 000020c2: DUP1 000020c3: CALLDATALOAD 000020c4: PUSH1 0x01 000020c6: PUSH1 0xe0 000020c8: PUSH1 0x02 000020ca: EXP 000020cb: SUB 000020cc: NOT 000020cd: AND 000020ce: SWAP1 000020cf: CALLVALUE 000020d0: SWAP1 000020d1: CALLDATASIZE 000020d2: PUSH1 0x40 000020d4: MLOAD 000020d5: DUP4 000020d6: DUP2 000020d7: MSTORE 000020d8: PUSH1 0x40 000020da: PUSH1 0x20 000020dc: DUP3 000020dd: ADD 000020de: DUP2 000020df: DUP2 000020e0: MSTORE 000020e1: SWAP1 000020e2: DUP3 000020e3: ADD 000020e4: DUP4 000020e5: SWAP1 000020e6: MSTORE 000020e7: PUSH1 0x60 000020e9: DUP3 000020ea: ADD 000020eb: DUP5 000020ec: DUP5 000020ed: DUP1 000020ee: DUP3 000020ef: DUP5 000020f0: CALLDATACOPY 000020f1: DUP3 000020f2: ADD 000020f3: SWAP2 000020f4: POP 000020f5: POP 000020f6: SWAP5 000020f7: POP 000020f8: POP 000020f9: POP 000020fa: POP 000020fb: POP 000020fc: PUSH1 0x40 000020fe: MLOAD 000020ff: DUP1 00002100: SWAP2 00002101: SUB 00002102: SWAP1 00002103: LOG4 00002104: PUSH1 0x12 00002106: SLOAD 00002107: PUSH1 0xff 00002109: AND 0000210a: ISZERO 0000210b: PUSH2 0x2113 0000210e: JUMPI 0000210f: PUSH1 0x00 00002111: DUP1 00002112: REVERT 00002113: JUMPDEST 00002114: PUSH1 0x00 00002116: DUP4 00002117: DUP2 00002118: MSTORE 00002119: PUSH1 0x19 0000211b: PUSH1 0x20 0000211d: MSTORE 0000211e: PUSH1 0x40 00002120: SWAP1 00002121: KECCAK256 00002122: SLOAD 00002123: CALLER 00002124: PUSH1 0x01 00002126: PUSH1 0xa0 00002128: PUSH1 0x02 0000212a: EXP 0000212b: SUB 0000212c: SWAP1 0000212d: DUP2 0000212e: AND 0000212f: SWAP2 00002130: AND 00002131: EQ 00002132: PUSH2 0x213a 00002135: JUMPI 00002136: PUSH1 0x00 00002138: DUP1 00002139: REVERT 0000213a: JUMPDEST 0000213b: PUSH2 0x2143 0000213e: DUP4 0000213f: PUSH2 0x24d9 00002142: JUMP 00002143: JUMPDEST 00002144: ISZERO 00002145: PUSH2 0x215a 00002148: JUMPI 00002149: PUSH2 0x215a 0000214c: DUP4 0000214d: PUSH2 0x2155 00002150: DUP6 00002151: PUSH2 0x24d9 00002154: JUMP 00002155: JUMPDEST 00002156: PUSH2 0x1197 00002159: JUMP 0000215a: JUMPDEST 0000215b: PUSH2 0x2163 0000215e: DUP4 0000215f: PUSH2 0x0a70 00002162: JUMP 00002163: JUMPDEST 00002164: ISZERO 00002165: PUSH2 0x217a 00002168: JUMPI 00002169: PUSH2 0x217a 0000216c: DUP4 0000216d: PUSH2 0x2175 00002170: DUP6 00002171: PUSH2 0x0a70 00002174: JUMP 00002175: JUMPDEST 00002176: PUSH2 0x1dd6 00002179: JUMP 0000217a: JUMPDEST 0000217b: POP 0000217c: POP 0000217d: PUSH1 0x00 0000217f: SWAP1 00002180: DUP2 00002181: MSTORE 00002182: PUSH1 0x19 00002184: PUSH1 0x20 00002186: MSTORE 00002187: PUSH1 0x40 00002189: DUP2 0000218a: KECCAK256 0000218b: DUP1 0000218c: SLOAD 0000218d: PUSH1 0x01 0000218f: PUSH1 0xa0 00002191: PUSH1 0x02 00002193: EXP 00002194: SUB 00002195: NOT 00002196: AND 00002197: DUP2 00002198: SSTORE 00002199: PUSH1 0x01 0000219b: DUP2 0000219c: ADD 0000219d: DUP3 0000219e: SWAP1 0000219f: SSTORE 000021a0: PUSH1 0x02 000021a2: DUP2 000021a3: ADD 000021a4: DUP3 000021a5: SWAP1 000021a6: SSTORE 000021a7: PUSH1 0x03 000021a9: ADD 000021aa: SSTORE 000021ab: JUMP 000021ac: JUMPDEST 000021ad: PUSH1 0x04 000021af: CALLDATALOAD 000021b0: PUSH1 0x24 000021b2: CALLDATALOAD 000021b3: DUP1 000021b4: DUP3 000021b5: CALLER 000021b6: PUSH1 0x01 000021b8: PUSH1 0xa0 000021ba: PUSH1 0x02 000021bc: EXP 000021bd: SUB 000021be: AND 000021bf: PUSH1 0x00 000021c1: DUP1 000021c2: CALLDATALOAD 000021c3: PUSH1 0x01 000021c5: PUSH1 0xe0 000021c7: PUSH1 0x02 000021c9: EXP 000021ca: SUB 000021cb: NOT 000021cc: AND 000021cd: SWAP1 000021ce: CALLVALUE 000021cf: SWAP1 000021d0: CALLDATASIZE 000021d1: PUSH1 0x40 000021d3: MLOAD 000021d4: DUP4 000021d5: DUP2 000021d6: MSTORE 000021d7: PUSH1 0x40 000021d9: PUSH1 0x20 000021db: DUP3 000021dc: ADD 000021dd: DUP2 000021de: DUP2 000021df: MSTORE 000021e0: SWAP1 000021e1: DUP3 000021e2: ADD 000021e3: DUP4 000021e4: SWAP1 000021e5: MSTORE 000021e6: PUSH1 0x60 000021e8: DUP3 000021e9: ADD 000021ea: DUP5 000021eb: DUP5 000021ec: DUP1 000021ed: DUP3 000021ee: DUP5 000021ef: CALLDATACOPY 000021f0: DUP3 000021f1: ADD 000021f2: SWAP2 000021f3: POP 000021f4: POP 000021f5: SWAP5 000021f6: POP 000021f7: POP 000021f8: POP 000021f9: POP 000021fa: POP 000021fb: PUSH1 0x40 000021fd: MLOAD 000021fe: DUP1 000021ff: SWAP2 00002200: SUB 00002201: SWAP1 00002202: LOG4 00002203: PUSH1 0x00 00002205: DUP5 00002206: DUP2 00002207: MSTORE 00002208: PUSH1 0x19 0000220a: PUSH1 0x20 0000220c: MSTORE 0000220d: PUSH1 0x40 0000220f: SWAP1 00002210: KECCAK256 00002211: SLOAD 00002212: CALLER 00002213: PUSH1 0x01 00002215: PUSH1 0xa0 00002217: PUSH1 0x02 00002219: EXP 0000221a: SUB 0000221b: SWAP1 0000221c: DUP2 0000221d: AND 0000221e: SWAP2 0000221f: AND 00002220: EQ 00002221: PUSH2 0x2229 00002224: JUMPI 00002225: PUSH1 0x00 00002227: DUP1 00002228: REVERT 00002229: JUMPDEST 0000222a: PUSH1 0x01 0000222c: PUSH1 0xa0 0000222e: PUSH1 0x02 00002230: EXP 00002231: SUB 00002232: DUP4 00002233: AND 00002234: ISZERO 00002235: ISZERO 00002236: PUSH2 0x223e 00002239: JUMPI 0000223a: PUSH1 0x00 0000223c: DUP1 0000223d: REVERT 0000223e: JUMPDEST 0000223f: POP 00002240: POP 00002241: PUSH1 0x00 00002243: SWAP2 00002244: DUP3 00002245: MSTORE 00002246: PUSH1 0x19 00002248: PUSH1 0x20 0000224a: MSTORE 0000224b: PUSH1 0x40 0000224d: SWAP1 0000224e: SWAP2 0000224f: KECCAK256 00002250: DUP1 00002251: SLOAD 00002252: PUSH1 0x01 00002254: PUSH1 0xa0 00002256: PUSH1 0x02 00002258: EXP 00002259: SUB 0000225a: NOT 0000225b: AND 0000225c: PUSH1 0x01 0000225e: PUSH1 0xa0 00002260: PUSH1 0x02 00002262: EXP 00002263: SUB 00002264: SWAP1 00002265: SWAP3 00002266: AND 00002267: SWAP2 00002268: SWAP1 00002269: SWAP2 0000226a: OR 0000226b: SWAP1 0000226c: SSTORE 0000226d: JUMP 0000226e: JUMPDEST 0000226f: PUSH1 0x00 00002271: SLOAD 00002272: PUSH1 0x01 00002274: PUSH1 0xa0 00002276: PUSH1 0x02 00002278: EXP 00002279: SUB 0000227a: AND 0000227b: DUP2 0000227c: JUMP 0000227d: JUMPDEST 0000227e: PUSH1 0x13 00002280: SLOAD 00002281: DUP2 00002282: JUMP 00002283: JUMPDEST 00002284: PUSH1 0x00 00002286: PUSH2 0x228d 00002289: PUSH2 0x1c32 0000228c: JUMP 0000228d: JUMPDEST 0000228e: POP 0000228f: PUSH1 0x15 00002291: SLOAD 00002292: SWAP1 00002293: JUMP 00002294: JUMPDEST 00002295: PUSH1 0x04 00002297: CALLDATALOAD 00002298: PUSH1 0x24 0000229a: CALLDATALOAD 0000229b: DUP1 0000229c: DUP3 0000229d: CALLER 0000229e: PUSH1 0x01 000022a0: PUSH1 0xa0 000022a2: PUSH1 0x02 000022a4: EXP 000022a5: SUB 000022a6: AND 000022a7: PUSH1 0x00 000022a9: DUP1 000022aa: CALLDATALOAD 000022ab: PUSH1 0x01 000022ad: PUSH1 0xe0 000022af: PUSH1 0x02 000022b1: EXP 000022b2: SUB 000022b3: NOT 000022b4: AND 000022b5: SWAP1 000022b6: CALLVALUE 000022b7: SWAP1 000022b8: CALLDATASIZE 000022b9: PUSH1 0x40 000022bb: MLOAD 000022bc: DUP4 000022bd: DUP2 000022be: MSTORE 000022bf: PUSH1 0x40 000022c1: PUSH1 0x20 000022c3: DUP3 000022c4: ADD 000022c5: DUP2 000022c6: DUP2 000022c7: MSTORE 000022c8: SWAP1 000022c9: DUP3 000022ca: ADD 000022cb: DUP4 000022cc: SWAP1 000022cd: MSTORE 000022ce: PUSH1 0x60 000022d0: DUP3 000022d1: ADD 000022d2: DUP5 000022d3: DUP5 000022d4: DUP1 000022d5: DUP3 000022d6: DUP5 000022d7: CALLDATACOPY 000022d8: DUP3 000022d9: ADD 000022da: SWAP2 000022db: POP 000022dc: POP 000022dd: SWAP5 000022de: POP 000022df: POP 000022e0: POP 000022e1: POP 000022e2: POP 000022e3: PUSH1 0x40 000022e5: MLOAD 000022e6: DUP1 000022e7: SWAP2 000022e8: SUB 000022e9: SWAP1 000022ea: LOG4 000022eb: PUSH2 0x2300 000022ee: CALLER 000022ef: PUSH1 0x00 000022f1: CALLDATALOAD 000022f2: PUSH1 0x01 000022f4: PUSH1 0xe0 000022f6: PUSH1 0x02 000022f8: EXP 000022f9: SUB 000022fa: NOT 000022fb: AND 000022fc: PUSH2 0x2615 000022ff: JUMP 00002300: JUMPDEST 00002301: ISZERO 00002302: ISZERO 00002303: PUSH2 0x230b 00002306: JUMPI 00002307: PUSH1 0x00 00002309: DUP1 0000230a: REVERT 0000230b: JUMPDEST 0000230c: POP 0000230d: POP 0000230e: PUSH1 0x07 00002310: DUP1 00002311: SLOAD 00002312: PUSH1 0x01 00002314: PUSH1 0xa0 00002316: PUSH1 0x02 00002318: EXP 00002319: SUB 0000231a: NOT 0000231b: AND 0000231c: PUSH1 0x01 0000231e: PUSH1 0xa0 00002320: PUSH1 0x02 00002322: EXP 00002323: SUB 00002324: SWAP3 00002325: SWAP1 00002326: SWAP3 00002327: AND 00002328: SWAP2 00002329: SWAP1 0000232a: SWAP2 0000232b: OR 0000232c: SWAP1 0000232d: SSTORE 0000232e: JUMP 0000232f: JUMPDEST 00002330: PUSH1 0x08 00002332: SLOAD 00002333: PUSH1 0x01 00002335: PUSH1 0xa0 00002337: PUSH1 0x02 00002339: EXP 0000233a: SUB 0000233b: AND 0000233c: DUP2 0000233d: JUMP 0000233e: JUMPDEST 0000233f: PUSH1 0x04 00002341: CALLDATALOAD 00002342: PUSH1 0x24 00002344: CALLDATALOAD 00002345: DUP1 00002346: DUP3 00002347: CALLER 00002348: PUSH1 0x01 0000234a: PUSH1 0xa0 0000234c: PUSH1 0x02 0000234e: EXP 0000234f: SUB 00002350: AND 00002351: PUSH1 0x00 00002353: DUP1 00002354: CALLDATALOAD 00002355: PUSH1 0x01 00002357: PUSH1 0xe0 00002359: PUSH1 0x02 0000235b: EXP 0000235c: SUB 0000235d: NOT 0000235e: AND 0000235f: SWAP1 00002360: CALLVALUE 00002361: SWAP1 00002362: CALLDATASIZE 00002363: PUSH1 0x40 00002365: MLOAD 00002366: DUP4 00002367: DUP2 00002368: MSTORE 00002369: PUSH1 0x40 0000236b: PUSH1 0x20 0000236d: DUP3 0000236e: ADD 0000236f: DUP2 00002370: DUP2 00002371: MSTORE 00002372: SWAP1 00002373: DUP3 00002374: ADD 00002375: DUP4 00002376: SWAP1 00002377: MSTORE 00002378: PUSH1 0x60 0000237a: DUP3 0000237b: ADD 0000237c: DUP5 0000237d: DUP5 0000237e: DUP1 0000237f: DUP3 00002380: DUP5 00002381: CALLDATACOPY 00002382: DUP3 00002383: ADD 00002384: SWAP2 00002385: POP 00002386: POP 00002387: SWAP5 00002388: POP 00002389: POP 0000238a: POP 0000238b: POP 0000238c: POP 0000238d: PUSH1 0x40 0000238f: MLOAD 00002390: DUP1 00002391: SWAP2 00002392: SUB 00002393: SWAP1 00002394: LOG4 00002395: PUSH2 0x23aa 00002398: CALLER 00002399: PUSH1 0x00 0000239b: CALLDATALOAD 0000239c: PUSH1 0x01 0000239e: PUSH1 0xe0 000023a0: PUSH1 0x02 000023a2: EXP 000023a3: SUB 000023a4: NOT 000023a5: AND 000023a6: PUSH2 0x2615 000023a9: JUMP 000023aa: JUMPDEST 000023ab: ISZERO 000023ac: ISZERO 000023ad: PUSH2 0x23b5 000023b0: JUMPI 000023b1: PUSH1 0x00 000023b3: DUP1 000023b4: REVERT 000023b5: JUMPDEST 000023b6: POP 000023b7: POP 000023b8: PUSH1 0x09 000023ba: DUP1 000023bb: SLOAD 000023bc: PUSH1 0x01 000023be: PUSH1 0xa0 000023c0: PUSH1 0x02 000023c2: EXP 000023c3: SUB 000023c4: NOT 000023c5: AND 000023c6: PUSH1 0x01 000023c8: PUSH1 0xa0 000023ca: PUSH1 0x02 000023cc: EXP 000023cd: SUB 000023ce: SWAP3 000023cf: SWAP1 000023d0: SWAP3 000023d1: AND 000023d2: SWAP2 000023d3: SWAP1 000023d4: SWAP2 000023d5: OR 000023d6: SWAP1 000023d7: SSTORE 000023d8: JUMP 000023d9: JUMPDEST 000023da: PUSH1 0x10 000023dc: SLOAD 000023dd: DUP2 000023de: JUMP 000023df: JUMPDEST 000023e0: PUSH1 0x00 000023e2: SWAP1 000023e3: DUP2 000023e4: MSTORE 000023e5: PUSH1 0x19 000023e7: PUSH1 0x20 000023e9: MSTORE 000023ea: PUSH1 0x40 000023ec: SWAP1 000023ed: KECCAK256 000023ee: SLOAD 000023ef: PUSH1 0x01 000023f1: PUSH1 0xa0 000023f3: PUSH1 0x02 000023f5: EXP 000023f6: SUB 000023f7: AND 000023f8: SWAP1 000023f9: JUMP 000023fa: JUMPDEST 000023fb: PUSH1 0x00 000023fd: PUSH2 0x1144 00002400: PUSH1 0x17 00002402: SLOAD 00002403: PUSH2 0x10a4 00002406: PUSH2 0x2283 00002409: JUMP 0000240a: JUMPDEST 0000240b: PUSH1 0x00 0000240d: PUSH2 0x10a9 00002410: DUP3 00002411: PUSH2 0x10a4 00002414: PUSH2 0x241b 00002417: PUSH2 0x1548 0000241a: JUMP 0000241b: JUMPDEST 0000241c: PUSH1 0x11 0000241e: SLOAD 0000241f: PUSH2 0x2792 00002422: JUMP 00002423: JUMPDEST 00002424: PUSH1 0x00 00002426: DUP1 00002427: PUSH1 0x00 00002429: DUP1 0000242a: PUSH2 0x243d 0000242d: PUSH2 0x2434 00002430: PUSH2 0x10bb 00002433: JUMP 00002434: JUMPDEST 00002435: PUSH2 0x10a4 00002438: DUP8 00002439: PUSH2 0x0a70 0000243c: JUMP 0000243d: JUMPDEST 0000243e: PUSH1 0x07 00002440: SLOAD 00002441: SWAP1 00002442: SWAP4 00002443: POP 00002444: PUSH2 0x24b0 00002447: SWAP1 00002448: PUSH1 0x01 0000244a: PUSH1 0xa0 0000244c: PUSH1 0x02 0000244e: EXP 0000244f: SUB 00002450: AND 00002451: PUSH4 0x495d32cb 00002456: PUSH1 0x00 00002458: PUSH1 0x40 0000245a: MLOAD 0000245b: PUSH1 0x20 0000245d: ADD 0000245e: MSTORE 0000245f: PUSH1 0x40 00002461: MLOAD 00002462: DUP2 00002463: PUSH4 0xffffffff 00002468: AND 00002469: PUSH1 0xe0 0000246b: PUSH1 0x02 0000246d: EXP 0000246e: MUL 0000246f: DUP2 00002470: MSTORE 00002471: PUSH1 0x04 00002473: ADD 00002474: PUSH1 0x20 00002476: PUSH1 0x40 00002478: MLOAD 00002479: DUP1 0000247a: DUP4 0000247b: SUB 0000247c: DUP2 0000247d: PUSH1 0x00 0000247f: DUP8 00002480: DUP1 00002481: EXTCODESIZE 00002482: ISZERO 00002483: ISZERO 00002484: PUSH2 0x248c 00002487: JUMPI 00002488: PUSH1 0x00 0000248a: DUP1 0000248b: REVERT 0000248c: JUMPDEST 0000248d: PUSH2 0x02c6 00002490: GAS 00002491: SUB 00002492: CALL 00002493: ISZERO 00002494: ISZERO 00002495: PUSH2 0x249d 00002498: JUMPI 00002499: PUSH1 0x00 0000249b: DUP1 0000249c: REVERT 0000249d: JUMPDEST 0000249e: POP 0000249f: POP 000024a0: POP 000024a1: PUSH1 0x40 000024a3: MLOAD 000024a4: DUP1 000024a5: MLOAD 000024a6: SWAP1 000024a7: POP 000024a8: PUSH2 0x10a4 000024ab: DUP8 000024ac: PUSH2 0x24d9 000024af: JUMP 000024b0: JUMPDEST 000024b1: SWAP2 000024b2: POP 000024b3: PUSH2 0x24be 000024b6: DUP3 000024b7: PUSH1 0x0e 000024b9: SLOAD 000024ba: PUSH2 0x271b 000024bd: JUMP 000024be: JUMPDEST 000024bf: SWAP1 000024c0: SWAP3 000024c1: LT 000024c2: ISZERO 000024c3: SWAP5 000024c4: SWAP4 000024c5: POP 000024c6: POP 000024c7: POP 000024c8: POP 000024c9: JUMP 000024ca: JUMPDEST 000024cb: PUSH1 0x0b 000024cd: SLOAD 000024ce: PUSH1 0x01 000024d0: PUSH1 0xa0 000024d2: PUSH1 0x02 000024d4: EXP 000024d5: SUB 000024d6: AND 000024d7: DUP2 000024d8: JUMP 000024d9: JUMPDEST 000024da: PUSH1 0x00 000024dc: DUP2 000024dd: DUP2 000024de: MSTORE 000024df: PUSH1 0x19 000024e1: PUSH1 0x20 000024e3: MSTORE 000024e4: PUSH1 0x40 000024e6: DUP2 000024e7: KECCAK256 000024e8: PUSH1 0x02 000024ea: ADD 000024eb: SLOAD 000024ec: PUSH2 0x10a9 000024ef: SWAP1 000024f0: PUSH2 0x10a4 000024f3: PUSH2 0x2283 000024f6: JUMP 000024f7: JUMPDEST 000024f8: PUSH1 0x00 000024fa: PUSH1 0x04 000024fc: CALLDATALOAD 000024fd: PUSH1 0x24 000024ff: CALLDATALOAD 00002500: DUP1 00002501: DUP3 00002502: PUSH1 0x01 00002504: PUSH1 0xa0 00002506: PUSH1 0x02 00002508: EXP 00002509: SUB 0000250a: CALLER 0000250b: AND 0000250c: PUSH1 0x01 0000250e: PUSH1 0xe0 00002510: PUSH1 0x02 00002512: EXP 00002513: SUB 00002514: NOT 00002515: DUP7 00002516: CALLDATALOAD 00002517: AND 00002518: CALLVALUE 00002519: DUP8 0000251a: CALLDATASIZE 0000251b: PUSH1 0x40 0000251d: MLOAD 0000251e: DUP4 0000251f: DUP2 00002520: MSTORE 00002521: PUSH1 0x40 00002523: PUSH1 0x20 00002525: DUP3 00002526: ADD 00002527: DUP2 00002528: DUP2 00002529: MSTORE 0000252a: SWAP1 0000252b: DUP3 0000252c: ADD 0000252d: DUP4 0000252e: SWAP1 0000252f: MSTORE 00002530: PUSH1 0x60 00002532: DUP3 00002533: ADD 00002534: DUP5 00002535: DUP5 00002536: DUP1 00002537: DUP3 00002538: DUP5 00002539: CALLDATACOPY 0000253a: DUP3 0000253b: ADD 0000253c: SWAP2 0000253d: POP 0000253e: POP 0000253f: SWAP5 00002540: POP 00002541: POP 00002542: POP 00002543: POP 00002544: POP 00002545: PUSH1 0x40 00002547: MLOAD 00002548: DUP1 00002549: SWAP2 0000254a: SUB 0000254b: SWAP1 0000254c: LOG4 0000254d: PUSH1 0x12 0000254f: SLOAD 00002550: PUSH1 0xff 00002552: AND 00002553: ISZERO 00002554: PUSH2 0x255c 00002557: JUMPI 00002558: PUSH1 0x00 0000255a: DUP1 0000255b: REVERT 0000255c: JUMPDEST 0000255d: PUSH2 0x2569 00002560: PUSH1 0x18 00002562: SLOAD 00002563: PUSH1 0x01 00002565: PUSH2 0x2782 00002568: JUMP 00002569: JUMPDEST 0000256a: PUSH1 0x18 0000256c: DUP2 0000256d: SWAP1 0000256e: SSTORE 0000256f: PUSH1 0x00 00002571: DUP2 00002572: DUP2 00002573: MSTORE 00002574: PUSH1 0x19 00002576: PUSH1 0x20 00002578: MSTORE 00002579: PUSH1 0x40 0000257b: SWAP1 0000257c: DUP2 0000257d: SWAP1 0000257e: KECCAK256 0000257f: DUP1 00002580: SLOAD 00002581: PUSH1 0x01 00002583: PUSH1 0xa0 00002585: PUSH1 0x02 00002587: EXP 00002588: SUB 00002589: NOT 0000258a: AND 0000258b: CALLER 0000258c: PUSH1 0x01 0000258e: PUSH1 0xa0 00002590: PUSH1 0x02 00002592: EXP 00002593: SUB 00002594: AND 00002595: SWAP1 00002596: DUP2 00002597: OR 00002598: SWAP1 00002599: SWAP2 0000259a: SSTORE 0000259b: SWAP2 0000259c: SWAP5 0000259d: POP 0000259e: PUSH32 0x89b8893b806db50897c8e2362c71571cfaeb9761ee40727f683f1793cda9df16 000025bf: SWAP1 000025c0: DUP6 000025c1: SWAP1 000025c2: MLOAD 000025c3: SWAP1 000025c4: DUP2 000025c5: MSTORE 000025c6: PUSH1 0x20 000025c8: ADD 000025c9: PUSH1 0x40 000025cb: MLOAD 000025cc: DUP1 000025cd: SWAP2 000025ce: SUB 000025cf: SWAP1 000025d0: LOG2 000025d1: POP 000025d2: POP 000025d3: SWAP1 000025d4: JUMP 000025d5: JUMPDEST 000025d6: PUSH1 0x0a 000025d8: SLOAD 000025d9: PUSH1 0x01 000025db: PUSH1 0xa0 000025dd: PUSH1 0x02 000025df: EXP 000025e0: SUB 000025e1: AND 000025e2: DUP2 000025e3: JUMP 000025e4: JUMPDEST 000025e5: PUSH1 0x19 000025e7: PUSH1 0x20 000025e9: MSTORE 000025ea: PUSH1 0x00 000025ec: SWAP1 000025ed: DUP2 000025ee: MSTORE 000025ef: PUSH1 0x40 000025f1: SWAP1 000025f2: KECCAK256 000025f3: DUP1 000025f4: SLOAD 000025f5: PUSH1 0x01 000025f7: DUP3 000025f8: ADD 000025f9: SLOAD 000025fa: PUSH1 0x02 000025fc: DUP4 000025fd: ADD 000025fe: SLOAD 000025ff: PUSH1 0x03 00002601: SWAP1 00002602: SWAP4 00002603: ADD 00002604: SLOAD 00002605: PUSH1 0x01 00002607: PUSH1 0xa0 00002609: PUSH1 0x02 0000260b: EXP 0000260c: SUB 0000260d: SWAP1 0000260e: SWAP3 0000260f: AND 00002610: SWAP3 00002611: SWAP1 00002612: SWAP2 00002613: DUP5 00002614: JUMP 00002615: JUMPDEST 00002616: PUSH1 0x00 00002618: ADDRESS 00002619: PUSH1 0x01 0000261b: PUSH1 0xa0 0000261d: PUSH1 0x02 0000261f: EXP 00002620: SUB 00002621: AND 00002622: DUP4 00002623: PUSH1 0x01 00002625: PUSH1 0xa0 00002627: PUSH1 0x02 00002629: EXP 0000262a: SUB 0000262b: AND 0000262c: EQ 0000262d: ISZERO 0000262e: PUSH2 0x2639 00002631: JUMPI 00002632: POP 00002633: PUSH1 0x01 00002635: PUSH2 0x10a9 00002638: JUMP 00002639: JUMPDEST 0000263a: PUSH1 0x01 0000263c: SLOAD 0000263d: PUSH1 0x01 0000263f: PUSH1 0xa0 00002641: PUSH1 0x02 00002643: EXP 00002644: SUB 00002645: DUP5 00002646: DUP2 00002647: AND 00002648: SWAP2 00002649: AND 0000264a: EQ 0000264b: ISZERO 0000264c: PUSH2 0x2657 0000264f: JUMPI 00002650: POP 00002651: PUSH1 0x01 00002653: PUSH2 0x10a9 00002656: JUMP 00002657: JUMPDEST 00002658: PUSH1 0x00 0000265a: SLOAD 0000265b: PUSH1 0x01 0000265d: PUSH1 0xa0 0000265f: PUSH1 0x02 00002661: EXP 00002662: SUB 00002663: AND 00002664: ISZERO 00002665: ISZERO 00002666: PUSH2 0x2671 00002669: JUMPI 0000266a: POP 0000266b: PUSH1 0x00 0000266d: PUSH2 0x10a9 00002670: JUMP 00002671: JUMPDEST 00002672: PUSH1 0x00 00002674: DUP1 00002675: SLOAD 00002676: PUSH1 0x01 00002678: PUSH1 0xa0 0000267a: PUSH1 0x02 0000267c: EXP 0000267d: SUB 0000267e: AND 0000267f: SWAP1 00002680: PUSH4 0xb7009613 00002685: SWAP1 00002686: DUP6 00002687: SWAP1 00002688: ADDRESS 00002689: SWAP1 0000268a: DUP7 0000268b: SWAP1 0000268c: PUSH1 0x40 0000268e: MLOAD 0000268f: PUSH1 0x20 00002691: ADD 00002692: MSTORE 00002693: PUSH1 0x40 00002695: MLOAD 00002696: PUSH1 0xe0 00002698: PUSH1 0x02 0000269a: EXP 0000269b: PUSH4 0xffffffff 000026a0: DUP7 000026a1: AND 000026a2: MUL 000026a3: DUP2 000026a4: MSTORE 000026a5: PUSH1 0x01 000026a7: PUSH1 0xa0 000026a9: PUSH1 0x02 000026ab: EXP 000026ac: SUB 000026ad: SWAP4 000026ae: DUP5 000026af: AND 000026b0: PUSH1 0x04 000026b2: DUP3 000026b3: ADD 000026b4: MSTORE 000026b5: SWAP2 000026b6: SWAP1 000026b7: SWAP3 000026b8: AND 000026b9: PUSH1 0x24 000026bb: DUP3 000026bc: ADD 000026bd: MSTORE 000026be: PUSH1 0x01 000026c0: PUSH1 0xe0 000026c2: PUSH1 0x02 000026c4: EXP 000026c5: SUB 000026c6: NOT 000026c7: SWAP1 000026c8: SWAP2 000026c9: AND 000026ca: PUSH1 0x44 000026cc: DUP3 000026cd: ADD 000026ce: MSTORE 000026cf: PUSH1 0x64 000026d1: ADD 000026d2: PUSH1 0x20 000026d4: PUSH1 0x40 000026d6: MLOAD 000026d7: DUP1 000026d8: DUP4 000026d9: SUB 000026da: DUP2 000026db: PUSH1 0x00 000026dd: DUP8 000026de: DUP1 000026df: EXTCODESIZE 000026e0: ISZERO 000026e1: ISZERO 000026e2: PUSH2 0x26ea 000026e5: JUMPI 000026e6: PUSH1 0x00 000026e8: DUP1 000026e9: REVERT 000026ea: JUMPDEST 000026eb: PUSH2 0x02c6 000026ee: GAS 000026ef: SUB 000026f0: CALL 000026f1: ISZERO 000026f2: ISZERO 000026f3: PUSH2 0x26fb 000026f6: JUMPI 000026f7: PUSH1 0x00 000026f9: DUP1 000026fa: REVERT 000026fb: JUMPDEST 000026fc: POP 000026fd: POP 000026fe: POP 000026ff: PUSH1 0x40 00002701: MLOAD 00002702: DUP1 00002703: MLOAD 00002704: SWAP5 00002705: SWAP4 00002706: POP 00002707: POP 00002708: POP 00002709: POP 0000270a: JUMP 0000270b: JUMPDEST 0000270c: DUP1 0000270d: DUP3 0000270e: SUB 0000270f: DUP3 00002710: DUP2 00002711: GT 00002712: ISZERO 00002713: PUSH2 0x10a9 00002716: JUMPI 00002717: PUSH1 0x00 00002719: DUP1 0000271a: REVERT 0000271b: JUMPDEST 0000271c: PUSH1 0x00 0000271e: PUSH12 0x033b2e3c9fd0803ce8000000 0000272b: PUSH2 0x274d 0000272e: PUSH2 0x2737 00002731: DUP6 00002732: DUP6 00002733: PUSH2 0x282e 00002736: JUMP 00002737: JUMPDEST 00002738: PUSH1 0x02 0000273a: PUSH12 0x033b2e3c9fd0803ce8000000 00002747: JUMPDEST 00002748: DIV 00002749: PUSH2 0x2782 0000274c: JUMP 0000274d: JUMPDEST 0000274e: DUP2 0000274f: ISZERO 00002750: ISZERO 00002751: PUSH2 0x2756 00002754: JUMPI 00002755: INVALID 00002756: JUMPDEST 00002757: DIV 00002758: SWAP4 00002759: SWAP3 0000275a: POP 0000275b: POP 0000275c: POP 0000275d: JUMP 0000275e: JUMPDEST 0000275f: PUSH1 0x00 00002761: DUP2 00002762: PUSH2 0x274d 00002765: PUSH2 0x277a 00002768: DUP6 00002769: PUSH12 0x033b2e3c9fd0803ce8000000 00002776: PUSH2 0x282e 00002779: JUMP 0000277a: JUMPDEST 0000277b: PUSH1 0x02 0000277d: DUP6 0000277e: PUSH2 0x2747 00002781: JUMP 00002782: JUMPDEST 00002783: DUP1 00002784: DUP3 00002785: ADD 00002786: DUP3 00002787: DUP2 00002788: LT 00002789: ISZERO 0000278a: PUSH2 0x10a9 0000278d: JUMPI 0000278e: PUSH1 0x00 00002790: DUP1 00002791: REVERT 00002792: JUMPDEST 00002793: PUSH1 0x00 00002795: PUSH8 0x0de0b6b3a7640000 0000279e: PUSH2 0x274d 000027a1: PUSH2 0x27aa 000027a4: DUP6 000027a5: DUP6 000027a6: PUSH2 0x282e 000027a9: JUMP 000027aa: JUMPDEST 000027ab: PUSH1 0x02 000027ad: PUSH8 0x0de0b6b3a7640000 000027b6: PUSH2 0x2747 000027b9: JUMP 000027ba: JUMPDEST 000027bb: PUSH1 0x00 000027bd: DUP2 000027be: PUSH2 0x274d 000027c1: PUSH2 0x277a 000027c4: DUP6 000027c5: PUSH8 0x0de0b6b3a7640000 000027ce: PUSH2 0x282e 000027d1: JUMP 000027d2: JUMPDEST 000027d3: PUSH1 0x00 000027d5: PUSH1 0x02 000027d7: DUP3 000027d8: MOD 000027d9: ISZERO 000027da: ISZERO 000027db: PUSH2 0x27f0 000027de: JUMPI 000027df: PUSH12 0x033b2e3c9fd0803ce8000000 000027ec: PUSH2 0x27f2 000027ef: JUMP 000027f0: JUMPDEST 000027f1: DUP3 000027f2: JUMPDEST 000027f3: SWAP1 000027f4: POP 000027f5: PUSH1 0x02 000027f7: DUP3 000027f8: DIV 000027f9: SWAP2 000027fa: POP 000027fb: JUMPDEST 000027fc: DUP2 000027fd: ISZERO 000027fe: PUSH2 0x10a9 00002801: JUMPI 00002802: PUSH2 0x280b 00002805: DUP4 00002806: DUP5 00002807: PUSH2 0x271b 0000280a: JUMP 0000280b: JUMPDEST 0000280c: SWAP3 0000280d: POP 0000280e: PUSH1 0x02 00002810: DUP3 00002811: MOD 00002812: ISZERO 00002813: PUSH2 0x2823 00002816: JUMPI 00002817: PUSH2 0x2820 0000281a: DUP2 0000281b: DUP5 0000281c: PUSH2 0x271b 0000281f: JUMP 00002820: JUMPDEST 00002821: SWAP1 00002822: POP 00002823: JUMPDEST 00002824: PUSH1 0x02 00002826: DUP3 00002827: DIV 00002828: SWAP2 00002829: POP 0000282a: PUSH2 0x27fb 0000282d: JUMP 0000282e: JUMPDEST 0000282f: PUSH1 0x00 00002831: DUP2 00002832: ISZERO 00002833: DUP1 00002834: PUSH2 0x284b 00002837: JUMPI 00002838: POP 00002839: POP 0000283a: DUP1 0000283b: DUP3 0000283c: MUL 0000283d: DUP3 0000283e: DUP3 0000283f: DUP3 00002840: DUP2 00002841: ISZERO 00002842: ISZERO 00002843: PUSH2 0x2848 00002846: JUMPI 00002847: INVALID 00002848: JUMPDEST 00002849: DIV 0000284a: EQ 0000284b: JUMPDEST 0000284c: ISZERO 0000284d: ISZERO 0000284e: PUSH2 0x10a9 00002851: JUMPI 00002852: PUSH1 0x00 00002854: DUP1 00002855: REVERT 00002856: STOP 00002857: LOG1 00002858: PUSH6 0x627a7a723058 0000285f: KECCAK256 00002860: UNKNOWN(0xEA) 00002861: DIFFICULTY 00002862: UNKNOWN(0xDC) 00002863: UNKNOWN(0x4F) 00002864: UNKNOWN(0xD1) 00002865: SHR 00002866: UNKNOWN(0xB9) 00002867: UNKNOWN(0xCF) 00002868: UNKNOWN(0xAC) 00002869: UNKNOWN(0x4F) 0000286a: UNKNOWN(0xEB) 0000286b: EXTCODESIZE 0000286c: UNKNOWN(0xB7) 0000286d: UNKNOWN(0xD7) 0000286e: MUL 0000286f: SMOD 00002870: UNKNOWN(0x23) 00002871: UNKNOWN(0xD5) 00002872: PUSH12 0x79a953b9c62e00db617a06e1 0000287f: STOP 00002880: STOP 00002881: UNKNOWN(0x29)
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | access_control | codex | Unrestricted initialization of tap allows attacker-controlled liquidator | 85 | no | — |
viewevidence_json{
"evidence": "`turn` only checks `tap == 0` and `tap_ != 0`, but has no access control.",
"locations": [
"contracts/Contract.sol:775"
],
"recommendation": "Restrict `turn` with `auth` or set `tap` in the constructor. If a one-time setter is required, still gate it with `auth` and consider emitting an event.",
"exploit_scenario": "Because `turn` lacks `auth`, any external account can call it once (while `tap == 0`) to set `tap` to themselves. This lets the attacker collect newly minted `sai` fees in `drip`, receive liquidation proceeds in `bite`, and receive `gem` in `cage`, effectively diverting protocol value to the attacker."
}
|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_id: 0xffa7c4364613bc7e783180a9117a9f0e3ffaa1150e02bf4c9026a114562e6e63
call_targets:
0x448a5065aebb8e423f0896e6c5d525c040f59af3
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xffa7c4364613bc7e783180a9117a9f0e3ffaa1150e02bf4c9026a114562e6e63",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x448a5065aebb8e423f0896e6c5d525c040f59af3"
],
"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": "0x049878f3",
"selector": "0x049878f3",
"calldata_variants": [
"0x049878f3",
"0x049878f30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x071bafb5",
"selector": "0x071bafb5",
"calldata_variants": [
"0x071bafb5",
"0x071bafb50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0f8a771e",
"selector": "0x0f8a771e",
"calldata_variants": [
"0x0f8a771e",
"0x0f8a771e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x12d43a51",
"selector": "0x12d43a51",
"calldata_variants": [
"0x12d43a51",
"0x12d43a510000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x13af4035",
"selector": "0x13af4035",
"calldata_variants": [
"0x13af4035",
"0x13af40350000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x143e55e0",
"selector": "0x143e55e0",
"calldata_variants": [
"0x143e55e0",
"0x143e55e00000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1f3634ed",
"selector": "0x1f3634ed",
"calldata_variants": [
"0x1f3634ed",
"0x1f3634ed0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x20aba08b",
"selector": "0x20aba08b",
"calldata_variants": [
"0x20aba08b",
"0x20aba08b0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2366,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2490,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2796,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 21,
"guards_detected": [],
"untrusted_call_count": 21
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0xffa7c4364613bc7e783180a9117a9f0e3ffaa1150e02bf4c9026a114562e6e63
call_targets:
0x448a5065aebb8e423f0896e6c5d525c040f59af3
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xffa7c4364613bc7e783180a9117a9f0e3ffaa1150e02bf4c9026a114562e6e63",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x448a5065aebb8e423f0896e6c5d525c040f59af3"
],
"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": "0x049878f3",
"selector": "0x049878f3",
"calldata_variants": [
"0x049878f3",
"0x049878f30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x071bafb5",
"selector": "0x071bafb5",
"calldata_variants": [
"0x071bafb5",
"0x071bafb50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0f8a771e",
"selector": "0x0f8a771e",
"calldata_variants": [
"0x0f8a771e",
"0x0f8a771e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x12d43a51",
"selector": "0x12d43a51",
"calldata_variants": [
"0x12d43a51",
"0x12d43a510000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x13af4035",
"selector": "0x13af4035",
"calldata_variants": [
"0x13af4035",
"0x13af40350000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x143e55e0",
"selector": "0x143e55e0",
"calldata_variants": [
"0x143e55e0",
"0x143e55e00000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1f3634ed",
"selector": "0x1f3634ed",
"calldata_variants": [
"0x1f3634ed",
"0x1f3634ed0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x20aba08b",
"selector": "0x20aba08b",
"calldata_variants": [
"0x20aba08b",
"0x20aba08b0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2366,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2490,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2796,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 21,
"guards_detected": []
}
|
| info | other | cast | Heavy EXTCODE*/BALANCE usage | 55 | no | — |
viewevidence_json{
"notes": "frequent external code or balance checks; may indicate introspection or validation logic",
"ext_balance_count": 24
}
|
| info | other | cast | Heavy CALL-family usage | 55 | no | — |
viewevidence_json{
"notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
"call_family_count": 21
}
|