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

Analysis Run

3bb739ca-be7e-4dd2-83ae-4ad3f0223883

failed
Chain ID
1
Address
Block Number
Created
Fri, Jan 2, 2026 4:08 AM
Review Summary

What survived the funnel

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

Confirmed
0
Validated
0
Source
Verified
Review Backing
Not yet
Best current signal
Untrusted DELEGATECALL target reachable
crit 0 high 0 proxy context implementation known
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
31211 report.consolidate complete 1 / 1 3 months ago
95077 artifact.fetch failed 1 / 3 1 week ago
95078 tool.cast_disasm complete 1 / 3 1 week ago
95079 analysis.bundle complete 1 / 3 1 week ago
95080 capability.graph complete 1 / 3 1 week ago
95081 detector.run complete 1 / 3 1 week ago
95082 validation.fork complete 1 / 3 1 week ago

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
0
No findings?
yes
Summary
No concrete, exploitable profit paths found in AUDIT_BUNDLE.txt.
View stderr
[codex:1338673] OpenAI Codex v0.77.0 (research preview)
[codex:1338673] --------
[codex:1338673] workdir: /tmp/codex-multi-ehwvwg4t
[codex:1338673] model: gpt-5.2-codex
[codex:1338673] provider: openai
[codex:1338673] approval: never
[codex:1338673] sandbox: read-only
[codex:1338673] reasoning effort: xhigh
[codex:1338673] reasoning summaries: auto
[codex:1338673] session id: 019b7ce0-274a-7160-a6f5-a4dac5ba168d
[codex:1338673] --------
[codex:1338673] user
[codex:1338673] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:1338673] 
[codex:1338673] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:1338673] 
[codex:1338673] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:1338673] - Gas inefficiency, code quality, naming, or best practices
[codex:1338673] - Theoretical vulnerabilities without a clear extraction path
[codex:1338673] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:1338673] - Front-running unless it enables theft beyond MEV
[codex:1338673] - DoS, griefing, or issues that don't result in attacker profit
[codex:1338673] - Missing events, view function issues, or informational findings
[codex:1338673] 
[codex:1338673] HIGH-VALUE PATTERNS TO HUNT:
[codex:1338673] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:1338673] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:1338673] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:1338673] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:1338673] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:1338673] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:1338673] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:1338673] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:1338673] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:1338673] 
[codex:1338673] For each finding, you MUST provide:
[codex:1338673] 1. Exact file and line numbers of vulnerable code
[codex:1338673] 2. Step-by-step exploit transaction sequence
[codex:1338673] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:1338673] 
[codex:1338673] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:1338673] 
[codex:1338673] Output MUST be valid JSON matching the provided schema.
[codex:1338673] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:1338673] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:1338673] mcp startup: no servers
[codex:1338673] 
[codex:1338673] thinking
[codex:1338673] **Preparing to read instructions and check skills**
[codex:1338673] exec
[codex:1338673] /bin/bash -lc ls in /tmp/codex-multi-ehwvwg4t succeeded in 6ms:
[codex:1338673] AUDIT_BUNDLE.txt
[codex:1338673] codex-output-schema.json
[codex:1338673] contracts
[codex:1338673] 
[codex:1338673] thinking
[codex:1338673] **Reading AUDIT_BUNDLE.txt**
[codex:1338673] exec
[codex:1338673] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-ehwvwg4t succeeded in 5ms:
[codex:1338673] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:1338673] 
[codex:1338673] ================================================================================
[codex:1338673] FILE: contracts/@scroll-tech/contracts/L1/IL1ScrollMessenger.sol
[codex:1338673] ================================================================================
[codex:1338673] // SPDX-License-Identifier: MIT
[codex:1338673] 
[codex:1338673] pragma solidity ^0.8.24;
[codex:1338673] 
[codex:1338673] import {IScrollMessenger} from "../libraries/IScrollMessenger.sol";
[codex:1338673] 
[codex:1338673] interface IL1ScrollMessenger is IScrollMessenger {
[codex:1338673]     /**********
[codex:1338673]      * Events *
[codex:1338673]      **********/
[codex:1338673] 
[codex:1338673]     /// @notice Emitted when the maximum number of times each message can be replayed is updated.
[codex:1338673]     /// @param oldMaxReplayTimes The old maximum number of times each message can be replayed.
[codex:1338673]     /// @param newMaxReplayTimes The new maximum number of times each message can be replayed.
[codex:1338673]     event UpdateMaxReplayTimes(uint256 oldMaxReplayTimes, uint256 newMaxReplayTimes);
[codex:1338673] 
[codex:1338673] thinking
[codex:1338673] **Searching for withdrawal functions**
[codex:1338673] exec
[codex:1338673] /bin/bash -lc 'rg -n "contract" contracts/contracts/liquidity -S' in /tmp/codex-multi-ehwvwg4t succeeded in 10ms:
[codex:1338673] contracts/contracts/liquidity/ITokenData.sol:11:	/// @dev Native tokens use address(0), but other token types must have a valid contract address
[codex:1338673] contracts/contracts/liquidity/ITokenData.sol:29:	 * @param tokenAddress The address of the token contract (zero address for native tokens)
[codex:1338673] contracts/contracts/liquidity/ITokenData.sol:52:	 * @param tokenAddress The address of the token contract (zero address for native tokens)
[codex:1338673] contracts/contracts/liquidity/TokenData.sol:5:import {Initializable} from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol";
[codex:1338673] contracts/contracts/liquidity/TokenData.sol:8: * @title Token Data Contract
[codex:1338673] contracts/contracts/liquidity/TokenData.sol:9: * @notice Abstract contract for managing token information and indices in the Intmax2 protocol
[codex:1338673] contracts/contracts/liquidity/TokenData.sol:13:abstract contract TokenData is Initializable, ITokenData {
[codex:1338673] contracts/contracts/liquidity/TokenData.sol:40:	 * @notice Initializes the TokenData contract with native token and initial ERC20 tokens
[codex:1338673] contracts/contracts/liquidity/TokenData.sol:41:	 * @dev Called during contract initialization to set up the token indices
[codex:1338673] contracts/contracts/liquidity/TokenData.sol:58:	 * @param tokenAddress The address of the token contract (zero address for native tokens)
[codex:1338673] contracts/contracts/liquidity/TokenData.sol:93:	 * @param tokenAddress The address of the token contract (zero address for native tokens)
[codex:1338673] contracts/contracts/liquidity/TokenData.sol:124:	 * @param tokenAddress The address of the token contract (zero address for native tokens)
[codex:1338673] contracts/contracts/liquidity/Liquidity.sol:5: * @title Liquidity Contract
[codex:1338673] contracts/contracts/liquidity/Liquidity.sol:6: * @notice This contract manages deposits and withdrawals of various token types (Native, ERC20, ERC721, ERC1155).
[codex:1338673] contracts/contracts/liquidity/Liquidity.sol:13:import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
[codex:1338673] contracts/contracts/liquidity/Liquidity.sol:14:import {IERC721} from "@openzeppelin/contracts/token/ERC721/IERC721.sol";
[codex:1338673] contracts/contracts/liquidity/Liquidity.sol:15:import {IERC1155} from "@openzeppelin/contracts/token/ERC1155/IERC1155.sol";
[codex:1338673] contracts/contracts/liquidity/Liquidity.sol:16:import {IL1ScrollMessenger} from "@scroll-tech/contracts/L1/IL1ScrollMessenger.sol";
[codex:1338673] contracts/contracts/liquidity/Liquidity.sol:19:import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1338673] contracts/contracts/liquidity/Liquidity.sol:20:import {PausableUpgradeable} from "@openzeppelin/contracts-upgradeable/utils/PausableUpgradeable.sol";
[codex:1338673] 
[codex:1338673] thinking
[codex:1338673] **Inspecting main contract Liquidity**
[codex:1338673] exec
[codex:1338673] /bin/bash -lc "sed -n '1,240p' contracts/contracts/liquidity/Liquidity.sol" in /tmp/codex-multi-ehwvwg4t succeeded in 6ms:
[codex:1338673] // SPDX-License-Identifier: MIT
[codex:1338673] pragma solidity 0.8.27;
[codex:1338673] 
[codex:1338673] /**
[codex:1338673]  * @title Liquidity Contract
[codex:1338673]  * @notice This contract manages deposits and withdrawals of various token types (Native, ERC20, ERC721, ERC1155).
[codex:1338673]  * @dev Handles deposit queuing, withdrawal processing, fee collection, and AML/eligibility checks.
[codex:1338673]  */
[codex:1338673] import {ILiquidity} from "./ILiquidity.sol";
[codex:1338673] import {IRollup} from "../rollup/IRollup.sol";
[codex:1338673] import {IContribution} from "../contribution/IContribution.sol";
[codex:1338673] import {IPermitter} from "../permitter/IPermitter.sol";
[codex:1338673] import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
[codex:1338673] import {IERC721} from "@openzeppelin/contracts/token/ERC721/IERC721.sol";
[codex:1338673] import {IERC1155} from "@openzeppelin/contracts/token/ERC1155/IERC1155.sol";
[codex:1338673] import {IL1ScrollMessenger} from "@scroll-tech/contracts/L1/IL1ScrollMessenger.sol";
[codex:1338673] 
[codex:1338673] import {TokenData} from "./TokenData.sol";
[codex:1338673] import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1338673] import {PausableUpgradeable} from "@openzeppelin/contracts-upgradeable/utils/PausableUpgradeable.sol";
[codex:1338673] exec
[codex:1338673] /bin/bash -lc "sed -n '240,520p' contracts/contracts/liquidity/Liquidity.sol" in /tmp/codex-multi-ehwvwg4t succeeded in 5ms:
[codex:1338673] 			collectedWithdrawalFees[tokenIndex] = 0;
[codex:1338673] 			TokenInfo memory tokenInfo = getTokenInfo(tokenIndex);
[codex:1338673] 			_sendToken(
[codex:1338673] 				tokenInfo.tokenType,
[codex:1338673] 				tokenInfo.tokenAddress,
[codex:1338673] 				recipient,
[codex:1338673] 				fee,
[codex:1338673] 				tokenInfo.tokenId
[codex:1338673] 			);
[codex:1338673] 			emit WithdrawalFeeWithdrawn(recipient, tokenIndex, fee);
[codex:1338673] 		}
[codex:1338673] 	}
[codex:1338673] 
[codex:1338673] 	/**
[codex:1338673] 	 * @notice Pauses all deposit operations
[codex:1338673] 	 * @dev Only callable by the admin role
[codex:1338673] 	 */
[codex:1338673] 	function pauseDeposits() external onlyRole(DEFAULT_ADMIN_ROLE) {
[codex:1338673] 		_pause();
[codex:1338673] 	}
[codex:1338673] exec
[codex:1338673] /bin/bash -lc "sed -n '520,1040p' contracts/contracts/liquidity/Liquidity.sol" in /tmp/codex-multi-ehwvwg4t succeeded in 6ms:
[codex:1338673] 			tokenIndex,
[codex:1338673] 			amount,
[codex:1338673] 			isEligible,
[codex:1338673] 			block.timestamp
[codex:1338673] 		);
[codex:1338673] 	}
[codex:1338673] 
[codex:1338673] 	/**
[codex:1338673] 	 * @notice Internal function to send tokens to a recipient
[codex:1338673] 	 * @dev Handles different token types (Native, ERC20, ERC721, ERC1155)
[codex:1338673] 	 * @param tokenType The type of token to send
[codex:1338673] 	 * @param token The token contract address (not used for native tokens)
[codex:1338673] 	 * @param recipient The address to receive the tokens
[codex:1338673] 	 * @param amount The amount of tokens to send
[codex:1338673] 	 * @param tokenId The token ID (used for ERC721 and ERC1155)
[codex:1338673] 	 */
[codex:1338673] 	function _sendToken(
[codex:1338673] 		TokenType tokenType,
[codex:1338673] 		address token,
[codex:1338673] 		address recipient,
[codex:1338673] 
[codex:1338673] thinking
[codex:1338673] **Searching for vulnerability paths**
[codex:1338673] exec
[codex:1338673] /bin/bash -lc 'rg -n "processWithdrawals|claimWithdrawals|withdraw" contracts/contracts -S' in /tmp/codex-multi-ehwvwg4t succeeded in 10ms:
[codex:1338673] contracts/contracts/common/WithdrawalLib.sol:6: * @notice Library for handling withdrawal operations and data structures
[codex:1338673] contracts/contracts/common/WithdrawalLib.sol:7: * @dev Provides utilities for working with withdrawals in the Intmax2 protocol
[codex:1338673] contracts/contracts/common/WithdrawalLib.sol:11:	 * @notice Represents a withdrawal operation in the Intmax2 protocol
[codex:1338673] contracts/contracts/common/WithdrawalLib.sol:12:	 * @dev Contains all necessary information to process a withdrawal from L2 to L1
[codex:1338673] contracts/contracts/common/WithdrawalLib.sol:13:	 * @param recipient The L1 address of the recipient of the withdrawal
[codex:1338673] contracts/contracts/common/WithdrawalLib.sol:14:	 * @param tokenIndex The index of the token being withdrawn
[codex:1338673] contracts/contracts/common/WithdrawalLib.sol:15:	 * @param amount The amount of tokens being withdrawn
[codex:1338673] contracts/contracts/common/WithdrawalLib.sol:16:	 * @param nullifier A unique identifier to prevent double-spending, derived from the withdrawal note
[codex:1338673] contracts/contracts/common/WithdrawalLib.sol:27:	 * @dev Uses keccak256 to hash the packed encoding of all withdrawal fields
[codex:1338673] contracts/contracts/common/WithdrawalLib.sol:28:	 * @param withdrawal The Withdrawal struct to be hashed
[codex:1338673] contracts/contracts/common/WithdrawalLib.sol:32:		Withdrawal memory withdrawal
[codex:1338673] contracts/contracts/common/WithdrawalLib.sol:37:					withdrawal.recipient,
[codex:1338673] contracts/contracts/common/WithdrawalLib.sol:38:					withdrawal.tokenIndex,
[codex:1338673] contracts/contracts/common/WithdrawalLib.sol:39:					withdrawal.amount,
[codex:1338673] contracts/contracts/common/WithdrawalLib.sol:40:					withdrawal.nullifier
[codex:1338673] contracts/contracts/liquidity/ITokenData.sol:16:	 * @dev Used to determine how to handle each token type during deposits and withdrawals
[codex:1338673] contracts/contracts/liquidity/Liquidity.sol:6: * @notice This contract manages deposits and withdrawals of various token types (Native, ERC20, ERC721, ERC1155).
[codex:1338673] contracts/contracts/liquidity/Liquidity.sol:7: * @dev Handles deposit queuing, withdrawal processing, fee collection, and AML/eligibility checks.
[codex:1338673] contracts/contracts/liquidity/Liquidity.sol:78:	/// @notice Mapping of withdrawal hashes to their timestamp when they became claimable
[codex:1338673] contracts/contracts/liquidity/Liquidity.sol:79:	/// @dev A value of 0 means the withdrawal is not claimable
[codex:1338673] 
[codex:1338673] thinking
[codex:1338673] **Inspecting deposit queue library**
[codex:1338673] exec
[codex:1338673] /bin/bash -lc "sed -n '1,240p' contracts/contracts/liquidity/lib/DepositQueueLib.sol" in /tmp/codex-multi-ehwvwg4t succeeded in 5ms:
[codex:1338673] // SPDX-License-Identifier: MIT
[codex:1338673] pragma solidity 0.8.27;
[codex:1338673] 
[codex:1338673] /**
[codex:1338673]  * @title Deposit Queue Library
[codex:1338673]  * @notice A library for managing a queue of pending deposits in the Liquidity contract
[codex:1338673]  * @dev Implements a queue data structure with enqueue, dequeue, and delete operations
[codex:1338673]  * to track deposits that are waiting to be relayed to Layer 2
[codex:1338673]  */
[codex:1338673] library DepositQueueLib {
[codex:1338673] 	/**
[codex:1338673] 	 * @notice Error thrown when trying to relay deposits outside the valid queue range
[codex:1338673] 	 * @param upToDepositId The requested deposit ID that is out of range
[codex:1338673] 	 * @param firstDepositId The first valid deposit ID in the queue
[codex:1338673] 	 * @param lastDepositId The last valid deposit ID in the queue
[codex:1338673] 	 */
[codex:1338673] 	error OutOfRange(
[codex:1338673] 		uint256 upToDepositId,
[codex:1338673] 		uint256 firstDepositId,
[codex:1338673] 		uint256 lastDepositId
[codex:1338673] 
[codex:1338673] thinking
[codex:1338673] **Checking for withdrawal functions in contracts**
[codex:1338673] exec
[codex:1338673] /bin/bash -lc 'rg -n "contract Rollup|Rollup" contracts/contracts/rollup -S' in /tmp/codex-multi-ehwvwg4t succeeded in 9ms:
[codex:1338673] contracts/contracts/rollup/IRollup.sol:5: * @title IRollup
[codex:1338673] contracts/contracts/rollup/IRollup.sol:7: * @dev Defines the external functions, events, and errors for the Rollup contract
[codex:1338673] contracts/contracts/rollup/IRollup.sol:9:interface IRollup {
[codex:1338673] contracts/contracts/rollup/IRollup.sol:198:	 * @notice Withdraws accumulated penalty fees from the Rollup contract
[codex:1338673] 
[codex:1338673] thinking
[codex:1338673] **Searching for Rollup contract implementation**
[codex:1338673] exec
[codex:1338673] /bin/bash -lc 'rg -n "contract Rollup" contracts -S' in /tmp/codex-multi-ehwvwg4t exited 1 in 9ms:
[codex:1338673] 
[codex:1338673] 
[codex:1338673] thinking
[codex:1338673] **Listing contract types**
[codex:1338673] exec
[codex:1338673] /bin/bash -lc 'ls contracts/contracts' in /tmp/codex-multi-ehwvwg4t succeeded in 5ms:
[codex:1338673] common
[codex:1338673] contribution
[codex:1338673] liquidity
[codex:1338673] permitter
[codex:1338673] rollup
[codex:1338673] 
[codex:1338673] thinking
[codex:1338673] **Checking for contribution contract implementation**
[codex:1338673] exec
[codex:1338673] /bin/bash -lc 'ls contracts/contracts/contribution' in /tmp/codex-multi-ehwvwg4t succeeded in 5ms:
[codex:1338673] IContribution.sol
[codex:1338673] 
[codex:1338673] thinking
[codex:1338673] **Analyzing Liquidity contract for reentrancy and access control risks**
[codex:1338673] exec
[codex:1338673] /bin/bash -lc "sed -n '1,200p' contracts/contracts/liquidity/lib/DepositLimit.sol" in /tmp/codex-multi-ehwvwg4t succeeded in 5ms:
[codex:1338673] // SPDX-License-Identifier: MIT
[codex:1338673] pragma solidity 0.8.27;
[codex:1338673] 
[codex:1338673] /**
[codex:1338673]  * @title Deposit Limit Library
[codex:1338673]  * @notice A library for managing deposit limits for different tokens over time
[codex:1338673]  * @dev Implements a time-based deposit limit system that increases limits for specific tokens
[codex:1338673]  * as time passes from the deployment date
[codex:1338673]  */
[codex:1338673] library DepositLimit {
[codex:1338673] 	/**
[codex:1338673] 	 * @notice Token index constants for supported tokens
[codex:1338673] 	 * @dev These indices must match the indices used in the TokenData contract
[codex:1338673] 	 */
[codex:1338673] 	uint8 internal constant ETH_INDEX = 0;
[codex:1338673] 	uint8 internal constant WBTC_INDEX = 2;
[codex:1338673] 	uint8 internal constant USDC_INDEX = 3;
[codex:1338673] 
[codex:1338673] 	/**
[codex:1338673] 	 * @notice Time period constants in days from deployment
[codex:1338673] 
[codex:1338673] thinking
[codex:1338673] **Noting deposit limit and ERC20CallOptionalLib**
[codex:1338673] exec
[codex:1338673] /bin/bash -lc "sed -n '1,200p' contracts/contracts/liquidity/lib/ERC20CallOptionalLib.sol" in /tmp/codex-multi-ehwvwg4t succeeded in 5ms:
[codex:1338673] // SPDX-License-Identifier: MIT
[codex:1338673] pragma solidity 0.8.27;
[codex:1338673] 
[codex:1338673] import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
[codex:1338673] 
[codex:1338673] /**
[codex:1338673]  * @title ERC20 Call Optional Library
[codex:1338673]  * @notice A library for safely handling ERC20 token transfers that may not conform to the ERC20 standard
[codex:1338673]  * @dev Some ERC20 tokens don't revert on failure or don't return a boolean value as specified in the standard.
[codex:1338673]  * This library handles these non-standard implementations safely.
[codex:1338673]  */
[codex:1338673] library ERC20CallOptionalLib {
[codex:1338673] 	/**
[codex:1338673] 	 * @notice Makes a low-level call to an ERC20 token contract and safely handles various return value scenarios
[codex:1338673] 	 * @dev Inspired by OpenZeppelin's SafeERC20 _callOptionalReturnBool function
[codex:1338673] 	 * @dev Handles three cases:
[codex:1338673] 	 *  1. Token returns true/false as per ERC20 spec
[codex:1338673] 	 *  2. Token returns nothing (empty return data)
[codex:1338673] 	 *  3. Token doesn't revert but returns non-boolean data
[codex:1338673] 	 * @param token The ERC20 token contract to call
[codex:1338673] 
[codex:1338673] thinking
[codex:1338673] **Analyzing potential vulnerabilities and cross-domain risks**
[codex:1338673] 
[codex:1338673] I'm taking a close look at token indexing, withdrawal flows, and message relay roles to spot subtle issues, especially checks around token indices, claimable withdrawals, and how the Scroll messenger is trusted or could be misused. I’m also considering reentrancy risks, hash collisions, and permissions in deposit and withdrawal mechanisms, weighing if any existing checks can be bypassed or exploited. Next, I'll confirm if other contracts in the audit bundle affect withdrawal functionality by listing all contract files.
[codex:1338673] exec
[codex:1338673] /bin/bash -lc 'rg --files contracts/contracts -S' in /tmp/codex-multi-ehwvwg4t succeeded in 9ms:
[codex:1338673] contracts/contracts/common/DepositLib.sol
[codex:1338673] contracts/contracts/common/WithdrawalLib.sol
[codex:1338673] contracts/contracts/liquidity/ITokenData.sol
[codex:1338673] contracts/contracts/liquidity/TokenData.sol
[codex:1338673] contracts/contracts/permitter/IPermitter.sol
[codex:1338673] contracts/contracts/liquidity/lib/DepositQueueLib.sol
[codex:1338673] contracts/contracts/liquidity/lib/DepositLimit.sol
[codex:1338673] contracts/contracts/liquidity/lib/ERC20CallOptionalLib.sol
[codex:1338673] contracts/contracts/liquidity/Liquidity.sol
[codex:1338673] contracts/contracts/liquidity/ILiquidity.sol
[codex:1338673] contracts/contracts/rollup/IRollup.sol
[codex:1338673] contracts/contracts/contribution/IContribution.sol
[codex:1338673] 
[codex:1338673] 
[codex:1338673] 
[codex:1338673] thinking
[codex:1338673] **Evaluating potential vulnerabilities in Liquidity contract**
[codex:1338673] 
[codex:1338673] I’m closely examining the Liquidity contract for possible exploits, focusing on logic around withdrawal claims, token indexing, deposit limits, and token transfer behaviors. I’m considering unusual token responses, reentrancy risks, cross-domain message checks, and initialization safeguards to identify any concrete paths for unauthorized profit or state manipulation. There’s a lot to unpack here, especially around how withdrawals and token transfers interact under edge cases.
[codex:1338673] thinking
[codex:1338673] **Investigating reentrancy and message replay issues**
[codex:1338673] 
[codex:1338673] I’m analyzing how external token calls and reentrancy might affect deposit and withdrawal functions, including ERC777 hooks and claimWithdrawals logic. I’m also considering if the cross-domain messenger’s replay capabilities combined with missing processed-withdrawal tracking could allow repeated withdrawals, though conclusive proof depends on messenger behavior. There’s a lot of nuance around reentrancy ordering and state updates, so I’m weighing whether any of these gaps translate into a viable exploit path.
[codex:1338673] thinking
[codex:1338673] **Concluding no exploit found**
[codex:1338673] 
[codex:1338673] I’m confident there’s no concrete, exploitable profit path in the Liquidity contract or related components after reviewing hashing, deposit cancellation, reentrancy protections, fee handling, and cross-domain messaging. This leads me to prepare a clear final JSON report indicating no findings.
[codex:1338673] codex
[codex:1338673] {"no_findings":true,"summary":"No concrete, exploitable profit paths found in AUDIT_BUNDLE.txt.","findings":[]}
[codex:1338673] tokens used
[codex:1338673] 41,223
[codex:1338673] {"no_findings":true,"summary":"No concrete, exploitable profit paths found in AUDIT_BUNDLE.txt.","findings":[]}
Metadata
{
    "codex": {
        "ran_at": "2026-01-02T04:08:16.832937+00:00",
        "returncode": 0
    },
    "summary": "No concrete, exploitable profit paths found in AUDIT_BUNDLE.txt.",
    "raw_final": {
        "summary": "No concrete, exploitable profit paths found in AUDIT_BUNDLE.txt.",
        "findings": [],
        "no_findings": true
    },
    "no_findings": true,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
1
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
14
EXT*/BALANCE
13
Total opcodes
12131
Flags
delegatecall_present 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 0x02c9
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x902eeef3
00000019: GT
0000001a: PUSH2 0x0175
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0xc60af2b5
00000024: GT
00000025: PUSH2 0x00dc
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xd547741f
0000002f: GT
00000030: PUSH2 0x0095
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xea4644bb
0000003a: GT
0000003b: PUSH2 0x006f
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xea4644bb
00000045: EQ
00000046: PUSH2 0x0907
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0xecda10f5
00000050: EQ
00000051: PUSH2 0x0927
00000054: JUMPI
00000055: DUP1
00000056: PUSH4 0xf23a6e61
0000005b: EQ
0000005c: PUSH2 0x093d
0000005f: JUMPI
00000060: DUP1
00000061: PUSH4 0xf6a552d4
00000066: EQ
00000067: PUSH2 0x0983
0000006a: JUMPI
0000006b: PUSH1 0x00
0000006d: DUP1
0000006e: REVERT
0000006f: JUMPDEST
00000070: DUP1
00000071: PUSH4 0xd547741f
00000076: EQ
00000077: PUSH2 0x08a5
0000007a: JUMPI
0000007b: DUP1
0000007c: PUSH4 0xdd9ea299
00000081: EQ
00000082: PUSH2 0x08c5
00000085: JUMPI
00000086: DUP1
00000087: PUSH4 0xe579fa2b
0000008c: EQ
0000008d: PUSH2 0x08da
00000090: JUMPI
00000091: PUSH1 0x00
00000093: DUP1
00000094: REVERT
00000095: JUMPDEST
00000096: DUP1
00000097: PUSH4 0xc60af2b5
0000009c: EQ
0000009d: PUSH2 0x07be
000000a0: JUMPI
000000a1: DUP1
000000a2: PUSH4 0xcb23bcb5
000000a7: EQ
000000a8: PUSH2 0x07eb
000000ab: JUMPI
000000ac: DUP1
000000ad: PUSH4 0xcbd90cd0
000000b2: EQ
000000b3: PUSH2 0x080b
000000b6: JUMPI
000000b7: DUP1
000000b8: PUSH4 0xcd6a976e
000000bd: EQ
000000be: PUSH2 0x0838
000000c1: JUMPI
000000c2: DUP1
000000c3: PUSH4 0xd395c017
000000c8: EQ
000000c9: PUSH2 0x0858
000000cc: JUMPI
000000cd: DUP1
000000ce: PUSH4 0xd438c349
000000d3: EQ
000000d4: PUSH2 0x0885
000000d7: JUMPI
000000d8: PUSH1 0x00
000000da: DUP1
000000db: REVERT
000000dc: JUMPDEST
000000dd: DUP1
000000de: PUSH4 0x9d07861c
000000e3: GT
000000e4: PUSH2 0x012e
000000e7: JUMPI
000000e8: DUP1
000000e9: PUSH4 0x9d07861c
000000ee: EQ
000000ef: PUSH2 0x06de
000000f2: JUMPI
000000f3: DUP1
000000f4: PUSH4 0x9d6a54cb
000000f9: EQ
000000fa: PUSH2 0x06fe
000000fd: JUMPI
000000fe: DUP1
000000ff: PUSH4 0xa217fddf
00000104: EQ
00000105: PUSH2 0x071e
00000108: JUMPI
00000109: DUP1
0000010a: PUSH4 0xa98f7044
0000010f: EQ
00000110: PUSH2 0x0733
00000113: JUMPI
00000114: DUP1
00000115: PUSH4 0xad3cb1cc
0000011a: EQ
0000011b: PUSH2 0x0753
0000011e: JUMPI
0000011f: DUP1
00000120: PUSH4 0xc13819b6
00000125: EQ
00000126: PUSH2 0x0791
00000129: JUMPI
0000012a: PUSH1 0x00
0000012c: DUP1
0000012d: REVERT
0000012e: JUMPDEST
0000012f: DUP1
00000130: PUSH4 0x902eeef3
00000135: EQ
00000136: PUSH2 0x061e
00000139: JUMPI
0000013a: DUP1
0000013b: PUSH4 0x91d14854
00000140: EQ
00000141: PUSH2 0x063e
00000144: JUMPI
00000145: DUP1
00000146: PUSH4 0x91f69b7d
0000014b: EQ
0000014c: PUSH2 0x065e
0000014f: JUMPI
00000150: DUP1
00000151: PUSH4 0x978069b4
00000156: EQ
00000157: PUSH2 0x067e
0000015a: JUMPI
0000015b: DUP1
0000015c: PUSH4 0x986be0e2
00000161: EQ
00000162: PUSH2 0x069e
00000165: JUMPI
00000166: DUP1
00000167: PUSH4 0x9c79a31c
0000016c: EQ
0000016d: PUSH2 0x06be
00000170: JUMPI
00000171: PUSH1 0x00
00000173: DUP1
00000174: REVERT
00000175: JUMPDEST
00000176: DUP1
00000177: PUSH4 0x433f6c12
0000017c: GT
0000017d: PUSH2 0x0234
00000180: JUMPI
00000181: DUP1
00000182: PUSH4 0x58dec40a
00000187: GT
00000188: PUSH2 0x01ed
0000018b: JUMPI
0000018c: DUP1
0000018d: PUSH4 0x63d8882a
00000192: GT
00000193: PUSH2 0x01c7
00000196: JUMPI
00000197: DUP1
00000198: PUSH4 0x63d8882a
0000019d: EQ
0000019e: PUSH2 0x05c1
000001a1: JUMPI
000001a2: DUP1
000001a3: PUSH4 0x67517837
000001a8: EQ
000001a9: PUSH2 0x05d6
000001ac: JUMPI
000001ad: DUP1
000001ae: PUSH4 0x76918c0d
000001b3: EQ
000001b4: PUSH2 0x05eb
000001b7: JUMPI
000001b8: DUP1
000001b9: PUSH4 0x85979730
000001be: EQ
000001bf: PUSH2 0x05fe
000001c2: JUMPI
000001c3: PUSH1 0x00
000001c5: DUP1
000001c6: REVERT
000001c7: JUMPDEST
000001c8: DUP1
000001c9: PUSH4 0x58dec40a
000001ce: EQ
000001cf: PUSH2 0x054c
000001d2: JUMPI
000001d3: DUP1
000001d4: PUSH4 0x5c975abb
000001d9: EQ
000001da: PUSH2 0x056c
000001dd: JUMPI
000001de: DUP1
000001df: PUSH4 0x5edeb2a3
000001e4: EQ
000001e5: PUSH2 0x0591
000001e8: JUMPI
000001e9: PUSH1 0x00
000001eb: DUP1
000001ec: REVERT
000001ed: JUMPDEST
000001ee: DUP1
000001ef: PUSH4 0x433f6c12
000001f4: EQ
000001f5: PUSH2 0x0494
000001f8: JUMPI
000001f9: DUP1
000001fa: PUSH4 0x4f1ef286
000001ff: EQ
00000200: PUSH2 0x04b6
00000203: JUMPI
00000204: DUP1
00000205: PUSH4 0x50520b1f
0000020a: EQ
0000020b: PUSH2 0x04c9
0000020e: JUMPI
0000020f: DUP1
00000210: PUSH4 0x52d1902d
00000215: EQ
00000216: PUSH2 0x0501
00000219: JUMPI
0000021a: DUP1
0000021b: PUSH4 0x54adcb99
00000220: EQ
00000221: PUSH2 0x0516
00000224: JUMPI
00000225: DUP1
00000226: PUSH4 0x5521f77e
0000022b: EQ
0000022c: PUSH2 0x052c
0000022f: JUMPI
00000230: PUSH1 0x00
00000232: DUP1
00000233: REVERT
00000234: JUMPDEST
00000235: DUP1
00000236: PUSH4 0x248a9ca3
0000023b: GT
0000023c: PUSH2 0x0286
0000023f: JUMPI
00000240: DUP1
00000241: PUSH4 0x248a9ca3
00000246: EQ
00000247: PUSH2 0x03c5
0000024a: JUMPI
0000024b: DUP1
0000024c: PUSH4 0x2f2ff15d
00000251: EQ
00000252: PUSH2 0x03e5
00000255: JUMPI
00000256: DUP1
00000257: PUSH4 0x36568abe
0000025c: EQ
0000025d: PUSH2 0x0405
00000260: JUMPI
00000261: DUP1
00000262: PUSH4 0x381175f6
00000267: EQ
00000268: PUSH2 0x0425
0000026b: JUMPI
0000026c: DUP1
0000026d: PUSH4 0x3cd07066
00000272: EQ
00000273: PUSH2 0x0461
00000276: JUMPI
00000277: DUP1
00000278: PUSH4 0x3de40cfa
0000027d: EQ
0000027e: PUSH2 0x0481
00000281: JUMPI
00000282: PUSH1 0x00
00000284: DUP1
00000285: REVERT
00000286: JUMPDEST
00000287: DUP1
00000288: PUSH4 0x01ffc9a7
0000028d: EQ
0000028e: PUSH2 0x02ce
00000291: JUMPI
00000292: DUP1
00000293: PUSH4 0x02191980
00000298: EQ
00000299: PUSH2 0x0303
0000029c: JUMPI
0000029d: DUP1
0000029e: PUSH4 0x08c5ca5c
000002a3: EQ
000002a4: PUSH2 0x031a
000002a7: JUMPI
000002a8: DUP1
000002a9: PUSH4 0x219cd263
000002ae: EQ
000002af: PUSH2 0x033a
000002b2: JUMPI
000002b3: DUP1
000002b4: PUSH4 0x232c1c8a
000002b9: EQ
000002ba: PUSH2 0x0356
000002bd: JUMPI
000002be: DUP1
000002bf: PUSH4 0x2483e715
000002c4: EQ
000002c5: PUSH2 0x0383
000002c8: JUMPI
000002c9: JUMPDEST
000002ca: PUSH1 0x00
000002cc: DUP1
000002cd: REVERT
000002ce: JUMPDEST
000002cf: CALLVALUE
000002d0: DUP1
000002d1: ISZERO
000002d2: PUSH2 0x02da
000002d5: JUMPI
000002d6: PUSH1 0x00
000002d8: DUP1
000002d9: REVERT
000002da: JUMPDEST
000002db: POP
000002dc: PUSH2 0x02ee
000002df: PUSH2 0x02e9
000002e2: CALLDATASIZE
000002e3: PUSH1 0x04
000002e5: PUSH2 0x3916
000002e8: JUMP
000002e9: JUMPDEST
000002ea: PUSH2 0x0999
000002ed: JUMP
000002ee: JUMPDEST
000002ef: PUSH1 0x40
000002f1: MLOAD
000002f2: SWAP1
000002f3: ISZERO
000002f4: ISZERO
000002f5: DUP2
000002f6: MSTORE
000002f7: PUSH1 0x20
000002f9: ADD
000002fa: JUMPDEST
000002fb: PUSH1 0x40
000002fd: MLOAD
000002fe: DUP1
000002ff: SWAP2
00000300: SUB
00000301: SWAP1
00000302: RETURN
00000303: JUMPDEST
00000304: CALLVALUE
00000305: DUP1
00000306: ISZERO
00000307: PUSH2 0x030f
0000030a: JUMPI
0000030b: PUSH1 0x00
0000030d: DUP1
0000030e: REVERT
0000030f: JUMPDEST
00000310: POP
00000311: PUSH2 0x0318
00000314: PUSH2 0x09d0
00000317: JUMP
00000318: JUMPDEST
00000319: STOP
0000031a: JUMPDEST
0000031b: CALLVALUE
0000031c: DUP1
0000031d: ISZERO
0000031e: PUSH2 0x0326
00000321: JUMPI
00000322: PUSH1 0x00
00000324: DUP1
00000325: REVERT
00000326: JUMPDEST
00000327: POP
00000328: PUSH2 0x0318
0000032b: PUSH2 0x0335
0000032e: CALLDATASIZE
0000032f: PUSH1 0x04
00000331: PUSH2 0x3955
00000334: JUMP
00000335: JUMPDEST
00000336: PUSH2 0x09e6
00000339: JUMP
0000033a: JUMPDEST
0000033b: CALLVALUE
0000033c: DUP1
0000033d: ISZERO
0000033e: PUSH2 0x0346
00000341: JUMPI
00000342: PUSH1 0x00
00000344: DUP1
00000345: REVERT
00000346: JUMPDEST
00000347: POP
00000348: PUSH1 0x40
0000034a: MLOAD
0000034b: PUSH1 0x00
0000034d: DUP2
0000034e: MSTORE
0000034f: PUSH1 0x20
00000351: ADD
00000352: PUSH2 0x02fa
00000355: JUMP
00000356: JUMPDEST
00000357: CALLVALUE
00000358: DUP1
00000359: ISZERO
0000035a: PUSH2 0x0362
0000035d: JUMPI
0000035e: PUSH1 0x00
00000360: DUP1
00000361: REVERT
00000362: JUMPDEST
00000363: POP
00000364: PUSH2 0x0376
00000367: PUSH2 0x0371
0000036a: CALLDATASIZE
0000036b: PUSH1 0x04
0000036d: PUSH2 0x39db
00000370: JUMP
00000371: JUMPDEST
00000372: PUSH2 0x0a63
00000375: JUMP
00000376: JUMPDEST
00000377: PUSH1 0x40
00000379: MLOAD
0000037a: PUSH2 0x02fa
0000037d: SWAP2
0000037e: SWAP1
0000037f: PUSH2 0x3a6b
00000382: JUMP
00000383: JUMPDEST
00000384: CALLVALUE
00000385: DUP1
00000386: ISZERO
00000387: PUSH2 0x038f
0000038a: JUMPI
0000038b: PUSH1 0x00
0000038d: DUP1
0000038e: REVERT
0000038f: JUMPDEST
00000390: POP
00000391: PUSH2 0x03b7
00000394: PUSH32 0xab4f864e5201b0fde9b5ee3e4cf96384802b0ffdfcf7f9de4699ce21a30afc4f
000003b5: DUP2
000003b6: JUMP
000003b7: JUMPDEST
000003b8: PUSH1 0x40
000003ba: MLOAD
000003bb: SWAP1
000003bc: DUP2
000003bd: MSTORE
000003be: PUSH1 0x20
000003c0: ADD
000003c1: PUSH2 0x02fa
000003c4: JUMP
000003c5: JUMPDEST
000003c6: CALLVALUE
000003c7: DUP1
000003c8: ISZERO
000003c9: PUSH2 0x03d1
000003cc: JUMPI
000003cd: PUSH1 0x00
000003cf: DUP1
000003d0: REVERT
000003d1: JUMPDEST
000003d2: POP
000003d3: PUSH2 0x03b7
000003d6: PUSH2 0x03e0
000003d9: CALLDATASIZE
000003da: PUSH1 0x04
000003dc: PUSH2 0x3acc
000003df: JUMP
000003e0: JUMPDEST
000003e1: PUSH2 0x0b64
000003e4: JUMP
000003e5: JUMPDEST
000003e6: CALLVALUE
000003e7: DUP1
000003e8: ISZERO
000003e9: PUSH2 0x03f1
000003ec: JUMPI
000003ed: PUSH1 0x00
000003ef: DUP1
000003f0: REVERT
000003f1: JUMPDEST
000003f2: POP
000003f3: PUSH2 0x0318
000003f6: PUSH2 0x0400
000003f9: CALLDATASIZE
000003fa: PUSH1 0x04
000003fc: PUSH2 0x3ae5
000003ff: JUMP
00000400: JUMPDEST
00000401: PUSH2 0x0b86
00000404: JUMP
00000405: JUMPDEST
00000406: CALLVALUE
00000407: DUP1
00000408: ISZERO
00000409: PUSH2 0x0411
0000040c: JUMPI
0000040d: PUSH1 0x00
0000040f: DUP1
00000410: REVERT
00000411: JUMPDEST
00000412: POP
00000413: PUSH2 0x0318
00000416: PUSH2 0x0420
00000419: CALLDATASIZE
0000041a: PUSH1 0x04
0000041c: PUSH2 0x3ae5
0000041f: JUMP
00000420: JUMPDEST
00000421: PUSH2 0x0ba8
00000424: JUMP
00000425: JUMPDEST
00000426: CALLVALUE
00000427: DUP1
00000428: ISZERO
00000429: PUSH2 0x0431
0000042c: JUMPI
0000042d: PUSH1 0x00
0000042f: DUP1
00000430: REVERT
00000431: JUMPDEST
00000432: POP
00000433: PUSH2 0x0445
00000436: PUSH2 0x0440
00000439: CALLDATASIZE
0000043a: PUSH1 0x04
0000043c: PUSH2 0x3b15
0000043f: JUMP
00000440: JUMPDEST
00000441: PUSH2 0x0be0
00000444: JUMP
00000445: JUMPDEST
00000446: PUSH1 0x40
00000448: DUP1
00000449: MLOAD
0000044a: SWAP3
0000044b: ISZERO
0000044c: ISZERO
0000044d: DUP4
0000044e: MSTORE
0000044f: PUSH4 0xffffffff
00000454: SWAP1
00000455: SWAP2
00000456: AND
00000457: PUSH1 0x20
00000459: DUP4
0000045a: ADD
0000045b: MSTORE
0000045c: ADD
0000045d: PUSH2 0x02fa
00000460: JUMP
00000461: JUMPDEST
00000462: CALLVALUE
00000463: DUP1
00000464: ISZERO
00000465: PUSH2 0x046d
00000468: JUMPI
00000469: PUSH1 0x00
0000046b: DUP1
0000046c: REVERT
0000046d: JUMPDEST
0000046e: POP
0000046f: PUSH2 0x0318
00000472: PUSH2 0x047c
00000475: CALLDATASIZE
00000476: PUSH1 0x04
00000478: PUSH2 0x3b73
0000047b: JUMP
0000047c: JUMPDEST
0000047d: PUSH2 0x0cfb
00000480: JUMP
00000481: JUMPDEST
00000482: PUSH2 0x0318
00000485: PUSH2 0x048f
00000488: CALLDATASIZE
00000489: PUSH1 0x04
0000048b: PUSH2 0x3be5
0000048e: JUMP
0000048f: JUMPDEST
00000490: PUSH2 0x0d80
00000493: JUMP
00000494: JUMPDEST
00000495: CALLVALUE
00000496: DUP1
00000497: ISZERO
00000498: PUSH2 0x04a0
0000049b: JUMPI
0000049c: PUSH1 0x00
0000049e: DUP1
0000049f: REVERT
000004a0: JUMPDEST
000004a1: POP
000004a2: PUSH2 0x03b7
000004a5: PUSH1 0x00
000004a7: DUP1
000004a8: MLOAD
000004a9: PUSH1 0x20
000004ab: PUSH2 0x470d
000004ae: DUP4
000004af: CODECOPY
000004b0: DUP2
000004b1: MLOAD
000004b2: SWAP2
000004b3: MSTORE
000004b4: DUP2
000004b5: JUMP
000004b6: JUMPDEST
000004b7: PUSH2 0x0318
000004ba: PUSH2 0x04c4
000004bd: CALLDATASIZE
000004be: PUSH1 0x04
000004c0: PUSH2 0x3c62
000004c3: JUMP
000004c4: JUMPDEST
000004c5: PUSH2 0x0e75
000004c8: JUMP
000004c9: JUMPDEST
000004ca: CALLVALUE
000004cb: DUP1
000004cc: ISZERO
000004cd: PUSH2 0x04d5
000004d0: JUMPI
000004d1: PUSH1 0x00
000004d3: DUP1
000004d4: REVERT
000004d5: JUMPDEST
000004d6: POP
000004d7: PUSH1 0x05
000004d9: SLOAD
000004da: PUSH2 0x04e9
000004dd: SWAP1
000004de: PUSH1 0x01
000004e0: PUSH1 0x01
000004e2: PUSH1 0xa0
000004e4: SHL
000004e5: SUB
000004e6: AND
000004e7: DUP2
000004e8: JUMP
000004e9: JUMPDEST
000004ea: PUSH1 0x40
000004ec: MLOAD
000004ed: PUSH1 0x01
000004ef: PUSH1 0x01
000004f1: PUSH1 0xa0
000004f3: SHL
000004f4: SUB
000004f5: SWAP1
000004f6: SWAP2
000004f7: AND
000004f8: DUP2
000004f9: MSTORE
000004fa: PUSH1 0x20
000004fc: ADD
000004fd: PUSH2 0x02fa
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 0x03b7
00000512: PUSH2 0x0e94
00000515: JUMP
00000516: JUMPDEST
00000517: CALLVALUE
00000518: DUP1
00000519: ISZERO
0000051a: PUSH2 0x0522
0000051d: JUMPI
0000051e: PUSH1 0x00
00000520: DUP1
00000521: REVERT
00000522: JUMPDEST
00000523: POP
00000524: PUSH2 0x03b7
00000527: PUSH2 0x01c2
0000052a: DUP2
0000052b: JUMP
0000052c: JUMPDEST
0000052d: CALLVALUE
0000052e: DUP1
0000052f: ISZERO
00000530: PUSH2 0x0538
00000533: JUMPI
00000534: PUSH1 0x00
00000536: DUP1
00000537: REVERT
00000538: JUMPDEST
00000539: POP
0000053a: PUSH2 0x0318
0000053d: PUSH2 0x0547
00000540: CALLDATASIZE
00000541: PUSH1 0x04
00000543: PUSH2 0x3d0d
00000546: JUMP
00000547: JUMPDEST
00000548: PUSH2 0x0eb1
0000054b: JUMP
0000054c: JUMPDEST
0000054d: CALLVALUE
0000054e: DUP1
0000054f: ISZERO
00000550: PUSH2 0x0558
00000553: JUMPI
00000554: PUSH1 0x00
00000556: DUP1
00000557: REVERT
00000558: JUMPDEST
00000559: POP
0000055a: PUSH2 0x0318
0000055d: PUSH2 0x0567
00000560: CALLDATASIZE
00000561: PUSH1 0x04
00000563: PUSH2 0x3dea
00000566: JUMP
00000567: JUMPDEST
00000568: PUSH2 0x0fdc
0000056b: JUMP
0000056c: JUMPDEST
0000056d: CALLVALUE
0000056e: DUP1
0000056f: ISZERO
00000570: PUSH2 0x0578
00000573: JUMPI
00000574: PUSH1 0x00
00000576: DUP1
00000577: REVERT
00000578: JUMPDEST
00000579: POP
0000057a: PUSH1 0x00
0000057c: DUP1
0000057d: MLOAD
0000057e: PUSH1 0x20
00000580: PUSH2 0x46ed
00000583: DUP4
00000584: CODECOPY
00000585: DUP2
00000586: MLOAD
00000587: SWAP2
00000588: MSTORE
00000589: SLOAD
0000058a: PUSH1 0xff
0000058c: AND
0000058d: PUSH2 0x02ee
00000590: JUMP
00000591: JUMPDEST
00000592: CALLVALUE
00000593: DUP1
00000594: ISZERO
00000595: PUSH2 0x059d
00000598: JUMPI
00000599: PUSH1 0x00
0000059b: DUP1
0000059c: REVERT
0000059d: JUMPDEST
0000059e: POP
0000059f: PUSH2 0x02ee
000005a2: PUSH2 0x05ac
000005a5: CALLDATASIZE
000005a6: PUSH1 0x04
000005a8: PUSH2 0x3acc
000005ab: JUMP
000005ac: JUMPDEST
000005ad: PUSH1 0x0c
000005af: PUSH1 0x20
000005b1: MSTORE
000005b2: PUSH1 0x00
000005b4: SWAP1
000005b5: DUP2
000005b6: MSTORE
000005b7: PUSH1 0x40
000005b9: SWAP1
000005ba: KECCAK256
000005bb: SLOAD
000005bc: PUSH1 0xff
000005be: AND
000005bf: DUP2
000005c0: JUMP
000005c1: JUMPDEST
000005c2: CALLVALUE
000005c3: DUP1
000005c4: ISZERO
000005c5: PUSH2 0x05cd
000005c8: JUMPI
000005c9: PUSH1 0x00
000005cb: DUP1
000005cc: REVERT
000005cd: JUMPDEST
000005ce: POP
000005cf: PUSH2 0x0318
000005d2: PUSH2 0x10db
000005d5: JUMP
000005d6: JUMPDEST
000005d7: CALLVALUE
000005d8: DUP1
000005d9: ISZERO
000005da: PUSH2 0x05e2
000005dd: JUMPI
000005de: PUSH1 0x00
000005e0: DUP1
000005e1: REVERT
000005e2: JUMPDEST
000005e3: POP
000005e4: PUSH2 0x03b7
000005e7: PUSH2 0x10ee
000005ea: JUMP
000005eb: JUMPDEST
000005ec: PUSH2 0x0318
000005ef: PUSH2 0x05f9
000005f2: CALLDATASIZE
000005f3: PUSH1 0x04
000005f5: PUSH2 0x3e3e
000005f8: JUMP
000005f9: JUMPDEST
000005fa: PUSH2 0x1105
000005fd: JUMP
000005fe: JUMPDEST
000005ff: CALLVALUE
00000600: DUP1
00000601: ISZERO
00000602: PUSH2 0x060a
00000605: JUMPI
00000606: PUSH1 0x00
00000608: DUP1
00000609: REVERT
0000060a: JUMPDEST
0000060b: POP
0000060c: PUSH1 0x08
0000060e: SLOAD
0000060f: PUSH2 0x04e9
00000612: SWAP1
00000613: PUSH1 0x01
00000615: PUSH1 0x01
00000617: PUSH1 0xa0
00000619: SHL
0000061a: SUB
0000061b: AND
0000061c: DUP2
0000061d: JUMP
0000061e: JUMPDEST
0000061f: CALLVALUE
00000620: DUP1
00000621: ISZERO
00000622: PUSH2 0x062a
00000625: JUMPI
00000626: PUSH1 0x00
00000628: DUP1
00000629: REVERT
0000062a: JUMPDEST
0000062b: POP
0000062c: PUSH2 0x0318
0000062f: PUSH2 0x0639
00000632: CALLDATASIZE
00000633: PUSH1 0x04
00000635: PUSH2 0x3e60
00000638: JUMP
00000639: JUMPDEST
0000063a: PUSH2 0x126d
0000063d: JUMP
0000063e: JUMPDEST
0000063f: CALLVALUE
00000640: DUP1
00000641: ISZERO
00000642: PUSH2 0x064a
00000645: JUMPI
00000646: PUSH1 0x00
00000648: DUP1
00000649: REVERT
0000064a: JUMPDEST
0000064b: POP
0000064c: PUSH2 0x02ee
0000064f: PUSH2 0x0659
00000652: CALLDATASIZE
00000653: PUSH1 0x04
00000655: PUSH2 0x3ae5
00000658: JUMP
00000659: JUMPDEST
0000065a: PUSH2 0x12d7
0000065d: JUMP
0000065e: JUMPDEST
0000065f: CALLVALUE
00000660: DUP1
00000661: ISZERO
00000662: PUSH2 0x066a
00000665: JUMPI
00000666: PUSH1 0x00
00000668: DUP1
00000669: REVERT
0000066a: JUMPDEST
0000066b: POP
0000066c: PUSH2 0x0318
0000066f: PUSH2 0x0679
00000672: CALLDATASIZE
00000673: PUSH1 0x04
00000675: PUSH2 0x3ed2
00000678: JUMP
00000679: JUMPDEST
0000067a: PUSH2 0x130f
0000067d: JUMP
0000067e: JUMPDEST
0000067f: CALLVALUE
00000680: DUP1
00000681: ISZERO
00000682: PUSH2 0x068a
00000685: JUMPI
00000686: PUSH1 0x00
00000688: DUP1
00000689: REVERT
0000068a: JUMPDEST
0000068b: POP
0000068c: PUSH1 0x07
0000068e: SLOAD
0000068f: PUSH2 0x04e9
00000692: SWAP1
00000693: PUSH1 0x01
00000695: PUSH1 0x01
00000697: PUSH1 0xa0
00000699: SHL
0000069a: SUB
0000069b: AND
0000069c: DUP2
0000069d: JUMP
0000069e: JUMPDEST
0000069f: CALLVALUE
000006a0: DUP1
000006a1: ISZERO
000006a2: PUSH2 0x06aa
000006a5: JUMPI
000006a6: PUSH1 0x00
000006a8: DUP1
000006a9: REVERT
000006aa: JUMPDEST
000006ab: POP
000006ac: PUSH2 0x03b7
000006af: PUSH2 0x06b9
000006b2: CALLDATASIZE
000006b3: PUSH1 0x04
000006b5: PUSH2 0x3acc
000006b8: JUMP
000006b9: JUMPDEST
000006ba: PUSH2 0x14bc
000006bd: JUMP
000006be: JUMPDEST
000006bf: CALLVALUE
000006c0: DUP1
000006c1: ISZERO
000006c2: PUSH2 0x06ca
000006c5: JUMPI
000006c6: PUSH1 0x00
000006c8: DUP1
000006c9: REVERT
000006ca: JUMPDEST
000006cb: POP
000006cc: PUSH2 0x0318
000006cf: PUSH2 0x06d9
000006d2: CALLDATASIZE
000006d3: PUSH1 0x04
000006d5: PUSH2 0x3f13
000006d8: JUMP
000006d9: JUMPDEST
000006da: PUSH2 0x14ed
000006dd: JUMP
000006de: JUMPDEST
000006df: CALLVALUE
000006e0: DUP1
000006e1: ISZERO
000006e2: PUSH2 0x06ea
000006e5: JUMPI
000006e6: PUSH1 0x00
000006e8: DUP1
000006e9: REVERT
000006ea: JUMPDEST
000006eb: POP
000006ec: PUSH2 0x02ee
000006ef: PUSH2 0x06f9
000006f2: CALLDATASIZE
000006f3: PUSH1 0x04
000006f5: PUSH2 0x3f59
000006f8: JUMP
000006f9: JUMPDEST
000006fa: PUSH2 0x1665
000006fd: JUMP
000006fe: JUMPDEST
000006ff: CALLVALUE
00000700: DUP1
00000701: ISZERO
00000702: PUSH2 0x070a
00000705: JUMPI
00000706: PUSH1 0x00
00000708: DUP1
00000709: REVERT
0000070a: JUMPDEST
0000070b: POP
0000070c: PUSH2 0x0318
0000070f: PUSH2 0x0719
00000712: CALLDATASIZE
00000713: PUSH1 0x04
00000715: PUSH2 0x3fbe
00000718: JUMP
00000719: JUMPDEST
0000071a: PUSH2 0x1737
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 0x03b7
0000072f: PUSH1 0x00
00000731: DUP2
00000732: JUMP
00000733: JUMPDEST
00000734: CALLVALUE
00000735: DUP1
00000736: ISZERO
00000737: PUSH2 0x073f
0000073a: JUMPI
0000073b: PUSH1 0x00
0000073d: DUP1
0000073e: REVERT
0000073f: JUMPDEST
00000740: POP
00000741: PUSH1 0x04
00000743: SLOAD
00000744: PUSH2 0x04e9
00000747: SWAP1
00000748: PUSH1 0x01
0000074a: PUSH1 0x01
0000074c: PUSH1 0xa0
0000074e: SHL
0000074f: SUB
00000750: AND
00000751: DUP2
00000752: JUMP
00000753: JUMPDEST
00000754: CALLVALUE
00000755: DUP1
00000756: ISZERO
00000757: PUSH2 0x075f
0000075a: JUMPI
0000075b: PUSH1 0x00
0000075d: DUP1
0000075e: REVERT
0000075f: JUMPDEST
00000760: POP
00000761: PUSH2 0x0784
00000764: PUSH1 0x40
00000766: MLOAD
00000767: DUP1
00000768: PUSH1 0x40
0000076a: ADD
0000076b: PUSH1 0x40
0000076d: MSTORE
0000076e: DUP1
0000076f: PUSH1 0x05
00000771: DUP2
00000772: MSTORE
00000773: PUSH1 0x20
00000775: ADD
00000776: PUSH5 0x0352e302e3
0000077c: PUSH1 0xdc
0000077e: SHL
0000077f: DUP2
00000780: MSTORE
00000781: POP
00000782: DUP2
00000783: JUMP
00000784: JUMPDEST
00000785: PUSH1 0x40
00000787: MLOAD
00000788: PUSH2 0x02fa
0000078b: SWAP2
0000078c: SWAP1
0000078d: PUSH2 0x407d
00000790: JUMP
00000791: JUMPDEST
00000792: CALLVALUE
00000793: DUP1
00000794: ISZERO
00000795: PUSH2 0x079d
00000798: JUMPI
00000799: PUSH1 0x00
0000079b: DUP1
0000079c: REVERT
0000079d: JUMPDEST
0000079e: POP
0000079f: PUSH2 0x07b1
000007a2: PUSH2 0x07ac
000007a5: CALLDATASIZE
000007a6: PUSH1 0x04
000007a8: PUSH2 0x3acc
000007ab: JUMP
000007ac: JUMPDEST
000007ad: PUSH2 0x1808
000007b0: JUMP
000007b1: JUMPDEST
000007b2: PUSH1 0x40
000007b4: MLOAD
000007b5: PUSH2 0x02fa
000007b8: SWAP2
000007b9: SWAP1
000007ba: PUSH2 0x4090
000007bd: JUMP
000007be: JUMPDEST
000007bf: CALLVALUE
000007c0: DUP1
000007c1: ISZERO
000007c2: PUSH2 0x07ca
000007c5: JUMPI
000007c6: PUSH1 0x00
000007c8: DUP1
000007c9: REVERT
000007ca: JUMPDEST
000007cb: POP
000007cc: PUSH2 0x03b7
000007cf: PUSH2 0x07d9
000007d2: CALLDATASIZE
000007d3: PUSH1 0x04
000007d5: PUSH2 0x40b0
000007d8: JUMP
000007d9: JUMPDEST
000007da: PUSH1 0x0b
000007dc: PUSH1 0x20
000007de: MSTORE
000007df: PUSH1 0x00
000007e1: SWAP1
000007e2: DUP2
000007e3: MSTORE
000007e4: PUSH1 0x40
000007e6: SWAP1
000007e7: KECCAK256
000007e8: SLOAD
000007e9: DUP2
000007ea: JUMP
000007eb: JUMPDEST
000007ec: CALLVALUE
000007ed: DUP1
000007ee: ISZERO
000007ef: PUSH2 0x07f7
000007f2: JUMPI
000007f3: PUSH1 0x00
000007f5: DUP1
000007f6: REVERT
000007f7: JUMPDEST
000007f8: POP
000007f9: PUSH1 0x06
000007fb: SLOAD
000007fc: PUSH2 0x04e9
000007ff: SWAP1
00000800: PUSH1 0x01
00000802: PUSH1 0x01
00000804: PUSH1 0xa0
00000806: SHL
00000807: SUB
00000808: AND
00000809: DUP2
0000080a: JUMP
0000080b: JUMPDEST
0000080c: CALLVALUE
0000080d: DUP1
0000080e: ISZERO
0000080f: PUSH2 0x0817
00000812: JUMPI
00000813: PUSH1 0x00
00000815: DUP1
00000816: REVERT
00000817: JUMPDEST
00000818: POP
00000819: PUSH2 0x082b
0000081c: PUSH2 0x0826
0000081f: CALLDATASIZE
00000820: PUSH1 0x04
00000822: PUSH2 0x40b0
00000825: JUMP
00000826: JUMPDEST
00000827: PUSH2 0x1869
0000082a: JUMP
0000082b: JUMPDEST
0000082c: PUSH1 0x40
0000082e: MLOAD
0000082f: PUSH2 0x02fa
00000832: SWAP2
00000833: SWAP1
00000834: PUSH2 0x40e1
00000837: JUMP
00000838: JUMPDEST
00000839: CALLVALUE
0000083a: DUP1
0000083b: ISZERO
0000083c: PUSH2 0x0844
0000083f: JUMPI
00000840: PUSH1 0x00
00000842: DUP1
00000843: REVERT
00000844: JUMPDEST
00000845: POP
00000846: PUSH2 0x0318
00000849: PUSH2 0x0853
0000084c: CALLDATASIZE
0000084d: PUSH1 0x04
0000084f: PUSH2 0x3d0d
00000852: JUMP
00000853: JUMPDEST
00000854: PUSH2 0x190c
00000857: JUMP
00000858: JUMPDEST
00000859: CALLVALUE
0000085a: DUP1
0000085b: ISZERO
0000085c: PUSH2 0x0864
0000085f: JUMPI
00000860: PUSH1 0x00
00000862: DUP1
00000863: REVERT
00000864: JUMPDEST
00000865: POP
00000866: PUSH2 0x03b7
00000869: PUSH2 0x0873
0000086c: CALLDATASIZE
0000086d: PUSH1 0x04
0000086f: PUSH2 0x40b0
00000872: JUMP
00000873: JUMPDEST
00000874: PUSH1 0x0a
00000876: PUSH1 0x20
00000878: MSTORE
00000879: PUSH1 0x00
0000087b: SWAP1
0000087c: DUP2
0000087d: MSTORE
0000087e: PUSH1 0x40
00000880: SWAP1
00000881: KECCAK256
00000882: SLOAD
00000883: DUP2
00000884: JUMP
00000885: JUMPDEST
00000886: CALLVALUE
00000887: DUP1
00000888: ISZERO
00000889: PUSH2 0x0891
0000088c: JUMPI
0000088d: PUSH1 0x00
0000088f: DUP1
00000890: REVERT
00000891: JUMPDEST
00000892: POP
00000893: PUSH2 0x0318
00000896: PUSH2 0x08a0
00000899: CALLDATASIZE
0000089a: PUSH1 0x04
0000089c: PUSH2 0x412c
0000089f: JUMP
000008a0: JUMPDEST
000008a1: PUSH2 0x1a6c
000008a4: JUMP
000008a5: JUMPDEST
000008a6: CALLVALUE
000008a7: DUP1
000008a8: ISZERO
000008a9: PUSH2 0x08b1
000008ac: JUMPI
000008ad: PUSH1 0x00
000008af: DUP1
000008b0: REVERT
000008b1: JUMPDEST
000008b2: POP
000008b3: PUSH2 0x0318
000008b6: PUSH2 0x08c0
000008b9: CALLDATASIZE
000008ba: PUSH1 0x04
000008bc: PUSH2 0x3ae5
000008bf: JUMP
000008c0: JUMPDEST
000008c1: PUSH2 0x1bfb
000008c4: JUMP
000008c5: JUMPDEST
000008c6: CALLVALUE
000008c7: DUP1
000008c8: ISZERO
000008c9: PUSH2 0x08d1
000008cc: JUMPI
000008cd: PUSH1 0x00
000008cf: DUP1
000008d0: REVERT
000008d1: JUMPDEST
000008d2: POP
000008d3: PUSH2 0x03b7
000008d6: PUSH2 0x1c17
000008d9: JUMP
000008da: JUMPDEST
000008db: CALLVALUE
000008dc: DUP1
000008dd: ISZERO
000008de: PUSH2 0x08e6
000008e1: JUMPI
000008e2: PUSH1 0x00
000008e4: DUP1
000008e5: REVERT
000008e6: JUMPDEST
000008e7: POP
000008e8: PUSH2 0x03b7
000008eb: PUSH2 0x08f5
000008ee: CALLDATASIZE
000008ef: PUSH1 0x04
000008f1: PUSH2 0x3acc
000008f4: JUMP
000008f5: JUMPDEST
000008f6: PUSH1 0x09
000008f8: PUSH1 0x20
000008fa: MSTORE
000008fb: PUSH1 0x00
000008fd: SWAP1
000008fe: DUP2
000008ff: MSTORE
00000900: PUSH1 0x40
00000902: SWAP1
00000903: KECCAK256
00000904: SLOAD
00000905: DUP2
00000906: JUMP
00000907: JUMPDEST
00000908: CALLVALUE
00000909: DUP1
0000090a: ISZERO
0000090b: PUSH2 0x0913
0000090e: JUMPI
0000090f: PUSH1 0x00
00000911: DUP1
00000912: REVERT
00000913: JUMPDEST
00000914: POP
00000915: PUSH2 0x0318
00000918: PUSH2 0x0922
0000091b: CALLDATASIZE
0000091c: PUSH1 0x04
0000091e: PUSH2 0x41ce
00000921: JUMP
00000922: JUMPDEST
00000923: PUSH2 0x1c29
00000926: JUMP
00000927: JUMPDEST
00000928: CALLVALUE
00000929: DUP1
0000092a: ISZERO
0000092b: PUSH2 0x0933
0000092e: JUMPI
0000092f: PUSH1 0x00
00000931: DUP1
00000932: REVERT
00000933: JUMPDEST
00000934: POP
00000935: PUSH2 0x03b7
00000938: PUSH1 0x03
0000093a: SLOAD
0000093b: DUP2
0000093c: JUMP
0000093d: JUMPDEST
0000093e: CALLVALUE
0000093f: DUP1
00000940: ISZERO
00000941: PUSH2 0x0949
00000944: JUMPI
00000945: PUSH1 0x00
00000947: DUP1
00000948: REVERT
00000949: JUMPDEST
0000094a: POP
0000094b: PUSH2 0x096a
0000094e: PUSH2 0x0958
00000951: CALLDATASIZE
00000952: PUSH1 0x04
00000954: PUSH2 0x42f6
00000957: JUMP
00000958: JUMPDEST
00000959: PUSH4 0xf23a6e61
0000095e: PUSH1 0xe0
00000960: SHL
00000961: SWAP7
00000962: SWAP6
00000963: POP
00000964: POP
00000965: POP
00000966: POP
00000967: POP
00000968: POP
00000969: JUMP
0000096a: JUMPDEST
0000096b: PUSH1 0x40
0000096d: MLOAD
0000096e: PUSH1 0x01
00000970: PUSH1 0x01
00000972: PUSH1 0xe0
00000974: SHL
00000975: SUB
00000976: NOT
00000977: SWAP1
00000978: SWAP2
00000979: AND
0000097a: DUP2
0000097b: MSTORE
0000097c: PUSH1 0x20
0000097e: ADD
0000097f: PUSH2 0x02fa
00000982: JUMP
00000983: JUMPDEST
00000984: CALLVALUE
00000985: DUP1
00000986: ISZERO
00000987: PUSH2 0x098f
0000098a: JUMPI
0000098b: PUSH1 0x00
0000098d: DUP1
0000098e: REVERT
0000098f: JUMPDEST
00000990: POP
00000991: PUSH2 0x03b7
00000994: PUSH2 0x05dc
00000997: DUP2
00000998: JUMP
00000999: JUMPDEST
0000099a: PUSH1 0x00
0000099c: PUSH1 0x01
0000099e: PUSH1 0x01
000009a0: PUSH1 0xe0
000009a2: SHL
000009a3: SUB
000009a4: NOT
000009a5: DUP3
000009a6: AND
000009a7: PUSH4 0x7965db0b
000009ac: PUSH1 0xe0
000009ae: SHL
000009af: EQ
000009b0: DUP1
000009b1: PUSH2 0x09ca
000009b4: JUMPI
000009b5: POP
000009b6: PUSH4 0x01ffc9a7
000009bb: PUSH1 0xe0
000009bd: SHL
000009be: PUSH1 0x01
000009c0: PUSH1 0x01
000009c2: PUSH1 0xe0
000009c4: SHL
000009c5: SUB
000009c6: NOT
000009c7: DUP4
000009c8: AND
000009c9: EQ
000009ca: JUMPDEST
000009cb: SWAP3
000009cc: SWAP2
000009cd: POP
000009ce: POP
000009cf: JUMP
000009d0: JUMPDEST
000009d1: PUSH1 0x00
000009d3: PUSH2 0x09db
000009d6: DUP2
000009d7: PUSH2 0x1f3a
000009da: JUMP
000009db: JUMPDEST
000009dc: PUSH2 0x09e3
000009df: PUSH2 0x1f44
000009e2: JUMP
000009e3: JUMPDEST
000009e4: POP
000009e5: JUMP
000009e6: JUMPDEST
000009e7: PUSH1 0x00
000009e9: PUSH2 0x09f1
000009ec: DUP2
000009ed: PUSH2 0x1f3a
000009f0: JUMP
000009f1: JUMPDEST
000009f2: PUSH1 0x01
000009f4: PUSH1 0x01
000009f6: PUSH1 0xa0
000009f8: SHL
000009f9: SUB
000009fa: DUP3
000009fb: AND
000009fc: PUSH2 0x0a18
000009ff: JUMPI
00000a00: PUSH1 0x40
00000a02: MLOAD
00000a03: PUSH4 0x9fabe1c1
00000a08: PUSH1 0xe0
00000a0a: SHL
00000a0b: DUP2
00000a0c: MSTORE
00000a0d: PUSH1 0x04
00000a0f: ADD
00000a10: PUSH1 0x40
00000a12: MLOAD
00000a13: DUP1
00000a14: SWAP2
00000a15: SUB
00000a16: SWAP1
00000a17: REVERT
00000a18: JUMPDEST
00000a19: PUSH1 0x06
00000a1b: DUP1
00000a1c: SLOAD
00000a1d: PUSH1 0x01
00000a1f: PUSH1 0x01
00000a21: PUSH1 0xa0
00000a23: SHL
00000a24: SUB
00000a25: NOT
00000a26: AND
00000a27: PUSH1 0x01
00000a29: PUSH1 0x01
00000a2b: PUSH1 0xa0
00000a2d: SHL
00000a2e: SUB
00000a2f: DUP5
00000a30: AND
00000a31: SWAP1
00000a32: DUP2
00000a33: OR
00000a34: SWAP1
00000a35: SWAP2
00000a36: SSTORE
00000a37: PUSH1 0x40
00000a39: MLOAD
00000a3a: PUSH32 0xae1f5aa15f6ff844896347ceca2a3c24c8d3a27785efdeacd581a0a95172784a
00000a5b: SWAP1
00000a5c: PUSH1 0x00
00000a5e: SWAP1
00000a5f: LOG2
00000a60: POP
00000a61: POP
00000a62: JUMP
00000a63: JUMPDEST
00000a64: PUSH1 0x60
00000a66: PUSH1 0x00
00000a68: DUP3
00000a69: MLOAD
00000a6a: PUSH1 0x01
00000a6c: PUSH1 0x01
00000a6e: PUSH1 0x40
00000a70: SHL
00000a71: SUB
00000a72: DUP2
00000a73: GT
00000a74: ISZERO
00000a75: PUSH2 0x0a80
00000a78: JUMPI
00000a79: PUSH2 0x0a80
00000a7c: PUSH2 0x3972
00000a7f: JUMP
00000a80: JUMPDEST
00000a81: PUSH1 0x40
00000a83: MLOAD
00000a84: SWAP1
00000a85: DUP1
00000a86: DUP3
00000a87: MSTORE
00000a88: DUP1
00000a89: PUSH1 0x20
00000a8b: MUL
00000a8c: PUSH1 0x20
00000a8e: ADD
00000a8f: DUP3
00000a90: ADD
00000a91: PUSH1 0x40
00000a93: MSTORE
00000a94: DUP1
00000a95: ISZERO
00000a96: PUSH2 0x0ac5
00000a99: JUMPI
00000a9a: DUP2
00000a9b: PUSH1 0x20
00000a9d: ADD
00000a9e: JUMPDEST
00000a9f: PUSH1 0x40
00000aa1: DUP1
00000aa2: MLOAD
00000aa3: DUP1
00000aa4: DUP3
00000aa5: ADD
00000aa6: SWAP1
00000aa7: SWAP2
00000aa8: MSTORE
00000aa9: PUSH1 0x00
00000aab: DUP1
00000aac: DUP3
00000aad: MSTORE
00000aae: PUSH1 0x20
00000ab0: DUP3
00000ab1: ADD
00000ab2: MSTORE
00000ab3: DUP2
00000ab4: MSTORE
00000ab5: PUSH1 0x20
00000ab7: ADD
00000ab8: SWAP1
00000ab9: PUSH1 0x01
00000abb: SWAP1
00000abc: SUB
00000abd: SWAP1
00000abe: DUP2
00000abf: PUSH2 0x0a9e
00000ac2: JUMPI
00000ac3: SWAP1
00000ac4: POP
00000ac5: JUMPDEST
00000ac6: POP
00000ac7: SWAP1
00000ac8: POP
00000ac9: PUSH1 0x00
00000acb: JUMPDEST
00000acc: DUP4
00000acd: MLOAD
00000ace: DUP2
00000acf: LT
00000ad0: ISZERO
00000ad1: PUSH2 0x0b5d
00000ad4: JUMPI
00000ad5: PUSH1 0x0d
00000ad7: PUSH1 0x00
00000ad9: ADD
00000ada: DUP5
00000adb: DUP3
00000adc: DUP2
00000add: MLOAD
00000ade: DUP2
00000adf: LT
00000ae0: PUSH2 0x0aeb
00000ae3: JUMPI
00000ae4: PUSH2 0x0aeb
00000ae7: PUSH2 0x4371
00000aea: JUMP
00000aeb: JUMPDEST
00000aec: PUSH1 0x20
00000aee: MUL
00000aef: PUSH1 0x20
00000af1: ADD
00000af2: ADD
00000af3: MLOAD
00000af4: DUP2
00000af5: SLOAD
00000af6: DUP2
00000af7: LT
00000af8: PUSH2 0x0b03
00000afb: JUMPI
00000afc: PUSH2 0x0b03
00000aff: PUSH2 0x4371
00000b02: JUMP
00000b03: JUMPDEST
00000b04: PUSH1 0x00
00000b06: SWAP2
00000b07: DUP3
00000b08: MSTORE
00000b09: PUSH1 0x20
00000b0b: SWAP2
00000b0c: DUP3
00000b0d: SWAP1
00000b0e: KECCAK256
00000b0f: PUSH1 0x40
00000b11: DUP1
00000b12: MLOAD
00000b13: DUP1
00000b14: DUP3
00000b15: ADD
00000b16: SWAP1
00000b17: SWAP2
00000b18: MSTORE
00000b19: PUSH1 0x02
00000b1b: SWAP1
00000b1c: SWAP3
00000b1d: MUL
00000b1e: ADD
00000b1f: DUP1
00000b20: SLOAD
00000b21: DUP3
00000b22: MSTORE
00000b23: PUSH1 0x01
00000b25: ADD
00000b26: SLOAD
00000b27: PUSH1 0x01
00000b29: PUSH1 0x01
00000b2b: PUSH1 0xa0
00000b2d: SHL
00000b2e: SUB
00000b2f: AND
00000b30: SWAP2
00000b31: DUP2
00000b32: ADD
00000b33: SWAP2
00000b34: SWAP1
00000b35: SWAP2
00000b36: MSTORE
00000b37: DUP3
00000b38: MLOAD
00000b39: DUP4
00000b3a: SWAP1
00000b3b: DUP4
00000b3c: SWAP1
00000b3d: DUP2
00000b3e: LT
00000b3f: PUSH2 0x0b4a
00000b42: JUMPI
00000b43: PUSH2 0x0b4a
00000b46: PUSH2 0x4371
00000b49: JUMP
00000b4a: JUMPDEST
00000b4b: PUSH1 0x20
00000b4d: SWAP1
00000b4e: DUP2
00000b4f: MUL
00000b50: SWAP2
00000b51: SWAP1
00000b52: SWAP2
00000b53: ADD
00000b54: ADD
00000b55: MSTORE
00000b56: PUSH1 0x01
00000b58: ADD
00000b59: PUSH2 0x0acb
00000b5c: JUMP
00000b5d: JUMPDEST
00000b5e: POP
00000b5f: SWAP3
00000b60: SWAP2
00000b61: POP
00000b62: POP
00000b63: JUMP
00000b64: JUMPDEST
00000b65: PUSH1 0x00
00000b67: SWAP1
00000b68: DUP2
00000b69: MSTORE
00000b6a: PUSH1 0x00
00000b6c: DUP1
00000b6d: MLOAD
00000b6e: PUSH1 0x20
00000b70: PUSH2 0x46cd
00000b73: DUP4
00000b74: CODECOPY
00000b75: DUP2
00000b76: MLOAD
00000b77: SWAP2
00000b78: MSTORE
00000b79: PUSH1 0x20
00000b7b: MSTORE
00000b7c: PUSH1 0x40
00000b7e: SWAP1
00000b7f: KECCAK256
00000b80: PUSH1 0x01
00000b82: ADD
00000b83: SLOAD
00000b84: SWAP1
00000b85: JUMP
00000b86: JUMPDEST
00000b87: PUSH2 0x0b8f
00000b8a: DUP3
00000b8b: PUSH2 0x0b64
00000b8e: JUMP
00000b8f: JUMPDEST
00000b90: PUSH2 0x0b98
00000b93: DUP2
00000b94: PUSH2 0x1f3a
00000b97: JUMP
00000b98: JUMPDEST
00000b99: PUSH2 0x0ba2
00000b9c: DUP4
00000b9d: DUP4
00000b9e: PUSH2 0x1fa7
00000ba1: JUMP
00000ba2: JUMPDEST
00000ba3: POP
00000ba4: POP
00000ba5: POP
00000ba6: POP
00000ba7: JUMP
00000ba8: JUMPDEST
00000ba9: PUSH1 0x01
00000bab: PUSH1 0x01
00000bad: PUSH1 0xa0
00000baf: SHL
00000bb0: SUB
00000bb1: DUP2
00000bb2: AND
00000bb3: CALLER
00000bb4: EQ
00000bb5: PUSH2 0x0bd1
00000bb8: JUMPI
00000bb9: PUSH1 0x40
00000bbb: MLOAD
00000bbc: PUSH4 0x334bd919
00000bc1: PUSH1 0xe1
00000bc3: SHL
00000bc4: DUP2
00000bc5: MSTORE
00000bc6: PUSH1 0x04
00000bc8: ADD
00000bc9: PUSH1 0x40
00000bcb: MLOAD
00000bcc: DUP1
00000bcd: SWAP2
00000bce: SUB
00000bcf: SWAP1
00000bd0: REVERT
00000bd1: JUMPDEST
00000bd2: PUSH2 0x0bdb
00000bd5: DUP3
00000bd6: DUP3
00000bd7: PUSH2 0x204c
00000bda: JUMP
00000bdb: JUMPDEST
00000bdc: POP
00000bdd: POP
00000bde: POP
00000bdf: JUMP
00000be0: JUMPDEST
00000be1: PUSH1 0x00
00000be3: DUP1
00000be4: DUP1
00000be5: DUP6
00000be6: PUSH1 0x03
00000be8: DUP2
00000be9: GT
00000bea: ISZERO
00000beb: PUSH2 0x0bf6
00000bee: JUMPI
00000bef: PUSH2 0x0bf6
00000bf2: PUSH2 0x40cb
00000bf5: JUMP
00000bf6: JUMPDEST
00000bf7: SUB
00000bf8: PUSH2 0x0c07
00000bfb: JUMPI
00000bfc: POP
00000bfd: PUSH1 0x01
00000bff: SWAP1
00000c00: POP
00000c01: PUSH1 0x00
00000c03: PUSH2 0x0cf3
00000c06: JUMP
00000c07: JUMPDEST
00000c08: PUSH1 0x01
00000c0a: PUSH1 0x01
00000c0c: PUSH1 0xa0
00000c0e: SHL
00000c0f: SUB
00000c10: DUP5
00000c11: AND
00000c12: PUSH2 0x0c2e
00000c15: JUMPI
00000c16: PUSH1 0x40
00000c18: MLOAD
00000c19: PUSH4 0xdc2e5e8d
00000c1e: PUSH1 0xe0
00000c20: SHL
00000c21: DUP2
00000c22: MSTORE
00000c23: PUSH1 0x04
00000c25: ADD
00000c26: PUSH1 0x40
00000c28: MLOAD
00000c29: DUP1
00000c2a: SWAP2
00000c2b: SUB
00000c2c: SWAP1
00000c2d: REVERT
00000c2e: JUMPDEST
00000c2f: PUSH1 0x01
00000c31: DUP6
00000c32: PUSH1 0x03
00000c34: DUP2
00000c35: GT
00000c36: ISZERO
00000c37: PUSH2 0x0c42
00000c3a: JUMPI
00000c3b: PUSH2 0x0c42
00000c3e: PUSH2 0x40cb
00000c41: JUMP
00000c42: JUMPDEST
00000c43: SUB
00000c44: PUSH2 0x0c79
00000c47: JUMPI
00000c48: PUSH1 0x01
00000c4a: PUSH1 0x01
00000c4c: PUSH1 0xa0
00000c4e: SHL
00000c4f: SUB
00000c50: DUP5
00000c51: AND
00000c52: PUSH1 0x00
00000c54: SWAP1
00000c55: DUP2
00000c56: MSTORE
00000c57: PUSH1 0x01
00000c59: PUSH1 0x20
00000c5b: MSTORE
00000c5c: PUSH1 0x40
00000c5e: SWAP1
00000c5f: KECCAK256
00000c60: SLOAD
00000c61: PUSH4 0xffffffff
00000c66: AND
00000c67: DUP1
00000c68: ISZERO
00000c69: PUSH2 0x0c77
00000c6c: JUMPI
00000c6d: PUSH1 0x01
00000c6f: SWAP3
00000c70: POP
00000c71: SWAP1
00000c72: POP
00000c73: PUSH2 0x0cf3
00000c76: JUMP
00000c77: JUMPDEST
00000c78: POP
00000c79: JUMPDEST
00000c7a: PUSH1 0x02
00000c7c: DUP6
00000c7d: PUSH1 0x03
00000c7f: DUP2
00000c80: GT
00000c81: ISZERO
00000c82: PUSH2 0x0c8d
00000c85: JUMPI
00000c86: PUSH2 0x0c8d
00000c89: PUSH2 0x40cb
00000c8c: JUMP
00000c8d: JUMPDEST
00000c8e: EQ
00000c8f: DUP1
00000c90: PUSH2 0x0caa
00000c93: JUMPI
00000c94: POP
00000c95: PUSH1 0x03
00000c97: DUP6
00000c98: PUSH1 0x03
00000c9a: DUP2
00000c9b: GT
00000c9c: ISZERO
00000c9d: PUSH2 0x0ca8
00000ca0: JUMPI
00000ca1: PUSH2 0x0ca8
00000ca4: PUSH2 0x40cb
00000ca7: JUMP
00000ca8: JUMPDEST
00000ca9: EQ
00000caa: JUMPDEST
00000cab: ISZERO
00000cac: PUSH2 0x0cec
00000caf: JUMPI
00000cb0: PUSH1 0x01
00000cb2: PUSH1 0x01
00000cb4: PUSH1 0xa0
00000cb6: SHL
00000cb7: SUB
00000cb8: DUP5
00000cb9: AND
00000cba: PUSH1 0x00
00000cbc: SWAP1
00000cbd: DUP2
00000cbe: MSTORE
00000cbf: PUSH1 0x02
00000cc1: PUSH1 0x20
00000cc3: SWAP1
00000cc4: DUP2
00000cc5: MSTORE
00000cc6: PUSH1 0x40
00000cc8: DUP1
00000cc9: DUP4
00000cca: KECCAK256
00000ccb: DUP7
00000ccc: DUP5
00000ccd: MSTORE
00000cce: SWAP1
00000ccf: SWAP2
00000cd0: MSTORE
00000cd1: SWAP1
00000cd2: KECCAK256
00000cd3: SLOAD
00000cd4: PUSH4 0xffffffff
00000cd9: AND
00000cda: DUP1
00000cdb: ISZERO
00000cdc: PUSH2 0x0cea
00000cdf: JUMPI
00000ce0: PUSH1 0x01
00000ce2: SWAP3
00000ce3: POP
00000ce4: SWAP1
00000ce5: POP
00000ce6: PUSH2 0x0cf3
00000ce9: JUMP
00000cea: JUMPDEST
00000ceb: POP
00000cec: JUMPDEST
00000ced: POP
00000cee: PUSH1 0x00
00000cf0: SWAP1
00000cf1: POP
00000cf2: DUP1
00000cf3: JUMPDEST
00000cf4: SWAP4
00000cf5: POP
00000cf6: SWAP4
00000cf7: SWAP2
00000cf8: POP
00000cf9: POP
00000cfa: JUMP
00000cfb: JUMPDEST
00000cfc: PUSH1 0x00
00000cfe: PUSH2 0x0d06
00000d01: DUP2
00000d02: PUSH2 0x1f3a
00000d05: JUMP
00000d06: JUMPDEST
00000d07: PUSH2 0x05dc
00000d0a: DUP3
00000d0b: GT
00000d0c: ISZERO
00000d0d: PUSH2 0x0d29
00000d10: JUMPI
00000d11: PUSH1 0x40
00000d13: MLOAD
00000d14: PUSH4 0x886349bb
00000d19: PUSH1 0xe0
00000d1b: SHL
00000d1c: DUP2
00000d1d: MSTORE
00000d1e: PUSH1 0x04
00000d20: ADD
00000d21: PUSH1 0x40
00000d23: MLOAD
00000d24: DUP1
00000d25: SWAP2
00000d26: SUB
00000d27: SWAP1
00000d28: REVERT
00000d29: JUMPDEST
00000d2a: PUSH4 0xffffffff
00000d2f: DUP4
00000d30: AND
00000d31: PUSH1 0x00
00000d33: DUP2
00000d34: DUP2
00000d35: MSTORE
00000d36: PUSH1 0x0a
00000d38: PUSH1 0x20
00000d3a: MSTORE
00000d3b: PUSH1 0x40
00000d3d: SWAP1
00000d3e: DUP2
00000d3f: SWAP1
00000d40: KECCAK256
00000d41: DUP5
00000d42: SWAP1
00000d43: SSTORE
00000d44: MLOAD
00000d45: PUSH32 0xf5a91001916153e67eaaa2ae82827a002838792ca48af87df63408cc09cb96f4
00000d66: SWAP1
00000d67: PUSH2 0x0d73
00000d6a: SWAP1
00000d6b: DUP6
00000d6c: DUP2
00000d6d: MSTORE
00000d6e: PUSH1 0x20
00000d70: ADD
00000d71: SWAP1
00000d72: JUMP
00000d73: JUMPDEST
00000d74: PUSH1 0x40
00000d76: MLOAD
00000d77: DUP1
00000d78: SWAP2
00000d79: SUB
00000d7a: SWAP1
00000d7b: LOG2
00000d7c: POP
00000d7d: POP
00000d7e: POP
00000d7f: JUMP
00000d80: JUMPDEST
00000d81: PUSH2 0x0d88
00000d84: PUSH2 0x20c8
00000d87: JUMP
00000d88: JUMPDEST
00000d89: CALLVALUE
00000d8a: PUSH1 0x00
00000d8c: SUB
00000d8d: PUSH2 0x0da9
00000d90: JUMPI
00000d91: PUSH1 0x40
00000d93: MLOAD
00000d94: PUSH4 0x94fe88d9
00000d99: PUSH1 0xe0
00000d9b: SHL
00000d9c: DUP2
00000d9d: MSTORE
00000d9e: PUSH1 0x04
00000da0: ADD
00000da1: PUSH1 0x40
00000da3: MLOAD
00000da4: DUP1
00000da5: SWAP2
00000da6: SUB
00000da7: SWAP1
00000da8: REVERT
00000da9: JUMPDEST
00000daa: PUSH1 0x00
00000dac: DUP1
00000dad: DUP7
00000dae: PUSH1 0x40
00000db0: MLOAD
00000db1: PUSH1 0x24
00000db3: ADD
00000db4: PUSH2 0x0dbf
00000db7: SWAP2
00000db8: DUP2
00000db9: MSTORE
00000dba: PUSH1 0x20
00000dbc: ADD
00000dbd: SWAP1
00000dbe: JUMP
00000dbf: JUMPDEST
00000dc0: PUSH1 0x40
00000dc2: DUP1
00000dc3: MLOAD
00000dc4: PUSH1 0x1f
00000dc6: NOT
00000dc7: DUP2
00000dc8: DUP5
00000dc9: SUB
00000dca: ADD
00000dcb: DUP2
00000dcc: MSTORE
00000dcd: SWAP2
00000dce: SWAP1
00000dcf: MSTORE
00000dd0: PUSH1 0x20
00000dd2: DUP2
00000dd3: ADD
00000dd4: DUP1
00000dd5: MLOAD
00000dd6: PUSH1 0x01
00000dd8: PUSH1 0x01
00000dda: PUSH1 0xe0
00000ddc: SHL
00000ddd: SUB
00000dde: AND
00000ddf: PUSH1 0x01
00000de1: PUSH3 0x155667
00000de5: PUSH1 0xe1
00000de7: SHL
00000de8: SUB
00000de9: NOT
00000dea: OR
00000deb: SWAP1
00000dec: MSTORE
00000ded: SWAP1
00000dee: POP
00000def: PUSH2 0x0e6c
00000df2: PUSH2 0x0df8
00000df5: CALLER
00000df6: SWAP1
00000df7: JUMP
00000df8: JUMPDEST
00000df9: DUP9
00000dfa: DUP5
00000dfb: CALLVALUE
00000dfc: DUP6
00000dfd: DUP12
00000dfe: DUP12
00000dff: DUP1
00000e00: DUP1
00000e01: PUSH1 0x1f
00000e03: ADD
00000e04: PUSH1 0x20
00000e06: DUP1
00000e07: SWAP2
00000e08: DIV
00000e09: MUL
00000e0a: PUSH1 0x20
00000e0c: ADD
00000e0d: PUSH1 0x40
00000e0f: MLOAD
00000e10: SWAP1
00000e11: DUP2
00000e12: ADD
00000e13: PUSH1 0x40
00000e15: MSTORE
00000e16: DUP1
00000e17: SWAP4
00000e18: SWAP3
00000e19: SWAP2
00000e1a: SWAP1
00000e1b: DUP2
00000e1c: DUP2
00000e1d: MSTORE
00000e1e: PUSH1 0x20
00000e20: ADD
00000e21: DUP4
00000e22: DUP4
00000e23: DUP1
00000e24: DUP3
00000e25: DUP5
00000e26: CALLDATACOPY
00000e27: PUSH1 0x00
00000e29: SWAP3
00000e2a: ADD
00000e2b: SWAP2
00000e2c: SWAP1
00000e2d: SWAP2
00000e2e: MSTORE
00000e2f: POP
00000e30: POP
00000e31: PUSH1 0x40
00000e33: DUP1
00000e34: MLOAD
00000e35: PUSH1 0x20
00000e37: PUSH1 0x1f
00000e39: DUP16
00000e3a: ADD
00000e3b: DUP2
00000e3c: SWAP1
00000e3d: DIV
00000e3e: DUP2
00000e3f: MUL
00000e40: DUP3
00000e41: ADD
00000e42: DUP2
00000e43: ADD
00000e44: SWAP1
00000e45: SWAP3
00000e46: MSTORE
00000e47: DUP14
00000e48: DUP2
00000e49: MSTORE
00000e4a: SWAP3
00000e4b: POP
00000e4c: DUP14
00000e4d: SWAP2
00000e4e: POP
00000e4f: DUP13
00000e50: SWAP1
00000e51: DUP2
00000e52: SWAP1
00000e53: DUP5
00000e54: ADD
00000e55: DUP4
00000e56: DUP3
00000e57: DUP1
00000e58: DUP3
00000e59: DUP5
00000e5a: CALLDATACOPY
00000e5b: PUSH1 0x00
00000e5d: SWAP3
00000e5e: ADD
00000e5f: SWAP2
00000e60: SWAP1
00000e61: SWAP2
00000e62: MSTORE
00000e63: POP
00000e64: PUSH2 0x20fb
00000e67: SWAP3
00000e68: POP
00000e69: POP
00000e6a: POP
00000e6b: JUMP
00000e6c: JUMPDEST
00000e6d: POP
00000e6e: POP
00000e6f: POP
00000e70: POP
00000e71: POP
00000e72: POP
00000e73: POP
00000e74: JUMP
00000e75: JUMPDEST
00000e76: PUSH2 0x0e7d
00000e79: PUSH2 0x22ac
00000e7c: JUMP
00000e7d: JUMPDEST
00000e7e: PUSH2 0x0e86
00000e81: DUP3
00000e82: PUSH2 0x2351
00000e85: JUMP
00000e86: JUMPDEST
00000e87: PUSH2 0x0e90
00000e8a: DUP3
00000e8b: DUP3
00000e8c: PUSH2 0x235c
00000e8f: JUMP
00000e90: JUMPDEST
00000e91: POP
00000e92: POP
00000e93: JUMP
00000e94: JUMPDEST
00000e95: PUSH1 0x00
00000e97: PUSH2 0x0e9e
00000e9a: PUSH2 0x2419
00000e9d: JUMP
00000e9e: JUMPDEST
00000e9f: POP
00000ea0: PUSH1 0x00
00000ea2: DUP1
00000ea3: MLOAD
00000ea4: PUSH1 0x20
00000ea6: PUSH2 0x46ad
00000ea9: DUP4
00000eaa: CODECOPY
00000eab: DUP2
00000eac: MLOAD
00000ead: SWAP2
00000eae: MSTORE
00000eaf: SWAP1
00000eb0: JUMP
00000eb1: JUMPDEST
00000eb2: PUSH2 0x0eb9
00000eb5: PUSH2 0x20c8
00000eb8: JUMP
00000eb9: JUMPDEST
00000eba: DUP5
00000ebb: PUSH1 0x00
00000ebd: SUB
00000ebe: PUSH2 0x0eda
00000ec1: JUMPI
00000ec2: PUSH1 0x40
00000ec4: MLOAD
00000ec5: PUSH4 0x94fe88d9
00000eca: PUSH1 0xe0
00000ecc: SHL
00000ecd: DUP2
00000ece: MSTORE
00000ecf: PUSH1 0x04
00000ed1: ADD
00000ed2: PUSH1 0x40
00000ed4: MLOAD
00000ed5: DUP1
00000ed6: SWAP2
00000ed7: SUB
00000ed8: SWAP1
00000ed9: REVERT
00000eda: JUMPDEST
00000edb: PUSH2 0x0eef
00000ede: PUSH1 0x01
00000ee0: PUSH1 0x01
00000ee2: PUSH1 0xa0
00000ee4: SHL
00000ee5: SUB
00000ee6: DUP9
00000ee7: AND
00000ee8: CALLER
00000ee9: ADDRESS
00000eea: DUP9
00000eeb: PUSH2 0x2462
00000eee: JUMP
00000eef: JUMPDEST
00000ef0: PUSH1 0x00
00000ef2: PUSH2 0x0efe
00000ef5: PUSH1 0x01
00000ef7: DUP10
00000ef8: PUSH1 0x00
00000efa: PUSH2 0x24c9
00000efd: JUMP
00000efe: JUMPDEST
00000eff: PUSH1 0x40
00000f01: MLOAD
00000f02: PUSH1 0x01
00000f04: PUSH1 0x01
00000f06: PUSH1 0xa0
00000f08: SHL
00000f09: SUB
00000f0a: DUP11
00000f0b: AND
00000f0c: PUSH1 0x24
00000f0e: DUP3
00000f0f: ADD
00000f10: MSTORE
00000f11: PUSH1 0x44
00000f13: DUP2
00000f14: ADD
00000f15: DUP10
00000f16: SWAP1
00000f17: MSTORE
00000f18: PUSH1 0x64
00000f1a: DUP2
00000f1b: ADD
00000f1c: DUP9
00000f1d: SWAP1
00000f1e: MSTORE
00000f1f: SWAP1
00000f20: SWAP2
00000f21: POP
00000f22: PUSH1 0x00
00000f24: SWAP1
00000f25: PUSH1 0x84
00000f27: ADD
00000f28: PUSH1 0x40
00000f2a: DUP1
00000f2b: MLOAD
00000f2c: PUSH1 0x1f
00000f2e: NOT
00000f2f: DUP2
00000f30: DUP5
00000f31: SUB
00000f32: ADD
00000f33: DUP2
00000f34: MSTORE
00000f35: SWAP2
00000f36: SWAP1
00000f37: MSTORE
00000f38: PUSH1 0x20
00000f3a: DUP2
00000f3b: ADD
00000f3c: DUP1
00000f3d: MLOAD
00000f3e: PUSH1 0x01
00000f40: PUSH1 0x01
00000f42: PUSH1 0xe0
00000f44: SHL
00000f45: SUB
00000f46: AND
00000f47: PUSH4 0x788c2ecf
00000f4c: PUSH1 0xe0
00000f4e: SHL
00000f4f: OR
00000f50: SWAP1
00000f51: MSTORE
00000f52: SWAP1
00000f53: POP
00000f54: PUSH2 0x0fd1
00000f57: PUSH2 0x0f5d
00000f5a: CALLER
00000f5b: SWAP1
00000f5c: JUMP
00000f5d: JUMPDEST
00000f5e: DUP10
00000f5f: DUP5
00000f60: DUP11
00000f61: DUP6
00000f62: DUP12
00000f63: DUP12
00000f64: DUP1
00000f65: DUP1
00000f66: PUSH1 0x1f
00000f68: ADD
00000f69: PUSH1 0x20
00000f6b: DUP1
00000f6c: SWAP2
00000f6d: DIV
00000f6e: MUL
00000f6f: PUSH1 0x20
00000f71: ADD
00000f72: PUSH1 0x40
00000f74: MLOAD
00000f75: SWAP1
00000f76: DUP2
00000f77: ADD
00000f78: PUSH1 0x40
00000f7a: MSTORE
00000f7b: DUP1
00000f7c: SWAP4
00000f7d: SWAP3
00000f7e: SWAP2
00000f7f: SWAP1
00000f80: DUP2
00000f81: DUP2
00000f82: MSTORE
00000f83: PUSH1 0x20
00000f85: ADD
00000f86: DUP4
00000f87: DUP4
00000f88: DUP1
00000f89: DUP3
00000f8a: DUP5
00000f8b: CALLDATACOPY
00000f8c: PUSH1 0x00
00000f8e: SWAP3
00000f8f: ADD
00000f90: SWAP2
00000f91: SWAP1
00000f92: SWAP2
00000f93: MSTORE
00000f94: POP
00000f95: POP
00000f96: PUSH1 0x40
00000f98: DUP1
00000f99: MLOAD
00000f9a: PUSH1 0x20
00000f9c: PUSH1 0x1f
00000f9e: DUP16
00000f9f: ADD
00000fa0: DUP2
00000fa1: SWAP1
00000fa2: DIV
00000fa3: DUP2
00000fa4: MUL
00000fa5: DUP3
00000fa6: ADD
00000fa7: DUP2
00000fa8: ADD
00000fa9: SWAP1
00000faa: SWAP3
00000fab: MSTORE
00000fac: DUP14
00000fad: DUP2
00000fae: MSTORE
00000faf: SWAP3
00000fb0: POP
00000fb1: DUP14
00000fb2: SWAP2
00000fb3: POP
00000fb4: DUP13
00000fb5: SWAP1
00000fb6: DUP2
00000fb7: SWAP1
00000fb8: DUP5
00000fb9: ADD
00000fba: DUP4
00000fbb: DUP3
00000fbc: DUP1
00000fbd: DUP3
00000fbe: DUP5
00000fbf: CALLDATACOPY
00000fc0: PUSH1 0x00
00000fc2: SWAP3
00000fc3: ADD
00000fc4: SWAP2
00000fc5: SWAP1
00000fc6: SWAP2
00000fc7: MSTORE
00000fc8: POP
00000fc9: PUSH2 0x20fb
00000fcc: SWAP3
00000fcd: POP
00000fce: POP
00000fcf: POP
00000fd0: JUMP
00000fd1: JUMPDEST
00000fd2: POP
00000fd3: POP
00000fd4: POP
00000fd5: POP
00000fd6: POP
00000fd7: POP
00000fd8: POP
00000fd9: POP
00000fda: POP
00000fdb: JUMP
00000fdc: JUMPDEST
00000fdd: PUSH1 0x00
00000fdf: PUSH2 0x0fe7
00000fe2: DUP2
00000fe3: PUSH2 0x1f3a
00000fe6: JUMP
00000fe7: JUMPDEST
00000fe8: PUSH1 0x00
00000fea: JUMPDEST
00000feb: DUP3
00000fec: DUP2
00000fed: LT
00000fee: ISZERO
00000fef: PUSH2 0x10d4
00000ff2: JUMPI
00000ff3: PUSH1 0x00
00000ff5: DUP5
00000ff6: DUP5
00000ff7: DUP4
00000ff8: DUP2
00000ff9: DUP2
00000ffa: LT
00000ffb: PUSH2 0x1006
00000ffe: JUMPI
00000fff: PUSH2 0x1006
00001002: PUSH2 0x4371
00001005: JUMP
00001006: JUMPDEST
00001007: SWAP1
00001008: POP
00001009: PUSH1 0x20
0000100b: MUL
0000100c: ADD
0000100d: PUSH1 0x20
0000100f: DUP2
00001010: ADD
00001011: SWAP1
00001012: PUSH2 0x101b
00001015: SWAP2
00001016: SWAP1
00001017: PUSH2 0x40b0
0000101a: JUMP
0000101b: JUMPDEST
0000101c: PUSH4 0xffffffff
00001021: DUP2
00001022: AND
00001023: PUSH1 0x00
00001025: SWAP1
00001026: DUP2
00001027: MSTORE
00001028: PUSH1 0x0b
0000102a: PUSH1 0x20
0000102c: MSTORE
0000102d: PUSH1 0x40
0000102f: DUP2
00001030: KECCAK256
00001031: SLOAD
00001032: SWAP2
00001033: SWAP3
00001034: POP
00001035: DUP2
00001036: SWAP1
00001037: SUB
00001038: PUSH2 0x1042
0000103b: JUMPI
0000103c: POP
0000103d: POP
0000103e: PUSH2 0x10cc
00001041: JUMP
00001042: JUMPDEST
00001043: PUSH4 0xffffffff
00001048: DUP3
00001049: AND
0000104a: PUSH1 0x00
0000104c: SWAP1
0000104d: DUP2
0000104e: MSTORE
0000104f: PUSH1 0x0b
00001051: PUSH1 0x20
00001053: MSTORE
00001054: PUSH1 0x40
00001056: DUP2
00001057: KECCAK256
00001058: DUP2
00001059: SWAP1
0000105a: SSTORE
0000105b: PUSH2 0x1063
0000105e: DUP4
0000105f: PUSH2 0x1869
00001062: JUMP
00001063: JUMPDEST
00001064: SWAP1
00001065: POP
00001066: PUSH2 0x107e
00001069: DUP2
0000106a: PUSH1 0x00
0000106c: ADD
0000106d: MLOAD
0000106e: DUP3
0000106f: PUSH1 0x20
00001071: ADD
00001072: MLOAD
00001073: DUP11
00001074: DUP6
00001075: DUP6
00001076: PUSH1 0x40
00001078: ADD
00001079: MLOAD
0000107a: PUSH2 0x2503
0000107d: JUMP
0000107e: JUMPDEST
0000107f: DUP3
00001080: PUSH4 0xffffffff
00001085: AND
00001086: DUP9
00001087: PUSH1 0x01
00001089: PUSH1 0x01
0000108b: PUSH1 0xa0
0000108d: SHL
0000108e: SUB
0000108f: AND
00001090: PUSH32 0x6c8628f02ab9884920c84f6f3507810561c8ed6c4b3bae0ce96eceab6def228b
000010b1: DUP5
000010b2: PUSH1 0x40
000010b4: MLOAD
000010b5: PUSH2 0x10c0
000010b8: SWAP2
000010b9: DUP2
000010ba: MSTORE
000010bb: PUSH1 0x20
000010bd: ADD
000010be: SWAP1
000010bf: JUMP
000010c0: JUMPDEST
000010c1: PUSH1 0x40
000010c3: MLOAD
000010c4: DUP1
000010c5: SWAP2
000010c6: SUB
000010c7: SWAP1
000010c8: LOG3
000010c9: POP
000010ca: POP
000010cb: POP
000010cc: JUMPDEST
000010cd: PUSH1 0x01
000010cf: ADD
000010d0: PUSH2 0x0fea
000010d3: JUMP
000010d4: JUMPDEST
000010d5: POP
000010d6: POP
000010d7: POP
000010d8: POP
000010d9: POP
000010da: JUMP
000010db: JUMPDEST
000010dc: PUSH1 0x00
000010de: PUSH2 0x10e6
000010e1: DUP2
000010e2: PUSH2 0x1f3a
000010e5: JUMP
000010e6: JUMPDEST
000010e7: PUSH2 0x09e3
000010ea: PUSH2 0x26ce
000010ed: JUMP
000010ee: JUMPDEST
000010ef: PUSH1 0x0e
000010f1: SLOAD
000010f2: PUSH1 0x00
000010f4: SWAP1
000010f5: PUSH2 0x1100
000010f8: SWAP1
000010f9: PUSH1 0x01
000010fb: SWAP1
000010fc: PUSH2 0x439d
000010ff: JUMP
00001100: JUMPDEST
00001101: SWAP1
00001102: POP
00001103: SWAP1
00001104: JUMP
00001105: JUMPDEST
00001106: PUSH32 0xab4f864e5201b0fde9b5ee3e4cf96384802b0ffdfcf7f9de4699ce21a30afc4f
00001127: PUSH2 0x112f
0000112a: DUP2
0000112b: PUSH2 0x1f3a
0000112e: JUMP
0000112f: JUMPDEST
00001130: PUSH1 0x00
00001132: PUSH2 0x113c
00001135: PUSH1 0x0d
00001137: DUP6
00001138: PUSH2 0x2714
0000113b: JUMP
0000113c: JUMPDEST
0000113d: SWAP1
0000113e: POP
0000113f: PUSH2 0x01c2
00001142: DUP2
00001143: MLOAD
00001144: GT
00001145: ISZERO
00001146: PUSH2 0x1162
00001149: JUMPI
0000114a: PUSH1 0x40
0000114c: MLOAD
0000114d: PUSH4 0x5a8a34e5
00001152: PUSH1 0xe0
00001154: SHL
00001155: DUP2
00001156: MSTORE
00001157: PUSH1 0x04
00001159: ADD
0000115a: PUSH1 0x40
0000115c: MLOAD
0000115d: DUP1
0000115e: SWAP2
0000115f: SUB
00001160: SWAP1
00001161: REVERT
00001162: JUMPDEST
00001163: PUSH1 0x00
00001165: PUSH4 0xf03efa37
0000116a: PUSH1 0xe0
0000116c: SHL
0000116d: DUP6
0000116e: DUP4
0000116f: PUSH1 0x40
00001171: MLOAD
00001172: PUSH1 0x24
00001174: ADD
00001175: PUSH2 0x117f
00001178: SWAP3
00001179: SWAP2
0000117a: SWAP1
0000117b: PUSH2 0x43b0
0000117e: JUMP
0000117f: JUMPDEST
00001180: PUSH1 0x40
00001182: DUP1
00001183: MLOAD
00001184: PUSH1 0x1f
00001186: NOT
00001187: DUP2
00001188: DUP5
00001189: SUB
0000118a: ADD
0000118b: DUP2
0000118c: MSTORE
0000118d: SWAP2
0000118e: SWAP1
0000118f: MSTORE
00001190: PUSH1 0x20
00001192: DUP2
00001193: ADD
00001194: DUP1
00001195: MLOAD
00001196: PUSH1 0x01
00001198: PUSH1 0x01
0000119a: PUSH1 0xe0
0000119c: SHL
0000119d: SUB
0000119e: AND
0000119f: PUSH1 0x01
000011a1: PUSH1 0x01
000011a3: PUSH1 0xe0
000011a5: SHL
000011a6: SUB
000011a7: NOT
000011a8: SWAP1
000011a9: SWAP4
000011aa: AND
000011ab: SWAP3
000011ac: SWAP1
000011ad: SWAP3
000011ae: OR
000011af: SWAP1
000011b0: SWAP2
000011b1: MSTORE
000011b2: PUSH1 0x04
000011b4: SLOAD
000011b5: PUSH1 0x06
000011b7: SLOAD
000011b8: SWAP2
000011b9: SWAP3
000011ba: POP
000011bb: PUSH1 0x01
000011bd: PUSH1 0x01
000011bf: PUSH1 0xa0
000011c1: SHL
000011c2: SUB
000011c3: SWAP1
000011c4: DUP2
000011c5: AND
000011c6: SWAP2
000011c7: PUSH4 0x5f7b1577
000011cc: SWAP2
000011cd: CALLVALUE
000011ce: SWAP2
000011cf: AND
000011d0: PUSH1 0x00
000011d2: DUP6
000011d3: DUP10
000011d4: PUSH2 0x11da
000011d7: CALLER
000011d8: SWAP1
000011d9: JUMP
000011da: JUMPDEST
000011db: PUSH1 0x40
000011dd: MLOAD
000011de: DUP8
000011df: PUSH4 0xffffffff
000011e4: AND
000011e5: PUSH1 0xe0
000011e7: SHL
000011e8: DUP2
000011e9: MSTORE
000011ea: PUSH1 0x04
000011ec: ADD
000011ed: PUSH2 0x11fa
000011f0: SWAP6
000011f1: SWAP5
000011f2: SWAP4
000011f3: SWAP3
000011f4: SWAP2
000011f5: SWAP1
000011f6: PUSH2 0x43ff
000011f9: JUMP
000011fa: JUMPDEST
000011fb: PUSH1 0x00
000011fd: PUSH1 0x40
000011ff: MLOAD
00001200: DUP1
00001201: DUP4
00001202: SUB
00001203: DUP2
00001204: DUP6
00001205: DUP9
00001206: DUP1
00001207: EXTCODESIZE
00001208: ISZERO
00001209: DUP1
0000120a: ISZERO
0000120b: PUSH2 0x1213
0000120e: JUMPI
0000120f: PUSH1 0x00
00001211: DUP1
00001212: REVERT
00001213: JUMPDEST
00001214: POP
00001215: GAS
00001216: CALL
00001217: ISZERO
00001218: DUP1
00001219: ISZERO
0000121a: PUSH2 0x1227
0000121d: JUMPI
0000121e: RETURNDATASIZE
0000121f: PUSH1 0x00
00001221: DUP1
00001222: RETURNDATACOPY
00001223: RETURNDATASIZE
00001224: PUSH1 0x00
00001226: REVERT
00001227: JUMPDEST
00001228: POP
00001229: POP
0000122a: POP
0000122b: POP
0000122c: POP
0000122d: DUP5
0000122e: PUSH32 0x71df2a50f3ab1563277a27043770eb570eeaa3fc42ef76c607cdc667a82d03a4
0000124f: DUP6
00001250: DUP4
00001251: PUSH1 0x40
00001253: MLOAD
00001254: PUSH2 0x125e
00001257: SWAP3
00001258: SWAP2
00001259: SWAP1
0000125a: PUSH2 0x4448
0000125d: JUMP
0000125e: JUMPDEST
0000125f: PUSH1 0x40
00001261: MLOAD
00001262: DUP1
00001263: SWAP2
00001264: SUB
00001265: SWAP1
00001266: LOG2
00001267: POP
00001268: POP
00001269: POP
0000126a: POP
0000126b: POP
0000126c: JUMP
0000126d: JUMPDEST
0000126e: PUSH1 0x00
00001270: PUSH2 0x1278
00001273: DUP2
00001274: PUSH2 0x1f3a
00001277: JUMP
00001278: JUMPDEST
00001279: PUSH1 0x07
0000127b: DUP1
0000127c: SLOAD
0000127d: PUSH1 0x01
0000127f: PUSH1 0x01
00001281: PUSH1 0xa0
00001283: SHL
00001284: SUB
00001285: NOT
00001286: SWAP1
00001287: DUP2
00001288: AND
00001289: PUSH1 0x01
0000128b: PUSH1 0x01
0000128d: PUSH1 0xa0
0000128f: SHL
00001290: SUB
00001291: DUP7
00001292: DUP2
00001293: AND
00001294: SWAP2
00001295: DUP3
00001296: OR
00001297: SWAP1
00001298: SWAP4
00001299: SSTORE
0000129a: PUSH1 0x08
0000129c: DUP1
0000129d: SLOAD
0000129e: SWAP1
0000129f: SWAP3
000012a0: AND
000012a1: SWAP3
000012a2: DUP6
000012a3: AND
000012a4: SWAP3
000012a5: DUP4
000012a6: OR
000012a7: SWAP1
000012a8: SWAP2
000012a9: SSTORE
000012aa: PUSH1 0x40
000012ac: MLOAD
000012ad: PUSH32 0xf670cdc1c52016a5cec857c88e8948913b39f86889230c0661b011fd2ed57df5
000012ce: SWAP1
000012cf: PUSH1 0x00
000012d1: SWAP1
000012d2: LOG3
000012d3: POP
000012d4: POP
000012d5: POP
000012d6: JUMP
000012d7: JUMPDEST
000012d8: PUSH1 0x00
000012da: SWAP2
000012db: DUP3
000012dc: MSTORE
000012dd: PUSH1 0x00
000012df: DUP1
000012e0: MLOAD
000012e1: PUSH1 0x20
000012e3: PUSH2 0x46cd
000012e6: DUP4
000012e7: CODECOPY
000012e8: DUP2
000012e9: MLOAD
000012ea: SWAP2
000012eb: MSTORE
000012ec: PUSH1 0x20
000012ee: SWAP1
000012ef: DUP2
000012f0: MSTORE
000012f1: PUSH1 0x40
000012f3: DUP1
000012f4: DUP5
000012f5: KECCAK256
000012f6: PUSH1 0x01
000012f8: PUSH1 0x01
000012fa: PUSH1 0xa0
000012fc: SHL
000012fd: SUB
000012fe: SWAP4
000012ff: SWAP1
00001300: SWAP4
00001301: AND
00001302: DUP5
00001303: MSTORE
00001304: SWAP2
00001305: SWAP1
00001306: MSTORE
00001307: SWAP1
00001308: KECCAK256
00001309: SLOAD
0000130a: PUSH1 0xff
0000130c: AND
0000130d: SWAP1
0000130e: JUMP
0000130f: JUMPDEST
00001310: PUSH1 0x00
00001312: JUMPDEST
00001313: DUP2
00001314: DUP2
00001315: LT
00001316: ISZERO
00001317: PUSH2 0x0bdb
0000131a: JUMPI
0000131b: PUSH1 0x00
0000131d: DUP4
0000131e: DUP4
0000131f: DUP4
00001320: DUP2
00001321: DUP2
00001322: LT
00001323: PUSH2 0x132e
00001326: JUMPI
00001327: PUSH2 0x132e
0000132a: PUSH2 0x4371
0000132d: JUMP
0000132e: JUMPDEST
0000132f: SWAP1
00001330: POP
00001331: PUSH1 0x80
00001333: MUL
00001334: ADD
00001335: DUP1
00001336: CALLDATASIZE
00001337: SUB
00001338: DUP2
00001339: ADD
0000133a: SWAP1
0000133b: PUSH2 0x1344
0000133e: SWAP2
0000133f: SWAP1
00001340: PUSH2 0x4461
00001343: JUMP
00001344: JUMPDEST
00001345: SWAP1
00001346: POP
00001347: PUSH1 0x00
00001349: PUSH2 0x1351
0000134c: DUP3
0000134d: PUSH2 0x28dc
00001350: JUMP
00001351: JUMPDEST
00001352: PUSH1 0x00
00001354: DUP2
00001355: DUP2
00001356: MSTORE
00001357: PUSH1 0x09
00001359: PUSH1 0x20
0000135b: MSTORE
0000135c: PUSH1 0x40
0000135e: DUP2
0000135f: KECCAK256
00001360: SLOAD
00001361: SWAP2
00001362: SWAP3
00001363: POP
00001364: SUB
00001365: PUSH2 0x1389
00001368: JUMPI
00001369: PUSH1 0x40
0000136b: MLOAD
0000136c: PUSH4 0x0181cdef
00001371: PUSH1 0xe6
00001373: SHL
00001374: DUP2
00001375: MSTORE
00001376: PUSH1 0x04
00001378: DUP2
00001379: ADD
0000137a: DUP3
0000137b: SWAP1
0000137c: MSTORE
0000137d: PUSH1 0x24
0000137f: ADD
00001380: JUMPDEST
00001381: PUSH1 0x40
00001383: MLOAD
00001384: DUP1
00001385: SWAP2
00001386: SUB
00001387: SWAP1
00001388: REVERT
00001389: JUMPDEST
0000138a: PUSH1 0x00
0000138c: PUSH2 0x139d
0000138f: DUP4
00001390: PUSH1 0x20
00001392: ADD
00001393: MLOAD
00001394: DUP5
00001395: PUSH1 0x40
00001397: ADD
00001398: MLOAD
00001399: PUSH2 0x2959
0000139c: JUMP
0000139d: JUMPDEST
0000139e: SWAP1
0000139f: POP
000013a0: PUSH1 0x00
000013a2: DUP2
000013a3: DUP5
000013a4: PUSH1 0x40
000013a6: ADD
000013a7: MLOAD
000013a8: PUSH2 0x13b1
000013ab: SWAP2
000013ac: SWAP1
000013ad: PUSH2 0x439d
000013b0: JUMP
000013b1: JUMPDEST
000013b2: SWAP1
000013b3: POP
000013b4: PUSH1 0x00
000013b6: PUSH2 0x13c2
000013b9: DUP6
000013ba: PUSH1 0x20
000013bc: ADD
000013bd: MLOAD
000013be: PUSH2 0x1869
000013c1: JUMP
000013c2: JUMPDEST
000013c3: SWAP1
000013c4: POP
000013c5: PUSH1 0x09
000013c7: PUSH1 0x00
000013c9: DUP6
000013ca: DUP2
000013cb: MSTORE
000013cc: PUSH1 0x20
000013ce: ADD
000013cf: SWAP1
000013d0: DUP2
000013d1: MSTORE
000013d2: PUSH1 0x20
000013d4: ADD
000013d5: PUSH1 0x00
000013d7: KECCAK256
000013d8: PUSH1 0x00
000013da: SWAP1
000013db: SSTORE
000013dc: PUSH2 0x13f8
000013df: DUP2
000013e0: PUSH1 0x00
000013e2: ADD
000013e3: MLOAD
000013e4: DUP3
000013e5: PUSH1 0x20
000013e7: ADD
000013e8: MLOAD
000013e9: DUP8
000013ea: PUSH1 0x00
000013ec: ADD
000013ed: MLOAD
000013ee: DUP6
000013ef: DUP6
000013f0: PUSH1 0x40
000013f2: ADD
000013f3: MLOAD
000013f4: PUSH2 0x2503
000013f7: JUMP
000013f8: JUMPDEST
000013f9: DUP5
000013fa: MLOAD
000013fb: PUSH1 0x40
000013fd: MLOAD
000013fe: DUP6
000013ff: SWAP2
00001400: PUSH1 0x01
00001402: PUSH1 0x01
00001404: PUSH1 0xa0
00001406: SHL
00001407: SUB
00001408: AND
00001409: SWAP1
0000140a: PUSH32 0x0575467d13f5ab9174f470cec96623374b05cf4b19a3c83a4bfca523e243ab04
0000142b: SWAP1
0000142c: PUSH1 0x00
0000142e: SWAP1
0000142f: LOG3
00001430: DUP3
00001431: ISZERO
00001432: PUSH2 0x14ab
00001435: JUMPI
00001436: PUSH1 0x20
00001438: DUP1
00001439: DUP7
0000143a: ADD
0000143b: MLOAD
0000143c: PUSH4 0xffffffff
00001441: AND
00001442: PUSH1 0x00
00001444: SWAP1
00001445: DUP2
00001446: MSTORE
00001447: PUSH1 0x0b
00001449: SWAP1
0000144a: SWAP2
0000144b: MSTORE
0000144c: PUSH1 0x40
0000144e: DUP2
0000144f: KECCAK256
00001450: DUP1
00001451: SLOAD
00001452: DUP6
00001453: SWAP3
00001454: SWAP1
00001455: PUSH2 0x145f
00001458: SWAP1
00001459: DUP5
0000145a: SWAP1
0000145b: PUSH2 0x44d5
0000145e: JUMP
0000145f: JUMPDEST
00001460: SWAP3
00001461: POP
00001462: POP
00001463: DUP2
00001464: SWAP1
00001465: SSTORE
00001466: POP
00001467: DUP5
00001468: PUSH1 0x20
0000146a: ADD
0000146b: MLOAD
0000146c: PUSH4 0xffffffff
00001471: AND
00001472: PUSH32 0x34658d4aa4a80fa713a0f3a04329f39177b5bea34e8dcba253600ee5ade6c654
00001493: DUP5
00001494: PUSH1 0x40
00001496: MLOAD
00001497: PUSH2 0x14a2
0000149a: SWAP2
0000149b: DUP2
0000149c: MSTORE
0000149d: PUSH1 0x20
0000149f: ADD
000014a0: SWAP1
000014a1: JUMP
000014a2: JUMPDEST
000014a3: PUSH1 0x40
000014a5: MLOAD
000014a6: DUP1
000014a7: SWAP2
000014a8: SUB
000014a9: SWAP1
000014aa: LOG2
000014ab: JUMPDEST
000014ac: POP
000014ad: POP
000014ae: PUSH1 0x01
000014b0: SWAP1
000014b1: SWAP4
000014b2: ADD
000014b3: SWAP3
000014b4: POP
000014b5: PUSH2 0x1312
000014b8: SWAP2
000014b9: POP
000014ba: POP
000014bb: JUMP
000014bc: JUMPDEST
000014bd: PUSH1 0x00
000014bf: PUSH1 0x0d
000014c1: PUSH1 0x00
000014c3: ADD
000014c4: DUP3
000014c5: DUP2
000014c6: SLOAD
000014c7: DUP2
000014c8: LT
000014c9: PUSH2 0x14d4
000014cc: JUMPI
000014cd: PUSH2 0x14d4
000014d0: PUSH2 0x4371
000014d3: JUMP
000014d4: JUMPDEST
000014d5: SWAP1
000014d6: PUSH1 0x00
000014d8: MSTORE
000014d9: PUSH1 0x20
000014db: PUSH1 0x00
000014dd: KECCAK256
000014de: SWAP1
000014df: PUSH1 0x02
000014e1: MUL
000014e2: ADD
000014e3: PUSH1 0x00
000014e5: ADD
000014e6: SLOAD
000014e7: SWAP1
000014e8: POP
000014e9: SWAP2
000014ea: SWAP1
000014eb: POP
000014ec: JUMP
000014ed: JUMPDEST
000014ee: DUP2
000014ef: PUSH2 0x14fd
000014f2: CALLDATASIZE
000014f3: DUP4
000014f4: SWAP1
000014f5: SUB
000014f6: DUP4
000014f7: ADD
000014f8: DUP4
000014f9: PUSH2 0x44e8
000014fc: JUMP
000014fd: JUMPDEST
000014fe: PUSH1 0x00
00001500: PUSH1 0x0d
00001502: PUSH1 0x00
00001504: ADD
00001505: DUP4
00001506: DUP2
00001507: SLOAD
00001508: DUP2
00001509: LT
0000150a: PUSH2 0x1515
0000150d: JUMPI
0000150e: PUSH2 0x1515
00001511: PUSH2 0x4371
00001514: JUMP
00001515: JUMPDEST
00001516: PUSH1 0x00
00001518: SWAP2
00001519: DUP3
0000151a: MSTORE
0000151b: PUSH1 0x20
0000151d: SWAP2
0000151e: DUP3
0000151f: SWAP1
00001520: KECCAK256
00001521: PUSH1 0x40
00001523: DUP1
00001524: MLOAD
00001525: DUP1
00001526: DUP3
00001527: ADD
00001528: SWAP1
00001529: SWAP2
0000152a: MSTORE
0000152b: PUSH1 0x02
0000152d: SWAP1
0000152e: SWAP3
0000152f: MUL
00001530: ADD
00001531: DUP1
00001532: SLOAD
00001533: DUP3
00001534: MSTORE
00001535: PUSH1 0x01
00001537: ADD
00001538: SLOAD
00001539: PUSH1 0x01
0000153b: PUSH1 0x01
0000153d: PUSH1 0xa0
0000153f: SHL
00001540: SUB
00001541: AND
00001542: SWAP2
00001543: DUP2
00001544: ADD
00001545: SWAP2
00001546: SWAP1
00001547: SWAP2
00001548: MSTORE
00001549: SWAP1
0000154a: POP
0000154b: PUSH2 0x1551
0000154e: CALLER
0000154f: SWAP1
00001550: JUMP
00001551: JUMPDEST
00001552: PUSH1 0x01
00001554: PUSH1 0x01
00001556: PUSH1 0xa0
00001558: SHL
00001559: SUB
0000155a: AND
0000155b: DUP2
0000155c: PUSH1 0x20
0000155e: ADD
0000155f: MLOAD
00001560: PUSH1 0x01
00001562: PUSH1 0x01
00001564: PUSH1 0xa0
00001566: SHL
00001567: SUB
00001568: AND
00001569: EQ
0000156a: PUSH2 0x1586
0000156d: JUMPI
0000156e: PUSH1 0x40
00001570: MLOAD
00001571: PUSH4 0x1165d41f
00001576: PUSH1 0xe3
00001578: SHL
00001579: DUP2
0000157a: MSTORE
0000157b: PUSH1 0x04
0000157d: ADD
0000157e: PUSH1 0x40
00001580: MLOAD
00001581: DUP1
00001582: SWAP2
00001583: SUB
00001584: SWAP1
00001585: REVERT
00001586: JUMPDEST
00001587: PUSH1 0x00
00001589: PUSH2 0x1591
0000158c: DUP4
0000158d: PUSH2 0x298e
00001590: JUMP
00001591: JUMPDEST
00001592: DUP3
00001593: MLOAD
00001594: SWAP1
00001595: SWAP2
00001596: POP
00001597: DUP2
00001598: EQ
00001599: PUSH2 0x15c2
0000159c: JUMPI
0000159d: DUP2
0000159e: MLOAD
0000159f: PUSH1 0x40
000015a1: MLOAD
000015a2: PUSH4 0x3df112db
000015a7: PUSH1 0xe1
000015a9: SHL
000015aa: DUP2
000015ab: MSTORE
000015ac: PUSH1 0x04
000015ae: DUP2
000015af: ADD
000015b0: SWAP2
000015b1: SWAP1
000015b2: SWAP2
000015b3: MSTORE
000015b4: PUSH1 0x24
000015b6: DUP2
000015b7: ADD
000015b8: DUP3
000015b9: SWAP1
000015ba: MSTORE
000015bb: PUSH1 0x44
000015bd: ADD
000015be: PUSH2 0x1380
000015c1: JUMP
000015c2: JUMPDEST
000015c3: PUSH2 0x15ca
000015c6: PUSH2 0x10ee
000015c9: JUMP
000015ca: JUMPDEST
000015cb: DUP5
000015cc: GT
000015cd: PUSH2 0x15e9
000015d0: JUMPI
000015d1: PUSH1 0x40
000015d3: MLOAD
000015d4: PUSH4 0xd0ebeb4b
000015d9: PUSH1 0xe0
000015db: SHL
000015dc: DUP2
000015dd: MSTORE
000015de: PUSH1 0x04
000015e0: ADD
000015e1: PUSH1 0x40
000015e3: MLOAD
000015e4: DUP1
000015e5: SWAP2
000015e6: SUB
000015e7: SWAP1
000015e8: REVERT
000015e9: JUMPDEST
000015ea: PUSH1 0x00
000015ec: PUSH2 0x15f6
000015ef: PUSH1 0x0d
000015f1: DUP9
000015f2: PUSH2 0x2a0c
000015f5: JUMP
000015f6: JUMPDEST
000015f7: SWAP1
000015f8: POP
000015f9: PUSH1 0x00
000015fb: PUSH2 0x160d
000015fe: PUSH2 0x0826
00001601: PUSH1 0x80
00001603: DUP10
00001604: ADD
00001605: PUSH1 0x60
00001607: DUP11
00001608: ADD
00001609: PUSH2 0x40b0
0000160c: JUMP
0000160d: JUMPDEST
0000160e: SWAP1
0000160f: POP
00001610: PUSH2 0x1630
00001613: DUP2
00001614: PUSH1 0x00
00001616: ADD
00001617: MLOAD
00001618: DUP3
00001619: PUSH1 0x20
0000161b: ADD
0000161c: MLOAD
0000161d: DUP5
0000161e: PUSH1 0x20
00001620: ADD
00001621: MLOAD
00001622: DUP11
00001623: PUSH1 0x40
00001625: ADD
00001626: CALLDATALOAD
00001627: DUP6
00001628: PUSH1 0x40
0000162a: ADD
0000162b: MLOAD
0000162c: PUSH2 0x2503
0000162f: JUMP
00001630: JUMPDEST
00001631: PUSH1 0x40
00001633: MLOAD
00001634: DUP9
00001635: SWAP1
00001636: PUSH32 0x0c1c0787650562778c282502dfd6dcea2fb79d23783920aa18aee36b4aa3dc48
00001657: SWAP1
00001658: PUSH1 0x00
0000165a: SWAP1
0000165b: LOG2
0000165c: POP
0000165d: POP
0000165e: POP
0000165f: POP
00001660: POP
00001661: POP
00001662: POP
00001663: POP
00001664: JUMP
00001665: JUMPDEST
00001666: PUSH1 0x00
00001668: DUP1
00001669: PUSH1 0x0d
0000166b: PUSH1 0x00
0000166d: ADD
0000166e: DUP9
0000166f: DUP2
00001670: SLOAD
00001671: DUP2
00001672: LT
00001673: PUSH2 0x167e
00001676: JUMPI
00001677: PUSH2 0x167e
0000167a: PUSH2 0x4371
0000167d: JUMP
0000167e: JUMPDEST
0000167f: PUSH1 0x00
00001681: SWAP2
00001682: DUP3
00001683: MSTORE
00001684: PUSH1 0x20
00001686: DUP1
00001687: DUP4
00001688: KECCAK256
00001689: PUSH1 0x40
0000168b: DUP1
0000168c: MLOAD
0000168d: DUP1
0000168e: DUP3
0000168f: ADD
00001690: DUP3
00001691: MSTORE
00001692: PUSH1 0x02
00001694: SWAP1
00001695: SWAP5
00001696: MUL
00001697: SWAP1
00001698: SWAP2
00001699: ADD
0000169a: DUP1
0000169b: SLOAD
0000169c: DUP5
0000169d: MSTORE
0000169e: PUSH1 0x01
000016a0: ADD
000016a1: SLOAD
000016a2: PUSH1 0x01
000016a4: PUSH1 0x01
000016a6: PUSH1 0xa0
000016a8: SHL
000016a9: SUB
000016aa: SWAP1
000016ab: DUP2
000016ac: AND
000016ad: DUP5
000016ae: DUP5
000016af: ADD
000016b0: MSTORE
000016b1: DUP2
000016b2: MLOAD
000016b3: PUSH1 0xa0
000016b5: DUP2
000016b6: ADD
000016b7: DUP4
000016b8: MSTORE
000016b9: SWAP1
000016ba: DUP9
000016bb: AND
000016bc: DUP2
000016bd: MSTORE
000016be: SWAP2
000016bf: DUP3
000016c0: ADD
000016c1: DUP12
000016c2: SWAP1
000016c3: MSTORE
000016c4: DUP2
000016c5: ADD
000016c6: DUP9
000016c7: SWAP1
000016c8: MSTORE
000016c9: PUSH4 0xffffffff
000016ce: DUP10
000016cf: AND
000016d0: PUSH1 0x60
000016d2: DUP3
000016d3: ADD
000016d4: MSTORE
000016d5: DUP7
000016d6: ISZERO
000016d7: ISZERO
000016d8: PUSH1 0x80
000016da: DUP3
000016db: ADD
000016dc: MSTORE
000016dd: SWAP1
000016de: SWAP3
000016df: POP
000016e0: PUSH2 0x16e8
000016e3: SWAP1
000016e4: PUSH2 0x298e
000016e7: JUMP
000016e8: JUMPDEST
000016e9: DUP3
000016ea: MLOAD
000016eb: SWAP1
000016ec: SWAP2
000016ed: POP
000016ee: DUP2
000016ef: EQ
000016f0: PUSH2 0x16fe
000016f3: JUMPI
000016f4: PUSH1 0x00
000016f6: SWAP3
000016f7: POP
000016f8: POP
000016f9: POP
000016fa: PUSH2 0x172d
000016fd: JUMP
000016fe: JUMPDEST
000016ff: DUP4
00001700: PUSH1 0x01
00001702: PUSH1 0x01
00001704: PUSH1 0xa0
00001706: SHL
00001707: SUB
00001708: AND
00001709: DUP3
0000170a: PUSH1 0x20
0000170c: ADD
0000170d: MLOAD
0000170e: PUSH1 0x01
00001710: PUSH1 0x01
00001712: PUSH1 0xa0
00001714: SHL
00001715: SUB
00001716: AND
00001717: EQ
00001718: PUSH2 0x1726
0000171b: JUMPI
0000171c: PUSH1 0x00
0000171e: SWAP3
0000171f: POP
00001720: POP
00001721: POP
00001722: PUSH2 0x172d
00001725: JUMP
00001726: JUMPDEST
00001727: PUSH1 0x01
00001729: SWAP3
0000172a: POP
0000172b: POP
0000172c: POP
0000172d: JUMPDEST
0000172e: SWAP7
0000172f: SWAP6
00001730: POP
00001731: POP
00001732: POP
00001733: POP
00001734: POP
00001735: POP
00001736: JUMP
00001737: JUMPDEST
00001738: PUSH1 0x04
0000173a: SLOAD
0000173b: PUSH1 0x01
0000173d: PUSH1 0x01
0000173f: PUSH1 0xa0
00001741: SHL
00001742: SUB
00001743: AND
00001744: CALLER
00001745: DUP2
00001746: EQ
00001747: PUSH2 0x1763
0000174a: JUMPI
0000174b: PUSH1 0x40
0000174d: MLOAD
0000174e: PUSH4 0xd8844f15
00001753: PUSH1 0xe0
00001755: SHL
00001756: DUP2
00001757: MSTORE
00001758: PUSH1 0x04
0000175a: ADD
0000175b: PUSH1 0x40
0000175d: MLOAD
0000175e: DUP1
0000175f: SWAP2
00001760: SUB
00001761: SWAP1
00001762: REVERT
00001763: JUMPDEST
00001764: PUSH2 0x17d7
00001767: PUSH1 0x00
00001769: DUP1
0000176a: MLOAD
0000176b: PUSH1 0x20
0000176d: PUSH2 0x470d
00001770: DUP4
00001771: CODECOPY
00001772: DUP2
00001773: MLOAD
00001774: SWAP2
00001775: MSTORE
00001776: DUP3
00001777: PUSH1 0x01
00001779: PUSH1 0x01
0000177b: PUSH1 0xa0
0000177d: SHL
0000177e: SUB
0000177f: AND
00001780: PUSH4 0x6e296e45
00001785: PUSH1 0x40
00001787: MLOAD
00001788: DUP2
00001789: PUSH4 0xffffffff
0000178e: AND
0000178f: PUSH1 0xe0
00001791: SHL
00001792: DUP2
00001793: MSTORE
00001794: PUSH1 0x04
00001796: ADD
00001797: PUSH1 0x20
00001799: PUSH1 0x40
0000179b: MLOAD
0000179c: DUP1
0000179d: DUP4
0000179e: SUB
0000179f: DUP2
000017a0: DUP7
000017a1: GAS
000017a2: STATICCALL
000017a3: ISZERO
000017a4: DUP1
000017a5: ISZERO
000017a6: PUSH2 0x17b3
000017a9: JUMPI
000017aa: RETURNDATASIZE
000017ab: PUSH1 0x00
000017ad: DUP1
000017ae: RETURNDATACOPY
000017af: RETURNDATASIZE
000017b0: PUSH1 0x00
000017b2: REVERT
000017b3: JUMPDEST
000017b4: POP
000017b5: POP
000017b6: POP
000017b7: POP
000017b8: PUSH1 0x40
000017ba: MLOAD
000017bb: RETURNDATASIZE
000017bc: PUSH1 0x1f
000017be: NOT
000017bf: PUSH1 0x1f
000017c1: DUP3
000017c2: ADD
000017c3: AND
000017c4: DUP3
000017c5: ADD
000017c6: DUP1
000017c7: PUSH1 0x40
000017c9: MSTORE
000017ca: POP
000017cb: DUP2
000017cc: ADD
000017cd: SWAP1
000017ce: PUSH2 0x0659
000017d1: SWAP2
000017d2: SWAP1
000017d3: PUSH2 0x456d
000017d6: JUMP
000017d7: JUMPDEST
000017d8: PUSH2 0x17f4
000017db: JUMPI
000017dc: PUSH1 0x40
000017de: MLOAD
000017df: PUSH4 0x42610813
000017e4: PUSH1 0xe1
000017e6: SHL
000017e7: DUP2
000017e8: MSTORE
000017e9: PUSH1 0x04
000017eb: ADD
000017ec: PUSH1 0x40
000017ee: MLOAD
000017ef: DUP1
000017f0: SWAP2
000017f1: SUB
000017f2: SWAP1
000017f3: REVERT
000017f4: JUMPDEST
000017f5: PUSH2 0x17fe
000017f8: DUP6
000017f9: DUP6
000017fa: PUSH2 0x2aa8
000017fd: JUMP
000017fe: JUMPDEST
000017ff: PUSH2 0x10d4
00001802: DUP4
00001803: DUP4
00001804: PUSH2 0x2b81
00001807: JUMP
00001808: JUMPDEST
00001809: PUSH1 0x40
0000180b: DUP1
0000180c: MLOAD
0000180d: DUP1
0000180e: DUP3
0000180f: ADD
00001810: SWAP1
00001811: SWAP2
00001812: MSTORE
00001813: PUSH1 0x00
00001815: DUP1
00001816: DUP3
00001817: MSTORE
00001818: PUSH1 0x20
0000181a: DUP3
0000181b: ADD
0000181c: MSTORE
0000181d: PUSH1 0x0d
0000181f: DUP1
00001820: SLOAD
00001821: DUP4
00001822: SWAP1
00001823: DUP2
00001824: LT
00001825: PUSH2 0x1830
00001828: JUMPI
00001829: PUSH2 0x1830
0000182c: PUSH2 0x4371
0000182f: JUMP
00001830: JUMPDEST
00001831: PUSH1 0x00
00001833: SWAP2
00001834: DUP3
00001835: MSTORE
00001836: PUSH1 0x20
00001838: SWAP2
00001839: DUP3
0000183a: SWAP1
0000183b: KECCAK256
0000183c: PUSH1 0x40
0000183e: DUP1
0000183f: MLOAD
00001840: DUP1
00001841: DUP3
00001842: ADD
00001843: SWAP1
00001844: SWAP2
00001845: MSTORE
00001846: PUSH1 0x02
00001848: SWAP1
00001849: SWAP3
0000184a: MUL
0000184b: ADD
0000184c: DUP1
0000184d: SLOAD
0000184e: DUP3
0000184f: MSTORE
00001850: PUSH1 0x01
00001852: ADD
00001853: SLOAD
00001854: PUSH1 0x01
00001856: PUSH1 0x01
00001858: PUSH1 0xa0
0000185a: SHL
0000185b: SUB
0000185c: AND
0000185d: SWAP2
0000185e: DUP2
0000185f: ADD
00001860: SWAP2
00001861: SWAP1
00001862: SWAP2
00001863: MSTORE
00001864: SWAP3
00001865: SWAP2
00001866: POP
00001867: POP
00001868: JUMP
00001869: JUMPDEST
0000186a: PUSH1 0x40
0000186c: DUP1
0000186d: MLOAD
0000186e: PUSH1 0x60
00001870: DUP2
00001871: ADD
00001872: DUP3
00001873: MSTORE
00001874: PUSH1 0x00
00001876: DUP1
00001877: DUP3
00001878: MSTORE
00001879: PUSH1 0x20
0000187b: DUP3
0000187c: ADD
0000187d: DUP2
0000187e: SWAP1
0000187f: MSTORE
00001880: SWAP2
00001881: DUP2
00001882: ADD
00001883: SWAP2
00001884: SWAP1
00001885: SWAP2
00001886: MSTORE
00001887: PUSH1 0x00
00001889: DUP3
0000188a: PUSH4 0xffffffff
0000188f: AND
00001890: DUP2
00001891: SLOAD
00001892: DUP2
00001893: LT
00001894: PUSH2 0x189f
00001897: JUMPI
00001898: PUSH2 0x189f
0000189b: PUSH2 0x4371
0000189e: JUMP
0000189f: JUMPDEST
000018a0: PUSH1 0x00
000018a2: SWAP2
000018a3: DUP3
000018a4: MSTORE
000018a5: PUSH1 0x20
000018a7: SWAP1
000018a8: SWAP2
000018a9: KECCAK256
000018aa: PUSH1 0x40
000018ac: DUP1
000018ad: MLOAD
000018ae: PUSH1 0x60
000018b0: DUP2
000018b1: ADD
000018b2: SWAP1
000018b3: SWAP2
000018b4: MSTORE
000018b5: PUSH1 0x02
000018b7: SWAP1
000018b8: SWAP3
000018b9: MUL
000018ba: ADD
000018bb: DUP1
000018bc: SLOAD
000018bd: DUP3
000018be: SWAP1
000018bf: PUSH1 0xff
000018c1: AND
000018c2: PUSH1 0x03
000018c4: DUP2
000018c5: GT
000018c6: ISZERO
000018c7: PUSH2 0x18d2
000018ca: JUMPI
000018cb: PUSH2 0x18d2
000018ce: PUSH2 0x40cb
000018d1: JUMP
000018d2: JUMPDEST
000018d3: PUSH1 0x03
000018d5: DUP2
000018d6: GT
000018d7: ISZERO
000018d8: PUSH2 0x18e3
000018db: JUMPI
000018dc: PUSH2 0x18e3
000018df: PUSH2 0x40cb
000018e2: JUMP
000018e3: JUMPDEST
000018e4: DUP2
000018e5: MSTORE
000018e6: DUP2
000018e7: SLOAD
000018e8: PUSH2 0x0100
000018eb: SWAP1
000018ec: DIV
000018ed: PUSH1 0x01
000018ef: PUSH1 0x01
000018f1: PUSH1 0xa0
000018f3: SHL
000018f4: SUB
000018f5: AND
000018f6: PUSH1 0x20
000018f8: DUP3
000018f9: ADD
000018fa: MSTORE
000018fb: PUSH1 0x01
000018fd: SWAP1
000018fe: SWAP2
000018ff: ADD
00001900: SLOAD
00001901: PUSH1 0x40
00001903: SWAP1
00001904: SWAP2
00001905: ADD
00001906: MSTORE
00001907: SWAP3
00001908: SWAP2
00001909: POP
0000190a: POP
0000190b: JUMP
0000190c: JUMPDEST
0000190d: PUSH2 0x1914
00001910: PUSH2 0x20c8
00001913: JUMP
00001914: JUMPDEST
00001915: PUSH1 0x01
00001917: PUSH1 0x01
00001919: PUSH1 0xa0
0000191b: SHL
0000191c: SUB
0000191d: DUP8
0000191e: AND
0000191f: PUSH4 0x23b872dd
00001924: CALLER
00001925: PUSH1 0x40
00001927: MLOAD
00001928: PUSH1 0x01
0000192a: PUSH1 0x01
0000192c: PUSH1 0xe0
0000192e: SHL
0000192f: SUB
00001930: NOT
00001931: PUSH1 0xe0
00001933: DUP5
00001934: SWAP1
00001935: SHL
00001936: AND
00001937: DUP2
00001938: MSTORE
00001939: PUSH1 0x01
0000193b: PUSH1 0x01
0000193d: PUSH1 0xa0
0000193f: SHL
00001940: SUB
00001941: SWAP1
00001942: SWAP2
00001943: AND
00001944: PUSH1 0x04
00001946: DUP3
00001947: ADD
00001948: MSTORE
00001949: ADDRESS
0000194a: PUSH1 0x24
0000194c: DUP3
0000194d: ADD
0000194e: MSTORE
0000194f: PUSH1 0x44
00001951: DUP2
00001952: ADD
00001953: DUP9
00001954: SWAP1
00001955: MSTORE
00001956: PUSH1 0x64
00001958: ADD
00001959: PUSH1 0x00
0000195b: PUSH1 0x40
0000195d: MLOAD
0000195e: DUP1
0000195f: DUP4
00001960: SUB
00001961: DUP2
00001962: PUSH1 0x00
00001964: DUP8
00001965: DUP1
00001966: EXTCODESIZE
00001967: ISZERO
00001968: DUP1
00001969: ISZERO
0000196a: PUSH2 0x1972
0000196d: JUMPI
0000196e: PUSH1 0x00
00001970: DUP1
00001971: REVERT
00001972: JUMPDEST
00001973: POP
00001974: GAS
00001975: CALL
00001976: ISZERO
00001977: DUP1
00001978: ISZERO
00001979: PUSH2 0x1986
0000197c: JUMPI
0000197d: RETURNDATASIZE
0000197e: PUSH1 0x00
00001980: DUP1
00001981: RETURNDATACOPY
00001982: RETURNDATASIZE
00001983: PUSH1 0x00
00001985: REVERT
00001986: JUMPDEST
00001987: POP
00001988: POP
00001989: POP
0000198a: POP
0000198b: PUSH1 0x00
0000198d: PUSH2 0x1998
00001990: PUSH1 0x02
00001992: DUP10
00001993: DUP9
00001994: PUSH2 0x24c9
00001997: JUMP
00001998: JUMPDEST
00001999: PUSH1 0x40
0000199b: MLOAD
0000199c: PUSH1 0x01
0000199e: PUSH1 0x01
000019a0: PUSH1 0xa0
000019a2: SHL
000019a3: SUB
000019a4: DUP11
000019a5: AND
000019a6: PUSH1 0x24
000019a8: DUP3
000019a9: ADD
000019aa: MSTORE
000019ab: PUSH1 0x44
000019ad: DUP2
000019ae: ADD
000019af: DUP10
000019b0: SWAP1
000019b1: MSTORE
000019b2: PUSH1 0x64
000019b4: DUP2
000019b5: ADD
000019b6: DUP9
000019b7: SWAP1
000019b8: MSTORE
000019b9: SWAP1
000019ba: SWAP2
000019bb: POP
000019bc: PUSH1 0x00
000019be: SWAP1
000019bf: PUSH1 0x84
000019c1: ADD
000019c2: PUSH1 0x40
000019c4: DUP1
000019c5: MLOAD
000019c6: PUSH1 0x1f
000019c8: NOT
000019c9: DUP2
000019ca: DUP5
000019cb: SUB
000019cc: ADD
000019cd: DUP2
000019ce: MSTORE
000019cf: SWAP2
000019d0: SWAP1
000019d1: MSTORE
000019d2: PUSH1 0x20
000019d4: DUP2
000019d5: ADD
000019d6: DUP1
000019d7: MLOAD
000019d8: PUSH1 0x01
000019da: PUSH1 0x01
000019dc: PUSH1 0xe0
000019de: SHL
000019df: SUB
000019e0: AND
000019e1: PUSH4 0x13e803eb
000019e6: PUSH1 0xe3
000019e8: SHL
000019e9: OR
000019ea: SWAP1
000019eb: MSTORE
000019ec: SWAP1
000019ed: POP
000019ee: PUSH2 0x0fd1
000019f1: PUSH2 0x19f7
000019f4: CALLER
000019f5: SWAP1
000019f6: JUMP
000019f7: JUMPDEST
000019f8: DUP10
000019f9: DUP5
000019fa: PUSH1 0x01
000019fc: DUP6
000019fd: DUP12
000019fe: DUP12
000019ff: DUP1
00001a00: DUP1
00001a01: PUSH1 0x1f
00001a03: ADD
00001a04: PUSH1 0x20
00001a06: DUP1
00001a07: SWAP2
00001a08: DIV
00001a09: MUL
00001a0a: PUSH1 0x20
00001a0c: ADD
00001a0d: PUSH1 0x40
00001a0f: MLOAD
00001a10: SWAP1
00001a11: DUP2
00001a12: ADD
00001a13: PUSH1 0x40
00001a15: MSTORE
00001a16: DUP1
00001a17: SWAP4
00001a18: SWAP3
00001a19: SWAP2
00001a1a: SWAP1
00001a1b: DUP2
00001a1c: DUP2
00001a1d: MSTORE
00001a1e: PUSH1 0x20
00001a20: ADD
00001a21: DUP4
00001a22: DUP4
00001a23: DUP1
00001a24: DUP3
00001a25: DUP5
00001a26: CALLDATACOPY
00001a27: PUSH1 0x00
00001a29: SWAP3
00001a2a: ADD
00001a2b: SWAP2
00001a2c: SWAP1
00001a2d: SWAP2
00001a2e: MSTORE
00001a2f: POP
00001a30: POP
00001a31: PUSH1 0x40
00001a33: DUP1
00001a34: MLOAD
00001a35: PUSH1 0x20
00001a37: PUSH1 0x1f
00001a39: DUP16
00001a3a: ADD
00001a3b: DUP2
00001a3c: SWAP1
00001a3d: DIV
00001a3e: DUP2
00001a3f: MUL
00001a40: DUP3
00001a41: ADD
00001a42: DUP2
00001a43: ADD
00001a44: SWAP1
00001a45: SWAP3
00001a46: MSTORE
00001a47: DUP14
00001a48: DUP2
00001a49: MSTORE
00001a4a: SWAP3
00001a4b: POP
00001a4c: DUP14
00001a4d: SWAP2
00001a4e: POP
00001a4f: DUP13
00001a50: SWAP1
00001a51: DUP2
00001a52: SWAP1
00001a53: DUP5
00001a54: ADD
00001a55: DUP4
00001a56: DUP3
00001a57: DUP1
00001a58: DUP3
00001a59: DUP5
00001a5a: CALLDATACOPY
00001a5b: PUSH1 0x00
00001a5d: SWAP3
00001a5e: ADD
00001a5f: SWAP2
00001a60: SWAP1
00001a61: SWAP2
00001a62: MSTORE
00001a63: POP
00001a64: PUSH2 0x20fb
00001a67: SWAP3
00001a68: POP
00001a69: POP
00001a6a: POP
00001a6b: JUMP
00001a6c: JUMPDEST
00001a6d: PUSH2 0x1a74
00001a70: PUSH2 0x20c8
00001a73: JUMP
00001a74: JUMPDEST
00001a75: DUP5
00001a76: PUSH1 0x00
00001a78: SUB
00001a79: PUSH2 0x1a95
00001a7c: JUMPI
00001a7d: PUSH1 0x40
00001a7f: MLOAD
00001a80: PUSH4 0x94fe88d9
00001a85: PUSH1 0xe0
00001a87: SHL
00001a88: DUP2
00001a89: MSTORE
00001a8a: PUSH1 0x04
00001a8c: ADD
00001a8d: PUSH1 0x40
00001a8f: MLOAD
00001a90: DUP1
00001a91: SWAP2
00001a92: SUB
00001a93: SWAP1
00001a94: REVERT
00001a95: JUMPDEST
00001a96: PUSH1 0x40
00001a98: DUP1
00001a99: MLOAD
00001a9a: PUSH1 0x20
00001a9c: DUP2
00001a9d: ADD
00001a9e: DUP3
00001a9f: MSTORE
00001aa0: PUSH1 0x00
00001aa2: DUP2
00001aa3: MSTORE
00001aa4: SWAP1
00001aa5: MLOAD
00001aa6: PUSH4 0x79212195
00001aab: PUSH1 0xe1
00001aad: SHL
00001aae: DUP2
00001aaf: MSTORE
00001ab0: PUSH1 0x01
00001ab2: PUSH1 0x01
00001ab4: PUSH1 0xa0
00001ab6: SHL
00001ab7: SUB
00001ab8: DUP11
00001ab9: AND
00001aba: SWAP2
00001abb: PUSH4 0xf242432a
00001ac0: SWAP2
00001ac1: PUSH2 0x1ad5
00001ac4: SWAP2
00001ac5: CALLER
00001ac6: SWAP2
00001ac7: ADDRESS
00001ac8: SWAP2
00001ac9: DUP13
00001aca: SWAP2
00001acb: DUP13
00001acc: SWAP2
00001acd: SWAP1
00001ace: PUSH1 0x04
00001ad0: ADD
00001ad1: PUSH2 0x458a
00001ad4: JUMP
00001ad5: JUMPDEST
00001ad6: PUSH1 0x00
00001ad8: PUSH1 0x40
00001ada: MLOAD
00001adb: DUP1
00001adc: DUP4
00001add: SUB
00001ade: DUP2
00001adf: PUSH1 0x00
00001ae1: DUP8
00001ae2: DUP1
00001ae3: EXTCODESIZE
00001ae4: ISZERO
00001ae5: DUP1
00001ae6: ISZERO
00001ae7: PUSH2 0x1aef
00001aea: JUMPI
00001aeb: PUSH1 0x00
00001aed: DUP1
00001aee: REVERT
00001aef: JUMPDEST
00001af0: POP
00001af1: GAS
00001af2: CALL
00001af3: ISZERO
00001af4: DUP1
00001af5: ISZERO
00001af6: PUSH2 0x1b03
00001af9: JUMPI
00001afa: RETURNDATASIZE
00001afb: PUSH1 0x00
00001afd: DUP1
00001afe: RETURNDATACOPY
00001aff: RETURNDATASIZE
00001b00: PUSH1 0x00
00001b02: REVERT
00001b03: JUMPDEST
00001b04: POP
00001b05: POP
00001b06: POP
00001b07: POP
00001b08: PUSH1 0x00
00001b0a: PUSH2 0x1b15
00001b0d: PUSH1 0x03
00001b0f: DUP11
00001b10: DUP10
00001b11: PUSH2 0x24c9
00001b14: JUMP
00001b15: JUMPDEST
00001b16: PUSH1 0x40
00001b18: MLOAD
00001b19: PUSH1 0x01
00001b1b: PUSH1 0x01
00001b1d: PUSH1 0xa0
00001b1f: SHL
00001b20: SUB
00001b21: DUP12
00001b22: AND
00001b23: PUSH1 0x24
00001b25: DUP3
00001b26: ADD
00001b27: MSTORE
00001b28: PUSH1 0x44
00001b2a: DUP2
00001b2b: ADD
00001b2c: DUP11
00001b2d: SWAP1
00001b2e: MSTORE
00001b2f: PUSH1 0x64
00001b31: DUP2
00001b32: ADD
00001b33: DUP10
00001b34: SWAP1
00001b35: MSTORE
00001b36: PUSH1 0x84
00001b38: DUP2
00001b39: ADD
00001b3a: DUP9
00001b3b: SWAP1
00001b3c: MSTORE
00001b3d: SWAP1
00001b3e: SWAP2
00001b3f: POP
00001b40: PUSH1 0x00
00001b42: SWAP1
00001b43: PUSH1 0xa4
00001b45: ADD
00001b46: PUSH1 0x40
00001b48: DUP1
00001b49: MLOAD
00001b4a: PUSH1 0x1f
00001b4c: NOT
00001b4d: DUP2
00001b4e: DUP5
00001b4f: SUB
00001b50: ADD
00001b51: DUP2
00001b52: MSTORE
00001b53: SWAP2
00001b54: SWAP1
00001b55: MSTORE
00001b56: PUSH1 0x20
00001b58: DUP2
00001b59: ADD
00001b5a: DUP1
00001b5b: MLOAD
00001b5c: PUSH1 0x01
00001b5e: PUSH1 0x01
00001b60: PUSH1 0xe0
00001b62: SHL
00001b63: SUB
00001b64: AND
00001b65: PUSH4 0x26fc02dd
00001b6a: PUSH1 0xe0
00001b6c: SHL
00001b6d: OR
00001b6e: SWAP1
00001b6f: MSTORE
00001b70: SWAP1
00001b71: POP
00001b72: PUSH2 0x1bef
00001b75: PUSH2 0x1b7b
00001b78: CALLER
00001b79: SWAP1
00001b7a: JUMP
00001b7b: JUMPDEST
00001b7c: DUP11
00001b7d: DUP5
00001b7e: DUP11
00001b7f: DUP6
00001b80: DUP12
00001b81: DUP12
00001b82: DUP1
00001b83: DUP1
00001b84: PUSH1 0x1f
00001b86: ADD
00001b87: PUSH1 0x20
00001b89: DUP1
00001b8a: SWAP2
00001b8b: DIV
00001b8c: MUL
00001b8d: PUSH1 0x20
00001b8f: ADD
00001b90: PUSH1 0x40
00001b92: MLOAD
00001b93: SWAP1
00001b94: DUP2
00001b95: ADD
00001b96: PUSH1 0x40
00001b98: MSTORE
00001b99: DUP1
00001b9a: SWAP4
00001b9b: SWAP3
00001b9c: SWAP2
00001b9d: SWAP1
00001b9e: DUP2
00001b9f: DUP2
00001ba0: MSTORE
00001ba1: PUSH1 0x20
00001ba3: ADD
00001ba4: DUP4
00001ba5: DUP4
00001ba6: DUP1
00001ba7: DUP3
00001ba8: DUP5
00001ba9: CALLDATACOPY
00001baa: PUSH1 0x00
00001bac: SWAP3
00001bad: ADD
00001bae: SWAP2
00001baf: SWAP1
00001bb0: SWAP2
00001bb1: MSTORE
00001bb2: POP
00001bb3: POP
00001bb4: PUSH1 0x40
00001bb6: DUP1
00001bb7: MLOAD
00001bb8: PUSH1 0x20
00001bba: PUSH1 0x1f
00001bbc: DUP16
00001bbd: ADD
00001bbe: DUP2
00001bbf: SWAP1
00001bc0: DIV
00001bc1: DUP2
00001bc2: MUL
00001bc3: DUP3
00001bc4: ADD
00001bc5: DUP2
00001bc6: ADD
00001bc7: SWAP1
00001bc8: SWAP3
00001bc9: MSTORE
00001bca: DUP14
00001bcb: DUP2
00001bcc: MSTORE
00001bcd: SWAP3
00001bce: POP
00001bcf: DUP14
00001bd0: SWAP2
00001bd1: POP
00001bd2: DUP13
00001bd3: SWAP1
00001bd4: DUP2
00001bd5: SWAP1
00001bd6: DUP5
00001bd7: ADD
00001bd8: DUP4
00001bd9: DUP3
00001bda: DUP1
00001bdb: DUP3
00001bdc: DUP5
00001bdd: CALLDATACOPY
00001bde: PUSH1 0x00
00001be0: SWAP3
00001be1: ADD
00001be2: SWAP2
00001be3: SWAP1
00001be4: SWAP2
00001be5: MSTORE
00001be6: POP
00001be7: PUSH2 0x20fb
00001bea: SWAP3
00001beb: POP
00001bec: POP
00001bed: POP
00001bee: JUMP
00001bef: JUMPDEST
00001bf0: POP
00001bf1: POP
00001bf2: POP
00001bf3: POP
00001bf4: POP
00001bf5: POP
00001bf6: POP
00001bf7: POP
00001bf8: POP
00001bf9: POP
00001bfa: JUMP
00001bfb: JUMPDEST
00001bfc: PUSH2 0x1c04
00001bff: DUP3
00001c00: PUSH2 0x0b64
00001c03: JUMP
00001c04: JUMPDEST
00001c05: PUSH2 0x1c0d
00001c08: DUP2
00001c09: PUSH2 0x1f3a
00001c0c: JUMP
00001c0d: JUMPDEST
00001c0e: PUSH2 0x0ba2
00001c11: DUP4
00001c12: DUP4
00001c13: PUSH2 0x204c
00001c16: JUMP
00001c17: JUMPDEST
00001c18: PUSH1 0x0d
00001c1a: SLOAD
00001c1b: PUSH1 0x00
00001c1d: SWAP1
00001c1e: PUSH2 0x1100
00001c21: SWAP1
00001c22: PUSH1 0x01
00001c24: SWAP1
00001c25: PUSH2 0x439d
00001c28: JUMP
00001c29: JUMPDEST
00001c2a: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00
00001c4b: DUP1
00001c4c: SLOAD
00001c4d: PUSH1 0x01
00001c4f: PUSH1 0x40
00001c51: SHL
00001c52: DUP2
00001c53: DIV
00001c54: PUSH1 0xff
00001c56: AND
00001c57: ISZERO
00001c58: SWAP1
00001c59: PUSH1 0x01
00001c5b: PUSH1 0x01
00001c5d: PUSH1 0x40
00001c5f: SHL
00001c60: SUB
00001c61: AND
00001c62: PUSH1 0x00
00001c64: DUP2
00001c65: ISZERO
00001c66: DUP1
00001c67: ISZERO
00001c68: PUSH2 0x1c6e
00001c6b: JUMPI
00001c6c: POP
00001c6d: DUP3
00001c6e: JUMPDEST
00001c6f: SWAP1
00001c70: POP
00001c71: PUSH1 0x00
00001c73: DUP3
00001c74: PUSH1 0x01
00001c76: PUSH1 0x01
00001c78: PUSH1 0x40
00001c7a: SHL
00001c7b: SUB
00001c7c: AND
00001c7d: PUSH1 0x01
00001c7f: EQ
00001c80: DUP1
00001c81: ISZERO
00001c82: PUSH2 0x1c8a
00001c85: JUMPI
00001c86: POP
00001c87: ADDRESS
00001c88: EXTCODESIZE
00001c89: ISZERO
00001c8a: JUMPDEST
00001c8b: SWAP1
00001c8c: POP
00001c8d: DUP2
00001c8e: ISZERO
00001c8f: DUP1
00001c90: ISZERO
00001c91: PUSH2 0x1c98
00001c94: JUMPI
00001c95: POP
00001c96: DUP1
00001c97: ISZERO
00001c98: JUMPDEST
00001c99: ISZERO
00001c9a: PUSH2 0x1cb6
00001c9d: JUMPI
00001c9e: PUSH1 0x40
00001ca0: MLOAD
00001ca1: PUSH4 0xf92ee8a9
00001ca6: PUSH1 0xe0
00001ca8: SHL
00001ca9: DUP2
00001caa: MSTORE
00001cab: PUSH1 0x04
00001cad: ADD
00001cae: PUSH1 0x40
00001cb0: MLOAD
00001cb1: DUP1
00001cb2: SWAP2
00001cb3: SUB
00001cb4: SWAP1
00001cb5: REVERT
00001cb6: JUMPDEST
00001cb7: DUP5
00001cb8: SLOAD
00001cb9: PUSH8 0xffffffffffffffff
00001cc2: NOT
00001cc3: AND
00001cc4: PUSH1 0x01
00001cc6: OR
00001cc7: DUP6
00001cc8: SSTORE
00001cc9: DUP4
00001cca: ISZERO
00001ccb: PUSH2 0x1ce0
00001cce: JUMPI
00001ccf: DUP5
00001cd0: SLOAD
00001cd1: PUSH1 0xff
00001cd3: PUSH1 0x40
00001cd5: SHL
00001cd6: NOT
00001cd7: AND
00001cd8: PUSH1 0x01
00001cda: PUSH1 0x40
00001cdc: SHL
00001cdd: OR
00001cde: DUP6
00001cdf: SSTORE
00001ce0: JUMPDEST
00001ce1: PUSH1 0x01
00001ce3: PUSH1 0x01
00001ce5: PUSH1 0xa0
00001ce7: SHL
00001ce8: SUB
00001ce9: DUP14
00001cea: AND
00001ceb: ISZERO
00001cec: DUP1
00001ced: PUSH2 0x1cfd
00001cf0: JUMPI
00001cf1: POP
00001cf2: PUSH1 0x01
00001cf4: PUSH1 0x01
00001cf6: PUSH1 0xa0
00001cf8: SHL
00001cf9: SUB
00001cfa: DUP13
00001cfb: AND
00001cfc: ISZERO
00001cfd: JUMPDEST
00001cfe: DUP1
00001cff: PUSH2 0x1d0f
00001d02: JUMPI
00001d03: POP
00001d04: PUSH1 0x01
00001d06: PUSH1 0x01
00001d08: PUSH1 0xa0
00001d0a: SHL
00001d0b: SUB
00001d0c: DUP12
00001d0d: AND
00001d0e: ISZERO
00001d0f: JUMPDEST
00001d10: DUP1
00001d11: PUSH2 0x1d21
00001d14: JUMPI
00001d15: POP
00001d16: PUSH1 0x01
00001d18: PUSH1 0x01
00001d1a: PUSH1 0xa0
00001d1c: SHL
00001d1d: SUB
00001d1e: DUP11
00001d1f: AND
00001d20: ISZERO
00001d21: JUMPDEST
00001d22: DUP1
00001d23: PUSH2 0x1d33
00001d26: JUMPI
00001d27: POP
00001d28: PUSH1 0x01
00001d2a: PUSH1 0x01
00001d2c: PUSH1 0xa0
00001d2e: SHL
00001d2f: SUB
00001d30: DUP10
00001d31: AND
00001d32: ISZERO
00001d33: JUMPDEST
00001d34: DUP1
00001d35: PUSH2 0x1d45
00001d38: JUMPI
00001d39: POP
00001d3a: PUSH1 0x01
00001d3c: PUSH1 0x01
00001d3e: PUSH1 0xa0
00001d40: SHL
00001d41: SUB
00001d42: DUP9
00001d43: AND
00001d44: ISZERO
00001d45: JUMPDEST
00001d46: DUP1
00001d47: PUSH2 0x1d57
00001d4a: JUMPI
00001d4b: POP
00001d4c: PUSH1 0x01
00001d4e: PUSH1 0x01
00001d50: PUSH1 0xa0
00001d52: SHL
00001d53: SUB
00001d54: DUP8
00001d55: AND
00001d56: ISZERO
00001d57: JUMPDEST
00001d58: ISZERO
00001d59: PUSH2 0x1d75
00001d5c: JUMPI
00001d5d: PUSH1 0x40
00001d5f: MLOAD
00001d60: PUSH4 0x9fabe1c1
00001d65: PUSH1 0xe0
00001d67: SHL
00001d68: DUP2
00001d69: MSTORE
00001d6a: PUSH1 0x04
00001d6c: ADD
00001d6d: PUSH1 0x40
00001d6f: MLOAD
00001d70: DUP1
00001d71: SWAP2
00001d72: SUB
00001d73: SWAP1
00001d74: REVERT
00001d75: JUMPDEST
00001d76: PUSH2 0x1d80
00001d79: PUSH1 0x00
00001d7b: DUP15
00001d7c: PUSH2 0x1fa7
00001d7f: JUMP
00001d80: JUMPDEST
00001d81: POP
00001d82: PUSH2 0x1dab
00001d85: PUSH32 0xab4f864e5201b0fde9b5ee3e4cf96384802b0ffdfcf7f9de4699ce21a30afc4f
00001da6: DUP10
00001da7: PUSH2 0x1fa7
00001daa: JUMP
00001dab: JUMPDEST
00001dac: POP
00001dad: PUSH2 0x1dc4
00001db0: PUSH1 0x00
00001db2: DUP1
00001db3: MLOAD
00001db4: PUSH1 0x20
00001db6: PUSH2 0x470d
00001db9: DUP4
00001dba: CODECOPY
00001dbb: DUP2
00001dbc: MLOAD
00001dbd: SWAP2
00001dbe: MSTORE
00001dbf: DUP12
00001dc0: PUSH2 0x1fa7
00001dc3: JUMP
00001dc4: JUMPDEST
00001dc5: POP
00001dc6: PUSH2 0x1ddd
00001dc9: PUSH1 0x00
00001dcb: DUP1
00001dcc: MLOAD
00001dcd: PUSH1 0x20
00001dcf: PUSH2 0x470d
00001dd2: DUP4
00001dd3: CODECOPY
00001dd4: DUP2
00001dd5: MLOAD
00001dd6: SWAP2
00001dd7: MSTORE
00001dd8: DUP11
00001dd9: PUSH2 0x1fa7
00001ddc: JUMP
00001ddd: JUMPDEST
00001dde: POP
00001ddf: PUSH2 0x1de6
00001de2: PUSH2 0x2c6d
00001de5: JUMP
00001de6: JUMPDEST
00001de7: PUSH2 0x1dee
00001dea: PUSH2 0x2c6d
00001ded: JUMP
00001dee: JUMPDEST
00001def: PUSH2 0x1df7
00001df2: DUP7
00001df3: PUSH2 0x2c75
00001df6: JUMP
00001df7: JUMPDEST
00001df8: PUSH2 0x1dff
00001dfb: PUSH2 0x2cc6
00001dfe: JUMP
00001dff: JUMPDEST
00001e00: PUSH1 0x40
00001e02: DUP1
00001e03: MLOAD
00001e04: DUP1
00001e05: DUP3
00001e06: ADD
00001e07: SWAP1
00001e08: SWAP2
00001e09: MSTORE
00001e0a: PUSH1 0x00
00001e0c: DUP1
00001e0d: DUP3
00001e0e: MSTORE
00001e0f: PUSH1 0x20
00001e11: DUP3
00001e12: ADD
00001e13: DUP2
00001e14: DUP2
00001e15: MSTORE
00001e16: PUSH1 0x0d
00001e18: DUP1
00001e19: SLOAD
00001e1a: PUSH1 0x01
00001e1c: DUP1
00001e1d: DUP3
00001e1e: ADD
00001e1f: DUP4
00001e20: SSTORE
00001e21: SWAP2
00001e22: SWAP1
00001e23: SWAP4
00001e24: MSTORE
00001e25: SWAP3
00001e26: MLOAD
00001e27: PUSH32 0xd7b6990105719101dabeb77144f2a3385c8033acd3af97e9423a695e81ad1eb5
00001e48: PUSH1 0x02
00001e4a: SWAP1
00001e4b: SWAP4
00001e4c: MUL
00001e4d: SWAP3
00001e4e: DUP4
00001e4f: ADD
00001e50: SSTORE
00001e51: MLOAD
00001e52: PUSH32 0xd7b6990105719101dabeb77144f2a3385c8033acd3af97e9423a695e81ad1eb6
00001e73: SWAP1
00001e74: SWAP2
00001e75: ADD
00001e76: DUP1
00001e77: SLOAD
00001e78: PUSH1 0x01
00001e7a: PUSH1 0x01
00001e7c: PUSH1 0xa0
00001e7e: SHL
00001e7f: SUB
00001e80: SWAP3
00001e81: DUP4
00001e82: AND
00001e83: PUSH1 0x01
00001e85: PUSH1 0x01
00001e87: PUSH1 0xa0
00001e89: SHL
00001e8a: SUB
00001e8b: NOT
00001e8c: SWAP2
00001e8d: DUP3
00001e8e: AND
00001e8f: OR
00001e90: SWAP1
00001e91: SWAP2
00001e92: SSTORE
00001e93: PUSH1 0x0e
00001e95: SWAP3
00001e96: SWAP1
00001e97: SWAP3
00001e98: SSTORE
00001e99: PUSH1 0x04
00001e9b: DUP1
00001e9c: SLOAD
00001e9d: DUP4
00001e9e: AND
00001e9f: DUP16
00001ea0: DUP4
00001ea1: AND
00001ea2: OR
00001ea3: SWAP1
00001ea4: SSTORE
00001ea5: PUSH1 0x05
00001ea7: DUP1
00001ea8: SLOAD
00001ea9: DUP4
00001eaa: AND
00001eab: DUP11
00001eac: DUP4
00001ead: AND
00001eae: OR
00001eaf: SWAP1
00001eb0: SSTORE
00001eb1: PUSH1 0x06
00001eb3: DUP1
00001eb4: SLOAD
00001eb5: SWAP1
00001eb6: SWAP3
00001eb7: AND
00001eb8: SWAP1
00001eb9: DUP14
00001eba: AND
00001ebb: OR
00001ebc: SWAP1
00001ebd: SSTORE
00001ebe: PUSH2 0x1eca
00001ec1: PUSH3 0x015180
00001ec5: TIMESTAMP
00001ec6: PUSH2 0x45cf
00001ec9: JUMP
00001eca: JUMPDEST
00001ecb: PUSH2 0x1ed5
00001ece: SWAP1
00001ecf: PUSH1 0x01
00001ed1: PUSH2 0x44d5
00001ed4: JUMP
00001ed5: JUMPDEST
00001ed6: PUSH2 0x1ee2
00001ed9: SWAP1
00001eda: PUSH3 0x015180
00001ede: PUSH2 0x45f1
00001ee1: JUMP
00001ee2: JUMPDEST
00001ee3: PUSH1 0x03
00001ee5: SSTORE
00001ee6: DUP4
00001ee7: ISZERO
00001ee8: PUSH2 0x1f2b
00001eeb: JUMPI
00001eec: DUP5
00001eed: SLOAD
00001eee: PUSH1 0xff
00001ef0: PUSH1 0x40
00001ef2: SHL
00001ef3: NOT
00001ef4: AND
00001ef5: DUP6
00001ef6: SSTORE
00001ef7: PUSH1 0x40
00001ef9: MLOAD
00001efa: PUSH1 0x01
00001efc: DUP2
00001efd: MSTORE
00001efe: PUSH32 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2
00001f1f: SWAP1
00001f20: PUSH1 0x20
00001f22: ADD
00001f23: PUSH1 0x40
00001f25: MLOAD
00001f26: DUP1
00001f27: SWAP2
00001f28: SUB
00001f29: SWAP1
00001f2a: LOG1
00001f2b: JUMPDEST
00001f2c: POP
00001f2d: POP
00001f2e: POP
00001f2f: POP
00001f30: POP
00001f31: POP
00001f32: POP
00001f33: POP
00001f34: POP
00001f35: POP
00001f36: POP
00001f37: POP
00001f38: POP
00001f39: JUMP
00001f3a: JUMPDEST
00001f3b: PUSH2 0x09e3
00001f3e: DUP2
00001f3f: CALLER
00001f40: PUSH2 0x2cd6
00001f43: JUMP
00001f44: JUMPDEST
00001f45: PUSH2 0x1f4c
00001f48: PUSH2 0x20c8
00001f4b: JUMP
00001f4c: JUMPDEST
00001f4d: PUSH1 0x00
00001f4f: DUP1
00001f50: MLOAD
00001f51: PUSH1 0x20
00001f53: PUSH2 0x46ed
00001f56: DUP4
00001f57: CODECOPY
00001f58: DUP2
00001f59: MLOAD
00001f5a: SWAP2
00001f5b: MSTORE
00001f5c: DUP1
00001f5d: SLOAD
00001f5e: PUSH1 0xff
00001f60: NOT
00001f61: AND
00001f62: PUSH1 0x01
00001f64: OR
00001f65: DUP2
00001f66: SSTORE
00001f67: PUSH32 0x62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258
00001f88: CALLER
00001f89: JUMPDEST
00001f8a: PUSH1 0x40
00001f8c: MLOAD
00001f8d: PUSH1 0x01
00001f8f: PUSH1 0x01
00001f91: PUSH1 0xa0
00001f93: SHL
00001f94: SUB
00001f95: SWAP1
00001f96: SWAP2
00001f97: AND
00001f98: DUP2
00001f99: MSTORE
00001f9a: PUSH1 0x20
00001f9c: ADD
00001f9d: PUSH1 0x40
00001f9f: MLOAD
00001fa0: DUP1
00001fa1: SWAP2
00001fa2: SUB
00001fa3: SWAP1
00001fa4: LOG1
00001fa5: POP
00001fa6: JUMP
00001fa7: JUMPDEST
00001fa8: PUSH1 0x00
00001faa: PUSH1 0x00
00001fac: DUP1
00001fad: MLOAD
00001fae: PUSH1 0x20
00001fb0: PUSH2 0x46cd
00001fb3: DUP4
00001fb4: CODECOPY
00001fb5: DUP2
00001fb6: MLOAD
00001fb7: SWAP2
00001fb8: MSTORE
00001fb9: PUSH2 0x1fc2
00001fbc: DUP5
00001fbd: DUP5
00001fbe: PUSH2 0x12d7
00001fc1: JUMP
00001fc2: JUMPDEST
00001fc3: PUSH2 0x2042
00001fc6: JUMPI
00001fc7: PUSH1 0x00
00001fc9: DUP5
00001fca: DUP2
00001fcb: MSTORE
00001fcc: PUSH1 0x20
00001fce: DUP3
00001fcf: DUP2
00001fd0: MSTORE
00001fd1: PUSH1 0x40
00001fd3: DUP1
00001fd4: DUP4
00001fd5: KECCAK256
00001fd6: PUSH1 0x01
00001fd8: PUSH1 0x01
00001fda: PUSH1 0xa0
00001fdc: SHL
00001fdd: SUB
00001fde: DUP8
00001fdf: AND
00001fe0: DUP5
00001fe1: MSTORE
00001fe2: SWAP1
00001fe3: SWAP2
00001fe4: MSTORE
00001fe5: SWAP1
00001fe6: KECCAK256
00001fe7: DUP1
00001fe8: SLOAD
00001fe9: PUSH1 0xff
00001feb: NOT
00001fec: AND
00001fed: PUSH1 0x01
00001fef: OR
00001ff0: SWAP1
00001ff1: SSTORE
00001ff2: PUSH2 0x1ff8
00001ff5: CALLER
00001ff6: SWAP1
00001ff7: JUMP
00001ff8: JUMPDEST
00001ff9: PUSH1 0x01
00001ffb: PUSH1 0x01
00001ffd: PUSH1 0xa0
00001fff: SHL
00002000: SUB
00002001: AND
00002002: DUP4
00002003: PUSH1 0x01
00002005: PUSH1 0x01
00002007: PUSH1 0xa0
00002009: SHL
0000200a: SUB
0000200b: AND
0000200c: DUP6
0000200d: PUSH32 0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d
0000202e: PUSH1 0x40
00002030: MLOAD
00002031: PUSH1 0x40
00002033: MLOAD
00002034: DUP1
00002035: SWAP2
00002036: SUB
00002037: SWAP1
00002038: LOG4
00002039: PUSH1 0x01
0000203b: SWAP2
0000203c: POP
0000203d: POP
0000203e: PUSH2 0x09ca
00002041: JUMP
00002042: JUMPDEST
00002043: PUSH1 0x00
00002045: SWAP2
00002046: POP
00002047: POP
00002048: PUSH2 0x09ca
0000204b: JUMP
0000204c: JUMPDEST
0000204d: PUSH1 0x00
0000204f: PUSH1 0x00
00002051: DUP1
00002052: MLOAD
00002053: PUSH1 0x20
00002055: PUSH2 0x46cd
00002058: DUP4
00002059: CODECOPY
0000205a: DUP2
0000205b: MLOAD
0000205c: SWAP2
0000205d: MSTORE
0000205e: PUSH2 0x2067
00002061: DUP5
00002062: DUP5
00002063: PUSH2 0x12d7
00002066: JUMP
00002067: JUMPDEST
00002068: ISZERO
00002069: PUSH2 0x2042
0000206c: JUMPI
0000206d: PUSH1 0x00
0000206f: DUP5
00002070: DUP2
00002071: MSTORE
00002072: PUSH1 0x20
00002074: DUP3
00002075: DUP2
00002076: MSTORE
00002077: PUSH1 0x40
00002079: DUP1
0000207a: DUP4
0000207b: KECCAK256
0000207c: PUSH1 0x01
0000207e: PUSH1 0x01
00002080: PUSH1 0xa0
00002082: SHL
00002083: SUB
00002084: DUP8
00002085: AND
00002086: DUP1
00002087: DUP6
00002088: MSTORE
00002089: SWAP3
0000208a: MSTORE
0000208b: DUP1
0000208c: DUP4
0000208d: KECCAK256
0000208e: DUP1
0000208f: SLOAD
00002090: PUSH1 0xff
00002092: NOT
00002093: AND
00002094: SWAP1
00002095: SSTORE
00002096: MLOAD
00002097: CALLER
00002098: SWAP3
00002099: DUP8
0000209a: SWAP2
0000209b: PUSH32 0xf6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b
000020bc: SWAP2
000020bd: SWAP1
000020be: LOG4
000020bf: PUSH1 0x01
000020c1: SWAP2
000020c2: POP
000020c3: POP
000020c4: PUSH2 0x09ca
000020c7: JUMP
000020c8: JUMPDEST
000020c9: PUSH1 0x00
000020cb: DUP1
000020cc: MLOAD
000020cd: PUSH1 0x20
000020cf: PUSH2 0x46ed
000020d2: DUP4
000020d3: CODECOPY
000020d4: DUP2
000020d5: MLOAD
000020d6: SWAP2
000020d7: MSTORE
000020d8: SLOAD
000020d9: PUSH1 0xff
000020db: AND
000020dc: ISZERO
000020dd: PUSH2 0x20f9
000020e0: JUMPI
000020e1: PUSH1 0x40
000020e3: MLOAD
000020e4: PUSH4 0xd93c0665
000020e9: PUSH1 0xe0
000020eb: SHL
000020ec: DUP2
000020ed: MSTORE
000020ee: PUSH1 0x04
000020f0: ADD
000020f1: PUSH1 0x40
000020f3: MLOAD
000020f4: DUP1
000020f5: SWAP2
000020f6: SUB
000020f7: SWAP1
000020f8: REVERT
000020f9: JUMPDEST
000020fa: JUMP
000020fb: JUMPDEST
000020fc: PUSH2 0x2105
000020ff: DUP4
00002100: DUP4
00002101: PUSH2 0x2d0f
00002104: JUMP
00002105: JUMPDEST
00002106: PUSH1 0x00
00002108: PUSH2 0x2111
0000210b: DUP5
0000210c: DUP4
0000210d: PUSH2 0x2dbd
00002110: JUMP
00002111: JUMPDEST
00002112: SWAP1
00002113: POP
00002114: PUSH1 0x00
00002116: PUSH2 0x2121
00002119: DUP8
0000211a: PUSH1 0x03
0000211c: SLOAD
0000211d: PUSH2 0x2e91
00002120: JUMP
00002121: JUMPDEST
00002122: SWAP1
00002123: POP
00002124: DUP1
00002125: DUP7
00002126: GT
00002127: ISZERO
00002128: PUSH2 0x214e
0000212b: JUMPI
0000212c: PUSH1 0x40
0000212e: MLOAD
0000212f: PUSH4 0x539163e1
00002134: PUSH1 0xe0
00002136: SHL
00002137: DUP2
00002138: MSTORE
00002139: PUSH1 0x04
0000213b: DUP2
0000213c: ADD
0000213d: DUP8
0000213e: SWAP1
0000213f: MSTORE
00002140: PUSH1 0x24
00002142: DUP2
00002143: ADD
00002144: DUP3
00002145: SWAP1
00002146: MSTORE
00002147: PUSH1 0x44
00002149: ADD
0000214a: PUSH2 0x1380
0000214d: JUMP
0000214e: JUMPDEST
0000214f: PUSH1 0x00
00002151: PUSH2 0x2190
00002154: PUSH1 0x40
00002156: MLOAD
00002157: DUP1
00002158: PUSH1 0xa0
0000215a: ADD
0000215b: PUSH1 0x40
0000215d: MSTORE
0000215e: DUP1
0000215f: DUP13
00002160: PUSH1 0x01
00002162: PUSH1 0x01
00002164: PUSH1 0xa0
00002166: SHL
00002167: SUB
00002168: AND
00002169: DUP2
0000216a: MSTORE
0000216b: PUSH1 0x20
0000216d: ADD
0000216e: DUP12
0000216f: DUP2
00002170: MSTORE
00002171: PUSH1 0x20
00002173: ADD
00002174: DUP10
00002175: DUP2
00002176: MSTORE
00002177: PUSH1 0x20
00002179: ADD
0000217a: DUP11
0000217b: PUSH4 0xffffffff
00002180: AND
00002181: DUP2
00002182: MSTORE
00002183: PUSH1 0x20
00002185: ADD
00002186: DUP6
00002187: ISZERO
00002188: ISZERO
00002189: DUP2
0000218a: MSTORE
0000218b: POP
0000218c: PUSH2 0x298e
0000218f: JUMP
00002190: JUMPDEST
00002191: PUSH1 0x00
00002193: DUP2
00002194: DUP2
00002195: MSTORE
00002196: PUSH1 0x0c
00002198: PUSH1 0x20
0000219a: MSTORE
0000219b: PUSH1 0x40
0000219d: SWAP1
0000219e: KECCAK256
0000219f: SLOAD
000021a0: SWAP1
000021a1: SWAP2
000021a2: POP
000021a3: PUSH1 0xff
000021a5: AND
000021a6: ISZERO
000021a7: PUSH2 0x21c6
000021aa: JUMPI
000021ab: PUSH1 0x40
000021ad: MLOAD
000021ae: PUSH4 0xbff0e9e7
000021b3: PUSH1 0xe0
000021b5: SHL
000021b6: DUP2
000021b7: MSTORE
000021b8: PUSH1 0x04
000021ba: DUP2
000021bb: ADD
000021bc: DUP3
000021bd: SWAP1
000021be: MSTORE
000021bf: PUSH1 0x24
000021c1: ADD
000021c2: PUSH2 0x1380
000021c5: JUMP
000021c6: JUMPDEST
000021c7: PUSH1 0x00
000021c9: DUP2
000021ca: DUP2
000021cb: MSTORE
000021cc: PUSH1 0x0c
000021ce: PUSH1 0x20
000021d0: MSTORE
000021d1: PUSH1 0x40
000021d3: DUP2
000021d4: KECCAK256
000021d5: DUP1
000021d6: SLOAD
000021d7: PUSH1 0xff
000021d9: NOT
000021da: AND
000021db: PUSH1 0x01
000021dd: OR
000021de: SWAP1
000021df: SSTORE
000021e0: PUSH2 0x2240
000021e3: PUSH1 0x0d
000021e5: DUP4
000021e6: DUP14
000021e7: DUP3
000021e8: SLOAD
000021e9: PUSH1 0x40
000021eb: DUP1
000021ec: MLOAD
000021ed: DUP1
000021ee: DUP3
000021ef: ADD
000021f0: SWAP1
000021f1: SWAP2
000021f2: MSTORE
000021f3: SWAP3
000021f4: DUP4
000021f5: MSTORE
000021f6: PUSH1 0x01
000021f8: PUSH1 0x01
000021fa: PUSH1 0xa0
000021fc: SHL
000021fd: SUB
000021fe: SWAP2
000021ff: DUP3
00002200: AND
00002201: PUSH1 0x20
00002203: DUP1
00002204: DUP6
00002205: ADD
00002206: SWAP2
00002207: DUP3
00002208: MSTORE
00002209: PUSH1 0x01
0000220b: DUP1
0000220c: DUP5
0000220d: ADD
0000220e: DUP8
0000220f: SSTORE
00002210: PUSH1 0x00
00002212: SWAP7
00002213: DUP8
00002214: MSTORE
00002215: SWAP6
00002216: KECCAK256
00002217: SWAP4
00002218: MLOAD
00002219: PUSH1 0x02
0000221b: DUP4
0000221c: MUL
0000221d: SWAP1
0000221e: SWAP5
0000221f: ADD
00002220: SWAP4
00002221: DUP5
00002222: SSTORE
00002223: MLOAD
00002224: SWAP3
00002225: SWAP1
00002226: SWAP4
00002227: ADD
00002228: DUP1
00002229: SLOAD
0000222a: PUSH1 0x01
0000222c: PUSH1 0x01
0000222e: PUSH1 0xa0
00002230: SHL
00002231: SUB
00002232: NOT
00002233: AND
00002234: SWAP3
00002235: SWAP1
00002236: SWAP2
00002237: AND
00002238: SWAP2
00002239: SWAP1
0000223a: SWAP2
0000223b: OR
0000223c: SWAP1
0000223d: SSTORE
0000223e: SWAP1
0000223f: JUMP
00002240: JUMPDEST
00002241: PUSH1 0x40
00002243: DUP1
00002244: MLOAD
00002245: PUSH4 0xffffffff
0000224a: DUP13
0000224b: AND
0000224c: DUP2
0000224d: MSTORE
0000224e: PUSH1 0x20
00002250: DUP2
00002251: ADD
00002252: DUP12
00002253: SWAP1
00002254: MSTORE
00002255: DUP7
00002256: ISZERO
00002257: ISZERO
00002258: DUP2
00002259: DUP4
0000225a: ADD
0000225b: MSTORE
0000225c: TIMESTAMP
0000225d: PUSH1 0x60
0000225f: DUP3
00002260: ADD
00002261: MSTORE
00002262: SWAP1
00002263: MLOAD
00002264: SWAP2
00002265: SWAP3
00002266: POP
00002267: DUP12
00002268: SWAP2
00002269: PUSH1 0x01
0000226b: PUSH1 0x01
0000226d: PUSH1 0xa0
0000226f: SHL
00002270: SUB
00002271: DUP15
00002272: AND
00002273: SWAP2
00002274: DUP5
00002275: SWAP2
00002276: PUSH32 0x1061e9784cdd951f4cbc394956165b3a94cf872a3afda95fc76b55cefb35cc51
00002297: SWAP2
00002298: DUP2
00002299: SWAP1
0000229a: SUB
0000229b: PUSH1 0x80
0000229d: ADD
0000229e: SWAP1
0000229f: LOG4
000022a0: POP
000022a1: POP
000022a2: POP
000022a3: POP
000022a4: POP
000022a5: POP
000022a6: POP
000022a7: POP
000022a8: POP
000022a9: POP
000022aa: POP
000022ab: JUMP
000022ac: JUMPDEST
000022ad: ADDRESS
000022ae: PUSH1 0x01
000022b0: PUSH1 0x01
000022b2: PUSH1 0xa0
000022b4: SHL
000022b5: SUB
000022b6: PUSH32 0x000000000000000000000000d31f61281a4b262aea79cbbe09a436975a8b63ea
000022d7: AND
000022d8: EQ
000022d9: DUP1
000022da: PUSH2 0x2333
000022dd: JUMPI
000022de: POP
000022df: PUSH32 0x000000000000000000000000d31f61281a4b262aea79cbbe09a436975a8b63ea
00002300: PUSH1 0x01
00002302: PUSH1 0x01
00002304: PUSH1 0xa0
00002306: SHL
00002307: SUB
00002308: AND
00002309: PUSH2 0x2327
0000230c: PUSH1 0x00
0000230e: DUP1
0000230f: MLOAD
00002310: PUSH1 0x20
00002312: PUSH2 0x46ad
00002315: DUP4
00002316: CODECOPY
00002317: DUP2
00002318: MLOAD
00002319: SWAP2
0000231a: MSTORE
0000231b: SLOAD
0000231c: PUSH1 0x01
0000231e: PUSH1 0x01
00002320: PUSH1 0xa0
00002322: SHL
00002323: SUB
00002324: AND
00002325: SWAP1
00002326: JUMP
00002327: JUMPDEST
00002328: PUSH1 0x01
0000232a: PUSH1 0x01
0000232c: PUSH1 0xa0
0000232e: SHL
0000232f: SUB
00002330: AND
00002331: EQ
00002332: ISZERO
00002333: JUMPDEST
00002334: ISZERO
00002335: PUSH2 0x20f9
00002338: JUMPI
00002339: PUSH1 0x40
0000233b: MLOAD
0000233c: PUSH4 0x703e46dd
00002341: PUSH1 0xe1
00002343: SHL
00002344: DUP2
00002345: MSTORE
00002346: PUSH1 0x04
00002348: ADD
00002349: PUSH1 0x40
0000234b: MLOAD
0000234c: DUP1
0000234d: SWAP2
0000234e: SUB
0000234f: SWAP1
00002350: REVERT
00002351: JUMPDEST
00002352: PUSH1 0x00
00002354: PUSH2 0x0e90
00002357: DUP2
00002358: PUSH2 0x1f3a
0000235b: JUMP
0000235c: JUMPDEST
0000235d: DUP2
0000235e: PUSH1 0x01
00002360: PUSH1 0x01
00002362: PUSH1 0xa0
00002364: SHL
00002365: SUB
00002366: AND
00002367: PUSH4 0x52d1902d
0000236c: PUSH1 0x40
0000236e: MLOAD
0000236f: DUP2
00002370: PUSH4 0xffffffff
00002375: AND
00002376: PUSH1 0xe0
00002378: SHL
00002379: DUP2
0000237a: MSTORE
0000237b: PUSH1 0x04
0000237d: ADD
0000237e: PUSH1 0x20
00002380: PUSH1 0x40
00002382: MLOAD
00002383: DUP1
00002384: DUP4
00002385: SUB
00002386: DUP2
00002387: DUP7
00002388: GAS
00002389: STATICCALL
0000238a: SWAP3
0000238b: POP
0000238c: POP
0000238d: POP
0000238e: DUP1
0000238f: ISZERO
00002390: PUSH2 0x23b6
00002393: JUMPI
00002394: POP
00002395: PUSH1 0x40
00002397: DUP1
00002398: MLOAD
00002399: PUSH1 0x1f
0000239b: RETURNDATASIZE
0000239c: SWAP1
0000239d: DUP2
0000239e: ADD
0000239f: PUSH1 0x1f
000023a1: NOT
000023a2: AND
000023a3: DUP3
000023a4: ADD
000023a5: SWAP1
000023a6: SWAP3
000023a7: MSTORE
000023a8: PUSH2 0x23b3
000023ab: SWAP2
000023ac: DUP2
000023ad: ADD
000023ae: SWAP1
000023af: PUSH2 0x4608
000023b2: JUMP
000023b3: JUMPDEST
000023b4: PUSH1 0x01
000023b6: JUMPDEST
000023b7: PUSH2 0x23de
000023ba: JUMPI
000023bb: PUSH1 0x40
000023bd: MLOAD
000023be: PUSH4 0x4c9c8ce3
000023c3: PUSH1 0xe0
000023c5: SHL
000023c6: DUP2
000023c7: MSTORE
000023c8: PUSH1 0x01
000023ca: PUSH1 0x01
000023cc: PUSH1 0xa0
000023ce: SHL
000023cf: SUB
000023d0: DUP4
000023d1: AND
000023d2: PUSH1 0x04
000023d4: DUP3
000023d5: ADD
000023d6: MSTORE
000023d7: PUSH1 0x24
000023d9: ADD
000023da: PUSH2 0x1380
000023dd: JUMP
000023de: JUMPDEST
000023df: PUSH1 0x00
000023e1: DUP1
000023e2: MLOAD
000023e3: PUSH1 0x20
000023e5: PUSH2 0x46ad
000023e8: DUP4
000023e9: CODECOPY
000023ea: DUP2
000023eb: MLOAD
000023ec: SWAP2
000023ed: MSTORE
000023ee: DUP2
000023ef: EQ
000023f0: PUSH2 0x240f
000023f3: JUMPI
000023f4: PUSH1 0x40
000023f6: MLOAD
000023f7: PUSH4 0x2a875269
000023fc: PUSH1 0xe2
000023fe: SHL
000023ff: DUP2
00002400: MSTORE
00002401: PUSH1 0x04
00002403: DUP2
00002404: ADD
00002405: DUP3
00002406: SWAP1
00002407: MSTORE
00002408: PUSH1 0x24
0000240a: ADD
0000240b: PUSH2 0x1380
0000240e: JUMP
0000240f: JUMPDEST
00002410: PUSH2 0x0bdb
00002413: DUP4
00002414: DUP4
00002415: PUSH2 0x3114
00002418: JUMP
00002419: JUMPDEST
0000241a: ADDRESS
0000241b: PUSH1 0x01
0000241d: PUSH1 0x01
0000241f: PUSH1 0xa0
00002421: SHL
00002422: SUB
00002423: PUSH32 0x000000000000000000000000d31f61281a4b262aea79cbbe09a436975a8b63ea
00002444: AND
00002445: EQ
00002446: PUSH2 0x20f9
00002449: JUMPI
0000244a: PUSH1 0x40
0000244c: MLOAD
0000244d: PUSH4 0x703e46dd
00002452: PUSH1 0xe1
00002454: SHL
00002455: DUP2
00002456: MSTORE
00002457: PUSH1 0x04
00002459: ADD
0000245a: PUSH1 0x40
0000245c: MLOAD
0000245d: DUP1
0000245e: SWAP2
0000245f: SUB
00002460: SWAP1
00002461: REVERT
00002462: JUMPDEST
00002463: PUSH1 0x40
00002465: MLOAD
00002466: PUSH1 0x01
00002468: PUSH1 0x01
0000246a: PUSH1 0xa0
0000246c: SHL
0000246d: SUB
0000246e: DUP5
0000246f: DUP2
00002470: AND
00002471: PUSH1 0x24
00002473: DUP4
00002474: ADD
00002475: MSTORE
00002476: DUP4
00002477: DUP2
00002478: AND
00002479: PUSH1 0x44
0000247b: DUP4
0000247c: ADD
0000247d: MSTORE
0000247e: PUSH1 0x64
00002480: DUP3
00002481: ADD
00002482: DUP4
00002483: SWAP1
00002484: MSTORE
00002485: PUSH2 0x0ba2
00002488: SWAP2
00002489: DUP7
0000248a: SWAP2
0000248b: DUP3
0000248c: AND
0000248d: SWAP1
0000248e: PUSH4 0x23b872dd
00002493: SWAP1
00002494: PUSH1 0x84
00002496: ADD
00002497: JUMPDEST
00002498: PUSH1 0x40
0000249a: MLOAD
0000249b: PUSH1 0x20
0000249d: DUP2
0000249e: DUP4
0000249f: SUB
000024a0: SUB
000024a1: DUP2
000024a2: MSTORE
000024a3: SWAP1
000024a4: PUSH1 0x40
000024a6: MSTORE
000024a7: SWAP2
000024a8: POP
000024a9: PUSH1 0xe0
000024ab: SHL
000024ac: PUSH1 0x20
000024ae: DUP3
000024af: ADD
000024b0: DUP1
000024b1: MLOAD
000024b2: PUSH1 0x01
000024b4: PUSH1 0x01
000024b6: PUSH1 0xe0
000024b8: SHL
000024b9: SUB
000024ba: DUP4
000024bb: DUP2
000024bc: DUP4
000024bd: AND
000024be: OR
000024bf: DUP4
000024c0: MSTORE
000024c1: POP
000024c2: POP
000024c3: POP
000024c4: POP
000024c5: PUSH2 0x316a
000024c8: JUMP
000024c9: JUMPDEST
000024ca: PUSH1 0x00
000024cc: DUP1
000024cd: PUSH1 0x00
000024cf: PUSH2 0x24d9
000024d2: DUP7
000024d3: DUP7
000024d4: DUP7
000024d5: PUSH2 0x0be0
000024d8: JUMP
000024d9: JUMPDEST
000024da: SWAP2
000024db: POP
000024dc: SWAP2
000024dd: POP
000024de: DUP2
000024df: ISZERO
000024e0: PUSH2 0x24ec
000024e3: JUMPI
000024e4: SWAP2
000024e5: POP
000024e6: PUSH2 0x24fc
000024e9: SWAP1
000024ea: POP
000024eb: JUMP
000024ec: JUMPDEST
000024ed: PUSH2 0x24f7
000024f0: DUP7
000024f1: DUP7
000024f2: DUP7
000024f3: PUSH2 0x31db
000024f6: JUMP
000024f7: JUMPDEST
000024f8: SWAP3
000024f9: POP
000024fa: POP
000024fb: POP
000024fc: JUMPDEST
000024fd: SWAP4
000024fe: SWAP3
000024ff: POP
00002500: POP
00002501: POP
00002502: JUMP
00002503: JUMPDEST
00002504: PUSH1 0x00
00002506: DUP6
00002507: PUSH1 0x03
00002509: DUP2
0000250a: GT
0000250b: ISZERO
0000250c: PUSH2 0x2517
0000250f: JUMPI
00002510: PUSH2 0x2517
00002513: PUSH2 0x40cb
00002516: JUMP
00002517: JUMPDEST
00002518: SUB
00002519: PUSH2 0x25a8
0000251c: JUMPI
0000251d: PUSH1 0x00
0000251f: DUP4
00002520: PUSH1 0x01
00002522: PUSH1 0x01
00002524: PUSH1 0xa0
00002526: SHL
00002527: SUB
00002528: AND
00002529: DUP4
0000252a: PUSH1 0x40
0000252c: MLOAD
0000252d: PUSH1 0x00
0000252f: PUSH1 0x40
00002531: MLOAD
00002532: DUP1
00002533: DUP4
00002534: SUB
00002535: DUP2
00002536: DUP6
00002537: DUP8
00002538: GAS
00002539: CALL
0000253a: SWAP3
0000253b: POP
0000253c: POP
0000253d: POP
0000253e: RETURNDATASIZE
0000253f: DUP1
00002540: PUSH1 0x00
00002542: DUP2
00002543: EQ
00002544: PUSH2 0x2569
00002547: JUMPI
00002548: PUSH1 0x40
0000254a: MLOAD
0000254b: SWAP2
0000254c: POP
0000254d: PUSH1 0x1f
0000254f: NOT
00002550: PUSH1 0x3f
00002552: RETURNDATASIZE
00002553: ADD
00002554: AND
00002555: DUP3
00002556: ADD
00002557: PUSH1 0x40
00002559: MSTORE
0000255a: RETURNDATASIZE
0000255b: DUP3
0000255c: MSTORE
0000255d: RETURNDATASIZE
0000255e: PUSH1 0x00
00002560: PUSH1 0x20
00002562: DUP5
00002563: ADD
00002564: RETURNDATACOPY
00002565: PUSH2 0x256e
00002568: JUMP
00002569: JUMPDEST
0000256a: PUSH1 0x60
0000256c: SWAP2
0000256d: POP
0000256e: JUMPDEST
0000256f: POP
00002570: POP
00002571: SWAP1
00002572: POP
00002573: DUP1
00002574: PUSH2 0x25a2
00002577: JUMPI
00002578: PUSH1 0x40
0000257a: MLOAD
0000257b: PUSH4 0x38f06201
00002580: PUSH1 0xe2
00002582: SHL
00002583: DUP2
00002584: MSTORE
00002585: PUSH1 0x01
00002587: PUSH1 0x01
00002589: PUSH1 0xa0
0000258b: SHL
0000258c: SUB
0000258d: DUP6
0000258e: AND
0000258f: PUSH1 0x04
00002591: DUP3
00002592: ADD
00002593: MSTORE
00002594: PUSH1 0x24
00002596: DUP2
00002597: ADD
00002598: DUP5
00002599: SWAP1
0000259a: MSTORE
0000259b: PUSH1 0x44
0000259d: ADD
0000259e: PUSH2 0x1380
000025a1: JUMP
000025a2: JUMPDEST
000025a3: POP
000025a4: PUSH2 0x10d4
000025a7: JUMP
000025a8: JUMPDEST
000025a9: PUSH1 0x01
000025ab: DUP6
000025ac: PUSH1 0x03
000025ae: DUP2
000025af: GT
000025b0: ISZERO
000025b1: PUSH2 0x25bc
000025b4: JUMPI
000025b5: PUSH2 0x25bc
000025b8: PUSH2 0x40cb
000025bb: JUMP
000025bc: JUMPDEST
000025bd: SUB
000025be: PUSH2 0x25da
000025c1: JUMPI
000025c2: PUSH2 0x25d5
000025c5: PUSH1 0x01
000025c7: PUSH1 0x01
000025c9: PUSH1 0xa0
000025cb: SHL
000025cc: SUB
000025cd: DUP6
000025ce: AND
000025cf: DUP5
000025d0: DUP5
000025d1: PUSH2 0x339d
000025d4: JUMP
000025d5: JUMPDEST
000025d6: PUSH2 0x10d4
000025d9: JUMP
000025da: JUMPDEST
000025db: PUSH1 0x02
000025dd: DUP6
000025de: PUSH1 0x03
000025e0: DUP2
000025e1: GT
000025e2: ISZERO
000025e3: PUSH2 0x25ee
000025e6: JUMPI
000025e7: PUSH2 0x25ee
000025ea: PUSH2 0x40cb
000025ed: JUMP
000025ee: JUMPDEST
000025ef: SUB
000025f0: PUSH2 0x2660
000025f3: JUMPI
000025f4: PUSH1 0x40
000025f6: MLOAD
000025f7: PUSH4 0x23b872dd
000025fc: PUSH1 0xe0
000025fe: SHL
000025ff: DUP2
00002600: MSTORE
00002601: ADDRESS
00002602: PUSH1 0x04
00002604: DUP3
00002605: ADD
00002606: MSTORE
00002607: PUSH1 0x01
00002609: PUSH1 0x01
0000260b: PUSH1 0xa0
0000260d: SHL
0000260e: SUB
0000260f: DUP5
00002610: DUP2
00002611: AND
00002612: PUSH1 0x24
00002614: DUP4
00002615: ADD
00002616: MSTORE
00002617: PUSH1 0x44
00002619: DUP3
0000261a: ADD
0000261b: DUP4
0000261c: SWAP1
0000261d: MSTORE
0000261e: DUP6
0000261f: AND
00002620: SWAP1
00002621: PUSH4 0x23b872dd
00002626: SWAP1
00002627: PUSH1 0x64
00002629: ADD
0000262a: PUSH1 0x00
0000262c: PUSH1 0x40
0000262e: MLOAD
0000262f: DUP1
00002630: DUP4
00002631: SUB
00002632: DUP2
00002633: PUSH1 0x00
00002635: DUP8
00002636: DUP1
00002637: EXTCODESIZE
00002638: ISZERO
00002639: DUP1
0000263a: ISZERO
0000263b: PUSH2 0x2643
0000263e: JUMPI
0000263f: PUSH1 0x00
00002641: DUP1
00002642: REVERT
00002643: JUMPDEST
00002644: POP
00002645: GAS
00002646: CALL
00002647: ISZERO
00002648: DUP1
00002649: ISZERO
0000264a: PUSH2 0x2657
0000264d: JUMPI
0000264e: RETURNDATASIZE
0000264f: PUSH1 0x00
00002651: DUP1
00002652: RETURNDATACOPY
00002653: RETURNDATASIZE
00002654: PUSH1 0x00
00002656: REVERT
00002657: JUMPDEST
00002658: POP
00002659: POP
0000265a: POP
0000265b: POP
0000265c: PUSH2 0x10d4
0000265f: JUMP
00002660: JUMPDEST
00002661: PUSH1 0x40
00002663: DUP1
00002664: MLOAD
00002665: PUSH1 0x20
00002667: DUP2
00002668: ADD
00002669: DUP3
0000266a: MSTORE
0000266b: PUSH1 0x00
0000266d: DUP2
0000266e: MSTORE
0000266f: SWAP1
00002670: MLOAD
00002671: PUSH4 0x79212195
00002676: PUSH1 0xe1
00002678: SHL
00002679: DUP2
0000267a: MSTORE
0000267b: PUSH1 0x01
0000267d: PUSH1 0x01
0000267f: PUSH1 0xa0
00002681: SHL
00002682: SUB
00002683: DUP7
00002684: AND
00002685: SWAP2
00002686: PUSH4 0xf242432a
0000268b: SWAP2
0000268c: PUSH2 0x26a0
0000268f: SWAP2
00002690: ADDRESS
00002691: SWAP2
00002692: DUP9
00002693: SWAP2
00002694: DUP8
00002695: SWAP2
00002696: DUP10
00002697: SWAP2
00002698: SWAP1
00002699: PUSH1 0x04
0000269b: ADD
0000269c: PUSH2 0x458a
0000269f: JUMP
000026a0: JUMPDEST
000026a1: PUSH1 0x00
000026a3: PUSH1 0x40
000026a5: MLOAD
000026a6: DUP1
000026a7: DUP4
000026a8: SUB
000026a9: DUP2
000026aa: PUSH1 0x00
000026ac: DUP8
000026ad: DUP1
000026ae: EXTCODESIZE
000026af: ISZERO
000026b0: DUP1
000026b1: ISZERO
000026b2: PUSH2 0x26ba
000026b5: JUMPI
000026b6: PUSH1 0x00
000026b8: DUP1
000026b9: REVERT
000026ba: JUMPDEST
000026bb: POP
000026bc: GAS
000026bd: CALL
000026be: ISZERO
000026bf: DUP1
000026c0: ISZERO
000026c1: PUSH2 0x0fd1
000026c4: JUMPI
000026c5: RETURNDATASIZE
000026c6: PUSH1 0x00
000026c8: DUP1
000026c9: RETURNDATACOPY
000026ca: RETURNDATASIZE
000026cb: PUSH1 0x00
000026cd: REVERT
000026ce: JUMPDEST
000026cf: PUSH2 0x26d6
000026d2: PUSH2 0x33ce
000026d5: JUMP
000026d6: JUMPDEST
000026d7: PUSH1 0x00
000026d9: DUP1
000026da: MLOAD
000026db: PUSH1 0x20
000026dd: PUSH2 0x46ed
000026e0: DUP4
000026e1: CODECOPY
000026e2: DUP2
000026e3: MLOAD
000026e4: SWAP2
000026e5: MSTORE
000026e6: DUP1
000026e7: SLOAD
000026e8: PUSH1 0xff
000026ea: NOT
000026eb: AND
000026ec: DUP2
000026ed: SSTORE
000026ee: PUSH32 0x5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa
0000270f: CALLER
00002710: PUSH2 0x1f89
00002713: JUMP
00002714: JUMPDEST
00002715: PUSH1 0x01
00002717: DUP3
00002718: ADD
00002719: SLOAD
0000271a: DUP3
0000271b: SLOAD
0000271c: PUSH1 0x60
0000271e: SWAP2
0000271f: SWAP1
00002720: DUP4
00002721: LT
00002722: ISZERO
00002723: DUP1
00002724: PUSH2 0x272c
00002727: JUMPI
00002728: POP
00002729: DUP1
0000272a: DUP4
0000272b: LT
0000272c: JUMPDEST
0000272d: ISZERO
0000272e: PUSH2 0x276d
00002731: JUMPI
00002732: DUP4
00002733: SLOAD
00002734: DUP4
00002735: SWAP1
00002736: DUP3
00002737: SWAP1
00002738: PUSH2 0x2743
0000273b: SWAP1
0000273c: PUSH1 0x01
0000273e: SWAP1
0000273f: PUSH2 0x439d
00002742: JUMP
00002743: JUMPDEST
00002744: PUSH1 0x40
00002746: MLOAD
00002747: PUSH4 0x4a0dd9bd
0000274c: PUSH1 0xe0
0000274e: SHL
0000274f: DUP2
00002750: MSTORE
00002751: PUSH1 0x04
00002753: DUP2
00002754: ADD
00002755: SWAP4
00002756: SWAP1
00002757: SWAP4
00002758: MSTORE
00002759: PUSH1 0x24
0000275b: DUP4
0000275c: ADD
0000275d: SWAP2
0000275e: SWAP1
0000275f: SWAP2
00002760: MSTORE
00002761: PUSH1 0x44
00002763: DUP3
00002764: ADD
00002765: MSTORE
00002766: PUSH1 0x64
00002768: ADD
00002769: PUSH2 0x1380
0000276c: JUMP
0000276d: JUMPDEST
0000276e: PUSH1 0x00
00002770: DUP2
00002771: JUMPDEST
00002772: DUP5
00002773: DUP2
00002774: GT
00002775: PUSH2 0x27d1
00002778: JUMPI
00002779: DUP6
0000277a: SLOAD
0000277b: PUSH1 0x00
0000277d: SWAP1
0000277e: DUP8
0000277f: SWAP1
00002780: DUP4
00002781: SWAP1
00002782: DUP2
00002783: LT
00002784: PUSH2 0x278f
00002787: JUMPI
00002788: PUSH2 0x278f
0000278b: PUSH2 0x4371
0000278e: JUMP
0000278f: JUMPDEST
00002790: PUSH1 0x00
00002792: SWAP2
00002793: DUP3
00002794: MSTORE
00002795: PUSH1 0x20
00002797: SWAP1
00002798: SWAP2
00002799: KECCAK256
0000279a: PUSH1 0x01
0000279c: PUSH1 0x02
0000279e: SWAP1
0000279f: SWAP3
000027a0: MUL
000027a1: ADD
000027a2: ADD
000027a3: SLOAD
000027a4: PUSH1 0x01
000027a6: PUSH1 0x01
000027a8: PUSH1 0xa0
000027aa: SHL
000027ab: SUB
000027ac: AND
000027ad: EQ
000027ae: PUSH2 0x27bf
000027b1: JUMPI
000027b2: DUP2
000027b3: PUSH2 0x27bb
000027b6: DUP2
000027b7: PUSH2 0x4621
000027ba: JUMP
000027bb: JUMPDEST
000027bc: SWAP3
000027bd: POP
000027be: POP
000027bf: JUMPDEST
000027c0: DUP1
000027c1: PUSH2 0x27c9
000027c4: DUP2
000027c5: PUSH2 0x4621
000027c8: JUMP
000027c9: JUMPDEST
000027ca: SWAP2
000027cb: POP
000027cc: POP
000027cd: PUSH2 0x2771
000027d0: JUMP
000027d1: JUMPDEST
000027d2: POP
000027d3: PUSH1 0x00
000027d5: DUP2
000027d6: PUSH1 0x01
000027d8: PUSH1 0x01
000027da: PUSH1 0x40
000027dc: SHL
000027dd: SUB
000027de: DUP2
000027df: GT
000027e0: ISZERO
000027e1: PUSH2 0x27ec
000027e4: JUMPI
000027e5: PUSH2 0x27ec
000027e8: PUSH2 0x3972
000027eb: JUMP
000027ec: JUMPDEST
000027ed: PUSH1 0x40
000027ef: MLOAD
000027f0: SWAP1
000027f1: DUP1
000027f2: DUP3
000027f3: MSTORE
000027f4: DUP1
000027f5: PUSH1 0x20
000027f7: MUL
000027f8: PUSH1 0x20
000027fa: ADD
000027fb: DUP3
000027fc: ADD
000027fd: PUSH1 0x40
000027ff: MSTORE
00002800: DUP1
00002801: ISZERO
00002802: PUSH2 0x2815
00002805: JUMPI
00002806: DUP2
00002807: PUSH1 0x20
00002809: ADD
0000280a: PUSH1 0x20
0000280c: DUP3
0000280d: MUL
0000280e: DUP1
0000280f: CALLDATASIZE
00002810: DUP4
00002811: CALLDATACOPY
00002812: ADD
00002813: SWAP1
00002814: POP
00002815: JUMPDEST
00002816: POP
00002817: SWAP1
00002818: POP
00002819: PUSH1 0x00
0000281b: DUP4
0000281c: JUMPDEST
0000281d: DUP7
0000281e: DUP2
0000281f: GT
00002820: PUSH2 0x28c0
00002823: JUMPI
00002824: DUP8
00002825: SLOAD
00002826: PUSH1 0x00
00002828: SWAP1
00002829: DUP10
0000282a: SWAP1
0000282b: DUP4
0000282c: SWAP1
0000282d: DUP2
0000282e: LT
0000282f: PUSH2 0x283a
00002832: JUMPI
00002833: PUSH2 0x283a
00002836: PUSH2 0x4371
00002839: JUMP
0000283a: JUMPDEST
0000283b: PUSH1 0x00
0000283d: SWAP2
0000283e: DUP3
0000283f: MSTORE
00002840: PUSH1 0x20
00002842: SWAP1
00002843: SWAP2
00002844: KECCAK256
00002845: PUSH1 0x01
00002847: PUSH1 0x02
00002849: SWAP1
0000284a: SWAP3
0000284b: MUL
0000284c: ADD
0000284d: ADD
0000284e: SLOAD
0000284f: PUSH1 0x01
00002851: PUSH1 0x01
00002853: PUSH1 0xa0
00002855: SHL
00002856: SUB
00002857: AND
00002858: EQ
00002859: PUSH2 0x28ae
0000285c: JUMPI
0000285d: DUP8
0000285e: PUSH1 0x00
00002860: ADD
00002861: DUP2
00002862: DUP2
00002863: SLOAD
00002864: DUP2
00002865: LT
00002866: PUSH2 0x2871
00002869: JUMPI
0000286a: PUSH2 0x2871
0000286d: PUSH2 0x4371
00002870: JUMP
00002871: JUMPDEST
00002872: SWAP1
00002873: PUSH1 0x00
00002875: MSTORE
00002876: PUSH1 0x20
00002878: PUSH1 0x00
0000287a: KECCAK256
0000287b: SWAP1
0000287c: PUSH1 0x02
0000287e: MUL
0000287f: ADD
00002880: PUSH1 0x00
00002882: ADD
00002883: SLOAD
00002884: DUP4
00002885: DUP4
00002886: DUP2
00002887: MLOAD
00002888: DUP2
00002889: LT
0000288a: PUSH2 0x2895
0000288d: JUMPI
0000288e: PUSH2 0x2895
00002891: PUSH2 0x4371
00002894: JUMP
00002895: JUMPDEST
00002896: PUSH1 0x20
00002898: SWAP1
00002899: DUP2
0000289a: MUL
0000289b: SWAP2
0000289c: SWAP1
0000289d: SWAP2
0000289e: ADD
0000289f: ADD
000028a0: MSTORE
000028a1: DUP2
000028a2: PUSH2 0x28aa
000028a5: DUP2
000028a6: PUSH2 0x4621
000028a9: JUMP
000028aa: JUMPDEST
000028ab: SWAP3
000028ac: POP
000028ad: POP
000028ae: JUMPDEST
000028af: DUP1
000028b0: PUSH2 0x28b8
000028b3: DUP2
000028b4: PUSH2 0x4621
000028b7: JUMP
000028b8: JUMPDEST
000028b9: SWAP2
000028ba: POP
000028bb: POP
000028bc: PUSH2 0x281c
000028bf: JUMP
000028c0: JUMPDEST
000028c1: POP
000028c2: PUSH2 0x28cc
000028c5: DUP7
000028c6: PUSH1 0x01
000028c8: PUSH2 0x44d5
000028cb: JUMP
000028cc: JUMPDEST
000028cd: PUSH1 0x01
000028cf: DUP9
000028d0: ADD
000028d1: SSTORE
000028d2: POP
000028d3: SWAP3
000028d4: POP
000028d5: POP
000028d6: POP
000028d7: SWAP3
000028d8: SWAP2
000028d9: POP
000028da: POP
000028db: JUMP
000028dc: JUMPDEST
000028dd: PUSH1 0x00
000028df: DUP2
000028e0: PUSH1 0x00
000028e2: ADD
000028e3: MLOAD
000028e4: DUP3
000028e5: PUSH1 0x20
000028e7: ADD
000028e8: MLOAD
000028e9: DUP4
000028ea: PUSH1 0x40
000028ec: ADD
000028ed: MLOAD
000028ee: DUP5
000028ef: PUSH1 0x60
000028f1: ADD
000028f2: MLOAD
000028f3: PUSH1 0x40
000028f5: MLOAD
000028f6: PUSH1 0x20
000028f8: ADD
000028f9: PUSH2 0x293c
000028fc: SWAP5
000028fd: SWAP4
000028fe: SWAP3
000028ff: SWAP2
00002900: SWAP1
00002901: PUSH1 0x60
00002903: SWAP5
00002904: SWAP1
00002905: SWAP5
00002906: SHL
00002907: PUSH12 0xffffffffffffffffffffffff
00002914: NOT
00002915: AND
00002916: DUP5
00002917: MSTORE
00002918: PUSH1 0xe0
0000291a: SWAP3
0000291b: SWAP1
0000291c: SWAP3
0000291d: SHL
0000291e: PUSH1 0x01
00002920: PUSH1 0x01
00002922: PUSH1 0xe0
00002924: SHL
00002925: SUB
00002926: NOT
00002927: AND
00002928: PUSH1 0x14
0000292a: DUP5
0000292b: ADD
0000292c: MSTORE
0000292d: PUSH1 0x18
0000292f: DUP4
00002930: ADD
00002931: MSTORE
00002932: PUSH1 0x38
00002934: DUP3
00002935: ADD
00002936: MSTORE
00002937: PUSH1 0x58
00002939: ADD
0000293a: SWAP1
0000293b: JUMP
0000293c: JUMPDEST
0000293d: PUSH1 0x40
0000293f: MLOAD
00002940: PUSH1 0x20
00002942: DUP2
00002943: DUP4
00002944: SUB
00002945: SUB
00002946: DUP2
00002947: MSTORE
00002948: SWAP1
00002949: PUSH1 0x40
0000294b: MSTORE
0000294c: DUP1
0000294d: MLOAD
0000294e: SWAP1
0000294f: PUSH1 0x20
00002951: ADD
00002952: KECCAK256
00002953: SWAP1
00002954: POP
00002955: SWAP2
00002956: SWAP1
00002957: POP
00002958: JUMP
00002959: JUMPDEST
0000295a: PUSH4 0xffffffff
0000295f: DUP3
00002960: AND
00002961: PUSH1 0x00
00002963: SWAP1
00002964: DUP2
00002965: MSTORE
00002966: PUSH1 0x0a
00002968: PUSH1 0x20
0000296a: MSTORE
0000296b: PUSH1 0x40
0000296d: DUP2
0000296e: KECCAK256
0000296f: SLOAD
00002970: PUSH2 0x2710
00002973: PUSH2 0x297c
00002976: DUP3
00002977: DUP6
00002978: PUSH2 0x45f1
0000297b: JUMP
0000297c: JUMPDEST
0000297d: PUSH2 0x2986
00002980: SWAP2
00002981: SWAP1
00002982: PUSH2 0x45cf
00002985: JUMP
00002986: JUMPDEST
00002987: SWAP5
00002988: SWAP4
00002989: POP
0000298a: POP
0000298b: POP
0000298c: POP
0000298d: JUMP
0000298e: JUMPDEST
0000298f: PUSH1 0x00
00002991: DUP2
00002992: PUSH1 0x00
00002994: ADD
00002995: MLOAD
00002996: DUP3
00002997: PUSH1 0x20
00002999: ADD
0000299a: MLOAD
0000299b: DUP4
0000299c: PUSH1 0x40
0000299e: ADD
0000299f: MLOAD
000029a0: DUP5
000029a1: PUSH1 0x60
000029a3: ADD
000029a4: MLOAD
000029a5: DUP6
000029a6: PUSH1 0x80
000029a8: ADD
000029a9: MLOAD
000029aa: PUSH2 0x29b4
000029ad: JUMPI
000029ae: PUSH1 0x00
000029b0: PUSH2 0x29b7
000029b3: JUMP
000029b4: JUMPDEST
000029b5: PUSH1 0x01
000029b7: JUMPDEST
000029b8: PUSH1 0x40
000029ba: MLOAD
000029bb: PUSH1 0x60
000029bd: SWAP6
000029be: SWAP1
000029bf: SWAP6
000029c0: SHL
000029c1: PUSH12 0xffffffffffffffffffffffff
000029ce: NOT
000029cf: AND
000029d0: PUSH1 0x20
000029d2: DUP7
000029d3: ADD
000029d4: MSTORE
000029d5: PUSH1 0x34
000029d7: DUP6
000029d8: ADD
000029d9: SWAP4
000029da: SWAP1
000029db: SWAP4
000029dc: MSTORE
000029dd: PUSH1 0x54
000029df: DUP5
000029e0: ADD
000029e1: SWAP2
000029e2: SWAP1
000029e3: SWAP2
000029e4: MSTORE
000029e5: PUSH1 0xe0
000029e7: SWAP1
000029e8: DUP2
000029e9: SHL
000029ea: PUSH1 0x01
000029ec: PUSH1 0x01
000029ee: PUSH1 0xe0
000029f0: SHL
000029f1: SUB
000029f2: NOT
000029f3: AND
000029f4: PUSH1 0x74
000029f6: DUP5
000029f7: ADD
000029f8: MSTORE
000029f9: SHL
000029fa: PUSH1 0xff
000029fc: PUSH1 0xe0
000029fe: SHL
000029ff: AND
00002a00: PUSH1 0x78
00002a02: DUP3
00002a03: ADD
00002a04: MSTORE
00002a05: PUSH1 0x7c
00002a07: ADD
00002a08: PUSH2 0x293c
00002a0b: JUMP
00002a0c: JUMPDEST
00002a0d: PUSH1 0x40
00002a0f: DUP1
00002a10: MLOAD
00002a11: DUP1
00002a12: DUP3
00002a13: ADD
00002a14: SWAP1
00002a15: SWAP2
00002a16: MSTORE
00002a17: PUSH1 0x00
00002a19: DUP1
00002a1a: DUP3
00002a1b: MSTORE
00002a1c: PUSH1 0x20
00002a1e: DUP3
00002a1f: ADD
00002a20: MSTORE
00002a21: DUP3
00002a22: PUSH1 0x00
00002a24: ADD
00002a25: DUP3
00002a26: DUP2
00002a27: SLOAD
00002a28: DUP2
00002a29: LT
00002a2a: PUSH2 0x2a35
00002a2d: JUMPI
00002a2e: PUSH2 0x2a35
00002a31: PUSH2 0x4371
00002a34: JUMP
00002a35: JUMPDEST
00002a36: PUSH1 0x00
00002a38: SWAP2
00002a39: DUP3
00002a3a: MSTORE
00002a3b: PUSH1 0x20
00002a3d: SWAP2
00002a3e: DUP3
00002a3f: SWAP1
00002a40: KECCAK256
00002a41: PUSH1 0x40
00002a43: DUP1
00002a44: MLOAD
00002a45: DUP1
00002a46: DUP3
00002a47: ADD
00002a48: SWAP1
00002a49: SWAP2
00002a4a: MSTORE
00002a4b: PUSH1 0x02
00002a4d: SWAP1
00002a4e: SWAP3
00002a4f: MUL
00002a50: ADD
00002a51: DUP1
00002a52: SLOAD
00002a53: DUP3
00002a54: MSTORE
00002a55: PUSH1 0x01
00002a57: ADD
00002a58: SLOAD
00002a59: PUSH1 0x01
00002a5b: PUSH1 0x01
00002a5d: PUSH1 0xa0
00002a5f: SHL
00002a60: SUB
00002a61: AND
00002a62: SWAP2
00002a63: DUP2
00002a64: ADD
00002a65: SWAP2
00002a66: SWAP1
00002a67: SWAP2
00002a68: MSTORE
00002a69: DUP4
00002a6a: SLOAD
00002a6b: SWAP1
00002a6c: SWAP2
00002a6d: POP
00002a6e: DUP4
00002a6f: SWAP1
00002a70: DUP4
00002a71: SWAP1
00002a72: DUP2
00002a73: LT
00002a74: PUSH2 0x2a7f
00002a77: JUMPI
00002a78: PUSH2 0x2a7f
00002a7b: PUSH2 0x4371
00002a7e: JUMP
00002a7f: JUMPDEST
00002a80: PUSH1 0x00
00002a82: SWAP2
00002a83: DUP3
00002a84: MSTORE
00002a85: PUSH1 0x20
00002a87: DUP3
00002a88: KECCAK256
00002a89: PUSH1 0x02
00002a8b: SWAP1
00002a8c: SWAP2
00002a8d: MUL
00002a8e: ADD
00002a8f: SWAP1
00002a90: DUP2
00002a91: SSTORE
00002a92: PUSH1 0x01
00002a94: ADD
00002a95: DUP1
00002a96: SLOAD
00002a97: PUSH1 0x01
00002a99: PUSH1 0x01
00002a9b: PUSH1 0xa0
00002a9d: SHL
00002a9e: SUB
00002a9f: NOT
00002aa0: AND
00002aa1: SWAP1
00002aa2: SSTORE
00002aa3: SWAP3
00002aa4: SWAP2
00002aa5: POP
00002aa6: POP
00002aa7: JUMP
00002aa8: JUMPDEST
00002aa9: PUSH1 0x00
00002aab: JUMPDEST
00002aac: DUP2
00002aad: DUP2
00002aae: LT
00002aaf: ISZERO
00002ab0: PUSH2 0x2aeb
00002ab3: JUMPI
00002ab4: PUSH2 0x2ae3
00002ab7: DUP4
00002ab8: DUP4
00002ab9: DUP4
00002aba: DUP2
00002abb: DUP2
00002abc: LT
00002abd: PUSH2 0x2ac8
00002ac0: JUMPI
00002ac1: PUSH2 0x2ac8
00002ac4: PUSH2 0x4371
00002ac7: JUMP
00002ac8: JUMPDEST
00002ac9: SWAP1
00002aca: POP
00002acb: PUSH1 0x80
00002acd: MUL
00002ace: ADD
00002acf: DUP1
00002ad0: CALLDATASIZE
00002ad1: SUB
00002ad2: DUP2
00002ad3: ADD
00002ad4: SWAP1
00002ad5: PUSH2 0x2ade
00002ad8: SWAP2
00002ad9: SWAP1
00002ada: PUSH2 0x4461
00002add: JUMP
00002ade: JUMPDEST
00002adf: PUSH2 0x33fe
00002ae2: JUMP
00002ae3: JUMPDEST
00002ae4: PUSH1 0x01
00002ae6: ADD
00002ae7: PUSH2 0x2aab
00002aea: JUMP
00002aeb: JUMPDEST
00002aec: POP
00002aed: DUP1
00002aee: ISZERO
00002aef: PUSH2 0x0e90
00002af2: JUMPI
00002af3: PUSH1 0x05
00002af5: SLOAD
00002af6: PUSH1 0x40
00002af8: MLOAD
00002af9: PUSH4 0xf099f9f5
00002afe: PUSH1 0xe0
00002b00: SHL
00002b01: DUP2
00002b02: MSTORE
00002b03: PUSH32 0xf00e60aabbc167f41684e8d81677229edbc0f1876ae2c1ded0a60367465292ab
00002b24: PUSH1 0x04
00002b26: DUP3
00002b27: ADD
00002b28: MSTORE
00002b29: ORIGIN
00002b2a: PUSH1 0x24
00002b2c: DUP3
00002b2d: ADD
00002b2e: MSTORE
00002b2f: PUSH1 0x44
00002b31: DUP2
00002b32: ADD
00002b33: DUP4
00002b34: SWAP1
00002b35: MSTORE
00002b36: PUSH1 0x01
00002b38: PUSH1 0x01
00002b3a: PUSH1 0xa0
00002b3c: SHL
00002b3d: SUB
00002b3e: SWAP1
00002b3f: SWAP2
00002b40: AND
00002b41: SWAP1
00002b42: PUSH4 0xf099f9f5
00002b47: SWAP1
00002b48: PUSH1 0x64
00002b4a: ADD
00002b4b: JUMPDEST
00002b4c: PUSH1 0x00
00002b4e: PUSH1 0x40
00002b50: MLOAD
00002b51: DUP1
00002b52: DUP4
00002b53: SUB
00002b54: DUP2
00002b55: PUSH1 0x00
00002b57: DUP8
00002b58: DUP1
00002b59: EXTCODESIZE
00002b5a: ISZERO
00002b5b: DUP1
00002b5c: ISZERO
00002b5d: PUSH2 0x2b65
00002b60: JUMPI
00002b61: PUSH1 0x00
00002b63: DUP1
00002b64: REVERT
00002b65: JUMPDEST
00002b66: POP
00002b67: GAS
00002b68: CALL
00002b69: ISZERO
00002b6a: DUP1
00002b6b: ISZERO
00002b6c: PUSH2 0x2b79
00002b6f: JUMPI
00002b70: RETURNDATASIZE
00002b71: PUSH1 0x00
00002b73: DUP1
00002b74: RETURNDATACOPY
00002b75: RETURNDATASIZE
00002b76: PUSH1 0x00
00002b78: REVERT
00002b79: JUMPDEST
00002b7a: POP
00002b7b: POP
00002b7c: POP
00002b7d: POP
00002b7e: POP
00002b7f: POP
00002b80: JUMP
00002b81: JUMPDEST
00002b82: PUSH1 0x00
00002b84: JUMPDEST
00002b85: DUP2
00002b86: DUP2
00002b87: LT
00002b88: ISZERO
00002b89: PUSH2 0x2c09
00002b8c: JUMPI
00002b8d: TIMESTAMP
00002b8e: PUSH1 0x09
00002b90: PUSH1 0x00
00002b92: DUP6
00002b93: DUP6
00002b94: DUP6
00002b95: DUP2
00002b96: DUP2
00002b97: LT
00002b98: PUSH2 0x2ba3
00002b9b: JUMPI
00002b9c: PUSH2 0x2ba3
00002b9f: PUSH2 0x4371
00002ba2: JUMP
00002ba3: JUMPDEST
00002ba4: SWAP1
00002ba5: POP
00002ba6: PUSH1 0x20
00002ba8: MUL
00002ba9: ADD
00002baa: CALLDATALOAD
00002bab: DUP2
00002bac: MSTORE
00002bad: PUSH1 0x20
00002baf: ADD
00002bb0: SWAP1
00002bb1: DUP2
00002bb2: MSTORE
00002bb3: PUSH1 0x20
00002bb5: ADD
00002bb6: PUSH1 0x00
00002bb8: KECCAK256
00002bb9: DUP2
00002bba: SWAP1
00002bbb: SSTORE
00002bbc: POP
00002bbd: DUP3
00002bbe: DUP3
00002bbf: DUP3
00002bc0: DUP2
00002bc1: DUP2
00002bc2: LT
00002bc3: PUSH2 0x2bce
00002bc6: JUMPI
00002bc7: PUSH2 0x2bce
00002bca: PUSH2 0x4371
00002bcd: JUMP
00002bce: JUMPDEST
00002bcf: SWAP1
00002bd0: POP
00002bd1: PUSH1 0x20
00002bd3: MUL
00002bd4: ADD
00002bd5: CALLDATALOAD
00002bd6: PUSH32 0xd63a18c6858559d79659151118b33c6ad7cf4f7735b64fe9dbd85c509e11a117
00002bf7: PUSH1 0x40
00002bf9: MLOAD
00002bfa: PUSH1 0x40
00002bfc: MLOAD
00002bfd: DUP1
00002bfe: SWAP2
00002bff: SUB
00002c00: SWAP1
00002c01: LOG2
00002c02: PUSH1 0x01
00002c04: ADD
00002c05: PUSH2 0x2b84
00002c08: JUMP
00002c09: JUMPDEST
00002c0a: POP
00002c0b: DUP1
00002c0c: ISZERO
00002c0d: PUSH2 0x0e90
00002c10: JUMPI
00002c11: PUSH1 0x05
00002c13: SLOAD
00002c14: PUSH1 0x40
00002c16: MLOAD
00002c17: PUSH4 0xf099f9f5
00002c1c: PUSH1 0xe0
00002c1e: SHL
00002c1f: DUP2
00002c20: MSTORE
00002c21: PUSH32 0x25146e2fbfab3f988e64e94788d256b87c4fa8691f43ec409c49b57436cb7ee6
00002c42: PUSH1 0x04
00002c44: DUP3
00002c45: ADD
00002c46: MSTORE
00002c47: ORIGIN
00002c48: PUSH1 0x24
00002c4a: DUP3
00002c4b: ADD
00002c4c: MSTORE
00002c4d: PUSH1 0x44
00002c4f: DUP2
00002c50: ADD
00002c51: DUP4
00002c52: SWAP1
00002c53: MSTORE
00002c54: PUSH1 0x01
00002c56: PUSH1 0x01
00002c58: PUSH1 0xa0
00002c5a: SHL
00002c5b: SUB
00002c5c: SWAP1
00002c5d: SWAP2
00002c5e: AND
00002c5f: SWAP1
00002c60: PUSH4 0xf099f9f5
00002c65: SWAP1
00002c66: PUSH1 0x64
00002c68: ADD
00002c69: PUSH2 0x2b4b
00002c6c: JUMP
00002c6d: JUMPDEST
00002c6e: PUSH2 0x20f9
00002c71: PUSH2 0x368a
00002c74: JUMP
00002c75: JUMPDEST
00002c76: PUSH2 0x2c7d
00002c79: PUSH2 0x368a
00002c7c: JUMP
00002c7d: JUMPDEST
00002c7e: PUSH2 0x2c8a
00002c81: PUSH1 0x00
00002c83: DUP1
00002c84: PUSH1 0x00
00002c86: PUSH2 0x31db
00002c89: JUMP
00002c8a: JUMPDEST
00002c8b: POP
00002c8c: PUSH1 0x00
00002c8e: JUMPDEST
00002c8f: DUP2
00002c90: MLOAD
00002c91: DUP2
00002c92: LT
00002c93: ISZERO
00002c94: PUSH2 0x0e90
00002c97: JUMPI
00002c98: PUSH2 0x2cbd
00002c9b: PUSH1 0x01
00002c9d: DUP4
00002c9e: DUP4
00002c9f: DUP2
00002ca0: MLOAD
00002ca1: DUP2
00002ca2: LT
00002ca3: PUSH2 0x2cae
00002ca6: JUMPI
00002ca7: PUSH2 0x2cae
00002caa: PUSH2 0x4371
00002cad: JUMP
00002cae: JUMPDEST
00002caf: PUSH1 0x20
00002cb1: MUL
00002cb2: PUSH1 0x20
00002cb4: ADD
00002cb5: ADD
00002cb6: MLOAD
00002cb7: PUSH1 0x00
00002cb9: PUSH2 0x31db
00002cbc: JUMP
00002cbd: JUMPDEST
00002cbe: POP
00002cbf: PUSH1 0x01
00002cc1: ADD
00002cc2: PUSH2 0x2c8e
00002cc5: JUMP
00002cc6: JUMPDEST
00002cc7: PUSH2 0x2cce
00002cca: PUSH2 0x368a
00002ccd: JUMP
00002cce: JUMPDEST
00002ccf: PUSH2 0x20f9
00002cd2: PUSH2 0x36d3
00002cd5: JUMP
00002cd6: JUMPDEST
00002cd7: PUSH2 0x2ce0
00002cda: DUP3
00002cdb: DUP3
00002cdc: PUSH2 0x12d7
00002cdf: JUMP
00002ce0: JUMPDEST
00002ce1: PUSH2 0x0e90
00002ce4: JUMPI
00002ce5: PUSH1 0x40
00002ce7: MLOAD
00002ce8: PUSH4 0xe2517d3f
00002ced: PUSH1 0xe0
00002cef: SHL
00002cf0: DUP2
00002cf1: MSTORE
00002cf2: PUSH1 0x01
00002cf4: PUSH1 0x01
00002cf6: PUSH1 0xa0
00002cf8: SHL
00002cf9: SUB
00002cfa: DUP3
00002cfb: AND
00002cfc: PUSH1 0x04
00002cfe: DUP3
00002cff: ADD
00002d00: MSTORE
00002d01: PUSH1 0x24
00002d03: DUP2
00002d04: ADD
00002d05: DUP4
00002d06: SWAP1
00002d07: MSTORE
00002d08: PUSH1 0x44
00002d0a: ADD
00002d0b: PUSH2 0x1380
00002d0e: JUMP
00002d0f: JUMPDEST
00002d10: PUSH1 0x07
00002d12: SLOAD
00002d13: PUSH1 0x01
00002d15: PUSH1 0x01
00002d17: PUSH1 0xa0
00002d19: SHL
00002d1a: SUB
00002d1b: AND
00002d1c: DUP1
00002d1d: PUSH2 0x2d25
00002d20: JUMPI
00002d21: POP
00002d22: POP
00002d23: POP
00002d24: JUMP
00002d25: JUMPDEST
00002d26: PUSH1 0x40
00002d28: MLOAD
00002d29: PUSH4 0x901afa5f
00002d2e: PUSH1 0xe0
00002d30: SHL
00002d31: DUP2
00002d32: MSTORE
00002d33: PUSH1 0x00
00002d35: SWAP1
00002d36: PUSH1 0x01
00002d38: PUSH1 0x01
00002d3a: PUSH1 0xa0
00002d3c: SHL
00002d3d: SUB
00002d3e: DUP4
00002d3f: AND
00002d40: SWAP1
00002d41: PUSH4 0x901afa5f
00002d46: SWAP1
00002d47: PUSH2 0x2d5a
00002d4a: SWAP1
00002d4b: CALLER
00002d4c: SWAP1
00002d4d: CALLVALUE
00002d4e: SWAP1
00002d4f: DUP10
00002d50: SWAP1
00002d51: DUP10
00002d52: SWAP1
00002d53: PUSH1 0x04
00002d55: ADD
00002d56: PUSH2 0x463a
00002d59: JUMP
00002d5a: JUMPDEST
00002d5b: PUSH1 0x20
00002d5d: PUSH1 0x40
00002d5f: MLOAD
00002d60: DUP1
00002d61: DUP4
00002d62: SUB
00002d63: DUP2
00002d64: PUSH1 0x00
00002d66: DUP8
00002d67: GAS
00002d68: CALL
00002d69: ISZERO
00002d6a: DUP1
00002d6b: ISZERO
00002d6c: PUSH2 0x2d79
00002d6f: JUMPI
00002d70: RETURNDATASIZE
00002d71: PUSH1 0x00
00002d73: DUP1
00002d74: RETURNDATACOPY
00002d75: RETURNDATASIZE
00002d76: PUSH1 0x00
00002d78: REVERT
00002d79: JUMPDEST
00002d7a: POP
00002d7b: POP
00002d7c: POP
00002d7d: POP
00002d7e: PUSH1 0x40
00002d80: MLOAD
00002d81: RETURNDATASIZE
00002d82: PUSH1 0x1f
00002d84: NOT
00002d85: PUSH1 0x1f
00002d87: DUP3
00002d88: ADD
00002d89: AND
00002d8a: DUP3
00002d8b: ADD
00002d8c: DUP1
00002d8d: PUSH1 0x40
00002d8f: MSTORE
00002d90: POP
00002d91: DUP2
00002d92: ADD
00002d93: SWAP1
00002d94: PUSH2 0x2d9d
00002d97: SWAP2
00002d98: SWAP1
00002d99: PUSH2 0x4673
00002d9c: JUMP
00002d9d: JUMPDEST
00002d9e: SWAP1
00002d9f: POP
00002da0: DUP1
00002da1: PUSH2 0x0ba2
00002da4: JUMPI
00002da5: PUSH1 0x40
00002da7: MLOAD
00002da8: PUSH4 0x11955421
00002dad: PUSH1 0xe1
00002daf: SHL
00002db0: DUP2
00002db1: MSTORE
00002db2: PUSH1 0x04
00002db4: ADD
00002db5: PUSH1 0x40
00002db7: MLOAD
00002db8: DUP1
00002db9: SWAP2
00002dba: SUB
00002dbb: SWAP1
00002dbc: REVERT
00002dbd: JUMPDEST
00002dbe: PUSH1 0x08
00002dc0: SLOAD
00002dc1: PUSH1 0x00
00002dc3: SWAP1
00002dc4: PUSH1 0x01
00002dc6: PUSH1 0x01
00002dc8: PUSH1 0xa0
00002dca: SHL
00002dcb: SUB
00002dcc: AND
00002dcd: DUP1
00002dce: PUSH2 0x2ddb
00002dd1: JUMPI
00002dd2: PUSH1 0x01
00002dd4: SWAP2
00002dd5: POP
00002dd6: POP
00002dd7: PUSH2 0x09ca
00002dda: JUMP
00002ddb: JUMPDEST
00002ddc: DUP3
00002ddd: MLOAD
00002dde: PUSH1 0x00
00002de0: SUB
00002de1: PUSH2 0x2dee
00002de4: JUMPI
00002de5: PUSH1 0x00
00002de7: SWAP2
00002de8: POP
00002de9: POP
00002dea: PUSH2 0x09ca
00002ded: JUMP
00002dee: JUMPDEST
00002def: PUSH1 0x40
00002df1: MLOAD
00002df2: PUSH4 0x901afa5f
00002df7: PUSH1 0xe0
00002df9: SHL
00002dfa: DUP2
00002dfb: MSTORE
00002dfc: PUSH1 0x00
00002dfe: SWAP1
00002dff: PUSH1 0x01
00002e01: PUSH1 0x01
00002e03: PUSH1 0xa0
00002e05: SHL
00002e06: SUB
00002e07: DUP4
00002e08: AND
00002e09: SWAP1
00002e0a: PUSH4 0x901afa5f
00002e0f: SWAP1
00002e10: PUSH2 0x2e23
00002e13: SWAP1
00002e14: CALLER
00002e15: SWAP1
00002e16: CALLVALUE
00002e17: SWAP1
00002e18: DUP11
00002e19: SWAP1
00002e1a: DUP11
00002e1b: SWAP1
00002e1c: PUSH1 0x04
00002e1e: ADD
00002e1f: PUSH2 0x463a
00002e22: JUMP
00002e23: JUMPDEST
00002e24: PUSH1 0x20
00002e26: PUSH1 0x40
00002e28: MLOAD
00002e29: DUP1
00002e2a: DUP4
00002e2b: SUB
00002e2c: DUP2
00002e2d: PUSH1 0x00
00002e2f: DUP8
00002e30: GAS
00002e31: CALL
00002e32: ISZERO
00002e33: DUP1
00002e34: ISZERO
00002e35: PUSH2 0x2e42
00002e38: JUMPI
00002e39: RETURNDATASIZE
00002e3a: PUSH1 0x00
00002e3c: DUP1
00002e3d: RETURNDATACOPY
00002e3e: RETURNDATASIZE
00002e3f: PUSH1 0x00
00002e41: REVERT
00002e42: JUMPDEST
00002e43: POP
00002e44: POP
00002e45: POP
00002e46: POP
00002e47: PUSH1 0x40
00002e49: MLOAD
00002e4a: RETURNDATASIZE
00002e4b: PUSH1 0x1f
00002e4d: NOT
00002e4e: PUSH1 0x1f
00002e50: DUP3
00002e51: ADD
00002e52: AND
00002e53: DUP3
00002e54: ADD
00002e55: DUP1
00002e56: PUSH1 0x40
00002e58: MSTORE
00002e59: POP
00002e5a: DUP2
00002e5b: ADD
00002e5c: SWAP1
00002e5d: PUSH2 0x2e66
00002e60: SWAP2
00002e61: SWAP1
00002e62: PUSH2 0x4673
00002e65: JUMP
00002e66: JUMPDEST
00002e67: SWAP1
00002e68: POP
00002e69: DUP1
00002e6a: PUSH2 0x2e86
00002e6d: JUMPI
00002e6e: PUSH1 0x40
00002e70: MLOAD
00002e71: PUSH4 0x0a3a2605
00002e76: PUSH1 0xe0
00002e78: SHL
00002e79: DUP2
00002e7a: MSTORE
00002e7b: PUSH1 0x04
00002e7d: ADD
00002e7e: PUSH1 0x40
00002e80: MLOAD
00002e81: DUP1
00002e82: SWAP2
00002e83: SUB
00002e84: SWAP1
00002e85: REVERT
00002e86: JUMPDEST
00002e87: POP
00002e88: PUSH1 0x01
00002e8a: SWAP5
00002e8b: SWAP4
00002e8c: POP
00002e8d: POP
00002e8e: POP
00002e8f: POP
00002e90: JUMP
00002e91: JUMPDEST
00002e92: PUSH1 0x00
00002e94: PUSH4 0xffffffff
00002e99: DUP4
00002e9a: AND
00002e9b: ISZERO
00002e9c: DUP1
00002e9d: ISZERO
00002e9e: SWAP1
00002e9f: PUSH2 0x2eaf
00002ea2: JUMPI
00002ea3: POP
00002ea4: PUSH4 0xffffffff
00002ea9: DUP4
00002eaa: AND
00002eab: PUSH1 0x02
00002ead: EQ
00002eae: ISZERO
00002eaf: JUMPDEST
00002eb0: DUP1
00002eb1: ISZERO
00002eb2: PUSH2 0x2ec2
00002eb5: JUMPI
00002eb6: POP
00002eb7: PUSH4 0xffffffff
00002ebc: DUP4
00002ebd: AND
00002ebe: PUSH1 0x03
00002ec0: EQ
00002ec1: ISZERO
00002ec2: JUMPDEST
00002ec3: ISZERO
00002ec4: PUSH2 0x2ed0
00002ec7: JUMPI
00002ec8: POP
00002ec9: PUSH1 0x00
00002ecb: NOT
00002ecc: PUSH2 0x09ca
00002ecf: JUMP
00002ed0: JUMPDEST
00002ed1: DUP2
00002ed2: TIMESTAMP
00002ed3: LT
00002ed4: ISZERO
00002ed5: PUSH2 0x2f19
00002ed8: JUMPI
00002ed9: PUSH4 0xffffffff
00002ede: DUP4
00002edf: AND
00002ee0: PUSH2 0x2ef3
00002ee3: JUMPI
00002ee4: POP
00002ee5: PUSH9 0x056bc75e2d63100000
00002eef: PUSH2 0x09ca
00002ef2: JUMP
00002ef3: JUMPDEST
00002ef4: PUSH1 0x01
00002ef6: NOT
00002ef7: PUSH4 0xffffffff
00002efc: DUP5
00002efd: AND
00002efe: ADD
00002eff: PUSH2 0x2f0d
00002f02: JUMPI
00002f03: POP
00002f04: PUSH4 0x1dcd6500
00002f09: PUSH2 0x09ca
00002f0c: JUMP
00002f0d: JUMPDEST
00002f0e: POP
00002f0f: PUSH5 0x746a528800
00002f15: PUSH2 0x09ca
00002f18: JUMP
00002f19: JUMPDEST
00002f1a: PUSH1 0x00
00002f1c: PUSH3 0x015180
00002f20: PUSH2 0x2f29
00002f23: DUP5
00002f24: TIMESTAMP
00002f25: PUSH2 0x439d
00002f28: JUMP
00002f29: JUMPDEST
00002f2a: PUSH2 0x2f33
00002f2d: SWAP2
00002f2e: SWAP1
00002f2f: PUSH2 0x45cf
00002f32: JUMP
00002f33: JUMPDEST
00002f34: SWAP1
00002f35: POP
00002f36: PUSH1 0x00
00002f38: PUSH2 0x02d8
00002f3b: DUP3
00002f3c: LT
00002f3d: PUSH2 0x2f48
00002f40: JUMPI
00002f41: POP
00002f42: PUSH1 0x04
00002f44: PUSH2 0x2f7e
00002f47: JUMP
00002f48: JUMPDEST
00002f49: PUSH2 0x0222
00002f4c: DUP3
00002f4d: LT
00002f4e: PUSH2 0x2f59
00002f51: JUMPI
00002f52: POP
00002f53: PUSH1 0x03
00002f55: PUSH2 0x2f7e
00002f58: JUMP
00002f59: JUMPDEST
00002f5a: PUSH2 0x016c
00002f5d: DUP3
00002f5e: LT
00002f5f: PUSH2 0x2f6a
00002f62: JUMPI
00002f63: POP
00002f64: PUSH1 0x02
00002f66: PUSH2 0x2f7e
00002f69: JUMP
00002f6a: JUMPDEST
00002f6b: PUSH1 0xb6
00002f6d: DUP3
00002f6e: LT
00002f6f: PUSH2 0x2f7a
00002f72: JUMPI
00002f73: POP
00002f74: PUSH1 0x01
00002f76: PUSH2 0x2f7e
00002f79: JUMP
00002f7a: JUMPDEST
00002f7b: POP
00002f7c: PUSH1 0x00
00002f7e: JUMPDEST
00002f7f: PUSH4 0xffffffff
00002f84: DUP6
00002f85: AND
00002f86: PUSH2 0x3016
00002f89: JUMPI
00002f8a: DUP1
00002f8b: PUSH1 0xff
00002f8d: AND
00002f8e: PUSH1 0x00
00002f90: SUB
00002f91: PUSH2 0x2fa7
00002f94: JUMPI
00002f95: PUSH9 0x056bc75e2d63100000
00002f9f: SWAP3
00002fa0: POP
00002fa1: POP
00002fa2: POP
00002fa3: PUSH2 0x09ca
00002fa6: JUMP
00002fa7: JUMPDEST
00002fa8: DUP1
00002fa9: PUSH1 0xff
00002fab: AND
00002fac: PUSH1 0x01
00002fae: SUB
00002faf: PUSH2 0x2fc5
00002fb2: JUMPI
00002fb3: PUSH9 0x1b1ae4d6e2ef500000
00002fbd: SWAP3
00002fbe: POP
00002fbf: POP
00002fc0: POP
00002fc1: PUSH2 0x09ca
00002fc4: JUMP
00002fc5: JUMPDEST
00002fc6: DUP1
00002fc7: PUSH1 0xff
00002fc9: AND
00002fca: PUSH1 0x02
00002fcc: SUB
00002fcd: PUSH2 0x2fe3
00002fd0: JUMPI
00002fd1: PUSH9 0x3635c9adc5dea00000
00002fdb: SWAP3
00002fdc: POP
00002fdd: POP
00002fde: POP
00002fdf: PUSH2 0x09ca
00002fe2: JUMP
00002fe3: JUMPDEST
00002fe4: DUP1
00002fe5: PUSH1 0xff
00002fe7: AND
00002fe8: PUSH1 0x03
00002fea: SUB
00002feb: PUSH2 0x3002
00002fee: JUMPI
00002fef: PUSH10 0x010f0cf064dd59200000
00002ffa: SWAP3
00002ffb: POP
00002ffc: POP
00002ffd: POP
00002ffe: PUSH2 0x09ca
00003001: JUMP
00003002: JUMPDEST
00003003: PUSH10 0x021e19e0c9bab2400000
0000300e: SWAP3
0000300f: POP
00003010: POP
00003011: POP
00003012: PUSH2 0x09ca
00003015: JUMP
00003016: JUMPDEST
00003017: PUSH1 0x01
00003019: NOT
0000301a: PUSH4 0xffffffff
0000301f: DUP7
00003020: AND
00003021: ADD
00003022: PUSH2 0x309a
00003025: JUMPI
00003026: DUP1
00003027: PUSH1 0xff
00003029: AND
0000302a: PUSH1 0x00
0000302c: SUB
0000302d: PUSH2 0x303e
00003030: JUMPI
00003031: PUSH4 0x1dcd6500
00003036: SWAP3
00003037: POP
00003038: POP
00003039: POP
0000303a: PUSH2 0x09ca
0000303d: JUMP
0000303e: JUMPDEST
0000303f: DUP1
00003040: PUSH1 0xff
00003042: AND
00003043: PUSH1 0x01
00003045: SUB
00003046: PUSH2 0x3057
00003049: JUMPI
0000304a: PUSH4 0x3b9aca00
0000304f: SWAP3
00003050: POP
00003051: POP
00003052: POP
00003053: PUSH2 0x09ca
00003056: JUMP
00003057: JUMPDEST
00003058: DUP1
00003059: PUSH1 0xff
0000305b: AND
0000305c: PUSH1 0x02
0000305e: SUB
0000305f: PUSH2 0x3071
00003062: JUMPI
00003063: PUSH5 0x012a05f200
00003069: SWAP3
0000306a: POP
0000306b: POP
0000306c: POP
0000306d: PUSH2 0x09ca
00003070: JUMP
00003071: JUMPDEST
00003072: DUP1
00003073: PUSH1 0xff
00003075: AND
00003076: PUSH1 0x03
00003078: SUB
00003079: PUSH2 0x308b
0000307c: JUMPI
0000307d: PUSH5 0x02540be400
00003083: SWAP3
00003084: POP
00003085: POP
00003086: POP
00003087: PUSH2 0x09ca
0000308a: JUMP
0000308b: JUMPDEST
0000308c: PUSH5 0x0ba43b7400
00003092: SWAP3
00003093: POP
00003094: POP
00003095: POP
00003096: PUSH2 0x09ca
00003099: JUMP
0000309a: JUMPDEST
0000309b: DUP1
0000309c: PUSH1 0xff
0000309e: AND
0000309f: PUSH1 0x00
000030a1: SUB
000030a2: PUSH2 0x30b4
000030a5: JUMPI
000030a6: PUSH5 0x746a528800
000030ac: SWAP3
000030ad: POP
000030ae: POP
000030af: POP
000030b0: PUSH2 0x09ca
000030b3: JUMP
000030b4: JUMPDEST
000030b5: DUP1
000030b6: PUSH1 0xff
000030b8: AND
000030b9: PUSH1 0x01
000030bb: SUB
000030bc: PUSH2 0x30ce
000030bf: JUMPI
000030c0: PUSH5 0xe8d4a51000
000030c6: SWAP3
000030c7: POP
000030c8: POP
000030c9: POP
000030ca: PUSH2 0x09ca
000030cd: JUMP
000030ce: JUMPDEST
000030cf: DUP1
000030d0: PUSH1 0xff
000030d2: AND
000030d3: PUSH1 0x02
000030d5: SUB
000030d6: PUSH2 0x30e9
000030d9: JUMPI
000030da: PUSH6 0x048c27395000
000030e1: SWAP3
000030e2: POP
000030e3: POP
000030e4: POP
000030e5: PUSH2 0x09ca
000030e8: JUMP
000030e9: JUMPDEST
000030ea: DUP1
000030eb: PUSH1 0xff
000030ed: AND
000030ee: PUSH1 0x03
000030f0: SUB
000030f1: PUSH2 0x3104
000030f4: JUMPI
000030f5: PUSH6 0x09184e72a000
000030fc: SWAP3
000030fd: POP
000030fe: POP
000030ff: POP
00003100: PUSH2 0x09ca
00003103: JUMP
00003104: JUMPDEST
00003105: PUSH6 0x2d79883d2000
0000310c: SWAP3
0000310d: POP
0000310e: POP
0000310f: POP
00003110: PUSH2 0x09ca
00003113: JUMP
00003114: JUMPDEST
00003115: PUSH2 0x311d
00003118: DUP3
00003119: PUSH2 0x36f4
0000311c: JUMP
0000311d: JUMPDEST
0000311e: PUSH1 0x40
00003120: MLOAD
00003121: PUSH1 0x01
00003123: PUSH1 0x01
00003125: PUSH1 0xa0
00003127: SHL
00003128: SUB
00003129: DUP4
0000312a: AND
0000312b: SWAP1
0000312c: PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b
0000314d: SWAP1
0000314e: PUSH1 0x00
00003150: SWAP1
00003151: LOG2
00003152: DUP1
00003153: MLOAD
00003154: ISZERO
00003155: PUSH2 0x3162
00003158: JUMPI
00003159: PUSH2 0x0bdb
0000315c: DUP3
0000315d: DUP3
0000315e: PUSH2 0x3759
00003161: JUMP
00003162: JUMPDEST
00003163: PUSH2 0x0e90
00003166: PUSH2 0x37cf
00003169: JUMP
0000316a: JUMPDEST
0000316b: PUSH1 0x00
0000316d: DUP1
0000316e: PUSH1 0x20
00003170: PUSH1 0x00
00003172: DUP5
00003173: MLOAD
00003174: PUSH1 0x20
00003176: DUP7
00003177: ADD
00003178: PUSH1 0x00
0000317a: DUP9
0000317b: GAS
0000317c: CALL
0000317d: DUP1
0000317e: PUSH2 0x318d
00003181: JUMPI
00003182: PUSH1 0x40
00003184: MLOAD
00003185: RETURNDATASIZE
00003186: PUSH1 0x00
00003188: DUP3
00003189: RETURNDATACOPY
0000318a: RETURNDATASIZE
0000318b: DUP2
0000318c: REVERT
0000318d: JUMPDEST
0000318e: POP
0000318f: POP
00003190: PUSH1 0x00
00003192: MLOAD
00003193: RETURNDATASIZE
00003194: SWAP2
00003195: POP
00003196: DUP2
00003197: ISZERO
00003198: PUSH2 0x31a5
0000319b: JUMPI
0000319c: DUP1
0000319d: PUSH1 0x01
0000319f: EQ
000031a0: ISZERO
000031a1: PUSH2 0x31b2
000031a4: JUMP
000031a5: JUMPDEST
000031a6: PUSH1 0x01
000031a8: PUSH1 0x01
000031aa: PUSH1 0xa0
000031ac: SHL
000031ad: SUB
000031ae: DUP5
000031af: AND
000031b0: EXTCODESIZE
000031b1: ISZERO
000031b2: JUMPDEST
000031b3: ISZERO
000031b4: PUSH2 0x0ba2
000031b7: JUMPI
000031b8: PUSH1 0x40
000031ba: MLOAD
000031bb: PUSH4 0x5274afe7
000031c0: PUSH1 0xe0
000031c2: SHL
000031c3: DUP2
000031c4: MSTORE
000031c5: PUSH1 0x01
000031c7: PUSH1 0x01
000031c9: PUSH1 0xa0
000031cb: SHL
000031cc: SUB
000031cd: DUP6
000031ce: AND
000031cf: PUSH1 0x04
000031d1: DUP3
000031d2: ADD
000031d3: MSTORE
000031d4: PUSH1 0x24
000031d6: ADD
000031d7: PUSH2 0x1380
000031da: JUMP
000031db: JUMPDEST
000031dc: PUSH1 0x00
000031de: DUP1
000031df: SLOAD
000031e0: PUSH1 0x40
000031e2: DUP1
000031e3: MLOAD
000031e4: PUSH1 0x60
000031e6: DUP2
000031e7: ADD
000031e8: SWAP1
000031e9: SWAP2
000031ea: MSTORE
000031eb: DUP3
000031ec: SWAP1
000031ed: DUP1
000031ee: DUP8
000031ef: PUSH1 0x03
000031f1: DUP2
000031f2: GT
000031f3: ISZERO
000031f4: PUSH2 0x31ff
000031f7: JUMPI
000031f8: PUSH2 0x31ff
000031fb: PUSH2 0x40cb
000031fe: JUMP
000031ff: JUMPDEST
00003200: DUP2
00003201: MSTORE
00003202: PUSH1 0x01
00003204: PUSH1 0x01
00003206: PUSH1 0xa0
00003208: SHL
00003209: SUB
0000320a: DUP8
0000320b: AND
0000320c: PUSH1 0x20
0000320e: DUP1
0000320f: DUP4
00003210: ADD
00003211: SWAP2
00003212: SWAP1
00003213: SWAP2
00003214: MSTORE
00003215: PUSH1 0x40
00003217: SWAP1
00003218: SWAP2
00003219: ADD
0000321a: DUP7
0000321b: SWAP1
0000321c: MSTORE
0000321d: DUP3
0000321e: SLOAD
0000321f: PUSH1 0x01
00003221: DUP2
00003222: DUP2
00003223: ADD
00003224: DUP6
00003225: SSTORE
00003226: PUSH1 0x00
00003228: SWAP5
00003229: DUP6
0000322a: MSTORE
0000322b: SWAP2
0000322c: SWAP1
0000322d: SWAP4
0000322e: KECCAK256
0000322f: DUP3
00003230: MLOAD
00003231: PUSH1 0x02
00003233: SWAP1
00003234: SWAP5
00003235: MUL
00003236: ADD
00003237: DUP1
00003238: SLOAD
00003239: SWAP3
0000323a: SWAP4
0000323b: SWAP1
0000323c: SWAP3
0000323d: SWAP1
0000323e: SWAP2
0000323f: DUP4
00003240: SWAP2
00003241: PUSH1 0xff
00003243: NOT
00003244: AND
00003245: SWAP1
00003246: DUP4
00003247: PUSH1 0x03
00003249: DUP2
0000324a: GT
0000324b: ISZERO
0000324c: PUSH2 0x3257
0000324f: JUMPI
00003250: PUSH2 0x3257
00003253: PUSH2 0x40cb
00003256: JUMP
00003257: JUMPDEST
00003258: MUL
00003259: OR
0000325a: SWAP1
0000325b: SSTORE
0000325c: POP
0000325d: PUSH1 0x20
0000325f: DUP3
00003260: ADD
00003261: MLOAD
00003262: DUP2
00003263: SLOAD
00003264: PUSH1 0x01
00003266: PUSH1 0x01
00003268: PUSH1 0xa0
0000326a: SHL
0000326b: SUB
0000326c: SWAP1
0000326d: SWAP2
0000326e: AND
0000326f: PUSH2 0x0100
00003272: MUL
00003273: PUSH2 0x0100
00003276: PUSH1 0x01
00003278: PUSH1 0xa8
0000327a: SHL
0000327b: SUB
0000327c: NOT
0000327d: SWAP1
0000327e: SWAP2
0000327f: AND
00003280: OR
00003281: DUP2
00003282: SSTORE
00003283: PUSH1 0x40
00003285: SWAP1
00003286: SWAP2
00003287: ADD
00003288: MLOAD
00003289: PUSH1 0x01
0000328b: SWAP1
0000328c: SWAP2
0000328d: ADD
0000328e: SSTORE
0000328f: PUSH1 0x00
00003291: DUP6
00003292: PUSH1 0x03
00003294: DUP2
00003295: GT
00003296: ISZERO
00003297: PUSH2 0x32a2
0000329a: JUMPI
0000329b: PUSH2 0x32a2
0000329e: PUSH2 0x40cb
000032a1: JUMP
000032a2: JUMPDEST
000032a3: SUB
000032a4: PUSH2 0x32eb
000032a7: JUMPI
000032a8: PUSH1 0x00
000032aa: DUP1
000032ab: MSTORE
000032ac: PUSH1 0x01
000032ae: PUSH1 0x20
000032b0: MSTORE
000032b1: PUSH32 0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49
000032d2: DUP1
000032d3: SLOAD
000032d4: PUSH4 0xffffffff
000032d9: NOT
000032da: AND
000032db: PUSH4 0xffffffff
000032e0: DUP4
000032e1: AND
000032e2: OR
000032e3: SWAP1
000032e4: SSTORE
000032e5: SWAP1
000032e6: POP
000032e7: PUSH2 0x24fc
000032ea: JUMP
000032eb: JUMPDEST
000032ec: PUSH1 0x01
000032ee: PUSH1 0x01
000032f0: PUSH1 0xa0
000032f2: SHL
000032f3: SUB
000032f4: DUP5
000032f5: AND
000032f6: PUSH2 0x3312
000032f9: JUMPI
000032fa: PUSH1 0x40
000032fc: MLOAD
000032fd: PUSH4 0xdc2e5e8d
00003302: PUSH1 0xe0
00003304: SHL
00003305: DUP2
00003306: MSTORE
00003307: PUSH1 0x04
00003309: ADD
0000330a: PUSH1 0x40
0000330c: MLOAD
0000330d: DUP1
0000330e: SWAP2
0000330f: SUB
00003310: SWAP1
00003311: REVERT
00003312: JUMPDEST
00003313: PUSH1 0x01
00003315: DUP6
00003316: PUSH1 0x03
00003318: DUP2
00003319: GT
0000331a: ISZERO
0000331b: PUSH2 0x3326
0000331e: JUMPI
0000331f: PUSH2 0x3326
00003322: PUSH2 0x40cb
00003325: JUMP
00003326: JUMPDEST
00003327: SUB
00003328: PUSH2 0x335d
0000332b: JUMPI
0000332c: PUSH1 0x01
0000332e: PUSH1 0x01
00003330: PUSH1 0xa0
00003332: SHL
00003333: SUB
00003334: DUP5
00003335: AND
00003336: PUSH1 0x00
00003338: SWAP1
00003339: DUP2
0000333a: MSTORE
0000333b: PUSH1 0x01
0000333d: PUSH1 0x20
0000333f: MSTORE
00003340: PUSH1 0x40
00003342: SWAP1
00003343: KECCAK256
00003344: DUP1
00003345: SLOAD
00003346: PUSH4 0xffffffff
0000334b: NOT
0000334c: AND
0000334d: PUSH4 0xffffffff
00003352: DUP4
00003353: AND
00003354: OR
00003355: SWAP1
00003356: SSTORE
00003357: SWAP1
00003358: POP
00003359: PUSH2 0x24fc
0000335c: JUMP
0000335d: JUMPDEST
0000335e: PUSH1 0x01
00003360: PUSH1 0x01
00003362: PUSH1 0xa0
00003364: SHL
00003365: SUB
00003366: SWAP4
00003367: SWAP1
00003368: SWAP4
00003369: AND
0000336a: PUSH1 0x00
0000336c: SWAP1
0000336d: DUP2
0000336e: MSTORE
0000336f: PUSH1 0x02
00003371: PUSH1 0x20
00003373: SWAP1
00003374: DUP2
00003375: MSTORE
00003376: PUSH1 0x40
00003378: DUP1
00003379: DUP4
0000337a: KECCAK256
0000337b: SWAP5
0000337c: DUP4
0000337d: MSTORE
0000337e: SWAP4
0000337f: SWAP1
00003380: MSTORE
00003381: SWAP2
00003382: SWAP1
00003383: SWAP2
00003384: KECCAK256
00003385: DUP1
00003386: SLOAD
00003387: PUSH4 0xffffffff
0000338c: NOT
0000338d: AND
0000338e: PUSH4 0xffffffff
00003393: DUP5
00003394: AND
00003395: OR
00003396: SWAP1
00003397: SSTORE
00003398: POP
00003399: SWAP2
0000339a: SWAP1
0000339b: POP
0000339c: JUMP
0000339d: JUMPDEST
0000339e: PUSH1 0x40
000033a0: MLOAD
000033a1: PUSH1 0x01
000033a3: PUSH1 0x01
000033a5: PUSH1 0xa0
000033a7: SHL
000033a8: SUB
000033a9: DUP4
000033aa: DUP2
000033ab: AND
000033ac: PUSH1 0x24
000033ae: DUP4
000033af: ADD
000033b0: MSTORE
000033b1: PUSH1 0x44
000033b3: DUP3
000033b4: ADD
000033b5: DUP4
000033b6: SWAP1
000033b7: MSTORE
000033b8: PUSH2 0x0bdb
000033bb: SWAP2
000033bc: DUP6
000033bd: SWAP2
000033be: DUP3
000033bf: AND
000033c0: SWAP1
000033c1: PUSH4 0xa9059cbb
000033c6: SWAP1
000033c7: PUSH1 0x64
000033c9: ADD
000033ca: PUSH2 0x2497
000033cd: JUMP
000033ce: JUMPDEST
000033cf: PUSH1 0x00
000033d1: DUP1
000033d2: MLOAD
000033d3: PUSH1 0x20
000033d5: PUSH2 0x46ed
000033d8: DUP4
000033d9: CODECOPY
000033da: DUP2
000033db: MLOAD
000033dc: SWAP2
000033dd: MSTORE
000033de: SLOAD
000033df: PUSH1 0xff
000033e1: AND
000033e2: PUSH2 0x20f9
000033e5: JUMPI
000033e6: PUSH1 0x40
000033e8: MLOAD
000033e9: PUSH4 0x8dfc202b
000033ee: PUSH1 0xe0
000033f0: SHL
000033f1: DUP2
000033f2: MSTORE
000033f3: PUSH1 0x04
000033f5: ADD
000033f6: PUSH1 0x40
000033f8: MLOAD
000033f9: DUP1
000033fa: SWAP2
000033fb: SUB
000033fc: SWAP1
000033fd: REVERT
000033fe: JUMPDEST
000033ff: PUSH1 0x00
00003401: PUSH2 0x340d
00003404: DUP3
00003405: PUSH1 0x20
00003407: ADD
00003408: MLOAD
00003409: PUSH2 0x1869
0000340c: JUMP
0000340d: JUMPDEST
0000340e: SWAP1
0000340f: POP
00003410: PUSH1 0x00
00003412: PUSH2 0x3423
00003415: DUP4
00003416: PUSH1 0x20
00003418: ADD
00003419: MLOAD
0000341a: DUP5
0000341b: PUSH1 0x40
0000341d: ADD
0000341e: MLOAD
0000341f: PUSH2 0x2959
00003422: JUMP
00003423: JUMPDEST
00003424: SWAP1
00003425: POP
00003426: PUSH1 0x00
00003428: DUP2
00003429: DUP5
0000342a: PUSH1 0x40
0000342c: ADD
0000342d: MLOAD
0000342e: PUSH2 0x3437
00003431: SWAP2
00003432: SWAP1
00003433: PUSH2 0x439d
00003436: JUMP
00003437: JUMPDEST
00003438: SWAP1
00003439: POP
0000343a: PUSH1 0x01
0000343c: PUSH1 0x00
0000343e: DUP5
0000343f: MLOAD
00003440: PUSH1 0x03
00003442: DUP2
00003443: GT
00003444: ISZERO
00003445: PUSH2 0x3450
00003448: JUMPI
00003449: PUSH2 0x3450
0000344c: PUSH2 0x40cb
0000344f: JUMP
00003450: JUMPDEST
00003451: SUB
00003452: PUSH2 0x3485
00003455: JUMPI
00003456: DUP5
00003457: MLOAD
00003458: PUSH1 0x40
0000345a: MLOAD
0000345b: PUSH1 0x00
0000345d: SWAP2
0000345e: PUSH1 0x01
00003460: PUSH1 0x01
00003462: PUSH1 0xa0
00003464: SHL
00003465: SUB
00003466: AND
00003467: SWAP1
00003468: DUP5
00003469: ISZERO
0000346a: PUSH2 0x08fc
0000346d: MUL
0000346e: SWAP1
0000346f: DUP6
00003470: SWAP1
00003471: DUP5
00003472: DUP2
00003473: DUP2
00003474: DUP2
00003475: DUP6
00003476: DUP9
00003477: DUP9
00003478: CALL
00003479: SWAP6
0000347a: POP
0000347b: PUSH2 0x3506
0000347e: SWAP5
0000347f: POP
00003480: POP
00003481: POP
00003482: POP
00003483: POP
00003484: JUMP
00003485: JUMPDEST
00003486: PUSH1 0x01
00003488: DUP5
00003489: MLOAD
0000348a: PUSH1 0x03
0000348c: DUP2
0000348d: GT
0000348e: ISZERO
0000348f: PUSH2 0x349a
00003492: JUMPI
00003493: PUSH2 0x349a
00003496: PUSH2 0x40cb
00003499: JUMP
0000349a: JUMPDEST
0000349b: SUB
0000349c: PUSH2 0x3502
0000349f: JUMPI
000034a0: DUP5
000034a1: MLOAD
000034a2: PUSH1 0x40
000034a4: DUP1
000034a5: MLOAD
000034a6: PUSH1 0x01
000034a8: PUSH1 0x01
000034aa: PUSH1 0xa0
000034ac: SHL
000034ad: SUB
000034ae: SWAP3
000034af: DUP4
000034b0: AND
000034b1: PUSH1 0x24
000034b3: DUP3
000034b4: ADD
000034b5: MSTORE
000034b6: PUSH1 0x44
000034b8: DUP1
000034b9: DUP3
000034ba: ADD
000034bb: DUP7
000034bc: SWAP1
000034bd: MSTORE
000034be: DUP3
000034bf: MLOAD
000034c0: DUP1
000034c1: DUP4
000034c2: SUB
000034c3: SWAP1
000034c4: SWAP2
000034c5: ADD
000034c6: DUP2
000034c7: MSTORE
000034c8: PUSH1 0x64
000034ca: SWAP1
000034cb: SWAP2
000034cc: ADD
000034cd: SWAP1
000034ce: SWAP2
000034cf: MSTORE
000034d0: PUSH1 0x20
000034d2: DUP1
000034d3: DUP3
000034d4: ADD
000034d5: DUP1
000034d6: MLOAD
000034d7: PUSH1 0x01
000034d9: PUSH1 0x01
000034db: PUSH1 0xe0
000034dd: SHL
000034de: SUB
000034df: AND
000034e0: PUSH4 0xa9059cbb
000034e5: PUSH1 0xe0
000034e7: SHL
000034e8: OR
000034e9: SWAP1
000034ea: MSTORE
000034eb: DUP7
000034ec: ADD
000034ed: MLOAD
000034ee: SWAP1
000034ef: SWAP2
000034f0: PUSH2 0x34fa
000034f3: SWAP2
000034f4: AND
000034f5: DUP3
000034f6: PUSH2 0x37ee
000034f9: JUMP
000034fa: JUMPDEST
000034fb: SWAP2
000034fc: POP
000034fd: POP
000034fe: PUSH2 0x3506
00003501: JUMP
00003502: JUMPDEST
00003503: POP
00003504: PUSH1 0x00
00003506: JUMPDEST
00003507: DUP1
00003508: ISZERO
00003509: PUSH2 0x35c9
0000350c: JUMPI
0000350d: DUP5
0000350e: MLOAD
0000350f: PUSH1 0x01
00003511: PUSH1 0x01
00003513: PUSH1 0xa0
00003515: SHL
00003516: SUB
00003517: AND
00003518: PUSH2 0x3520
0000351b: DUP7
0000351c: PUSH2 0x28dc
0000351f: JUMP
00003520: JUMPDEST
00003521: PUSH1 0x40
00003523: MLOAD
00003524: PUSH32 0x6a65a945f1306f9bb3d4e3ce63aa367de6976a375de002492404554392c2460e
00003545: SWAP1
00003546: PUSH1 0x00
00003548: SWAP1
00003549: LOG3
0000354a: DUP3
0000354b: ISZERO
0000354c: PUSH2 0x25d5
0000354f: JUMPI
00003550: PUSH1 0x20
00003552: DUP1
00003553: DUP7
00003554: ADD
00003555: MLOAD
00003556: PUSH4 0xffffffff
0000355b: AND
0000355c: PUSH1 0x00
0000355e: SWAP1
0000355f: DUP2
00003560: MSTORE
00003561: PUSH1 0x0b
00003563: SWAP1
00003564: SWAP2
00003565: MSTORE
00003566: PUSH1 0x40
00003568: DUP2
00003569: KECCAK256
0000356a: DUP1
0000356b: SLOAD
0000356c: DUP6
0000356d: SWAP3
0000356e: SWAP1
0000356f: PUSH2 0x3579
00003572: SWAP1
00003573: DUP5
00003574: SWAP1
00003575: PUSH2 0x44d5
00003578: JUMP
00003579: JUMPDEST
0000357a: SWAP3
0000357b: POP
0000357c: POP
0000357d: DUP2
0000357e: SWAP1
0000357f: SSTORE
00003580: POP
00003581: DUP5
00003582: PUSH1 0x20
00003584: ADD
00003585: MLOAD
00003586: PUSH4 0xffffffff
0000358b: AND
0000358c: PUSH32 0x34658d4aa4a80fa713a0f3a04329f39177b5bea34e8dcba253600ee5ade6c654
000035ad: DUP5
000035ae: PUSH1 0x40
000035b0: MLOAD
000035b1: PUSH2 0x35bc
000035b4: SWAP2
000035b5: DUP2
000035b6: MSTORE
000035b7: PUSH1 0x20
000035b9: ADD
000035ba: SWAP1
000035bb: JUMP
000035bc: JUMPDEST
000035bd: PUSH1 0x40
000035bf: MLOAD
000035c0: DUP1
000035c1: SWAP2
000035c2: SUB
000035c3: SWAP1
000035c4: LOG2
000035c5: PUSH2 0x10d4
000035c8: JUMP
000035c9: JUMPDEST
000035ca: PUSH1 0x00
000035cc: PUSH2 0x35d4
000035cf: DUP7
000035d0: PUSH2 0x28dc
000035d3: JUMP
000035d4: JUMPDEST
000035d5: PUSH1 0x00
000035d7: DUP2
000035d8: DUP2
000035d9: MSTORE
000035da: PUSH1 0x09
000035dc: PUSH1 0x20
000035de: MSTORE
000035df: PUSH1 0x40
000035e1: SWAP1
000035e2: DUP2
000035e3: SWAP1
000035e4: KECCAK256
000035e5: TIMESTAMP
000035e6: SWAP1
000035e7: SSTORE
000035e8: MLOAD
000035e9: SWAP1
000035ea: SWAP2
000035eb: POP
000035ec: DUP2
000035ed: SWAP1
000035ee: PUSH32 0xedf8120f63daf877f6cb9aa7a3e21724c4532681d4afd77a45561904f1a04599
0000360f: SWAP1
00003610: PUSH2 0x364f
00003613: SWAP1
00003614: DUP10
00003615: SWAP1
00003616: DUP2
00003617: MLOAD
00003618: PUSH1 0x01
0000361a: PUSH1 0x01
0000361c: PUSH1 0xa0
0000361e: SHL
0000361f: SUB
00003620: AND
00003621: DUP2
00003622: MSTORE
00003623: PUSH1 0x20
00003625: DUP1
00003626: DUP4
00003627: ADD
00003628: MLOAD
00003629: PUSH4 0xffffffff
0000362e: AND
0000362f: SWAP1
00003630: DUP3
00003631: ADD
00003632: MSTORE
00003633: PUSH1 0x40
00003635: DUP1
00003636: DUP4
00003637: ADD
00003638: MLOAD
00003639: SWAP1
0000363a: DUP3
0000363b: ADD
0000363c: MSTORE
0000363d: PUSH1 0x60
0000363f: SWAP2
00003640: DUP3
00003641: ADD
00003642: MLOAD
00003643: SWAP2
00003644: DUP2
00003645: ADD
00003646: SWAP2
00003647: SWAP1
00003648: SWAP2
00003649: MSTORE
0000364a: PUSH1 0x80
0000364c: ADD
0000364d: SWAP1
0000364e: JUMP
0000364f: JUMPDEST
00003650: PUSH1 0x40
00003652: MLOAD
00003653: DUP1
00003654: SWAP2
00003655: SUB
00003656: SWAP1
00003657: LOG2
00003658: PUSH1 0x40
0000365a: MLOAD
0000365b: DUP2
0000365c: SWAP1
0000365d: PUSH32 0xd63a18c6858559d79659151118b33c6ad7cf4f7735b64fe9dbd85c509e11a117
0000367e: SWAP1
0000367f: PUSH1 0x00
00003681: SWAP1
00003682: LOG2
00003683: POP
00003684: POP
00003685: POP
00003686: POP
00003687: POP
00003688: POP
00003689: JUMP
0000368a: JUMPDEST
0000368b: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00
000036ac: SLOAD
000036ad: PUSH1 0x01
000036af: PUSH1 0x40
000036b1: SHL
000036b2: SWAP1
000036b3: DIV
000036b4: PUSH1 0xff
000036b6: AND
000036b7: PUSH2 0x20f9
000036ba: JUMPI
000036bb: PUSH1 0x40
000036bd: MLOAD
000036be: PUSH4 0x1afcd79f
000036c3: PUSH1 0xe3
000036c5: SHL
000036c6: DUP2
000036c7: MSTORE
000036c8: PUSH1 0x04
000036ca: ADD
000036cb: PUSH1 0x40
000036cd: MLOAD
000036ce: DUP1
000036cf: SWAP2
000036d0: SUB
000036d1: SWAP1
000036d2: REVERT
000036d3: JUMPDEST
000036d4: PUSH2 0x36db
000036d7: PUSH2 0x368a
000036da: JUMP
000036db: JUMPDEST
000036dc: PUSH1 0x00
000036de: DUP1
000036df: MLOAD
000036e0: PUSH1 0x20
000036e2: PUSH2 0x46ed
000036e5: DUP4
000036e6: CODECOPY
000036e7: DUP2
000036e8: MLOAD
000036e9: SWAP2
000036ea: MSTORE
000036eb: DUP1
000036ec: SLOAD
000036ed: PUSH1 0xff
000036ef: NOT
000036f0: AND
000036f1: SWAP1
000036f2: SSTORE
000036f3: JUMP
000036f4: JUMPDEST
000036f5: DUP1
000036f6: PUSH1 0x01
000036f8: PUSH1 0x01
000036fa: PUSH1 0xa0
000036fc: SHL
000036fd: SUB
000036fe: AND
000036ff: EXTCODESIZE
00003700: PUSH1 0x00
00003702: SUB
00003703: PUSH2 0x372a
00003706: JUMPI
00003707: PUSH1 0x40
00003709: MLOAD
0000370a: PUSH4 0x4c9c8ce3
0000370f: PUSH1 0xe0
00003711: SHL
00003712: DUP2
00003713: MSTORE
00003714: PUSH1 0x01
00003716: PUSH1 0x01
00003718: PUSH1 0xa0
0000371a: SHL
0000371b: SUB
0000371c: DUP3
0000371d: AND
0000371e: PUSH1 0x04
00003720: DUP3
00003721: ADD
00003722: MSTORE
00003723: PUSH1 0x24
00003725: ADD
00003726: PUSH2 0x1380
00003729: JUMP
0000372a: JUMPDEST
0000372b: PUSH1 0x00
0000372d: DUP1
0000372e: MLOAD
0000372f: PUSH1 0x20
00003731: PUSH2 0x46ad
00003734: DUP4
00003735: CODECOPY
00003736: DUP2
00003737: MLOAD
00003738: SWAP2
00003739: MSTORE
0000373a: DUP1
0000373b: SLOAD
0000373c: PUSH1 0x01
0000373e: PUSH1 0x01
00003740: PUSH1 0xa0
00003742: SHL
00003743: SUB
00003744: NOT
00003745: AND
00003746: PUSH1 0x01
00003748: PUSH1 0x01
0000374a: PUSH1 0xa0
0000374c: SHL
0000374d: SUB
0000374e: SWAP3
0000374f: SWAP1
00003750: SWAP3
00003751: AND
00003752: SWAP2
00003753: SWAP1
00003754: SWAP2
00003755: OR
00003756: SWAP1
00003757: SSTORE
00003758: JUMP
00003759: JUMPDEST
0000375a: PUSH1 0x60
0000375c: PUSH1 0x00
0000375e: DUP1
0000375f: DUP5
00003760: PUSH1 0x01
00003762: PUSH1 0x01
00003764: PUSH1 0xa0
00003766: SHL
00003767: SUB
00003768: AND
00003769: DUP5
0000376a: PUSH1 0x40
0000376c: MLOAD
0000376d: PUSH2 0x3776
00003770: SWAP2
00003771: SWAP1
00003772: PUSH2 0x4690
00003775: JUMP
00003776: JUMPDEST
00003777: PUSH1 0x00
00003779: PUSH1 0x40
0000377b: MLOAD
0000377c: DUP1
0000377d: DUP4
0000377e: SUB
0000377f: DUP2
00003780: DUP6
00003781: GAS
00003782: DELEGATECALL
00003783: SWAP2
00003784: POP
00003785: POP
00003786: RETURNDATASIZE
00003787: DUP1
00003788: PUSH1 0x00
0000378a: DUP2
0000378b: EQ
0000378c: PUSH2 0x37b1
0000378f: JUMPI
00003790: PUSH1 0x40
00003792: MLOAD
00003793: SWAP2
00003794: POP
00003795: PUSH1 0x1f
00003797: NOT
00003798: PUSH1 0x3f
0000379a: RETURNDATASIZE
0000379b: ADD
0000379c: AND
0000379d: DUP3
0000379e: ADD
0000379f: PUSH1 0x40
000037a1: MSTORE
000037a2: RETURNDATASIZE
000037a3: DUP3
000037a4: MSTORE
000037a5: RETURNDATASIZE
000037a6: PUSH1 0x00
000037a8: PUSH1 0x20
000037aa: DUP5
000037ab: ADD
000037ac: RETURNDATACOPY
000037ad: PUSH2 0x37b6
000037b0: JUMP
000037b1: JUMPDEST
000037b2: PUSH1 0x60
000037b4: SWAP2
000037b5: POP
000037b6: JUMPDEST
000037b7: POP
000037b8: SWAP2
000037b9: POP
000037ba: SWAP2
000037bb: POP
000037bc: PUSH2 0x37c6
000037bf: DUP6
000037c0: DUP4
000037c1: DUP4
000037c2: PUSH2 0x3891
000037c5: JUMP
000037c6: JUMPDEST
000037c7: SWAP6
000037c8: SWAP5
000037c9: POP
000037ca: POP
000037cb: POP
000037cc: POP
000037cd: POP
000037ce: JUMP
000037cf: JUMPDEST
000037d0: CALLVALUE
000037d1: ISZERO
000037d2: PUSH2 0x20f9
000037d5: JUMPI
000037d6: PUSH1 0x40
000037d8: MLOAD
000037d9: PUSH4 0xb398979f
000037de: PUSH1 0xe0
000037e0: SHL
000037e1: DUP2
000037e2: MSTORE
000037e3: PUSH1 0x04
000037e5: ADD
000037e6: PUSH1 0x40
000037e8: MLOAD
000037e9: DUP1
000037ea: SWAP2
000037eb: SUB
000037ec: SWAP1
000037ed: REVERT
000037ee: JUMPDEST
000037ef: PUSH1 0x00
000037f1: DUP1
000037f2: PUSH1 0x00
000037f4: DUP5
000037f5: PUSH1 0x01
000037f7: PUSH1 0x01
000037f9: PUSH1 0xa0
000037fb: SHL
000037fc: SUB
000037fd: AND
000037fe: DUP5
000037ff: PUSH1 0x40
00003801: MLOAD
00003802: PUSH2 0x380b
00003805: SWAP2
00003806: SWAP1
00003807: PUSH2 0x4690
0000380a: JUMP
0000380b: JUMPDEST
0000380c: PUSH1 0x00
0000380e: PUSH1 0x40
00003810: MLOAD
00003811: DUP1
00003812: DUP4
00003813: SUB
00003814: DUP2
00003815: PUSH1 0x00
00003817: DUP7
00003818: GAS
00003819: CALL
0000381a: SWAP2
0000381b: POP
0000381c: POP
0000381d: RETURNDATASIZE
0000381e: DUP1
0000381f: PUSH1 0x00
00003821: DUP2
00003822: EQ
00003823: PUSH2 0x3848
00003826: JUMPI
00003827: PUSH1 0x40
00003829: MLOAD
0000382a: SWAP2
0000382b: POP
0000382c: PUSH1 0x1f
0000382e: NOT
0000382f: PUSH1 0x3f
00003831: RETURNDATASIZE
00003832: ADD
00003833: AND
00003834: DUP3
00003835: ADD
00003836: PUSH1 0x40
00003838: MSTORE
00003839: RETURNDATASIZE
0000383a: DUP3
0000383b: MSTORE
0000383c: RETURNDATASIZE
0000383d: PUSH1 0x00
0000383f: PUSH1 0x20
00003841: DUP5
00003842: ADD
00003843: RETURNDATACOPY
00003844: PUSH2 0x384d
00003847: JUMP
00003848: JUMPDEST
00003849: PUSH1 0x60
0000384b: SWAP2
0000384c: POP
0000384d: JUMPDEST
0000384e: POP
0000384f: SWAP2
00003850: POP
00003851: SWAP2
00003852: POP
00003853: DUP2
00003854: DUP1
00003855: ISZERO
00003856: PUSH2 0x3877
00003859: JUMPI
0000385a: POP
0000385b: DUP1
0000385c: MLOAD
0000385d: ISZERO
0000385e: DUP1
0000385f: PUSH2 0x3877
00003862: JUMPI
00003863: POP
00003864: DUP1
00003865: DUP1
00003866: PUSH1 0x20
00003868: ADD
00003869: SWAP1
0000386a: MLOAD
0000386b: DUP2
0000386c: ADD
0000386d: SWAP1
0000386e: PUSH2 0x3877
00003871: SWAP2
00003872: SWAP1
00003873: PUSH2 0x4673
00003876: JUMP
00003877: JUMPDEST
00003878: DUP1
00003879: ISZERO
0000387a: PUSH2 0x37c6
0000387d: JUMPI
0000387e: POP
0000387f: POP
00003880: POP
00003881: POP
00003882: POP
00003883: PUSH1 0x01
00003885: PUSH1 0x01
00003887: PUSH1 0xa0
00003889: SHL
0000388a: SUB
0000388b: AND
0000388c: EXTCODESIZE
0000388d: ISZERO
0000388e: ISZERO
0000388f: SWAP1
00003890: JUMP
00003891: JUMPDEST
00003892: PUSH1 0x60
00003894: DUP3
00003895: PUSH2 0x38a6
00003898: JUMPI
00003899: PUSH2 0x38a1
0000389c: DUP3
0000389d: PUSH2 0x38ed
000038a0: JUMP
000038a1: JUMPDEST
000038a2: PUSH2 0x24fc
000038a5: JUMP
000038a6: JUMPDEST
000038a7: DUP2
000038a8: MLOAD
000038a9: ISZERO
000038aa: DUP1
000038ab: ISZERO
000038ac: PUSH2 0x38bd
000038af: JUMPI
000038b0: POP
000038b1: PUSH1 0x01
000038b3: PUSH1 0x01
000038b5: PUSH1 0xa0
000038b7: SHL
000038b8: SUB
000038b9: DUP5
000038ba: AND
000038bb: EXTCODESIZE
000038bc: ISZERO
000038bd: JUMPDEST
000038be: ISZERO
000038bf: PUSH2 0x38e6
000038c2: JUMPI
000038c3: PUSH1 0x40
000038c5: MLOAD
000038c6: PUSH4 0x9996b315
000038cb: PUSH1 0xe0
000038cd: SHL
000038ce: DUP2
000038cf: MSTORE
000038d0: PUSH1 0x01
000038d2: PUSH1 0x01
000038d4: PUSH1 0xa0
000038d6: SHL
000038d7: SUB
000038d8: DUP6
000038d9: AND
000038da: PUSH1 0x04
000038dc: DUP3
000038dd: ADD
000038de: MSTORE
000038df: PUSH1 0x24
000038e1: ADD
000038e2: PUSH2 0x1380
000038e5: JUMP
000038e6: JUMPDEST
000038e7: POP
000038e8: DUP1
000038e9: PUSH2 0x24fc
000038ec: JUMP
000038ed: JUMPDEST
000038ee: DUP1
000038ef: MLOAD
000038f0: ISZERO
000038f1: PUSH2 0x38fd
000038f4: JUMPI
000038f5: DUP1
000038f6: MLOAD
000038f7: DUP1
000038f8: DUP3
000038f9: PUSH1 0x20
000038fb: ADD
000038fc: REVERT
000038fd: JUMPDEST
000038fe: PUSH1 0x40
00003900: MLOAD
00003901: PUSH4 0xd6bda275
00003906: PUSH1 0xe0
00003908: SHL
00003909: DUP2
0000390a: MSTORE
0000390b: PUSH1 0x04
0000390d: ADD
0000390e: PUSH1 0x40
00003910: MLOAD
00003911: DUP1
00003912: SWAP2
00003913: SUB
00003914: SWAP1
00003915: REVERT
00003916: JUMPDEST
00003917: PUSH1 0x00
00003919: PUSH1 0x20
0000391b: DUP3
0000391c: DUP5
0000391d: SUB
0000391e: SLT
0000391f: ISZERO
00003920: PUSH2 0x3928
00003923: JUMPI
00003924: PUSH1 0x00
00003926: DUP1
00003927: REVERT
00003928: JUMPDEST
00003929: DUP2
0000392a: CALLDATALOAD
0000392b: PUSH1 0x01
0000392d: PUSH1 0x01
0000392f: PUSH1 0xe0
00003931: SHL
00003932: SUB
00003933: NOT
00003934: DUP2
00003935: AND
00003936: DUP2
00003937: EQ
00003938: PUSH2 0x24fc
0000393b: JUMPI
0000393c: PUSH1 0x00
0000393e: DUP1
0000393f: REVERT
00003940: JUMPDEST
00003941: PUSH1 0x01
00003943: PUSH1 0x01
00003945: PUSH1 0xa0
00003947: SHL
00003948: SUB
00003949: DUP2
0000394a: AND
0000394b: DUP2
0000394c: EQ
0000394d: PUSH2 0x09e3
00003950: JUMPI
00003951: PUSH1 0x00
00003953: DUP1
00003954: REVERT
00003955: JUMPDEST
00003956: PUSH1 0x00
00003958: PUSH1 0x20
0000395a: DUP3
0000395b: DUP5
0000395c: SUB
0000395d: SLT
0000395e: ISZERO
0000395f: PUSH2 0x3967
00003962: JUMPI
00003963: PUSH1 0x00
00003965: DUP1
00003966: REVERT
00003967: JUMPDEST
00003968: DUP2
00003969: CALLDATALOAD
0000396a: PUSH2 0x24fc
0000396d: DUP2
0000396e: PUSH2 0x3940
00003971: JUMP
00003972: JUMPDEST
00003973: PUSH4 0x4e487b71
00003978: PUSH1 0xe0
0000397a: SHL
0000397b: PUSH1 0x00
0000397d: MSTORE
0000397e: PUSH1 0x41
00003980: PUSH1 0x04
00003982: MSTORE
00003983: PUSH1 0x24
00003985: PUSH1 0x00
00003987: REVERT
00003988: JUMPDEST
00003989: PUSH1 0x40
0000398b: MLOAD
0000398c: PUSH1 0x1f
0000398e: DUP3
0000398f: ADD
00003990: PUSH1 0x1f
00003992: NOT
00003993: AND
00003994: DUP2
00003995: ADD
00003996: PUSH1 0x01
00003998: PUSH1 0x01
0000399a: PUSH1 0x40
0000399c: SHL
0000399d: SUB
0000399e: DUP2
0000399f: GT
000039a0: DUP3
000039a1: DUP3
000039a2: LT
000039a3: OR
000039a4: ISZERO
000039a5: PUSH2 0x39b0
000039a8: JUMPI
000039a9: PUSH2 0x39b0
000039ac: PUSH2 0x3972
000039af: JUMP
000039b0: JUMPDEST
000039b1: PUSH1 0x40
000039b3: MSTORE
000039b4: SWAP2
000039b5: SWAP1
000039b6: POP
000039b7: JUMP
000039b8: JUMPDEST
000039b9: PUSH1 0x00
000039bb: PUSH1 0x01
000039bd: PUSH1 0x01
000039bf: PUSH1 0x40
000039c1: SHL
000039c2: SUB
000039c3: DUP3
000039c4: GT
000039c5: ISZERO
000039c6: PUSH2 0x39d1
000039c9: JUMPI
000039ca: PUSH2 0x39d1
000039cd: PUSH2 0x3972
000039d0: JUMP
000039d1: JUMPDEST
000039d2: POP
000039d3: PUSH1 0x05
000039d5: SHL
000039d6: PUSH1 0x20
000039d8: ADD
000039d9: SWAP1
000039da: JUMP
000039db: JUMPDEST
000039dc: PUSH1 0x00
000039de: PUSH1 0x20
000039e0: DUP3
000039e1: DUP5
000039e2: SUB
000039e3: SLT
000039e4: ISZERO
000039e5: PUSH2 0x39ed
000039e8: JUMPI
000039e9: PUSH1 0x00
000039eb: DUP1
000039ec: REVERT
000039ed: JUMPDEST
000039ee: DUP2
000039ef: CALLDATALOAD
000039f0: PUSH1 0x01
000039f2: PUSH1 0x01
000039f4: PUSH1 0x40
000039f6: SHL
000039f7: SUB
000039f8: DUP2
000039f9: GT
000039fa: ISZERO
000039fb: PUSH2 0x3a03
000039fe: JUMPI
000039ff: PUSH1 0x00
00003a01: DUP1
00003a02: REVERT
00003a03: JUMPDEST
00003a04: DUP3
00003a05: ADD
00003a06: PUSH1 0x1f
00003a08: DUP2
00003a09: ADD
00003a0a: DUP5
00003a0b: SGT
00003a0c: PUSH2 0x3a14
00003a0f: JUMPI
00003a10: PUSH1 0x00
00003a12: DUP1
00003a13: REVERT
00003a14: JUMPDEST
00003a15: DUP1
00003a16: CALLDATALOAD
00003a17: PUSH2 0x3a27
00003a1a: PUSH2 0x3a22
00003a1d: DUP3
00003a1e: PUSH2 0x39b8
00003a21: JUMP
00003a22: JUMPDEST
00003a23: PUSH2 0x3988
00003a26: JUMP
00003a27: JUMPDEST
00003a28: DUP1
00003a29: DUP3
00003a2a: DUP3
00003a2b: MSTORE
00003a2c: PUSH1 0x20
00003a2e: DUP3
00003a2f: ADD
00003a30: SWAP2
00003a31: POP
00003a32: PUSH1 0x20
00003a34: DUP4
00003a35: PUSH1 0x05
00003a37: SHL
00003a38: DUP6
00003a39: ADD
00003a3a: ADD
00003a3b: SWAP3
00003a3c: POP
00003a3d: DUP7
00003a3e: DUP4
00003a3f: GT
00003a40: ISZERO
00003a41: PUSH2 0x3a49
00003a44: JUMPI
00003a45: PUSH1 0x00
00003a47: DUP1
00003a48: REVERT
00003a49: JUMPDEST
00003a4a: PUSH1 0x20
00003a4c: DUP5
00003a4d: ADD
00003a4e: SWAP4
00003a4f: POP
00003a50: JUMPDEST
00003a51: DUP3
00003a52: DUP5
00003a53: LT
00003a54: ISZERO
00003a55: PUSH2 0x172d
00003a58: JUMPI
00003a59: DUP4
00003a5a: CALLDATALOAD
00003a5b: DUP3
00003a5c: MSTORE
00003a5d: PUSH1 0x20
00003a5f: SWAP4
00003a60: DUP5
00003a61: ADD
00003a62: SWAP4
00003a63: SWAP1
00003a64: SWAP2
00003a65: ADD
00003a66: SWAP1
00003a67: PUSH2 0x3a50
00003a6a: JUMP
00003a6b: JUMPDEST
00003a6c: PUSH1 0x20
00003a6e: DUP1
00003a6f: DUP3
00003a70: MSTORE
00003a71: DUP3
00003a72: MLOAD
00003a73: DUP3
00003a74: DUP3
00003a75: ADD
00003a76: DUP2
00003a77: SWAP1
00003a78: MSTORE
00003a79: PUSH1 0x00
00003a7b: SWAP2
00003a7c: DUP5
00003a7d: ADD
00003a7e: SWAP1
00003a7f: PUSH1 0x40
00003a81: DUP5
00003a82: ADD
00003a83: SWAP1
00003a84: DUP4
00003a85: JUMPDEST
00003a86: DUP2
00003a87: DUP2
00003a88: LT
00003a89: ISZERO
00003a8a: PUSH2 0x3ac1
00003a8d: JUMPI
00003a8e: PUSH2 0x3aab
00003a91: DUP4
00003a92: DUP6
00003a93: MLOAD
00003a94: DUP1
00003a95: MLOAD
00003a96: DUP3
00003a97: MSTORE
00003a98: PUSH1 0x20
00003a9a: SWAP1
00003a9b: DUP2
00003a9c: ADD
00003a9d: MLOAD
00003a9e: PUSH1 0x01
00003aa0: PUSH1 0x01
00003aa2: PUSH1 0xa0
00003aa4: SHL
00003aa5: SUB
00003aa6: AND
00003aa7: SWAP2
00003aa8: ADD
00003aa9: MSTORE
00003aaa: JUMP
00003aab: JUMPDEST
00003aac: PUSH1 0x20
00003aae: SWAP4
00003aaf: SWAP1
00003ab0: SWAP4
00003ab1: ADD
00003ab2: SWAP3
00003ab3: PUSH1 0x40
00003ab5: SWAP3
00003ab6: SWAP1
00003ab7: SWAP3
00003ab8: ADD
00003ab9: SWAP2
00003aba: PUSH1 0x01
00003abc: ADD
00003abd: PUSH2 0x3a85
00003ac0: JUMP
00003ac1: JUMPDEST
00003ac2: POP
00003ac3: SWAP1
00003ac4: SWAP6
00003ac5: SWAP5
00003ac6: POP
00003ac7: POP
00003ac8: POP
00003ac9: POP
00003aca: POP
00003acb: JUMP
00003acc: JUMPDEST
00003acd: PUSH1 0x00
00003acf: PUSH1 0x20
00003ad1: DUP3
00003ad2: DUP5
00003ad3: SUB
00003ad4: SLT
00003ad5: ISZERO
00003ad6: PUSH2 0x3ade
00003ad9: JUMPI
00003ada: PUSH1 0x00
00003adc: DUP1
00003add: REVERT
00003ade: JUMPDEST
00003adf: POP
00003ae0: CALLDATALOAD
00003ae1: SWAP2
00003ae2: SWAP1
00003ae3: POP
00003ae4: JUMP
00003ae5: JUMPDEST
00003ae6: PUSH1 0x00
00003ae8: DUP1
00003ae9: PUSH1 0x40
00003aeb: DUP4
00003aec: DUP6
00003aed: SUB
00003aee: SLT
00003aef: ISZERO
00003af0: PUSH2 0x3af8
00003af3: JUMPI
00003af4: PUSH1 0x00
00003af6: DUP1
00003af7: REVERT
00003af8: JUMPDEST
00003af9: DUP3
00003afa: CALLDATALOAD
00003afb: SWAP2
00003afc: POP
00003afd: PUSH1 0x20
00003aff: DUP4
00003b00: ADD
00003b01: CALLDATALOAD
00003b02: PUSH2 0x3b0a
00003b05: DUP2
00003b06: PUSH2 0x3940
00003b09: JUMP
00003b0a: JUMPDEST
00003b0b: DUP1
00003b0c: SWAP2
00003b0d: POP
00003b0e: POP
00003b0f: SWAP3
00003b10: POP
00003b11: SWAP3
00003b12: SWAP1
00003b13: POP
00003b14: JUMP
00003b15: JUMPDEST
00003b16: PUSH1 0x00
00003b18: DUP1
00003b19: PUSH1 0x00
00003b1b: PUSH1 0x60
00003b1d: DUP5
00003b1e: DUP7
00003b1f: SUB
00003b20: SLT
00003b21: ISZERO
00003b22: PUSH2 0x3b2a
00003b25: JUMPI
00003b26: PUSH1 0x00
00003b28: DUP1
00003b29: REVERT
00003b2a: JUMPDEST
00003b2b: DUP4
00003b2c: CALLDATALOAD
00003b2d: PUSH1 0x04
00003b2f: DUP2
00003b30: LT
00003b31: PUSH2 0x3b39
00003b34: JUMPI
00003b35: PUSH1 0x00
00003b37: DUP1
00003b38: REVERT
00003b39: JUMPDEST
00003b3a: SWAP3
00003b3b: POP
00003b3c: PUSH1 0x20
00003b3e: DUP5
00003b3f: ADD
00003b40: CALLDATALOAD
00003b41: PUSH2 0x3b49
00003b44: DUP2
00003b45: PUSH2 0x3940
00003b48: JUMP
00003b49: JUMPDEST
00003b4a: SWAP3
00003b4b: SWAP6
00003b4c: SWAP3
00003b4d: SWAP5
00003b4e: POP
00003b4f: POP
00003b50: POP
00003b51: PUSH1 0x40
00003b53: SWAP2
00003b54: SWAP1
00003b55: SWAP2
00003b56: ADD
00003b57: CALLDATALOAD
00003b58: SWAP1
00003b59: JUMP
00003b5a: JUMPDEST
00003b5b: DUP1
00003b5c: CALLDATALOAD
00003b5d: PUSH4 0xffffffff
00003b62: DUP2
00003b63: AND
00003b64: DUP2
00003b65: EQ
00003b66: PUSH2 0x3b6e
00003b69: JUMPI
00003b6a: PUSH1 0x00
00003b6c: DUP1
00003b6d: REVERT
00003b6e: JUMPDEST
00003b6f: SWAP2
00003b70: SWAP1
00003b71: POP
00003b72: JUMP
00003b73: JUMPDEST
00003b74: PUSH1 0x00
00003b76: DUP1
00003b77: PUSH1 0x40
00003b79: DUP4
00003b7a: DUP6
00003b7b: SUB
00003b7c: SLT
00003b7d: ISZERO
00003b7e: PUSH2 0x3b86
00003b81: JUMPI
00003b82: PUSH1 0x00
00003b84: DUP1
00003b85: REVERT
00003b86: JUMPDEST
00003b87: PUSH2 0x3b8f
00003b8a: DUP4
00003b8b: PUSH2 0x3b5a
00003b8e: JUMP
00003b8f: JUMPDEST
00003b90: SWAP5
00003b91: PUSH1 0x20
00003b93: SWAP4
00003b94: SWAP1
00003b95: SWAP4
00003b96: ADD
00003b97: CALLDATALOAD
00003b98: SWAP4
00003b99: POP
00003b9a: POP
00003b9b: POP
00003b9c: JUMP
00003b9d: JUMPDEST
00003b9e: PUSH1 0x00
00003ba0: DUP1
00003ba1: DUP4
00003ba2: PUSH1 0x1f
00003ba4: DUP5
00003ba5: ADD
00003ba6: SLT
00003ba7: PUSH2 0x3baf
00003baa: JUMPI
00003bab: PUSH1 0x00
00003bad: DUP1
00003bae: REVERT
00003baf: JUMPDEST
00003bb0: POP
00003bb1: DUP2
00003bb2: CALLDATALOAD
00003bb3: PUSH1 0x01
00003bb5: PUSH1 0x01
00003bb7: PUSH1 0x40
00003bb9: SHL
00003bba: SUB
00003bbb: DUP2
00003bbc: GT
00003bbd: ISZERO
00003bbe: PUSH2 0x3bc6
00003bc1: JUMPI
00003bc2: PUSH1 0x00
00003bc4: DUP1
00003bc5: REVERT
00003bc6: JUMPDEST
00003bc7: PUSH1 0x20
00003bc9: DUP4
00003bca: ADD
00003bcb: SWAP2
00003bcc: POP
00003bcd: DUP4
00003bce: PUSH1 0x20
00003bd0: DUP3
00003bd1: DUP6
00003bd2: ADD
00003bd3: ADD
00003bd4: GT
00003bd5: ISZERO
00003bd6: PUSH2 0x3bde
00003bd9: JUMPI
00003bda: PUSH1 0x00
00003bdc: DUP1
00003bdd: REVERT
00003bde: JUMPDEST
00003bdf: SWAP3
00003be0: POP
00003be1: SWAP3
00003be2: SWAP1
00003be3: POP
00003be4: JUMP
00003be5: JUMPDEST
00003be6: PUSH1 0x00
00003be8: DUP1
00003be9: PUSH1 0x00
00003beb: DUP1
00003bec: PUSH1 0x00
00003bee: PUSH1 0x60
00003bf0: DUP7
00003bf1: DUP9
00003bf2: SUB
00003bf3: SLT
00003bf4: ISZERO
00003bf5: PUSH2 0x3bfd
00003bf8: JUMPI
00003bf9: PUSH1 0x00
00003bfb: DUP1
00003bfc: REVERT
00003bfd: JUMPDEST
00003bfe: DUP6
00003bff: CALLDATALOAD
00003c00: SWAP5
00003c01: POP
00003c02: PUSH1 0x20
00003c04: DUP7
00003c05: ADD
00003c06: CALLDATALOAD
00003c07: PUSH1 0x01
00003c09: PUSH1 0x01
00003c0b: PUSH1 0x40
00003c0d: SHL
00003c0e: SUB
00003c0f: DUP2
00003c10: GT
00003c11: ISZERO
00003c12: PUSH2 0x3c1a
00003c15: JUMPI
00003c16: PUSH1 0x00
00003c18: DUP1
00003c19: REVERT
00003c1a: JUMPDEST
00003c1b: PUSH2 0x3c26
00003c1e: DUP9
00003c1f: DUP3
00003c20: DUP10
00003c21: ADD
00003c22: PUSH2 0x3b9d
00003c25: JUMP
00003c26: JUMPDEST
00003c27: SWAP1
00003c28: SWAP6
00003c29: POP
00003c2a: SWAP4
00003c2b: POP
00003c2c: POP
00003c2d: PUSH1 0x40
00003c2f: DUP7
00003c30: ADD
00003c31: CALLDATALOAD
00003c32: PUSH1 0x01
00003c34: PUSH1 0x01
00003c36: PUSH1 0x40
00003c38: SHL
00003c39: SUB
00003c3a: DUP2
00003c3b: GT
00003c3c: ISZERO
00003c3d: PUSH2 0x3c45
00003c40: JUMPI
00003c41: PUSH1 0x00
00003c43: DUP1
00003c44: REVERT
00003c45: JUMPDEST
00003c46: PUSH2 0x3c51
00003c49: DUP9
00003c4a: DUP3
00003c4b: DUP10
00003c4c: ADD
00003c4d: PUSH2 0x3b9d
00003c50: JUMP
00003c51: JUMPDEST
00003c52: SWAP7
00003c53: SWAP10
00003c54: SWAP6
00003c55: SWAP9
00003c56: POP
00003c57: SWAP4
00003c58: SWAP7
00003c59: POP
00003c5a: SWAP3
00003c5b: SWAP5
00003c5c: SWAP4
00003c5d: SWAP3
00003c5e: POP
00003c5f: POP
00003c60: POP
00003c61: JUMP
00003c62: JUMPDEST
00003c63: PUSH1 0x00
00003c65: DUP1
00003c66: PUSH1 0x40
00003c68: DUP4
00003c69: DUP6
00003c6a: SUB
00003c6b: SLT
00003c6c: ISZERO
00003c6d: PUSH2 0x3c75
00003c70: JUMPI
00003c71: PUSH1 0x00
00003c73: DUP1
00003c74: REVERT
00003c75: JUMPDEST
00003c76: DUP3
00003c77: CALLDATALOAD
00003c78: PUSH2 0x3c80
00003c7b: DUP2
00003c7c: PUSH2 0x3940
00003c7f: JUMP
00003c80: JUMPDEST
00003c81: SWAP2
00003c82: POP
00003c83: PUSH1 0x20
00003c85: DUP4
00003c86: ADD
00003c87: CALLDATALOAD
00003c88: PUSH1 0x01
00003c8a: PUSH1 0x01
00003c8c: PUSH1 0x40
00003c8e: SHL
00003c8f: SUB
00003c90: DUP2
00003c91: GT
00003c92: ISZERO
00003c93: PUSH2 0x3c9b
00003c96: JUMPI
00003c97: PUSH1 0x00
00003c99: DUP1
00003c9a: REVERT
00003c9b: JUMPDEST
00003c9c: DUP4
00003c9d: ADD
00003c9e: PUSH1 0x1f
00003ca0: DUP2
00003ca1: ADD
00003ca2: DUP6
00003ca3: SGT
00003ca4: PUSH2 0x3cac
00003ca7: JUMPI
00003ca8: PUSH1 0x00
00003caa: DUP1
00003cab: REVERT
00003cac: JUMPDEST
00003cad: DUP1
00003cae: CALLDATALOAD
00003caf: PUSH1 0x01
00003cb1: PUSH1 0x01
00003cb3: PUSH1 0x40
00003cb5: SHL
00003cb6: SUB
00003cb7: DUP2
00003cb8: GT
00003cb9: ISZERO
00003cba: PUSH2 0x3cc5
00003cbd: JUMPI
00003cbe: PUSH2 0x3cc5
00003cc1: PUSH2 0x3972
00003cc4: JUMP
00003cc5: JUMPDEST
00003cc6: PUSH2 0x3cd8
00003cc9: PUSH1 0x1f
00003ccb: DUP3
00003ccc: ADD
00003ccd: PUSH1 0x1f
00003ccf: NOT
00003cd0: AND
00003cd1: PUSH1 0x20
00003cd3: ADD
00003cd4: PUSH2 0x3988
00003cd7: JUMP
00003cd8: JUMPDEST
00003cd9: DUP2
00003cda: DUP2
00003cdb: MSTORE
00003cdc: DUP7
00003cdd: PUSH1 0x20
00003cdf: DUP4
00003ce0: DUP6
00003ce1: ADD
00003ce2: ADD
00003ce3: GT
00003ce4: ISZERO
00003ce5: PUSH2 0x3ced
00003ce8: JUMPI
00003ce9: PUSH1 0x00
00003ceb: DUP1
00003cec: REVERT
00003ced: JUMPDEST
00003cee: DUP2
00003cef: PUSH1 0x20
00003cf1: DUP5
00003cf2: ADD
00003cf3: PUSH1 0x20
00003cf5: DUP4
00003cf6: ADD
00003cf7: CALLDATACOPY
00003cf8: PUSH1 0x00
00003cfa: PUSH1 0x20
00003cfc: DUP4
00003cfd: DUP4
00003cfe: ADD
00003cff: ADD
00003d00: MSTORE
00003d01: DUP1
00003d02: SWAP4
00003d03: POP
00003d04: POP
00003d05: POP
00003d06: POP
00003d07: SWAP3
00003d08: POP
00003d09: SWAP3
00003d0a: SWAP1
00003d0b: POP
00003d0c: JUMP
00003d0d: JUMPDEST
00003d0e: PUSH1 0x00
00003d10: DUP1
00003d11: PUSH1 0x00
00003d13: DUP1
00003d14: PUSH1 0x00
00003d16: DUP1
00003d17: PUSH1 0x00
00003d19: PUSH1 0xa0
00003d1b: DUP9
00003d1c: DUP11
00003d1d: SUB
00003d1e: SLT
00003d1f: ISZERO
00003d20: PUSH2 0x3d28
00003d23: JUMPI
00003d24: PUSH1 0x00
00003d26: DUP1
00003d27: REVERT
00003d28: JUMPDEST
00003d29: DUP8
00003d2a: CALLDATALOAD
00003d2b: PUSH2 0x3d33
00003d2e: DUP2
00003d2f: PUSH2 0x3940
00003d32: JUMP
00003d33: JUMPDEST
00003d34: SWAP7
00003d35: POP
00003d36: PUSH1 0x20
00003d38: DUP9
00003d39: ADD
00003d3a: CALLDATALOAD
00003d3b: SWAP6
00003d3c: POP
00003d3d: PUSH1 0x40
00003d3f: DUP9
00003d40: ADD
00003d41: CALLDATALOAD
00003d42: SWAP5
00003d43: POP
00003d44: PUSH1 0x60
00003d46: DUP9
00003d47: ADD
00003d48: CALLDATALOAD
00003d49: PUSH1 0x01
00003d4b: PUSH1 0x01
00003d4d: PUSH1 0x40
00003d4f: SHL
00003d50: SUB
00003d51: DUP2
00003d52: GT
00003d53: ISZERO
00003d54: PUSH2 0x3d5c
00003d57: JUMPI
00003d58: PUSH1 0x00
00003d5a: DUP1
00003d5b: REVERT
00003d5c: JUMPDEST
00003d5d: PUSH2 0x3d68
00003d60: DUP11
00003d61: DUP3
00003d62: DUP12
00003d63: ADD
00003d64: PUSH2 0x3b9d
00003d67: JUMP
00003d68: JUMPDEST
00003d69: SWAP1
00003d6a: SWAP6
00003d6b: POP
00003d6c: SWAP4
00003d6d: POP
00003d6e: POP
00003d6f: PUSH1 0x80
00003d71: DUP9
00003d72: ADD
00003d73: CALLDATALOAD
00003d74: PUSH1 0x01
00003d76: PUSH1 0x01
00003d78: PUSH1 0x40
00003d7a: SHL
00003d7b: SUB
00003d7c: DUP2
00003d7d: GT
00003d7e: ISZERO
00003d7f: PUSH2 0x3d87
00003d82: JUMPI
00003d83: PUSH1 0x00
00003d85: DUP1
00003d86: REVERT
00003d87: JUMPDEST
00003d88: PUSH2 0x3d93
00003d8b: DUP11
00003d8c: DUP3
00003d8d: DUP12
00003d8e: ADD
00003d8f: PUSH2 0x3b9d
00003d92: JUMP
00003d93: JUMPDEST
00003d94: SWAP9
00003d95: SWAP12
00003d96: SWAP8
00003d97: SWAP11
00003d98: POP
00003d99: SWAP6
00003d9a: SWAP9
00003d9b: POP
00003d9c: SWAP4
00003d9d: SWAP7
00003d9e: SWAP3
00003d9f: SWAP6
00003da0: SWAP3
00003da1: SWAP4
00003da2: POP
00003da3: POP
00003da4: POP
00003da5: JUMP
00003da6: JUMPDEST
00003da7: PUSH1 0x00
00003da9: DUP1
00003daa: DUP4
00003dab: PUSH1 0x1f
00003dad: DUP5
00003dae: ADD
00003daf: SLT
00003db0: PUSH2 0x3db8
00003db3: JUMPI
00003db4: PUSH1 0x00
00003db6: DUP1
00003db7: REVERT
00003db8: JUMPDEST
00003db9: POP
00003dba: DUP2
00003dbb: CALLDATALOAD
00003dbc: PUSH1 0x01
00003dbe: PUSH1 0x01
00003dc0: PUSH1 0x40
00003dc2: SHL
00003dc3: SUB
00003dc4: DUP2
00003dc5: GT
00003dc6: ISZERO
00003dc7: PUSH2 0x3dcf
00003dca: JUMPI
00003dcb: PUSH1 0x00
00003dcd: DUP1
00003dce: REVERT
00003dcf: JUMPDEST
00003dd0: PUSH1 0x20
00003dd2: DUP4
00003dd3: ADD
00003dd4: SWAP2
00003dd5: POP
00003dd6: DUP4
00003dd7: PUSH1 0x20
00003dd9: DUP3
00003dda: PUSH1 0x05
00003ddc: SHL
00003ddd: DUP6
00003dde: ADD
00003ddf: ADD
00003de0: GT
00003de1: ISZERO
00003de2: PUSH2 0x3bde
00003de5: JUMPI
00003de6: PUSH1 0x00
00003de8: DUP1
00003de9: REVERT
00003dea: JUMPDEST
00003deb: PUSH1 0x00
00003ded: DUP1
00003dee: PUSH1 0x00
00003df0: PUSH1 0x40
00003df2: DUP5
00003df3: DUP7
00003df4: SUB
00003df5: SLT
00003df6: ISZERO
00003df7: PUSH2 0x3dff
00003dfa: JUMPI
00003dfb: PUSH1 0x00
00003dfd: DUP1
00003dfe: REVERT
00003dff: JUMPDEST
00003e00: DUP4
00003e01: CALLDATALOAD
00003e02: PUSH2 0x3e0a
00003e05: DUP2
00003e06: PUSH2 0x3940
00003e09: JUMP
00003e0a: JUMPDEST
00003e0b: SWAP3
00003e0c: POP
00003e0d: PUSH1 0x20
00003e0f: DUP5
00003e10: ADD
00003e11: CALLDATALOAD
00003e12: PUSH1 0x01
00003e14: PUSH1 0x01
00003e16: PUSH1 0x40
00003e18: SHL
00003e19: SUB
00003e1a: DUP2
00003e1b: GT
00003e1c: ISZERO
00003e1d: PUSH2 0x3e25
00003e20: JUMPI
00003e21: PUSH1 0x00
00003e23: DUP1
00003e24: REVERT
00003e25: JUMPDEST
00003e26: PUSH2 0x3e31
00003e29: DUP7
00003e2a: DUP3
00003e2b: DUP8
00003e2c: ADD
00003e2d: PUSH2 0x3da6
00003e30: JUMP
00003e31: JUMPDEST
00003e32: SWAP5
00003e33: SWAP8
00003e34: SWAP1
00003e35: SWAP7
00003e36: POP
00003e37: SWAP4
00003e38: SWAP5
00003e39: POP
00003e3a: POP
00003e3b: POP
00003e3c: POP
00003e3d: JUMP
00003e3e: JUMPDEST
00003e3f: PUSH1 0x00
00003e41: DUP1
00003e42: PUSH1 0x40
00003e44: DUP4
00003e45: DUP6
00003e46: SUB
00003e47: SLT
00003e48: ISZERO
00003e49: PUSH2 0x3e51
00003e4c: JUMPI
00003e4d: PUSH1 0x00
00003e4f: DUP1
00003e50: REVERT
00003e51: JUMPDEST
00003e52: POP
00003e53: POP
00003e54: DUP1
00003e55: CALLDATALOAD
00003e56: SWAP3
00003e57: PUSH1 0x20
00003e59: SWAP1
00003e5a: SWAP2
00003e5b: ADD
00003e5c: CALLDATALOAD
00003e5d: SWAP2
00003e5e: POP
00003e5f: JUMP
00003e60: JUMPDEST
00003e61: PUSH1 0x00
00003e63: DUP1
00003e64: PUSH1 0x40
00003e66: DUP4
00003e67: DUP6
00003e68: SUB
00003e69: SLT
00003e6a: ISZERO
00003e6b: PUSH2 0x3e73
00003e6e: JUMPI
00003e6f: PUSH1 0x00
00003e71: DUP1
00003e72: REVERT
00003e73: JUMPDEST
00003e74: DUP3
00003e75: CALLDATALOAD
00003e76: PUSH2 0x3e7e
00003e79: DUP2
00003e7a: PUSH2 0x3940
00003e7d: JUMP
00003e7e: JUMPDEST
00003e7f: SWAP2
00003e80: POP
00003e81: PUSH1 0x20
00003e83: DUP4
00003e84: ADD
00003e85: CALLDATALOAD
00003e86: PUSH2 0x3b0a
00003e89: DUP2
00003e8a: PUSH2 0x3940
00003e8d: JUMP
00003e8e: JUMPDEST
00003e8f: PUSH1 0x00
00003e91: DUP1
00003e92: DUP4
00003e93: PUSH1 0x1f
00003e95: DUP5
00003e96: ADD
00003e97: SLT
00003e98: PUSH2 0x3ea0
00003e9b: JUMPI
00003e9c: PUSH1 0x00
00003e9e: DUP1
00003e9f: REVERT
00003ea0: JUMPDEST
00003ea1: POP
00003ea2: DUP2
00003ea3: CALLDATALOAD
00003ea4: PUSH1 0x01
00003ea6: PUSH1 0x01
00003ea8: PUSH1 0x40
00003eaa: SHL
00003eab: SUB
00003eac: DUP2
00003ead: GT
00003eae: ISZERO
00003eaf: PUSH2 0x3eb7
00003eb2: JUMPI
00003eb3: PUSH1 0x00
00003eb5: DUP1
00003eb6: REVERT
00003eb7: JUMPDEST
00003eb8: PUSH1 0x20
00003eba: DUP4
00003ebb: ADD
00003ebc: SWAP2
00003ebd: POP
00003ebe: DUP4
00003ebf: PUSH1 0x20
00003ec1: DUP3
00003ec2: PUSH1 0x07
00003ec4: SHL
00003ec5: DUP6
00003ec6: ADD
00003ec7: ADD
00003ec8: GT
00003ec9: ISZERO
00003eca: PUSH2 0x3bde
00003ecd: JUMPI
00003ece: PUSH1 0x00
00003ed0: DUP1
00003ed1: REVERT
00003ed2: JUMPDEST
00003ed3: PUSH1 0x00
00003ed5: DUP1
00003ed6: PUSH1 0x20
00003ed8: DUP4
00003ed9: DUP6
00003eda: SUB
00003edb: SLT
00003edc: ISZERO
00003edd: PUSH2 0x3ee5
00003ee0: JUMPI
00003ee1: PUSH1 0x00
00003ee3: DUP1
00003ee4: REVERT
00003ee5: JUMPDEST
00003ee6: DUP3
00003ee7: CALLDATALOAD
00003ee8: PUSH1 0x01
00003eea: PUSH1 0x01
00003eec: PUSH1 0x40
00003eee: SHL
00003eef: SUB
00003ef0: DUP2
00003ef1: GT
00003ef2: ISZERO
00003ef3: PUSH2 0x3efb
00003ef6: JUMPI
00003ef7: PUSH1 0x00
00003ef9: DUP1
00003efa: REVERT
00003efb: JUMPDEST
00003efc: PUSH2 0x3f07
00003eff: DUP6
00003f00: DUP3
00003f01: DUP7
00003f02: ADD
00003f03: PUSH2 0x3e8e
00003f06: JUMP
00003f07: JUMPDEST
00003f08: SWAP1
00003f09: SWAP7
00003f0a: SWAP1
00003f0b: SWAP6
00003f0c: POP
00003f0d: SWAP4
00003f0e: POP
00003f0f: POP
00003f10: POP
00003f11: POP
00003f12: JUMP
00003f13: JUMPDEST
00003f14: PUSH1 0x00
00003f16: DUP1
00003f17: DUP3
00003f18: DUP5
00003f19: SUB
00003f1a: PUSH1 0xc0
00003f1c: DUP2
00003f1d: SLT
00003f1e: ISZERO
00003f1f: PUSH2 0x3f27
00003f22: JUMPI
00003f23: PUSH1 0x00
00003f25: DUP1
00003f26: REVERT
00003f27: JUMPDEST
00003f28: DUP4
00003f29: CALLDATALOAD
00003f2a: SWAP3
00003f2b: POP
00003f2c: PUSH1 0xa0
00003f2e: PUSH1 0x1f
00003f30: NOT
00003f31: DUP3
00003f32: ADD
00003f33: SLT
00003f34: ISZERO
00003f35: PUSH2 0x3f3d
00003f38: JUMPI
00003f39: PUSH1 0x00
00003f3b: DUP1
00003f3c: REVERT
00003f3d: JUMPDEST
00003f3e: POP
00003f3f: PUSH1 0x20
00003f41: DUP4
00003f42: ADD
00003f43: SWAP1
00003f44: POP
00003f45: SWAP3
00003f46: POP
00003f47: SWAP3
00003f48: SWAP1
00003f49: POP
00003f4a: JUMP
00003f4b: JUMPDEST
00003f4c: DUP1
00003f4d: ISZERO
00003f4e: ISZERO
00003f4f: DUP2
00003f50: EQ
00003f51: PUSH2 0x09e3
00003f54: JUMPI
00003f55: PUSH1 0x00
00003f57: DUP1
00003f58: REVERT
00003f59: JUMPDEST
00003f5a: PUSH1 0x00
00003f5c: DUP1
00003f5d: PUSH1 0x00
00003f5f: DUP1
00003f60: PUSH1 0x00
00003f62: DUP1
00003f63: PUSH1 0xc0
00003f65: DUP8
00003f66: DUP10
00003f67: SUB
00003f68: SLT
00003f69: ISZERO
00003f6a: PUSH2 0x3f72
00003f6d: JUMPI
00003f6e: PUSH1 0x00
00003f70: DUP1
00003f71: REVERT
00003f72: JUMPDEST
00003f73: DUP7
00003f74: CALLDATALOAD
00003f75: SWAP6
00003f76: POP
00003f77: PUSH1 0x20
00003f79: DUP8
00003f7a: ADD
00003f7b: CALLDATALOAD
00003f7c: SWAP5
00003f7d: POP
00003f7e: PUSH2 0x3f89
00003f81: PUSH1 0x40
00003f83: DUP9
00003f84: ADD
00003f85: PUSH2 0x3b5a
00003f88: JUMP
00003f89: JUMPDEST
00003f8a: SWAP4
00003f8b: POP
00003f8c: PUSH1 0x60
00003f8e: DUP8
00003f8f: ADD
00003f90: CALLDATALOAD
00003f91: SWAP3
00003f92: POP
00003f93: PUSH1 0x80
00003f95: DUP8
00003f96: ADD
00003f97: CALLDATALOAD
00003f98: PUSH2 0x3fa0
00003f9b: DUP2
00003f9c: PUSH2 0x3f4b
00003f9f: JUMP
00003fa0: JUMPDEST
00003fa1: SWAP2
00003fa2: POP
00003fa3: PUSH1 0xa0
00003fa5: DUP8
00003fa6: ADD
00003fa7: CALLDATALOAD
00003fa8: PUSH2 0x3fb0
00003fab: DUP2
00003fac: PUSH2 0x3940
00003faf: JUMP
00003fb0: JUMPDEST
00003fb1: DUP1
00003fb2: SWAP2
00003fb3: POP
00003fb4: POP
00003fb5: SWAP3
00003fb6: SWAP6
00003fb7: POP
00003fb8: SWAP3
00003fb9: SWAP6
00003fba: POP
00003fbb: SWAP3
00003fbc: SWAP6
00003fbd: JUMP
00003fbe: JUMPDEST
00003fbf: PUSH1 0x00
00003fc1: DUP1
00003fc2: PUSH1 0x00
00003fc4: DUP1
00003fc5: PUSH1 0x40
00003fc7: DUP6
00003fc8: DUP8
00003fc9: SUB
00003fca: SLT
00003fcb: ISZERO
00003fcc: PUSH2 0x3fd4
00003fcf: JUMPI
00003fd0: PUSH1 0x00
00003fd2: DUP1
00003fd3: REVERT
00003fd4: JUMPDEST
00003fd5: DUP5
00003fd6: CALLDATALOAD
00003fd7: PUSH1 0x01
00003fd9: PUSH1 0x01
00003fdb: PUSH1 0x40
00003fdd: SHL
00003fde: SUB
00003fdf: DUP2
00003fe0: GT
00003fe1: ISZERO
00003fe2: PUSH2 0x3fea
00003fe5: JUMPI
00003fe6: PUSH1 0x00
00003fe8: DUP1
00003fe9: REVERT
00003fea: JUMPDEST
00003feb: PUSH2 0x3ff6
00003fee: DUP8
00003fef: DUP3
00003ff0: DUP9
00003ff1: ADD
00003ff2: PUSH2 0x3e8e
00003ff5: JUMP
00003ff6: JUMPDEST
00003ff7: SWAP1
00003ff8: SWAP6
00003ff9: POP
00003ffa: SWAP4
00003ffb: POP
00003ffc: POP
00003ffd: PUSH1 0x20
00003fff: DUP6
00004000: ADD
00004001: CALLDATALOAD
00004002: PUSH1 0x01
00004004: PUSH1 0x01
00004006: PUSH1 0x40
00004008: SHL
00004009: SUB
0000400a: DUP2
0000400b: GT
0000400c: ISZERO
0000400d: PUSH2 0x4015
00004010: JUMPI
00004011: PUSH1 0x00
00004013: DUP1
00004014: REVERT
00004015: JUMPDEST
00004016: PUSH2 0x4021
00004019: DUP8
0000401a: DUP3
0000401b: DUP9
0000401c: ADD
0000401d: PUSH2 0x3da6
00004020: JUMP
00004021: JUMPDEST
00004022: SWAP6
00004023: SWAP9
00004024: SWAP5
00004025: SWAP8
00004026: POP
00004027: SWAP6
00004028: POP
00004029: POP
0000402a: POP
0000402b: POP
0000402c: JUMP
0000402d: JUMPDEST
0000402e: PUSH1 0x00
00004030: JUMPDEST
00004031: DUP4
00004032: DUP2
00004033: LT
00004034: ISZERO
00004035: PUSH2 0x4048
00004038: JUMPI
00004039: DUP2
0000403a: DUP2
0000403b: ADD
0000403c: MLOAD
0000403d: DUP4
0000403e: DUP3
0000403f: ADD
00004040: MSTORE
00004041: PUSH1 0x20
00004043: ADD
00004044: PUSH2 0x4030
00004047: JUMP
00004048: JUMPDEST
00004049: POP
0000404a: POP
0000404b: PUSH1 0x00
0000404d: SWAP2
0000404e: ADD
0000404f: MSTORE
00004050: JUMP
00004051: JUMPDEST
00004052: PUSH1 0x00
00004054: DUP2
00004055: MLOAD
00004056: DUP1
00004057: DUP5
00004058: MSTORE
00004059: PUSH2 0x4069
0000405c: DUP2
0000405d: PUSH1 0x20
0000405f: DUP7
00004060: ADD
00004061: PUSH1 0x20
00004063: DUP7
00004064: ADD
00004065: PUSH2 0x402d
00004068: JUMP
00004069: JUMPDEST
0000406a: PUSH1 0x1f
0000406c: ADD
0000406d: PUSH1 0x1f
0000406f: NOT
00004070: AND
00004071: SWAP3
00004072: SWAP1
00004073: SWAP3
00004074: ADD
00004075: PUSH1 0x20
00004077: ADD
00004078: SWAP3
00004079: SWAP2
0000407a: POP
0000407b: POP
0000407c: JUMP
0000407d: JUMPDEST
0000407e: PUSH1 0x20
00004080: DUP2
00004081: MSTORE
00004082: PUSH1 0x00
00004084: PUSH2 0x24fc
00004087: PUSH1 0x20
00004089: DUP4
0000408a: ADD
0000408b: DUP5
0000408c: PUSH2 0x4051
0000408f: JUMP
00004090: JUMPDEST
00004091: DUP2
00004092: MLOAD
00004093: DUP2
00004094: MSTORE
00004095: PUSH1 0x20
00004097: DUP1
00004098: DUP4
00004099: ADD
0000409a: MLOAD
0000409b: PUSH1 0x01
0000409d: PUSH1 0x01
0000409f: PUSH1 0xa0
000040a1: SHL
000040a2: SUB
000040a3: AND
000040a4: SWAP1
000040a5: DUP3
000040a6: ADD
000040a7: MSTORE
000040a8: PUSH1 0x40
000040aa: DUP2
000040ab: ADD
000040ac: PUSH2 0x09ca
000040af: JUMP
000040b0: JUMPDEST
000040b1: PUSH1 0x00
000040b3: PUSH1 0x20
000040b5: DUP3
000040b6: DUP5
000040b7: SUB
000040b8: SLT
000040b9: ISZERO
000040ba: PUSH2 0x40c2
000040bd: JUMPI
000040be: PUSH1 0x00
000040c0: DUP1
000040c1: REVERT
000040c2: JUMPDEST
000040c3: PUSH2 0x24fc
000040c6: DUP3
000040c7: PUSH2 0x3b5a
000040ca: JUMP
000040cb: JUMPDEST
000040cc: PUSH4 0x4e487b71
000040d1: PUSH1 0xe0
000040d3: SHL
000040d4: PUSH1 0x00
000040d6: MSTORE
000040d7: PUSH1 0x21
000040d9: PUSH1 0x04
000040db: MSTORE
000040dc: PUSH1 0x24
000040de: PUSH1 0x00
000040e0: REVERT
000040e1: JUMPDEST
000040e2: DUP2
000040e3: MLOAD
000040e4: PUSH1 0x60
000040e6: DUP3
000040e7: ADD
000040e8: SWAP1
000040e9: PUSH1 0x04
000040eb: DUP2
000040ec: LT
000040ed: PUSH2 0x4106
000040f0: JUMPI
000040f1: PUSH4 0x4e487b71
000040f6: PUSH1 0xe0
000040f8: SHL
000040f9: PUSH1 0x00
000040fb: MSTORE
000040fc: PUSH1 0x21
000040fe: PUSH1 0x04
00004100: MSTORE
00004101: PUSH1 0x24
00004103: PUSH1 0x00
00004105: REVERT
00004106: JUMPDEST
00004107: DUP3
00004108: MSTORE
00004109: PUSH1 0x20
0000410b: DUP4
0000410c: DUP2
0000410d: ADD
0000410e: MLOAD
0000410f: PUSH1 0x01
00004111: PUSH1 0x01
00004113: PUSH1 0xa0
00004115: SHL
00004116: SUB
00004117: AND
00004118: SWAP1
00004119: DUP4
0000411a: ADD
0000411b: MSTORE
0000411c: PUSH1 0x40
0000411e: SWAP3
0000411f: DUP4
00004120: ADD
00004121: MLOAD
00004122: SWAP3
00004123: SWAP1
00004124: SWAP2
00004125: ADD
00004126: SWAP2
00004127: SWAP1
00004128: SWAP2
00004129: MSTORE
0000412a: SWAP1
0000412b: JUMP
0000412c: JUMPDEST
0000412d: PUSH1 0x00
0000412f: DUP1
00004130: PUSH1 0x00
00004132: DUP1
00004133: PUSH1 0x00
00004135: DUP1
00004136: PUSH1 0x00
00004138: DUP1
00004139: PUSH1 0xc0
0000413b: DUP10
0000413c: DUP12
0000413d: SUB
0000413e: SLT
0000413f: ISZERO
00004140: PUSH2 0x4148
00004143: JUMPI
00004144: PUSH1 0x00
00004146: DUP1
00004147: REVERT
00004148: JUMPDEST
00004149: DUP9
0000414a: CALLDATALOAD
0000414b: PUSH2 0x4153
0000414e: DUP2
0000414f: PUSH2 0x3940
00004152: JUMP
00004153: JUMPDEST
00004154: SWAP8
00004155: POP
00004156: PUSH1 0x20
00004158: DUP10
00004159: ADD
0000415a: CALLDATALOAD
0000415b: SWAP7
0000415c: POP
0000415d: PUSH1 0x40
0000415f: DUP10
00004160: ADD
00004161: CALLDATALOAD
00004162: SWAP6
00004163: POP
00004164: PUSH1 0x60
00004166: DUP10
00004167: ADD
00004168: CALLDATALOAD
00004169: SWAP5
0000416a: POP
0000416b: PUSH1 0x80
0000416d: DUP10
0000416e: ADD
0000416f: CALLDATALOAD
00004170: PUSH1 0x01
00004172: PUSH1 0x01
00004174: PUSH1 0x40
00004176: SHL
00004177: SUB
00004178: DUP2
00004179: GT
0000417a: ISZERO
0000417b: PUSH2 0x4183
0000417e: JUMPI
0000417f: PUSH1 0x00
00004181: DUP1
00004182: REVERT
00004183: JUMPDEST
00004184: PUSH2 0x418f
00004187: DUP12
00004188: DUP3
00004189: DUP13
0000418a: ADD
0000418b: PUSH2 0x3b9d
0000418e: JUMP
0000418f: JUMPDEST
00004190: SWAP1
00004191: SWAP6
00004192: POP
00004193: SWAP4
00004194: POP
00004195: POP
00004196: PUSH1 0xa0
00004198: DUP10
00004199: ADD
0000419a: CALLDATALOAD
0000419b: PUSH1 0x01
0000419d: PUSH1 0x01
0000419f: PUSH1 0x40
000041a1: SHL
000041a2: SUB
000041a3: DUP2
000041a4: GT
000041a5: ISZERO
000041a6: PUSH2 0x41ae
000041a9: JUMPI
000041aa: PUSH1 0x00
000041ac: DUP1
000041ad: REVERT
000041ae: JUMPDEST
000041af: PUSH2 0x41ba
000041b2: DUP12
000041b3: DUP3
000041b4: DUP13
000041b5: ADD
000041b6: PUSH2 0x3b9d
000041b9: JUMP
000041ba: JUMPDEST
000041bb: SWAP10
000041bc: SWAP13
000041bd: SWAP9
000041be: SWAP12
000041bf: POP
000041c0: SWAP7
000041c1: SWAP10
000041c2: POP
000041c3: SWAP5
000041c4: SWAP8
000041c5: SWAP4
000041c6: SWAP7
000041c7: SWAP3
000041c8: SWAP6
000041c9: SWAP5
000041ca: POP
000041cb: POP
000041cc: POP
000041cd: JUMP
000041ce: JUMPDEST
000041cf: PUSH1 0x00
000041d1: DUP1
000041d2: PUSH1 0x00
000041d4: DUP1
000041d5: PUSH1 0x00
000041d7: DUP1
000041d8: PUSH1 0x00
000041da: DUP1
000041db: PUSH2 0x0100
000041de: DUP10
000041df: DUP12
000041e0: SUB
000041e1: SLT
000041e2: ISZERO
000041e3: PUSH2 0x41eb
000041e6: JUMPI
000041e7: PUSH1 0x00
000041e9: DUP1
000041ea: REVERT
000041eb: JUMPDEST
000041ec: DUP9
000041ed: CALLDATALOAD
000041ee: PUSH2 0x41f6
000041f1: DUP2
000041f2: PUSH2 0x3940
000041f5: JUMP
000041f6: JUMPDEST
000041f7: SWAP8
000041f8: POP
000041f9: PUSH1 0x20
000041fb: DUP10
000041fc: ADD
000041fd: CALLDATALOAD
000041fe: PUSH2 0x4206
00004201: DUP2
00004202: PUSH2 0x3940
00004205: JUMP
00004206: JUMPDEST
00004207: SWAP7
00004208: POP
00004209: PUSH1 0x40
0000420b: DUP10
0000420c: ADD
0000420d: CALLDATALOAD
0000420e: PUSH2 0x4216
00004211: DUP2
00004212: PUSH2 0x3940
00004215: JUMP
00004216: JUMPDEST
00004217: SWAP6
00004218: POP
00004219: PUSH1 0x60
0000421b: DUP10
0000421c: ADD
0000421d: CALLDATALOAD
0000421e: PUSH2 0x4226
00004221: DUP2
00004222: PUSH2 0x3940
00004225: JUMP
00004226: JUMPDEST
00004227: SWAP5
00004228: POP
00004229: PUSH1 0x80
0000422b: DUP10
0000422c: ADD
0000422d: CALLDATALOAD
0000422e: PUSH2 0x4236
00004231: DUP2
00004232: PUSH2 0x3940
00004235: JUMP
00004236: JUMPDEST
00004237: SWAP4
00004238: POP
00004239: PUSH1 0xa0
0000423b: DUP10
0000423c: ADD
0000423d: CALLDATALOAD
0000423e: PUSH2 0x4246
00004241: DUP2
00004242: PUSH2 0x3940
00004245: JUMP
00004246: JUMPDEST
00004247: SWAP3
00004248: POP
00004249: PUSH1 0xc0
0000424b: DUP10
0000424c: ADD
0000424d: CALLDATALOAD
0000424e: PUSH2 0x4256
00004251: DUP2
00004252: PUSH2 0x3940
00004255: JUMP
00004256: JUMPDEST
00004257: SWAP2
00004258: POP
00004259: PUSH1 0xe0
0000425b: DUP10
0000425c: ADD
0000425d: CALLDATALOAD
0000425e: PUSH1 0x01
00004260: PUSH1 0x01
00004262: PUSH1 0x40
00004264: SHL
00004265: SUB
00004266: DUP2
00004267: GT
00004268: ISZERO
00004269: PUSH2 0x4271
0000426c: JUMPI
0000426d: PUSH1 0x00
0000426f: DUP1
00004270: REVERT
00004271: JUMPDEST
00004272: DUP10
00004273: ADD
00004274: PUSH1 0x00
00004276: PUSH1 0x1f
00004278: DUP3
00004279: ADD
0000427a: DUP13
0000427b: SGT
0000427c: PUSH2 0x4284
0000427f: JUMPI
00004280: PUSH1 0x00
00004282: DUP1
00004283: REVERT
00004284: JUMPDEST
00004285: DUP2
00004286: CALLDATALOAD
00004287: PUSH2 0x4292
0000428a: PUSH2 0x3a22
0000428d: DUP3
0000428e: PUSH2 0x39b8
00004291: JUMP
00004292: JUMPDEST
00004293: DUP1
00004294: DUP3
00004295: DUP3
00004296: MSTORE
00004297: PUSH1 0x20
00004299: DUP3
0000429a: ADD
0000429b: SWAP2
0000429c: POP
0000429d: PUSH1 0x20
0000429f: DUP4
000042a0: PUSH1 0x05
000042a2: SHL
000042a3: DUP7
000042a4: ADD
000042a5: ADD
000042a6: SWAP3
000042a7: POP
000042a8: DUP15
000042a9: DUP4
000042aa: GT
000042ab: ISZERO
000042ac: PUSH2 0x42b4
000042af: JUMPI
000042b0: PUSH1 0x00
000042b2: DUP1
000042b3: REVERT
000042b4: JUMPDEST
000042b5: PUSH1 0x20
000042b7: DUP6
000042b8: ADD
000042b9: SWAP5
000042ba: POP
000042bb: JUMPDEST
000042bc: DUP3
000042bd: DUP6
000042be: LT
000042bf: ISZERO
000042c0: PUSH2 0x42df
000042c3: JUMPI
000042c4: DUP5
000042c5: CALLDATALOAD
000042c6: PUSH2 0x42ce
000042c9: DUP2
000042ca: PUSH2 0x3940
000042cd: JUMP
000042ce: JUMPDEST
000042cf: DUP3
000042d0: MSTORE
000042d1: PUSH1 0x20
000042d3: SWAP5
000042d4: DUP6
000042d5: ADD
000042d6: SWAP5
000042d7: SWAP1
000042d8: SWAP2
000042d9: ADD
000042da: SWAP1
000042db: PUSH2 0x42bb
000042de: JUMP
000042df: JUMPDEST
000042e0: SWAP12
000042e1: SWAP15
000042e2: SWAP11
000042e3: SWAP14
000042e4: POP
000042e5: SWAP9
000042e6: SWAP12
000042e7: POP
000042e8: SWAP7
000042e9: SWAP10
000042ea: SWAP6
000042eb: SWAP9
000042ec: SWAP5
000042ed: SWAP8
000042ee: POP
000042ef: SWAP3
000042f0: SWAP6
000042f1: POP
000042f2: POP
000042f3: POP
000042f4: POP
000042f5: JUMP
000042f6: JUMPDEST
000042f7: PUSH1 0x00
000042f9: DUP1
000042fa: PUSH1 0x00
000042fc: DUP1
000042fd: PUSH1 0x00
000042ff: DUP1
00004300: PUSH1 0xa0
00004302: DUP8
00004303: DUP10
00004304: SUB
00004305: SLT
00004306: ISZERO
00004307: PUSH2 0x430f
0000430a: JUMPI
0000430b: PUSH1 0x00
0000430d: DUP1
0000430e: REVERT
0000430f: JUMPDEST
00004310: DUP7
00004311: CALLDATALOAD
00004312: PUSH2 0x431a
00004315: DUP2
00004316: PUSH2 0x3940
00004319: JUMP
0000431a: JUMPDEST
0000431b: SWAP6
0000431c: POP
0000431d: PUSH1 0x20
0000431f: DUP8
00004320: ADD
00004321: CALLDATALOAD
00004322: PUSH2 0x432a
00004325: DUP2
00004326: PUSH2 0x3940
00004329: JUMP
0000432a: JUMPDEST
0000432b: SWAP5
0000432c: POP
0000432d: PUSH1 0x40
0000432f: DUP8
00004330: ADD
00004331: CALLDATALOAD
00004332: SWAP4
00004333: POP
00004334: PUSH1 0x60
00004336: DUP8
00004337: ADD
00004338: CALLDATALOAD
00004339: SWAP3
0000433a: POP
0000433b: PUSH1 0x80
0000433d: DUP8
0000433e: ADD
0000433f: CALLDATALOAD
00004340: PUSH1 0x01
00004342: PUSH1 0x01
00004344: PUSH1 0x40
00004346: SHL
00004347: SUB
00004348: DUP2
00004349: GT
0000434a: ISZERO
0000434b: PUSH2 0x4353
0000434e: JUMPI
0000434f: PUSH1 0x00
00004351: DUP1
00004352: REVERT
00004353: JUMPDEST
00004354: PUSH2 0x435f
00004357: DUP10
00004358: DUP3
00004359: DUP11
0000435a: ADD
0000435b: PUSH2 0x3b9d
0000435e: JUMP
0000435f: JUMPDEST
00004360: SWAP8
00004361: SWAP11
00004362: SWAP7
00004363: SWAP10
00004364: POP
00004365: SWAP5
00004366: SWAP8
00004367: POP
00004368: SWAP3
00004369: SWAP6
0000436a: SWAP4
0000436b: SWAP5
0000436c: SWAP3
0000436d: POP
0000436e: POP
0000436f: POP
00004370: JUMP
00004371: JUMPDEST
00004372: PUSH4 0x4e487b71
00004377: PUSH1 0xe0
00004379: SHL
0000437a: PUSH1 0x00
0000437c: MSTORE
0000437d: PUSH1 0x32
0000437f: PUSH1 0x04
00004381: MSTORE
00004382: PUSH1 0x24
00004384: PUSH1 0x00
00004386: REVERT
00004387: JUMPDEST
00004388: PUSH4 0x4e487b71
0000438d: PUSH1 0xe0
0000438f: SHL
00004390: PUSH1 0x00
00004392: MSTORE
00004393: PUSH1 0x11
00004395: PUSH1 0x04
00004397: MSTORE
00004398: PUSH1 0x24
0000439a: PUSH1 0x00
0000439c: REVERT
0000439d: JUMPDEST
0000439e: DUP2
0000439f: DUP2
000043a0: SUB
000043a1: DUP2
000043a2: DUP2
000043a3: GT
000043a4: ISZERO
000043a5: PUSH2 0x09ca
000043a8: JUMPI
000043a9: PUSH2 0x09ca
000043ac: PUSH2 0x4387
000043af: JUMP
000043b0: JUMPDEST
000043b1: PUSH1 0x00
000043b3: PUSH1 0x40
000043b5: DUP3
000043b6: ADD
000043b7: DUP5
000043b8: DUP4
000043b9: MSTORE
000043ba: PUSH1 0x40
000043bc: PUSH1 0x20
000043be: DUP5
000043bf: ADD
000043c0: MSTORE
000043c1: DUP1
000043c2: DUP5
000043c3: MLOAD
000043c4: DUP1
000043c5: DUP4
000043c6: MSTORE
000043c7: PUSH1 0x60
000043c9: DUP6
000043ca: ADD
000043cb: SWAP2
000043cc: POP
000043cd: PUSH1 0x20
000043cf: DUP7
000043d0: ADD
000043d1: SWAP3
000043d2: POP
000043d3: PUSH1 0x00
000043d5: JUMPDEST
000043d6: DUP2
000043d7: DUP2
000043d8: LT
000043d9: ISZERO
000043da: PUSH2 0x43f3
000043dd: JUMPI
000043de: DUP4
000043df: MLOAD
000043e0: DUP4
000043e1: MSTORE
000043e2: PUSH1 0x20
000043e4: SWAP4
000043e5: DUP5
000043e6: ADD
000043e7: SWAP4
000043e8: SWAP1
000043e9: SWAP3
000043ea: ADD
000043eb: SWAP2
000043ec: PUSH1 0x01
000043ee: ADD
000043ef: PUSH2 0x43d5
000043f2: JUMP
000043f3: JUMPDEST
000043f4: POP
000043f5: SWAP1
000043f6: SWAP7
000043f7: SWAP6
000043f8: POP
000043f9: POP
000043fa: POP
000043fb: POP
000043fc: POP
000043fd: POP
000043fe: JUMP
000043ff: JUMPDEST
00004400: PUSH1 0x01
00004402: DUP1
00004403: PUSH1 0xa0
00004405: SHL
00004406: SUB
00004407: DUP7
00004408: AND
00004409: DUP2
0000440a: MSTORE
0000440b: DUP5
0000440c: PUSH1 0x20
0000440e: DUP3
0000440f: ADD
00004410: MSTORE
00004411: PUSH1 0xa0
00004413: PUSH1 0x40
00004415: DUP3
00004416: ADD
00004417: MSTORE
00004418: PUSH1 0x00
0000441a: PUSH2 0x4426
0000441d: PUSH1 0xa0
0000441f: DUP4
00004420: ADD
00004421: DUP7
00004422: PUSH2 0x4051
00004425: JUMP
00004426: JUMPDEST
00004427: PUSH1 0x60
00004429: DUP4
0000442a: ADD
0000442b: SWAP5
0000442c: SWAP1
0000442d: SWAP5
0000442e: MSTORE
0000442f: POP
00004430: PUSH1 0x01
00004432: PUSH1 0x01
00004434: PUSH1 0xa0
00004436: SHL
00004437: SUB
00004438: SWAP2
00004439: SWAP1
0000443a: SWAP2
0000443b: AND
0000443c: PUSH1 0x80
0000443e: SWAP1
0000443f: SWAP2
00004440: ADD
00004441: MSTORE
00004442: SWAP4
00004443: SWAP3
00004444: POP
00004445: POP
00004446: POP
00004447: JUMP
00004448: JUMPDEST
00004449: DUP3
0000444a: DUP2
0000444b: MSTORE
0000444c: PUSH1 0x40
0000444e: PUSH1 0x20
00004450: DUP3
00004451: ADD
00004452: MSTORE
00004453: PUSH1 0x00
00004455: PUSH2 0x2986
00004458: PUSH1 0x40
0000445a: DUP4
0000445b: ADD
0000445c: DUP5
0000445d: PUSH2 0x4051
00004460: JUMP
00004461: JUMPDEST
00004462: PUSH1 0x00
00004464: PUSH1 0x80
00004466: DUP3
00004467: DUP5
00004468: SUB
00004469: SLT
0000446a: DUP1
0000446b: ISZERO
0000446c: PUSH2 0x4474
0000446f: JUMPI
00004470: PUSH1 0x00
00004472: DUP1
00004473: REVERT
00004474: JUMPDEST
00004475: POP
00004476: PUSH1 0x40
00004478: MLOAD
00004479: PUSH1 0x80
0000447b: DUP2
0000447c: ADD
0000447d: PUSH1 0x01
0000447f: PUSH1 0x01
00004481: PUSH1 0x40
00004483: SHL
00004484: SUB
00004485: DUP2
00004486: GT
00004487: DUP3
00004488: DUP3
00004489: LT
0000448a: OR
0000448b: ISZERO
0000448c: PUSH2 0x4497
0000448f: JUMPI
00004490: PUSH2 0x4497
00004493: PUSH2 0x3972
00004496: JUMP
00004497: JUMPDEST
00004498: PUSH1 0x40
0000449a: MSTORE
0000449b: DUP3
0000449c: CALLDATALOAD
0000449d: PUSH2 0x44a5
000044a0: DUP2
000044a1: PUSH2 0x3940
000044a4: JUMP
000044a5: JUMPDEST
000044a6: DUP2
000044a7: MSTORE
000044a8: PUSH2 0x44b3
000044ab: PUSH1 0x20
000044ad: DUP5
000044ae: ADD
000044af: PUSH2 0x3b5a
000044b2: JUMP
000044b3: JUMPDEST
000044b4: PUSH1 0x20
000044b6: DUP3
000044b7: ADD
000044b8: MSTORE
000044b9: PUSH1 0x40
000044bb: DUP4
000044bc: DUP2
000044bd: ADD
000044be: CALLDATALOAD
000044bf: SWAP1
000044c0: DUP3
000044c1: ADD
000044c2: MSTORE
000044c3: PUSH1 0x60
000044c5: SWAP3
000044c6: DUP4
000044c7: ADD
000044c8: CALLDATALOAD
000044c9: SWAP3
000044ca: DUP2
000044cb: ADD
000044cc: SWAP3
000044cd: SWAP1
000044ce: SWAP3
000044cf: MSTORE
000044d0: POP
000044d1: SWAP2
000044d2: SWAP1
000044d3: POP
000044d4: JUMP
000044d5: JUMPDEST
000044d6: DUP1
000044d7: DUP3
000044d8: ADD
000044d9: DUP1
000044da: DUP3
000044db: GT
000044dc: ISZERO
000044dd: PUSH2 0x09ca
000044e0: JUMPI
000044e1: PUSH2 0x09ca
000044e4: PUSH2 0x4387
000044e7: JUMP
000044e8: JUMPDEST
000044e9: PUSH1 0x00
000044eb: PUSH1 0xa0
000044ed: DUP3
000044ee: DUP5
000044ef: SUB
000044f0: SLT
000044f1: DUP1
000044f2: ISZERO
000044f3: PUSH2 0x44fb
000044f6: JUMPI
000044f7: PUSH1 0x00
000044f9: DUP1
000044fa: REVERT
000044fb: JUMPDEST
000044fc: POP
000044fd: PUSH1 0x40
000044ff: MLOAD
00004500: PUSH1 0xa0
00004502: DUP2
00004503: ADD
00004504: PUSH1 0x01
00004506: PUSH1 0x01
00004508: PUSH1 0x40
0000450a: SHL
0000450b: SUB
0000450c: DUP2
0000450d: GT
0000450e: DUP3
0000450f: DUP3
00004510: LT
00004511: OR
00004512: ISZERO
00004513: PUSH2 0x451e
00004516: JUMPI
00004517: PUSH2 0x451e
0000451a: PUSH2 0x3972
0000451d: JUMP
0000451e: JUMPDEST
0000451f: PUSH1 0x40
00004521: MSTORE
00004522: DUP3
00004523: CALLDATALOAD
00004524: PUSH2 0x452c
00004527: DUP2
00004528: PUSH2 0x3940
0000452b: JUMP
0000452c: JUMPDEST
0000452d: DUP2
0000452e: MSTORE
0000452f: PUSH1 0x20
00004531: DUP4
00004532: DUP2
00004533: ADD
00004534: CALLDATALOAD
00004535: SWAP1
00004536: DUP3
00004537: ADD
00004538: MSTORE
00004539: PUSH1 0x40
0000453b: DUP1
0000453c: DUP5
0000453d: ADD
0000453e: CALLDATALOAD
0000453f: SWAP1
00004540: DUP3
00004541: ADD
00004542: MSTORE
00004543: PUSH2 0x454e
00004546: PUSH1 0x60
00004548: DUP5
00004549: ADD
0000454a: PUSH2 0x3b5a
0000454d: JUMP
0000454e: JUMPDEST
0000454f: PUSH1 0x60
00004551: DUP3
00004552: ADD
00004553: MSTORE
00004554: PUSH1 0x80
00004556: DUP4
00004557: ADD
00004558: CALLDATALOAD
00004559: PUSH2 0x4561
0000455c: DUP2
0000455d: PUSH2 0x3f4b
00004560: JUMP
00004561: JUMPDEST
00004562: PUSH1 0x80
00004564: DUP3
00004565: ADD
00004566: MSTORE
00004567: SWAP4
00004568: SWAP3
00004569: POP
0000456a: POP
0000456b: POP
0000456c: JUMP
0000456d: JUMPDEST
0000456e: PUSH1 0x00
00004570: PUSH1 0x20
00004572: DUP3
00004573: DUP5
00004574: SUB
00004575: SLT
00004576: ISZERO
00004577: PUSH2 0x457f
0000457a: JUMPI
0000457b: PUSH1 0x00
0000457d: DUP1
0000457e: REVERT
0000457f: JUMPDEST
00004580: DUP2
00004581: MLOAD
00004582: PUSH2 0x24fc
00004585: DUP2
00004586: PUSH2 0x3940
00004589: JUMP
0000458a: JUMPDEST
0000458b: PUSH1 0x01
0000458d: PUSH1 0x01
0000458f: PUSH1 0xa0
00004591: SHL
00004592: SUB
00004593: DUP7
00004594: DUP2
00004595: AND
00004596: DUP3
00004597: MSTORE
00004598: DUP6
00004599: AND
0000459a: PUSH1 0x20
0000459c: DUP3
0000459d: ADD
0000459e: MSTORE
0000459f: PUSH1 0x40
000045a1: DUP2
000045a2: ADD
000045a3: DUP5
000045a4: SWAP1
000045a5: MSTORE
000045a6: PUSH1 0x60
000045a8: DUP2
000045a9: ADD
000045aa: DUP4
000045ab: SWAP1
000045ac: MSTORE
000045ad: PUSH1 0xa0
000045af: PUSH1 0x80
000045b1: DUP3
000045b2: ADD
000045b3: DUP2
000045b4: SWAP1
000045b5: MSTORE
000045b6: PUSH1 0x00
000045b8: SWAP1
000045b9: PUSH2 0x45c4
000045bc: SWAP1
000045bd: DUP4
000045be: ADD
000045bf: DUP5
000045c0: PUSH2 0x4051
000045c3: JUMP
000045c4: JUMPDEST
000045c5: SWAP8
000045c6: SWAP7
000045c7: POP
000045c8: POP
000045c9: POP
000045ca: POP
000045cb: POP
000045cc: POP
000045cd: POP
000045ce: JUMP
000045cf: JUMPDEST
000045d0: PUSH1 0x00
000045d2: DUP3
000045d3: PUSH2 0x45ec
000045d6: JUMPI
000045d7: PUSH4 0x4e487b71
000045dc: PUSH1 0xe0
000045de: SHL
000045df: PUSH1 0x00
000045e1: MSTORE
000045e2: PUSH1 0x12
000045e4: PUSH1 0x04
000045e6: MSTORE
000045e7: PUSH1 0x24
000045e9: PUSH1 0x00
000045eb: REVERT
000045ec: JUMPDEST
000045ed: POP
000045ee: DIV
000045ef: SWAP1
000045f0: JUMP
000045f1: JUMPDEST
000045f2: DUP1
000045f3: DUP3
000045f4: MUL
000045f5: DUP2
000045f6: ISZERO
000045f7: DUP3
000045f8: DUP3
000045f9: DIV
000045fa: DUP5
000045fb: EQ
000045fc: OR
000045fd: PUSH2 0x09ca
00004600: JUMPI
00004601: PUSH2 0x09ca
00004604: PUSH2 0x4387
00004607: JUMP
00004608: JUMPDEST
00004609: PUSH1 0x00
0000460b: PUSH1 0x20
0000460d: DUP3
0000460e: DUP5
0000460f: SUB
00004610: SLT
00004611: ISZERO
00004612: PUSH2 0x461a
00004615: JUMPI
00004616: PUSH1 0x00
00004618: DUP1
00004619: REVERT
0000461a: JUMPDEST
0000461b: POP
0000461c: MLOAD
0000461d: SWAP2
0000461e: SWAP1
0000461f: POP
00004620: JUMP
00004621: JUMPDEST
00004622: PUSH1 0x00
00004624: PUSH1 0x01
00004626: DUP3
00004627: ADD
00004628: PUSH2 0x4633
0000462b: JUMPI
0000462c: PUSH2 0x4633
0000462f: PUSH2 0x4387
00004632: JUMP
00004633: JUMPDEST
00004634: POP
00004635: PUSH1 0x01
00004637: ADD
00004638: SWAP1
00004639: JUMP
0000463a: JUMPDEST
0000463b: PUSH1 0x01
0000463d: DUP1
0000463e: PUSH1 0xa0
00004640: SHL
00004641: SUB
00004642: DUP6
00004643: AND
00004644: DUP2
00004645: MSTORE
00004646: DUP4
00004647: PUSH1 0x20
00004649: DUP3
0000464a: ADD
0000464b: MSTORE
0000464c: PUSH1 0x80
0000464e: PUSH1 0x40
00004650: DUP3
00004651: ADD
00004652: MSTORE
00004653: PUSH1 0x00
00004655: PUSH2 0x4661
00004658: PUSH1 0x80
0000465a: DUP4
0000465b: ADD
0000465c: DUP6
0000465d: PUSH2 0x4051
00004660: JUMP
00004661: JUMPDEST
00004662: DUP3
00004663: DUP2
00004664: SUB
00004665: PUSH1 0x60
00004667: DUP5
00004668: ADD
00004669: MSTORE
0000466a: PUSH2 0x45c4
0000466d: DUP2
0000466e: DUP6
0000466f: PUSH2 0x4051
00004672: JUMP
00004673: JUMPDEST
00004674: PUSH1 0x00
00004676: PUSH1 0x20
00004678: DUP3
00004679: DUP5
0000467a: SUB
0000467b: SLT
0000467c: ISZERO
0000467d: PUSH2 0x4685
00004680: JUMPI
00004681: PUSH1 0x00
00004683: DUP1
00004684: REVERT
00004685: JUMPDEST
00004686: DUP2
00004687: MLOAD
00004688: PUSH2 0x24fc
0000468b: DUP2
0000468c: PUSH2 0x3f4b
0000468f: JUMP
00004690: JUMPDEST
00004691: PUSH1 0x00
00004693: DUP3
00004694: MLOAD
00004695: PUSH2 0x46a2
00004698: DUP2
00004699: DUP5
0000469a: PUSH1 0x20
0000469c: DUP8
0000469d: ADD
0000469e: PUSH2 0x402d
000046a1: JUMP
000046a2: JUMPDEST
000046a3: SWAP2
000046a4: SWAP1
000046a5: SWAP2
000046a6: ADD
000046a7: SWAP3
000046a8: SWAP2
000046a9: POP
000046aa: POP
000046ab: JUMP
000046ac: INVALID
000046ad: CALLDATASIZE
000046ae: ADDMOD
000046af: SWAP5
000046b0: LOG1
000046b1: EXTCODESIZE
000046b2: LOG1
000046b3: LOG3
000046b4: UNKNOWN(0x21)
000046b5: MOD
000046b6: PUSH8 0xc828492db98dca3e
000046bf: KECCAK256
000046c0: PUSH23 0xcc3735a920a3ca505d382bbc02dd7bc7dec4dceedda775
000046d8: UNKNOWN(0xE5)
000046d9: DUP14
000046da: UNKNOWN(0xD5)
000046db: COINBASE
000046dc: UNKNOWN(0xE0)
000046dd: DUP11
000046de: GT
000046df: PUSH13 0x6c53815c0bd028192f7b626800
000046ed: UNKNOWN(0xCD)
000046ee: MCOPY
000046ef: UNKNOWN(0xD1)
000046f0: TLOAD
000046f1: PUSH15 0x187e77e9aee88184c21f4f2182ab58
00004701: UNKNOWN(0x27)
00004702: UNKNOWN(0xCB)
00004703: EXTCODESIZE
00004704: PUSH31 0x07fbedcd63f03300738128fe393bef1bcd8a524796fff40618b938cd467c71
00004724: UNKNOWN(0xFC)
00004725: RETURN
00004726: PUSH25 0x50ab0ba4f7d7a264697066735822122074183de48a4af5806c
00004740: UNKNOWN(0xB0)
00004741: DUP11
00004742: GAS
00004743: UNKNOWN(0xDF)
00004744: INVALID
00004745: UNKNOWN(0xE0)
00004746: UNKNOWN(0xA9)
00004747: UNKNOWN(0xC0)
00004748: BLOCKHASH
00004749: XOR
0000474a: UNKNOWN(0xFB)
0000474b: UNKNOWN(0xAF)
0000474c: UNKNOWN(0x29)
0000474d: UNKNOWN(0x2F)
0000474e: PUSH9 0x9f0eb2ad1e1755eb64
00004758: PUSH20

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high upgradeability detector Untrusted DELEGATECALL target reachable 55 no no
view
trace_id: 0x3cf9e1621a7bdba2e2dcdf6e3ab2e35721ef665461206ae6f21f5d6093dd124e
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 0,
    "status": "unknown",
    "attempts": 192,
    "trace_id": "0x3cf9e1621a7bdba2e2dcdf6e3ab2e35721ef665461206ae6f21f5d6093dd124e",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": null,
    "matched_probe": null,
    "target_varies": null,
    "classification": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xea4644bb",
            "selector": "0xea4644bb",
            "calldata_variants": [
                "0xea4644bb",
                "0xea4644bb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xecda10f5",
            "selector": "0xecda10f5",
            "calldata_variants": [
                "0xecda10f5",
                "0xecda10f50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf23a6e61",
            "selector": "0xf23a6e61",
            "calldata_variants": [
                "0xf23a6e61",
                "0xf23a6e610000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf6a552d4",
            "selector": "0xf6a552d4",
            "calldata_variants": [
                "0xf6a552d4",
                "0xf6a552d40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd547741f",
            "selector": "0xd547741f",
            "calldata_variants": [
                "0xd547741f",
                "0xd547741f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdd9ea299",
            "selector": "0xdd9ea299",
            "calldata_variants": [
                "0xdd9ea299",
                "0xdd9ea2990000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe579fa2b",
            "selector": "0xe579fa2b",
            "calldata_variants": [
                "0xe579fa2b",
                "0xe579fa2b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc60af2b5",
            "selector": "0xc60af2b5",
            "calldata_variants": [
                "0xc60af2b5",
                "0xc60af2b50000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 14210,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        }
    ],
    "guards_detected": [
        {
            "pc": 11049,
            "type": "tx_origin_used"
        },
        {
            "pc": 11335,
            "type": "tx_origin_used"
        }
    ],
    "delegatecall_count": 1,
    "untrusted_delegatecall_count": 1
}
high auth detector Authorization based on tx.origin 70 no
view
validation_json
{
    "reason": "missing sink mapping",
    "status": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xea4644bb",
            "selector": "0xea4644bb",
            "calldata_variants": [
                "0xea4644bb",
                "0xea4644bb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xecda10f5",
            "selector": "0xecda10f5",
            "calldata_variants": [
                "0xecda10f5",
                "0xecda10f50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf23a6e61",
            "selector": "0xf23a6e61",
            "calldata_variants": [
                "0xf23a6e61",
                "0xf23a6e610000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf6a552d4",
            "selector": "0xf6a552d4",
            "calldata_variants": [
                "0xf6a552d4",
                "0xf6a552d40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd547741f",
            "selector": "0xd547741f",
            "calldata_variants": [
                "0xd547741f",
                "0xd547741f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdd9ea299",
            "selector": "0xdd9ea299",
            "calldata_variants": [
                "0xdd9ea299",
                "0xdd9ea2990000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe579fa2b",
            "selector": "0xe579fa2b",
            "calldata_variants": [
                "0xe579fa2b",
                "0xe579fa2b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc60af2b5",
            "selector": "0xc60af2b5",
            "calldata_variants": [
                "0xc60af2b5",
                "0xc60af2b50000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 11049,
            "type": "tx_origin_used"
        },
        {
            "pc": 11335,
            "type": "tx_origin_used"
        }
    ]
}
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0xdba4a66cb305268d3afadbad6c3ec0a413a48c35bf86dad94ce3d56de114799b
call_targets: 0xd31f61281a4b262aea79cbbe09a436975a8b63ea
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xdba4a66cb305268d3afadbad6c3ec0a413a48c35bf86dad94ce3d56de114799b",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xd31f61281a4b262aea79cbbe09a436975a8b63ea"
    ],
    "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": "0xea4644bb",
            "selector": "0xea4644bb",
            "calldata_variants": [
                "0xea4644bb",
                "0xea4644bb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xecda10f5",
            "selector": "0xecda10f5",
            "calldata_variants": [
                "0xecda10f5",
                "0xecda10f50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf23a6e61",
            "selector": "0xf23a6e61",
            "calldata_variants": [
                "0xf23a6e61",
                "0xf23a6e610000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf6a552d4",
            "selector": "0xf6a552d4",
            "calldata_variants": [
                "0xf6a552d4",
                "0xf6a552d40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd547741f",
            "selector": "0xd547741f",
            "calldata_variants": [
                "0xd547741f",
                "0xd547741f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdd9ea299",
            "selector": "0xdd9ea299",
            "calldata_variants": [
                "0xdd9ea299",
                "0xdd9ea2990000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe579fa2b",
            "selector": "0xe579fa2b",
            "calldata_variants": [
                "0xe579fa2b",
                "0xe579fa2b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc60af2b5",
            "selector": "0xc60af2b5",
            "calldata_variants": [
                "0xc60af2b5",
                "0xc60af2b50000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 4630,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 6517,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 6898,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 12,
    "guards_detected": [
        {
            "pc": 11049,
            "type": "tx_origin_used"
        },
        {
            "pc": 11335,
            "type": "tx_origin_used"
        }
    ],
    "untrusted_call_count": 12
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0xdba4a66cb305268d3afadbad6c3ec0a413a48c35bf86dad94ce3d56de114799b
call_targets: 0xd31f61281a4b262aea79cbbe09a436975a8b63ea
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xdba4a66cb305268d3afadbad6c3ec0a413a48c35bf86dad94ce3d56de114799b",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xd31f61281a4b262aea79cbbe09a436975a8b63ea"
    ],
    "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": "0xea4644bb",
            "selector": "0xea4644bb",
            "calldata_variants": [
                "0xea4644bb",
                "0xea4644bb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xecda10f5",
            "selector": "0xecda10f5",
            "calldata_variants": [
                "0xecda10f5",
                "0xecda10f50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf23a6e61",
            "selector": "0xf23a6e61",
            "calldata_variants": [
                "0xf23a6e61",
                "0xf23a6e610000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf6a552d4",
            "selector": "0xf6a552d4",
            "calldata_variants": [
                "0xf6a552d4",
                "0xf6a552d40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd547741f",
            "selector": "0xd547741f",
            "calldata_variants": [
                "0xd547741f",
                "0xd547741f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdd9ea299",
            "selector": "0xdd9ea299",
            "calldata_variants": [
                "0xdd9ea299",
                "0xdd9ea2990000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe579fa2b",
            "selector": "0xe579fa2b",
            "calldata_variants": [
                "0xe579fa2b",
                "0xe579fa2b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc60af2b5",
            "selector": "0xc60af2b5",
            "calldata_variants": [
                "0xc60af2b5",
                "0xc60af2b50000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 4630,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 6517,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 6898,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 12,
    "guards_detected": [
        {
            "pc": 11049,
            "type": "tx_origin_used"
        },
        {
            "pc": 11335,
            "type": "tx_origin_used"
        }
    ]
}
medium upgradeability cast DELEGATECALL present 80 no
view
evidence_json
{
    "notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
    "delegatecall_count": 1
}
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": 14
}
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
}