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

Analysis Run

019ba9bc-ec5c-72bb-87db-2a9cdb3e9b64

complete
Chain ID
1
Address
Block Number
Created
Sat, Jan 10, 2026 9:08 PM
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
SELFDESTRUCT present
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
37762 artifact.fetch complete 1 / 3 3 months ago
37763 proxy.resolve complete 1 / 3 3 months ago
37764 tool.cast_disasm complete 1 / 3 3 months ago
37765 analysis.bundle complete 1 / 3 3 months ago
37766 capability.graph complete 1 / 3 3 months ago
37767 detector.run complete 1 / 3 3 months ago
37768 validation.fork complete 1 / 3 3 months ago
37908 report.consolidate complete 1 / 6 3 months ago

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: no not_proxy
Implementation:
Verified Source: yes
Proxy evidence
{
    "status": "not_proxy"
}

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 6
Findings
2
No findings?
no
Summary
Found payout/authorization edge cases that can be abused to block registrations/upgrades or permanently forfeit dividends when contract addresses slip into the user/referrer set.
View stdout
{"no_findings":false,"summary":"Found payout/authorization edge cases that can be abused to block registrations/upgrades or permanently forfeit dividends when contract addresses slip into the user/referrer set.","findings":[{"severity":"medium","category":"auth","title":"EOA-only registration is bypassable, enabling contract referrers to DoS payouts/registrations","exploit_scenario":"An attacker deploys a contract whose constructor calls `registrationExt` (extcodesize is 0 during construction), bypassing the EOA check. If its fallback reverts or needs >2300 gas, any downstream registration/upgrade that tries to pay this referrer will hit `sendPartnerETH` and revert, permanently blocking that branch. This also affects the system if the `owner` is a contract address with a reverting/expensive fallback.","recommendation":"Do not rely on extcodesize for EOA enforcement. Either allow contracts and use a pull‑payment pattern, or enforce authorization with signatures/allowlists. For payouts, use `call{value: ...}` with explicit failure handling (e.g., revert or queue for withdrawal) instead of `send/transfer`.","evidence":"`registration` uses an extcodesize check to block contracts, which is bypassable in constructors; payouts use `send/transfer` with 2300 gas and revert on failure.","locations":["contracts/Contract.sol:213","contracts/Contract.sol:218","contracts/Contract.sol:222","contracts/Contract.sol:559","contracts/Contract.sol:563","contracts/Contract.sol:571"]},{"severity":"low","category":"other","title":"Dividend claims can silently fail and still be marked as claimed","exploit_scenario":"If a claimant cannot receive ETH (e.g., a contract user registered via constructor bypass or a contract owner), `sendDivs` updates `divClaimMark` and reduces `divPot` before attempting `.send`. If `.send` fails, the function returns false but callers ignore it, so the user permanently loses dividends and accounting diverges.","recommendation":"Use a pull‑payment pattern that only updates state after a successful transfer, or revert on failed sends. If you keep `send`, check the return value and handle failure explicitly.","evidence":"`sendDivs` mutates accounting before calling `.send`, and `claimDivs` does not check its return value.","locations":["contracts/Contract.sol:283","contracts/Contract.sol:289","contracts/Contract.sol:291","contracts/Contract.sol:295"]}]}
View stderr
OpenAI Codex v0.77.0 (research preview)
--------
workdir: /tmp/codex-990l1vje
model: gpt-5.2-codex
provider: openai
approval: never
sandbox: read-only
reasoning effort: xhigh
reasoning summaries: auto
session id: 019ba9db-87c1-7cd3-ad23-2dc23619b0ce
--------
user
You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.

Scope rules:
- You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party Solidity sources in this workspace.
- Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
- If there are only dependency files and no first-party sources, set no_findings=true and explain in summary.

Output MUST be valid JSON matching the provided schema.
- If you find nothing meaningful: set no_findings=true and findings=[].
- Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.

Output constraints (IMPORTANT):
- severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
- category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
Keep summary short and concrete.
mcp startup: no servers

thinking
**Reading file contents**
exec
/bin/bash -lc ls in /tmp/codex-990l1vje succeeded in 8ms:
AUDIT_BUNDLE.txt
codex-output-schema.json
contracts
exec
/bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-990l1vje succeeded in 6ms:
This file concatenates the full contents of first-party Solidity sources for auditing.
Do not treat dependency code under lib/ or @openzeppelin/ as first-party.

================================================================================
FILE: contracts/Contract.sol
================================================================================
/**
 *Submitted for verification at Etherscan.io on 2020-06-16
*/

