9a2fcca2-789e-40ec-8c7f-89294bdf69c3
Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?
| ID | Type | Status | Attempts | Heartbeat |
|---|---|---|---|---|
| 31339 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 111032 | artifact.fetch | failed | 1 / 3 | 1 week ago |
| 111033 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 111034 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 111035 | capability.graph | complete | 1 / 3 | 1 week ago |
| 111036 | detector.run | complete | 1 / 3 | 1 week ago |
| 111037 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:1109971] OpenAI Codex v0.77.0 (research preview)
[codex:1109971] --------
[codex:1109971] workdir: /tmp/codex-multi-tzowtrkt
[codex:1109971] model: gpt-5.2-codex
[codex:1109971] provider: openai
[codex:1109971] approval: never
[codex:1109971] sandbox: read-only
[codex:1109971] reasoning effort: xhigh
[codex:1109971] reasoning summaries: auto
[codex:1109971] session id: 019b8081-01f2-7993-8729-ffd887b967cb
[codex:1109971] --------
[codex:1109971] user
[codex:1109971] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:1109971]
[codex:1109971] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:1109971]
[codex:1109971] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:1109971] - Gas inefficiency, code quality, naming, or best practices
[codex:1109971] - Theoretical vulnerabilities without a clear extraction path
[codex:1109971] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:1109971] - Front-running unless it enables theft beyond MEV
[codex:1109971] - DoS, griefing, or issues that don't result in attacker profit
[codex:1109971] - Missing events, view function issues, or informational findings
[codex:1109971]
[codex:1109971] HIGH-VALUE PATTERNS TO HUNT:
[codex:1109971] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:1109971] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:1109971] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:1109971] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:1109971] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:1109971] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:1109971] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:1109971] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:1109971] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:1109971]
[codex:1109971] For each finding, you MUST provide:
[codex:1109971] 1. Exact file and line numbers of vulnerable code
[codex:1109971] 2. Step-by-step exploit transaction sequence
[codex:1109971] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:1109971]
[codex:1109971] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:1109971]
[codex:1109971] Output MUST be valid JSON matching the provided schema.
[codex:1109971] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:1109971] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:1109971] mcp startup: no servers
[codex:1109971]
[codex:1109971] thinking
[codex:1109971] **Locating AUDIT_BUNDLE file**
[codex:1109971] exec
[codex:1109971] /bin/bash -lc ls in /tmp/codex-multi-tzowtrkt succeeded in 5ms:
[codex:1109971] AUDIT_BUNDLE.txt
[codex:1109971] codex-output-schema.json
[codex:1109971] contracts
[codex:1109971]
[codex:1109971] thinking
[codex:1109971] **Reading AUDIT_BUNDLE file**
[codex:1109971] exec
[codex:1109971] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-tzowtrkt succeeded in 5ms:
[codex:1109971] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:1109971]
[codex:1109971] ================================================================================
[codex:1109971] FILE: contracts/src/L1/L2OutputOracle.sol
[codex:1109971] ================================================================================
[codex:1109971] // SPDX-License-Identifier: MIT
[codex:1109971] pragma solidity 0.8.15;
[codex:1109971]
[codex:1109971] import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
[codex:1109971] import { ISemver } from "src/universal/ISemver.sol";
[codex:1109971] import { Types } from "src/libraries/Types.sol";
[codex:1109971] import { Constants } from "src/libraries/Constants.sol";
[codex:1109971]
[codex:1109971] /// @custom:proxied
[codex:1109971] /// @title L2OutputOracle
[codex:1109971] /// @notice The L2OutputOracle contains an array of L2 state outputs, where each output is a
[codex:1109971] /// commitment to the state of the L2 chain. Other contracts like the OptimismPortal use
[codex:1109971] /// these outputs to verify information about the state of L2.
[codex:1109971] contract L2OutputOracle is Initializable, ISemver {
[codex:1109971] /// @notice The number of the first L2 block recorded in this contract.
[codex:1109971]
[codex:1109971] thinking
[codex:1109971] **Identifying relevant contract files**
[codex:1109971] exec
[codex:1109971] /bin/bash -lc 'rg --files' in /tmp/codex-multi-tzowtrkt succeeded in 10ms:
[codex:1109971] codex-output-schema.json
[codex:1109971] AUDIT_BUNDLE.txt
[codex:1109971] contracts/src/universal/ISemver.sol
[codex:1109971] contracts/src/L2/L1Block.sol
[codex:1109971] contracts/src/libraries/GasPayingToken.sol
[codex:1109971] contracts/src/libraries/Types.sol
[codex:1109971] contracts/src/libraries/Predeploys.sol
[codex:1109971] contracts/src/libraries/Encoding.sol
[codex:1109971] contracts/src/libraries/PortalErrors.sol
[codex:1109971] contracts/src/libraries/SafeCall.sol
[codex:1109971] contracts/src/libraries/Storage.sol
[codex:1109971] contracts/src/libraries/Bytes.sol
[codex:1109971] contracts/src/libraries/Burn.sol
[codex:1109971] contracts/src/libraries/Constants.sol
[codex:1109971] contracts/src/vendor/AddressAliasHelper.sol
[codex:1109971] contracts/src/libraries/rlp/RLPWriter.sol
[codex:1109971] contracts/src/libraries/rlp/RLPErrors.sol
[codex:1109971] contracts/src/libraries/rlp/RLPReader.sol
[codex:1109971] contracts/src/libraries/Hashing.sol
[codex:1109971] contracts/src/libraries/trie/MerkleTrie.sol
[codex:1109971]
[codex:1109971] thinking
[codex:1109971] **Examining key contract functions**
[codex:1109971] exec
[codex:1109971] /bin/bash -lc 'rg -n "finalizeWithdrawal|proveWithdrawal|deposit|withdraw" -n contracts/src/L1/OptimismPortal.sol' in /tmp/codex-multi-tzowtrkt succeeded in 7ms:
[codex:1109971] 31: /// @notice Represents a proven withdrawal.
[codex:1109971] 33: /// @custom:field timestamp Timestamp at whcih the withdrawal was proven.
[codex:1109971] 41: /// @notice Version of the deposit event.
[codex:1109971] 44: /// @notice The L2 gas limit set when eth is deposited using the receive() function.
[codex:1109971] 47: /// @notice The L2 gas limit for system deposit transactions that are initiated from L1.
[codex:1109971] 50: /// @notice Address of the L2 account which initiated a withdrawal in this transaction.
[codex:1109971] 52: /// a call to finalizeWithdrawalTransaction.
[codex:1109971] 55: /// @notice A list of withdrawal hashes which have been successfully finalized.
[codex:1109971] 58: /// @notice A mapping of withdrawal hashes to `ProvenWithdrawal` data.
[codex:1109971] 99: /// without triggering a deposit transaction. It also is used to prevent
[codex:1109971] 104: /// @notice Emitted when a transaction is deposited from L1 to L2.
[codex:1109971] 105: /// The parameters of this event are read by the rollup node and used to derive deposit
[codex:1109971] 107: /// @param from Address that triggered the deposit transaction.
[codex:1109971] 108: /// @param to Address that the deposit transaction is directed to.
[codex:1109971] 109: /// @param version Version of this deposit transaction event.
[codex:1109971] 110: /// @param opaqueData ABI encoded deposit data to be parsed off-chain.
[codex:1109971] 113: /// @notice Emitted when a withdrawal transaction is proven.
[codex:1109971] 114: /// @param withdrawalHash Hash of the withdrawal transaction.
[codex:1109971] 115: /// @param from Address that triggered the withdrawal transaction.
[codex:1109971] 116: /// @param to Address that the withdrawal transaction is directed to.
[codex:1109971]
[codex:1109971] thinking
[codex:1109971] **Inspecting OptimismPortal sections**
[codex:1109971] exec
[codex:1109971] /bin/bash -lc "sed -n '200,420p' contracts/src/L1/OptimismPortal.sol" in /tmp/codex-multi-tzowtrkt succeeded in 5ms:
[codex:1109971] /// funds be deposited to their address on L2. This is intended as a convenience
[codex:1109971] /// function for EOAs. Contracts should call the depositTransaction() function directly
[codex:1109971] /// otherwise any deposited funds will be lost due to address aliasing.
[codex:1109971] receive() external payable {
[codex:1109971] depositTransaction(msg.sender, msg.value, RECEIVE_DEFAULT_GAS_LIMIT, false, bytes(""));
[codex:1109971] }
[codex:1109971]
[codex:1109971] /// @notice Accepts ETH value without triggering a deposit to L2.
[codex:1109971] /// This function mainly exists for the sake of the migration between the legacy
[codex:1109971] /// Optimism system and Bedrock.
[codex:1109971] function donateETH() external payable {
[codex:1109971] // Intentionally empty.
[codex:1109971] }
[codex:1109971]
[codex:1109971] /// @notice Returns the gas paying token and its decimals.
[codex:1109971] function gasPayingToken() internal view returns (address addr_, uint8 decimals_) {
[codex:1109971] (addr_, decimals_) = systemConfig.gasPayingToken();
[codex:1109971] }
[codex:1109971]
[codex:1109971] /// @notice Getter for the resource config.
[codex:1109971]
[codex:1109971] thinking
[codex:1109971] **Checking for potential exploit paths**
[codex:1109971] exec
[codex:1109971] /bin/bash -lc "sed -n '420,760p' contracts/src/L1/OptimismPortal.sol" in /tmp/codex-multi-tzowtrkt succeeded in 6ms:
[codex:1109971] emit WithdrawalFinalized(withdrawalHash, success);
[codex:1109971]
[codex:1109971] // Reverting here is useful for determining the exact gas cost to successfully execute the
[codex:1109971] // sub call to the target contract if the minimum gas limit specified by the user would not
[codex:1109971] // be sufficient to execute the sub call.
[codex:1109971] if (success == false && tx.origin == Constants.ESTIMATION_ADDRESS) {
[codex:1109971] revert GasEstimation();
[codex:1109971] }
[codex:1109971] }
[codex:1109971]
[codex:1109971] /// @notice Entrypoint to depositing an ERC20 token as a custom gas token.
[codex:1109971] /// This function depends on a well formed ERC20 token. There are only
[codex:1109971] /// so many checks that can be done on chain for this so it is assumed
[codex:1109971] /// that chain operators will deploy chains with well formed ERC20 tokens.
[codex:1109971] /// @param _to Target address on L2.
[codex:1109971] /// @param _mint Units of ERC20 token to deposit into L2.
[codex:1109971] /// @param _value Units of ERC20 token to send on L2 to the recipient.
[codex:1109971] /// @param _gasLimit Amount of L2 gas to purchase by burning gas on L1.
[codex:1109971] /// @param _isCreation Whether or not the transaction is a contract creation.
[codex:1109971] /// @param _data Data to trigger the recipient with.
[codex:1109971]
[codex:1109971] thinking
[codex:1109971] **Reviewing contracts for vulnerabilities**
[codex:1109971] exec
[codex:1109971] /bin/bash -lc "sed -n '1,240p' contracts/src/L1/SystemConfig.sol" in /tmp/codex-multi-tzowtrkt succeeded in 5ms:
[codex:1109971] // SPDX-License-Identifier: MIT
[codex:1109971] pragma solidity 0.8.15;
[codex:1109971]
[codex:1109971] import { OwnableUpgradeable } from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
[codex:1109971] import { ISemver } from "src/universal/ISemver.sol";
[codex:1109971] import { ResourceMetering } from "src/L1/ResourceMetering.sol";
[codex:1109971] import { Storage } from "src/libraries/Storage.sol";
[codex:1109971] import { Constants } from "src/libraries/Constants.sol";
[codex:1109971] import { OptimismPortal } from "src/L1/OptimismPortal.sol";
[codex:1109971] import { GasPayingToken, IGasToken } from "src/libraries/GasPayingToken.sol";
[codex:1109971] import { ERC20 } from "@openzeppelin/contracts/token/ERC20/ERC20.sol";
[codex:1109971]
[codex:1109971] /// @title SystemConfig
[codex:1109971] /// @notice The SystemConfig contract is used to manage configuration of an Optimism network.
[codex:1109971] /// All configuration is stored on L1 and picked up by L2 as part of the derviation of
[codex:1109971] /// the L2 chain.
[codex:1109971] contract SystemConfig is OwnableUpgradeable, ISemver, IGasToken {
[codex:1109971] /// @notice Enum representing different types of updates.
[codex:1109971] /// @custom:value BATCHER Represents an update to the batcher hash.
[codex:1109971] /// @custom:value GAS_CONFIG Represents an update to txn fee config on L2.
[codex:1109971]
[codex:1109971] thinking
[codex:1109971] **Checking access control with onlyOwner**
[codex:1109971] exec
[codex:1109971] /bin/bash -lc 'rg -n "onlyOwner|transferOwnership|set" contracts/src/L1/SystemConfig.sol' in /tmp/codex-multi-tzowtrkt succeeded in 6ms:
[codex:1109971] 87: /// @notice The maximum gas limit that can be set for L2 blocks. This limit is used to enforce that the blocks
[codex:1109971] 121: /// @notice Constructs the SystemConfig contract. Cannot set
[codex:1109971] 123: /// implementation, so set it to `address(0xdEaD)`
[codex:1109971] 124: /// @dev START_BLOCK_SLOT is set to type(uint256).max here so that it will be a dead value
[codex:1109971] 125: /// in the singleton and is skipped by initialize when setting the start block.
[codex:1109971] 127: Storage.setUint(START_BLOCK_SLOT, type(uint256).max);
[codex:1109971] 157: /// The resource config must be set before the require check.
[codex:1109971] 183: transferOwnership(_owner);
[codex:1109971] 185: // These are set in ascending order of their UpdateTypes.
[codex:1109971] 186: _setBatcherHash(_batcherHash);
[codex:1109971] 187: _setGasConfig({ _overhead: _overhead, _scalar: _scalar });
[codex:1109971] 188: _setGasLimit(_gasLimit);
[codex:1109971] 190: Storage.setAddress(UNSAFE_BLOCK_SIGNER_SLOT, _unsafeBlockSigner);
[codex:1109971] 191: Storage.setAddress(BATCH_INBOX_SLOT, _batchInbox);
[codex:1109971] 192: Storage.setAddress(L1_CROSS_DOMAIN_MESSENGER_SLOT, _addresses.l1CrossDomainMessenger);
[codex:1109971] 193: Storage.setAddress(L1_ERC_721_BRIDGE_SLOT, _addresses.l1ERC721Bridge);
[codex:1109971] 194: Storage.setAddress(L1_STANDARD_BRIDGE_SLOT, _addresses.l1StandardBridge);
[codex:1109971] 195: Storage.setAddress(DISPUTE_GAME_FACTORY_SLOT, _addresses.disputeGameFactory);
[codex:1109971] 196: Storage.setAddress(OPTIMISM_PORTAL_SLOT, _addresses.optimismPortal);
[codex:1109971] 197: Storage.setAddress(OPTIMISM_MINTABLE_ERC20_FACTORY_SLOT, _addresses.optimismMintableERC20Factory);
[codex:1109971]
[codex:1109971] thinking
[codex:1109971] **Analyzing initialization and balance tracking**
[codex:1109971] exec
[codex:1109971] /bin/bash -lc 'rg -n "_balance" contracts/src/L1/OptimismPortal.sol' in /tmp/codex-multi-tzowtrkt succeeded in 6ms:
[codex:1109971] 102: uint256 internal _balance;
[codex:1109971] 170: return _balance;
[codex:1109971] 390: _balance -= _tx.value;
[codex:1109971] 456: _balance += _mint;
[codex:1109971]
[codex:1109971] thinking
[codex:1109971] **Inspecting balance getter near line 160**
[codex:1109971] exec
[codex:1109971] /bin/bash -lc "sed -n '140,200p' contracts/src/L1/OptimismPortal.sol" in /tmp/codex-multi-tzowtrkt succeeded in 6ms:
[codex:1109971] });
[codex:1109971] }
[codex:1109971]
[codex:1109971] /// @notice Initializer.
[codex:1109971] /// @param _l2Oracle Contract of the L2OutputOracle.
[codex:1109971] /// @param _systemConfig Contract of the SystemConfig.
[codex:1109971] /// @param _superchainConfig Contract of the SuperchainConfig.
[codex:1109971] function initialize(
[codex:1109971] L2OutputOracle _l2Oracle,
[codex:1109971] SystemConfig _systemConfig,
[codex:1109971] SuperchainConfig _superchainConfig
[codex:1109971] )
[codex:1109971] public
[codex:1109971] initializer
[codex:1109971] {
[codex:1109971] l2Oracle = _l2Oracle;
[codex:1109971] systemConfig = _systemConfig;
[codex:1109971] superchainConfig = _superchainConfig;
[codex:1109971] if (l2Sender == address(0)) {
[codex:1109971] l2Sender = Constants.DEFAULT_L2_SENDER;
[codex:1109971]
[codex:1109971] thinking
[codex:1109971] **Analyzing token balance and reentrancy risks**
[codex:1109971] exec
[codex:1109971] /bin/bash -lc "sed -n '1,200p' contracts/src/L1/SuperchainConfig.sol" in /tmp/codex-multi-tzowtrkt succeeded in 5ms:
[codex:1109971] // SPDX-License-Identifier: MIT
[codex:1109971] pragma solidity 0.8.15;
[codex:1109971]
[codex:1109971] import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
[codex:1109971] import { ISemver } from "src/universal/ISemver.sol";
[codex:1109971] import { Storage } from "src/libraries/Storage.sol";
[codex:1109971]
[codex:1109971] /// @custom:audit none This contracts is not yet audited.
[codex:1109971] /// @title SuperchainConfig
[codex:1109971] /// @notice The SuperchainConfig contract is used to manage configuration of global superchain values.
[codex:1109971] contract SuperchainConfig is Initializable, ISemver {
[codex:1109971] /// @notice Enum representing different types of updates.
[codex:1109971] /// @custom:value GUARDIAN Represents an update to the guardian.
[codex:1109971] enum UpdateType {
[codex:1109971] GUARDIAN
[codex:1109971] }
[codex:1109971]
[codex:1109971] /// @notice Whether or not the Superchain is paused.
[codex:1109971] bytes32 public constant PAUSED_SLOT = bytes32(uint256(keccak256("superchainConfig.paused")) - 1);
[codex:1109971]
[codex:1109971]
[codex:1109971] thinking
[codex:1109971] **Checking for exploits and ResourceMetering**
[codex:1109971] exec
[codex:1109971] /bin/bash -lc "sed -n '1,240p' contracts/src/L1/ResourceMetering.sol" in /tmp/codex-multi-tzowtrkt succeeded in 6ms:
[codex:1109971] // SPDX-License-Identifier: MIT
[codex:1109971] pragma solidity 0.8.15;
[codex:1109971]
[codex:1109971] import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
[codex:1109971] import { Math } from "@openzeppelin/contracts/utils/math/Math.sol";
[codex:1109971] import { Burn } from "src/libraries/Burn.sol";
[codex:1109971] import { Arithmetic } from "src/libraries/Arithmetic.sol";
[codex:1109971]
[codex:1109971] /// @custom:upgradeable
[codex:1109971] /// @title ResourceMetering
[codex:1109971] /// @notice ResourceMetering implements an EIP-1559 style resource metering system where pricing
[codex:1109971] /// updates automatically based on current demand.
[codex:1109971] abstract contract ResourceMetering is Initializable {
[codex:1109971] /// @notice Error returned when too much gas resource is consumed.
[codex:1109971] error OutOfGas();
[codex:1109971]
[codex:1109971] /// @notice Represents the various parameters that control the way in which resources are
[codex:1109971] /// metered. Corresponds to the EIP-1559 resource metering system.
[codex:1109971] /// @custom:field prevBaseFee Base fee from the previous block(s).
[codex:1109971] /// @custom:field prevBoughtGas Amount of gas bought so far in the current block.
[codex:1109971]
[codex:1109971] thinking
[codex:1109971] **Checking L1Block for issues**
[codex:1109971] exec
[codex:1109971] /bin/bash -lc "sed -n '1,220p' contracts/src/L2/L1Block.sol" in /tmp/codex-multi-tzowtrkt succeeded in 5ms:
[codex:1109971] // SPDX-License-Identifier: MIT
[codex:1109971] pragma solidity 0.8.15;
[codex:1109971]
[codex:1109971] import { ISemver } from "src/universal/ISemver.sol";
[codex:1109971] import { Constants } from "src/libraries/Constants.sol";
[codex:1109971] import { GasPayingToken, IGasToken } from "src/libraries/GasPayingToken.sol";
[codex:1109971]
[codex:1109971] /// @custom:proxied
[codex:1109971] /// @custom:predeploy 0x4200000000000000000000000000000000000015
[codex:1109971] /// @title L1Block
[codex:1109971] /// @notice The L1Block predeploy gives users access to information about the last known L1 block.
[codex:1109971] /// Values within this contract are updated once per epoch (every L1 block) and can only be
[codex:1109971] /// set by the "depositor" account, a special system address. Depositor account transactions
[codex:1109971] /// are created by the protocol whenever we move to a new epoch.
[codex:1109971] contract L1Block is ISemver, IGasToken {
[codex:1109971] /// @notice Error returns when a non-depositor account tries to set L1 block values.
[codex:1109971] error NotDepositor();
[codex:1109971]
[codex:1109971] /// @notice Event emitted when the gas paying token is set.
[codex:1109971] event GasPayingTokenSet(address indexed token, uint8 indexed decimals, bytes32 name, bytes32 symbol);
[codex:1109971]
[codex:1109971] thinking
[codex:1109971] **Analyzing potential reentrancy and initialization risks**
[codex:1109971] exec
[codex:1109971] /bin/bash -lc "sed -n '1,220p' contracts/src/libraries/Types.sol" in /tmp/codex-multi-tzowtrkt succeeded in 5ms:
[codex:1109971] // SPDX-License-Identifier: MIT
[codex:1109971] pragma solidity ^0.8.0;
[codex:1109971]
[codex:1109971] /// @title Types
[codex:1109971] /// @notice Contains various types used throughout the Optimism contract system.
[codex:1109971] library Types {
[codex:1109971] /// @notice OutputProposal represents a commitment to the L2 state. The timestamp is the L1
[codex:1109971] /// timestamp that the output root is posted. This timestamp is used to verify that the
[codex:1109971] /// finalization period has passed since the output root was submitted.
[codex:1109971] /// @custom:field outputRoot Hash of the L2 output.
[codex:1109971] /// @custom:field timestamp Timestamp of the L1 block that the output root was submitted in.
[codex:1109971] /// @custom:field l2BlockNumber L2 block number that the output corresponds to.
[codex:1109971] struct OutputProposal {
[codex:1109971] bytes32 outputRoot;
[codex:1109971] uint128 timestamp;
[codex:1109971] uint128 l2BlockNumber;
[codex:1109971] }
[codex:1109971]
[codex:1109971] /// @notice Struct representing the elements that are hashed together to generate an output root
[codex:1109971] /// which itself represents a snapshot of the L2 state.
[codex:1109971]
[codex:1109971] thinking
[codex:1109971] **Checking hashing considerations**
[codex:1109971] exec
[codex:1109971] /bin/bash -lc "sed -n '1,240p' contracts/src/libraries/Hashing.sol" in /tmp/codex-multi-tzowtrkt succeeded in 5ms:
[codex:1109971] // SPDX-License-Identifier: MIT
[codex:1109971] pragma solidity ^0.8.0;
[codex:1109971]
[codex:1109971] import { Types } from "src/libraries/Types.sol";
[codex:1109971] import { Encoding } from "src/libraries/Encoding.sol";
[codex:1109971]
[codex:1109971] /// @title Hashing
[codex:1109971] /// @notice Hashing handles Optimism's various different hashing schemes.
[codex:1109971] library Hashing {
[codex:1109971] /// @notice Computes the hash of the RLP encoded L2 transaction that would be generated when a
[codex:1109971] /// given deposit is sent to the L2 system. Useful for searching for a deposit in the L2
[codex:1109971] /// system.
[codex:1109971] /// @param _tx User deposit transaction to hash.
[codex:1109971] /// @return Hash of the RLP encoded L2 deposit transaction.
[codex:1109971] function hashDepositTransaction(Types.UserDepositTransaction memory _tx) internal pure returns (bytes32) {
[codex:1109971] return keccak256(Encoding.encodeDepositTransaction(_tx));
[codex:1109971] }
[codex:1109971]
[codex:1109971] /// @notice Computes the deposit transaction's "source hash", a value that guarantees the hash
[codex:1109971] /// of the L2 transaction that corresponds to a deposit is unique and is
[codex:1109971]
[codex:1109971] thinking
[codex:1109971] **Investigating GasPayingToken library**
[codex:1109971] exec
[codex:1109971] /bin/bash -lc "sed -n '1,200p' contracts/src/libraries/GasPayingToken.sol" in /tmp/codex-multi-tzowtrkt succeeded in 5ms:
[codex:1109971] // SPDX-License-Identifier: MIT
[codex:1109971] pragma solidity ^0.8.0;
[codex:1109971]
[codex:1109971] import { Storage } from "src/libraries/Storage.sol";
[codex:1109971] import { Constants } from "src/libraries/Constants.sol";
[codex:1109971] import { LibString } from "@solady/utils/LibString.sol";
[codex:1109971]
[codex:1109971] /// @title IGasToken
[codex:1109971] /// @notice Implemented by contracts that are aware of the custom gas token used
[codex:1109971] /// by the L2 network.
[codex:1109971] interface IGasToken {
[codex:1109971] /// @notice Getter for the ERC20 token address that is used to pay for gas and its decimals.
[codex:1109971] function gasPayingToken() external view returns (address, uint8);
[codex:1109971] /// @notice Returns the gas token name.
[codex:1109971] function gasPayingTokenName() external view returns (string memory);
[codex:1109971] /// @notice Returns the gas token symbol.
[codex:1109971] function gasPayingTokenSymbol() external view returns (string memory);
[codex:1109971] /// @notice Returns true if the network uses a custom gas token.
[codex:1109971] function isCustomGasToken() external view returns (bool);
[codex:1109971] }
[codex:1109971]
[codex:1109971] thinking
[codex:1109971] **Checking for arithmetic vulnerabilities**
[codex:1109971] exec
[codex:1109971] /bin/bash -lc "sed -n '1,200p' contracts/src/libraries/Storage.sol" in /tmp/codex-multi-tzowtrkt succeeded in 5ms:
[codex:1109971] // SPDX-License-Identifier: MIT
[codex:1109971] pragma solidity ^0.8.0;
[codex:1109971]
[codex:1109971] /// @title Storage
[codex:1109971] /// @notice Storage handles reading and writing to arbitary storage locations
[codex:1109971] library Storage {
[codex:1109971] /// @notice Returns an address stored in an arbitrary storage slot.
[codex:1109971] /// These storage slots decouple the storage layout from
[codex:1109971] /// solc's automation.
[codex:1109971] /// @param _slot The storage slot to retrieve the address from.
[codex:1109971] function getAddress(bytes32 _slot) internal view returns (address addr_) {
[codex:1109971] assembly {
[codex:1109971] addr_ := sload(_slot)
[codex:1109971] }
[codex:1109971] }
[codex:1109971]
[codex:1109971] /// @notice Stores an address in an arbitrary storage slot, `_slot`.
[codex:1109971] /// @param _slot The storage slot to store the address in.
[codex:1109971] /// @param _address The protocol version to store
[codex:1109971] /// @dev WARNING! This function must be used cautiously, as it allows for overwriting addresses
[codex:1109971]
[codex:1109971] thinking
[codex:1109971] **Checking Burn library**
[codex:1109971] exec
[codex:1109971] /bin/bash -lc "sed -n '1,200p' contracts/src/libraries/Burn.sol" in /tmp/codex-multi-tzowtrkt succeeded in 6ms:
[codex:1109971] // SPDX-License-Identifier: MIT
[codex:1109971] pragma solidity 0.8.15;
[codex:1109971]
[codex:1109971] /// @title Burn
[codex:1109971] /// @notice Utilities for burning stuff.
[codex:1109971] library Burn {
[codex:1109971] /// @notice Burns a given amount of ETH.
[codex:1109971] /// @param _amount Amount of ETH to burn.
[codex:1109971] function eth(uint256 _amount) internal {
[codex:1109971] new Burner{ value: _amount }();
[codex:1109971] }
[codex:1109971]
[codex:1109971] /// @notice Burns a given amount of gas.
[codex:1109971] /// @param _amount Amount of gas to burn.
[codex:1109971] function gas(uint256 _amount) internal view {
[codex:1109971] uint256 i = 0;
[codex:1109971] uint256 initialGas = gasleft();
[codex:1109971] while (initialGas - gasleft() < _amount) {
[codex:1109971] ++i;
[codex:1109971] }
[codex:1109971]
[codex:1109971] thinking
[codex:1109971] **Analyzing potential vulnerabilities and attack vectors**
[codex:1109971]
[codex:1109971] I'm carefully reviewing the smart contracts, focusing on possible exploits around data deletion, underflows, token transfers, and Merkle proofs, and validating safe handling of edge cases. I want to be sure no concrete path to profit exists, as the user requested, while also verifying the output matches the expected schema.
[codex:1109971] exec
[codex:1109971] /bin/bash -lc 'cat codex-output-schema.json' in /tmp/codex-multi-tzowtrkt succeeded in 6ms:
[codex:1109971] {"type": "object", "additionalProperties": false, "required": ["no_findings", "summary", "findings"], "properties": {"no_findings": {"type": "boolean"}, "summary": {"type": "string"}, "findings": {"type": "array", "items": {"type": "object", "additionalProperties": false, "required": ["severity", "category", "title", "evidence", "locations", "exploit_scenario", "recommendation"], "properties": {"severity": {"type": "string", "enum": ["info", "low", "medium", "high", "critical"]}, "category": {"type": "string", "enum": ["access_control", "reentrancy", "math", "oracle", "upgradeability", "auth", "other"]}, "title": {"type": "string"}, "exploit_scenario": {"type": "string"}, "recommendation": {"type": "string"}, "evidence": {"type": "string"}, "locations": {"type": "array", "items": {"type": "string"}}}}}}}
[codex:1109971]
[codex:1109971] thinking
[codex:1109971] **Analyzing potential initialization risks and access controls**
[codex:1109971] exec
[codex:1109971] /bin/bash -lc "sed -n '1,200p' contracts/src/libraries/Constants.sol" in /tmp/codex-multi-tzowtrkt succeeded in 5ms:
[codex:1109971] // SPDX-License-Identifier: MIT
[codex:1109971] pragma solidity ^0.8.0;
[codex:1109971]
[codex:1109971] import { ResourceMetering } from "src/L1/ResourceMetering.sol";
[codex:1109971]
[codex:1109971] /// @title Constants
[codex:1109971] /// @notice Constants is a library for storing constants. Simple! Don't put everything in here, just
[codex:1109971] /// the stuff used in multiple contracts. Constants that only apply to a single contract
[codex:1109971] /// should be defined in that contract instead.
[codex:1109971] library Constants {
[codex:1109971] /// @notice Special address to be used as the tx origin for gas estimation calls in the
[codex:1109971] /// OptimismPortal and CrossDomainMessenger calls. You only need to use this address if
[codex:1109971] /// the minimum gas limit specified by the user is not actually enough to execute the
[codex:1109971] /// given message and you're attempting to estimate the actual necessary gas limit. We
[codex:1109971] /// use address(1) because it's the ecrecover precompile and therefore guaranteed to
[codex:1109971] /// never have any code on any EVM chain.
[codex:1109971] address internal constant ESTIMATION_ADDRESS = address(1);
[codex:1109971]
[codex:1109971] /// @notice Value used for the L2 sender storage slot in both the OptimismPortal and the
[codex:1109971] /// CrossDomainMessenger contracts before an actual sender is set. This value is
[codex:1109971]
[codex:1109971] thinking
[codex:1109971] **Analyzing deposit transaction logic and confirming no exploit**
[codex:1109971] codex
[codex:1109971] {"no_findings":true,"summary":"No concrete, exploitable profit paths found in the audited contracts.","findings":[]}
[codex:1109971] tokens used
[codex:1109971] 47,206
[codex:1109971] {"no_findings":true,"summary":"No concrete, exploitable profit paths found in the audited contracts.","findings":[]}
{
"codex": {
"ran_at": "2026-01-02T21:01:21.057043+00:00",
"returncode": 0
},
"summary": "No concrete, exploitable profit paths found in the audited contracts.",
"raw_final": {
"summary": "No concrete, exploitable profit paths found in the audited contracts.",
"findings": [],
"no_findings": true
},
"no_findings": true,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: PUSH2 0x0163 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0x8c3152e9 00000019: GT 0000001a: PUSH2 0x00c0 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0xb69ef8a8 00000024: GT 00000025: PUSH2 0x0074 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xcff0ab96 0000002f: GT 00000030: PUSH2 0x0059 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xcff0ab96 0000003a: EQ 0000003b: PUSH2 0x044e 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xe965084c 00000045: EQ 00000046: PUSH2 0x04ef 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xe9e05c42 00000050: EQ 00000051: PUSH2 0x057b 00000054: JUMPI 00000055: PUSH1 0x00 00000057: DUP1 00000058: REVERT 00000059: JUMPDEST 0000005a: DUP1 0000005b: PUSH4 0xb69ef8a8 00000060: EQ 00000061: PUSH2 0x040b 00000064: JUMPI 00000065: DUP1 00000066: PUSH4 0xc0c53b8b 0000006b: EQ 0000006c: PUSH2 0x042e 0000006f: JUMPI 00000070: PUSH1 0x00 00000072: DUP1 00000073: REVERT 00000074: JUMPDEST 00000075: DUP1 00000076: PUSH4 0x9bf62d82 0000007b: GT 0000007c: PUSH2 0x00a5 0000007f: JUMPI 00000080: DUP1 00000081: PUSH4 0x9bf62d82 00000086: EQ 00000087: PUSH2 0x0375 0000008a: JUMPI 0000008b: DUP1 0000008c: PUSH4 0xa14238e7 00000091: EQ 00000092: PUSH2 0x03a2 00000095: JUMPI 00000096: DUP1 00000097: PUSH4 0xa35d99df 0000009c: EQ 0000009d: PUSH2 0x03d2 000000a0: JUMPI 000000a1: PUSH1 0x00 000000a3: DUP1 000000a4: REVERT 000000a5: JUMPDEST 000000a6: DUP1 000000a7: PUSH4 0x8c3152e9 000000ac: EQ 000000ad: PUSH2 0x0328 000000b0: JUMPI 000000b1: DUP1 000000b2: PUSH4 0x9b5f694a 000000b7: EQ 000000b8: PUSH2 0x0348 000000bb: JUMPI 000000bc: PUSH1 0x00 000000be: DUP1 000000bf: REVERT 000000c0: JUMPDEST 000000c1: DUP1 000000c2: PUSH4 0x54fd4d50 000000c7: GT 000000c8: PUSH2 0x0117 000000cb: JUMPI 000000cc: DUP1 000000cd: PUSH4 0x6dbffb78 000000d2: GT 000000d3: PUSH2 0x00fc 000000d6: JUMPI 000000d7: DUP1 000000d8: PUSH4 0x6dbffb78 000000dd: EQ 000000de: PUSH2 0x02e8 000000e1: JUMPI 000000e2: DUP1 000000e3: PUSH4 0x71cfaa3f 000000e8: EQ 000000e9: PUSH2 0x0308 000000ec: JUMPI 000000ed: DUP1 000000ee: PUSH4 0x8b4c40b0 000000f3: EQ 000000f4: PUSH2 0x0188 000000f7: JUMPI 000000f8: PUSH1 0x00 000000fa: DUP1 000000fb: REVERT 000000fc: JUMPDEST 000000fd: DUP1 000000fe: PUSH4 0x54fd4d50 00000103: EQ 00000104: PUSH2 0x026d 00000107: JUMPI 00000108: DUP1 00000109: PUSH4 0x5c975abb 0000010e: EQ 0000010f: PUSH2 0x02c3 00000112: JUMPI 00000113: PUSH1 0x00 00000115: DUP1 00000116: REVERT 00000117: JUMPDEST 00000118: DUP1 00000119: PUSH4 0x35e80ab3 0000011e: GT 0000011f: PUSH2 0x0148 00000122: JUMPI 00000123: DUP1 00000124: PUSH4 0x35e80ab3 00000129: EQ 0000012a: PUSH2 0x0206 0000012d: JUMPI 0000012e: DUP1 0000012f: PUSH4 0x452a9320 00000134: EQ 00000135: PUSH2 0x0238 00000138: JUMPI 00000139: DUP1 0000013a: PUSH4 0x4870496f 0000013f: EQ 00000140: PUSH2 0x024d 00000143: JUMPI 00000144: PUSH1 0x00 00000146: DUP1 00000147: REVERT 00000148: JUMPDEST 00000149: DUP1 0000014a: PUSH4 0x149f2f22 0000014f: EQ 00000150: PUSH2 0x018f 00000153: JUMPI 00000154: DUP1 00000155: PUSH4 0x33d7e2bd 0000015a: EQ 0000015b: PUSH2 0x01af 0000015e: JUMPI 0000015f: PUSH1 0x00 00000161: DUP1 00000162: REVERT 00000163: JUMPDEST 00000164: CALLDATASIZE 00000165: PUSH2 0x018a 00000168: JUMPI 00000169: PUSH2 0x0188 0000016c: CALLER 0000016d: CALLVALUE 0000016e: PUSH3 0x0186a0 00000172: PUSH1 0x00 00000174: PUSH1 0x40 00000176: MLOAD 00000177: DUP1 00000178: PUSH1 0x20 0000017a: ADD 0000017b: PUSH1 0x40 0000017d: MSTORE 0000017e: DUP1 0000017f: PUSH1 0x00 00000181: DUP2 00000182: MSTORE 00000183: POP 00000184: PUSH2 0x0589 00000187: JUMP 00000188: JUMPDEST 00000189: STOP 0000018a: JUMPDEST 0000018b: PUSH1 0x00 0000018d: DUP1 0000018e: REVERT 0000018f: JUMPDEST 00000190: CALLVALUE 00000191: DUP1 00000192: ISZERO 00000193: PUSH2 0x019b 00000196: JUMPI 00000197: PUSH1 0x00 00000199: DUP1 0000019a: REVERT 0000019b: JUMPDEST 0000019c: POP 0000019d: PUSH2 0x0188 000001a0: PUSH2 0x01aa 000001a3: CALLDATASIZE 000001a4: PUSH1 0x04 000001a6: PUSH2 0x4ba1 000001a9: JUMP 000001aa: JUMPDEST 000001ab: PUSH2 0x062e 000001ae: JUMP 000001af: JUMPDEST 000001b0: CALLVALUE 000001b1: DUP1 000001b2: ISZERO 000001b3: PUSH2 0x01bb 000001b6: JUMPI 000001b7: PUSH1 0x00 000001b9: DUP1 000001ba: REVERT 000001bb: JUMPDEST 000001bc: POP 000001bd: PUSH1 0x37 000001bf: SLOAD 000001c0: PUSH2 0x01dc 000001c3: SWAP1 000001c4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000001d9: AND 000001da: DUP2 000001db: JUMP 000001dc: JUMPDEST 000001dd: PUSH1 0x40 000001df: MLOAD 000001e0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000001f5: SWAP1 000001f6: SWAP2 000001f7: AND 000001f8: DUP2 000001f9: MSTORE 000001fa: PUSH1 0x20 000001fc: ADD 000001fd: JUMPDEST 000001fe: PUSH1 0x40 00000200: MLOAD 00000201: DUP1 00000202: SWAP2 00000203: SUB 00000204: SWAP1 00000205: RETURN 00000206: JUMPDEST 00000207: CALLVALUE 00000208: DUP1 00000209: ISZERO 0000020a: PUSH2 0x0212 0000020d: JUMPI 0000020e: PUSH1 0x00 00000210: DUP1 00000211: REVERT 00000212: JUMPDEST 00000213: POP 00000214: PUSH1 0x35 00000216: SLOAD 00000217: PUSH2 0x01dc 0000021a: SWAP1 0000021b: PUSH2 0x0100 0000021e: SWAP1 0000021f: DIV 00000220: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000235: AND 00000236: DUP2 00000237: JUMP 00000238: JUMPDEST 00000239: CALLVALUE 0000023a: DUP1 0000023b: ISZERO 0000023c: PUSH2 0x0244 0000023f: JUMPI 00000240: PUSH1 0x00 00000242: DUP1 00000243: REVERT 00000244: JUMPDEST 00000245: POP 00000246: PUSH2 0x01dc 00000249: PUSH2 0x086f 0000024c: JUMP 0000024d: JUMPDEST 0000024e: CALLVALUE 0000024f: DUP1 00000250: ISZERO 00000251: PUSH2 0x0259 00000254: JUMPI 00000255: PUSH1 0x00 00000257: DUP1 00000258: REVERT 00000259: JUMPDEST 0000025a: POP 0000025b: PUSH2 0x0188 0000025e: PUSH2 0x0268 00000261: CALLDATASIZE 00000262: PUSH1 0x04 00000264: PUSH2 0x4cd5 00000267: JUMP 00000268: JUMPDEST 00000269: PUSH2 0x0907 0000026c: JUMP 0000026d: JUMPDEST 0000026e: CALLVALUE 0000026f: DUP1 00000270: ISZERO 00000271: PUSH2 0x0279 00000274: JUMPI 00000275: PUSH1 0x00 00000277: DUP1 00000278: REVERT 00000279: JUMPDEST 0000027a: POP 0000027b: PUSH2 0x02b6 0000027e: PUSH1 0x40 00000280: MLOAD 00000281: DUP1 00000282: PUSH1 0x40 00000284: ADD 00000285: PUSH1 0x40 00000287: MSTORE 00000288: DUP1 00000289: PUSH1 0x05 0000028b: DUP2 0000028c: MSTORE 0000028d: PUSH1 0x20 0000028f: ADD 00000290: PUSH32 0x322e382e30000000000000000000000000000000000000000000000000000000 000002b1: DUP2 000002b2: MSTORE 000002b3: POP 000002b4: DUP2 000002b5: JUMP 000002b6: JUMPDEST 000002b7: PUSH1 0x40 000002b9: MLOAD 000002ba: PUSH2 0x01fd 000002bd: SWAP2 000002be: SWAP1 000002bf: PUSH2 0x4e27 000002c2: JUMP 000002c3: JUMPDEST 000002c4: CALLVALUE 000002c5: DUP1 000002c6: ISZERO 000002c7: PUSH2 0x02cf 000002ca: JUMPI 000002cb: PUSH1 0x00 000002cd: DUP1 000002ce: REVERT 000002cf: JUMPDEST 000002d0: POP 000002d1: PUSH2 0x02d8 000002d4: PUSH2 0x0eb4 000002d7: JUMP 000002d8: JUMPDEST 000002d9: PUSH1 0x40 000002db: MLOAD 000002dc: SWAP1 000002dd: ISZERO 000002de: ISZERO 000002df: DUP2 000002e0: MSTORE 000002e1: PUSH1 0x20 000002e3: ADD 000002e4: PUSH2 0x01fd 000002e7: JUMP 000002e8: JUMPDEST 000002e9: CALLVALUE 000002ea: DUP1 000002eb: ISZERO 000002ec: PUSH2 0x02f4 000002ef: JUMPI 000002f0: PUSH1 0x00 000002f2: DUP1 000002f3: REVERT 000002f4: JUMPDEST 000002f5: POP 000002f6: PUSH2 0x02d8 000002f9: PUSH2 0x0303 000002fc: CALLDATASIZE 000002fd: PUSH1 0x04 000002ff: PUSH2 0x4e3a 00000302: JUMP 00000303: JUMPDEST 00000304: PUSH2 0x0f47 00000307: JUMP 00000308: JUMPDEST 00000309: CALLVALUE 0000030a: DUP1 0000030b: ISZERO 0000030c: PUSH2 0x0314 0000030f: JUMPI 00000310: PUSH1 0x00 00000312: DUP1 00000313: REVERT 00000314: JUMPDEST 00000315: POP 00000316: PUSH2 0x0188 00000319: PUSH2 0x0323 0000031c: CALLDATASIZE 0000031d: PUSH1 0x04 0000031f: PUSH2 0x4e62 00000322: JUMP 00000323: JUMPDEST 00000324: PUSH2 0x1002 00000327: JUMP 00000328: JUMPDEST 00000329: CALLVALUE 0000032a: DUP1 0000032b: ISZERO 0000032c: PUSH2 0x0334 0000032f: JUMPI 00000330: PUSH1 0x00 00000332: DUP1 00000333: REVERT 00000334: JUMPDEST 00000335: POP 00000336: PUSH2 0x0188 00000339: PUSH2 0x0343 0000033c: CALLDATASIZE 0000033d: PUSH1 0x04 0000033f: PUSH2 0x4ea8 00000342: JUMP 00000343: JUMPDEST 00000344: PUSH2 0x11c4 00000347: JUMP 00000348: JUMPDEST 00000349: CALLVALUE 0000034a: DUP1 0000034b: ISZERO 0000034c: PUSH2 0x0354 0000034f: JUMPI 00000350: PUSH1 0x00 00000352: DUP1 00000353: REVERT 00000354: JUMPDEST 00000355: POP 00000356: PUSH1 0x36 00000358: SLOAD 00000359: PUSH2 0x01dc 0000035c: SWAP1 0000035d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000372: AND 00000373: DUP2 00000374: JUMP 00000375: JUMPDEST 00000376: CALLVALUE 00000377: DUP1 00000378: ISZERO 00000379: PUSH2 0x0381 0000037c: JUMPI 0000037d: PUSH1 0x00 0000037f: DUP1 00000380: REVERT 00000381: JUMPDEST 00000382: POP 00000383: PUSH1 0x32 00000385: SLOAD 00000386: PUSH2 0x01dc 00000389: SWAP1 0000038a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000039f: AND 000003a0: DUP2 000003a1: JUMP 000003a2: JUMPDEST 000003a3: CALLVALUE 000003a4: DUP1 000003a5: ISZERO 000003a6: PUSH2 0x03ae 000003a9: JUMPI 000003aa: PUSH1 0x00 000003ac: DUP1 000003ad: REVERT 000003ae: JUMPDEST 000003af: POP 000003b0: PUSH2 0x02d8 000003b3: PUSH2 0x03bd 000003b6: CALLDATASIZE 000003b7: PUSH1 0x04 000003b9: PUSH2 0x4e3a 000003bc: JUMP 000003bd: JUMPDEST 000003be: PUSH1 0x33 000003c0: PUSH1 0x20 000003c2: MSTORE 000003c3: PUSH1 0x00 000003c5: SWAP1 000003c6: DUP2 000003c7: MSTORE 000003c8: PUSH1 0x40 000003ca: SWAP1 000003cb: KECCAK256 000003cc: SLOAD 000003cd: PUSH1 0xff 000003cf: AND 000003d0: DUP2 000003d1: JUMP 000003d2: JUMPDEST 000003d3: CALLVALUE 000003d4: DUP1 000003d5: ISZERO 000003d6: PUSH2 0x03de 000003d9: JUMPI 000003da: PUSH1 0x00 000003dc: DUP1 000003dd: REVERT 000003de: JUMPDEST 000003df: POP 000003e0: PUSH2 0x03f2 000003e3: PUSH2 0x03ed 000003e6: CALLDATASIZE 000003e7: PUSH1 0x04 000003e9: PUSH2 0x4ee5 000003ec: JUMP 000003ed: JUMPDEST 000003ee: PUSH2 0x1c46 000003f1: JUMP 000003f2: JUMPDEST 000003f3: PUSH1 0x40 000003f5: MLOAD 000003f6: PUSH8 0xffffffffffffffff 000003ff: SWAP1 00000400: SWAP2 00000401: AND 00000402: DUP2 00000403: MSTORE 00000404: PUSH1 0x20 00000406: ADD 00000407: PUSH2 0x01fd 0000040a: JUMP 0000040b: JUMPDEST 0000040c: CALLVALUE 0000040d: DUP1 0000040e: ISZERO 0000040f: PUSH2 0x0417 00000412: JUMPI 00000413: PUSH1 0x00 00000415: DUP1 00000416: REVERT 00000417: JUMPDEST 00000418: POP 00000419: PUSH2 0x0420 0000041c: PUSH2 0x1c5f 0000041f: JUMP 00000420: JUMPDEST 00000421: PUSH1 0x40 00000423: MLOAD 00000424: SWAP1 00000425: DUP2 00000426: MSTORE 00000427: PUSH1 0x20 00000429: ADD 0000042a: PUSH2 0x01fd 0000042d: JUMP 0000042e: JUMPDEST 0000042f: CALLVALUE 00000430: DUP1 00000431: ISZERO 00000432: PUSH2 0x043a 00000435: JUMPI 00000436: PUSH1 0x00 00000438: DUP1 00000439: REVERT 0000043a: JUMPDEST 0000043b: POP 0000043c: PUSH2 0x0188 0000043f: PUSH2 0x0449 00000442: CALLDATASIZE 00000443: PUSH1 0x04 00000445: PUSH2 0x4f00 00000448: JUMP 00000449: JUMPDEST 0000044a: PUSH2 0x1cb9 0000044d: JUMP 0000044e: JUMPDEST 0000044f: CALLVALUE 00000450: DUP1 00000451: ISZERO 00000452: PUSH2 0x045a 00000455: JUMPI 00000456: PUSH1 0x00 00000458: DUP1 00000459: REVERT 0000045a: JUMPDEST 0000045b: POP 0000045c: PUSH1 0x01 0000045e: SLOAD 0000045f: PUSH2 0x04b6 00000462: SWAP1 00000463: PUSH16 0xffffffffffffffffffffffffffffffff 00000474: DUP2 00000475: AND 00000476: SWAP1 00000477: PUSH8 0xffffffffffffffff 00000480: PUSH17 0x0100000000000000000000000000000000 00000492: DUP3 00000493: DIV 00000494: DUP2 00000495: AND 00000496: SWAP2 00000497: PUSH25 0x01000000000000000000000000000000000000000000000000 000004b1: SWAP1 000004b2: DIV 000004b3: AND 000004b4: DUP4 000004b5: JUMP 000004b6: JUMPDEST 000004b7: PUSH1 0x40 000004b9: DUP1 000004ba: MLOAD 000004bb: PUSH16 0xffffffffffffffffffffffffffffffff 000004cc: SWAP1 000004cd: SWAP5 000004ce: AND 000004cf: DUP5 000004d0: MSTORE 000004d1: PUSH8 0xffffffffffffffff 000004da: SWAP3 000004db: DUP4 000004dc: AND 000004dd: PUSH1 0x20 000004df: DUP6 000004e0: ADD 000004e1: MSTORE 000004e2: SWAP2 000004e3: AND 000004e4: SWAP1 000004e5: DUP3 000004e6: ADD 000004e7: MSTORE 000004e8: PUSH1 0x60 000004ea: ADD 000004eb: PUSH2 0x01fd 000004ee: JUMP 000004ef: JUMPDEST 000004f0: CALLVALUE 000004f1: DUP1 000004f2: ISZERO 000004f3: PUSH2 0x04fb 000004f6: JUMPI 000004f7: PUSH1 0x00 000004f9: DUP1 000004fa: REVERT 000004fb: JUMPDEST 000004fc: POP 000004fd: PUSH2 0x054d 00000500: PUSH2 0x050a 00000503: CALLDATASIZE 00000504: PUSH1 0x04 00000506: PUSH2 0x4e3a 00000509: JUMP 0000050a: JUMPDEST 0000050b: PUSH1 0x34 0000050d: PUSH1 0x20 0000050f: MSTORE 00000510: PUSH1 0x00 00000512: SWAP1 00000513: DUP2 00000514: MSTORE 00000515: PUSH1 0x40 00000517: SWAP1 00000518: KECCAK256 00000519: DUP1 0000051a: SLOAD 0000051b: PUSH1 0x01 0000051d: SWAP1 0000051e: SWAP2 0000051f: ADD 00000520: SLOAD 00000521: PUSH16 0xffffffffffffffffffffffffffffffff 00000532: DUP1 00000533: DUP3 00000534: AND 00000535: SWAP2 00000536: PUSH17 0x0100000000000000000000000000000000 00000548: SWAP1 00000549: DIV 0000054a: AND 0000054b: DUP4 0000054c: JUMP 0000054d: JUMPDEST 0000054e: PUSH1 0x40 00000550: DUP1 00000551: MLOAD 00000552: SWAP4 00000553: DUP5 00000554: MSTORE 00000555: PUSH16 0xffffffffffffffffffffffffffffffff 00000566: SWAP3 00000567: DUP4 00000568: AND 00000569: PUSH1 0x20 0000056b: DUP6 0000056c: ADD 0000056d: MSTORE 0000056e: SWAP2 0000056f: AND 00000570: SWAP1 00000571: DUP3 00000572: ADD 00000573: MSTORE 00000574: PUSH1 0x60 00000576: ADD 00000577: PUSH2 0x01fd 0000057a: JUMP 0000057b: JUMPDEST 0000057c: PUSH2 0x0188 0000057f: PUSH2 0x0589 00000582: CALLDATASIZE 00000583: PUSH1 0x04 00000585: PUSH2 0x4f4b 00000588: JUMP 00000589: JUMPDEST 0000058a: DUP3 0000058b: PUSH1 0x00 0000058d: GAS 0000058e: SWAP1 0000058f: POP 00000590: PUSH1 0x00 00000592: PUSH2 0x0599 00000595: PUSH2 0x1f23 00000598: JUMP 00000599: JUMPDEST 0000059a: POP 0000059b: SWAP1 0000059c: POP 0000059d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000005b2: DUP2 000005b3: AND 000005b4: PUSH20 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee 000005c9: EQ 000005ca: DUP1 000005cb: ISZERO 000005cc: SWAP1 000005cd: PUSH2 0x05d5 000005d0: JUMPI 000005d1: POP 000005d2: CALLVALUE 000005d3: ISZERO 000005d4: ISZERO 000005d5: JUMPDEST 000005d6: ISZERO 000005d7: PUSH2 0x060c 000005da: JUMPI 000005db: PUSH1 0x40 000005dd: MLOAD 000005de: PUSH32 0xf2365b5b00000000000000000000000000000000000000000000000000000000 000005ff: DUP2 00000600: MSTORE 00000601: PUSH1 0x04 00000603: ADD 00000604: PUSH1 0x40 00000606: MLOAD 00000607: DUP1 00000608: SWAP2 00000609: SUB 0000060a: SWAP1 0000060b: REVERT 0000060c: JUMPDEST 0000060d: PUSH2 0x061a 00000610: DUP9 00000611: CALLVALUE 00000612: DUP10 00000613: DUP10 00000614: DUP10 00000615: DUP10 00000616: PUSH2 0x1fc0 00000619: JUMP 0000061a: JUMPDEST 0000061b: POP 0000061c: PUSH2 0x0625 0000061f: DUP3 00000620: DUP3 00000621: PUSH2 0x216c 00000624: JUMP 00000625: JUMPDEST 00000626: POP 00000627: POP 00000628: POP 00000629: POP 0000062a: POP 0000062b: POP 0000062c: POP 0000062d: JUMP 0000062e: JUMPDEST 0000062f: DUP3 00000630: PUSH1 0x00 00000632: GAS 00000633: SWAP1 00000634: POP 00000635: PUSH1 0x00 00000637: PUSH2 0x063e 0000063a: PUSH2 0x1f23 0000063d: JUMP 0000063e: JUMPDEST 0000063f: POP 00000640: SWAP1 00000641: POP 00000642: PUSH32 0xffffffffffffffffffffffff1111111111111111111111111111111111111112 00000663: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000678: DUP3 00000679: AND 0000067a: ADD 0000067b: PUSH2 0x06b0 0000067e: JUMPI 0000067f: PUSH1 0x40 00000681: MLOAD 00000682: PUSH32 0x0eaf3c0f00000000000000000000000000000000000000000000000000000000 000006a3: DUP2 000006a4: MSTORE 000006a5: PUSH1 0x04 000006a7: ADD 000006a8: PUSH1 0x40 000006aa: MLOAD 000006ab: DUP1 000006ac: SWAP2 000006ad: SUB 000006ae: SWAP1 000006af: REVERT 000006b0: JUMPDEST 000006b1: DUP8 000006b2: PUSH1 0x3d 000006b4: PUSH1 0x00 000006b6: DUP3 000006b7: DUP3 000006b8: SLOAD 000006b9: PUSH2 0x06c2 000006bc: SWAP2 000006bd: SWAP1 000006be: PUSH2 0x4ff7 000006c1: JUMP 000006c2: JUMPDEST 000006c3: SWAP1 000006c4: SWAP2 000006c5: SSTORE 000006c6: POP 000006c7: POP 000006c8: PUSH1 0x40 000006ca: MLOAD 000006cb: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000 000006ec: DUP2 000006ed: MSTORE 000006ee: ADDRESS 000006ef: PUSH1 0x04 000006f1: DUP3 000006f2: ADD 000006f3: MSTORE 000006f4: PUSH1 0x00 000006f6: SWAP1 000006f7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000070c: DUP4 0000070d: AND 0000070e: SWAP1 0000070f: PUSH4 0x70a08231 00000714: SWAP1 00000715: PUSH1 0x24 00000717: ADD 00000718: PUSH1 0x20 0000071a: PUSH1 0x40 0000071c: MLOAD 0000071d: DUP1 0000071e: DUP4 0000071f: SUB 00000720: DUP2 00000721: DUP7 00000722: GAS 00000723: STATICCALL 00000724: ISZERO 00000725: DUP1 00000726: ISZERO 00000727: PUSH2 0x0734 0000072a: JUMPI 0000072b: RETURNDATASIZE 0000072c: PUSH1 0x00 0000072e: DUP1 0000072f: RETURNDATACOPY 00000730: RETURNDATASIZE 00000731: PUSH1 0x00 00000733: REVERT 00000734: JUMPDEST 00000735: POP 00000736: POP 00000737: POP 00000738: POP 00000739: PUSH1 0x40 0000073b: MLOAD 0000073c: RETURNDATASIZE 0000073d: PUSH1 0x1f 0000073f: NOT 00000740: PUSH1 0x1f 00000742: DUP3 00000743: ADD 00000744: AND 00000745: DUP3 00000746: ADD 00000747: DUP1 00000748: PUSH1 0x40 0000074a: MSTORE 0000074b: POP 0000074c: DUP2 0000074d: ADD 0000074e: SWAP1 0000074f: PUSH2 0x0758 00000752: SWAP2 00000753: SWAP1 00000754: PUSH2 0x500f 00000757: JUMP 00000758: JUMPDEST 00000759: SWAP1 0000075a: POP 0000075b: PUSH2 0x077c 0000075e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000773: DUP4 00000774: AND 00000775: CALLER 00000776: ADDRESS 00000777: DUP13 00000778: PUSH2 0x2439 0000077b: JUMP 0000077c: JUMPDEST 0000077d: PUSH2 0x0786 00000780: DUP10 00000781: DUP3 00000782: PUSH2 0x4ff7 00000785: JUMP 00000786: JUMPDEST 00000787: PUSH1 0x40 00000789: MLOAD 0000078a: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000 000007ab: DUP2 000007ac: MSTORE 000007ad: ADDRESS 000007ae: PUSH1 0x04 000007b0: DUP3 000007b1: ADD 000007b2: MSTORE 000007b3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000007c8: DUP5 000007c9: AND 000007ca: SWAP1 000007cb: PUSH4 0x70a08231 000007d0: SWAP1 000007d1: PUSH1 0x24 000007d3: ADD 000007d4: PUSH1 0x20 000007d6: PUSH1 0x40 000007d8: MLOAD 000007d9: DUP1 000007da: DUP4 000007db: SUB 000007dc: DUP2 000007dd: DUP7 000007de: GAS 000007df: STATICCALL 000007e0: ISZERO 000007e1: DUP1 000007e2: ISZERO 000007e3: PUSH2 0x07f0 000007e6: JUMPI 000007e7: RETURNDATASIZE 000007e8: PUSH1 0x00 000007ea: DUP1 000007eb: RETURNDATACOPY 000007ec: RETURNDATASIZE 000007ed: PUSH1 0x00 000007ef: REVERT 000007f0: JUMPDEST 000007f1: POP 000007f2: POP 000007f3: POP 000007f4: POP 000007f5: PUSH1 0x40 000007f7: MLOAD 000007f8: RETURNDATASIZE 000007f9: PUSH1 0x1f 000007fb: NOT 000007fc: PUSH1 0x1f 000007fe: DUP3 000007ff: ADD 00000800: AND 00000801: DUP3 00000802: ADD 00000803: DUP1 00000804: PUSH1 0x40 00000806: MSTORE 00000807: POP 00000808: DUP2 00000809: ADD 0000080a: SWAP1 0000080b: PUSH2 0x0814 0000080e: SWAP2 0000080f: SWAP1 00000810: PUSH2 0x500f 00000813: JUMP 00000814: JUMPDEST 00000815: EQ 00000816: PUSH2 0x084b 00000819: JUMPI 0000081a: PUSH1 0x40 0000081c: MLOAD 0000081d: PUSH32 0x90b8ec1800000000000000000000000000000000000000000000000000000000 0000083e: DUP2 0000083f: MSTORE 00000840: PUSH1 0x04 00000842: ADD 00000843: PUSH1 0x40 00000845: MLOAD 00000846: DUP1 00000847: SWAP2 00000848: SUB 00000849: SWAP1 0000084a: REVERT 0000084b: JUMPDEST 0000084c: PUSH2 0x0859 0000084f: DUP11 00000850: DUP11 00000851: DUP11 00000852: DUP11 00000853: DUP11 00000854: DUP11 00000855: PUSH2 0x1fc0 00000858: JUMP 00000859: JUMPDEST 0000085a: POP 0000085b: POP 0000085c: PUSH2 0x0865 0000085f: DUP3 00000860: DUP3 00000861: PUSH2 0x216c 00000864: JUMP 00000865: JUMPDEST 00000866: POP 00000867: POP 00000868: POP 00000869: POP 0000086a: POP 0000086b: POP 0000086c: POP 0000086d: POP 0000086e: JUMP 0000086f: JUMPDEST 00000870: PUSH1 0x00 00000872: PUSH1 0x35 00000874: PUSH1 0x01 00000876: SWAP1 00000877: SLOAD 00000878: SWAP1 00000879: PUSH2 0x0100 0000087c: EXP 0000087d: SWAP1 0000087e: DIV 0000087f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000894: AND 00000895: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000008aa: AND 000008ab: PUSH4 0x452a9320 000008b0: PUSH1 0x40 000008b2: MLOAD 000008b3: DUP2 000008b4: PUSH4 0xffffffff 000008b9: AND 000008ba: PUSH1 0xe0 000008bc: SHL 000008bd: DUP2 000008be: MSTORE 000008bf: PUSH1 0x04 000008c1: ADD 000008c2: PUSH1 0x20 000008c4: PUSH1 0x40 000008c6: MLOAD 000008c7: DUP1 000008c8: DUP4 000008c9: SUB 000008ca: DUP2 000008cb: DUP7 000008cc: GAS 000008cd: STATICCALL 000008ce: ISZERO 000008cf: DUP1 000008d0: ISZERO 000008d1: PUSH2 0x08de 000008d4: JUMPI 000008d5: RETURNDATASIZE 000008d6: PUSH1 0x00 000008d8: DUP1 000008d9: RETURNDATACOPY 000008da: RETURNDATASIZE 000008db: PUSH1 0x00 000008dd: REVERT 000008de: JUMPDEST 000008df: POP 000008e0: POP 000008e1: POP 000008e2: POP 000008e3: PUSH1 0x40 000008e5: MLOAD 000008e6: RETURNDATASIZE 000008e7: PUSH1 0x1f 000008e9: NOT 000008ea: PUSH1 0x1f 000008ec: DUP3 000008ed: ADD 000008ee: AND 000008ef: DUP3 000008f0: ADD 000008f1: DUP1 000008f2: PUSH1 0x40 000008f4: MSTORE 000008f5: POP 000008f6: DUP2 000008f7: ADD 000008f8: SWAP1 000008f9: PUSH2 0x0902 000008fc: SWAP2 000008fd: SWAP1 000008fe: PUSH2 0x5028 00000901: JUMP 00000902: JUMPDEST 00000903: SWAP1 00000904: POP 00000905: SWAP1 00000906: JUMP 00000907: JUMPDEST 00000908: PUSH2 0x090f 0000090b: PUSH2 0x0eb4 0000090e: JUMP 0000090f: JUMPDEST 00000910: ISZERO 00000911: PUSH2 0x0946 00000914: JUMPI 00000915: PUSH1 0x40 00000917: MLOAD 00000918: PUSH32 0xf480973e00000000000000000000000000000000000000000000000000000000 00000939: DUP2 0000093a: MSTORE 0000093b: PUSH1 0x04 0000093d: ADD 0000093e: PUSH1 0x40 00000940: MLOAD 00000941: DUP1 00000942: SWAP2 00000943: SUB 00000944: SWAP1 00000945: REVERT 00000946: JUMPDEST 00000947: ADDRESS 00000948: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000095d: AND 0000095e: DUP6 0000095f: PUSH1 0x40 00000961: ADD 00000962: MLOAD 00000963: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000978: AND 00000979: SUB 0000097a: PUSH2 0x09af 0000097d: JUMPI 0000097e: PUSH1 0x40 00000980: MLOAD 00000981: PUSH32 0x13496fda00000000000000000000000000000000000000000000000000000000 000009a2: DUP2 000009a3: MSTORE 000009a4: PUSH1 0x04 000009a6: ADD 000009a7: PUSH1 0x40 000009a9: MLOAD 000009aa: DUP1 000009ab: SWAP2 000009ac: SUB 000009ad: SWAP1 000009ae: REVERT 000009af: JUMPDEST 000009b0: PUSH1 0x36 000009b2: SLOAD 000009b3: PUSH1 0x40 000009b5: MLOAD 000009b6: PUSH32 0xa25ae55700000000000000000000000000000000000000000000000000000000 000009d7: DUP2 000009d8: MSTORE 000009d9: PUSH1 0x04 000009db: DUP2 000009dc: ADD 000009dd: DUP7 000009de: SWAP1 000009df: MSTORE 000009e0: PUSH1 0x00 000009e2: SWAP2 000009e3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000009f8: AND 000009f9: SWAP1 000009fa: PUSH4 0xa25ae557 000009ff: SWAP1 00000a00: PUSH1 0x24 00000a02: ADD 00000a03: PUSH1 0x60 00000a05: PUSH1 0x40 00000a07: MLOAD 00000a08: DUP1 00000a09: DUP4 00000a0a: SUB 00000a0b: DUP2 00000a0c: DUP7 00000a0d: GAS 00000a0e: STATICCALL 00000a0f: ISZERO 00000a10: DUP1 00000a11: ISZERO 00000a12: PUSH2 0x0a1f 00000a15: JUMPI 00000a16: RETURNDATASIZE 00000a17: PUSH1 0x00 00000a19: DUP1 00000a1a: RETURNDATACOPY 00000a1b: RETURNDATASIZE 00000a1c: PUSH1 0x00 00000a1e: REVERT 00000a1f: JUMPDEST 00000a20: POP 00000a21: POP 00000a22: POP 00000a23: POP 00000a24: PUSH1 0x40 00000a26: MLOAD 00000a27: RETURNDATASIZE 00000a28: PUSH1 0x1f 00000a2a: NOT 00000a2b: PUSH1 0x1f 00000a2d: DUP3 00000a2e: ADD 00000a2f: AND 00000a30: DUP3 00000a31: ADD 00000a32: DUP1 00000a33: PUSH1 0x40 00000a35: MSTORE 00000a36: POP 00000a37: DUP2 00000a38: ADD 00000a39: SWAP1 00000a3a: PUSH2 0x0a43 00000a3d: SWAP2 00000a3e: SWAP1 00000a3f: PUSH2 0x5065 00000a42: JUMP 00000a43: JUMPDEST 00000a44: MLOAD 00000a45: SWAP1 00000a46: POP 00000a47: PUSH2 0x0a5d 00000a4a: PUSH2 0x0a58 00000a4d: CALLDATASIZE 00000a4e: DUP7 00000a4f: SWAP1 00000a50: SUB 00000a51: DUP7 00000a52: ADD 00000a53: DUP7 00000a54: PUSH2 0x50ca 00000a57: JUMP 00000a58: JUMPDEST 00000a59: PUSH2 0x2515 00000a5c: JUMP 00000a5d: JUMPDEST 00000a5e: DUP2 00000a5f: EQ 00000a60: PUSH2 0x0af0 00000a63: JUMPI 00000a64: PUSH1 0x40 00000a66: MLOAD 00000a67: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000a88: DUP2 00000a89: MSTORE 00000a8a: PUSH1 0x20 00000a8c: PUSH1 0x04 00000a8e: DUP3 00000a8f: ADD 00000a90: MSTORE 00000a91: PUSH1 0x29 00000a93: PUSH1 0x24 00000a95: DUP3 00000a96: ADD 00000a97: MSTORE 00000a98: PUSH32 0x4f7074696d69736d506f7274616c3a20696e76616c6964206f75747075742072 00000ab9: PUSH1 0x44 00000abb: DUP3 00000abc: ADD 00000abd: MSTORE 00000abe: PUSH32 0x6f6f742070726f6f660000000000000000000000000000000000000000000000 00000adf: PUSH1 0x64 00000ae1: DUP3 00000ae2: ADD 00000ae3: MSTORE 00000ae4: PUSH1 0x84 00000ae6: ADD 00000ae7: JUMPDEST 00000ae8: PUSH1 0x40 00000aea: MLOAD 00000aeb: DUP1 00000aec: SWAP2 00000aed: SUB 00000aee: SWAP1 00000aef: REVERT 00000af0: JUMPDEST 00000af1: PUSH1 0x00 00000af3: PUSH2 0x0afb 00000af6: DUP8 00000af7: PUSH2 0x2571 00000afa: JUMP 00000afb: JUMPDEST 00000afc: PUSH1 0x00 00000afe: DUP2 00000aff: DUP2 00000b00: MSTORE 00000b01: PUSH1 0x34 00000b03: PUSH1 0x20 00000b05: SWAP1 00000b06: DUP2 00000b07: MSTORE 00000b08: PUSH1 0x40 00000b0a: SWAP2 00000b0b: DUP3 00000b0c: SWAP1 00000b0d: KECCAK256 00000b0e: DUP3 00000b0f: MLOAD 00000b10: PUSH1 0x60 00000b12: DUP2 00000b13: ADD 00000b14: DUP5 00000b15: MSTORE 00000b16: DUP2 00000b17: SLOAD 00000b18: DUP2 00000b19: MSTORE 00000b1a: PUSH1 0x01 00000b1c: SWAP1 00000b1d: SWAP2 00000b1e: ADD 00000b1f: SLOAD 00000b20: PUSH16 0xffffffffffffffffffffffffffffffff 00000b31: DUP1 00000b32: DUP3 00000b33: AND 00000b34: SWAP4 00000b35: DUP4 00000b36: ADD 00000b37: DUP5 00000b38: SWAP1 00000b39: MSTORE 00000b3a: PUSH17 0x0100000000000000000000000000000000 00000b4c: SWAP1 00000b4d: SWAP2 00000b4e: DIV 00000b4f: AND 00000b50: SWAP3 00000b51: DUP2 00000b52: ADD 00000b53: SWAP3 00000b54: SWAP1 00000b55: SWAP3 00000b56: MSTORE 00000b57: SWAP2 00000b58: SWAP3 00000b59: POP 00000b5a: SWAP1 00000b5b: ISZERO 00000b5c: DUP1 00000b5d: PUSH2 0x0c11 00000b60: JUMPI 00000b61: POP 00000b62: DUP1 00000b63: MLOAD 00000b64: PUSH1 0x36 00000b66: SLOAD 00000b67: PUSH1 0x40 00000b69: DUP1 00000b6a: DUP5 00000b6b: ADD 00000b6c: MLOAD 00000b6d: SWAP1 00000b6e: MLOAD 00000b6f: PUSH32 0xa25ae55700000000000000000000000000000000000000000000000000000000 00000b90: DUP2 00000b91: MSTORE 00000b92: PUSH16 0xffffffffffffffffffffffffffffffff 00000ba3: SWAP1 00000ba4: SWAP2 00000ba5: AND 00000ba6: PUSH1 0x04 00000ba8: DUP3 00000ba9: ADD 00000baa: MSTORE 00000bab: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000bc0: SWAP1 00000bc1: SWAP2 00000bc2: AND 00000bc3: SWAP1 00000bc4: PUSH4 0xa25ae557 00000bc9: SWAP1 00000bca: PUSH1 0x24 00000bcc: ADD 00000bcd: PUSH1 0x60 00000bcf: PUSH1 0x40 00000bd1: MLOAD 00000bd2: DUP1 00000bd3: DUP4 00000bd4: SUB 00000bd5: DUP2 00000bd6: DUP7 00000bd7: GAS 00000bd8: STATICCALL 00000bd9: ISZERO 00000bda: DUP1 00000bdb: ISZERO 00000bdc: PUSH2 0x0be9 00000bdf: JUMPI 00000be0: RETURNDATASIZE 00000be1: PUSH1 0x00 00000be3: DUP1 00000be4: RETURNDATACOPY 00000be5: RETURNDATASIZE 00000be6: PUSH1 0x00 00000be8: REVERT 00000be9: JUMPDEST 00000bea: POP 00000beb: POP 00000bec: POP 00000bed: POP 00000bee: PUSH1 0x40 00000bf0: MLOAD 00000bf1: RETURNDATASIZE 00000bf2: PUSH1 0x1f 00000bf4: NOT 00000bf5: PUSH1 0x1f 00000bf7: DUP3 00000bf8: ADD 00000bf9: AND 00000bfa: DUP3 00000bfb: ADD 00000bfc: DUP1 00000bfd: PUSH1 0x40 00000bff: MSTORE 00000c00: POP 00000c01: DUP2 00000c02: ADD 00000c03: SWAP1 00000c04: PUSH2 0x0c0d 00000c07: SWAP2 00000c08: SWAP1 00000c09: PUSH2 0x5065 00000c0c: JUMP 00000c0d: JUMPDEST 00000c0e: MLOAD 00000c0f: EQ 00000c10: ISZERO 00000c11: JUMPDEST 00000c12: PUSH2 0x0c9d 00000c15: JUMPI 00000c16: PUSH1 0x40 00000c18: MLOAD 00000c19: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000c3a: DUP2 00000c3b: MSTORE 00000c3c: PUSH1 0x20 00000c3e: PUSH1 0x04 00000c40: DUP3 00000c41: ADD 00000c42: MSTORE 00000c43: PUSH1 0x37 00000c45: PUSH1 0x24 00000c47: DUP3 00000c48: ADD 00000c49: MSTORE 00000c4a: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c206861736820 00000c6b: PUSH1 0x44 00000c6d: DUP3 00000c6e: ADD 00000c6f: MSTORE 00000c70: PUSH32 0x68617320616c7265616479206265656e2070726f76656e000000000000000000 00000c91: PUSH1 0x64 00000c93: DUP3 00000c94: ADD 00000c95: MSTORE 00000c96: PUSH1 0x84 00000c98: ADD 00000c99: PUSH2 0x0ae7 00000c9c: JUMP 00000c9d: JUMPDEST 00000c9e: PUSH1 0x40 00000ca0: DUP1 00000ca1: MLOAD 00000ca2: PUSH1 0x20 00000ca4: DUP2 00000ca5: ADD 00000ca6: DUP5 00000ca7: SWAP1 00000ca8: MSTORE 00000ca9: PUSH1 0x00 00000cab: SWAP2 00000cac: DUP2 00000cad: ADD 00000cae: DUP3 00000caf: SWAP1 00000cb0: MSTORE 00000cb1: PUSH1 0x60 00000cb3: ADD 00000cb4: PUSH1 0x40 00000cb6: DUP1 00000cb7: MLOAD 00000cb8: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00000cd9: DUP2 00000cda: DUP5 00000cdb: SUB 00000cdc: ADD 00000cdd: DUP2 00000cde: MSTORE 00000cdf: DUP3 00000ce0: DUP3 00000ce1: MSTORE 00000ce2: DUP1 00000ce3: MLOAD 00000ce4: PUSH1 0x20 00000ce6: SWAP2 00000ce7: DUP3 00000ce8: ADD 00000ce9: KECCAK256 00000cea: SWAP1 00000ceb: DUP4 00000cec: ADD 00000ced: DUP2 00000cee: SWAP1 00000cef: MSTORE 00000cf0: SWAP3 00000cf1: POP 00000cf2: PUSH2 0x0d66 00000cf5: SWAP2 00000cf6: ADD 00000cf7: PUSH1 0x40 00000cf9: DUP1 00000cfa: MLOAD 00000cfb: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00000d1c: DUP2 00000d1d: DUP5 00000d1e: SUB 00000d1f: ADD 00000d20: DUP2 00000d21: MSTORE 00000d22: DUP3 00000d23: DUP3 00000d24: ADD 00000d25: SWAP1 00000d26: SWAP2 00000d27: MSTORE 00000d28: PUSH1 0x01 00000d2a: DUP3 00000d2b: MSTORE 00000d2c: PUSH32 0x0100000000000000000000000000000000000000000000000000000000000000 00000d4d: PUSH1 0x20 00000d4f: DUP4 00000d50: ADD 00000d51: MSTORE 00000d52: SWAP1 00000d53: PUSH2 0x0d5c 00000d56: DUP9 00000d57: DUP11 00000d58: PUSH2 0x5130 00000d5b: JUMP 00000d5c: JUMPDEST 00000d5d: DUP11 00000d5e: PUSH1 0x40 00000d60: ADD 00000d61: CALLDATALOAD 00000d62: PUSH2 0x25a1 00000d65: JUMP 00000d66: JUMPDEST 00000d67: PUSH2 0x0df2 00000d6a: JUMPI 00000d6b: PUSH1 0x40 00000d6d: MLOAD 00000d6e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000d8f: DUP2 00000d90: MSTORE 00000d91: PUSH1 0x20 00000d93: PUSH1 0x04 00000d95: DUP3 00000d96: ADD 00000d97: MSTORE 00000d98: PUSH1 0x32 00000d9a: PUSH1 0x24 00000d9c: DUP3 00000d9d: ADD 00000d9e: MSTORE 00000d9f: PUSH32 0x4f7074696d69736d506f7274616c3a20696e76616c6964207769746864726177 00000dc0: PUSH1 0x44 00000dc2: DUP3 00000dc3: ADD 00000dc4: MSTORE 00000dc5: PUSH32 0x616c20696e636c7573696f6e2070726f6f660000000000000000000000000000 00000de6: PUSH1 0x64 00000de8: DUP3 00000de9: ADD 00000dea: MSTORE 00000deb: PUSH1 0x84 00000ded: ADD 00000dee: PUSH2 0x0ae7 00000df1: JUMP 00000df2: JUMPDEST 00000df3: PUSH1 0x40 00000df5: DUP1 00000df6: MLOAD 00000df7: PUSH1 0x60 00000df9: DUP2 00000dfa: ADD 00000dfb: DUP3 00000dfc: MSTORE 00000dfd: DUP6 00000dfe: DUP2 00000dff: MSTORE 00000e00: PUSH16 0xffffffffffffffffffffffffffffffff 00000e11: TIMESTAMP 00000e12: DUP2 00000e13: AND 00000e14: PUSH1 0x20 00000e16: DUP1 00000e17: DUP5 00000e18: ADD 00000e19: SWAP2 00000e1a: DUP3 00000e1b: MSTORE 00000e1c: DUP13 00000e1d: DUP4 00000e1e: AND 00000e1f: DUP5 00000e20: DUP7 00000e21: ADD 00000e22: SWAP1 00000e23: DUP2 00000e24: MSTORE 00000e25: PUSH1 0x00 00000e27: DUP10 00000e28: DUP2 00000e29: MSTORE 00000e2a: PUSH1 0x34 00000e2c: DUP4 00000e2d: MSTORE 00000e2e: DUP7 00000e2f: DUP2 00000e30: KECCAK256 00000e31: SWAP6 00000e32: MLOAD 00000e33: DUP7 00000e34: SSTORE 00000e35: SWAP3 00000e36: MLOAD 00000e37: SWAP1 00000e38: MLOAD 00000e39: DUP5 00000e3a: AND 00000e3b: PUSH17 0x0100000000000000000000000000000000 00000e4d: MUL 00000e4e: SWAP4 00000e4f: AND 00000e50: SWAP3 00000e51: SWAP1 00000e52: SWAP3 00000e53: OR 00000e54: PUSH1 0x01 00000e56: SWAP1 00000e57: SWAP4 00000e58: ADD 00000e59: SWAP3 00000e5a: SWAP1 00000e5b: SWAP3 00000e5c: SSTORE 00000e5d: DUP12 00000e5e: DUP4 00000e5f: ADD 00000e60: MLOAD 00000e61: SWAP1 00000e62: DUP13 00000e63: ADD 00000e64: MLOAD 00000e65: SWAP3 00000e66: MLOAD 00000e67: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e7c: SWAP2 00000e7d: DUP3 00000e7e: AND 00000e7f: SWAP4 00000e80: SWAP1 00000e81: SWAP2 00000e82: AND 00000e83: SWAP2 00000e84: DUP7 00000e85: SWAP2 00000e86: PUSH32 0x67a6208cfcc0801d50f6cbe764733f4fddf66ac0b04442061a8a8c0cb6b63f62 00000ea7: SWAP2 00000ea8: SWAP1 00000ea9: LOG4 00000eaa: POP 00000eab: POP 00000eac: POP 00000ead: POP 00000eae: POP 00000eaf: POP 00000eb0: POP 00000eb1: POP 00000eb2: POP 00000eb3: JUMP 00000eb4: JUMPDEST 00000eb5: PUSH1 0x00 00000eb7: PUSH1 0x35 00000eb9: PUSH1 0x01 00000ebb: SWAP1 00000ebc: SLOAD 00000ebd: SWAP1 00000ebe: PUSH2 0x0100 00000ec1: EXP 00000ec2: SWAP1 00000ec3: DIV 00000ec4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000ed9: AND 00000eda: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000eef: AND 00000ef0: PUSH4 0x5c975abb 00000ef5: PUSH1 0x40 00000ef7: MLOAD 00000ef8: DUP2 00000ef9: PUSH4 0xffffffff 00000efe: AND 00000eff: PUSH1 0xe0 00000f01: SHL 00000f02: DUP2 00000f03: MSTORE 00000f04: PUSH1 0x04 00000f06: ADD 00000f07: PUSH1 0x20 00000f09: PUSH1 0x40 00000f0b: MLOAD 00000f0c: DUP1 00000f0d: DUP4 00000f0e: SUB 00000f0f: DUP2 00000f10: DUP7 00000f11: GAS 00000f12: STATICCALL 00000f13: ISZERO 00000f14: DUP1 00000f15: ISZERO 00000f16: PUSH2 0x0f23 00000f19: JUMPI 00000f1a: RETURNDATASIZE 00000f1b: PUSH1 0x00 00000f1d: DUP1 00000f1e: RETURNDATACOPY 00000f1f: RETURNDATASIZE 00000f20: PUSH1 0x00 00000f22: REVERT 00000f23: JUMPDEST 00000f24: POP 00000f25: POP 00000f26: POP 00000f27: POP 00000f28: PUSH1 0x40 00000f2a: MLOAD 00000f2b: RETURNDATASIZE 00000f2c: PUSH1 0x1f 00000f2e: NOT 00000f2f: PUSH1 0x1f 00000f31: DUP3 00000f32: ADD 00000f33: AND 00000f34: DUP3 00000f35: ADD 00000f36: DUP1 00000f37: PUSH1 0x40 00000f39: MSTORE 00000f3a: POP 00000f3b: DUP2 00000f3c: ADD 00000f3d: SWAP1 00000f3e: PUSH2 0x0902 00000f41: SWAP2 00000f42: SWAP1 00000f43: PUSH2 0x51b4 00000f46: JUMP 00000f47: JUMPDEST 00000f48: PUSH1 0x36 00000f4a: SLOAD 00000f4b: PUSH1 0x40 00000f4d: MLOAD 00000f4e: PUSH32 0xa25ae55700000000000000000000000000000000000000000000000000000000 00000f6f: DUP2 00000f70: MSTORE 00000f71: PUSH1 0x04 00000f73: DUP2 00000f74: ADD 00000f75: DUP4 00000f76: SWAP1 00000f77: MSTORE 00000f78: PUSH1 0x00 00000f7a: SWAP2 00000f7b: PUSH2 0x0ffc 00000f7e: SWAP2 00000f7f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000f94: SWAP1 00000f95: SWAP2 00000f96: AND 00000f97: SWAP1 00000f98: PUSH4 0xa25ae557 00000f9d: SWAP1 00000f9e: PUSH1 0x24 00000fa0: ADD 00000fa1: PUSH1 0x60 00000fa3: PUSH1 0x40 00000fa5: MLOAD 00000fa6: DUP1 00000fa7: DUP4 00000fa8: SUB 00000fa9: DUP2 00000faa: DUP7 00000fab: GAS 00000fac: STATICCALL 00000fad: ISZERO 00000fae: DUP1 00000faf: ISZERO 00000fb0: PUSH2 0x0fbd 00000fb3: JUMPI 00000fb4: RETURNDATASIZE 00000fb5: PUSH1 0x00 00000fb7: DUP1 00000fb8: RETURNDATACOPY 00000fb9: RETURNDATASIZE 00000fba: PUSH1 0x00 00000fbc: REVERT 00000fbd: JUMPDEST 00000fbe: POP 00000fbf: POP 00000fc0: POP 00000fc1: POP 00000fc2: PUSH1 0x40 00000fc4: MLOAD 00000fc5: RETURNDATASIZE 00000fc6: PUSH1 0x1f 00000fc8: NOT 00000fc9: PUSH1 0x1f 00000fcb: DUP3 00000fcc: ADD 00000fcd: AND 00000fce: DUP3 00000fcf: ADD 00000fd0: DUP1 00000fd1: PUSH1 0x40 00000fd3: MSTORE 00000fd4: POP 00000fd5: DUP2 00000fd6: ADD 00000fd7: SWAP1 00000fd8: PUSH2 0x0fe1 00000fdb: SWAP2 00000fdc: SWAP1 00000fdd: PUSH2 0x5065 00000fe0: JUMP 00000fe1: JUMPDEST 00000fe2: PUSH1 0x20 00000fe4: ADD 00000fe5: MLOAD 00000fe6: PUSH16 0xffffffffffffffffffffffffffffffff 00000ff7: AND 00000ff8: PUSH2 0x25c5 00000ffb: JUMP 00000ffc: JUMPDEST 00000ffd: SWAP3 00000ffe: SWAP2 00000fff: POP 00001000: POP 00001001: JUMP 00001002: JUMPDEST 00001003: PUSH1 0x37 00001005: SLOAD 00001006: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000101b: AND 0000101c: CALLER 0000101d: EQ 0000101e: PUSH2 0x1053 00001021: JUMPI 00001022: PUSH1 0x40 00001024: MLOAD 00001025: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000 00001046: DUP2 00001047: MSTORE 00001048: PUSH1 0x04 0000104a: ADD 0000104b: PUSH1 0x40 0000104d: MLOAD 0000104e: DUP1 0000104f: SWAP2 00001050: SUB 00001051: SWAP1 00001052: REVERT 00001053: JUMPDEST 00001054: PUSH2 0x105f 00001057: PUSH3 0x030d40 0000105b: PUSH2 0x266b 0000105e: JUMP 0000105f: JUMPDEST 00001060: PUSH1 0x40 00001062: MLOAD 00001063: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001078: DUP6 00001079: AND 0000107a: PUSH1 0x24 0000107c: DUP3 0000107d: ADD 0000107e: MSTORE 0000107f: PUSH1 0xff 00001081: DUP5 00001082: AND 00001083: PUSH1 0x44 00001085: DUP3 00001086: ADD 00001087: MSTORE 00001088: PUSH1 0x64 0000108a: DUP2 0000108b: ADD 0000108c: DUP4 0000108d: SWAP1 0000108e: MSTORE 0000108f: PUSH1 0x84 00001091: DUP2 00001092: ADD 00001093: DUP3 00001094: SWAP1 00001095: MSTORE 00001096: PUSH1 0x00 00001098: SWAP1 00001099: PUSH20 0x4200000000000000000000000000000000000015 000010ae: SWAP1 000010af: PUSH20 0xdeaddeaddeaddeaddeaddeaddeaddeaddead0001 000010c4: SWAP1 000010c5: PUSH32 0xb3813568d9991fc951961fcb4c784893574240a28925604d09fc577c55bb7c32 000010e6: SWAP1 000010e7: DUP5 000010e8: SWAP1 000010e9: DUP2 000010ea: SWAP1 000010eb: PUSH3 0x030d40 000010ef: SWAP1 000010f0: DUP3 000010f1: SWAP1 000010f2: PUSH1 0xa4 000010f4: ADD 000010f5: PUSH1 0x40 000010f7: DUP1 000010f8: MLOAD 000010f9: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 0000111a: DUP2 0000111b: DUP5 0000111c: SUB 0000111d: ADD 0000111e: DUP2 0000111f: MSTORE 00001120: SWAP2 00001121: DUP2 00001122: MSTORE 00001123: PUSH1 0x20 00001125: DUP1 00001126: DUP4 00001127: ADD 00001128: DUP1 00001129: MLOAD 0000112a: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00001147: AND 00001148: PUSH32 0x71cfaa3f00000000000000000000000000000000000000000000000000000000 00001169: OR 0000116a: SWAP1 0000116b: MSTORE 0000116c: SWAP1 0000116d: MLOAD 0000116e: PUSH2 0x117c 00001171: SWAP7 00001172: SWAP6 00001173: SWAP5 00001174: SWAP4 00001175: SWAP3 00001176: SWAP2 00001177: ADD 00001178: PUSH2 0x51d1 0000117b: JUMP 0000117c: JUMPDEST 0000117d: PUSH1 0x40 0000117f: DUP1 00001180: MLOAD 00001181: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 000011a2: DUP2 000011a3: DUP5 000011a4: SUB 000011a5: ADD 000011a6: DUP2 000011a7: MSTORE 000011a8: SWAP1 000011a9: DUP3 000011aa: SWAP1 000011ab: MSTORE 000011ac: PUSH2 0x11b4 000011af: SWAP2 000011b0: PUSH2 0x4e27 000011b3: JUMP 000011b4: JUMPDEST 000011b5: PUSH1 0x40 000011b7: MLOAD 000011b8: DUP1 000011b9: SWAP2 000011ba: SUB 000011bb: SWAP1 000011bc: LOG4 000011bd: POP 000011be: POP 000011bf: POP 000011c0: POP 000011c1: JUMP 000011c2: JUMPDEST 000011c3: JUMP 000011c4: JUMPDEST 000011c5: PUSH2 0x11cc 000011c8: PUSH2 0x0eb4 000011cb: JUMP 000011cc: JUMPDEST 000011cd: ISZERO 000011ce: PUSH2 0x1203 000011d1: JUMPI 000011d2: PUSH1 0x40 000011d4: MLOAD 000011d5: PUSH32 0xf480973e00000000000000000000000000000000000000000000000000000000 000011f6: DUP2 000011f7: MSTORE 000011f8: PUSH1 0x04 000011fa: ADD 000011fb: PUSH1 0x40 000011fd: MLOAD 000011fe: DUP1 000011ff: SWAP2 00001200: SUB 00001201: SWAP1 00001202: REVERT 00001203: JUMPDEST 00001204: PUSH1 0x32 00001206: SLOAD 00001207: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000121c: AND 0000121d: PUSH2 0xdead 00001220: EQ 00001221: PUSH2 0x1256 00001224: JUMPI 00001225: PUSH1 0x40 00001227: MLOAD 00001228: PUSH32 0x9396d15600000000000000000000000000000000000000000000000000000000 00001249: DUP2 0000124a: MSTORE 0000124b: PUSH1 0x04 0000124d: ADD 0000124e: PUSH1 0x40 00001250: MLOAD 00001251: DUP1 00001252: SWAP2 00001253: SUB 00001254: SWAP1 00001255: REVERT 00001256: JUMPDEST 00001257: PUSH1 0x00 00001259: PUSH2 0x1261 0000125c: DUP3 0000125d: PUSH2 0x2571 00001260: JUMP 00001261: JUMPDEST 00001262: PUSH1 0x00 00001264: DUP2 00001265: DUP2 00001266: MSTORE 00001267: PUSH1 0x34 00001269: PUSH1 0x20 0000126b: SWAP1 0000126c: DUP2 0000126d: MSTORE 0000126e: PUSH1 0x40 00001270: DUP1 00001271: DUP4 00001272: KECCAK256 00001273: DUP2 00001274: MLOAD 00001275: PUSH1 0x60 00001277: DUP2 00001278: ADD 00001279: DUP4 0000127a: MSTORE 0000127b: DUP2 0000127c: SLOAD 0000127d: DUP2 0000127e: MSTORE 0000127f: PUSH1 0x01 00001281: SWAP1 00001282: SWAP2 00001283: ADD 00001284: SLOAD 00001285: PUSH16 0xffffffffffffffffffffffffffffffff 00001296: DUP1 00001297: DUP3 00001298: AND 00001299: SWAP5 0000129a: DUP4 0000129b: ADD 0000129c: DUP6 0000129d: SWAP1 0000129e: MSTORE 0000129f: PUSH17 0x0100000000000000000000000000000000 000012b1: SWAP1 000012b2: SWAP2 000012b3: DIV 000012b4: AND 000012b5: SWAP2 000012b6: DUP2 000012b7: ADD 000012b8: SWAP2 000012b9: SWAP1 000012ba: SWAP2 000012bb: MSTORE 000012bc: SWAP3 000012bd: SWAP4 000012be: POP 000012bf: SWAP1 000012c0: SUB 000012c1: PUSH2 0x134c 000012c4: JUMPI 000012c5: PUSH1 0x40 000012c7: MLOAD 000012c8: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000012e9: DUP2 000012ea: MSTORE 000012eb: PUSH1 0x20 000012ed: PUSH1 0x04 000012ef: DUP3 000012f0: ADD 000012f1: MSTORE 000012f2: PUSH1 0x32 000012f4: PUSH1 0x24 000012f6: DUP3 000012f7: ADD 000012f8: MSTORE 000012f9: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c20686173206e 0000131a: PUSH1 0x44 0000131c: DUP3 0000131d: ADD 0000131e: MSTORE 0000131f: PUSH32 0x6f74206265656e2070726f76656e207965740000000000000000000000000000 00001340: PUSH1 0x64 00001342: DUP3 00001343: ADD 00001344: MSTORE 00001345: PUSH1 0x84 00001347: ADD 00001348: PUSH2 0x0ae7 0000134b: JUMP 0000134c: JUMPDEST 0000134d: PUSH1 0x36 0000134f: PUSH1 0x00 00001351: SWAP1 00001352: SLOAD 00001353: SWAP1 00001354: PUSH2 0x0100 00001357: EXP 00001358: SWAP1 00001359: DIV 0000135a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000136f: AND 00001370: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001385: AND 00001386: PUSH4 0x88786272 0000138b: PUSH1 0x40 0000138d: MLOAD 0000138e: DUP2 0000138f: PUSH4 0xffffffff 00001394: AND 00001395: PUSH1 0xe0 00001397: SHL 00001398: DUP2 00001399: MSTORE 0000139a: PUSH1 0x04 0000139c: ADD 0000139d: PUSH1 0x20 0000139f: PUSH1 0x40 000013a1: MLOAD 000013a2: DUP1 000013a3: DUP4 000013a4: SUB 000013a5: DUP2 000013a6: DUP7 000013a7: GAS 000013a8: STATICCALL 000013a9: ISZERO 000013aa: DUP1 000013ab: ISZERO 000013ac: PUSH2 0x13b9 000013af: JUMPI 000013b0: RETURNDATASIZE 000013b1: PUSH1 0x00 000013b3: DUP1 000013b4: RETURNDATACOPY 000013b5: RETURNDATASIZE 000013b6: PUSH1 0x00 000013b8: REVERT 000013b9: JUMPDEST 000013ba: POP 000013bb: POP 000013bc: POP 000013bd: POP 000013be: PUSH1 0x40 000013c0: MLOAD 000013c1: RETURNDATASIZE 000013c2: PUSH1 0x1f 000013c4: NOT 000013c5: PUSH1 0x1f 000013c7: DUP3 000013c8: ADD 000013c9: AND 000013ca: DUP3 000013cb: ADD 000013cc: DUP1 000013cd: PUSH1 0x40 000013cf: MSTORE 000013d0: POP 000013d1: DUP2 000013d2: ADD 000013d3: SWAP1 000013d4: PUSH2 0x13dd 000013d7: SWAP2 000013d8: SWAP1 000013d9: PUSH2 0x500f 000013dc: JUMP 000013dd: JUMPDEST 000013de: DUP2 000013df: PUSH1 0x20 000013e1: ADD 000013e2: MLOAD 000013e3: PUSH16 0xffffffffffffffffffffffffffffffff 000013f4: AND 000013f5: LT 000013f6: ISZERO 000013f7: PUSH2 0x14a8 000013fa: JUMPI 000013fb: PUSH1 0x40 000013fd: MLOAD 000013fe: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000141f: DUP2 00001420: MSTORE 00001421: PUSH1 0x20 00001423: PUSH1 0x04 00001425: DUP3 00001426: ADD 00001427: MSTORE 00001428: PUSH1 0x4b 0000142a: PUSH1 0x24 0000142c: DUP3 0000142d: ADD 0000142e: MSTORE 0000142f: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c2074696d6573 00001450: PUSH1 0x44 00001452: DUP3 00001453: ADD 00001454: MSTORE 00001455: PUSH32 0x74616d70206c657373207468616e204c32204f7261636c65207374617274696e 00001476: PUSH1 0x64 00001478: DUP3 00001479: ADD 0000147a: MSTORE 0000147b: PUSH32 0x672074696d657374616d70000000000000000000000000000000000000000000 0000149c: PUSH1 0x84 0000149e: DUP3 0000149f: ADD 000014a0: MSTORE 000014a1: PUSH1 0xa4 000014a3: ADD 000014a4: PUSH2 0x0ae7 000014a7: JUMP 000014a8: JUMPDEST 000014a9: PUSH2 0x14c7 000014ac: DUP2 000014ad: PUSH1 0x20 000014af: ADD 000014b0: MLOAD 000014b1: PUSH16 0xffffffffffffffffffffffffffffffff 000014c2: AND 000014c3: PUSH2 0x25c5 000014c6: JUMP 000014c7: JUMPDEST 000014c8: PUSH2 0x1579 000014cb: JUMPI 000014cc: PUSH1 0x40 000014ce: MLOAD 000014cf: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000014f0: DUP2 000014f1: MSTORE 000014f2: PUSH1 0x20 000014f4: PUSH1 0x04 000014f6: DUP3 000014f7: ADD 000014f8: MSTORE 000014f9: PUSH1 0x45 000014fb: PUSH1 0x24 000014fd: DUP3 000014fe: ADD 000014ff: MSTORE 00001500: PUSH32 0x4f7074696d69736d506f7274616c3a2070726f76656e20776974686472617761 00001521: PUSH1 0x44 00001523: DUP3 00001524: ADD 00001525: MSTORE 00001526: PUSH32 0x6c2066696e616c697a6174696f6e20706572696f6420686173206e6f7420656c 00001547: PUSH1 0x64 00001549: DUP3 0000154a: ADD 0000154b: MSTORE 0000154c: PUSH32 0x6170736564000000000000000000000000000000000000000000000000000000 0000156d: PUSH1 0x84 0000156f: DUP3 00001570: ADD 00001571: MSTORE 00001572: PUSH1 0xa4 00001574: ADD 00001575: PUSH2 0x0ae7 00001578: JUMP 00001579: JUMPDEST 0000157a: PUSH1 0x36 0000157c: SLOAD 0000157d: PUSH1 0x40 0000157f: DUP3 00001580: DUP2 00001581: ADD 00001582: MLOAD 00001583: SWAP1 00001584: MLOAD 00001585: PUSH32 0xa25ae55700000000000000000000000000000000000000000000000000000000 000015a6: DUP2 000015a7: MSTORE 000015a8: PUSH16 0xffffffffffffffffffffffffffffffff 000015b9: SWAP1 000015ba: SWAP2 000015bb: AND 000015bc: PUSH1 0x04 000015be: DUP3 000015bf: ADD 000015c0: MSTORE 000015c1: PUSH1 0x00 000015c3: SWAP2 000015c4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000015d9: AND 000015da: SWAP1 000015db: PUSH4 0xa25ae557 000015e0: SWAP1 000015e1: PUSH1 0x24 000015e3: ADD 000015e4: PUSH1 0x60 000015e6: PUSH1 0x40 000015e8: MLOAD 000015e9: DUP1 000015ea: DUP4 000015eb: SUB 000015ec: DUP2 000015ed: DUP7 000015ee: GAS 000015ef: STATICCALL 000015f0: ISZERO 000015f1: DUP1 000015f2: ISZERO 000015f3: PUSH2 0x1600 000015f6: JUMPI 000015f7: RETURNDATASIZE 000015f8: PUSH1 0x00 000015fa: DUP1 000015fb: RETURNDATACOPY 000015fc: RETURNDATASIZE 000015fd: PUSH1 0x00 000015ff: REVERT 00001600: JUMPDEST 00001601: POP 00001602: POP 00001603: POP 00001604: POP 00001605: PUSH1 0x40 00001607: MLOAD 00001608: RETURNDATASIZE 00001609: PUSH1 0x1f 0000160b: NOT 0000160c: PUSH1 0x1f 0000160e: DUP3 0000160f: ADD 00001610: AND 00001611: DUP3 00001612: ADD 00001613: DUP1 00001614: PUSH1 0x40 00001616: MSTORE 00001617: POP 00001618: DUP2 00001619: ADD 0000161a: SWAP1 0000161b: PUSH2 0x1624 0000161e: SWAP2 0000161f: SWAP1 00001620: PUSH2 0x5065 00001623: JUMP 00001624: JUMPDEST 00001625: DUP3 00001626: MLOAD 00001627: DUP2 00001628: MLOAD 00001629: SWAP2 0000162a: SWAP3 0000162b: POP 0000162c: EQ 0000162d: PUSH2 0x16de 00001630: JUMPI 00001631: PUSH1 0x40 00001633: MLOAD 00001634: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001655: DUP2 00001656: MSTORE 00001657: PUSH1 0x20 00001659: PUSH1 0x04 0000165b: DUP3 0000165c: ADD 0000165d: MSTORE 0000165e: PUSH1 0x49 00001660: PUSH1 0x24 00001662: DUP3 00001663: ADD 00001664: MSTORE 00001665: PUSH32 0x4f7074696d69736d506f7274616c3a206f757470757420726f6f742070726f76 00001686: PUSH1 0x44 00001688: DUP3 00001689: ADD 0000168a: MSTORE 0000168b: PUSH32 0x656e206973206e6f74207468652073616d652061732063757272656e74206f75 000016ac: PUSH1 0x64 000016ae: DUP3 000016af: ADD 000016b0: MSTORE 000016b1: PUSH32 0x7470757420726f6f740000000000000000000000000000000000000000000000 000016d2: PUSH1 0x84 000016d4: DUP3 000016d5: ADD 000016d6: MSTORE 000016d7: PUSH1 0xa4 000016d9: ADD 000016da: PUSH2 0x0ae7 000016dd: JUMP 000016de: JUMPDEST 000016df: PUSH2 0x16fd 000016e2: DUP2 000016e3: PUSH1 0x20 000016e5: ADD 000016e6: MLOAD 000016e7: PUSH16 0xffffffffffffffffffffffffffffffff 000016f8: AND 000016f9: PUSH2 0x25c5 000016fc: JUMP 000016fd: JUMPDEST 000016fe: PUSH2 0x17af 00001701: JUMPI 00001702: PUSH1 0x40 00001704: MLOAD 00001705: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001726: DUP2 00001727: MSTORE 00001728: PUSH1 0x20 0000172a: PUSH1 0x04 0000172c: DUP3 0000172d: ADD 0000172e: MSTORE 0000172f: PUSH1 0x43 00001731: PUSH1 0x24 00001733: DUP3 00001734: ADD 00001735: MSTORE 00001736: PUSH32 0x4f7074696d69736d506f7274616c3a206f75747075742070726f706f73616c20 00001757: PUSH1 0x44 00001759: DUP3 0000175a: ADD 0000175b: MSTORE 0000175c: PUSH32 0x66696e616c697a6174696f6e20706572696f6420686173206e6f7420656c6170 0000177d: PUSH1 0x64 0000177f: DUP3 00001780: ADD 00001781: MSTORE 00001782: PUSH32 0x7365640000000000000000000000000000000000000000000000000000000000 000017a3: PUSH1 0x84 000017a5: DUP3 000017a6: ADD 000017a7: MSTORE 000017a8: PUSH1 0xa4 000017aa: ADD 000017ab: PUSH2 0x0ae7 000017ae: JUMP 000017af: JUMPDEST 000017b0: PUSH1 0x00 000017b2: DUP4 000017b3: DUP2 000017b4: MSTORE 000017b5: PUSH1 0x33 000017b7: PUSH1 0x20 000017b9: MSTORE 000017ba: PUSH1 0x40 000017bc: SWAP1 000017bd: KECCAK256 000017be: SLOAD 000017bf: PUSH1 0xff 000017c1: AND 000017c2: ISZERO 000017c3: PUSH2 0x184e 000017c6: JUMPI 000017c7: PUSH1 0x40 000017c9: MLOAD 000017ca: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000017eb: DUP2 000017ec: MSTORE 000017ed: PUSH1 0x20 000017ef: PUSH1 0x04 000017f1: DUP3 000017f2: ADD 000017f3: MSTORE 000017f4: PUSH1 0x35 000017f6: PUSH1 0x24 000017f8: DUP3 000017f9: ADD 000017fa: MSTORE 000017fb: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c206861732061 0000181c: PUSH1 0x44 0000181e: DUP3 0000181f: ADD 00001820: MSTORE 00001821: PUSH32 0x6c7265616479206265656e2066696e616c697a65640000000000000000000000 00001842: PUSH1 0x64 00001844: DUP3 00001845: ADD 00001846: MSTORE 00001847: PUSH1 0x84 00001849: ADD 0000184a: PUSH2 0x0ae7 0000184d: JUMP 0000184e: JUMPDEST 0000184f: PUSH1 0x00 00001851: DUP4 00001852: DUP2 00001853: MSTORE 00001854: PUSH1 0x33 00001856: PUSH1 0x20 00001858: SWAP1 00001859: DUP2 0000185a: MSTORE 0000185b: PUSH1 0x40 0000185d: DUP3 0000185e: KECCAK256 0000185f: DUP1 00001860: SLOAD 00001861: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 00001882: AND 00001883: PUSH1 0x01 00001885: OR 00001886: SWAP1 00001887: SSTORE 00001888: DUP6 00001889: ADD 0000188a: MLOAD 0000188b: PUSH1 0x32 0000188d: DUP1 0000188e: SLOAD 0000188f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000018a4: SWAP1 000018a5: SWAP3 000018a6: AND 000018a7: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 000018c8: SWAP1 000018c9: SWAP3 000018ca: AND 000018cb: SWAP2 000018cc: SWAP1 000018cd: SWAP2 000018ce: OR 000018cf: SWAP1 000018d0: SSTORE 000018d1: DUP1 000018d2: PUSH2 0x18d9 000018d5: PUSH2 0x1f23 000018d8: JUMP 000018d9: JUMPDEST 000018da: POP 000018db: SWAP1 000018dc: POP 000018dd: PUSH32 0xffffffffffffffffffffffff1111111111111111111111111111111111111112 000018fe: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001913: DUP3 00001914: AND 00001915: ADD 00001916: PUSH2 0x193c 00001919: JUMPI 0000191a: PUSH2 0x1935 0000191d: DUP7 0000191e: PUSH1 0x40 00001920: ADD 00001921: MLOAD 00001922: DUP8 00001923: PUSH1 0x80 00001925: ADD 00001926: MLOAD 00001927: DUP9 00001928: PUSH1 0x60 0000192a: ADD 0000192b: MLOAD 0000192c: DUP10 0000192d: PUSH1 0xa0 0000192f: ADD 00001930: MLOAD 00001931: PUSH2 0x26cd 00001934: JUMP 00001935: JUMPDEST 00001936: SWAP2 00001937: POP 00001938: PUSH2 0x1b8f 0000193b: JUMP 0000193c: JUMPDEST 0000193d: DUP1 0000193e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001953: AND 00001954: DUP7 00001955: PUSH1 0x40 00001957: ADD 00001958: MLOAD 00001959: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000196e: AND 0000196f: SUB 00001970: PUSH2 0x19a5 00001973: JUMPI 00001974: PUSH1 0x40 00001976: MLOAD 00001977: PUSH32 0x13496fda00000000000000000000000000000000000000000000000000000000 00001998: DUP2 00001999: MSTORE 0000199a: PUSH1 0x04 0000199c: ADD 0000199d: PUSH1 0x40 0000199f: MLOAD 000019a0: DUP1 000019a1: SWAP2 000019a2: SUB 000019a3: SWAP1 000019a4: REVERT 000019a5: JUMPDEST 000019a6: PUSH1 0x60 000019a8: DUP7 000019a9: ADD 000019aa: MLOAD 000019ab: ISZERO 000019ac: PUSH2 0x1b66 000019af: JUMPI 000019b0: DUP6 000019b1: PUSH1 0x60 000019b3: ADD 000019b4: MLOAD 000019b5: PUSH1 0x3d 000019b7: PUSH1 0x00 000019b9: DUP3 000019ba: DUP3 000019bb: SLOAD 000019bc: PUSH2 0x19c5 000019bf: SWAP2 000019c0: SWAP1 000019c1: PUSH2 0x5236 000019c4: JUMP 000019c5: JUMPDEST 000019c6: SWAP1 000019c7: SWAP2 000019c8: SSTORE 000019c9: POP 000019ca: POP 000019cb: PUSH1 0x40 000019cd: MLOAD 000019ce: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000 000019ef: DUP2 000019f0: MSTORE 000019f1: ADDRESS 000019f2: PUSH1 0x04 000019f4: DUP3 000019f5: ADD 000019f6: MSTORE 000019f7: PUSH1 0x00 000019f9: SWAP1 000019fa: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a0f: DUP4 00001a10: AND 00001a11: SWAP1 00001a12: PUSH4 0x70a08231 00001a17: SWAP1 00001a18: PUSH1 0x24 00001a1a: ADD 00001a1b: PUSH1 0x20 00001a1d: PUSH1 0x40 00001a1f: MLOAD 00001a20: DUP1 00001a21: DUP4 00001a22: SUB 00001a23: DUP2 00001a24: DUP7 00001a25: GAS 00001a26: STATICCALL 00001a27: ISZERO 00001a28: DUP1 00001a29: ISZERO 00001a2a: PUSH2 0x1a37 00001a2d: JUMPI 00001a2e: RETURNDATASIZE 00001a2f: PUSH1 0x00 00001a31: DUP1 00001a32: RETURNDATACOPY 00001a33: RETURNDATASIZE 00001a34: PUSH1 0x00 00001a36: REVERT 00001a37: JUMPDEST 00001a38: POP 00001a39: POP 00001a3a: POP 00001a3b: POP 00001a3c: PUSH1 0x40 00001a3e: MLOAD 00001a3f: RETURNDATASIZE 00001a40: PUSH1 0x1f 00001a42: NOT 00001a43: PUSH1 0x1f 00001a45: DUP3 00001a46: ADD 00001a47: AND 00001a48: DUP3 00001a49: ADD 00001a4a: DUP1 00001a4b: PUSH1 0x40 00001a4d: MSTORE 00001a4e: POP 00001a4f: DUP2 00001a50: ADD 00001a51: SWAP1 00001a52: PUSH2 0x1a5b 00001a55: SWAP2 00001a56: SWAP1 00001a57: PUSH2 0x500f 00001a5a: JUMP 00001a5b: JUMPDEST 00001a5c: SWAP1 00001a5d: POP 00001a5e: PUSH2 0x1a90 00001a61: DUP8 00001a62: PUSH1 0x40 00001a64: ADD 00001a65: MLOAD 00001a66: DUP9 00001a67: PUSH1 0x60 00001a69: ADD 00001a6a: MLOAD 00001a6b: DUP5 00001a6c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a81: AND 00001a82: PUSH2 0x272b 00001a85: SWAP1 00001a86: SWAP3 00001a87: SWAP2 00001a88: SWAP1 00001a89: PUSH4 0xffffffff 00001a8e: AND 00001a8f: JUMP 00001a90: JUMPDEST 00001a91: PUSH1 0x60 00001a93: DUP8 00001a94: ADD 00001a95: MLOAD 00001a96: PUSH2 0x1a9f 00001a99: SWAP1 00001a9a: DUP3 00001a9b: PUSH2 0x5236 00001a9e: JUMP 00001a9f: JUMPDEST 00001aa0: PUSH1 0x40 00001aa2: MLOAD 00001aa3: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000 00001ac4: DUP2 00001ac5: MSTORE 00001ac6: ADDRESS 00001ac7: PUSH1 0x04 00001ac9: DUP3 00001aca: ADD 00001acb: MSTORE 00001acc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001ae1: DUP5 00001ae2: AND 00001ae3: SWAP1 00001ae4: PUSH4 0x70a08231 00001ae9: SWAP1 00001aea: PUSH1 0x24 00001aec: ADD 00001aed: PUSH1 0x20 00001aef: PUSH1 0x40 00001af1: MLOAD 00001af2: DUP1 00001af3: DUP4 00001af4: SUB 00001af5: DUP2 00001af6: DUP7 00001af7: GAS 00001af8: STATICCALL 00001af9: ISZERO 00001afa: DUP1 00001afb: ISZERO 00001afc: PUSH2 0x1b09 00001aff: JUMPI 00001b00: RETURNDATASIZE 00001b01: PUSH1 0x00 00001b03: DUP1 00001b04: RETURNDATACOPY 00001b05: RETURNDATASIZE 00001b06: PUSH1 0x00 00001b08: REVERT 00001b09: JUMPDEST 00001b0a: POP 00001b0b: POP 00001b0c: POP 00001b0d: POP 00001b0e: PUSH1 0x40 00001b10: MLOAD 00001b11: RETURNDATASIZE 00001b12: PUSH1 0x1f 00001b14: NOT 00001b15: PUSH1 0x1f 00001b17: DUP3 00001b18: ADD 00001b19: AND 00001b1a: DUP3 00001b1b: ADD 00001b1c: DUP1 00001b1d: PUSH1 0x40 00001b1f: MSTORE 00001b20: POP 00001b21: DUP2 00001b22: ADD 00001b23: SWAP1 00001b24: PUSH2 0x1b2d 00001b27: SWAP2 00001b28: SWAP1 00001b29: PUSH2 0x500f 00001b2c: JUMP 00001b2d: JUMPDEST 00001b2e: EQ 00001b2f: PUSH2 0x1b64 00001b32: JUMPI 00001b33: PUSH1 0x40 00001b35: MLOAD 00001b36: PUSH32 0x90b8ec1800000000000000000000000000000000000000000000000000000000 00001b57: DUP2 00001b58: MSTORE 00001b59: PUSH1 0x04 00001b5b: ADD 00001b5c: PUSH1 0x40 00001b5e: MLOAD 00001b5f: DUP1 00001b60: SWAP2 00001b61: SUB 00001b62: SWAP1 00001b63: REVERT 00001b64: JUMPDEST 00001b65: POP 00001b66: JUMPDEST 00001b67: PUSH1 0xa0 00001b69: DUP7 00001b6a: ADD 00001b6b: MLOAD 00001b6c: MLOAD 00001b6d: ISZERO 00001b6e: PUSH2 0x1b8a 00001b71: JUMPI 00001b72: PUSH2 0x1935 00001b75: DUP7 00001b76: PUSH1 0x40 00001b78: ADD 00001b79: MLOAD 00001b7a: DUP8 00001b7b: PUSH1 0x80 00001b7d: ADD 00001b7e: MLOAD 00001b7f: PUSH1 0x00 00001b81: DUP10 00001b82: PUSH1 0xa0 00001b84: ADD 00001b85: MLOAD 00001b86: PUSH2 0x26cd 00001b89: JUMP 00001b8a: JUMPDEST 00001b8b: PUSH1 0x01 00001b8d: SWAP2 00001b8e: POP 00001b8f: JUMPDEST 00001b90: PUSH1 0x32 00001b92: DUP1 00001b93: SLOAD 00001b94: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 00001bb5: AND 00001bb6: PUSH2 0xdead 00001bb9: OR 00001bba: SWAP1 00001bbb: SSTORE 00001bbc: PUSH1 0x40 00001bbe: MLOAD 00001bbf: DUP6 00001bc0: SWAP1 00001bc1: PUSH32 0xdb5c7652857aa163daadd670e116628fb42e869d8ac4251ef8971d9e5727df1b 00001be2: SWAP1 00001be3: PUSH2 0x1bf1 00001be6: SWAP1 00001be7: DUP6 00001be8: ISZERO 00001be9: ISZERO 00001bea: DUP2 00001beb: MSTORE 00001bec: PUSH1 0x20 00001bee: ADD 00001bef: SWAP1 00001bf0: JUMP 00001bf1: JUMPDEST 00001bf2: PUSH1 0x40 00001bf4: MLOAD 00001bf5: DUP1 00001bf6: SWAP2 00001bf7: SUB 00001bf8: SWAP1 00001bf9: LOG2 00001bfa: DUP2 00001bfb: ISZERO 00001bfc: DUP1 00001bfd: ISZERO 00001bfe: PUSH2 0x1c07 00001c01: JUMPI 00001c02: POP 00001c03: ORIGIN 00001c04: PUSH1 0x01 00001c06: EQ 00001c07: JUMPDEST 00001c08: ISZERO 00001c09: PUSH2 0x1c3e 00001c0c: JUMPI 00001c0d: PUSH1 0x40 00001c0f: MLOAD 00001c10: PUSH32 0xeeae4ed300000000000000000000000000000000000000000000000000000000 00001c31: DUP2 00001c32: MSTORE 00001c33: PUSH1 0x04 00001c35: ADD 00001c36: PUSH1 0x40 00001c38: MLOAD 00001c39: DUP1 00001c3a: SWAP2 00001c3b: SUB 00001c3c: SWAP1 00001c3d: REVERT 00001c3e: JUMPDEST 00001c3f: POP 00001c40: POP 00001c41: POP 00001c42: POP 00001c43: POP 00001c44: POP 00001c45: JUMP 00001c46: JUMPDEST 00001c47: PUSH1 0x00 00001c49: PUSH2 0x1c53 00001c4c: DUP3 00001c4d: PUSH1 0x10 00001c4f: PUSH2 0x524d 00001c52: JUMP 00001c53: JUMPDEST 00001c54: PUSH2 0x0ffc 00001c57: SWAP1 00001c58: PUSH2 0x5208 00001c5b: PUSH2 0x527d 00001c5e: JUMP 00001c5f: JUMPDEST 00001c60: PUSH1 0x00 00001c62: DUP1 00001c63: PUSH2 0x1c6a 00001c66: PUSH2 0x1f23 00001c69: JUMP 00001c6a: JUMPDEST 00001c6b: POP 00001c6c: SWAP1 00001c6d: POP 00001c6e: PUSH32 0xffffffffffffffffffffffff1111111111111111111111111111111111111112 00001c8f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001ca4: DUP3 00001ca5: AND 00001ca6: ADD 00001ca7: PUSH2 0x1cb1 00001caa: JUMPI 00001cab: SELFBALANCE 00001cac: SWAP2 00001cad: POP 00001cae: POP 00001caf: SWAP1 00001cb0: JUMP 00001cb1: JUMPDEST 00001cb2: POP 00001cb3: POP 00001cb4: PUSH1 0x3d 00001cb6: SLOAD 00001cb7: SWAP1 00001cb8: JUMP 00001cb9: JUMPDEST 00001cba: PUSH1 0x00 00001cbc: SLOAD 00001cbd: PUSH2 0x0100 00001cc0: SWAP1 00001cc1: DIV 00001cc2: PUSH1 0xff 00001cc4: AND 00001cc5: ISZERO 00001cc6: DUP1 00001cc7: DUP1 00001cc8: ISZERO 00001cc9: PUSH2 0x1cd9 00001ccc: JUMPI 00001ccd: POP 00001cce: PUSH1 0x00 00001cd0: SLOAD 00001cd1: PUSH1 0x01 00001cd3: PUSH1 0xff 00001cd5: SWAP1 00001cd6: SWAP2 00001cd7: AND 00001cd8: LT 00001cd9: JUMPDEST 00001cda: DUP1 00001cdb: PUSH2 0x1cf3 00001cde: JUMPI 00001cdf: POP 00001ce0: ADDRESS 00001ce1: EXTCODESIZE 00001ce2: ISZERO 00001ce3: DUP1 00001ce4: ISZERO 00001ce5: PUSH2 0x1cf3 00001ce8: JUMPI 00001ce9: POP 00001cea: PUSH1 0x00 00001cec: SLOAD 00001ced: PUSH1 0xff 00001cef: AND 00001cf0: PUSH1 0x01 00001cf2: EQ 00001cf3: JUMPDEST 00001cf4: PUSH2 0x1d7f 00001cf7: JUMPI 00001cf8: PUSH1 0x40 00001cfa: MLOAD 00001cfb: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001d1c: DUP2 00001d1d: MSTORE 00001d1e: PUSH1 0x20 00001d20: PUSH1 0x04 00001d22: DUP3 00001d23: ADD 00001d24: MSTORE 00001d25: PUSH1 0x2e 00001d27: PUSH1 0x24 00001d29: DUP3 00001d2a: ADD 00001d2b: MSTORE 00001d2c: PUSH32 0x496e697469616c697a61626c653a20636f6e747261637420697320616c726561 00001d4d: PUSH1 0x44 00001d4f: DUP3 00001d50: ADD 00001d51: MSTORE 00001d52: PUSH32 0x647920696e697469616c697a6564000000000000000000000000000000000000 00001d73: PUSH1 0x64 00001d75: DUP3 00001d76: ADD 00001d77: MSTORE 00001d78: PUSH1 0x84 00001d7a: ADD 00001d7b: PUSH2 0x0ae7 00001d7e: JUMP 00001d7f: JUMPDEST 00001d80: PUSH1 0x00 00001d82: DUP1 00001d83: SLOAD 00001d84: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 00001da5: AND 00001da6: PUSH1 0x01 00001da8: OR 00001da9: SWAP1 00001daa: SSTORE 00001dab: DUP1 00001dac: ISZERO 00001dad: PUSH2 0x1ddd 00001db0: JUMPI 00001db1: PUSH1 0x00 00001db3: DUP1 00001db4: SLOAD 00001db5: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff 00001dd6: AND 00001dd7: PUSH2 0x0100 00001dda: OR 00001ddb: SWAP1 00001ddc: SSTORE 00001ddd: JUMPDEST 00001dde: PUSH1 0x36 00001de0: DUP1 00001de1: SLOAD 00001de2: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 00001e03: SWAP1 00001e04: DUP2 00001e05: AND 00001e06: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001e1b: DUP8 00001e1c: DUP2 00001e1d: AND 00001e1e: SWAP2 00001e1f: SWAP1 00001e20: SWAP2 00001e21: OR 00001e22: SWAP1 00001e23: SWAP3 00001e24: SSTORE 00001e25: PUSH1 0x37 00001e27: DUP1 00001e28: SLOAD 00001e29: SWAP1 00001e2a: SWAP2 00001e2b: AND 00001e2c: DUP6 00001e2d: DUP4 00001e2e: AND 00001e2f: OR 00001e30: SWAP1 00001e31: SSTORE 00001e32: PUSH1 0x35 00001e34: DUP1 00001e35: SLOAD 00001e36: PUSH32 0xffffffffffffffffffffff0000000000000000000000000000000000000000ff 00001e57: AND 00001e58: PUSH2 0x0100 00001e5b: DUP6 00001e5c: DUP5 00001e5d: AND 00001e5e: MUL 00001e5f: OR 00001e60: SWAP1 00001e61: SSTORE 00001e62: PUSH1 0x32 00001e64: SLOAD 00001e65: AND 00001e66: PUSH2 0x1e96 00001e69: JUMPI 00001e6a: PUSH1 0x32 00001e6c: DUP1 00001e6d: SLOAD 00001e6e: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 00001e8f: AND 00001e90: PUSH2 0xdead 00001e93: OR 00001e94: SWAP1 00001e95: SSTORE 00001e96: JUMPDEST 00001e97: PUSH2 0x1e9e 00001e9a: PUSH2 0x2786 00001e9d: JUMP 00001e9e: JUMPDEST 00001e9f: DUP1 00001ea0: ISZERO 00001ea1: PUSH2 0x1f01 00001ea4: JUMPI 00001ea5: PUSH1 0x00 00001ea7: DUP1 00001ea8: SLOAD 00001ea9: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff 00001eca: AND 00001ecb: SWAP1 00001ecc: SSTORE 00001ecd: PUSH1 0x40 00001ecf: MLOAD 00001ed0: PUSH1 0x01 00001ed2: DUP2 00001ed3: MSTORE 00001ed4: PUSH32 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498 00001ef5: SWAP1 00001ef6: PUSH1 0x20 00001ef8: ADD 00001ef9: PUSH1 0x40 00001efb: MLOAD 00001efc: DUP1 00001efd: SWAP2 00001efe: SUB 00001eff: SWAP1 00001f00: LOG1 00001f01: JUMPDEST 00001f02: POP 00001f03: POP 00001f04: POP 00001f05: POP 00001f06: JUMP 00001f07: JUMPDEST 00001f08: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001f1d: AND 00001f1e: EXTCODESIZE 00001f1f: ISZERO 00001f20: ISZERO 00001f21: SWAP1 00001f22: JUMP 00001f23: JUMPDEST 00001f24: PUSH1 0x37 00001f26: SLOAD 00001f27: PUSH1 0x40 00001f29: DUP1 00001f2a: MLOAD 00001f2b: PUSH32 0x4397dfef00000000000000000000000000000000000000000000000000000000 00001f4c: DUP2 00001f4d: MSTORE 00001f4e: DUP2 00001f4f: MLOAD 00001f50: PUSH1 0x00 00001f52: SWAP4 00001f53: DUP5 00001f54: SWAP4 00001f55: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001f6a: SWAP1 00001f6b: SWAP2 00001f6c: AND 00001f6d: SWAP3 00001f6e: PUSH4 0x4397dfef 00001f73: SWAP3 00001f74: PUSH1 0x04 00001f76: DUP1 00001f77: DUP4 00001f78: ADD 00001f79: SWAP4 00001f7a: SWAP3 00001f7b: DUP3 00001f7c: SWAP1 00001f7d: SUB 00001f7e: ADD 00001f7f: DUP2 00001f80: DUP7 00001f81: GAS 00001f82: STATICCALL 00001f83: ISZERO 00001f84: DUP1 00001f85: ISZERO 00001f86: PUSH2 0x1f93 00001f89: JUMPI 00001f8a: RETURNDATASIZE 00001f8b: PUSH1 0x00 00001f8d: DUP1 00001f8e: RETURNDATACOPY 00001f8f: RETURNDATASIZE 00001f90: PUSH1 0x00 00001f92: REVERT 00001f93: JUMPDEST 00001f94: POP 00001f95: POP 00001f96: POP 00001f97: POP 00001f98: PUSH1 0x40 00001f9a: MLOAD 00001f9b: RETURNDATASIZE 00001f9c: PUSH1 0x1f 00001f9e: NOT 00001f9f: PUSH1 0x1f 00001fa1: DUP3 00001fa2: ADD 00001fa3: AND 00001fa4: DUP3 00001fa5: ADD 00001fa6: DUP1 00001fa7: PUSH1 0x40 00001fa9: MSTORE 00001faa: POP 00001fab: DUP2 00001fac: ADD 00001fad: SWAP1 00001fae: PUSH2 0x1fb7 00001fb1: SWAP2 00001fb2: SWAP1 00001fb3: PUSH2 0x52a9 00001fb6: JUMP 00001fb7: JUMPDEST 00001fb8: SWAP1 00001fb9: SWAP4 00001fba: SWAP1 00001fbb: SWAP3 00001fbc: POP 00001fbd: SWAP1 00001fbe: POP 00001fbf: JUMP 00001fc0: JUMPDEST 00001fc1: DUP2 00001fc2: DUP1 00001fc3: ISZERO 00001fc4: PUSH2 0x1fe2 00001fc7: JUMPI 00001fc8: POP 00001fc9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001fde: DUP7 00001fdf: AND 00001fe0: ISZERO 00001fe1: ISZERO 00001fe2: JUMPDEST 00001fe3: ISZERO 00001fe4: PUSH2 0x2019 00001fe7: JUMPI 00001fe8: PUSH1 0x40 00001fea: MLOAD 00001feb: PUSH32 0x13496fda00000000000000000000000000000000000000000000000000000000 0000200c: DUP2 0000200d: MSTORE 0000200e: PUSH1 0x04 00002010: ADD 00002011: PUSH1 0x40 00002013: MLOAD 00002014: DUP1 00002015: SWAP2 00002016: SUB 00002017: SWAP1 00002018: REVERT 00002019: JUMPDEST 0000201a: PUSH2 0x2023 0000201d: DUP2 0000201e: MLOAD 0000201f: PUSH2 0x1c46 00002022: JUMP 00002023: JUMPDEST 00002024: PUSH8 0xffffffffffffffff 0000202d: AND 0000202e: DUP4 0000202f: PUSH8 0xffffffffffffffff 00002038: AND 00002039: LT 0000203a: ISZERO 0000203b: PUSH2 0x2070 0000203e: JUMPI 0000203f: PUSH1 0x40 00002041: MLOAD 00002042: PUSH32 0x4929b80800000000000000000000000000000000000000000000000000000000 00002063: DUP2 00002064: MSTORE 00002065: PUSH1 0x04 00002067: ADD 00002068: PUSH1 0x40 0000206a: MLOAD 0000206b: DUP1 0000206c: SWAP2 0000206d: SUB 0000206e: SWAP1 0000206f: REVERT 00002070: JUMPDEST 00002071: PUSH3 0x01d4c0 00002075: DUP2 00002076: MLOAD 00002077: GT 00002078: ISZERO 00002079: PUSH2 0x20ae 0000207c: JUMPI 0000207d: PUSH1 0x40 0000207f: MLOAD 00002080: PUSH32 0x73052b0f00000000000000000000000000000000000000000000000000000000 000020a1: DUP2 000020a2: MSTORE 000020a3: PUSH1 0x04 000020a5: ADD 000020a6: PUSH1 0x40 000020a8: MLOAD 000020a9: DUP1 000020aa: SWAP2 000020ab: SUB 000020ac: SWAP1 000020ad: REVERT 000020ae: JUMPDEST 000020af: CALLER 000020b0: ORIGIN 000020b1: DUP2 000020b2: EQ 000020b3: PUSH2 0x20cf 000020b6: JUMPI 000020b7: POP 000020b8: CALLER 000020b9: PUSH20 0x1111000000000000000000000000000000001111 000020ce: ADD 000020cf: JUMPDEST 000020d0: PUSH1 0x00 000020d2: DUP7 000020d3: DUP7 000020d4: DUP7 000020d5: DUP7 000020d6: DUP7 000020d7: PUSH1 0x40 000020d9: MLOAD 000020da: PUSH1 0x20 000020dc: ADD 000020dd: PUSH2 0x20ea 000020e0: SWAP6 000020e1: SWAP5 000020e2: SWAP4 000020e3: SWAP3 000020e4: SWAP2 000020e5: SWAP1 000020e6: PUSH2 0x51d1 000020e9: JUMP 000020ea: JUMPDEST 000020eb: PUSH1 0x40 000020ed: MLOAD 000020ee: PUSH1 0x20 000020f0: DUP2 000020f1: DUP4 000020f2: SUB 000020f3: SUB 000020f4: DUP2 000020f5: MSTORE 000020f6: SWAP1 000020f7: PUSH1 0x40 000020f9: MSTORE 000020fa: SWAP1 000020fb: POP 000020fc: PUSH1 0x00 000020fe: DUP9 000020ff: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002114: AND 00002115: DUP4 00002116: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000212b: AND 0000212c: PUSH32 0xb3813568d9991fc951961fcb4c784893574240a28925604d09fc577c55bb7c32 0000214d: DUP5 0000214e: PUSH1 0x40 00002150: MLOAD 00002151: PUSH2 0x215a 00002154: SWAP2 00002155: SWAP1 00002156: PUSH2 0x4e27 00002159: JUMP 0000215a: JUMPDEST 0000215b: PUSH1 0x40 0000215d: MLOAD 0000215e: DUP1 0000215f: SWAP2 00002160: SUB 00002161: SWAP1 00002162: LOG4 00002163: POP 00002164: POP 00002165: POP 00002166: POP 00002167: POP 00002168: POP 00002169: POP 0000216a: POP 0000216b: JUMP 0000216c: JUMPDEST 0000216d: PUSH1 0x01 0000216f: SLOAD 00002170: PUSH1 0x00 00002172: SWAP1 00002173: PUSH2 0x21a2 00002176: SWAP1 00002177: PUSH25 0x01000000000000000000000000000000000000000000000000 00002191: SWAP1 00002192: DIV 00002193: PUSH8 0xffffffffffffffff 0000219c: AND 0000219d: NUMBER 0000219e: PUSH2 0x5236 000021a1: JUMP 000021a2: JUMPDEST 000021a3: SWAP1 000021a4: POP 000021a5: PUSH1 0x00 000021a7: PUSH2 0x21ae 000021aa: PUSH2 0x2899 000021ad: JUMP 000021ae: JUMPDEST 000021af: SWAP1 000021b0: POP 000021b1: PUSH1 0x00 000021b3: DUP2 000021b4: PUSH1 0x20 000021b6: ADD 000021b7: MLOAD 000021b8: PUSH1 0xff 000021ba: AND 000021bb: DUP3 000021bc: PUSH1 0x00 000021be: ADD 000021bf: MLOAD 000021c0: PUSH4 0xffffffff 000021c5: AND 000021c6: PUSH2 0x21cf 000021c9: SWAP2 000021ca: SWAP1 000021cb: PUSH2 0x5312 000021ce: JUMP 000021cf: JUMPDEST 000021d0: SWAP1 000021d1: POP 000021d2: DUP3 000021d3: ISZERO 000021d4: PUSH2 0x2306 000021d7: JUMPI 000021d8: PUSH1 0x01 000021da: SLOAD 000021db: PUSH1 0x00 000021dd: SWAP1 000021de: PUSH2 0x2206 000021e1: SWAP1 000021e2: DUP4 000021e3: SWAP1 000021e4: PUSH17 0x0100000000000000000000000000000000 000021f6: SWAP1 000021f7: DIV 000021f8: PUSH8 0xffffffffffffffff 00002201: AND 00002202: PUSH2 0x537a 00002205: JUMP 00002206: JUMPDEST 00002207: SWAP1 00002208: POP 00002209: PUSH1 0x00 0000220b: DUP4 0000220c: PUSH1 0x40 0000220e: ADD 0000220f: MLOAD 00002210: PUSH1 0xff 00002212: AND 00002213: DUP4 00002214: PUSH2 0x221d 00002217: SWAP2 00002218: SWAP1 00002219: PUSH2 0x53ee 0000221c: JUMP 0000221d: JUMPDEST 0000221e: PUSH1 0x01 00002220: SLOAD 00002221: PUSH2 0x223d 00002224: SWAP1 00002225: DUP5 00002226: SWAP1 00002227: PUSH16 0xffffffffffffffffffffffffffffffff 00002238: AND 00002239: PUSH2 0x53ee 0000223c: JUMP 0000223d: JUMPDEST 0000223e: PUSH2 0x2247 00002241: SWAP2 00002242: SWAP1 00002243: PUSH2 0x5312 00002246: JUMP 00002247: JUMPDEST 00002248: PUSH1 0x01 0000224a: SLOAD 0000224b: SWAP1 0000224c: SWAP2 0000224d: POP 0000224e: PUSH1 0x00 00002250: SWAP1 00002251: PUSH2 0x2298 00002254: SWAP1 00002255: PUSH2 0x2271 00002258: SWAP1 00002259: DUP5 0000225a: SWAP1 0000225b: PUSH16 0xffffffffffffffffffffffffffffffff 0000226c: AND 0000226d: PUSH2 0x54aa 00002270: JUMP 00002271: JUMPDEST 00002272: DUP7 00002273: PUSH1 0x60 00002275: ADD 00002276: MLOAD 00002277: PUSH4 0xffffffff 0000227c: AND 0000227d: DUP8 0000227e: PUSH1 0xa0 00002280: ADD 00002281: MLOAD 00002282: PUSH16 0xffffffffffffffffffffffffffffffff 00002293: AND 00002294: PUSH2 0x295a 00002297: JUMP 00002298: JUMPDEST 00002299: SWAP1 0000229a: POP 0000229b: PUSH1 0x01 0000229d: DUP7 0000229e: GT 0000229f: ISZERO 000022a0: PUSH2 0x22c7 000022a3: JUMPI 000022a4: PUSH2 0x22c4 000022a7: PUSH2 0x2271 000022aa: DUP3 000022ab: DUP8 000022ac: PUSH1 0x40 000022ae: ADD 000022af: MLOAD 000022b0: PUSH1 0xff 000022b2: AND 000022b3: PUSH1 0x01 000022b5: DUP11 000022b6: PUSH2 0x22bf 000022b9: SWAP2 000022ba: SWAP1 000022bb: PUSH2 0x5236 000022be: JUMP 000022bf: JUMPDEST 000022c0: PUSH2 0x2979 000022c3: JUMP 000022c4: JUMPDEST 000022c5: SWAP1 000022c6: POP 000022c7: JUMPDEST 000022c8: PUSH16 0xffffffffffffffffffffffffffffffff 000022d9: AND 000022da: PUSH25 0x01000000000000000000000000000000000000000000000000 000022f4: PUSH8 0xffffffffffffffff 000022fd: NUMBER 000022fe: AND 000022ff: MUL 00002300: OR 00002301: PUSH1 0x01 00002303: SSTORE 00002304: POP 00002305: POP 00002306: JUMPDEST 00002307: PUSH1 0x01 00002309: DUP1 0000230a: SLOAD 0000230b: DUP7 0000230c: SWAP2 0000230d: SWAP1 0000230e: PUSH1 0x10 00002310: SWAP1 00002311: PUSH2 0x2339 00002314: SWAP1 00002315: DUP5 00002316: SWAP1 00002317: PUSH17 0x0100000000000000000000000000000000 00002329: SWAP1 0000232a: DIV 0000232b: PUSH8 0xffffffffffffffff 00002334: AND 00002335: PUSH2 0x527d 00002338: JUMP 00002339: JUMPDEST 0000233a: SWAP3 0000233b: POP 0000233c: PUSH2 0x0100 0000233f: EXP 00002340: DUP2 00002341: SLOAD 00002342: DUP2 00002343: PUSH8 0xffffffffffffffff 0000234c: MUL 0000234d: NOT 0000234e: AND 0000234f: SWAP1 00002350: DUP4 00002351: PUSH8 0xffffffffffffffff 0000235a: AND 0000235b: MUL 0000235c: OR 0000235d: SWAP1 0000235e: SSTORE 0000235f: POP 00002360: DUP2 00002361: PUSH1 0x00 00002363: ADD 00002364: MLOAD 00002365: PUSH4 0xffffffff 0000236a: AND 0000236b: PUSH1 0x01 0000236d: PUSH1 0x00 0000236f: ADD 00002370: PUSH1 0x10 00002372: SWAP1 00002373: SLOAD 00002374: SWAP1 00002375: PUSH2 0x0100 00002378: EXP 00002379: SWAP1 0000237a: DIV 0000237b: PUSH8 0xffffffffffffffff 00002384: AND 00002385: PUSH8 0xffffffffffffffff 0000238e: AND 0000238f: SGT 00002390: ISZERO 00002391: PUSH2 0x23c6 00002394: JUMPI 00002395: PUSH1 0x40 00002397: MLOAD 00002398: PUSH32 0x77ebef4d00000000000000000000000000000000000000000000000000000000 000023b9: DUP2 000023ba: MSTORE 000023bb: PUSH1 0x04 000023bd: ADD 000023be: PUSH1 0x40 000023c0: MLOAD 000023c1: DUP1 000023c2: SWAP2 000023c3: SUB 000023c4: SWAP1 000023c5: REVERT 000023c6: JUMPDEST 000023c7: PUSH1 0x01 000023c9: SLOAD 000023ca: PUSH1 0x00 000023cc: SWAP1 000023cd: PUSH2 0x23f2 000023d0: SWAP1 000023d1: PUSH16 0xffffffffffffffffffffffffffffffff 000023e2: AND 000023e3: PUSH8 0xffffffffffffffff 000023ec: DUP9 000023ed: AND 000023ee: PUSH2 0x551e 000023f1: JUMP 000023f2: JUMPDEST 000023f3: SWAP1 000023f4: POP 000023f5: PUSH1 0x00 000023f7: PUSH2 0x2404 000023fa: BASEFEE 000023fb: PUSH4 0x3b9aca00 00002400: PUSH2 0x29ce 00002403: JUMP 00002404: JUMPDEST 00002405: PUSH2 0x240e 00002408: SWAP1 00002409: DUP4 0000240a: PUSH2 0x555b 0000240d: JUMP 0000240e: JUMPDEST 0000240f: SWAP1 00002410: POP 00002411: PUSH1 0x00 00002413: GAS 00002414: PUSH2 0x241d 00002417: SWAP1 00002418: DUP9 00002419: PUSH2 0x5236 0000241c: JUMP 0000241d: JUMPDEST 0000241e: SWAP1 0000241f: POP 00002420: DUP1 00002421: DUP3 00002422: GT 00002423: ISZERO 00002424: PUSH2 0x0865 00002427: JUMPI 00002428: PUSH2 0x0865 0000242b: PUSH2 0x2434 0000242e: DUP3 0000242f: DUP5 00002430: PUSH2 0x5236 00002433: JUMP 00002434: JUMPDEST 00002435: PUSH2 0x29e5 00002438: JUMP 00002439: JUMPDEST 0000243a: PUSH1 0x40 0000243c: MLOAD 0000243d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002452: DUP1 00002453: DUP6 00002454: AND 00002455: PUSH1 0x24 00002457: DUP4 00002458: ADD 00002459: MSTORE 0000245a: DUP4 0000245b: AND 0000245c: PUSH1 0x44 0000245e: DUP3 0000245f: ADD 00002460: MSTORE 00002461: PUSH1 0x64 00002463: DUP2 00002464: ADD 00002465: DUP3 00002466: SWAP1 00002467: MSTORE 00002468: PUSH2 0x1f01 0000246b: SWAP1 0000246c: DUP6 0000246d: SWAP1 0000246e: PUSH32 0x23b872dd00000000000000000000000000000000000000000000000000000000 0000248f: SWAP1 00002490: PUSH1 0x84 00002492: ADD 00002493: JUMPDEST 00002494: PUSH1 0x40 00002496: DUP1 00002497: MLOAD 00002498: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 000024b9: DUP2 000024ba: DUP5 000024bb: SUB 000024bc: ADD 000024bd: DUP2 000024be: MSTORE 000024bf: SWAP2 000024c0: SWAP1 000024c1: MSTORE 000024c2: PUSH1 0x20 000024c4: DUP2 000024c5: ADD 000024c6: DUP1 000024c7: MLOAD 000024c8: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 000024e5: AND 000024e6: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 00002507: SWAP1 00002508: SWAP4 00002509: AND 0000250a: SWAP3 0000250b: SWAP1 0000250c: SWAP3 0000250d: OR 0000250e: SWAP1 0000250f: SWAP2 00002510: MSTORE 00002511: PUSH2 0x2a0e 00002514: JUMP 00002515: JUMPDEST 00002516: PUSH1 0x00 00002518: DUP2 00002519: PUSH1 0x00 0000251b: ADD 0000251c: MLOAD 0000251d: DUP3 0000251e: PUSH1 0x20 00002520: ADD 00002521: MLOAD 00002522: DUP4 00002523: PUSH1 0x40 00002525: ADD 00002526: MLOAD 00002527: DUP5 00002528: PUSH1 0x60 0000252a: ADD 0000252b: MLOAD 0000252c: PUSH1 0x40 0000252e: MLOAD 0000252f: PUSH1 0x20 00002531: ADD 00002532: PUSH2 0x2554 00002535: SWAP5 00002536: SWAP4 00002537: SWAP3 00002538: SWAP2 00002539: SWAP1 0000253a: SWAP4 0000253b: DUP5 0000253c: MSTORE 0000253d: PUSH1 0x20 0000253f: DUP5 00002540: ADD 00002541: SWAP3 00002542: SWAP1 00002543: SWAP3 00002544: MSTORE 00002545: PUSH1 0x40 00002547: DUP4 00002548: ADD 00002549: MSTORE 0000254a: PUSH1 0x60 0000254c: DUP3 0000254d: ADD 0000254e: MSTORE 0000254f: PUSH1 0x80 00002551: ADD 00002552: SWAP1 00002553: JUMP 00002554: JUMPDEST 00002555: PUSH1 0x40 00002557: MLOAD 00002558: PUSH1 0x20 0000255a: DUP2 0000255b: DUP4 0000255c: SUB 0000255d: SUB 0000255e: DUP2 0000255f: MSTORE 00002560: SWAP1 00002561: PUSH1 0x40 00002563: MSTORE 00002564: DUP1 00002565: MLOAD 00002566: SWAP1 00002567: PUSH1 0x20 00002569: ADD 0000256a: KECCAK256 0000256b: SWAP1 0000256c: POP 0000256d: SWAP2 0000256e: SWAP1 0000256f: POP 00002570: JUMP 00002571: JUMPDEST 00002572: DUP1 00002573: MLOAD 00002574: PUSH1 0x20 00002576: DUP1 00002577: DUP4 00002578: ADD 00002579: MLOAD 0000257a: PUSH1 0x40 0000257c: DUP1 0000257d: DUP6 0000257e: ADD 0000257f: MLOAD 00002580: PUSH1 0x60 00002582: DUP7 00002583: ADD 00002584: MLOAD 00002585: PUSH1 0x80 00002587: DUP8 00002588: ADD 00002589: MLOAD 0000258a: PUSH1 0xa0 0000258c: DUP9 0000258d: ADD 0000258e: MLOAD 0000258f: SWAP4 00002590: MLOAD 00002591: PUSH1 0x00 00002593: SWAP8 00002594: PUSH2 0x2554 00002597: SWAP8 00002598: SWAP1 00002599: SWAP7 0000259a: SWAP6 0000259b: SWAP2 0000259c: ADD 0000259d: PUSH2 0x556f 000025a0: JUMP 000025a1: JUMPDEST 000025a2: PUSH1 0x00 000025a4: DUP1 000025a5: PUSH2 0x25ad 000025a8: DUP7 000025a9: PUSH2 0x2b1a 000025ac: JUMP 000025ad: JUMPDEST 000025ae: SWAP1 000025af: POP 000025b0: PUSH2 0x25bb 000025b3: DUP2 000025b4: DUP7 000025b5: DUP7 000025b6: DUP7 000025b7: PUSH2 0x2b4c 000025ba: JUMP 000025bb: JUMPDEST 000025bc: SWAP7 000025bd: SWAP6 000025be: POP 000025bf: POP 000025c0: POP 000025c1: POP 000025c2: POP 000025c3: POP 000025c4: JUMP 000025c5: JUMPDEST 000025c6: PUSH1 0x36 000025c8: SLOAD 000025c9: PUSH1 0x40 000025cb: DUP1 000025cc: MLOAD 000025cd: PUSH32 0xf4daa29100000000000000000000000000000000000000000000000000000000 000025ee: DUP2 000025ef: MSTORE 000025f0: SWAP1 000025f1: MLOAD 000025f2: PUSH1 0x00 000025f4: SWAP3 000025f5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000260a: AND 0000260b: SWAP2 0000260c: PUSH4 0xf4daa291 00002611: SWAP2 00002612: PUSH1 0x04 00002614: DUP1 00002615: DUP4 00002616: ADD 00002617: SWAP3 00002618: PUSH1 0x20 0000261a: SWAP3 0000261b: SWAP2 0000261c: SWAP1 0000261d: DUP3 0000261e: SWAP1 0000261f: SUB 00002620: ADD 00002621: DUP2 00002622: DUP7 00002623: GAS 00002624: STATICCALL 00002625: ISZERO 00002626: DUP1 00002627: ISZERO 00002628: PUSH2 0x2635 0000262b: JUMPI 0000262c: RETURNDATASIZE 0000262d: PUSH1 0x00 0000262f: DUP1 00002630: RETURNDATACOPY 00002631: RETURNDATASIZE 00002632: PUSH1 0x00 00002634: REVERT 00002635: JUMPDEST 00002636: POP 00002637: POP 00002638: POP 00002639: POP 0000263a: PUSH1 0x40 0000263c: MLOAD 0000263d: RETURNDATASIZE 0000263e: PUSH1 0x1f 00002640: NOT 00002641: PUSH1 0x1f 00002643: DUP3 00002644: ADD 00002645: AND 00002646: DUP3 00002647: ADD 00002648: DUP1 00002649: PUSH1 0x40 0000264b: MSTORE 0000264c: POP 0000264d: DUP2 0000264e: ADD 0000264f: SWAP1 00002650: PUSH2 0x2659 00002653: SWAP2 00002654: SWAP1 00002655: PUSH2 0x500f 00002658: JUMP 00002659: JUMPDEST 0000265a: PUSH2 0x2663 0000265d: SWAP1 0000265e: DUP4 0000265f: PUSH2 0x4ff7 00002662: JUMP 00002663: JUMPDEST 00002664: TIMESTAMP 00002665: GT 00002666: SWAP3 00002667: SWAP2 00002668: POP 00002669: POP 0000266a: JUMP 0000266b: JUMPDEST 0000266c: PUSH1 0x01 0000266e: DUP1 0000266f: SLOAD 00002670: PUSH4 0xffffffff 00002675: DUP4 00002676: AND 00002677: SWAP2 00002678: SWAP1 00002679: PUSH1 0x10 0000267b: SWAP1 0000267c: PUSH2 0x26a4 0000267f: SWAP1 00002680: DUP5 00002681: SWAP1 00002682: PUSH17 0x0100000000000000000000000000000000 00002694: SWAP1 00002695: DIV 00002696: PUSH8 0xffffffffffffffff 0000269f: AND 000026a0: PUSH2 0x527d 000026a3: JUMP 000026a4: JUMPDEST 000026a5: SWAP3 000026a6: POP 000026a7: PUSH2 0x0100 000026aa: EXP 000026ab: DUP2 000026ac: SLOAD 000026ad: DUP2 000026ae: PUSH8 0xffffffffffffffff 000026b7: MUL 000026b8: NOT 000026b9: AND 000026ba: SWAP1 000026bb: DUP4 000026bc: PUSH8 0xffffffffffffffff 000026c5: AND 000026c6: MUL 000026c7: OR 000026c8: SWAP1 000026c9: SSTORE 000026ca: POP 000026cb: POP 000026cc: JUMP 000026cd: JUMPDEST 000026ce: PUSH1 0x00 000026d0: DUP1 000026d1: PUSH1 0x00 000026d3: PUSH2 0x26dd 000026d6: DUP7 000026d7: PUSH1 0x00 000026d9: PUSH2 0x2b7c 000026dc: JUMP 000026dd: JUMPDEST 000026de: SWAP1 000026df: POP 000026e0: DUP1 000026e1: PUSH2 0x2713 000026e4: JUMPI 000026e5: PUSH4 0x08c379a0 000026ea: PUSH1 0x00 000026ec: MSTORE 000026ed: PUSH1 0x20 000026ef: DUP1 000026f0: MSTORE 000026f1: PUSH25 0x185361666543616c6c3a204e6f7420656e6f75676820676173 0000270b: PUSH1 0x58 0000270d: MSTORE 0000270e: PUSH1 0x64 00002710: PUSH1 0x1c 00002712: REVERT 00002713: JUMPDEST 00002714: PUSH1 0x00 00002716: DUP1 00002717: DUP6 00002718: MLOAD 00002719: PUSH1 0x20 0000271b: DUP8 0000271c: ADD 0000271d: DUP9 0000271e: DUP12 0000271f: GAS 00002720: CALL 00002721: SWAP8 00002722: SWAP7 00002723: POP 00002724: POP 00002725: POP 00002726: POP 00002727: POP 00002728: POP 00002729: POP 0000272a: JUMP 0000272b: JUMPDEST 0000272c: PUSH1 0x40 0000272e: MLOAD 0000272f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002744: DUP4 00002745: AND 00002746: PUSH1 0x24 00002748: DUP3 00002749: ADD 0000274a: MSTORE 0000274b: PUSH1 0x44 0000274d: DUP2 0000274e: ADD 0000274f: DUP3 00002750: SWAP1 00002751: MSTORE 00002752: PUSH2 0x2781 00002755: SWAP1 00002756: DUP5 00002757: SWAP1 00002758: PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000 00002779: SWAP1 0000277a: PUSH1 0x64 0000277c: ADD 0000277d: PUSH2 0x2493 00002780: JUMP 00002781: JUMPDEST 00002782: POP 00002783: POP 00002784: POP 00002785: JUMP 00002786: JUMPDEST 00002787: PUSH1 0x00 00002789: SLOAD 0000278a: PUSH2 0x0100 0000278d: SWAP1 0000278e: DIV 0000278f: PUSH1 0xff 00002791: AND 00002792: PUSH2 0x281d 00002795: JUMPI 00002796: PUSH1 0x40 00002798: MLOAD 00002799: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000027ba: DUP2 000027bb: MSTORE 000027bc: PUSH1 0x20 000027be: PUSH1 0x04 000027c0: DUP3 000027c1: ADD 000027c2: MSTORE 000027c3: PUSH1 0x2b 000027c5: PUSH1 0x24 000027c7: DUP3 000027c8: ADD 000027c9: MSTORE 000027ca: PUSH32 0x496e697469616c697a61626c653a20636f6e7472616374206973206e6f742069 000027eb: PUSH1 0x44 000027ed: DUP3 000027ee: ADD 000027ef: MSTORE 000027f0: PUSH32 0x6e697469616c697a696e67000000000000000000000000000000000000000000 00002811: PUSH1 0x64 00002813: DUP3 00002814: ADD 00002815: MSTORE 00002816: PUSH1 0x84 00002818: ADD 00002819: PUSH2 0x0ae7 0000281c: JUMP 0000281d: JUMPDEST 0000281e: PUSH1 0x01 00002820: SLOAD 00002821: PUSH25 0x01000000000000000000000000000000000000000000000000 0000283b: SWAP1 0000283c: DIV 0000283d: PUSH8 0xffffffffffffffff 00002846: AND 00002847: PUSH1 0x00 00002849: SUB 0000284a: PUSH2 0x11c2 0000284d: JUMPI 0000284e: PUSH1 0x40 00002850: DUP1 00002851: MLOAD 00002852: PUSH1 0x60 00002854: DUP2 00002855: ADD 00002856: DUP3 00002857: MSTORE 00002858: PUSH4 0x3b9aca00 0000285d: DUP1 0000285e: DUP3 0000285f: MSTORE 00002860: PUSH1 0x00 00002862: PUSH1 0x20 00002864: DUP4 00002865: ADD 00002866: MSTORE 00002867: NUMBER 00002868: PUSH8 0xffffffffffffffff 00002871: AND 00002872: SWAP2 00002873: SWAP1 00002874: SWAP3 00002875: ADD 00002876: DUP2 00002877: SWAP1 00002878: MSTORE 00002879: PUSH25 0x01000000000000000000000000000000000000000000000000 00002893: MUL 00002894: OR 00002895: PUSH1 0x01 00002897: SSTORE 00002898: JUMP 00002899: JUMPDEST 0000289a: PUSH1 0x40 0000289c: DUP1 0000289d: MLOAD 0000289e: PUSH1 0xc0 000028a0: DUP1 000028a1: DUP3 000028a2: ADD 000028a3: DUP4 000028a4: MSTORE 000028a5: PUSH1 0x00 000028a7: DUP1 000028a8: DUP4 000028a9: MSTORE 000028aa: PUSH1 0x20 000028ac: DUP4 000028ad: ADD 000028ae: DUP2 000028af: SWAP1 000028b0: MSTORE 000028b1: DUP3 000028b2: DUP5 000028b3: ADD 000028b4: DUP2 000028b5: SWAP1 000028b6: MSTORE 000028b7: PUSH1 0x60 000028b9: DUP4 000028ba: ADD 000028bb: DUP2 000028bc: SWAP1 000028bd: MSTORE 000028be: PUSH1 0x80 000028c0: DUP4 000028c1: ADD 000028c2: DUP2 000028c3: SWAP1 000028c4: MSTORE 000028c5: PUSH1 0xa0 000028c7: DUP4 000028c8: ADD 000028c9: MSTORE 000028ca: PUSH1 0x37 000028cc: SLOAD 000028cd: DUP4 000028ce: MLOAD 000028cf: PUSH32 0xcc731b0200000000000000000000000000000000000000000000000000000000 000028f0: DUP2 000028f1: MSTORE 000028f2: SWAP4 000028f3: MLOAD 000028f4: SWAP3 000028f5: SWAP4 000028f6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000290b: SWAP1 0000290c: SWAP2 0000290d: AND 0000290e: SWAP3 0000290f: PUSH4 0xcc731b02 00002914: SWAP3 00002915: PUSH1 0x04 00002917: DUP1 00002918: DUP5 00002919: ADD 0000291a: SWAP4 0000291b: SWAP2 0000291c: SWAP3 0000291d: SWAP2 0000291e: DUP3 0000291f: SWAP1 00002920: SUB 00002921: ADD 00002922: DUP2 00002923: DUP7 00002924: GAS 00002925: STATICCALL 00002926: ISZERO 00002927: DUP1 00002928: ISZERO 00002929: PUSH2 0x2936 0000292c: JUMPI 0000292d: RETURNDATASIZE 0000292e: PUSH1 0x00 00002930: DUP1 00002931: RETURNDATACOPY 00002932: RETURNDATASIZE 00002933: PUSH1 0x00 00002935: REVERT 00002936: JUMPDEST 00002937: POP 00002938: POP 00002939: POP 0000293a: POP 0000293b: PUSH1 0x40 0000293d: MLOAD 0000293e: RETURNDATASIZE 0000293f: PUSH1 0x1f 00002941: NOT 00002942: PUSH1 0x1f 00002944: DUP3 00002945: ADD 00002946: AND 00002947: DUP3 00002948: ADD 00002949: DUP1 0000294a: PUSH1 0x40 0000294c: MSTORE 0000294d: POP 0000294e: DUP2 0000294f: ADD 00002950: SWAP1 00002951: PUSH2 0x0902 00002954: SWAP2 00002955: SWAP1 00002956: PUSH2 0x55da 00002959: JUMP 0000295a: JUMPDEST 0000295b: PUSH1 0x00 0000295d: PUSH2 0x296f 00002960: PUSH2 0x2969 00002963: DUP6 00002964: DUP6 00002965: PUSH2 0x2b9a 00002968: JUMP 00002969: JUMPDEST 0000296a: DUP4 0000296b: PUSH2 0x2baa 0000296e: JUMP 0000296f: JUMPDEST 00002970: SWAP1 00002971: POP 00002972: JUMPDEST 00002973: SWAP4 00002974: SWAP3 00002975: POP 00002976: POP 00002977: POP 00002978: JUMP 00002979: JUMPDEST 0000297a: PUSH1 0x00 0000297c: PUSH8 0x0de0b6b3a7640000 00002985: PUSH2 0x29ba 00002988: PUSH2 0x2991 0000298b: DUP6 0000298c: DUP4 0000298d: PUSH2 0x5312 00002990: JUMP 00002991: JUMPDEST 00002992: PUSH2 0x29a3 00002995: SWAP1 00002996: PUSH8 0x0de0b6b3a7640000 0000299f: PUSH2 0x537a 000029a2: JUMP 000029a3: JUMPDEST 000029a4: PUSH2 0x29b5 000029a7: DUP6 000029a8: PUSH8 0x0de0b6b3a7640000 000029b1: PUSH2 0x53ee 000029b4: JUMP 000029b5: JUMPDEST 000029b6: PUSH2 0x2bb9 000029b9: JUMP 000029ba: JUMPDEST 000029bb: PUSH2 0x29c4 000029be: SWAP1 000029bf: DUP7 000029c0: PUSH2 0x53ee 000029c3: JUMP 000029c4: JUMPDEST 000029c5: PUSH2 0x296f 000029c8: SWAP2 000029c9: SWAP1 000029ca: PUSH2 0x5312 000029cd: JUMP 000029ce: JUMPDEST 000029cf: PUSH1 0x00 000029d1: DUP2 000029d2: DUP4 000029d3: LT 000029d4: ISZERO 000029d5: PUSH2 0x29de 000029d8: JUMPI 000029d9: DUP2 000029da: PUSH2 0x2972 000029dd: JUMP 000029de: JUMPDEST 000029df: POP 000029e0: SWAP1 000029e1: SWAP2 000029e2: SWAP1 000029e3: POP 000029e4: JUMP 000029e5: JUMPDEST 000029e6: PUSH1 0x00 000029e8: DUP1 000029e9: GAS 000029ea: SWAP1 000029eb: POP 000029ec: JUMPDEST 000029ed: DUP3 000029ee: GAS 000029ef: PUSH2 0x29f8 000029f2: SWAP1 000029f3: DUP4 000029f4: PUSH2 0x5236 000029f7: JUMP 000029f8: JUMPDEST 000029f9: LT 000029fa: ISZERO 000029fb: PUSH2 0x2781 000029fe: JUMPI 000029ff: PUSH2 0x2a07 00002a02: DUP3 00002a03: PUSH2 0x567d 00002a06: JUMP 00002a07: JUMPDEST 00002a08: SWAP2 00002a09: POP 00002a0a: PUSH2 0x29ec 00002a0d: JUMP 00002a0e: JUMPDEST 00002a0f: PUSH1 0x00 00002a11: PUSH2 0x2a70 00002a14: DUP3 00002a15: PUSH1 0x40 00002a17: MLOAD 00002a18: DUP1 00002a19: PUSH1 0x40 00002a1b: ADD 00002a1c: PUSH1 0x40 00002a1e: MSTORE 00002a1f: DUP1 00002a20: PUSH1 0x20 00002a22: DUP2 00002a23: MSTORE 00002a24: PUSH1 0x20 00002a26: ADD 00002a27: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564 00002a48: DUP2 00002a49: MSTORE 00002a4a: POP 00002a4b: DUP6 00002a4c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002a61: AND 00002a62: PUSH2 0x2bea 00002a65: SWAP1 00002a66: SWAP3 00002a67: SWAP2 00002a68: SWAP1 00002a69: PUSH4 0xffffffff 00002a6e: AND 00002a6f: JUMP 00002a70: JUMPDEST 00002a71: DUP1 00002a72: MLOAD 00002a73: SWAP1 00002a74: SWAP2 00002a75: POP 00002a76: ISZERO 00002a77: PUSH2 0x2781 00002a7a: JUMPI 00002a7b: DUP1 00002a7c: DUP1 00002a7d: PUSH1 0x20 00002a7f: ADD 00002a80: SWAP1 00002a81: MLOAD 00002a82: DUP2 00002a83: ADD 00002a84: SWAP1 00002a85: PUSH2 0x2a8e 00002a88: SWAP2 00002a89: SWAP1 00002a8a: PUSH2 0x51b4 00002a8d: JUMP 00002a8e: JUMPDEST 00002a8f: PUSH2 0x2781 00002a92: JUMPI 00002a93: PUSH1 0x40 00002a95: MLOAD 00002a96: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002ab7: DUP2 00002ab8: MSTORE 00002ab9: PUSH1 0x20 00002abb: PUSH1 0x04 00002abd: DUP3 00002abe: ADD 00002abf: MSTORE 00002ac0: PUSH1 0x2a 00002ac2: PUSH1 0x24 00002ac4: DUP3 00002ac5: ADD 00002ac6: MSTORE 00002ac7: PUSH32 0x5361666545524332303a204552433230206f7065726174696f6e20646964206e 00002ae8: PUSH1 0x44 00002aea: DUP3 00002aeb: ADD 00002aec: MSTORE 00002aed: PUSH32 0x6f74207375636365656400000000000000000000000000000000000000000000 00002b0e: PUSH1 0x64 00002b10: DUP3 00002b11: ADD 00002b12: MSTORE 00002b13: PUSH1 0x84 00002b15: ADD 00002b16: PUSH2 0x0ae7 00002b19: JUMP 00002b1a: JUMPDEST 00002b1b: PUSH1 0x60 00002b1d: DUP2 00002b1e: DUP1 00002b1f: MLOAD 00002b20: SWAP1 00002b21: PUSH1 0x20 00002b23: ADD 00002b24: KECCAK256 00002b25: PUSH1 0x40 00002b27: MLOAD 00002b28: PUSH1 0x20 00002b2a: ADD 00002b2b: PUSH2 0x2b36 00002b2e: SWAP2 00002b2f: DUP2 00002b30: MSTORE 00002b31: PUSH1 0x20 00002b33: ADD 00002b34: SWAP1 00002b35: JUMP 00002b36: JUMPDEST 00002b37: PUSH1 0x40 00002b39: MLOAD 00002b3a: PUSH1 0x20 00002b3c: DUP2 00002b3d: DUP4 00002b3e: SUB 00002b3f: SUB 00002b40: DUP2 00002b41: MSTORE 00002b42: SWAP1 00002b43: PUSH1 0x40 00002b45: MSTORE 00002b46: SWAP1 00002b47: POP 00002b48: SWAP2 00002b49: SWAP1 00002b4a: POP 00002b4b: JUMP 00002b4c: JUMPDEST 00002b4d: PUSH1 0x00 00002b4f: PUSH2 0x2b73 00002b52: DUP5 00002b53: PUSH2 0x2b5d 00002b56: DUP8 00002b57: DUP7 00002b58: DUP7 00002b59: PUSH2 0x2bf9 00002b5c: JUMP 00002b5d: JUMPDEST 00002b5e: DUP1 00002b5f: MLOAD 00002b60: PUSH1 0x20 00002b62: SWAP2 00002b63: DUP3 00002b64: ADD 00002b65: KECCAK256 00002b66: DUP3 00002b67: MLOAD 00002b68: SWAP3 00002b69: SWAP1 00002b6a: SWAP2 00002b6b: ADD 00002b6c: SWAP2 00002b6d: SWAP1 00002b6e: SWAP2 00002b6f: KECCAK256 00002b70: EQ 00002b71: SWAP1 00002b72: JUMP 00002b73: JUMPDEST 00002b74: SWAP6 00002b75: SWAP5 00002b76: POP 00002b77: POP 00002b78: POP 00002b79: POP 00002b7a: POP 00002b7b: JUMP 00002b7c: JUMPDEST 00002b7d: PUSH1 0x00 00002b7f: DUP1 00002b80: PUSH1 0x3f 00002b82: DUP4 00002b83: PUSH2 0x9c40 00002b86: ADD 00002b87: MUL 00002b88: PUSH1 0x40 00002b8a: DUP6 00002b8b: MUL 00002b8c: ADD 00002b8d: PUSH1 0x3f 00002b8f: GAS 00002b90: MUL 00002b91: LT 00002b92: ISZERO 00002b93: SWAP5 00002b94: SWAP4 00002b95: POP 00002b96: POP 00002b97: POP 00002b98: POP 00002b99: JUMP 00002b9a: JUMPDEST 00002b9b: PUSH1 0x00 00002b9d: DUP2 00002b9e: DUP4 00002b9f: SLT 00002ba0: ISZERO 00002ba1: PUSH2 0x29de 00002ba4: JUMPI 00002ba5: DUP2 00002ba6: PUSH2 0x2972 00002ba9: JUMP 00002baa: JUMPDEST 00002bab: PUSH1 0x00 00002bad: DUP2 00002bae: DUP4 00002baf: SLT 00002bb0: PUSH2 0x29de 00002bb3: JUMPI 00002bb4: DUP2 00002bb5: PUSH2 0x2972 00002bb8: JUMP 00002bb9: JUMPDEST 00002bba: PUSH1 0x00 00002bbc: PUSH2 0x2972 00002bbf: PUSH8 0x0de0b6b3a7640000 00002bc8: DUP4 00002bc9: PUSH2 0x2bd1 00002bcc: DUP7 00002bcd: PUSH2 0x3677 00002bd0: JUMP 00002bd1: JUMPDEST 00002bd2: PUSH2 0x2bdb 00002bd5: SWAP2 00002bd6: SWAP1 00002bd7: PUSH2 0x53ee 00002bda: JUMP 00002bdb: JUMPDEST 00002bdc: PUSH2 0x2be5 00002bdf: SWAP2 00002be0: SWAP1 00002be1: PUSH2 0x5312 00002be4: JUMP 00002be5: JUMPDEST 00002be6: PUSH2 0x38bb 00002be9: JUMP 00002bea: JUMPDEST 00002beb: PUSH1 0x60 00002bed: PUSH2 0x296f 00002bf0: DUP5 00002bf1: DUP5 00002bf2: PUSH1 0x00 00002bf4: DUP6 00002bf5: PUSH2 0x3afa 00002bf8: JUMP 00002bf9: JUMPDEST 00002bfa: PUSH1 0x60 00002bfc: PUSH1 0x00 00002bfe: DUP5 00002bff: MLOAD 00002c00: GT 00002c01: PUSH2 0x2c66 00002c04: JUMPI 00002c05: PUSH1 0x40 00002c07: MLOAD 00002c08: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002c29: DUP2 00002c2a: MSTORE 00002c2b: PUSH1 0x20 00002c2d: PUSH1 0x04 00002c2f: DUP3 00002c30: ADD 00002c31: MSTORE 00002c32: PUSH1 0x15 00002c34: PUSH1 0x24 00002c36: DUP3 00002c37: ADD 00002c38: MSTORE 00002c39: PUSH32 0x4d65726b6c65547269653a20656d707479206b65790000000000000000000000 00002c5a: PUSH1 0x44 00002c5c: DUP3 00002c5d: ADD 00002c5e: MSTORE 00002c5f: PUSH1 0x64 00002c61: ADD 00002c62: PUSH2 0x0ae7 00002c65: JUMP 00002c66: JUMPDEST 00002c67: PUSH1 0x00 00002c69: PUSH2 0x2c71 00002c6c: DUP5 00002c6d: PUSH2 0x3c90 00002c70: JUMP 00002c71: JUMPDEST 00002c72: SWAP1 00002c73: POP 00002c74: PUSH1 0x00 00002c76: PUSH2 0x2c7e 00002c79: DUP7 00002c7a: PUSH2 0x3d7c 00002c7d: JUMP 00002c7e: JUMPDEST 00002c7f: SWAP1 00002c80: POP 00002c81: PUSH1 0x00 00002c83: DUP5 00002c84: PUSH1 0x40 00002c86: MLOAD 00002c87: PUSH1 0x20 00002c89: ADD 00002c8a: PUSH2 0x2c95 00002c8d: SWAP2 00002c8e: DUP2 00002c8f: MSTORE 00002c90: PUSH1 0x20 00002c92: ADD 00002c93: SWAP1 00002c94: JUMP 00002c95: JUMPDEST 00002c96: PUSH1 0x40 00002c98: MLOAD 00002c99: PUSH1 0x20 00002c9b: DUP2 00002c9c: DUP4 00002c9d: SUB 00002c9e: SUB 00002c9f: DUP2 00002ca0: MSTORE 00002ca1: SWAP1 00002ca2: PUSH1 0x40 00002ca4: MSTORE 00002ca5: SWAP1 00002ca6: POP 00002ca7: PUSH1 0x00 00002ca9: DUP1 00002caa: JUMPDEST 00002cab: DUP5 00002cac: MLOAD 00002cad: DUP2 00002cae: LT 00002caf: ISZERO 00002cb0: PUSH2 0x35ee 00002cb3: JUMPI 00002cb4: PUSH1 0x00 00002cb6: DUP6 00002cb7: DUP3 00002cb8: DUP2 00002cb9: MLOAD 00002cba: DUP2 00002cbb: LT 00002cbc: PUSH2 0x2cc7 00002cbf: JUMPI 00002cc0: PUSH2 0x2cc7 00002cc3: PUSH2 0x56b5 00002cc6: JUMP 00002cc7: JUMPDEST 00002cc8: PUSH1 0x20 00002cca: MUL 00002ccb: PUSH1 0x20 00002ccd: ADD 00002cce: ADD 00002ccf: MLOAD 00002cd0: SWAP1 00002cd1: POP 00002cd2: DUP5 00002cd3: MLOAD 00002cd4: DUP4 00002cd5: GT 00002cd6: ISZERO 00002cd7: PUSH2 0x2d62 00002cda: JUMPI 00002cdb: PUSH1 0x40 00002cdd: MLOAD 00002cde: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002cff: DUP2 00002d00: MSTORE 00002d01: PUSH1 0x20 00002d03: PUSH1 0x04 00002d05: DUP3 00002d06: ADD 00002d07: MSTORE 00002d08: PUSH1 0x2e 00002d0a: PUSH1 0x24 00002d0c: DUP3 00002d0d: ADD 00002d0e: MSTORE 00002d0f: PUSH32 0x4d65726b6c65547269653a206b657920696e646578206578636565647320746f 00002d30: PUSH1 0x44 00002d32: DUP3 00002d33: ADD 00002d34: MSTORE 00002d35: PUSH32 0x74616c206b6579206c656e677468000000000000000000000000000000000000 00002d56: PUSH1 0x64 00002d58: DUP3 00002d59: ADD 00002d5a: MSTORE 00002d5b: PUSH1 0x84 00002d5d: ADD 00002d5e: PUSH2 0x0ae7 00002d61: JUMP 00002d62: JUMPDEST 00002d63: DUP3 00002d64: PUSH1 0x00 00002d66: SUB 00002d67: PUSH2 0x2e1b 00002d6a: JUMPI 00002d6b: DUP1 00002d6c: MLOAD 00002d6d: DUP1 00002d6e: MLOAD 00002d6f: PUSH1 0x20 00002d71: SWAP2 00002d72: DUP3 00002d73: ADD 00002d74: KECCAK256 00002d75: PUSH1 0x40 00002d77: MLOAD 00002d78: PUSH2 0x2db0 00002d7b: SWAP3 00002d7c: PUSH2 0x2d8a 00002d7f: SWAP3 00002d80: SWAP2 00002d81: ADD 00002d82: SWAP1 00002d83: DUP2 00002d84: MSTORE 00002d85: PUSH1 0x20 00002d87: ADD 00002d88: SWAP1 00002d89: JUMP 00002d8a: JUMPDEST 00002d8b: PUSH1 0x40 00002d8d: MLOAD 00002d8e: PUSH1 0x20 00002d90: DUP2 00002d91: DUP4 00002d92: SUB 00002d93: SUB 00002d94: DUP2 00002d95: MSTORE 00002d96: SWAP1 00002d97: PUSH1 0x40 00002d99: MSTORE 00002d9a: DUP6 00002d9b: DUP1 00002d9c: MLOAD 00002d9d: PUSH1 0x20 00002d9f: SWAP2 00002da0: DUP3 00002da1: ADD 00002da2: KECCAK256 00002da3: DUP3 00002da4: MLOAD 00002da5: SWAP3 00002da6: SWAP1 00002da7: SWAP2 00002da8: ADD 00002da9: SWAP2 00002daa: SWAP1 00002dab: SWAP2 00002dac: KECCAK256 00002dad: EQ 00002dae: SWAP1 00002daf: JUMP 00002db0: JUMPDEST 00002db1: PUSH2 0x2e16 00002db4: JUMPI 00002db5: PUSH1 0x40 00002db7: MLOAD 00002db8: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002dd9: DUP2 00002dda: MSTORE 00002ddb: PUSH1 0x20 00002ddd: PUSH1 0x04 00002ddf: DUP3 00002de0: ADD 00002de1: MSTORE 00002de2: PUSH1 0x1d 00002de4: PUSH1 0x24 00002de6: DUP3 00002de7: ADD 00002de8: MSTORE 00002de9: PUSH32 0x4d65726b6c65547269653a20696e76616c696420726f6f742068617368000000 00002e0a: PUSH1 0x44 00002e0c: DUP3 00002e0d: ADD 00002e0e: MSTORE 00002e0f: PUSH1 0x64 00002e11: ADD 00002e12: PUSH2 0x0ae7 00002e15: JUMP 00002e16: JUMPDEST 00002e17: PUSH2 0x2f72 00002e1a: JUMP 00002e1b: JUMPDEST 00002e1c: DUP1 00002e1d: MLOAD 00002e1e: MLOAD 00002e1f: PUSH1 0x20 00002e21: GT 00002e22: PUSH2 0x2ed1 00002e25: JUMPI 00002e26: DUP1 00002e27: MLOAD 00002e28: DUP1 00002e29: MLOAD 00002e2a: PUSH1 0x20 00002e2c: SWAP2 00002e2d: DUP3 00002e2e: ADD 00002e2f: KECCAK256 00002e30: PUSH1 0x40 00002e32: MLOAD 00002e33: PUSH2 0x2e45 00002e36: SWAP3 00002e37: PUSH2 0x2d8a 00002e3a: SWAP3 00002e3b: SWAP2 00002e3c: ADD 00002e3d: SWAP1 00002e3e: DUP2 00002e3f: MSTORE 00002e40: PUSH1 0x20 00002e42: ADD 00002e43: SWAP1 00002e44: JUMP 00002e45: JUMPDEST 00002e46: PUSH2 0x2e16 00002e49: JUMPI 00002e4a: PUSH1 0x40 00002e4c: MLOAD 00002e4d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002e6e: DUP2 00002e6f: MSTORE 00002e70: PUSH1 0x20 00002e72: PUSH1 0x04 00002e74: DUP3 00002e75: ADD 00002e76: MSTORE 00002e77: PUSH1 0x27 00002e79: PUSH1 0x24 00002e7b: DUP3 00002e7c: ADD 00002e7d: MSTORE 00002e7e: PUSH32 0x4d65726b6c65547269653a20696e76616c6964206c6172676520696e7465726e 00002e9f: PUSH1 0x44 00002ea1: DUP3 00002ea2: ADD 00002ea3: MSTORE 00002ea4: PUSH32 0x616c206861736800000000000000000000000000000000000000000000000000 00002ec5: PUSH1 0x64 00002ec7: DUP3 00002ec8: ADD 00002ec9: MSTORE 00002eca: PUSH1 0x84 00002ecc: ADD 00002ecd: PUSH2 0x0ae7 00002ed0: JUMP 00002ed1: JUMPDEST 00002ed2: DUP1 00002ed3: MLOAD 00002ed4: DUP5 00002ed5: MLOAD 00002ed6: PUSH1 0x20 00002ed8: DUP1 00002ed9: DUP8 00002eda: ADD 00002edb: SWAP2 00002edc: SWAP1 00002edd: SWAP2 00002ede: KECCAK256 00002edf: DUP3 00002ee0: MLOAD 00002ee1: SWAP2 00002ee2: SWAP1 00002ee3: SWAP3 00002ee4: ADD 00002ee5: KECCAK256 00002ee6: EQ 00002ee7: PUSH2 0x2f72 00002eea: JUMPI 00002eeb: PUSH1 0x40 00002eed: MLOAD 00002eee: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002f0f: DUP2 00002f10: MSTORE 00002f11: PUSH1 0x20 00002f13: PUSH1 0x04 00002f15: DUP3 00002f16: ADD 00002f17: MSTORE 00002f18: PUSH1 0x26 00002f1a: PUSH1 0x24 00002f1c: DUP3 00002f1d: ADD 00002f1e: MSTORE 00002f1f: PUSH32 0x4d65726b6c65547269653a20696e76616c696420696e7465726e616c206e6f64 00002f40: PUSH1 0x44 00002f42: DUP3 00002f43: ADD 00002f44: MSTORE 00002f45: PUSH32 0x6520686173680000000000000000000000000000000000000000000000000000 00002f66: PUSH1 0x64 00002f68: DUP3 00002f69: ADD 00002f6a: MSTORE 00002f6b: PUSH1 0x84 00002f6d: ADD 00002f6e: PUSH2 0x0ae7 00002f71: JUMP 00002f72: JUMPDEST 00002f73: PUSH2 0x2f7e 00002f76: PUSH1 0x10 00002f78: PUSH1 0x01 00002f7a: PUSH2 0x4ff7 00002f7d: JUMP 00002f7e: JUMPDEST 00002f7f: DUP2 00002f80: PUSH1 0x20 00002f82: ADD 00002f83: MLOAD 00002f84: MLOAD 00002f85: SUB 00002f86: PUSH2 0x315a 00002f89: JUMPI 00002f8a: DUP5 00002f8b: MLOAD 00002f8c: DUP4 00002f8d: SUB 00002f8e: PUSH2 0x30f2 00002f91: JUMPI 00002f92: PUSH2 0x2fb8 00002f95: DUP2 00002f96: PUSH1 0x20 00002f98: ADD 00002f99: MLOAD 00002f9a: PUSH1 0x10 00002f9c: DUP2 00002f9d: MLOAD 00002f9e: DUP2 00002f9f: LT 00002fa0: PUSH2 0x2fab 00002fa3: JUMPI 00002fa4: PUSH2 0x2fab 00002fa7: PUSH2 0x56b5 00002faa: JUMP 00002fab: JUMPDEST 00002fac: PUSH1 0x20 00002fae: MUL 00002faf: PUSH1 0x20 00002fb1: ADD 00002fb2: ADD 00002fb3: MLOAD 00002fb4: PUSH2 0x3ddf 00002fb7: JUMP 00002fb8: JUMPDEST 00002fb9: SWAP7 00002fba: POP 00002fbb: PUSH1 0x00 00002fbd: DUP8 00002fbe: MLOAD 00002fbf: GT 00002fc0: PUSH2 0x304b 00002fc3: JUMPI 00002fc4: PUSH1 0x40 00002fc6: MLOAD 00002fc7: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002fe8: DUP2 00002fe9: MSTORE 00002fea: PUSH1 0x20 00002fec: PUSH1 0x04 00002fee: DUP3 00002fef: ADD 00002ff0: MSTORE 00002ff1: PUSH1 0x3b 00002ff3: PUSH1 0x24 00002ff5: DUP3 00002ff6: ADD 00002ff7: MSTORE 00002ff8: PUSH32 0x4d65726b6c65547269653a2076616c7565206c656e677468206d757374206265 00003019: PUSH1 0x44 0000301b: DUP3 0000301c: ADD 0000301d: MSTORE 0000301e: PUSH32 0x2067726561746572207468616e207a65726f20286272616e6368290000000000 0000303f: PUSH1 0x64 00003041: DUP3 00003042: ADD 00003043: MSTORE 00003044: PUSH1 0x84 00003046: ADD 00003047: PUSH2 0x0ae7 0000304a: JUMP 0000304b: JUMPDEST 0000304c: PUSH1 0x01 0000304e: DUP7 0000304f: MLOAD 00003050: PUSH2 0x3059 00003053: SWAP2 00003054: SWAP1 00003055: PUSH2 0x5236 00003058: JUMP 00003059: JUMPDEST 0000305a: DUP3 0000305b: EQ 0000305c: PUSH2 0x30e7 0000305f: JUMPI 00003060: PUSH1 0x40 00003062: MLOAD 00003063: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003084: DUP2 00003085: MSTORE 00003086: PUSH1 0x20 00003088: PUSH1 0x04 0000308a: DUP3 0000308b: ADD 0000308c: MSTORE 0000308d: PUSH1 0x3a 0000308f: PUSH1 0x24 00003091: DUP3 00003092: ADD 00003093: MSTORE 00003094: PUSH32 0x4d65726b6c65547269653a2076616c7565206e6f6465206d757374206265206c 000030b5: PUSH1 0x44 000030b7: DUP3 000030b8: ADD 000030b9: MSTORE 000030ba: PUSH32 0x617374206e6f646520696e2070726f6f6620286272616e636829000000000000 000030db: PUSH1 0x64 000030dd: DUP3 000030de: ADD 000030df: MSTORE 000030e0: PUSH1 0x84 000030e2: ADD 000030e3: PUSH2 0x0ae7 000030e6: JUMP 000030e7: JUMPDEST 000030e8: POP 000030e9: POP 000030ea: POP 000030eb: POP 000030ec: POP 000030ed: POP 000030ee: PUSH2 0x2972 000030f1: JUMP 000030f2: JUMPDEST 000030f3: PUSH1 0x00 000030f5: DUP6 000030f6: DUP5 000030f7: DUP2 000030f8: MLOAD 000030f9: DUP2 000030fa: LT 000030fb: PUSH2 0x3106 000030fe: JUMPI 000030ff: PUSH2 0x3106 00003102: PUSH2 0x56b5 00003105: JUMP 00003106: JUMPDEST 00003107: PUSH1 0x20 00003109: ADD 0000310a: ADD 0000310b: MLOAD 0000310c: PUSH1 0xf8 0000310e: SHR 0000310f: PUSH1 0xf8 00003111: SHL 00003112: PUSH1 0xf8 00003114: SHR 00003115: SWAP1 00003116: POP 00003117: PUSH1 0x00 00003119: DUP3 0000311a: PUSH1 0x20 0000311c: ADD 0000311d: MLOAD 0000311e: DUP3 0000311f: PUSH1 0xff 00003121: AND 00003122: DUP2 00003123: MLOAD 00003124: DUP2 00003125: LT 00003126: PUSH2 0x3131 00003129: JUMPI 0000312a: PUSH2 0x3131 0000312d: PUSH2 0x56b5 00003130: JUMP 00003131: JUMPDEST 00003132: PUSH1 0x20 00003134: MUL 00003135: PUSH1 0x20 00003137: ADD 00003138: ADD 00003139: MLOAD 0000313a: SWAP1 0000313b: POP 0000313c: PUSH2 0x3144 0000313f: DUP2 00003140: PUSH2 0x3e93 00003143: JUMP 00003144: JUMPDEST 00003145: SWAP6 00003146: POP 00003147: PUSH2 0x3151 0000314a: PUSH1 0x01 0000314c: DUP7 0000314d: PUSH2 0x4ff7 00003150: JUMP 00003151: JUMPDEST 00003152: SWAP5 00003153: POP 00003154: POP 00003155: POP 00003156: PUSH2 0x35db 00003159: JUMP 0000315a: JUMPDEST 0000315b: PUSH1 0x02 0000315d: DUP2 0000315e: PUSH1 0x20 00003160: ADD 00003161: MLOAD 00003162: MLOAD 00003163: SUB 00003164: PUSH2 0x3553 00003167: JUMPI 00003168: PUSH1 0x00 0000316a: PUSH2 0x3172 0000316d: DUP3 0000316e: PUSH2 0x3eb8 00003171: JUMP 00003172: JUMPDEST 00003173: SWAP1 00003174: POP 00003175: PUSH1 0x00 00003177: DUP2 00003178: PUSH1 0x00 0000317a: DUP2 0000317b: MLOAD 0000317c: DUP2 0000317d: LT 0000317e: PUSH2 0x3189 00003181: JUMPI 00003182: PUSH2 0x3189 00003185: PUSH2 0x56b5 00003188: JUMP 00003189: JUMPDEST 0000318a: ADD 0000318b: PUSH1 0x20 0000318d: ADD 0000318e: MLOAD 0000318f: PUSH1 0xf8 00003191: SHR 00003192: SWAP1 00003193: POP 00003194: PUSH1 0x00 00003196: PUSH2 0x31a0 00003199: PUSH1 0x02 0000319b: DUP4 0000319c: PUSH2 0x56e4 0000319f: JUMP 000031a0: JUMPDEST 000031a1: PUSH2 0x31ab 000031a4: SWAP1 000031a5: PUSH1 0x02 000031a7: PUSH2 0x5706 000031aa: JUMP 000031ab: JUMPDEST 000031ac: SWAP1 000031ad: POP 000031ae: PUSH1 0x00 000031b0: PUSH2 0x31bc 000031b3: DUP5 000031b4: DUP4 000031b5: PUSH1 0xff 000031b7: AND 000031b8: PUSH2 0x3edc 000031bb: JUMP 000031bc: JUMPDEST 000031bd: SWAP1 000031be: POP 000031bf: PUSH1 0x00 000031c1: PUSH2 0x31ca 000031c4: DUP11 000031c5: DUP10 000031c6: PUSH2 0x3edc 000031c9: JUMP 000031ca: JUMPDEST 000031cb: SWAP1 000031cc: POP 000031cd: PUSH1 0x00 000031cf: PUSH2 0x31d8 000031d2: DUP4 000031d3: DUP4 000031d4: PUSH2 0x3f12 000031d7: JUMP 000031d8: JUMPDEST 000031d9: SWAP1 000031da: POP 000031db: DUP1 000031dc: DUP4 000031dd: MLOAD 000031de: EQ 000031df: PUSH2 0x326a 000031e2: JUMPI 000031e3: PUSH1 0x40 000031e5: MLOAD 000031e6: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003207: DUP2 00003208: MSTORE 00003209: PUSH1 0x20 0000320b: PUSH1 0x04 0000320d: DUP3 0000320e: ADD 0000320f: MSTORE 00003210: PUSH1 0x3a 00003212: PUSH1 0x24 00003214: DUP3 00003215: ADD 00003216: MSTORE 00003217: PUSH32 0x4d65726b6c65547269653a20706174682072656d61696e646572206d75737420 00003238: PUSH1 0x44 0000323a: DUP3 0000323b: ADD 0000323c: MSTORE 0000323d: PUSH32 0x736861726520616c6c206e6962626c65732077697468206b6579000000000000 0000325e: PUSH1 0x64 00003260: DUP3 00003261: ADD 00003262: MSTORE 00003263: PUSH1 0x84 00003265: ADD 00003266: PUSH2 0x0ae7 00003269: JUMP 0000326a: JUMPDEST 0000326b: PUSH1 0xff 0000326d: DUP6 0000326e: AND 0000326f: PUSH1 0x02 00003271: EQ 00003272: DUP1 00003273: PUSH2 0x327f 00003276: JUMPI 00003277: POP 00003278: PUSH1 0xff 0000327a: DUP6 0000327b: AND 0000327c: PUSH1 0x03 0000327e: EQ 0000327f: JUMPDEST 00003280: ISZERO 00003281: PUSH2 0x346e 00003284: JUMPI 00003285: DUP1 00003286: DUP3 00003287: MLOAD 00003288: EQ 00003289: PUSH2 0x3314 0000328c: JUMPI 0000328d: PUSH1 0x40 0000328f: MLOAD 00003290: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000032b1: DUP2 000032b2: MSTORE 000032b3: PUSH1 0x20 000032b5: PUSH1 0x04 000032b7: DUP3 000032b8: ADD 000032b9: MSTORE 000032ba: PUSH1 0x3d 000032bc: PUSH1 0x24 000032be: DUP3 000032bf: ADD 000032c0: MSTORE 000032c1: PUSH32 0x4d65726b6c65547269653a206b65792072656d61696e646572206d7573742062 000032e2: PUSH1 0x44 000032e4: DUP3 000032e5: ADD 000032e6: MSTORE 000032e7: PUSH32 0x65206964656e746963616c20746f20706174682072656d61696e646572000000 00003308: PUSH1 0x64 0000330a: DUP3 0000330b: ADD 0000330c: MSTORE 0000330d: PUSH1 0x84 0000330f: ADD 00003310: PUSH2 0x0ae7 00003313: JUMP 00003314: JUMPDEST 00003315: PUSH2 0x332e 00003318: DUP8 00003319: PUSH1 0x20 0000331b: ADD 0000331c: MLOAD 0000331d: PUSH1 0x01 0000331f: DUP2 00003320: MLOAD 00003321: DUP2 00003322: LT 00003323: PUSH2 0x2fab 00003326: JUMPI 00003327: PUSH2 0x2fab 0000332a: PUSH2 0x56b5 0000332d: JUMP 0000332e: JUMPDEST 0000332f: SWAP13 00003330: POP 00003331: PUSH1 0x00 00003333: DUP14 00003334: MLOAD 00003335: GT 00003336: PUSH2 0x33c1 00003339: JUMPI 0000333a: PUSH1 0x40 0000333c: MLOAD 0000333d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000335e: DUP2 0000335f: MSTORE 00003360: PUSH1 0x20 00003362: PUSH1 0x04 00003364: DUP3 00003365: ADD 00003366: MSTORE 00003367: PUSH1 0x39 00003369: PUSH1 0x24 0000336b: DUP3 0000336c: ADD 0000336d: MSTORE 0000336e: PUSH32 0x4d65726b6c65547269653a2076616c7565206c656e677468206d757374206265 0000338f: PUSH1 0x44 00003391: DUP3 00003392: ADD 00003393: MSTORE 00003394: PUSH32 0x2067726561746572207468616e207a65726f20286c6561662900000000000000 000033b5: PUSH1 0x64 000033b7: DUP3 000033b8: ADD 000033b9: MSTORE 000033ba: PUSH1 0x84 000033bc: ADD 000033bd: PUSH2 0x0ae7 000033c0: JUMP 000033c1: JUMPDEST 000033c2: PUSH1 0x01 000033c4: DUP13 000033c5: MLOAD 000033c6: PUSH2 0x33cf 000033c9: SWAP2 000033ca: SWAP1 000033cb: PUSH2 0x5236 000033ce: JUMP 000033cf: JUMPDEST 000033d0: DUP9 000033d1: EQ 000033d2: PUSH2 0x345d 000033d5: JUMPI 000033d6: PUSH1 0x40 000033d8: MLOAD 000033d9: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000033fa: DUP2 000033fb: MSTORE 000033fc: PUSH1 0x20 000033fe: PUSH1 0x04 00003400: DUP3 00003401: ADD 00003402: MSTORE 00003403: PUSH1 0x38 00003405: PUSH1 0x24 00003407: DUP3 00003408: ADD 00003409: MSTORE 0000340a: PUSH32 0x4d65726b6c65547269653a2076616c7565206e6f6465206d757374206265206c 0000342b: PUSH1 0x44 0000342d: DUP3 0000342e: ADD 0000342f: MSTORE 00003430: PUSH32 0x617374206e6f646520696e2070726f6f6620286c656166290000000000000000 00003451: PUSH1 0x64 00003453: DUP3 00003454: ADD 00003455: MSTORE 00003456: PUSH1 0x84 00003458: ADD 00003459: PUSH2 0x0ae7 0000345c: JUMP 0000345d: JUMPDEST 0000345e: POP 0000345f: POP 00003460: POP 00003461: POP 00003462: POP 00003463: POP 00003464: POP 00003465: POP 00003466: POP 00003467: POP 00003468: POP 00003469: POP 0000346a: PUSH2 0x2972 0000346d: JUMP 0000346e: JUMPDEST 0000346f: PUSH1 0xff 00003471: DUP6 00003472: AND 00003473: ISZERO 00003474: DUP1 00003475: PUSH2 0x3481 00003478: JUMPI 00003479: POP 0000347a: PUSH1 0xff 0000347c: DUP6 0000347d: AND 0000347e: PUSH1 0x01 00003480: EQ 00003481: JUMPDEST 00003482: ISZERO 00003483: PUSH2 0x34c0 00003486: JUMPI 00003487: PUSH2 0x34ad 0000348a: DUP8 0000348b: PUSH1 0x20 0000348d: ADD 0000348e: MLOAD 0000348f: PUSH1 0x01 00003491: DUP2 00003492: MLOAD 00003493: DUP2 00003494: LT 00003495: PUSH2 0x34a0 00003498: JUMPI 00003499: PUSH2 0x34a0 0000349c: PUSH2 0x56b5 0000349f: JUMP 000034a0: JUMPDEST 000034a1: PUSH1 0x20 000034a3: MUL 000034a4: PUSH1 0x20 000034a6: ADD 000034a7: ADD 000034a8: MLOAD 000034a9: PUSH2 0x3e93 000034ac: JUMP 000034ad: JUMPDEST 000034ae: SWAP10 000034af: POP 000034b0: PUSH2 0x34b9 000034b3: DUP2 000034b4: DUP11 000034b5: PUSH2 0x4ff7 000034b8: JUMP 000034b9: JUMPDEST 000034ba: SWAP9 000034bb: POP 000034bc: PUSH2 0x3548 000034bf: JUMP 000034c0: JUMPDEST 000034c1: PUSH1 0x40 000034c3: MLOAD 000034c4: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000034e5: DUP2 000034e6: MSTORE 000034e7: PUSH1 0x20 000034e9: PUSH1 0x04 000034eb: DUP3 000034ec: ADD 000034ed: MSTORE 000034ee: PUSH1 0x32 000034f0: PUSH1 0x24 000034f2: DUP3 000034f3: ADD 000034f4: MSTORE 000034f5: PUSH32 0x4d65726b6c65547269653a2072656365697665642061206e6f64652077697468 00003516: PUSH1 0x44 00003518: DUP3 00003519: ADD 0000351a: MSTORE 0000351b: PUSH32 0x20616e20756e6b6e6f776e207072656669780000000000000000000000000000 0000353c: PUSH1 0x64 0000353e: DUP3 0000353f: ADD 00003540: MSTORE 00003541: PUSH1 0x84 00003543: ADD 00003544: PUSH2 0x0ae7 00003547: JUMP 00003548: JUMPDEST 00003549: POP 0000354a: POP 0000354b: POP 0000354c: POP 0000354d: POP 0000354e: POP 0000354f: PUSH2 0x35db 00003552: JUMP 00003553: JUMPDEST 00003554: PUSH1 0x40 00003556: MLOAD 00003557: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003578: DUP2 00003579: MSTORE 0000357a: PUSH1 0x20 0000357c: PUSH1 0x04 0000357e: DUP3 0000357f: ADD 00003580: MSTORE 00003581: PUSH1 0x28 00003583: PUSH1 0x24 00003585: DUP3 00003586: ADD 00003587: MSTORE 00003588: PUSH32 0x4d65726b6c65547269653a20726563656976656420616e20756e706172736561 000035a9: PUSH1 0x44 000035ab: DUP3 000035ac: ADD 000035ad: MSTORE 000035ae: PUSH32 0x626c65206e6f6465000000000000000000000000000000000000000000000000 000035cf: PUSH1 0x64 000035d1: DUP3 000035d2: ADD 000035d3: MSTORE 000035d4: PUSH1 0x84 000035d6: ADD 000035d7: PUSH2 0x0ae7 000035da: JUMP 000035db: JUMPDEST 000035dc: POP 000035dd: DUP1 000035de: PUSH2 0x35e6 000035e1: DUP2 000035e2: PUSH2 0x567d 000035e5: JUMP 000035e6: JUMPDEST 000035e7: SWAP2 000035e8: POP 000035e9: POP 000035ea: PUSH2 0x2caa 000035ed: JUMP 000035ee: JUMPDEST 000035ef: POP 000035f0: PUSH1 0x40 000035f2: MLOAD 000035f3: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003614: DUP2 00003615: MSTORE 00003616: PUSH1 0x20 00003618: PUSH1 0x04 0000361a: DUP3 0000361b: ADD 0000361c: MSTORE 0000361d: PUSH1 0x25 0000361f: PUSH1 0x24 00003621: DUP3 00003622: ADD 00003623: MSTORE 00003624: PUSH32 0x4d65726b6c65547269653a2072616e206f7574206f662070726f6f6620656c65 00003645: PUSH1 0x44 00003647: DUP3 00003648: ADD 00003649: MSTORE 0000364a: PUSH32 0x6d656e7473000000000000000000000000000000000000000000000000000000 0000366b: PUSH1 0x64 0000366d: DUP3 0000366e: ADD 0000366f: MSTORE 00003670: PUSH1 0x84 00003672: ADD 00003673: PUSH2 0x0ae7 00003676: JUMP 00003677: JUMPDEST 00003678: PUSH1 0x00 0000367a: DUP1 0000367b: DUP3 0000367c: SGT 0000367d: PUSH2 0x36e2 00003680: JUMPI 00003681: PUSH1 0x40 00003683: MLOAD 00003684: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000036a5: DUP2 000036a6: MSTORE 000036a7: PUSH1 0x20 000036a9: PUSH1 0x04 000036ab: DUP3 000036ac: ADD 000036ad: MSTORE 000036ae: PUSH1 0x09 000036b0: PUSH1 0x24 000036b2: DUP3 000036b3: ADD 000036b4: MSTORE 000036b5: PUSH32 0x554e444546494e45440000000000000000000000000000000000000000000000 000036d6: PUSH1 0x44 000036d8: DUP3 000036d9: ADD 000036da: MSTORE 000036db: PUSH1 0x64 000036dd: ADD 000036de: PUSH2 0x0ae7 000036e1: JUMP 000036e2: JUMPDEST 000036e3: PUSH1 0x00 000036e5: PUSH1 0x60 000036e7: PUSH2 0x36ef 000036ea: DUP5 000036eb: PUSH2 0x3fc6 000036ee: JUMP 000036ef: JUMPDEST 000036f0: SUB 000036f1: PUSH1 0x9f 000036f3: DUP2 000036f4: DUP2 000036f5: SUB 000036f6: SWAP5 000036f7: SWAP1 000036f8: SWAP5 000036f9: SHL 000036fa: SWAP1 000036fb: SWAP4 000036fc: SHR 000036fd: PUSH13 0x465772b2bbbb5f824b15207a30 0000370b: DUP2 0000370c: ADD 0000370d: DUP2 0000370e: MUL 0000370f: PUSH1 0x60 00003711: SWAP1 00003712: DUP2 00003713: SAR 00003714: PUSH14 0x0388eaa27412d5aca026815d636e 00003723: ADD 00003724: DUP3 00003725: MUL 00003726: DUP2 00003727: SAR 00003728: PUSH14 0x0df99ac502031bf953eff472fdcc 00003737: ADD 00003738: DUP3 00003739: MUL 0000373a: DUP2 0000373b: SAR 0000373c: PUSH14 0x13cdffb29d51d99322bdff5f2211 0000374b: ADD 0000374c: DUP3 0000374d: MUL 0000374e: DUP2 0000374f: SAR 00003750: PUSH14 0x0a0f742023def783a307a986912e 0000375f: ADD 00003760: DUP3 00003761: MUL 00003762: DUP2 00003763: SAR 00003764: PUSH14 0x01920d8043ca89b5239253284e42 00003773: ADD 00003774: DUP3 00003775: MUL 00003776: DUP2 00003777: SAR 00003778: PUSH13 0x0b7a86d7375468fac667a0a527 00003786: ADD 00003787: PUSH13 0x29508e458543d8aa4df2abee78 00003795: DUP4 00003796: ADD 00003797: DUP4 00003798: MUL 00003799: DUP3 0000379a: SAR 0000379b: PUSH14 0x0139601a2efabe717e604cbb4894 000037aa: ADD 000037ab: DUP4 000037ac: MUL 000037ad: DUP3 000037ae: SAR 000037af: PUSH14 0x02247f7a7b6594320649aa03aba1 000037be: ADD 000037bf: DUP4 000037c0: MUL 000037c1: DUP3 000037c2: SAR 000037c3: PUSH32 0xffffffffffffffffffffffffffffffffffffff73c0c716a594e00d54e3c4cbc9 000037e4: ADD 000037e5: DUP4 000037e6: MUL 000037e7: DUP3 000037e8: SAR 000037e9: PUSH32 0xfffffffffffffffffffffffffffffffffffffdc7b88c420e53a9890533129f6f 0000380a: ADD 0000380b: DUP4 0000380c: MUL 0000380d: SWAP1 0000380e: SWAP2 0000380f: SAR 00003810: PUSH32 0xffffffffffffffffffffffffffffffffffffff465fda27eb4d63ded474e5f832 00003831: ADD 00003832: SWAP1 00003833: SWAP2 00003834: MUL 00003835: PUSH32 0xfffffffffffffff5f6af8f7b3396644f18e15796000000000000000000000000 00003856: ADD 00003857: SDIV 00003858: PUSH18 0x1340daa0d5f769dba1915cef59f0815a5506 0000386b: MUL 0000386c: PUSH30 0x0267a36c0c95b3975ab3ee5b203a7614a3f75373f047d803ae7b6687f2b3 0000388b: SWAP4 0000388c: SWAP1 0000388d: SWAP4 0000388e: MUL 0000388f: SWAP3 00003890: SWAP1 00003891: SWAP3 00003892: ADD 00003893: PUSH30 0x57115e47018c7177eebf7cd370a3356a1b7863008a5ae8028c72b8864284 000038b2: ADD 000038b3: PUSH1 0xae 000038b5: SAR 000038b6: SWAP3 000038b7: SWAP2 000038b8: POP 000038b9: POP 000038ba: JUMP 000038bb: JUMPDEST 000038bc: PUSH1 0x00 000038be: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffdb731c958f34d94c1 000038df: DUP3 000038e0: SGT 000038e1: PUSH2 0x38ec 000038e4: JUMPI 000038e5: POP 000038e6: PUSH1 0x00 000038e8: SWAP2 000038e9: SWAP1 000038ea: POP 000038eb: JUMP 000038ec: JUMPDEST 000038ed: PUSH9 0x0755bf798b4a1bf1e5 000038f7: DUP3 000038f8: SLT 000038f9: PUSH2 0x395e 000038fc: JUMPI 000038fd: PUSH1 0x40 000038ff: MLOAD 00003900: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003921: DUP2 00003922: MSTORE 00003923: PUSH1 0x20 00003925: PUSH1 0x04 00003927: DUP3 00003928: ADD 00003929: MSTORE 0000392a: PUSH1 0x0c 0000392c: PUSH1 0x24 0000392e: DUP3 0000392f: ADD 00003930: MSTORE 00003931: PUSH32 0x4558505f4f564552464c4f570000000000000000000000000000000000000000 00003952: PUSH1 0x44 00003954: DUP3 00003955: ADD 00003956: MSTORE 00003957: PUSH1 0x64 00003959: ADD 0000395a: PUSH2 0x0ae7 0000395d: JUMP 0000395e: JUMPDEST 0000395f: PUSH6 0x03782dace9d9 00003966: PUSH1 0x4e 00003968: DUP4 00003969: SWAP1 0000396a: SHL 0000396b: SDIV 0000396c: SWAP2 0000396d: POP 0000396e: PUSH1 0x00 00003970: PUSH1 0x60 00003972: PUSH12 0xb17217f7d1cf79abc9e3b398 0000397f: DUP5 00003980: DUP3 00003981: SHL 00003982: SDIV 00003983: PUSH12 0x800000000000000000000000 00003990: ADD 00003991: SWAP1 00003992: SAR 00003993: PUSH12 0xb17217f7d1cf79abc9e3b398 000039a0: DUP2 000039a1: MUL 000039a2: SWAP1 000039a3: SWAP4 000039a4: SUB 000039a5: PUSH32 0xffffffffffffffffffffffffffffffffffffffdbf3ccf1604d263450f02a5504 000039c6: DUP2 000039c7: ADD 000039c8: DUP2 000039c9: MUL 000039ca: PUSH1 0x60 000039cc: SWAP1 000039cd: DUP2 000039ce: SAR 000039cf: PUSH14 0x0277594991cfc85f6e2461837cd9 000039de: ADD 000039df: DUP3 000039e0: MUL 000039e1: DUP2 000039e2: SAR 000039e3: PUSH32 0xffffffffffffffffffffffffffffffffffffe5adedaa1cb095af9e4da10e363c 00003a04: ADD 00003a05: DUP3 00003a06: MUL 00003a07: DUP2 00003a08: SAR 00003a09: PUSH14 0xb1bbb201f443cf962f1a1d3db4a5 00003a18: ADD 00003a19: DUP3 00003a1a: MUL 00003a1b: DUP2 00003a1c: SAR 00003a1d: PUSH32 0xfffffffffffffffffffffffffffffffffffd38dc772608b0ae56cce01296c0eb 00003a3e: ADD 00003a3f: DUP3 00003a40: MUL 00003a41: DUP2 00003a42: SAR 00003a43: PUSH15 0x05180bb14799ab47a8a8cb2a527d57 00003a53: ADD 00003a54: PUSH14 0x02d16720577bd19bf614176fe9ea 00003a63: PUSH13 0x10fe68e7fd37d0007b713f7650 00003a71: DUP5 00003a72: ADD 00003a73: DUP5 00003a74: MUL 00003a75: DUP4 00003a76: SAR 00003a77: SWAP1 00003a78: DUP2 00003a79: ADD 00003a7a: SWAP1 00003a7b: DUP5 00003a7c: ADD 00003a7d: PUSH32 0xfffffffffffffffffffffffffffffffffffffe2c69812cf03b0763fd454a8f7e 00003a9e: ADD 00003a9f: MUL 00003aa0: SWAP1 00003aa1: SWAP2 00003aa2: SAR 00003aa3: PUSH15 0x0587f503bb6ea29d25fcb740196450 00003ab3: ADD 00003ab4: SWAP1 00003ab5: SWAP2 00003ab6: MUL 00003ab7: PUSH26 0xd835ebba824c98fb31b83b2ca45c000000000000000000000000 00003ad2: ADD 00003ad3: SDIV 00003ad4: PUSH21 0x029d9dc38563c32e5c2f6dc192ee70ef65f9978af3 00003aea: MUL 00003aeb: PUSH1 0xc3 00003aed: SWAP4 00003aee: SWAP1 00003aef: SWAP4 00003af0: SUB 00003af1: SWAP3 00003af2: SWAP1 00003af3: SWAP3 00003af4: SHR 00003af5: SWAP3 00003af6: SWAP2 00003af7: POP 00003af8: POP 00003af9: JUMP 00003afa: JUMPDEST 00003afb: PUSH1 0x60 00003afd: DUP3 00003afe: SELFBALANCE 00003aff: LT 00003b00: ISZERO 00003b01: PUSH2 0x3b8c 00003b04: JUMPI 00003b05: PUSH1 0x40 00003b07: MLOAD 00003b08: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003b29: DUP2 00003b2a: MSTORE 00003b2b: PUSH1 0x20 00003b2d: PUSH1 0x04 00003b2f: DUP3 00003b30: ADD 00003b31: MSTORE 00003b32: PUSH1 0x26 00003b34: PUSH1 0x24 00003b36: DUP3 00003b37: ADD 00003b38: MSTORE 00003b39: PUSH32 0x416464726573733a20696e73756666696369656e742062616c616e636520666f 00003b5a: PUSH1 0x44 00003b5c: DUP3 00003b5d: ADD 00003b5e: MSTORE 00003b5f: PUSH32 0x722063616c6c0000000000000000000000000000000000000000000000000000 00003b80: PUSH1 0x64 00003b82: DUP3 00003b83: ADD 00003b84: MSTORE 00003b85: PUSH1 0x84 00003b87: ADD 00003b88: PUSH2 0x0ae7 00003b8b: JUMP 00003b8c: JUMPDEST 00003b8d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003ba2: DUP6 00003ba3: AND 00003ba4: EXTCODESIZE 00003ba5: PUSH2 0x3c0a 00003ba8: JUMPI 00003ba9: PUSH1 0x40 00003bab: MLOAD 00003bac: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003bcd: DUP2 00003bce: MSTORE 00003bcf: PUSH1 0x20 00003bd1: PUSH1 0x04 00003bd3: DUP3 00003bd4: ADD 00003bd5: MSTORE 00003bd6: PUSH1 0x1d 00003bd8: PUSH1 0x24 00003bda: DUP3 00003bdb: ADD 00003bdc: MSTORE 00003bdd: PUSH32 0x416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000 00003bfe: PUSH1 0x44 00003c00: DUP3 00003c01: ADD 00003c02: MSTORE 00003c03: PUSH1 0x64 00003c05: ADD 00003c06: PUSH2 0x0ae7 00003c09: JUMP 00003c0a: JUMPDEST 00003c0b: PUSH1 0x00 00003c0d: DUP1 00003c0e: DUP7 00003c0f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003c24: AND 00003c25: DUP6 00003c26: DUP8 00003c27: PUSH1 0x40 00003c29: MLOAD 00003c2a: PUSH2 0x3c33 00003c2d: SWAP2 00003c2e: SWAP1 00003c2f: PUSH2 0x5729 00003c32: JUMP 00003c33: JUMPDEST 00003c34: PUSH1 0x00 00003c36: PUSH1 0x40 00003c38: MLOAD 00003c39: DUP1 00003c3a: DUP4 00003c3b: SUB 00003c3c: DUP2 00003c3d: DUP6 00003c3e: DUP8 00003c3f: GAS 00003c40: CALL 00003c41: SWAP3 00003c42: POP 00003c43: POP 00003c44: POP 00003c45: RETURNDATASIZE 00003c46: DUP1 00003c47: PUSH1 0x00 00003c49: DUP2 00003c4a: EQ 00003c4b: PUSH2 0x3c70 00003c4e: JUMPI 00003c4f: PUSH1 0x40 00003c51: MLOAD 00003c52: SWAP2 00003c53: POP 00003c54: PUSH1 0x1f 00003c56: NOT 00003c57: PUSH1 0x3f 00003c59: RETURNDATASIZE 00003c5a: ADD 00003c5b: AND 00003c5c: DUP3 00003c5d: ADD 00003c5e: PUSH1 0x40 00003c60: MSTORE 00003c61: RETURNDATASIZE 00003c62: DUP3 00003c63: MSTORE 00003c64: RETURNDATASIZE 00003c65: PUSH1 0x00 00003c67: PUSH1 0x20 00003c69: DUP5 00003c6a: ADD 00003c6b: RETURNDATACOPY 00003c6c: PUSH2 0x3c75 00003c6f: JUMP 00003c70: JUMPDEST 00003c71: PUSH1 0x60 00003c73: SWAP2 00003c74: POP 00003c75: JUMPDEST 00003c76: POP 00003c77: SWAP2 00003c78: POP 00003c79: SWAP2 00003c7a: POP 00003c7b: PUSH2 0x3c85 00003c7e: DUP3 00003c7f: DUP3 00003c80: DUP7 00003c81: PUSH2 0x409c 00003c84: JUMP 00003c85: JUMPDEST 00003c86: SWAP8 00003c87: SWAP7 00003c88: POP 00003c89: POP 00003c8a: POP 00003c8b: POP 00003c8c: POP 00003c8d: POP 00003c8e: POP 00003c8f: JUMP 00003c90: JUMPDEST 00003c91: DUP1 00003c92: MLOAD 00003c93: PUSH1 0x60 00003c95: SWAP1 00003c96: DUP1 00003c97: PUSH8 0xffffffffffffffff 00003ca0: DUP2 00003ca1: GT 00003ca2: ISZERO 00003ca3: PUSH2 0x3cae 00003ca6: JUMPI 00003ca7: PUSH2 0x3cae 00003caa: PUSH2 0x4a95 00003cad: JUMP 00003cae: JUMPDEST 00003caf: PUSH1 0x40 00003cb1: MLOAD 00003cb2: SWAP1 00003cb3: DUP1 00003cb4: DUP3 00003cb5: MSTORE 00003cb6: DUP1 00003cb7: PUSH1 0x20 00003cb9: MUL 00003cba: PUSH1 0x20 00003cbc: ADD 00003cbd: DUP3 00003cbe: ADD 00003cbf: PUSH1 0x40 00003cc1: MSTORE 00003cc2: DUP1 00003cc3: ISZERO 00003cc4: PUSH2 0x3cf3 00003cc7: JUMPI 00003cc8: DUP2 00003cc9: PUSH1 0x20 00003ccb: ADD 00003ccc: JUMPDEST 00003ccd: PUSH1 0x40 00003ccf: DUP1 00003cd0: MLOAD 00003cd1: DUP1 00003cd2: DUP3 00003cd3: ADD 00003cd4: SWAP1 00003cd5: SWAP2 00003cd6: MSTORE 00003cd7: PUSH1 0x60 00003cd9: DUP1 00003cda: DUP3 00003cdb: MSTORE 00003cdc: PUSH1 0x20 00003cde: DUP3 00003cdf: ADD 00003ce0: MSTORE 00003ce1: DUP2 00003ce2: MSTORE 00003ce3: PUSH1 0x20 00003ce5: ADD 00003ce6: SWAP1 00003ce7: PUSH1 0x01 00003ce9: SWAP1 00003cea: SUB 00003ceb: SWAP1 00003cec: DUP2 00003ced: PUSH2 0x3ccc 00003cf0: JUMPI 00003cf1: SWAP1 00003cf2: POP 00003cf3: JUMPDEST 00003cf4: POP 00003cf5: SWAP2 00003cf6: POP 00003cf7: PUSH1 0x00 00003cf9: JUMPDEST 00003cfa: DUP2 00003cfb: DUP2 00003cfc: LT 00003cfd: ISZERO 00003cfe: PUSH2 0x3d75 00003d01: JUMPI 00003d02: PUSH1 0x40 00003d04: MLOAD 00003d05: DUP1 00003d06: PUSH1 0x40 00003d08: ADD 00003d09: PUSH1 0x40 00003d0b: MSTORE 00003d0c: DUP1 00003d0d: DUP6 00003d0e: DUP4 00003d0f: DUP2 00003d10: MLOAD 00003d11: DUP2 00003d12: LT 00003d13: PUSH2 0x3d1e 00003d16: JUMPI 00003d17: PUSH2 0x3d1e 00003d1a: PUSH2 0x56b5 00003d1d: JUMP 00003d1e: JUMPDEST 00003d1f: PUSH1 0x20 00003d21: MUL 00003d22: PUSH1 0x20 00003d24: ADD 00003d25: ADD 00003d26: MLOAD 00003d27: DUP2 00003d28: MSTORE 00003d29: PUSH1 0x20 00003d2b: ADD 00003d2c: PUSH2 0x3d4d 00003d2f: DUP7 00003d30: DUP5 00003d31: DUP2 00003d32: MLOAD 00003d33: DUP2 00003d34: LT 00003d35: PUSH2 0x3d40 00003d38: JUMPI 00003d39: PUSH2 0x3d40 00003d3c: PUSH2 0x56b5 00003d3f: JUMP 00003d40: JUMPDEST 00003d41: PUSH1 0x20 00003d43: MUL 00003d44: PUSH1 0x20 00003d46: ADD 00003d47: ADD 00003d48: MLOAD 00003d49: PUSH2 0x40ef 00003d4c: JUMP 00003d4d: JUMPDEST 00003d4e: DUP2 00003d4f: MSTORE 00003d50: POP 00003d51: DUP4 00003d52: DUP3 00003d53: DUP2 00003d54: MLOAD 00003d55: DUP2 00003d56: LT 00003d57: PUSH2 0x3d62 00003d5a: JUMPI 00003d5b: PUSH2 0x3d62 00003d5e: PUSH2 0x56b5 00003d61: JUMP 00003d62: JUMPDEST 00003d63: PUSH1 0x20 00003d65: SWAP1 00003d66: DUP2 00003d67: MUL 00003d68: SWAP2 00003d69: SWAP1 00003d6a: SWAP2 00003d6b: ADD 00003d6c: ADD 00003d6d: MSTORE 00003d6e: PUSH1 0x01 00003d70: ADD 00003d71: PUSH2 0x3cf9 00003d74: JUMP 00003d75: JUMPDEST 00003d76: POP 00003d77: POP 00003d78: SWAP2 00003d79: SWAP1 00003d7a: POP 00003d7b: JUMP 00003d7c: JUMPDEST 00003d7d: PUSH1 0x60 00003d7f: DUP1 00003d80: PUSH1 0x40 00003d82: MLOAD 00003d83: SWAP1 00003d84: POP 00003d85: DUP3 00003d86: MLOAD 00003d87: DUP1 00003d88: PUSH1 0x01 00003d8a: SHL 00003d8b: PUSH1 0x3f 00003d8d: DUP2 00003d8e: ADD 00003d8f: PUSH1 0x1f 00003d91: NOT 00003d92: AND 00003d93: DUP4 00003d94: ADD 00003d95: PUSH1 0x40 00003d97: MSTORE 00003d98: DUP1 00003d99: DUP4 00003d9a: MSTORE 00003d9b: POP 00003d9c: PUSH1 0x20 00003d9e: DUP5 00003d9f: ADD 00003da0: PUSH1 0x20 00003da2: DUP4 00003da3: ADD 00003da4: PUSH1 0x00 00003da6: JUMPDEST 00003da7: DUP4 00003da8: DUP2 00003da9: LT 00003daa: ISZERO 00003dab: PUSH2 0x3dd4 00003dae: JUMPI 00003daf: DUP1 00003db0: PUSH1 0x01 00003db2: SHL 00003db3: DUP3 00003db4: ADD 00003db5: DUP2 00003db6: DUP5 00003db7: ADD 00003db8: MLOAD 00003db9: PUSH1 0x00 00003dbb: BYTE 00003dbc: DUP1 00003dbd: PUSH1 0x04 00003dbf: SHR 00003dc0: DUP3 00003dc1: MSTORE8 00003dc2: PUSH1 0x0f 00003dc4: DUP2 00003dc5: AND 00003dc6: PUSH1 0x01 00003dc8: DUP4 00003dc9: ADD 00003dca: MSTORE8 00003dcb: POP 00003dcc: POP 00003dcd: PUSH1 0x01 00003dcf: ADD 00003dd0: PUSH2 0x3da6 00003dd3: JUMP 00003dd4: JUMPDEST 00003dd5: POP 00003dd6: SWAP3 00003dd7: SWAP6 00003dd8: SWAP5 00003dd9: POP 00003dda: POP 00003ddb: POP 00003ddc: POP 00003ddd: POP 00003dde: JUMP 00003ddf: JUMPDEST 00003de0: PUSH1 0x60 00003de2: PUSH1 0x00 00003de4: DUP1 00003de5: PUSH1 0x00 00003de7: PUSH2 0x3def 00003dea: DUP6 00003deb: PUSH2 0x4102 00003dee: JUMP 00003def: JUMPDEST 00003df0: SWAP2 00003df1: SWAP5 00003df2: POP 00003df3: SWAP3 00003df4: POP 00003df5: SWAP1 00003df6: POP 00003df7: PUSH1 0x00 00003df9: DUP2 00003dfa: PUSH1 0x01 00003dfc: DUP2 00003dfd: GT 00003dfe: ISZERO 00003dff: PUSH2 0x3e0a 00003e02: JUMPI 00003e03: PUSH2 0x3e0a 00003e06: PUSH2 0x5745 00003e09: JUMP 00003e0a: JUMPDEST 00003e0b: EQ 00003e0c: PUSH2 0x3e41 00003e0f: JUMPI 00003e10: PUSH1 0x40 00003e12: MLOAD 00003e13: PUSH32 0x1ff9b2e400000000000000000000000000000000000000000000000000000000 00003e34: DUP2 00003e35: MSTORE 00003e36: PUSH1 0x04 00003e38: ADD 00003e39: PUSH1 0x40 00003e3b: MLOAD 00003e3c: DUP1 00003e3d: SWAP2 00003e3e: SUB 00003e3f: SWAP1 00003e40: REVERT 00003e41: JUMPDEST 00003e42: PUSH2 0x3e4b 00003e45: DUP3 00003e46: DUP5 00003e47: PUSH2 0x4ff7 00003e4a: JUMP 00003e4b: JUMPDEST 00003e4c: DUP6 00003e4d: MLOAD 00003e4e: EQ 00003e4f: PUSH2 0x3e84 00003e52: JUMPI 00003e53: PUSH1 0x40 00003e55: MLOAD 00003e56: PUSH32 0x5c5537b800000000000000000000000000000000000000000000000000000000 00003e77: DUP2 00003e78: MSTORE 00003e79: PUSH1 0x04 00003e7b: ADD 00003e7c: PUSH1 0x40 00003e7e: MLOAD 00003e7f: DUP1 00003e80: SWAP2 00003e81: SUB 00003e82: SWAP1 00003e83: REVERT 00003e84: JUMPDEST 00003e85: PUSH2 0x2b73 00003e88: DUP6 00003e89: PUSH1 0x20 00003e8b: ADD 00003e8c: MLOAD 00003e8d: DUP5 00003e8e: DUP5 00003e8f: PUSH2 0x45a0 00003e92: JUMP 00003e93: JUMPDEST 00003e94: PUSH1 0x60 00003e96: PUSH1 0x20 00003e98: DUP3 00003e99: PUSH1 0x00 00003e9b: ADD 00003e9c: MLOAD 00003e9d: LT 00003e9e: PUSH2 0x3eaf 00003ea1: JUMPI 00003ea2: PUSH2 0x3eaa 00003ea5: DUP3 00003ea6: PUSH2 0x3ddf 00003ea9: JUMP 00003eaa: JUMPDEST 00003eab: PUSH2 0x0ffc 00003eae: JUMP 00003eaf: JUMPDEST 00003eb0: PUSH2 0x0ffc 00003eb3: DUP3 00003eb4: PUSH2 0x4634 00003eb7: JUMP 00003eb8: JUMPDEST 00003eb9: PUSH1 0x60 00003ebb: PUSH2 0x0ffc 00003ebe: PUSH2 0x3ed7 00003ec1: DUP4 00003ec2: PUSH1 0x20 00003ec4: ADD 00003ec5: MLOAD 00003ec6: PUSH1 0x00 00003ec8: DUP2 00003ec9: MLOAD 00003eca: DUP2 00003ecb: LT 00003ecc: PUSH2 0x2fab 00003ecf: JUMPI 00003ed0: PUSH2 0x2fab 00003ed3: PUSH2 0x56b5 00003ed6: JUMP 00003ed7: JUMPDEST 00003ed8: PUSH2 0x3d7c 00003edb: JUMP 00003edc: JUMPDEST 00003edd: PUSH1 0x60 00003edf: DUP3 00003ee0: MLOAD 00003ee1: DUP3 00003ee2: LT 00003ee3: PUSH2 0x3efb 00003ee6: JUMPI 00003ee7: POP 00003ee8: PUSH1 0x40 00003eea: DUP1 00003eeb: MLOAD 00003eec: PUSH1 0x20 00003eee: DUP2 00003eef: ADD 00003ef0: SWAP1 00003ef1: SWAP2 00003ef2: MSTORE 00003ef3: PUSH1 0x00 00003ef5: DUP2 00003ef6: MSTORE 00003ef7: PUSH2 0x0ffc 00003efa: JUMP 00003efb: JUMPDEST 00003efc: PUSH2 0x2972 00003eff: DUP4 00003f00: DUP4 00003f01: DUP5 00003f02: DUP7 00003f03: MLOAD 00003f04: PUSH2 0x3f0d 00003f07: SWAP2 00003f08: SWAP1 00003f09: PUSH2 0x5236 00003f0c: JUMP 00003f0d: JUMPDEST 00003f0e: PUSH2 0x464a 00003f11: JUMP 00003f12: JUMPDEST 00003f13: PUSH1 0x00 00003f15: DUP1 00003f16: DUP3 00003f17: MLOAD 00003f18: DUP5 00003f19: MLOAD 00003f1a: LT 00003f1b: PUSH2 0x3f25 00003f1e: JUMPI 00003f1f: DUP3 00003f20: MLOAD 00003f21: PUSH2 0x3f28 00003f24: JUMP 00003f25: JUMPDEST 00003f26: DUP4 00003f27: MLOAD 00003f28: JUMPDEST 00003f29: SWAP1 00003f2a: POP 00003f2b: JUMPDEST 00003f2c: DUP1 00003f2d: DUP3 00003f2e: LT 00003f2f: DUP1 00003f30: ISZERO 00003f31: PUSH2 0x3faf 00003f34: JUMPI 00003f35: POP 00003f36: DUP3 00003f37: DUP3 00003f38: DUP2 00003f39: MLOAD 00003f3a: DUP2 00003f3b: LT 00003f3c: PUSH2 0x3f47 00003f3f: JUMPI 00003f40: PUSH2 0x3f47 00003f43: PUSH2 0x56b5 00003f46: JUMP 00003f47: JUMPDEST 00003f48: PUSH1 0x20 00003f4a: ADD 00003f4b: ADD 00003f4c: MLOAD 00003f4d: PUSH1 0xf8 00003f4f: SHR 00003f50: PUSH1 0xf8 00003f52: SHL 00003f53: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00003f73: NOT 00003f74: AND 00003f75: DUP5 00003f76: DUP4 00003f77: DUP2 00003f78: MLOAD 00003f79: DUP2 00003f7a: LT 00003f7b: PUSH2 0x3f86 00003f7e: JUMPI 00003f7f: PUSH2 0x3f86 00003f82: PUSH2 0x56b5 00003f85: JUMP 00003f86: JUMPDEST 00003f87: ADD 00003f88: PUSH1 0x20 00003f8a: ADD 00003f8b: MLOAD 00003f8c: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 00003fad: AND 00003fae: EQ 00003faf: JUMPDEST 00003fb0: ISZERO 00003fb1: PUSH2 0x3fbf 00003fb4: JUMPI 00003fb5: DUP2 00003fb6: PUSH1 0x01 00003fb8: ADD 00003fb9: SWAP2 00003fba: POP 00003fbb: PUSH2 0x3f2b 00003fbe: JUMP 00003fbf: JUMPDEST 00003fc0: POP 00003fc1: SWAP3 00003fc2: SWAP2 00003fc3: POP 00003fc4: POP 00003fc5: JUMP 00003fc6: JUMPDEST 00003fc7: PUSH1 0x00 00003fc9: DUP1 00003fca: DUP3 00003fcb: GT 00003fcc: PUSH2 0x4031 00003fcf: JUMPI 00003fd0: PUSH1 0x40 00003fd2: MLOAD 00003fd3: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003ff4: DUP2 00003ff5: MSTORE 00003ff6: PUSH1 0x20 00003ff8: PUSH1 0x04 00003ffa: DUP3 00003ffb: ADD 00003ffc: MSTORE 00003ffd: PUSH1 0x09 00003fff: PUSH1 0x24 00004001: DUP3 00004002: ADD 00004003: MSTORE 00004004: PUSH32 0x554e444546494e45440000000000000000000000000000000000000000000000 00004025: PUSH1 0x44 00004027: DUP3 00004028: ADD 00004029: MSTORE 0000402a: PUSH1 0x64 0000402c: ADD 0000402d: PUSH2 0x0ae7 00004030: JUMP 00004031: JUMPDEST 00004032: POP 00004033: PUSH1 0x01 00004035: PUSH16 0xffffffffffffffffffffffffffffffff 00004046: DUP3 00004047: GT 00004048: PUSH1 0x07 0000404a: SHL 0000404b: DUP3 0000404c: DUP2 0000404d: SHR 0000404e: PUSH8 0xffffffffffffffff 00004057: LT 00004058: PUSH1 0x06 0000405a: SHL 0000405b: OR 0000405c: DUP3 0000405d: DUP2 0000405e: SHR 0000405f: PUSH4 0xffffffff 00004064: LT 00004065: PUSH1 0x05 00004067: SHL 00004068: OR 00004069: DUP3 0000406a: DUP2 0000406b: SHR 0000406c: PUSH2 0xffff 0000406f: LT 00004070: PUSH1 0x04 00004072: SHL 00004073: OR 00004074: DUP3 00004075: DUP2 00004076: SHR 00004077: PUSH1 0xff 00004079: LT 0000407a: PUSH1 0x03 0000407c: SWAP1 0000407d: DUP2 0000407e: SHL 0000407f: SWAP1 00004080: SWAP2 00004081: OR 00004082: DUP4 00004083: DUP2 00004084: SHR 00004085: PUSH1 0x0f 00004087: LT 00004088: PUSH1 0x02 0000408a: SHL 0000408b: OR 0000408c: DUP4 0000408d: DUP2 0000408e: SHR 0000408f: SWAP1 00004090: SWAP2 00004091: LT 00004092: DUP3 00004093: SHL 00004094: OR 00004095: SWAP2 00004096: DUP3 00004097: SHR 00004098: GT 00004099: OR 0000409a: SWAP1 0000409b: JUMP 0000409c: JUMPDEST 0000409d: PUSH1 0x60 0000409f: DUP4 000040a0: ISZERO 000040a1: PUSH2 0x40ab 000040a4: JUMPI 000040a5: POP 000040a6: DUP2 000040a7: PUSH2 0x2972 000040aa: JUMP 000040ab: JUMPDEST 000040ac: DUP3 000040ad: MLOAD 000040ae: ISZERO 000040af: PUSH2 0x40bb 000040b2: JUMPI 000040b3: DUP3 000040b4: MLOAD 000040b5: DUP1 000040b6: DUP5 000040b7: PUSH1 0x20 000040b9: ADD 000040ba: REVERT 000040bb: JUMPDEST 000040bc: DUP2 000040bd: PUSH1 0x40 000040bf: MLOAD 000040c0: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000040e1: DUP2 000040e2: MSTORE 000040e3: PUSH1 0x04 000040e5: ADD 000040e6: PUSH2 0x0ae7 000040e9: SWAP2 000040ea: SWAP1 000040eb: PUSH2 0x4e27 000040ee: JUMP 000040ef: JUMPDEST 000040f0: PUSH1 0x60 000040f2: PUSH2 0x0ffc 000040f5: PUSH2 0x40fd 000040f8: DUP4 000040f9: PUSH2 0x4822 000040fc: JUMP 000040fd: JUMPDEST 000040fe: PUSH2 0x488f 00004101: JUMP 00004102: JUMPDEST 00004103: PUSH1 0x00 00004105: DUP1 00004106: PUSH1 0x00 00004108: DUP4 00004109: PUSH1 0x00 0000410b: ADD 0000410c: MLOAD 0000410d: PUSH1 0x00 0000410f: SUB 00004110: PUSH2 0x4145 00004113: JUMPI 00004114: PUSH1 0x40 00004116: MLOAD 00004117: PUSH32 0x5ab458fb00000000000000000000000000000000000000000000000000000000 00004138: DUP2 00004139: MSTORE 0000413a: PUSH1 0x04 0000413c: ADD 0000413d: PUSH1 0x40 0000413f: MLOAD 00004140: DUP1 00004141: SWAP2 00004142: SUB 00004143: SWAP1 00004144: REVERT 00004145: JUMPDEST 00004146: PUSH1 0x20 00004148: DUP5 00004149: ADD 0000414a: MLOAD 0000414b: DUP1 0000414c: MLOAD 0000414d: PUSH1 0x00 0000414f: BYTE 00004150: PUSH1 0x7f 00004152: DUP2 00004153: GT 00004154: PUSH2 0x416a 00004157: JUMPI 00004158: PUSH1 0x00 0000415a: PUSH1 0x01 0000415c: PUSH1 0x00 0000415e: SWAP5 0000415f: POP 00004160: SWAP5 00004161: POP 00004162: SWAP5 00004163: POP 00004164: POP 00004165: POP 00004166: PUSH2 0x4599 00004169: JUMP 0000416a: JUMPDEST 0000416b: PUSH1 0xb7 0000416d: DUP2 0000416e: GT 0000416f: PUSH2 0x4280 00004172: JUMPI 00004173: PUSH1 0x00 00004175: PUSH2 0x417f 00004178: PUSH1 0x80 0000417a: DUP4 0000417b: PUSH2 0x5236 0000417e: JUMP 0000417f: JUMPDEST 00004180: SWAP1 00004181: POP 00004182: DUP1 00004183: DUP8 00004184: PUSH1 0x00 00004186: ADD 00004187: MLOAD 00004188: GT 00004189: PUSH2 0x41be 0000418c: JUMPI 0000418d: PUSH1 0x40 0000418f: MLOAD 00004190: PUSH32 0x66c9448500000000000000000000000000000000000000000000000000000000 000041b1: DUP2 000041b2: MSTORE 000041b3: PUSH1 0x04 000041b5: ADD 000041b6: PUSH1 0x40 000041b8: MLOAD 000041b9: DUP1 000041ba: SWAP2 000041bb: SUB 000041bc: SWAP1 000041bd: REVERT 000041be: JUMPDEST 000041bf: PUSH1 0x01 000041c1: DUP4 000041c2: DUP2 000041c3: ADD 000041c4: MLOAD 000041c5: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 000041e6: AND 000041e7: SWAP1 000041e8: DUP3 000041e9: EQ 000041ea: DUP1 000041eb: ISZERO 000041ec: PUSH2 0x4236 000041ef: JUMPI 000041f0: POP 000041f1: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 00004212: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 00004233: DUP3 00004234: AND 00004235: LT 00004236: JUMPDEST 00004237: ISZERO 00004238: PUSH2 0x426d 0000423b: JUMPI 0000423c: PUSH1 0x40 0000423e: MLOAD 0000423f: PUSH32 0xbabb01dd00000000000000000000000000000000000000000000000000000000 00004260: DUP2 00004261: MSTORE 00004262: PUSH1 0x04 00004264: ADD 00004265: PUSH1 0x40 00004267: MLOAD 00004268: DUP1 00004269: SWAP2 0000426a: SUB 0000426b: SWAP1 0000426c: REVERT 0000426d: JUMPDEST 0000426e: POP 0000426f: PUSH1 0x01 00004271: SWAP6 00004272: POP 00004273: SWAP4 00004274: POP 00004275: PUSH1 0x00 00004277: SWAP3 00004278: POP 00004279: PUSH2 0x4599 0000427c: SWAP2 0000427d: POP 0000427e: POP 0000427f: JUMP 00004280: JUMPDEST 00004281: PUSH1 0xbf 00004283: DUP2 00004284: GT 00004285: PUSH2 0x43de 00004288: JUMPI 00004289: PUSH1 0x00 0000428b: PUSH2 0x4295 0000428e: PUSH1 0xb7 00004290: DUP4 00004291: PUSH2 0x5236 00004294: JUMP 00004295: JUMPDEST 00004296: SWAP1 00004297: POP 00004298: DUP1 00004299: DUP8 0000429a: PUSH1 0x00 0000429c: ADD 0000429d: MLOAD 0000429e: GT 0000429f: PUSH2 0x42d4 000042a2: JUMPI 000042a3: PUSH1 0x40 000042a5: MLOAD 000042a6: PUSH32 0x66c9448500000000000000000000000000000000000000000000000000000000 000042c7: DUP2 000042c8: MSTORE 000042c9: PUSH1 0x04 000042cb: ADD 000042cc: PUSH1 0x40 000042ce: MLOAD 000042cf: DUP1 000042d0: SWAP2 000042d1: SUB 000042d2: SWAP1 000042d3: REVERT 000042d4: JUMPDEST 000042d5: PUSH1 0x01 000042d7: DUP4 000042d8: ADD 000042d9: MLOAD 000042da: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 000042fb: AND 000042fc: PUSH1 0x00 000042fe: DUP2 000042ff: SWAP1 00004300: SUB 00004301: PUSH2 0x4336 00004304: JUMPI 00004305: PUSH1 0x40 00004307: MLOAD 00004308: PUSH32 0xbabb01dd00000000000000000000000000000000000000000000000000000000 00004329: DUP2 0000432a: MSTORE 0000432b: PUSH1 0x04 0000432d: ADD 0000432e: PUSH1 0x40 00004330: MLOAD 00004331: DUP1 00004332: SWAP2 00004333: SUB 00004334: SWAP1 00004335: REVERT 00004336: JUMPDEST 00004337: PUSH1 0x01 00004339: DUP5 0000433a: ADD 0000433b: MLOAD 0000433c: PUSH1 0x08 0000433e: DUP4 0000433f: MUL 00004340: PUSH2 0x0100 00004343: SUB 00004344: SHR 00004345: PUSH1 0x37 00004347: DUP2 00004348: GT 00004349: PUSH2 0x437e 0000434c: JUMPI 0000434d: PUSH1 0x40 0000434f: MLOAD 00004350: PUSH32 0xbabb01dd00000000000000000000000000000000000000000000000000000000 00004371: DUP2 00004372: MSTORE 00004373: PUSH1 0x04 00004375: ADD 00004376: PUSH1 0x40 00004378: MLOAD 00004379: DUP1 0000437a: SWAP2 0000437b: SUB 0000437c: SWAP1 0000437d: REVERT 0000437e: JUMPDEST 0000437f: PUSH2 0x4388 00004382: DUP2 00004383: DUP5 00004384: PUSH2 0x4ff7 00004387: JUMP 00004388: JUMPDEST 00004389: DUP10 0000438a: MLOAD 0000438b: GT 0000438c: PUSH2 0x43c1 0000438f: JUMPI 00004390: PUSH1 0x40 00004392: MLOAD 00004393: PUSH32 0x66c9448500000000000000000000000000000000000000000000000000000000 000043b4: DUP2 000043b5: MSTORE 000043b6: PUSH1 0x04 000043b8: ADD 000043b9: PUSH1 0x40 000043bb: MLOAD 000043bc: DUP1 000043bd: SWAP2 000043be: SUB 000043bf: SWAP1 000043c0: REVERT 000043c1: JUMPDEST 000043c2: PUSH2 0x43cc 000043c5: DUP4 000043c6: PUSH1 0x01 000043c8: PUSH2 0x4ff7 000043cb: JUMP 000043cc: JUMPDEST 000043cd: SWAP8 000043ce: POP 000043cf: SWAP6 000043d0: POP 000043d1: PUSH1 0x00 000043d3: SWAP5 000043d4: POP 000043d5: PUSH2 0x4599 000043d8: SWAP4 000043d9: POP 000043da: POP 000043db: POP 000043dc: POP 000043dd: JUMP 000043de: JUMPDEST 000043df: PUSH1 0xf7 000043e1: DUP2 000043e2: GT 000043e3: PUSH2 0x4443 000043e6: JUMPI 000043e7: PUSH1 0x00 000043e9: PUSH2 0x43f3 000043ec: PUSH1 0xc0 000043ee: DUP4 000043ef: PUSH2 0x5236 000043f2: JUMP 000043f3: JUMPDEST 000043f4: SWAP1 000043f5: POP 000043f6: DUP1 000043f7: DUP8 000043f8: PUSH1 0x00 000043fa: ADD 000043fb: MLOAD 000043fc: GT 000043fd: PUSH2 0x4432 00004400: JUMPI 00004401: PUSH1 0x40 00004403: MLOAD 00004404: PUSH32 0x66c9448500000000000000000000000000000000000000000000000000000000 00004425: DUP2 00004426: MSTORE 00004427: PUSH1 0x04 00004429: ADD 0000442a: PUSH1 0x40 0000442c: MLOAD 0000442d: DUP1 0000442e: SWAP2 0000442f: SUB 00004430: SWAP1 00004431: REVERT 00004432: JUMPDEST 00004433: PUSH1 0x01 00004435: SWAP6 00004436: POP 00004437: SWAP4 00004438: POP 00004439: DUP5 0000443a: SWAP3 0000443b: POP 0000443c: PUSH2 0x4599 0000443f: SWAP2 00004440: POP 00004441: POP 00004442: JUMP 00004443: JUMPDEST 00004444: PUSH1 0x00 00004446: PUSH2 0x4450 00004449: PUSH1 0xf7 0000444b: DUP4 0000444c: PUSH2 0x5236 0000444f: JUMP 00004450: JUMPDEST 00004451: SWAP1 00004452: POP 00004453: DUP1 00004454: DUP8 00004455: PUSH1 0x00 00004457: ADD 00004458: MLOAD 00004459: GT 0000445a: PUSH2 0x448f 0000445d: JUMPI 0000445e: PUSH1 0x40 00004460: MLOAD 00004461: PUSH32 0x66c9448500000000000000000000000000000000000000000000000000000000 00004482: DUP2 00004483: MSTORE 00004484: PUSH1 0x04 00004486: ADD 00004487: PUSH1 0x40 00004489: MLOAD 0000448a: DUP1 0000448b: SWAP2 0000448c: SUB 0000448d: SWAP1 0000448e: REVERT 0000448f: JUMPDEST 00004490: PUSH1 0x01 00004492: DUP4 00004493: ADD 00004494: MLOAD 00004495: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 000044b6: AND 000044b7: PUSH1 0x00 000044b9: DUP2 000044ba: SWAP1 000044bb: SUB 000044bc: PUSH2 0x44f1 000044bf: JUMPI 000044c0: PUSH1 0x40 000044c2: MLOAD 000044c3: PUSH32 0xbabb01dd00000000000000000000000000000000000000000000000000000000 000044e4: DUP2 000044e5: MSTORE 000044e6: PUSH1 0x04 000044e8: ADD 000044e9: PUSH1 0x40 000044eb: MLOAD 000044ec: DUP1 000044ed: SWAP2 000044ee: SUB 000044ef: SWAP1 000044f0: REVERT 000044f1: JUMPDEST 000044f2: PUSH1 0x01 000044f4: DUP5 000044f5: ADD 000044f6: MLOAD 000044f7: PUSH1 0x08 000044f9: DUP4 000044fa: MUL 000044fb: PUSH2 0x0100 000044fe: SUB 000044ff: SHR 00004500: PUSH1 0x37 00004502: DUP2 00004503: GT 00004504: PUSH2 0x4539 00004507: JUMPI 00004508: PUSH1 0x40 0000450a: MLOAD 0000450b: PUSH32 0xbabb01dd00000000000000000000000000000000000000000000000000000000 0000452c: DUP2 0000452d: MSTORE 0000452e: PUSH1 0x04 00004530: ADD 00004531: PUSH1 0x40 00004533: MLOAD 00004534: DUP1 00004535: SWAP2 00004536: SUB 00004537: SWAP1 00004538: REVERT 00004539: JUMPDEST 0000453a: PUSH2 0x4543 0000453d: DUP2 0000453e: DUP5 0000453f: PUSH2 0x4ff7 00004542: JUMP 00004543: JUMPDEST 00004544: DUP10 00004545: MLOAD 00004546: GT 00004547: PUSH2 0x457c 0000454a: JUMPI 0000454b: PUSH1 0x40 0000454d: MLOAD 0000454e: PUSH32 0x66c9448500000000000000000000000000000000000000000000000000000000 0000456f: DUP2 00004570: MSTORE 00004571: PUSH1 0x04 00004573: ADD 00004574: PUSH1 0x40 00004576: MLOAD 00004577: DUP1 00004578: SWAP2 00004579: SUB 0000457a: SWAP1 0000457b: REVERT 0000457c: JUMPDEST 0000457d: PUSH2 0x4587 00004580: DUP4 00004581: PUSH1 0x01 00004583: PUSH2 0x4ff7 00004586: JUMP 00004587: JUMPDEST 00004588: SWAP8 00004589: POP 0000458a: SWAP6 0000458b: POP 0000458c: PUSH1 0x01 0000458e: SWAP5 0000458f: POP 00004590: PUSH2 0x4599 00004593: SWAP4 00004594: POP 00004595: POP 00004596: POP 00004597: POP 00004598: JUMP 00004599: JUMPDEST 0000459a: SWAP2 0000459b: SWAP4 0000459c: SWAP1 0000459d: SWAP3 0000459e: POP 0000459f: JUMP 000045a0: JUMPDEST 000045a1: PUSH1 0x60 000045a3: DUP2 000045a4: PUSH8 0xffffffffffffffff 000045ad: DUP2 000045ae: GT 000045af: ISZERO 000045b0: PUSH2 0x45bb 000045b3: JUMPI 000045b4: PUSH2 0x45bb 000045b7: PUSH2 0x4a95 000045ba: JUMP 000045bb: JUMPDEST 000045bc: PUSH1 0x40 000045be: MLOAD 000045bf: SWAP1 000045c0: DUP1 000045c1: DUP3 000045c2: MSTORE 000045c3: DUP1 000045c4: PUSH1 0x1f 000045c6: ADD 000045c7: PUSH1 0x1f 000045c9: NOT 000045ca: AND 000045cb: PUSH1 0x20 000045cd: ADD 000045ce: DUP3 000045cf: ADD 000045d0: PUSH1 0x40 000045d2: MSTORE 000045d3: DUP1 000045d4: ISZERO 000045d5: PUSH2 0x45e5 000045d8: JUMPI 000045d9: PUSH1 0x20 000045db: DUP3 000045dc: ADD 000045dd: DUP2 000045de: DUP1 000045df: CALLDATASIZE 000045e0: DUP4 000045e1: CALLDATACOPY 000045e2: ADD 000045e3: SWAP1 000045e4: POP 000045e5: JUMPDEST 000045e6: POP 000045e7: SWAP1 000045e8: POP 000045e9: DUP2 000045ea: ISZERO 000045eb: PUSH2 0x2972 000045ee: JUMPI 000045ef: PUSH1 0x00 000045f1: PUSH2 0x45fa 000045f4: DUP5 000045f5: DUP7 000045f6: PUSH2 0x4ff7 000045f9: JUMP 000045fa: JUMPDEST 000045fb: SWAP1 000045fc: POP 000045fd: PUSH1 0x20 000045ff: DUP3 00004600: ADD 00004601: PUSH1 0x00 00004603: JUMPDEST 00004604: DUP5 00004605: DUP2 00004606: LT 00004607: ISZERO 00004608: PUSH2 0x461b 0000460b: JUMPI 0000460c: DUP3 0000460d: DUP2 0000460e: ADD 0000460f: MLOAD 00004610: DUP3 00004611: DUP3 00004612: ADD 00004613: MSTORE 00004614: PUSH1 0x20 00004616: ADD 00004617: PUSH2 0x4603 0000461a: JUMP 0000461b: JUMPDEST 0000461c: DUP5 0000461d: DUP2 0000461e: GT 0000461f: ISZERO 00004620: PUSH2 0x462a 00004623: JUMPI 00004624: PUSH1 0x00 00004626: DUP6 00004627: DUP4 00004628: ADD 00004629: MSTORE 0000462a: JUMPDEST 0000462b: POP 0000462c: POP 0000462d: POP 0000462e: SWAP4 0000462f: SWAP3 00004630: POP 00004631: POP 00004632: POP 00004633: JUMP 00004634: JUMPDEST 00004635: PUSH1 0x60 00004637: PUSH2 0x0ffc 0000463a: DUP3 0000463b: PUSH1 0x20 0000463d: ADD 0000463e: MLOAD 0000463f: PUSH1 0x00 00004641: DUP5 00004642: PUSH1 0x00 00004644: ADD 00004645: MLOAD 00004646: PUSH2 0x45a0 00004649: JUMP 0000464a: JUMPDEST 0000464b: PUSH1 0x60 0000464d: DUP2 0000464e: DUP3 0000464f: PUSH1 0x1f 00004651: ADD 00004652: LT 00004653: ISZERO 00004654: PUSH2 0x46b9 00004657: JUMPI 00004658: PUSH1 0x40 0000465a: MLOAD 0000465b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000467c: DUP2 0000467d: MSTORE 0000467e: PUSH1 0x20 00004680: PUSH1 0x04 00004682: DUP3 00004683: ADD 00004684: MSTORE 00004685: PUSH1 0x0e 00004687: PUSH1 0x24 00004689: DUP3 0000468a: ADD 0000468b: MSTORE 0000468c: PUSH32 0x736c6963655f6f766572666c6f77000000000000000000000000000000000000 000046ad: PUSH1 0x44 000046af: DUP3 000046b0: ADD 000046b1: MSTORE 000046b2: PUSH1 0x64 000046b4: ADD 000046b5: PUSH2 0x0ae7 000046b8: JUMP 000046b9: JUMPDEST 000046ba: DUP3 000046bb: DUP3 000046bc: DUP5 000046bd: ADD 000046be: LT 000046bf: ISZERO 000046c0: PUSH2 0x4725 000046c3: JUMPI 000046c4: PUSH1 0x40 000046c6: MLOAD 000046c7: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000046e8: DUP2 000046e9: MSTORE 000046ea: PUSH1 0x20 000046ec: PUSH1 0x04 000046ee: DUP3 000046ef: ADD 000046f0: MSTORE 000046f1: PUSH1 0x0e 000046f3: PUSH1 0x24 000046f5: DUP3 000046f6: ADD 000046f7: MSTORE 000046f8: PUSH32 0x736c6963655f6f766572666c6f77000000000000000000000000000000000000 00004719: PUSH1 0x44 0000471b: DUP3 0000471c: ADD 0000471d: MSTORE 0000471e: PUSH1 0x64 00004720: ADD 00004721: PUSH2 0x0ae7 00004724: JUMP 00004725: JUMPDEST 00004726: DUP2 00004727: DUP4 00004728: ADD 00004729: DUP5 0000472a: MLOAD 0000472b: LT 0000472c: ISZERO 0000472d: PUSH2 0x4792 00004730: JUMPI 00004731: PUSH1 0x40 00004733: MLOAD 00004734: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004755: DUP2 00004756: MSTORE 00004757: PUSH1 0x20 00004759: PUSH1 0x04 0000475b: DUP3 0000475c: ADD 0000475d: MSTORE 0000475e: PUSH1 0x11 00004760: PUSH1 0x24 00004762: DUP3 00004763: ADD 00004764: MSTORE 00004765: PUSH32 0x736c6963655f6f75744f66426f756e6473000000000000000000000000000000 00004786: PUSH1 0x44 00004788: DUP3 00004789: ADD 0000478a: MSTORE 0000478b: PUSH1 0x64 0000478d: ADD 0000478e: PUSH2 0x0ae7 00004791: JUMP 00004792: JUMPDEST 00004793: PUSH1 0x60 00004795: DUP3 00004796: ISZERO 00004797: DUP1 00004798: ISZERO 00004799: PUSH2 0x47b1 0000479c: JUMPI 0000479d: PUSH1 0x40 0000479f: MLOAD 000047a0: SWAP2 000047a1: POP 000047a2: PUSH1 0x00 000047a4: DUP3 000047a5: MSTORE 000047a6: PUSH1 0x20 000047a8: DUP3 000047a9: ADD 000047aa: PUSH1 0x40 000047ac: MSTORE 000047ad: PUSH2 0x4819 000047b0: JUMP 000047b1: JUMPDEST 000047b2: PUSH1 0x40 000047b4: MLOAD 000047b5: SWAP2 000047b6: POP 000047b7: PUSH1 0x1f 000047b9: DUP5 000047ba: AND 000047bb: DUP1 000047bc: ISZERO 000047bd: PUSH1 0x20 000047bf: MUL 000047c0: DUP2 000047c1: DUP5 000047c2: ADD 000047c3: ADD 000047c4: DUP6 000047c5: DUP2 000047c6: ADD 000047c7: DUP8 000047c8: DUP4 000047c9: ISZERO 000047ca: PUSH1 0x20 000047cc: MUL 000047cd: DUP5 000047ce: DUP12 000047cf: ADD 000047d0: ADD 000047d1: ADD 000047d2: JUMPDEST 000047d3: DUP2 000047d4: DUP4 000047d5: LT 000047d6: ISZERO 000047d7: PUSH2 0x47ea 000047da: JUMPI 000047db: DUP1 000047dc: MLOAD 000047dd: DUP4 000047de: MSTORE 000047df: PUSH1 0x20 000047e1: SWAP3 000047e2: DUP4 000047e3: ADD 000047e4: SWAP3 000047e5: ADD 000047e6: PUSH2 0x47d2 000047e9: JUMP 000047ea: JUMPDEST 000047eb: POP 000047ec: POP 000047ed: DUP6 000047ee: DUP5 000047ef: MSTORE 000047f0: PUSH1 0x1f 000047f2: ADD 000047f3: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00004814: AND 00004815: PUSH1 0x40 00004817: MSTORE 00004818: POP 00004819: JUMPDEST 0000481a: POP 0000481b: SWAP5 0000481c: SWAP4 0000481d: POP 0000481e: POP 0000481f: POP 00004820: POP 00004821: JUMP 00004822: JUMPDEST 00004823: PUSH1 0x40 00004825: DUP1 00004826: MLOAD 00004827: DUP1 00004828: DUP3 00004829: ADD 0000482a: SWAP1 0000482b: SWAP2 0000482c: MSTORE 0000482d: PUSH1 0x00 0000482f: DUP1 00004830: DUP3 00004831: MSTORE 00004832: PUSH1 0x20 00004834: DUP3 00004835: ADD 00004836: MSTORE 00004837: DUP2 00004838: MLOAD 00004839: PUSH1 0x00 0000483b: SUB 0000483c: PUSH2 0x4871 0000483f: JUMPI 00004840: PUSH1 0x40 00004842: MLOAD 00004843: PUSH32 0x5ab458fb00000000000000000000000000000000000000000000000000000000 00004864: DUP2 00004865: MSTORE 00004866: PUSH1 0x04 00004868: ADD 00004869: PUSH1 0x40 0000486b: MLOAD 0000486c: DUP1 0000486d: SWAP2 0000486e: SUB 0000486f: SWAP1 00004870: REVERT 00004871: JUMPDEST 00004872: POP 00004873: PUSH1 0x40 00004875: DUP1 00004876: MLOAD 00004877: DUP1 00004878: DUP3 00004879: ADD 0000487a: SWAP1 0000487b: SWAP2 0000487c: MSTORE 0000487d: DUP2 0000487e: MLOAD 0000487f: DUP2 00004880: MSTORE 00004881: PUSH1 0x20 00004883: SWAP2 00004884: DUP3 00004885: ADD 00004886: SWAP2 00004887: DUP2 00004888: ADD 00004889: SWAP2 0000488a: SWAP1 0000488b: SWAP2 0000488c: MSTORE 0000488d: SWAP1 0000488e: JUMP 0000488f: JUMPDEST 00004890: PUSH1 0x60 00004892: PUSH1 0x00 00004894: DUP1 00004895: PUSH1 0x00 00004897: PUSH2 0x489f 0000489a: DUP6 0000489b: PUSH2 0x4102 0000489e: JUMP 0000489f: JUMPDEST 000048a0: SWAP2 000048a1: SWAP5 000048a2: POP 000048a3: SWAP3 000048a4: POP 000048a5: SWAP1 000048a6: POP 000048a7: PUSH1 0x01 000048a9: DUP2 000048aa: PUSH1 0x01 000048ac: DUP2 000048ad: GT 000048ae: ISZERO 000048af: PUSH2 0x48ba 000048b2: JUMPI 000048b3: PUSH2 0x48ba 000048b6: PUSH2 0x5745 000048b9: JUMP 000048ba: JUMPDEST 000048bb: EQ 000048bc: PUSH2 0x48f1 000048bf: JUMPI 000048c0: PUSH1 0x40 000048c2: MLOAD 000048c3: PUSH32 0x4b9c6abe00000000000000000000000000000000000000000000000000000000 000048e4: DUP2 000048e5: MSTORE 000048e6: PUSH1 0x04 000048e8: ADD 000048e9: PUSH1 0x40 000048eb: MLOAD 000048ec: DUP1 000048ed: SWAP2 000048ee: SUB 000048ef: SWAP1 000048f0: REVERT 000048f1: JUMPDEST 000048f2: DUP5 000048f3: MLOAD 000048f4: PUSH2 0x48fd 000048f7: DUP4 000048f8: DUP6 000048f9: PUSH2 0x4ff7 000048fc: JUMP 000048fd: JUMPDEST 000048fe: EQ 000048ff: PUSH2 0x4934 00004902: JUMPI 00004903: PUSH1 0x40 00004905: MLOAD 00004906: PUSH32 0x5c5537b800000000000000000000000000000000000000000000000000000000 00004927: DUP2 00004928: MSTORE 00004929: PUSH1 0x04 0000492b: ADD 0000492c: PUSH1 0x40 0000492e: MLOAD 0000492f: DUP1 00004930: SWAP2 00004931: SUB 00004932: SWAP1 00004933: REVERT 00004934: JUMPDEST 00004935: PUSH1 0x40 00004937: DUP1 00004938: MLOAD 00004939: PUSH1 0x20 0000493b: DUP1 0000493c: DUP3 0000493d: MSTORE 0000493e: PUSH2 0x0420 00004941: DUP3 00004942: ADD 00004943: SWAP1 00004944: SWAP3 00004945: MSTORE 00004946: SWAP1 00004947: DUP2 00004948: PUSH1 0x20 0000494a: ADD 0000494b: JUMPDEST 0000494c: PUSH1 0x40 0000494e: DUP1 0000494f: MLOAD 00004950: DUP1 00004951: DUP3 00004952: ADD 00004953: SWAP1 00004954: SWAP2 00004955: MSTORE 00004956: PUSH1 0x00 00004958: DUP1 00004959: DUP3 0000495a: MSTORE 0000495b: PUSH1 0x20 0000495d: DUP3 0000495e: ADD 0000495f: MSTORE 00004960: DUP2 00004961: MSTORE 00004962: PUSH1 0x20 00004964: ADD 00004965: SWAP1 00004966: PUSH1 0x01 00004968: SWAP1 00004969: SUB 0000496a: SWAP1 0000496b: DUP2 0000496c: PUSH2 0x494b 0000496f: JUMPI 00004970: SWAP1 00004971: POP 00004972: POP 00004973: SWAP4 00004974: POP 00004975: PUSH1 0x00 00004977: DUP4 00004978: JUMPDEST 00004979: DUP7 0000497a: MLOAD 0000497b: DUP2 0000497c: LT 0000497d: ISZERO 0000497e: PUSH2 0x4a39 00004981: JUMPI 00004982: PUSH1 0x00 00004984: DUP1 00004985: PUSH2 0x49be 00004988: PUSH1 0x40 0000498a: MLOAD 0000498b: DUP1 0000498c: PUSH1 0x40 0000498e: ADD 0000498f: PUSH1 0x40 00004991: MSTORE 00004992: DUP1 00004993: DUP6 00004994: DUP13 00004995: PUSH1 0x00 00004997: ADD 00004998: MLOAD 00004999: PUSH2 0x49a2 0000499c: SWAP2 0000499d: SWAP1 0000499e: PUSH2 0x5236 000049a1: JUMP 000049a2: JUMPDEST 000049a3: DUP2 000049a4: MSTORE 000049a5: PUSH1 0x20 000049a7: ADD 000049a8: DUP6 000049a9: DUP13 000049aa: PUSH1 0x20 000049ac: ADD 000049ad: MLOAD 000049ae: PUSH2 0x49b7 000049b1: SWAP2 000049b2: SWAP1 000049b3: PUSH2 0x4ff7 000049b6: JUMP 000049b7: JUMPDEST 000049b8: SWAP1 000049b9: MSTORE 000049ba: PUSH2 0x4102 000049bd: JUMP 000049be: JUMPDEST 000049bf: POP 000049c0: SWAP2 000049c1: POP 000049c2: SWAP2 000049c3: POP 000049c4: PUSH1 0x40 000049c6: MLOAD 000049c7: DUP1 000049c8: PUSH1 0x40 000049ca: ADD 000049cb: PUSH1 0x40 000049cd: MSTORE 000049ce: DUP1 000049cf: DUP4 000049d0: DUP4 000049d1: PUSH2 0x49da 000049d4: SWAP2 000049d5: SWAP1 000049d6: PUSH2 0x4ff7 000049d9: JUMP 000049da: JUMPDEST 000049db: DUP2 000049dc: MSTORE 000049dd: PUSH1 0x20 000049df: ADD 000049e0: DUP5 000049e1: DUP12 000049e2: PUSH1 0x20 000049e4: ADD 000049e5: MLOAD 000049e6: PUSH2 0x49ef 000049e9: SWAP2 000049ea: SWAP1 000049eb: PUSH2 0x4ff7 000049ee: JUMP 000049ef: JUMPDEST 000049f0: DUP2 000049f1: MSTORE 000049f2: POP 000049f3: DUP9 000049f4: DUP6 000049f5: DUP2 000049f6: MLOAD 000049f7: DUP2 000049f8: LT 000049f9: PUSH2 0x4a04 000049fc: JUMPI 000049fd: PUSH2 0x4a04 00004a00: PUSH2 0x56b5 00004a03: JUMP 00004a04: JUMPDEST 00004a05: PUSH1 0x20 00004a07: SWAP1 00004a08: DUP2 00004a09: MUL 00004a0a: SWAP2 00004a0b: SWAP1 00004a0c: SWAP2 00004a0d: ADD 00004a0e: ADD 00004a0f: MSTORE 00004a10: PUSH2 0x4a1a 00004a13: PUSH1 0x01 00004a15: DUP6 00004a16: PUSH2 0x4ff7 00004a19: JUMP 00004a1a: JUMPDEST 00004a1b: SWAP4 00004a1c: POP 00004a1d: PUSH2 0x4a26 00004a20: DUP2 00004a21: DUP4 00004a22: PUSH2 0x4ff7 00004a25: JUMP 00004a26: JUMPDEST 00004a27: PUSH2 0x4a30 00004a2a: SWAP1 00004a2b: DUP5 00004a2c: PUSH2 0x4ff7 00004a2f: JUMP 00004a30: JUMPDEST 00004a31: SWAP3 00004a32: POP 00004a33: POP 00004a34: POP 00004a35: PUSH2 0x4978 00004a38: JUMP 00004a39: JUMPDEST 00004a3a: POP 00004a3b: DUP5 00004a3c: MSTORE 00004a3d: POP 00004a3e: SWAP2 00004a3f: SWAP4 00004a40: SWAP3 00004a41: POP 00004a42: POP 00004a43: POP 00004a44: JUMP 00004a45: JUMPDEST 00004a46: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004a5b: DUP2 00004a5c: AND 00004a5d: DUP2 00004a5e: EQ 00004a5f: PUSH2 0x4a67 00004a62: JUMPI 00004a63: PUSH1 0x00 00004a65: DUP1 00004a66: REVERT 00004a67: JUMPDEST 00004a68: POP 00004a69: JUMP 00004a6a: JUMPDEST 00004a6b: DUP1 00004a6c: CALLDATALOAD 00004a6d: PUSH8 0xffffffffffffffff 00004a76: DUP2 00004a77: AND 00004a78: DUP2 00004a79: EQ 00004a7a: PUSH2 0x4a82 00004a7d: JUMPI 00004a7e: PUSH1 0x00 00004a80: DUP1 00004a81: REVERT 00004a82: JUMPDEST 00004a83: SWAP2 00004a84: SWAP1 00004a85: POP 00004a86: JUMP 00004a87: JUMPDEST 00004a88: DUP1 00004a89: ISZERO 00004a8a: ISZERO 00004a8b: DUP2 00004a8c: EQ 00004a8d: PUSH2 0x4a67 00004a90: JUMPI 00004a91: PUSH1 0x00 00004a93: DUP1 00004a94: REVERT 00004a95: JUMPDEST 00004a96: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00004ab7: PUSH1 0x00 00004ab9: MSTORE 00004aba: PUSH1 0x41 00004abc: PUSH1 0x04 00004abe: MSTORE 00004abf: PUSH1 0x24 00004ac1: PUSH1 0x00 00004ac3: REVERT 00004ac4: JUMPDEST 00004ac5: PUSH1 0x40 00004ac7: MLOAD 00004ac8: PUSH1 0x1f 00004aca: DUP3 00004acb: ADD 00004acc: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00004aed: AND 00004aee: DUP2 00004aef: ADD 00004af0: PUSH8 0xffffffffffffffff 00004af9: DUP2 00004afa: GT 00004afb: DUP3 00004afc: DUP3 00004afd: LT 00004afe: OR 00004aff: ISZERO 00004b00: PUSH2 0x4b0b 00004b03: JUMPI 00004b04: PUSH2 0x4b0b 00004b07: PUSH2 0x4a95 00004b0a: JUMP 00004b0b: JUMPDEST 00004b0c: PUSH1 0x40 00004b0e: MSTORE 00004b0f: SWAP2 00004b10: SWAP1 00004b11: POP 00004b12: JUMP 00004b13: JUMPDEST 00004b14: PUSH1 0x00 00004b16: DUP3 00004b17: PUSH1 0x1f 00004b19: DUP4 00004b1a: ADD 00004b1b: SLT 00004b1c: PUSH2 0x4b24 00004b1f: JUMPI 00004b20: PUSH1 0x00 00004b22: DUP1 00004b23: REVERT 00004b24: JUMPDEST 00004b25: DUP2 00004b26: CALLDATALOAD 00004b27: PUSH8 0xffffffffffffffff 00004b30: DUP2 00004b31: GT 00004b32: ISZERO 00004b33: PUSH2 0x4b3e 00004b36: JUMPI 00004b37: PUSH2 0x4b3e 00004b3a: PUSH2 0x4a95 00004b3d: JUMP 00004b3e: JUMPDEST 00004b3f: PUSH2 0x4b6f 00004b42: PUSH1 0x20 00004b44: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00004b65: PUSH1 0x1f 00004b67: DUP5 00004b68: ADD 00004b69: AND 00004b6a: ADD 00004b6b: PUSH2 0x4ac4 00004b6e: JUMP 00004b6f: JUMPDEST 00004b70: DUP2 00004b71: DUP2 00004b72: MSTORE 00004b73: DUP5 00004b74: PUSH1 0x20 00004b76: DUP4 00004b77: DUP7 00004b78: ADD 00004b79: ADD 00004b7a: GT 00004b7b: ISZERO 00004b7c: PUSH2 0x4b84 00004b7f: JUMPI 00004b80: PUSH1 0x00 00004b82: DUP1 00004b83: REVERT 00004b84: JUMPDEST 00004b85: DUP2 00004b86: PUSH1 0x20 00004b88: DUP6 00004b89: ADD 00004b8a: PUSH1 0x20 00004b8c: DUP4 00004b8d: ADD 00004b8e: CALLDATACOPY 00004b8f: PUSH1 0x00 00004b91: SWAP2 00004b92: DUP2 00004b93: ADD 00004b94: PUSH1 0x20 00004b96: ADD 00004b97: SWAP2 00004b98: SWAP1 00004b99: SWAP2 00004b9a: MSTORE 00004b9b: SWAP4 00004b9c: SWAP3 00004b9d: POP 00004b9e: POP 00004b9f: POP 00004ba0: JUMP 00004ba1: JUMPDEST 00004ba2: PUSH1 0x00 00004ba4: DUP1 00004ba5: PUSH1 0x00 00004ba7: DUP1 00004ba8: PUSH1 0x00 00004baa: DUP1 00004bab: PUSH1 0xc0 00004bad: DUP8 00004bae: DUP10 00004baf: SUB 00004bb0: SLT 00004bb1: ISZERO 00004bb2: PUSH2 0x4bba 00004bb5: JUMPI 00004bb6: PUSH1 0x00 00004bb8: DUP1 00004bb9: REVERT 00004bba: JUMPDEST 00004bbb: DUP7 00004bbc: CALLDATALOAD 00004bbd: PUSH2 0x4bc5 00004bc0: DUP2 00004bc1: PUSH2 0x4a45 00004bc4: JUMP 00004bc5: JUMPDEST 00004bc6: SWAP6 00004bc7: POP 00004bc8: PUSH1 0x20 00004bca: DUP8 00004bcb: ADD 00004bcc: CALLDATALOAD 00004bcd: SWAP5 00004bce: POP 00004bcf: PUSH1 0x40 00004bd1: DUP8 00004bd2: ADD 00004bd3: CALLDATALOAD 00004bd4: SWAP4 00004bd5: POP 00004bd6: PUSH2 0x4be1 00004bd9: PUSH1 0x60 00004bdb: DUP9 00004bdc: ADD 00004bdd: PUSH2 0x4a6a 00004be0: JUMP 00004be1: JUMPDEST 00004be2: SWAP3 00004be3: POP 00004be4: PUSH1 0x80 00004be6: DUP8 00004be7: ADD 00004be8: CALLDATALOAD 00004be9: PUSH2 0x4bf1 00004bec: DUP2 00004bed: PUSH2 0x4a87 00004bf0: JUMP 00004bf1: JUMPDEST 00004bf2: SWAP2 00004bf3: POP 00004bf4: PUSH1 0xa0 00004bf6: DUP8 00004bf7: ADD 00004bf8: CALLDATALOAD 00004bf9: PUSH8 0xffffffffffffffff 00004c02: DUP2 00004c03: GT 00004c04: ISZERO 00004c05: PUSH2 0x4c0d 00004c08: JUMPI 00004c09: PUSH1 0x00 00004c0b: DUP1 00004c0c: REVERT 00004c0d: JUMPDEST 00004c0e: PUSH2 0x4c19 00004c11: DUP10 00004c12: DUP3 00004c13: DUP11 00004c14: ADD 00004c15: PUSH2 0x4b13 00004c18: JUMP 00004c19: JUMPDEST 00004c1a: SWAP2 00004c1b: POP 00004c1c: POP 00004c1d: SWAP3 00004c1e: SWAP6 00004c1f: POP 00004c20: SWAP3 00004c21: SWAP6 00004c22: POP 00004c23: SWAP3 00004c24: SWAP6 00004c25: JUMP 00004c26: JUMPDEST 00004c27: PUSH1 0x00 00004c29: PUSH1 0xc0 00004c2b: DUP3 00004c2c: DUP5 00004c2d: SUB 00004c2e: SLT 00004c2f: ISZERO 00004c30: PUSH2 0x4c38 00004c33: JUMPI 00004c34: PUSH1 0x00 00004c36: DUP1 00004c37: REVERT 00004c38: JUMPDEST 00004c39: PUSH1 0x40 00004c3b: MLOAD 00004c3c: PUSH1 0xc0 00004c3e: DUP2 00004c3f: ADD 00004c40: PUSH8 0xffffffffffffffff 00004c49: DUP3 00004c4a: DUP3 00004c4b: LT 00004c4c: DUP2 00004c4d: DUP4 00004c4e: GT 00004c4f: OR 00004c50: ISZERO 00004c51: PUSH2 0x4c5c 00004c54: JUMPI 00004c55: PUSH2 0x4c5c 00004c58: PUSH2 0x4a95 00004c5b: JUMP 00004c5c: JUMPDEST 00004c5d: DUP2 00004c5e: PUSH1 0x40 00004c60: MSTORE 00004c61: DUP3 00004c62: SWAP4 00004c63: POP 00004c64: DUP5 00004c65: CALLDATALOAD 00004c66: DUP4 00004c67: MSTORE 00004c68: PUSH1 0x20 00004c6a: DUP6 00004c6b: ADD 00004c6c: CALLDATALOAD 00004c6d: SWAP2 00004c6e: POP 00004c6f: PUSH2 0x4c77 00004c72: DUP3 00004c73: PUSH2 0x4a45 00004c76: JUMP 00004c77: JUMPDEST 00004c78: DUP2 00004c79: PUSH1 0x20 00004c7b: DUP5 00004c7c: ADD 00004c7d: MSTORE 00004c7e: PUSH1 0x40 00004c80: DUP6 00004c81: ADD 00004c82: CALLDATALOAD 00004c83: SWAP2 00004c84: POP 00004c85: PUSH2 0x4c8d 00004c88: DUP3 00004c89: PUSH2 0x4a45 00004c8c: JUMP 00004c8d: JUMPDEST 00004c8e: DUP2 00004c8f: PUSH1 0x40 00004c91: DUP5 00004c92: ADD 00004c93: MSTORE 00004c94: PUSH1 0x60 00004c96: DUP6 00004c97: ADD 00004c98: CALLDATALOAD 00004c99: PUSH1 0x60 00004c9b: DUP5 00004c9c: ADD 00004c9d: MSTORE 00004c9e: PUSH1 0x80 00004ca0: DUP6 00004ca1: ADD 00004ca2: CALLDATALOAD 00004ca3: PUSH1 0x80 00004ca5: DUP5 00004ca6: ADD 00004ca7: MSTORE 00004ca8: PUSH1 0xa0 00004caa: DUP6 00004cab: ADD 00004cac: CALLDATALOAD 00004cad: SWAP2 00004cae: POP 00004caf: DUP1 00004cb0: DUP3 00004cb1: GT 00004cb2: ISZERO 00004cb3: PUSH2 0x4cbb 00004cb6: JUMPI 00004cb7: PUSH1 0x00 00004cb9: DUP1 00004cba: REVERT 00004cbb: JUMPDEST 00004cbc: POP 00004cbd: PUSH2 0x4cc8 00004cc0: DUP6 00004cc1: DUP3 00004cc2: DUP7 00004cc3: ADD 00004cc4: PUSH2 0x4b13 00004cc7: JUMP 00004cc8: JUMPDEST 00004cc9: PUSH1 0xa0 00004ccb: DUP4 00004ccc: ADD 00004ccd: MSTORE 00004cce: POP 00004ccf: POP 00004cd0: SWAP3 00004cd1: SWAP2 00004cd2: POP 00004cd3: POP 00004cd4: JUMP 00004cd5: JUMPDEST 00004cd6: PUSH1 0x00 00004cd8: DUP1 00004cd9: PUSH1 0x00 00004cdb: DUP1 00004cdc: PUSH1 0x00 00004cde: DUP6 00004cdf: DUP8 00004ce0: SUB 00004ce1: PUSH1 0xe0 00004ce3: DUP2 00004ce4: SLT 00004ce5: ISZERO 00004ce6: PUSH2 0x4cee 00004ce9: JUMPI 00004cea: PUSH1 0x00 00004cec: DUP1 00004ced: REVERT 00004cee: JUMPDEST 00004cef: DUP7 00004cf0: CALLDATALOAD 00004cf1: PUSH8 0xffffffffffffffff 00004cfa: DUP1 00004cfb: DUP3 00004cfc: GT 00004cfd: ISZERO 00004cfe: PUSH2 0x4d06 00004d01: JUMPI 00004d02: PUSH1 0x00 00004d04: DUP1 00004d05: REVERT 00004d06: JUMPDEST 00004d07: PUSH2 0x4d12 00004d0a: DUP11 00004d0b: DUP4 00004d0c: DUP12 00004d0d: ADD 00004d0e: PUSH2 0x4c26 00004d11: JUMP 00004d12: JUMPDEST 00004d13: SWAP8 00004d14: POP 00004d15: PUSH1 0x20 00004d17: DUP10 00004d18: ADD 00004d19: CALLDATALOAD 00004d1a: SWAP7 00004d1b: POP 00004d1c: PUSH1 0x80 00004d1e: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0 00004d3f: DUP5 00004d40: ADD 00004d41: SLT 00004d42: ISZERO 00004d43: PUSH2 0x4d4b 00004d46: JUMPI 00004d47: PUSH1 0x00 00004d49: DUP1 00004d4a: REVERT 00004d4b: JUMPDEST 00004d4c: PUSH1 0x40 00004d4e: DUP10 00004d4f: ADD 00004d50: SWAP6 00004d51: POP 00004d52: PUSH1 0xc0 00004d54: DUP10 00004d55: ADD 00004d56: CALLDATALOAD 00004d57: SWAP3 00004d58: POP 00004d59: DUP1 00004d5a: DUP4 00004d5b: GT 00004d5c: ISZERO 00004d5d: PUSH2 0x4d65 00004d60: JUMPI 00004d61: PUSH1 0x00 00004d63: DUP1 00004d64: REVERT 00004d65: JUMPDEST 00004d66: DUP3 00004d67: DUP10 00004d68: ADD 00004d69: SWAP3 00004d6a: POP 00004d6b: DUP10 00004d6c: PUSH1 0x1f 00004d6e: DUP5 00004d6f: ADD 00004d70: SLT 00004d71: PUSH2 0x4d79 00004d74: JUMPI 00004d75: PUSH1 0x00 00004d77: DUP1 00004d78: REVERT 00004d79: JUMPDEST 00004d7a: DUP3 00004d7b: CALLDATALOAD 00004d7c: SWAP2 00004d7d: POP 00004d7e: DUP1 00004d7f: DUP3 00004d80: GT 00004d81: ISZERO 00004d82: PUSH2 0x4d8a 00004d85: JUMPI 00004d86: PUSH1 0x00 00004d88: DUP1 00004d89: REVERT 00004d8a: JUMPDEST 00004d8b: POP 00004d8c: DUP9 00004d8d: PUSH1 0x20 00004d8f: DUP3 00004d90: PUSH1 0x05 00004d92: SHL 00004d93: DUP5 00004d94: ADD 00004d95: ADD 00004d96: GT 00004d97: ISZERO 00004d98: PUSH2 0x4da0 00004d9b: JUMPI 00004d9c: PUSH1 0x00 00004d9e: DUP1 00004d9f: REVERT 00004da0: JUMPDEST 00004da1: SWAP6 00004da2: SWAP9 00004da3: SWAP5 00004da4: SWAP8 00004da5: POP 00004da6: SWAP3 00004da7: SWAP6 00004da8: POP 00004da9: POP 00004daa: POP 00004dab: PUSH1 0x20 00004dad: ADD 00004dae: SWAP2 00004daf: SWAP1 00004db0: JUMP 00004db1: JUMPDEST 00004db2: PUSH1 0x00 00004db4: JUMPDEST 00004db5: DUP4 00004db6: DUP2 00004db7: LT 00004db8: ISZERO 00004db9: PUSH2 0x4dcc 00004dbc: JUMPI 00004dbd: DUP2 00004dbe: DUP2 00004dbf: ADD 00004dc0: MLOAD 00004dc1: DUP4 00004dc2: DUP3 00004dc3: ADD 00004dc4: MSTORE 00004dc5: PUSH1 0x20 00004dc7: ADD 00004dc8: PUSH2 0x4db4 00004dcb: JUMP 00004dcc: JUMPDEST 00004dcd: DUP4 00004dce: DUP2 00004dcf: GT 00004dd0: ISZERO 00004dd1: PUSH2 0x1f01 00004dd4: JUMPI 00004dd5: POP 00004dd6: POP 00004dd7: PUSH1 0x00 00004dd9: SWAP2 00004dda: ADD 00004ddb: MSTORE 00004ddc: JUMP 00004ddd: JUMPDEST 00004dde: PUSH1 0x00 00004de0: DUP2 00004de1: MLOAD 00004de2: DUP1 00004de3: DUP5 00004de4: MSTORE 00004de5: PUSH2 0x4df5 00004de8: DUP2 00004de9: PUSH1 0x20 00004deb: DUP7 00004dec: ADD 00004ded: PUSH1 0x20 00004def: DUP7 00004df0: ADD 00004df1: PUSH2 0x4db1 00004df4: JUMP 00004df5: JUMPDEST 00004df6: PUSH1 0x1f 00004df8: ADD 00004df9: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00004e1a: AND 00004e1b: SWAP3 00004e1c: SWAP1 00004e1d: SWAP3 00004e1e: ADD 00004e1f: PUSH1 0x20 00004e21: ADD 00004e22: SWAP3 00004e23: SWAP2 00004e24: POP 00004e25: POP 00004e26: JUMP 00004e27: JUMPDEST 00004e28: PUSH1 0x20 00004e2a: DUP2 00004e2b: MSTORE 00004e2c: PUSH1 0x00 00004e2e: PUSH2 0x2972 00004e31: PUSH1 0x20 00004e33: DUP4 00004e34: ADD 00004e35: DUP5 00004e36: PUSH2 0x4ddd 00004e39: JUMP 00004e3a: JUMPDEST 00004e3b: PUSH1 0x00 00004e3d: PUSH1 0x20 00004e3f: DUP3 00004e40: DUP5 00004e41: SUB 00004e42: SLT 00004e43: ISZERO 00004e44: PUSH2 0x4e4c 00004e47: JUMPI 00004e48: PUSH1 0x00 00004e4a: DUP1 00004e4b: REVERT 00004e4c: JUMPDEST 00004e4d: POP 00004e4e: CALLDATALOAD 00004e4f: SWAP2 00004e50: SWAP1 00004e51: POP 00004e52: JUMP 00004e53: JUMPDEST 00004e54: PUSH1 0xff 00004e56: DUP2 00004e57: AND 00004e58: DUP2 00004e59: EQ 00004e5a: PUSH2 0x4a67 00004e5d: JUMPI 00004e5e: PUSH1 0x00 00004e60: DUP1 00004e61: REVERT 00004e62: JUMPDEST 00004e63: PUSH1 0x00 00004e65: DUP1 00004e66: PUSH1 0x00 00004e68: DUP1 00004e69: PUSH1 0x80 00004e6b: DUP6 00004e6c: DUP8 00004e6d: SUB 00004e6e: SLT 00004e6f: ISZERO 00004e70: PUSH2 0x4e78 00004e73: JUMPI 00004e74: PUSH1 0x00 00004e76: DUP1 00004e77: REVERT 00004e78: JUMPDEST 00004e79: DUP5 00004e7a: CALLDATALOAD 00004e7b: PUSH2 0x4e83 00004e7e: DUP2 00004e7f: PUSH2 0x4a45 00004e82: JUMP 00004e83: JUMPDEST 00004e84: SWAP4 00004e85: POP 00004e86: PUSH1 0x20 00004e88: DUP6 00004e89: ADD 00004e8a: CALLDATALOAD 00004e8b: PUSH2 0x4e93 00004e8e: DUP2 00004e8f: PUSH2 0x4e53 00004e92: JUMP 00004e93: JUMPDEST 00004e94: SWAP4 00004e95: SWAP7 00004e96: SWAP4 00004e97: SWAP6 00004e98: POP 00004e99: POP 00004e9a: POP 00004e9b: POP 00004e9c: PUSH1 0x40 00004e9e: DUP3 00004e9f: ADD 00004ea0: CALLDATALOAD 00004ea1: SWAP2 00004ea2: PUSH1 0x60 00004ea4: ADD 00004ea5: CALLDATALOAD 00004ea6: SWAP1 00004ea7: JUMP 00004ea8: JUMPDEST 00004ea9: PUSH1 0x00 00004eab: PUSH1 0x20 00004ead: DUP3 00004eae: DUP5 00004eaf: SUB 00004eb0: SLT 00004eb1: ISZERO 00004eb2: PUSH2 0x4eba 00004eb5: JUMPI 00004eb6: PUSH1 0x00 00004eb8: DUP1 00004eb9: REVERT 00004eba: JUMPDEST 00004ebb: DUP2 00004ebc: CALLDATALOAD 00004ebd: PUSH8 0xffffffffffffffff 00004ec6: DUP2 00004ec7: GT 00004ec8: ISZERO 00004ec9: PUSH2 0x4ed1 00004ecc: JUMPI 00004ecd: PUSH1 0x00 00004ecf: DUP1 00004ed0: REVERT 00004ed1: JUMPDEST 00004ed2: PUSH2 0x4edd 00004ed5: DUP5 00004ed6: DUP3 00004ed7: DUP6 00004ed8: ADD 00004ed9: PUSH2 0x4c26 00004edc: JUMP 00004edd: JUMPDEST 00004ede: SWAP5 00004edf: SWAP4 00004ee0: POP 00004ee1: POP 00004ee2: POP 00004ee3: POP 00004ee4: JUMP 00004ee5: JUMPDEST 00004ee6: PUSH1 0x00 00004ee8: PUSH1 0x20 00004eea: DUP3 00004eeb: DUP5 00004eec: SUB 00004eed: SLT 00004eee: ISZERO 00004eef: PUSH2 0x4ef7 00004ef2: JUMPI 00004ef3: PUSH1 0x00 00004ef5: DUP1 00004ef6: REVERT 00004ef7: JUMPDEST 00004ef8: PUSH2 0x2972 00004efb: DUP3 00004efc: PUSH2 0x4a6a 00004eff: JUMP 00004f00: JUMPDEST 00004f01: PUSH1 0x00 00004f03: DUP1 00004f04: PUSH1 0x00 00004f06: PUSH1 0x60 00004f08: DUP5 00004f09: DUP7 00004f0a: SUB 00004f0b: SLT 00004f0c: ISZERO 00004f0d: PUSH2 0x4f15 00004f10: JUMPI 00004f11: PUSH1 0x00 00004f13: DUP1 00004f14: REVERT 00004f15: JUMPDEST 00004f16: DUP4 00004f17: CALLDATALOAD 00004f18: PUSH2 0x4f20 00004f1b: DUP2 00004f1c: PUSH2 0x4a45 00004f1f: JUMP 00004f20: JUMPDEST 00004f21: SWAP3 00004f22: POP 00004f23: PUSH1 0x20 00004f25: DUP5 00004f26: ADD 00004f27: CALLDATALOAD 00004f28: PUSH2 0x4f30 00004f2b: DUP2 00004f2c: PUSH2 0x4a45 00004f2f: JUMP 00004f30: JUMPDEST 00004f31: SWAP2 00004f32: POP 00004f33: PUSH1 0x40 00004f35: DUP5 00004f36: ADD 00004f37: CALLDATALOAD 00004f38: PUSH2 0x4f40 00004f3b: DUP2 00004f3c: PUSH2 0x4a45 00004f3f: JUMP 00004f40: JUMPDEST 00004f41: DUP1 00004f42: SWAP2 00004f43: POP 00004f44: POP 00004f45: SWAP3 00004f46: POP 00004f47: SWAP3 00004f48: POP 00004f49: SWAP3 00004f4a: JUMP 00004f4b: JUMPDEST 00004f4c: PUSH1 0x00 00004f4e: DUP1 00004f4f: PUSH1 0x00 00004f51: DUP1 00004f52: PUSH1 0x00 00004f54: PUSH1 0xa0 00004f56: DUP7 00004f57: DUP9 00004f58: SUB 00004f59: SLT 00004f5a: ISZERO 00004f5b: PUSH2 0x4f63 00004f5e: JUMPI 00004f5f: PUSH1 0x00 00004f61: DUP1 00004f62: REVERT 00004f63: JUMPDEST 00004f64: DUP6 00004f65: CALLDATALOAD 00004f66: PUSH2 0x4f6e 00004f69: DUP2 00004f6a: PUSH2 0x4a45 00004f6d: JUMP 00004f6e: JUMPDEST 00004f6f: SWAP5 00004f70: POP 00004f71: PUSH1 0x20 00004f73: DUP7 00004f74: ADD 00004f75: CALLDATALOAD 00004f76: SWAP4 00004f77: POP 00004f78: PUSH2 0x4f83 00004f7b: PUSH1 0x40 00004f7d: DUP8 00004f7e: ADD 00004f7f: PUSH2 0x4a6a 00004f82: JUMP 00004f83: JUMPDEST 00004f84: SWAP3 00004f85: POP 00004f86: PUSH1 0x60 00004f88: DUP7 00004f89: ADD 00004f8a: CALLDATALOAD 00004f8b: PUSH2 0x4f93 00004f8e: DUP2 00004f8f: PUSH2 0x4a87 00004f92: JUMP 00004f93: JUMPDEST 00004f94: SWAP2 00004f95: POP 00004f96: PUSH1 0x80 00004f98: DUP7 00004f99: ADD 00004f9a: CALLDATALOAD 00004f9b: PUSH8 0xffffffffffffffff 00004fa4: DUP2 00004fa5: GT 00004fa6: ISZERO 00004fa7: PUSH2 0x4faf 00004faa: JUMPI 00004fab: PUSH1 0x00 00004fad: DUP1 00004fae: REVERT 00004faf: JUMPDEST 00004fb0: PUSH2 0x4fbb 00004fb3: DUP9 00004fb4: DUP3 00004fb5: DUP10 00004fb6: ADD 00004fb7: PUSH2 0x4b13 00004fba: JUMP 00004fbb: JUMPDEST 00004fbc: SWAP2 00004fbd: POP 00004fbe: POP 00004fbf: SWAP3 00004fc0: SWAP6 00004fc1: POP 00004fc2: SWAP3 00004fc3: SWAP6 00004fc4: SWAP1 00004fc5: SWAP4 00004fc6: POP 00004fc7: JUMP 00004fc8: JUMPDEST 00004fc9: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00004fea: PUSH1 0x00 00004fec: MSTORE 00004fed: PUSH1 0x11 00004fef: PUSH1 0x04 00004ff1: MSTORE 00004ff2: PUSH1 0x24 00004ff4: PUSH1 0x00 00004ff6: REVERT 00004ff7: JUMPDEST 00004ff8: PUSH1 0x00 00004ffa: DUP3 00004ffb: NOT 00004ffc: DUP3 00004ffd: GT 00004ffe: ISZERO 00004fff: PUSH2 0x500a 00005002: JUMPI 00005003: PUSH2 0x500a 00005006: PUSH2 0x4fc8 00005009: JUMP 0000500a: JUMPDEST 0000500b: POP 0000500c: ADD 0000500d: SWAP1 0000500e: JUMP 0000500f: JUMPDEST 00005010: PUSH1 0x00 00005012: PUSH1 0x20 00005014: DUP3 00005015: DUP5 00005016: SUB 00005017: SLT 00005018: ISZERO 00005019: PUSH2 0x5021 0000501c: JUMPI 0000501d: PUSH1 0x00 0000501f: DUP1 00005020: REVERT 00005021: JUMPDEST 00005022: POP 00005023: MLOAD 00005024: SWAP2 00005025: SWAP1 00005026: POP 00005027: JUMP 00005028: JUMPDEST 00005029: PUSH1 0x00 0000502b: PUSH1 0x20 0000502d: DUP3 0000502e: DUP5 0000502f: SUB 00005030: SLT 00005031: ISZERO 00005032: PUSH2 0x503a 00005035: JUMPI 00005036: PUSH1 0x00 00005038: DUP1 00005039: REVERT 0000503a: JUMPDEST 0000503b: DUP2 0000503c: MLOAD 0000503d: PUSH2 0x2972 00005040: DUP2 00005041: PUSH2 0x4a45 00005044: JUMP 00005045: JUMPDEST 00005046: DUP1 00005047: MLOAD 00005048: PUSH16 0xffffffffffffffffffffffffffffffff 00005059: DUP2 0000505a: AND 0000505b: DUP2 0000505c: EQ 0000505d: PUSH2 0x4a82 00005060: JUMPI 00005061: PUSH1 0x00 00005063: DUP1 00005064: REVERT 00005065: JUMPDEST 00005066: PUSH1 0x00 00005068: PUSH1 0x60 0000506a: DUP3 0000506b: DUP5 0000506c: SUB 0000506d: SLT 0000506e: ISZERO 0000506f: PUSH2 0x5077 00005072: JUMPI 00005073: PUSH1 0x00 00005075: DUP1 00005076: REVERT 00005077: JUMPDEST 00005078: PUSH1 0x40 0000507a: MLOAD 0000507b: PUSH1 0x60 0000507d: DUP2 0000507e: ADD 0000507f: DUP2 00005080: DUP2 00005081: LT 00005082: PUSH8 0xffffffffffffffff 0000508b: DUP3 0000508c: GT 0000508d: OR 0000508e: ISZERO 0000508f: PUSH2 0x509a 00005092: JUMPI 00005093: PUSH2 0x509a 00005096: PUSH2 0x4a95 00005099: JUMP 0000509a: JUMPDEST 0000509b: PUSH1 0x40 0000509d: MSTORE 0000509e: DUP3 0000509f: MLOAD 000050a0: DUP2 000050a1: MSTORE 000050a2: PUSH2 0x50ad 000050a5: PUSH1 0x20 000050a7: DUP5 000050a8: ADD 000050a9: PUSH2 0x5045 000050ac: JUMP 000050ad: JUMPDEST 000050ae: PUSH1 0x20 000050b0: DUP3 000050b1: ADD 000050b2: MSTORE 000050b3: PUSH2 0x50be 000050b6: PUSH1 0x40 000050b8: DUP5 000050b9: ADD 000050ba: PUSH2 0x5045 000050bd: JUMP 000050be: JUMPDEST 000050bf: PUSH1 0x40 000050c1: DUP3 000050c2: ADD 000050c3: MSTORE 000050c4: SWAP4 000050c5: SWAP3 000050c6: POP 000050c7: POP 000050c8: POP 000050c9: JUMP 000050ca: JUMPDEST 000050cb: PUSH1 0x00 000050cd: PUSH1 0x80 000050cf: DUP3 000050d0: DUP5 000050d1: SUB 000050d2: SLT 000050d3: ISZERO 000050d4: PUSH2 0x50dc 000050d7: JUMPI 000050d8: PUSH1 0x00 000050da: DUP1 000050db: REVERT 000050dc: JUMPDEST 000050dd: PUSH1 0x40 000050df: MLOAD 000050e0: PUSH1 0x80 000050e2: DUP2 000050e3: ADD 000050e4: DUP2 000050e5: DUP2 000050e6: LT 000050e7: PUSH8 0xffffffffffffffff 000050f0: DUP3 000050f1: GT 000050f2: OR 000050f3: ISZERO 000050f4: PUSH2 0x50ff 000050f7: JUMPI 000050f8: PUSH2 0x50ff 000050fb: PUSH2 0x4a95 000050fe: JUMP 000050ff: JUMPDEST 00005100: DUP1 00005101: PUSH1 0x40 00005103: MSTORE 00005104: POP 00005105: DUP3 00005106: CALLDATALOAD 00005107: DUP2 00005108: MSTORE 00005109: PUSH1 0x20 0000510b: DUP4 0000510c: ADD 0000510d: CALLDATALOAD 0000510e: PUSH1 0x20 00005110: DUP3 00005111: ADD 00005112: MSTORE 00005113: PUSH1 0x40 00005115: DUP4 00005116: ADD 00005117: CALLDATALOAD 00005118: PUSH1 0x40 0000511a: DUP3 0000511b: ADD 0000511c: MSTORE 0000511d: PUSH1 0x60 0000511f: DUP4 00005120: ADD 00005121: CALLDATALOAD 00005122: PUSH1 0x60 00005124: DUP3 00005125: ADD 00005126: MSTORE 00005127: DUP1 00005128: SWAP2 00005129: POP 0000512a: POP 0000512b: SWAP3 0000512c: SWAP2 0000512d: POP 0000512e: POP 0000512f: JUMP 00005130: JUMPDEST 00005131: PUSH1 0x00 00005133: PUSH8 0xffffffffffffffff 0000513c: DUP1 0000513d: DUP5 0000513e: GT 0000513f: ISZERO 00005140: PUSH2 0x514b 00005143: JUMPI 00005144: PUSH2 0x514b 00005147: PUSH2 0x4a95 0000514a: JUMP 0000514b: JUMPDEST 0000514c: DUP4 0000514d: PUSH1 0x05 0000514f: SHL 00005150: PUSH1 0x20 00005152: PUSH2 0x515c 00005155: DUP2 00005156: DUP4 00005157: ADD 00005158: PUSH2 0x4ac4 0000515b: JUMP 0000515c: JUMPDEST 0000515d: DUP7 0000515e: DUP2 0000515f: MSTORE 00005160: SWAP2 00005161: DUP6 00005162: ADD 00005163: SWAP2 00005164: DUP2 00005165: DUP2 00005166: ADD 00005167: SWAP1 00005168: CALLDATASIZE 00005169: DUP5 0000516a: GT 0000516b: ISZERO 0000516c: PUSH2 0x5174 0000516f: JUMPI 00005170: PUSH1 0x00 00005172: DUP1 00005173: REVERT 00005174: JUMPDEST 00005175: DUP7 00005176: JUMPDEST 00005177: DUP5 00005178: DUP2 00005179: LT 0000517a: ISZERO 0000517b: PUSH2 0x51a8 0000517e: JUMPI 0000517f: DUP1 00005180: CALLDATALOAD 00005181: DUP7 00005182: DUP2 00005183: GT 00005184: ISZERO 00005185: PUSH2 0x518e 00005188: JUMPI 00005189: PUSH1 0x00 0000518b: DUP1 0000518c: DUP2 0000518d: REVERT 0000518e: JUMPDEST 0000518f: PUSH2 0x519a 00005192: CALLDATASIZE 00005193: DUP3 00005194: DUP12 00005195: ADD 00005196: PUSH2 0x4b13 00005199: JUMP 0000519a: JUMPDEST 0000519b: DUP5 0000519c: MSTORE 0000519d: POP 0000519e: SWAP2 0000519f: DUP4 000051a0: ADD 000051a1: SWAP2 000051a2: DUP4 000051a3: ADD 000051a4: PUSH2 0x5176 000051a7: JUMP 000051a8: JUMPDEST 000051a9: POP 000051aa: SWAP8 000051ab: SWAP7 000051ac: POP 000051ad: POP 000051ae: POP 000051af: POP 000051b0: POP 000051b1: POP 000051b2: POP 000051b3: JUMP 000051b4: JUMPDEST 000051b5: PUSH1 0x00 000051b7: PUSH1 0x20 000051b9: DUP3 000051ba: DUP5 000051bb: SUB 000051bc: SLT 000051bd: ISZERO 000051be: PUSH2 0x51c6 000051c1: JUMPI 000051c2: PUSH1 0x00 000051c4: DUP1 000051c5: REVERT 000051c6: JUMPDEST 000051c7: DUP2 000051c8: MLOAD 000051c9: PUSH2 0x2972 000051cc: DUP2 000051cd: PUSH2 0x4a87 000051d0: JUMP 000051d1: JUMPDEST 000051d2: DUP6 000051d3: DUP2 000051d4: MSTORE 000051d5: DUP5 000051d6: PUSH1 0x20 000051d8: DUP3 000051d9: ADD 000051da: MSTORE 000051db: PUSH32 0xffffffffffffffff000000000000000000000000000000000000000000000000 000051fc: DUP5 000051fd: PUSH1 0xc0 000051ff: SHL 00005200: AND 00005201: PUSH1 0x40 00005203: DUP3 00005204: ADD 00005205: MSTORE 00005206: DUP3 00005207: ISZERO 00005208: ISZERO 00005209: PUSH1 0xf8 0000520b: SHL 0000520c: PUSH1 0x48 0000520e: DUP3 0000520f: ADD 00005210: MSTORE 00005211: PUSH1 0x00 00005213: DUP3 00005214: MLOAD 00005215: PUSH2 0x5225 00005218: DUP2 00005219: PUSH1 0x49 0000521b: DUP6 0000521c: ADD 0000521d: PUSH1 0x20 0000521f: DUP8 00005220: ADD 00005221: PUSH2 0x4db1 00005224: JUMP 00005225: JUMPDEST 00005226: SWAP2 00005227: SWAP1 00005228: SWAP2 00005229: ADD 0000522a: PUSH1 0x49 0000522c: ADD 0000522d: SWAP7 0000522e: SWAP6 0000522f: POP 00005230: POP 00005231: POP 00005232: POP 00005233: POP 00005234: POP 00005235: JUMP 00005236: JUMPDEST 00005237: PUSH1 0x00 00005239: DUP3 0000523a: DUP3 0000523b: LT 0000523c: ISZERO 0000523d: PUSH2 0x5248 00005240: JUMPI 00005241: PUSH2 0x5248 00005244: PUSH2 0x4fc8 00005247: JUMP 00005248: JUMPDEST 00005249: POP 0000524a: SUB 0000524b: SWAP1 0000524c: JUMP 0000524d: JUMPDEST 0000524e: PUSH1 0x00 00005250: PUSH8 0xffffffffffffffff 00005259: DUP1 0000525a: DUP4 0000525b: AND 0000525c: DUP2 0000525d: DUP6 0000525e: AND 0000525f: DUP2 00005260: DUP4 00005261: DIV 00005262: DUP2 00005263: GT 00005264: DUP3 00005265: ISZERO 00005266: ISZERO 00005267: AND 00005268: ISZERO 00005269: PUSH2 0x5274 0000526c: JUMPI 0000526d: PUSH2 0x5274 00005270: PUSH2 0x4fc8 00005273: JUMP 00005274: JUMPDEST 00005275: MUL 00005276: SWAP5 00005277: SWAP4 00005278: POP 00005279: POP 0000527a: POP 0000527b: POP 0000527c: JUMP 0000527d: JUMPDEST 0000527e: PUSH1 0x00 00005280: PUSH8 0xffffffffffffffff 00005289: DUP1 0000528a: DUP4 0000528b: AND 0000528c: DUP2 0000528d: DUP6 0000528e: AND 0000528f: DUP1 00005290: DUP4 00005291: SUB 00005292: DUP3 00005293: GT 00005294: ISZERO 00005295: PUSH2 0x52a0 00005298: JUMPI 00005299: PUSH2 0x52a0 0000529c: PUSH2 0x4fc8 0000529f: JUMP 000052a0: JUMPDEST 000052a1: ADD 000052a2: SWAP5 000052a3: SWAP4 000052a4: POP 000052a5: POP 000052a6: POP 000052a7: POP 000052a8: JUMP 000052a9: JUMPDEST 000052aa: PUSH1 0x00 000052ac: DUP1 000052ad: PUSH1 0x40 000052af: DUP4 000052b0: DUP6 000052b1: SUB 000052b2: SLT 000052b3: ISZERO 000052b4: PUSH2 0x52bc 000052b7: JUMPI 000052b8: PUSH1 0x00 000052ba: DUP1 000052bb: REVERT 000052bc: JUMPDEST 000052bd: DUP3 000052be: MLOAD 000052bf: PUSH2 0x52c7 000052c2: DUP2 000052c3: PUSH2 0x4a45 000052c6: JUMP 000052c7: JUMPDEST 000052c8: PUSH1 0x20 000052ca: DUP5 000052cb: ADD 000052cc: MLOAD 000052cd: SWAP1 000052ce: SWAP3 000052cf: POP 000052d0: PUSH2 0x52d8 000052d3: DUP2 000052d4: PUSH2 0x4e53 000052d7: JUMP 000052d8: JUMPDEST 000052d9: DUP1 000052da: SWAP2 000052db: POP 000052dc: POP 000052dd: SWAP3 000052de: POP 000052df: SWAP3 000052e0: SWAP1 000052e1: POP 000052e2: JUMP 000052e3: JUMPDEST 000052e4: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00005305: PUSH1 0x00 00005307: MSTORE 00005308: PUSH1 0x12 0000530a: PUSH1 0x04 0000530c: MSTORE 0000530d: PUSH1 0x24 0000530f: PUSH1 0x00 00005311: REVERT 00005312: JUMPDEST 00005313: PUSH1 0x00 00005315: DUP3 00005316: PUSH2 0x5321 00005319: JUMPI 0000531a: PUSH2 0x5321 0000531d: PUSH2 0x52e3 00005320: JUMP 00005321: JUMPDEST 00005322: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00005343: DUP4 00005344: EQ 00005345: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 00005366: DUP4 00005367: EQ 00005368: AND 00005369: ISZERO 0000536a: PUSH2 0x5375 0000536d: JUMPI 0000536e: PUSH2 0x5375 00005371: PUSH2 0x4fc8 00005374: JUMP 00005375: JUMPDEST 00005376: POP 00005377: SDIV 00005378: SWAP1 00005379: JUMP 0000537a: JUMPDEST 0000537b: PUSH1 0x00 0000537d: DUP1 0000537e: DUP4 0000537f: SLT 00005380: DUP4 00005381: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 000053a2: ADD 000053a3: DUP4 000053a4: SLT 000053a5: DUP2 000053a6: ISZERO 000053a7: AND 000053a8: ISZERO 000053a9: PUSH2 0x53b4 000053ac: JUMPI 000053ad: PUSH2 0x53b4 000053b0: PUSH2 0x4fc8 000053b3: JUMP 000053b4: JUMPDEST 000053b5: DUP4 000053b6: PUSH32 0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 000053d7: ADD 000053d8: DUP4 000053d9: SGT 000053da: DUP2 000053db: AND 000053dc: ISZERO 000053dd: PUSH2 0x53e8 000053e0: JUMPI 000053e1: PUSH2 0x53e8 000053e4: PUSH2 0x4fc8 000053e7: JUMP 000053e8: JUMPDEST 000053e9: POP 000053ea: POP 000053eb: SUB 000053ec: SWAP1 000053ed: JUMP 000053ee: JUMPDEST 000053ef: PUSH1 0x00 000053f1: PUSH32 0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00005412: PUSH1 0x00 00005414: DUP5 00005415: SGT 00005416: PUSH1 0x00 00005418: DUP5 00005419: SGT 0000541a: DUP6 0000541b: DUP4 0000541c: DIV 0000541d: DUP6 0000541e: GT 0000541f: DUP3 00005420: DUP3 00005421: AND 00005422: AND 00005423: ISZERO 00005424: PUSH2 0x542f 00005427: JUMPI 00005428: PUSH2 0x542f 0000542b: PUSH2 0x4fc8 0000542e: JUMP 0000542f: JUMPDEST 00005430: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 00005451: PUSH1 0x00 00005453: DUP8 00005454: SLT 00005455: DUP7 00005456: DUP3 00005457: SDIV 00005458: DUP9 00005459: SLT 0000545a: DUP2 0000545b: DUP5 0000545c: AND 0000545d: AND 0000545e: ISZERO 0000545f: PUSH2 0x546a 00005462: JUMPI 00005463: PUSH2 0x546a 00005466: PUSH2 0x4fc8 00005469: JUMP 0000546a: JUMPDEST 0000546b: PUSH1 0x00 0000546d: DUP8 0000546e: SLT 0000546f: SWAP3 00005470: POP 00005471: DUP8 00005472: DUP3 00005473: SDIV 00005474: DUP8 00005475: SLT 00005476: DUP5 00005477: DUP5 00005478: AND 00005479: AND 0000547a: ISZERO 0000547b: PUSH2 0x5486 0000547e: JUMPI 0000547f: PUSH2 0x5486 00005482: PUSH2 0x4fc8 00005485: JUMP 00005486: JUMPDEST 00005487: DUP8 00005488: DUP6 00005489: SDIV 0000548a: DUP8 0000548b: SLT 0000548c: DUP2 0000548d: DUP5 0000548e: AND 0000548f: AND 00005490: ISZERO 00005491: PUSH2 0x549c 00005494: JUMPI 00005495: PUSH2 0x549c 00005498: PUSH2 0x4fc8 0000549b: JUMP 0000549c: JUMPDEST 0000549d: POP 0000549e: POP 0000549f: POP 000054a0: SWAP3 000054a1: SWAP1 000054a2: SWAP4 000054a3: MUL 000054a4: SWAP4 000054a5: SWAP3 000054a6: POP 000054a7: POP 000054a8: POP 000054a9: JUMP 000054aa: JUMPDEST 000054ab: PUSH1 0x00 000054ad: DUP1 000054ae: DUP3 000054af: SLT 000054b0: DUP3 000054b1: PUSH32 0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 000054d2: SUB 000054d3: DUP5 000054d4: SGT 000054d5: DUP2 000054d6: ISZERO 000054d7: AND 000054d8: ISZERO 000054d9: PUSH2 0x54e4 000054dc: JUMPI 000054dd: PUSH2 0x54e4 000054e0: PUSH2 0x4fc8 000054e3: JUMP 000054e4: JUMPDEST 000054e5: DUP3 000054e6: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 00005507: SUB 00005508: DUP5 00005509: SLT 0000550a: DUP2 0000550b: AND 0000550c: ISZERO 0000550d: PUSH2 0x5518 00005510: JUMPI 00005511: PUSH2 0x5518 00005514: PUSH2 0x4fc8 00005517: JUMP 00005518: JUMPDEST 00005519: POP 0000551a: POP 0000551b: ADD 0000551c: SWAP1 0000551d: JUMP 0000551e: JUMPDEST 0000551f: PUSH1 0x00 00005521: DUP2 00005522: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00005543: DIV 00005544: DUP4 00005545: GT 00005546: DUP3 00005547: ISZERO 00005548: ISZERO 00005549: AND 0000554a: ISZERO 0000554b: PUSH2 0x5556 0000554e: JUMPI 0000554f: PUSH2 0x5556 00005552: PUSH2 0x4fc8 00005555: JUMP 00005556: JUMPDEST 00005557: POP 00005558: MUL 00005559: SWAP1 0000555a: JUMP 0000555b: JUMPDEST 0000555c: PUSH1 0x00 0000555e: DUP3 0000555f: PUSH2 0x556a 00005562: JUMPI 00005563: PUSH2 0x556a 00005566: PUSH2 0x52e3 00005569: JUMP 0000556a: JUMPDEST 0000556b: POP 0000556c: DIV 0000556d: SWAP1 0000556e: JUMP 0000556f: JUMPDEST 00005570: DUP7 00005571: DUP2 00005572: MSTORE 00005573: PUSH1 0x00 00005575: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000558a: DUP1 0000558b: DUP9 0000558c: AND 0000558d: PUSH1 0x20 0000558f: DUP5 00005590: ADD 00005591: MSTORE 00005592: DUP1 00005593: DUP8 00005594: AND 00005595: PUSH1 0x40 00005597: DUP5 00005598: ADD 00005599: MSTORE 0000559a: POP 0000559b: DUP5 0000559c: PUSH1 0x60 0000559e: DUP4 0000559f: ADD 000055a0: MSTORE 000055a1: DUP4 000055a2: PUSH1 0x80 000055a4: DUP4 000055a5: ADD 000055a6: MSTORE 000055a7: PUSH1 0xc0 000055a9: PUSH1 0xa0 000055ab: DUP4 000055ac: ADD 000055ad: MSTORE 000055ae: PUSH2 0x55ba 000055b1: PUSH1 0xc0 000055b3: DUP4 000055b4: ADD 000055b5: DUP5 000055b6: PUSH2 0x4ddd 000055b9: JUMP 000055ba: JUMPDEST 000055bb: SWAP9 000055bc: SWAP8 000055bd: POP 000055be: POP 000055bf: POP 000055c0: POP 000055c1: POP 000055c2: POP 000055c3: POP 000055c4: POP 000055c5: JUMP 000055c6: JUMPDEST 000055c7: DUP1 000055c8: MLOAD 000055c9: PUSH4 0xffffffff 000055ce: DUP2 000055cf: AND 000055d0: DUP2 000055d1: EQ 000055d2: PUSH2 0x4a82 000055d5: JUMPI 000055d6: PUSH1 0x00 000055d8: DUP1 000055d9: REVERT 000055da: JUMPDEST 000055db: PUSH1 0x00 000055dd: PUSH1 0xc0 000055df: DUP3 000055e0: DUP5 000055e1: SUB 000055e2: SLT 000055e3: ISZERO 000055e4: PUSH2 0x55ec 000055e7: JUMPI 000055e8: PUSH1 0x00 000055ea: DUP1 000055eb: REVERT 000055ec: JUMPDEST 000055ed: PUSH1 0x40 000055ef: MLOAD 000055f0: PUSH1 0xc0 000055f2: DUP2 000055f3: ADD 000055f4: DUP2 000055f5: DUP2 000055f6: LT 000055f7: PUSH8 0xffffffffffffffff 00005600: DUP3 00005601: GT 00005602: OR 00005603: ISZERO 00005604: PUSH2 0x560f 00005607: JUMPI 00005608: PUSH2 0x560f 0000560b: PUSH2 0x4a95 0000560e: JUMP 0000560f: JUMPDEST 00005610: PUSH1 0x40 00005612: MSTORE 00005613: PUSH2 0x561b 00005616: DUP4 00005617: PUSH2 0x55c6 0000561a: JUMP 0000561b: JUMPDEST 0000561c: DUP2 0000561d: MSTORE 0000561e: PUSH1 0x20 00005620: DUP4 00005621: ADD 00005622: MLOAD 00005623: PUSH2 0x562b 00005626: DUP2 00005627: PUSH2 0x4e53 0000562a: JUMP 0000562b: JUMPDEST 0000562c: PUSH1 0x20 0000562e: DUP3 0000562f: ADD 00005630: MSTORE 00005631: PUSH1 0x40 00005633: DUP4 00005634: ADD 00005635: MLOAD 00005636: PUSH2 0x563e 00005639: DUP2 0000563a: PUSH2 0x4e53 0000563d: JUMP 0000563e: JUMPDEST 0000563f: PUSH1 0x40 00005641: DUP3 00005642: ADD 00005643: MSTORE 00005644: PUSH2 0x564f 00005647: PUSH1 0x60 00005649: DUP5 0000564a: ADD 0000564b: PUSH2 0x55c6 0000564e: JUMP 0000564f: JUMPDEST 00005650: PUSH1 0x60 00005652: DUP3 00005653: ADD 00005654: MSTORE 00005655: PUSH2 0x5660 00005658: PUSH1 0x80 0000565a: DUP5 0000565b: ADD 0000565c: PUSH2 0x55c6 0000565f: JUMP 00005660: JUMPDEST 00005661: PUSH1 0x80 00005663: DUP3 00005664: ADD 00005665: MSTORE 00005666: PUSH2 0x5671 00005669: PUSH1 0xa0 0000566b: DUP5 0000566c: ADD 0000566d: PUSH2 0x5045 00005670: JUMP 00005671: JUMPDEST 00005672: PUSH1 0xa0 00005674: DUP3 00005675: ADD 00005676: MSTORE 00005677: SWAP4 00005678: SWAP3 00005679: POP 0000567a: POP 0000567b: POP 0000567c: JUMP 0000567d: JUMPDEST 0000567e: PUSH1 0x00 00005680: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 000056a1: DUP3 000056a2: SUB 000056a3: PUSH2 0x56ae 000056a6: JUMPI 000056a7: PUSH2 0x56ae 000056aa: PUSH2 0x4fc8 000056ad: JUMP 000056ae: JUMPDEST 000056af: POP 000056b0: PUSH1 0x01 000056b2: ADD 000056b3: SWAP1 000056b4: JUMP 000056b5: JUMPDEST 000056b6: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 000056d7: PUSH1 0x00 000056d9: MSTORE 000056da: PUSH1 0x32 000056dc: PUSH1 0x04 000056de: MSTORE 000056df: PUSH1 0x24 000056e1: PUSH1 0x00 000056e3: REVERT 000056e4: JUMPDEST 000056e5: PUSH1 0x00 000056e7: PUSH1 0xff 000056e9: DUP4 000056ea: AND 000056eb: DUP1 000056ec: PUSH2 0x56f7 000056ef: JUMPI 000056f0: PUSH2 0x56f7 000056f3: PUSH2 0x52e3 000056f6: JUMP 000056f7: JUMPDEST 000056f8: DUP1 000056f9: PUSH1 0xff 000056fb: DUP5 000056fc: AND 000056fd: MOD 000056fe: SWAP2 000056ff: POP 00005700: POP 00005701: SWAP3 00005702: SWAP2 00005703: POP 00005704: POP 00005705: JUMP 00005706: JUMPDEST 00005707: PUSH1 0x00 00005709: PUSH1 0xff 0000570b: DUP3 0000570c: AND 0000570d: PUSH1 0xff 0000570f: DUP5 00005710: AND 00005711: DUP1 00005712: DUP3 00005713: LT 00005714: ISZERO 00005715: PUSH2 0x5720 00005718: JUMPI 00005719: PUSH2 0x5720 0000571c: PUSH2 0x4fc8 0000571f: JUMP 00005720: JUMPDEST 00005721: SWAP1 00005722: SUB 00005723: SWAP4 00005724: SWAP3 00005725: POP 00005726: POP 00005727: POP 00005728: JUMP 00005729: JUMPDEST 0000572a: PUSH1 0x00 0000572c: DUP3 0000572d: MLOAD 0000572e: PUSH2 0x573b 00005731: DUP2 00005732: DUP5 00005733: PUSH1 0x20 00005735: DUP8 00005736: ADD 00005737: PUSH2 0x4db1 0000573a: JUMP 0000573b: JUMPDEST 0000573c: SWAP2 0000573d: SWAP1 0000573e: SWAP2 0000573f: ADD 00005740: SWAP3 00005741: SWAP2 00005742: POP 00005743: POP 00005744: JUMP 00005745: JUMPDEST 00005746: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00005767: PUSH1 0x00 00005769: MSTORE 0000576a: PUSH1 0x21 0000576c: PUSH1 0x04 0000576e: MSTORE 0000576f: PUSH1 0x24 00005771: PUSH1 0x00 00005773: REVERT 00005774: INVALID 00005775: LOG1 00005776: PUSH5 0x736f6c6343 0000577c: STOP 0000577d: ADDMOD 0000577e: UNKNOWN(0x0F) 0000577f: STOP 00005780: EXP
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | auth | detector | Authorization based on tx.origin | 70 | no | — |
viewvalidation_json{
"reason": "missing sink mapping",
"status": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xcff0ab96",
"selector": "0xcff0ab96",
"calldata_variants": [
"0xcff0ab96",
"0xcff0ab960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe965084c",
"selector": "0xe965084c",
"calldata_variants": [
"0xe965084c",
"0xe965084c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe9e05c42",
"selector": "0xe9e05c42",
"calldata_variants": [
"0xe9e05c42",
"0xe9e05c420000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb69ef8a8",
"selector": "0xb69ef8a8",
"calldata_variants": [
"0xb69ef8a8",
"0xb69ef8a80000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc0c53b8b",
"selector": "0xc0c53b8b",
"calldata_variants": [
"0xc0c53b8b",
"0xc0c53b8b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9bf62d82",
"selector": "0x9bf62d82",
"calldata_variants": [
"0x9bf62d82",
"0x9bf62d820000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa14238e7",
"selector": "0xa14238e7",
"calldata_variants": [
"0xa14238e7",
"0xa14238e70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa35d99df",
"selector": "0xa35d99df",
"calldata_variants": [
"0xa35d99df",
"0xa35d99df0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 7174,
"type": "tx_origin_used"
},
{
"pc": 8370,
"type": "tx_origin_used"
},
{
"pc": 7171,
"type": "tx_origin_used"
},
{
"pc": 8368,
"type": "tx_origin_used"
}
]
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0xd80ac3a69040b35f17c373161c7cfe321b1ce93a4624068e5dc640f526d13cb2
call_targets:
0xf666ce8bf4d1b1be67ece022132b36ee2e89c031
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xd80ac3a69040b35f17c373161c7cfe321b1ce93a4624068e5dc640f526d13cb2",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xf666ce8bf4d1b1be67ece022132b36ee2e89c031"
],
"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": "0xcff0ab96",
"selector": "0xcff0ab96",
"calldata_variants": [
"0xcff0ab96",
"0xcff0ab960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe965084c",
"selector": "0xe965084c",
"calldata_variants": [
"0xe965084c",
"0xe965084c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe9e05c42",
"selector": "0xe9e05c42",
"calldata_variants": [
"0xe9e05c42",
"0xe9e05c420000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb69ef8a8",
"selector": "0xb69ef8a8",
"calldata_variants": [
"0xb69ef8a8",
"0xb69ef8a80000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc0c53b8b",
"selector": "0xc0c53b8b",
"calldata_variants": [
"0xc0c53b8b",
"0xc0c53b8b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9bf62d82",
"selector": "0x9bf62d82",
"calldata_variants": [
"0x9bf62d82",
"0x9bf62d820000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa14238e7",
"selector": "0xa14238e7",
"calldata_variants": [
"0xa14238e7",
"0xa14238e70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa35d99df",
"selector": "0xa35d99df",
"calldata_variants": [
"0xa35d99df",
"0xa35d99df0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 10016,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 15424,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 2,
"guards_detected": [
{
"pc": 7174,
"type": "tx_origin_used"
},
{
"pc": 8370,
"type": "tx_origin_used"
},
{
"pc": 7171,
"type": "tx_origin_used"
},
{
"pc": 8368,
"type": "tx_origin_used"
}
],
"untrusted_call_count": 2
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0xd80ac3a69040b35f17c373161c7cfe321b1ce93a4624068e5dc640f526d13cb2
call_targets:
0xf666ce8bf4d1b1be67ece022132b36ee2e89c031
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xd80ac3a69040b35f17c373161c7cfe321b1ce93a4624068e5dc640f526d13cb2",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xf666ce8bf4d1b1be67ece022132b36ee2e89c031"
],
"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": "0xcff0ab96",
"selector": "0xcff0ab96",
"calldata_variants": [
"0xcff0ab96",
"0xcff0ab960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe965084c",
"selector": "0xe965084c",
"calldata_variants": [
"0xe965084c",
"0xe965084c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe9e05c42",
"selector": "0xe9e05c42",
"calldata_variants": [
"0xe9e05c42",
"0xe9e05c420000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb69ef8a8",
"selector": "0xb69ef8a8",
"calldata_variants": [
"0xb69ef8a8",
"0xb69ef8a80000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc0c53b8b",
"selector": "0xc0c53b8b",
"calldata_variants": [
"0xc0c53b8b",
"0xc0c53b8b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9bf62d82",
"selector": "0x9bf62d82",
"calldata_variants": [
"0x9bf62d82",
"0x9bf62d820000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa14238e7",
"selector": "0xa14238e7",
"calldata_variants": [
"0xa14238e7",
"0xa14238e70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa35d99df",
"selector": "0xa35d99df",
"calldata_variants": [
"0xa35d99df",
"0xa35d99df0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 10016,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 15424,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 2,
"guards_detected": [
{
"pc": 7174,
"type": "tx_origin_used"
},
{
"pc": 8370,
"type": "tx_origin_used"
},
{
"pc": 7171,
"type": "tx_origin_used"
},
{
"pc": 8368,
"type": "tx_origin_used"
}
]
}
|
| info | other | cast | Heavy CALL-family usage | 55 | no | — |
viewevidence_json{
"notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
"call_family_count": 16
}
|