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

Analysis Run

a3c64178-a5bd-4db6-b019-fba42c372822

failed
Chain ID
1
Address
Block Number
Created
Wed, Dec 31, 2025 5:14 PM
Review Summary

What survived the funnel

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

Confirmed
0
Validated
0
Source
Verified
Review Backing
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
30867 report.consolidate complete 1 / 1 3 months ago
94213 artifact.fetch failed 1 / 3 1 week ago
94214 tool.cast_disasm complete 1 / 3 1 week ago
94215 analysis.bundle complete 1 / 3 1 week ago
94216 capability.graph complete 1 / 3 1 week ago
94217 detector.run complete 1 / 3 1 week ago
94218 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 identified in the audited contracts.
View stderr
[codex:1499132] OpenAI Codex v0.77.0 (research preview)
[codex:1499132] --------
[codex:1499132] workdir: /tmp/codex-multi-_7_unsj9
[codex:1499132] model: gpt-5.2-codex
[codex:1499132] provider: openai
[codex:1499132] approval: never
[codex:1499132] sandbox: read-only
[codex:1499132] reasoning effort: xhigh
[codex:1499132] reasoning summaries: auto
[codex:1499132] session id: 019b7560-983b-79f2-965a-ef8c69a425c1
[codex:1499132] --------
[codex:1499132] user
[codex:1499132] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:1499132] 
[codex:1499132] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:1499132] 
[codex:1499132] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:1499132] - Gas inefficiency, code quality, naming, or best practices
[codex:1499132] - Theoretical vulnerabilities without a clear extraction path
[codex:1499132] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:1499132] - Front-running unless it enables theft beyond MEV
[codex:1499132] - DoS, griefing, or issues that don't result in attacker profit
[codex:1499132] - Missing events, view function issues, or informational findings
[codex:1499132] 
[codex:1499132] HIGH-VALUE PATTERNS TO HUNT:
[codex:1499132] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:1499132] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:1499132] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:1499132] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:1499132] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:1499132] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:1499132] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:1499132] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:1499132] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:1499132] 
[codex:1499132] For each finding, you MUST provide:
[codex:1499132] 1. Exact file and line numbers of vulnerable code
[codex:1499132] 2. Step-by-step exploit transaction sequence
[codex:1499132] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:1499132] 
[codex:1499132] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:1499132] 
[codex:1499132] Output MUST be valid JSON matching the provided schema.
[codex:1499132] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:1499132] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:1499132] mcp startup: no servers
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Preparing to review agent instructions**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc ls in /tmp/codex-multi-_7_unsj9 succeeded in 5ms:
[codex:1499132] AUDIT_BUNDLE.txt
[codex:1499132] codex-output-schema.json
[codex:1499132] contracts
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Reading AUDIT_BUNDLE**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-_7_unsj9 succeeded in 7ms:
[codex:1499132] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:1499132] 
[codex:1499132] ================================================================================
[codex:1499132] FILE: contracts/src/GmpManager/GmpIntegration.sol
[codex:1499132] ================================================================================
[codex:1499132] // SPDX-License-Identifier: Apache 2
[codex:1499132] pragma solidity >=0.8.8 <0.9.0;
[codex:1499132] 
[codex:1499132] import "../interfaces/IGmpManager.sol";
[codex:1499132] 
[codex:1499132] abstract contract GmpIntegration {
[codex:1499132]     IGmpManager public immutable gmpManager;
[codex:1499132] 
[codex:1499132]     error OnlyGmpManagerAllowed();
[codex:1499132] 
[codex:1499132]     constructor(
[codex:1499132]         IGmpManager _gmpManager
[codex:1499132]     ) {
[codex:1499132]         gmpManager = _gmpManager;
[codex:1499132]     }
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Planning vulnerability search strategy**
[codex:1499132] 
[codex:1499132] I'm preparing to thoroughly scan the AUDIT_BUNDLE for critical vulnerabilities by using targeted searches for key functions and patterns like withdraw, transfer, and reentrancy issues. I want to map out all files listed in the bundle first to prioritize inspection of relevant components, ensuring nothing important is missed before concluding.
[codex:1499132] exec
[codex:1499132] /bin/bash -lc 'rg -n "''^FILE:" AUDIT_BUNDLE.txt' in /tmp/codex-multi-_7_unsj9 succeeded in 8ms:
[codex:1499132] 4:FILE: contracts/src/GmpManager/GmpIntegration.sol
[codex:1499132] 66:FILE: contracts/src/GmpManager/GmpManager.sol
[codex:1499132] 366:FILE: contracts/src/MultiTokenNtt/MultiTokenNtt.sol
[codex:1499132] 1356:FILE: contracts/src/MultiTokenNtt/Peers.sol
[codex:1499132] 1417:FILE: contracts/src/MultiTokenNtt/Token.sol
[codex:1499132] 1476:FILE: contracts/src/NttManager/ChainRegistry.sol
[codex:1499132] 1513:FILE: contracts/src/NttManager/ManagerBase.sol
[codex:1499132] 2077:FILE: contracts/src/NttManager/TransceiverRegistry.sol
[codex:1499132] 2767:FILE: contracts/src/interfaces/IERC20Burnable2.sol
[codex:1499132] 2779:FILE: contracts/src/interfaces/IGmpManager.sol
[codex:1499132] 2866:FILE: contracts/src/interfaces/IManagerBase.sol
[codex:1499132] 3125:FILE: contracts/src/interfaces/IMultiTokenRateLimiter.sol
[codex:1499132] 3191:FILE: contracts/src/interfaces/INttToken.sol
[codex:1499132] 3241:FILE: contracts/src/interfaces/INttTokenReceiver.sol
[codex:1499132] 3294:FILE: contracts/src/interfaces/IOwnableUpgradeable.sol
[codex:1499132] 3305:FILE: contracts/src/interfaces/IRateLimiter.sol
[codex:1499132] 3402:FILE: contracts/src/interfaces/IRateLimiterEvents.sol
[codex:1499132] 3449:FILE: contracts/src/interfaces/ITransceiver.sol
[codex:1499132] 3536:FILE: contracts/src/interfaces/IWETH.sol
[codex:1499132] 3554:FILE: contracts/src/libraries/GmpStructs.sol
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Analyzing potential contract vulnerabilities**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '1,240p' contracts/src/MultiTokenNtt/MultiTokenNtt.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 6ms:
[codex:1499132] // SPDX-License-Identifier: Apache 2
[codex:1499132] pragma solidity >=0.8.8 <0.9.0;
[codex:1499132] 
[codex:1499132] import "../GmpManager/GmpManager.sol";
[codex:1499132] import "../GmpManager/GmpIntegration.sol";
[codex:1499132] import "../libraries/MultiTokenRateLimiter.sol";
[codex:1499132] import "../libraries/TokenId.sol";
[codex:1499132] import "../libraries/TokenMeta.sol";
[codex:1499132] import "../libraries/TokenInfo.sol";
[codex:1499132] import "../libraries/NativeTokenTransferCodec.sol";
[codex:1499132] import "./Peers.sol";
[codex:1499132] import "../interfaces/IERC20Burnable2.sol";
[codex:1499132] import "../interfaces/INttTokenReceiver.sol";
[codex:1499132] 
[codex:1499132] import "../interfaces/IWETH.sol";
[codex:1499132] import "../libraries/TokenDeployment.sol";
[codex:1499132] 
[codex:1499132] import {Token} from "./Token.sol";
[codex:1499132] import "openzeppelin-contracts/contracts/token/ERC20/IERC20.sol";
[codex:1499132] import "openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Requesting more information**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '240,520p' contracts/src/MultiTokenNtt/MultiTokenNtt.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 5ms:
[codex:1499132]             recipientChain: args.recipientChain,
[codex:1499132]             recipient: args.recipient,
[codex:1499132]             refundAddress: args.refundAddress,
[codex:1499132]             shouldQueue: args.shouldQueue,
[codex:1499132]             transceiverInstructions: args.transceiverInstructions,
[codex:1499132]             additionalPayload: args.additionalPayload
[codex:1499132]         });
[codex:1499132] 
[codex:1499132]         return _executeTransferWithArgs(transferArgs, WrapETH.Wrap);
[codex:1499132]     }
[codex:1499132] 
[codex:1499132]     // ========== Internal Helper Functions ==========
[codex:1499132] 
[codex:1499132]     function _executeTransferWithArgs(
[codex:1499132]         TransferArgs memory args,
[codex:1499132]         WrapETH wrapMode
[codex:1499132]     ) internal returns (uint64) {
[codex:1499132]         // Set default values for optional parameters
[codex:1499132]         bytes32 finalRefundAddress =
[codex:1499132]             args.refundAddress == bytes32(0) ? args.recipient : args.refundAddress;
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Requesting more input to continue**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '520,1040p' contracts/src/MultiTokenNtt/MultiTokenNtt.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 5ms:
[codex:1499132] 
[codex:1499132]     function _getLocalTokenStorage()
[codex:1499132]         internal
[codex:1499132]         pure
[codex:1499132]         returns (mapping(uint16 => mapping(bytes32 => LocalTokenInfo)) storage $)
[codex:1499132]     {
[codex:1499132]         bytes32 slot = LOCAL_TOKEN_SLOT;
[codex:1499132]         assembly {
[codex:1499132]             $.slot := slot
[codex:1499132]         }
[codex:1499132]     }
[codex:1499132] 
[codex:1499132]     struct TransferParams {
[codex:1499132]         uint256 msgValue;
[codex:1499132]         WrapETH wrapWETH;
[codex:1499132]         TransferArgs args;
[codex:1499132]     }
[codex:1499132] 
[codex:1499132]     // NOTE: protect every caller with nonReentrant, as this function makes external calls
[codex:1499132]     function _transferEntryPoint(
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Analyzing MultiTokenNtt token handling and reentrancy**
[codex:1499132] 
[codex:1499132] I'm examining how MultiTokenNtt manages token registrations and transfers, noting local tokens aren't explicitly registered but assumed local by default, which might let any ERC20 be bridged. I'm also evaluating potential reentrancy risks given external calls during mint/unlock operations, but the nonReentrant protection and message replay checks in ManagerBase seem to secure against double minting and reentry. I'll need to dig into ManagerBase and TransceiverRegistry next to assess message verification and overall security.
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '1,240p' contracts/src/NttManager/ManagerBase.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 6ms:
[codex:1499132] // SPDX-License-Identifier: Apache 2
[codex:1499132] pragma solidity >=0.8.8 <0.9.0;
[codex:1499132] 
[codex:1499132] import "wormhole-solidity-sdk/Utils.sol";
[codex:1499132] import "wormhole-solidity-sdk/libraries/BytesParsing.sol";
[codex:1499132] 
[codex:1499132] import "../libraries/external/OwnableUpgradeable.sol";
[codex:1499132] import "../libraries/external/ReentrancyGuardUpgradeable.sol";
[codex:1499132] import "../libraries/TransceiverStructs.sol";
[codex:1499132] import "../libraries/TransceiverHelpers.sol";
[codex:1499132] import "../libraries/PausableOwnable.sol";
[codex:1499132] import "../libraries/Implementation.sol";
[codex:1499132] 
[codex:1499132] import "../interfaces/ITransceiver.sol";
[codex:1499132] import "../interfaces/IManagerBase.sol";
[codex:1499132] 
[codex:1499132] import "./TransceiverRegistry.sol";
[codex:1499132] 
[codex:1499132] abstract contract ManagerBase is
[codex:1499132]     IManagerBase,
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Continuing analysis**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '240,520p' contracts/src/NttManager/ManagerBase.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 6ms:
[codex:1499132]             uint256 numEnabledTransceivers = enabledTransceivers.length;
[codex:1499132] 
[codex:1499132]             if (numEnabledTransceivers == 0) {
[codex:1499132]                 revert NoEnabledTransceivers();
[codex:1499132]             }
[codex:1499132] 
[codex:1499132]             instructions = TransceiverStructs.parseTransceiverInstructions(
[codex:1499132]                 transceiverInstructions, numRegisteredTransceivers
[codex:1499132]             );
[codex:1499132]         }
[codex:1499132] 
[codex:1499132]         (uint256[] memory priceQuotes, uint256 totalPriceQuote) =
[codex:1499132]             _quoteDeliveryPrice(recipientChain, instructions, enabledTransceivers);
[codex:1499132]         {
[codex:1499132]             // check up front that msg.value will cover the delivery price
[codex:1499132]             if (msg.value < totalPriceQuote) {
[codex:1499132]                 revert DeliveryPaymentTooLow(totalPriceQuote, msg.value);
[codex:1499132]             }
[codex:1499132] 
[codex:1499132]             // refund user extra excess value from msg.value
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Continuing review of _replayProtect function**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '520,1040p' contracts/src/NttManager/ManagerBase.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 5ms:
[codex:1499132]     }
[codex:1499132] 
[codex:1499132]     // @dev Mark a message as executed.
[codex:1499132]     // This function will retuns `true` if the message has already been executed.
[codex:1499132]     function _replayProtect(
[codex:1499132]         bytes32 digest
[codex:1499132]     ) internal returns (bool) {
[codex:1499132]         // check if this message has already been executed
[codex:1499132]         if (isMessageExecuted(digest)) {
[codex:1499132]             return true;
[codex:1499132]         }
[codex:1499132] 
[codex:1499132]         // mark this message as executed
[codex:1499132]         _getMessageAttestationsStorage()[digest].executed = true;
[codex:1499132] 
[codex:1499132]         return false;
[codex:1499132]     }
[codex:1499132] 
[codex:1499132]     function _useMessageSequence() internal returns (uint64 currentSequence) {
[codex:1499132]         currentSequence = _getMessageSequenceStorage().num++;
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Checking transceiver-only attestation enforcement**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '1,240p' contracts/src/NttManager/TransceiverRegistry.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 5ms:
[codex:1499132] // SPDX-License-Identifier: Apache 2
[codex:1499132] pragma solidity >=0.8.8 <0.9.0;
[codex:1499132] 
[codex:1499132] import "../interfaces/IManagerBase.sol";
[codex:1499132] import "./ChainRegistry.sol";
[codex:1499132] 
[codex:1499132] /// @title TransceiverRegistry
[codex:1499132] /// @author Wormhole Project Contributors.
[codex:1499132] /// @notice This contract is responsible for handling the registration of Transceivers.
[codex:1499132] /// @dev This contract checks that a few critical invariants hold when transceivers are added or removed,
[codex:1499132] ///      including:
[codex:1499132] ///         1. If a transceiver is not registered, it should be enabled.
[codex:1499132] ///         2. The value set in the bitmap of trannsceivers
[codex:1499132] ///            should directly correspond to the whether the transceiver is enabled
[codex:1499132] abstract contract TransceiverRegistry is ChainRegistry {
[codex:1499132]     constructor() {
[codex:1499132]         // Per-chain configuration is now required, so no global invariants to check
[codex:1499132]     }
[codex:1499132] 
[codex:1499132]     /// @dev Information about registered transceivers.
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Analyzing potential security concerns and reentrancy safeguards**
[codex:1499132] 
[codex:1499132] I'm carefully reviewing possible vulnerabilities including transceiver enabling logic, message attestation thresholds, replay protection, and token transfer flows involving minting and burning. I'm also checking if reentrancy guards are correctly applied around external calls and token deployment uses secure CREATE2 with proper access control. There is a lot to ensure the system's safety from common attack vectors!
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '1,240p' contracts/src/libraries/TokenDeployment.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 5ms:
[codex:1499132] // SPDX-License-Identifier: Apache 2
[codex:1499132] pragma solidity >=0.8.8 <0.9.0;
[codex:1499132] 
[codex:1499132] import "./TokenInfo.sol";
[codex:1499132] import {Token} from "../MultiTokenNtt/Token.sol";
[codex:1499132] import "openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol";
[codex:1499132] 
[codex:1499132] /// @title TokenDeployment
[codex:1499132] /// @notice External library for deploying wrapped tokens using CREATE2
[codex:1499132] library TokenDeployment {
[codex:1499132]     error FailedToDeployToken();
[codex:1499132] 
[codex:1499132]     /// @notice Creates a new wrapped token using CREATE2
[codex:1499132]     /// @param tokenInfo The token metadata for initialization
[codex:1499132]     /// @param tokenImplementation The token implementation address
[codex:1499132]     /// @return localToken The address of the deployed token
[codex:1499132]     function createToken(
[codex:1499132]         TokenInfo memory tokenInfo,
[codex:1499132]         address tokenImplementation
[codex:1499132]     ) external returns (address localToken) {
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Analyzing create2 address risks**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '1,200p' contracts/src/MultiTokenNtt/Token.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 5ms:
[codex:1499132] // SPDX-License-Identifier: Apache 2
[codex:1499132] pragma solidity >=0.8.8 <0.9.0;
[codex:1499132] 
[codex:1499132] import "openzeppelin-contracts/contracts/token/ERC20/IERC20.sol";
[codex:1499132] import "../interfaces/INttToken.sol";
[codex:1499132] 
[codex:1499132] import
[codex:1499132]     "openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20BurnableUpgradeable.sol";
[codex:1499132] import
[codex:1499132]     "openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/draft-ERC20PermitUpgradeable.sol";
[codex:1499132] 
[codex:1499132] contract Token is ERC20BurnableUpgradeable, ERC20PermitUpgradeable, INttToken {
[codex:1499132]     address public minter;
[codex:1499132]     uint8 _decimals;
[codex:1499132] 
[codex:1499132]     function initialize(
[codex:1499132]         string memory name,
[codex:1499132]         string memory symbol,
[codex:1499132]         uint8 __decimals
[codex:1499132]     ) public initializer {
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Analyzing proxy initialization and message value handling**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '1,200p' contracts/src/libraries/Implementation.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 7ms:
[codex:1499132] // SPDX-License-Identifier: Apache 2
[codex:1499132] pragma solidity >=0.8.8 <0.9.0;
[codex:1499132] 
[codex:1499132] import "./external/Initializable.sol";
[codex:1499132] import "openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol";
[codex:1499132] 
[codex:1499132] /// @dev This contract should be used as a base contract for implementation contracts
[codex:1499132] ///      that are used with ERC1967Proxy.
[codex:1499132] ///      It ensures that the contract cannot be initialized directly, only through
[codex:1499132] ///      the proxy (by disabling initializers in the constructor).
[codex:1499132] ///      It also exposes a migrate function that is called during upgrades.
[codex:1499132] abstract contract Implementation is Initializable, ERC1967Upgrade {
[codex:1499132]     address immutable _this;
[codex:1499132] 
[codex:1499132]     error OnlyDelegateCall();
[codex:1499132]     error NotMigrating();
[codex:1499132] 
[codex:1499132]     constructor() {
[codex:1499132]         _disableInitializers();
[codex:1499132]         _this = address(this);
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Reviewing initialization and security considerations**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '1,200p' contracts/src/libraries/PausableOwnable.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 5ms:
[codex:1499132] // SPDX-License-Identifier: Apache 2
[codex:1499132] 
[codex:1499132] pragma solidity >=0.8.8 <0.9.0;
[codex:1499132] 
[codex:1499132] import "./PausableUpgradeable.sol";
[codex:1499132] import "./external/OwnableUpgradeable.sol";
[codex:1499132] 
[codex:1499132] abstract contract PausableOwnable is PausableUpgradeable, OwnableUpgradeable {
[codex:1499132]     /*
[codex:1499132]      * @dev Modifier to allow only the Pauser and the Owner to access pausing functionality
[codex:1499132]      */
[codex:1499132]     modifier onlyOwnerOrPauser() {
[codex:1499132]         _checkOwnerOrPauser(owner());
[codex:1499132]         _;
[codex:1499132]     }
[codex:1499132] 
[codex:1499132]     /*
[codex:1499132]      * @dev Modifier to allow only the Pauser to access some functionality
[codex:1499132]      */
[codex:1499132]     function _checkOwnerOrPauser(
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Inspecting rate limiter for overflow**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '1,240p' contracts/src/libraries/MultiTokenRateLimiter.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 7ms:
[codex:1499132] // SPDX-License-Identifier: Apache 2
[codex:1499132] pragma solidity >=0.8.8 <0.9.0;
[codex:1499132] 
[codex:1499132] import "../interfaces/IMultiTokenRateLimiter.sol";
[codex:1499132] import "./TokenId.sol";
[codex:1499132] 
[codex:1499132] import "../interfaces/IRateLimiterEvents.sol";
[codex:1499132] import "./RateLimitLib.sol";
[codex:1499132] import "./RateLimitAdmin.sol";
[codex:1499132] import "./TransceiverHelpers.sol";
[codex:1499132] import "./TransceiverStructs.sol";
[codex:1499132] import "./TrimmedAmount.sol";
[codex:1499132] 
[codex:1499132] abstract contract MultiTokenRateLimiter is IMultiTokenRateLimiter, IRateLimiterEvents {
[codex:1499132]     using TrimmedAmountLib for TrimmedAmount;
[codex:1499132]     using RateLimitLib for RateLimitLib.RateLimitParams;
[codex:1499132] 
[codex:1499132]     /// @dev The duration (in seconds) it takes for the limits to fully replenish.
[codex:1499132]     uint64 public immutable rateLimitDuration;
[codex:1499132] 
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Verifying ChainRegistry component**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '1,240p' contracts/src/NttManager/ChainRegistry.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 5ms:
[codex:1499132] // SPDX-License-Identifier: Apache 2
[codex:1499132] pragma solidity >=0.8.8 <0.9.0;
[codex:1499132] 
[codex:1499132] /// @dev This contract manages a registry of known blockchain networks (chains).
[codex:1499132] abstract contract ChainRegistry {
[codex:1499132]     bytes32 private constant KNOWN_CHAINS_SLOT = bytes32(uint256(keccak256("ntt.knownChains")) - 1);
[codex:1499132] 
[codex:1499132]     function _getKnownChainsStorage() internal pure returns (uint16[] storage $) {
[codex:1499132]         uint256 slot = uint256(KNOWN_CHAINS_SLOT);
[codex:1499132]         assembly ("memory-safe") {
[codex:1499132]             $.slot := slot
[codex:1499132]         }
[codex:1499132]     }
[codex:1499132] 
[codex:1499132]     /// @notice Add a chain to the known chains list if not already present
[codex:1499132]     function _addToKnownChains(
[codex:1499132]         uint16 chainId
[codex:1499132]     ) internal {
[codex:1499132]         uint16[] storage knownChains = _getKnownChainsStorage();
[codex:1499132] 
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Analyzing purity violations in ChainRegistry**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '1,200p' contracts/src/MultiTokenNtt/Peers.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 6ms:
[codex:1499132] // SPDX-License-Identifier: Apache 2
[codex:1499132] pragma solidity >=0.8.8 <0.9.0;
[codex:1499132] 
[codex:1499132] abstract contract Peers {
[codex:1499132]     error InvalidPeerChainIdZero();
[codex:1499132]     error InvalidPeerZeroAddress();
[codex:1499132]     error InvalidPeer(uint16 chainId, bytes32 peerAddress);
[codex:1499132] 
[codex:1499132]     event PeerUpdated(uint16 chainId, bytes32 oldPeerAddress, bytes32 newPeerAddress);
[codex:1499132] 
[codex:1499132]     bytes32 private constant PEERS_SLOT = bytes32(uint256(keccak256("ntt.peers")) - 1);
[codex:1499132] 
[codex:1499132]     struct Peer {
[codex:1499132]         bytes32 peerAddress;
[codex:1499132]     }
[codex:1499132] 
[codex:1499132]     function _getPeersStorage() internal pure returns (mapping(uint16 => Peer) storage $) {
[codex:1499132]         uint256 slot = uint256(PEERS_SLOT);
[codex:1499132]         assembly {
[codex:1499132]             $.slot := slot
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Evaluating cross-chain message and token transfer risks**
[codex:1499132] 
[codex:1499132] I'm carefully analyzing potential vulnerabilities involving message verification, peer management, token transfers with fee-on-transfer tokens, and reentrancy in burn functions. I'm also reviewing ownership restrictions on critical functions and the security around token minting and message replay protection to understand possible attack vectors better.
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '1,240p' contracts/src/libraries/TransceiverStructs.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 6ms:
[codex:1499132] // SPDX-License-Identifier: Apache 2
[codex:1499132] pragma solidity >=0.8.8 <0.9.0;
[codex:1499132] 
[codex:1499132] import "wormhole-solidity-sdk/libraries/BytesParsing.sol";
[codex:1499132] import "./TrimmedAmount.sol";
[codex:1499132] 
[codex:1499132] library TransceiverStructs {
[codex:1499132]     using BytesParsing for bytes;
[codex:1499132]     using TrimmedAmountLib for TrimmedAmount;
[codex:1499132] 
[codex:1499132]     /// @notice Error thrown when the payload length exceeds the allowed maximum.
[codex:1499132]     /// @dev Selector 0xa3419691.
[codex:1499132]     /// @param size The size of the payload.
[codex:1499132]     error PayloadTooLong(uint256 size);
[codex:1499132] 
[codex:1499132]     /// @notice Error thrown when the prefix of an encoded message
[codex:1499132]     ///         does not match the expected value.
[codex:1499132]     /// @dev Selector 0x56d2569d.
[codex:1499132]     /// @param prefix The prefix that was found in the encoded message.
[codex:1499132]     error IncorrectPrefix(bytes4 prefix);
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Analyzing message flow and potential risks**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '1,240p' contracts/src/libraries/TrimmedAmount.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 6ms:
[codex:1499132] // SPDX-License-Identifier: Apache 2
[codex:1499132] /// @dev TrimmedAmount is a utility library to handle token amounts with different decimals
[codex:1499132] pragma solidity >=0.8.8 <0.9.0;
[codex:1499132] 
[codex:1499132] import "openzeppelin-contracts/contracts/utils/math/SafeCast.sol";
[codex:1499132] 
[codex:1499132] /// @dev TrimmedAmount is a bit-packed representation of a token amount and its decimals.
[codex:1499132] /// @dev 64 bits: [0 - 64] amount
[codex:1499132] /// @dev 8 bits: [64 - 72] decimals
[codex:1499132] type TrimmedAmount is uint72;
[codex:1499132] 
[codex:1499132] using {gt as >, lt as <, sub as -, add as +, eq as ==, min, unwrap} for TrimmedAmount global;
[codex:1499132] 
[codex:1499132] function minUint8(uint8 a, uint8 b) pure returns (uint8) {
[codex:1499132]     return a < b ? a : b;
[codex:1499132] }
[codex:1499132] 
[codex:1499132] /// @notice Error when the decimals of two TrimmedAmounts are not equal
[codex:1499132] /// @dev Selector. b9cdb6c2
[codex:1499132] /// @param decimals the decimals of the first TrimmedAmount
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Analyzing potential overflow and token handling risks**
[codex:1499132] 
[codex:1499132] I'm exploring how scaling with powers of ten might overflow or wrap in Solidity’s exponentiation, considering decimal differences are typically small and safe; I’m also examining token registration, burn behavior, transfer balances, and owner overrides to identify potential risks or bugs in token management and upgradeability mechanisms.
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '1,240p' contracts/src/libraries/NativeTokenTransferCodec.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 5ms:
[codex:1499132] // SPDX-License-Identifier: Apache 2
[codex:1499132] pragma solidity >=0.8.8 <0.9.0;
[codex:1499132] 
[codex:1499132] import "./TokenId.sol";
[codex:1499132] import "./TokenMeta.sol";
[codex:1499132] import "./TokenInfo.sol";
[codex:1499132] import "wormhole-solidity-sdk/libraries/BytesParsing.sol";
[codex:1499132] import "./TrimmedAmount.sol";
[codex:1499132] 
[codex:1499132] /// @title NativeTokenTransferCodec
[codex:1499132] /// @notice Library for encoding and decoding native token transfer messages in the multi-token NTT system
[codex:1499132] library NativeTokenTransferCodec {
[codex:1499132]     using TrimmedAmountLib for uint256;
[codex:1499132]     using TrimmedAmountLib for TrimmedAmount;
[codex:1499132]     using BytesParsing for bytes;
[codex:1499132]     using TokenIdLib for TokenId;
[codex:1499132]     using TokenIdLib for bytes;
[codex:1499132]     using TokenMetaLib for TokenMeta;
[codex:1499132]     using TokenMetaLib for bytes;
[codex:1499132]     using TokenInfoLib for TokenInfo;
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Evaluating potential vulnerabilities and access controls**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '240,520p' contracts/src/NttManager/TransceiverRegistry.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 6ms:
[codex:1499132]             _enabledTransceiverBitmap.bitmap | uint64(1 << transceiverInfos[transceiver].index);
[codex:1499132]         // ensure that this actually changed the bitmap
[codex:1499132]         if (updatedEnabledTransceiverBitmap == _enabledTransceiverBitmap.bitmap) {
[codex:1499132]             revert TransceiverAlreadyEnabled(transceiver);
[codex:1499132]         }
[codex:1499132]         _enabledTransceiverBitmap.bitmap = updatedEnabledTransceiverBitmap;
[codex:1499132] 
[codex:1499132]         _checkTransceiversInvariants();
[codex:1499132] 
[codex:1499132]         return transceiverInfos[transceiver].index;
[codex:1499132]     }
[codex:1499132] 
[codex:1499132]     function _removeTransceiver(
[codex:1499132]         address transceiver
[codex:1499132]     ) internal {
[codex:1499132]         mapping(address => TransceiverInfo) storage transceiverInfos = _getTransceiverInfosStorage();
[codex:1499132]         _EnabledTransceiverBitmap storage _enabledTransceiverBitmap = _getTransceiverBitmapStorage();
[codex:1499132]         address[] storage _enabledTransceivers = _getEnabledTransceiversStorage();
[codex:1499132] 
[codex:1499132]         if (transceiver == address(0)) {
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Continuing exploration**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '520,1040p' contracts/src/NttManager/TransceiverRegistry.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 5ms:
[codex:1499132]             revert NoTransceiversConfiguredForChain(targetChain);
[codex:1499132]         }
[codex:1499132]         return sendConfig.config.bitmap;
[codex:1499132]     }
[codex:1499132] 
[codex:1499132]     /// @notice Get the bitmap of transceivers enabled for receiving from a specific chain
[codex:1499132]     /// @param sourceChain The chain ID
[codex:1499132]     /// @return bitmap The bitmap of enabled transceivers
[codex:1499132]     function _getReceiveTransceiversBitmapForChain(
[codex:1499132]         uint16 sourceChain
[codex:1499132]     ) internal view returns (uint64 bitmap) {
[codex:1499132]         PerChainReceiveTransceiverConfig storage receiveConfig =
[codex:1499132]             _getPerChainReceiveTransceiversStorage()[sourceChain];
[codex:1499132]         if (receiveConfig.config.transceivers.length == 0 || receiveConfig.threshold == 0) {
[codex:1499132]             revert NoTransceiversConfiguredForChain(sourceChain);
[codex:1499132]         }
[codex:1499132]         return receiveConfig.config.bitmap;
[codex:1499132]     }
[codex:1499132] 
[codex:1499132]     /// @notice Get the threshold for receiving from a specific chain
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Analyzing potential vulnerabilities in MultiTokenNtt and related contracts**
[codex:1499132] 
[codex:1499132] I'm carefully reviewing the transfer and message handling logic in MultiTokenNtt and its interaction with GmpManager, checking for unprotected external calls, message integrity via digests, refund computations, and access controls, while preparing to inspect supporting libraries like TokenId and TokenInfo for encoding-related risks.
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '1,200p' contracts/src/libraries/TokenId.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 5ms:
[codex:1499132] // SPDX-License-Identifier: Apache 2
[codex:1499132] pragma solidity >=0.8.8 <0.9.0;
[codex:1499132] 
[codex:1499132] import "wormhole-solidity-sdk/libraries/BytesParsing.sol";
[codex:1499132] 
[codex:1499132] struct TokenId {
[codex:1499132]     // TODO: swapping these around might make it easier to pack the chainId into
[codex:1499132]     // adjacent slots. need to review the use sites.
[codex:1499132]     uint16 chainId;
[codex:1499132]     bytes32 tokenAddress;
[codex:1499132] }
[codex:1499132] 
[codex:1499132] library TokenIdLib {
[codex:1499132]     using BytesParsing for bytes;
[codex:1499132] 
[codex:1499132]     function encode(
[codex:1499132]         TokenId memory tokenId
[codex:1499132]     ) internal pure returns (bytes memory encoded) {
[codex:1499132]         encoded = abi.encodePacked(tokenId.chainId, tokenId.tokenAddress);
[codex:1499132]     }
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Considering TokenMeta concept**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '1,200p' contracts/src/libraries/TokenMeta.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 5ms:
[codex:1499132] // SPDX-License-Identifier: Apache 2
[codex:1499132] pragma solidity >=0.8.8 <0.9.0;
[codex:1499132] 
[codex:1499132] import "wormhole-solidity-sdk/libraries/BytesParsing.sol";
[codex:1499132] 
[codex:1499132] struct TokenMeta {
[codex:1499132]     bytes32 name;
[codex:1499132]     bytes32 symbol;
[codex:1499132]     uint8 decimals;
[codex:1499132] }
[codex:1499132] 
[codex:1499132] library TokenMetaLib {
[codex:1499132]     using BytesParsing for bytes;
[codex:1499132] 
[codex:1499132]     function encode(
[codex:1499132]         TokenMeta memory m
[codex:1499132]     ) internal pure returns (bytes memory encoded) {
[codex:1499132]         return abi.encodePacked(m.name, m.symbol, m.decimals);
[codex:1499132]     }
[codex:1499132] 
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Checking token information**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '1,200p' contracts/src/libraries/TokenInfo.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 5ms:
[codex:1499132] // SPDX-License-Identifier: Apache 2
[codex:1499132] pragma solidity >=0.8.8 <0.9.0;
[codex:1499132] 
[codex:1499132] import "./TokenId.sol";
[codex:1499132] import "./TokenMeta.sol";
[codex:1499132] 
[codex:1499132] import "wormhole-solidity-sdk/libraries/BytesParsing.sol";
[codex:1499132] 
[codex:1499132] // A token is either
[codex:1499132] //
[codex:1499132] // a) local
[codex:1499132] // b) foreign
[codex:1499132] //
[codex:1499132] // If it's foreign, then it has a local representation token
[codex:1499132] 
[codex:1499132] struct TokenInfo {
[codex:1499132]     TokenMeta meta;
[codex:1499132]     TokenId token;
[codex:1499132] }
[codex:1499132] 
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Checking encoding functions and potential vulnerabilities**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '1,240p' contracts/src/libraries/TransceiverHelpers.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 6ms:
[codex:1499132] // SPDX-License-Identifier: Apache 2
[codex:1499132] pragma solidity >=0.8.8 <0.9.0;
[codex:1499132] 
[codex:1499132] error InvalidFork(uint256 evmChainId, uint256 blockChainId);
[codex:1499132] 
[codex:1499132] function checkFork(
[codex:1499132]     uint256 evmChainId
[codex:1499132] ) view {
[codex:1499132]     if (isFork(evmChainId)) {
[codex:1499132]         revert InvalidFork(evmChainId, block.chainid);
[codex:1499132]     }
[codex:1499132] }
[codex:1499132] 
[codex:1499132] function isFork(
[codex:1499132]     uint256 evmChainId
[codex:1499132] ) view returns (bool) {
[codex:1499132]     return evmChainId != block.chainid;
[codex:1499132] }
[codex:1499132] 
[codex:1499132] function min(uint256 a, uint256 b) pure returns (uint256) {
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Analyzing potential vulnerabilities comprehensively**
[codex:1499132] 
[codex:1499132] I'm carefully reviewing various contract functions and flows to detect possible issues like arithmetic overflow, reentrancy risks, token handling quirks, and message sequencing. There is a lot here, so I'm verifying whether rate limits, token transfers (especially with WETH), and message validations have edge cases that might cause unexpected behavior or exploits. I'll focus next on inspecting RateLimitLib in detail to confirm its safety.
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '1,240p' contracts/src/libraries/RateLimitLib.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 5ms:
[codex:1499132] // SPDX-License-Identifier: Apache 2
[codex:1499132] pragma solidity >=0.8.8 <0.9.0;
[codex:1499132] 
[codex:1499132] import "../libraries/TrimmedAmount.sol";
[codex:1499132] import "./TransceiverHelpers.sol";
[codex:1499132] import "openzeppelin-contracts/contracts/utils/math/SafeCast.sol";
[codex:1499132] 
[codex:1499132] library RateLimitLib {
[codex:1499132]     using TrimmedAmountLib for TrimmedAmount;
[codex:1499132] 
[codex:1499132]     /// @notice The new capacity cannot exceed the limit.
[codex:1499132]     /// @dev Selector 0x0f85ba52.
[codex:1499132]     /// @param newCurrentCapacity The new current capacity.
[codex:1499132]     /// @param newLimit The new limit.
[codex:1499132]     error CapacityCannotExceedLimit(TrimmedAmount newCurrentCapacity, TrimmedAmount newLimit);
[codex:1499132] 
[codex:1499132]     /// @notice Parameters used in determining rate limits and queuing.
[codex:1499132]     /// @dev
[codex:1499132]     ///    - limit: current rate limit value.
[codex:1499132]     ///    - currentCapacity: the current capacity left.
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Evaluating RateLimitAdmin security**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '1,200p' contracts/src/libraries/RateLimitAdmin.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 6ms:
[codex:1499132] // SPDX-License-Identifier: Apache 2
[codex:1499132] pragma solidity >=0.8.8 <0.9.0;
[codex:1499132] 
[codex:1499132] import "./TokenId.sol";
[codex:1499132] import "./RateLimitLib.sol";
[codex:1499132] import "./TrimmedAmount.sol";
[codex:1499132] 
[codex:1499132] /// @title RateLimitAdmin
[codex:1499132] /// @notice External library for admin-only rate limiting operations
[codex:1499132] /// @dev This library is deployed separately to reduce main contract size.
[codex:1499132] ///      Admin functions are called infrequently, so the DELEGATECALL overhead is acceptable.
[codex:1499132] library RateLimitAdmin {
[codex:1499132]     using TrimmedAmountLib for TrimmedAmount;
[codex:1499132]     using RateLimitLib for RateLimitLib.RateLimitParams;
[codex:1499132] 
[codex:1499132]     function setLimit(
[codex:1499132]         RateLimitLib.RateLimitParams storage self,
[codex:1499132]         TrimmedAmount limit,
[codex:1499132]         uint64 rateLimitDuration
[codex:1499132]     ) public {
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Evaluating potential refund and token handling risks**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "sed -n '1,200p' contracts/src/libraries/GmpStructs.sol" in /tmp/codex-multi-_7_unsj9 succeeded in 5ms:
[codex:1499132] // SPDX-License-Identifier: Apache 2
[codex:1499132] pragma solidity >=0.8.8 <0.9.0;
[codex:1499132] 
[codex:1499132] import "wormhole-solidity-sdk/libraries/BytesParsing.sol";
[codex:1499132] 
[codex:1499132] library GmpStructs {
[codex:1499132]     using BytesParsing for bytes;
[codex:1499132] 
[codex:1499132]     error PayloadTooLong(uint256 length);
[codex:1499132]     error InvalidPrefix();
[codex:1499132] 
[codex:1499132]     /// @dev Prefix for all GenericMesage payloads
[codex:1499132]     ///      This is 0x99'G''M''P'
[codex:1499132]     bytes4 constant GMP_PREFIX = 0x99474D50;
[codex:1499132] 
[codex:1499132]     struct GenericMessage {
[codex:1499132]         /// @notice target chain
[codex:1499132]         uint16 toChain;
[codex:1499132]         /// @notice contract to deliver the payload to
[codex:1499132]         bytes32 callee;
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Analyzing multiple potential vulnerabilities**
[codex:1499132] 
[codex:1499132] I'm examining a range of possible security concerns in the GmpManager and MultiTokenNtt contracts, including message handling, initialization protections on proxies, token transfers (especially WETH unwrap behavior), and sequence management. I'm carefully verifying whether attackers can spoof message senders, exploit uninitialized proxies, or manipulate token minting—all while confirming intended safety measures and design choices seem to prevent profit-driven exploits. This thorough check covers edge cases around external calls, proxy initialization, rate limiting, and owner controls.
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "rg -n \"\\bmint\\b\" contracts/src" in /tmp/codex-multi-_7_unsj9 succeeded in 11ms:
[codex:1499132] contracts/src/interfaces/INttToken.sol:26:    // NOTE: the `mint` method is not present in the standard ERC20 interface.
[codex:1499132] contracts/src/interfaces/INttToken.sol:28:    //       If using NTT in burn-and-mint mode, this function is required in the token contract for all chains.
[codex:1499132] contracts/src/interfaces/INttToken.sol:29:    function mint(address account, uint256 amount) external;
[codex:1499132] contracts/src/MultiTokenNtt/Token.sol:35:    function mint(address account, uint256 amount) public override(INttToken) onlyMinter {
[codex:1499132] contracts/src/MultiTokenNtt/MultiTokenNtt.sol:386:        // run it through the mint/unlock logic
[codex:1499132] contracts/src/MultiTokenNtt/MultiTokenNtt.sol:824:        // calculate proper amount of tokens to unlock/mint to recipient
[codex:1499132] contracts/src/MultiTokenNtt/MultiTokenNtt.sol:846:            // mint tokens to the specified recipient
[codex:1499132] contracts/src/MultiTokenNtt/MultiTokenNtt.sol:847:            INttToken(token).mint(recipient, untrimmedAmount);
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Searching for initialization calls**
[codex:1499132] exec
[codex:1499132] /bin/bash -lc "rg -n \"initialize\\(\" contracts/src" in /tmp/codex-multi-_7_unsj9 succeeded in 8ms:
[codex:1499132] contracts/src/libraries/Implementation.sol:61:    function initialize() external payable onlyDelegateCall initializer {
[codex:1499132] contracts/src/libraries/Implementation.sol:62:        _initialize();
[codex:1499132] contracts/src/libraries/Implementation.sol:76:    function _initialize() internal virtual {}
[codex:1499132] contracts/src/MultiTokenNtt/Token.sol:16:    function initialize(
[codex:1499132] contracts/src/GmpManager/GmpManager.sol:36:    function _initialize() internal virtual override {
[codex:1499132] contracts/src/GmpManager/GmpManager.sol:37:        super._initialize();
[codex:1499132] contracts/src/MultiTokenNtt/MultiTokenNtt.sol:122:    function _initialize() internal virtual override {
[codex:1499132] contracts/src/MultiTokenNtt/MultiTokenNtt.sol:123:        super._initialize();
[codex:1499132] contracts/src/libraries/external/Initializable.sol:24: *     function initialize() initializer public {
[codex:1499132] 
[codex:1499132] thinking
[codex:1499132] **Analyzing potential vulnerabilities and concluding audit results**
[codex:1499132] 
[codex:1499132] I'm carefully checking functions and contracts for any concrete exploit paths that could lead to profit, especially focusing on transfer, minting, refund mechanisms, and message authenticity. So far, no clear vulnerabilities or profit exploits appear, and I’m preparing to output a JSON summary reporting no findings per instructions.
[codex:1499132] codex
[codex:1499132] {"no_findings":true,"summary":"No concrete, exploitable profit paths identified in the audited contracts.","findings":[]}
[codex:1499132] tokens used
[codex:1499132] 127,003
[codex:1499132] {"no_findings":true,"summary":"No concrete, exploitable profit paths identified in the audited contracts.","findings":[]}
Metadata
{
    "codex": {
        "ran_at": "2025-12-31T17:14:27.315006+00:00",
        "returncode": 0
    },
    "summary": "No concrete, exploitable profit paths identified in the audited contracts.",
    "raw_final": {
        "summary": "No concrete, exploitable profit paths identified in the audited contracts.",
        "findings": [],
        "no_findings": true
    },
    "no_findings": true,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
4
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
19
EXT*/BALANCE
13
Total opcodes
15483
Flags
delegatecall_present create_opcodes_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 0x0213
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x8456cb59
00000019: GT
0000001a: PUSH2 0x0118
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0xc033e0db
00000024: GT
00000025: PUSH2 0x00a0
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xebd47c2f
0000002f: GT
00000030: PUSH2 0x006f
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xebd47c2f
0000003a: EQ
0000003b: PUSH2 0x0680
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xf1537686
00000045: EQ
00000046: PUSH2 0x06a0
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0xf2fde38b
00000050: EQ
00000051: PUSH2 0x06ce
00000054: JUMPI
00000055: DUP1
00000056: PUSH4 0xf7514fbc
0000005b: EQ
0000005c: PUSH2 0x06ee
0000005f: JUMPI
00000060: DUP1
00000061: PUSH4 0xfd96063c
00000066: EQ
00000067: PUSH2 0x070e
0000006a: JUMPI
0000006b: PUSH1 0x00
0000006d: DUP1
0000006e: REVERT
0000006f: JUMPDEST
00000070: DUP1
00000071: PUSH4 0xc033e0db
00000076: EQ
00000077: PUSH2 0x05ed
0000007a: JUMPI
0000007b: DUP1
0000007c: PUSH4 0xc0b07bde
00000081: EQ
00000082: PUSH2 0x0600
00000085: JUMPI
00000086: DUP1
00000087: PUSH4 0xc128d170
0000008c: EQ
0000008d: PUSH2 0x0631
00000090: JUMPI
00000091: DUP1
00000092: PUSH4 0xe2069e1e
00000097: EQ
00000098: PUSH2 0x0660
0000009b: JUMPI
0000009c: PUSH1 0x00
0000009e: DUP1
0000009f: REVERT
000000a0: JUMPDEST
000000a1: DUP1
000000a2: PUSH4 0x97c35146
000000a7: GT
000000a8: PUSH2 0x00e7
000000ab: JUMPI
000000ac: DUP1
000000ad: PUSH4 0x97c35146
000000b2: EQ
000000b3: PUSH2 0x0569
000000b6: JUMPI
000000b7: DUP1
000000b8: PUSH4 0x9fd0506d
000000bd: EQ
000000be: PUSH2 0x057c
000000c1: JUMPI
000000c2: DUP1
000000c3: PUSH4 0xa4617584
000000c8: EQ
000000c9: PUSH2 0x0591
000000cc: JUMPI
000000cd: DUP1
000000ce: PUSH4 0xad5c4648
000000d3: EQ
000000d4: PUSH2 0x05a4
000000d7: JUMPI
000000d8: DUP1
000000d9: PUSH4 0xb187bd26
000000de: EQ
000000df: PUSH2 0x05d8
000000e2: JUMPI
000000e3: PUSH1 0x00
000000e5: DUP1
000000e6: REVERT
000000e7: JUMPDEST
000000e8: DUP1
000000e9: PUSH4 0x8456cb59
000000ee: EQ
000000ef: PUSH2 0x050a
000000f2: JUMPI
000000f3: DUP1
000000f4: PUSH4 0x8da5cb5b
000000f9: EQ
000000fa: PUSH2 0x051f
000000fd: JUMPI
000000fe: DUP1
000000ff: PUSH4 0x8fd3ab80
00000104: EQ
00000105: PUSH2 0x0534
00000108: JUMPI
00000109: DUP1
0000010a: PUSH4 0x94c91365
0000010f: EQ
00000110: PUSH2 0x0549
00000113: JUMPI
00000114: PUSH1 0x00
00000116: DUP1
00000117: REVERT
00000118: JUMPDEST
00000119: DUP1
0000011a: PUSH4 0x32cf4cd5
0000011f: GT
00000120: PUSH2 0x019b
00000123: JUMPI
00000124: DUP1
00000125: PUSH4 0x689f90c3
0000012a: GT
0000012b: PUSH2 0x016a
0000012e: JUMPI
0000012f: DUP1
00000130: PUSH4 0x689f90c3
00000135: EQ
00000136: PUSH2 0x043d
00000139: JUMPI
0000013a: DUP1
0000013b: PUSH4 0x6f6a51e6
00000140: EQ
00000141: PUSH2 0x0462
00000144: JUMPI
00000145: DUP1
00000146: PUSH4 0x74aa7bfc
0000014b: EQ
0000014c: PUSH2 0x0482
0000014f: JUMPI
00000150: DUP1
00000151: PUSH4 0x7c9e8a10
00000156: EQ
00000157: PUSH2 0x04ce
0000015a: JUMPI
0000015b: DUP1
0000015c: PUSH4 0x8129fc1c
00000161: EQ
00000162: PUSH2 0x0502
00000165: JUMPI
00000166: PUSH1 0x00
00000168: DUP1
00000169: REVERT
0000016a: JUMPDEST
0000016b: DUP1
0000016c: PUSH4 0x32cf4cd5
00000171: EQ
00000172: PUSH2 0x03c8
00000175: JUMPI
00000176: DUP1
00000177: PUSH4 0x3434a266
0000017c: EQ
0000017d: PUSH2 0x03e8
00000180: JUMPI
00000181: DUP1
00000182: PUSH4 0x3f4ba83a
00000187: EQ
00000188: PUSH2 0x0408
0000018b: JUMPI
0000018c: DUP1
0000018d: PUSH4 0x4222f40b
00000192: EQ
00000193: PUSH2 0x041d
00000196: JUMPI
00000197: PUSH1 0x00
00000199: DUP1
0000019a: REVERT
0000019b: JUMPDEST
0000019c: DUP1
0000019d: PUSH4 0x0ebfdc8a
000001a2: GT
000001a3: PUSH2 0x01e2
000001a6: JUMPI
000001a7: DUP1
000001a8: PUSH4 0x0ebfdc8a
000001ad: EQ
000001ae: PUSH2 0x02df
000001b1: JUMPI
000001b2: DUP1
000001b3: PUSH4 0x1bacc92b
000001b8: EQ
000001b9: PUSH2 0x02ff
000001bc: JUMPI
000001bd: DUP1
000001be: PUSH4 0x1f97c9a8
000001c3: EQ
000001c4: PUSH2 0x0321
000001c7: JUMPI
000001c8: DUP1
000001c9: PUSH4 0x2cc7fc82
000001ce: EQ
000001cf: PUSH2 0x034e
000001d2: JUMPI
000001d3: DUP1
000001d4: PUSH4 0x2f3a3d5d
000001d9: EQ
000001da: PUSH2 0x037c
000001dd: JUMPI
000001de: PUSH1 0x00
000001e0: DUP1
000001e1: REVERT
000001e2: JUMPDEST
000001e3: DUP1
000001e4: PUSH4 0x036de8af
000001e9: EQ
000001ea: PUSH2 0x021f
000001ed: JUMPI
000001ee: DUP1
000001ef: PUSH4 0x045169ad
000001f4: EQ
000001f5: PUSH2 0x0241
000001f8: JUMPI
000001f9: DUP1
000001fa: PUSH4 0x07150aef
000001ff: EQ
00000200: PUSH2 0x0261
00000203: JUMPI
00000204: DUP1
00000205: PUSH4 0x0900f010
0000020a: EQ
0000020b: PUSH2 0x02bf
0000020e: JUMPI
0000020f: PUSH1 0x00
00000211: DUP1
00000212: REVERT
00000213: JUMPDEST
00000214: CALLDATASIZE
00000215: PUSH2 0x021a
00000218: JUMPI
00000219: STOP
0000021a: JUMPDEST
0000021b: PUSH1 0x00
0000021d: DUP1
0000021e: REVERT
0000021f: JUMPDEST
00000220: CALLVALUE
00000221: DUP1
00000222: ISZERO
00000223: PUSH2 0x022b
00000226: JUMPI
00000227: PUSH1 0x00
00000229: DUP1
0000022a: REVERT
0000022b: JUMPDEST
0000022c: POP
0000022d: PUSH2 0x023f
00000230: PUSH2 0x023a
00000233: CALLDATASIZE
00000234: PUSH1 0x04
00000236: PUSH2 0x5022
00000239: JUMP
0000023a: JUMPDEST
0000023b: PUSH2 0x0767
0000023e: JUMP
0000023f: JUMPDEST
00000240: STOP
00000241: JUMPDEST
00000242: CALLVALUE
00000243: DUP1
00000244: ISZERO
00000245: PUSH2 0x024d
00000248: JUMPI
00000249: PUSH1 0x00
0000024b: DUP1
0000024c: REVERT
0000024d: JUMPDEST
0000024e: POP
0000024f: PUSH2 0x023f
00000252: PUSH2 0x025c
00000255: CALLDATASIZE
00000256: PUSH1 0x04
00000258: PUSH2 0x5072
0000025b: JUMP
0000025c: JUMPDEST
0000025d: PUSH2 0x07d3
00000260: JUMP
00000261: JUMPDEST
00000262: CALLVALUE
00000263: DUP1
00000264: ISZERO
00000265: PUSH2 0x026d
00000268: JUMPI
00000269: PUSH1 0x00
0000026b: DUP1
0000026c: REVERT
0000026d: JUMPDEST
0000026e: POP
0000026f: PUSH2 0x0281
00000272: PUSH2 0x027c
00000275: CALLDATASIZE
00000276: PUSH1 0x04
00000278: PUSH2 0x51c3
0000027b: JUMP
0000027c: JUMPDEST
0000027d: PUSH2 0x081f
00000280: JUMP
00000281: JUMPDEST
00000282: PUSH1 0x40
00000284: DUP1
00000285: MLOAD
00000286: DUP3
00000287: MLOAD
00000288: PUSH1 0x01
0000028a: PUSH1 0x01
0000028c: PUSH1 0x48
0000028e: SHL
0000028f: SUB
00000290: SWAP1
00000291: DUP2
00000292: AND
00000293: DUP3
00000294: MSTORE
00000295: PUSH1 0x20
00000297: DUP1
00000298: DUP6
00000299: ADD
0000029a: MLOAD
0000029b: SWAP1
0000029c: SWAP2
0000029d: AND
0000029e: SWAP1
0000029f: DUP3
000002a0: ADD
000002a1: MSTORE
000002a2: SWAP2
000002a3: DUP2
000002a4: ADD
000002a5: MLOAD
000002a6: PUSH1 0x01
000002a8: PUSH1 0x01
000002aa: PUSH1 0x40
000002ac: SHL
000002ad: SUB
000002ae: AND
000002af: SWAP1
000002b0: DUP3
000002b1: ADD
000002b2: MSTORE
000002b3: PUSH1 0x60
000002b5: ADD
000002b6: JUMPDEST
000002b7: PUSH1 0x40
000002b9: MLOAD
000002ba: DUP1
000002bb: SWAP2
000002bc: SUB
000002bd: SWAP1
000002be: RETURN
000002bf: JUMPDEST
000002c0: CALLVALUE
000002c1: DUP1
000002c2: ISZERO
000002c3: PUSH2 0x02cb
000002c6: JUMPI
000002c7: PUSH1 0x00
000002c9: DUP1
000002ca: REVERT
000002cb: JUMPDEST
000002cc: POP
000002cd: PUSH2 0x023f
000002d0: PUSH2 0x02da
000002d3: CALLDATASIZE
000002d4: PUSH1 0x04
000002d6: PUSH2 0x5022
000002d9: JUMP
000002da: JUMPDEST
000002db: PUSH2 0x089e
000002de: JUMP
000002df: JUMPDEST
000002e0: CALLVALUE
000002e1: DUP1
000002e2: ISZERO
000002e3: PUSH2 0x02eb
000002e6: JUMPI
000002e7: PUSH1 0x00
000002e9: DUP1
000002ea: REVERT
000002eb: JUMPDEST
000002ec: POP
000002ed: PUSH2 0x023f
000002f0: PUSH2 0x02fa
000002f3: CALLDATASIZE
000002f4: PUSH1 0x04
000002f6: PUSH2 0x51fb
000002f9: JUMP
000002fa: JUMPDEST
000002fb: PUSH2 0x08b2
000002fe: JUMP
000002ff: JUMPDEST
00000300: CALLVALUE
00000301: DUP1
00000302: ISZERO
00000303: PUSH2 0x030b
00000306: JUMPI
00000307: PUSH1 0x00
00000309: DUP1
0000030a: REVERT
0000030b: JUMPDEST
0000030c: POP
0000030d: PUSH2 0x0314
00000310: PUSH2 0x08f7
00000313: JUMP
00000314: JUMPDEST
00000315: PUSH1 0x40
00000317: MLOAD
00000318: PUSH2 0x02b6
0000031b: SWAP2
0000031c: SWAP1
0000031d: PUSH2 0x5276
00000320: JUMP
00000321: JUMPDEST
00000322: CALLVALUE
00000323: DUP1
00000324: ISZERO
00000325: PUSH2 0x032d
00000328: JUMPI
00000329: PUSH1 0x00
0000032b: DUP1
0000032c: REVERT
0000032d: JUMPDEST
0000032e: POP
0000032f: PUSH2 0x0341
00000332: PUSH2 0x033c
00000335: CALLDATASIZE
00000336: PUSH1 0x04
00000338: PUSH2 0x529e
0000033b: JUMP
0000033c: JUMPDEST
0000033d: PUSH2 0x096f
00000340: JUMP
00000341: JUMPDEST
00000342: PUSH1 0x40
00000344: MLOAD
00000345: PUSH2 0x02b6
00000348: SWAP2
00000349: SWAP1
0000034a: PUSH2 0x52bb
0000034d: JUMP
0000034e: JUMPDEST
0000034f: CALLVALUE
00000350: DUP1
00000351: ISZERO
00000352: PUSH2 0x035a
00000355: JUMPI
00000356: PUSH1 0x00
00000358: DUP1
00000359: REVERT
0000035a: JUMPDEST
0000035b: POP
0000035c: PUSH2 0x036e
0000035f: PUSH2 0x0369
00000362: CALLDATASIZE
00000363: PUSH1 0x04
00000365: PUSH2 0x5351
00000368: JUMP
00000369: JUMPDEST
0000036a: PUSH2 0x0ae3
0000036d: JUMP
0000036e: JUMPDEST
0000036f: PUSH1 0x40
00000371: MLOAD
00000372: SWAP1
00000373: DUP2
00000374: MSTORE
00000375: PUSH1 0x20
00000377: ADD
00000378: PUSH2 0x02b6
0000037b: JUMP
0000037c: JUMPDEST
0000037d: CALLVALUE
0000037e: DUP1
0000037f: ISZERO
00000380: PUSH2 0x0388
00000383: JUMPI
00000384: PUSH1 0x00
00000386: DUP1
00000387: REVERT
00000388: JUMPDEST
00000389: POP
0000038a: PUSH2 0x03b0
0000038d: PUSH32 0x000000000000000000000000127b77df02744930b4bfdc342c6cac289478a75b
000003ae: DUP2
000003af: JUMP
000003b0: JUMPDEST
000003b1: PUSH1 0x40
000003b3: MLOAD
000003b4: PUSH1 0x01
000003b6: PUSH1 0x01
000003b8: PUSH1 0xa0
000003ba: SHL
000003bb: SUB
000003bc: SWAP1
000003bd: SWAP2
000003be: AND
000003bf: DUP2
000003c0: MSTORE
000003c1: PUSH1 0x20
000003c3: ADD
000003c4: PUSH2 0x02b6
000003c7: JUMP
000003c8: JUMPDEST
000003c9: CALLVALUE
000003ca: DUP1
000003cb: ISZERO
000003cc: PUSH2 0x03d4
000003cf: JUMPI
000003d0: PUSH1 0x00
000003d2: DUP1
000003d3: REVERT
000003d4: JUMPDEST
000003d5: POP
000003d6: PUSH2 0x023f
000003d9: PUSH2 0x03e3
000003dc: CALLDATASIZE
000003dd: PUSH1 0x04
000003df: PUSH2 0x536d
000003e2: JUMP
000003e3: JUMPDEST
000003e4: PUSH2 0x0b48
000003e7: JUMP
000003e8: JUMPDEST
000003e9: CALLVALUE
000003ea: DUP1
000003eb: ISZERO
000003ec: PUSH2 0x03f4
000003ef: JUMPI
000003f0: PUSH1 0x00
000003f2: DUP1
000003f3: REVERT
000003f4: JUMPDEST
000003f5: POP
000003f6: PUSH2 0x0281
000003f9: PUSH2 0x0403
000003fc: CALLDATASIZE
000003fd: PUSH1 0x04
000003ff: PUSH2 0x5351
00000402: JUMP
00000403: JUMPDEST
00000404: PUSH2 0x0b5e
00000407: JUMP
00000408: JUMPDEST
00000409: CALLVALUE
0000040a: DUP1
0000040b: ISZERO
0000040c: PUSH2 0x0414
0000040f: JUMPI
00000410: PUSH1 0x00
00000412: DUP1
00000413: REVERT
00000414: JUMPDEST
00000415: POP
00000416: PUSH2 0x023f
00000419: PUSH2 0x0bc4
0000041c: JUMP
0000041d: JUMPDEST
0000041e: CALLVALUE
0000041f: DUP1
00000420: ISZERO
00000421: PUSH2 0x0429
00000424: JUMPI
00000425: PUSH1 0x00
00000427: DUP1
00000428: REVERT
00000429: JUMPDEST
0000042a: POP
0000042b: PUSH2 0x023f
0000042e: PUSH2 0x0438
00000431: CALLDATASIZE
00000432: PUSH1 0x04
00000434: PUSH2 0x5399
00000437: JUMP
00000438: JUMPDEST
00000439: PUSH2 0x0bd6
0000043c: JUMP
0000043d: JUMPDEST
0000043e: CALLVALUE
0000043f: DUP1
00000440: ISZERO
00000441: PUSH2 0x0449
00000444: JUMPI
00000445: PUSH1 0x00
00000447: DUP1
00000448: REVERT
00000449: JUMPDEST
0000044a: POP
0000044b: PUSH2 0x0452
0000044e: PUSH2 0x0e22
00000451: JUMP
00000452: JUMPDEST
00000453: PUSH1 0x40
00000455: MLOAD
00000456: SWAP1
00000457: ISZERO
00000458: ISZERO
00000459: DUP2
0000045a: MSTORE
0000045b: PUSH1 0x20
0000045d: ADD
0000045e: PUSH2 0x02b6
00000461: JUMP
00000462: JUMPDEST
00000463: CALLVALUE
00000464: DUP1
00000465: ISZERO
00000466: PUSH2 0x046e
00000469: JUMPI
0000046a: PUSH1 0x00
0000046c: DUP1
0000046d: REVERT
0000046e: JUMPDEST
0000046f: POP
00000470: PUSH2 0x023f
00000473: PUSH2 0x047d
00000476: CALLDATASIZE
00000477: PUSH1 0x04
00000479: PUSH2 0x54e0
0000047c: JUMP
0000047d: JUMPDEST
0000047e: PUSH2 0x0e35
00000481: JUMP
00000482: JUMPDEST
00000483: CALLVALUE
00000484: DUP1
00000485: ISZERO
00000486: PUSH2 0x048e
00000489: JUMPI
0000048a: PUSH1 0x00
0000048c: DUP1
0000048d: REVERT
0000048e: JUMPDEST
0000048f: POP
00000490: PUSH2 0x04b6
00000493: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180
000004b4: DUP2
000004b5: JUMP
000004b6: JUMPDEST
000004b7: PUSH1 0x40
000004b9: MLOAD
000004ba: PUSH1 0x01
000004bc: PUSH1 0x01
000004be: PUSH1 0x40
000004c0: SHL
000004c1: SUB
000004c2: SWAP1
000004c3: SWAP2
000004c4: AND
000004c5: DUP2
000004c6: MSTORE
000004c7: PUSH1 0x20
000004c9: ADD
000004ca: PUSH2 0x02b6
000004cd: JUMP
000004ce: JUMPDEST
000004cf: CALLVALUE
000004d0: DUP1
000004d1: ISZERO
000004d2: PUSH2 0x04da
000004d5: JUMPI
000004d6: PUSH1 0x00
000004d8: DUP1
000004d9: REVERT
000004da: JUMPDEST
000004db: POP
000004dc: PUSH2 0x03b0
000004df: PUSH32 0x000000000000000000000000c6793a32761a11e96c97a3d18fc6545ea931f0e9
00000500: DUP2
00000501: JUMP
00000502: JUMPDEST
00000503: PUSH2 0x023f
00000506: PUSH2 0x103a
00000509: JUMP
0000050a: JUMPDEST
0000050b: CALLVALUE
0000050c: DUP1
0000050d: ISZERO
0000050e: PUSH2 0x0516
00000511: JUMPI
00000512: PUSH1 0x00
00000514: DUP1
00000515: REVERT
00000516: JUMPDEST
00000517: POP
00000518: PUSH2 0x023f
0000051b: PUSH2 0x113c
0000051e: JUMP
0000051f: JUMPDEST
00000520: CALLVALUE
00000521: DUP1
00000522: ISZERO
00000523: PUSH2 0x052b
00000526: JUMPI
00000527: PUSH1 0x00
00000529: DUP1
0000052a: REVERT
0000052b: JUMPDEST
0000052c: POP
0000052d: PUSH2 0x03b0
00000530: PUSH2 0x114f
00000533: JUMP
00000534: JUMPDEST
00000535: CALLVALUE
00000536: DUP1
00000537: ISZERO
00000538: PUSH2 0x0540
0000053b: JUMPI
0000053c: PUSH1 0x00
0000053e: DUP1
0000053f: REVERT
00000540: JUMPDEST
00000541: POP
00000542: PUSH2 0x023f
00000545: PUSH2 0x117d
00000548: JUMP
00000549: JUMPDEST
0000054a: CALLVALUE
0000054b: DUP1
0000054c: ISZERO
0000054d: PUSH2 0x0555
00000550: JUMPI
00000551: PUSH1 0x00
00000553: DUP1
00000554: REVERT
00000555: JUMPDEST
00000556: POP
00000557: PUSH2 0x03b0
0000055a: PUSH2 0x0564
0000055d: CALLDATASIZE
0000055e: PUSH1 0x04
00000560: PUSH2 0x5351
00000563: JUMP
00000564: JUMPDEST
00000565: PUSH2 0x128f
00000568: JUMP
00000569: JUMPDEST
0000056a: PUSH2 0x04b6
0000056d: PUSH2 0x0577
00000570: CALLDATASIZE
00000571: PUSH1 0x04
00000573: PUSH2 0x529e
00000576: JUMP
00000577: JUMPDEST
00000578: PUSH2 0x130b
0000057b: JUMP
0000057c: JUMPDEST
0000057d: CALLVALUE
0000057e: DUP1
0000057f: ISZERO
00000580: PUSH2 0x0588
00000583: JUMPI
00000584: PUSH1 0x00
00000586: DUP1
00000587: REVERT
00000588: JUMPDEST
00000589: POP
0000058a: PUSH2 0x03b0
0000058d: PUSH2 0x15d8
00000590: JUMP
00000591: JUMPDEST
00000592: PUSH2 0x04b6
00000595: PUSH2 0x059f
00000598: CALLDATASIZE
00000599: PUSH1 0x04
0000059b: PUSH2 0x55b8
0000059e: JUMP
0000059f: JUMPDEST
000005a0: PUSH2 0x15f1
000005a3: JUMP
000005a4: JUMPDEST
000005a5: CALLVALUE
000005a6: DUP1
000005a7: ISZERO
000005a8: PUSH2 0x05b0
000005ab: JUMPI
000005ac: PUSH1 0x00
000005ae: DUP1
000005af: REVERT
000005b0: JUMPDEST
000005b1: POP
000005b2: PUSH2 0x03b0
000005b5: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
000005d6: DUP2
000005d7: JUMP
000005d8: JUMPDEST
000005d9: CALLVALUE
000005da: DUP1
000005db: ISZERO
000005dc: PUSH2 0x05e4
000005df: JUMPI
000005e0: PUSH1 0x00
000005e2: DUP1
000005e3: REVERT
000005e4: JUMPDEST
000005e5: POP
000005e6: PUSH2 0x0452
000005e9: PUSH2 0x1645
000005ec: JUMP
000005ed: JUMPDEST
000005ee: PUSH2 0x04b6
000005f1: PUSH2 0x05fb
000005f4: CALLDATASIZE
000005f5: PUSH1 0x04
000005f7: PUSH2 0x569a
000005fa: JUMP
000005fb: JUMPDEST
000005fc: PUSH2 0x165a
000005ff: JUMP
00000600: JUMPDEST
00000601: CALLVALUE
00000602: DUP1
00000603: ISZERO
00000604: PUSH2 0x060c
00000607: JUMPI
00000608: PUSH1 0x00
0000060a: DUP1
0000060b: REVERT
0000060c: JUMPDEST
0000060d: POP
0000060e: PUSH2 0x0314
00000611: PUSH1 0x40
00000613: MLOAD
00000614: DUP1
00000615: PUSH1 0x40
00000617: ADD
00000618: PUSH1 0x40
0000061a: MSTORE
0000061b: DUP1
0000061c: PUSH1 0x05
0000061e: DUP2
0000061f: MSTORE
00000620: PUSH1 0x20
00000622: ADD
00000623: PUSH5 0x0312e312e3
00000629: PUSH1 0xdc
0000062b: SHL
0000062c: DUP2
0000062d: MSTORE
0000062e: POP
0000062f: DUP2
00000630: JUMP
00000631: JUMPDEST
00000632: CALLVALUE
00000633: DUP1
00000634: ISZERO
00000635: PUSH2 0x063d
00000638: JUMPI
00000639: PUSH1 0x00
0000063b: DUP1
0000063c: REVERT
0000063d: JUMPDEST
0000063e: POP
0000063f: PUSH2 0x0651
00000642: PUSH2 0x064c
00000645: CALLDATASIZE
00000646: PUSH1 0x04
00000648: PUSH2 0x576a
0000064b: JUMP
0000064c: JUMPDEST
0000064d: PUSH2 0x171e
00000650: JUMP
00000651: JUMPDEST
00000652: PUSH1 0x40
00000654: MLOAD
00000655: SWAP1
00000656: MLOAD
00000657: DUP2
00000658: MSTORE
00000659: PUSH1 0x20
0000065b: ADD
0000065c: PUSH2 0x02b6
0000065f: JUMP
00000660: JUMPDEST
00000661: CALLVALUE
00000662: DUP1
00000663: ISZERO
00000664: PUSH2 0x066c
00000667: JUMPI
00000668: PUSH1 0x00
0000066a: DUP1
0000066b: REVERT
0000066c: JUMPDEST
0000066d: POP
0000066e: PUSH2 0x036e
00000671: PUSH2 0x067b
00000674: CALLDATASIZE
00000675: PUSH1 0x04
00000677: PUSH2 0x51c3
0000067a: JUMP
0000067b: JUMPDEST
0000067c: PUSH2 0x175a
0000067f: JUMP
00000680: JUMPDEST
00000681: CALLVALUE
00000682: DUP1
00000683: ISZERO
00000684: PUSH2 0x068c
00000687: JUMPI
00000688: PUSH1 0x00
0000068a: DUP1
0000068b: REVERT
0000068c: JUMPDEST
0000068d: POP
0000068e: PUSH2 0x023f
00000691: PUSH2 0x069b
00000694: CALLDATASIZE
00000695: PUSH1 0x04
00000697: PUSH2 0x5787
0000069a: JUMP
0000069b: JUMPDEST
0000069c: PUSH2 0x17d2
0000069f: JUMP
000006a0: JUMPDEST
000006a1: CALLVALUE
000006a2: DUP1
000006a3: ISZERO
000006a4: PUSH2 0x06ac
000006a7: JUMPI
000006a8: PUSH1 0x00
000006aa: DUP1
000006ab: REVERT
000006ac: JUMPDEST
000006ad: POP
000006ae: PUSH2 0x06c0
000006b1: PUSH2 0x06bb
000006b4: CALLDATASIZE
000006b5: PUSH1 0x04
000006b7: PUSH2 0x5022
000006ba: JUMP
000006bb: JUMPDEST
000006bc: PUSH2 0x1828
000006bf: JUMP
000006c0: JUMPDEST
000006c1: PUSH1 0x40
000006c3: MLOAD
000006c4: PUSH2 0x02b6
000006c7: SWAP3
000006c8: SWAP2
000006c9: SWAP1
000006ca: PUSH2 0x5832
000006cd: JUMP
000006ce: JUMPDEST
000006cf: CALLVALUE
000006d0: DUP1
000006d1: ISZERO
000006d2: PUSH2 0x06da
000006d5: JUMPI
000006d6: PUSH1 0x00
000006d8: DUP1
000006d9: REVERT
000006da: JUMPDEST
000006db: POP
000006dc: PUSH2 0x023f
000006df: PUSH2 0x06e9
000006e2: CALLDATASIZE
000006e3: PUSH1 0x04
000006e5: PUSH2 0x5022
000006e8: JUMP
000006e9: JUMPDEST
000006ea: PUSH2 0x18d0
000006ed: JUMP
000006ee: JUMPDEST
000006ef: CALLVALUE
000006f0: DUP1
000006f1: ISZERO
000006f2: PUSH2 0x06fa
000006f5: JUMPI
000006f6: PUSH1 0x00
000006f8: DUP1
000006f9: REVERT
000006fa: JUMPDEST
000006fb: POP
000006fc: PUSH2 0x023f
000006ff: PUSH2 0x0709
00000702: CALLDATASIZE
00000703: PUSH1 0x04
00000705: PUSH2 0x529e
00000708: JUMP
00000709: JUMPDEST
0000070a: PUSH2 0x190b
0000070d: JUMP
0000070e: JUMPDEST
0000070f: CALLVALUE
00000710: DUP1
00000711: ISZERO
00000712: PUSH2 0x071a
00000715: JUMPI
00000716: PUSH1 0x00
00000718: DUP1
00000719: REVERT
0000071a: JUMPDEST
0000071b: POP
0000071c: PUSH2 0x072e
0000071f: PUSH2 0x0729
00000722: CALLDATASIZE
00000723: PUSH1 0x04
00000725: PUSH2 0x5873
00000728: JUMP
00000729: JUMPDEST
0000072a: PUSH2 0x1b93
0000072d: JUMP
0000072e: JUMPDEST
0000072f: PUSH1 0x40
00000731: DUP1
00000732: MLOAD
00000733: DUP3
00000734: MLOAD
00000735: PUSH1 0x01
00000737: PUSH1 0x01
00000739: PUSH1 0x40
0000073b: SHL
0000073c: SUB
0000073d: AND
0000073e: DUP2
0000073f: MSTORE
00000740: PUSH1 0x20
00000742: DUP1
00000743: DUP5
00000744: ADD
00000745: MLOAD
00000746: PUSH2 0xffff
00000749: AND
0000074a: SWAP1
0000074b: DUP3
0000074c: ADD
0000074d: MSTORE
0000074e: SWAP2
0000074f: DUP2
00000750: ADD
00000751: MLOAD
00000752: PUSH1 0x01
00000754: PUSH1 0x01
00000756: PUSH1 0x60
00000758: SHL
00000759: SUB
0000075a: NOT
0000075b: AND
0000075c: SWAP1
0000075d: DUP3
0000075e: ADD
0000075f: MSTORE
00000760: PUSH1 0x60
00000762: ADD
00000763: PUSH2 0x02b6
00000766: JUMP
00000767: JUMPDEST
00000768: PUSH2 0x0777
0000076b: PUSH2 0x0772
0000076e: PUSH2 0x114f
00000771: JUMP
00000772: JUMPDEST
00000773: PUSH2 0x1c10
00000776: JUMP
00000777: JUMPDEST
00000778: PUSH1 0x00
0000077a: PUSH2 0x0781
0000077d: PUSH2 0x1c59
00000780: JUMP
00000781: JUMPDEST
00000782: DUP1
00000783: SLOAD
00000784: PUSH1 0x01
00000786: PUSH1 0x01
00000788: PUSH1 0xa0
0000078a: SHL
0000078b: SUB
0000078c: DUP5
0000078d: DUP2
0000078e: AND
0000078f: PUSH1 0x01
00000791: PUSH1 0x01
00000793: PUSH1 0xa0
00000795: SHL
00000796: SUB
00000797: NOT
00000798: DUP4
00000799: AND
0000079a: DUP2
0000079b: OR
0000079c: DUP5
0000079d: SSTORE
0000079e: PUSH1 0x40
000007a0: MLOAD
000007a1: SWAP4
000007a2: SWAP5
000007a3: POP
000007a4: SWAP2
000007a5: AND
000007a6: SWAP2
000007a7: DUP3
000007a8: SWAP1
000007a9: PUSH32 0x51c4874e0f23f262e04a38c51751336dde72126d67f53eb672aaff02996b3ef6
000007ca: SWAP1
000007cb: PUSH1 0x00
000007cd: SWAP1
000007ce: LOG3
000007cf: POP
000007d0: POP
000007d1: POP
000007d2: JUMP
000007d3: JUMPDEST
000007d4: PUSH2 0x07db
000007d7: PUSH2 0x1c87
000007da: JUMP
000007db: JUMPDEST
000007dc: PUSH1 0x00
000007de: PUSH2 0x07f4
000007e1: PUSH2 0x07ef
000007e4: CALLDATASIZE
000007e5: DUP7
000007e6: SWAP1
000007e7: SUB
000007e8: DUP7
000007e9: ADD
000007ea: DUP7
000007eb: PUSH2 0x5351
000007ee: JUMP
000007ef: JUMPDEST
000007f0: PUSH2 0x1cb9
000007f3: JUMP
000007f4: JUMPDEST
000007f5: SWAP1
000007f6: POP
000007f7: PUSH2 0x0819
000007fa: PUSH2 0x0808
000007fd: CALLDATASIZE
000007fe: DUP7
000007ff: SWAP1
00000800: SUB
00000801: DUP7
00000802: ADD
00000803: DUP7
00000804: PUSH2 0x5351
00000807: JUMP
00000808: JUMPDEST
00000809: PUSH2 0x0813
0000080c: DUP6
0000080d: DUP5
0000080e: DUP1
0000080f: PUSH2 0x1d1d
00000812: JUMP
00000813: JUMPDEST
00000814: DUP5
00000815: PUSH2 0x1d76
00000818: JUMP
00000819: JUMPDEST
0000081a: POP
0000081b: POP
0000081c: POP
0000081d: POP
0000081e: JUMP
0000081f: JUMPDEST
00000820: PUSH1 0x40
00000822: DUP1
00000823: MLOAD
00000824: PUSH1 0x60
00000826: DUP2
00000827: ADD
00000828: DUP3
00000829: MSTORE
0000082a: PUSH1 0x00
0000082c: DUP1
0000082d: DUP3
0000082e: MSTORE
0000082f: PUSH1 0x20
00000831: DUP3
00000832: ADD
00000833: DUP2
00000834: SWAP1
00000835: MSTORE
00000836: SWAP2
00000837: DUP2
00000838: ADD
00000839: SWAP2
0000083a: SWAP1
0000083b: SWAP2
0000083c: MSTORE
0000083d: PUSH2 0x0845
00000840: DUP4
00000841: PUSH2 0x1e40
00000844: JUMP
00000845: JUMPDEST
00000846: PUSH2 0xffff
00000849: DUP4
0000084a: AND
0000084b: PUSH1 0x00
0000084d: SWAP1
0000084e: DUP2
0000084f: MSTORE
00000850: PUSH1 0x20
00000852: SWAP2
00000853: DUP3
00000854: MSTORE
00000855: PUSH1 0x40
00000857: SWAP1
00000858: DUP2
00000859: SWAP1
0000085a: KECCAK256
0000085b: DUP2
0000085c: MLOAD
0000085d: PUSH1 0x60
0000085f: DUP2
00000860: ADD
00000861: DUP4
00000862: MSTORE
00000863: SWAP1
00000864: SLOAD
00000865: PUSH1 0x01
00000867: PUSH1 0x01
00000869: PUSH1 0x48
0000086b: SHL
0000086c: SUB
0000086d: DUP1
0000086e: DUP3
0000086f: AND
00000870: DUP4
00000871: MSTORE
00000872: PUSH1 0x01
00000874: PUSH1 0x48
00000876: SHL
00000877: DUP3
00000878: DIV
00000879: AND
0000087a: SWAP4
0000087b: DUP3
0000087c: ADD
0000087d: SWAP4
0000087e: SWAP1
0000087f: SWAP4
00000880: MSTORE
00000881: PUSH1 0x01
00000883: PUSH1 0x90
00000885: SHL
00000886: SWAP1
00000887: SWAP3
00000888: DIV
00000889: PUSH1 0x01
0000088b: PUSH1 0x01
0000088d: PUSH1 0x40
0000088f: SHL
00000890: SUB
00000891: AND
00000892: SWAP1
00000893: DUP3
00000894: ADD
00000895: MSTORE
00000896: SWAP1
00000897: POP
00000898: JUMPDEST
00000899: SWAP3
0000089a: SWAP2
0000089b: POP
0000089c: POP
0000089d: JUMP
0000089e: JUMPDEST
0000089f: PUSH2 0x08a6
000008a2: PUSH2 0x1c87
000008a5: JUMP
000008a6: JUMPDEST
000008a7: PUSH2 0x08af
000008aa: DUP2
000008ab: PUSH2 0x1e9f
000008ae: JUMP
000008af: JUMPDEST
000008b0: POP
000008b1: JUMP
000008b2: JUMPDEST
000008b3: PUSH2 0x08ba
000008b6: PUSH2 0x1c87
000008b9: JUMP
000008ba: JUMPDEST
000008bb: PUSH1 0x00
000008bd: PUSH2 0x08ce
000008c0: PUSH2 0x07ef
000008c3: CALLDATASIZE
000008c4: DUP6
000008c5: SWAP1
000008c6: SUB
000008c7: DUP6
000008c8: ADD
000008c9: DUP6
000008ca: PUSH2 0x5351
000008cd: JUMP
000008ce: JUMPDEST
000008cf: SWAP1
000008d0: POP
000008d1: PUSH2 0x08f2
000008d4: PUSH2 0x08e2
000008d7: CALLDATASIZE
000008d8: DUP6
000008d9: SWAP1
000008da: SUB
000008db: DUP6
000008dc: ADD
000008dd: DUP6
000008de: PUSH2 0x5351
000008e1: JUMP
000008e2: JUMPDEST
000008e3: PUSH2 0x08ed
000008e6: DUP5
000008e7: DUP5
000008e8: DUP1
000008e9: PUSH2 0x1d1d
000008ec: JUMP
000008ed: JUMPDEST
000008ee: PUSH2 0x1fad
000008f1: JUMP
000008f2: JUMPDEST
000008f3: POP
000008f4: POP
000008f5: POP
000008f6: JUMP
000008f7: JUMPDEST
000008f8: PUSH1 0x60
000008fa: PUSH20 0x0dab1c1733f1a9b84c90b08da78db014b3b13ab5
0000090f: PUSH4 0xc5525990
00000914: PUSH1 0x40
00000916: MLOAD
00000917: DUP2
00000918: PUSH4 0xffffffff
0000091d: AND
0000091e: PUSH1 0xe0
00000920: SHL
00000921: DUP2
00000922: MSTORE
00000923: PUSH1 0x04
00000925: ADD
00000926: PUSH1 0x00
00000928: PUSH1 0x40
0000092a: MLOAD
0000092b: DUP1
0000092c: DUP4
0000092d: SUB
0000092e: DUP2
0000092f: DUP7
00000930: GAS
00000931: DELEGATECALL
00000932: ISZERO
00000933: DUP1
00000934: ISZERO
00000935: PUSH2 0x0942
00000938: JUMPI
00000939: RETURNDATASIZE
0000093a: PUSH1 0x00
0000093c: DUP1
0000093d: RETURNDATACOPY
0000093e: RETURNDATASIZE
0000093f: PUSH1 0x00
00000941: REVERT
00000942: JUMPDEST
00000943: POP
00000944: POP
00000945: POP
00000946: POP
00000947: PUSH1 0x40
00000949: MLOAD
0000094a: RETURNDATASIZE
0000094b: PUSH1 0x00
0000094d: DUP3
0000094e: RETURNDATACOPY
0000094f: PUSH1 0x1f
00000951: RETURNDATASIZE
00000952: SWAP1
00000953: DUP2
00000954: ADD
00000955: PUSH1 0x1f
00000957: NOT
00000958: AND
00000959: DUP3
0000095a: ADD
0000095b: PUSH1 0x40
0000095d: MSTORE
0000095e: PUSH2 0x096a
00000961: SWAP2
00000962: SWAP1
00000963: DUP2
00000964: ADD
00000965: SWAP1
00000966: PUSH2 0x58bc
00000969: JUMP
0000096a: JUMPDEST
0000096b: SWAP1
0000096c: POP
0000096d: SWAP1
0000096e: JUMP
0000096f: JUMPDEST
00000970: PUSH1 0x40
00000972: DUP1
00000973: MLOAD
00000974: PUSH2 0x0100
00000977: DUP2
00000978: ADD
00000979: DUP3
0000097a: MSTORE
0000097b: PUSH1 0x00
0000097d: DUP1
0000097e: DUP3
0000097f: MSTORE
00000980: PUSH1 0x20
00000982: DUP3
00000983: ADD
00000984: DUP2
00000985: SWAP1
00000986: MSTORE
00000987: SWAP2
00000988: DUP2
00000989: ADD
0000098a: DUP3
0000098b: SWAP1
0000098c: MSTORE
0000098d: PUSH1 0x60
0000098f: DUP1
00000990: DUP3
00000991: ADD
00000992: DUP4
00000993: SWAP1
00000994: MSTORE
00000995: PUSH1 0x80
00000997: DUP3
00000998: ADD
00000999: DUP4
0000099a: SWAP1
0000099b: MSTORE
0000099c: PUSH1 0xa0
0000099e: DUP3
0000099f: ADD
000009a0: DUP4
000009a1: SWAP1
000009a2: MSTORE
000009a3: PUSH1 0xc0
000009a5: DUP3
000009a6: ADD
000009a7: SWAP3
000009a8: SWAP1
000009a9: SWAP3
000009aa: MSTORE
000009ab: PUSH1 0xe0
000009ad: DUP2
000009ae: ADD
000009af: SWAP2
000009b0: SWAP1
000009b1: SWAP2
000009b2: MSTORE
000009b3: PUSH2 0x09ba
000009b6: PUSH2 0x2059
000009b9: JUMP
000009ba: JUMPDEST
000009bb: PUSH1 0x01
000009bd: PUSH1 0x01
000009bf: PUSH1 0x40
000009c1: SHL
000009c2: SUB
000009c3: DUP4
000009c4: DUP2
000009c5: AND
000009c6: PUSH1 0x00
000009c8: SWAP1
000009c9: DUP2
000009ca: MSTORE
000009cb: PUSH1 0x20
000009cd: SWAP3
000009ce: DUP4
000009cf: MSTORE
000009d0: PUSH1 0x40
000009d2: SWAP1
000009d3: DUP2
000009d4: SWAP1
000009d5: KECCAK256
000009d6: DUP2
000009d7: MLOAD
000009d8: PUSH2 0x0100
000009db: DUP2
000009dc: ADD
000009dd: DUP4
000009de: MSTORE
000009df: DUP2
000009e0: SLOAD
000009e1: DUP2
000009e2: MSTORE
000009e3: PUSH1 0x01
000009e5: DUP3
000009e6: ADD
000009e7: SLOAD
000009e8: SWAP5
000009e9: DUP2
000009ea: ADD
000009eb: SWAP5
000009ec: SWAP1
000009ed: SWAP5
000009ee: MSTORE
000009ef: PUSH1 0x02
000009f1: DUP2
000009f2: ADD
000009f3: SLOAD
000009f4: PUSH1 0x01
000009f6: PUSH1 0x01
000009f8: PUSH1 0xa0
000009fa: SHL
000009fb: SUB
000009fc: DUP1
000009fd: DUP3
000009fe: AND
000009ff: SWAP4
00000a00: DUP7
00000a01: ADD
00000a02: SWAP4
00000a03: SWAP1
00000a04: SWAP4
00000a05: MSTORE
00000a06: PUSH1 0x01
00000a08: PUSH1 0xa0
00000a0a: SHL
00000a0b: DUP2
00000a0c: DIV
00000a0d: PUSH1 0x01
00000a0f: PUSH1 0x01
00000a11: PUSH1 0x48
00000a13: SHL
00000a14: SUB
00000a15: AND
00000a16: PUSH1 0x60
00000a18: DUP7
00000a19: ADD
00000a1a: MSTORE
00000a1b: PUSH1 0x01
00000a1d: PUSH1 0xe8
00000a1f: SHL
00000a20: SWAP1
00000a21: DIV
00000a22: PUSH2 0xffff
00000a25: AND
00000a26: PUSH1 0x80
00000a28: DUP6
00000a29: ADD
00000a2a: MSTORE
00000a2b: PUSH1 0x03
00000a2d: DUP2
00000a2e: ADD
00000a2f: SLOAD
00000a30: SWAP3
00000a31: DUP4
00000a32: AND
00000a33: PUSH1 0xa0
00000a35: DUP6
00000a36: ADD
00000a37: MSTORE
00000a38: PUSH1 0x01
00000a3a: PUSH1 0x40
00000a3c: SHL
00000a3d: SWAP1
00000a3e: SWAP3
00000a3f: DIV
00000a40: AND
00000a41: PUSH1 0xc0
00000a43: DUP4
00000a44: ADD
00000a45: MSTORE
00000a46: PUSH1 0x04
00000a48: DUP2
00000a49: ADD
00000a4a: DUP1
00000a4b: SLOAD
00000a4c: PUSH1 0xe0
00000a4e: DUP5
00000a4f: ADD
00000a50: SWAP2
00000a51: SWAP1
00000a52: PUSH2 0x0a5a
00000a55: SWAP1
00000a56: PUSH2 0x5904
00000a59: JUMP
00000a5a: JUMPDEST
00000a5b: DUP1
00000a5c: PUSH1 0x1f
00000a5e: ADD
00000a5f: PUSH1 0x20
00000a61: DUP1
00000a62: SWAP2
00000a63: DIV
00000a64: MUL
00000a65: PUSH1 0x20
00000a67: ADD
00000a68: PUSH1 0x40
00000a6a: MLOAD
00000a6b: SWAP1
00000a6c: DUP2
00000a6d: ADD
00000a6e: PUSH1 0x40
00000a70: MSTORE
00000a71: DUP1
00000a72: SWAP3
00000a73: SWAP2
00000a74: SWAP1
00000a75: DUP2
00000a76: DUP2
00000a77: MSTORE
00000a78: PUSH1 0x20
00000a7a: ADD
00000a7b: DUP3
00000a7c: DUP1
00000a7d: SLOAD
00000a7e: PUSH2 0x0a86
00000a81: SWAP1
00000a82: PUSH2 0x5904
00000a85: JUMP
00000a86: JUMPDEST
00000a87: DUP1
00000a88: ISZERO
00000a89: PUSH2 0x0ad3
00000a8c: JUMPI
00000a8d: DUP1
00000a8e: PUSH1 0x1f
00000a90: LT
00000a91: PUSH2 0x0aa8
00000a94: JUMPI
00000a95: PUSH2 0x0100
00000a98: DUP1
00000a99: DUP4
00000a9a: SLOAD
00000a9b: DIV
00000a9c: MUL
00000a9d: DUP4
00000a9e: MSTORE
00000a9f: SWAP2
00000aa0: PUSH1 0x20
00000aa2: ADD
00000aa3: SWAP2
00000aa4: PUSH2 0x0ad3
00000aa7: JUMP
00000aa8: JUMPDEST
00000aa9: DUP3
00000aaa: ADD
00000aab: SWAP2
00000aac: SWAP1
00000aad: PUSH1 0x00
00000aaf: MSTORE
00000ab0: PUSH1 0x20
00000ab2: PUSH1 0x00
00000ab4: KECCAK256
00000ab5: SWAP1
00000ab6: JUMPDEST
00000ab7: DUP2
00000ab8: SLOAD
00000ab9: DUP2
00000aba: MSTORE
00000abb: SWAP1
00000abc: PUSH1 0x01
00000abe: ADD
00000abf: SWAP1
00000ac0: PUSH1 0x20
00000ac2: ADD
00000ac3: DUP1
00000ac4: DUP4
00000ac5: GT
00000ac6: PUSH2 0x0ab6
00000ac9: JUMPI
00000aca: DUP3
00000acb: SWAP1
00000acc: SUB
00000acd: PUSH1 0x1f
00000acf: AND
00000ad0: DUP3
00000ad1: ADD
00000ad2: SWAP2
00000ad3: JUMPDEST
00000ad4: POP
00000ad5: POP
00000ad6: POP
00000ad7: POP
00000ad8: POP
00000ad9: DUP2
00000ada: MSTORE
00000adb: POP
00000adc: POP
00000add: SWAP1
00000ade: POP
00000adf: SWAP2
00000ae0: SWAP1
00000ae1: POP
00000ae2: JUMP
00000ae3: JUMPDEST
00000ae4: PUSH1 0x00
00000ae6: DUP1
00000ae7: PUSH2 0x0aef
00000aea: DUP4
00000aeb: PUSH2 0x2087
00000aee: JUMP
00000aef: JUMPDEST
00000af0: SWAP1
00000af1: POP
00000af2: PUSH1 0x00
00000af4: PUSH2 0x0b1d
00000af7: DUP3
00000af8: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180
00000b19: PUSH2 0x20de
00000b1c: JUMP
00000b1d: JUMPDEST
00000b1e: SWAP1
00000b1f: POP
00000b20: PUSH1 0x00
00000b22: PUSH2 0x0b2a
00000b25: DUP6
00000b26: PUSH2 0x1cb9
00000b29: JUMP
00000b2a: JUMPDEST
00000b2b: SWAP1
00000b2c: POP
00000b2d: PUSH2 0x0b3f
00000b30: PUSH1 0x01
00000b32: PUSH1 0x01
00000b34: PUSH1 0x48
00000b36: SHL
00000b37: SUB
00000b38: DUP4
00000b39: AND
00000b3a: DUP3
00000b3b: PUSH2 0x21ab
00000b3e: JUMP
00000b3f: JUMPDEST
00000b40: SWAP6
00000b41: SWAP5
00000b42: POP
00000b43: POP
00000b44: POP
00000b45: POP
00000b46: POP
00000b47: JUMP
00000b48: JUMPDEST
00000b49: PUSH2 0x0b50
00000b4c: PUSH2 0x1c87
00000b4f: JUMP
00000b50: JUMPDEST
00000b51: PUSH2 0x0b5a
00000b54: DUP3
00000b55: DUP3
00000b56: PUSH2 0x21c8
00000b59: JUMP
00000b5a: JUMPDEST
00000b5b: POP
00000b5c: POP
00000b5d: JUMP
00000b5e: JUMPDEST
00000b5f: PUSH1 0x40
00000b61: DUP1
00000b62: MLOAD
00000b63: PUSH1 0x60
00000b65: DUP2
00000b66: ADD
00000b67: DUP3
00000b68: MSTORE
00000b69: PUSH1 0x00
00000b6b: DUP1
00000b6c: DUP3
00000b6d: MSTORE
00000b6e: PUSH1 0x20
00000b70: DUP3
00000b71: ADD
00000b72: DUP2
00000b73: SWAP1
00000b74: MSTORE
00000b75: SWAP2
00000b76: DUP2
00000b77: ADD
00000b78: SWAP2
00000b79: SWAP1
00000b7a: SWAP2
00000b7b: MSTORE
00000b7c: PUSH2 0x0b84
00000b7f: DUP3
00000b80: PUSH2 0x2087
00000b83: JUMP
00000b84: JUMPDEST
00000b85: PUSH1 0x40
00000b87: DUP1
00000b88: MLOAD
00000b89: PUSH1 0x60
00000b8b: DUP2
00000b8c: ADD
00000b8d: DUP3
00000b8e: MSTORE
00000b8f: SWAP2
00000b90: SLOAD
00000b91: PUSH1 0x01
00000b93: PUSH1 0x01
00000b95: PUSH1 0x48
00000b97: SHL
00000b98: SUB
00000b99: DUP1
00000b9a: DUP3
00000b9b: AND
00000b9c: DUP5
00000b9d: MSTORE
00000b9e: PUSH1 0x01
00000ba0: PUSH1 0x48
00000ba2: SHL
00000ba3: DUP3
00000ba4: DIV
00000ba5: AND
00000ba6: PUSH1 0x20
00000ba8: DUP5
00000ba9: ADD
00000baa: MSTORE
00000bab: PUSH1 0x01
00000bad: PUSH1 0x90
00000baf: SHL
00000bb0: SWAP1
00000bb1: DIV
00000bb2: PUSH1 0x01
00000bb4: PUSH1 0x01
00000bb6: PUSH1 0x40
00000bb8: SHL
00000bb9: SUB
00000bba: AND
00000bbb: SWAP1
00000bbc: DUP3
00000bbd: ADD
00000bbe: MSTORE
00000bbf: SWAP3
00000bc0: SWAP2
00000bc1: POP
00000bc2: POP
00000bc3: JUMP
00000bc4: JUMPDEST
00000bc5: PUSH2 0x0bcc
00000bc8: PUSH2 0x1c87
00000bcb: JUMP
00000bcc: JUMPDEST
00000bcd: PUSH2 0x0bd4
00000bd0: PUSH2 0x22a0
00000bd3: JUMP
00000bd4: JUMPDEST
00000bd5: JUMP
00000bd6: JUMPDEST
00000bd7: PUSH2 0x0bde
00000bda: PUSH2 0x1c87
00000bdd: JUMP
00000bde: JUMPDEST
00000bdf: PUSH2 0x0beb
00000be2: PUSH1 0x20
00000be4: DUP4
00000be5: ADD
00000be6: DUP4
00000be7: PUSH2 0x576a
00000bea: JUMP
00000beb: JUMPDEST
00000bec: PUSH2 0xffff
00000bef: AND
00000bf0: ISZERO
00000bf1: DUP1
00000bf2: PUSH2 0x0bfd
00000bf5: JUMPI
00000bf6: POP
00000bf7: PUSH1 0x20
00000bf9: DUP3
00000bfa: ADD
00000bfb: CALLDATALOAD
00000bfc: ISZERO
00000bfd: JUMPDEST
00000bfe: ISZERO
00000bff: PUSH2 0x0c1b
00000c02: JUMPI
00000c03: PUSH1 0x40
00000c05: MLOAD
00000c06: PUSH4 0x07ed98ed
00000c0b: PUSH1 0xe3
00000c0d: SHL
00000c0e: DUP2
00000c0f: MSTORE
00000c10: PUSH1 0x04
00000c12: ADD
00000c13: PUSH1 0x40
00000c15: MLOAD
00000c16: DUP1
00000c17: SWAP2
00000c18: SUB
00000c19: SWAP1
00000c1a: REVERT
00000c1b: JUMPDEST
00000c1c: PUSH2 0xffff
00000c1f: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000002
00000c40: AND
00000c41: PUSH2 0x0c4d
00000c44: PUSH1 0x20
00000c46: DUP5
00000c47: ADD
00000c48: DUP5
00000c49: PUSH2 0x576a
00000c4c: JUMP
00000c4d: JUMPDEST
00000c4e: PUSH2 0xffff
00000c51: AND
00000c52: SUB
00000c53: PUSH2 0x0c6f
00000c56: JUMPI
00000c57: PUSH1 0x40
00000c59: MLOAD
00000c5a: PUSH4 0xa2a27e1d
00000c5f: PUSH1 0xe0
00000c61: SHL
00000c62: DUP2
00000c63: MSTORE
00000c64: PUSH1 0x04
00000c66: ADD
00000c67: PUSH1 0x40
00000c69: MLOAD
00000c6a: DUP1
00000c6b: SWAP2
00000c6c: SUB
00000c6d: SWAP1
00000c6e: REVERT
00000c6f: JUMPDEST
00000c70: PUSH1 0x00
00000c72: PUSH2 0x0c79
00000c75: PUSH2 0x2306
00000c78: JUMP
00000c79: JUMPDEST
00000c7a: PUSH1 0x01
00000c7c: PUSH1 0x01
00000c7e: PUSH1 0xa0
00000c80: SHL
00000c81: SUB
00000c82: DUP4
00000c83: AND
00000c84: PUSH1 0x00
00000c86: SWAP1
00000c87: DUP2
00000c88: MSTORE
00000c89: PUSH1 0x20
00000c8b: SWAP2
00000c8c: DUP3
00000c8d: MSTORE
00000c8e: PUSH1 0x40
00000c90: SWAP1
00000c91: DUP2
00000c92: SWAP1
00000c93: KECCAK256
00000c94: DUP2
00000c95: MLOAD
00000c96: DUP1
00000c97: DUP4
00000c98: ADD
00000c99: SWAP1
00000c9a: SWAP3
00000c9b: MSTORE
00000c9c: DUP1
00000c9d: SLOAD
00000c9e: PUSH2 0xffff
00000ca1: AND
00000ca2: DUP3
00000ca3: MSTORE
00000ca4: PUSH1 0x01
00000ca6: ADD
00000ca7: SLOAD
00000ca8: SWAP2
00000ca9: DUP2
00000caa: ADD
00000cab: DUP3
00000cac: SWAP1
00000cad: MSTORE
00000cae: SWAP2
00000caf: POP
00000cb0: ISZERO
00000cb1: PUSH2 0x0d01
00000cb4: JUMPI
00000cb5: PUSH2 0x0cc1
00000cb8: PUSH1 0x20
00000cba: DUP5
00000cbb: ADD
00000cbc: DUP5
00000cbd: PUSH2 0x576a
00000cc0: JUMP
00000cc1: JUMPDEST
00000cc2: PUSH2 0xffff
00000cc5: AND
00000cc6: DUP2
00000cc7: PUSH1 0x00
00000cc9: ADD
00000cca: MLOAD
00000ccb: PUSH2 0xffff
00000cce: AND
00000ccf: EQ
00000cd0: ISZERO
00000cd1: DUP1
00000cd2: PUSH2 0x0ce3
00000cd5: JUMPI
00000cd6: POP
00000cd7: DUP3
00000cd8: PUSH1 0x20
00000cda: ADD
00000cdb: CALLDATALOAD
00000cdc: DUP2
00000cdd: PUSH1 0x20
00000cdf: ADD
00000ce0: MLOAD
00000ce1: EQ
00000ce2: ISZERO
00000ce3: JUMPDEST
00000ce4: ISZERO
00000ce5: PUSH2 0x0d01
00000ce8: JUMPI
00000ce9: PUSH1 0x40
00000ceb: MLOAD
00000cec: PUSH4 0x3a1d336b
00000cf1: PUSH1 0xe2
00000cf3: SHL
00000cf4: DUP2
00000cf5: MSTORE
00000cf6: PUSH1 0x04
00000cf8: ADD
00000cf9: PUSH1 0x40
00000cfb: MLOAD
00000cfc: DUP1
00000cfd: SWAP2
00000cfe: SUB
00000cff: SWAP1
00000d00: REVERT
00000d01: JUMPDEST
00000d02: PUSH1 0x00
00000d04: PUSH2 0x0d0b
00000d07: PUSH2 0x2334
00000d0a: JUMP
00000d0b: JUMPDEST
00000d0c: PUSH1 0x00
00000d0e: PUSH2 0x0d1a
00000d11: PUSH1 0x20
00000d13: DUP8
00000d14: ADD
00000d15: DUP8
00000d16: PUSH2 0x576a
00000d19: JUMP
00000d1a: JUMPDEST
00000d1b: PUSH2 0xffff
00000d1e: AND
00000d1f: DUP2
00000d20: MSTORE
00000d21: PUSH1 0x20
00000d23: DUP1
00000d24: DUP3
00000d25: ADD
00000d26: SWAP3
00000d27: SWAP1
00000d28: SWAP3
00000d29: MSTORE
00000d2a: PUSH1 0x40
00000d2c: SWAP1
00000d2d: DUP2
00000d2e: ADD
00000d2f: PUSH1 0x00
00000d31: SWAP1
00000d32: DUP2
00000d33: KECCAK256
00000d34: DUP8
00000d35: DUP5
00000d36: ADD
00000d37: CALLDATALOAD
00000d38: DUP3
00000d39: MSTORE
00000d3a: SWAP1
00000d3b: SWAP3
00000d3c: MSTORE
00000d3d: SWAP1
00000d3e: KECCAK256
00000d3f: SLOAD
00000d40: PUSH1 0x01
00000d42: PUSH1 0x01
00000d44: PUSH1 0xa0
00000d46: SHL
00000d47: SUB
00000d48: AND
00000d49: SWAP1
00000d4a: POP
00000d4b: DUP1
00000d4c: ISZERO
00000d4d: PUSH2 0x0d7f
00000d50: JUMPI
00000d51: PUSH2 0x0d58
00000d54: PUSH2 0x2306
00000d57: JUMP
00000d58: JUMPDEST
00000d59: PUSH1 0x01
00000d5b: PUSH1 0x01
00000d5d: PUSH1 0xa0
00000d5f: SHL
00000d60: SUB
00000d61: DUP3
00000d62: AND
00000d63: PUSH1 0x00
00000d65: SWAP1
00000d66: DUP2
00000d67: MSTORE
00000d68: PUSH1 0x20
00000d6a: SWAP2
00000d6b: SWAP1
00000d6c: SWAP2
00000d6d: MSTORE
00000d6e: PUSH1 0x40
00000d70: DUP2
00000d71: KECCAK256
00000d72: DUP1
00000d73: SLOAD
00000d74: PUSH2 0xffff
00000d77: NOT
00000d78: AND
00000d79: DUP2
00000d7a: SSTORE
00000d7b: PUSH1 0x01
00000d7d: ADD
00000d7e: SSTORE
00000d7f: JUMPDEST
00000d80: PUSH1 0x40
00000d82: MLOAD
00000d83: DUP1
00000d84: PUSH1 0x20
00000d86: ADD
00000d87: PUSH1 0x40
00000d89: MSTORE
00000d8a: DUP1
00000d8b: DUP5
00000d8c: PUSH1 0x01
00000d8e: PUSH1 0x01
00000d90: PUSH1 0xa0
00000d92: SHL
00000d93: SUB
00000d94: AND
00000d95: DUP2
00000d96: MSTORE
00000d97: POP
00000d98: PUSH2 0x0d9f
00000d9b: PUSH2 0x2334
00000d9e: JUMP
00000d9f: JUMPDEST
00000da0: PUSH1 0x00
00000da2: PUSH2 0x0dae
00000da5: PUSH1 0x20
00000da7: DUP9
00000da8: ADD
00000da9: DUP9
00000daa: PUSH2 0x576a
00000dad: JUMP
00000dae: JUMPDEST
00000daf: PUSH2 0xffff
00000db2: AND
00000db3: DUP2
00000db4: MSTORE
00000db5: PUSH1 0x20
00000db7: DUP1
00000db8: DUP3
00000db9: ADD
00000dba: SWAP3
00000dbb: SWAP1
00000dbc: SWAP3
00000dbd: MSTORE
00000dbe: PUSH1 0x40
00000dc0: SWAP1
00000dc1: DUP2
00000dc2: ADD
00000dc3: PUSH1 0x00
00000dc5: SWAP1
00000dc6: DUP2
00000dc7: KECCAK256
00000dc8: DUP9
00000dc9: DUP5
00000dca: ADD
00000dcb: CALLDATALOAD
00000dcc: DUP3
00000dcd: MSTORE
00000dce: SWAP1
00000dcf: SWAP3
00000dd0: MSTORE
00000dd1: SWAP1
00000dd2: KECCAK256
00000dd3: SWAP1
00000dd4: MLOAD
00000dd5: DUP2
00000dd6: SLOAD
00000dd7: PUSH1 0x01
00000dd9: PUSH1 0x01
00000ddb: PUSH1 0xa0
00000ddd: SHL
00000dde: SUB
00000ddf: NOT
00000de0: AND
00000de1: PUSH1 0x01
00000de3: PUSH1 0x01
00000de5: PUSH1 0xa0
00000de7: SHL
00000de8: SUB
00000de9: SWAP1
00000dea: SWAP2
00000deb: AND
00000dec: OR
00000ded: SWAP1
00000dee: SSTORE
00000def: DUP4
00000df0: PUSH2 0x0df7
00000df3: PUSH2 0x2306
00000df6: JUMP
00000df7: JUMPDEST
00000df8: PUSH1 0x01
00000dfa: PUSH1 0x01
00000dfc: PUSH1 0xa0
00000dfe: SHL
00000dff: SUB
00000e00: DUP6
00000e01: AND
00000e02: PUSH1 0x00
00000e04: SWAP1
00000e05: DUP2
00000e06: MSTORE
00000e07: PUSH1 0x20
00000e09: SWAP2
00000e0a: SWAP1
00000e0b: SWAP2
00000e0c: MSTORE
00000e0d: PUSH1 0x40
00000e0f: SWAP1
00000e10: KECCAK256
00000e11: PUSH2 0x0e1a
00000e14: DUP3
00000e15: DUP3
00000e16: PUSH2 0x5938
00000e19: JUMP
00000e1a: JUMPDEST
00000e1b: POP
00000e1c: POP
00000e1d: POP
00000e1e: POP
00000e1f: POP
00000e20: POP
00000e21: JUMP
00000e22: JUMPDEST
00000e23: PUSH1 0x00
00000e25: PUSH2 0x0e2c
00000e28: PUSH2 0x2362
00000e2b: JUMP
00000e2c: JUMPDEST
00000e2d: SLOAD
00000e2e: PUSH1 0xff
00000e30: AND
00000e31: SWAP2
00000e32: SWAP1
00000e33: POP
00000e34: JUMP
00000e35: JUMPDEST
00000e36: PUSH2 0x0e3d
00000e39: PUSH2 0x2390
00000e3c: JUMP
00000e3d: JUMPDEST
00000e3e: PUSH2 0x0e45
00000e41: PUSH2 0x1645
00000e44: JUMP
00000e45: JUMPDEST
00000e46: ISZERO
00000e47: PUSH2 0x0e63
00000e4a: JUMPI
00000e4b: PUSH1 0x40
00000e4d: MLOAD
00000e4e: PUSH4 0x09e3d0f3
00000e53: PUSH1 0xe1
00000e55: SHL
00000e56: DUP2
00000e57: MSTORE
00000e58: PUSH1 0x04
00000e5a: ADD
00000e5b: PUSH1 0x40
00000e5d: MLOAD
00000e5e: DUP1
00000e5f: SWAP2
00000e60: SUB
00000e61: SWAP1
00000e62: REVERT
00000e63: JUMPDEST
00000e64: PUSH1 0x00
00000e66: PUSH2 0x0e6e
00000e69: DUP3
00000e6a: PUSH2 0x23c8
00000e6d: JUMP
00000e6e: JUMPDEST
00000e6f: DUP1
00000e70: MLOAD
00000e71: SWAP1
00000e72: PUSH1 0x20
00000e74: ADD
00000e75: KECCAK256
00000e76: SWAP1
00000e77: POP
00000e78: PUSH1 0x00
00000e7a: PUSH2 0x0e82
00000e7d: DUP5
00000e7e: PUSH2 0x1b93
00000e81: JUMP
00000e82: JUMPDEST
00000e83: DUP1
00000e84: MLOAD
00000e85: SWAP1
00000e86: SWAP2
00000e87: POP
00000e88: PUSH1 0x01
00000e8a: PUSH1 0x01
00000e8c: PUSH1 0x40
00000e8e: SHL
00000e8f: SUB
00000e90: AND
00000e91: PUSH1 0x00
00000e93: SUB
00000e94: PUSH2 0x0eb8
00000e97: JUMPI
00000e98: PUSH1 0x40
00000e9a: MLOAD
00000e9b: PUSH4 0x0301bcaf
00000ea0: PUSH1 0xe6
00000ea2: SHL
00000ea3: DUP2
00000ea4: MSTORE
00000ea5: PUSH1 0x04
00000ea7: DUP2
00000ea8: ADD
00000ea9: DUP6
00000eaa: SWAP1
00000eab: MSTORE
00000eac: PUSH1 0x24
00000eae: ADD
00000eaf: JUMPDEST
00000eb0: PUSH1 0x40
00000eb2: MLOAD
00000eb3: DUP1
00000eb4: SWAP2
00000eb5: SUB
00000eb6: SWAP1
00000eb7: REVERT
00000eb8: JUMPDEST
00000eb9: DUP2
00000eba: PUSH1 0x01
00000ebc: PUSH1 0x01
00000ebe: PUSH1 0x60
00000ec0: SHL
00000ec1: SUB
00000ec2: NOT
00000ec3: AND
00000ec4: DUP2
00000ec5: PUSH1 0x40
00000ec7: ADD
00000ec8: MLOAD
00000ec9: PUSH1 0x01
00000ecb: PUSH1 0x01
00000ecd: PUSH1 0x60
00000ecf: SHL
00000ed0: SUB
00000ed1: NOT
00000ed2: AND
00000ed3: EQ
00000ed4: PUSH2 0x0f0a
00000ed7: JUMPI
00000ed8: PUSH1 0x40
00000eda: DUP1
00000edb: DUP3
00000edc: ADD
00000edd: MLOAD
00000ede: SWAP1
00000edf: MLOAD
00000ee0: PUSH4 0x4af6f89b
00000ee5: PUSH1 0xe1
00000ee7: SHL
00000ee8: DUP2
00000ee9: MSTORE
00000eea: PUSH1 0x01
00000eec: PUSH1 0x01
00000eee: PUSH1 0x60
00000ef0: SHL
00000ef1: SUB
00000ef2: NOT
00000ef3: DUP1
00000ef4: DUP6
00000ef5: AND
00000ef6: PUSH1 0x04
00000ef8: DUP4
00000ef9: ADD
00000efa: MSTORE
00000efb: SWAP1
00000efc: SWAP2
00000efd: AND
00000efe: PUSH1 0x24
00000f00: DUP3
00000f01: ADD
00000f02: MSTORE
00000f03: PUSH1 0x44
00000f05: ADD
00000f06: PUSH2 0x0eaf
00000f09: JUMP
00000f0a: JUMPDEST
00000f0b: DUP1
00000f0c: MLOAD
00000f0d: PUSH1 0x01
00000f0f: PUSH1 0x01
00000f11: PUSH1 0x40
00000f13: SHL
00000f14: SUB
00000f15: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180
00000f36: DUP2
00000f37: AND
00000f38: SWAP2
00000f39: PUSH2 0x0f43
00000f3c: SWAP2
00000f3d: AND
00000f3e: TIMESTAMP
00000f3f: PUSH2 0x5977
00000f42: JUMP
00000f43: JUMPDEST
00000f44: LT
00000f45: ISZERO
00000f46: PUSH2 0x0f77
00000f49: JUMPI
00000f4a: DUP1
00000f4b: MLOAD
00000f4c: PUSH1 0x40
00000f4e: MLOAD
00000f4f: PUSH4 0x01cb739d
00000f54: PUSH1 0xe7
00000f56: SHL
00000f57: DUP2
00000f58: MSTORE
00000f59: PUSH1 0x04
00000f5b: DUP2
00000f5c: ADD
00000f5d: DUP7
00000f5e: SWAP1
00000f5f: MSTORE
00000f60: PUSH1 0x01
00000f62: PUSH1 0x01
00000f64: PUSH1 0x40
00000f66: SHL
00000f67: SUB
00000f68: SWAP1
00000f69: SWAP2
00000f6a: AND
00000f6b: PUSH1 0x24
00000f6d: DUP3
00000f6e: ADD
00000f6f: MSTORE
00000f70: PUSH1 0x44
00000f72: ADD
00000f73: PUSH2 0x0eaf
00000f76: JUMP
00000f77: JUMPDEST
00000f78: PUSH2 0x0f7f
00000f7b: PUSH2 0x246e
00000f7e: JUMP
00000f7f: JUMPDEST
00000f80: PUSH1 0x00
00000f82: DUP6
00000f83: DUP2
00000f84: MSTORE
00000f85: PUSH1 0x20
00000f87: SWAP2
00000f88: DUP3
00000f89: MSTORE
00000f8a: PUSH1 0x40
00000f8c: DUP2
00000f8d: KECCAK256
00000f8e: DUP1
00000f8f: SLOAD
00000f90: PUSH1 0x01
00000f92: PUSH1 0x01
00000f94: PUSH1 0xf0
00000f96: SHL
00000f97: SUB
00000f98: NOT
00000f99: AND
00000f9a: SWAP1
00000f9b: SSTORE
00000f9c: SWAP1
00000f9d: DUP5
00000f9e: ADD
00000f9f: MLOAD
00000fa0: PUSH2 0x0fa8
00000fa3: SWAP1
00000fa4: PUSH2 0x249c
00000fa7: JUMP
00000fa8: JUMPDEST
00000fa9: SWAP1
00000faa: POP
00000fab: PUSH1 0x00
00000fad: PUSH2 0x0fb9
00000fb0: DUP6
00000fb1: PUSH1 0x60
00000fb3: ADD
00000fb4: MLOAD
00000fb5: PUSH2 0x256b
00000fb8: JUMP
00000fb9: JUMPDEST
00000fba: SWAP1
00000fbb: POP
00000fbc: PUSH1 0x00
00000fbe: PUSH2 0x0fce
00000fc1: DUP7
00000fc2: PUSH1 0x20
00000fc4: ADD
00000fc5: MLOAD
00000fc6: PUSH1 0x20
00000fc8: ADD
00000fc9: MLOAD
00000fca: PUSH2 0x1cb9
00000fcd: JUMP
00000fce: JUMPDEST
00000fcf: SWAP1
00000fd0: POP
00000fd1: PUSH1 0x00
00000fd3: PUSH2 0x0ffe
00000fd6: DUP3
00000fd7: DUP4
00000fd8: PUSH2 0x0ff7
00000fdb: DUP6
00000fdc: DUP12
00000fdd: PUSH1 0x00
00000fdf: ADD
00000fe0: MLOAD
00000fe1: PUSH1 0x01
00000fe3: PUSH1 0x01
00000fe5: PUSH1 0x48
00000fe7: SHL
00000fe8: SUB
00000fe9: AND
00000fea: PUSH2 0x21ab
00000fed: SWAP1
00000fee: SWAP2
00000fef: SWAP1
00000ff0: PUSH4 0xffffffff
00000ff5: AND
00000ff6: JUMP
00000ff7: JUMPDEST
00000ff8: SWAP2
00000ff9: SWAP1
00000ffa: PUSH2 0x1d1d
00000ffd: JUMP
00000ffe: JUMPDEST
00000fff: SWAP1
00001000: POP
00001001: PUSH2 0x101d
00001004: DUP9
00001005: DUP6
00001006: DUP6
00001007: DUP5
00001008: PUSH1 0x00
0000100a: DUP13
0000100b: PUSH1 0x80
0000100d: ADD
0000100e: MLOAD
0000100f: DUP12
00001010: PUSH1 0x20
00001012: ADD
00001013: MLOAD
00001014: DUP15
00001015: PUSH1 0x40
00001017: ADD
00001018: MLOAD
00001019: PUSH2 0x2597
0000101c: JUMP
0000101d: JUMPDEST
0000101e: POP
0000101f: POP
00001020: POP
00001021: POP
00001022: POP
00001023: POP
00001024: PUSH2 0x0b5a
00001027: PUSH1 0x01
00001029: PUSH1 0x00
0000102b: DUP1
0000102c: MLOAD
0000102d: PUSH1 0x20
0000102f: PUSH2 0x5ec1
00001032: DUP4
00001033: CODECOPY
00001034: DUP2
00001035: MLOAD
00001036: SWAP2
00001037: MSTORE
00001038: SSTORE
00001039: JUMP
0000103a: JUMPDEST
0000103b: PUSH2 0x1042
0000103e: PUSH2 0x28b1
00001041: JUMP
00001042: JUMPDEST
00001043: PUSH1 0x00
00001045: DUP1
00001046: MLOAD
00001047: PUSH1 0x20
00001049: PUSH2 0x5ee1
0000104c: DUP4
0000104d: CODECOPY
0000104e: DUP2
0000104f: MLOAD
00001050: SWAP2
00001051: MSTORE
00001052: DUP1
00001053: SLOAD
00001054: PUSH1 0x01
00001056: PUSH1 0x40
00001058: SHL
00001059: DUP2
0000105a: DIV
0000105b: PUSH1 0xff
0000105d: AND
0000105e: ISZERO
0000105f: SWAP1
00001060: PUSH1 0x01
00001062: PUSH1 0x01
00001064: PUSH1 0x40
00001066: SHL
00001067: SUB
00001068: AND
00001069: PUSH1 0x00
0000106b: DUP2
0000106c: ISZERO
0000106d: DUP1
0000106e: ISZERO
0000106f: PUSH2 0x1075
00001072: JUMPI
00001073: POP
00001074: DUP3
00001075: JUMPDEST
00001076: SWAP1
00001077: POP
00001078: PUSH1 0x00
0000107a: DUP3
0000107b: PUSH1 0x01
0000107d: PUSH1 0x01
0000107f: PUSH1 0x40
00001081: SHL
00001082: SUB
00001083: AND
00001084: PUSH1 0x01
00001086: EQ
00001087: DUP1
00001088: ISZERO
00001089: PUSH2 0x1091
0000108c: JUMPI
0000108d: POP
0000108e: ADDRESS
0000108f: EXTCODESIZE
00001090: ISZERO
00001091: JUMPDEST
00001092: SWAP1
00001093: POP
00001094: DUP2
00001095: ISZERO
00001096: DUP1
00001097: ISZERO
00001098: PUSH2 0x109f
0000109b: JUMPI
0000109c: POP
0000109d: DUP1
0000109e: ISZERO
0000109f: JUMPDEST
000010a0: ISZERO
000010a1: PUSH2 0x10bd
000010a4: JUMPI
000010a5: PUSH1 0x40
000010a7: MLOAD
000010a8: PUSH4 0xf92ee8a9
000010ad: PUSH1 0xe0
000010af: SHL
000010b0: DUP2
000010b1: MSTORE
000010b2: PUSH1 0x04
000010b4: ADD
000010b5: PUSH1 0x40
000010b7: MLOAD
000010b8: DUP1
000010b9: SWAP2
000010ba: SUB
000010bb: SWAP1
000010bc: REVERT
000010bd: JUMPDEST
000010be: DUP5
000010bf: SLOAD
000010c0: PUSH8 0xffffffffffffffff
000010c9: NOT
000010ca: AND
000010cb: PUSH1 0x01
000010cd: OR
000010ce: DUP6
000010cf: SSTORE
000010d0: DUP4
000010d1: ISZERO
000010d2: PUSH2 0x10e7
000010d5: JUMPI
000010d6: DUP5
000010d7: SLOAD
000010d8: PUSH1 0xff
000010da: PUSH1 0x40
000010dc: SHL
000010dd: NOT
000010de: AND
000010df: PUSH1 0x01
000010e1: PUSH1 0x40
000010e3: SHL
000010e4: OR
000010e5: DUP6
000010e6: SSTORE
000010e7: JUMPDEST
000010e8: PUSH2 0x10ef
000010eb: PUSH2 0x28fa
000010ee: JUMP
000010ef: JUMPDEST
000010f0: DUP4
000010f1: ISZERO
000010f2: PUSH2 0x1135
000010f5: JUMPI
000010f6: DUP5
000010f7: SLOAD
000010f8: PUSH1 0xff
000010fa: PUSH1 0x40
000010fc: SHL
000010fd: NOT
000010fe: AND
000010ff: DUP6
00001100: SSTORE
00001101: PUSH1 0x40
00001103: MLOAD
00001104: PUSH1 0x01
00001106: DUP2
00001107: MSTORE
00001108: PUSH32 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2
00001129: SWAP1
0000112a: PUSH1 0x20
0000112c: ADD
0000112d: PUSH1 0x40
0000112f: MLOAD
00001130: DUP1
00001131: SWAP2
00001132: SUB
00001133: SWAP1
00001134: LOG1
00001135: JUMPDEST
00001136: POP
00001137: POP
00001138: POP
00001139: POP
0000113a: POP
0000113b: JUMP
0000113c: JUMPDEST
0000113d: PUSH2 0x1147
00001140: PUSH2 0x0772
00001143: PUSH2 0x114f
00001146: JUMP
00001147: JUMPDEST
00001148: PUSH2 0x0bd4
0000114b: PUSH2 0x2902
0000114e: JUMP
0000114f: JUMPDEST
00001150: PUSH32 0x9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300
00001171: SLOAD
00001172: PUSH1 0x01
00001174: PUSH1 0x01
00001176: PUSH1 0xa0
00001178: SHL
00001179: SUB
0000117a: AND
0000117b: SWAP1
0000117c: JUMP
0000117d: JUMPDEST
0000117e: PUSH2 0x1185
00001181: PUSH2 0x28b1
00001184: JUMP
00001185: JUMPDEST
00001186: PUSH1 0x00
00001188: DUP1
00001189: MLOAD
0000118a: PUSH1 0x20
0000118c: PUSH2 0x5ee1
0000118f: DUP4
00001190: CODECOPY
00001191: DUP2
00001192: MLOAD
00001193: SWAP2
00001194: MSTORE
00001195: SLOAD
00001196: PUSH1 0x01
00001198: PUSH1 0x01
0000119a: PUSH1 0x40
0000119c: SHL
0000119d: SUB
0000119e: AND
0000119f: PUSH2 0x11a9
000011a2: SWAP1
000011a3: PUSH1 0x01
000011a5: PUSH2 0x598a
000011a8: JUMP
000011a9: JUMPDEST
000011aa: PUSH1 0x00
000011ac: DUP1
000011ad: MLOAD
000011ae: PUSH1 0x20
000011b0: PUSH2 0x5ee1
000011b3: DUP4
000011b4: CODECOPY
000011b5: DUP2
000011b6: MLOAD
000011b7: SWAP2
000011b8: MSTORE
000011b9: DUP1
000011ba: SLOAD
000011bb: PUSH1 0x01
000011bd: PUSH1 0x40
000011bf: SHL
000011c0: SWAP1
000011c1: DIV
000011c2: PUSH1 0xff
000011c4: AND
000011c5: DUP1
000011c6: PUSH2 0x11dc
000011c9: JUMPI
000011ca: POP
000011cb: DUP1
000011cc: SLOAD
000011cd: PUSH1 0x01
000011cf: PUSH1 0x01
000011d1: PUSH1 0x40
000011d3: SHL
000011d4: SUB
000011d5: DUP1
000011d6: DUP5
000011d7: AND
000011d8: SWAP2
000011d9: AND
000011da: LT
000011db: ISZERO
000011dc: JUMPDEST
000011dd: ISZERO
000011de: PUSH2 0x11fa
000011e1: JUMPI
000011e2: PUSH1 0x40
000011e4: MLOAD
000011e5: PUSH4 0xf92ee8a9
000011ea: PUSH1 0xe0
000011ec: SHL
000011ed: DUP2
000011ee: MSTORE
000011ef: PUSH1 0x04
000011f1: ADD
000011f2: PUSH1 0x40
000011f4: MLOAD
000011f5: DUP1
000011f6: SWAP2
000011f7: SUB
000011f8: SWAP1
000011f9: REVERT
000011fa: JUMPDEST
000011fb: DUP1
000011fc: SLOAD
000011fd: PUSH9 0xffffffffffffffffff
00001207: NOT
00001208: AND
00001209: PUSH1 0x01
0000120b: PUSH1 0x01
0000120d: PUSH1 0x40
0000120f: SHL
00001210: SUB
00001211: DUP4
00001212: AND
00001213: OR
00001214: PUSH1 0x01
00001216: PUSH1 0x40
00001218: SHL
00001219: OR
0000121a: DUP2
0000121b: SSTORE
0000121c: PUSH2 0x1223
0000121f: PUSH2 0x2963
00001222: JUMP
00001223: JUMPDEST
00001224: SLOAD
00001225: PUSH1 0xff
00001227: AND
00001228: PUSH2 0x1244
0000122b: JUMPI
0000122c: PUSH1 0x40
0000122e: MLOAD
0000122f: PUSH4 0x28668153
00001234: PUSH1 0xe1
00001236: SHL
00001237: DUP2
00001238: MSTORE
00001239: PUSH1 0x04
0000123b: ADD
0000123c: PUSH1 0x40
0000123e: MLOAD
0000123f: DUP1
00001240: SWAP2
00001241: SUB
00001242: SWAP1
00001243: REVERT
00001244: JUMPDEST
00001245: DUP1
00001246: SLOAD
00001247: PUSH1 0xff
00001249: PUSH1 0x40
0000124b: SHL
0000124c: NOT
0000124d: AND
0000124e: DUP2
0000124f: SSTORE
00001250: PUSH1 0x40
00001252: MLOAD
00001253: PUSH1 0x01
00001255: PUSH1 0x01
00001257: PUSH1 0x40
00001259: SHL
0000125a: SUB
0000125b: DUP4
0000125c: AND
0000125d: DUP2
0000125e: MSTORE
0000125f: PUSH32 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2
00001280: SWAP1
00001281: PUSH1 0x20
00001283: ADD
00001284: PUSH1 0x40
00001286: MLOAD
00001287: DUP1
00001288: SWAP2
00001289: SUB
0000128a: SWAP1
0000128b: LOG1
0000128c: POP
0000128d: POP
0000128e: JUMP
0000128f: JUMPDEST
00001290: PUSH1 0x00
00001292: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000002
000012b3: PUSH2 0xffff
000012b6: AND
000012b7: DUP3
000012b8: PUSH1 0x00
000012ba: ADD
000012bb: MLOAD
000012bc: PUSH2 0xffff
000012bf: AND
000012c0: SUB
000012c1: PUSH2 0x12d1
000012c4: JUMPI
000012c5: PUSH2 0x0898
000012c8: DUP3
000012c9: PUSH1 0x20
000012cb: ADD
000012cc: MLOAD
000012cd: PUSH2 0x256b
000012d0: JUMP
000012d1: JUMPDEST
000012d2: PUSH2 0x12d9
000012d5: PUSH2 0x2334
000012d8: JUMP
000012d9: JUMPDEST
000012da: DUP3
000012db: MLOAD
000012dc: PUSH2 0xffff
000012df: AND
000012e0: PUSH1 0x00
000012e2: SWAP1
000012e3: DUP2
000012e4: MSTORE
000012e5: PUSH1 0x20
000012e7: SWAP2
000012e8: DUP3
000012e9: MSTORE
000012ea: PUSH1 0x40
000012ec: DUP1
000012ed: DUP3
000012ee: KECCAK256
000012ef: SWAP5
000012f0: DUP4
000012f1: ADD
000012f2: MLOAD
000012f3: DUP3
000012f4: MSTORE
000012f5: SWAP4
000012f6: SWAP1
000012f7: SWAP2
000012f8: MSTORE
000012f9: SWAP2
000012fa: SWAP1
000012fb: SWAP2
000012fc: KECCAK256
000012fd: SLOAD
000012fe: PUSH1 0x01
00001300: PUSH1 0x01
00001302: PUSH1 0xa0
00001304: SHL
00001305: SUB
00001306: AND
00001307: SWAP2
00001308: SWAP1
00001309: POP
0000130a: JUMP
0000130b: JUMPDEST
0000130c: PUSH1 0x00
0000130e: PUSH2 0x1315
00001311: PUSH2 0x2390
00001314: JUMP
00001315: JUMPDEST
00001316: PUSH2 0x131d
00001319: PUSH2 0x1645
0000131c: JUMP
0000131d: JUMPDEST
0000131e: ISZERO
0000131f: PUSH2 0x133b
00001322: JUMPI
00001323: PUSH1 0x40
00001325: MLOAD
00001326: PUSH4 0x09e3d0f3
0000132b: PUSH1 0xe1
0000132d: SHL
0000132e: DUP2
0000132f: MSTORE
00001330: PUSH1 0x04
00001332: ADD
00001333: PUSH1 0x40
00001335: MLOAD
00001336: DUP1
00001337: SWAP2
00001338: SUB
00001339: SWAP1
0000133a: REVERT
0000133b: JUMPDEST
0000133c: PUSH1 0x00
0000133e: PUSH2 0x1345
00001341: PUSH2 0x2059
00001344: JUMP
00001345: JUMPDEST
00001346: PUSH1 0x01
00001348: PUSH1 0x01
0000134a: PUSH1 0x40
0000134c: SHL
0000134d: SUB
0000134e: DUP5
0000134f: DUP2
00001350: AND
00001351: PUSH1 0x00
00001353: SWAP1
00001354: DUP2
00001355: MSTORE
00001356: PUSH1 0x20
00001358: SWAP3
00001359: DUP4
0000135a: MSTORE
0000135b: PUSH1 0x40
0000135d: SWAP1
0000135e: DUP2
0000135f: SWAP1
00001360: KECCAK256
00001361: DUP2
00001362: MLOAD
00001363: PUSH2 0x0100
00001366: DUP2
00001367: ADD
00001368: DUP4
00001369: MSTORE
0000136a: DUP2
0000136b: SLOAD
0000136c: DUP2
0000136d: MSTORE
0000136e: PUSH1 0x01
00001370: DUP3
00001371: ADD
00001372: SLOAD
00001373: SWAP5
00001374: DUP2
00001375: ADD
00001376: SWAP5
00001377: SWAP1
00001378: SWAP5
00001379: MSTORE
0000137a: PUSH1 0x02
0000137c: DUP2
0000137d: ADD
0000137e: SLOAD
0000137f: PUSH1 0x01
00001381: PUSH1 0x01
00001383: PUSH1 0xa0
00001385: SHL
00001386: SUB
00001387: DUP1
00001388: DUP3
00001389: AND
0000138a: SWAP4
0000138b: DUP7
0000138c: ADD
0000138d: SWAP4
0000138e: SWAP1
0000138f: SWAP4
00001390: MSTORE
00001391: PUSH1 0x01
00001393: PUSH1 0xa0
00001395: SHL
00001396: DUP2
00001397: DIV
00001398: PUSH1 0x01
0000139a: PUSH1 0x01
0000139c: PUSH1 0x48
0000139e: SHL
0000139f: SUB
000013a0: AND
000013a1: PUSH1 0x60
000013a3: DUP7
000013a4: ADD
000013a5: MSTORE
000013a6: PUSH1 0x01
000013a8: PUSH1 0xe8
000013aa: SHL
000013ab: SWAP1
000013ac: DIV
000013ad: PUSH2 0xffff
000013b0: AND
000013b1: PUSH1 0x80
000013b3: DUP6
000013b4: ADD
000013b5: MSTORE
000013b6: PUSH1 0x03
000013b8: DUP2
000013b9: ADD
000013ba: SLOAD
000013bb: SWAP3
000013bc: DUP4
000013bd: AND
000013be: PUSH1 0xa0
000013c0: DUP6
000013c1: ADD
000013c2: MSTORE
000013c3: PUSH1 0x01
000013c5: PUSH1 0x40
000013c7: SHL
000013c8: SWAP1
000013c9: SWAP3
000013ca: DIV
000013cb: AND
000013cc: PUSH1 0xc0
000013ce: DUP4
000013cf: ADD
000013d0: MSTORE
000013d1: PUSH1 0x04
000013d3: DUP2
000013d4: ADD
000013d5: DUP1
000013d6: SLOAD
000013d7: PUSH1 0xe0
000013d9: DUP5
000013da: ADD
000013db: SWAP2
000013dc: SWAP1
000013dd: PUSH2 0x13e5
000013e0: SWAP1
000013e1: PUSH2 0x5904
000013e4: JUMP
000013e5: JUMPDEST
000013e6: DUP1
000013e7: PUSH1 0x1f
000013e9: ADD
000013ea: PUSH1 0x20
000013ec: DUP1
000013ed: SWAP2
000013ee: DIV
000013ef: MUL
000013f0: PUSH1 0x20
000013f2: ADD
000013f3: PUSH1 0x40
000013f5: MLOAD
000013f6: SWAP1
000013f7: DUP2
000013f8: ADD
000013f9: PUSH1 0x40
000013fb: MSTORE
000013fc: DUP1
000013fd: SWAP3
000013fe: SWAP2
000013ff: SWAP1
00001400: DUP2
00001401: DUP2
00001402: MSTORE
00001403: PUSH1 0x20
00001405: ADD
00001406: DUP3
00001407: DUP1
00001408: SLOAD
00001409: PUSH2 0x1411
0000140c: SWAP1
0000140d: PUSH2 0x5904
00001410: JUMP
00001411: JUMPDEST
00001412: DUP1
00001413: ISZERO
00001414: PUSH2 0x145e
00001417: JUMPI
00001418: DUP1
00001419: PUSH1 0x1f
0000141b: LT
0000141c: PUSH2 0x1433
0000141f: JUMPI
00001420: PUSH2 0x0100
00001423: DUP1
00001424: DUP4
00001425: SLOAD
00001426: DIV
00001427: MUL
00001428: DUP4
00001429: MSTORE
0000142a: SWAP2
0000142b: PUSH1 0x20
0000142d: ADD
0000142e: SWAP2
0000142f: PUSH2 0x145e
00001432: JUMP
00001433: JUMPDEST
00001434: DUP3
00001435: ADD
00001436: SWAP2
00001437: SWAP1
00001438: PUSH1 0x00
0000143a: MSTORE
0000143b: PUSH1 0x20
0000143d: PUSH1 0x00
0000143f: KECCAK256
00001440: SWAP1
00001441: JUMPDEST
00001442: DUP2
00001443: SLOAD
00001444: DUP2
00001445: MSTORE
00001446: SWAP1
00001447: PUSH1 0x01
00001449: ADD
0000144a: SWAP1
0000144b: PUSH1 0x20
0000144d: ADD
0000144e: DUP1
0000144f: DUP4
00001450: GT
00001451: PUSH2 0x1441
00001454: JUMPI
00001455: DUP3
00001456: SWAP1
00001457: SUB
00001458: PUSH1 0x1f
0000145a: AND
0000145b: DUP3
0000145c: ADD
0000145d: SWAP2
0000145e: JUMPDEST
0000145f: POP
00001460: POP
00001461: POP
00001462: POP
00001463: POP
00001464: DUP2
00001465: MSTORE
00001466: POP
00001467: POP
00001468: SWAP1
00001469: POP
0000146a: DUP1
0000146b: PUSH1 0xa0
0000146d: ADD
0000146e: MLOAD
0000146f: PUSH1 0x01
00001471: PUSH1 0x01
00001473: PUSH1 0x40
00001475: SHL
00001476: SUB
00001477: AND
00001478: PUSH1 0x00
0000147a: SUB
0000147b: PUSH2 0x14a2
0000147e: JUMPI
0000147f: PUSH1 0x40
00001481: MLOAD
00001482: PUSH4 0x5feafa31
00001487: PUSH1 0xe1
00001489: SHL
0000148a: DUP2
0000148b: MSTORE
0000148c: PUSH1 0x01
0000148e: PUSH1 0x01
00001490: PUSH1 0x40
00001492: SHL
00001493: SUB
00001494: DUP5
00001495: AND
00001496: PUSH1 0x04
00001498: DUP3
00001499: ADD
0000149a: MSTORE
0000149b: PUSH1 0x24
0000149d: ADD
0000149e: PUSH2 0x0eaf
000014a1: JUMP
000014a2: JUMPDEST
000014a3: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180
000014c4: PUSH1 0x01
000014c6: PUSH1 0x01
000014c8: PUSH1 0x40
000014ca: SHL
000014cb: SUB
000014cc: AND
000014cd: DUP2
000014ce: PUSH1 0xa0
000014d0: ADD
000014d1: MLOAD
000014d2: PUSH1 0x01
000014d4: PUSH1 0x01
000014d6: PUSH1 0x40
000014d8: SHL
000014d9: SUB
000014da: AND
000014db: TIMESTAMP
000014dc: PUSH2 0x14e5
000014df: SWAP2
000014e0: SWAP1
000014e1: PUSH2 0x5977
000014e4: JUMP
000014e5: JUMPDEST
000014e6: LT
000014e7: ISZERO
000014e8: PUSH2 0x151d
000014eb: JUMPI
000014ec: PUSH1 0xa0
000014ee: DUP2
000014ef: ADD
000014f0: MLOAD
000014f1: PUSH1 0x40
000014f3: MLOAD
000014f4: PUSH4 0xc06cf05f
000014f9: PUSH1 0xe0
000014fb: SHL
000014fc: DUP2
000014fd: MSTORE
000014fe: PUSH1 0x01
00001500: PUSH1 0x01
00001502: PUSH1 0x40
00001504: SHL
00001505: SUB
00001506: DUP1
00001507: DUP7
00001508: AND
00001509: PUSH1 0x04
0000150b: DUP4
0000150c: ADD
0000150d: MSTORE
0000150e: SWAP1
0000150f: SWAP2
00001510: AND
00001511: PUSH1 0x24
00001513: DUP3
00001514: ADD
00001515: MSTORE
00001516: PUSH1 0x44
00001518: ADD
00001519: PUSH2 0x0eaf
0000151c: JUMP
0000151d: JUMPDEST
0000151e: PUSH2 0x1525
00001521: PUSH2 0x2059
00001524: JUMP
00001525: JUMPDEST
00001526: PUSH1 0x01
00001528: PUSH1 0x01
0000152a: PUSH1 0x40
0000152c: SHL
0000152d: SUB
0000152e: DUP5
0000152f: AND
00001530: PUSH1 0x00
00001532: SWAP1
00001533: DUP2
00001534: MSTORE
00001535: PUSH1 0x20
00001537: SWAP2
00001538: SWAP1
00001539: SWAP2
0000153a: MSTORE
0000153b: PUSH1 0x40
0000153d: DUP2
0000153e: KECCAK256
0000153f: DUP2
00001540: DUP2
00001541: SSTORE
00001542: PUSH1 0x01
00001544: DUP2
00001545: ADD
00001546: DUP3
00001547: SWAP1
00001548: SSTORE
00001549: PUSH1 0x02
0000154b: DUP2
0000154c: ADD
0000154d: DUP1
0000154e: SLOAD
0000154f: PUSH1 0x01
00001551: PUSH1 0x01
00001553: PUSH1 0xf8
00001555: SHL
00001556: SUB
00001557: NOT
00001558: AND
00001559: SWAP1
0000155a: SSTORE
0000155b: PUSH1 0x03
0000155d: DUP2
0000155e: ADD
0000155f: DUP1
00001560: SLOAD
00001561: PUSH1 0x01
00001563: PUSH1 0x01
00001565: PUSH1 0xe0
00001567: SHL
00001568: SUB
00001569: NOT
0000156a: AND
0000156b: SWAP1
0000156c: SSTORE
0000156d: SWAP1
0000156e: PUSH2 0x157a
00001571: PUSH1 0x04
00001573: DUP4
00001574: ADD
00001575: DUP3
00001576: PUSH2 0x4f3d
00001579: JUMP
0000157a: JUMPDEST
0000157b: POP
0000157c: POP
0000157d: PUSH2 0x15b9
00001580: CALLVALUE
00001581: DUP5
00001582: DUP4
00001583: PUSH1 0xc0
00001585: ADD
00001586: MLOAD
00001587: DUP5
00001588: PUSH1 0x60
0000158a: ADD
0000158b: MLOAD
0000158c: DUP6
0000158d: PUSH1 0x80
0000158f: ADD
00001590: MLOAD
00001591: DUP7
00001592: PUSH1 0x00
00001594: ADD
00001595: MLOAD
00001596: DUP8
00001597: PUSH1 0x20
00001599: ADD
0000159a: MLOAD
0000159b: DUP9
0000159c: PUSH1 0x40
0000159e: ADD
0000159f: MLOAD
000015a0: DUP10
000015a1: PUSH1 0xe0
000015a3: ADD
000015a4: MLOAD
000015a5: PUSH1 0x40
000015a7: MLOAD
000015a8: DUP1
000015a9: PUSH1 0x20
000015ab: ADD
000015ac: PUSH1 0x40
000015ae: MSTORE
000015af: DUP1
000015b0: PUSH1 0x00
000015b2: DUP2
000015b3: MSTORE
000015b4: POP
000015b5: PUSH2 0x2991
000015b8: JUMP
000015b9: JUMPDEST
000015ba: SWAP2
000015bb: POP
000015bc: POP
000015bd: PUSH2 0x15d3
000015c0: PUSH1 0x01
000015c2: PUSH1 0x00
000015c4: DUP1
000015c5: MLOAD
000015c6: PUSH1 0x20
000015c8: PUSH2 0x5ec1
000015cb: DUP4
000015cc: CODECOPY
000015cd: DUP2
000015ce: MLOAD
000015cf: SWAP2
000015d0: MSTORE
000015d1: SSTORE
000015d2: JUMP
000015d3: JUMPDEST
000015d4: SWAP2
000015d5: SWAP1
000015d6: POP
000015d7: JUMP
000015d8: JUMPDEST
000015d9: PUSH1 0x00
000015db: PUSH2 0x15e2
000015de: PUSH2 0x1c59
000015e1: JUMP
000015e2: JUMPDEST
000015e3: SLOAD
000015e4: PUSH1 0x01
000015e6: PUSH1 0x01
000015e8: PUSH1 0xa0
000015ea: SHL
000015eb: SUB
000015ec: AND
000015ed: SWAP2
000015ee: SWAP1
000015ef: POP
000015f0: JUMP
000015f1: JUMPDEST
000015f2: PUSH1 0x00
000015f4: PUSH2 0x15fb
000015f7: PUSH2 0x2390
000015fa: JUMP
000015fb: JUMPDEST
000015fc: PUSH2 0x1603
000015ff: PUSH2 0x1645
00001602: JUMP
00001603: JUMPDEST
00001604: ISZERO
00001605: PUSH2 0x1621
00001608: JUMPI
00001609: PUSH1 0x40
0000160b: MLOAD
0000160c: PUSH4 0x09e3d0f3
00001611: PUSH1 0xe1
00001613: SHL
00001614: DUP2
00001615: MSTORE
00001616: PUSH1 0x04
00001618: ADD
00001619: PUSH1 0x40
0000161b: MLOAD
0000161c: DUP1
0000161d: SWAP2
0000161e: SUB
0000161f: SWAP1
00001620: REVERT
00001621: JUMPDEST
00001622: PUSH2 0x162c
00001625: DUP3
00001626: PUSH1 0x01
00001628: PUSH2 0x2ad8
0000162b: JUMP
0000162c: JUMPDEST
0000162d: SWAP1
0000162e: POP
0000162f: PUSH2 0x15d3
00001632: PUSH1 0x01
00001634: PUSH1 0x00
00001636: DUP1
00001637: MLOAD
00001638: PUSH1 0x20
0000163a: PUSH2 0x5ec1
0000163d: DUP4
0000163e: CODECOPY
0000163f: DUP2
00001640: MLOAD
00001641: SWAP2
00001642: MSTORE
00001643: SSTORE
00001644: JUMP
00001645: JUMPDEST
00001646: PUSH1 0x00
00001648: DUP1
00001649: PUSH2 0x1650
0000164c: PUSH2 0x2b77
0000164f: JUMP
00001650: JUMPDEST
00001651: SLOAD
00001652: PUSH1 0x02
00001654: EQ
00001655: SWAP3
00001656: SWAP2
00001657: POP
00001658: POP
00001659: JUMP
0000165a: JUMPDEST
0000165b: PUSH1 0x00
0000165d: PUSH2 0x1664
00001660: PUSH2 0x2390
00001663: JUMP
00001664: JUMPDEST
00001665: PUSH2 0x166c
00001668: PUSH2 0x1645
0000166b: JUMP
0000166c: JUMPDEST
0000166d: ISZERO
0000166e: PUSH2 0x168a
00001671: JUMPI
00001672: PUSH1 0x40
00001674: MLOAD
00001675: PUSH4 0x09e3d0f3
0000167a: PUSH1 0xe1
0000167c: SHL
0000167d: DUP2
0000167e: MSTORE
0000167f: PUSH1 0x04
00001681: ADD
00001682: PUSH1 0x40
00001684: MLOAD
00001685: DUP1
00001686: SWAP2
00001687: SUB
00001688: SWAP1
00001689: REVERT
0000168a: JUMPDEST
0000168b: PUSH1 0x00
0000168d: PUSH1 0x40
0000168f: MLOAD
00001690: DUP1
00001691: PUSH2 0x0100
00001694: ADD
00001695: PUSH1 0x40
00001697: MSTORE
00001698: DUP1
00001699: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
000016ba: PUSH1 0x01
000016bc: PUSH1 0x01
000016be: PUSH1 0xa0
000016c0: SHL
000016c1: SUB
000016c2: AND
000016c3: DUP2
000016c4: MSTORE
000016c5: PUSH1 0x20
000016c7: ADD
000016c8: DUP5
000016c9: PUSH1 0x00
000016cb: ADD
000016cc: MLOAD
000016cd: DUP2
000016ce: MSTORE
000016cf: PUSH1 0x20
000016d1: ADD
000016d2: DUP5
000016d3: PUSH1 0x20
000016d5: ADD
000016d6: MLOAD
000016d7: PUSH2 0xffff
000016da: AND
000016db: DUP2
000016dc: MSTORE
000016dd: PUSH1 0x20
000016df: ADD
000016e0: DUP5
000016e1: PUSH1 0x40
000016e3: ADD
000016e4: MLOAD
000016e5: DUP2
000016e6: MSTORE
000016e7: PUSH1 0x20
000016e9: ADD
000016ea: DUP5
000016eb: PUSH1 0x60
000016ed: ADD
000016ee: MLOAD
000016ef: DUP2
000016f0: MSTORE
000016f1: PUSH1 0x20
000016f3: ADD
000016f4: DUP5
000016f5: PUSH1 0x80
000016f7: ADD
000016f8: MLOAD
000016f9: ISZERO
000016fa: ISZERO
000016fb: DUP2
000016fc: MSTORE
000016fd: PUSH1 0x20
000016ff: ADD
00001700: DUP5
00001701: PUSH1 0xa0
00001703: ADD
00001704: MLOAD
00001705: DUP2
00001706: MSTORE
00001707: PUSH1 0x20
00001709: ADD
0000170a: DUP5
0000170b: PUSH1 0xc0
0000170d: ADD
0000170e: MLOAD
0000170f: DUP2
00001710: MSTORE
00001711: POP
00001712: SWAP1
00001713: POP
00001714: PUSH2 0x15b9
00001717: DUP2
00001718: PUSH1 0x00
0000171a: PUSH2 0x2ad8
0000171d: JUMP
0000171e: JUMPDEST
0000171f: PUSH1 0x40
00001721: DUP1
00001722: MLOAD
00001723: PUSH1 0x20
00001725: DUP2
00001726: ADD
00001727: SWAP1
00001728: SWAP2
00001729: MSTORE
0000172a: PUSH1 0x00
0000172c: DUP2
0000172d: MSTORE
0000172e: PUSH2 0x1735
00001731: PUSH2 0x2ba5
00001734: JUMP
00001735: JUMPDEST
00001736: PUSH2 0xffff
00001739: SWAP1
0000173a: SWAP3
0000173b: AND
0000173c: PUSH1 0x00
0000173e: SWAP1
0000173f: DUP2
00001740: MSTORE
00001741: PUSH1 0x20
00001743: SWAP3
00001744: DUP4
00001745: MSTORE
00001746: PUSH1 0x40
00001748: SWAP1
00001749: DUP2
0000174a: SWAP1
0000174b: KECCAK256
0000174c: DUP2
0000174d: MLOAD
0000174e: SWAP4
0000174f: DUP5
00001750: ADD
00001751: SWAP1
00001752: SWAP2
00001753: MSTORE
00001754: SLOAD
00001755: DUP3
00001756: MSTORE
00001757: POP
00001758: SWAP1
00001759: JUMP
0000175a: JUMPDEST
0000175b: PUSH1 0x00
0000175d: DUP1
0000175e: PUSH2 0x1766
00001761: DUP5
00001762: PUSH2 0x1e40
00001765: JUMP
00001766: JUMPDEST
00001767: PUSH2 0xffff
0000176a: DUP5
0000176b: AND
0000176c: PUSH1 0x00
0000176e: SWAP1
0000176f: DUP2
00001770: MSTORE
00001771: PUSH1 0x20
00001773: SWAP2
00001774: SWAP1
00001775: SWAP2
00001776: MSTORE
00001777: PUSH1 0x40
00001779: DUP2
0000177a: KECCAK256
0000177b: SWAP2
0000177c: POP
0000177d: PUSH2 0x17a6
00001780: DUP3
00001781: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180
000017a2: PUSH2 0x20de
000017a5: JUMP
000017a6: JUMPDEST
000017a7: SWAP1
000017a8: POP
000017a9: PUSH1 0x00
000017ab: PUSH2 0x17b3
000017ae: DUP7
000017af: PUSH2 0x1cb9
000017b2: JUMP
000017b3: JUMPDEST
000017b4: SWAP1
000017b5: POP
000017b6: PUSH2 0x17c8
000017b9: PUSH1 0x01
000017bb: PUSH1 0x01
000017bd: PUSH1 0x48
000017bf: SHL
000017c0: SUB
000017c1: DUP4
000017c2: AND
000017c3: DUP3
000017c4: PUSH2 0x21ab
000017c7: JUMP
000017c8: JUMPDEST
000017c9: SWAP7
000017ca: SWAP6
000017cb: POP
000017cc: POP
000017cd: POP
000017ce: POP
000017cf: POP
000017d0: POP
000017d1: JUMP
000017d2: JUMPDEST
000017d3: CALLER
000017d4: PUSH1 0x01
000017d6: PUSH1 0x01
000017d8: PUSH1 0xa0
000017da: SHL
000017db: SUB
000017dc: PUSH32 0x000000000000000000000000c6793a32761a11e96c97a3d18fc6545ea931f0e9
000017fd: AND
000017fe: EQ
000017ff: PUSH2 0x181b
00001802: JUMPI
00001803: PUSH1 0x40
00001805: MLOAD
00001806: PUSH4 0x31ca071b
0000180b: PUSH1 0xe2
0000180d: SHL
0000180e: DUP2
0000180f: MSTORE
00001810: PUSH1 0x04
00001812: ADD
00001813: PUSH1 0x40
00001815: MLOAD
00001816: DUP1
00001817: SWAP2
00001818: SUB
00001819: SWAP1
0000181a: REVERT
0000181b: JUMPDEST
0000181c: PUSH2 0x1135
0000181f: DUP6
00001820: DUP6
00001821: DUP6
00001822: DUP6
00001823: DUP6
00001824: PUSH2 0x2bd3
00001827: JUMP
00001828: JUMPDEST
00001829: PUSH1 0x40
0000182b: DUP1
0000182c: MLOAD
0000182d: DUP1
0000182e: DUP3
0000182f: ADD
00001830: SWAP1
00001831: SWAP2
00001832: MSTORE
00001833: PUSH1 0x00
00001835: DUP1
00001836: DUP3
00001837: MSTORE
00001838: PUSH1 0x20
0000183a: DUP3
0000183b: ADD
0000183c: MSTORE
0000183d: PUSH1 0x00
0000183f: DUP1
00001840: PUSH2 0x1847
00001843: PUSH2 0x2306
00001846: JUMP
00001847: JUMPDEST
00001848: PUSH1 0x01
0000184a: PUSH1 0x01
0000184c: PUSH1 0xa0
0000184e: SHL
0000184f: SUB
00001850: DUP6
00001851: AND
00001852: PUSH1 0x00
00001854: SWAP1
00001855: DUP2
00001856: MSTORE
00001857: PUSH1 0x20
00001859: SWAP2
0000185a: DUP3
0000185b: MSTORE
0000185c: PUSH1 0x40
0000185e: SWAP1
0000185f: DUP2
00001860: SWAP1
00001861: KECCAK256
00001862: DUP2
00001863: MLOAD
00001864: DUP1
00001865: DUP4
00001866: ADD
00001867: SWAP1
00001868: SWAP3
00001869: MSTORE
0000186a: DUP1
0000186b: SLOAD
0000186c: PUSH2 0xffff
0000186f: AND
00001870: DUP1
00001871: DUP4
00001872: MSTORE
00001873: PUSH1 0x01
00001875: SWAP1
00001876: SWAP2
00001877: ADD
00001878: SLOAD
00001879: SWAP3
0000187a: DUP3
0000187b: ADD
0000187c: SWAP3
0000187d: SWAP1
0000187e: SWAP3
0000187f: MSTORE
00001880: SWAP2
00001881: POP
00001882: ISZERO
00001883: PUSH2 0x1890
00001886: JUMPI
00001887: SWAP4
00001888: PUSH1 0x01
0000188a: SWAP4
0000188b: POP
0000188c: SWAP2
0000188d: POP
0000188e: POP
0000188f: JUMP
00001890: JUMPDEST
00001891: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000002
000018b2: PUSH2 0xffff
000018b5: AND
000018b6: DUP2
000018b7: MSTORE
000018b8: PUSH1 0x01
000018ba: PUSH1 0x01
000018bc: PUSH1 0xa0
000018be: SHL
000018bf: SUB
000018c0: DUP5
000018c1: AND
000018c2: PUSH1 0x20
000018c4: DUP3
000018c5: ADD
000018c6: MSTORE
000018c7: SWAP4
000018c8: PUSH1 0x00
000018ca: SWAP4
000018cb: POP
000018cc: SWAP2
000018cd: POP
000018ce: POP
000018cf: JUMP
000018d0: JUMPDEST
000018d1: PUSH2 0x18d8
000018d4: PUSH2 0x1c87
000018d7: JUMP
000018d8: JUMPDEST
000018d9: PUSH1 0x01
000018db: PUSH1 0x01
000018dd: PUSH1 0xa0
000018df: SHL
000018e0: SUB
000018e1: DUP2
000018e2: AND
000018e3: PUSH2 0x1902
000018e6: JUMPI
000018e7: PUSH1 0x40
000018e9: MLOAD
000018ea: PUSH4 0x1e4fbdf7
000018ef: PUSH1 0xe0
000018f1: SHL
000018f2: DUP2
000018f3: MSTORE
000018f4: PUSH1 0x00
000018f6: PUSH1 0x04
000018f8: DUP3
000018f9: ADD
000018fa: MSTORE
000018fb: PUSH1 0x24
000018fd: ADD
000018fe: PUSH2 0x0eaf
00001901: JUMP
00001902: JUMPDEST
00001903: PUSH2 0x08af
00001906: DUP2
00001907: PUSH2 0x2c2b
0000190a: JUMP
0000190b: JUMPDEST
0000190c: PUSH2 0x1913
0000190f: PUSH2 0x2390
00001912: JUMP
00001913: JUMPDEST
00001914: PUSH2 0x191b
00001917: PUSH2 0x1645
0000191a: JUMP
0000191b: JUMPDEST
0000191c: ISZERO
0000191d: PUSH2 0x1939
00001920: JUMPI
00001921: PUSH1 0x40
00001923: MLOAD
00001924: PUSH4 0x09e3d0f3
00001929: PUSH1 0xe1
0000192b: SHL
0000192c: DUP2
0000192d: MSTORE
0000192e: PUSH1 0x04
00001930: ADD
00001931: PUSH1 0x40
00001933: MLOAD
00001934: DUP1
00001935: SWAP2
00001936: SUB
00001937: SWAP1
00001938: REVERT
00001939: JUMPDEST
0000193a: PUSH1 0x00
0000193c: PUSH2 0x1943
0000193f: PUSH2 0x2059
00001942: JUMP
00001943: JUMPDEST
00001944: PUSH1 0x01
00001946: PUSH1 0x01
00001948: PUSH1 0x40
0000194a: SHL
0000194b: SUB
0000194c: DUP4
0000194d: DUP2
0000194e: AND
0000194f: PUSH1 0x00
00001951: SWAP1
00001952: DUP2
00001953: MSTORE
00001954: PUSH1 0x20
00001956: SWAP3
00001957: DUP4
00001958: MSTORE
00001959: PUSH1 0x40
0000195b: SWAP1
0000195c: DUP2
0000195d: SWAP1
0000195e: KECCAK256
0000195f: DUP2
00001960: MLOAD
00001961: PUSH2 0x0100
00001964: DUP2
00001965: ADD
00001966: DUP4
00001967: MSTORE
00001968: DUP2
00001969: SLOAD
0000196a: DUP2
0000196b: MSTORE
0000196c: PUSH1 0x01
0000196e: DUP3
0000196f: ADD
00001970: SLOAD
00001971: SWAP5
00001972: DUP2
00001973: ADD
00001974: SWAP5
00001975: SWAP1
00001976: SWAP5
00001977: MSTORE
00001978: PUSH1 0x02
0000197a: DUP2
0000197b: ADD
0000197c: SLOAD
0000197d: PUSH1 0x01
0000197f: PUSH1 0x01
00001981: PUSH1 0xa0
00001983: SHL
00001984: SUB
00001985: DUP1
00001986: DUP3
00001987: AND
00001988: SWAP4
00001989: DUP7
0000198a: ADD
0000198b: SWAP4
0000198c: SWAP1
0000198d: SWAP4
0000198e: MSTORE
0000198f: PUSH1 0x01
00001991: PUSH1 0xa0
00001993: SHL
00001994: DUP2
00001995: DIV
00001996: PUSH1 0x01
00001998: PUSH1 0x01
0000199a: PUSH1 0x48
0000199c: SHL
0000199d: SUB
0000199e: AND
0000199f: PUSH1 0x60
000019a1: DUP7
000019a2: ADD
000019a3: MSTORE
000019a4: PUSH1 0x01
000019a6: PUSH1 0xe8
000019a8: SHL
000019a9: SWAP1
000019aa: DIV
000019ab: PUSH2 0xffff
000019ae: AND
000019af: PUSH1 0x80
000019b1: DUP6
000019b2: ADD
000019b3: MSTORE
000019b4: PUSH1 0x03
000019b6: DUP2
000019b7: ADD
000019b8: SLOAD
000019b9: SWAP3
000019ba: DUP4
000019bb: AND
000019bc: PUSH1 0xa0
000019be: DUP6
000019bf: ADD
000019c0: MSTORE
000019c1: PUSH1 0x01
000019c3: PUSH1 0x40
000019c5: SHL
000019c6: SWAP1
000019c7: SWAP3
000019c8: DIV
000019c9: AND
000019ca: PUSH1 0xc0
000019cc: DUP4
000019cd: ADD
000019ce: MSTORE
000019cf: PUSH1 0x04
000019d1: DUP2
000019d2: ADD
000019d3: DUP1
000019d4: SLOAD
000019d5: PUSH1 0xe0
000019d7: DUP5
000019d8: ADD
000019d9: SWAP2
000019da: SWAP1
000019db: PUSH2 0x19e3
000019de: SWAP1
000019df: PUSH2 0x5904
000019e2: JUMP
000019e3: JUMPDEST
000019e4: DUP1
000019e5: PUSH1 0x1f
000019e7: ADD
000019e8: PUSH1 0x20
000019ea: DUP1
000019eb: SWAP2
000019ec: DIV
000019ed: MUL
000019ee: PUSH1 0x20
000019f0: ADD
000019f1: PUSH1 0x40
000019f3: MLOAD
000019f4: SWAP1
000019f5: DUP2
000019f6: ADD
000019f7: PUSH1 0x40
000019f9: MSTORE
000019fa: DUP1
000019fb: SWAP3
000019fc: SWAP2
000019fd: SWAP1
000019fe: DUP2
000019ff: DUP2
00001a00: MSTORE
00001a01: PUSH1 0x20
00001a03: ADD
00001a04: DUP3
00001a05: DUP1
00001a06: SLOAD
00001a07: PUSH2 0x1a0f
00001a0a: SWAP1
00001a0b: PUSH2 0x5904
00001a0e: JUMP
00001a0f: JUMPDEST
00001a10: DUP1
00001a11: ISZERO
00001a12: PUSH2 0x1a5c
00001a15: JUMPI
00001a16: DUP1
00001a17: PUSH1 0x1f
00001a19: LT
00001a1a: PUSH2 0x1a31
00001a1d: JUMPI
00001a1e: PUSH2 0x0100
00001a21: DUP1
00001a22: DUP4
00001a23: SLOAD
00001a24: DIV
00001a25: MUL
00001a26: DUP4
00001a27: MSTORE
00001a28: SWAP2
00001a29: PUSH1 0x20
00001a2b: ADD
00001a2c: SWAP2
00001a2d: PUSH2 0x1a5c
00001a30: JUMP
00001a31: JUMPDEST
00001a32: DUP3
00001a33: ADD
00001a34: SWAP2
00001a35: SWAP1
00001a36: PUSH1 0x00
00001a38: MSTORE
00001a39: PUSH1 0x20
00001a3b: PUSH1 0x00
00001a3d: KECCAK256
00001a3e: SWAP1
00001a3f: JUMPDEST
00001a40: DUP2
00001a41: SLOAD
00001a42: DUP2
00001a43: MSTORE
00001a44: SWAP1
00001a45: PUSH1 0x01
00001a47: ADD
00001a48: SWAP1
00001a49: PUSH1 0x20
00001a4b: ADD
00001a4c: DUP1
00001a4d: DUP4
00001a4e: GT
00001a4f: PUSH2 0x1a3f
00001a52: JUMPI
00001a53: DUP3
00001a54: SWAP1
00001a55: SUB
00001a56: PUSH1 0x1f
00001a58: AND
00001a59: DUP3
00001a5a: ADD
00001a5b: SWAP2
00001a5c: JUMPDEST
00001a5d: POP
00001a5e: POP
00001a5f: POP
00001a60: POP
00001a61: POP
00001a62: DUP2
00001a63: MSTORE
00001a64: POP
00001a65: POP
00001a66: SWAP1
00001a67: POP
00001a68: DUP1
00001a69: PUSH1 0xa0
00001a6b: ADD
00001a6c: MLOAD
00001a6d: PUSH1 0x01
00001a6f: PUSH1 0x01
00001a71: PUSH1 0x40
00001a73: SHL
00001a74: SUB
00001a75: AND
00001a76: PUSH1 0x00
00001a78: SUB
00001a79: PUSH2 0x1aa0
00001a7c: JUMPI
00001a7d: PUSH1 0x40
00001a7f: MLOAD
00001a80: PUSH4 0x5feafa31
00001a85: PUSH1 0xe1
00001a87: SHL
00001a88: DUP2
00001a89: MSTORE
00001a8a: PUSH1 0x01
00001a8c: PUSH1 0x01
00001a8e: PUSH1 0x40
00001a90: SHL
00001a91: SUB
00001a92: DUP4
00001a93: AND
00001a94: PUSH1 0x04
00001a96: DUP3
00001a97: ADD
00001a98: MSTORE
00001a99: PUSH1 0x24
00001a9b: ADD
00001a9c: PUSH2 0x0eaf
00001a9f: JUMP
00001aa0: JUMPDEST
00001aa1: PUSH1 0x40
00001aa3: DUP2
00001aa4: ADD
00001aa5: MLOAD
00001aa6: PUSH1 0x01
00001aa8: PUSH1 0x01
00001aaa: PUSH1 0xa0
00001aac: SHL
00001aad: SUB
00001aae: AND
00001aaf: CALLER
00001ab0: EQ
00001ab1: PUSH2 0x1ae4
00001ab4: JUMPI
00001ab5: PUSH1 0x40
00001ab7: DUP1
00001ab8: DUP3
00001ab9: ADD
00001aba: MLOAD
00001abb: SWAP1
00001abc: MLOAD
00001abd: PUSH4 0xceb40a85
00001ac2: PUSH1 0xe0
00001ac4: SHL
00001ac5: DUP2
00001ac6: MSTORE
00001ac7: CALLER
00001ac8: PUSH1 0x04
00001aca: DUP3
00001acb: ADD
00001acc: MSTORE
00001acd: PUSH1 0x01
00001acf: PUSH1 0x01
00001ad1: PUSH1 0xa0
00001ad3: SHL
00001ad4: SUB
00001ad5: SWAP1
00001ad6: SWAP2
00001ad7: AND
00001ad8: PUSH1 0x24
00001ada: DUP3
00001adb: ADD
00001adc: MSTORE
00001add: PUSH1 0x44
00001adf: ADD
00001ae0: PUSH2 0x0eaf
00001ae3: JUMP
00001ae4: JUMPDEST
00001ae5: PUSH2 0x1aec
00001ae8: PUSH2 0x2059
00001aeb: JUMP
00001aec: JUMPDEST
00001aed: PUSH1 0x01
00001aef: PUSH1 0x01
00001af1: PUSH1 0x40
00001af3: SHL
00001af4: SUB
00001af5: DUP4
00001af6: AND
00001af7: PUSH1 0x00
00001af9: SWAP1
00001afa: DUP2
00001afb: MSTORE
00001afc: PUSH1 0x20
00001afe: SWAP2
00001aff: SWAP1
00001b00: SWAP2
00001b01: MSTORE
00001b02: PUSH1 0x40
00001b04: DUP2
00001b05: KECCAK256
00001b06: DUP2
00001b07: DUP2
00001b08: SSTORE
00001b09: PUSH1 0x01
00001b0b: DUP2
00001b0c: ADD
00001b0d: DUP3
00001b0e: SWAP1
00001b0f: SSTORE
00001b10: PUSH1 0x02
00001b12: DUP2
00001b13: ADD
00001b14: DUP1
00001b15: SLOAD
00001b16: PUSH1 0x01
00001b18: PUSH1 0x01
00001b1a: PUSH1 0xf8
00001b1c: SHL
00001b1d: SUB
00001b1e: NOT
00001b1f: AND
00001b20: SWAP1
00001b21: SSTORE
00001b22: PUSH1 0x03
00001b24: DUP2
00001b25: ADD
00001b26: DUP1
00001b27: SLOAD
00001b28: PUSH1 0x01
00001b2a: PUSH1 0x01
00001b2c: PUSH1 0xe0
00001b2e: SHL
00001b2f: SUB
00001b30: NOT
00001b31: AND
00001b32: SWAP1
00001b33: SSTORE
00001b34: SWAP1
00001b35: PUSH2 0x1b41
00001b38: PUSH1 0x04
00001b3a: DUP4
00001b3b: ADD
00001b3c: DUP3
00001b3d: PUSH2 0x4f3d
00001b40: JUMP
00001b41: JUMPDEST
00001b42: POP
00001b43: POP
00001b44: PUSH2 0x1b7b
00001b47: DUP3
00001b48: PUSH1 0x01
00001b4a: PUSH1 0x01
00001b4c: PUSH1 0x40
00001b4e: SHL
00001b4f: SUB
00001b50: AND
00001b51: PUSH1 0x00
00001b53: SHL
00001b54: DUP3
00001b55: PUSH1 0xc0
00001b57: ADD
00001b58: MLOAD
00001b59: CALLER
00001b5a: DUP5
00001b5b: PUSH1 0x60
00001b5d: ADD
00001b5e: MLOAD
00001b5f: PUSH1 0x01
00001b61: PUSH1 0x40
00001b63: MLOAD
00001b64: DUP1
00001b65: PUSH1 0x20
00001b67: ADD
00001b68: PUSH1 0x40
00001b6a: MSTORE
00001b6b: DUP1
00001b6c: PUSH1 0x00
00001b6e: DUP2
00001b6f: MSTORE
00001b70: POP
00001b71: PUSH1 0x00
00001b73: DUP1
00001b74: PUSH1 0x00
00001b76: SHL
00001b77: PUSH2 0x2597
00001b7a: JUMP
00001b7b: JUMPDEST
00001b7c: POP
00001b7d: PUSH2 0x08af
00001b80: PUSH1 0x01
00001b82: PUSH1 0x00
00001b84: DUP1
00001b85: MLOAD
00001b86: PUSH1 0x20
00001b88: PUSH2 0x5ec1
00001b8b: DUP4
00001b8c: CODECOPY
00001b8d: DUP2
00001b8e: MLOAD
00001b8f: SWAP2
00001b90: MSTORE
00001b91: SSTORE
00001b92: JUMP
00001b93: JUMPDEST
00001b94: PUSH1 0x40
00001b96: DUP1
00001b97: MLOAD
00001b98: PUSH1 0x60
00001b9a: DUP2
00001b9b: ADD
00001b9c: DUP3
00001b9d: MSTORE
00001b9e: PUSH1 0x00
00001ba0: DUP1
00001ba1: DUP3
00001ba2: MSTORE
00001ba3: PUSH1 0x20
00001ba5: DUP3
00001ba6: ADD
00001ba7: DUP2
00001ba8: SWAP1
00001ba9: MSTORE
00001baa: SWAP2
00001bab: DUP2
00001bac: ADD
00001bad: SWAP2
00001bae: SWAP1
00001baf: SWAP2
00001bb0: MSTORE
00001bb1: PUSH2 0x1bb8
00001bb4: PUSH2 0x246e
00001bb7: JUMP
00001bb8: JUMPDEST
00001bb9: PUSH1 0x00
00001bbb: SWAP3
00001bbc: DUP4
00001bbd: MSTORE
00001bbe: PUSH1 0x20
00001bc0: SWAP1
00001bc1: DUP2
00001bc2: MSTORE
00001bc3: PUSH1 0x40
00001bc5: SWAP3
00001bc6: DUP4
00001bc7: SWAP1
00001bc8: KECCAK256
00001bc9: DUP4
00001bca: MLOAD
00001bcb: PUSH1 0x60
00001bcd: DUP1
00001bce: DUP3
00001bcf: ADD
00001bd0: DUP7
00001bd1: MSTORE
00001bd2: SWAP2
00001bd3: SLOAD
00001bd4: PUSH1 0x01
00001bd6: PUSH1 0x01
00001bd8: PUSH1 0x40
00001bda: SHL
00001bdb: SUB
00001bdc: DUP2
00001bdd: AND
00001bde: DUP3
00001bdf: MSTORE
00001be0: PUSH1 0x01
00001be2: PUSH1 0x40
00001be4: SHL
00001be5: DUP2
00001be6: DIV
00001be7: PUSH2 0xffff
00001bea: AND
00001beb: SWAP4
00001bec: DUP3
00001bed: ADD
00001bee: SWAP4
00001bef: SWAP1
00001bf0: SWAP4
00001bf1: MSTORE
00001bf2: PUSH1 0x01
00001bf4: PUSH1 0x50
00001bf6: SHL
00001bf7: SWAP1
00001bf8: SWAP3
00001bf9: DIV
00001bfa: SWAP1
00001bfb: SHL
00001bfc: PUSH1 0x01
00001bfe: PUSH1 0x01
00001c00: PUSH1 0x60
00001c02: SHL
00001c03: SUB
00001c04: NOT
00001c05: AND
00001c06: SWAP3
00001c07: DUP2
00001c08: ADD
00001c09: SWAP3
00001c0a: SWAP1
00001c0b: SWAP3
00001c0c: MSTORE
00001c0d: POP
00001c0e: SWAP1
00001c0f: JUMP
00001c10: JUMPDEST
00001c11: CALLER
00001c12: PUSH2 0x1c19
00001c15: PUSH2 0x15d8
00001c18: JUMP
00001c19: JUMPDEST
00001c1a: PUSH1 0x01
00001c1c: PUSH1 0x01
00001c1e: PUSH1 0xa0
00001c20: SHL
00001c21: SUB
00001c22: AND
00001c23: EQ
00001c24: ISZERO
00001c25: DUP1
00001c26: ISZERO
00001c27: PUSH2 0x1c39
00001c2a: JUMPI
00001c2b: POP
00001c2c: PUSH1 0x01
00001c2e: PUSH1 0x01
00001c30: PUSH1 0xa0
00001c32: SHL
00001c33: SUB
00001c34: DUP2
00001c35: AND
00001c36: CALLER
00001c37: EQ
00001c38: ISZERO
00001c39: JUMPDEST
00001c3a: ISZERO
00001c3b: PUSH2 0x08af
00001c3e: JUMPI
00001c3f: PUSH1 0x40
00001c41: MLOAD
00001c42: PUSH4 0xe2a08e5d
00001c47: PUSH1 0xe0
00001c49: SHL
00001c4a: DUP2
00001c4b: MSTORE
00001c4c: CALLER
00001c4d: PUSH1 0x04
00001c4f: DUP3
00001c50: ADD
00001c51: MSTORE
00001c52: PUSH1 0x24
00001c54: ADD
00001c55: PUSH2 0x0eaf
00001c58: JUMP
00001c59: JUMPDEST
00001c5a: PUSH1 0x00
00001c5c: DUP1
00001c5d: PUSH2 0x0898
00001c60: PUSH1 0x01
00001c62: PUSH32 0xbfa91572ce1e5fe8776a160d3b1f862e83f5ee2c080a7423b4761602a3ad124a
00001c83: PUSH2 0x5977
00001c86: JUMP
00001c87: JUMPDEST
00001c88: CALLER
00001c89: PUSH2 0x1c90
00001c8c: PUSH2 0x114f
00001c8f: JUMP
00001c90: JUMPDEST
00001c91: PUSH1 0x01
00001c93: PUSH1 0x01
00001c95: PUSH1 0xa0
00001c97: SHL
00001c98: SUB
00001c99: AND
00001c9a: EQ
00001c9b: PUSH2 0x0bd4
00001c9e: JUMPI
00001c9f: PUSH1 0x40
00001ca1: MLOAD
00001ca2: PUSH4 0x118cdaa7
00001ca7: PUSH1 0xe0
00001ca9: SHL
00001caa: DUP2
00001cab: MSTORE
00001cac: CALLER
00001cad: PUSH1 0x04
00001caf: DUP3
00001cb0: ADD
00001cb1: MSTORE
00001cb2: PUSH1 0x24
00001cb4: ADD
00001cb5: PUSH2 0x0eaf
00001cb8: JUMP
00001cb9: JUMPDEST
00001cba: PUSH1 0x00
00001cbc: DUP1
00001cbd: PUSH2 0x1cc5
00001cc0: DUP4
00001cc1: PUSH2 0x2c9c
00001cc4: JUMP
00001cc5: JUMPDEST
00001cc6: PUSH1 0x40
00001cc8: DUP1
00001cc9: MLOAD
00001cca: PUSH1 0x04
00001ccc: DUP2
00001ccd: MSTORE
00001cce: PUSH1 0x24
00001cd0: DUP2
00001cd1: ADD
00001cd2: SWAP1
00001cd3: SWAP2
00001cd4: MSTORE
00001cd5: PUSH1 0x20
00001cd7: DUP2
00001cd8: ADD
00001cd9: DUP1
00001cda: MLOAD
00001cdb: PUSH1 0x01
00001cdd: PUSH1 0x01
00001cdf: PUSH1 0xe0
00001ce1: SHL
00001ce2: SUB
00001ce3: AND
00001ce4: PUSH4 0x313ce567
00001ce9: PUSH1 0xe0
00001ceb: SHL
00001cec: OR
00001ced: SWAP1
00001cee: MSTORE
00001cef: SWAP1
00001cf0: SWAP2
00001cf1: POP
00001cf2: PUSH1 0x00
00001cf4: SWAP1
00001cf5: PUSH2 0x1cff
00001cf8: SWAP1
00001cf9: DUP4
00001cfa: SWAP1
00001cfb: PUSH2 0x2d46
00001cfe: JUMP
00001cff: JUMPDEST
00001d00: SWAP1
00001d01: POP
00001d02: DUP1
00001d03: DUP1
00001d04: PUSH1 0x20
00001d06: ADD
00001d07: SWAP1
00001d08: MLOAD
00001d09: DUP2
00001d0a: ADD
00001d0b: SWAP1
00001d0c: PUSH2 0x1d15
00001d0f: SWAP2
00001d10: SWAP1
00001d11: PUSH2 0x59b1
00001d14: JUMP
00001d15: JUMPDEST
00001d16: SWAP5
00001d17: SWAP4
00001d18: POP
00001d19: POP
00001d1a: POP
00001d1b: POP
00001d1c: JUMP
00001d1d: JUMPDEST
00001d1e: PUSH1 0x00
00001d20: DUP1
00001d21: PUSH2 0x1d34
00001d24: PUSH2 0x1d2e
00001d27: PUSH1 0x08
00001d29: DUP7
00001d2a: PUSH2 0x2dc6
00001d2d: JUMP
00001d2e: JUMPDEST
00001d2f: DUP5
00001d30: PUSH2 0x2dc6
00001d33: JUMP
00001d34: JUMPDEST
00001d35: SWAP1
00001d36: POP
00001d37: PUSH1 0x00
00001d39: PUSH2 0x1d43
00001d3c: DUP7
00001d3d: DUP7
00001d3e: DUP5
00001d3f: PUSH2 0x2de2
00001d42: JUMP
00001d43: JUMPDEST
00001d44: SWAP1
00001d45: POP
00001d46: PUSH2 0x1d6a
00001d49: PUSH2 0x1d51
00001d4c: DUP3
00001d4d: PUSH2 0x2e4b
00001d50: JUMP
00001d51: JUMPDEST
00001d52: DUP4
00001d53: PUSH1 0xff
00001d55: AND
00001d56: PUSH1 0x08
00001d58: SWAP2
00001d59: SWAP1
00001d5a: SWAP2
00001d5b: SHL
00001d5c: PUSH9 0xffffffffffffffff00
00001d66: AND
00001d67: OR
00001d68: SWAP1
00001d69: JUMP
00001d6a: JUMPDEST
00001d6b: SWAP3
00001d6c: POP
00001d6d: POP
00001d6e: POP
00001d6f: JUMPDEST
00001d70: SWAP4
00001d71: SWAP3
00001d72: POP
00001d73: POP
00001d74: POP
00001d75: JUMP
00001d76: JUMPDEST
00001d77: PUSH20 0xf3c52c28ddd282a96841933bb0cb85ba0fcb2fa0
00001d8c: PUSH4 0xe1d8f439
00001d91: PUSH2 0x1d99
00001d94: DUP6
00001d95: PUSH2 0x1e40
00001d98: JUMP
00001d99: JUMPDEST
00001d9a: PUSH2 0xffff
00001d9d: DUP5
00001d9e: AND
00001d9f: PUSH1 0x00
00001da1: SWAP1
00001da2: DUP2
00001da3: MSTORE
00001da4: PUSH1 0x20
00001da6: SWAP2
00001da7: SWAP1
00001da8: SWAP2
00001da9: MSTORE
00001daa: PUSH1 0x40
00001dac: SWAP1
00001dad: DUP2
00001dae: SWAP1
00001daf: KECCAK256
00001db0: SWAP1
00001db1: MLOAD
00001db2: PUSH1 0x01
00001db4: PUSH1 0x01
00001db6: PUSH1 0xe0
00001db8: SHL
00001db9: SUB
00001dba: NOT
00001dbb: PUSH1 0xe0
00001dbd: DUP5
00001dbe: SWAP1
00001dbf: SHL
00001dc0: AND
00001dc1: DUP2
00001dc2: MSTORE
00001dc3: PUSH1 0x04
00001dc5: DUP2
00001dc6: ADD
00001dc7: SWAP2
00001dc8: SWAP1
00001dc9: SWAP2
00001dca: MSTORE
00001dcb: PUSH1 0x01
00001dcd: PUSH1 0x01
00001dcf: PUSH1 0x48
00001dd1: SHL
00001dd2: SUB
00001dd3: DUP6
00001dd4: AND
00001dd5: PUSH1 0x24
00001dd7: DUP3
00001dd8: ADD
00001dd9: MSTORE
00001dda: PUSH1 0x01
00001ddc: PUSH1 0x01
00001dde: PUSH1 0x40
00001de0: SHL
00001de1: SUB
00001de2: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180
00001e03: AND
00001e04: PUSH1 0x44
00001e06: DUP3
00001e07: ADD
00001e08: MSTORE
00001e09: PUSH1 0x64
00001e0b: ADD
00001e0c: PUSH1 0x00
00001e0e: PUSH1 0x40
00001e10: MLOAD
00001e11: DUP1
00001e12: DUP4
00001e13: SUB
00001e14: DUP2
00001e15: DUP7
00001e16: DUP1
00001e17: EXTCODESIZE
00001e18: ISZERO
00001e19: DUP1
00001e1a: ISZERO
00001e1b: PUSH2 0x1e23
00001e1e: JUMPI
00001e1f: PUSH1 0x00
00001e21: DUP1
00001e22: REVERT
00001e23: JUMPDEST
00001e24: POP
00001e25: GAS
00001e26: DELEGATECALL
00001e27: ISZERO
00001e28: DUP1
00001e29: ISZERO
00001e2a: PUSH2 0x1e37
00001e2d: JUMPI
00001e2e: RETURNDATASIZE
00001e2f: PUSH1 0x00
00001e31: DUP1
00001e32: RETURNDATACOPY
00001e33: RETURNDATASIZE
00001e34: PUSH1 0x00
00001e36: REVERT
00001e37: JUMPDEST
00001e38: POP
00001e39: POP
00001e3a: POP
00001e3b: POP
00001e3c: POP
00001e3d: POP
00001e3e: POP
00001e3f: JUMP
00001e40: JUMPDEST
00001e41: PUSH1 0x00
00001e43: DUP1
00001e44: DUP3
00001e45: PUSH1 0x40
00001e47: MLOAD
00001e48: PUSH1 0x20
00001e4a: ADD
00001e4b: PUSH2 0x1e54
00001e4e: SWAP2
00001e4f: SWAP1
00001e50: PUSH2 0x59ce
00001e53: JUMP
00001e54: JUMPDEST
00001e55: PUSH1 0x40
00001e57: DUP1
00001e58: MLOAD
00001e59: PUSH1 0x1f
00001e5b: NOT
00001e5c: DUP2
00001e5d: DUP5
00001e5e: SUB
00001e5f: ADD
00001e60: DUP2
00001e61: MSTORE
00001e62: SWAP2
00001e63: SWAP1
00001e64: MSTORE
00001e65: DUP1
00001e66: MLOAD
00001e67: PUSH1 0x20
00001e69: SWAP1
00001e6a: SWAP2
00001e6b: ADD
00001e6c: KECCAK256
00001e6d: PUSH2 0x1e97
00001e70: PUSH1 0x01
00001e72: PUSH32 0x6473f680a37cfb54f66445ef18036c9f891a682c70bb8e4674f5d36e211ba893
00001e93: PUSH2 0x5977
00001e96: JUMP
00001e97: JUMPDEST
00001e98: XOR
00001e99: SWAP4
00001e9a: SWAP3
00001e9b: POP
00001e9c: POP
00001e9d: POP
00001e9e: JUMP
00001e9f: JUMPDEST
00001ea0: PUSH2 0x1ea7
00001ea3: PUSH2 0x28b1
00001ea6: JUMP
00001ea7: JUMPDEST
00001ea8: PUSH2 0x1eb0
00001eab: DUP2
00001eac: PUSH2 0x2eb3
00001eaf: JUMP
00001eb0: JUMPDEST
00001eb1: PUSH1 0x00
00001eb3: PUSH2 0x1eba
00001eb6: PUSH2 0x2963
00001eb9: JUMP
00001eba: JUMPDEST
00001ebb: DUP1
00001ebc: SLOAD
00001ebd: SWAP1
00001ebe: SWAP2
00001ebf: POP
00001ec0: PUSH1 0xff
00001ec2: AND
00001ec3: ISZERO
00001ec4: PUSH2 0x1ecf
00001ec7: JUMPI
00001ec8: PUSH2 0x1ecf
00001ecb: PUSH2 0x59e9
00001ece: JUMP
00001ecf: JUMPDEST
00001ed0: DUP1
00001ed1: SLOAD
00001ed2: PUSH1 0xff
00001ed4: NOT
00001ed5: AND
00001ed6: PUSH1 0x01
00001ed8: OR
00001ed9: DUP2
00001eda: SSTORE
00001edb: PUSH1 0x40
00001edd: DUP1
00001ede: MLOAD
00001edf: PUSH4 0x011fa757
00001ee4: PUSH1 0xe7
00001ee6: SHL
00001ee7: DUP2
00001ee8: MSTORE
00001ee9: SWAP1
00001eea: MLOAD
00001eeb: ADDRESS
00001eec: SWAP2
00001eed: PUSH4 0x8fd3ab80
00001ef2: SWAP2
00001ef3: PUSH1 0x04
00001ef5: DUP1
00001ef6: DUP4
00001ef7: ADD
00001ef8: SWAP3
00001ef9: PUSH1 0x00
00001efb: SWAP3
00001efc: SWAP2
00001efd: SWAP1
00001efe: DUP3
00001eff: SWAP1
00001f00: SUB
00001f01: ADD
00001f02: DUP2
00001f03: DUP4
00001f04: DUP8
00001f05: DUP1
00001f06: EXTCODESIZE
00001f07: ISZERO
00001f08: DUP1
00001f09: ISZERO
00001f0a: PUSH2 0x1f12
00001f0d: JUMPI
00001f0e: PUSH1 0x00
00001f10: DUP1
00001f11: REVERT
00001f12: JUMPDEST
00001f13: POP
00001f14: GAS
00001f15: CALL
00001f16: ISZERO
00001f17: DUP1
00001f18: ISZERO
00001f19: PUSH2 0x1f26
00001f1c: JUMPI
00001f1d: RETURNDATASIZE
00001f1e: PUSH1 0x00
00001f20: DUP1
00001f21: RETURNDATACOPY
00001f22: RETURNDATASIZE
00001f23: PUSH1 0x00
00001f25: REVERT
00001f26: JUMPDEST
00001f27: POP
00001f28: POP
00001f29: POP
00001f2a: POP
00001f2b: ADDRESS
00001f2c: PUSH1 0x01
00001f2e: PUSH1 0x01
00001f30: PUSH1 0xa0
00001f32: SHL
00001f33: SUB
00001f34: AND
00001f35: PUSH4 0x689f90c3
00001f3a: PUSH1 0x40
00001f3c: MLOAD
00001f3d: DUP2
00001f3e: PUSH4 0xffffffff
00001f43: AND
00001f44: PUSH1 0xe0
00001f46: SHL
00001f47: DUP2
00001f48: MSTORE
00001f49: PUSH1 0x04
00001f4b: ADD
00001f4c: PUSH1 0x20
00001f4e: PUSH1 0x40
00001f50: MLOAD
00001f51: DUP1
00001f52: DUP4
00001f53: SUB
00001f54: DUP2
00001f55: DUP7
00001f56: GAS
00001f57: STATICCALL
00001f58: ISZERO
00001f59: DUP1
00001f5a: ISZERO
00001f5b: PUSH2 0x1f68
00001f5e: JUMPI
00001f5f: RETURNDATASIZE
00001f60: PUSH1 0x00
00001f62: DUP1
00001f63: RETURNDATACOPY
00001f64: RETURNDATASIZE
00001f65: PUSH1 0x00
00001f67: REVERT
00001f68: JUMPDEST
00001f69: POP
00001f6a: POP
00001f6b: POP
00001f6c: POP
00001f6d: PUSH1 0x40
00001f6f: MLOAD
00001f70: RETURNDATASIZE
00001f71: PUSH1 0x1f
00001f73: NOT
00001f74: PUSH1 0x1f
00001f76: DUP3
00001f77: ADD
00001f78: AND
00001f79: DUP3
00001f7a: ADD
00001f7b: DUP1
00001f7c: PUSH1 0x40
00001f7e: MSTORE
00001f7f: POP
00001f80: DUP2
00001f81: ADD
00001f82: SWAP1
00001f83: PUSH2 0x1f8c
00001f86: SWAP2
00001f87: SWAP1
00001f88: PUSH2 0x59ff
00001f8b: JUMP
00001f8c: JUMPDEST
00001f8d: PUSH2 0x1f98
00001f90: JUMPI
00001f91: PUSH2 0x1f98
00001f94: PUSH2 0x2ef3
00001f97: JUMP
00001f98: JUMPDEST
00001f99: PUSH2 0x1fa2
00001f9c: PUSH1 0x00
00001f9e: PUSH2 0x317b
00001fa1: JUMP
00001fa2: JUMPDEST
00001fa3: DUP1
00001fa4: SLOAD
00001fa5: PUSH1 0xff
00001fa7: NOT
00001fa8: AND
00001fa9: SWAP1
00001faa: SSTORE
00001fab: POP
00001fac: JUMP
00001fad: JUMPDEST
00001fae: PUSH20 0xf3c52c28ddd282a96841933bb0cb85ba0fcb2fa0
00001fc3: PUSH4 0xe1d8f439
00001fc8: PUSH2 0x1fd0
00001fcb: DUP5
00001fcc: PUSH2 0x2087
00001fcf: JUMP
00001fd0: JUMPDEST
00001fd1: PUSH1 0x40
00001fd3: MLOAD
00001fd4: PUSH1 0x01
00001fd6: PUSH1 0x01
00001fd8: PUSH1 0xe0
00001fda: SHL
00001fdb: SUB
00001fdc: NOT
00001fdd: PUSH1 0xe0
00001fdf: DUP5
00001fe0: SWAP1
00001fe1: SHL
00001fe2: AND
00001fe3: DUP2
00001fe4: MSTORE
00001fe5: PUSH1 0x04
00001fe7: DUP2
00001fe8: ADD
00001fe9: SWAP2
00001fea: SWAP1
00001feb: SWAP2
00001fec: MSTORE
00001fed: PUSH1 0x01
00001fef: PUSH1 0x01
00001ff1: PUSH1 0x48
00001ff3: SHL
00001ff4: SUB
00001ff5: DUP5
00001ff6: AND
00001ff7: PUSH1 0x24
00001ff9: DUP3
00001ffa: ADD
00001ffb: MSTORE
00001ffc: PUSH1 0x01
00001ffe: PUSH1 0x01
00002000: PUSH1 0x40
00002002: SHL
00002003: SUB
00002004: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180
00002025: AND
00002026: PUSH1 0x44
00002028: DUP3
00002029: ADD
0000202a: MSTORE
0000202b: PUSH1 0x64
0000202d: ADD
0000202e: PUSH1 0x00
00002030: PUSH1 0x40
00002032: MLOAD
00002033: DUP1
00002034: DUP4
00002035: SUB
00002036: DUP2
00002037: DUP7
00002038: DUP1
00002039: EXTCODESIZE
0000203a: ISZERO
0000203b: DUP1
0000203c: ISZERO
0000203d: PUSH2 0x2045
00002040: JUMPI
00002041: PUSH1 0x00
00002043: DUP1
00002044: REVERT
00002045: JUMPDEST
00002046: POP
00002047: GAS
00002048: DELEGATECALL
00002049: ISZERO
0000204a: DUP1
0000204b: ISZERO
0000204c: PUSH2 0x0e1a
0000204f: JUMPI
00002050: RETURNDATASIZE
00002051: PUSH1 0x00
00002053: DUP1
00002054: RETURNDATACOPY
00002055: RETURNDATASIZE
00002056: PUSH1 0x00
00002058: REVERT
00002059: JUMPDEST
0000205a: PUSH1 0x00
0000205c: DUP1
0000205d: PUSH2 0x0898
00002060: PUSH1 0x01
00002062: PUSH32 0x88e530814ab5625345088d8b6ae477a7b1cc43d112909d0c9b66cab1ab9ed6c4
00002083: PUSH2 0x5977
00002086: JUMP
00002087: JUMPDEST
00002088: PUSH1 0x00
0000208a: DUP1
0000208b: DUP3
0000208c: PUSH1 0x40
0000208e: MLOAD
0000208f: PUSH1 0x20
00002091: ADD
00002092: PUSH2 0x209b
00002095: SWAP2
00002096: SWAP1
00002097: PUSH2 0x59ce
0000209a: JUMP
0000209b: JUMPDEST
0000209c: PUSH1 0x40
0000209e: DUP1
0000209f: MLOAD
000020a0: PUSH1 0x1f
000020a2: NOT
000020a3: DUP2
000020a4: DUP5
000020a5: SUB
000020a6: ADD
000020a7: DUP2
000020a8: MSTORE
000020a9: SWAP2
000020aa: SWAP1
000020ab: MSTORE
000020ac: DUP1
000020ad: MLOAD
000020ae: PUSH1 0x20
000020b0: SWAP1
000020b1: SWAP2
000020b2: ADD
000020b3: KECCAK256
000020b4: PUSH2 0x1e97
000020b7: PUSH1 0x01
000020b9: PUSH32 0x2a12c4997b0cb4fe51033104ae9bc2615917156119cfe2b3cbe348041d8d94ba
000020da: PUSH2 0x5977
000020dd: JUMP
000020de: JUMPDEST
000020df: PUSH1 0x00
000020e1: DUP2
000020e2: PUSH1 0x01
000020e4: PUSH1 0x01
000020e6: PUSH1 0x40
000020e8: SHL
000020e9: SUB
000020ea: AND
000020eb: PUSH1 0x00
000020ed: SUB
000020ee: PUSH2 0x210f
000020f1: JUMPI
000020f2: DUP3
000020f3: SLOAD
000020f4: PUSH1 0x01
000020f6: PUSH1 0x48
000020f8: SHL
000020f9: SWAP1
000020fa: DIV
000020fb: PUSH1 0xff
000020fd: AND
000020fe: PUSH9 0xffffffffffffffff00
00002108: OR
00002109: SWAP1
0000210a: POP
0000210b: PUSH2 0x0898
0000210e: JUMP
0000210f: JUMPDEST
00002110: DUP3
00002111: SLOAD
00002112: PUSH1 0x01
00002114: PUSH1 0x01
00002116: PUSH1 0x40
00002118: SHL
00002119: SUB
0000211a: PUSH1 0x01
0000211c: PUSH1 0x90
0000211e: SHL
0000211f: DUP3
00002120: DIV
00002121: DUP2
00002122: AND
00002123: TIMESTAMP
00002124: SUB
00002125: SWAP2
00002126: PUSH1 0x08
00002128: SHR
00002129: DUP2
0000212a: AND
0000212b: SWAP1
0000212c: PUSH1 0x00
0000212e: SWAP1
0000212f: DUP6
00002130: AND
00002131: DUP3
00002132: DUP5
00002133: MUL
00002134: DUP2
00002135: PUSH2 0x2140
00002138: JUMPI
00002139: PUSH2 0x2140
0000213c: PUSH2 0x5a1c
0000213f: JUMP
00002140: JUMPDEST
00002141: DUP8
00002142: SLOAD
00002143: PUSH1 0x01
00002145: PUSH1 0x01
00002147: PUSH1 0x40
00002149: SHL
0000214a: SUB
0000214b: PUSH1 0x01
0000214d: PUSH1 0x48
0000214f: SHL
00002150: SWAP1
00002151: SWAP2
00002152: DIV
00002153: PUSH1 0x08
00002155: SHR
00002156: AND
00002157: SWAP2
00002158: SWAP1
00002159: DIV
0000215a: ADD
0000215b: SWAP1
0000215c: POP
0000215d: PUSH1 0x00
0000215f: PUSH2 0x2168
00002162: DUP3
00002163: DUP5
00002164: PUSH2 0x3196
00002167: JUMP
00002168: JUMPDEST
00002169: SWAP1
0000216a: POP
0000216b: PUSH2 0x21a0
0000216e: PUSH2 0x2176
00002171: DUP3
00002172: PUSH2 0x2e4b
00002175: JUMP
00002176: JUMPDEST
00002177: DUP9
00002178: SLOAD
00002179: PUSH1 0x01
0000217b: PUSH1 0x48
0000217d: SHL
0000217e: SWAP1
0000217f: DIV
00002180: PUSH1 0x01
00002182: PUSH1 0x01
00002184: PUSH1 0x48
00002186: SHL
00002187: SUB
00002188: AND
00002189: PUSH1 0xff
0000218b: AND
0000218c: PUSH1 0x08
0000218e: SWAP2
0000218f: SWAP1
00002190: SWAP2
00002191: SHL
00002192: PUSH9 0xffffffffffffffff00
0000219c: AND
0000219d: OR
0000219e: SWAP1
0000219f: JUMP
000021a0: JUMPDEST
000021a1: SWAP8
000021a2: SWAP7
000021a3: POP
000021a4: POP
000021a5: POP
000021a6: POP
000021a7: POP
000021a8: POP
000021a9: POP
000021aa: JUMP
000021ab: JUMPDEST
000021ac: PUSH1 0x00
000021ae: PUSH1 0x01
000021b0: PUSH1 0x01
000021b2: PUSH1 0x40
000021b4: SHL
000021b5: SUB
000021b6: PUSH1 0x08
000021b8: DUP5
000021b9: SWAP1
000021ba: SHR
000021bb: AND
000021bc: DUP4
000021bd: DUP3
000021be: PUSH2 0x17c8
000021c1: DUP4
000021c2: DUP4
000021c3: DUP8
000021c4: PUSH2 0x2de2
000021c7: JUMP
000021c8: JUMPDEST
000021c9: DUP2
000021ca: PUSH2 0xffff
000021cd: AND
000021ce: PUSH1 0x00
000021d0: SUB
000021d1: PUSH2 0x21ed
000021d4: JUMPI
000021d5: PUSH1 0x40
000021d7: MLOAD
000021d8: PUSH4 0x100b0f27
000021dd: PUSH1 0xe1
000021df: SHL
000021e0: DUP2
000021e1: MSTORE
000021e2: PUSH1 0x04
000021e4: ADD
000021e5: PUSH1 0x40
000021e7: MLOAD
000021e8: DUP1
000021e9: SWAP2
000021ea: SUB
000021eb: SWAP1
000021ec: REVERT
000021ed: JUMPDEST
000021ee: DUP1
000021ef: PUSH2 0x220b
000021f2: JUMPI
000021f3: PUSH1 0x40
000021f5: MLOAD
000021f6: PUSH4 0xf839a0cb
000021fb: PUSH1 0xe0
000021fd: SHL
000021fe: DUP2
000021ff: MSTORE
00002200: PUSH1 0x04
00002202: ADD
00002203: PUSH1 0x40
00002205: MLOAD
00002206: DUP1
00002207: SWAP2
00002208: SUB
00002209: SWAP1
0000220a: REVERT
0000220b: JUMPDEST
0000220c: PUSH1 0x00
0000220e: PUSH2 0x2215
00002211: PUSH2 0x2ba5
00002214: JUMP
00002215: JUMPDEST
00002216: PUSH2 0xffff
00002219: DUP5
0000221a: AND
0000221b: PUSH1 0x00
0000221d: SWAP1
0000221e: DUP2
0000221f: MSTORE
00002220: PUSH1 0x20
00002222: SWAP2
00002223: DUP3
00002224: MSTORE
00002225: PUSH1 0x40
00002227: SWAP1
00002228: DUP2
00002229: SWAP1
0000222a: KECCAK256
0000222b: DUP2
0000222c: MLOAD
0000222d: SWAP3
0000222e: DUP4
0000222f: ADD
00002230: SWAP1
00002231: SWAP2
00002232: MSTORE
00002233: SLOAD
00002234: DUP2
00002235: MSTORE
00002236: SWAP1
00002237: POP
00002238: DUP2
00002239: PUSH2 0x2240
0000223c: PUSH2 0x2ba5
0000223f: JUMP
00002240: JUMPDEST
00002241: PUSH2 0xffff
00002244: DUP6
00002245: AND
00002246: PUSH1 0x00
00002248: DUP2
00002249: DUP2
0000224a: MSTORE
0000224b: PUSH1 0x20
0000224d: SWAP3
0000224e: DUP4
0000224f: MSTORE
00002250: PUSH1 0x40
00002252: SWAP1
00002253: DUP2
00002254: SWAP1
00002255: KECCAK256
00002256: SWAP4
00002257: SWAP1
00002258: SWAP4
00002259: SSTORE
0000225a: DUP4
0000225b: MLOAD
0000225c: DUP4
0000225d: MLOAD
0000225e: SWAP2
0000225f: DUP3
00002260: MSTORE
00002261: SWAP2
00002262: DUP2
00002263: ADD
00002264: SWAP2
00002265: SWAP1
00002266: SWAP2
00002267: MSTORE
00002268: SWAP1
00002269: DUP2
0000226a: ADD
0000226b: DUP4
0000226c: SWAP1
0000226d: MSTORE
0000226e: PUSH32 0x6b8e3e5d5cb35ca559551a3a468913b588421f8eeb87fabc088aa03638ce1369
0000228f: SWAP1
00002290: PUSH1 0x60
00002292: ADD
00002293: JUMPDEST
00002294: PUSH1 0x40
00002296: MLOAD
00002297: DUP1
00002298: SWAP2
00002299: SUB
0000229a: SWAP1
0000229b: LOG1
0000229c: POP
0000229d: POP
0000229e: POP
0000229f: JUMP
000022a0: JUMPDEST
000022a1: PUSH2 0x22a8
000022a4: PUSH2 0x1645
000022a7: JUMP
000022a8: JUMPDEST
000022a9: PUSH2 0x22c5
000022ac: JUMPI
000022ad: PUSH1 0x40
000022af: MLOAD
000022b0: PUSH4 0x7e38d1d3
000022b5: PUSH1 0xe1
000022b7: SHL
000022b8: DUP2
000022b9: MSTORE
000022ba: PUSH1 0x04
000022bc: ADD
000022bd: PUSH1 0x40
000022bf: MLOAD
000022c0: DUP1
000022c1: SWAP2
000022c2: SUB
000022c3: SWAP1
000022c4: REVERT
000022c5: JUMPDEST
000022c6: PUSH2 0x22cf
000022c9: PUSH1 0x01
000022cb: PUSH2 0x31a5
000022ce: JUMP
000022cf: JUMPDEST
000022d0: PUSH1 0x40
000022d2: MLOAD
000022d3: PUSH1 0x00
000022d5: DUP2
000022d6: MSTORE
000022d7: PUSH32 0xe11c2112add17fb763d3bd59f63b10429c3e11373da4fb8ef6725107a2fdc4b0
000022f8: SWAP1
000022f9: PUSH1 0x20
000022fb: ADD
000022fc: JUMPDEST
000022fd: PUSH1 0x40
000022ff: MLOAD
00002300: DUP1
00002301: SWAP2
00002302: SUB
00002303: SWAP1
00002304: LOG1
00002305: JUMP
00002306: JUMPDEST
00002307: PUSH1 0x00
00002309: DUP1
0000230a: PUSH2 0x0898
0000230d: PUSH1 0x01
0000230f: PUSH32 0xa81f8799e09b034e31f6dacb11cac1c94b38068dd2e76779232a66ee50bfce26
00002330: PUSH2 0x5977
00002333: JUMP
00002334: JUMPDEST
00002335: PUSH1 0x00
00002337: DUP1
00002338: PUSH2 0x0898
0000233b: PUSH1 0x01
0000233d: PUSH32 0xb25908bf1d6944231b0893d0a6983df22fdaaae9d33fc474848a5fff468575fc
0000235e: PUSH2 0x5977
00002361: JUMP
00002362: JUMPDEST
00002363: PUSH1 0x00
00002365: DUP1
00002366: PUSH2 0x0898
00002369: PUSH1 0x01
0000236b: PUSH32 0x5443fea4dc453d96b81ce55b62e11a4094cc4cbb8a360956a7253cfdb42506cc
0000238c: PUSH2 0x5977
0000238f: JUMP
00002390: JUMPDEST
00002391: PUSH1 0x00
00002393: DUP1
00002394: MLOAD
00002395: PUSH1 0x20
00002397: PUSH2 0x5ec1
0000239a: DUP4
0000239b: CODECOPY
0000239c: DUP2
0000239d: MLOAD
0000239e: SWAP2
0000239f: MSTORE
000023a0: DUP1
000023a1: SLOAD
000023a2: PUSH1 0x01
000023a4: NOT
000023a5: ADD
000023a6: PUSH2 0x23c2
000023a9: JUMPI
000023aa: PUSH1 0x40
000023ac: MLOAD
000023ad: PUSH4 0x3ee5aeb5
000023b2: PUSH1 0xe0
000023b4: SHL
000023b5: DUP2
000023b6: MSTORE
000023b7: PUSH1 0x04
000023b9: ADD
000023ba: PUSH1 0x40
000023bc: MLOAD
000023bd: DUP1
000023be: SWAP2
000023bf: SUB
000023c0: SWAP1
000023c1: REVERT
000023c2: JUMPDEST
000023c3: PUSH1 0x02
000023c5: SWAP1
000023c6: SSTORE
000023c7: JUMP
000023c8: JUMPDEST
000023c9: DUP1
000023ca: MLOAD
000023cb: PUSH1 0x80
000023cd: DUP3
000023ce: ADD
000023cf: MLOAD
000023d0: MLOAD
000023d1: PUSH1 0x60
000023d3: SWAP2
000023d4: SWAP1
000023d5: PUSH2 0xffff
000023d8: LT
000023d9: ISZERO
000023da: PUSH2 0x23ff
000023dd: JUMPI
000023de: DUP3
000023df: PUSH1 0x80
000023e1: ADD
000023e2: MLOAD
000023e3: MLOAD
000023e4: PUSH1 0x40
000023e6: MLOAD
000023e7: PUSH4 0xa3419691
000023ec: PUSH1 0xe0
000023ee: SHL
000023ef: DUP2
000023f0: MSTORE
000023f1: PUSH1 0x04
000023f3: ADD
000023f4: PUSH2 0x0eaf
000023f7: SWAP2
000023f8: DUP2
000023f9: MSTORE
000023fa: PUSH1 0x20
000023fc: ADD
000023fd: SWAP1
000023fe: JUMP
000023ff: JUMPDEST
00002400: PUSH1 0x80
00002402: DUP4
00002403: ADD
00002404: MLOAD
00002405: MLOAD
00002406: PUSH4 0x26535515
0000240b: PUSH1 0xe2
0000240d: SHL
0000240e: PUSH1 0x01
00002410: PUSH1 0x01
00002412: PUSH1 0x48
00002414: SHL
00002415: SUB
00002416: DUP4
00002417: AND
00002418: PUSH1 0x08
0000241a: DUP5
0000241b: SWAP1
0000241c: SHR
0000241d: PUSH1 0x01
0000241f: PUSH1 0x01
00002421: PUSH1 0x40
00002423: SHL
00002424: SUB
00002425: AND
00002426: PUSH2 0x2432
00002429: DUP8
0000242a: PUSH1 0x20
0000242c: ADD
0000242d: MLOAD
0000242e: PUSH2 0x31b2
00002431: JUMP
00002432: JUMPDEST
00002433: PUSH1 0x40
00002435: DUP1
00002436: DUP10
00002437: ADD
00002438: MLOAD
00002439: PUSH1 0x60
0000243b: DUP11
0000243c: ADD
0000243d: MLOAD
0000243e: PUSH1 0x80
00002440: DUP12
00002441: ADD
00002442: MLOAD
00002443: SWAP3
00002444: MLOAD
00002445: PUSH2 0x2456
00002448: SWAP8
00002449: SWAP7
0000244a: SWAP6
0000244b: SWAP5
0000244c: SWAP4
0000244d: DUP10
0000244e: SWAP2
0000244f: PUSH1 0x20
00002451: ADD
00002452: PUSH2 0x5a32
00002455: JUMP
00002456: JUMPDEST
00002457: PUSH1 0x40
00002459: MLOAD
0000245a: PUSH1 0x20
0000245c: DUP2
0000245d: DUP4
0000245e: SUB
0000245f: SUB
00002460: DUP2
00002461: MSTORE
00002462: SWAP1
00002463: PUSH1 0x40
00002465: MSTORE
00002466: SWAP3
00002467: POP
00002468: POP
00002469: POP
0000246a: SWAP2
0000246b: SWAP1
0000246c: POP
0000246d: JUMP
0000246e: JUMPDEST
0000246f: PUSH1 0x00
00002471: DUP1
00002472: PUSH2 0x0898
00002475: PUSH1 0x01
00002477: PUSH32 0x4bc3912cbaafdafac09ae32823daf95236e8f3c7440dda1c7298418edff173c5
00002498: PUSH2 0x5977
0000249b: JUMP
0000249c: JUMPDEST
0000249d: PUSH1 0x00
0000249f: DUP1
000024a0: PUSH2 0x24ac
000024a3: DUP4
000024a4: PUSH1 0x20
000024a6: ADD
000024a7: MLOAD
000024a8: PUSH2 0x128f
000024ab: JUMP
000024ac: JUMPDEST
000024ad: SWAP1
000024ae: POP
000024af: PUSH1 0x01
000024b1: PUSH1 0x01
000024b3: PUSH1 0xa0
000024b5: SHL
000024b6: SUB
000024b7: DUP2
000024b8: AND
000024b9: PUSH2 0x0898
000024bc: JUMPI
000024bd: PUSH2 0x24c5
000024c0: DUP4
000024c1: PUSH2 0x31f5
000024c4: JUMP
000024c5: JUMPDEST
000024c6: SWAP1
000024c7: POP
000024c8: PUSH1 0x40
000024ca: MLOAD
000024cb: DUP1
000024cc: PUSH1 0x20
000024ce: ADD
000024cf: PUSH1 0x40
000024d1: MSTORE
000024d2: DUP1
000024d3: DUP3
000024d4: PUSH1 0x01
000024d6: PUSH1 0x01
000024d8: PUSH1 0xa0
000024da: SHL
000024db: SUB
000024dc: AND
000024dd: DUP2
000024de: MSTORE
000024df: POP
000024e0: PUSH2 0x24e7
000024e3: PUSH2 0x2334
000024e6: JUMP
000024e7: JUMPDEST
000024e8: PUSH1 0x20
000024ea: DUP6
000024eb: DUP2
000024ec: ADD
000024ed: DUP1
000024ee: MLOAD
000024ef: MLOAD
000024f0: PUSH2 0xffff
000024f3: AND
000024f4: PUSH1 0x00
000024f6: SWAP1
000024f7: DUP2
000024f8: MSTORE
000024f9: SWAP3
000024fa: DUP3
000024fb: MSTORE
000024fc: PUSH1 0x40
000024fe: DUP1
000024ff: DUP5
00002500: KECCAK256
00002501: DUP3
00002502: MLOAD
00002503: DUP5
00002504: ADD
00002505: MLOAD
00002506: DUP6
00002507: MSTORE
00002508: SWAP1
00002509: SWAP3
0000250a: MSTORE
0000250b: SWAP2
0000250c: KECCAK256
0000250d: SWAP2
0000250e: MLOAD
0000250f: DUP3
00002510: SLOAD
00002511: PUSH1 0x01
00002513: PUSH1 0x01
00002515: PUSH1 0xa0
00002517: SHL
00002518: SUB
00002519: NOT
0000251a: AND
0000251b: PUSH1 0x01
0000251d: PUSH1 0x01
0000251f: PUSH1 0xa0
00002521: SHL
00002522: SUB
00002523: SWAP1
00002524: SWAP2
00002525: AND
00002526: OR
00002527: SWAP1
00002528: SWAP2
00002529: SSTORE
0000252a: MLOAD
0000252b: PUSH2 0x2532
0000252e: PUSH2 0x2306
00002531: JUMP
00002532: JUMPDEST
00002533: PUSH1 0x01
00002535: PUSH1 0x01
00002537: PUSH1 0xa0
00002539: SHL
0000253a: SUB
0000253b: DUP4
0000253c: AND
0000253d: PUSH1 0x00
0000253f: SWAP1
00002540: DUP2
00002541: MSTORE
00002542: PUSH1 0x20
00002544: SWAP2
00002545: DUP3
00002546: MSTORE
00002547: PUSH1 0x40
00002549: SWAP1
0000254a: KECCAK256
0000254b: DUP3
0000254c: MLOAD
0000254d: DUP2
0000254e: SLOAD
0000254f: PUSH2 0xffff
00002552: NOT
00002553: AND
00002554: PUSH2 0xffff
00002557: SWAP1
00002558: SWAP2
00002559: AND
0000255a: OR
0000255b: DUP2
0000255c: SSTORE
0000255d: SWAP2
0000255e: ADD
0000255f: MLOAD
00002560: PUSH1 0x01
00002562: SWAP1
00002563: SWAP2
00002564: ADD
00002565: SSTORE
00002566: SWAP3
00002567: SWAP2
00002568: POP
00002569: POP
0000256a: JUMP
0000256b: JUMPDEST
0000256c: PUSH1 0x00
0000256e: PUSH1 0xa0
00002570: DUP3
00002571: SWAP1
00002572: SHR
00002573: ISZERO
00002574: PUSH2 0x2593
00002577: JUMPI
00002578: PUSH1 0x40
0000257a: MLOAD
0000257b: PUSH4 0x033b960d
00002580: PUSH1 0xe4
00002582: SHL
00002583: DUP2
00002584: MSTORE
00002585: PUSH1 0x04
00002587: DUP2
00002588: ADD
00002589: DUP4
0000258a: SWAP1
0000258b: MSTORE
0000258c: PUSH1 0x24
0000258e: ADD
0000258f: PUSH2 0x0eaf
00002592: JUMP
00002593: JUMPDEST
00002594: POP
00002595: SWAP1
00002596: JUMP
00002597: JUMPDEST
00002598: PUSH1 0x00
0000259a: DUP1
0000259b: PUSH2 0x25a3
0000259e: DUP10
0000259f: PUSH2 0x1828
000025a2: JUMP
000025a3: JUMPDEST
000025a4: SWAP2
000025a5: POP
000025a6: SWAP2
000025a7: POP
000025a8: PUSH1 0x00
000025aa: PUSH2 0x25c5
000025ad: PUSH2 0x25b5
000025b0: DUP5
000025b1: PUSH2 0x1cb9
000025b4: JUMP
000025b5: JUMPDEST
000025b6: PUSH1 0x01
000025b8: PUSH1 0x01
000025ba: PUSH1 0x48
000025bc: SHL
000025bd: SUB
000025be: DUP11
000025bf: AND
000025c0: SWAP1
000025c1: PUSH2 0x21ab
000025c4: JUMP
000025c5: JUMPDEST
000025c6: SWAP1
000025c7: POP
000025c8: DUP7
000025c9: ISZERO
000025ca: PUSH2 0x261b
000025cd: JUMPI
000025ce: PUSH1 0x40
000025d0: DUP1
000025d1: MLOAD
000025d2: DUP13
000025d3: DUP2
000025d4: MSTORE
000025d5: PUSH1 0x01
000025d7: PUSH1 0x01
000025d9: PUSH1 0xa0
000025db: SHL
000025dc: SUB
000025dd: DUP12
000025de: AND
000025df: PUSH1 0x20
000025e1: DUP3
000025e2: ADD
000025e3: MSTORE
000025e4: SWAP1
000025e5: DUP2
000025e6: ADD
000025e7: DUP3
000025e8: SWAP1
000025e9: MSTORE
000025ea: PUSH32 0xf80e572ae1b63e2449629b6c7d783add85c36473926f216077f17ee002bcfd07
0000260b: SWAP1
0000260c: PUSH1 0x60
0000260e: ADD
0000260f: PUSH1 0x40
00002611: MLOAD
00002612: DUP1
00002613: SWAP2
00002614: SUB
00002615: SWAP1
00002616: LOG1
00002617: PUSH2 0x2647
0000261a: JUMP
0000261b: JUMPDEST
0000261c: PUSH1 0x40
0000261e: MLOAD
0000261f: DUP12
00002620: SWAP1
00002621: PUSH32 0x504e6efe18ab9eed10dc6501a417f5b12a2f7f2b1593aed9b89f9bce3cf29a91
00002642: SWAP1
00002643: PUSH1 0x00
00002645: SWAP1
00002646: LOG2
00002647: JUMPDEST
00002648: PUSH1 0x00
0000264a: DUP3
0000264b: PUSH1 0x01
0000264d: DUP2
0000264e: GT
0000264f: ISZERO
00002650: PUSH2 0x265b
00002653: JUMPI
00002654: PUSH2 0x265b
00002657: PUSH2 0x581c
0000265a: JUMP
0000265b: JUMPDEST
0000265c: SUB
0000265d: PUSH2 0x2786
00002660: JUMPI
00002661: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00002682: PUSH1 0x01
00002684: PUSH1 0x01
00002686: PUSH1 0xa0
00002688: SHL
00002689: SUB
0000268a: AND
0000268b: DUP11
0000268c: PUSH1 0x01
0000268e: PUSH1 0x01
00002690: PUSH1 0xa0
00002692: SHL
00002693: SUB
00002694: AND
00002695: SUB
00002696: PUSH2 0x276d
00002699: JUMPI
0000269a: PUSH1 0x40
0000269c: MLOAD
0000269d: PUSH4 0x2e1a7d4d
000026a2: PUSH1 0xe0
000026a4: SHL
000026a5: DUP2
000026a6: MSTORE
000026a7: PUSH1 0x04
000026a9: DUP2
000026aa: ADD
000026ab: DUP3
000026ac: SWAP1
000026ad: MSTORE
000026ae: PUSH1 0x01
000026b0: PUSH1 0x01
000026b2: PUSH1 0xa0
000026b4: SHL
000026b5: SUB
000026b6: DUP12
000026b7: AND
000026b8: SWAP1
000026b9: PUSH4 0x2e1a7d4d
000026be: SWAP1
000026bf: PUSH1 0x24
000026c1: ADD
000026c2: PUSH1 0x00
000026c4: PUSH1 0x40
000026c6: MLOAD
000026c7: DUP1
000026c8: DUP4
000026c9: SUB
000026ca: DUP2
000026cb: PUSH1 0x00
000026cd: DUP8
000026ce: DUP1
000026cf: EXTCODESIZE
000026d0: ISZERO
000026d1: DUP1
000026d2: ISZERO
000026d3: PUSH2 0x26db
000026d6: JUMPI
000026d7: PUSH1 0x00
000026d9: DUP1
000026da: REVERT
000026db: JUMPDEST
000026dc: POP
000026dd: GAS
000026de: CALL
000026df: ISZERO
000026e0: DUP1
000026e1: ISZERO
000026e2: PUSH2 0x26ef
000026e5: JUMPI
000026e6: RETURNDATASIZE
000026e7: PUSH1 0x00
000026e9: DUP1
000026ea: RETURNDATACOPY
000026eb: RETURNDATASIZE
000026ec: PUSH1 0x00
000026ee: REVERT
000026ef: JUMPDEST
000026f0: POP
000026f1: POP
000026f2: POP
000026f3: POP
000026f4: PUSH1 0x00
000026f6: DUP10
000026f7: PUSH1 0x01
000026f9: PUSH1 0x01
000026fb: PUSH1 0xa0
000026fd: SHL
000026fe: SUB
000026ff: AND
00002700: DUP3
00002701: PUSH1 0x40
00002703: MLOAD
00002704: PUSH1 0x00
00002706: PUSH1 0x40
00002708: MLOAD
00002709: DUP1
0000270a: DUP4
0000270b: SUB
0000270c: DUP2
0000270d: DUP6
0000270e: DUP8
0000270f: GAS
00002710: CALL
00002711: SWAP3
00002712: POP
00002713: POP
00002714: POP
00002715: RETURNDATASIZE
00002716: DUP1
00002717: PUSH1 0x00
00002719: DUP2
0000271a: EQ
0000271b: PUSH2 0x2740
0000271e: JUMPI
0000271f: PUSH1 0x40
00002721: MLOAD
00002722: SWAP2
00002723: POP
00002724: PUSH1 0x1f
00002726: NOT
00002727: PUSH1 0x3f
00002729: RETURNDATASIZE
0000272a: ADD
0000272b: AND
0000272c: DUP3
0000272d: ADD
0000272e: PUSH1 0x40
00002730: MSTORE
00002731: RETURNDATASIZE
00002732: DUP3
00002733: MSTORE
00002734: RETURNDATASIZE
00002735: PUSH1 0x00
00002737: PUSH1 0x20
00002739: DUP5
0000273a: ADD
0000273b: RETURNDATACOPY
0000273c: PUSH2 0x2745
0000273f: JUMP
00002740: JUMPDEST
00002741: PUSH1 0x60
00002743: SWAP2
00002744: POP
00002745: JUMPDEST
00002746: POP
00002747: POP
00002748: SWAP1
00002749: POP
0000274a: DUP1
0000274b: PUSH2 0x2767
0000274e: JUMPI
0000274f: PUSH1 0x40
00002751: MLOAD
00002752: PUSH4 0x12171d83
00002757: PUSH1 0xe3
00002759: SHL
0000275a: DUP2
0000275b: MSTORE
0000275c: PUSH1 0x04
0000275e: ADD
0000275f: PUSH1 0x40
00002761: MLOAD
00002762: DUP1
00002763: SWAP2
00002764: SUB
00002765: SWAP1
00002766: REVERT
00002767: JUMPDEST
00002768: POP
00002769: PUSH2 0x2802
0000276c: JUMP
0000276d: JUMPDEST
0000276e: PUSH2 0x2781
00002771: PUSH1 0x01
00002773: PUSH1 0x01
00002775: PUSH1 0xa0
00002777: SHL
00002778: SUB
00002779: DUP12
0000277a: AND
0000277b: DUP11
0000277c: DUP4
0000277d: PUSH2 0x3292
00002780: JUMP
00002781: JUMPDEST
00002782: PUSH2 0x2802
00002785: JUMP
00002786: JUMPDEST
00002787: PUSH1 0x01
00002789: DUP3
0000278a: PUSH1 0x01
0000278c: DUP2
0000278d: GT
0000278e: ISZERO
0000278f: PUSH2 0x279a
00002792: JUMPI
00002793: PUSH2 0x279a
00002796: PUSH2 0x581c
00002799: JUMP
0000279a: JUMPDEST
0000279b: SUB
0000279c: PUSH2 0x021a
0000279f: JUMPI
000027a0: PUSH1 0x40
000027a2: MLOAD
000027a3: PUSH4 0x40c10f19
000027a8: PUSH1 0xe0
000027aa: SHL
000027ab: DUP2
000027ac: MSTORE
000027ad: PUSH1 0x01
000027af: PUSH1 0x01
000027b1: PUSH1 0xa0
000027b3: SHL
000027b4: SUB
000027b5: DUP11
000027b6: DUP2
000027b7: AND
000027b8: PUSH1 0x04
000027ba: DUP4
000027bb: ADD
000027bc: MSTORE
000027bd: PUSH1 0x24
000027bf: DUP3
000027c0: ADD
000027c1: DUP4
000027c2: SWAP1
000027c3: MSTORE
000027c4: DUP12
000027c5: AND
000027c6: SWAP1
000027c7: PUSH4 0x40c10f19
000027cc: SWAP1
000027cd: PUSH1 0x44
000027cf: ADD
000027d0: PUSH1 0x00
000027d2: PUSH1 0x40
000027d4: MLOAD
000027d5: DUP1
000027d6: DUP4
000027d7: SUB
000027d8: DUP2
000027d9: PUSH1 0x00
000027db: DUP8
000027dc: DUP1
000027dd: EXTCODESIZE
000027de: ISZERO
000027df: DUP1
000027e0: ISZERO
000027e1: PUSH2 0x27e9
000027e4: JUMPI
000027e5: PUSH1 0x00
000027e7: DUP1
000027e8: REVERT
000027e9: JUMPDEST
000027ea: POP
000027eb: GAS
000027ec: CALL
000027ed: ISZERO
000027ee: DUP1
000027ef: ISZERO
000027f0: PUSH2 0x27fd
000027f3: JUMPI
000027f4: RETURNDATASIZE
000027f5: PUSH1 0x00
000027f7: DUP1
000027f8: RETURNDATACOPY
000027f9: RETURNDATASIZE
000027fa: PUSH1 0x00
000027fc: REVERT
000027fd: JUMPDEST
000027fe: POP
000027ff: POP
00002800: POP
00002801: POP
00002802: JUMPDEST
00002803: DUP6
00002804: MLOAD
00002805: ISZERO
00002806: PUSH2 0x2890
00002809: JUMPI
0000280a: PUSH1 0x40
0000280c: MLOAD
0000280d: PUSH4 0x9d3e056b
00002812: PUSH1 0xe0
00002814: SHL
00002815: DUP2
00002816: MSTORE
00002817: PUSH1 0x01
00002819: PUSH1 0x01
0000281b: PUSH1 0xa0
0000281d: SHL
0000281e: SUB
0000281f: DUP11
00002820: AND
00002821: SWAP1
00002822: PUSH4 0x9d3e056b
00002827: SWAP1
00002828: PUSH2 0x283d
0000282b: SWAP1
0000282c: DUP14
0000282d: SWAP1
0000282e: DUP6
0000282f: SWAP1
00002830: DUP12
00002831: SWAP1
00002832: DUP12
00002833: SWAP1
00002834: DUP12
00002835: SWAP1
00002836: PUSH1 0x04
00002838: ADD
00002839: PUSH2 0x5ac3
0000283c: JUMP
0000283d: JUMPDEST
0000283e: PUSH1 0x00
00002840: PUSH1 0x40
00002842: MLOAD
00002843: DUP1
00002844: DUP4
00002845: SUB
00002846: DUP2
00002847: PUSH1 0x00
00002849: DUP8
0000284a: DUP1
0000284b: EXTCODESIZE
0000284c: ISZERO
0000284d: DUP1
0000284e: ISZERO
0000284f: PUSH2 0x2857
00002852: JUMPI
00002853: PUSH1 0x00
00002855: DUP1
00002856: REVERT
00002857: JUMPDEST
00002858: POP
00002859: GAS
0000285a: CALL
0000285b: SWAP3
0000285c: POP
0000285d: POP
0000285e: POP
0000285f: DUP1
00002860: ISZERO
00002861: PUSH2 0x2868
00002864: JUMPI
00002865: POP
00002866: PUSH1 0x01
00002868: JUMPDEST
00002869: PUSH2 0x2890
0000286c: JUMPI
0000286d: PUSH1 0x40
0000286f: MLOAD
00002870: PUSH4 0x05836271
00002875: PUSH1 0xe4
00002877: SHL
00002878: DUP2
00002879: MSTORE
0000287a: PUSH1 0x01
0000287c: PUSH1 0x01
0000287e: PUSH1 0xa0
00002880: SHL
00002881: SUB
00002882: DUP11
00002883: AND
00002884: PUSH1 0x04
00002886: DUP3
00002887: ADD
00002888: MSTORE
00002889: PUSH1 0x24
0000288b: ADD
0000288c: PUSH2 0x0eaf
0000288f: JUMP
00002890: JUMPDEST
00002891: POP
00002892: POP
00002893: POP
00002894: POP
00002895: POP
00002896: POP
00002897: POP
00002898: POP
00002899: POP
0000289a: POP
0000289b: POP
0000289c: JUMP
0000289d: JUMPDEST
0000289e: PUSH1 0x01
000028a0: PUSH1 0x00
000028a2: DUP1
000028a3: MLOAD
000028a4: PUSH1 0x20
000028a6: PUSH2 0x5ec1
000028a9: DUP4
000028aa: CODECOPY
000028ab: DUP2
000028ac: MLOAD
000028ad: SWAP2
000028ae: MSTORE
000028af: SSTORE
000028b0: JUMP
000028b1: JUMPDEST
000028b2: PUSH1 0x01
000028b4: PUSH1 0x01
000028b6: PUSH1 0xa0
000028b8: SHL
000028b9: SUB
000028ba: PUSH32 0x000000000000000000000000bd62568e7f561f2067d6916d9cbd6217b4f46127
000028db: AND
000028dc: ADDRESS
000028dd: SUB
000028de: PUSH2 0x0bd4
000028e1: JUMPI
000028e2: PUSH1 0x40
000028e4: MLOAD
000028e5: PUSH4 0x3c64f993
000028ea: PUSH1 0xe2
000028ec: SHL
000028ed: DUP2
000028ee: MSTORE
000028ef: PUSH1 0x04
000028f1: ADD
000028f2: PUSH1 0x40
000028f4: MLOAD
000028f5: DUP1
000028f6: SWAP2
000028f7: SUB
000028f8: SWAP1
000028f9: REVERT
000028fa: JUMPDEST
000028fb: PUSH2 0x0bd4
000028fe: PUSH2 0x32f5
00002901: JUMP
00002902: JUMPDEST
00002903: PUSH2 0x290a
00002906: PUSH2 0x1645
00002909: JUMP
0000290a: JUMPDEST
0000290b: ISZERO
0000290c: PUSH2 0x2928
0000290f: JUMPI
00002910: PUSH1 0x40
00002912: MLOAD
00002913: PUSH4 0x09e3d0f3
00002918: PUSH1 0xe1
0000291a: SHL
0000291b: DUP2
0000291c: MSTORE
0000291d: PUSH1 0x04
0000291f: ADD
00002920: PUSH1 0x40
00002922: MLOAD
00002923: DUP1
00002924: SWAP2
00002925: SUB
00002926: SWAP1
00002927: REVERT
00002928: JUMPDEST
00002929: PUSH2 0x2932
0000292c: PUSH1 0x02
0000292e: PUSH2 0x31a5
00002931: JUMP
00002932: JUMPDEST
00002933: PUSH1 0x40
00002935: MLOAD
00002936: PUSH1 0x01
00002938: DUP2
00002939: MSTORE
0000293a: PUSH32 0x0e2fb031ee032dc02d8011dc50b816eb450cf856abd8261680dac74f72165bd2
0000295b: SWAP1
0000295c: PUSH1 0x20
0000295e: ADD
0000295f: PUSH2 0x22fc
00002962: JUMP
00002963: JUMPDEST
00002964: PUSH1 0x00
00002966: DUP1
00002967: PUSH2 0x0898
0000296a: PUSH1 0x01
0000296c: PUSH32 0x7487ca88d037ca20519908b1ee7556206bef53bce0226a348750cb9d4f688e4f
0000298d: PUSH2 0x5977
00002990: JUMP
00002991: JUMPDEST
00002992: PUSH1 0x40
00002994: DUP1
00002995: MLOAD
00002996: DUP1
00002997: DUP3
00002998: ADD
00002999: SWAP1
0000299a: SWAP2
0000299b: MSTORE
0000299c: PUSH1 0x00
0000299e: DUP1
0000299f: DUP3
000029a0: MSTORE
000029a1: PUSH1 0x20
000029a3: DUP3
000029a4: ADD
000029a5: DUP2
000029a6: SWAP1
000029a7: MSTORE
000029a8: SWAP1
000029a9: PUSH1 0x60
000029ab: SWAP1
000029ac: PUSH2 0x29b4
000029af: DUP12
000029b0: PUSH2 0x1828
000029b3: JUMP
000029b4: JUMPDEST
000029b5: POP
000029b6: DUP1
000029b7: SWAP2
000029b8: POP
000029b9: POP
000029ba: PUSH1 0x00
000029bc: PUSH1 0x40
000029be: MLOAD
000029bf: DUP1
000029c0: PUSH1 0x40
000029c2: ADD
000029c3: PUSH1 0x40
000029c5: MSTORE
000029c6: DUP1
000029c7: PUSH2 0x29cf
000029ca: DUP5
000029cb: PUSH2 0x33a8
000029ce: JUMP
000029cf: JUMPDEST
000029d0: DUP2
000029d1: MSTORE
000029d2: PUSH1 0x20
000029d4: ADD
000029d5: DUP4
000029d6: DUP2
000029d7: MSTORE
000029d8: POP
000029d9: SWAP1
000029da: POP
000029db: PUSH2 0x2a21
000029de: PUSH1 0x40
000029e0: MLOAD
000029e1: DUP1
000029e2: PUSH1 0xa0
000029e4: ADD
000029e5: PUSH1 0x40
000029e7: MSTORE
000029e8: DUP1
000029e9: DUP14
000029ea: PUSH1 0x01
000029ec: PUSH1 0x01
000029ee: PUSH1 0x48
000029f0: SHL
000029f1: SUB
000029f2: AND
000029f3: DUP2
000029f4: MSTORE
000029f5: PUSH1 0x20
000029f7: ADD
000029f8: DUP4
000029f9: DUP2
000029fa: MSTORE
000029fb: PUSH1 0x20
000029fd: ADD
000029fe: PUSH2 0x2a0d
00002a01: DUP11
00002a02: PUSH1 0x01
00002a04: PUSH1 0x01
00002a06: PUSH1 0xa0
00002a08: SHL
00002a09: SUB
00002a0a: AND
00002a0b: SWAP1
00002a0c: JUMP
00002a0d: JUMPDEST
00002a0e: DUP2
00002a0f: MSTORE
00002a10: PUSH1 0x20
00002a12: ADD
00002a13: DUP12
00002a14: DUP2
00002a15: MSTORE
00002a16: PUSH1 0x20
00002a18: ADD
00002a19: DUP8
00002a1a: DUP2
00002a1b: MSTORE
00002a1c: POP
00002a1d: PUSH2 0x23c8
00002a20: JUMP
00002a21: JUMPDEST
00002a22: SWAP3
00002a23: POP
00002a24: POP
00002a25: PUSH2 0x2a32
00002a28: DUP14
00002a29: DUP11
00002a2a: DUP10
00002a2b: DUP16
00002a2c: DUP7
00002a2d: DUP11
00002a2e: PUSH2 0x33d9
00002a31: JUMP
00002a32: JUMPDEST
00002a33: SWAP3
00002a34: POP
00002a35: PUSH1 0x00
00002a37: PUSH2 0x2a52
00002a3a: PUSH2 0x2a42
00002a3d: DUP4
00002a3e: PUSH2 0x1cb9
00002a41: JUMP
00002a42: JUMPDEST
00002a43: PUSH1 0x01
00002a45: PUSH1 0x01
00002a47: PUSH1 0x48
00002a49: SHL
00002a4a: SUB
00002a4b: DUP14
00002a4c: AND
00002a4d: SWAP1
00002a4e: PUSH2 0x21ab
00002a51: JUMP
00002a52: JUMPDEST
00002a53: PUSH1 0x20
00002a55: DUP1
00002a56: DUP5
00002a57: ADD
00002a58: MLOAD
00002a59: DUP5
00002a5a: MLOAD
00002a5b: PUSH1 0x40
00002a5d: DUP1
00002a5e: MLOAD
00002a5f: PUSH1 0x01
00002a61: PUSH1 0x01
00002a63: PUSH1 0x40
00002a65: SHL
00002a66: SUB
00002a67: DUP11
00002a68: AND
00002a69: DUP2
00002a6a: MSTORE
00002a6b: SWAP4
00002a6c: DUP5
00002a6d: ADD
00002a6e: DUP15
00002a6f: SWAP1
00002a70: MSTORE
00002a71: DUP4
00002a72: ADD
00002a73: DUP13
00002a74: SWAP1
00002a75: MSTORE
00002a76: PUSH1 0x60
00002a78: DUP4
00002a79: ADD
00002a7a: DUP5
00002a7b: SWAP1
00002a7c: MSTORE
00002a7d: PUSH1 0x01
00002a7f: PUSH1 0x01
00002a81: PUSH1 0xa0
00002a83: SHL
00002a84: SUB
00002a85: DUP12
00002a86: AND
00002a87: PUSH1 0x80
00002a89: DUP5
00002a8a: ADD
00002a8b: MSTORE
00002a8c: SWAP3
00002a8d: SWAP4
00002a8e: POP
00002a8f: PUSH2 0xffff
00002a92: DUP1
00002a93: DUP15
00002a94: AND
00002a95: SWAP4
00002a96: SWAP2
00002a97: SWAP3
00002a98: SWAP2
00002a99: AND
00002a9a: SWAP1
00002a9b: PUSH32 0xace4867fe6fb81aab943eba9cdd00e13f386affe1946ce84f2f46ad4620372f4
00002abc: SWAP1
00002abd: PUSH1 0xa0
00002abf: ADD
00002ac0: PUSH1 0x40
00002ac2: MLOAD
00002ac3: DUP1
00002ac4: SWAP2
00002ac5: SUB
00002ac6: SWAP1
00002ac7: LOG4
00002ac8: POP
00002ac9: POP
00002aca: POP
00002acb: SWAP11
00002acc: SWAP10
00002acd: POP
00002ace: POP
00002acf: POP
00002ad0: POP
00002ad1: POP
00002ad2: POP
00002ad3: POP
00002ad4: POP
00002ad5: POP
00002ad6: POP
00002ad7: JUMP
00002ad8: JUMPDEST
00002ad9: PUSH1 0x80
00002adb: DUP3
00002adc: ADD
00002add: MLOAD
00002ade: PUSH1 0x00
00002ae0: SWAP1
00002ae1: DUP2
00002ae2: SWAP1
00002ae3: ISZERO
00002ae4: PUSH2 0x2af1
00002ae7: JUMPI
00002ae8: DUP4
00002ae9: PUSH1 0x80
00002aeb: ADD
00002aec: MLOAD
00002aed: PUSH2 0x2af7
00002af0: JUMP
00002af1: JUMPDEST
00002af2: DUP4
00002af3: PUSH1 0x60
00002af5: ADD
00002af6: MLOAD
00002af7: JUMPDEST
00002af8: SWAP1
00002af9: POP
00002afa: PUSH1 0x00
00002afc: DUP5
00002afd: PUSH1 0xc0
00002aff: ADD
00002b00: MLOAD
00002b01: MLOAD
00002b02: PUSH1 0x00
00002b04: EQ
00002b05: PUSH2 0x2b12
00002b08: JUMPI
00002b09: DUP5
00002b0a: PUSH1 0xc0
00002b0c: ADD
00002b0d: MLOAD
00002b0e: PUSH2 0x2b2f
00002b11: JUMP
00002b12: JUMPDEST
00002b13: PUSH1 0x40
00002b15: DUP1
00002b16: MLOAD
00002b17: PUSH1 0x01
00002b19: DUP1
00002b1a: DUP3
00002b1b: MSTORE
00002b1c: DUP2
00002b1d: DUP4
00002b1e: ADD
00002b1f: SWAP1
00002b20: SWAP3
00002b21: MSTORE
00002b22: SWAP1
00002b23: PUSH1 0x20
00002b25: DUP3
00002b26: ADD
00002b27: DUP2
00002b28: DUP1
00002b29: CALLDATASIZE
00002b2a: DUP4
00002b2b: CALLDATACOPY
00002b2c: POP
00002b2d: POP
00002b2e: POP
00002b2f: JUMPDEST
00002b30: PUSH1 0x80
00002b32: DUP7
00002b33: ADD
00002b34: DUP4
00002b35: SWAP1
00002b36: MSTORE
00002b37: PUSH1 0xc0
00002b39: DUP7
00002b3a: ADD
00002b3b: DUP2
00002b3c: SWAP1
00002b3d: MSTORE
00002b3e: PUSH1 0x40
00002b40: DUP1
00002b41: MLOAD
00002b42: PUSH1 0x60
00002b44: DUP2
00002b45: ADD
00002b46: SWAP1
00002b47: SWAP2
00002b48: MSTORE
00002b49: CALLVALUE
00002b4a: DUP2
00002b4b: MSTORE
00002b4c: SWAP1
00002b4d: SWAP2
00002b4e: POP
00002b4f: DUP6
00002b50: SWAP1
00002b51: PUSH2 0x17c8
00002b54: SWAP1
00002b55: PUSH1 0x20
00002b57: DUP2
00002b58: ADD
00002b59: DUP8
00002b5a: PUSH1 0x01
00002b5c: DUP2
00002b5d: GT
00002b5e: ISZERO
00002b5f: PUSH2 0x2b6a
00002b62: JUMPI
00002b63: PUSH2 0x2b6a
00002b66: PUSH2 0x581c
00002b69: JUMP
00002b6a: JUMPDEST
00002b6b: DUP2
00002b6c: MSTORE
00002b6d: PUSH1 0x20
00002b6f: ADD
00002b70: DUP4
00002b71: SWAP1
00002b72: MSTORE
00002b73: PUSH2 0x346f
00002b76: JUMP
00002b77: JUMPDEST
00002b78: PUSH1 0x00
00002b7a: DUP1
00002b7b: PUSH2 0x0898
00002b7e: PUSH1 0x01
00002b80: PUSH32 0x64bacf405c5d7f563d3ba5252584a52c37e4fee380fd825b10666c27b8258023
00002ba1: PUSH2 0x5977
00002ba4: JUMP
00002ba5: JUMPDEST
00002ba6: PUSH1 0x00
00002ba8: DUP1
00002ba9: PUSH2 0x0898
00002bac: PUSH1 0x01
00002bae: PUSH32 0xebcc9f646b0f459ff8f387587d536b0af3484cf442e1577400f322334e7d1ef1
00002bcf: PUSH2 0x5977
00002bd2: JUMP
00002bd3: JUMPDEST
00002bd4: PUSH2 0x2bdd
00002bd7: DUP5
00002bd8: DUP5
00002bd9: PUSH2 0x3a3f
00002bdc: JUMP
00002bdd: JUMPDEST
00002bde: PUSH1 0x00
00002be0: PUSH2 0x2c1e
00002be3: DUP4
00002be4: DUP4
00002be5: DUP1
00002be6: DUP1
00002be7: PUSH1 0x1f
00002be9: ADD
00002bea: PUSH1 0x20
00002bec: DUP1
00002bed: SWAP2
00002bee: DIV
00002bef: MUL
00002bf0: PUSH1 0x20
00002bf2: ADD
00002bf3: PUSH1 0x40
00002bf5: MLOAD
00002bf6: SWAP1
00002bf7: DUP2
00002bf8: ADD
00002bf9: PUSH1 0x40
00002bfb: MSTORE
00002bfc: DUP1
00002bfd: SWAP4
00002bfe: SWAP3
00002bff: SWAP2
00002c00: SWAP1
00002c01: DUP2
00002c02: DUP2
00002c03: MSTORE
00002c04: PUSH1 0x20
00002c06: ADD
00002c07: DUP4
00002c08: DUP4
00002c09: DUP1
00002c0a: DUP3
00002c0b: DUP5
00002c0c: CALLDATACOPY
00002c0d: PUSH1 0x00
00002c0f: SWAP3
00002c10: ADD
00002c11: SWAP2
00002c12: SWAP1
00002c13: SWAP2
00002c14: MSTORE
00002c15: POP
00002c16: PUSH2 0x3acb
00002c19: SWAP3
00002c1a: POP
00002c1b: POP
00002c1c: POP
00002c1d: JUMP
00002c1e: JUMPDEST
00002c1f: SWAP1
00002c20: POP
00002c21: PUSH2 0x0e1a
00002c24: DUP7
00002c25: DUP7
00002c26: DUP4
00002c27: PUSH2 0x3bce
00002c2a: JUMP
00002c2b: JUMPDEST
00002c2c: PUSH32 0x9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300
00002c4d: DUP1
00002c4e: SLOAD
00002c4f: PUSH1 0x01
00002c51: PUSH1 0x01
00002c53: PUSH1 0xa0
00002c55: SHL
00002c56: SUB
00002c57: NOT
00002c58: DUP2
00002c59: AND
00002c5a: PUSH1 0x01
00002c5c: PUSH1 0x01
00002c5e: PUSH1 0xa0
00002c60: SHL
00002c61: SUB
00002c62: DUP5
00002c63: DUP2
00002c64: AND
00002c65: SWAP2
00002c66: DUP3
00002c67: OR
00002c68: DUP5
00002c69: SSTORE
00002c6a: PUSH1 0x40
00002c6c: MLOAD
00002c6d: SWAP3
00002c6e: AND
00002c6f: SWAP2
00002c70: DUP3
00002c71: SWAP1
00002c72: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
00002c93: SWAP1
00002c94: PUSH1 0x00
00002c96: SWAP1
00002c97: LOG3
00002c98: POP
00002c99: POP
00002c9a: POP
00002c9b: JUMP
00002c9c: JUMPDEST
00002c9d: PUSH1 0x00
00002c9f: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000002
00002cc0: PUSH2 0xffff
00002cc3: AND
00002cc4: DUP3
00002cc5: PUSH1 0x00
00002cc7: ADD
00002cc8: MLOAD
00002cc9: PUSH2 0xffff
00002ccc: AND
00002ccd: SUB
00002cce: PUSH2 0x2cde
00002cd1: JUMPI
00002cd2: PUSH2 0x0898
00002cd5: DUP3
00002cd6: PUSH1 0x20
00002cd8: ADD
00002cd9: MLOAD
00002cda: PUSH2 0x256b
00002cdd: JUMP
00002cde: JUMPDEST
00002cdf: PUSH1 0x00
00002ce1: PUSH2 0x2ce8
00002ce4: PUSH2 0x2334
00002ce7: JUMP
00002ce8: JUMPDEST
00002ce9: DUP4
00002cea: MLOAD
00002ceb: PUSH2 0xffff
00002cee: AND
00002cef: PUSH1 0x00
00002cf1: SWAP1
00002cf2: DUP2
00002cf3: MSTORE
00002cf4: PUSH1 0x20
00002cf6: SWAP2
00002cf7: DUP3
00002cf8: MSTORE
00002cf9: PUSH1 0x40
00002cfb: DUP1
00002cfc: DUP3
00002cfd: KECCAK256
00002cfe: DUP4
00002cff: DUP8
00002d00: ADD
00002d01: MLOAD
00002d02: DUP4
00002d03: MSTORE
00002d04: SWAP1
00002d05: SWAP3
00002d06: MSTORE
00002d07: KECCAK256
00002d08: DUP1
00002d09: SLOAD
00002d0a: SWAP1
00002d0b: SWAP2
00002d0c: POP
00002d0d: PUSH1 0x01
00002d0f: PUSH1 0x01
00002d11: PUSH1 0xa0
00002d13: SHL
00002d14: SUB
00002d15: AND
00002d16: DUP1
00002d17: PUSH2 0x1d6f
00002d1a: JUMPI
00002d1b: DUP4
00002d1c: MLOAD
00002d1d: PUSH1 0x20
00002d1f: DUP6
00002d20: ADD
00002d21: MLOAD
00002d22: PUSH1 0x40
00002d24: MLOAD
00002d25: PUSH4 0x0faefd2b
00002d2a: PUSH1 0xe2
00002d2c: SHL
00002d2d: DUP2
00002d2e: MSTORE
00002d2f: PUSH2 0xffff
00002d32: SWAP1
00002d33: SWAP3
00002d34: AND
00002d35: PUSH1 0x04
00002d37: DUP4
00002d38: ADD
00002d39: MSTORE
00002d3a: PUSH1 0x24
00002d3c: DUP3
00002d3d: ADD
00002d3e: MSTORE
00002d3f: PUSH1 0x44
00002d41: ADD
00002d42: PUSH2 0x0eaf
00002d45: JUMP
00002d46: JUMPDEST
00002d47: PUSH1 0x60
00002d49: PUSH1 0x00
00002d4b: DUP1
00002d4c: DUP5
00002d4d: PUSH1 0x01
00002d4f: PUSH1 0x01
00002d51: PUSH1 0xa0
00002d53: SHL
00002d54: SUB
00002d55: AND
00002d56: DUP5
00002d57: PUSH1 0x40
00002d59: MLOAD
00002d5a: PUSH2 0x2d63
00002d5d: SWAP2
00002d5e: SWAP1
00002d5f: PUSH2 0x5b02
00002d62: JUMP
00002d63: JUMPDEST
00002d64: PUSH1 0x00
00002d66: PUSH1 0x40
00002d68: MLOAD
00002d69: DUP1
00002d6a: DUP4
00002d6b: SUB
00002d6c: DUP2
00002d6d: DUP6
00002d6e: GAS
00002d6f: STATICCALL
00002d70: SWAP2
00002d71: POP
00002d72: POP
00002d73: RETURNDATASIZE
00002d74: DUP1
00002d75: PUSH1 0x00
00002d77: DUP2
00002d78: EQ
00002d79: PUSH2 0x2d9e
00002d7c: JUMPI
00002d7d: PUSH1 0x40
00002d7f: MLOAD
00002d80: SWAP2
00002d81: POP
00002d82: PUSH1 0x1f
00002d84: NOT
00002d85: PUSH1 0x3f
00002d87: RETURNDATASIZE
00002d88: ADD
00002d89: AND
00002d8a: DUP3
00002d8b: ADD
00002d8c: PUSH1 0x40
00002d8e: MSTORE
00002d8f: RETURNDATASIZE
00002d90: DUP3
00002d91: MSTORE
00002d92: RETURNDATASIZE
00002d93: PUSH1 0x00
00002d95: PUSH1 0x20
00002d97: DUP5
00002d98: ADD
00002d99: RETURNDATACOPY
00002d9a: PUSH2 0x2da3
00002d9d: JUMP
00002d9e: JUMPDEST
00002d9f: PUSH1 0x60
00002da1: SWAP2
00002da2: POP
00002da3: JUMPDEST
00002da4: POP
00002da5: SWAP2
00002da6: POP
00002da7: SWAP2
00002da8: POP
00002da9: DUP2
00002daa: PUSH2 0x1d15
00002dad: JUMPI
00002dae: PUSH1 0x40
00002db0: MLOAD
00002db1: PUSH4 0x1222cd83
00002db6: PUSH1 0xe0
00002db8: SHL
00002db9: DUP2
00002dba: MSTORE
00002dbb: PUSH1 0x04
00002dbd: ADD
00002dbe: PUSH1 0x40
00002dc0: MLOAD
00002dc1: DUP1
00002dc2: SWAP2
00002dc3: SUB
00002dc4: SWAP1
00002dc5: REVERT
00002dc6: JUMPDEST
00002dc7: PUSH1 0x00
00002dc9: DUP2
00002dca: PUSH1 0xff
00002dcc: AND
00002dcd: DUP4
00002dce: PUSH1 0xff
00002dd0: AND
00002dd1: LT
00002dd2: PUSH2 0x2ddb
00002dd5: JUMPI
00002dd6: DUP2
00002dd7: PUSH2 0x1d6f
00002dda: JUMP
00002ddb: JUMPDEST
00002ddc: POP
00002ddd: SWAP1
00002dde: SWAP2
00002ddf: SWAP1
00002de0: POP
00002de1: JUMP
00002de2: JUMPDEST
00002de3: PUSH1 0x00
00002de5: DUP2
00002de6: PUSH1 0xff
00002de8: AND
00002de9: DUP4
00002dea: PUSH1 0xff
00002dec: AND
00002ded: SUB
00002dee: PUSH2 0x2df8
00002df1: JUMPI
00002df2: POP
00002df3: DUP3
00002df4: PUSH2 0x1d6f
00002df7: JUMP
00002df8: JUMPDEST
00002df9: DUP2
00002dfa: PUSH1 0xff
00002dfc: AND
00002dfd: DUP4
00002dfe: PUSH1 0xff
00002e00: AND
00002e01: GT
00002e02: ISZERO
00002e03: PUSH2 0x2e2c
00002e06: JUMPI
00002e07: PUSH2 0x2e10
00002e0a: DUP3
00002e0b: DUP5
00002e0c: PUSH2 0x5b1e
00002e0f: JUMP
00002e10: JUMPDEST
00002e11: PUSH2 0x2e1b
00002e14: SWAP1
00002e15: PUSH1 0x0a
00002e17: PUSH2 0x5c1b
00002e1a: JUMP
00002e1b: JUMPDEST
00002e1c: PUSH2 0x2e25
00002e1f: SWAP1
00002e20: DUP6
00002e21: PUSH2 0x5c2a
00002e24: JUMP
00002e25: JUMPDEST
00002e26: SWAP1
00002e27: POP
00002e28: PUSH2 0x1d6f
00002e2b: JUMP
00002e2c: JUMPDEST
00002e2d: PUSH2 0x2e36
00002e30: DUP4
00002e31: DUP4
00002e32: PUSH2 0x5b1e
00002e35: JUMP
00002e36: JUMPDEST
00002e37: PUSH2 0x2e41
00002e3a: SWAP1
00002e3b: PUSH1 0x0a
00002e3d: PUSH2 0x5c1b
00002e40: JUMP
00002e41: JUMPDEST
00002e42: PUSH2 0x2e25
00002e45: SWAP1
00002e46: DUP6
00002e47: PUSH2 0x5c4c
00002e4a: JUMP
00002e4b: JUMPDEST
00002e4c: PUSH1 0x00
00002e4e: PUSH1 0x01
00002e50: PUSH1 0x01
00002e52: PUSH1 0x40
00002e54: SHL
00002e55: SUB
00002e56: DUP3
00002e57: GT
00002e58: ISZERO
00002e59: PUSH2 0x2593
00002e5c: JUMPI
00002e5d: PUSH1 0x40
00002e5f: MLOAD
00002e60: PUSH3 0x461bcd
00002e64: PUSH1 0xe5
00002e66: SHL
00002e67: DUP2
00002e68: MSTORE
00002e69: PUSH1 0x20
00002e6b: PUSH1 0x04
00002e6d: DUP3
00002e6e: ADD
00002e6f: MSTORE
00002e70: PUSH1 0x26
00002e72: PUSH1 0x24
00002e74: DUP3
00002e75: ADD
00002e76: MSTORE
00002e77: PUSH32 0x53616665436173743a2076616c756520646f65736e27742066697420696e2036
00002e98: PUSH1 0x44
00002e9a: DUP3
00002e9b: ADD
00002e9c: MSTORE
00002e9d: PUSH6 0x342062697473
00002ea4: PUSH1 0xd0
00002ea6: SHL
00002ea7: PUSH1 0x64
00002ea9: DUP3
00002eaa: ADD
00002eab: MSTORE
00002eac: PUSH1 0x84
00002eae: ADD
00002eaf: PUSH2 0x0eaf
00002eb2: JUMP
00002eb3: JUMPDEST
00002eb4: PUSH2 0x2ebc
00002eb7: DUP2
00002eb8: PUSH2 0x3d3f
00002ebb: JUMP
00002ebc: JUMPDEST
00002ebd: PUSH1 0x40
00002ebf: MLOAD
00002ec0: PUSH1 0x01
00002ec2: PUSH1 0x01
00002ec4: PUSH1 0xa0
00002ec6: SHL
00002ec7: SUB
00002ec8: DUP3
00002ec9: AND
00002eca: SWAP1
00002ecb: PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b
00002eec: SWAP1
00002eed: PUSH1 0x00
00002eef: SWAP1
00002ef0: LOG2
00002ef1: POP
00002ef2: JUMP
00002ef3: JUMPDEST
00002ef4: PUSH32 0x000000000000000000000000c6793a32761a11e96c97a3d18fc6545ea931f0e9
00002f15: PUSH1 0x01
00002f17: PUSH1 0x01
00002f19: PUSH1 0xa0
00002f1b: SHL
00002f1c: SUB
00002f1d: AND
00002f1e: ADDRESS
00002f1f: PUSH1 0x01
00002f21: PUSH1 0x01
00002f23: PUSH1 0xa0
00002f25: SHL
00002f26: SUB
00002f27: AND
00002f28: PUSH4 0x7c9e8a10
00002f2d: PUSH1 0x40
00002f2f: MLOAD
00002f30: DUP2
00002f31: PUSH4 0xffffffff
00002f36: AND
00002f37: PUSH1 0xe0
00002f39: SHL
00002f3a: DUP2
00002f3b: MSTORE
00002f3c: PUSH1 0x04
00002f3e: ADD
00002f3f: PUSH1 0x20
00002f41: PUSH1 0x40
00002f43: MLOAD
00002f44: DUP1
00002f45: DUP4
00002f46: SUB
00002f47: DUP2
00002f48: DUP7
00002f49: GAS
00002f4a: STATICCALL
00002f4b: ISZERO
00002f4c: DUP1
00002f4d: ISZERO
00002f4e: PUSH2 0x2f5b
00002f51: JUMPI
00002f52: RETURNDATASIZE
00002f53: PUSH1 0x00
00002f55: DUP1
00002f56: RETURNDATACOPY
00002f57: RETURNDATASIZE
00002f58: PUSH1 0x00
00002f5a: REVERT
00002f5b: JUMPDEST
00002f5c: POP
00002f5d: POP
00002f5e: POP
00002f5f: POP
00002f60: PUSH1 0x40
00002f62: MLOAD
00002f63: RETURNDATASIZE
00002f64: PUSH1 0x1f
00002f66: NOT
00002f67: PUSH1 0x1f
00002f69: DUP3
00002f6a: ADD
00002f6b: AND
00002f6c: DUP3
00002f6d: ADD
00002f6e: DUP1
00002f6f: PUSH1 0x40
00002f71: MSTORE
00002f72: POP
00002f73: DUP2
00002f74: ADD
00002f75: SWAP1
00002f76: PUSH2 0x2f7f
00002f79: SWAP2
00002f7a: SWAP1
00002f7b: PUSH2 0x5c63
00002f7e: JUMP
00002f7f: JUMPDEST
00002f80: PUSH1 0x01
00002f82: PUSH1 0x01
00002f84: PUSH1 0xa0
00002f86: SHL
00002f87: SUB
00002f88: AND
00002f89: EQ
00002f8a: PUSH2 0x2f95
00002f8d: JUMPI
00002f8e: PUSH2 0x2f95
00002f91: PUSH2 0x59e9
00002f94: JUMP
00002f95: JUMPDEST
00002f96: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180
00002fb7: PUSH1 0x01
00002fb9: PUSH1 0x01
00002fbb: PUSH1 0x40
00002fbd: SHL
00002fbe: SUB
00002fbf: AND
00002fc0: ADDRESS
00002fc1: PUSH1 0x01
00002fc3: PUSH1 0x01
00002fc5: PUSH1 0xa0
00002fc7: SHL
00002fc8: SUB
00002fc9: AND
00002fca: PUSH4 0x74aa7bfc
00002fcf: PUSH1 0x40
00002fd1: MLOAD
00002fd2: DUP2
00002fd3: PUSH4 0xffffffff
00002fd8: AND
00002fd9: PUSH1 0xe0
00002fdb: SHL
00002fdc: DUP2
00002fdd: MSTORE
00002fde: PUSH1 0x04
00002fe0: ADD
00002fe1: PUSH1 0x20
00002fe3: PUSH1 0x40
00002fe5: MLOAD
00002fe6: DUP1
00002fe7: DUP4
00002fe8: SUB
00002fe9: DUP2
00002fea: DUP7
00002feb: GAS
00002fec: STATICCALL
00002fed: ISZERO
00002fee: DUP1
00002fef: ISZERO
00002ff0: PUSH2 0x2ffd
00002ff3: JUMPI
00002ff4: RETURNDATASIZE
00002ff5: PUSH1 0x00
00002ff7: DUP1
00002ff8: RETURNDATACOPY
00002ff9: RETURNDATASIZE
00002ffa: PUSH1 0x00
00002ffc: REVERT
00002ffd: JUMPDEST
00002ffe: POP
00002fff: POP
00003000: POP
00003001: POP
00003002: PUSH1 0x40
00003004: MLOAD
00003005: RETURNDATASIZE
00003006: PUSH1 0x1f
00003008: NOT
00003009: PUSH1 0x1f
0000300b: DUP3
0000300c: ADD
0000300d: AND
0000300e: DUP3
0000300f: ADD
00003010: DUP1
00003011: PUSH1 0x40
00003013: MSTORE
00003014: POP
00003015: DUP2
00003016: ADD
00003017: SWAP1
00003018: PUSH2 0x3021
0000301b: SWAP2
0000301c: SWAP1
0000301d: PUSH2 0x5c80
00003020: JUMP
00003021: JUMPDEST
00003022: PUSH1 0x01
00003024: PUSH1 0x01
00003026: PUSH1 0x40
00003028: SHL
00003029: SUB
0000302a: AND
0000302b: EQ
0000302c: PUSH2 0x3037
0000302f: JUMPI
00003030: PUSH2 0x3037
00003033: PUSH2 0x59e9
00003036: JUMP
00003037: JUMPDEST
00003038: PUSH32 0x000000000000000000000000127b77df02744930b4bfdc342c6cac289478a75b
00003059: PUSH1 0x01
0000305b: PUSH1 0x01
0000305d: PUSH1 0xa0
0000305f: SHL
00003060: SUB
00003061: AND
00003062: ADDRESS
00003063: PUSH1 0x01
00003065: PUSH1 0x01
00003067: PUSH1 0xa0
00003069: SHL
0000306a: SUB
0000306b: AND
0000306c: PUSH4 0x2f3a3d5d
00003071: PUSH1 0x40
00003073: MLOAD
00003074: DUP2
00003075: PUSH4 0xffffffff
0000307a: AND
0000307b: PUSH1 0xe0
0000307d: SHL
0000307e: DUP2
0000307f: MSTORE
00003080: PUSH1 0x04
00003082: ADD
00003083: PUSH1 0x20
00003085: PUSH1 0x40
00003087: MLOAD
00003088: DUP1
00003089: DUP4
0000308a: SUB
0000308b: DUP2
0000308c: DUP7
0000308d: GAS
0000308e: STATICCALL
0000308f: ISZERO
00003090: DUP1
00003091: ISZERO
00003092: PUSH2 0x309f
00003095: JUMPI
00003096: RETURNDATASIZE
00003097: PUSH1 0x00
00003099: DUP1
0000309a: RETURNDATACOPY
0000309b: RETURNDATASIZE
0000309c: PUSH1 0x00
0000309e: REVERT
0000309f: JUMPDEST
000030a0: POP
000030a1: POP
000030a2: POP
000030a3: POP
000030a4: PUSH1 0x40
000030a6: MLOAD
000030a7: RETURNDATASIZE
000030a8: PUSH1 0x1f
000030aa: NOT
000030ab: PUSH1 0x1f
000030ad: DUP3
000030ae: ADD
000030af: AND
000030b0: DUP3
000030b1: ADD
000030b2: DUP1
000030b3: PUSH1 0x40
000030b5: MSTORE
000030b6: POP
000030b7: DUP2
000030b8: ADD
000030b9: SWAP1
000030ba: PUSH2 0x30c3
000030bd: SWAP2
000030be: SWAP1
000030bf: PUSH2 0x5c63
000030c2: JUMP
000030c3: JUMPDEST
000030c4: PUSH1 0x01
000030c6: PUSH1 0x01
000030c8: PUSH1 0xa0
000030ca: SHL
000030cb: SUB
000030cc: AND
000030cd: EQ
000030ce: PUSH2 0x30d9
000030d1: JUMPI
000030d2: PUSH2 0x30d9
000030d5: PUSH2 0x59e9
000030d8: JUMP
000030d9: JUMPDEST
000030da: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
000030fb: PUSH1 0x01
000030fd: PUSH1 0x01
000030ff: PUSH1 0xa0
00003101: SHL
00003102: SUB
00003103: AND
00003104: ADDRESS
00003105: PUSH1 0x01
00003107: PUSH1 0x01
00003109: PUSH1 0xa0
0000310b: SHL
0000310c: SUB
0000310d: AND
0000310e: PUSH4 0xad5c4648
00003113: PUSH1 0x40
00003115: MLOAD
00003116: DUP2
00003117: PUSH4 0xffffffff
0000311c: AND
0000311d: PUSH1 0xe0
0000311f: SHL
00003120: DUP2
00003121: MSTORE
00003122: PUSH1 0x04
00003124: ADD
00003125: PUSH1 0x20
00003127: PUSH1 0x40
00003129: MLOAD
0000312a: DUP1
0000312b: DUP4
0000312c: SUB
0000312d: DUP2
0000312e: DUP7
0000312f: GAS
00003130: STATICCALL
00003131: ISZERO
00003132: DUP1
00003133: ISZERO
00003134: PUSH2 0x3141
00003137: JUMPI
00003138: RETURNDATASIZE
00003139: PUSH1 0x00
0000313b: DUP1
0000313c: RETURNDATACOPY
0000313d: RETURNDATASIZE
0000313e: PUSH1 0x00
00003140: REVERT
00003141: JUMPDEST
00003142: POP
00003143: POP
00003144: POP
00003145: POP
00003146: PUSH1 0x40
00003148: MLOAD
00003149: RETURNDATASIZE
0000314a: PUSH1 0x1f
0000314c: NOT
0000314d: PUSH1 0x1f
0000314f: DUP3
00003150: ADD
00003151: AND
00003152: DUP3
00003153: ADD
00003154: DUP1
00003155: PUSH1 0x40
00003157: MSTORE
00003158: POP
00003159: DUP2
0000315a: ADD
0000315b: SWAP1
0000315c: PUSH2 0x3165
0000315f: SWAP2
00003160: SWAP1
00003161: PUSH2 0x5c63
00003164: JUMP
00003165: JUMPDEST
00003166: PUSH1 0x01
00003168: PUSH1 0x01
0000316a: PUSH1 0xa0
0000316c: SHL
0000316d: SUB
0000316e: AND
0000316f: EQ
00003170: PUSH2 0x0bd4
00003173: JUMPI
00003174: PUSH2 0x0bd4
00003177: PUSH2 0x59e9
0000317a: JUMP
0000317b: JUMPDEST
0000317c: DUP1
0000317d: PUSH2 0x3184
00003180: PUSH2 0x2362
00003183: JUMP
00003184: JUMPDEST
00003185: DUP1
00003186: SLOAD
00003187: PUSH1 0xff
00003189: NOT
0000318a: AND
0000318b: SWAP2
0000318c: ISZERO
0000318d: ISZERO
0000318e: SWAP2
0000318f: SWAP1
00003190: SWAP2
00003191: OR
00003192: SWAP1
00003193: SSTORE
00003194: POP
00003195: JUMP
00003196: JUMPDEST
00003197: PUSH1 0x00
00003199: DUP2
0000319a: DUP4
0000319b: LT
0000319c: PUSH2 0x2ddb
0000319f: JUMPI
000031a0: DUP2
000031a1: PUSH2 0x1d6f
000031a4: JUMP
000031a5: JUMPDEST
000031a6: DUP1
000031a7: PUSH2 0x31ae
000031aa: PUSH2 0x2b77
000031ad: JUMP
000031ae: JUMPDEST
000031af: SSTORE
000031b0: POP
000031b1: JUMP
000031b2: JUMPDEST
000031b3: PUSH1 0x60
000031b5: PUSH2 0x31c1
000031b8: DUP3
000031b9: PUSH1 0x00
000031bb: ADD
000031bc: MLOAD
000031bd: PUSH2 0x3ded
000031c0: JUMP
000031c1: JUMPDEST
000031c2: PUSH2 0x31ce
000031c5: DUP4
000031c6: PUSH1 0x20
000031c8: ADD
000031c9: MLOAD
000031ca: PUSH2 0x3e2e
000031cd: JUMP
000031ce: JUMPDEST
000031cf: PUSH1 0x40
000031d1: MLOAD
000031d2: PUSH1 0x20
000031d4: ADD
000031d5: PUSH2 0x31df
000031d8: SWAP3
000031d9: SWAP2
000031da: SWAP1
000031db: PUSH2 0x5c9d
000031de: JUMP
000031df: JUMPDEST
000031e0: PUSH1 0x40
000031e2: MLOAD
000031e3: PUSH1 0x20
000031e5: DUP2
000031e6: DUP4
000031e7: SUB
000031e8: SUB
000031e9: DUP2
000031ea: MSTORE
000031eb: SWAP1
000031ec: PUSH1 0x40
000031ee: MSTORE
000031ef: SWAP1
000031f0: POP
000031f1: SWAP2
000031f2: SWAP1
000031f3: POP
000031f4: JUMP
000031f5: JUMPDEST
000031f6: PUSH1 0x40
000031f8: MLOAD
000031f9: PUSH4 0x1244d5fd
000031fe: PUSH1 0xe3
00003200: SHL
00003201: DUP2
00003202: MSTORE
00003203: PUSH1 0x00
00003205: SWAP1
00003206: PUSH20 0x0dab1c1733f1a9b84c90b08da78db014b3b13ab5
0000321b: SWAP1
0000321c: PUSH4 0x9226afe8
00003221: SWAP1
00003222: PUSH2 0x3251
00003225: SWAP1
00003226: DUP6
00003227: SWAP1
00003228: PUSH32 0x000000000000000000000000127b77df02744930b4bfdc342c6cac289478a75b
00003249: SWAP1
0000324a: PUSH1 0x04
0000324c: ADD
0000324d: PUSH2 0x5ccc
00003250: JUMP
00003251: JUMPDEST
00003252: PUSH1 0x20
00003254: PUSH1 0x40
00003256: MLOAD
00003257: DUP1
00003258: DUP4
00003259: SUB
0000325a: DUP2
0000325b: DUP7
0000325c: GAS
0000325d: DELEGATECALL
0000325e: ISZERO
0000325f: DUP1
00003260: ISZERO
00003261: PUSH2 0x326e
00003264: JUMPI
00003265: RETURNDATASIZE
00003266: PUSH1 0x00
00003268: DUP1
00003269: RETURNDATACOPY
0000326a: RETURNDATASIZE
0000326b: PUSH1 0x00
0000326d: REVERT
0000326e: JUMPDEST
0000326f: POP
00003270: POP
00003271: POP
00003272: POP
00003273: PUSH1 0x40
00003275: MLOAD
00003276: RETURNDATASIZE
00003277: PUSH1 0x1f
00003279: NOT
0000327a: PUSH1 0x1f
0000327c: DUP3
0000327d: ADD
0000327e: AND
0000327f: DUP3
00003280: ADD
00003281: DUP1
00003282: PUSH1 0x40
00003284: MSTORE
00003285: POP
00003286: DUP2
00003287: ADD
00003288: SWAP1
00003289: PUSH2 0x0898
0000328c: SWAP2
0000328d: SWAP1
0000328e: PUSH2 0x5c63
00003291: JUMP
00003292: JUMPDEST
00003293: PUSH1 0x40
00003295: MLOAD
00003296: PUSH1 0x01
00003298: PUSH1 0x01
0000329a: PUSH1 0xa0
0000329c: SHL
0000329d: SUB
0000329e: DUP4
0000329f: AND
000032a0: PUSH1 0x24
000032a2: DUP3
000032a3: ADD
000032a4: MSTORE
000032a5: PUSH1 0x44
000032a7: DUP2
000032a8: ADD
000032a9: DUP3
000032aa: SWAP1
000032ab: MSTORE
000032ac: PUSH2 0x08f2
000032af: SWAP1
000032b0: DUP5
000032b1: SWAP1
000032b2: PUSH4 0xa9059cbb
000032b7: PUSH1 0xe0
000032b9: SHL
000032ba: SWAP1
000032bb: PUSH1 0x64
000032bd: ADD
000032be: JUMPDEST
000032bf: PUSH1 0x40
000032c1: DUP1
000032c2: MLOAD
000032c3: PUSH1 0x1f
000032c5: NOT
000032c6: DUP2
000032c7: DUP5
000032c8: SUB
000032c9: ADD
000032ca: DUP2
000032cb: MSTORE
000032cc: SWAP2
000032cd: SWAP1
000032ce: MSTORE
000032cf: PUSH1 0x20
000032d1: DUP2
000032d2: ADD
000032d3: DUP1
000032d4: MLOAD
000032d5: PUSH1 0x01
000032d7: PUSH1 0x01
000032d9: PUSH1 0xe0
000032db: SHL
000032dc: SUB
000032dd: AND
000032de: PUSH1 0x01
000032e0: PUSH1 0x01
000032e2: PUSH1 0xe0
000032e4: SHL
000032e5: SUB
000032e6: NOT
000032e7: SWAP1
000032e8: SWAP4
000032e9: AND
000032ea: SWAP3
000032eb: SWAP1
000032ec: SWAP3
000032ed: OR
000032ee: SWAP1
000032ef: SWAP2
000032f0: MSTORE
000032f1: PUSH2 0x3e63
000032f4: JUMP
000032f5: JUMPDEST
000032f6: PUSH2 0x32fd
000032f9: PUSH2 0x3f35
000032fc: JUMP
000032fd: JUMPDEST
000032fe: CALLER
000032ff: PUSH1 0x01
00003301: PUSH1 0x01
00003303: PUSH1 0xa0
00003305: SHL
00003306: SUB
00003307: PUSH32 0x000000000000000000000000308287fe52966daf1b36d3ea1fecf8a110bc3af1
00003328: AND
00003329: EQ
0000332a: PUSH2 0x3377
0000332d: JUMPI
0000332e: PUSH1 0x40
00003330: MLOAD
00003331: PUSH4 0x63450721
00003336: PUSH1 0xe1
00003338: SHL
00003339: DUP2
0000333a: MSTORE
0000333b: PUSH1 0x01
0000333d: PUSH1 0x01
0000333f: PUSH1 0xa0
00003341: SHL
00003342: SUB
00003343: PUSH32 0x000000000000000000000000308287fe52966daf1b36d3ea1fecf8a110bc3af1
00003364: AND
00003365: PUSH1 0x04
00003367: DUP3
00003368: ADD
00003369: MSTORE
0000336a: CALLER
0000336b: PUSH1 0x24
0000336d: DUP3
0000336e: ADD
0000336f: MSTORE
00003370: PUSH1 0x44
00003372: ADD
00003373: PUSH2 0x0eaf
00003376: JUMP
00003377: JUMPDEST
00003378: CALLVALUE
00003379: ISZERO
0000337a: PUSH2 0x3396
0000337d: JUMPI
0000337e: PUSH1 0x40
00003380: MLOAD
00003381: PUSH4 0xbd28e889
00003386: PUSH1 0xe0
00003388: SHL
00003389: DUP2
0000338a: MSTORE
0000338b: PUSH1 0x04
0000338d: ADD
0000338e: PUSH1 0x40
00003390: MLOAD
00003391: DUP1
00003392: SWAP2
00003393: SUB
00003394: SWAP1
00003395: REVERT
00003396: JUMPDEST
00003397: PUSH2 0x33a0
0000339a: CALLER
0000339b: CALLER
0000339c: PUSH2 0x3f6c
0000339f: JUMP
000033a0: JUMPDEST
000033a1: PUSH2 0x0bd4
000033a4: PUSH2 0x3f8e
000033a7: JUMP
000033a8: JUMPDEST
000033a9: PUSH1 0x40
000033ab: DUP1
000033ac: MLOAD
000033ad: PUSH1 0x60
000033af: DUP2
000033b0: ADD
000033b1: DUP3
000033b2: MSTORE
000033b3: PUSH1 0x00
000033b5: DUP1
000033b6: DUP3
000033b7: MSTORE
000033b8: PUSH1 0x20
000033ba: DUP3
000033bb: ADD
000033bc: DUP2
000033bd: SWAP1
000033be: MSTORE
000033bf: SWAP2
000033c0: DUP2
000033c1: ADD
000033c2: DUP3
000033c3: SWAP1
000033c4: MSTORE
000033c5: SWAP1
000033c6: PUSH2 0x33ce
000033c9: DUP4
000033ca: PUSH2 0x2c9c
000033cd: JUMP
000033ce: JUMPDEST
000033cf: SWAP1
000033d0: POP
000033d1: PUSH2 0x1d6f
000033d4: DUP2
000033d5: PUSH2 0x3f9e
000033d8: JUMP
000033d9: JUMPDEST
000033da: PUSH1 0x00
000033dc: DUP1
000033dd: PUSH2 0x33e4
000033e0: PUSH2 0x2ba5
000033e3: JUMP
000033e4: JUMPDEST
000033e5: PUSH2 0xffff
000033e8: DUP9
000033e9: AND
000033ea: PUSH1 0x00
000033ec: SWAP1
000033ed: DUP2
000033ee: MSTORE
000033ef: PUSH1 0x20
000033f1: SWAP2
000033f2: SWAP1
000033f3: SWAP2
000033f4: MSTORE
000033f5: PUSH1 0x40
000033f7: SWAP1
000033f8: KECCAK256
000033f9: SLOAD
000033fa: SWAP1
000033fb: POP
000033fc: DUP1
000033fd: PUSH2 0x3419
00003400: JUMPI
00003401: PUSH1 0x40
00003403: MLOAD
00003404: PUSH4 0xf839a0cb
00003409: PUSH1 0xe0
0000340b: SHL
0000340c: DUP2
0000340d: MSTORE
0000340e: PUSH1 0x04
00003410: ADD
00003411: PUSH1 0x40
00003413: MLOAD
00003414: DUP1
00003415: SWAP2
00003416: SUB
00003417: SWAP1
00003418: REVERT
00003419: JUMPDEST
0000341a: SELFBALANCE
0000341b: PUSH2 0x3429
0000341e: DUP10
0000341f: DUP10
00003420: DUP5
00003421: DUP11
00003422: DUP11
00003423: DUP11
00003424: DUP11
00003425: PUSH2 0x40cf
00003428: JUMP
00003429: JUMPDEST
0000342a: SWAP3
0000342b: POP
0000342c: PUSH1 0x00
0000342e: SELFBALANCE
0000342f: DUP3
00003430: LT
00003431: ISZERO
00003432: PUSH2 0x343c
00003435: JUMPI
00003436: PUSH1 0x00
00003438: PUSH2 0x3446
0000343b: JUMP
0000343c: JUMPDEST
0000343d: PUSH2 0x3446
00003440: SELFBALANCE
00003441: DUP4
00003442: PUSH2 0x5977
00003445: JUMP
00003446: JUMPDEST
00003447: SWAP1
00003448: POP
00003449: DUP10
0000344a: DUP2
0000344b: LT
0000344c: ISZERO
0000344d: PUSH2 0x3462
00003450: JUMPI
00003451: PUSH2 0x3462
00003454: PUSH2 0x345d
00003457: DUP3
00003458: DUP13
00003459: PUSH2 0x5977
0000345c: JUMP
0000345d: JUMPDEST
0000345e: PUSH2 0x4177
00003461: JUMP
00003462: JUMPDEST
00003463: POP
00003464: POP
00003465: POP
00003466: SWAP7
00003467: SWAP6
00003468: POP
00003469: POP
0000346a: POP
0000346b: POP
0000346c: POP
0000346d: POP
0000346e: JUMP
0000346f: JUMPDEST
00003470: PUSH1 0x00
00003472: DUP1
00003473: PUSH1 0x00
00003475: PUSH2 0x3485
00003478: DUP5
00003479: PUSH1 0x40
0000347b: ADD
0000347c: MLOAD
0000347d: PUSH1 0x00
0000347f: ADD
00003480: MLOAD
00003481: PUSH2 0x1828
00003484: JUMP
00003485: JUMPDEST
00003486: SWAP2
00003487: POP
00003488: SWAP2
00003489: POP
0000348a: DUP4
0000348b: PUSH1 0x40
0000348d: ADD
0000348e: MLOAD
0000348f: PUSH1 0x20
00003491: ADD
00003492: MLOAD
00003493: PUSH1 0x00
00003495: SUB
00003496: PUSH2 0x34b2
00003499: JUMPI
0000349a: PUSH1 0x40
0000349c: MLOAD
0000349d: PUSH4 0x1f2a2005
000034a2: PUSH1 0xe0
000034a4: SHL
000034a5: DUP2
000034a6: MSTORE
000034a7: PUSH1 0x04
000034a9: ADD
000034aa: PUSH1 0x40
000034ac: MLOAD
000034ad: DUP1
000034ae: SWAP2
000034af: SUB
000034b0: SWAP1
000034b1: REVERT
000034b2: JUMPDEST
000034b3: PUSH1 0x40
000034b5: DUP5
000034b6: ADD
000034b7: MLOAD
000034b8: PUSH1 0x60
000034ba: ADD
000034bb: MLOAD
000034bc: PUSH2 0x34d8
000034bf: JUMPI
000034c0: PUSH1 0x40
000034c2: MLOAD
000034c3: PUSH4 0x4e469669
000034c8: PUSH1 0xe1
000034ca: SHL
000034cb: DUP2
000034cc: MSTORE
000034cd: PUSH1 0x04
000034cf: ADD
000034d0: PUSH1 0x40
000034d2: MLOAD
000034d3: DUP1
000034d4: SWAP2
000034d5: SUB
000034d6: SWAP1
000034d7: REVERT
000034d8: JUMPDEST
000034d9: PUSH1 0x40
000034db: DUP5
000034dc: ADD
000034dd: MLOAD
000034de: PUSH1 0x80
000034e0: ADD
000034e1: MLOAD
000034e2: PUSH2 0x34fe
000034e5: JUMPI
000034e6: PUSH1 0x40
000034e8: MLOAD
000034e9: PUSH4 0x717f1393
000034ee: PUSH1 0xe1
000034f0: SHL
000034f1: DUP2
000034f2: MSTORE
000034f3: PUSH1 0x04
000034f5: ADD
000034f6: PUSH1 0x40
000034f8: MLOAD
000034f9: DUP1
000034fa: SWAP2
000034fb: SUB
000034fc: SWAP1
000034fd: REVERT
000034fe: JUMPDEST
000034ff: PUSH1 0x00
00003501: PUSH2 0x3512
00003504: DUP6
00003505: PUSH1 0x40
00003507: ADD
00003508: MLOAD
00003509: PUSH1 0x00
0000350b: ADD
0000350c: MLOAD
0000350d: ADDRESS
0000350e: PUSH2 0x41e3
00003511: JUMP
00003512: JUMPDEST
00003513: SWAP1
00003514: POP
00003515: PUSH1 0x00
00003517: DUP6
00003518: PUSH1 0x20
0000351a: ADD
0000351b: MLOAD
0000351c: PUSH1 0x01
0000351e: DUP2
0000351f: GT
00003520: ISZERO
00003521: PUSH2 0x352c
00003524: JUMPI
00003525: PUSH2 0x352c
00003528: PUSH2 0x581c
0000352b: JUMP
0000352c: JUMPDEST
0000352d: EQ
0000352e: DUP1
0000352f: ISZERO
00003530: PUSH2 0x3572
00003533: JUMPI
00003534: POP
00003535: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00003556: PUSH1 0x01
00003558: PUSH1 0x01
0000355a: PUSH1 0xa0
0000355c: SHL
0000355d: SUB
0000355e: AND
0000355f: DUP6
00003560: PUSH1 0x40
00003562: ADD
00003563: MLOAD
00003564: PUSH1 0x00
00003566: ADD
00003567: MLOAD
00003568: PUSH1 0x01
0000356a: PUSH1 0x01
0000356c: PUSH1 0xa0
0000356e: SHL
0000356f: SUB
00003570: AND
00003571: EQ
00003572: JUMPDEST
00003573: ISZERO
00003574: PUSH2 0x3615
00003577: JUMPI
00003578: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00003599: PUSH1 0x01
0000359b: PUSH1 0x01
0000359d: PUSH1 0xa0
0000359f: SHL
000035a0: SUB
000035a1: AND
000035a2: PUSH4 0xd0e30db0
000035a7: DUP7
000035a8: PUSH1 0x40
000035aa: ADD
000035ab: MLOAD
000035ac: PUSH1 0x20
000035ae: ADD
000035af: MLOAD
000035b0: PUSH1 0x40
000035b2: MLOAD
000035b3: DUP3
000035b4: PUSH4 0xffffffff
000035b9: AND
000035ba: PUSH1 0xe0
000035bc: SHL
000035bd: DUP2
000035be: MSTORE
000035bf: PUSH1 0x04
000035c1: ADD
000035c2: PUSH1 0x00
000035c4: PUSH1 0x40
000035c6: MLOAD
000035c7: DUP1
000035c8: DUP4
000035c9: SUB
000035ca: DUP2
000035cb: DUP6
000035cc: DUP9
000035cd: DUP1
000035ce: EXTCODESIZE
000035cf: ISZERO
000035d0: DUP1
000035d1: ISZERO
000035d2: PUSH2 0x35da
000035d5: JUMPI
000035d6: PUSH1 0x00
000035d8: DUP1
000035d9: REVERT
000035da: JUMPDEST
000035db: POP
000035dc: GAS
000035dd: CALL
000035de: ISZERO
000035df: DUP1
000035e0: ISZERO
000035e1: PUSH2 0x35ee
000035e4: JUMPI
000035e5: RETURNDATASIZE
000035e6: PUSH1 0x00
000035e8: DUP1
000035e9: RETURNDATACOPY
000035ea: RETURNDATASIZE
000035eb: PUSH1 0x00
000035ed: REVERT
000035ee: JUMPDEST
000035ef: POP
000035f0: POP
000035f1: POP
000035f2: POP
000035f3: POP
000035f4: DUP5
000035f5: PUSH1 0x40
000035f7: ADD
000035f8: MLOAD
000035f9: PUSH1 0x20
000035fb: ADD
000035fc: MLOAD
000035fd: DUP6
000035fe: PUSH1 0x00
00003600: ADD
00003601: DUP2
00003602: DUP2
00003603: MLOAD
00003604: PUSH2 0x360d
00003607: SWAP2
00003608: SWAP1
00003609: PUSH2 0x5977
0000360c: JUMP
0000360d: JUMPDEST
0000360e: SWAP1
0000360f: MSTORE
00003610: POP
00003611: PUSH2 0x363a
00003614: JUMP
00003615: JUMPDEST
00003616: PUSH1 0x40
00003618: DUP6
00003619: ADD
0000361a: MLOAD
0000361b: PUSH1 0x20
0000361d: DUP2
0000361e: ADD
0000361f: MLOAD
00003620: SWAP1
00003621: MLOAD
00003622: PUSH2 0x363a
00003625: SWAP2
00003626: PUSH1 0x01
00003628: PUSH1 0x01
0000362a: PUSH1 0xa0
0000362c: SHL
0000362d: SUB
0000362e: SWAP1
0000362f: SWAP2
00003630: AND
00003631: SWAP1
00003632: CALLER
00003633: SWAP1
00003634: ADDRESS
00003635: SWAP1
00003636: PUSH2 0x42b4
00003639: JUMP
0000363a: JUMPDEST
0000363b: PUSH1 0x00
0000363d: PUSH2 0x364e
00003640: DUP7
00003641: PUSH1 0x40
00003643: ADD
00003644: MLOAD
00003645: PUSH1 0x00
00003647: ADD
00003648: MLOAD
00003649: ADDRESS
0000364a: PUSH2 0x41e3
0000364d: JUMP
0000364e: JUMPDEST
0000364f: SWAP1
00003650: POP
00003651: PUSH2 0x365a
00003654: DUP3
00003655: DUP3
00003656: PUSH2 0x5977
00003659: JUMP
0000365a: JUMPDEST
0000365b: PUSH1 0x40
0000365d: DUP8
0000365e: ADD
0000365f: MLOAD
00003660: PUSH1 0x20
00003662: ADD
00003663: MSTORE
00003664: PUSH1 0x01
00003666: DUP4
00003667: PUSH1 0x01
00003669: DUP2
0000366a: GT
0000366b: ISZERO
0000366c: PUSH2 0x3677
0000366f: JUMPI
00003670: PUSH2 0x3677
00003673: PUSH2 0x581c
00003676: JUMP
00003677: JUMPDEST
00003678: SUB
00003679: PUSH2 0x3790
0000367c: JUMPI
0000367d: PUSH1 0x40
0000367f: DUP7
00003680: DUP2
00003681: ADD
00003682: MLOAD
00003683: DUP1
00003684: MLOAD
00003685: PUSH1 0x20
00003687: SWAP1
00003688: SWAP2
00003689: ADD
0000368a: MLOAD
0000368b: SWAP2
0000368c: MLOAD
0000368d: PUSH4 0x0852cd8d
00003692: PUSH1 0xe3
00003694: SHL
00003695: DUP2
00003696: MSTORE
00003697: PUSH1 0x04
00003699: DUP2
0000369a: ADD
0000369b: SWAP3
0000369c: SWAP1
0000369d: SWAP3
0000369e: MSTORE
0000369f: PUSH1 0x01
000036a1: PUSH1 0x01
000036a3: PUSH1 0xa0
000036a5: SHL
000036a6: SUB
000036a7: AND
000036a8: SWAP1
000036a9: PUSH4 0x42966c68
000036ae: SWAP1
000036af: PUSH1 0x24
000036b1: ADD
000036b2: PUSH1 0x00
000036b4: PUSH1 0x40
000036b6: MLOAD
000036b7: DUP1
000036b8: DUP4
000036b9: SUB
000036ba: DUP2
000036bb: PUSH1 0x00
000036bd: DUP8
000036be: DUP1
000036bf: EXTCODESIZE
000036c0: ISZERO
000036c1: DUP1
000036c2: ISZERO
000036c3: PUSH2 0x36cb
000036c6: JUMPI
000036c7: PUSH1 0x00
000036c9: DUP1
000036ca: REVERT
000036cb: JUMPDEST
000036cc: POP
000036cd: GAS
000036ce: CALL
000036cf: SWAP3
000036d0: POP
000036d1: POP
000036d2: POP
000036d3: DUP1
000036d4: ISZERO
000036d5: PUSH2 0x36dc
000036d8: JUMPI
000036d9: POP
000036da: PUSH1 0x01
000036dc: JUMPDEST
000036dd: PUSH2 0x374e
000036e0: JUMPI
000036e1: PUSH1 0x40
000036e3: DUP7
000036e4: DUP2
000036e5: ADD
000036e6: MLOAD
000036e7: DUP1
000036e8: MLOAD
000036e9: PUSH1 0x20
000036eb: SWAP1
000036ec: SWAP2
000036ed: ADD
000036ee: MLOAD
000036ef: SWAP2
000036f0: MLOAD
000036f1: PUSH4 0x2770a7eb
000036f6: PUSH1 0xe2
000036f8: SHL
000036f9: DUP2
000036fa: MSTORE
000036fb: ADDRESS
000036fc: PUSH1 0x04
000036fe: DUP3
000036ff: ADD
00003700: MSTORE
00003701: PUSH1 0x24
00003703: DUP2
00003704: ADD
00003705: SWAP3
00003706: SWAP1
00003707: SWAP3
00003708: MSTORE
00003709: PUSH1 0x01
0000370b: PUSH1 0x01
0000370d: PUSH1 0xa0
0000370f: SHL
00003710: SUB
00003711: AND
00003712: SWAP1
00003713: PUSH4 0x9dc29fac
00003718: SWAP1
00003719: PUSH1 0x44
0000371b: ADD
0000371c: PUSH1 0x00
0000371e: PUSH1 0x40
00003720: MLOAD
00003721: DUP1
00003722: DUP4
00003723: SUB
00003724: DUP2
00003725: PUSH1 0x00
00003727: DUP8
00003728: DUP1
00003729: EXTCODESIZE
0000372a: ISZERO
0000372b: DUP1
0000372c: ISZERO
0000372d: PUSH2 0x3735
00003730: JUMPI
00003731: PUSH1 0x00
00003733: DUP1
00003734: REVERT
00003735: JUMPDEST
00003736: POP
00003737: GAS
00003738: CALL
00003739: ISZERO
0000373a: DUP1
0000373b: ISZERO
0000373c: PUSH2 0x3749
0000373f: JUMPI
00003740: RETURNDATASIZE
00003741: PUSH1 0x00
00003743: DUP1
00003744: RETURNDATACOPY
00003745: RETURNDATASIZE
00003746: PUSH1 0x00
00003748: REVERT
00003749: JUMPDEST
0000374a: POP
0000374b: POP
0000374c: POP
0000374d: POP
0000374e: JUMPDEST
0000374f: PUSH1 0x00
00003751: PUSH2 0x3762
00003754: DUP8
00003755: PUSH1 0x40
00003757: ADD
00003758: MLOAD
00003759: PUSH1 0x00
0000375b: ADD
0000375c: MLOAD
0000375d: ADDRESS
0000375e: PUSH2 0x41e3
00003761: JUMP
00003762: JUMPDEST
00003763: SWAP1
00003764: POP
00003765: DUP1
00003766: DUP4
00003767: EQ
00003768: PUSH2 0x378e
0000376b: JUMPI
0000376c: PUSH1 0x40
0000376e: MLOAD
0000376f: PUSH4 0x02156a8f
00003774: PUSH1 0xe0
00003776: SHL
00003777: DUP2
00003778: MSTORE
00003779: PUSH1 0x04
0000377b: DUP2
0000377c: ADD
0000377d: DUP5
0000377e: SWAP1
0000377f: MSTORE
00003780: PUSH1 0x24
00003782: DUP2
00003783: ADD
00003784: DUP3
00003785: SWAP1
00003786: MSTORE
00003787: PUSH1 0x44
00003789: ADD
0000378a: PUSH2 0x0eaf
0000378d: JUMP
0000378e: JUMPDEST
0000378f: POP
00003790: JUMPDEST
00003791: POP
00003792: POP
00003793: PUSH1 0x00
00003795: DUP1
00003796: PUSH1 0x00
00003798: PUSH2 0x37a0
0000379b: DUP6
0000379c: PUSH2 0x1cb9
0000379f: JUMP
000037a0: JUMPDEST
000037a1: SWAP1
000037a2: POP
000037a3: PUSH2 0x37b4
000037a6: DUP2
000037a7: DUP9
000037a8: PUSH1 0x40
000037aa: ADD
000037ab: MLOAD
000037ac: PUSH1 0x20
000037ae: ADD
000037af: MLOAD
000037b0: PUSH2 0x42ec
000037b3: JUMP
000037b4: JUMPDEST
000037b5: SWAP3
000037b6: POP
000037b7: PUSH2 0x37c9
000037ba: PUSH1 0x01
000037bc: PUSH1 0x01
000037be: PUSH1 0x48
000037c0: SHL
000037c1: SUB
000037c2: DUP5
000037c3: AND
000037c4: DUP3
000037c5: PUSH2 0x4360
000037c8: JUMP
000037c9: JUMPDEST
000037ca: SWAP2
000037cb: POP
000037cc: POP
000037cd: PUSH2 0x37e7
000037d0: PUSH2 0x37d8
000037d3: DUP6
000037d4: PUSH2 0x2087
000037d7: JUMP
000037d8: JUMPDEST
000037d9: SLOAD
000037da: PUSH1 0x01
000037dc: PUSH1 0x01
000037de: PUSH1 0x48
000037e0: SHL
000037e1: SUB
000037e2: AND
000037e3: PUSH2 0x43ac
000037e6: JUMP
000037e7: JUMPDEST
000037e8: PUSH2 0x39b4
000037eb: JUMPI
000037ec: PUSH2 0x37f5
000037ef: DUP5
000037f0: DUP3
000037f1: PUSH2 0x43cc
000037f4: JUMP
000037f5: JUMPDEST
000037f6: ISZERO
000037f7: PUSH2 0x39aa
000037fa: JUMPI
000037fb: DUP6
000037fc: PUSH1 0x40
000037fe: ADD
000037ff: MLOAD
00003800: PUSH1 0xa0
00003802: ADD
00003803: MLOAD
00003804: PUSH2 0x3851
00003807: JUMPI
00003808: DUP4
00003809: PUSH2 0x3811
0000380c: DUP6
0000380d: PUSH2 0x0ae3
00003810: JUMP
00003811: JUMPDEST
00003812: PUSH1 0x40
00003814: DUP1
00003815: DUP10
00003816: ADD
00003817: MLOAD
00003818: PUSH1 0x20
0000381a: SWAP1
0000381b: DUP2
0000381c: ADD
0000381d: MLOAD
0000381e: SWAP2
0000381f: MLOAD
00003820: PUSH4 0x1d780015
00003825: PUSH1 0xe1
00003827: SHL
00003828: DUP2
00003829: MSTORE
0000382a: DUP5
0000382b: MLOAD
0000382c: PUSH2 0xffff
0000382f: AND
00003830: PUSH1 0x04
00003832: DUP3
00003833: ADD
00003834: MSTORE
00003835: SWAP4
00003836: ADD
00003837: MLOAD
00003838: PUSH1 0x24
0000383a: DUP5
0000383b: ADD
0000383c: MSTORE
0000383d: PUSH1 0x44
0000383f: DUP4
00003840: ADD
00003841: SWAP2
00003842: SWAP1
00003843: SWAP2
00003844: MSTORE
00003845: PUSH1 0x64
00003847: DUP3
00003848: ADD
00003849: MSTORE
0000384a: PUSH1 0x84
0000384c: ADD
0000384d: PUSH2 0x0eaf
00003850: JUMP
00003851: JUMPDEST
00003852: PUSH1 0x40
00003854: DUP7
00003855: ADD
00003856: MLOAD
00003857: PUSH1 0xe0
00003859: ADD
0000385a: MLOAD
0000385b: MLOAD
0000385c: ISZERO
0000385d: PUSH2 0x3879
00003860: JUMPI
00003861: PUSH1 0x40
00003863: MLOAD
00003864: PUSH4 0x7a208917
00003869: PUSH1 0xe0
0000386b: SHL
0000386c: DUP2
0000386d: MSTORE
0000386e: PUSH1 0x04
00003870: ADD
00003871: PUSH1 0x40
00003873: MLOAD
00003874: DUP1
00003875: SWAP2
00003876: SUB
00003877: SWAP1
00003878: REVERT
00003879: JUMPDEST
0000387a: PUSH1 0x00
0000387c: PUSH32 0x000000000000000000000000c6793a32761a11e96c97a3d18fc6545ea931f0e9
0000389d: PUSH1 0x01
0000389f: PUSH1 0x01
000038a1: PUSH1 0xa0
000038a3: SHL
000038a4: SUB
000038a5: AND
000038a6: PUSH4 0xff428f09
000038ab: PUSH1 0x40
000038ad: MLOAD
000038ae: DUP2
000038af: PUSH4 0xffffffff
000038b4: AND
000038b5: PUSH1 0xe0
000038b7: SHL
000038b8: DUP2
000038b9: MSTORE
000038ba: PUSH1 0x04
000038bc: ADD
000038bd: PUSH1 0x20
000038bf: PUSH1 0x40
000038c1: MLOAD
000038c2: DUP1
000038c3: DUP4
000038c4: SUB
000038c5: DUP2
000038c6: PUSH1 0x00
000038c8: DUP8
000038c9: GAS
000038ca: CALL
000038cb: ISZERO
000038cc: DUP1
000038cd: ISZERO
000038ce: PUSH2 0x38db
000038d1: JUMPI
000038d2: RETURNDATASIZE
000038d3: PUSH1 0x00
000038d5: DUP1
000038d6: RETURNDATACOPY
000038d7: RETURNDATASIZE
000038d8: PUSH1 0x00
000038da: REVERT
000038db: JUMPDEST
000038dc: POP
000038dd: POP
000038de: POP
000038df: POP
000038e0: PUSH1 0x40
000038e2: MLOAD
000038e3: RETURNDATASIZE
000038e4: PUSH1 0x1f
000038e6: NOT
000038e7: PUSH1 0x1f
000038e9: DUP3
000038ea: ADD
000038eb: AND
000038ec: DUP3
000038ed: ADD
000038ee: DUP1
000038ef: PUSH1 0x40
000038f1: MSTORE
000038f2: POP
000038f3: DUP2
000038f4: ADD
000038f5: SWAP1
000038f6: PUSH2 0x38ff
000038f9: SWAP2
000038fa: SWAP1
000038fb: PUSH2 0x5c80
000038fe: JUMP
000038ff: JUMPDEST
00003900: SWAP1
00003901: POP
00003902: CALLER
00003903: PUSH1 0x01
00003905: PUSH1 0x01
00003907: PUSH1 0xa0
00003909: SHL
0000390a: SUB
0000390b: AND
0000390c: PUSH32 0xf33512b84e24a49905c26c6991942fc5a9652411769fc1e448f967cdb049f08a
0000392d: DUP3
0000392e: DUP10
0000392f: PUSH1 0x40
00003931: ADD
00003932: MLOAD
00003933: PUSH1 0x20
00003935: ADD
00003936: MLOAD
00003937: PUSH2 0x393f
0000393a: DUP10
0000393b: PUSH2 0x0ae3
0000393e: JUMP
0000393f: JUMPDEST
00003940: PUSH1 0x40
00003942: DUP1
00003943: MLOAD
00003944: PUSH1 0x01
00003946: PUSH1 0x01
00003948: PUSH1 0x40
0000394a: SHL
0000394b: SUB
0000394c: SWAP1
0000394d: SWAP5
0000394e: AND
0000394f: DUP5
00003950: MSTORE
00003951: PUSH1 0x20
00003953: DUP5
00003954: ADD
00003955: SWAP3
00003956: SWAP1
00003957: SWAP3
00003958: MSTORE
00003959: SWAP1
0000395a: DUP3
0000395b: ADD
0000395c: MSTORE
0000395d: PUSH1 0x60
0000395f: ADD
00003960: PUSH1 0x40
00003962: MLOAD
00003963: DUP1
00003964: SWAP2
00003965: SUB
00003966: SWAP1
00003967: LOG2
00003968: PUSH2 0x399f
0000396b: DUP2
0000396c: DUP9
0000396d: PUSH1 0x40
0000396f: ADD
00003970: MLOAD
00003971: PUSH1 0x00
00003973: ADD
00003974: MLOAD
00003975: DUP6
00003976: DUP11
00003977: PUSH1 0x40
00003979: ADD
0000397a: MLOAD
0000397b: PUSH1 0x40
0000397d: ADD
0000397e: MLOAD
0000397f: DUP12
00003980: PUSH1 0x40
00003982: ADD
00003983: MLOAD
00003984: PUSH1 0x60
00003986: ADD
00003987: MLOAD
00003988: DUP13
00003989: PUSH1 0x40
0000398b: ADD
0000398c: MLOAD
0000398d: PUSH1 0x80
0000398f: ADD
00003990: MLOAD
00003991: CALLER
00003992: DUP15
00003993: PUSH1 0x40
00003995: ADD
00003996: MLOAD
00003997: PUSH1 0xc0
00003999: ADD
0000399a: MLOAD
0000399b: PUSH2 0x443c
0000399e: JUMP
0000399f: JUMPDEST
000039a0: DUP7
000039a1: MLOAD
000039a2: PUSH2 0x17c8
000039a5: SWAP1
000039a6: PUSH2 0x4177
000039a9: JUMP
000039aa: JUMPDEST
000039ab: PUSH2 0x39b4
000039ae: DUP5
000039af: DUP3
000039b0: PUSH2 0x45ad
000039b3: JUMP
000039b4: JUMPDEST
000039b5: PUSH2 0x39e9
000039b8: PUSH2 0x39c0
000039bb: DUP6
000039bc: PUSH2 0x1e40
000039bf: JUMP
000039c0: JUMPDEST
000039c1: PUSH1 0x40
000039c3: DUP1
000039c4: DUP10
000039c5: ADD
000039c6: MLOAD
000039c7: DUP2
000039c8: ADD
000039c9: MLOAD
000039ca: PUSH2 0xffff
000039cd: AND
000039ce: PUSH1 0x00
000039d0: SWAP1
000039d1: DUP2
000039d2: MSTORE
000039d3: PUSH1 0x20
000039d5: SWAP3
000039d6: SWAP1
000039d7: SWAP3
000039d8: MSTORE
000039d9: SWAP1
000039da: KECCAK256
000039db: SLOAD
000039dc: PUSH1 0x01
000039de: PUSH1 0x01
000039e0: PUSH1 0x48
000039e2: SHL
000039e3: SUB
000039e4: AND
000039e5: PUSH2 0x43ac
000039e8: JUMP
000039e9: JUMPDEST
000039ea: PUSH2 0x3a00
000039ed: JUMPI
000039ee: PUSH2 0x3a00
000039f1: DUP5
000039f2: DUP3
000039f3: DUP9
000039f4: PUSH1 0x40
000039f6: ADD
000039f7: MLOAD
000039f8: PUSH1 0x40
000039fa: ADD
000039fb: MLOAD
000039fc: PUSH2 0x4617
000039ff: JUMP
00003a00: JUMPDEST
00003a01: POP
00003a02: PUSH1 0x40
00003a04: DUP1
00003a05: DUP7
00003a06: ADD
00003a07: MLOAD
00003a08: PUSH1 0xc0
00003a0a: DUP2
00003a0b: ADD
00003a0c: MLOAD
00003a0d: PUSH1 0xe0
00003a0f: DUP3
00003a10: ADD
00003a11: MLOAD
00003a12: DUP9
00003a13: MLOAD
00003a14: DUP4
00003a15: MLOAD
00003a16: SWAP5
00003a17: DUP5
00003a18: ADD
00003a19: MLOAD
00003a1a: PUSH1 0x60
00003a1c: DUP6
00003a1d: ADD
00003a1e: MLOAD
00003a1f: PUSH1 0x80
00003a21: SWAP1
00003a22: SWAP6
00003a23: ADD
00003a24: MLOAD
00003a25: SWAP4
00003a26: SWAP6
00003a27: SWAP3
00003a28: SWAP5
00003a29: PUSH2 0x21a0
00003a2c: SWAP5
00003a2d: SWAP3
00003a2e: SWAP4
00003a2f: PUSH1 0x00
00003a31: SWAP4
00003a32: SWAP1
00003a33: SWAP3
00003a34: DUP10
00003a35: SWAP3
00003a36: SWAP1
00003a37: SWAP2
00003a38: CALLER
00003a39: DUP11
00003a3a: DUP11
00003a3b: PUSH2 0x2991
00003a3e: JUMP
00003a3f: JUMPDEST
00003a40: DUP2
00003a41: PUSH2 0xffff
00003a44: AND
00003a45: PUSH1 0x00
00003a47: SUB
00003a48: PUSH2 0x3a64
00003a4b: JUMPI
00003a4c: PUSH1 0x40
00003a4e: MLOAD
00003a4f: PUSH4 0x100b0f27
00003a54: PUSH1 0xe1
00003a56: SHL
00003a57: DUP2
00003a58: MSTORE
00003a59: PUSH1 0x04
00003a5b: ADD
00003a5c: PUSH1 0x40
00003a5e: MLOAD
00003a5f: DUP1
00003a60: SWAP2
00003a61: SUB
00003a62: SWAP1
00003a63: REVERT
00003a64: JUMPDEST
00003a65: DUP1
00003a66: PUSH2 0x3a82
00003a69: JUMPI
00003a6a: PUSH1 0x40
00003a6c: MLOAD
00003a6d: PUSH4 0xf839a0cb
00003a72: PUSH1 0xe0
00003a74: SHL
00003a75: DUP2
00003a76: MSTORE
00003a77: PUSH1 0x04
00003a79: ADD
00003a7a: PUSH1 0x40
00003a7c: MLOAD
00003a7d: DUP1
00003a7e: SWAP2
00003a7f: SUB
00003a80: SWAP1
00003a81: REVERT
00003a82: JUMPDEST
00003a83: DUP1
00003a84: PUSH2 0x3a8b
00003a87: PUSH2 0x2ba5
00003a8a: JUMP
00003a8b: JUMPDEST
00003a8c: PUSH2 0xffff
00003a8f: DUP5
00003a90: AND
00003a91: PUSH1 0x00
00003a93: SWAP1
00003a94: DUP2
00003a95: MSTORE
00003a96: PUSH1 0x20
00003a98: SWAP2
00003a99: SWAP1
00003a9a: SWAP2
00003a9b: MSTORE
00003a9c: PUSH1 0x40
00003a9e: SWAP1
00003a9f: KECCAK256
00003aa0: SLOAD
00003aa1: EQ
00003aa2: PUSH2 0x0b5a
00003aa5: JUMPI
00003aa6: PUSH1 0x40
00003aa8: MLOAD
00003aa9: PUSH4 0x5788c0fd
00003aae: PUSH1 0xe1
00003ab0: SHL
00003ab1: DUP2
00003ab2: MSTORE
00003ab3: PUSH2 0xffff
00003ab6: DUP4
00003ab7: AND
00003ab8: PUSH1 0x04
00003aba: DUP3
00003abb: ADD
00003abc: MSTORE
00003abd: PUSH1 0x24
00003abf: DUP2
00003ac0: ADD
00003ac1: DUP3
00003ac2: SWAP1
00003ac3: MSTORE
00003ac4: PUSH1 0x44
00003ac6: ADD
00003ac7: PUSH2 0x0eaf
00003aca: JUMP
00003acb: JUMPDEST
00003acc: PUSH2 0x3ad3
00003acf: PUSH2 0x4f77
00003ad2: JUMP
00003ad3: JUMPDEST
00003ad4: PUSH1 0x00
00003ad6: DUP1
00003ad7: PUSH2 0x3ae0
00003ada: DUP5
00003adb: DUP3
00003adc: PUSH2 0x4696
00003adf: JUMP
00003ae0: JUMPDEST
00003ae1: SWAP3
00003ae2: POP
00003ae3: SWAP1
00003ae4: POP
00003ae5: PUSH1 0x01
00003ae7: PUSH1 0x01
00003ae9: PUSH1 0xe0
00003aeb: SHL
00003aec: SUB
00003aed: NOT
00003aee: DUP2
00003aef: AND
00003af0: PUSH4 0x26535515
00003af5: PUSH1 0xe2
00003af7: SHL
00003af8: EQ
00003af9: PUSH2 0x3b21
00003afc: JUMPI
00003afd: PUSH1 0x40
00003aff: MLOAD
00003b00: PUSH4 0x56d2569d
00003b05: PUSH1 0xe0
00003b07: SHL
00003b08: DUP2
00003b09: MSTORE
00003b0a: PUSH1 0x01
00003b0c: PUSH1 0x01
00003b0e: PUSH1 0xe0
00003b10: SHL
00003b11: SUB
00003b12: NOT
00003b13: DUP3
00003b14: AND
00003b15: PUSH1 0x04
00003b17: DUP3
00003b18: ADD
00003b19: MSTORE
00003b1a: PUSH1 0x24
00003b1c: ADD
00003b1d: PUSH2 0x0eaf
00003b20: JUMP
00003b21: JUMPDEST
00003b22: DUP2
00003b23: DUP5
00003b24: ADD
00003b25: PUSH1 0x01
00003b27: DUP2
00003b28: ADD
00003b29: MLOAD
00003b2a: PUSH1 0x09
00003b2c: SWAP2
00003b2d: DUP3
00003b2e: ADD
00003b2f: MLOAD
00003b30: PUSH1 0xff
00003b32: DUP3
00003b33: AND
00003b34: PUSH1 0x08
00003b36: DUP3
00003b37: SWAP1
00003b38: SHL
00003b39: PUSH9 0xffffffffffffffff00
00003b43: AND
00003b44: OR
00003b45: DUP7
00003b46: MSTORE
00003b47: SWAP2
00003b48: SWAP1
00003b49: SWAP4
00003b4a: ADD
00003b4b: SWAP3
00003b4c: SWAP1
00003b4d: PUSH2 0x3b56
00003b50: DUP7
00003b51: DUP6
00003b52: PUSH2 0x46c1
00003b55: JUMP
00003b56: JUMPDEST
00003b57: PUSH1 0x20
00003b59: DUP8
00003b5a: ADD
00003b5b: SWAP2
00003b5c: SWAP1
00003b5d: SWAP2
00003b5e: MSTORE
00003b5f: SWAP4
00003b60: POP
00003b61: PUSH2 0x3b6a
00003b64: DUP7
00003b65: DUP6
00003b66: PUSH2 0x4729
00003b69: JUMP
00003b6a: JUMPDEST
00003b6b: PUSH1 0x40
00003b6d: DUP8
00003b6e: ADD
00003b6f: SWAP2
00003b70: SWAP1
00003b71: SWAP2
00003b72: MSTORE
00003b73: SWAP4
00003b74: POP
00003b75: PUSH2 0x3b7e
00003b78: DUP7
00003b79: DUP6
00003b7a: PUSH2 0x4729
00003b7d: JUMP
00003b7e: JUMPDEST
00003b7f: PUSH1 0x60
00003b81: DUP8
00003b82: ADD
00003b83: SWAP2
00003b84: SWAP1
00003b85: SWAP2
00003b86: MSTORE
00003b87: SWAP4
00003b88: POP
00003b89: PUSH1 0x00
00003b8b: PUSH2 0x3b9d
00003b8e: DUP8
00003b8f: DUP7
00003b90: PUSH1 0x02
00003b92: SWAP2
00003b93: DUP2
00003b94: ADD
00003b95: DUP3
00003b96: ADD
00003b97: MLOAD
00003b98: SWAP3
00003b99: SWAP2
00003b9a: ADD
00003b9b: SWAP1
00003b9c: JUMP
00003b9d: JUMPDEST
00003b9e: SWAP6
00003b9f: POP
00003ba0: PUSH2 0xffff
00003ba3: AND
00003ba4: SWAP1
00003ba5: POP
00003ba6: PUSH2 0x3bb0
00003ba9: DUP8
00003baa: DUP7
00003bab: DUP4
00003bac: PUSH2 0x474f
00003baf: JUMP
00003bb0: JUMPDEST
00003bb1: PUSH1 0x80
00003bb3: DUP9
00003bb4: ADD
00003bb5: SWAP2
00003bb6: SWAP1
00003bb7: SWAP2
00003bb8: MSTORE
00003bb9: SWAP5
00003bba: POP
00003bbb: PUSH2 0x3bc4
00003bbe: DUP8
00003bbf: DUP7
00003bc0: PUSH2 0x47c4
00003bc3: JUMP
00003bc4: JUMPDEST
00003bc5: POP
00003bc6: POP
00003bc7: POP
00003bc8: POP
00003bc9: POP
00003bca: SWAP2
00003bcb: SWAP1
00003bcc: POP
00003bcd: JUMP
00003bce: JUMPDEST
00003bcf: PUSH2 0x3bd6
00003bd2: PUSH2 0x1645
00003bd5: JUMP
00003bd6: JUMPDEST
00003bd7: ISZERO
00003bd8: PUSH2 0x3bf4
00003bdb: JUMPI
00003bdc: PUSH1 0x40
00003bde: MLOAD
00003bdf: PUSH4 0x09e3d0f3
00003be4: PUSH1 0xe1
00003be6: SHL
00003be7: DUP2
00003be8: MSTORE
00003be9: PUSH1 0x04
00003beb: ADD
00003bec: PUSH1 0x40
00003bee: MLOAD
00003bef: DUP1
00003bf0: SWAP2
00003bf1: SUB
00003bf2: SWAP1
00003bf3: REVERT
00003bf4: JUMPDEST
00003bf5: PUSH2 0x3bfc
00003bf8: PUSH2 0x2390
00003bfb: JUMP
00003bfc: JUMPDEST
00003bfd: PUSH1 0x00
00003bff: PUSH2 0x3c07
00003c02: DUP3
00003c03: PUSH2 0x23c8
00003c06: JUMP
00003c07: JUMPDEST
00003c08: DUP1
00003c09: MLOAD
00003c0a: PUSH1 0x20
00003c0c: SWAP2
00003c0d: DUP3
00003c0e: ADD
00003c0f: KECCAK256
00003c10: SWAP1
00003c11: DUP4
00003c12: ADD
00003c13: MLOAD
00003c14: SWAP1
00003c15: SWAP2
00003c16: POP
00003c17: PUSH1 0x00
00003c19: PUSH2 0x3c21
00003c1c: DUP3
00003c1d: PUSH2 0x249c
00003c20: JUMP
00003c21: JUMPDEST
00003c22: SWAP1
00003c23: POP
00003c24: PUSH1 0x00
00003c26: PUSH2 0x3c32
00003c29: DUP4
00003c2a: PUSH1 0x20
00003c2c: ADD
00003c2d: MLOAD
00003c2e: PUSH2 0x1cb9
00003c31: JUMP
00003c32: JUMPDEST
00003c33: SWAP1
00003c34: POP
00003c35: PUSH1 0x00
00003c37: PUSH2 0x3c5b
00003c3a: DUP3
00003c3b: DUP4
00003c3c: PUSH2 0x0ff7
00003c3f: DUP6
00003c40: DUP11
00003c41: PUSH1 0x00
00003c43: ADD
00003c44: MLOAD
00003c45: PUSH1 0x01
00003c47: PUSH1 0x01
00003c49: PUSH1 0x48
00003c4b: SHL
00003c4c: SUB
00003c4d: AND
00003c4e: PUSH2 0x21ab
00003c51: SWAP1
00003c52: SWAP2
00003c53: SWAP1
00003c54: PUSH4 0xffffffff
00003c59: AND
00003c5a: JUMP
00003c5b: JUMPDEST
00003c5c: SWAP1
00003c5d: POP
00003c5e: PUSH1 0x00
00003c60: PUSH2 0x3c6c
00003c63: DUP8
00003c64: PUSH1 0x60
00003c66: ADD
00003c67: MLOAD
00003c68: PUSH2 0x256b
00003c6b: JUMP
00003c6c: JUMPDEST
00003c6d: SWAP1
00003c6e: POP
00003c6f: PUSH2 0x3ca1
00003c72: PUSH2 0x3c7e
00003c75: DUP7
00003c76: PUSH1 0x20
00003c78: ADD
00003c79: MLOAD
00003c7a: PUSH2 0x1e40
00003c7d: JUMP
00003c7e: JUMPDEST
00003c7f: PUSH2 0xffff
00003c82: DUP11
00003c83: AND
00003c84: PUSH1 0x00
00003c86: SWAP1
00003c87: DUP2
00003c88: MSTORE
00003c89: PUSH1 0x20
00003c8b: SWAP2
00003c8c: SWAP1
00003c8d: SWAP2
00003c8e: MSTORE
00003c8f: PUSH1 0x40
00003c91: SWAP1
00003c92: KECCAK256
00003c93: SLOAD
00003c94: PUSH1 0x01
00003c96: PUSH1 0x01
00003c98: PUSH1 0x48
00003c9a: SHL
00003c9b: SUB
00003c9c: AND
00003c9d: PUSH2 0x43ac
00003ca0: JUMP
00003ca1: JUMPDEST
00003ca2: PUSH2 0x3ce6
00003ca5: JUMPI
00003ca6: PUSH1 0x00
00003ca8: PUSH2 0x3cb6
00003cab: DUP7
00003cac: PUSH1 0x20
00003cae: ADD
00003caf: MLOAD
00003cb0: DUP5
00003cb1: DUP12
00003cb2: PUSH2 0x47f2
00003cb5: JUMP
00003cb6: JUMPDEST
00003cb7: SWAP1
00003cb8: POP
00003cb9: DUP1
00003cba: ISZERO
00003cbb: PUSH2 0x3cd5
00003cbe: JUMPI
00003cbf: PUSH2 0x3cc9
00003cc2: DUP11
00003cc3: DUP11
00003cc4: DUP10
00003cc5: PUSH2 0x4876
00003cc8: JUMP
00003cc9: JUMPDEST
00003cca: POP
00003ccb: POP
00003ccc: POP
00003ccd: POP
00003cce: POP
00003ccf: POP
00003cd0: POP
00003cd1: PUSH2 0x3d28
00003cd4: JUMP
00003cd5: JUMPDEST
00003cd6: PUSH2 0x3ce4
00003cd9: DUP7
00003cda: PUSH1 0x20
00003cdc: ADD
00003cdd: MLOAD
00003cde: DUP5
00003cdf: DUP12
00003ce0: PUSH2 0x495f
00003ce3: JUMP
00003ce4: JUMPDEST
00003ce5: POP
00003ce6: JUMPDEST
00003ce7: PUSH2 0x3cf6
00003cea: PUSH2 0x37d8
00003ced: DUP7
00003cee: PUSH1 0x20
00003cf0: ADD
00003cf1: MLOAD
00003cf2: PUSH2 0x2087
00003cf5: JUMP
00003cf6: JUMPDEST
00003cf7: PUSH2 0x3d08
00003cfa: JUMPI
00003cfb: PUSH2 0x3d08
00003cfe: DUP6
00003cff: PUSH1 0x20
00003d01: ADD
00003d02: MLOAD
00003d03: DUP4
00003d04: PUSH2 0x49de
00003d07: JUMP
00003d08: JUMPDEST
00003d09: PUSH2 0x3d21
00003d0c: DUP10
00003d0d: DUP6
00003d0e: DUP4
00003d0f: DUP6
00003d10: PUSH1 0x00
00003d12: DUP13
00003d13: PUSH1 0x80
00003d15: ADD
00003d16: MLOAD
00003d17: DUP15
00003d18: DUP15
00003d19: PUSH1 0x40
00003d1b: ADD
00003d1c: MLOAD
00003d1d: PUSH2 0x2597
00003d20: JUMP
00003d21: JUMPDEST
00003d22: POP
00003d23: POP
00003d24: POP
00003d25: POP
00003d26: POP
00003d27: POP
00003d28: JUMPDEST
00003d29: PUSH2 0x08f2
00003d2c: PUSH1 0x01
00003d2e: PUSH1 0x00
00003d30: DUP1
00003d31: MLOAD
00003d32: PUSH1 0x20
00003d34: PUSH2 0x5ec1
00003d37: DUP4
00003d38: CODECOPY
00003d39: DUP2
00003d3a: MLOAD
00003d3b: SWAP2
00003d3c: MSTORE
00003d3d: SSTORE
00003d3e: JUMP
00003d3f: JUMPDEST
00003d40: PUSH1 0x01
00003d42: PUSH1 0x01
00003d44: PUSH1 0xa0
00003d46: SHL
00003d47: SUB
00003d48: DUP2
00003d49: AND
00003d4a: EXTCODESIZE
00003d4b: PUSH2 0x3dac
00003d4e: JUMPI
00003d4f: PUSH1 0x40
00003d51: MLOAD
00003d52: PUSH3 0x461bcd
00003d56: PUSH1 0xe5
00003d58: SHL
00003d59: DUP2
00003d5a: MSTORE
00003d5b: PUSH1 0x20
00003d5d: PUSH1 0x04
00003d5f: DUP3
00003d60: ADD
00003d61: MSTORE
00003d62: PUSH1 0x2d
00003d64: PUSH1 0x24
00003d66: DUP3
00003d67: ADD
00003d68: MSTORE
00003d69: PUSH32 0x455243313936373a206e657720696d706c656d656e746174696f6e206973206e
00003d8a: PUSH1 0x44
00003d8c: DUP3
00003d8d: ADD
00003d8e: MSTORE
00003d8f: PUSH13 0x1bdd08184818dbdb9d1c9858dd
00003d9d: PUSH1 0x9a
00003d9f: SHL
00003da0: PUSH1 0x64
00003da2: DUP3
00003da3: ADD
00003da4: MSTORE
00003da5: PUSH1 0x84
00003da7: ADD
00003da8: PUSH2 0x0eaf
00003dab: JUMP
00003dac: JUMPDEST
00003dad: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc
00003dce: DUP1
00003dcf: SLOAD
00003dd0: PUSH1 0x01
00003dd2: PUSH1 0x01
00003dd4: PUSH1 0xa0
00003dd6: SHL
00003dd7: SUB
00003dd8: NOT
00003dd9: AND
00003dda: PUSH1 0x01
00003ddc: PUSH1 0x01
00003dde: PUSH1 0xa0
00003de0: SHL
00003de1: SUB
00003de2: SWAP3
00003de3: SWAP1
00003de4: SWAP3
00003de5: AND
00003de6: SWAP2
00003de7: SWAP1
00003de8: SWAP2
00003de9: OR
00003dea: SWAP1
00003deb: SSTORE
00003dec: JUMP
00003ded: JUMPDEST
00003dee: PUSH1 0x60
00003df0: DUP2
00003df1: PUSH1 0x00
00003df3: ADD
00003df4: MLOAD
00003df5: DUP3
00003df6: PUSH1 0x20
00003df8: ADD
00003df9: MLOAD
00003dfa: DUP4
00003dfb: PUSH1 0x40
00003dfd: ADD
00003dfe: MLOAD
00003dff: PUSH1 0x40
00003e01: MLOAD
00003e02: PUSH1 0x20
00003e04: ADD
00003e05: PUSH2 0x31df
00003e08: SWAP4
00003e09: SWAP3
00003e0a: SWAP2
00003e0b: SWAP1
00003e0c: SWAP3
00003e0d: DUP4
00003e0e: MSTORE
00003e0f: PUSH1 0x20
00003e11: DUP4
00003e12: ADD
00003e13: SWAP2
00003e14: SWAP1
00003e15: SWAP2
00003e16: MSTORE
00003e17: PUSH1 0xf8
00003e19: SHL
00003e1a: PUSH1 0x01
00003e1c: PUSH1 0x01
00003e1e: PUSH1 0xf8
00003e20: SHL
00003e21: SUB
00003e22: NOT
00003e23: AND
00003e24: PUSH1 0x40
00003e26: DUP3
00003e27: ADD
00003e28: MSTORE
00003e29: PUSH1 0x41
00003e2b: ADD
00003e2c: SWAP1
00003e2d: JUMP
00003e2e: JUMPDEST
00003e2f: PUSH1 0x60
00003e31: DUP2
00003e32: PUSH1 0x00
00003e34: ADD
00003e35: MLOAD
00003e36: DUP3
00003e37: PUSH1 0x20
00003e39: ADD
00003e3a: MLOAD
00003e3b: PUSH1 0x40
00003e3d: MLOAD
00003e3e: PUSH1 0x20
00003e40: ADD
00003e41: PUSH2 0x31df
00003e44: SWAP3
00003e45: SWAP2
00003e46: SWAP1
00003e47: PUSH1 0xf0
00003e49: SWAP3
00003e4a: SWAP1
00003e4b: SWAP3
00003e4c: SHL
00003e4d: PUSH1 0x01
00003e4f: PUSH1 0x01
00003e51: PUSH1 0xf0
00003e53: SHL
00003e54: SUB
00003e55: NOT
00003e56: AND
00003e57: DUP3
00003e58: MSTORE
00003e59: PUSH1 0x02
00003e5b: DUP3
00003e5c: ADD
00003e5d: MSTORE
00003e5e: PUSH1 0x22
00003e60: ADD
00003e61: SWAP1
00003e62: JUMP
00003e63: JUMPDEST
00003e64: PUSH1 0x00
00003e66: PUSH2 0x3eb8
00003e69: DUP3
00003e6a: PUSH1 0x40
00003e6c: MLOAD
00003e6d: DUP1
00003e6e: PUSH1 0x40
00003e70: ADD
00003e71: PUSH1 0x40
00003e73: MSTORE
00003e74: DUP1
00003e75: PUSH1 0x20
00003e77: DUP2
00003e78: MSTORE
00003e79: PUSH1 0x20
00003e7b: ADD
00003e7c: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564
00003e9d: DUP2
00003e9e: MSTORE
00003e9f: POP
00003ea0: DUP6
00003ea1: PUSH1 0x01
00003ea3: PUSH1 0x01
00003ea5: PUSH1 0xa0
00003ea7: SHL
00003ea8: SUB
00003ea9: AND
00003eaa: PUSH2 0x4a48
00003ead: SWAP1
00003eae: SWAP3
00003eaf: SWAP2
00003eb0: SWAP1
00003eb1: PUSH4 0xffffffff
00003eb6: AND
00003eb7: JUMP
00003eb8: JUMPDEST
00003eb9: DUP1
00003eba: MLOAD
00003ebb: SWAP1
00003ebc: SWAP2
00003ebd: POP
00003ebe: ISZERO
00003ebf: PUSH2 0x08f2
00003ec2: JUMPI
00003ec3: DUP1
00003ec4: DUP1
00003ec5: PUSH1 0x20
00003ec7: ADD
00003ec8: SWAP1
00003ec9: MLOAD
00003eca: DUP2
00003ecb: ADD
00003ecc: SWAP1
00003ecd: PUSH2 0x3ed6
00003ed0: SWAP2
00003ed1: SWAP1
00003ed2: PUSH2 0x59ff
00003ed5: JUMP
00003ed6: JUMPDEST
00003ed7: PUSH2 0x08f2
00003eda: JUMPI
00003edb: PUSH1 0x40
00003edd: MLOAD
00003ede: PUSH3 0x461bcd
00003ee2: PUSH1 0xe5
00003ee4: SHL
00003ee5: DUP2
00003ee6: MSTORE
00003ee7: PUSH1 0x20
00003ee9: PUSH1 0x04
00003eeb: DUP3
00003eec: ADD
00003eed: MSTORE
00003eee: PUSH1 0x2a
00003ef0: PUSH1 0x24
00003ef2: DUP3
00003ef3: ADD
00003ef4: MSTORE
00003ef5: PUSH32 0x5361666545524332303a204552433230206f7065726174696f6e20646964206e
00003f16: PUSH1 0x44
00003f18: DUP3
00003f19: ADD
00003f1a: MSTORE
00003f1b: PUSH10 0x1bdd081cdd58d8d95959
00003f26: PUSH1 0xb2
00003f28: SHL
00003f29: PUSH1 0x64
00003f2b: DUP3
00003f2c: ADD
00003f2d: MSTORE
00003f2e: PUSH1 0x84
00003f30: ADD
00003f31: PUSH2 0x0eaf
00003f34: JUMP
00003f35: JUMPDEST
00003f36: PUSH1 0x00
00003f38: DUP1
00003f39: MLOAD
00003f3a: PUSH1 0x20
00003f3c: PUSH2 0x5ee1
00003f3f: DUP4
00003f40: CODECOPY
00003f41: DUP2
00003f42: MLOAD
00003f43: SWAP2
00003f44: MSTORE
00003f45: SLOAD
00003f46: PUSH1 0x01
00003f48: PUSH1 0x40
00003f4a: SHL
00003f4b: SWAP1
00003f4c: DIV
00003f4d: PUSH1 0xff
00003f4f: AND
00003f50: PUSH2 0x0bd4
00003f53: JUMPI
00003f54: PUSH1 0x40
00003f56: MLOAD
00003f57: PUSH4 0x1afcd79f
00003f5c: PUSH1 0xe3
00003f5e: SHL
00003f5f: DUP2
00003f60: MSTORE
00003f61: PUSH1 0x04
00003f63: ADD
00003f64: PUSH1 0x40
00003f66: MLOAD
00003f67: DUP1
00003f68: SWAP2
00003f69: SUB
00003f6a: SWAP1
00003f6b: REVERT
00003f6c: JUMPDEST
00003f6d: PUSH2 0x3f74
00003f70: PUSH2 0x3f35
00003f73: JUMP
00003f74: JUMPDEST
00003f75: PUSH2 0x3f7c
00003f78: PUSH2 0x4a57
00003f7b: JUMP
00003f7c: JUMPDEST
00003f7d: PUSH2 0x3f85
00003f80: DUP3
00003f81: PUSH2 0x4a5f
00003f84: JUMP
00003f85: JUMPDEST
00003f86: PUSH2 0x0b5a
00003f89: DUP2
00003f8a: PUSH2 0x4a70
00003f8d: JUMP
00003f8e: JUMPDEST
00003f8f: PUSH2 0x3f96
00003f92: PUSH2 0x3f35
00003f95: JUMP
00003f96: JUMPDEST
00003f97: PUSH2 0x0bd4
00003f9a: PUSH2 0x4a89
00003f9d: JUMP
00003f9e: JUMPDEST
00003f9f: PUSH1 0x40
00003fa1: DUP1
00003fa2: MLOAD
00003fa3: PUSH1 0x60
00003fa5: DUP2
00003fa6: ADD
00003fa7: DUP3
00003fa8: MSTORE
00003fa9: PUSH1 0x00
00003fab: DUP1
00003fac: DUP3
00003fad: MSTORE
00003fae: PUSH1 0x20
00003fb0: DUP3
00003fb1: ADD
00003fb2: DUP2
00003fb3: SWAP1
00003fb4: MSTORE
00003fb5: SWAP2
00003fb6: DUP2
00003fb7: ADD
00003fb8: SWAP2
00003fb9: SWAP1
00003fba: SWAP2
00003fbb: MSTORE
00003fbc: PUSH1 0x40
00003fbe: DUP1
00003fbf: MLOAD
00003fc0: PUSH1 0x04
00003fc2: DUP2
00003fc3: MSTORE
00003fc4: PUSH1 0x24
00003fc6: DUP2
00003fc7: ADD
00003fc8: SWAP1
00003fc9: SWAP2
00003fca: MSTORE
00003fcb: PUSH1 0x20
00003fcd: DUP2
00003fce: ADD
00003fcf: DUP1
00003fd0: MLOAD
00003fd1: PUSH1 0x01
00003fd3: PUSH1 0x01
00003fd5: PUSH1 0xe0
00003fd7: SHL
00003fd8: SUB
00003fd9: AND
00003fda: PUSH4 0x95d89b41
00003fdf: PUSH1 0xe0
00003fe1: SHL
00003fe2: OR
00003fe3: SWAP1
00003fe4: MSTORE
00003fe5: PUSH1 0x60
00003fe7: SWAP1
00003fe8: PUSH2 0x3ff2
00003feb: SWAP1
00003fec: DUP5
00003fed: SWAP1
00003fee: PUSH2 0x2d46
00003ff1: JUMP
00003ff2: JUMPDEST
00003ff3: SWAP1
00003ff4: POP
00003ff5: PUSH1 0x00
00003ff7: DUP2
00003ff8: DUP1
00003ff9: PUSH1 0x20
00003ffb: ADD
00003ffc: SWAP1
00003ffd: MLOAD
00003ffe: DUP2
00003fff: ADD
00004000: SWAP1
00004001: PUSH2 0x400a
00004004: SWAP2
00004005: SWAP1
00004006: PUSH2 0x58bc
00004009: JUMP
0000400a: JUMPDEST
0000400b: PUSH1 0x20
0000400d: DUP1
0000400e: DUP3
0000400f: ADD
00004010: MLOAD
00004011: PUSH1 0x40
00004013: DUP1
00004014: MLOAD
00004015: PUSH1 0x04
00004017: DUP2
00004018: MSTORE
00004019: PUSH1 0x24
0000401b: DUP2
0000401c: ADD
0000401d: SWAP1
0000401e: SWAP2
0000401f: MSTORE
00004020: SWAP2
00004021: DUP3
00004022: ADD
00004023: DUP1
00004024: MLOAD
00004025: PUSH1 0x01
00004027: PUSH1 0x01
00004029: PUSH1 0xe0
0000402b: SHL
0000402c: SUB
0000402d: AND
0000402e: PUSH4 0x06fdde03
00004033: PUSH1 0xe0
00004035: SHL
00004036: OR
00004037: SWAP1
00004038: MSTORE
00004039: SWAP2
0000403a: SWAP3
0000403b: POP
0000403c: PUSH2 0x4046
0000403f: SWAP1
00004040: DUP7
00004041: SWAP1
00004042: PUSH2 0x2d46
00004045: JUMP
00004046: JUMPDEST
00004047: SWAP3
00004048: POP
00004049: PUSH1 0x00
0000404b: DUP4
0000404c: DUP1
0000404d: PUSH1 0x20
0000404f: ADD
00004050: SWAP1
00004051: MLOAD
00004052: DUP2
00004053: ADD
00004054: SWAP1
00004055: PUSH2 0x405e
00004058: SWAP2
00004059: SWAP1
0000405a: PUSH2 0x58bc
0000405d: JUMP
0000405e: JUMPDEST
0000405f: PUSH1 0x20
00004061: DUP1
00004062: DUP3
00004063: ADD
00004064: MLOAD
00004065: PUSH1 0x40
00004067: DUP1
00004068: MLOAD
00004069: PUSH1 0x04
0000406b: DUP2
0000406c: MSTORE
0000406d: PUSH1 0x24
0000406f: DUP2
00004070: ADD
00004071: SWAP1
00004072: SWAP2
00004073: MSTORE
00004074: SWAP2
00004075: DUP3
00004076: ADD
00004077: DUP1
00004078: MLOAD
00004079: PUSH1 0x01
0000407b: PUSH1 0x01
0000407d: PUSH1 0xe0
0000407f: SHL
00004080: SUB
00004081: AND
00004082: PUSH4 0x313ce567
00004087: PUSH1 0xe0
00004089: SHL
0000408a: OR
0000408b: SWAP1
0000408c: MSTORE
0000408d: SWAP2
0000408e: SWAP3
0000408f: POP
00004090: PUSH2 0x409a
00004093: SWAP1
00004094: DUP9
00004095: SWAP1
00004096: PUSH2 0x2d46
00004099: JUMP
0000409a: JUMPDEST
0000409b: SWAP5
0000409c: POP
0000409d: PUSH1 0x00
0000409f: DUP6
000040a0: DUP1
000040a1: PUSH1 0x20
000040a3: ADD
000040a4: SWAP1
000040a5: MLOAD
000040a6: DUP2
000040a7: ADD
000040a8: SWAP1
000040a9: PUSH2 0x40b2
000040ac: SWAP2
000040ad: SWAP1
000040ae: PUSH2 0x59b1
000040b1: JUMP
000040b2: JUMPDEST
000040b3: SWAP2
000040b4: DUP8
000040b5: MSTORE
000040b6: POP
000040b7: PUSH1 0x20
000040b9: DUP7
000040ba: ADD
000040bb: SWAP3
000040bc: SWAP1
000040bd: SWAP3
000040be: MSTORE
000040bf: POP
000040c0: PUSH1 0xff
000040c2: AND
000040c3: PUSH1 0x40
000040c5: DUP5
000040c6: ADD
000040c7: MSTORE
000040c8: POP
000040c9: SWAP1
000040ca: SWAP3
000040cb: SWAP2
000040cc: POP
000040cd: POP
000040ce: JUMP
000040cf: JUMPDEST
000040d0: PUSH1 0x00
000040d2: PUSH32 0x000000000000000000000000c6793a32761a11e96c97a3d18fc6545ea931f0e9
000040f3: PUSH1 0x01
000040f5: PUSH1 0x01
000040f7: PUSH1 0xa0
000040f9: SHL
000040fa: SUB
000040fb: AND
000040fc: PUSH4 0xee0bdb1c
00004101: DUP10
00004102: DUP10
00004103: DUP10
00004104: DUP10
00004105: DUP10
00004106: DUP10
00004107: DUP10
00004108: PUSH1 0x40
0000410a: MLOAD
0000410b: DUP9
0000410c: PUSH4 0xffffffff
00004111: AND
00004112: PUSH1 0xe0
00004114: SHL
00004115: DUP2
00004116: MSTORE
00004117: PUSH1 0x04
00004119: ADD
0000411a: PUSH2 0x4128
0000411d: SWAP7
0000411e: SWAP6
0000411f: SWAP5
00004120: SWAP4
00004121: SWAP3
00004122: SWAP2
00004123: SWAP1
00004124: PUSH2 0x5d2b
00004127: JUMP
00004128: JUMPDEST
00004129: PUSH1 0x20
0000412b: PUSH1 0x40
0000412d: MLOAD
0000412e: DUP1
0000412f: DUP4
00004130: SUB
00004131: DUP2
00004132: DUP6
00004133: DUP9
00004134: GAS
00004135: CALL
00004136: ISZERO
00004137: DUP1
00004138: ISZERO
00004139: PUSH2 0x4146
0000413c: JUMPI
0000413d: RETURNDATASIZE
0000413e: PUSH1 0x00
00004140: DUP1
00004141: RETURNDATACOPY
00004142: RETURNDATASIZE
00004143: PUSH1 0x00
00004145: REVERT
00004146: JUMPDEST
00004147: POP
00004148: POP
00004149: POP
0000414a: POP
0000414b: POP
0000414c: PUSH1 0x40
0000414e: MLOAD
0000414f: RETURNDATASIZE
00004150: PUSH1 0x1f
00004152: NOT
00004153: PUSH1 0x1f
00004155: DUP3
00004156: ADD
00004157: AND
00004158: DUP3
00004159: ADD
0000415a: DUP1
0000415b: PUSH1 0x40
0000415d: MSTORE
0000415e: POP
0000415f: DUP2
00004160: ADD
00004161: SWAP1
00004162: PUSH2 0x416b
00004165: SWAP2
00004166: SWAP1
00004167: PUSH2 0x5c80
0000416a: JUMP
0000416b: JUMPDEST
0000416c: SWAP9
0000416d: SWAP8
0000416e: POP
0000416f: POP
00004170: POP
00004171: POP
00004172: POP
00004173: POP
00004174: POP
00004175: POP
00004176: JUMP
00004177: JUMPDEST
00004178: PUSH1 0x40
0000417a: MLOAD
0000417b: PUSH1 0x00
0000417d: SWAP1
0000417e: CALLER
0000417f: SWAP1
00004180: DUP4
00004181: SWAP1
00004182: DUP4
00004183: DUP2
00004184: DUP2
00004185: DUP2
00004186: DUP6
00004187: DUP8
00004188: GAS
00004189: CALL
0000418a: SWAP3
0000418b: POP
0000418c: POP
0000418d: POP
0000418e: RETURNDATASIZE
0000418f: DUP1
00004190: PUSH1 0x00
00004192: DUP2
00004193: EQ
00004194: PUSH2 0x41b9
00004197: JUMPI
00004198: PUSH1 0x40
0000419a: MLOAD
0000419b: SWAP2
0000419c: POP
0000419d: PUSH1 0x1f
0000419f: NOT
000041a0: PUSH1 0x3f
000041a2: RETURNDATASIZE
000041a3: ADD
000041a4: AND
000041a5: DUP3
000041a6: ADD
000041a7: PUSH1 0x40
000041a9: MSTORE
000041aa: RETURNDATASIZE
000041ab: DUP3
000041ac: MSTORE
000041ad: RETURNDATASIZE
000041ae: PUSH1 0x00
000041b0: PUSH1 0x20
000041b2: DUP5
000041b3: ADD
000041b4: RETURNDATACOPY
000041b5: PUSH2 0x41be
000041b8: JUMP
000041b9: JUMPDEST
000041ba: PUSH1 0x60
000041bc: SWAP2
000041bd: POP
000041be: JUMPDEST
000041bf: POP
000041c0: POP
000041c1: SWAP1
000041c2: POP
000041c3: DUP1
000041c4: PUSH2 0x0b5a
000041c7: JUMPI
000041c8: PUSH1 0x40
000041ca: MLOAD
000041cb: PUSH4 0x0b288dc5
000041d0: PUSH1 0xe2
000041d2: SHL
000041d3: DUP2
000041d4: MSTORE
000041d5: PUSH1 0x04
000041d7: DUP2
000041d8: ADD
000041d9: DUP4
000041da: SWAP1
000041db: MSTORE
000041dc: PUSH1 0x24
000041de: ADD
000041df: PUSH2 0x0eaf
000041e2: JUMP
000041e3: JUMPDEST
000041e4: PUSH1 0x40
000041e6: DUP1
000041e7: MLOAD
000041e8: PUSH1 0x01
000041ea: PUSH1 0x01
000041ec: PUSH1 0xa0
000041ee: SHL
000041ef: SUB
000041f0: DUP4
000041f1: DUP2
000041f2: AND
000041f3: PUSH1 0x24
000041f5: DUP1
000041f6: DUP5
000041f7: ADD
000041f8: SWAP2
000041f9: SWAP1
000041fa: SWAP2
000041fb: MSTORE
000041fc: DUP4
000041fd: MLOAD
000041fe: DUP1
000041ff: DUP5
00004200: SUB
00004201: SWAP1
00004202: SWAP2
00004203: ADD
00004204: DUP2
00004205: MSTORE
00004206: PUSH1 0x44
00004208: SWAP1
00004209: SWAP3
0000420a: ADD
0000420b: DUP4
0000420c: MSTORE
0000420d: PUSH1 0x20
0000420f: DUP3
00004210: ADD
00004211: DUP1
00004212: MLOAD
00004213: PUSH1 0x01
00004215: PUSH1 0x01
00004217: PUSH1 0xe0
00004219: SHL
0000421a: SUB
0000421b: AND
0000421c: PUSH4 0x70a08231
00004221: PUSH1 0xe0
00004223: SHL
00004224: OR
00004225: SWAP1
00004226: MSTORE
00004227: SWAP2
00004228: MLOAD
00004229: PUSH1 0x00
0000422b: SWAP3
0000422c: DUP4
0000422d: SWAP3
0000422e: DUP4
0000422f: SWAP3
00004230: SWAP2
00004231: DUP8
00004232: AND
00004233: SWAP2
00004234: PUSH2 0x423d
00004237: SWAP2
00004238: SWAP1
00004239: PUSH2 0x5b02
0000423c: JUMP
0000423d: JUMPDEST
0000423e: PUSH1 0x00
00004240: PUSH1 0x40
00004242: MLOAD
00004243: DUP1
00004244: DUP4
00004245: SUB
00004246: DUP2
00004247: DUP6
00004248: GAS
00004249: STATICCALL
0000424a: SWAP2
0000424b: POP
0000424c: POP
0000424d: RETURNDATASIZE
0000424e: DUP1
0000424f: PUSH1 0x00
00004251: DUP2
00004252: EQ
00004253: PUSH2 0x4278
00004256: JUMPI
00004257: PUSH1 0x40
00004259: MLOAD
0000425a: SWAP2
0000425b: POP
0000425c: PUSH1 0x1f
0000425e: NOT
0000425f: PUSH1 0x3f
00004261: RETURNDATASIZE
00004262: ADD
00004263: AND
00004264: DUP3
00004265: ADD
00004266: PUSH1 0x40
00004268: MSTORE
00004269: RETURNDATASIZE
0000426a: DUP3
0000426b: MSTORE
0000426c: RETURNDATASIZE
0000426d: PUSH1 0x00
0000426f: PUSH1 0x20
00004271: DUP5
00004272: ADD
00004273: RETURNDATACOPY
00004274: PUSH2 0x427d
00004277: JUMP
00004278: JUMPDEST
00004279: PUSH1 0x60
0000427b: SWAP2
0000427c: POP
0000427d: JUMPDEST
0000427e: POP
0000427f: SWAP2
00004280: POP
00004281: SWAP2
00004282: POP
00004283: DUP2
00004284: PUSH2 0x42a0
00004287: JUMPI
00004288: PUSH1 0x40
0000428a: MLOAD
0000428b: PUSH4 0x1222cd83
00004290: PUSH1 0xe0
00004292: SHL
00004293: DUP2
00004294: MSTORE
00004295: PUSH1 0x04
00004297: ADD
00004298: PUSH1 0x40
0000429a: MLOAD
0000429b: DUP1
0000429c: SWAP2
0000429d: SUB
0000429e: SWAP1
0000429f: REVERT
000042a0: JUMPDEST
000042a1: DUP1
000042a2: DUP1
000042a3: PUSH1 0x20
000042a5: ADD
000042a6: SWAP1
000042a7: MLOAD
000042a8: DUP2
000042a9: ADD
000042aa: SWAP1
000042ab: PUSH2 0x0b3f
000042ae: SWAP2
000042af: SWAP1
000042b0: PUSH2 0x5d82
000042b3: JUMP
000042b4: JUMPDEST
000042b5: PUSH1 0x40
000042b7: MLOAD
000042b8: PUSH1 0x01
000042ba: PUSH1 0x01
000042bc: PUSH1 0xa0
000042be: SHL
000042bf: SUB
000042c0: DUP1
000042c1: DUP6
000042c2: AND
000042c3: PUSH1 0x24
000042c5: DUP4
000042c6: ADD
000042c7: MSTORE
000042c8: DUP4
000042c9: AND
000042ca: PUSH1 0x44
000042cc: DUP3
000042cd: ADD
000042ce: MSTORE
000042cf: PUSH1 0x64
000042d1: DUP2
000042d2: ADD
000042d3: DUP3
000042d4: SWAP1
000042d5: MSTORE
000042d6: PUSH2 0x0819
000042d9: SWAP1
000042da: DUP6
000042db: SWAP1
000042dc: PUSH4 0x23b872dd
000042e1: PUSH1 0xe0
000042e3: SHL
000042e4: SWAP1
000042e5: PUSH1 0x84
000042e7: ADD
000042e8: PUSH2 0x32be
000042eb: JUMP
000042ec: JUMPDEST
000042ed: PUSH1 0x00
000042ef: DUP3
000042f0: PUSH1 0xff
000042f2: AND
000042f3: PUSH1 0x00
000042f5: SUB
000042f6: PUSH2 0x42fe
000042f9: JUMPI
000042fa: PUSH1 0x00
000042fc: DUP1
000042fd: REVERT
000042fe: JUMPDEST
000042ff: PUSH1 0x00
00004301: PUSH2 0x430b
00004304: DUP4
00004305: DUP6
00004306: DUP1
00004307: PUSH2 0x1d1d
0000430a: JUMP
0000430b: JUMPDEST
0000430c: SWAP1
0000430d: POP
0000430e: PUSH1 0x00
00004310: PUSH2 0x4322
00004313: PUSH1 0x01
00004315: PUSH1 0x01
00004317: PUSH1 0x48
00004319: SHL
0000431a: SUB
0000431b: DUP4
0000431c: AND
0000431d: DUP7
0000431e: PUSH2 0x21ab
00004321: JUMP
00004322: JUMPDEST
00004323: SWAP1
00004324: POP
00004325: DUP1
00004326: DUP5
00004327: EQ
00004328: PUSH2 0x4358
0000432b: JUMPI
0000432c: DUP4
0000432d: PUSH2 0x4336
00004330: DUP3
00004331: DUP3
00004332: PUSH2 0x5977
00004335: JUMP
00004336: JUMPDEST
00004337: PUSH1 0x40
00004339: MLOAD
0000433a: PUSH4 0x38f831a5
0000433f: PUSH1 0xe1
00004341: SHL
00004342: DUP2
00004343: MSTORE
00004344: PUSH1 0x04
00004346: DUP2
00004347: ADD
00004348: SWAP3
00004349: SWAP1
0000434a: SWAP3
0000434b: MSTORE
0000434c: PUSH1 0x24
0000434e: DUP3
0000434f: ADD
00004350: MSTORE
00004351: PUSH1 0x44
00004353: ADD
00004354: PUSH2 0x0eaf
00004357: JUMP
00004358: JUMPDEST
00004359: POP
0000435a: SWAP4
0000435b: SWAP3
0000435c: POP
0000435d: POP
0000435e: POP
0000435f: JUMP
00004360: JUMPDEST
00004361: PUSH1 0x00
00004363: DUP1
00004364: PUSH2 0x436e
00004367: PUSH1 0x08
00004369: DUP5
0000436a: PUSH2 0x2dc6
0000436d: JUMP
0000436e: JUMPDEST
0000436f: SWAP1
00004370: POP
00004371: PUSH2 0x1d15
00004374: PUSH2 0x4393
00004377: PUSH2 0x438e
0000437a: PUSH1 0x01
0000437c: PUSH1 0x01
0000437e: PUSH1 0x40
00004380: SHL
00004381: SUB
00004382: PUSH1 0x08
00004384: DUP9
00004385: SWAP1
00004386: SHR
00004387: AND
00004388: DUP8
00004389: DUP6
0000438a: PUSH2 0x2de2
0000438d: JUMP
0000438e: JUMPDEST
0000438f: PUSH2 0x2e4b
00004392: JUMP
00004393: JUMPDEST
00004394: DUP3
00004395: PUSH1 0xff
00004397: AND
00004398: PUSH1 0x08
0000439a: SWAP2
0000439b: SWAP1
0000439c: SWAP2
0000439d: SHL
0000439e: PUSH9 0xffffffffffffffff00
000043a8: AND
000043a9: OR
000043aa: SWAP1
000043ab: JUMP
000043ac: JUMPDEST
000043ad: PUSH1 0x00
000043af: PUSH1 0x01
000043b1: PUSH1 0x01
000043b3: PUSH1 0x40
000043b5: SHL
000043b6: SUB
000043b7: PUSH1 0x08
000043b9: DUP4
000043ba: SWAP1
000043bb: SHR
000043bc: AND
000043bd: ISZERO
000043be: DUP1
000043bf: ISZERO
000043c0: PUSH2 0x0898
000043c3: JUMPI
000043c4: POP
000043c5: POP
000043c6: PUSH1 0xff
000043c8: AND
000043c9: ISZERO
000043ca: SWAP1
000043cb: JUMP
000043cc: JUMPDEST
000043cd: PUSH1 0x00
000043cf: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180
000043f0: PUSH1 0x01
000043f2: PUSH1 0x01
000043f4: PUSH1 0x40
000043f6: SHL
000043f7: SUB
000043f8: AND
000043f9: PUSH1 0x00
000043fb: SUB
000043fc: PUSH2 0x4407
000043ff: JUMPI
00004400: POP
00004401: PUSH1 0x00
00004403: PUSH2 0x0898
00004406: JUMP
00004407: JUMPDEST
00004408: PUSH2 0x1d6f
0000440b: DUP3
0000440c: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180
0000442d: PUSH2 0x4435
00004430: DUP7
00004431: PUSH2 0x2087
00004434: JUMP
00004435: JUMPDEST
00004436: SWAP2
00004437: SWAP1
00004438: PUSH2 0x4a91
0000443b: JUMP
0000443c: JUMPDEST
0000443d: PUSH1 0x40
0000443f: MLOAD
00004440: DUP1
00004441: PUSH2 0x0100
00004444: ADD
00004445: PUSH1 0x40
00004447: MSTORE
00004448: DUP1
00004449: DUP6
0000444a: DUP2
0000444b: MSTORE
0000444c: PUSH1 0x20
0000444e: ADD
0000444f: DUP5
00004450: DUP2
00004451: MSTORE
00004452: PUSH1 0x20
00004454: ADD
00004455: DUP4
00004456: PUSH1 0x01
00004458: PUSH1 0x01
0000445a: PUSH1 0xa0
0000445c: SHL
0000445d: SUB
0000445e: AND
0000445f: DUP2
00004460: MSTORE
00004461: PUSH1 0x20
00004463: ADD
00004464: DUP8
00004465: PUSH1 0x01
00004467: PUSH1 0x01
00004469: PUSH1 0x48
0000446b: SHL
0000446c: SUB
0000446d: AND
0000446e: DUP2
0000446f: MSTORE
00004470: PUSH1 0x20
00004472: ADD
00004473: DUP7
00004474: PUSH2 0xffff
00004477: AND
00004478: DUP2
00004479: MSTORE
0000447a: PUSH1 0x20
0000447c: ADD
0000447d: TIMESTAMP
0000447e: PUSH1 0x01
00004480: PUSH1 0x01
00004482: PUSH1 0x40
00004484: SHL
00004485: SUB
00004486: AND
00004487: DUP2
00004488: MSTORE
00004489: PUSH1 0x20
0000448b: ADD
0000448c: DUP9
0000448d: PUSH1 0x01
0000448f: PUSH1 0x01
00004491: PUSH1 0xa0
00004493: SHL
00004494: SUB
00004495: AND
00004496: DUP2
00004497: MSTORE
00004498: PUSH1 0x20
0000449a: ADD
0000449b: DUP3
0000449c: DUP2
0000449d: MSTORE
0000449e: POP
0000449f: PUSH2 0x44a6
000044a2: PUSH2 0x2059
000044a5: JUMP
000044a6: JUMPDEST
000044a7: PUSH1 0x01
000044a9: PUSH1 0x01
000044ab: PUSH1 0x40
000044ad: SHL
000044ae: SUB
000044af: DUP1
000044b0: DUP12
000044b1: AND
000044b2: PUSH1 0x00
000044b4: SWAP1
000044b5: DUP2
000044b6: MSTORE
000044b7: PUSH1 0x20
000044b9: SWAP3
000044ba: DUP4
000044bb: MSTORE
000044bc: PUSH1 0x40
000044be: SWAP1
000044bf: DUP2
000044c0: SWAP1
000044c1: KECCAK256
000044c2: DUP5
000044c3: MLOAD
000044c4: DUP2
000044c5: SSTORE
000044c6: SWAP3
000044c7: DUP5
000044c8: ADD
000044c9: MLOAD
000044ca: PUSH1 0x01
000044cc: DUP5
000044cd: ADD
000044ce: SSTORE
000044cf: DUP4
000044d0: ADD
000044d1: MLOAD
000044d2: PUSH1 0x02
000044d4: DUP4
000044d5: ADD
000044d6: DUP1
000044d7: SLOAD
000044d8: PUSH1 0x60
000044da: DUP7
000044db: ADD
000044dc: MLOAD
000044dd: PUSH1 0x80
000044df: DUP8
000044e0: ADD
000044e1: MLOAD
000044e2: PUSH2 0xffff
000044e5: AND
000044e6: PUSH1 0x01
000044e8: PUSH1 0xe8
000044ea: SHL
000044eb: MUL
000044ec: PUSH2 0xffff
000044ef: PUSH1 0xe8
000044f1: SHL
000044f2: NOT
000044f3: PUSH1 0x01
000044f5: PUSH1 0x01
000044f7: PUSH1 0x48
000044f9: SHL
000044fa: SUB
000044fb: SWAP1
000044fc: SWAP3
000044fd: AND
000044fe: PUSH1 0x01
00004500: PUSH1 0xa0
00004502: SHL
00004503: MUL
00004504: PUSH1 0x01
00004506: PUSH1 0x01
00004508: PUSH1 0xe8
0000450a: SHL
0000450b: SUB
0000450c: NOT
0000450d: SWAP1
0000450e: SWAP4
0000450f: AND
00004510: PUSH1 0x01
00004512: PUSH1 0x01
00004514: PUSH1 0xa0
00004516: SHL
00004517: SUB
00004518: SWAP6
00004519: DUP7
0000451a: AND
0000451b: OR
0000451c: SWAP3
0000451d: SWAP1
0000451e: SWAP3
0000451f: OR
00004520: AND
00004521: OR
00004522: SWAP1
00004523: SSTORE
00004524: PUSH1 0xa0
00004526: DUP5
00004527: ADD
00004528: MLOAD
00004529: PUSH1 0x03
0000452b: DUP5
0000452c: ADD
0000452d: DUP1
0000452e: SLOAD
0000452f: PUSH1 0xc0
00004531: DUP8
00004532: ADD
00004533: MLOAD
00004534: SWAP1
00004535: SWAP4
00004536: AND
00004537: PUSH1 0x01
00004539: PUSH1 0x40
0000453b: SHL
0000453c: MUL
0000453d: PUSH1 0x01
0000453f: PUSH1 0x01
00004541: PUSH1 0xe0
00004543: SHL
00004544: SUB
00004545: NOT
00004546: SWAP1
00004547: SWAP4
00004548: AND
00004549: SWAP2
0000454a: SWAP1
0000454b: SWAP4
0000454c: AND
0000454d: OR
0000454e: OR
0000454f: SWAP1
00004550: SSTORE
00004551: PUSH1 0xe0
00004553: DUP3
00004554: ADD
00004555: MLOAD
00004556: PUSH1 0x04
00004558: DUP3
00004559: ADD
0000455a: SWAP1
0000455b: PUSH2 0x4564
0000455e: SWAP1
0000455f: DUP3
00004560: PUSH2 0x5de1
00004563: JUMP
00004564: JUMPDEST
00004565: POP
00004566: POP
00004567: PUSH1 0x40
00004569: MLOAD
0000456a: PUSH1 0x01
0000456c: PUSH1 0x01
0000456e: PUSH1 0x40
00004570: SHL
00004571: SUB
00004572: DUP11
00004573: AND
00004574: DUP2
00004575: MSTORE
00004576: PUSH32 0x69add1952a6a6b9cb86f04d05f0cb605cbb469a50ae916139d34495a9991481f
00004597: SWAP2
00004598: POP
00004599: PUSH1 0x20
0000459b: ADD
0000459c: PUSH1 0x40
0000459e: MLOAD
0000459f: DUP1
000045a0: SWAP2
000045a1: SUB
000045a2: SWAP1
000045a3: LOG1
000045a4: POP
000045a5: POP
000045a6: POP
000045a7: POP
000045a8: POP
000045a9: POP
000045aa: POP
000045ab: POP
000045ac: JUMP
000045ad: JUMPDEST
000045ae: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180
000045cf: PUSH1 0x01
000045d1: PUSH1 0x01
000045d3: PUSH1 0x40
000045d5: SHL
000045d6: SUB
000045d7: AND
000045d8: PUSH1 0x00
000045da: SUB
000045db: PUSH2 0x45e2
000045de: JUMPI
000045df: POP
000045e0: POP
000045e1: JUMP
000045e2: JUMPDEST
000045e3: PUSH2 0x0b5a
000045e6: DUP2
000045e7: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180
00004608: PUSH2 0x4610
0000460b: DUP6
0000460c: PUSH2 0x2087
0000460f: JUMP
00004610: JUMPDEST
00004611: SWAP2
00004612: SWAP1
00004613: PUSH2 0x4ac4
00004616: JUMP
00004617: JUMPDEST
00004618: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180
00004639: PUSH1 0x01
0000463b: PUSH1 0x01
0000463d: PUSH1 0x40
0000463f: SHL
00004640: SUB
00004641: AND
00004642: PUSH1 0x00
00004644: SUB
00004645: PUSH2 0x464d
00004648: JUMPI
00004649: POP
0000464a: POP
0000464b: POP
0000464c: JUMP
0000464d: JUMPDEST
0000464e: PUSH2 0x08f2
00004651: DUP3
00004652: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180
00004673: PUSH2 0x467b
00004676: DUP7
00004677: PUSH2 0x1e40
0000467a: JUMP
0000467b: JUMPDEST
0000467c: PUSH2 0xffff
0000467f: DUP6
00004680: AND
00004681: PUSH1 0x00
00004683: SWAP1
00004684: DUP2
00004685: MSTORE
00004686: PUSH1 0x20
00004688: SWAP2
00004689: SWAP1
0000468a: SWAP2
0000468b: MSTORE
0000468c: PUSH1 0x40
0000468e: SWAP1
0000468f: KECCAK256
00004690: SWAP2
00004691: SWAP1
00004692: PUSH2 0x4b49
00004695: JUMP
00004696: JUMPDEST
00004697: PUSH1 0x00
00004699: DUP1
0000469a: PUSH1 0x00
0000469c: DUP1
0000469d: PUSH2 0x46af
000046a0: DUP7
000046a1: DUP7
000046a2: PUSH1 0x04
000046a4: SWAP2
000046a5: DUP2
000046a6: ADD
000046a7: DUP3
000046a8: ADD
000046a9: MLOAD
000046aa: SWAP3
000046ab: SWAP2
000046ac: ADD
000046ad: SWAP1
000046ae: JUMP
000046af: JUMPDEST
000046b0: PUSH1 0xe0
000046b2: SWAP2
000046b3: SWAP1
000046b4: SWAP2
000046b5: SHL
000046b6: SWAP8
000046b7: SWAP1
000046b8: SWAP7
000046b9: POP
000046ba: SWAP5
000046bb: POP
000046bc: POP
000046bd: POP
000046be: POP
000046bf: POP
000046c0: JUMP
000046c1: JUMPDEST
000046c2: PUSH1 0x40
000046c4: DUP1
000046c5: MLOAD
000046c6: PUSH1 0xa0
000046c8: DUP2
000046c9: ADD
000046ca: DUP3
000046cb: MSTORE
000046cc: PUSH1 0x00
000046ce: DUP2
000046cf: DUP4
000046d0: ADD
000046d1: DUP2
000046d2: DUP2
000046d3: MSTORE
000046d4: PUSH1 0x60
000046d6: DUP4
000046d7: ADD
000046d8: DUP3
000046d9: SWAP1
000046da: MSTORE
000046db: PUSH1 0x80
000046dd: DUP4
000046de: ADD
000046df: DUP3
000046e0: SWAP1
000046e1: MSTORE
000046e2: DUP3
000046e3: MSTORE
000046e4: DUP3
000046e5: MLOAD
000046e6: DUP1
000046e7: DUP5
000046e8: ADD
000046e9: SWAP1
000046ea: SWAP4
000046eb: MSTORE
000046ec: DUP1
000046ed: DUP4
000046ee: MSTORE
000046ef: PUSH1 0x20
000046f1: DUP1
000046f2: DUP5
000046f3: ADD
000046f4: DUP3
000046f5: SWAP1
000046f6: MSTORE
000046f7: DUP3
000046f8: ADD
000046f9: SWAP3
000046fa: SWAP1
000046fb: SWAP3
000046fc: MSTORE
000046fd: SWAP1
000046fe: PUSH2 0x4707
00004701: DUP5
00004702: DUP5
00004703: PUSH2 0x4bc3
00004706: JUMP
00004707: JUMPDEST
00004708: SWAP1
00004709: DUP4
0000470a: MSTORE
0000470b: SWAP3
0000470c: POP
0000470d: PUSH2 0x4716
00004710: DUP5
00004711: DUP5
00004712: PUSH2 0x4c1d
00004715: JUMP
00004716: JUMPDEST
00004717: PUSH1 0x20
00004719: DUP5
0000471a: ADD
0000471b: SWAP2
0000471c: SWAP1
0000471d: SWAP2
0000471e: MSTORE
0000471f: SWAP2
00004720: SWAP5
00004721: SWAP2
00004722: SWAP4
00004723: POP
00004724: SWAP1
00004725: SWAP2
00004726: POP
00004727: POP
00004728: JUMP
00004729: JUMPDEST
0000472a: PUSH1 0x00
0000472c: DUP1
0000472d: PUSH1 0x00
0000472f: DUP1
00004730: PUSH2 0x4742
00004733: DUP7
00004734: DUP7
00004735: PUSH1 0x20
00004737: SWAP2
00004738: DUP2
00004739: ADD
0000473a: DUP3
0000473b: ADD
0000473c: MLOAD
0000473d: SWAP3
0000473e: SWAP2
0000473f: ADD
00004740: SWAP1
00004741: JUMP
00004742: JUMPDEST
00004743: SWAP1
00004744: SWAP8
00004745: SWAP1
00004746: SWAP7
00004747: POP
00004748: SWAP5
00004749: POP
0000474a: POP
0000474b: POP
0000474c: POP
0000474d: POP
0000474e: JUMP
0000474f: JUMPDEST
00004750: PUSH1 0x60
00004752: PUSH1 0x00
00004754: DUP3
00004755: PUSH1 0x00
00004757: SUB
00004758: PUSH2 0x4772
0000475b: JUMPI
0000475c: POP
0000475d: POP
0000475e: PUSH1 0x40
00004760: DUP1
00004761: MLOAD
00004762: PUSH1 0x00
00004764: DUP2
00004765: MSTORE
00004766: PUSH1 0x20
00004768: DUP2
00004769: ADD
0000476a: SWAP1
0000476b: SWAP2
0000476c: MSTORE
0000476d: DUP3
0000476e: PUSH2 0x47bc
00004771: JUMP
00004772: JUMPDEST
00004773: POP
00004774: POP
00004775: PUSH1 0x40
00004777: MLOAD
00004778: DUP3
00004779: DUP3
0000477a: ADD
0000477b: PUSH1 0x1f
0000477d: DUP4
0000477e: AND
0000477f: DUP1
00004780: PUSH2 0x4787
00004783: JUMPI
00004784: POP
00004785: PUSH1 0x20
00004787: JUMPDEST
00004788: DUP1
00004789: DUP4
0000478a: ADD
0000478b: DUP5
0000478c: DUP2
0000478d: ADD
0000478e: DUP7
0000478f: DUP4
00004790: DUP10
00004791: ADD
00004792: ADD
00004793: JUMPDEST
00004794: DUP2
00004795: DUP4
00004796: LT
00004797: ISZERO
00004798: PUSH2 0x47ab
0000479b: JUMPI
0000479c: DUP1
0000479d: MLOAD
0000479e: DUP4
0000479f: MSTORE
000047a0: PUSH1 0x20
000047a2: SWAP3
000047a3: DUP4
000047a4: ADD
000047a5: SWAP3
000047a6: ADD
000047a7: PUSH2 0x4793
000047aa: JUMP
000047ab: JUMPDEST
000047ac: POP
000047ad: POP
000047ae: DUP5
000047af: DUP5
000047b0: MSTORE
000047b1: PUSH1 0x1f
000047b3: ADD
000047b4: PUSH1 0x1f
000047b6: NOT
000047b7: AND
000047b8: PUSH1 0x40
000047ba: MSTORE
000047bb: POP
000047bc: JUMPDEST
000047bd: SWAP4
000047be: POP
000047bf: SWAP4
000047c0: SWAP2
000047c1: POP
000047c2: POP
000047c3: JUMP
000047c4: JUMPDEST
000047c5: DUP1
000047c6: DUP3
000047c7: MLOAD
000047c8: EQ
000047c9: PUSH2 0x0b5a
000047cc: JUMPI
000047cd: DUP2
000047ce: MLOAD
000047cf: PUSH1 0x40
000047d1: MLOAD
000047d2: PUSH4 0x55c5b3e3
000047d7: PUSH1 0xe1
000047d9: SHL
000047da: DUP2
000047db: MSTORE
000047dc: PUSH1 0x04
000047de: DUP2
000047df: ADD
000047e0: SWAP2
000047e1: SWAP1
000047e2: SWAP2
000047e3: MSTORE
000047e4: PUSH1 0x24
000047e6: DUP2
000047e7: ADD
000047e8: DUP3
000047e9: SWAP1
000047ea: MSTORE
000047eb: PUSH1 0x44
000047ed: ADD
000047ee: PUSH2 0x0eaf
000047f1: JUMP
000047f2: JUMPDEST
000047f3: PUSH1 0x00
000047f5: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180
00004816: PUSH1 0x01
00004818: PUSH1 0x01
0000481a: PUSH1 0x40
0000481c: SHL
0000481d: SUB
0000481e: AND
0000481f: PUSH1 0x00
00004821: SUB
00004822: PUSH2 0x482d
00004825: JUMPI
00004826: POP
00004827: PUSH1 0x00
00004829: PUSH2 0x1d6f
0000482c: JUMP
0000482d: JUMPDEST
0000482e: PUSH2 0x1d15
00004831: DUP4
00004832: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180
00004853: PUSH2 0x485b
00004856: DUP8
00004857: PUSH2 0x1e40
0000485a: JUMP
0000485b: JUMPDEST
0000485c: PUSH2 0xffff
0000485f: DUP7
00004860: AND
00004861: PUSH1 0x00
00004863: SWAP1
00004864: DUP2
00004865: MSTORE
00004866: PUSH1 0x20
00004868: SWAP2
00004869: SWAP1
0000486a: SWAP2
0000486b: MSTORE
0000486c: PUSH1 0x40
0000486e: SWAP1
0000486f: KECCAK256
00004870: SWAP2
00004871: SWAP1
00004872: PUSH2 0x4a91
00004875: JUMP
00004876: JUMPDEST
00004877: PUSH1 0x40
00004879: MLOAD
0000487a: DUP1
0000487b: PUSH1 0x60
0000487d: ADD
0000487e: PUSH1 0x40
00004880: MSTORE
00004881: DUP1
00004882: TIMESTAMP
00004883: PUSH1 0x01
00004885: PUSH1 0x01
00004887: PUSH1 0x40
00004889: SHL
0000488a: SUB
0000488b: AND
0000488c: DUP2
0000488d: MSTORE
0000488e: PUSH1 0x20
00004890: ADD
00004891: DUP4
00004892: PUSH2 0xffff
00004895: AND
00004896: DUP2
00004897: MSTORE
00004898: PUSH1 0x20
0000489a: ADD
0000489b: DUP3
0000489c: PUSH1 0x01
0000489e: PUSH1 0x01
000048a0: PUSH1 0x60
000048a2: SHL
000048a3: SUB
000048a4: NOT
000048a5: AND
000048a6: DUP2
000048a7: MSTORE
000048a8: POP
000048a9: PUSH2 0x48b0
000048ac: PUSH2 0x246e
000048af: JUMP
000048b0: JUMPDEST
000048b1: PUSH1 0x00
000048b3: DUP6
000048b4: DUP2
000048b5: MSTORE
000048b6: PUSH1 0x20
000048b8: SWAP2
000048b9: DUP3
000048ba: MSTORE
000048bb: PUSH1 0x40
000048bd: SWAP1
000048be: DUP2
000048bf: SWAP1
000048c0: KECCAK256
000048c1: DUP4
000048c2: MLOAD
000048c3: DUP2
000048c4: SLOAD
000048c5: SWAP4
000048c6: DUP6
000048c7: ADD
000048c8: MLOAD
000048c9: SWAP5
000048ca: DUP4
000048cb: ADD
000048cc: MLOAD
000048cd: PUSH1 0x60
000048cf: SHR
000048d0: PUSH1 0x01
000048d2: PUSH1 0x50
000048d4: SHL
000048d5: MUL
000048d6: PUSH32 0xffff0000000000000000000000000000000000000000ffffffffffffffffffff
000048f7: PUSH2 0xffff
000048fa: SWAP1
000048fb: SWAP7
000048fc: AND
000048fd: PUSH1 0x01
000048ff: PUSH1 0x40
00004901: SHL
00004902: MUL
00004903: PUSH10 0xffffffffffffffffffff
0000490e: NOT
0000490f: SWAP1
00004910: SWAP6
00004911: AND
00004912: PUSH1 0x01
00004914: PUSH1 0x01
00004916: PUSH1 0x40
00004918: SHL
00004919: SUB
0000491a: SWAP1
0000491b: SWAP3
0000491c: AND
0000491d: SWAP2
0000491e: SWAP1
0000491f: SWAP2
00004920: OR
00004921: SWAP4
00004922: SWAP1
00004923: SWAP4
00004924: OR
00004925: SWAP4
00004926: SWAP1
00004927: SWAP4
00004928: AND
00004929: SWAP2
0000492a: SWAP1
0000492b: SWAP2
0000492c: OR
0000492d: SWAP1
0000492e: SWAP2
0000492f: SSTORE
00004930: MLOAD
00004931: PUSH32 0x7f63c9251d82a933210c2b6d0b0f116252c3c116788120e64e8e8215df6f3162
00004952: SWAP1
00004953: PUSH2 0x2293
00004956: SWAP1
00004957: DUP6
00004958: DUP2
00004959: MSTORE
0000495a: PUSH1 0x20
0000495c: ADD
0000495d: SWAP1
0000495e: JUMP
0000495f: JUMPDEST
00004960: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180
00004981: PUSH1 0x01
00004983: PUSH1 0x01
00004985: PUSH1 0x40
00004987: SHL
00004988: SUB
00004989: AND
0000498a: PUSH1 0x00
0000498c: SUB
0000498d: PUSH2 0x4995
00004990: JUMPI
00004991: POP
00004992: POP
00004993: POP
00004994: JUMP
00004995: JUMPDEST
00004996: PUSH2 0x08f2
00004999: DUP3
0000499a: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180
000049bb: PUSH2 0x49c3
000049be: DUP7
000049bf: PUSH2 0x1e40
000049c2: JUMP
000049c3: JUMPDEST
000049c4: PUSH2 0xffff
000049c7: DUP6
000049c8: AND
000049c9: PUSH1 0x00
000049cb: SWAP1
000049cc: DUP2
000049cd: MSTORE
000049ce: PUSH1 0x20
000049d0: SWAP2
000049d1: SWAP1
000049d2: SWAP2
000049d3: MSTORE
000049d4: PUSH1 0x40
000049d6: SWAP1
000049d7: KECCAK256
000049d8: SWAP2
000049d9: SWAP1
000049da: PUSH2 0x4ac4
000049dd: JUMP
000049de: JUMPDEST
000049df: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180
00004a00: PUSH1 0x01
00004a02: PUSH1 0x01
00004a04: PUSH1 0x40
00004a06: SHL
00004a07: SUB
00004a08: AND
00004a09: PUSH1 0x00
00004a0b: SUB
00004a0c: PUSH2 0x4a13
00004a0f: JUMPI
00004a10: POP
00004a11: POP
00004a12: JUMP
00004a13: JUMPDEST
00004a14: PUSH2 0x0b5a
00004a17: DUP2
00004a18: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180
00004a39: PUSH2 0x4a41
00004a3c: DUP6
00004a3d: PUSH2 0x2087
00004a40: JUMP
00004a41: JUMPDEST
00004a42: SWAP2
00004a43: SWAP1
00004a44: PUSH2 0x4b49
00004a47: JUMP
00004a48: JUMPDEST
00004a49: PUSH1 0x60
00004a4b: PUSH2 0x1d15
00004a4e: DUP5
00004a4f: DUP5
00004a50: PUSH1 0x00
00004a52: DUP6
00004a53: PUSH2 0x4c4f
00004a56: JUMP
00004a57: JUMPDEST
00004a58: PUSH2 0x0bd4
00004a5b: PUSH2 0x3f35
00004a5e: JUMP
00004a5f: JUMPDEST
00004a60: PUSH2 0x4a67
00004a63: PUSH2 0x3f35
00004a66: JUMP
00004a67: JUMPDEST
00004a68: PUSH2 0x08af
00004a6b: DUP2
00004a6c: PUSH2 0x4d1f
00004a6f: JUMP
00004a70: JUMPDEST
00004a71: PUSH2 0x4a78
00004a74: PUSH2 0x3f35
00004a77: JUMP
00004a78: JUMPDEST
00004a79: PUSH2 0x4a80
00004a7c: PUSH2 0x4a57
00004a7f: JUMP
00004a80: JUMPDEST
00004a81: PUSH2 0x08af
00004a84: DUP2
00004a85: PUSH2 0x4d64
00004a88: JUMP
00004a89: JUMPDEST
00004a8a: PUSH2 0x289d
00004a8d: PUSH2 0x3f35
00004a90: JUMP
00004a91: JUMPDEST
00004a92: PUSH1 0x00
00004a94: DUP2
00004a95: PUSH1 0x01
00004a97: PUSH1 0x01
00004a99: PUSH1 0x40
00004a9b: SHL
00004a9c: SUB
00004a9d: AND
00004a9e: PUSH1 0x00
00004aa0: SUB
00004aa1: PUSH2 0x4aac
00004aa4: JUMPI
00004aa5: POP
00004aa6: PUSH1 0x00
00004aa8: PUSH2 0x1d6f
00004aab: JUMP
00004aac: JUMPDEST
00004aad: PUSH1 0x00
00004aaf: PUSH2 0x4ab8
00004ab2: DUP6
00004ab3: DUP5
00004ab4: PUSH2 0x20de
00004ab7: JUMP
00004ab8: JUMPDEST
00004ab9: SWAP1
00004aba: POP
00004abb: PUSH2 0x0b3f
00004abe: DUP2
00004abf: DUP6
00004ac0: PUSH2 0x4d6c
00004ac3: JUMP
00004ac4: JUMPDEST
00004ac5: DUP1
00004ac6: PUSH1 0x01
00004ac8: PUSH1 0x01
00004aca: PUSH1 0x40
00004acc: SHL
00004acd: SUB
00004ace: AND
00004acf: PUSH1 0x00
00004ad1: SUB
00004ad2: PUSH2 0x4ada
00004ad5: JUMPI
00004ad6: POP
00004ad7: POP
00004ad8: POP
00004ad9: JUMP
00004ada: JUMPDEST
00004adb: PUSH1 0x00
00004add: PUSH2 0x4ae6
00004ae0: DUP5
00004ae1: DUP4
00004ae2: PUSH2 0x20de
00004ae5: JUMP
00004ae6: JUMPDEST
00004ae7: DUP5
00004ae8: SLOAD
00004ae9: PUSH8 0xffffffffffffffff
00004af2: PUSH1 0x90
00004af4: SHL
00004af5: NOT
00004af6: AND
00004af7: PUSH1 0x01
00004af9: PUSH1 0x90
00004afb: SHL
00004afc: TIMESTAMP
00004afd: PUSH1 0x01
00004aff: PUSH1 0x01
00004b01: PUSH1 0x40
00004b03: SHL
00004b04: SUB
00004b05: AND
00004b06: MUL
00004b07: OR
00004b08: DUP6
00004b09: SSTORE
00004b0a: SWAP1
00004b0b: POP
00004b0c: PUSH2 0x4b15
00004b0f: DUP2
00004b10: DUP5
00004b11: PUSH2 0x4d91
00004b14: JUMP
00004b15: JUMPDEST
00004b16: DUP5
00004b17: SLOAD
00004b18: PUSH1 0x01
00004b1a: PUSH1 0x01
00004b1c: PUSH1 0x48
00004b1e: SHL
00004b1f: SUB
00004b20: SWAP2
00004b21: SWAP1
00004b22: SWAP2
00004b23: AND
00004b24: PUSH1 0x01
00004b26: PUSH1 0x48
00004b28: SHL
00004b29: MUL
00004b2a: PUSH18 0xffffffffffffffffff000000000000000000
00004b3d: NOT
00004b3e: SWAP1
00004b3f: SWAP2
00004b40: AND
00004b41: OR
00004b42: SWAP1
00004b43: SWAP4
00004b44: SSTORE
00004b45: POP
00004b46: POP
00004b47: POP
00004b48: JUMP
00004b49: JUMPDEST
00004b4a: DUP1
00004b4b: PUSH1 0x01
00004b4d: PUSH1 0x01
00004b4f: PUSH1 0x40
00004b51: SHL
00004b52: SUB
00004b53: AND
00004b54: PUSH1 0x00
00004b56: SUB
00004b57: PUSH2 0x4b5f
00004b5a: JUMPI
00004b5b: POP
00004b5c: POP
00004b5d: POP
00004b5e: JUMP
00004b5f: JUMPDEST
00004b60: PUSH1 0x00
00004b62: PUSH2 0x4b6b
00004b65: DUP5
00004b66: DUP4
00004b67: PUSH2 0x20de
00004b6a: JUMP
00004b6b: JUMPDEST
00004b6c: DUP5
00004b6d: SLOAD
00004b6e: PUSH8 0xffffffffffffffff
00004b77: PUSH1 0x90
00004b79: SHL
00004b7a: NOT
00004b7b: DUP2
00004b7c: AND
00004b7d: PUSH1 0x01
00004b7f: PUSH1 0x90
00004b81: SHL
00004b82: TIMESTAMP
00004b83: PUSH1 0x01
00004b85: PUSH1 0x01
00004b87: PUSH1 0x40
00004b89: SHL
00004b8a: SUB
00004b8b: AND
00004b8c: MUL
00004b8d: SWAP1
00004b8e: DUP2
00004b8f: OR
00004b90: DUP8
00004b91: SSTORE
00004b92: SWAP2
00004b93: SWAP3
00004b94: POP
00004b95: PUSH2 0x4b15
00004b98: SWAP2
00004b99: PUSH1 0x01
00004b9b: PUSH1 0x01
00004b9d: PUSH1 0x48
00004b9f: SHL
00004ba0: SUB
00004ba1: SWAP2
00004ba2: DUP3
00004ba3: AND
00004ba4: SWAP1
00004ba5: DUP3
00004ba6: AND
00004ba7: OR
00004ba8: SWAP1
00004ba9: PUSH2 0x4bb4
00004bac: SWAP1
00004bad: DUP5
00004bae: AND
00004baf: DUP7
00004bb0: PUSH2 0x4dd6
00004bb3: JUMP
00004bb4: JUMPDEST
00004bb5: PUSH1 0x01
00004bb7: PUSH1 0x01
00004bb9: PUSH1 0x48
00004bbb: SHL
00004bbc: SUB
00004bbd: AND
00004bbe: SWAP1
00004bbf: PUSH2 0x4e39
00004bc2: JUMP
00004bc3: JUMPDEST
00004bc4: PUSH1 0x40
00004bc6: DUP1
00004bc7: MLOAD
00004bc8: PUSH1 0x60
00004bca: DUP2
00004bcb: ADD
00004bcc: DUP3
00004bcd: MSTORE
00004bce: PUSH1 0x00
00004bd0: DUP1
00004bd1: DUP3
00004bd2: MSTORE
00004bd3: PUSH1 0x20
00004bd5: DUP3
00004bd6: ADD
00004bd7: DUP2
00004bd8: SWAP1
00004bd9: MSTORE
00004bda: SWAP2
00004bdb: DUP2
00004bdc: ADD
00004bdd: DUP3
00004bde: SWAP1
00004bdf: MSTORE
00004be0: SWAP1
00004be1: PUSH2 0x4bea
00004be4: DUP5
00004be5: DUP5
00004be6: PUSH2 0x4729
00004be9: JUMP
00004bea: JUMPDEST
00004beb: SWAP1
00004bec: DUP4
00004bed: MSTORE
00004bee: SWAP3
00004bef: POP
00004bf0: PUSH2 0x4bf9
00004bf3: DUP5
00004bf4: DUP5
00004bf5: PUSH2 0x4729
00004bf8: JUMP
00004bf9: JUMPDEST
00004bfa: PUSH1 0x20
00004bfc: DUP5
00004bfd: ADD
00004bfe: SWAP2
00004bff: SWAP1
00004c00: SWAP2
00004c01: MSTORE
00004c02: PUSH1 0x01
00004c04: SWAP5
00004c05: DUP2
00004c06: ADD
00004c07: DUP6
00004c08: ADD
00004c09: MLOAD
00004c0a: PUSH1 0xff
00004c0c: AND
00004c0d: PUSH1 0x40
00004c0f: DUP5
00004c10: ADD
00004c11: MSTORE
00004c12: SWAP2
00004c13: SWAP5
00004c14: SWAP4
00004c15: SWAP1
00004c16: SWAP2
00004c17: ADD
00004c18: SWAP3
00004c19: SWAP2
00004c1a: POP
00004c1b: POP
00004c1c: JUMP
00004c1d: JUMPDEST
00004c1e: PUSH1 0x40
00004c20: DUP1
00004c21: MLOAD
00004c22: DUP1
00004c23: DUP3
00004c24: ADD
00004c25: SWAP1
00004c26: SWAP2
00004c27: MSTORE
00004c28: PUSH1 0x00
00004c2a: DUP1
00004c2b: DUP3
00004c2c: MSTORE
00004c2d: PUSH1 0x20
00004c2f: DUP3
00004c30: ADD
00004c31: DUP2
00004c32: SWAP1
00004c33: MSTORE
00004c34: PUSH1 0x02
00004c36: DUP5
00004c37: DUP5
00004c38: ADD
00004c39: DUP2
00004c3a: ADD
00004c3b: MLOAD
00004c3c: PUSH2 0xffff
00004c3f: AND
00004c40: DUP4
00004c41: MSTORE
00004c42: SWAP1
00004c43: SWAP3
00004c44: ADD
00004c45: SWAP2
00004c46: PUSH2 0x4716
00004c49: DUP5
00004c4a: DUP5
00004c4b: PUSH2 0x4729
00004c4e: JUMP
00004c4f: JUMPDEST
00004c50: PUSH1 0x60
00004c52: DUP3
00004c53: SELFBALANCE
00004c54: LT
00004c55: ISZERO
00004c56: PUSH2 0x4cb0
00004c59: JUMPI
00004c5a: PUSH1 0x40
00004c5c: MLOAD
00004c5d: PUSH3 0x461bcd
00004c61: PUSH1 0xe5
00004c63: SHL
00004c64: DUP2
00004c65: MSTORE
00004c66: PUSH1 0x20
00004c68: PUSH1 0x04
00004c6a: DUP3
00004c6b: ADD
00004c6c: MSTORE
00004c6d: PUSH1 0x26
00004c6f: PUSH1 0x24
00004c71: DUP3
00004c72: ADD
00004c73: MSTORE
00004c74: PUSH32 0x416464726573733a20696e73756666696369656e742062616c616e636520666f
00004c95: PUSH1 0x44
00004c97: DUP3
00004c98: ADD
00004c99: MSTORE
00004c9a: PUSH6 0x1c8818d85b1b
00004ca1: PUSH1 0xd2
00004ca3: SHL
00004ca4: PUSH1 0x64
00004ca6: DUP3
00004ca7: ADD
00004ca8: MSTORE
00004ca9: PUSH1 0x84
00004cab: ADD
00004cac: PUSH2 0x0eaf
00004caf: JUMP
00004cb0: JUMPDEST
00004cb1: PUSH1 0x00
00004cb3: DUP1
00004cb4: DUP7
00004cb5: PUSH1 0x01
00004cb7: PUSH1 0x01
00004cb9: PUSH1 0xa0
00004cbb: SHL
00004cbc: SUB
00004cbd: AND
00004cbe: DUP6
00004cbf: DUP8
00004cc0: PUSH1 0x40
00004cc2: MLOAD
00004cc3: PUSH2 0x4ccc
00004cc6: SWAP2
00004cc7: SWAP1
00004cc8: PUSH2 0x5b02
00004ccb: JUMP
00004ccc: JUMPDEST
00004ccd: PUSH1 0x00
00004ccf: PUSH1 0x40
00004cd1: MLOAD
00004cd2: DUP1
00004cd3: DUP4
00004cd4: SUB
00004cd5: DUP2
00004cd6: DUP6
00004cd7: DUP8
00004cd8: GAS
00004cd9: CALL
00004cda: SWAP3
00004cdb: POP
00004cdc: POP
00004cdd: POP
00004cde: RETURNDATASIZE
00004cdf: DUP1
00004ce0: PUSH1 0x00
00004ce2: DUP2
00004ce3: EQ
00004ce4: PUSH2 0x4d09
00004ce7: JUMPI
00004ce8: PUSH1 0x40
00004cea: MLOAD
00004ceb: SWAP2
00004cec: POP
00004ced: PUSH1 0x1f
00004cef: NOT
00004cf0: PUSH1 0x3f
00004cf2: RETURNDATASIZE
00004cf3: ADD
00004cf4: AND
00004cf5: DUP3
00004cf6: ADD
00004cf7: PUSH1 0x40
00004cf9: MSTORE
00004cfa: RETURNDATASIZE
00004cfb: DUP3
00004cfc: MSTORE
00004cfd: RETURNDATASIZE
00004cfe: PUSH1 0x00
00004d00: PUSH1 0x20
00004d02: DUP5
00004d03: ADD
00004d04: RETURNDATACOPY
00004d05: PUSH2 0x4d0e
00004d08: JUMP
00004d09: JUMPDEST
00004d0a: PUSH1 0x60
00004d0c: SWAP2
00004d0d: POP
00004d0e: JUMPDEST
00004d0f: POP
00004d10: SWAP2
00004d11: POP
00004d12: SWAP2
00004d13: POP
00004d14: PUSH2 0x21a0
00004d17: DUP8
00004d18: DUP4
00004d19: DUP4
00004d1a: DUP8
00004d1b: PUSH2 0x4e65
00004d1e: JUMP
00004d1f: JUMPDEST
00004d20: PUSH2 0x4d27
00004d23: PUSH2 0x3f35
00004d26: JUMP
00004d27: JUMPDEST
00004d28: PUSH1 0x00
00004d2a: PUSH2 0x4d31
00004d2d: PUSH2 0x2b77
00004d30: JUMP
00004d31: JUMPDEST
00004d32: PUSH1 0x01
00004d34: DUP2
00004d35: SSTORE
00004d36: SWAP1
00004d37: POP
00004d38: PUSH1 0x00
00004d3a: PUSH2 0x4d41
00004d3d: PUSH2 0x1c59
00004d40: JUMP
00004d41: JUMPDEST
00004d42: DUP1
00004d43: SLOAD
00004d44: PUSH1 0x01
00004d46: PUSH1 0x01
00004d48: PUSH1 0xa0
00004d4a: SHL
00004d4b: SUB
00004d4c: NOT
00004d4d: AND
00004d4e: PUSH1 0x01
00004d50: PUSH1 0x01
00004d52: PUSH1 0xa0
00004d54: SHL
00004d55: SUB
00004d56: SWAP5
00004d57: SWAP1
00004d58: SWAP5
00004d59: AND
00004d5a: SWAP4
00004d5b: SWAP1
00004d5c: SWAP4
00004d5d: OR
00004d5e: SWAP1
00004d5f: SWAP3
00004d60: SSTORE
00004d61: POP
00004d62: POP
00004d63: JUMP
00004d64: JUMPDEST
00004d65: PUSH2 0x18d8
00004d68: PUSH2 0x3f35
00004d6b: JUMP
00004d6c: JUMPDEST
00004d6d: PUSH1 0x00
00004d6f: PUSH2 0x4d78
00004d72: DUP4
00004d73: DUP4
00004d74: PUSH2 0x4ede
00004d77: JUMP
00004d78: JUMPDEST
00004d79: POP
00004d7a: PUSH1 0x01
00004d7c: PUSH1 0x01
00004d7e: PUSH1 0x40
00004d80: SHL
00004d81: SUB
00004d82: PUSH1 0x08
00004d84: SWAP2
00004d85: DUP3
00004d86: SHR
00004d87: DUP2
00004d88: AND
00004d89: SWAP3
00004d8a: SWAP1
00004d8b: SWAP2
00004d8c: SHR
00004d8d: AND
00004d8e: LT
00004d8f: SWAP1
00004d90: JUMP
00004d91: JUMPDEST
00004d92: PUSH1 0x00
00004d94: PUSH2 0x4d9d
00004d97: DUP4
00004d98: DUP4
00004d99: PUSH2 0x4ede
00004d9c: JUMP
00004d9d: JUMPDEST
00004d9e: PUSH2 0x1d6f
00004da1: PUSH2 0x4dbd
00004da4: PUSH1 0x01
00004da6: PUSH1 0x01
00004da8: PUSH1 0x40
00004daa: SHL
00004dab: SUB
00004dac: PUSH1 0x08
00004dae: DUP6
00004daf: DUP2
00004db0: SHR
00004db1: DUP3
00004db2: AND
00004db3: SWAP2
00004db4: SWAP1
00004db5: DUP8
00004db6: SWAP1
00004db7: SHR
00004db8: AND
00004db9: PUSH2 0x5ea0
00004dbc: JUMP
00004dbd: JUMPDEST
00004dbe: DUP5
00004dbf: PUSH1 0xff
00004dc1: AND
00004dc2: PUSH1 0x08
00004dc4: SWAP2
00004dc5: SWAP1
00004dc6: SWAP2
00004dc7: SHL
00004dc8: PUSH9 0xffffffffffffffff00
00004dd2: AND
00004dd3: OR
00004dd4: SWAP1
00004dd5: JUMP
00004dd6: JUMPDEST
00004dd7: PUSH1 0x00
00004dd9: PUSH2 0x4de2
00004ddc: DUP4
00004ddd: DUP4
00004dde: PUSH2 0x4ede
00004de1: JUMP
00004de2: JUMPDEST
00004de3: PUSH1 0x08
00004de5: DUP4
00004de6: DUP2
00004de7: SHR
00004de8: PUSH1 0x01
00004dea: PUSH1 0x01
00004dec: PUSH1 0x40
00004dee: SHL
00004def: SUB
00004df0: SWAP1
00004df1: DUP2
00004df2: AND
00004df3: SWAP2
00004df4: DUP5
00004df5: SWAP1
00004df6: SHR
00004df7: DUP2
00004df8: AND
00004df9: DUP3
00004dfa: DUP2
00004dfb: ADD
00004dfc: SWAP3
00004dfd: SWAP2
00004dfe: DUP4
00004dff: GT
00004e00: PUSH2 0x4e09
00004e03: JUMPI
00004e04: DUP3
00004e05: PUSH2 0x4e12
00004e08: JUMP
00004e09: JUMPDEST
00004e0a: PUSH1 0x01
00004e0c: PUSH1 0x01
00004e0e: PUSH1 0x40
00004e10: SHL
00004e11: SUB
00004e12: JUMPDEST
00004e13: SWAP3
00004e14: POP
00004e15: PUSH2 0x17c8
00004e18: PUSH2 0x4e20
00004e1b: DUP5
00004e1c: PUSH2 0x2e4b
00004e1f: JUMP
00004e20: JUMPDEST
00004e21: DUP8
00004e22: PUSH1 0xff
00004e24: AND
00004e25: PUSH1 0x08
00004e27: SWAP2
00004e28: SWAP1
00004e29: SWAP2
00004e2a: SHL
00004e2b: PUSH9 0xffffffffffffffff00
00004e35: AND
00004e36: OR
00004e37: SWAP1
00004e38: JUMP
00004e39: JUMPDEST
00004e3a: PUSH1 0x00
00004e3c: PUSH2 0x4e45
00004e3f: DUP4
00004e40: DUP4
00004e41: PUSH2 0x4ede
00004e44: JUMP
00004e45: JUMPDEST
00004e46: PUSH1 0x08
00004e48: DUP3
00004e49: DUP2
00004e4a: SHR
00004e4b: PUSH1 0x01
00004e4d: PUSH1 0x01
00004e4f: PUSH1 0x40
00004e51: SHL
00004e52: SUB
00004e53: SWAP1
00004e54: DUP2
00004e55: AND
00004e56: SWAP2
00004e57: DUP6
00004e58: SWAP1
00004e59: SHR
00004e5a: AND
00004e5b: LT
00004e5c: PUSH2 0x2ddb
00004e5f: JUMPI
00004e60: DUP2
00004e61: PUSH2 0x1d6f
00004e64: JUMP
00004e65: JUMPDEST
00004e66: PUSH1 0x60
00004e68: DUP4
00004e69: ISZERO
00004e6a: PUSH2 0x4ed4
00004e6d: JUMPI
00004e6e: DUP3
00004e6f: MLOAD
00004e70: PUSH1 0x00
00004e72: SUB
00004e73: PUSH2 0x4ecd
00004e76: JUMPI
00004e77: PUSH1 0x01
00004e79: PUSH1 0x01
00004e7b: PUSH1 0xa0
00004e7d: SHL
00004e7e: SUB
00004e7f: DUP6
00004e80: AND
00004e81: EXTCODESIZE
00004e82: PUSH2 0x4ecd
00004e85: JUMPI
00004e86: PUSH1 0x40
00004e88: MLOAD
00004e89: PUSH3 0x461bcd
00004e8d: PUSH1 0xe5
00004e8f: SHL
00004e90: DUP2
00004e91: MSTORE
00004e92: PUSH1 0x20
00004e94: PUSH1 0x04
00004e96: DUP3
00004e97: ADD
00004e98: MSTORE
00004e99: PUSH1 0x1d
00004e9b: PUSH1 0x24
00004e9d: DUP3
00004e9e: ADD
00004e9f: MSTORE
00004ea0: PUSH32 0x416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000
00004ec1: PUSH1 0x44
00004ec3: DUP3
00004ec4: ADD
00004ec5: MSTORE
00004ec6: PUSH1 0x64
00004ec8: ADD
00004ec9: PUSH2 0x0eaf
00004ecc: JUMP
00004ecd: JUMPDEST
00004ece: POP
00004ecf: DUP2
00004ed0: PUSH2 0x1d15
00004ed3: JUMP
00004ed4: JUMPDEST
00004ed5: PUSH2 0x1d15
00004ed8: DUP4
00004ed9: DUP4
00004eda: PUSH2 0x4f13
00004edd: JUMP
00004ede: JUMPDEST
00004edf: DUP2
00004ee0: DUP2
00004ee1: PUSH1 0xff
00004ee3: DUP1
00004ee4: DUP4
00004ee5: AND
00004ee6: SWAP1
00004ee7: DUP3
00004ee8: AND
00004ee9: EQ
00004eea: PUSH2 0x0819
00004eed: JUMPI
00004eee: PUSH1 0x40
00004ef0: MLOAD
00004ef1: PUSH4 0x5ce6db61
00004ef6: PUSH1 0xe1
00004ef8: SHL
00004ef9: DUP2
00004efa: MSTORE
00004efb: PUSH1 0xff
00004efd: DUP1
00004efe: DUP5
00004eff: AND
00004f00: PUSH1 0x04
00004f02: DUP4
00004f03: ADD
00004f04: MSTORE
00004f05: DUP3
00004f06: AND
00004f07: PUSH1 0x24
00004f09: DUP3
00004f0a: ADD
00004f0b: MSTORE
00004f0c: PUSH1 0x44
00004f0e: ADD
00004f0f: PUSH2 0x0eaf
00004f12: JUMP
00004f13: JUMPDEST
00004f14: DUP2
00004f15: MLOAD
00004f16: ISZERO
00004f17: PUSH2 0x4f23
00004f1a: JUMPI
00004f1b: DUP2
00004f1c: MLOAD
00004f1d: DUP1
00004f1e: DUP4
00004f1f: PUSH1 0x20
00004f21: ADD
00004f22: REVERT
00004f23: JUMPDEST
00004f24: DUP1
00004f25: PUSH1 0x40
00004f27: MLOAD
00004f28: PUSH3 0x461bcd
00004f2c: PUSH1 0xe5
00004f2e: SHL
00004f2f: DUP2
00004f30: MSTORE
00004f31: PUSH1 0x04
00004f33: ADD
00004f34: PUSH2 0x0eaf
00004f37: SWAP2
00004f38: SWAP1
00004f39: PUSH2 0x5276
00004f3c: JUMP
00004f3d: JUMPDEST
00004f3e: POP
00004f3f: DUP1
00004f40: SLOAD
00004f41: PUSH2 0x4f49
00004f44: SWAP1
00004f45: PUSH2 0x5904
00004f48: JUMP
00004f49: JUMPDEST
00004f4a: PUSH1 0x00
00004f4c: DUP3
00004f4d: SSTORE
00004f4e: DUP1
00004f4f: PUSH1 0x1f
00004f51: LT
00004f52: PUSH2 0x4f59
00004f55: JUMPI
00004f56: POP
00004f57: POP
00004f58: JUMP
00004f59: JUMPDEST
00004f5a: PUSH1 0x1f
00004f5c: ADD
00004f5d: PUSH1 0x20
00004f5f: SWAP1
00004f60: DIV
00004f61: SWAP1
00004f62: PUSH1 0x00
00004f64: MSTORE
00004f65: PUSH1 0x20
00004f67: PUSH1 0x00
00004f69: KECCAK256
00004f6a: SWAP1
00004f6b: DUP2
00004f6c: ADD
00004f6d: SWAP1
00004f6e: PUSH2 0x08af
00004f71: SWAP2
00004f72: SWAP1
00004f73: PUSH2 0x4fed
00004f76: JUMP
00004f77: JUMPDEST
00004f78: PUSH1 0x40
00004f7a: MLOAD
00004f7b: DUP1
00004f7c: PUSH1 0xa0
00004f7e: ADD
00004f7f: PUSH1 0x40
00004f81: MSTORE
00004f82: DUP1
00004f83: PUSH1 0x00
00004f85: PUSH1 0x01
00004f87: PUSH1 0x01
00004f89: PUSH1 0x48
00004f8b: SHL
00004f8c: SUB
00004f8d: AND
00004f8e: DUP2
00004f8f: MSTORE
00004f90: PUSH1 0x20
00004f92: ADD
00004f93: PUSH2 0x4fd4
00004f96: PUSH1 0x40
00004f98: DUP1
00004f99: MLOAD
00004f9a: PUSH1 0xa0
00004f9c: DUP2
00004f9d: ADD
00004f9e: DUP3
00004f9f: MSTORE
00004fa0: PUSH1 0x00
00004fa2: DUP2
00004fa3: DUP4
00004fa4: ADD
00004fa5: DUP2
00004fa6: DUP2
00004fa7: MSTORE
00004fa8: PUSH1 0x60
00004faa: DUP4
00004fab: ADD
00004fac: DUP3
00004fad: SWAP1
00004fae: MSTORE
00004faf: PUSH1 0x80
00004fb1: DUP4
00004fb2: ADD
00004fb3: DUP3
00004fb4: SWAP1
00004fb5: MSTORE
00004fb6: DUP3
00004fb7: MSTORE
00004fb8: DUP3
00004fb9: MLOAD
00004fba: DUP1
00004fbb: DUP5
00004fbc: ADD
00004fbd: SWAP1
00004fbe: SWAP4
00004fbf: MSTORE
00004fc0: DUP1
00004fc1: DUP4
00004fc2: MSTORE
00004fc3: PUSH1 0x20
00004fc5: DUP4
00004fc6: DUP2
00004fc7: ADD
00004fc8: SWAP2
00004fc9: SWAP1
00004fca: SWAP2
00004fcb: MSTORE
00004fcc: SWAP1
00004fcd: SWAP2
00004fce: SWAP1
00004fcf: DUP3
00004fd0: ADD
00004fd1: MSTORE
00004fd2: SWAP1
00004fd3: JUMP
00004fd4: JUMPDEST
00004fd5: DUP2
00004fd6: MSTORE
00004fd7: PUSH1 0x00
00004fd9: PUSH1 0x20
00004fdb: DUP3
00004fdc: ADD
00004fdd: DUP2
00004fde: SWAP1
00004fdf: MSTORE
00004fe0: PUSH1 0x40
00004fe2: DUP3
00004fe3: ADD
00004fe4: MSTORE
00004fe5: PUSH1 0x60
00004fe7: SWAP1
00004fe8: DUP2
00004fe9: ADD
00004fea: MSTORE
00004feb: SWAP1
00004fec: JUMP
00004fed: JUMPDEST
00004fee: JUMPDEST
00004fef: DUP1
00004ff0: DUP3
00004ff1: GT
00004ff2: ISZERO
00004ff3: PUSH2 0x2593
00004ff6: JUMPI
00004ff7: PUSH1 0x00
00004ff9: DUP2
00004ffa: SSTORE
00004ffb: PUSH1 0x01
00004ffd: ADD
00004ffe: PUSH2 0x4fee
00005001: JUMP
00005002: JUMPDEST
00005003: PUSH1 0x01
00005005: PUSH1 0x01
00005007: PUSH1 0xa0
00005009: SHL
0000500a: SUB
0000500b: DUP2
0000500c: AND
0000500d: DUP2
0000500e: EQ
0000500f: PUSH2 0x08af
00005012: JUMPI
00005013: PUSH1 0x00
00005015: DUP1
00005016: REVERT
00005017: JUMPDEST
00005018: DUP1
00005019: CALLDATALOAD
0000501a: PUSH2 0x15d3
0000501d: DUP2
0000501e: PUSH2 0x5002
00005021: JUMP
00005022: JUMPDEST
00005023: PUSH1 0x00
00005025: PUSH1 0x20
00005027: DUP3
00005028: DUP5
00005029: SUB
0000502a: SLT
0000502b: ISZERO
0000502c: PUSH2 0x5034
0000502f: JUMPI
00005030: PUSH1 0x00
00005032: DUP1
00005033: REVERT
00005034: JUMPDEST
00005035: DUP2
00005036: CALLDATALOAD
00005037: PUSH2 0x1d6f
0000503a: DUP2
0000503b: PUSH2 0x5002
0000503e: JUMP
0000503f: JUMPDEST
00005040: PUSH1 0x00
00005042: PUSH1 0x40
00005044: DUP3
00005045: DUP5
00005046: SUB
00005047: SLT
00005048: ISZERO
00005049: PUSH2 0x5051
0000504c: JUMPI
0000504d: PUSH1 0x00
0000504f: DUP1
00005050: REVERT
00005051: JUMPDEST
00005052: POP
00005053: SWAP2
00005054: SWAP1
00005055: POP
00005056: JUMP
00005057: JUMPDEST
00005058: PUSH2 0xffff
0000505b: DUP2
0000505c: AND
0000505d: DUP2
0000505e: EQ
0000505f: PUSH2 0x08af
00005062: JUMPI
00005063: PUSH1 0x00
00005065: DUP1
00005066: REVERT
00005067: JUMPDEST
00005068: DUP1
00005069: CALLDATALOAD
0000506a: PUSH2 0x15d3
0000506d: DUP2
0000506e: PUSH2 0x5057
00005071: JUMP
00005072: JUMPDEST
00005073: PUSH1 0x00
00005075: DUP1
00005076: PUSH1 0x00
00005078: PUSH1 0x80
0000507a: DUP5
0000507b: DUP7
0000507c: SUB
0000507d: SLT
0000507e: ISZERO
0000507f: PUSH2 0x5087
00005082: JUMPI
00005083: PUSH1 0x00
00005085: DUP1
00005086: REVERT
00005087: JUMPDEST
00005088: PUSH2 0x5091
0000508b: DUP6
0000508c: DUP6
0000508d: PUSH2 0x503f
00005090: JUMP
00005091: JUMPDEST
00005092: SWAP3
00005093: POP
00005094: PUSH1 0x40
00005096: DUP5
00005097: ADD
00005098: CALLDATALOAD
00005099: SWAP2
0000509a: POP
0000509b: PUSH1 0x60
0000509d: DUP5
0000509e: ADD
0000509f: CALLDATALOAD
000050a0: PUSH2 0x50a8
000050a3: DUP2
000050a4: PUSH2 0x5057
000050a7: JUMP
000050a8: JUMPDEST
000050a9: DUP1
000050aa: SWAP2
000050ab: POP
000050ac: POP
000050ad: SWAP3
000050ae: POP
000050af: SWAP3
000050b0: POP
000050b1: SWAP3
000050b2: JUMP
000050b3: JUMPDEST
000050b4: PUSH4 0x4e487b71
000050b9: PUSH1 0xe0
000050bb: SHL
000050bc: PUSH1 0x00
000050be: MSTORE
000050bf: PUSH1 0x41
000050c1: PUSH1 0x04
000050c3: MSTORE
000050c4: PUSH1 0x24
000050c6: PUSH1 0x00
000050c8: REVERT
000050c9: JUMPDEST
000050ca: PUSH1 0x40
000050cc: DUP1
000050cd: MLOAD
000050ce: SWAP1
000050cf: DUP2
000050d0: ADD
000050d1: PUSH1 0x01
000050d3: PUSH1 0x01
000050d5: PUSH1 0x40
000050d7: SHL
000050d8: SUB
000050d9: DUP2
000050da: GT
000050db: DUP3
000050dc: DUP3
000050dd: LT
000050de: OR
000050df: ISZERO
000050e0: PUSH2 0x50eb
000050e3: JUMPI
000050e4: PUSH2 0x50eb
000050e7: PUSH2 0x50b3
000050ea: JUMP
000050eb: JUMPDEST
000050ec: PUSH1 0x40
000050ee: MSTORE
000050ef: SWAP1
000050f0: JUMP
000050f1: JUMPDEST
000050f2: PUSH1 0x40
000050f4: MLOAD
000050f5: PUSH1 0xa0
000050f7: DUP2
000050f8: ADD
000050f9: PUSH1 0x01
000050fb: PUSH1 0x01
000050fd: PUSH1 0x40
000050ff: SHL
00005100: SUB
00005101: DUP2
00005102: GT
00005103: DUP3
00005104: DUP3
00005105: LT
00005106: OR
00005107: ISZERO
00005108: PUSH2 0x50eb
0000510b: JUMPI
0000510c: PUSH2 0x50eb
0000510f: PUSH2 0x50b3
00005112: JUMP
00005113: JUMPDEST
00005114: PUSH1 0x40
00005116: MLOAD
00005117: PUSH2 0x0100
0000511a: DUP2
0000511b: ADD
0000511c: PUSH1 0x01
0000511e: PUSH1 0x01
00005120: PUSH1 0x40
00005122: SHL
00005123: SUB
00005124: DUP2
00005125: GT
00005126: DUP3
00005127: DUP3
00005128: LT
00005129: OR
0000512a: ISZERO
0000512b: PUSH2 0x50eb
0000512e: JUMPI
0000512f: PUSH2 0x50eb
00005132: PUSH2 0x50b3
00005135: JUMP
00005136: JUMPDEST
00005137: PUSH1 0x40
00005139: MLOAD
0000513a: PUSH1 0xe0
0000513c: DUP2
0000513d: ADD
0000513e: PUSH1 0x01
00005140: PUSH1 0x01
00005142: PUSH1 0x40
00005144: SHL
00005145: SUB
00005146: DUP2
00005147: GT
00005148: DUP3
00005149: DUP3
0000514a: LT
0000514b: OR
0000514c: ISZERO
0000514d: PUSH2 0x50eb
00005150: JUMPI
00005151: PUSH2 0x50eb
00005154: PUSH2 0x50b3
00005157: JUMP
00005158: JUMPDEST
00005159: PUSH1 0x40
0000515b: MLOAD
0000515c: PUSH1 0x1f
0000515e: DUP3
0000515f: ADD
00005160: PUSH1 0x1f
00005162: NOT
00005163: AND
00005164: DUP2
00005165: ADD
00005166: PUSH1 0x01
00005168: PUSH1 0x01
0000516a: PUSH1 0x40
0000516c: SHL
0000516d: SUB
0000516e: DUP2
0000516f: GT
00005170: DUP3
00005171: DUP3
00005172: LT
00005173: OR
00005174: ISZERO
00005175: PUSH2 0x5180
00005178: JUMPI
00005179: PUSH2 0x5180
0000517c: PUSH2 0x50b3
0000517f: JUMP
00005180: JUMPDEST
00005181: PUSH1 0x40
00005183: MSTORE
00005184: SWAP2
00005185: SWAP1
00005186: POP
00005187: JUMP
00005188: JUMPDEST
00005189: PUSH1 0x00
0000518b: PUSH1 0x40
0000518d: DUP3
0000518e: DUP5
0000518f: SUB
00005190: SLT
00005191: ISZERO
00005192: PUSH2 0x519a
00005195: JUMPI
00005196: PUSH1 0x00
00005198: DUP1
00005199: REVERT
0000519a: JUMPDEST
0000519b: PUSH2 0x51a2
0000519e: PUSH2 0x50c9
000051a1: JUMP
000051a2: JUMPDEST
000051a3: SWAP1
000051a4: POP
000051a5: DUP2
000051a6: CALLDATALOAD
000051a7: PUSH2 0x51af
000051aa: DUP2
000051ab: PUSH2 0x5057
000051ae: JUMP
000051af: JUMPDEST
000051b0: DUP1
000051b1: DUP3
000051b2: MSTORE
000051b3: POP
000051b4: PUSH1 0x20
000051b6: DUP3
000051b7: ADD
000051b8: CALLDATALOAD
000051b9: PUSH1 0x20
000051bb: DUP3
000051bc: ADD
000051bd: MSTORE
000051be: SWAP3
000051bf: SWAP2
000051c0: POP
000051c1: POP
000051c2: JUMP
000051c3: JUMPDEST
000051c4: PUSH1 0x00
000051c6: DUP1
000051c7: PUSH1 0x60
000051c9: DUP4
000051ca: DUP6
000051cb: SUB
000051cc: SLT
000051cd: ISZERO
000051ce: PUSH2 0x51d6
000051d1: JUMPI
000051d2: PUSH1 0x00
000051d4: DUP1
000051d5: REVERT
000051d6: JUMPDEST
000051d7: PUSH2 0x51e0
000051da: DUP5
000051db: DUP5
000051dc: PUSH2 0x5188
000051df: JUMP
000051e0: JUMPDEST
000051e1: SWAP2
000051e2: POP
000051e3: PUSH1 0x40
000051e5: DUP4
000051e6: ADD
000051e7: CALLDATALOAD
000051e8: PUSH2 0x51f0
000051eb: DUP2
000051ec: PUSH2 0x5057
000051ef: JUMP
000051f0: JUMPDEST
000051f1: DUP1
000051f2: SWAP2
000051f3: POP
000051f4: POP
000051f5: SWAP3
000051f6: POP
000051f7: SWAP3
000051f8: SWAP1
000051f9: POP
000051fa: JUMP
000051fb: JUMPDEST
000051fc: PUSH1 0x00
000051fe: DUP1
000051ff: PUSH1 0x60
00005201: DUP4
00005202: DUP6
00005203: SUB
00005204: SLT
00005205: ISZERO
00005206: PUSH2 0x520e
00005209: JUMPI
0000520a: PUSH1 0x00
0000520c: DUP1
0000520d: REVERT
0000520e: JUMPDEST
0000520f: PUSH2 0x5218
00005212: DUP5
00005213: DUP5
00005214: PUSH2 0x503f
00005217: JUMP
00005218: JUMPDEST
00005219: SWAP5
0000521a: PUSH1 0x40
0000521c: SWAP4
0000521d: SWAP1
0000521e: SWAP4
0000521f: ADD
00005220: CALLDATALOAD
00005221: SWAP4
00005222: POP
00005223: POP
00005224: POP
00005225: JUMP
00005226: JUMPDEST
00005227: PUSH1 0x00
00005229: JUMPDEST
0000522a: DUP4
0000522b: DUP2
0000522c: LT
0000522d: ISZERO
0000522e: PUSH2 0x5241
00005231: JUMPI
00005232: DUP2
00005233: DUP2
00005234: ADD
00005235: MLOAD
00005236: DUP4
00005237: DUP3
00005238: ADD
00005239: MSTORE
0000523a: PUSH1 0x20
0000523c: ADD
0000523d: PUSH2 0x5229
00005240: JUMP
00005241: JUMPDEST
00005242: POP
00005243: POP
00005244: PUSH1 0x00
00005246: SWAP2
00005247: ADD
00005248: MSTORE
00005249: JUMP
0000524a: JUMPDEST
0000524b: PUSH1 0x00
0000524d: DUP2
0000524e: MLOAD
0000524f: DUP1
00005250: DUP5
00005251: MSTORE
00005252: PUSH2 0x5262
00005255: DUP2
00005256: PUSH1 0x20
00005258: DUP7
00005259: ADD
0000525a: PUSH1 0x20
0000525c: DUP7
0000525d: ADD
0000525e: PUSH2 0x5226
00005261: JUMP
00005262: JUMPDEST
00005263: PUSH1 0x1f
00005265: ADD
00005266: PUSH1 0x1f
00005268: NOT
00005269: AND
0000526a: SWAP3
0000526b: SWAP1
0000526c: SWAP3
0000526d: ADD
0000526e: PUSH1 0x20
00005270: ADD
00005271: SWAP3
00005272: SWAP2
00005273: POP
00005274: POP
00005275: JUMP
00005276: JUMPDEST
00005277: PUSH1 0x20
00005279: DUP2
0000527a: MSTORE
0000527b: PUSH1 0x00
0000527d: PUSH2 0x1d6f
00005280: PUSH1 0x20
00005282: DUP4
00005283: ADD
00005284: DUP5
00005285: PUSH2 0x524a
00005288: JUMP
00005289: JUMPDEST
0000528a: PUSH1 0x01
0000528c: PUSH1 0x01
0000528e: PUSH1 0x40
00005290: SHL
00005291: SUB
00005292: DUP2
00005293: AND
00005294: DUP2
00005295: EQ
00005296: PUSH2 0x08af
00005299: JUMPI
0000529a: PUSH1 0x00
0000529c: DUP1
0000529d: REVERT
0000529e: JUMPDEST
0000529f: PUSH1 0x00
000052a1: PUSH1 0x20
000052a3: DUP3
000052a4: DUP5
000052a5: SUB
000052a6: SLT
000052a7: ISZERO
000052a8: PUSH2 0x52b0
000052ab: JUMPI
000052ac: PUSH1 0x00
000052ae: DUP1
000052af: REVERT
000052b0: JUMPDEST
000052b1: DUP2
000052b2: CALLDATALOAD
000052b3: PUSH2 0x1d6f
000052b6: DUP2
000052b7: PUSH2 0x5289
000052ba: JUMP
000052bb: JUMPDEST
000052bc: PUSH1 0x20
000052be: DUP2
000052bf: MSTORE
000052c0: DUP2
000052c1: MLOAD
000052c2: PUSH1 0x20
000052c4: DUP3
000052c5: ADD
000052c6: MSTORE
000052c7: PUSH1 0x20
000052c9: DUP3
000052ca: ADD
000052cb: MLOAD
000052cc: PUSH1 0x40
000052ce: DUP3
000052cf: ADD
000052d0: MSTORE
000052d1: PUSH1 0x01
000052d3: DUP1
000052d4: PUSH1 0xa0
000052d6: SHL
000052d7: SUB
000052d8: PUSH1 0x40
000052da: DUP4
000052db: ADD
000052dc: MLOAD
000052dd: AND
000052de: PUSH1 0x60
000052e0: DUP3
000052e1: ADD
000052e2: MSTORE
000052e3: PUSH1 0x01
000052e5: PUSH1 0x01
000052e7: PUSH1 0x48
000052e9: SHL
000052ea: SUB
000052eb: PUSH1 0x60
000052ed: DUP4
000052ee: ADD
000052ef: MLOAD
000052f0: AND
000052f1: PUSH1 0x80
000052f3: DUP3
000052f4: ADD
000052f5: MSTORE
000052f6: PUSH1 0x00
000052f8: PUSH1 0x80
000052fa: DUP4
000052fb: ADD
000052fc: MLOAD
000052fd: PUSH2 0x530c
00005300: PUSH1 0xa0
00005302: DUP5
00005303: ADD
00005304: DUP3
00005305: PUSH2 0xffff
00005308: AND
00005309: SWAP1
0000530a: MSTORE
0000530b: JUMP
0000530c: JUMPDEST
0000530d: POP
0000530e: PUSH1 0xa0
00005310: DUP4
00005311: ADD
00005312: MLOAD
00005313: PUSH1 0x01
00005315: PUSH1 0x01
00005317: PUSH1 0x40
00005319: SHL
0000531a: SUB
0000531b: DUP2
0000531c: AND
0000531d: PUSH1 0xc0
0000531f: DUP5
00005320: ADD
00005321: MSTORE
00005322: POP
00005323: PUSH1 0xc0
00005325: DUP4
00005326: ADD
00005327: MLOAD
00005328: PUSH1 0x01
0000532a: PUSH1 0x01
0000532c: PUSH1 0xa0
0000532e: SHL
0000532f: SUB
00005330: DUP2
00005331: AND
00005332: PUSH1 0xe0
00005334: DUP5
00005335: ADD
00005336: MSTORE
00005337: POP
00005338: PUSH1 0xe0
0000533a: DUP4
0000533b: ADD
0000533c: MLOAD
0000533d: PUSH2 0x0100
00005340: DUP4
00005341: DUP2
00005342: ADD
00005343: MSTORE
00005344: PUSH2 0x1d15
00005347: PUSH2 0x0120
0000534a: DUP5
0000534b: ADD
0000534c: DUP3
0000534d: PUSH2 0x524a
00005350: JUMP
00005351: JUMPDEST
00005352: PUSH1 0x00
00005354: PUSH1 0x40
00005356: DUP3
00005357: DUP5
00005358: SUB
00005359: SLT
0000535a: ISZERO
0000535b: PUSH2 0x5363
0000535e: JUMPI
0000535f: PUSH1 0x00
00005361: DUP1
00005362: REVERT
00005363: JUMPDEST
00005364: PUSH2 0x1d6f
00005367: DUP4
00005368: DUP4
00005369: PUSH2 0x5188
0000536c: JUMP
0000536d: JUMPDEST
0000536e: PUSH1 0x00
00005370: DUP1
00005371: PUSH1 0x40
00005373: DUP4
00005374: DUP6
00005375: SUB
00005376: SLT
00005377: ISZERO
00005378: PUSH2 0x5380
0000537b: JUMPI
0000537c: PUSH1 0x00
0000537e: DUP1
0000537f: REVERT
00005380: JUMPDEST
00005381: DUP3
00005382: CALLDATALOAD
00005383: PUSH2 0x538b
00005386: DUP2
00005387: PUSH2 0x5057
0000538a: JUMP
0000538b: JUMPDEST
0000538c: SWAP5
0000538d: PUSH1 0x20
0000538f: SWAP4
00005390: SWAP1
00005391: SWAP4
00005392: ADD
00005393: CALLDATALOAD
00005394: SWAP4
00005395: POP
00005396: POP
00005397: POP
00005398: JUMP
00005399: JUMPDEST
0000539a: PUSH1 0x00
0000539c: DUP1
0000539d: PUSH1 0x60
0000539f: DUP4
000053a0: DUP6
000053a1: SUB
000053a2: SLT
000053a3: ISZERO
000053a4: PUSH2 0x53ac
000053a7: JUMPI
000053a8: PUSH1 0x00
000053aa: DUP1
000053ab: REVERT
000053ac: JUMPDEST
000053ad: PUSH2 0x53b6
000053b0: DUP5
000053b1: DUP5
000053b2: PUSH2 0x503f
000053b5: JUMP
000053b6: JUMPDEST
000053b7: SWAP2
000053b8: POP
000053b9: PUSH1 0x40
000053bb: DUP4
000053bc: ADD
000053bd: CALLDATALOAD
000053be: PUSH2 0x51f0
000053c1: DUP2
000053c2: PUSH2 0x5002
000053c5: JUMP
000053c6: JUMPDEST
000053c7: PUSH1 0xff
000053c9: DUP2
000053ca: AND
000053cb: DUP2
000053cc: EQ
000053cd: PUSH2 0x08af
000053d0: JUMPI
000053d1: PUSH1 0x00
000053d3: DUP1
000053d4: REVERT
000053d5: JUMPDEST
000053d6: PUSH1 0x00
000053d8: DUP2
000053d9: DUP4
000053da: SUB
000053db: PUSH1 0xa0
000053dd: DUP2
000053de: SLT
000053df: ISZERO
000053e0: PUSH2 0x53e8
000053e3: JUMPI
000053e4: PUSH1 0x00
000053e6: DUP1
000053e7: REVERT
000053e8: JUMPDEST
000053e9: PUSH2 0x53f0
000053ec: PUSH2 0x50c9
000053ef: JUMP
000053f0: JUMPDEST
000053f1: SWAP2
000053f2: POP
000053f3: PUSH1 0x60
000053f5: DUP2
000053f6: SLT
000053f7: ISZERO
000053f8: PUSH2 0x5400
000053fb: JUMPI
000053fc: PUSH1 0x00
000053fe: DUP1
000053ff: REVERT
00005400: JUMPDEST
00005401: POP
00005402: PUSH1 0x40
00005404: MLOAD
00005405: PUSH1 0x60
00005407: DUP2
00005408: ADD
00005409: DUP2
0000540a: DUP2
0000540b: LT
0000540c: PUSH1 0x01
0000540e: PUSH1 0x01
00005410: PUSH1 0x40
00005412: SHL
00005413: SUB
00005414: DUP3
00005415: GT
00005416: OR
00005417: ISZERO
00005418: PUSH2 0x5423
0000541b: JUMPI
0000541c: PUSH2 0x5423
0000541f: PUSH2 0x50b3
00005422: JUMP
00005423: JUMPDEST
00005424: DUP1
00005425: PUSH1 0x40
00005427: MSTORE
00005428: POP
00005429: DUP3
0000542a: CALLDATALOAD
0000542b: DUP2
0000542c: MSTORE
0000542d: PUSH1 0x20
0000542f: DUP4
00005430: ADD
00005431: CALLDATALOAD
00005432: PUSH1 0x20
00005434: DUP3
00005435: ADD
00005436: MSTORE
00005437: PUSH1 0x40
00005439: DUP4
0000543a: ADD
0000543b: CALLDATALOAD
0000543c: PUSH2 0x5444
0000543f: DUP2
00005440: PUSH2 0x53c6
00005443: JUMP
00005444: JUMPDEST
00005445: PUSH1 0x40
00005447: DUP3
00005448: ADD
00005449: MSTORE
0000544a: DUP2
0000544b: MSTORE
0000544c: PUSH2 0x5458
0000544f: DUP4
00005450: PUSH1 0x60
00005452: DUP5
00005453: ADD
00005454: PUSH2 0x5188
00005457: JUMP
00005458: JUMPDEST
00005459: PUSH1 0x20
0000545b: DUP3
0000545c: ADD
0000545d: MSTORE
0000545e: SWAP3
0000545f: SWAP2
00005460: POP
00005461: POP
00005462: JUMP
00005463: JUMPDEST
00005464: PUSH1 0x00
00005466: PUSH1 0x01
00005468: PUSH1 0x01
0000546a: PUSH1 0x40
0000546c: SHL
0000546d: SUB
0000546e: DUP3
0000546f: GT
00005470: ISZERO
00005471: PUSH2 0x547c
00005474: JUMPI
00005475: PUSH2 0x547c
00005478: PUSH2 0x50b3
0000547b: JUMP
0000547c: JUMPDEST
0000547d: POP
0000547e: PUSH1 0x1f
00005480: ADD
00005481: PUSH1 0x1f
00005483: NOT
00005484: AND
00005485: PUSH1 0x20
00005487: ADD
00005488: SWAP1
00005489: JUMP
0000548a: JUMPDEST
0000548b: PUSH1 0x00
0000548d: DUP3
0000548e: PUSH1 0x1f
00005490: DUP4
00005491: ADD
00005492: SLT
00005493: PUSH2 0x549b
00005496: JUMPI
00005497: PUSH1 0x00
00005499: DUP1
0000549a: REVERT
0000549b: JUMPDEST
0000549c: DUP2
0000549d: CALLDATALOAD
0000549e: PUSH2 0x54ae
000054a1: PUSH2 0x54a9
000054a4: DUP3
000054a5: PUSH2 0x5463
000054a8: JUMP
000054a9: JUMPDEST
000054aa: PUSH2 0x5158
000054ad: JUMP
000054ae: JUMPDEST
000054af: DUP2
000054b0: DUP2
000054b1: MSTORE
000054b2: DUP5
000054b3: PUSH1 0x20
000054b5: DUP4
000054b6: DUP7
000054b7: ADD
000054b8: ADD
000054b9: GT
000054ba: ISZERO
000054bb: PUSH2 0x54c3
000054be: JUMPI
000054bf: PUSH1 0x00
000054c1: DUP1
000054c2: REVERT
000054c3: JUMPDEST
000054c4: DUP2
000054c5: PUSH1 0x20
000054c7: DUP6
000054c8: ADD
000054c9: PUSH1 0x20
000054cb: DUP4
000054cc: ADD
000054cd: CALLDATACOPY
000054ce: PUSH1 0x00
000054d0: SWAP2
000054d1: DUP2
000054d2: ADD
000054d3: PUSH1 0x20
000054d5: ADD
000054d6: SWAP2
000054d7: SWAP1
000054d8: SWAP2
000054d9: MSTORE
000054da: SWAP4
000054db: SWAP3
000054dc: POP
000054dd: POP
000054de: POP
000054df: JUMP
000054e0: JUMPDEST
000054e1: PUSH1 0x00
000054e3: DUP1
000054e4: PUSH1 0x40
000054e6: DUP4
000054e7: DUP6
000054e8: SUB
000054e9: SLT
000054ea: ISZERO
000054eb: PUSH2 0x54f3
000054ee: JUMPI
000054ef: PUSH1 0x00
000054f1: DUP1
000054f2: REVERT
000054f3: JUMPDEST
000054f4: DUP3
000054f5: CALLDATALOAD
000054f6: SWAP2
000054f7: POP
000054f8: PUSH1 0x20
000054fa: DUP4
000054fb: ADD
000054fc: CALLDATALOAD
000054fd: PUSH1 0x01
000054ff: PUSH1 0x01
00005501: PUSH1 0x40
00005503: SHL
00005504: SUB
00005505: DUP1
00005506: DUP3
00005507: GT
00005508: ISZERO
00005509: PUSH2 0x5511
0000550c: JUMPI
0000550d: PUSH1 0x00
0000550f: DUP1
00005510: REVERT
00005511: JUMPDEST
00005512: SWAP1
00005513: DUP5
00005514: ADD
00005515: SWAP1
00005516: PUSH2 0x0120
00005519: DUP3
0000551a: DUP8
0000551b: SUB
0000551c: SLT
0000551d: ISZERO
0000551e: PUSH2 0x5526
00005521: JUMPI
00005522: PUSH1 0x00
00005524: DUP1
00005525: REVERT
00005526: JUMPDEST
00005527: PUSH2 0x552e
0000552a: PUSH2 0x50f1
0000552d: JUMP
0000552e: JUMPDEST
0000552f: DUP3
00005530: CALLDATALOAD
00005531: PUSH1 0x01
00005533: PUSH1 0x01
00005535: PUSH1 0x48
00005537: SHL
00005538: SUB
00005539: DUP2
0000553a: AND
0000553b: DUP2
0000553c: EQ
0000553d: PUSH2 0x5545
00005540: JUMPI
00005541: PUSH1 0x00
00005543: DUP1
00005544: REVERT
00005545: JUMPDEST
00005546: DUP2
00005547: MSTORE
00005548: PUSH2 0x5554
0000554b: DUP8
0000554c: PUSH1 0x20
0000554e: DUP6
0000554f: ADD
00005550: PUSH2 0x53d5
00005553: JUMP
00005554: JUMPDEST
00005555: PUSH1 0x20
00005557: DUP3
00005558: ADD
00005559: MSTORE
0000555a: PUSH1 0xc0
0000555c: DUP4
0000555d: ADD
0000555e: CALLDATALOAD
0000555f: PUSH1 0x40
00005561: DUP3
00005562: ADD
00005563: MSTORE
00005564: PUSH1 0xe0
00005566: DUP4
00005567: ADD
00005568: CALLDATALOAD
00005569: PUSH1 0x60
0000556b: DUP3
0000556c: ADD
0000556d: MSTORE
0000556e: PUSH2 0x0100
00005571: DUP4
00005572: ADD
00005573: CALLDATALOAD
00005574: DUP3
00005575: DUP2
00005576: GT
00005577: ISZERO
00005578: PUSH2 0x5580
0000557b: JUMPI
0000557c: PUSH1 0x00
0000557e: DUP1
0000557f: REVERT
00005580: JUMPDEST
00005581: PUSH2 0x558c
00005584: DUP9
00005585: DUP3
00005586: DUP7
00005587: ADD
00005588: PUSH2 0x548a
0000558b: JUMP
0000558c: JUMPDEST
0000558d: PUSH1 0x80
0000558f: DUP4
00005590: ADD
00005591: MSTORE
00005592: POP
00005593: DUP1
00005594: SWAP4
00005595: POP
00005596: POP
00005597: POP
00005598: POP
00005599: SWAP3
0000559a: POP
0000559b: SWAP3
0000559c: SWAP1
0000559d: POP
0000559e: JUMP
0000559f: JUMPDEST
000055a0: DUP1
000055a1: ISZERO
000055a2: ISZERO
000055a3: DUP2
000055a4: EQ
000055a5: PUSH2 0x08af
000055a8: JUMPI
000055a9: PUSH1 0x00
000055ab: DUP1
000055ac: REVERT
000055ad: JUMPDEST
000055ae: DUP1
000055af: CALLDATALOAD
000055b0: PUSH2 0x15d3
000055b3: DUP2
000055b4: PUSH2 0x559f
000055b7: JUMP
000055b8: JUMPDEST
000055b9: PUSH1 0x00
000055bb: PUSH1 0x20
000055bd: DUP3
000055be: DUP5
000055bf: SUB
000055c0: SLT
000055c1: ISZERO
000055c2: PUSH2 0x55ca
000055c5: JUMPI
000055c6: PUSH1 0x00
000055c8: DUP1
000055c9: REVERT
000055ca: JUMPDEST
000055cb: DUP2
000055cc: CALLDATALOAD
000055cd: PUSH1 0x01
000055cf: PUSH1 0x01
000055d1: PUSH1 0x40
000055d3: SHL
000055d4: SUB
000055d5: DUP1
000055d6: DUP3
000055d7: GT
000055d8: ISZERO
000055d9: PUSH2 0x55e1
000055dc: JUMPI
000055dd: PUSH1 0x00
000055df: DUP1
000055e0: REVERT
000055e1: JUMPDEST
000055e2: SWAP1
000055e3: DUP4
000055e4: ADD
000055e5: SWAP1
000055e6: PUSH2 0x0100
000055e9: DUP3
000055ea: DUP7
000055eb: SUB
000055ec: SLT
000055ed: ISZERO
000055ee: PUSH2 0x55f6
000055f1: JUMPI
000055f2: PUSH1 0x00
000055f4: DUP1
000055f5: REVERT
000055f6: JUMPDEST
000055f7: PUSH2 0x55fe
000055fa: PUSH2 0x5113
000055fd: JUMP
000055fe: JUMPDEST
000055ff: PUSH2 0x5607
00005602: DUP4
00005603: PUSH2 0x5017
00005606: JUMP
00005607: JUMPDEST
00005608: DUP2
00005609: MSTORE
0000560a: PUSH1 0x20
0000560c: DUP4
0000560d: ADD
0000560e: CALLDATALOAD
0000560f: PUSH1 0x20
00005611: DUP3
00005612: ADD
00005613: MSTORE
00005614: PUSH2 0x561f
00005617: PUSH1 0x40
00005619: DUP5
0000561a: ADD
0000561b: PUSH2 0x5067
0000561e: JUMP
0000561f: JUMPDEST
00005620: PUSH1 0x40
00005622: DUP3
00005623: ADD
00005624: MSTORE
00005625: PUSH1 0x60
00005627: DUP4
00005628: ADD
00005629: CALLDATALOAD
0000562a: PUSH1 0x60
0000562c: DUP3
0000562d: ADD
0000562e: MSTORE
0000562f: PUSH1 0x80
00005631: DUP4
00005632: ADD
00005633: CALLDATALOAD
00005634: PUSH1 0x80
00005636: DUP3
00005637: ADD
00005638: MSTORE
00005639: PUSH2 0x5644
0000563c: PUSH1 0xa0
0000563e: DUP5
0000563f: ADD
00005640: PUSH2 0x55ad
00005643: JUMP
00005644: JUMPDEST
00005645: PUSH1 0xa0
00005647: DUP3
00005648: ADD
00005649: MSTORE
0000564a: PUSH1 0xc0
0000564c: DUP4
0000564d: ADD
0000564e: CALLDATALOAD
0000564f: DUP3
00005650: DUP2
00005651: GT
00005652: ISZERO
00005653: PUSH2 0x565b
00005656: JUMPI
00005657: PUSH1 0x00
00005659: DUP1
0000565a: REVERT
0000565b: JUMPDEST
0000565c: PUSH2 0x5667
0000565f: DUP8
00005660: DUP3
00005661: DUP7
00005662: ADD
00005663: PUSH2 0x548a
00005666: JUMP
00005667: JUMPDEST
00005668: PUSH1 0xc0
0000566a: DUP4
0000566b: ADD
0000566c: MSTORE
0000566d: POP
0000566e: PUSH1 0xe0
00005670: DUP4
00005671: ADD
00005672: CALLDATALOAD
00005673: DUP3
00005674: DUP2
00005675: GT
00005676: ISZERO
00005677: PUSH2 0x567f
0000567a: JUMPI
0000567b: PUSH1 0x00
0000567d: DUP1
0000567e: REVERT
0000567f: JUMPDEST
00005680: PUSH2 0x568b
00005683: DUP8
00005684: DUP3
00005685: DUP7
00005686: ADD
00005687: PUSH2 0x548a
0000568a: JUMP
0000568b: JUMPDEST
0000568c: PUSH1 0xe0
0000568e: DUP4
0000568f: ADD
00005690: MSTORE
00005691: POP
00005692: SWAP6
00005693: SWAP5
00005694: POP
00005695: POP
00005696: POP
00005697: POP
00005698: POP
00005699: JUMP
0000569a: JUMPDEST
0000569b: PUSH1 0x00
0000569d: PUSH1 0x20
0000569f: DUP3
000056a0: DUP5
000056a1: SUB
000056a2: SLT
000056a3: ISZERO
000056a4: PUSH2 0x56ac
000056a7: JUMPI
000056a8: PUSH1 0x00
000056aa: DUP1
000056ab: REVERT
000056ac: JUMPDEST
000056ad: DUP2
000056ae: CALLDATALOAD
000056af: PUSH1 0x01
000056b1: PUSH1 0x01
000056b3: PUSH1 0x40
000056b5: SHL
000056b6: SUB
000056b7: DUP1
000056b8: DUP3
000056b9: GT
000056ba: ISZERO
000056bb: PUSH2 0x56c3
000056be: JUMPI
000056bf: PUSH1 0x00
000056c1: DUP1
000056c2: REVERT
000056c3: JUMPDEST
000056c4: SWAP1
000056c5: DUP4
000056c6: ADD
000056c7: SWAP1
000056c8: PUSH1 0xe0
000056ca: DUP3
000056cb: DUP7
000056cc: SUB
000056cd: SLT
000056ce: ISZERO
000056cf: PUSH2 0x56d7
000056d2: JUMPI
000056d3: PUSH1 0x00
000056d5: DUP1
000056d6: REVERT
000056d7: JUMPDEST
000056d8: PUSH2 0x56df
000056db: PUSH2 0x5136
000056de: JUMP
000056df: JUMPDEST
000056e0: DUP3
000056e1: CALLDATALOAD
000056e2: DUP2
000056e3: MSTORE
000056e4: PUSH2 0x56ef
000056e7: PUSH1 0x20
000056e9: DUP5
000056ea: ADD
000056eb: PUSH2 0x5067
000056ee: JUMP
000056ef: JUMPDEST
000056f0: PUSH1 0x20
000056f2: DUP3
000056f3: ADD
000056f4: MSTORE
000056f5: PUSH1 0x40
000056f7: DUP4
000056f8: ADD
000056f9: CALLDATALOAD
000056fa: PUSH1 0x40
000056fc: DUP3
000056fd: ADD
000056fe: MSTORE
000056ff: PUSH1 0x60
00005701: DUP4
00005702: ADD
00005703: CALLDATALOAD
00005704: PUSH1 0x60
00005706: DUP3
00005707: ADD
00005708: MSTORE
00005709: PUSH2 0x5714
0000570c: PUSH1 0x80
0000570e: DUP5
0000570f: ADD
00005710: PUSH2 0x55ad
00005713: JUMP
00005714: JUMPDEST
00005715: PUSH1 0x80
00005717: DUP3
00005718: ADD
00005719: MSTORE
0000571a: PUSH1 0xa0
0000571c: DUP4
0000571d: ADD
0000571e: CALLDATALOAD
0000571f: DUP3
00005720: DUP2
00005721: GT
00005722: ISZERO
00005723: PUSH2 0x572b
00005726: JUMPI
00005727: PUSH1 0x00
00005729: DUP1
0000572a: REVERT
0000572b: JUMPDEST
0000572c: PUSH2 0x5737
0000572f: DUP8
00005730: DUP3
00005731: DUP7
00005732: ADD
00005733: PUSH2 0x548a
00005736: JUMP
00005737: JUMPDEST
00005738: PUSH1 0xa0
0000573a: DUP4
0000573b: ADD
0000573c: MSTORE
0000573d: POP
0000573e: PUSH1 0xc0
00005740: DUP4
00005741: ADD
00005742: CALLDATALOAD
00005743: DUP3
00005744: DUP2
00005745: GT
00005746: ISZERO
00005747: PUSH2 0x574f
0000574a: JUMPI
0000574b: PUSH1 0x00
0000574d: DUP1
0000574e: REVERT
0000574f: JUMPDEST
00005750: PUSH2 0x575b
00005753: DUP8
00005754: DUP3
00005755: DUP7
00005756: ADD
00005757: PUSH2 0x548a
0000575a: JUMP
0000575b: JUMPDEST
0000575c: PUSH1 0xc0
0000575e: DUP4
0000575f: ADD
00005760: MSTORE
00005761: POP
00005762: SWAP6
00005763: SWAP5
00005764: POP
00005765: POP
00005766: POP
00005767: POP
00005768: POP
00005769: JUMP
0000576a: JUMPDEST
0000576b: PUSH1 0x00
0000576d: PUSH1 0x20
0000576f: DUP3
00005770: DUP5
00005771: SUB
00005772: SLT
00005773: ISZERO
00005774: PUSH2 0x577c
00005777: JUMPI
00005778: PUSH1 0x00
0000577a: DUP1
0000577b: REVERT
0000577c: JUMPDEST
0000577d: DUP2
0000577e: CALLDATALOAD
0000577f: PUSH2 0x1d6f
00005782: DUP2
00005783: PUSH2 0x5057
00005786: JUMP
00005787: JUMPDEST
00005788: PUSH1 0x00
0000578a: DUP1
0000578b: PUSH1 0x00
0000578d: DUP1
0000578e: PUSH1 0x00
00005790: PUSH1 0x80
00005792: DUP7
00005793: DUP9
00005794: SUB
00005795: SLT
00005796: ISZERO
00005797: PUSH2 0x579f
0000579a: JUMPI
0000579b: PUSH1 0x00
0000579d: DUP1
0000579e: REVERT
0000579f: JUMPDEST
000057a0: DUP6
000057a1: CALLDATALOAD
000057a2: SWAP5
000057a3: POP
000057a4: PUSH1 0x20
000057a6: DUP7
000057a7: ADD
000057a8: CALLDATALOAD
000057a9: PUSH2 0x57b1
000057ac: DUP2
000057ad: PUSH2 0x5057
000057b0: JUMP
000057b1: JUMPDEST
000057b2: SWAP4
000057b3: POP
000057b4: PUSH1 0x40
000057b6: DUP7
000057b7: ADD
000057b8: CALLDATALOAD
000057b9: SWAP3
000057ba: POP
000057bb: PUSH1 0x60
000057bd: DUP7
000057be: ADD
000057bf: CALLDATALOAD
000057c0: PUSH1 0x01
000057c2: PUSH1 0x01
000057c4: PUSH1 0x40
000057c6: SHL
000057c7: SUB
000057c8: DUP1
000057c9: DUP3
000057ca: GT
000057cb: ISZERO
000057cc: PUSH2 0x57d4
000057cf: JUMPI
000057d0: PUSH1 0x00
000057d2: DUP1
000057d3: REVERT
000057d4: JUMPDEST
000057d5: DUP2
000057d6: DUP9
000057d7: ADD
000057d8: SWAP2
000057d9: POP
000057da: DUP9
000057db: PUSH1 0x1f
000057dd: DUP4
000057de: ADD
000057df: SLT
000057e0: PUSH2 0x57e8
000057e3: JUMPI
000057e4: PUSH1 0x00
000057e6: DUP1
000057e7: REVERT
000057e8: JUMPDEST
000057e9: DUP2
000057ea: CALLDATALOAD
000057eb: DUP2
000057ec: DUP2
000057ed: GT
000057ee: ISZERO
000057ef: PUSH2 0x57f7
000057f2: JUMPI
000057f3: PUSH1 0x00
000057f5: DUP1
000057f6: REVERT
000057f7: JUMPDEST
000057f8: DUP10
000057f9: PUSH1 0x20
000057fb: DUP3
000057fc: DUP6
000057fd: ADD
000057fe: ADD
000057ff: GT
00005800: ISZERO
00005801: PUSH2 0x5809
00005804: JUMPI
00005805: PUSH1 0x00
00005807: DUP1
00005808: REVERT
00005809: JUMPDEST
0000580a: SWAP7
0000580b: SWAP10
0000580c: SWAP6
0000580d: SWAP9
0000580e: POP
0000580f: SWAP4
00005810: SWAP7
00005811: POP
00005812: PUSH1 0x20
00005814: ADD
00005815: SWAP5
00005816: SWAP4
00005817: SWAP3
00005818: POP
00005819: POP
0000581a: POP
0000581b: JUMP
0000581c: JUMPDEST
0000581d: PUSH4 0x4e487b71
00005822: PUSH1 0xe0
00005824: SHL
00005825: PUSH1 0x00
00005827: MSTORE
00005828: PUSH1 0x21
0000582a: PUSH1 0x04
0000582c: MSTORE
0000582d: PUSH1 0x24
0000582f: PUSH1 0x00
00005831: REVERT
00005832: JUMPDEST
00005833: DUP3
00005834: MLOAD
00005835: PUSH2 0xffff
00005838: AND
00005839: DUP2
0000583a: MSTORE
0000583b: PUSH1 0x20
0000583d: DUP1
0000583e: DUP5
0000583f: ADD
00005840: MLOAD
00005841: SWAP1
00005842: DUP3
00005843: ADD
00005844: MSTORE
00005845: PUSH1 0x60
00005847: DUP2
00005848: ADD
00005849: PUSH1 0x02
0000584b: DUP4
0000584c: LT
0000584d: PUSH2 0x5866
00005850: JUMPI
00005851: PUSH4 0x4e487b71
00005856: PUSH1 0xe0
00005858: SHL
00005859: PUSH1 0x00
0000585b: MSTORE
0000585c: PUSH1 0x21
0000585e: PUSH1 0x04
00005860: MSTORE
00005861: PUSH1 0x24
00005863: PUSH1 0x00
00005865: REVERT
00005866: JUMPDEST
00005867: DUP3
00005868: PUSH1 0x40
0000586a: DUP4
0000586b: ADD
0000586c: MSTORE
0000586d: SWAP4
0000586e: SWAP3
0000586f: POP
00005870: POP
00005871: POP
00005872: JUMP
00005873: JUMPDEST
00005874: PUSH1 0x00
00005876: PUSH1 0x20
00005878: DUP3
00005879: DUP5
0000587a: SUB
0000587b: SLT
0000587c: ISZERO
0000587d: PUSH2 0x5885
00005880: JUMPI
00005881: PUSH1 0x00
00005883: DUP1
00005884: REVERT
00005885: JUMPDEST
00005886: POP
00005887: CALLDATALOAD
00005888: SWAP2
00005889: SWAP1
0000588a: POP
0000588b: JUMP
0000588c: JUMPDEST
0000588d: PUSH1 0x00
0000588f: PUSH2 0x589a
00005892: PUSH2 0x54a9
00005895: DUP5
00005896: PUSH2 0x5463
00005899: JUMP
0000589a: JUMPDEST
0000589b: SWAP1
0000589c: POP
0000589d: DUP3
0000589e: DUP2
0000589f: MSTORE
000058a0: DUP4
000058a1: DUP4
000058a2: DUP4
000058a3: ADD
000058a4: GT
000058a5: ISZERO
000058a6: PUSH2 0x58ae
000058a9: JUMPI
000058aa: PUSH1 0x00
000058ac: DUP1
000058ad: REVERT
000058ae: JUMPDEST
000058af: PUSH2 0x1d6f
000058b2: DUP4
000058b3: PUSH1 0x20
000058b5: DUP4
000058b6: ADD
000058b7: DUP5
000058b8: PUSH2 0x5226
000058bb: JUMP
000058bc: JUMPDEST
000058bd: PUSH1 0x00
000058bf: PUSH1 0x20
000058c1: DUP3
000058c2: DUP5
000058c3: SUB
000058c4: SLT
000058c5: ISZERO
000058c6: PUSH2 0x58ce
000058c9: JUMPI
000058ca: PUSH1 0x00
000058cc: DUP1
000058cd: REVERT
000058ce: JUMPDEST
000058cf: DUP2
000058d0: MLOAD
000058d1: PUSH1 0x01
000058d3: PUSH1 0x01
000058d5: PUSH1 0x40
000058d7: SHL
000058d8: SUB
000058d9: DUP2
000058da: GT
000058db: ISZERO
000058dc: PUSH2 0x58e4
000058df: JUMPI
000058e0: PUSH1 0x00
000058e2: DUP1
000058e3: REVERT
000058e4: JUMPDEST
000058e5: DUP3
000058e6: ADD
000058e7: PUSH1 0x1f
000058e9: DUP2
000058ea: ADD
000058eb: DUP5
000058ec: SGT
000058ed: PUSH2 0x58f5
000058f0: JUMPI
000058f1: PUSH1 0x00
000058f3: DUP1
000058f4: REVERT
000058f5: JUMPDEST
000058f6: PUSH2 0x1d15
000058f9: DUP5
000058fa: DUP3
000058fb: MLOAD
000058fc: PUSH1 0x20
000058fe: DUP5
000058ff: ADD
00005900: PUSH2 0x588c
00005903: JUMP
00005904: JUMPDEST
00005905: PUSH1 0x01
00005907: DUP2
00005908: DUP2
00005909: SHR
0000590a: SWAP1
0000590b: DUP3
0000590c: AND
0000590d: DUP1
0000590e: PUSH2 0x5918
00005911: JUMPI
00005912: PUSH1 0x7f
00005914: DUP3
00005915: AND
00005916: SWAP2
00005917: POP
00005918: JUMPDEST
00005919: PUSH1 0x20
0000591b: DUP3
0000591c: LT
0000591d: DUP2
0000591e: SUB
0000591f: PUSH2 0x5051
00005922: JUMPI
00005923: PUSH4 0x4e487b71
00005928: PUSH1 0xe0
0000592a: SHL
0000592b: PUSH1 0x00
0000592d: MSTORE
0000592e: PUSH1 0x22
00005930: PUSH1 0x04
00005932: MSTORE
00005933: PUSH1 0x24
00005935: PUSH1 0x00
00005937: REVERT
00005938: JUMPDEST
00005939: DUP2
0000593a: CALLDATALOAD
0000593b: PUSH2 0x5943
0000593e: DUP2
0000593f: PUSH2 0x5057
00005942: JUMP
00005943: JUMPDEST
00005944: PUSH2 0xffff
00005947: DUP2
00005948: AND
00005949: PUSH2 0xffff
0000594c: NOT
0000594d: DUP4
0000594e: SLOAD
0000594f: AND
00005950: OR
00005951: DUP3
00005952: SSTORE
00005953: POP
00005954: PUSH1 0x20
00005956: DUP3
00005957: ADD
00005958: CALLDATALOAD
00005959: PUSH1 0x01
0000595b: DUP3
0000595c: ADD
0000595d: SSTORE
0000595e: POP
0000595f: POP
00005960: JUMP
00005961: JUMPDEST
00005962: PUSH4 0x4e487b71
00005967: PUSH1 0xe0
00005969: SHL
0000596a: PUSH1 0x00
0000596c: MSTORE
0000596d: PUSH1 0x11
0000596f: PUSH1 0x04
00005971: MSTORE
00005972: PUSH1 0x24
00005974: PUSH1 0x00
00005976: REVERT
00005977: JUMPDEST
00005978: DUP2
00005979: DUP2
0000597a: SUB
0000597b: DUP2
0000597c: DUP2
0000597d: GT
0000597e: ISZERO
0000597f: PUSH2 0x0898
00005982: JUMPI
00005983: PUSH2 0x0898
00005986: PUSH2 0x5961
00005989: JUMP
0000598a: JUMPDEST
0000598b: PUSH1 0x01
0000598d: PUSH1 0x01
0000598f: PUSH1 0x40
00005991: SHL
00005992: SUB
00005993: DUP2
00005994: DUP2
00005995: AND
00005996: DUP4
00005997: DUP3
00005998: AND
00005999: ADD
0000599a: SWAP1
0000599b: DUP1
0000599c: DUP3
0000599d: GT
0000599e: ISZERO
0000599f: PUSH2 0x59aa
000059a2: JUMPI
000059a3: PUSH2 0x59aa
000059a6: PUSH2 0x5961
000059a9: JUMP
000059aa: JUMPDEST
000059ab: POP
000059ac: SWAP3
000059ad: SWAP2
000059ae: POP
000059af: POP
000059b0: JUMP
000059b1: JUMPDEST
000059b2: PUSH1 0x00
000059b4: PUSH1 0x20
000059b6: DUP3
000059b7: DUP5
000059b8: SUB
000059b9: SLT
000059ba: ISZERO
000059bb: PUSH2 0x59c3
000059be: JUMPI
000059bf: PUSH1 0x00
000059c1: DUP1
000059c2: REVERT
000059c3: JUMPDEST
000059c4: DUP2
000059c5: MLOAD
000059c6: PUSH2 0x1d6f
000059c9: DUP2
000059ca: PUSH2 0x53c6
000059cd: JUMP
000059ce: JUMPDEST
000059cf: DUP2
000059d0: MLOAD
000059d1: PUSH2 0xffff
000059d4: AND
000059d5: DUP2
000059d6: MSTORE
000059d7: PUSH1 0x20
000059d9: DUP1
000059da: DUP4
000059db: ADD
000059dc: MLOAD
000059dd: SWAP1
000059de: DUP3
000059df: ADD
000059e0: MSTORE
000059e1: PUSH1 0x40
000059e3: DUP2
000059e4: ADD
000059e5: PUSH2 0x0898
000059e8: JUMP
000059e9: JUMPDEST
000059ea: PUSH4 0x4e487b71
000059ef: PUSH1 0xe0
000059f1: SHL
000059f2: PUSH1 0x00
000059f4: MSTORE
000059f5: PUSH1 0x01
000059f7: PUSH1 0x04
000059f9: MSTORE
000059fa: PUSH1 0x24
000059fc: PUSH1 0x00
000059fe: REVERT
000059ff: JUMPDEST
00005a00: PUSH1 0x00
00005a02: PUSH1 0x20
00005a04: DUP3
00005a05: DUP5
00005a06: SUB
00005a07: SLT
00005a08: ISZERO
00005a09: PUSH2 0x5a11
00005a0c: JUMPI
00005a0d: PUSH1 0x00
00005a0f: DUP1
00005a10: REVERT
00005a11: JUMPDEST
00005a12: DUP2
00005a13: MLOAD
00005a14: PUSH2 0x1d6f
00005a17: DUP2
00005a18: PUSH2 0x559f
00005a1b: JUMP
00005a1c: JUMPDEST
00005a1d: PUSH4 0x4e487b71
00005a22: PUSH1 0xe0
00005a24: SHL
00005a25: PUSH1 0x00
00005a27: MSTORE
00005a28: PUSH1 0x12
00005a2a: PUSH1 0x04
00005a2c: MSTORE
00005a2d: PUSH1 0x24
00005a2f: PUSH1 0x00
00005a31: REVERT
00005a32: JUMPDEST
00005a33: PUSH1 0x01
00005a35: PUSH1 0x01
00005a37: PUSH1 0xe0
00005a39: SHL
00005a3a: SUB
00005a3b: NOT
00005a3c: DUP10
00005a3d: AND
00005a3e: DUP2
00005a3f: MSTORE
00005a40: PUSH1 0xf8
00005a42: DUP9
00005a43: SWAP1
00005a44: SHL
00005a45: PUSH1 0x01
00005a47: PUSH1 0x01
00005a49: PUSH1 0xf8
00005a4b: SHL
00005a4c: SUB
00005a4d: NOT
00005a4e: AND
00005a4f: PUSH1 0x04
00005a51: DUP3
00005a52: ADD
00005a53: MSTORE
00005a54: PUSH1 0xc0
00005a56: DUP8
00005a57: SWAP1
00005a58: SHL
00005a59: PUSH1 0x01
00005a5b: PUSH1 0x01
00005a5d: PUSH1 0xc0
00005a5f: SHL
00005a60: SUB
00005a61: NOT
00005a62: AND
00005a63: PUSH1 0x05
00005a65: DUP3
00005a66: ADD
00005a67: MSTORE
00005a68: DUP6
00005a69: MLOAD
00005a6a: PUSH1 0x00
00005a6c: SWAP1
00005a6d: PUSH2 0x5a7d
00005a70: DUP2
00005a71: PUSH1 0x0d
00005a73: DUP6
00005a74: ADD
00005a75: PUSH1 0x20
00005a77: DUP12
00005a78: ADD
00005a79: PUSH2 0x5226
00005a7c: JUMP
00005a7d: JUMPDEST
00005a7e: DUP1
00005a7f: DUP4
00005a80: ADD
00005a81: SWAP1
00005a82: POP
00005a83: DUP7
00005a84: PUSH1 0x0d
00005a86: DUP3
00005a87: ADD
00005a88: MSTORE
00005a89: DUP6
00005a8a: PUSH1 0x2d
00005a8c: DUP3
00005a8d: ADD
00005a8e: MSTORE
00005a8f: PUSH2 0xffff
00005a92: PUSH1 0xf0
00005a94: SHL
00005a95: DUP6
00005a96: PUSH1 0xf0
00005a98: SHL
00005a99: AND
00005a9a: PUSH1 0x4d
00005a9c: DUP3
00005a9d: ADD
00005a9e: MSTORE
00005a9f: DUP4
00005aa0: MLOAD
00005aa1: PUSH2 0x5ab1
00005aa4: DUP2
00005aa5: PUSH1 0x4f
00005aa7: DUP5
00005aa8: ADD
00005aa9: PUSH1 0x20
00005aab: DUP9
00005aac: ADD
00005aad: PUSH2 0x5226
00005ab0: JUMP
00005ab1: JUMPDEST
00005ab2: ADD
00005ab3: PUSH1 0x4f
00005ab5: ADD
00005ab6: SWAP11
00005ab7: SWAP10
00005ab8: POP
00005ab9: POP
00005aba: POP
00005abb: POP
00005abc: POP
00005abd: POP
00005abe: POP
00005abf: POP
00005ac0: POP
00005ac1: POP
00005ac2: JUMP
00005ac3: JUMPDEST
00005ac4: PUSH1 0x01
00005ac6: DUP1
00005ac7: PUSH1 0xa0
00005ac9: SHL
00005aca: SUB
00005acb: DUP7
00005acc: AND
00005acd: DUP2
00005ace: MSTORE
00005acf: DUP5
00005ad0: PUSH1 0x20
00005ad2: DUP3
00005ad3: ADD
00005ad4: MSTORE
00005ad5: PUSH1 0xa0
00005ad7: PUSH1 0x40
00005ad9: DUP3
00005ada: ADD
00005adb: MSTORE
00005adc: PUSH1 0x00
00005ade: PUSH2 0x5aea
00005ae1: PUSH1 0xa0
00005ae3: DUP4
00005ae4: ADD
00005ae5: DUP7
00005ae6: PUSH2 0x524a
00005ae9: JUMP
00005aea: JUMPDEST
00005aeb: PUSH2 0xffff
00005aee: SWAP5
00005aef: SWAP1
00005af0: SWAP5
00005af1: AND
00005af2: PUSH1 0x60
00005af4: DUP4
00005af5: ADD
00005af6: MSTORE
00005af7: POP
00005af8: PUSH1 0x80
00005afa: ADD
00005afb: MSTORE
00005afc: SWAP4
00005afd: SWAP3
00005afe: POP
00005aff: POP
00005b00: POP
00005b01: JUMP
00005b02: JUMPDEST
00005b03: PUSH1 0x00
00005b05: DUP3
00005b06: MLOAD
00005b07: PUSH2 0x5b14
00005b0a: DUP2
00005b0b: DUP5
00005b0c: PUSH1 0x20
00005b0e: DUP8
00005b0f: ADD
00005b10: PUSH2 0x5226
00005b13: JUMP
00005b14: JUMPDEST
00005b15: SWAP2
00005b16: SWAP1
00005b17: SWAP2
00005b18: ADD
00005b19: SWAP3
00005b1a: SWAP2
00005b1b: POP
00005b1c: POP
00005b1d: JUMP
00005b1e: JUMPDEST
00005b1f: PUSH1 0xff
00005b21: DUP3
00005b22: DUP2
00005b23: AND
00005b24: DUP3
00005b25: DUP3
00005b26: AND
00005b27: SUB
00005b28: SWAP1
00005b29: DUP2
00005b2a: GT
00005b2b: ISZERO
00005b2c: PUSH2 0x0898
00005b2f: JUMPI
00005b30: PUSH2 0x0898
00005b33: PUSH2 0x5961
00005b36: JUMP
00005b37: JUMPDEST
00005b38: PUSH1 0x01
00005b3a: DUP2
00005b3b: DUP2
00005b3c: JUMPDEST
00005b3d: DUP1
00005b3e: DUP6
00005b3f: GT
00005b40: ISZERO
00005b41: PUSH2 0x5b72
00005b44: JUMPI
00005b45: DUP2
00005b46: PUSH1 0x00
00005b48: NOT
00005b49: DIV
00005b4a: DUP3
00005b4b: GT
00005b4c: ISZERO
00005b4d: PUSH2 0x5b58
00005b50: JUMPI
00005b51: PUSH2 0x5b58
00005b54: PUSH2 0x5961
00005b57: JUMP
00005b58: JUMPDEST
00005b59: DUP1
00005b5a: DUP6
00005b5b: AND
00005b5c: ISZERO
00005b5d: PUSH2 0x5b65
00005b60: JUMPI
00005b61: SWAP2
00005b62: DUP2
00005b63: MUL
00005b64: SWAP2
00005b65: JUMPDEST
00005b66: SWAP4
00005b67: DUP5
00005b68: SHR
00005b69: SWAP4
00005b6a: SWAP1
00005b6b: DUP1
00005b6c: MUL
00005b6d: SWAP1
00005b6e: PUSH2 0x5b3c
00005b71: JUMP
00005b72: JUMPDEST
00005b73: POP
00005b74: SWAP3
00005b75: POP
00005b76: SWAP3
00005b77: SWAP1
00005b78: POP
00005b79: JUMP
00005b7a: JUMPDEST
00005b7b: PUSH1 0x00
00005b7d: DUP3
00005b7e: PUSH2 0x5b89
00005b81: JUMPI
00005b82: POP
00005b83: PUSH1 0x01
00005b85: PUSH2 0x0898
00005b88: JUMP
00005b89: JUMPDEST
00005b8a: DUP2
00005b8b: PUSH2 0x5b96
00005b8e: JUMPI
00005b8f: POP
00005b90: PUSH1 0x00
00005b92: PUSH2 0x0898
00005b95: JUMP
00005b96: JUMPDEST
00005b97: DUP2
00005b98: PUSH1 0x01
00005b9a: DUP2
00005b9b: EQ
00005b9c: PUSH2 0x5bac
00005b9f: JUMPI
00005ba0: PUSH1 0x02
00005ba2: DUP2
00005ba3: EQ
00005ba4: PUSH2 0x5bb6
00005ba7: JUMPI
00005ba8: PUSH2 0x5bd2
00005bab: JUMP
00005bac: JUMPDEST
00005bad: PUSH1 0x01
00005baf: SWAP2
00005bb0: POP
00005bb1: POP
00005bb2: PUSH2 0x0898
00005bb5: JUMP
00005bb6: JUMPDEST
00005bb7: PUSH1 0xff
00005bb9: DUP5
00005bba: GT
00005bbb: ISZERO
00005bbc: PUSH2 0x5bc7
00005bbf: JUMPI
00005bc0: PUSH2 0x5bc7
00005bc3: PUSH2 0x5961
00005bc6: JUMP
00005bc7: JUMPDEST
00005bc8: POP
00005bc9: POP
00005bca: PUSH1 0x01
00005bcc: DUP3
00005bcd: SHL
00005bce: PUSH2 0x0898
00005bd1: JUMP
00005bd2: JUMPDEST
00005bd3: POP
00005bd4: PUSH1 0x20
00005bd6: DUP4
00005bd7: LT
00005bd8: PUSH2 0x0133
00005bdb: DUP4
00005bdc: LT
00005bdd: AND
00005bde: PUSH1 0x4e
00005be0: DUP5
00005be1: LT
00005be2: PUSH1 0x0b
00005be4: DUP5
00005be5: LT
00005be6: AND
00005be7: OR
00005be8: ISZERO
00005be9: PUSH2 0x5bf5
00005bec: JUMPI
00005bed: POP
00005bee: DUP2
00005bef: DUP2
00005bf0: EXP
00005bf1: PUSH2 0x0898
00005bf4: JUMP
00005bf5: JUMPDEST
00005bf6: PUSH2 0x5bff
00005bf9: DUP4
00005bfa: DUP4
00005bfb: PUSH2 0x5b37
00005bfe: JUMP
00005bff: JUMPDEST
00005c00: DUP1
00005c01: PUSH1 0x00
00005c03: NOT
00005c04: DIV
00005c05: DUP3
00005c06: GT
00005c07: ISZERO
00005c08: PUSH2 0x5c13
00005c0b: JUMPI
00005c0c: PUSH2 0x5c13
00005c0f: PUSH2 0x5961
00005c12: JUMP
00005c13: JUMPDEST
00005c14: MUL
00005c15: SWAP4
00005c16: SWAP3
00005c17: POP
00005c18: POP
00005c19: POP
00005c1a: JUMP
00005c1b: JUMPDEST
00005c1c: PUSH1 0x00
00005c1e: PUSH2 0x1d6f
00005c21: PUSH1 0xff
00005c23: DUP5
00005c24: AND
00005c25: DUP4
00005c26: PUSH2 0x5b7a
00005c29: JUMP
00005c2a: JUMPDEST
00005c2b: PUSH1 0x00
00005c2d: DUP3
00005c2e: PUSH2 0x5c47
00005c31: JUMPI
00005c32: PUSH4 0x4e487b71
00005c37: PUSH1 0xe0
00005c39: SHL
00005c3a: PUSH1 0x00
00005c3c: MSTORE
00005c3d: PUSH1 0x12
00005c3f: PUSH1 0x04
00005c41: MSTORE
00005c42: PUSH1 0x24
00005c44: PUSH1 0x00
00005c46: REVERT
00005c47: JUMPDEST
00005c48: POP
00005c49: DIV
00005c4a: SWAP1
00005c4b: JUMP
00005c4c: JUMPDEST
00005c4d: DUP1
00005c4e: DUP3
00005c4f: MUL
00005c50: DUP2
00005c51: ISZERO
00005c52: DUP3
00005c53: DUP3
00005c54: DIV
00005c55: DUP5
00005c56: EQ
00005c57: OR
00005c58: PUSH2 0x0898
00005c5b: JUMPI
00005c5c: PUSH2 0x0898
00005c5f: PUSH2 0x5961
00005c62: JUMP
00005c63: JUMPDEST
00005c64: PUSH1 0x00
00005c66: PUSH1 0x20
00005c68: DUP3
00005c69: DUP5
00005c6a: SUB
00005c6b: SLT
00005c6c: ISZERO
00005c6d: PUSH2 0x5c75
00005c70: JUMPI
00005c71: PUSH1 0x00
00005c73: DUP1
00005c74: REVERT
00005c75: JUMPDEST
00005c76: DUP2
00005c77: MLOAD
00005c78: PUSH2 0x1d6f
00005c7b: DUP2
00005c7c: PUSH2 0x5002
00005c7f: JUMP
00005c80: JUMPDEST
00005c81: PUSH1 0x00
00005c83: PUSH1 0x20
00005c85: DUP3
00005c86: DUP5
00005c87: SUB
00005c88: SLT
00005c89: ISZERO
00005c8a: PUSH2 0x5c92
00005c8d: JUMPI
00005c8e: PUSH1 0x00
00005c90: DUP1
00005c91: REVERT
00005c92: JUMPDEST
00005c93: DUP2
00005c94: MLOAD
00005c95: PUSH2 0x1d6f
00005c98: DUP2
00005c99: PUSH2 0x5289
00005c9c: JUMP
00005c9d: JUMPDEST
00005c9e: PUSH1 0x00
00005ca0: DUP4
00005ca1: MLOAD
00005ca2: PUSH2 0x5caf
00005ca5: DUP2
00005ca6: DUP5
00005ca7: PUSH1 0x20
00005ca9: DUP9
00005caa: ADD
00005cab: PUSH2 0x5226
00005cae: JUMP
00005caf: JUMPDEST
00005cb0: DUP4
00005cb1: MLOAD
00005cb2: SWAP1
00005cb3: DUP4
00005cb4: ADD
00005cb5: SWAP1
00005cb6: PUSH2 0x5cc3
00005cb9: DUP2
00005cba: DUP4
00005cbb: PUSH1 0x20
00005cbd: DUP9
00005cbe: ADD
00005cbf: PUSH2 0x5226
00005cc2: JUMP
00005cc3: JUMPDEST
00005cc4: ADD
00005cc5: SWAP5
00005cc6: SWAP4
00005cc7: POP
00005cc8: POP
00005cc9: POP
00005cca: POP
00005ccb: JUMP
00005ccc: JUMPDEST
00005ccd: PUSH1 0x00
00005ccf: PUSH1 0xc0
00005cd1: DUP3
00005cd2: ADD
00005cd3: SWAP1
00005cd4: POP
00005cd5: DUP4
00005cd6: MLOAD
00005cd7: DUP1
00005cd8: MLOAD
00005cd9: DUP4
00005cda: MSTORE
00005cdb: PUSH1 0x20
00005cdd: DUP2
00005cde: ADD
00005cdf: MLOAD
00005ce0: PUSH1 0x20
00005ce2: DUP5
00005ce3: ADD
00005ce4: MSTORE
00005ce5: PUSH1 0xff
00005ce7: PUSH1 0x40
00005ce9: DUP3
00005cea: ADD
00005ceb: MLOAD
00005cec: AND
00005ced: PUSH1 0x40
00005cef: DUP5
00005cf0: ADD
00005cf1: MSTORE
00005cf2: POP
00005cf3: PUSH1 0x20
00005cf5: DUP5
00005cf6: ADD
00005cf7: MLOAD
00005cf8: PUSH2 0x5d12
00005cfb: PUSH1 0x60
00005cfd: DUP5
00005cfe: ADD
00005cff: DUP3
00005d00: DUP1
00005d01: MLOAD
00005d02: PUSH2 0xffff
00005d05: AND
00005d06: DUP3
00005d07: MSTORE
00005d08: PUSH1 0x20
00005d0a: SWAP1
00005d0b: DUP2
00005d0c: ADD
00005d0d: MLOAD
00005d0e: SWAP2
00005d0f: ADD
00005d10: MSTORE
00005d11: JUMP
00005d12: JUMPDEST
00005d13: POP
00005d14: PUSH1 0x01
00005d16: PUSH1 0x01
00005d18: PUSH1 0xa0
00005d1a: SHL
00005d1b: SUB
00005d1c: SWAP3
00005d1d: SWAP1
00005d1e: SWAP3
00005d1f: AND
00005d20: PUSH1 0xa0
00005d22: SWAP2
00005d23: SWAP1
00005d24: SWAP2
00005d25: ADD
00005d26: MSTORE
00005d27: SWAP2
00005d28: SWAP1
00005d29: POP
00005d2a: JUMP
00005d2b: JUMPDEST
00005d2c: PUSH2 0xffff
00005d2f: DUP8
00005d30: AND
00005d31: DUP2
00005d32: MSTORE
00005d33: DUP6
00005d34: PUSH1 0x20
00005d36: DUP3
00005d37: ADD
00005d38: MSTORE
00005d39: DUP5
00005d3a: PUSH1 0x40
00005d3c: DUP3
00005d3d: ADD
00005d3e: MSTORE
00005d3f: PUSH1 0x01
00005d41: PUSH1 0x01
00005d43: PUSH1 0x40
00005d45: SHL
00005d46: SUB
00005d47: DUP5
00005d48: AND
00005d49: PUSH1 0x60
00005d4b: DUP3
00005d4c: ADD
00005d4d: MSTORE
00005d4e: PUSH1 0xc0
00005d50: PUSH1 0x80
00005d52: DUP3
00005d53: ADD
00005d54: MSTORE
00005d55: PUSH1 0x00
00005d57: PUSH2 0x5d63
00005d5a: PUSH1 0xc0
00005d5c: DUP4
00005d5d: ADD
00005d5e: DUP6
00005d5f: PUSH2 0x524a
00005d62: JUMP
00005d63: JUMPDEST
00005d64: DUP3
00005d65: DUP2
00005d66: SUB
00005d67: PUSH1 0xa0
00005d69: DUP5
00005d6a: ADD
00005d6b: MSTORE
00005d6c: PUSH2 0x5d75
00005d6f: DUP2
00005d70: DUP6
00005d71: PUSH2 0x524a
00005d74: JUMP
00005d75: JUMPDEST
00005d76: SWAP10
00005d77: SWAP9
00005d78: POP
00005d79: POP
00005d7a: POP
00005d7b: POP
00005d7c: POP
00005d7d: POP
00005d7e: POP
00005d7f: POP
00005d80: POP
00005d81: JUMP
00005d82: JUMPDEST
00005d83: PUSH1 0x00
00005d85: PUSH1 0x20
00005d87: DUP3
00005d88: DUP5
00005d89: SUB
00005d8a: SLT
00005d8b: ISZERO
00005d8c: PUSH2 0x5d94
00005d8f: JUMPI
00005d90: PUSH1 0x00
00005d92: DUP1
00005d93: REVERT
00005d94: JUMPDEST
00005d95: POP
00005d96: MLOAD
00005d97: SWAP2
00005d98: SWAP1
00005d99: POP
00005d9a: JUMP
00005d9b: JUMPDEST
00005d9c: PUSH1 0x1f
00005d9e: DUP3
00005d9f: GT
00005da0: ISZERO
00005da1: PUSH2 0x08f2
00005da4: JUMPI
00005da5: PUSH1 0x00
00005da7: DUP2
00005da8: DUP2
00005da9: MSTORE
00005daa: PUSH1 0x20
00005dac: DUP2
00005dad: KECCAK256
00005dae: PUSH1 0x1f
00005db0: DUP6
00005db1: ADD
00005db2: PUSH1 0x05
00005db4: SHR
00005db5: DUP2
00005db6: ADD
00005db7: PUSH1 0x20
00005db9: DUP7
00005dba: LT
00005dbb: ISZERO
00005dbc: PUSH2 0x5dc2
00005dbf: JUMPI
00005dc0: POP
00005dc1: DUP1
00005dc2: JUMPDEST
00005dc3: PUSH1 0x1f
00005dc5: DUP6
00005dc6: ADD
00005dc7: PUSH1 0x05
00005dc9: SHR
00005dca: DUP3
00005dcb: ADD
00005dcc: SWAP2
00005dcd: POP
00005dce: JUMPDEST
00005dcf: DUP2
00005dd0: DUP2
00005dd1: LT
00005dd2: ISZERO
00005dd3: PUSH2 0x0e1a
00005dd6: JUMPI
00005dd7: DUP3
00005dd8: DUP2
00005dd9: SSTORE
00005dda: PUSH1 0x01
00005ddc: ADD
00005ddd: PUSH2 0x5dce
00005de0: JUMP
00005de1: JUMPDEST
00005de2: DUP2
00005de3: MLOAD
00005de4: PUSH1 0x01
00005de6: PUSH1 0x01
00005de8: PUSH1 0x40
00005dea: SHL
00005deb: SUB
00005dec: DUP2
00005ded: GT
00005dee: ISZERO
00005def: PUSH2 0x5dfa
00005df2: JUMPI
00005df3: PUSH2 0x5dfa
00005df6: PUSH2 0x50b3
00005df9: JUMP
00005dfa: JUMPDEST
00005dfb: PUSH2 0x5e0e
00005dfe: DUP2
00005dff: PUSH2 0x5e08
00005e02: DUP5
00005e03: SLOAD
00005e04: PUSH2 0x5904
00005e07: JUMP
00005e08: JUMPDEST
00005e09: DUP5
00005e0a: PUSH2 0x5d9b
00005e0d: JUMP
00005e0e: JUMPDEST
00005e0f: PUSH1 0x20
00005e11: DUP1
00005e12: PUSH1 0x1f
00005e14: DUP4
00005e15: GT
00005e16: PUSH1 0x01
00005e18: DUP2
00005e19: EQ
00005e1a: PUSH2 0x5e43
00005e1d: JUMPI
00005e1e: PUSH1 0x00
00005e20: DUP5
00005e21: ISZERO
00005e22: PUSH2 0x5e2b
00005e25: JUMPI
00005e26: POP
00005e27: DUP6
00005e28: DUP4
00005e29: ADD
00005e2a: MLOAD
00005e2b: JUMPDEST
00005e2c: PUSH1 0x00
00005e2e: NOT
00005e2f: PUSH1 0x03
00005e31: DUP7
00005e32: SWAP1
00005e33: SHL
00005e34: SHR
00005e35: NOT
00005e36: AND
00005e37: PUSH1 0x01
00005e39: DUP6
00005e3a: SWAP1
00005e3b: SHL
00005e3c: OR
00005e3d: DUP6
00005e3e: SSTORE
00005e3f: PUSH2 0x0e1a
00005e42: JUMP
00005e43: JUMPDEST
00005e44: PUSH1 0x00
00005e46: DUP6
00005e47: DUP2
00005e48: MSTORE
00005e49: PUSH1 0x20
00005e4b: DUP2
00005e4c: KECCAK256
00005e4d: PUSH1 0x1f
00005e4f: NOT
00005e50: DUP7
00005e51: AND
00005e52: SWAP2
00005e53: JUMPDEST
00005e54: DUP3
00005e55: DUP2
00005e56: LT
00005e57: ISZERO
00005e58: PUSH2 0x5e72
00005e5b: JUMPI
00005e5c: DUP9
00005e5d: DUP7
00005e5e: ADD
00005e5f: MLOAD
00005e60: DUP3
00005e61: SSTORE
00005e62: SWAP5
00005e63: DUP5
00005e64: ADD
00005e65: SWAP5
00005e66: PUSH1 0x01
00005e68: SWAP1
00005e69: SWAP2
00005e6a: ADD
00005e6b: SWAP1
00005e6c: DUP5
00005e6d: ADD
00005e6e: PUSH2 0x5e53
00005e71: JUMP
00005e72: JUMPDEST
00005e73: POP
00005e74: DUP6
00005e75: DUP3
00005e76: LT
00005e77: ISZERO
00005e78: PUSH2 0x5e90
00005e7b: JUMPI
00005e7c: DUP8
00005e7d: DUP6
00005e7e: ADD
00005e7f: MLOAD
00005e80: PUSH1 0x00
00005e82: NOT
00005e83: PUSH1 0x03
00005e85: DUP9
00005e86: SWAP1
00005e87: SHL
00005e88: PUSH1 0xf8
00005e8a: AND
00005e8b: SHR
00005e8c: NOT
00005e8d: AND
00005e8e: DUP2
00005e8f: SSTORE
00005e90: JUMPDEST
00005e91: POP
00005e92: POP
00005e93: POP
00005e94: POP
00005e95: POP
00005e96: PUSH1 0x01
00005e98: SWAP1
00005e99: DUP2
00005e9a: SHL
00005e9b: ADD
00005e9c: SWAP1
00005e9d: SSTORE
00005e9e: POP
00005e9f: JUMP
00005ea0: JUMPDEST
00005ea1: PUSH1 0x01
00005ea3: PUSH1 0x01
00005ea5: PUSH1 0x40
00005ea7: SHL
00005ea8: SUB
00005ea9: DUP3
00005eaa: DUP2
00005eab: AND
00005eac: DUP3
00005ead: DUP3
00005eae: AND
00005eaf: SUB
00005eb0: SWAP1
00005eb1: DUP1
00005eb2: DUP3
00005eb3: GT
00005eb4: ISZERO
00005eb5: PUSH2 0x59aa
00005eb8: JUMPI
00005eb9: PUSH2 0x59aa
00005ebc: PUSH2 0x5961
00005ebf: JUMP
00005ec0: INVALID
00005ec1: SWAP12
00005ec2: PUSH24 0x9b17422d0df92223018b32b4d1fa46e071723d6817e2486d
00005edb: STOP
00005edc: EXTCODESIZE
00005edd: UNKNOWN(0xEC)
00005ede: UNKNOWN(0xC5)
00005edf: PUSH0
00005ee0: STOP
00005ee1: CREATE
00005ee2: UNKNOWN(0xC5)
00005ee3: PUSH31 0x16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a264
00005f03: PUSH10 0x70667358221220fd827d
00005f0e: UNKNOWN(0xED)
00005f0f: ADDMOD
00005f10: PUSH11 0xa49f70dcfad05ed0238d08
00005f1c: TLOAD
00005f1d: DIV
00005f1e: MSTORE8
00005f1f: DIV
00005f20: SWAP13
00005f21: GASLIMIT
00005f22: UNKNOWN(0xBB)
00005f23: UNKNOWN(0xE9)
00005f24: CALLER
00005f25: PUSH1 0xaa
00005f27: MOD
00005f28: PUSH2 0x9abe
00005f2b: PUSH5 0x736f6c6343
00005f31: STOP
00005f32: ADDMOD
00005f33: SGT
00005f34: STOP
00005f35: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
critical upgradeability detector Untrusted DELEGATECALL target reachable 70 no no
view
trace_id: 0x8eebdb99801795531aae16ffb62ac79dc8c4e935bdc60f39a2c433b22c631edb
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 0,
    "status": "unknown",
    "attempts": 192,
    "trace_id": "0x8eebdb99801795531aae16ffb62ac79dc8c4e935bdc60f39a2c433b22c631edb",
    "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": "0xebd47c2f",
            "selector": "0xebd47c2f",
            "calldata_variants": [
                "0xebd47c2f",
                "0xebd47c2f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf1537686",
            "selector": "0xf1537686",
            "calldata_variants": [
                "0xf1537686",
                "0xf15376860000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf7514fbc",
            "selector": "0xf7514fbc",
            "calldata_variants": [
                "0xf7514fbc",
                "0xf7514fbc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfd96063c",
            "selector": "0xfd96063c",
            "calldata_variants": [
                "0xfd96063c",
                "0xfd96063c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc033e0db",
            "selector": "0xc033e0db",
            "calldata_variants": [
                "0xc033e0db",
                "0xc033e0db0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc0b07bde",
            "selector": "0xc0b07bde",
            "calldata_variants": [
                "0xc0b07bde",
                "0xc0b07bde0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc128d170",
            "selector": "0xc128d170",
            "calldata_variants": [
                "0xc128d170",
                "0xc128d1700000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 2353,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        },
        {
            "pc": 7718,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        },
        {
            "pc": 8264,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        }
    ],
    "guards_detected": [],
    "delegatecall_count": 4,
    "untrusted_delegatecall_count": 4
}
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0xd0cf4da5e73c7bdee77d8e2faadbf38a9ca2ad8de7c0e00e1fa0140b4b1b0f4c
call_targets: 0xbd62568e7f561f2067d6916d9cbd6217b4f46127
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xd0cf4da5e73c7bdee77d8e2faadbf38a9ca2ad8de7c0e00e1fa0140b4b1b0f4c",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xbd62568e7f561f2067d6916d9cbd6217b4f46127"
    ],
    "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": "0xebd47c2f",
            "selector": "0xebd47c2f",
            "calldata_variants": [
                "0xebd47c2f",
                "0xebd47c2f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf1537686",
            "selector": "0xf1537686",
            "calldata_variants": [
                "0xf1537686",
                "0xf15376860000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf7514fbc",
            "selector": "0xf7514fbc",
            "calldata_variants": [
                "0xf7514fbc",
                "0xf7514fbc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfd96063c",
            "selector": "0xfd96063c",
            "calldata_variants": [
                "0xfd96063c",
                "0xfd96063c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc033e0db",
            "selector": "0xc033e0db",
            "calldata_variants": [
                "0xc033e0db",
                "0xc033e0db0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc0b07bde",
            "selector": "0xc0b07bde",
            "calldata_variants": [
                "0xc0b07bde",
                "0xc0b07bde0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc128d170",
            "selector": "0xc128d170",
            "calldata_variants": [
                "0xc128d170",
                "0xc128d1700000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 7957,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 9950,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 10000,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 12,
    "guards_detected": [],
    "untrusted_call_count": 12
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0xd0cf4da5e73c7bdee77d8e2faadbf38a9ca2ad8de7c0e00e1fa0140b4b1b0f4c
call_targets: 0xbd62568e7f561f2067d6916d9cbd6217b4f46127
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xd0cf4da5e73c7bdee77d8e2faadbf38a9ca2ad8de7c0e00e1fa0140b4b1b0f4c",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xbd62568e7f561f2067d6916d9cbd6217b4f46127"
    ],
    "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": "0xebd47c2f",
            "selector": "0xebd47c2f",
            "calldata_variants": [
                "0xebd47c2f",
                "0xebd47c2f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf1537686",
            "selector": "0xf1537686",
            "calldata_variants": [
                "0xf1537686",
                "0xf15376860000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf7514fbc",
            "selector": "0xf7514fbc",
            "calldata_variants": [
                "0xf7514fbc",
                "0xf7514fbc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfd96063c",
            "selector": "0xfd96063c",
            "calldata_variants": [
                "0xfd96063c",
                "0xfd96063c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc033e0db",
            "selector": "0xc033e0db",
            "calldata_variants": [
                "0xc033e0db",
                "0xc033e0db0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc0b07bde",
            "selector": "0xc0b07bde",
            "calldata_variants": [
                "0xc0b07bde",
                "0xc0b07bde0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc128d170",
            "selector": "0xc128d170",
            "calldata_variants": [
                "0xc128d170",
                "0xc128d1700000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 7957,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 9950,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 10000,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 11,
    "guards_detected": []
}
medium other detector CREATE/CREATE2 reachable 45 no no
view
trace_id: 0x201bdc87355d2ca015147607d2cfadd9316d1b3e3511ae3a7162d1c2309cb7a7
validation_json
{
    "sink": "CREATE",
    "errors": 0,
    "status": "unknown",
    "attempts": 32,
    "trace_id": "0x201bdc87355d2ca015147607d2cfadd9316d1b3e3511ae3a7162d1c2309cb7a7",
    "confirmed": false,
    "trace_mode": "structLogs",
    "call_targets": null,
    "matched_probe": null,
    "target_varies": null,
    "classification": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xebd47c2f",
            "selector": "0xebd47c2f",
            "calldata_variants": [
                "0xebd47c2f",
                "0xebd47c2f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf1537686",
            "selector": "0xf1537686",
            "calldata_variants": [
                "0xf1537686",
                "0xf15376860000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf7514fbc",
            "selector": "0xf7514fbc",
            "calldata_variants": [
                "0xf7514fbc",
                "0xf7514fbc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfd96063c",
            "selector": "0xfd96063c",
            "calldata_variants": [
                "0xfd96063c",
                "0xfd96063c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc033e0db",
            "selector": "0xc033e0db",
            "calldata_variants": [
                "0xc033e0db",
                "0xc033e0db0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc0b07bde",
            "selector": "0xc0b07bde",
            "calldata_variants": [
                "0xc0b07bde",
                "0xc0b07bde0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc128d170",
            "selector": "0xc128d170",
            "calldata_variants": [
                "0xc128d170",
                "0xc128d1700000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "create_count": 1,
    "create2_count": 0
}
medium upgradeability cast DELEGATECALL present 80 no
view
evidence_json
{
    "notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
    "delegatecall_count": 4
}
low other cast Contract creation opcode present 60 no
view
evidence_json
{
    "notes": "runtime can deploy contracts dynamically via CREATE/CREATE2",
    "create_count": 1,
    "create2_count": 0
}
info other cast Heavy EXTCODE*/BALANCE usage 55 no
view
evidence_json
{
    "notes": "frequent external code or balance checks; may indicate introspection or validation logic",
    "ext_balance_count": 13
}
info other cast Heavy CALL-family usage 55 no
view
evidence_json
{
    "notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
    "call_family_count": 19
}