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

Analysis Run

7cf066a0-1657-4bcb-bb21-4badff1e973d

complete
Chain ID
1
Address
Block Number
Created
Thu, Jan 1, 2026 2:03 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
Reverted blocks keep stale pendingWithdrawCommits, enabling withdrawals from invalid transitions
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
31024 report.consolidate complete 1 / 1 3 months ago
75958 artifact.fetch complete 1 / 3 1 week ago
75959 tool.cast_disasm complete 1 / 3 1 week ago
75960 analysis.bundle complete 1 / 3 1 week ago
75961 capability.graph complete 1 / 3 1 week ago
75962 detector.run complete 1 / 3 1 week ago
75963 validation.fork complete 1 / 3 1 week ago

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
1
No findings?
no
Summary
Found a rollback logic bug that preserves pending withdraw commits for reverted blocks, enabling withdrawals from invalid transitions after a reorg.
View stderr
[codex:545347] OpenAI Codex v0.77.0 (research preview)
[codex:545347] --------
[codex:545347] workdir: /tmp/codex-multi-fuxqminw
[codex:545347] model: gpt-5.2-codex
[codex:545347] provider: openai
[codex:545347] approval: never
[codex:545347] sandbox: read-only
[codex:545347] reasoning effort: xhigh
[codex:545347] reasoning summaries: auto
[codex:545347] session id: 019b79db-e9ff-7592-8c32-e728891007fd
[codex:545347] --------
[codex:545347] user
[codex:545347] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:545347] 
[codex:545347] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:545347] 
[codex:545347] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:545347] - Gas inefficiency, code quality, naming, or best practices
[codex:545347] - Theoretical vulnerabilities without a clear extraction path
[codex:545347] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:545347] - Front-running unless it enables theft beyond MEV
[codex:545347] - DoS, griefing, or issues that don't result in attacker profit
[codex:545347] - Missing events, view function issues, or informational findings
[codex:545347] 
[codex:545347] HIGH-VALUE PATTERNS TO HUNT:
[codex:545347] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:545347] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:545347] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:545347] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:545347] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:545347] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:545347] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:545347] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:545347] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:545347] 
[codex:545347] For each finding, you MUST provide:
[codex:545347] 1. Exact file and line numbers of vulnerable code
[codex:545347] 2. Step-by-step exploit transaction sequence
[codex:545347] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:545347] 
[codex:545347] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:545347] 
[codex:545347] Output MUST be valid JSON matching the provided schema.
[codex:545347] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:545347] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:545347] mcp startup: no servers
[codex:545347] 
[codex:545347] thinking
[codex:545347] **Preparing to audit by reading relevant files**
[codex:545347] exec
[codex:545347] /bin/bash -lc ls in /tmp/codex-multi-fuxqminw succeeded in 6ms:
[codex:545347] AUDIT_BUNDLE.txt
[codex:545347] codex-output-schema.json
[codex:545347] contracts
[codex:545347] exec
[codex:545347] /bin/bash -lc "sed -n '1,200p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-fuxqminw succeeded in 6ms:
[codex:545347] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:545347] 
[codex:545347] ================================================================================
[codex:545347] FILE: contracts/contracts/Registry.sol
[codex:545347] ================================================================================
[codex:545347] // SPDX-License-Identifier: MIT
[codex:545347] 
[codex:545347] pragma solidity >=0.6.0 <0.8.0;
[codex:545347] 
[codex:545347] import "@openzeppelin/contracts/access/Ownable.sol";
[codex:545347] 
[codex:545347] contract Registry is Ownable {
[codex:545347]     // Map asset addresses to indexes.
[codex:545347]     mapping(address => uint32) public assetAddressToIndex;
[codex:545347]     mapping(uint32 => address) public assetIndexToAddress;
[codex:545347]     uint32 numAssets = 0;
[codex:545347] 
[codex:545347]     // Valid strategies.
[codex:545347]     mapping(address => uint32) public strategyAddressToIndex;
[codex:545347]     mapping(uint32 => address) public strategyIndexToAddress;
[codex:545347] 
[codex:545347] thinking
[codex:545347] **Requesting full file**
[codex:545347] exec
[codex:545347] /bin/bash -lc "sed -n '200,400p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-fuxqminw succeeded in 5ms:
[codex:545347]         registry = Registry(_registryAddress);
[codex:545347]         operator = _operator;
[codex:545347]     }
[codex:545347] 
[codex:545347]     modifier onlyOperator() {
[codex:545347]         require(msg.sender == operator, "caller is not operator");
[codex:545347]         _;
[codex:545347]     }
[codex:545347] 
[codex:545347]     fallback() external payable {}
[codex:545347] 
[codex:545347]     receive() external payable {}
[codex:545347] 
[codex:545347]     /**********************
[codex:545347]      * External Functions *
[codex:545347]      **********************/
[codex:545347] 
[codex:545347]     /**
[codex:545347]      * @notice Deposits ERC20 asset.
[codex:545347]      *
[codex:545347] exec
[codex:545347] /bin/bash -lc "sed -n '400,800p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-fuxqminw succeeded in 5ms:
[codex:545347] 
[codex:545347]         // Delete pending deposit records finalized by this block.
[codex:545347]         while (pendingDepositsExecuteHead < pendingDepositsCommitHead) {
[codex:545347]             PendingDeposit memory pend = pendingDeposits[pendingDepositsExecuteHead];
[codex:545347]             if (pend.status != PendingDepositStatus.Done || pend.blockId > blockId) {
[codex:545347]                 break;
[codex:545347]             }
[codex:545347]             delete pendingDeposits[pendingDepositsExecuteHead];
[codex:545347]             pendingDepositsExecuteHead++;
[codex:545347]         }
[codex:545347] 
[codex:545347]         // Aggregate the pending withdraw-commit records for this blockId into the final
[codex:545347]         // pending withdraw records per account (for later L1 withdraw), and delete them.
[codex:545347]         for (uint256 i = 0; i < pendingWithdrawCommits[blockId].length; i++) {
[codex:545347]             PendingWithdrawCommit memory pwc = pendingWithdrawCommits[blockId][i];
[codex:545347] 
[codex:545347]             // Find and increment this account's assetId total amount
[codex:545347]             pendingWithdraws[pwc.account][pwc.assetId] += pwc.amount;
[codex:545347]         }
[codex:545347] 
[codex:545347] exec
[codex:545347] /bin/bash -lc "sed -n '800,1200p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-fuxqminw succeeded in 5ms:
[codex:545347]         require(
[codex:545347]             _checkTwoTreeStateRoot(preStateRoot, _accountProof.stateRoot, _strategyProof.stateRoot),
[codex:545347]             "Failed combined two-tree stateRoot verification check"
[codex:545347]         );
[codex:545347] 
[codex:545347]         // ------ #4: verify account and strategy inclusion
[codex:545347]         if (accountId > 0) {
[codex:545347]             _verifyProofInclusion(
[codex:545347]                 _accountProof.stateRoot,
[codex:545347]                 keccak256(_getAccountInfoBytes(_accountProof.value)),
[codex:545347]                 _accountProof.index,
[codex:545347]                 _accountProof.siblings
[codex:545347]             );
[codex:545347]         }
[codex:545347]         if (strategyId > 0) {
[codex:545347]             _verifyProofInclusion(
[codex:545347]                 _strategyProof.stateRoot,
[codex:545347]                 keccak256(_getStrategyInfoBytes(_strategyProof.value)),
[codex:545347]                 _strategyProof.index,
[codex:545347]                 _strategyProof.siblings
[codex:545347] exec
[codex:545347] /bin/bash -lc "sed -n '1200,1600p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-fuxqminw succeeded in 6ms:
[codex:545347]             outputs[1] = _getStrategyInfoHash(updatedStrategyInfo);
[codex:545347]         } else if (transitionType == Transitions.TRANSITION_TYPE_SYNC_COMMITMENT) {
[codex:545347]             DataTypes.CommitmentSyncTransition memory commitmentSync =
[codex:545347]                 Transitions.decodeCommitmentSyncTransition(_transition);
[codex:545347]             updatedStrategyInfo = _applyCommitmentSyncTransition(commitmentSync, _strategyInfo);
[codex:545347]             outputs[1] = _getStrategyInfoHash(updatedStrategyInfo);
[codex:545347]         } else if (transitionType == Transitions.TRANSITION_TYPE_SYNC_BALANCE) {
[codex:545347]             DataTypes.BalanceSyncTransition memory balanceSync = Transitions.decodeBalanceSyncTransition(_transition);
[codex:545347]             updatedStrategyInfo = _applyBalanceSyncTransition(balanceSync, _strategyInfo);
[codex:545347]             outputs[1] = _getStrategyInfoHash(updatedStrategyInfo);
[codex:545347]         } else {
[codex:545347]             revert("Transition type not recognized");
[codex:545347]         }
[codex:545347]         return outputs;
[codex:545347]     }
[codex:545347] 
[codex:545347]     /**
[codex:545347]      * @notice Return the (stateRoot, accountId, strategyId) for this transition.
[codex:545347]      */
[codex:545347]     function getTransitionStateRootAndAccessIds(bytes calldata _rawTransition)
[codex:545347] exec
[codex:545347] /bin/bash -lc "sed -n '1600,2000p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-fuxqminw succeeded in 5ms:
[codex:545347]         bytes32 stateRoot;
[codex:545347]     }
[codex:545347] 
[codex:545347]     struct DepositTransition {
[codex:545347]         uint8 transitionType;
[codex:545347]         bytes32 stateRoot;
[codex:545347]         address account; // must provide L1 address for "pending deposit" handling
[codex:545347]         uint32 accountId; // needed for transition evaluation in case of dispute
[codex:545347]         uint32 assetId;
[codex:545347]         uint256 amount;
[codex:545347]     }
[codex:545347] 
[codex:545347]     struct WithdrawTransition {
[codex:545347]         uint8 transitionType;
[codex:545347]         bytes32 stateRoot;
[codex:545347]         address account; // must provide L1 target address for "pending withdraw" handling
[codex:545347]         uint32 accountId;
[codex:545347]         uint32 assetId;
[codex:545347]         uint256 amount;
[codex:545347]         uint64 timestamp; // Unix epoch (msec, UTC)
[codex:545347] exec
[codex:545347] /bin/bash -lc "sed -n '2000,2400p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-fuxqminw succeeded in 5ms:
[codex:545347]                 stateRoot,
[codex:545347]                 accountId,
[codex:545347]                 strategyId,
[codex:545347]                 stTokenAmount,
[codex:545347]                 timestamp,
[codex:545347]                 signature
[codex:545347]             );
[codex:545347]         return transition;
[codex:545347]     }
[codex:545347] 
[codex:545347]     function decodeCommitmentSyncTransition(bytes memory _rawBytes)
[codex:545347]         internal
[codex:545347]         pure
[codex:545347]         returns (DataTypes.CommitmentSyncTransition memory)
[codex:545347]     {
[codex:545347]         (
[codex:545347]             uint8 transitionType,
[codex:545347]             bytes32 stateRoot,
[codex:545347]             uint32 strategyId,
[codex:545347]             uint256 pendingCommitAmount,
[codex:545347] 
[codex:545347] 
[codex:545347] 
[codex:545347] thinking
[codex:545347] **Identifying stale withdrawal commit exploit**
[codex:545347] 
[codex:545347] I’m analyzing the RollupChain’s _revertBlock function and found it fails to delete pendingWithdrawCommits for reverted blocks. This could let stale withdrawal commits persist and be reapplied if a new block with the same ID is executed later—potentially allowing an attacker to withdraw funds from invalidated blocks, which looks like a concrete profit path under certain conditions involving block reversion and contract unpausing.
[codex:545347] thinking
[codex:545347] **Evaluating operator collusion and token quirks**
[codex:545347] 
[codex:545347] I’m exploring risks from a malicious or compromised operator who could exploit the stale withdrawal commit bug, meaning dispute mechanisms can be bypassed for profit with operator involvement. Also, I’m considering how fee-on-transfer (deflationary) tokens might let attackers withdraw more than deposited by messing with netDeposits tracking, which could be a real profit path if such tokens are registered.
[codex:545347] thinking
[codex:545347] **Detailing replay of invalid withdrawals from reverted blocks**
[codex:545347] 
[codex:545347] I’m confirming a clear exploit where an attacker submits invalid withdraw transitions included by the operator in a block; after dispute-triggered reversion, stale pendingWithdrawCommits remain and replay with later blocks of the same ID—letting the attacker profit without operator malice. This seems a genuine vulnerability rooted in missing cleanup during block reverts.
[codex:545347] exec
[codex:545347] /bin/bash -lc 'rg -n "pendingWithdrawCommits" -n contracts/contracts/RollupChain.sol' in /tmp/codex-multi-fuxqminw succeeded in 15ms:
[codex:545347] 54:    // (1) pendingWithdrawCommits: commitBlock() --> executeBlock(), per blockId
[codex:545347] 57:    // - commitBlock() creates pendingWithdrawCommits entries for the blockId.
[codex:545347] 59:    //   deletes the pendingWithdrawCommits entries.
[codex:545347] 60:    // - fraudulent block deletes the pendingWithdrawCommits during the blockId rollback.
[codex:545347] 67:    mapping(uint256 => PendingWithdrawCommit[]) public pendingWithdrawCommits;
[codex:545347] 234:                pendingWithdrawCommits[_blockId].push(
[codex:545347] 334:        for (uint256 i = 0; i < pendingWithdrawCommits[blockId].length; i++) {
[codex:545347] 335:            PendingWithdrawCommit memory pwc = pendingWithdrawCommits[blockId][i];
[codex:545347] 341:        delete pendingWithdrawCommits[blockId];
[codex:545347] 611:            pendingWithdrawCommits[blocks.length - 1];
[codex:545347] 
[codex:545347] thinking
[codex:545347] **Adding line numbers for context**
[codex:545347] exec
[codex:545347] /bin/bash -lc "nl -ba contracts/contracts/RollupChain.sol | sed -n '600,660p'" in /tmp/codex-multi-fuxqminw succeeded in 6ms:
[codex:545347]    600	     * @notice Revert rollup block on dispute success
[codex:545347]    601	     *
[codex:545347]    602	     * @param _blockId Rollup block id
[codex:545347]    603	     * @param _reason Revert reason
[codex:545347]    604	     */
[codex:545347]    605	    function _revertBlock(uint256 _blockId, string memory _reason) private {
[codex:545347]    606	        // pause contract
[codex:545347]    607	        _pause();
[codex:545347]    608	
[codex:545347]    609	        // revert blocks and pending states
[codex:545347]    610	        while (blocks.length > _blockId) {
[codex:545347]    611	            pendingWithdrawCommits[blocks.length - 1];
[codex:545347]    612	            blocks.pop();
[codex:545347]    613	        }
[codex:545347]    614	        bool first;
[codex:545347]    615	        for (uint256 i = pendingDepositsExecuteHead; i < pendingDepositsTail; i++) {
[codex:545347]    616	            if (pendingDeposits[i].blockId >= _blockId) {
[codex:545347]    617	                if (!first) {
[codex:545347]    618	                    pendingDepositsCommitHead = i;
[codex:545347]    619	                    first = true;
[codex:545347] 
[codex:545347] thinking
[codex:545347] **Preparing to delete no-op code**
[codex:545347] exec
[codex:545347] /bin/bash -lc "nl -ba contracts/contracts/RollupChain.sol | sed -n '320,360p'" in /tmp/codex-multi-fuxqminw succeeded in 6ms:
[codex:545347]    320	        countExecuted++;
[codex:545347]    321	
[codex:545347]    322	        // Delete pending deposit records finalized by this block.
[codex:545347]    323	        while (pendingDepositsExecuteHead < pendingDepositsCommitHead) {
[codex:545347]    324	            PendingDeposit memory pend = pendingDeposits[pendingDepositsExecuteHead];
[codex:545347]    325	            if (pend.status != PendingDepositStatus.Done || pend.blockId > blockId) {
[codex:545347]    326	                break;
[codex:545347]    327	            }
[codex:545347]    328	            delete pendingDeposits[pendingDepositsExecuteHead];
[codex:545347]    329	            pendingDepositsExecuteHead++;
[codex:545347]    330	        }
[codex:545347]    331	
[codex:545347]    332	        // Aggregate the pending withdraw-commit records for this blockId into the final
[codex:545347]    333	        // pending withdraw records per account (for later L1 withdraw), and delete them.
[codex:545347]    334	        for (uint256 i = 0; i < pendingWithdrawCommits[blockId].length; i++) {
[codex:545347]    335	            PendingWithdrawCommit memory pwc = pendingWithdrawCommits[blockId][i];
[codex:545347]    336	
[codex:545347]    337	            // Find and increment this account's assetId total amount
[codex:545347]    338	            pendingWithdraws[pwc.account][pwc.assetId] += pwc.amount;
[codex:545347]    339	        }
[codex:545347] 
[codex:545347] thinking
[codex:545347] **Inspecting commitBlock usage**
[codex:545347] exec
[codex:545347] /bin/bash -lc "nl -ba contracts/contracts/RollupChain.sol | sed -n '210,260p'" in /tmp/codex-multi-fuxqminw succeeded in 6ms:
[codex:545347]    210	            uint8 transitionType = Transitions.extractTransitionType(_transitions[i]);
[codex:545347]    211	            if (
[codex:545347]    212	                transitionType == Transitions.TRANSITION_TYPE_COMMIT ||
[codex:545347]    213	                transitionType == Transitions.TRANSITION_TYPE_UNCOMMIT
[codex:545347]    214	            ) {
[codex:545347]    215	                continue;
[codex:545347]    216	            } else if (transitionType == Transitions.TRANSITION_TYPE_SYNC_COMMITMENT) {
[codex:545347]    217	                intentIndexes[numIntents++] = i;
[codex:545347]    218	            } else if (transitionType == Transitions.TRANSITION_TYPE_DEPOSIT) {
[codex:545347]    219	                // Update the pending deposit record.
[codex:545347]    220	                dt.DepositTransition memory dp = Transitions.decodeDepositTransition(_transitions[i]);
[codex:545347]    221	                uint256 depositId = pendingDepositsCommitHead;
[codex:545347]    222	                require(depositId < pendingDepositsTail, "invalid deposit transition, no pending deposits");
[codex:545347]    223	
[codex:545347]    224	                PendingDeposit memory pend = pendingDeposits[depositId];
[codex:545347]    225	                bytes32 dhash = keccak256(abi.encodePacked(dp.account, dp.assetId, dp.amount));
[codex:545347]    226	                require(pend.dhash == dhash, "invalid deposit transition, mismatch or wrong ordering");
[codex:545347]    227	
[codex:545347]    228	                pendingDeposits[depositId].status = PendingDepositStatus.Done;
[codex:545347]    229	                pendingDeposits[depositId].blockId = uint64(_blockId); // "done": block holding the transition
[codex:545347] 
[codex:545347] thinking
[codex:545347] **Analyzing rollback vulnerability in pendingWithdrawCommits**
[codex:545347] 
[codex:545347] I'm piecing together a detailed vulnerability report showing that pendingWithdrawCommits entries aren't cleared during block reversion, causing stale withdrawals to bypass fraud proofs and risk fund theft up to the contract's asset balance. I'll outline the exploit step-by-step with relevant line numbers and categorize it as a high-severity logic bug under "other," ensuring the output is valid JSON matching the required schema.
[codex:545347] codex
[codex:545347] {"no_findings":false,"summary":"Found a rollback logic bug that preserves pending withdraw commits for reverted blocks, enabling withdrawals from invalid transitions after a reorg.","findings":[{"severity":"high","category":"other","title":"Reverted blocks keep stale pendingWithdrawCommits, enabling withdrawals from invalid transitions","exploit_scenario":"1) Attacker submits an invalid L2 withdraw transition (e.g., no balance/signature) to the operator; operator includes it in block k. 2) commitBlock appends the withdraw to pendingWithdrawCommits[k]. 3) Attacker (or anyone) disputes the invalid transition within the challenge period; _revertBlock(k, ...) is called and the chain is truncated to length k. 4) _revertBlock does not delete pendingWithdrawCommits[k], so the stale withdrawal remains. 5) After unpause, operator commits a new valid block with id k. 6) When executeBlock runs for block k, it aggregates pendingWithdrawCommits[k] (including the stale invalid withdrawal) into pendingWithdraws. 7) Attacker calls withdraw() to receive the funds. This bypasses fraud proofs and extracts funds even though the original transition was invalid.","recommendation":"In _revertBlock, explicitly delete pendingWithdrawCommits for every reverted blockId (e.g., delete pendingWithdrawCommits[blocks.length - 1] before pop), and consider clearing any pendingWithdrawCommits entries whose blockId >= _blockId to prevent reuse on blockId re-commit.","evidence":"_revertBlock only reads pendingWithdrawCommits[blocks.length - 1] before popping blocks, leaving mapping entries intact; executeBlock later aggregates pendingWithdrawCommits[blockId], so stale entries from reverted blockIds will be applied when those ids are reused.","locations":["contracts/contracts/RollupChain.sol:231","contracts/contracts/RollupChain.sol:334","contracts/contracts/RollupChain.sol:605"]}]}
[codex:545347] tokens used
[codex:545347] 38,458
[codex:545347] {"no_findings":false,"summary":"Found a rollback logic bug that preserves pending withdraw commits for reverted blocks, enabling withdrawals from invalid transitions after a reorg.","findings":[{"severity":"high","category":"other","title":"Reverted blocks keep stale pendingWithdrawCommits, enabling withdrawals from invalid transitions","exploit_scenario":"1) Attacker submits an invalid L2 withdraw transition (e.g., no balance/signature) to the operator; operator includes it in block k. 2) commitBlock appends the withdraw to pendingWithdrawCommits[k]. 3) Attacker (or anyone) disputes the invalid transition within the challenge period; _revertBlock(k, ...) is called and the chain is truncated to length k. 4) _revertBlock does not delete pendingWithdrawCommits[k], so the stale withdrawal remains. 5) After unpause, operator commits a new valid block with id k. 6) When executeBlock runs for block k, it aggregates pendingWithdrawCommits[k] (including the stale invalid withdrawal) into pendingWithdraws. 7) Attacker calls withdraw() to receive the funds. This bypasses fraud proofs and extracts funds even though the original transition was invalid.","recommendation":"In _revertBlock, explicitly delete pendingWithdrawCommits for every reverted blockId (e.g., delete pendingWithdrawCommits[blocks.length - 1] before pop), and consider clearing any pendingWithdrawCommits entries whose blockId >= _blockId to prevent reuse on blockId re-commit.","evidence":"_revertBlock only reads pendingWithdrawCommits[blocks.length - 1] before popping blocks, leaving mapping entries intact; executeBlock later aggregates pendingWithdrawCommits[blockId], so stale entries from reverted blockIds will be applied when those ids are reused.","locations":["contracts/contracts/RollupChain.sol:231","contracts/contracts/RollupChain.sol:334","contracts/contracts/RollupChain.sol:605"]}]}
Metadata
{
    "codex": {
        "ran_at": "2026-01-01T14:03:47.609940+00:00",
        "returncode": 0
    },
    "summary": "Found a rollback logic bug that preserves pending withdraw commits for reverted blocks, enabling withdrawals from invalid transitions after a reorg.",
    "raw_final": {
        "summary": "Found a rollback logic bug that preserves pending withdraw commits for reverted blocks, enabling withdrawals from invalid transitions after a reorg.",
        "findings": [
            {
                "title": "Reverted blocks keep stale pendingWithdrawCommits, enabling withdrawals from invalid transitions",
                "category": "other",
                "evidence": "_revertBlock only reads pendingWithdrawCommits[blocks.length - 1] before popping blocks, leaving mapping entries intact; executeBlock later aggregates pendingWithdrawCommits[blockId], so stale entries from reverted blockIds will be applied when those ids are reused.",
                "severity": "high",
                "locations": [
                    "contracts/contracts/RollupChain.sol:231",
                    "contracts/contracts/RollupChain.sol:334",
                    "contracts/contracts/RollupChain.sol:605"
                ],
                "recommendation": "In _revertBlock, explicitly delete pendingWithdrawCommits for every reverted blockId (e.g., delete pendingWithdrawCommits[blocks.length - 1] before pop), and consider clearing any pendingWithdrawCommits entries whose blockId >= _blockId to prevent reuse on blockId re-commit.",
                "exploit_scenario": "1) Attacker submits an invalid L2 withdraw transition (e.g., no balance/signature) to the operator; operator includes it in block k. 2) commitBlock appends the withdraw to pendingWithdrawCommits[k]. 3) Attacker (or anyone) disputes the invalid transition within the challenge period; _revertBlock(k, ...) is called and the chain is truncated to length k. 4) _revertBlock does not delete pendingWithdrawCommits[k], so the stale withdrawal remains. 5) After unpause, operator commits a new valid block with id k. 6) When executeBlock runs for block k, it aggregates pendingWithdrawCommits[k] (including the stale invalid withdrawal) into pendingWithdraws. 7) Attacker calls withdraw() to receive the funds. This bypasses fraud proofs and extracts funds even though the original transition was invalid."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
16
EXT*/BALANCE
13
Total opcodes
12870
Flags
heavy_ext_balance_usage call_family_heavy
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x02bf
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x9ae2369d
00000019: GT
0000001a: PUSH2 0x016e
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0xb90405da
00000024: GT
00000025: PUSH2 0x00cb
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xec8dedb7
0000002f: GT
00000030: PUSH2 0x007f
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xf25b3f99
0000003a: GT
0000003b: PUSH2 0x0064
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xf25b3f99
00000045: EQ
00000046: PUSH2 0x06ee
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0xf2fde38b
00000050: EQ
00000051: PUSH2 0x071e
00000054: JUMPI
00000055: DUP1
00000056: PUSH4 0xf940e385
0000005b: EQ
0000005c: PUSH2 0x073e
0000005f: JUMPI
00000060: PUSH2 0x02c6
00000063: JUMP
00000064: JUMPDEST
00000065: DUP1
00000066: PUSH4 0xec8dedb7
0000006b: EQ
0000006c: PUSH2 0x06b9
0000006f: JUMPI
00000070: DUP1
00000071: PUSH4 0xed038f5c
00000076: EQ
00000077: PUSH2 0x06d9
0000007a: JUMPI
0000007b: PUSH2 0x02c6
0000007e: JUMP
0000007f: JUMPDEST
00000080: DUP1
00000081: PUSH4 0xcb5f3129
00000086: GT
00000087: PUSH2 0x00b0
0000008a: JUMPI
0000008b: DUP1
0000008c: PUSH4 0xcb5f3129
00000091: EQ
00000092: PUSH2 0x0659
00000095: JUMPI
00000096: DUP1
00000097: PUSH4 0xcdcab4a3
0000009c: EQ
0000009d: PUSH2 0x0679
000000a0: JUMPI
000000a1: DUP1
000000a2: PUSH4 0xdfe9fbd1
000000a7: EQ
000000a8: PUSH2 0x0699
000000ab: JUMPI
000000ac: PUSH2 0x02c6
000000af: JUMP
000000b0: JUMPDEST
000000b1: DUP1
000000b2: PUSH4 0xb90405da
000000b7: EQ
000000b8: PUSH2 0x0624
000000bb: JUMPI
000000bc: DUP1
000000bd: PUSH4 0xc145e2a6
000000c2: EQ
000000c3: PUSH2 0x0644
000000c6: JUMPI
000000c7: PUSH2 0x02c6
000000ca: JUMP
000000cb: JUMPDEST
000000cc: DUP1
000000cd: PUSH4 0xa9adf055
000000d2: GT
000000d3: PUSH2 0x0122
000000d6: JUMPI
000000d7: DUP1
000000d8: PUSH4 0xaef72fde
000000dd: GT
000000de: PUSH2 0x0107
000000e1: JUMPI
000000e2: DUP1
000000e3: PUSH4 0xaef72fde
000000e8: EQ
000000e9: PUSH2 0x05da
000000ec: JUMPI
000000ed: DUP1
000000ee: PUSH4 0xb3ab15fb
000000f3: EQ
000000f4: PUSH2 0x05ef
000000f7: JUMPI
000000f8: DUP1
000000f9: PUSH4 0xb64ccb49
000000fe: EQ
000000ff: PUSH2 0x060f
00000102: JUMPI
00000103: PUSH2 0x02c6
00000106: JUMP
00000107: JUMPDEST
00000108: DUP1
00000109: PUSH4 0xa9adf055
0000010e: EQ
0000010f: PUSH2 0x05b0
00000112: JUMPI
00000113: DUP1
00000114: PUSH4 0xaedb2727
00000119: EQ
0000011a: PUSH2 0x05c5
0000011d: JUMPI
0000011e: PUSH2 0x02c6
00000121: JUMP
00000122: JUMPDEST
00000123: DUP1
00000124: PUSH4 0xa1545a52
00000129: GT
0000012a: PUSH2 0x0153
0000012d: JUMPI
0000012e: DUP1
0000012f: PUSH4 0xa1545a52
00000134: EQ
00000135: PUSH2 0x0541
00000138: JUMPI
00000139: DUP1
0000013a: PUSH4 0xa35a2eda
0000013f: EQ
00000140: PUSH2 0x0561
00000143: JUMPI
00000144: DUP1
00000145: PUSH4 0xa7932794
0000014a: EQ
0000014b: PUSH2 0x0590
0000014e: JUMPI
0000014f: PUSH2 0x02c6
00000152: JUMP
00000153: JUMPDEST
00000154: DUP1
00000155: PUSH4 0x9ae2369d
0000015a: EQ
0000015b: PUSH2 0x0501
0000015e: JUMPI
0000015f: DUP1
00000160: PUSH4 0x9d4323be
00000165: EQ
00000166: PUSH2 0x0521
00000169: JUMPI
0000016a: PUSH2 0x02c6
0000016d: JUMP
0000016e: JUMPDEST
0000016f: DUP1
00000170: PUSH4 0x570ca735
00000175: GT
00000176: PUSH2 0x021c
00000179: JUMPI
0000017a: DUP1
0000017b: PUSH4 0x8456cb59
00000180: GT
00000181: PUSH2 0x01d0
00000184: JUMPI
00000185: DUP1
00000186: PUSH4 0x8da5cb5b
0000018b: GT
0000018c: PUSH2 0x01b5
0000018f: JUMPI
00000190: DUP1
00000191: PUSH4 0x8da5cb5b
00000196: EQ
00000197: PUSH2 0x04b7
0000019a: JUMPI
0000019b: DUP1
0000019c: PUSH4 0x978d602a
000001a1: EQ
000001a2: PUSH2 0x04cc
000001a5: JUMPI
000001a6: DUP1
000001a7: PUSH4 0x9790525f
000001ac: EQ
000001ad: PUSH2 0x04ec
000001b0: JUMPI
000001b1: PUSH2 0x02c6
000001b4: JUMP
000001b5: JUMPDEST
000001b6: DUP1
000001b7: PUSH4 0x8456cb59
000001bc: EQ
000001bd: PUSH2 0x0482
000001c0: JUMPI
000001c1: DUP1
000001c2: PUSH4 0x8bdc6232
000001c7: EQ
000001c8: PUSH2 0x0497
000001cb: JUMPI
000001cc: PUSH2 0x02c6
000001cf: JUMP
000001d0: JUMPDEST
000001d1: DUP1
000001d2: PUSH4 0x70d06305
000001d7: GT
000001d8: PUSH2 0x0201
000001db: JUMPI
000001dc: DUP1
000001dd: PUSH4 0x70d06305
000001e2: EQ
000001e3: PUSH2 0x0438
000001e6: JUMPI
000001e7: DUP1
000001e8: PUSH4 0x70ec7372
000001ed: EQ
000001ee: PUSH2 0x0458
000001f1: JUMPI
000001f2: DUP1
000001f3: PUSH4 0x715018a6
000001f8: EQ
000001f9: PUSH2 0x046d
000001fc: JUMPI
000001fd: PUSH2 0x02c6
00000200: JUMP
00000201: JUMPDEST
00000202: DUP1
00000203: PUSH4 0x570ca735
00000208: EQ
00000209: PUSH2 0x03f4
0000020c: JUMPI
0000020d: DUP1
0000020e: PUSH4 0x5c975abb
00000213: EQ
00000214: PUSH2 0x0416
00000217: JUMPI
00000218: PUSH2 0x02c6
0000021b: JUMP
0000021c: JUMPDEST
0000021d: DUP1
0000021e: PUSH4 0x2e599054
00000223: GT
00000224: PUSH2 0x0273
00000227: JUMPI
00000228: DUP1
00000229: PUSH4 0x41db203c
0000022e: GT
0000022f: PUSH2 0x0258
00000232: JUMPI
00000233: DUP1
00000234: PUSH4 0x41db203c
00000239: EQ
0000023a: PUSH2 0x039f
0000023d: JUMPI
0000023e: DUP1
0000023f: PUSH4 0x47e7ef24
00000244: EQ
00000245: PUSH2 0x03bf
00000248: JUMPI
00000249: DUP1
0000024a: PUSH4 0x4f17ceb2
0000024f: EQ
00000250: PUSH2 0x03df
00000253: JUMPI
00000254: PUSH2 0x02c6
00000257: JUMP
00000258: JUMPDEST
00000259: DUP1
0000025a: PUSH4 0x2e599054
0000025f: EQ
00000260: PUSH2 0x0377
00000263: JUMPI
00000264: DUP1
00000265: PUSH4 0x3f4ba83a
0000026a: EQ
0000026b: PUSH2 0x038a
0000026e: JUMPI
0000026f: PUSH2 0x02c6
00000272: JUMP
00000273: JUMPDEST
00000274: DUP1
00000275: PUSH4 0x142a2b0a
0000027a: GT
0000027b: PUSH2 0x02a4
0000027e: JUMPI
0000027f: DUP1
00000280: PUSH4 0x142a2b0a
00000285: EQ
00000286: PUSH2 0x0313
00000289: JUMPI
0000028a: DUP1
0000028b: PUSH4 0x239cbf41
00000290: EQ
00000291: PUSH2 0x0342
00000294: JUMPI
00000295: DUP1
00000296: PUSH4 0x25fe0975
0000029b: EQ
0000029c: PUSH2 0x0357
0000029f: JUMPI
000002a0: PUSH2 0x02c6
000002a3: JUMP
000002a4: JUMPDEST
000002a5: DUP1
000002a6: PUSH4 0x097e24a0
000002ab: EQ
000002ac: PUSH2 0x02c8
000002af: JUMPI
000002b0: DUP1
000002b1: PUSH4 0x0bd9e1f9
000002b6: EQ
000002b7: PUSH2 0x02e8
000002ba: JUMPI
000002bb: PUSH2 0x02c6
000002be: JUMP
000002bf: JUMPDEST
000002c0: CALLDATASIZE
000002c1: PUSH2 0x02c6
000002c4: JUMPI
000002c5: STOP
000002c6: JUMPDEST
000002c7: STOP
000002c8: JUMPDEST
000002c9: CALLVALUE
000002ca: DUP1
000002cb: ISZERO
000002cc: PUSH2 0x02d4
000002cf: JUMPI
000002d0: PUSH1 0x00
000002d2: DUP1
000002d3: REVERT
000002d4: JUMPDEST
000002d5: POP
000002d6: PUSH2 0x02c6
000002d9: PUSH2 0x02e3
000002dc: CALLDATASIZE
000002dd: PUSH1 0x04
000002df: PUSH2 0x40ae
000002e2: JUMP
000002e3: JUMPDEST
000002e4: PUSH2 0x075e
000002e7: JUMP
000002e8: JUMPDEST
000002e9: CALLVALUE
000002ea: DUP1
000002eb: ISZERO
000002ec: PUSH2 0x02f4
000002ef: JUMPI
000002f0: PUSH1 0x00
000002f2: DUP1
000002f3: REVERT
000002f4: JUMPDEST
000002f5: POP
000002f6: PUSH2 0x02fd
000002f9: PUSH2 0x0f48
000002fc: JUMP
000002fd: JUMPDEST
000002fe: PUSH1 0x40
00000300: MLOAD
00000301: PUSH2 0x030a
00000304: SWAP2
00000305: SWAP1
00000306: PUSH2 0x4e73
00000309: JUMP
0000030a: JUMPDEST
0000030b: PUSH1 0x40
0000030d: MLOAD
0000030e: DUP1
0000030f: SWAP2
00000310: SUB
00000311: SWAP1
00000312: RETURN
00000313: JUMPDEST
00000314: CALLVALUE
00000315: DUP1
00000316: ISZERO
00000317: PUSH2 0x031f
0000031a: JUMPI
0000031b: PUSH1 0x00
0000031d: DUP1
0000031e: REVERT
0000031f: JUMPDEST
00000320: POP
00000321: PUSH2 0x0333
00000324: PUSH2 0x032e
00000327: CALLDATASIZE
00000328: PUSH1 0x04
0000032a: PUSH2 0x41e1
0000032d: JUMP
0000032e: JUMPDEST
0000032f: PUSH2 0x0f4e
00000332: JUMP
00000333: JUMPDEST
00000334: PUSH1 0x40
00000336: MLOAD
00000337: PUSH2 0x030a
0000033a: SWAP4
0000033b: SWAP3
0000033c: SWAP2
0000033d: SWAP1
0000033e: PUSH2 0x47e3
00000341: JUMP
00000342: JUMPDEST
00000343: CALLVALUE
00000344: DUP1
00000345: ISZERO
00000346: PUSH2 0x034e
00000349: JUMPI
0000034a: PUSH1 0x00
0000034c: DUP1
0000034d: REVERT
0000034e: JUMPDEST
0000034f: POP
00000350: PUSH2 0x02fd
00000353: PUSH2 0x0f7d
00000356: JUMP
00000357: JUMPDEST
00000358: CALLVALUE
00000359: DUP1
0000035a: ISZERO
0000035b: PUSH2 0x0363
0000035e: JUMPI
0000035f: PUSH1 0x00
00000361: DUP1
00000362: REVERT
00000363: JUMPDEST
00000364: POP
00000365: PUSH2 0x02fd
00000368: PUSH2 0x0372
0000036b: CALLDATASIZE
0000036c: PUSH1 0x04
0000036e: PUSH2 0x4081
00000371: JUMP
00000372: JUMPDEST
00000373: PUSH2 0x0f83
00000376: JUMP
00000377: JUMPDEST
00000378: PUSH2 0x02c6
0000037b: PUSH2 0x0385
0000037e: CALLDATASIZE
0000037f: PUSH1 0x04
00000381: PUSH2 0x4056
00000384: JUMP
00000385: JUMPDEST
00000386: PUSH2 0x0fa0
00000389: JUMP
0000038a: JUMPDEST
0000038b: CALLVALUE
0000038c: DUP1
0000038d: ISZERO
0000038e: PUSH2 0x0396
00000391: JUMPI
00000392: PUSH1 0x00
00000394: DUP1
00000395: REVERT
00000396: JUMPDEST
00000397: POP
00000398: PUSH2 0x02c6
0000039b: PUSH2 0x106e
0000039e: JUMP
0000039f: JUMPDEST
000003a0: CALLVALUE
000003a1: DUP1
000003a2: ISZERO
000003a3: PUSH2 0x03ab
000003a6: JUMPI
000003a7: PUSH1 0x00
000003a9: DUP1
000003aa: REVERT
000003ab: JUMPDEST
000003ac: POP
000003ad: PUSH2 0x02fd
000003b0: PUSH2 0x03ba
000003b3: CALLDATASIZE
000003b4: PUSH1 0x04
000003b6: PUSH2 0x427c
000003b9: JUMP
000003ba: JUMPDEST
000003bb: PUSH2 0x10da
000003be: JUMP
000003bf: JUMPDEST
000003c0: CALLVALUE
000003c1: DUP1
000003c2: ISZERO
000003c3: PUSH2 0x03cb
000003c6: JUMPI
000003c7: PUSH1 0x00
000003c9: DUP1
000003ca: REVERT
000003cb: JUMPDEST
000003cc: POP
000003cd: PUSH2 0x02c6
000003d0: PUSH2 0x03da
000003d3: CALLDATASIZE
000003d4: PUSH1 0x04
000003d6: PUSH2 0x4056
000003d9: JUMP
000003da: JUMPDEST
000003db: PUSH2 0x10ec
000003de: JUMP
000003df: JUMPDEST
000003e0: CALLVALUE
000003e1: DUP1
000003e2: ISZERO
000003e3: PUSH2 0x03eb
000003e6: JUMPI
000003e7: PUSH1 0x00
000003e9: DUP1
000003ea: REVERT
000003eb: JUMPDEST
000003ec: POP
000003ed: PUSH2 0x02fd
000003f0: PUSH2 0x115c
000003f3: JUMP
000003f4: JUMPDEST
000003f5: CALLVALUE
000003f6: DUP1
000003f7: ISZERO
000003f8: PUSH2 0x0400
000003fb: JUMPI
000003fc: PUSH1 0x00
000003fe: DUP1
000003ff: REVERT
00000400: JUMPDEST
00000401: POP
00000402: PUSH2 0x0409
00000405: PUSH2 0x1162
00000408: JUMP
00000409: JUMPDEST
0000040a: PUSH1 0x40
0000040c: MLOAD
0000040d: PUSH2 0x030a
00000410: SWAP2
00000411: SWAP1
00000412: PUSH2 0x4730
00000415: JUMP
00000416: JUMPDEST
00000417: CALLVALUE
00000418: DUP1
00000419: ISZERO
0000041a: PUSH2 0x0422
0000041d: JUMPI
0000041e: PUSH1 0x00
00000420: DUP1
00000421: REVERT
00000422: JUMPDEST
00000423: POP
00000424: PUSH2 0x042b
00000427: PUSH2 0x1171
0000042a: JUMP
0000042b: JUMPDEST
0000042c: PUSH1 0x40
0000042e: MLOAD
0000042f: PUSH2 0x030a
00000432: SWAP2
00000433: SWAP1
00000434: PUSH2 0x47b1
00000437: JUMP
00000438: JUMPDEST
00000439: CALLVALUE
0000043a: DUP1
0000043b: ISZERO
0000043c: PUSH2 0x0444
0000043f: JUMPI
00000440: PUSH1 0x00
00000442: DUP1
00000443: REVERT
00000444: JUMPDEST
00000445: POP
00000446: PUSH2 0x02fd
00000449: PUSH2 0x0453
0000044c: CALLDATASIZE
0000044d: PUSH1 0x04
0000044f: PUSH2 0x3fe6
00000452: JUMP
00000453: JUMPDEST
00000454: PUSH2 0x1181
00000457: JUMP
00000458: JUMPDEST
00000459: CALLVALUE
0000045a: DUP1
0000045b: ISZERO
0000045c: PUSH2 0x0464
0000045f: JUMPI
00000460: PUSH1 0x00
00000462: DUP1
00000463: REVERT
00000464: JUMPDEST
00000465: POP
00000466: PUSH2 0x02fd
00000469: PUSH2 0x1193
0000046c: JUMP
0000046d: JUMPDEST
0000046e: CALLVALUE
0000046f: DUP1
00000470: ISZERO
00000471: PUSH2 0x0479
00000474: JUMPI
00000475: PUSH1 0x00
00000477: DUP1
00000478: REVERT
00000479: JUMPDEST
0000047a: POP
0000047b: PUSH2 0x02c6
0000047e: PUSH2 0x1199
00000481: JUMP
00000482: JUMPDEST
00000483: CALLVALUE
00000484: DUP1
00000485: ISZERO
00000486: PUSH2 0x048e
00000489: JUMPI
0000048a: PUSH1 0x00
0000048c: DUP1
0000048d: REVERT
0000048e: JUMPDEST
0000048f: POP
00000490: PUSH2 0x02c6
00000493: PUSH2 0x1245
00000496: JUMP
00000497: JUMPDEST
00000498: CALLVALUE
00000499: DUP1
0000049a: ISZERO
0000049b: PUSH2 0x04a3
0000049e: JUMPI
0000049f: PUSH1 0x00
000004a1: DUP1
000004a2: REVERT
000004a3: JUMPDEST
000004a4: POP
000004a5: PUSH2 0x02c6
000004a8: PUSH2 0x04b2
000004ab: CALLDATASIZE
000004ac: PUSH1 0x04
000004ae: PUSH2 0x4134
000004b1: JUMP
000004b2: JUMPDEST
000004b3: PUSH2 0x12af
000004b6: JUMP
000004b7: JUMPDEST
000004b8: CALLVALUE
000004b9: DUP1
000004ba: ISZERO
000004bb: PUSH2 0x04c3
000004be: JUMPI
000004bf: PUSH1 0x00
000004c1: DUP1
000004c2: REVERT
000004c3: JUMPDEST
000004c4: POP
000004c5: PUSH2 0x0409
000004c8: PUSH2 0x1488
000004cb: JUMP
000004cc: JUMPDEST
000004cd: CALLVALUE
000004ce: DUP1
000004cf: ISZERO
000004d0: PUSH2 0x04d8
000004d3: JUMPI
000004d4: PUSH1 0x00
000004d6: DUP1
000004d7: REVERT
000004d8: JUMPDEST
000004d9: POP
000004da: PUSH2 0x02c6
000004dd: PUSH2 0x04e7
000004e0: CALLDATASIZE
000004e1: PUSH1 0x04
000004e3: PUSH2 0x401e
000004e6: JUMP
000004e7: JUMPDEST
000004e8: PUSH2 0x1497
000004eb: JUMP
000004ec: JUMPDEST
000004ed: CALLVALUE
000004ee: DUP1
000004ef: ISZERO
000004f0: PUSH2 0x04f8
000004f3: JUMPI
000004f4: PUSH1 0x00
000004f6: DUP1
000004f7: REVERT
000004f8: JUMPDEST
000004f9: POP
000004fa: PUSH2 0x02fd
000004fd: PUSH2 0x15d3
00000500: JUMP
00000501: JUMPDEST
00000502: CALLVALUE
00000503: DUP1
00000504: ISZERO
00000505: PUSH2 0x050d
00000508: JUMPI
00000509: PUSH1 0x00
0000050b: DUP1
0000050c: REVERT
0000050d: JUMPDEST
0000050e: POP
0000050f: PUSH2 0x02c6
00000512: PUSH2 0x051c
00000515: CALLDATASIZE
00000516: PUSH1 0x04
00000518: PUSH2 0x427c
0000051b: JUMP
0000051c: JUMPDEST
0000051d: PUSH2 0x15d9
00000520: JUMP
00000521: JUMPDEST
00000522: CALLVALUE
00000523: DUP1
00000524: ISZERO
00000525: PUSH2 0x052d
00000528: JUMPI
00000529: PUSH1 0x00
0000052b: DUP1
0000052c: REVERT
0000052d: JUMPDEST
0000052e: POP
0000052f: PUSH2 0x02c6
00000532: PUSH2 0x053c
00000535: CALLDATASIZE
00000536: PUSH1 0x04
00000538: PUSH2 0x4056
0000053b: JUMP
0000053c: JUMPDEST
0000053d: PUSH2 0x18cf
00000540: JUMP
00000541: JUMPDEST
00000542: CALLVALUE
00000543: DUP1
00000544: ISZERO
00000545: PUSH2 0x054d
00000548: JUMPI
00000549: PUSH1 0x00
0000054b: DUP1
0000054c: REVERT
0000054d: JUMPDEST
0000054e: POP
0000054f: PUSH2 0x02fd
00000552: PUSH2 0x055c
00000555: CALLDATASIZE
00000556: PUSH1 0x04
00000558: PUSH2 0x3fe6
0000055b: JUMP
0000055c: JUMPDEST
0000055d: PUSH2 0x1995
00000560: JUMP
00000561: JUMPDEST
00000562: CALLVALUE
00000563: DUP1
00000564: ISZERO
00000565: PUSH2 0x056d
00000568: JUMPI
00000569: PUSH1 0x00
0000056b: DUP1
0000056c: REVERT
0000056d: JUMPDEST
0000056e: POP
0000056f: PUSH2 0x0581
00000572: PUSH2 0x057c
00000575: CALLDATASIZE
00000576: PUSH1 0x04
00000578: PUSH2 0x425b
0000057b: JUMP
0000057c: JUMPDEST
0000057d: PUSH2 0x19a7
00000580: JUMP
00000581: JUMPDEST
00000582: PUSH1 0x40
00000584: MLOAD
00000585: PUSH2 0x030a
00000588: SWAP4
00000589: SWAP3
0000058a: SWAP2
0000058b: SWAP1
0000058c: PUSH2 0x475e
0000058f: JUMP
00000590: JUMPDEST
00000591: CALLVALUE
00000592: DUP1
00000593: ISZERO
00000594: PUSH2 0x059c
00000597: JUMPI
00000598: PUSH1 0x00
0000059a: DUP1
0000059b: REVERT
0000059c: JUMPDEST
0000059d: POP
0000059e: PUSH2 0x0333
000005a1: PUSH2 0x05ab
000005a4: CALLDATASIZE
000005a5: PUSH1 0x04
000005a7: PUSH2 0x41e1
000005aa: JUMP
000005ab: JUMPDEST
000005ac: PUSH2 0x19fa
000005af: JUMP
000005b0: JUMPDEST
000005b1: CALLVALUE
000005b2: DUP1
000005b3: ISZERO
000005b4: PUSH2 0x05bc
000005b7: JUMPI
000005b8: PUSH1 0x00
000005ba: DUP1
000005bb: REVERT
000005bc: JUMPDEST
000005bd: POP
000005be: PUSH2 0x02fd
000005c1: PUSH2 0x1a29
000005c4: JUMP
000005c5: JUMPDEST
000005c6: CALLVALUE
000005c7: DUP1
000005c8: ISZERO
000005c9: PUSH2 0x05d1
000005cc: JUMPI
000005cd: PUSH1 0x00
000005cf: DUP1
000005d0: REVERT
000005d1: JUMPDEST
000005d2: POP
000005d3: PUSH2 0x02fd
000005d6: PUSH2 0x1a2f
000005d9: JUMP
000005da: JUMPDEST
000005db: CALLVALUE
000005dc: DUP1
000005dd: ISZERO
000005de: PUSH2 0x05e6
000005e1: JUMPI
000005e2: PUSH1 0x00
000005e4: DUP1
000005e5: REVERT
000005e6: JUMPDEST
000005e7: POP
000005e8: PUSH2 0x02fd
000005eb: PUSH2 0x1a35
000005ee: JUMP
000005ef: JUMPDEST
000005f0: CALLVALUE
000005f1: DUP1
000005f2: ISZERO
000005f3: PUSH2 0x05fb
000005f6: JUMPI
000005f7: PUSH1 0x00
000005f9: DUP1
000005fa: REVERT
000005fb: JUMPDEST
000005fc: POP
000005fd: PUSH2 0x02c6
00000600: PUSH2 0x060a
00000603: CALLDATASIZE
00000604: PUSH1 0x04
00000606: PUSH2 0x3fe6
00000609: JUMP
0000060a: JUMPDEST
0000060b: PUSH2 0x1a3f
0000060e: JUMP
0000060f: JUMPDEST
00000610: CALLVALUE
00000611: DUP1
00000612: ISZERO
00000613: PUSH2 0x061b
00000616: JUMPI
00000617: PUSH1 0x00
00000619: DUP1
0000061a: REVERT
0000061b: JUMPDEST
0000061c: POP
0000061d: PUSH2 0x02fd
00000620: PUSH2 0x1b0a
00000623: JUMP
00000624: JUMPDEST
00000625: CALLVALUE
00000626: DUP1
00000627: ISZERO
00000628: PUSH2 0x0630
0000062b: JUMPI
0000062c: PUSH1 0x00
0000062e: DUP1
0000062f: REVERT
00000630: JUMPDEST
00000631: POP
00000632: PUSH2 0x02c6
00000635: PUSH2 0x063f
00000638: CALLDATASIZE
00000639: PUSH1 0x04
0000063b: PUSH2 0x41e1
0000063e: JUMP
0000063f: JUMPDEST
00000640: PUSH2 0x1b10
00000643: JUMP
00000644: JUMPDEST
00000645: CALLVALUE
00000646: DUP1
00000647: ISZERO
00000648: PUSH2 0x0650
0000064b: JUMPI
0000064c: PUSH1 0x00
0000064e: DUP1
0000064f: REVERT
00000650: JUMPDEST
00000651: POP
00000652: PUSH2 0x02c6
00000655: PUSH2 0x1b77
00000658: JUMP
00000659: JUMPDEST
0000065a: CALLVALUE
0000065b: DUP1
0000065c: ISZERO
0000065d: PUSH2 0x0665
00000660: JUMPI
00000661: PUSH1 0x00
00000663: DUP1
00000664: REVERT
00000665: JUMPDEST
00000666: POP
00000667: PUSH2 0x02c6
0000066a: PUSH2 0x0674
0000066d: CALLDATASIZE
0000066e: PUSH1 0x04
00000670: PUSH2 0x41e1
00000673: JUMP
00000674: JUMPDEST
00000675: PUSH2 0x1c2f
00000678: JUMP
00000679: JUMPDEST
0000067a: CALLVALUE
0000067b: DUP1
0000067c: ISZERO
0000067d: PUSH2 0x0685
00000680: JUMPI
00000681: PUSH1 0x00
00000683: DUP1
00000684: REVERT
00000685: JUMPDEST
00000686: POP
00000687: PUSH2 0x02c6
0000068a: PUSH2 0x0694
0000068d: CALLDATASIZE
0000068e: PUSH1 0x04
00000690: PUSH2 0x41e1
00000693: JUMP
00000694: JUMPDEST
00000695: PUSH2 0x1c96
00000698: JUMP
00000699: JUMPDEST
0000069a: CALLVALUE
0000069b: DUP1
0000069c: ISZERO
0000069d: PUSH2 0x06a5
000006a0: JUMPI
000006a1: PUSH1 0x00
000006a3: DUP1
000006a4: REVERT
000006a5: JUMPDEST
000006a6: POP
000006a7: PUSH2 0x02c6
000006aa: PUSH2 0x06b4
000006ad: CALLDATASIZE
000006ae: PUSH1 0x04
000006b0: PUSH2 0x4056
000006b3: JUMP
000006b4: JUMPDEST
000006b5: PUSH2 0x1dc4
000006b8: JUMP
000006b9: JUMPDEST
000006ba: CALLVALUE
000006bb: DUP1
000006bc: ISZERO
000006bd: PUSH2 0x06c5
000006c0: JUMPI
000006c1: PUSH1 0x00
000006c3: DUP1
000006c4: REVERT
000006c5: JUMPDEST
000006c6: POP
000006c7: PUSH2 0x02c6
000006ca: PUSH2 0x06d4
000006cd: CALLDATASIZE
000006ce: PUSH1 0x04
000006d0: PUSH2 0x4211
000006d3: JUMP
000006d4: JUMPDEST
000006d5: PUSH2 0x1ee9
000006d8: JUMP
000006d9: JUMPDEST
000006da: CALLVALUE
000006db: DUP1
000006dc: ISZERO
000006dd: PUSH2 0x06e5
000006e0: JUMPI
000006e1: PUSH1 0x00
000006e3: DUP1
000006e4: REVERT
000006e5: JUMPDEST
000006e6: POP
000006e7: PUSH2 0x02fd
000006ea: PUSH2 0x27bb
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 0x070e
000006ff: PUSH2 0x0709
00000702: CALLDATASIZE
00000703: PUSH1 0x04
00000705: PUSH2 0x41e1
00000708: JUMP
00000709: JUMPDEST
0000070a: PUSH2 0x27c1
0000070d: JUMP
0000070e: JUMPDEST
0000070f: PUSH1 0x40
00000711: MLOAD
00000712: PUSH2 0x030a
00000715: SWAP5
00000716: SWAP4
00000717: SWAP3
00000718: SWAP2
00000719: SWAP1
0000071a: PUSH2 0x47bc
0000071d: JUMP
0000071e: JUMPDEST
0000071f: CALLVALUE
00000720: DUP1
00000721: ISZERO
00000722: PUSH2 0x072a
00000725: JUMPI
00000726: PUSH1 0x00
00000728: DUP1
00000729: REVERT
0000072a: JUMPDEST
0000072b: POP
0000072c: PUSH2 0x02c6
0000072f: PUSH2 0x0739
00000732: CALLDATASIZE
00000733: PUSH1 0x04
00000735: PUSH2 0x3fe6
00000738: JUMP
00000739: JUMPDEST
0000073a: PUSH2 0x2808
0000073d: JUMP
0000073e: JUMPDEST
0000073f: CALLVALUE
00000740: DUP1
00000741: ISZERO
00000742: PUSH2 0x074a
00000745: JUMPI
00000746: PUSH1 0x00
00000748: DUP1
00000749: REVERT
0000074a: JUMPDEST
0000074b: POP
0000074c: PUSH2 0x02c6
0000074f: PUSH2 0x0759
00000752: CALLDATASIZE
00000753: PUSH1 0x04
00000755: PUSH2 0x401e
00000758: JUMP
00000759: JUMPDEST
0000075a: PUSH2 0x290a
0000075d: JUMP
0000075e: JUMPDEST
0000075f: PUSH2 0x0766
00000762: PUSH2 0x1171
00000765: JUMP
00000766: JUMPDEST
00000767: ISZERO
00000768: PUSH2 0x07ab
0000076b: JUMPI
0000076c: PUSH1 0x40
0000076e: DUP1
0000076f: MLOAD
00000770: PUSH3 0x461bcd
00000774: PUSH1 0xe5
00000776: SHL
00000777: DUP2
00000778: MSTORE
00000779: PUSH1 0x20
0000077b: PUSH1 0x04
0000077d: DUP3
0000077e: ADD
0000077f: MSTORE
00000780: PUSH1 0x10
00000782: PUSH1 0x24
00000784: DUP3
00000785: ADD
00000786: MSTORE
00000787: PUSH16 0x14185d5cd8589b194e881c185d5cd959
00000798: PUSH1 0x82
0000079a: SHL
0000079b: PUSH1 0x44
0000079d: DUP3
0000079e: ADD
0000079f: MSTORE
000007a0: SWAP1
000007a1: MLOAD
000007a2: SWAP1
000007a3: DUP2
000007a4: SWAP1
000007a5: SUB
000007a6: PUSH1 0x64
000007a8: ADD
000007a9: SWAP1
000007aa: REVERT
000007ab: JUMPDEST
000007ac: PUSH1 0x04
000007ae: SLOAD
000007af: PUSH1 0x03
000007b1: SLOAD
000007b2: DUP2
000007b3: LT
000007b4: PUSH2 0x07d8
000007b7: JUMPI
000007b8: PUSH1 0x40
000007ba: MLOAD
000007bb: PUSH3 0x461bcd
000007bf: PUSH1 0xe5
000007c1: SHL
000007c2: DUP2
000007c3: MSTORE
000007c4: PUSH1 0x04
000007c6: ADD
000007c7: PUSH2 0x07cf
000007ca: SWAP1
000007cb: PUSH2 0x4b72
000007ce: JUMP
000007cf: JUMPDEST
000007d0: PUSH1 0x40
000007d2: MLOAD
000007d3: DUP1
000007d4: SWAP2
000007d5: SUB
000007d6: SWAP1
000007d7: REVERT
000007d8: JUMPDEST
000007d9: NUMBER
000007da: PUSH1 0x12
000007dc: SLOAD
000007dd: PUSH1 0x03
000007df: DUP4
000007e0: DUP2
000007e1: SLOAD
000007e2: DUP2
000007e3: LT
000007e4: PUSH2 0x07e9
000007e7: JUMPI
000007e8: INVALID
000007e9: JUMPDEST
000007ea: PUSH1 0x00
000007ec: SWAP2
000007ed: DUP3
000007ee: MSTORE
000007ef: PUSH1 0x20
000007f1: SWAP1
000007f2: SWAP2
000007f3: KECCAK256
000007f4: PUSH1 0x02
000007f6: PUSH1 0x03
000007f8: SWAP1
000007f9: SWAP3
000007fa: MUL
000007fb: ADD
000007fc: ADD
000007fd: SLOAD
000007fe: PUSH1 0x01
00000800: PUSH1 0x01
00000802: PUSH1 0x80
00000804: SHL
00000805: SUB
00000806: AND
00000807: ADD
00000808: LT
00000809: PUSH2 0x0824
0000080c: JUMPI
0000080d: PUSH1 0x40
0000080f: MLOAD
00000810: PUSH3 0x461bcd
00000814: PUSH1 0xe5
00000816: SHL
00000817: DUP2
00000818: MSTORE
00000819: PUSH1 0x04
0000081b: ADD
0000081c: PUSH2 0x07cf
0000081f: SWAP1
00000820: PUSH2 0x4a4c
00000823: JUMP
00000824: JUMPDEST
00000825: PUSH1 0x00
00000827: DUP3
00000828: ISZERO
00000829: PUSH2 0x08fc
0000082c: JUMPI
0000082d: PUSH1 0x00
0000082f: DUP4
00000830: PUSH8 0xffffffffffffffff
00000839: DUP2
0000083a: GT
0000083b: DUP1
0000083c: ISZERO
0000083d: PUSH2 0x0845
00000840: JUMPI
00000841: PUSH1 0x00
00000843: DUP1
00000844: REVERT
00000845: JUMPDEST
00000846: POP
00000847: PUSH1 0x40
00000849: MLOAD
0000084a: SWAP1
0000084b: DUP1
0000084c: DUP3
0000084d: MSTORE
0000084e: DUP1
0000084f: PUSH1 0x20
00000851: MUL
00000852: PUSH1 0x20
00000854: ADD
00000855: DUP3
00000856: ADD
00000857: PUSH1 0x40
00000859: MSTORE
0000085a: DUP1
0000085b: ISZERO
0000085c: PUSH2 0x086f
0000085f: JUMPI
00000860: DUP2
00000861: PUSH1 0x20
00000863: ADD
00000864: PUSH1 0x20
00000866: DUP3
00000867: MUL
00000868: DUP1
00000869: CALLDATASIZE
0000086a: DUP4
0000086b: CALLDATACOPY
0000086c: ADD
0000086d: SWAP1
0000086e: POP
0000086f: JUMPDEST
00000870: POP
00000871: SWAP1
00000872: POP
00000873: PUSH1 0x00
00000875: JUMPDEST
00000876: DUP5
00000877: DUP2
00000878: LT
00000879: ISZERO
0000087a: PUSH2 0x08d0
0000087d: JUMPI
0000087e: DUP6
0000087f: DUP6
00000880: DUP3
00000881: DUP2
00000882: DUP2
00000883: LT
00000884: PUSH2 0x0889
00000887: JUMPI
00000888: INVALID
00000889: JUMPDEST
0000088a: SWAP1
0000088b: POP
0000088c: PUSH1 0x20
0000088e: MUL
0000088f: DUP2
00000890: ADD
00000891: SWAP1
00000892: PUSH2 0x089b
00000895: SWAP2
00000896: SWAP1
00000897: PUSH2 0x4ee5
0000089a: JUMP
0000089b: JUMPDEST
0000089c: PUSH1 0x40
0000089e: MLOAD
0000089f: PUSH2 0x08a9
000008a2: SWAP3
000008a3: SWAP2
000008a4: SWAP1
000008a5: PUSH2 0x46e4
000008a8: JUMP
000008a9: JUMPDEST
000008aa: PUSH1 0x40
000008ac: MLOAD
000008ad: DUP1
000008ae: SWAP2
000008af: SUB
000008b0: SWAP1
000008b1: KECCAK256
000008b2: DUP3
000008b3: DUP3
000008b4: DUP2
000008b5: MLOAD
000008b6: DUP2
000008b7: LT
000008b8: PUSH2 0x08bd
000008bb: JUMPI
000008bc: INVALID
000008bd: JUMPDEST
000008be: PUSH1 0x20
000008c0: SWAP1
000008c1: DUP2
000008c2: MUL
000008c3: SWAP2
000008c4: SWAP1
000008c5: SWAP2
000008c6: ADD
000008c7: ADD
000008c8: MSTORE
000008c9: PUSH1 0x01
000008cb: ADD
000008cc: PUSH2 0x0875
000008cf: JUMP
000008d0: JUMPDEST
000008d1: POP
000008d2: DUP1
000008d3: PUSH1 0x40
000008d5: MLOAD
000008d6: PUSH1 0x20
000008d8: ADD
000008d9: PUSH2 0x08e2
000008dc: SWAP2
000008dd: SWAP1
000008de: PUSH2 0x46ae
000008e1: JUMP
000008e2: JUMPDEST
000008e3: PUSH1 0x40
000008e5: MLOAD
000008e6: PUSH1 0x20
000008e8: DUP2
000008e9: DUP4
000008ea: SUB
000008eb: SUB
000008ec: DUP2
000008ed: MSTORE
000008ee: SWAP1
000008ef: PUSH1 0x40
000008f1: MSTORE
000008f2: DUP1
000008f3: MLOAD
000008f4: SWAP1
000008f5: PUSH1 0x20
000008f7: ADD
000008f8: KECCAK256
000008f9: SWAP2
000008fa: POP
000008fb: POP
000008fc: JUMPDEST
000008fd: PUSH1 0x03
000008ff: DUP3
00000900: DUP2
00000901: SLOAD
00000902: DUP2
00000903: LT
00000904: PUSH2 0x0909
00000907: JUMPI
00000908: INVALID
00000909: JUMPDEST
0000090a: SWAP1
0000090b: PUSH1 0x00
0000090d: MSTORE
0000090e: PUSH1 0x20
00000910: PUSH1 0x00
00000912: KECCAK256
00000913: SWAP1
00000914: PUSH1 0x03
00000916: MUL
00000917: ADD
00000918: PUSH1 0x01
0000091a: ADD
0000091b: SLOAD
0000091c: DUP2
0000091d: EQ
0000091e: PUSH2 0x0939
00000921: JUMPI
00000922: PUSH1 0x40
00000924: MLOAD
00000925: PUSH3 0x461bcd
00000929: PUSH1 0xe5
0000092b: SHL
0000092c: DUP2
0000092d: MSTORE
0000092e: PUSH1 0x04
00000930: ADD
00000931: PUSH2 0x07cf
00000934: SWAP1
00000935: PUSH2 0x4b3d
00000938: JUMP
00000939: JUMPDEST
0000093a: PUSH1 0x00
0000093c: JUMPDEST
0000093d: DUP4
0000093e: DUP2
0000093f: LT
00000940: ISZERO
00000941: PUSH2 0x0c8a
00000944: JUMPI
00000945: PUSH1 0x00
00000947: PUSH2 0x09a1
0000094a: DUP7
0000094b: DUP7
0000094c: DUP5
0000094d: DUP2
0000094e: DUP2
0000094f: LT
00000950: PUSH2 0x0955
00000953: JUMPI
00000954: INVALID
00000955: JUMPDEST
00000956: SWAP1
00000957: POP
00000958: PUSH1 0x20
0000095a: MUL
0000095b: DUP2
0000095c: ADD
0000095d: SWAP1
0000095e: PUSH2 0x0967
00000961: SWAP2
00000962: SWAP1
00000963: PUSH2 0x4ee5
00000966: JUMP
00000967: JUMPDEST
00000968: DUP1
00000969: DUP1
0000096a: PUSH1 0x1f
0000096c: ADD
0000096d: PUSH1 0x20
0000096f: DUP1
00000970: SWAP2
00000971: DIV
00000972: MUL
00000973: PUSH1 0x20
00000975: ADD
00000976: PUSH1 0x40
00000978: MLOAD
00000979: SWAP1
0000097a: DUP2
0000097b: ADD
0000097c: PUSH1 0x40
0000097e: MSTORE
0000097f: DUP1
00000980: SWAP4
00000981: SWAP3
00000982: SWAP2
00000983: SWAP1
00000984: DUP2
00000985: DUP2
00000986: MSTORE
00000987: PUSH1 0x20
00000989: ADD
0000098a: DUP4
0000098b: DUP4
0000098c: DUP1
0000098d: DUP3
0000098e: DUP5
0000098f: CALLDATACOPY
00000990: PUSH1 0x00
00000992: SWAP3
00000993: ADD
00000994: SWAP2
00000995: SWAP1
00000996: SWAP2
00000997: MSTORE
00000998: POP
00000999: PUSH2 0x297e
0000099c: SWAP3
0000099d: POP
0000099e: POP
0000099f: POP
000009a0: JUMP
000009a1: JUMPDEST
000009a2: PUSH1 0x02
000009a4: SLOAD
000009a5: PUSH1 0x40
000009a7: DUP1
000009a8: DUP4
000009a9: ADD
000009aa: MLOAD
000009ab: SWAP1
000009ac: MLOAD
000009ad: PUSH4 0x5a2f9ddb
000009b2: PUSH1 0xe1
000009b4: SHL
000009b5: DUP2
000009b6: MSTORE
000009b7: SWAP3
000009b8: SWAP4
000009b9: POP
000009ba: PUSH1 0x00
000009bc: SWAP3
000009bd: PUSH1 0x01
000009bf: PUSH1 0x01
000009c1: PUSH1 0xa0
000009c3: SHL
000009c4: SUB
000009c5: SWAP1
000009c6: SWAP3
000009c7: AND
000009c8: SWAP2
000009c9: PUSH4 0xb45f3bb6
000009ce: SWAP2
000009cf: PUSH2 0x09da
000009d2: SWAP2
000009d3: PUSH1 0x04
000009d5: ADD
000009d6: PUSH2 0x4eb6
000009d9: JUMP
000009da: JUMPDEST
000009db: PUSH1 0x20
000009dd: PUSH1 0x40
000009df: MLOAD
000009e0: DUP1
000009e1: DUP4
000009e2: SUB
000009e3: DUP2
000009e4: DUP7
000009e5: DUP1
000009e6: EXTCODESIZE
000009e7: ISZERO
000009e8: DUP1
000009e9: ISZERO
000009ea: PUSH2 0x09f2
000009ed: JUMPI
000009ee: PUSH1 0x00
000009f0: DUP1
000009f1: REVERT
000009f2: JUMPDEST
000009f3: POP
000009f4: GAS
000009f5: STATICCALL
000009f6: ISZERO
000009f7: DUP1
000009f8: ISZERO
000009f9: PUSH2 0x0a06
000009fc: JUMPI
000009fd: RETURNDATASIZE
000009fe: PUSH1 0x00
00000a00: DUP1
00000a01: RETURNDATACOPY
00000a02: RETURNDATASIZE
00000a03: PUSH1 0x00
00000a05: REVERT
00000a06: JUMPDEST
00000a07: POP
00000a08: POP
00000a09: POP
00000a0a: POP
00000a0b: PUSH1 0x40
00000a0d: MLOAD
00000a0e: RETURNDATASIZE
00000a0f: PUSH1 0x1f
00000a11: NOT
00000a12: PUSH1 0x1f
00000a14: DUP3
00000a15: ADD
00000a16: AND
00000a17: DUP3
00000a18: ADD
00000a19: DUP1
00000a1a: PUSH1 0x40
00000a1c: MSTORE
00000a1d: POP
00000a1e: DUP2
00000a1f: ADD
00000a20: SWAP1
00000a21: PUSH2 0x0a2a
00000a24: SWAP2
00000a25: SWAP1
00000a26: PUSH2 0x4002
00000a29: JUMP
00000a2a: JUMPDEST
00000a2b: SWAP1
00000a2c: POP
00000a2d: PUSH1 0x01
00000a2f: PUSH1 0x01
00000a31: PUSH1 0xa0
00000a33: SHL
00000a34: SUB
00000a35: DUP2
00000a36: AND
00000a37: PUSH2 0x0a52
00000a3a: JUMPI
00000a3b: PUSH1 0x40
00000a3d: MLOAD
00000a3e: PUSH3 0x461bcd
00000a42: PUSH1 0xe5
00000a44: SHL
00000a45: DUP2
00000a46: MSTORE
00000a47: PUSH1 0x04
00000a49: ADD
00000a4a: PUSH2 0x07cf
00000a4d: SWAP1
00000a4e: PUSH2 0x4a15
00000a51: JUMP
00000a52: JUMPDEST
00000a53: PUSH1 0x80
00000a55: DUP3
00000a56: ADD
00000a57: MLOAD
00000a58: PUSH1 0x60
00000a5a: DUP4
00000a5b: ADD
00000a5c: MLOAD
00000a5d: DUP3
00000a5e: SWAP2
00000a5f: LT
00000a60: ISZERO
00000a61: PUSH2 0x0bae
00000a64: JUMPI
00000a65: PUSH1 0x00
00000a67: PUSH2 0x0a81
00000a6a: DUP5
00000a6b: PUSH1 0x80
00000a6d: ADD
00000a6e: MLOAD
00000a6f: DUP6
00000a70: PUSH1 0x60
00000a72: ADD
00000a73: MLOAD
00000a74: PUSH2 0x29e4
00000a77: SWAP1
00000a78: SWAP2
00000a79: SWAP1
00000a7a: PUSH4 0xffffffff
00000a7f: AND
00000a80: JUMP
00000a81: JUMPDEST
00000a82: SWAP1
00000a83: POP
00000a84: PUSH2 0x0b09
00000a87: DUP4
00000a88: DUP3
00000a89: DUP5
00000a8a: PUSH1 0x01
00000a8c: PUSH1 0x01
00000a8e: PUSH1 0xa0
00000a90: SHL
00000a91: SUB
00000a92: AND
00000a93: PUSH4 0x670ab5e9
00000a98: PUSH1 0x40
00000a9a: MLOAD
00000a9b: DUP2
00000a9c: PUSH4 0xffffffff
00000aa1: AND
00000aa2: PUSH1 0xe0
00000aa4: SHL
00000aa5: DUP2
00000aa6: MSTORE
00000aa7: PUSH1 0x04
00000aa9: ADD
00000aaa: PUSH1 0x20
00000aac: PUSH1 0x40
00000aae: MLOAD
00000aaf: DUP1
00000ab0: DUP4
00000ab1: SUB
00000ab2: DUP2
00000ab3: DUP7
00000ab4: DUP1
00000ab5: EXTCODESIZE
00000ab6: ISZERO
00000ab7: DUP1
00000ab8: ISZERO
00000ab9: PUSH2 0x0ac1
00000abc: JUMPI
00000abd: PUSH1 0x00
00000abf: DUP1
00000ac0: REVERT
00000ac1: JUMPDEST
00000ac2: POP
00000ac3: GAS
00000ac4: STATICCALL
00000ac5: ISZERO
00000ac6: DUP1
00000ac7: ISZERO
00000ac8: PUSH2 0x0ad5
00000acb: JUMPI
00000acc: RETURNDATASIZE
00000acd: PUSH1 0x00
00000acf: DUP1
00000ad0: RETURNDATACOPY
00000ad1: RETURNDATASIZE
00000ad2: PUSH1 0x00
00000ad4: REVERT
00000ad5: JUMPDEST
00000ad6: POP
00000ad7: POP
00000ad8: POP
00000ad9: POP
00000ada: PUSH1 0x40
00000adc: MLOAD
00000add: RETURNDATASIZE
00000ade: PUSH1 0x1f
00000ae0: NOT
00000ae1: PUSH1 0x1f
00000ae3: DUP3
00000ae4: ADD
00000ae5: AND
00000ae6: DUP3
00000ae7: ADD
00000ae8: DUP1
00000ae9: PUSH1 0x40
00000aeb: MSTORE
00000aec: POP
00000aed: DUP2
00000aee: ADD
00000aef: SWAP1
00000af0: PUSH2 0x0af9
00000af3: SWAP2
00000af4: SWAP1
00000af5: PUSH2 0x4002
00000af8: JUMP
00000af9: JUMPDEST
00000afa: PUSH1 0x01
00000afc: PUSH1 0x01
00000afe: PUSH1 0xa0
00000b00: SHL
00000b01: SUB
00000b02: AND
00000b03: SWAP2
00000b04: SWAP1
00000b05: PUSH2 0x2a41
00000b08: JUMP
00000b09: JUMPDEST
00000b0a: PUSH1 0x40
00000b0c: MLOAD
00000b0d: PUSH4 0x04df9d03
00000b12: PUSH1 0xe0
00000b14: SHL
00000b15: DUP2
00000b16: MSTORE
00000b17: PUSH1 0x01
00000b19: PUSH1 0x01
00000b1b: PUSH1 0xa0
00000b1d: SHL
00000b1e: SUB
00000b1f: DUP4
00000b20: AND
00000b21: SWAP1
00000b22: PUSH4 0x04df9d03
00000b27: SWAP1
00000b28: PUSH2 0x0b35
00000b2b: SWAP1
00000b2c: DUP5
00000b2d: SWAP1
00000b2e: PUSH1 0x04
00000b30: ADD
00000b31: PUSH2 0x4e73
00000b34: JUMP
00000b35: JUMPDEST
00000b36: PUSH1 0x00
00000b38: PUSH1 0x40
00000b3a: MLOAD
00000b3b: DUP1
00000b3c: DUP4
00000b3d: SUB
00000b3e: DUP2
00000b3f: PUSH1 0x00
00000b41: DUP8
00000b42: DUP1
00000b43: EXTCODESIZE
00000b44: ISZERO
00000b45: DUP1
00000b46: ISZERO
00000b47: PUSH2 0x0b4f
00000b4a: JUMPI
00000b4b: PUSH1 0x00
00000b4d: DUP1
00000b4e: REVERT
00000b4f: JUMPDEST
00000b50: POP
00000b51: GAS
00000b52: CALL
00000b53: ISZERO
00000b54: DUP1
00000b55: ISZERO
00000b56: PUSH2 0x0b63
00000b59: JUMPI
00000b5a: RETURNDATASIZE
00000b5b: PUSH1 0x00
00000b5d: DUP1
00000b5e: RETURNDATACOPY
00000b5f: RETURNDATASIZE
00000b60: PUSH1 0x00
00000b62: REVERT
00000b63: JUMPDEST
00000b64: POP
00000b65: POP
00000b66: POP
00000b67: POP
00000b68: PUSH1 0x40
00000b6a: DUP5
00000b6b: DUP2
00000b6c: ADD
00000b6d: MLOAD
00000b6e: PUSH4 0xffffffff
00000b73: SWAP1
00000b74: DUP2
00000b75: AND
00000b76: PUSH1 0x00
00000b78: SWAP1
00000b79: DUP2
00000b7a: MSTORE
00000b7b: PUSH1 0x0f
00000b7d: PUSH1 0x20
00000b7f: MSTORE
00000b80: SWAP2
00000b81: SWAP1
00000b82: SWAP2
00000b83: KECCAK256
00000b84: SLOAD
00000b85: PUSH2 0x0b90
00000b88: SWAP2
00000b89: DUP4
00000b8a: SWAP1
00000b8b: PUSH2 0x2b2c
00000b8e: AND
00000b8f: JUMP
00000b90: JUMPDEST
00000b91: PUSH1 0x40
00000b93: DUP1
00000b94: DUP7
00000b95: ADD
00000b96: MLOAD
00000b97: PUSH4 0xffffffff
00000b9c: AND
00000b9d: PUSH1 0x00
00000b9f: SWAP1
00000ba0: DUP2
00000ba1: MSTORE
00000ba2: PUSH1 0x0f
00000ba4: PUSH1 0x20
00000ba6: MSTORE
00000ba7: KECCAK256
00000ba8: SSTORE
00000ba9: POP
00000baa: PUSH2 0x0c7f
00000bad: JUMP
00000bae: JUMPDEST
00000baf: DUP3
00000bb0: PUSH1 0x80
00000bb2: ADD
00000bb3: MLOAD
00000bb4: DUP4
00000bb5: PUSH1 0x60
00000bb7: ADD
00000bb8: MLOAD
00000bb9: LT
00000bba: ISZERO
00000bbb: PUSH2 0x0c7f
00000bbe: JUMPI
00000bbf: PUSH1 0x00
00000bc1: PUSH2 0x0bdb
00000bc4: DUP5
00000bc5: PUSH1 0x60
00000bc7: ADD
00000bc8: MLOAD
00000bc9: DUP6
00000bca: PUSH1 0x80
00000bcc: ADD
00000bcd: MLOAD
00000bce: PUSH2 0x29e4
00000bd1: SWAP1
00000bd2: SWAP2
00000bd3: SWAP1
00000bd4: PUSH4 0xffffffff
00000bd9: AND
00000bda: JUMP
00000bdb: JUMPDEST
00000bdc: PUSH1 0x40
00000bde: MLOAD
00000bdf: PUSH4 0x3d709f15
00000be4: PUSH1 0xe2
00000be6: SHL
00000be7: DUP2
00000be8: MSTORE
00000be9: SWAP1
00000bea: SWAP2
00000beb: POP
00000bec: PUSH1 0x01
00000bee: PUSH1 0x01
00000bf0: PUSH1 0xa0
00000bf2: SHL
00000bf3: SUB
00000bf4: DUP4
00000bf5: AND
00000bf6: SWAP1
00000bf7: PUSH4 0xf5c27c54
00000bfc: SWAP1
00000bfd: PUSH2 0x0c0a
00000c00: SWAP1
00000c01: DUP5
00000c02: SWAP1
00000c03: PUSH1 0x04
00000c05: ADD
00000c06: PUSH2 0x4e73
00000c09: JUMP
00000c0a: JUMPDEST
00000c0b: PUSH1 0x00
00000c0d: PUSH1 0x40
00000c0f: MLOAD
00000c10: DUP1
00000c11: DUP4
00000c12: SUB
00000c13: DUP2
00000c14: PUSH1 0x00
00000c16: DUP8
00000c17: DUP1
00000c18: EXTCODESIZE
00000c19: ISZERO
00000c1a: DUP1
00000c1b: ISZERO
00000c1c: PUSH2 0x0c24
00000c1f: JUMPI
00000c20: PUSH1 0x00
00000c22: DUP1
00000c23: REVERT
00000c24: JUMPDEST
00000c25: POP
00000c26: GAS
00000c27: CALL
00000c28: ISZERO
00000c29: DUP1
00000c2a: ISZERO
00000c2b: PUSH2 0x0c38
00000c2e: JUMPI
00000c2f: RETURNDATASIZE
00000c30: PUSH1 0x00
00000c32: DUP1
00000c33: RETURNDATACOPY
00000c34: RETURNDATASIZE
00000c35: PUSH1 0x00
00000c37: REVERT
00000c38: JUMPDEST
00000c39: POP
00000c3a: POP
00000c3b: POP
00000c3c: POP
00000c3d: PUSH1 0x40
00000c3f: DUP5
00000c40: DUP2
00000c41: ADD
00000c42: MLOAD
00000c43: PUSH4 0xffffffff
00000c48: SWAP1
00000c49: DUP2
00000c4a: AND
00000c4b: PUSH1 0x00
00000c4d: SWAP1
00000c4e: DUP2
00000c4f: MSTORE
00000c50: PUSH1 0x0f
00000c52: PUSH1 0x20
00000c54: MSTORE
00000c55: SWAP2
00000c56: SWAP1
00000c57: SWAP2
00000c58: KECCAK256
00000c59: SLOAD
00000c5a: PUSH2 0x0c65
00000c5d: SWAP2
00000c5e: DUP4
00000c5f: SWAP1
00000c60: PUSH2 0x29e4
00000c63: AND
00000c64: JUMP
00000c65: JUMPDEST
00000c66: PUSH1 0x40
00000c68: DUP1
00000c69: DUP7
00000c6a: ADD
00000c6b: MLOAD
00000c6c: PUSH4 0xffffffff
00000c71: AND
00000c72: PUSH1 0x00
00000c74: SWAP1
00000c75: DUP2
00000c76: MSTORE
00000c77: PUSH1 0x0f
00000c79: PUSH1 0x20
00000c7b: MSTORE
00000c7c: KECCAK256
00000c7d: SSTORE
00000c7e: POP
00000c7f: JUMPDEST
00000c80: POP
00000c81: POP
00000c82: POP
00000c83: PUSH1 0x01
00000c85: ADD
00000c86: PUSH2 0x093c
00000c89: JUMP
00000c8a: JUMPDEST
00000c8b: POP
00000c8c: PUSH1 0x04
00000c8e: DUP1
00000c8f: SLOAD
00000c90: PUSH1 0x01
00000c92: ADD
00000c93: SWAP1
00000c94: SSTORE
00000c95: JUMPDEST
00000c96: PUSH1 0x07
00000c98: SLOAD
00000c99: PUSH1 0x06
00000c9b: SLOAD
00000c9c: LT
00000c9d: ISZERO
00000c9e: PUSH2 0x0d70
00000ca1: JUMPI
00000ca2: PUSH1 0x06
00000ca4: SLOAD
00000ca5: PUSH1 0x00
00000ca7: SWAP1
00000ca8: DUP2
00000ca9: MSTORE
00000caa: PUSH1 0x05
00000cac: PUSH1 0x20
00000cae: SWAP1
00000caf: DUP2
00000cb0: MSTORE
00000cb1: PUSH1 0x40
00000cb3: DUP1
00000cb4: DUP4
00000cb5: KECCAK256
00000cb6: DUP2
00000cb7: MLOAD
00000cb8: PUSH1 0x60
00000cba: DUP2
00000cbb: ADD
00000cbc: DUP4
00000cbd: MSTORE
00000cbe: DUP2
00000cbf: SLOAD
00000cc0: DUP2
00000cc1: MSTORE
00000cc2: PUSH1 0x01
00000cc4: DUP1
00000cc5: DUP4
00000cc6: ADD
00000cc7: SLOAD
00000cc8: PUSH8 0xffffffffffffffff
00000cd1: DUP2
00000cd2: AND
00000cd3: SWAP6
00000cd4: DUP4
00000cd5: ADD
00000cd6: SWAP6
00000cd7: SWAP1
00000cd8: SWAP6
00000cd9: MSTORE
00000cda: SWAP1
00000cdb: SWAP4
00000cdc: SWAP2
00000cdd: SWAP3
00000cde: DUP5
00000cdf: ADD
00000ce0: SWAP2
00000ce1: PUSH1 0x01
00000ce3: PUSH1 0x40
00000ce5: SHL
00000ce6: SWAP1
00000ce7: DIV
00000ce8: PUSH1 0xff
00000cea: AND
00000ceb: SWAP1
00000cec: DUP2
00000ced: GT
00000cee: ISZERO
00000cef: PUSH2 0x0cf4
00000cf2: JUMPI
00000cf3: INVALID
00000cf4: JUMPDEST
00000cf5: PUSH1 0x01
00000cf7: DUP2
00000cf8: GT
00000cf9: ISZERO
00000cfa: PUSH2 0x0cff
00000cfd: JUMPI
00000cfe: INVALID
00000cff: JUMPDEST
00000d00: SWAP1
00000d01: MSTORE
00000d02: POP
00000d03: SWAP1
00000d04: POP
00000d05: PUSH1 0x01
00000d07: DUP2
00000d08: PUSH1 0x40
00000d0a: ADD
00000d0b: MLOAD
00000d0c: PUSH1 0x01
00000d0e: DUP2
00000d0f: GT
00000d10: ISZERO
00000d11: PUSH2 0x0d16
00000d14: JUMPI
00000d15: INVALID
00000d16: JUMPDEST
00000d17: EQ
00000d18: ISZERO
00000d19: DUP1
00000d1a: PUSH2 0x0d30
00000d1d: JUMPI
00000d1e: POP
00000d1f: DUP3
00000d20: DUP2
00000d21: PUSH1 0x20
00000d23: ADD
00000d24: MLOAD
00000d25: PUSH8 0xffffffffffffffff
00000d2e: AND
00000d2f: GT
00000d30: JUMPDEST
00000d31: ISZERO
00000d32: PUSH2 0x0d3b
00000d35: JUMPI
00000d36: POP
00000d37: PUSH2 0x0d70
00000d3a: JUMP
00000d3b: JUMPDEST
00000d3c: POP
00000d3d: PUSH1 0x06
00000d3f: DUP1
00000d40: SLOAD
00000d41: PUSH1 0x00
00000d43: SWAP1
00000d44: DUP2
00000d45: MSTORE
00000d46: PUSH1 0x05
00000d48: PUSH1 0x20
00000d4a: MSTORE
00000d4b: PUSH1 0x40
00000d4d: DUP2
00000d4e: KECCAK256
00000d4f: SWAP1
00000d50: DUP2
00000d51: SSTORE
00000d52: PUSH1 0x01
00000d54: SWAP1
00000d55: DUP2
00000d56: ADD
00000d57: DUP1
00000d58: SLOAD
00000d59: PUSH9 0xffffffffffffffffff
00000d63: NOT
00000d64: AND
00000d65: SWAP1
00000d66: SSTORE
00000d67: DUP2
00000d68: SLOAD
00000d69: ADD
00000d6a: SWAP1
00000d6b: SSTORE
00000d6c: PUSH2 0x0c95
00000d6f: JUMP
00000d70: JUMPDEST
00000d71: PUSH1 0x00
00000d73: JUMPDEST
00000d74: PUSH1 0x00
00000d76: DUP4
00000d77: DUP2
00000d78: MSTORE
00000d79: PUSH1 0x09
00000d7b: PUSH1 0x20
00000d7d: MSTORE
00000d7e: PUSH1 0x40
00000d80: SWAP1
00000d81: KECCAK256
00000d82: SLOAD
00000d83: DUP2
00000d84: LT
00000d85: ISZERO
00000d86: PUSH2 0x0e18
00000d89: JUMPI
00000d8a: PUSH1 0x00
00000d8c: DUP4
00000d8d: DUP2
00000d8e: MSTORE
00000d8f: PUSH1 0x09
00000d91: PUSH1 0x20
00000d93: MSTORE
00000d94: PUSH1 0x40
00000d96: DUP2
00000d97: KECCAK256
00000d98: DUP1
00000d99: SLOAD
00000d9a: DUP4
00000d9b: SWAP1
00000d9c: DUP2
00000d9d: LT
00000d9e: PUSH2 0x0da3
00000da1: JUMPI
00000da2: INVALID
00000da3: JUMPDEST
00000da4: PUSH1 0x00
00000da6: SWAP2
00000da7: DUP3
00000da8: MSTORE
00000da9: PUSH1 0x20
00000dab: DUP1
00000dac: DUP4
00000dad: KECCAK256
00000dae: PUSH1 0x40
00000db0: DUP1
00000db1: MLOAD
00000db2: PUSH1 0x60
00000db4: DUP2
00000db5: ADD
00000db6: DUP3
00000db7: MSTORE
00000db8: PUSH1 0x02
00000dba: SWAP1
00000dbb: SWAP5
00000dbc: MUL
00000dbd: SWAP1
00000dbe: SWAP2
00000dbf: ADD
00000dc0: DUP1
00000dc1: SLOAD
00000dc2: PUSH1 0x01
00000dc4: PUSH1 0x01
00000dc6: PUSH1 0xa0
00000dc8: SHL
00000dc9: SUB
00000dca: DUP2
00000dcb: AND
00000dcc: DUP1
00000dcd: DUP7
00000dce: MSTORE
00000dcf: PUSH4 0xffffffff
00000dd4: PUSH1 0x01
00000dd6: PUSH1 0xa0
00000dd8: SHL
00000dd9: SWAP1
00000dda: SWAP3
00000ddb: DIV
00000ddc: DUP3
00000ddd: AND
00000dde: DUP7
00000ddf: DUP7
00000de0: ADD
00000de1: SWAP1
00000de2: DUP2
00000de3: MSTORE
00000de4: PUSH1 0x01
00000de6: SWAP4
00000de7: DUP5
00000de8: ADD
00000de9: SLOAD
00000dea: SWAP7
00000deb: DUP6
00000dec: ADD
00000ded: DUP8
00000dee: SWAP1
00000def: MSTORE
00000df0: SWAP1
00000df1: DUP8
00000df2: MSTORE
00000df3: PUSH1 0x0a
00000df5: DUP6
00000df6: MSTORE
00000df7: DUP4
00000df8: DUP8
00000df9: KECCAK256
00000dfa: SWAP1
00000dfb: MLOAD
00000dfc: SWAP1
00000dfd: SWAP2
00000dfe: AND
00000dff: DUP7
00000e00: MSTORE
00000e01: SWAP1
00000e02: SWAP3
00000e03: MSTORE
00000e04: SWAP1
00000e05: SWAP3
00000e06: KECCAK256
00000e07: DUP1
00000e08: SLOAD
00000e09: SWAP1
00000e0a: SWAP2
00000e0b: ADD
00000e0c: SWAP1
00000e0d: SSTORE
00000e0e: SWAP2
00000e0f: SWAP1
00000e10: SWAP2
00000e11: ADD
00000e12: SWAP1
00000e13: POP
00000e14: PUSH2 0x0d73
00000e17: JUMP
00000e18: JUMPDEST
00000e19: POP
00000e1a: PUSH1 0x00
00000e1c: DUP3
00000e1d: DUP2
00000e1e: MSTORE
00000e1f: PUSH1 0x09
00000e21: PUSH1 0x20
00000e23: MSTORE
00000e24: PUSH1 0x40
00000e26: DUP2
00000e27: KECCAK256
00000e28: PUSH2 0x0e30
00000e2b: SWAP2
00000e2c: PUSH2 0x3dd2
00000e2f: JUMP
00000e30: JUMPDEST
00000e31: PUSH1 0x0d
00000e33: SLOAD
00000e34: PUSH1 0x0c
00000e36: SLOAD
00000e37: LT
00000e38: ISZERO
00000e39: PUSH2 0x0f0b
00000e3c: JUMPI
00000e3d: PUSH1 0x0c
00000e3f: SLOAD
00000e40: PUSH1 0x00
00000e42: SWAP1
00000e43: DUP2
00000e44: MSTORE
00000e45: PUSH1 0x0b
00000e47: PUSH1 0x20
00000e49: SWAP1
00000e4a: DUP2
00000e4b: MSTORE
00000e4c: PUSH1 0x40
00000e4e: DUP1
00000e4f: DUP4
00000e50: KECCAK256
00000e51: DUP2
00000e52: MLOAD
00000e53: PUSH1 0x60
00000e55: DUP2
00000e56: ADD
00000e57: DUP4
00000e58: MSTORE
00000e59: DUP2
00000e5a: SLOAD
00000e5b: DUP2
00000e5c: MSTORE
00000e5d: PUSH1 0x01
00000e5f: DUP1
00000e60: DUP4
00000e61: ADD
00000e62: SLOAD
00000e63: PUSH8 0xffffffffffffffff
00000e6c: DUP2
00000e6d: AND
00000e6e: SWAP6
00000e6f: DUP4
00000e70: ADD
00000e71: SWAP6
00000e72: SWAP1
00000e73: SWAP6
00000e74: MSTORE
00000e75: SWAP1
00000e76: SWAP4
00000e77: SWAP2
00000e78: SWAP3
00000e79: DUP5
00000e7a: ADD
00000e7b: SWAP2
00000e7c: PUSH1 0x01
00000e7e: PUSH1 0x40
00000e80: SHL
00000e81: SWAP1
00000e82: DIV
00000e83: PUSH1 0xff
00000e85: AND
00000e86: SWAP1
00000e87: DUP2
00000e88: GT
00000e89: ISZERO
00000e8a: PUSH2 0x0e8f
00000e8d: JUMPI
00000e8e: INVALID
00000e8f: JUMPDEST
00000e90: PUSH1 0x01
00000e92: DUP2
00000e93: GT
00000e94: ISZERO
00000e95: PUSH2 0x0e9a
00000e98: JUMPI
00000e99: INVALID
00000e9a: JUMPDEST
00000e9b: SWAP1
00000e9c: MSTORE
00000e9d: POP
00000e9e: SWAP1
00000e9f: POP
00000ea0: PUSH1 0x01
00000ea2: DUP2
00000ea3: PUSH1 0x40
00000ea5: ADD
00000ea6: MLOAD
00000ea7: PUSH1 0x01
00000ea9: DUP2
00000eaa: GT
00000eab: ISZERO
00000eac: PUSH2 0x0eb1
00000eaf: JUMPI
00000eb0: INVALID
00000eb1: JUMPDEST
00000eb2: EQ
00000eb3: ISZERO
00000eb4: DUP1
00000eb5: PUSH2 0x0ecb
00000eb8: JUMPI
00000eb9: POP
00000eba: DUP3
00000ebb: DUP2
00000ebc: PUSH1 0x20
00000ebe: ADD
00000ebf: MLOAD
00000ec0: PUSH8 0xffffffffffffffff
00000ec9: AND
00000eca: GT
00000ecb: JUMPDEST
00000ecc: ISZERO
00000ecd: PUSH2 0x0ed6
00000ed0: JUMPI
00000ed1: POP
00000ed2: PUSH2 0x0f0b
00000ed5: JUMP
00000ed6: JUMPDEST
00000ed7: POP
00000ed8: PUSH1 0x0c
00000eda: DUP1
00000edb: SLOAD
00000edc: PUSH1 0x00
00000ede: SWAP1
00000edf: DUP2
00000ee0: MSTORE
00000ee1: PUSH1 0x0b
00000ee3: PUSH1 0x20
00000ee5: MSTORE
00000ee6: PUSH1 0x40
00000ee8: DUP2
00000ee9: KECCAK256
00000eea: SWAP1
00000eeb: DUP2
00000eec: SSTORE
00000eed: PUSH1 0x01
00000eef: SWAP1
00000ef0: DUP2
00000ef1: ADD
00000ef2: DUP1
00000ef3: SLOAD
00000ef4: PUSH9 0xffffffffffffffffff
00000efe: NOT
00000eff: AND
00000f00: SWAP1
00000f01: SSTORE
00000f02: DUP2
00000f03: SLOAD
00000f04: ADD
00000f05: SWAP1
00000f06: SSTORE
00000f07: PUSH2 0x0e30
00000f0a: JUMP
00000f0b: JUMPDEST
00000f0c: PUSH32 0x7dcbc30b0913ee9985c884dea0928f45844ec4f1feb3ab49bb25fdeb1fd838ce
00000f2d: DUP3
00000f2e: PUSH1 0x40
00000f30: MLOAD
00000f31: PUSH2 0x0f3a
00000f34: SWAP2
00000f35: SWAP1
00000f36: PUSH2 0x4e73
00000f39: JUMP
00000f3a: JUMPDEST
00000f3b: PUSH1 0x40
00000f3d: MLOAD
00000f3e: DUP1
00000f3f: SWAP2
00000f40: SUB
00000f41: SWAP1
00000f42: LOG1
00000f43: POP
00000f44: POP
00000f45: POP
00000f46: POP
00000f47: JUMP
00000f48: JUMPDEST
00000f49: PUSH1 0x07
00000f4b: SLOAD
00000f4c: DUP2
00000f4d: JUMP
00000f4e: JUMPDEST
00000f4f: PUSH1 0x0b
00000f51: PUSH1 0x20
00000f53: MSTORE
00000f54: PUSH1 0x00
00000f56: SWAP1
00000f57: DUP2
00000f58: MSTORE
00000f59: PUSH1 0x40
00000f5b: SWAP1
00000f5c: KECCAK256
00000f5d: DUP1
00000f5e: SLOAD
00000f5f: PUSH1 0x01
00000f61: SWAP1
00000f62: SWAP2
00000f63: ADD
00000f64: SLOAD
00000f65: PUSH8 0xffffffffffffffff
00000f6e: DUP2
00000f6f: AND
00000f70: SWAP1
00000f71: PUSH1 0x01
00000f73: PUSH1 0x40
00000f75: SHL
00000f76: SWAP1
00000f77: DIV
00000f78: PUSH1 0xff
00000f7a: AND
00000f7b: DUP4
00000f7c: JUMP
00000f7d: JUMPDEST
00000f7e: PUSH1 0x0c
00000f80: SLOAD
00000f81: DUP2
00000f82: JUMP
00000f83: JUMPDEST
00000f84: PUSH1 0x0a
00000f86: PUSH1 0x20
00000f88: SWAP1
00000f89: DUP2
00000f8a: MSTORE
00000f8b: PUSH1 0x00
00000f8d: SWAP3
00000f8e: DUP4
00000f8f: MSTORE
00000f90: PUSH1 0x40
00000f92: DUP1
00000f93: DUP5
00000f94: KECCAK256
00000f95: SWAP1
00000f96: SWAP2
00000f97: MSTORE
00000f98: SWAP1
00000f99: DUP3
00000f9a: MSTORE
00000f9b: SWAP1
00000f9c: KECCAK256
00000f9d: SLOAD
00000f9e: DUP2
00000f9f: JUMP
00000fa0: JUMPDEST
00000fa1: PUSH2 0x0fa8
00000fa4: PUSH2 0x1171
00000fa7: JUMP
00000fa8: JUMPDEST
00000fa9: ISZERO
00000faa: PUSH2 0x0fed
00000fad: JUMPI
00000fae: PUSH1 0x40
00000fb0: DUP1
00000fb1: MLOAD
00000fb2: PUSH3 0x461bcd
00000fb6: PUSH1 0xe5
00000fb8: SHL
00000fb9: DUP2
00000fba: MSTORE
00000fbb: PUSH1 0x20
00000fbd: PUSH1 0x04
00000fbf: DUP3
00000fc0: ADD
00000fc1: MSTORE
00000fc2: PUSH1 0x10
00000fc4: PUSH1 0x24
00000fc6: DUP3
00000fc7: ADD
00000fc8: MSTORE
00000fc9: PUSH16 0x14185d5cd8589b194e881c185d5cd959
00000fda: PUSH1 0x82
00000fdc: SHL
00000fdd: PUSH1 0x44
00000fdf: DUP3
00000fe0: ADD
00000fe1: MSTORE
00000fe2: SWAP1
00000fe3: MLOAD
00000fe4: SWAP1
00000fe5: DUP2
00000fe6: SWAP1
00000fe7: SUB
00000fe8: PUSH1 0x64
00000fea: ADD
00000feb: SWAP1
00000fec: REVERT
00000fed: JUMPDEST
00000fee: DUP1
00000fef: CALLVALUE
00000ff0: EQ
00000ff1: PUSH2 0x100c
00000ff4: JUMPI
00000ff5: PUSH1 0x40
00000ff7: MLOAD
00000ff8: PUSH3 0x461bcd
00000ffc: PUSH1 0xe5
00000ffe: SHL
00000fff: DUP2
00001000: MSTORE
00001001: PUSH1 0x04
00001003: ADD
00001004: PUSH2 0x07cf
00001007: SWAP1
00001008: PUSH2 0x49de
0000100b: JUMP
0000100c: JUMPDEST
0000100d: PUSH2 0x1016
00001010: DUP3
00001011: DUP3
00001012: PUSH2 0x2b8d
00001015: JUMP
00001016: JUMPDEST
00001017: DUP2
00001018: PUSH1 0x01
0000101a: PUSH1 0x01
0000101c: PUSH1 0xa0
0000101e: SHL
0000101f: SUB
00001020: AND
00001021: PUSH4 0xd0e30db0
00001026: DUP3
00001027: PUSH1 0x40
00001029: MLOAD
0000102a: DUP3
0000102b: PUSH4 0xffffffff
00001030: AND
00001031: PUSH1 0xe0
00001033: SHL
00001034: DUP2
00001035: MSTORE
00001036: PUSH1 0x04
00001038: ADD
00001039: PUSH1 0x00
0000103b: PUSH1 0x40
0000103d: MLOAD
0000103e: DUP1
0000103f: DUP4
00001040: SUB
00001041: DUP2
00001042: DUP6
00001043: DUP9
00001044: DUP1
00001045: EXTCODESIZE
00001046: ISZERO
00001047: DUP1
00001048: ISZERO
00001049: PUSH2 0x1051
0000104c: JUMPI
0000104d: PUSH1 0x00
0000104f: DUP1
00001050: REVERT
00001051: JUMPDEST
00001052: POP
00001053: GAS
00001054: CALL
00001055: ISZERO
00001056: DUP1
00001057: ISZERO
00001058: PUSH2 0x1065
0000105b: JUMPI
0000105c: RETURNDATASIZE
0000105d: PUSH1 0x00
0000105f: DUP1
00001060: RETURNDATACOPY
00001061: RETURNDATASIZE
00001062: PUSH1 0x00
00001064: REVERT
00001065: JUMPDEST
00001066: POP
00001067: POP
00001068: POP
00001069: POP
0000106a: POP
0000106b: POP
0000106c: POP
0000106d: JUMP
0000106e: JUMPDEST
0000106f: PUSH2 0x1076
00001072: PUSH2 0x2dab
00001075: JUMP
00001076: JUMPDEST
00001077: PUSH1 0x01
00001079: PUSH1 0x01
0000107b: PUSH1 0xa0
0000107d: SHL
0000107e: SUB
0000107f: AND
00001080: PUSH2 0x1087
00001083: PUSH2 0x1488
00001086: JUMP
00001087: JUMPDEST
00001088: PUSH1 0x01
0000108a: PUSH1 0x01
0000108c: PUSH1 0xa0
0000108e: SHL
0000108f: SUB
00001090: AND
00001091: EQ
00001092: PUSH2 0x10d0
00001095: JUMPI
00001096: PUSH1 0x40
00001098: DUP1
00001099: MLOAD
0000109a: PUSH3 0x461bcd
0000109e: PUSH1 0xe5
000010a0: SHL
000010a1: DUP2
000010a2: MSTORE
000010a3: PUSH1 0x20
000010a5: PUSH1 0x04
000010a7: DUP3
000010a8: ADD
000010a9: DUP2
000010aa: SWAP1
000010ab: MSTORE
000010ac: PUSH1 0x24
000010ae: DUP3
000010af: ADD
000010b0: MSTORE
000010b1: PUSH1 0x00
000010b3: DUP1
000010b4: MLOAD
000010b5: PUSH1 0x20
000010b7: PUSH2 0x5032
000010ba: DUP4
000010bb: CODECOPY
000010bc: DUP2
000010bd: MLOAD
000010be: SWAP2
000010bf: MSTORE
000010c0: PUSH1 0x44
000010c2: DUP3
000010c3: ADD
000010c4: MSTORE
000010c5: SWAP1
000010c6: MLOAD
000010c7: SWAP1
000010c8: DUP2
000010c9: SWAP1
000010ca: SUB
000010cb: PUSH1 0x64
000010cd: ADD
000010ce: SWAP1
000010cf: REVERT
000010d0: JUMPDEST
000010d1: PUSH2 0x10d8
000010d4: PUSH2 0x2daf
000010d7: JUMP
000010d8: JUMPDEST
000010d9: JUMP
000010da: JUMPDEST
000010db: PUSH1 0x0f
000010dd: PUSH1 0x20
000010df: MSTORE
000010e0: PUSH1 0x00
000010e2: SWAP1
000010e3: DUP2
000010e4: MSTORE
000010e5: PUSH1 0x40
000010e7: SWAP1
000010e8: KECCAK256
000010e9: SLOAD
000010ea: DUP2
000010eb: JUMP
000010ec: JUMPDEST
000010ed: PUSH2 0x10f4
000010f0: PUSH2 0x1171
000010f3: JUMP
000010f4: JUMPDEST
000010f5: ISZERO
000010f6: PUSH2 0x1139
000010f9: JUMPI
000010fa: PUSH1 0x40
000010fc: DUP1
000010fd: MLOAD
000010fe: PUSH3 0x461bcd
00001102: PUSH1 0xe5
00001104: SHL
00001105: DUP2
00001106: MSTORE
00001107: PUSH1 0x20
00001109: PUSH1 0x04
0000110b: DUP3
0000110c: ADD
0000110d: MSTORE
0000110e: PUSH1 0x10
00001110: PUSH1 0x24
00001112: DUP3
00001113: ADD
00001114: MSTORE
00001115: PUSH16 0x14185d5cd8589b194e881c185d5cd959
00001126: PUSH1 0x82
00001128: SHL
00001129: PUSH1 0x44
0000112b: DUP3
0000112c: ADD
0000112d: MSTORE
0000112e: SWAP1
0000112f: MLOAD
00001130: SWAP1
00001131: DUP2
00001132: SWAP1
00001133: SUB
00001134: PUSH1 0x64
00001136: ADD
00001137: SWAP1
00001138: REVERT
00001139: JUMPDEST
0000113a: PUSH2 0x1143
0000113d: DUP3
0000113e: DUP3
0000113f: PUSH2 0x2b8d
00001142: JUMP
00001143: JUMPDEST
00001144: PUSH2 0x1158
00001147: PUSH1 0x01
00001149: PUSH1 0x01
0000114b: PUSH1 0xa0
0000114d: SHL
0000114e: SUB
0000114f: DUP4
00001150: AND
00001151: CALLER
00001152: ADDRESS
00001153: DUP5
00001154: PUSH2 0x2e52
00001157: JUMP
00001158: JUMPDEST
00001159: POP
0000115a: POP
0000115b: JUMP
0000115c: JUMPDEST
0000115d: PUSH1 0x0e
0000115f: SLOAD
00001160: DUP2
00001161: JUMP
00001162: JUMPDEST
00001163: PUSH1 0x14
00001165: SLOAD
00001166: PUSH1 0x01
00001168: PUSH1 0x01
0000116a: PUSH1 0xa0
0000116c: SHL
0000116d: SUB
0000116e: AND
0000116f: DUP2
00001170: JUMP
00001171: JUMPDEST
00001172: PUSH1 0x00
00001174: SLOAD
00001175: PUSH1 0x01
00001177: PUSH1 0xa0
00001179: SHL
0000117a: SWAP1
0000117b: DIV
0000117c: PUSH1 0xff
0000117e: AND
0000117f: SWAP1
00001180: JUMP
00001181: JUMPDEST
00001182: PUSH1 0x10
00001184: PUSH1 0x20
00001186: MSTORE
00001187: PUSH1 0x00
00001189: SWAP1
0000118a: DUP2
0000118b: MSTORE
0000118c: PUSH1 0x40
0000118e: SWAP1
0000118f: KECCAK256
00001190: SLOAD
00001191: DUP2
00001192: JUMP
00001193: JUMPDEST
00001194: PUSH1 0x13
00001196: SLOAD
00001197: DUP2
00001198: JUMP
00001199: JUMPDEST
0000119a: PUSH2 0x11a1
0000119d: PUSH2 0x2dab
000011a0: JUMP
000011a1: JUMPDEST
000011a2: PUSH1 0x01
000011a4: PUSH1 0x01
000011a6: PUSH1 0xa0
000011a8: SHL
000011a9: SUB
000011aa: AND
000011ab: PUSH2 0x11b2
000011ae: PUSH2 0x1488
000011b1: JUMP
000011b2: JUMPDEST
000011b3: PUSH1 0x01
000011b5: PUSH1 0x01
000011b7: PUSH1 0xa0
000011b9: SHL
000011ba: SUB
000011bb: AND
000011bc: EQ
000011bd: PUSH2 0x11fb
000011c0: JUMPI
000011c1: PUSH1 0x40
000011c3: DUP1
000011c4: MLOAD
000011c5: PUSH3 0x461bcd
000011c9: PUSH1 0xe5
000011cb: SHL
000011cc: DUP2
000011cd: MSTORE
000011ce: PUSH1 0x20
000011d0: PUSH1 0x04
000011d2: DUP3
000011d3: ADD
000011d4: DUP2
000011d5: SWAP1
000011d6: MSTORE
000011d7: PUSH1 0x24
000011d9: DUP3
000011da: ADD
000011db: MSTORE
000011dc: PUSH1 0x00
000011de: DUP1
000011df: MLOAD
000011e0: PUSH1 0x20
000011e2: PUSH2 0x5032
000011e5: DUP4
000011e6: CODECOPY
000011e7: DUP2
000011e8: MLOAD
000011e9: SWAP2
000011ea: MSTORE
000011eb: PUSH1 0x44
000011ed: DUP3
000011ee: ADD
000011ef: MSTORE
000011f0: SWAP1
000011f1: MLOAD
000011f2: SWAP1
000011f3: DUP2
000011f4: SWAP1
000011f5: SUB
000011f6: PUSH1 0x64
000011f8: ADD
000011f9: SWAP1
000011fa: REVERT
000011fb: JUMPDEST
000011fc: PUSH1 0x00
000011fe: DUP1
000011ff: SLOAD
00001200: PUSH1 0x40
00001202: MLOAD
00001203: PUSH1 0x01
00001205: PUSH1 0x01
00001207: PUSH1 0xa0
00001209: SHL
0000120a: SUB
0000120b: SWAP1
0000120c: SWAP2
0000120d: AND
0000120e: SWAP1
0000120f: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
00001230: SWAP1
00001231: DUP4
00001232: SWAP1
00001233: LOG3
00001234: PUSH1 0x00
00001236: DUP1
00001237: SLOAD
00001238: PUSH1 0x01
0000123a: PUSH1 0x01
0000123c: PUSH1 0xa0
0000123e: SHL
0000123f: SUB
00001240: NOT
00001241: AND
00001242: SWAP1
00001243: SSTORE
00001244: JUMP
00001245: JUMPDEST
00001246: PUSH2 0x124d
00001249: PUSH2 0x2dab
0000124c: JUMP
0000124d: JUMPDEST
0000124e: PUSH1 0x01
00001250: PUSH1 0x01
00001252: PUSH1 0xa0
00001254: SHL
00001255: SUB
00001256: AND
00001257: PUSH2 0x125e
0000125a: PUSH2 0x1488
0000125d: JUMP
0000125e: JUMPDEST
0000125f: PUSH1 0x01
00001261: PUSH1 0x01
00001263: PUSH1 0xa0
00001265: SHL
00001266: SUB
00001267: AND
00001268: EQ
00001269: PUSH2 0x12a7
0000126c: JUMPI
0000126d: PUSH1 0x40
0000126f: DUP1
00001270: MLOAD
00001271: PUSH3 0x461bcd
00001275: PUSH1 0xe5
00001277: SHL
00001278: DUP2
00001279: MSTORE
0000127a: PUSH1 0x20
0000127c: PUSH1 0x04
0000127e: DUP3
0000127f: ADD
00001280: DUP2
00001281: SWAP1
00001282: MSTORE
00001283: PUSH1 0x24
00001285: DUP3
00001286: ADD
00001287: MSTORE
00001288: PUSH1 0x00
0000128a: DUP1
0000128b: MLOAD
0000128c: PUSH1 0x20
0000128e: PUSH2 0x5032
00001291: DUP4
00001292: CODECOPY
00001293: DUP2
00001294: MLOAD
00001295: SWAP2
00001296: MSTORE
00001297: PUSH1 0x44
00001299: DUP3
0000129a: ADD
0000129b: MSTORE
0000129c: SWAP1
0000129d: MLOAD
0000129e: SWAP1
0000129f: DUP2
000012a0: SWAP1
000012a1: SUB
000012a2: PUSH1 0x64
000012a4: ADD
000012a5: SWAP1
000012a6: REVERT
000012a7: JUMPDEST
000012a8: PUSH2 0x10d8
000012ab: PUSH2 0x2eac
000012ae: JUMP
000012af: JUMPDEST
000012b0: PUSH1 0x00
000012b2: DUP4
000012b3: PUSH1 0x20
000012b5: ADD
000012b6: CALLDATALOAD
000012b7: SWAP1
000012b8: POP
000012b9: PUSH1 0x00
000012bb: PUSH1 0x03
000012bd: DUP3
000012be: DUP2
000012bf: SLOAD
000012c0: DUP2
000012c1: LT
000012c2: PUSH2 0x12c7
000012c5: JUMPI
000012c6: INVALID
000012c7: JUMPDEST
000012c8: PUSH1 0x00
000012ca: SWAP2
000012cb: DUP3
000012cc: MSTORE
000012cd: PUSH1 0x20
000012cf: SWAP2
000012d0: DUP3
000012d1: SWAP1
000012d2: KECCAK256
000012d3: PUSH1 0x40
000012d5: DUP1
000012d6: MLOAD
000012d7: PUSH1 0x80
000012d9: DUP2
000012da: ADD
000012db: DUP3
000012dc: MSTORE
000012dd: PUSH1 0x03
000012df: SWAP1
000012e0: SWAP4
000012e1: MUL
000012e2: SWAP1
000012e3: SWAP2
000012e4: ADD
000012e5: DUP1
000012e6: SLOAD
000012e7: DUP4
000012e8: MSTORE
000012e9: PUSH1 0x01
000012eb: DUP2
000012ec: ADD
000012ed: SLOAD
000012ee: SWAP4
000012ef: DUP4
000012f0: ADD
000012f1: SWAP4
000012f2: SWAP1
000012f3: SWAP4
000012f4: MSTORE
000012f5: PUSH1 0x02
000012f7: SWAP1
000012f8: SWAP3
000012f9: ADD
000012fa: SLOAD
000012fb: PUSH1 0x01
000012fd: PUSH1 0x01
000012ff: PUSH1 0x80
00001301: SHL
00001302: SUB
00001303: DUP1
00001304: DUP3
00001305: AND
00001306: SWAP4
00001307: DUP4
00001308: ADD
00001309: DUP5
0000130a: SWAP1
0000130b: MSTORE
0000130c: PUSH1 0x01
0000130e: PUSH1 0x80
00001310: SHL
00001311: SWAP1
00001312: SWAP2
00001313: DIV
00001314: AND
00001315: PUSH1 0x60
00001317: DUP3
00001318: ADD
00001319: MSTORE
0000131a: PUSH1 0x12
0000131c: SLOAD
0000131d: SWAP1
0000131e: SWAP3
0000131f: POP
00001320: NUMBER
00001321: SWAP2
00001322: ADD
00001323: GT
00001324: PUSH2 0x133f
00001327: JUMPI
00001328: PUSH1 0x40
0000132a: MLOAD
0000132b: PUSH3 0x461bcd
0000132f: PUSH1 0xe5
00001331: SHL
00001332: DUP2
00001333: MSTORE
00001334: PUSH1 0x04
00001336: ADD
00001337: PUSH2 0x07cf
0000133a: SWAP1
0000133b: PUSH2 0x4ba9
0000133e: JUMP
0000133f: JUMPDEST
00001340: PUSH1 0x00
00001342: PUSH1 0x60
00001344: PUSH1 0x01
00001346: PUSH1 0x00
00001348: SWAP1
00001349: SLOAD
0000134a: SWAP1
0000134b: PUSH2 0x0100
0000134e: EXP
0000134f: SWAP1
00001350: DIV
00001351: PUSH1 0x01
00001353: PUSH1 0x01
00001355: PUSH1 0xa0
00001357: SHL
00001358: SUB
00001359: AND
0000135a: PUSH1 0x01
0000135c: PUSH1 0x01
0000135e: PUSH1 0xa0
00001360: SHL
00001361: SUB
00001362: AND
00001363: PUSH4 0x092dff58
00001368: PUSH1 0xe0
0000136a: SHL
0000136b: DUP10
0000136c: DUP10
0000136d: DUP10
0000136e: DUP10
0000136f: PUSH1 0x03
00001371: DUP15
00001372: PUSH1 0x20
00001374: ADD
00001375: CALLDATALOAD
00001376: DUP2
00001377: SLOAD
00001378: DUP2
00001379: LT
0000137a: PUSH2 0x137f
0000137d: JUMPI
0000137e: INVALID
0000137f: JUMPDEST
00001380: PUSH1 0x00
00001382: SWAP2
00001383: DUP3
00001384: MSTORE
00001385: PUSH1 0x20
00001387: SWAP1
00001388: SWAP2
00001389: KECCAK256
0000138a: PUSH1 0x02
0000138c: SLOAD
0000138d: PUSH1 0x40
0000138f: MLOAD
00001390: PUSH2 0x13b2
00001393: SWAP8
00001394: SWAP7
00001395: SWAP6
00001396: SWAP5
00001397: SWAP4
00001398: PUSH1 0x03
0000139a: MUL
0000139b: SWAP1
0000139c: SWAP3
0000139d: ADD
0000139e: SWAP2
0000139f: DUP13
000013a0: SWAP2
000013a1: PUSH1 0x01
000013a3: PUSH1 0x01
000013a5: PUSH1 0xa0
000013a7: SHL
000013a8: SUB
000013a9: AND
000013aa: SWAP1
000013ab: PUSH1 0x24
000013ad: ADD
000013ae: PUSH2 0x4cf1
000013b1: JUMP
000013b2: JUMPDEST
000013b3: PUSH1 0x40
000013b5: DUP1
000013b6: MLOAD
000013b7: PUSH1 0x1f
000013b9: NOT
000013ba: DUP2
000013bb: DUP5
000013bc: SUB
000013bd: ADD
000013be: DUP2
000013bf: MSTORE
000013c0: SWAP2
000013c1: DUP2
000013c2: MSTORE
000013c3: PUSH1 0x20
000013c5: DUP3
000013c6: ADD
000013c7: DUP1
000013c8: MLOAD
000013c9: PUSH1 0x01
000013cb: PUSH1 0x01
000013cd: PUSH1 0xe0
000013cf: SHL
000013d0: SUB
000013d1: AND
000013d2: PUSH1 0x01
000013d4: PUSH1 0x01
000013d6: PUSH1 0xe0
000013d8: SHL
000013d9: SUB
000013da: NOT
000013db: SWAP1
000013dc: SWAP5
000013dd: AND
000013de: SWAP4
000013df: SWAP1
000013e0: SWAP4
000013e1: OR
000013e2: SWAP1
000013e3: SWAP3
000013e4: MSTORE
000013e5: SWAP1
000013e6: MLOAD
000013e7: PUSH2 0x13f0
000013ea: SWAP2
000013eb: SWAP1
000013ec: PUSH2 0x46f4
000013ef: JUMP
000013f0: JUMPDEST
000013f1: PUSH1 0x00
000013f3: PUSH1 0x40
000013f5: MLOAD
000013f6: DUP1
000013f7: DUP4
000013f8: SUB
000013f9: DUP2
000013fa: PUSH1 0x00
000013fc: DUP7
000013fd: GAS
000013fe: CALL
000013ff: SWAP2
00001400: POP
00001401: POP
00001402: RETURNDATASIZE
00001403: DUP1
00001404: PUSH1 0x00
00001406: DUP2
00001407: EQ
00001408: PUSH2 0x142d
0000140b: JUMPI
0000140c: PUSH1 0x40
0000140e: MLOAD
0000140f: SWAP2
00001410: POP
00001411: PUSH1 0x1f
00001413: NOT
00001414: PUSH1 0x3f
00001416: RETURNDATASIZE
00001417: ADD
00001418: AND
00001419: DUP3
0000141a: ADD
0000141b: PUSH1 0x40
0000141d: MSTORE
0000141e: RETURNDATASIZE
0000141f: DUP3
00001420: MSTORE
00001421: RETURNDATASIZE
00001422: PUSH1 0x00
00001424: PUSH1 0x20
00001426: DUP5
00001427: ADD
00001428: RETURNDATACOPY
00001429: PUSH2 0x1432
0000142c: JUMP
0000142d: JUMPDEST
0000142e: PUSH1 0x60
00001430: SWAP2
00001431: POP
00001432: JUMPDEST
00001433: POP
00001434: SWAP1
00001435: SWAP3
00001436: POP
00001437: SWAP1
00001438: POP
00001439: DUP2
0000143a: ISZERO
0000143b: PUSH2 0x1466
0000143e: JUMPI
0000143f: PUSH1 0x00
00001441: DUP2
00001442: DUP1
00001443: PUSH1 0x20
00001445: ADD
00001446: SWAP1
00001447: MLOAD
00001448: DUP2
00001449: ADD
0000144a: SWAP1
0000144b: PUSH2 0x1454
0000144e: SWAP2
0000144f: SWAP1
00001450: PUSH2 0x40ee
00001453: JUMP
00001454: JUMPDEST
00001455: SWAP1
00001456: POP
00001457: PUSH2 0x1460
0000145a: DUP6
0000145b: DUP3
0000145c: PUSH2 0x2f35
0000145f: JUMP
00001460: JUMPDEST
00001461: POP
00001462: PUSH2 0x147e
00001465: JUMP
00001466: JUMPDEST
00001467: PUSH1 0x40
00001469: MLOAD
0000146a: PUSH3 0x461bcd
0000146e: PUSH1 0xe5
00001470: SHL
00001471: DUP2
00001472: MSTORE
00001473: PUSH1 0x04
00001475: ADD
00001476: PUSH2 0x07cf
00001479: SWAP1
0000147a: PUSH2 0x4848
0000147d: JUMP
0000147e: JUMPDEST
0000147f: POP
00001480: POP
00001481: POP
00001482: POP
00001483: POP
00001484: POP
00001485: POP
00001486: POP
00001487: JUMP
00001488: JUMPDEST
00001489: PUSH1 0x00
0000148b: SLOAD
0000148c: PUSH1 0x01
0000148e: PUSH1 0x01
00001490: PUSH1 0xa0
00001492: SHL
00001493: SUB
00001494: AND
00001495: SWAP1
00001496: JUMP
00001497: JUMPDEST
00001498: PUSH2 0x149f
0000149b: PUSH2 0x1171
0000149e: JUMP
0000149f: JUMPDEST
000014a0: ISZERO
000014a1: PUSH2 0x14e4
000014a4: JUMPI
000014a5: PUSH1 0x40
000014a7: DUP1
000014a8: MLOAD
000014a9: PUSH3 0x461bcd
000014ad: PUSH1 0xe5
000014af: SHL
000014b0: DUP2
000014b1: MSTORE
000014b2: PUSH1 0x20
000014b4: PUSH1 0x04
000014b6: DUP3
000014b7: ADD
000014b8: MSTORE
000014b9: PUSH1 0x10
000014bb: PUSH1 0x24
000014bd: DUP3
000014be: ADD
000014bf: MSTORE
000014c0: PUSH16 0x14185d5cd8589b194e881c185d5cd959
000014d1: PUSH1 0x82
000014d3: SHL
000014d4: PUSH1 0x44
000014d6: DUP3
000014d7: ADD
000014d8: MSTORE
000014d9: SWAP1
000014da: MLOAD
000014db: SWAP1
000014dc: DUP2
000014dd: SWAP1
000014de: SUB
000014df: PUSH1 0x64
000014e1: ADD
000014e2: SWAP1
000014e3: REVERT
000014e4: JUMPDEST
000014e5: PUSH1 0x00
000014e7: PUSH2 0x14f0
000014ea: DUP4
000014eb: DUP4
000014ec: PUSH2 0x30c6
000014ef: JUMP
000014f0: JUMPDEST
000014f1: PUSH1 0x40
000014f3: MLOAD
000014f4: PUSH4 0x2e1a7d4d
000014f9: PUSH1 0xe0
000014fb: SHL
000014fc: DUP2
000014fd: MSTORE
000014fe: SWAP1
000014ff: SWAP2
00001500: POP
00001501: PUSH1 0x01
00001503: PUSH1 0x01
00001505: PUSH1 0xa0
00001507: SHL
00001508: SUB
00001509: DUP4
0000150a: AND
0000150b: SWAP1
0000150c: PUSH4 0x2e1a7d4d
00001511: SWAP1
00001512: PUSH2 0x151f
00001515: SWAP1
00001516: DUP5
00001517: SWAP1
00001518: PUSH1 0x04
0000151a: ADD
0000151b: PUSH2 0x4e73
0000151e: JUMP
0000151f: JUMPDEST
00001520: PUSH1 0x00
00001522: PUSH1 0x40
00001524: MLOAD
00001525: DUP1
00001526: DUP4
00001527: SUB
00001528: DUP2
00001529: PUSH1 0x00
0000152b: DUP8
0000152c: DUP1
0000152d: EXTCODESIZE
0000152e: ISZERO
0000152f: DUP1
00001530: ISZERO
00001531: PUSH2 0x1539
00001534: JUMPI
00001535: PUSH1 0x00
00001537: DUP1
00001538: REVERT
00001539: JUMPDEST
0000153a: POP
0000153b: GAS
0000153c: CALL
0000153d: ISZERO
0000153e: DUP1
0000153f: ISZERO
00001540: PUSH2 0x154d
00001543: JUMPI
00001544: RETURNDATASIZE
00001545: PUSH1 0x00
00001547: DUP1
00001548: RETURNDATACOPY
00001549: RETURNDATASIZE
0000154a: PUSH1 0x00
0000154c: REVERT
0000154d: JUMPDEST
0000154e: POP
0000154f: POP
00001550: POP
00001551: POP
00001552: PUSH1 0x00
00001554: DUP4
00001555: PUSH1 0x01
00001557: PUSH1 0x01
00001559: PUSH1 0xa0
0000155b: SHL
0000155c: SUB
0000155d: AND
0000155e: DUP3
0000155f: PUSH1 0x40
00001561: MLOAD
00001562: PUSH2 0x156a
00001565: SWAP1
00001566: PUSH2 0x4710
00001569: JUMP
0000156a: JUMPDEST
0000156b: PUSH1 0x00
0000156d: PUSH1 0x40
0000156f: MLOAD
00001570: DUP1
00001571: DUP4
00001572: SUB
00001573: DUP2
00001574: DUP6
00001575: DUP8
00001576: GAS
00001577: CALL
00001578: SWAP3
00001579: POP
0000157a: POP
0000157b: POP
0000157c: RETURNDATASIZE
0000157d: DUP1
0000157e: PUSH1 0x00
00001580: DUP2
00001581: EQ
00001582: PUSH2 0x15a7
00001585: JUMPI
00001586: PUSH1 0x40
00001588: MLOAD
00001589: SWAP2
0000158a: POP
0000158b: PUSH1 0x1f
0000158d: NOT
0000158e: PUSH1 0x3f
00001590: RETURNDATASIZE
00001591: ADD
00001592: AND
00001593: DUP3
00001594: ADD
00001595: PUSH1 0x40
00001597: MSTORE
00001598: RETURNDATASIZE
00001599: DUP3
0000159a: MSTORE
0000159b: RETURNDATASIZE
0000159c: PUSH1 0x00
0000159e: PUSH1 0x20
000015a0: DUP5
000015a1: ADD
000015a2: RETURNDATACOPY
000015a3: PUSH2 0x15ac
000015a6: JUMP
000015a7: JUMPDEST
000015a8: PUSH1 0x60
000015aa: SWAP2
000015ab: POP
000015ac: JUMPDEST
000015ad: POP
000015ae: POP
000015af: SWAP1
000015b0: POP
000015b1: DUP1
000015b2: PUSH2 0x15cd
000015b5: JUMPI
000015b6: PUSH1 0x40
000015b8: MLOAD
000015b9: PUSH3 0x461bcd
000015bd: PUSH1 0xe5
000015bf: SHL
000015c0: DUP2
000015c1: MSTORE
000015c2: PUSH1 0x04
000015c4: ADD
000015c5: PUSH2 0x07cf
000015c8: SWAP1
000015c9: PUSH2 0x4970
000015cc: JUMP
000015cd: JUMPDEST
000015ce: POP
000015cf: POP
000015d0: POP
000015d1: POP
000015d2: JUMP
000015d3: JUMPDEST
000015d4: PUSH1 0x06
000015d6: SLOAD
000015d7: DUP2
000015d8: JUMP
000015d9: JUMPDEST
000015da: PUSH2 0x15e1
000015dd: PUSH2 0x1171
000015e0: JUMP
000015e1: JUMPDEST
000015e2: ISZERO
000015e3: PUSH2 0x1626
000015e6: JUMPI
000015e7: PUSH1 0x40
000015e9: DUP1
000015ea: MLOAD
000015eb: PUSH3 0x461bcd
000015ef: PUSH1 0xe5
000015f1: SHL
000015f2: DUP2
000015f3: MSTORE
000015f4: PUSH1 0x20
000015f6: PUSH1 0x04
000015f8: DUP3
000015f9: ADD
000015fa: MSTORE
000015fb: PUSH1 0x10
000015fd: PUSH1 0x24
000015ff: DUP3
00001600: ADD
00001601: MSTORE
00001602: PUSH16 0x14185d5cd8589b194e881c185d5cd959
00001613: PUSH1 0x82
00001615: SHL
00001616: PUSH1 0x44
00001618: DUP3
00001619: ADD
0000161a: MSTORE
0000161b: SWAP1
0000161c: MLOAD
0000161d: SWAP1
0000161e: DUP2
0000161f: SWAP1
00001620: SUB
00001621: PUSH1 0x64
00001623: ADD
00001624: SWAP1
00001625: REVERT
00001626: JUMPDEST
00001627: PUSH1 0x14
00001629: SLOAD
0000162a: PUSH1 0x01
0000162c: PUSH1 0x01
0000162e: PUSH1 0xa0
00001630: SHL
00001631: SUB
00001632: AND
00001633: CALLER
00001634: EQ
00001635: PUSH2 0x1650
00001638: JUMPI
00001639: PUSH1 0x40
0000163b: MLOAD
0000163c: PUSH3 0x461bcd
00001640: PUSH1 0xe5
00001642: SHL
00001643: DUP2
00001644: MSTORE
00001645: PUSH1 0x04
00001647: ADD
00001648: PUSH2 0x07cf
0000164b: SWAP1
0000164c: PUSH2 0x4c4c
0000164f: JUMP
00001650: JUMPDEST
00001651: PUSH1 0x02
00001653: SLOAD
00001654: PUSH1 0x40
00001656: MLOAD
00001657: PUSH4 0x5a2f9ddb
0000165c: PUSH1 0xe1
0000165e: SHL
0000165f: DUP2
00001660: MSTORE
00001661: PUSH1 0x00
00001663: SWAP2
00001664: PUSH1 0x01
00001666: PUSH1 0x01
00001668: PUSH1 0xa0
0000166a: SHL
0000166b: SUB
0000166c: AND
0000166d: SWAP1
0000166e: PUSH4 0xb45f3bb6
00001673: SWAP1
00001674: PUSH2 0x1681
00001677: SWAP1
00001678: DUP6
00001679: SWAP1
0000167a: PUSH1 0x04
0000167c: ADD
0000167d: PUSH2 0x4eb6
00001680: JUMP
00001681: JUMPDEST
00001682: PUSH1 0x20
00001684: PUSH1 0x40
00001686: MLOAD
00001687: DUP1
00001688: DUP4
00001689: SUB
0000168a: DUP2
0000168b: DUP7
0000168c: DUP1
0000168d: EXTCODESIZE
0000168e: ISZERO
0000168f: DUP1
00001690: ISZERO
00001691: PUSH2 0x1699
00001694: JUMPI
00001695: PUSH1 0x00
00001697: DUP1
00001698: REVERT
00001699: JUMPDEST
0000169a: POP
0000169b: GAS
0000169c: STATICCALL
0000169d: ISZERO
0000169e: DUP1
0000169f: ISZERO
000016a0: PUSH2 0x16ad
000016a3: JUMPI
000016a4: RETURNDATASIZE
000016a5: PUSH1 0x00
000016a7: DUP1
000016a8: RETURNDATACOPY
000016a9: RETURNDATASIZE
000016aa: PUSH1 0x00
000016ac: REVERT
000016ad: JUMPDEST
000016ae: POP
000016af: POP
000016b0: POP
000016b1: POP
000016b2: PUSH1 0x40
000016b4: MLOAD
000016b5: RETURNDATASIZE
000016b6: PUSH1 0x1f
000016b8: NOT
000016b9: PUSH1 0x1f
000016bb: DUP3
000016bc: ADD
000016bd: AND
000016be: DUP3
000016bf: ADD
000016c0: DUP1
000016c1: PUSH1 0x40
000016c3: MSTORE
000016c4: POP
000016c5: DUP2
000016c6: ADD
000016c7: SWAP1
000016c8: PUSH2 0x16d1
000016cb: SWAP2
000016cc: SWAP1
000016cd: PUSH2 0x4002
000016d0: JUMP
000016d1: JUMPDEST
000016d2: SWAP1
000016d3: POP
000016d4: PUSH1 0x01
000016d6: PUSH1 0x01
000016d8: PUSH1 0xa0
000016da: SHL
000016db: SUB
000016dc: DUP2
000016dd: AND
000016de: PUSH2 0x16f9
000016e1: JUMPI
000016e2: PUSH1 0x40
000016e4: MLOAD
000016e5: PUSH3 0x461bcd
000016e9: PUSH1 0xe5
000016eb: SHL
000016ec: DUP2
000016ed: MSTORE
000016ee: PUSH1 0x04
000016f0: ADD
000016f1: PUSH2 0x07cf
000016f4: SWAP1
000016f5: PUSH2 0x4a15
000016f8: JUMP
000016f9: JUMPDEST
000016fa: PUSH1 0x00
000016fc: DUP2
000016fd: PUSH1 0x01
000016ff: PUSH1 0x01
00001701: PUSH1 0xa0
00001703: SHL
00001704: SUB
00001705: AND
00001706: PUSH4 0xfd9c652b
0000170b: PUSH1 0x40
0000170d: MLOAD
0000170e: DUP2
0000170f: PUSH4 0xffffffff
00001714: AND
00001715: PUSH1 0xe0
00001717: SHL
00001718: DUP2
00001719: MSTORE
0000171a: PUSH1 0x04
0000171c: ADD
0000171d: PUSH1 0x20
0000171f: PUSH1 0x40
00001721: MLOAD
00001722: DUP1
00001723: DUP4
00001724: SUB
00001725: DUP2
00001726: PUSH1 0x00
00001728: DUP8
00001729: DUP1
0000172a: EXTCODESIZE
0000172b: ISZERO
0000172c: DUP1
0000172d: ISZERO
0000172e: PUSH2 0x1736
00001731: JUMPI
00001732: PUSH1 0x00
00001734: DUP1
00001735: REVERT
00001736: JUMPDEST
00001737: POP
00001738: GAS
00001739: CALL
0000173a: ISZERO
0000173b: DUP1
0000173c: ISZERO
0000173d: PUSH2 0x174a
00001740: JUMPI
00001741: RETURNDATASIZE
00001742: PUSH1 0x00
00001744: DUP1
00001745: RETURNDATACOPY
00001746: RETURNDATASIZE
00001747: PUSH1 0x00
00001749: REVERT
0000174a: JUMPDEST
0000174b: POP
0000174c: POP
0000174d: POP
0000174e: POP
0000174f: PUSH1 0x40
00001751: MLOAD
00001752: RETURNDATASIZE
00001753: PUSH1 0x1f
00001755: NOT
00001756: PUSH1 0x1f
00001758: DUP3
00001759: ADD
0000175a: AND
0000175b: DUP3
0000175c: ADD
0000175d: DUP1
0000175e: PUSH1 0x40
00001760: MSTORE
00001761: POP
00001762: DUP2
00001763: ADD
00001764: SWAP1
00001765: PUSH2 0x176e
00001768: SWAP2
00001769: SWAP1
0000176a: PUSH2 0x41f9
0000176d: JUMP
0000176e: JUMPDEST
0000176f: PUSH4 0xffffffff
00001774: DUP5
00001775: AND
00001776: PUSH1 0x00
00001778: SWAP1
00001779: DUP2
0000177a: MSTORE
0000177b: PUSH1 0x0f
0000177d: PUSH1 0x20
0000177f: MSTORE
00001780: PUSH1 0x40
00001782: DUP2
00001783: KECCAK256
00001784: SLOAD
00001785: SWAP2
00001786: SWAP3
00001787: POP
00001788: DUP2
00001789: DUP4
0000178a: LT
0000178b: PUSH2 0x179f
0000178e: JUMPI
0000178f: PUSH2 0x1798
00001792: DUP4
00001793: DUP4
00001794: PUSH2 0x29e4
00001797: JUMP
00001798: JUMPDEST
00001799: SWAP1
0000179a: POP
0000179b: PUSH2 0x17af
0000179e: JUMP
0000179f: JUMPDEST
000017a0: PUSH2 0x17a9
000017a3: DUP3
000017a4: DUP5
000017a5: PUSH2 0x29e4
000017a8: JUMP
000017a9: JUMPDEST
000017aa: PUSH1 0x00
000017ac: SUB
000017ad: SWAP1
000017ae: POP
000017af: JUMPDEST
000017b0: PUSH4 0xffffffff
000017b5: DUP6
000017b6: AND
000017b7: PUSH1 0x00
000017b9: SWAP1
000017ba: DUP2
000017bb: MSTORE
000017bc: PUSH1 0x0f
000017be: PUSH1 0x20
000017c0: SWAP1
000017c1: DUP2
000017c2: MSTORE
000017c3: PUSH1 0x40
000017c5: DUP1
000017c6: DUP4
000017c7: KECCAK256
000017c8: DUP7
000017c9: SWAP1
000017ca: SSTORE
000017cb: PUSH1 0x0e
000017cd: DUP1
000017ce: SLOAD
000017cf: PUSH1 0x01
000017d1: DUP2
000017d2: ADD
000017d3: SWAP1
000017d4: SWAP2
000017d5: SSTORE
000017d6: SWAP1
000017d7: MLOAD
000017d8: SWAP1
000017d9: SWAP3
000017da: SWAP2
000017db: PUSH2 0x17e8
000017de: SWAP2
000017df: DUP10
000017e0: SWAP2
000017e1: DUP7
000017e2: SWAP2
000017e3: ADD
000017e4: PUSH2 0x4713
000017e7: JUMP
000017e8: JUMPDEST
000017e9: PUSH1 0x40
000017eb: DUP1
000017ec: MLOAD
000017ed: PUSH1 0x1f
000017ef: NOT
000017f0: DUP2
000017f1: DUP5
000017f2: SUB
000017f3: ADD
000017f4: DUP2
000017f5: MSTORE
000017f6: DUP3
000017f7: DUP3
000017f8: MSTORE
000017f9: DUP1
000017fa: MLOAD
000017fb: PUSH1 0x20
000017fd: SWAP2
000017fe: DUP3
000017ff: ADD
00001800: KECCAK256
00001801: PUSH1 0x60
00001803: DUP5
00001804: ADD
00001805: DUP4
00001806: MSTORE
00001807: DUP1
00001808: DUP5
00001809: MSTORE
0000180a: PUSH1 0x03
0000180c: SLOAD
0000180d: PUSH8 0xffffffffffffffff
00001816: AND
00001817: SWAP2
00001818: DUP5
00001819: ADD
0000181a: SWAP2
0000181b: SWAP1
0000181c: SWAP2
0000181d: MSTORE
0000181e: SWAP3
0000181f: POP
00001820: DUP2
00001821: ADD
00001822: PUSH1 0x00
00001824: SWAP1
00001825: MSTORE
00001826: PUSH1 0x00
00001828: DUP4
00001829: DUP2
0000182a: MSTORE
0000182b: PUSH1 0x0b
0000182d: PUSH1 0x20
0000182f: SWAP1
00001830: DUP2
00001831: MSTORE
00001832: PUSH1 0x40
00001834: SWAP2
00001835: DUP3
00001836: SWAP1
00001837: KECCAK256
00001838: DUP4
00001839: MLOAD
0000183a: DUP2
0000183b: SSTORE
0000183c: SWAP1
0000183d: DUP4
0000183e: ADD
0000183f: MLOAD
00001840: PUSH1 0x01
00001842: DUP1
00001843: DUP4
00001844: ADD
00001845: DUP1
00001846: SLOAD
00001847: PUSH8 0xffffffffffffffff
00001850: NOT
00001851: AND
00001852: PUSH8 0xffffffffffffffff
0000185b: SWAP1
0000185c: SWAP4
0000185d: AND
0000185e: SWAP3
0000185f: SWAP1
00001860: SWAP3
00001861: OR
00001862: DUP1
00001863: DUP4
00001864: SSTORE
00001865: SWAP4
00001866: DUP6
00001867: ADD
00001868: MLOAD
00001869: SWAP3
0000186a: SWAP4
0000186b: PUSH1 0xff
0000186d: PUSH1 0x40
0000186f: SHL
00001870: NOT
00001871: AND
00001872: SWAP1
00001873: PUSH1 0x01
00001875: PUSH1 0x40
00001877: SHL
00001878: SWAP1
00001879: DUP5
0000187a: SWAP1
0000187b: DUP2
0000187c: GT
0000187d: ISZERO
0000187e: PUSH2 0x1883
00001881: JUMPI
00001882: INVALID
00001883: JUMPDEST
00001884: MUL
00001885: OR
00001886: SWAP1
00001887: SSTORE
00001888: POP
00001889: SWAP1
0000188a: POP
0000188b: POP
0000188c: PUSH32 0x0fd8e389fca8b6a7e1044129d3ab36e1d3c299a2100fdedd302084044b79f841
000018ad: DUP8
000018ae: DUP5
000018af: DUP5
000018b0: PUSH1 0x40
000018b2: MLOAD
000018b3: PUSH2 0x18be
000018b6: SWAP4
000018b7: SWAP3
000018b8: SWAP2
000018b9: SWAP1
000018ba: PUSH2 0x4ec7
000018bd: JUMP
000018be: JUMPDEST
000018bf: PUSH1 0x40
000018c1: MLOAD
000018c2: DUP1
000018c3: SWAP2
000018c4: SUB
000018c5: SWAP1
000018c6: LOG1
000018c7: POP
000018c8: POP
000018c9: POP
000018ca: POP
000018cb: POP
000018cc: POP
000018cd: POP
000018ce: JUMP
000018cf: JUMPDEST
000018d0: PUSH2 0x18d7
000018d3: PUSH2 0x1171
000018d6: JUMP
000018d7: JUMPDEST
000018d8: PUSH2 0x191f
000018db: JUMPI
000018dc: PUSH1 0x40
000018de: DUP1
000018df: MLOAD
000018e0: PUSH3 0x461bcd
000018e4: PUSH1 0xe5
000018e6: SHL
000018e7: DUP2
000018e8: MSTORE
000018e9: PUSH1 0x20
000018eb: PUSH1 0x04
000018ed: DUP3
000018ee: ADD
000018ef: MSTORE
000018f0: PUSH1 0x14
000018f2: PUSH1 0x24
000018f4: DUP3
000018f5: ADD
000018f6: MSTORE
000018f7: PUSH20 0x14185d5cd8589b194e881b9bdd081c185d5cd959
0000190c: PUSH1 0x62
0000190e: SHL
0000190f: PUSH1 0x44
00001911: DUP3
00001912: ADD
00001913: MSTORE
00001914: SWAP1
00001915: MLOAD
00001916: SWAP1
00001917: DUP2
00001918: SWAP1
00001919: SUB
0000191a: PUSH1 0x64
0000191c: ADD
0000191d: SWAP1
0000191e: REVERT
0000191f: JUMPDEST
00001920: PUSH2 0x1927
00001923: PUSH2 0x2dab
00001926: JUMP
00001927: JUMPDEST
00001928: PUSH1 0x01
0000192a: PUSH1 0x01
0000192c: PUSH1 0xa0
0000192e: SHL
0000192f: SUB
00001930: AND
00001931: PUSH2 0x1938
00001934: PUSH2 0x1488
00001937: JUMP
00001938: JUMPDEST
00001939: PUSH1 0x01
0000193b: PUSH1 0x01
0000193d: PUSH1 0xa0
0000193f: SHL
00001940: SUB
00001941: AND
00001942: EQ
00001943: PUSH2 0x1981
00001946: JUMPI
00001947: PUSH1 0x40
00001949: DUP1
0000194a: MLOAD
0000194b: PUSH3 0x461bcd
0000194f: PUSH1 0xe5
00001951: SHL
00001952: DUP2
00001953: MSTORE
00001954: PUSH1 0x20
00001956: PUSH1 0x04
00001958: DUP3
00001959: ADD
0000195a: DUP2
0000195b: SWAP1
0000195c: MSTORE
0000195d: PUSH1 0x24
0000195f: DUP3
00001960: ADD
00001961: MSTORE
00001962: PUSH1 0x00
00001964: DUP1
00001965: MLOAD
00001966: PUSH1 0x20
00001968: PUSH2 0x5032
0000196b: DUP4
0000196c: CODECOPY
0000196d: DUP2
0000196e: MLOAD
0000196f: SWAP2
00001970: MSTORE
00001971: PUSH1 0x44
00001973: DUP3
00001974: ADD
00001975: MSTORE
00001976: SWAP1
00001977: MLOAD
00001978: SWAP1
00001979: DUP2
0000197a: SWAP1
0000197b: SUB
0000197c: PUSH1 0x64
0000197e: ADD
0000197f: SWAP1
00001980: REVERT
00001981: JUMPDEST
00001982: PUSH2 0x1158
00001985: PUSH1 0x01
00001987: PUSH1 0x01
00001989: PUSH1 0xa0
0000198b: SHL
0000198c: SUB
0000198d: DUP4
0000198e: AND
0000198f: CALLER
00001990: DUP4
00001991: PUSH2 0x32a5
00001994: JUMP
00001995: JUMPDEST
00001996: PUSH1 0x11
00001998: PUSH1 0x20
0000199a: MSTORE
0000199b: PUSH1 0x00
0000199d: SWAP1
0000199e: DUP2
0000199f: MSTORE
000019a0: PUSH1 0x40
000019a2: SWAP1
000019a3: KECCAK256
000019a4: SLOAD
000019a5: DUP2
000019a6: JUMP
000019a7: JUMPDEST
000019a8: PUSH1 0x09
000019aa: PUSH1 0x20
000019ac: MSTORE
000019ad: DUP2
000019ae: PUSH1 0x00
000019b0: MSTORE
000019b1: PUSH1 0x40
000019b3: PUSH1 0x00
000019b5: KECCAK256
000019b6: DUP2
000019b7: DUP2
000019b8: SLOAD
000019b9: DUP2
000019ba: LT
000019bb: PUSH2 0x19c3
000019be: JUMPI
000019bf: PUSH1 0x00
000019c1: DUP1
000019c2: REVERT
000019c3: JUMPDEST
000019c4: PUSH1 0x00
000019c6: SWAP2
000019c7: DUP3
000019c8: MSTORE
000019c9: PUSH1 0x20
000019cb: SWAP1
000019cc: SWAP2
000019cd: KECCAK256
000019ce: PUSH1 0x02
000019d0: SWAP1
000019d1: SWAP2
000019d2: MUL
000019d3: ADD
000019d4: DUP1
000019d5: SLOAD
000019d6: PUSH1 0x01
000019d8: SWAP1
000019d9: SWAP2
000019da: ADD
000019db: SLOAD
000019dc: PUSH1 0x01
000019de: PUSH1 0x01
000019e0: PUSH1 0xa0
000019e2: SHL
000019e3: SUB
000019e4: DUP3
000019e5: AND
000019e6: SWAP4
000019e7: POP
000019e8: PUSH1 0x01
000019ea: PUSH1 0xa0
000019ec: SHL
000019ed: SWAP1
000019ee: SWAP2
000019ef: DIV
000019f0: PUSH4 0xffffffff
000019f5: AND
000019f6: SWAP2
000019f7: POP
000019f8: DUP4
000019f9: JUMP
000019fa: JUMPDEST
000019fb: PUSH1 0x05
000019fd: PUSH1 0x20
000019ff: MSTORE
00001a00: PUSH1 0x00
00001a02: SWAP1
00001a03: DUP2
00001a04: MSTORE
00001a05: PUSH1 0x40
00001a07: SWAP1
00001a08: KECCAK256
00001a09: DUP1
00001a0a: SLOAD
00001a0b: PUSH1 0x01
00001a0d: SWAP1
00001a0e: SWAP2
00001a0f: ADD
00001a10: SLOAD
00001a11: PUSH8 0xffffffffffffffff
00001a1a: DUP2
00001a1b: AND
00001a1c: SWAP1
00001a1d: PUSH1 0x01
00001a1f: PUSH1 0x40
00001a21: SHL
00001a22: SWAP1
00001a23: DIV
00001a24: PUSH1 0xff
00001a26: AND
00001a27: DUP4
00001a28: JUMP
00001a29: JUMPDEST
00001a2a: PUSH1 0x0d
00001a2c: SLOAD
00001a2d: DUP2
00001a2e: JUMP
00001a2f: JUMPDEST
00001a30: PUSH1 0x08
00001a32: SLOAD
00001a33: DUP2
00001a34: JUMP
00001a35: JUMPDEST
00001a36: PUSH1 0x03
00001a38: SLOAD
00001a39: PUSH1 0x00
00001a3b: NOT
00001a3c: ADD
00001a3d: SWAP1
00001a3e: JUMP
00001a3f: JUMPDEST
00001a40: PUSH2 0x1a47
00001a43: PUSH2 0x2dab
00001a46: JUMP
00001a47: JUMPDEST
00001a48: PUSH1 0x01
00001a4a: PUSH1 0x01
00001a4c: PUSH1 0xa0
00001a4e: SHL
00001a4f: SUB
00001a50: AND
00001a51: PUSH2 0x1a58
00001a54: PUSH2 0x1488
00001a57: JUMP
00001a58: JUMPDEST
00001a59: PUSH1 0x01
00001a5b: PUSH1 0x01
00001a5d: PUSH1 0xa0
00001a5f: SHL
00001a60: SUB
00001a61: AND
00001a62: EQ
00001a63: PUSH2 0x1aa1
00001a66: JUMPI
00001a67: PUSH1 0x40
00001a69: DUP1
00001a6a: MLOAD
00001a6b: PUSH3 0x461bcd
00001a6f: PUSH1 0xe5
00001a71: SHL
00001a72: DUP2
00001a73: MSTORE
00001a74: PUSH1 0x20
00001a76: PUSH1 0x04
00001a78: DUP3
00001a79: ADD
00001a7a: DUP2
00001a7b: SWAP1
00001a7c: MSTORE
00001a7d: PUSH1 0x24
00001a7f: DUP3
00001a80: ADD
00001a81: MSTORE
00001a82: PUSH1 0x00
00001a84: DUP1
00001a85: MLOAD
00001a86: PUSH1 0x20
00001a88: PUSH2 0x5032
00001a8b: DUP4
00001a8c: CODECOPY
00001a8d: DUP2
00001a8e: MLOAD
00001a8f: SWAP2
00001a90: MSTORE
00001a91: PUSH1 0x44
00001a93: DUP3
00001a94: ADD
00001a95: MSTORE
00001a96: SWAP1
00001a97: MLOAD
00001a98: SWAP1
00001a99: DUP2
00001a9a: SWAP1
00001a9b: SUB
00001a9c: PUSH1 0x64
00001a9e: ADD
00001a9f: SWAP1
00001aa0: REVERT
00001aa1: JUMPDEST
00001aa2: PUSH1 0x14
00001aa4: SLOAD
00001aa5: PUSH1 0x40
00001aa7: MLOAD
00001aa8: PUSH32 0xd58299b712891143e76310d5e664c4203c940a67db37cf856bdaa3c5c76a802c
00001ac9: SWAP2
00001aca: PUSH2 0x1ae0
00001acd: SWAP2
00001ace: PUSH1 0x01
00001ad0: PUSH1 0x01
00001ad2: PUSH1 0xa0
00001ad4: SHL
00001ad5: SUB
00001ad6: SWAP1
00001ad7: SWAP2
00001ad8: AND
00001ad9: SWAP1
00001ada: DUP5
00001adb: SWAP1
00001adc: PUSH2 0x4744
00001adf: JUMP
00001ae0: JUMPDEST
00001ae1: PUSH1 0x40
00001ae3: MLOAD
00001ae4: DUP1
00001ae5: SWAP2
00001ae6: SUB
00001ae7: SWAP1
00001ae8: LOG1
00001ae9: PUSH1 0x14
00001aeb: DUP1
00001aec: SLOAD
00001aed: PUSH1 0x01
00001aef: PUSH1 0x01
00001af1: PUSH1 0xa0
00001af3: SHL
00001af4: SUB
00001af5: NOT
00001af6: AND
00001af7: PUSH1 0x01
00001af9: PUSH1 0x01
00001afb: PUSH1 0xa0
00001afd: SHL
00001afe: SUB
00001aff: SWAP3
00001b00: SWAP1
00001b01: SWAP3
00001b02: AND
00001b03: SWAP2
00001b04: SWAP1
00001b05: SWAP2
00001b06: OR
00001b07: SWAP1
00001b08: SSTORE
00001b09: JUMP
00001b0a: JUMPDEST
00001b0b: PUSH1 0x12
00001b0d: SLOAD
00001b0e: DUP2
00001b0f: JUMP
00001b10: JUMPDEST
00001b11: PUSH2 0x1b18
00001b14: PUSH2 0x2dab
00001b17: JUMP
00001b18: JUMPDEST
00001b19: PUSH1 0x01
00001b1b: PUSH1 0x01
00001b1d: PUSH1 0xa0
00001b1f: SHL
00001b20: SUB
00001b21: AND
00001b22: PUSH2 0x1b29
00001b25: PUSH2 0x1488
00001b28: JUMP
00001b29: JUMPDEST
00001b2a: PUSH1 0x01
00001b2c: PUSH1 0x01
00001b2e: PUSH1 0xa0
00001b30: SHL
00001b31: SUB
00001b32: AND
00001b33: EQ
00001b34: PUSH2 0x1b72
00001b37: JUMPI
00001b38: PUSH1 0x40
00001b3a: DUP1
00001b3b: MLOAD
00001b3c: PUSH3 0x461bcd
00001b40: PUSH1 0xe5
00001b42: SHL
00001b43: DUP2
00001b44: MSTORE
00001b45: PUSH1 0x20
00001b47: PUSH1 0x04
00001b49: DUP3
00001b4a: ADD
00001b4b: DUP2
00001b4c: SWAP1
00001b4d: MSTORE
00001b4e: PUSH1 0x24
00001b50: DUP3
00001b51: ADD
00001b52: MSTORE
00001b53: PUSH1 0x00
00001b55: DUP1
00001b56: MLOAD
00001b57: PUSH1 0x20
00001b59: PUSH2 0x5032
00001b5c: DUP4
00001b5d: CODECOPY
00001b5e: DUP2
00001b5f: MLOAD
00001b60: SWAP2
00001b61: MSTORE
00001b62: PUSH1 0x44
00001b64: DUP3
00001b65: ADD
00001b66: MSTORE
00001b67: SWAP1
00001b68: MLOAD
00001b69: SWAP1
00001b6a: DUP2
00001b6b: SWAP1
00001b6c: SUB
00001b6d: PUSH1 0x64
00001b6f: ADD
00001b70: SWAP1
00001b71: REVERT
00001b72: JUMPDEST
00001b73: PUSH1 0x12
00001b75: SSTORE
00001b76: JUMP
00001b77: JUMPDEST
00001b78: PUSH1 0x00
00001b7a: PUSH2 0x1b81
00001b7d: PUSH2 0x1a35
00001b80: JUMP
00001b81: JUMPDEST
00001b82: SWAP1
00001b83: POP
00001b84: PUSH1 0x08
00001b86: SLOAD
00001b87: PUSH1 0x07
00001b89: SLOAD
00001b8a: LT
00001b8b: ISZERO
00001b8c: PUSH2 0x1bd0
00001b8f: JUMPI
00001b90: PUSH1 0x13
00001b92: SLOAD
00001b93: PUSH1 0x07
00001b95: SLOAD
00001b96: PUSH1 0x00
00001b98: SWAP1
00001b99: DUP2
00001b9a: MSTORE
00001b9b: PUSH1 0x05
00001b9d: PUSH1 0x20
00001b9f: MSTORE
00001ba0: PUSH1 0x40
00001ba2: SWAP1
00001ba3: KECCAK256
00001ba4: PUSH1 0x01
00001ba6: ADD
00001ba7: SLOAD
00001ba8: PUSH2 0x1bbc
00001bab: SWAP1
00001bac: DUP4
00001bad: SWAP1
00001bae: PUSH8 0xffffffffffffffff
00001bb7: AND
00001bb8: PUSH2 0x29e4
00001bbb: JUMP
00001bbc: JUMPDEST
00001bbd: GT
00001bbe: ISZERO
00001bbf: PUSH2 0x1bd0
00001bc2: JUMPI
00001bc3: PUSH2 0x1bca
00001bc6: PUSH2 0x2eac
00001bc9: JUMP
00001bca: JUMPDEST
00001bcb: POP
00001bcc: PUSH2 0x10d8
00001bcf: JUMP
00001bd0: JUMPDEST
00001bd1: PUSH1 0x0e
00001bd3: SLOAD
00001bd4: PUSH1 0x0d
00001bd6: SLOAD
00001bd7: LT
00001bd8: ISZERO
00001bd9: PUSH2 0x1c17
00001bdc: JUMPI
00001bdd: PUSH1 0x13
00001bdf: SLOAD
00001be0: PUSH1 0x0d
00001be2: SLOAD
00001be3: PUSH1 0x00
00001be5: SWAP1
00001be6: DUP2
00001be7: MSTORE
00001be8: PUSH1 0x0b
00001bea: PUSH1 0x20
00001bec: MSTORE
00001bed: PUSH1 0x40
00001bef: SWAP1
00001bf0: KECCAK256
00001bf1: PUSH1 0x01
00001bf3: ADD
00001bf4: SLOAD
00001bf5: PUSH2 0x1c09
00001bf8: SWAP1
00001bf9: DUP4
00001bfa: SWAP1
00001bfb: PUSH8 0xffffffffffffffff
00001c04: AND
00001c05: PUSH2 0x29e4
00001c08: JUMP
00001c09: JUMPDEST
00001c0a: GT
00001c0b: ISZERO
00001c0c: PUSH2 0x1c17
00001c0f: JUMPI
00001c10: PUSH2 0x1bca
00001c13: PUSH2 0x2eac
00001c16: JUMP
00001c17: JUMPDEST
00001c18: PUSH1 0x40
00001c1a: MLOAD
00001c1b: PUSH3 0x461bcd
00001c1f: PUSH1 0xe5
00001c21: SHL
00001c22: DUP2
00001c23: MSTORE
00001c24: PUSH1 0x04
00001c26: ADD
00001c27: PUSH2 0x07cf
00001c2a: SWAP1
00001c2b: PUSH2 0x4be0
00001c2e: JUMP
00001c2f: JUMPDEST
00001c30: PUSH2 0x1c37
00001c33: PUSH2 0x2dab
00001c36: JUMP
00001c37: JUMPDEST
00001c38: PUSH1 0x01
00001c3a: PUSH1 0x01
00001c3c: PUSH1 0xa0
00001c3e: SHL
00001c3f: SUB
00001c40: AND
00001c41: PUSH2 0x1c48
00001c44: PUSH2 0x1488
00001c47: JUMP
00001c48: JUMPDEST
00001c49: PUSH1 0x01
00001c4b: PUSH1 0x01
00001c4d: PUSH1 0xa0
00001c4f: SHL
00001c50: SUB
00001c51: AND
00001c52: EQ
00001c53: PUSH2 0x1c91
00001c56: JUMPI
00001c57: PUSH1 0x40
00001c59: DUP1
00001c5a: MLOAD
00001c5b: PUSH3 0x461bcd
00001c5f: PUSH1 0xe5
00001c61: SHL
00001c62: DUP2
00001c63: MSTORE
00001c64: PUSH1 0x20
00001c66: PUSH1 0x04
00001c68: DUP3
00001c69: ADD
00001c6a: DUP2
00001c6b: SWAP1
00001c6c: MSTORE
00001c6d: PUSH1 0x24
00001c6f: DUP3
00001c70: ADD
00001c71: MSTORE
00001c72: PUSH1 0x00
00001c74: DUP1
00001c75: MLOAD
00001c76: PUSH1 0x20
00001c78: PUSH2 0x5032
00001c7b: DUP4
00001c7c: CODECOPY
00001c7d: DUP2
00001c7e: MLOAD
00001c7f: SWAP2
00001c80: MSTORE
00001c81: PUSH1 0x44
00001c83: DUP3
00001c84: ADD
00001c85: MSTORE
00001c86: SWAP1
00001c87: MLOAD
00001c88: SWAP1
00001c89: DUP2
00001c8a: SWAP1
00001c8b: SUB
00001c8c: PUSH1 0x64
00001c8e: ADD
00001c8f: SWAP1
00001c90: REVERT
00001c91: JUMPDEST
00001c92: PUSH1 0x13
00001c94: SSTORE
00001c95: JUMP
00001c96: JUMPDEST
00001c97: PUSH2 0x1c9e
00001c9a: PUSH2 0x1171
00001c9d: JUMP
00001c9e: JUMPDEST
00001c9f: PUSH2 0x1ce6
00001ca2: JUMPI
00001ca3: PUSH1 0x40
00001ca5: DUP1
00001ca6: MLOAD
00001ca7: PUSH3 0x461bcd
00001cab: PUSH1 0xe5
00001cad: SHL
00001cae: DUP2
00001caf: MSTORE
00001cb0: PUSH1 0x20
00001cb2: PUSH1 0x04
00001cb4: DUP3
00001cb5: ADD
00001cb6: MSTORE
00001cb7: PUSH1 0x14
00001cb9: PUSH1 0x24
00001cbb: DUP3
00001cbc: ADD
00001cbd: MSTORE
00001cbe: PUSH20 0x14185d5cd8589b194e881b9bdd081c185d5cd959
00001cd3: PUSH1 0x62
00001cd5: SHL
00001cd6: PUSH1 0x44
00001cd8: DUP3
00001cd9: ADD
00001cda: MSTORE
00001cdb: SWAP1
00001cdc: MLOAD
00001cdd: SWAP1
00001cde: DUP2
00001cdf: SWAP1
00001ce0: SUB
00001ce1: PUSH1 0x64
00001ce3: ADD
00001ce4: SWAP1
00001ce5: REVERT
00001ce6: JUMPDEST
00001ce7: PUSH2 0x1cee
00001cea: PUSH2 0x2dab
00001ced: JUMP
00001cee: JUMPDEST
00001cef: PUSH1 0x01
00001cf1: PUSH1 0x01
00001cf3: PUSH1 0xa0
00001cf5: SHL
00001cf6: SUB
00001cf7: AND
00001cf8: PUSH2 0x1cff
00001cfb: PUSH2 0x1488
00001cfe: JUMP
00001cff: JUMPDEST
00001d00: PUSH1 0x01
00001d02: PUSH1 0x01
00001d04: PUSH1 0xa0
00001d06: SHL
00001d07: SUB
00001d08: AND
00001d09: EQ
00001d0a: PUSH2 0x1d48
00001d0d: JUMPI
00001d0e: PUSH1 0x40
00001d10: DUP1
00001d11: MLOAD
00001d12: PUSH3 0x461bcd
00001d16: PUSH1 0xe5
00001d18: SHL
00001d19: DUP2
00001d1a: MSTORE
00001d1b: PUSH1 0x20
00001d1d: PUSH1 0x04
00001d1f: DUP3
00001d20: ADD
00001d21: DUP2
00001d22: SWAP1
00001d23: MSTORE
00001d24: PUSH1 0x24
00001d26: DUP3
00001d27: ADD
00001d28: MSTORE
00001d29: PUSH1 0x00
00001d2b: DUP1
00001d2c: MLOAD
00001d2d: PUSH1 0x20
00001d2f: PUSH2 0x5032
00001d32: DUP4
00001d33: CODECOPY
00001d34: DUP2
00001d35: MLOAD
00001d36: SWAP2
00001d37: MSTORE
00001d38: PUSH1 0x44
00001d3a: DUP3
00001d3b: ADD
00001d3c: MSTORE
00001d3d: SWAP1
00001d3e: MLOAD
00001d3f: SWAP1
00001d40: DUP2
00001d41: SWAP1
00001d42: SUB
00001d43: PUSH1 0x64
00001d45: ADD
00001d46: SWAP1
00001d47: REVERT
00001d48: JUMPDEST
00001d49: PUSH1 0x00
00001d4b: CALLER
00001d4c: PUSH1 0x01
00001d4e: PUSH1 0x01
00001d50: PUSH1 0xa0
00001d52: SHL
00001d53: SUB
00001d54: AND
00001d55: DUP3
00001d56: PUSH1 0x40
00001d58: MLOAD
00001d59: PUSH2 0x1d61
00001d5c: SWAP1
00001d5d: PUSH2 0x4710
00001d60: JUMP
00001d61: JUMPDEST
00001d62: PUSH1 0x00
00001d64: PUSH1 0x40
00001d66: MLOAD
00001d67: DUP1
00001d68: DUP4
00001d69: SUB
00001d6a: DUP2
00001d6b: DUP6
00001d6c: DUP8
00001d6d: GAS
00001d6e: CALL
00001d6f: SWAP3
00001d70: POP
00001d71: POP
00001d72: POP
00001d73: RETURNDATASIZE
00001d74: DUP1
00001d75: PUSH1 0x00
00001d77: DUP2
00001d78: EQ
00001d79: PUSH2 0x1d9e
00001d7c: JUMPI
00001d7d: PUSH1 0x40
00001d7f: MLOAD
00001d80: SWAP2
00001d81: POP
00001d82: PUSH1 0x1f
00001d84: NOT
00001d85: PUSH1 0x3f
00001d87: RETURNDATASIZE
00001d88: ADD
00001d89: AND
00001d8a: DUP3
00001d8b: ADD
00001d8c: PUSH1 0x40
00001d8e: MSTORE
00001d8f: RETURNDATASIZE
00001d90: DUP3
00001d91: MSTORE
00001d92: RETURNDATASIZE
00001d93: PUSH1 0x00
00001d95: PUSH1 0x20
00001d97: DUP5
00001d98: ADD
00001d99: RETURNDATACOPY
00001d9a: PUSH2 0x1da3
00001d9d: JUMP
00001d9e: JUMPDEST
00001d9f: PUSH1 0x60
00001da1: SWAP2
00001da2: POP
00001da3: JUMPDEST
00001da4: POP
00001da5: POP
00001da6: SWAP1
00001da7: POP
00001da8: DUP1
00001da9: PUSH2 0x1158
00001dac: JUMPI
00001dad: PUSH1 0x40
00001daf: MLOAD
00001db0: PUSH3 0x461bcd
00001db4: PUSH1 0xe5
00001db6: SHL
00001db7: DUP2
00001db8: MSTORE
00001db9: PUSH1 0x04
00001dbb: ADD
00001dbc: PUSH2 0x07cf
00001dbf: SWAP1
00001dc0: PUSH2 0x49a7
00001dc3: JUMP
00001dc4: JUMPDEST
00001dc5: PUSH2 0x1dcc
00001dc8: PUSH2 0x2dab
00001dcb: JUMP
00001dcc: JUMPDEST
00001dcd: PUSH1 0x01
00001dcf: PUSH1 0x01
00001dd1: PUSH1 0xa0
00001dd3: SHL
00001dd4: SUB
00001dd5: AND
00001dd6: PUSH2 0x1ddd
00001dd9: PUSH2 0x1488
00001ddc: JUMP
00001ddd: JUMPDEST
00001dde: PUSH1 0x01
00001de0: PUSH1 0x01
00001de2: PUSH1 0xa0
00001de4: SHL
00001de5: SUB
00001de6: AND
00001de7: EQ
00001de8: PUSH2 0x1e26
00001deb: JUMPI
00001dec: PUSH1 0x40
00001dee: DUP1
00001def: MLOAD
00001df0: PUSH3 0x461bcd
00001df4: PUSH1 0xe5
00001df6: SHL
00001df7: DUP2
00001df8: MSTORE
00001df9: PUSH1 0x20
00001dfb: PUSH1 0x04
00001dfd: DUP3
00001dfe: ADD
00001dff: DUP2
00001e00: SWAP1
00001e01: MSTORE
00001e02: PUSH1 0x24
00001e04: DUP3
00001e05: ADD
00001e06: MSTORE
00001e07: PUSH1 0x00
00001e09: DUP1
00001e0a: MLOAD
00001e0b: PUSH1 0x20
00001e0d: PUSH2 0x5032
00001e10: DUP4
00001e11: CODECOPY
00001e12: DUP2
00001e13: MLOAD
00001e14: SWAP2
00001e15: MSTORE
00001e16: PUSH1 0x44
00001e18: DUP3
00001e19: ADD
00001e1a: MSTORE
00001e1b: SWAP1
00001e1c: MLOAD
00001e1d: SWAP1
00001e1e: DUP2
00001e1f: SWAP1
00001e20: SUB
00001e21: PUSH1 0x64
00001e23: ADD
00001e24: SWAP1
00001e25: REVERT
00001e26: JUMPDEST
00001e27: PUSH1 0x02
00001e29: SLOAD
00001e2a: PUSH1 0x40
00001e2c: MLOAD
00001e2d: PUSH4 0x639260df
00001e32: PUSH1 0xe0
00001e34: SHL
00001e35: DUP2
00001e36: MSTORE
00001e37: PUSH1 0x00
00001e39: SWAP2
00001e3a: PUSH1 0x01
00001e3c: PUSH1 0x01
00001e3e: PUSH1 0xa0
00001e40: SHL
00001e41: SUB
00001e42: AND
00001e43: SWAP1
00001e44: PUSH4 0x639260df
00001e49: SWAP1
00001e4a: PUSH2 0x1e57
00001e4d: SWAP1
00001e4e: DUP7
00001e4f: SWAP1
00001e50: PUSH1 0x04
00001e52: ADD
00001e53: PUSH2 0x4730
00001e56: JUMP
00001e57: JUMPDEST
00001e58: PUSH1 0x20
00001e5a: PUSH1 0x40
00001e5c: MLOAD
00001e5d: DUP1
00001e5e: DUP4
00001e5f: SUB
00001e60: DUP2
00001e61: DUP7
00001e62: DUP1
00001e63: EXTCODESIZE
00001e64: ISZERO
00001e65: DUP1
00001e66: ISZERO
00001e67: PUSH2 0x1e6f
00001e6a: JUMPI
00001e6b: PUSH1 0x00
00001e6d: DUP1
00001e6e: REVERT
00001e6f: JUMPDEST
00001e70: POP
00001e71: GAS
00001e72: STATICCALL
00001e73: ISZERO
00001e74: DUP1
00001e75: ISZERO
00001e76: PUSH2 0x1e83
00001e79: JUMPI
00001e7a: RETURNDATASIZE
00001e7b: PUSH1 0x00
00001e7d: DUP1
00001e7e: RETURNDATACOPY
00001e7f: RETURNDATASIZE
00001e80: PUSH1 0x00
00001e82: REVERT
00001e83: JUMPDEST
00001e84: POP
00001e85: POP
00001e86: POP
00001e87: POP
00001e88: PUSH1 0x40
00001e8a: MLOAD
00001e8b: RETURNDATASIZE
00001e8c: PUSH1 0x1f
00001e8e: NOT
00001e8f: PUSH1 0x1f
00001e91: DUP3
00001e92: ADD
00001e93: AND
00001e94: DUP3
00001e95: ADD
00001e96: DUP1
00001e97: PUSH1 0x40
00001e99: MSTORE
00001e9a: POP
00001e9b: DUP2
00001e9c: ADD
00001e9d: SWAP1
00001e9e: PUSH2 0x1ea7
00001ea1: SWAP2
00001ea2: SWAP1
00001ea3: PUSH2 0x4298
00001ea6: JUMP
00001ea7: JUMPDEST
00001ea8: SWAP1
00001ea9: POP
00001eaa: PUSH4 0xffffffff
00001eaf: DUP2
00001eb0: AND
00001eb1: PUSH2 0x1ecc
00001eb4: JUMPI
00001eb5: PUSH1 0x40
00001eb7: MLOAD
00001eb8: PUSH3 0x461bcd
00001ebc: PUSH1 0xe5
00001ebe: SHL
00001ebf: DUP2
00001ec0: MSTORE
00001ec1: PUSH1 0x04
00001ec3: ADD
00001ec4: PUSH2 0x07cf
00001ec7: SWAP1
00001ec8: PUSH2 0x4c15
00001ecb: JUMP
00001ecc: JUMPDEST
00001ecd: POP
00001ece: PUSH1 0x01
00001ed0: PUSH1 0x01
00001ed2: PUSH1 0xa0
00001ed4: SHL
00001ed5: SUB
00001ed6: SWAP1
00001ed7: SWAP2
00001ed8: AND
00001ed9: PUSH1 0x00
00001edb: SWAP1
00001edc: DUP2
00001edd: MSTORE
00001ede: PUSH1 0x11
00001ee0: PUSH1 0x20
00001ee2: MSTORE
00001ee3: PUSH1 0x40
00001ee5: SWAP1
00001ee6: KECCAK256
00001ee7: SSTORE
00001ee8: JUMP
00001ee9: JUMPDEST
00001eea: PUSH2 0x1ef1
00001eed: PUSH2 0x1171
00001ef0: JUMP
00001ef1: JUMPDEST
00001ef2: ISZERO
00001ef3: PUSH2 0x1f36
00001ef6: JUMPI
00001ef7: PUSH1 0x40
00001ef9: DUP1
00001efa: MLOAD
00001efb: PUSH3 0x461bcd
00001eff: PUSH1 0xe5
00001f01: SHL
00001f02: DUP2
00001f03: MSTORE
00001f04: PUSH1 0x20
00001f06: PUSH1 0x04
00001f08: DUP3
00001f09: ADD
00001f0a: MSTORE
00001f0b: PUSH1 0x10
00001f0d: PUSH1 0x24
00001f0f: DUP3
00001f10: ADD
00001f11: MSTORE
00001f12: PUSH16 0x14185d5cd8589b194e881c185d5cd959
00001f23: PUSH1 0x82
00001f25: SHL
00001f26: PUSH1 0x44
00001f28: DUP3
00001f29: ADD
00001f2a: MSTORE
00001f2b: SWAP1
00001f2c: MLOAD
00001f2d: SWAP1
00001f2e: DUP2
00001f2f: SWAP1
00001f30: SUB
00001f31: PUSH1 0x64
00001f33: ADD
00001f34: SWAP1
00001f35: REVERT
00001f36: JUMPDEST
00001f37: PUSH1 0x14
00001f39: SLOAD
00001f3a: PUSH1 0x01
00001f3c: PUSH1 0x01
00001f3e: PUSH1 0xa0
00001f40: SHL
00001f41: SUB
00001f42: AND
00001f43: CALLER
00001f44: EQ
00001f45: PUSH2 0x1f60
00001f48: JUMPI
00001f49: PUSH1 0x40
00001f4b: MLOAD
00001f4c: PUSH3 0x461bcd
00001f50: PUSH1 0xe5
00001f52: SHL
00001f53: DUP2
00001f54: MSTORE
00001f55: PUSH1 0x04
00001f57: ADD
00001f58: PUSH2 0x07cf
00001f5b: SWAP1
00001f5c: PUSH2 0x4c4c
00001f5f: JUMP
00001f60: JUMPDEST
00001f61: PUSH1 0x03
00001f63: SLOAD
00001f64: DUP4
00001f65: EQ
00001f66: PUSH2 0x1f81
00001f69: JUMPI
00001f6a: PUSH1 0x40
00001f6c: MLOAD
00001f6d: PUSH3 0x461bcd
00001f71: PUSH1 0xe5
00001f73: SHL
00001f74: DUP2
00001f75: MSTORE
00001f76: PUSH1 0x04
00001f78: ADD
00001f79: PUSH2 0x07cf
00001f7c: SWAP1
00001f7d: PUSH2 0x4cba
00001f80: JUMP
00001f81: JUMPDEST
00001f82: PUSH1 0x00
00001f84: DUP2
00001f85: PUSH8 0xffffffffffffffff
00001f8e: DUP2
00001f8f: GT
00001f90: DUP1
00001f91: ISZERO
00001f92: PUSH2 0x1f9a
00001f95: JUMPI
00001f96: PUSH1 0x00
00001f98: DUP1
00001f99: REVERT
00001f9a: JUMPDEST
00001f9b: POP
00001f9c: PUSH1 0x40
00001f9e: MLOAD
00001f9f: SWAP1
00001fa0: DUP1
00001fa1: DUP3
00001fa2: MSTORE
00001fa3: DUP1
00001fa4: PUSH1 0x20
00001fa6: MUL
00001fa7: PUSH1 0x20
00001fa9: ADD
00001faa: DUP3
00001fab: ADD
00001fac: PUSH1 0x40
00001fae: MSTORE
00001faf: DUP1
00001fb0: ISZERO
00001fb1: PUSH2 0x1fc4
00001fb4: JUMPI
00001fb5: DUP2
00001fb6: PUSH1 0x20
00001fb8: ADD
00001fb9: PUSH1 0x20
00001fbb: DUP3
00001fbc: MUL
00001fbd: DUP1
00001fbe: CALLDATASIZE
00001fbf: DUP4
00001fc0: CALLDATACOPY
00001fc1: ADD
00001fc2: SWAP1
00001fc3: POP
00001fc4: JUMPDEST
00001fc5: POP
00001fc6: SWAP1
00001fc7: POP
00001fc8: PUSH1 0x00
00001fca: JUMPDEST
00001fcb: DUP3
00001fcc: DUP2
00001fcd: LT
00001fce: ISZERO
00001fcf: PUSH2 0x2025
00001fd2: JUMPI
00001fd3: DUP4
00001fd4: DUP4
00001fd5: DUP3
00001fd6: DUP2
00001fd7: DUP2
00001fd8: LT
00001fd9: PUSH2 0x1fde
00001fdc: JUMPI
00001fdd: INVALID
00001fde: JUMPDEST
00001fdf: SWAP1
00001fe0: POP
00001fe1: PUSH1 0x20
00001fe3: MUL
00001fe4: DUP2
00001fe5: ADD
00001fe6: SWAP1
00001fe7: PUSH2 0x1ff0
00001fea: SWAP2
00001feb: SWAP1
00001fec: PUSH2 0x4ee5
00001fef: JUMP
00001ff0: JUMPDEST
00001ff1: PUSH1 0x40
00001ff3: MLOAD
00001ff4: PUSH2 0x1ffe
00001ff7: SWAP3
00001ff8: SWAP2
00001ff9: SWAP1
00001ffa: PUSH2 0x46e4
00001ffd: JUMP
00001ffe: JUMPDEST
00001fff: PUSH1 0x40
00002001: MLOAD
00002002: DUP1
00002003: SWAP2
00002004: SUB
00002005: SWAP1
00002006: KECCAK256
00002007: DUP3
00002008: DUP3
00002009: DUP2
0000200a: MLOAD
0000200b: DUP2
0000200c: LT
0000200d: PUSH2 0x2012
00002010: JUMPI
00002011: INVALID
00002012: JUMPDEST
00002013: PUSH1 0x20
00002015: SWAP1
00002016: DUP2
00002017: MUL
00002018: SWAP2
00002019: SWAP1
0000201a: SWAP2
0000201b: ADD
0000201c: ADD
0000201d: MSTORE
0000201e: PUSH1 0x01
00002020: ADD
00002021: PUSH2 0x1fca
00002024: JUMP
00002025: JUMPDEST
00002026: POP
00002027: PUSH1 0x00
00002029: PUSH2 0x2031
0000202c: DUP3
0000202d: PUSH2 0x32f7
00002030: JUMP
00002031: JUMPDEST
00002032: SWAP1
00002033: POP
00002034: PUSH1 0x00
00002036: DUP4
00002037: PUSH8 0xffffffffffffffff
00002040: DUP2
00002041: GT
00002042: DUP1
00002043: ISZERO
00002044: PUSH2 0x204c
00002047: JUMPI
00002048: PUSH1 0x00
0000204a: DUP1
0000204b: REVERT
0000204c: JUMPDEST
0000204d: POP
0000204e: PUSH1 0x40
00002050: MLOAD
00002051: SWAP1
00002052: DUP1
00002053: DUP3
00002054: MSTORE
00002055: DUP1
00002056: PUSH1 0x20
00002058: MUL
00002059: PUSH1 0x20
0000205b: ADD
0000205c: DUP3
0000205d: ADD
0000205e: PUSH1 0x40
00002060: MSTORE
00002061: DUP1
00002062: ISZERO
00002063: PUSH2 0x2076
00002066: JUMPI
00002067: DUP2
00002068: PUSH1 0x20
0000206a: ADD
0000206b: PUSH1 0x20
0000206d: DUP3
0000206e: MUL
0000206f: DUP1
00002070: CALLDATASIZE
00002071: DUP4
00002072: CALLDATACOPY
00002073: ADD
00002074: SWAP1
00002075: POP
00002076: JUMPDEST
00002077: POP
00002078: SWAP1
00002079: POP
0000207a: PUSH1 0x00
0000207c: DUP1
0000207d: JUMPDEST
0000207e: DUP6
0000207f: DUP2
00002080: LT
00002081: ISZERO
00002082: PUSH2 0x2595
00002085: JUMPI
00002086: PUSH1 0x00
00002088: PUSH2 0x20e2
0000208b: DUP9
0000208c: DUP9
0000208d: DUP5
0000208e: DUP2
0000208f: DUP2
00002090: LT
00002091: PUSH2 0x2096
00002094: JUMPI
00002095: INVALID
00002096: JUMPDEST
00002097: SWAP1
00002098: POP
00002099: PUSH1 0x20
0000209b: MUL
0000209c: DUP2
0000209d: ADD
0000209e: SWAP1
0000209f: PUSH2 0x20a8
000020a2: SWAP2
000020a3: SWAP1
000020a4: PUSH2 0x4ee5
000020a7: JUMP
000020a8: JUMPDEST
000020a9: DUP1
000020aa: DUP1
000020ab: PUSH1 0x1f
000020ad: ADD
000020ae: PUSH1 0x20
000020b0: DUP1
000020b1: SWAP2
000020b2: DIV
000020b3: MUL
000020b4: PUSH1 0x20
000020b6: ADD
000020b7: PUSH1 0x40
000020b9: MLOAD
000020ba: SWAP1
000020bb: DUP2
000020bc: ADD
000020bd: PUSH1 0x40
000020bf: MSTORE
000020c0: DUP1
000020c1: SWAP4
000020c2: SWAP3
000020c3: SWAP2
000020c4: SWAP1
000020c5: DUP2
000020c6: DUP2
000020c7: MSTORE
000020c8: PUSH1 0x20
000020ca: ADD
000020cb: DUP4
000020cc: DUP4
000020cd: DUP1
000020ce: DUP3
000020cf: DUP5
000020d0: CALLDATACOPY
000020d1: PUSH1 0x00
000020d3: SWAP3
000020d4: ADD
000020d5: SWAP2
000020d6: SWAP1
000020d7: SWAP2
000020d8: MSTORE
000020d9: POP
000020da: PUSH2 0x399b
000020dd: SWAP3
000020de: POP
000020df: POP
000020e0: POP
000020e1: JUMP
000020e2: JUMPDEST
000020e3: SWAP1
000020e4: POP
000020e5: PUSH1 0xff
000020e7: DUP2
000020e8: AND
000020e9: PUSH1 0x03
000020eb: EQ
000020ec: DUP1
000020ed: PUSH2 0x20f9
000020f0: JUMPI
000020f1: POP
000020f2: PUSH1 0xff
000020f4: DUP2
000020f5: AND
000020f6: PUSH1 0x04
000020f8: EQ
000020f9: JUMPDEST
000020fa: ISZERO
000020fb: PUSH2 0x2104
000020fe: JUMPI
000020ff: POP
00002100: PUSH2 0x258d
00002103: JUMP
00002104: JUMPDEST
00002105: PUSH1 0xff
00002107: DUP2
00002108: AND
00002109: PUSH1 0x05
0000210b: EQ
0000210c: ISZERO
0000210d: PUSH2 0x213a
00002110: JUMPI
00002111: DUP2
00002112: DUP5
00002113: DUP5
00002114: DUP1
00002115: PUSH1 0x01
00002117: ADD
00002118: SWAP6
00002119: POP
0000211a: PUSH4 0xffffffff
0000211f: AND
00002120: DUP2
00002121: MLOAD
00002122: DUP2
00002123: LT
00002124: PUSH2 0x2129
00002127: JUMPI
00002128: INVALID
00002129: JUMPDEST
0000212a: PUSH1 0x20
0000212c: MUL
0000212d: PUSH1 0x20
0000212f: ADD
00002130: ADD
00002131: DUP2
00002132: DUP2
00002133: MSTORE
00002134: POP
00002135: POP
00002136: PUSH2 0x258b
00002139: JUMP
0000213a: JUMPDEST
0000213b: PUSH1 0xff
0000213d: DUP2
0000213e: AND
0000213f: PUSH1 0x01
00002141: EQ
00002142: ISZERO
00002143: PUSH2 0x22d6
00002146: JUMPI
00002147: PUSH1 0x00
00002149: PUSH2 0x21a3
0000214c: DUP10
0000214d: DUP10
0000214e: DUP6
0000214f: DUP2
00002150: DUP2
00002151: LT
00002152: PUSH2 0x2157
00002155: JUMPI
00002156: INVALID
00002157: JUMPDEST
00002158: SWAP1
00002159: POP
0000215a: PUSH1 0x20
0000215c: MUL
0000215d: DUP2
0000215e: ADD
0000215f: SWAP1
00002160: PUSH2 0x2169
00002163: SWAP2
00002164: SWAP1
00002165: PUSH2 0x4ee5
00002168: JUMP
00002169: JUMPDEST
0000216a: DUP1
0000216b: DUP1
0000216c: PUSH1 0x1f
0000216e: ADD
0000216f: PUSH1 0x20
00002171: DUP1
00002172: SWAP2
00002173: DIV
00002174: MUL
00002175: PUSH1 0x20
00002177: ADD
00002178: PUSH1 0x40
0000217a: MLOAD
0000217b: SWAP1
0000217c: DUP2
0000217d: ADD
0000217e: PUSH1 0x40
00002180: MSTORE
00002181: DUP1
00002182: SWAP4
00002183: SWAP3
00002184: SWAP2
00002185: SWAP1
00002186: DUP2
00002187: DUP2
00002188: MSTORE
00002189: PUSH1 0x20
0000218b: ADD
0000218c: DUP4
0000218d: DUP4
0000218e: DUP1
0000218f: DUP3
00002190: DUP5
00002191: CALLDATACOPY
00002192: PUSH1 0x00
00002194: SWAP3
00002195: ADD
00002196: SWAP2
00002197: SWAP1
00002198: SWAP2
00002199: MSTORE
0000219a: POP
0000219b: PUSH2 0x39a2
0000219e: SWAP3
0000219f: POP
000021a0: POP
000021a1: POP
000021a2: JUMP
000021a3: JUMPDEST
000021a4: PUSH1 0x07
000021a6: SLOAD
000021a7: PUSH1 0x08
000021a9: SLOAD
000021aa: SWAP2
000021ab: SWAP3
000021ac: POP
000021ad: SWAP1
000021ae: DUP2
000021af: LT
000021b0: PUSH2 0x21cb
000021b3: JUMPI
000021b4: PUSH1 0x40
000021b6: MLOAD
000021b7: PUSH3 0x461bcd
000021bb: PUSH1 0xe5
000021bd: SHL
000021be: DUP2
000021bf: MSTORE
000021c0: PUSH1 0x04
000021c2: ADD
000021c3: PUSH2 0x07cf
000021c6: SWAP1
000021c7: PUSH2 0x4913
000021ca: JUMP
000021cb: JUMPDEST
000021cc: PUSH1 0x00
000021ce: DUP2
000021cf: DUP2
000021d0: MSTORE
000021d1: PUSH1 0x05
000021d3: PUSH1 0x20
000021d5: SWAP1
000021d6: DUP2
000021d7: MSTORE
000021d8: PUSH1 0x40
000021da: DUP1
000021db: DUP4
000021dc: KECCAK256
000021dd: DUP2
000021de: MLOAD
000021df: PUSH1 0x60
000021e1: DUP2
000021e2: ADD
000021e3: DUP4
000021e4: MSTORE
000021e5: DUP2
000021e6: SLOAD
000021e7: DUP2
000021e8: MSTORE
000021e9: PUSH1 0x01
000021eb: DUP1
000021ec: DUP4
000021ed: ADD
000021ee: SLOAD
000021ef: PUSH8 0xffffffffffffffff
000021f8: DUP2
000021f9: AND
000021fa: SWAP6
000021fb: DUP4
000021fc: ADD
000021fd: SWAP6
000021fe: SWAP1
000021ff: SWAP6
00002200: MSTORE
00002201: SWAP1
00002202: SWAP4
00002203: SWAP2
00002204: SWAP3
00002205: DUP5
00002206: ADD
00002207: SWAP2
00002208: PUSH1 0x01
0000220a: PUSH1 0x40
0000220c: SHL
0000220d: SWAP1
0000220e: DIV
0000220f: PUSH1 0xff
00002211: AND
00002212: SWAP1
00002213: DUP2
00002214: GT
00002215: ISZERO
00002216: PUSH2 0x221b
00002219: JUMPI
0000221a: INVALID
0000221b: JUMPDEST
0000221c: PUSH1 0x01
0000221e: DUP2
0000221f: GT
00002220: ISZERO
00002221: PUSH2 0x2226
00002224: JUMPI
00002225: INVALID
00002226: JUMPDEST
00002227: DUP2
00002228: MSTORE
00002229: POP
0000222a: POP
0000222b: SWAP1
0000222c: POP
0000222d: PUSH1 0x00
0000222f: DUP4
00002230: PUSH1 0x40
00002232: ADD
00002233: MLOAD
00002234: DUP5
00002235: PUSH1 0x80
00002237: ADD
00002238: MLOAD
00002239: DUP6
0000223a: PUSH1 0xa0
0000223c: ADD
0000223d: MLOAD
0000223e: PUSH1 0x40
00002240: MLOAD
00002241: PUSH1 0x20
00002243: ADD
00002244: PUSH2 0x224f
00002247: SWAP4
00002248: SWAP3
00002249: SWAP2
0000224a: SWAP1
0000224b: PUSH2 0x4677
0000224e: JUMP
0000224f: JUMPDEST
00002250: PUSH1 0x40
00002252: MLOAD
00002253: PUSH1 0x20
00002255: DUP2
00002256: DUP4
00002257: SUB
00002258: SUB
00002259: DUP2
0000225a: MSTORE
0000225b: SWAP1
0000225c: PUSH1 0x40
0000225e: MSTORE
0000225f: DUP1
00002260: MLOAD
00002261: SWAP1
00002262: PUSH1 0x20
00002264: ADD
00002265: KECCAK256
00002266: SWAP1
00002267: POP
00002268: DUP1
00002269: DUP3
0000226a: PUSH1 0x00
0000226c: ADD
0000226d: MLOAD
0000226e: EQ
0000226f: PUSH2 0x228a
00002272: JUMPI
00002273: PUSH1 0x40
00002275: MLOAD
00002276: PUSH3 0x461bcd
0000227a: PUSH1 0xe5
0000227c: SHL
0000227d: DUP2
0000227e: MSTORE
0000227f: PUSH1 0x04
00002281: ADD
00002282: PUSH2 0x07cf
00002285: SWAP1
00002286: PUSH2 0x487f
00002289: JUMP
0000228a: JUMPDEST
0000228b: POP
0000228c: POP
0000228d: PUSH1 0x00
0000228f: SWAP1
00002290: DUP2
00002291: MSTORE
00002292: PUSH1 0x05
00002294: PUSH1 0x20
00002296: MSTORE
00002297: PUSH1 0x40
00002299: SWAP1
0000229a: KECCAK256
0000229b: PUSH1 0x01
0000229d: SWAP1
0000229e: DUP2
0000229f: ADD
000022a0: DUP1
000022a1: SLOAD
000022a2: PUSH1 0xff
000022a4: PUSH1 0x40
000022a6: SHL
000022a7: NOT
000022a8: AND
000022a9: PUSH1 0x01
000022ab: PUSH1 0x40
000022ad: SHL
000022ae: OR
000022af: PUSH8 0xffffffffffffffff
000022b8: NOT
000022b9: AND
000022ba: PUSH8 0xffffffffffffffff
000022c3: DUP14
000022c4: AND
000022c5: OR
000022c6: SWAP1
000022c7: SSTORE
000022c8: PUSH1 0x07
000022ca: DUP1
000022cb: SLOAD
000022cc: SWAP1
000022cd: SWAP2
000022ce: ADD
000022cf: SWAP1
000022d0: SSTORE
000022d1: POP
000022d2: PUSH2 0x258b
000022d5: JUMP
000022d6: JUMPDEST
000022d7: PUSH1 0xff
000022d9: DUP2
000022da: AND
000022db: PUSH1 0x02
000022dd: EQ
000022de: ISZERO
000022df: PUSH2 0x23f9
000022e2: JUMPI
000022e3: PUSH1 0x00
000022e5: PUSH2 0x233f
000022e8: DUP10
000022e9: DUP10
000022ea: DUP6
000022eb: DUP2
000022ec: DUP2
000022ed: LT
000022ee: PUSH2 0x22f3
000022f1: JUMPI
000022f2: INVALID
000022f3: JUMPDEST
000022f4: SWAP1
000022f5: POP
000022f6: PUSH1 0x20
000022f8: MUL
000022f9: DUP2
000022fa: ADD
000022fb: SWAP1
000022fc: PUSH2 0x2305
000022ff: SWAP2
00002300: SWAP1
00002301: PUSH2 0x4ee5
00002304: JUMP
00002305: JUMPDEST
00002306: DUP1
00002307: DUP1
00002308: PUSH1 0x1f
0000230a: ADD
0000230b: PUSH1 0x20
0000230d: DUP1
0000230e: SWAP2
0000230f: DIV
00002310: MUL
00002311: PUSH1 0x20
00002313: ADD
00002314: PUSH1 0x40
00002316: MLOAD
00002317: SWAP1
00002318: DUP2
00002319: ADD
0000231a: PUSH1 0x40
0000231c: MSTORE
0000231d: DUP1
0000231e: SWAP4
0000231f: SWAP3
00002320: SWAP2
00002321: SWAP1
00002322: DUP2
00002323: DUP2
00002324: MSTORE
00002325: PUSH1 0x20
00002327: ADD
00002328: DUP4
00002329: DUP4
0000232a: DUP1
0000232b: DUP3
0000232c: DUP5
0000232d: CALLDATACOPY
0000232e: PUSH1 0x00
00002330: SWAP3
00002331: ADD
00002332: SWAP2
00002333: SWAP1
00002334: SWAP2
00002335: MSTORE
00002336: POP
00002337: PUSH2 0x3a19
0000233a: SWAP3
0000233b: POP
0000233c: POP
0000233d: POP
0000233e: JUMP
0000233f: JUMPDEST
00002340: PUSH1 0x00
00002342: DUP12
00002343: DUP2
00002344: MSTORE
00002345: PUSH1 0x09
00002347: PUSH1 0x20
00002349: SWAP1
0000234a: DUP2
0000234b: MSTORE
0000234c: PUSH1 0x40
0000234e: DUP1
0000234f: DUP4
00002350: KECCAK256
00002351: DUP2
00002352: MLOAD
00002353: PUSH1 0x60
00002355: DUP2
00002356: ADD
00002357: DUP4
00002358: MSTORE
00002359: DUP3
0000235a: DUP7
0000235b: ADD
0000235c: MLOAD
0000235d: PUSH1 0x01
0000235f: PUSH1 0x01
00002361: PUSH1 0xa0
00002363: SHL
00002364: SUB
00002365: SWAP1
00002366: DUP2
00002367: AND
00002368: DUP3
00002369: MSTORE
0000236a: PUSH1 0x80
0000236c: DUP8
0000236d: ADD
0000236e: MLOAD
0000236f: PUSH4 0xffffffff
00002374: SWAP1
00002375: DUP2
00002376: AND
00002377: DUP4
00002378: DUP8
00002379: ADD
0000237a: SWAP1
0000237b: DUP2
0000237c: MSTORE
0000237d: PUSH1 0xa0
0000237f: SWAP1
00002380: SWAP9
00002381: ADD
00002382: MLOAD
00002383: SWAP5
00002384: DUP4
00002385: ADD
00002386: SWAP5
00002387: DUP6
00002388: MSTORE
00002389: DUP4
0000238a: SLOAD
0000238b: PUSH1 0x01
0000238d: DUP2
0000238e: DUP2
0000238f: ADD
00002390: DUP7
00002391: SSTORE
00002392: SWAP5
00002393: DUP9
00002394: MSTORE
00002395: SWAP6
00002396: SWAP1
00002397: SWAP7
00002398: KECCAK256
00002399: SWAP2
0000239a: MLOAD
0000239b: PUSH1 0x02
0000239d: SWAP1
0000239e: SWAP6
0000239f: MUL
000023a0: SWAP1
000023a1: SWAP2
000023a2: ADD
000023a3: DUP1
000023a4: SLOAD
000023a5: SWAP7
000023a6: MLOAD
000023a7: SWAP1
000023a8: SWAP6
000023a9: AND
000023aa: PUSH1 0x01
000023ac: PUSH1 0xa0
000023ae: SHL
000023af: MUL
000023b0: PUSH32 0xffffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffff
000023d1: SWAP5
000023d2: SWAP1
000023d3: SWAP2
000023d4: AND
000023d5: PUSH1 0x01
000023d7: PUSH1 0x01
000023d9: PUSH1 0xa0
000023db: SHL
000023dc: SUB
000023dd: NOT
000023de: SWAP1
000023df: SWAP7
000023e0: AND
000023e1: SWAP6
000023e2: SWAP1
000023e3: SWAP6
000023e4: OR
000023e5: SWAP3
000023e6: SWAP1
000023e7: SWAP3
000023e8: AND
000023e9: SWAP4
000023ea: SWAP1
000023eb: SWAP4
000023ec: OR
000023ed: DUP3
000023ee: SSTORE
000023ef: SWAP2
000023f0: MLOAD
000023f1: SWAP2
000023f2: ADD
000023f3: SSTORE
000023f4: POP
000023f5: PUSH2 0x258b
000023f8: JUMP
000023f9: JUMPDEST
000023fa: PUSH1 0xff
000023fc: DUP2
000023fd: AND
000023fe: PUSH1 0x06
00002400: EQ
00002401: ISZERO
00002402: PUSH2 0x258b
00002405: JUMPI
00002406: PUSH1 0x00
00002408: PUSH2 0x2462
0000240b: DUP10
0000240c: DUP10
0000240d: DUP6
0000240e: DUP2
0000240f: DUP2
00002410: LT
00002411: PUSH2 0x2416
00002414: JUMPI
00002415: INVALID
00002416: JUMPDEST
00002417: SWAP1
00002418: POP
00002419: PUSH1 0x20
0000241b: MUL
0000241c: DUP2
0000241d: ADD
0000241e: SWAP1
0000241f: PUSH2 0x2428
00002422: SWAP2
00002423: SWAP1
00002424: PUSH2 0x4ee5
00002427: JUMP
00002428: JUMPDEST
00002429: DUP1
0000242a: DUP1
0000242b: PUSH1 0x1f
0000242d: ADD
0000242e: PUSH1 0x20
00002430: DUP1
00002431: SWAP2
00002432: DIV
00002433: MUL
00002434: PUSH1 0x20
00002436: ADD
00002437: PUSH1 0x40
00002439: MLOAD
0000243a: SWAP1
0000243b: DUP2
0000243c: ADD
0000243d: PUSH1 0x40
0000243f: MSTORE
00002440: DUP1
00002441: SWAP4
00002442: SWAP3
00002443: SWAP2
00002444: SWAP1
00002445: DUP2
00002446: DUP2
00002447: MSTORE
00002448: PUSH1 0x20
0000244a: ADD
0000244b: DUP4
0000244c: DUP4
0000244d: DUP1
0000244e: DUP3
0000244f: DUP5
00002450: CALLDATACOPY
00002451: PUSH1 0x00
00002453: SWAP3
00002454: ADD
00002455: SWAP2
00002456: SWAP1
00002457: SWAP2
00002458: MSTORE
00002459: POP
0000245a: PUSH2 0x3aab
0000245d: SWAP3
0000245e: POP
0000245f: POP
00002460: POP
00002461: JUMP
00002462: JUMPDEST
00002463: PUSH1 0x0d
00002465: SLOAD
00002466: PUSH1 0x0e
00002468: SLOAD
00002469: SWAP2
0000246a: SWAP3
0000246b: POP
0000246c: SWAP1
0000246d: DUP2
0000246e: LT
0000246f: PUSH2 0x248a
00002472: JUMPI
00002473: PUSH1 0x40
00002475: MLOAD
00002476: PUSH3 0x461bcd
0000247a: PUSH1 0xe5
0000247c: SHL
0000247d: DUP2
0000247e: MSTORE
0000247f: PUSH1 0x04
00002481: ADD
00002482: PUSH2 0x07cf
00002485: SWAP1
00002486: PUSH2 0x4a83
00002489: JUMP
0000248a: JUMPDEST
0000248b: PUSH1 0x00
0000248d: DUP2
0000248e: DUP2
0000248f: MSTORE
00002490: PUSH1 0x0b
00002492: PUSH1 0x20
00002494: SWAP1
00002495: DUP2
00002496: MSTORE
00002497: PUSH1 0x40
00002499: DUP1
0000249a: DUP4
0000249b: KECCAK256
0000249c: DUP2
0000249d: MLOAD
0000249e: PUSH1 0x60
000024a0: DUP2
000024a1: ADD
000024a2: DUP4
000024a3: MSTORE
000024a4: DUP2
000024a5: SLOAD
000024a6: DUP2
000024a7: MSTORE
000024a8: PUSH1 0x01
000024aa: DUP1
000024ab: DUP4
000024ac: ADD
000024ad: SLOAD
000024ae: PUSH8 0xffffffffffffffff
000024b7: DUP2
000024b8: AND
000024b9: SWAP6
000024ba: DUP4
000024bb: ADD
000024bc: SWAP6
000024bd: SWAP1
000024be: SWAP6
000024bf: MSTORE
000024c0: SWAP1
000024c1: SWAP4
000024c2: SWAP2
000024c3: SWAP3
000024c4: DUP5
000024c5: ADD
000024c6: SWAP2
000024c7: PUSH1 0x01
000024c9: PUSH1 0x40
000024cb: SHL
000024cc: SWAP1
000024cd: DIV
000024ce: PUSH1 0xff
000024d0: AND
000024d1: SWAP1
000024d2: DUP2
000024d3: GT
000024d4: ISZERO
000024d5: PUSH2 0x24da
000024d8: JUMPI
000024d9: INVALID
000024da: JUMPDEST
000024db: PUSH1 0x01
000024dd: DUP2
000024de: GT
000024df: ISZERO
000024e0: PUSH2 0x24e5
000024e3: JUMPI
000024e4: INVALID
000024e5: JUMPDEST
000024e6: DUP2
000024e7: MSTORE
000024e8: POP
000024e9: POP
000024ea: SWAP1
000024eb: POP
000024ec: PUSH1 0x00
000024ee: DUP4
000024ef: PUSH1 0x40
000024f1: ADD
000024f2: MLOAD
000024f3: DUP5
000024f4: PUSH1 0x60
000024f6: ADD
000024f7: MLOAD
000024f8: PUSH1 0x40
000024fa: MLOAD
000024fb: PUSH1 0x20
000024fd: ADD
000024fe: PUSH2 0x2508
00002501: SWAP3
00002502: SWAP2
00002503: SWAP1
00002504: PUSH2 0x4713
00002507: JUMP
00002508: JUMPDEST
00002509: PUSH1 0x40
0000250b: MLOAD
0000250c: PUSH1 0x20
0000250e: DUP2
0000250f: DUP4
00002510: SUB
00002511: SUB
00002512: DUP2
00002513: MSTORE
00002514: SWAP1
00002515: PUSH1 0x40
00002517: MSTORE
00002518: DUP1
00002519: MLOAD
0000251a: SWAP1
0000251b: PUSH1 0x20
0000251d: ADD
0000251e: KECCAK256
0000251f: SWAP1
00002520: POP
00002521: DUP1
00002522: DUP3
00002523: PUSH1 0x00
00002525: ADD
00002526: MLOAD
00002527: EQ
00002528: PUSH2 0x2543
0000252b: JUMPI
0000252c: PUSH1 0x40
0000252e: MLOAD
0000252f: PUSH3 0x461bcd
00002533: PUSH1 0xe5
00002535: SHL
00002536: DUP2
00002537: MSTORE
00002538: PUSH1 0x04
0000253a: ADD
0000253b: PUSH2 0x07cf
0000253e: SWAP1
0000253f: PUSH2 0x4ae0
00002542: JUMP
00002543: JUMPDEST
00002544: POP
00002545: POP
00002546: PUSH1 0x00
00002548: SWAP1
00002549: DUP2
0000254a: MSTORE
0000254b: PUSH1 0x0b
0000254d: PUSH1 0x20
0000254f: MSTORE
00002550: PUSH1 0x40
00002552: SWAP1
00002553: KECCAK256
00002554: PUSH1 0x01
00002556: SWAP1
00002557: DUP2
00002558: ADD
00002559: DUP1
0000255a: SLOAD
0000255b: PUSH1 0xff
0000255d: PUSH1 0x40
0000255f: SHL
00002560: NOT
00002561: AND
00002562: PUSH1 0x01
00002564: PUSH1 0x40
00002566: SHL
00002567: OR
00002568: PUSH8 0xffffffffffffffff
00002571: NOT
00002572: AND
00002573: PUSH8 0xffffffffffffffff
0000257c: DUP14
0000257d: AND
0000257e: OR
0000257f: SWAP1
00002580: SSTORE
00002581: PUSH1 0x0d
00002583: DUP1
00002584: SLOAD
00002585: SWAP1
00002586: SWAP2
00002587: ADD
00002588: SWAP1
00002589: SSTORE
0000258a: POP
0000258b: JUMPDEST
0000258c: POP
0000258d: JUMPDEST
0000258e: PUSH1 0x01
00002590: ADD
00002591: PUSH2 0x207d
00002594: JUMP
00002595: JUMPDEST
00002596: POP
00002597: PUSH1 0x00
00002599: PUSH4 0xffffffff
0000259e: DUP3
0000259f: AND
000025a0: ISZERO
000025a1: PUSH2 0x2693
000025a4: JUMPI
000025a5: PUSH1 0x00
000025a7: DUP3
000025a8: PUSH4 0xffffffff
000025ad: AND
000025ae: PUSH8 0xffffffffffffffff
000025b7: DUP2
000025b8: GT
000025b9: DUP1
000025ba: ISZERO
000025bb: PUSH2 0x25c3
000025be: JUMPI
000025bf: PUSH1 0x00
000025c1: DUP1
000025c2: REVERT
000025c3: JUMPDEST
000025c4: POP
000025c5: PUSH1 0x40
000025c7: MLOAD
000025c8: SWAP1
000025c9: DUP1
000025ca: DUP3
000025cb: MSTORE
000025cc: DUP1
000025cd: PUSH1 0x20
000025cf: MUL
000025d0: PUSH1 0x20
000025d2: ADD
000025d3: DUP3
000025d4: ADD
000025d5: PUSH1 0x40
000025d7: MSTORE
000025d8: DUP1
000025d9: ISZERO
000025da: PUSH2 0x25ed
000025dd: JUMPI
000025de: DUP2
000025df: PUSH1 0x20
000025e1: ADD
000025e2: PUSH1 0x20
000025e4: DUP3
000025e5: MUL
000025e6: DUP1
000025e7: CALLDATASIZE
000025e8: DUP4
000025e9: CALLDATACOPY
000025ea: ADD
000025eb: SWAP1
000025ec: POP
000025ed: JUMPDEST
000025ee: POP
000025ef: SWAP1
000025f0: POP
000025f1: PUSH1 0x00
000025f3: JUMPDEST
000025f4: DUP4
000025f5: PUSH4 0xffffffff
000025fa: AND
000025fb: DUP2
000025fc: LT
000025fd: ISZERO
000025fe: PUSH2 0x2667
00002601: JUMPI
00002602: DUP9
00002603: DUP9
00002604: DUP7
00002605: DUP4
00002606: DUP2
00002607: MLOAD
00002608: DUP2
00002609: LT
0000260a: PUSH2 0x260f
0000260d: JUMPI
0000260e: INVALID
0000260f: JUMPDEST
00002610: PUSH1 0x20
00002612: MUL
00002613: PUSH1 0x20
00002615: ADD
00002616: ADD
00002617: MLOAD
00002618: DUP2
00002619: DUP2
0000261a: LT
0000261b: PUSH2 0x2620
0000261e: JUMPI
0000261f: INVALID
00002620: JUMPDEST
00002621: SWAP1
00002622: POP
00002623: PUSH1 0x20
00002625: MUL
00002626: DUP2
00002627: ADD
00002628: SWAP1
00002629: PUSH2 0x2632
0000262c: SWAP2
0000262d: SWAP1
0000262e: PUSH2 0x4ee5
00002631: JUMP
00002632: JUMPDEST
00002633: PUSH1 0x40
00002635: MLOAD
00002636: PUSH2 0x2640
00002639: SWAP3
0000263a: SWAP2
0000263b: SWAP1
0000263c: PUSH2 0x46e4
0000263f: JUMP
00002640: JUMPDEST
00002641: PUSH1 0x40
00002643: MLOAD
00002644: DUP1
00002645: SWAP2
00002646: SUB
00002647: SWAP1
00002648: KECCAK256
00002649: DUP3
0000264a: DUP3
0000264b: DUP2
0000264c: MLOAD
0000264d: DUP2
0000264e: LT
0000264f: PUSH2 0x2654
00002652: JUMPI
00002653: INVALID
00002654: JUMPDEST
00002655: PUSH1 0x20
00002657: SWAP1
00002658: DUP2
00002659: MUL
0000265a: SWAP2
0000265b: SWAP1
0000265c: SWAP2
0000265d: ADD
0000265e: ADD
0000265f: MSTORE
00002660: PUSH1 0x01
00002662: ADD
00002663: PUSH2 0x25f3
00002666: JUMP
00002667: JUMPDEST
00002668: POP
00002669: DUP1
0000266a: PUSH1 0x40
0000266c: MLOAD
0000266d: PUSH1 0x20
0000266f: ADD
00002670: PUSH2 0x2679
00002673: SWAP2
00002674: SWAP1
00002675: PUSH2 0x46ae
00002678: JUMP
00002679: JUMPDEST
0000267a: PUSH1 0x40
0000267c: MLOAD
0000267d: PUSH1 0x20
0000267f: DUP2
00002680: DUP4
00002681: SUB
00002682: SUB
00002683: DUP2
00002684: MSTORE
00002685: SWAP1
00002686: PUSH1 0x40
00002688: MSTORE
00002689: DUP1
0000268a: MLOAD
0000268b: SWAP1
0000268c: PUSH1 0x20
0000268e: ADD
0000268f: KECCAK256
00002690: SWAP2
00002691: POP
00002692: POP
00002693: JUMPDEST
00002694: PUSH1 0x40
00002696: DUP1
00002697: MLOAD
00002698: PUSH1 0x80
0000269a: DUP2
0000269b: ADD
0000269c: DUP3
0000269d: MSTORE
0000269e: DUP6
0000269f: DUP2
000026a0: MSTORE
000026a1: PUSH1 0x20
000026a3: DUP2
000026a4: ADD
000026a5: DUP4
000026a6: DUP2
000026a7: MSTORE
000026a8: PUSH1 0x01
000026aa: PUSH1 0x01
000026ac: PUSH1 0x80
000026ae: SHL
000026af: SUB
000026b0: NUMBER
000026b1: DUP2
000026b2: AND
000026b3: DUP4
000026b4: DUP6
000026b5: ADD
000026b6: SWAP1
000026b7: DUP2
000026b8: MSTORE
000026b9: DUP11
000026ba: DUP3
000026bb: AND
000026bc: PUSH1 0x60
000026be: DUP6
000026bf: ADD
000026c0: SWAP1
000026c1: DUP2
000026c2: MSTORE
000026c3: PUSH1 0x03
000026c5: DUP1
000026c6: SLOAD
000026c7: PUSH1 0x01
000026c9: DUP2
000026ca: ADD
000026cb: DUP3
000026cc: SSTORE
000026cd: PUSH1 0x00
000026cf: DUP3
000026d0: SWAP1
000026d1: MSTORE
000026d2: DUP7
000026d3: MLOAD
000026d4: SWAP2
000026d5: MUL
000026d6: PUSH32 0xc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b
000026f7: DUP2
000026f8: ADD
000026f9: SWAP2
000026fa: SWAP1
000026fb: SWAP2
000026fc: SSTORE
000026fd: SWAP4
000026fe: MLOAD
000026ff: PUSH32 0xc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85c
00002720: DUP6
00002721: ADD
00002722: SSTORE
00002723: SWAP1
00002724: MLOAD
00002725: PUSH32 0xc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85d
00002746: SWAP1
00002747: SWAP4
00002748: ADD
00002749: DUP1
0000274a: SLOAD
0000274b: SWAP2
0000274c: MLOAD
0000274d: DUP4
0000274e: AND
0000274f: PUSH1 0x01
00002751: PUSH1 0x80
00002753: SHL
00002754: MUL
00002755: SWAP4
00002756: DUP4
00002757: AND
00002758: PUSH16 0xffffffffffffffffffffffffffffffff
00002769: NOT
0000276a: SWAP1
0000276b: SWAP3
0000276c: AND
0000276d: SWAP2
0000276e: SWAP1
0000276f: SWAP2
00002770: OR
00002771: SWAP1
00002772: SWAP2
00002773: AND
00002774: SWAP2
00002775: SWAP1
00002776: SWAP2
00002777: OR
00002778: SWAP1
00002779: SSTORE
0000277a: SWAP1
0000277b: MLOAD
0000277c: PUSH32 0x8f398593f037f47ea1fc7ede311023f216c9f01cea5795d6df8c3caf1eaecff0
0000279d: SWAP1
0000279e: PUSH2 0x27a8
000027a1: SWAP1
000027a2: DUP12
000027a3: SWAP1
000027a4: PUSH2 0x4e73
000027a7: JUMP
000027a8: JUMPDEST
000027a9: PUSH1 0x40
000027ab: MLOAD
000027ac: DUP1
000027ad: SWAP2
000027ae: SUB
000027af: SWAP1
000027b0: LOG1
000027b1: POP
000027b2: POP
000027b3: POP
000027b4: POP
000027b5: POP
000027b6: POP
000027b7: POP
000027b8: POP
000027b9: POP
000027ba: JUMP
000027bb: JUMPDEST
000027bc: PUSH1 0x04
000027be: SLOAD
000027bf: DUP2
000027c0: JUMP
000027c1: JUMPDEST
000027c2: PUSH1 0x03
000027c4: DUP2
000027c5: DUP2
000027c6: SLOAD
000027c7: DUP2
000027c8: LT
000027c9: PUSH2 0x27d1
000027cc: JUMPI
000027cd: PUSH1 0x00
000027cf: DUP1
000027d0: REVERT
000027d1: JUMPDEST
000027d2: PUSH1 0x00
000027d4: SWAP2
000027d5: DUP3
000027d6: MSTORE
000027d7: PUSH1 0x20
000027d9: SWAP1
000027da: SWAP2
000027db: KECCAK256
000027dc: PUSH1 0x03
000027de: SWAP1
000027df: SWAP2
000027e0: MUL
000027e1: ADD
000027e2: DUP1
000027e3: SLOAD
000027e4: PUSH1 0x01
000027e6: DUP3
000027e7: ADD
000027e8: SLOAD
000027e9: PUSH1 0x02
000027eb: SWAP1
000027ec: SWAP3
000027ed: ADD
000027ee: SLOAD
000027ef: SWAP1
000027f0: SWAP3
000027f1: POP
000027f2: PUSH1 0x01
000027f4: PUSH1 0x01
000027f6: PUSH1 0x80
000027f8: SHL
000027f9: SUB
000027fa: DUP1
000027fb: DUP3
000027fc: AND
000027fd: SWAP2
000027fe: PUSH1 0x01
00002800: PUSH1 0x80
00002802: SHL
00002803: SWAP1
00002804: DIV
00002805: AND
00002806: DUP5
00002807: JUMP
00002808: JUMPDEST
00002809: PUSH2 0x2810
0000280c: PUSH2 0x2dab
0000280f: JUMP
00002810: JUMPDEST
00002811: PUSH1 0x01
00002813: PUSH1 0x01
00002815: PUSH1 0xa0
00002817: SHL
00002818: SUB
00002819: AND
0000281a: PUSH2 0x2821
0000281d: PUSH2 0x1488
00002820: JUMP
00002821: JUMPDEST
00002822: PUSH1 0x01
00002824: PUSH1 0x01
00002826: PUSH1 0xa0
00002828: SHL
00002829: SUB
0000282a: AND
0000282b: EQ
0000282c: PUSH2 0x286a
0000282f: JUMPI
00002830: PUSH1 0x40
00002832: DUP1
00002833: MLOAD
00002834: PUSH3 0x461bcd
00002838: PUSH1 0xe5
0000283a: SHL
0000283b: DUP2
0000283c: MSTORE
0000283d: PUSH1 0x20
0000283f: PUSH1 0x04
00002841: DUP3
00002842: ADD
00002843: DUP2
00002844: SWAP1
00002845: MSTORE
00002846: PUSH1 0x24
00002848: DUP3
00002849: ADD
0000284a: MSTORE
0000284b: PUSH1 0x00
0000284d: DUP1
0000284e: MLOAD
0000284f: PUSH1 0x20
00002851: PUSH2 0x5032
00002854: DUP4
00002855: CODECOPY
00002856: DUP2
00002857: MLOAD
00002858: SWAP2
00002859: MSTORE
0000285a: PUSH1 0x44
0000285c: DUP3
0000285d: ADD
0000285e: MSTORE
0000285f: SWAP1
00002860: MLOAD
00002861: SWAP1
00002862: DUP2
00002863: SWAP1
00002864: SUB
00002865: PUSH1 0x64
00002867: ADD
00002868: SWAP1
00002869: REVERT
0000286a: JUMPDEST
0000286b: PUSH1 0x01
0000286d: PUSH1 0x01
0000286f: PUSH1 0xa0
00002871: SHL
00002872: SUB
00002873: DUP2
00002874: AND
00002875: PUSH2 0x28af
00002878: JUMPI
00002879: PUSH1 0x40
0000287b: MLOAD
0000287c: PUSH3 0x461bcd
00002880: PUSH1 0xe5
00002882: SHL
00002883: DUP2
00002884: MSTORE
00002885: PUSH1 0x04
00002887: ADD
00002888: DUP1
00002889: DUP1
0000288a: PUSH1 0x20
0000288c: ADD
0000288d: DUP3
0000288e: DUP2
0000288f: SUB
00002890: DUP3
00002891: MSTORE
00002892: PUSH1 0x26
00002894: DUP2
00002895: MSTORE
00002896: PUSH1 0x20
00002898: ADD
00002899: DUP1
0000289a: PUSH2 0x4fe6
0000289d: PUSH1 0x26
0000289f: SWAP2
000028a0: CODECOPY
000028a1: PUSH1 0x40
000028a3: ADD
000028a4: SWAP2
000028a5: POP
000028a6: POP
000028a7: PUSH1 0x40
000028a9: MLOAD
000028aa: DUP1
000028ab: SWAP2
000028ac: SUB
000028ad: SWAP1
000028ae: REVERT
000028af: JUMPDEST
000028b0: PUSH1 0x00
000028b2: DUP1
000028b3: SLOAD
000028b4: PUSH1 0x40
000028b6: MLOAD
000028b7: PUSH1 0x01
000028b9: PUSH1 0x01
000028bb: PUSH1 0xa0
000028bd: SHL
000028be: SUB
000028bf: DUP1
000028c0: DUP6
000028c1: AND
000028c2: SWAP4
000028c3: SWAP3
000028c4: AND
000028c5: SWAP2
000028c6: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
000028e7: SWAP2
000028e8: LOG3
000028e9: PUSH1 0x00
000028eb: DUP1
000028ec: SLOAD
000028ed: PUSH1 0x01
000028ef: PUSH1 0x01
000028f1: PUSH1 0xa0
000028f3: SHL
000028f4: SUB
000028f5: NOT
000028f6: AND
000028f7: PUSH1 0x01
000028f9: PUSH1 0x01
000028fb: PUSH1 0xa0
000028fd: SHL
000028fe: SUB
000028ff: SWAP3
00002900: SWAP1
00002901: SWAP3
00002902: AND
00002903: SWAP2
00002904: SWAP1
00002905: SWAP2
00002906: OR
00002907: SWAP1
00002908: SSTORE
00002909: JUMP
0000290a: JUMPDEST
0000290b: PUSH2 0x2912
0000290e: PUSH2 0x1171
00002911: JUMP
00002912: JUMPDEST
00002913: ISZERO
00002914: PUSH2 0x2957
00002917: JUMPI
00002918: PUSH1 0x40
0000291a: DUP1
0000291b: MLOAD
0000291c: PUSH3 0x461bcd
00002920: PUSH1 0xe5
00002922: SHL
00002923: DUP2
00002924: MSTORE
00002925: PUSH1 0x20
00002927: PUSH1 0x04
00002929: DUP3
0000292a: ADD
0000292b: MSTORE
0000292c: PUSH1 0x10
0000292e: PUSH1 0x24
00002930: DUP3
00002931: ADD
00002932: MSTORE
00002933: PUSH16 0x14185d5cd8589b194e881c185d5cd959
00002944: PUSH1 0x82
00002946: SHL
00002947: PUSH1 0x44
00002949: DUP3
0000294a: ADD
0000294b: MSTORE
0000294c: SWAP1
0000294d: MLOAD
0000294e: SWAP1
0000294f: DUP2
00002950: SWAP1
00002951: SUB
00002952: PUSH1 0x64
00002954: ADD
00002955: SWAP1
00002956: REVERT
00002957: JUMPDEST
00002958: PUSH1 0x00
0000295a: PUSH2 0x2963
0000295d: DUP4
0000295e: DUP4
0000295f: PUSH2 0x30c6
00002962: JUMP
00002963: JUMPDEST
00002964: SWAP1
00002965: POP
00002966: PUSH2 0x2979
00002969: PUSH1 0x01
0000296b: PUSH1 0x01
0000296d: PUSH1 0xa0
0000296f: SHL
00002970: SUB
00002971: DUP4
00002972: AND
00002973: DUP5
00002974: DUP4
00002975: PUSH2 0x32a5
00002978: JUMP
00002979: JUMPDEST
0000297a: POP
0000297b: POP
0000297c: POP
0000297d: JUMP
0000297e: JUMPDEST
0000297f: PUSH2 0x2986
00002982: PUSH2 0x3df6
00002985: JUMP
00002986: JUMPDEST
00002987: PUSH1 0x00
00002989: DUP1
0000298a: PUSH1 0x00
0000298c: DUP1
0000298d: PUSH1 0x00
0000298f: DUP7
00002990: DUP1
00002991: PUSH1 0x20
00002993: ADD
00002994: SWAP1
00002995: MLOAD
00002996: DUP2
00002997: ADD
00002998: SWAP1
00002999: PUSH2 0x29a2
0000299c: SWAP2
0000299d: SWAP1
0000299e: PUSH2 0x4429
000029a1: JUMP
000029a2: JUMPDEST
000029a3: PUSH1 0x40
000029a5: DUP1
000029a6: MLOAD
000029a7: PUSH1 0xa0
000029a9: DUP2
000029aa: ADD
000029ab: DUP3
000029ac: MSTORE
000029ad: PUSH1 0xff
000029af: SWAP1
000029b0: SWAP7
000029b1: AND
000029b2: DUP7
000029b3: MSTORE
000029b4: PUSH1 0x20
000029b6: DUP7
000029b7: ADD
000029b8: SWAP5
000029b9: SWAP1
000029ba: SWAP5
000029bb: MSTORE
000029bc: PUSH4 0xffffffff
000029c1: SWAP1
000029c2: SWAP3
000029c3: AND
000029c4: SWAP3
000029c5: DUP5
000029c6: ADD
000029c7: SWAP3
000029c8: SWAP1
000029c9: SWAP3
000029ca: MSTORE
000029cb: PUSH1 0x60
000029cd: DUP4
000029ce: ADD
000029cf: SWAP2
000029d0: SWAP1
000029d1: SWAP2
000029d2: MSTORE
000029d3: PUSH1 0x80
000029d5: DUP3
000029d6: ADD
000029d7: MSTORE
000029d8: SWAP6
000029d9: POP
000029da: POP
000029db: POP
000029dc: POP
000029dd: POP
000029de: POP
000029df: JUMPDEST
000029e0: SWAP2
000029e1: SWAP1
000029e2: POP
000029e3: JUMP
000029e4: JUMPDEST
000029e5: PUSH1 0x00
000029e7: DUP3
000029e8: DUP3
000029e9: GT
000029ea: ISZERO
000029eb: PUSH2 0x2a3b
000029ee: JUMPI
000029ef: PUSH1 0x40
000029f1: DUP1
000029f2: MLOAD
000029f3: PUSH3 0x461bcd
000029f7: PUSH1 0xe5
000029f9: SHL
000029fa: DUP2
000029fb: MSTORE
000029fc: PUSH1 0x20
000029fe: PUSH1 0x04
00002a00: DUP3
00002a01: ADD
00002a02: MSTORE
00002a03: PUSH1 0x1e
00002a05: PUSH1 0x24
00002a07: DUP3
00002a08: ADD
00002a09: MSTORE
00002a0a: PUSH32 0x536166654d6174683a207375627472616374696f6e206f766572666c6f770000
00002a2b: PUSH1 0x44
00002a2d: DUP3
00002a2e: ADD
00002a2f: MSTORE
00002a30: SWAP1
00002a31: MLOAD
00002a32: SWAP1
00002a33: DUP2
00002a34: SWAP1
00002a35: SUB
00002a36: PUSH1 0x64
00002a38: ADD
00002a39: SWAP1
00002a3a: REVERT
00002a3b: JUMPDEST
00002a3c: POP
00002a3d: SWAP1
00002a3e: SUB
00002a3f: SWAP1
00002a40: JUMP
00002a41: JUMPDEST
00002a42: PUSH1 0x00
00002a44: PUSH2 0x2ad7
00002a47: DUP3
00002a48: DUP6
00002a49: PUSH1 0x01
00002a4b: PUSH1 0x01
00002a4d: PUSH1 0xa0
00002a4f: SHL
00002a50: SUB
00002a51: AND
00002a52: PUSH4 0xdd62ed3e
00002a57: ADDRESS
00002a58: DUP8
00002a59: PUSH1 0x40
00002a5b: MLOAD
00002a5c: DUP4
00002a5d: PUSH4 0xffffffff
00002a62: AND
00002a63: PUSH1 0xe0
00002a65: SHL
00002a66: DUP2
00002a67: MSTORE
00002a68: PUSH1 0x04
00002a6a: ADD
00002a6b: DUP1
00002a6c: DUP4
00002a6d: PUSH1 0x01
00002a6f: PUSH1 0x01
00002a71: PUSH1 0xa0
00002a73: SHL
00002a74: SUB
00002a75: AND
00002a76: DUP2
00002a77: MSTORE
00002a78: PUSH1 0x20
00002a7a: ADD
00002a7b: DUP3
00002a7c: PUSH1 0x01
00002a7e: PUSH1 0x01
00002a80: PUSH1 0xa0
00002a82: SHL
00002a83: SUB
00002a84: AND
00002a85: DUP2
00002a86: MSTORE
00002a87: PUSH1 0x20
00002a89: ADD
00002a8a: SWAP3
00002a8b: POP
00002a8c: POP
00002a8d: POP
00002a8e: PUSH1 0x20
00002a90: PUSH1 0x40
00002a92: MLOAD
00002a93: DUP1
00002a94: DUP4
00002a95: SUB
00002a96: DUP2
00002a97: DUP7
00002a98: DUP1
00002a99: EXTCODESIZE
00002a9a: ISZERO
00002a9b: DUP1
00002a9c: ISZERO
00002a9d: PUSH2 0x2aa5
00002aa0: JUMPI
00002aa1: PUSH1 0x00
00002aa3: DUP1
00002aa4: REVERT
00002aa5: JUMPDEST
00002aa6: POP
00002aa7: GAS
00002aa8: STATICCALL
00002aa9: ISZERO
00002aaa: DUP1
00002aab: ISZERO
00002aac: PUSH2 0x2ab9
00002aaf: JUMPI
00002ab0: RETURNDATASIZE
00002ab1: PUSH1 0x00
00002ab3: DUP1
00002ab4: RETURNDATACOPY
00002ab5: RETURNDATASIZE
00002ab6: PUSH1 0x00
00002ab8: REVERT
00002ab9: JUMPDEST
00002aba: POP
00002abb: POP
00002abc: POP
00002abd: POP
00002abe: PUSH1 0x40
00002ac0: MLOAD
00002ac1: RETURNDATASIZE
00002ac2: PUSH1 0x20
00002ac4: DUP2
00002ac5: LT
00002ac6: ISZERO
00002ac7: PUSH2 0x2acf
00002aca: JUMPI
00002acb: PUSH1 0x00
00002acd: DUP1
00002ace: REVERT
00002acf: JUMPDEST
00002ad0: POP
00002ad1: MLOAD
00002ad2: SWAP1
00002ad3: PUSH2 0x2b2c
00002ad6: JUMP
00002ad7: JUMPDEST
00002ad8: PUSH1 0x40
00002ada: DUP1
00002adb: MLOAD
00002adc: PUSH1 0x01
00002ade: PUSH1 0x01
00002ae0: PUSH1 0xa0
00002ae2: SHL
00002ae3: SUB
00002ae4: DUP7
00002ae5: AND
00002ae6: PUSH1 0x24
00002ae8: DUP3
00002ae9: ADD
00002aea: MSTORE
00002aeb: PUSH1 0x44
00002aed: DUP1
00002aee: DUP3
00002aef: ADD
00002af0: DUP5
00002af1: SWAP1
00002af2: MSTORE
00002af3: DUP3
00002af4: MLOAD
00002af5: DUP1
00002af6: DUP4
00002af7: SUB
00002af8: SWAP1
00002af9: SWAP2
00002afa: ADD
00002afb: DUP2
00002afc: MSTORE
00002afd: PUSH1 0x64
00002aff: SWAP1
00002b00: SWAP2
00002b01: ADD
00002b02: SWAP1
00002b03: SWAP2
00002b04: MSTORE
00002b05: PUSH1 0x20
00002b07: DUP2
00002b08: ADD
00002b09: DUP1
00002b0a: MLOAD
00002b0b: PUSH1 0x01
00002b0d: PUSH1 0x01
00002b0f: PUSH1 0xe0
00002b11: SHL
00002b12: SUB
00002b13: AND
00002b14: PUSH4 0x095ea7b3
00002b19: PUSH1 0xe0
00002b1b: SHL
00002b1c: OR
00002b1d: SWAP1
00002b1e: MSTORE
00002b1f: SWAP1
00002b20: SWAP2
00002b21: POP
00002b22: PUSH2 0x15cd
00002b25: SWAP1
00002b26: DUP6
00002b27: SWAP1
00002b28: PUSH2 0x3b05
00002b2b: JUMP
00002b2c: JUMPDEST
00002b2d: PUSH1 0x00
00002b2f: DUP3
00002b30: DUP3
00002b31: ADD
00002b32: DUP4
00002b33: DUP2
00002b34: LT
00002b35: ISZERO
00002b36: PUSH2 0x2b86
00002b39: JUMPI
00002b3a: PUSH1 0x40
00002b3c: DUP1
00002b3d: MLOAD
00002b3e: PUSH3 0x461bcd
00002b42: PUSH1 0xe5
00002b44: SHL
00002b45: DUP2
00002b46: MSTORE
00002b47: PUSH1 0x20
00002b49: PUSH1 0x04
00002b4b: DUP3
00002b4c: ADD
00002b4d: MSTORE
00002b4e: PUSH1 0x1b
00002b50: PUSH1 0x24
00002b52: DUP3
00002b53: ADD
00002b54: MSTORE
00002b55: PUSH32 0x536166654d6174683a206164646974696f6e206f766572666c6f770000000000
00002b76: PUSH1 0x44
00002b78: DUP3
00002b79: ADD
00002b7a: MSTORE
00002b7b: SWAP1
00002b7c: MLOAD
00002b7d: SWAP1
00002b7e: DUP2
00002b7f: SWAP1
00002b80: SUB
00002b81: PUSH1 0x64
00002b83: ADD
00002b84: SWAP1
00002b85: REVERT
00002b86: JUMPDEST
00002b87: SWAP4
00002b88: SWAP3
00002b89: POP
00002b8a: POP
00002b8b: POP
00002b8c: JUMP
00002b8d: JUMPDEST
00002b8e: PUSH1 0x02
00002b90: SLOAD
00002b91: PUSH1 0x40
00002b93: MLOAD
00002b94: PUSH4 0x639260df
00002b99: PUSH1 0xe0
00002b9b: SHL
00002b9c: DUP2
00002b9d: MSTORE
00002b9e: CALLER
00002b9f: SWAP2
00002ba0: PUSH1 0x00
00002ba2: SWAP2
00002ba3: PUSH1 0x01
00002ba5: PUSH1 0x01
00002ba7: PUSH1 0xa0
00002ba9: SHL
00002baa: SUB
00002bab: SWAP1
00002bac: SWAP2
00002bad: AND
00002bae: SWAP1
00002baf: PUSH4 0x639260df
00002bb4: SWAP1
00002bb5: PUSH2 0x2bc2
00002bb8: SWAP1
00002bb9: DUP8
00002bba: SWAP1
00002bbb: PUSH1 0x04
00002bbd: ADD
00002bbe: PUSH2 0x4730
00002bc1: JUMP
00002bc2: JUMPDEST
00002bc3: PUSH1 0x20
00002bc5: PUSH1 0x40
00002bc7: MLOAD
00002bc8: DUP1
00002bc9: DUP4
00002bca: SUB
00002bcb: DUP2
00002bcc: DUP7
00002bcd: DUP1
00002bce: EXTCODESIZE
00002bcf: ISZERO
00002bd0: DUP1
00002bd1: ISZERO
00002bd2: PUSH2 0x2bda
00002bd5: JUMPI
00002bd6: PUSH1 0x00
00002bd8: DUP1
00002bd9: REVERT
00002bda: JUMPDEST
00002bdb: POP
00002bdc: GAS
00002bdd: STATICCALL
00002bde: ISZERO
00002bdf: DUP1
00002be0: ISZERO
00002be1: PUSH2 0x2bee
00002be4: JUMPI
00002be5: RETURNDATASIZE
00002be6: PUSH1 0x00
00002be8: DUP1
00002be9: RETURNDATACOPY
00002bea: RETURNDATASIZE
00002beb: PUSH1 0x00
00002bed: REVERT
00002bee: JUMPDEST
00002bef: POP
00002bf0: POP
00002bf1: POP
00002bf2: POP
00002bf3: PUSH1 0x40
00002bf5: MLOAD
00002bf6: RETURNDATASIZE
00002bf7: PUSH1 0x1f
00002bf9: NOT
00002bfa: PUSH1 0x1f
00002bfc: DUP3
00002bfd: ADD
00002bfe: AND
00002bff: DUP3
00002c00: ADD
00002c01: DUP1
00002c02: PUSH1 0x40
00002c04: MSTORE
00002c05: POP
00002c06: DUP2
00002c07: ADD
00002c08: SWAP1
00002c09: PUSH2 0x2c12
00002c0c: SWAP2
00002c0d: SWAP1
00002c0e: PUSH2 0x4298
00002c11: JUMP
00002c12: JUMPDEST
00002c13: SWAP1
00002c14: POP
00002c15: PUSH4 0xffffffff
00002c1a: DUP2
00002c1b: AND
00002c1c: PUSH2 0x2c37
00002c1f: JUMPI
00002c20: PUSH1 0x40
00002c22: MLOAD
00002c23: PUSH3 0x461bcd
00002c27: PUSH1 0xe5
00002c29: SHL
00002c2a: DUP2
00002c2b: MSTORE
00002c2c: PUSH1 0x04
00002c2e: ADD
00002c2f: PUSH2 0x07cf
00002c32: SWAP1
00002c33: PUSH2 0x4c15
00002c36: JUMP
00002c37: JUMPDEST
00002c38: PUSH1 0x01
00002c3a: PUSH1 0x01
00002c3c: PUSH1 0xa0
00002c3e: SHL
00002c3f: SUB
00002c40: DUP5
00002c41: AND
00002c42: PUSH1 0x00
00002c44: SWAP1
00002c45: DUP2
00002c46: MSTORE
00002c47: PUSH1 0x10
00002c49: PUSH1 0x20
00002c4b: MSTORE
00002c4c: PUSH1 0x40
00002c4e: DUP2
00002c4f: KECCAK256
00002c50: SLOAD
00002c51: PUSH2 0x2c5a
00002c54: SWAP1
00002c55: DUP6
00002c56: PUSH2 0x2b2c
00002c59: JUMP
00002c5a: JUMPDEST
00002c5b: PUSH1 0x01
00002c5d: PUSH1 0x01
00002c5f: PUSH1 0xa0
00002c61: SHL
00002c62: SUB
00002c63: DUP7
00002c64: AND
00002c65: PUSH1 0x00
00002c67: SWAP1
00002c68: DUP2
00002c69: MSTORE
00002c6a: PUSH1 0x11
00002c6c: PUSH1 0x20
00002c6e: MSTORE
00002c6f: PUSH1 0x40
00002c71: SWAP1
00002c72: KECCAK256
00002c73: SLOAD
00002c74: SWAP1
00002c75: SWAP2
00002c76: POP
00002c77: DUP2
00002c78: GT
00002c79: ISZERO
00002c7a: PUSH2 0x2c95
00002c7d: JUMPI
00002c7e: PUSH1 0x40
00002c80: MLOAD
00002c81: PUSH3 0x461bcd
00002c85: PUSH1 0xe5
00002c87: SHL
00002c88: DUP2
00002c89: MSTORE
00002c8a: PUSH1 0x04
00002c8c: ADD
00002c8d: PUSH2 0x07cf
00002c90: SWAP1
00002c91: PUSH2 0x48dc
00002c94: JUMP
00002c95: JUMPDEST
00002c96: PUSH1 0x01
00002c98: PUSH1 0x01
00002c9a: PUSH1 0xa0
00002c9c: SHL
00002c9d: SUB
00002c9e: DUP6
00002c9f: AND
00002ca0: PUSH1 0x00
00002ca2: SWAP1
00002ca3: DUP2
00002ca4: MSTORE
00002ca5: PUSH1 0x10
00002ca7: PUSH1 0x20
00002ca9: SWAP1
00002caa: DUP2
00002cab: MSTORE
00002cac: PUSH1 0x40
00002cae: DUP1
00002caf: DUP4
00002cb0: KECCAK256
00002cb1: DUP5
00002cb2: SWAP1
00002cb3: SSTORE
00002cb4: PUSH1 0x08
00002cb6: DUP1
00002cb7: SLOAD
00002cb8: PUSH1 0x01
00002cba: DUP2
00002cbb: ADD
00002cbc: SWAP1
00002cbd: SWAP2
00002cbe: SSTORE
00002cbf: SWAP1
00002cc0: MLOAD
00002cc1: SWAP1
00002cc2: SWAP3
00002cc3: SWAP2
00002cc4: PUSH2 0x2cd3
00002cc7: SWAP2
00002cc8: DUP8
00002cc9: SWAP2
00002cca: DUP8
00002ccb: SWAP2
00002ccc: DUP11
00002ccd: SWAP2
00002cce: ADD
00002ccf: PUSH2 0x4677
00002cd2: JUMP
00002cd3: JUMPDEST
00002cd4: PUSH1 0x40
00002cd6: DUP1
00002cd7: MLOAD
00002cd8: PUSH1 0x1f
00002cda: NOT
00002cdb: DUP2
00002cdc: DUP5
00002cdd: SUB
00002cde: ADD
00002cdf: DUP2
00002ce0: MSTORE
00002ce1: DUP3
00002ce2: DUP3
00002ce3: MSTORE
00002ce4: DUP1
00002ce5: MLOAD
00002ce6: PUSH1 0x20
00002ce8: SWAP2
00002ce9: DUP3
00002cea: ADD
00002ceb: KECCAK256
00002cec: PUSH1 0x60
00002cee: DUP5
00002cef: ADD
00002cf0: DUP4
00002cf1: MSTORE
00002cf2: DUP1
00002cf3: DUP5
00002cf4: MSTORE
00002cf5: PUSH1 0x03
00002cf7: SLOAD
00002cf8: PUSH8 0xffffffffffffffff
00002d01: AND
00002d02: SWAP2
00002d03: DUP5
00002d04: ADD
00002d05: SWAP2
00002d06: SWAP1
00002d07: SWAP2
00002d08: MSTORE
00002d09: SWAP3
00002d0a: POP
00002d0b: DUP2
00002d0c: ADD
00002d0d: PUSH1 0x00
00002d0f: SWAP1
00002d10: MSTORE
00002d11: PUSH1 0x00
00002d13: DUP4
00002d14: DUP2
00002d15: MSTORE
00002d16: PUSH1 0x05
00002d18: PUSH1 0x20
00002d1a: SWAP1
00002d1b: DUP2
00002d1c: MSTORE
00002d1d: PUSH1 0x40
00002d1f: SWAP2
00002d20: DUP3
00002d21: SWAP1
00002d22: KECCAK256
00002d23: DUP4
00002d24: MLOAD
00002d25: DUP2
00002d26: SSTORE
00002d27: SWAP1
00002d28: DUP4
00002d29: ADD
00002d2a: MLOAD
00002d2b: PUSH1 0x01
00002d2d: DUP1
00002d2e: DUP4
00002d2f: ADD
00002d30: DUP1
00002d31: SLOAD
00002d32: PUSH8 0xffffffffffffffff
00002d3b: NOT
00002d3c: AND
00002d3d: PUSH8 0xffffffffffffffff
00002d46: SWAP1
00002d47: SWAP4
00002d48: AND
00002d49: SWAP3
00002d4a: SWAP1
00002d4b: SWAP3
00002d4c: OR
00002d4d: DUP1
00002d4e: DUP4
00002d4f: SSTORE
00002d50: SWAP4
00002d51: DUP6
00002d52: ADD
00002d53: MLOAD
00002d54: SWAP3
00002d55: SWAP4
00002d56: PUSH1 0xff
00002d58: PUSH1 0x40
00002d5a: SHL
00002d5b: NOT
00002d5c: AND
00002d5d: SWAP1
00002d5e: PUSH1 0x01
00002d60: PUSH1 0x40
00002d62: SHL
00002d63: SWAP1
00002d64: DUP5
00002d65: SWAP1
00002d66: DUP2
00002d67: GT
00002d68: ISZERO
00002d69: PUSH2 0x2d6e
00002d6c: JUMPI
00002d6d: INVALID
00002d6e: JUMPDEST
00002d6f: MUL
00002d70: OR
00002d71: SWAP1
00002d72: SSTORE
00002d73: POP
00002d74: SWAP1
00002d75: POP
00002d76: POP
00002d77: PUSH32 0xba6b61ba25da48510b2a171056f2d2ea3d73c9c0618aa8fdbafa7e991f82ee25
00002d98: DUP6
00002d99: DUP6
00002d9a: DUP9
00002d9b: DUP6
00002d9c: PUSH1 0x40
00002d9e: MLOAD
00002d9f: PUSH2 0x18be
00002da2: SWAP5
00002da3: SWAP4
00002da4: SWAP3
00002da5: SWAP2
00002da6: SWAP1
00002da7: PUSH2 0x4785
00002daa: JUMP
00002dab: JUMPDEST
00002dac: CALLER
00002dad: SWAP1
00002dae: JUMP
00002daf: JUMPDEST
00002db0: PUSH2 0x2db7
00002db3: PUSH2 0x1171
00002db6: JUMP
00002db7: JUMPDEST
00002db8: PUSH2 0x2dff
00002dbb: JUMPI
00002dbc: PUSH1 0x40
00002dbe: DUP1
00002dbf: MLOAD
00002dc0: PUSH3 0x461bcd
00002dc4: PUSH1 0xe5
00002dc6: SHL
00002dc7: DUP2
00002dc8: MSTORE
00002dc9: PUSH1 0x20
00002dcb: PUSH1 0x04
00002dcd: DUP3
00002dce: ADD
00002dcf: MSTORE
00002dd0: PUSH1 0x14
00002dd2: PUSH1 0x24
00002dd4: DUP3
00002dd5: ADD
00002dd6: MSTORE
00002dd7: PUSH20 0x14185d5cd8589b194e881b9bdd081c185d5cd959
00002dec: PUSH1 0x62
00002dee: SHL
00002def: PUSH1 0x44
00002df1: DUP3
00002df2: ADD
00002df3: MSTORE
00002df4: SWAP1
00002df5: MLOAD
00002df6: SWAP1
00002df7: DUP2
00002df8: SWAP1
00002df9: SUB
00002dfa: PUSH1 0x64
00002dfc: ADD
00002dfd: SWAP1
00002dfe: REVERT
00002dff: JUMPDEST
00002e00: PUSH1 0x00
00002e02: DUP1
00002e03: SLOAD
00002e04: PUSH1 0xff
00002e06: PUSH1 0xa0
00002e08: SHL
00002e09: NOT
00002e0a: AND
00002e0b: SWAP1
00002e0c: SSTORE
00002e0d: PUSH32 0x5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa
00002e2e: PUSH2 0x2e35
00002e31: PUSH2 0x2dab
00002e34: JUMP
00002e35: JUMPDEST
00002e36: PUSH1 0x40
00002e38: DUP1
00002e39: MLOAD
00002e3a: PUSH1 0x01
00002e3c: PUSH1 0x01
00002e3e: PUSH1 0xa0
00002e40: SHL
00002e41: SUB
00002e42: SWAP1
00002e43: SWAP3
00002e44: AND
00002e45: DUP3
00002e46: MSTORE
00002e47: MLOAD
00002e48: SWAP1
00002e49: DUP2
00002e4a: SWAP1
00002e4b: SUB
00002e4c: PUSH1 0x20
00002e4e: ADD
00002e4f: SWAP1
00002e50: LOG1
00002e51: JUMP
00002e52: JUMPDEST
00002e53: PUSH1 0x40
00002e55: DUP1
00002e56: MLOAD
00002e57: PUSH1 0x01
00002e59: PUSH1 0x01
00002e5b: PUSH1 0xa0
00002e5d: SHL
00002e5e: SUB
00002e5f: DUP1
00002e60: DUP7
00002e61: AND
00002e62: PUSH1 0x24
00002e64: DUP4
00002e65: ADD
00002e66: MSTORE
00002e67: DUP5
00002e68: AND
00002e69: PUSH1 0x44
00002e6b: DUP3
00002e6c: ADD
00002e6d: MSTORE
00002e6e: PUSH1 0x64
00002e70: DUP1
00002e71: DUP3
00002e72: ADD
00002e73: DUP5
00002e74: SWAP1
00002e75: MSTORE
00002e76: DUP3
00002e77: MLOAD
00002e78: DUP1
00002e79: DUP4
00002e7a: SUB
00002e7b: SWAP1
00002e7c: SWAP2
00002e7d: ADD
00002e7e: DUP2
00002e7f: MSTORE
00002e80: PUSH1 0x84
00002e82: SWAP1
00002e83: SWAP2
00002e84: ADD
00002e85: SWAP1
00002e86: SWAP2
00002e87: MSTORE
00002e88: PUSH1 0x20
00002e8a: DUP2
00002e8b: ADD
00002e8c: DUP1
00002e8d: MLOAD
00002e8e: PUSH1 0x01
00002e90: PUSH1 0x01
00002e92: PUSH1 0xe0
00002e94: SHL
00002e95: SUB
00002e96: AND
00002e97: PUSH4 0x23b872dd
00002e9c: PUSH1 0xe0
00002e9e: SHL
00002e9f: OR
00002ea0: SWAP1
00002ea1: MSTORE
00002ea2: PUSH2 0x15cd
00002ea5: SWAP1
00002ea6: DUP6
00002ea7: SWAP1
00002ea8: PUSH2 0x3b05
00002eab: JUMP
00002eac: JUMPDEST
00002ead: PUSH2 0x2eb4
00002eb0: PUSH2 0x1171
00002eb3: JUMP
00002eb4: JUMPDEST
00002eb5: ISZERO
00002eb6: PUSH2 0x2ef9
00002eb9: JUMPI
00002eba: PUSH1 0x40
00002ebc: DUP1
00002ebd: MLOAD
00002ebe: PUSH3 0x461bcd
00002ec2: PUSH1 0xe5
00002ec4: SHL
00002ec5: DUP2
00002ec6: MSTORE
00002ec7: PUSH1 0x20
00002ec9: PUSH1 0x04
00002ecb: DUP3
00002ecc: ADD
00002ecd: MSTORE
00002ece: PUSH1 0x10
00002ed0: PUSH1 0x24
00002ed2: DUP3
00002ed3: ADD
00002ed4: MSTORE
00002ed5: PUSH16 0x14185d5cd8589b194e881c185d5cd959
00002ee6: PUSH1 0x82
00002ee8: SHL
00002ee9: PUSH1 0x44
00002eeb: DUP3
00002eec: ADD
00002eed: MSTORE
00002eee: SWAP1
00002eef: MLOAD
00002ef0: SWAP1
00002ef1: DUP2
00002ef2: SWAP1
00002ef3: SUB
00002ef4: PUSH1 0x64
00002ef6: ADD
00002ef7: SWAP1
00002ef8: REVERT
00002ef9: JUMPDEST
00002efa: PUSH1 0x00
00002efc: DUP1
00002efd: SLOAD
00002efe: PUSH1 0xff
00002f00: PUSH1 0xa0
00002f02: SHL
00002f03: NOT
00002f04: AND
00002f05: PUSH1 0x01
00002f07: PUSH1 0xa0
00002f09: SHL
00002f0a: OR
00002f0b: SWAP1
00002f0c: SSTORE
00002f0d: PUSH32 0x62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258
00002f2e: PUSH2 0x2e35
00002f31: PUSH2 0x2dab
00002f34: JUMP
00002f35: JUMPDEST
00002f36: PUSH2 0x2f3d
00002f39: PUSH2 0x2eac
00002f3c: JUMP
00002f3d: JUMPDEST
00002f3e: PUSH1 0x03
00002f40: SLOAD
00002f41: DUP3
00002f42: LT
00002f43: ISZERO
00002f44: PUSH2 0x2f89
00002f47: JUMPI
00002f48: PUSH1 0x03
00002f4a: DUP1
00002f4b: SLOAD
00002f4c: PUSH1 0x00
00002f4e: NOT
00002f4f: DUP2
00002f50: ADD
00002f51: PUSH1 0x00
00002f53: MSTORE
00002f54: PUSH1 0x09
00002f56: PUSH1 0x20
00002f58: MSTORE
00002f59: DUP1
00002f5a: PUSH2 0x2f5f
00002f5d: JUMPI
00002f5e: INVALID
00002f5f: JUMPDEST
00002f60: PUSH1 0x00
00002f62: DUP3
00002f63: DUP2
00002f64: MSTORE
00002f65: PUSH1 0x20
00002f67: DUP2
00002f68: KECCAK256
00002f69: PUSH1 0x03
00002f6b: PUSH1 0x00
00002f6d: NOT
00002f6e: SWAP1
00002f6f: SWAP4
00002f70: ADD
00002f71: SWAP3
00002f72: DUP4
00002f73: MUL
00002f74: ADD
00002f75: DUP2
00002f76: DUP2
00002f77: SSTORE
00002f78: PUSH1 0x01
00002f7a: DUP2
00002f7b: ADD
00002f7c: DUP3
00002f7d: SWAP1
00002f7e: SSTORE
00002f7f: PUSH1 0x02
00002f81: ADD
00002f82: SSTORE
00002f83: SWAP1
00002f84: SSTORE
00002f85: PUSH2 0x2f3d
00002f88: JUMP
00002f89: JUMPDEST
00002f8a: PUSH1 0x06
00002f8c: SLOAD
00002f8d: PUSH1 0x00
00002f8f: SWAP1
00002f90: JUMPDEST
00002f91: PUSH1 0x08
00002f93: SLOAD
00002f94: DUP2
00002f95: LT
00002f96: ISZERO
00002f97: PUSH2 0x3007
00002f9a: JUMPI
00002f9b: PUSH1 0x00
00002f9d: DUP2
00002f9e: DUP2
00002f9f: MSTORE
00002fa0: PUSH1 0x05
00002fa2: PUSH1 0x20
00002fa4: MSTORE
00002fa5: PUSH1 0x40
00002fa7: SWAP1
00002fa8: KECCAK256
00002fa9: PUSH1 0x01
00002fab: ADD
00002fac: SLOAD
00002fad: PUSH8 0xffffffffffffffff
00002fb6: AND
00002fb7: DUP5
00002fb8: GT
00002fb9: PUSH2 0x2fff
00002fbc: JUMPI
00002fbd: DUP2
00002fbe: PUSH2 0x2fcb
00002fc1: JUMPI
00002fc2: PUSH1 0x07
00002fc4: DUP2
00002fc5: SWAP1
00002fc6: SSTORE
00002fc7: PUSH1 0x01
00002fc9: SWAP2
00002fca: POP
00002fcb: JUMPDEST
00002fcc: PUSH1 0x00
00002fce: DUP2
00002fcf: DUP2
00002fd0: MSTORE
00002fd1: PUSH1 0x05
00002fd3: PUSH1 0x20
00002fd5: MSTORE
00002fd6: PUSH1 0x40
00002fd8: SWAP1
00002fd9: KECCAK256
00002fda: PUSH1 0x01
00002fdc: ADD
00002fdd: DUP1
00002fde: SLOAD
00002fdf: PUSH8 0xffffffffffffffff
00002fe8: NOT
00002fe9: AND
00002fea: PUSH8 0xffffffffffffffff
00002ff3: DUP7
00002ff4: AND
00002ff5: OR
00002ff6: PUSH1 0xff
00002ff8: PUSH1 0x40
00002ffa: SHL
00002ffb: NOT
00002ffc: AND
00002ffd: SWAP1
00002ffe: SSTORE
00002fff: JUMPDEST
00003000: PUSH1 0x01
00003002: ADD
00003003: PUSH2 0x2f90
00003006: JUMP
00003007: JUMPDEST
00003008: POP
00003009: POP
0000300a: PUSH1 0x0c
0000300c: SLOAD
0000300d: PUSH1 0x00
0000300f: SWAP1
00003010: JUMPDEST
00003011: PUSH1 0x0e
00003013: SLOAD
00003014: DUP2
00003015: LT
00003016: ISZERO
00003017: PUSH2 0x3087
0000301a: JUMPI
0000301b: PUSH1 0x00
0000301d: DUP2
0000301e: DUP2
0000301f: MSTORE
00003020: PUSH1 0x0b
00003022: PUSH1 0x20
00003024: MSTORE
00003025: PUSH1 0x40
00003027: SWAP1
00003028: KECCAK256
00003029: PUSH1 0x01
0000302b: ADD
0000302c: SLOAD
0000302d: PUSH8 0xffffffffffffffff
00003036: AND
00003037: DUP5
00003038: GT
00003039: PUSH2 0x307f
0000303c: JUMPI
0000303d: DUP2
0000303e: PUSH2 0x304b
00003041: JUMPI
00003042: PUSH1 0x0d
00003044: DUP2
00003045: SWAP1
00003046: SSTORE
00003047: PUSH1 0x01
00003049: SWAP2
0000304a: POP
0000304b: JUMPDEST
0000304c: PUSH1 0x00
0000304e: DUP2
0000304f: DUP2
00003050: MSTORE
00003051: PUSH1 0x0b
00003053: PUSH1 0x20
00003055: MSTORE
00003056: PUSH1 0x40
00003058: SWAP1
00003059: KECCAK256
0000305a: PUSH1 0x01
0000305c: ADD
0000305d: DUP1
0000305e: SLOAD
0000305f: PUSH8 0xffffffffffffffff
00003068: NOT
00003069: AND
0000306a: PUSH8 0xffffffffffffffff
00003073: DUP7
00003074: AND
00003075: OR
00003076: PUSH1 0xff
00003078: PUSH1 0x40
0000307a: SHL
0000307b: NOT
0000307c: AND
0000307d: SWAP1
0000307e: SSTORE
0000307f: JUMPDEST
00003080: PUSH1 0x01
00003082: ADD
00003083: PUSH2 0x3010
00003086: JUMP
00003087: JUMPDEST
00003088: POP
00003089: PUSH32 0x36a66b31987e7e6abdbfed3b1968c201f8c3a138705e5087cd66e221faf1e1ff
000030aa: DUP4
000030ab: DUP4
000030ac: PUSH1 0x40
000030ae: MLOAD
000030af: PUSH2 0x30b9
000030b2: SWAP3
000030b3: SWAP2
000030b4: SWAP1
000030b5: PUSH2 0x4e7c
000030b8: JUMP
000030b9: JUMPDEST
000030ba: PUSH1 0x40
000030bc: MLOAD
000030bd: DUP1
000030be: SWAP2
000030bf: SUB
000030c0: SWAP1
000030c1: LOG1
000030c2: POP
000030c3: POP
000030c4: POP
000030c5: JUMP
000030c6: JUMPDEST
000030c7: PUSH1 0x02
000030c9: SLOAD
000030ca: PUSH1 0x40
000030cc: MLOAD
000030cd: PUSH4 0x639260df
000030d2: PUSH1 0xe0
000030d4: SHL
000030d5: DUP2
000030d6: MSTORE
000030d7: PUSH1 0x00
000030d9: SWAP2
000030da: DUP3
000030db: SWAP2
000030dc: PUSH1 0x01
000030de: PUSH1 0x01
000030e0: PUSH1 0xa0
000030e2: SHL
000030e3: SUB
000030e4: SWAP1
000030e5: SWAP2
000030e6: AND
000030e7: SWAP1
000030e8: PUSH4 0x639260df
000030ed: SWAP1
000030ee: PUSH2 0x30fb
000030f1: SWAP1
000030f2: DUP7
000030f3: SWAP1
000030f4: PUSH1 0x04
000030f6: ADD
000030f7: PUSH2 0x4730
000030fa: JUMP
000030fb: JUMPDEST
000030fc: PUSH1 0x20
000030fe: PUSH1 0x40
00003100: MLOAD
00003101: DUP1
00003102: DUP4
00003103: SUB
00003104: DUP2
00003105: DUP7
00003106: DUP1
00003107: EXTCODESIZE
00003108: ISZERO
00003109: DUP1
0000310a: ISZERO
0000310b: PUSH2 0x3113
0000310e: JUMPI
0000310f: PUSH1 0x00
00003111: DUP1
00003112: REVERT
00003113: JUMPDEST
00003114: POP
00003115: GAS
00003116: STATICCALL
00003117: ISZERO
00003118: DUP1
00003119: ISZERO
0000311a: PUSH2 0x3127
0000311d: JUMPI
0000311e: RETURNDATASIZE
0000311f: PUSH1 0x00
00003121: DUP1
00003122: RETURNDATACOPY
00003123: RETURNDATASIZE
00003124: PUSH1 0x00
00003126: REVERT
00003127: JUMPDEST
00003128: POP
00003129: POP
0000312a: POP
0000312b: POP
0000312c: PUSH1 0x40
0000312e: MLOAD
0000312f: RETURNDATASIZE
00003130: PUSH1 0x1f
00003132: NOT
00003133: PUSH1 0x1f
00003135: DUP3
00003136: ADD
00003137: AND
00003138: DUP3
00003139: ADD
0000313a: DUP1
0000313b: PUSH1 0x40
0000313d: MSTORE
0000313e: POP
0000313f: DUP2
00003140: ADD
00003141: SWAP1
00003142: PUSH2 0x314b
00003145: SWAP2
00003146: SWAP1
00003147: PUSH2 0x4298
0000314a: JUMP
0000314b: JUMPDEST
0000314c: SWAP1
0000314d: POP
0000314e: PUSH1 0x00
00003150: DUP2
00003151: PUSH4 0xffffffff
00003156: AND
00003157: GT
00003158: PUSH2 0x3173
0000315b: JUMPI
0000315c: PUSH1 0x40
0000315e: MLOAD
0000315f: PUSH3 0x461bcd
00003163: PUSH1 0xe5
00003165: SHL
00003166: DUP2
00003167: MSTORE
00003168: PUSH1 0x04
0000316a: ADD
0000316b: PUSH2 0x07cf
0000316e: SWAP1
0000316f: PUSH2 0x4c83
00003172: JUMP
00003173: JUMPDEST
00003174: PUSH1 0x01
00003176: PUSH1 0x01
00003178: PUSH1 0xa0
0000317a: SHL
0000317b: SUB
0000317c: DUP5
0000317d: AND
0000317e: PUSH1 0x00
00003180: SWAP1
00003181: DUP2
00003182: MSTORE
00003183: PUSH1 0x0a
00003185: PUSH1 0x20
00003187: SWAP1
00003188: DUP2
00003189: MSTORE
0000318a: PUSH1 0x40
0000318c: DUP1
0000318d: DUP4
0000318e: KECCAK256
0000318f: PUSH4 0xffffffff
00003194: DUP6
00003195: AND
00003196: DUP5
00003197: MSTORE
00003198: SWAP1
00003199: SWAP2
0000319a: MSTORE
0000319b: SWAP1
0000319c: KECCAK256
0000319d: SLOAD
0000319e: DUP1
0000319f: PUSH2 0x31ba
000031a2: JUMPI
000031a3: PUSH1 0x40
000031a5: MLOAD
000031a6: PUSH3 0x461bcd
000031aa: PUSH1 0xe5
000031ac: SHL
000031ad: DUP2
000031ae: MSTORE
000031af: PUSH1 0x04
000031b1: ADD
000031b2: PUSH2 0x07cf
000031b5: SWAP1
000031b6: PUSH2 0x4811
000031b9: JUMP
000031ba: JUMPDEST
000031bb: PUSH1 0x01
000031bd: PUSH1 0x01
000031bf: PUSH1 0xa0
000031c1: SHL
000031c2: SUB
000031c3: DUP5
000031c4: AND
000031c5: PUSH1 0x00
000031c7: SWAP1
000031c8: DUP2
000031c9: MSTORE
000031ca: PUSH1 0x10
000031cc: PUSH1 0x20
000031ce: MSTORE
000031cf: PUSH1 0x40
000031d1: SWAP1
000031d2: KECCAK256
000031d3: SLOAD
000031d4: DUP2
000031d5: GT
000031d6: ISZERO
000031d7: PUSH2 0x31f8
000031da: JUMPI
000031db: PUSH1 0x01
000031dd: PUSH1 0x01
000031df: PUSH1 0xa0
000031e1: SHL
000031e2: SUB
000031e3: DUP5
000031e4: AND
000031e5: PUSH1 0x00
000031e7: SWAP1
000031e8: DUP2
000031e9: MSTORE
000031ea: PUSH1 0x10
000031ec: PUSH1 0x20
000031ee: MSTORE
000031ef: PUSH1 0x40
000031f1: DUP2
000031f2: KECCAK256
000031f3: SSTORE
000031f4: PUSH2 0x3235
000031f7: JUMP
000031f8: JUMPDEST
000031f9: PUSH1 0x01
000031fb: PUSH1 0x01
000031fd: PUSH1 0xa0
000031ff: SHL
00003200: SUB
00003201: DUP5
00003202: AND
00003203: PUSH1 0x00
00003205: SWAP1
00003206: DUP2
00003207: MSTORE
00003208: PUSH1 0x10
0000320a: PUSH1 0x20
0000320c: MSTORE
0000320d: PUSH1 0x40
0000320f: SWAP1
00003210: KECCAK256
00003211: SLOAD
00003212: PUSH2 0x321b
00003215: SWAP1
00003216: DUP3
00003217: PUSH2 0x29e4
0000321a: JUMP
0000321b: JUMPDEST
0000321c: PUSH1 0x01
0000321e: PUSH1 0x01
00003220: PUSH1 0xa0
00003222: SHL
00003223: SUB
00003224: DUP6
00003225: AND
00003226: PUSH1 0x00
00003228: SWAP1
00003229: DUP2
0000322a: MSTORE
0000322b: PUSH1 0x10
0000322d: PUSH1 0x20
0000322f: MSTORE
00003230: PUSH1 0x40
00003232: SWAP1
00003233: KECCAK256
00003234: SSTORE
00003235: JUMPDEST
00003236: PUSH1 0x01
00003238: PUSH1 0x01
0000323a: PUSH1 0xa0
0000323c: SHL
0000323d: SUB
0000323e: DUP6
0000323f: AND
00003240: PUSH1 0x00
00003242: SWAP1
00003243: DUP2
00003244: MSTORE
00003245: PUSH1 0x0a
00003247: PUSH1 0x20
00003249: SWAP1
0000324a: DUP2
0000324b: MSTORE
0000324c: PUSH1 0x40
0000324e: DUP1
0000324f: DUP4
00003250: KECCAK256
00003251: PUSH4 0xffffffff
00003256: DUP7
00003257: AND
00003258: DUP5
00003259: MSTORE
0000325a: SWAP1
0000325b: SWAP2
0000325c: MSTORE
0000325d: DUP1
0000325e: DUP3
0000325f: KECCAK256
00003260: SWAP2
00003261: SWAP1
00003262: SWAP2
00003263: SSTORE
00003264: MLOAD
00003265: PUSH32 0xa8d2059deb1787b03478662fb43905086ccfe9e47b2e454d0186076b49539586
00003286: SWAP1
00003287: PUSH2 0x3295
0000328a: SWAP1
0000328b: DUP8
0000328c: SWAP1
0000328d: DUP6
0000328e: SWAP1
0000328f: DUP6
00003290: SWAP1
00003291: PUSH2 0x475e
00003294: JUMP
00003295: JUMPDEST
00003296: PUSH1 0x40
00003298: MLOAD
00003299: DUP1
0000329a: SWAP2
0000329b: SUB
0000329c: SWAP1
0000329d: LOG1
0000329e: SWAP5
0000329f: SWAP4
000032a0: POP
000032a1: POP
000032a2: POP
000032a3: POP
000032a4: JUMP
000032a5: JUMPDEST
000032a6: PUSH1 0x40
000032a8: DUP1
000032a9: MLOAD
000032aa: PUSH1 0x01
000032ac: PUSH1 0x01
000032ae: PUSH1 0xa0
000032b0: SHL
000032b1: SUB
000032b2: DUP5
000032b3: AND
000032b4: PUSH1 0x24
000032b6: DUP3
000032b7: ADD
000032b8: MSTORE
000032b9: PUSH1 0x44
000032bb: DUP1
000032bc: DUP3
000032bd: ADD
000032be: DUP5
000032bf: SWAP1
000032c0: MSTORE
000032c1: DUP3
000032c2: MLOAD
000032c3: DUP1
000032c4: DUP4
000032c5: SUB
000032c6: SWAP1
000032c7: SWAP2
000032c8: ADD
000032c9: DUP2
000032ca: MSTORE
000032cb: PUSH1 0x64
000032cd: SWAP1
000032ce: SWAP2
000032cf: ADD
000032d0: SWAP1
000032d1: SWAP2
000032d2: MSTORE
000032d3: PUSH1 0x20
000032d5: DUP2
000032d6: ADD
000032d7: DUP1
000032d8: MLOAD
000032d9: PUSH1 0x01
000032db: PUSH1 0x01
000032dd: PUSH1 0xe0
000032df: SHL
000032e0: SUB
000032e1: AND
000032e2: PUSH4 0xa9059cbb
000032e7: PUSH1 0xe0
000032e9: SHL
000032ea: OR
000032eb: SWAP1
000032ec: MSTORE
000032ed: PUSH2 0x2979
000032f0: SWAP1
000032f1: DUP5
000032f2: SWAP1
000032f3: PUSH2 0x3b05
000032f6: JUMP
000032f7: JUMPDEST
000032f8: PUSH1 0x00
000032fa: DUP1
000032fb: DUP3
000032fc: MLOAD
000032fd: GT
000032fe: PUSH2 0x3338
00003301: JUMPI
00003302: PUSH1 0x40
00003304: MLOAD
00003305: PUSH3 0x461bcd
00003309: PUSH1 0xe5
0000330b: SHL
0000330c: DUP2
0000330d: MSTORE
0000330e: PUSH1 0x04
00003310: ADD
00003311: DUP1
00003312: DUP1
00003313: PUSH1 0x20
00003315: ADD
00003316: DUP3
00003317: DUP2
00003318: SUB
00003319: DUP3
0000331a: MSTORE
0000331b: PUSH1 0x30
0000331d: DUP2
0000331e: MSTORE
0000331f: PUSH1 0x20
00003321: ADD
00003322: DUP1
00003323: PUSH2 0x5052
00003326: PUSH1 0x30
00003328: SWAP2
00003329: CODECOPY
0000332a: PUSH1 0x40
0000332c: ADD
0000332d: SWAP2
0000332e: POP
0000332f: POP
00003330: PUSH1 0x40
00003332: MLOAD
00003333: DUP1
00003334: SWAP2
00003335: SUB
00003336: SWAP1
00003337: REVERT
00003338: JUMPDEST
00003339: DUP2
0000333a: MLOAD
0000333b: PUSH1 0x01
0000333d: EQ
0000333e: ISZERO
0000333f: PUSH2 0x335e
00003342: JUMPI
00003343: DUP2
00003344: PUSH1 0x00
00003346: DUP2
00003347: MLOAD
00003348: DUP2
00003349: LT
0000334a: PUSH2 0x334f
0000334d: JUMPI
0000334e: INVALID
0000334f: JUMPDEST
00003350: PUSH1 0x20
00003352: MUL
00003353: PUSH1 0x20
00003355: ADD
00003356: ADD
00003357: MLOAD
00003358: SWAP1
00003359: POP
0000335a: PUSH2 0x29df
0000335d: JUMP
0000335e: JUMPDEST
0000335f: PUSH1 0x40
00003361: DUP1
00003362: MLOAD
00003363: PUSH2 0x0400
00003366: DUP2
00003367: ADD
00003368: DUP3
00003369: MSTORE
0000336a: PUSH32 0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563
0000338b: DUP2
0000338c: MSTORE
0000338d: PUSH32 0x633dc4d7da7256660a892f8f1604a44b5432649cc8ec5cb3ced4c4e6ac94dd1d
000033ae: PUSH1 0x20
000033b0: DUP3
000033b1: ADD
000033b2: MSTORE
000033b3: PUSH32 0x890740a8eb06ce9be422cb8da5cdafc2b58c0a5e24036c578de2a433c828ff7d
000033d4: DUP2
000033d5: DUP4
000033d6: ADD
000033d7: MSTORE
000033d8: PUSH32 0x3b8ec09e026fdc305365dfc94e189a81b38c7597b3d941c279f042e8206e0bd8
000033f9: PUSH1 0x60
000033fb: DUP1
000033fc: DUP4
000033fd: ADD
000033fe: SWAP2
000033ff: SWAP1
00003400: SWAP2
00003401: MSTORE
00003402: PUSH32 0xecd50eee38e386bd62be9bedb990706951b65fe053bd9d8a521af753d139e2da
00003423: PUSH1 0x80
00003425: DUP4
00003426: ADD
00003427: MSTORE
00003428: PUSH32 0xdefff6d330bb5403f63b14f33b578274160de3a50df4efecf0e0db73bcdd3da5
00003449: PUSH1 0xa0
0000344b: DUP4
0000344c: ADD
0000344d: MSTORE
0000344e: PUSH32 0x617bdd11f7c0a11f49db22f629387a12da7596f9d1704d7465177c63d88ec7d7
0000346f: PUSH1 0xc0
00003471: DUP4
00003472: ADD
00003473: MSTORE
00003474: PUSH32 0x292c23a9aa1d8bea7e2435e555a4a60e379a5a35f3f452bae60121073fb6eead
00003495: PUSH1 0xe0
00003497: DUP4
00003498: ADD
00003499: MSTORE
0000349a: PUSH32 0xe1cea92ed99acdcb045a6726b2f87107e8a61620a232cf4d7d5b5766b3952e10
000034bb: PUSH2 0x0100
000034be: DUP4
000034bf: ADD
000034c0: MSTORE
000034c1: PUSH32 0x7ad66c0a68c72cb89e4fb4303841966e4062a76ab97451e3b9fb526a5ceb7f82
000034e2: PUSH2 0x0120
000034e5: DUP4
000034e6: ADD
000034e7: MSTORE
000034e8: PUSH32 0xe026cc5a4aed3c22a58cbd3d2ac754c9352c5436f638042dca99034e83636516
00003509: PUSH2 0x0140
0000350c: DUP4
0000350d: ADD
0000350e: MSTORE
0000350f: PUSH32 0x3d04cffd8b46a874edf5cfae63077de85f849a660426697b06a829c70dd1409c
00003530: PUSH2 0x0160
00003533: DUP4
00003534: ADD
00003535: MSTORE
00003536: PUSH32 0xad676aa337a485e4728a0b240d92b3ef7b3c372d06d189322bfd5f61f1e7203e
00003557: PUSH2 0x0180
0000355a: DUP4
0000355b: ADD
0000355c: MSTORE
0000355d: PUSH32 0xa2fca4a49658f9fab7aa63289c91b7c7b6c832a6d0e69334ff5b0a3483d09dab
0000357e: PUSH2 0x01a0
00003581: DUP4
00003582: ADD
00003583: MSTORE
00003584: PUSH32 0x4ebfd9cd7bca2505f7bef59cc1c12ecc708fff26ae4af19abe852afe9e20c862
000035a5: PUSH2 0x01c0
000035a8: DUP4
000035a9: ADD
000035aa: MSTORE
000035ab: PUSH32 0x2def10d13dd169f550f578bda343d9717a138562e0093b380a1120789d53cf10
000035cc: PUSH2 0x01e0
000035cf: DUP4
000035d0: ADD
000035d1: MSTORE
000035d2: PUSH32 0x776a31db34a1a0a7caaf862cffdfff1789297ffadc380bd3d39281d340abd3ad
000035f3: PUSH2 0x0200
000035f6: DUP4
000035f7: ADD
000035f8: MSTORE
000035f9: PUSH32 0xe2e7610b87a5fdf3a72ebe271287d923ab990eefac64b6e59d79f8b7e08c46e3
0000361a: PUSH2 0x0220
0000361d: DUP4
0000361e: ADD
0000361f: MSTORE
00003620: PUSH32 0x504364a5c6858bf98fff714ab5be9de19ed31a976860efbd0e772a2efe23e2e0
00003641: PUSH2 0x0240
00003644: DUP4
00003645: ADD
00003646: MSTORE
00003647: PUSH32 0x4f05f4acb83f5b65168d9fef89d56d4d77b8944015e6b1eed81b0238e2d0dba3
00003668: PUSH2 0x0260
0000366b: DUP4
0000366c: ADD
0000366d: MSTORE
0000366e: PUSH32 0x44a6d974c75b07423e1d6d33f481916fdd45830aea11b6347e700cd8b9f0767c
0000368f: PUSH2 0x0280
00003692: DUP4
00003693: ADD
00003694: MSTORE
00003695: PUSH32 0xedf260291f734ddac396a956127dde4c34c0cfb8d8052f88ac139658ccf2d507
000036b6: PUSH2 0x02a0
000036b9: DUP4
000036ba: ADD
000036bb: MSTORE
000036bc: PUSH32 0x6075c657a105351e7f0fce53bc320113324a522e8fd52dc878c762551e01a46e
000036dd: PUSH2 0x02c0
000036e0: DUP4
000036e1: ADD
000036e2: MSTORE
000036e3: PUSH32 0x6ca6a3f763a9395f7da16014725ca7ee17e4815c0ff8119bf33f273dee11833b
00003704: PUSH2 0x02e0
00003707: DUP4
00003708: ADD
00003709: MSTORE
0000370a: PUSH32 0x1c25ef10ffeb3c7d08aa707d17286e0b0d3cbcb50f1bd3b6523b63ba3b52dd0f
0000372b: PUSH2 0x0300
0000372e: DUP4
0000372f: ADD
00003730: MSTORE
00003731: PUSH32 0xfffc43bd08273ccf135fd3cacbeef055418e09eb728d727c4d5d5c556cdea7e3
00003752: PUSH2 0x0320
00003755: DUP4
00003756: ADD
00003757: MSTORE
00003758: PUSH32 0xc5ab8111456b1f28f3c7a0a604b4553ce905cb019c463ee159137af83c350b22
00003779: PUSH2 0x0340
0000377c: DUP4
0000377d: ADD
0000377e: MSTORE
0000377f: PUSH32 0x0ff273fcbf4ae0f2bd88d6cf319ff4004f8d7dca70d4ced4e74d2c74139739e6
000037a0: PUSH2 0x0360
000037a3: DUP4
000037a4: ADD
000037a5: MSTORE
000037a6: PUSH32 0x7fa06ba11241ddd5efdc65d4e39c9f6991b74fd4b81b62230808216c876f827c
000037c7: PUSH2 0x0380
000037ca: DUP4
000037cb: ADD
000037cc: MSTORE
000037cd: PUSH32 0x7e275adf313a996c7e2950cac67caba02a5ff925ebf9906b58949f3e77aec5b9
000037ee: PUSH2 0x03a0
000037f1: DUP4
000037f2: ADD
000037f3: MSTORE
000037f4: PUSH32 0x8f6162fa308d2b3a15dc33cffac85f13ab349173121645aedf00f471663108be
00003815: PUSH2 0x03c0
00003818: DUP4
00003819: ADD
0000381a: MSTORE
0000381b: PUSH32 0x78ccaaab73373552f207a63599de54d7d8d0c1805f86ce7da15818d09f4cff62
0000383c: PUSH2 0x03e0
0000383f: DUP4
00003840: ADD
00003841: MSTORE
00003842: DUP3
00003843: MLOAD
00003844: DUP4
00003845: DUP2
00003846: MSTORE
00003847: SWAP1
00003848: DUP2
00003849: ADD
0000384a: DUP4
0000384b: MSTORE
0000384c: SWAP1
0000384d: SWAP2
0000384e: PUSH1 0x00
00003850: SWAP2
00003851: SWAP1
00003852: PUSH1 0x20
00003854: DUP3
00003855: ADD
00003856: DUP2
00003857: DUP1
00003858: CALLDATASIZE
00003859: DUP4
0000385a: CALLDATACOPY
0000385b: POP
0000385c: POP
0000385d: DUP6
0000385e: MLOAD
0000385f: SWAP2
00003860: SWAP3
00003861: POP
00003862: PUSH1 0x00
00003864: SWAP2
00003865: DUP3
00003866: SWAP2
00003867: POP
00003868: DUP2
00003869: DUP1
0000386a: DUP1
0000386b: JUMPDEST
0000386c: PUSH1 0x01
0000386e: DUP5
0000386f: GT
00003870: ISZERO
00003871: PUSH2 0x3977
00003874: JUMPI
00003875: POP
00003876: POP
00003877: PUSH1 0x02
00003879: DUP3
0000387a: DIV
0000387b: PUSH1 0x01
0000387d: DUP1
0000387e: DUP5
0000387f: AND
00003880: EQ
00003881: PUSH1 0x00
00003883: JUMPDEST
00003884: DUP3
00003885: DUP2
00003886: LT
00003887: ISZERO
00003888: PUSH2 0x38f3
0000388b: JUMPI
0000388c: DUP11
0000388d: DUP2
0000388e: PUSH1 0x02
00003890: MUL
00003891: DUP2
00003892: MLOAD
00003893: DUP2
00003894: LT
00003895: PUSH2 0x389a
00003898: JUMPI
00003899: INVALID
0000389a: JUMPDEST
0000389b: PUSH1 0x20
0000389d: MUL
0000389e: PUSH1 0x20
000038a0: ADD
000038a1: ADD
000038a2: MLOAD
000038a3: SWAP7
000038a4: POP
000038a5: DUP11
000038a6: DUP2
000038a7: PUSH1 0x02
000038a9: MUL
000038aa: PUSH1 0x01
000038ac: ADD
000038ad: DUP2
000038ae: MLOAD
000038af: DUP2
000038b0: LT
000038b1: PUSH2 0x38b6
000038b4: JUMPI
000038b5: INVALID
000038b6: JUMPDEST
000038b7: PUSH1 0x20
000038b9: MUL
000038ba: PUSH1 0x20
000038bc: ADD
000038bd: ADD
000038be: MLOAD
000038bf: SWAP6
000038c0: POP
000038c1: DUP7
000038c2: PUSH1 0x20
000038c4: DUP10
000038c5: ADD
000038c6: MSTORE
000038c7: DUP6
000038c8: PUSH1 0x40
000038ca: DUP10
000038cb: ADD
000038cc: MSTORE
000038cd: DUP8
000038ce: DUP1
000038cf: MLOAD
000038d0: SWAP1
000038d1: PUSH1 0x20
000038d3: ADD
000038d4: KECCAK256
000038d5: DUP12
000038d6: DUP3
000038d7: DUP2
000038d8: MLOAD
000038d9: DUP2
000038da: LT
000038db: PUSH2 0x38e0
000038de: JUMPI
000038df: INVALID
000038e0: JUMPDEST
000038e1: PUSH1 0x20
000038e3: SWAP1
000038e4: DUP2
000038e5: MUL
000038e6: SWAP2
000038e7: SWAP1
000038e8: SWAP2
000038e9: ADD
000038ea: ADD
000038eb: MSTORE
000038ec: PUSH1 0x01
000038ee: ADD
000038ef: PUSH2 0x3883
000038f2: JUMP
000038f3: JUMPDEST
000038f4: POP
000038f5: DUP1
000038f6: ISZERO
000038f7: PUSH2 0x3956
000038fa: JUMPI
000038fb: DUP10
000038fc: PUSH1 0x01
000038fe: DUP6
000038ff: SUB
00003900: DUP2
00003901: MLOAD
00003902: DUP2
00003903: LT
00003904: PUSH2 0x3909
00003907: JUMPI
00003908: INVALID
00003909: JUMPDEST
0000390a: PUSH1 0x20
0000390c: MUL
0000390d: PUSH1 0x20
0000390f: ADD
00003910: ADD
00003911: MLOAD
00003912: SWAP6
00003913: POP
00003914: DUP8
00003915: DUP4
00003916: PUSH1 0x20
00003918: DUP2
00003919: LT
0000391a: PUSH2 0x391f
0000391d: JUMPI
0000391e: INVALID
0000391f: JUMPDEST
00003920: PUSH1 0x20
00003922: MUL
00003923: ADD
00003924: MLOAD
00003925: PUSH1 0x00
00003927: SHL
00003928: SWAP5
00003929: POP
0000392a: DUP6
0000392b: PUSH1 0x20
0000392d: DUP9
0000392e: ADD
0000392f: MSTORE
00003930: DUP5
00003931: PUSH1 0x40
00003933: DUP9
00003934: ADD
00003935: MSTORE
00003936: DUP7
00003937: DUP1
00003938: MLOAD
00003939: SWAP1
0000393a: PUSH1 0x20
0000393c: ADD
0000393d: KECCAK256
0000393e: DUP11
0000393f: DUP4
00003940: DUP2
00003941: MLOAD
00003942: DUP2
00003943: LT
00003944: PUSH2 0x3949
00003947: JUMPI
00003948: INVALID
00003949: JUMPDEST
0000394a: PUSH1 0x20
0000394c: MUL
0000394d: PUSH1 0x20
0000394f: ADD
00003950: ADD
00003951: DUP2
00003952: DUP2
00003953: MSTORE
00003954: POP
00003955: POP
00003956: JUMPDEST
00003957: DUP1
00003958: PUSH2 0x3962
0000395b: JUMPI
0000395c: PUSH1 0x00
0000395e: PUSH2 0x3965
00003961: JUMP
00003962: JUMPDEST
00003963: PUSH1 0x01
00003965: JUMPDEST
00003966: PUSH1 0xff
00003968: AND
00003969: DUP3
0000396a: ADD
0000396b: SWAP4
0000396c: POP
0000396d: PUSH1 0x01
0000396f: SWAP1
00003970: SWAP3
00003971: ADD
00003972: SWAP2
00003973: PUSH2 0x386b
00003976: JUMP
00003977: JUMPDEST
00003978: DUP10
00003979: PUSH1 0x00
0000397b: DUP2
0000397c: MLOAD
0000397d: DUP2
0000397e: LT
0000397f: PUSH2 0x3984
00003982: JUMPI
00003983: INVALID
00003984: JUMPDEST
00003985: PUSH1 0x20
00003987: MUL
00003988: PUSH1 0x20
0000398a: ADD
0000398b: ADD
0000398c: MLOAD
0000398d: SWAP9
0000398e: POP
0000398f: POP
00003990: POP
00003991: POP
00003992: POP
00003993: POP
00003994: POP
00003995: POP
00003996: POP
00003997: SWAP2
00003998: SWAP1
00003999: POP
0000399a: JUMP
0000399b: JUMPDEST
0000399c: PUSH1 0x20
0000399e: ADD
0000399f: MLOAD
000039a0: SWAP1
000039a1: JUMP
000039a2: JUMPDEST
000039a3: PUSH2 0x39aa
000039a6: PUSH2 0x3e24
000039a9: JUMP
000039aa: JUMPDEST
000039ab: PUSH1 0x00
000039ad: DUP1
000039ae: PUSH1 0x00
000039b0: DUP1
000039b1: PUSH1 0x00
000039b3: DUP1
000039b4: DUP8
000039b5: DUP1
000039b6: PUSH1 0x20
000039b8: ADD
000039b9: SWAP1
000039ba: MLOAD
000039bb: DUP2
000039bc: ADD
000039bd: SWAP1
000039be: PUSH2 0x39c7
000039c1: SWAP2
000039c2: SWAP1
000039c3: PUSH2 0x42b4
000039c6: JUMP
000039c7: JUMPDEST
000039c8: PUSH1 0x40
000039ca: DUP1
000039cb: MLOAD
000039cc: PUSH1 0xc0
000039ce: DUP2
000039cf: ADD
000039d0: DUP3
000039d1: MSTORE
000039d2: PUSH1 0xff
000039d4: SWAP1
000039d5: SWAP8
000039d6: AND
000039d7: DUP8
000039d8: MSTORE
000039d9: PUSH1 0x20
000039db: DUP8
000039dc: ADD
000039dd: SWAP6
000039de: SWAP1
000039df: SWAP6
000039e0: MSTORE
000039e1: PUSH1 0x01
000039e3: PUSH1 0x01
000039e5: PUSH1 0xa0
000039e7: SHL
000039e8: SUB
000039e9: SWAP1
000039ea: SWAP4
000039eb: AND
000039ec: SWAP4
000039ed: DUP6
000039ee: ADD
000039ef: SWAP4
000039f0: SWAP1
000039f1: SWAP4
000039f2: MSTORE
000039f3: PUSH4 0xffffffff
000039f8: SWAP1
000039f9: DUP2
000039fa: AND
000039fb: PUSH1 0x60
000039fd: DUP6
000039fe: ADD
000039ff: MSTORE
00003a00: SWAP1
00003a01: SWAP2
00003a02: AND
00003a03: PUSH1 0x80
00003a05: DUP4
00003a06: ADD
00003a07: MSTORE
00003a08: PUSH1 0xa0
00003a0a: DUP3
00003a0b: ADD
00003a0c: MSTORE
00003a0d: SWAP7
00003a0e: POP
00003a0f: POP
00003a10: POP
00003a11: POP
00003a12: POP
00003a13: POP
00003a14: POP
00003a15: SWAP2
00003a16: SWAP1
00003a17: POP
00003a18: JUMP
00003a19: JUMPDEST
00003a1a: PUSH2 0x3a21
00003a1d: PUSH2 0x3e59
00003a20: JUMP
00003a21: JUMPDEST
00003a22: PUSH1 0x00
00003a24: DUP1
00003a25: PUSH1 0x00
00003a27: DUP1
00003a28: PUSH1 0x00
00003a2a: DUP1
00003a2b: PUSH1 0x00
00003a2d: DUP1
00003a2e: DUP10
00003a2f: DUP1
00003a30: PUSH1 0x20
00003a32: ADD
00003a33: SWAP1
00003a34: MLOAD
00003a35: DUP2
00003a36: ADD
00003a37: SWAP1
00003a38: PUSH2 0x3a41
00003a3b: SWAP2
00003a3c: SWAP1
00003a3d: PUSH2 0x4323
00003a40: JUMP
00003a41: JUMPDEST
00003a42: PUSH1 0x40
00003a44: DUP1
00003a45: MLOAD
00003a46: PUSH2 0x0100
00003a49: DUP2
00003a4a: ADD
00003a4b: DUP3
00003a4c: MSTORE
00003a4d: PUSH1 0xff
00003a4f: SWAP1
00003a50: SWAP10
00003a51: AND
00003a52: DUP10
00003a53: MSTORE
00003a54: PUSH1 0x20
00003a56: DUP10
00003a57: ADD
00003a58: SWAP8
00003a59: SWAP1
00003a5a: SWAP8
00003a5b: MSTORE
00003a5c: PUSH1 0x01
00003a5e: PUSH1 0x01
00003a60: PUSH1 0xa0
00003a62: SHL
00003a63: SUB
00003a64: SWAP1
00003a65: SWAP6
00003a66: AND
00003a67: SWAP6
00003a68: DUP8
00003a69: ADD
00003a6a: SWAP6
00003a6b: SWAP1
00003a6c: SWAP6
00003a6d: MSTORE
00003a6e: PUSH4 0xffffffff
00003a73: SWAP3
00003a74: DUP4
00003a75: AND
00003a76: PUSH1 0x60
00003a78: DUP8
00003a79: ADD
00003a7a: MSTORE
00003a7b: SWAP2
00003a7c: AND
00003a7d: PUSH1 0x80
00003a7f: DUP6
00003a80: ADD
00003a81: MSTORE
00003a82: PUSH1 0xa0
00003a84: DUP5
00003a85: ADD
00003a86: MSTORE
00003a87: PUSH8 0xffffffffffffffff
00003a90: SWAP1
00003a91: SWAP2
00003a92: AND
00003a93: PUSH1 0xc0
00003a95: DUP4
00003a96: ADD
00003a97: MSTORE
00003a98: PUSH1 0xe0
00003a9a: DUP3
00003a9b: ADD
00003a9c: MSTORE
00003a9d: SWAP9
00003a9e: POP
00003a9f: POP
00003aa0: POP
00003aa1: POP
00003aa2: POP
00003aa3: POP
00003aa4: POP
00003aa5: POP
00003aa6: POP
00003aa7: SWAP2
00003aa8: SWAP1
00003aa9: POP
00003aaa: JUMP
00003aab: JUMPDEST
00003aac: PUSH2 0x3ab3
00003aaf: PUSH2 0x3e9f
00003ab2: JUMP
00003ab3: JUMPDEST
00003ab4: PUSH1 0x00
00003ab6: DUP1
00003ab7: PUSH1 0x00
00003ab9: DUP1
00003aba: DUP6
00003abb: DUP1
00003abc: PUSH1 0x20
00003abe: ADD
00003abf: SWAP1
00003ac0: MLOAD
00003ac1: DUP2
00003ac2: ADD
00003ac3: SWAP1
00003ac4: PUSH2 0x3acd
00003ac7: SWAP2
00003ac8: SWAP1
00003ac9: PUSH2 0x43e4
00003acc: JUMP
00003acd: JUMPDEST
00003ace: PUSH1 0x40
00003ad0: DUP1
00003ad1: MLOAD
00003ad2: PUSH1 0x80
00003ad4: DUP2
00003ad5: ADD
00003ad6: DUP3
00003ad7: MSTORE
00003ad8: PUSH1 0xff
00003ada: SWAP1
00003adb: SWAP6
00003adc: AND
00003add: DUP6
00003ade: MSTORE
00003adf: PUSH1 0x20
00003ae1: DUP6
00003ae2: ADD
00003ae3: SWAP4
00003ae4: SWAP1
00003ae5: SWAP4
00003ae6: MSTORE
00003ae7: PUSH4 0xffffffff
00003aec: SWAP1
00003aed: SWAP2
00003aee: AND
00003aef: SWAP2
00003af0: DUP4
00003af1: ADD
00003af2: SWAP2
00003af3: SWAP1
00003af4: SWAP2
00003af5: MSTORE
00003af6: PUSH1 0x60
00003af8: DUP3
00003af9: ADD
00003afa: MSTORE
00003afb: SWAP5
00003afc: POP
00003afd: POP
00003afe: POP
00003aff: POP
00003b00: POP
00003b01: SWAP2
00003b02: SWAP1
00003b03: POP
00003b04: JUMP
00003b05: JUMPDEST
00003b06: PUSH1 0x00
00003b08: PUSH2 0x3b5a
00003b0b: DUP3
00003b0c: PUSH1 0x40
00003b0e: MLOAD
00003b0f: DUP1
00003b10: PUSH1 0x40
00003b12: ADD
00003b13: PUSH1 0x40
00003b15: MSTORE
00003b16: DUP1
00003b17: PUSH1 0x20
00003b19: DUP2
00003b1a: MSTORE
00003b1b: PUSH1 0x20
00003b1d: ADD
00003b1e: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564
00003b3f: DUP2
00003b40: MSTORE
00003b41: POP
00003b42: DUP6
00003b43: PUSH1 0x01
00003b45: PUSH1 0x01
00003b47: PUSH1 0xa0
00003b49: SHL
00003b4a: SUB
00003b4b: AND
00003b4c: PUSH2 0x3bb6
00003b4f: SWAP1
00003b50: SWAP3
00003b51: SWAP2
00003b52: SWAP1
00003b53: PUSH4 0xffffffff
00003b58: AND
00003b59: JUMP
00003b5a: JUMPDEST
00003b5b: DUP1
00003b5c: MLOAD
00003b5d: SWAP1
00003b5e: SWAP2
00003b5f: POP
00003b60: ISZERO
00003b61: PUSH2 0x2979
00003b64: JUMPI
00003b65: DUP1
00003b66: DUP1
00003b67: PUSH1 0x20
00003b69: ADD
00003b6a: SWAP1
00003b6b: MLOAD
00003b6c: PUSH1 0x20
00003b6e: DUP2
00003b6f: LT
00003b70: ISZERO
00003b71: PUSH2 0x3b79
00003b74: JUMPI
00003b75: PUSH1 0x00
00003b77: DUP1
00003b78: REVERT
00003b79: JUMPDEST
00003b7a: POP
00003b7b: MLOAD
00003b7c: PUSH2 0x2979
00003b7f: JUMPI
00003b80: PUSH1 0x40
00003b82: MLOAD
00003b83: PUSH3 0x461bcd
00003b87: PUSH1 0xe5
00003b89: SHL
00003b8a: DUP2
00003b8b: MSTORE
00003b8c: PUSH1 0x04
00003b8e: ADD
00003b8f: DUP1
00003b90: DUP1
00003b91: PUSH1 0x20
00003b93: ADD
00003b94: DUP3
00003b95: DUP2
00003b96: SUB
00003b97: DUP3
00003b98: MSTORE
00003b99: PUSH1 0x2a
00003b9b: DUP2
00003b9c: MSTORE
00003b9d: PUSH1 0x20
00003b9f: ADD
00003ba0: DUP1
00003ba1: PUSH2 0x5082
00003ba4: PUSH1 0x2a
00003ba6: SWAP2
00003ba7: CODECOPY
00003ba8: PUSH1 0x40
00003baa: ADD
00003bab: SWAP2
00003bac: POP
00003bad: POP
00003bae: PUSH1 0x40
00003bb0: MLOAD
00003bb1: DUP1
00003bb2: SWAP2
00003bb3: SUB
00003bb4: SWAP1
00003bb5: REVERT
00003bb6: JUMPDEST
00003bb7: PUSH1 0x60
00003bb9: PUSH2 0x3bc5
00003bbc: DUP5
00003bbd: DUP5
00003bbe: PUSH1 0x00
00003bc0: DUP6
00003bc1: PUSH2 0x3bcd
00003bc4: JUMP
00003bc5: JUMPDEST
00003bc6: SWAP5
00003bc7: SWAP4
00003bc8: POP
00003bc9: POP
00003bca: POP
00003bcb: POP
00003bcc: JUMP
00003bcd: JUMPDEST
00003bce: PUSH1 0x60
00003bd0: DUP3
00003bd1: SELFBALANCE
00003bd2: LT
00003bd3: ISZERO
00003bd4: PUSH2 0x3c0e
00003bd7: JUMPI
00003bd8: PUSH1 0x40
00003bda: MLOAD
00003bdb: PUSH3 0x461bcd
00003bdf: PUSH1 0xe5
00003be1: SHL
00003be2: DUP2
00003be3: MSTORE
00003be4: PUSH1 0x04
00003be6: ADD
00003be7: DUP1
00003be8: DUP1
00003be9: PUSH1 0x20
00003beb: ADD
00003bec: DUP3
00003bed: DUP2
00003bee: SUB
00003bef: DUP3
00003bf0: MSTORE
00003bf1: PUSH1 0x26
00003bf3: DUP2
00003bf4: MSTORE
00003bf5: PUSH1 0x20
00003bf7: ADD
00003bf8: DUP1
00003bf9: PUSH2 0x500c
00003bfc: PUSH1 0x26
00003bfe: SWAP2
00003bff: CODECOPY
00003c00: PUSH1 0x40
00003c02: ADD
00003c03: SWAP2
00003c04: POP
00003c05: POP
00003c06: PUSH1 0x40
00003c08: MLOAD
00003c09: DUP1
00003c0a: SWAP2
00003c0b: SUB
00003c0c: SWAP1
00003c0d: REVERT
00003c0e: JUMPDEST
00003c0f: PUSH2 0x3c17
00003c12: DUP6
00003c13: PUSH2 0x3d28
00003c16: JUMP
00003c17: JUMPDEST
00003c18: PUSH2 0x3c68
00003c1b: JUMPI
00003c1c: PUSH1 0x40
00003c1e: DUP1
00003c1f: MLOAD
00003c20: PUSH3 0x461bcd
00003c24: PUSH1 0xe5
00003c26: SHL
00003c27: DUP2
00003c28: MSTORE
00003c29: PUSH1 0x20
00003c2b: PUSH1 0x04
00003c2d: DUP3
00003c2e: ADD
00003c2f: MSTORE
00003c30: PUSH1 0x1d
00003c32: PUSH1 0x24
00003c34: DUP3
00003c35: ADD
00003c36: MSTORE
00003c37: PUSH32 0x416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000
00003c58: PUSH1 0x44
00003c5a: DUP3
00003c5b: ADD
00003c5c: MSTORE
00003c5d: SWAP1
00003c5e: MLOAD
00003c5f: SWAP1
00003c60: DUP2
00003c61: SWAP1
00003c62: SUB
00003c63: PUSH1 0x64
00003c65: ADD
00003c66: SWAP1
00003c67: REVERT
00003c68: JUMPDEST
00003c69: PUSH1 0x00
00003c6b: DUP1
00003c6c: DUP7
00003c6d: PUSH1 0x01
00003c6f: PUSH1 0x01
00003c71: PUSH1 0xa0
00003c73: SHL
00003c74: SUB
00003c75: AND
00003c76: DUP6
00003c77: DUP8
00003c78: PUSH1 0x40
00003c7a: MLOAD
00003c7b: DUP1
00003c7c: DUP3
00003c7d: DUP1
00003c7e: MLOAD
00003c7f: SWAP1
00003c80: PUSH1 0x20
00003c82: ADD
00003c83: SWAP1
00003c84: DUP1
00003c85: DUP4
00003c86: DUP4
00003c87: JUMPDEST
00003c88: PUSH1 0x20
00003c8a: DUP4
00003c8b: LT
00003c8c: PUSH2 0x3ca6
00003c8f: JUMPI
00003c90: DUP1
00003c91: MLOAD
00003c92: DUP3
00003c93: MSTORE
00003c94: PUSH1 0x1f
00003c96: NOT
00003c97: SWAP1
00003c98: SWAP3
00003c99: ADD
00003c9a: SWAP2
00003c9b: PUSH1 0x20
00003c9d: SWAP2
00003c9e: DUP3
00003c9f: ADD
00003ca0: SWAP2
00003ca1: ADD
00003ca2: PUSH2 0x3c87
00003ca5: JUMP
00003ca6: JUMPDEST
00003ca7: PUSH1 0x01
00003ca9: DUP4
00003caa: PUSH1 0x20
00003cac: SUB
00003cad: PUSH2 0x0100
00003cb0: EXP
00003cb1: SUB
00003cb2: DUP1
00003cb3: NOT
00003cb4: DUP3
00003cb5: MLOAD
00003cb6: AND
00003cb7: DUP2
00003cb8: DUP5
00003cb9: MLOAD
00003cba: AND
00003cbb: DUP1
00003cbc: DUP3
00003cbd: OR
00003cbe: DUP6
00003cbf: MSTORE
00003cc0: POP
00003cc1: POP
00003cc2: POP
00003cc3: POP
00003cc4: POP
00003cc5: POP
00003cc6: SWAP1
00003cc7: POP
00003cc8: ADD
00003cc9: SWAP2
00003cca: POP
00003ccb: POP
00003ccc: PUSH1 0x00
00003cce: PUSH1 0x40
00003cd0: MLOAD
00003cd1: DUP1
00003cd2: DUP4
00003cd3: SUB
00003cd4: DUP2
00003cd5: DUP6
00003cd6: DUP8
00003cd7: GAS
00003cd8: CALL
00003cd9: SWAP3
00003cda: POP
00003cdb: POP
00003cdc: POP
00003cdd: RETURNDATASIZE
00003cde: DUP1
00003cdf: PUSH1 0x00
00003ce1: DUP2
00003ce2: EQ
00003ce3: PUSH2 0x3d08
00003ce6: JUMPI
00003ce7: PUSH1 0x40
00003ce9: MLOAD
00003cea: SWAP2
00003ceb: POP
00003cec: PUSH1 0x1f
00003cee: NOT
00003cef: PUSH1 0x3f
00003cf1: RETURNDATASIZE
00003cf2: ADD
00003cf3: AND
00003cf4: DUP3
00003cf5: ADD
00003cf6: PUSH1 0x40
00003cf8: MSTORE
00003cf9: RETURNDATASIZE
00003cfa: DUP3
00003cfb: MSTORE
00003cfc: RETURNDATASIZE
00003cfd: PUSH1 0x00
00003cff: PUSH1 0x20
00003d01: DUP5
00003d02: ADD
00003d03: RETURNDATACOPY
00003d04: PUSH2 0x3d0d
00003d07: JUMP
00003d08: JUMPDEST
00003d09: PUSH1 0x60
00003d0b: SWAP2
00003d0c: POP
00003d0d: JUMPDEST
00003d0e: POP
00003d0f: SWAP2
00003d10: POP
00003d11: SWAP2
00003d12: POP
00003d13: PUSH2 0x3d1d
00003d16: DUP3
00003d17: DUP3
00003d18: DUP7
00003d19: PUSH2 0x3d2e
00003d1c: JUMP
00003d1d: JUMPDEST
00003d1e: SWAP8
00003d1f: SWAP7
00003d20: POP
00003d21: POP
00003d22: POP
00003d23: POP
00003d24: POP
00003d25: POP
00003d26: POP
00003d27: JUMP
00003d28: JUMPDEST
00003d29: EXTCODESIZE
00003d2a: ISZERO
00003d2b: ISZERO
00003d2c: SWAP1
00003d2d: JUMP
00003d2e: JUMPDEST
00003d2f: PUSH1 0x60
00003d31: DUP4
00003d32: ISZERO
00003d33: PUSH2 0x3d3d
00003d36: JUMPI
00003d37: POP
00003d38: DUP2
00003d39: PUSH2 0x2b86
00003d3c: JUMP
00003d3d: JUMPDEST
00003d3e: DUP3
00003d3f: MLOAD
00003d40: ISZERO
00003d41: PUSH2 0x3d4d
00003d44: JUMPI
00003d45: DUP3
00003d46: MLOAD
00003d47: DUP1
00003d48: DUP5
00003d49: PUSH1 0x20
00003d4b: ADD
00003d4c: REVERT
00003d4d: JUMPDEST
00003d4e: DUP2
00003d4f: PUSH1 0x40
00003d51: MLOAD
00003d52: PUSH3 0x461bcd
00003d56: PUSH1 0xe5
00003d58: SHL
00003d59: DUP2
00003d5a: MSTORE
00003d5b: PUSH1 0x04
00003d5d: ADD
00003d5e: DUP1
00003d5f: DUP1
00003d60: PUSH1 0x20
00003d62: ADD
00003d63: DUP3
00003d64: DUP2
00003d65: SUB
00003d66: DUP3
00003d67: MSTORE
00003d68: DUP4
00003d69: DUP2
00003d6a: DUP2
00003d6b: MLOAD
00003d6c: DUP2
00003d6d: MSTORE
00003d6e: PUSH1 0x20
00003d70: ADD
00003d71: SWAP2
00003d72: POP
00003d73: DUP1
00003d74: MLOAD
00003d75: SWAP1
00003d76: PUSH1 0x20
00003d78: ADD
00003d79: SWAP1
00003d7a: DUP1
00003d7b: DUP4
00003d7c: DUP4
00003d7d: PUSH1 0x00
00003d7f: JUMPDEST
00003d80: DUP4
00003d81: DUP2
00003d82: LT
00003d83: ISZERO
00003d84: PUSH2 0x3d97
00003d87: JUMPI
00003d88: DUP2
00003d89: DUP2
00003d8a: ADD
00003d8b: MLOAD
00003d8c: DUP4
00003d8d: DUP3
00003d8e: ADD
00003d8f: MSTORE
00003d90: PUSH1 0x20
00003d92: ADD
00003d93: PUSH2 0x3d7f
00003d96: JUMP
00003d97: JUMPDEST
00003d98: POP
00003d99: POP
00003d9a: POP
00003d9b: POP
00003d9c: SWAP1
00003d9d: POP
00003d9e: SWAP1
00003d9f: DUP2
00003da0: ADD
00003da1: SWAP1
00003da2: PUSH1 0x1f
00003da4: AND
00003da5: DUP1
00003da6: ISZERO
00003da7: PUSH2 0x3dc4
00003daa: JUMPI
00003dab: DUP1
00003dac: DUP3
00003dad: SUB
00003dae: DUP1
00003daf: MLOAD
00003db0: PUSH1 0x01
00003db2: DUP4
00003db3: PUSH1 0x20
00003db5: SUB
00003db6: PUSH2 0x0100
00003db9: EXP
00003dba: SUB
00003dbb: NOT
00003dbc: AND
00003dbd: DUP2
00003dbe: MSTORE
00003dbf: PUSH1 0x20
00003dc1: ADD
00003dc2: SWAP2
00003dc3: POP
00003dc4: JUMPDEST
00003dc5: POP
00003dc6: SWAP3
00003dc7: POP
00003dc8: POP
00003dc9: POP
00003dca: PUSH1 0x40
00003dcc: MLOAD
00003dcd: DUP1
00003dce: SWAP2
00003dcf: SUB
00003dd0: SWAP1
00003dd1: REVERT
00003dd2: JUMPDEST
00003dd3: POP
00003dd4: DUP1
00003dd5: SLOAD
00003dd6: PUSH1 0x00
00003dd8: DUP3
00003dd9: SSTORE
00003dda: PUSH1 0x02
00003ddc: MUL
00003ddd: SWAP1
00003dde: PUSH1 0x00
00003de0: MSTORE
00003de1: PUSH1 0x20
00003de3: PUSH1 0x00
00003de5: KECCAK256
00003de6: SWAP1
00003de7: DUP2
00003de8: ADD
00003de9: SWAP1
00003dea: PUSH2 0x3df3
00003ded: SWAP2
00003dee: SWAP1
00003def: PUSH2 0x3ec6
00003df2: JUMP
00003df3: JUMPDEST
00003df4: POP
00003df5: JUMP
00003df6: JUMPDEST
00003df7: PUSH1 0x40
00003df9: DUP1
00003dfa: MLOAD
00003dfb: PUSH1 0xa0
00003dfd: DUP2
00003dfe: ADD
00003dff: DUP3
00003e00: MSTORE
00003e01: PUSH1 0x00
00003e03: DUP1
00003e04: DUP3
00003e05: MSTORE
00003e06: PUSH1 0x20
00003e08: DUP3
00003e09: ADD
00003e0a: DUP2
00003e0b: SWAP1
00003e0c: MSTORE
00003e0d: SWAP2
00003e0e: DUP2
00003e0f: ADD
00003e10: DUP3
00003e11: SWAP1
00003e12: MSTORE
00003e13: PUSH1 0x60
00003e15: DUP2
00003e16: ADD
00003e17: DUP3
00003e18: SWAP1
00003e19: MSTORE
00003e1a: PUSH1 0x80
00003e1c: DUP2
00003e1d: ADD
00003e1e: SWAP2
00003e1f: SWAP1
00003e20: SWAP2
00003e21: MSTORE
00003e22: SWAP1
00003e23: JUMP
00003e24: JUMPDEST
00003e25: PUSH1 0x40
00003e27: DUP1
00003e28: MLOAD
00003e29: PUSH1 0xc0
00003e2b: DUP2
00003e2c: ADD
00003e2d: DUP3
00003e2e: MSTORE
00003e2f: PUSH1 0x00
00003e31: DUP1
00003e32: DUP3
00003e33: MSTORE
00003e34: PUSH1 0x20
00003e36: DUP3
00003e37: ADD
00003e38: DUP2
00003e39: SWAP1
00003e3a: MSTORE
00003e3b: SWAP2
00003e3c: DUP2
00003e3d: ADD
00003e3e: DUP3
00003e3f: SWAP1
00003e40: MSTORE
00003e41: PUSH1 0x60
00003e43: DUP2
00003e44: ADD
00003e45: DUP3
00003e46: SWAP1
00003e47: MSTORE
00003e48: PUSH1 0x80
00003e4a: DUP2
00003e4b: ADD
00003e4c: DUP3
00003e4d: SWAP1
00003e4e: MSTORE
00003e4f: PUSH1 0xa0
00003e51: DUP2
00003e52: ADD
00003e53: SWAP2
00003e54: SWAP1
00003e55: SWAP2
00003e56: MSTORE
00003e57: SWAP1
00003e58: JUMP
00003e59: JUMPDEST
00003e5a: PUSH1 0x40
00003e5c: DUP1
00003e5d: MLOAD
00003e5e: PUSH2 0x0100
00003e61: DUP2
00003e62: ADD
00003e63: DUP3
00003e64: MSTORE
00003e65: PUSH1 0x00
00003e67: DUP1
00003e68: DUP3
00003e69: MSTORE
00003e6a: PUSH1 0x20
00003e6c: DUP3
00003e6d: ADD
00003e6e: DUP2
00003e6f: SWAP1
00003e70: MSTORE
00003e71: SWAP2
00003e72: DUP2
00003e73: ADD
00003e74: DUP3
00003e75: SWAP1
00003e76: MSTORE
00003e77: PUSH1 0x60
00003e79: DUP1
00003e7a: DUP3
00003e7b: ADD
00003e7c: DUP4
00003e7d: SWAP1
00003e7e: MSTORE
00003e7f: PUSH1 0x80
00003e81: DUP3
00003e82: ADD
00003e83: DUP4
00003e84: SWAP1
00003e85: MSTORE
00003e86: PUSH1 0xa0
00003e88: DUP3
00003e89: ADD
00003e8a: DUP4
00003e8b: SWAP1
00003e8c: MSTORE
00003e8d: PUSH1 0xc0
00003e8f: DUP3
00003e90: ADD
00003e91: SWAP3
00003e92: SWAP1
00003e93: SWAP3
00003e94: MSTORE
00003e95: PUSH1 0xe0
00003e97: DUP2
00003e98: ADD
00003e99: SWAP2
00003e9a: SWAP1
00003e9b: SWAP2
00003e9c: MSTORE
00003e9d: SWAP1
00003e9e: JUMP
00003e9f: JUMPDEST
00003ea0: PUSH1 0x40
00003ea2: DUP1
00003ea3: MLOAD
00003ea4: PUSH1 0x80
00003ea6: DUP2
00003ea7: ADD
00003ea8: DUP3
00003ea9: MSTORE
00003eaa: PUSH1 0x00
00003eac: DUP1
00003ead: DUP3
00003eae: MSTORE
00003eaf: PUSH1 0x20
00003eb1: DUP3
00003eb2: ADD
00003eb3: DUP2
00003eb4: SWAP1
00003eb5: MSTORE
00003eb6: SWAP2
00003eb7: DUP2
00003eb8: ADD
00003eb9: DUP3
00003eba: SWAP1
00003ebb: MSTORE
00003ebc: PUSH1 0x60
00003ebe: DUP2
00003ebf: ADD
00003ec0: SWAP2
00003ec1: SWAP1
00003ec2: SWAP2
00003ec3: MSTORE
00003ec4: SWAP1
00003ec5: JUMP
00003ec6: JUMPDEST
00003ec7: JUMPDEST
00003ec8: DUP1
00003ec9: DUP3
00003eca: GT
00003ecb: ISZERO
00003ecc: PUSH2 0x3f04
00003ecf: JUMPI
00003ed0: DUP1
00003ed1: SLOAD
00003ed2: PUSH32 0xffffffffffffffff000000000000000000000000000000000000000000000000
00003ef3: AND
00003ef4: DUP2
00003ef5: SSTORE
00003ef6: PUSH1 0x00
00003ef8: PUSH1 0x01
00003efa: DUP3
00003efb: ADD
00003efc: SSTORE
00003efd: PUSH1 0x02
00003eff: ADD
00003f00: PUSH2 0x3ec7
00003f03: JUMP
00003f04: JUMPDEST
00003f05: POP
00003f06: SWAP1
00003f07: JUMP
00003f08: JUMPDEST
00003f09: PUSH1 0x00
00003f0b: PUSH8 0xffffffffffffffff
00003f14: DUP1
00003f15: DUP5
00003f16: GT
00003f17: ISZERO
00003f18: PUSH2 0x3f1d
00003f1b: JUMPI
00003f1c: INVALID
00003f1d: JUMPDEST
00003f1e: PUSH1 0x40
00003f20: MLOAD
00003f21: PUSH1 0x1f
00003f23: DUP6
00003f24: ADD
00003f25: PUSH1 0x1f
00003f27: NOT
00003f28: AND
00003f29: DUP2
00003f2a: ADD
00003f2b: PUSH1 0x20
00003f2d: ADD
00003f2e: DUP3
00003f2f: DUP2
00003f30: GT
00003f31: DUP3
00003f32: DUP3
00003f33: LT
00003f34: OR
00003f35: ISZERO
00003f36: PUSH2 0x3f3b
00003f39: JUMPI
00003f3a: INVALID
00003f3b: JUMPDEST
00003f3c: PUSH1 0x40
00003f3e: MSTORE
00003f3f: DUP5
00003f40: DUP2
00003f41: MSTORE
00003f42: SWAP2
00003f43: POP
00003f44: DUP2
00003f45: DUP4
00003f46: DUP6
00003f47: ADD
00003f48: DUP7
00003f49: LT
00003f4a: ISZERO
00003f4b: PUSH2 0x3f53
00003f4e: JUMPI
00003f4f: PUSH1 0x00
00003f51: DUP1
00003f52: REVERT
00003f53: JUMPDEST
00003f54: PUSH2 0x3f61
00003f57: DUP6
00003f58: PUSH1 0x20
00003f5a: DUP4
00003f5b: ADD
00003f5c: DUP7
00003f5d: PUSH2 0x4f72
00003f60: JUMP
00003f61: JUMPDEST
00003f62: POP
00003f63: POP
00003f64: SWAP4
00003f65: SWAP3
00003f66: POP
00003f67: POP
00003f68: POP
00003f69: JUMP
00003f6a: JUMPDEST
00003f6b: PUSH1 0x00
00003f6d: DUP1
00003f6e: DUP4
00003f6f: PUSH1 0x1f
00003f71: DUP5
00003f72: ADD
00003f73: SLT
00003f74: PUSH2 0x3f7b
00003f77: JUMPI
00003f78: DUP2
00003f79: DUP3
00003f7a: REVERT
00003f7b: JUMPDEST
00003f7c: POP
00003f7d: DUP2
00003f7e: CALLDATALOAD
00003f7f: PUSH8 0xffffffffffffffff
00003f88: DUP2
00003f89: GT
00003f8a: ISZERO
00003f8b: PUSH2 0x3f92
00003f8e: JUMPI
00003f8f: DUP2
00003f90: DUP3
00003f91: REVERT
00003f92: JUMPDEST
00003f93: PUSH1 0x20
00003f95: DUP4
00003f96: ADD
00003f97: SWAP2
00003f98: POP
00003f99: DUP4
00003f9a: PUSH1 0x20
00003f9c: DUP1
00003f9d: DUP4
00003f9e: MUL
00003f9f: DUP6
00003fa0: ADD
00003fa1: ADD
00003fa2: GT
00003fa3: ISZERO
00003fa4: PUSH2 0x3fac
00003fa7: JUMPI
00003fa8: PUSH1 0x00
00003faa: DUP1
00003fab: REVERT
00003fac: JUMPDEST
00003fad: SWAP3
00003fae: POP
00003faf: SWAP3
00003fb0: SWAP1
00003fb1: POP
00003fb2: JUMP
00003fb3: JUMPDEST
00003fb4: PUSH1 0x00
00003fb6: PUSH1 0x80
00003fb8: DUP3
00003fb9: DUP5
00003fba: SUB
00003fbb: SLT
00003fbc: ISZERO
00003fbd: PUSH2 0x3fc4
00003fc0: JUMPI
00003fc1: DUP1
00003fc2: DUP2
00003fc3: REVERT
00003fc4: JUMPDEST
00003fc5: POP
00003fc6: SWAP2
00003fc7: SWAP1
00003fc8: POP
00003fc9: JUMP
00003fca: JUMPDEST
00003fcb: DUP1
00003fcc: CALLDATALOAD
00003fcd: PUSH2 0x29df
00003fd0: DUP2
00003fd1: PUSH2 0x4fbd
00003fd4: JUMP
00003fd5: JUMPDEST
00003fd6: DUP1
00003fd7: MLOAD
00003fd8: PUSH1 0xff
00003fda: DUP2
00003fdb: AND
00003fdc: DUP2
00003fdd: EQ
00003fde: PUSH2 0x29df
00003fe1: JUMPI
00003fe2: PUSH1 0x00
00003fe4: DUP1
00003fe5: REVERT
00003fe6: JUMPDEST
00003fe7: PUSH1 0x00
00003fe9: PUSH1 0x20
00003feb: DUP3
00003fec: DUP5
00003fed: SUB
00003fee: SLT
00003fef: ISZERO
00003ff0: PUSH2 0x3ff7
00003ff3: JUMPI
00003ff4: DUP1
00003ff5: DUP2
00003ff6: REVERT
00003ff7: JUMPDEST
00003ff8: DUP2
00003ff9: CALLDATALOAD
00003ffa: PUSH2 0x2b86
00003ffd: DUP2
00003ffe: PUSH2 0x4fa8
00004001: JUMP
00004002: JUMPDEST
00004003: PUSH1 0x00
00004005: PUSH1 0x20
00004007: DUP3
00004008: DUP5
00004009: SUB
0000400a: SLT
0000400b: ISZERO
0000400c: PUSH2 0x4013
0000400f: JUMPI
00004010: DUP1
00004011: DUP2
00004012: REVERT
00004013: JUMPDEST
00004014: DUP2
00004015: MLOAD
00004016: PUSH2 0x2b86
00004019: DUP2
0000401a: PUSH2 0x4fa8
0000401d: JUMP
0000401e: JUMPDEST
0000401f: PUSH1 0x00
00004021: DUP1
00004022: PUSH1 0x40
00004024: DUP4
00004025: DUP6
00004026: SUB
00004027: SLT
00004028: ISZERO
00004029: PUSH2 0x4030
0000402c: JUMPI
0000402d: DUP1
0000402e: DUP2
0000402f: REVERT
00004030: JUMPDEST
00004031: DUP3
00004032: CALLDATALOAD
00004033: PUSH2 0x403b
00004036: DUP2
00004037: PUSH2 0x4fa8
0000403a: JUMP
0000403b: JUMPDEST
0000403c: SWAP2
0000403d: POP
0000403e: PUSH1 0x20
00004040: DUP4
00004041: ADD
00004042: CALLDATALOAD
00004043: PUSH2 0x404b
00004046: DUP2
00004047: PUSH2 0x4fa8
0000404a: JUMP
0000404b: JUMPDEST
0000404c: DUP1
0000404d: SWAP2
0000404e: POP
0000404f: POP
00004050: SWAP3
00004051: POP
00004052: SWAP3
00004053: SWAP1
00004054: POP
00004055: JUMP
00004056: JUMPDEST
00004057: PUSH1 0x00
00004059: DUP1
0000405a: PUSH1 0x40
0000405c: DUP4
0000405d: DUP6
0000405e: SUB
0000405f: SLT
00004060: ISZERO
00004061: PUSH2 0x4068
00004064: JUMPI
00004065: DUP2
00004066: DUP3
00004067: REVERT
00004068: JUMPDEST
00004069: DUP3
0000406a: CALLDATALOAD
0000406b: PUSH2 0x4073
0000406e: DUP2
0000406f: PUSH2 0x4fa8
00004072: JUMP
00004073: JUMPDEST
00004074: SWAP5
00004075: PUSH1 0x20
00004077: SWAP4
00004078: SWAP1
00004079: SWAP4
0000407a: ADD
0000407b: CALLDATALOAD
0000407c: SWAP4
0000407d: POP
0000407e: POP
0000407f: POP
00004080: JUMP
00004081: JUMPDEST
00004082: PUSH1 0x00
00004084: DUP1
00004085: PUSH1 0x40
00004087: DUP4
00004088: DUP6
00004089: SUB
0000408a: SLT
0000408b: ISZERO
0000408c: PUSH2 0x4093
0000408f: JUMPI
00004090: DUP2
00004091: DUP3
00004092: REVERT
00004093: JUMPDEST
00004094: DUP3
00004095: CALLDATALOAD
00004096: PUSH2 0x409e
00004099: DUP2
0000409a: PUSH2 0x4fa8
0000409d: JUMP
0000409e: JUMPDEST
0000409f: SWAP2
000040a0: POP
000040a1: PUSH1 0x20
000040a3: DUP4
000040a4: ADD
000040a5: CALLDATALOAD
000040a6: PUSH2 0x404b
000040a9: DUP2
000040aa: PUSH2 0x4fbd
000040ad: JUMP
000040ae: JUMPDEST
000040af: PUSH1 0x00
000040b1: DUP1
000040b2: PUSH1 0x20
000040b4: DUP4
000040b5: DUP6
000040b6: SUB
000040b7: SLT
000040b8: ISZERO
000040b9: PUSH2 0x40c0
000040bc: JUMPI
000040bd: DUP2
000040be: DUP3
000040bf: REVERT
000040c0: JUMPDEST
000040c1: DUP3
000040c2: CALLDATALOAD
000040c3: PUSH8 0xffffffffffffffff
000040cc: DUP2
000040cd: GT
000040ce: ISZERO
000040cf: PUSH2 0x40d6
000040d2: JUMPI
000040d3: DUP3
000040d4: DUP4
000040d5: REVERT
000040d6: JUMPDEST
000040d7: PUSH2 0x40e2
000040da: DUP6
000040db: DUP3
000040dc: DUP7
000040dd: ADD
000040de: PUSH2 0x3f6a
000040e1: JUMP
000040e2: JUMPDEST
000040e3: SWAP1
000040e4: SWAP7
000040e5: SWAP1
000040e6: SWAP6
000040e7: POP
000040e8: SWAP4
000040e9: POP
000040ea: POP
000040eb: POP
000040ec: POP
000040ed: JUMP
000040ee: JUMPDEST
000040ef: PUSH1 0x00
000040f1: PUSH1 0x20
000040f3: DUP3
000040f4: DUP5
000040f5: SUB
000040f6: SLT
000040f7: ISZERO
000040f8: PUSH2 0x40ff
000040fb: JUMPI
000040fc: DUP1
000040fd: DUP2
000040fe: REVERT
000040ff: JUMPDEST
00004100: DUP2
00004101: MLOAD
00004102: PUSH8 0xffffffffffffffff
0000410b: DUP2
0000410c: GT
0000410d: ISZERO
0000410e: PUSH2 0x4115
00004111: JUMPI
00004112: DUP2
00004113: DUP3
00004114: REVERT
00004115: JUMPDEST
00004116: DUP3
00004117: ADD
00004118: PUSH1 0x1f
0000411a: DUP2
0000411b: ADD
0000411c: DUP5
0000411d: SGT
0000411e: PUSH2 0x4125
00004121: JUMPI
00004122: DUP2
00004123: DUP3
00004124: REVERT
00004125: JUMPDEST
00004126: PUSH2 0x3bc5
00004129: DUP5
0000412a: DUP3
0000412b: MLOAD
0000412c: PUSH1 0x20
0000412e: DUP5
0000412f: ADD
00004130: PUSH2 0x3f08
00004133: JUMP
00004134: JUMPDEST
00004135: PUSH1 0x00
00004137: DUP1
00004138: PUSH1 0x00
0000413a: DUP1
0000413b: PUSH1 0x80
0000413d: DUP6
0000413e: DUP8
0000413f: SUB
00004140: SLT
00004141: ISZERO
00004142: PUSH2 0x4149
00004145: JUMPI
00004146: DUP2
00004147: DUP3
00004148: REVERT
00004149: JUMPDEST
0000414a: DUP5
0000414b: CALLDATALOAD
0000414c: PUSH8 0xffffffffffffffff
00004155: DUP1
00004156: DUP3
00004157: GT
00004158: ISZERO
00004159: PUSH2 0x4160
0000415c: JUMPI
0000415d: DUP4
0000415e: DUP5
0000415f: REVERT
00004160: JUMPDEST
00004161: PUSH2 0x416c
00004164: DUP9
00004165: DUP4
00004166: DUP10
00004167: ADD
00004168: PUSH2 0x3fb3
0000416b: JUMP
0000416c: JUMPDEST
0000416d: SWAP6
0000416e: POP
0000416f: PUSH1 0x20
00004171: DUP8
00004172: ADD
00004173: CALLDATALOAD
00004174: SWAP2
00004175: POP
00004176: DUP1
00004177: DUP3
00004178: GT
00004179: ISZERO
0000417a: PUSH2 0x4181
0000417d: JUMPI
0000417e: DUP4
0000417f: DUP5
00004180: REVERT
00004181: JUMPDEST
00004182: PUSH2 0x418d
00004185: DUP9
00004186: DUP4
00004187: DUP10
00004188: ADD
00004189: PUSH2 0x3fb3
0000418c: JUMP
0000418d: JUMPDEST
0000418e: SWAP5
0000418f: POP
00004190: PUSH1 0x40
00004192: DUP8
00004193: ADD
00004194: CALLDATALOAD
00004195: SWAP2
00004196: POP
00004197: DUP1
00004198: DUP3
00004199: GT
0000419a: ISZERO
0000419b: PUSH2 0x41a2
0000419e: JUMPI
0000419f: DUP4
000041a0: DUP5
000041a1: REVERT
000041a2: JUMPDEST
000041a3: PUSH2 0x41ae
000041a6: DUP9
000041a7: DUP4
000041a8: DUP10
000041a9: ADD
000041aa: PUSH2 0x3fb3
000041ad: JUMP
000041ae: JUMPDEST
000041af: SWAP4
000041b0: POP
000041b1: PUSH1 0x60
000041b3: DUP8
000041b4: ADD
000041b5: CALLDATALOAD
000041b6: SWAP2
000041b7: POP
000041b8: DUP1
000041b9: DUP3
000041ba: GT
000041bb: ISZERO
000041bc: PUSH2 0x41c3
000041bf: JUMPI
000041c0: DUP3
000041c1: DUP4
000041c2: REVERT
000041c3: JUMPDEST
000041c4: POP
000041c5: DUP6
000041c6: ADD
000041c7: PUSH2 0x0100
000041ca: DUP2
000041cb: DUP9
000041cc: SUB
000041cd: SLT
000041ce: ISZERO
000041cf: PUSH2 0x41d6
000041d2: JUMPI
000041d3: DUP2
000041d4: DUP3
000041d5: REVERT
000041d6: JUMPDEST
000041d7: SWAP4
000041d8: SWAP7
000041d9: SWAP3
000041da: SWAP6
000041db: POP
000041dc: SWAP1
000041dd: SWAP4
000041de: POP
000041df: POP
000041e0: JUMP
000041e1: JUMPDEST
000041e2: PUSH1 0x00
000041e4: PUSH1 0x20
000041e6: DUP3
000041e7: DUP5
000041e8: SUB
000041e9: SLT
000041ea: ISZERO
000041eb: PUSH2 0x41f2
000041ee: JUMPI
000041ef: DUP1
000041f0: DUP2
000041f1: REVERT
000041f2: JUMPDEST
000041f3: POP
000041f4: CALLDATALOAD
000041f5: SWAP2
000041f6: SWAP1
000041f7: POP
000041f8: JUMP
000041f9: JUMPDEST
000041fa: PUSH1 0x00
000041fc: PUSH1 0x20
000041fe: DUP3
000041ff: DUP5
00004200: SUB
00004201: SLT
00004202: ISZERO
00004203: PUSH2 0x420a
00004206: JUMPI
00004207: DUP1
00004208: DUP2
00004209: REVERT
0000420a: JUMPDEST
0000420b: POP
0000420c: MLOAD
0000420d: SWAP2
0000420e: SWAP1
0000420f: POP
00004210: JUMP
00004211: JUMPDEST
00004212: PUSH1 0x00
00004214: DUP1
00004215: PUSH1 0x00
00004217: PUSH1 0x40
00004219: DUP5
0000421a: DUP7
0000421b: SUB
0000421c: SLT
0000421d: ISZERO
0000421e: PUSH2 0x4225
00004221: JUMPI
00004222: DUP1
00004223: DUP2
00004224: REVERT
00004225: JUMPDEST
00004226: DUP4
00004227: CALLDATALOAD
00004228: SWAP3
00004229: POP
0000422a: PUSH1 0x20
0000422c: DUP5
0000422d: ADD
0000422e: CALLDATALOAD
0000422f: PUSH8 0xffffffffffffffff
00004238: DUP2
00004239: GT
0000423a: ISZERO
0000423b: PUSH2 0x4242
0000423e: JUMPI
0000423f: DUP2
00004240: DUP3
00004241: REVERT
00004242: JUMPDEST
00004243: PUSH2 0x424e
00004246: DUP7
00004247: DUP3
00004248: DUP8
00004249: ADD
0000424a: PUSH2 0x3f6a
0000424d: JUMP
0000424e: JUMPDEST
0000424f: SWAP5
00004250: SWAP8
00004251: SWAP1
00004252: SWAP7
00004253: POP
00004254: SWAP4
00004255: SWAP5
00004256: POP
00004257: POP
00004258: POP
00004259: POP
0000425a: JUMP
0000425b: JUMPDEST
0000425c: PUSH1 0x00
0000425e: DUP1
0000425f: PUSH1 0x40
00004261: DUP4
00004262: DUP6
00004263: SUB
00004264: SLT
00004265: ISZERO
00004266: PUSH2 0x426d
00004269: JUMPI
0000426a: DUP2
0000426b: DUP3
0000426c: REVERT
0000426d: JUMPDEST
0000426e: POP
0000426f: POP
00004270: DUP1
00004271: CALLDATALOAD
00004272: SWAP3
00004273: PUSH1 0x20
00004275: SWAP1
00004276: SWAP2
00004277: ADD
00004278: CALLDATALOAD
00004279: SWAP2
0000427a: POP
0000427b: JUMP
0000427c: JUMPDEST
0000427d: PUSH1 0x00
0000427f: PUSH1 0x20
00004281: DUP3
00004282: DUP5
00004283: SUB
00004284: SLT
00004285: ISZERO
00004286: PUSH2 0x428d
00004289: JUMPI
0000428a: DUP1
0000428b: DUP2
0000428c: REVERT
0000428d: JUMPDEST
0000428e: DUP2
0000428f: CALLDATALOAD
00004290: PUSH2 0x2b86
00004293: DUP2
00004294: PUSH2 0x4fbd
00004297: JUMP
00004298: JUMPDEST
00004299: PUSH1 0x00
0000429b: PUSH1 0x20
0000429d: DUP3
0000429e: DUP5
0000429f: SUB
000042a0: SLT
000042a1: ISZERO
000042a2: PUSH2 0x42a9
000042a5: JUMPI
000042a6: DUP1
000042a7: DUP2
000042a8: REVERT
000042a9: JUMPDEST
000042aa: DUP2
000042ab: MLOAD
000042ac: PUSH2 0x2b86
000042af: DUP2
000042b0: PUSH2 0x4fbd
000042b3: JUMP
000042b4: JUMPDEST
000042b5: PUSH1 0x00
000042b7: DUP1
000042b8: PUSH1 0x00
000042ba: DUP1
000042bb: PUSH1 0x00
000042bd: DUP1
000042be: PUSH1 0xc0
000042c0: DUP8
000042c1: DUP10
000042c2: SUB
000042c3: SLT
000042c4: ISZERO
000042c5: PUSH2 0x42cc
000042c8: JUMPI
000042c9: DUP4
000042ca: DUP5
000042cb: REVERT
000042cc: JUMPDEST
000042cd: PUSH2 0x42d5
000042d0: DUP8
000042d1: PUSH2 0x3fd5
000042d4: JUMP
000042d5: JUMPDEST
000042d6: SWAP6
000042d7: POP
000042d8: PUSH1 0x20
000042da: DUP8
000042db: ADD
000042dc: MLOAD
000042dd: SWAP5
000042de: POP
000042df: PUSH1 0x40
000042e1: DUP8
000042e2: ADD
000042e3: MLOAD
000042e4: PUSH2 0x42ec
000042e7: DUP2
000042e8: PUSH2 0x4fa8
000042eb: JUMP
000042ec: JUMPDEST
000042ed: PUSH1 0x60
000042ef: DUP9
000042f0: ADD
000042f1: MLOAD
000042f2: SWAP1
000042f3: SWAP5
000042f4: POP
000042f5: PUSH2 0x42fd
000042f8: DUP2
000042f9: PUSH2 0x4fbd
000042fc: JUMP
000042fd: JUMPDEST
000042fe: PUSH1 0x80
00004300: DUP9
00004301: ADD
00004302: MLOAD
00004303: SWAP1
00004304: SWAP4
00004305: POP
00004306: PUSH2 0x430e
00004309: DUP2
0000430a: PUSH2 0x4fbd
0000430d: JUMP
0000430e: JUMPDEST
0000430f: DUP1
00004310: SWAP3
00004311: POP
00004312: POP
00004313: PUSH1 0xa0
00004315: DUP8
00004316: ADD
00004317: MLOAD
00004318: SWAP1
00004319: POP
0000431a: SWAP3
0000431b: SWAP6
0000431c: POP
0000431d: SWAP3
0000431e: SWAP6
0000431f: POP
00004320: SWAP3
00004321: SWAP6
00004322: JUMP
00004323: JUMPDEST
00004324: PUSH1 0x00
00004326: DUP1
00004327: PUSH1 0x00
00004329: DUP1
0000432a: PUSH1 0x00
0000432c: DUP1
0000432d: PUSH1 0x00
0000432f: DUP1
00004330: PUSH2 0x0100
00004333: DUP10
00004334: DUP12
00004335: SUB
00004336: SLT
00004337: ISZERO
00004338: PUSH2 0x433f
0000433b: JUMPI
0000433c: DUP6
0000433d: DUP7
0000433e: REVERT
0000433f: JUMPDEST
00004340: PUSH2 0x4348
00004343: DUP10
00004344: PUSH2 0x3fd5
00004347: JUMP
00004348: JUMPDEST
00004349: SWAP8
0000434a: POP
0000434b: PUSH1 0x20
0000434d: DUP10
0000434e: ADD
0000434f: MLOAD
00004350: SWAP7
00004351: POP
00004352: PUSH1 0x40
00004354: DUP10
00004355: ADD
00004356: MLOAD
00004357: PUSH2 0x435f
0000435a: DUP2
0000435b: PUSH2 0x4fa8
0000435e: JUMP
0000435f: JUMPDEST
00004360: PUSH1 0x60
00004362: DUP11
00004363: ADD
00004364: MLOAD
00004365: SWAP1
00004366: SWAP7
00004367: POP
00004368: PUSH2 0x4370
0000436b: DUP2
0000436c: PUSH2 0x4fbd
0000436f: JUMP
00004370: JUMPDEST
00004371: PUSH1 0x80
00004373: DUP11
00004374: ADD
00004375: MLOAD
00004376: SWAP1
00004377: SWAP6
00004378: POP
00004379: PUSH2 0x4381
0000437c: DUP2
0000437d: PUSH2 0x4fbd
00004380: JUMP
00004381: JUMPDEST
00004382: PUSH1 0xa0
00004384: DUP11
00004385: ADD
00004386: MLOAD
00004387: PUSH1 0xc0
00004389: DUP12
0000438a: ADD
0000438b: MLOAD
0000438c: SWAP2
0000438d: SWAP6
0000438e: POP
0000438f: SWAP4
00004390: POP
00004391: PUSH2 0x4399
00004394: DUP2
00004395: PUSH2 0x4fcf
00004398: JUMP
00004399: JUMPDEST
0000439a: PUSH1 0xe0
0000439c: DUP11
0000439d: ADD
0000439e: MLOAD
0000439f: SWAP1
000043a0: SWAP3
000043a1: POP
000043a2: PUSH8 0xffffffffffffffff
000043ab: DUP2
000043ac: GT
000043ad: ISZERO
000043ae: PUSH2 0x43b5
000043b1: JUMPI
000043b2: DUP2
000043b3: DUP3
000043b4: REVERT
000043b5: JUMPDEST
000043b6: DUP10
000043b7: ADD
000043b8: PUSH1 0x1f
000043ba: DUP2
000043bb: ADD
000043bc: DUP12
000043bd: SGT
000043be: PUSH2 0x43c5
000043c1: JUMPI
000043c2: DUP2
000043c3: DUP3
000043c4: REVERT
000043c5: JUMPDEST
000043c6: PUSH2 0x43d4
000043c9: DUP12
000043ca: DUP3
000043cb: MLOAD
000043cc: PUSH1 0x20
000043ce: DUP5
000043cf: ADD
000043d0: PUSH2 0x3f08
000043d3: JUMP
000043d4: JUMPDEST
000043d5: SWAP2
000043d6: POP
000043d7: POP
000043d8: SWAP3
000043d9: SWAP6
000043da: SWAP9
000043db: POP
000043dc: SWAP3
000043dd: SWAP6
000043de: SWAP9
000043df: SWAP1
000043e0: SWAP4
000043e1: SWAP7
000043e2: POP
000043e3: JUMP
000043e4: JUMPDEST
000043e5: PUSH1 0x00
000043e7: DUP1
000043e8: PUSH1 0x00
000043ea: DUP1
000043eb: PUSH1 0x80
000043ed: DUP6
000043ee: DUP8
000043ef: SUB
000043f0: SLT
000043f1: ISZERO
000043f2: PUSH2 0x43f9
000043f5: JUMPI
000043f6: DUP2
000043f7: DUP3
000043f8: REVERT
000043f9: JUMPDEST
000043fa: PUSH2 0x4402
000043fd: DUP6
000043fe: PUSH2 0x3fd5
00004401: JUMP
00004402: JUMPDEST
00004403: SWAP4
00004404: POP
00004405: PUSH1 0x20
00004407: DUP6
00004408: ADD
00004409: MLOAD
0000440a: SWAP3
0000440b: POP
0000440c: PUSH1 0x40
0000440e: DUP6
0000440f: ADD
00004410: MLOAD
00004411: PUSH2 0x4419
00004414: DUP2
00004415: PUSH2 0x4fbd
00004418: JUMP
00004419: JUMPDEST
0000441a: PUSH1 0x60
0000441c: SWAP6
0000441d: SWAP1
0000441e: SWAP6
0000441f: ADD
00004420: MLOAD
00004421: SWAP4
00004422: SWAP7
00004423: SWAP3
00004424: SWAP6
00004425: POP
00004426: POP
00004427: POP
00004428: JUMP
00004429: JUMPDEST
0000442a: PUSH1 0x00
0000442c: DUP1
0000442d: PUSH1 0x00
0000442f: DUP1
00004430: PUSH1 0x00
00004432: PUSH1 0xa0
00004434: DUP7
00004435: DUP9
00004436: SUB
00004437: SLT
00004438: ISZERO
00004439: PUSH2 0x4440
0000443c: JUMPI
0000443d: DUP3
0000443e: DUP4
0000443f: REVERT
00004440: JUMPDEST
00004441: PUSH2 0x4449
00004444: DUP7
00004445: PUSH2 0x3fd5
00004448: JUMP
00004449: JUMPDEST
0000444a: SWAP5
0000444b: POP
0000444c: PUSH1 0x20
0000444e: DUP7
0000444f: ADD
00004450: MLOAD
00004451: SWAP4
00004452: POP
00004453: PUSH1 0x40
00004455: DUP7
00004456: ADD
00004457: MLOAD
00004458: PUSH2 0x4460
0000445b: DUP2
0000445c: PUSH2 0x4fbd
0000445f: JUMP
00004460: JUMPDEST
00004461: PUSH1 0x60
00004463: DUP8
00004464: ADD
00004465: MLOAD
00004466: PUSH1 0x80
00004468: SWAP1
00004469: SWAP8
0000446a: ADD
0000446b: MLOAD
0000446c: SWAP6
0000446d: SWAP9
0000446e: SWAP5
0000446f: SWAP8
00004470: POP
00004471: SWAP6
00004472: SWAP5
00004473: SWAP4
00004474: SWAP3
00004475: POP
00004476: POP
00004477: POP
00004478: JUMP
00004479: JUMPDEST
0000447a: PUSH1 0x00
0000447c: DUP3
0000447d: DUP5
0000447e: MSTORE
0000447f: PUSH32 0x07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
000044a0: DUP4
000044a1: GT
000044a2: ISZERO
000044a3: PUSH2 0x44aa
000044a6: JUMPI
000044a7: DUP1
000044a8: DUP2
000044a9: REVERT
000044aa: JUMPDEST
000044ab: PUSH1 0x20
000044ad: DUP4
000044ae: MUL
000044af: DUP1
000044b0: DUP4
000044b1: PUSH1 0x20
000044b3: DUP8
000044b4: ADD
000044b5: CALLDATACOPY
000044b6: SWAP4
000044b7: SWAP1
000044b8: SWAP4
000044b9: ADD
000044ba: PUSH1 0x20
000044bc: ADD
000044bd: SWAP3
000044be: DUP4
000044bf: MSTORE
000044c0: POP
000044c1: SWAP1
000044c2: SWAP2
000044c3: SWAP1
000044c4: POP
000044c5: JUMP
000044c6: JUMPDEST
000044c7: PUSH1 0x01
000044c9: PUSH1 0x01
000044cb: PUSH1 0xa0
000044cd: SHL
000044ce: SUB
000044cf: AND
000044d0: SWAP1
000044d1: MSTORE
000044d2: JUMP
000044d3: JUMPDEST
000044d4: DUP1
000044d5: MLOAD
000044d6: DUP3
000044d7: MSTORE
000044d8: PUSH1 0x20
000044da: DUP2
000044db: ADD
000044dc: MLOAD
000044dd: PUSH1 0x20
000044df: DUP4
000044e0: ADD
000044e1: MSTORE
000044e2: PUSH1 0x40
000044e4: DUP2
000044e5: ADD
000044e6: MLOAD
000044e7: PUSH1 0x01
000044e9: PUSH1 0x01
000044eb: PUSH1 0x80
000044ed: SHL
000044ee: SUB
000044ef: DUP1
000044f0: DUP3
000044f1: AND
000044f2: PUSH1 0x40
000044f4: DUP6
000044f5: ADD
000044f6: MSTORE
000044f7: DUP1
000044f8: PUSH1 0x60
000044fa: DUP5
000044fb: ADD
000044fc: MLOAD
000044fd: AND
000044fe: PUSH1 0x60
00004500: DUP6
00004501: ADD
00004502: MSTORE
00004503: POP
00004504: POP
00004505: POP
00004506: POP
00004507: JUMP
00004508: JUMPDEST
00004509: DUP1
0000450a: SLOAD
0000450b: DUP3
0000450c: MSTORE
0000450d: PUSH1 0x01
0000450f: DUP2
00004510: ADD
00004511: SLOAD
00004512: PUSH1 0x20
00004514: DUP4
00004515: ADD
00004516: MSTORE
00004517: PUSH1 0x02
00004519: ADD
0000451a: SLOAD
0000451b: PUSH1 0x01
0000451d: PUSH1 0x01
0000451f: PUSH1 0x80
00004521: SHL
00004522: SUB
00004523: DUP2
00004524: AND
00004525: PUSH1 0x40
00004527: DUP4
00004528: ADD
00004529: MSTORE
0000452a: PUSH1 0x80
0000452c: SHR
0000452d: PUSH1 0x60
0000452f: SWAP1
00004530: SWAP2
00004531: ADD
00004532: MSTORE
00004533: JUMP
00004534: JUMPDEST
00004535: PUSH1 0x00
00004537: PUSH2 0x0100
0000453a: DUP3
0000453b: CALLDATALOAD
0000453c: DUP5
0000453d: MSTORE
0000453e: PUSH1 0x20
00004540: DUP4
00004541: ADD
00004542: CALLDATALOAD
00004543: PUSH2 0x454b
00004546: DUP2
00004547: PUSH2 0x4fbd
0000454a: JUMP
0000454b: JUMPDEST
0000454c: PUSH4 0xffffffff
00004551: DUP1
00004552: DUP3
00004553: AND
00004554: PUSH1 0x20
00004556: DUP8
00004557: ADD
00004558: MSTORE
00004559: PUSH1 0x40
0000455b: DUP6
0000455c: ADD
0000455d: CALLDATALOAD
0000455e: PUSH1 0x40
00004560: DUP8
00004561: ADD
00004562: MSTORE
00004563: PUSH1 0x60
00004565: DUP6
00004566: ADD
00004567: CALLDATALOAD
00004568: PUSH1 0x60
0000456a: DUP8
0000456b: ADD
0000456c: MSTORE
0000456d: PUSH1 0x80
0000456f: DUP6
00004570: ADD
00004571: CALLDATALOAD
00004572: PUSH1 0x80
00004574: DUP8
00004575: ADD
00004576: MSTORE
00004577: PUSH1 0xa0
00004579: DUP6
0000457a: ADD
0000457b: CALLDATALOAD
0000457c: PUSH1 0xa0
0000457e: DUP8
0000457f: ADD
00004580: MSTORE
00004581: PUSH1 0xc0
00004583: DUP6
00004584: ADD
00004585: CALLDATALOAD
00004586: SWAP2
00004587: POP
00004588: PUSH2 0x4590
0000458b: DUP3
0000458c: PUSH2 0x4fbd
0000458f: JUMP
00004590: JUMPDEST
00004591: AND
00004592: PUSH1 0xc0
00004594: DUP6
00004595: ADD
00004596: MSTORE
00004597: PUSH2 0x45a3
0000459a: PUSH1 0xe0
0000459c: DUP5
0000459d: ADD
0000459e: DUP5
0000459f: PUSH2 0x4f2a
000045a2: JUMP
000045a3: JUMPDEST
000045a4: DUP3
000045a5: PUSH1 0xe0
000045a7: DUP8
000045a8: ADD
000045a9: MSTORE
000045aa: PUSH2 0x45b6
000045ad: DUP4
000045ae: DUP8
000045af: ADD
000045b0: DUP3
000045b1: DUP5
000045b2: PUSH2 0x4479
000045b5: JUMP
000045b6: JUMPDEST
000045b7: SWAP7
000045b8: SWAP6
000045b9: POP
000045ba: POP
000045bb: POP
000045bc: POP
000045bd: POP
000045be: POP
000045bf: JUMP
000045c0: JUMPDEST
000045c1: PUSH1 0x00
000045c3: DUP2
000045c4: CALLDATALOAD
000045c5: PUSH1 0x1e
000045c7: NOT
000045c8: DUP4
000045c9: CALLDATASIZE
000045ca: SUB
000045cb: ADD
000045cc: DUP2
000045cd: SLT
000045ce: PUSH2 0x45d5
000045d1: JUMPI
000045d2: DUP2
000045d3: DUP3
000045d4: REVERT
000045d5: JUMPDEST
000045d6: DUP3
000045d7: ADD
000045d8: DUP1
000045d9: CALLDATALOAD
000045da: PUSH8 0xffffffffffffffff
000045e3: DUP2
000045e4: GT
000045e5: ISZERO
000045e6: PUSH2 0x45ed
000045e9: JUMPI
000045ea: DUP3
000045eb: DUP4
000045ec: REVERT
000045ed: JUMPDEST
000045ee: DUP1
000045ef: CALLDATASIZE
000045f0: SUB
000045f1: DUP5
000045f2: SGT
000045f3: ISZERO
000045f4: PUSH2 0x45fb
000045f7: JUMPI
000045f8: DUP3
000045f9: DUP4
000045fa: REVERT
000045fb: JUMPDEST
000045fc: PUSH1 0x80
000045fe: DUP6
000045ff: MSTORE
00004600: DUP1
00004601: PUSH1 0x80
00004603: DUP7
00004604: ADD
00004605: MSTORE
00004606: DUP1
00004607: PUSH1 0x20
00004609: DUP4
0000460a: ADD
0000460b: PUSH1 0xa0
0000460d: DUP8
0000460e: ADD
0000460f: CALLDATACOPY
00004610: DUP5
00004611: DUP2
00004612: ADD
00004613: PUSH1 0xa0
00004615: ADD
00004616: DUP4
00004617: SWAP1
00004618: MSTORE
00004619: PUSH1 0x20
0000461b: DUP5
0000461c: DUP2
0000461d: ADD
0000461e: CALLDATALOAD
0000461f: SWAP1
00004620: DUP7
00004621: ADD
00004622: MSTORE
00004623: PUSH1 0x1f
00004625: ADD
00004626: PUSH1 0x1f
00004628: NOT
00004629: AND
0000462a: DUP5
0000462b: ADD
0000462c: SWAP1
0000462d: POP
0000462e: PUSH2 0x4639
00004631: PUSH1 0x40
00004633: DUP5
00004634: ADD
00004635: PUSH2 0x3fca
00004638: JUMP
00004639: JUMPDEST
0000463a: PUSH2 0x4646
0000463d: PUSH1 0x40
0000463f: DUP7
00004640: ADD
00004641: DUP3
00004642: PUSH2 0x466d
00004645: JUMP
00004646: JUMPDEST
00004647: POP
00004648: PUSH2 0x4654
0000464b: PUSH1 0x60
0000464d: DUP5
0000464e: ADD
0000464f: DUP5
00004650: PUSH2 0x4f2a
00004653: JUMP
00004654: JUMPDEST
00004655: PUSH1 0xa0
00004657: DUP7
00004658: DUP5
00004659: SUB
0000465a: ADD
0000465b: PUSH1 0x60
0000465d: DUP8
0000465e: ADD
0000465f: MSTORE
00004660: PUSH2 0x45b6
00004663: PUSH1 0xa0
00004665: DUP5
00004666: ADD
00004667: DUP3
00004668: DUP5
00004669: PUSH2 0x4479
0000466c: JUMP
0000466d: JUMPDEST
0000466e: PUSH4 0xffffffff
00004673: AND
00004674: SWAP1
00004675: MSTORE
00004676: JUMP
00004677: JUMPDEST
00004678: PUSH1 0x60
0000467a: SWAP4
0000467b: SWAP1
0000467c: SWAP4
0000467d: SHL
0000467e: PUSH12 0xffffffffffffffffffffffff
0000468b: NOT
0000468c: AND
0000468d: DUP4
0000468e: MSTORE
0000468f: PUSH1 0xe0
00004691: SWAP2
00004692: SWAP1
00004693: SWAP2
00004694: SHL
00004695: PUSH1 0x01
00004697: PUSH1 0x01
00004699: PUSH1 0xe0
0000469b: SHL
0000469c: SUB
0000469d: NOT
0000469e: AND
0000469f: PUSH1 0x14
000046a1: DUP4
000046a2: ADD
000046a3: MSTORE
000046a4: PUSH1 0x18
000046a6: DUP3
000046a7: ADD
000046a8: MSTORE
000046a9: PUSH1 0x38
000046ab: ADD
000046ac: SWAP1
000046ad: JUMP
000046ae: JUMPDEST
000046af: DUP2
000046b0: MLOAD
000046b1: PUSH1 0x00
000046b3: SWAP1
000046b4: DUP3
000046b5: SWAP1
000046b6: PUSH1 0x20
000046b8: DUP1
000046b9: DUP7
000046ba: ADD
000046bb: DUP5
000046bc: JUMPDEST
000046bd: DUP4
000046be: DUP2
000046bf: LT
000046c0: ISZERO
000046c1: PUSH2 0x46d8
000046c4: JUMPI
000046c5: DUP2
000046c6: MLOAD
000046c7: DUP6
000046c8: MSTORE
000046c9: SWAP4
000046ca: DUP3
000046cb: ADD
000046cc: SWAP4
000046cd: SWAP1
000046ce: DUP3
000046cf: ADD
000046d0: SWAP1
000046d1: PUSH1 0x01
000046d3: ADD
000046d4: PUSH2 0x46bc
000046d7: JUMP
000046d8: JUMPDEST
000046d9: POP
000046da: SWAP3
000046db: SWAP7
000046dc: SWAP6
000046dd: POP
000046de: POP
000046df: POP
000046e0: POP
000046e1: POP
000046e2: POP
000046e3: JUMP
000046e4: JUMPDEST
000046e5: PUSH1 0x00
000046e7: DUP3
000046e8: DUP5
000046e9: DUP4
000046ea: CALLDATACOPY
000046eb: SWAP2
000046ec: ADD
000046ed: SWAP1
000046ee: DUP2
000046ef: MSTORE
000046f0: SWAP2
000046f1: SWAP1
000046f2: POP
000046f3: JUMP
000046f4: JUMPDEST
000046f5: PUSH1 0x00
000046f7: DUP3
000046f8: MLOAD
000046f9: PUSH2 0x4706
000046fc: DUP2
000046fd: DUP5
000046fe: PUSH1 0x20
00004700: DUP8
00004701: ADD
00004702: PUSH2 0x4f72
00004705: JUMP
00004706: JUMPDEST
00004707: SWAP2
00004708: SWAP1
00004709: SWAP2
0000470a: ADD
0000470b: SWAP3
0000470c: SWAP2
0000470d: POP
0000470e: POP
0000470f: JUMP
00004710: JUMPDEST
00004711: SWAP1
00004712: JUMP
00004713: JUMPDEST
00004714: PUSH1 0xe0
00004716: SWAP3
00004717: SWAP1
00004718: SWAP3
00004719: SHL
0000471a: PUSH1 0x01
0000471c: PUSH1 0x01
0000471e: PUSH1 0xe0
00004720: SHL
00004721: SUB
00004722: NOT
00004723: AND
00004724: DUP3
00004725: MSTORE
00004726: PUSH1 0x04
00004728: DUP3
00004729: ADD
0000472a: MSTORE
0000472b: PUSH1 0x24
0000472d: ADD
0000472e: SWAP1
0000472f: JUMP
00004730: JUMPDEST
00004731: PUSH1 0x01
00004733: PUSH1 0x01
00004735: PUSH1 0xa0
00004737: SHL
00004738: SUB
00004739: SWAP2
0000473a: SWAP1
0000473b: SWAP2
0000473c: AND
0000473d: DUP2
0000473e: MSTORE
0000473f: PUSH1 0x20
00004741: ADD
00004742: SWAP1
00004743: JUMP
00004744: JUMPDEST
00004745: PUSH1 0x01
00004747: PUSH1 0x01
00004749: PUSH1 0xa0
0000474b: SHL
0000474c: SUB
0000474d: SWAP3
0000474e: DUP4
0000474f: AND
00004750: DUP2
00004751: MSTORE
00004752: SWAP2
00004753: AND
00004754: PUSH1 0x20
00004756: DUP3
00004757: ADD
00004758: MSTORE
00004759: PUSH1 0x40
0000475b: ADD
0000475c: SWAP1
0000475d: JUMP
0000475e: JUMPDEST
0000475f: PUSH1 0x01
00004761: PUSH1 0x01
00004763: PUSH1 0xa0
00004765: SHL
00004766: SUB
00004767: SWAP4
00004768: SWAP1
00004769: SWAP4
0000476a: AND
0000476b: DUP4
0000476c: MSTORE
0000476d: PUSH4 0xffffffff
00004772: SWAP2
00004773: SWAP1
00004774: SWAP2
00004775: AND
00004776: PUSH1 0x20
00004778: DUP4
00004779: ADD
0000477a: MSTORE
0000477b: PUSH1 0x40
0000477d: DUP3
0000477e: ADD
0000477f: MSTORE
00004780: PUSH1 0x60
00004782: ADD
00004783: SWAP1
00004784: JUMP
00004785: JUMPDEST
00004786: PUSH1 0x01
00004788: PUSH1 0x01
0000478a: PUSH1 0xa0
0000478c: SHL
0000478d: SUB
0000478e: SWAP5
0000478f: SWAP1
00004790: SWAP5
00004791: AND
00004792: DUP5
00004793: MSTORE
00004794: PUSH4 0xffffffff
00004799: SWAP3
0000479a: SWAP1
0000479b: SWAP3
0000479c: AND
0000479d: PUSH1 0x20
0000479f: DUP5
000047a0: ADD
000047a1: MSTORE
000047a2: PUSH1 0x40
000047a4: DUP4
000047a5: ADD
000047a6: MSTORE
000047a7: PUSH1 0x60
000047a9: DUP3
000047aa: ADD
000047ab: MSTORE
000047ac: PUSH1 0x80
000047ae: ADD
000047af: SWAP1
000047b0: JUMP
000047b1: JUMPDEST
000047b2: SWAP1
000047b3: ISZERO
000047b4: ISZERO
000047b5: DUP2
000047b6: MSTORE
000047b7: PUSH1 0x20
000047b9: ADD
000047ba: SWAP1
000047bb: JUMP
000047bc: JUMPDEST
000047bd: SWAP4
000047be: DUP5
000047bf: MSTORE
000047c0: PUSH1 0x20
000047c2: DUP5
000047c3: ADD
000047c4: SWAP3
000047c5: SWAP1
000047c6: SWAP3
000047c7: MSTORE
000047c8: PUSH1 0x01
000047ca: PUSH1 0x01
000047cc: PUSH1 0x80
000047ce: SHL
000047cf: SUB
000047d0: SWAP1
000047d1: DUP2
000047d2: AND
000047d3: PUSH1 0x40
000047d5: DUP5
000047d6: ADD
000047d7: MSTORE
000047d8: AND
000047d9: PUSH1 0x60
000047db: DUP3
000047dc: ADD
000047dd: MSTORE
000047de: PUSH1 0x80
000047e0: ADD
000047e1: SWAP1
000047e2: JUMP
000047e3: JUMPDEST
000047e4: DUP4
000047e5: DUP2
000047e6: MSTORE
000047e7: PUSH8 0xffffffffffffffff
000047f0: DUP4
000047f1: AND
000047f2: PUSH1 0x20
000047f4: DUP3
000047f5: ADD
000047f6: MSTORE
000047f7: PUSH1 0x60
000047f9: DUP2
000047fa: ADD
000047fb: PUSH2 0x4803
000047fe: DUP4
000047ff: PUSH2 0x4f9e
00004802: JUMP
00004803: JUMPDEST
00004804: DUP3
00004805: PUSH1 0x40
00004807: DUP4
00004808: ADD
00004809: MSTORE
0000480a: SWAP5
0000480b: SWAP4
0000480c: POP
0000480d: POP
0000480e: POP
0000480f: POP
00004810: JUMP
00004811: JUMPDEST
00004812: PUSH1 0x20
00004814: DUP1
00004815: DUP3
00004816: MSTORE
00004817: PUSH1 0x13
00004819: SWAP1
0000481a: DUP3
0000481b: ADD
0000481c: MSTORE
0000481d: PUSH32 0x4e6f7468696e6720746f20776974686472617700000000000000000000000000
0000483e: PUSH1 0x40
00004840: DUP3
00004841: ADD
00004842: MSTORE
00004843: PUSH1 0x60
00004845: ADD
00004846: SWAP1
00004847: JUMP
00004848: JUMPDEST
00004849: PUSH1 0x20
0000484b: DUP1
0000484c: DUP3
0000484d: MSTORE
0000484e: PUSH1 0x11
00004850: SWAP1
00004851: DUP3
00004852: ADD
00004853: MSTORE
00004854: PUSH32 0x4661696c656420746f2064697370757465000000000000000000000000000000
00004875: PUSH1 0x40
00004877: DUP3
00004878: ADD
00004879: MSTORE
0000487a: PUSH1 0x60
0000487c: ADD
0000487d: SWAP1
0000487e: JUMP
0000487f: JUMPDEST
00004880: PUSH1 0x20
00004882: DUP1
00004883: DUP3
00004884: MSTORE
00004885: PUSH1 0x36
00004887: SWAP1
00004888: DUP3
00004889: ADD
0000488a: MSTORE
0000488b: PUSH32 0x696e76616c6964206465706f736974207472616e736974696f6e2c206d69736d
000048ac: PUSH1 0x40
000048ae: DUP3
000048af: ADD
000048b0: MSTORE
000048b1: PUSH32 0x61746368206f722077726f6e67206f72646572696e6700000000000000000000
000048d2: PUSH1 0x60
000048d4: DUP3
000048d5: ADD
000048d6: MSTORE
000048d7: PUSH1 0x80
000048d9: ADD
000048da: SWAP1
000048db: JUMP
000048dc: JUMPDEST
000048dd: PUSH1 0x20
000048df: DUP1
000048e0: DUP3
000048e1: MSTORE
000048e2: PUSH1 0x19
000048e4: SWAP1
000048e5: DUP3
000048e6: ADD
000048e7: MSTORE
000048e8: PUSH32 0x6e6574206465706f7369742065786365656473206c696d697400000000000000
00004909: PUSH1 0x40
0000490b: DUP3
0000490c: ADD
0000490d: MSTORE
0000490e: PUSH1 0x60
00004910: ADD
00004911: SWAP1
00004912: JUMP
00004913: JUMPDEST
00004914: PUSH1 0x20
00004916: DUP1
00004917: DUP3
00004918: MSTORE
00004919: PUSH1 0x2f
0000491b: SWAP1
0000491c: DUP3
0000491d: ADD
0000491e: MSTORE
0000491f: PUSH32 0x696e76616c6964206465706f736974207472616e736974696f6e2c206e6f2070
00004940: PUSH1 0x40
00004942: DUP3
00004943: ADD
00004944: MSTORE
00004945: PUSH32 0x656e64696e67206465706f736974730000000000000000000000000000000000
00004966: PUSH1 0x60
00004968: DUP3
00004969: ADD
0000496a: MSTORE
0000496b: PUSH1 0x80
0000496d: ADD
0000496e: SWAP1
0000496f: JUMP
00004970: JUMPDEST
00004971: PUSH1 0x20
00004973: DUP1
00004974: DUP3
00004975: MSTORE
00004976: PUSH1 0x16
00004978: SWAP1
00004979: DUP3
0000497a: ADD
0000497b: MSTORE
0000497c: PUSH32 0x4661696c656420746f2077697468647261772045544800000000000000000000
0000499d: PUSH1 0x40
0000499f: DUP3
000049a0: ADD
000049a1: MSTORE
000049a2: PUSH1 0x60
000049a4: ADD
000049a5: SWAP1
000049a6: JUMP
000049a7: JUMPDEST
000049a8: PUSH1 0x20
000049aa: DUP1
000049ab: DUP3
000049ac: MSTORE
000049ad: PUSH1 0x13
000049af: SWAP1
000049b0: DUP3
000049b1: ADD
000049b2: MSTORE
000049b3: PUSH32 0x4661696c656420746f20647261696e2045544800000000000000000000000000
000049d4: PUSH1 0x40
000049d6: DUP3
000049d7: ADD
000049d8: MSTORE
000049d9: PUSH1 0x60
000049db: ADD
000049dc: SWAP1
000049dd: JUMP
000049de: JUMPDEST
000049df: PUSH1 0x20
000049e1: DUP1
000049e2: DUP3
000049e3: MSTORE
000049e4: PUSH1 0x13
000049e6: SWAP1
000049e7: DUP3
000049e8: ADD
000049e9: MSTORE
000049ea: PUSH32 0x45544820616d6f756e74206d69736d6174636800000000000000000000000000
00004a0b: PUSH1 0x40
00004a0d: DUP3
00004a0e: ADD
00004a0f: MSTORE
00004a10: PUSH1 0x60
00004a12: ADD
00004a13: SWAP1
00004a14: JUMP
00004a15: JUMPDEST
00004a16: PUSH1 0x20
00004a18: DUP1
00004a19: DUP3
00004a1a: MSTORE
00004a1b: PUSH1 0x13
00004a1d: SWAP1
00004a1e: DUP3
00004a1f: ADD
00004a20: MSTORE
00004a21: PUSH32 0x556e6b6e6f776e20737472617465677920494400000000000000000000000000
00004a42: PUSH1 0x40
00004a44: DUP3
00004a45: ADD
00004a46: MSTORE
00004a47: PUSH1 0x60
00004a49: ADD
00004a4a: SWAP1
00004a4b: JUMP
00004a4c: JUMPDEST
00004a4d: PUSH1 0x20
00004a4f: DUP1
00004a50: DUP3
00004a51: MSTORE
00004a52: PUSH1 0x1f
00004a54: SWAP1
00004a55: DUP3
00004a56: ADD
00004a57: MSTORE
00004a58: PUSH32 0x426c6f636b207374696c6c20696e206368616c6c656e676520706572696f6400
00004a79: PUSH1 0x40
00004a7b: DUP3
00004a7c: ADD
00004a7d: MSTORE
00004a7e: PUSH1 0x60
00004a80: ADD
00004a81: SWAP1
00004a82: JUMP
00004a83: JUMPDEST
00004a84: PUSH1 0x20
00004a86: DUP1
00004a87: DUP3
00004a88: MSTORE
00004a89: PUSH1 0x39
00004a8b: SWAP1
00004a8c: DUP3
00004a8d: ADD
00004a8e: MSTORE
00004a8f: PUSH32 0x696e76616c69642062616c616e63652073796e63207472616e736974696f6e2c
00004ab0: PUSH1 0x40
00004ab2: DUP3
00004ab3: ADD
00004ab4: MSTORE
00004ab5: PUSH32 0x206e6f2070656e64696e672062616c616e63652073796e637300000000000000
00004ad6: PUSH1 0x60
00004ad8: DUP3
00004ad9: ADD
00004ada: MSTORE
00004adb: PUSH1 0x80
00004add: ADD
00004ade: SWAP1
00004adf: JUMP
00004ae0: JUMPDEST
00004ae1: PUSH1 0x20
00004ae3: DUP1
00004ae4: DUP3
00004ae5: MSTORE
00004ae6: PUSH1 0x3b
00004ae8: SWAP1
00004ae9: DUP3
00004aea: ADD
00004aeb: MSTORE
00004aec: PUSH32 0x696e76616c69642062616c616e63652073796e63207472616e736974696f6e2c
00004b0d: PUSH1 0x40
00004b0f: DUP3
00004b10: ADD
00004b11: MSTORE
00004b12: PUSH32 0x206d69736d61746368206f722077726f6e67206f72646572696e670000000000
00004b33: PUSH1 0x60
00004b35: DUP3
00004b36: ADD
00004b37: MSTORE
00004b38: PUSH1 0x80
00004b3a: ADD
00004b3b: SWAP1
00004b3c: JUMP
00004b3d: JUMPDEST
00004b3e: PUSH1 0x20
00004b40: DUP1
00004b41: DUP3
00004b42: MSTORE
00004b43: DUP2
00004b44: DUP2
00004b45: ADD
00004b46: MSTORE
00004b47: PUSH32 0x496e76616c696420626c6f636b20696e74656e74207472616e736974696f6e73
00004b68: PUSH1 0x40
00004b6a: DUP3
00004b6b: ADD
00004b6c: MSTORE
00004b6d: PUSH1 0x60
00004b6f: ADD
00004b70: SWAP1
00004b71: JUMP
00004b72: JUMPDEST
00004b73: PUSH1 0x20
00004b75: DUP1
00004b76: DUP3
00004b77: MSTORE
00004b78: PUSH1 0x1b
00004b7a: SWAP1
00004b7b: DUP3
00004b7c: ADD
00004b7d: MSTORE
00004b7e: PUSH32 0x4e6f20626c6f636b732070656e64696e6720657865637574696f6e0000000000
00004b9f: PUSH1 0x40
00004ba1: DUP3
00004ba2: ADD
00004ba3: MSTORE
00004ba4: PUSH1 0x60
00004ba6: ADD
00004ba7: SWAP1
00004ba8: JUMP
00004ba9: JUMPDEST
00004baa: PUSH1 0x20
00004bac: DUP1
00004bad: DUP3
00004bae: MSTORE
00004baf: PUSH1 0x1e
00004bb1: SWAP1
00004bb2: DUP3
00004bb3: ADD
00004bb4: MSTORE
00004bb5: PUSH32 0x426c6f636b206368616c6c656e676520706572696f64206973206f7665720000
00004bd6: PUSH1 0x40
00004bd8: DUP3
00004bd9: ADD
00004bda: MSTORE
00004bdb: PUSH1 0x60
00004bdd: ADD
00004bde: SWAP1
00004bdf: JUMP
00004be0: JUMPDEST
00004be1: PUSH1 0x20
00004be3: DUP1
00004be4: DUP3
00004be5: MSTORE
00004be6: DUP2
00004be7: DUP2
00004be8: ADD
00004be9: MSTORE
00004bea: PUSH32 0x4e6f7420657863656564206d6178207072696f726974792074782064656c6179
00004c0b: PUSH1 0x40
00004c0d: DUP3
00004c0e: ADD
00004c0f: MSTORE
00004c10: PUSH1 0x60
00004c12: ADD
00004c13: SWAP1
00004c14: JUMP
00004c15: JUMPDEST
00004c16: PUSH1 0x20
00004c18: DUP1
00004c19: DUP3
00004c1a: MSTORE
00004c1b: PUSH1 0x0d
00004c1d: SWAP1
00004c1e: DUP3
00004c1f: ADD
00004c20: MSTORE
00004c21: PUSH32 0x556e6b6e6f776e20617373657400000000000000000000000000000000000000
00004c42: PUSH1 0x40
00004c44: DUP3
00004c45: ADD
00004c46: MSTORE
00004c47: PUSH1 0x60
00004c49: ADD
00004c4a: SWAP1
00004c4b: JUMP
00004c4c: JUMPDEST
00004c4d: PUSH1 0x20
00004c4f: DUP1
00004c50: DUP3
00004c51: MSTORE
00004c52: PUSH1 0x16
00004c54: SWAP1
00004c55: DUP3
00004c56: ADD
00004c57: MSTORE
00004c58: PUSH32 0x63616c6c6572206973206e6f74206f70657261746f7200000000000000000000
00004c79: PUSH1 0x40
00004c7b: DUP3
00004c7c: ADD
00004c7d: MSTORE
00004c7e: PUSH1 0x60
00004c80: ADD
00004c81: SWAP1
00004c82: JUMP
00004c83: JUMPDEST
00004c84: PUSH1 0x20
00004c86: DUP1
00004c87: DUP3
00004c88: MSTORE
00004c89: PUSH1 0x14
00004c8b: SWAP1
00004c8c: DUP3
00004c8d: ADD
00004c8e: MSTORE
00004c8f: PUSH32 0x4173736574206e6f742072656769737465726564000000000000000000000000
00004cb0: PUSH1 0x40
00004cb2: DUP3
00004cb3: ADD
00004cb4: MSTORE
00004cb5: PUSH1 0x60
00004cb7: ADD
00004cb8: SWAP1
00004cb9: JUMP
00004cba: JUMPDEST
00004cbb: PUSH1 0x20
00004cbd: DUP1
00004cbe: DUP3
00004cbf: MSTORE
00004cc0: PUSH1 0x0e
00004cc2: SWAP1
00004cc3: DUP3
00004cc4: ADD
00004cc5: MSTORE
00004cc6: PUSH32 0x57726f6e6720626c6f636b204944000000000000000000000000000000000000
00004ce7: PUSH1 0x40
00004ce9: DUP3
00004cea: ADD
00004ceb: MSTORE
00004cec: PUSH1 0x60
00004cee: ADD
00004cef: SWAP1
00004cf0: JUMP
00004cf1: JUMPDEST
00004cf2: PUSH1 0x00
00004cf4: PUSH2 0x01a0
00004cf7: DUP1
00004cf8: DUP4
00004cf9: MSTORE
00004cfa: PUSH2 0x4d05
00004cfd: DUP2
00004cfe: DUP5
00004cff: ADD
00004d00: DUP12
00004d01: PUSH2 0x45c0
00004d04: JUMP
00004d05: JUMPDEST
00004d06: SWAP1
00004d07: POP
00004d08: DUP3
00004d09: DUP2
00004d0a: SUB
00004d0b: PUSH1 0x20
00004d0d: DUP5
00004d0e: ADD
00004d0f: MSTORE
00004d10: PUSH2 0x4d19
00004d13: DUP2
00004d14: DUP11
00004d15: PUSH2 0x45c0
00004d18: JUMP
00004d19: JUMPDEST
00004d1a: SWAP1
00004d1b: POP
00004d1c: DUP3
00004d1d: DUP2
00004d1e: SUB
00004d1f: PUSH1 0x40
00004d21: DUP5
00004d22: ADD
00004d23: MSTORE
00004d24: DUP8
00004d25: CALLDATALOAD
00004d26: DUP2
00004d27: MSTORE
00004d28: PUSH1 0x20
00004d2a: DUP9
00004d2b: ADD
00004d2c: CALLDATALOAD
00004d2d: PUSH1 0x9e
00004d2f: NOT
00004d30: DUP10
00004d31: CALLDATASIZE
00004d32: SUB
00004d33: ADD
00004d34: DUP2
00004d35: SLT
00004d36: PUSH2 0x4d3d
00004d39: JUMPI
00004d3a: DUP3
00004d3b: DUP4
00004d3c: REVERT
00004d3d: JUMPDEST
00004d3e: PUSH1 0x80
00004d40: PUSH1 0x20
00004d42: DUP4
00004d43: ADD
00004d44: MSTORE
00004d45: DUP9
00004d46: ADD
00004d47: DUP1
00004d48: CALLDATALOAD
00004d49: PUSH2 0x4d51
00004d4c: DUP2
00004d4d: PUSH2 0x4fa8
00004d50: JUMP
00004d51: JUMPDEST
00004d52: PUSH1 0x01
00004d54: PUSH1 0x01
00004d56: PUSH1 0xa0
00004d58: SHL
00004d59: SUB
00004d5a: AND
00004d5b: PUSH1 0x80
00004d5d: DUP4
00004d5e: ADD
00004d5f: MSTORE
00004d60: PUSH1 0x20
00004d62: DUP2
00004d63: ADD
00004d64: CALLDATALOAD
00004d65: PUSH2 0x4d6d
00004d68: DUP2
00004d69: PUSH2 0x4fbd
00004d6c: JUMP
00004d6d: JUMPDEST
00004d6e: PUSH4 0xffffffff
00004d73: AND
00004d74: PUSH1 0xa0
00004d76: DUP4
00004d77: ADD
00004d78: MSTORE
00004d79: PUSH2 0x4d85
00004d7c: PUSH1 0x40
00004d7e: DUP3
00004d7f: ADD
00004d80: DUP3
00004d81: PUSH2 0x4f2a
00004d84: JUMP
00004d85: JUMPDEST
00004d86: PUSH1 0xa0
00004d88: PUSH1 0xc0
00004d8a: DUP6
00004d8b: ADD
00004d8c: MSTORE
00004d8d: PUSH2 0x4d9b
00004d90: PUSH2 0x0120
00004d93: DUP6
00004d94: ADD
00004d95: DUP3
00004d96: DUP5
00004d97: PUSH2 0x4479
00004d9a: JUMP
00004d9b: JUMPDEST
00004d9c: SWAP2
00004d9d: POP
00004d9e: POP
00004d9f: PUSH2 0x4dab
00004da2: PUSH1 0x60
00004da4: DUP4
00004da5: ADD
00004da6: DUP4
00004da7: PUSH2 0x4f2a
00004daa: JUMP
00004dab: JUMPDEST
00004dac: DUP5
00004dad: DUP4
00004dae: SUB
00004daf: PUSH1 0x7f
00004db1: NOT
00004db2: ADD
00004db3: PUSH1 0xe0
00004db5: DUP7
00004db6: ADD
00004db7: MSTORE
00004db8: PUSH2 0x4dc2
00004dbb: DUP4
00004dbc: DUP3
00004dbd: DUP5
00004dbe: PUSH2 0x4479
00004dc1: JUMP
00004dc2: JUMPDEST
00004dc3: SWAP3
00004dc4: POP
00004dc5: POP
00004dc6: POP
00004dc7: PUSH1 0x80
00004dc9: DUP3
00004dca: ADD
00004dcb: CALLDATALOAD
00004dcc: SWAP2
00004dcd: POP
00004dce: PUSH2 0x4dd6
00004dd1: DUP3
00004dd2: PUSH2 0x4fcf
00004dd5: JUMP
00004dd6: JUMPDEST
00004dd7: PUSH2 0x0100
00004dda: PUSH8 0xffffffffffffffff
00004de3: DUP4
00004de4: AND
00004de5: DUP2
00004de6: DUP6
00004de7: ADD
00004de8: MSTORE
00004de9: PUSH2 0x4df4
00004dec: PUSH1 0x40
00004dee: DUP13
00004def: ADD
00004df0: PUSH2 0x3fca
00004df3: JUMP
00004df4: JUMPDEST
00004df5: SWAP3
00004df6: POP
00004df7: PUSH2 0x4e03
00004dfa: PUSH1 0x40
00004dfc: DUP6
00004dfd: ADD
00004dfe: DUP5
00004dff: PUSH2 0x466d
00004e02: JUMP
00004e03: JUMPDEST
00004e04: PUSH2 0x4e10
00004e07: PUSH1 0x60
00004e09: DUP13
00004e0a: ADD
00004e0b: DUP13
00004e0c: PUSH2 0x4f2a
00004e0f: JUMP
00004e10: JUMPDEST
00004e11: SWAP4
00004e12: POP
00004e13: DUP5
00004e14: DUP4
00004e15: SUB
00004e16: PUSH1 0x60
00004e18: DUP7
00004e19: ADD
00004e1a: MSTORE
00004e1b: PUSH2 0x4e25
00004e1e: DUP4
00004e1f: DUP6
00004e20: DUP4
00004e21: PUSH2 0x4479
00004e24: JUMP
00004e25: JUMPDEST
00004e26: SWAP5
00004e27: POP
00004e28: POP
00004e29: DUP6
00004e2a: DUP5
00004e2b: SUB
00004e2c: PUSH1 0x60
00004e2e: DUP8
00004e2f: ADD
00004e30: MSTORE
00004e31: PUSH2 0x4e3a
00004e34: DUP5
00004e35: DUP12
00004e36: PUSH2 0x4534
00004e39: JUMP
00004e3a: JUMPDEST
00004e3b: SWAP5
00004e3c: POP
00004e3d: PUSH2 0x4e49
00004e40: PUSH1 0x80
00004e42: DUP8
00004e43: ADD
00004e44: DUP11
00004e45: PUSH2 0x4508
00004e48: JUMP
00004e49: JUMPDEST
00004e4a: PUSH2 0x4e55
00004e4d: DUP2
00004e4e: DUP8
00004e4f: ADD
00004e50: DUP10
00004e51: PUSH2 0x44d3
00004e54: JUMP
00004e55: JUMPDEST
00004e56: POP
00004e57: POP
00004e58: POP
00004e59: POP
00004e5a: PUSH2 0x4e67
00004e5d: PUSH2 0x0180
00004e60: DUP4
00004e61: ADD
00004e62: DUP5
00004e63: PUSH2 0x44c6
00004e66: JUMP
00004e67: JUMPDEST
00004e68: SWAP9
00004e69: SWAP8
00004e6a: POP
00004e6b: POP
00004e6c: POP
00004e6d: POP
00004e6e: POP
00004e6f: POP
00004e70: POP
00004e71: POP
00004e72: JUMP
00004e73: JUMPDEST
00004e74: SWAP1
00004e75: DUP2
00004e76: MSTORE
00004e77: PUSH1 0x20
00004e79: ADD
00004e7a: SWAP1
00004e7b: JUMP
00004e7c: JUMPDEST
00004e7d: PUSH1 0x00
00004e7f: DUP4
00004e80: DUP3
00004e81: MSTORE
00004e82: PUSH1 0x40
00004e84: PUSH1 0x20
00004e86: DUP4
00004e87: ADD
00004e88: MSTORE
00004e89: DUP3
00004e8a: MLOAD
00004e8b: DUP1
00004e8c: PUSH1 0x40
00004e8e: DUP5
00004e8f: ADD
00004e90: MSTORE
00004e91: PUSH2 0x4ea1
00004e94: DUP2
00004e95: PUSH1 0x60
00004e97: DUP6
00004e98: ADD
00004e99: PUSH1 0x20
00004e9b: DUP8
00004e9c: ADD
00004e9d: PUSH2 0x4f72
00004ea0: JUMP
00004ea1: JUMPDEST
00004ea2: PUSH1 0x1f
00004ea4: ADD
00004ea5: PUSH1 0x1f
00004ea7: NOT
00004ea8: AND
00004ea9: SWAP2
00004eaa: SWAP1
00004eab: SWAP2
00004eac: ADD
00004ead: PUSH1 0x60
00004eaf: ADD
00004eb0: SWAP4
00004eb1: SWAP3
00004eb2: POP
00004eb3: POP
00004eb4: POP
00004eb5: JUMP
00004eb6: JUMPDEST
00004eb7: PUSH4 0xffffffff
00004ebc: SWAP2
00004ebd: SWAP1
00004ebe: SWAP2
00004ebf: AND
00004ec0: DUP2
00004ec1: MSTORE
00004ec2: PUSH1 0x20
00004ec4: ADD
00004ec5: SWAP1
00004ec6: JUMP
00004ec7: JUMPDEST
00004ec8: PUSH4 0xffffffff
00004ecd: SWAP4
00004ece: SWAP1
00004ecf: SWAP4
00004ed0: AND
00004ed1: DUP4
00004ed2: MSTORE
00004ed3: PUSH1 0x20
00004ed5: DUP4
00004ed6: ADD
00004ed7: SWAP2
00004ed8: SWAP1
00004ed9: SWAP2
00004eda: MSTORE
00004edb: PUSH1 0x40
00004edd: DUP3
00004ede: ADD
00004edf: MSTORE
00004ee0: PUSH1 0x60
00004ee2: ADD
00004ee3: SWAP1
00004ee4: JUMP
00004ee5: JUMPDEST
00004ee6: PUSH1 0x00
00004ee8: DUP1
00004ee9: DUP4
00004eea: CALLDATALOAD
00004eeb: PUSH1 0x1e
00004eed: NOT
00004eee: DUP5
00004eef: CALLDATASIZE
00004ef0: SUB
00004ef1: ADD
00004ef2: DUP2
00004ef3: SLT
00004ef4: PUSH2 0x4efb
00004ef7: JUMPI
00004ef8: DUP3
00004ef9: DUP4
00004efa: REVERT
00004efb: JUMPDEST
00004efc: DUP4
00004efd: ADD
00004efe: DUP1
00004eff: CALLDATALOAD
00004f00: SWAP2
00004f01: POP
00004f02: PUSH8 0xffffffffffffffff
00004f0b: DUP3
00004f0c: GT
00004f0d: ISZERO
00004f0e: PUSH2 0x4f15
00004f11: JUMPI
00004f12: DUP3
00004f13: DUP4
00004f14: REVERT
00004f15: JUMPDEST
00004f16: PUSH1 0x20
00004f18: ADD
00004f19: SWAP2
00004f1a: POP
00004f1b: CALLDATASIZE
00004f1c: DUP2
00004f1d: SWAP1
00004f1e: SUB
00004f1f: DUP3
00004f20: SGT
00004f21: ISZERO
00004f22: PUSH2 0x3fac
00004f25: JUMPI
00004f26: PUSH1 0x00
00004f28: DUP1
00004f29: REVERT
00004f2a: JUMPDEST
00004f2b: PUSH1 0x00
00004f2d: DUP1
00004f2e: DUP4
00004f2f: CALLDATALOAD
00004f30: PUSH1 0x1e
00004f32: NOT
00004f33: DUP5
00004f34: CALLDATASIZE
00004f35: SUB
00004f36: ADD
00004f37: DUP2
00004f38: SLT
00004f39: PUSH2 0x4f40
00004f3c: JUMPI
00004f3d: DUP3
00004f3e: DUP4
00004f3f: REVERT
00004f40: JUMPDEST
00004f41: DUP4
00004f42: ADD
00004f43: PUSH1 0x20
00004f45: DUP2
00004f46: ADD
00004f47: SWAP3
00004f48: POP
00004f49: CALLDATALOAD
00004f4a: SWAP1
00004f4b: POP
00004f4c: PUSH8 0xffffffffffffffff
00004f55: DUP2
00004f56: GT
00004f57: ISZERO
00004f58: PUSH2 0x4f60
00004f5b: JUMPI
00004f5c: PUSH1 0x00
00004f5e: DUP1
00004f5f: REVERT
00004f60: JUMPDEST
00004f61: PUSH1 0x20
00004f63: DUP2
00004f64: MUL
00004f65: CALLDATASIZE
00004f66: SUB
00004f67: DUP4
00004f68: SGT
00004f69: ISZERO
00004f6a: PUSH2 0x3fac
00004f6d: JUMPI
00004f6e: PUSH1 0x00
00004f70: DUP1
00004f71: REVERT
00004f72: JUMPDEST
00004f73: PUSH1 0x00
00004f75: JUMPDEST
00004f76: DUP4
00004f77: DUP2
00004f78: LT
00004f79: ISZERO
00004f7a: PUSH2 0x4f8d
00004f7d: JUMPI
00004f7e: DUP2
00004f7f: DUP2
00004f80: ADD
00004f81: MLOAD
00004f82: DUP4
00004f83: DUP3
00004f84: ADD
00004f85: MSTORE
00004f86: PUSH1 0x20
00004f88: ADD
00004f89: PUSH2 0x4f75
00004f8c: JUMP
00004f8d: JUMPDEST
00004f8e: DUP4
00004f8f: DUP2
00004f90: GT
00004f91: ISZERO
00004f92: PUSH2 0x15cd
00004f95: JUMPI
00004f96: POP
00004f97: POP
00004f98: PUSH1 0x00
00004f9a: SWAP2
00004f9b: ADD
00004f9c: MSTORE
00004f9d: JUMP
00004f9e: JUMPDEST
00004f9f: PUSH1 0x02
00004fa1: DUP2
00004fa2: LT
00004fa3: PUSH2 0x3df3
00004fa6: JUMPI
00004fa7: INVALID
00004fa8: JUMPDEST
00004fa9: PUSH1 0x01
00004fab: PUSH1 0x01
00004fad: PUSH1 0xa0
00004faf: SHL
00004fb0: SUB
00004fb1: DUP2
00004fb2: AND
00004fb3: DUP2
00004fb4: EQ
00004fb5: PUSH2 0x3df3
00004fb8: JUMPI
00004fb9: PUSH1 0x00
00004fbb: DUP1
00004fbc: REVERT
00004fbd: JUMPDEST
00004fbe: PUSH4 0xffffffff
00004fc3: DUP2
00004fc4: AND
00004fc5: DUP2
00004fc6: EQ
00004fc7: PUSH2 0x3df3
00004fca: JUMPI
00004fcb: PUSH1 0x00
00004fcd: DUP1
00004fce: REVERT
00004fcf: JUMPDEST
00004fd0: PUSH8 0xffffffffffffffff
00004fd9: DUP2
00004fda: AND
00004fdb: DUP2
00004fdc: EQ
00004fdd: PUSH2 0x3df3
00004fe0: JUMPI
00004fe1: PUSH1 0x00
00004fe3: DUP1
00004fe4: REVERT
00004fe5: INVALID
00004fe6: UNKNOWN(0x4F)
00004fe7: PUSH24 0x6e61626c653a206e6577206f776e65722069732074686520
00005000: PUSH27 0x65726f2061646472657373416464726573733a20696e7375666669
0000501c: PUSH4 0x69656e74
00005021: KECCAK256
00005022: PUSH3 0x616c61
00005026: PUSH15 0x636520666f722063616c6c4f776e61
00005036: PUSH3 0x6c653a
0000503a: KECCAK256
0000503b: PUSH4 0x616c6c65
00005040: PUSH19 0x206973206e6f7420746865206f776e65724d65
00005054: PUSH19 0x6b6c65547265653a204d7573742070726f7669
00005068: PUSH5 0x6520617420
0000506e: PUSH13 0x65617374206f6e65206c656166
0000507c: KECCAK256
0000507d: PUSH9 0x6173682e5361666545
00005087: MSTORE
00005088: NUMBER
00005089: ORIGIN
0000508a: ADDRESS
0000508b: GASPRICE
0000508c: KECCAK256
0000508d: GASLIMIT
0000508e: MSTORE
0000508f: NUMBER
00005090: ORIGIN
00005091: ADDRESS
00005092: KECCAK256
00005093: PUSH16 0x7065726174696f6e20646964206e6f74
000050a4: KECCAK256
000050a5: PUSH20 0x756363656564a2646970667358221220c4429aae
000050ba: SWAP9
000050bb: UNKNOWN(0xD2)
000050bc: CALLDATASIZE
000050bd: UNKNOWN(0xE1)
000050be: NUMBER
000050bf: SWAP5
000050c0: UNKNOWN(0xAD)
000050c1: UNKNOWN(0xAA)
000050c2: PUSH24 0xe96094e68e515f209d28ca1690632ec3da98e964736f6c63
000050db: NUMBER
000050dc: STOP
000050dd: SMOD
000050de: MOD
000050df: STOP
000050e0: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high other codex Reverted blocks keep stale pendingWithdrawCommits, enabling withdrawals from invalid transitions 85 no
view
evidence_json
{
    "evidence": "_revertBlock only reads pendingWithdrawCommits[blocks.length - 1] before popping blocks, leaving mapping entries intact; executeBlock later aggregates pendingWithdrawCommits[blockId], so stale entries from reverted blockIds will be applied when those ids are reused.",
    "locations": [
        "contracts/contracts/RollupChain.sol:231",
        "contracts/contracts/RollupChain.sol:334",
        "contracts/contracts/RollupChain.sol:605"
    ],
    "recommendation": "In _revertBlock, explicitly delete pendingWithdrawCommits for every reverted blockId (e.g., delete pendingWithdrawCommits[blocks.length - 1] before pop), and consider clearing any pendingWithdrawCommits entries whose blockId >= _blockId to prevent reuse on blockId re-commit.",
    "exploit_scenario": "1) Attacker submits an invalid L2 withdraw transition (e.g., no balance/signature) to the operator; operator includes it in block k. 2) commitBlock appends the withdraw to pendingWithdrawCommits[k]. 3) Attacker (or anyone) disputes the invalid transition within the challenge period; _revertBlock(k, ...) is called and the chain is truncated to length k. 4) _revertBlock does not delete pendingWithdrawCommits[k], so the stale withdrawal remains. 5) After unpause, operator commits a new valid block with id k. 6) When executeBlock runs for block k, it aggregates pendingWithdrawCommits[k] (including the stale invalid withdrawal) into pendingWithdraws. 7) Attacker calls withdraw() to receive the funds. This bypasses fraud proofs and extracts funds even though the original transition was invalid."
}
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": "0xf25b3f99",
            "selector": "0xf25b3f99",
            "calldata_variants": [
                "0xf25b3f99",
                "0xf25b3f990000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf940e385",
            "selector": "0xf940e385",
            "calldata_variants": [
                "0xf940e385",
                "0xf940e3850000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xec8dedb7",
            "selector": "0xec8dedb7",
            "calldata_variants": [
                "0xec8dedb7",
                "0xec8dedb70000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xed038f5c",
            "selector": "0xed038f5c",
            "calldata_variants": [
                "0xed038f5c",
                "0xed038f5c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xcb5f3129",
            "selector": "0xcb5f3129",
            "calldata_variants": [
                "0xcb5f3129",
                "0xcb5f31290000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xcdcab4a3",
            "selector": "0xcdcab4a3",
            "calldata_variants": [
                "0xcdcab4a3",
                "0xcdcab4a30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdfe9fbd1",
            "selector": "0xdfe9fbd1",
            "calldata_variants": [
                "0xdfe9fbd1",
                "0xdfe9fbd10000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 20617,
            "type": "tx_origin_used"
        },
        {
            "pc": 20624,
            "type": "tx_origin_used"
        }
    ]
}
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0x352df311f586c84b3ec7d6f7652a780cd8e64ac0a1acd07443395e8853745fd3
call_targets: 0xf86fd6735f88d5b6aa709b357ad5be22cedf1a05
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x352df311f586c84b3ec7d6f7652a780cd8e64ac0a1acd07443395e8853745fd3",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xf86fd6735f88d5b6aa709b357ad5be22cedf1a05"
    ],
    "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": "0xf25b3f99",
            "selector": "0xf25b3f99",
            "calldata_variants": [
                "0xf25b3f99",
                "0xf25b3f990000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf940e385",
            "selector": "0xf940e385",
            "calldata_variants": [
                "0xf940e385",
                "0xf940e3850000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xec8dedb7",
            "selector": "0xec8dedb7",
            "calldata_variants": [
                "0xec8dedb7",
                "0xec8dedb70000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xed038f5c",
            "selector": "0xed038f5c",
            "calldata_variants": [
                "0xed038f5c",
                "0xed038f5c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xcb5f3129",
            "selector": "0xcb5f3129",
            "calldata_variants": [
                "0xcb5f3129",
                "0xcb5f31290000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xcdcab4a3",
            "selector": "0xcdcab4a3",
            "calldata_variants": [
                "0xcdcab4a3",
                "0xcdcab4a30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdfe9fbd1",
            "selector": "0xdfe9fbd1",
            "calldata_variants": [
                "0xdfe9fbd1",
                "0xdfe9fbd10000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 2898,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3111,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 4180,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 9,
    "guards_detected": [
        {
            "pc": 20617,
            "type": "tx_origin_used"
        },
        {
            "pc": 20624,
            "type": "tx_origin_used"
        }
    ],
    "untrusted_call_count": 9
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0x352df311f586c84b3ec7d6f7652a780cd8e64ac0a1acd07443395e8853745fd3
call_targets: 0xf86fd6735f88d5b6aa709b357ad5be22cedf1a05
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x352df311f586c84b3ec7d6f7652a780cd8e64ac0a1acd07443395e8853745fd3",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xf86fd6735f88d5b6aa709b357ad5be22cedf1a05"
    ],
    "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": "0xf25b3f99",
            "selector": "0xf25b3f99",
            "calldata_variants": [
                "0xf25b3f99",
                "0xf25b3f990000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf940e385",
            "selector": "0xf940e385",
            "calldata_variants": [
                "0xf940e385",
                "0xf940e3850000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xec8dedb7",
            "selector": "0xec8dedb7",
            "calldata_variants": [
                "0xec8dedb7",
                "0xec8dedb70000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xed038f5c",
            "selector": "0xed038f5c",
            "calldata_variants": [
                "0xed038f5c",
                "0xed038f5c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xcb5f3129",
            "selector": "0xcb5f3129",
            "calldata_variants": [
                "0xcb5f3129",
                "0xcb5f31290000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xcdcab4a3",
            "selector": "0xcdcab4a3",
            "calldata_variants": [
                "0xcdcab4a3",
                "0xcdcab4a30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdfe9fbd1",
            "selector": "0xdfe9fbd1",
            "calldata_variants": [
                "0xdfe9fbd1",
                "0xdfe9fbd10000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 2898,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3111,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 4180,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 9,
    "guards_detected": [
        {
            "pc": 20617,
            "type": "tx_origin_used"
        },
        {
            "pc": 20624,
            "type": "tx_origin_used"
        }
    ]
}
info other cast Heavy EXTCODE*/BALANCE usage 55 no
view
evidence_json
{
    "notes": "frequent external code or balance checks; may indicate introspection or validation logic",
    "ext_balance_count": 13
}
info other cast Heavy CALL-family usage 55 no
view
evidence_json
{
    "notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
    "call_family_count": 16
}