0d0fc7a4-d67b-4f4e-8190-a16931d28357
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 |
|---|---|---|---|---|
| 31064 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 76198 | artifact.fetch | failed | 1 / 3 | 1 week ago |
| 76199 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 76200 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 76201 | capability.graph | complete | 1 / 3 | 1 week ago |
| 76202 | detector.run | complete | 1 / 3 | 1 week ago |
| 76203 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:1075184] OpenAI Codex v0.77.0 (research preview)
[codex:1075184] --------
[codex:1075184] workdir: /tmp/codex-multi-rsz4jf08
[codex:1075184] model: gpt-5.2-codex
[codex:1075184] provider: openai
[codex:1075184] approval: never
[codex:1075184] sandbox: read-only
[codex:1075184] reasoning effort: xhigh
[codex:1075184] reasoning summaries: auto
[codex:1075184] session id: 019b7a30-e0a7-7ca2-93ce-caf4653f0f00
[codex:1075184] --------
[codex:1075184] user
[codex:1075184] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:1075184]
[codex:1075184] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:1075184]
[codex:1075184] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:1075184] - Gas inefficiency, code quality, naming, or best practices
[codex:1075184] - Theoretical vulnerabilities without a clear extraction path
[codex:1075184] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:1075184] - Front-running unless it enables theft beyond MEV
[codex:1075184] - DoS, griefing, or issues that don't result in attacker profit
[codex:1075184] - Missing events, view function issues, or informational findings
[codex:1075184]
[codex:1075184] HIGH-VALUE PATTERNS TO HUNT:
[codex:1075184] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:1075184] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:1075184] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:1075184] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:1075184] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:1075184] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:1075184] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:1075184] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:1075184] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:1075184]
[codex:1075184] For each finding, you MUST provide:
[codex:1075184] 1. Exact file and line numbers of vulnerable code
[codex:1075184] 2. Step-by-step exploit transaction sequence
[codex:1075184] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:1075184]
[codex:1075184] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:1075184]
[codex:1075184] Output MUST be valid JSON matching the provided schema.
[codex:1075184] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:1075184] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:1075184] mcp startup: no servers
[codex:1075184]
[codex:1075184] thinking
[codex:1075184] **Preparing to read instructions and files**
[codex:1075184] exec
[codex:1075184] /bin/bash -lc ls in /tmp/codex-multi-rsz4jf08 succeeded in 5ms:
[codex:1075184] AUDIT_BUNDLE.txt
[codex:1075184] codex-output-schema.json
[codex:1075184] contracts
[codex:1075184] exec
[codex:1075184] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-rsz4jf08 succeeded in 6ms:
[codex:1075184] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:1075184]
[codex:1075184] ================================================================================
[codex:1075184] FILE: contracts/contracts/L1/L2OutputOracle.sol
[codex:1075184] ================================================================================
[codex:1075184] // SPDX-License-Identifier: MIT
[codex:1075184] pragma solidity 0.8.15;
[codex:1075184]
[codex:1075184] import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
[codex:1075184] import { Semver } from "../universal/Semver.sol";
[codex:1075184] import { Types } from "../libraries/Types.sol";
[codex:1075184]
[codex:1075184] /**
[codex:1075184] * @custom:proxied
[codex:1075184] * @title L2OutputOracle
[codex:1075184] * @notice The L2OutputOracle contains an array of L2 state outputs, where each output is a
[codex:1075184] * commitment to the state of the L2 chain. Other contracts like the OptimismPortal use
[codex:1075184] * these outputs to verify information about the state of L2.
[codex:1075184] */
[codex:1075184] contract L2OutputOracle is Initializable, Semver {
[codex:1075184]
[codex:1075184] thinking
[codex:1075184] **Planning full audit read**
[codex:1075184]
[codex:1075184] I need to fully read the AUDIT_BUNDLE.txt despite truncation in tool output, possibly by reading the actual source files individually in the contracts directory to ensure no profit-exploiting vulnerabilities exist. I'll consider using tools like ripgrep or sed to read the files in manageable chunks and focus on critical areas like withdrawal functions and reentrancy risks.
[codex:1075184] exec
[codex:1075184] /bin/bash -lc 'rg --files' in /tmp/codex-multi-rsz4jf08 succeeded in 14ms:
[codex:1075184] codex-output-schema.json
[codex:1075184] AUDIT_BUNDLE.txt
[codex:1075184] contracts/contracts/universal/Semver.sol
[codex:1075184] contracts/node_modules/@rari-capital/solmate/src/utils/FixedPointMathLib.sol
[codex:1075184] contracts/contracts/vendor/AddressAliasHelper.sol
[codex:1075184] contracts/contracts/libraries/Types.sol
[codex:1075184] contracts/contracts/libraries/Encoding.sol
[codex:1075184] contracts/contracts/libraries/SafeCall.sol
[codex:1075184] contracts/contracts/libraries/Bytes.sol
[codex:1075184] contracts/contracts/libraries/Burn.sol
[codex:1075184] contracts/contracts/libraries/Constants.sol
[codex:1075184] contracts/contracts/L1/OptimismPortal.sol
[codex:1075184] contracts/contracts/L1/ResourceMetering.sol
[codex:1075184] contracts/contracts/L1/L2OutputOracle.sol
[codex:1075184] contracts/contracts/L1/SystemConfig.sol
[codex:1075184] contracts/contracts/libraries/rlp/RLPWriter.sol
[codex:1075184] contracts/contracts/libraries/rlp/RLPReader.sol
[codex:1075184] contracts/contracts/libraries/Hashing.sol
[codex:1075184] contracts/node_modules/@openzeppelin/contracts/proxy/utils/Initializable.sol
[codex:1075184] contracts/contracts/libraries/trie/MerkleTrie.sol
[codex:1075184]
[codex:1075184] thinking
[codex:1075184] **Planning thorough file reading**
[codex:1075184] exec
[codex:1075184] /bin/bash -lc "python - <<'PY'
[codex:1075184] from pathlib import Path
[codex:1075184] p = Path('AUDIT_BUNDLE.txt')
[codex:1075184] text = p.read_text()
[codex:1075184] print('lines', text.count('\\n') + 1)
[codex:1075184] print('last', text.splitlines()[-1])
[codex:1075184] PY" in /tmp/codex-multi-rsz4jf08 succeeded in 27ms:
[codex:1075184] lines 3394
[codex:1075184] last
[codex:1075184]
[codex:1075184] thinking
[codex:1075184] **Examining contract files for profit path**
[codex:1075184] exec
[codex:1075184] /bin/bash -lc "sed -n '1,240p' contracts/contracts/L1/OptimismPortal.sol" in /tmp/codex-multi-rsz4jf08 succeeded in 5ms:
[codex:1075184] // SPDX-License-Identifier: MIT
[codex:1075184] pragma solidity 0.8.15;
[codex:1075184]
[codex:1075184] import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
[codex:1075184] import { SafeCall } from "../libraries/SafeCall.sol";
[codex:1075184] import { L2OutputOracle } from "./L2OutputOracle.sol";
[codex:1075184] import { SystemConfig } from "./SystemConfig.sol";
[codex:1075184] import { Constants } from "../libraries/Constants.sol";
[codex:1075184] import { Types } from "../libraries/Types.sol";
[codex:1075184] import { Hashing } from "../libraries/Hashing.sol";
[codex:1075184] import { SecureMerkleTrie } from "../libraries/trie/SecureMerkleTrie.sol";
[codex:1075184] import { AddressAliasHelper } from "../vendor/AddressAliasHelper.sol";
[codex:1075184] import { Address } from "@openzeppelin/contracts/utils/Address.sol";
[codex:1075184] import { ResourceMetering } from "./ResourceMetering.sol";
[codex:1075184] import { Semver } from "../universal/Semver.sol";
[codex:1075184] import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
[codex:1075184] import { SafeERC20 } from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1075184]
[codex:1075184] /**
[codex:1075184] * @custom:proxied
[codex:1075184]
[codex:1075184] thinking
[codex:1075184] **Continuing process**
[codex:1075184] exec
[codex:1075184] /bin/bash -lc "sed -n '240,520p' contracts/contracts/L1/OptimismPortal.sol" in /tmp/codex-multi-rsz4jf08 succeeded in 5ms:
[codex:1075184]
[codex:1075184] /**
[codex:1075184] * @notice Accepts ETH value without triggering a deposit to L2. This function mainly exists
[codex:1075184] * for the sake of the migration between the legacy Optimism system and Bedrock.
[codex:1075184] */
[codex:1075184] function donateETH() external payable {
[codex:1075184] // Intentionally empty.
[codex:1075184] }
[codex:1075184]
[codex:1075184] /**
[codex:1075184] * @notice Getter for the resource config. Used internally by the ResourceMetering
[codex:1075184] * contract. The SystemConfig is the source of truth for the resource config.
[codex:1075184] *
[codex:1075184] * @return ResourceMetering.ResourceConfig
[codex:1075184] */
[codex:1075184] function _resourceConfig()
[codex:1075184] internal
[codex:1075184] view
[codex:1075184] override
[codex:1075184] returns (ResourceMetering.ResourceConfig memory)
[codex:1075184] exec
[codex:1075184] /bin/bash -lc "sed -n '520,1040p' contracts/contracts/L1/OptimismPortal.sol" in /tmp/codex-multi-rsz4jf08 succeeded in 5ms:
[codex:1075184] _gasLimit,
[codex:1075184] _isCreation,
[codex:1075184] _data
[codex:1075184] );
[codex:1075184]
[codex:1075184] // Emit a TransactionDeposited event so that the rollup node can derive a deposit
[codex:1075184] // transaction for this deposit.
[codex:1075184] emit TransactionDeposited(from, _to, DEPOSIT_VERSION, opaqueData);
[codex:1075184] }
[codex:1075184]
[codex:1075184] /**
[codex:1075184] * @notice Determine if a given output is finalized. Reverts if the call to
[codex:1075184] * L2_ORACLE.getL2Output reverts. Returns a boolean otherwise.
[codex:1075184] *
[codex:1075184] * @param _l2OutputIndex Index of the L2 output to check.
[codex:1075184] *
[codex:1075184] * @return Whether or not the output is finalized.
[codex:1075184] */
[codex:1075184] function isOutputFinalized(uint256 _l2OutputIndex) external view returns (bool) {
[codex:1075184] return _isFinalizationPeriodElapsed(L2_ORACLE.getL2Output(_l2OutputIndex).timestamp);
[codex:1075184]
[codex:1075184] thinking
[codex:1075184] **Reviewing contract components for vulnerabilities**
[codex:1075184] exec
[codex:1075184] /bin/bash -lc "sed -n '1,260p' contracts/contracts/L1/SystemConfig.sol" in /tmp/codex-multi-rsz4jf08 succeeded in 5ms:
[codex:1075184] // SPDX-License-Identifier: MIT
[codex:1075184] pragma solidity 0.8.15;
[codex:1075184]
[codex:1075184] import {
[codex:1075184] OwnableUpgradeable
[codex:1075184] } from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
[codex:1075184] import { Semver } from "../universal/Semver.sol";
[codex:1075184] import { ResourceMetering } from "./ResourceMetering.sol";
[codex:1075184]
[codex:1075184] /**
[codex:1075184] * @title SystemConfig
[codex:1075184] * @notice The SystemConfig contract is used to manage configuration of an Optimism network. All
[codex:1075184] * configuration is stored on L1 and picked up by L2 as part of the derviation of the L2
[codex:1075184] * chain.
[codex:1075184] */
[codex:1075184] contract SystemConfig is OwnableUpgradeable, Semver {
[codex:1075184] /**
[codex:1075184] * @notice Enum representing different types of updates.
[codex:1075184] *
[codex:1075184] * @custom:value BATCHER Represents an update to the batcher hash.
[codex:1075184] exec
[codex:1075184] /bin/bash -lc "sed -n '260,520p' contracts/contracts/L1/SystemConfig.sol" in /tmp/codex-multi-rsz4jf08 succeeded in 5ms:
[codex:1075184]
[codex:1075184] /**
[codex:1075184] * @notice A getter for the resource config. Ensures that the struct is
[codex:1075184] * returned instead of a tuple.
[codex:1075184] *
[codex:1075184] * @return ResourceConfig
[codex:1075184] */
[codex:1075184] function resourceConfig() external view returns (ResourceMetering.ResourceConfig memory) {
[codex:1075184] return _resourceConfig;
[codex:1075184] }
[codex:1075184]
[codex:1075184] /**
[codex:1075184] * @notice An external setter for the resource config. In the future, this
[codex:1075184] * method may emit an event that the `op-node` picks up for when the
[codex:1075184] * resource config is changed.
[codex:1075184] *
[codex:1075184] * @param _config The new resource config values.
[codex:1075184] */
[codex:1075184] function setResourceConfig(ResourceMetering.ResourceConfig memory _config) external onlyOwner {
[codex:1075184] _setResourceConfig(_config);
[codex:1075184]
[codex:1075184] thinking
[codex:1075184] **Identifying ResourceMetering topic**
[codex:1075184] exec
[codex:1075184] /bin/bash -lc "sed -n '1,260p' contracts/contracts/L1/ResourceMetering.sol" in /tmp/codex-multi-rsz4jf08 succeeded in 6ms:
[codex:1075184] // SPDX-License-Identifier: MIT
[codex:1075184] pragma solidity 0.8.15;
[codex:1075184]
[codex:1075184] import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
[codex:1075184] import { Math } from "@openzeppelin/contracts/utils/math/Math.sol";
[codex:1075184] import { Burn } from "../libraries/Burn.sol";
[codex:1075184] import { Arithmetic } from "../libraries/Arithmetic.sol";
[codex:1075184]
[codex:1075184] /**
[codex:1075184] * @custom:upgradeable
[codex:1075184] * @title ResourceMetering
[codex:1075184] * @notice ResourceMetering implements an EIP-1559 style resource metering system where pricing
[codex:1075184] * updates automatically based on current demand.
[codex:1075184] */
[codex:1075184] abstract contract ResourceMetering is Initializable {
[codex:1075184] /**
[codex:1075184] * @notice Represents the various parameters that control the way in which resources are
[codex:1075184] * metered. Corresponds to the EIP-1559 resource metering system.
[codex:1075184] *
[codex:1075184] * @custom:field prevBaseFee Base fee from the previous block(s).
[codex:1075184]
[codex:1075184] thinking
[codex:1075184] **Examining utility libraries**
[codex:1075184] exec
[codex:1075184] /bin/bash -lc "sed -n '1,240p' contracts/contracts/libraries/Types.sol" in /tmp/codex-multi-rsz4jf08 succeeded in 7ms:
[codex:1075184] // SPDX-License-Identifier: MIT
[codex:1075184] pragma solidity ^0.8.0;
[codex:1075184]
[codex:1075184] /**
[codex:1075184] * @title Types
[codex:1075184] * @notice Contains various types used throughout the Optimism contract system.
[codex:1075184] */
[codex:1075184] library Types {
[codex:1075184] /**
[codex:1075184] * @notice OutputProposal represents a commitment to the L2 state. The timestamp is the L1
[codex:1075184] * timestamp that the output root is posted. This timestamp is used to verify that the
[codex:1075184] * finalization period has passed since the output root was submitted.
[codex:1075184] *
[codex:1075184] * @custom:field outputRoot Hash of the L2 output.
[codex:1075184] * @custom:field timestamp Timestamp of the L1 block that the output root was submitted in.
[codex:1075184] * @custom:field l2BlockNumber L2 block number that the output corresponds to.
[codex:1075184] */
[codex:1075184] struct OutputProposal {
[codex:1075184] bytes32 outputRoot;
[codex:1075184] uint128 timestamp;
[codex:1075184]
[codex:1075184] thinking
[codex:1075184] **Checking types and libraries**
[codex:1075184] exec
[codex:1075184] /bin/bash -lc "sed -n '1,240p' contracts/contracts/libraries/Hashing.sol" in /tmp/codex-multi-rsz4jf08 succeeded in 6ms:
[codex:1075184] // SPDX-License-Identifier: MIT
[codex:1075184] pragma solidity ^0.8.0;
[codex:1075184]
[codex:1075184] import { Types } from "./Types.sol";
[codex:1075184] import { Encoding } from "./Encoding.sol";
[codex:1075184]
[codex:1075184] /**
[codex:1075184] * @title Hashing
[codex:1075184] * @notice Hashing handles Optimism's various different hashing schemes.
[codex:1075184] */
[codex:1075184] library Hashing {
[codex:1075184] /**
[codex:1075184] * @notice Computes the hash of the RLP encoded L2 transaction that would be generated when a
[codex:1075184] * given deposit is sent to the L2 system. Useful for searching for a deposit in the L2
[codex:1075184] * system.
[codex:1075184] *
[codex:1075184] * @param _tx User deposit transaction to hash.
[codex:1075184] *
[codex:1075184] * @return Hash of the RLP encoded L2 deposit transaction.
[codex:1075184] */
[codex:1075184]
[codex:1075184] thinking
[codex:1075184] **Checking encoding and vulnerabilities**
[codex:1075184] exec
[codex:1075184] /bin/bash -lc "sed -n '1,260p' contracts/contracts/libraries/Encoding.sol" in /tmp/codex-multi-rsz4jf08 succeeded in 5ms:
[codex:1075184] // SPDX-License-Identifier: MIT
[codex:1075184] pragma solidity ^0.8.0;
[codex:1075184]
[codex:1075184] import { Types } from "./Types.sol";
[codex:1075184] import { Hashing } from "./Hashing.sol";
[codex:1075184] import { RLPWriter } from "./rlp/RLPWriter.sol";
[codex:1075184]
[codex:1075184] /**
[codex:1075184] * @title Encoding
[codex:1075184] * @notice Encoding handles Optimism's various different encoding schemes.
[codex:1075184] */
[codex:1075184] library Encoding {
[codex:1075184] /**
[codex:1075184] * @notice RLP encodes the L2 transaction that would be generated when a given deposit is sent
[codex:1075184] * to the L2 system. Useful for searching for a deposit in the L2 system. The
[codex:1075184] * transaction is prefixed with 0x7e to identify its EIP-2718 type.
[codex:1075184] *
[codex:1075184] * @param _tx User deposit transaction to encode.
[codex:1075184] *
[codex:1075184] * @return RLP encoded L2 deposit transaction.
[codex:1075184]
[codex:1075184] thinking
[codex:1075184] **Checking SafeCall library**
[codex:1075184] exec
[codex:1075184] /bin/bash -lc "sed -n '1,260p' contracts/contracts/libraries/SafeCall.sol" in /tmp/codex-multi-rsz4jf08 succeeded in 5ms:
[codex:1075184] // SPDX-License-Identifier: MIT
[codex:1075184] pragma solidity 0.8.15;
[codex:1075184]
[codex:1075184] /**
[codex:1075184] * @title SafeCall
[codex:1075184] * @notice Perform low level safe calls
[codex:1075184] */
[codex:1075184] library SafeCall {
[codex:1075184] /**
[codex:1075184] * @notice Performs a low level call without copying any returndata.
[codex:1075184] * @dev Passes no calldata to the call context.
[codex:1075184] *
[codex:1075184] * @param _target Address to call
[codex:1075184] * @param _gas Amount of gas to pass to the call
[codex:1075184] * @param _value Amount of value to pass to the call
[codex:1075184] */
[codex:1075184] function send(
[codex:1075184] address _target,
[codex:1075184] uint256 _gas,
[codex:1075184] uint256 _value
[codex:1075184]
[codex:1075184]
[codex:1075184] thinking
[codex:1075184] **Analyzing potential reentrancy and token transfer risks**
[codex:1075184] thinking
[codex:1075184] **Checking initialize and resource metering setup**
[codex:1075184] exec
[codex:1075184] /bin/bash -lc "sed -n '1,200p' contracts/contracts/libraries/Burn.sol" in /tmp/codex-multi-rsz4jf08 succeeded in 6ms:
[codex:1075184] // SPDX-License-Identifier: MIT
[codex:1075184] pragma solidity 0.8.15;
[codex:1075184]
[codex:1075184] /**
[codex:1075184] * @title Burn
[codex:1075184] * @notice Utilities for burning stuff.
[codex:1075184] */
[codex:1075184] library Burn {
[codex:1075184] /**
[codex:1075184] * Burns a given amount of MNT.
[codex:1075184] *
[codex:1075184] * @param _amount Amount of MNT to burn.
[codex:1075184] */
[codex:1075184] function mnt(uint256 _amount) internal {
[codex:1075184] new Burner{ value: _amount }();
[codex:1075184] }
[codex:1075184]
[codex:1075184] /**
[codex:1075184] * Consumes a given amount of gas.
[codex:1075184] *
[codex:1075184]
[codex:1075184] thinking
[codex:1075184] **Analyzing Burn.mnt and selfdestruct behavior**
[codex:1075184] exec
[codex:1075184] /bin/bash -lc "rg -n \"Burn\\.mnt|burn\" contracts/contracts" in /tmp/codex-multi-rsz4jf08 succeeded in 11ms:
[codex:1075184] contracts/contracts/libraries/Burn.sol:6: * @notice Utilities for burning stuff.
[codex:1075184] contracts/contracts/libraries/Burn.sol:12: * @param _amount Amount of MNT to burn.
[codex:1075184] contracts/contracts/L1/ResourceMetering.sol:150: // We currently charge for this ETH amount as an L1 gas burn, so we convert the ETH amount
[codex:1075184] contracts/contracts/L1/ResourceMetering.sol:152: // division by zero for L1s that don't support 1559 or to avoid excessive gas burns during
[codex:1075184]
[codex:1075184] thinking
[codex:1075184] **Analyzing potential contract vulnerabilities**
[codex:1075184] exec
[codex:1075184] /bin/bash -lc "sed -n '1,200p' contracts/contracts/libraries/Constants.sol" in /tmp/codex-multi-rsz4jf08 succeeded in 6ms:
[codex:1075184] // SPDX-License-Identifier: MIT
[codex:1075184] pragma solidity ^0.8.0;
[codex:1075184]
[codex:1075184] import { ResourceMetering } from "../L1/ResourceMetering.sol";
[codex:1075184]
[codex:1075184] /**
[codex:1075184] * @title Constants
[codex:1075184] * @notice Constants is a library for storing constants. Simple! Don't put everything in here, just
[codex:1075184] * the stuff used in multiple contracts. Constants that only apply to a single contract
[codex:1075184] * should be defined in that contract instead.
[codex:1075184] */
[codex:1075184] library Constants {
[codex:1075184] /**
[codex:1075184] * @notice Special address to be used as the tx origin for gas estimation calls in the
[codex:1075184] * OptimismPortal and CrossDomainMessenger calls. You only need to use this address if
[codex:1075184] * the minimum gas limit specified by the user is not actually enough to execute the
[codex:1075184] * given message and you're attempting to estimate the actual necessary gas limit. We
[codex:1075184] * use address(1) because it's the ecrecover precompile and therefore guaranteed to
[codex:1075184] * never have any code on any EVM chain.
[codex:1075184] */
[codex:1075184]
[codex:1075184] thinking
[codex:1075184] **Checking arithmetic functions**
[codex:1075184] exec
[codex:1075184] /bin/bash -lc "sed -n '1,200p' contracts/contracts/libraries/Arithmetic.sol" in /tmp/codex-multi-rsz4jf08 succeeded in 5ms:
[codex:1075184] // SPDX-License-Identifier: MIT
[codex:1075184] pragma solidity 0.8.15;
[codex:1075184]
[codex:1075184] import { SignedMath } from "@openzeppelin/contracts/utils/math/SignedMath.sol";
[codex:1075184] import { FixedPointMathLib } from "@rari-capital/solmate/src/utils/FixedPointMathLib.sol";
[codex:1075184]
[codex:1075184] /**
[codex:1075184] * @title Arithmetic
[codex:1075184] * @notice Even more math than before.
[codex:1075184] */
[codex:1075184] library Arithmetic {
[codex:1075184] /**
[codex:1075184] * @notice Clamps a value between a minimum and maximum.
[codex:1075184] *
[codex:1075184] * @param _value The value to clamp.
[codex:1075184] * @param _min The minimum value.
[codex:1075184] * @param _max The maximum value.
[codex:1075184] *
[codex:1075184] * @return The clamped value.
[codex:1075184] */
[codex:1075184]
[codex:1075184]
[codex:1075184] thinking
[codex:1075184] **Evaluating contract logic for vulnerabilities**
[codex:1075184] thinking
[codex:1075184] **Analyzing token transfer and reentrancy risks**
[codex:1075184]
[codex:1075184] I’m carefully checking token transfers, reentrancy potential, and metering logic for possible profit abuse, especially around `finalizeWithdrawalTransaction` and `depositTransaction`. I’m also verifying if bypasses exist due to call ordering or unchecked parameters, but so far, everything looks safely guarded against direct value extraction.
[codex:1075184] exec
[codex:1075184] /bin/bash -lc "rg -n \"transfer\\(|safeTransfer|callWithMinGas|send\\(\" contracts/contracts" in /tmp/codex-multi-rsz4jf08 succeeded in 10ms:
[codex:1075184] contracts/contracts/libraries/SafeCall.sol:17: function send(
[codex:1075184] contracts/contracts/libraries/SafeCall.sol:112: function callWithMinGas(
[codex:1075184] contracts/contracts/L1/OptimismPortal.sol:429: // SafeCall.callWithMinGas to ensure two key properties
[codex:1075184] contracts/contracts/L1/OptimismPortal.sol:434: // to accomplish this, `callWithMinGas` will revert.
[codex:1075184] contracts/contracts/L1/OptimismPortal.sol:438: IERC20(L1_MNT_ADDRESS).transfer(_tx.target, _tx.mntValue);
[codex:1075184] contracts/contracts/L1/OptimismPortal.sol:441: bool success = SafeCall.callWithMinGas(_tx.target, _tx.gasLimit, _tx.ethValue, _tx.data);
[codex:1075184] contracts/contracts/L1/OptimismPortal.sol:503: IERC20(L1_MNT_ADDRESS).safeTransferFrom(msg.sender, address(this), _mntValue);
[codex:1075184]
[codex:1075184] thinking
[codex:1075184] **Reviewing finalize function and potential vulnerabilities**
[codex:1075184]
[codex:1075184] I've analyzed the finalize function and associated token transfers for any hidden vulnerabilities like reentrancy, replay, or token fee abuse; everything seems safe or not exploitable, though I explored nuanced edge cases involving minting, deposit values, and initialization reentrancy. Now I'll output a JSON indicating no findings after verifying the output schema.
[codex:1075184] exec
[codex:1075184] /bin/bash -lc 'cat codex-output-schema.json' in /tmp/codex-multi-rsz4jf08 succeeded in 7ms:
[codex:1075184] {"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:1075184]
[codex:1075184] thinking
[codex:1075184] **Evaluating MerkleTrie security**
[codex:1075184]
[codex:1075184] I'm reviewing the MerkleTrie implementation closely, especially the get and verifyInclusionProof functions, to check for any subtle bugs that might let an attacker forge proofs and withdraw funds improperly. The detailed node and path validations seem solid so far, but I want to confirm the Bytes library methods like toNibbles and slice behave correctly to rule out edge-case issues.
[codex:1075184] exec
[codex:1075184] /bin/bash -lc "sed -n '1,260p' contracts/contracts/libraries/Bytes.sol" in /tmp/codex-multi-rsz4jf08 succeeded in 6ms:
[codex:1075184] // SPDX-License-Identifier: MIT
[codex:1075184] pragma solidity ^0.8.0;
[codex:1075184]
[codex:1075184] /**
[codex:1075184] * @title Bytes
[codex:1075184] * @notice Bytes is a library for manipulating byte arrays.
[codex:1075184] */
[codex:1075184] library Bytes {
[codex:1075184] /**
[codex:1075184] * @custom:attribution https://github.com/GNSPS/solidity-bytes-utils
[codex:1075184] * @notice Slices a byte array with a given starting index and length. Returns a new byte array
[codex:1075184] * as opposed to a pointer to the original array. Will throw if trying to slice more
[codex:1075184] * bytes than exist in the array.
[codex:1075184] *
[codex:1075184] * @param _bytes Byte array to slice.
[codex:1075184] * @param _start Starting index of the slice.
[codex:1075184] * @param _length Length of the slice.
[codex:1075184] *
[codex:1075184] * @return Slice of the input byte array.
[codex:1075184] */
[codex:1075184]
[codex:1075184] thinking
[codex:1075184] **Analyzing potential vulnerabilities and finalizing no findings**
[codex:1075184]
[codex:1075184] I'm carefully reviewing deposit and withdrawal transaction encoding, reentrancy possibilities, gas metering, and finalization logic to identify any exploitable profit paths. After checking key contract functions and specs, I find no concrete vulnerabilities that could yield improper profit, so I’m preparing a clean JSON no-findings summary as requested.
[codex:1075184] codex
[codex:1075184] {"no_findings":true,"summary":"No concrete, exploitable profit paths found in the provided contracts (AUDIT_BUNDLE.txt).","findings":[]}
[codex:1075184] tokens used
[codex:1075184] 75,316
[codex:1075184] {"no_findings":true,"summary":"No concrete, exploitable profit paths found in the provided contracts (AUDIT_BUNDLE.txt).","findings":[]}
{
"codex": {
"ran_at": "2026-01-01T15:39:02.679250+00:00",
"returncode": 0
},
"summary": "No concrete, exploitable profit paths found in the provided contracts (AUDIT_BUNDLE.txt).",
"raw_final": {
"summary": "No concrete, exploitable profit paths found in the provided contracts (AUDIT_BUNDLE.txt).",
"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 0x0147 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0x9bf62d82 00000019: GT 0000001a: PUSH2 0x00c0 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0xcff0ab96 00000024: GT 00000025: PUSH2 0x0074 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xd69b2b1b 0000002f: GT 00000030: PUSH2 0x0059 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xd69b2b1b 0000003a: EQ 0000003b: PUSH2 0x0580 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xe965084c 00000045: EQ 00000046: PUSH2 0x05a0 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xf0498750 00000050: EQ 00000051: PUSH2 0x062c 00000054: JUMPI 00000055: PUSH1 0x00 00000057: DUP1 00000058: REVERT 00000059: JUMPDEST 0000005a: DUP1 0000005b: PUSH4 0xcff0ab96 00000060: EQ 00000061: PUSH2 0x04bf 00000064: JUMPI 00000065: DUP1 00000066: PUSH4 0xd53a822f 0000006b: EQ 0000006c: PUSH2 0x0560 0000006f: JUMPI 00000070: PUSH1 0x00 00000072: DUP1 00000073: REVERT 00000074: JUMPDEST 00000075: DUP1 00000076: PUSH4 0xa35d99df 0000007b: GT 0000007c: PUSH2 0x00a5 0000007f: JUMPI 00000080: DUP1 00000081: PUSH4 0xa35d99df 00000086: EQ 00000087: PUSH2 0x043f 0000008a: JUMPI 0000008b: DUP1 0000008c: PUSH4 0xa77b7d08 00000091: EQ 00000092: PUSH2 0x0478 00000095: JUMPI 00000096: DUP1 00000097: PUSH4 0xac6986c5 0000009c: EQ 0000009d: PUSH2 0x048b 000000a0: JUMPI 000000a1: PUSH1 0x00 000000a3: DUP1 000000a4: REVERT 000000a5: JUMPDEST 000000a6: DUP1 000000a7: PUSH4 0x9bf62d82 000000ac: EQ 000000ad: PUSH2 0x03e2 000000b0: JUMPI 000000b1: DUP1 000000b2: PUSH4 0xa14238e7 000000b7: EQ 000000b8: PUSH2 0x040f 000000bb: JUMPI 000000bc: PUSH1 0x00 000000be: DUP1 000000bf: REVERT 000000c0: JUMPDEST 000000c1: DUP1 000000c2: PUSH4 0x5c975abb 000000c7: GT 000000c8: PUSH2 0x0117 000000cb: JUMPI 000000cc: DUP1 000000cd: PUSH4 0x724c184c 000000d2: GT 000000d3: PUSH2 0x00fc 000000d6: JUMPI 000000d7: DUP1 000000d8: PUSH4 0x724c184c 000000dd: EQ 000000de: PUSH2 0x0399 000000e1: JUMPI 000000e2: DUP1 000000e3: PUSH4 0x8456cb59 000000e8: EQ 000000e9: PUSH2 0x03cd 000000ec: JUMPI 000000ed: DUP1 000000ee: PUSH4 0x8b4c40b0 000000f3: EQ 000000f4: PUSH2 0x0293 000000f7: JUMPI 000000f8: PUSH1 0x00 000000fa: DUP1 000000fb: REVERT 000000fc: JUMPDEST 000000fd: DUP1 000000fe: PUSH4 0x5c975abb 00000103: EQ 00000104: PUSH2 0x034f 00000107: JUMPI 00000108: DUP1 00000109: PUSH4 0x6dbffb78 0000010e: EQ 0000010f: PUSH2 0x0379 00000112: JUMPI 00000113: PUSH1 0x00 00000115: DUP1 00000116: REVERT 00000117: JUMPDEST 00000118: DUP1 00000119: PUSH3 0x1c2ff6 0000011d: EQ 0000011e: PUSH2 0x029a 00000121: JUMPI 00000122: DUP1 00000123: PUSH4 0x2e71d4a4 00000128: EQ 00000129: PUSH2 0x02f8 0000012c: JUMPI 0000012d: DUP1 0000012e: PUSH4 0x3f4ba83a 00000133: EQ 00000134: PUSH2 0x0318 00000137: JUMPI 00000138: DUP1 00000139: PUSH4 0x54fd4d50 0000013e: EQ 0000013f: PUSH2 0x032d 00000142: JUMPI 00000143: PUSH1 0x00 00000145: DUP1 00000146: REVERT 00000147: JUMPDEST 00000148: CALLDATASIZE 00000149: PUSH2 0x0295 0000014c: JUMPI 0000014d: CALLER 0000014e: EXTCODESIZE 0000014f: ISZERO 00000150: PUSH2 0x01e0 00000153: JUMPI 00000154: PUSH1 0x40 00000156: MLOAD 00000157: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000178: DUP2 00000179: MSTORE 0000017a: PUSH1 0x20 0000017c: PUSH1 0x04 0000017e: DUP3 0000017f: ADD 00000180: MSTORE 00000181: PUSH1 0x37 00000183: PUSH1 0x24 00000185: DUP3 00000186: ADD 00000187: MSTORE 00000188: PUSH32 0x5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c 000001a9: PUSH1 0x44 000001ab: DUP3 000001ac: ADD 000001ad: MSTORE 000001ae: PUSH32 0x792062652063616c6c65642066726f6d20616e20454f41000000000000000000 000001cf: PUSH1 0x64 000001d1: DUP3 000001d2: ADD 000001d3: MSTORE 000001d4: PUSH1 0x84 000001d6: ADD 000001d7: JUMPDEST 000001d8: PUSH1 0x40 000001da: MLOAD 000001db: DUP1 000001dc: SWAP2 000001dd: SUB 000001de: SWAP1 000001df: REVERT 000001e0: JUMPDEST 000001e1: CALLER 000001e2: ORIGIN 000001e3: EQ 000001e4: PUSH2 0x026f 000001e7: JUMPI 000001e8: PUSH1 0x40 000001ea: MLOAD 000001eb: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000020c: DUP2 0000020d: MSTORE 0000020e: PUSH1 0x20 00000210: PUSH1 0x04 00000212: DUP3 00000213: ADD 00000214: MSTORE 00000215: PUSH1 0x32 00000217: PUSH1 0x24 00000219: DUP3 0000021a: ADD 0000021b: MSTORE 0000021c: PUSH32 0x5374616e646172644272696467653a206d73672073656e646572206d75737420 0000023d: PUSH1 0x44 0000023f: DUP3 00000240: ADD 00000241: MSTORE 00000242: PUSH32 0x657175616c20746f207478206f726967696e0000000000000000000000000000 00000263: PUSH1 0x64 00000265: DUP3 00000266: ADD 00000267: MSTORE 00000268: PUSH1 0x84 0000026a: ADD 0000026b: PUSH2 0x01d7 0000026e: JUMP 0000026f: JUMPDEST 00000270: PUSH2 0x0293 00000273: CALLVALUE 00000274: PUSH1 0x00 00000276: CALLER 00000277: PUSH1 0x00 00000279: PUSH3 0x0186a0 0000027d: PUSH1 0x00 0000027f: PUSH1 0x40 00000281: MLOAD 00000282: DUP1 00000283: PUSH1 0x20 00000285: ADD 00000286: PUSH1 0x40 00000288: MSTORE 00000289: DUP1 0000028a: PUSH1 0x00 0000028c: DUP2 0000028d: MSTORE 0000028e: POP 0000028f: PUSH2 0x067c 00000292: JUMP 00000293: JUMPDEST 00000294: STOP 00000295: JUMPDEST 00000296: PUSH1 0x00 00000298: DUP1 00000299: REVERT 0000029a: JUMPDEST 0000029b: CALLVALUE 0000029c: DUP1 0000029d: ISZERO 0000029e: PUSH2 0x02a6 000002a1: JUMPI 000002a2: PUSH1 0x00 000002a4: DUP1 000002a5: REVERT 000002a6: JUMPDEST 000002a7: POP 000002a8: PUSH2 0x02ce 000002ab: PUSH32 0x00000000000000000000000031d543e7be1da6efdc2206ef7822879045b9f481 000002cc: DUP2 000002cd: JUMP 000002ce: JUMPDEST 000002cf: PUSH1 0x40 000002d1: MLOAD 000002d2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000002e7: SWAP1 000002e8: SWAP2 000002e9: AND 000002ea: DUP2 000002eb: MSTORE 000002ec: PUSH1 0x20 000002ee: ADD 000002ef: JUMPDEST 000002f0: PUSH1 0x40 000002f2: MLOAD 000002f3: DUP1 000002f4: SWAP2 000002f5: SUB 000002f6: SWAP1 000002f7: RETURN 000002f8: JUMPDEST 000002f9: CALLVALUE 000002fa: DUP1 000002fb: ISZERO 000002fc: PUSH2 0x0304 000002ff: JUMPI 00000300: PUSH1 0x00 00000302: DUP1 00000303: REVERT 00000304: JUMPDEST 00000305: POP 00000306: PUSH2 0x0293 00000309: PUSH2 0x0313 0000030c: CALLDATASIZE 0000030d: PUSH1 0x04 0000030f: PUSH2 0x5496 00000312: JUMP 00000313: JUMPDEST 00000314: PUSH2 0x0960 00000317: JUMP 00000318: JUMPDEST 00000319: CALLVALUE 0000031a: DUP1 0000031b: ISZERO 0000031c: PUSH2 0x0324 0000031f: JUMPI 00000320: PUSH1 0x00 00000322: DUP1 00000323: REVERT 00000324: JUMPDEST 00000325: POP 00000326: PUSH2 0x0293 00000329: PUSH2 0x13e9 0000032c: JUMP 0000032d: JUMPDEST 0000032e: CALLVALUE 0000032f: DUP1 00000330: ISZERO 00000331: PUSH2 0x0339 00000334: JUMPI 00000335: PUSH1 0x00 00000337: DUP1 00000338: REVERT 00000339: JUMPDEST 0000033a: POP 0000033b: PUSH2 0x0342 0000033e: PUSH2 0x150c 00000341: JUMP 00000342: JUMPDEST 00000343: PUSH1 0x40 00000345: MLOAD 00000346: PUSH2 0x02ef 00000349: SWAP2 0000034a: SWAP1 0000034b: PUSH2 0x5541 0000034e: JUMP 0000034f: JUMPDEST 00000350: CALLVALUE 00000351: DUP1 00000352: ISZERO 00000353: PUSH2 0x035b 00000356: JUMPI 00000357: PUSH1 0x00 00000359: DUP1 0000035a: REVERT 0000035b: JUMPDEST 0000035c: POP 0000035d: PUSH1 0x35 0000035f: SLOAD 00000360: PUSH2 0x0369 00000363: SWAP1 00000364: PUSH1 0xff 00000366: AND 00000367: DUP2 00000368: JUMP 00000369: JUMPDEST 0000036a: PUSH1 0x40 0000036c: MLOAD 0000036d: SWAP1 0000036e: ISZERO 0000036f: ISZERO 00000370: DUP2 00000371: MSTORE 00000372: PUSH1 0x20 00000374: ADD 00000375: PUSH2 0x02ef 00000378: JUMP 00000379: JUMPDEST 0000037a: CALLVALUE 0000037b: DUP1 0000037c: ISZERO 0000037d: PUSH2 0x0385 00000380: JUMPI 00000381: PUSH1 0x00 00000383: DUP1 00000384: REVERT 00000385: JUMPDEST 00000386: POP 00000387: PUSH2 0x0369 0000038a: PUSH2 0x0394 0000038d: CALLDATASIZE 0000038e: PUSH1 0x04 00000390: PUSH2 0x5554 00000393: JUMP 00000394: JUMPDEST 00000395: PUSH2 0x15af 00000398: JUMP 00000399: JUMPDEST 0000039a: CALLVALUE 0000039b: DUP1 0000039c: ISZERO 0000039d: PUSH2 0x03a5 000003a0: JUMPI 000003a1: PUSH1 0x00 000003a3: DUP1 000003a4: REVERT 000003a5: JUMPDEST 000003a6: POP 000003a7: PUSH2 0x02ce 000003aa: PUSH32 0x0000000000000000000000002f44bd2a54ac3fb20cd7783cf94334069641dac9 000003cb: DUP2 000003cc: JUMP 000003cd: JUMPDEST 000003ce: CALLVALUE 000003cf: DUP1 000003d0: ISZERO 000003d1: PUSH2 0x03d9 000003d4: JUMPI 000003d5: PUSH1 0x00 000003d7: DUP1 000003d8: REVERT 000003d9: JUMPDEST 000003da: POP 000003db: PUSH2 0x0293 000003de: PUSH2 0x1686 000003e1: JUMP 000003e2: JUMPDEST 000003e3: CALLVALUE 000003e4: DUP1 000003e5: ISZERO 000003e6: PUSH2 0x03ee 000003e9: JUMPI 000003ea: PUSH1 0x00 000003ec: DUP1 000003ed: REVERT 000003ee: JUMPDEST 000003ef: POP 000003f0: PUSH1 0x32 000003f2: SLOAD 000003f3: PUSH2 0x02ce 000003f6: SWAP1 000003f7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000040c: AND 0000040d: DUP2 0000040e: JUMP 0000040f: JUMPDEST 00000410: CALLVALUE 00000411: DUP1 00000412: ISZERO 00000413: PUSH2 0x041b 00000416: JUMPI 00000417: PUSH1 0x00 00000419: DUP1 0000041a: REVERT 0000041b: JUMPDEST 0000041c: POP 0000041d: PUSH2 0x0369 00000420: PUSH2 0x042a 00000423: CALLDATASIZE 00000424: PUSH1 0x04 00000426: PUSH2 0x5554 00000429: JUMP 0000042a: JUMPDEST 0000042b: PUSH1 0x33 0000042d: PUSH1 0x20 0000042f: MSTORE 00000430: PUSH1 0x00 00000432: SWAP1 00000433: DUP2 00000434: MSTORE 00000435: PUSH1 0x40 00000437: SWAP1 00000438: KECCAK256 00000439: SLOAD 0000043a: PUSH1 0xff 0000043c: AND 0000043d: DUP2 0000043e: JUMP 0000043f: JUMPDEST 00000440: CALLVALUE 00000441: DUP1 00000442: ISZERO 00000443: PUSH2 0x044b 00000446: JUMPI 00000447: PUSH1 0x00 00000449: DUP1 0000044a: REVERT 0000044b: JUMPDEST 0000044c: POP 0000044d: PUSH2 0x045f 00000450: PUSH2 0x045a 00000453: CALLDATASIZE 00000454: PUSH1 0x04 00000456: PUSH2 0x5585 00000459: JUMP 0000045a: JUMPDEST 0000045b: PUSH2 0x17a8 0000045e: JUMP 0000045f: JUMPDEST 00000460: PUSH1 0x40 00000462: MLOAD 00000463: PUSH8 0xffffffffffffffff 0000046c: SWAP1 0000046d: SWAP2 0000046e: AND 0000046f: DUP2 00000470: MSTORE 00000471: PUSH1 0x20 00000473: ADD 00000474: PUSH2 0x02ef 00000477: JUMP 00000478: JUMPDEST 00000479: PUSH2 0x0293 0000047c: PUSH2 0x0486 0000047f: CALLDATASIZE 00000480: PUSH1 0x04 00000482: PUSH2 0x55b1 00000485: JUMP 00000486: JUMPDEST 00000487: PUSH2 0x067c 0000048a: JUMP 0000048b: JUMPDEST 0000048c: CALLVALUE 0000048d: DUP1 0000048e: ISZERO 0000048f: PUSH2 0x0497 00000492: JUMPI 00000493: PUSH1 0x00 00000495: DUP1 00000496: REVERT 00000497: JUMPDEST 00000498: POP 00000499: PUSH2 0x02ce 0000049c: PUSH32 0x0000000000000000000000003c3a81e81dc49a522a592e7622a7e711c06bf354 000004bd: DUP2 000004be: JUMP 000004bf: JUMPDEST 000004c0: CALLVALUE 000004c1: DUP1 000004c2: ISZERO 000004c3: PUSH2 0x04cb 000004c6: JUMPI 000004c7: PUSH1 0x00 000004c9: DUP1 000004ca: REVERT 000004cb: JUMPDEST 000004cc: POP 000004cd: PUSH1 0x01 000004cf: SLOAD 000004d0: PUSH2 0x0527 000004d3: SWAP1 000004d4: PUSH16 0xffffffffffffffffffffffffffffffff 000004e5: DUP2 000004e6: AND 000004e7: SWAP1 000004e8: PUSH8 0xffffffffffffffff 000004f1: PUSH17 0x0100000000000000000000000000000000 00000503: DUP3 00000504: DIV 00000505: DUP2 00000506: AND 00000507: SWAP2 00000508: PUSH25 0x01000000000000000000000000000000000000000000000000 00000522: SWAP1 00000523: DIV 00000524: AND 00000525: DUP4 00000526: JUMP 00000527: JUMPDEST 00000528: PUSH1 0x40 0000052a: DUP1 0000052b: MLOAD 0000052c: PUSH16 0xffffffffffffffffffffffffffffffff 0000053d: SWAP1 0000053e: SWAP5 0000053f: AND 00000540: DUP5 00000541: MSTORE 00000542: PUSH8 0xffffffffffffffff 0000054b: SWAP3 0000054c: DUP4 0000054d: AND 0000054e: PUSH1 0x20 00000550: DUP6 00000551: ADD 00000552: MSTORE 00000553: SWAP2 00000554: AND 00000555: SWAP1 00000556: DUP3 00000557: ADD 00000558: MSTORE 00000559: PUSH1 0x60 0000055b: ADD 0000055c: PUSH2 0x02ef 0000055f: JUMP 00000560: JUMPDEST 00000561: CALLVALUE 00000562: DUP1 00000563: ISZERO 00000564: PUSH2 0x056c 00000567: JUMPI 00000568: PUSH1 0x00 0000056a: DUP1 0000056b: REVERT 0000056c: JUMPDEST 0000056d: POP 0000056e: PUSH2 0x0293 00000571: PUSH2 0x057b 00000574: CALLDATASIZE 00000575: PUSH1 0x04 00000577: PUSH2 0x563f 0000057a: JUMP 0000057b: JUMPDEST 0000057c: PUSH2 0x17c1 0000057f: JUMP 00000580: JUMPDEST 00000581: CALLVALUE 00000582: DUP1 00000583: ISZERO 00000584: PUSH2 0x058c 00000587: JUMPI 00000588: PUSH1 0x00 0000058a: DUP1 0000058b: REVERT 0000058c: JUMPDEST 0000058d: POP 0000058e: PUSH2 0x0293 00000591: PUSH2 0x059b 00000594: CALLDATASIZE 00000595: PUSH1 0x04 00000597: PUSH2 0x565c 0000059a: JUMP 0000059b: JUMPDEST 0000059c: PUSH2 0x19ca 0000059f: JUMP 000005a0: JUMPDEST 000005a1: CALLVALUE 000005a2: DUP1 000005a3: ISZERO 000005a4: PUSH2 0x05ac 000005a7: JUMPI 000005a8: PUSH1 0x00 000005aa: DUP1 000005ab: REVERT 000005ac: JUMPDEST 000005ad: POP 000005ae: PUSH2 0x05fe 000005b1: PUSH2 0x05bb 000005b4: CALLDATASIZE 000005b5: PUSH1 0x04 000005b7: PUSH2 0x5554 000005ba: JUMP 000005bb: JUMPDEST 000005bc: PUSH1 0x34 000005be: PUSH1 0x20 000005c0: MSTORE 000005c1: PUSH1 0x00 000005c3: SWAP1 000005c4: DUP2 000005c5: MSTORE 000005c6: PUSH1 0x40 000005c8: SWAP1 000005c9: KECCAK256 000005ca: DUP1 000005cb: SLOAD 000005cc: PUSH1 0x01 000005ce: SWAP1 000005cf: SWAP2 000005d0: ADD 000005d1: SLOAD 000005d2: PUSH16 0xffffffffffffffffffffffffffffffff 000005e3: DUP1 000005e4: DUP3 000005e5: AND 000005e6: SWAP2 000005e7: PUSH17 0x0100000000000000000000000000000000 000005f9: SWAP1 000005fa: DIV 000005fb: AND 000005fc: DUP4 000005fd: JUMP 000005fe: JUMPDEST 000005ff: PUSH1 0x40 00000601: DUP1 00000602: MLOAD 00000603: SWAP4 00000604: DUP5 00000605: MSTORE 00000606: PUSH16 0xffffffffffffffffffffffffffffffff 00000617: SWAP3 00000618: DUP4 00000619: AND 0000061a: PUSH1 0x20 0000061c: DUP6 0000061d: ADD 0000061e: MSTORE 0000061f: SWAP2 00000620: AND 00000621: SWAP1 00000622: DUP3 00000623: ADD 00000624: MSTORE 00000625: PUSH1 0x60 00000627: ADD 00000628: PUSH2 0x02ef 0000062b: JUMP 0000062c: JUMPDEST 0000062d: CALLVALUE 0000062e: DUP1 0000062f: ISZERO 00000630: PUSH2 0x0638 00000633: JUMPI 00000634: PUSH1 0x00 00000636: DUP1 00000637: REVERT 00000638: JUMPDEST 00000639: POP 0000063a: PUSH2 0x02ce 0000063d: PUSH32 0x000000000000000000000000427ea0710fa5252057f0d88274f7aeb308386caf 0000065e: DUP2 0000065f: JUMP 00000660: JUMPDEST 00000661: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000676: AND 00000677: EXTCODESIZE 00000678: ISZERO 00000679: ISZERO 0000067a: SWAP1 0000067b: JUMP 0000067c: JUMPDEST 0000067d: DUP3 0000067e: PUSH1 0x00 00000680: GAS 00000681: SWAP1 00000682: POP 00000683: DUP4 00000684: ISZERO 00000685: PUSH2 0x072e 00000688: JUMPI 00000689: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000069e: DUP8 0000069f: AND 000006a0: ISZERO 000006a1: PUSH2 0x072e 000006a4: JUMPI 000006a5: PUSH1 0x40 000006a7: DUP1 000006a8: MLOAD 000006a9: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000006ca: DUP2 000006cb: MSTORE 000006cc: PUSH1 0x20 000006ce: PUSH1 0x04 000006d0: DUP3 000006d1: ADD 000006d2: MSTORE 000006d3: PUSH1 0x24 000006d5: DUP2 000006d6: ADD 000006d7: SWAP2 000006d8: SWAP1 000006d9: SWAP2 000006da: MSTORE 000006db: PUSH32 0x4f7074696d69736d506f7274616c3a206d7573742073656e6420746f20616464 000006fc: PUSH1 0x44 000006fe: DUP3 000006ff: ADD 00000700: MSTORE 00000701: PUSH32 0x72657373283029207768656e206372656174696e67206120636f6e7472616374 00000722: PUSH1 0x64 00000724: DUP3 00000725: ADD 00000726: MSTORE 00000727: PUSH1 0x84 00000729: ADD 0000072a: PUSH2 0x01d7 0000072d: JUMP 0000072e: JUMPDEST 0000072f: PUSH2 0x0738 00000732: DUP4 00000733: MLOAD 00000734: PUSH2 0x17a8 00000737: JUMP 00000738: JUMPDEST 00000739: PUSH8 0xffffffffffffffff 00000742: AND 00000743: DUP6 00000744: PUSH8 0xffffffffffffffff 0000074d: AND 0000074e: LT 0000074f: ISZERO 00000750: PUSH2 0x07db 00000753: JUMPI 00000754: PUSH1 0x40 00000756: MLOAD 00000757: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000778: DUP2 00000779: MSTORE 0000077a: PUSH1 0x20 0000077c: PUSH1 0x04 0000077e: DUP3 0000077f: ADD 00000780: MSTORE 00000781: PUSH1 0x23 00000783: PUSH1 0x24 00000785: DUP3 00000786: ADD 00000787: MSTORE 00000788: PUSH32 0x4f7074696d69736d506f7274616c3a20676173206c696d697420746f6f20736d 000007a9: PUSH1 0x44 000007ab: DUP3 000007ac: ADD 000007ad: MSTORE 000007ae: PUSH32 0x616c6c0000000000000000000000000000000000000000000000000000000000 000007cf: PUSH1 0x64 000007d1: DUP3 000007d2: ADD 000007d3: MSTORE 000007d4: PUSH1 0x84 000007d6: ADD 000007d7: PUSH2 0x01d7 000007da: JUMP 000007db: JUMPDEST 000007dc: PUSH3 0x01d4c0 000007e0: DUP4 000007e1: MLOAD 000007e2: GT 000007e3: ISZERO 000007e4: PUSH2 0x0849 000007e7: JUMPI 000007e8: PUSH1 0x40 000007ea: MLOAD 000007eb: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000080c: DUP2 0000080d: MSTORE 0000080e: PUSH1 0x20 00000810: PUSH1 0x04 00000812: DUP3 00000813: ADD 00000814: MSTORE 00000815: PUSH1 0x1e 00000817: PUSH1 0x24 00000819: DUP3 0000081a: ADD 0000081b: MSTORE 0000081c: PUSH32 0x4f7074696d69736d506f7274616c3a206461746120746f6f206c617267650000 0000083d: PUSH1 0x44 0000083f: DUP3 00000840: ADD 00000841: MSTORE 00000842: PUSH1 0x64 00000844: ADD 00000845: PUSH2 0x01d7 00000848: JUMP 00000849: JUMPDEST 0000084a: DUP8 0000084b: ISZERO 0000084c: PUSH2 0x0891 0000084f: JUMPI 00000850: PUSH2 0x0891 00000853: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000868: PUSH32 0x0000000000000000000000003c3a81e81dc49a522a592e7622a7e711c06bf354 00000889: AND 0000088a: CALLER 0000088b: ADDRESS 0000088c: DUP12 0000088d: PUSH2 0x2030 00000890: JUMP 00000891: JUMPDEST 00000892: CALLER 00000893: ORIGIN 00000894: DUP2 00000895: EQ 00000896: PUSH2 0x08b2 00000899: JUMPI 0000089a: POP 0000089b: CALLER 0000089c: PUSH20 0x1111000000000000000000000000000000001111 000008b1: ADD 000008b2: JUMPDEST 000008b3: PUSH1 0x00 000008b5: DUP10 000008b6: DUP9 000008b7: CALLVALUE 000008b8: DUP14 000008b9: DUP11 000008ba: DUP11 000008bb: DUP11 000008bc: PUSH1 0x40 000008be: MLOAD 000008bf: PUSH1 0x20 000008c1: ADD 000008c2: PUSH2 0x08d1 000008c5: SWAP8 000008c6: SWAP7 000008c7: SWAP6 000008c8: SWAP5 000008c9: SWAP4 000008ca: SWAP3 000008cb: SWAP2 000008cc: SWAP1 000008cd: PUSH2 0x5738 000008d0: JUMP 000008d1: JUMPDEST 000008d2: PUSH1 0x40 000008d4: MLOAD 000008d5: PUSH1 0x20 000008d7: DUP2 000008d8: DUP4 000008d9: SUB 000008da: SUB 000008db: DUP2 000008dc: MSTORE 000008dd: SWAP1 000008de: PUSH1 0x40 000008e0: MSTORE 000008e1: SWAP1 000008e2: POP 000008e3: PUSH1 0x01 000008e5: DUP10 000008e6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000008fb: AND 000008fc: DUP4 000008fd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000912: AND 00000913: PUSH32 0xb3813568d9991fc951961fcb4c784893574240a28925604d09fc577c55bb7c32 00000934: DUP5 00000935: PUSH1 0x40 00000937: MLOAD 00000938: PUSH2 0x0941 0000093b: SWAP2 0000093c: SWAP1 0000093d: PUSH2 0x5541 00000940: JUMP 00000941: JUMPDEST 00000942: PUSH1 0x40 00000944: MLOAD 00000945: DUP1 00000946: SWAP2 00000947: SUB 00000948: SWAP1 00000949: LOG4 0000094a: POP 0000094b: POP 0000094c: PUSH2 0x0955 0000094f: DUP3 00000950: DUP3 00000951: PUSH2 0x20cb 00000954: JUMP 00000955: JUMPDEST 00000956: POP 00000957: POP 00000958: POP 00000959: POP 0000095a: POP 0000095b: POP 0000095c: POP 0000095d: POP 0000095e: POP 0000095f: JUMP 00000960: JUMPDEST 00000961: PUSH1 0x35 00000963: SLOAD 00000964: PUSH1 0xff 00000966: AND 00000967: ISZERO 00000968: PUSH2 0x09cd 0000096b: JUMPI 0000096c: PUSH1 0x40 0000096e: MLOAD 0000096f: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000990: DUP2 00000991: MSTORE 00000992: PUSH1 0x20 00000994: PUSH1 0x04 00000996: DUP3 00000997: ADD 00000998: MSTORE 00000999: PUSH1 0x16 0000099b: PUSH1 0x24 0000099d: DUP3 0000099e: ADD 0000099f: MSTORE 000009a0: PUSH32 0x4f7074696d69736d506f7274616c3a2070617573656400000000000000000000 000009c1: PUSH1 0x44 000009c3: DUP3 000009c4: ADD 000009c5: MSTORE 000009c6: PUSH1 0x64 000009c8: ADD 000009c9: PUSH2 0x01d7 000009cc: JUMP 000009cd: JUMPDEST 000009ce: PUSH1 0x32 000009d0: SLOAD 000009d1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000009e6: AND 000009e7: PUSH2 0xdead 000009ea: EQ 000009eb: PUSH2 0x0a76 000009ee: JUMPI 000009ef: PUSH1 0x40 000009f1: MLOAD 000009f2: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000a13: DUP2 00000a14: MSTORE 00000a15: PUSH1 0x20 00000a17: PUSH1 0x04 00000a19: DUP3 00000a1a: ADD 00000a1b: MSTORE 00000a1c: PUSH1 0x3f 00000a1e: PUSH1 0x24 00000a20: DUP3 00000a21: ADD 00000a22: MSTORE 00000a23: PUSH32 0x4f7074696d69736d506f7274616c3a2063616e206f6e6c792074726967676572 00000a44: PUSH1 0x44 00000a46: DUP3 00000a47: ADD 00000a48: MSTORE 00000a49: PUSH32 0x206f6e65207769746864726177616c20706572207472616e73616374696f6e00 00000a6a: PUSH1 0x64 00000a6c: DUP3 00000a6d: ADD 00000a6e: MSTORE 00000a6f: PUSH1 0x84 00000a71: ADD 00000a72: PUSH2 0x01d7 00000a75: JUMP 00000a76: JUMPDEST 00000a77: PUSH1 0x00 00000a79: PUSH2 0x0a81 00000a7c: DUP3 00000a7d: PUSH2 0x23f8 00000a80: JUMP 00000a81: JUMPDEST 00000a82: PUSH1 0x00 00000a84: DUP2 00000a85: DUP2 00000a86: MSTORE 00000a87: PUSH1 0x34 00000a89: PUSH1 0x20 00000a8b: SWAP1 00000a8c: DUP2 00000a8d: MSTORE 00000a8e: PUSH1 0x40 00000a90: DUP1 00000a91: DUP4 00000a92: KECCAK256 00000a93: DUP2 00000a94: MLOAD 00000a95: PUSH1 0x60 00000a97: DUP2 00000a98: ADD 00000a99: DUP4 00000a9a: MSTORE 00000a9b: DUP2 00000a9c: SLOAD 00000a9d: DUP2 00000a9e: MSTORE 00000a9f: PUSH1 0x01 00000aa1: SWAP1 00000aa2: SWAP2 00000aa3: ADD 00000aa4: SLOAD 00000aa5: PUSH16 0xffffffffffffffffffffffffffffffff 00000ab6: DUP1 00000ab7: DUP3 00000ab8: AND 00000ab9: SWAP5 00000aba: DUP4 00000abb: ADD 00000abc: DUP6 00000abd: SWAP1 00000abe: MSTORE 00000abf: PUSH17 0x0100000000000000000000000000000000 00000ad1: SWAP1 00000ad2: SWAP2 00000ad3: DIV 00000ad4: AND 00000ad5: SWAP2 00000ad6: DUP2 00000ad7: ADD 00000ad8: SWAP2 00000ad9: SWAP1 00000ada: SWAP2 00000adb: MSTORE 00000adc: SWAP3 00000add: SWAP4 00000ade: POP 00000adf: SWAP1 00000ae0: SUB 00000ae1: PUSH2 0x0b6c 00000ae4: JUMPI 00000ae5: PUSH1 0x40 00000ae7: MLOAD 00000ae8: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000b09: DUP2 00000b0a: MSTORE 00000b0b: PUSH1 0x20 00000b0d: PUSH1 0x04 00000b0f: DUP3 00000b10: ADD 00000b11: MSTORE 00000b12: PUSH1 0x32 00000b14: PUSH1 0x24 00000b16: DUP3 00000b17: ADD 00000b18: MSTORE 00000b19: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c20686173206e 00000b3a: PUSH1 0x44 00000b3c: DUP3 00000b3d: ADD 00000b3e: MSTORE 00000b3f: PUSH32 0x6f74206265656e2070726f76656e207965740000000000000000000000000000 00000b60: PUSH1 0x64 00000b62: DUP3 00000b63: ADD 00000b64: MSTORE 00000b65: PUSH1 0x84 00000b67: ADD 00000b68: PUSH2 0x01d7 00000b6b: JUMP 00000b6c: JUMPDEST 00000b6d: PUSH32 0x00000000000000000000000031d543e7be1da6efdc2206ef7822879045b9f481 00000b8e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000ba3: AND 00000ba4: PUSH4 0x88786272 00000ba9: PUSH1 0x40 00000bab: MLOAD 00000bac: DUP2 00000bad: PUSH4 0xffffffff 00000bb2: AND 00000bb3: PUSH1 0xe0 00000bb5: SHL 00000bb6: DUP2 00000bb7: MSTORE 00000bb8: PUSH1 0x04 00000bba: ADD 00000bbb: PUSH1 0x20 00000bbd: PUSH1 0x40 00000bbf: MLOAD 00000bc0: DUP1 00000bc1: DUP4 00000bc2: SUB 00000bc3: DUP2 00000bc4: DUP7 00000bc5: GAS 00000bc6: STATICCALL 00000bc7: ISZERO 00000bc8: DUP1 00000bc9: ISZERO 00000bca: PUSH2 0x0bd7 00000bcd: JUMPI 00000bce: RETURNDATASIZE 00000bcf: PUSH1 0x00 00000bd1: DUP1 00000bd2: RETURNDATACOPY 00000bd3: RETURNDATASIZE 00000bd4: PUSH1 0x00 00000bd6: REVERT 00000bd7: JUMPDEST 00000bd8: POP 00000bd9: POP 00000bda: POP 00000bdb: POP 00000bdc: PUSH1 0x40 00000bde: MLOAD 00000bdf: RETURNDATASIZE 00000be0: PUSH1 0x1f 00000be2: NOT 00000be3: PUSH1 0x1f 00000be5: DUP3 00000be6: ADD 00000be7: AND 00000be8: DUP3 00000be9: ADD 00000bea: DUP1 00000beb: PUSH1 0x40 00000bed: MSTORE 00000bee: POP 00000bef: DUP2 00000bf0: ADD 00000bf1: SWAP1 00000bf2: PUSH2 0x0bfb 00000bf5: SWAP2 00000bf6: SWAP1 00000bf7: PUSH2 0x57ab 00000bfa: JUMP 00000bfb: JUMPDEST 00000bfc: DUP2 00000bfd: PUSH1 0x20 00000bff: ADD 00000c00: MLOAD 00000c01: PUSH16 0xffffffffffffffffffffffffffffffff 00000c12: AND 00000c13: LT 00000c14: ISZERO 00000c15: PUSH2 0x0cc6 00000c18: JUMPI 00000c19: PUSH1 0x40 00000c1b: MLOAD 00000c1c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000c3d: DUP2 00000c3e: MSTORE 00000c3f: PUSH1 0x20 00000c41: PUSH1 0x04 00000c43: DUP3 00000c44: ADD 00000c45: MSTORE 00000c46: PUSH1 0x4b 00000c48: PUSH1 0x24 00000c4a: DUP3 00000c4b: ADD 00000c4c: MSTORE 00000c4d: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c2074696d6573 00000c6e: PUSH1 0x44 00000c70: DUP3 00000c71: ADD 00000c72: MSTORE 00000c73: PUSH32 0x74616d70206c657373207468616e204c32204f7261636c65207374617274696e 00000c94: PUSH1 0x64 00000c96: DUP3 00000c97: ADD 00000c98: MSTORE 00000c99: PUSH32 0x672074696d657374616d70000000000000000000000000000000000000000000 00000cba: PUSH1 0x84 00000cbc: DUP3 00000cbd: ADD 00000cbe: MSTORE 00000cbf: PUSH1 0xa4 00000cc1: ADD 00000cc2: PUSH2 0x01d7 00000cc5: JUMP 00000cc6: JUMPDEST 00000cc7: PUSH2 0x0ce5 00000cca: DUP2 00000ccb: PUSH1 0x20 00000ccd: ADD 00000cce: MLOAD 00000ccf: PUSH16 0xffffffffffffffffffffffffffffffff 00000ce0: AND 00000ce1: PUSH2 0x244a 00000ce4: JUMP 00000ce5: JUMPDEST 00000ce6: PUSH2 0x0d97 00000ce9: JUMPI 00000cea: PUSH1 0x40 00000cec: MLOAD 00000ced: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000d0e: DUP2 00000d0f: MSTORE 00000d10: PUSH1 0x20 00000d12: PUSH1 0x04 00000d14: DUP3 00000d15: ADD 00000d16: MSTORE 00000d17: PUSH1 0x45 00000d19: PUSH1 0x24 00000d1b: DUP3 00000d1c: ADD 00000d1d: MSTORE 00000d1e: PUSH32 0x4f7074696d69736d506f7274616c3a2070726f76656e20776974686472617761 00000d3f: PUSH1 0x44 00000d41: DUP3 00000d42: ADD 00000d43: MSTORE 00000d44: PUSH32 0x6c2066696e616c697a6174696f6e20706572696f6420686173206e6f7420656c 00000d65: PUSH1 0x64 00000d67: DUP3 00000d68: ADD 00000d69: MSTORE 00000d6a: PUSH32 0x6170736564000000000000000000000000000000000000000000000000000000 00000d8b: PUSH1 0x84 00000d8d: DUP3 00000d8e: ADD 00000d8f: MSTORE 00000d90: PUSH1 0xa4 00000d92: ADD 00000d93: PUSH2 0x01d7 00000d96: JUMP 00000d97: JUMPDEST 00000d98: PUSH1 0x40 00000d9a: DUP2 00000d9b: DUP2 00000d9c: ADD 00000d9d: MLOAD 00000d9e: SWAP1 00000d9f: MLOAD 00000da0: PUSH32 0xa25ae55700000000000000000000000000000000000000000000000000000000 00000dc1: DUP2 00000dc2: MSTORE 00000dc3: PUSH16 0xffffffffffffffffffffffffffffffff 00000dd4: SWAP1 00000dd5: SWAP2 00000dd6: AND 00000dd7: PUSH1 0x04 00000dd9: DUP3 00000dda: ADD 00000ddb: MSTORE 00000ddc: PUSH1 0x00 00000dde: SWAP1 00000ddf: PUSH32 0x00000000000000000000000031d543e7be1da6efdc2206ef7822879045b9f481 00000e00: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e15: AND 00000e16: SWAP1 00000e17: PUSH4 0xa25ae557 00000e1c: SWAP1 00000e1d: PUSH1 0x24 00000e1f: ADD 00000e20: PUSH1 0x60 00000e22: PUSH1 0x40 00000e24: MLOAD 00000e25: DUP1 00000e26: DUP4 00000e27: SUB 00000e28: DUP2 00000e29: DUP7 00000e2a: GAS 00000e2b: STATICCALL 00000e2c: ISZERO 00000e2d: DUP1 00000e2e: ISZERO 00000e2f: PUSH2 0x0e3c 00000e32: JUMPI 00000e33: RETURNDATASIZE 00000e34: PUSH1 0x00 00000e36: DUP1 00000e37: RETURNDATACOPY 00000e38: RETURNDATASIZE 00000e39: PUSH1 0x00 00000e3b: REVERT 00000e3c: JUMPDEST 00000e3d: POP 00000e3e: POP 00000e3f: POP 00000e40: POP 00000e41: PUSH1 0x40 00000e43: MLOAD 00000e44: RETURNDATASIZE 00000e45: PUSH1 0x1f 00000e47: NOT 00000e48: PUSH1 0x1f 00000e4a: DUP3 00000e4b: ADD 00000e4c: AND 00000e4d: DUP3 00000e4e: ADD 00000e4f: DUP1 00000e50: PUSH1 0x40 00000e52: MSTORE 00000e53: POP 00000e54: DUP2 00000e55: ADD 00000e56: SWAP1 00000e57: PUSH2 0x0e60 00000e5a: SWAP2 00000e5b: SWAP1 00000e5c: PUSH2 0x57e4 00000e5f: JUMP 00000e60: JUMPDEST 00000e61: DUP3 00000e62: MLOAD 00000e63: DUP2 00000e64: MLOAD 00000e65: SWAP2 00000e66: SWAP3 00000e67: POP 00000e68: EQ 00000e69: PUSH2 0x0f1a 00000e6c: JUMPI 00000e6d: PUSH1 0x40 00000e6f: MLOAD 00000e70: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000e91: DUP2 00000e92: MSTORE 00000e93: PUSH1 0x20 00000e95: PUSH1 0x04 00000e97: DUP3 00000e98: ADD 00000e99: MSTORE 00000e9a: PUSH1 0x49 00000e9c: PUSH1 0x24 00000e9e: DUP3 00000e9f: ADD 00000ea0: MSTORE 00000ea1: PUSH32 0x4f7074696d69736d506f7274616c3a206f757470757420726f6f742070726f76 00000ec2: PUSH1 0x44 00000ec4: DUP3 00000ec5: ADD 00000ec6: MSTORE 00000ec7: PUSH32 0x656e206973206e6f74207468652073616d652061732063757272656e74206f75 00000ee8: PUSH1 0x64 00000eea: DUP3 00000eeb: ADD 00000eec: MSTORE 00000eed: PUSH32 0x7470757420726f6f740000000000000000000000000000000000000000000000 00000f0e: PUSH1 0x84 00000f10: DUP3 00000f11: ADD 00000f12: MSTORE 00000f13: PUSH1 0xa4 00000f15: ADD 00000f16: PUSH2 0x01d7 00000f19: JUMP 00000f1a: JUMPDEST 00000f1b: PUSH2 0x0f39 00000f1e: DUP2 00000f1f: PUSH1 0x20 00000f21: ADD 00000f22: MLOAD 00000f23: PUSH16 0xffffffffffffffffffffffffffffffff 00000f34: AND 00000f35: PUSH2 0x244a 00000f38: JUMP 00000f39: JUMPDEST 00000f3a: PUSH2 0x0feb 00000f3d: JUMPI 00000f3e: PUSH1 0x40 00000f40: MLOAD 00000f41: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000f62: DUP2 00000f63: MSTORE 00000f64: PUSH1 0x20 00000f66: PUSH1 0x04 00000f68: DUP3 00000f69: ADD 00000f6a: MSTORE 00000f6b: PUSH1 0x43 00000f6d: PUSH1 0x24 00000f6f: DUP3 00000f70: ADD 00000f71: MSTORE 00000f72: PUSH32 0x4f7074696d69736d506f7274616c3a206f75747075742070726f706f73616c20 00000f93: PUSH1 0x44 00000f95: DUP3 00000f96: ADD 00000f97: MSTORE 00000f98: PUSH32 0x66696e616c697a6174696f6e20706572696f6420686173206e6f7420656c6170 00000fb9: PUSH1 0x64 00000fbb: DUP3 00000fbc: ADD 00000fbd: MSTORE 00000fbe: PUSH32 0x7365640000000000000000000000000000000000000000000000000000000000 00000fdf: PUSH1 0x84 00000fe1: DUP3 00000fe2: ADD 00000fe3: MSTORE 00000fe4: PUSH1 0xa4 00000fe6: ADD 00000fe7: PUSH2 0x01d7 00000fea: JUMP 00000feb: JUMPDEST 00000fec: PUSH1 0x00 00000fee: DUP4 00000fef: DUP2 00000ff0: MSTORE 00000ff1: PUSH1 0x33 00000ff3: PUSH1 0x20 00000ff5: MSTORE 00000ff6: PUSH1 0x40 00000ff8: SWAP1 00000ff9: KECCAK256 00000ffa: SLOAD 00000ffb: PUSH1 0xff 00000ffd: AND 00000ffe: ISZERO 00000fff: PUSH2 0x108a 00001002: JUMPI 00001003: PUSH1 0x40 00001005: MLOAD 00001006: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001027: DUP2 00001028: MSTORE 00001029: PUSH1 0x20 0000102b: PUSH1 0x04 0000102d: DUP3 0000102e: ADD 0000102f: MSTORE 00001030: PUSH1 0x35 00001032: PUSH1 0x24 00001034: DUP3 00001035: ADD 00001036: MSTORE 00001037: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c206861732061 00001058: PUSH1 0x44 0000105a: DUP3 0000105b: ADD 0000105c: MSTORE 0000105d: PUSH32 0x6c7265616479206265656e2066696e616c697a65640000000000000000000000 0000107e: PUSH1 0x64 00001080: DUP3 00001081: ADD 00001082: MSTORE 00001083: PUSH1 0x84 00001085: ADD 00001086: PUSH2 0x01d7 00001089: JUMP 0000108a: JUMPDEST 0000108b: PUSH1 0x00 0000108d: DUP4 0000108e: DUP2 0000108f: MSTORE 00001090: PUSH1 0x33 00001092: PUSH1 0x20 00001094: SWAP1 00001095: DUP2 00001096: MSTORE 00001097: PUSH1 0x40 00001099: SWAP1 0000109a: SWAP2 0000109b: KECCAK256 0000109c: DUP1 0000109d: SLOAD 0000109e: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 000010bf: AND 000010c0: PUSH1 0x01 000010c2: OR 000010c3: SWAP1 000010c4: SSTORE 000010c5: DUP5 000010c6: ADD 000010c7: MLOAD 000010c8: PUSH1 0x32 000010ca: DUP1 000010cb: SLOAD 000010cc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000010e1: SWAP1 000010e2: SWAP3 000010e3: AND 000010e4: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 00001105: SWAP1 00001106: SWAP3 00001107: AND 00001108: SWAP2 00001109: SWAP1 0000110a: SWAP2 0000110b: OR 0000110c: SWAP1 0000110d: SSTORE 0000110e: PUSH1 0x60 00001110: DUP5 00001111: ADD 00001112: MLOAD 00001113: ISZERO 00001114: PUSH2 0x11dd 00001117: JUMPI 00001118: PUSH1 0x40 0000111a: DUP1 0000111b: DUP6 0000111c: ADD 0000111d: MLOAD 0000111e: PUSH1 0x60 00001120: DUP7 00001121: ADD 00001122: MLOAD 00001123: SWAP2 00001124: MLOAD 00001125: PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000 00001146: DUP2 00001147: MSTORE 00001148: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000115d: SWAP2 0000115e: DUP3 0000115f: AND 00001160: PUSH1 0x04 00001162: DUP3 00001163: ADD 00001164: MSTORE 00001165: PUSH1 0x24 00001167: DUP2 00001168: ADD 00001169: SWAP3 0000116a: SWAP1 0000116b: SWAP3 0000116c: MSTORE 0000116d: PUSH32 0x0000000000000000000000003c3a81e81dc49a522a592e7622a7e711c06bf354 0000118e: AND 0000118f: SWAP1 00001190: PUSH4 0xa9059cbb 00001195: SWAP1 00001196: PUSH1 0x44 00001198: ADD 00001199: PUSH1 0x20 0000119b: PUSH1 0x40 0000119d: MLOAD 0000119e: DUP1 0000119f: DUP4 000011a0: SUB 000011a1: DUP2 000011a2: PUSH1 0x00 000011a4: DUP8 000011a5: GAS 000011a6: CALL 000011a7: ISZERO 000011a8: DUP1 000011a9: ISZERO 000011aa: PUSH2 0x11b7 000011ad: JUMPI 000011ae: RETURNDATASIZE 000011af: PUSH1 0x00 000011b1: DUP1 000011b2: RETURNDATACOPY 000011b3: RETURNDATASIZE 000011b4: PUSH1 0x00 000011b6: REVERT 000011b7: JUMPDEST 000011b8: POP 000011b9: POP 000011ba: POP 000011bb: POP 000011bc: PUSH1 0x40 000011be: MLOAD 000011bf: RETURNDATASIZE 000011c0: PUSH1 0x1f 000011c2: NOT 000011c3: PUSH1 0x1f 000011c5: DUP3 000011c6: ADD 000011c7: AND 000011c8: DUP3 000011c9: ADD 000011ca: DUP1 000011cb: PUSH1 0x40 000011cd: MSTORE 000011ce: POP 000011cf: DUP2 000011d0: ADD 000011d1: SWAP1 000011d2: PUSH2 0x11db 000011d5: SWAP2 000011d6: SWAP1 000011d7: PUSH2 0x5849 000011da: JUMP 000011db: JUMPDEST 000011dc: POP 000011dd: JUMPDEST 000011de: PUSH32 0x0000000000000000000000003c3a81e81dc49a522a592e7622a7e711c06bf354 000011ff: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001214: AND 00001215: DUP5 00001216: PUSH1 0x40 00001218: ADD 00001219: MLOAD 0000121a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000122f: AND 00001230: SUB 00001231: PUSH2 0x12bc 00001234: JUMPI 00001235: PUSH1 0x40 00001237: MLOAD 00001238: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001259: DUP2 0000125a: MSTORE 0000125b: PUSH1 0x20 0000125d: PUSH1 0x04 0000125f: DUP3 00001260: ADD 00001261: MSTORE 00001262: PUSH1 0x27 00001264: PUSH1 0x24 00001266: DUP3 00001267: ADD 00001268: MSTORE 00001269: PUSH32 0x4469726563746c792063616c6c696e67204d4e5420546f6b656e20697320666f 0000128a: PUSH1 0x44 0000128c: DUP3 0000128d: ADD 0000128e: MSTORE 0000128f: PUSH32 0x7262696464656e00000000000000000000000000000000000000000000000000 000012b0: PUSH1 0x64 000012b2: DUP3 000012b3: ADD 000012b4: MSTORE 000012b5: PUSH1 0x84 000012b7: ADD 000012b8: PUSH2 0x01d7 000012bb: JUMP 000012bc: JUMPDEST 000012bd: PUSH1 0x00 000012bf: PUSH2 0x12da 000012c2: DUP6 000012c3: PUSH1 0x40 000012c5: ADD 000012c6: MLOAD 000012c7: DUP7 000012c8: PUSH1 0xa0 000012ca: ADD 000012cb: MLOAD 000012cc: DUP8 000012cd: PUSH1 0x80 000012cf: ADD 000012d0: MLOAD 000012d1: DUP9 000012d2: PUSH1 0xc0 000012d4: ADD 000012d5: MLOAD 000012d6: PUSH2 0x24ed 000012d9: JUMP 000012da: JUMPDEST 000012db: PUSH1 0x32 000012dd: DUP1 000012de: SLOAD 000012df: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 00001300: AND 00001301: PUSH2 0xdead 00001304: OR 00001305: SWAP1 00001306: SSTORE 00001307: PUSH1 0x40 00001309: MLOAD 0000130a: SWAP1 0000130b: SWAP2 0000130c: POP 0000130d: DUP5 0000130e: SWAP1 0000130f: PUSH32 0xdb5c7652857aa163daadd670e116628fb42e869d8ac4251ef8971d9e5727df1b 00001330: SWAP1 00001331: PUSH2 0x133f 00001334: SWAP1 00001335: DUP5 00001336: ISZERO 00001337: ISZERO 00001338: DUP2 00001339: MSTORE 0000133a: PUSH1 0x20 0000133c: ADD 0000133d: SWAP1 0000133e: JUMP 0000133f: JUMPDEST 00001340: PUSH1 0x40 00001342: MLOAD 00001343: DUP1 00001344: SWAP2 00001345: SUB 00001346: SWAP1 00001347: LOG2 00001348: DUP1 00001349: ISZERO 0000134a: DUP1 0000134b: ISZERO 0000134c: PUSH2 0x1355 0000134f: JUMPI 00001350: POP 00001351: ORIGIN 00001352: PUSH1 0x01 00001354: EQ 00001355: JUMPDEST 00001356: ISZERO 00001357: PUSH2 0x13e2 0000135a: JUMPI 0000135b: PUSH1 0x40 0000135d: MLOAD 0000135e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000137f: DUP2 00001380: MSTORE 00001381: PUSH1 0x20 00001383: PUSH1 0x04 00001385: DUP3 00001386: ADD 00001387: MSTORE 00001388: PUSH1 0x21 0000138a: PUSH1 0x24 0000138c: DUP3 0000138d: ADD 0000138e: MSTORE 0000138f: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c206661696c65 000013b0: PUSH1 0x44 000013b2: DUP3 000013b3: ADD 000013b4: MSTORE 000013b5: PUSH32 0x6400000000000000000000000000000000000000000000000000000000000000 000013d6: PUSH1 0x64 000013d8: DUP3 000013d9: ADD 000013da: MSTORE 000013db: PUSH1 0x84 000013dd: ADD 000013de: PUSH2 0x01d7 000013e1: JUMP 000013e2: JUMPDEST 000013e3: POP 000013e4: POP 000013e5: POP 000013e6: POP 000013e7: POP 000013e8: JUMP 000013e9: JUMPDEST 000013ea: CALLER 000013eb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001400: PUSH32 0x0000000000000000000000002f44bd2a54ac3fb20cd7783cf94334069641dac9 00001421: AND 00001422: EQ 00001423: PUSH2 0x14ae 00001426: JUMPI 00001427: PUSH1 0x40 00001429: MLOAD 0000142a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000144b: DUP2 0000144c: MSTORE 0000144d: PUSH1 0x20 0000144f: PUSH1 0x04 00001451: DUP3 00001452: ADD 00001453: MSTORE 00001454: PUSH1 0x29 00001456: PUSH1 0x24 00001458: DUP3 00001459: ADD 0000145a: MSTORE 0000145b: PUSH32 0x4f7074696d69736d506f7274616c3a206f6e6c7920677561726469616e206361 0000147c: PUSH1 0x44 0000147e: DUP3 0000147f: ADD 00001480: MSTORE 00001481: PUSH32 0x6e20756e70617573650000000000000000000000000000000000000000000000 000014a2: PUSH1 0x64 000014a4: DUP3 000014a5: ADD 000014a6: MSTORE 000014a7: PUSH1 0x84 000014a9: ADD 000014aa: PUSH2 0x01d7 000014ad: JUMP 000014ae: JUMPDEST 000014af: PUSH1 0x35 000014b1: DUP1 000014b2: SLOAD 000014b3: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 000014d4: AND 000014d5: SWAP1 000014d6: SSTORE 000014d7: PUSH1 0x40 000014d9: MLOAD 000014da: CALLER 000014db: DUP2 000014dc: MSTORE 000014dd: PUSH32 0x5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa 000014fe: SWAP1 000014ff: PUSH1 0x20 00001501: ADD 00001502: JUMPDEST 00001503: PUSH1 0x40 00001505: MLOAD 00001506: DUP1 00001507: SWAP2 00001508: SUB 00001509: SWAP1 0000150a: LOG1 0000150b: JUMP 0000150c: JUMPDEST 0000150d: PUSH1 0x60 0000150f: PUSH2 0x1537 00001512: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001 00001533: PUSH2 0x254b 00001536: JUMP 00001537: JUMPDEST 00001538: PUSH2 0x1560 0000153b: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000007 0000155c: PUSH2 0x254b 0000155f: JUMP 00001560: JUMPDEST 00001561: PUSH2 0x1589 00001564: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000000 00001585: PUSH2 0x254b 00001588: JUMP 00001589: JUMPDEST 0000158a: PUSH1 0x40 0000158c: MLOAD 0000158d: PUSH1 0x20 0000158f: ADD 00001590: PUSH2 0x159b 00001593: SWAP4 00001594: SWAP3 00001595: SWAP2 00001596: SWAP1 00001597: PUSH2 0x5866 0000159a: JUMP 0000159b: JUMPDEST 0000159c: PUSH1 0x40 0000159e: MLOAD 0000159f: PUSH1 0x20 000015a1: DUP2 000015a2: DUP4 000015a3: SUB 000015a4: SUB 000015a5: DUP2 000015a6: MSTORE 000015a7: SWAP1 000015a8: PUSH1 0x40 000015aa: MSTORE 000015ab: SWAP1 000015ac: POP 000015ad: SWAP1 000015ae: JUMP 000015af: JUMPDEST 000015b0: PUSH1 0x40 000015b2: MLOAD 000015b3: PUSH32 0xa25ae55700000000000000000000000000000000000000000000000000000000 000015d4: DUP2 000015d5: MSTORE 000015d6: PUSH1 0x04 000015d8: DUP2 000015d9: ADD 000015da: DUP3 000015db: SWAP1 000015dc: MSTORE 000015dd: PUSH1 0x00 000015df: SWAP1 000015e0: PUSH2 0x1680 000015e3: SWAP1 000015e4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000015f9: PUSH32 0x00000000000000000000000031d543e7be1da6efdc2206ef7822879045b9f481 0000161a: AND 0000161b: SWAP1 0000161c: PUSH4 0xa25ae557 00001621: SWAP1 00001622: PUSH1 0x24 00001624: ADD 00001625: PUSH1 0x60 00001627: PUSH1 0x40 00001629: MLOAD 0000162a: DUP1 0000162b: DUP4 0000162c: SUB 0000162d: DUP2 0000162e: DUP7 0000162f: GAS 00001630: STATICCALL 00001631: ISZERO 00001632: DUP1 00001633: ISZERO 00001634: PUSH2 0x1641 00001637: JUMPI 00001638: RETURNDATASIZE 00001639: PUSH1 0x00 0000163b: DUP1 0000163c: RETURNDATACOPY 0000163d: RETURNDATASIZE 0000163e: PUSH1 0x00 00001640: REVERT 00001641: JUMPDEST 00001642: POP 00001643: POP 00001644: POP 00001645: POP 00001646: PUSH1 0x40 00001648: MLOAD 00001649: RETURNDATASIZE 0000164a: PUSH1 0x1f 0000164c: NOT 0000164d: PUSH1 0x1f 0000164f: DUP3 00001650: ADD 00001651: AND 00001652: DUP3 00001653: ADD 00001654: DUP1 00001655: PUSH1 0x40 00001657: MSTORE 00001658: POP 00001659: DUP2 0000165a: ADD 0000165b: SWAP1 0000165c: PUSH2 0x1665 0000165f: SWAP2 00001660: SWAP1 00001661: PUSH2 0x57e4 00001664: JUMP 00001665: JUMPDEST 00001666: PUSH1 0x20 00001668: ADD 00001669: MLOAD 0000166a: PUSH16 0xffffffffffffffffffffffffffffffff 0000167b: AND 0000167c: PUSH2 0x244a 0000167f: JUMP 00001680: JUMPDEST 00001681: SWAP3 00001682: SWAP2 00001683: POP 00001684: POP 00001685: JUMP 00001686: JUMPDEST 00001687: CALLER 00001688: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000169d: PUSH32 0x0000000000000000000000002f44bd2a54ac3fb20cd7783cf94334069641dac9 000016be: AND 000016bf: EQ 000016c0: PUSH2 0x174b 000016c3: JUMPI 000016c4: PUSH1 0x40 000016c6: MLOAD 000016c7: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000016e8: DUP2 000016e9: MSTORE 000016ea: PUSH1 0x20 000016ec: PUSH1 0x04 000016ee: DUP3 000016ef: ADD 000016f0: MSTORE 000016f1: PUSH1 0x27 000016f3: PUSH1 0x24 000016f5: DUP3 000016f6: ADD 000016f7: MSTORE 000016f8: PUSH32 0x4f7074696d69736d506f7274616c3a206f6e6c7920677561726469616e206361 00001719: PUSH1 0x44 0000171b: DUP3 0000171c: ADD 0000171d: MSTORE 0000171e: PUSH32 0x6e20706175736500000000000000000000000000000000000000000000000000 0000173f: PUSH1 0x64 00001741: DUP3 00001742: ADD 00001743: MSTORE 00001744: PUSH1 0x84 00001746: ADD 00001747: PUSH2 0x01d7 0000174a: JUMP 0000174b: JUMPDEST 0000174c: PUSH1 0x35 0000174e: DUP1 0000174f: SLOAD 00001750: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 00001771: AND 00001772: PUSH1 0x01 00001774: OR 00001775: SWAP1 00001776: SSTORE 00001777: PUSH1 0x40 00001779: MLOAD 0000177a: CALLER 0000177b: DUP2 0000177c: MSTORE 0000177d: PUSH32 0x62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258 0000179e: SWAP1 0000179f: PUSH1 0x20 000017a1: ADD 000017a2: PUSH2 0x1502 000017a5: JUMP 000017a6: JUMPDEST 000017a7: JUMP 000017a8: JUMPDEST 000017a9: PUSH1 0x00 000017ab: PUSH2 0x17b5 000017ae: DUP3 000017af: PUSH1 0x10 000017b1: PUSH2 0x590b 000017b4: JUMP 000017b5: JUMPDEST 000017b6: PUSH2 0x1680 000017b9: SWAP1 000017ba: PUSH2 0x5208 000017bd: PUSH2 0x593b 000017c0: JUMP 000017c1: JUMPDEST 000017c2: PUSH1 0x00 000017c4: SLOAD 000017c5: PUSH2 0x0100 000017c8: SWAP1 000017c9: DIV 000017ca: PUSH1 0xff 000017cc: AND 000017cd: ISZERO 000017ce: DUP1 000017cf: DUP1 000017d0: ISZERO 000017d1: PUSH2 0x17e1 000017d4: JUMPI 000017d5: POP 000017d6: PUSH1 0x00 000017d8: SLOAD 000017d9: PUSH1 0x01 000017db: PUSH1 0xff 000017dd: SWAP1 000017de: SWAP2 000017df: AND 000017e0: LT 000017e1: JUMPDEST 000017e2: DUP1 000017e3: PUSH2 0x17fb 000017e6: JUMPI 000017e7: POP 000017e8: ADDRESS 000017e9: EXTCODESIZE 000017ea: ISZERO 000017eb: DUP1 000017ec: ISZERO 000017ed: PUSH2 0x17fb 000017f0: JUMPI 000017f1: POP 000017f2: PUSH1 0x00 000017f4: SLOAD 000017f5: PUSH1 0xff 000017f7: AND 000017f8: PUSH1 0x01 000017fa: EQ 000017fb: JUMPDEST 000017fc: PUSH2 0x1887 000017ff: JUMPI 00001800: PUSH1 0x40 00001802: MLOAD 00001803: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001824: DUP2 00001825: MSTORE 00001826: PUSH1 0x20 00001828: PUSH1 0x04 0000182a: DUP3 0000182b: ADD 0000182c: MSTORE 0000182d: PUSH1 0x2e 0000182f: PUSH1 0x24 00001831: DUP3 00001832: ADD 00001833: MSTORE 00001834: PUSH32 0x496e697469616c697a61626c653a20636f6e747261637420697320616c726561 00001855: PUSH1 0x44 00001857: DUP3 00001858: ADD 00001859: MSTORE 0000185a: PUSH32 0x647920696e697469616c697a6564000000000000000000000000000000000000 0000187b: PUSH1 0x64 0000187d: DUP3 0000187e: ADD 0000187f: MSTORE 00001880: PUSH1 0x84 00001882: ADD 00001883: PUSH2 0x01d7 00001886: JUMP 00001887: JUMPDEST 00001888: PUSH1 0x00 0000188a: DUP1 0000188b: SLOAD 0000188c: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 000018ad: AND 000018ae: PUSH1 0x01 000018b0: OR 000018b1: SWAP1 000018b2: SSTORE 000018b3: DUP1 000018b4: ISZERO 000018b5: PUSH2 0x18e5 000018b8: JUMPI 000018b9: PUSH1 0x00 000018bb: DUP1 000018bc: SLOAD 000018bd: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff 000018de: AND 000018df: PUSH2 0x0100 000018e2: OR 000018e3: SWAP1 000018e4: SSTORE 000018e5: JUMPDEST 000018e6: PUSH1 0x32 000018e8: SLOAD 000018e9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000018fe: AND 000018ff: PUSH2 0x192f 00001902: JUMPI 00001903: PUSH1 0x32 00001905: DUP1 00001906: SLOAD 00001907: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 00001928: AND 00001929: PUSH2 0xdead 0000192c: OR 0000192d: SWAP1 0000192e: SSTORE 0000192f: JUMPDEST 00001930: PUSH1 0x35 00001932: DUP1 00001933: SLOAD 00001934: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 00001955: AND 00001956: DUP4 00001957: ISZERO 00001958: ISZERO 00001959: OR 0000195a: SWAP1 0000195b: SSTORE 0000195c: PUSH2 0x1963 0000195f: PUSH2 0x2688 00001962: JUMP 00001963: JUMPDEST 00001964: DUP1 00001965: ISZERO 00001966: PUSH2 0x19c6 00001969: JUMPI 0000196a: PUSH1 0x00 0000196c: DUP1 0000196d: SLOAD 0000196e: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff 0000198f: AND 00001990: SWAP1 00001991: SSTORE 00001992: PUSH1 0x40 00001994: MLOAD 00001995: PUSH1 0x01 00001997: DUP2 00001998: MSTORE 00001999: PUSH32 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498 000019ba: SWAP1 000019bb: PUSH1 0x20 000019bd: ADD 000019be: PUSH1 0x40 000019c0: MLOAD 000019c1: DUP1 000019c2: SWAP2 000019c3: SUB 000019c4: SWAP1 000019c5: LOG1 000019c6: JUMPDEST 000019c7: POP 000019c8: POP 000019c9: JUMP 000019ca: JUMPDEST 000019cb: PUSH1 0x35 000019cd: SLOAD 000019ce: PUSH1 0xff 000019d0: AND 000019d1: ISZERO 000019d2: PUSH2 0x1a37 000019d5: JUMPI 000019d6: PUSH1 0x40 000019d8: MLOAD 000019d9: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000019fa: DUP2 000019fb: MSTORE 000019fc: PUSH1 0x20 000019fe: PUSH1 0x04 00001a00: DUP3 00001a01: ADD 00001a02: MSTORE 00001a03: PUSH1 0x16 00001a05: PUSH1 0x24 00001a07: DUP3 00001a08: ADD 00001a09: MSTORE 00001a0a: PUSH32 0x4f7074696d69736d506f7274616c3a2070617573656400000000000000000000 00001a2b: PUSH1 0x44 00001a2d: DUP3 00001a2e: ADD 00001a2f: MSTORE 00001a30: PUSH1 0x64 00001a32: ADD 00001a33: PUSH2 0x01d7 00001a36: JUMP 00001a37: JUMPDEST 00001a38: ADDRESS 00001a39: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a4e: AND 00001a4f: DUP6 00001a50: PUSH1 0x40 00001a52: ADD 00001a53: MLOAD 00001a54: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a69: AND 00001a6a: SUB 00001a6b: PUSH2 0x1af6 00001a6e: JUMPI 00001a6f: PUSH1 0x40 00001a71: MLOAD 00001a72: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001a93: DUP2 00001a94: MSTORE 00001a95: PUSH1 0x20 00001a97: PUSH1 0x04 00001a99: DUP3 00001a9a: ADD 00001a9b: MSTORE 00001a9c: PUSH1 0x3f 00001a9e: PUSH1 0x24 00001aa0: DUP3 00001aa1: ADD 00001aa2: MSTORE 00001aa3: PUSH32 0x4f7074696d69736d506f7274616c3a20796f752063616e6e6f742073656e6420 00001ac4: PUSH1 0x44 00001ac6: DUP3 00001ac7: ADD 00001ac8: MSTORE 00001ac9: PUSH32 0x6d6573736167657320746f2074686520706f7274616c20636f6e747261637400 00001aea: PUSH1 0x64 00001aec: DUP3 00001aed: ADD 00001aee: MSTORE 00001aef: PUSH1 0x84 00001af1: ADD 00001af2: PUSH2 0x01d7 00001af5: JUMP 00001af6: JUMPDEST 00001af7: PUSH1 0x40 00001af9: MLOAD 00001afa: PUSH32 0xa25ae55700000000000000000000000000000000000000000000000000000000 00001b1b: DUP2 00001b1c: MSTORE 00001b1d: PUSH1 0x04 00001b1f: DUP2 00001b20: ADD 00001b21: DUP6 00001b22: SWAP1 00001b23: MSTORE 00001b24: PUSH1 0x00 00001b26: SWAP1 00001b27: PUSH32 0x00000000000000000000000031d543e7be1da6efdc2206ef7822879045b9f481 00001b48: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b5d: AND 00001b5e: SWAP1 00001b5f: PUSH4 0xa25ae557 00001b64: SWAP1 00001b65: PUSH1 0x24 00001b67: ADD 00001b68: PUSH1 0x60 00001b6a: PUSH1 0x40 00001b6c: MLOAD 00001b6d: DUP1 00001b6e: DUP4 00001b6f: SUB 00001b70: DUP2 00001b71: DUP7 00001b72: GAS 00001b73: STATICCALL 00001b74: ISZERO 00001b75: DUP1 00001b76: ISZERO 00001b77: PUSH2 0x1b84 00001b7a: JUMPI 00001b7b: RETURNDATASIZE 00001b7c: PUSH1 0x00 00001b7e: DUP1 00001b7f: RETURNDATACOPY 00001b80: RETURNDATASIZE 00001b81: PUSH1 0x00 00001b83: REVERT 00001b84: JUMPDEST 00001b85: POP 00001b86: POP 00001b87: POP 00001b88: POP 00001b89: PUSH1 0x40 00001b8b: MLOAD 00001b8c: RETURNDATASIZE 00001b8d: PUSH1 0x1f 00001b8f: NOT 00001b90: PUSH1 0x1f 00001b92: DUP3 00001b93: ADD 00001b94: AND 00001b95: DUP3 00001b96: ADD 00001b97: DUP1 00001b98: PUSH1 0x40 00001b9a: MSTORE 00001b9b: POP 00001b9c: DUP2 00001b9d: ADD 00001b9e: SWAP1 00001b9f: PUSH2 0x1ba8 00001ba2: SWAP2 00001ba3: SWAP1 00001ba4: PUSH2 0x57e4 00001ba7: JUMP 00001ba8: JUMPDEST 00001ba9: MLOAD 00001baa: SWAP1 00001bab: POP 00001bac: PUSH2 0x1bc2 00001baf: PUSH2 0x1bbd 00001bb2: CALLDATASIZE 00001bb3: DUP7 00001bb4: SWAP1 00001bb5: SUB 00001bb6: DUP7 00001bb7: ADD 00001bb8: DUP7 00001bb9: PUSH2 0x5967 00001bbc: JUMP 00001bbd: JUMPDEST 00001bbe: PUSH2 0x279b 00001bc1: JUMP 00001bc2: JUMPDEST 00001bc3: DUP2 00001bc4: EQ 00001bc5: PUSH2 0x1c50 00001bc8: JUMPI 00001bc9: PUSH1 0x40 00001bcb: MLOAD 00001bcc: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001bed: DUP2 00001bee: MSTORE 00001bef: PUSH1 0x20 00001bf1: PUSH1 0x04 00001bf3: DUP3 00001bf4: ADD 00001bf5: MSTORE 00001bf6: PUSH1 0x29 00001bf8: PUSH1 0x24 00001bfa: DUP3 00001bfb: ADD 00001bfc: MSTORE 00001bfd: PUSH32 0x4f7074696d69736d506f7274616c3a20696e76616c6964206f75747075742072 00001c1e: PUSH1 0x44 00001c20: DUP3 00001c21: ADD 00001c22: MSTORE 00001c23: PUSH32 0x6f6f742070726f6f660000000000000000000000000000000000000000000000 00001c44: PUSH1 0x64 00001c46: DUP3 00001c47: ADD 00001c48: MSTORE 00001c49: PUSH1 0x84 00001c4b: ADD 00001c4c: PUSH2 0x01d7 00001c4f: JUMP 00001c50: JUMPDEST 00001c51: PUSH1 0x00 00001c53: PUSH2 0x1c5b 00001c56: DUP8 00001c57: PUSH2 0x23f8 00001c5a: JUMP 00001c5b: JUMPDEST 00001c5c: PUSH1 0x00 00001c5e: DUP2 00001c5f: DUP2 00001c60: MSTORE 00001c61: PUSH1 0x34 00001c63: PUSH1 0x20 00001c65: SWAP1 00001c66: DUP2 00001c67: MSTORE 00001c68: PUSH1 0x40 00001c6a: SWAP2 00001c6b: DUP3 00001c6c: SWAP1 00001c6d: KECCAK256 00001c6e: DUP3 00001c6f: MLOAD 00001c70: PUSH1 0x60 00001c72: DUP2 00001c73: ADD 00001c74: DUP5 00001c75: MSTORE 00001c76: DUP2 00001c77: SLOAD 00001c78: DUP2 00001c79: MSTORE 00001c7a: PUSH1 0x01 00001c7c: SWAP1 00001c7d: SWAP2 00001c7e: ADD 00001c7f: SLOAD 00001c80: PUSH16 0xffffffffffffffffffffffffffffffff 00001c91: DUP1 00001c92: DUP3 00001c93: AND 00001c94: SWAP4 00001c95: DUP4 00001c96: ADD 00001c97: DUP5 00001c98: SWAP1 00001c99: MSTORE 00001c9a: PUSH17 0x0100000000000000000000000000000000 00001cac: SWAP1 00001cad: SWAP2 00001cae: DIV 00001caf: AND 00001cb0: SWAP3 00001cb1: DUP2 00001cb2: ADD 00001cb3: SWAP3 00001cb4: SWAP1 00001cb5: SWAP3 00001cb6: MSTORE 00001cb7: SWAP2 00001cb8: SWAP3 00001cb9: POP 00001cba: SWAP1 00001cbb: ISZERO 00001cbc: DUP1 00001cbd: PUSH2 0x1d8d 00001cc0: JUMPI 00001cc1: POP 00001cc2: DUP1 00001cc3: MLOAD 00001cc4: PUSH1 0x40 00001cc6: DUP1 00001cc7: DUP4 00001cc8: ADD 00001cc9: MLOAD 00001cca: SWAP1 00001ccb: MLOAD 00001ccc: PUSH32 0xa25ae55700000000000000000000000000000000000000000000000000000000 00001ced: DUP2 00001cee: MSTORE 00001cef: PUSH16 0xffffffffffffffffffffffffffffffff 00001d00: SWAP1 00001d01: SWAP2 00001d02: AND 00001d03: PUSH1 0x04 00001d05: DUP3 00001d06: ADD 00001d07: MSTORE 00001d08: PUSH32 0x00000000000000000000000031d543e7be1da6efdc2206ef7822879045b9f481 00001d29: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001d3e: AND 00001d3f: SWAP1 00001d40: PUSH4 0xa25ae557 00001d45: SWAP1 00001d46: PUSH1 0x24 00001d48: ADD 00001d49: PUSH1 0x60 00001d4b: PUSH1 0x40 00001d4d: MLOAD 00001d4e: DUP1 00001d4f: DUP4 00001d50: SUB 00001d51: DUP2 00001d52: DUP7 00001d53: GAS 00001d54: STATICCALL 00001d55: ISZERO 00001d56: DUP1 00001d57: ISZERO 00001d58: PUSH2 0x1d65 00001d5b: JUMPI 00001d5c: RETURNDATASIZE 00001d5d: PUSH1 0x00 00001d5f: DUP1 00001d60: RETURNDATACOPY 00001d61: RETURNDATASIZE 00001d62: PUSH1 0x00 00001d64: REVERT 00001d65: JUMPDEST 00001d66: POP 00001d67: POP 00001d68: POP 00001d69: POP 00001d6a: PUSH1 0x40 00001d6c: MLOAD 00001d6d: RETURNDATASIZE 00001d6e: PUSH1 0x1f 00001d70: NOT 00001d71: PUSH1 0x1f 00001d73: DUP3 00001d74: ADD 00001d75: AND 00001d76: DUP3 00001d77: ADD 00001d78: DUP1 00001d79: PUSH1 0x40 00001d7b: MSTORE 00001d7c: POP 00001d7d: DUP2 00001d7e: ADD 00001d7f: SWAP1 00001d80: PUSH2 0x1d89 00001d83: SWAP2 00001d84: SWAP1 00001d85: PUSH2 0x57e4 00001d88: JUMP 00001d89: JUMPDEST 00001d8a: MLOAD 00001d8b: EQ 00001d8c: ISZERO 00001d8d: JUMPDEST 00001d8e: PUSH2 0x1e19 00001d91: JUMPI 00001d92: PUSH1 0x40 00001d94: MLOAD 00001d95: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001db6: DUP2 00001db7: MSTORE 00001db8: PUSH1 0x20 00001dba: PUSH1 0x04 00001dbc: DUP3 00001dbd: ADD 00001dbe: MSTORE 00001dbf: PUSH1 0x37 00001dc1: PUSH1 0x24 00001dc3: DUP3 00001dc4: ADD 00001dc5: MSTORE 00001dc6: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c206861736820 00001de7: PUSH1 0x44 00001de9: DUP3 00001dea: ADD 00001deb: MSTORE 00001dec: PUSH32 0x68617320616c7265616479206265656e2070726f76656e000000000000000000 00001e0d: PUSH1 0x64 00001e0f: DUP3 00001e10: ADD 00001e11: MSTORE 00001e12: PUSH1 0x84 00001e14: ADD 00001e15: PUSH2 0x01d7 00001e18: JUMP 00001e19: JUMPDEST 00001e1a: PUSH1 0x40 00001e1c: DUP1 00001e1d: MLOAD 00001e1e: PUSH1 0x20 00001e20: DUP2 00001e21: ADD 00001e22: DUP5 00001e23: SWAP1 00001e24: MSTORE 00001e25: PUSH1 0x00 00001e27: SWAP2 00001e28: DUP2 00001e29: ADD 00001e2a: DUP3 00001e2b: SWAP1 00001e2c: MSTORE 00001e2d: PUSH1 0x60 00001e2f: ADD 00001e30: PUSH1 0x40 00001e32: DUP1 00001e33: MLOAD 00001e34: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00001e55: DUP2 00001e56: DUP5 00001e57: SUB 00001e58: ADD 00001e59: DUP2 00001e5a: MSTORE 00001e5b: DUP3 00001e5c: DUP3 00001e5d: MSTORE 00001e5e: DUP1 00001e5f: MLOAD 00001e60: PUSH1 0x20 00001e62: SWAP2 00001e63: DUP3 00001e64: ADD 00001e65: KECCAK256 00001e66: SWAP1 00001e67: DUP4 00001e68: ADD 00001e69: DUP2 00001e6a: SWAP1 00001e6b: MSTORE 00001e6c: SWAP3 00001e6d: POP 00001e6e: PUSH2 0x1ee2 00001e71: SWAP2 00001e72: ADD 00001e73: PUSH1 0x40 00001e75: DUP1 00001e76: MLOAD 00001e77: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00001e98: DUP2 00001e99: DUP5 00001e9a: SUB 00001e9b: ADD 00001e9c: DUP2 00001e9d: MSTORE 00001e9e: DUP3 00001e9f: DUP3 00001ea0: ADD 00001ea1: SWAP1 00001ea2: SWAP2 00001ea3: MSTORE 00001ea4: PUSH1 0x01 00001ea6: DUP3 00001ea7: MSTORE 00001ea8: PUSH32 0x0100000000000000000000000000000000000000000000000000000000000000 00001ec9: PUSH1 0x20 00001ecb: DUP4 00001ecc: ADD 00001ecd: MSTORE 00001ece: SWAP1 00001ecf: PUSH2 0x1ed8 00001ed2: DUP9 00001ed3: DUP11 00001ed4: PUSH2 0x59cd 00001ed7: JUMP 00001ed8: JUMPDEST 00001ed9: DUP11 00001eda: PUSH1 0x40 00001edc: ADD 00001edd: CALLDATALOAD 00001ede: PUSH2 0x27da 00001ee1: JUMP 00001ee2: JUMPDEST 00001ee3: PUSH2 0x1f6e 00001ee6: JUMPI 00001ee7: PUSH1 0x40 00001ee9: MLOAD 00001eea: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001f0b: DUP2 00001f0c: MSTORE 00001f0d: PUSH1 0x20 00001f0f: PUSH1 0x04 00001f11: DUP3 00001f12: ADD 00001f13: MSTORE 00001f14: PUSH1 0x32 00001f16: PUSH1 0x24 00001f18: DUP3 00001f19: ADD 00001f1a: MSTORE 00001f1b: PUSH32 0x4f7074696d69736d506f7274616c3a20696e76616c6964207769746864726177 00001f3c: PUSH1 0x44 00001f3e: DUP3 00001f3f: ADD 00001f40: MSTORE 00001f41: PUSH32 0x616c20696e636c7573696f6e2070726f6f660000000000000000000000000000 00001f62: PUSH1 0x64 00001f64: DUP3 00001f65: ADD 00001f66: MSTORE 00001f67: PUSH1 0x84 00001f69: ADD 00001f6a: PUSH2 0x01d7 00001f6d: JUMP 00001f6e: JUMPDEST 00001f6f: PUSH1 0x40 00001f71: DUP1 00001f72: MLOAD 00001f73: PUSH1 0x60 00001f75: DUP2 00001f76: ADD 00001f77: DUP3 00001f78: MSTORE 00001f79: DUP6 00001f7a: DUP2 00001f7b: MSTORE 00001f7c: PUSH16 0xffffffffffffffffffffffffffffffff 00001f8d: TIMESTAMP 00001f8e: DUP2 00001f8f: AND 00001f90: PUSH1 0x20 00001f92: DUP1 00001f93: DUP5 00001f94: ADD 00001f95: SWAP2 00001f96: DUP3 00001f97: MSTORE 00001f98: DUP13 00001f99: DUP4 00001f9a: AND 00001f9b: DUP5 00001f9c: DUP7 00001f9d: ADD 00001f9e: SWAP1 00001f9f: DUP2 00001fa0: MSTORE 00001fa1: PUSH1 0x00 00001fa3: DUP10 00001fa4: DUP2 00001fa5: MSTORE 00001fa6: PUSH1 0x34 00001fa8: DUP4 00001fa9: MSTORE 00001faa: DUP7 00001fab: DUP2 00001fac: KECCAK256 00001fad: SWAP6 00001fae: MLOAD 00001faf: DUP7 00001fb0: SSTORE 00001fb1: SWAP3 00001fb2: MLOAD 00001fb3: SWAP1 00001fb4: MLOAD 00001fb5: DUP5 00001fb6: AND 00001fb7: PUSH17 0x0100000000000000000000000000000000 00001fc9: MUL 00001fca: SWAP4 00001fcb: AND 00001fcc: SWAP3 00001fcd: SWAP1 00001fce: SWAP3 00001fcf: OR 00001fd0: PUSH1 0x01 00001fd2: SWAP1 00001fd3: SWAP4 00001fd4: ADD 00001fd5: SWAP3 00001fd6: SWAP1 00001fd7: SWAP3 00001fd8: SSTORE 00001fd9: DUP12 00001fda: DUP4 00001fdb: ADD 00001fdc: MLOAD 00001fdd: SWAP1 00001fde: DUP13 00001fdf: ADD 00001fe0: MLOAD 00001fe1: SWAP3 00001fe2: MLOAD 00001fe3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001ff8: SWAP2 00001ff9: DUP3 00001ffa: AND 00001ffb: SWAP4 00001ffc: SWAP1 00001ffd: SWAP2 00001ffe: AND 00001fff: SWAP2 00002000: DUP7 00002001: SWAP2 00002002: PUSH32 0x67a6208cfcc0801d50f6cbe764733f4fddf66ac0b04442061a8a8c0cb6b63f62 00002023: SWAP2 00002024: SWAP1 00002025: LOG4 00002026: POP 00002027: POP 00002028: POP 00002029: POP 0000202a: POP 0000202b: POP 0000202c: POP 0000202d: POP 0000202e: POP 0000202f: JUMP 00002030: JUMPDEST 00002031: PUSH1 0x40 00002033: DUP1 00002034: MLOAD 00002035: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000204a: DUP6 0000204b: DUP2 0000204c: AND 0000204d: PUSH1 0x24 0000204f: DUP4 00002050: ADD 00002051: MSTORE 00002052: DUP5 00002053: AND 00002054: PUSH1 0x44 00002056: DUP3 00002057: ADD 00002058: MSTORE 00002059: PUSH1 0x64 0000205b: DUP1 0000205c: DUP3 0000205d: ADD 0000205e: DUP5 0000205f: SWAP1 00002060: MSTORE 00002061: DUP3 00002062: MLOAD 00002063: DUP1 00002064: DUP4 00002065: SUB 00002066: SWAP1 00002067: SWAP2 00002068: ADD 00002069: DUP2 0000206a: MSTORE 0000206b: PUSH1 0x84 0000206d: SWAP1 0000206e: SWAP2 0000206f: ADD 00002070: SWAP1 00002071: SWAP2 00002072: MSTORE 00002073: PUSH1 0x20 00002075: DUP2 00002076: ADD 00002077: DUP1 00002078: MLOAD 00002079: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00002096: AND 00002097: PUSH32 0x23b872dd00000000000000000000000000000000000000000000000000000000 000020b8: OR 000020b9: SWAP1 000020ba: MSTORE 000020bb: PUSH2 0x20c5 000020be: SWAP1 000020bf: DUP6 000020c0: SWAP1 000020c1: PUSH2 0x27fe 000020c4: JUMP 000020c5: JUMPDEST 000020c6: POP 000020c7: POP 000020c8: POP 000020c9: POP 000020ca: JUMP 000020cb: JUMPDEST 000020cc: PUSH1 0x01 000020ce: SLOAD 000020cf: PUSH1 0x00 000020d1: SWAP1 000020d2: PUSH2 0x2101 000020d5: SWAP1 000020d6: PUSH25 0x01000000000000000000000000000000000000000000000000 000020f0: SWAP1 000020f1: DIV 000020f2: PUSH8 0xffffffffffffffff 000020fb: AND 000020fc: NUMBER 000020fd: PUSH2 0x5a51 00002100: JUMP 00002101: JUMPDEST 00002102: SWAP1 00002103: POP 00002104: PUSH1 0x00 00002106: PUSH2 0x210d 00002109: PUSH2 0x290f 0000210c: JUMP 0000210d: JUMPDEST 0000210e: SWAP1 0000210f: POP 00002110: PUSH1 0x00 00002112: DUP2 00002113: PUSH1 0x20 00002115: ADD 00002116: MLOAD 00002117: PUSH1 0xff 00002119: AND 0000211a: DUP3 0000211b: PUSH1 0x00 0000211d: ADD 0000211e: MLOAD 0000211f: PUSH4 0xffffffff 00002124: AND 00002125: PUSH2 0x212e 00002128: SWAP2 00002129: SWAP1 0000212a: PUSH2 0x5a97 0000212d: JUMP 0000212e: JUMPDEST 0000212f: SWAP1 00002130: POP 00002131: DUP3 00002132: ISZERO 00002133: PUSH2 0x2265 00002136: JUMPI 00002137: PUSH1 0x01 00002139: SLOAD 0000213a: PUSH1 0x00 0000213c: SWAP1 0000213d: PUSH2 0x2165 00002140: SWAP1 00002141: DUP4 00002142: SWAP1 00002143: PUSH17 0x0100000000000000000000000000000000 00002155: SWAP1 00002156: DIV 00002157: PUSH8 0xffffffffffffffff 00002160: AND 00002161: PUSH2 0x5aff 00002164: JUMP 00002165: JUMPDEST 00002166: SWAP1 00002167: POP 00002168: PUSH1 0x00 0000216a: DUP4 0000216b: PUSH1 0x40 0000216d: ADD 0000216e: MLOAD 0000216f: PUSH1 0xff 00002171: AND 00002172: DUP4 00002173: PUSH2 0x217c 00002176: SWAP2 00002177: SWAP1 00002178: PUSH2 0x5b73 0000217b: JUMP 0000217c: JUMPDEST 0000217d: PUSH1 0x01 0000217f: SLOAD 00002180: PUSH2 0x219c 00002183: SWAP1 00002184: DUP5 00002185: SWAP1 00002186: PUSH16 0xffffffffffffffffffffffffffffffff 00002197: AND 00002198: PUSH2 0x5b73 0000219b: JUMP 0000219c: JUMPDEST 0000219d: PUSH2 0x21a6 000021a0: SWAP2 000021a1: SWAP1 000021a2: PUSH2 0x5a97 000021a5: JUMP 000021a6: JUMPDEST 000021a7: PUSH1 0x01 000021a9: SLOAD 000021aa: SWAP1 000021ab: SWAP2 000021ac: POP 000021ad: PUSH1 0x00 000021af: SWAP1 000021b0: PUSH2 0x21f7 000021b3: SWAP1 000021b4: PUSH2 0x21d0 000021b7: SWAP1 000021b8: DUP5 000021b9: SWAP1 000021ba: PUSH16 0xffffffffffffffffffffffffffffffff 000021cb: AND 000021cc: PUSH2 0x5c2f 000021cf: JUMP 000021d0: JUMPDEST 000021d1: DUP7 000021d2: PUSH1 0x60 000021d4: ADD 000021d5: MLOAD 000021d6: PUSH4 0xffffffff 000021db: AND 000021dc: DUP8 000021dd: PUSH1 0xa0 000021df: ADD 000021e0: MLOAD 000021e1: PUSH16 0xffffffffffffffffffffffffffffffff 000021f2: AND 000021f3: PUSH2 0x29d5 000021f6: JUMP 000021f7: JUMPDEST 000021f8: SWAP1 000021f9: POP 000021fa: PUSH1 0x01 000021fc: DUP7 000021fd: GT 000021fe: ISZERO 000021ff: PUSH2 0x2226 00002202: JUMPI 00002203: PUSH2 0x2223 00002206: PUSH2 0x21d0 00002209: DUP3 0000220a: DUP8 0000220b: PUSH1 0x40 0000220d: ADD 0000220e: MLOAD 0000220f: PUSH1 0xff 00002211: AND 00002212: PUSH1 0x01 00002214: DUP11 00002215: PUSH2 0x221e 00002218: SWAP2 00002219: SWAP1 0000221a: PUSH2 0x5a51 0000221d: JUMP 0000221e: JUMPDEST 0000221f: PUSH2 0x29f4 00002222: JUMP 00002223: JUMPDEST 00002224: SWAP1 00002225: POP 00002226: JUMPDEST 00002227: PUSH16 0xffffffffffffffffffffffffffffffff 00002238: AND 00002239: PUSH25 0x01000000000000000000000000000000000000000000000000 00002253: PUSH8 0xffffffffffffffff 0000225c: NUMBER 0000225d: AND 0000225e: MUL 0000225f: OR 00002260: PUSH1 0x01 00002262: SSTORE 00002263: POP 00002264: POP 00002265: JUMPDEST 00002266: PUSH1 0x01 00002268: DUP1 00002269: SLOAD 0000226a: DUP7 0000226b: SWAP2 0000226c: SWAP1 0000226d: PUSH1 0x10 0000226f: SWAP1 00002270: PUSH2 0x2298 00002273: SWAP1 00002274: DUP5 00002275: SWAP1 00002276: PUSH17 0x0100000000000000000000000000000000 00002288: SWAP1 00002289: DIV 0000228a: PUSH8 0xffffffffffffffff 00002293: AND 00002294: PUSH2 0x593b 00002297: JUMP 00002298: JUMPDEST 00002299: SWAP3 0000229a: POP 0000229b: PUSH2 0x0100 0000229e: EXP 0000229f: DUP2 000022a0: SLOAD 000022a1: DUP2 000022a2: PUSH8 0xffffffffffffffff 000022ab: MUL 000022ac: NOT 000022ad: AND 000022ae: SWAP1 000022af: DUP4 000022b0: PUSH8 0xffffffffffffffff 000022b9: AND 000022ba: MUL 000022bb: OR 000022bc: SWAP1 000022bd: SSTORE 000022be: POP 000022bf: DUP2 000022c0: PUSH1 0x00 000022c2: ADD 000022c3: MLOAD 000022c4: PUSH4 0xffffffff 000022c9: AND 000022ca: PUSH1 0x01 000022cc: PUSH1 0x00 000022ce: ADD 000022cf: PUSH1 0x10 000022d1: SWAP1 000022d2: SLOAD 000022d3: SWAP1 000022d4: PUSH2 0x0100 000022d7: EXP 000022d8: SWAP1 000022d9: DIV 000022da: PUSH8 0xffffffffffffffff 000022e3: AND 000022e4: PUSH8 0xffffffffffffffff 000022ed: AND 000022ee: SGT 000022ef: ISZERO 000022f0: PUSH2 0x237b 000022f3: JUMPI 000022f4: PUSH1 0x40 000022f6: MLOAD 000022f7: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002318: DUP2 00002319: MSTORE 0000231a: PUSH1 0x20 0000231c: PUSH1 0x04 0000231e: DUP3 0000231f: ADD 00002320: MSTORE 00002321: PUSH1 0x3e 00002323: PUSH1 0x24 00002325: DUP3 00002326: ADD 00002327: MSTORE 00002328: PUSH32 0x5265736f757263654d65746572696e673a2063616e6e6f7420627579206d6f72 00002349: PUSH1 0x44 0000234b: DUP3 0000234c: ADD 0000234d: MSTORE 0000234e: PUSH32 0x6520676173207468616e20617661696c61626c6520676173206c696d69740000 0000236f: PUSH1 0x64 00002371: DUP3 00002372: ADD 00002373: MSTORE 00002374: PUSH1 0x84 00002376: ADD 00002377: PUSH2 0x01d7 0000237a: JUMP 0000237b: JUMPDEST 0000237c: PUSH1 0x01 0000237e: SLOAD 0000237f: PUSH1 0x00 00002381: SWAP1 00002382: PUSH2 0x23a7 00002385: SWAP1 00002386: PUSH16 0xffffffffffffffffffffffffffffffff 00002397: AND 00002398: PUSH8 0xffffffffffffffff 000023a1: DUP9 000023a2: AND 000023a3: PUSH2 0x5ca3 000023a6: JUMP 000023a7: JUMPDEST 000023a8: SWAP1 000023a9: POP 000023aa: PUSH1 0x00 000023ac: PUSH2 0x23b9 000023af: BASEFEE 000023b0: PUSH4 0x3b9aca00 000023b5: PUSH2 0x2a49 000023b8: JUMP 000023b9: JUMPDEST 000023ba: PUSH2 0x23c3 000023bd: SWAP1 000023be: DUP4 000023bf: PUSH2 0x5ce0 000023c2: JUMP 000023c3: JUMPDEST 000023c4: SWAP1 000023c5: POP 000023c6: PUSH1 0x00 000023c8: GAS 000023c9: PUSH2 0x23d2 000023cc: SWAP1 000023cd: DUP9 000023ce: PUSH2 0x5a51 000023d1: JUMP 000023d2: JUMPDEST 000023d3: SWAP1 000023d4: POP 000023d5: DUP1 000023d6: DUP3 000023d7: GT 000023d8: ISZERO 000023d9: PUSH2 0x23ee 000023dc: JUMPI 000023dd: PUSH2 0x23ee 000023e0: PUSH2 0x23e9 000023e3: DUP3 000023e4: DUP5 000023e5: PUSH2 0x5a51 000023e8: JUMP 000023e9: JUMPDEST 000023ea: PUSH2 0x2a60 000023ed: JUMP 000023ee: JUMPDEST 000023ef: POP 000023f0: POP 000023f1: POP 000023f2: POP 000023f3: POP 000023f4: POP 000023f5: POP 000023f6: POP 000023f7: JUMP 000023f8: JUMPDEST 000023f9: DUP1 000023fa: MLOAD 000023fb: PUSH1 0x20 000023fd: DUP1 000023fe: DUP4 000023ff: ADD 00002400: MLOAD 00002401: PUSH1 0x40 00002403: DUP1 00002404: DUP6 00002405: ADD 00002406: MLOAD 00002407: PUSH1 0x60 00002409: DUP7 0000240a: ADD 0000240b: MLOAD 0000240c: PUSH1 0x80 0000240e: DUP8 0000240f: ADD 00002410: MLOAD 00002411: PUSH1 0xa0 00002413: DUP9 00002414: ADD 00002415: MLOAD 00002416: PUSH1 0xc0 00002418: DUP10 00002419: ADD 0000241a: MLOAD 0000241b: SWAP5 0000241c: MLOAD 0000241d: PUSH1 0x00 0000241f: SWAP9 00002420: PUSH2 0x242d 00002423: SWAP9 00002424: SWAP1 00002425: SWAP8 00002426: SWAP7 00002427: SWAP2 00002428: ADD 00002429: PUSH2 0x5cf4 0000242c: JUMP 0000242d: JUMPDEST 0000242e: PUSH1 0x40 00002430: MLOAD 00002431: PUSH1 0x20 00002433: DUP2 00002434: DUP4 00002435: SUB 00002436: SUB 00002437: DUP2 00002438: MSTORE 00002439: SWAP1 0000243a: PUSH1 0x40 0000243c: MSTORE 0000243d: DUP1 0000243e: MLOAD 0000243f: SWAP1 00002440: PUSH1 0x20 00002442: ADD 00002443: KECCAK256 00002444: SWAP1 00002445: POP 00002446: SWAP2 00002447: SWAP1 00002448: POP 00002449: JUMP 0000244a: JUMPDEST 0000244b: PUSH1 0x00 0000244d: PUSH32 0x00000000000000000000000031d543e7be1da6efdc2206ef7822879045b9f481 0000246e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002483: AND 00002484: PUSH4 0xf4daa291 00002489: PUSH1 0x40 0000248b: MLOAD 0000248c: DUP2 0000248d: PUSH4 0xffffffff 00002492: AND 00002493: PUSH1 0xe0 00002495: SHL 00002496: DUP2 00002497: MSTORE 00002498: PUSH1 0x04 0000249a: ADD 0000249b: PUSH1 0x20 0000249d: PUSH1 0x40 0000249f: MLOAD 000024a0: DUP1 000024a1: DUP4 000024a2: SUB 000024a3: DUP2 000024a4: DUP7 000024a5: GAS 000024a6: STATICCALL 000024a7: ISZERO 000024a8: DUP1 000024a9: ISZERO 000024aa: PUSH2 0x24b7 000024ad: JUMPI 000024ae: RETURNDATASIZE 000024af: PUSH1 0x00 000024b1: DUP1 000024b2: RETURNDATACOPY 000024b3: RETURNDATASIZE 000024b4: PUSH1 0x00 000024b6: REVERT 000024b7: JUMPDEST 000024b8: POP 000024b9: POP 000024ba: POP 000024bb: POP 000024bc: PUSH1 0x40 000024be: MLOAD 000024bf: RETURNDATASIZE 000024c0: PUSH1 0x1f 000024c2: NOT 000024c3: PUSH1 0x1f 000024c5: DUP3 000024c6: ADD 000024c7: AND 000024c8: DUP3 000024c9: ADD 000024ca: DUP1 000024cb: PUSH1 0x40 000024cd: MSTORE 000024ce: POP 000024cf: DUP2 000024d0: ADD 000024d1: SWAP1 000024d2: PUSH2 0x24db 000024d5: SWAP2 000024d6: SWAP1 000024d7: PUSH2 0x57ab 000024da: JUMP 000024db: JUMPDEST 000024dc: PUSH2 0x24e5 000024df: SWAP1 000024e0: DUP4 000024e1: PUSH2 0x5d52 000024e4: JUMP 000024e5: JUMPDEST 000024e6: TIMESTAMP 000024e7: GT 000024e8: SWAP3 000024e9: SWAP2 000024ea: POP 000024eb: POP 000024ec: JUMP 000024ed: JUMPDEST 000024ee: PUSH1 0x00 000024f0: DUP1 000024f1: PUSH1 0x00 000024f3: PUSH2 0x24fd 000024f6: DUP7 000024f7: PUSH1 0x00 000024f9: PUSH2 0x2a89 000024fc: JUMP 000024fd: JUMPDEST 000024fe: SWAP1 000024ff: POP 00002500: DUP1 00002501: PUSH2 0x2533 00002504: JUMPI 00002505: PUSH4 0x08c379a0 0000250a: PUSH1 0x00 0000250c: MSTORE 0000250d: PUSH1 0x20 0000250f: DUP1 00002510: MSTORE 00002511: PUSH25 0x185361666543616c6c3a204e6f7420656e6f75676820676173 0000252b: PUSH1 0x58 0000252d: MSTORE 0000252e: PUSH1 0x64 00002530: PUSH1 0x1c 00002532: REVERT 00002533: JUMPDEST 00002534: PUSH1 0x00 00002536: DUP1 00002537: DUP6 00002538: MLOAD 00002539: PUSH1 0x20 0000253b: DUP8 0000253c: ADD 0000253d: DUP9 0000253e: DUP12 0000253f: GAS 00002540: CALL 00002541: SWAP8 00002542: SWAP7 00002543: POP 00002544: POP 00002545: POP 00002546: POP 00002547: POP 00002548: POP 00002549: POP 0000254a: JUMP 0000254b: JUMPDEST 0000254c: PUSH1 0x60 0000254e: DUP2 0000254f: PUSH1 0x00 00002551: SUB 00002552: PUSH2 0x258e 00002555: JUMPI 00002556: POP 00002557: POP 00002558: PUSH1 0x40 0000255a: DUP1 0000255b: MLOAD 0000255c: DUP1 0000255d: DUP3 0000255e: ADD 0000255f: SWAP1 00002560: SWAP2 00002561: MSTORE 00002562: PUSH1 0x01 00002564: DUP2 00002565: MSTORE 00002566: PUSH32 0x3000000000000000000000000000000000000000000000000000000000000000 00002587: PUSH1 0x20 00002589: DUP3 0000258a: ADD 0000258b: MSTORE 0000258c: SWAP1 0000258d: JUMP 0000258e: JUMPDEST 0000258f: DUP2 00002590: PUSH1 0x00 00002592: JUMPDEST 00002593: DUP2 00002594: ISZERO 00002595: PUSH2 0x25b8 00002598: JUMPI 00002599: DUP1 0000259a: PUSH2 0x25a2 0000259d: DUP2 0000259e: PUSH2 0x5d6a 000025a1: JUMP 000025a2: JUMPDEST 000025a3: SWAP2 000025a4: POP 000025a5: PUSH2 0x25b1 000025a8: SWAP1 000025a9: POP 000025aa: PUSH1 0x0a 000025ac: DUP4 000025ad: PUSH2 0x5ce0 000025b0: JUMP 000025b1: JUMPDEST 000025b2: SWAP2 000025b3: POP 000025b4: PUSH2 0x2592 000025b7: JUMP 000025b8: JUMPDEST 000025b9: PUSH1 0x00 000025bb: DUP2 000025bc: PUSH8 0xffffffffffffffff 000025c5: DUP2 000025c6: GT 000025c7: ISZERO 000025c8: PUSH2 0x25d3 000025cb: JUMPI 000025cc: PUSH2 0x25d3 000025cf: PUSH2 0x52a6 000025d2: JUMP 000025d3: JUMPDEST 000025d4: PUSH1 0x40 000025d6: MLOAD 000025d7: SWAP1 000025d8: DUP1 000025d9: DUP3 000025da: MSTORE 000025db: DUP1 000025dc: PUSH1 0x1f 000025de: ADD 000025df: PUSH1 0x1f 000025e1: NOT 000025e2: AND 000025e3: PUSH1 0x20 000025e5: ADD 000025e6: DUP3 000025e7: ADD 000025e8: PUSH1 0x40 000025ea: MSTORE 000025eb: DUP1 000025ec: ISZERO 000025ed: PUSH2 0x25fd 000025f0: JUMPI 000025f1: PUSH1 0x20 000025f3: DUP3 000025f4: ADD 000025f5: DUP2 000025f6: DUP1 000025f7: CALLDATASIZE 000025f8: DUP4 000025f9: CALLDATACOPY 000025fa: ADD 000025fb: SWAP1 000025fc: POP 000025fd: JUMPDEST 000025fe: POP 000025ff: SWAP1 00002600: POP 00002601: JUMPDEST 00002602: DUP5 00002603: ISZERO 00002604: PUSH2 0x2680 00002607: JUMPI 00002608: PUSH2 0x2612 0000260b: PUSH1 0x01 0000260d: DUP4 0000260e: PUSH2 0x5a51 00002611: JUMP 00002612: JUMPDEST 00002613: SWAP2 00002614: POP 00002615: PUSH2 0x261f 00002618: PUSH1 0x0a 0000261a: DUP7 0000261b: PUSH2 0x5da2 0000261e: JUMP 0000261f: JUMPDEST 00002620: PUSH2 0x262a 00002623: SWAP1 00002624: PUSH1 0x30 00002626: PUSH2 0x5d52 00002629: JUMP 0000262a: JUMPDEST 0000262b: PUSH1 0xf8 0000262d: SHL 0000262e: DUP2 0000262f: DUP4 00002630: DUP2 00002631: MLOAD 00002632: DUP2 00002633: LT 00002634: PUSH2 0x263f 00002637: JUMPI 00002638: PUSH2 0x263f 0000263b: PUSH2 0x5db6 0000263e: JUMP 0000263f: JUMPDEST 00002640: PUSH1 0x20 00002642: ADD 00002643: ADD 00002644: SWAP1 00002645: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00002665: NOT 00002666: AND 00002667: SWAP1 00002668: DUP2 00002669: PUSH1 0x00 0000266b: BYTE 0000266c: SWAP1 0000266d: MSTORE8 0000266e: POP 0000266f: PUSH2 0x2679 00002672: PUSH1 0x0a 00002674: DUP7 00002675: PUSH2 0x5ce0 00002678: JUMP 00002679: JUMPDEST 0000267a: SWAP5 0000267b: POP 0000267c: PUSH2 0x2601 0000267f: JUMP 00002680: JUMPDEST 00002681: SWAP5 00002682: SWAP4 00002683: POP 00002684: POP 00002685: POP 00002686: POP 00002687: JUMP 00002688: JUMPDEST 00002689: PUSH1 0x00 0000268b: SLOAD 0000268c: PUSH2 0x0100 0000268f: SWAP1 00002690: DIV 00002691: PUSH1 0xff 00002693: AND 00002694: PUSH2 0x271f 00002697: JUMPI 00002698: PUSH1 0x40 0000269a: MLOAD 0000269b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000026bc: DUP2 000026bd: MSTORE 000026be: PUSH1 0x20 000026c0: PUSH1 0x04 000026c2: DUP3 000026c3: ADD 000026c4: MSTORE 000026c5: PUSH1 0x2b 000026c7: PUSH1 0x24 000026c9: DUP3 000026ca: ADD 000026cb: MSTORE 000026cc: PUSH32 0x496e697469616c697a61626c653a20636f6e7472616374206973206e6f742069 000026ed: PUSH1 0x44 000026ef: DUP3 000026f0: ADD 000026f1: MSTORE 000026f2: PUSH32 0x6e697469616c697a696e67000000000000000000000000000000000000000000 00002713: PUSH1 0x64 00002715: DUP3 00002716: ADD 00002717: MSTORE 00002718: PUSH1 0x84 0000271a: ADD 0000271b: PUSH2 0x01d7 0000271e: JUMP 0000271f: JUMPDEST 00002720: PUSH1 0x01 00002722: SLOAD 00002723: PUSH25 0x01000000000000000000000000000000000000000000000000 0000273d: SWAP1 0000273e: DIV 0000273f: PUSH8 0xffffffffffffffff 00002748: AND 00002749: PUSH1 0x00 0000274b: SUB 0000274c: PUSH2 0x17a6 0000274f: JUMPI 00002750: PUSH1 0x40 00002752: DUP1 00002753: MLOAD 00002754: PUSH1 0x60 00002756: DUP2 00002757: ADD 00002758: DUP3 00002759: MSTORE 0000275a: PUSH4 0x3b9aca00 0000275f: DUP1 00002760: DUP3 00002761: MSTORE 00002762: PUSH1 0x00 00002764: PUSH1 0x20 00002766: DUP4 00002767: ADD 00002768: MSTORE 00002769: NUMBER 0000276a: PUSH8 0xffffffffffffffff 00002773: AND 00002774: SWAP2 00002775: SWAP1 00002776: SWAP3 00002777: ADD 00002778: DUP2 00002779: SWAP1 0000277a: MSTORE 0000277b: PUSH25 0x01000000000000000000000000000000000000000000000000 00002795: MUL 00002796: OR 00002797: PUSH1 0x01 00002799: SSTORE 0000279a: JUMP 0000279b: JUMPDEST 0000279c: PUSH1 0x00 0000279e: DUP2 0000279f: PUSH1 0x00 000027a1: ADD 000027a2: MLOAD 000027a3: DUP3 000027a4: PUSH1 0x20 000027a6: ADD 000027a7: MLOAD 000027a8: DUP4 000027a9: PUSH1 0x40 000027ab: ADD 000027ac: MLOAD 000027ad: DUP5 000027ae: PUSH1 0x60 000027b0: ADD 000027b1: MLOAD 000027b2: PUSH1 0x40 000027b4: MLOAD 000027b5: PUSH1 0x20 000027b7: ADD 000027b8: PUSH2 0x242d 000027bb: SWAP5 000027bc: SWAP4 000027bd: SWAP3 000027be: SWAP2 000027bf: SWAP1 000027c0: SWAP4 000027c1: DUP5 000027c2: MSTORE 000027c3: PUSH1 0x20 000027c5: DUP5 000027c6: ADD 000027c7: SWAP3 000027c8: SWAP1 000027c9: SWAP3 000027ca: MSTORE 000027cb: PUSH1 0x40 000027cd: DUP4 000027ce: ADD 000027cf: MSTORE 000027d0: PUSH1 0x60 000027d2: DUP3 000027d3: ADD 000027d4: MSTORE 000027d5: PUSH1 0x80 000027d7: ADD 000027d8: SWAP1 000027d9: JUMP 000027da: JUMPDEST 000027db: PUSH1 0x00 000027dd: DUP1 000027de: PUSH2 0x27e6 000027e1: DUP7 000027e2: PUSH2 0x2aa7 000027e5: JUMP 000027e6: JUMPDEST 000027e7: SWAP1 000027e8: POP 000027e9: PUSH2 0x27f4 000027ec: DUP2 000027ed: DUP7 000027ee: DUP7 000027ef: DUP7 000027f0: PUSH2 0x2ad9 000027f3: JUMP 000027f4: JUMPDEST 000027f5: SWAP7 000027f6: SWAP6 000027f7: POP 000027f8: POP 000027f9: POP 000027fa: POP 000027fb: POP 000027fc: POP 000027fd: JUMP 000027fe: JUMPDEST 000027ff: PUSH1 0x00 00002801: PUSH2 0x2860 00002804: DUP3 00002805: PUSH1 0x40 00002807: MLOAD 00002808: DUP1 00002809: PUSH1 0x40 0000280b: ADD 0000280c: PUSH1 0x40 0000280e: MSTORE 0000280f: DUP1 00002810: PUSH1 0x20 00002812: DUP2 00002813: MSTORE 00002814: PUSH1 0x20 00002816: ADD 00002817: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564 00002838: DUP2 00002839: MSTORE 0000283a: POP 0000283b: DUP6 0000283c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002851: AND 00002852: PUSH2 0x2b09 00002855: SWAP1 00002856: SWAP3 00002857: SWAP2 00002858: SWAP1 00002859: PUSH4 0xffffffff 0000285e: AND 0000285f: JUMP 00002860: JUMPDEST 00002861: DUP1 00002862: MLOAD 00002863: SWAP1 00002864: SWAP2 00002865: POP 00002866: ISZERO 00002867: PUSH2 0x290a 0000286a: JUMPI 0000286b: DUP1 0000286c: DUP1 0000286d: PUSH1 0x20 0000286f: ADD 00002870: SWAP1 00002871: MLOAD 00002872: DUP2 00002873: ADD 00002874: SWAP1 00002875: PUSH2 0x287e 00002878: SWAP2 00002879: SWAP1 0000287a: PUSH2 0x5849 0000287d: JUMP 0000287e: JUMPDEST 0000287f: PUSH2 0x290a 00002882: JUMPI 00002883: PUSH1 0x40 00002885: MLOAD 00002886: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000028a7: DUP2 000028a8: MSTORE 000028a9: PUSH1 0x20 000028ab: PUSH1 0x04 000028ad: DUP3 000028ae: ADD 000028af: MSTORE 000028b0: PUSH1 0x2a 000028b2: PUSH1 0x24 000028b4: DUP3 000028b5: ADD 000028b6: MSTORE 000028b7: PUSH32 0x5361666545524332303a204552433230206f7065726174696f6e20646964206e 000028d8: PUSH1 0x44 000028da: DUP3 000028db: ADD 000028dc: MSTORE 000028dd: PUSH32 0x6f74207375636365656400000000000000000000000000000000000000000000 000028fe: PUSH1 0x64 00002900: DUP3 00002901: ADD 00002902: MSTORE 00002903: PUSH1 0x84 00002905: ADD 00002906: PUSH2 0x01d7 00002909: JUMP 0000290a: JUMPDEST 0000290b: POP 0000290c: POP 0000290d: POP 0000290e: JUMP 0000290f: JUMPDEST 00002910: PUSH1 0x40 00002912: DUP1 00002913: MLOAD 00002914: PUSH1 0xc0 00002916: DUP2 00002917: ADD 00002918: DUP3 00002919: MSTORE 0000291a: PUSH1 0x00 0000291c: DUP1 0000291d: DUP3 0000291e: MSTORE 0000291f: PUSH1 0x20 00002921: DUP3 00002922: ADD 00002923: DUP2 00002924: SWAP1 00002925: MSTORE 00002926: SWAP2 00002927: DUP2 00002928: ADD 00002929: DUP3 0000292a: SWAP1 0000292b: MSTORE 0000292c: PUSH1 0x60 0000292e: DUP2 0000292f: ADD 00002930: DUP3 00002931: SWAP1 00002932: MSTORE 00002933: PUSH1 0x80 00002935: DUP2 00002936: ADD 00002937: DUP3 00002938: SWAP1 00002939: MSTORE 0000293a: PUSH1 0xa0 0000293c: DUP2 0000293d: ADD 0000293e: SWAP2 0000293f: SWAP1 00002940: SWAP2 00002941: MSTORE 00002942: PUSH32 0x000000000000000000000000427ea0710fa5252057f0d88274f7aeb308386caf 00002963: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002978: AND 00002979: PUSH4 0xcc731b02 0000297e: PUSH1 0x40 00002980: MLOAD 00002981: DUP2 00002982: PUSH4 0xffffffff 00002987: AND 00002988: PUSH1 0xe0 0000298a: SHL 0000298b: DUP2 0000298c: MSTORE 0000298d: PUSH1 0x04 0000298f: ADD 00002990: PUSH1 0xc0 00002992: PUSH1 0x40 00002994: MLOAD 00002995: DUP1 00002996: DUP4 00002997: SUB 00002998: DUP2 00002999: DUP7 0000299a: GAS 0000299b: STATICCALL 0000299c: ISZERO 0000299d: DUP1 0000299e: ISZERO 0000299f: PUSH2 0x29ac 000029a2: JUMPI 000029a3: RETURNDATASIZE 000029a4: PUSH1 0x00 000029a6: DUP1 000029a7: RETURNDATACOPY 000029a8: RETURNDATASIZE 000029a9: PUSH1 0x00 000029ab: REVERT 000029ac: JUMPDEST 000029ad: POP 000029ae: POP 000029af: POP 000029b0: POP 000029b1: PUSH1 0x40 000029b3: MLOAD 000029b4: RETURNDATASIZE 000029b5: PUSH1 0x1f 000029b7: NOT 000029b8: PUSH1 0x1f 000029ba: DUP3 000029bb: ADD 000029bc: AND 000029bd: DUP3 000029be: ADD 000029bf: DUP1 000029c0: PUSH1 0x40 000029c2: MSTORE 000029c3: POP 000029c4: DUP2 000029c5: ADD 000029c6: SWAP1 000029c7: PUSH2 0x29d0 000029ca: SWAP2 000029cb: SWAP1 000029cc: PUSH2 0x5e0a 000029cf: JUMP 000029d0: JUMPDEST 000029d1: SWAP1 000029d2: POP 000029d3: SWAP1 000029d4: JUMP 000029d5: JUMPDEST 000029d6: PUSH1 0x00 000029d8: PUSH2 0x29ea 000029db: PUSH2 0x29e4 000029de: DUP6 000029df: DUP6 000029e0: PUSH2 0x2b18 000029e3: JUMP 000029e4: JUMPDEST 000029e5: DUP4 000029e6: PUSH2 0x2b28 000029e9: JUMP 000029ea: JUMPDEST 000029eb: SWAP1 000029ec: POP 000029ed: JUMPDEST 000029ee: SWAP4 000029ef: SWAP3 000029f0: POP 000029f1: POP 000029f2: POP 000029f3: JUMP 000029f4: JUMPDEST 000029f5: PUSH1 0x00 000029f7: PUSH8 0x0de0b6b3a7640000 00002a00: PUSH2 0x2a35 00002a03: PUSH2 0x2a0c 00002a06: DUP6 00002a07: DUP4 00002a08: PUSH2 0x5a97 00002a0b: JUMP 00002a0c: JUMPDEST 00002a0d: PUSH2 0x2a1e 00002a10: SWAP1 00002a11: PUSH8 0x0de0b6b3a7640000 00002a1a: PUSH2 0x5aff 00002a1d: JUMP 00002a1e: JUMPDEST 00002a1f: PUSH2 0x2a30 00002a22: DUP6 00002a23: PUSH8 0x0de0b6b3a7640000 00002a2c: PUSH2 0x5b73 00002a2f: JUMP 00002a30: JUMPDEST 00002a31: PUSH2 0x2b37 00002a34: JUMP 00002a35: JUMPDEST 00002a36: PUSH2 0x2a3f 00002a39: SWAP1 00002a3a: DUP7 00002a3b: PUSH2 0x5b73 00002a3e: JUMP 00002a3f: JUMPDEST 00002a40: PUSH2 0x29ea 00002a43: SWAP2 00002a44: SWAP1 00002a45: PUSH2 0x5a97 00002a48: JUMP 00002a49: JUMPDEST 00002a4a: PUSH1 0x00 00002a4c: DUP2 00002a4d: DUP4 00002a4e: LT 00002a4f: ISZERO 00002a50: PUSH2 0x2a59 00002a53: JUMPI 00002a54: DUP2 00002a55: PUSH2 0x29ed 00002a58: JUMP 00002a59: JUMPDEST 00002a5a: POP 00002a5b: SWAP1 00002a5c: SWAP2 00002a5d: SWAP1 00002a5e: POP 00002a5f: JUMP 00002a60: JUMPDEST 00002a61: PUSH1 0x00 00002a63: DUP1 00002a64: GAS 00002a65: SWAP1 00002a66: POP 00002a67: JUMPDEST 00002a68: DUP3 00002a69: GAS 00002a6a: PUSH2 0x2a73 00002a6d: SWAP1 00002a6e: DUP4 00002a6f: PUSH2 0x5a51 00002a72: JUMP 00002a73: JUMPDEST 00002a74: LT 00002a75: ISZERO 00002a76: PUSH2 0x290a 00002a79: JUMPI 00002a7a: PUSH2 0x2a82 00002a7d: DUP3 00002a7e: PUSH2 0x5d6a 00002a81: JUMP 00002a82: JUMPDEST 00002a83: SWAP2 00002a84: POP 00002a85: PUSH2 0x2a67 00002a88: JUMP 00002a89: JUMPDEST 00002a8a: PUSH1 0x00 00002a8c: DUP1 00002a8d: PUSH1 0x3f 00002a8f: DUP4 00002a90: PUSH2 0x9c40 00002a93: ADD 00002a94: MUL 00002a95: PUSH1 0x40 00002a97: DUP6 00002a98: MUL 00002a99: ADD 00002a9a: PUSH1 0x3f 00002a9c: GAS 00002a9d: MUL 00002a9e: LT 00002a9f: ISZERO 00002aa0: SWAP5 00002aa1: SWAP4 00002aa2: POP 00002aa3: POP 00002aa4: POP 00002aa5: POP 00002aa6: JUMP 00002aa7: JUMPDEST 00002aa8: PUSH1 0x60 00002aaa: DUP2 00002aab: DUP1 00002aac: MLOAD 00002aad: SWAP1 00002aae: PUSH1 0x20 00002ab0: ADD 00002ab1: KECCAK256 00002ab2: PUSH1 0x40 00002ab4: MLOAD 00002ab5: PUSH1 0x20 00002ab7: ADD 00002ab8: PUSH2 0x2ac3 00002abb: SWAP2 00002abc: DUP2 00002abd: MSTORE 00002abe: PUSH1 0x20 00002ac0: ADD 00002ac1: SWAP1 00002ac2: JUMP 00002ac3: JUMPDEST 00002ac4: PUSH1 0x40 00002ac6: MLOAD 00002ac7: PUSH1 0x20 00002ac9: DUP2 00002aca: DUP4 00002acb: SUB 00002acc: SUB 00002acd: DUP2 00002ace: MSTORE 00002acf: SWAP1 00002ad0: PUSH1 0x40 00002ad2: MSTORE 00002ad3: SWAP1 00002ad4: POP 00002ad5: SWAP2 00002ad6: SWAP1 00002ad7: POP 00002ad8: JUMP 00002ad9: JUMPDEST 00002ada: PUSH1 0x00 00002adc: PUSH2 0x2b00 00002adf: DUP5 00002ae0: PUSH2 0x2aea 00002ae3: DUP8 00002ae4: DUP7 00002ae5: DUP7 00002ae6: PUSH2 0x2b68 00002ae9: JUMP 00002aea: JUMPDEST 00002aeb: DUP1 00002aec: MLOAD 00002aed: PUSH1 0x20 00002aef: SWAP2 00002af0: DUP3 00002af1: ADD 00002af2: KECCAK256 00002af3: DUP3 00002af4: MLOAD 00002af5: SWAP3 00002af6: SWAP1 00002af7: SWAP2 00002af8: ADD 00002af9: SWAP2 00002afa: SWAP1 00002afb: SWAP2 00002afc: KECCAK256 00002afd: EQ 00002afe: SWAP1 00002aff: JUMP 00002b00: JUMPDEST 00002b01: SWAP6 00002b02: SWAP5 00002b03: POP 00002b04: POP 00002b05: POP 00002b06: POP 00002b07: POP 00002b08: JUMP 00002b09: JUMPDEST 00002b0a: PUSH1 0x60 00002b0c: PUSH2 0x29ea 00002b0f: DUP5 00002b10: DUP5 00002b11: PUSH1 0x00 00002b13: DUP6 00002b14: PUSH2 0x35f0 00002b17: JUMP 00002b18: JUMPDEST 00002b19: PUSH1 0x00 00002b1b: DUP2 00002b1c: DUP4 00002b1d: SLT 00002b1e: ISZERO 00002b1f: PUSH2 0x2a59 00002b22: JUMPI 00002b23: DUP2 00002b24: PUSH2 0x29ed 00002b27: JUMP 00002b28: JUMPDEST 00002b29: PUSH1 0x00 00002b2b: DUP2 00002b2c: DUP4 00002b2d: SLT 00002b2e: PUSH2 0x2a59 00002b31: JUMPI 00002b32: DUP2 00002b33: PUSH2 0x29ed 00002b36: JUMP 00002b37: JUMPDEST 00002b38: PUSH1 0x00 00002b3a: PUSH2 0x29ed 00002b3d: PUSH8 0x0de0b6b3a7640000 00002b46: DUP4 00002b47: PUSH2 0x2b4f 00002b4a: DUP7 00002b4b: PUSH2 0x3786 00002b4e: JUMP 00002b4f: JUMPDEST 00002b50: PUSH2 0x2b59 00002b53: SWAP2 00002b54: SWAP1 00002b55: PUSH2 0x5b73 00002b58: JUMP 00002b59: JUMPDEST 00002b5a: PUSH2 0x2b63 00002b5d: SWAP2 00002b5e: SWAP1 00002b5f: PUSH2 0x5a97 00002b62: JUMP 00002b63: JUMPDEST 00002b64: PUSH2 0x39ca 00002b67: JUMP 00002b68: JUMPDEST 00002b69: PUSH1 0x60 00002b6b: PUSH1 0x00 00002b6d: DUP5 00002b6e: MLOAD 00002b6f: GT 00002b70: PUSH2 0x2bd5 00002b73: JUMPI 00002b74: PUSH1 0x40 00002b76: MLOAD 00002b77: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002b98: DUP2 00002b99: MSTORE 00002b9a: PUSH1 0x20 00002b9c: PUSH1 0x04 00002b9e: DUP3 00002b9f: ADD 00002ba0: MSTORE 00002ba1: PUSH1 0x15 00002ba3: PUSH1 0x24 00002ba5: DUP3 00002ba6: ADD 00002ba7: MSTORE 00002ba8: PUSH32 0x4d65726b6c65547269653a20656d707479206b65790000000000000000000000 00002bc9: PUSH1 0x44 00002bcb: DUP3 00002bcc: ADD 00002bcd: MSTORE 00002bce: PUSH1 0x64 00002bd0: ADD 00002bd1: PUSH2 0x01d7 00002bd4: JUMP 00002bd5: JUMPDEST 00002bd6: PUSH1 0x00 00002bd8: PUSH2 0x2be0 00002bdb: DUP5 00002bdc: PUSH2 0x3c09 00002bdf: JUMP 00002be0: JUMPDEST 00002be1: SWAP1 00002be2: POP 00002be3: PUSH1 0x00 00002be5: PUSH2 0x2bed 00002be8: DUP7 00002be9: PUSH2 0x3cf8 00002bec: JUMP 00002bed: JUMPDEST 00002bee: SWAP1 00002bef: POP 00002bf0: PUSH1 0x00 00002bf2: DUP5 00002bf3: PUSH1 0x40 00002bf5: MLOAD 00002bf6: PUSH1 0x20 00002bf8: ADD 00002bf9: PUSH2 0x2c04 00002bfc: SWAP2 00002bfd: DUP2 00002bfe: MSTORE 00002bff: PUSH1 0x20 00002c01: ADD 00002c02: SWAP1 00002c03: JUMP 00002c04: JUMPDEST 00002c05: PUSH1 0x40 00002c07: MLOAD 00002c08: PUSH1 0x20 00002c0a: DUP2 00002c0b: DUP4 00002c0c: SUB 00002c0d: SUB 00002c0e: DUP2 00002c0f: MSTORE 00002c10: SWAP1 00002c11: PUSH1 0x40 00002c13: MSTORE 00002c14: SWAP1 00002c15: POP 00002c16: PUSH1 0x00 00002c18: DUP1 00002c19: JUMPDEST 00002c1a: DUP5 00002c1b: MLOAD 00002c1c: DUP2 00002c1d: LT 00002c1e: ISZERO 00002c1f: PUSH2 0x3567 00002c22: JUMPI 00002c23: PUSH1 0x00 00002c25: DUP6 00002c26: DUP3 00002c27: DUP2 00002c28: MLOAD 00002c29: DUP2 00002c2a: LT 00002c2b: PUSH2 0x2c36 00002c2e: JUMPI 00002c2f: PUSH2 0x2c36 00002c32: PUSH2 0x5db6 00002c35: JUMP 00002c36: JUMPDEST 00002c37: PUSH1 0x20 00002c39: MUL 00002c3a: PUSH1 0x20 00002c3c: ADD 00002c3d: ADD 00002c3e: MLOAD 00002c3f: SWAP1 00002c40: POP 00002c41: DUP5 00002c42: MLOAD 00002c43: DUP4 00002c44: GT 00002c45: ISZERO 00002c46: PUSH2 0x2cd1 00002c49: JUMPI 00002c4a: PUSH1 0x40 00002c4c: MLOAD 00002c4d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002c6e: DUP2 00002c6f: MSTORE 00002c70: PUSH1 0x20 00002c72: PUSH1 0x04 00002c74: DUP3 00002c75: ADD 00002c76: MSTORE 00002c77: PUSH1 0x2e 00002c79: PUSH1 0x24 00002c7b: DUP3 00002c7c: ADD 00002c7d: MSTORE 00002c7e: PUSH32 0x4d65726b6c65547269653a206b657920696e646578206578636565647320746f 00002c9f: PUSH1 0x44 00002ca1: DUP3 00002ca2: ADD 00002ca3: MSTORE 00002ca4: PUSH32 0x74616c206b6579206c656e677468000000000000000000000000000000000000 00002cc5: PUSH1 0x64 00002cc7: DUP3 00002cc8: ADD 00002cc9: MSTORE 00002cca: PUSH1 0x84 00002ccc: ADD 00002ccd: PUSH2 0x01d7 00002cd0: JUMP 00002cd1: JUMPDEST 00002cd2: DUP3 00002cd3: PUSH1 0x00 00002cd5: SUB 00002cd6: PUSH2 0x2d8a 00002cd9: JUMPI 00002cda: DUP1 00002cdb: MLOAD 00002cdc: DUP1 00002cdd: MLOAD 00002cde: PUSH1 0x20 00002ce0: SWAP2 00002ce1: DUP3 00002ce2: ADD 00002ce3: KECCAK256 00002ce4: PUSH1 0x40 00002ce6: MLOAD 00002ce7: PUSH2 0x2d1f 00002cea: SWAP3 00002ceb: PUSH2 0x2cf9 00002cee: SWAP3 00002cef: SWAP2 00002cf0: ADD 00002cf1: SWAP1 00002cf2: DUP2 00002cf3: MSTORE 00002cf4: PUSH1 0x20 00002cf6: ADD 00002cf7: SWAP1 00002cf8: JUMP 00002cf9: JUMPDEST 00002cfa: PUSH1 0x40 00002cfc: MLOAD 00002cfd: PUSH1 0x20 00002cff: DUP2 00002d00: DUP4 00002d01: SUB 00002d02: SUB 00002d03: DUP2 00002d04: MSTORE 00002d05: SWAP1 00002d06: PUSH1 0x40 00002d08: MSTORE 00002d09: DUP6 00002d0a: DUP1 00002d0b: MLOAD 00002d0c: PUSH1 0x20 00002d0e: SWAP2 00002d0f: DUP3 00002d10: ADD 00002d11: KECCAK256 00002d12: DUP3 00002d13: MLOAD 00002d14: SWAP3 00002d15: SWAP1 00002d16: SWAP2 00002d17: ADD 00002d18: SWAP2 00002d19: SWAP1 00002d1a: SWAP2 00002d1b: KECCAK256 00002d1c: EQ 00002d1d: SWAP1 00002d1e: JUMP 00002d1f: JUMPDEST 00002d20: PUSH2 0x2d85 00002d23: JUMPI 00002d24: PUSH1 0x40 00002d26: MLOAD 00002d27: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002d48: DUP2 00002d49: MSTORE 00002d4a: PUSH1 0x20 00002d4c: PUSH1 0x04 00002d4e: DUP3 00002d4f: ADD 00002d50: MSTORE 00002d51: PUSH1 0x1d 00002d53: PUSH1 0x24 00002d55: DUP3 00002d56: ADD 00002d57: MSTORE 00002d58: PUSH32 0x4d65726b6c65547269653a20696e76616c696420726f6f742068617368000000 00002d79: PUSH1 0x44 00002d7b: DUP3 00002d7c: ADD 00002d7d: MSTORE 00002d7e: PUSH1 0x64 00002d80: ADD 00002d81: PUSH2 0x01d7 00002d84: JUMP 00002d85: JUMPDEST 00002d86: PUSH2 0x2ee1 00002d89: JUMP 00002d8a: JUMPDEST 00002d8b: DUP1 00002d8c: MLOAD 00002d8d: MLOAD 00002d8e: PUSH1 0x20 00002d90: GT 00002d91: PUSH2 0x2e40 00002d94: JUMPI 00002d95: DUP1 00002d96: MLOAD 00002d97: DUP1 00002d98: MLOAD 00002d99: PUSH1 0x20 00002d9b: SWAP2 00002d9c: DUP3 00002d9d: ADD 00002d9e: KECCAK256 00002d9f: PUSH1 0x40 00002da1: MLOAD 00002da2: PUSH2 0x2db4 00002da5: SWAP3 00002da6: PUSH2 0x2cf9 00002da9: SWAP3 00002daa: SWAP2 00002dab: ADD 00002dac: SWAP1 00002dad: DUP2 00002dae: MSTORE 00002daf: PUSH1 0x20 00002db1: ADD 00002db2: SWAP1 00002db3: JUMP 00002db4: JUMPDEST 00002db5: PUSH2 0x2d85 00002db8: JUMPI 00002db9: PUSH1 0x40 00002dbb: MLOAD 00002dbc: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002ddd: DUP2 00002dde: MSTORE 00002ddf: PUSH1 0x20 00002de1: PUSH1 0x04 00002de3: DUP3 00002de4: ADD 00002de5: MSTORE 00002de6: PUSH1 0x27 00002de8: PUSH1 0x24 00002dea: DUP3 00002deb: ADD 00002dec: MSTORE 00002ded: PUSH32 0x4d65726b6c65547269653a20696e76616c6964206c6172676520696e7465726e 00002e0e: PUSH1 0x44 00002e10: DUP3 00002e11: ADD 00002e12: MSTORE 00002e13: PUSH32 0x616c206861736800000000000000000000000000000000000000000000000000 00002e34: PUSH1 0x64 00002e36: DUP3 00002e37: ADD 00002e38: MSTORE 00002e39: PUSH1 0x84 00002e3b: ADD 00002e3c: PUSH2 0x01d7 00002e3f: JUMP 00002e40: JUMPDEST 00002e41: DUP1 00002e42: MLOAD 00002e43: DUP5 00002e44: MLOAD 00002e45: PUSH1 0x20 00002e47: DUP1 00002e48: DUP8 00002e49: ADD 00002e4a: SWAP2 00002e4b: SWAP1 00002e4c: SWAP2 00002e4d: KECCAK256 00002e4e: DUP3 00002e4f: MLOAD 00002e50: SWAP2 00002e51: SWAP1 00002e52: SWAP3 00002e53: ADD 00002e54: KECCAK256 00002e55: EQ 00002e56: PUSH2 0x2ee1 00002e59: JUMPI 00002e5a: PUSH1 0x40 00002e5c: MLOAD 00002e5d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002e7e: DUP2 00002e7f: MSTORE 00002e80: PUSH1 0x20 00002e82: PUSH1 0x04 00002e84: DUP3 00002e85: ADD 00002e86: MSTORE 00002e87: PUSH1 0x26 00002e89: PUSH1 0x24 00002e8b: DUP3 00002e8c: ADD 00002e8d: MSTORE 00002e8e: PUSH32 0x4d65726b6c65547269653a20696e76616c696420696e7465726e616c206e6f64 00002eaf: PUSH1 0x44 00002eb1: DUP3 00002eb2: ADD 00002eb3: MSTORE 00002eb4: PUSH32 0x6520686173680000000000000000000000000000000000000000000000000000 00002ed5: PUSH1 0x64 00002ed7: DUP3 00002ed8: ADD 00002ed9: MSTORE 00002eda: PUSH1 0x84 00002edc: ADD 00002edd: PUSH2 0x01d7 00002ee0: JUMP 00002ee1: JUMPDEST 00002ee2: PUSH2 0x2eed 00002ee5: PUSH1 0x10 00002ee7: PUSH1 0x01 00002ee9: PUSH2 0x5d52 00002eec: JUMP 00002eed: JUMPDEST 00002eee: DUP2 00002eef: PUSH1 0x20 00002ef1: ADD 00002ef2: MLOAD 00002ef3: MLOAD 00002ef4: SUB 00002ef5: PUSH2 0x30ce 00002ef8: JUMPI 00002ef9: DUP5 00002efa: MLOAD 00002efb: DUP4 00002efc: SUB 00002efd: PUSH2 0x3066 00002f00: JUMPI 00002f01: PUSH1 0x00 00002f03: PUSH2 0x2f29 00002f06: DUP3 00002f07: PUSH1 0x20 00002f09: ADD 00002f0a: MLOAD 00002f0b: PUSH1 0x10 00002f0d: DUP2 00002f0e: MLOAD 00002f0f: DUP2 00002f10: LT 00002f11: PUSH2 0x2f1c 00002f14: JUMPI 00002f15: PUSH2 0x2f1c 00002f18: PUSH2 0x5db6 00002f1b: JUMP 00002f1c: JUMPDEST 00002f1d: PUSH1 0x20 00002f1f: MUL 00002f20: PUSH1 0x20 00002f22: ADD 00002f23: ADD 00002f24: MLOAD 00002f25: PUSH2 0x3e93 00002f28: JUMP 00002f29: JUMPDEST 00002f2a: SWAP1 00002f2b: POP 00002f2c: PUSH1 0x00 00002f2e: DUP2 00002f2f: MLOAD 00002f30: GT 00002f31: PUSH2 0x2fbc 00002f34: JUMPI 00002f35: PUSH1 0x40 00002f37: MLOAD 00002f38: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002f59: DUP2 00002f5a: MSTORE 00002f5b: PUSH1 0x20 00002f5d: PUSH1 0x04 00002f5f: DUP3 00002f60: ADD 00002f61: MSTORE 00002f62: PUSH1 0x3b 00002f64: PUSH1 0x24 00002f66: DUP3 00002f67: ADD 00002f68: MSTORE 00002f69: PUSH32 0x4d65726b6c65547269653a2076616c7565206c656e677468206d757374206265 00002f8a: PUSH1 0x44 00002f8c: DUP3 00002f8d: ADD 00002f8e: MSTORE 00002f8f: PUSH32 0x2067726561746572207468616e207a65726f20286272616e6368290000000000 00002fb0: PUSH1 0x64 00002fb2: DUP3 00002fb3: ADD 00002fb4: MSTORE 00002fb5: PUSH1 0x84 00002fb7: ADD 00002fb8: PUSH2 0x01d7 00002fbb: JUMP 00002fbc: JUMPDEST 00002fbd: PUSH1 0x01 00002fbf: DUP8 00002fc0: MLOAD 00002fc1: PUSH2 0x2fca 00002fc4: SWAP2 00002fc5: SWAP1 00002fc6: PUSH2 0x5a51 00002fc9: JUMP 00002fca: JUMPDEST 00002fcb: DUP4 00002fcc: EQ 00002fcd: PUSH2 0x3058 00002fd0: JUMPI 00002fd1: PUSH1 0x40 00002fd3: MLOAD 00002fd4: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002ff5: DUP2 00002ff6: MSTORE 00002ff7: PUSH1 0x20 00002ff9: PUSH1 0x04 00002ffb: DUP3 00002ffc: ADD 00002ffd: MSTORE 00002ffe: PUSH1 0x3a 00003000: PUSH1 0x24 00003002: DUP3 00003003: ADD 00003004: MSTORE 00003005: PUSH32 0x4d65726b6c65547269653a2076616c7565206e6f6465206d757374206265206c 00003026: PUSH1 0x44 00003028: DUP3 00003029: ADD 0000302a: MSTORE 0000302b: PUSH32 0x617374206e6f646520696e2070726f6f6620286272616e636829000000000000 0000304c: PUSH1 0x64 0000304e: DUP3 0000304f: ADD 00003050: MSTORE 00003051: PUSH1 0x84 00003053: ADD 00003054: PUSH2 0x01d7 00003057: JUMP 00003058: JUMPDEST 00003059: SWAP7 0000305a: POP 0000305b: PUSH2 0x29ed 0000305e: SWAP6 0000305f: POP 00003060: POP 00003061: POP 00003062: POP 00003063: POP 00003064: POP 00003065: JUMP 00003066: JUMPDEST 00003067: PUSH1 0x00 00003069: DUP6 0000306a: DUP5 0000306b: DUP2 0000306c: MLOAD 0000306d: DUP2 0000306e: LT 0000306f: PUSH2 0x307a 00003072: JUMPI 00003073: PUSH2 0x307a 00003076: PUSH2 0x5db6 00003079: JUMP 0000307a: JUMPDEST 0000307b: PUSH1 0x20 0000307d: ADD 0000307e: ADD 0000307f: MLOAD 00003080: PUSH1 0xf8 00003082: SHR 00003083: PUSH1 0xf8 00003085: SHL 00003086: PUSH1 0xf8 00003088: SHR 00003089: SWAP1 0000308a: POP 0000308b: PUSH1 0x00 0000308d: DUP3 0000308e: PUSH1 0x20 00003090: ADD 00003091: MLOAD 00003092: DUP3 00003093: PUSH1 0xff 00003095: AND 00003096: DUP2 00003097: MLOAD 00003098: DUP2 00003099: LT 0000309a: PUSH2 0x30a5 0000309d: JUMPI 0000309e: PUSH2 0x30a5 000030a1: PUSH2 0x5db6 000030a4: JUMP 000030a5: JUMPDEST 000030a6: PUSH1 0x20 000030a8: MUL 000030a9: PUSH1 0x20 000030ab: ADD 000030ac: ADD 000030ad: MLOAD 000030ae: SWAP1 000030af: POP 000030b0: PUSH2 0x30b8 000030b3: DUP2 000030b4: PUSH2 0x3ff3 000030b7: JUMP 000030b8: JUMPDEST 000030b9: SWAP6 000030ba: POP 000030bb: PUSH2 0x30c5 000030be: PUSH1 0x01 000030c0: DUP7 000030c1: PUSH2 0x5d52 000030c4: JUMP 000030c5: JUMPDEST 000030c6: SWAP5 000030c7: POP 000030c8: POP 000030c9: POP 000030ca: PUSH2 0x3554 000030cd: JUMP 000030ce: JUMPDEST 000030cf: PUSH1 0x02 000030d1: DUP2 000030d2: PUSH1 0x20 000030d4: ADD 000030d5: MLOAD 000030d6: MLOAD 000030d7: SUB 000030d8: PUSH2 0x34cc 000030db: JUMPI 000030dc: PUSH1 0x00 000030de: PUSH2 0x30e6 000030e1: DUP3 000030e2: PUSH2 0x4018 000030e5: JUMP 000030e6: JUMPDEST 000030e7: SWAP1 000030e8: POP 000030e9: PUSH1 0x00 000030eb: DUP2 000030ec: PUSH1 0x00 000030ee: DUP2 000030ef: MLOAD 000030f0: DUP2 000030f1: LT 000030f2: PUSH2 0x30fd 000030f5: JUMPI 000030f6: PUSH2 0x30fd 000030f9: PUSH2 0x5db6 000030fc: JUMP 000030fd: JUMPDEST 000030fe: ADD 000030ff: PUSH1 0x20 00003101: ADD 00003102: MLOAD 00003103: PUSH1 0xf8 00003105: SHR 00003106: SWAP1 00003107: POP 00003108: PUSH1 0x00 0000310a: PUSH2 0x3114 0000310d: PUSH1 0x02 0000310f: DUP4 00003110: PUSH2 0x5ea9 00003113: JUMP 00003114: JUMPDEST 00003115: PUSH2 0x311f 00003118: SWAP1 00003119: PUSH1 0x02 0000311b: PUSH2 0x5ecb 0000311e: JUMP 0000311f: JUMPDEST 00003120: SWAP1 00003121: POP 00003122: PUSH1 0x00 00003124: PUSH2 0x3130 00003127: DUP5 00003128: DUP4 00003129: PUSH1 0xff 0000312b: AND 0000312c: PUSH2 0x403c 0000312f: JUMP 00003130: JUMPDEST 00003131: SWAP1 00003132: POP 00003133: PUSH1 0x00 00003135: PUSH2 0x313e 00003138: DUP11 00003139: DUP10 0000313a: PUSH2 0x403c 0000313d: JUMP 0000313e: JUMPDEST 0000313f: SWAP1 00003140: POP 00003141: PUSH1 0x00 00003143: PUSH2 0x314c 00003146: DUP4 00003147: DUP4 00003148: PUSH2 0x4072 0000314b: JUMP 0000314c: JUMPDEST 0000314d: SWAP1 0000314e: POP 0000314f: DUP1 00003150: DUP4 00003151: MLOAD 00003152: EQ 00003153: PUSH2 0x31de 00003156: JUMPI 00003157: PUSH1 0x40 00003159: MLOAD 0000315a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000317b: DUP2 0000317c: MSTORE 0000317d: PUSH1 0x20 0000317f: PUSH1 0x04 00003181: DUP3 00003182: ADD 00003183: MSTORE 00003184: PUSH1 0x3a 00003186: PUSH1 0x24 00003188: DUP3 00003189: ADD 0000318a: MSTORE 0000318b: PUSH32 0x4d65726b6c65547269653a20706174682072656d61696e646572206d75737420 000031ac: PUSH1 0x44 000031ae: DUP3 000031af: ADD 000031b0: MSTORE 000031b1: PUSH32 0x736861726520616c6c206e6962626c65732077697468206b6579000000000000 000031d2: PUSH1 0x64 000031d4: DUP3 000031d5: ADD 000031d6: MSTORE 000031d7: PUSH1 0x84 000031d9: ADD 000031da: PUSH2 0x01d7 000031dd: JUMP 000031de: JUMPDEST 000031df: PUSH1 0xff 000031e1: DUP6 000031e2: AND 000031e3: PUSH1 0x02 000031e5: EQ 000031e6: DUP1 000031e7: PUSH2 0x31f3 000031ea: JUMPI 000031eb: POP 000031ec: PUSH1 0xff 000031ee: DUP6 000031ef: AND 000031f0: PUSH1 0x03 000031f2: EQ 000031f3: JUMPDEST 000031f4: ISZERO 000031f5: PUSH2 0x33e7 000031f8: JUMPI 000031f9: DUP1 000031fa: DUP3 000031fb: MLOAD 000031fc: EQ 000031fd: PUSH2 0x3288 00003200: JUMPI 00003201: PUSH1 0x40 00003203: MLOAD 00003204: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003225: DUP2 00003226: MSTORE 00003227: PUSH1 0x20 00003229: PUSH1 0x04 0000322b: DUP3 0000322c: ADD 0000322d: MSTORE 0000322e: PUSH1 0x3d 00003230: PUSH1 0x24 00003232: DUP3 00003233: ADD 00003234: MSTORE 00003235: PUSH32 0x4d65726b6c65547269653a206b65792072656d61696e646572206d7573742062 00003256: PUSH1 0x44 00003258: DUP3 00003259: ADD 0000325a: MSTORE 0000325b: PUSH32 0x65206964656e746963616c20746f20706174682072656d61696e646572000000 0000327c: PUSH1 0x64 0000327e: DUP3 0000327f: ADD 00003280: MSTORE 00003281: PUSH1 0x84 00003283: ADD 00003284: PUSH2 0x01d7 00003287: JUMP 00003288: JUMPDEST 00003289: PUSH1 0x00 0000328b: PUSH2 0x32a4 0000328e: DUP9 0000328f: PUSH1 0x20 00003291: ADD 00003292: MLOAD 00003293: PUSH1 0x01 00003295: DUP2 00003296: MLOAD 00003297: DUP2 00003298: LT 00003299: PUSH2 0x2f1c 0000329c: JUMPI 0000329d: PUSH2 0x2f1c 000032a0: PUSH2 0x5db6 000032a3: JUMP 000032a4: JUMPDEST 000032a5: SWAP1 000032a6: POP 000032a7: PUSH1 0x00 000032a9: DUP2 000032aa: MLOAD 000032ab: GT 000032ac: PUSH2 0x3337 000032af: JUMPI 000032b0: PUSH1 0x40 000032b2: MLOAD 000032b3: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000032d4: DUP2 000032d5: MSTORE 000032d6: PUSH1 0x20 000032d8: PUSH1 0x04 000032da: DUP3 000032db: ADD 000032dc: MSTORE 000032dd: PUSH1 0x39 000032df: PUSH1 0x24 000032e1: DUP3 000032e2: ADD 000032e3: MSTORE 000032e4: PUSH32 0x4d65726b6c65547269653a2076616c7565206c656e677468206d757374206265 00003305: PUSH1 0x44 00003307: DUP3 00003308: ADD 00003309: MSTORE 0000330a: PUSH32 0x2067726561746572207468616e207a65726f20286c6561662900000000000000 0000332b: PUSH1 0x64 0000332d: DUP3 0000332e: ADD 0000332f: MSTORE 00003330: PUSH1 0x84 00003332: ADD 00003333: PUSH2 0x01d7 00003336: JUMP 00003337: JUMPDEST 00003338: PUSH1 0x01 0000333a: DUP14 0000333b: MLOAD 0000333c: PUSH2 0x3345 0000333f: SWAP2 00003340: SWAP1 00003341: PUSH2 0x5a51 00003344: JUMP 00003345: JUMPDEST 00003346: DUP10 00003347: EQ 00003348: PUSH2 0x33d3 0000334b: JUMPI 0000334c: PUSH1 0x40 0000334e: MLOAD 0000334f: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003370: DUP2 00003371: MSTORE 00003372: PUSH1 0x20 00003374: PUSH1 0x04 00003376: DUP3 00003377: ADD 00003378: MSTORE 00003379: PUSH1 0x38 0000337b: PUSH1 0x24 0000337d: DUP3 0000337e: ADD 0000337f: MSTORE 00003380: PUSH32 0x4d65726b6c65547269653a2076616c7565206e6f6465206d757374206265206c 000033a1: PUSH1 0x44 000033a3: DUP3 000033a4: ADD 000033a5: MSTORE 000033a6: PUSH32 0x617374206e6f646520696e2070726f6f6620286c656166290000000000000000 000033c7: PUSH1 0x64 000033c9: DUP3 000033ca: ADD 000033cb: MSTORE 000033cc: PUSH1 0x84 000033ce: ADD 000033cf: PUSH2 0x01d7 000033d2: JUMP 000033d3: JUMPDEST 000033d4: SWAP13 000033d5: POP 000033d6: PUSH2 0x29ed 000033d9: SWAP12 000033da: POP 000033db: POP 000033dc: POP 000033dd: POP 000033de: POP 000033df: POP 000033e0: POP 000033e1: POP 000033e2: POP 000033e3: POP 000033e4: POP 000033e5: POP 000033e6: JUMP 000033e7: JUMPDEST 000033e8: PUSH1 0xff 000033ea: DUP6 000033eb: AND 000033ec: ISZERO 000033ed: DUP1 000033ee: PUSH2 0x33fa 000033f1: JUMPI 000033f2: POP 000033f3: PUSH1 0xff 000033f5: DUP6 000033f6: AND 000033f7: PUSH1 0x01 000033f9: EQ 000033fa: JUMPDEST 000033fb: ISZERO 000033fc: PUSH2 0x3439 000033ff: JUMPI 00003400: PUSH2 0x3426 00003403: DUP8 00003404: PUSH1 0x20 00003406: ADD 00003407: MLOAD 00003408: PUSH1 0x01 0000340a: DUP2 0000340b: MLOAD 0000340c: DUP2 0000340d: LT 0000340e: PUSH2 0x3419 00003411: JUMPI 00003412: PUSH2 0x3419 00003415: PUSH2 0x5db6 00003418: JUMP 00003419: JUMPDEST 0000341a: PUSH1 0x20 0000341c: MUL 0000341d: PUSH1 0x20 0000341f: ADD 00003420: ADD 00003421: MLOAD 00003422: PUSH2 0x3ff3 00003425: JUMP 00003426: JUMPDEST 00003427: SWAP10 00003428: POP 00003429: PUSH2 0x3432 0000342c: DUP2 0000342d: DUP11 0000342e: PUSH2 0x5d52 00003431: JUMP 00003432: JUMPDEST 00003433: SWAP9 00003434: POP 00003435: PUSH2 0x34c1 00003438: JUMP 00003439: JUMPDEST 0000343a: PUSH1 0x40 0000343c: MLOAD 0000343d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000345e: DUP2 0000345f: MSTORE 00003460: PUSH1 0x20 00003462: PUSH1 0x04 00003464: DUP3 00003465: ADD 00003466: MSTORE 00003467: PUSH1 0x32 00003469: PUSH1 0x24 0000346b: DUP3 0000346c: ADD 0000346d: MSTORE 0000346e: PUSH32 0x4d65726b6c65547269653a2072656365697665642061206e6f64652077697468 0000348f: PUSH1 0x44 00003491: DUP3 00003492: ADD 00003493: MSTORE 00003494: PUSH32 0x20616e20756e6b6e6f776e207072656669780000000000000000000000000000 000034b5: PUSH1 0x64 000034b7: DUP3 000034b8: ADD 000034b9: MSTORE 000034ba: PUSH1 0x84 000034bc: ADD 000034bd: PUSH2 0x01d7 000034c0: JUMP 000034c1: JUMPDEST 000034c2: POP 000034c3: POP 000034c4: POP 000034c5: POP 000034c6: POP 000034c7: POP 000034c8: PUSH2 0x3554 000034cb: JUMP 000034cc: JUMPDEST 000034cd: PUSH1 0x40 000034cf: MLOAD 000034d0: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000034f1: DUP2 000034f2: MSTORE 000034f3: PUSH1 0x20 000034f5: PUSH1 0x04 000034f7: DUP3 000034f8: ADD 000034f9: MSTORE 000034fa: PUSH1 0x28 000034fc: PUSH1 0x24 000034fe: DUP3 000034ff: ADD 00003500: MSTORE 00003501: PUSH32 0x4d65726b6c65547269653a20726563656976656420616e20756e706172736561 00003522: PUSH1 0x44 00003524: DUP3 00003525: ADD 00003526: MSTORE 00003527: PUSH32 0x626c65206e6f6465000000000000000000000000000000000000000000000000 00003548: PUSH1 0x64 0000354a: DUP3 0000354b: ADD 0000354c: MSTORE 0000354d: PUSH1 0x84 0000354f: ADD 00003550: PUSH2 0x01d7 00003553: JUMP 00003554: JUMPDEST 00003555: POP 00003556: DUP1 00003557: PUSH2 0x355f 0000355a: DUP2 0000355b: PUSH2 0x5d6a 0000355e: JUMP 0000355f: JUMPDEST 00003560: SWAP2 00003561: POP 00003562: POP 00003563: PUSH2 0x2c19 00003566: JUMP 00003567: JUMPDEST 00003568: POP 00003569: PUSH1 0x40 0000356b: MLOAD 0000356c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000358d: DUP2 0000358e: MSTORE 0000358f: PUSH1 0x20 00003591: PUSH1 0x04 00003593: DUP3 00003594: ADD 00003595: MSTORE 00003596: PUSH1 0x25 00003598: PUSH1 0x24 0000359a: DUP3 0000359b: ADD 0000359c: MSTORE 0000359d: PUSH32 0x4d65726b6c65547269653a2072616e206f7574206f662070726f6f6620656c65 000035be: PUSH1 0x44 000035c0: DUP3 000035c1: ADD 000035c2: MSTORE 000035c3: PUSH32 0x6d656e7473000000000000000000000000000000000000000000000000000000 000035e4: PUSH1 0x64 000035e6: DUP3 000035e7: ADD 000035e8: MSTORE 000035e9: PUSH1 0x84 000035eb: ADD 000035ec: PUSH2 0x01d7 000035ef: JUMP 000035f0: JUMPDEST 000035f1: PUSH1 0x60 000035f3: DUP3 000035f4: SELFBALANCE 000035f5: LT 000035f6: ISZERO 000035f7: PUSH2 0x3682 000035fa: JUMPI 000035fb: PUSH1 0x40 000035fd: MLOAD 000035fe: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000361f: DUP2 00003620: MSTORE 00003621: PUSH1 0x20 00003623: PUSH1 0x04 00003625: DUP3 00003626: ADD 00003627: MSTORE 00003628: PUSH1 0x26 0000362a: PUSH1 0x24 0000362c: DUP3 0000362d: ADD 0000362e: MSTORE 0000362f: PUSH32 0x416464726573733a20696e73756666696369656e742062616c616e636520666f 00003650: PUSH1 0x44 00003652: DUP3 00003653: ADD 00003654: MSTORE 00003655: PUSH32 0x722063616c6c0000000000000000000000000000000000000000000000000000 00003676: PUSH1 0x64 00003678: DUP3 00003679: ADD 0000367a: MSTORE 0000367b: PUSH1 0x84 0000367d: ADD 0000367e: PUSH2 0x01d7 00003681: JUMP 00003682: JUMPDEST 00003683: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003698: DUP6 00003699: AND 0000369a: EXTCODESIZE 0000369b: PUSH2 0x3700 0000369e: JUMPI 0000369f: PUSH1 0x40 000036a1: MLOAD 000036a2: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000036c3: DUP2 000036c4: MSTORE 000036c5: PUSH1 0x20 000036c7: PUSH1 0x04 000036c9: DUP3 000036ca: ADD 000036cb: MSTORE 000036cc: PUSH1 0x1d 000036ce: PUSH1 0x24 000036d0: DUP3 000036d1: ADD 000036d2: MSTORE 000036d3: PUSH32 0x416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000 000036f4: PUSH1 0x44 000036f6: DUP3 000036f7: ADD 000036f8: MSTORE 000036f9: PUSH1 0x64 000036fb: ADD 000036fc: PUSH2 0x01d7 000036ff: JUMP 00003700: JUMPDEST 00003701: PUSH1 0x00 00003703: DUP1 00003704: DUP7 00003705: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000371a: AND 0000371b: DUP6 0000371c: DUP8 0000371d: PUSH1 0x40 0000371f: MLOAD 00003720: PUSH2 0x3729 00003723: SWAP2 00003724: SWAP1 00003725: PUSH2 0x5eee 00003728: JUMP 00003729: JUMPDEST 0000372a: PUSH1 0x00 0000372c: PUSH1 0x40 0000372e: MLOAD 0000372f: DUP1 00003730: DUP4 00003731: SUB 00003732: DUP2 00003733: DUP6 00003734: DUP8 00003735: GAS 00003736: CALL 00003737: SWAP3 00003738: POP 00003739: POP 0000373a: POP 0000373b: RETURNDATASIZE 0000373c: DUP1 0000373d: PUSH1 0x00 0000373f: DUP2 00003740: EQ 00003741: PUSH2 0x3766 00003744: JUMPI 00003745: PUSH1 0x40 00003747: MLOAD 00003748: SWAP2 00003749: POP 0000374a: PUSH1 0x1f 0000374c: NOT 0000374d: PUSH1 0x3f 0000374f: RETURNDATASIZE 00003750: ADD 00003751: AND 00003752: DUP3 00003753: ADD 00003754: PUSH1 0x40 00003756: MSTORE 00003757: RETURNDATASIZE 00003758: DUP3 00003759: MSTORE 0000375a: RETURNDATASIZE 0000375b: PUSH1 0x00 0000375d: PUSH1 0x20 0000375f: DUP5 00003760: ADD 00003761: RETURNDATACOPY 00003762: PUSH2 0x376b 00003765: JUMP 00003766: JUMPDEST 00003767: PUSH1 0x60 00003769: SWAP2 0000376a: POP 0000376b: JUMPDEST 0000376c: POP 0000376d: SWAP2 0000376e: POP 0000376f: SWAP2 00003770: POP 00003771: PUSH2 0x377b 00003774: DUP3 00003775: DUP3 00003776: DUP7 00003777: PUSH2 0x4121 0000377a: JUMP 0000377b: JUMPDEST 0000377c: SWAP8 0000377d: SWAP7 0000377e: POP 0000377f: POP 00003780: POP 00003781: POP 00003782: POP 00003783: POP 00003784: POP 00003785: JUMP 00003786: JUMPDEST 00003787: PUSH1 0x00 00003789: DUP1 0000378a: DUP3 0000378b: SGT 0000378c: PUSH2 0x37f1 0000378f: JUMPI 00003790: PUSH1 0x40 00003792: MLOAD 00003793: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000037b4: DUP2 000037b5: MSTORE 000037b6: PUSH1 0x20 000037b8: PUSH1 0x04 000037ba: DUP3 000037bb: ADD 000037bc: MSTORE 000037bd: PUSH1 0x09 000037bf: PUSH1 0x24 000037c1: DUP3 000037c2: ADD 000037c3: MSTORE 000037c4: PUSH32 0x554e444546494e45440000000000000000000000000000000000000000000000 000037e5: PUSH1 0x44 000037e7: DUP3 000037e8: ADD 000037e9: MSTORE 000037ea: PUSH1 0x64 000037ec: ADD 000037ed: PUSH2 0x01d7 000037f0: JUMP 000037f1: JUMPDEST 000037f2: PUSH1 0x00 000037f4: PUSH1 0x60 000037f6: PUSH2 0x37fe 000037f9: DUP5 000037fa: PUSH2 0x4174 000037fd: JUMP 000037fe: JUMPDEST 000037ff: SUB 00003800: PUSH1 0x9f 00003802: DUP2 00003803: DUP2 00003804: SUB 00003805: SWAP5 00003806: SWAP1 00003807: SWAP5 00003808: SHL 00003809: SWAP1 0000380a: SWAP4 0000380b: SHR 0000380c: PUSH13 0x465772b2bbbb5f824b15207a30 0000381a: DUP2 0000381b: ADD 0000381c: DUP2 0000381d: MUL 0000381e: PUSH1 0x60 00003820: SWAP1 00003821: DUP2 00003822: SAR 00003823: PUSH14 0x0388eaa27412d5aca026815d636e 00003832: ADD 00003833: DUP3 00003834: MUL 00003835: DUP2 00003836: SAR 00003837: PUSH14 0x0df99ac502031bf953eff472fdcc 00003846: ADD 00003847: DUP3 00003848: MUL 00003849: DUP2 0000384a: SAR 0000384b: PUSH14 0x13cdffb29d51d99322bdff5f2211 0000385a: ADD 0000385b: DUP3 0000385c: MUL 0000385d: DUP2 0000385e: SAR 0000385f: PUSH14 0x0a0f742023def783a307a986912e 0000386e: ADD 0000386f: DUP3 00003870: MUL 00003871: DUP2 00003872: SAR 00003873: PUSH14 0x01920d8043ca89b5239253284e42 00003882: ADD 00003883: DUP3 00003884: MUL 00003885: DUP2 00003886: SAR 00003887: PUSH13 0x0b7a86d7375468fac667a0a527 00003895: ADD 00003896: PUSH13 0x29508e458543d8aa4df2abee78 000038a4: DUP4 000038a5: ADD 000038a6: DUP4 000038a7: MUL 000038a8: DUP3 000038a9: SAR 000038aa: PUSH14 0x0139601a2efabe717e604cbb4894 000038b9: ADD 000038ba: DUP4 000038bb: MUL 000038bc: DUP3 000038bd: SAR 000038be: PUSH14 0x02247f7a7b6594320649aa03aba1 000038cd: ADD 000038ce: DUP4 000038cf: MUL 000038d0: DUP3 000038d1: SAR 000038d2: PUSH32 0xffffffffffffffffffffffffffffffffffffff73c0c716a594e00d54e3c4cbc9 000038f3: ADD 000038f4: DUP4 000038f5: MUL 000038f6: DUP3 000038f7: SAR 000038f8: PUSH32 0xfffffffffffffffffffffffffffffffffffffdc7b88c420e53a9890533129f6f 00003919: ADD 0000391a: DUP4 0000391b: MUL 0000391c: SWAP1 0000391d: SWAP2 0000391e: SAR 0000391f: PUSH32 0xffffffffffffffffffffffffffffffffffffff465fda27eb4d63ded474e5f832 00003940: ADD 00003941: SWAP1 00003942: SWAP2 00003943: MUL 00003944: PUSH32 0xfffffffffffffff5f6af8f7b3396644f18e15796000000000000000000000000 00003965: ADD 00003966: SDIV 00003967: PUSH18 0x1340daa0d5f769dba1915cef59f0815a5506 0000397a: MUL 0000397b: PUSH30 0x0267a36c0c95b3975ab3ee5b203a7614a3f75373f047d803ae7b6687f2b3 0000399a: SWAP4 0000399b: SWAP1 0000399c: SWAP4 0000399d: MUL 0000399e: SWAP3 0000399f: SWAP1 000039a0: SWAP3 000039a1: ADD 000039a2: PUSH30 0x57115e47018c7177eebf7cd370a3356a1b7863008a5ae8028c72b8864284 000039c1: ADD 000039c2: PUSH1 0xae 000039c4: SAR 000039c5: SWAP3 000039c6: SWAP2 000039c7: POP 000039c8: POP 000039c9: JUMP 000039ca: JUMPDEST 000039cb: PUSH1 0x00 000039cd: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffdb731c958f34d94c1 000039ee: DUP3 000039ef: SGT 000039f0: PUSH2 0x39fb 000039f3: JUMPI 000039f4: POP 000039f5: PUSH1 0x00 000039f7: SWAP2 000039f8: SWAP1 000039f9: POP 000039fa: JUMP 000039fb: JUMPDEST 000039fc: PUSH9 0x0755bf798b4a1bf1e5 00003a06: DUP3 00003a07: SLT 00003a08: PUSH2 0x3a6d 00003a0b: JUMPI 00003a0c: PUSH1 0x40 00003a0e: MLOAD 00003a0f: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003a30: DUP2 00003a31: MSTORE 00003a32: PUSH1 0x20 00003a34: PUSH1 0x04 00003a36: DUP3 00003a37: ADD 00003a38: MSTORE 00003a39: PUSH1 0x0c 00003a3b: PUSH1 0x24 00003a3d: DUP3 00003a3e: ADD 00003a3f: MSTORE 00003a40: PUSH32 0x4558505f4f564552464c4f570000000000000000000000000000000000000000 00003a61: PUSH1 0x44 00003a63: DUP3 00003a64: ADD 00003a65: MSTORE 00003a66: PUSH1 0x64 00003a68: ADD 00003a69: PUSH2 0x01d7 00003a6c: JUMP 00003a6d: JUMPDEST 00003a6e: PUSH6 0x03782dace9d9 00003a75: PUSH1 0x4e 00003a77: DUP4 00003a78: SWAP1 00003a79: SHL 00003a7a: SDIV 00003a7b: SWAP2 00003a7c: POP 00003a7d: PUSH1 0x00 00003a7f: PUSH1 0x60 00003a81: PUSH12 0xb17217f7d1cf79abc9e3b398 00003a8e: DUP5 00003a8f: DUP3 00003a90: SHL 00003a91: SDIV 00003a92: PUSH12 0x800000000000000000000000 00003a9f: ADD 00003aa0: SWAP1 00003aa1: SAR 00003aa2: PUSH12 0xb17217f7d1cf79abc9e3b398 00003aaf: DUP2 00003ab0: MUL 00003ab1: SWAP1 00003ab2: SWAP4 00003ab3: SUB 00003ab4: PUSH32 0xffffffffffffffffffffffffffffffffffffffdbf3ccf1604d263450f02a5504 00003ad5: DUP2 00003ad6: ADD 00003ad7: DUP2 00003ad8: MUL 00003ad9: PUSH1 0x60 00003adb: SWAP1 00003adc: DUP2 00003add: SAR 00003ade: PUSH14 0x0277594991cfc85f6e2461837cd9 00003aed: ADD 00003aee: DUP3 00003aef: MUL 00003af0: DUP2 00003af1: SAR 00003af2: PUSH32 0xffffffffffffffffffffffffffffffffffffe5adedaa1cb095af9e4da10e363c 00003b13: ADD 00003b14: DUP3 00003b15: MUL 00003b16: DUP2 00003b17: SAR 00003b18: PUSH14 0xb1bbb201f443cf962f1a1d3db4a5 00003b27: ADD 00003b28: DUP3 00003b29: MUL 00003b2a: DUP2 00003b2b: SAR 00003b2c: PUSH32 0xfffffffffffffffffffffffffffffffffffd38dc772608b0ae56cce01296c0eb 00003b4d: ADD 00003b4e: DUP3 00003b4f: MUL 00003b50: DUP2 00003b51: SAR 00003b52: PUSH15 0x05180bb14799ab47a8a8cb2a527d57 00003b62: ADD 00003b63: PUSH14 0x02d16720577bd19bf614176fe9ea 00003b72: PUSH13 0x10fe68e7fd37d0007b713f7650 00003b80: DUP5 00003b81: ADD 00003b82: DUP5 00003b83: MUL 00003b84: DUP4 00003b85: SAR 00003b86: SWAP1 00003b87: DUP2 00003b88: ADD 00003b89: SWAP1 00003b8a: DUP5 00003b8b: ADD 00003b8c: PUSH32 0xfffffffffffffffffffffffffffffffffffffe2c69812cf03b0763fd454a8f7e 00003bad: ADD 00003bae: MUL 00003baf: SWAP1 00003bb0: SWAP2 00003bb1: SAR 00003bb2: PUSH15 0x0587f503bb6ea29d25fcb740196450 00003bc2: ADD 00003bc3: SWAP1 00003bc4: SWAP2 00003bc5: MUL 00003bc6: PUSH26 0xd835ebba824c98fb31b83b2ca45c000000000000000000000000 00003be1: ADD 00003be2: SDIV 00003be3: PUSH21 0x029d9dc38563c32e5c2f6dc192ee70ef65f9978af3 00003bf9: MUL 00003bfa: PUSH1 0xc3 00003bfc: SWAP4 00003bfd: SWAP1 00003bfe: SWAP4 00003bff: SUB 00003c00: SWAP3 00003c01: SWAP1 00003c02: SWAP3 00003c03: SHR 00003c04: SWAP3 00003c05: SWAP2 00003c06: POP 00003c07: POP 00003c08: JUMP 00003c09: JUMPDEST 00003c0a: DUP1 00003c0b: MLOAD 00003c0c: PUSH1 0x60 00003c0e: SWAP1 00003c0f: PUSH1 0x00 00003c11: DUP2 00003c12: PUSH8 0xffffffffffffffff 00003c1b: DUP2 00003c1c: GT 00003c1d: ISZERO 00003c1e: PUSH2 0x3c29 00003c21: JUMPI 00003c22: PUSH2 0x3c29 00003c25: PUSH2 0x52a6 00003c28: JUMP 00003c29: JUMPDEST 00003c2a: PUSH1 0x40 00003c2c: MLOAD 00003c2d: SWAP1 00003c2e: DUP1 00003c2f: DUP3 00003c30: MSTORE 00003c31: DUP1 00003c32: PUSH1 0x20 00003c34: MUL 00003c35: PUSH1 0x20 00003c37: ADD 00003c38: DUP3 00003c39: ADD 00003c3a: PUSH1 0x40 00003c3c: MSTORE 00003c3d: DUP1 00003c3e: ISZERO 00003c3f: PUSH2 0x3c6e 00003c42: JUMPI 00003c43: DUP2 00003c44: PUSH1 0x20 00003c46: ADD 00003c47: JUMPDEST 00003c48: PUSH1 0x40 00003c4a: DUP1 00003c4b: MLOAD 00003c4c: DUP1 00003c4d: DUP3 00003c4e: ADD 00003c4f: SWAP1 00003c50: SWAP2 00003c51: MSTORE 00003c52: PUSH1 0x60 00003c54: DUP1 00003c55: DUP3 00003c56: MSTORE 00003c57: PUSH1 0x20 00003c59: DUP3 00003c5a: ADD 00003c5b: MSTORE 00003c5c: DUP2 00003c5d: MSTORE 00003c5e: PUSH1 0x20 00003c60: ADD 00003c61: SWAP1 00003c62: PUSH1 0x01 00003c64: SWAP1 00003c65: SUB 00003c66: SWAP1 00003c67: DUP2 00003c68: PUSH2 0x3c47 00003c6b: JUMPI 00003c6c: SWAP1 00003c6d: POP 00003c6e: JUMPDEST 00003c6f: POP 00003c70: SWAP1 00003c71: POP 00003c72: PUSH1 0x00 00003c74: JUMPDEST 00003c75: DUP3 00003c76: DUP2 00003c77: LT 00003c78: ISZERO 00003c79: PUSH2 0x3cf0 00003c7c: JUMPI 00003c7d: PUSH1 0x40 00003c7f: MLOAD 00003c80: DUP1 00003c81: PUSH1 0x40 00003c83: ADD 00003c84: PUSH1 0x40 00003c86: MSTORE 00003c87: DUP1 00003c88: DUP7 00003c89: DUP4 00003c8a: DUP2 00003c8b: MLOAD 00003c8c: DUP2 00003c8d: LT 00003c8e: PUSH2 0x3c99 00003c91: JUMPI 00003c92: PUSH2 0x3c99 00003c95: PUSH2 0x5db6 00003c98: JUMP 00003c99: JUMPDEST 00003c9a: PUSH1 0x20 00003c9c: MUL 00003c9d: PUSH1 0x20 00003c9f: ADD 00003ca0: ADD 00003ca1: MLOAD 00003ca2: DUP2 00003ca3: MSTORE 00003ca4: PUSH1 0x20 00003ca6: ADD 00003ca7: PUSH2 0x3cc8 00003caa: DUP8 00003cab: DUP5 00003cac: DUP2 00003cad: MLOAD 00003cae: DUP2 00003caf: LT 00003cb0: PUSH2 0x3cbb 00003cb3: JUMPI 00003cb4: PUSH2 0x3cbb 00003cb7: PUSH2 0x5db6 00003cba: JUMP 00003cbb: JUMPDEST 00003cbc: PUSH1 0x20 00003cbe: MUL 00003cbf: PUSH1 0x20 00003cc1: ADD 00003cc2: ADD 00003cc3: MLOAD 00003cc4: PUSH2 0x424a 00003cc7: JUMP 00003cc8: JUMPDEST 00003cc9: DUP2 00003cca: MSTORE 00003ccb: POP 00003ccc: DUP3 00003ccd: DUP3 00003cce: DUP2 00003ccf: MLOAD 00003cd0: DUP2 00003cd1: LT 00003cd2: PUSH2 0x3cdd 00003cd5: JUMPI 00003cd6: PUSH2 0x3cdd 00003cd9: PUSH2 0x5db6 00003cdc: JUMP 00003cdd: JUMPDEST 00003cde: PUSH1 0x20 00003ce0: SWAP1 00003ce1: DUP2 00003ce2: MUL 00003ce3: SWAP2 00003ce4: SWAP1 00003ce5: SWAP2 00003ce6: ADD 00003ce7: ADD 00003ce8: MSTORE 00003ce9: PUSH1 0x01 00003ceb: ADD 00003cec: PUSH2 0x3c74 00003cef: JUMP 00003cf0: JUMPDEST 00003cf1: POP 00003cf2: SWAP4 00003cf3: SWAP3 00003cf4: POP 00003cf5: POP 00003cf6: POP 00003cf7: JUMP 00003cf8: JUMPDEST 00003cf9: DUP1 00003cfa: MLOAD 00003cfb: PUSH1 0x60 00003cfd: SWAP1 00003cfe: PUSH1 0x00 00003d00: PUSH2 0x3d0a 00003d03: DUP3 00003d04: PUSH1 0x02 00003d06: PUSH2 0x5ca3 00003d09: JUMP 00003d0a: JUMPDEST 00003d0b: PUSH8 0xffffffffffffffff 00003d14: DUP2 00003d15: GT 00003d16: ISZERO 00003d17: PUSH2 0x3d22 00003d1a: JUMPI 00003d1b: PUSH2 0x3d22 00003d1e: PUSH2 0x52a6 00003d21: JUMP 00003d22: JUMPDEST 00003d23: PUSH1 0x40 00003d25: MLOAD 00003d26: SWAP1 00003d27: DUP1 00003d28: DUP3 00003d29: MSTORE 00003d2a: DUP1 00003d2b: PUSH1 0x1f 00003d2d: ADD 00003d2e: PUSH1 0x1f 00003d30: NOT 00003d31: AND 00003d32: PUSH1 0x20 00003d34: ADD 00003d35: DUP3 00003d36: ADD 00003d37: PUSH1 0x40 00003d39: MSTORE 00003d3a: DUP1 00003d3b: ISZERO 00003d3c: PUSH2 0x3d4c 00003d3f: JUMPI 00003d40: PUSH1 0x20 00003d42: DUP3 00003d43: ADD 00003d44: DUP2 00003d45: DUP1 00003d46: CALLDATASIZE 00003d47: DUP4 00003d48: CALLDATACOPY 00003d49: ADD 00003d4a: SWAP1 00003d4b: POP 00003d4c: JUMPDEST 00003d4d: POP 00003d4e: SWAP1 00003d4f: POP 00003d50: PUSH1 0x00 00003d52: DUP1 00003d53: JUMPDEST 00003d54: DUP4 00003d55: DUP2 00003d56: LT 00003d57: ISZERO 00003d58: PUSH2 0x3e89 00003d5b: JUMPI 00003d5c: DUP6 00003d5d: DUP2 00003d5e: DUP2 00003d5f: MLOAD 00003d60: DUP2 00003d61: LT 00003d62: PUSH2 0x3d6d 00003d65: JUMPI 00003d66: PUSH2 0x3d6d 00003d69: PUSH2 0x5db6 00003d6c: JUMP 00003d6d: JUMPDEST 00003d6e: PUSH1 0x20 00003d70: SWAP2 00003d71: ADD 00003d72: ADD 00003d73: MLOAD 00003d74: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 00003d95: DUP2 00003d96: AND 00003d97: SWAP3 00003d98: POP 00003d99: PUSH1 0x04 00003d9b: SHR 00003d9c: PUSH32 0x0ff0000000000000000000000000000000000000000000000000000000000000 00003dbd: AND 00003dbe: DUP4 00003dbf: PUSH2 0x3dc9 00003dc2: DUP4 00003dc3: PUSH1 0x02 00003dc5: PUSH2 0x5ca3 00003dc8: JUMP 00003dc9: JUMPDEST 00003dca: DUP2 00003dcb: MLOAD 00003dcc: DUP2 00003dcd: LT 00003dce: PUSH2 0x3dd9 00003dd1: JUMPI 00003dd2: PUSH2 0x3dd9 00003dd5: PUSH2 0x5db6 00003dd8: JUMP 00003dd9: JUMPDEST 00003dda: PUSH1 0x20 00003ddc: ADD 00003ddd: ADD 00003dde: SWAP1 00003ddf: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00003dff: NOT 00003e00: AND 00003e01: SWAP1 00003e02: DUP2 00003e03: PUSH1 0x00 00003e05: BYTE 00003e06: SWAP1 00003e07: MSTORE8 00003e08: POP 00003e09: PUSH32 0x0f00000000000000000000000000000000000000000000000000000000000000 00003e2a: DUP3 00003e2b: AND 00003e2c: DUP4 00003e2d: PUSH2 0x3e37 00003e30: DUP4 00003e31: PUSH1 0x02 00003e33: PUSH2 0x5ca3 00003e36: JUMP 00003e37: JUMPDEST 00003e38: PUSH2 0x3e42 00003e3b: SWAP1 00003e3c: PUSH1 0x01 00003e3e: PUSH2 0x5d52 00003e41: JUMP 00003e42: JUMPDEST 00003e43: DUP2 00003e44: MLOAD 00003e45: DUP2 00003e46: LT 00003e47: PUSH2 0x3e52 00003e4a: JUMPI 00003e4b: PUSH2 0x3e52 00003e4e: PUSH2 0x5db6 00003e51: JUMP 00003e52: JUMPDEST 00003e53: PUSH1 0x20 00003e55: ADD 00003e56: ADD 00003e57: SWAP1 00003e58: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00003e78: NOT 00003e79: AND 00003e7a: SWAP1 00003e7b: DUP2 00003e7c: PUSH1 0x00 00003e7e: BYTE 00003e7f: SWAP1 00003e80: MSTORE8 00003e81: POP 00003e82: PUSH1 0x01 00003e84: ADD 00003e85: PUSH2 0x3d53 00003e88: JUMP 00003e89: JUMPDEST 00003e8a: POP 00003e8b: SWAP1 00003e8c: SWAP5 00003e8d: SWAP4 00003e8e: POP 00003e8f: POP 00003e90: POP 00003e91: POP 00003e92: JUMP 00003e93: JUMPDEST 00003e94: PUSH1 0x60 00003e96: PUSH1 0x00 00003e98: DUP1 00003e99: PUSH1 0x00 00003e9b: PUSH2 0x3ea3 00003e9e: DUP6 00003e9f: PUSH2 0x425d 00003ea2: JUMP 00003ea3: JUMPDEST 00003ea4: SWAP2 00003ea5: SWAP5 00003ea6: POP 00003ea7: SWAP3 00003ea8: POP 00003ea9: SWAP1 00003eaa: POP 00003eab: PUSH1 0x00 00003ead: DUP2 00003eae: PUSH1 0x01 00003eb0: DUP2 00003eb1: GT 00003eb2: ISZERO 00003eb3: PUSH2 0x3ebe 00003eb6: JUMPI 00003eb7: PUSH2 0x3ebe 00003eba: PUSH2 0x5f0a 00003ebd: JUMP 00003ebe: JUMPDEST 00003ebf: EQ 00003ec0: PUSH2 0x3f4b 00003ec3: JUMPI 00003ec4: PUSH1 0x40 00003ec6: MLOAD 00003ec7: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003ee8: DUP2 00003ee9: MSTORE 00003eea: PUSH1 0x20 00003eec: PUSH1 0x04 00003eee: DUP3 00003eef: ADD 00003ef0: MSTORE 00003ef1: PUSH1 0x39 00003ef3: PUSH1 0x24 00003ef5: DUP3 00003ef6: ADD 00003ef7: MSTORE 00003ef8: PUSH32 0x524c505265616465723a206465636f646564206974656d207479706520666f72 00003f19: PUSH1 0x44 00003f1b: DUP3 00003f1c: ADD 00003f1d: MSTORE 00003f1e: PUSH32 0x206279746573206973206e6f7420612064617461206974656d00000000000000 00003f3f: PUSH1 0x64 00003f41: DUP3 00003f42: ADD 00003f43: MSTORE 00003f44: PUSH1 0x84 00003f46: ADD 00003f47: PUSH2 0x01d7 00003f4a: JUMP 00003f4b: JUMPDEST 00003f4c: PUSH2 0x3f55 00003f4f: DUP3 00003f50: DUP5 00003f51: PUSH2 0x5d52 00003f54: JUMP 00003f55: JUMPDEST 00003f56: DUP6 00003f57: MLOAD 00003f58: EQ 00003f59: PUSH2 0x3fe4 00003f5c: JUMPI 00003f5d: PUSH1 0x40 00003f5f: MLOAD 00003f60: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003f81: DUP2 00003f82: MSTORE 00003f83: PUSH1 0x20 00003f85: PUSH1 0x04 00003f87: DUP3 00003f88: ADD 00003f89: MSTORE 00003f8a: PUSH1 0x34 00003f8c: PUSH1 0x24 00003f8e: DUP3 00003f8f: ADD 00003f90: MSTORE 00003f91: PUSH32 0x524c505265616465723a2062797465732076616c756520636f6e7461696e7320 00003fb2: PUSH1 0x44 00003fb4: DUP3 00003fb5: ADD 00003fb6: MSTORE 00003fb7: PUSH32 0x616e20696e76616c69642072656d61696e646572000000000000000000000000 00003fd8: PUSH1 0x64 00003fda: DUP3 00003fdb: ADD 00003fdc: MSTORE 00003fdd: PUSH1 0x84 00003fdf: ADD 00003fe0: PUSH2 0x01d7 00003fe3: JUMP 00003fe4: JUMPDEST 00003fe5: PUSH2 0x2b00 00003fe8: DUP6 00003fe9: PUSH1 0x20 00003feb: ADD 00003fec: MLOAD 00003fed: DUP5 00003fee: DUP5 00003fef: PUSH2 0x4cca 00003ff2: JUMP 00003ff3: JUMPDEST 00003ff4: PUSH1 0x60 00003ff6: PUSH1 0x20 00003ff8: DUP3 00003ff9: PUSH1 0x00 00003ffb: ADD 00003ffc: MLOAD 00003ffd: LT 00003ffe: PUSH2 0x400f 00004001: JUMPI 00004002: PUSH2 0x400a 00004005: DUP3 00004006: PUSH2 0x3e93 00004009: JUMP 0000400a: JUMPDEST 0000400b: PUSH2 0x1680 0000400e: JUMP 0000400f: JUMPDEST 00004010: PUSH2 0x1680 00004013: DUP3 00004014: PUSH2 0x4d6b 00004017: JUMP 00004018: JUMPDEST 00004019: PUSH1 0x60 0000401b: PUSH2 0x1680 0000401e: PUSH2 0x4037 00004021: DUP4 00004022: PUSH1 0x20 00004024: ADD 00004025: MLOAD 00004026: PUSH1 0x00 00004028: DUP2 00004029: MLOAD 0000402a: DUP2 0000402b: LT 0000402c: PUSH2 0x2f1c 0000402f: JUMPI 00004030: PUSH2 0x2f1c 00004033: PUSH2 0x5db6 00004036: JUMP 00004037: JUMPDEST 00004038: PUSH2 0x3cf8 0000403b: JUMP 0000403c: JUMPDEST 0000403d: PUSH1 0x60 0000403f: DUP3 00004040: MLOAD 00004041: DUP3 00004042: LT 00004043: PUSH2 0x405b 00004046: JUMPI 00004047: POP 00004048: PUSH1 0x40 0000404a: DUP1 0000404b: MLOAD 0000404c: PUSH1 0x20 0000404e: DUP2 0000404f: ADD 00004050: SWAP1 00004051: SWAP2 00004052: MSTORE 00004053: PUSH1 0x00 00004055: DUP2 00004056: MSTORE 00004057: PUSH2 0x1680 0000405a: JUMP 0000405b: JUMPDEST 0000405c: PUSH2 0x29ed 0000405f: DUP4 00004060: DUP4 00004061: DUP5 00004062: DUP7 00004063: MLOAD 00004064: PUSH2 0x406d 00004067: SWAP2 00004068: SWAP1 00004069: PUSH2 0x5a51 0000406c: JUMP 0000406d: JUMPDEST 0000406e: PUSH2 0x4d81 00004071: JUMP 00004072: JUMPDEST 00004073: PUSH1 0x00 00004075: DUP1 00004076: PUSH1 0x00 00004078: DUP4 00004079: MLOAD 0000407a: DUP6 0000407b: MLOAD 0000407c: LT 0000407d: PUSH2 0x4087 00004080: JUMPI 00004081: DUP4 00004082: MLOAD 00004083: PUSH2 0x408a 00004086: JUMP 00004087: JUMPDEST 00004088: DUP5 00004089: MLOAD 0000408a: JUMPDEST 0000408b: SWAP1 0000408c: POP 0000408d: JUMPDEST 0000408e: DUP1 0000408f: DUP3 00004090: LT 00004091: DUP1 00004092: ISZERO 00004093: PUSH2 0x4111 00004096: JUMPI 00004097: POP 00004098: DUP4 00004099: DUP3 0000409a: DUP2 0000409b: MLOAD 0000409c: DUP2 0000409d: LT 0000409e: PUSH2 0x40a9 000040a1: JUMPI 000040a2: PUSH2 0x40a9 000040a5: PUSH2 0x5db6 000040a8: JUMP 000040a9: JUMPDEST 000040aa: PUSH1 0x20 000040ac: ADD 000040ad: ADD 000040ae: MLOAD 000040af: PUSH1 0xf8 000040b1: SHR 000040b2: PUSH1 0xf8 000040b4: SHL 000040b5: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 000040d5: NOT 000040d6: AND 000040d7: DUP6 000040d8: DUP4 000040d9: DUP2 000040da: MLOAD 000040db: DUP2 000040dc: LT 000040dd: PUSH2 0x40e8 000040e0: JUMPI 000040e1: PUSH2 0x40e8 000040e4: PUSH2 0x5db6 000040e7: JUMP 000040e8: JUMPDEST 000040e9: ADD 000040ea: PUSH1 0x20 000040ec: ADD 000040ed: MLOAD 000040ee: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 0000410f: AND 00004110: EQ 00004111: JUMPDEST 00004112: ISZERO 00004113: PUSH2 0x3cf0 00004116: JUMPI 00004117: DUP2 00004118: PUSH1 0x01 0000411a: ADD 0000411b: SWAP2 0000411c: POP 0000411d: PUSH2 0x408d 00004120: JUMP 00004121: JUMPDEST 00004122: PUSH1 0x60 00004124: DUP4 00004125: ISZERO 00004126: PUSH2 0x4130 00004129: JUMPI 0000412a: POP 0000412b: DUP2 0000412c: PUSH2 0x29ed 0000412f: JUMP 00004130: JUMPDEST 00004131: DUP3 00004132: MLOAD 00004133: ISZERO 00004134: PUSH2 0x4140 00004137: JUMPI 00004138: DUP3 00004139: MLOAD 0000413a: DUP1 0000413b: DUP5 0000413c: PUSH1 0x20 0000413e: ADD 0000413f: REVERT 00004140: JUMPDEST 00004141: DUP2 00004142: PUSH1 0x40 00004144: MLOAD 00004145: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004166: DUP2 00004167: MSTORE 00004168: PUSH1 0x04 0000416a: ADD 0000416b: PUSH2 0x01d7 0000416e: SWAP2 0000416f: SWAP1 00004170: PUSH2 0x5541 00004173: JUMP 00004174: JUMPDEST 00004175: PUSH1 0x00 00004177: DUP1 00004178: DUP3 00004179: GT 0000417a: PUSH2 0x41df 0000417d: JUMPI 0000417e: PUSH1 0x40 00004180: MLOAD 00004181: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000041a2: DUP2 000041a3: MSTORE 000041a4: PUSH1 0x20 000041a6: PUSH1 0x04 000041a8: DUP3 000041a9: ADD 000041aa: MSTORE 000041ab: PUSH1 0x09 000041ad: PUSH1 0x24 000041af: DUP3 000041b0: ADD 000041b1: MSTORE 000041b2: PUSH32 0x554e444546494e45440000000000000000000000000000000000000000000000 000041d3: PUSH1 0x44 000041d5: DUP3 000041d6: ADD 000041d7: MSTORE 000041d8: PUSH1 0x64 000041da: ADD 000041db: PUSH2 0x01d7 000041de: JUMP 000041df: JUMPDEST 000041e0: POP 000041e1: PUSH1 0x01 000041e3: PUSH16 0xffffffffffffffffffffffffffffffff 000041f4: DUP3 000041f5: GT 000041f6: PUSH1 0x07 000041f8: SHL 000041f9: DUP3 000041fa: DUP2 000041fb: SHR 000041fc: PUSH8 0xffffffffffffffff 00004205: LT 00004206: PUSH1 0x06 00004208: SHL 00004209: OR 0000420a: DUP3 0000420b: DUP2 0000420c: SHR 0000420d: PUSH4 0xffffffff 00004212: LT 00004213: PUSH1 0x05 00004215: SHL 00004216: OR 00004217: DUP3 00004218: DUP2 00004219: SHR 0000421a: PUSH2 0xffff 0000421d: LT 0000421e: PUSH1 0x04 00004220: SHL 00004221: OR 00004222: DUP3 00004223: DUP2 00004224: SHR 00004225: PUSH1 0xff 00004227: LT 00004228: PUSH1 0x03 0000422a: SWAP1 0000422b: DUP2 0000422c: SHL 0000422d: SWAP1 0000422e: SWAP2 0000422f: OR 00004230: DUP4 00004231: DUP2 00004232: SHR 00004233: PUSH1 0x0f 00004235: LT 00004236: PUSH1 0x02 00004238: SHL 00004239: OR 0000423a: DUP4 0000423b: DUP2 0000423c: SHR 0000423d: SWAP1 0000423e: SWAP2 0000423f: LT 00004240: DUP3 00004241: SHL 00004242: OR 00004243: SWAP2 00004244: DUP3 00004245: SHR 00004246: GT 00004247: OR 00004248: SWAP1 00004249: JUMP 0000424a: JUMPDEST 0000424b: PUSH1 0x60 0000424d: PUSH2 0x1680 00004250: PUSH2 0x4258 00004253: DUP4 00004254: PUSH2 0x4f59 00004257: JUMP 00004258: JUMPDEST 00004259: PUSH2 0x5042 0000425c: JUMP 0000425d: JUMPDEST 0000425e: PUSH1 0x00 00004260: DUP1 00004261: PUSH1 0x00 00004263: DUP1 00004264: DUP5 00004265: PUSH1 0x00 00004267: ADD 00004268: MLOAD 00004269: GT 0000426a: PUSH2 0x431b 0000426d: JUMPI 0000426e: PUSH1 0x40 00004270: MLOAD 00004271: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004292: DUP2 00004293: MSTORE 00004294: PUSH1 0x20 00004296: PUSH1 0x04 00004298: DUP3 00004299: ADD 0000429a: MSTORE 0000429b: PUSH1 0x4a 0000429d: PUSH1 0x24 0000429f: DUP3 000042a0: ADD 000042a1: MSTORE 000042a2: PUSH32 0x524c505265616465723a206c656e677468206f6620616e20524c50206974656d 000042c3: PUSH1 0x44 000042c5: DUP3 000042c6: ADD 000042c7: MSTORE 000042c8: PUSH32 0x206d7573742062652067726561746572207468616e207a65726f20746f206265 000042e9: PUSH1 0x64 000042eb: DUP3 000042ec: ADD 000042ed: MSTORE 000042ee: PUSH32 0x206465636f6461626c6500000000000000000000000000000000000000000000 0000430f: PUSH1 0x84 00004311: DUP3 00004312: ADD 00004313: MSTORE 00004314: PUSH1 0xa4 00004316: ADD 00004317: PUSH2 0x01d7 0000431a: JUMP 0000431b: JUMPDEST 0000431c: PUSH1 0x20 0000431e: DUP5 0000431f: ADD 00004320: MLOAD 00004321: DUP1 00004322: MLOAD 00004323: PUSH1 0x00 00004325: BYTE 00004326: PUSH1 0x7f 00004328: DUP2 00004329: GT 0000432a: PUSH2 0x4340 0000432d: JUMPI 0000432e: PUSH1 0x00 00004330: PUSH1 0x01 00004332: PUSH1 0x00 00004334: SWAP5 00004335: POP 00004336: SWAP5 00004337: POP 00004338: SWAP5 00004339: POP 0000433a: POP 0000433b: POP 0000433c: PUSH2 0x4cc3 0000433f: JUMP 00004340: JUMPDEST 00004341: PUSH1 0xb7 00004343: DUP2 00004344: GT 00004345: PUSH2 0x454e 00004348: JUMPI 00004349: PUSH1 0x00 0000434b: PUSH2 0x4355 0000434e: PUSH1 0x80 00004350: DUP4 00004351: PUSH2 0x5a51 00004354: JUMP 00004355: JUMPDEST 00004356: SWAP1 00004357: POP 00004358: DUP1 00004359: DUP8 0000435a: PUSH1 0x00 0000435c: ADD 0000435d: MLOAD 0000435e: GT 0000435f: PUSH2 0x4410 00004362: JUMPI 00004363: PUSH1 0x40 00004365: MLOAD 00004366: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004387: DUP2 00004388: MSTORE 00004389: PUSH1 0x20 0000438b: PUSH1 0x04 0000438d: DUP3 0000438e: ADD 0000438f: MSTORE 00004390: PUSH1 0x4e 00004392: PUSH1 0x24 00004394: DUP3 00004395: ADD 00004396: MSTORE 00004397: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 000043b8: PUSH1 0x44 000043ba: DUP3 000043bb: ADD 000043bc: MSTORE 000043bd: PUSH32 0x742062652067726561746572207468616e20737472696e67206c656e67746820 000043de: PUSH1 0x64 000043e0: DUP3 000043e1: ADD 000043e2: MSTORE 000043e3: PUSH32 0x2873686f727420737472696e6729000000000000000000000000000000000000 00004404: PUSH1 0x84 00004406: DUP3 00004407: ADD 00004408: MSTORE 00004409: PUSH1 0xa4 0000440b: ADD 0000440c: PUSH2 0x01d7 0000440f: JUMP 00004410: JUMPDEST 00004411: PUSH1 0x01 00004413: DUP4 00004414: DUP2 00004415: ADD 00004416: MLOAD 00004417: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 00004438: AND 00004439: SWAP1 0000443a: DUP3 0000443b: EQ 0000443c: ISZERO 0000443d: DUP1 0000443e: PUSH2 0x4489 00004441: JUMPI 00004442: POP 00004443: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 00004464: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 00004485: DUP3 00004486: AND 00004487: LT 00004488: ISZERO 00004489: JUMPDEST 0000448a: PUSH2 0x453b 0000448d: JUMPI 0000448e: PUSH1 0x40 00004490: MLOAD 00004491: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000044b2: DUP2 000044b3: MSTORE 000044b4: PUSH1 0x20 000044b6: PUSH1 0x04 000044b8: DUP3 000044b9: ADD 000044ba: MSTORE 000044bb: PUSH1 0x4d 000044bd: PUSH1 0x24 000044bf: DUP3 000044c0: ADD 000044c1: MSTORE 000044c2: PUSH32 0x524c505265616465723a20696e76616c6964207072656669782c2073696e676c 000044e3: PUSH1 0x44 000044e5: DUP3 000044e6: ADD 000044e7: MSTORE 000044e8: PUSH32 0x652062797465203c203078383020617265206e6f742070726566697865642028 00004509: PUSH1 0x64 0000450b: DUP3 0000450c: ADD 0000450d: MSTORE 0000450e: PUSH32 0x73686f727420737472696e672900000000000000000000000000000000000000 0000452f: PUSH1 0x84 00004531: DUP3 00004532: ADD 00004533: MSTORE 00004534: PUSH1 0xa4 00004536: ADD 00004537: PUSH2 0x01d7 0000453a: JUMP 0000453b: JUMPDEST 0000453c: POP 0000453d: PUSH1 0x01 0000453f: SWAP6 00004540: POP 00004541: SWAP4 00004542: POP 00004543: PUSH1 0x00 00004545: SWAP3 00004546: POP 00004547: PUSH2 0x4cc3 0000454a: SWAP2 0000454b: POP 0000454c: POP 0000454d: JUMP 0000454e: JUMPDEST 0000454f: PUSH1 0xbf 00004551: DUP2 00004552: GT 00004553: PUSH2 0x489c 00004556: JUMPI 00004557: PUSH1 0x00 00004559: PUSH2 0x4563 0000455c: PUSH1 0xb7 0000455e: DUP4 0000455f: PUSH2 0x5a51 00004562: JUMP 00004563: JUMPDEST 00004564: SWAP1 00004565: POP 00004566: DUP1 00004567: DUP8 00004568: PUSH1 0x00 0000456a: ADD 0000456b: MLOAD 0000456c: GT 0000456d: PUSH2 0x461e 00004570: JUMPI 00004571: PUSH1 0x40 00004573: MLOAD 00004574: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004595: DUP2 00004596: MSTORE 00004597: PUSH1 0x20 00004599: PUSH1 0x04 0000459b: DUP3 0000459c: ADD 0000459d: MSTORE 0000459e: PUSH1 0x51 000045a0: PUSH1 0x24 000045a2: DUP3 000045a3: ADD 000045a4: MSTORE 000045a5: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 000045c6: PUSH1 0x44 000045c8: DUP3 000045c9: ADD 000045ca: MSTORE 000045cb: PUSH32 0x74206265203e207468616e206c656e677468206f6620737472696e67206c656e 000045ec: PUSH1 0x64 000045ee: DUP3 000045ef: ADD 000045f0: MSTORE 000045f1: PUSH32 0x67746820286c6f6e6720737472696e6729000000000000000000000000000000 00004612: PUSH1 0x84 00004614: DUP3 00004615: ADD 00004616: MSTORE 00004617: PUSH1 0xa4 00004619: ADD 0000461a: PUSH2 0x01d7 0000461d: JUMP 0000461e: JUMPDEST 0000461f: PUSH1 0x01 00004621: DUP4 00004622: ADD 00004623: MLOAD 00004624: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 00004645: AND 00004646: PUSH1 0x00 00004648: DUP2 00004649: SWAP1 0000464a: SUB 0000464b: PUSH2 0x46fc 0000464e: JUMPI 0000464f: PUSH1 0x40 00004651: MLOAD 00004652: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004673: DUP2 00004674: MSTORE 00004675: PUSH1 0x20 00004677: PUSH1 0x04 00004679: DUP3 0000467a: ADD 0000467b: MSTORE 0000467c: PUSH1 0x4a 0000467e: PUSH1 0x24 00004680: DUP3 00004681: ADD 00004682: MSTORE 00004683: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 000046a4: PUSH1 0x44 000046a6: DUP3 000046a7: ADD 000046a8: MSTORE 000046a9: PUSH32 0x74206e6f74206861766520616e79206c656164696e67207a65726f7320286c6f 000046ca: PUSH1 0x64 000046cc: DUP3 000046cd: ADD 000046ce: MSTORE 000046cf: PUSH32 0x6e6720737472696e672900000000000000000000000000000000000000000000 000046f0: PUSH1 0x84 000046f2: DUP3 000046f3: ADD 000046f4: MSTORE 000046f5: PUSH1 0xa4 000046f7: ADD 000046f8: PUSH2 0x01d7 000046fb: JUMP 000046fc: JUMPDEST 000046fd: PUSH1 0x01 000046ff: DUP5 00004700: ADD 00004701: MLOAD 00004702: PUSH1 0x08 00004704: DUP4 00004705: MUL 00004706: PUSH2 0x0100 00004709: SUB 0000470a: SHR 0000470b: PUSH1 0x37 0000470d: DUP2 0000470e: GT 0000470f: PUSH2 0x47c0 00004712: JUMPI 00004713: PUSH1 0x40 00004715: MLOAD 00004716: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004737: DUP2 00004738: MSTORE 00004739: PUSH1 0x20 0000473b: PUSH1 0x04 0000473d: DUP3 0000473e: ADD 0000473f: MSTORE 00004740: PUSH1 0x48 00004742: PUSH1 0x24 00004744: DUP3 00004745: ADD 00004746: MSTORE 00004747: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 00004768: PUSH1 0x44 0000476a: DUP3 0000476b: ADD 0000476c: MSTORE 0000476d: PUSH32 0x742062652067726561746572207468616e20353520627974657320286c6f6e67 0000478e: PUSH1 0x64 00004790: DUP3 00004791: ADD 00004792: MSTORE 00004793: PUSH32 0x20737472696e6729000000000000000000000000000000000000000000000000 000047b4: PUSH1 0x84 000047b6: DUP3 000047b7: ADD 000047b8: MSTORE 000047b9: PUSH1 0xa4 000047bb: ADD 000047bc: PUSH2 0x01d7 000047bf: JUMP 000047c0: JUMPDEST 000047c1: PUSH2 0x47ca 000047c4: DUP2 000047c5: DUP5 000047c6: PUSH2 0x5d52 000047c9: JUMP 000047ca: JUMPDEST 000047cb: DUP10 000047cc: MLOAD 000047cd: GT 000047ce: PUSH2 0x487f 000047d1: JUMPI 000047d2: PUSH1 0x40 000047d4: MLOAD 000047d5: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000047f6: DUP2 000047f7: MSTORE 000047f8: PUSH1 0x20 000047fa: PUSH1 0x04 000047fc: DUP3 000047fd: ADD 000047fe: MSTORE 000047ff: PUSH1 0x4c 00004801: PUSH1 0x24 00004803: DUP3 00004804: ADD 00004805: MSTORE 00004806: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 00004827: PUSH1 0x44 00004829: DUP3 0000482a: ADD 0000482b: MSTORE 0000482c: PUSH32 0x742062652067726561746572207468616e20746f74616c206c656e6774682028 0000484d: PUSH1 0x64 0000484f: DUP3 00004850: ADD 00004851: MSTORE 00004852: PUSH32 0x6c6f6e6720737472696e67290000000000000000000000000000000000000000 00004873: PUSH1 0x84 00004875: DUP3 00004876: ADD 00004877: MSTORE 00004878: PUSH1 0xa4 0000487a: ADD 0000487b: PUSH2 0x01d7 0000487e: JUMP 0000487f: JUMPDEST 00004880: PUSH2 0x488a 00004883: DUP4 00004884: PUSH1 0x01 00004886: PUSH2 0x5d52 00004889: JUMP 0000488a: JUMPDEST 0000488b: SWAP8 0000488c: POP 0000488d: SWAP6 0000488e: POP 0000488f: PUSH1 0x00 00004891: SWAP5 00004892: POP 00004893: PUSH2 0x4cc3 00004896: SWAP4 00004897: POP 00004898: POP 00004899: POP 0000489a: POP 0000489b: JUMP 0000489c: JUMPDEST 0000489d: PUSH1 0xf7 0000489f: DUP2 000048a0: GT 000048a1: PUSH2 0x497d 000048a4: JUMPI 000048a5: PUSH1 0x00 000048a7: PUSH2 0x48b1 000048aa: PUSH1 0xc0 000048ac: DUP4 000048ad: PUSH2 0x5a51 000048b0: JUMP 000048b1: JUMPDEST 000048b2: SWAP1 000048b3: POP 000048b4: DUP1 000048b5: DUP8 000048b6: PUSH1 0x00 000048b8: ADD 000048b9: MLOAD 000048ba: GT 000048bb: PUSH2 0x496c 000048be: JUMPI 000048bf: PUSH1 0x40 000048c1: MLOAD 000048c2: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000048e3: DUP2 000048e4: MSTORE 000048e5: PUSH1 0x20 000048e7: PUSH1 0x04 000048e9: DUP3 000048ea: ADD 000048eb: MSTORE 000048ec: PUSH1 0x4a 000048ee: PUSH1 0x24 000048f0: DUP3 000048f1: ADD 000048f2: MSTORE 000048f3: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 00004914: PUSH1 0x44 00004916: DUP3 00004917: ADD 00004918: MSTORE 00004919: PUSH32 0x742062652067726561746572207468616e206c697374206c656e677468202873 0000493a: PUSH1 0x64 0000493c: DUP3 0000493d: ADD 0000493e: MSTORE 0000493f: PUSH32 0x686f7274206c6973742900000000000000000000000000000000000000000000 00004960: PUSH1 0x84 00004962: DUP3 00004963: ADD 00004964: MSTORE 00004965: PUSH1 0xa4 00004967: ADD 00004968: PUSH2 0x01d7 0000496b: JUMP 0000496c: JUMPDEST 0000496d: PUSH1 0x01 0000496f: SWAP6 00004970: POP 00004971: SWAP4 00004972: POP 00004973: DUP5 00004974: SWAP3 00004975: POP 00004976: PUSH2 0x4cc3 00004979: SWAP2 0000497a: POP 0000497b: POP 0000497c: JUMP 0000497d: JUMPDEST 0000497e: PUSH1 0x00 00004980: PUSH2 0x498a 00004983: PUSH1 0xf7 00004985: DUP4 00004986: PUSH2 0x5a51 00004989: JUMP 0000498a: JUMPDEST 0000498b: SWAP1 0000498c: POP 0000498d: DUP1 0000498e: DUP8 0000498f: PUSH1 0x00 00004991: ADD 00004992: MLOAD 00004993: GT 00004994: PUSH2 0x4a45 00004997: JUMPI 00004998: PUSH1 0x40 0000499a: MLOAD 0000499b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000049bc: DUP2 000049bd: MSTORE 000049be: PUSH1 0x20 000049c0: PUSH1 0x04 000049c2: DUP3 000049c3: ADD 000049c4: MSTORE 000049c5: PUSH1 0x4d 000049c7: PUSH1 0x24 000049c9: DUP3 000049ca: ADD 000049cb: MSTORE 000049cc: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 000049ed: PUSH1 0x44 000049ef: DUP3 000049f0: ADD 000049f1: MSTORE 000049f2: PUSH32 0x74206265203e207468616e206c656e677468206f66206c697374206c656e6774 00004a13: PUSH1 0x64 00004a15: DUP3 00004a16: ADD 00004a17: MSTORE 00004a18: PUSH32 0x6820286c6f6e67206c6973742900000000000000000000000000000000000000 00004a39: PUSH1 0x84 00004a3b: DUP3 00004a3c: ADD 00004a3d: MSTORE 00004a3e: PUSH1 0xa4 00004a40: ADD 00004a41: PUSH2 0x01d7 00004a44: JUMP 00004a45: JUMPDEST 00004a46: PUSH1 0x01 00004a48: DUP4 00004a49: ADD 00004a4a: MLOAD 00004a4b: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 00004a6c: AND 00004a6d: PUSH1 0x00 00004a6f: DUP2 00004a70: SWAP1 00004a71: SUB 00004a72: PUSH2 0x4b23 00004a75: JUMPI 00004a76: PUSH1 0x40 00004a78: MLOAD 00004a79: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004a9a: DUP2 00004a9b: MSTORE 00004a9c: PUSH1 0x20 00004a9e: PUSH1 0x04 00004aa0: DUP3 00004aa1: ADD 00004aa2: MSTORE 00004aa3: PUSH1 0x48 00004aa5: PUSH1 0x24 00004aa7: DUP3 00004aa8: ADD 00004aa9: MSTORE 00004aaa: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 00004acb: PUSH1 0x44 00004acd: DUP3 00004ace: ADD 00004acf: MSTORE 00004ad0: PUSH32 0x74206e6f74206861766520616e79206c656164696e67207a65726f7320286c6f 00004af1: PUSH1 0x64 00004af3: DUP3 00004af4: ADD 00004af5: MSTORE 00004af6: PUSH32 0x6e67206c69737429000000000000000000000000000000000000000000000000 00004b17: PUSH1 0x84 00004b19: DUP3 00004b1a: ADD 00004b1b: MSTORE 00004b1c: PUSH1 0xa4 00004b1e: ADD 00004b1f: PUSH2 0x01d7 00004b22: JUMP 00004b23: JUMPDEST 00004b24: PUSH1 0x01 00004b26: DUP5 00004b27: ADD 00004b28: MLOAD 00004b29: PUSH1 0x08 00004b2b: DUP4 00004b2c: MUL 00004b2d: PUSH2 0x0100 00004b30: SUB 00004b31: SHR 00004b32: PUSH1 0x37 00004b34: DUP2 00004b35: GT 00004b36: PUSH2 0x4be7 00004b39: JUMPI 00004b3a: PUSH1 0x40 00004b3c: MLOAD 00004b3d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004b5e: DUP2 00004b5f: MSTORE 00004b60: PUSH1 0x20 00004b62: PUSH1 0x04 00004b64: DUP3 00004b65: ADD 00004b66: MSTORE 00004b67: PUSH1 0x46 00004b69: PUSH1 0x24 00004b6b: DUP3 00004b6c: ADD 00004b6d: MSTORE 00004b6e: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 00004b8f: PUSH1 0x44 00004b91: DUP3 00004b92: ADD 00004b93: MSTORE 00004b94: PUSH32 0x742062652067726561746572207468616e20353520627974657320286c6f6e67 00004bb5: PUSH1 0x64 00004bb7: DUP3 00004bb8: ADD 00004bb9: MSTORE 00004bba: PUSH32 0x206c697374290000000000000000000000000000000000000000000000000000 00004bdb: PUSH1 0x84 00004bdd: DUP3 00004bde: ADD 00004bdf: MSTORE 00004be0: PUSH1 0xa4 00004be2: ADD 00004be3: PUSH2 0x01d7 00004be6: JUMP 00004be7: JUMPDEST 00004be8: PUSH2 0x4bf1 00004beb: DUP2 00004bec: DUP5 00004bed: PUSH2 0x5d52 00004bf0: JUMP 00004bf1: JUMPDEST 00004bf2: DUP10 00004bf3: MLOAD 00004bf4: GT 00004bf5: PUSH2 0x4ca6 00004bf8: JUMPI 00004bf9: PUSH1 0x40 00004bfb: MLOAD 00004bfc: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004c1d: DUP2 00004c1e: MSTORE 00004c1f: PUSH1 0x20 00004c21: PUSH1 0x04 00004c23: DUP3 00004c24: ADD 00004c25: MSTORE 00004c26: PUSH1 0x4a 00004c28: PUSH1 0x24 00004c2a: DUP3 00004c2b: ADD 00004c2c: MSTORE 00004c2d: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 00004c4e: PUSH1 0x44 00004c50: DUP3 00004c51: ADD 00004c52: MSTORE 00004c53: PUSH32 0x742062652067726561746572207468616e20746f74616c206c656e6774682028 00004c74: PUSH1 0x64 00004c76: DUP3 00004c77: ADD 00004c78: MSTORE 00004c79: PUSH32 0x6c6f6e67206c6973742900000000000000000000000000000000000000000000 00004c9a: PUSH1 0x84 00004c9c: DUP3 00004c9d: ADD 00004c9e: MSTORE 00004c9f: PUSH1 0xa4 00004ca1: ADD 00004ca2: PUSH2 0x01d7 00004ca5: JUMP 00004ca6: JUMPDEST 00004ca7: PUSH2 0x4cb1 00004caa: DUP4 00004cab: PUSH1 0x01 00004cad: PUSH2 0x5d52 00004cb0: JUMP 00004cb1: JUMPDEST 00004cb2: SWAP8 00004cb3: POP 00004cb4: SWAP6 00004cb5: POP 00004cb6: PUSH1 0x01 00004cb8: SWAP5 00004cb9: POP 00004cba: PUSH2 0x4cc3 00004cbd: SWAP4 00004cbe: POP 00004cbf: POP 00004cc0: POP 00004cc1: POP 00004cc2: JUMP 00004cc3: JUMPDEST 00004cc4: SWAP2 00004cc5: SWAP4 00004cc6: SWAP1 00004cc7: SWAP3 00004cc8: POP 00004cc9: JUMP 00004cca: JUMPDEST 00004ccb: PUSH1 0x60 00004ccd: PUSH1 0x00 00004ccf: DUP3 00004cd0: PUSH8 0xffffffffffffffff 00004cd9: DUP2 00004cda: GT 00004cdb: ISZERO 00004cdc: PUSH2 0x4ce7 00004cdf: JUMPI 00004ce0: PUSH2 0x4ce7 00004ce3: PUSH2 0x52a6 00004ce6: JUMP 00004ce7: JUMPDEST 00004ce8: PUSH1 0x40 00004cea: MLOAD 00004ceb: SWAP1 00004cec: DUP1 00004ced: DUP3 00004cee: MSTORE 00004cef: DUP1 00004cf0: PUSH1 0x1f 00004cf2: ADD 00004cf3: PUSH1 0x1f 00004cf5: NOT 00004cf6: AND 00004cf7: PUSH1 0x20 00004cf9: ADD 00004cfa: DUP3 00004cfb: ADD 00004cfc: PUSH1 0x40 00004cfe: MSTORE 00004cff: DUP1 00004d00: ISZERO 00004d01: PUSH2 0x4d11 00004d04: JUMPI 00004d05: PUSH1 0x20 00004d07: DUP3 00004d08: ADD 00004d09: DUP2 00004d0a: DUP1 00004d0b: CALLDATASIZE 00004d0c: DUP4 00004d0d: CALLDATACOPY 00004d0e: ADD 00004d0f: SWAP1 00004d10: POP 00004d11: JUMPDEST 00004d12: POP 00004d13: SWAP1 00004d14: POP 00004d15: DUP3 00004d16: PUSH1 0x00 00004d18: SUB 00004d19: PUSH2 0x4d23 00004d1c: JUMPI 00004d1d: SWAP1 00004d1e: POP 00004d1f: PUSH2 0x29ed 00004d22: JUMP 00004d23: JUMPDEST 00004d24: PUSH1 0x00 00004d26: PUSH2 0x4d2f 00004d29: DUP6 00004d2a: DUP8 00004d2b: PUSH2 0x5d52 00004d2e: JUMP 00004d2f: JUMPDEST 00004d30: SWAP1 00004d31: POP 00004d32: PUSH1 0x20 00004d34: DUP3 00004d35: ADD 00004d36: PUSH1 0x00 00004d38: JUMPDEST 00004d39: DUP6 00004d3a: DUP2 00004d3b: LT 00004d3c: ISZERO 00004d3d: PUSH2 0x4d50 00004d40: JUMPI 00004d41: DUP3 00004d42: DUP2 00004d43: ADD 00004d44: MLOAD 00004d45: DUP3 00004d46: DUP3 00004d47: ADD 00004d48: MSTORE 00004d49: PUSH1 0x20 00004d4b: ADD 00004d4c: PUSH2 0x4d38 00004d4f: JUMP 00004d50: JUMPDEST 00004d51: DUP6 00004d52: DUP2 00004d53: GT 00004d54: ISZERO 00004d55: PUSH2 0x4d5f 00004d58: JUMPI 00004d59: PUSH1 0x00 00004d5b: DUP7 00004d5c: DUP4 00004d5d: ADD 00004d5e: MSTORE 00004d5f: JUMPDEST 00004d60: POP 00004d61: SWAP2 00004d62: SWAP7 00004d63: SWAP6 00004d64: POP 00004d65: POP 00004d66: POP 00004d67: POP 00004d68: POP 00004d69: POP 00004d6a: JUMP 00004d6b: JUMPDEST 00004d6c: PUSH1 0x60 00004d6e: PUSH2 0x1680 00004d71: DUP3 00004d72: PUSH1 0x20 00004d74: ADD 00004d75: MLOAD 00004d76: PUSH1 0x00 00004d78: DUP5 00004d79: PUSH1 0x00 00004d7b: ADD 00004d7c: MLOAD 00004d7d: PUSH2 0x4cca 00004d80: JUMP 00004d81: JUMPDEST 00004d82: PUSH1 0x60 00004d84: DUP2 00004d85: DUP3 00004d86: PUSH1 0x1f 00004d88: ADD 00004d89: LT 00004d8a: ISZERO 00004d8b: PUSH2 0x4df0 00004d8e: JUMPI 00004d8f: PUSH1 0x40 00004d91: MLOAD 00004d92: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004db3: DUP2 00004db4: MSTORE 00004db5: PUSH1 0x20 00004db7: PUSH1 0x04 00004db9: DUP3 00004dba: ADD 00004dbb: MSTORE 00004dbc: PUSH1 0x0e 00004dbe: PUSH1 0x24 00004dc0: DUP3 00004dc1: ADD 00004dc2: MSTORE 00004dc3: PUSH32 0x736c6963655f6f766572666c6f77000000000000000000000000000000000000 00004de4: PUSH1 0x44 00004de6: DUP3 00004de7: ADD 00004de8: MSTORE 00004de9: PUSH1 0x64 00004deb: ADD 00004dec: PUSH2 0x01d7 00004def: JUMP 00004df0: JUMPDEST 00004df1: DUP3 00004df2: DUP3 00004df3: DUP5 00004df4: ADD 00004df5: LT 00004df6: ISZERO 00004df7: PUSH2 0x4e5c 00004dfa: JUMPI 00004dfb: PUSH1 0x40 00004dfd: MLOAD 00004dfe: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004e1f: DUP2 00004e20: MSTORE 00004e21: PUSH1 0x20 00004e23: PUSH1 0x04 00004e25: DUP3 00004e26: ADD 00004e27: MSTORE 00004e28: PUSH1 0x0e 00004e2a: PUSH1 0x24 00004e2c: DUP3 00004e2d: ADD 00004e2e: MSTORE 00004e2f: PUSH32 0x736c6963655f6f766572666c6f77000000000000000000000000000000000000 00004e50: PUSH1 0x44 00004e52: DUP3 00004e53: ADD 00004e54: MSTORE 00004e55: PUSH1 0x64 00004e57: ADD 00004e58: PUSH2 0x01d7 00004e5b: JUMP 00004e5c: JUMPDEST 00004e5d: DUP2 00004e5e: DUP4 00004e5f: ADD 00004e60: DUP5 00004e61: MLOAD 00004e62: LT 00004e63: ISZERO 00004e64: PUSH2 0x4ec9 00004e67: JUMPI 00004e68: PUSH1 0x40 00004e6a: MLOAD 00004e6b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004e8c: DUP2 00004e8d: MSTORE 00004e8e: PUSH1 0x20 00004e90: PUSH1 0x04 00004e92: DUP3 00004e93: ADD 00004e94: MSTORE 00004e95: PUSH1 0x11 00004e97: PUSH1 0x24 00004e99: DUP3 00004e9a: ADD 00004e9b: MSTORE 00004e9c: PUSH32 0x736c6963655f6f75744f66426f756e6473000000000000000000000000000000 00004ebd: PUSH1 0x44 00004ebf: DUP3 00004ec0: ADD 00004ec1: MSTORE 00004ec2: PUSH1 0x64 00004ec4: ADD 00004ec5: PUSH2 0x01d7 00004ec8: JUMP 00004ec9: JUMPDEST 00004eca: PUSH1 0x60 00004ecc: DUP3 00004ecd: ISZERO 00004ece: DUP1 00004ecf: ISZERO 00004ed0: PUSH2 0x4ee8 00004ed3: JUMPI 00004ed4: PUSH1 0x40 00004ed6: MLOAD 00004ed7: SWAP2 00004ed8: POP 00004ed9: PUSH1 0x00 00004edb: DUP3 00004edc: MSTORE 00004edd: PUSH1 0x20 00004edf: DUP3 00004ee0: ADD 00004ee1: PUSH1 0x40 00004ee3: MSTORE 00004ee4: PUSH2 0x4f50 00004ee7: JUMP 00004ee8: JUMPDEST 00004ee9: PUSH1 0x40 00004eeb: MLOAD 00004eec: SWAP2 00004eed: POP 00004eee: PUSH1 0x1f 00004ef0: DUP5 00004ef1: AND 00004ef2: DUP1 00004ef3: ISZERO 00004ef4: PUSH1 0x20 00004ef6: MUL 00004ef7: DUP2 00004ef8: DUP5 00004ef9: ADD 00004efa: ADD 00004efb: DUP6 00004efc: DUP2 00004efd: ADD 00004efe: DUP8 00004eff: DUP4 00004f00: ISZERO 00004f01: PUSH1 0x20 00004f03: MUL 00004f04: DUP5 00004f05: DUP12 00004f06: ADD 00004f07: ADD 00004f08: ADD 00004f09: JUMPDEST 00004f0a: DUP2 00004f0b: DUP4 00004f0c: LT 00004f0d: ISZERO 00004f0e: PUSH2 0x4f21 00004f11: JUMPI 00004f12: DUP1 00004f13: MLOAD 00004f14: DUP4 00004f15: MSTORE 00004f16: PUSH1 0x20 00004f18: SWAP3 00004f19: DUP4 00004f1a: ADD 00004f1b: SWAP3 00004f1c: ADD 00004f1d: PUSH2 0x4f09 00004f20: JUMP 00004f21: JUMPDEST 00004f22: POP 00004f23: POP 00004f24: DUP6 00004f25: DUP5 00004f26: MSTORE 00004f27: PUSH1 0x1f 00004f29: ADD 00004f2a: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00004f4b: AND 00004f4c: PUSH1 0x40 00004f4e: MSTORE 00004f4f: POP 00004f50: JUMPDEST 00004f51: POP 00004f52: SWAP5 00004f53: SWAP4 00004f54: POP 00004f55: POP 00004f56: POP 00004f57: POP 00004f58: JUMP 00004f59: JUMPDEST 00004f5a: PUSH1 0x40 00004f5c: DUP1 00004f5d: MLOAD 00004f5e: DUP1 00004f5f: DUP3 00004f60: ADD 00004f61: SWAP1 00004f62: SWAP2 00004f63: MSTORE 00004f64: PUSH1 0x00 00004f66: DUP1 00004f67: DUP3 00004f68: MSTORE 00004f69: PUSH1 0x20 00004f6b: DUP3 00004f6c: ADD 00004f6d: MSTORE 00004f6e: PUSH1 0x00 00004f70: DUP3 00004f71: MLOAD 00004f72: GT 00004f73: PUSH2 0x5024 00004f76: JUMPI 00004f77: PUSH1 0x40 00004f79: MLOAD 00004f7a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004f9b: DUP2 00004f9c: MSTORE 00004f9d: PUSH1 0x20 00004f9f: PUSH1 0x04 00004fa1: DUP3 00004fa2: ADD 00004fa3: MSTORE 00004fa4: PUSH1 0x4a 00004fa6: PUSH1 0x24 00004fa8: DUP3 00004fa9: ADD 00004faa: MSTORE 00004fab: PUSH32 0x524c505265616465723a206c656e677468206f6620616e20524c50206974656d 00004fcc: PUSH1 0x44 00004fce: DUP3 00004fcf: ADD 00004fd0: MSTORE 00004fd1: PUSH32 0x206d7573742062652067726561746572207468616e207a65726f20746f206265 00004ff2: PUSH1 0x64 00004ff4: DUP3 00004ff5: ADD 00004ff6: MSTORE 00004ff7: PUSH32 0x206465636f6461626c6500000000000000000000000000000000000000000000 00005018: PUSH1 0x84 0000501a: DUP3 0000501b: ADD 0000501c: MSTORE 0000501d: PUSH1 0xa4 0000501f: ADD 00005020: PUSH2 0x01d7 00005023: JUMP 00005024: JUMPDEST 00005025: POP 00005026: PUSH1 0x40 00005028: DUP1 00005029: MLOAD 0000502a: DUP1 0000502b: DUP3 0000502c: ADD 0000502d: SWAP1 0000502e: SWAP2 0000502f: MSTORE 00005030: DUP2 00005031: MLOAD 00005032: DUP2 00005033: MSTORE 00005034: PUSH1 0x20 00005036: SWAP2 00005037: DUP3 00005038: ADD 00005039: SWAP2 0000503a: DUP2 0000503b: ADD 0000503c: SWAP2 0000503d: SWAP1 0000503e: SWAP2 0000503f: MSTORE 00005040: SWAP1 00005041: JUMP 00005042: JUMPDEST 00005043: PUSH1 0x60 00005045: PUSH1 0x00 00005047: DUP1 00005048: PUSH1 0x00 0000504a: PUSH2 0x5052 0000504d: DUP6 0000504e: PUSH2 0x425d 00005051: JUMP 00005052: JUMPDEST 00005053: SWAP2 00005054: SWAP5 00005055: POP 00005056: SWAP3 00005057: POP 00005058: SWAP1 00005059: POP 0000505a: PUSH1 0x01 0000505c: DUP2 0000505d: PUSH1 0x01 0000505f: DUP2 00005060: GT 00005061: ISZERO 00005062: PUSH2 0x506d 00005065: JUMPI 00005066: PUSH2 0x506d 00005069: PUSH2 0x5f0a 0000506c: JUMP 0000506d: JUMPDEST 0000506e: EQ 0000506f: PUSH2 0x50fa 00005072: JUMPI 00005073: PUSH1 0x40 00005075: MLOAD 00005076: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00005097: DUP2 00005098: MSTORE 00005099: PUSH1 0x20 0000509b: PUSH1 0x04 0000509d: DUP3 0000509e: ADD 0000509f: MSTORE 000050a0: PUSH1 0x38 000050a2: PUSH1 0x24 000050a4: DUP3 000050a5: ADD 000050a6: MSTORE 000050a7: PUSH32 0x524c505265616465723a206465636f646564206974656d207479706520666f72 000050c8: PUSH1 0x44 000050ca: DUP3 000050cb: ADD 000050cc: MSTORE 000050cd: PUSH32 0x206c697374206973206e6f742061206c697374206974656d0000000000000000 000050ee: PUSH1 0x64 000050f0: DUP3 000050f1: ADD 000050f2: MSTORE 000050f3: PUSH1 0x84 000050f5: ADD 000050f6: PUSH2 0x01d7 000050f9: JUMP 000050fa: JUMPDEST 000050fb: DUP5 000050fc: MLOAD 000050fd: PUSH2 0x5106 00005100: DUP4 00005101: DUP6 00005102: PUSH2 0x5d52 00005105: JUMP 00005106: JUMPDEST 00005107: EQ 00005108: PUSH2 0x5193 0000510b: JUMPI 0000510c: PUSH1 0x40 0000510e: MLOAD 0000510f: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00005130: DUP2 00005131: MSTORE 00005132: PUSH1 0x20 00005134: PUSH1 0x04 00005136: DUP3 00005137: ADD 00005138: MSTORE 00005139: PUSH1 0x32 0000513b: PUSH1 0x24 0000513d: DUP3 0000513e: ADD 0000513f: MSTORE 00005140: PUSH32 0x524c505265616465723a206c697374206974656d2068617320616e20696e7661 00005161: PUSH1 0x44 00005163: DUP3 00005164: ADD 00005165: MSTORE 00005166: PUSH32 0x6c696420646174612072656d61696e6465720000000000000000000000000000 00005187: PUSH1 0x64 00005189: DUP3 0000518a: ADD 0000518b: MSTORE 0000518c: PUSH1 0x84 0000518e: ADD 0000518f: PUSH2 0x01d7 00005192: JUMP 00005193: JUMPDEST 00005194: PUSH1 0x40 00005196: DUP1 00005197: MLOAD 00005198: PUSH1 0x20 0000519a: DUP1 0000519b: DUP3 0000519c: MSTORE 0000519d: PUSH2 0x0420 000051a0: DUP3 000051a1: ADD 000051a2: SWAP1 000051a3: SWAP3 000051a4: MSTORE 000051a5: PUSH1 0x00 000051a7: SWAP2 000051a8: DUP2 000051a9: PUSH1 0x20 000051ab: ADD 000051ac: JUMPDEST 000051ad: PUSH1 0x40 000051af: DUP1 000051b0: MLOAD 000051b1: DUP1 000051b2: DUP3 000051b3: ADD 000051b4: SWAP1 000051b5: SWAP2 000051b6: MSTORE 000051b7: PUSH1 0x00 000051b9: DUP1 000051ba: DUP3 000051bb: MSTORE 000051bc: PUSH1 0x20 000051be: DUP3 000051bf: ADD 000051c0: MSTORE 000051c1: DUP2 000051c2: MSTORE 000051c3: PUSH1 0x20 000051c5: ADD 000051c6: SWAP1 000051c7: PUSH1 0x01 000051c9: SWAP1 000051ca: SUB 000051cb: SWAP1 000051cc: DUP2 000051cd: PUSH2 0x51ac 000051d0: JUMPI 000051d1: SWAP1 000051d2: POP 000051d3: POP 000051d4: SWAP1 000051d5: POP 000051d6: PUSH1 0x00 000051d8: DUP5 000051d9: JUMPDEST 000051da: DUP8 000051db: MLOAD 000051dc: DUP2 000051dd: LT 000051de: ISZERO 000051df: PUSH2 0x529a 000051e2: JUMPI 000051e3: PUSH1 0x00 000051e5: DUP1 000051e6: PUSH2 0x521f 000051e9: PUSH1 0x40 000051eb: MLOAD 000051ec: DUP1 000051ed: PUSH1 0x40 000051ef: ADD 000051f0: PUSH1 0x40 000051f2: MSTORE 000051f3: DUP1 000051f4: DUP6 000051f5: DUP14 000051f6: PUSH1 0x00 000051f8: ADD 000051f9: MLOAD 000051fa: PUSH2 0x5203 000051fd: SWAP2 000051fe: SWAP1 000051ff: PUSH2 0x5a51 00005202: JUMP 00005203: JUMPDEST 00005204: DUP2 00005205: MSTORE 00005206: PUSH1 0x20 00005208: ADD 00005209: DUP6 0000520a: DUP14 0000520b: PUSH1 0x20 0000520d: ADD 0000520e: MLOAD 0000520f: PUSH2 0x5218 00005212: SWAP2 00005213: SWAP1 00005214: PUSH2 0x5d52 00005217: JUMP 00005218: JUMPDEST 00005219: SWAP1 0000521a: MSTORE 0000521b: PUSH2 0x425d 0000521e: JUMP 0000521f: JUMPDEST 00005220: POP 00005221: SWAP2 00005222: POP 00005223: SWAP2 00005224: POP 00005225: PUSH1 0x40 00005227: MLOAD 00005228: DUP1 00005229: PUSH1 0x40 0000522b: ADD 0000522c: PUSH1 0x40 0000522e: MSTORE 0000522f: DUP1 00005230: DUP4 00005231: DUP4 00005232: PUSH2 0x523b 00005235: SWAP2 00005236: SWAP1 00005237: PUSH2 0x5d52 0000523a: JUMP 0000523b: JUMPDEST 0000523c: DUP2 0000523d: MSTORE 0000523e: PUSH1 0x20 00005240: ADD 00005241: DUP5 00005242: DUP13 00005243: PUSH1 0x20 00005245: ADD 00005246: MLOAD 00005247: PUSH2 0x5250 0000524a: SWAP2 0000524b: SWAP1 0000524c: PUSH2 0x5d52 0000524f: JUMP 00005250: JUMPDEST 00005251: DUP2 00005252: MSTORE 00005253: POP 00005254: DUP6 00005255: DUP6 00005256: DUP2 00005257: MLOAD 00005258: DUP2 00005259: LT 0000525a: PUSH2 0x5265 0000525d: JUMPI 0000525e: PUSH2 0x5265 00005261: PUSH2 0x5db6 00005264: JUMP 00005265: JUMPDEST 00005266: PUSH1 0x20 00005268: SWAP1 00005269: DUP2 0000526a: MUL 0000526b: SWAP2 0000526c: SWAP1 0000526d: SWAP2 0000526e: ADD 0000526f: ADD 00005270: MSTORE 00005271: PUSH2 0x527b 00005274: PUSH1 0x01 00005276: DUP6 00005277: PUSH2 0x5d52 0000527a: JUMP 0000527b: JUMPDEST 0000527c: SWAP4 0000527d: POP 0000527e: PUSH2 0x5287 00005281: DUP2 00005282: DUP4 00005283: PUSH2 0x5d52 00005286: JUMP 00005287: JUMPDEST 00005288: PUSH2 0x5291 0000528b: SWAP1 0000528c: DUP5 0000528d: PUSH2 0x5d52 00005290: JUMP 00005291: JUMPDEST 00005292: SWAP3 00005293: POP 00005294: POP 00005295: POP 00005296: PUSH2 0x51d9 00005299: JUMP 0000529a: JUMPDEST 0000529b: POP 0000529c: DUP2 0000529d: MSTORE 0000529e: SWAP6 0000529f: SWAP5 000052a0: POP 000052a1: POP 000052a2: POP 000052a3: POP 000052a4: POP 000052a5: JUMP 000052a6: JUMPDEST 000052a7: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 000052c8: PUSH1 0x00 000052ca: MSTORE 000052cb: PUSH1 0x41 000052cd: PUSH1 0x04 000052cf: MSTORE 000052d0: PUSH1 0x24 000052d2: PUSH1 0x00 000052d4: REVERT 000052d5: JUMPDEST 000052d6: PUSH1 0x40 000052d8: MLOAD 000052d9: PUSH1 0xe0 000052db: DUP2 000052dc: ADD 000052dd: PUSH8 0xffffffffffffffff 000052e6: DUP2 000052e7: GT 000052e8: DUP3 000052e9: DUP3 000052ea: LT 000052eb: OR 000052ec: ISZERO 000052ed: PUSH2 0x52f8 000052f0: JUMPI 000052f1: PUSH2 0x52f8 000052f4: PUSH2 0x52a6 000052f7: JUMP 000052f8: JUMPDEST 000052f9: PUSH1 0x40 000052fb: MSTORE 000052fc: SWAP1 000052fd: JUMP 000052fe: JUMPDEST 000052ff: PUSH1 0x40 00005301: MLOAD 00005302: PUSH1 0x1f 00005304: DUP3 00005305: ADD 00005306: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00005327: AND 00005328: DUP2 00005329: ADD 0000532a: PUSH8 0xffffffffffffffff 00005333: DUP2 00005334: GT 00005335: DUP3 00005336: DUP3 00005337: LT 00005338: OR 00005339: ISZERO 0000533a: PUSH2 0x5345 0000533d: JUMPI 0000533e: PUSH2 0x5345 00005341: PUSH2 0x52a6 00005344: JUMP 00005345: JUMPDEST 00005346: PUSH1 0x40 00005348: MSTORE 00005349: SWAP2 0000534a: SWAP1 0000534b: POP 0000534c: JUMP 0000534d: JUMPDEST 0000534e: DUP1 0000534f: CALLDATALOAD 00005350: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005365: DUP2 00005366: AND 00005367: DUP2 00005368: EQ 00005369: PUSH2 0x5371 0000536c: JUMPI 0000536d: PUSH1 0x00 0000536f: DUP1 00005370: REVERT 00005371: JUMPDEST 00005372: SWAP2 00005373: SWAP1 00005374: POP 00005375: JUMP 00005376: JUMPDEST 00005377: PUSH1 0x00 00005379: DUP3 0000537a: PUSH1 0x1f 0000537c: DUP4 0000537d: ADD 0000537e: SLT 0000537f: PUSH2 0x5387 00005382: JUMPI 00005383: PUSH1 0x00 00005385: DUP1 00005386: REVERT 00005387: JUMPDEST 00005388: DUP2 00005389: CALLDATALOAD 0000538a: PUSH8 0xffffffffffffffff 00005393: DUP2 00005394: GT 00005395: ISZERO 00005396: PUSH2 0x53a1 00005399: JUMPI 0000539a: PUSH2 0x53a1 0000539d: PUSH2 0x52a6 000053a0: JUMP 000053a1: JUMPDEST 000053a2: PUSH2 0x53d2 000053a5: PUSH1 0x20 000053a7: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 000053c8: PUSH1 0x1f 000053ca: DUP5 000053cb: ADD 000053cc: AND 000053cd: ADD 000053ce: PUSH2 0x52fe 000053d1: JUMP 000053d2: JUMPDEST 000053d3: DUP2 000053d4: DUP2 000053d5: MSTORE 000053d6: DUP5 000053d7: PUSH1 0x20 000053d9: DUP4 000053da: DUP7 000053db: ADD 000053dc: ADD 000053dd: GT 000053de: ISZERO 000053df: PUSH2 0x53e7 000053e2: JUMPI 000053e3: PUSH1 0x00 000053e5: DUP1 000053e6: REVERT 000053e7: JUMPDEST 000053e8: DUP2 000053e9: PUSH1 0x20 000053eb: DUP6 000053ec: ADD 000053ed: PUSH1 0x20 000053ef: DUP4 000053f0: ADD 000053f1: CALLDATACOPY 000053f2: PUSH1 0x00 000053f4: SWAP2 000053f5: DUP2 000053f6: ADD 000053f7: PUSH1 0x20 000053f9: ADD 000053fa: SWAP2 000053fb: SWAP1 000053fc: SWAP2 000053fd: MSTORE 000053fe: SWAP4 000053ff: SWAP3 00005400: POP 00005401: POP 00005402: POP 00005403: JUMP 00005404: JUMPDEST 00005405: PUSH1 0x00 00005407: PUSH1 0xe0 00005409: DUP3 0000540a: DUP5 0000540b: SUB 0000540c: SLT 0000540d: ISZERO 0000540e: PUSH2 0x5416 00005411: JUMPI 00005412: PUSH1 0x00 00005414: DUP1 00005415: REVERT 00005416: JUMPDEST 00005417: PUSH2 0x541e 0000541a: PUSH2 0x52d5 0000541d: JUMP 0000541e: JUMPDEST 0000541f: SWAP1 00005420: POP 00005421: DUP2 00005422: CALLDATALOAD 00005423: DUP2 00005424: MSTORE 00005425: PUSH2 0x5430 00005428: PUSH1 0x20 0000542a: DUP4 0000542b: ADD 0000542c: PUSH2 0x534d 0000542f: JUMP 00005430: JUMPDEST 00005431: PUSH1 0x20 00005433: DUP3 00005434: ADD 00005435: MSTORE 00005436: PUSH2 0x5441 00005439: PUSH1 0x40 0000543b: DUP4 0000543c: ADD 0000543d: PUSH2 0x534d 00005440: JUMP 00005441: JUMPDEST 00005442: PUSH1 0x40 00005444: DUP3 00005445: ADD 00005446: MSTORE 00005447: PUSH1 0x60 00005449: DUP3 0000544a: ADD 0000544b: CALLDATALOAD 0000544c: PUSH1 0x60 0000544e: DUP3 0000544f: ADD 00005450: MSTORE 00005451: PUSH1 0x80 00005453: DUP3 00005454: ADD 00005455: CALLDATALOAD 00005456: PUSH1 0x80 00005458: DUP3 00005459: ADD 0000545a: MSTORE 0000545b: PUSH1 0xa0 0000545d: DUP3 0000545e: ADD 0000545f: CALLDATALOAD 00005460: PUSH1 0xa0 00005462: DUP3 00005463: ADD 00005464: MSTORE 00005465: PUSH1 0xc0 00005467: DUP3 00005468: ADD 00005469: CALLDATALOAD 0000546a: PUSH8 0xffffffffffffffff 00005473: DUP2 00005474: GT 00005475: ISZERO 00005476: PUSH2 0x547e 00005479: JUMPI 0000547a: PUSH1 0x00 0000547c: DUP1 0000547d: REVERT 0000547e: JUMPDEST 0000547f: PUSH2 0x548a 00005482: DUP5 00005483: DUP3 00005484: DUP6 00005485: ADD 00005486: PUSH2 0x5376 00005489: JUMP 0000548a: JUMPDEST 0000548b: PUSH1 0xc0 0000548d: DUP4 0000548e: ADD 0000548f: MSTORE 00005490: POP 00005491: SWAP3 00005492: SWAP2 00005493: POP 00005494: POP 00005495: JUMP 00005496: JUMPDEST 00005497: PUSH1 0x00 00005499: PUSH1 0x20 0000549b: DUP3 0000549c: DUP5 0000549d: SUB 0000549e: SLT 0000549f: ISZERO 000054a0: PUSH2 0x54a8 000054a3: JUMPI 000054a4: PUSH1 0x00 000054a6: DUP1 000054a7: REVERT 000054a8: JUMPDEST 000054a9: DUP2 000054aa: CALLDATALOAD 000054ab: PUSH8 0xffffffffffffffff 000054b4: DUP2 000054b5: GT 000054b6: ISZERO 000054b7: PUSH2 0x54bf 000054ba: JUMPI 000054bb: PUSH1 0x00 000054bd: DUP1 000054be: REVERT 000054bf: JUMPDEST 000054c0: PUSH2 0x2680 000054c3: DUP5 000054c4: DUP3 000054c5: DUP6 000054c6: ADD 000054c7: PUSH2 0x5404 000054ca: JUMP 000054cb: JUMPDEST 000054cc: PUSH1 0x00 000054ce: JUMPDEST 000054cf: DUP4 000054d0: DUP2 000054d1: LT 000054d2: ISZERO 000054d3: PUSH2 0x54e6 000054d6: JUMPI 000054d7: DUP2 000054d8: DUP2 000054d9: ADD 000054da: MLOAD 000054db: DUP4 000054dc: DUP3 000054dd: ADD 000054de: MSTORE 000054df: PUSH1 0x20 000054e1: ADD 000054e2: PUSH2 0x54ce 000054e5: JUMP 000054e6: JUMPDEST 000054e7: DUP4 000054e8: DUP2 000054e9: GT 000054ea: ISZERO 000054eb: PUSH2 0x20c5 000054ee: JUMPI 000054ef: POP 000054f0: POP 000054f1: PUSH1 0x00 000054f3: SWAP2 000054f4: ADD 000054f5: MSTORE 000054f6: JUMP 000054f7: JUMPDEST 000054f8: PUSH1 0x00 000054fa: DUP2 000054fb: MLOAD 000054fc: DUP1 000054fd: DUP5 000054fe: MSTORE 000054ff: PUSH2 0x550f 00005502: DUP2 00005503: PUSH1 0x20 00005505: DUP7 00005506: ADD 00005507: PUSH1 0x20 00005509: DUP7 0000550a: ADD 0000550b: PUSH2 0x54cb 0000550e: JUMP 0000550f: JUMPDEST 00005510: PUSH1 0x1f 00005512: ADD 00005513: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00005534: AND 00005535: SWAP3 00005536: SWAP1 00005537: SWAP3 00005538: ADD 00005539: PUSH1 0x20 0000553b: ADD 0000553c: SWAP3 0000553d: SWAP2 0000553e: POP 0000553f: POP 00005540: JUMP 00005541: JUMPDEST 00005542: PUSH1 0x20 00005544: DUP2 00005545: MSTORE 00005546: PUSH1 0x00 00005548: PUSH2 0x29ed 0000554b: PUSH1 0x20 0000554d: DUP4 0000554e: ADD 0000554f: DUP5 00005550: PUSH2 0x54f7 00005553: JUMP 00005554: JUMPDEST 00005555: PUSH1 0x00 00005557: PUSH1 0x20 00005559: DUP3 0000555a: DUP5 0000555b: SUB 0000555c: SLT 0000555d: ISZERO 0000555e: PUSH2 0x5566 00005561: JUMPI 00005562: PUSH1 0x00 00005564: DUP1 00005565: REVERT 00005566: JUMPDEST 00005567: POP 00005568: CALLDATALOAD 00005569: SWAP2 0000556a: SWAP1 0000556b: POP 0000556c: JUMP 0000556d: JUMPDEST 0000556e: DUP1 0000556f: CALLDATALOAD 00005570: PUSH8 0xffffffffffffffff 00005579: DUP2 0000557a: AND 0000557b: DUP2 0000557c: EQ 0000557d: PUSH2 0x5371 00005580: JUMPI 00005581: PUSH1 0x00 00005583: DUP1 00005584: REVERT 00005585: JUMPDEST 00005586: PUSH1 0x00 00005588: PUSH1 0x20 0000558a: DUP3 0000558b: DUP5 0000558c: SUB 0000558d: SLT 0000558e: ISZERO 0000558f: PUSH2 0x5597 00005592: JUMPI 00005593: PUSH1 0x00 00005595: DUP1 00005596: REVERT 00005597: JUMPDEST 00005598: PUSH2 0x29ed 0000559b: DUP3 0000559c: PUSH2 0x556d 0000559f: JUMP 000055a0: JUMPDEST 000055a1: DUP1 000055a2: ISZERO 000055a3: ISZERO 000055a4: DUP2 000055a5: EQ 000055a6: PUSH2 0x55ae 000055a9: JUMPI 000055aa: PUSH1 0x00 000055ac: DUP1 000055ad: REVERT 000055ae: JUMPDEST 000055af: POP 000055b0: JUMP 000055b1: JUMPDEST 000055b2: PUSH1 0x00 000055b4: DUP1 000055b5: PUSH1 0x00 000055b7: DUP1 000055b8: PUSH1 0x00 000055ba: DUP1 000055bb: PUSH1 0x00 000055bd: PUSH1 0xe0 000055bf: DUP9 000055c0: DUP11 000055c1: SUB 000055c2: SLT 000055c3: ISZERO 000055c4: PUSH2 0x55cc 000055c7: JUMPI 000055c8: PUSH1 0x00 000055ca: DUP1 000055cb: REVERT 000055cc: JUMPDEST 000055cd: DUP8 000055ce: CALLDATALOAD 000055cf: SWAP7 000055d0: POP 000055d1: PUSH1 0x20 000055d3: DUP9 000055d4: ADD 000055d5: CALLDATALOAD 000055d6: SWAP6 000055d7: POP 000055d8: PUSH2 0x55e3 000055db: PUSH1 0x40 000055dd: DUP10 000055de: ADD 000055df: PUSH2 0x534d 000055e2: JUMP 000055e3: JUMPDEST 000055e4: SWAP5 000055e5: POP 000055e6: PUSH1 0x60 000055e8: DUP9 000055e9: ADD 000055ea: CALLDATALOAD 000055eb: SWAP4 000055ec: POP 000055ed: PUSH2 0x55f8 000055f0: PUSH1 0x80 000055f2: DUP10 000055f3: ADD 000055f4: PUSH2 0x556d 000055f7: JUMP 000055f8: JUMPDEST 000055f9: SWAP3 000055fa: POP 000055fb: PUSH1 0xa0 000055fd: DUP9 000055fe: ADD 000055ff: CALLDATALOAD 00005600: PUSH2 0x5608 00005603: DUP2 00005604: PUSH2 0x55a0 00005607: JUMP 00005608: JUMPDEST 00005609: SWAP2 0000560a: POP 0000560b: PUSH1 0xc0 0000560d: DUP9 0000560e: ADD 0000560f: CALLDATALOAD 00005610: PUSH8 0xffffffffffffffff 00005619: DUP2 0000561a: GT 0000561b: ISZERO 0000561c: PUSH2 0x5624 0000561f: JUMPI 00005620: PUSH1 0x00 00005622: DUP1 00005623: REVERT 00005624: JUMPDEST 00005625: PUSH2 0x5630 00005628: DUP11 00005629: DUP3 0000562a: DUP12 0000562b: ADD 0000562c: PUSH2 0x5376 0000562f: JUMP 00005630: JUMPDEST 00005631: SWAP2 00005632: POP 00005633: POP 00005634: SWAP3 00005635: SWAP6 00005636: SWAP9 00005637: SWAP2 00005638: SWAP5 00005639: SWAP8 0000563a: POP 0000563b: SWAP3 0000563c: SWAP6 0000563d: POP 0000563e: JUMP 0000563f: JUMPDEST 00005640: PUSH1 0x00 00005642: PUSH1 0x20 00005644: DUP3 00005645: DUP5 00005646: SUB 00005647: SLT 00005648: ISZERO 00005649: PUSH2 0x5651 0000564c: JUMPI 0000564d: PUSH1 0x00 0000564f: DUP1 00005650: REVERT 00005651: JUMPDEST 00005652: DUP2 00005653: CALLDATALOAD 00005654: PUSH2 0x29ed 00005657: DUP2 00005658: PUSH2 0x55a0 0000565b: JUMP 0000565c: JUMPDEST 0000565d: PUSH1 0x00 0000565f: DUP1 00005660: PUSH1 0x00 00005662: DUP1 00005663: PUSH1 0x00 00005665: DUP6 00005666: DUP8 00005667: SUB 00005668: PUSH1 0xe0 0000566a: DUP2 0000566b: SLT 0000566c: ISZERO 0000566d: PUSH2 0x5675 00005670: JUMPI 00005671: PUSH1 0x00 00005673: DUP1 00005674: REVERT 00005675: JUMPDEST 00005676: DUP7 00005677: CALLDATALOAD 00005678: PUSH8 0xffffffffffffffff 00005681: DUP1 00005682: DUP3 00005683: GT 00005684: ISZERO 00005685: PUSH2 0x568d 00005688: JUMPI 00005689: PUSH1 0x00 0000568b: DUP1 0000568c: REVERT 0000568d: JUMPDEST 0000568e: PUSH2 0x5699 00005691: DUP11 00005692: DUP4 00005693: DUP12 00005694: ADD 00005695: PUSH2 0x5404 00005698: JUMP 00005699: JUMPDEST 0000569a: SWAP8 0000569b: POP 0000569c: PUSH1 0x20 0000569e: DUP10 0000569f: ADD 000056a0: CALLDATALOAD 000056a1: SWAP7 000056a2: POP 000056a3: PUSH1 0x80 000056a5: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0 000056c6: DUP5 000056c7: ADD 000056c8: SLT 000056c9: ISZERO 000056ca: PUSH2 0x56d2 000056cd: JUMPI 000056ce: PUSH1 0x00 000056d0: DUP1 000056d1: REVERT 000056d2: JUMPDEST 000056d3: PUSH1 0x40 000056d5: DUP10 000056d6: ADD 000056d7: SWAP6 000056d8: POP 000056d9: PUSH1 0xc0 000056db: DUP10 000056dc: ADD 000056dd: CALLDATALOAD 000056de: SWAP3 000056df: POP 000056e0: DUP1 000056e1: DUP4 000056e2: GT 000056e3: ISZERO 000056e4: PUSH2 0x56ec 000056e7: JUMPI 000056e8: PUSH1 0x00 000056ea: DUP1 000056eb: REVERT 000056ec: JUMPDEST 000056ed: DUP3 000056ee: DUP10 000056ef: ADD 000056f0: SWAP3 000056f1: POP 000056f2: DUP10 000056f3: PUSH1 0x1f 000056f5: DUP5 000056f6: ADD 000056f7: SLT 000056f8: PUSH2 0x5700 000056fb: JUMPI 000056fc: PUSH1 0x00 000056fe: DUP1 000056ff: REVERT 00005700: JUMPDEST 00005701: DUP3 00005702: CALLDATALOAD 00005703: SWAP2 00005704: POP 00005705: DUP1 00005706: DUP3 00005707: GT 00005708: ISZERO 00005709: PUSH2 0x5711 0000570c: JUMPI 0000570d: PUSH1 0x00 0000570f: DUP1 00005710: REVERT 00005711: JUMPDEST 00005712: POP 00005713: DUP9 00005714: PUSH1 0x20 00005716: DUP3 00005717: PUSH1 0x05 00005719: SHL 0000571a: DUP5 0000571b: ADD 0000571c: ADD 0000571d: GT 0000571e: ISZERO 0000571f: PUSH2 0x5727 00005722: JUMPI 00005723: PUSH1 0x00 00005725: DUP1 00005726: REVERT 00005727: JUMPDEST 00005728: SWAP6 00005729: SWAP9 0000572a: SWAP5 0000572b: SWAP8 0000572c: POP 0000572d: SWAP3 0000572e: SWAP6 0000572f: POP 00005730: POP 00005731: POP 00005732: PUSH1 0x20 00005734: ADD 00005735: SWAP2 00005736: SWAP1 00005737: JUMP 00005738: JUMPDEST 00005739: DUP8 0000573a: DUP2 0000573b: MSTORE 0000573c: DUP7 0000573d: PUSH1 0x20 0000573f: DUP3 00005740: ADD 00005741: MSTORE 00005742: DUP6 00005743: PUSH1 0x40 00005745: DUP3 00005746: ADD 00005747: MSTORE 00005748: DUP5 00005749: PUSH1 0x60 0000574b: DUP3 0000574c: ADD 0000574d: MSTORE 0000574e: PUSH32 0xffffffffffffffff000000000000000000000000000000000000000000000000 0000576f: DUP5 00005770: PUSH1 0xc0 00005772: SHL 00005773: AND 00005774: PUSH1 0x80 00005776: DUP3 00005777: ADD 00005778: MSTORE 00005779: DUP3 0000577a: ISZERO 0000577b: ISZERO 0000577c: PUSH1 0xf8 0000577e: SHL 0000577f: PUSH1 0x88 00005781: DUP3 00005782: ADD 00005783: MSTORE 00005784: PUSH1 0x00 00005786: DUP3 00005787: MLOAD 00005788: PUSH2 0x5798 0000578b: DUP2 0000578c: PUSH1 0x89 0000578e: DUP6 0000578f: ADD 00005790: PUSH1 0x20 00005792: DUP8 00005793: ADD 00005794: PUSH2 0x54cb 00005797: JUMP 00005798: JUMPDEST 00005799: SWAP2 0000579a: SWAP1 0000579b: SWAP2 0000579c: ADD 0000579d: PUSH1 0x89 0000579f: ADD 000057a0: SWAP9 000057a1: SWAP8 000057a2: POP 000057a3: POP 000057a4: POP 000057a5: POP 000057a6: POP 000057a7: POP 000057a8: POP 000057a9: POP 000057aa: JUMP 000057ab: JUMPDEST 000057ac: PUSH1 0x00 000057ae: PUSH1 0x20 000057b0: DUP3 000057b1: DUP5 000057b2: SUB 000057b3: SLT 000057b4: ISZERO 000057b5: PUSH2 0x57bd 000057b8: JUMPI 000057b9: PUSH1 0x00 000057bb: DUP1 000057bc: REVERT 000057bd: JUMPDEST 000057be: POP 000057bf: MLOAD 000057c0: SWAP2 000057c1: SWAP1 000057c2: POP 000057c3: JUMP 000057c4: JUMPDEST 000057c5: DUP1 000057c6: MLOAD 000057c7: PUSH16 0xffffffffffffffffffffffffffffffff 000057d8: DUP2 000057d9: AND 000057da: DUP2 000057db: EQ 000057dc: PUSH2 0x5371 000057df: JUMPI 000057e0: PUSH1 0x00 000057e2: DUP1 000057e3: REVERT 000057e4: JUMPDEST 000057e5: PUSH1 0x00 000057e7: PUSH1 0x60 000057e9: DUP3 000057ea: DUP5 000057eb: SUB 000057ec: SLT 000057ed: ISZERO 000057ee: PUSH2 0x57f6 000057f1: JUMPI 000057f2: PUSH1 0x00 000057f4: DUP1 000057f5: REVERT 000057f6: JUMPDEST 000057f7: PUSH1 0x40 000057f9: MLOAD 000057fa: PUSH1 0x60 000057fc: DUP2 000057fd: ADD 000057fe: DUP2 000057ff: DUP2 00005800: LT 00005801: PUSH8 0xffffffffffffffff 0000580a: DUP3 0000580b: GT 0000580c: OR 0000580d: ISZERO 0000580e: PUSH2 0x5819 00005811: JUMPI 00005812: PUSH2 0x5819 00005815: PUSH2 0x52a6 00005818: JUMP 00005819: JUMPDEST 0000581a: PUSH1 0x40 0000581c: MSTORE 0000581d: DUP3 0000581e: MLOAD 0000581f: DUP2 00005820: MSTORE 00005821: PUSH2 0x582c 00005824: PUSH1 0x20 00005826: DUP5 00005827: ADD 00005828: PUSH2 0x57c4 0000582b: JUMP 0000582c: JUMPDEST 0000582d: PUSH1 0x20 0000582f: DUP3 00005830: ADD 00005831: MSTORE 00005832: PUSH2 0x583d 00005835: PUSH1 0x40 00005837: DUP5 00005838: ADD 00005839: PUSH2 0x57c4 0000583c: JUMP 0000583d: JUMPDEST 0000583e: PUSH1 0x40 00005840: DUP3 00005841: ADD 00005842: MSTORE 00005843: SWAP4 00005844: SWAP3 00005845: POP 00005846: POP 00005847: POP 00005848: JUMP 00005849: JUMPDEST 0000584a: PUSH1 0x00 0000584c: PUSH1 0x20 0000584e: DUP3 0000584f: DUP5 00005850: SUB 00005851: SLT 00005852: ISZERO 00005853: PUSH2 0x585b 00005856: JUMPI 00005857: PUSH1 0x00 00005859: DUP1 0000585a: REVERT 0000585b: JUMPDEST 0000585c: DUP2 0000585d: MLOAD 0000585e: PUSH2 0x29ed 00005861: DUP2 00005862: PUSH2 0x55a0 00005865: JUMP 00005866: JUMPDEST 00005867: PUSH1 0x00 00005869: DUP5 0000586a: MLOAD 0000586b: PUSH2 0x5878 0000586e: DUP2 0000586f: DUP5 00005870: PUSH1 0x20 00005872: DUP10 00005873: ADD 00005874: PUSH2 0x54cb 00005877: JUMP 00005878: JUMPDEST 00005879: DUP1 0000587a: DUP4 0000587b: ADD 0000587c: SWAP1 0000587d: POP 0000587e: PUSH32 0x2e00000000000000000000000000000000000000000000000000000000000000 0000589f: DUP1 000058a0: DUP3 000058a1: MSTORE 000058a2: DUP6 000058a3: MLOAD 000058a4: PUSH2 0x58b4 000058a7: DUP2 000058a8: PUSH1 0x01 000058aa: DUP6 000058ab: ADD 000058ac: PUSH1 0x20 000058ae: DUP11 000058af: ADD 000058b0: PUSH2 0x54cb 000058b3: JUMP 000058b4: JUMPDEST 000058b5: PUSH1 0x01 000058b7: SWAP3 000058b8: ADD 000058b9: SWAP2 000058ba: DUP3 000058bb: ADD 000058bc: MSTORE 000058bd: DUP4 000058be: MLOAD 000058bf: PUSH2 0x58cf 000058c2: DUP2 000058c3: PUSH1 0x02 000058c5: DUP5 000058c6: ADD 000058c7: PUSH1 0x20 000058c9: DUP9 000058ca: ADD 000058cb: PUSH2 0x54cb 000058ce: JUMP 000058cf: JUMPDEST 000058d0: ADD 000058d1: PUSH1 0x02 000058d3: ADD 000058d4: SWAP6 000058d5: SWAP5 000058d6: POP 000058d7: POP 000058d8: POP 000058d9: POP 000058da: POP 000058db: JUMP 000058dc: JUMPDEST 000058dd: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 000058fe: PUSH1 0x00 00005900: MSTORE 00005901: PUSH1 0x11 00005903: PUSH1 0x04 00005905: MSTORE 00005906: PUSH1 0x24 00005908: PUSH1 0x00 0000590a: REVERT 0000590b: JUMPDEST 0000590c: PUSH1 0x00 0000590e: PUSH8 0xffffffffffffffff 00005917: DUP1 00005918: DUP4 00005919: AND 0000591a: DUP2 0000591b: DUP6 0000591c: AND 0000591d: DUP2 0000591e: DUP4 0000591f: DIV 00005920: DUP2 00005921: GT 00005922: DUP3 00005923: ISZERO 00005924: ISZERO 00005925: AND 00005926: ISZERO 00005927: PUSH2 0x5932 0000592a: JUMPI 0000592b: PUSH2 0x5932 0000592e: PUSH2 0x58dc 00005931: JUMP 00005932: JUMPDEST 00005933: MUL 00005934: SWAP5 00005935: SWAP4 00005936: POP 00005937: POP 00005938: POP 00005939: POP 0000593a: JUMP 0000593b: JUMPDEST 0000593c: PUSH1 0x00 0000593e: PUSH8 0xffffffffffffffff 00005947: DUP1 00005948: DUP4 00005949: AND 0000594a: DUP2 0000594b: DUP6 0000594c: AND 0000594d: DUP1 0000594e: DUP4 0000594f: SUB 00005950: DUP3 00005951: GT 00005952: ISZERO 00005953: PUSH2 0x595e 00005956: JUMPI 00005957: PUSH2 0x595e 0000595a: PUSH2 0x58dc 0000595d: JUMP 0000595e: JUMPDEST 0000595f: ADD 00005960: SWAP5 00005961: SWAP4 00005962: POP 00005963: POP 00005964: POP 00005965: POP 00005966: JUMP 00005967: JUMPDEST 00005968: PUSH1 0x00 0000596a: PUSH1 0x80 0000596c: DUP3 0000596d: DUP5 0000596e: SUB 0000596f: SLT 00005970: ISZERO 00005971: PUSH2 0x5979 00005974: JUMPI 00005975: PUSH1 0x00 00005977: DUP1 00005978: REVERT 00005979: JUMPDEST 0000597a: PUSH1 0x40 0000597c: MLOAD 0000597d: PUSH1 0x80 0000597f: DUP2 00005980: ADD 00005981: DUP2 00005982: DUP2 00005983: LT 00005984: PUSH8 0xffffffffffffffff 0000598d: DUP3 0000598e: GT 0000598f: OR 00005990: ISZERO 00005991: PUSH2 0x599c 00005994: JUMPI 00005995: PUSH2 0x599c 00005998: PUSH2 0x52a6 0000599b: JUMP 0000599c: JUMPDEST 0000599d: DUP1 0000599e: PUSH1 0x40 000059a0: MSTORE 000059a1: POP 000059a2: DUP3 000059a3: CALLDATALOAD 000059a4: DUP2 000059a5: MSTORE 000059a6: PUSH1 0x20 000059a8: DUP4 000059a9: ADD 000059aa: CALLDATALOAD 000059ab: PUSH1 0x20 000059ad: DUP3 000059ae: ADD 000059af: MSTORE 000059b0: PUSH1 0x40 000059b2: DUP4 000059b3: ADD 000059b4: CALLDATALOAD 000059b5: PUSH1 0x40 000059b7: DUP3 000059b8: ADD 000059b9: MSTORE 000059ba: PUSH1 0x60 000059bc: DUP4 000059bd: ADD 000059be: CALLDATALOAD 000059bf: PUSH1 0x60 000059c1: DUP3 000059c2: ADD 000059c3: MSTORE 000059c4: DUP1 000059c5: SWAP2 000059c6: POP 000059c7: POP 000059c8: SWAP3 000059c9: SWAP2 000059ca: POP 000059cb: POP 000059cc: JUMP 000059cd: JUMPDEST 000059ce: PUSH1 0x00 000059d0: PUSH8 0xffffffffffffffff 000059d9: DUP1 000059da: DUP5 000059db: GT 000059dc: ISZERO 000059dd: PUSH2 0x59e8 000059e0: JUMPI 000059e1: PUSH2 0x59e8 000059e4: PUSH2 0x52a6 000059e7: JUMP 000059e8: JUMPDEST 000059e9: DUP4 000059ea: PUSH1 0x05 000059ec: SHL 000059ed: PUSH1 0x20 000059ef: PUSH2 0x59f9 000059f2: DUP2 000059f3: DUP4 000059f4: ADD 000059f5: PUSH2 0x52fe 000059f8: JUMP 000059f9: JUMPDEST 000059fa: DUP7 000059fb: DUP2 000059fc: MSTORE 000059fd: SWAP2 000059fe: DUP6 000059ff: ADD 00005a00: SWAP2 00005a01: DUP2 00005a02: DUP2 00005a03: ADD 00005a04: SWAP1 00005a05: CALLDATASIZE 00005a06: DUP5 00005a07: GT 00005a08: ISZERO 00005a09: PUSH2 0x5a11 00005a0c: JUMPI 00005a0d: PUSH1 0x00 00005a0f: DUP1 00005a10: REVERT 00005a11: JUMPDEST 00005a12: DUP7 00005a13: JUMPDEST 00005a14: DUP5 00005a15: DUP2 00005a16: LT 00005a17: ISZERO 00005a18: PUSH2 0x5a45 00005a1b: JUMPI 00005a1c: DUP1 00005a1d: CALLDATALOAD 00005a1e: DUP7 00005a1f: DUP2 00005a20: GT 00005a21: ISZERO 00005a22: PUSH2 0x5a2b 00005a25: JUMPI 00005a26: PUSH1 0x00 00005a28: DUP1 00005a29: DUP2 00005a2a: REVERT 00005a2b: JUMPDEST 00005a2c: PUSH2 0x5a37 00005a2f: CALLDATASIZE 00005a30: DUP3 00005a31: DUP12 00005a32: ADD 00005a33: PUSH2 0x5376 00005a36: JUMP 00005a37: JUMPDEST 00005a38: DUP5 00005a39: MSTORE 00005a3a: POP 00005a3b: SWAP2 00005a3c: DUP4 00005a3d: ADD 00005a3e: SWAP2 00005a3f: DUP4 00005a40: ADD 00005a41: PUSH2 0x5a13 00005a44: JUMP 00005a45: JUMPDEST 00005a46: POP 00005a47: SWAP8 00005a48: SWAP7 00005a49: POP 00005a4a: POP 00005a4b: POP 00005a4c: POP 00005a4d: POP 00005a4e: POP 00005a4f: POP 00005a50: JUMP 00005a51: JUMPDEST 00005a52: PUSH1 0x00 00005a54: DUP3 00005a55: DUP3 00005a56: LT 00005a57: ISZERO 00005a58: PUSH2 0x5a63 00005a5b: JUMPI 00005a5c: PUSH2 0x5a63 00005a5f: PUSH2 0x58dc 00005a62: JUMP 00005a63: JUMPDEST 00005a64: POP 00005a65: SUB 00005a66: SWAP1 00005a67: JUMP 00005a68: JUMPDEST 00005a69: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00005a8a: PUSH1 0x00 00005a8c: MSTORE 00005a8d: PUSH1 0x12 00005a8f: PUSH1 0x04 00005a91: MSTORE 00005a92: PUSH1 0x24 00005a94: PUSH1 0x00 00005a96: REVERT 00005a97: JUMPDEST 00005a98: PUSH1 0x00 00005a9a: DUP3 00005a9b: PUSH2 0x5aa6 00005a9e: JUMPI 00005a9f: PUSH2 0x5aa6 00005aa2: PUSH2 0x5a68 00005aa5: JUMP 00005aa6: JUMPDEST 00005aa7: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00005ac8: DUP4 00005ac9: EQ 00005aca: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 00005aeb: DUP4 00005aec: EQ 00005aed: AND 00005aee: ISZERO 00005aef: PUSH2 0x5afa 00005af2: JUMPI 00005af3: PUSH2 0x5afa 00005af6: PUSH2 0x58dc 00005af9: JUMP 00005afa: JUMPDEST 00005afb: POP 00005afc: SDIV 00005afd: SWAP1 00005afe: JUMP 00005aff: JUMPDEST 00005b00: PUSH1 0x00 00005b02: DUP1 00005b03: DUP4 00005b04: SLT 00005b05: DUP4 00005b06: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 00005b27: ADD 00005b28: DUP4 00005b29: SLT 00005b2a: DUP2 00005b2b: ISZERO 00005b2c: AND 00005b2d: ISZERO 00005b2e: PUSH2 0x5b39 00005b31: JUMPI 00005b32: PUSH2 0x5b39 00005b35: PUSH2 0x58dc 00005b38: JUMP 00005b39: JUMPDEST 00005b3a: DUP4 00005b3b: PUSH32 0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00005b5c: ADD 00005b5d: DUP4 00005b5e: SGT 00005b5f: DUP2 00005b60: AND 00005b61: ISZERO 00005b62: PUSH2 0x5b6d 00005b65: JUMPI 00005b66: PUSH2 0x5b6d 00005b69: PUSH2 0x58dc 00005b6c: JUMP 00005b6d: JUMPDEST 00005b6e: POP 00005b6f: POP 00005b70: SUB 00005b71: SWAP1 00005b72: JUMP 00005b73: JUMPDEST 00005b74: PUSH1 0x00 00005b76: PUSH32 0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00005b97: PUSH1 0x00 00005b99: DUP5 00005b9a: SGT 00005b9b: PUSH1 0x00 00005b9d: DUP5 00005b9e: SGT 00005b9f: DUP6 00005ba0: DUP4 00005ba1: DIV 00005ba2: DUP6 00005ba3: GT 00005ba4: DUP3 00005ba5: DUP3 00005ba6: AND 00005ba7: AND 00005ba8: ISZERO 00005ba9: PUSH2 0x5bb4 00005bac: JUMPI 00005bad: PUSH2 0x5bb4 00005bb0: PUSH2 0x58dc 00005bb3: JUMP 00005bb4: JUMPDEST 00005bb5: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 00005bd6: PUSH1 0x00 00005bd8: DUP8 00005bd9: SLT 00005bda: DUP7 00005bdb: DUP3 00005bdc: SDIV 00005bdd: DUP9 00005bde: SLT 00005bdf: DUP2 00005be0: DUP5 00005be1: AND 00005be2: AND 00005be3: ISZERO 00005be4: PUSH2 0x5bef 00005be7: JUMPI 00005be8: PUSH2 0x5bef 00005beb: PUSH2 0x58dc 00005bee: JUMP 00005bef: JUMPDEST 00005bf0: PUSH1 0x00 00005bf2: DUP8 00005bf3: SLT 00005bf4: SWAP3 00005bf5: POP 00005bf6: DUP8 00005bf7: DUP3 00005bf8: SDIV 00005bf9: DUP8 00005bfa: SLT 00005bfb: DUP5 00005bfc: DUP5 00005bfd: AND 00005bfe: AND 00005bff: ISZERO 00005c00: PUSH2 0x5c0b 00005c03: JUMPI 00005c04: PUSH2 0x5c0b 00005c07: PUSH2 0x58dc 00005c0a: JUMP 00005c0b: JUMPDEST 00005c0c: DUP8 00005c0d: DUP6 00005c0e: SDIV 00005c0f: DUP8 00005c10: SLT 00005c11: DUP2 00005c12: DUP5 00005c13: AND 00005c14: AND 00005c15: ISZERO 00005c16: PUSH2 0x5c21 00005c19: JUMPI 00005c1a: PUSH2 0x5c21 00005c1d: PUSH2 0x58dc 00005c20: JUMP 00005c21: JUMPDEST 00005c22: POP 00005c23: POP 00005c24: POP 00005c25: SWAP3 00005c26: SWAP1 00005c27: SWAP4 00005c28: MUL 00005c29: SWAP4 00005c2a: SWAP3 00005c2b: POP 00005c2c: POP 00005c2d: POP 00005c2e: JUMP 00005c2f: JUMPDEST 00005c30: PUSH1 0x00 00005c32: DUP1 00005c33: DUP3 00005c34: SLT 00005c35: DUP3 00005c36: PUSH32 0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00005c57: SUB 00005c58: DUP5 00005c59: SGT 00005c5a: DUP2 00005c5b: ISZERO 00005c5c: AND 00005c5d: ISZERO 00005c5e: PUSH2 0x5c69 00005c61: JUMPI 00005c62: PUSH2 0x5c69 00005c65: PUSH2 0x58dc 00005c68: JUMP 00005c69: JUMPDEST 00005c6a: DUP3 00005c6b: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 00005c8c: SUB 00005c8d: DUP5 00005c8e: SLT 00005c8f: DUP2 00005c90: AND 00005c91: ISZERO 00005c92: PUSH2 0x5c9d 00005c95: JUMPI 00005c96: PUSH2 0x5c9d 00005c99: PUSH2 0x58dc 00005c9c: JUMP 00005c9d: JUMPDEST 00005c9e: POP 00005c9f: POP 00005ca0: ADD 00005ca1: SWAP1 00005ca2: JUMP 00005ca3: JUMPDEST 00005ca4: PUSH1 0x00 00005ca6: DUP2 00005ca7: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00005cc8: DIV 00005cc9: DUP4 00005cca: GT 00005ccb: DUP3 00005ccc: ISZERO 00005ccd: ISZERO 00005cce: AND 00005ccf: ISZERO 00005cd0: PUSH2 0x5cdb 00005cd3: JUMPI 00005cd4: PUSH2 0x5cdb 00005cd7: PUSH2 0x58dc 00005cda: JUMP 00005cdb: JUMPDEST 00005cdc: POP 00005cdd: MUL 00005cde: SWAP1 00005cdf: JUMP 00005ce0: JUMPDEST 00005ce1: PUSH1 0x00 00005ce3: DUP3 00005ce4: PUSH2 0x5cef 00005ce7: JUMPI 00005ce8: PUSH2 0x5cef 00005ceb: PUSH2 0x5a68 00005cee: JUMP 00005cef: JUMPDEST 00005cf0: POP 00005cf1: DIV 00005cf2: SWAP1 00005cf3: JUMP 00005cf4: JUMPDEST 00005cf5: DUP8 00005cf6: DUP2 00005cf7: MSTORE 00005cf8: PUSH1 0x00 00005cfa: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005d0f: DUP1 00005d10: DUP10 00005d11: AND 00005d12: PUSH1 0x20 00005d14: DUP5 00005d15: ADD 00005d16: MSTORE 00005d17: DUP1 00005d18: DUP9 00005d19: AND 00005d1a: PUSH1 0x40 00005d1c: DUP5 00005d1d: ADD 00005d1e: MSTORE 00005d1f: POP 00005d20: DUP6 00005d21: PUSH1 0x60 00005d23: DUP4 00005d24: ADD 00005d25: MSTORE 00005d26: DUP5 00005d27: PUSH1 0x80 00005d29: DUP4 00005d2a: ADD 00005d2b: MSTORE 00005d2c: DUP4 00005d2d: PUSH1 0xa0 00005d2f: DUP4 00005d30: ADD 00005d31: MSTORE 00005d32: PUSH1 0xe0 00005d34: PUSH1 0xc0 00005d36: DUP4 00005d37: ADD 00005d38: MSTORE 00005d39: PUSH2 0x5d45 00005d3c: PUSH1 0xe0 00005d3e: DUP4 00005d3f: ADD 00005d40: DUP5 00005d41: PUSH2 0x54f7 00005d44: JUMP 00005d45: JUMPDEST 00005d46: SWAP10 00005d47: SWAP9 00005d48: POP 00005d49: POP 00005d4a: POP 00005d4b: POP 00005d4c: POP 00005d4d: POP 00005d4e: POP 00005d4f: POP 00005d50: POP 00005d51: JUMP 00005d52: JUMPDEST 00005d53: PUSH1 0x00 00005d55: DUP3 00005d56: NOT 00005d57: DUP3 00005d58: GT 00005d59: ISZERO 00005d5a: PUSH2 0x5d65 00005d5d: JUMPI 00005d5e: PUSH2 0x5d65 00005d61: PUSH2 0x58dc 00005d64: JUMP 00005d65: JUMPDEST 00005d66: POP 00005d67: ADD 00005d68: SWAP1 00005d69: JUMP 00005d6a: JUMPDEST 00005d6b: PUSH1 0x00 00005d6d: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00005d8e: DUP3 00005d8f: SUB 00005d90: PUSH2 0x5d9b 00005d93: JUMPI 00005d94: PUSH2 0x5d9b 00005d97: PUSH2 0x58dc 00005d9a: JUMP 00005d9b: JUMPDEST 00005d9c: POP 00005d9d: PUSH1 0x01 00005d9f: ADD 00005da0: SWAP1 00005da1: JUMP 00005da2: JUMPDEST 00005da3: PUSH1 0x00 00005da5: DUP3 00005da6: PUSH2 0x5db1 00005da9: JUMPI 00005daa: PUSH2 0x5db1 00005dad: PUSH2 0x5a68 00005db0: JUMP 00005db1: JUMPDEST 00005db2: POP 00005db3: MOD 00005db4: SWAP1 00005db5: JUMP 00005db6: JUMPDEST 00005db7: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00005dd8: PUSH1 0x00 00005dda: MSTORE 00005ddb: PUSH1 0x32 00005ddd: PUSH1 0x04 00005ddf: MSTORE 00005de0: PUSH1 0x24 00005de2: PUSH1 0x00 00005de4: REVERT 00005de5: JUMPDEST 00005de6: DUP1 00005de7: MLOAD 00005de8: PUSH4 0xffffffff 00005ded: DUP2 00005dee: AND 00005def: DUP2 00005df0: EQ 00005df1: PUSH2 0x5371 00005df4: JUMPI 00005df5: PUSH1 0x00 00005df7: DUP1 00005df8: REVERT 00005df9: JUMPDEST 00005dfa: DUP1 00005dfb: MLOAD 00005dfc: PUSH1 0xff 00005dfe: DUP2 00005dff: AND 00005e00: DUP2 00005e01: EQ 00005e02: PUSH2 0x5371 00005e05: JUMPI 00005e06: PUSH1 0x00 00005e08: DUP1 00005e09: REVERT 00005e0a: JUMPDEST 00005e0b: PUSH1 0x00 00005e0d: PUSH1 0xc0 00005e0f: DUP3 00005e10: DUP5 00005e11: SUB 00005e12: SLT 00005e13: ISZERO 00005e14: PUSH2 0x5e1c 00005e17: JUMPI 00005e18: PUSH1 0x00 00005e1a: DUP1 00005e1b: REVERT 00005e1c: JUMPDEST 00005e1d: PUSH1 0x40 00005e1f: MLOAD 00005e20: PUSH1 0xc0 00005e22: DUP2 00005e23: ADD 00005e24: DUP2 00005e25: DUP2 00005e26: LT 00005e27: PUSH8 0xffffffffffffffff 00005e30: DUP3 00005e31: GT 00005e32: OR 00005e33: ISZERO 00005e34: PUSH2 0x5e3f 00005e37: JUMPI 00005e38: PUSH2 0x5e3f 00005e3b: PUSH2 0x52a6 00005e3e: JUMP 00005e3f: JUMPDEST 00005e40: PUSH1 0x40 00005e42: MSTORE 00005e43: PUSH2 0x5e4b 00005e46: DUP4 00005e47: PUSH2 0x5de5 00005e4a: JUMP 00005e4b: JUMPDEST 00005e4c: DUP2 00005e4d: MSTORE 00005e4e: PUSH2 0x5e59 00005e51: PUSH1 0x20 00005e53: DUP5 00005e54: ADD 00005e55: PUSH2 0x5df9 00005e58: JUMP 00005e59: JUMPDEST 00005e5a: PUSH1 0x20 00005e5c: DUP3 00005e5d: ADD 00005e5e: MSTORE 00005e5f: PUSH2 0x5e6a 00005e62: PUSH1 0x40 00005e64: DUP5 00005e65: ADD 00005e66: PUSH2 0x5df9 00005e69: JUMP 00005e6a: JUMPDEST 00005e6b: PUSH1 0x40 00005e6d: DUP3 00005e6e: ADD 00005e6f: MSTORE 00005e70: PUSH2 0x5e7b 00005e73: PUSH1 0x60 00005e75: DUP5 00005e76: ADD 00005e77: PUSH2 0x5de5 00005e7a: JUMP 00005e7b: JUMPDEST 00005e7c: PUSH1 0x60 00005e7e: DUP3 00005e7f: ADD 00005e80: MSTORE 00005e81: PUSH2 0x5e8c 00005e84: PUSH1 0x80 00005e86: DUP5 00005e87: ADD 00005e88: PUSH2 0x5de5 00005e8b: JUMP 00005e8c: JUMPDEST 00005e8d: PUSH1 0x80 00005e8f: DUP3 00005e90: ADD 00005e91: MSTORE 00005e92: PUSH2 0x5e9d 00005e95: PUSH1 0xa0 00005e97: DUP5 00005e98: ADD 00005e99: PUSH2 0x57c4 00005e9c: JUMP 00005e9d: JUMPDEST 00005e9e: PUSH1 0xa0 00005ea0: DUP3 00005ea1: ADD 00005ea2: MSTORE 00005ea3: SWAP4 00005ea4: SWAP3 00005ea5: POP 00005ea6: POP 00005ea7: POP 00005ea8: JUMP 00005ea9: JUMPDEST 00005eaa: PUSH1 0x00 00005eac: PUSH1 0xff 00005eae: DUP4 00005eaf: AND 00005eb0: DUP1 00005eb1: PUSH2 0x5ebc 00005eb4: JUMPI 00005eb5: PUSH2 0x5ebc 00005eb8: PUSH2 0x5a68 00005ebb: JUMP 00005ebc: JUMPDEST 00005ebd: DUP1 00005ebe: PUSH1 0xff 00005ec0: DUP5 00005ec1: AND 00005ec2: MOD 00005ec3: SWAP2 00005ec4: POP 00005ec5: POP 00005ec6: SWAP3 00005ec7: SWAP2 00005ec8: POP 00005ec9: POP 00005eca: JUMP 00005ecb: JUMPDEST 00005ecc: PUSH1 0x00 00005ece: PUSH1 0xff 00005ed0: DUP3 00005ed1: AND 00005ed2: PUSH1 0xff 00005ed4: DUP5 00005ed5: AND 00005ed6: DUP1 00005ed7: DUP3 00005ed8: LT 00005ed9: ISZERO 00005eda: PUSH2 0x5ee5 00005edd: JUMPI 00005ede: PUSH2 0x5ee5 00005ee1: PUSH2 0x58dc 00005ee4: JUMP 00005ee5: JUMPDEST 00005ee6: SWAP1 00005ee7: SUB 00005ee8: SWAP4 00005ee9: SWAP3 00005eea: POP 00005eeb: POP 00005eec: POP 00005eed: JUMP 00005eee: JUMPDEST 00005eef: PUSH1 0x00 00005ef1: DUP3 00005ef2: MLOAD 00005ef3: PUSH2 0x5f00 00005ef6: DUP2 00005ef7: DUP5 00005ef8: PUSH1 0x20 00005efa: DUP8 00005efb: ADD 00005efc: PUSH2 0x54cb 00005eff: JUMP 00005f00: JUMPDEST 00005f01: SWAP2 00005f02: SWAP1 00005f03: SWAP2 00005f04: ADD 00005f05: SWAP3 00005f06: SWAP2 00005f07: POP 00005f08: POP 00005f09: JUMP 00005f0a: JUMPDEST 00005f0b: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00005f2c: PUSH1 0x00 00005f2e: MSTORE 00005f2f: PUSH1 0x21 00005f31: PUSH1 0x04 00005f33: MSTORE 00005f34: PUSH1 0x24 00005f36: PUSH1 0x00 00005f38: REVERT 00005f39: INVALID 00005f3a: LOG1 00005f3b: PUSH5 0x736f6c6343 00005f41: STOP 00005f42: ADDMOD 00005f43: UNKNOWN(0x0F) 00005f44: STOP 00005f45: 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": "0xd69b2b1b",
"selector": "0xd69b2b1b",
"calldata_variants": [
"0xd69b2b1b",
"0xd69b2b1b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe965084c",
"selector": "0xe965084c",
"calldata_variants": [
"0xe965084c",
"0xe965084c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf0498750",
"selector": "0xf0498750",
"calldata_variants": [
"0xf0498750",
"0xf04987500000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xcff0ab96",
"selector": "0xcff0ab96",
"calldata_variants": [
"0xcff0ab96",
"0xcff0ab960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd53a822f",
"selector": "0xd53a822f",
"calldata_variants": [
"0xd53a822f",
"0xd53a822f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa35d99df",
"selector": "0xa35d99df",
"calldata_variants": [
"0xa35d99df",
"0xa35d99df0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa77b7d08",
"selector": "0xa77b7d08",
"calldata_variants": [
"0xa77b7d08",
"0xa77b7d080000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xac6986c5",
"selector": "0xac6986c5",
"calldata_variants": [
"0xac6986c5",
"0xac6986c50000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 483,
"type": "tx_origin_used"
},
{
"pc": 2197,
"type": "tx_origin_used"
},
{
"pc": 4948,
"type": "tx_origin_used"
},
{
"pc": 482,
"type": "tx_origin_used"
},
{
"pc": 2195,
"type": "tx_origin_used"
},
{
"pc": 4945,
"type": "tx_origin_used"
},
{
"pc": 5098,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 5767,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
]
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0xa0cf800961f0d0ab400e8a4e40c426499adbe73f13e0fd3efa6efad1990924d9
call_targets:
0xe1399f54ba2597b4eada9e3450c34d393fb131a7
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xa0cf800961f0d0ab400e8a4e40c426499adbe73f13e0fd3efa6efad1990924d9",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xe1399f54ba2597b4eada9e3450c34d393fb131a7"
],
"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": "0xd69b2b1b",
"selector": "0xd69b2b1b",
"calldata_variants": [
"0xd69b2b1b",
"0xd69b2b1b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe965084c",
"selector": "0xe965084c",
"calldata_variants": [
"0xe965084c",
"0xe965084c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf0498750",
"selector": "0xf0498750",
"calldata_variants": [
"0xf0498750",
"0xf04987500000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xcff0ab96",
"selector": "0xcff0ab96",
"calldata_variants": [
"0xcff0ab96",
"0xcff0ab960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd53a822f",
"selector": "0xd53a822f",
"calldata_variants": [
"0xd53a822f",
"0xd53a822f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa35d99df",
"selector": "0xa35d99df",
"calldata_variants": [
"0xa35d99df",
"0xa35d99df0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa77b7d08",
"selector": "0xa77b7d08",
"calldata_variants": [
"0xa77b7d08",
"0xa77b7d080000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xac6986c5",
"selector": "0xac6986c5",
"calldata_variants": [
"0xac6986c5",
"0xac6986c50000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 4518,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 9536,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 14134,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 3,
"guards_detected": [
{
"pc": 483,
"type": "tx_origin_used"
},
{
"pc": 2197,
"type": "tx_origin_used"
},
{
"pc": 4948,
"type": "tx_origin_used"
},
{
"pc": 482,
"type": "tx_origin_used"
},
{
"pc": 2195,
"type": "tx_origin_used"
},
{
"pc": 4945,
"type": "tx_origin_used"
},
{
"pc": 5098,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 5767,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
],
"untrusted_call_count": 3
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0xa0cf800961f0d0ab400e8a4e40c426499adbe73f13e0fd3efa6efad1990924d9
call_targets:
0xe1399f54ba2597b4eada9e3450c34d393fb131a7
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xa0cf800961f0d0ab400e8a4e40c426499adbe73f13e0fd3efa6efad1990924d9",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xe1399f54ba2597b4eada9e3450c34d393fb131a7"
],
"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": "0xd69b2b1b",
"selector": "0xd69b2b1b",
"calldata_variants": [
"0xd69b2b1b",
"0xd69b2b1b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe965084c",
"selector": "0xe965084c",
"calldata_variants": [
"0xe965084c",
"0xe965084c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf0498750",
"selector": "0xf0498750",
"calldata_variants": [
"0xf0498750",
"0xf04987500000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xcff0ab96",
"selector": "0xcff0ab96",
"calldata_variants": [
"0xcff0ab96",
"0xcff0ab960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd53a822f",
"selector": "0xd53a822f",
"calldata_variants": [
"0xd53a822f",
"0xd53a822f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa35d99df",
"selector": "0xa35d99df",
"calldata_variants": [
"0xa35d99df",
"0xa35d99df0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa77b7d08",
"selector": "0xa77b7d08",
"calldata_variants": [
"0xa77b7d08",
"0xa77b7d080000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xac6986c5",
"selector": "0xac6986c5",
"calldata_variants": [
"0xac6986c5",
"0xac6986c50000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 4518,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 9536,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 14134,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 3,
"guards_detected": [
{
"pc": 483,
"type": "tx_origin_used"
},
{
"pc": 2197,
"type": "tx_origin_used"
},
{
"pc": 4948,
"type": "tx_origin_used"
},
{
"pc": 482,
"type": "tx_origin_used"
},
{
"pc": 2195,
"type": "tx_origin_used"
},
{
"pc": 4945,
"type": "tx_origin_used"
},
{
"pc": 5098,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 5767,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
]
}
|