TW
Tripwire
Find contracts. Test them. Review real vulns.

Analysis Run

a07440d4-9742-4482-9bb0-05239d80eb1f

complete
Chain ID
1
Address
Block Number
Created
Wed, Dec 24, 2025 1:03 AM
Review Summary

What survived the funnel

Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?

Confirmed
0
Validated
0
Source
Verified
Review Backing
Present
Best current signal
Unrestricted initialization of tap allows attacker-controlled liquidator
crit 0 high 0 direct contract
Review Checklist
1. Read the findings table first. Ignore raw jobs until the result looks real.
2. Confirm attacker control, not just the existence of a sink.
3. Confirm money or privilege impact.
4. Keep it if the behavior is real. Kill it if this is normal proxy, admin, or upgrade plumbing.

Processing Jobs

Status & attempts
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

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: no
Implementation:
Verified Source: yes

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
1
No findings?
no
Summary
Found one high-severity access control issue allowing an arbitrary address to seize the liquidator role (tap) and collect protocol fees/liquidations.
View stderr
[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"]}]}
Metadata
{
    "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
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
21
EXT*/BALANCE
24
Total opcodes
6914
Flags
heavy_ext_balance_usage call_family_heavy
View cast disassembly output
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)

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high access_control codex Unrestricted initialization of tap allows attacker-controlled liquidator 85 no
view
evidence_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
view
trace_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
view
trace_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
view
evidence_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
view
evidence_json
{
    "notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
    "call_family_count": 21
}