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

Analysis Run

88bd2506-df5e-49a8-b71b-00755028d3a1

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

What survived the funnel

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

Confirmed
0
Validated
0
Source
Verified
Review Backing
Not yet
Best current signal
Authorization based on tx.origin
crit 0 high 0 proxy context implementation known
Review Checklist
1. Read the findings table first. Ignore raw jobs until the result looks real.
2. Confirm attacker control, not just the existence of a sink.
3. Confirm money or privilege impact.
4. Keep it if the behavior is real. Kill it if this is normal proxy, admin, or upgrade plumbing.

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
31199 report.consolidate complete 1 / 1 3 months ago
77008 artifact.fetch failed 1 / 3 1 week ago
77009 tool.cast_disasm complete 1 / 3 1 week ago
77010 analysis.bundle complete 1 / 3 1 week ago
77011 capability.graph complete 1 / 3 1 week ago
77012 detector.run complete 1 / 3 1 week ago
77013 validation.fork complete 1 / 3 1 week ago

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
0
No findings?
yes
Summary
No concrete, exploitable profit path found in the provided bundle.
View stderr
[codex:1078854] OpenAI Codex v0.77.0 (research preview)
[codex:1078854] --------
[codex:1078854] workdir: /tmp/codex-multi-9zk6ffpy
[codex:1078854] model: gpt-5.2-codex
[codex:1078854] provider: openai
[codex:1078854] approval: never
[codex:1078854] sandbox: read-only
[codex:1078854] reasoning effort: xhigh
[codex:1078854] reasoning summaries: auto
[codex:1078854] session id: 019b7cad-e96f-76e2-886f-7f870caebd0b
[codex:1078854] --------
[codex:1078854] user
[codex:1078854] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:1078854] 
[codex:1078854] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:1078854] 
[codex:1078854] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:1078854] - Gas inefficiency, code quality, naming, or best practices
[codex:1078854] - Theoretical vulnerabilities without a clear extraction path
[codex:1078854] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:1078854] - Front-running unless it enables theft beyond MEV
[codex:1078854] - DoS, griefing, or issues that don't result in attacker profit
[codex:1078854] - Missing events, view function issues, or informational findings
[codex:1078854] 
[codex:1078854] HIGH-VALUE PATTERNS TO HUNT:
[codex:1078854] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:1078854] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:1078854] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:1078854] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:1078854] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:1078854] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:1078854] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:1078854] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:1078854] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:1078854] 
[codex:1078854] For each finding, you MUST provide:
[codex:1078854] 1. Exact file and line numbers of vulnerable code
[codex:1078854] 2. Step-by-step exploit transaction sequence
[codex:1078854] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:1078854] 
[codex:1078854] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:1078854] 
[codex:1078854] Output MUST be valid JSON matching the provided schema.
[codex:1078854] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:1078854] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:1078854] mcp startup: no servers
[codex:1078854] 
[codex:1078854] thinking
[codex:1078854] **Preparing to review instructions and skills**
[codex:1078854] exec
[codex:1078854] /bin/bash -lc ls in /tmp/codex-multi-9zk6ffpy succeeded in 5ms:
[codex:1078854] AUDIT_BUNDLE.txt
[codex:1078854] codex-output-schema.json
[codex:1078854] contracts
[codex:1078854] exec
[codex:1078854] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-9zk6ffpy succeeded in 6ms:
[codex:1078854] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:1078854] 
[codex:1078854] ================================================================================
[codex:1078854] FILE: contracts/src/L1/OptimismPortal2.sol
[codex:1078854] ================================================================================
[codex:1078854] // SPDX-License-Identifier: MIT
[codex:1078854] pragma solidity 0.8.15;
[codex:1078854] 
[codex:1078854] import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
[codex:1078854] import { SafeCall } from "src/libraries/SafeCall.sol";
[codex:1078854] import { DisputeGameFactory, IDisputeGame } from "src/dispute/DisputeGameFactory.sol";
[codex:1078854] import { SystemConfig } from "src/L1/SystemConfig.sol";
[codex:1078854] import { SuperchainConfig } from "src/L1/SuperchainConfig.sol";
[codex:1078854] import { Constants } from "src/libraries/Constants.sol";
[codex:1078854] import { Types } from "src/libraries/Types.sol";
[codex:1078854] import { Hashing } from "src/libraries/Hashing.sol";
[codex:1078854] import { SecureMerkleTrie } from "src/libraries/trie/SecureMerkleTrie.sol";
[codex:1078854] import { AddressAliasHelper } from "src/vendor/AddressAliasHelper.sol";
[codex:1078854] import { ResourceMetering } from "src/L1/ResourceMetering.sol";
[codex:1078854] import { ISemver } from "src/universal/ISemver.sol";
[codex:1078854] 
[codex:1078854] thinking
[codex:1078854] **Analyzing large contract audit for vulnerabilities**
[codex:1078854] exec
[codex:1078854] /bin/bash -lc 'rg --files contracts/src' in /tmp/codex-multi-9zk6ffpy succeeded in 8ms:
[codex:1078854] contracts/src/universal/ISemver.sol
[codex:1078854] contracts/src/libraries/Types.sol
[codex:1078854] contracts/src/libraries/Encoding.sol
[codex:1078854] contracts/src/libraries/PortalErrors.sol
[codex:1078854] contracts/src/libraries/SafeCall.sol
[codex:1078854] contracts/src/libraries/Storage.sol
[codex:1078854] contracts/src/libraries/Bytes.sol
[codex:1078854] contracts/src/libraries/Burn.sol
[codex:1078854] contracts/src/libraries/Constants.sol
[codex:1078854] contracts/src/libraries/rlp/RLPWriter.sol
[codex:1078854] contracts/src/libraries/rlp/RLPErrors.sol
[codex:1078854] contracts/src/libraries/rlp/RLPReader.sol
[codex:1078854] contracts/src/libraries/Hashing.sol
[codex:1078854] contracts/src/dispute/interfaces/IInitializable.sol
[codex:1078854] contracts/src/dispute/interfaces/IDisputeGame.sol
[codex:1078854] contracts/src/dispute/interfaces/IDisputeGameFactory.sol
[codex:1078854] contracts/src/L1/ResourceMetering.sol
[codex:1078854] contracts/src/L1/SystemConfig.sol
[codex:1078854] contracts/src/L1/OptimismPortal2.sol
[codex:1078854] contracts/src/L1/SuperchainConfig.sol
[codex:1078854] 
[codex:1078854] thinking
[codex:1078854] **Analyzing potential vulnerabilities in upgradeable contracts**
[codex:1078854] 
[codex:1078854] I'm reviewing contract upgradeability and initialization, focusing on whether public initialize functions in proxies could allow attackers to hijack control before admin setup. I'm also considering if malicious dispute games could exploit withdrawal proofs, so I plan to inspect DisputeGameFactory and related contracts next to understand authentication and verification logic.
[codex:1078854] exec
[codex:1078854] /bin/bash -lc "sed -n '1,240p' contracts/src/dispute/DisputeGameFactory.sol" in /tmp/codex-multi-9zk6ffpy succeeded in 5ms:
[codex:1078854] // SPDX-License-Identifier: MIT
[codex:1078854] pragma solidity 0.8.15;
[codex:1078854] 
[codex:1078854] import { LibClone } from "@solady/utils/LibClone.sol";
[codex:1078854] import { OwnableUpgradeable } from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
[codex:1078854] import { ISemver } from "src/universal/ISemver.sol";
[codex:1078854] 
[codex:1078854] import { IDisputeGame } from "src/dispute/interfaces/IDisputeGame.sol";
[codex:1078854] import { IDisputeGameFactory } from "src/dispute/interfaces/IDisputeGameFactory.sol";
[codex:1078854] 
[codex:1078854] import "src/dispute/lib/Types.sol";
[codex:1078854] import "src/dispute/lib/Errors.sol";
[codex:1078854] 
[codex:1078854] /// @title DisputeGameFactory
[codex:1078854] /// @notice A factory contract for creating `IDisputeGame` contracts. All created dispute games are stored in both a
[codex:1078854] ///         mapping and an append only array. The timestamp of the creation time of the dispute game is packed tightly
[codex:1078854] ///         into the storage slot with the address of the dispute game to make offchain discoverability of playable
[codex:1078854] ///         dispute games easier.
[codex:1078854] contract DisputeGameFactory is OwnableUpgradeable, IDisputeGameFactory, ISemver {
[codex:1078854]     /// @dev Allows for the creation of clone proxies with immutable arguments.
[codex:1078854] 
[codex:1078854] thinking
[codex:1078854] **Analyzing dispute game vulnerabilities and withdrawal checks**
[codex:1078854] exec
[codex:1078854] /bin/bash -lc 'rg -n "checkWithdrawal" -n contracts/src/L1/OptimismPortal2.sol' in /tmp/codex-multi-9zk6ffpy succeeded in 7ms:
[codex:1078854] 357:        checkWithdrawal(withdrawalHash, _proofSubmitter);
[codex:1078854] 461:    function checkWithdrawal(bytes32 _withdrawalHash, address _proofSubmitter) public view {
[codex:1078854] exec
[codex:1078854] /bin/bash -lc "sed -n '420,560p' contracts/src/L1/OptimismPortal2.sol" in /tmp/codex-multi-9zk6ffpy succeeded in 5ms:
[codex:1078854]         // transactions are not gossipped over the p2p network.
[codex:1078854]         if (_data.length > 120_000) revert LargeCalldata();
[codex:1078854] 
[codex:1078854]         // Transform the from-address to its alias if the caller is a contract.
[codex:1078854]         address from = msg.sender;
[codex:1078854]         if (msg.sender != tx.origin) {
[codex:1078854]             from = AddressAliasHelper.applyL1ToL2Alias(msg.sender);
[codex:1078854]         }
[codex:1078854] 
[codex:1078854]         // Compute the opaque data that will be emitted as part of the TransactionDeposited event.
[codex:1078854]         // We use opaque data so that we can update the TransactionDeposited event in the future
[codex:1078854]         // without breaking the current interface.
[codex:1078854]         bytes memory opaqueData = abi.encodePacked(msg.value, _value, _gasLimit, _isCreation, _data);
[codex:1078854] 
[codex:1078854]         // Emit a TransactionDeposited event so that the rollup node can derive a deposit
[codex:1078854]         // transaction for this deposit.
[codex:1078854]         emit TransactionDeposited(from, _to, DEPOSIT_VERSION, opaqueData);
[codex:1078854]     }
[codex:1078854] 
[codex:1078854]     /// @notice Blacklists a dispute game. Should only be used in the event that a dispute game resolves incorrectly.
[codex:1078854] 
[codex:1078854] thinking
[codex:1078854] **Analyzing dispute game resolution logic**
[codex:1078854] exec
[codex:1078854] /bin/bash -lc "sed -n '1,240p' contracts/src/L1/SystemConfig.sol" in /tmp/codex-multi-9zk6ffpy succeeded in 6ms:
[codex:1078854] // SPDX-License-Identifier: MIT
[codex:1078854] pragma solidity 0.8.15;
[codex:1078854] 
[codex:1078854] import { OwnableUpgradeable } from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
[codex:1078854] import { ISemver } from "src/universal/ISemver.sol";
[codex:1078854] import { ResourceMetering } from "src/L1/ResourceMetering.sol";
[codex:1078854] import { Storage } from "src/libraries/Storage.sol";
[codex:1078854] import { Constants } from "src/libraries/Constants.sol";
[codex:1078854] 
[codex:1078854] /// @title SystemConfig
[codex:1078854] /// @notice The SystemConfig contract is used to manage configuration of an Optimism network.
[codex:1078854] ///         All configuration is stored on L1 and picked up by L2 as part of the derviation of
[codex:1078854] ///         the L2 chain.
[codex:1078854] contract SystemConfig is OwnableUpgradeable, ISemver {
[codex:1078854]     /// @notice Enum representing different types of updates.
[codex:1078854]     /// @custom:value BATCHER              Represents an update to the batcher hash.
[codex:1078854]     /// @custom:value GAS_CONFIG           Represents an update to txn fee config on L2.
[codex:1078854]     /// @custom:value GAS_LIMIT            Represents an update to gas limit on L2.
[codex:1078854]     /// @custom:value UNSAFE_BLOCK_SIGNER  Represents an update to the signer key for unsafe
[codex:1078854]     ///                                    block distrubution.
[codex:1078854] 
[codex:1078854] thinking
[codex:1078854] **Checking dependency on SuperchainConfig**
[codex:1078854] exec
[codex:1078854] /bin/bash -lc "sed -n '1,200p' contracts/src/L1/SuperchainConfig.sol" in /tmp/codex-multi-9zk6ffpy succeeded in 5ms:
[codex:1078854] // SPDX-License-Identifier: MIT
[codex:1078854] pragma solidity 0.8.15;
[codex:1078854] 
[codex:1078854] import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
[codex:1078854] import { ISemver } from "src/universal/ISemver.sol";
[codex:1078854] import { Storage } from "src/libraries/Storage.sol";
[codex:1078854] 
[codex:1078854] /// @custom:audit none This contracts is not yet audited.
[codex:1078854] /// @title SuperchainConfig
[codex:1078854] /// @notice The SuperchainConfig contract is used to manage configuration of global superchain values.
[codex:1078854] contract SuperchainConfig is Initializable, ISemver {
[codex:1078854]     /// @notice Enum representing different types of updates.
[codex:1078854]     /// @custom:value GUARDIAN            Represents an update to the guardian.
[codex:1078854]     enum UpdateType {
[codex:1078854]         GUARDIAN
[codex:1078854]     }
[codex:1078854] 
[codex:1078854]     /// @notice Whether or not the Superchain is paused.
[codex:1078854]     bytes32 public constant PAUSED_SLOT = bytes32(uint256(keccak256("superchainConfig.paused")) - 1);
[codex:1078854] 
[codex:1078854] 
[codex:1078854] thinking
[codex:1078854] **Examining ResourceMetering for vulnerabilities**
[codex:1078854] exec
[codex:1078854] /bin/bash -lc "sed -n '1,220p' contracts/src/L1/ResourceMetering.sol" in /tmp/codex-multi-9zk6ffpy succeeded in 5ms:
[codex:1078854] // SPDX-License-Identifier: MIT
[codex:1078854] pragma solidity 0.8.15;
[codex:1078854] 
[codex:1078854] import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
[codex:1078854] import { Math } from "@openzeppelin/contracts/utils/math/Math.sol";
[codex:1078854] import { Burn } from "src/libraries/Burn.sol";
[codex:1078854] import { Arithmetic } from "src/libraries/Arithmetic.sol";
[codex:1078854] 
[codex:1078854] /// @custom:upgradeable
[codex:1078854] /// @title ResourceMetering
[codex:1078854] /// @notice ResourceMetering implements an EIP-1559 style resource metering system where pricing
[codex:1078854] ///         updates automatically based on current demand.
[codex:1078854] abstract contract ResourceMetering is Initializable {
[codex:1078854]     /// @notice Error returned when too much gas resource is consumed.
[codex:1078854]     error OutOfGas();
[codex:1078854] 
[codex:1078854]     /// @notice Represents the various parameters that control the way in which resources are
[codex:1078854]     ///         metered. Corresponds to the EIP-1559 resource metering system.
[codex:1078854]     /// @custom:field prevBaseFee   Base fee from the previous block(s).
[codex:1078854]     /// @custom:field prevBoughtGas Amount of gas bought so far in the current block.
[codex:1078854] 
[codex:1078854] thinking
[codex:1078854] **Inspecting Burn library for issues**
[codex:1078854] exec
[codex:1078854] /bin/bash -lc "sed -n '1,200p' contracts/src/libraries/Burn.sol" in /tmp/codex-multi-9zk6ffpy succeeded in 6ms:
[codex:1078854] // SPDX-License-Identifier: MIT
[codex:1078854] pragma solidity 0.8.15;
[codex:1078854] 
[codex:1078854] /// @title Burn
[codex:1078854] /// @notice Utilities for burning stuff.
[codex:1078854] library Burn {
[codex:1078854]     /// @notice Burns a given amount of ETH.
[codex:1078854]     /// @param _amount Amount of ETH to burn.
[codex:1078854]     function eth(uint256 _amount) internal {
[codex:1078854]         new Burner{ value: _amount }();
[codex:1078854]     }
[codex:1078854] 
[codex:1078854]     /// @notice Burns a given amount of gas.
[codex:1078854]     /// @param _amount Amount of gas to burn.
[codex:1078854]     function gas(uint256 _amount) internal view {
[codex:1078854]         uint256 i = 0;
[codex:1078854]         uint256 initialGas = gasleft();
[codex:1078854]         while (initialGas - gasleft() < _amount) {
[codex:1078854]             ++i;
[codex:1078854]         }
[codex:1078854] 
[codex:1078854] thinking
[codex:1078854] **Checking for busy loops**
[codex:1078854] exec
[codex:1078854] /bin/bash -lc "sed -n '1,200p' contracts/src/libraries/SafeCall.sol" in /tmp/codex-multi-9zk6ffpy succeeded in 5ms:
[codex:1078854] // SPDX-License-Identifier: MIT
[codex:1078854] pragma solidity 0.8.15;
[codex:1078854] 
[codex:1078854] /// @title SafeCall
[codex:1078854] /// @notice Perform low level safe calls
[codex:1078854] library SafeCall {
[codex:1078854]     /// @notice Performs a low level call without copying any returndata.
[codex:1078854]     /// @dev Passes no calldata to the call context.
[codex:1078854]     /// @param _target   Address to call
[codex:1078854]     /// @param _gas      Amount of gas to pass to the call
[codex:1078854]     /// @param _value    Amount of value to pass to the call
[codex:1078854]     function send(address _target, uint256 _gas, uint256 _value) internal returns (bool) {
[codex:1078854]         bool _success;
[codex:1078854]         assembly {
[codex:1078854]             _success :=
[codex:1078854]                 call(
[codex:1078854]                     _gas, // gas
[codex:1078854]                     _target, // recipient
[codex:1078854]                     _value, // ether value
[codex:1078854]                     0, // inloc
[codex:1078854] 
[codex:1078854] thinking
[codex:1078854] **Investigating hashing dependencies**
[codex:1078854] exec
[codex:1078854] /bin/bash -lc "sed -n '1,200p' contracts/src/libraries/Hashing.sol" in /tmp/codex-multi-9zk6ffpy succeeded in 5ms:
[codex:1078854] // SPDX-License-Identifier: MIT
[codex:1078854] pragma solidity ^0.8.0;
[codex:1078854] 
[codex:1078854] import { Types } from "src/libraries/Types.sol";
[codex:1078854] import { Encoding } from "src/libraries/Encoding.sol";
[codex:1078854] 
[codex:1078854] /// @title Hashing
[codex:1078854] /// @notice Hashing handles Optimism's various different hashing schemes.
[codex:1078854] library Hashing {
[codex:1078854]     /// @notice Computes the hash of the RLP encoded L2 transaction that would be generated when a
[codex:1078854]     ///         given deposit is sent to the L2 system. Useful for searching for a deposit in the L2
[codex:1078854]     ///         system.
[codex:1078854]     /// @param _tx User deposit transaction to hash.
[codex:1078854]     /// @return Hash of the RLP encoded L2 deposit transaction.
[codex:1078854]     function hashDepositTransaction(Types.UserDepositTransaction memory _tx) internal pure returns (bytes32) {
[codex:1078854]         return keccak256(Encoding.encodeDepositTransaction(_tx));
[codex:1078854]     }
[codex:1078854] 
[codex:1078854]     /// @notice Computes the deposit transaction's "source hash", a value that guarantees the hash
[codex:1078854]     ///         of the L2 transaction that corresponds to a deposit is unique and is
[codex:1078854] 
[codex:1078854] thinking
[codex:1078854] **Checking hashing and types**
[codex:1078854] exec
[codex:1078854] /bin/bash -lc "sed -n '1,200p' contracts/src/libraries/Types.sol" in /tmp/codex-multi-9zk6ffpy succeeded in 5ms:
[codex:1078854] // SPDX-License-Identifier: MIT
[codex:1078854] pragma solidity ^0.8.0;
[codex:1078854] 
[codex:1078854] /// @title Types
[codex:1078854] /// @notice Contains various types used throughout the Optimism contract system.
[codex:1078854] library Types {
[codex:1078854]     /// @notice OutputProposal represents a commitment to the L2 state. The timestamp is the L1
[codex:1078854]     ///         timestamp that the output root is posted. This timestamp is used to verify that the
[codex:1078854]     ///         finalization period has passed since the output root was submitted.
[codex:1078854]     /// @custom:field outputRoot    Hash of the L2 output.
[codex:1078854]     /// @custom:field timestamp     Timestamp of the L1 block that the output root was submitted in.
[codex:1078854]     /// @custom:field l2BlockNumber L2 block number that the output corresponds to.
[codex:1078854]     struct OutputProposal {
[codex:1078854]         bytes32 outputRoot;
[codex:1078854]         uint128 timestamp;
[codex:1078854]         uint128 l2BlockNumber;
[codex:1078854]     }
[codex:1078854] 
[codex:1078854]     /// @notice Struct representing the elements that are hashed together to generate an output root
[codex:1078854]     ///         which itself represents a snapshot of the L2 state.
[codex:1078854] 
[codex:1078854] thinking
[codex:1078854] **Reviewing dispute interfaces**
[codex:1078854] exec
[codex:1078854] /bin/bash -lc "sed -n '1,200p' contracts/src/dispute/interfaces/IDisputeGame.sol" in /tmp/codex-multi-9zk6ffpy succeeded in 6ms:
[codex:1078854] // SPDX-License-Identifier: MIT
[codex:1078854] pragma solidity ^0.8.0;
[codex:1078854] 
[codex:1078854] import { IInitializable } from "src/dispute/interfaces/IInitializable.sol";
[codex:1078854] 
[codex:1078854] import "src/dispute/lib/Types.sol";
[codex:1078854] 
[codex:1078854] /// @title IDisputeGame
[codex:1078854] /// @notice The generic interface for a DisputeGame contract.
[codex:1078854] interface IDisputeGame is IInitializable {
[codex:1078854]     /// @notice Emitted when the game is resolved.
[codex:1078854]     /// @param status The status of the game after resolution.
[codex:1078854]     event Resolved(GameStatus indexed status);
[codex:1078854] 
[codex:1078854]     /// @notice Returns the timestamp that the DisputeGame contract was created at.
[codex:1078854]     /// @return createdAt_ The timestamp that the DisputeGame contract was created at.
[codex:1078854]     function createdAt() external view returns (Timestamp createdAt_);
[codex:1078854] 
[codex:1078854]     /// @notice Returns the timestamp that the DisputeGame contract was resolved at.
[codex:1078854]     /// @return resolvedAt_ The timestamp that the DisputeGame contract was resolved at.
[codex:1078854] 
[codex:1078854] thinking
[codex:1078854] **Verifying withdrawal and deposit logic**
[codex:1078854] exec
[codex:1078854] /bin/bash -lc 'rg -n "depositTransaction" -n contracts/src/L1/OptimismPortal2.sol' in /tmp/codex-multi-9zk6ffpy succeeded in 6ms:
[codex:1078854] 228:    ///         function for EOAs. Contracts should call the depositTransaction() function directly
[codex:1078854] 231:        depositTransaction(msg.sender, msg.value, RECEIVE_DEFAULT_GAS_LIMIT, false, bytes(""));
[codex:1078854] 398:    function depositTransaction(
[codex:1078854] exec
[codex:1078854] /bin/bash -lc "sed -n '360,460p' contracts/src/L1/OptimismPortal2.sol" in /tmp/codex-multi-9zk6ffpy succeeded in 6ms:
[codex:1078854]         finalizedWithdrawals[withdrawalHash] = true;
[codex:1078854] 
[codex:1078854]         // Set the l2Sender so contracts know who triggered this withdrawal on L2.
[codex:1078854]         l2Sender = _tx.sender;
[codex:1078854] 
[codex:1078854]         // Trigger the call to the target contract. We use a custom low level method
[codex:1078854]         // SafeCall.callWithMinGas to ensure two key properties
[codex:1078854]         //   1. Target contracts cannot force this call to run out of gas by returning a very large
[codex:1078854]         //      amount of data (and this is OK because we don't care about the returndata here).
[codex:1078854]         //   2. The amount of gas provided to the execution context of the target is at least the
[codex:1078854]         //      gas limit specified by the user. If there is not enough gas in the current context
[codex:1078854]         //      to accomplish this, `callWithMinGas` will revert.
[codex:1078854]         bool success = SafeCall.callWithMinGas(_tx.target, _tx.gasLimit, _tx.value, _tx.data);
[codex:1078854] 
[codex:1078854]         // Reset the l2Sender back to the default value.
[codex:1078854]         l2Sender = Constants.DEFAULT_L2_SENDER;
[codex:1078854] 
[codex:1078854]         // All withdrawals are immediately finalized. Replayability can
[codex:1078854]         // be achieved through contracts built on top of this contract
[codex:1078854]         emit WithdrawalFinalized(withdrawalHash, success);
[codex:1078854] 
[codex:1078854] thinking
[codex:1078854] **Analyzing DepositTransaction value handling**
[codex:1078854] exec
[codex:1078854] /bin/bash -lc 'rg -n "function set" contracts/src/L1/SystemConfig.sol' in /tmp/codex-multi-9zk6ffpy succeeded in 7ms:
[codex:1078854] 264:    function setUnsafeBlockSigner(address _unsafeBlockSigner) external onlyOwner {
[codex:1078854] 279:    function setBatcherHash(bytes32 _batcherHash) external onlyOwner {
[codex:1078854] 295:    function setGasConfig(uint256 _overhead, uint256 _scalar) external onlyOwner {
[codex:1078854] 312:    function setGasLimit(uint64 _gasLimit) external onlyOwner {
[codex:1078854] 
[codex:1078854] thinking
[codex:1078854] **Analyzing contract logic and potential vulnerabilities**
[codex:1078854] 
[codex:1078854] I'm examining various contract functions and patterns to see if vulnerabilities like reentrancy, proof forging, or underflows exist. I'm checking how proofs, withdrawals, and state transitions handle conditions, especially around deposit and finalize calls, Merkle trie proof validation, and looping constructs that might cause underflows or infinite loops. The logic seems mostly sound with careful guards, but I’m curious if any subtle bugs hide in libraries like Storage or MerkleTrie.
[codex:1078854] exec
[codex:1078854] /bin/bash -lc "sed -n '1,200p' contracts/src/libraries/Storage.sol" in /tmp/codex-multi-9zk6ffpy succeeded in 5ms:
[codex:1078854] // SPDX-License-Identifier: MIT
[codex:1078854] pragma solidity ^0.8.0;
[codex:1078854] 
[codex:1078854] /// @title Storage
[codex:1078854] /// @notice Storage handles reading and writing to arbitary storage locations
[codex:1078854] library Storage {
[codex:1078854]     /// @notice Returns an address stored in an arbitrary storage slot.
[codex:1078854]     ///         These storage slots decouple the storage layout from
[codex:1078854]     ///         solc's automation.
[codex:1078854]     /// @param _slot The storage slot to retrieve the address from.
[codex:1078854]     function getAddress(bytes32 _slot) internal view returns (address addr_) {
[codex:1078854]         assembly {
[codex:1078854]             addr_ := sload(_slot)
[codex:1078854]         }
[codex:1078854]     }
[codex:1078854] 
[codex:1078854]     /// @notice Stores an address in an arbitrary storage slot, `_slot`.
[codex:1078854]     /// @param _slot The storage slot to store the address in.
[codex:1078854]     /// @param _address The protocol version to store
[codex:1078854]     /// @dev WARNING! This function must be used cautiously, as it allows for overwriting addresses
[codex:1078854] 
[codex:1078854] thinking
[codex:1078854] **Analyzing upgradeable proxy initialization risks**
[codex:1078854] 
[codex:1078854] I’m carefully evaluating whether unprotected initialization in upgradeable proxies could lead to a concrete exploit. While publicly accessible initialize functions without access control are typical in proxies, leaving a proxy uninitialized lets an attacker set critical admin roles and malicious configs to drain funds. Given the context and instructions, this counts as a known deployment misconfiguration risk rather than a direct code bug, so I lean toward reporting no concrete exploit if the deployment is correct. Still, I’m parsing details on constructor calls, storage patterns, and config dependencies to be thorough.
[codex:1078854] exec
[codex:1078854] /bin/bash -lc "sed -n '1,200p' contracts/src/libraries/Constants.sol" in /tmp/codex-multi-9zk6ffpy succeeded in 5ms:
[codex:1078854] // SPDX-License-Identifier: MIT
[codex:1078854] pragma solidity ^0.8.0;
[codex:1078854] 
[codex:1078854] import { ResourceMetering } from "src/L1/ResourceMetering.sol";
[codex:1078854] 
[codex:1078854] /// @title Constants
[codex:1078854] /// @notice Constants is a library for storing constants. Simple! Don't put everything in here, just
[codex:1078854] ///         the stuff used in multiple contracts. Constants that only apply to a single contract
[codex:1078854] ///         should be defined in that contract instead.
[codex:1078854] library Constants {
[codex:1078854]     /// @notice Special address to be used as the tx origin for gas estimation calls in the
[codex:1078854]     ///         OptimismPortal and CrossDomainMessenger calls. You only need to use this address if
[codex:1078854]     ///         the minimum gas limit specified by the user is not actually enough to execute the
[codex:1078854]     ///         given message and you're attempting to estimate the actual necessary gas limit. We
[codex:1078854]     ///         use address(1) because it's the ecrecover precompile and therefore guaranteed to
[codex:1078854]     ///         never have any code on any EVM chain.
[codex:1078854]     address internal constant ESTIMATION_ADDRESS = address(1);
[codex:1078854] 
[codex:1078854]     /// @notice Value used for the L2 sender storage slot in both the OptimismPortal and the
[codex:1078854]     ///         CrossDomainMessenger contracts before an actual sender is set. This value is
[codex:1078854] 
[codex:1078854] thinking
[codex:1078854] **Analyzing potential withdrawal exploits**
[codex:1078854] exec
[codex:1078854] /bin/bash -lc "rg -n \"transfer|call\\(|send\\(|selfdestruct|withdraw\" contracts/src" in /tmp/codex-multi-9zk6ffpy succeeded in 9ms:
[codex:1078854] contracts/src/L1/SystemConfig.sol:174:        transferOwnership(_owner);
[codex:1078854] contracts/src/dispute/DisputeGameFactory.sol:50:        _transferOwnership(_owner);
[codex:1078854] contracts/src/L1/OptimismPortal2.sol:27:    /// @notice Represents a proven withdrawal.
[codex:1078854] contracts/src/L1/OptimismPortal2.sol:28:    /// @custom:field disputeGameProxy The address of the dispute game proxy that the withdrawal was proven against.
[codex:1078854] contracts/src/L1/OptimismPortal2.sol:29:    /// @custom:field timestamp        Timestamp at whcih the withdrawal was proven.
[codex:1078854] contracts/src/L1/OptimismPortal2.sol:35:    /// @notice The delay between when a withdrawal transaction is proven and when it may be finalized.
[codex:1078854] contracts/src/L1/OptimismPortal2.sol:38:    /// @notice The delay between when a dispute game is resolved and when a withdrawal proven against it may be
[codex:1078854] contracts/src/L1/OptimismPortal2.sol:48:    /// @notice Address of the L2 account which initiated a withdrawal in this transaction.
[codex:1078854] contracts/src/L1/OptimismPortal2.sol:53:    /// @notice A list of withdrawal hashes which have been successfully finalized.
[codex:1078854] contracts/src/L1/OptimismPortal2.sol:82:    /// @notice A mapping of withdrawal hashes to proof submitters to `ProvenWithdrawal` data.
[codex:1078854] contracts/src/L1/OptimismPortal2.sol:94:    /// @notice Mapping of withdrawal hashes to addresses that have submitted a proof for the withdrawal.
[codex:1078854] contracts/src/L1/OptimismPortal2.sol:110:    /// @notice Emitted when a withdrawal transaction is proven.
[codex:1078854] contracts/src/L1/OptimismPortal2.sol:111:    /// @param withdrawalHash Hash of the withdrawal transaction.
[codex:1078854] contracts/src/L1/OptimismPortal2.sol:112:    /// @param from           Address that triggered the withdrawal transaction.
[codex:1078854] contracts/src/L1/OptimismPortal2.sol:113:    /// @param to             Address that the withdrawal transaction is directed to.
[codex:1078854] contracts/src/L1/OptimismPortal2.sol:114:    event WithdrawalProven(bytes32 indexed withdrawalHash, address indexed from, address indexed to);
[codex:1078854] contracts/src/L1/OptimismPortal2.sol:116:    /// @notice Emitted when a withdrawal transaction is proven. Exists as a separate event to allow for backwards
[codex:1078854] contracts/src/L1/OptimismPortal2.sol:118:    /// @param withdrawalHash Hash of the withdrawal transaction.
[codex:1078854] contracts/src/L1/OptimismPortal2.sol:120:    event WithdrawalProvenExtension1(bytes32 indexed withdrawalHash, address indexed proofSubmitter);
[codex:1078854] contracts/src/L1/OptimismPortal2.sol:122:    /// @notice Emitted when a withdrawal transaction is finalized.
[codex:1078854] 
[codex:1078854] thinking
[codex:1078854] **Checking for withdrawal errors**
[codex:1078854] exec
[codex:1078854] /bin/bash -lc "sed -n '1,200p' contracts/src/dispute/lib/Errors.sol" in /tmp/codex-multi-9zk6ffpy succeeded in 5ms:
[codex:1078854] // SPDX-License-Identifier: MIT
[codex:1078854] pragma solidity ^0.8.15;
[codex:1078854] 
[codex:1078854] import "src/dispute/lib/LibUDT.sol";
[codex:1078854] 
[codex:1078854] ////////////////////////////////////////////////////////////////
[codex:1078854] //                `DisputeGameFactory` Errors                 //
[codex:1078854] ////////////////////////////////////////////////////////////////
[codex:1078854] 
[codex:1078854] /// @notice Thrown when a dispute game is attempted to be created with an unsupported game type.
[codex:1078854] /// @param gameType The unsupported game type.
[codex:1078854] error NoImplementation(GameType gameType);
[codex:1078854] 
[codex:1078854] /// @notice Thrown when a dispute game that already exists is attempted to be created.
[codex:1078854] /// @param uuid The UUID of the dispute game that already exists.
[codex:1078854] error GameAlreadyExists(Hash uuid);
[codex:1078854] 
[codex:1078854] /// @notice Thrown when the root claim has an unexpected VM status.
[codex:1078854] ///         Some games can only start with a root-claim with a specific status.
[codex:1078854] /// @param rootClaim is the claim that was unexpected.
[codex:1078854] 
[codex:1078854] thinking
[codex:1078854] **Assessing exploitable paths and game implementation**
[codex:1078854] exec
[codex:1078854] /bin/bash -lc "sed -n '1,160p' contracts/src/libraries/PortalErrors.sol" in /tmp/codex-multi-9zk6ffpy succeeded in 6ms:
[codex:1078854] // SPDX-License-Identifier: MIT
[codex:1078854] pragma solidity ^0.8.0;
[codex:1078854] 
[codex:1078854] /// @notice Error for when a deposit or withdrawal is to a bad target.
[codex:1078854] error BadTarget();
[codex:1078854] /// @notice Error for when a deposit has too much calldata.
[codex:1078854] error LargeCalldata();
[codex:1078854] /// @notice Error for when a deposit has too small of a gas limit.
[codex:1078854] error SmallGasLimit();
[codex:1078854] /// @notice Error for when a withdrawal transfer fails.
[codex:1078854] error TransferFailed();
[codex:1078854] /// @notice Error for when a method is called that only works when using a custom gas token.
[codex:1078854] error OnlyCustomGasToken();
[codex:1078854] /// @notice Error for when a method cannot be called with non zero CALLVALUE.
[codex:1078854] error NoValue();
[codex:1078854] /// @notice Error for an unauthorized CALLER.
[codex:1078854] error Unauthorized();
[codex:1078854] /// @notice Error for when a method cannot be called when paused. This could be renamed
[codex:1078854] ///         to `Paused` in the future, but it collides with the `Paused` event.
[codex:1078854] error CallPaused();
[codex:1078854] 
[codex:1078854] thinking
[codex:1078854] **Preparing final JSON output**
[codex:1078854] codex
[codex:1078854] {"no_findings":true,"summary":"No concrete, exploitable profit path found in the provided bundle.","findings":[]}
[codex:1078854] tokens used
[codex:1078854] 78,283
[codex:1078854] {"no_findings":true,"summary":"No concrete, exploitable profit path found in the provided bundle.","findings":[]}
Metadata
{
    "codex": {
        "ran_at": "2026-01-02T03:12:31.910814+00:00",
        "returncode": 0
    },
    "summary": "No concrete, exploitable profit path found in the provided bundle.",
    "raw_final": {
        "summary": "No concrete, exploitable profit path found in the provided bundle.",
        "findings": [],
        "no_findings": true
    },
    "no_findings": true,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
11
EXT*/BALANCE
2
Total opcodes
9317
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x01b0
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x7fc48504
00000019: GT
0000001a: PUSH2 0x00ec
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0xa35d99df
00000024: GT
00000025: PUSH2 0x008a
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xbf653a5c
0000002f: GT
00000030: PUSH2 0x0064
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xbf653a5c
0000003a: EQ
0000003b: PUSH2 0x062b
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xcff0ab96
00000045: EQ
00000046: PUSH2 0x065e
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0xe9e05c42
00000050: EQ
00000051: PUSH2 0x06ff
00000054: JUMPI
00000055: DUP1
00000056: PUSH4 0xf2b4e617
0000005b: EQ
0000005c: PUSH2 0x0712
0000005f: JUMPI
00000060: PUSH1 0x00
00000062: DUP1
00000063: REVERT
00000064: JUMPDEST
00000065: DUP1
00000066: PUSH4 0xa35d99df
0000006b: EQ
0000006c: PUSH2 0x0544
0000006f: JUMPI
00000070: DUP1
00000071: PUSH4 0xa3860f48
00000076: EQ
00000077: PUSH2 0x0564
0000007a: JUMPI
0000007b: DUP1
0000007c: PUSH4 0xbb2c727e
00000081: EQ
00000082: PUSH2 0x0584
00000085: JUMPI
00000086: PUSH1 0x00
00000088: DUP1
00000089: REVERT
0000008a: JUMPDEST
0000008b: DUP1
0000008c: PUSH4 0x8e819e54
00000091: GT
00000092: PUSH2 0x00c6
00000095: JUMPI
00000096: DUP1
00000097: PUSH4 0x8e819e54
0000009c: EQ
0000009d: PUSH2 0x0494
000000a0: JUMPI
000000a1: DUP1
000000a2: PUSH4 0x952b2797
000000a7: EQ
000000a8: PUSH2 0x04b4
000000ab: JUMPI
000000ac: DUP1
000000ad: PUSH4 0x9bf62d82
000000b2: EQ
000000b3: PUSH2 0x04e7
000000b6: JUMPI
000000b7: DUP1
000000b8: PUSH4 0xa14238e7
000000bd: EQ
000000be: PUSH2 0x0514
000000c1: JUMPI
000000c2: PUSH1 0x00
000000c4: DUP1
000000c5: REVERT
000000c6: JUMPDEST
000000c7: DUP1
000000c8: PUSH4 0x7fc48504
000000cd: EQ
000000ce: PUSH2 0x0454
000000d1: JUMPI
000000d2: DUP1
000000d3: PUSH4 0x8b4c40b0
000000d8: EQ
000000d9: PUSH2 0x01d5
000000dc: JUMPI
000000dd: DUP1
000000de: PUSH4 0x8c3152e9
000000e3: EQ
000000e4: PUSH2 0x0474
000000e7: JUMPI
000000e8: PUSH1 0x00
000000ea: DUP1
000000eb: REVERT
000000ec: JUMPDEST
000000ed: DUP1
000000ee: PUSH4 0x4870496f
000000f3: GT
000000f4: PUSH2 0x0159
000000f7: JUMPI
000000f8: DUP1
000000f9: PUSH4 0x54fd4d50
000000fe: GT
000000ff: PUSH2 0x0133
00000102: JUMPI
00000103: DUP1
00000104: PUSH4 0x54fd4d50
00000109: EQ
0000010a: PUSH2 0x03a9
0000010d: JUMPI
0000010e: DUP1
0000010f: PUSH4 0x5c975abb
00000114: EQ
00000115: PUSH2 0x03ff
00000118: JUMPI
00000119: DUP1
0000011a: PUSH4 0x71c1566e
0000011f: EQ
00000120: PUSH2 0x0414
00000123: JUMPI
00000124: DUP1
00000125: PUSH4 0x7d6be8dc
0000012a: EQ
0000012b: PUSH2 0x0434
0000012e: JUMPI
0000012f: PUSH1 0x00
00000131: DUP1
00000132: REVERT
00000133: JUMPDEST
00000134: DUP1
00000135: PUSH4 0x4870496f
0000013a: EQ
0000013b: PUSH2 0x030c
0000013e: JUMPI
0000013f: DUP1
00000140: PUSH4 0x4fd0434c
00000145: EQ
00000146: PUSH2 0x032c
00000149: JUMPI
0000014a: DUP1
0000014b: PUSH4 0x513747ab
00000150: EQ
00000151: PUSH2 0x036e
00000154: JUMPI
00000155: PUSH1 0x00
00000157: DUP1
00000158: REVERT
00000159: JUMPDEST
0000015a: DUP1
0000015b: PUSH4 0x43ca1c50
00000160: GT
00000161: PUSH2 0x018a
00000164: JUMPI
00000165: DUP1
00000166: PUSH4 0x43ca1c50
0000016b: EQ
0000016c: PUSH2 0x0297
0000016f: JUMPI
00000170: DUP1
00000171: PUSH4 0x452a9320
00000176: EQ
00000177: PUSH2 0x02b7
0000017a: JUMPI
0000017b: DUP1
0000017c: PUSH4 0x45884d32
00000181: EQ
00000182: PUSH2 0x02cc
00000185: JUMPI
00000186: PUSH1 0x00
00000188: DUP1
00000189: REVERT
0000018a: JUMPDEST
0000018b: DUP1
0000018c: PUSH4 0x33d7e2bd
00000191: EQ
00000192: PUSH2 0x01dc
00000195: JUMPI
00000196: DUP1
00000197: PUSH4 0x35e80ab3
0000019c: EQ
0000019d: PUSH2 0x0233
000001a0: JUMPI
000001a1: DUP1
000001a2: PUSH4 0x3c9f397c
000001a7: EQ
000001a8: PUSH2 0x0265
000001ab: JUMPI
000001ac: PUSH1 0x00
000001ae: DUP1
000001af: REVERT
000001b0: JUMPDEST
000001b1: CALLDATASIZE
000001b2: PUSH2 0x01d7
000001b5: JUMPI
000001b6: PUSH2 0x01d5
000001b9: CALLER
000001ba: CALLVALUE
000001bb: PUSH3 0x0186a0
000001bf: PUSH1 0x00
000001c1: PUSH1 0x40
000001c3: MLOAD
000001c4: DUP1
000001c5: PUSH1 0x20
000001c7: ADD
000001c8: PUSH1 0x40
000001ca: MSTORE
000001cb: DUP1
000001cc: PUSH1 0x00
000001ce: DUP2
000001cf: MSTORE
000001d0: POP
000001d1: PUSH2 0x073f
000001d4: JUMP
000001d5: JUMPDEST
000001d6: STOP
000001d7: JUMPDEST
000001d8: PUSH1 0x00
000001da: DUP1
000001db: REVERT
000001dc: JUMPDEST
000001dd: CALLVALUE
000001de: DUP1
000001df: ISZERO
000001e0: PUSH2 0x01e8
000001e3: JUMPI
000001e4: PUSH1 0x00
000001e6: DUP1
000001e7: REVERT
000001e8: JUMPDEST
000001e9: POP
000001ea: PUSH1 0x37
000001ec: SLOAD
000001ed: PUSH2 0x0209
000001f0: SWAP1
000001f1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000206: AND
00000207: DUP2
00000208: JUMP
00000209: JUMPDEST
0000020a: PUSH1 0x40
0000020c: MLOAD
0000020d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000222: SWAP1
00000223: SWAP2
00000224: AND
00000225: DUP2
00000226: MSTORE
00000227: PUSH1 0x20
00000229: ADD
0000022a: JUMPDEST
0000022b: PUSH1 0x40
0000022d: MLOAD
0000022e: DUP1
0000022f: SWAP2
00000230: SUB
00000231: SWAP1
00000232: RETURN
00000233: JUMPDEST
00000234: CALLVALUE
00000235: DUP1
00000236: ISZERO
00000237: PUSH2 0x023f
0000023a: JUMPI
0000023b: PUSH1 0x00
0000023d: DUP1
0000023e: REVERT
0000023f: JUMPDEST
00000240: POP
00000241: PUSH1 0x35
00000243: SLOAD
00000244: PUSH2 0x0209
00000247: SWAP1
00000248: PUSH2 0x0100
0000024b: SWAP1
0000024c: DIV
0000024d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000262: AND
00000263: DUP2
00000264: JUMP
00000265: JUMPDEST
00000266: CALLVALUE
00000267: DUP1
00000268: ISZERO
00000269: PUSH2 0x0271
0000026c: JUMPI
0000026d: PUSH1 0x00
0000026f: DUP1
00000270: REVERT
00000271: JUMPDEST
00000272: POP
00000273: PUSH1 0x3b
00000275: SLOAD
00000276: PUSH2 0x0282
00000279: SWAP1
0000027a: PUSH4 0xffffffff
0000027f: AND
00000280: DUP2
00000281: JUMP
00000282: JUMPDEST
00000283: PUSH1 0x40
00000285: MLOAD
00000286: PUSH4 0xffffffff
0000028b: SWAP1
0000028c: SWAP2
0000028d: AND
0000028e: DUP2
0000028f: MSTORE
00000290: PUSH1 0x20
00000292: ADD
00000293: PUSH2 0x022a
00000296: JUMP
00000297: JUMPDEST
00000298: CALLVALUE
00000299: DUP1
0000029a: ISZERO
0000029b: PUSH2 0x02a3
0000029e: JUMPI
0000029f: PUSH1 0x00
000002a1: DUP1
000002a2: REVERT
000002a3: JUMPDEST
000002a4: POP
000002a5: PUSH2 0x01d5
000002a8: PUSH2 0x02b2
000002ab: CALLDATASIZE
000002ac: PUSH1 0x04
000002ae: PUSH2 0x46f9
000002b1: JUMP
000002b2: JUMPDEST
000002b3: PUSH2 0x08fc
000002b6: JUMP
000002b7: JUMPDEST
000002b8: CALLVALUE
000002b9: DUP1
000002ba: ISZERO
000002bb: PUSH2 0x02c3
000002be: JUMPI
000002bf: PUSH1 0x00
000002c1: DUP1
000002c2: REVERT
000002c3: JUMPDEST
000002c4: POP
000002c5: PUSH2 0x0209
000002c8: PUSH2 0x0b5a
000002cb: JUMP
000002cc: JUMPDEST
000002cd: CALLVALUE
000002ce: DUP1
000002cf: ISZERO
000002d0: PUSH2 0x02d8
000002d3: JUMPI
000002d4: PUSH1 0x00
000002d6: DUP1
000002d7: REVERT
000002d8: JUMPDEST
000002d9: POP
000002da: PUSH2 0x02fc
000002dd: PUSH2 0x02e7
000002e0: CALLDATASIZE
000002e1: PUSH1 0x04
000002e3: PUSH2 0x474b
000002e6: JUMP
000002e7: JUMPDEST
000002e8: PUSH1 0x3a
000002ea: PUSH1 0x20
000002ec: MSTORE
000002ed: PUSH1 0x00
000002ef: SWAP1
000002f0: DUP2
000002f1: MSTORE
000002f2: PUSH1 0x40
000002f4: SWAP1
000002f5: KECCAK256
000002f6: SLOAD
000002f7: PUSH1 0xff
000002f9: AND
000002fa: DUP2
000002fb: JUMP
000002fc: JUMPDEST
000002fd: PUSH1 0x40
000002ff: MLOAD
00000300: SWAP1
00000301: ISZERO
00000302: ISZERO
00000303: DUP2
00000304: MSTORE
00000305: PUSH1 0x20
00000307: ADD
00000308: PUSH2 0x022a
0000030b: JUMP
0000030c: JUMPDEST
0000030d: CALLVALUE
0000030e: DUP1
0000030f: ISZERO
00000310: PUSH2 0x0318
00000313: JUMPI
00000314: PUSH1 0x00
00000316: DUP1
00000317: REVERT
00000318: JUMPDEST
00000319: POP
0000031a: PUSH2 0x01d5
0000031d: PUSH2 0x0327
00000320: CALLDATASIZE
00000321: PUSH1 0x04
00000323: PUSH2 0x4768
00000326: JUMP
00000327: JUMPDEST
00000328: PUSH2 0x0bf2
0000032b: JUMP
0000032c: JUMPDEST
0000032d: CALLVALUE
0000032e: DUP1
0000032f: ISZERO
00000330: PUSH2 0x0338
00000333: JUMPI
00000334: PUSH1 0x00
00000336: DUP1
00000337: REVERT
00000338: JUMPDEST
00000339: POP
0000033a: PUSH1 0x3b
0000033c: SLOAD
0000033d: PUSH2 0x0355
00000340: SWAP1
00000341: PUSH5 0x0100000000
00000347: SWAP1
00000348: DIV
00000349: PUSH8 0xffffffffffffffff
00000352: AND
00000353: DUP2
00000354: JUMP
00000355: JUMPDEST
00000356: PUSH1 0x40
00000358: MLOAD
00000359: PUSH8 0xffffffffffffffff
00000362: SWAP1
00000363: SWAP2
00000364: AND
00000365: DUP2
00000366: MSTORE
00000367: PUSH1 0x20
00000369: ADD
0000036a: PUSH2 0x022a
0000036d: JUMP
0000036e: JUMPDEST
0000036f: CALLVALUE
00000370: DUP1
00000371: ISZERO
00000372: PUSH2 0x037a
00000375: JUMPI
00000376: PUSH1 0x00
00000378: DUP1
00000379: REVERT
0000037a: JUMPDEST
0000037b: POP
0000037c: PUSH2 0x039b
0000037f: PUSH2 0x0389
00000382: CALLDATASIZE
00000383: PUSH1 0x04
00000385: PUSH2 0x4844
00000388: JUMP
00000389: JUMPDEST
0000038a: PUSH1 0x00
0000038c: SWAP1
0000038d: DUP2
0000038e: MSTORE
0000038f: PUSH1 0x3c
00000391: PUSH1 0x20
00000393: MSTORE
00000394: PUSH1 0x40
00000396: SWAP1
00000397: KECCAK256
00000398: SLOAD
00000399: SWAP1
0000039a: JUMP
0000039b: JUMPDEST
0000039c: PUSH1 0x40
0000039e: MLOAD
0000039f: SWAP1
000003a0: DUP2
000003a1: MSTORE
000003a2: PUSH1 0x20
000003a4: ADD
000003a5: PUSH2 0x022a
000003a8: JUMP
000003a9: JUMPDEST
000003aa: CALLVALUE
000003ab: DUP1
000003ac: ISZERO
000003ad: PUSH2 0x03b5
000003b0: JUMPI
000003b1: PUSH1 0x00
000003b3: DUP1
000003b4: REVERT
000003b5: JUMPDEST
000003b6: POP
000003b7: PUSH2 0x03f2
000003ba: PUSH1 0x40
000003bc: MLOAD
000003bd: DUP1
000003be: PUSH1 0x40
000003c0: ADD
000003c1: PUSH1 0x40
000003c3: MSTORE
000003c4: DUP1
000003c5: PUSH1 0x06
000003c7: DUP2
000003c8: MSTORE
000003c9: PUSH1 0x20
000003cb: ADD
000003cc: PUSH32 0x332e31302e300000000000000000000000000000000000000000000000000000
000003ed: DUP2
000003ee: MSTORE
000003ef: POP
000003f0: DUP2
000003f1: JUMP
000003f2: JUMPDEST
000003f3: PUSH1 0x40
000003f5: MLOAD
000003f6: PUSH2 0x022a
000003f9: SWAP2
000003fa: SWAP1
000003fb: PUSH2 0x48d3
000003fe: JUMP
000003ff: JUMPDEST
00000400: CALLVALUE
00000401: DUP1
00000402: ISZERO
00000403: PUSH2 0x040b
00000406: JUMPI
00000407: PUSH1 0x00
00000409: DUP1
0000040a: REVERT
0000040b: JUMPDEST
0000040c: POP
0000040d: PUSH2 0x02fc
00000410: PUSH2 0x1303
00000413: JUMP
00000414: JUMPDEST
00000415: CALLVALUE
00000416: DUP1
00000417: ISZERO
00000418: PUSH2 0x0420
0000041b: JUMPI
0000041c: PUSH1 0x00
0000041e: DUP1
0000041f: REVERT
00000420: JUMPDEST
00000421: POP
00000422: PUSH2 0x01d5
00000425: PUSH2 0x042f
00000428: CALLDATASIZE
00000429: PUSH1 0x04
0000042b: PUSH2 0x48e6
0000042e: JUMP
0000042f: JUMPDEST
00000430: PUSH2 0x1396
00000433: JUMP
00000434: JUMPDEST
00000435: CALLVALUE
00000436: DUP1
00000437: ISZERO
00000438: PUSH2 0x0440
0000043b: JUMPI
0000043c: PUSH1 0x00
0000043e: DUP1
0000043f: REVERT
00000440: JUMPDEST
00000441: POP
00000442: PUSH2 0x01d5
00000445: PUSH2 0x044f
00000448: CALLDATASIZE
00000449: PUSH1 0x04
0000044b: PUSH2 0x474b
0000044e: JUMP
0000044f: JUMPDEST
00000450: PUSH2 0x1c27
00000453: JUMP
00000454: JUMPDEST
00000455: CALLVALUE
00000456: DUP1
00000457: ISZERO
00000458: PUSH2 0x0460
0000045b: JUMPI
0000045c: PUSH1 0x00
0000045e: DUP1
0000045f: REVERT
00000460: JUMPDEST
00000461: POP
00000462: PUSH2 0x01d5
00000465: PUSH2 0x046f
00000468: CALLDATASIZE
00000469: PUSH1 0x04
0000046b: PUSH2 0x491d
0000046e: JUMP
0000046f: JUMPDEST
00000470: PUSH2 0x1d0a
00000473: JUMP
00000474: JUMPDEST
00000475: CALLVALUE
00000476: DUP1
00000477: ISZERO
00000478: PUSH2 0x0480
0000047b: JUMPI
0000047c: PUSH1 0x00
0000047e: DUP1
0000047f: REVERT
00000480: JUMPDEST
00000481: POP
00000482: PUSH2 0x01d5
00000485: PUSH2 0x048f
00000488: CALLDATASIZE
00000489: PUSH1 0x04
0000048b: PUSH2 0x493a
0000048e: JUMP
0000048f: JUMPDEST
00000490: PUSH2 0x1df6
00000493: JUMP
00000494: JUMPDEST
00000495: CALLVALUE
00000496: DUP1
00000497: ISZERO
00000498: PUSH2 0x04a0
0000049b: JUMPI
0000049c: PUSH1 0x00
0000049e: DUP1
0000049f: REVERT
000004a0: JUMPDEST
000004a1: POP
000004a2: PUSH2 0x01d5
000004a5: PUSH2 0x04af
000004a8: CALLDATASIZE
000004a9: PUSH1 0x04
000004ab: PUSH2 0x4977
000004ae: JUMP
000004af: JUMPDEST
000004b0: PUSH2 0x1e42
000004b3: JUMP
000004b4: JUMPDEST
000004b5: CALLVALUE
000004b6: DUP1
000004b7: ISZERO
000004b8: PUSH2 0x04c0
000004bb: JUMPI
000004bc: PUSH1 0x00
000004be: DUP1
000004bf: REVERT
000004c0: JUMPDEST
000004c1: POP
000004c2: PUSH32 0x0000000000000000000000000000000000000000000000000000000000049d40
000004e3: PUSH2 0x039b
000004e6: JUMP
000004e7: JUMPDEST
000004e8: CALLVALUE
000004e9: DUP1
000004ea: ISZERO
000004eb: PUSH2 0x04f3
000004ee: JUMPI
000004ef: PUSH1 0x00
000004f1: DUP1
000004f2: REVERT
000004f3: JUMPDEST
000004f4: POP
000004f5: PUSH1 0x32
000004f7: SLOAD
000004f8: PUSH2 0x0209
000004fb: SWAP1
000004fc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000511: AND
00000512: DUP2
00000513: JUMP
00000514: JUMPDEST
00000515: CALLVALUE
00000516: DUP1
00000517: ISZERO
00000518: PUSH2 0x0520
0000051b: JUMPI
0000051c: PUSH1 0x00
0000051e: DUP1
0000051f: REVERT
00000520: JUMPDEST
00000521: POP
00000522: PUSH2 0x02fc
00000525: PUSH2 0x052f
00000528: CALLDATASIZE
00000529: PUSH1 0x04
0000052b: PUSH2 0x4844
0000052e: JUMP
0000052f: JUMPDEST
00000530: PUSH1 0x33
00000532: PUSH1 0x20
00000534: MSTORE
00000535: PUSH1 0x00
00000537: SWAP1
00000538: DUP2
00000539: MSTORE
0000053a: PUSH1 0x40
0000053c: SWAP1
0000053d: KECCAK256
0000053e: SLOAD
0000053f: PUSH1 0xff
00000541: AND
00000542: DUP2
00000543: JUMP
00000544: JUMPDEST
00000545: CALLVALUE
00000546: DUP1
00000547: ISZERO
00000548: PUSH2 0x0550
0000054b: JUMPI
0000054c: PUSH1 0x00
0000054e: DUP1
0000054f: REVERT
00000550: JUMPDEST
00000551: POP
00000552: PUSH2 0x0355
00000555: PUSH2 0x055f
00000558: CALLDATASIZE
00000559: PUSH1 0x04
0000055b: PUSH2 0x49e9
0000055e: JUMP
0000055f: JUMPDEST
00000560: PUSH2 0x20f7
00000563: JUMP
00000564: JUMPDEST
00000565: CALLVALUE
00000566: DUP1
00000567: ISZERO
00000568: PUSH2 0x0570
0000056b: JUMPI
0000056c: PUSH1 0x00
0000056e: DUP1
0000056f: REVERT
00000570: JUMPDEST
00000571: POP
00000572: PUSH2 0x0209
00000575: PUSH2 0x057f
00000578: CALLDATASIZE
00000579: PUSH1 0x04
0000057b: PUSH2 0x4a06
0000057e: JUMP
0000057f: JUMPDEST
00000580: PUSH2 0x2116
00000583: JUMP
00000584: JUMPDEST
00000585: CALLVALUE
00000586: DUP1
00000587: ISZERO
00000588: PUSH2 0x0590
0000058b: JUMPI
0000058c: PUSH1 0x00
0000058e: DUP1
0000058f: REVERT
00000590: JUMPDEST
00000591: POP
00000592: PUSH2 0x05f6
00000595: PUSH2 0x059f
00000598: CALLDATASIZE
00000599: PUSH1 0x04
0000059b: PUSH2 0x48e6
0000059e: JUMP
0000059f: JUMPDEST
000005a0: PUSH1 0x39
000005a2: PUSH1 0x20
000005a4: SWAP1
000005a5: DUP2
000005a6: MSTORE
000005a7: PUSH1 0x00
000005a9: SWAP3
000005aa: DUP4
000005ab: MSTORE
000005ac: PUSH1 0x40
000005ae: DUP1
000005af: DUP5
000005b0: KECCAK256
000005b1: SWAP1
000005b2: SWAP2
000005b3: MSTORE
000005b4: SWAP1
000005b5: DUP3
000005b6: MSTORE
000005b7: SWAP1
000005b8: KECCAK256
000005b9: SLOAD
000005ba: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000005cf: DUP2
000005d0: AND
000005d1: SWAP1
000005d2: PUSH21 0x010000000000000000000000000000000000000000
000005e8: SWAP1
000005e9: DIV
000005ea: PUSH8 0xffffffffffffffff
000005f3: AND
000005f4: DUP3
000005f5: JUMP
000005f6: JUMPDEST
000005f7: PUSH1 0x40
000005f9: DUP1
000005fa: MLOAD
000005fb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000610: SWAP1
00000611: SWAP4
00000612: AND
00000613: DUP4
00000614: MSTORE
00000615: PUSH8 0xffffffffffffffff
0000061e: SWAP1
0000061f: SWAP2
00000620: AND
00000621: PUSH1 0x20
00000623: DUP4
00000624: ADD
00000625: MSTORE
00000626: ADD
00000627: PUSH2 0x022a
0000062a: JUMP
0000062b: JUMPDEST
0000062c: CALLVALUE
0000062d: DUP1
0000062e: ISZERO
0000062f: PUSH2 0x0637
00000632: JUMPI
00000633: PUSH1 0x00
00000635: DUP1
00000636: REVERT
00000637: JUMPDEST
00000638: POP
00000639: PUSH32 0x0000000000000000000000000000000000000000000000000000000000093a80
0000065a: PUSH2 0x039b
0000065d: JUMP
0000065e: JUMPDEST
0000065f: CALLVALUE
00000660: DUP1
00000661: ISZERO
00000662: PUSH2 0x066a
00000665: JUMPI
00000666: PUSH1 0x00
00000668: DUP1
00000669: REVERT
0000066a: JUMPDEST
0000066b: POP
0000066c: PUSH1 0x01
0000066e: SLOAD
0000066f: PUSH2 0x06c6
00000672: SWAP1
00000673: PUSH16 0xffffffffffffffffffffffffffffffff
00000684: DUP2
00000685: AND
00000686: SWAP1
00000687: PUSH8 0xffffffffffffffff
00000690: PUSH17 0x0100000000000000000000000000000000
000006a2: DUP3
000006a3: DIV
000006a4: DUP2
000006a5: AND
000006a6: SWAP2
000006a7: PUSH25 0x01000000000000000000000000000000000000000000000000
000006c1: SWAP1
000006c2: DIV
000006c3: AND
000006c4: DUP4
000006c5: JUMP
000006c6: JUMPDEST
000006c7: PUSH1 0x40
000006c9: DUP1
000006ca: MLOAD
000006cb: PUSH16 0xffffffffffffffffffffffffffffffff
000006dc: SWAP1
000006dd: SWAP5
000006de: AND
000006df: DUP5
000006e0: MSTORE
000006e1: PUSH8 0xffffffffffffffff
000006ea: SWAP3
000006eb: DUP4
000006ec: AND
000006ed: PUSH1 0x20
000006ef: DUP6
000006f0: ADD
000006f1: MSTORE
000006f2: SWAP2
000006f3: AND
000006f4: SWAP1
000006f5: DUP3
000006f6: ADD
000006f7: MSTORE
000006f8: PUSH1 0x60
000006fa: ADD
000006fb: PUSH2 0x022a
000006fe: JUMP
000006ff: JUMPDEST
00000700: PUSH2 0x01d5
00000703: PUSH2 0x070d
00000706: CALLDATASIZE
00000707: PUSH1 0x04
00000709: PUSH2 0x4a36
0000070c: JUMP
0000070d: JUMPDEST
0000070e: PUSH2 0x073f
00000711: JUMP
00000712: JUMPDEST
00000713: CALLVALUE
00000714: DUP1
00000715: ISZERO
00000716: PUSH2 0x071e
00000719: JUMPI
0000071a: PUSH1 0x00
0000071c: DUP1
0000071d: REVERT
0000071e: JUMPDEST
0000071f: POP
00000720: PUSH1 0x38
00000722: SLOAD
00000723: PUSH2 0x0209
00000726: SWAP1
00000727: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000073c: AND
0000073d: DUP2
0000073e: JUMP
0000073f: JUMPDEST
00000740: DUP3
00000741: PUSH1 0x00
00000743: GAS
00000744: SWAP1
00000745: POP
00000746: DUP4
00000747: DUP1
00000748: ISZERO
00000749: PUSH2 0x0767
0000074c: JUMPI
0000074d: POP
0000074e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000763: DUP8
00000764: AND
00000765: ISZERO
00000766: ISZERO
00000767: JUMPDEST
00000768: ISZERO
00000769: PUSH2 0x079e
0000076c: JUMPI
0000076d: PUSH1 0x40
0000076f: MLOAD
00000770: PUSH32 0x13496fda00000000000000000000000000000000000000000000000000000000
00000791: DUP2
00000792: MSTORE
00000793: PUSH1 0x04
00000795: ADD
00000796: PUSH1 0x40
00000798: MLOAD
00000799: DUP1
0000079a: SWAP2
0000079b: SUB
0000079c: SWAP1
0000079d: REVERT
0000079e: JUMPDEST
0000079f: PUSH2 0x07a8
000007a2: DUP4
000007a3: MLOAD
000007a4: PUSH2 0x20f7
000007a7: JUMP
000007a8: JUMPDEST
000007a9: PUSH8 0xffffffffffffffff
000007b2: AND
000007b3: DUP6
000007b4: PUSH8 0xffffffffffffffff
000007bd: AND
000007be: LT
000007bf: ISZERO
000007c0: PUSH2 0x07f5
000007c3: JUMPI
000007c4: PUSH1 0x40
000007c6: MLOAD
000007c7: PUSH32 0x4929b80800000000000000000000000000000000000000000000000000000000
000007e8: DUP2
000007e9: MSTORE
000007ea: PUSH1 0x04
000007ec: ADD
000007ed: PUSH1 0x40
000007ef: MLOAD
000007f0: DUP1
000007f1: SWAP2
000007f2: SUB
000007f3: SWAP1
000007f4: REVERT
000007f5: JUMPDEST
000007f6: PUSH3 0x01d4c0
000007fa: DUP4
000007fb: MLOAD
000007fc: GT
000007fd: ISZERO
000007fe: PUSH2 0x0833
00000801: JUMPI
00000802: PUSH1 0x40
00000804: MLOAD
00000805: PUSH32 0x73052b0f00000000000000000000000000000000000000000000000000000000
00000826: DUP2
00000827: MSTORE
00000828: PUSH1 0x04
0000082a: ADD
0000082b: PUSH1 0x40
0000082d: MLOAD
0000082e: DUP1
0000082f: SWAP2
00000830: SUB
00000831: SWAP1
00000832: REVERT
00000833: JUMPDEST
00000834: CALLER
00000835: ORIGIN
00000836: DUP2
00000837: EQ
00000838: PUSH2 0x0854
0000083b: JUMPI
0000083c: POP
0000083d: CALLER
0000083e: PUSH20 0x1111000000000000000000000000000000001111
00000853: ADD
00000854: JUMPDEST
00000855: PUSH1 0x00
00000857: CALLVALUE
00000858: DUP9
00000859: DUP9
0000085a: DUP9
0000085b: DUP9
0000085c: PUSH1 0x40
0000085e: MLOAD
0000085f: PUSH1 0x20
00000861: ADD
00000862: PUSH2 0x086f
00000865: SWAP6
00000866: SWAP5
00000867: SWAP4
00000868: SWAP3
00000869: SWAP2
0000086a: SWAP1
0000086b: PUSH2 0x4ab5
0000086e: JUMP
0000086f: JUMPDEST
00000870: PUSH1 0x40
00000872: MLOAD
00000873: PUSH1 0x20
00000875: DUP2
00000876: DUP4
00000877: SUB
00000878: SUB
00000879: DUP2
0000087a: MSTORE
0000087b: SWAP1
0000087c: PUSH1 0x40
0000087e: MSTORE
0000087f: SWAP1
00000880: POP
00000881: PUSH1 0x00
00000883: DUP10
00000884: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000899: AND
0000089a: DUP4
0000089b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000008b0: AND
000008b1: PUSH32 0xb3813568d9991fc951961fcb4c784893574240a28925604d09fc577c55bb7c32
000008d2: DUP5
000008d3: PUSH1 0x40
000008d5: MLOAD
000008d6: PUSH2 0x08df
000008d9: SWAP2
000008da: SWAP1
000008db: PUSH2 0x48d3
000008de: JUMP
000008df: JUMPDEST
000008e0: PUSH1 0x40
000008e2: MLOAD
000008e3: DUP1
000008e4: SWAP2
000008e5: SUB
000008e6: SWAP1
000008e7: LOG4
000008e8: POP
000008e9: POP
000008ea: PUSH2 0x08f3
000008ed: DUP3
000008ee: DUP3
000008ef: PUSH2 0x2177
000008f2: JUMP
000008f3: JUMPDEST
000008f4: POP
000008f5: POP
000008f6: POP
000008f7: POP
000008f8: POP
000008f9: POP
000008fa: POP
000008fb: JUMP
000008fc: JUMPDEST
000008fd: PUSH2 0x0904
00000900: PUSH2 0x1303
00000903: JUMP
00000904: JUMPDEST
00000905: ISZERO
00000906: PUSH2 0x093b
00000909: JUMPI
0000090a: PUSH1 0x40
0000090c: MLOAD
0000090d: PUSH32 0xf480973e00000000000000000000000000000000000000000000000000000000
0000092e: DUP2
0000092f: MSTORE
00000930: PUSH1 0x04
00000932: ADD
00000933: PUSH1 0x40
00000935: MLOAD
00000936: DUP1
00000937: SWAP2
00000938: SUB
00000939: SWAP1
0000093a: REVERT
0000093b: JUMPDEST
0000093c: PUSH1 0x32
0000093e: SLOAD
0000093f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000954: AND
00000955: PUSH2 0xdead
00000958: EQ
00000959: PUSH2 0x09e9
0000095c: JUMPI
0000095d: PUSH1 0x40
0000095f: MLOAD
00000960: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000981: DUP2
00000982: MSTORE
00000983: PUSH1 0x20
00000985: PUSH1 0x04
00000987: DUP3
00000988: ADD
00000989: MSTORE
0000098a: PUSH1 0x3f
0000098c: PUSH1 0x24
0000098e: DUP3
0000098f: ADD
00000990: MSTORE
00000991: PUSH32 0x4f7074696d69736d506f7274616c3a2063616e206f6e6c792074726967676572
000009b2: PUSH1 0x44
000009b4: DUP3
000009b5: ADD
000009b6: MSTORE
000009b7: PUSH32 0x206f6e65207769746864726177616c20706572207472616e73616374696f6e00
000009d8: PUSH1 0x64
000009da: DUP3
000009db: ADD
000009dc: MSTORE
000009dd: PUSH1 0x84
000009df: ADD
000009e0: JUMPDEST
000009e1: PUSH1 0x40
000009e3: MLOAD
000009e4: DUP1
000009e5: SWAP2
000009e6: SUB
000009e7: SWAP1
000009e8: REVERT
000009e9: JUMPDEST
000009ea: PUSH1 0x00
000009ec: PUSH2 0x09f4
000009ef: DUP4
000009f0: PUSH2 0x244e
000009f3: JUMP
000009f4: JUMPDEST
000009f5: SWAP1
000009f6: POP
000009f7: PUSH2 0x0a00
000009fa: DUP2
000009fb: DUP4
000009fc: PUSH2 0x1396
000009ff: JUMP
00000a00: JUMPDEST
00000a01: PUSH1 0x00
00000a03: DUP2
00000a04: DUP2
00000a05: MSTORE
00000a06: PUSH1 0x33
00000a08: PUSH1 0x20
00000a0a: SWAP1
00000a0b: DUP2
00000a0c: MSTORE
00000a0d: PUSH1 0x40
00000a0f: DUP1
00000a10: DUP4
00000a11: KECCAK256
00000a12: DUP1
00000a13: SLOAD
00000a14: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
00000a35: AND
00000a36: PUSH1 0x01
00000a38: OR
00000a39: SWAP1
00000a3a: SSTORE
00000a3b: SWAP1
00000a3c: DUP6
00000a3d: ADD
00000a3e: MLOAD
00000a3f: PUSH1 0x32
00000a41: DUP1
00000a42: SLOAD
00000a43: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a58: SWAP1
00000a59: SWAP3
00000a5a: AND
00000a5b: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000
00000a7c: SWAP1
00000a7d: SWAP3
00000a7e: AND
00000a7f: SWAP2
00000a80: SWAP1
00000a81: SWAP2
00000a82: OR
00000a83: SWAP1
00000a84: SSTORE
00000a85: DUP5
00000a86: ADD
00000a87: MLOAD
00000a88: PUSH1 0x80
00000a8a: DUP6
00000a8b: ADD
00000a8c: MLOAD
00000a8d: PUSH1 0x60
00000a8f: DUP7
00000a90: ADD
00000a91: MLOAD
00000a92: PUSH1 0xa0
00000a94: DUP8
00000a95: ADD
00000a96: MLOAD
00000a97: PUSH2 0x0aa2
00000a9a: SWAP4
00000a9b: SWAP3
00000a9c: SWAP2
00000a9d: SWAP1
00000a9e: PUSH2 0x249b
00000aa1: JUMP
00000aa2: JUMPDEST
00000aa3: PUSH1 0x32
00000aa5: DUP1
00000aa6: SLOAD
00000aa7: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000
00000ac8: AND
00000ac9: PUSH2 0xdead
00000acc: OR
00000acd: SWAP1
00000ace: SSTORE
00000acf: PUSH1 0x40
00000ad1: MLOAD
00000ad2: SWAP1
00000ad3: SWAP2
00000ad4: POP
00000ad5: DUP3
00000ad6: SWAP1
00000ad7: PUSH32 0xdb5c7652857aa163daadd670e116628fb42e869d8ac4251ef8971d9e5727df1b
00000af8: SWAP1
00000af9: PUSH2 0x0b07
00000afc: SWAP1
00000afd: DUP5
00000afe: ISZERO
00000aff: ISZERO
00000b00: DUP2
00000b01: MSTORE
00000b02: PUSH1 0x20
00000b04: ADD
00000b05: SWAP1
00000b06: JUMP
00000b07: JUMPDEST
00000b08: PUSH1 0x40
00000b0a: MLOAD
00000b0b: DUP1
00000b0c: SWAP2
00000b0d: SUB
00000b0e: SWAP1
00000b0f: LOG2
00000b10: DUP1
00000b11: ISZERO
00000b12: DUP1
00000b13: ISZERO
00000b14: PUSH2 0x0b1d
00000b17: JUMPI
00000b18: POP
00000b19: ORIGIN
00000b1a: PUSH1 0x01
00000b1c: EQ
00000b1d: JUMPDEST
00000b1e: ISZERO
00000b1f: PUSH2 0x0b54
00000b22: JUMPI
00000b23: PUSH1 0x40
00000b25: MLOAD
00000b26: PUSH32 0xeeae4ed300000000000000000000000000000000000000000000000000000000
00000b47: DUP2
00000b48: MSTORE
00000b49: PUSH1 0x04
00000b4b: ADD
00000b4c: PUSH1 0x40
00000b4e: MLOAD
00000b4f: DUP1
00000b50: SWAP2
00000b51: SUB
00000b52: SWAP1
00000b53: REVERT
00000b54: JUMPDEST
00000b55: POP
00000b56: POP
00000b57: POP
00000b58: POP
00000b59: JUMP
00000b5a: JUMPDEST
00000b5b: PUSH1 0x00
00000b5d: PUSH1 0x35
00000b5f: PUSH1 0x01
00000b61: SWAP1
00000b62: SLOAD
00000b63: SWAP1
00000b64: PUSH2 0x0100
00000b67: EXP
00000b68: SWAP1
00000b69: DIV
00000b6a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b7f: AND
00000b80: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b95: AND
00000b96: PUSH4 0x452a9320
00000b9b: PUSH1 0x40
00000b9d: MLOAD
00000b9e: DUP2
00000b9f: PUSH4 0xffffffff
00000ba4: AND
00000ba5: PUSH1 0xe0
00000ba7: SHL
00000ba8: DUP2
00000ba9: MSTORE
00000baa: PUSH1 0x04
00000bac: ADD
00000bad: PUSH1 0x20
00000baf: PUSH1 0x40
00000bb1: MLOAD
00000bb2: DUP1
00000bb3: DUP4
00000bb4: SUB
00000bb5: DUP2
00000bb6: DUP7
00000bb7: GAS
00000bb8: STATICCALL
00000bb9: ISZERO
00000bba: DUP1
00000bbb: ISZERO
00000bbc: PUSH2 0x0bc9
00000bbf: JUMPI
00000bc0: RETURNDATASIZE
00000bc1: PUSH1 0x00
00000bc3: DUP1
00000bc4: RETURNDATACOPY
00000bc5: RETURNDATASIZE
00000bc6: PUSH1 0x00
00000bc8: REVERT
00000bc9: JUMPDEST
00000bca: POP
00000bcb: POP
00000bcc: POP
00000bcd: POP
00000bce: PUSH1 0x40
00000bd0: MLOAD
00000bd1: RETURNDATASIZE
00000bd2: PUSH1 0x1f
00000bd4: NOT
00000bd5: PUSH1 0x1f
00000bd7: DUP3
00000bd8: ADD
00000bd9: AND
00000bda: DUP3
00000bdb: ADD
00000bdc: DUP1
00000bdd: PUSH1 0x40
00000bdf: MSTORE
00000be0: POP
00000be1: DUP2
00000be2: ADD
00000be3: SWAP1
00000be4: PUSH2 0x0bed
00000be7: SWAP2
00000be8: SWAP1
00000be9: PUSH2 0x4b1a
00000bec: JUMP
00000bed: JUMPDEST
00000bee: SWAP1
00000bef: POP
00000bf0: SWAP1
00000bf1: JUMP
00000bf2: JUMPDEST
00000bf3: PUSH2 0x0bfa
00000bf6: PUSH2 0x1303
00000bf9: JUMP
00000bfa: JUMPDEST
00000bfb: ISZERO
00000bfc: PUSH2 0x0c31
00000bff: JUMPI
00000c00: PUSH1 0x40
00000c02: MLOAD
00000c03: PUSH32 0xf480973e00000000000000000000000000000000000000000000000000000000
00000c24: DUP2
00000c25: MSTORE
00000c26: PUSH1 0x04
00000c28: ADD
00000c29: PUSH1 0x40
00000c2b: MLOAD
00000c2c: DUP1
00000c2d: SWAP2
00000c2e: SUB
00000c2f: SWAP1
00000c30: REVERT
00000c31: JUMPDEST
00000c32: ADDRESS
00000c33: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c48: AND
00000c49: DUP6
00000c4a: PUSH1 0x40
00000c4c: ADD
00000c4d: MLOAD
00000c4e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c63: AND
00000c64: SUB
00000c65: PUSH2 0x0cf0
00000c68: JUMPI
00000c69: PUSH1 0x40
00000c6b: MLOAD
00000c6c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000c8d: DUP2
00000c8e: MSTORE
00000c8f: PUSH1 0x20
00000c91: PUSH1 0x04
00000c93: DUP3
00000c94: ADD
00000c95: MSTORE
00000c96: PUSH1 0x3f
00000c98: PUSH1 0x24
00000c9a: DUP3
00000c9b: ADD
00000c9c: MSTORE
00000c9d: PUSH32 0x4f7074696d69736d506f7274616c3a20796f752063616e6e6f742073656e6420
00000cbe: PUSH1 0x44
00000cc0: DUP3
00000cc1: ADD
00000cc2: MSTORE
00000cc3: PUSH32 0x6d6573736167657320746f2074686520706f7274616c20636f6e747261637400
00000ce4: PUSH1 0x64
00000ce6: DUP3
00000ce7: ADD
00000ce8: MSTORE
00000ce9: PUSH1 0x84
00000ceb: ADD
00000cec: PUSH2 0x09e0
00000cef: JUMP
00000cf0: JUMPDEST
00000cf1: PUSH1 0x38
00000cf3: SLOAD
00000cf4: PUSH1 0x40
00000cf6: MLOAD
00000cf7: PUSH32 0xbb8aa1fc00000000000000000000000000000000000000000000000000000000
00000d18: DUP2
00000d19: MSTORE
00000d1a: PUSH1 0x04
00000d1c: DUP2
00000d1d: ADD
00000d1e: DUP7
00000d1f: SWAP1
00000d20: MSTORE
00000d21: PUSH1 0x00
00000d23: SWAP2
00000d24: DUP3
00000d25: SWAP2
00000d26: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000d3b: SWAP1
00000d3c: SWAP2
00000d3d: AND
00000d3e: SWAP1
00000d3f: PUSH4 0xbb8aa1fc
00000d44: SWAP1
00000d45: PUSH1 0x24
00000d47: ADD
00000d48: PUSH1 0x60
00000d4a: PUSH1 0x40
00000d4c: MLOAD
00000d4d: DUP1
00000d4e: DUP4
00000d4f: SUB
00000d50: DUP2
00000d51: DUP7
00000d52: GAS
00000d53: STATICCALL
00000d54: ISZERO
00000d55: DUP1
00000d56: ISZERO
00000d57: PUSH2 0x0d64
00000d5a: JUMPI
00000d5b: RETURNDATASIZE
00000d5c: PUSH1 0x00
00000d5e: DUP1
00000d5f: RETURNDATACOPY
00000d60: RETURNDATASIZE
00000d61: PUSH1 0x00
00000d63: REVERT
00000d64: JUMPDEST
00000d65: POP
00000d66: POP
00000d67: POP
00000d68: POP
00000d69: PUSH1 0x40
00000d6b: MLOAD
00000d6c: RETURNDATASIZE
00000d6d: PUSH1 0x1f
00000d6f: NOT
00000d70: PUSH1 0x1f
00000d72: DUP3
00000d73: ADD
00000d74: AND
00000d75: DUP3
00000d76: ADD
00000d77: DUP1
00000d78: PUSH1 0x40
00000d7a: MSTORE
00000d7b: POP
00000d7c: DUP2
00000d7d: ADD
00000d7e: SWAP1
00000d7f: PUSH2 0x0d88
00000d82: SWAP2
00000d83: SWAP1
00000d84: PUSH2 0x4b37
00000d87: JUMP
00000d88: JUMPDEST
00000d89: SWAP3
00000d8a: POP
00000d8b: POP
00000d8c: SWAP2
00000d8d: POP
00000d8e: PUSH1 0x00
00000d90: DUP2
00000d91: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000da6: AND
00000da7: PUSH4 0xbcef3b55
00000dac: PUSH1 0x40
00000dae: MLOAD
00000daf: DUP2
00000db0: PUSH4 0xffffffff
00000db5: AND
00000db6: PUSH1 0xe0
00000db8: SHL
00000db9: DUP2
00000dba: MSTORE
00000dbb: PUSH1 0x04
00000dbd: ADD
00000dbe: PUSH1 0x20
00000dc0: PUSH1 0x40
00000dc2: MLOAD
00000dc3: DUP1
00000dc4: DUP4
00000dc5: SUB
00000dc6: DUP2
00000dc7: DUP7
00000dc8: GAS
00000dc9: STATICCALL
00000dca: ISZERO
00000dcb: DUP1
00000dcc: ISZERO
00000dcd: PUSH2 0x0dda
00000dd0: JUMPI
00000dd1: RETURNDATASIZE
00000dd2: PUSH1 0x00
00000dd4: DUP1
00000dd5: RETURNDATACOPY
00000dd6: RETURNDATASIZE
00000dd7: PUSH1 0x00
00000dd9: REVERT
00000dda: JUMPDEST
00000ddb: POP
00000ddc: POP
00000ddd: POP
00000dde: POP
00000ddf: PUSH1 0x40
00000de1: MLOAD
00000de2: RETURNDATASIZE
00000de3: PUSH1 0x1f
00000de5: NOT
00000de6: PUSH1 0x1f
00000de8: DUP3
00000de9: ADD
00000dea: AND
00000deb: DUP3
00000dec: ADD
00000ded: DUP1
00000dee: PUSH1 0x40
00000df0: MSTORE
00000df1: POP
00000df2: DUP2
00000df3: ADD
00000df4: SWAP1
00000df5: PUSH2 0x0dfe
00000df8: SWAP2
00000df9: SWAP1
00000dfa: PUSH2 0x4b84
00000dfd: JUMP
00000dfe: JUMPDEST
00000dff: PUSH1 0x3b
00000e01: SLOAD
00000e02: SWAP1
00000e03: SWAP2
00000e04: POP
00000e05: PUSH4 0xffffffff
00000e0a: DUP5
00000e0b: DUP2
00000e0c: AND
00000e0d: SWAP2
00000e0e: AND
00000e0f: EQ
00000e10: PUSH2 0x0e9b
00000e13: JUMPI
00000e14: PUSH1 0x40
00000e16: MLOAD
00000e17: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000e38: DUP2
00000e39: MSTORE
00000e3a: PUSH1 0x20
00000e3c: PUSH1 0x04
00000e3e: DUP3
00000e3f: ADD
00000e40: MSTORE
00000e41: PUSH1 0x21
00000e43: PUSH1 0x24
00000e45: DUP3
00000e46: ADD
00000e47: MSTORE
00000e48: PUSH32 0x4f7074696d69736d506f7274616c3a20696e76616c69642067616d6520747970
00000e69: PUSH1 0x44
00000e6b: DUP3
00000e6c: ADD
00000e6d: MSTORE
00000e6e: PUSH32 0x6500000000000000000000000000000000000000000000000000000000000000
00000e8f: PUSH1 0x64
00000e91: DUP3
00000e92: ADD
00000e93: MSTORE
00000e94: PUSH1 0x84
00000e96: ADD
00000e97: PUSH2 0x09e0
00000e9a: JUMP
00000e9b: JUMPDEST
00000e9c: PUSH2 0x0eb2
00000e9f: PUSH2 0x0ead
00000ea2: CALLDATASIZE
00000ea3: DUP9
00000ea4: SWAP1
00000ea5: SUB
00000ea6: DUP9
00000ea7: ADD
00000ea8: DUP9
00000ea9: PUSH2 0x4b9d
00000eac: JUMP
00000ead: JUMPDEST
00000eae: PUSH2 0x24f9
00000eb1: JUMP
00000eb2: JUMPDEST
00000eb3: DUP2
00000eb4: EQ
00000eb5: PUSH2 0x0f40
00000eb8: JUMPI
00000eb9: PUSH1 0x40
00000ebb: MLOAD
00000ebc: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000edd: DUP2
00000ede: MSTORE
00000edf: PUSH1 0x20
00000ee1: PUSH1 0x04
00000ee3: DUP3
00000ee4: ADD
00000ee5: MSTORE
00000ee6: PUSH1 0x29
00000ee8: PUSH1 0x24
00000eea: DUP3
00000eeb: ADD
00000eec: MSTORE
00000eed: PUSH32 0x4f7074696d69736d506f7274616c3a20696e76616c6964206f75747075742072
00000f0e: PUSH1 0x44
00000f10: DUP3
00000f11: ADD
00000f12: MSTORE
00000f13: PUSH32 0x6f6f742070726f6f660000000000000000000000000000000000000000000000
00000f34: PUSH1 0x64
00000f36: DUP3
00000f37: ADD
00000f38: MSTORE
00000f39: PUSH1 0x84
00000f3b: ADD
00000f3c: PUSH2 0x09e0
00000f3f: JUMP
00000f40: JUMPDEST
00000f41: PUSH1 0x00
00000f43: PUSH2 0x0f4b
00000f46: DUP10
00000f47: PUSH2 0x244e
00000f4a: JUMP
00000f4b: JUMPDEST
00000f4c: SWAP1
00000f4d: POP
00000f4e: PUSH1 0x01
00000f50: DUP4
00000f51: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f66: AND
00000f67: PUSH4 0x200d2ed2
00000f6c: PUSH1 0x40
00000f6e: MLOAD
00000f6f: DUP2
00000f70: PUSH4 0xffffffff
00000f75: AND
00000f76: PUSH1 0xe0
00000f78: SHL
00000f79: DUP2
00000f7a: MSTORE
00000f7b: PUSH1 0x04
00000f7d: ADD
00000f7e: PUSH1 0x20
00000f80: PUSH1 0x40
00000f82: MLOAD
00000f83: DUP1
00000f84: DUP4
00000f85: SUB
00000f86: DUP2
00000f87: DUP7
00000f88: GAS
00000f89: STATICCALL
00000f8a: ISZERO
00000f8b: DUP1
00000f8c: ISZERO
00000f8d: PUSH2 0x0f9a
00000f90: JUMPI
00000f91: RETURNDATASIZE
00000f92: PUSH1 0x00
00000f94: DUP1
00000f95: RETURNDATACOPY
00000f96: RETURNDATASIZE
00000f97: PUSH1 0x00
00000f99: REVERT
00000f9a: JUMPDEST
00000f9b: POP
00000f9c: POP
00000f9d: POP
00000f9e: POP
00000f9f: PUSH1 0x40
00000fa1: MLOAD
00000fa2: RETURNDATASIZE
00000fa3: PUSH1 0x1f
00000fa5: NOT
00000fa6: PUSH1 0x1f
00000fa8: DUP3
00000fa9: ADD
00000faa: AND
00000fab: DUP3
00000fac: ADD
00000fad: DUP1
00000fae: PUSH1 0x40
00000fb0: MSTORE
00000fb1: POP
00000fb2: DUP2
00000fb3: ADD
00000fb4: SWAP1
00000fb5: PUSH2 0x0fbe
00000fb8: SWAP2
00000fb9: SWAP1
00000fba: PUSH2 0x4c32
00000fbd: JUMP
00000fbe: JUMPDEST
00000fbf: PUSH1 0x02
00000fc1: DUP2
00000fc2: GT
00000fc3: ISZERO
00000fc4: PUSH2 0x0fcf
00000fc7: JUMPI
00000fc8: PUSH2 0x0fcf
00000fcb: PUSH2 0x4c03
00000fce: JUMP
00000fcf: JUMPDEST
00000fd0: SUB
00000fd1: PUSH2 0x105c
00000fd4: JUMPI
00000fd5: PUSH1 0x40
00000fd7: MLOAD
00000fd8: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000ff9: DUP2
00000ffa: MSTORE
00000ffb: PUSH1 0x20
00000ffd: PUSH1 0x04
00000fff: DUP3
00001000: ADD
00001001: MSTORE
00001002: PUSH1 0x3a
00001004: PUSH1 0x24
00001006: DUP3
00001007: ADD
00001008: MSTORE
00001009: PUSH32 0x4f7074696d69736d506f7274616c3a2063616e6e6f742070726f766520616761
0000102a: PUSH1 0x44
0000102c: DUP3
0000102d: ADD
0000102e: MSTORE
0000102f: PUSH32 0x696e737420696e76616c696420646973707574652067616d6573000000000000
00001050: PUSH1 0x64
00001052: DUP3
00001053: ADD
00001054: MSTORE
00001055: PUSH1 0x84
00001057: ADD
00001058: PUSH2 0x09e0
0000105b: JUMP
0000105c: JUMPDEST
0000105d: PUSH1 0x40
0000105f: DUP1
00001060: MLOAD
00001061: PUSH1 0x20
00001063: DUP2
00001064: ADD
00001065: DUP4
00001066: SWAP1
00001067: MSTORE
00001068: PUSH1 0x00
0000106a: SWAP2
0000106b: DUP2
0000106c: ADD
0000106d: DUP3
0000106e: SWAP1
0000106f: MSTORE
00001070: PUSH1 0x60
00001072: ADD
00001073: PUSH1 0x40
00001075: DUP1
00001076: MLOAD
00001077: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0
00001098: DUP2
00001099: DUP5
0000109a: SUB
0000109b: ADD
0000109c: DUP2
0000109d: MSTORE
0000109e: DUP3
0000109f: DUP3
000010a0: MSTORE
000010a1: DUP1
000010a2: MLOAD
000010a3: PUSH1 0x20
000010a5: SWAP2
000010a6: DUP3
000010a7: ADD
000010a8: KECCAK256
000010a9: SWAP1
000010aa: DUP4
000010ab: ADD
000010ac: DUP2
000010ad: SWAP1
000010ae: MSTORE
000010af: SWAP3
000010b0: POP
000010b1: PUSH2 0x1125
000010b4: SWAP2
000010b5: ADD
000010b6: PUSH1 0x40
000010b8: DUP1
000010b9: MLOAD
000010ba: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0
000010db: DUP2
000010dc: DUP5
000010dd: SUB
000010de: ADD
000010df: DUP2
000010e0: MSTORE
000010e1: DUP3
000010e2: DUP3
000010e3: ADD
000010e4: SWAP1
000010e5: SWAP2
000010e6: MSTORE
000010e7: PUSH1 0x01
000010e9: DUP3
000010ea: MSTORE
000010eb: PUSH32 0x0100000000000000000000000000000000000000000000000000000000000000
0000110c: PUSH1 0x20
0000110e: DUP4
0000110f: ADD
00001110: MSTORE
00001111: SWAP1
00001112: PUSH2 0x111b
00001115: DUP10
00001116: DUP12
00001117: PUSH2 0x4c53
0000111a: JUMP
0000111b: JUMPDEST
0000111c: DUP12
0000111d: PUSH1 0x40
0000111f: ADD
00001120: CALLDATALOAD
00001121: PUSH2 0x2538
00001124: JUMP
00001125: JUMPDEST
00001126: PUSH2 0x11b1
00001129: JUMPI
0000112a: PUSH1 0x40
0000112c: MLOAD
0000112d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000114e: DUP2
0000114f: MSTORE
00001150: PUSH1 0x20
00001152: PUSH1 0x04
00001154: DUP3
00001155: ADD
00001156: MSTORE
00001157: PUSH1 0x32
00001159: PUSH1 0x24
0000115b: DUP3
0000115c: ADD
0000115d: MSTORE
0000115e: PUSH32 0x4f7074696d69736d506f7274616c3a20696e76616c6964207769746864726177
0000117f: PUSH1 0x44
00001181: DUP3
00001182: ADD
00001183: MSTORE
00001184: PUSH32 0x616c20696e636c7573696f6e2070726f6f660000000000000000000000000000
000011a5: PUSH1 0x64
000011a7: DUP3
000011a8: ADD
000011a9: MSTORE
000011aa: PUSH1 0x84
000011ac: ADD
000011ad: PUSH2 0x09e0
000011b0: JUMP
000011b1: JUMPDEST
000011b2: PUSH1 0x40
000011b4: DUP1
000011b5: MLOAD
000011b6: DUP1
000011b7: DUP3
000011b8: ADD
000011b9: DUP3
000011ba: MSTORE
000011bb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000011d0: DUP1
000011d1: DUP8
000011d2: AND
000011d3: DUP3
000011d4: MSTORE
000011d5: PUSH8 0xffffffffffffffff
000011de: TIMESTAMP
000011df: DUP2
000011e0: AND
000011e1: PUSH1 0x20
000011e3: DUP1
000011e4: DUP6
000011e5: ADD
000011e6: SWAP2
000011e7: DUP3
000011e8: MSTORE
000011e9: PUSH1 0x00
000011eb: DUP9
000011ec: DUP2
000011ed: MSTORE
000011ee: PUSH1 0x39
000011f0: DUP3
000011f1: MSTORE
000011f2: DUP7
000011f3: DUP2
000011f4: KECCAK256
000011f5: CALLER
000011f6: DUP3
000011f7: MSTORE
000011f8: DUP3
000011f9: MSTORE
000011fa: DUP7
000011fb: DUP2
000011fc: KECCAK256
000011fd: SWAP6
000011fe: MLOAD
000011ff: DUP7
00001200: SLOAD
00001201: SWAP4
00001202: MLOAD
00001203: SWAP1
00001204: SWAP5
00001205: AND
00001206: PUSH21 0x010000000000000000000000000000000000000000
0000121c: MUL
0000121d: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
0000123e: SWAP1
0000123f: SWAP4
00001240: AND
00001241: SWAP4
00001242: DUP6
00001243: AND
00001244: SWAP4
00001245: SWAP1
00001246: SWAP4
00001247: OR
00001248: SWAP2
00001249: SWAP1
0000124a: SWAP2
0000124b: OR
0000124c: SWAP1
0000124d: SWAP4
0000124e: SSTORE
0000124f: DUP14
00001250: DUP5
00001251: ADD
00001252: MLOAD
00001253: SWAP3
00001254: DUP15
00001255: ADD
00001256: MLOAD
00001257: SWAP4
00001258: MLOAD
00001259: SWAP3
0000125a: DUP3
0000125b: AND
0000125c: SWAP4
0000125d: SWAP1
0000125e: SWAP2
0000125f: AND
00001260: SWAP2
00001261: DUP6
00001262: SWAP2
00001263: PUSH32 0x67a6208cfcc0801d50f6cbe764733f4fddf66ac0b04442061a8a8c0cb6b63f62
00001284: SWAP2
00001285: LOG4
00001286: PUSH1 0x40
00001288: MLOAD
00001289: CALLER
0000128a: SWAP1
0000128b: DUP4
0000128c: SWAP1
0000128d: PUSH32 0x798f9f13695f8f045aa5f80ed8efebb695f3c7fe65da381969f2f28bf3c60b97
000012ae: SWAP1
000012af: PUSH1 0x00
000012b1: SWAP1
000012b2: LOG3
000012b3: POP
000012b4: PUSH1 0x00
000012b6: SWAP1
000012b7: DUP2
000012b8: MSTORE
000012b9: PUSH1 0x3c
000012bb: PUSH1 0x20
000012bd: SWAP1
000012be: DUP2
000012bf: MSTORE
000012c0: PUSH1 0x40
000012c2: DUP3
000012c3: KECCAK256
000012c4: DUP1
000012c5: SLOAD
000012c6: PUSH1 0x01
000012c8: DUP2
000012c9: ADD
000012ca: DUP3
000012cb: SSTORE
000012cc: SWAP1
000012cd: DUP4
000012ce: MSTORE
000012cf: SWAP2
000012d0: KECCAK256
000012d1: ADD
000012d2: DUP1
000012d3: SLOAD
000012d4: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000
000012f5: AND
000012f6: CALLER
000012f7: OR
000012f8: SWAP1
000012f9: SSTORE
000012fa: POP
000012fb: POP
000012fc: POP
000012fd: POP
000012fe: POP
000012ff: POP
00001300: POP
00001301: POP
00001302: JUMP
00001303: JUMPDEST
00001304: PUSH1 0x00
00001306: PUSH1 0x35
00001308: PUSH1 0x01
0000130a: SWAP1
0000130b: SLOAD
0000130c: SWAP1
0000130d: PUSH2 0x0100
00001310: EXP
00001311: SWAP1
00001312: DIV
00001313: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001328: AND
00001329: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000133e: AND
0000133f: PUSH4 0x5c975abb
00001344: PUSH1 0x40
00001346: MLOAD
00001347: DUP2
00001348: PUSH4 0xffffffff
0000134d: AND
0000134e: PUSH1 0xe0
00001350: SHL
00001351: DUP2
00001352: MSTORE
00001353: PUSH1 0x04
00001355: ADD
00001356: PUSH1 0x20
00001358: PUSH1 0x40
0000135a: MLOAD
0000135b: DUP1
0000135c: DUP4
0000135d: SUB
0000135e: DUP2
0000135f: DUP7
00001360: GAS
00001361: STATICCALL
00001362: ISZERO
00001363: DUP1
00001364: ISZERO
00001365: PUSH2 0x1372
00001368: JUMPI
00001369: RETURNDATASIZE
0000136a: PUSH1 0x00
0000136c: DUP1
0000136d: RETURNDATACOPY
0000136e: RETURNDATASIZE
0000136f: PUSH1 0x00
00001371: REVERT
00001372: JUMPDEST
00001373: POP
00001374: POP
00001375: POP
00001376: POP
00001377: PUSH1 0x40
00001379: MLOAD
0000137a: RETURNDATASIZE
0000137b: PUSH1 0x1f
0000137d: NOT
0000137e: PUSH1 0x1f
00001380: DUP3
00001381: ADD
00001382: AND
00001383: DUP3
00001384: ADD
00001385: DUP1
00001386: PUSH1 0x40
00001388: MSTORE
00001389: POP
0000138a: DUP2
0000138b: ADD
0000138c: SWAP1
0000138d: PUSH2 0x0bed
00001390: SWAP2
00001391: SWAP1
00001392: PUSH2 0x4cd7
00001395: JUMP
00001396: JUMPDEST
00001397: PUSH1 0x00
00001399: DUP3
0000139a: DUP2
0000139b: MSTORE
0000139c: PUSH1 0x39
0000139e: PUSH1 0x20
000013a0: SWAP1
000013a1: DUP2
000013a2: MSTORE
000013a3: PUSH1 0x40
000013a5: DUP1
000013a6: DUP4
000013a7: KECCAK256
000013a8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000013bd: DUP6
000013be: DUP2
000013bf: AND
000013c0: DUP6
000013c1: MSTORE
000013c2: SWAP1
000013c3: DUP4
000013c4: MSTORE
000013c5: DUP2
000013c6: DUP5
000013c7: KECCAK256
000013c8: DUP3
000013c9: MLOAD
000013ca: DUP1
000013cb: DUP5
000013cc: ADD
000013cd: DUP5
000013ce: MSTORE
000013cf: SWAP1
000013d0: SLOAD
000013d1: SWAP2
000013d2: DUP3
000013d3: AND
000013d4: DUP1
000013d5: DUP3
000013d6: MSTORE
000013d7: PUSH21 0x010000000000000000000000000000000000000000
000013ed: SWAP1
000013ee: SWAP3
000013ef: DIV
000013f0: PUSH8 0xffffffffffffffff
000013f9: AND
000013fa: DUP2
000013fb: DUP6
000013fc: ADD
000013fd: MSTORE
000013fe: DUP2
000013ff: DUP6
00001400: MSTORE
00001401: PUSH1 0x3a
00001403: SWAP1
00001404: SWAP4
00001405: MSTORE
00001406: SWAP3
00001407: KECCAK256
00001408: SLOAD
00001409: SWAP1
0000140a: SWAP2
0000140b: SWAP1
0000140c: PUSH1 0xff
0000140e: AND
0000140f: ISZERO
00001410: PUSH2 0x149b
00001413: JUMPI
00001414: PUSH1 0x40
00001416: MLOAD
00001417: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001438: DUP2
00001439: MSTORE
0000143a: PUSH1 0x20
0000143c: PUSH1 0x04
0000143e: DUP3
0000143f: ADD
00001440: MSTORE
00001441: PUSH1 0x31
00001443: PUSH1 0x24
00001445: DUP3
00001446: ADD
00001447: MSTORE
00001448: PUSH32 0x4f7074696d69736d506f7274616c3a20646973707574652067616d6520686173
00001469: PUSH1 0x44
0000146b: DUP3
0000146c: ADD
0000146d: MSTORE
0000146e: PUSH32 0x206265656e20626c61636b6c6973746564000000000000000000000000000000
0000148f: PUSH1 0x64
00001491: DUP3
00001492: ADD
00001493: MSTORE
00001494: PUSH1 0x84
00001496: ADD
00001497: PUSH2 0x09e0
0000149a: JUMP
0000149b: JUMPDEST
0000149c: DUP2
0000149d: PUSH1 0x20
0000149f: ADD
000014a0: MLOAD
000014a1: PUSH8 0xffffffffffffffff
000014aa: AND
000014ab: PUSH1 0x00
000014ad: SUB
000014ae: PUSH2 0x155f
000014b1: JUMPI
000014b2: PUSH1 0x40
000014b4: MLOAD
000014b5: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000014d6: DUP2
000014d7: MSTORE
000014d8: PUSH1 0x20
000014da: PUSH1 0x04
000014dc: DUP3
000014dd: ADD
000014de: MSTORE
000014df: PUSH1 0x4d
000014e1: PUSH1 0x24
000014e3: DUP3
000014e4: ADD
000014e5: MSTORE
000014e6: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c20686173206e
00001507: PUSH1 0x44
00001509: DUP3
0000150a: ADD
0000150b: MSTORE
0000150c: PUSH32 0x6f74206265656e2070726f76656e2062792070726f6f66207375626d69747465
0000152d: PUSH1 0x64
0000152f: DUP3
00001530: ADD
00001531: MSTORE
00001532: PUSH32 0x7220616464726573732079657400000000000000000000000000000000000000
00001553: PUSH1 0x84
00001555: DUP3
00001556: ADD
00001557: MSTORE
00001558: PUSH1 0xa4
0000155a: ADD
0000155b: PUSH2 0x09e0
0000155e: JUMP
0000155f: JUMPDEST
00001560: PUSH1 0x00
00001562: PUSH2 0x15e0
00001565: DUP3
00001566: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000157b: AND
0000157c: PUSH4 0xcf09e0d0
00001581: PUSH1 0x40
00001583: MLOAD
00001584: DUP2
00001585: PUSH4 0xffffffff
0000158a: AND
0000158b: PUSH1 0xe0
0000158d: SHL
0000158e: DUP2
0000158f: MSTORE
00001590: PUSH1 0x04
00001592: ADD
00001593: PUSH1 0x20
00001595: PUSH1 0x40
00001597: MLOAD
00001598: DUP1
00001599: DUP4
0000159a: SUB
0000159b: DUP2
0000159c: DUP7
0000159d: GAS
0000159e: STATICCALL
0000159f: ISZERO
000015a0: DUP1
000015a1: ISZERO
000015a2: PUSH2 0x15af
000015a5: JUMPI
000015a6: RETURNDATASIZE
000015a7: PUSH1 0x00
000015a9: DUP1
000015aa: RETURNDATACOPY
000015ab: RETURNDATASIZE
000015ac: PUSH1 0x00
000015ae: REVERT
000015af: JUMPDEST
000015b0: POP
000015b1: POP
000015b2: POP
000015b3: POP
000015b4: PUSH1 0x40
000015b6: MLOAD
000015b7: RETURNDATASIZE
000015b8: PUSH1 0x1f
000015ba: NOT
000015bb: PUSH1 0x1f
000015bd: DUP3
000015be: ADD
000015bf: AND
000015c0: DUP3
000015c1: ADD
000015c2: DUP1
000015c3: PUSH1 0x40
000015c5: MSTORE
000015c6: POP
000015c7: DUP2
000015c8: ADD
000015c9: SWAP1
000015ca: PUSH2 0x15d3
000015cd: SWAP2
000015ce: SWAP1
000015cf: PUSH2 0x4cf4
000015d2: JUMP
000015d3: JUMPDEST
000015d4: PUSH8 0xffffffffffffffff
000015dd: AND
000015de: SWAP1
000015df: JUMP
000015e0: JUMPDEST
000015e1: SWAP1
000015e2: POP
000015e3: DUP1
000015e4: PUSH8 0xffffffffffffffff
000015ed: AND
000015ee: DUP4
000015ef: PUSH1 0x20
000015f1: ADD
000015f2: MLOAD
000015f3: PUSH8 0xffffffffffffffff
000015fc: AND
000015fd: GT
000015fe: PUSH2 0x16af
00001601: JUMPI
00001602: PUSH1 0x40
00001604: MLOAD
00001605: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001626: DUP2
00001627: MSTORE
00001628: PUSH1 0x20
0000162a: PUSH1 0x04
0000162c: DUP3
0000162d: ADD
0000162e: MSTORE
0000162f: PUSH1 0x4e
00001631: PUSH1 0x24
00001633: DUP3
00001634: ADD
00001635: MSTORE
00001636: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c2074696d6573
00001657: PUSH1 0x44
00001659: DUP3
0000165a: ADD
0000165b: MSTORE
0000165c: PUSH32 0x74616d70206c657373207468616e20646973707574652067616d652063726561
0000167d: PUSH1 0x64
0000167f: DUP3
00001680: ADD
00001681: MSTORE
00001682: PUSH32 0x74696f6e2074696d657374616d70000000000000000000000000000000000000
000016a3: PUSH1 0x84
000016a5: DUP3
000016a6: ADD
000016a7: MSTORE
000016a8: PUSH1 0xa4
000016aa: ADD
000016ab: PUSH2 0x09e0
000016ae: JUMP
000016af: JUMPDEST
000016b0: PUSH32 0x0000000000000000000000000000000000000000000000000000000000093a80
000016d1: DUP4
000016d2: PUSH1 0x20
000016d4: ADD
000016d5: MLOAD
000016d6: PUSH8 0xffffffffffffffff
000016df: AND
000016e0: TIMESTAMP
000016e1: PUSH2 0x16ea
000016e4: SWAP2
000016e5: SWAP1
000016e6: PUSH2 0x4d40
000016e9: JUMP
000016ea: JUMPDEST
000016eb: GT
000016ec: PUSH2 0x1777
000016ef: JUMPI
000016f0: PUSH1 0x40
000016f2: MLOAD
000016f3: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001714: DUP2
00001715: MSTORE
00001716: PUSH1 0x20
00001718: PUSH1 0x04
0000171a: DUP3
0000171b: ADD
0000171c: MSTORE
0000171d: PUSH1 0x35
0000171f: PUSH1 0x24
00001721: DUP3
00001722: ADD
00001723: MSTORE
00001724: PUSH32 0x4f7074696d69736d506f7274616c3a2070726f76656e20776974686472617761
00001745: PUSH1 0x44
00001747: DUP3
00001748: ADD
00001749: MSTORE
0000174a: PUSH32 0x6c20686173206e6f74206d617475726564207965740000000000000000000000
0000176b: PUSH1 0x64
0000176d: DUP3
0000176e: ADD
0000176f: MSTORE
00001770: PUSH1 0x84
00001772: ADD
00001773: PUSH2 0x09e0
00001776: JUMP
00001777: JUMPDEST
00001778: PUSH1 0x02
0000177a: DUP3
0000177b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001790: AND
00001791: PUSH4 0x200d2ed2
00001796: PUSH1 0x40
00001798: MLOAD
00001799: DUP2
0000179a: PUSH4 0xffffffff
0000179f: AND
000017a0: PUSH1 0xe0
000017a2: SHL
000017a3: DUP2
000017a4: MSTORE
000017a5: PUSH1 0x04
000017a7: ADD
000017a8: PUSH1 0x20
000017aa: PUSH1 0x40
000017ac: MLOAD
000017ad: DUP1
000017ae: DUP4
000017af: SUB
000017b0: DUP2
000017b1: DUP7
000017b2: GAS
000017b3: STATICCALL
000017b4: ISZERO
000017b5: DUP1
000017b6: ISZERO
000017b7: PUSH2 0x17c4
000017ba: JUMPI
000017bb: RETURNDATASIZE
000017bc: PUSH1 0x00
000017be: DUP1
000017bf: RETURNDATACOPY
000017c0: RETURNDATASIZE
000017c1: PUSH1 0x00
000017c3: REVERT
000017c4: JUMPDEST
000017c5: POP
000017c6: POP
000017c7: POP
000017c8: POP
000017c9: PUSH1 0x40
000017cb: MLOAD
000017cc: RETURNDATASIZE
000017cd: PUSH1 0x1f
000017cf: NOT
000017d0: PUSH1 0x1f
000017d2: DUP3
000017d3: ADD
000017d4: AND
000017d5: DUP3
000017d6: ADD
000017d7: DUP1
000017d8: PUSH1 0x40
000017da: MSTORE
000017db: POP
000017dc: DUP2
000017dd: ADD
000017de: SWAP1
000017df: PUSH2 0x17e8
000017e2: SWAP2
000017e3: SWAP1
000017e4: PUSH2 0x4c32
000017e7: JUMP
000017e8: JUMPDEST
000017e9: PUSH1 0x02
000017eb: DUP2
000017ec: GT
000017ed: ISZERO
000017ee: PUSH2 0x17f9
000017f1: JUMPI
000017f2: PUSH2 0x17f9
000017f5: PUSH2 0x4c03
000017f8: JUMP
000017f9: JUMPDEST
000017fa: EQ
000017fb: PUSH2 0x1886
000017fe: JUMPI
000017ff: PUSH1 0x40
00001801: MLOAD
00001802: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001823: DUP2
00001824: MSTORE
00001825: PUSH1 0x20
00001827: PUSH1 0x04
00001829: DUP3
0000182a: ADD
0000182b: MSTORE
0000182c: PUSH1 0x36
0000182e: PUSH1 0x24
00001830: DUP3
00001831: ADD
00001832: MSTORE
00001833: PUSH32 0x4f7074696d69736d506f7274616c3a206f75747075742070726f706f73616c20
00001854: PUSH1 0x44
00001856: DUP3
00001857: ADD
00001858: MSTORE
00001859: PUSH32 0x686173206e6f74206265656e2076616c69646174656400000000000000000000
0000187a: PUSH1 0x64
0000187c: DUP3
0000187d: ADD
0000187e: MSTORE
0000187f: PUSH1 0x84
00001881: ADD
00001882: PUSH2 0x09e0
00001885: JUMP
00001886: JUMPDEST
00001887: PUSH1 0x3b
00001889: SLOAD
0000188a: PUSH4 0xffffffff
0000188f: AND
00001890: PUSH4 0xffffffff
00001895: AND
00001896: PUSH2 0x1910
00001899: DUP4
0000189a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000018af: AND
000018b0: PUSH4 0xbbdc02db
000018b5: PUSH1 0x40
000018b7: MLOAD
000018b8: DUP2
000018b9: PUSH4 0xffffffff
000018be: AND
000018bf: PUSH1 0xe0
000018c1: SHL
000018c2: DUP2
000018c3: MSTORE
000018c4: PUSH1 0x04
000018c6: ADD
000018c7: PUSH1 0x20
000018c9: PUSH1 0x40
000018cb: MLOAD
000018cc: DUP1
000018cd: DUP4
000018ce: SUB
000018cf: DUP2
000018d0: DUP7
000018d1: GAS
000018d2: STATICCALL
000018d3: ISZERO
000018d4: DUP1
000018d5: ISZERO
000018d6: PUSH2 0x18e3
000018d9: JUMPI
000018da: RETURNDATASIZE
000018db: PUSH1 0x00
000018dd: DUP1
000018de: RETURNDATACOPY
000018df: RETURNDATASIZE
000018e0: PUSH1 0x00
000018e2: REVERT
000018e3: JUMPDEST
000018e4: POP
000018e5: POP
000018e6: POP
000018e7: POP
000018e8: PUSH1 0x40
000018ea: MLOAD
000018eb: RETURNDATASIZE
000018ec: PUSH1 0x1f
000018ee: NOT
000018ef: PUSH1 0x1f
000018f1: DUP3
000018f2: ADD
000018f3: AND
000018f4: DUP3
000018f5: ADD
000018f6: DUP1
000018f7: PUSH1 0x40
000018f9: MSTORE
000018fa: POP
000018fb: DUP2
000018fc: ADD
000018fd: SWAP1
000018fe: PUSH2 0x1907
00001901: SWAP2
00001902: SWAP1
00001903: PUSH2 0x4d57
00001906: JUMP
00001907: JUMPDEST
00001908: PUSH4 0xffffffff
0000190d: AND
0000190e: SWAP1
0000190f: JUMP
00001910: JUMPDEST
00001911: PUSH4 0xffffffff
00001916: AND
00001917: EQ
00001918: PUSH2 0x19a3
0000191b: JUMPI
0000191c: PUSH1 0x40
0000191e: MLOAD
0000191f: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001940: DUP2
00001941: MSTORE
00001942: PUSH1 0x20
00001944: PUSH1 0x04
00001946: DUP3
00001947: ADD
00001948: MSTORE
00001949: PUSH1 0x21
0000194b: PUSH1 0x24
0000194d: DUP3
0000194e: ADD
0000194f: MSTORE
00001950: PUSH32 0x4f7074696d69736d506f7274616c3a20696e76616c69642067616d6520747970
00001971: PUSH1 0x44
00001973: DUP3
00001974: ADD
00001975: MSTORE
00001976: PUSH32 0x6500000000000000000000000000000000000000000000000000000000000000
00001997: PUSH1 0x64
00001999: DUP3
0000199a: ADD
0000199b: MSTORE
0000199c: PUSH1 0x84
0000199e: ADD
0000199f: PUSH2 0x09e0
000019a2: JUMP
000019a3: JUMPDEST
000019a4: PUSH1 0x3b
000019a6: SLOAD
000019a7: PUSH8 0xffffffffffffffff
000019b0: PUSH5 0x0100000000
000019b6: SWAP1
000019b7: SWAP2
000019b8: DIV
000019b9: DUP2
000019ba: AND
000019bb: SWAP1
000019bc: DUP3
000019bd: AND
000019be: LT
000019bf: ISZERO
000019c0: PUSH2 0x1a71
000019c3: JUMPI
000019c4: PUSH1 0x40
000019c6: MLOAD
000019c7: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000019e8: DUP2
000019e9: MSTORE
000019ea: PUSH1 0x20
000019ec: PUSH1 0x04
000019ee: DUP3
000019ef: ADD
000019f0: MSTORE
000019f1: PUSH1 0x4b
000019f3: PUSH1 0x24
000019f5: DUP3
000019f6: ADD
000019f7: MSTORE
000019f8: PUSH32 0x4f7074696d69736d506f7274616c3a20646973707574652067616d6520637265
00001a19: PUSH1 0x44
00001a1b: DUP3
00001a1c: ADD
00001a1d: MSTORE
00001a1e: PUSH32 0x61746564206265666f7265207265737065637465642067616d65207479706520
00001a3f: PUSH1 0x64
00001a41: DUP3
00001a42: ADD
00001a43: MSTORE
00001a44: PUSH32 0x7761732075706461746564000000000000000000000000000000000000000000
00001a65: PUSH1 0x84
00001a67: DUP3
00001a68: ADD
00001a69: MSTORE
00001a6a: PUSH1 0xa4
00001a6c: ADD
00001a6d: PUSH2 0x09e0
00001a70: JUMP
00001a71: JUMPDEST
00001a72: PUSH32 0x0000000000000000000000000000000000000000000000000000000000049d40
00001a93: PUSH2 0x1ae0
00001a96: DUP4
00001a97: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001aac: AND
00001aad: PUSH4 0x19effeb4
00001ab2: PUSH1 0x40
00001ab4: MLOAD
00001ab5: DUP2
00001ab6: PUSH4 0xffffffff
00001abb: AND
00001abc: PUSH1 0xe0
00001abe: SHL
00001abf: DUP2
00001ac0: MSTORE
00001ac1: PUSH1 0x04
00001ac3: ADD
00001ac4: PUSH1 0x20
00001ac6: PUSH1 0x40
00001ac8: MLOAD
00001ac9: DUP1
00001aca: DUP4
00001acb: SUB
00001acc: DUP2
00001acd: DUP7
00001ace: GAS
00001acf: STATICCALL
00001ad0: ISZERO
00001ad1: DUP1
00001ad2: ISZERO
00001ad3: PUSH2 0x15af
00001ad6: JUMPI
00001ad7: RETURNDATASIZE
00001ad8: PUSH1 0x00
00001ada: DUP1
00001adb: RETURNDATACOPY
00001adc: RETURNDATASIZE
00001add: PUSH1 0x00
00001adf: REVERT
00001ae0: JUMPDEST
00001ae1: PUSH2 0x1af4
00001ae4: SWAP1
00001ae5: PUSH8 0xffffffffffffffff
00001aee: AND
00001aef: TIMESTAMP
00001af0: PUSH2 0x4d40
00001af3: JUMP
00001af4: JUMPDEST
00001af5: GT
00001af6: PUSH2 0x1b81
00001af9: JUMPI
00001afa: PUSH1 0x40
00001afc: MLOAD
00001afd: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001b1e: DUP2
00001b1f: MSTORE
00001b20: PUSH1 0x20
00001b22: PUSH1 0x04
00001b24: DUP3
00001b25: ADD
00001b26: MSTORE
00001b27: PUSH1 0x2a
00001b29: PUSH1 0x24
00001b2b: DUP3
00001b2c: ADD
00001b2d: MSTORE
00001b2e: PUSH32 0x4f7074696d69736d506f7274616c3a206f75747075742070726f706f73616c20
00001b4f: PUSH1 0x44
00001b51: DUP3
00001b52: ADD
00001b53: MSTORE
00001b54: PUSH32 0x696e206169722d67617000000000000000000000000000000000000000000000
00001b75: PUSH1 0x64
00001b77: DUP3
00001b78: ADD
00001b79: MSTORE
00001b7a: PUSH1 0x84
00001b7c: ADD
00001b7d: PUSH2 0x09e0
00001b80: JUMP
00001b81: JUMPDEST
00001b82: PUSH1 0x00
00001b84: DUP6
00001b85: DUP2
00001b86: MSTORE
00001b87: PUSH1 0x33
00001b89: PUSH1 0x20
00001b8b: MSTORE
00001b8c: PUSH1 0x40
00001b8e: SWAP1
00001b8f: KECCAK256
00001b90: SLOAD
00001b91: PUSH1 0xff
00001b93: AND
00001b94: ISZERO
00001b95: PUSH2 0x1c20
00001b98: JUMPI
00001b99: PUSH1 0x40
00001b9b: MLOAD
00001b9c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001bbd: DUP2
00001bbe: MSTORE
00001bbf: PUSH1 0x20
00001bc1: PUSH1 0x04
00001bc3: DUP3
00001bc4: ADD
00001bc5: MSTORE
00001bc6: PUSH1 0x35
00001bc8: PUSH1 0x24
00001bca: DUP3
00001bcb: ADD
00001bcc: MSTORE
00001bcd: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c206861732061
00001bee: PUSH1 0x44
00001bf0: DUP3
00001bf1: ADD
00001bf2: MSTORE
00001bf3: PUSH32 0x6c7265616479206265656e2066696e616c697a65640000000000000000000000
00001c14: PUSH1 0x64
00001c16: DUP3
00001c17: ADD
00001c18: MSTORE
00001c19: PUSH1 0x84
00001c1b: ADD
00001c1c: PUSH2 0x09e0
00001c1f: JUMP
00001c20: JUMPDEST
00001c21: POP
00001c22: POP
00001c23: POP
00001c24: POP
00001c25: POP
00001c26: JUMP
00001c27: JUMPDEST
00001c28: PUSH2 0x1c2f
00001c2b: PUSH2 0x0b5a
00001c2e: JUMP
00001c2f: JUMPDEST
00001c30: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001c45: AND
00001c46: CALLER
00001c47: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001c5c: AND
00001c5d: EQ
00001c5e: PUSH2 0x1c93
00001c61: JUMPI
00001c62: PUSH1 0x40
00001c64: MLOAD
00001c65: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000
00001c86: DUP2
00001c87: MSTORE
00001c88: PUSH1 0x04
00001c8a: ADD
00001c8b: PUSH1 0x40
00001c8d: MLOAD
00001c8e: DUP1
00001c8f: SWAP2
00001c90: SUB
00001c91: SWAP1
00001c92: REVERT
00001c93: JUMPDEST
00001c94: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001ca9: DUP2
00001caa: AND
00001cab: PUSH1 0x00
00001cad: DUP2
00001cae: DUP2
00001caf: MSTORE
00001cb0: PUSH1 0x3a
00001cb2: PUSH1 0x20
00001cb4: MSTORE
00001cb5: PUSH1 0x40
00001cb7: DUP1
00001cb8: DUP3
00001cb9: KECCAK256
00001cba: DUP1
00001cbb: SLOAD
00001cbc: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
00001cdd: AND
00001cde: PUSH1 0x01
00001ce0: OR
00001ce1: SWAP1
00001ce2: SSTORE
00001ce3: MLOAD
00001ce4: PUSH32 0x192c289026d59a41a27f5aea08f3969b57931b0589202d14f4368cded95d3cda
00001d05: SWAP2
00001d06: SWAP1
00001d07: LOG2
00001d08: POP
00001d09: JUMP
00001d0a: JUMPDEST
00001d0b: PUSH2 0x1d12
00001d0e: PUSH2 0x0b5a
00001d11: JUMP
00001d12: JUMPDEST
00001d13: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001d28: AND
00001d29: CALLER
00001d2a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001d3f: AND
00001d40: EQ
00001d41: PUSH2 0x1d76
00001d44: JUMPI
00001d45: PUSH1 0x40
00001d47: MLOAD
00001d48: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000
00001d69: DUP2
00001d6a: MSTORE
00001d6b: PUSH1 0x04
00001d6d: ADD
00001d6e: PUSH1 0x40
00001d70: MLOAD
00001d71: DUP1
00001d72: SWAP2
00001d73: SUB
00001d74: SWAP1
00001d75: REVERT
00001d76: JUMPDEST
00001d77: PUSH1 0x3b
00001d79: DUP1
00001d7a: SLOAD
00001d7b: PUSH4 0xffffffff
00001d80: DUP4
00001d81: AND
00001d82: PUSH32 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000
00001da3: SWAP1
00001da4: SWAP2
00001da5: AND
00001da6: DUP2
00001da7: OR
00001da8: PUSH5 0x0100000000
00001dae: TIMESTAMP
00001daf: PUSH8 0xffffffffffffffff
00001db8: SWAP1
00001db9: DUP2
00001dba: AND
00001dbb: DUP3
00001dbc: MUL
00001dbd: SWAP3
00001dbe: SWAP1
00001dbf: SWAP3
00001dc0: OR
00001dc1: SWAP4
00001dc2: DUP5
00001dc3: SWAP1
00001dc4: SSTORE
00001dc5: PUSH1 0x40
00001dc7: MLOAD
00001dc8: SWAP4
00001dc9: DIV
00001dca: AND
00001dcb: SWAP2
00001dcc: PUSH32 0x049fe9dd413cdf037cce27011cc1790c753118272f3630e6e8bdfa5e82081760
00001ded: SWAP1
00001dee: PUSH1 0x00
00001df0: SWAP1
00001df1: LOG3
00001df2: POP
00001df3: JUMP
00001df4: JUMPDEST
00001df5: JUMP
00001df6: JUMPDEST
00001df7: PUSH2 0x1dfe
00001dfa: PUSH2 0x1303
00001dfd: JUMP
00001dfe: JUMPDEST
00001dff: ISZERO
00001e00: PUSH2 0x1e35
00001e03: JUMPI
00001e04: PUSH1 0x40
00001e06: MLOAD
00001e07: PUSH32 0xf480973e00000000000000000000000000000000000000000000000000000000
00001e28: DUP2
00001e29: MSTORE
00001e2a: PUSH1 0x04
00001e2c: ADD
00001e2d: PUSH1 0x40
00001e2f: MLOAD
00001e30: DUP1
00001e31: SWAP2
00001e32: SUB
00001e33: SWAP1
00001e34: REVERT
00001e35: JUMPDEST
00001e36: PUSH2 0x1e3f
00001e39: DUP2
00001e3a: CALLER
00001e3b: PUSH2 0x08fc
00001e3e: JUMP
00001e3f: JUMPDEST
00001e40: POP
00001e41: JUMP
00001e42: JUMPDEST
00001e43: PUSH1 0x00
00001e45: SLOAD
00001e46: PUSH2 0x0100
00001e49: SWAP1
00001e4a: DIV
00001e4b: PUSH1 0xff
00001e4d: AND
00001e4e: ISZERO
00001e4f: DUP1
00001e50: DUP1
00001e51: ISZERO
00001e52: PUSH2 0x1e62
00001e55: JUMPI
00001e56: POP
00001e57: PUSH1 0x00
00001e59: SLOAD
00001e5a: PUSH1 0x01
00001e5c: PUSH1 0xff
00001e5e: SWAP1
00001e5f: SWAP2
00001e60: AND
00001e61: LT
00001e62: JUMPDEST
00001e63: DUP1
00001e64: PUSH2 0x1e7c
00001e67: JUMPI
00001e68: POP
00001e69: ADDRESS
00001e6a: EXTCODESIZE
00001e6b: ISZERO
00001e6c: DUP1
00001e6d: ISZERO
00001e6e: PUSH2 0x1e7c
00001e71: JUMPI
00001e72: POP
00001e73: PUSH1 0x00
00001e75: SLOAD
00001e76: PUSH1 0xff
00001e78: AND
00001e79: PUSH1 0x01
00001e7b: EQ
00001e7c: JUMPDEST
00001e7d: PUSH2 0x1f08
00001e80: JUMPI
00001e81: PUSH1 0x40
00001e83: MLOAD
00001e84: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001ea5: DUP2
00001ea6: MSTORE
00001ea7: PUSH1 0x20
00001ea9: PUSH1 0x04
00001eab: DUP3
00001eac: ADD
00001ead: MSTORE
00001eae: PUSH1 0x2e
00001eb0: PUSH1 0x24
00001eb2: DUP3
00001eb3: ADD
00001eb4: MSTORE
00001eb5: PUSH32 0x496e697469616c697a61626c653a20636f6e747261637420697320616c726561
00001ed6: PUSH1 0x44
00001ed8: DUP3
00001ed9: ADD
00001eda: MSTORE
00001edb: PUSH32 0x647920696e697469616c697a6564000000000000000000000000000000000000
00001efc: PUSH1 0x64
00001efe: DUP3
00001eff: ADD
00001f00: MSTORE
00001f01: PUSH1 0x84
00001f03: ADD
00001f04: PUSH2 0x09e0
00001f07: JUMP
00001f08: JUMPDEST
00001f09: PUSH1 0x00
00001f0b: DUP1
00001f0c: SLOAD
00001f0d: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
00001f2e: AND
00001f2f: PUSH1 0x01
00001f31: OR
00001f32: SWAP1
00001f33: SSTORE
00001f34: DUP1
00001f35: ISZERO
00001f36: PUSH2 0x1f66
00001f39: JUMPI
00001f3a: PUSH1 0x00
00001f3c: DUP1
00001f3d: SLOAD
00001f3e: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
00001f5f: AND
00001f60: PUSH2 0x0100
00001f63: OR
00001f64: SWAP1
00001f65: SSTORE
00001f66: JUMPDEST
00001f67: PUSH1 0x38
00001f69: DUP1
00001f6a: SLOAD
00001f6b: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000
00001f8c: SWAP1
00001f8d: DUP2
00001f8e: AND
00001f8f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001fa4: DUP9
00001fa5: DUP2
00001fa6: AND
00001fa7: SWAP2
00001fa8: SWAP1
00001fa9: SWAP2
00001faa: OR
00001fab: SWAP1
00001fac: SWAP3
00001fad: SSTORE
00001fae: PUSH1 0x37
00001fb0: DUP1
00001fb1: SLOAD
00001fb2: SWAP1
00001fb3: SWAP2
00001fb4: AND
00001fb5: DUP7
00001fb6: DUP4
00001fb7: AND
00001fb8: OR
00001fb9: SWAP1
00001fba: SSTORE
00001fbb: PUSH1 0x35
00001fbd: DUP1
00001fbe: SLOAD
00001fbf: PUSH32 0xffffffffffffffffffffff0000000000000000000000000000000000000000ff
00001fe0: AND
00001fe1: PUSH2 0x0100
00001fe4: DUP7
00001fe5: DUP5
00001fe6: AND
00001fe7: MUL
00001fe8: OR
00001fe9: SWAP1
00001fea: SSTORE
00001feb: PUSH1 0x32
00001fed: SLOAD
00001fee: AND
00001fef: PUSH2 0x2086
00001ff2: JUMPI
00001ff3: PUSH1 0x32
00001ff5: DUP1
00001ff6: SLOAD
00001ff7: PUSH2 0xdead
00001ffa: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000
0000201b: SWAP1
0000201c: SWAP2
0000201d: AND
0000201e: OR
0000201f: SWAP1
00002020: SSTORE
00002021: PUSH1 0x3b
00002023: DUP1
00002024: SLOAD
00002025: PUSH32 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000
00002046: AND
00002047: PUSH5 0x0100000000
0000204d: TIMESTAMP
0000204e: PUSH8 0xffffffffffffffff
00002057: AND
00002058: MUL
00002059: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
0000207a: AND
0000207b: OR
0000207c: PUSH4 0xffffffff
00002081: DUP5
00002082: AND
00002083: OR
00002084: SWAP1
00002085: SSTORE
00002086: JUMPDEST
00002087: PUSH2 0x208e
0000208a: PUSH2 0x255c
0000208d: JUMP
0000208e: JUMPDEST
0000208f: DUP1
00002090: ISZERO
00002091: PUSH2 0x1c20
00002094: JUMPI
00002095: PUSH1 0x00
00002097: DUP1
00002098: SLOAD
00002099: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
000020ba: AND
000020bb: SWAP1
000020bc: SSTORE
000020bd: PUSH1 0x40
000020bf: MLOAD
000020c0: PUSH1 0x01
000020c2: DUP2
000020c3: MSTORE
000020c4: PUSH32 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498
000020e5: SWAP1
000020e6: PUSH1 0x20
000020e8: ADD
000020e9: PUSH1 0x40
000020eb: MLOAD
000020ec: DUP1
000020ed: SWAP2
000020ee: SUB
000020ef: SWAP1
000020f0: LOG1
000020f1: POP
000020f2: POP
000020f3: POP
000020f4: POP
000020f5: POP
000020f6: JUMP
000020f7: JUMPDEST
000020f8: PUSH1 0x00
000020fa: PUSH2 0x2104
000020fd: DUP3
000020fe: PUSH1 0x10
00002100: PUSH2 0x4d74
00002103: JUMP
00002104: JUMPDEST
00002105: PUSH2 0x2110
00002108: SWAP1
00002109: PUSH2 0x5208
0000210c: PUSH2 0x4da4
0000210f: JUMP
00002110: JUMPDEST
00002111: SWAP3
00002112: SWAP2
00002113: POP
00002114: POP
00002115: JUMP
00002116: JUMPDEST
00002117: PUSH1 0x3c
00002119: PUSH1 0x20
0000211b: MSTORE
0000211c: DUP2
0000211d: PUSH1 0x00
0000211f: MSTORE
00002120: PUSH1 0x40
00002122: PUSH1 0x00
00002124: KECCAK256
00002125: DUP2
00002126: DUP2
00002127: SLOAD
00002128: DUP2
00002129: LT
0000212a: PUSH2 0x2132
0000212d: JUMPI
0000212e: PUSH1 0x00
00002130: DUP1
00002131: REVERT
00002132: JUMPDEST
00002133: PUSH1 0x00
00002135: SWAP2
00002136: DUP3
00002137: MSTORE
00002138: PUSH1 0x20
0000213a: SWAP1
0000213b: SWAP2
0000213c: KECCAK256
0000213d: ADD
0000213e: SLOAD
0000213f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002154: AND
00002155: SWAP2
00002156: POP
00002157: DUP3
00002158: SWAP1
00002159: POP
0000215a: JUMP
0000215b: JUMPDEST
0000215c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002171: AND
00002172: EXTCODESIZE
00002173: ISZERO
00002174: ISZERO
00002175: SWAP1
00002176: JUMP
00002177: JUMPDEST
00002178: PUSH1 0x01
0000217a: SLOAD
0000217b: PUSH1 0x00
0000217d: SWAP1
0000217e: PUSH2 0x21ad
00002181: SWAP1
00002182: PUSH25 0x01000000000000000000000000000000000000000000000000
0000219c: SWAP1
0000219d: DIV
0000219e: PUSH8 0xffffffffffffffff
000021a7: AND
000021a8: NUMBER
000021a9: PUSH2 0x4d40
000021ac: JUMP
000021ad: JUMPDEST
000021ae: SWAP1
000021af: POP
000021b0: PUSH1 0x00
000021b2: PUSH2 0x21b9
000021b5: PUSH2 0x266f
000021b8: JUMP
000021b9: JUMPDEST
000021ba: SWAP1
000021bb: POP
000021bc: PUSH1 0x00
000021be: DUP2
000021bf: PUSH1 0x20
000021c1: ADD
000021c2: MLOAD
000021c3: PUSH1 0xff
000021c5: AND
000021c6: DUP3
000021c7: PUSH1 0x00
000021c9: ADD
000021ca: MLOAD
000021cb: PUSH4 0xffffffff
000021d0: AND
000021d1: PUSH2 0x21da
000021d4: SWAP2
000021d5: SWAP1
000021d6: PUSH2 0x4dff
000021d9: JUMP
000021da: JUMPDEST
000021db: SWAP1
000021dc: POP
000021dd: DUP3
000021de: ISZERO
000021df: PUSH2 0x2311
000021e2: JUMPI
000021e3: PUSH1 0x01
000021e5: SLOAD
000021e6: PUSH1 0x00
000021e8: SWAP1
000021e9: PUSH2 0x2211
000021ec: SWAP1
000021ed: DUP4
000021ee: SWAP1
000021ef: PUSH17 0x0100000000000000000000000000000000
00002201: SWAP1
00002202: DIV
00002203: PUSH8 0xffffffffffffffff
0000220c: AND
0000220d: PUSH2 0x4e67
00002210: JUMP
00002211: JUMPDEST
00002212: SWAP1
00002213: POP
00002214: PUSH1 0x00
00002216: DUP4
00002217: PUSH1 0x40
00002219: ADD
0000221a: MLOAD
0000221b: PUSH1 0xff
0000221d: AND
0000221e: DUP4
0000221f: PUSH2 0x2228
00002222: SWAP2
00002223: SWAP1
00002224: PUSH2 0x4edb
00002227: JUMP
00002228: JUMPDEST
00002229: PUSH1 0x01
0000222b: SLOAD
0000222c: PUSH2 0x2248
0000222f: SWAP1
00002230: DUP5
00002231: SWAP1
00002232: PUSH16 0xffffffffffffffffffffffffffffffff
00002243: AND
00002244: PUSH2 0x4edb
00002247: JUMP
00002248: JUMPDEST
00002249: PUSH2 0x2252
0000224c: SWAP2
0000224d: SWAP1
0000224e: PUSH2 0x4dff
00002251: JUMP
00002252: JUMPDEST
00002253: PUSH1 0x01
00002255: SLOAD
00002256: SWAP1
00002257: SWAP2
00002258: POP
00002259: PUSH1 0x00
0000225b: SWAP1
0000225c: PUSH2 0x22a3
0000225f: SWAP1
00002260: PUSH2 0x227c
00002263: SWAP1
00002264: DUP5
00002265: SWAP1
00002266: PUSH16 0xffffffffffffffffffffffffffffffff
00002277: AND
00002278: PUSH2 0x4f97
0000227b: JUMP
0000227c: JUMPDEST
0000227d: DUP7
0000227e: PUSH1 0x60
00002280: ADD
00002281: MLOAD
00002282: PUSH4 0xffffffff
00002287: AND
00002288: DUP8
00002289: PUSH1 0xa0
0000228b: ADD
0000228c: MLOAD
0000228d: PUSH16 0xffffffffffffffffffffffffffffffff
0000229e: AND
0000229f: PUSH2 0x2730
000022a2: JUMP
000022a3: JUMPDEST
000022a4: SWAP1
000022a5: POP
000022a6: PUSH1 0x01
000022a8: DUP7
000022a9: GT
000022aa: ISZERO
000022ab: PUSH2 0x22d2
000022ae: JUMPI
000022af: PUSH2 0x22cf
000022b2: PUSH2 0x227c
000022b5: DUP3
000022b6: DUP8
000022b7: PUSH1 0x40
000022b9: ADD
000022ba: MLOAD
000022bb: PUSH1 0xff
000022bd: AND
000022be: PUSH1 0x01
000022c0: DUP11
000022c1: PUSH2 0x22ca
000022c4: SWAP2
000022c5: SWAP1
000022c6: PUSH2 0x4d40
000022c9: JUMP
000022ca: JUMPDEST
000022cb: PUSH2 0x274f
000022ce: JUMP
000022cf: JUMPDEST
000022d0: SWAP1
000022d1: POP
000022d2: JUMPDEST
000022d3: PUSH16 0xffffffffffffffffffffffffffffffff
000022e4: AND
000022e5: PUSH25 0x01000000000000000000000000000000000000000000000000
000022ff: PUSH8 0xffffffffffffffff
00002308: NUMBER
00002309: AND
0000230a: MUL
0000230b: OR
0000230c: PUSH1 0x01
0000230e: SSTORE
0000230f: POP
00002310: POP
00002311: JUMPDEST
00002312: PUSH1 0x01
00002314: DUP1
00002315: SLOAD
00002316: DUP7
00002317: SWAP2
00002318: SWAP1
00002319: PUSH1 0x10
0000231b: SWAP1
0000231c: PUSH2 0x2344
0000231f: SWAP1
00002320: DUP5
00002321: SWAP1
00002322: PUSH17 0x0100000000000000000000000000000000
00002334: SWAP1
00002335: DIV
00002336: PUSH8 0xffffffffffffffff
0000233f: AND
00002340: PUSH2 0x4da4
00002343: JUMP
00002344: JUMPDEST
00002345: SWAP3
00002346: POP
00002347: PUSH2 0x0100
0000234a: EXP
0000234b: DUP2
0000234c: SLOAD
0000234d: DUP2
0000234e: PUSH8 0xffffffffffffffff
00002357: MUL
00002358: NOT
00002359: AND
0000235a: SWAP1
0000235b: DUP4
0000235c: PUSH8 0xffffffffffffffff
00002365: AND
00002366: MUL
00002367: OR
00002368: SWAP1
00002369: SSTORE
0000236a: POP
0000236b: DUP2
0000236c: PUSH1 0x00
0000236e: ADD
0000236f: MLOAD
00002370: PUSH4 0xffffffff
00002375: AND
00002376: PUSH1 0x01
00002378: PUSH1 0x00
0000237a: ADD
0000237b: PUSH1 0x10
0000237d: SWAP1
0000237e: SLOAD
0000237f: SWAP1
00002380: PUSH2 0x0100
00002383: EXP
00002384: SWAP1
00002385: DIV
00002386: PUSH8 0xffffffffffffffff
0000238f: AND
00002390: PUSH8 0xffffffffffffffff
00002399: AND
0000239a: SGT
0000239b: ISZERO
0000239c: PUSH2 0x23d1
0000239f: JUMPI
000023a0: PUSH1 0x40
000023a2: MLOAD
000023a3: PUSH32 0x77ebef4d00000000000000000000000000000000000000000000000000000000
000023c4: DUP2
000023c5: MSTORE
000023c6: PUSH1 0x04
000023c8: ADD
000023c9: PUSH1 0x40
000023cb: MLOAD
000023cc: DUP1
000023cd: SWAP2
000023ce: SUB
000023cf: SWAP1
000023d0: REVERT
000023d1: JUMPDEST
000023d2: PUSH1 0x01
000023d4: SLOAD
000023d5: PUSH1 0x00
000023d7: SWAP1
000023d8: PUSH2 0x23fd
000023db: SWAP1
000023dc: PUSH16 0xffffffffffffffffffffffffffffffff
000023ed: AND
000023ee: PUSH8 0xffffffffffffffff
000023f7: DUP9
000023f8: AND
000023f9: PUSH2 0x500b
000023fc: JUMP
000023fd: JUMPDEST
000023fe: SWAP1
000023ff: POP
00002400: PUSH1 0x00
00002402: PUSH2 0x240f
00002405: BASEFEE
00002406: PUSH4 0x3b9aca00
0000240b: PUSH2 0x27a4
0000240e: JUMP
0000240f: JUMPDEST
00002410: PUSH2 0x2419
00002413: SWAP1
00002414: DUP4
00002415: PUSH2 0x5048
00002418: JUMP
00002419: JUMPDEST
0000241a: SWAP1
0000241b: POP
0000241c: PUSH1 0x00
0000241e: GAS
0000241f: PUSH2 0x2428
00002422: SWAP1
00002423: DUP9
00002424: PUSH2 0x4d40
00002427: JUMP
00002428: JUMPDEST
00002429: SWAP1
0000242a: POP
0000242b: DUP1
0000242c: DUP3
0000242d: GT
0000242e: ISZERO
0000242f: PUSH2 0x2444
00002432: JUMPI
00002433: PUSH2 0x2444
00002436: PUSH2 0x243f
00002439: DUP3
0000243a: DUP5
0000243b: PUSH2 0x4d40
0000243e: JUMP
0000243f: JUMPDEST
00002440: PUSH2 0x27bb
00002443: JUMP
00002444: JUMPDEST
00002445: POP
00002446: POP
00002447: POP
00002448: POP
00002449: POP
0000244a: POP
0000244b: POP
0000244c: POP
0000244d: JUMP
0000244e: JUMPDEST
0000244f: DUP1
00002450: MLOAD
00002451: PUSH1 0x20
00002453: DUP1
00002454: DUP4
00002455: ADD
00002456: MLOAD
00002457: PUSH1 0x40
00002459: DUP1
0000245a: DUP6
0000245b: ADD
0000245c: MLOAD
0000245d: PUSH1 0x60
0000245f: DUP7
00002460: ADD
00002461: MLOAD
00002462: PUSH1 0x80
00002464: DUP8
00002465: ADD
00002466: MLOAD
00002467: PUSH1 0xa0
00002469: DUP9
0000246a: ADD
0000246b: MLOAD
0000246c: SWAP4
0000246d: MLOAD
0000246e: PUSH1 0x00
00002470: SWAP8
00002471: PUSH2 0x247e
00002474: SWAP8
00002475: SWAP1
00002476: SWAP7
00002477: SWAP6
00002478: SWAP2
00002479: ADD
0000247a: PUSH2 0x505c
0000247d: JUMP
0000247e: JUMPDEST
0000247f: PUSH1 0x40
00002481: MLOAD
00002482: PUSH1 0x20
00002484: DUP2
00002485: DUP4
00002486: SUB
00002487: SUB
00002488: DUP2
00002489: MSTORE
0000248a: SWAP1
0000248b: PUSH1 0x40
0000248d: MSTORE
0000248e: DUP1
0000248f: MLOAD
00002490: SWAP1
00002491: PUSH1 0x20
00002493: ADD
00002494: KECCAK256
00002495: SWAP1
00002496: POP
00002497: SWAP2
00002498: SWAP1
00002499: POP
0000249a: JUMP
0000249b: JUMPDEST
0000249c: PUSH1 0x00
0000249e: DUP1
0000249f: PUSH1 0x00
000024a1: PUSH2 0x24ab
000024a4: DUP7
000024a5: PUSH1 0x00
000024a7: PUSH2 0x27e9
000024aa: JUMP
000024ab: JUMPDEST
000024ac: SWAP1
000024ad: POP
000024ae: DUP1
000024af: PUSH2 0x24e1
000024b2: JUMPI
000024b3: PUSH4 0x08c379a0
000024b8: PUSH1 0x00
000024ba: MSTORE
000024bb: PUSH1 0x20
000024bd: DUP1
000024be: MSTORE
000024bf: PUSH25 0x185361666543616c6c3a204e6f7420656e6f75676820676173
000024d9: PUSH1 0x58
000024db: MSTORE
000024dc: PUSH1 0x64
000024de: PUSH1 0x1c
000024e0: REVERT
000024e1: JUMPDEST
000024e2: PUSH1 0x00
000024e4: DUP1
000024e5: DUP6
000024e6: MLOAD
000024e7: PUSH1 0x20
000024e9: DUP8
000024ea: ADD
000024eb: DUP9
000024ec: DUP12
000024ed: GAS
000024ee: CALL
000024ef: SWAP8
000024f0: SWAP7
000024f1: POP
000024f2: POP
000024f3: POP
000024f4: POP
000024f5: POP
000024f6: POP
000024f7: POP
000024f8: JUMP
000024f9: JUMPDEST
000024fa: PUSH1 0x00
000024fc: DUP2
000024fd: PUSH1 0x00
000024ff: ADD
00002500: MLOAD
00002501: DUP3
00002502: PUSH1 0x20
00002504: ADD
00002505: MLOAD
00002506: DUP4
00002507: PUSH1 0x40
00002509: ADD
0000250a: MLOAD
0000250b: DUP5
0000250c: PUSH1 0x60
0000250e: ADD
0000250f: MLOAD
00002510: PUSH1 0x40
00002512: MLOAD
00002513: PUSH1 0x20
00002515: ADD
00002516: PUSH2 0x247e
00002519: SWAP5
0000251a: SWAP4
0000251b: SWAP3
0000251c: SWAP2
0000251d: SWAP1
0000251e: SWAP4
0000251f: DUP5
00002520: MSTORE
00002521: PUSH1 0x20
00002523: DUP5
00002524: ADD
00002525: SWAP3
00002526: SWAP1
00002527: SWAP3
00002528: MSTORE
00002529: PUSH1 0x40
0000252b: DUP4
0000252c: ADD
0000252d: MSTORE
0000252e: PUSH1 0x60
00002530: DUP3
00002531: ADD
00002532: MSTORE
00002533: PUSH1 0x80
00002535: ADD
00002536: SWAP1
00002537: JUMP
00002538: JUMPDEST
00002539: PUSH1 0x00
0000253b: DUP1
0000253c: PUSH2 0x2544
0000253f: DUP7
00002540: PUSH2 0x2807
00002543: JUMP
00002544: JUMPDEST
00002545: SWAP1
00002546: POP
00002547: PUSH2 0x2552
0000254a: DUP2
0000254b: DUP7
0000254c: DUP7
0000254d: DUP7
0000254e: PUSH2 0x2839
00002551: JUMP
00002552: JUMPDEST
00002553: SWAP7
00002554: SWAP6
00002555: POP
00002556: POP
00002557: POP
00002558: POP
00002559: POP
0000255a: POP
0000255b: JUMP
0000255c: JUMPDEST
0000255d: PUSH1 0x00
0000255f: SLOAD
00002560: PUSH2 0x0100
00002563: SWAP1
00002564: DIV
00002565: PUSH1 0xff
00002567: AND
00002568: PUSH2 0x25f3
0000256b: JUMPI
0000256c: PUSH1 0x40
0000256e: MLOAD
0000256f: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002590: DUP2
00002591: MSTORE
00002592: PUSH1 0x20
00002594: PUSH1 0x04
00002596: DUP3
00002597: ADD
00002598: MSTORE
00002599: PUSH1 0x2b
0000259b: PUSH1 0x24
0000259d: DUP3
0000259e: ADD
0000259f: MSTORE
000025a0: PUSH32 0x496e697469616c697a61626c653a20636f6e7472616374206973206e6f742069
000025c1: PUSH1 0x44
000025c3: DUP3
000025c4: ADD
000025c5: MSTORE
000025c6: PUSH32 0x6e697469616c697a696e67000000000000000000000000000000000000000000
000025e7: PUSH1 0x64
000025e9: DUP3
000025ea: ADD
000025eb: MSTORE
000025ec: PUSH1 0x84
000025ee: ADD
000025ef: PUSH2 0x09e0
000025f2: JUMP
000025f3: JUMPDEST
000025f4: PUSH1 0x01
000025f6: SLOAD
000025f7: PUSH25 0x01000000000000000000000000000000000000000000000000
00002611: SWAP1
00002612: DIV
00002613: PUSH8 0xffffffffffffffff
0000261c: AND
0000261d: PUSH1 0x00
0000261f: SUB
00002620: PUSH2 0x1df4
00002623: JUMPI
00002624: PUSH1 0x40
00002626: DUP1
00002627: MLOAD
00002628: PUSH1 0x60
0000262a: DUP2
0000262b: ADD
0000262c: DUP3
0000262d: MSTORE
0000262e: PUSH4 0x3b9aca00
00002633: DUP1
00002634: DUP3
00002635: MSTORE
00002636: PUSH1 0x00
00002638: PUSH1 0x20
0000263a: DUP4
0000263b: ADD
0000263c: MSTORE
0000263d: NUMBER
0000263e: PUSH8 0xffffffffffffffff
00002647: AND
00002648: SWAP2
00002649: SWAP1
0000264a: SWAP3
0000264b: ADD
0000264c: DUP2
0000264d: SWAP1
0000264e: MSTORE
0000264f: PUSH25 0x01000000000000000000000000000000000000000000000000
00002669: MUL
0000266a: OR
0000266b: PUSH1 0x01
0000266d: SSTORE
0000266e: JUMP
0000266f: JUMPDEST
00002670: PUSH1 0x40
00002672: DUP1
00002673: MLOAD
00002674: PUSH1 0xc0
00002676: DUP1
00002677: DUP3
00002678: ADD
00002679: DUP4
0000267a: MSTORE
0000267b: PUSH1 0x00
0000267d: DUP1
0000267e: DUP4
0000267f: MSTORE
00002680: PUSH1 0x20
00002682: DUP4
00002683: ADD
00002684: DUP2
00002685: SWAP1
00002686: MSTORE
00002687: DUP3
00002688: DUP5
00002689: ADD
0000268a: DUP2
0000268b: SWAP1
0000268c: MSTORE
0000268d: PUSH1 0x60
0000268f: DUP4
00002690: ADD
00002691: DUP2
00002692: SWAP1
00002693: MSTORE
00002694: PUSH1 0x80
00002696: DUP4
00002697: ADD
00002698: DUP2
00002699: SWAP1
0000269a: MSTORE
0000269b: PUSH1 0xa0
0000269d: DUP4
0000269e: ADD
0000269f: MSTORE
000026a0: PUSH1 0x37
000026a2: SLOAD
000026a3: DUP4
000026a4: MLOAD
000026a5: PUSH32 0xcc731b0200000000000000000000000000000000000000000000000000000000
000026c6: DUP2
000026c7: MSTORE
000026c8: SWAP4
000026c9: MLOAD
000026ca: SWAP3
000026cb: SWAP4
000026cc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000026e1: SWAP1
000026e2: SWAP2
000026e3: AND
000026e4: SWAP3
000026e5: PUSH4 0xcc731b02
000026ea: SWAP3
000026eb: PUSH1 0x04
000026ed: DUP1
000026ee: DUP5
000026ef: ADD
000026f0: SWAP4
000026f1: SWAP2
000026f2: SWAP3
000026f3: SWAP2
000026f4: DUP3
000026f5: SWAP1
000026f6: SUB
000026f7: ADD
000026f8: DUP2
000026f9: DUP7
000026fa: GAS
000026fb: STATICCALL
000026fc: ISZERO
000026fd: DUP1
000026fe: ISZERO
000026ff: PUSH2 0x270c
00002702: JUMPI
00002703: RETURNDATASIZE
00002704: PUSH1 0x00
00002706: DUP1
00002707: RETURNDATACOPY
00002708: RETURNDATASIZE
00002709: PUSH1 0x00
0000270b: REVERT
0000270c: JUMPDEST
0000270d: POP
0000270e: POP
0000270f: POP
00002710: POP
00002711: PUSH1 0x40
00002713: MLOAD
00002714: RETURNDATASIZE
00002715: PUSH1 0x1f
00002717: NOT
00002718: PUSH1 0x1f
0000271a: DUP3
0000271b: ADD
0000271c: AND
0000271d: DUP3
0000271e: ADD
0000271f: DUP1
00002720: PUSH1 0x40
00002722: MSTORE
00002723: POP
00002724: DUP2
00002725: ADD
00002726: SWAP1
00002727: PUSH2 0x0bed
0000272a: SWAP2
0000272b: SWAP1
0000272c: PUSH2 0x50c9
0000272f: JUMP
00002730: JUMPDEST
00002731: PUSH1 0x00
00002733: PUSH2 0x2745
00002736: PUSH2 0x273f
00002739: DUP6
0000273a: DUP6
0000273b: PUSH2 0x2869
0000273e: JUMP
0000273f: JUMPDEST
00002740: DUP4
00002741: PUSH2 0x2879
00002744: JUMP
00002745: JUMPDEST
00002746: SWAP1
00002747: POP
00002748: JUMPDEST
00002749: SWAP4
0000274a: SWAP3
0000274b: POP
0000274c: POP
0000274d: POP
0000274e: JUMP
0000274f: JUMPDEST
00002750: PUSH1 0x00
00002752: PUSH8 0x0de0b6b3a7640000
0000275b: PUSH2 0x2790
0000275e: PUSH2 0x2767
00002761: DUP6
00002762: DUP4
00002763: PUSH2 0x4dff
00002766: JUMP
00002767: JUMPDEST
00002768: PUSH2 0x2779
0000276b: SWAP1
0000276c: PUSH8 0x0de0b6b3a7640000
00002775: PUSH2 0x4e67
00002778: JUMP
00002779: JUMPDEST
0000277a: PUSH2 0x278b
0000277d: DUP6
0000277e: PUSH8 0x0de0b6b3a7640000
00002787: PUSH2 0x4edb
0000278a: JUMP
0000278b: JUMPDEST
0000278c: PUSH2 0x2888
0000278f: JUMP
00002790: JUMPDEST
00002791: PUSH2 0x279a
00002794: SWAP1
00002795: DUP7
00002796: PUSH2 0x4edb
00002799: JUMP
0000279a: JUMPDEST
0000279b: PUSH2 0x2745
0000279e: SWAP2
0000279f: SWAP1
000027a0: PUSH2 0x4dff
000027a3: JUMP
000027a4: JUMPDEST
000027a5: PUSH1 0x00
000027a7: DUP2
000027a8: DUP4
000027a9: LT
000027aa: ISZERO
000027ab: PUSH2 0x27b4
000027ae: JUMPI
000027af: DUP2
000027b0: PUSH2 0x2748
000027b3: JUMP
000027b4: JUMPDEST
000027b5: POP
000027b6: SWAP1
000027b7: SWAP2
000027b8: SWAP1
000027b9: POP
000027ba: JUMP
000027bb: JUMPDEST
000027bc: PUSH1 0x00
000027be: DUP1
000027bf: GAS
000027c0: SWAP1
000027c1: POP
000027c2: JUMPDEST
000027c3: DUP3
000027c4: GAS
000027c5: PUSH2 0x27ce
000027c8: SWAP1
000027c9: DUP4
000027ca: PUSH2 0x4d40
000027cd: JUMP
000027ce: JUMPDEST
000027cf: LT
000027d0: ISZERO
000027d1: PUSH2 0x27e4
000027d4: JUMPI
000027d5: PUSH2 0x27dd
000027d8: DUP3
000027d9: PUSH2 0x5185
000027dc: JUMP
000027dd: JUMPDEST
000027de: SWAP2
000027df: POP
000027e0: PUSH2 0x27c2
000027e3: JUMP
000027e4: JUMPDEST
000027e5: POP
000027e6: POP
000027e7: POP
000027e8: JUMP
000027e9: JUMPDEST
000027ea: PUSH1 0x00
000027ec: DUP1
000027ed: PUSH1 0x3f
000027ef: DUP4
000027f0: PUSH2 0x9c40
000027f3: ADD
000027f4: MUL
000027f5: PUSH1 0x40
000027f7: DUP6
000027f8: MUL
000027f9: ADD
000027fa: PUSH1 0x3f
000027fc: GAS
000027fd: MUL
000027fe: LT
000027ff: ISZERO
00002800: SWAP5
00002801: SWAP4
00002802: POP
00002803: POP
00002804: POP
00002805: POP
00002806: JUMP
00002807: JUMPDEST
00002808: PUSH1 0x60
0000280a: DUP2
0000280b: DUP1
0000280c: MLOAD
0000280d: SWAP1
0000280e: PUSH1 0x20
00002810: ADD
00002811: KECCAK256
00002812: PUSH1 0x40
00002814: MLOAD
00002815: PUSH1 0x20
00002817: ADD
00002818: PUSH2 0x2823
0000281b: SWAP2
0000281c: DUP2
0000281d: MSTORE
0000281e: PUSH1 0x20
00002820: ADD
00002821: SWAP1
00002822: JUMP
00002823: JUMPDEST
00002824: PUSH1 0x40
00002826: MLOAD
00002827: PUSH1 0x20
00002829: DUP2
0000282a: DUP4
0000282b: SUB
0000282c: SUB
0000282d: DUP2
0000282e: MSTORE
0000282f: SWAP1
00002830: PUSH1 0x40
00002832: MSTORE
00002833: SWAP1
00002834: POP
00002835: SWAP2
00002836: SWAP1
00002837: POP
00002838: JUMP
00002839: JUMPDEST
0000283a: PUSH1 0x00
0000283c: PUSH2 0x2860
0000283f: DUP5
00002840: PUSH2 0x284a
00002843: DUP8
00002844: DUP7
00002845: DUP7
00002846: PUSH2 0x28b9
00002849: JUMP
0000284a: JUMPDEST
0000284b: DUP1
0000284c: MLOAD
0000284d: PUSH1 0x20
0000284f: SWAP2
00002850: DUP3
00002851: ADD
00002852: KECCAK256
00002853: DUP3
00002854: MLOAD
00002855: SWAP3
00002856: SWAP1
00002857: SWAP2
00002858: ADD
00002859: SWAP2
0000285a: SWAP1
0000285b: SWAP2
0000285c: KECCAK256
0000285d: EQ
0000285e: SWAP1
0000285f: JUMP
00002860: JUMPDEST
00002861: SWAP6
00002862: SWAP5
00002863: POP
00002864: POP
00002865: POP
00002866: POP
00002867: POP
00002868: JUMP
00002869: JUMPDEST
0000286a: PUSH1 0x00
0000286c: DUP2
0000286d: DUP4
0000286e: SLT
0000286f: ISZERO
00002870: PUSH2 0x27b4
00002873: JUMPI
00002874: DUP2
00002875: PUSH2 0x2748
00002878: JUMP
00002879: JUMPDEST
0000287a: PUSH1 0x00
0000287c: DUP2
0000287d: DUP4
0000287e: SLT
0000287f: PUSH2 0x27b4
00002882: JUMPI
00002883: DUP2
00002884: PUSH2 0x2748
00002887: JUMP
00002888: JUMPDEST
00002889: PUSH1 0x00
0000288b: PUSH2 0x2748
0000288e: PUSH8 0x0de0b6b3a7640000
00002897: DUP4
00002898: PUSH2 0x28a0
0000289b: DUP7
0000289c: PUSH2 0x3337
0000289f: JUMP
000028a0: JUMPDEST
000028a1: PUSH2 0x28aa
000028a4: SWAP2
000028a5: SWAP1
000028a6: PUSH2 0x4edb
000028a9: JUMP
000028aa: JUMPDEST
000028ab: PUSH2 0x28b4
000028ae: SWAP2
000028af: SWAP1
000028b0: PUSH2 0x4dff
000028b3: JUMP
000028b4: JUMPDEST
000028b5: PUSH2 0x357b
000028b8: JUMP
000028b9: JUMPDEST
000028ba: PUSH1 0x60
000028bc: PUSH1 0x00
000028be: DUP5
000028bf: MLOAD
000028c0: GT
000028c1: PUSH2 0x2926
000028c4: JUMPI
000028c5: PUSH1 0x40
000028c7: MLOAD
000028c8: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000028e9: DUP2
000028ea: MSTORE
000028eb: PUSH1 0x20
000028ed: PUSH1 0x04
000028ef: DUP3
000028f0: ADD
000028f1: MSTORE
000028f2: PUSH1 0x15
000028f4: PUSH1 0x24
000028f6: DUP3
000028f7: ADD
000028f8: MSTORE
000028f9: PUSH32 0x4d65726b6c65547269653a20656d707479206b65790000000000000000000000
0000291a: PUSH1 0x44
0000291c: DUP3
0000291d: ADD
0000291e: MSTORE
0000291f: PUSH1 0x64
00002921: ADD
00002922: PUSH2 0x09e0
00002925: JUMP
00002926: JUMPDEST
00002927: PUSH1 0x00
00002929: PUSH2 0x2931
0000292c: DUP5
0000292d: PUSH2 0x37ba
00002930: JUMP
00002931: JUMPDEST
00002932: SWAP1
00002933: POP
00002934: PUSH1 0x00
00002936: PUSH2 0x293e
00002939: DUP7
0000293a: PUSH2 0x38a6
0000293d: JUMP
0000293e: JUMPDEST
0000293f: SWAP1
00002940: POP
00002941: PUSH1 0x00
00002943: DUP5
00002944: PUSH1 0x40
00002946: MLOAD
00002947: PUSH1 0x20
00002949: ADD
0000294a: PUSH2 0x2955
0000294d: SWAP2
0000294e: DUP2
0000294f: MSTORE
00002950: PUSH1 0x20
00002952: ADD
00002953: SWAP1
00002954: JUMP
00002955: JUMPDEST
00002956: PUSH1 0x40
00002958: MLOAD
00002959: PUSH1 0x20
0000295b: DUP2
0000295c: DUP4
0000295d: SUB
0000295e: SUB
0000295f: DUP2
00002960: MSTORE
00002961: SWAP1
00002962: PUSH1 0x40
00002964: MSTORE
00002965: SWAP1
00002966: POP
00002967: PUSH1 0x00
00002969: DUP1
0000296a: JUMPDEST
0000296b: DUP5
0000296c: MLOAD
0000296d: DUP2
0000296e: LT
0000296f: ISZERO
00002970: PUSH2 0x32ae
00002973: JUMPI
00002974: PUSH1 0x00
00002976: DUP6
00002977: DUP3
00002978: DUP2
00002979: MLOAD
0000297a: DUP2
0000297b: LT
0000297c: PUSH2 0x2987
0000297f: JUMPI
00002980: PUSH2 0x2987
00002983: PUSH2 0x51bd
00002986: JUMP
00002987: JUMPDEST
00002988: PUSH1 0x20
0000298a: MUL
0000298b: PUSH1 0x20
0000298d: ADD
0000298e: ADD
0000298f: MLOAD
00002990: SWAP1
00002991: POP
00002992: DUP5
00002993: MLOAD
00002994: DUP4
00002995: GT
00002996: ISZERO
00002997: PUSH2 0x2a22
0000299a: JUMPI
0000299b: PUSH1 0x40
0000299d: MLOAD
0000299e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000029bf: DUP2
000029c0: MSTORE
000029c1: PUSH1 0x20
000029c3: PUSH1 0x04
000029c5: DUP3
000029c6: ADD
000029c7: MSTORE
000029c8: PUSH1 0x2e
000029ca: PUSH1 0x24
000029cc: DUP3
000029cd: ADD
000029ce: MSTORE
000029cf: PUSH32 0x4d65726b6c65547269653a206b657920696e646578206578636565647320746f
000029f0: PUSH1 0x44
000029f2: DUP3
000029f3: ADD
000029f4: MSTORE
000029f5: PUSH32 0x74616c206b6579206c656e677468000000000000000000000000000000000000
00002a16: PUSH1 0x64
00002a18: DUP3
00002a19: ADD
00002a1a: MSTORE
00002a1b: PUSH1 0x84
00002a1d: ADD
00002a1e: PUSH2 0x09e0
00002a21: JUMP
00002a22: JUMPDEST
00002a23: DUP3
00002a24: PUSH1 0x00
00002a26: SUB
00002a27: PUSH2 0x2adb
00002a2a: JUMPI
00002a2b: DUP1
00002a2c: MLOAD
00002a2d: DUP1
00002a2e: MLOAD
00002a2f: PUSH1 0x20
00002a31: SWAP2
00002a32: DUP3
00002a33: ADD
00002a34: KECCAK256
00002a35: PUSH1 0x40
00002a37: MLOAD
00002a38: PUSH2 0x2a70
00002a3b: SWAP3
00002a3c: PUSH2 0x2a4a
00002a3f: SWAP3
00002a40: SWAP2
00002a41: ADD
00002a42: SWAP1
00002a43: DUP2
00002a44: MSTORE
00002a45: PUSH1 0x20
00002a47: ADD
00002a48: SWAP1
00002a49: JUMP
00002a4a: JUMPDEST
00002a4b: PUSH1 0x40
00002a4d: MLOAD
00002a4e: PUSH1 0x20
00002a50: DUP2
00002a51: DUP4
00002a52: SUB
00002a53: SUB
00002a54: DUP2
00002a55: MSTORE
00002a56: SWAP1
00002a57: PUSH1 0x40
00002a59: MSTORE
00002a5a: DUP6
00002a5b: DUP1
00002a5c: MLOAD
00002a5d: PUSH1 0x20
00002a5f: SWAP2
00002a60: DUP3
00002a61: ADD
00002a62: KECCAK256
00002a63: DUP3
00002a64: MLOAD
00002a65: SWAP3
00002a66: SWAP1
00002a67: SWAP2
00002a68: ADD
00002a69: SWAP2
00002a6a: SWAP1
00002a6b: SWAP2
00002a6c: KECCAK256
00002a6d: EQ
00002a6e: SWAP1
00002a6f: JUMP
00002a70: JUMPDEST
00002a71: PUSH2 0x2ad6
00002a74: JUMPI
00002a75: PUSH1 0x40
00002a77: MLOAD
00002a78: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002a99: DUP2
00002a9a: MSTORE
00002a9b: PUSH1 0x20
00002a9d: PUSH1 0x04
00002a9f: DUP3
00002aa0: ADD
00002aa1: MSTORE
00002aa2: PUSH1 0x1d
00002aa4: PUSH1 0x24
00002aa6: DUP3
00002aa7: ADD
00002aa8: MSTORE
00002aa9: PUSH32 0x4d65726b6c65547269653a20696e76616c696420726f6f742068617368000000
00002aca: PUSH1 0x44
00002acc: DUP3
00002acd: ADD
00002ace: MSTORE
00002acf: PUSH1 0x64
00002ad1: ADD
00002ad2: PUSH2 0x09e0
00002ad5: JUMP
00002ad6: JUMPDEST
00002ad7: PUSH2 0x2c32
00002ada: JUMP
00002adb: JUMPDEST
00002adc: DUP1
00002add: MLOAD
00002ade: MLOAD
00002adf: PUSH1 0x20
00002ae1: GT
00002ae2: PUSH2 0x2b91
00002ae5: JUMPI
00002ae6: DUP1
00002ae7: MLOAD
00002ae8: DUP1
00002ae9: MLOAD
00002aea: PUSH1 0x20
00002aec: SWAP2
00002aed: DUP3
00002aee: ADD
00002aef: KECCAK256
00002af0: PUSH1 0x40
00002af2: MLOAD
00002af3: PUSH2 0x2b05
00002af6: SWAP3
00002af7: PUSH2 0x2a4a
00002afa: SWAP3
00002afb: SWAP2
00002afc: ADD
00002afd: SWAP1
00002afe: DUP2
00002aff: MSTORE
00002b00: PUSH1 0x20
00002b02: ADD
00002b03: SWAP1
00002b04: JUMP
00002b05: JUMPDEST
00002b06: PUSH2 0x2ad6
00002b09: JUMPI
00002b0a: PUSH1 0x40
00002b0c: MLOAD
00002b0d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002b2e: DUP2
00002b2f: MSTORE
00002b30: PUSH1 0x20
00002b32: PUSH1 0x04
00002b34: DUP3
00002b35: ADD
00002b36: MSTORE
00002b37: PUSH1 0x27
00002b39: PUSH1 0x24
00002b3b: DUP3
00002b3c: ADD
00002b3d: MSTORE
00002b3e: PUSH32 0x4d65726b6c65547269653a20696e76616c6964206c6172676520696e7465726e
00002b5f: PUSH1 0x44
00002b61: DUP3
00002b62: ADD
00002b63: MSTORE
00002b64: PUSH32 0x616c206861736800000000000000000000000000000000000000000000000000
00002b85: PUSH1 0x64
00002b87: DUP3
00002b88: ADD
00002b89: MSTORE
00002b8a: PUSH1 0x84
00002b8c: ADD
00002b8d: PUSH2 0x09e0
00002b90: JUMP
00002b91: JUMPDEST
00002b92: DUP1
00002b93: MLOAD
00002b94: DUP5
00002b95: MLOAD
00002b96: PUSH1 0x20
00002b98: DUP1
00002b99: DUP8
00002b9a: ADD
00002b9b: SWAP2
00002b9c: SWAP1
00002b9d: SWAP2
00002b9e: KECCAK256
00002b9f: DUP3
00002ba0: MLOAD
00002ba1: SWAP2
00002ba2: SWAP1
00002ba3: SWAP3
00002ba4: ADD
00002ba5: KECCAK256
00002ba6: EQ
00002ba7: PUSH2 0x2c32
00002baa: JUMPI
00002bab: PUSH1 0x40
00002bad: MLOAD
00002bae: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002bcf: DUP2
00002bd0: MSTORE
00002bd1: PUSH1 0x20
00002bd3: PUSH1 0x04
00002bd5: DUP3
00002bd6: ADD
00002bd7: MSTORE
00002bd8: PUSH1 0x26
00002bda: PUSH1 0x24
00002bdc: DUP3
00002bdd: ADD
00002bde: MSTORE
00002bdf: PUSH32 0x4d65726b6c65547269653a20696e76616c696420696e7465726e616c206e6f64
00002c00: PUSH1 0x44
00002c02: DUP3
00002c03: ADD
00002c04: MSTORE
00002c05: PUSH32 0x6520686173680000000000000000000000000000000000000000000000000000
00002c26: PUSH1 0x64
00002c28: DUP3
00002c29: ADD
00002c2a: MSTORE
00002c2b: PUSH1 0x84
00002c2d: ADD
00002c2e: PUSH2 0x09e0
00002c31: JUMP
00002c32: JUMPDEST
00002c33: PUSH2 0x2c3e
00002c36: PUSH1 0x10
00002c38: PUSH1 0x01
00002c3a: PUSH2 0x51ec
00002c3d: JUMP
00002c3e: JUMPDEST
00002c3f: DUP2
00002c40: PUSH1 0x20
00002c42: ADD
00002c43: MLOAD
00002c44: MLOAD
00002c45: SUB
00002c46: PUSH2 0x2e1a
00002c49: JUMPI
00002c4a: DUP5
00002c4b: MLOAD
00002c4c: DUP4
00002c4d: SUB
00002c4e: PUSH2 0x2db2
00002c51: JUMPI
00002c52: PUSH2 0x2c78
00002c55: DUP2
00002c56: PUSH1 0x20
00002c58: ADD
00002c59: MLOAD
00002c5a: PUSH1 0x10
00002c5c: DUP2
00002c5d: MLOAD
00002c5e: DUP2
00002c5f: LT
00002c60: PUSH2 0x2c6b
00002c63: JUMPI
00002c64: PUSH2 0x2c6b
00002c67: PUSH2 0x51bd
00002c6a: JUMP
00002c6b: JUMPDEST
00002c6c: PUSH1 0x20
00002c6e: MUL
00002c6f: PUSH1 0x20
00002c71: ADD
00002c72: ADD
00002c73: MLOAD
00002c74: PUSH2 0x3909
00002c77: JUMP
00002c78: JUMPDEST
00002c79: SWAP7
00002c7a: POP
00002c7b: PUSH1 0x00
00002c7d: DUP8
00002c7e: MLOAD
00002c7f: GT
00002c80: PUSH2 0x2d0b
00002c83: JUMPI
00002c84: PUSH1 0x40
00002c86: MLOAD
00002c87: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002ca8: DUP2
00002ca9: MSTORE
00002caa: PUSH1 0x20
00002cac: PUSH1 0x04
00002cae: DUP3
00002caf: ADD
00002cb0: MSTORE
00002cb1: PUSH1 0x3b
00002cb3: PUSH1 0x24
00002cb5: DUP3
00002cb6: ADD
00002cb7: MSTORE
00002cb8: PUSH32 0x4d65726b6c65547269653a2076616c7565206c656e677468206d757374206265
00002cd9: PUSH1 0x44
00002cdb: DUP3
00002cdc: ADD
00002cdd: MSTORE
00002cde: PUSH32 0x2067726561746572207468616e207a65726f20286272616e6368290000000000
00002cff: PUSH1 0x64
00002d01: DUP3
00002d02: ADD
00002d03: MSTORE
00002d04: PUSH1 0x84
00002d06: ADD
00002d07: PUSH2 0x09e0
00002d0a: JUMP
00002d0b: JUMPDEST
00002d0c: PUSH1 0x01
00002d0e: DUP7
00002d0f: MLOAD
00002d10: PUSH2 0x2d19
00002d13: SWAP2
00002d14: SWAP1
00002d15: PUSH2 0x4d40
00002d18: JUMP
00002d19: JUMPDEST
00002d1a: DUP3
00002d1b: EQ
00002d1c: PUSH2 0x2da7
00002d1f: JUMPI
00002d20: PUSH1 0x40
00002d22: MLOAD
00002d23: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002d44: DUP2
00002d45: MSTORE
00002d46: PUSH1 0x20
00002d48: PUSH1 0x04
00002d4a: DUP3
00002d4b: ADD
00002d4c: MSTORE
00002d4d: PUSH1 0x3a
00002d4f: PUSH1 0x24
00002d51: DUP3
00002d52: ADD
00002d53: MSTORE
00002d54: PUSH32 0x4d65726b6c65547269653a2076616c7565206e6f6465206d757374206265206c
00002d75: PUSH1 0x44
00002d77: DUP3
00002d78: ADD
00002d79: MSTORE
00002d7a: PUSH32 0x617374206e6f646520696e2070726f6f6620286272616e636829000000000000
00002d9b: PUSH1 0x64
00002d9d: DUP3
00002d9e: ADD
00002d9f: MSTORE
00002da0: PUSH1 0x84
00002da2: ADD
00002da3: PUSH2 0x09e0
00002da6: JUMP
00002da7: JUMPDEST
00002da8: POP
00002da9: POP
00002daa: POP
00002dab: POP
00002dac: POP
00002dad: POP
00002dae: PUSH2 0x2748
00002db1: JUMP
00002db2: JUMPDEST
00002db3: PUSH1 0x00
00002db5: DUP6
00002db6: DUP5
00002db7: DUP2
00002db8: MLOAD
00002db9: DUP2
00002dba: LT
00002dbb: PUSH2 0x2dc6
00002dbe: JUMPI
00002dbf: PUSH2 0x2dc6
00002dc2: PUSH2 0x51bd
00002dc5: JUMP
00002dc6: JUMPDEST
00002dc7: PUSH1 0x20
00002dc9: ADD
00002dca: ADD
00002dcb: MLOAD
00002dcc: PUSH1 0xf8
00002dce: SHR
00002dcf: PUSH1 0xf8
00002dd1: SHL
00002dd2: PUSH1 0xf8
00002dd4: SHR
00002dd5: SWAP1
00002dd6: POP
00002dd7: PUSH1 0x00
00002dd9: DUP3
00002dda: PUSH1 0x20
00002ddc: ADD
00002ddd: MLOAD
00002dde: DUP3
00002ddf: PUSH1 0xff
00002de1: AND
00002de2: DUP2
00002de3: MLOAD
00002de4: DUP2
00002de5: LT
00002de6: PUSH2 0x2df1
00002de9: JUMPI
00002dea: PUSH2 0x2df1
00002ded: PUSH2 0x51bd
00002df0: JUMP
00002df1: JUMPDEST
00002df2: PUSH1 0x20
00002df4: MUL
00002df5: PUSH1 0x20
00002df7: ADD
00002df8: ADD
00002df9: MLOAD
00002dfa: SWAP1
00002dfb: POP
00002dfc: PUSH2 0x2e04
00002dff: DUP2
00002e00: PUSH2 0x39bd
00002e03: JUMP
00002e04: JUMPDEST
00002e05: SWAP6
00002e06: POP
00002e07: PUSH2 0x2e11
00002e0a: PUSH1 0x01
00002e0c: DUP7
00002e0d: PUSH2 0x51ec
00002e10: JUMP
00002e11: JUMPDEST
00002e12: SWAP5
00002e13: POP
00002e14: POP
00002e15: POP
00002e16: PUSH2 0x329b
00002e19: JUMP
00002e1a: JUMPDEST
00002e1b: PUSH1 0x02
00002e1d: DUP2
00002e1e: PUSH1 0x20
00002e20: ADD
00002e21: MLOAD
00002e22: MLOAD
00002e23: SUB
00002e24: PUSH2 0x3213
00002e27: JUMPI
00002e28: PUSH1 0x00
00002e2a: PUSH2 0x2e32
00002e2d: DUP3
00002e2e: PUSH2 0x39e2
00002e31: JUMP
00002e32: JUMPDEST
00002e33: SWAP1
00002e34: POP
00002e35: PUSH1 0x00
00002e37: DUP2
00002e38: PUSH1 0x00
00002e3a: DUP2
00002e3b: MLOAD
00002e3c: DUP2
00002e3d: LT
00002e3e: PUSH2 0x2e49
00002e41: JUMPI
00002e42: PUSH2 0x2e49
00002e45: PUSH2 0x51bd
00002e48: JUMP
00002e49: JUMPDEST
00002e4a: ADD
00002e4b: PUSH1 0x20
00002e4d: ADD
00002e4e: MLOAD
00002e4f: PUSH1 0xf8
00002e51: SHR
00002e52: SWAP1
00002e53: POP
00002e54: PUSH1 0x00
00002e56: PUSH2 0x2e60
00002e59: PUSH1 0x02
00002e5b: DUP4
00002e5c: PUSH2 0x5204
00002e5f: JUMP
00002e60: JUMPDEST
00002e61: PUSH2 0x2e6b
00002e64: SWAP1
00002e65: PUSH1 0x02
00002e67: PUSH2 0x5226
00002e6a: JUMP
00002e6b: JUMPDEST
00002e6c: SWAP1
00002e6d: POP
00002e6e: PUSH1 0x00
00002e70: PUSH2 0x2e7c
00002e73: DUP5
00002e74: DUP4
00002e75: PUSH1 0xff
00002e77: AND
00002e78: PUSH2 0x3a06
00002e7b: JUMP
00002e7c: JUMPDEST
00002e7d: SWAP1
00002e7e: POP
00002e7f: PUSH1 0x00
00002e81: PUSH2 0x2e8a
00002e84: DUP11
00002e85: DUP10
00002e86: PUSH2 0x3a06
00002e89: JUMP
00002e8a: JUMPDEST
00002e8b: SWAP1
00002e8c: POP
00002e8d: PUSH1 0x00
00002e8f: PUSH2 0x2e98
00002e92: DUP4
00002e93: DUP4
00002e94: PUSH2 0x3a3c
00002e97: JUMP
00002e98: JUMPDEST
00002e99: SWAP1
00002e9a: POP
00002e9b: DUP1
00002e9c: DUP4
00002e9d: MLOAD
00002e9e: EQ
00002e9f: PUSH2 0x2f2a
00002ea2: JUMPI
00002ea3: PUSH1 0x40
00002ea5: MLOAD
00002ea6: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002ec7: DUP2
00002ec8: MSTORE
00002ec9: PUSH1 0x20
00002ecb: PUSH1 0x04
00002ecd: DUP3
00002ece: ADD
00002ecf: MSTORE
00002ed0: PUSH1 0x3a
00002ed2: PUSH1 0x24
00002ed4: DUP3
00002ed5: ADD
00002ed6: MSTORE
00002ed7: PUSH32 0x4d65726b6c65547269653a20706174682072656d61696e646572206d75737420
00002ef8: PUSH1 0x44
00002efa: DUP3
00002efb: ADD
00002efc: MSTORE
00002efd: PUSH32 0x736861726520616c6c206e6962626c65732077697468206b6579000000000000
00002f1e: PUSH1 0x64
00002f20: DUP3
00002f21: ADD
00002f22: MSTORE
00002f23: PUSH1 0x84
00002f25: ADD
00002f26: PUSH2 0x09e0
00002f29: JUMP
00002f2a: JUMPDEST
00002f2b: PUSH1 0xff
00002f2d: DUP6
00002f2e: AND
00002f2f: PUSH1 0x02
00002f31: EQ
00002f32: DUP1
00002f33: PUSH2 0x2f3f
00002f36: JUMPI
00002f37: POP
00002f38: PUSH1 0xff
00002f3a: DUP6
00002f3b: AND
00002f3c: PUSH1 0x03
00002f3e: EQ
00002f3f: JUMPDEST
00002f40: ISZERO
00002f41: PUSH2 0x312e
00002f44: JUMPI
00002f45: DUP1
00002f46: DUP3
00002f47: MLOAD
00002f48: EQ
00002f49: PUSH2 0x2fd4
00002f4c: JUMPI
00002f4d: PUSH1 0x40
00002f4f: MLOAD
00002f50: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002f71: DUP2
00002f72: MSTORE
00002f73: PUSH1 0x20
00002f75: PUSH1 0x04
00002f77: DUP3
00002f78: ADD
00002f79: MSTORE
00002f7a: PUSH1 0x3d
00002f7c: PUSH1 0x24
00002f7e: DUP3
00002f7f: ADD
00002f80: MSTORE
00002f81: PUSH32 0x4d65726b6c65547269653a206b65792072656d61696e646572206d7573742062
00002fa2: PUSH1 0x44
00002fa4: DUP3
00002fa5: ADD
00002fa6: MSTORE
00002fa7: PUSH32 0x65206964656e746963616c20746f20706174682072656d61696e646572000000
00002fc8: PUSH1 0x64
00002fca: DUP3
00002fcb: ADD
00002fcc: MSTORE
00002fcd: PUSH1 0x84
00002fcf: ADD
00002fd0: PUSH2 0x09e0
00002fd3: JUMP
00002fd4: JUMPDEST
00002fd5: PUSH2 0x2fee
00002fd8: DUP8
00002fd9: PUSH1 0x20
00002fdb: ADD
00002fdc: MLOAD
00002fdd: PUSH1 0x01
00002fdf: DUP2
00002fe0: MLOAD
00002fe1: DUP2
00002fe2: LT
00002fe3: PUSH2 0x2c6b
00002fe6: JUMPI
00002fe7: PUSH2 0x2c6b
00002fea: PUSH2 0x51bd
00002fed: JUMP
00002fee: JUMPDEST
00002fef: SWAP13
00002ff0: POP
00002ff1: PUSH1 0x00
00002ff3: DUP14
00002ff4: MLOAD
00002ff5: GT
00002ff6: PUSH2 0x3081
00002ff9: JUMPI
00002ffa: PUSH1 0x40
00002ffc: MLOAD
00002ffd: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000301e: DUP2
0000301f: MSTORE
00003020: PUSH1 0x20
00003022: PUSH1 0x04
00003024: DUP3
00003025: ADD
00003026: MSTORE
00003027: PUSH1 0x39
00003029: PUSH1 0x24
0000302b: DUP3
0000302c: ADD
0000302d: MSTORE
0000302e: PUSH32 0x4d65726b6c65547269653a2076616c7565206c656e677468206d757374206265
0000304f: PUSH1 0x44
00003051: DUP3
00003052: ADD
00003053: MSTORE
00003054: PUSH32 0x2067726561746572207468616e207a65726f20286c6561662900000000000000
00003075: PUSH1 0x64
00003077: DUP3
00003078: ADD
00003079: MSTORE
0000307a: PUSH1 0x84
0000307c: ADD
0000307d: PUSH2 0x09e0
00003080: JUMP
00003081: JUMPDEST
00003082: PUSH1 0x01
00003084: DUP13
00003085: MLOAD
00003086: PUSH2 0x308f
00003089: SWAP2
0000308a: SWAP1
0000308b: PUSH2 0x4d40
0000308e: JUMP
0000308f: JUMPDEST
00003090: DUP9
00003091: EQ
00003092: PUSH2 0x311d
00003095: JUMPI
00003096: PUSH1 0x40
00003098: MLOAD
00003099: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000030ba: DUP2
000030bb: MSTORE
000030bc: PUSH1 0x20
000030be: PUSH1 0x04
000030c0: DUP3
000030c1: ADD
000030c2: MSTORE
000030c3: PUSH1 0x38
000030c5: PUSH1 0x24
000030c7: DUP3
000030c8: ADD
000030c9: MSTORE
000030ca: PUSH32 0x4d65726b6c65547269653a2076616c7565206e6f6465206d757374206265206c
000030eb: PUSH1 0x44
000030ed: DUP3
000030ee: ADD
000030ef: MSTORE
000030f0: PUSH32 0x617374206e6f646520696e2070726f6f6620286c656166290000000000000000
00003111: PUSH1 0x64
00003113: DUP3
00003114: ADD
00003115: MSTORE
00003116: PUSH1 0x84
00003118: ADD
00003119: PUSH2 0x09e0
0000311c: JUMP
0000311d: JUMPDEST
0000311e: POP
0000311f: POP
00003120: POP
00003121: POP
00003122: POP
00003123: POP
00003124: POP
00003125: POP
00003126: POP
00003127: POP
00003128: POP
00003129: POP
0000312a: PUSH2 0x2748
0000312d: JUMP
0000312e: JUMPDEST
0000312f: PUSH1 0xff
00003131: DUP6
00003132: AND
00003133: ISZERO
00003134: DUP1
00003135: PUSH2 0x3141
00003138: JUMPI
00003139: POP
0000313a: PUSH1 0xff
0000313c: DUP6
0000313d: AND
0000313e: PUSH1 0x01
00003140: EQ
00003141: JUMPDEST
00003142: ISZERO
00003143: PUSH2 0x3180
00003146: JUMPI
00003147: PUSH2 0x316d
0000314a: DUP8
0000314b: PUSH1 0x20
0000314d: ADD
0000314e: MLOAD
0000314f: PUSH1 0x01
00003151: DUP2
00003152: MLOAD
00003153: DUP2
00003154: LT
00003155: PUSH2 0x3160
00003158: JUMPI
00003159: PUSH2 0x3160
0000315c: PUSH2 0x51bd
0000315f: JUMP
00003160: JUMPDEST
00003161: PUSH1 0x20
00003163: MUL
00003164: PUSH1 0x20
00003166: ADD
00003167: ADD
00003168: MLOAD
00003169: PUSH2 0x39bd
0000316c: JUMP
0000316d: JUMPDEST
0000316e: SWAP10
0000316f: POP
00003170: PUSH2 0x3179
00003173: DUP2
00003174: DUP11
00003175: PUSH2 0x51ec
00003178: JUMP
00003179: JUMPDEST
0000317a: SWAP9
0000317b: POP
0000317c: PUSH2 0x3208
0000317f: JUMP
00003180: JUMPDEST
00003181: PUSH1 0x40
00003183: MLOAD
00003184: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000031a5: DUP2
000031a6: MSTORE
000031a7: PUSH1 0x20
000031a9: PUSH1 0x04
000031ab: DUP3
000031ac: ADD
000031ad: MSTORE
000031ae: PUSH1 0x32
000031b0: PUSH1 0x24
000031b2: DUP3
000031b3: ADD
000031b4: MSTORE
000031b5: PUSH32 0x4d65726b6c65547269653a2072656365697665642061206e6f64652077697468
000031d6: PUSH1 0x44
000031d8: DUP3
000031d9: ADD
000031da: MSTORE
000031db: PUSH32 0x20616e20756e6b6e6f776e207072656669780000000000000000000000000000
000031fc: PUSH1 0x64
000031fe: DUP3
000031ff: ADD
00003200: MSTORE
00003201: PUSH1 0x84
00003203: ADD
00003204: PUSH2 0x09e0
00003207: JUMP
00003208: JUMPDEST
00003209: POP
0000320a: POP
0000320b: POP
0000320c: POP
0000320d: POP
0000320e: POP
0000320f: PUSH2 0x329b
00003212: JUMP
00003213: JUMPDEST
00003214: PUSH1 0x40
00003216: MLOAD
00003217: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00003238: DUP2
00003239: MSTORE
0000323a: PUSH1 0x20
0000323c: PUSH1 0x04
0000323e: DUP3
0000323f: ADD
00003240: MSTORE
00003241: PUSH1 0x28
00003243: PUSH1 0x24
00003245: DUP3
00003246: ADD
00003247: MSTORE
00003248: PUSH32 0x4d65726b6c65547269653a20726563656976656420616e20756e706172736561
00003269: PUSH1 0x44
0000326b: DUP3
0000326c: ADD
0000326d: MSTORE
0000326e: PUSH32 0x626c65206e6f6465000000000000000000000000000000000000000000000000
0000328f: PUSH1 0x64
00003291: DUP3
00003292: ADD
00003293: MSTORE
00003294: PUSH1 0x84
00003296: ADD
00003297: PUSH2 0x09e0
0000329a: JUMP
0000329b: JUMPDEST
0000329c: POP
0000329d: DUP1
0000329e: PUSH2 0x32a6
000032a1: DUP2
000032a2: PUSH2 0x5185
000032a5: JUMP
000032a6: JUMPDEST
000032a7: SWAP2
000032a8: POP
000032a9: POP
000032aa: PUSH2 0x296a
000032ad: JUMP
000032ae: JUMPDEST
000032af: POP
000032b0: PUSH1 0x40
000032b2: MLOAD
000032b3: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000032d4: DUP2
000032d5: MSTORE
000032d6: PUSH1 0x20
000032d8: PUSH1 0x04
000032da: DUP3
000032db: ADD
000032dc: MSTORE
000032dd: PUSH1 0x25
000032df: PUSH1 0x24
000032e1: DUP3
000032e2: ADD
000032e3: MSTORE
000032e4: PUSH32 0x4d65726b6c65547269653a2072616e206f7574206f662070726f6f6620656c65
00003305: PUSH1 0x44
00003307: DUP3
00003308: ADD
00003309: MSTORE
0000330a: PUSH32 0x6d656e7473000000000000000000000000000000000000000000000000000000
0000332b: PUSH1 0x64
0000332d: DUP3
0000332e: ADD
0000332f: MSTORE
00003330: PUSH1 0x84
00003332: ADD
00003333: PUSH2 0x09e0
00003336: JUMP
00003337: JUMPDEST
00003338: PUSH1 0x00
0000333a: DUP1
0000333b: DUP3
0000333c: SGT
0000333d: PUSH2 0x33a2
00003340: JUMPI
00003341: PUSH1 0x40
00003343: MLOAD
00003344: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00003365: DUP2
00003366: MSTORE
00003367: PUSH1 0x20
00003369: PUSH1 0x04
0000336b: DUP3
0000336c: ADD
0000336d: MSTORE
0000336e: PUSH1 0x09
00003370: PUSH1 0x24
00003372: DUP3
00003373: ADD
00003374: MSTORE
00003375: PUSH32 0x554e444546494e45440000000000000000000000000000000000000000000000
00003396: PUSH1 0x44
00003398: DUP3
00003399: ADD
0000339a: MSTORE
0000339b: PUSH1 0x64
0000339d: ADD
0000339e: PUSH2 0x09e0
000033a1: JUMP
000033a2: JUMPDEST
000033a3: PUSH1 0x00
000033a5: PUSH1 0x60
000033a7: PUSH2 0x33af
000033aa: DUP5
000033ab: PUSH2 0x3af0
000033ae: JUMP
000033af: JUMPDEST
000033b0: SUB
000033b1: PUSH1 0x9f
000033b3: DUP2
000033b4: DUP2
000033b5: SUB
000033b6: SWAP5
000033b7: SWAP1
000033b8: SWAP5
000033b9: SHL
000033ba: SWAP1
000033bb: SWAP4
000033bc: SHR
000033bd: PUSH13 0x465772b2bbbb5f824b15207a30
000033cb: DUP2
000033cc: ADD
000033cd: DUP2
000033ce: MUL
000033cf: PUSH1 0x60
000033d1: SWAP1
000033d2: DUP2
000033d3: SAR
000033d4: PUSH14 0x0388eaa27412d5aca026815d636e
000033e3: ADD
000033e4: DUP3
000033e5: MUL
000033e6: DUP2
000033e7: SAR
000033e8: PUSH14 0x0df99ac502031bf953eff472fdcc
000033f7: ADD
000033f8: DUP3
000033f9: MUL
000033fa: DUP2
000033fb: SAR
000033fc: PUSH14 0x13cdffb29d51d99322bdff5f2211
0000340b: ADD
0000340c: DUP3
0000340d: MUL
0000340e: DUP2
0000340f: SAR
00003410: PUSH14 0x0a0f742023def783a307a986912e
0000341f: ADD
00003420: DUP3
00003421: MUL
00003422: DUP2
00003423: SAR
00003424: PUSH14 0x01920d8043ca89b5239253284e42
00003433: ADD
00003434: DUP3
00003435: MUL
00003436: DUP2
00003437: SAR
00003438: PUSH13 0x0b7a86d7375468fac667a0a527
00003446: ADD
00003447: PUSH13 0x29508e458543d8aa4df2abee78
00003455: DUP4
00003456: ADD
00003457: DUP4
00003458: MUL
00003459: DUP3
0000345a: SAR
0000345b: PUSH14 0x0139601a2efabe717e604cbb4894
0000346a: ADD
0000346b: DUP4
0000346c: MUL
0000346d: DUP3
0000346e: SAR
0000346f: PUSH14 0x02247f7a7b6594320649aa03aba1
0000347e: ADD
0000347f: DUP4
00003480: MUL
00003481: DUP3
00003482: SAR
00003483: PUSH32 0xffffffffffffffffffffffffffffffffffffff73c0c716a594e00d54e3c4cbc9
000034a4: ADD
000034a5: DUP4
000034a6: MUL
000034a7: DUP3
000034a8: SAR
000034a9: PUSH32 0xfffffffffffffffffffffffffffffffffffffdc7b88c420e53a9890533129f6f
000034ca: ADD
000034cb: DUP4
000034cc: MUL
000034cd: SWAP1
000034ce: SWAP2
000034cf: SAR
000034d0: PUSH32 0xffffffffffffffffffffffffffffffffffffff465fda27eb4d63ded474e5f832
000034f1: ADD
000034f2: SWAP1
000034f3: SWAP2
000034f4: MUL
000034f5: PUSH32 0xfffffffffffffff5f6af8f7b3396644f18e15796000000000000000000000000
00003516: ADD
00003517: SDIV
00003518: PUSH18 0x1340daa0d5f769dba1915cef59f0815a5506
0000352b: MUL
0000352c: PUSH30 0x0267a36c0c95b3975ab3ee5b203a7614a3f75373f047d803ae7b6687f2b3
0000354b: SWAP4
0000354c: SWAP1
0000354d: SWAP4
0000354e: MUL
0000354f: SWAP3
00003550: SWAP1
00003551: SWAP3
00003552: ADD
00003553: PUSH30 0x57115e47018c7177eebf7cd370a3356a1b7863008a5ae8028c72b8864284
00003572: ADD
00003573: PUSH1 0xae
00003575: SAR
00003576: SWAP3
00003577: SWAP2
00003578: POP
00003579: POP
0000357a: JUMP
0000357b: JUMPDEST
0000357c: PUSH1 0x00
0000357e: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffdb731c958f34d94c1
0000359f: DUP3
000035a0: SGT
000035a1: PUSH2 0x35ac
000035a4: JUMPI
000035a5: POP
000035a6: PUSH1 0x00
000035a8: SWAP2
000035a9: SWAP1
000035aa: POP
000035ab: JUMP
000035ac: JUMPDEST
000035ad: PUSH9 0x0755bf798b4a1bf1e5
000035b7: DUP3
000035b8: SLT
000035b9: PUSH2 0x361e
000035bc: JUMPI
000035bd: PUSH1 0x40
000035bf: MLOAD
000035c0: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000035e1: DUP2
000035e2: MSTORE
000035e3: PUSH1 0x20
000035e5: PUSH1 0x04
000035e7: DUP3
000035e8: ADD
000035e9: MSTORE
000035ea: PUSH1 0x0c
000035ec: PUSH1 0x24
000035ee: DUP3
000035ef: ADD
000035f0: MSTORE
000035f1: PUSH32 0x4558505f4f564552464c4f570000000000000000000000000000000000000000
00003612: PUSH1 0x44
00003614: DUP3
00003615: ADD
00003616: MSTORE
00003617: PUSH1 0x64
00003619: ADD
0000361a: PUSH2 0x09e0
0000361d: JUMP
0000361e: JUMPDEST
0000361f: PUSH6 0x03782dace9d9
00003626: PUSH1 0x4e
00003628: DUP4
00003629: SWAP1
0000362a: SHL
0000362b: SDIV
0000362c: SWAP2
0000362d: POP
0000362e: PUSH1 0x00
00003630: PUSH1 0x60
00003632: PUSH12 0xb17217f7d1cf79abc9e3b398
0000363f: DUP5
00003640: DUP3
00003641: SHL
00003642: SDIV
00003643: PUSH12 0x800000000000000000000000
00003650: ADD
00003651: SWAP1
00003652: SAR
00003653: PUSH12 0xb17217f7d1cf79abc9e3b398
00003660: DUP2
00003661: MUL
00003662: SWAP1
00003663: SWAP4
00003664: SUB
00003665: PUSH32 0xffffffffffffffffffffffffffffffffffffffdbf3ccf1604d263450f02a5504
00003686: DUP2
00003687: ADD
00003688: DUP2
00003689: MUL
0000368a: PUSH1 0x60
0000368c: SWAP1
0000368d: DUP2
0000368e: SAR
0000368f: PUSH14 0x0277594991cfc85f6e2461837cd9
0000369e: ADD
0000369f: DUP3
000036a0: MUL
000036a1: DUP2
000036a2: SAR
000036a3: PUSH32 0xffffffffffffffffffffffffffffffffffffe5adedaa1cb095af9e4da10e363c
000036c4: ADD
000036c5: DUP3
000036c6: MUL
000036c7: DUP2
000036c8: SAR
000036c9: PUSH14 0xb1bbb201f443cf962f1a1d3db4a5
000036d8: ADD
000036d9: DUP3
000036da: MUL
000036db: DUP2
000036dc: SAR
000036dd: PUSH32 0xfffffffffffffffffffffffffffffffffffd38dc772608b0ae56cce01296c0eb
000036fe: ADD
000036ff: DUP3
00003700: MUL
00003701: DUP2
00003702: SAR
00003703: PUSH15 0x05180bb14799ab47a8a8cb2a527d57
00003713: ADD
00003714: PUSH14 0x02d16720577bd19bf614176fe9ea
00003723: PUSH13 0x10fe68e7fd37d0007b713f7650
00003731: DUP5
00003732: ADD
00003733: DUP5
00003734: MUL
00003735: DUP4
00003736: SAR
00003737: SWAP1
00003738: DUP2
00003739: ADD
0000373a: SWAP1
0000373b: DUP5
0000373c: ADD
0000373d: PUSH32 0xfffffffffffffffffffffffffffffffffffffe2c69812cf03b0763fd454a8f7e
0000375e: ADD
0000375f: MUL
00003760: SWAP1
00003761: SWAP2
00003762: SAR
00003763: PUSH15 0x0587f503bb6ea29d25fcb740196450
00003773: ADD
00003774: SWAP1
00003775: SWAP2
00003776: MUL
00003777: PUSH26 0xd835ebba824c98fb31b83b2ca45c000000000000000000000000
00003792: ADD
00003793: SDIV
00003794: PUSH21 0x029d9dc38563c32e5c2f6dc192ee70ef65f9978af3
000037aa: MUL
000037ab: PUSH1 0xc3
000037ad: SWAP4
000037ae: SWAP1
000037af: SWAP4
000037b0: SUB
000037b1: SWAP3
000037b2: SWAP1
000037b3: SWAP3
000037b4: SHR
000037b5: SWAP3
000037b6: SWAP2
000037b7: POP
000037b8: POP
000037b9: JUMP
000037ba: JUMPDEST
000037bb: DUP1
000037bc: MLOAD
000037bd: PUSH1 0x60
000037bf: SWAP1
000037c0: DUP1
000037c1: PUSH8 0xffffffffffffffff
000037ca: DUP2
000037cb: GT
000037cc: ISZERO
000037cd: PUSH2 0x37d8
000037d0: JUMPI
000037d1: PUSH2 0x37d8
000037d4: PUSH2 0x451c
000037d7: JUMP
000037d8: JUMPDEST
000037d9: PUSH1 0x40
000037db: MLOAD
000037dc: SWAP1
000037dd: DUP1
000037de: DUP3
000037df: MSTORE
000037e0: DUP1
000037e1: PUSH1 0x20
000037e3: MUL
000037e4: PUSH1 0x20
000037e6: ADD
000037e7: DUP3
000037e8: ADD
000037e9: PUSH1 0x40
000037eb: MSTORE
000037ec: DUP1
000037ed: ISZERO
000037ee: PUSH2 0x381d
000037f1: JUMPI
000037f2: DUP2
000037f3: PUSH1 0x20
000037f5: ADD
000037f6: JUMPDEST
000037f7: PUSH1 0x40
000037f9: DUP1
000037fa: MLOAD
000037fb: DUP1
000037fc: DUP3
000037fd: ADD
000037fe: SWAP1
000037ff: SWAP2
00003800: MSTORE
00003801: PUSH1 0x60
00003803: DUP1
00003804: DUP3
00003805: MSTORE
00003806: PUSH1 0x20
00003808: DUP3
00003809: ADD
0000380a: MSTORE
0000380b: DUP2
0000380c: MSTORE
0000380d: PUSH1 0x20
0000380f: ADD
00003810: SWAP1
00003811: PUSH1 0x01
00003813: SWAP1
00003814: SUB
00003815: SWAP1
00003816: DUP2
00003817: PUSH2 0x37f6
0000381a: JUMPI
0000381b: SWAP1
0000381c: POP
0000381d: JUMPDEST
0000381e: POP
0000381f: SWAP2
00003820: POP
00003821: PUSH1 0x00
00003823: JUMPDEST
00003824: DUP2
00003825: DUP2
00003826: LT
00003827: ISZERO
00003828: PUSH2 0x389f
0000382b: JUMPI
0000382c: PUSH1 0x40
0000382e: MLOAD
0000382f: DUP1
00003830: PUSH1 0x40
00003832: ADD
00003833: PUSH1 0x40
00003835: MSTORE
00003836: DUP1
00003837: DUP6
00003838: DUP4
00003839: DUP2
0000383a: MLOAD
0000383b: DUP2
0000383c: LT
0000383d: PUSH2 0x3848
00003840: JUMPI
00003841: PUSH2 0x3848
00003844: PUSH2 0x51bd
00003847: JUMP
00003848: JUMPDEST
00003849: PUSH1 0x20
0000384b: MUL
0000384c: PUSH1 0x20
0000384e: ADD
0000384f: ADD
00003850: MLOAD
00003851: DUP2
00003852: MSTORE
00003853: PUSH1 0x20
00003855: ADD
00003856: PUSH2 0x3877
00003859: DUP7
0000385a: DUP5
0000385b: DUP2
0000385c: MLOAD
0000385d: DUP2
0000385e: LT
0000385f: PUSH2 0x386a
00003862: JUMPI
00003863: PUSH2 0x386a
00003866: PUSH2 0x51bd
00003869: JUMP
0000386a: JUMPDEST
0000386b: PUSH1 0x20
0000386d: MUL
0000386e: PUSH1 0x20
00003870: ADD
00003871: ADD
00003872: MLOAD
00003873: PUSH2 0x3bc6
00003876: JUMP
00003877: JUMPDEST
00003878: DUP2
00003879: MSTORE
0000387a: POP
0000387b: DUP4
0000387c: DUP3
0000387d: DUP2
0000387e: MLOAD
0000387f: DUP2
00003880: LT
00003881: PUSH2 0x388c
00003884: JUMPI
00003885: PUSH2 0x388c
00003888: PUSH2 0x51bd
0000388b: JUMP
0000388c: JUMPDEST
0000388d: PUSH1 0x20
0000388f: SWAP1
00003890: DUP2
00003891: MUL
00003892: SWAP2
00003893: SWAP1
00003894: SWAP2
00003895: ADD
00003896: ADD
00003897: MSTORE
00003898: PUSH1 0x01
0000389a: ADD
0000389b: PUSH2 0x3823
0000389e: JUMP
0000389f: JUMPDEST
000038a0: POP
000038a1: POP
000038a2: SWAP2
000038a3: SWAP1
000038a4: POP
000038a5: JUMP
000038a6: JUMPDEST
000038a7: PUSH1 0x60
000038a9: DUP1
000038aa: PUSH1 0x40
000038ac: MLOAD
000038ad: SWAP1
000038ae: POP
000038af: DUP3
000038b0: MLOAD
000038b1: DUP1
000038b2: PUSH1 0x01
000038b4: SHL
000038b5: PUSH1 0x3f
000038b7: DUP2
000038b8: ADD
000038b9: PUSH1 0x1f
000038bb: NOT
000038bc: AND
000038bd: DUP4
000038be: ADD
000038bf: PUSH1 0x40
000038c1: MSTORE
000038c2: DUP1
000038c3: DUP4
000038c4: MSTORE
000038c5: POP
000038c6: PUSH1 0x20
000038c8: DUP5
000038c9: ADD
000038ca: PUSH1 0x20
000038cc: DUP4
000038cd: ADD
000038ce: PUSH1 0x00
000038d0: JUMPDEST
000038d1: DUP4
000038d2: DUP2
000038d3: LT
000038d4: ISZERO
000038d5: PUSH2 0x38fe
000038d8: JUMPI
000038d9: DUP1
000038da: PUSH1 0x01
000038dc: SHL
000038dd: DUP3
000038de: ADD
000038df: DUP2
000038e0: DUP5
000038e1: ADD
000038e2: MLOAD
000038e3: PUSH1 0x00
000038e5: BYTE
000038e6: DUP1
000038e7: PUSH1 0x04
000038e9: SHR
000038ea: DUP3
000038eb: MSTORE8
000038ec: PUSH1 0x0f
000038ee: DUP2
000038ef: AND
000038f0: PUSH1 0x01
000038f2: DUP4
000038f3: ADD
000038f4: MSTORE8
000038f5: POP
000038f6: POP
000038f7: PUSH1 0x01
000038f9: ADD
000038fa: PUSH2 0x38d0
000038fd: JUMP
000038fe: JUMPDEST
000038ff: POP
00003900: SWAP3
00003901: SWAP6
00003902: SWAP5
00003903: POP
00003904: POP
00003905: POP
00003906: POP
00003907: POP
00003908: JUMP
00003909: JUMPDEST
0000390a: PUSH1 0x60
0000390c: PUSH1 0x00
0000390e: DUP1
0000390f: PUSH1 0x00
00003911: PUSH2 0x3919
00003914: DUP6
00003915: PUSH2 0x3bd9
00003918: JUMP
00003919: JUMPDEST
0000391a: SWAP2
0000391b: SWAP5
0000391c: POP
0000391d: SWAP3
0000391e: POP
0000391f: SWAP1
00003920: POP
00003921: PUSH1 0x00
00003923: DUP2
00003924: PUSH1 0x01
00003926: DUP2
00003927: GT
00003928: ISZERO
00003929: PUSH2 0x3934
0000392c: JUMPI
0000392d: PUSH2 0x3934
00003930: PUSH2 0x4c03
00003933: JUMP
00003934: JUMPDEST
00003935: EQ
00003936: PUSH2 0x396b
00003939: JUMPI
0000393a: PUSH1 0x40
0000393c: MLOAD
0000393d: PUSH32 0x1ff9b2e400000000000000000000000000000000000000000000000000000000
0000395e: DUP2
0000395f: MSTORE
00003960: PUSH1 0x04
00003962: ADD
00003963: PUSH1 0x40
00003965: MLOAD
00003966: DUP1
00003967: SWAP2
00003968: SUB
00003969: SWAP1
0000396a: REVERT
0000396b: JUMPDEST
0000396c: PUSH2 0x3975
0000396f: DUP3
00003970: DUP5
00003971: PUSH2 0x51ec
00003974: JUMP
00003975: JUMPDEST
00003976: DUP6
00003977: MLOAD
00003978: EQ
00003979: PUSH2 0x39ae
0000397c: JUMPI
0000397d: PUSH1 0x40
0000397f: MLOAD
00003980: PUSH32 0x5c5537b800000000000000000000000000000000000000000000000000000000
000039a1: DUP2
000039a2: MSTORE
000039a3: PUSH1 0x04
000039a5: ADD
000039a6: PUSH1 0x40
000039a8: MLOAD
000039a9: DUP1
000039aa: SWAP2
000039ab: SUB
000039ac: SWAP1
000039ad: REVERT
000039ae: JUMPDEST
000039af: PUSH2 0x2860
000039b2: DUP6
000039b3: PUSH1 0x20
000039b5: ADD
000039b6: MLOAD
000039b7: DUP5
000039b8: DUP5
000039b9: PUSH2 0x4077
000039bc: JUMP
000039bd: JUMPDEST
000039be: PUSH1 0x60
000039c0: PUSH1 0x20
000039c2: DUP3
000039c3: PUSH1 0x00
000039c5: ADD
000039c6: MLOAD
000039c7: LT
000039c8: PUSH2 0x39d9
000039cb: JUMPI
000039cc: PUSH2 0x39d4
000039cf: DUP3
000039d0: PUSH2 0x3909
000039d3: JUMP
000039d4: JUMPDEST
000039d5: PUSH2 0x2110
000039d8: JUMP
000039d9: JUMPDEST
000039da: PUSH2 0x2110
000039dd: DUP3
000039de: PUSH2 0x410b
000039e1: JUMP
000039e2: JUMPDEST
000039e3: PUSH1 0x60
000039e5: PUSH2 0x2110
000039e8: PUSH2 0x3a01
000039eb: DUP4
000039ec: PUSH1 0x20
000039ee: ADD
000039ef: MLOAD
000039f0: PUSH1 0x00
000039f2: DUP2
000039f3: MLOAD
000039f4: DUP2
000039f5: LT
000039f6: PUSH2 0x2c6b
000039f9: JUMPI
000039fa: PUSH2 0x2c6b
000039fd: PUSH2 0x51bd
00003a00: JUMP
00003a01: JUMPDEST
00003a02: PUSH2 0x38a6
00003a05: JUMP
00003a06: JUMPDEST
00003a07: PUSH1 0x60
00003a09: DUP3
00003a0a: MLOAD
00003a0b: DUP3
00003a0c: LT
00003a0d: PUSH2 0x3a25
00003a10: JUMPI
00003a11: POP
00003a12: PUSH1 0x40
00003a14: DUP1
00003a15: MLOAD
00003a16: PUSH1 0x20
00003a18: DUP2
00003a19: ADD
00003a1a: SWAP1
00003a1b: SWAP2
00003a1c: MSTORE
00003a1d: PUSH1 0x00
00003a1f: DUP2
00003a20: MSTORE
00003a21: PUSH2 0x2110
00003a24: JUMP
00003a25: JUMPDEST
00003a26: PUSH2 0x2748
00003a29: DUP4
00003a2a: DUP4
00003a2b: DUP5
00003a2c: DUP7
00003a2d: MLOAD
00003a2e: PUSH2 0x3a37
00003a31: SWAP2
00003a32: SWAP1
00003a33: PUSH2 0x4d40
00003a36: JUMP
00003a37: JUMPDEST
00003a38: PUSH2 0x4121
00003a3b: JUMP
00003a3c: JUMPDEST
00003a3d: PUSH1 0x00
00003a3f: DUP1
00003a40: DUP3
00003a41: MLOAD
00003a42: DUP5
00003a43: MLOAD
00003a44: LT
00003a45: PUSH2 0x3a4f
00003a48: JUMPI
00003a49: DUP3
00003a4a: MLOAD
00003a4b: PUSH2 0x3a52
00003a4e: JUMP
00003a4f: JUMPDEST
00003a50: DUP4
00003a51: MLOAD
00003a52: JUMPDEST
00003a53: SWAP1
00003a54: POP
00003a55: JUMPDEST
00003a56: DUP1
00003a57: DUP3
00003a58: LT
00003a59: DUP1
00003a5a: ISZERO
00003a5b: PUSH2 0x3ad9
00003a5e: JUMPI
00003a5f: POP
00003a60: DUP3
00003a61: DUP3
00003a62: DUP2
00003a63: MLOAD
00003a64: DUP2
00003a65: LT
00003a66: PUSH2 0x3a71
00003a69: JUMPI
00003a6a: PUSH2 0x3a71
00003a6d: PUSH2 0x51bd
00003a70: JUMP
00003a71: JUMPDEST
00003a72: PUSH1 0x20
00003a74: ADD
00003a75: ADD
00003a76: MLOAD
00003a77: PUSH1 0xf8
00003a79: SHR
00003a7a: PUSH1 0xf8
00003a7c: SHL
00003a7d: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00003a9d: NOT
00003a9e: AND
00003a9f: DUP5
00003aa0: DUP4
00003aa1: DUP2
00003aa2: MLOAD
00003aa3: DUP2
00003aa4: LT
00003aa5: PUSH2 0x3ab0
00003aa8: JUMPI
00003aa9: PUSH2 0x3ab0
00003aac: PUSH2 0x51bd
00003aaf: JUMP
00003ab0: JUMPDEST
00003ab1: ADD
00003ab2: PUSH1 0x20
00003ab4: ADD
00003ab5: MLOAD
00003ab6: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000
00003ad7: AND
00003ad8: EQ
00003ad9: JUMPDEST
00003ada: ISZERO
00003adb: PUSH2 0x3ae9
00003ade: JUMPI
00003adf: DUP2
00003ae0: PUSH1 0x01
00003ae2: ADD
00003ae3: SWAP2
00003ae4: POP
00003ae5: PUSH2 0x3a55
00003ae8: JUMP
00003ae9: JUMPDEST
00003aea: POP
00003aeb: SWAP3
00003aec: SWAP2
00003aed: POP
00003aee: POP
00003aef: JUMP
00003af0: JUMPDEST
00003af1: PUSH1 0x00
00003af3: DUP1
00003af4: DUP3
00003af5: GT
00003af6: PUSH2 0x3b5b
00003af9: JUMPI
00003afa: PUSH1 0x40
00003afc: MLOAD
00003afd: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00003b1e: DUP2
00003b1f: MSTORE
00003b20: PUSH1 0x20
00003b22: PUSH1 0x04
00003b24: DUP3
00003b25: ADD
00003b26: MSTORE
00003b27: PUSH1 0x09
00003b29: PUSH1 0x24
00003b2b: DUP3
00003b2c: ADD
00003b2d: MSTORE
00003b2e: PUSH32 0x554e444546494e45440000000000000000000000000000000000000000000000
00003b4f: PUSH1 0x44
00003b51: DUP3
00003b52: ADD
00003b53: MSTORE
00003b54: PUSH1 0x64
00003b56: ADD
00003b57: PUSH2 0x09e0
00003b5a: JUMP
00003b5b: JUMPDEST
00003b5c: POP
00003b5d: PUSH1 0x01
00003b5f: PUSH16 0xffffffffffffffffffffffffffffffff
00003b70: DUP3
00003b71: GT
00003b72: PUSH1 0x07
00003b74: SHL
00003b75: DUP3
00003b76: DUP2
00003b77: SHR
00003b78: PUSH8 0xffffffffffffffff
00003b81: LT
00003b82: PUSH1 0x06
00003b84: SHL
00003b85: OR
00003b86: DUP3
00003b87: DUP2
00003b88: SHR
00003b89: PUSH4 0xffffffff
00003b8e: LT
00003b8f: PUSH1 0x05
00003b91: SHL
00003b92: OR
00003b93: DUP3
00003b94: DUP2
00003b95: SHR
00003b96: PUSH2 0xffff
00003b99: LT
00003b9a: PUSH1 0x04
00003b9c: SHL
00003b9d: OR
00003b9e: DUP3
00003b9f: DUP2
00003ba0: SHR
00003ba1: PUSH1 0xff
00003ba3: LT
00003ba4: PUSH1 0x03
00003ba6: SWAP1
00003ba7: DUP2
00003ba8: SHL
00003ba9: SWAP1
00003baa: SWAP2
00003bab: OR
00003bac: DUP4
00003bad: DUP2
00003bae: SHR
00003baf: PUSH1 0x0f
00003bb1: LT
00003bb2: PUSH1 0x02
00003bb4: SHL
00003bb5: OR
00003bb6: DUP4
00003bb7: DUP2
00003bb8: SHR
00003bb9: SWAP1
00003bba: SWAP2
00003bbb: LT
00003bbc: DUP3
00003bbd: SHL
00003bbe: OR
00003bbf: SWAP2
00003bc0: DUP3
00003bc1: SHR
00003bc2: GT
00003bc3: OR
00003bc4: SWAP1
00003bc5: JUMP
00003bc6: JUMPDEST
00003bc7: PUSH1 0x60
00003bc9: PUSH2 0x2110
00003bcc: PUSH2 0x3bd4
00003bcf: DUP4
00003bd0: PUSH2 0x42f9
00003bd3: JUMP
00003bd4: JUMPDEST
00003bd5: PUSH2 0x4366
00003bd8: JUMP
00003bd9: JUMPDEST
00003bda: PUSH1 0x00
00003bdc: DUP1
00003bdd: PUSH1 0x00
00003bdf: DUP4
00003be0: PUSH1 0x00
00003be2: ADD
00003be3: MLOAD
00003be4: PUSH1 0x00
00003be6: SUB
00003be7: PUSH2 0x3c1c
00003bea: JUMPI
00003beb: PUSH1 0x40
00003bed: MLOAD
00003bee: PUSH32 0x5ab458fb00000000000000000000000000000000000000000000000000000000
00003c0f: DUP2
00003c10: MSTORE
00003c11: PUSH1 0x04
00003c13: ADD
00003c14: PUSH1 0x40
00003c16: MLOAD
00003c17: DUP1
00003c18: SWAP2
00003c19: SUB
00003c1a: SWAP1
00003c1b: REVERT
00003c1c: JUMPDEST
00003c1d: PUSH1 0x20
00003c1f: DUP5
00003c20: ADD
00003c21: MLOAD
00003c22: DUP1
00003c23: MLOAD
00003c24: PUSH1 0x00
00003c26: BYTE
00003c27: PUSH1 0x7f
00003c29: DUP2
00003c2a: GT
00003c2b: PUSH2 0x3c41
00003c2e: JUMPI
00003c2f: PUSH1 0x00
00003c31: PUSH1 0x01
00003c33: PUSH1 0x00
00003c35: SWAP5
00003c36: POP
00003c37: SWAP5
00003c38: POP
00003c39: SWAP5
00003c3a: POP
00003c3b: POP
00003c3c: POP
00003c3d: PUSH2 0x4070
00003c40: JUMP
00003c41: JUMPDEST
00003c42: PUSH1 0xb7
00003c44: DUP2
00003c45: GT
00003c46: PUSH2 0x3d57
00003c49: JUMPI
00003c4a: PUSH1 0x00
00003c4c: PUSH2 0x3c56
00003c4f: PUSH1 0x80
00003c51: DUP4
00003c52: PUSH2 0x4d40
00003c55: JUMP
00003c56: JUMPDEST
00003c57: SWAP1
00003c58: POP
00003c59: DUP1
00003c5a: DUP8
00003c5b: PUSH1 0x00
00003c5d: ADD
00003c5e: MLOAD
00003c5f: GT
00003c60: PUSH2 0x3c95
00003c63: JUMPI
00003c64: PUSH1 0x40
00003c66: MLOAD
00003c67: PUSH32 0x66c9448500000000000000000000000000000000000000000000000000000000
00003c88: DUP2
00003c89: MSTORE
00003c8a: PUSH1 0x04
00003c8c: ADD
00003c8d: PUSH1 0x40
00003c8f: MLOAD
00003c90: DUP1
00003c91: SWAP2
00003c92: SUB
00003c93: SWAP1
00003c94: REVERT
00003c95: JUMPDEST
00003c96: PUSH1 0x01
00003c98: DUP4
00003c99: DUP2
00003c9a: ADD
00003c9b: MLOAD
00003c9c: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000
00003cbd: AND
00003cbe: SWAP1
00003cbf: DUP3
00003cc0: EQ
00003cc1: DUP1
00003cc2: ISZERO
00003cc3: PUSH2 0x3d0d
00003cc6: JUMPI
00003cc7: POP
00003cc8: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000
00003ce9: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000
00003d0a: DUP3
00003d0b: AND
00003d0c: LT
00003d0d: JUMPDEST
00003d0e: ISZERO
00003d0f: PUSH2 0x3d44
00003d12: JUMPI
00003d13: PUSH1 0x40
00003d15: MLOAD
00003d16: PUSH32 0xbabb01dd00000000000000000000000000000000000000000000000000000000
00003d37: DUP2
00003d38: MSTORE
00003d39: PUSH1 0x04
00003d3b: ADD
00003d3c: PUSH1 0x40
00003d3e: MLOAD
00003d3f: DUP1
00003d40: SWAP2
00003d41: SUB
00003d42: SWAP1
00003d43: REVERT
00003d44: JUMPDEST
00003d45: POP
00003d46: PUSH1 0x01
00003d48: SWAP6
00003d49: POP
00003d4a: SWAP4
00003d4b: POP
00003d4c: PUSH1 0x00
00003d4e: SWAP3
00003d4f: POP
00003d50: PUSH2 0x4070
00003d53: SWAP2
00003d54: POP
00003d55: POP
00003d56: JUMP
00003d57: JUMPDEST
00003d58: PUSH1 0xbf
00003d5a: DUP2
00003d5b: GT
00003d5c: PUSH2 0x3eb5
00003d5f: JUMPI
00003d60: PUSH1 0x00
00003d62: PUSH2 0x3d6c
00003d65: PUSH1 0xb7
00003d67: DUP4
00003d68: PUSH2 0x4d40
00003d6b: JUMP
00003d6c: JUMPDEST
00003d6d: SWAP1
00003d6e: POP
00003d6f: DUP1
00003d70: DUP8
00003d71: PUSH1 0x00
00003d73: ADD
00003d74: MLOAD
00003d75: GT
00003d76: PUSH2 0x3dab
00003d79: JUMPI
00003d7a: PUSH1 0x40
00003d7c: MLOAD
00003d7d: PUSH32 0x66c9448500000000000000000000000000000000000000000000000000000000
00003d9e: DUP2
00003d9f: MSTORE
00003da0: PUSH1 0x04
00003da2: ADD
00003da3: PUSH1 0x40
00003da5: MLOAD
00003da6: DUP1
00003da7: SWAP2
00003da8: SUB
00003da9: SWAP1
00003daa: REVERT
00003dab: JUMPDEST
00003dac: PUSH1 0x01
00003dae: DUP4
00003daf: ADD
00003db0: MLOAD
00003db1: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000
00003dd2: AND
00003dd3: PUSH1 0x00
00003dd5: DUP2
00003dd6: SWAP1
00003dd7: SUB
00003dd8: PUSH2 0x3e0d
00003ddb: JUMPI
00003ddc: PUSH1 0x40
00003dde: MLOAD
00003ddf: PUSH32 0xbabb01dd00000000000000000000000000000000000000000000000000000000
00003e00: DUP2
00003e01: MSTORE
00003e02: PUSH1 0x04
00003e04: ADD
00003e05: PUSH1 0x40
00003e07: MLOAD
00003e08: DUP1
00003e09: SWAP2
00003e0a: SUB
00003e0b: SWAP1
00003e0c: REVERT
00003e0d: JUMPDEST
00003e0e: PUSH1 0x01
00003e10: DUP5
00003e11: ADD
00003e12: MLOAD
00003e13: PUSH1 0x08
00003e15: DUP4
00003e16: MUL
00003e17: PUSH2 0x0100
00003e1a: SUB
00003e1b: SHR
00003e1c: PUSH1 0x37
00003e1e: DUP2
00003e1f: GT
00003e20: PUSH2 0x3e55
00003e23: JUMPI
00003e24: PUSH1 0x40
00003e26: MLOAD
00003e27: PUSH32 0xbabb01dd00000000000000000000000000000000000000000000000000000000
00003e48: DUP2
00003e49: MSTORE
00003e4a: PUSH1 0x04
00003e4c: ADD
00003e4d: PUSH1 0x40
00003e4f: MLOAD
00003e50: DUP1
00003e51: SWAP2
00003e52: SUB
00003e53: SWAP1
00003e54: REVERT
00003e55: JUMPDEST
00003e56: PUSH2 0x3e5f
00003e59: DUP2
00003e5a: DUP5
00003e5b: PUSH2 0x51ec
00003e5e: JUMP
00003e5f: JUMPDEST
00003e60: DUP10
00003e61: MLOAD
00003e62: GT
00003e63: PUSH2 0x3e98
00003e66: JUMPI
00003e67: PUSH1 0x40
00003e69: MLOAD
00003e6a: PUSH32 0x66c9448500000000000000000000000000000000000000000000000000000000
00003e8b: DUP2
00003e8c: MSTORE
00003e8d: PUSH1 0x04
00003e8f: ADD
00003e90: PUSH1 0x40
00003e92: MLOAD
00003e93: DUP1
00003e94: SWAP2
00003e95: SUB
00003e96: SWAP1
00003e97: REVERT
00003e98: JUMPDEST
00003e99: PUSH2 0x3ea3
00003e9c: DUP4
00003e9d: PUSH1 0x01
00003e9f: PUSH2 0x51ec
00003ea2: JUMP
00003ea3: JUMPDEST
00003ea4: SWAP8
00003ea5: POP
00003ea6: SWAP6
00003ea7: POP
00003ea8: PUSH1 0x00
00003eaa: SWAP5
00003eab: POP
00003eac: PUSH2 0x4070
00003eaf: SWAP4
00003eb0: POP
00003eb1: POP
00003eb2: POP
00003eb3: POP
00003eb4: JUMP
00003eb5: JUMPDEST
00003eb6: PUSH1 0xf7
00003eb8: DUP2
00003eb9: GT
00003eba: PUSH2 0x3f1a
00003ebd: JUMPI
00003ebe: PUSH1 0x00
00003ec0: PUSH2 0x3eca
00003ec3: PUSH1 0xc0
00003ec5: DUP4
00003ec6: PUSH2 0x4d40
00003ec9: JUMP
00003eca: JUMPDEST
00003ecb: SWAP1
00003ecc: POP
00003ecd: DUP1
00003ece: DUP8
00003ecf: PUSH1 0x00
00003ed1: ADD
00003ed2: MLOAD
00003ed3: GT
00003ed4: PUSH2 0x3f09
00003ed7: JUMPI
00003ed8: PUSH1 0x40
00003eda: MLOAD
00003edb: PUSH32 0x66c9448500000000000000000000000000000000000000000000000000000000
00003efc: DUP2
00003efd: MSTORE
00003efe: PUSH1 0x04
00003f00: ADD
00003f01: PUSH1 0x40
00003f03: MLOAD
00003f04: DUP1
00003f05: SWAP2
00003f06: SUB
00003f07: SWAP1
00003f08: REVERT
00003f09: JUMPDEST
00003f0a: PUSH1 0x01
00003f0c: SWAP6
00003f0d: POP
00003f0e: SWAP4
00003f0f: POP
00003f10: DUP5
00003f11: SWAP3
00003f12: POP
00003f13: PUSH2 0x4070
00003f16: SWAP2
00003f17: POP
00003f18: POP
00003f19: JUMP
00003f1a: JUMPDEST
00003f1b: PUSH1 0x00
00003f1d: PUSH2 0x3f27
00003f20: PUSH1 0xf7
00003f22: DUP4
00003f23: PUSH2 0x4d40
00003f26: JUMP
00003f27: JUMPDEST
00003f28: SWAP1
00003f29: POP
00003f2a: DUP1
00003f2b: DUP8
00003f2c: PUSH1 0x00
00003f2e: ADD
00003f2f: MLOAD
00003f30: GT
00003f31: PUSH2 0x3f66
00003f34: JUMPI
00003f35: PUSH1 0x40
00003f37: MLOAD
00003f38: PUSH32 0x66c9448500000000000000000000000000000000000000000000000000000000
00003f59: DUP2
00003f5a: MSTORE
00003f5b: PUSH1 0x04
00003f5d: ADD
00003f5e: PUSH1 0x40
00003f60: MLOAD
00003f61: DUP1
00003f62: SWAP2
00003f63: SUB
00003f64: SWAP1
00003f65: REVERT
00003f66: JUMPDEST
00003f67: PUSH1 0x01
00003f69: DUP4
00003f6a: ADD
00003f6b: MLOAD
00003f6c: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000
00003f8d: AND
00003f8e: PUSH1 0x00
00003f90: DUP2
00003f91: SWAP1
00003f92: SUB
00003f93: PUSH2 0x3fc8
00003f96: JUMPI
00003f97: PUSH1 0x40
00003f99: MLOAD
00003f9a: PUSH32 0xbabb01dd00000000000000000000000000000000000000000000000000000000
00003fbb: DUP2
00003fbc: MSTORE
00003fbd: PUSH1 0x04
00003fbf: ADD
00003fc0: PUSH1 0x40
00003fc2: MLOAD
00003fc3: DUP1
00003fc4: SWAP2
00003fc5: SUB
00003fc6: SWAP1
00003fc7: REVERT
00003fc8: JUMPDEST
00003fc9: PUSH1 0x01
00003fcb: DUP5
00003fcc: ADD
00003fcd: MLOAD
00003fce: PUSH1 0x08
00003fd0: DUP4
00003fd1: MUL
00003fd2: PUSH2 0x0100
00003fd5: SUB
00003fd6: SHR
00003fd7: PUSH1 0x37
00003fd9: DUP2
00003fda: GT
00003fdb: PUSH2 0x4010
00003fde: JUMPI
00003fdf: PUSH1 0x40
00003fe1: MLOAD
00003fe2: PUSH32 0xbabb01dd00000000000000000000000000000000000000000000000000000000
00004003: DUP2
00004004: MSTORE
00004005: PUSH1 0x04
00004007: ADD
00004008: PUSH1 0x40
0000400a: MLOAD
0000400b: DUP1
0000400c: SWAP2
0000400d: SUB
0000400e: SWAP1
0000400f: REVERT
00004010: JUMPDEST
00004011: PUSH2 0x401a
00004014: DUP2
00004015: DUP5
00004016: PUSH2 0x51ec
00004019: JUMP
0000401a: JUMPDEST
0000401b: DUP10
0000401c: MLOAD
0000401d: GT
0000401e: PUSH2 0x4053
00004021: JUMPI
00004022: PUSH1 0x40
00004024: MLOAD
00004025: PUSH32 0x66c9448500000000000000000000000000000000000000000000000000000000
00004046: DUP2
00004047: MSTORE
00004048: PUSH1 0x04
0000404a: ADD
0000404b: PUSH1 0x40
0000404d: MLOAD
0000404e: DUP1
0000404f: SWAP2
00004050: SUB
00004051: SWAP1
00004052: REVERT
00004053: JUMPDEST
00004054: PUSH2 0x405e
00004057: DUP4
00004058: PUSH1 0x01
0000405a: PUSH2 0x51ec
0000405d: JUMP
0000405e: JUMPDEST
0000405f: SWAP8
00004060: POP
00004061: SWAP6
00004062: POP
00004063: PUSH1 0x01
00004065: SWAP5
00004066: POP
00004067: PUSH2 0x4070
0000406a: SWAP4
0000406b: POP
0000406c: POP
0000406d: POP
0000406e: POP
0000406f: JUMP
00004070: JUMPDEST
00004071: SWAP2
00004072: SWAP4
00004073: SWAP1
00004074: SWAP3
00004075: POP
00004076: JUMP
00004077: JUMPDEST
00004078: PUSH1 0x60
0000407a: DUP2
0000407b: PUSH8 0xffffffffffffffff
00004084: DUP2
00004085: GT
00004086: ISZERO
00004087: PUSH2 0x4092
0000408a: JUMPI
0000408b: PUSH2 0x4092
0000408e: PUSH2 0x451c
00004091: JUMP
00004092: JUMPDEST
00004093: PUSH1 0x40
00004095: MLOAD
00004096: SWAP1
00004097: DUP1
00004098: DUP3
00004099: MSTORE
0000409a: DUP1
0000409b: PUSH1 0x1f
0000409d: ADD
0000409e: PUSH1 0x1f
000040a0: NOT
000040a1: AND
000040a2: PUSH1 0x20
000040a4: ADD
000040a5: DUP3
000040a6: ADD
000040a7: PUSH1 0x40
000040a9: MSTORE
000040aa: DUP1
000040ab: ISZERO
000040ac: PUSH2 0x40bc
000040af: JUMPI
000040b0: PUSH1 0x20
000040b2: DUP3
000040b3: ADD
000040b4: DUP2
000040b5: DUP1
000040b6: CALLDATASIZE
000040b7: DUP4
000040b8: CALLDATACOPY
000040b9: ADD
000040ba: SWAP1
000040bb: POP
000040bc: JUMPDEST
000040bd: POP
000040be: SWAP1
000040bf: POP
000040c0: DUP2
000040c1: ISZERO
000040c2: PUSH2 0x2748
000040c5: JUMPI
000040c6: PUSH1 0x00
000040c8: PUSH2 0x40d1
000040cb: DUP5
000040cc: DUP7
000040cd: PUSH2 0x51ec
000040d0: JUMP
000040d1: JUMPDEST
000040d2: SWAP1
000040d3: POP
000040d4: PUSH1 0x20
000040d6: DUP3
000040d7: ADD
000040d8: PUSH1 0x00
000040da: JUMPDEST
000040db: DUP5
000040dc: DUP2
000040dd: LT
000040de: ISZERO
000040df: PUSH2 0x40f2
000040e2: JUMPI
000040e3: DUP3
000040e4: DUP2
000040e5: ADD
000040e6: MLOAD
000040e7: DUP3
000040e8: DUP3
000040e9: ADD
000040ea: MSTORE
000040eb: PUSH1 0x20
000040ed: ADD
000040ee: PUSH2 0x40da
000040f1: JUMP
000040f2: JUMPDEST
000040f3: DUP5
000040f4: DUP2
000040f5: GT
000040f6: ISZERO
000040f7: PUSH2 0x4101
000040fa: JUMPI
000040fb: PUSH1 0x00
000040fd: DUP6
000040fe: DUP4
000040ff: ADD
00004100: MSTORE
00004101: JUMPDEST
00004102: POP
00004103: POP
00004104: POP
00004105: SWAP4
00004106: SWAP3
00004107: POP
00004108: POP
00004109: POP
0000410a: JUMP
0000410b: JUMPDEST
0000410c: PUSH1 0x60
0000410e: PUSH2 0x2110
00004111: DUP3
00004112: PUSH1 0x20
00004114: ADD
00004115: MLOAD
00004116: PUSH1 0x00
00004118: DUP5
00004119: PUSH1 0x00
0000411b: ADD
0000411c: MLOAD
0000411d: PUSH2 0x4077
00004120: JUMP
00004121: JUMPDEST
00004122: PUSH1 0x60
00004124: DUP2
00004125: DUP3
00004126: PUSH1 0x1f
00004128: ADD
00004129: LT
0000412a: ISZERO
0000412b: PUSH2 0x4190
0000412e: JUMPI
0000412f: PUSH1 0x40
00004131: MLOAD
00004132: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00004153: DUP2
00004154: MSTORE
00004155: PUSH1 0x20
00004157: PUSH1 0x04
00004159: DUP3
0000415a: ADD
0000415b: MSTORE
0000415c: PUSH1 0x0e
0000415e: PUSH1 0x24
00004160: DUP3
00004161: ADD
00004162: MSTORE
00004163: PUSH32 0x736c6963655f6f766572666c6f77000000000000000000000000000000000000
00004184: PUSH1 0x44
00004186: DUP3
00004187: ADD
00004188: MSTORE
00004189: PUSH1 0x64
0000418b: ADD
0000418c: PUSH2 0x09e0
0000418f: JUMP
00004190: JUMPDEST
00004191: DUP3
00004192: DUP3
00004193: DUP5
00004194: ADD
00004195: LT
00004196: ISZERO
00004197: PUSH2 0x41fc
0000419a: JUMPI
0000419b: PUSH1 0x40
0000419d: MLOAD
0000419e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000041bf: DUP2
000041c0: MSTORE
000041c1: PUSH1 0x20
000041c3: PUSH1 0x04
000041c5: DUP3
000041c6: ADD
000041c7: MSTORE
000041c8: PUSH1 0x0e
000041ca: PUSH1 0x24
000041cc: DUP3
000041cd: ADD
000041ce: MSTORE
000041cf: PUSH32 0x736c6963655f6f766572666c6f77000000000000000000000000000000000000
000041f0: PUSH1 0x44
000041f2: DUP3
000041f3: ADD
000041f4: MSTORE
000041f5: PUSH1 0x64
000041f7: ADD
000041f8: PUSH2 0x09e0
000041fb: JUMP
000041fc: JUMPDEST
000041fd: DUP2
000041fe: DUP4
000041ff: ADD
00004200: DUP5
00004201: MLOAD
00004202: LT
00004203: ISZERO
00004204: PUSH2 0x4269
00004207: JUMPI
00004208: PUSH1 0x40
0000420a: MLOAD
0000420b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000422c: DUP2
0000422d: MSTORE
0000422e: PUSH1 0x20
00004230: PUSH1 0x04
00004232: DUP3
00004233: ADD
00004234: MSTORE
00004235: PUSH1 0x11
00004237: PUSH1 0x24
00004239: DUP3
0000423a: ADD
0000423b: MSTORE
0000423c: PUSH32 0x736c6963655f6f75744f66426f756e6473000000000000000000000000000000
0000425d: PUSH1 0x44
0000425f: DUP3
00004260: ADD
00004261: MSTORE
00004262: PUSH1 0x64
00004264: ADD
00004265: PUSH2 0x09e0
00004268: JUMP
00004269: JUMPDEST
0000426a: PUSH1 0x60
0000426c: DUP3
0000426d: ISZERO
0000426e: DUP1
0000426f: ISZERO
00004270: PUSH2 0x4288
00004273: JUMPI
00004274: PUSH1 0x40
00004276: MLOAD
00004277: SWAP2
00004278: POP
00004279: PUSH1 0x00
0000427b: DUP3
0000427c: MSTORE
0000427d: PUSH1 0x20
0000427f: DUP3
00004280: ADD
00004281: PUSH1 0x40
00004283: MSTORE
00004284: PUSH2 0x42f0
00004287: JUMP
00004288: JUMPDEST
00004289: PUSH1 0x40
0000428b: MLOAD
0000428c: SWAP2
0000428d: POP
0000428e: PUSH1 0x1f
00004290: DUP5
00004291: AND
00004292: DUP1
00004293: ISZERO
00004294: PUSH1 0x20
00004296: MUL
00004297: DUP2
00004298: DUP5
00004299: ADD
0000429a: ADD
0000429b: DUP6
0000429c: DUP2
0000429d: ADD
0000429e: DUP8
0000429f: DUP4
000042a0: ISZERO
000042a1: PUSH1 0x20
000042a3: MUL
000042a4: DUP5
000042a5: DUP12
000042a6: ADD
000042a7: ADD
000042a8: ADD
000042a9: JUMPDEST
000042aa: DUP2
000042ab: DUP4
000042ac: LT
000042ad: ISZERO
000042ae: PUSH2 0x42c1
000042b1: JUMPI
000042b2: DUP1
000042b3: MLOAD
000042b4: DUP4
000042b5: MSTORE
000042b6: PUSH1 0x20
000042b8: SWAP3
000042b9: DUP4
000042ba: ADD
000042bb: SWAP3
000042bc: ADD
000042bd: PUSH2 0x42a9
000042c0: JUMP
000042c1: JUMPDEST
000042c2: POP
000042c3: POP
000042c4: DUP6
000042c5: DUP5
000042c6: MSTORE
000042c7: PUSH1 0x1f
000042c9: ADD
000042ca: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0
000042eb: AND
000042ec: PUSH1 0x40
000042ee: MSTORE
000042ef: POP
000042f0: JUMPDEST
000042f1: POP
000042f2: SWAP5
000042f3: SWAP4
000042f4: POP
000042f5: POP
000042f6: POP
000042f7: POP
000042f8: JUMP
000042f9: JUMPDEST
000042fa: PUSH1 0x40
000042fc: DUP1
000042fd: MLOAD
000042fe: DUP1
000042ff: DUP3
00004300: ADD
00004301: SWAP1
00004302: SWAP2
00004303: MSTORE
00004304: PUSH1 0x00
00004306: DUP1
00004307: DUP3
00004308: MSTORE
00004309: PUSH1 0x20
0000430b: DUP3
0000430c: ADD
0000430d: MSTORE
0000430e: DUP2
0000430f: MLOAD
00004310: PUSH1 0x00
00004312: SUB
00004313: PUSH2 0x4348
00004316: JUMPI
00004317: PUSH1 0x40
00004319: MLOAD
0000431a: PUSH32 0x5ab458fb00000000000000000000000000000000000000000000000000000000
0000433b: DUP2
0000433c: MSTORE
0000433d: PUSH1 0x04
0000433f: ADD
00004340: PUSH1 0x40
00004342: MLOAD
00004343: DUP1
00004344: SWAP2
00004345: SUB
00004346: SWAP1
00004347: REVERT
00004348: JUMPDEST
00004349: POP
0000434a: PUSH1 0x40
0000434c: DUP1
0000434d: MLOAD
0000434e: DUP1
0000434f: DUP3
00004350: ADD
00004351: SWAP1
00004352: SWAP2
00004353: MSTORE
00004354: DUP2
00004355: MLOAD
00004356: DUP2
00004357: MSTORE
00004358: PUSH1 0x20
0000435a: SWAP2
0000435b: DUP3
0000435c: ADD
0000435d: SWAP2
0000435e: DUP2
0000435f: ADD
00004360: SWAP2
00004361: SWAP1
00004362: SWAP2
00004363: MSTORE
00004364: SWAP1
00004365: JUMP
00004366: JUMPDEST
00004367: PUSH1 0x60
00004369: PUSH1 0x00
0000436b: DUP1
0000436c: PUSH1 0x00
0000436e: PUSH2 0x4376
00004371: DUP6
00004372: PUSH2 0x3bd9
00004375: JUMP
00004376: JUMPDEST
00004377: SWAP2
00004378: SWAP5
00004379: POP
0000437a: SWAP3
0000437b: POP
0000437c: SWAP1
0000437d: POP
0000437e: PUSH1 0x01
00004380: DUP2
00004381: PUSH1 0x01
00004383: DUP2
00004384: GT
00004385: ISZERO
00004386: PUSH2 0x4391
00004389: JUMPI
0000438a: PUSH2 0x4391
0000438d: PUSH2 0x4c03
00004390: JUMP
00004391: JUMPDEST
00004392: EQ
00004393: PUSH2 0x43c8
00004396: JUMPI
00004397: PUSH1 0x40
00004399: MLOAD
0000439a: PUSH32 0x4b9c6abe00000000000000000000000000000000000000000000000000000000
000043bb: DUP2
000043bc: MSTORE
000043bd: PUSH1 0x04
000043bf: ADD
000043c0: PUSH1 0x40
000043c2: MLOAD
000043c3: DUP1
000043c4: SWAP2
000043c5: SUB
000043c6: SWAP1
000043c7: REVERT
000043c8: JUMPDEST
000043c9: DUP5
000043ca: MLOAD
000043cb: PUSH2 0x43d4
000043ce: DUP4
000043cf: DUP6
000043d0: PUSH2 0x51ec
000043d3: JUMP
000043d4: JUMPDEST
000043d5: EQ
000043d6: PUSH2 0x440b
000043d9: JUMPI
000043da: PUSH1 0x40
000043dc: MLOAD
000043dd: PUSH32 0x5c5537b800000000000000000000000000000000000000000000000000000000
000043fe: DUP2
000043ff: MSTORE
00004400: PUSH1 0x04
00004402: ADD
00004403: PUSH1 0x40
00004405: MLOAD
00004406: DUP1
00004407: SWAP2
00004408: SUB
00004409: SWAP1
0000440a: REVERT
0000440b: JUMPDEST
0000440c: PUSH1 0x40
0000440e: DUP1
0000440f: MLOAD
00004410: PUSH1 0x20
00004412: DUP1
00004413: DUP3
00004414: MSTORE
00004415: PUSH2 0x0420
00004418: DUP3
00004419: ADD
0000441a: SWAP1
0000441b: SWAP3
0000441c: MSTORE
0000441d: SWAP1
0000441e: DUP2
0000441f: PUSH1 0x20
00004421: ADD
00004422: JUMPDEST
00004423: PUSH1 0x40
00004425: DUP1
00004426: MLOAD
00004427: DUP1
00004428: DUP3
00004429: ADD
0000442a: SWAP1
0000442b: SWAP2
0000442c: MSTORE
0000442d: PUSH1 0x00
0000442f: DUP1
00004430: DUP3
00004431: MSTORE
00004432: PUSH1 0x20
00004434: DUP3
00004435: ADD
00004436: MSTORE
00004437: DUP2
00004438: MSTORE
00004439: PUSH1 0x20
0000443b: ADD
0000443c: SWAP1
0000443d: PUSH1 0x01
0000443f: SWAP1
00004440: SUB
00004441: SWAP1
00004442: DUP2
00004443: PUSH2 0x4422
00004446: JUMPI
00004447: SWAP1
00004448: POP
00004449: POP
0000444a: SWAP4
0000444b: POP
0000444c: PUSH1 0x00
0000444e: DUP4
0000444f: JUMPDEST
00004450: DUP7
00004451: MLOAD
00004452: DUP2
00004453: LT
00004454: ISZERO
00004455: PUSH2 0x4510
00004458: JUMPI
00004459: PUSH1 0x00
0000445b: DUP1
0000445c: PUSH2 0x4495
0000445f: PUSH1 0x40
00004461: MLOAD
00004462: DUP1
00004463: PUSH1 0x40
00004465: ADD
00004466: PUSH1 0x40
00004468: MSTORE
00004469: DUP1
0000446a: DUP6
0000446b: DUP13
0000446c: PUSH1 0x00
0000446e: ADD
0000446f: MLOAD
00004470: PUSH2 0x4479
00004473: SWAP2
00004474: SWAP1
00004475: PUSH2 0x4d40
00004478: JUMP
00004479: JUMPDEST
0000447a: DUP2
0000447b: MSTORE
0000447c: PUSH1 0x20
0000447e: ADD
0000447f: DUP6
00004480: DUP13
00004481: PUSH1 0x20
00004483: ADD
00004484: MLOAD
00004485: PUSH2 0x448e
00004488: SWAP2
00004489: SWAP1
0000448a: PUSH2 0x51ec
0000448d: JUMP
0000448e: JUMPDEST
0000448f: SWAP1
00004490: MSTORE
00004491: PUSH2 0x3bd9
00004494: JUMP
00004495: JUMPDEST
00004496: POP
00004497: SWAP2
00004498: POP
00004499: SWAP2
0000449a: POP
0000449b: PUSH1 0x40
0000449d: MLOAD
0000449e: DUP1
0000449f: PUSH1 0x40
000044a1: ADD
000044a2: PUSH1 0x40
000044a4: MSTORE
000044a5: DUP1
000044a6: DUP4
000044a7: DUP4
000044a8: PUSH2 0x44b1
000044ab: SWAP2
000044ac: SWAP1
000044ad: PUSH2 0x51ec
000044b0: JUMP
000044b1: JUMPDEST
000044b2: DUP2
000044b3: MSTORE
000044b4: PUSH1 0x20
000044b6: ADD
000044b7: DUP5
000044b8: DUP12
000044b9: PUSH1 0x20
000044bb: ADD
000044bc: MLOAD
000044bd: PUSH2 0x44c6
000044c0: SWAP2
000044c1: SWAP1
000044c2: PUSH2 0x51ec
000044c5: JUMP
000044c6: JUMPDEST
000044c7: DUP2
000044c8: MSTORE
000044c9: POP
000044ca: DUP9
000044cb: DUP6
000044cc: DUP2
000044cd: MLOAD
000044ce: DUP2
000044cf: LT
000044d0: PUSH2 0x44db
000044d3: JUMPI
000044d4: PUSH2 0x44db
000044d7: PUSH2 0x51bd
000044da: JUMP
000044db: JUMPDEST
000044dc: PUSH1 0x20
000044de: SWAP1
000044df: DUP2
000044e0: MUL
000044e1: SWAP2
000044e2: SWAP1
000044e3: SWAP2
000044e4: ADD
000044e5: ADD
000044e6: MSTORE
000044e7: PUSH2 0x44f1
000044ea: PUSH1 0x01
000044ec: DUP6
000044ed: PUSH2 0x51ec
000044f0: JUMP
000044f1: JUMPDEST
000044f2: SWAP4
000044f3: POP
000044f4: PUSH2 0x44fd
000044f7: DUP2
000044f8: DUP4
000044f9: PUSH2 0x51ec
000044fc: JUMP
000044fd: JUMPDEST
000044fe: PUSH2 0x4507
00004501: SWAP1
00004502: DUP5
00004503: PUSH2 0x51ec
00004506: JUMP
00004507: JUMPDEST
00004508: SWAP3
00004509: POP
0000450a: POP
0000450b: POP
0000450c: PUSH2 0x444f
0000450f: JUMP
00004510: JUMPDEST
00004511: POP
00004512: DUP5
00004513: MSTORE
00004514: POP
00004515: SWAP2
00004516: SWAP4
00004517: SWAP3
00004518: POP
00004519: POP
0000451a: POP
0000451b: JUMP
0000451c: JUMPDEST
0000451d: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
0000453e: PUSH1 0x00
00004540: MSTORE
00004541: PUSH1 0x41
00004543: PUSH1 0x04
00004545: MSTORE
00004546: PUSH1 0x24
00004548: PUSH1 0x00
0000454a: REVERT
0000454b: JUMPDEST
0000454c: PUSH1 0x40
0000454e: MLOAD
0000454f: PUSH1 0x1f
00004551: DUP3
00004552: ADD
00004553: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0
00004574: AND
00004575: DUP2
00004576: ADD
00004577: PUSH8 0xffffffffffffffff
00004580: DUP2
00004581: GT
00004582: DUP3
00004583: DUP3
00004584: LT
00004585: OR
00004586: ISZERO
00004587: PUSH2 0x4592
0000458a: JUMPI
0000458b: PUSH2 0x4592
0000458e: PUSH2 0x451c
00004591: JUMP
00004592: JUMPDEST
00004593: PUSH1 0x40
00004595: MSTORE
00004596: SWAP2
00004597: SWAP1
00004598: POP
00004599: JUMP
0000459a: JUMPDEST
0000459b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000045b0: DUP2
000045b1: AND
000045b2: DUP2
000045b3: EQ
000045b4: PUSH2 0x1e3f
000045b7: JUMPI
000045b8: PUSH1 0x00
000045ba: DUP1
000045bb: REVERT
000045bc: JUMPDEST
000045bd: PUSH1 0x00
000045bf: DUP3
000045c0: PUSH1 0x1f
000045c2: DUP4
000045c3: ADD
000045c4: SLT
000045c5: PUSH2 0x45cd
000045c8: JUMPI
000045c9: PUSH1 0x00
000045cb: DUP1
000045cc: REVERT
000045cd: JUMPDEST
000045ce: DUP2
000045cf: CALLDATALOAD
000045d0: PUSH8 0xffffffffffffffff
000045d9: DUP2
000045da: GT
000045db: ISZERO
000045dc: PUSH2 0x45e7
000045df: JUMPI
000045e0: PUSH2 0x45e7
000045e3: PUSH2 0x451c
000045e6: JUMP
000045e7: JUMPDEST
000045e8: PUSH2 0x4618
000045eb: PUSH1 0x20
000045ed: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0
0000460e: PUSH1 0x1f
00004610: DUP5
00004611: ADD
00004612: AND
00004613: ADD
00004614: PUSH2 0x454b
00004617: JUMP
00004618: JUMPDEST
00004619: DUP2
0000461a: DUP2
0000461b: MSTORE
0000461c: DUP5
0000461d: PUSH1 0x20
0000461f: DUP4
00004620: DUP7
00004621: ADD
00004622: ADD
00004623: GT
00004624: ISZERO
00004625: PUSH2 0x462d
00004628: JUMPI
00004629: PUSH1 0x00
0000462b: DUP1
0000462c: REVERT
0000462d: JUMPDEST
0000462e: DUP2
0000462f: PUSH1 0x20
00004631: DUP6
00004632: ADD
00004633: PUSH1 0x20
00004635: DUP4
00004636: ADD
00004637: CALLDATACOPY
00004638: PUSH1 0x00
0000463a: SWAP2
0000463b: DUP2
0000463c: ADD
0000463d: PUSH1 0x20
0000463f: ADD
00004640: SWAP2
00004641: SWAP1
00004642: SWAP2
00004643: MSTORE
00004644: SWAP4
00004645: SWAP3
00004646: POP
00004647: POP
00004648: POP
00004649: JUMP
0000464a: JUMPDEST
0000464b: PUSH1 0x00
0000464d: PUSH1 0xc0
0000464f: DUP3
00004650: DUP5
00004651: SUB
00004652: SLT
00004653: ISZERO
00004654: PUSH2 0x465c
00004657: JUMPI
00004658: PUSH1 0x00
0000465a: DUP1
0000465b: REVERT
0000465c: JUMPDEST
0000465d: PUSH1 0x40
0000465f: MLOAD
00004660: PUSH1 0xc0
00004662: DUP2
00004663: ADD
00004664: PUSH8 0xffffffffffffffff
0000466d: DUP3
0000466e: DUP3
0000466f: LT
00004670: DUP2
00004671: DUP4
00004672: GT
00004673: OR
00004674: ISZERO
00004675: PUSH2 0x4680
00004678: JUMPI
00004679: PUSH2 0x4680
0000467c: PUSH2 0x451c
0000467f: JUMP
00004680: JUMPDEST
00004681: DUP2
00004682: PUSH1 0x40
00004684: MSTORE
00004685: DUP3
00004686: SWAP4
00004687: POP
00004688: DUP5
00004689: CALLDATALOAD
0000468a: DUP4
0000468b: MSTORE
0000468c: PUSH1 0x20
0000468e: DUP6
0000468f: ADD
00004690: CALLDATALOAD
00004691: SWAP2
00004692: POP
00004693: PUSH2 0x469b
00004696: DUP3
00004697: PUSH2 0x459a
0000469a: JUMP
0000469b: JUMPDEST
0000469c: DUP2
0000469d: PUSH1 0x20
0000469f: DUP5
000046a0: ADD
000046a1: MSTORE
000046a2: PUSH1 0x40
000046a4: DUP6
000046a5: ADD
000046a6: CALLDATALOAD
000046a7: SWAP2
000046a8: POP
000046a9: PUSH2 0x46b1
000046ac: DUP3
000046ad: PUSH2 0x459a
000046b0: JUMP
000046b1: JUMPDEST
000046b2: DUP2
000046b3: PUSH1 0x40
000046b5: DUP5
000046b6: ADD
000046b7: MSTORE
000046b8: PUSH1 0x60
000046ba: DUP6
000046bb: ADD
000046bc: CALLDATALOAD
000046bd: PUSH1 0x60
000046bf: DUP5
000046c0: ADD
000046c1: MSTORE
000046c2: PUSH1 0x80
000046c4: DUP6
000046c5: ADD
000046c6: CALLDATALOAD
000046c7: PUSH1 0x80
000046c9: DUP5
000046ca: ADD
000046cb: MSTORE
000046cc: PUSH1 0xa0
000046ce: DUP6
000046cf: ADD
000046d0: CALLDATALOAD
000046d1: SWAP2
000046d2: POP
000046d3: DUP1
000046d4: DUP3
000046d5: GT
000046d6: ISZERO
000046d7: PUSH2 0x46df
000046da: JUMPI
000046db: PUSH1 0x00
000046dd: DUP1
000046de: REVERT
000046df: JUMPDEST
000046e0: POP
000046e1: PUSH2 0x46ec
000046e4: DUP6
000046e5: DUP3
000046e6: DUP7
000046e7: ADD
000046e8: PUSH2 0x45bc
000046eb: JUMP
000046ec: JUMPDEST
000046ed: PUSH1 0xa0
000046ef: DUP4
000046f0: ADD
000046f1: MSTORE
000046f2: POP
000046f3: POP
000046f4: SWAP3
000046f5: SWAP2
000046f6: POP
000046f7: POP
000046f8: JUMP
000046f9: JUMPDEST
000046fa: PUSH1 0x00
000046fc: DUP1
000046fd: PUSH1 0x40
000046ff: DUP4
00004700: DUP6
00004701: SUB
00004702: SLT
00004703: ISZERO
00004704: PUSH2 0x470c
00004707: JUMPI
00004708: PUSH1 0x00
0000470a: DUP1
0000470b: REVERT
0000470c: JUMPDEST
0000470d: DUP3
0000470e: CALLDATALOAD
0000470f: PUSH8 0xffffffffffffffff
00004718: DUP2
00004719: GT
0000471a: ISZERO
0000471b: PUSH2 0x4723
0000471e: JUMPI
0000471f: PUSH1 0x00
00004721: DUP1
00004722: REVERT
00004723: JUMPDEST
00004724: PUSH2 0x472f
00004727: DUP6
00004728: DUP3
00004729: DUP7
0000472a: ADD
0000472b: PUSH2 0x464a
0000472e: JUMP
0000472f: JUMPDEST
00004730: SWAP3
00004731: POP
00004732: POP
00004733: PUSH1 0x20
00004735: DUP4
00004736: ADD
00004737: CALLDATALOAD
00004738: PUSH2 0x4740
0000473b: DUP2
0000473c: PUSH2 0x459a
0000473f: JUMP
00004740: JUMPDEST
00004741: DUP1
00004742: SWAP2
00004743: POP
00004744: POP
00004745: SWAP3
00004746: POP
00004747: SWAP3
00004748: SWAP1
00004749: POP
0000474a: JUMP
0000474b: JUMPDEST
0000474c: PUSH1 0x00
0000474e: PUSH1 0x20
00004750: DUP3
00004751: DUP5
00004752: SUB
00004753: SLT
00004754: ISZERO
00004755: PUSH2 0x475d
00004758: JUMPI
00004759: PUSH1 0x00
0000475b: DUP1
0000475c: REVERT
0000475d: JUMPDEST
0000475e: DUP2
0000475f: CALLDATALOAD
00004760: PUSH2 0x2748
00004763: DUP2
00004764: PUSH2 0x459a
00004767: JUMP
00004768: JUMPDEST
00004769: PUSH1 0x00
0000476b: DUP1
0000476c: PUSH1 0x00
0000476e: DUP1
0000476f: PUSH1 0x00
00004771: DUP6
00004772: DUP8
00004773: SUB
00004774: PUSH1 0xe0
00004776: DUP2
00004777: SLT
00004778: ISZERO
00004779: PUSH2 0x4781
0000477c: JUMPI
0000477d: PUSH1 0x00
0000477f: DUP1
00004780: REVERT
00004781: JUMPDEST
00004782: DUP7
00004783: CALLDATALOAD
00004784: PUSH8 0xffffffffffffffff
0000478d: DUP1
0000478e: DUP3
0000478f: GT
00004790: ISZERO
00004791: PUSH2 0x4799
00004794: JUMPI
00004795: PUSH1 0x00
00004797: DUP1
00004798: REVERT
00004799: JUMPDEST
0000479a: PUSH2 0x47a5
0000479d: DUP11
0000479e: DUP4
0000479f: DUP12
000047a0: ADD
000047a1: PUSH2 0x464a
000047a4: JUMP
000047a5: JUMPDEST
000047a6: SWAP8
000047a7: POP
000047a8: PUSH1 0x20
000047aa: DUP10
000047ab: ADD
000047ac: CALLDATALOAD
000047ad: SWAP7
000047ae: POP
000047af: PUSH1 0x80
000047b1: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0
000047d2: DUP5
000047d3: ADD
000047d4: SLT
000047d5: ISZERO
000047d6: PUSH2 0x47de
000047d9: JUMPI
000047da: PUSH1 0x00
000047dc: DUP1
000047dd: REVERT
000047de: JUMPDEST
000047df: PUSH1 0x40
000047e1: DUP10
000047e2: ADD
000047e3: SWAP6
000047e4: POP
000047e5: PUSH1 0xc0
000047e7: DUP10
000047e8: ADD
000047e9: CALLDATALOAD
000047ea: SWAP3
000047eb: POP
000047ec: DUP1
000047ed: DUP4
000047ee: GT
000047ef: ISZERO
000047f0: PUSH2 0x47f8
000047f3: JUMPI
000047f4: PUSH1 0x00
000047f6: DUP1
000047f7: REVERT
000047f8: JUMPDEST
000047f9: DUP3
000047fa: DUP10
000047fb: ADD
000047fc: SWAP3
000047fd: POP
000047fe: DUP10
000047ff: PUSH1 0x1f
00004801: DUP5
00004802: ADD
00004803: SLT
00004804: PUSH2 0x480c
00004807: JUMPI
00004808: PUSH1 0x00
0000480a: DUP1
0000480b: REVERT
0000480c: JUMPDEST
0000480d: DUP3
0000480e: CALLDATALOAD
0000480f: SWAP2
00004810: POP
00004811: DUP1
00004812: DUP3
00004813: GT
00004814: ISZERO
00004815: PUSH2 0x481d
00004818: JUMPI
00004819: PUSH1 0x00
0000481b: DUP1
0000481c: REVERT
0000481d: JUMPDEST
0000481e: POP
0000481f: DUP9
00004820: PUSH1 0x20
00004822: DUP3
00004823: PUSH1 0x05
00004825: SHL
00004826: DUP5
00004827: ADD
00004828: ADD
00004829: GT
0000482a: ISZERO
0000482b: PUSH2 0x4833
0000482e: JUMPI
0000482f: PUSH1 0x00
00004831: DUP1
00004832: REVERT
00004833: JUMPDEST
00004834: SWAP6
00004835: SWAP9
00004836: SWAP5
00004837: SWAP8
00004838: POP
00004839: SWAP3
0000483a: SWAP6
0000483b: POP
0000483c: POP
0000483d: POP
0000483e: PUSH1 0x20
00004840: ADD
00004841: SWAP2
00004842: SWAP1
00004843: JUMP
00004844: JUMPDEST
00004845: PUSH1 0x00
00004847: PUSH1 0x20
00004849: DUP3
0000484a: DUP5
0000484b: SUB
0000484c: SLT
0000484d: ISZERO
0000484e: PUSH2 0x4856
00004851: JUMPI
00004852: PUSH1 0x00
00004854: DUP1
00004855: REVERT
00004856: JUMPDEST
00004857: POP
00004858: CALLDATALOAD
00004859: SWAP2
0000485a: SWAP1
0000485b: POP
0000485c: JUMP
0000485d: JUMPDEST
0000485e: PUSH1 0x00
00004860: JUMPDEST
00004861: DUP4
00004862: DUP2
00004863: LT
00004864: ISZERO
00004865: PUSH2 0x4878
00004868: JUMPI
00004869: DUP2
0000486a: DUP2
0000486b: ADD
0000486c: MLOAD
0000486d: DUP4
0000486e: DUP3
0000486f: ADD
00004870: MSTORE
00004871: PUSH1 0x20
00004873: ADD
00004874: PUSH2 0x4860
00004877: JUMP
00004878: JUMPDEST
00004879: DUP4
0000487a: DUP2
0000487b: GT
0000487c: ISZERO
0000487d: PUSH2 0x0b54
00004880: JUMPI
00004881: POP
00004882: POP
00004883: PUSH1 0x00
00004885: SWAP2
00004886: ADD
00004887: MSTORE
00004888: JUMP
00004889: JUMPDEST
0000488a: PUSH1 0x00
0000488c: DUP2
0000488d: MLOAD
0000488e: DUP1
0000488f: DUP5
00004890: MSTORE
00004891: PUSH2 0x48a1
00004894: DUP2
00004895: PUSH1 0x20
00004897: DUP7
00004898: ADD
00004899: PUSH1 0x20
0000489b: DUP7
0000489c: ADD
0000489d: PUSH2 0x485d
000048a0: JUMP
000048a1: JUMPDEST
000048a2: PUSH1 0x1f
000048a4: ADD
000048a5: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0
000048c6: AND
000048c7: SWAP3
000048c8: SWAP1
000048c9: SWAP3
000048ca: ADD
000048cb: PUSH1 0x20
000048cd: ADD
000048ce: SWAP3
000048cf: SWAP2
000048d0: POP
000048d1: POP
000048d2: JUMP
000048d3: JUMPDEST
000048d4: PUSH1 0x20
000048d6: DUP2
000048d7: MSTORE
000048d8: PUSH1 0x00
000048da: PUSH2 0x2748
000048dd: PUSH1 0x20
000048df: DUP4
000048e0: ADD
000048e1: DUP5
000048e2: PUSH2 0x4889
000048e5: JUMP
000048e6: JUMPDEST
000048e7: PUSH1 0x00
000048e9: DUP1
000048ea: PUSH1 0x40
000048ec: DUP4
000048ed: DUP6
000048ee: SUB
000048ef: SLT
000048f0: ISZERO
000048f1: PUSH2 0x48f9
000048f4: JUMPI
000048f5: PUSH1 0x00
000048f7: DUP1
000048f8: REVERT
000048f9: JUMPDEST
000048fa: DUP3
000048fb: CALLDATALOAD
000048fc: SWAP2
000048fd: POP
000048fe: PUSH1 0x20
00004900: DUP4
00004901: ADD
00004902: CALLDATALOAD
00004903: PUSH2 0x4740
00004906: DUP2
00004907: PUSH2 0x459a
0000490a: JUMP
0000490b: JUMPDEST
0000490c: PUSH4 0xffffffff
00004911: DUP2
00004912: AND
00004913: DUP2
00004914: EQ
00004915: PUSH2 0x1e3f
00004918: JUMPI
00004919: PUSH1 0x00
0000491b: DUP1
0000491c: REVERT
0000491d: JUMPDEST
0000491e: PUSH1 0x00
00004920: PUSH1 0x20
00004922: DUP3
00004923: DUP5
00004924: SUB
00004925: SLT
00004926: ISZERO
00004927: PUSH2 0x492f
0000492a: JUMPI
0000492b: PUSH1 0x00
0000492d: DUP1
0000492e: REVERT
0000492f: JUMPDEST
00004930: DUP2
00004931: CALLDATALOAD
00004932: PUSH2 0x2748
00004935: DUP2
00004936: PUSH2 0x490b
00004939: JUMP
0000493a: JUMPDEST
0000493b: PUSH1 0x00
0000493d: PUSH1 0x20
0000493f: DUP3
00004940: DUP5
00004941: SUB
00004942: SLT
00004943: ISZERO
00004944: PUSH2 0x494c
00004947: JUMPI
00004948: PUSH1 0x00
0000494a: DUP1
0000494b: REVERT
0000494c: JUMPDEST
0000494d: DUP2
0000494e: CALLDATALOAD
0000494f: PUSH8 0xffffffffffffffff
00004958: DUP2
00004959: GT
0000495a: ISZERO
0000495b: PUSH2 0x4963
0000495e: JUMPI
0000495f: PUSH1 0x00
00004961: DUP1
00004962: REVERT
00004963: JUMPDEST
00004964: PUSH2 0x496f
00004967: DUP5
00004968: DUP3
00004969: DUP6
0000496a: ADD
0000496b: PUSH2 0x464a
0000496e: JUMP
0000496f: JUMPDEST
00004970: SWAP5
00004971: SWAP4
00004972: POP
00004973: POP
00004974: POP
00004975: POP
00004976: JUMP
00004977: JUMPDEST
00004978: PUSH1 0x00
0000497a: DUP1
0000497b: PUSH1 0x00
0000497d: DUP1
0000497e: PUSH1 0x80
00004980: DUP6
00004981: DUP8
00004982: SUB
00004983: SLT
00004984: ISZERO
00004985: PUSH2 0x498d
00004988: JUMPI
00004989: PUSH1 0x00
0000498b: DUP1
0000498c: REVERT
0000498d: JUMPDEST
0000498e: DUP5
0000498f: CALLDATALOAD
00004990: PUSH2 0x4998
00004993: DUP2
00004994: PUSH2 0x459a
00004997: JUMP
00004998: JUMPDEST
00004999: SWAP4
0000499a: POP
0000499b: PUSH1 0x20
0000499d: DUP6
0000499e: ADD
0000499f: CALLDATALOAD
000049a0: PUSH2 0x49a8
000049a3: DUP2
000049a4: PUSH2 0x459a
000049a7: JUMP
000049a8: JUMPDEST
000049a9: SWAP3
000049aa: POP
000049ab: PUSH1 0x40
000049ad: DUP6
000049ae: ADD
000049af: CALLDATALOAD
000049b0: PUSH2 0x49b8
000049b3: DUP2
000049b4: PUSH2 0x459a
000049b7: JUMP
000049b8: JUMPDEST
000049b9: SWAP2
000049ba: POP
000049bb: PUSH1 0x60
000049bd: DUP6
000049be: ADD
000049bf: CALLDATALOAD
000049c0: PUSH2 0x49c8
000049c3: DUP2
000049c4: PUSH2 0x490b
000049c7: JUMP
000049c8: JUMPDEST
000049c9: SWAP4
000049ca: SWAP7
000049cb: SWAP3
000049cc: SWAP6
000049cd: POP
000049ce: SWAP1
000049cf: SWAP4
000049d0: POP
000049d1: POP
000049d2: JUMP
000049d3: JUMPDEST
000049d4: PUSH8 0xffffffffffffffff
000049dd: DUP2
000049de: AND
000049df: DUP2
000049e0: EQ
000049e1: PUSH2 0x1e3f
000049e4: JUMPI
000049e5: PUSH1 0x00
000049e7: DUP1
000049e8: REVERT
000049e9: JUMPDEST
000049ea: PUSH1 0x00
000049ec: PUSH1 0x20
000049ee: DUP3
000049ef: DUP5
000049f0: SUB
000049f1: SLT
000049f2: ISZERO
000049f3: PUSH2 0x49fb
000049f6: JUMPI
000049f7: PUSH1 0x00
000049f9: DUP1
000049fa: REVERT
000049fb: JUMPDEST
000049fc: DUP2
000049fd: CALLDATALOAD
000049fe: PUSH2 0x2748
00004a01: DUP2
00004a02: PUSH2 0x49d3
00004a05: JUMP
00004a06: JUMPDEST
00004a07: PUSH1 0x00
00004a09: DUP1
00004a0a: PUSH1 0x40
00004a0c: DUP4
00004a0d: DUP6
00004a0e: SUB
00004a0f: SLT
00004a10: ISZERO
00004a11: PUSH2 0x4a19
00004a14: JUMPI
00004a15: PUSH1 0x00
00004a17: DUP1
00004a18: REVERT
00004a19: JUMPDEST
00004a1a: POP
00004a1b: POP
00004a1c: DUP1
00004a1d: CALLDATALOAD
00004a1e: SWAP3
00004a1f: PUSH1 0x20
00004a21: SWAP1
00004a22: SWAP2
00004a23: ADD
00004a24: CALLDATALOAD
00004a25: SWAP2
00004a26: POP
00004a27: JUMP
00004a28: JUMPDEST
00004a29: DUP1
00004a2a: ISZERO
00004a2b: ISZERO
00004a2c: DUP2
00004a2d: EQ
00004a2e: PUSH2 0x1e3f
00004a31: JUMPI
00004a32: PUSH1 0x00
00004a34: DUP1
00004a35: REVERT
00004a36: JUMPDEST
00004a37: PUSH1 0x00
00004a39: DUP1
00004a3a: PUSH1 0x00
00004a3c: DUP1
00004a3d: PUSH1 0x00
00004a3f: PUSH1 0xa0
00004a41: DUP7
00004a42: DUP9
00004a43: SUB
00004a44: SLT
00004a45: ISZERO
00004a46: PUSH2 0x4a4e
00004a49: JUMPI
00004a4a: PUSH1 0x00
00004a4c: DUP1
00004a4d: REVERT
00004a4e: JUMPDEST
00004a4f: DUP6
00004a50: CALLDATALOAD
00004a51: PUSH2 0x4a59
00004a54: DUP2
00004a55: PUSH2 0x459a
00004a58: JUMP
00004a59: JUMPDEST
00004a5a: SWAP5
00004a5b: POP
00004a5c: PUSH1 0x20
00004a5e: DUP7
00004a5f: ADD
00004a60: CALLDATALOAD
00004a61: SWAP4
00004a62: POP
00004a63: PUSH1 0x40
00004a65: DUP7
00004a66: ADD
00004a67: CALLDATALOAD
00004a68: PUSH2 0x4a70
00004a6b: DUP2
00004a6c: PUSH2 0x49d3
00004a6f: JUMP
00004a70: JUMPDEST
00004a71: SWAP3
00004a72: POP
00004a73: PUSH1 0x60
00004a75: DUP7
00004a76: ADD
00004a77: CALLDATALOAD
00004a78: PUSH2 0x4a80
00004a7b: DUP2
00004a7c: PUSH2 0x4a28
00004a7f: JUMP
00004a80: JUMPDEST
00004a81: SWAP2
00004a82: POP
00004a83: PUSH1 0x80
00004a85: DUP7
00004a86: ADD
00004a87: CALLDATALOAD
00004a88: PUSH8 0xffffffffffffffff
00004a91: DUP2
00004a92: GT
00004a93: ISZERO
00004a94: PUSH2 0x4a9c
00004a97: JUMPI
00004a98: PUSH1 0x00
00004a9a: DUP1
00004a9b: REVERT
00004a9c: JUMPDEST
00004a9d: PUSH2 0x4aa8
00004aa0: DUP9
00004aa1: DUP3
00004aa2: DUP10
00004aa3: ADD
00004aa4: PUSH2 0x45bc
00004aa7: JUMP
00004aa8: JUMPDEST
00004aa9: SWAP2
00004aaa: POP
00004aab: POP
00004aac: SWAP3
00004aad: SWAP6
00004aae: POP
00004aaf: SWAP3
00004ab0: SWAP6
00004ab1: SWAP1
00004ab2: SWAP4
00004ab3: POP
00004ab4: JUMP
00004ab5: JUMPDEST
00004ab6: DUP6
00004ab7: DUP2
00004ab8: MSTORE
00004ab9: DUP5
00004aba: PUSH1 0x20
00004abc: DUP3
00004abd: ADD
00004abe: MSTORE
00004abf: PUSH32 0xffffffffffffffff000000000000000000000000000000000000000000000000
00004ae0: DUP5
00004ae1: PUSH1 0xc0
00004ae3: SHL
00004ae4: AND
00004ae5: PUSH1 0x40
00004ae7: DUP3
00004ae8: ADD
00004ae9: MSTORE
00004aea: DUP3
00004aeb: ISZERO
00004aec: ISZERO
00004aed: PUSH1 0xf8
00004aef: SHL
00004af0: PUSH1 0x48
00004af2: DUP3
00004af3: ADD
00004af4: MSTORE
00004af5: PUSH1 0x00
00004af7: DUP3
00004af8: MLOAD
00004af9: PUSH2 0x4b09
00004afc: DUP2
00004afd: PUSH1 0x49
00004aff: DUP6
00004b00: ADD
00004b01: PUSH1 0x20
00004b03: DUP8
00004b04: ADD
00004b05: PUSH2 0x485d
00004b08: JUMP
00004b09: JUMPDEST
00004b0a: SWAP2
00004b0b: SWAP1
00004b0c: SWAP2
00004b0d: ADD
00004b0e: PUSH1 0x49
00004b10: ADD
00004b11: SWAP7
00004b12: SWAP6
00004b13: POP
00004b14: POP
00004b15: POP
00004b16: POP
00004b17: POP
00004b18: POP
00004b19: JUMP
00004b1a: JUMPDEST
00004b1b: PUSH1 0x00
00004b1d: PUSH1 0x20
00004b1f: DUP3
00004b20: DUP5
00004b21: SUB
00004b22: SLT
00004b23: ISZERO
00004b24: PUSH2 0x4b2c
00004b27: JUMPI
00004b28: PUSH1 0x00
00004b2a: DUP1
00004b2b: REVERT
00004b2c: JUMPDEST
00004b2d: DUP2
00004b2e: MLOAD
00004b2f: PUSH2 0x2748
00004b32: DUP2
00004b33: PUSH2 0x459a
00004b36: JUMP
00004b37: JUMPDEST
00004b38: PUSH1 0x00
00004b3a: DUP1
00004b3b: PUSH1 0x00
00004b3d: PUSH1 0x60
00004b3f: DUP5
00004b40: DUP7
00004b41: SUB
00004b42: SLT
00004b43: ISZERO
00004b44: PUSH2 0x4b4c
00004b47: JUMPI
00004b48: PUSH1 0x00
00004b4a: DUP1
00004b4b: REVERT
00004b4c: JUMPDEST
00004b4d: DUP4
00004b4e: MLOAD
00004b4f: PUSH2 0x4b57
00004b52: DUP2
00004b53: PUSH2 0x490b
00004b56: JUMP
00004b57: JUMPDEST
00004b58: PUSH1 0x20
00004b5a: DUP6
00004b5b: ADD
00004b5c: MLOAD
00004b5d: SWAP1
00004b5e: SWAP4
00004b5f: POP
00004b60: PUSH2 0x4b68
00004b63: DUP2
00004b64: PUSH2 0x49d3
00004b67: JUMP
00004b68: JUMPDEST
00004b69: PUSH1 0x40
00004b6b: DUP6
00004b6c: ADD
00004b6d: MLOAD
00004b6e: SWAP1
00004b6f: SWAP3
00004b70: POP
00004b71: PUSH2 0x4b79
00004b74: DUP2
00004b75: PUSH2 0x459a
00004b78: JUMP
00004b79: JUMPDEST
00004b7a: DUP1
00004b7b: SWAP2
00004b7c: POP
00004b7d: POP
00004b7e: SWAP3
00004b7f: POP
00004b80: SWAP3
00004b81: POP
00004b82: SWAP3
00004b83: JUMP
00004b84: JUMPDEST
00004b85: PUSH1 0x00
00004b87: PUSH1 0x20
00004b89: DUP3
00004b8a: DUP5
00004b8b: SUB
00004b8c: SLT
00004b8d: ISZERO
00004b8e: PUSH2 0x4b96
00004b91: JUMPI
00004b92: PUSH1 0x00
00004b94: DUP1
00004b95: REVERT
00004b96: JUMPDEST
00004b97: POP
00004b98: MLOAD
00004b99: SWAP2
00004b9a: SWAP1
00004b9b: POP
00004b9c: JUMP
00004b9d: JUMPDEST
00004b9e: PUSH1 0x00
00004ba0: PUSH1 0x80
00004ba2: DUP3
00004ba3: DUP5
00004ba4: SUB
00004ba5: SLT
00004ba6: ISZERO
00004ba7: PUSH2 0x4baf
00004baa: JUMPI
00004bab: PUSH1 0x00
00004bad: DUP1
00004bae: REVERT
00004baf: JUMPDEST
00004bb0: PUSH1 0x40
00004bb2: MLOAD
00004bb3: PUSH1 0x80
00004bb5: DUP2
00004bb6: ADD
00004bb7: DUP2
00004bb8: DUP2
00004bb9: LT
00004bba: PUSH8 0xffffffffffffffff
00004bc3: DUP3
00004bc4: GT
00004bc5: OR
00004bc6: ISZERO
00004bc7: PUSH2 0x4bd2
00004bca: JUMPI
00004bcb: PUSH2 0x4bd2
00004bce: PUSH2 0x451c
00004bd1: JUMP
00004bd2: JUMPDEST
00004bd3: DUP1
00004bd4: PUSH1 0x40
00004bd6: MSTORE
00004bd7: POP
00004bd8: DUP3
00004bd9: CALLDATALOAD
00004bda: DUP2
00004bdb: MSTORE
00004bdc: PUSH1 0x20
00004bde: DUP4
00004bdf: ADD
00004be0: CALLDATALOAD
00004be1: PUSH1 0x20
00004be3: DUP3
00004be4: ADD
00004be5: MSTORE
00004be6: PUSH1 0x40
00004be8: DUP4
00004be9: ADD
00004bea: CALLDATALOAD
00004beb: PUSH1 0x40
00004bed: DUP3
00004bee: ADD
00004bef: MSTORE
00004bf0: PUSH1 0x60
00004bf2: DUP4
00004bf3: ADD
00004bf4: CALLDATALOAD
00004bf5: PUSH1 0x60
00004bf7: DUP3
00004bf8: ADD
00004bf9: MSTORE
00004bfa: DUP1
00004bfb: SWAP2
00004bfc: POP
00004bfd: POP
00004bfe: SWAP3
00004bff: SWAP2
00004c00: POP
00004c01: POP
00004c02: JUMP
00004c03: JUMPDEST
00004c04: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00004c25: PUSH1 0x00
00004c27: MSTORE
00004c28: PUSH1 0x21
00004c2a: PUSH1 0x04
00004c2c: MSTORE
00004c2d: PUSH1 0x24
00004c2f: PUSH1 0x00
00004c31: REVERT
00004c32: JUMPDEST
00004c33: PUSH1 0x00
00004c35: PUSH1 0x20
00004c37: DUP3
00004c38: DUP5
00004c39: SUB
00004c3a: SLT
00004c3b: ISZERO
00004c3c: PUSH2 0x4c44
00004c3f: JUMPI
00004c40: PUSH1 0x00
00004c42: DUP1
00004c43: REVERT
00004c44: JUMPDEST
00004c45: DUP2
00004c46: MLOAD
00004c47: PUSH1 0x03
00004c49: DUP2
00004c4a: LT
00004c4b: PUSH2 0x2748
00004c4e: JUMPI
00004c4f: PUSH1 0x00
00004c51: DUP1
00004c52: REVERT
00004c53: JUMPDEST
00004c54: PUSH1 0x00
00004c56: PUSH8 0xffffffffffffffff
00004c5f: DUP1
00004c60: DUP5
00004c61: GT
00004c62: ISZERO
00004c63: PUSH2 0x4c6e
00004c66: JUMPI
00004c67: PUSH2 0x4c6e
00004c6a: PUSH2 0x451c
00004c6d: JUMP
00004c6e: JUMPDEST
00004c6f: DUP4
00004c70: PUSH1 0x05
00004c72: SHL
00004c73: PUSH1 0x20
00004c75: PUSH2 0x4c7f
00004c78: DUP2
00004c79: DUP4
00004c7a: ADD
00004c7b: PUSH2 0x454b
00004c7e: JUMP
00004c7f: JUMPDEST
00004c80: DUP7
00004c81: DUP2
00004c82: MSTORE
00004c83: SWAP2
00004c84: DUP6
00004c85: ADD
00004c86: SWAP2
00004c87: DUP2
00004c88: DUP2
00004c89: ADD
00004c8a: SWAP1
00004c8b: CALLDATASIZE
00004c8c: DUP5
00004c8d: GT
00004c8e: ISZERO
00004c8f: PUSH2 0x4c97
00004c92: JUMPI
00004c93: PUSH1 0x00
00004c95: DUP1
00004c96: REVERT
00004c97: JUMPDEST
00004c98: DUP7
00004c99: JUMPDEST
00004c9a: DUP5
00004c9b: DUP2
00004c9c: LT
00004c9d: ISZERO
00004c9e: PUSH2 0x4ccb
00004ca1: JUMPI
00004ca2: DUP1
00004ca3: CALLDATALOAD
00004ca4: DUP7
00004ca5: DUP2
00004ca6: GT
00004ca7: ISZERO
00004ca8: PUSH2 0x4cb1
00004cab: JUMPI
00004cac: PUSH1 0x00
00004cae: DUP1
00004caf: DUP2
00004cb0: REVERT
00004cb1: JUMPDEST
00004cb2: PUSH2 0x4cbd
00004cb5: CALLDATASIZE
00004cb6: DUP3
00004cb7: DUP12
00004cb8: ADD
00004cb9: PUSH2 0x45bc
00004cbc: JUMP
00004cbd: JUMPDEST
00004cbe: DUP5
00004cbf: MSTORE
00004cc0: POP
00004cc1: SWAP2
00004cc2: DUP4
00004cc3: ADD
00004cc4: SWAP2
00004cc5: DUP4
00004cc6: ADD
00004cc7: PUSH2 0x4c99
00004cca: JUMP
00004ccb: JUMPDEST
00004ccc: POP
00004ccd: SWAP8
00004cce: SWAP7
00004ccf: POP
00004cd0: POP
00004cd1: POP
00004cd2: POP
00004cd3: POP
00004cd4: POP
00004cd5: POP
00004cd6: JUMP
00004cd7: JUMPDEST
00004cd8: PUSH1 0x00
00004cda: PUSH1 0x20
00004cdc: DUP3
00004cdd: DUP5
00004cde: SUB
00004cdf: SLT
00004ce0: ISZERO
00004ce1: PUSH2 0x4ce9
00004ce4: JUMPI
00004ce5: PUSH1 0x00
00004ce7: DUP1
00004ce8: REVERT
00004ce9: JUMPDEST
00004cea: DUP2
00004ceb: MLOAD
00004cec: PUSH2 0x2748
00004cef: DUP2
00004cf0: PUSH2 0x4a28
00004cf3: JUMP
00004cf4: JUMPDEST
00004cf5: PUSH1 0x00
00004cf7: PUSH1 0x20
00004cf9: DUP3
00004cfa: DUP5
00004cfb: SUB
00004cfc: SLT
00004cfd: ISZERO
00004cfe: PUSH2 0x4d06
00004d01: JUMPI
00004d02: PUSH1 0x00
00004d04: DUP1
00004d05: REVERT
00004d06: JUMPDEST
00004d07: DUP2
00004d08: MLOAD
00004d09: PUSH2 0x2748
00004d0c: DUP2
00004d0d: PUSH2 0x49d3
00004d10: JUMP
00004d11: JUMPDEST
00004d12: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00004d33: PUSH1 0x00
00004d35: MSTORE
00004d36: PUSH1 0x11
00004d38: PUSH1 0x04
00004d3a: MSTORE
00004d3b: PUSH1 0x24
00004d3d: PUSH1 0x00
00004d3f: REVERT
00004d40: JUMPDEST
00004d41: PUSH1 0x00
00004d43: DUP3
00004d44: DUP3
00004d45: LT
00004d46: ISZERO
00004d47: PUSH2 0x4d52
00004d4a: JUMPI
00004d4b: PUSH2 0x4d52
00004d4e: PUSH2 0x4d11
00004d51: JUMP
00004d52: JUMPDEST
00004d53: POP
00004d54: SUB
00004d55: SWAP1
00004d56: JUMP
00004d57: JUMPDEST
00004d58: PUSH1 0x00
00004d5a: PUSH1 0x20
00004d5c: DUP3
00004d5d: DUP5
00004d5e: SUB
00004d5f: SLT
00004d60: ISZERO
00004d61: PUSH2 0x4d69
00004d64: JUMPI
00004d65: PUSH1 0x00
00004d67: DUP1
00004d68: REVERT
00004d69: JUMPDEST
00004d6a: DUP2
00004d6b: MLOAD
00004d6c: PUSH2 0x2748
00004d6f: DUP2
00004d70: PUSH2 0x490b
00004d73: JUMP
00004d74: JUMPDEST
00004d75: PUSH1 0x00
00004d77: PUSH8 0xffffffffffffffff
00004d80: DUP1
00004d81: DUP4
00004d82: AND
00004d83: DUP2
00004d84: DUP6
00004d85: AND
00004d86: DUP2
00004d87: DUP4
00004d88: DIV
00004d89: DUP2
00004d8a: GT
00004d8b: DUP3
00004d8c: ISZERO
00004d8d: ISZERO
00004d8e: AND
00004d8f: ISZERO
00004d90: PUSH2 0x4d9b
00004d93: JUMPI
00004d94: PUSH2 0x4d9b
00004d97: PUSH2 0x4d11
00004d9a: JUMP
00004d9b: JUMPDEST
00004d9c: MUL
00004d9d: SWAP5
00004d9e: SWAP4
00004d9f: POP
00004da0: POP
00004da1: POP
00004da2: POP
00004da3: JUMP
00004da4: JUMPDEST
00004da5: PUSH1 0x00
00004da7: PUSH8 0xffffffffffffffff
00004db0: DUP1
00004db1: DUP4
00004db2: AND
00004db3: DUP2
00004db4: DUP6
00004db5: AND
00004db6: DUP1
00004db7: DUP4
00004db8: SUB
00004db9: DUP3
00004dba: GT
00004dbb: ISZERO
00004dbc: PUSH2 0x4dc7
00004dbf: JUMPI
00004dc0: PUSH2 0x4dc7
00004dc3: PUSH2 0x4d11
00004dc6: JUMP
00004dc7: JUMPDEST
00004dc8: ADD
00004dc9: SWAP5
00004dca: SWAP4
00004dcb: POP
00004dcc: POP
00004dcd: POP
00004dce: POP
00004dcf: JUMP
00004dd0: JUMPDEST
00004dd1: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00004df2: PUSH1 0x00
00004df4: MSTORE
00004df5: PUSH1 0x12
00004df7: PUSH1 0x04
00004df9: MSTORE
00004dfa: PUSH1 0x24
00004dfc: PUSH1 0x00
00004dfe: REVERT
00004dff: JUMPDEST
00004e00: PUSH1 0x00
00004e02: DUP3
00004e03: PUSH2 0x4e0e
00004e06: JUMPI
00004e07: PUSH2 0x4e0e
00004e0a: PUSH2 0x4dd0
00004e0d: JUMP
00004e0e: JUMPDEST
00004e0f: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00004e30: DUP4
00004e31: EQ
00004e32: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000
00004e53: DUP4
00004e54: EQ
00004e55: AND
00004e56: ISZERO
00004e57: PUSH2 0x4e62
00004e5a: JUMPI
00004e5b: PUSH2 0x4e62
00004e5e: PUSH2 0x4d11
00004e61: JUMP
00004e62: JUMPDEST
00004e63: POP
00004e64: SDIV
00004e65: SWAP1
00004e66: JUMP
00004e67: JUMPDEST
00004e68: PUSH1 0x00
00004e6a: DUP1
00004e6b: DUP4
00004e6c: SLT
00004e6d: DUP4
00004e6e: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000
00004e8f: ADD
00004e90: DUP4
00004e91: SLT
00004e92: DUP2
00004e93: ISZERO
00004e94: AND
00004e95: ISZERO
00004e96: PUSH2 0x4ea1
00004e99: JUMPI
00004e9a: PUSH2 0x4ea1
00004e9d: PUSH2 0x4d11
00004ea0: JUMP
00004ea1: JUMPDEST
00004ea2: DUP4
00004ea3: PUSH32 0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00004ec4: ADD
00004ec5: DUP4
00004ec6: SGT
00004ec7: DUP2
00004ec8: AND
00004ec9: ISZERO
00004eca: PUSH2 0x4ed5
00004ecd: JUMPI
00004ece: PUSH2 0x4ed5
00004ed1: PUSH2 0x4d11
00004ed4: JUMP
00004ed5: JUMPDEST
00004ed6: POP
00004ed7: POP
00004ed8: SUB
00004ed9: SWAP1
00004eda: JUMP
00004edb: JUMPDEST
00004edc: PUSH1 0x00
00004ede: PUSH32 0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00004eff: PUSH1 0x00
00004f01: DUP5
00004f02: SGT
00004f03: PUSH1 0x00
00004f05: DUP5
00004f06: SGT
00004f07: DUP6
00004f08: DUP4
00004f09: DIV
00004f0a: DUP6
00004f0b: GT
00004f0c: DUP3
00004f0d: DUP3
00004f0e: AND
00004f0f: AND
00004f10: ISZERO
00004f11: PUSH2 0x4f1c
00004f14: JUMPI
00004f15: PUSH2 0x4f1c
00004f18: PUSH2 0x4d11
00004f1b: JUMP
00004f1c: JUMPDEST
00004f1d: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000
00004f3e: PUSH1 0x00
00004f40: DUP8
00004f41: SLT
00004f42: DUP7
00004f43: DUP3
00004f44: SDIV
00004f45: DUP9
00004f46: SLT
00004f47: DUP2
00004f48: DUP5
00004f49: AND
00004f4a: AND
00004f4b: ISZERO
00004f4c: PUSH2 0x4f57
00004f4f: JUMPI
00004f50: PUSH2 0x4f57
00004f53: PUSH2 0x4d11
00004f56: JUMP
00004f57: JUMPDEST
00004f58: PUSH1 0x00
00004f5a: DUP8
00004f5b: SLT
00004f5c: SWAP3
00004f5d: POP
00004f5e: DUP8
00004f5f: DUP3
00004f60: SDIV
00004f61: DUP8
00004f62: SLT
00004f63: DUP5
00004f64: DUP5
00004f65: AND
00004f66: AND
00004f67: ISZERO
00004f68: PUSH2 0x4f73
00004f6b: JUMPI
00004f6c: PUSH2 0x4f73
00004f6f: PUSH2 0x4d11
00004f72: JUMP
00004f73: JUMPDEST
00004f74: DUP8
00004f75: DUP6
00004f76: SDIV
00004f77: DUP8
00004f78: SLT
00004f79: DUP2
00004f7a: DUP5
00004f7b: AND
00004f7c: AND
00004f7d: ISZERO
00004f7e: PUSH2 0x4f89
00004f81: JUMPI
00004f82: PUSH2 0x4f89
00004f85: PUSH2 0x4d11
00004f88: JUMP
00004f89: JUMPDEST
00004f8a: POP
00004f8b: POP
00004f8c: POP
00004f8d: SWAP3
00004f8e: SWAP1
00004f8f: SWAP4
00004f90: MUL
00004f91: SWAP4
00004f92: SWAP3
00004f93: POP
00004f94: POP
00004f95: POP
00004f96: JUMP
00004f97: JUMPDEST
00004f98: PUSH1 0x00
00004f9a: DUP1
00004f9b: DUP3
00004f9c: SLT
00004f9d: DUP3
00004f9e: PUSH32 0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00004fbf: SUB
00004fc0: DUP5
00004fc1: SGT
00004fc2: DUP2
00004fc3: ISZERO
00004fc4: AND
00004fc5: ISZERO
00004fc6: PUSH2 0x4fd1
00004fc9: JUMPI
00004fca: PUSH2 0x4fd1
00004fcd: PUSH2 0x4d11
00004fd0: JUMP
00004fd1: JUMPDEST
00004fd2: DUP3
00004fd3: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000
00004ff4: SUB
00004ff5: DUP5
00004ff6: SLT
00004ff7: DUP2
00004ff8: AND
00004ff9: ISZERO
00004ffa: PUSH2 0x5005
00004ffd: JUMPI
00004ffe: PUSH2 0x5005
00005001: PUSH2 0x4d11
00005004: JUMP
00005005: JUMPDEST
00005006: POP
00005007: POP
00005008: ADD
00005009: SWAP1
0000500a: JUMP
0000500b: JUMPDEST
0000500c: PUSH1 0x00
0000500e: DUP2
0000500f: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00005030: DIV
00005031: DUP4
00005032: GT
00005033: DUP3
00005034: ISZERO
00005035: ISZERO
00005036: AND
00005037: ISZERO
00005038: PUSH2 0x5043
0000503b: JUMPI
0000503c: PUSH2 0x5043
0000503f: PUSH2 0x4d11
00005042: JUMP
00005043: JUMPDEST
00005044: POP
00005045: MUL
00005046: SWAP1
00005047: JUMP
00005048: JUMPDEST
00005049: PUSH1 0x00
0000504b: DUP3
0000504c: PUSH2 0x5057
0000504f: JUMPI
00005050: PUSH2 0x5057
00005053: PUSH2 0x4dd0
00005056: JUMP
00005057: JUMPDEST
00005058: POP
00005059: DIV
0000505a: SWAP1
0000505b: JUMP
0000505c: JUMPDEST
0000505d: DUP7
0000505e: DUP2
0000505f: MSTORE
00005060: PUSH1 0x00
00005062: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00005077: DUP1
00005078: DUP9
00005079: AND
0000507a: PUSH1 0x20
0000507c: DUP5
0000507d: ADD
0000507e: MSTORE
0000507f: DUP1
00005080: DUP8
00005081: AND
00005082: PUSH1 0x40
00005084: DUP5
00005085: ADD
00005086: MSTORE
00005087: POP
00005088: DUP5
00005089: PUSH1 0x60
0000508b: DUP4
0000508c: ADD
0000508d: MSTORE
0000508e: DUP4
0000508f: PUSH1 0x80
00005091: DUP4
00005092: ADD
00005093: MSTORE
00005094: PUSH1 0xc0
00005096: PUSH1 0xa0
00005098: DUP4
00005099: ADD
0000509a: MSTORE
0000509b: PUSH2 0x50a7
0000509e: PUSH1 0xc0
000050a0: DUP4
000050a1: ADD
000050a2: DUP5
000050a3: PUSH2 0x4889
000050a6: JUMP
000050a7: JUMPDEST
000050a8: SWAP9
000050a9: SWAP8
000050aa: POP
000050ab: POP
000050ac: POP
000050ad: POP
000050ae: POP
000050af: POP
000050b0: POP
000050b1: POP
000050b2: JUMP
000050b3: JUMPDEST
000050b4: DUP1
000050b5: MLOAD
000050b6: PUSH1 0xff
000050b8: DUP2
000050b9: AND
000050ba: DUP2
000050bb: EQ
000050bc: PUSH2 0x50c4
000050bf: JUMPI
000050c0: PUSH1 0x00
000050c2: DUP1
000050c3: REVERT
000050c4: JUMPDEST
000050c5: SWAP2
000050c6: SWAP1
000050c7: POP
000050c8: JUMP
000050c9: JUMPDEST
000050ca: PUSH1 0x00
000050cc: PUSH1 0xc0
000050ce: DUP3
000050cf: DUP5
000050d0: SUB
000050d1: SLT
000050d2: ISZERO
000050d3: PUSH2 0x50db
000050d6: JUMPI
000050d7: PUSH1 0x00
000050d9: DUP1
000050da: REVERT
000050db: JUMPDEST
000050dc: PUSH1 0x40
000050de: MLOAD
000050df: PUSH1 0xc0
000050e1: DUP2
000050e2: ADD
000050e3: DUP2
000050e4: DUP2
000050e5: LT
000050e6: PUSH8 0xffffffffffffffff
000050ef: DUP3
000050f0: GT
000050f1: OR
000050f2: ISZERO
000050f3: PUSH2 0x50fe
000050f6: JUMPI
000050f7: PUSH2 0x50fe
000050fa: PUSH2 0x451c
000050fd: JUMP
000050fe: JUMPDEST
000050ff: PUSH1 0x40
00005101: MSTORE
00005102: DUP3
00005103: MLOAD
00005104: PUSH2 0x510c
00005107: DUP2
00005108: PUSH2 0x490b
0000510b: JUMP
0000510c: JUMPDEST
0000510d: DUP2
0000510e: MSTORE
0000510f: PUSH2 0x511a
00005112: PUSH1 0x20
00005114: DUP5
00005115: ADD
00005116: PUSH2 0x50b3
00005119: JUMP
0000511a: JUMPDEST
0000511b: PUSH1 0x20
0000511d: DUP3
0000511e: ADD
0000511f: MSTORE
00005120: PUSH2 0x512b
00005123: PUSH1 0x40
00005125: DUP5
00005126: ADD
00005127: PUSH2 0x50b3
0000512a: JUMP
0000512b: JUMPDEST
0000512c: PUSH1 0x40
0000512e: DUP3
0000512f: ADD
00005130: MSTORE
00005131: PUSH1 0x60
00005133: DUP4
00005134: ADD
00005135: MLOAD
00005136: PUSH2 0x513e
00005139: DUP2
0000513a: PUSH2 0x490b
0000513d: JUMP
0000513e: JUMPDEST
0000513f: PUSH1 0x60
00005141: DUP3
00005142: ADD
00005143: MSTORE
00005144: PUSH1 0x80
00005146: DUP4
00005147: ADD
00005148: MLOAD
00005149: PUSH2 0x5151
0000514c: DUP2
0000514d: PUSH2 0x490b
00005150: JUMP
00005151: JUMPDEST
00005152: PUSH1 0x80
00005154: DUP3
00005155: ADD
00005156: MSTORE
00005157: PUSH1 0xa0
00005159: DUP4
0000515a: ADD
0000515b: MLOAD
0000515c: PUSH16 0xffffffffffffffffffffffffffffffff
0000516d: DUP2
0000516e: AND
0000516f: DUP2
00005170: EQ
00005171: PUSH2 0x5179
00005174: JUMPI
00005175: PUSH1 0x00
00005177: DUP1
00005178: REVERT
00005179: JUMPDEST
0000517a: PUSH1 0xa0
0000517c: DUP3
0000517d: ADD
0000517e: MSTORE
0000517f: SWAP4
00005180: SWAP3
00005181: POP
00005182: POP
00005183: POP
00005184: JUMP
00005185: JUMPDEST
00005186: PUSH1 0x00
00005188: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
000051a9: DUP3
000051aa: SUB
000051ab: PUSH2 0x51b6
000051ae: JUMPI
000051af: PUSH2 0x51b6
000051b2: PUSH2 0x4d11
000051b5: JUMP
000051b6: JUMPDEST
000051b7: POP
000051b8: PUSH1 0x01
000051ba: ADD
000051bb: SWAP1
000051bc: JUMP
000051bd: JUMPDEST
000051be: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
000051df: PUSH1 0x00
000051e1: MSTORE
000051e2: PUSH1 0x32
000051e4: PUSH1 0x04
000051e6: MSTORE
000051e7: PUSH1 0x24
000051e9: PUSH1 0x00
000051eb: REVERT
000051ec: JUMPDEST
000051ed: PUSH1 0x00
000051ef: DUP3
000051f0: NOT
000051f1: DUP3
000051f2: GT
000051f3: ISZERO
000051f4: PUSH2 0x51ff
000051f7: JUMPI
000051f8: PUSH2 0x51ff
000051fb: PUSH2 0x4d11
000051fe: JUMP
000051ff: JUMPDEST
00005200: POP
00005201: ADD
00005202: SWAP1
00005203: JUMP
00005204: JUMPDEST
00005205: PUSH1 0x00
00005207: PUSH1 0xff
00005209: DUP4
0000520a: AND
0000520b: DUP1
0000520c: PUSH2 0x5217
0000520f: JUMPI
00005210: PUSH2 0x5217
00005213: PUSH2 0x4dd0
00005216: JUMP
00005217: JUMPDEST
00005218: DUP1
00005219: PUSH1 0xff
0000521b: DUP5
0000521c: AND
0000521d: MOD
0000521e: SWAP2
0000521f: POP
00005220: POP
00005221: SWAP3
00005222: SWAP2
00005223: POP
00005224: POP
00005225: JUMP
00005226: JUMPDEST
00005227: PUSH1 0x00
00005229: PUSH1 0xff
0000522b: DUP3
0000522c: AND
0000522d: PUSH1 0xff
0000522f: DUP5
00005230: AND
00005231: DUP1
00005232: DUP3
00005233: LT
00005234: ISZERO
00005235: PUSH2 0x5240
00005238: JUMPI
00005239: PUSH2 0x5240
0000523c: PUSH2 0x4d11
0000523f: JUMP
00005240: JUMPDEST
00005241: SWAP1
00005242: SUB
00005243: SWAP4
00005244: SWAP3
00005245: POP
00005246: POP
00005247: POP
00005248: JUMP
00005249: INVALID
0000524a: LOG1
0000524b: PUSH5 0x736f6c6343
00005251: STOP
00005252: ADDMOD
00005253: UNKNOWN(0x0F)
00005254: STOP
00005255: EXP

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high auth detector Authorization based on tx.origin 70 no
view
validation_json
{
    "reason": "missing sink mapping",
    "status": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xbf653a5c",
            "selector": "0xbf653a5c",
            "calldata_variants": [
                "0xbf653a5c",
                "0xbf653a5c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xcff0ab96",
            "selector": "0xcff0ab96",
            "calldata_variants": [
                "0xcff0ab96",
                "0xcff0ab960000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe9e05c42",
            "selector": "0xe9e05c42",
            "calldata_variants": [
                "0xe9e05c42",
                "0xe9e05c420000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2b4e617",
            "selector": "0xf2b4e617",
            "calldata_variants": [
                "0xf2b4e617",
                "0xf2b4e6170000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa35d99df",
            "selector": "0xa35d99df",
            "calldata_variants": [
                "0xa35d99df",
                "0xa35d99df0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa3860f48",
            "selector": "0xa3860f48",
            "calldata_variants": [
                "0xa3860f48",
                "0xa3860f480000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xbb2c727e",
            "selector": "0xbb2c727e",
            "calldata_variants": [
                "0xbb2c727e",
                "0xbb2c727e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8e819e54",
            "selector": "0x8e819e54",
            "calldata_variants": [
                "0x8e819e54",
                "0x8e819e540000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 2103,
            "type": "tx_origin_used"
        },
        {
            "pc": 2844,
            "type": "tx_origin_used"
        },
        {
            "pc": 2101,
            "type": "tx_origin_used"
        },
        {
            "pc": 2841,
            "type": "tx_origin_used"
        },
        {
            "pc": 7238,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 7465,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ]
}
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0xbb0464a92717c4b72a504622f1d36ef6d565136a83109bf413d413a223418f4e
call_targets: 0xe2f826324b2faf99e513d16d266c3f80ae87832b
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xbb0464a92717c4b72a504622f1d36ef6d565136a83109bf413d413a223418f4e",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xe2f826324b2faf99e513d16d266c3f80ae87832b"
    ],
    "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": "0xbf653a5c",
            "selector": "0xbf653a5c",
            "calldata_variants": [
                "0xbf653a5c",
                "0xbf653a5c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xcff0ab96",
            "selector": "0xcff0ab96",
            "calldata_variants": [
                "0xcff0ab96",
                "0xcff0ab960000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe9e05c42",
            "selector": "0xe9e05c42",
            "calldata_variants": [
                "0xe9e05c42",
                "0xe9e05c420000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2b4e617",
            "selector": "0xf2b4e617",
            "calldata_variants": [
                "0xf2b4e617",
                "0xf2b4e6170000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa35d99df",
            "selector": "0xa35d99df",
            "calldata_variants": [
                "0xa35d99df",
                "0xa35d99df0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa3860f48",
            "selector": "0xa3860f48",
            "calldata_variants": [
                "0xa3860f48",
                "0xa3860f480000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xbb2c727e",
            "selector": "0xbb2c727e",
            "calldata_variants": [
                "0xbb2c727e",
                "0xbb2c727e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8e819e54",
            "selector": "0x8e819e54",
            "calldata_variants": [
                "0x8e819e54",
                "0x8e819e540000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 9454,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 1,
    "guards_detected": [
        {
            "pc": 2103,
            "type": "tx_origin_used"
        },
        {
            "pc": 2844,
            "type": "tx_origin_used"
        },
        {
            "pc": 2101,
            "type": "tx_origin_used"
        },
        {
            "pc": 2841,
            "type": "tx_origin_used"
        },
        {
            "pc": 7238,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 7465,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ],
    "untrusted_call_count": 1
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0xbb0464a92717c4b72a504622f1d36ef6d565136a83109bf413d413a223418f4e
call_targets: 0xe2f826324b2faf99e513d16d266c3f80ae87832b
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xbb0464a92717c4b72a504622f1d36ef6d565136a83109bf413d413a223418f4e",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xe2f826324b2faf99e513d16d266c3f80ae87832b"
    ],
    "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": "0xbf653a5c",
            "selector": "0xbf653a5c",
            "calldata_variants": [
                "0xbf653a5c",
                "0xbf653a5c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xcff0ab96",
            "selector": "0xcff0ab96",
            "calldata_variants": [
                "0xcff0ab96",
                "0xcff0ab960000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe9e05c42",
            "selector": "0xe9e05c42",
            "calldata_variants": [
                "0xe9e05c42",
                "0xe9e05c420000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2b4e617",
            "selector": "0xf2b4e617",
            "calldata_variants": [
                "0xf2b4e617",
                "0xf2b4e6170000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa35d99df",
            "selector": "0xa35d99df",
            "calldata_variants": [
                "0xa35d99df",
                "0xa35d99df0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa3860f48",
            "selector": "0xa3860f48",
            "calldata_variants": [
                "0xa3860f48",
                "0xa3860f480000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xbb2c727e",
            "selector": "0xbb2c727e",
            "calldata_variants": [
                "0xbb2c727e",
                "0xbb2c727e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8e819e54",
            "selector": "0x8e819e54",
            "calldata_variants": [
                "0x8e819e54",
                "0x8e819e540000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 9454,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 1,
    "guards_detected": [
        {
            "pc": 2103,
            "type": "tx_origin_used"
        },
        {
            "pc": 2844,
            "type": "tx_origin_used"
        },
        {
            "pc": 2101,
            "type": "tx_origin_used"
        },
        {
            "pc": 2841,
            "type": "tx_origin_used"
        },
        {
            "pc": 7238,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 7465,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ]
}