/**
 * 
 * 
 /$$$$$$$$ /$$$$$$$$ /$$   /$$ /$$      /$$  /$$$$$$  /$$$$$$$$ /$$$$$$$  /$$$$$$ /$$   /$$
| $$_____/|__  $$__/| $$  | $$| $$$    /$$$ /$$__  $$|__  $$__/| $$__  $$|_  $$_/| $$  / $$
| $$         | $$   | $$  | $$| $$$$  /$$$$| $$  \ $$   | $$   | $$  \ $$  | $$  |  $$/ $$/
| $$$$$      | $$   | $$$$$$$$| $$ $$/$$ $$| $$$$$$$$   | $$   | $$$$$$$/  | $$   \  $$$$/ 
| $$__/      | $$   | $$__  $$| $$  $$$| $$| $$__  $$   | $$   | $$__  $$  | $$    >$$  $$ 
| $$         | $$   | $$  | $$| $$\  $ | $$| $$  | $$   | $$   | $$  \ $$  | $$   /$$/\  $$
| $$$$$$$$   | $$   | $$  | $$| $$ \/  | $$| $$  | $$   | $$   | $$  | $$ /$$$$$$| $$  \ $$



thinking
**Analyzing reentrancy and DoS risks in send/transfer usage**
thinking
**Summarizing contract registration and payment risks**

There is a bypassable EOA-only check allowing contracts to register during construction, which combined with send/transfer payout logic can cause denial-of-service by reverting fallback calls in contracts acting as referrers. Also, unchecked handling of send return values in dividend payouts risks users losing claims if transfers fail, though mostly impacting contract users bypassing the EOA guard. Overall, the contract’s external call patterns and state updates before transfers raise medium-severity concerns around payment failures and DoS in certain scenarios.
thinking
**Reviewing external call logic and referrer handling**

I'm examining the external call patterns in sendPartnerETH and how bypassing the EOA-only check via contract constructors can enable contracts as referrers, potentially causing denial-of-service when transfers revert or consume excessive gas. I’m also considering the updateX6Referrer function’s handling of first-level referrals for possible anomalies, and reviewing dividend calculations and state updates around payouts to identify any exploit risks.
exec
/bin/bash -lc "rg -n \"extcodesize|sendPartnerETH|sendDivs|transfer\\(\" contracts/Contract.sol" in /tmp/codex-990l1vje succeeded in 35ms:
142:            sendDivs(msg.sender);
163:                    sendDivs(owner);
193:                    sendDivs(owner);
220:            size := extcodesize(userAddress)
259:                sendDivs(owner);
286:        sendDivs(msg.sender);
289:    function sendDivs(address _user) internal returns(bool) {
314:            return sendPartnerETH(referrerAddress, userAddress, 1, level);
333:            sendPartnerETH(owner, userAddress, 1, level);
350:                return sendPartnerETH(referrerAddress, userAddress, 2, level);
441:            return sendPartnerETH(referrerAddress, userAddress, 2, level);
474:            sendPartnerETH(owner, userAddress, 2, level);
559:    function sendPartnerETH(address userAddress, address _from, uint8 matrix, uint8 level) private {
571:            return address(uint160(receiver)).transfer(

thinking
**Refining line numbers for sendDivs**
exec
/bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '200,320p'" in /tmp/codex-990l1vje succeeded in 28ms:
   200	                totalDividendPoints += (msg.value * DIV_PERCENT / DIV_DIVISOR) * pointMultiplier / calcDivs;
   201	            } else {
   202	                calcDivs += (msg.value * DIV_PERCENT / DIV_DIVISOR);
   203	                totalDividendPoints += (msg.value * DIV_PERCENT / DIV_DIVISOR) * pointMultiplier / calcDivs;
   204	            }
   205	            
   206	            users[msg.sender].activeX6Levels[level] = true;
   207	            updateX6Referrer(msg.sender, freeX6Referrer, level);
   208	            
   209	            emit Upgrade(msg.sender, freeX6Referrer, 2, level);
   210	        }
   211	    }    
   212	    
   213	    function registration(address userAddress, address referrerAddress) private {
   214	        require(msg.value == 0.05 ether, "registration cost 0.05");
   215	        require(!isUserExists(userAddress), "user exists");
   216	        require(isUserExists(referrerAddress), "referrer not exists");
   217	        
   218	        uint32 size;
   219	        assembly {

thinking
**Preparing to send partner ETH transaction**
exec
/bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '540,610p'" in /tmp/codex-990l1vje succeeded in 7ms:
   540	                    isExtraDividends = true;
   541	                    receiver = users[receiver].x3Matrix[level].currentReferrer;
   542	                } else {
   543	                    return (receiver, isExtraDividends);
   544	                }
   545	            }
   546	        } else {
   547	            while (true) {
   548	                if (users[receiver].x6Matrix[level].blocked) {
   549	                    emit MissedEthReceive(receiver, _from, 2, level);
   550	                    isExtraDividends = true;
   551	                    receiver = users[receiver].x6Matrix[level].currentReferrer;
   552	                } else {
   553	                    return (receiver, isExtraDividends);
   554	                }
   555	            }
   556	        }
   557	    }
   558	
   559	    function sendPartnerETH(address userAddress, address _from, uint8 matrix, uint8 level) private {

thinking
**Composing vulnerability findings and JSON output**

I'm gathering detailed findings about EOA bypass allowing contract DoS via 2300-gas send/transfer, and silent dividend loss due to unchecked send failures. I'll include scenarios, severity, categories, recommendations, and exact code locations with lines and file paths, then prepare a concise summary with valid JSON per the schema.
codex
{"no_findings":false,"summary":"Found payout/authorization edge cases that can be abused to block registrations/upgrades or permanently forfeit dividends when contract addresses slip into the user/referrer set.","findings":[{"severity":"medium","category":"auth","title":"EOA-only registration is bypassable, enabling contract referrers to DoS payouts/registrations","exploit_scenario":"An attacker deploys a contract whose constructor calls `registrationExt` (extcodesize is 0 during construction), bypassing the EOA check. If its fallback reverts or needs >2300 gas, any downstream registration/upgrade that tries to pay this referrer will hit `sendPartnerETH` and revert, permanently blocking that branch. This also affects the system if the `owner` is a contract address with a reverting/expensive fallback.","recommendation":"Do not rely on extcodesize for EOA enforcement. Either allow contracts and use a pull‑payment pattern, or enforce authorization with signatures/allowlists. For payouts, use `call{value: ...}` with explicit failure handling (e.g., revert or queue for withdrawal) instead of `send/transfer`.","evidence":"`registration` uses an extcodesize check to block contracts, which is bypassable in constructors; payouts use `send/transfer` with 2300 gas and revert on failure.","locations":["contracts/Contract.sol:213","contracts/Contract.sol:218","contracts/Contract.sol:222","contracts/Contract.sol:559","contracts/Contract.sol:563","contracts/Contract.sol:571"]},{"severity":"low","category":"other","title":"Dividend claims can silently fail and still be marked as claimed","exploit_scenario":"If a claimant cannot receive ETH (e.g., a contract user registered via constructor bypass or a contract owner), `sendDivs` updates `divClaimMark` and reduces `divPot` before attempting `.send`. If `.send` fails, the function returns false but callers ignore it, so the user permanently loses dividends and accounting diverges.","recommendation":"Use a pull‑payment pattern that only updates state after a successful transfer, or revert on failed sends. If you keep `send`, check the return value and handle failure explicitly.","evidence":"`sendDivs` mutates accounting before calling `.send`, and `claimDivs` does not check its return value.","locations":["contracts/Contract.sol:283","contracts/Contract.sol:289","contracts/Contract.sol:291","contracts/Contract.sol:295"]}]}
tokens used
26,522
Metadata
{
    "codex": {
        "ran_at": "2026-01-10T21:45:34.829089+00:00",
        "returncode": 0
    },
    "project": {
        "mode": "source",
        "file_count": 1,
        "import_count": 0,
        "first_party_contracts_count": 1
    },
    "summary": "Found payout/authorization edge cases that can be abused to block registrations/upgrades or permanently forfeit dividends when contract addresses slip into the user/referrer set.",
    "raw_final": {
        "summary": "Found payout/authorization edge cases that can be abused to block registrations/upgrades or permanently forfeit dividends when contract addresses slip into the user/referrer set.",
        "findings": [
            {
                "title": "EOA-only registration is bypassable, enabling contract referrers to DoS payouts/registrations",
                "category": "auth",
                "evidence": "`registration` uses an extcodesize check to block contracts, which is bypassable in constructors; payouts use `send/transfer` with 2300 gas and revert on failure.",
                "severity": "medium",
                "locations": [
                    "contracts/Contract.sol:213",
                    "contracts/Contract.sol:218",
                    "contracts/Contract.sol:222",
                    "contracts/Contract.sol:559",
                    "contracts/Contract.sol:563",
                    "contracts/Contract.sol:571"
                ],
                "recommendation": "Do not rely on extcodesize for EOA enforcement. Either allow contracts and use a pull\u2011payment pattern, or enforce authorization with signatures/allowlists. For payouts, use `call{value: ...}` with explicit failure handling (e.g., revert or queue for withdrawal) instead of `send/transfer`.",
                "exploit_scenario": "An attacker deploys a contract whose constructor calls `registrationExt` (extcodesize is 0 during construction), bypassing the EOA check. If its fallback reverts or needs >2300 gas, any downstream registration/upgrade that tries to pay this referrer will hit `sendPartnerETH` and revert, permanently blocking that branch. This also affects the system if the `owner` is a contract address with a reverting/expensive fallback."
            },
            {
                "title": "Dividend claims can silently fail and still be marked as claimed",
                "category": "other",
                "evidence": "`sendDivs` mutates accounting before calling `.send`, and `claimDivs` does not check its return value.",
                "severity": "low",
                "locations": [
                    "contracts/Contract.sol:283",
                    "contracts/Contract.sol:289",
                    "contracts/Contract.sol:291",
                    "contracts/Contract.sol:295"
                ],
                "recommendation": "Use a pull\u2011payment pattern that only updates state after a successful transfer, or revert on failed sends. If you keep `send`, check the return value and handle failure explicitly.",
                "exploit_scenario": "If a claimant cannot receive ETH (e.g., a contract user registered via constructor bypass or a contract owner), `sendDivs` updates `divClaimMark` and reduces `divPot` before attempting `.send`. If `.send` fails, the function returns false but callers ignore it, so the user permanently loses dividends and accounting diverges."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
1
CREATE2
0
CALL-family (heavy)
4
EXT*/BALANCE
1
Total opcodes
10021
Flags
selfdestruct_present
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x0140
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x83ba31b2
00000019: GT
0000001a: PUSH2 0x00b6
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0xcd96f222
00000024: GT
00000025: PUSH2 0x006f
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xcd96f222
0000002f: EQ
00000030: PUSH2 0x05fd
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xdb58c626
0000003a: EQ
0000003b: PUSH2 0x0652
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xe06e8dbd
00000045: EQ
00000046: PUSH2 0x0685
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0xecabdf79
00000050: EQ
00000051: PUSH2 0x06c1
00000054: JUMPI
00000055: DUP1
00000056: PUSH4 0xfa45323d
0000005b: EQ
0000005c: PUSH2 0x06ee
0000005f: JUMPI
00000060: DUP1
00000061: PUSH4 0xfe10c419
00000066: EQ
00000067: PUSH2 0x072a
0000006a: JUMPI
0000006b: PUSH2 0x0140
0000006e: JUMP
0000006f: JUMPDEST
00000070: DUP1
00000071: PUSH4 0x83ba31b2
00000076: EQ
00000077: PUSH2 0x0374
0000007a: JUMPI
0000007b: DUP1
0000007c: PUSH4 0x8da5cb5b
00000081: EQ
00000082: PUSH2 0x041d
00000085: JUMPI
00000086: DUP1
00000087: PUSH4 0x9cc102fc
0000008c: EQ
0000008d: PUSH2 0x0432
00000090: JUMPI
00000091: DUP1
00000092: PUSH4 0xa87430ba
00000097: EQ
00000098: PUSH2 0x052b
0000009b: JUMPI
0000009c: DUP1
0000009d: PUSH4 0xb2f7543a
000000a2: EQ
000000a3: PUSH2 0x0599
000000a6: JUMPI
000000a7: DUP1
000000a8: PUSH4 0xbe389d57
000000ad: EQ
000000ae: PUSH2 0x05d5
000000b1: JUMPI
000000b2: PUSH2 0x0140
000000b5: JUMP
000000b6: JUMPDEST
000000b7: DUP1
000000b8: PUSH4 0x2a2d0c47
000000bd: GT
000000be: PUSH2 0x0108
000000c1: JUMPI
000000c2: DUP1
000000c3: PUSH4 0x2a2d0c47
000000c8: EQ
000000c9: PUSH2 0x0278
000000cc: JUMPI
000000cd: DUP1
000000ce: PUSH4 0x348d4487
000000d3: EQ
000000d4: PUSH2 0x02be
000000d7: JUMPI
000000d8: DUP1
000000d9: PUSH4 0x509222cd
000000de: EQ
000000df: PUSH2 0x02d3
000000e2: JUMPI
000000e3: DUP1
000000e4: PUSH4 0x570354c5
000000e9: EQ
000000ea: PUSH2 0x0306
000000ed: JUMPI
000000ee: DUP1
000000ef: PUSH4 0x797eee24
000000f4: EQ
000000f5: PUSH2 0x0339
000000f8: JUMPI
000000f9: DUP1
000000fa: PUSH4 0x7bffe9d8
000000ff: EQ
00000100: PUSH2 0x035f
00000103: JUMPI
00000104: PUSH2 0x0140
00000107: JUMP
00000108: JUMPDEST
00000109: DUP1
0000010a: PUSH4 0x07279e2a
0000010f: EQ
00000110: PUSH2 0x01ac
00000113: JUMPI
00000114: DUP1
00000115: PUSH4 0x0e3d0d35
0000011a: EQ
0000011b: PUSH2 0x01fc
0000011e: JUMPI
0000011f: DUP1
00000120: PUSH4 0x19aa70e7
00000125: EQ
00000126: PUSH2 0x0227
00000129: JUMPI
0000012a: DUP1
0000012b: PUSH4 0x2113342d
00000130: EQ
00000131: PUSH2 0x023c
00000134: JUMPI
00000135: DUP1
00000136: PUSH4 0x29c70400
0000013b: EQ
0000013c: PUSH2 0x0263
0000013f: JUMPI
00000140: JUMPDEST
00000141: CALLDATASIZE
00000142: PUSH2 0x0161
00000145: JUMPI
00000146: PUSH1 0x07
00000148: SLOAD
00000149: PUSH2 0x015c
0000014c: SWAP1
0000014d: CALLER
0000014e: SWAP1
0000014f: PUSH1 0x01
00000151: PUSH1 0x01
00000153: PUSH1 0xa0
00000155: SHL
00000156: SUB
00000157: AND
00000158: PUSH2 0x073f
0000015b: JUMP
0000015c: JUMPDEST
0000015d: PUSH2 0x01aa
00000160: JUMP
00000161: JUMPDEST
00000162: PUSH2 0x01aa
00000165: CALLER
00000166: PUSH2 0x01a5
00000169: PUSH1 0x00
0000016b: CALLDATASIZE
0000016c: DUP1
0000016d: DUP1
0000016e: PUSH1 0x1f
00000170: ADD
00000171: PUSH1 0x20
00000173: DUP1
00000174: SWAP2
00000175: DIV
00000176: MUL
00000177: PUSH1 0x20
00000179: ADD
0000017a: PUSH1 0x40
0000017c: MLOAD
0000017d: SWAP1
0000017e: DUP2
0000017f: ADD
00000180: PUSH1 0x40
00000182: MSTORE
00000183: DUP1
00000184: SWAP4
00000185: SWAP3
00000186: SWAP2
00000187: SWAP1
00000188: DUP2
00000189: DUP2
0000018a: MSTORE
0000018b: PUSH1 0x20
0000018d: ADD
0000018e: DUP4
0000018f: DUP4
00000190: DUP1
00000191: DUP3
00000192: DUP5
00000193: CALLDATACOPY
00000194: PUSH1 0x00
00000196: SWAP3
00000197: ADD
00000198: SWAP2
00000199: SWAP1
0000019a: SWAP2
0000019b: MSTORE
0000019c: POP
0000019d: PUSH2 0x0b8d
000001a0: SWAP3
000001a1: POP
000001a2: POP
000001a3: POP
000001a4: JUMP
000001a5: JUMPDEST
000001a6: PUSH2 0x073f
000001a9: JUMP
000001aa: JUMPDEST
000001ab: STOP
000001ac: JUMPDEST
000001ad: CALLVALUE
000001ae: DUP1
000001af: ISZERO
000001b0: PUSH2 0x01b8
000001b3: JUMPI
000001b4: PUSH1 0x00
000001b6: DUP1
000001b7: REVERT
000001b8: JUMPDEST
000001b9: POP
000001ba: PUSH2 0x01e8
000001bd: PUSH1 0x04
000001bf: DUP1
000001c0: CALLDATASIZE
000001c1: SUB
000001c2: PUSH1 0x40
000001c4: DUP2
000001c5: LT
000001c6: ISZERO
000001c7: PUSH2 0x01cf
000001ca: JUMPI
000001cb: PUSH1 0x00
000001cd: DUP1
000001ce: REVERT
000001cf: JUMPDEST
000001d0: POP
000001d1: DUP1
000001d2: CALLDATALOAD
000001d3: PUSH1 0x01
000001d5: PUSH1 0x01
000001d7: PUSH1 0xa0
000001d9: SHL
000001da: SUB
000001db: AND
000001dc: SWAP1
000001dd: PUSH1 0x20
000001df: ADD
000001e0: CALLDATALOAD
000001e1: PUSH1 0xff
000001e3: AND
000001e4: PUSH2 0x0b94
000001e7: JUMP
000001e8: JUMPDEST
000001e9: PUSH1 0x40
000001eb: DUP1
000001ec: MLOAD
000001ed: SWAP2
000001ee: ISZERO
000001ef: ISZERO
000001f0: DUP3
000001f1: MSTORE
000001f2: MLOAD
000001f3: SWAP1
000001f4: DUP2
000001f5: SWAP1
000001f6: SUB
000001f7: PUSH1 0x20
000001f9: ADD
000001fa: SWAP1
000001fb: RETURN
000001fc: JUMPDEST
000001fd: CALLVALUE
000001fe: DUP1
000001ff: ISZERO
00000200: PUSH2 0x0208
00000203: JUMPI
00000204: PUSH1 0x00
00000206: DUP1
00000207: REVERT
00000208: JUMPDEST
00000209: POP
0000020a: PUSH2 0x0211
0000020d: PUSH2 0x0bc8
00000210: JUMP
00000211: JUMPDEST
00000212: PUSH1 0x40
00000214: DUP1
00000215: MLOAD
00000216: PUSH1 0xff
00000218: SWAP1
00000219: SWAP3
0000021a: AND
0000021b: DUP3
0000021c: MSTORE
0000021d: MLOAD
0000021e: SWAP1
0000021f: DUP2
00000220: SWAP1
00000221: SUB
00000222: PUSH1 0x20
00000224: ADD
00000225: SWAP1
00000226: RETURN
00000227: JUMPDEST
00000228: CALLVALUE
00000229: DUP1
0000022a: ISZERO
0000022b: PUSH2 0x0233
0000022e: JUMPI
0000022f: PUSH1 0x00
00000231: DUP1
00000232: REVERT
00000233: JUMPDEST
00000234: POP
00000235: PUSH2 0x01e8
00000238: PUSH2 0x0bcd
0000023b: JUMP
0000023c: JUMPDEST
0000023d: CALLVALUE
0000023e: DUP1
0000023f: ISZERO
00000240: PUSH2 0x0248
00000243: JUMPI
00000244: PUSH1 0x00
00000246: DUP1
00000247: REVERT
00000248: JUMPDEST
00000249: POP
0000024a: PUSH2 0x0251
0000024d: PUSH2 0x0c32
00000250: JUMP
00000251: JUMPDEST
00000252: PUSH1 0x40
00000254: DUP1
00000255: MLOAD
00000256: SWAP2
00000257: DUP3
00000258: MSTORE
00000259: MLOAD
0000025a: SWAP1
0000025b: DUP2
0000025c: SWAP1
0000025d: SUB
0000025e: PUSH1 0x20
00000260: ADD
00000261: SWAP1
00000262: RETURN
00000263: JUMPDEST
00000264: CALLVALUE
00000265: DUP1
00000266: ISZERO
00000267: PUSH2 0x026f
0000026a: JUMPI
0000026b: PUSH1 0x00
0000026d: DUP1
0000026e: REVERT
0000026f: JUMPDEST
00000270: POP
00000271: PUSH2 0x0211
00000274: PUSH2 0x0c38
00000277: JUMP
00000278: JUMPDEST
00000279: CALLVALUE
0000027a: DUP1
0000027b: ISZERO
0000027c: PUSH2 0x0284
0000027f: JUMPI
00000280: PUSH1 0x00
00000282: DUP1
00000283: REVERT
00000284: JUMPDEST
00000285: POP
00000286: PUSH2 0x02a2
00000289: PUSH1 0x04
0000028b: DUP1
0000028c: CALLDATASIZE
0000028d: SUB
0000028e: PUSH1 0x20
00000290: DUP2
00000291: LT
00000292: ISZERO
00000293: PUSH2 0x029b
00000296: JUMPI
00000297: PUSH1 0x00
00000299: DUP1
0000029a: REVERT
0000029b: JUMPDEST
0000029c: POP
0000029d: CALLDATALOAD
0000029e: PUSH2 0x0c3d
000002a1: JUMP
000002a2: JUMPDEST
000002a3: PUSH1 0x40
000002a5: DUP1
000002a6: MLOAD
000002a7: PUSH1 0x01
000002a9: PUSH1 0x01
000002ab: PUSH1 0xa0
000002ad: SHL
000002ae: SUB
000002af: SWAP1
000002b0: SWAP3
000002b1: AND
000002b2: DUP3
000002b3: MSTORE
000002b4: MLOAD
000002b5: SWAP1
000002b6: DUP2
000002b7: SWAP1
000002b8: SUB
000002b9: PUSH1 0x20
000002bb: ADD
000002bc: SWAP1
000002bd: RETURN
000002be: JUMPDEST
000002bf: CALLVALUE
000002c0: DUP1
000002c1: ISZERO
000002c2: PUSH2 0x02ca
000002c5: JUMPI
000002c6: PUSH1 0x00
000002c8: DUP1
000002c9: REVERT
000002ca: JUMPDEST
000002cb: POP
000002cc: PUSH2 0x0251
000002cf: PUSH2 0x0c58
000002d2: JUMP
000002d3: JUMPDEST
000002d4: CALLVALUE
000002d5: DUP1
000002d6: ISZERO
000002d7: PUSH2 0x02df
000002da: JUMPI
000002db: PUSH1 0x00
000002dd: DUP1
000002de: REVERT
000002df: JUMPDEST
000002e0: POP
000002e1: PUSH2 0x01e8
000002e4: PUSH1 0x04
000002e6: DUP1
000002e7: CALLDATASIZE
000002e8: SUB
000002e9: PUSH1 0x20
000002eb: DUP2
000002ec: LT
000002ed: ISZERO
000002ee: PUSH2 0x02f6
000002f1: JUMPI
000002f2: PUSH1 0x00
000002f4: DUP1
000002f5: REVERT
000002f6: JUMPDEST
000002f7: POP
000002f8: CALLDATALOAD
000002f9: PUSH1 0x01
000002fb: PUSH1 0x01
000002fd: PUSH1 0xa0
000002ff: SHL
00000300: SUB
00000301: AND
00000302: PUSH2 0x0c5e
00000305: JUMP
00000306: JUMPDEST
00000307: CALLVALUE
00000308: DUP1
00000309: ISZERO
0000030a: PUSH2 0x0312
0000030d: JUMPI
0000030e: PUSH1 0x00
00000310: DUP1
00000311: REVERT
00000312: JUMPDEST
00000313: POP
00000314: PUSH2 0x0251
00000317: PUSH1 0x04
00000319: DUP1
0000031a: CALLDATASIZE
0000031b: SUB
0000031c: PUSH1 0x20
0000031e: DUP2
0000031f: LT
00000320: ISZERO
00000321: PUSH2 0x0329
00000324: JUMPI
00000325: PUSH1 0x00
00000327: DUP1
00000328: REVERT
00000329: JUMPDEST
0000032a: POP
0000032b: CALLDATALOAD
0000032c: PUSH1 0x01
0000032e: PUSH1 0x01
00000330: PUSH1 0xa0
00000332: SHL
00000333: SUB
00000334: AND
00000335: PUSH2 0x0c7b
00000338: JUMP
00000339: JUMPDEST
0000033a: PUSH2 0x01aa
0000033d: PUSH1 0x04
0000033f: DUP1
00000340: CALLDATASIZE
00000341: SUB
00000342: PUSH1 0x20
00000344: DUP2
00000345: LT
00000346: ISZERO
00000347: PUSH2 0x034f
0000034a: JUMPI
0000034b: PUSH1 0x00
0000034d: DUP1
0000034e: REVERT
0000034f: JUMPDEST
00000350: POP
00000351: CALLDATALOAD
00000352: PUSH1 0x01
00000354: PUSH1 0x01
00000356: PUSH1 0xa0
00000358: SHL
00000359: SUB
0000035a: AND
0000035b: PUSH2 0x0cb4
0000035e: JUMP
0000035f: JUMPDEST
00000360: CALLVALUE
00000361: DUP1
00000362: ISZERO
00000363: PUSH2 0x036b
00000366: JUMPI
00000367: PUSH1 0x00
00000369: DUP1
0000036a: REVERT
0000036b: JUMPDEST
0000036c: POP
0000036d: PUSH2 0x0251
00000370: PUSH2 0x0cc1
00000373: JUMP
00000374: JUMPDEST
00000375: CALLVALUE
00000376: DUP1
00000377: ISZERO
00000378: PUSH2 0x0380
0000037b: JUMPI
0000037c: PUSH1 0x00
0000037e: DUP1
0000037f: REVERT
00000380: JUMPDEST
00000381: POP
00000382: PUSH2 0x03b0
00000385: PUSH1 0x04
00000387: DUP1
00000388: CALLDATASIZE
00000389: SUB
0000038a: PUSH1 0x40
0000038c: DUP2
0000038d: LT
0000038e: ISZERO
0000038f: PUSH2 0x0397
00000392: JUMPI
00000393: PUSH1 0x00
00000395: DUP1
00000396: REVERT
00000397: JUMPDEST
00000398: POP
00000399: DUP1
0000039a: CALLDATALOAD
0000039b: PUSH1 0x01
0000039d: PUSH1 0x01
0000039f: PUSH1 0xa0
000003a1: SHL
000003a2: SUB
000003a3: AND
000003a4: SWAP1
000003a5: PUSH1 0x20
000003a7: ADD
000003a8: CALLDATALOAD
000003a9: PUSH1 0xff
000003ab: AND
000003ac: PUSH2 0x0cc7
000003af: JUMP
000003b0: JUMPDEST
000003b1: PUSH1 0x40
000003b3: DUP1
000003b4: MLOAD
000003b5: PUSH1 0x01
000003b7: PUSH1 0x01
000003b9: PUSH1 0xa0
000003bb: SHL
000003bc: SUB
000003bd: DUP6
000003be: AND
000003bf: DUP2
000003c0: MSTORE
000003c1: DUP3
000003c2: ISZERO
000003c3: ISZERO
000003c4: SWAP2
000003c5: DUP2
000003c6: ADD
000003c7: SWAP2
000003c8: SWAP1
000003c9: SWAP2
000003ca: MSTORE
000003cb: PUSH1 0x60
000003cd: PUSH1 0x20
000003cf: DUP1
000003d0: DUP4
000003d1: ADD
000003d2: DUP3
000003d3: DUP2
000003d4: MSTORE
000003d5: DUP6
000003d6: MLOAD
000003d7: SWAP3
000003d8: DUP5
000003d9: ADD
000003da: SWAP3
000003db: SWAP1
000003dc: SWAP3
000003dd: MSTORE
000003de: DUP5
000003df: MLOAD
000003e0: PUSH1 0x80
000003e2: DUP5
000003e3: ADD
000003e4: SWAP2
000003e5: DUP7
000003e6: DUP2
000003e7: ADD
000003e8: SWAP2
000003e9: MUL
000003ea: DUP1
000003eb: DUP4
000003ec: DUP4
000003ed: PUSH1 0x00
000003ef: JUMPDEST
000003f0: DUP4
000003f1: DUP2
000003f2: LT
000003f3: ISZERO
000003f4: PUSH2 0x0407
000003f7: JUMPI
000003f8: DUP2
000003f9: DUP2
000003fa: ADD
000003fb: MLOAD
000003fc: DUP4
000003fd: DUP3
000003fe: ADD
000003ff: MSTORE
00000400: PUSH1 0x20
00000402: ADD
00000403: PUSH2 0x03ef
00000406: JUMP
00000407: JUMPDEST
00000408: POP
00000409: POP
0000040a: POP
0000040b: POP
0000040c: SWAP1
0000040d: POP
0000040e: ADD
0000040f: SWAP5
00000410: POP
00000411: POP
00000412: POP
00000413: POP
00000414: POP
00000415: PUSH1 0x40
00000417: MLOAD
00000418: DUP1
00000419: SWAP2
0000041a: SUB
0000041b: SWAP1
0000041c: RETURN
0000041d: JUMPDEST
0000041e: CALLVALUE
0000041f: DUP1
00000420: ISZERO
00000421: PUSH2 0x0429
00000424: JUMPI
00000425: PUSH1 0x00
00000427: DUP1
00000428: REVERT
00000429: JUMPDEST
0000042a: POP
0000042b: PUSH2 0x02a2
0000042e: PUSH2 0x0d74
00000431: JUMP
00000432: JUMPDEST
00000433: CALLVALUE
00000434: DUP1
00000435: ISZERO
00000436: PUSH2 0x043e
00000439: JUMPI
0000043a: PUSH1 0x00
0000043c: DUP1
0000043d: REVERT
0000043e: JUMPDEST
0000043f: POP
00000440: PUSH2 0x046e
00000443: PUSH1 0x04
00000445: DUP1
00000446: CALLDATASIZE
00000447: SUB
00000448: PUSH1 0x40
0000044a: DUP2
0000044b: LT
0000044c: ISZERO
0000044d: PUSH2 0x0455
00000450: JUMPI
00000451: PUSH1 0x00
00000453: DUP1
00000454: REVERT
00000455: JUMPDEST
00000456: POP
00000457: DUP1
00000458: CALLDATALOAD
00000459: PUSH1 0x01
0000045b: PUSH1 0x01
0000045d: PUSH1 0xa0
0000045f: SHL
00000460: SUB
00000461: AND
00000462: SWAP1
00000463: PUSH1 0x20
00000465: ADD
00000466: CALLDATALOAD
00000467: PUSH1 0xff
00000469: AND
0000046a: PUSH2 0x0d83
0000046d: JUMP
0000046e: JUMPDEST
0000046f: PUSH1 0x40
00000471: DUP1
00000472: MLOAD
00000473: PUSH1 0x01
00000475: PUSH1 0x01
00000477: PUSH1 0xa0
00000479: SHL
0000047a: SUB
0000047b: DUP1
0000047c: DUP9
0000047d: AND
0000047e: DUP3
0000047f: MSTORE
00000480: DUP5
00000481: ISZERO
00000482: ISZERO
00000483: PUSH1 0x60
00000485: DUP4
00000486: ADD
00000487: MSTORE
00000488: DUP4
00000489: AND
0000048a: PUSH1 0x80
0000048c: DUP3
0000048d: ADD
0000048e: MSTORE
0000048f: PUSH1 0xa0
00000491: PUSH1 0x20
00000493: DUP1
00000494: DUP4
00000495: ADD
00000496: DUP3
00000497: DUP2
00000498: MSTORE
00000499: DUP9
0000049a: MLOAD
0000049b: SWAP3
0000049c: DUP5
0000049d: ADD
0000049e: SWAP3
0000049f: SWAP1
000004a0: SWAP3
000004a1: MSTORE
000004a2: DUP8
000004a3: MLOAD
000004a4: SWAP3
000004a5: SWAP4
000004a6: SWAP2
000004a7: SWAP3
000004a8: SWAP2
000004a9: DUP5
000004aa: ADD
000004ab: SWAP2
000004ac: PUSH1 0xc0
000004ae: DUP6
000004af: ADD
000004b0: SWAP2
000004b1: DUP10
000004b2: DUP2
000004b3: ADD
000004b4: SWAP2
000004b5: MUL
000004b6: DUP1
000004b7: DUP4
000004b8: DUP4
000004b9: PUSH1 0x00
000004bb: JUMPDEST
000004bc: DUP4
000004bd: DUP2
000004be: LT
000004bf: ISZERO
000004c0: PUSH2 0x04d3
000004c3: JUMPI
000004c4: DUP2
000004c5: DUP2
000004c6: ADD
000004c7: MLOAD
000004c8: DUP4
000004c9: DUP3
000004ca: ADD
000004cb: MSTORE
000004cc: PUSH1 0x20
000004ce: ADD
000004cf: PUSH2 0x04bb
000004d2: JUMP
000004d3: JUMPDEST
000004d4: POP
000004d5: POP
000004d6: POP
000004d7: POP
000004d8: SWAP1
000004d9: POP
000004da: ADD
000004db: DUP4
000004dc: DUP2
000004dd: SUB
000004de: DUP3
000004df: MSTORE
000004e0: DUP7
000004e1: DUP2
000004e2: DUP2
000004e3: MLOAD
000004e4: DUP2
000004e5: MSTORE
000004e6: PUSH1 0x20
000004e8: ADD
000004e9: SWAP2
000004ea: POP
000004eb: DUP1
000004ec: MLOAD
000004ed: SWAP1
000004ee: PUSH1 0x20
000004f0: ADD
000004f1: SWAP1
000004f2: PUSH1 0x20
000004f4: MUL
000004f5: DUP1
000004f6: DUP4
000004f7: DUP4
000004f8: PUSH1 0x00
000004fa: JUMPDEST
000004fb: DUP4
000004fc: DUP2
000004fd: LT
000004fe: ISZERO
000004ff: PUSH2 0x0512
00000502: JUMPI
00000503: DUP2
00000504: DUP2
00000505: ADD
00000506: MLOAD
00000507: DUP4
00000508: DUP3
00000509: ADD
0000050a: MSTORE
0000050b: PUSH1 0x20
0000050d: ADD
0000050e: PUSH2 0x04fa
00000511: JUMP
00000512: JUMPDEST
00000513: POP
00000514: POP
00000515: POP
00000516: POP
00000517: SWAP1
00000518: POP
00000519: ADD
0000051a: SWAP8
0000051b: POP
0000051c: POP
0000051d: POP
0000051e: POP
0000051f: POP
00000520: POP
00000521: POP
00000522: POP
00000523: PUSH1 0x40
00000525: MLOAD
00000526: DUP1
00000527: SWAP2
00000528: SUB
00000529: SWAP1
0000052a: RETURN
0000052b: JUMPDEST
0000052c: CALLVALUE
0000052d: DUP1
0000052e: ISZERO
0000052f: PUSH2 0x0537
00000532: JUMPI
00000533: PUSH1 0x00
00000535: DUP1
00000536: REVERT
00000537: JUMPDEST
00000538: POP
00000539: PUSH2 0x055e
0000053c: PUSH1 0x04
0000053e: DUP1
0000053f: CALLDATASIZE
00000540: SUB
00000541: PUSH1 0x20
00000543: DUP2
00000544: LT
00000545: ISZERO
00000546: PUSH2 0x054e
00000549: JUMPI
0000054a: PUSH1 0x00
0000054c: DUP1
0000054d: REVERT
0000054e: JUMPDEST
0000054f: POP
00000550: CALLDATALOAD
00000551: PUSH1 0x01
00000553: PUSH1 0x01
00000555: PUSH1 0xa0
00000557: SHL
00000558: SUB
00000559: AND
0000055a: PUSH2 0x0ea2
0000055d: JUMP
0000055e: JUMPDEST
0000055f: PUSH1 0x40
00000561: DUP1
00000562: MLOAD
00000563: SWAP7
00000564: DUP8
00000565: MSTORE
00000566: PUSH1 0x01
00000568: PUSH1 0x01
0000056a: PUSH1 0xa0
0000056c: SHL
0000056d: SUB
0000056e: SWAP1
0000056f: SWAP6
00000570: AND
00000571: PUSH1 0x20
00000573: DUP8
00000574: ADD
00000575: MSTORE
00000576: DUP6
00000577: DUP6
00000578: ADD
00000579: SWAP4
0000057a: SWAP1
0000057b: SWAP4
0000057c: MSTORE
0000057d: PUSH1 0x60
0000057f: DUP6
00000580: ADD
00000581: SWAP2
00000582: SWAP1
00000583: SWAP2
00000584: MSTORE
00000585: PUSH1 0x80
00000587: DUP5
00000588: ADD
00000589: MSTORE
0000058a: PUSH1 0xa0
0000058c: DUP4
0000058d: ADD
0000058e: MSTORE
0000058f: MLOAD
00000590: SWAP1
00000591: DUP2
00000592: SWAP1
00000593: SUB
00000594: PUSH1 0xc0
00000596: ADD
00000597: SWAP1
00000598: RETURN
00000599: JUMPDEST
0000059a: CALLVALUE
0000059b: DUP1
0000059c: ISZERO
0000059d: PUSH2 0x05a5
000005a0: JUMPI
000005a1: PUSH1 0x00
000005a3: DUP1
000005a4: REVERT
000005a5: JUMPDEST
000005a6: POP
000005a7: PUSH2 0x01e8
000005aa: PUSH1 0x04
000005ac: DUP1
000005ad: CALLDATASIZE
000005ae: SUB
000005af: PUSH1 0x40
000005b1: DUP2
000005b2: LT
000005b3: ISZERO
000005b4: PUSH2 0x05bc
000005b7: JUMPI
000005b8: PUSH1 0x00
000005ba: DUP1
000005bb: REVERT
000005bc: JUMPDEST
000005bd: POP
000005be: DUP1
000005bf: CALLDATALOAD
000005c0: PUSH1 0x01
000005c2: PUSH1 0x01
000005c4: PUSH1 0xa0
000005c6: SHL
000005c7: SUB
000005c8: AND
000005c9: SWAP1
000005ca: PUSH1 0x20
000005cc: ADD
000005cd: CALLDATALOAD
000005ce: PUSH1 0xff
000005d0: AND
000005d1: PUSH2 0x0ee1
000005d4: JUMP
000005d5: JUMPDEST
000005d6: PUSH2 0x01aa
000005d9: PUSH1 0x04
000005db: DUP1
000005dc: CALLDATASIZE
000005dd: SUB
000005de: PUSH1 0x40
000005e0: DUP2
000005e1: LT
000005e2: ISZERO
000005e3: PUSH2 0x05eb
000005e6: JUMPI
000005e7: PUSH1 0x00
000005e9: DUP1
000005ea: REVERT
000005eb: JUMPDEST
000005ec: POP
000005ed: PUSH1 0xff
000005ef: DUP2
000005f0: CALLDATALOAD
000005f1: DUP2
000005f2: AND
000005f3: SWAP2
000005f4: PUSH1 0x20
000005f6: ADD
000005f7: CALLDATALOAD
000005f8: AND
000005f9: PUSH2 0x0f10
000005fc: JUMP
000005fd: JUMPDEST
000005fe: CALLVALUE
000005ff: DUP1
00000600: ISZERO
00000601: PUSH2 0x0609
00000604: JUMPI
00000605: PUSH1 0x00
00000607: DUP1
00000608: REVERT
00000609: JUMPDEST
0000060a: POP
0000060b: PUSH2 0x0639
0000060e: PUSH1 0x04
00000610: DUP1
00000611: CALLDATASIZE
00000612: SUB
00000613: PUSH1 0x40
00000615: DUP2
00000616: LT
00000617: ISZERO
00000618: PUSH2 0x0620
0000061b: JUMPI
0000061c: PUSH1 0x00
0000061e: DUP1
0000061f: REVERT
00000620: JUMPDEST
00000621: POP
00000622: DUP1
00000623: CALLDATALOAD
00000624: PUSH1 0x01
00000626: PUSH1 0x01
00000628: PUSH1 0xa0
0000062a: SHL
0000062b: SUB
0000062c: AND
0000062d: SWAP1
0000062e: PUSH1 0x20
00000630: ADD
00000631: CALLDATALOAD
00000632: PUSH1 0xff
00000634: AND
00000635: PUSH2 0x15b7
00000638: JUMP
00000639: JUMPDEST
0000063a: PUSH1 0x40
0000063c: DUP1
0000063d: MLOAD
0000063e: SWAP3
0000063f: DUP4
00000640: MSTORE
00000641: PUSH1 0x20
00000643: DUP4
00000644: ADD
00000645: SWAP2
00000646: SWAP1
00000647: SWAP2
00000648: MSTORE
00000649: DUP1
0000064a: MLOAD
0000064b: SWAP2
0000064c: DUP3
0000064d: SWAP1
0000064e: SUB
0000064f: ADD
00000650: SWAP1
00000651: RETURN
00000652: JUMPDEST
00000653: CALLVALUE
00000654: DUP1
00000655: ISZERO
00000656: PUSH2 0x065e
00000659: JUMPI
0000065a: PUSH1 0x00
0000065c: DUP1
0000065d: REVERT
0000065e: JUMPDEST
0000065f: POP
00000660: PUSH2 0x0251
00000663: PUSH1 0x04
00000665: DUP1
00000666: CALLDATASIZE
00000667: SUB
00000668: PUSH1 0x20
0000066a: DUP2
0000066b: LT
0000066c: ISZERO
0000066d: PUSH2 0x0675
00000670: JUMPI
00000671: PUSH1 0x00
00000673: DUP1
00000674: REVERT
00000675: JUMPDEST
00000676: POP
00000677: CALLDATALOAD
00000678: PUSH1 0x01
0000067a: PUSH1 0x01
0000067c: PUSH1 0xa0
0000067e: SHL
0000067f: SUB
00000680: AND
00000681: PUSH2 0x15f2
00000684: JUMP
00000685: JUMPDEST
00000686: CALLVALUE
00000687: DUP1
00000688: ISZERO
00000689: PUSH2 0x0691
0000068c: JUMPI
0000068d: PUSH1 0x00
0000068f: DUP1
00000690: REVERT
00000691: JUMPDEST
00000692: POP
00000693: PUSH2 0x02a2
00000696: PUSH1 0x04
00000698: DUP1
00000699: CALLDATASIZE
0000069a: SUB
0000069b: PUSH1 0x40
0000069d: DUP2
0000069e: LT
0000069f: ISZERO
000006a0: PUSH2 0x06a8
000006a3: JUMPI
000006a4: PUSH1 0x00
000006a6: DUP1
000006a7: REVERT
000006a8: JUMPDEST
000006a9: POP
000006aa: DUP1
000006ab: CALLDATALOAD
000006ac: PUSH1 0x01
000006ae: PUSH1 0x01
000006b0: PUSH1 0xa0
000006b2: SHL
000006b3: SUB
000006b4: AND
000006b5: SWAP1
000006b6: PUSH1 0x20
000006b8: ADD
000006b9: CALLDATALOAD
000006ba: PUSH1 0xff
000006bc: AND
000006bd: PUSH2 0x1625
000006c0: JUMP
000006c1: JUMPDEST
000006c2: CALLVALUE
000006c3: DUP1
000006c4: ISZERO
000006c5: PUSH2 0x06cd
000006c8: JUMPI
000006c9: PUSH1 0x00
000006cb: DUP1
000006cc: REVERT
000006cd: JUMPDEST
000006ce: POP
000006cf: PUSH2 0x0251
000006d2: PUSH1 0x04
000006d4: DUP1
000006d5: CALLDATASIZE
000006d6: SUB
000006d7: PUSH1 0x20
000006d9: DUP2
000006da: LT
000006db: ISZERO
000006dc: PUSH2 0x06e4
000006df: JUMPI
000006e0: PUSH1 0x00
000006e2: DUP1
000006e3: REVERT
000006e4: JUMPDEST
000006e5: POP
000006e6: CALLDATALOAD
000006e7: PUSH1 0xff
000006e9: AND
000006ea: PUSH2 0x16b1
000006ed: JUMP
000006ee: JUMPDEST
000006ef: CALLVALUE
000006f0: DUP1
000006f1: ISZERO
000006f2: PUSH2 0x06fa
000006f5: JUMPI
000006f6: PUSH1 0x00
000006f8: DUP1
000006f9: REVERT
000006fa: JUMPDEST
000006fb: POP
000006fc: PUSH2 0x02a2
000006ff: PUSH1 0x04
00000701: DUP1
00000702: CALLDATASIZE
00000703: SUB
00000704: PUSH1 0x40
00000706: DUP2
00000707: LT
00000708: ISZERO
00000709: PUSH2 0x0711
0000070c: JUMPI
0000070d: PUSH1 0x00
0000070f: DUP1
00000710: REVERT
00000711: JUMPDEST
00000712: POP
00000713: DUP1
00000714: CALLDATALOAD
00000715: PUSH1 0x01
00000717: PUSH1 0x01
00000719: PUSH1 0xa0
0000071b: SHL
0000071c: SUB
0000071d: AND
0000071e: SWAP1
0000071f: PUSH1 0x20
00000721: ADD
00000722: CALLDATALOAD
00000723: PUSH1 0xff
00000725: AND
00000726: PUSH2 0x16c3
00000729: JUMP
0000072a: JUMPDEST
0000072b: CALLVALUE
0000072c: DUP1
0000072d: ISZERO
0000072e: PUSH2 0x0736
00000731: JUMPI
00000732: PUSH1 0x00
00000734: DUP1
00000735: REVERT
00000736: JUMPDEST
00000737: POP
00000738: PUSH2 0x0251
0000073b: PUSH2 0x174f
0000073e: JUMP
0000073f: JUMPDEST
00000740: CALLVALUE
00000741: PUSH7 0xb1a2bc2ec50000
00000749: EQ
0000074a: PUSH2 0x0793
0000074d: JUMPI
0000074e: PUSH1 0x40
00000750: DUP1
00000751: MLOAD
00000752: PUSH3 0x461bcd
00000756: PUSH1 0xe5
00000758: SHL
00000759: DUP2
0000075a: MSTORE
0000075b: PUSH1 0x20
0000075d: PUSH1 0x04
0000075f: DUP3
00000760: ADD
00000761: MSTORE
00000762: PUSH1 0x16
00000764: PUSH1 0x24
00000766: DUP3
00000767: ADD
00000768: MSTORE
00000769: PUSH22 0x726567697374726174696f6e20636f737420302e3035
00000780: PUSH1 0x50
00000782: SHL
00000783: PUSH1 0x44
00000785: DUP3
00000786: ADD
00000787: MSTORE
00000788: SWAP1
00000789: MLOAD
0000078a: SWAP1
0000078b: DUP2
0000078c: SWAP1
0000078d: SUB
0000078e: PUSH1 0x64
00000790: ADD
00000791: SWAP1
00000792: REVERT
00000793: JUMPDEST
00000794: PUSH2 0x079c
00000797: DUP3
00000798: PUSH2 0x0c5e
0000079b: JUMP
0000079c: JUMPDEST
0000079d: ISZERO
0000079e: PUSH2 0x07dc
000007a1: JUMPI
000007a2: PUSH1 0x40
000007a4: DUP1
000007a5: MLOAD
000007a6: PUSH3 0x461bcd
000007aa: PUSH1 0xe5
000007ac: SHL
000007ad: DUP2
000007ae: MSTORE
000007af: PUSH1 0x20
000007b1: PUSH1 0x04
000007b3: DUP3
000007b4: ADD
000007b5: MSTORE
000007b6: PUSH1 0x0b
000007b8: PUSH1 0x24
000007ba: DUP3
000007bb: ADD
000007bc: MSTORE
000007bd: PUSH11 0x7573657220657869737473
000007c9: PUSH1 0xa8
000007cb: SHL
000007cc: PUSH1 0x44
000007ce: DUP3
000007cf: ADD
000007d0: MSTORE
000007d1: SWAP1
000007d2: MLOAD
000007d3: SWAP1
000007d4: DUP2
000007d5: SWAP1
000007d6: SUB
000007d7: PUSH1 0x64
000007d9: ADD
000007da: SWAP1
000007db: REVERT
000007dc: JUMPDEST
000007dd: PUSH2 0x07e5
000007e0: DUP2
000007e1: PUSH2 0x0c5e
000007e4: JUMP
000007e5: JUMPDEST
000007e6: PUSH2 0x082c
000007e9: JUMPI
000007ea: PUSH1 0x40
000007ec: DUP1
000007ed: MLOAD
000007ee: PUSH3 0x461bcd
000007f2: PUSH1 0xe5
000007f4: SHL
000007f5: DUP2
000007f6: MSTORE
000007f7: PUSH1 0x20
000007f9: PUSH1 0x04
000007fb: DUP3
000007fc: ADD
000007fd: MSTORE
000007fe: PUSH1 0x13
00000800: PUSH1 0x24
00000802: DUP3
00000803: ADD
00000804: MSTORE
00000805: PUSH19 0x7265666572726572206e6f7420657869737473
00000819: PUSH1 0x68
0000081b: SHL
0000081c: PUSH1 0x44
0000081e: DUP3
0000081f: ADD
00000820: MSTORE
00000821: SWAP1
00000822: MLOAD
00000823: SWAP1
00000824: DUP2
00000825: SWAP1
00000826: SUB
00000827: PUSH1 0x64
00000829: ADD
0000082a: SWAP1
0000082b: REVERT
0000082c: JUMPDEST
0000082d: DUP2
0000082e: EXTCODESIZE
0000082f: PUSH4 0xffffffff
00000834: DUP2
00000835: AND
00000836: ISZERO
00000837: PUSH2 0x087e
0000083a: JUMPI
0000083b: PUSH1 0x40
0000083d: DUP1
0000083e: MLOAD
0000083f: PUSH3 0x461bcd
00000843: PUSH1 0xe5
00000845: SHL
00000846: DUP2
00000847: MSTORE
00000848: PUSH1 0x20
0000084a: PUSH1 0x04
0000084c: DUP3
0000084d: ADD
0000084e: MSTORE
0000084f: PUSH1 0x14
00000851: PUSH1 0x24
00000853: DUP3
00000854: ADD
00000855: MSTORE
00000856: PUSH20 0x18d85b9b9bdd08189948184818dbdb9d1c9858dd
0000086b: PUSH1 0x62
0000086d: SHL
0000086e: PUSH1 0x44
00000870: DUP3
00000871: ADD
00000872: MSTORE
00000873: SWAP1
00000874: MLOAD
00000875: SWAP1
00000876: DUP2
00000877: SWAP1
00000878: SUB
00000879: PUSH1 0x64
0000087b: ADD
0000087c: SWAP1
0000087d: REVERT
0000087e: JUMPDEST
0000087f: PUSH2 0x0886
00000882: PUSH2 0x325b
00000885: JUMP
00000886: JUMPDEST
00000887: POP
00000888: PUSH1 0x40
0000088a: DUP1
0000088b: MLOAD
0000088c: PUSH1 0xc0
0000088e: DUP2
0000088f: ADD
00000890: DUP3
00000891: MSTORE
00000892: PUSH1 0x06
00000894: DUP1
00000895: SLOAD
00000896: DUP3
00000897: MSTORE
00000898: PUSH1 0x01
0000089a: PUSH1 0x01
0000089c: PUSH1 0xa0
0000089e: SHL
0000089f: SUB
000008a0: DUP6
000008a1: DUP2
000008a2: AND
000008a3: PUSH1 0x20
000008a5: DUP1
000008a6: DUP6
000008a7: ADD
000008a8: DUP3
000008a9: DUP2
000008aa: MSTORE
000008ab: PUSH1 0x00
000008ad: DUP7
000008ae: DUP9
000008af: ADD
000008b0: DUP2
000008b1: DUP2
000008b2: MSTORE
000008b3: PUSH1 0x03
000008b5: DUP1
000008b6: SLOAD
000008b7: PUSH1 0x60
000008b9: DUP11
000008ba: ADD
000008bb: SWAP1
000008bc: DUP2
000008bd: MSTORE
000008be: PUSH1 0x80
000008c0: DUP11
000008c1: ADD
000008c2: DUP5
000008c3: DUP2
000008c4: MSTORE
000008c5: PUSH1 0xa0
000008c7: DUP12
000008c8: ADD
000008c9: DUP6
000008ca: DUP2
000008cb: MSTORE
000008cc: DUP16
000008cd: DUP11
000008ce: AND
000008cf: DUP1
000008d0: DUP8
000008d1: MSTORE
000008d2: DUP7
000008d3: DUP10
000008d4: MSTORE
000008d5: DUP14
000008d6: DUP8
000008d7: KECCAK256
000008d8: DUP14
000008d9: MLOAD
000008da: DUP2
000008db: SSTORE
000008dc: SWAP8
000008dd: MLOAD
000008de: PUSH1 0x01
000008e0: DUP1
000008e1: DUP11
000008e2: ADD
000008e3: DUP1
000008e4: SLOAD
000008e5: SWAP3
000008e6: SWAP1
000008e7: SWAP14
000008e8: AND
000008e9: PUSH1 0x01
000008eb: PUSH1 0x01
000008ed: PUSH1 0xa0
000008ef: SHL
000008f0: SUB
000008f1: NOT
000008f2: SWAP3
000008f3: DUP4
000008f4: AND
000008f5: OR
000008f6: DUP14
000008f7: SSTORE
000008f8: SWAP7
000008f9: MLOAD
000008fa: PUSH1 0x02
000008fc: DUP1
000008fd: DUP12
000008fe: ADD
000008ff: SWAP2
00000900: SWAP1
00000901: SWAP2
00000902: SSTORE
00000903: SWAP5
00000904: MLOAD
00000905: PUSH1 0x09
00000907: DUP11
00000908: ADD
00000909: SSTORE
0000090a: SWAP3
0000090b: MLOAD
0000090c: PUSH1 0x0a
0000090e: DUP10
0000090f: ADD
00000910: SWAP1
00000911: DUP2
00000912: SSTORE
00000913: SWAP2
00000914: MLOAD
00000915: PUSH1 0x0b
00000917: DUP10
00000918: ADD
00000919: SSTORE
0000091a: DUP12
0000091b: SLOAD
0000091c: DUP8
0000091d: MSTORE
0000091e: DUP6
0000091f: DUP10
00000920: MSTORE
00000921: DUP14
00000922: DUP8
00000923: KECCAK256
00000924: DUP1
00000925: SLOAD
00000926: DUP5
00000927: AND
00000928: SWAP1
00000929: SWAP2
0000092a: OR
0000092b: SWAP1
0000092c: SSTORE
0000092d: DUP10
0000092e: SLOAD
0000092f: SWAP1
00000930: SWAP2
00000931: AND
00000932: DUP9
00000933: OR
00000934: SWAP1
00000935: SWAP9
00000936: SSTORE
00000937: DUP3
00000938: DUP5
00000939: MSTORE
0000093a: SWAP1
0000093b: DUP5
0000093c: ADD
0000093d: DUP6
0000093e: MSTORE
0000093f: DUP10
00000940: DUP4
00000941: KECCAK256
00000942: DUP1
00000943: SLOAD
00000944: PUSH1 0xff
00000946: NOT
00000947: SWAP1
00000948: DUP2
00000949: AND
0000094a: DUP5
0000094b: OR
0000094c: SWAP1
0000094d: SWAP2
0000094e: SSTORE
0000094f: PUSH1 0x04
00000951: SWAP5
00000952: DUP6
00000953: ADD
00000954: DUP7
00000955: MSTORE
00000956: DUP11
00000957: DUP5
00000958: KECCAK256
00000959: DUP1
0000095a: SLOAD
0000095b: SWAP1
0000095c: SWAP2
0000095d: AND
0000095e: DUP4
0000095f: OR
00000960: SWAP1
00000961: SSTORE
00000962: SWAP4
00000963: DUP3
00000964: SWAP1
00000965: MSTORE
00000966: DUP6
00000967: SLOAD
00000968: PUSH2 0x2710
0000096b: CALLVALUE
0000096c: PUSH1 0xc8
0000096e: MUL
0000096f: DIV
00000970: SWAP1
00000971: DUP2
00000972: ADD
00000973: SWAP1
00000974: SWAP7
00000975: SSTORE
00000976: DUP4
00000977: SLOAD
00000978: DUP7
00000979: ADD
0000097a: DUP5
0000097b: SSTORE
0000097c: DUP3
0000097d: SLOAD
0000097e: SWAP1
0000097f: SWAP6
00000980: ADD
00000981: SWAP1
00000982: SWAP2
00000983: SSTORE
00000984: DUP5
00000985: SLOAD
00000986: DUP5
00000987: ADD
00000988: SWAP1
00000989: SWAP5
0000098a: SSTORE
0000098b: SWAP1
0000098c: DUP4
0000098d: MSTORE
0000098e: SWAP4
0000098f: DUP3
00000990: KECCAK256
00000991: SWAP1
00000992: SWAP4
00000993: ADD
00000994: DUP1
00000995: SLOAD
00000996: DUP5
00000997: ADD
00000998: SWAP1
00000999: SSTORE
0000099a: SWAP1
0000099b: SWAP2
0000099c: PUSH2 0x09a6
0000099f: SWAP1
000009a0: DUP7
000009a1: SWAP1
000009a2: PUSH2 0x16c3
000009a5: JUMP
000009a6: JUMPDEST
000009a7: SWAP1
000009a8: POP
000009a9: PUSH1 0x00
000009ab: PUSH2 0x09b5
000009ae: DUP7
000009af: PUSH1 0x01
000009b1: PUSH2 0x1625
000009b4: JUMP
000009b5: JUMPDEST
000009b6: PUSH1 0x07
000009b8: SLOAD
000009b9: SWAP1
000009ba: SWAP2
000009bb: POP
000009bc: PUSH1 0x01
000009be: PUSH1 0x01
000009c0: PUSH1 0xa0
000009c2: SHL
000009c3: SUB
000009c4: DUP4
000009c5: DUP2
000009c6: AND
000009c7: SWAP2
000009c8: AND
000009c9: EQ
000009ca: DUP1
000009cb: PUSH2 0x09e1
000009ce: JUMPI
000009cf: POP
000009d0: PUSH1 0x07
000009d2: SLOAD
000009d3: PUSH1 0x01
000009d5: PUSH1 0x01
000009d7: PUSH1 0xa0
000009d9: SHL
000009da: SUB
000009db: DUP3
000009dc: DUP2
000009dd: AND
000009de: SWAP2
000009df: AND
000009e0: EQ
000009e1: JUMPDEST
000009e2: ISZERO
000009e3: PUSH2 0x0a9f
000009e6: JUMPI
000009e7: PUSH1 0x07
000009e9: SLOAD
000009ea: PUSH1 0x00
000009ec: SWAP1
000009ed: PUSH2 0x09fe
000009f0: SWAP1
000009f1: PUSH1 0x01
000009f3: PUSH1 0x01
000009f5: PUSH1 0xa0
000009f7: SHL
000009f8: SUB
000009f9: AND
000009fa: PUSH2 0x0c7b
000009fd: JUMP
000009fe: JUMPDEST
000009ff: GT
00000a00: ISZERO
00000a01: PUSH2 0x0a1f
00000a04: JUMPI
00000a05: PUSH1 0x07
00000a07: SLOAD
00000a08: PUSH2 0x0a19
00000a0b: SWAP1
00000a0c: PUSH1 0x01
00000a0e: PUSH1 0x01
00000a10: PUSH1 0xa0
00000a12: SHL
00000a13: SUB
00000a14: AND
00000a15: PUSH2 0x1755
00000a18: JUMP
00000a19: JUMPDEST
00000a1a: POP
00000a1b: PUSH2 0x0a41
00000a1e: JUMP
00000a1f: JUMPDEST
00000a20: PUSH1 0x03
00000a22: SLOAD
00000a23: PUSH1 0x07
00000a25: SLOAD
00000a26: PUSH1 0x01
00000a28: PUSH1 0x01
00000a2a: PUSH1 0xa0
00000a2c: SHL
00000a2d: SUB
00000a2e: AND
00000a2f: PUSH1 0x00
00000a31: SWAP1
00000a32: DUP2
00000a33: MSTORE
00000a34: PUSH1 0x20
00000a36: DUP2
00000a37: SWAP1
00000a38: MSTORE
00000a39: PUSH1 0x40
00000a3b: SWAP1
00000a3c: KECCAK256
00000a3d: PUSH1 0x09
00000a3f: ADD
00000a40: SSTORE
00000a41: JUMPDEST
00000a42: PUSH1 0x07
00000a44: SLOAD
00000a45: PUSH1 0x01
00000a47: PUSH1 0x01
00000a49: PUSH1 0xa0
00000a4b: SHL
00000a4c: SUB
00000a4d: AND
00000a4e: PUSH1 0x00
00000a50: SWAP1
00000a51: DUP2
00000a52: MSTORE
00000a53: PUSH1 0x20
00000a55: DUP2
00000a56: SWAP1
00000a57: MSTORE
00000a58: PUSH1 0x40
00000a5a: SWAP1
00000a5b: KECCAK256
00000a5c: PUSH1 0x0a
00000a5e: ADD
00000a5f: DUP1
00000a60: SLOAD
00000a61: PUSH2 0x2710
00000a64: PUSH1 0xc8
00000a66: CALLVALUE
00000a67: MUL
00000a68: DIV
00000a69: SWAP1
00000a6a: DUP2
00000a6b: ADD
00000a6c: SWAP1
00000a6d: SWAP2
00000a6e: SSTORE
00000a6f: PUSH1 0x05
00000a71: DUP1
00000a72: SLOAD
00000a73: PUSH1 0x02
00000a75: DUP4
00000a76: MUL
00000a77: ADD
00000a78: SWAP1
00000a79: DUP2
00000a7a: SWAP1
00000a7b: SSTORE
00000a7c: SWAP1
00000a7d: PUSH8 0x0de0b6b3a7640000
00000a86: MUL
00000a87: DUP2
00000a88: PUSH2 0x0a8d
00000a8b: JUMPI
00000a8c: INVALID
00000a8d: JUMPDEST
00000a8e: PUSH1 0x03
00000a90: DUP1
00000a91: SLOAD
00000a92: SWAP3
00000a93: SWAP1
00000a94: SWAP2
00000a95: DIV
00000a96: SWAP1
00000a97: SWAP2
00000a98: ADD
00000a99: SWAP1
00000a9a: SSTORE
00000a9b: PUSH2 0x0ad1
00000a9e: JUMP
00000a9f: JUMPDEST
00000aa0: PUSH1 0x05
00000aa2: DUP1
00000aa3: SLOAD
00000aa4: PUSH2 0x2710
00000aa7: PUSH1 0xc8
00000aa9: CALLVALUE
00000aaa: MUL
00000aab: DIV
00000aac: SWAP1
00000aad: DUP2
00000aae: ADD
00000aaf: SWAP2
00000ab0: DUP3
00000ab1: SWAP1
00000ab2: SSTORE
00000ab3: PUSH8 0x0de0b6b3a7640000
00000abc: MUL
00000abd: DUP2
00000abe: PUSH2 0x0ac3
00000ac1: JUMPI
00000ac2: INVALID
00000ac3: JUMPDEST
00000ac4: PUSH1 0x03
00000ac6: DUP1
00000ac7: SLOAD
00000ac8: SWAP3
00000ac9: SWAP1
00000aca: SWAP2
00000acb: DIV
00000acc: SWAP1
00000acd: SWAP2
00000ace: ADD
00000acf: SWAP1
00000ad0: SSTORE
00000ad1: JUMPDEST
00000ad2: PUSH1 0x01
00000ad4: PUSH1 0x01
00000ad6: PUSH1 0xa0
00000ad8: SHL
00000ad9: SUB
00000ada: DUP7
00000adb: DUP2
00000adc: AND
00000add: PUSH1 0x00
00000adf: SWAP1
00000ae0: DUP2
00000ae1: MSTORE
00000ae2: PUSH1 0x20
00000ae4: DUP2
00000ae5: DUP2
00000ae6: MSTORE
00000ae7: PUSH1 0x40
00000ae9: DUP1
00000aea: DUP4
00000aeb: KECCAK256
00000aec: PUSH1 0x01
00000aee: DUP1
00000aef: DUP6
00000af0: MSTORE
00000af1: PUSH1 0x05
00000af3: SWAP1
00000af4: SWAP2
00000af5: ADD
00000af6: SWAP1
00000af7: SWAP3
00000af8: MSTORE
00000af9: SWAP1
00000afa: SWAP2
00000afb: KECCAK256
00000afc: DUP1
00000afd: SLOAD
00000afe: PUSH1 0x01
00000b00: PUSH1 0x01
00000b02: PUSH1 0xa0
00000b04: SHL
00000b05: SUB
00000b06: NOT
00000b07: AND
00000b08: SWAP3
00000b09: DUP6
00000b0a: AND
00000b0b: SWAP3
00000b0c: SWAP1
00000b0d: SWAP3
00000b0e: OR
00000b0f: SWAP1
00000b10: SWAP2
00000b11: SSTORE
00000b12: PUSH2 0x0b1e
00000b15: SWAP1
00000b16: DUP8
00000b17: SWAP1
00000b18: DUP5
00000b19: SWAP1
00000b1a: PUSH2 0x17bb
00000b1d: JUMP
00000b1e: JUMPDEST
00000b1f: PUSH2 0x0b2a
00000b22: DUP7
00000b23: DUP3
00000b24: PUSH1 0x01
00000b26: PUSH2 0x1b2c
00000b29: JUMP
00000b2a: JUMPDEST
00000b2b: PUSH1 0x01
00000b2d: PUSH1 0x01
00000b2f: PUSH1 0xa0
00000b31: SHL
00000b32: SUB
00000b33: DUP1
00000b34: DUP8
00000b35: AND
00000b36: PUSH1 0x00
00000b38: DUP2
00000b39: DUP2
00000b3a: MSTORE
00000b3b: PUSH1 0x20
00000b3d: DUP2
00000b3e: DUP2
00000b3f: MSTORE
00000b40: PUSH1 0x40
00000b42: DUP1
00000b43: DUP4
00000b44: KECCAK256
00000b45: SLOAD
00000b46: SWAP5
00000b47: DUP11
00000b48: AND
00000b49: DUP1
00000b4a: DUP5
00000b4b: MSTORE
00000b4c: SWAP3
00000b4d: DUP2
00000b4e: SWAP1
00000b4f: KECCAK256
00000b50: SLOAD
00000b51: DUP2
00000b52: MLOAD
00000b53: SWAP1
00000b54: DUP2
00000b55: MSTORE
00000b56: SWAP1
00000b57: MLOAD
00000b58: SWAP3
00000b59: SWAP4
00000b5a: SWAP3
00000b5b: PUSH32 0x309bb360e8b69c23937ccc5fb01f9aeeead1c95a99604e175113ff82f2b1723a
00000b7c: SWAP3
00000b7d: SWAP2
00000b7e: DUP2
00000b7f: SWAP1
00000b80: SUB
00000b81: SWAP1
00000b82: SWAP2
00000b83: ADD
00000b84: SWAP1
00000b85: LOG4
00000b86: POP
00000b87: POP
00000b88: POP
00000b89: POP
00000b8a: POP
00000b8b: POP
00000b8c: JUMP
00000b8d: JUMPDEST
00000b8e: PUSH1 0x14
00000b90: ADD
00000b91: MLOAD
00000b92: SWAP1
00000b93: JUMP
00000b94: JUMPDEST
00000b95: PUSH1 0x01
00000b97: PUSH1 0x01
00000b99: PUSH1 0xa0
00000b9b: SHL
00000b9c: SUB
00000b9d: DUP3
00000b9e: AND
00000b9f: PUSH1 0x00
00000ba1: SWAP1
00000ba2: DUP2
00000ba3: MSTORE
00000ba4: PUSH1 0x20
00000ba6: DUP2
00000ba7: DUP2
00000ba8: MSTORE
00000ba9: PUSH1 0x40
00000bab: DUP1
00000bac: DUP4
00000bad: KECCAK256
00000bae: PUSH1 0xff
00000bb0: DUP1
00000bb1: DUP7
00000bb2: AND
00000bb3: DUP6
00000bb4: MSTORE
00000bb5: PUSH1 0x03
00000bb7: SWAP1
00000bb8: SWAP2
00000bb9: ADD
00000bba: SWAP1
00000bbb: SWAP3
00000bbc: MSTORE
00000bbd: SWAP1
00000bbe: SWAP2
00000bbf: KECCAK256
00000bc0: SLOAD
00000bc1: AND
00000bc2: JUMPDEST
00000bc3: SWAP3
00000bc4: SWAP2
00000bc5: POP
00000bc6: POP
00000bc7: JUMP
00000bc8: JUMPDEST
00000bc9: PUSH1 0xc8
00000bcb: DUP2
00000bcc: JUMP
00000bcd: JUMPDEST
00000bce: PUSH1 0x00
00000bd0: DUP1
00000bd1: PUSH2 0x0bd9
00000bd4: CALLER
00000bd5: PUSH2 0x0c7b
00000bd8: JUMP
00000bd9: JUMPDEST
00000bda: SWAP1
00000bdb: POP
00000bdc: PUSH1 0x00
00000bde: DUP2
00000bdf: GT
00000be0: PUSH2 0x0c24
00000be3: JUMPI
00000be4: PUSH1 0x40
00000be6: DUP1
00000be7: MLOAD
00000be8: PUSH3 0x461bcd
00000bec: PUSH1 0xe5
00000bee: SHL
00000bef: DUP2
00000bf0: MSTORE
00000bf1: PUSH1 0x20
00000bf3: PUSH1 0x04
00000bf5: DUP3
00000bf6: ADD
00000bf7: MSTORE
00000bf8: PUSH1 0x11
00000bfa: PUSH1 0x24
00000bfc: DUP3
00000bfd: ADD
00000bfe: MSTORE
00000bff: PUSH17 0x4e6f206469767320617661696c61626c65
00000c11: PUSH1 0x78
00000c13: SHL
00000c14: PUSH1 0x44
00000c16: DUP3
00000c17: ADD
00000c18: MSTORE
00000c19: SWAP1
00000c1a: MLOAD
00000c1b: SWAP1
00000c1c: DUP2
00000c1d: SWAP1
00000c1e: SUB
00000c1f: PUSH1 0x64
00000c21: ADD
00000c22: SWAP1
00000c23: REVERT
00000c24: JUMPDEST
00000c25: PUSH2 0x0c2d
00000c28: CALLER
00000c29: PUSH2 0x1755
00000c2c: JUMP
00000c2d: JUMPDEST
00000c2e: POP
00000c2f: POP
00000c30: SWAP1
00000c31: JUMP
00000c32: JUMPDEST
00000c33: PUSH1 0x03
00000c35: SLOAD
00000c36: DUP2
00000c37: JUMP
00000c38: JUMPDEST
00000c39: PUSH1 0x0c
00000c3b: DUP2
00000c3c: JUMP
00000c3d: JUMPDEST
00000c3e: PUSH1 0x01
00000c40: PUSH1 0x20
00000c42: MSTORE
00000c43: PUSH1 0x00
00000c45: SWAP1
00000c46: DUP2
00000c47: MSTORE
00000c48: PUSH1 0x40
00000c4a: SWAP1
00000c4b: KECCAK256
00000c4c: SLOAD
00000c4d: PUSH1 0x01
00000c4f: PUSH1 0x01
00000c51: PUSH1 0xa0
00000c53: SHL
00000c54: SUB
00000c55: AND
00000c56: DUP2
00000c57: JUMP
00000c58: JUMPDEST
00000c59: PUSH1 0x06
00000c5b: SLOAD
00000c5c: DUP2
00000c5d: JUMP
00000c5e: JUMPDEST
00000c5f: PUSH1 0x01
00000c61: PUSH1 0x01
00000c63: PUSH1 0xa0
00000c65: SHL
00000c66: SUB
00000c67: AND
00000c68: PUSH1 0x00
00000c6a: SWAP1
00000c6b: DUP2
00000c6c: MSTORE
00000c6d: PUSH1 0x20
00000c6f: DUP2
00000c70: SWAP1
00000c71: MSTORE
00000c72: PUSH1 0x40
00000c74: SWAP1
00000c75: KECCAK256
00000c76: SLOAD
00000c77: ISZERO
00000c78: ISZERO
00000c79: SWAP1
00000c7a: JUMP
00000c7b: JUMPDEST
00000c7c: PUSH1 0x01
00000c7e: PUSH1 0x01
00000c80: PUSH1 0xa0
00000c82: SHL
00000c83: SUB
00000c84: AND
00000c85: PUSH1 0x00
00000c87: SWAP1
00000c88: DUP2
00000c89: MSTORE
00000c8a: PUSH1 0x20
00000c8c: DUP2
00000c8d: SWAP1
00000c8e: MSTORE
00000c8f: PUSH1 0x40
00000c91: SWAP1
00000c92: KECCAK256
00000c93: PUSH1 0x09
00000c95: DUP2
00000c96: ADD
00000c97: SLOAD
00000c98: PUSH1 0x03
00000c9a: SLOAD
00000c9b: PUSH1 0x0a
00000c9d: SWAP1
00000c9e: SWAP3
00000c9f: ADD
00000ca0: SLOAD
00000ca1: PUSH8 0x0de0b6b3a7640000
00000caa: SWAP2
00000cab: SWAP1
00000cac: SWAP3
00000cad: SUB
00000cae: SWAP1
00000caf: SWAP2
00000cb0: MUL
00000cb1: DIV
00000cb2: SWAP1
00000cb3: JUMP
00000cb4: JUMPDEST
00000cb5: PUSH2 0x0cbe
00000cb8: CALLER
00000cb9: DUP3
00000cba: PUSH2 0x073f
00000cbd: JUMP
00000cbe: JUMPDEST
00000cbf: POP
00000cc0: JUMP
00000cc1: JUMPDEST
00000cc2: PUSH1 0x04
00000cc4: SLOAD
00000cc5: DUP2
00000cc6: JUMP
00000cc7: JUMPDEST
00000cc8: PUSH1 0x01
00000cca: PUSH1 0x01
00000ccc: PUSH1 0xa0
00000cce: SHL
00000ccf: SUB
00000cd0: DUP3
00000cd1: DUP2
00000cd2: AND
00000cd3: PUSH1 0x00
00000cd5: SWAP1
00000cd6: DUP2
00000cd7: MSTORE
00000cd8: PUSH1 0x20
00000cda: DUP2
00000cdb: DUP2
00000cdc: MSTORE
00000cdd: PUSH1 0x40
00000cdf: DUP1
00000ce0: DUP4
00000ce1: KECCAK256
00000ce2: PUSH1 0xff
00000ce4: DUP7
00000ce5: DUP2
00000ce6: AND
00000ce7: DUP6
00000ce8: MSTORE
00000ce9: PUSH1 0x05
00000ceb: SWAP1
00000cec: SWAP2
00000ced: ADD
00000cee: DUP4
00000cef: MSTORE
00000cf0: DUP2
00000cf1: DUP5
00000cf2: KECCAK256
00000cf3: DUP1
00000cf4: SLOAD
00000cf5: PUSH1 0x02
00000cf7: DUP3
00000cf8: ADD
00000cf9: SLOAD
00000cfa: PUSH1 0x01
00000cfc: SWAP1
00000cfd: SWAP3
00000cfe: ADD
00000cff: DUP1
00000d00: SLOAD
00000d01: DUP6
00000d02: MLOAD
00000d03: DUP2
00000d04: DUP9
00000d05: MUL
00000d06: DUP2
00000d07: ADD
00000d08: DUP9
00000d09: ADD
00000d0a: SWAP1
00000d0b: SWAP7
00000d0c: MSTORE
00000d0d: DUP1
00000d0e: DUP7
00000d0f: MSTORE
00000d10: SWAP7
00000d11: SWAP8
00000d12: PUSH1 0x60
00000d14: SWAP8
00000d15: DUP10
00000d16: SWAP8
00000d17: SWAP4
00000d18: SWAP1
00000d19: SWAP2
00000d1a: AND
00000d1b: SWAP6
00000d1c: SWAP2
00000d1d: SWAP5
00000d1e: SWAP4
00000d1f: SWAP1
00000d20: SWAP4
00000d21: AND
00000d22: SWAP3
00000d23: SWAP1
00000d24: SWAP2
00000d25: DUP5
00000d26: SWAP2
00000d27: SWAP1
00000d28: DUP4
00000d29: ADD
00000d2a: DUP3
00000d2b: DUP3
00000d2c: DUP1
00000d2d: ISZERO
00000d2e: PUSH2 0x0d60
00000d31: JUMPI
00000d32: PUSH1 0x20
00000d34: MUL
00000d35: DUP3
00000d36: ADD
00000d37: SWAP2
00000d38: SWAP1
00000d39: PUSH1 0x00
00000d3b: MSTORE
00000d3c: PUSH1 0x20
00000d3e: PUSH1 0x00
00000d40: KECCAK256
00000d41: SWAP1
00000d42: JUMPDEST
00000d43: DUP2
00000d44: SLOAD
00000d45: PUSH1 0x01
00000d47: PUSH1 0x01
00000d49: PUSH1 0xa0
00000d4b: SHL
00000d4c: SUB
00000d4d: AND
00000d4e: DUP2
00000d4f: MSTORE
00000d50: PUSH1 0x01
00000d52: SWAP1
00000d53: SWAP2
00000d54: ADD
00000d55: SWAP1
00000d56: PUSH1 0x20
00000d58: ADD
00000d59: DUP1
00000d5a: DUP4
00000d5b: GT
00000d5c: PUSH2 0x0d42
00000d5f: JUMPI
00000d60: JUMPDEST
00000d61: POP
00000d62: POP
00000d63: POP
00000d64: POP
00000d65: POP
00000d66: SWAP2
00000d67: POP
00000d68: SWAP3
00000d69: POP
00000d6a: SWAP3
00000d6b: POP
00000d6c: SWAP3
00000d6d: POP
00000d6e: SWAP3
00000d6f: POP
00000d70: SWAP3
00000d71: POP
00000d72: SWAP3
00000d73: JUMP
00000d74: JUMPDEST
00000d75: PUSH1 0x07
00000d77: SLOAD
00000d78: PUSH1 0x01
00000d7a: PUSH1 0x01
00000d7c: PUSH1 0xa0
00000d7e: SHL
00000d7f: SUB
00000d80: AND
00000d81: DUP2
00000d82: JUMP
00000d83: JUMPDEST
00000d84: PUSH1 0x01
00000d86: PUSH1 0x01
00000d88: PUSH1 0xa0
00000d8a: SHL
00000d8b: SUB
00000d8c: DUP3
00000d8d: DUP2
00000d8e: AND
00000d8f: PUSH1 0x00
00000d91: SWAP1
00000d92: DUP2
00000d93: MSTORE
00000d94: PUSH1 0x20
00000d96: DUP2
00000d97: DUP2
00000d98: MSTORE
00000d99: PUSH1 0x40
00000d9b: DUP1
00000d9c: DUP4
00000d9d: KECCAK256
00000d9e: PUSH1 0xff
00000da0: DUP7
00000da1: DUP2
00000da2: AND
00000da3: DUP6
00000da4: MSTORE
00000da5: PUSH1 0x06
00000da7: SWAP1
00000da8: SWAP2
00000da9: ADD
00000daa: DUP4
00000dab: MSTORE
00000dac: DUP2
00000dad: DUP5
00000dae: KECCAK256
00000daf: DUP1
00000db0: SLOAD
00000db1: PUSH1 0x03
00000db3: DUP3
00000db4: ADD
00000db5: SLOAD
00000db6: PUSH1 0x05
00000db8: DUP4
00000db9: ADD
00000dba: SLOAD
00000dbb: PUSH1 0x01
00000dbd: DUP5
00000dbe: ADD
00000dbf: DUP1
00000dc0: SLOAD
00000dc1: DUP8
00000dc2: MLOAD
00000dc3: DUP2
00000dc4: DUP11
00000dc5: MUL
00000dc6: DUP2
00000dc7: ADD
00000dc8: DUP11
00000dc9: ADD
00000dca: SWAP1
00000dcb: SWAP9
00000dcc: MSTORE
00000dcd: DUP1
00000dce: DUP9
00000dcf: MSTORE
00000dd0: SWAP9
00000dd1: SWAP10
00000dd2: PUSH1 0x60
00000dd4: SWAP10
00000dd5: DUP11
00000dd6: SWAP10
00000dd7: DUP13
00000dd8: SWAP10
00000dd9: DUP11
00000dda: SWAP10
00000ddb: SWAP8
00000ddc: DUP5
00000ddd: AND
00000dde: SWAP9
00000ddf: SWAP5
00000de0: SWAP8
00000de1: PUSH1 0x02
00000de3: SWAP1
00000de4: SWAP6
00000de5: ADD
00000de6: SWAP7
00000de7: SWAP1
00000de8: SWAP5
00000de9: AND
00000dea: SWAP5
00000deb: SWAP1
00000dec: SWAP3
00000ded: AND
00000dee: SWAP3
00000def: SWAP2
00000df0: DUP7
00000df1: SWAP2
00000df2: SWAP1
00000df3: DUP4
00000df4: ADD
00000df5: DUP3
00000df6: DUP3
00000df7: DUP1
00000df8: ISZERO
00000df9: PUSH2 0x0e2b
00000dfc: JUMPI
00000dfd: PUSH1 0x20
00000dff: MUL
00000e00: DUP3
00000e01: ADD
00000e02: SWAP2
00000e03: SWAP1
00000e04: PUSH1 0x00
00000e06: MSTORE
00000e07: PUSH1 0x20
00000e09: PUSH1 0x00
00000e0b: KECCAK256
00000e0c: SWAP1
00000e0d: JUMPDEST
00000e0e: DUP2
00000e0f: SLOAD
00000e10: PUSH1 0x01
00000e12: PUSH1 0x01
00000e14: PUSH1 0xa0
00000e16: SHL
00000e17: SUB
00000e18: AND
00000e19: DUP2
00000e1a: MSTORE
00000e1b: PUSH1 0x01
00000e1d: SWAP1
00000e1e: SWAP2
00000e1f: ADD
00000e20: SWAP1
00000e21: PUSH1 0x20
00000e23: ADD
00000e24: DUP1
00000e25: DUP4
00000e26: GT
00000e27: PUSH2 0x0e0d
00000e2a: JUMPI
00000e2b: JUMPDEST
00000e2c: POP
00000e2d: POP
00000e2e: POP
00000e2f: POP
00000e30: POP
00000e31: SWAP4
00000e32: POP
00000e33: DUP3
00000e34: DUP1
00000e35: SLOAD
00000e36: DUP1
00000e37: PUSH1 0x20
00000e39: MUL
00000e3a: PUSH1 0x20
00000e3c: ADD
00000e3d: PUSH1 0x40
00000e3f: MLOAD
00000e40: SWAP1
00000e41: DUP2
00000e42: ADD
00000e43: PUSH1 0x40
00000e45: MSTORE
00000e46: DUP1
00000e47: SWAP3
00000e48: SWAP2
00000e49: SWAP1
00000e4a: DUP2
00000e4b: DUP2
00000e4c: MSTORE
00000e4d: PUSH1 0x20
00000e4f: ADD
00000e50: DUP3
00000e51: DUP1
00000e52: SLOAD
00000e53: DUP1
00000e54: ISZERO
00000e55: PUSH2 0x0e87
00000e58: JUMPI
00000e59: PUSH1 0x20
00000e5b: MUL
00000e5c: DUP3
00000e5d: ADD
00000e5e: SWAP2
00000e5f: SWAP1
00000e60: PUSH1 0x00
00000e62: MSTORE
00000e63: PUSH1 0x20
00000e65: PUSH1 0x00
00000e67: KECCAK256
00000e68: SWAP1
00000e69: JUMPDEST
00000e6a: DUP2
00000e6b: SLOAD
00000e6c: PUSH1 0x01
00000e6e: PUSH1 0x01
00000e70: PUSH1 0xa0
00000e72: SHL
00000e73: SUB
00000e74: AND
00000e75: DUP2
00000e76: MSTORE
00000e77: PUSH1 0x01
00000e79: SWAP1
00000e7a: SWAP2
00000e7b: ADD
00000e7c: SWAP1
00000e7d: PUSH1 0x20
00000e7f: ADD
00000e80: DUP1
00000e81: DUP4
00000e82: GT
00000e83: PUSH2 0x0e69
00000e86: JUMPI
00000e87: JUMPDEST
00000e88: POP
00000e89: POP
00000e8a: POP
00000e8b: POP
00000e8c: POP
00000e8d: SWAP3
00000e8e: POP
00000e8f: SWAP5
00000e90: POP
00000e91: SWAP5
00000e92: POP
00000e93: SWAP5
00000e94: POP
00000e95: SWAP5
00000e96: POP
00000e97: SWAP5
00000e98: POP
00000e99: SWAP3
00000e9a: SWAP6
00000e9b: POP
00000e9c: SWAP3
00000e9d: SWAP6
00000e9e: SWAP1
00000e9f: SWAP4
00000ea0: POP
00000ea1: JUMP
00000ea2: JUMPDEST
00000ea3: PUSH1 0x00
00000ea5: PUSH1 0x20
00000ea7: DUP2
00000ea8: SWAP1
00000ea9: MSTORE
00000eaa: SWAP1
00000eab: DUP2
00000eac: MSTORE
00000ead: PUSH1 0x40
00000eaf: SWAP1
00000eb0: KECCAK256
00000eb1: DUP1
00000eb2: SLOAD
00000eb3: PUSH1 0x01
00000eb5: DUP3
00000eb6: ADD
00000eb7: SLOAD
00000eb8: PUSH1 0x02
00000eba: DUP4
00000ebb: ADD
00000ebc: SLOAD
00000ebd: PUSH1 0x09
00000ebf: DUP5
00000ec0: ADD
00000ec1: SLOAD
00000ec2: PUSH1 0x0a
00000ec4: DUP6
00000ec5: ADD
00000ec6: SLOAD
00000ec7: PUSH1 0x0b
00000ec9: SWAP1
00000eca: SWAP6
00000ecb: ADD
00000ecc: SLOAD
00000ecd: SWAP4
00000ece: SWAP5
00000ecf: PUSH1 0x01
00000ed1: PUSH1 0x01
00000ed3: PUSH1 0xa0
00000ed5: SHL
00000ed6: SUB
00000ed7: SWAP1
00000ed8: SWAP4
00000ed9: AND
00000eda: SWAP4
00000edb: SWAP2
00000edc: SWAP3
00000edd: SWAP1
00000ede: SWAP2
00000edf: DUP7
00000ee0: JUMP
00000ee1: JUMPDEST
00000ee2: PUSH1 0x01
00000ee4: PUSH1 0x01
00000ee6: PUSH1 0xa0
00000ee8: SHL
00000ee9: SUB
00000eea: SWAP2
00000eeb: SWAP1
00000eec: SWAP2
00000eed: AND
00000eee: PUSH1 0x00
00000ef0: SWAP1
00000ef1: DUP2
00000ef2: MSTORE
00000ef3: PUSH1 0x20
00000ef5: DUP2
00000ef6: DUP2
00000ef7: MSTORE
00000ef8: PUSH1 0x40
00000efa: DUP1
00000efb: DUP4
00000efc: KECCAK256
00000efd: PUSH1 0xff
00000eff: SWAP5
00000f00: DUP6
00000f01: AND
00000f02: DUP5
00000f03: MSTORE
00000f04: PUSH1 0x04
00000f06: ADD
00000f07: SWAP1
00000f08: SWAP2
00000f09: MSTORE
00000f0a: SWAP1
00000f0b: KECCAK256
00000f0c: SLOAD
00000f0d: AND
00000f0e: SWAP1
00000f0f: JUMP
00000f10: JUMPDEST
00000f11: PUSH2 0x0f19
00000f14: CALLER
00000f15: PUSH2 0x0c5e
00000f18: JUMP
00000f19: JUMPDEST
00000f1a: PUSH2 0x0f54
00000f1d: JUMPI
00000f1e: PUSH1 0x40
00000f20: MLOAD
00000f21: PUSH3 0x461bcd
00000f25: PUSH1 0xe5
00000f27: SHL
00000f28: DUP2
00000f29: MSTORE
00000f2a: PUSH1 0x04
00000f2c: ADD
00000f2d: DUP1
00000f2e: DUP1
00000f2f: PUSH1 0x20
00000f31: ADD
00000f32: DUP3
00000f33: DUP2
00000f34: SUB
00000f35: DUP3
00000f36: MSTORE
00000f37: PUSH1 0x23
00000f39: DUP2
00000f3a: MSTORE
00000f3b: PUSH1 0x20
00000f3d: ADD
00000f3e: DUP1
00000f3f: PUSH2 0x3367
00000f42: PUSH1 0x23
00000f44: SWAP2
00000f45: CODECOPY
00000f46: PUSH1 0x40
00000f48: ADD
00000f49: SWAP2
00000f4a: POP
00000f4b: POP
00000f4c: PUSH1 0x40
00000f4e: MLOAD
00000f4f: DUP1
00000f50: SWAP2
00000f51: SUB
00000f52: SWAP1
00000f53: REVERT
00000f54: JUMPDEST
00000f55: DUP2
00000f56: PUSH1 0xff
00000f58: AND
00000f59: PUSH1 0x01
00000f5b: EQ
00000f5c: DUP1
00000f5d: PUSH2 0x0f69
00000f60: JUMPI
00000f61: POP
00000f62: DUP2
00000f63: PUSH1 0xff
00000f65: AND
00000f66: PUSH1 0x02
00000f68: EQ
00000f69: JUMPDEST
00000f6a: PUSH2 0x0fab
00000f6d: JUMPI
00000f6e: PUSH1 0x40
00000f70: DUP1
00000f71: MLOAD
00000f72: PUSH3 0x461bcd
00000f76: PUSH1 0xe5
00000f78: SHL
00000f79: DUP2
00000f7a: MSTORE
00000f7b: PUSH1 0x20
00000f7d: PUSH1 0x04
00000f7f: DUP3
00000f80: ADD
00000f81: MSTORE
00000f82: PUSH1 0x0e
00000f84: PUSH1 0x24
00000f86: DUP3
00000f87: ADD
00000f88: MSTORE
00000f89: PUSH14 0x0d2dcecc2d8d2c840dac2e8e4d2f
00000f98: PUSH1 0x93
00000f9a: SHL
00000f9b: PUSH1 0x44
00000f9d: DUP3
00000f9e: ADD
00000f9f: MSTORE
00000fa0: SWAP1
00000fa1: MLOAD
00000fa2: SWAP1
00000fa3: DUP2
00000fa4: SWAP1
00000fa5: SUB
00000fa6: PUSH1 0x64
00000fa8: ADD
00000fa9: SWAP1
00000faa: REVERT
00000fab: JUMPDEST
00000fac: PUSH1 0xff
00000fae: DUP2
00000faf: AND
00000fb0: PUSH1 0x00
00000fb2: SWAP1
00000fb3: DUP2
00000fb4: MSTORE
00000fb5: PUSH1 0x08
00000fb7: PUSH1 0x20
00000fb9: MSTORE
00000fba: PUSH1 0x40
00000fbc: SWAP1
00000fbd: KECCAK256
00000fbe: SLOAD
00000fbf: CALLVALUE
00000fc0: EQ
00000fc1: PUSH2 0x1001
00000fc4: JUMPI
00000fc5: PUSH1 0x40
00000fc7: DUP1
00000fc8: MLOAD
00000fc9: PUSH3 0x461bcd
00000fcd: PUSH1 0xe5
00000fcf: SHL
00000fd0: DUP2
00000fd1: MSTORE
00000fd2: PUSH1 0x20
00000fd4: PUSH1 0x04
00000fd6: DUP3
00000fd7: ADD
00000fd8: MSTORE
00000fd9: PUSH1 0x0d
00000fdb: PUSH1 0x24
00000fdd: DUP3
00000fde: ADD
00000fdf: MSTORE
00000fe0: PUSH13 0x696e76616c6964207072696365
00000fee: PUSH1 0x98
00000ff0: SHL
00000ff1: PUSH1 0x44
00000ff3: DUP3
00000ff4: ADD
00000ff5: MSTORE
00000ff6: SWAP1
00000ff7: MLOAD
00000ff8: SWAP1
00000ff9: DUP2
00000ffa: SWAP1
00000ffb: SUB
00000ffc: PUSH1 0x64
00000ffe: ADD
00000fff: SWAP1
00001000: REVERT
00001001: JUMPDEST
00001002: PUSH1 0x01
00001004: DUP2
00001005: PUSH1 0xff
00001007: AND
00001008: GT
00001009: DUP1
0000100a: ISZERO
0000100b: PUSH2 0x1018
0000100e: JUMPI
0000100f: POP
00001010: PUSH1 0x0c
00001012: PUSH1 0xff
00001014: DUP3
00001015: AND
00001016: GT
00001017: ISZERO
00001018: JUMPDEST
00001019: PUSH2 0x1059
0000101c: JUMPI
0000101d: PUSH1 0x40
0000101f: DUP1
00001020: MLOAD
00001021: PUSH3 0x461bcd
00001025: PUSH1 0xe5
00001027: SHL
00001028: DUP2
00001029: MSTORE
0000102a: PUSH1 0x20
0000102c: PUSH1 0x04
0000102e: DUP3
0000102f: ADD
00001030: MSTORE
00001031: PUSH1 0x0d
00001033: PUSH1 0x24
00001035: DUP3
00001036: ADD
00001037: MSTORE
00001038: PUSH13 0x1a5b9d985b1a59081b195d995b
00001046: PUSH1 0x9a
00001048: SHL
00001049: PUSH1 0x44
0000104b: DUP3
0000104c: ADD
0000104d: MSTORE
0000104e: SWAP1
0000104f: MLOAD
00001050: SWAP1
00001051: DUP2
00001052: SWAP1
00001053: SUB
00001054: PUSH1 0x64
00001056: ADD
00001057: SWAP1
00001058: REVERT
00001059: JUMPDEST
0000105a: PUSH1 0x00
0000105c: PUSH2 0x1064
0000105f: CALLER
00001060: PUSH2 0x0c7b
00001063: JUMP
00001064: JUMPDEST
00001065: GT
00001066: ISZERO
00001067: PUSH2 0x1079
0000106a: JUMPI
0000106b: PUSH2 0x1073
0000106e: CALLER
0000106f: PUSH2 0x1755
00001072: JUMP
00001073: JUMPDEST
00001074: POP
00001075: PUSH2 0x1090
00001078: JUMP
00001079: JUMPDEST
0000107a: PUSH1 0x03
0000107c: SLOAD
0000107d: CALLER
0000107e: PUSH1 0x00
00001080: SWAP1
00001081: DUP2
00001082: MSTORE
00001083: PUSH1 0x20
00001085: DUP2
00001086: SWAP1
00001087: MSTORE
00001088: PUSH1 0x40
0000108a: SWAP1
0000108b: KECCAK256
0000108c: PUSH1 0x09
0000108e: ADD
0000108f: SSTORE
00001090: JUMPDEST
00001091: CALLER
00001092: PUSH1 0x00
00001094: SWAP1
00001095: DUP2
00001096: MSTORE
00001097: PUSH1 0x20
00001099: DUP2
0000109a: SWAP1
0000109b: MSTORE
0000109c: PUSH1 0x40
0000109e: SWAP1
0000109f: KECCAK256
000010a0: PUSH1 0x0a
000010a2: ADD
000010a3: DUP1
000010a4: SLOAD
000010a5: PUSH2 0x2710
000010a8: PUSH1 0xc8
000010aa: CALLVALUE
000010ab: MUL
000010ac: DIV
000010ad: SWAP1
000010ae: DUP2
000010af: ADD
000010b0: SWAP1
000010b1: SWAP2
000010b2: SSTORE
000010b3: PUSH1 0x02
000010b5: DUP1
000010b6: SLOAD
000010b7: DUP3
000010b8: ADD
000010b9: SWAP1
000010ba: SSTORE
000010bb: PUSH1 0x04
000010bd: DUP1
000010be: SLOAD
000010bf: SWAP1
000010c0: SWAP2
000010c1: ADD
000010c2: SWAP1
000010c3: SSTORE
000010c4: PUSH1 0xff
000010c6: DUP3
000010c7: AND
000010c8: PUSH1 0x01
000010ca: EQ
000010cb: ISZERO
000010cc: PUSH2 0x1354
000010cf: JUMPI
000010d0: CALLER
000010d1: PUSH1 0x00
000010d3: SWAP1
000010d4: DUP2
000010d5: MSTORE
000010d6: PUSH1 0x20
000010d8: DUP2
000010d9: DUP2
000010da: MSTORE
000010db: PUSH1 0x40
000010dd: DUP1
000010de: DUP4
000010df: KECCAK256
000010e0: PUSH1 0xff
000010e2: DUP1
000010e3: DUP7
000010e4: AND
000010e5: DUP6
000010e6: MSTORE
000010e7: PUSH1 0x03
000010e9: SWAP1
000010ea: SWAP2
000010eb: ADD
000010ec: SWAP1
000010ed: SWAP3
000010ee: MSTORE
000010ef: SWAP1
000010f0: SWAP2
000010f1: KECCAK256
000010f2: SLOAD
000010f3: AND
000010f4: ISZERO
000010f5: PUSH2 0x113f
000010f8: JUMPI
000010f9: PUSH1 0x40
000010fb: DUP1
000010fc: MLOAD
000010fd: PUSH3 0x461bcd
00001101: PUSH1 0xe5
00001103: SHL
00001104: DUP2
00001105: MSTORE
00001106: PUSH1 0x20
00001108: PUSH1 0x04
0000110a: DUP3
0000110b: ADD
0000110c: MSTORE
0000110d: PUSH1 0x17
0000110f: PUSH1 0x24
00001111: DUP3
00001112: ADD
00001113: MSTORE
00001114: PUSH23 0x1b195d995b08185b1c9958591e481858dd1a5d985d1959
0000112c: PUSH1 0x4a
0000112e: SHL
0000112f: PUSH1 0x44
00001131: DUP3
00001132: ADD
00001133: MSTORE
00001134: SWAP1
00001135: MLOAD
00001136: SWAP1
00001137: DUP2
00001138: SWAP1
00001139: SUB
0000113a: PUSH1 0x64
0000113c: ADD
0000113d: SWAP1
0000113e: REVERT
0000113f: JUMPDEST
00001140: CALLER
00001141: PUSH1 0x00
00001143: SWAP1
00001144: DUP2
00001145: MSTORE
00001146: PUSH1 0x20
00001148: DUP2
00001149: DUP2
0000114a: MSTORE
0000114b: PUSH1 0x40
0000114d: DUP1
0000114e: DUP4
0000114f: KECCAK256
00001150: PUSH1 0xff
00001152: PUSH1 0x00
00001154: NOT
00001155: DUP7
00001156: ADD
00001157: DUP2
00001158: AND
00001159: DUP6
0000115a: MSTORE
0000115b: PUSH1 0x05
0000115d: SWAP1
0000115e: SWAP2
0000115f: ADD
00001160: SWAP1
00001161: SWAP3
00001162: MSTORE
00001163: SWAP1
00001164: SWAP2
00001165: KECCAK256
00001166: PUSH1 0x02
00001168: ADD
00001169: SLOAD
0000116a: AND
0000116b: ISZERO
0000116c: PUSH2 0x119d
0000116f: JUMPI
00001170: CALLER
00001171: PUSH1 0x00
00001173: SWAP1
00001174: DUP2
00001175: MSTORE
00001176: PUSH1 0x20
00001178: DUP2
00001179: DUP2
0000117a: MSTORE
0000117b: PUSH1 0x40
0000117d: DUP1
0000117e: DUP4
0000117f: KECCAK256
00001180: PUSH1 0xff
00001182: PUSH1 0x00
00001184: NOT
00001185: DUP7
00001186: ADD
00001187: AND
00001188: DUP5
00001189: MSTORE
0000118a: PUSH1 0x05
0000118c: ADD
0000118d: SWAP1
0000118e: SWAP2
0000118f: MSTORE
00001190: SWAP1
00001191: KECCAK256
00001192: PUSH1 0x02
00001194: ADD
00001195: DUP1
00001196: SLOAD
00001197: PUSH1 0xff
00001199: NOT
0000119a: AND
0000119b: SWAP1
0000119c: SSTORE
0000119d: JUMPDEST
0000119e: PUSH1 0x00
000011a0: PUSH2 0x11a9
000011a3: CALLER
000011a4: DUP4
000011a5: PUSH2 0x16c3
000011a8: JUMP
000011a9: JUMPDEST
000011aa: PUSH1 0x07
000011ac: SLOAD
000011ad: SWAP1
000011ae: SWAP2
000011af: POP
000011b0: PUSH1 0x01
000011b2: PUSH1 0x01
000011b4: PUSH1 0xa0
000011b6: SHL
000011b7: SUB
000011b8: DUP1
000011b9: DUP4
000011ba: AND
000011bb: SWAP2
000011bc: AND
000011bd: EQ
000011be: ISZERO
000011bf: PUSH2 0x127b
000011c2: JUMPI
000011c3: PUSH1 0x07
000011c5: SLOAD
000011c6: PUSH1 0x00
000011c8: SWAP1
000011c9: PUSH2 0x11da
000011cc: SWAP1
000011cd: PUSH1 0x01
000011cf: PUSH1 0x01
000011d1: PUSH1 0xa0
000011d3: SHL
000011d4: SUB
000011d5: AND
000011d6: PUSH2 0x0c7b
000011d9: JUMP
000011da: JUMPDEST
000011db: GT
000011dc: ISZERO
000011dd: PUSH2 0x11fb
000011e0: JUMPI
000011e1: PUSH1 0x07
000011e3: SLOAD
000011e4: PUSH2 0x11f5
000011e7: SWAP1
000011e8: PUSH1 0x01
000011ea: PUSH1 0x01
000011ec: PUSH1 0xa0
000011ee: SHL
000011ef: SUB
000011f0: AND
000011f1: PUSH2 0x1755
000011f4: JUMP
000011f5: JUMPDEST
000011f6: POP
000011f7: PUSH2 0x121d
000011fa: JUMP
000011fb: JUMPDEST
000011fc: PUSH1 0x03
000011fe: SLOAD
000011ff: PUSH1 0x07
00001201: SLOAD
00001202: PUSH1 0x01
00001204: PUSH1 0x01
00001206: PUSH1 0xa0
00001208: SHL
00001209: SUB
0000120a: AND
0000120b: PUSH1 0x00
0000120d: SWAP1
0000120e: DUP2
0000120f: MSTORE
00001210: PUSH1 0x20
00001212: DUP2
00001213: SWAP1
00001214: MSTORE
00001215: PUSH1 0x40
00001217: SWAP1
00001218: KECCAK256
00001219: PUSH1 0x09
0000121b: ADD
0000121c: SSTORE
0000121d: JUMPDEST
0000121e: PUSH1 0x07
00001220: SLOAD
00001221: PUSH1 0x01
00001223: PUSH1 0x01
00001225: PUSH1 0xa0
00001227: SHL
00001228: SUB
00001229: AND
0000122a: PUSH1 0x00
0000122c: SWAP1
0000122d: DUP2
0000122e: MSTORE
0000122f: PUSH1 0x20
00001231: DUP2
00001232: SWAP1
00001233: MSTORE
00001234: PUSH1 0x40
00001236: SWAP1
00001237: KECCAK256
00001238: PUSH1 0x0a
0000123a: ADD
0000123b: DUP1
0000123c: SLOAD
0000123d: PUSH2 0x2710
00001240: PUSH1 0xc8
00001242: CALLVALUE
00001243: MUL
00001244: DIV
00001245: SWAP1
00001246: DUP2
00001247: ADD
00001248: SWAP1
00001249: SWAP2
0000124a: SSTORE
0000124b: PUSH1 0x05
0000124d: DUP1
0000124e: SLOAD
0000124f: PUSH1 0x02
00001251: DUP4
00001252: MUL
00001253: ADD
00001254: SWAP1
00001255: DUP2
00001256: SWAP1
00001257: SSTORE
00001258: SWAP1
00001259: PUSH8 0x0de0b6b3a7640000
00001262: MUL
00001263: DUP2
00001264: PUSH2 0x1269
00001267: JUMPI
00001268: INVALID
00001269: JUMPDEST
0000126a: PUSH1 0x03
0000126c: DUP1
0000126d: SLOAD
0000126e: SWAP3
0000126f: SWAP1
00001270: SWAP2
00001271: DIV
00001272: SWAP1
00001273: SWAP2
00001274: ADD
00001275: SWAP1
00001276: SSTORE
00001277: PUSH2 0x12ad
0000127a: JUMP
0000127b: JUMPDEST
0000127c: PUSH1 0x05
0000127e: DUP1
0000127f: SLOAD
00001280: PUSH2 0x2710
00001283: PUSH1 0xc8
00001285: CALLVALUE
00001286: MUL
00001287: DIV
00001288: SWAP1
00001289: DUP2
0000128a: ADD
0000128b: SWAP2
0000128c: DUP3
0000128d: SWAP1
0000128e: SSTORE
0000128f: PUSH8 0x0de0b6b3a7640000
00001298: MUL
00001299: DUP2
0000129a: PUSH2 0x129f
0000129d: JUMPI
0000129e: INVALID
0000129f: JUMPDEST
000012a0: PUSH1 0x03
000012a2: DUP1
000012a3: SLOAD
000012a4: SWAP3
000012a5: SWAP1
000012a6: SWAP2
000012a7: DIV
000012a8: SWAP1
000012a9: SWAP2
000012aa: ADD
000012ab: SWAP1
000012ac: SSTORE
000012ad: JUMPDEST
000012ae: CALLER
000012af: PUSH1 0x00
000012b1: DUP2
000012b2: DUP2
000012b3: MSTORE
000012b4: PUSH1 0x20
000012b6: DUP2
000012b7: DUP2
000012b8: MSTORE
000012b9: PUSH1 0x40
000012bb: DUP1
000012bc: DUP4
000012bd: KECCAK256
000012be: PUSH1 0xff
000012c0: DUP8
000012c1: AND
000012c2: DUP5
000012c3: MSTORE
000012c4: PUSH1 0x05
000012c6: DUP2
000012c7: ADD
000012c8: DUP4
000012c9: MSTORE
000012ca: DUP2
000012cb: DUP5
000012cc: KECCAK256
000012cd: DUP1
000012ce: SLOAD
000012cf: PUSH1 0x01
000012d1: PUSH1 0x01
000012d3: PUSH1 0xa0
000012d5: SHL
000012d6: SUB
000012d7: NOT
000012d8: AND
000012d9: PUSH1 0x01
000012db: PUSH1 0x01
000012dd: PUSH1 0xa0
000012df: SHL
000012e0: SUB
000012e1: DUP9
000012e2: AND
000012e3: OR
000012e4: SWAP1
000012e5: SSTORE
000012e6: PUSH1 0x03
000012e8: ADD
000012e9: SWAP1
000012ea: SWAP2
000012eb: MSTORE
000012ec: SWAP1
000012ed: KECCAK256
000012ee: DUP1
000012ef: SLOAD
000012f0: PUSH1 0xff
000012f2: NOT
000012f3: AND
000012f4: PUSH1 0x01
000012f6: OR
000012f7: SWAP1
000012f8: SSTORE
000012f9: PUSH2 0x1303
000012fc: SWAP1
000012fd: DUP3
000012fe: DUP5
000012ff: PUSH2 0x17bb
00001302: JUMP
00001303: JUMPDEST
00001304: PUSH1 0x40
00001306: DUP1
00001307: MLOAD
00001308: PUSH1 0x01
0000130a: DUP2
0000130b: MSTORE
0000130c: PUSH1 0xff
0000130e: DUP5
0000130f: AND
00001310: PUSH1 0x20
00001312: DUP3
00001313: ADD
00001314: MSTORE
00001315: DUP2
00001316: MLOAD
00001317: PUSH1 0x01
00001319: PUSH1 0x01
0000131b: PUSH1 0xa0
0000131d: SHL
0000131e: SUB
0000131f: DUP5
00001320: AND
00001321: SWAP3
00001322: CALLER
00001323: SWAP3
00001324: PUSH32 0x18a92df19fd94d6cfff209966673a5ca05a1c8e2bb68e097fce2bdc2ed811119
00001345: SWAP3
00001346: SWAP1
00001347: DUP2
00001348: SWAP1
00001349: SUB
0000134a: SWAP1
0000134b: SWAP2
0000134c: ADD
0000134d: SWAP1
0000134e: LOG3
0000134f: POP
00001350: PUSH2 0x15b3
00001353: JUMP
00001354: JUMPDEST
00001355: CALLER
00001356: PUSH1 0x00
00001358: SWAP1
00001359: DUP2
0000135a: MSTORE
0000135b: PUSH1 0x20
0000135d: DUP2
0000135e: DUP2
0000135f: MSTORE
00001360: PUSH1 0x40
00001362: DUP1
00001363: DUP4
00001364: KECCAK256
00001365: PUSH1 0xff
00001367: DUP1
00001368: DUP7
00001369: AND
0000136a: DUP6
0000136b: MSTORE
0000136c: PUSH1 0x04
0000136e: SWAP1
0000136f: SWAP2
00001370: ADD
00001371: SWAP1
00001372: SWAP3
00001373: MSTORE
00001374: SWAP1
00001375: SWAP2
00001376: KECCAK256
00001377: SLOAD
00001378: AND
00001379: ISZERO
0000137a: PUSH2 0x13c4
0000137d: JUMPI
0000137e: PUSH1 0x40
00001380: DUP1
00001381: MLOAD
00001382: PUSH3 0x461bcd
00001386: PUSH1 0xe5
00001388: SHL
00001389: DUP2
0000138a: MSTORE
0000138b: PUSH1 0x20
0000138d: PUSH1 0x04
0000138f: DUP3
00001390: ADD
00001391: MSTORE
00001392: PUSH1 0x17
00001394: PUSH1 0x24
00001396: DUP3
00001397: ADD
00001398: MSTORE
00001399: PUSH23 0x1b195d995b08185b1c9958591e481858dd1a5d985d1959
000013b1: PUSH1 0x4a
000013b3: SHL
000013b4: PUSH1 0x44
000013b6: DUP3
000013b7: ADD
000013b8: MSTORE
000013b9: SWAP1
000013ba: MLOAD
000013bb: SWAP1
000013bc: DUP2
000013bd: SWAP1
000013be: SUB
000013bf: PUSH1 0x64
000013c1: ADD
000013c2: SWAP1
000013c3: REVERT
000013c4: JUMPDEST
000013c5: CALLER
000013c6: PUSH1 0x00
000013c8: SWAP1
000013c9: DUP2
000013ca: MSTORE
000013cb: PUSH1 0x20
000013cd: DUP2
000013ce: DUP2
000013cf: MSTORE
000013d0: PUSH1 0x40
000013d2: DUP1
000013d3: DUP4
000013d4: KECCAK256
000013d5: PUSH1 0xff
000013d7: PUSH1 0x00
000013d9: NOT
000013da: DUP7
000013db: ADD
000013dc: DUP2
000013dd: AND
000013de: DUP6
000013df: MSTORE
000013e0: PUSH1 0x06
000013e2: SWAP1
000013e3: SWAP2
000013e4: ADD
000013e5: SWAP1
000013e6: SWAP3
000013e7: MSTORE
000013e8: SWAP1
000013e9: SWAP2
000013ea: KECCAK256
000013eb: PUSH1 0x03
000013ed: ADD
000013ee: SLOAD
000013ef: AND
000013f0: ISZERO
000013f1: PUSH2 0x1422
000013f4: JUMPI
000013f5: CALLER
000013f6: PUSH1 0x00
000013f8: SWAP1
000013f9: DUP2
000013fa: MSTORE
000013fb: PUSH1 0x20
000013fd: DUP2
000013fe: DUP2
000013ff: MSTORE
00001400: PUSH1 0x40
00001402: DUP1
00001403: DUP4
00001404: KECCAK256
00001405: PUSH1 0xff
00001407: PUSH1 0x00
00001409: NOT
0000140a: DUP7
0000140b: ADD
0000140c: AND
0000140d: DUP5
0000140e: MSTORE
0000140f: PUSH1 0x06
00001411: ADD
00001412: SWAP1
00001413: SWAP2
00001414: MSTORE
00001415: SWAP1
00001416: KECCAK256
00001417: PUSH1 0x03
00001419: ADD
0000141a: DUP1
0000141b: SLOAD
0000141c: PUSH1 0xff
0000141e: NOT
0000141f: AND
00001420: SWAP1
00001421: SSTORE
00001422: JUMPDEST
00001423: PUSH1 0x00
00001425: PUSH2 0x142e
00001428: CALLER
00001429: DUP4
0000142a: PUSH2 0x1625
0000142d: JUMP
0000142e: JUMPDEST
0000142f: PUSH1 0x07
00001431: SLOAD
00001432: SWAP1
00001433: SWAP2
00001434: POP
00001435: PUSH1 0x01
00001437: PUSH1 0x01
00001439: PUSH1 0xa0
0000143b: SHL
0000143c: SUB
0000143d: DUP1
0000143e: DUP4
0000143f: AND
00001440: SWAP2
00001441: AND
00001442: EQ
00001443: ISZERO
00001444: PUSH2 0x1500
00001447: JUMPI
00001448: PUSH1 0x07
0000144a: SLOAD
0000144b: PUSH1 0x00
0000144d: SWAP1
0000144e: PUSH2 0x145f
00001451: SWAP1
00001452: PUSH1 0x01
00001454: PUSH1 0x01
00001456: PUSH1 0xa0
00001458: SHL
00001459: SUB
0000145a: AND
0000145b: PUSH2 0x0c7b
0000145e: JUMP
0000145f: JUMPDEST
00001460: GT
00001461: ISZERO
00001462: PUSH2 0x1480
00001465: JUMPI
00001466: PUSH1 0x07
00001468: SLOAD
00001469: PUSH2 0x147a
0000146c: SWAP1
0000146d: PUSH1 0x01
0000146f: PUSH1 0x01
00001471: PUSH1 0xa0
00001473: SHL
00001474: SUB
00001475: AND
00001476: PUSH2 0x1755
00001479: JUMP
0000147a: JUMPDEST
0000147b: POP
0000147c: PUSH2 0x14a2
0000147f: JUMP
00001480: JUMPDEST
00001481: PUSH1 0x03
00001483: SLOAD
00001484: PUSH1 0x07
00001486: SLOAD
00001487: PUSH1 0x01
00001489: PUSH1 0x01
0000148b: PUSH1 0xa0
0000148d: SHL
0000148e: SUB
0000148f: AND
00001490: PUSH1 0x00
00001492: SWAP1
00001493: DUP2
00001494: MSTORE
00001495: PUSH1 0x20
00001497: DUP2
00001498: SWAP1
00001499: MSTORE
0000149a: PUSH1 0x40
0000149c: SWAP1
0000149d: KECCAK256
0000149e: PUSH1 0x09
000014a0: ADD
000014a1: SSTORE
000014a2: JUMPDEST
000014a3: PUSH1 0x07
000014a5: SLOAD
000014a6: PUSH1 0x01
000014a8: PUSH1 0x01
000014aa: PUSH1 0xa0
000014ac: SHL
000014ad: SUB
000014ae: AND
000014af: PUSH1 0x00
000014b1: SWAP1
000014b2: DUP2
000014b3: MSTORE
000014b4: PUSH1 0x20
000014b6: DUP2
000014b7: SWAP1
000014b8: MSTORE
000014b9: PUSH1 0x40
000014bb: SWAP1
000014bc: KECCAK256
000014bd: PUSH1 0x0a
000014bf: ADD
000014c0: DUP1
000014c1: SLOAD
000014c2: PUSH2 0x2710
000014c5: PUSH1 0xc8
000014c7: CALLVALUE
000014c8: MUL
000014c9: DIV
000014ca: SWAP1
000014cb: DUP2
000014cc: ADD
000014cd: SWAP1
000014ce: SWAP2
000014cf: SSTORE
000014d0: PUSH1 0x05
000014d2: DUP1
000014d3: SLOAD
000014d4: PUSH1 0x02
000014d6: DUP4
000014d7: MUL
000014d8: ADD
000014d9: SWAP1
000014da: DUP2
000014db: SWAP1
000014dc: SSTORE
000014dd: SWAP1
000014de: PUSH8 0x0de0b6b3a7640000
000014e7: MUL
000014e8: DUP2
000014e9: PUSH2 0x14ee
000014ec: JUMPI
000014ed: INVALID
000014ee: JUMPDEST
000014ef: PUSH1 0x03
000014f1: DUP1
000014f2: SLOAD
000014f3: SWAP3
000014f4: SWAP1
000014f5: SWAP2
000014f6: DIV
000014f7: SWAP1
000014f8: SWAP2
000014f9: ADD
000014fa: SWAP1
000014fb: SSTORE
000014fc: PUSH2 0x1532
000014ff: JUMP
00001500: JUMPDEST
00001501: PUSH1 0x05
00001503: DUP1
00001504: SLOAD
00001505: PUSH2 0x2710
00001508: PUSH1 0xc8
0000150a: CALLVALUE
0000150b: MUL
0000150c: DIV
0000150d: SWAP1
0000150e: DUP2
0000150f: ADD
00001510: SWAP2
00001511: DUP3
00001512: SWAP1
00001513: SSTORE
00001514: PUSH8 0x0de0b6b3a7640000
0000151d: MUL
0000151e: DUP2
0000151f: PUSH2 0x1524
00001522: JUMPI
00001523: INVALID
00001524: JUMPDEST
00001525: PUSH1 0x03
00001527: DUP1
00001528: SLOAD
00001529: SWAP3
0000152a: SWAP1
0000152b: SWAP2
0000152c: DIV
0000152d: SWAP1
0000152e: SWAP2
0000152f: ADD
00001530: SWAP1
00001531: SSTORE
00001532: JUMPDEST
00001533: CALLER
00001534: PUSH1 0x00
00001536: DUP2
00001537: DUP2
00001538: MSTORE
00001539: PUSH1 0x20
0000153b: DUP2
0000153c: DUP2
0000153d: MSTORE
0000153e: PUSH1 0x40
00001540: DUP1
00001541: DUP4
00001542: KECCAK256
00001543: PUSH1 0xff
00001545: DUP8
00001546: AND
00001547: DUP5
00001548: MSTORE
00001549: PUSH1 0x04
0000154b: ADD
0000154c: SWAP1
0000154d: SWAP2
0000154e: MSTORE
0000154f: SWAP1
00001550: KECCAK256
00001551: DUP1
00001552: SLOAD
00001553: PUSH1 0xff
00001555: NOT
00001556: AND
00001557: PUSH1 0x01
00001559: OR
0000155a: SWAP1
0000155b: SSTORE
0000155c: PUSH2 0x1566
0000155f: SWAP1
00001560: DUP3
00001561: DUP5
00001562: PUSH2 0x1b2c
00001565: JUMP
00001566: JUMPDEST
00001567: PUSH1 0x40
00001569: DUP1
0000156a: MLOAD
0000156b: PUSH1 0x02
0000156d: DUP2
0000156e: MSTORE
0000156f: PUSH1 0xff
00001571: DUP5
00001572: AND
00001573: PUSH1 0x20
00001575: DUP3
00001576: ADD
00001577: MSTORE
00001578: DUP2
00001579: MLOAD
0000157a: PUSH1 0x01
0000157c: PUSH1 0x01
0000157e: PUSH1 0xa0
00001580: SHL
00001581: SUB
00001582: DUP5
00001583: AND
00001584: SWAP3
00001585: CALLER
00001586: SWAP3
00001587: PUSH32 0x18a92df19fd94d6cfff209966673a5ca05a1c8e2bb68e097fce2bdc2ed811119
000015a8: SWAP3
000015a9: SWAP1
000015aa: DUP2
000015ab: SWAP1
000015ac: SUB
000015ad: SWAP1
000015ae: SWAP2
000015af: ADD
000015b0: SWAP1
000015b1: LOG3
000015b2: POP
000015b3: JUMPDEST
000015b4: POP
000015b5: POP
000015b6: JUMP
000015b7: JUMPDEST
000015b8: PUSH1 0x01
000015ba: PUSH1 0x01
000015bc: PUSH1 0xa0
000015be: SHL
000015bf: SUB
000015c0: SWAP2
000015c1: SWAP1
000015c2: SWAP2
000015c3: AND
000015c4: PUSH1 0x00
000015c6: SWAP1
000015c7: DUP2
000015c8: MSTORE
000015c9: PUSH1 0x20
000015cb: DUP2
000015cc: DUP2
000015cd: MSTORE
000015ce: PUSH1 0x40
000015d0: DUP1
000015d1: DUP4
000015d2: KECCAK256
000015d3: PUSH1 0xff
000015d5: SWAP1
000015d6: SWAP5
000015d7: AND
000015d8: DUP4
000015d9: MSTORE
000015da: PUSH1 0x07
000015dc: DUP5
000015dd: ADD
000015de: DUP3
000015df: MSTORE
000015e0: DUP1
000015e1: DUP4
000015e2: KECCAK256
000015e3: SLOAD
000015e4: PUSH1 0x08
000015e6: SWAP1
000015e7: SWAP5
000015e8: ADD
000015e9: SWAP1
000015ea: SWAP2
000015eb: MSTORE
000015ec: SWAP1
000015ed: KECCAK256
000015ee: SLOAD
000015ef: SWAP1
000015f0: SWAP2
000015f1: JUMP
000015f2: JUMPDEST
000015f3: PUSH1 0x05
000015f5: SLOAD
000015f6: PUSH1 0x01
000015f8: PUSH1 0x01
000015fa: PUSH1 0xa0
000015fc: SHL
000015fd: SUB
000015fe: DUP3
000015ff: AND
00001600: PUSH1 0x00
00001602: SWAP1
00001603: DUP2
00001604: MSTORE
00001605: PUSH1 0x20
00001607: DUP2
00001608: SWAP1
00001609: MSTORE
0000160a: PUSH1 0x40
0000160c: DUP2
0000160d: KECCAK256
0000160e: PUSH1 0x0a
00001610: ADD
00001611: SLOAD
00001612: SWAP1
00001613: SWAP2
00001614: SWAP1
00001615: PUSH1 0x64
00001617: MUL
00001618: DUP2
00001619: PUSH2 0x161e
0000161c: JUMPI
0000161d: INVALID
0000161e: JUMPDEST
0000161f: DIV
00001620: SWAP3
00001621: SWAP2
00001622: POP
00001623: POP
00001624: JUMP
00001625: JUMPDEST
00001626: PUSH1 0x00
00001628: JUMPDEST
00001629: PUSH1 0x01
0000162b: PUSH1 0x01
0000162d: PUSH1 0xa0
0000162f: SHL
00001630: SUB
00001631: DUP1
00001632: DUP5
00001633: AND
00001634: PUSH1 0x00
00001636: SWAP1
00001637: DUP2
00001638: MSTORE
00001639: PUSH1 0x20
0000163b: DUP2
0000163c: DUP2
0000163d: MSTORE
0000163e: PUSH1 0x40
00001640: DUP1
00001641: DUP4
00001642: KECCAK256
00001643: PUSH1 0x01
00001645: ADD
00001646: SLOAD
00001647: SWAP1
00001648: SWAP4
00001649: AND
0000164a: DUP3
0000164b: MSTORE
0000164c: DUP3
0000164d: DUP3
0000164e: KECCAK256
0000164f: PUSH1 0xff
00001651: DUP1
00001652: DUP8
00001653: AND
00001654: DUP5
00001655: MSTORE
00001656: PUSH1 0x04
00001658: SWAP1
00001659: SWAP2
0000165a: ADD
0000165b: SWAP1
0000165c: SWAP2
0000165d: MSTORE
0000165e: SWAP2
0000165f: SWAP1
00001660: KECCAK256
00001661: SLOAD
00001662: AND
00001663: ISZERO
00001664: PUSH2 0x168b
00001667: JUMPI
00001668: POP
00001669: PUSH1 0x01
0000166b: PUSH1 0x01
0000166d: PUSH1 0xa0
0000166f: SHL
00001670: SUB
00001671: DUP1
00001672: DUP4
00001673: AND
00001674: PUSH1 0x00
00001676: SWAP1
00001677: DUP2
00001678: MSTORE
00001679: PUSH1 0x20
0000167b: DUP2
0000167c: SWAP1
0000167d: MSTORE
0000167e: PUSH1 0x40
00001680: SWAP1
00001681: KECCAK256
00001682: PUSH1 0x01
00001684: ADD
00001685: SLOAD
00001686: AND
00001687: PUSH2 0x0bc2
0000168a: JUMP
0000168b: JUMPDEST
0000168c: PUSH1 0x01
0000168e: PUSH1 0x01
00001690: PUSH1 0xa0
00001692: SHL
00001693: SUB
00001694: SWAP3
00001695: DUP4
00001696: AND
00001697: PUSH1 0x00
00001699: SWAP1
0000169a: DUP2
0000169b: MSTORE
0000169c: PUSH1 0x20
0000169e: DUP2
0000169f: SWAP1
000016a0: MSTORE
000016a1: PUSH1 0x40
000016a3: SWAP1
000016a4: KECCAK256
000016a5: PUSH1 0x01
000016a7: ADD
000016a8: SLOAD
000016a9: SWAP1
000016aa: SWAP3
000016ab: AND
000016ac: SWAP2
000016ad: PUSH2 0x1628
000016b0: JUMP
000016b1: JUMPDEST
000016b2: PUSH1 0x08
000016b4: PUSH1 0x20
000016b6: MSTORE
000016b7: PUSH1 0x00
000016b9: SWAP1
000016ba: DUP2
000016bb: MSTORE
000016bc: PUSH1 0x40
000016be: SWAP1
000016bf: KECCAK256
000016c0: SLOAD
000016c1: DUP2
000016c2: JUMP
000016c3: JUMPDEST
000016c4: PUSH1 0x00
000016c6: JUMPDEST
000016c7: PUSH1 0x01
000016c9: PUSH1 0x01
000016cb: PUSH1 0xa0
000016cd: SHL
000016ce: SUB
000016cf: DUP1
000016d0: DUP5
000016d1: AND
000016d2: PUSH1 0x00
000016d4: SWAP1
000016d5: DUP2
000016d6: MSTORE
000016d7: PUSH1 0x20
000016d9: DUP2
000016da: DUP2
000016db: MSTORE
000016dc: PUSH1 0x40
000016de: DUP1
000016df: DUP4
000016e0: KECCAK256
000016e1: PUSH1 0x01
000016e3: ADD
000016e4: SLOAD
000016e5: SWAP1
000016e6: SWAP4
000016e7: AND
000016e8: DUP3
000016e9: MSTORE
000016ea: DUP3
000016eb: DUP3
000016ec: KECCAK256
000016ed: PUSH1 0xff
000016ef: DUP1
000016f0: DUP8
000016f1: AND
000016f2: DUP5
000016f3: MSTORE
000016f4: PUSH1 0x03
000016f6: SWAP1
000016f7: SWAP2
000016f8: ADD
000016f9: SWAP1
000016fa: SWAP2
000016fb: MSTORE
000016fc: SWAP2
000016fd: SWAP1
000016fe: KECCAK256
000016ff: SLOAD
00001700: AND
00001701: ISZERO
00001702: PUSH2 0x1729
00001705: JUMPI
00001706: POP
00001707: PUSH1 0x01
00001709: PUSH1 0x01
0000170b: PUSH1 0xa0
0000170d: SHL
0000170e: SUB
0000170f: DUP1
00001710: DUP4
00001711: AND
00001712: PUSH1 0x00
00001714: SWAP1
00001715: DUP2
00001716: MSTORE
00001717: PUSH1 0x20
00001719: DUP2
0000171a: SWAP1
0000171b: MSTORE
0000171c: PUSH1 0x40
0000171e: SWAP1
0000171f: KECCAK256
00001720: PUSH1 0x01
00001722: ADD
00001723: SLOAD
00001724: AND
00001725: PUSH2 0x0bc2
00001728: JUMP
00001729: JUMPDEST
0000172a: PUSH1 0x01
0000172c: PUSH1 0x01
0000172e: PUSH1 0xa0
00001730: SHL
00001731: SUB
00001732: SWAP3
00001733: DUP4
00001734: AND
00001735: PUSH1 0x00
00001737: SWAP1
00001738: DUP2
00001739: MSTORE
0000173a: PUSH1 0x20
0000173c: DUP2
0000173d: SWAP1
0000173e: MSTORE
0000173f: PUSH1 0x40
00001741: SWAP1
00001742: KECCAK256
00001743: PUSH1 0x01
00001745: ADD
00001746: SLOAD
00001747: SWAP1
00001748: SWAP3
00001749: AND
0000174a: SWAP2
0000174b: PUSH2 0x16c6
0000174e: JUMP
0000174f: JUMPDEST
00001750: PUSH1 0x02
00001752: SLOAD
00001753: DUP2
00001754: JUMP
00001755: JUMPDEST
00001756: PUSH1 0x00
00001758: DUP1
00001759: PUSH2 0x1761
0000175c: DUP4
0000175d: PUSH2 0x0c7b
00001760: JUMP
00001761: JUMPDEST
00001762: PUSH1 0x02
00001764: DUP1
00001765: SLOAD
00001766: DUP3
00001767: SWAP1
00001768: SUB
00001769: SWAP1
0000176a: SSTORE
0000176b: PUSH1 0x03
0000176d: SLOAD
0000176e: PUSH1 0x01
00001770: PUSH1 0x01
00001772: PUSH1 0xa0
00001774: SHL
00001775: SUB
00001776: DUP6
00001777: AND
00001778: PUSH1 0x00
0000177a: DUP2
0000177b: DUP2
0000177c: MSTORE
0000177d: PUSH1 0x20
0000177f: DUP2
00001780: SWAP1
00001781: MSTORE
00001782: PUSH1 0x40
00001784: DUP1
00001785: DUP3
00001786: KECCAK256
00001787: PUSH1 0x09
00001789: DUP2
0000178a: ADD
0000178b: SWAP5
0000178c: SWAP1
0000178d: SWAP5
0000178e: SSTORE
0000178f: PUSH1 0x0b
00001791: SWAP1
00001792: SWAP4
00001793: ADD
00001794: DUP1
00001795: SLOAD
00001796: DUP6
00001797: ADD
00001798: SWAP1
00001799: SSTORE
0000179a: SWAP2
0000179b: MLOAD
0000179c: SWAP3
0000179d: SWAP4
0000179e: POP
0000179f: SWAP2
000017a0: DUP4
000017a1: ISZERO
000017a2: PUSH2 0x08fc
000017a5: MUL
000017a6: SWAP2
000017a7: DUP5
000017a8: SWAP2
000017a9: SWAP1
000017aa: DUP2
000017ab: DUP2
000017ac: DUP2
000017ad: DUP6
000017ae: DUP9
000017af: DUP9
000017b0: CALL
000017b1: SWAP8
000017b2: SWAP7
000017b3: POP
000017b4: POP
000017b5: POP
000017b6: POP
000017b7: POP
000017b8: POP
000017b9: POP
000017ba: JUMP
000017bb: JUMPDEST
000017bc: PUSH1 0x01
000017be: PUSH1 0x01
000017c0: PUSH1 0xa0
000017c2: SHL
000017c3: SUB
000017c4: DUP3
000017c5: DUP2
000017c6: AND
000017c7: PUSH1 0x00
000017c9: SWAP1
000017ca: DUP2
000017cb: MSTORE
000017cc: PUSH1 0x20
000017ce: DUP2
000017cf: DUP2
000017d0: MSTORE
000017d1: PUSH1 0x40
000017d3: DUP1
000017d4: DUP4
000017d5: KECCAK256
000017d6: PUSH1 0xff
000017d8: DUP7
000017d9: AND
000017da: DUP1
000017db: DUP6
000017dc: MSTORE
000017dd: PUSH1 0x05
000017df: SWAP1
000017e0: SWAP2
000017e1: ADD
000017e2: DUP4
000017e3: MSTORE
000017e4: SWAP1
000017e5: DUP4
000017e6: KECCAK256
000017e7: PUSH1 0x01
000017e9: SWAP1
000017ea: DUP2
000017eb: ADD
000017ec: DUP1
000017ed: SLOAD
000017ee: SWAP2
000017ef: DUP3
000017f0: ADD
000017f1: DUP2
000017f2: SSTORE
000017f3: DUP1
000017f4: DUP6
000017f5: MSTORE
000017f6: SWAP3
000017f7: DUP5
000017f8: KECCAK256
000017f9: ADD
000017fa: DUP1
000017fb: SLOAD
000017fc: PUSH1 0x01
000017fe: PUSH1 0x01
00001800: PUSH1 0xa0
00001802: SHL
00001803: SUB
00001804: NOT
00001805: AND
00001806: SWAP5
00001807: DUP9
00001808: AND
00001809: SWAP5
0000180a: SWAP1
0000180b: SWAP5
0000180c: OR
0000180d: SWAP1
0000180e: SWAP4
0000180f: SSTORE
00001810: SWAP2
00001811: SWAP1
00001812: MSTORE
00001813: SLOAD
00001814: PUSH1 0x03
00001816: GT
00001817: ISZERO
00001818: PUSH2 0x1893
0000181b: JUMPI
0000181c: PUSH1 0x01
0000181e: PUSH1 0x01
00001820: PUSH1 0xa0
00001822: SHL
00001823: SUB
00001824: DUP1
00001825: DUP4
00001826: AND
00001827: PUSH1 0x00
00001829: DUP2
0000182a: DUP2
0000182b: MSTORE
0000182c: PUSH1 0x20
0000182e: DUP2
0000182f: DUP2
00001830: MSTORE
00001831: PUSH1 0x40
00001833: DUP1
00001834: DUP4
00001835: KECCAK256
00001836: PUSH1 0xff
00001838: DUP1
00001839: DUP9
0000183a: AND
0000183b: DUP1
0000183c: DUP7
0000183d: MSTORE
0000183e: PUSH1 0x05
00001840: SWAP1
00001841: SWAP3
00001842: ADD
00001843: DUP5
00001844: MSTORE
00001845: SWAP4
00001846: DUP3
00001847: SWAP1
00001848: KECCAK256
00001849: PUSH1 0x01
0000184b: SWAP1
0000184c: DUP2
0000184d: ADD
0000184e: SLOAD
0000184f: DUP4
00001850: MLOAD
00001851: SWAP2
00001852: DUP3
00001853: MSTORE
00001854: SWAP4
00001855: DUP2
00001856: ADD
00001857: SWAP2
00001858: SWAP1
00001859: SWAP2
0000185a: MSTORE
0000185b: SWAP2
0000185c: SWAP1
0000185d: SWAP3
0000185e: AND
0000185f: DUP2
00001860: DUP4
00001861: ADD
00001862: MSTORE
00001863: SWAP1
00001864: MLOAD
00001865: SWAP2
00001866: SWAP3
00001867: DUP7
00001868: AND
00001869: SWAP2
0000186a: PUSH1 0x00
0000186c: DUP1
0000186d: MLOAD
0000186e: PUSH1 0x20
00001870: PUSH2 0x3327
00001873: DUP4
00001874: CODECOPY
00001875: DUP2
00001876: MLOAD
00001877: SWAP2
00001878: MSTORE
00001879: SWAP2
0000187a: DUP2
0000187b: SWAP1
0000187c: SUB
0000187d: PUSH1 0x60
0000187f: ADD
00001880: SWAP1
00001881: LOG3
00001882: PUSH2 0x188e
00001885: DUP3
00001886: DUP5
00001887: PUSH1 0x01
00001889: DUP5
0000188a: PUSH2 0x24c2
0000188d: JUMP
0000188e: JUMPDEST
0000188f: PUSH2 0x1b27
00001892: JUMP
00001893: JUMPDEST
00001894: PUSH1 0x40
00001896: DUP1
00001897: MLOAD
00001898: PUSH1 0x01
0000189a: DUP2
0000189b: MSTORE
0000189c: PUSH1 0xff
0000189e: DUP4
0000189f: AND
000018a0: PUSH1 0x20
000018a2: DUP3
000018a3: ADD
000018a4: MSTORE
000018a5: PUSH1 0x03
000018a7: DUP2
000018a8: DUP4
000018a9: ADD
000018aa: MSTORE
000018ab: SWAP1
000018ac: MLOAD
000018ad: PUSH1 0x01
000018af: PUSH1 0x01
000018b1: PUSH1 0xa0
000018b3: SHL
000018b4: SUB
000018b5: DUP1
000018b6: DUP6
000018b7: AND
000018b8: SWAP3
000018b9: SWAP1
000018ba: DUP7
000018bb: AND
000018bc: SWAP2
000018bd: PUSH1 0x00
000018bf: DUP1
000018c0: MLOAD
000018c1: PUSH1 0x20
000018c3: PUSH2 0x3327
000018c6: DUP4
000018c7: CODECOPY
000018c8: DUP2
000018c9: MLOAD
000018ca: SWAP2
000018cb: MSTORE
000018cc: SWAP2
000018cd: DUP2
000018ce: SWAP1
000018cf: SUB
000018d0: PUSH1 0x60
000018d2: ADD
000018d3: SWAP1
000018d4: LOG3
000018d5: PUSH1 0x40
000018d7: DUP1
000018d8: MLOAD
000018d9: PUSH1 0x00
000018db: DUP1
000018dc: DUP3
000018dd: MSTORE
000018de: PUSH1 0x20
000018e0: DUP1
000018e1: DUP4
000018e2: ADD
000018e3: DUP1
000018e4: DUP6
000018e5: MSTORE
000018e6: PUSH1 0x01
000018e8: PUSH1 0x01
000018ea: PUSH1 0xa0
000018ec: SHL
000018ed: SUB
000018ee: DUP8
000018ef: AND
000018f0: DUP4
000018f1: MSTORE
000018f2: DUP3
000018f3: DUP3
000018f4: MSTORE
000018f5: DUP5
000018f6: DUP4
000018f7: KECCAK256
000018f8: PUSH1 0xff
000018fa: DUP8
000018fb: AND
000018fc: DUP5
000018fd: MSTORE
000018fe: PUSH1 0x05
00001900: ADD
00001901: SWAP1
00001902: SWAP2
00001903: MSTORE
00001904: SWAP3
00001905: SWAP1
00001906: KECCAK256
00001907: SWAP1
00001908: MLOAD
00001909: PUSH2 0x1918
0000190c: SWAP3
0000190d: PUSH1 0x01
0000190f: SWAP1
00001910: SWAP3
00001911: ADD
00001912: SWAP2
00001913: SWAP1
00001914: PUSH2 0x329a
00001917: JUMP
00001918: JUMPDEST
00001919: POP
0000191a: PUSH1 0x01
0000191c: PUSH1 0x01
0000191e: PUSH1 0xa0
00001920: SHL
00001921: SUB
00001922: DUP3
00001923: AND
00001924: PUSH1 0x00
00001926: SWAP1
00001927: DUP2
00001928: MSTORE
00001929: PUSH1 0x20
0000192b: DUP2
0000192c: DUP2
0000192d: MSTORE
0000192e: PUSH1 0x40
00001930: DUP1
00001931: DUP4
00001932: KECCAK256
00001933: PUSH1 0xff
00001935: PUSH1 0x01
00001937: DUP7
00001938: ADD
00001939: DUP2
0000193a: AND
0000193b: DUP6
0000193c: MSTORE
0000193d: PUSH1 0x03
0000193f: SWAP1
00001940: SWAP2
00001941: ADD
00001942: SWAP1
00001943: SWAP3
00001944: MSTORE
00001945: SWAP1
00001946: SWAP2
00001947: KECCAK256
00001948: SLOAD
00001949: AND
0000194a: ISZERO
0000194b: DUP1
0000194c: ISZERO
0000194d: PUSH2 0x195a
00001950: JUMPI
00001951: POP
00001952: PUSH1 0xff
00001954: DUP2
00001955: AND
00001956: PUSH1 0x0c
00001958: EQ
00001959: ISZERO
0000195a: JUMPDEST
0000195b: ISZERO
0000195c: PUSH2 0x1995
0000195f: JUMPI
00001960: PUSH1 0x01
00001962: PUSH1 0x01
00001964: PUSH1 0xa0
00001966: SHL
00001967: SUB
00001968: DUP3
00001969: AND
0000196a: PUSH1 0x00
0000196c: SWAP1
0000196d: DUP2
0000196e: MSTORE
0000196f: PUSH1 0x20
00001971: DUP2
00001972: DUP2
00001973: MSTORE
00001974: PUSH1 0x40
00001976: DUP1
00001977: DUP4
00001978: KECCAK256
00001979: PUSH1 0xff
0000197b: DUP6
0000197c: AND
0000197d: DUP5
0000197e: MSTORE
0000197f: PUSH1 0x05
00001981: ADD
00001982: SWAP1
00001983: SWAP2
00001984: MSTORE
00001985: SWAP1
00001986: KECCAK256
00001987: PUSH1 0x02
00001989: ADD
0000198a: DUP1
0000198b: SLOAD
0000198c: PUSH1 0xff
0000198e: NOT
0000198f: AND
00001990: PUSH1 0x01
00001992: OR
00001993: SWAP1
00001994: SSTORE
00001995: JUMPDEST
00001996: PUSH1 0x07
00001998: SLOAD
00001999: PUSH1 0x01
0000199b: PUSH1 0x01
0000199d: PUSH1 0xa0
0000199f: SHL
000019a0: SUB
000019a1: DUP4
000019a2: DUP2
000019a3: AND
000019a4: SWAP2
000019a5: AND
000019a6: EQ
000019a7: PUSH2 0x1aa0
000019aa: JUMPI
000019ab: PUSH1 0x00
000019ad: PUSH2 0x19b6
000019b0: DUP4
000019b1: DUP4
000019b2: PUSH2 0x16c3
000019b5: JUMP
000019b6: JUMPDEST
000019b7: PUSH1 0x01
000019b9: PUSH1 0x01
000019bb: PUSH1 0xa0
000019bd: SHL
000019be: SUB
000019bf: DUP5
000019c0: DUP2
000019c1: AND
000019c2: PUSH1 0x00
000019c4: SWAP1
000019c5: DUP2
000019c6: MSTORE
000019c7: PUSH1 0x20
000019c9: DUP2
000019ca: DUP2
000019cb: MSTORE
000019cc: PUSH1 0x40
000019ce: DUP1
000019cf: DUP4
000019d0: KECCAK256
000019d1: PUSH1 0xff
000019d3: DUP9
000019d4: AND
000019d5: DUP5
000019d6: MSTORE
000019d7: PUSH1 0x05
000019d9: ADD
000019da: SWAP1
000019db: SWAP2
000019dc: MSTORE
000019dd: SWAP1
000019de: KECCAK256
000019df: SLOAD
000019e0: SWAP2
000019e1: SWAP3
000019e2: POP
000019e3: DUP3
000019e4: DUP2
000019e5: AND
000019e6: SWAP2
000019e7: AND
000019e8: EQ
000019e9: PUSH2 0x1a2a
000019ec: JUMPI
000019ed: PUSH1 0x01
000019ef: PUSH1 0x01
000019f1: PUSH1 0xa0
000019f3: SHL
000019f4: SUB
000019f5: DUP4
000019f6: DUP2
000019f7: AND
000019f8: PUSH1 0x00
000019fa: SWAP1
000019fb: DUP2
000019fc: MSTORE
000019fd: PUSH1 0x20
000019ff: DUP2
00001a00: DUP2
00001a01: MSTORE
00001a02: PUSH1 0x40
00001a04: DUP1
00001a05: DUP4
00001a06: KECCAK256
00001a07: PUSH1 0xff
00001a09: DUP8
00001a0a: AND
00001a0b: DUP5
00001a0c: MSTORE
00001a0d: PUSH1 0x05
00001a0f: ADD
00001a10: SWAP1
00001a11: SWAP2
00001a12: MSTORE
00001a13: SWAP1
00001a14: KECCAK256
00001a15: DUP1
00001a16: SLOAD
00001a17: PUSH1 0x01
00001a19: PUSH1 0x01
00001a1b: PUSH1 0xa0
00001a1d: SHL
00001a1e: SUB
00001a1f: NOT
00001a20: AND
00001a21: SWAP2
00001a22: DUP4
00001a23: AND
00001a24: SWAP2
00001a25: SWAP1
00001a26: SWAP2
00001a27: OR
00001a28: SWAP1
00001a29: SSTORE
00001a2a: JUMPDEST
00001a2b: PUSH1 0x01
00001a2d: PUSH1 0x01
00001a2f: PUSH1 0xa0
00001a31: SHL
00001a32: SUB
00001a33: DUP1
00001a34: DUP5
00001a35: AND
00001a36: PUSH1 0x00
00001a38: DUP2
00001a39: DUP2
00001a3a: MSTORE
00001a3b: PUSH1 0x20
00001a3d: DUP2
00001a3e: DUP2
00001a3f: MSTORE
00001a40: PUSH1 0x40
00001a42: DUP1
00001a43: DUP4
00001a44: KECCAK256
00001a45: PUSH1 0xff
00001a47: DUP9
00001a48: AND
00001a49: DUP1
00001a4a: DUP6
00001a4b: MSTORE
00001a4c: PUSH1 0x05
00001a4e: SWAP1
00001a4f: SWAP2
00001a50: ADD
00001a51: DUP4
00001a52: MSTORE
00001a53: SWAP3
00001a54: DUP2
00001a55: SWAP1
00001a56: KECCAK256
00001a57: PUSH1 0x03
00001a59: ADD
00001a5a: DUP1
00001a5b: SLOAD
00001a5c: PUSH1 0x01
00001a5e: SWAP1
00001a5f: DUP2
00001a60: ADD
00001a61: SWAP1
00001a62: SWAP2
00001a63: SSTORE
00001a64: DUP2
00001a65: MLOAD
00001a66: SWAP1
00001a67: DUP2
00001a68: MSTORE
00001a69: SWAP2
00001a6a: DUP3
00001a6b: ADD
00001a6c: SWAP3
00001a6d: SWAP1
00001a6e: SWAP3
00001a6f: MSTORE
00001a70: DUP2
00001a71: MLOAD
00001a72: DUP9
00001a73: DUP6
00001a74: AND
00001a75: SWAP5
00001a76: DUP7
00001a77: AND
00001a78: SWAP4
00001a79: SWAP3
00001a7a: PUSH1 0x00
00001a7c: DUP1
00001a7d: MLOAD
00001a7e: PUSH1 0x20
00001a80: PUSH2 0x3347
00001a83: DUP4
00001a84: CODECOPY
00001a85: DUP2
00001a86: MLOAD
00001a87: SWAP2
00001a88: MSTORE
00001a89: SWAP3
00001a8a: DUP3
00001a8b: SWAP1
00001a8c: SUB
00001a8d: ADD
00001a8e: SWAP1
00001a8f: LOG4
00001a90: PUSH2 0x1a9a
00001a93: DUP4
00001a94: DUP3
00001a95: DUP5
00001a96: PUSH2 0x17bb
00001a99: JUMP
00001a9a: JUMPDEST
00001a9b: POP
00001a9c: PUSH2 0x1b27
00001a9f: JUMP
00001aa0: JUMPDEST
00001aa1: PUSH1 0x07
00001aa3: SLOAD
00001aa4: PUSH2 0x1ab9
00001aa7: SWAP1
00001aa8: PUSH1 0x01
00001aaa: PUSH1 0x01
00001aac: PUSH1 0xa0
00001aae: SHL
00001aaf: SUB
00001ab0: AND
00001ab1: DUP5
00001ab2: PUSH1 0x01
00001ab4: DUP5
00001ab5: PUSH2 0x24c2
00001ab8: JUMP
00001ab9: JUMPDEST
00001aba: PUSH1 0x07
00001abc: DUP1
00001abd: SLOAD
00001abe: PUSH1 0x01
00001ac0: PUSH1 0x01
00001ac2: PUSH1 0xa0
00001ac4: SHL
00001ac5: SUB
00001ac6: SWAP1
00001ac7: DUP2
00001ac8: AND
00001ac9: PUSH1 0x00
00001acb: SWAP1
00001acc: DUP2
00001acd: MSTORE
00001ace: PUSH1 0x20
00001ad0: DUP2
00001ad1: DUP2
00001ad2: MSTORE
00001ad3: PUSH1 0x40
00001ad5: DUP1
00001ad6: DUP4
00001ad7: KECCAK256
00001ad8: PUSH1 0xff
00001ada: DUP8
00001adb: AND
00001adc: DUP1
00001add: DUP6
00001ade: MSTORE
00001adf: PUSH1 0x05
00001ae1: SWAP1
00001ae2: SWAP2
00001ae3: ADD
00001ae4: DUP4
00001ae5: MSTORE
00001ae6: DUP2
00001ae7: DUP5
00001ae8: KECCAK256
00001ae9: PUSH1 0x03
00001aeb: ADD
00001aec: DUP1
00001aed: SLOAD
00001aee: PUSH1 0x01
00001af0: SWAP1
00001af1: DUP2
00001af2: ADD
00001af3: SWAP1
00001af4: SWAP2
00001af5: SSTORE
00001af6: SWAP6
00001af7: SLOAD
00001af8: DUP3
00001af9: MLOAD
00001afa: SWAP7
00001afb: DUP8
00001afc: MSTORE
00001afd: SWAP3
00001afe: DUP7
00001aff: ADD
00001b00: MSTORE
00001b01: DUP1
00001b02: MLOAD
00001b03: DUP9
00001b04: DUP6
00001b05: AND
00001b06: SWAP6
00001b07: SWAP4
00001b08: SWAP5
00001b09: SWAP3
00001b0a: SWAP1
00001b0b: SWAP3
00001b0c: AND
00001b0d: SWAP3
00001b0e: PUSH1 0x00
00001b10: DUP1
00001b11: MLOAD
00001b12: PUSH1 0x20
00001b14: PUSH2 0x3347
00001b17: DUP4
00001b18: CODECOPY
00001b19: DUP2
00001b1a: MLOAD
00001b1b: SWAP2
00001b1c: MSTORE
00001b1d: SWAP3
00001b1e: SWAP1
00001b1f: DUP2
00001b20: SWAP1
00001b21: SUB
00001b22: SWAP1
00001b23: SWAP2
00001b24: ADD
00001b25: SWAP1
00001b26: LOG4
00001b27: JUMPDEST
00001b28: POP
00001b29: POP
00001b2a: POP
00001b2b: JUMP
00001b2c: JUMPDEST
00001b2d: PUSH1 0x01
00001b2f: PUSH1 0x01
00001b31: PUSH1 0xa0
00001b33: SHL
00001b34: SUB
00001b35: DUP3
00001b36: AND
00001b37: PUSH1 0x00
00001b39: SWAP1
00001b3a: DUP2
00001b3b: MSTORE
00001b3c: PUSH1 0x20
00001b3e: DUP2
00001b3f: DUP2
00001b40: MSTORE
00001b41: PUSH1 0x40
00001b43: DUP1
00001b44: DUP4
00001b45: KECCAK256
00001b46: PUSH1 0xff
00001b48: DUP1
00001b49: DUP7
00001b4a: AND
00001b4b: DUP6
00001b4c: MSTORE
00001b4d: PUSH1 0x04
00001b4f: SWAP1
00001b50: SWAP2
00001b51: ADD
00001b52: SWAP1
00001b53: SWAP3
00001b54: MSTORE
00001b55: SWAP1
00001b56: SWAP2
00001b57: KECCAK256
00001b58: SLOAD
00001b59: AND
00001b5a: PUSH2 0x1baa
00001b5d: JUMPI
00001b5e: PUSH1 0x40
00001b60: DUP1
00001b61: MLOAD
00001b62: PUSH3 0x461bcd
00001b66: PUSH1 0xe5
00001b68: SHL
00001b69: DUP2
00001b6a: MSTORE
00001b6b: PUSH1 0x20
00001b6d: PUSH1 0x04
00001b6f: DUP3
00001b70: ADD
00001b71: MSTORE
00001b72: PUSH1 0x1f
00001b74: PUSH1 0x24
00001b76: DUP3
00001b77: ADD
00001b78: MSTORE
00001b79: PUSH32 0x3530302e205265666572726572206c6576656c20697320696e61637469766500
00001b9a: PUSH1 0x44
00001b9c: DUP3
00001b9d: ADD
00001b9e: MSTORE
00001b9f: SWAP1
00001ba0: MLOAD
00001ba1: SWAP1
00001ba2: DUP2
00001ba3: SWAP1
00001ba4: SUB
00001ba5: PUSH1 0x64
00001ba7: ADD
00001ba8: SWAP1
00001ba9: REVERT
00001baa: JUMPDEST
00001bab: PUSH1 0x01
00001bad: PUSH1 0x01
00001baf: PUSH1 0xa0
00001bb1: SHL
00001bb2: SUB
00001bb3: DUP3
00001bb4: AND
00001bb5: PUSH1 0x00
00001bb7: SWAP1
00001bb8: DUP2
00001bb9: MSTORE
00001bba: PUSH1 0x20
00001bbc: DUP2
00001bbd: DUP2
00001bbe: MSTORE
00001bbf: PUSH1 0x40
00001bc1: DUP1
00001bc2: DUP4
00001bc3: KECCAK256
00001bc4: PUSH1 0xff
00001bc6: DUP6
00001bc7: AND
00001bc8: DUP5
00001bc9: MSTORE
00001bca: PUSH1 0x06
00001bcc: ADD
00001bcd: SWAP1
00001bce: SWAP2
00001bcf: MSTORE
00001bd0: SWAP1
00001bd1: KECCAK256
00001bd2: PUSH1 0x01
00001bd4: ADD
00001bd5: SLOAD
00001bd6: PUSH1 0x02
00001bd8: GT
00001bd9: ISZERO
00001bda: PUSH2 0x210f
00001bdd: JUMPI
00001bde: PUSH1 0x01
00001be0: PUSH1 0x01
00001be2: PUSH1 0xa0
00001be4: SHL
00001be5: SUB
00001be6: DUP3
00001be7: DUP2
00001be8: AND
00001be9: PUSH1 0x00
00001beb: DUP2
00001bec: DUP2
00001bed: MSTORE
00001bee: PUSH1 0x20
00001bf0: DUP2
00001bf1: DUP2
00001bf2: MSTORE
00001bf3: PUSH1 0x40
00001bf5: DUP1
00001bf6: DUP4
00001bf7: KECCAK256
00001bf8: PUSH1 0xff
00001bfa: DUP8
00001bfb: DUP2
00001bfc: AND
00001bfd: DUP1
00001bfe: DUP7
00001bff: MSTORE
00001c00: PUSH1 0x06
00001c02: SWAP1
00001c03: SWAP3
00001c04: ADD
00001c05: DUP5
00001c06: MSTORE
00001c07: DUP3
00001c08: DUP6
00001c09: KECCAK256
00001c0a: PUSH1 0x01
00001c0c: SWAP1
00001c0d: DUP2
00001c0e: ADD
00001c0f: DUP1
00001c10: SLOAD
00001c11: SWAP2
00001c12: DUP3
00001c13: ADD
00001c14: DUP2
00001c15: SSTORE
00001c16: DUP1
00001c17: DUP8
00001c18: MSTORE
00001c19: DUP6
00001c1a: DUP8
00001c1b: KECCAK256
00001c1c: SWAP1
00001c1d: SWAP2
00001c1e: ADD
00001c1f: DUP1
00001c20: SLOAD
00001c21: PUSH1 0x01
00001c23: PUSH1 0x01
00001c25: PUSH1 0xa0
00001c27: SHL
00001c28: SUB
00001c29: NOT
00001c2a: AND
00001c2b: SWAP9
00001c2c: DUP13
00001c2d: AND
00001c2e: SWAP9
00001c2f: DUP10
00001c30: OR
00001c31: SWAP1
00001c32: SSTORE
00001c33: SWAP5
00001c34: DUP3
00001c35: SWAP1
00001c36: MSTORE
00001c37: SWAP4
00001c38: SLOAD
00001c39: DUP3
00001c3a: MLOAD
00001c3b: PUSH1 0x02
00001c3d: DUP2
00001c3e: MSTORE
00001c3f: SWAP4
00001c40: DUP5
00001c41: ADD
00001c42: SWAP2
00001c43: SWAP1
00001c44: SWAP2
00001c45: MSTORE
00001c46: SWAP1
00001c47: SWAP3
00001c48: AND
00001c49: DUP2
00001c4a: DUP4
00001c4b: ADD
00001c4c: MSTORE
00001c4d: SWAP1
00001c4e: MLOAD
00001c4f: SWAP2
00001c50: SWAP3
00001c51: SWAP2
00001c52: PUSH1 0x00
00001c54: DUP1
00001c55: MLOAD
00001c56: PUSH1 0x20
00001c58: PUSH2 0x3327
00001c5b: DUP4
00001c5c: CODECOPY
00001c5d: DUP2
00001c5e: MLOAD
00001c5f: SWAP2
00001c60: MSTORE
00001c61: SWAP2
00001c62: PUSH1 0x60
00001c64: SWAP1
00001c65: DUP3
00001c66: SWAP1
00001c67: SUB
00001c68: ADD
00001c69: SWAP1
00001c6a: LOG3
00001c6b: PUSH1 0x01
00001c6d: PUSH1 0x01
00001c6f: PUSH1 0xa0
00001c71: SHL
00001c72: SUB
00001c73: DUP4
00001c74: DUP2
00001c75: AND
00001c76: PUSH1 0x00
00001c78: SWAP1
00001c79: DUP2
00001c7a: MSTORE
00001c7b: PUSH1 0x20
00001c7d: DUP2
00001c7e: DUP2
00001c7f: MSTORE
00001c80: PUSH1 0x40
00001c82: DUP1
00001c83: DUP4
00001c84: KECCAK256
00001c85: PUSH1 0xff
00001c87: DUP7
00001c88: AND
00001c89: DUP5
00001c8a: MSTORE
00001c8b: PUSH1 0x06
00001c8d: ADD
00001c8e: SWAP1
00001c8f: SWAP2
00001c90: MSTORE
00001c91: SWAP1
00001c92: KECCAK256
00001c93: DUP1
00001c94: SLOAD
00001c95: PUSH1 0x01
00001c97: PUSH1 0x01
00001c99: PUSH1 0xa0
00001c9b: SHL
00001c9c: SUB
00001c9d: NOT
00001c9e: AND
00001c9f: DUP5
00001ca0: DUP4
00001ca1: AND
00001ca2: SWAP1
00001ca3: DUP2
00001ca4: OR
00001ca5: SWAP1
00001ca6: SWAP2
00001ca7: SSTORE
00001ca8: PUSH1 0x07
00001caa: SLOAD
00001cab: SWAP1
00001cac: SWAP2
00001cad: AND
00001cae: EQ
00001caf: ISZERO
00001cb0: PUSH2 0x1cc0
00001cb3: JUMPI
00001cb4: PUSH2 0x188e
00001cb7: DUP3
00001cb8: DUP5
00001cb9: PUSH1 0x02
00001cbb: DUP5
00001cbc: PUSH2 0x24c2
00001cbf: JUMP
00001cc0: JUMPDEST
00001cc1: PUSH1 0x01
00001cc3: PUSH1 0x01
00001cc5: PUSH1 0xa0
00001cc7: SHL
00001cc8: SUB
00001cc9: DUP3
00001cca: DUP2
00001ccb: AND
00001ccc: PUSH1 0x00
00001cce: SWAP1
00001ccf: DUP2
00001cd0: MSTORE
00001cd1: PUSH1 0x20
00001cd3: DUP2
00001cd4: DUP2
00001cd5: MSTORE
00001cd6: PUSH1 0x40
00001cd8: DUP1
00001cd9: DUP4
00001cda: KECCAK256
00001cdb: PUSH1 0xff
00001cdd: DUP7
00001cde: AND
00001cdf: DUP1
00001ce0: DUP6
00001ce1: MSTORE
00001ce2: PUSH1 0x06
00001ce4: SWAP2
00001ce5: DUP3
00001ce6: ADD
00001ce7: DUP5
00001ce8: MSTORE
00001ce9: DUP3
00001cea: DUP6
00001ceb: KECCAK256
00001cec: SLOAD
00001ced: DUP7
00001cee: AND
00001cef: DUP1
00001cf0: DUP7
00001cf1: MSTORE
00001cf2: DUP6
00001cf3: DUP6
00001cf4: MSTORE
00001cf5: DUP4
00001cf6: DUP7
00001cf7: KECCAK256
00001cf8: DUP3
00001cf9: DUP8
00001cfa: MSTORE
00001cfb: SWAP1
00001cfc: SWAP3
00001cfd: ADD
00001cfe: DUP5
00001cff: MSTORE
00001d00: SWAP2
00001d01: DUP5
00001d02: KECCAK256
00001d03: PUSH1 0x02
00001d05: DUP1
00001d06: DUP3
00001d07: ADD
00001d08: DUP1
00001d09: SLOAD
00001d0a: PUSH1 0x01
00001d0c: DUP1
00001d0d: DUP3
00001d0e: ADD
00001d0f: DUP4
00001d10: SSTORE
00001d11: SWAP2
00001d12: DUP9
00001d13: MSTORE
00001d14: SWAP6
00001d15: DUP8
00001d16: KECCAK256
00001d17: SWAP1
00001d18: SWAP6
00001d19: ADD
00001d1a: DUP1
00001d1b: SLOAD
00001d1c: PUSH1 0x01
00001d1e: PUSH1 0x01
00001d20: PUSH1 0xa0
00001d22: SHL
00001d23: SUB
00001d24: NOT
00001d25: AND
00001d26: SWAP8
00001d27: DUP12
00001d28: AND
00001d29: SWAP8
00001d2a: SWAP1
00001d2b: SWAP8
00001d2c: OR
00001d2d: SWAP1
00001d2e: SWAP7
00001d2f: SSTORE
00001d30: SWAP2
00001d31: SWAP1
00001d32: SWAP4
00001d33: MSTORE
00001d34: ADD
00001d35: SLOAD
00001d36: SWAP1
00001d37: SWAP2
00001d38: DUP2
00001d39: EQ
00001d3a: DUP1
00001d3b: ISZERO
00001d3c: PUSH2 0x1d91
00001d3f: JUMPI
00001d40: POP
00001d41: PUSH1 0x01
00001d43: PUSH1 0x01
00001d45: PUSH1 0xa0
00001d47: SHL
00001d48: SUB
00001d49: DUP3
00001d4a: DUP2
00001d4b: AND
00001d4c: PUSH1 0x00
00001d4e: SWAP1
00001d4f: DUP2
00001d50: MSTORE
00001d51: PUSH1 0x20
00001d53: DUP2
00001d54: DUP2
00001d55: MSTORE
00001d56: PUSH1 0x40
00001d58: DUP1
00001d59: DUP4
00001d5a: KECCAK256
00001d5b: PUSH1 0xff
00001d5d: DUP9
00001d5e: AND
00001d5f: DUP5
00001d60: MSTORE
00001d61: PUSH1 0x06
00001d63: ADD
00001d64: SWAP1
00001d65: SWAP2
00001d66: MSTORE
00001d67: DUP2
00001d68: KECCAK256
00001d69: PUSH1 0x01
00001d6b: ADD
00001d6c: DUP1
00001d6d: SLOAD
00001d6e: SWAP3
00001d6f: DUP8
00001d70: AND
00001d71: SWAP3
00001d72: SWAP1
00001d73: SWAP2
00001d74: SWAP1
00001d75: PUSH2 0x1d7a
00001d78: JUMPI
00001d79: INVALID
00001d7a: JUMPDEST
00001d7b: PUSH1 0x00
00001d7d: SWAP2
00001d7e: DUP3
00001d7f: MSTORE
00001d80: PUSH1 0x20
00001d82: SWAP1
00001d83: SWAP2
00001d84: KECCAK256
00001d85: ADD
00001d86: SLOAD
00001d87: PUSH1 0x01
00001d89: PUSH1 0x01
00001d8b: PUSH1 0xa0
00001d8d: SHL
00001d8e: SUB
00001d8f: AND
00001d90: EQ
00001d91: JUMPDEST
00001d92: DUP1
00001d93: ISZERO
00001d94: PUSH2 0x1ded
00001d97: JUMPI
00001d98: POP
00001d99: PUSH1 0x01
00001d9b: PUSH1 0x01
00001d9d: PUSH1 0xa0
00001d9f: SHL
00001da0: SUB
00001da1: DUP3
00001da2: DUP2
00001da3: AND
00001da4: PUSH1 0x00
00001da6: SWAP1
00001da7: DUP2
00001da8: MSTORE
00001da9: PUSH1 0x20
00001dab: DUP2
00001dac: DUP2
00001dad: MSTORE
00001dae: PUSH1 0x40
00001db0: DUP1
00001db1: DUP4
00001db2: KECCAK256
00001db3: PUSH1 0xff
00001db5: DUP9
00001db6: AND
00001db7: DUP5
00001db8: MSTORE
00001db9: PUSH1 0x06
00001dbb: ADD
00001dbc: SWAP1
00001dbd: SWAP2
00001dbe: MSTORE
00001dbf: SWAP1
00001dc0: KECCAK256
00001dc1: PUSH1 0x01
00001dc3: SWAP1
00001dc4: DUP2
00001dc5: ADD
00001dc6: DUP1
00001dc7: SLOAD
00001dc8: SWAP3
00001dc9: DUP8
00001dca: AND
00001dcb: SWAP3
00001dcc: SWAP1
00001dcd: SWAP2
00001dce: SWAP1
00001dcf: DUP2
00001dd0: LT
00001dd1: PUSH2 0x1dd6
00001dd4: JUMPI
00001dd5: INVALID
00001dd6: JUMPDEST
00001dd7: PUSH1 0x00
00001dd9: SWAP2
00001dda: DUP3
00001ddb: MSTORE
00001ddc: PUSH1 0x20
00001dde: SWAP1
00001ddf: SWAP2
00001de0: KECCAK256
00001de1: ADD
00001de2: SLOAD
00001de3: PUSH1 0x01
00001de5: PUSH1 0x01
00001de7: PUSH1 0xa0
00001de9: SHL
00001dea: SUB
00001deb: AND
00001dec: EQ
00001ded: JUMPDEST
00001dee: ISZERO
00001def: PUSH2 0x1eb2
00001df2: JUMPI
00001df3: PUSH1 0x01
00001df5: PUSH1 0x01
00001df7: PUSH1 0xa0
00001df9: SHL
00001dfa: SUB
00001dfb: DUP5
00001dfc: AND
00001dfd: PUSH1 0x00
00001dff: SWAP1
00001e00: DUP2
00001e01: MSTORE
00001e02: PUSH1 0x20
00001e04: DUP2
00001e05: DUP2
00001e06: MSTORE
00001e07: PUSH1 0x40
00001e09: DUP1
00001e0a: DUP4
00001e0b: KECCAK256
00001e0c: PUSH1 0xff
00001e0e: DUP8
00001e0f: AND
00001e10: DUP5
00001e11: MSTORE
00001e12: PUSH1 0x06
00001e14: ADD
00001e15: SWAP1
00001e16: SWAP2
00001e17: MSTORE
00001e18: SWAP1
00001e19: KECCAK256
00001e1a: PUSH1 0x01
00001e1c: SWAP1
00001e1d: DUP2
00001e1e: ADD
00001e1f: SLOAD
00001e20: EQ
00001e21: ISZERO
00001e22: PUSH2 0x1e6b
00001e25: JUMPI
00001e26: PUSH1 0x40
00001e28: DUP1
00001e29: MLOAD
00001e2a: PUSH1 0x02
00001e2c: DUP2
00001e2d: MSTORE
00001e2e: PUSH1 0xff
00001e30: DUP6
00001e31: AND
00001e32: PUSH1 0x20
00001e34: DUP3
00001e35: ADD
00001e36: MSTORE
00001e37: PUSH1 0x05
00001e39: DUP2
00001e3a: DUP4
00001e3b: ADD
00001e3c: MSTORE
00001e3d: SWAP1
00001e3e: MLOAD
00001e3f: PUSH1 0x01
00001e41: PUSH1 0x01
00001e43: PUSH1 0xa0
00001e45: SHL
00001e46: SUB
00001e47: DUP1
00001e48: DUP6
00001e49: AND
00001e4a: SWAP3
00001e4b: SWAP1
00001e4c: DUP9
00001e4d: AND
00001e4e: SWAP2
00001e4f: PUSH1 0x00
00001e51: DUP1
00001e52: MLOAD
00001e53: PUSH1 0x20
00001e55: PUSH2 0x3327
00001e58: DUP4
00001e59: CODECOPY
00001e5a: DUP2
00001e5b: MLOAD
00001e5c: SWAP2
00001e5d: MSTORE
00001e5e: SWAP2
00001e5f: DUP2
00001e60: SWAP1
00001e61: SUB
00001e62: PUSH1 0x60
00001e64: ADD
00001e65: SWAP1
00001e66: LOG3
00001e67: PUSH2 0x1ead
00001e6a: JUMP
00001e6b: JUMPDEST
00001e6c: PUSH1 0x40
00001e6e: DUP1
00001e6f: MLOAD
00001e70: PUSH1 0x02
00001e72: DUP2
00001e73: MSTORE
00001e74: PUSH1 0xff
00001e76: DUP6
00001e77: AND
00001e78: PUSH1 0x20
00001e7a: DUP3
00001e7b: ADD
00001e7c: MSTORE
00001e7d: PUSH1 0x06
00001e7f: DUP2
00001e80: DUP4
00001e81: ADD
00001e82: MSTORE
00001e83: SWAP1
00001e84: MLOAD
00001e85: PUSH1 0x01
00001e87: PUSH1 0x01
00001e89: PUSH1 0xa0
00001e8b: SHL
00001e8c: SUB
00001e8d: DUP1
00001e8e: DUP6
00001e8f: AND
00001e90: SWAP3
00001e91: SWAP1
00001e92: DUP9
00001e93: AND
00001e94: SWAP2
00001e95: PUSH1 0x00
00001e97: DUP1
00001e98: MLOAD
00001e99: PUSH1 0x20
00001e9b: PUSH2 0x3327
00001e9e: DUP4
00001e9f: CODECOPY
00001ea0: DUP2
00001ea1: MLOAD
00001ea2: SWAP2
00001ea3: MSTORE
00001ea4: SWAP2
00001ea5: DUP2
00001ea6: SWAP1
00001ea7: SUB
00001ea8: PUSH1 0x60
00001eaa: ADD
00001eab: SWAP1
00001eac: LOG3
00001ead: JUMPDEST
00001eae: PUSH2 0x20fd
00001eb1: JUMP
00001eb2: JUMPDEST
00001eb3: DUP1
00001eb4: PUSH1 0x01
00001eb6: EQ
00001eb7: DUP1
00001eb8: PUSH2 0x1ec1
00001ebb: JUMPI
00001ebc: POP
00001ebd: DUP1
00001ebe: PUSH1 0x02
00001ec0: EQ
00001ec1: JUMPDEST
00001ec2: DUP1
00001ec3: ISZERO
00001ec4: PUSH2 0x1f19
00001ec7: JUMPI
00001ec8: POP
00001ec9: PUSH1 0x01
00001ecb: PUSH1 0x01
00001ecd: PUSH1 0xa0
00001ecf: SHL
00001ed0: SUB
00001ed1: DUP3
00001ed2: DUP2
00001ed3: AND
00001ed4: PUSH1 0x00
00001ed6: SWAP1
00001ed7: DUP2
00001ed8: MSTORE
00001ed9: PUSH1 0x20
00001edb: DUP2
00001edc: DUP2
00001edd: MSTORE
00001ede: PUSH1 0x40
00001ee0: DUP1
00001ee1: DUP4
00001ee2: KECCAK256
00001ee3: PUSH1 0xff
00001ee5: DUP9
00001ee6: AND
00001ee7: DUP5
00001ee8: MSTORE
00001ee9: PUSH1 0x06
00001eeb: ADD
00001eec: SWAP1
00001eed: SWAP2
00001eee: MSTORE
00001eef: DUP2
00001ef0: KECCAK256
00001ef1: PUSH1 0x01
00001ef3: ADD
00001ef4: DUP1
00001ef5: SLOAD
00001ef6: SWAP3
00001ef7: DUP8
00001ef8: AND
00001ef9: SWAP3
00001efa: SWAP1
00001efb: SWAP2
00001efc: SWAP1
00001efd: PUSH2 0x1f02
00001f00: JUMPI
00001f01: INVALID
00001f02: JUMPDEST
00001f03: PUSH1 0x00
00001f05: SWAP2
00001f06: DUP3
00001f07: MSTORE
00001f08: PUSH1 0x20
00001f0a: SWAP1
00001f0b: SWAP2
00001f0c: KECCAK256
00001f0d: ADD
00001f0e: SLOAD
00001f0f: PUSH1 0x01
00001f11: PUSH1 0x01
00001f13: PUSH1 0xa0
00001f15: SHL
00001f16: SUB
00001f17: AND
00001f18: EQ
00001f19: JUMPDEST
00001f1a: ISZERO
00001f1b: PUSH2 0x1fdd
00001f1e: JUMPI
00001f1f: PUSH1 0x01
00001f21: PUSH1 0x01
00001f23: PUSH1 0xa0
00001f25: SHL
00001f26: SUB
00001f27: DUP5
00001f28: AND
00001f29: PUSH1 0x00
00001f2b: SWAP1
00001f2c: DUP2
00001f2d: MSTORE
00001f2e: PUSH1 0x20
00001f30: DUP2
00001f31: DUP2
00001f32: MSTORE
00001f33: PUSH1 0x40
00001f35: DUP1
00001f36: DUP4
00001f37: KECCAK256
00001f38: PUSH1 0xff
00001f3a: DUP8
00001f3b: AND
00001f3c: DUP5
00001f3d: MSTORE
00001f3e: PUSH1 0x06
00001f40: ADD
00001f41: SWAP1
00001f42: SWAP2
00001f43: MSTORE
00001f44: SWAP1
00001f45: KECCAK256
00001f46: PUSH1 0x01
00001f48: SWAP1
00001f49: DUP2
00001f4a: ADD
00001f4b: SLOAD
00001f4c: EQ
00001f4d: ISZERO
00001f4e: PUSH2 0x1f97
00001f51: JUMPI
00001f52: PUSH1 0x40
00001f54: DUP1
00001f55: MLOAD
00001f56: PUSH1 0x02
00001f58: DUP2
00001f59: MSTORE
00001f5a: PUSH1 0xff
00001f5c: DUP6
00001f5d: AND
00001f5e: PUSH1 0x20
00001f60: DUP3
00001f61: ADD
00001f62: MSTORE
00001f63: PUSH1 0x03
00001f65: DUP2
00001f66: DUP4
00001f67: ADD
00001f68: MSTORE
00001f69: SWAP1
00001f6a: MLOAD
00001f6b: PUSH1 0x01
00001f6d: PUSH1 0x01
00001f6f: PUSH1 0xa0
00001f71: SHL
00001f72: SUB
00001f73: DUP1
00001f74: DUP6
00001f75: AND
00001f76: SWAP3
00001f77: SWAP1
00001f78: DUP9
00001f79: AND
00001f7a: SWAP2
00001f7b: PUSH1 0x00
00001f7d: DUP1
00001f7e: MLOAD
00001f7f: PUSH1 0x20
00001f81: PUSH2 0x3327
00001f84: DUP4
00001f85: CODECOPY
00001f86: DUP2
00001f87: MLOAD
00001f88: SWAP2
00001f89: MSTORE
00001f8a: SWAP2
00001f8b: DUP2
00001f8c: SWAP1
00001f8d: SUB
00001f8e: PUSH1 0x60
00001f90: ADD
00001f91: SWAP1
00001f92: LOG3
00001f93: PUSH2 0x1ead
00001f96: JUMP
00001f97: JUMPDEST
00001f98: PUSH1 0x40
00001f9a: DUP1
00001f9b: MLOAD
00001f9c: PUSH1 0x02
00001f9e: DUP2
00001f9f: MSTORE
00001fa0: PUSH1 0xff
00001fa2: DUP6
00001fa3: AND
00001fa4: PUSH1 0x20
00001fa6: DUP3
00001fa7: ADD
00001fa8: MSTORE
00001fa9: PUSH1 0x04
00001fab: DUP2
00001fac: DUP4
00001fad: ADD
00001fae: MSTORE
00001faf: SWAP1
00001fb0: MLOAD
00001fb1: PUSH1 0x01
00001fb3: PUSH1 0x01
00001fb5: PUSH1 0xa0
00001fb7: SHL
00001fb8: SUB
00001fb9: DUP1
00001fba: DUP6
00001fbb: AND
00001fbc: SWAP3
00001fbd: SWAP1
00001fbe: DUP9
00001fbf: AND
00001fc0: SWAP2
00001fc1: PUSH1 0x00
00001fc3: DUP1
00001fc4: MLOAD
00001fc5: PUSH1 0x20
00001fc7: PUSH2 0x3327
00001fca: DUP4
00001fcb: CODECOPY
00001fcc: DUP2
00001fcd: MLOAD
00001fce: SWAP2
00001fcf: MSTORE
00001fd0: SWAP2
00001fd1: DUP2
00001fd2: SWAP1
00001fd3: SUB
00001fd4: PUSH1 0x60
00001fd6: ADD
00001fd7: SWAP1
00001fd8: LOG3
00001fd9: PUSH2 0x20fd
00001fdc: JUMP
00001fdd: JUMPDEST
00001fde: DUP1
00001fdf: PUSH1 0x02
00001fe1: EQ
00001fe2: DUP1
00001fe3: ISZERO
00001fe4: PUSH2 0x203d
00001fe7: JUMPI
00001fe8: POP
00001fe9: PUSH1 0x01
00001feb: PUSH1 0x01
00001fed: PUSH1 0xa0
00001fef: SHL
00001ff0: SUB
00001ff1: DUP3
00001ff2: DUP2
00001ff3: AND
00001ff4: PUSH1 0x00
00001ff6: SWAP1
00001ff7: DUP2
00001ff8: MSTORE
00001ff9: PUSH1 0x20
00001ffb: DUP2
00001ffc: DUP2
00001ffd: MSTORE
00001ffe: PUSH1 0x40
00002000: DUP1
00002001: DUP4
00002002: KECCAK256
00002003: PUSH1 0xff
00002005: DUP9
00002006: AND
00002007: DUP5
00002008: MSTORE
00002009: PUSH1 0x06
0000200b: ADD
0000200c: SWAP1
0000200d: SWAP2
0000200e: MSTORE
0000200f: SWAP1
00002010: KECCAK256
00002011: PUSH1 0x01
00002013: SWAP1
00002014: DUP2
00002015: ADD
00002016: DUP1
00002017: SLOAD
00002018: SWAP3
00002019: DUP8
0000201a: AND
0000201b: SWAP3
0000201c: SWAP1
0000201d: SWAP2
0000201e: SWAP1
0000201f: DUP2
00002020: LT
00002021: PUSH2 0x2026
00002024: JUMPI
00002025: INVALID
00002026: JUMPDEST
00002027: PUSH1 0x00
00002029: SWAP2
0000202a: DUP3
0000202b: MSTORE
0000202c: PUSH1 0x20
0000202e: SWAP1
0000202f: SWAP2
00002030: KECCAK256
00002031: ADD
00002032: SLOAD
00002033: PUSH1 0x01
00002035: PUSH1 0x01
00002037: PUSH1 0xa0
00002039: SHL
0000203a: SUB
0000203b: AND
0000203c: EQ
0000203d: JUMPDEST
0000203e: ISZERO
0000203f: PUSH2 0x20fd
00002042: JUMPI
00002043: PUSH1 0x01
00002045: PUSH1 0x01
00002047: PUSH1 0xa0
00002049: SHL
0000204a: SUB
0000204b: DUP5
0000204c: AND
0000204d: PUSH1 0x00
0000204f: SWAP1
00002050: DUP2
00002051: MSTORE
00002052: PUSH1 0x20
00002054: DUP2
00002055: DUP2
00002056: MSTORE
00002057: PUSH1 0x40
00002059: DUP1
0000205a: DUP4
0000205b: KECCAK256
0000205c: PUSH1 0xff
0000205e: DUP8
0000205f: AND
00002060: DUP5
00002061: MSTORE
00002062: PUSH1 0x06
00002064: ADD
00002065: SWAP1
00002066: SWAP2
00002067: MSTORE
00002068: SWAP1
00002069: KECCAK256
0000206a: PUSH1 0x01
0000206c: SWAP1
0000206d: DUP2
0000206e: ADD
0000206f: SLOAD
00002070: EQ
00002071: ISZERO
00002072: PUSH2 0x20bb
00002075: JUMPI
00002076: PUSH1 0x40
00002078: DUP1
00002079: MLOAD
0000207a: PUSH1 0x02
0000207c: DUP2
0000207d: MSTORE
0000207e: PUSH1 0xff
00002080: DUP6
00002081: AND
00002082: PUSH1 0x20
00002084: DUP3
00002085: ADD
00002086: MSTORE
00002087: PUSH1 0x05
00002089: DUP2
0000208a: DUP4
0000208b: ADD
0000208c: MSTORE
0000208d: SWAP1
0000208e: MLOAD
0000208f: PUSH1 0x01
00002091: PUSH1 0x01
00002093: PUSH1 0xa0
00002095: SHL
00002096: SUB
00002097: DUP1
00002098: DUP6
00002099: AND
0000209a: SWAP3
0000209b: SWAP1
0000209c: DUP9
0000209d: AND
0000209e: SWAP2
0000209f: PUSH1 0x00
000020a1: DUP1
000020a2: MLOAD
000020a3: PUSH1 0x20
000020a5: PUSH2 0x3327
000020a8: DUP4
000020a9: CODECOPY
000020aa: DUP2
000020ab: MLOAD
000020ac: SWAP2
000020ad: MSTORE
000020ae: SWAP2
000020af: DUP2
000020b0: SWAP1
000020b1: SUB
000020b2: PUSH1 0x60
000020b4: ADD
000020b5: SWAP1
000020b6: LOG3
000020b7: PUSH2 0x20fd
000020ba: JUMP
000020bb: JUMPDEST
000020bc: PUSH1 0x40
000020be: DUP1
000020bf: MLOAD
000020c0: PUSH1 0x02
000020c2: DUP2
000020c3: MSTORE
000020c4: PUSH1 0xff
000020c6: DUP6
000020c7: AND
000020c8: PUSH1 0x20
000020ca: DUP3
000020cb: ADD
000020cc: MSTORE
000020cd: PUSH1 0x06
000020cf: DUP2
000020d0: DUP4
000020d1: ADD
000020d2: MSTORE
000020d3: SWAP1
000020d4: MLOAD
000020d5: PUSH1 0x01
000020d7: PUSH1 0x01
000020d9: PUSH1 0xa0
000020db: SHL
000020dc: SUB
000020dd: DUP1
000020de: DUP6
000020df: AND
000020e0: SWAP3
000020e1: SWAP1
000020e2: DUP9
000020e3: AND
000020e4: SWAP2
000020e5: PUSH1 0x00
000020e7: DUP1
000020e8: MLOAD
000020e9: PUSH1 0x20
000020eb: PUSH2 0x3327
000020ee: DUP4
000020ef: CODECOPY
000020f0: DUP2
000020f1: MLOAD
000020f2: SWAP2
000020f3: MSTORE
000020f4: SWAP2
000020f5: DUP2
000020f6: SWAP1
000020f7: SUB
000020f8: PUSH1 0x60
000020fa: ADD
000020fb: SWAP1
000020fc: LOG3
000020fd: JUMPDEST
000020fe: PUSH2 0x2108
00002101: DUP6
00002102: DUP4
00002103: DUP6
00002104: PUSH2 0x2712
00002107: JUMP
00002108: JUMPDEST
00002109: POP
0000210a: POP
0000210b: PUSH2 0x1b27
0000210e: JUMP
0000210f: JUMPDEST
00002110: PUSH1 0x01
00002112: PUSH1 0x01
00002114: PUSH1 0xa0
00002116: SHL
00002117: SUB
00002118: DUP3
00002119: DUP2
0000211a: AND
0000211b: PUSH1 0x00
0000211d: SWAP1
0000211e: DUP2
0000211f: MSTORE
00002120: PUSH1 0x20
00002122: DUP2
00002123: DUP2
00002124: MSTORE
00002125: PUSH1 0x40
00002127: DUP1
00002128: DUP4
00002129: KECCAK256
0000212a: PUSH1 0xff
0000212c: DUP7
0000212d: AND
0000212e: DUP1
0000212f: DUP6
00002130: MSTORE
00002131: PUSH1 0x06
00002133: SWAP1
00002134: SWAP2
00002135: ADD
00002136: DUP4
00002137: MSTORE
00002138: SWAP1
00002139: DUP4
0000213a: KECCAK256
0000213b: PUSH1 0x02
0000213d: DUP2
0000213e: ADD
0000213f: DUP1
00002140: SLOAD
00002141: PUSH1 0x01
00002143: DUP2
00002144: ADD
00002145: DUP3
00002146: SSTORE
00002147: SWAP1
00002148: DUP6
00002149: MSTORE
0000214a: SWAP3
0000214b: DUP5
0000214c: KECCAK256
0000214d: SWAP1
0000214e: SWAP3
0000214f: ADD
00002150: DUP1
00002151: SLOAD
00002152: PUSH1 0x01
00002154: PUSH1 0x01
00002156: PUSH1 0xa0
00002158: SHL
00002159: SUB
0000215a: NOT
0000215b: AND
0000215c: DUP9
0000215d: DUP7
0000215e: AND
0000215f: OR
00002160: SWAP1
00002161: SSTORE
00002162: SWAP1
00002163: SWAP2
00002164: MSTORE
00002165: PUSH1 0x05
00002167: ADD
00002168: SLOAD
00002169: AND
0000216a: ISZERO
0000216b: PUSH2 0x22f3
0000216e: JUMPI
0000216f: PUSH1 0x01
00002171: PUSH1 0x01
00002173: PUSH1 0xa0
00002175: SHL
00002176: SUB
00002177: DUP3
00002178: AND
00002179: PUSH1 0x00
0000217b: SWAP1
0000217c: DUP2
0000217d: MSTORE
0000217e: PUSH1 0x20
00002180: DUP2
00002181: DUP2
00002182: MSTORE
00002183: PUSH1 0x40
00002185: DUP1
00002186: DUP4
00002187: KECCAK256
00002188: PUSH1 0xff
0000218a: DUP6
0000218b: AND
0000218c: DUP5
0000218d: MSTORE
0000218e: PUSH1 0x06
00002190: ADD
00002191: SWAP1
00002192: SWAP2
00002193: MSTORE
00002194: SWAP1
00002195: KECCAK256
00002196: PUSH1 0x01
00002198: SWAP1
00002199: DUP2
0000219a: ADD
0000219b: DUP1
0000219c: SLOAD
0000219d: SWAP1
0000219e: SWAP2
0000219f: SWAP1
000021a0: DUP2
000021a1: LT
000021a2: PUSH2 0x21a7
000021a5: JUMPI
000021a6: INVALID
000021a7: JUMPDEST
000021a8: PUSH1 0x00
000021aa: SWAP2
000021ab: DUP3
000021ac: MSTORE
000021ad: PUSH1 0x20
000021af: DUP1
000021b0: DUP4
000021b1: KECCAK256
000021b2: SWAP1
000021b3: SWAP2
000021b4: ADD
000021b5: SLOAD
000021b6: PUSH1 0x01
000021b8: PUSH1 0x01
000021ba: PUSH1 0xa0
000021bc: SHL
000021bd: SUB
000021be: DUP6
000021bf: DUP2
000021c0: AND
000021c1: DUP5
000021c2: MSTORE
000021c3: DUP4
000021c4: DUP4
000021c5: MSTORE
000021c6: PUSH1 0x40
000021c8: DUP1
000021c9: DUP6
000021ca: KECCAK256
000021cb: PUSH1 0xff
000021cd: DUP8
000021ce: AND
000021cf: DUP7
000021d0: MSTORE
000021d1: PUSH1 0x06
000021d3: ADD
000021d4: SWAP1
000021d5: SWAP4
000021d6: MSTORE
000021d7: SWAP2
000021d8: DUP4
000021d9: KECCAK256
000021da: PUSH1 0x01
000021dc: ADD
000021dd: DUP1
000021de: SLOAD
000021df: SWAP3
000021e0: SWAP1
000021e1: SWAP2
000021e2: AND
000021e3: SWAP3
000021e4: SWAP1
000021e5: SWAP2
000021e6: PUSH2 0x21eb
000021e9: JUMPI
000021ea: INVALID
000021eb: JUMPDEST
000021ec: PUSH1 0x00
000021ee: SWAP2
000021ef: DUP3
000021f0: MSTORE
000021f1: PUSH1 0x20
000021f3: SWAP1
000021f4: SWAP2
000021f5: KECCAK256
000021f6: ADD
000021f7: SLOAD
000021f8: PUSH1 0x01
000021fa: PUSH1 0x01
000021fc: PUSH1 0xa0
000021fe: SHL
000021ff: SUB
00002200: AND
00002201: EQ
00002202: DUP1
00002203: ISZERO
00002204: PUSH2 0x2260
00002207: JUMPI
00002208: POP
00002209: PUSH1 0x01
0000220b: PUSH1 0x01
0000220d: PUSH1 0xa0
0000220f: SHL
00002210: SUB
00002211: DUP3
00002212: DUP2
00002213: AND
00002214: PUSH1 0x00
00002216: SWAP1
00002217: DUP2
00002218: MSTORE
00002219: PUSH1 0x20
0000221b: DUP2
0000221c: DUP2
0000221d: MSTORE
0000221e: PUSH1 0x40
00002220: DUP1
00002221: DUP4
00002222: KECCAK256
00002223: PUSH1 0xff
00002225: DUP7
00002226: AND
00002227: DUP5
00002228: MSTORE
00002229: PUSH1 0x06
0000222b: ADD
0000222c: SWAP1
0000222d: SWAP2
0000222e: MSTORE
0000222f: DUP2
00002230: KECCAK256
00002231: PUSH1 0x05
00002233: DUP2
00002234: ADD
00002235: SLOAD
00002236: PUSH1 0x01
00002238: SWAP1
00002239: SWAP2
0000223a: ADD
0000223b: DUP1
0000223c: SLOAD
0000223d: SWAP2
0000223e: SWAP1
0000223f: SWAP4
00002240: AND
00002241: SWAP3
00002242: SWAP2
00002243: SWAP1
00002244: PUSH2 0x2249
00002247: JUMPI
00002248: INVALID
00002249: JUMPDEST
0000224a: PUSH1 0x00
0000224c: SWAP2
0000224d: DUP3
0000224e: MSTORE
0000224f: PUSH1 0x20
00002251: SWAP1
00002252: SWAP2
00002253: KECCAK256
00002254: ADD
00002255: SLOAD
00002256: PUSH1 0x01
00002258: PUSH1 0x01
0000225a: PUSH1 0xa0
0000225c: SHL
0000225d: SUB
0000225e: AND
0000225f: EQ
00002260: JUMPDEST
00002261: ISZERO
00002262: PUSH2 0x227d
00002265: JUMPI
00002266: PUSH2 0x2272
00002269: DUP4
0000226a: DUP4
0000226b: DUP4
0000226c: PUSH1 0x01
0000226e: PUSH2 0x2b5e
00002271: JUMP
00002272: JUMPDEST
00002273: PUSH2 0x188e
00002276: DUP4
00002277: DUP4
00002278: DUP4
00002279: PUSH2 0x2712
0000227c: JUMP
0000227d: JUMPDEST
0000227e: PUSH1 0x01
00002280: PUSH1 0x01
00002282: PUSH1 0xa0
00002284: SHL
00002285: SUB
00002286: DUP3
00002287: DUP2
00002288: AND
00002289: PUSH1 0x00
0000228b: SWAP1
0000228c: DUP2
0000228d: MSTORE
0000228e: PUSH1 0x20
00002290: DUP2
00002291: DUP2
00002292: MSTORE
00002293: PUSH1 0x40
00002295: DUP1
00002296: DUP4
00002297: KECCAK256
00002298: PUSH1 0xff
0000229a: DUP7
0000229b: AND
0000229c: DUP5
0000229d: MSTORE
0000229e: PUSH1 0x06
000022a0: ADD
000022a1: SWAP1
000022a2: SWAP2
000022a3: MSTORE
000022a4: DUP2
000022a5: KECCAK256
000022a6: PUSH1 0x05
000022a8: DUP2
000022a9: ADD
000022aa: SLOAD
000022ab: PUSH1 0x01
000022ad: SWAP1
000022ae: SWAP2
000022af: ADD
000022b0: DUP1
000022b1: SLOAD
000022b2: SWAP2
000022b3: SWAP1
000022b4: SWAP4
000022b5: AND
000022b6: SWAP3
000022b7: SWAP2
000022b8: SWAP1
000022b9: PUSH2 0x22be
000022bc: JUMPI
000022bd: INVALID
000022be: JUMPDEST
000022bf: PUSH1 0x00
000022c1: SWAP2
000022c2: DUP3
000022c3: MSTORE
000022c4: PUSH1 0x20
000022c6: SWAP1
000022c7: SWAP2
000022c8: KECCAK256
000022c9: ADD
000022ca: SLOAD
000022cb: PUSH1 0x01
000022cd: PUSH1 0x01
000022cf: PUSH1 0xa0
000022d1: SHL
000022d2: SUB
000022d3: AND
000022d4: EQ
000022d5: ISZERO
000022d6: PUSH2 0x22e6
000022d9: JUMPI
000022da: PUSH2 0x2272
000022dd: DUP4
000022de: DUP4
000022df: DUP4
000022e0: PUSH1 0x01
000022e2: PUSH2 0x2b5e
000022e5: JUMP
000022e6: JUMPDEST
000022e7: PUSH2 0x2272
000022ea: DUP4
000022eb: DUP4
000022ec: DUP4
000022ed: PUSH1 0x00
000022ef: PUSH2 0x2b5e
000022f2: JUMP
000022f3: JUMPDEST
000022f4: PUSH1 0x01
000022f6: PUSH1 0x01
000022f8: PUSH1 0xa0
000022fa: SHL
000022fb: SUB
000022fc: DUP3
000022fd: DUP2
000022fe: AND
000022ff: PUSH1 0x00
00002301: SWAP1
00002302: DUP2
00002303: MSTORE
00002304: PUSH1 0x20
00002306: DUP2
00002307: DUP2
00002308: MSTORE
00002309: PUSH1 0x40
0000230b: DUP1
0000230c: DUP4
0000230d: KECCAK256
0000230e: PUSH1 0xff
00002310: DUP7
00002311: AND
00002312: DUP5
00002313: MSTORE
00002314: PUSH1 0x06
00002316: ADD
00002317: SWAP1
00002318: SWAP2
00002319: MSTORE
0000231a: SWAP1
0000231b: KECCAK256
0000231c: PUSH1 0x01
0000231e: SWAP1
0000231f: DUP2
00002320: ADD
00002321: DUP1
00002322: SLOAD
00002323: SWAP3
00002324: DUP7
00002325: AND
00002326: SWAP3
00002327: SWAP1
00002328: SWAP2
00002329: SWAP1
0000232a: DUP2
0000232b: LT
0000232c: PUSH2 0x2331
0000232f: JUMPI
00002330: INVALID
00002331: JUMPDEST
00002332: PUSH1 0x00
00002334: SWAP2
00002335: DUP3
00002336: MSTORE
00002337: PUSH1 0x20
00002339: SWAP1
0000233a: SWAP2
0000233b: KECCAK256
0000233c: ADD
0000233d: SLOAD
0000233e: PUSH1 0x01
00002340: PUSH1 0x01
00002342: PUSH1 0xa0
00002344: SHL
00002345: SUB
00002346: AND
00002347: EQ
00002348: ISZERO
00002349: PUSH2 0x2359
0000234c: JUMPI
0000234d: PUSH2 0x2272
00002350: DUP4
00002351: DUP4
00002352: DUP4
00002353: PUSH1 0x00
00002355: PUSH2 0x2b5e
00002358: JUMP
00002359: JUMPDEST
0000235a: PUSH1 0x01
0000235c: PUSH1 0x01
0000235e: PUSH1 0xa0
00002360: SHL
00002361: SUB
00002362: DUP3
00002363: DUP2
00002364: AND
00002365: PUSH1 0x00
00002367: SWAP1
00002368: DUP2
00002369: MSTORE
0000236a: PUSH1 0x20
0000236c: DUP2
0000236d: DUP2
0000236e: MSTORE
0000236f: PUSH1 0x40
00002371: DUP1
00002372: DUP4
00002373: KECCAK256
00002374: PUSH1 0xff
00002376: DUP7
00002377: AND
00002378: DUP5
00002379: MSTORE
0000237a: PUSH1 0x06
0000237c: ADD
0000237d: SWAP1
0000237e: SWAP2
0000237f: MSTORE
00002380: DUP2
00002381: KECCAK256
00002382: PUSH1 0x01
00002384: ADD
00002385: DUP1
00002386: SLOAD
00002387: SWAP3
00002388: DUP7
00002389: AND
0000238a: SWAP3
0000238b: SWAP1
0000238c: SWAP2
0000238d: SWAP1
0000238e: PUSH2 0x2393
00002391: JUMPI
00002392: INVALID
00002393: JUMPDEST
00002394: PUSH1 0x00
00002396: SWAP2
00002397: DUP3
00002398: MSTORE
00002399: PUSH1 0x20
0000239b: SWAP1
0000239c: SWAP2
0000239d: KECCAK256
0000239e: ADD
0000239f: SLOAD
000023a0: PUSH1 0x01
000023a2: PUSH1 0x01
000023a4: PUSH1 0xa0
000023a6: SHL
000023a7: SUB
000023a8: AND
000023a9: EQ
000023aa: ISZERO
000023ab: PUSH2 0x23bb
000023ae: JUMPI
000023af: PUSH2 0x2272
000023b2: DUP4
000023b3: DUP4
000023b4: DUP4
000023b5: PUSH1 0x01
000023b7: PUSH2 0x2b5e
000023ba: JUMP
000023bb: JUMPDEST
000023bc: PUSH1 0x01
000023be: PUSH1 0x01
000023c0: PUSH1 0xa0
000023c2: SHL
000023c3: SUB
000023c4: DUP3
000023c5: AND
000023c6: PUSH1 0x00
000023c8: SWAP1
000023c9: DUP2
000023ca: MSTORE
000023cb: PUSH1 0x20
000023cd: DUP2
000023ce: DUP2
000023cf: MSTORE
000023d0: PUSH1 0x40
000023d2: DUP1
000023d3: DUP4
000023d4: KECCAK256
000023d5: PUSH1 0xff
000023d7: DUP6
000023d8: AND
000023d9: DUP5
000023da: MSTORE
000023db: PUSH1 0x06
000023dd: ADD
000023de: SWAP1
000023df: SWAP2
000023e0: MSTORE
000023e1: DUP2
000023e2: KECCAK256
000023e3: PUSH1 0x01
000023e5: SWAP1
000023e6: DUP2
000023e7: ADD
000023e8: DUP1
000023e9: SLOAD
000023ea: DUP4
000023eb: SWAP3
000023ec: SWAP1
000023ed: DUP2
000023ee: LT
000023ef: PUSH2 0x23f4
000023f2: JUMPI
000023f3: INVALID
000023f4: JUMPDEST
000023f5: PUSH1 0x00
000023f7: SWAP2
000023f8: DUP3
000023f9: MSTORE
000023fa: PUSH1 0x20
000023fc: DUP1
000023fd: DUP4
000023fe: KECCAK256
000023ff: SWAP1
00002400: SWAP2
00002401: ADD
00002402: SLOAD
00002403: PUSH1 0x01
00002405: PUSH1 0x01
00002407: PUSH1 0xa0
00002409: SHL
0000240a: SUB
0000240b: SWAP1
0000240c: DUP2
0000240d: AND
0000240e: DUP5
0000240f: MSTORE
00002410: DUP4
00002411: DUP3
00002412: ADD
00002413: SWAP5
00002414: SWAP1
00002415: SWAP5
00002416: MSTORE
00002417: PUSH1 0x40
00002419: SWAP3
0000241a: DUP4
0000241b: ADD
0000241c: DUP3
0000241d: KECCAK256
0000241e: PUSH1 0xff
00002420: DUP7
00002421: AND
00002422: DUP1
00002423: DUP5
00002424: MSTORE
00002425: PUSH1 0x06
00002427: SWAP2
00002428: DUP3
00002429: ADD
0000242a: DUP4
0000242b: MSTORE
0000242c: DUP5
0000242d: DUP5
0000242e: KECCAK256
0000242f: PUSH1 0x01
00002431: SWAP1
00002432: DUP2
00002433: ADD
00002434: SLOAD
00002435: SWAP7
00002436: DUP10
00002437: AND
00002438: DUP6
00002439: MSTORE
0000243a: DUP5
0000243b: DUP5
0000243c: MSTORE
0000243d: DUP6
0000243e: DUP6
0000243f: KECCAK256
00002440: SWAP2
00002441: DUP6
00002442: MSTORE
00002443: SWAP2
00002444: ADD
00002445: SWAP1
00002446: SWAP2
00002447: MSTORE
00002448: SWAP2
00002449: DUP2
0000244a: KECCAK256
0000244b: SWAP1
0000244c: SWAP2
0000244d: ADD
0000244e: DUP1
0000244f: SLOAD
00002450: DUP3
00002451: SWAP2
00002452: SWAP1
00002453: DUP3
00002454: SWAP1
00002455: PUSH2 0x245a
00002458: JUMPI
00002459: INVALID
0000245a: JUMPDEST
0000245b: PUSH1 0x00
0000245d: SWAP2
0000245e: DUP3
0000245f: MSTORE
00002460: PUSH1 0x20
00002462: DUP1
00002463: DUP4
00002464: KECCAK256
00002465: SWAP1
00002466: SWAP2
00002467: ADD
00002468: SLOAD
00002469: PUSH1 0x01
0000246b: PUSH1 0x01
0000246d: PUSH1 0xa0
0000246f: SHL
00002470: SUB
00002471: AND
00002472: DUP4
00002473: MSTORE
00002474: DUP3
00002475: DUP2
00002476: ADD
00002477: SWAP4
00002478: SWAP1
00002479: SWAP4
0000247a: MSTORE
0000247b: PUSH1 0x40
0000247d: SWAP2
0000247e: DUP3
0000247f: ADD
00002480: DUP2
00002481: KECCAK256
00002482: PUSH1 0xff
00002484: DUP7
00002485: AND
00002486: DUP3
00002487: MSTORE
00002488: PUSH1 0x06
0000248a: ADD
0000248b: SWAP1
0000248c: SWAP3
0000248d: MSTORE
0000248e: SWAP1
0000248f: KECCAK256
00002490: PUSH1 0x01
00002492: ADD
00002493: SLOAD
00002494: GT
00002495: PUSH2 0x24aa
00002498: JUMPI
00002499: PUSH2 0x24a5
0000249c: DUP4
0000249d: DUP4
0000249e: DUP4
0000249f: PUSH1 0x00
000024a1: PUSH2 0x2b5e
000024a4: JUMP
000024a5: JUMPDEST
000024a6: PUSH2 0x24b7
000024a9: JUMP
000024aa: JUMPDEST
000024ab: PUSH2 0x24b7
000024ae: DUP4
000024af: DUP4
000024b0: DUP4
000024b1: PUSH1 0x01
000024b3: PUSH2 0x2b5e
000024b6: JUMP
000024b7: JUMPDEST
000024b8: PUSH2 0x1b27
000024bb: DUP4
000024bc: DUP4
000024bd: DUP4
000024be: PUSH2 0x2712
000024c1: JUMP
000024c2: JUMPDEST
000024c3: PUSH1 0x00
000024c5: DUP1
000024c6: PUSH2 0x24d1
000024c9: DUP7
000024ca: DUP7
000024cb: DUP7
000024cc: DUP7
000024cd: PUSH2 0x30c7
000024d0: JUMP
000024d1: JUMPDEST
000024d2: PUSH1 0xff
000024d4: DUP6
000024d5: AND
000024d6: PUSH1 0x00
000024d8: SWAP1
000024d9: DUP2
000024da: MSTORE
000024db: PUSH1 0x08
000024dd: PUSH1 0x20
000024df: MSTORE
000024e0: PUSH1 0x40
000024e2: DUP1
000024e3: DUP3
000024e4: KECCAK256
000024e5: SLOAD
000024e6: SWAP1
000024e7: MLOAD
000024e8: SWAP4
000024e9: SWAP6
000024ea: POP
000024eb: SWAP2
000024ec: SWAP4
000024ed: POP
000024ee: PUSH1 0x01
000024f0: PUSH1 0x01
000024f2: PUSH1 0xa0
000024f4: SHL
000024f5: SUB
000024f6: DUP6
000024f7: AND
000024f8: SWAP3
000024f9: PUSH2 0x2710
000024fc: PUSH1 0xc8
000024fe: DUP5
000024ff: MUL
00002500: DIV
00002501: SWAP1
00002502: SWAP3
00002503: SUB
00002504: DUP1
00002505: ISZERO
00002506: PUSH2 0x08fc
00002509: MUL
0000250a: SWAP3
0000250b: SWAP1
0000250c: SWAP2
0000250d: DUP2
0000250e: DUP2
0000250f: DUP2
00002510: DUP6
00002511: DUP9
00002512: DUP9
00002513: CALL
00002514: SWAP4
00002515: POP
00002516: POP
00002517: POP
00002518: POP
00002519: PUSH2 0x2615
0000251c: JUMPI
0000251d: DUP4
0000251e: PUSH1 0xff
00002520: AND
00002521: PUSH1 0x01
00002523: EQ
00002524: ISZERO
00002525: PUSH2 0x2574
00002528: JUMPI
00002529: PUSH1 0xff
0000252b: DUP4
0000252c: AND
0000252d: PUSH1 0x00
0000252f: DUP2
00002530: DUP2
00002531: MSTORE
00002532: PUSH1 0x08
00002534: PUSH1 0x20
00002536: SWAP1
00002537: DUP2
00002538: MSTORE
00002539: PUSH1 0x40
0000253b: DUP1
0000253c: DUP4
0000253d: KECCAK256
0000253e: SLOAD
0000253f: PUSH1 0x01
00002541: PUSH1 0x01
00002543: PUSH1 0xa0
00002545: SHL
00002546: SUB
00002547: DUP8
00002548: AND
00002549: DUP5
0000254a: MSTORE
0000254b: DUP4
0000254c: DUP4
0000254d: MSTORE
0000254e: DUP2
0000254f: DUP5
00002550: KECCAK256
00002551: SWAP5
00002552: DUP5
00002553: MSTORE
00002554: PUSH1 0x07
00002556: SWAP1
00002557: SWAP5
00002558: ADD
00002559: SWAP1
0000255a: SWAP2
0000255b: MSTORE
0000255c: SWAP1
0000255d: KECCAK256
0000255e: DUP1
0000255f: SLOAD
00002560: PUSH2 0x2710
00002563: PUSH1 0xc8
00002565: DUP5
00002566: MUL
00002567: DIV
00002568: SWAP1
00002569: SWAP3
0000256a: SUB
0000256b: SWAP1
0000256c: SWAP2
0000256d: ADD
0000256e: SWAP1
0000256f: SSTORE
00002570: PUSH2 0x25ba
00002573: JUMP
00002574: JUMPDEST
00002575: PUSH1 0xff
00002577: DUP4
00002578: AND
00002579: PUSH1 0x00
0000257b: DUP2
0000257c: DUP2
0000257d: MSTORE
0000257e: PUSH1 0x08
00002580: PUSH1 0x20
00002582: DUP2
00002583: DUP2
00002584: MSTORE
00002585: PUSH1 0x40
00002587: DUP1
00002588: DUP5
00002589: KECCAK256
0000258a: SLOAD
0000258b: PUSH1 0x01
0000258d: PUSH1 0x01
0000258f: PUSH1 0xa0
00002591: SHL
00002592: SUB
00002593: DUP9
00002594: AND
00002595: DUP6
00002596: MSTORE
00002597: DUP5
00002598: DUP4
00002599: MSTORE
0000259a: DUP2
0000259b: DUP6
0000259c: KECCAK256
0000259d: SWAP6
0000259e: DUP6
0000259f: MSTORE
000025a0: SWAP5
000025a1: SWAP1
000025a2: SWAP3
000025a3: ADD
000025a4: SWAP1
000025a5: MSTORE
000025a6: SWAP1
000025a7: KECCAK256
000025a8: DUP1
000025a9: SLOAD
000025aa: PUSH2 0x2710
000025ad: PUSH1 0xc8
000025af: DUP5
000025b0: MUL
000025b1: DIV
000025b2: SWAP1
000025b3: SWAP3
000025b4: SUB
000025b5: SWAP1
000025b6: SWAP2
000025b7: ADD
000025b8: SWAP1
000025b9: SSTORE
000025ba: JUMPDEST
000025bb: PUSH1 0xff
000025bd: DUP4
000025be: AND
000025bf: PUSH1 0x00
000025c1: SWAP1
000025c2: DUP2
000025c3: MSTORE
000025c4: PUSH1 0x08
000025c6: PUSH1 0x20
000025c8: MSTORE
000025c9: PUSH1 0x40
000025cb: DUP1
000025cc: DUP3
000025cd: KECCAK256
000025ce: SLOAD
000025cf: SWAP1
000025d0: MLOAD
000025d1: PUSH1 0x01
000025d3: PUSH1 0x01
000025d5: PUSH1 0xa0
000025d7: SHL
000025d8: SUB
000025d9: DUP6
000025da: AND
000025db: SWAP3
000025dc: PUSH2 0x2710
000025df: PUSH1 0xc8
000025e1: DUP5
000025e2: MUL
000025e3: DIV
000025e4: SWAP1
000025e5: SWAP3
000025e6: SUB
000025e7: DUP1
000025e8: ISZERO
000025e9: PUSH2 0x08fc
000025ec: MUL
000025ed: SWAP3
000025ee: SWAP1
000025ef: SWAP2
000025f0: SWAP1
000025f1: DUP2
000025f2: DUP2
000025f3: DUP2
000025f4: DUP6
000025f5: DUP9
000025f6: DUP9
000025f7: CALL
000025f8: SWAP4
000025f9: POP
000025fa: POP
000025fb: POP
000025fc: POP
000025fd: ISZERO
000025fe: DUP1
000025ff: ISZERO
00002600: PUSH2 0x260d
00002603: JUMPI
00002604: RETURNDATASIZE
00002605: PUSH1 0x00
00002607: DUP1
00002608: RETURNDATACOPY
00002609: RETURNDATASIZE
0000260a: PUSH1 0x00
0000260c: REVERT
0000260d: JUMPDEST
0000260e: POP
0000260f: POP
00002610: POP
00002611: PUSH2 0x270c
00002614: JUMP
00002615: JUMPDEST
00002616: DUP4
00002617: PUSH1 0xff
00002619: AND
0000261a: PUSH1 0x01
0000261c: EQ
0000261d: ISZERO
0000261e: PUSH2 0x266d
00002621: JUMPI
00002622: PUSH1 0xff
00002624: DUP4
00002625: AND
00002626: PUSH1 0x00
00002628: DUP2
00002629: DUP2
0000262a: MSTORE
0000262b: PUSH1 0x08
0000262d: PUSH1 0x20
0000262f: SWAP1
00002630: DUP2
00002631: MSTORE
00002632: PUSH1 0x40
00002634: DUP1
00002635: DUP4
00002636: KECCAK256
00002637: SLOAD
00002638: PUSH1 0x01
0000263a: PUSH1 0x01
0000263c: PUSH1 0xa0
0000263e: SHL
0000263f: SUB
00002640: DUP8
00002641: AND
00002642: DUP5
00002643: MSTORE
00002644: DUP4
00002645: DUP4
00002646: MSTORE
00002647: DUP2
00002648: DUP5
00002649: KECCAK256
0000264a: SWAP5
0000264b: DUP5
0000264c: MSTORE
0000264d: PUSH1 0x07
0000264f: SWAP1
00002650: SWAP5
00002651: ADD
00002652: SWAP1
00002653: SWAP2
00002654: MSTORE
00002655: SWAP1
00002656: KECCAK256
00002657: DUP1
00002658: SLOAD
00002659: PUSH2 0x2710
0000265c: PUSH1 0xc8
0000265e: DUP5
0000265f: MUL
00002660: DIV
00002661: SWAP1
00002662: SWAP3
00002663: SUB
00002664: SWAP1
00002665: SWAP2
00002666: ADD
00002667: SWAP1
00002668: SSTORE
00002669: PUSH2 0x26b3
0000266c: JUMP
0000266d: JUMPDEST
0000266e: PUSH1 0xff
00002670: DUP4
00002671: AND
00002672: PUSH1 0x00
00002674: DUP2
00002675: DUP2
00002676: MSTORE
00002677: PUSH1 0x08
00002679: PUSH1 0x20
0000267b: DUP2
0000267c: DUP2
0000267d: MSTORE
0000267e: PUSH1 0x40
00002680: DUP1
00002681: DUP5
00002682: KECCAK256
00002683: SLOAD
00002684: PUSH1 0x01
00002686: PUSH1 0x01
00002688: PUSH1 0xa0
0000268a: SHL
0000268b: SUB
0000268c: DUP9
0000268d: AND
0000268e: DUP6
0000268f: MSTORE
00002690: DUP5
00002691: DUP4
00002692: MSTORE
00002693: DUP2
00002694: DUP6
00002695: KECCAK256
00002696: SWAP6
00002697: DUP6
00002698: MSTORE
00002699: SWAP5
0000269a: SWAP1
0000269b: SWAP3
0000269c: ADD
0000269d: SWAP1
0000269e: MSTORE
0000269f: SWAP1
000026a0: KECCAK256
000026a1: DUP1
000026a2: SLOAD
000026a3: PUSH2 0x2710
000026a6: PUSH1 0xc8
000026a8: DUP5
000026a9: MUL
000026aa: DIV
000026ab: SWAP1
000026ac: SWAP3
000026ad: SUB
000026ae: SWAP1
000026af: SWAP2
000026b0: ADD
000026b1: SWAP1
000026b2: SSTORE
000026b3: JUMPDEST
000026b4: DUP1
000026b5: ISZERO
000026b6: PUSH2 0x2709
000026b9: JUMPI
000026ba: PUSH1 0x40
000026bc: DUP1
000026bd: MLOAD
000026be: PUSH1 0xff
000026c0: DUP1
000026c1: DUP8
000026c2: AND
000026c3: DUP3
000026c4: MSTORE
000026c5: DUP6
000026c6: AND
000026c7: PUSH1 0x20
000026c9: DUP3
000026ca: ADD
000026cb: MSTORE
000026cc: DUP2
000026cd: MLOAD
000026ce: PUSH1 0x01
000026d0: PUSH1 0x01
000026d2: PUSH1 0xa0
000026d4: SHL
000026d5: SUB
000026d6: DUP1
000026d7: DUP7
000026d8: AND
000026d9: SWAP4
000026da: SWAP1
000026db: DUP10
000026dc: AND
000026dd: SWAP3
000026de: PUSH32 0xf0ddc65c0d411f042f723dcfa1b7d13e85a35b7b70761d447c6500411cacf328
000026ff: SWAP3
00002700: SWAP1
00002701: DUP2
00002702: SWAP1
00002703: SUB
00002704: SWAP1
00002705: SWAP2
00002706: ADD
00002707: SWAP1
00002708: LOG3
00002709: JUMPDEST
0000270a: POP
0000270b: POP
0000270c: JUMPDEST
0000270d: POP
0000270e: POP
0000270f: POP
00002710: POP
00002711: JUMP
00002712: JUMPDEST
00002713: PUSH1 0x01
00002715: PUSH1 0x01
00002717: PUSH1 0xa0
00002719: SHL
0000271a: SUB
0000271b: DUP3
0000271c: AND
0000271d: PUSH1 0x00
0000271f: SWAP1
00002720: DUP2
00002721: MSTORE
00002722: PUSH1 0x20
00002724: DUP2
00002725: DUP2
00002726: MSTORE
00002727: PUSH1 0x40
00002729: DUP1
0000272a: DUP4
0000272b: KECCAK256
0000272c: PUSH1 0xff
0000272e: DUP6
0000272f: AND
00002730: DUP5
00002731: MSTORE
00002732: PUSH1 0x06
00002734: ADD
00002735: SWAP1
00002736: SWAP2
00002737: MSTORE
00002738: SWAP1
00002739: KECCAK256
0000273a: PUSH1 0x02
0000273c: ADD
0000273d: SLOAD
0000273e: PUSH1 0x04
00002740: GT
00002741: ISZERO
00002742: PUSH2 0x2752
00002745: JUMPI
00002746: PUSH2 0x188e
00002749: DUP3
0000274a: DUP5
0000274b: PUSH1 0x02
0000274d: DUP5
0000274e: PUSH2 0x24c2
00002751: JUMP
00002752: JUMPDEST
00002753: PUSH1 0x01
00002755: PUSH1 0x01
00002757: PUSH1 0xa0
00002759: SHL
0000275a: SUB
0000275b: DUP1
0000275c: DUP4
0000275d: AND
0000275e: PUSH1 0x00
00002760: SWAP1
00002761: DUP2
00002762: MSTORE
00002763: PUSH1 0x20
00002765: DUP2
00002766: DUP2
00002767: MSTORE
00002768: PUSH1 0x40
0000276a: DUP1
0000276b: DUP4
0000276c: KECCAK256
0000276d: PUSH1 0xff
0000276f: DUP7
00002770: AND
00002771: DUP1
00002772: DUP6
00002773: MSTORE
00002774: PUSH1 0x06
00002776: SWAP2
00002777: DUP3
00002778: ADD
00002779: DUP5
0000277a: MSTORE
0000277b: DUP3
0000277c: DUP6
0000277d: KECCAK256
0000277e: SLOAD
0000277f: SWAP1
00002780: SWAP6
00002781: AND
00002782: DUP5
00002783: MSTORE
00002784: DUP4
00002785: DUP4
00002786: MSTORE
00002787: DUP2
00002788: DUP5
00002789: KECCAK256
0000278a: SWAP5
0000278b: DUP5
0000278c: MSTORE
0000278d: SWAP4
0000278e: SWAP1
0000278f: SWAP4
00002790: ADD
00002791: DUP2
00002792: MSTORE
00002793: SWAP1
00002794: DUP3
00002795: SWAP1
00002796: KECCAK256
00002797: PUSH1 0x01
00002799: ADD
0000279a: DUP1
0000279b: SLOAD
0000279c: DUP4
0000279d: MLOAD
0000279e: DUP2
0000279f: DUP5
000027a0: MUL
000027a1: DUP2
000027a2: ADD
000027a3: DUP5
000027a4: ADD
000027a5: SWAP1
000027a6: SWAP5
000027a7: MSTORE
000027a8: DUP1
000027a9: DUP5
000027aa: MSTORE
000027ab: PUSH1 0x60
000027ad: SWAP4
000027ae: SWAP3
000027af: DUP4
000027b0: ADD
000027b1: DUP3
000027b2: DUP3
000027b3: DUP1
000027b4: ISZERO
000027b5: PUSH2 0x27e7
000027b8: JUMPI
000027b9: PUSH1 0x20
000027bb: MUL
000027bc: DUP3
000027bd: ADD
000027be: SWAP2
000027bf: SWAP1
000027c0: PUSH1 0x00
000027c2: MSTORE
000027c3: PUSH1 0x20
000027c5: PUSH1 0x00
000027c7: KECCAK256
000027c8: SWAP1
000027c9: JUMPDEST
000027ca: DUP2
000027cb: SLOAD
000027cc: PUSH1 0x01
000027ce: PUSH1 0x01
000027d0: PUSH1 0xa0
000027d2: SHL
000027d3: SUB
000027d4: AND
000027d5: DUP2
000027d6: MSTORE
000027d7: PUSH1 0x01
000027d9: SWAP1
000027da: SWAP2
000027db: ADD
000027dc: SWAP1
000027dd: PUSH1 0x20
000027df: ADD
000027e0: DUP1
000027e1: DUP4
000027e2: GT
000027e3: PUSH2 0x27c9
000027e6: JUMPI
000027e7: JUMPDEST
000027e8: POP
000027e9: POP
000027ea: POP
000027eb: POP
000027ec: POP
000027ed: SWAP1
000027ee: POP
000027ef: DUP1
000027f0: MLOAD
000027f1: PUSH1 0x02
000027f3: EQ
000027f4: ISZERO
000027f5: PUSH2 0x2944
000027f8: JUMPI
000027f9: DUP3
000027fa: PUSH1 0x01
000027fc: PUSH1 0x01
000027fe: PUSH1 0xa0
00002800: SHL
00002801: SUB
00002802: AND
00002803: DUP2
00002804: PUSH1 0x00
00002806: DUP2
00002807: MLOAD
00002808: DUP2
00002809: LT
0000280a: PUSH2 0x280f
0000280d: JUMPI
0000280e: INVALID
0000280f: JUMPDEST
00002810: PUSH1 0x20
00002812: MUL
00002813: PUSH1 0x20
00002815: ADD
00002816: ADD
00002817: MLOAD
00002818: PUSH1 0x01
0000281a: PUSH1 0x01
0000281c: PUSH1 0xa0
0000281e: SHL
0000281f: SUB
00002820: AND
00002821: EQ
00002822: DUP1
00002823: PUSH2 0x2851
00002826: JUMPI
00002827: POP
00002828: DUP3
00002829: PUSH1 0x01
0000282b: PUSH1 0x01
0000282d: PUSH1 0xa0
0000282f: SHL
00002830: SUB
00002831: AND
00002832: DUP2
00002833: PUSH1 0x01
00002835: DUP2
00002836: MLOAD
00002837: DUP2
00002838: LT
00002839: PUSH2 0x283e
0000283c: JUMPI
0000283d: INVALID
0000283e: JUMPDEST
0000283f: PUSH1 0x20
00002841: MUL
00002842: PUSH1 0x20
00002844: ADD
00002845: ADD
00002846: MLOAD
00002847: PUSH1 0x01
00002849: PUSH1 0x01
0000284b: PUSH1 0xa0
0000284d: SHL
0000284e: SUB
0000284f: AND
00002850: EQ
00002851: JUMPDEST
00002852: ISZERO
00002853: PUSH2 0x28b3
00002856: JUMPI
00002857: PUSH1 0x01
00002859: PUSH1 0x01
0000285b: PUSH1 0xa0
0000285d: SHL
0000285e: SUB
0000285f: DUP1
00002860: DUP5
00002861: AND
00002862: PUSH1 0x00
00002864: DUP2
00002865: DUP2
00002866: MSTORE
00002867: PUSH1 0x20
00002869: DUP2
0000286a: DUP2
0000286b: MSTORE
0000286c: PUSH1 0x40
0000286e: DUP1
0000286f: DUP4
00002870: KECCAK256
00002871: PUSH1 0xff
00002873: DUP9
00002874: AND
00002875: DUP1
00002876: DUP6
00002877: MSTORE
00002878: PUSH1 0x06
0000287a: SWAP2
0000287b: DUP3
0000287c: ADD
0000287d: DUP5
0000287e: MSTORE
0000287f: DUP3
00002880: DUP6
00002881: KECCAK256
00002882: SLOAD
00002883: SWAP1
00002884: SWAP7
00002885: AND
00002886: DUP5
00002887: MSTORE
00002888: DUP4
00002889: DUP4
0000288a: MSTORE
0000288b: DUP2
0000288c: DUP5
0000288d: KECCAK256
0000288e: SWAP6
0000288f: DUP5
00002890: MSTORE
00002891: SWAP5
00002892: SWAP1
00002893: SWAP5
00002894: ADD
00002895: SWAP1
00002896: MSTORE
00002897: SWAP2
00002898: SWAP1
00002899: SWAP2
0000289a: KECCAK256
0000289b: PUSH1 0x05
0000289d: ADD
0000289e: DUP1
0000289f: SLOAD
000028a0: PUSH1 0x01
000028a2: PUSH1 0x01
000028a4: PUSH1 0xa0
000028a6: SHL
000028a7: SUB
000028a8: NOT
000028a9: AND
000028aa: SWAP1
000028ab: SWAP2
000028ac: OR
000028ad: SWAP1
000028ae: SSTORE
000028af: PUSH2 0x2944
000028b2: JUMP
000028b3: JUMPDEST
000028b4: DUP1
000028b5: MLOAD
000028b6: PUSH1 0x01
000028b8: EQ
000028b9: ISZERO
000028ba: PUSH2 0x2944
000028bd: JUMPI
000028be: DUP3
000028bf: PUSH1 0x01
000028c1: PUSH1 0x01
000028c3: PUSH1 0xa0
000028c5: SHL
000028c6: SUB
000028c7: AND
000028c8: DUP2
000028c9: PUSH1 0x00
000028cb: DUP2
000028cc: MLOAD
000028cd: DUP2
000028ce: LT
000028cf: PUSH2 0x28d4
000028d2: JUMPI
000028d3: INVALID
000028d4: JUMPDEST
000028d5: PUSH1 0x20
000028d7: MUL
000028d8: PUSH1 0x20
000028da: ADD
000028db: ADD
000028dc: MLOAD
000028dd: PUSH1 0x01
000028df: PUSH1 0x01
000028e1: PUSH1 0xa0
000028e3: SHL
000028e4: SUB
000028e5: AND
000028e6: EQ
000028e7: ISZERO
000028e8: PUSH2 0x2944
000028eb: JUMPI
000028ec: PUSH1 0x01
000028ee: PUSH1 0x01
000028f0: PUSH1 0xa0
000028f2: SHL
000028f3: SUB
000028f4: DUP1
000028f5: DUP5
000028f6: AND
000028f7: PUSH1 0x00
000028f9: DUP2
000028fa: DUP2
000028fb: MSTORE
000028fc: PUSH1 0x20
000028fe: DUP2
000028ff: DUP2
00002900: MSTORE
00002901: PUSH1 0x40
00002903: DUP1
00002904: DUP4
00002905: KECCAK256
00002906: PUSH1 0xff
00002908: DUP9
00002909: AND
0000290a: DUP1
0000290b: DUP6
0000290c: MSTORE
0000290d: PUSH1 0x06
0000290f: SWAP2
00002910: DUP3
00002911: ADD
00002912: DUP5
00002913: MSTORE
00002914: DUP3
00002915: DUP6
00002916: KECCAK256
00002917: SLOAD
00002918: SWAP1
00002919: SWAP7
0000291a: AND
0000291b: DUP5
0000291c: MSTORE
0000291d: DUP4
0000291e: DUP4
0000291f: MSTORE
00002920: DUP2
00002921: DUP5
00002922: KECCAK256
00002923: SWAP6
00002924: DUP5
00002925: MSTORE
00002926: SWAP5
00002927: SWAP1
00002928: SWAP5
00002929: ADD
0000292a: SWAP1
0000292b: MSTORE
0000292c: SWAP2
0000292d: SWAP1
0000292e: SWAP2
0000292f: KECCAK256
00002930: PUSH1 0x05
00002932: ADD
00002933: DUP1
00002934: SLOAD
00002935: PUSH1 0x01
00002937: PUSH1 0x01
00002939: PUSH1 0xa0
0000293b: SHL
0000293c: SUB
0000293d: NOT
0000293e: AND
0000293f: SWAP1
00002940: SWAP2
00002941: OR
00002942: SWAP1
00002943: SSTORE
00002944: JUMPDEST
00002945: PUSH1 0x40
00002947: DUP1
00002948: MLOAD
00002949: PUSH1 0x00
0000294b: DUP1
0000294c: DUP3
0000294d: MSTORE
0000294e: PUSH1 0x20
00002950: DUP1
00002951: DUP4
00002952: ADD
00002953: DUP1
00002954: DUP6
00002955: MSTORE
00002956: PUSH1 0x01
00002958: PUSH1 0x01
0000295a: PUSH1 0xa0
0000295c: SHL
0000295d: SUB
0000295e: DUP9
0000295f: AND
00002960: DUP4
00002961: MSTORE
00002962: DUP3
00002963: DUP3
00002964: MSTORE
00002965: DUP5
00002966: DUP4
00002967: KECCAK256
00002968: PUSH1 0xff
0000296a: DUP9
0000296b: AND
0000296c: DUP5
0000296d: MSTORE
0000296e: PUSH1 0x06
00002970: ADD
00002971: SWAP1
00002972: SWAP2
00002973: MSTORE
00002974: SWAP3
00002975: SWAP1
00002976: KECCAK256
00002977: SWAP1
00002978: MLOAD
00002979: PUSH2 0x2988
0000297c: SWAP3
0000297d: PUSH1 0x01
0000297f: SWAP1
00002980: SWAP3
00002981: ADD
00002982: SWAP2
00002983: SWAP1
00002984: PUSH2 0x329a
00002987: JUMP
00002988: JUMPDEST
00002989: POP
0000298a: PUSH1 0x40
0000298c: DUP1
0000298d: MLOAD
0000298e: PUSH1 0x00
00002990: DUP1
00002991: DUP3
00002992: MSTORE
00002993: PUSH1 0x20
00002995: DUP1
00002996: DUP4
00002997: ADD
00002998: DUP1
00002999: DUP6
0000299a: MSTORE
0000299b: PUSH1 0x01
0000299d: PUSH1 0x01
0000299f: PUSH1 0xa0
000029a1: SHL
000029a2: SUB
000029a3: DUP9
000029a4: AND
000029a5: DUP4
000029a6: MSTORE
000029a7: DUP3
000029a8: DUP3
000029a9: MSTORE
000029aa: DUP5
000029ab: DUP4
000029ac: KECCAK256
000029ad: PUSH1 0xff
000029af: DUP9
000029b0: AND
000029b1: DUP5
000029b2: MSTORE
000029b3: PUSH1 0x06
000029b5: ADD
000029b6: SWAP1
000029b7: SWAP2
000029b8: MSTORE
000029b9: SWAP3
000029ba: SWAP1
000029bb: KECCAK256
000029bc: SWAP1
000029bd: MLOAD
000029be: PUSH2 0x29cd
000029c1: SWAP3
000029c2: PUSH1 0x02
000029c4: SWAP1
000029c5: SWAP3
000029c6: ADD
000029c7: SWAP2
000029c8: SWAP1
000029c9: PUSH2 0x329a
000029cc: JUMP
000029cd: JUMPDEST
000029ce: POP
000029cf: PUSH1 0x01
000029d1: PUSH1 0x01
000029d3: PUSH1 0xa0
000029d5: SHL
000029d6: SUB
000029d7: DUP4
000029d8: AND
000029d9: PUSH1 0x00
000029db: SWAP1
000029dc: DUP2
000029dd: MSTORE
000029de: PUSH1 0x20
000029e0: DUP2
000029e1: DUP2
000029e2: MSTORE
000029e3: PUSH1 0x40
000029e5: DUP1
000029e6: DUP4
000029e7: KECCAK256
000029e8: PUSH1 0xff
000029ea: DUP1
000029eb: DUP8
000029ec: AND
000029ed: DUP6
000029ee: MSTORE
000029ef: PUSH1 0x06
000029f1: DUP3
000029f2: ADD
000029f3: DUP5
000029f4: MSTORE
000029f5: DUP3
000029f6: DUP6
000029f7: KECCAK256
000029f8: PUSH1 0x05
000029fa: ADD
000029fb: DUP1
000029fc: SLOAD
000029fd: PUSH1 0x01
000029ff: PUSH1 0x01
00002a01: PUSH1 0xa0
00002a03: SHL
00002a04: SUB
00002a05: NOT
00002a06: AND
00002a07: SWAP1
00002a08: SSTORE
00002a09: PUSH1 0x01
00002a0b: DUP8
00002a0c: ADD
00002a0d: DUP2
00002a0e: AND
00002a0f: DUP6
00002a10: MSTORE
00002a11: PUSH1 0x04
00002a13: SWAP1
00002a14: SWAP2
00002a15: ADD
00002a16: SWAP1
00002a17: SWAP3
00002a18: MSTORE
00002a19: SWAP1
00002a1a: SWAP2
00002a1b: KECCAK256
00002a1c: SLOAD
00002a1d: AND
00002a1e: ISZERO
00002a1f: DUP1
00002a20: ISZERO
00002a21: PUSH2 0x2a2e
00002a24: JUMPI
00002a25: POP
00002a26: PUSH1 0xff
00002a28: DUP3
00002a29: AND
00002a2a: PUSH1 0x0c
00002a2c: EQ
00002a2d: ISZERO
00002a2e: JUMPDEST
00002a2f: ISZERO
00002a30: PUSH2 0x2a69
00002a33: JUMPI
00002a34: PUSH1 0x01
00002a36: PUSH1 0x01
00002a38: PUSH1 0xa0
00002a3a: SHL
00002a3b: SUB
00002a3c: DUP4
00002a3d: AND
00002a3e: PUSH1 0x00
00002a40: SWAP1
00002a41: DUP2
00002a42: MSTORE
00002a43: PUSH1 0x20
00002a45: DUP2
00002a46: DUP2
00002a47: MSTORE
00002a48: PUSH1 0x40
00002a4a: DUP1
00002a4b: DUP4
00002a4c: KECCAK256
00002a4d: PUSH1 0xff
00002a4f: DUP7
00002a50: AND
00002a51: DUP5
00002a52: MSTORE
00002a53: PUSH1 0x06
00002a55: ADD
00002a56: SWAP1
00002a57: SWAP2
00002a58: MSTORE
00002a59: SWAP1
00002a5a: KECCAK256
00002a5b: PUSH1 0x03
00002a5d: ADD
00002a5e: DUP1
00002a5f: SLOAD
00002a60: PUSH1 0xff
00002a62: NOT
00002a63: AND
00002a64: PUSH1 0x01
00002a66: OR
00002a67: SWAP1
00002a68: SSTORE
00002a69: JUMPDEST
00002a6a: PUSH1 0x01
00002a6c: PUSH1 0x01
00002a6e: PUSH1 0xa0
00002a70: SHL
00002a71: SUB
00002a72: DUP1
00002a73: DUP5
00002a74: AND
00002a75: PUSH1 0x00
00002a77: DUP2
00002a78: DUP2
00002a79: MSTORE
00002a7a: PUSH1 0x20
00002a7c: DUP2
00002a7d: DUP2
00002a7e: MSTORE
00002a7f: PUSH1 0x40
00002a81: DUP1
00002a82: DUP4
00002a83: KECCAK256
00002a84: PUSH1 0xff
00002a86: DUP9
00002a87: AND
00002a88: DUP5
00002a89: MSTORE
00002a8a: PUSH1 0x06
00002a8c: ADD
00002a8d: SWAP1
00002a8e: SWAP2
00002a8f: MSTORE
00002a90: SWAP1
00002a91: KECCAK256
00002a92: PUSH1 0x04
00002a94: ADD
00002a95: DUP1
00002a96: SLOAD
00002a97: PUSH1 0x01
00002a99: ADD
00002a9a: SWAP1
00002a9b: SSTORE
00002a9c: PUSH1 0x07
00002a9e: SLOAD
00002a9f: SWAP1
00002aa0: SWAP2
00002aa1: AND
00002aa2: EQ
00002aa3: PUSH2 0x2b04
00002aa6: JUMPI
00002aa7: PUSH1 0x00
00002aa9: PUSH2 0x2ab2
00002aac: DUP5
00002aad: DUP5
00002aae: PUSH2 0x1625
00002ab1: JUMP
00002ab2: JUMPDEST
00002ab3: PUSH1 0x40
00002ab5: DUP1
00002ab6: MLOAD
00002ab7: PUSH1 0x02
00002ab9: DUP2
00002aba: MSTORE
00002abb: PUSH1 0xff
00002abd: DUP7
00002abe: AND
00002abf: PUSH1 0x20
00002ac1: DUP3
00002ac2: ADD
00002ac3: MSTORE
00002ac4: DUP2
00002ac5: MLOAD
00002ac6: SWAP3
00002ac7: SWAP4
00002ac8: POP
00002ac9: PUSH1 0x01
00002acb: PUSH1 0x01
00002acd: PUSH1 0xa0
00002acf: SHL
00002ad0: SUB
00002ad1: DUP1
00002ad2: DUP10
00002ad3: AND
00002ad4: SWAP4
00002ad5: DUP2
00002ad6: DUP7
00002ad7: AND
00002ad8: SWAP4
00002ad9: SWAP2
00002ada: DUP10
00002adb: AND
00002adc: SWAP3
00002add: PUSH1 0x00
00002adf: DUP1
00002ae0: MLOAD
00002ae1: PUSH1 0x20
00002ae3: PUSH2 0x3347
00002ae6: DUP4
00002ae7: CODECOPY
00002ae8: DUP2
00002ae9: MLOAD
00002aea: SWAP2
00002aeb: MSTORE
00002aec: SWAP3
00002aed: SWAP1
00002aee: DUP3
00002aef: SWAP1
00002af0: SUB
00002af1: ADD
00002af2: SWAP1
00002af3: LOG4
00002af4: PUSH2 0x2afe
00002af7: DUP5
00002af8: DUP3
00002af9: DUP6
00002afa: PUSH2 0x1b2c
00002afd: JUMP
00002afe: JUMPDEST
00002aff: POP
00002b00: PUSH2 0x270c
00002b03: JUMP
00002b04: JUMPDEST
00002b05: PUSH1 0x07
00002b07: SLOAD
00002b08: PUSH1 0x40
00002b0a: DUP1
00002b0b: MLOAD
00002b0c: PUSH1 0x02
00002b0e: DUP2
00002b0f: MSTORE
00002b10: PUSH1 0xff
00002b12: DUP6
00002b13: AND
00002b14: PUSH1 0x20
00002b16: DUP3
00002b17: ADD
00002b18: MSTORE
00002b19: DUP2
00002b1a: MLOAD
00002b1b: PUSH1 0x01
00002b1d: PUSH1 0x01
00002b1f: PUSH1 0xa0
00002b21: SHL
00002b22: SUB
00002b23: DUP1
00002b24: DUP10
00002b25: AND
00002b26: SWAP5
00002b27: PUSH1 0x00
00002b29: SWAP5
00002b2a: SWAP2
00002b2b: AND
00002b2c: SWAP3
00002b2d: PUSH1 0x00
00002b2f: DUP1
00002b30: MLOAD
00002b31: PUSH1 0x20
00002b33: PUSH2 0x3347
00002b36: DUP4
00002b37: CODECOPY
00002b38: DUP2
00002b39: MLOAD
00002b3a: SWAP2
00002b3b: MSTORE
00002b3c: SWAP3
00002b3d: SWAP1
00002b3e: DUP2
00002b3f: SWAP1
00002b40: SUB
00002b41: SWAP1
00002b42: SWAP2
00002b43: ADD
00002b44: SWAP1
00002b45: LOG4
00002b46: PUSH1 0x07
00002b48: SLOAD
00002b49: PUSH2 0x270c
00002b4c: SWAP1
00002b4d: PUSH1 0x01
00002b4f: PUSH1 0x01
00002b51: PUSH1 0xa0
00002b53: SHL
00002b54: SUB
00002b55: AND
00002b56: DUP6
00002b57: PUSH1 0x02
00002b59: DUP6
00002b5a: PUSH2 0x24c2
00002b5d: JUMP
00002b5e: JUMPDEST
00002b5f: DUP1
00002b60: PUSH2 0x2e0e
00002b63: JUMPI
00002b64: PUSH1 0x01
00002b66: PUSH1 0x01
00002b68: PUSH1 0xa0
00002b6a: SHL
00002b6b: SUB
00002b6c: DUP4
00002b6d: AND
00002b6e: PUSH1 0x00
00002b70: SWAP1
00002b71: DUP2
00002b72: MSTORE
00002b73: PUSH1 0x20
00002b75: DUP2
00002b76: DUP2
00002b77: MSTORE
00002b78: PUSH1 0x40
00002b7a: DUP1
00002b7b: DUP4
00002b7c: KECCAK256
00002b7d: PUSH1 0xff
00002b7f: DUP7
00002b80: AND
00002b81: DUP5
00002b82: MSTORE
00002b83: PUSH1 0x06
00002b85: ADD
00002b86: SWAP1
00002b87: SWAP2
00002b88: MSTORE
00002b89: DUP2
00002b8a: KECCAK256
00002b8b: PUSH1 0x01
00002b8d: ADD
00002b8e: DUP1
00002b8f: SLOAD
00002b90: DUP3
00002b91: SWAP2
00002b92: SWAP1
00002b93: DUP3
00002b94: SWAP1
00002b95: PUSH2 0x2b9a
00002b98: JUMPI
00002b99: INVALID
00002b9a: JUMPDEST
00002b9b: PUSH1 0x00
00002b9d: SWAP2
00002b9e: DUP3
00002b9f: MSTORE
00002ba0: PUSH1 0x20
00002ba2: DUP1
00002ba3: DUP4
00002ba4: KECCAK256
00002ba5: SWAP2
00002ba6: SWAP1
00002ba7: SWAP2
00002ba8: ADD
00002ba9: SLOAD
00002baa: PUSH1 0x01
00002bac: PUSH1 0x01
00002bae: PUSH1 0xa0
00002bb0: SHL
00002bb1: SUB
00002bb2: SWAP1
00002bb3: DUP2
00002bb4: AND
00002bb5: DUP5
00002bb6: MSTORE
00002bb7: DUP4
00002bb8: DUP3
00002bb9: ADD
00002bba: SWAP5
00002bbb: SWAP1
00002bbc: SWAP5
00002bbd: MSTORE
00002bbe: PUSH1 0x40
00002bc0: SWAP3
00002bc1: DUP4
00002bc2: ADD
00002bc3: DUP3
00002bc4: KECCAK256
00002bc5: PUSH1 0xff
00002bc7: DUP8
00002bc8: AND
00002bc9: DUP1
00002bca: DUP5
00002bcb: MSTORE
00002bcc: PUSH1 0x06
00002bce: SWAP2
00002bcf: DUP3
00002bd0: ADD
00002bd1: DUP4
00002bd2: MSTORE
00002bd3: DUP5
00002bd4: DUP5
00002bd5: KECCAK256
00002bd6: PUSH1 0x01
00002bd8: SWAP1
00002bd9: DUP2
00002bda: ADD
00002bdb: DUP1
00002bdc: SLOAD
00002bdd: DUP1
00002bde: DUP4
00002bdf: ADD
00002be0: DUP3
00002be1: SSTORE
00002be2: SWAP1
00002be3: DUP7
00002be4: MSTORE
00002be5: DUP5
00002be6: DUP7
00002be7: KECCAK256
00002be8: ADD
00002be9: DUP1
00002bea: SLOAD
00002beb: PUSH1 0x01
00002bed: PUSH1 0x01
00002bef: PUSH1 0xa0
00002bf1: SHL
00002bf2: SUB
00002bf3: NOT
00002bf4: AND
00002bf5: DUP13
00002bf6: DUP10
00002bf7: AND
00002bf8: OR
00002bf9: SWAP1
00002bfa: SSTORE
00002bfb: SWAP6
00002bfc: DUP10
00002bfd: AND
00002bfe: DUP5
00002bff: MSTORE
00002c00: DUP4
00002c01: DUP4
00002c02: MSTORE
00002c03: DUP5
00002c04: DUP5
00002c05: KECCAK256
00002c06: SWAP1
00002c07: DUP5
00002c08: MSTORE
00002c09: ADD
00002c0a: SWAP1
00002c0b: MSTORE
00002c0c: SWAP1
00002c0d: DUP2
00002c0e: KECCAK256
00002c0f: SWAP1
00002c10: SWAP2
00002c11: ADD
00002c12: DUP1
00002c13: SLOAD
00002c14: SWAP1
00002c15: SWAP2
00002c16: SWAP1
00002c17: PUSH2 0x2c1c
00002c1a: JUMPI
00002c1b: INVALID
00002c1c: JUMPDEST
00002c1d: PUSH1 0x00
00002c1f: SWAP2
00002c20: DUP3
00002c21: MSTORE
00002c22: PUSH1 0x20
00002c24: DUP1
00002c25: DUP4
00002c26: KECCAK256
00002c27: SWAP1
00002c28: SWAP2
00002c29: ADD
00002c2a: SLOAD
00002c2b: PUSH1 0x01
00002c2d: PUSH1 0x01
00002c2f: PUSH1 0xa0
00002c31: SHL
00002c32: SUB
00002c33: DUP7
00002c34: DUP2
00002c35: AND
00002c36: DUP5
00002c37: MSTORE
00002c38: DUP4
00002c39: DUP4
00002c3a: MSTORE
00002c3b: PUSH1 0x40
00002c3d: DUP1
00002c3e: DUP6
00002c3f: KECCAK256
00002c40: PUSH1 0xff
00002c42: DUP9
00002c43: AND
00002c44: DUP7
00002c45: MSTORE
00002c46: PUSH1 0x06
00002c48: ADD
00002c49: SWAP1
00002c4a: SWAP4
00002c4b: MSTORE
00002c4c: SWAP2
00002c4d: DUP4
00002c4e: KECCAK256
00002c4f: PUSH1 0x01
00002c51: ADD
00002c52: DUP1
00002c53: SLOAD
00002c54: SWAP2
00002c55: DUP4
00002c56: AND
00002c57: SWAP4
00002c58: SWAP3
00002c59: DUP9
00002c5a: AND
00002c5b: SWAP3
00002c5c: PUSH1 0x00
00002c5e: DUP1
00002c5f: MLOAD
00002c60: PUSH1 0x20
00002c62: PUSH2 0x3327
00002c65: DUP4
00002c66: CODECOPY
00002c67: DUP2
00002c68: MLOAD
00002c69: SWAP2
00002c6a: MSTORE
00002c6b: SWAP3
00002c6c: PUSH1 0x02
00002c6e: SWAP3
00002c6f: DUP9
00002c70: SWAP3
00002c71: SWAP2
00002c72: DUP3
00002c73: SWAP2
00002c74: SWAP1
00002c75: DUP3
00002c76: SWAP1
00002c77: PUSH2 0x2c7c
00002c7a: JUMPI
00002c7b: INVALID
00002c7c: JUMPDEST
00002c7d: PUSH1 0x00
00002c7f: SWAP2
00002c80: DUP3
00002c81: MSTORE
00002c82: PUSH1 0x20
00002c84: DUP1
00002c85: DUP4
00002c86: KECCAK256
00002c87: SWAP1
00002c88: SWAP2
00002c89: ADD
00002c8a: SLOAD
00002c8b: PUSH1 0x01
00002c8d: PUSH1 0x01
00002c8f: PUSH1 0xa0
00002c91: SHL
00002c92: SUB
00002c93: AND
00002c94: DUP4
00002c95: MSTORE
00002c96: DUP3
00002c97: DUP2
00002c98: ADD
00002c99: SWAP4
00002c9a: SWAP1
00002c9b: SWAP4
00002c9c: MSTORE
00002c9d: PUSH1 0x40
00002c9f: SWAP2
00002ca0: DUP3
00002ca1: ADD
00002ca2: DUP2
00002ca3: KECCAK256
00002ca4: PUSH1 0xff
00002ca6: DUP1
00002ca7: DUP13
00002ca8: AND
00002ca9: DUP4
00002caa: MSTORE
00002cab: PUSH1 0x06
00002cad: SWAP1
00002cae: SWAP2
00002caf: ADD
00002cb0: DUP5
00002cb1: MSTORE
00002cb2: SWAP1
00002cb3: DUP3
00002cb4: SWAP1
00002cb5: KECCAK256
00002cb6: PUSH1 0x01
00002cb8: ADD
00002cb9: SLOAD
00002cba: DUP3
00002cbb: MLOAD
00002cbc: SWAP6
00002cbd: DUP3
00002cbe: AND
00002cbf: DUP7
00002cc0: MSTORE
00002cc1: SWAP4
00002cc2: DUP2
00002cc3: AND
00002cc4: SWAP3
00002cc5: DUP6
00002cc6: ADD
00002cc7: SWAP3
00002cc8: SWAP1
00002cc9: SWAP3
00002cca: MSTORE
00002ccb: SWAP2
00002ccc: AND
00002ccd: DUP3
00002cce: DUP3
00002ccf: ADD
00002cd0: MSTORE
00002cd1: MLOAD
00002cd2: SWAP1
00002cd3: DUP2
00002cd4: SWAP1
00002cd5: SUB
00002cd6: PUSH1 0x60
00002cd8: ADD
00002cd9: SWAP1
00002cda: LOG3
00002cdb: PUSH1 0x01
00002cdd: PUSH1 0x01
00002cdf: PUSH1 0xa0
00002ce1: SHL
00002ce2: SUB
00002ce3: DUP1
00002ce4: DUP5
00002ce5: AND
00002ce6: PUSH1 0x00
00002ce8: DUP2
00002ce9: DUP2
00002cea: MSTORE
00002ceb: PUSH1 0x20
00002ced: DUP2
00002cee: DUP2
00002cef: MSTORE
00002cf0: PUSH1 0x40
00002cf2: DUP1
00002cf3: DUP4
00002cf4: KECCAK256
00002cf5: PUSH1 0xff
00002cf7: DUP9
00002cf8: AND
00002cf9: DUP5
00002cfa: MSTORE
00002cfb: PUSH1 0x06
00002cfd: ADD
00002cfe: SWAP1
00002cff: SWAP2
00002d00: MSTORE
00002d01: DUP2
00002d02: KECCAK256
00002d03: PUSH1 0x01
00002d05: ADD
00002d06: DUP1
00002d07: SLOAD
00002d08: SWAP3
00002d09: SWAP4
00002d0a: DUP9
00002d0b: AND
00002d0c: SWAP3
00002d0d: PUSH1 0x00
00002d0f: DUP1
00002d10: MLOAD
00002d11: PUSH1 0x20
00002d13: PUSH2 0x3327
00002d16: DUP4
00002d17: CODECOPY
00002d18: DUP2
00002d19: MLOAD
00002d1a: SWAP2
00002d1b: MSTORE
00002d1c: SWAP3
00002d1d: PUSH1 0x02
00002d1f: SWAP3
00002d20: DUP9
00002d21: SWAP3
00002d22: DUP3
00002d23: SWAP2
00002d24: SWAP1
00002d25: DUP3
00002d26: SWAP1
00002d27: PUSH2 0x2d2c
00002d2a: JUMPI
00002d2b: INVALID
00002d2c: JUMPDEST
00002d2d: PUSH1 0x00
00002d2f: SWAP2
00002d30: DUP3
00002d31: MSTORE
00002d32: PUSH1 0x20
00002d34: DUP1
00002d35: DUP4
00002d36: KECCAK256
00002d37: SWAP1
00002d38: SWAP2
00002d39: ADD
00002d3a: SLOAD
00002d3b: PUSH1 0x01
00002d3d: PUSH1 0x01
00002d3f: PUSH1 0xa0
00002d41: SHL
00002d42: SUB
00002d43: AND
00002d44: DUP4
00002d45: MSTORE
00002d46: DUP3
00002d47: DUP2
00002d48: ADD
00002d49: SWAP4
00002d4a: SWAP1
00002d4b: SWAP4
00002d4c: MSTORE
00002d4d: PUSH1 0x40
00002d4f: SWAP2
00002d50: DUP3
00002d51: ADD
00002d52: DUP2
00002d53: KECCAK256
00002d54: PUSH1 0xff
00002d56: DUP1
00002d57: DUP13
00002d58: AND
00002d59: DUP4
00002d5a: MSTORE
00002d5b: PUSH1 0x06
00002d5d: SWAP1
00002d5e: SWAP2
00002d5f: ADD
00002d60: DUP5
00002d61: MSTORE
00002d62: SWAP1
00002d63: DUP3
00002d64: SWAP1
00002d65: KECCAK256
00002d66: PUSH1 0x01
00002d68: ADD
00002d69: SLOAD
00002d6a: DUP3
00002d6b: MLOAD
00002d6c: SWAP6
00002d6d: DUP3
00002d6e: AND
00002d6f: DUP7
00002d70: MSTORE
00002d71: SWAP4
00002d72: DUP2
00002d73: AND
00002d74: SWAP3
00002d75: DUP6
00002d76: ADD
00002d77: SWAP3
00002d78: SWAP1
00002d79: SWAP3
00002d7a: MSTORE
00002d7b: PUSH1 0x02
00002d7d: SWAP1
00002d7e: SWAP3
00002d7f: ADD
00002d80: AND
00002d81: DUP3
00002d82: DUP3
00002d83: ADD
00002d84: MSTORE
00002d85: MLOAD
00002d86: SWAP1
00002d87: DUP2
00002d88: SWAP1
00002d89: SUB
00002d8a: PUSH1 0x60
00002d8c: ADD
00002d8d: SWAP1
00002d8e: LOG3
00002d8f: PUSH1 0x01
00002d91: PUSH1 0x01
00002d93: PUSH1 0xa0
00002d95: SHL
00002d96: SUB
00002d97: DUP4
00002d98: AND
00002d99: PUSH1 0x00
00002d9b: SWAP1
00002d9c: DUP2
00002d9d: MSTORE
00002d9e: PUSH1 0x20
00002da0: DUP2
00002da1: DUP2
00002da2: MSTORE
00002da3: PUSH1 0x40
00002da5: DUP1
00002da6: DUP4
00002da7: KECCAK256
00002da8: PUSH1 0xff
00002daa: DUP7
00002dab: AND
00002dac: DUP5
00002dad: MSTORE
00002dae: PUSH1 0x06
00002db0: ADD
00002db1: SWAP1
00002db2: SWAP2
00002db3: MSTORE
00002db4: DUP2
00002db5: KECCAK256
00002db6: PUSH1 0x01
00002db8: ADD
00002db9: DUP1
00002dba: SLOAD
00002dbb: SWAP1
00002dbc: SWAP2
00002dbd: SWAP1
00002dbe: PUSH2 0x2dc3
00002dc1: JUMPI
00002dc2: INVALID
00002dc3: JUMPDEST
00002dc4: PUSH1 0x00
00002dc6: SWAP2
00002dc7: DUP3
00002dc8: MSTORE
00002dc9: PUSH1 0x20
00002dcb: DUP1
00002dcc: DUP4
00002dcd: KECCAK256
00002dce: SWAP1
00002dcf: SWAP2
00002dd0: ADD
00002dd1: SLOAD
00002dd2: PUSH1 0x01
00002dd4: PUSH1 0x01
00002dd6: PUSH1 0xa0
00002dd8: SHL
00002dd9: SUB
00002dda: DUP8
00002ddb: DUP2
00002ddc: AND
00002ddd: DUP5
00002dde: MSTORE
00002ddf: DUP4
00002de0: DUP4
00002de1: MSTORE
00002de2: PUSH1 0x40
00002de4: DUP1
00002de5: DUP6
00002de6: KECCAK256
00002de7: PUSH1 0xff
00002de9: DUP9
00002dea: AND
00002deb: DUP7
00002dec: MSTORE
00002ded: PUSH1 0x06
00002def: ADD
00002df0: SWAP1
00002df1: SWAP4
00002df2: MSTORE
00002df3: SWAP2
00002df4: SWAP1
00002df5: SWAP3
00002df6: KECCAK256
00002df7: DUP1
00002df8: SLOAD
00002df9: PUSH1 0x01
00002dfb: PUSH1 0x01
00002dfd: PUSH1 0xa0
00002dff: SHL
00002e00: SUB
00002e01: NOT
00002e02: AND
00002e03: SWAP2
00002e04: SWAP1
00002e05: SWAP3
00002e06: AND
00002e07: OR
00002e08: SWAP1
00002e09: SSTORE
00002e0a: PUSH2 0x270c
00002e0d: JUMP
00002e0e: JUMPDEST
00002e0f: PUSH1 0x01
00002e11: PUSH1 0x01
00002e13: PUSH1 0xa0
00002e15: SHL
00002e16: SUB
00002e17: DUP4
00002e18: AND
00002e19: PUSH1 0x00
00002e1b: SWAP1
00002e1c: DUP2
00002e1d: MSTORE
00002e1e: PUSH1 0x20
00002e20: DUP2
00002e21: DUP2
00002e22: MSTORE
00002e23: PUSH1 0x40
00002e25: DUP1
00002e26: DUP4
00002e27: KECCAK256
00002e28: PUSH1 0xff
00002e2a: DUP7
00002e2b: AND
00002e2c: DUP5
00002e2d: MSTORE
00002e2e: PUSH1 0x06
00002e30: ADD
00002e31: SWAP1
00002e32: SWAP2
00002e33: MSTORE
00002e34: DUP2
00002e35: KECCAK256
00002e36: PUSH1 0x01
00002e38: SWAP1
00002e39: DUP2
00002e3a: ADD
00002e3b: DUP1
00002e3c: SLOAD
00002e3d: DUP4
00002e3e: SWAP3
00002e3f: SWAP1
00002e40: DUP2
00002e41: LT
00002e42: PUSH2 0x2e47
00002e45: JUMPI
00002e46: INVALID
00002e47: JUMPDEST
00002e48: PUSH1 0x00
00002e4a: SWAP2
00002e4b: DUP3
00002e4c: MSTORE
00002e4d: PUSH1 0x20
00002e4f: DUP1
00002e50: DUP4
00002e51: KECCAK256
00002e52: SWAP2
00002e53: SWAP1
00002e54: SWAP2
00002e55: ADD
00002e56: SLOAD
00002e57: PUSH1 0x01
00002e59: PUSH1 0x01
00002e5b: PUSH1 0xa0
00002e5d: SHL
00002e5e: SUB
00002e5f: SWAP1
00002e60: DUP2
00002e61: AND
00002e62: DUP5
00002e63: MSTORE
00002e64: DUP4
00002e65: DUP3
00002e66: ADD
00002e67: SWAP5
00002e68: SWAP1
00002e69: SWAP5
00002e6a: MSTORE
00002e6b: PUSH1 0x40
00002e6d: SWAP3
00002e6e: DUP4
00002e6f: ADD
00002e70: DUP3
00002e71: KECCAK256
00002e72: PUSH1 0xff
00002e74: DUP8
00002e75: AND
00002e76: DUP1
00002e77: DUP5
00002e78: MSTORE
00002e79: PUSH1 0x06
00002e7b: SWAP2
00002e7c: DUP3
00002e7d: ADD
00002e7e: DUP4
00002e7f: MSTORE
00002e80: DUP5
00002e81: DUP5
00002e82: KECCAK256
00002e83: PUSH1 0x01
00002e85: SWAP1
00002e86: DUP2
00002e87: ADD
00002e88: DUP1
00002e89: SLOAD
00002e8a: DUP1
00002e8b: DUP4
00002e8c: ADD
00002e8d: DUP3
00002e8e: SSTORE
00002e8f: SWAP1
00002e90: DUP7
00002e91: MSTORE
00002e92: DUP5
00002e93: DUP7
00002e94: KECCAK256
00002e95: ADD
00002e96: DUP1
00002e97: SLOAD
00002e98: PUSH1 0x01
00002e9a: PUSH1 0x01
00002e9c: PUSH1 0xa0
00002e9e: SHL
00002e9f: SUB
00002ea0: NOT
00002ea1: AND
00002ea2: DUP13
00002ea3: DUP10
00002ea4: AND
00002ea5: OR
00002ea6: SWAP1
00002ea7: SSTORE
00002ea8: SWAP6
00002ea9: DUP10
00002eaa: AND
00002eab: DUP5
00002eac: MSTORE
00002ead: DUP4
00002eae: DUP4
00002eaf: MSTORE
00002eb0: DUP5
00002eb1: DUP5
00002eb2: KECCAK256
00002eb3: SWAP1
00002eb4: DUP5
00002eb5: MSTORE
00002eb6: ADD
00002eb7: SWAP1
00002eb8: MSTORE
00002eb9: KECCAK256
00002eba: DUP2
00002ebb: ADD
00002ebc: DUP1
00002ebd: SLOAD
00002ebe: SWAP1
00002ebf: SWAP2
00002ec0: SWAP1
00002ec1: DUP2
00002ec2: LT
00002ec3: PUSH2 0x2ec8
00002ec6: JUMPI
00002ec7: INVALID
00002ec8: JUMPDEST
00002ec9: PUSH1 0x00
00002ecb: SWAP2
00002ecc: DUP3
00002ecd: MSTORE
00002ece: PUSH1 0x20
00002ed0: DUP1
00002ed1: DUP4
00002ed2: KECCAK256
00002ed3: SWAP1
00002ed4: SWAP2
00002ed5: ADD
00002ed6: SLOAD
00002ed7: PUSH1 0x01
00002ed9: PUSH1 0x01
00002edb: PUSH1 0xa0
00002edd: SHL
00002ede: SUB
00002edf: DUP7
00002ee0: DUP2
00002ee1: AND
00002ee2: DUP5
00002ee3: MSTORE
00002ee4: DUP4
00002ee5: DUP4
00002ee6: MSTORE
00002ee7: PUSH1 0x40
00002ee9: DUP1
00002eea: DUP6
00002eeb: KECCAK256
00002eec: PUSH1 0xff
00002eee: DUP9
00002eef: AND
00002ef0: DUP7
00002ef1: MSTORE
00002ef2: PUSH1 0x06
00002ef4: ADD
00002ef5: SWAP1
00002ef6: SWAP4
00002ef7: MSTORE
00002ef8: SWAP2
00002ef9: DUP4
00002efa: KECCAK256
00002efb: PUSH1 0x01
00002efd: SWAP1
00002efe: DUP2
00002eff: ADD
00002f00: DUP1
00002f01: SLOAD
00002f02: SWAP3
00002f03: DUP5
00002f04: AND
00002f05: SWAP5
00002f06: SWAP4
00002f07: DUP10
00002f08: AND
00002f09: SWAP4
00002f0a: PUSH1 0x00
00002f0c: DUP1
00002f0d: MLOAD
00002f0e: PUSH1 0x20
00002f10: PUSH2 0x3327
00002f13: DUP4
00002f14: CODECOPY
00002f15: DUP2
00002f16: MLOAD
00002f17: SWAP2
00002f18: MSTORE
00002f19: SWAP4
00002f1a: PUSH1 0x02
00002f1c: SWAP4
00002f1d: DUP10
00002f1e: SWAP4
00002f1f: DUP4
00002f20: SWAP3
00002f21: SWAP1
00002f22: SWAP2
00002f23: SWAP1
00002f24: DUP2
00002f25: LT
00002f26: PUSH2 0x2f2b
00002f29: JUMPI
00002f2a: INVALID
00002f2b: JUMPDEST
00002f2c: PUSH1 0x00
00002f2e: SWAP2
00002f2f: DUP3
00002f30: MSTORE
00002f31: PUSH1 0x20
00002f33: DUP1
00002f34: DUP4
00002f35: KECCAK256
00002f36: SWAP1
00002f37: SWAP2
00002f38: ADD
00002f39: SLOAD
00002f3a: PUSH1 0x01
00002f3c: PUSH1 0x01
00002f3e: PUSH1 0xa0
00002f40: SHL
00002f41: SUB
00002f42: AND
00002f43: DUP4
00002f44: MSTORE
00002f45: DUP3
00002f46: DUP2
00002f47: ADD
00002f48: SWAP4
00002f49: SWAP1
00002f4a: SWAP4
00002f4b: MSTORE
00002f4c: PUSH1 0x40
00002f4e: SWAP2
00002f4f: DUP3
00002f50: ADD
00002f51: DUP2
00002f52: KECCAK256
00002f53: PUSH1 0xff
00002f55: DUP1
00002f56: DUP13
00002f57: AND
00002f58: DUP4
00002f59: MSTORE
00002f5a: PUSH1 0x06
00002f5c: SWAP1
00002f5d: SWAP2
00002f5e: ADD
00002f5f: DUP5
00002f60: MSTORE
00002f61: SWAP1
00002f62: DUP3
00002f63: SWAP1
00002f64: KECCAK256
00002f65: PUSH1 0x01
00002f67: ADD
00002f68: SLOAD
00002f69: DUP3
00002f6a: MLOAD
00002f6b: SWAP6
00002f6c: DUP3
00002f6d: AND
00002f6e: DUP7
00002f6f: MSTORE
00002f70: SWAP4
00002f71: DUP2
00002f72: AND
00002f73: SWAP3
00002f74: DUP6
00002f75: ADD
00002f76: SWAP3
00002f77: SWAP1
00002f78: SWAP3
00002f79: MSTORE
00002f7a: SWAP2
00002f7b: AND
00002f7c: DUP3
00002f7d: DUP3
00002f7e: ADD
00002f7f: MSTORE
00002f80: MLOAD
00002f81: SWAP1
00002f82: DUP2
00002f83: SWAP1
00002f84: SUB
00002f85: PUSH1 0x60
00002f87: ADD
00002f88: SWAP1
00002f89: LOG3
00002f8a: PUSH1 0x01
00002f8c: PUSH1 0x01
00002f8e: PUSH1 0xa0
00002f90: SHL
00002f91: SUB
00002f92: DUP1
00002f93: DUP5
00002f94: AND
00002f95: PUSH1 0x00
00002f97: DUP2
00002f98: DUP2
00002f99: MSTORE
00002f9a: PUSH1 0x20
00002f9c: DUP2
00002f9d: DUP2
00002f9e: MSTORE
00002f9f: PUSH1 0x40
00002fa1: DUP1
00002fa2: DUP4
00002fa3: KECCAK256
00002fa4: PUSH1 0xff
00002fa6: DUP9
00002fa7: AND
00002fa8: DUP5
00002fa9: MSTORE
00002faa: PUSH1 0x06
00002fac: ADD
00002fad: SWAP1
00002fae: SWAP2
00002faf: MSTORE
00002fb0: DUP2
00002fb1: KECCAK256
00002fb2: PUSH1 0x01
00002fb4: SWAP1
00002fb5: DUP2
00002fb6: ADD
00002fb7: DUP1
00002fb8: SLOAD
00002fb9: SWAP4
00002fba: SWAP5
00002fbb: DUP10
00002fbc: AND
00002fbd: SWAP4
00002fbe: PUSH1 0x00
00002fc0: DUP1
00002fc1: MLOAD
00002fc2: PUSH1 0x20
00002fc4: PUSH2 0x3327
00002fc7: DUP4
00002fc8: CODECOPY
00002fc9: DUP2
00002fca: MLOAD
00002fcb: SWAP2
00002fcc: MSTORE
00002fcd: SWAP4
00002fce: PUSH1 0x02
00002fd0: SWAP4
00002fd1: DUP10
00002fd2: SWAP4
00002fd3: SWAP2
00002fd4: SWAP3
00002fd5: DUP4
00002fd6: SWAP3
00002fd7: SWAP2
00002fd8: SWAP1
00002fd9: DUP2
00002fda: LT
00002fdb: PUSH2 0x2fe0
00002fde: JUMPI
00002fdf: INVALID
00002fe0: JUMPDEST
00002fe1: PUSH1 0x00
00002fe3: SWAP2
00002fe4: DUP3
00002fe5: MSTORE
00002fe6: PUSH1 0x20
00002fe8: DUP1
00002fe9: DUP4
00002fea: KECCAK256
00002feb: SWAP1
00002fec: SWAP2
00002fed: ADD
00002fee: SLOAD
00002fef: PUSH1 0x01
00002ff1: PUSH1 0x01
00002ff3: PUSH1 0xa0
00002ff5: SHL
00002ff6: SUB
00002ff7: AND
00002ff8: DUP4
00002ff9: MSTORE
00002ffa: DUP3
00002ffb: DUP2
00002ffc: ADD
00002ffd: SWAP4
00002ffe: SWAP1
00002fff: SWAP4
00003000: MSTORE
00003001: PUSH1 0x40
00003003: SWAP2
00003004: DUP3
00003005: ADD
00003006: DUP2
00003007: KECCAK256
00003008: PUSH1 0xff
0000300a: DUP1
0000300b: DUP13
0000300c: AND
0000300d: DUP4
0000300e: MSTORE
0000300f: PUSH1 0x06
00003011: SWAP1
00003012: SWAP2
00003013: ADD
00003014: DUP5
00003015: MSTORE
00003016: SWAP1
00003017: DUP3
00003018: SWAP1
00003019: KECCAK256
0000301a: PUSH1 0x01
0000301c: ADD
0000301d: SLOAD
0000301e: DUP3
0000301f: MLOAD
00003020: SWAP6
00003021: DUP3
00003022: AND
00003023: DUP7
00003024: MSTORE
00003025: SWAP4
00003026: DUP2
00003027: AND
00003028: SWAP3
00003029: DUP6
0000302a: ADD
0000302b: SWAP3
0000302c: SWAP1
0000302d: SWAP3
0000302e: MSTORE
0000302f: PUSH1 0x04
00003031: SWAP1
00003032: SWAP3
00003033: ADD
00003034: AND
00003035: DUP3
00003036: DUP3
00003037: ADD
00003038: MSTORE
00003039: MLOAD
0000303a: SWAP1
0000303b: DUP2
0000303c: SWAP1
0000303d: SUB
0000303e: PUSH1 0x60
00003040: ADD
00003041: SWAP1
00003042: LOG3
00003043: PUSH1 0x01
00003045: PUSH1 0x01
00003047: PUSH1 0xa0
00003049: SHL
0000304a: SUB
0000304b: DUP4
0000304c: AND
0000304d: PUSH1 0x00
0000304f: SWAP1
00003050: DUP2
00003051: MSTORE
00003052: PUSH1 0x20
00003054: DUP2
00003055: DUP2
00003056: MSTORE
00003057: PUSH1 0x40
00003059: DUP1
0000305a: DUP4
0000305b: KECCAK256
0000305c: PUSH1 0xff
0000305e: DUP7
0000305f: AND
00003060: DUP5
00003061: MSTORE
00003062: PUSH1 0x06
00003064: ADD
00003065: SWAP1
00003066: SWAP2
00003067: MSTORE
00003068: SWAP1
00003069: KECCAK256
0000306a: PUSH1 0x01
0000306c: SWAP1
0000306d: DUP2
0000306e: ADD
0000306f: DUP1
00003070: SLOAD
00003071: SWAP1
00003072: SWAP2
00003073: SWAP1
00003074: DUP2
00003075: LT
00003076: PUSH2 0x307b
00003079: JUMPI
0000307a: INVALID
0000307b: JUMPDEST
0000307c: PUSH1 0x00
0000307e: SWAP2
0000307f: DUP3
00003080: MSTORE
00003081: PUSH1 0x20
00003083: DUP1
00003084: DUP4
00003085: KECCAK256
00003086: SWAP1
00003087: SWAP2
00003088: ADD
00003089: SLOAD
0000308a: PUSH1 0x01
0000308c: PUSH1 0x01
0000308e: PUSH1 0xa0
00003090: SHL
00003091: SUB
00003092: DUP8
00003093: DUP2
00003094: AND
00003095: DUP5
00003096: MSTORE
00003097: DUP4
00003098: DUP4
00003099: MSTORE
0000309a: PUSH1 0x40
0000309c: DUP1
0000309d: DUP6
0000309e: KECCAK256
0000309f: PUSH1 0xff
000030a1: DUP9
000030a2: AND
000030a3: DUP7
000030a4: MSTORE
000030a5: PUSH1 0x06
000030a7: ADD
000030a8: SWAP1
000030a9: SWAP4
000030aa: MSTORE
000030ab: SWAP2
000030ac: SWAP1
000030ad: SWAP3
000030ae: KECCAK256
000030af: DUP1
000030b0: SLOAD
000030b1: PUSH1 0x01
000030b3: PUSH1 0x01
000030b5: PUSH1 0xa0
000030b7: SHL
000030b8: SUB
000030b9: NOT
000030ba: AND
000030bb: SWAP2
000030bc: SWAP1
000030bd: SWAP3
000030be: AND
000030bf: OR
000030c0: SWAP1
000030c1: SSTORE
000030c2: POP
000030c3: POP
000030c4: POP
000030c5: POP
000030c6: JUMP
000030c7: JUMPDEST
000030c8: PUSH1 0x00
000030ca: DUP1
000030cb: DUP6
000030cc: DUP2
000030cd: PUSH1 0x01
000030cf: PUSH1 0xff
000030d1: DUP8
000030d2: AND
000030d3: EQ
000030d4: ISZERO
000030d5: PUSH2 0x319d
000030d8: JUMPI
000030d9: JUMPDEST
000030da: PUSH1 0x01
000030dc: PUSH1 0x01
000030de: PUSH1 0xa0
000030e0: SHL
000030e1: SUB
000030e2: DUP3
000030e3: AND
000030e4: PUSH1 0x00
000030e6: SWAP1
000030e7: DUP2
000030e8: MSTORE
000030e9: PUSH1 0x20
000030eb: DUP2
000030ec: DUP2
000030ed: MSTORE
000030ee: PUSH1 0x40
000030f0: DUP1
000030f1: DUP4
000030f2: KECCAK256
000030f3: PUSH1 0xff
000030f5: DUP1
000030f6: DUP11
000030f7: AND
000030f8: DUP6
000030f9: MSTORE
000030fa: PUSH1 0x05
000030fc: SWAP1
000030fd: SWAP2
000030fe: ADD
000030ff: SWAP1
00003100: SWAP3
00003101: MSTORE
00003102: SWAP1
00003103: SWAP2
00003104: KECCAK256
00003105: PUSH1 0x02
00003107: ADD
00003108: SLOAD
00003109: AND
0000310a: ISZERO
0000310b: PUSH2 0x318e
0000310e: JUMPI
0000310f: PUSH1 0x40
00003111: DUP1
00003112: MLOAD
00003113: PUSH1 0x01
00003115: DUP2
00003116: MSTORE
00003117: PUSH1 0xff
00003119: DUP8
0000311a: AND
0000311b: PUSH1 0x20
0000311d: DUP3
0000311e: ADD
0000311f: MSTORE
00003120: DUP2
00003121: MLOAD
00003122: PUSH1 0x01
00003124: PUSH1 0x01
00003126: PUSH1 0xa0
00003128: SHL
00003129: SUB
0000312a: DUP1
0000312b: DUP12
0000312c: AND
0000312d: SWAP4
0000312e: SWAP1
0000312f: DUP7
00003130: AND
00003131: SWAP3
00003132: PUSH32 0xfc0cb63f8dbd6b20ceb84a3c5358a41576a1479e6ecd040b4b985525dc09a709
00003153: SWAP3
00003154: SWAP1
00003155: DUP2
00003156: SWAP1
00003157: SUB
00003158: SWAP1
00003159: SWAP2
0000315a: ADD
0000315b: SWAP1
0000315c: LOG3
0000315d: POP
0000315e: PUSH1 0x01
00003160: PUSH1 0x01
00003162: PUSH1 0xa0
00003164: SHL
00003165: SUB
00003166: SWAP1
00003167: DUP2
00003168: AND
00003169: PUSH1 0x00
0000316b: SWAP1
0000316c: DUP2
0000316d: MSTORE
0000316e: PUSH1 0x20
00003170: DUP2
00003171: DUP2
00003172: MSTORE
00003173: PUSH1 0x40
00003175: DUP1
00003176: DUP4
00003177: KECCAK256
00003178: PUSH1 0xff
0000317a: DUP9
0000317b: AND
0000317c: DUP5
0000317d: MSTORE
0000317e: PUSH1 0x05
00003180: ADD
00003181: SWAP1
00003182: SWAP2
00003183: MSTORE
00003184: SWAP1
00003185: KECCAK256
00003186: SLOAD
00003187: AND
00003188: PUSH1 0x01
0000318a: PUSH2 0x3198
0000318d: JUMP
0000318e: JUMPDEST
0000318f: SWAP1
00003190: SWAP3
00003191: POP
00003192: SWAP1
00003193: POP
00003194: PUSH2 0x3252
00003197: JUMP
00003198: JUMPDEST
00003199: PUSH2 0x30d9
0000319c: JUMP
0000319d: JUMPDEST
0000319e: PUSH1 0x01
000031a0: PUSH1 0x01
000031a2: PUSH1 0xa0
000031a4: SHL
000031a5: SUB
000031a6: DUP3
000031a7: AND
000031a8: PUSH1 0x00
000031aa: SWAP1
000031ab: DUP2
000031ac: MSTORE
000031ad: PUSH1 0x20
000031af: DUP2
000031b0: DUP2
000031b1: MSTORE
000031b2: PUSH1 0x40
000031b4: DUP1
000031b5: DUP4
000031b6: KECCAK256
000031b7: PUSH1 0xff
000031b9: DUP1
000031ba: DUP11
000031bb: AND
000031bc: DUP6
000031bd: MSTORE
000031be: PUSH1 0x06
000031c0: SWAP1
000031c1: SWAP2
000031c2: ADD
000031c3: SWAP1
000031c4: SWAP3
000031c5: MSTORE
000031c6: SWAP1
000031c7: SWAP2
000031c8: KECCAK256
000031c9: PUSH1 0x03
000031cb: ADD
000031cc: SLOAD
000031cd: AND
000031ce: ISZERO
000031cf: PUSH2 0x318e
000031d2: JUMPI
000031d3: PUSH1 0x40
000031d5: DUP1
000031d6: MLOAD
000031d7: PUSH1 0x02
000031d9: DUP2
000031da: MSTORE
000031db: PUSH1 0xff
000031dd: DUP8
000031de: AND
000031df: PUSH1 0x20
000031e1: DUP3
000031e2: ADD
000031e3: MSTORE
000031e4: DUP2
000031e5: MLOAD
000031e6: PUSH1 0x01
000031e8: PUSH1 0x01
000031ea: PUSH1 0xa0
000031ec: SHL
000031ed: SUB
000031ee: DUP1
000031ef: DUP12
000031f0: AND
000031f1: SWAP4
000031f2: SWAP1
000031f3: DUP7
000031f4: AND
000031f5: SWAP3
000031f6: PUSH32 0xfc0cb63f8dbd6b20ceb84a3c5358a41576a1479e6ecd040b4b985525dc09a709
00003217: SWAP3
00003218: SWAP1
00003219: DUP2
0000321a: SWAP1
0000321b: SUB
0000321c: SWAP1
0000321d: SWAP2
0000321e: ADD
0000321f: SWAP1
00003220: LOG3
00003221: POP
00003222: PUSH1 0x01
00003224: PUSH1 0x01
00003226: PUSH1 0xa0
00003228: SHL
00003229: SUB
0000322a: SWAP1
0000322b: DUP2
0000322c: AND
0000322d: PUSH1 0x00
0000322f: SWAP1
00003230: DUP2
00003231: MSTORE
00003232: PUSH1 0x20
00003234: DUP2
00003235: DUP2
00003236: MSTORE
00003237: PUSH1 0x40
00003239: DUP1
0000323a: DUP4
0000323b: KECCAK256
0000323c: PUSH1 0xff
0000323e: DUP9
0000323f: AND
00003240: DUP5
00003241: MSTORE
00003242: PUSH1 0x06
00003244: ADD
00003245: SWAP1
00003246: SWAP2
00003247: MSTORE
00003248: SWAP1
00003249: KECCAK256
0000324a: SLOAD
0000324b: AND
0000324c: PUSH1 0x01
0000324e: PUSH2 0x319d
00003251: JUMP
00003252: JUMPDEST
00003253: SWAP5
00003254: POP
00003255: SWAP5
00003256: SWAP3
00003257: POP
00003258: POP
00003259: POP
0000325a: JUMP
0000325b: JUMPDEST
0000325c: PUSH1 0x40
0000325e: MLOAD
0000325f: DUP1
00003260: PUSH1 0xc0
00003262: ADD
00003263: PUSH1 0x40
00003265: MSTORE
00003266: DUP1
00003267: PUSH1 0x00
00003269: DUP2
0000326a: MSTORE
0000326b: PUSH1 0x20
0000326d: ADD
0000326e: PUSH1 0x00
00003270: PUSH1 0x01
00003272: PUSH1 0x01
00003274: PUSH1 0xa0
00003276: SHL
00003277: SUB
00003278: AND
00003279: DUP2
0000327a: MSTORE
0000327b: PUSH1 0x20
0000327d: ADD
0000327e: PUSH1 0x00
00003280: DUP2
00003281: MSTORE
00003282: PUSH1 0x20
00003284: ADD
00003285: PUSH1 0x00
00003287: DUP2
00003288: MSTORE
00003289: PUSH1 0x20
0000328b: ADD
0000328c: PUSH1 0x00
0000328e: DUP2
0000328f: MSTORE
00003290: PUSH1 0x20
00003292: ADD
00003293: PUSH1 0x00
00003295: DUP2
00003296: MSTORE
00003297: POP
00003298: SWAP1
00003299: JUMP
0000329a: JUMPDEST
0000329b: DUP3
0000329c: DUP1
0000329d: SLOAD
0000329e: DUP3
0000329f: DUP3
000032a0: SSTORE
000032a1: SWAP1
000032a2: PUSH1 0x00
000032a4: MSTORE
000032a5: PUSH1 0x20
000032a7: PUSH1 0x00
000032a9: KECCAK256
000032aa: SWAP1
000032ab: DUP2
000032ac: ADD
000032ad: SWAP3
000032ae: DUP3
000032af: ISZERO
000032b0: PUSH2 0x32ef
000032b3: JUMPI
000032b4: SWAP2
000032b5: PUSH1 0x20
000032b7: MUL
000032b8: DUP3
000032b9: ADD
000032ba: JUMPDEST
000032bb: DUP3
000032bc: DUP2
000032bd: GT
000032be: ISZERO
000032bf: PUSH2 0x32ef
000032c2: JUMPI
000032c3: DUP3
000032c4: MLOAD
000032c5: DUP3
000032c6: SLOAD
000032c7: PUSH1 0x01
000032c9: PUSH1 0x01
000032cb: PUSH1 0xa0
000032cd: SHL
000032ce: SUB
000032cf: NOT
000032d0: AND
000032d1: PUSH1 0x01
000032d3: PUSH1 0x01
000032d5: PUSH1 0xa0
000032d7: SHL
000032d8: SUB
000032d9: SWAP1
000032da: SWAP2
000032db: AND
000032dc: OR
000032dd: DUP3
000032de: SSTORE
000032df: PUSH1 0x20
000032e1: SWAP1
000032e2: SWAP3
000032e3: ADD
000032e4: SWAP2
000032e5: PUSH1 0x01
000032e7: SWAP1
000032e8: SWAP2
000032e9: ADD
000032ea: SWAP1
000032eb: PUSH2 0x32ba
000032ee: JUMP
000032ef: JUMPDEST
000032f0: POP
000032f1: PUSH2 0x32fb
000032f4: SWAP3
000032f5: SWAP2
000032f6: POP
000032f7: PUSH2 0x32ff
000032fa: JUMP
000032fb: JUMPDEST
000032fc: POP
000032fd: SWAP1
000032fe: JUMP
000032ff: JUMPDEST
00003300: PUSH2 0x3323
00003303: SWAP2
00003304: SWAP1
00003305: JUMPDEST
00003306: DUP1
00003307: DUP3
00003308: GT
00003309: ISZERO
0000330a: PUSH2 0x32fb
0000330d: JUMPI
0000330e: DUP1
0000330f: SLOAD
00003310: PUSH1 0x01
00003312: PUSH1 0x01
00003314: PUSH1 0xa0
00003316: SHL
00003317: SUB
00003318: NOT
00003319: AND
0000331a: DUP2
0000331b: SSTORE
0000331c: PUSH1 0x01
0000331e: ADD
0000331f: PUSH2 0x3305
00003322: JUMP
00003323: JUMPDEST
00003324: SWAP1
00003325: JUMP
00003326: INVALID
00003327: PUSH9 0x062c5925c4317adf3a
00003331: PUSH17 0x95478d28b33fd8b41458bc7620b61bc46b
00003343: CALL
00003344: UNKNOWN(0xB2)
00003345: UNKNOWN(0x4D)
00003346: DUP3
00003347: LOG0
00003348: UNKNOWN(0x0C)
00003349: SWAP6
0000334a: RETURNDATACOPY
0000334b: SELFDESTRUCT
0000334c: CODESIZE
0000334d: UNKNOWN(0xEC)
0000334e: SHL
0000334f: PUSH18 0xe7fe060b2ab8df0bbe5354319fbdde4fbdaf
00003362: UNKNOWN(0xD6)
00003363: ORIGIN
00003364: NUMBER
00003365: DUP7
00003366: UNKNOWN(0xA6)
00003367: PUSH22 0x736572206973206e6f74206578697374732e20526567
0000337e: PUSH10 0x73746572206669727374
00003389: UNKNOWN(0x2E)
0000338a: LOG2
0000338b: PUSH6 0x627a7a723158
00003392: KECCAK256
00003393: TIMESTAMP
00003394: UNKNOWN(0x23)
00003395: UNKNOWN(0xAC)
00003396: MLOAD
00003397: DUP10
00003398: SWAP15
00003399: UNKNOWN(0xD5)
0000339a: UNKNOWN(0xDD)
0000339b: UNKNOWN(0x4D)
0000339c: PUSH8 0x742e19ae1818efaa
000033a5: UNKNOWN(0x4D)
000033a6: UNKNOWN(0xA6)
000033a7: UNKNOWN(0xBF)
000033a8: SWAP3
000033a9: UNKNOWN(0x0D)
000033aa: JUMP
000033ab: UNKNOWN(0xC6)
000033ac: UNKNOWN(0xE0)
000033ad: SWAP6
000033ae: EXP
000033af: MSTORE
000033b0: UNKNOWN(0xAC)
000033b1: SWAP7
000033b2: PUSH19

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high other cast SELFDESTRUCT present 85 no
view
evidence_json
{
    "notes": "selfdestruct can remove contract code and send funds; review reachability",
    "selfdestruct_count": 1
}
high auth detector Authorization based on tx.origin 70 no
view
validation_json
{
    "reason": "missing sink mapping",
    "status": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xcd96f222",
            "selector": "0xcd96f222",
            "calldata_variants": [
                "0xcd96f222",
                "0xcd96f2220000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdb58c626",
            "selector": "0xdb58c626",
            "calldata_variants": [
                "0xdb58c626",
                "0xdb58c6260000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe06e8dbd",
            "selector": "0xe06e8dbd",
            "calldata_variants": [
                "0xe06e8dbd",
                "0xe06e8dbd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xecabdf79",
            "selector": "0xecabdf79",
            "calldata_variants": [
                "0xecabdf79",
                "0xecabdf790000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfa45323d",
            "selector": "0xfa45323d",
            "calldata_variants": [
                "0xfa45323d",
                "0xfa45323d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfe10c419",
            "selector": "0xfe10c419",
            "calldata_variants": [
                "0xfe10c419",
                "0xfe10c4190000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x83ba31b2",
            "selector": "0x83ba31b2",
            "calldata_variants": [
                "0x83ba31b2",
                "0x83ba31b20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 13155,
            "type": "tx_origin_used"
        }
    ]
}
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0xc737ace5972b93065441b0fe10656e02f55e51bdfa3c985264c9f8e912ddb510
call_targets: 0xae98b0e0c112b6d85ba32ff521b051f3fb2bafab
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xc737ace5972b93065441b0fe10656e02f55e51bdfa3c985264c9f8e912ddb510",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xae98b0e0c112b6d85ba32ff521b051f3fb2bafab"
    ],
    "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": "0xcd96f222",
            "selector": "0xcd96f222",
            "calldata_variants": [
                "0xcd96f222",
                "0xcd96f2220000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdb58c626",
            "selector": "0xdb58c626",
            "calldata_variants": [
                "0xdb58c626",
                "0xdb58c6260000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe06e8dbd",
            "selector": "0xe06e8dbd",
            "calldata_variants": [
                "0xe06e8dbd",
                "0xe06e8dbd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xecabdf79",
            "selector": "0xecabdf79",
            "calldata_variants": [
                "0xecabdf79",
                "0xecabdf790000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfa45323d",
            "selector": "0xfa45323d",
            "calldata_variants": [
                "0xfa45323d",
                "0xfa45323d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfe10c419",
            "selector": "0xfe10c419",
            "calldata_variants": [
                "0xfe10c419",
                "0xfe10c4190000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x83ba31b2",
            "selector": "0x83ba31b2",
            "calldata_variants": [
                "0x83ba31b2",
                "0x83ba31b20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 6064,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 9491,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 9719,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 4,
    "guards_detected": [
        {
            "pc": 13155,
            "type": "tx_origin_used"
        }
    ],
    "untrusted_call_count": 4
}
medium auth codex EOA-only registration is bypassable, enabling contract referrers to DoS payouts/registrations 75 no
view
evidence_json
{
    "evidence": "`registration` uses an extcodesize check to block contracts, which is bypassable in constructors; payouts use `send/transfer` with 2300 gas and revert on failure.",
    "locations": [
        "contracts/Contract.sol:213",
        "contracts/Contract.sol:218",
        "contracts/Contract.sol:222",
        "contracts/Contract.sol:559",
        "contracts/Contract.sol:563",
        "contracts/Contract.sol:571"
    ],
    "recommendation": "Do not rely on extcodesize for EOA enforcement. Either allow contracts and use a pull\u2011payment pattern, or enforce authorization with signatures/allowlists. For payouts, use `call{value: ...}` with explicit failure handling (e.g., revert or queue for withdrawal) instead of `send/transfer`.",
    "exploit_scenario": "An attacker deploys a contract whose constructor calls `registrationExt` (extcodesize is 0 during construction), bypassing the EOA check. If its fallback reverts or needs >2300 gas, any downstream registration/upgrade that tries to pay this referrer will hit `sendPartnerETH` and revert, permanently blocking that branch. This also affects the system if the `owner` is a contract address with a reverting/expensive fallback."
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0xc737ace5972b93065441b0fe10656e02f55e51bdfa3c985264c9f8e912ddb510
call_targets: 0xae98b0e0c112b6d85ba32ff521b051f3fb2bafab
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xc737ace5972b93065441b0fe10656e02f55e51bdfa3c985264c9f8e912ddb510",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xae98b0e0c112b6d85ba32ff521b051f3fb2bafab"
    ],
    "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": "0xcd96f222",
            "selector": "0xcd96f222",
            "calldata_variants": [
                "0xcd96f222",
                "0xcd96f2220000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdb58c626",
            "selector": "0xdb58c626",
            "calldata_variants": [
                "0xdb58c626",
                "0xdb58c6260000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe06e8dbd",
            "selector": "0xe06e8dbd",
            "calldata_variants": [
                "0xe06e8dbd",
                "0xe06e8dbd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xecabdf79",
            "selector": "0xecabdf79",
            "calldata_variants": [
                "0xecabdf79",
                "0xecabdf790000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfa45323d",
            "selector": "0xfa45323d",
            "calldata_variants": [
                "0xfa45323d",
                "0xfa45323d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfe10c419",
            "selector": "0xfe10c419",
            "calldata_variants": [
                "0xfe10c419",
                "0xfe10c4190000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x83ba31b2",
            "selector": "0x83ba31b2",
            "calldata_variants": [
                "0x83ba31b2",
                "0x83ba31b20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 6064,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 9491,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 9719,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 4,
    "guards_detected": [
        {
            "pc": 13155,
            "type": "tx_origin_used"
        }
    ]
}
medium other detector SELFDESTRUCT reachable 45 no no
view
trace_id: 0xf8880b70aa259e9eb10fbe6c16b03e3d11a9eb733ad7cc3e996e4f04cde6a0f3
validation_json
{
    "sink": "SELFDESTRUCT",
    "errors": 0,
    "status": "unknown",
    "attempts": 32,
    "trace_id": "0xf8880b70aa259e9eb10fbe6c16b03e3d11a9eb733ad7cc3e996e4f04cde6a0f3",
    "confirmed": false,
    "trace_mode": "structLogs",
    "call_targets": null,
    "matched_probe": null,
    "target_varies": null,
    "classification": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xcd96f222",
            "selector": "0xcd96f222",
            "calldata_variants": [
                "0xcd96f222",
                "0xcd96f2220000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdb58c626",
            "selector": "0xdb58c626",
            "calldata_variants": [
                "0xdb58c626",
                "0xdb58c6260000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe06e8dbd",
            "selector": "0xe06e8dbd",
            "calldata_variants": [
                "0xe06e8dbd",
                "0xe06e8dbd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xecabdf79",
            "selector": "0xecabdf79",
            "calldata_variants": [
                "0xecabdf79",
                "0xecabdf790000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfa45323d",
            "selector": "0xfa45323d",
            "calldata_variants": [
                "0xfa45323d",
                "0xfa45323d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfe10c419",
            "selector": "0xfe10c419",
            "calldata_variants": [
                "0xfe10c419",
                "0xfe10c4190000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x83ba31b2",
            "selector": "0x83ba31b2",
            "calldata_variants": [
                "0x83ba31b2",
                "0x83ba31b20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 13155,
            "type": "tx_origin_used"
        }
    ],
    "selfdestruct_count": 1
}
low other codex Dividend claims can silently fail and still be marked as claimed 65 no
view
evidence_json
{
    "evidence": "`sendDivs` mutates accounting before calling `.send`, and `claimDivs` does not check its return value.",
    "locations": [
        "contracts/Contract.sol:283",
        "contracts/Contract.sol:289",
        "contracts/Contract.sol:291",
        "contracts/Contract.sol:295"
    ],
    "recommendation": "Use a pull\u2011payment pattern that only updates state after a successful transfer, or revert on failed sends. If you keep `send`, check the return value and handle failure explicitly.",
    "exploit_scenario": "If a claimant cannot receive ETH (e.g., a contract user registered via constructor bypass or a contract owner), `sendDivs` updates `divClaimMark` and reduces `divPot` before attempting `.send`. If `.send` fails, the function returns false but callers ignore it, so the user permanently loses dividends and accounting diverges."
}