a3c64178-a5bd-4db6-b019-fba42c372822
Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?
| 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 |
No slither job recorded yet.
[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":[]}
{
"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
}
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
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| critical | upgradeability | detector | Untrusted DELEGATECALL target reachable | 70 | no | no |
viewtrace_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 |
viewtrace_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 |
viewtrace_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 |
viewtrace_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 | — |
viewevidence_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 | — |
viewevidence_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 | — |
viewevidence_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 | — |
viewevidence_json{
"notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
"call_family_count": 19
}
|