0f3c34c2-f8f4-44da-bf66-981b821b21eb
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 |
|---|---|---|---|---|
| 31367 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 111200 | artifact.fetch | failed | 1 / 3 | 1 week ago |
| 111201 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 111202 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 111203 | capability.graph | complete | 1 / 3 | 1 week ago |
| 111204 | detector.run | complete | 1 / 3 | 1 week ago |
| 111205 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:915069] OpenAI Codex v0.77.0 (research preview)
[codex:915069] --------
[codex:915069] workdir: /tmp/codex-multi-y7os1mkm
[codex:915069] model: gpt-5.2-codex
[codex:915069] provider: openai
[codex:915069] approval: never
[codex:915069] sandbox: read-only
[codex:915069] reasoning effort: xhigh
[codex:915069] reasoning summaries: auto
[codex:915069] session id: 019b80de-989a-7f60-a838-7dbb8044171b
[codex:915069] --------
[codex:915069] user
[codex:915069] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:915069]
[codex:915069] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:915069]
[codex:915069] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:915069] - Gas inefficiency, code quality, naming, or best practices
[codex:915069] - Theoretical vulnerabilities without a clear extraction path
[codex:915069] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:915069] - Front-running unless it enables theft beyond MEV
[codex:915069] - DoS, griefing, or issues that don't result in attacker profit
[codex:915069] - Missing events, view function issues, or informational findings
[codex:915069]
[codex:915069] HIGH-VALUE PATTERNS TO HUNT:
[codex:915069] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:915069] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:915069] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:915069] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:915069] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:915069] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:915069] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:915069] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:915069] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:915069]
[codex:915069] For each finding, you MUST provide:
[codex:915069] 1. Exact file and line numbers of vulnerable code
[codex:915069] 2. Step-by-step exploit transaction sequence
[codex:915069] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:915069]
[codex:915069] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:915069]
[codex:915069] Output MUST be valid JSON matching the provided schema.
[codex:915069] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:915069] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:915069] mcp startup: no servers
[codex:915069]
[codex:915069] thinking
[codex:915069] **Preparing to check for skills information**
[codex:915069] exec
[codex:915069] /bin/bash -lc ls in /tmp/codex-multi-y7os1mkm succeeded in 6ms:
[codex:915069] AUDIT_BUNDLE.txt
[codex:915069] codex-output-schema.json
[codex:915069] contracts
[codex:915069]
[codex:915069] thinking
[codex:915069] **Reading AUDIT_BUNDLE.txt**
[codex:915069] exec
[codex:915069] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-y7os1mkm succeeded in 5ms:
[codex:915069] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:915069]
[codex:915069] ================================================================================
[codex:915069] FILE: contracts/contracts/L1/L2OutputOracle.sol
[codex:915069] ================================================================================
[codex:915069] // SPDX-License-Identifier: MIT
[codex:915069] pragma solidity 0.8.15;
[codex:915069]
[codex:915069] import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
[codex:915069] import { Semver } from "../universal/Semver.sol";
[codex:915069] import { Types } from "../libraries/Types.sol";
[codex:915069]
[codex:915069] /**
[codex:915069] * @custom:proxied
[codex:915069] * @title L2OutputOracle
[codex:915069] * @notice The L2OutputOracle contains an array of L2 state outputs, where each output is a
[codex:915069] * commitment to the state of the L2 chain. Other contracts like the OptimismPortal use
[codex:915069] * these outputs to verify information about the state of L2.
[codex:915069] */
[codex:915069] contract L2OutputOracle is Initializable, Semver {
[codex:915069]
[codex:915069] thinking
[codex:915069] **Searching for exploitable functions in audit bundle**
[codex:915069] exec
[codex:915069] /bin/bash -lc 'rg -n "withdraw|finalize|claim|deposit|mint|burn|bridge|transfer" AUDIT_BUNDLE.txt' in /tmp/codex-multi-y7os1mkm succeeded in 7ms:
[codex:915069] 43: * @notice Minimum time (in seconds) that must elapse before a withdrawal can be finalized.
[codex:915069] 158: // Do not allow deleting any outputs that have already been finalized.
[codex:915069] 161: "L2OutputOracle: cannot delete outputs that have already been finalized"
[codex:915069] 218: // finalized.
[codex:915069] 388: * @notice Represents a proven withdrawal.
[codex:915069] 391: * @custom:field timestamp Timestamp at whcih the withdrawal was proven.
[codex:915069] 401: * @notice Version of the deposit event.
[codex:915069] 406: * @notice The L2 gas limit set when eth is deposited using the receive() function.
[codex:915069] 421: * @notice Address that has the ability to pause and unpause withdrawals.
[codex:915069] 426: * @notice Address of the L2 account which initiated a withdrawal in this transaction. If the
[codex:915069] 428: * to finalizeWithdrawalTransaction.
[codex:915069] 433: * @notice A list of withdrawal hashes which have been successfully finalized.
[codex:915069] 435: mapping(bytes32 => bool) public finalizedWithdrawals;
[codex:915069] 438: * @notice A mapping of withdrawal hashes to `ProvenWithdrawal` data.
[codex:915069] 444: * withdrawals are paused. This may be removed in the future.
[codex:915069] 452: * @notice Emitted when a transaction is deposited from L1 to L2. The parameters of this event
[codex:915069] 453: * are read by the rollup node and used to derive deposit transactions on L2.
[codex:915069] 455: * @param from Address that triggered the deposit transaction.
[codex:915069] 456: * @param to Address that the deposit transaction is directed to.
[codex:915069] 457: * @param version Version of this deposit transaction event.
[codex:915069]
[codex:915069] thinking
[codex:915069] **Continuing to explore and parse file sections**
[codex:915069] exec
[codex:915069] /bin/bash -lc 'rg -n "''^FILE:" AUDIT_BUNDLE.txt' in /tmp/codex-multi-y7os1mkm succeeded in 6ms:
[codex:915069] 4:FILE: contracts/contracts/L1/L2OutputOracle.sol
[codex:915069] 358:FILE: contracts/contracts/L1/OptimismPortal.sol
[codex:915069] 888:FILE: contracts/contracts/L1/ResourceMetering.sol
[codex:915069] 1078:FILE: contracts/contracts/L1/SystemConfig.sol
[codex:915069] 1379:FILE: contracts/contracts/L1/interfaces/winddown/IBalanceClaimer.sol
[codex:915069] 1454:FILE: contracts/contracts/L1/interfaces/winddown/IErc20BalanceWithdrawer.sol
[codex:915069] 1495:FILE: contracts/contracts/L1/interfaces/winddown/IEthBalanceWithdrawer.sol
[codex:915069] 1529:FILE: contracts/contracts/libraries/Arithmetic.sol
[codex:915069] 1581:FILE: contracts/contracts/libraries/Burn.sol
[codex:915069] 1627:FILE: contracts/contracts/libraries/Bytes.sol
[codex:915069] 1773:FILE: contracts/contracts/libraries/Constants.sol
[codex:915069] 1826:FILE: contracts/contracts/libraries/Encoding.sol
[codex:915069] 1992:FILE: contracts/contracts/libraries/Hashing.sol
[codex:915069] 2168:FILE: contracts/contracts/libraries/SafeCall.sol
[codex:915069] 2332:FILE: contracts/contracts/libraries/Types.sol
[codex:915069] 2420:FILE: contracts/contracts/libraries/rlp/RLPReader.sol
[codex:915069] 2783:FILE: contracts/contracts/libraries/rlp/RLPWriter.sol
[codex:915069] 3008:FILE: contracts/contracts/libraries/trie/MerkleTrie.sol
[codex:915069] 3300:FILE: contracts/contracts/libraries/trie/SecureMerkleTrie.sol
[codex:915069] 3368:FILE: contracts/contracts/universal/Semver.sol
[codex:915069]
[codex:915069] thinking
[codex:915069] **Reviewing key contract files**
[codex:915069] exec
[codex:915069] /bin/bash -lc "sed -n '358,888p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-y7os1mkm succeeded in 5ms:
[codex:915069] FILE: contracts/contracts/L1/OptimismPortal.sol
[codex:915069] ================================================================================
[codex:915069] // SPDX-License-Identifier: MIT
[codex:915069] pragma solidity 0.8.15;
[codex:915069]
[codex:915069] // Interfaces
[codex:915069] import { IEthBalanceWithdrawer } from "./interfaces/winddown/IEthBalanceWithdrawer.sol";
[codex:915069] import { IBalanceClaimer } from "./interfaces/winddown/IBalanceClaimer.sol";
[codex:915069]
[codex:915069] import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
[codex:915069] import { SafeCall } from "../libraries/SafeCall.sol";
[codex:915069] import { L2OutputOracle } from "./L2OutputOracle.sol";
[codex:915069] import { SystemConfig } from "./SystemConfig.sol";
[codex:915069] import { Constants } from "../libraries/Constants.sol";
[codex:915069] import { Types } from "../libraries/Types.sol";
[codex:915069] import { Hashing } from "../libraries/Hashing.sol";
[codex:915069] import { SecureMerkleTrie } from "../libraries/trie/SecureMerkleTrie.sol";
[codex:915069] import { AddressAliasHelper } from "../vendor/AddressAliasHelper.sol";
[codex:915069] import { ResourceMetering } from "./ResourceMetering.sol";
[codex:915069] import { Semver } from "../universal/Semver.sol";
[codex:915069]
[codex:915069] thinking
[codex:915069] **Continuing resource metering review**
[codex:915069] exec
[codex:915069] /bin/bash -lc "sed -n '888,1078p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-y7os1mkm succeeded in 6ms:
[codex:915069] FILE: contracts/contracts/L1/ResourceMetering.sol
[codex:915069] ================================================================================
[codex:915069] // SPDX-License-Identifier: MIT
[codex:915069] pragma solidity 0.8.15;
[codex:915069]
[codex:915069] import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
[codex:915069] import { Math } from "@openzeppelin/contracts/utils/math/Math.sol";
[codex:915069] import { Burn } from "../libraries/Burn.sol";
[codex:915069] import { Arithmetic } from "../libraries/Arithmetic.sol";
[codex:915069]
[codex:915069] /**
[codex:915069] * @custom:upgradeable
[codex:915069] * @title ResourceMetering
[codex:915069] * @notice ResourceMetering implements an EIP-1559 style resource metering system where pricing
[codex:915069] * updates automatically based on current demand.
[codex:915069] */
[codex:915069] abstract contract ResourceMetering is Initializable {
[codex:915069] /**
[codex:915069] * @notice Represents the various parameters that control the way in which resources are
[codex:915069] * metered. Corresponds to the EIP-1559 resource metering system.
[codex:915069]
[codex:915069] thinking
[codex:915069] **Inspecting SystemConfig next**
[codex:915069] exec
[codex:915069] /bin/bash -lc "sed -n '1078,1379p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-y7os1mkm succeeded in 5ms:
[codex:915069] FILE: contracts/contracts/L1/SystemConfig.sol
[codex:915069] ================================================================================
[codex:915069] // SPDX-License-Identifier: MIT
[codex:915069] pragma solidity 0.8.15;
[codex:915069]
[codex:915069] import {
[codex:915069] OwnableUpgradeable
[codex:915069] } from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
[codex:915069] import { Semver } from "../universal/Semver.sol";
[codex:915069] import { ResourceMetering } from "./ResourceMetering.sol";
[codex:915069]
[codex:915069] /**
[codex:915069] * @title SystemConfig
[codex:915069] * @notice The SystemConfig contract is used to manage configuration of an Optimism network. All
[codex:915069] * configuration is stored on L1 and picked up by L2 as part of the derviation of the L2
[codex:915069] * chain.
[codex:915069] */
[codex:915069] contract SystemConfig is OwnableUpgradeable, Semver {
[codex:915069] /**
[codex:915069] * @notice Enum representing different types of updates.
[codex:915069]
[codex:915069] thinking
[codex:915069] **Continuing to review interfaces and libraries**
[codex:915069] exec
[codex:915069] /bin/bash -lc "sed -n '1379,1529p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-y7os1mkm succeeded in 5ms:
[codex:915069] FILE: contracts/contracts/L1/interfaces/winddown/IBalanceClaimer.sol
[codex:915069] ================================================================================
[codex:915069] // SPDX-License-Identifier: MIT
[codex:915069] pragma solidity ^0.8.15;
[codex:915069]
[codex:915069] import { IEthBalanceWithdrawer } from "./IEthBalanceWithdrawer.sol";
[codex:915069] import { IErc20BalanceWithdrawer } from "./IErc20BalanceWithdrawer.sol";
[codex:915069]
[codex:915069]
[codex:915069] /**
[codex:915069] * @title IBalanceClaimer
[codex:915069] * @notice Interface for the BalanceClaimer contract
[codex:915069] */
[codex:915069] interface IBalanceClaimer {
[codex:915069] /**
[codex:915069] * @notice Emitted when a user claims their balance
[codex:915069] * @param user The user who claimed their balance
[codex:915069] * @param ethBalance The eth balance of the user
[codex:915069] * @param erc20TokenBalances The ERC20 token balances of the user
[codex:915069] */
[codex:915069]
[codex:915069] thinking
[codex:915069] **Continuing to review libraries**
[codex:915069] exec
[codex:915069] /bin/bash -lc "sed -n '1529,1773p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-y7os1mkm succeeded in 5ms:
[codex:915069] FILE: contracts/contracts/libraries/Arithmetic.sol
[codex:915069] ================================================================================
[codex:915069] // SPDX-License-Identifier: MIT
[codex:915069] pragma solidity 0.8.15;
[codex:915069]
[codex:915069] import { SignedMath } from "@openzeppelin/contracts/utils/math/SignedMath.sol";
[codex:915069] import { FixedPointMathLib } from "@rari-capital/solmate/src/utils/FixedPointMathLib.sol";
[codex:915069]
[codex:915069] /**
[codex:915069] * @title Arithmetic
[codex:915069] * @notice Even more math than before.
[codex:915069] */
[codex:915069] library Arithmetic {
[codex:915069] /**
[codex:915069] * @notice Clamps a value between a minimum and maximum.
[codex:915069] *
[codex:915069] * @param _value The value to clamp.
[codex:915069] * @param _min The minimum value.
[codex:915069] * @param _max The maximum value.
[codex:915069] *
[codex:915069]
[codex:915069] thinking
[codex:915069] **Continuing review**
[codex:915069] exec
[codex:915069] /bin/bash -lc "sed -n '1773,1826p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-y7os1mkm succeeded in 5ms:
[codex:915069] FILE: contracts/contracts/libraries/Constants.sol
[codex:915069] ================================================================================
[codex:915069] // SPDX-License-Identifier: MIT
[codex:915069] pragma solidity ^0.8.0;
[codex:915069]
[codex:915069] import { ResourceMetering } from "../L1/ResourceMetering.sol";
[codex:915069]
[codex:915069] /**
[codex:915069] * @title Constants
[codex:915069] * @notice Constants is a library for storing constants. Simple! Don't put everything in here, just
[codex:915069] * the stuff used in multiple contracts. Constants that only apply to a single contract
[codex:915069] * should be defined in that contract instead.
[codex:915069] */
[codex:915069] library Constants {
[codex:915069] /**
[codex:915069] * @notice Special address to be used as the tx origin for gas estimation calls in the
[codex:915069] * OptimismPortal and CrossDomainMessenger calls. You only need to use this address if
[codex:915069] * the minimum gas limit specified by the user is not actually enough to execute the
[codex:915069] * given message and you're attempting to estimate the actual necessary gas limit. We
[codex:915069] * use address(1) because it's the ecrecover precompile and therefore guaranteed to
[codex:915069]
[codex:915069] thinking
[codex:915069] **Advancing to the next encoding step**
[codex:915069] exec
[codex:915069] /bin/bash -lc "sed -n '1826,1992p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-y7os1mkm succeeded in 5ms:
[codex:915069] FILE: contracts/contracts/libraries/Encoding.sol
[codex:915069] ================================================================================
[codex:915069] // SPDX-License-Identifier: MIT
[codex:915069] pragma solidity ^0.8.0;
[codex:915069]
[codex:915069] import { Types } from "./Types.sol";
[codex:915069] import { Hashing } from "./Hashing.sol";
[codex:915069] import { RLPWriter } from "./rlp/RLPWriter.sol";
[codex:915069]
[codex:915069] /**
[codex:915069] * @title Encoding
[codex:915069] * @notice Encoding handles Optimism's various different encoding schemes.
[codex:915069] */
[codex:915069] library Encoding {
[codex:915069] /**
[codex:915069] * @notice RLP encodes the L2 transaction that would be generated when a given deposit is sent
[codex:915069] * to the L2 system. Useful for searching for a deposit in the L2 system. The
[codex:915069] * transaction is prefixed with 0x7e to identify its EIP-2718 type.
[codex:915069] *
[codex:915069] * @param _tx User deposit transaction to encode.
[codex:915069]
[codex:915069] thinking
[codex:915069] **Continuing process**
[codex:915069] exec
[codex:915069] /bin/bash -lc "sed -n '1992,2168p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-y7os1mkm succeeded in 5ms:
[codex:915069] FILE: contracts/contracts/libraries/Hashing.sol
[codex:915069] ================================================================================
[codex:915069] // SPDX-License-Identifier: MIT
[codex:915069] pragma solidity ^0.8.0;
[codex:915069]
[codex:915069] import { Types } from "./Types.sol";
[codex:915069] import { Encoding } from "./Encoding.sol";
[codex:915069]
[codex:915069] /**
[codex:915069] * @title Hashing
[codex:915069] * @notice Hashing handles Optimism's various different hashing schemes.
[codex:915069] */
[codex:915069] library Hashing {
[codex:915069] /**
[codex:915069] * @notice Computes the hash of the RLP encoded L2 transaction that would be generated when a
[codex:915069] * given deposit is sent to the L2 system. Useful for searching for a deposit in the L2
[codex:915069] * system.
[codex:915069] *
[codex:915069] * @param _tx User deposit transaction to hash.
[codex:915069] *
[codex:915069]
[codex:915069] thinking
[codex:915069] **Checking next SafeCall**
[codex:915069] exec
[codex:915069] /bin/bash -lc "sed -n '2168,2332p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-y7os1mkm succeeded in 6ms:
[codex:915069] FILE: contracts/contracts/libraries/SafeCall.sol
[codex:915069] ================================================================================
[codex:915069] // SPDX-License-Identifier: MIT
[codex:915069] pragma solidity 0.8.15;
[codex:915069]
[codex:915069] /**
[codex:915069] * @title SafeCall
[codex:915069] * @notice Perform low level safe calls
[codex:915069] */
[codex:915069] library SafeCall {
[codex:915069] /**
[codex:915069] * @notice Performs a low level call without copying any returndata.
[codex:915069] * @dev Passes no calldata to the call context.
[codex:915069] *
[codex:915069] * @param _target Address to call
[codex:915069] * @param _gas Amount of gas to pass to the call
[codex:915069] * @param _value Amount of value to pass to the call
[codex:915069] */
[codex:915069] function send(
[codex:915069] address _target,
[codex:915069]
[codex:915069] thinking
[codex:915069] **Reviewing next Types**
[codex:915069] exec
[codex:915069] /bin/bash -lc "sed -n '2332,2420p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-y7os1mkm succeeded in 5ms:
[codex:915069] FILE: contracts/contracts/libraries/Types.sol
[codex:915069] ================================================================================
[codex:915069] // SPDX-License-Identifier: MIT
[codex:915069] pragma solidity ^0.8.0;
[codex:915069]
[codex:915069] /**
[codex:915069] * @title Types
[codex:915069] * @notice Contains various types used throughout the Optimism contract system.
[codex:915069] */
[codex:915069] library Types {
[codex:915069] /**
[codex:915069] * @notice OutputProposal represents a commitment to the L2 state. The timestamp is the L1
[codex:915069] * timestamp that the output root is posted. This timestamp is used to verify that the
[codex:915069] * finalization period has passed since the output root was submitted.
[codex:915069] *
[codex:915069] * @custom:field outputRoot Hash of the L2 output.
[codex:915069] * @custom:field timestamp Timestamp of the L1 block that the output root was submitted in.
[codex:915069] * @custom:field l2BlockNumber L2 block number that the output corresponds to.
[codex:915069] */
[codex:915069] struct OutputProposal {
[codex:915069]
[codex:915069] thinking
[codex:915069] **Reviewing RLP and Merkle Trie components**
[codex:915069] exec
[codex:915069] /bin/bash -lc "sed -n '2420,2783p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-y7os1mkm succeeded in 5ms:
[codex:915069] FILE: contracts/contracts/libraries/rlp/RLPReader.sol
[codex:915069] ================================================================================
[codex:915069] // SPDX-License-Identifier: MIT
[codex:915069] pragma solidity ^0.8.8;
[codex:915069]
[codex:915069] /**
[codex:915069] * @custom:attribution https://github.com/hamdiallam/Solidity-RLP
[codex:915069] * @title RLPReader
[codex:915069] * @notice RLPReader is a library for parsing RLP-encoded byte arrays into Solidity types. Adapted
[codex:915069] * from Solidity-RLP (https://github.com/hamdiallam/Solidity-RLP) by Hamdi Allam with
[codex:915069] * various tweaks to improve readability.
[codex:915069] */
[codex:915069] library RLPReader {
[codex:915069] /**
[codex:915069] * Custom pointer type to avoid confusion between pointers and uint256s.
[codex:915069] */
[codex:915069] type MemoryPointer is uint256;
[codex:915069]
[codex:915069] /**
[codex:915069] * @notice RLP item types.
[codex:915069]
[codex:915069] thinking
[codex:915069] **Continuing exploration**
[codex:915069] exec
[codex:915069] /bin/bash -lc "sed -n '2783,3008p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-y7os1mkm succeeded in 5ms:
[codex:915069] FILE: contracts/contracts/libraries/rlp/RLPWriter.sol
[codex:915069] ================================================================================
[codex:915069] // SPDX-License-Identifier: MIT
[codex:915069] pragma solidity ^0.8.0;
[codex:915069]
[codex:915069] /**
[codex:915069] * @custom:attribution https://github.com/bakaoh/solidity-rlp-encode
[codex:915069] * @title RLPWriter
[codex:915069] * @author RLPWriter is a library for encoding Solidity types to RLP bytes. Adapted from Bakaoh's
[codex:915069] * RLPEncode library (https://github.com/bakaoh/solidity-rlp-encode) with minor
[codex:915069] * modifications to improve legibility.
[codex:915069] */
[codex:915069] library RLPWriter {
[codex:915069] /**
[codex:915069] * @notice RLP encodes a byte string.
[codex:915069] *
[codex:915069] * @param _in The byte string to encode.
[codex:915069] *
[codex:915069] * @return The RLP encoded string in bytes.
[codex:915069] */
[codex:915069]
[codex:915069]
[codex:915069]
[codex:915069] thinking
[codex:915069] **Evaluating core contract security and exploit scenarios**
[codex:915069]
[codex:915069] I'm analyzing the main L1 contracts of Optimism’s bridge, focusing on potential profit exploits like missing access control or reentrancy. I find most functions are permissioned and see reentrancy guards around withdrawal finalization. I’m scrutinizing deposit and withdrawal flows, Merkle proof verifications, and initialization logic for vulnerabilities. The challenge lies in bypassing L2 withdrawal proofs or exploiting proxy initialization, but most defenses seem robust. There’s curiosity around whether MerkleTrie or proof handling could be tricked, so I’m inspecting those too, along with possible chain replay and proxy initialization risks. Overall, I’m filtering for realistic profit extraction attacks and not just centralization or admin key issues.
[codex:915069] thinking
[codex:915069] **Confirming final assessment and preparing report**
[codex:915069]
[codex:915069] I'm double-checking timestamps, overflow protections, reentrancy, proof verification logic, and resource metering behaviors for any overlooked exploit paths. Considering initialization, proxy usage, event handling, and potential cross-chain replay. After thorough scrutiny, I find no concrete, exploitable vulnerability enabling profit extraction within the analyzed contracts. Next, I need to prepare a clear JSON report indicating no findings.
[codex:915069] thinking
[codex:915069] **Finalizing JSON output**
[codex:915069] codex
[codex:915069] {"no_findings":true,"summary":"No concrete, exploitable paths to extract ETH/tokens/NFTs were identified in the audited contracts.","findings":[]}
[codex:915069] tokens used
[codex:915069] 51,347
[codex:915069] {"no_findings":true,"summary":"No concrete, exploitable paths to extract ETH/tokens/NFTs were identified in the audited contracts.","findings":[]}
{
"codex": {
"ran_at": "2026-01-02T22:43:39.800886+00:00",
"returncode": 0
},
"summary": "No concrete, exploitable paths to extract ETH/tokens/NFTs were identified in the audited contracts.",
"raw_final": {
"summary": "No concrete, exploitable paths to extract ETH/tokens/NFTs were identified in the audited contracts.",
"findings": [],
"no_findings": true
},
"no_findings": true,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: PUSH2 0x0162 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0x8c3152e9 00000019: GT 0000001a: PUSH2 0x00c0 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0xd53a822f 00000024: GT 00000025: PUSH2 0x0074 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xe9e05c42 0000002f: GT 00000030: PUSH2 0x0059 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xe9e05c42 0000003a: EQ 0000003b: PUSH2 0x050d 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xf0498750 00000045: EQ 00000046: PUSH2 0x0520 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xfc67436c 00000050: EQ 00000051: PUSH2 0x0554 00000054: JUMPI 00000055: PUSH1 0x00 00000057: DUP1 00000058: REVERT 00000059: JUMPDEST 0000005a: DUP1 0000005b: PUSH4 0xd53a822f 00000060: EQ 00000061: PUSH2 0x0461 00000064: JUMPI 00000065: DUP1 00000066: PUSH4 0xe965084c 0000006b: EQ 0000006c: PUSH2 0x0481 0000006f: JUMPI 00000070: PUSH1 0x00 00000072: DUP1 00000073: REVERT 00000074: JUMPDEST 00000075: DUP1 00000076: PUSH4 0xa14238e7 0000007b: GT 0000007c: PUSH2 0x00a5 0000007f: JUMPI 00000080: DUP1 00000081: PUSH4 0xa14238e7 00000086: EQ 00000087: PUSH2 0x0357 0000008a: JUMPI 0000008b: DUP1 0000008c: PUSH4 0xa35d99df 00000091: EQ 00000092: PUSH2 0x0387 00000095: JUMPI 00000096: DUP1 00000097: PUSH4 0xcff0ab96 0000009c: EQ 0000009d: PUSH2 0x03c0 000000a0: JUMPI 000000a1: PUSH1 0x00 000000a3: DUP1 000000a4: REVERT 000000a5: JUMPDEST 000000a6: DUP1 000000a7: PUSH4 0x8c3152e9 000000ac: EQ 000000ad: PUSH2 0x030a 000000b0: JUMPI 000000b1: DUP1 000000b2: PUSH4 0x9bf62d82 000000b7: EQ 000000b8: PUSH2 0x032a 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 0x02c1 000000e1: JUMPI 000000e2: DUP1 000000e3: PUSH4 0x8456cb59 000000e8: EQ 000000e9: PUSH2 0x02f5 000000ec: JUMPI 000000ed: DUP1 000000ee: PUSH4 0x8b4c40b0 000000f3: EQ 000000f4: PUSH2 0x0187 000000f7: JUMPI 000000f8: PUSH1 0x00 000000fa: DUP1 000000fb: REVERT 000000fc: JUMPDEST 000000fd: DUP1 000000fe: PUSH4 0x5c975abb 00000103: EQ 00000104: PUSH2 0x0277 00000107: JUMPI 00000108: DUP1 00000109: PUSH4 0x6dbffb78 0000010e: EQ 0000010f: PUSH2 0x02a1 00000112: JUMPI 00000113: PUSH1 0x00 00000115: DUP1 00000116: REVERT 00000117: JUMPDEST 00000118: DUP1 00000119: PUSH4 0x3f4ba83a 0000011e: GT 0000011f: PUSH2 0x0148 00000122: JUMPI 00000123: DUP1 00000124: PUSH4 0x3f4ba83a 00000129: EQ 0000012a: PUSH2 0x0220 0000012d: JUMPI 0000012e: DUP1 0000012f: PUSH4 0x4870496f 00000134: EQ 00000135: PUSH2 0x0235 00000138: JUMPI 00000139: DUP1 0000013a: PUSH4 0x54fd4d50 0000013f: EQ 00000140: PUSH2 0x0255 00000143: JUMPI 00000144: PUSH1 0x00 00000146: DUP1 00000147: REVERT 00000148: JUMPDEST 00000149: DUP1 0000014a: PUSH3 0x1c2ff6 0000014e: EQ 0000014f: PUSH2 0x018e 00000152: JUMPI 00000153: DUP1 00000154: PUSH4 0x102e0bea 00000159: EQ 0000015a: PUSH2 0x01ec 0000015d: JUMPI 0000015e: PUSH1 0x00 00000160: DUP1 00000161: REVERT 00000162: JUMPDEST 00000163: CALLDATASIZE 00000164: PUSH2 0x0189 00000167: JUMPI 00000168: PUSH2 0x0187 0000016b: CALLER 0000016c: CALLVALUE 0000016d: PUSH3 0x0186a0 00000171: PUSH1 0x00 00000173: PUSH1 0x40 00000175: MLOAD 00000176: DUP1 00000177: PUSH1 0x20 00000179: ADD 0000017a: PUSH1 0x40 0000017c: MSTORE 0000017d: DUP1 0000017e: PUSH1 0x00 00000180: DUP2 00000181: MSTORE 00000182: POP 00000183: PUSH2 0x0574 00000186: JUMP 00000187: JUMPDEST 00000188: STOP 00000189: JUMPDEST 0000018a: PUSH1 0x00 0000018c: DUP1 0000018d: REVERT 0000018e: JUMPDEST 0000018f: CALLVALUE 00000190: DUP1 00000191: ISZERO 00000192: PUSH2 0x019a 00000195: JUMPI 00000196: PUSH1 0x00 00000198: DUP1 00000199: REVERT 0000019a: JUMPDEST 0000019b: POP 0000019c: PUSH2 0x01c2 0000019f: PUSH32 0x000000000000000000000000a38d0c4e6319f9045f20318ba5f04cde94208608 000001c0: DUP2 000001c1: JUMP 000001c2: JUMPDEST 000001c3: PUSH1 0x40 000001c5: MLOAD 000001c6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000001db: SWAP1 000001dc: SWAP2 000001dd: AND 000001de: DUP2 000001df: MSTORE 000001e0: PUSH1 0x20 000001e2: ADD 000001e3: JUMPDEST 000001e4: PUSH1 0x40 000001e6: MLOAD 000001e7: DUP1 000001e8: SWAP2 000001e9: SUB 000001ea: SWAP1 000001eb: RETURN 000001ec: JUMPDEST 000001ed: CALLVALUE 000001ee: DUP1 000001ef: ISZERO 000001f0: PUSH2 0x01f8 000001f3: JUMPI 000001f4: PUSH1 0x00 000001f6: DUP1 000001f7: REVERT 000001f8: JUMPDEST 000001f9: POP 000001fa: PUSH2 0x01c2 000001fd: PUSH32 0x0000000000000000000000000ca4c7a370e0155c77a33e78443a54d749e0bc21 0000021e: DUP2 0000021f: JUMP 00000220: JUMPDEST 00000221: CALLVALUE 00000222: DUP1 00000223: ISZERO 00000224: PUSH2 0x022c 00000227: JUMPI 00000228: PUSH1 0x00 0000022a: DUP1 0000022b: REVERT 0000022c: JUMPDEST 0000022d: POP 0000022e: PUSH2 0x0187 00000231: PUSH2 0x080f 00000234: JUMP 00000235: JUMPDEST 00000236: CALLVALUE 00000237: DUP1 00000238: ISZERO 00000239: PUSH2 0x0241 0000023c: JUMPI 0000023d: PUSH1 0x00 0000023f: DUP1 00000240: REVERT 00000241: JUMPDEST 00000242: POP 00000243: PUSH2 0x0187 00000246: PUSH2 0x0250 00000249: CALLDATASIZE 0000024a: PUSH1 0x04 0000024c: PUSH2 0x4eb4 0000024f: JUMP 00000250: JUMPDEST 00000251: PUSH2 0x0932 00000254: JUMP 00000255: JUMPDEST 00000256: CALLVALUE 00000257: DUP1 00000258: ISZERO 00000259: PUSH2 0x0261 0000025c: JUMPI 0000025d: PUSH1 0x00 0000025f: DUP1 00000260: REVERT 00000261: JUMPDEST 00000262: POP 00000263: PUSH2 0x026a 00000266: PUSH2 0x0f98 00000269: JUMP 0000026a: JUMPDEST 0000026b: PUSH1 0x40 0000026d: MLOAD 0000026e: PUSH2 0x01e3 00000271: SWAP2 00000272: SWAP1 00000273: PUSH2 0x500a 00000276: JUMP 00000277: JUMPDEST 00000278: CALLVALUE 00000279: DUP1 0000027a: ISZERO 0000027b: PUSH2 0x0283 0000027e: JUMPI 0000027f: PUSH1 0x00 00000281: DUP1 00000282: REVERT 00000283: JUMPDEST 00000284: POP 00000285: PUSH1 0x35 00000287: SLOAD 00000288: PUSH2 0x0291 0000028b: SWAP1 0000028c: PUSH1 0xff 0000028e: AND 0000028f: DUP2 00000290: JUMP 00000291: JUMPDEST 00000292: PUSH1 0x40 00000294: MLOAD 00000295: SWAP1 00000296: ISZERO 00000297: ISZERO 00000298: DUP2 00000299: MSTORE 0000029a: PUSH1 0x20 0000029c: ADD 0000029d: PUSH2 0x01e3 000002a0: JUMP 000002a1: JUMPDEST 000002a2: CALLVALUE 000002a3: DUP1 000002a4: ISZERO 000002a5: PUSH2 0x02ad 000002a8: JUMPI 000002a9: PUSH1 0x00 000002ab: DUP1 000002ac: REVERT 000002ad: JUMPDEST 000002ae: POP 000002af: PUSH2 0x0291 000002b2: PUSH2 0x02bc 000002b5: CALLDATASIZE 000002b6: PUSH1 0x04 000002b8: PUSH2 0x501d 000002bb: JUMP 000002bc: JUMPDEST 000002bd: PUSH2 0x103b 000002c0: JUMP 000002c1: JUMPDEST 000002c2: CALLVALUE 000002c3: DUP1 000002c4: ISZERO 000002c5: PUSH2 0x02cd 000002c8: JUMPI 000002c9: PUSH1 0x00 000002cb: DUP1 000002cc: REVERT 000002cd: JUMPDEST 000002ce: POP 000002cf: PUSH2 0x01c2 000002d2: PUSH32 0x00000000000000000000000039e13d1ab040f6ea58ce19998edce01b3c365f84 000002f3: DUP2 000002f4: JUMP 000002f5: JUMPDEST 000002f6: CALLVALUE 000002f7: DUP1 000002f8: ISZERO 000002f9: PUSH2 0x0301 000002fc: JUMPI 000002fd: PUSH1 0x00 000002ff: DUP1 00000300: REVERT 00000301: JUMPDEST 00000302: POP 00000303: PUSH2 0x0187 00000306: PUSH2 0x1112 00000309: JUMP 0000030a: JUMPDEST 0000030b: CALLVALUE 0000030c: DUP1 0000030d: ISZERO 0000030e: PUSH2 0x0316 00000311: JUMPI 00000312: PUSH1 0x00 00000314: DUP1 00000315: REVERT 00000316: JUMPDEST 00000317: POP 00000318: PUSH2 0x0187 0000031b: PUSH2 0x0325 0000031e: CALLDATASIZE 0000031f: PUSH1 0x04 00000321: PUSH2 0x5036 00000324: JUMP 00000325: JUMPDEST 00000326: PUSH2 0x1232 00000329: JUMP 0000032a: JUMPDEST 0000032b: CALLVALUE 0000032c: DUP1 0000032d: ISZERO 0000032e: PUSH2 0x0336 00000331: JUMPI 00000332: PUSH1 0x00 00000334: DUP1 00000335: REVERT 00000336: JUMPDEST 00000337: POP 00000338: PUSH1 0x32 0000033a: SLOAD 0000033b: PUSH2 0x01c2 0000033e: SWAP1 0000033f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000354: AND 00000355: DUP2 00000356: JUMP 00000357: JUMPDEST 00000358: CALLVALUE 00000359: DUP1 0000035a: ISZERO 0000035b: PUSH2 0x0363 0000035e: JUMPI 0000035f: PUSH1 0x00 00000361: DUP1 00000362: REVERT 00000363: JUMPDEST 00000364: POP 00000365: PUSH2 0x0291 00000368: PUSH2 0x0372 0000036b: CALLDATASIZE 0000036c: PUSH1 0x04 0000036e: PUSH2 0x501d 00000371: JUMP 00000372: JUMPDEST 00000373: PUSH1 0x33 00000375: PUSH1 0x20 00000377: MSTORE 00000378: PUSH1 0x00 0000037a: SWAP1 0000037b: DUP2 0000037c: MSTORE 0000037d: PUSH1 0x40 0000037f: SWAP1 00000380: KECCAK256 00000381: SLOAD 00000382: PUSH1 0xff 00000384: AND 00000385: DUP2 00000386: JUMP 00000387: JUMPDEST 00000388: CALLVALUE 00000389: DUP1 0000038a: ISZERO 0000038b: PUSH2 0x0393 0000038e: JUMPI 0000038f: PUSH1 0x00 00000391: DUP1 00000392: REVERT 00000393: JUMPDEST 00000394: POP 00000395: PUSH2 0x03a7 00000398: PUSH2 0x03a2 0000039b: CALLDATASIZE 0000039c: PUSH1 0x04 0000039e: PUSH2 0x5083 000003a1: JUMP 000003a2: JUMPDEST 000003a3: PUSH2 0x1b0d 000003a6: JUMP 000003a7: JUMPDEST 000003a8: PUSH1 0x40 000003aa: MLOAD 000003ab: PUSH8 0xffffffffffffffff 000003b4: SWAP1 000003b5: SWAP2 000003b6: AND 000003b7: DUP2 000003b8: MSTORE 000003b9: PUSH1 0x20 000003bb: ADD 000003bc: PUSH2 0x01e3 000003bf: JUMP 000003c0: JUMPDEST 000003c1: CALLVALUE 000003c2: DUP1 000003c3: ISZERO 000003c4: PUSH2 0x03cc 000003c7: JUMPI 000003c8: PUSH1 0x00 000003ca: DUP1 000003cb: REVERT 000003cc: JUMPDEST 000003cd: POP 000003ce: PUSH1 0x01 000003d0: SLOAD 000003d1: PUSH2 0x0428 000003d4: SWAP1 000003d5: PUSH16 0xffffffffffffffffffffffffffffffff 000003e6: DUP2 000003e7: AND 000003e8: SWAP1 000003e9: PUSH8 0xffffffffffffffff 000003f2: PUSH17 0x0100000000000000000000000000000000 00000404: DUP3 00000405: DIV 00000406: DUP2 00000407: AND 00000408: SWAP2 00000409: PUSH25 0x01000000000000000000000000000000000000000000000000 00000423: SWAP1 00000424: DIV 00000425: AND 00000426: DUP4 00000427: JUMP 00000428: JUMPDEST 00000429: PUSH1 0x40 0000042b: DUP1 0000042c: MLOAD 0000042d: PUSH16 0xffffffffffffffffffffffffffffffff 0000043e: SWAP1 0000043f: SWAP5 00000440: AND 00000441: DUP5 00000442: MSTORE 00000443: PUSH8 0xffffffffffffffff 0000044c: SWAP3 0000044d: DUP4 0000044e: AND 0000044f: PUSH1 0x20 00000451: DUP6 00000452: ADD 00000453: MSTORE 00000454: SWAP2 00000455: AND 00000456: SWAP1 00000457: DUP3 00000458: ADD 00000459: MSTORE 0000045a: PUSH1 0x60 0000045c: ADD 0000045d: PUSH2 0x01e3 00000460: JUMP 00000461: JUMPDEST 00000462: CALLVALUE 00000463: DUP1 00000464: ISZERO 00000465: PUSH2 0x046d 00000468: JUMPI 00000469: PUSH1 0x00 0000046b: DUP1 0000046c: REVERT 0000046d: JUMPDEST 0000046e: POP 0000046f: PUSH2 0x0187 00000472: PUSH2 0x047c 00000475: CALLDATASIZE 00000476: PUSH1 0x04 00000478: PUSH2 0x50ae 0000047b: JUMP 0000047c: JUMPDEST 0000047d: PUSH2 0x1b26 00000480: JUMP 00000481: JUMPDEST 00000482: CALLVALUE 00000483: DUP1 00000484: ISZERO 00000485: PUSH2 0x048d 00000488: JUMPI 00000489: PUSH1 0x00 0000048b: DUP1 0000048c: REVERT 0000048d: JUMPDEST 0000048e: POP 0000048f: PUSH2 0x04df 00000492: PUSH2 0x049c 00000495: CALLDATASIZE 00000496: PUSH1 0x04 00000498: PUSH2 0x501d 0000049b: JUMP 0000049c: JUMPDEST 0000049d: PUSH1 0x34 0000049f: PUSH1 0x20 000004a1: MSTORE 000004a2: PUSH1 0x00 000004a4: SWAP1 000004a5: DUP2 000004a6: MSTORE 000004a7: PUSH1 0x40 000004a9: SWAP1 000004aa: KECCAK256 000004ab: DUP1 000004ac: SLOAD 000004ad: PUSH1 0x01 000004af: SWAP1 000004b0: SWAP2 000004b1: ADD 000004b2: SLOAD 000004b3: PUSH16 0xffffffffffffffffffffffffffffffff 000004c4: DUP1 000004c5: DUP3 000004c6: AND 000004c7: SWAP2 000004c8: PUSH17 0x0100000000000000000000000000000000 000004da: SWAP1 000004db: DIV 000004dc: AND 000004dd: DUP4 000004de: JUMP 000004df: JUMPDEST 000004e0: PUSH1 0x40 000004e2: DUP1 000004e3: MLOAD 000004e4: SWAP4 000004e5: DUP5 000004e6: MSTORE 000004e7: PUSH16 0xffffffffffffffffffffffffffffffff 000004f8: SWAP3 000004f9: DUP4 000004fa: AND 000004fb: PUSH1 0x20 000004fd: DUP6 000004fe: ADD 000004ff: MSTORE 00000500: SWAP2 00000501: AND 00000502: SWAP1 00000503: DUP3 00000504: ADD 00000505: MSTORE 00000506: PUSH1 0x60 00000508: ADD 00000509: PUSH2 0x01e3 0000050c: JUMP 0000050d: JUMPDEST 0000050e: PUSH2 0x0187 00000511: PUSH2 0x051b 00000514: CALLDATASIZE 00000515: PUSH1 0x04 00000517: PUSH2 0x50c9 0000051a: JUMP 0000051b: JUMPDEST 0000051c: PUSH2 0x0574 0000051f: JUMP 00000520: JUMPDEST 00000521: CALLVALUE 00000522: DUP1 00000523: ISZERO 00000524: PUSH2 0x052c 00000527: JUMPI 00000528: PUSH1 0x00 0000052a: DUP1 0000052b: REVERT 0000052c: JUMPDEST 0000052d: POP 0000052e: PUSH2 0x01c2 00000531: PUSH32 0x0000000000000000000000007df716ead1d83a2bf35b416b7bc84bd0700357c9 00000552: DUP2 00000553: JUMP 00000554: JUMPDEST 00000555: CALLVALUE 00000556: DUP1 00000557: ISZERO 00000558: PUSH2 0x0560 0000055b: JUMPI 0000055c: PUSH1 0x00 0000055e: DUP1 0000055f: REVERT 00000560: JUMPDEST 00000561: POP 00000562: PUSH2 0x0187 00000565: PUSH2 0x056f 00000568: CALLDATASIZE 00000569: PUSH1 0x04 0000056b: PUSH2 0x5142 0000056e: JUMP 0000056f: JUMPDEST 00000570: PUSH2 0x1d13 00000573: JUMP 00000574: JUMPDEST 00000575: DUP3 00000576: PUSH1 0x00 00000578: GAS 00000579: SWAP1 0000057a: POP 0000057b: DUP4 0000057c: ISZERO 0000057d: PUSH2 0x062b 00000580: JUMPI 00000581: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000596: DUP8 00000597: AND 00000598: ISZERO 00000599: PUSH2 0x062b 0000059c: JUMPI 0000059d: PUSH1 0x40 0000059f: DUP1 000005a0: MLOAD 000005a1: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000005c2: DUP2 000005c3: MSTORE 000005c4: PUSH1 0x20 000005c6: PUSH1 0x04 000005c8: DUP3 000005c9: ADD 000005ca: MSTORE 000005cb: PUSH1 0x24 000005cd: DUP2 000005ce: ADD 000005cf: SWAP2 000005d0: SWAP1 000005d1: SWAP2 000005d2: MSTORE 000005d3: PUSH32 0x4f7074696d69736d506f7274616c3a206d7573742073656e6420746f20616464 000005f4: PUSH1 0x44 000005f6: DUP3 000005f7: ADD 000005f8: MSTORE 000005f9: PUSH32 0x72657373283029207768656e206372656174696e67206120636f6e7472616374 0000061a: PUSH1 0x64 0000061c: DUP3 0000061d: ADD 0000061e: MSTORE 0000061f: PUSH1 0x84 00000621: ADD 00000622: JUMPDEST 00000623: PUSH1 0x40 00000625: MLOAD 00000626: DUP1 00000627: SWAP2 00000628: SUB 00000629: SWAP1 0000062a: REVERT 0000062b: JUMPDEST 0000062c: PUSH2 0x0635 0000062f: DUP4 00000630: MLOAD 00000631: PUSH2 0x1b0d 00000634: JUMP 00000635: JUMPDEST 00000636: PUSH8 0xffffffffffffffff 0000063f: AND 00000640: DUP6 00000641: PUSH8 0xffffffffffffffff 0000064a: AND 0000064b: LT 0000064c: ISZERO 0000064d: PUSH2 0x06d8 00000650: JUMPI 00000651: PUSH1 0x40 00000653: MLOAD 00000654: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000675: DUP2 00000676: MSTORE 00000677: PUSH1 0x20 00000679: PUSH1 0x04 0000067b: DUP3 0000067c: ADD 0000067d: MSTORE 0000067e: PUSH1 0x23 00000680: PUSH1 0x24 00000682: DUP3 00000683: ADD 00000684: MSTORE 00000685: PUSH32 0x4f7074696d69736d506f7274616c3a20676173206c696d697420746f6f20736d 000006a6: PUSH1 0x44 000006a8: DUP3 000006a9: ADD 000006aa: MSTORE 000006ab: PUSH32 0x616c6c0000000000000000000000000000000000000000000000000000000000 000006cc: PUSH1 0x64 000006ce: DUP3 000006cf: ADD 000006d0: MSTORE 000006d1: PUSH1 0x84 000006d3: ADD 000006d4: PUSH2 0x0622 000006d7: JUMP 000006d8: JUMPDEST 000006d9: PUSH3 0x01d4c0 000006dd: DUP4 000006de: MLOAD 000006df: GT 000006e0: ISZERO 000006e1: PUSH2 0x0746 000006e4: JUMPI 000006e5: PUSH1 0x40 000006e7: MLOAD 000006e8: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000709: DUP2 0000070a: MSTORE 0000070b: PUSH1 0x20 0000070d: PUSH1 0x04 0000070f: DUP3 00000710: ADD 00000711: MSTORE 00000712: PUSH1 0x1e 00000714: PUSH1 0x24 00000716: DUP3 00000717: ADD 00000718: MSTORE 00000719: PUSH32 0x4f7074696d69736d506f7274616c3a206461746120746f6f206c617267650000 0000073a: PUSH1 0x44 0000073c: DUP3 0000073d: ADD 0000073e: MSTORE 0000073f: PUSH1 0x64 00000741: ADD 00000742: PUSH2 0x0622 00000745: JUMP 00000746: JUMPDEST 00000747: CALLER 00000748: ORIGIN 00000749: DUP2 0000074a: EQ 0000074b: PUSH2 0x0767 0000074e: JUMPI 0000074f: POP 00000750: CALLER 00000751: PUSH20 0x1111000000000000000000000000000000001111 00000766: ADD 00000767: JUMPDEST 00000768: PUSH1 0x00 0000076a: CALLVALUE 0000076b: DUP9 0000076c: DUP9 0000076d: DUP9 0000076e: DUP9 0000076f: PUSH1 0x40 00000771: MLOAD 00000772: PUSH1 0x20 00000774: ADD 00000775: PUSH2 0x0782 00000778: SWAP6 00000779: SWAP5 0000077a: SWAP4 0000077b: SWAP3 0000077c: SWAP2 0000077d: SWAP1 0000077e: PUSH2 0x516c 00000781: JUMP 00000782: JUMPDEST 00000783: PUSH1 0x40 00000785: MLOAD 00000786: PUSH1 0x20 00000788: DUP2 00000789: DUP4 0000078a: SUB 0000078b: SUB 0000078c: DUP2 0000078d: MSTORE 0000078e: SWAP1 0000078f: PUSH1 0x40 00000791: MSTORE 00000792: SWAP1 00000793: POP 00000794: PUSH1 0x00 00000796: DUP10 00000797: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000007ac: AND 000007ad: DUP4 000007ae: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000007c3: AND 000007c4: PUSH32 0xb3813568d9991fc951961fcb4c784893574240a28925604d09fc577c55bb7c32 000007e5: DUP5 000007e6: PUSH1 0x40 000007e8: MLOAD 000007e9: PUSH2 0x07f2 000007ec: SWAP2 000007ed: SWAP1 000007ee: PUSH2 0x500a 000007f1: JUMP 000007f2: JUMPDEST 000007f3: PUSH1 0x40 000007f5: MLOAD 000007f6: DUP1 000007f7: SWAP2 000007f8: SUB 000007f9: SWAP1 000007fa: LOG4 000007fb: POP 000007fc: POP 000007fd: PUSH2 0x0806 00000800: DUP3 00000801: DUP3 00000802: PUSH2 0x1e3d 00000805: JUMP 00000806: JUMPDEST 00000807: POP 00000808: POP 00000809: POP 0000080a: POP 0000080b: POP 0000080c: POP 0000080d: POP 0000080e: JUMP 0000080f: JUMPDEST 00000810: CALLER 00000811: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000826: PUSH32 0x00000000000000000000000039e13d1ab040f6ea58ce19998edce01b3c365f84 00000847: AND 00000848: EQ 00000849: PUSH2 0x08d4 0000084c: JUMPI 0000084d: PUSH1 0x40 0000084f: MLOAD 00000850: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000871: DUP2 00000872: MSTORE 00000873: PUSH1 0x20 00000875: PUSH1 0x04 00000877: DUP3 00000878: ADD 00000879: MSTORE 0000087a: PUSH1 0x29 0000087c: PUSH1 0x24 0000087e: DUP3 0000087f: ADD 00000880: MSTORE 00000881: PUSH32 0x4f7074696d69736d506f7274616c3a206f6e6c7920677561726469616e206361 000008a2: PUSH1 0x44 000008a4: DUP3 000008a5: ADD 000008a6: MSTORE 000008a7: PUSH32 0x6e20756e70617573650000000000000000000000000000000000000000000000 000008c8: PUSH1 0x64 000008ca: DUP3 000008cb: ADD 000008cc: MSTORE 000008cd: PUSH1 0x84 000008cf: ADD 000008d0: PUSH2 0x0622 000008d3: JUMP 000008d4: JUMPDEST 000008d5: PUSH1 0x35 000008d7: DUP1 000008d8: SLOAD 000008d9: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 000008fa: AND 000008fb: SWAP1 000008fc: SSTORE 000008fd: PUSH1 0x40 000008ff: MLOAD 00000900: CALLER 00000901: DUP2 00000902: MSTORE 00000903: PUSH32 0x5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa 00000924: SWAP1 00000925: PUSH1 0x20 00000927: ADD 00000928: JUMPDEST 00000929: PUSH1 0x40 0000092b: MLOAD 0000092c: DUP1 0000092d: SWAP2 0000092e: SUB 0000092f: SWAP1 00000930: LOG1 00000931: JUMP 00000932: JUMPDEST 00000933: PUSH1 0x35 00000935: SLOAD 00000936: PUSH1 0xff 00000938: AND 00000939: ISZERO 0000093a: PUSH2 0x099f 0000093d: JUMPI 0000093e: PUSH1 0x40 00000940: MLOAD 00000941: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000962: DUP2 00000963: MSTORE 00000964: PUSH1 0x20 00000966: PUSH1 0x04 00000968: DUP3 00000969: ADD 0000096a: MSTORE 0000096b: PUSH1 0x16 0000096d: PUSH1 0x24 0000096f: DUP3 00000970: ADD 00000971: MSTORE 00000972: PUSH32 0x4f7074696d69736d506f7274616c3a2070617573656400000000000000000000 00000993: PUSH1 0x44 00000995: DUP3 00000996: ADD 00000997: MSTORE 00000998: PUSH1 0x64 0000099a: ADD 0000099b: PUSH2 0x0622 0000099e: JUMP 0000099f: JUMPDEST 000009a0: ADDRESS 000009a1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000009b6: AND 000009b7: DUP6 000009b8: PUSH1 0x40 000009ba: ADD 000009bb: MLOAD 000009bc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000009d1: AND 000009d2: SUB 000009d3: PUSH2 0x0a5e 000009d6: JUMPI 000009d7: PUSH1 0x40 000009d9: MLOAD 000009da: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000009fb: DUP2 000009fc: MSTORE 000009fd: PUSH1 0x20 000009ff: PUSH1 0x04 00000a01: DUP3 00000a02: ADD 00000a03: MSTORE 00000a04: PUSH1 0x3f 00000a06: PUSH1 0x24 00000a08: DUP3 00000a09: ADD 00000a0a: MSTORE 00000a0b: PUSH32 0x4f7074696d69736d506f7274616c3a20796f752063616e6e6f742073656e6420 00000a2c: PUSH1 0x44 00000a2e: DUP3 00000a2f: ADD 00000a30: MSTORE 00000a31: PUSH32 0x6d6573736167657320746f2074686520706f7274616c20636f6e747261637400 00000a52: PUSH1 0x64 00000a54: DUP3 00000a55: ADD 00000a56: MSTORE 00000a57: PUSH1 0x84 00000a59: ADD 00000a5a: PUSH2 0x0622 00000a5d: JUMP 00000a5e: JUMPDEST 00000a5f: PUSH1 0x40 00000a61: MLOAD 00000a62: PUSH32 0xa25ae55700000000000000000000000000000000000000000000000000000000 00000a83: DUP2 00000a84: MSTORE 00000a85: PUSH1 0x04 00000a87: DUP2 00000a88: ADD 00000a89: DUP6 00000a8a: SWAP1 00000a8b: MSTORE 00000a8c: PUSH1 0x00 00000a8e: SWAP1 00000a8f: PUSH32 0x000000000000000000000000a38d0c4e6319f9045f20318ba5f04cde94208608 00000ab0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000ac5: AND 00000ac6: SWAP1 00000ac7: PUSH4 0xa25ae557 00000acc: SWAP1 00000acd: PUSH1 0x24 00000acf: ADD 00000ad0: PUSH1 0x60 00000ad2: PUSH1 0x40 00000ad4: MLOAD 00000ad5: DUP1 00000ad6: DUP4 00000ad7: SUB 00000ad8: DUP2 00000ad9: DUP7 00000ada: GAS 00000adb: STATICCALL 00000adc: ISZERO 00000add: DUP1 00000ade: ISZERO 00000adf: PUSH2 0x0aec 00000ae2: JUMPI 00000ae3: RETURNDATASIZE 00000ae4: PUSH1 0x00 00000ae6: DUP1 00000ae7: RETURNDATACOPY 00000ae8: RETURNDATASIZE 00000ae9: PUSH1 0x00 00000aeb: REVERT 00000aec: JUMPDEST 00000aed: POP 00000aee: POP 00000aef: POP 00000af0: POP 00000af1: PUSH1 0x40 00000af3: MLOAD 00000af4: RETURNDATASIZE 00000af5: PUSH1 0x1f 00000af7: NOT 00000af8: PUSH1 0x1f 00000afa: DUP3 00000afb: ADD 00000afc: AND 00000afd: DUP3 00000afe: ADD 00000aff: DUP1 00000b00: PUSH1 0x40 00000b02: MSTORE 00000b03: POP 00000b04: DUP2 00000b05: ADD 00000b06: SWAP1 00000b07: PUSH2 0x0b10 00000b0a: SWAP2 00000b0b: SWAP1 00000b0c: PUSH2 0x51f1 00000b0f: JUMP 00000b10: JUMPDEST 00000b11: MLOAD 00000b12: SWAP1 00000b13: POP 00000b14: PUSH2 0x0b2a 00000b17: PUSH2 0x0b25 00000b1a: CALLDATASIZE 00000b1b: DUP7 00000b1c: SWAP1 00000b1d: SUB 00000b1e: DUP7 00000b1f: ADD 00000b20: DUP7 00000b21: PUSH2 0x5256 00000b24: JUMP 00000b25: JUMPDEST 00000b26: PUSH2 0x216a 00000b29: JUMP 00000b2a: JUMPDEST 00000b2b: DUP2 00000b2c: EQ 00000b2d: PUSH2 0x0bb8 00000b30: JUMPI 00000b31: PUSH1 0x40 00000b33: MLOAD 00000b34: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000b55: DUP2 00000b56: MSTORE 00000b57: PUSH1 0x20 00000b59: PUSH1 0x04 00000b5b: DUP3 00000b5c: ADD 00000b5d: MSTORE 00000b5e: PUSH1 0x29 00000b60: PUSH1 0x24 00000b62: DUP3 00000b63: ADD 00000b64: MSTORE 00000b65: PUSH32 0x4f7074696d69736d506f7274616c3a20696e76616c6964206f75747075742072 00000b86: PUSH1 0x44 00000b88: DUP3 00000b89: ADD 00000b8a: MSTORE 00000b8b: PUSH32 0x6f6f742070726f6f660000000000000000000000000000000000000000000000 00000bac: PUSH1 0x64 00000bae: DUP3 00000baf: ADD 00000bb0: MSTORE 00000bb1: PUSH1 0x84 00000bb3: ADD 00000bb4: PUSH2 0x0622 00000bb7: JUMP 00000bb8: JUMPDEST 00000bb9: PUSH1 0x00 00000bbb: PUSH2 0x0bc3 00000bbe: DUP8 00000bbf: PUSH2 0x21c6 00000bc2: JUMP 00000bc3: JUMPDEST 00000bc4: PUSH1 0x00 00000bc6: DUP2 00000bc7: DUP2 00000bc8: MSTORE 00000bc9: PUSH1 0x34 00000bcb: PUSH1 0x20 00000bcd: SWAP1 00000bce: DUP2 00000bcf: MSTORE 00000bd0: PUSH1 0x40 00000bd2: SWAP2 00000bd3: DUP3 00000bd4: SWAP1 00000bd5: KECCAK256 00000bd6: DUP3 00000bd7: MLOAD 00000bd8: PUSH1 0x60 00000bda: DUP2 00000bdb: ADD 00000bdc: DUP5 00000bdd: MSTORE 00000bde: DUP2 00000bdf: SLOAD 00000be0: DUP2 00000be1: MSTORE 00000be2: PUSH1 0x01 00000be4: SWAP1 00000be5: SWAP2 00000be6: ADD 00000be7: SLOAD 00000be8: PUSH16 0xffffffffffffffffffffffffffffffff 00000bf9: DUP1 00000bfa: DUP3 00000bfb: AND 00000bfc: SWAP4 00000bfd: DUP4 00000bfe: ADD 00000bff: DUP5 00000c00: SWAP1 00000c01: MSTORE 00000c02: PUSH17 0x0100000000000000000000000000000000 00000c14: SWAP1 00000c15: SWAP2 00000c16: DIV 00000c17: AND 00000c18: SWAP3 00000c19: DUP2 00000c1a: ADD 00000c1b: SWAP3 00000c1c: SWAP1 00000c1d: SWAP3 00000c1e: MSTORE 00000c1f: SWAP2 00000c20: SWAP3 00000c21: POP 00000c22: SWAP1 00000c23: ISZERO 00000c24: DUP1 00000c25: PUSH2 0x0cf5 00000c28: JUMPI 00000c29: POP 00000c2a: DUP1 00000c2b: MLOAD 00000c2c: PUSH1 0x40 00000c2e: DUP1 00000c2f: DUP4 00000c30: ADD 00000c31: MLOAD 00000c32: SWAP1 00000c33: MLOAD 00000c34: PUSH32 0xa25ae55700000000000000000000000000000000000000000000000000000000 00000c55: DUP2 00000c56: MSTORE 00000c57: PUSH16 0xffffffffffffffffffffffffffffffff 00000c68: SWAP1 00000c69: SWAP2 00000c6a: AND 00000c6b: PUSH1 0x04 00000c6d: DUP3 00000c6e: ADD 00000c6f: MSTORE 00000c70: PUSH32 0x000000000000000000000000a38d0c4e6319f9045f20318ba5f04cde94208608 00000c91: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000ca6: AND 00000ca7: SWAP1 00000ca8: PUSH4 0xa25ae557 00000cad: SWAP1 00000cae: PUSH1 0x24 00000cb0: ADD 00000cb1: PUSH1 0x60 00000cb3: PUSH1 0x40 00000cb5: MLOAD 00000cb6: DUP1 00000cb7: DUP4 00000cb8: SUB 00000cb9: DUP2 00000cba: DUP7 00000cbb: GAS 00000cbc: STATICCALL 00000cbd: ISZERO 00000cbe: DUP1 00000cbf: ISZERO 00000cc0: PUSH2 0x0ccd 00000cc3: JUMPI 00000cc4: RETURNDATASIZE 00000cc5: PUSH1 0x00 00000cc7: DUP1 00000cc8: RETURNDATACOPY 00000cc9: RETURNDATASIZE 00000cca: PUSH1 0x00 00000ccc: REVERT 00000ccd: JUMPDEST 00000cce: POP 00000ccf: POP 00000cd0: POP 00000cd1: POP 00000cd2: PUSH1 0x40 00000cd4: MLOAD 00000cd5: RETURNDATASIZE 00000cd6: PUSH1 0x1f 00000cd8: NOT 00000cd9: PUSH1 0x1f 00000cdb: DUP3 00000cdc: ADD 00000cdd: AND 00000cde: DUP3 00000cdf: ADD 00000ce0: DUP1 00000ce1: PUSH1 0x40 00000ce3: MSTORE 00000ce4: POP 00000ce5: DUP2 00000ce6: ADD 00000ce7: SWAP1 00000ce8: PUSH2 0x0cf1 00000ceb: SWAP2 00000cec: SWAP1 00000ced: PUSH2 0x51f1 00000cf0: JUMP 00000cf1: JUMPDEST 00000cf2: MLOAD 00000cf3: EQ 00000cf4: ISZERO 00000cf5: JUMPDEST 00000cf6: PUSH2 0x0d81 00000cf9: JUMPI 00000cfa: PUSH1 0x40 00000cfc: MLOAD 00000cfd: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000d1e: DUP2 00000d1f: MSTORE 00000d20: PUSH1 0x20 00000d22: PUSH1 0x04 00000d24: DUP3 00000d25: ADD 00000d26: MSTORE 00000d27: PUSH1 0x37 00000d29: PUSH1 0x24 00000d2b: DUP3 00000d2c: ADD 00000d2d: MSTORE 00000d2e: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c206861736820 00000d4f: PUSH1 0x44 00000d51: DUP3 00000d52: ADD 00000d53: MSTORE 00000d54: PUSH32 0x68617320616c7265616479206265656e2070726f76656e000000000000000000 00000d75: PUSH1 0x64 00000d77: DUP3 00000d78: ADD 00000d79: MSTORE 00000d7a: PUSH1 0x84 00000d7c: ADD 00000d7d: PUSH2 0x0622 00000d80: JUMP 00000d81: JUMPDEST 00000d82: PUSH1 0x40 00000d84: DUP1 00000d85: MLOAD 00000d86: PUSH1 0x20 00000d88: DUP2 00000d89: ADD 00000d8a: DUP5 00000d8b: SWAP1 00000d8c: MSTORE 00000d8d: PUSH1 0x00 00000d8f: SWAP2 00000d90: DUP2 00000d91: ADD 00000d92: DUP3 00000d93: SWAP1 00000d94: MSTORE 00000d95: PUSH1 0x60 00000d97: ADD 00000d98: PUSH1 0x40 00000d9a: DUP1 00000d9b: MLOAD 00000d9c: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00000dbd: DUP2 00000dbe: DUP5 00000dbf: SUB 00000dc0: ADD 00000dc1: DUP2 00000dc2: MSTORE 00000dc3: DUP3 00000dc4: DUP3 00000dc5: MSTORE 00000dc6: DUP1 00000dc7: MLOAD 00000dc8: PUSH1 0x20 00000dca: SWAP2 00000dcb: DUP3 00000dcc: ADD 00000dcd: KECCAK256 00000dce: SWAP1 00000dcf: DUP4 00000dd0: ADD 00000dd1: DUP2 00000dd2: SWAP1 00000dd3: MSTORE 00000dd4: SWAP3 00000dd5: POP 00000dd6: PUSH2 0x0e4a 00000dd9: SWAP2 00000dda: ADD 00000ddb: PUSH1 0x40 00000ddd: DUP1 00000dde: MLOAD 00000ddf: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00000e00: DUP2 00000e01: DUP5 00000e02: SUB 00000e03: ADD 00000e04: DUP2 00000e05: MSTORE 00000e06: DUP3 00000e07: DUP3 00000e08: ADD 00000e09: SWAP1 00000e0a: SWAP2 00000e0b: MSTORE 00000e0c: PUSH1 0x01 00000e0e: DUP3 00000e0f: MSTORE 00000e10: PUSH32 0x0100000000000000000000000000000000000000000000000000000000000000 00000e31: PUSH1 0x20 00000e33: DUP4 00000e34: ADD 00000e35: MSTORE 00000e36: SWAP1 00000e37: PUSH2 0x0e40 00000e3a: DUP9 00000e3b: DUP11 00000e3c: PUSH2 0x52bc 00000e3f: JUMP 00000e40: JUMPDEST 00000e41: DUP11 00000e42: PUSH1 0x40 00000e44: ADD 00000e45: CALLDATALOAD 00000e46: PUSH2 0x21f6 00000e49: JUMP 00000e4a: JUMPDEST 00000e4b: PUSH2 0x0ed6 00000e4e: JUMPI 00000e4f: PUSH1 0x40 00000e51: MLOAD 00000e52: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000e73: DUP2 00000e74: MSTORE 00000e75: PUSH1 0x20 00000e77: PUSH1 0x04 00000e79: DUP3 00000e7a: ADD 00000e7b: MSTORE 00000e7c: PUSH1 0x32 00000e7e: PUSH1 0x24 00000e80: DUP3 00000e81: ADD 00000e82: MSTORE 00000e83: PUSH32 0x4f7074696d69736d506f7274616c3a20696e76616c6964207769746864726177 00000ea4: PUSH1 0x44 00000ea6: DUP3 00000ea7: ADD 00000ea8: MSTORE 00000ea9: PUSH32 0x616c20696e636c7573696f6e2070726f6f660000000000000000000000000000 00000eca: PUSH1 0x64 00000ecc: DUP3 00000ecd: ADD 00000ece: MSTORE 00000ecf: PUSH1 0x84 00000ed1: ADD 00000ed2: PUSH2 0x0622 00000ed5: JUMP 00000ed6: JUMPDEST 00000ed7: PUSH1 0x40 00000ed9: DUP1 00000eda: MLOAD 00000edb: PUSH1 0x60 00000edd: DUP2 00000ede: ADD 00000edf: DUP3 00000ee0: MSTORE 00000ee1: DUP6 00000ee2: DUP2 00000ee3: MSTORE 00000ee4: PUSH16 0xffffffffffffffffffffffffffffffff 00000ef5: TIMESTAMP 00000ef6: DUP2 00000ef7: AND 00000ef8: PUSH1 0x20 00000efa: DUP1 00000efb: DUP5 00000efc: ADD 00000efd: SWAP2 00000efe: DUP3 00000eff: MSTORE 00000f00: DUP13 00000f01: DUP4 00000f02: AND 00000f03: DUP5 00000f04: DUP7 00000f05: ADD 00000f06: SWAP1 00000f07: DUP2 00000f08: MSTORE 00000f09: PUSH1 0x00 00000f0b: DUP10 00000f0c: DUP2 00000f0d: MSTORE 00000f0e: PUSH1 0x34 00000f10: DUP4 00000f11: MSTORE 00000f12: DUP7 00000f13: DUP2 00000f14: KECCAK256 00000f15: SWAP6 00000f16: MLOAD 00000f17: DUP7 00000f18: SSTORE 00000f19: SWAP3 00000f1a: MLOAD 00000f1b: SWAP1 00000f1c: MLOAD 00000f1d: DUP5 00000f1e: AND 00000f1f: PUSH17 0x0100000000000000000000000000000000 00000f31: MUL 00000f32: SWAP4 00000f33: AND 00000f34: SWAP3 00000f35: SWAP1 00000f36: SWAP3 00000f37: OR 00000f38: PUSH1 0x01 00000f3a: SWAP1 00000f3b: SWAP4 00000f3c: ADD 00000f3d: SWAP3 00000f3e: SWAP1 00000f3f: SWAP3 00000f40: SSTORE 00000f41: DUP12 00000f42: DUP4 00000f43: ADD 00000f44: MLOAD 00000f45: SWAP1 00000f46: DUP13 00000f47: ADD 00000f48: MLOAD 00000f49: SWAP3 00000f4a: MLOAD 00000f4b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000f60: SWAP2 00000f61: DUP3 00000f62: AND 00000f63: SWAP4 00000f64: SWAP1 00000f65: SWAP2 00000f66: AND 00000f67: SWAP2 00000f68: DUP7 00000f69: SWAP2 00000f6a: PUSH32 0x67a6208cfcc0801d50f6cbe764733f4fddf66ac0b04442061a8a8c0cb6b63f62 00000f8b: SWAP2 00000f8c: SWAP1 00000f8d: LOG4 00000f8e: POP 00000f8f: POP 00000f90: POP 00000f91: POP 00000f92: POP 00000f93: POP 00000f94: POP 00000f95: POP 00000f96: POP 00000f97: JUMP 00000f98: JUMPDEST 00000f99: PUSH1 0x60 00000f9b: PUSH2 0x0fc3 00000f9e: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001 00000fbf: PUSH2 0x221a 00000fc2: JUMP 00000fc3: JUMPDEST 00000fc4: PUSH2 0x0fec 00000fc7: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000007 00000fe8: PUSH2 0x221a 00000feb: JUMP 00000fec: JUMPDEST 00000fed: PUSH2 0x1015 00000ff0: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000000 00001011: PUSH2 0x221a 00001014: JUMP 00001015: JUMPDEST 00001016: PUSH1 0x40 00001018: MLOAD 00001019: PUSH1 0x20 0000101b: ADD 0000101c: PUSH2 0x1027 0000101f: SWAP4 00001020: SWAP3 00001021: SWAP2 00001022: SWAP1 00001023: PUSH2 0x5340 00001026: JUMP 00001027: JUMPDEST 00001028: PUSH1 0x40 0000102a: MLOAD 0000102b: PUSH1 0x20 0000102d: DUP2 0000102e: DUP4 0000102f: SUB 00001030: SUB 00001031: DUP2 00001032: MSTORE 00001033: SWAP1 00001034: PUSH1 0x40 00001036: MSTORE 00001037: SWAP1 00001038: POP 00001039: SWAP1 0000103a: JUMP 0000103b: JUMPDEST 0000103c: PUSH1 0x40 0000103e: MLOAD 0000103f: PUSH32 0xa25ae55700000000000000000000000000000000000000000000000000000000 00001060: DUP2 00001061: MSTORE 00001062: PUSH1 0x04 00001064: DUP2 00001065: ADD 00001066: DUP3 00001067: SWAP1 00001068: MSTORE 00001069: PUSH1 0x00 0000106b: SWAP1 0000106c: PUSH2 0x110c 0000106f: SWAP1 00001070: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001085: PUSH32 0x000000000000000000000000a38d0c4e6319f9045f20318ba5f04cde94208608 000010a6: AND 000010a7: SWAP1 000010a8: PUSH4 0xa25ae557 000010ad: SWAP1 000010ae: PUSH1 0x24 000010b0: ADD 000010b1: PUSH1 0x60 000010b3: PUSH1 0x40 000010b5: MLOAD 000010b6: DUP1 000010b7: DUP4 000010b8: SUB 000010b9: DUP2 000010ba: DUP7 000010bb: GAS 000010bc: STATICCALL 000010bd: ISZERO 000010be: DUP1 000010bf: ISZERO 000010c0: PUSH2 0x10cd 000010c3: JUMPI 000010c4: RETURNDATASIZE 000010c5: PUSH1 0x00 000010c7: DUP1 000010c8: RETURNDATACOPY 000010c9: RETURNDATASIZE 000010ca: PUSH1 0x00 000010cc: REVERT 000010cd: JUMPDEST 000010ce: POP 000010cf: POP 000010d0: POP 000010d1: POP 000010d2: PUSH1 0x40 000010d4: MLOAD 000010d5: RETURNDATASIZE 000010d6: PUSH1 0x1f 000010d8: NOT 000010d9: PUSH1 0x1f 000010db: DUP3 000010dc: ADD 000010dd: AND 000010de: DUP3 000010df: ADD 000010e0: DUP1 000010e1: PUSH1 0x40 000010e3: MSTORE 000010e4: POP 000010e5: DUP2 000010e6: ADD 000010e7: SWAP1 000010e8: PUSH2 0x10f1 000010eb: SWAP2 000010ec: SWAP1 000010ed: PUSH2 0x51f1 000010f0: JUMP 000010f1: JUMPDEST 000010f2: PUSH1 0x20 000010f4: ADD 000010f5: MLOAD 000010f6: PUSH16 0xffffffffffffffffffffffffffffffff 00001107: AND 00001108: PUSH2 0x2357 0000110b: JUMP 0000110c: JUMPDEST 0000110d: SWAP3 0000110e: SWAP2 0000110f: POP 00001110: POP 00001111: JUMP 00001112: JUMPDEST 00001113: CALLER 00001114: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001129: PUSH32 0x00000000000000000000000039e13d1ab040f6ea58ce19998edce01b3c365f84 0000114a: AND 0000114b: EQ 0000114c: PUSH2 0x11d7 0000114f: JUMPI 00001150: PUSH1 0x40 00001152: MLOAD 00001153: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001174: DUP2 00001175: MSTORE 00001176: PUSH1 0x20 00001178: PUSH1 0x04 0000117a: DUP3 0000117b: ADD 0000117c: MSTORE 0000117d: PUSH1 0x27 0000117f: PUSH1 0x24 00001181: DUP3 00001182: ADD 00001183: MSTORE 00001184: PUSH32 0x4f7074696d69736d506f7274616c3a206f6e6c7920677561726469616e206361 000011a5: PUSH1 0x44 000011a7: DUP3 000011a8: ADD 000011a9: MSTORE 000011aa: PUSH32 0x6e20706175736500000000000000000000000000000000000000000000000000 000011cb: PUSH1 0x64 000011cd: DUP3 000011ce: ADD 000011cf: MSTORE 000011d0: PUSH1 0x84 000011d2: ADD 000011d3: PUSH2 0x0622 000011d6: JUMP 000011d7: JUMPDEST 000011d8: PUSH1 0x35 000011da: DUP1 000011db: SLOAD 000011dc: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 000011fd: AND 000011fe: PUSH1 0x01 00001200: OR 00001201: SWAP1 00001202: SSTORE 00001203: PUSH1 0x40 00001205: MLOAD 00001206: CALLER 00001207: DUP2 00001208: MSTORE 00001209: PUSH32 0x62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258 0000122a: SWAP1 0000122b: PUSH1 0x20 0000122d: ADD 0000122e: PUSH2 0x0928 00001231: JUMP 00001232: JUMPDEST 00001233: PUSH1 0x35 00001235: SLOAD 00001236: PUSH1 0xff 00001238: AND 00001239: ISZERO 0000123a: PUSH2 0x129f 0000123d: JUMPI 0000123e: PUSH1 0x40 00001240: MLOAD 00001241: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001262: DUP2 00001263: MSTORE 00001264: PUSH1 0x20 00001266: PUSH1 0x04 00001268: DUP3 00001269: ADD 0000126a: MSTORE 0000126b: PUSH1 0x16 0000126d: PUSH1 0x24 0000126f: DUP3 00001270: ADD 00001271: MSTORE 00001272: PUSH32 0x4f7074696d69736d506f7274616c3a2070617573656400000000000000000000 00001293: PUSH1 0x44 00001295: DUP3 00001296: ADD 00001297: MSTORE 00001298: PUSH1 0x64 0000129a: ADD 0000129b: PUSH2 0x0622 0000129e: JUMP 0000129f: JUMPDEST 000012a0: PUSH1 0x32 000012a2: SLOAD 000012a3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000012b8: AND 000012b9: PUSH2 0xdead 000012bc: EQ 000012bd: PUSH2 0x1348 000012c0: JUMPI 000012c1: PUSH1 0x40 000012c3: MLOAD 000012c4: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000012e5: DUP2 000012e6: MSTORE 000012e7: PUSH1 0x20 000012e9: PUSH1 0x04 000012eb: DUP3 000012ec: ADD 000012ed: MSTORE 000012ee: PUSH1 0x3f 000012f0: PUSH1 0x24 000012f2: DUP3 000012f3: ADD 000012f4: MSTORE 000012f5: PUSH32 0x4f7074696d69736d506f7274616c3a2063616e206f6e6c792074726967676572 00001316: PUSH1 0x44 00001318: DUP3 00001319: ADD 0000131a: MSTORE 0000131b: PUSH32 0x206f6e65207769746864726177616c20706572207472616e73616374696f6e00 0000133c: PUSH1 0x64 0000133e: DUP3 0000133f: ADD 00001340: MSTORE 00001341: PUSH1 0x84 00001343: ADD 00001344: PUSH2 0x0622 00001347: JUMP 00001348: JUMPDEST 00001349: PUSH1 0x00 0000134b: PUSH2 0x1353 0000134e: DUP3 0000134f: PUSH2 0x21c6 00001352: JUMP 00001353: JUMPDEST 00001354: PUSH1 0x00 00001356: DUP2 00001357: DUP2 00001358: MSTORE 00001359: PUSH1 0x34 0000135b: PUSH1 0x20 0000135d: SWAP1 0000135e: DUP2 0000135f: MSTORE 00001360: PUSH1 0x40 00001362: DUP1 00001363: DUP4 00001364: KECCAK256 00001365: DUP2 00001366: MLOAD 00001367: PUSH1 0x60 00001369: DUP2 0000136a: ADD 0000136b: DUP4 0000136c: MSTORE 0000136d: DUP2 0000136e: SLOAD 0000136f: DUP2 00001370: MSTORE 00001371: PUSH1 0x01 00001373: SWAP1 00001374: SWAP2 00001375: ADD 00001376: SLOAD 00001377: PUSH16 0xffffffffffffffffffffffffffffffff 00001388: DUP1 00001389: DUP3 0000138a: AND 0000138b: SWAP5 0000138c: DUP4 0000138d: ADD 0000138e: DUP6 0000138f: SWAP1 00001390: MSTORE 00001391: PUSH17 0x0100000000000000000000000000000000 000013a3: SWAP1 000013a4: SWAP2 000013a5: DIV 000013a6: AND 000013a7: SWAP2 000013a8: DUP2 000013a9: ADD 000013aa: SWAP2 000013ab: SWAP1 000013ac: SWAP2 000013ad: MSTORE 000013ae: SWAP3 000013af: SWAP4 000013b0: POP 000013b1: SWAP1 000013b2: SUB 000013b3: PUSH2 0x143e 000013b6: JUMPI 000013b7: PUSH1 0x40 000013b9: MLOAD 000013ba: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000013db: DUP2 000013dc: MSTORE 000013dd: PUSH1 0x20 000013df: PUSH1 0x04 000013e1: DUP3 000013e2: ADD 000013e3: MSTORE 000013e4: PUSH1 0x32 000013e6: PUSH1 0x24 000013e8: DUP3 000013e9: ADD 000013ea: MSTORE 000013eb: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c20686173206e 0000140c: PUSH1 0x44 0000140e: DUP3 0000140f: ADD 00001410: MSTORE 00001411: PUSH32 0x6f74206265656e2070726f76656e207965740000000000000000000000000000 00001432: PUSH1 0x64 00001434: DUP3 00001435: ADD 00001436: MSTORE 00001437: PUSH1 0x84 00001439: ADD 0000143a: PUSH2 0x0622 0000143d: JUMP 0000143e: JUMPDEST 0000143f: PUSH32 0x000000000000000000000000a38d0c4e6319f9045f20318ba5f04cde94208608 00001460: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001475: AND 00001476: PUSH4 0x88786272 0000147b: PUSH1 0x40 0000147d: MLOAD 0000147e: DUP2 0000147f: PUSH4 0xffffffff 00001484: AND 00001485: PUSH1 0xe0 00001487: SHL 00001488: DUP2 00001489: MSTORE 0000148a: PUSH1 0x04 0000148c: ADD 0000148d: PUSH1 0x20 0000148f: PUSH1 0x40 00001491: MLOAD 00001492: DUP1 00001493: DUP4 00001494: SUB 00001495: DUP2 00001496: DUP7 00001497: GAS 00001498: STATICCALL 00001499: ISZERO 0000149a: DUP1 0000149b: ISZERO 0000149c: PUSH2 0x14a9 0000149f: JUMPI 000014a0: RETURNDATASIZE 000014a1: PUSH1 0x00 000014a3: DUP1 000014a4: RETURNDATACOPY 000014a5: RETURNDATASIZE 000014a6: PUSH1 0x00 000014a8: REVERT 000014a9: JUMPDEST 000014aa: POP 000014ab: POP 000014ac: POP 000014ad: POP 000014ae: PUSH1 0x40 000014b0: MLOAD 000014b1: RETURNDATASIZE 000014b2: PUSH1 0x1f 000014b4: NOT 000014b5: PUSH1 0x1f 000014b7: DUP3 000014b8: ADD 000014b9: AND 000014ba: DUP3 000014bb: ADD 000014bc: DUP1 000014bd: PUSH1 0x40 000014bf: MSTORE 000014c0: POP 000014c1: DUP2 000014c2: ADD 000014c3: SWAP1 000014c4: PUSH2 0x14cd 000014c7: SWAP2 000014c8: SWAP1 000014c9: PUSH2 0x53b6 000014cc: JUMP 000014cd: JUMPDEST 000014ce: DUP2 000014cf: PUSH1 0x20 000014d1: ADD 000014d2: MLOAD 000014d3: PUSH16 0xffffffffffffffffffffffffffffffff 000014e4: AND 000014e5: LT 000014e6: ISZERO 000014e7: PUSH2 0x1598 000014ea: JUMPI 000014eb: PUSH1 0x40 000014ed: MLOAD 000014ee: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000150f: DUP2 00001510: MSTORE 00001511: PUSH1 0x20 00001513: PUSH1 0x04 00001515: DUP3 00001516: ADD 00001517: MSTORE 00001518: PUSH1 0x4b 0000151a: PUSH1 0x24 0000151c: DUP3 0000151d: ADD 0000151e: MSTORE 0000151f: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c2074696d6573 00001540: PUSH1 0x44 00001542: DUP3 00001543: ADD 00001544: MSTORE 00001545: PUSH32 0x74616d70206c657373207468616e204c32204f7261636c65207374617274696e 00001566: PUSH1 0x64 00001568: DUP3 00001569: ADD 0000156a: MSTORE 0000156b: PUSH32 0x672074696d657374616d70000000000000000000000000000000000000000000 0000158c: PUSH1 0x84 0000158e: DUP3 0000158f: ADD 00001590: MSTORE 00001591: PUSH1 0xa4 00001593: ADD 00001594: PUSH2 0x0622 00001597: JUMP 00001598: JUMPDEST 00001599: PUSH2 0x15b7 0000159c: DUP2 0000159d: PUSH1 0x20 0000159f: ADD 000015a0: MLOAD 000015a1: PUSH16 0xffffffffffffffffffffffffffffffff 000015b2: AND 000015b3: PUSH2 0x2357 000015b6: JUMP 000015b7: JUMPDEST 000015b8: PUSH2 0x1669 000015bb: JUMPI 000015bc: PUSH1 0x40 000015be: MLOAD 000015bf: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000015e0: DUP2 000015e1: MSTORE 000015e2: PUSH1 0x20 000015e4: PUSH1 0x04 000015e6: DUP3 000015e7: ADD 000015e8: MSTORE 000015e9: PUSH1 0x45 000015eb: PUSH1 0x24 000015ed: DUP3 000015ee: ADD 000015ef: MSTORE 000015f0: PUSH32 0x4f7074696d69736d506f7274616c3a2070726f76656e20776974686472617761 00001611: PUSH1 0x44 00001613: DUP3 00001614: ADD 00001615: MSTORE 00001616: PUSH32 0x6c2066696e616c697a6174696f6e20706572696f6420686173206e6f7420656c 00001637: PUSH1 0x64 00001639: DUP3 0000163a: ADD 0000163b: MSTORE 0000163c: PUSH32 0x6170736564000000000000000000000000000000000000000000000000000000 0000165d: PUSH1 0x84 0000165f: DUP3 00001660: ADD 00001661: MSTORE 00001662: PUSH1 0xa4 00001664: ADD 00001665: PUSH2 0x0622 00001668: JUMP 00001669: JUMPDEST 0000166a: PUSH1 0x40 0000166c: DUP2 0000166d: DUP2 0000166e: ADD 0000166f: MLOAD 00001670: SWAP1 00001671: MLOAD 00001672: PUSH32 0xa25ae55700000000000000000000000000000000000000000000000000000000 00001693: DUP2 00001694: MSTORE 00001695: PUSH16 0xffffffffffffffffffffffffffffffff 000016a6: SWAP1 000016a7: SWAP2 000016a8: AND 000016a9: PUSH1 0x04 000016ab: DUP3 000016ac: ADD 000016ad: MSTORE 000016ae: PUSH1 0x00 000016b0: SWAP1 000016b1: PUSH32 0x000000000000000000000000a38d0c4e6319f9045f20318ba5f04cde94208608 000016d2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000016e7: AND 000016e8: SWAP1 000016e9: PUSH4 0xa25ae557 000016ee: SWAP1 000016ef: PUSH1 0x24 000016f1: ADD 000016f2: PUSH1 0x60 000016f4: PUSH1 0x40 000016f6: MLOAD 000016f7: DUP1 000016f8: DUP4 000016f9: SUB 000016fa: DUP2 000016fb: DUP7 000016fc: GAS 000016fd: STATICCALL 000016fe: ISZERO 000016ff: DUP1 00001700: ISZERO 00001701: PUSH2 0x170e 00001704: JUMPI 00001705: RETURNDATASIZE 00001706: PUSH1 0x00 00001708: DUP1 00001709: RETURNDATACOPY 0000170a: RETURNDATASIZE 0000170b: PUSH1 0x00 0000170d: REVERT 0000170e: JUMPDEST 0000170f: POP 00001710: POP 00001711: POP 00001712: POP 00001713: PUSH1 0x40 00001715: MLOAD 00001716: RETURNDATASIZE 00001717: PUSH1 0x1f 00001719: NOT 0000171a: PUSH1 0x1f 0000171c: DUP3 0000171d: ADD 0000171e: AND 0000171f: DUP3 00001720: ADD 00001721: DUP1 00001722: PUSH1 0x40 00001724: MSTORE 00001725: POP 00001726: DUP2 00001727: ADD 00001728: SWAP1 00001729: PUSH2 0x1732 0000172c: SWAP2 0000172d: SWAP1 0000172e: PUSH2 0x51f1 00001731: JUMP 00001732: JUMPDEST 00001733: DUP3 00001734: MLOAD 00001735: DUP2 00001736: MLOAD 00001737: SWAP2 00001738: SWAP3 00001739: POP 0000173a: EQ 0000173b: PUSH2 0x17ec 0000173e: JUMPI 0000173f: PUSH1 0x40 00001741: MLOAD 00001742: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001763: DUP2 00001764: MSTORE 00001765: PUSH1 0x20 00001767: PUSH1 0x04 00001769: DUP3 0000176a: ADD 0000176b: MSTORE 0000176c: PUSH1 0x49 0000176e: PUSH1 0x24 00001770: DUP3 00001771: ADD 00001772: MSTORE 00001773: PUSH32 0x4f7074696d69736d506f7274616c3a206f757470757420726f6f742070726f76 00001794: PUSH1 0x44 00001796: DUP3 00001797: ADD 00001798: MSTORE 00001799: PUSH32 0x656e206973206e6f74207468652073616d652061732063757272656e74206f75 000017ba: PUSH1 0x64 000017bc: DUP3 000017bd: ADD 000017be: MSTORE 000017bf: PUSH32 0x7470757420726f6f740000000000000000000000000000000000000000000000 000017e0: PUSH1 0x84 000017e2: DUP3 000017e3: ADD 000017e4: MSTORE 000017e5: PUSH1 0xa4 000017e7: ADD 000017e8: PUSH2 0x0622 000017eb: JUMP 000017ec: JUMPDEST 000017ed: PUSH2 0x180b 000017f0: DUP2 000017f1: PUSH1 0x20 000017f3: ADD 000017f4: MLOAD 000017f5: PUSH16 0xffffffffffffffffffffffffffffffff 00001806: AND 00001807: PUSH2 0x2357 0000180a: JUMP 0000180b: JUMPDEST 0000180c: PUSH2 0x18bd 0000180f: JUMPI 00001810: PUSH1 0x40 00001812: MLOAD 00001813: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001834: DUP2 00001835: MSTORE 00001836: PUSH1 0x20 00001838: PUSH1 0x04 0000183a: DUP3 0000183b: ADD 0000183c: MSTORE 0000183d: PUSH1 0x43 0000183f: PUSH1 0x24 00001841: DUP3 00001842: ADD 00001843: MSTORE 00001844: PUSH32 0x4f7074696d69736d506f7274616c3a206f75747075742070726f706f73616c20 00001865: PUSH1 0x44 00001867: DUP3 00001868: ADD 00001869: MSTORE 0000186a: PUSH32 0x66696e616c697a6174696f6e20706572696f6420686173206e6f7420656c6170 0000188b: PUSH1 0x64 0000188d: DUP3 0000188e: ADD 0000188f: MSTORE 00001890: PUSH32 0x7365640000000000000000000000000000000000000000000000000000000000 000018b1: PUSH1 0x84 000018b3: DUP3 000018b4: ADD 000018b5: MSTORE 000018b6: PUSH1 0xa4 000018b8: ADD 000018b9: PUSH2 0x0622 000018bc: JUMP 000018bd: JUMPDEST 000018be: PUSH1 0x00 000018c0: DUP4 000018c1: DUP2 000018c2: MSTORE 000018c3: PUSH1 0x33 000018c5: PUSH1 0x20 000018c7: MSTORE 000018c8: PUSH1 0x40 000018ca: SWAP1 000018cb: KECCAK256 000018cc: SLOAD 000018cd: PUSH1 0xff 000018cf: AND 000018d0: ISZERO 000018d1: PUSH2 0x195c 000018d4: JUMPI 000018d5: PUSH1 0x40 000018d7: MLOAD 000018d8: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000018f9: DUP2 000018fa: MSTORE 000018fb: PUSH1 0x20 000018fd: PUSH1 0x04 000018ff: DUP3 00001900: ADD 00001901: MSTORE 00001902: PUSH1 0x35 00001904: PUSH1 0x24 00001906: DUP3 00001907: ADD 00001908: MSTORE 00001909: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c206861732061 0000192a: PUSH1 0x44 0000192c: DUP3 0000192d: ADD 0000192e: MSTORE 0000192f: PUSH32 0x6c7265616479206265656e2066696e616c697a65640000000000000000000000 00001950: PUSH1 0x64 00001952: DUP3 00001953: ADD 00001954: MSTORE 00001955: PUSH1 0x84 00001957: ADD 00001958: PUSH2 0x0622 0000195b: JUMP 0000195c: JUMPDEST 0000195d: PUSH1 0x00 0000195f: DUP4 00001960: DUP2 00001961: MSTORE 00001962: PUSH1 0x33 00001964: PUSH1 0x20 00001966: SWAP1 00001967: DUP2 00001968: MSTORE 00001969: PUSH1 0x40 0000196b: DUP1 0000196c: DUP4 0000196d: KECCAK256 0000196e: DUP1 0000196f: SLOAD 00001970: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 00001991: AND 00001992: PUSH1 0x01 00001994: OR 00001995: SWAP1 00001996: SSTORE 00001997: SWAP1 00001998: DUP7 00001999: ADD 0000199a: MLOAD 0000199b: PUSH1 0x32 0000199d: DUP1 0000199e: SLOAD 0000199f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000019b4: SWAP1 000019b5: SWAP3 000019b6: AND 000019b7: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 000019d8: SWAP1 000019d9: SWAP3 000019da: AND 000019db: SWAP2 000019dc: SWAP1 000019dd: SWAP2 000019de: OR 000019df: SWAP1 000019e0: SSTORE 000019e1: DUP6 000019e2: ADD 000019e3: MLOAD 000019e4: PUSH1 0x80 000019e6: DUP7 000019e7: ADD 000019e8: MLOAD 000019e9: PUSH1 0x60 000019eb: DUP8 000019ec: ADD 000019ed: MLOAD 000019ee: PUSH1 0xa0 000019f0: DUP9 000019f1: ADD 000019f2: MLOAD 000019f3: PUSH2 0x19fe 000019f6: SWAP4 000019f7: SWAP3 000019f8: SWAP2 000019f9: SWAP1 000019fa: PUSH2 0x23fa 000019fd: JUMP 000019fe: JUMPDEST 000019ff: PUSH1 0x32 00001a01: DUP1 00001a02: SLOAD 00001a03: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 00001a24: AND 00001a25: PUSH2 0xdead 00001a28: OR 00001a29: SWAP1 00001a2a: SSTORE 00001a2b: PUSH1 0x40 00001a2d: MLOAD 00001a2e: SWAP1 00001a2f: SWAP2 00001a30: POP 00001a31: DUP5 00001a32: SWAP1 00001a33: PUSH32 0xdb5c7652857aa163daadd670e116628fb42e869d8ac4251ef8971d9e5727df1b 00001a54: SWAP1 00001a55: PUSH2 0x1a63 00001a58: SWAP1 00001a59: DUP5 00001a5a: ISZERO 00001a5b: ISZERO 00001a5c: DUP2 00001a5d: MSTORE 00001a5e: PUSH1 0x20 00001a60: ADD 00001a61: SWAP1 00001a62: JUMP 00001a63: JUMPDEST 00001a64: PUSH1 0x40 00001a66: MLOAD 00001a67: DUP1 00001a68: SWAP2 00001a69: SUB 00001a6a: SWAP1 00001a6b: LOG2 00001a6c: DUP1 00001a6d: ISZERO 00001a6e: DUP1 00001a6f: ISZERO 00001a70: PUSH2 0x1a79 00001a73: JUMPI 00001a74: POP 00001a75: ORIGIN 00001a76: PUSH1 0x01 00001a78: EQ 00001a79: JUMPDEST 00001a7a: ISZERO 00001a7b: PUSH2 0x1b06 00001a7e: JUMPI 00001a7f: PUSH1 0x40 00001a81: MLOAD 00001a82: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001aa3: DUP2 00001aa4: MSTORE 00001aa5: PUSH1 0x20 00001aa7: PUSH1 0x04 00001aa9: DUP3 00001aaa: ADD 00001aab: MSTORE 00001aac: PUSH1 0x21 00001aae: PUSH1 0x24 00001ab0: DUP3 00001ab1: ADD 00001ab2: MSTORE 00001ab3: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c206661696c65 00001ad4: PUSH1 0x44 00001ad6: DUP3 00001ad7: ADD 00001ad8: MSTORE 00001ad9: PUSH32 0x6400000000000000000000000000000000000000000000000000000000000000 00001afa: PUSH1 0x64 00001afc: DUP3 00001afd: ADD 00001afe: MSTORE 00001aff: PUSH1 0x84 00001b01: ADD 00001b02: PUSH2 0x0622 00001b05: JUMP 00001b06: JUMPDEST 00001b07: POP 00001b08: POP 00001b09: POP 00001b0a: POP 00001b0b: POP 00001b0c: JUMP 00001b0d: JUMPDEST 00001b0e: PUSH1 0x00 00001b10: PUSH2 0x1b1a 00001b13: DUP3 00001b14: PUSH1 0x10 00001b16: PUSH2 0x53fe 00001b19: JUMP 00001b1a: JUMPDEST 00001b1b: PUSH2 0x110c 00001b1e: SWAP1 00001b1f: PUSH2 0x5208 00001b22: PUSH2 0x542e 00001b25: JUMP 00001b26: JUMPDEST 00001b27: PUSH1 0x00 00001b29: SLOAD 00001b2a: PUSH2 0x0100 00001b2d: SWAP1 00001b2e: DIV 00001b2f: PUSH1 0xff 00001b31: AND 00001b32: ISZERO 00001b33: DUP1 00001b34: DUP1 00001b35: ISZERO 00001b36: PUSH2 0x1b46 00001b39: JUMPI 00001b3a: POP 00001b3b: PUSH1 0x00 00001b3d: SLOAD 00001b3e: PUSH1 0x01 00001b40: PUSH1 0xff 00001b42: SWAP1 00001b43: SWAP2 00001b44: AND 00001b45: LT 00001b46: JUMPDEST 00001b47: DUP1 00001b48: PUSH2 0x1b60 00001b4b: JUMPI 00001b4c: POP 00001b4d: ADDRESS 00001b4e: EXTCODESIZE 00001b4f: ISZERO 00001b50: DUP1 00001b51: ISZERO 00001b52: PUSH2 0x1b60 00001b55: JUMPI 00001b56: POP 00001b57: PUSH1 0x00 00001b59: SLOAD 00001b5a: PUSH1 0xff 00001b5c: AND 00001b5d: PUSH1 0x01 00001b5f: EQ 00001b60: JUMPDEST 00001b61: PUSH2 0x1bec 00001b64: JUMPI 00001b65: PUSH1 0x40 00001b67: MLOAD 00001b68: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001b89: DUP2 00001b8a: MSTORE 00001b8b: PUSH1 0x20 00001b8d: PUSH1 0x04 00001b8f: DUP3 00001b90: ADD 00001b91: MSTORE 00001b92: PUSH1 0x2e 00001b94: PUSH1 0x24 00001b96: DUP3 00001b97: ADD 00001b98: MSTORE 00001b99: PUSH32 0x496e697469616c697a61626c653a20636f6e747261637420697320616c726561 00001bba: PUSH1 0x44 00001bbc: DUP3 00001bbd: ADD 00001bbe: MSTORE 00001bbf: PUSH32 0x647920696e697469616c697a6564000000000000000000000000000000000000 00001be0: PUSH1 0x64 00001be2: DUP3 00001be3: ADD 00001be4: MSTORE 00001be5: PUSH1 0x84 00001be7: ADD 00001be8: PUSH2 0x0622 00001beb: JUMP 00001bec: JUMPDEST 00001bed: PUSH1 0x00 00001bef: DUP1 00001bf0: SLOAD 00001bf1: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 00001c12: AND 00001c13: PUSH1 0x01 00001c15: OR 00001c16: SWAP1 00001c17: SSTORE 00001c18: DUP1 00001c19: ISZERO 00001c1a: PUSH2 0x1c4a 00001c1d: JUMPI 00001c1e: PUSH1 0x00 00001c20: DUP1 00001c21: SLOAD 00001c22: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff 00001c43: AND 00001c44: PUSH2 0x0100 00001c47: OR 00001c48: SWAP1 00001c49: SSTORE 00001c4a: JUMPDEST 00001c4b: PUSH1 0x32 00001c4d: DUP1 00001c4e: SLOAD 00001c4f: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 00001c70: AND 00001c71: PUSH2 0xdead 00001c74: OR 00001c75: SWAP1 00001c76: SSTORE 00001c77: PUSH1 0x35 00001c79: DUP1 00001c7a: SLOAD 00001c7b: DUP4 00001c7c: ISZERO 00001c7d: ISZERO 00001c7e: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 00001c9f: SWAP1 00001ca0: SWAP2 00001ca1: AND 00001ca2: OR 00001ca3: SWAP1 00001ca4: SSTORE 00001ca5: PUSH2 0x1cac 00001ca8: PUSH2 0x2458 00001cab: JUMP 00001cac: JUMPDEST 00001cad: DUP1 00001cae: ISZERO 00001caf: PUSH2 0x1d0f 00001cb2: JUMPI 00001cb3: PUSH1 0x00 00001cb5: DUP1 00001cb6: SLOAD 00001cb7: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff 00001cd8: AND 00001cd9: SWAP1 00001cda: SSTORE 00001cdb: PUSH1 0x40 00001cdd: MLOAD 00001cde: PUSH1 0x01 00001ce0: DUP2 00001ce1: MSTORE 00001ce2: PUSH32 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498 00001d03: SWAP1 00001d04: PUSH1 0x20 00001d06: ADD 00001d07: PUSH1 0x40 00001d09: MLOAD 00001d0a: DUP1 00001d0b: SWAP2 00001d0c: SUB 00001d0d: SWAP1 00001d0e: LOG1 00001d0f: JUMPDEST 00001d10: POP 00001d11: POP 00001d12: JUMP 00001d13: JUMPDEST 00001d14: CALLER 00001d15: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001d2a: PUSH32 0x0000000000000000000000000ca4c7a370e0155c77a33e78443a54d749e0bc21 00001d4b: AND 00001d4c: EQ 00001d4d: PUSH2 0x1d82 00001d50: JUMPI 00001d51: PUSH1 0x40 00001d53: MLOAD 00001d54: PUSH32 0xf6daeddf00000000000000000000000000000000000000000000000000000000 00001d75: DUP2 00001d76: MSTORE 00001d77: PUSH1 0x04 00001d79: ADD 00001d7a: PUSH1 0x40 00001d7c: MLOAD 00001d7d: DUP1 00001d7e: SWAP2 00001d7f: SUB 00001d80: SWAP1 00001d81: REVERT 00001d82: JUMPDEST 00001d83: PUSH1 0x00 00001d85: DUP3 00001d86: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001d9b: AND 00001d9c: DUP3 00001d9d: PUSH1 0x40 00001d9f: MLOAD 00001da0: PUSH1 0x00 00001da2: PUSH1 0x40 00001da4: MLOAD 00001da5: DUP1 00001da6: DUP4 00001da7: SUB 00001da8: DUP2 00001da9: DUP6 00001daa: DUP8 00001dab: GAS 00001dac: CALL 00001dad: SWAP3 00001dae: POP 00001daf: POP 00001db0: POP 00001db1: RETURNDATASIZE 00001db2: DUP1 00001db3: PUSH1 0x00 00001db5: DUP2 00001db6: EQ 00001db7: PUSH2 0x1ddc 00001dba: JUMPI 00001dbb: PUSH1 0x40 00001dbd: MLOAD 00001dbe: SWAP2 00001dbf: POP 00001dc0: PUSH1 0x1f 00001dc2: NOT 00001dc3: PUSH1 0x3f 00001dc5: RETURNDATASIZE 00001dc6: ADD 00001dc7: AND 00001dc8: DUP3 00001dc9: ADD 00001dca: PUSH1 0x40 00001dcc: MSTORE 00001dcd: RETURNDATASIZE 00001dce: DUP3 00001dcf: MSTORE 00001dd0: RETURNDATASIZE 00001dd1: PUSH1 0x00 00001dd3: PUSH1 0x20 00001dd5: DUP5 00001dd6: ADD 00001dd7: RETURNDATACOPY 00001dd8: PUSH2 0x1de1 00001ddb: JUMP 00001ddc: JUMPDEST 00001ddd: PUSH1 0x60 00001ddf: SWAP2 00001de0: POP 00001de1: JUMPDEST 00001de2: POP 00001de3: POP 00001de4: SWAP1 00001de5: POP 00001de6: DUP1 00001de7: PUSH2 0x1e1c 00001dea: JUMPI 00001deb: PUSH1 0x40 00001ded: MLOAD 00001dee: PUSH32 0x6d963f8800000000000000000000000000000000000000000000000000000000 00001e0f: DUP2 00001e10: MSTORE 00001e11: PUSH1 0x04 00001e13: ADD 00001e14: PUSH1 0x40 00001e16: MLOAD 00001e17: DUP1 00001e18: SWAP2 00001e19: SUB 00001e1a: SWAP1 00001e1b: REVERT 00001e1c: JUMPDEST 00001e1d: POP 00001e1e: POP 00001e1f: POP 00001e20: JUMP 00001e21: JUMPDEST 00001e22: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001e37: AND 00001e38: EXTCODESIZE 00001e39: ISZERO 00001e3a: ISZERO 00001e3b: SWAP1 00001e3c: JUMP 00001e3d: JUMPDEST 00001e3e: PUSH1 0x01 00001e40: SLOAD 00001e41: PUSH1 0x00 00001e43: SWAP1 00001e44: PUSH2 0x1e73 00001e47: SWAP1 00001e48: PUSH25 0x01000000000000000000000000000000000000000000000000 00001e62: SWAP1 00001e63: DIV 00001e64: PUSH8 0xffffffffffffffff 00001e6d: AND 00001e6e: NUMBER 00001e6f: PUSH2 0x545a 00001e72: JUMP 00001e73: JUMPDEST 00001e74: SWAP1 00001e75: POP 00001e76: PUSH1 0x00 00001e78: PUSH2 0x1e7f 00001e7b: PUSH2 0x253b 00001e7e: JUMP 00001e7f: JUMPDEST 00001e80: SWAP1 00001e81: POP 00001e82: PUSH1 0x00 00001e84: DUP2 00001e85: PUSH1 0x20 00001e87: ADD 00001e88: MLOAD 00001e89: PUSH1 0xff 00001e8b: AND 00001e8c: DUP3 00001e8d: PUSH1 0x00 00001e8f: ADD 00001e90: MLOAD 00001e91: PUSH4 0xffffffff 00001e96: AND 00001e97: PUSH2 0x1ea0 00001e9a: SWAP2 00001e9b: SWAP1 00001e9c: PUSH2 0x54a0 00001e9f: JUMP 00001ea0: JUMPDEST 00001ea1: SWAP1 00001ea2: POP 00001ea3: DUP3 00001ea4: ISZERO 00001ea5: PUSH2 0x1fd7 00001ea8: JUMPI 00001ea9: PUSH1 0x01 00001eab: SLOAD 00001eac: PUSH1 0x00 00001eae: SWAP1 00001eaf: PUSH2 0x1ed7 00001eb2: SWAP1 00001eb3: DUP4 00001eb4: SWAP1 00001eb5: PUSH17 0x0100000000000000000000000000000000 00001ec7: SWAP1 00001ec8: DIV 00001ec9: PUSH8 0xffffffffffffffff 00001ed2: AND 00001ed3: PUSH2 0x5508 00001ed6: JUMP 00001ed7: JUMPDEST 00001ed8: SWAP1 00001ed9: POP 00001eda: PUSH1 0x00 00001edc: DUP4 00001edd: PUSH1 0x40 00001edf: ADD 00001ee0: MLOAD 00001ee1: PUSH1 0xff 00001ee3: AND 00001ee4: DUP4 00001ee5: PUSH2 0x1eee 00001ee8: SWAP2 00001ee9: SWAP1 00001eea: PUSH2 0x557c 00001eed: JUMP 00001eee: JUMPDEST 00001eef: PUSH1 0x01 00001ef1: SLOAD 00001ef2: PUSH2 0x1f0e 00001ef5: SWAP1 00001ef6: DUP5 00001ef7: SWAP1 00001ef8: PUSH16 0xffffffffffffffffffffffffffffffff 00001f09: AND 00001f0a: PUSH2 0x557c 00001f0d: JUMP 00001f0e: JUMPDEST 00001f0f: PUSH2 0x1f18 00001f12: SWAP2 00001f13: SWAP1 00001f14: PUSH2 0x54a0 00001f17: JUMP 00001f18: JUMPDEST 00001f19: PUSH1 0x01 00001f1b: SLOAD 00001f1c: SWAP1 00001f1d: SWAP2 00001f1e: POP 00001f1f: PUSH1 0x00 00001f21: SWAP1 00001f22: PUSH2 0x1f69 00001f25: SWAP1 00001f26: PUSH2 0x1f42 00001f29: SWAP1 00001f2a: DUP5 00001f2b: SWAP1 00001f2c: PUSH16 0xffffffffffffffffffffffffffffffff 00001f3d: AND 00001f3e: PUSH2 0x5638 00001f41: JUMP 00001f42: JUMPDEST 00001f43: DUP7 00001f44: PUSH1 0x60 00001f46: ADD 00001f47: MLOAD 00001f48: PUSH4 0xffffffff 00001f4d: AND 00001f4e: DUP8 00001f4f: PUSH1 0xa0 00001f51: ADD 00001f52: MLOAD 00001f53: PUSH16 0xffffffffffffffffffffffffffffffff 00001f64: AND 00001f65: PUSH2 0x2601 00001f68: JUMP 00001f69: JUMPDEST 00001f6a: SWAP1 00001f6b: POP 00001f6c: PUSH1 0x01 00001f6e: DUP7 00001f6f: GT 00001f70: ISZERO 00001f71: PUSH2 0x1f98 00001f74: JUMPI 00001f75: PUSH2 0x1f95 00001f78: PUSH2 0x1f42 00001f7b: DUP3 00001f7c: DUP8 00001f7d: PUSH1 0x40 00001f7f: ADD 00001f80: MLOAD 00001f81: PUSH1 0xff 00001f83: AND 00001f84: PUSH1 0x01 00001f86: DUP11 00001f87: PUSH2 0x1f90 00001f8a: SWAP2 00001f8b: SWAP1 00001f8c: PUSH2 0x545a 00001f8f: JUMP 00001f90: JUMPDEST 00001f91: PUSH2 0x2620 00001f94: JUMP 00001f95: JUMPDEST 00001f96: SWAP1 00001f97: POP 00001f98: JUMPDEST 00001f99: PUSH16 0xffffffffffffffffffffffffffffffff 00001faa: AND 00001fab: PUSH25 0x01000000000000000000000000000000000000000000000000 00001fc5: PUSH8 0xffffffffffffffff 00001fce: NUMBER 00001fcf: AND 00001fd0: MUL 00001fd1: OR 00001fd2: PUSH1 0x01 00001fd4: SSTORE 00001fd5: POP 00001fd6: POP 00001fd7: JUMPDEST 00001fd8: PUSH1 0x01 00001fda: DUP1 00001fdb: SLOAD 00001fdc: DUP7 00001fdd: SWAP2 00001fde: SWAP1 00001fdf: PUSH1 0x10 00001fe1: SWAP1 00001fe2: PUSH2 0x200a 00001fe5: SWAP1 00001fe6: DUP5 00001fe7: SWAP1 00001fe8: PUSH17 0x0100000000000000000000000000000000 00001ffa: SWAP1 00001ffb: DIV 00001ffc: PUSH8 0xffffffffffffffff 00002005: AND 00002006: PUSH2 0x542e 00002009: JUMP 0000200a: JUMPDEST 0000200b: SWAP3 0000200c: POP 0000200d: PUSH2 0x0100 00002010: EXP 00002011: DUP2 00002012: SLOAD 00002013: DUP2 00002014: PUSH8 0xffffffffffffffff 0000201d: MUL 0000201e: NOT 0000201f: AND 00002020: SWAP1 00002021: DUP4 00002022: PUSH8 0xffffffffffffffff 0000202b: AND 0000202c: MUL 0000202d: OR 0000202e: SWAP1 0000202f: SSTORE 00002030: POP 00002031: DUP2 00002032: PUSH1 0x00 00002034: ADD 00002035: MLOAD 00002036: PUSH4 0xffffffff 0000203b: AND 0000203c: PUSH1 0x01 0000203e: PUSH1 0x00 00002040: ADD 00002041: PUSH1 0x10 00002043: SWAP1 00002044: SLOAD 00002045: SWAP1 00002046: PUSH2 0x0100 00002049: EXP 0000204a: SWAP1 0000204b: DIV 0000204c: PUSH8 0xffffffffffffffff 00002055: AND 00002056: PUSH8 0xffffffffffffffff 0000205f: AND 00002060: SGT 00002061: ISZERO 00002062: PUSH2 0x20ed 00002065: JUMPI 00002066: PUSH1 0x40 00002068: MLOAD 00002069: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000208a: DUP2 0000208b: MSTORE 0000208c: PUSH1 0x20 0000208e: PUSH1 0x04 00002090: DUP3 00002091: ADD 00002092: MSTORE 00002093: PUSH1 0x3e 00002095: PUSH1 0x24 00002097: DUP3 00002098: ADD 00002099: MSTORE 0000209a: PUSH32 0x5265736f757263654d65746572696e673a2063616e6e6f7420627579206d6f72 000020bb: PUSH1 0x44 000020bd: DUP3 000020be: ADD 000020bf: MSTORE 000020c0: PUSH32 0x6520676173207468616e20617661696c61626c6520676173206c696d69740000 000020e1: PUSH1 0x64 000020e3: DUP3 000020e4: ADD 000020e5: MSTORE 000020e6: PUSH1 0x84 000020e8: ADD 000020e9: PUSH2 0x0622 000020ec: JUMP 000020ed: JUMPDEST 000020ee: PUSH1 0x01 000020f0: SLOAD 000020f1: PUSH1 0x00 000020f3: SWAP1 000020f4: PUSH2 0x2119 000020f7: SWAP1 000020f8: PUSH16 0xffffffffffffffffffffffffffffffff 00002109: AND 0000210a: PUSH8 0xffffffffffffffff 00002113: DUP9 00002114: AND 00002115: PUSH2 0x56ac 00002118: JUMP 00002119: JUMPDEST 0000211a: SWAP1 0000211b: POP 0000211c: PUSH1 0x00 0000211e: PUSH2 0x212b 00002121: BASEFEE 00002122: PUSH4 0x3b9aca00 00002127: PUSH2 0x2675 0000212a: JUMP 0000212b: JUMPDEST 0000212c: PUSH2 0x2135 0000212f: SWAP1 00002130: DUP4 00002131: PUSH2 0x56e9 00002134: JUMP 00002135: JUMPDEST 00002136: SWAP1 00002137: POP 00002138: PUSH1 0x00 0000213a: GAS 0000213b: PUSH2 0x2144 0000213e: SWAP1 0000213f: DUP9 00002140: PUSH2 0x545a 00002143: JUMP 00002144: JUMPDEST 00002145: SWAP1 00002146: POP 00002147: DUP1 00002148: DUP3 00002149: GT 0000214a: ISZERO 0000214b: PUSH2 0x2160 0000214e: JUMPI 0000214f: PUSH2 0x2160 00002152: PUSH2 0x215b 00002155: DUP3 00002156: DUP5 00002157: PUSH2 0x545a 0000215a: JUMP 0000215b: JUMPDEST 0000215c: PUSH2 0x268c 0000215f: JUMP 00002160: JUMPDEST 00002161: POP 00002162: POP 00002163: POP 00002164: POP 00002165: POP 00002166: POP 00002167: POP 00002168: POP 00002169: JUMP 0000216a: JUMPDEST 0000216b: PUSH1 0x00 0000216d: DUP2 0000216e: PUSH1 0x00 00002170: ADD 00002171: MLOAD 00002172: DUP3 00002173: PUSH1 0x20 00002175: ADD 00002176: MLOAD 00002177: DUP4 00002178: PUSH1 0x40 0000217a: ADD 0000217b: MLOAD 0000217c: DUP5 0000217d: PUSH1 0x60 0000217f: ADD 00002180: MLOAD 00002181: PUSH1 0x40 00002183: MLOAD 00002184: PUSH1 0x20 00002186: ADD 00002187: PUSH2 0x21a9 0000218a: SWAP5 0000218b: SWAP4 0000218c: SWAP3 0000218d: SWAP2 0000218e: SWAP1 0000218f: SWAP4 00002190: DUP5 00002191: MSTORE 00002192: PUSH1 0x20 00002194: DUP5 00002195: ADD 00002196: SWAP3 00002197: SWAP1 00002198: SWAP3 00002199: MSTORE 0000219a: PUSH1 0x40 0000219c: DUP4 0000219d: ADD 0000219e: MSTORE 0000219f: PUSH1 0x60 000021a1: DUP3 000021a2: ADD 000021a3: MSTORE 000021a4: PUSH1 0x80 000021a6: ADD 000021a7: SWAP1 000021a8: JUMP 000021a9: JUMPDEST 000021aa: PUSH1 0x40 000021ac: MLOAD 000021ad: PUSH1 0x20 000021af: DUP2 000021b0: DUP4 000021b1: SUB 000021b2: SUB 000021b3: DUP2 000021b4: MSTORE 000021b5: SWAP1 000021b6: PUSH1 0x40 000021b8: MSTORE 000021b9: DUP1 000021ba: MLOAD 000021bb: SWAP1 000021bc: PUSH1 0x20 000021be: ADD 000021bf: KECCAK256 000021c0: SWAP1 000021c1: POP 000021c2: SWAP2 000021c3: SWAP1 000021c4: POP 000021c5: JUMP 000021c6: JUMPDEST 000021c7: DUP1 000021c8: MLOAD 000021c9: PUSH1 0x20 000021cb: DUP1 000021cc: DUP4 000021cd: ADD 000021ce: MLOAD 000021cf: PUSH1 0x40 000021d1: DUP1 000021d2: DUP6 000021d3: ADD 000021d4: MLOAD 000021d5: PUSH1 0x60 000021d7: DUP7 000021d8: ADD 000021d9: MLOAD 000021da: PUSH1 0x80 000021dc: DUP8 000021dd: ADD 000021de: MLOAD 000021df: PUSH1 0xa0 000021e1: DUP9 000021e2: ADD 000021e3: MLOAD 000021e4: SWAP4 000021e5: MLOAD 000021e6: PUSH1 0x00 000021e8: SWAP8 000021e9: PUSH2 0x21a9 000021ec: SWAP8 000021ed: SWAP1 000021ee: SWAP7 000021ef: SWAP6 000021f0: SWAP2 000021f1: ADD 000021f2: PUSH2 0x56fd 000021f5: JUMP 000021f6: JUMPDEST 000021f7: PUSH1 0x00 000021f9: DUP1 000021fa: PUSH2 0x2202 000021fd: DUP7 000021fe: PUSH2 0x26b5 00002201: JUMP 00002202: JUMPDEST 00002203: SWAP1 00002204: POP 00002205: PUSH2 0x2210 00002208: DUP2 00002209: DUP7 0000220a: DUP7 0000220b: DUP7 0000220c: PUSH2 0x26e7 0000220f: JUMP 00002210: JUMPDEST 00002211: SWAP7 00002212: SWAP6 00002213: POP 00002214: POP 00002215: POP 00002216: POP 00002217: POP 00002218: POP 00002219: JUMP 0000221a: JUMPDEST 0000221b: PUSH1 0x60 0000221d: DUP2 0000221e: PUSH1 0x00 00002220: SUB 00002221: PUSH2 0x225d 00002224: JUMPI 00002225: POP 00002226: POP 00002227: PUSH1 0x40 00002229: DUP1 0000222a: MLOAD 0000222b: DUP1 0000222c: DUP3 0000222d: ADD 0000222e: SWAP1 0000222f: SWAP2 00002230: MSTORE 00002231: PUSH1 0x01 00002233: DUP2 00002234: MSTORE 00002235: PUSH32 0x3000000000000000000000000000000000000000000000000000000000000000 00002256: PUSH1 0x20 00002258: DUP3 00002259: ADD 0000225a: MSTORE 0000225b: SWAP1 0000225c: JUMP 0000225d: JUMPDEST 0000225e: DUP2 0000225f: PUSH1 0x00 00002261: JUMPDEST 00002262: DUP2 00002263: ISZERO 00002264: PUSH2 0x2287 00002267: JUMPI 00002268: DUP1 00002269: PUSH2 0x2271 0000226c: DUP2 0000226d: PUSH2 0x5754 00002270: JUMP 00002271: JUMPDEST 00002272: SWAP2 00002273: POP 00002274: PUSH2 0x2280 00002277: SWAP1 00002278: POP 00002279: PUSH1 0x0a 0000227b: DUP4 0000227c: PUSH2 0x56e9 0000227f: JUMP 00002280: JUMPDEST 00002281: SWAP2 00002282: POP 00002283: PUSH2 0x2261 00002286: JUMP 00002287: JUMPDEST 00002288: PUSH1 0x00 0000228a: DUP2 0000228b: PUSH8 0xffffffffffffffff 00002294: DUP2 00002295: GT 00002296: ISZERO 00002297: PUSH2 0x22a2 0000229a: JUMPI 0000229b: PUSH2 0x22a2 0000229e: PUSH2 0x4cda 000022a1: JUMP 000022a2: JUMPDEST 000022a3: PUSH1 0x40 000022a5: MLOAD 000022a6: SWAP1 000022a7: DUP1 000022a8: DUP3 000022a9: MSTORE 000022aa: DUP1 000022ab: PUSH1 0x1f 000022ad: ADD 000022ae: PUSH1 0x1f 000022b0: NOT 000022b1: AND 000022b2: PUSH1 0x20 000022b4: ADD 000022b5: DUP3 000022b6: ADD 000022b7: PUSH1 0x40 000022b9: MSTORE 000022ba: DUP1 000022bb: ISZERO 000022bc: PUSH2 0x22cc 000022bf: JUMPI 000022c0: PUSH1 0x20 000022c2: DUP3 000022c3: ADD 000022c4: DUP2 000022c5: DUP1 000022c6: CALLDATASIZE 000022c7: DUP4 000022c8: CALLDATACOPY 000022c9: ADD 000022ca: SWAP1 000022cb: POP 000022cc: JUMPDEST 000022cd: POP 000022ce: SWAP1 000022cf: POP 000022d0: JUMPDEST 000022d1: DUP5 000022d2: ISZERO 000022d3: PUSH2 0x234f 000022d6: JUMPI 000022d7: PUSH2 0x22e1 000022da: PUSH1 0x01 000022dc: DUP4 000022dd: PUSH2 0x545a 000022e0: JUMP 000022e1: JUMPDEST 000022e2: SWAP2 000022e3: POP 000022e4: PUSH2 0x22ee 000022e7: PUSH1 0x0a 000022e9: DUP7 000022ea: PUSH2 0x578c 000022ed: JUMP 000022ee: JUMPDEST 000022ef: PUSH2 0x22f9 000022f2: SWAP1 000022f3: PUSH1 0x30 000022f5: PUSH2 0x57a0 000022f8: JUMP 000022f9: JUMPDEST 000022fa: PUSH1 0xf8 000022fc: SHL 000022fd: DUP2 000022fe: DUP4 000022ff: DUP2 00002300: MLOAD 00002301: DUP2 00002302: LT 00002303: PUSH2 0x230e 00002306: JUMPI 00002307: PUSH2 0x230e 0000230a: PUSH2 0x57b8 0000230d: JUMP 0000230e: JUMPDEST 0000230f: PUSH1 0x20 00002311: ADD 00002312: ADD 00002313: SWAP1 00002314: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00002334: NOT 00002335: AND 00002336: SWAP1 00002337: DUP2 00002338: PUSH1 0x00 0000233a: BYTE 0000233b: SWAP1 0000233c: MSTORE8 0000233d: POP 0000233e: PUSH2 0x2348 00002341: PUSH1 0x0a 00002343: DUP7 00002344: PUSH2 0x56e9 00002347: JUMP 00002348: JUMPDEST 00002349: SWAP5 0000234a: POP 0000234b: PUSH2 0x22d0 0000234e: JUMP 0000234f: JUMPDEST 00002350: SWAP5 00002351: SWAP4 00002352: POP 00002353: POP 00002354: POP 00002355: POP 00002356: JUMP 00002357: JUMPDEST 00002358: PUSH1 0x00 0000235a: PUSH32 0x000000000000000000000000a38d0c4e6319f9045f20318ba5f04cde94208608 0000237b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002390: AND 00002391: PUSH4 0xf4daa291 00002396: PUSH1 0x40 00002398: MLOAD 00002399: DUP2 0000239a: PUSH4 0xffffffff 0000239f: AND 000023a0: PUSH1 0xe0 000023a2: SHL 000023a3: DUP2 000023a4: MSTORE 000023a5: PUSH1 0x04 000023a7: ADD 000023a8: PUSH1 0x20 000023aa: PUSH1 0x40 000023ac: MLOAD 000023ad: DUP1 000023ae: DUP4 000023af: SUB 000023b0: DUP2 000023b1: DUP7 000023b2: GAS 000023b3: STATICCALL 000023b4: ISZERO 000023b5: DUP1 000023b6: ISZERO 000023b7: PUSH2 0x23c4 000023ba: JUMPI 000023bb: RETURNDATASIZE 000023bc: PUSH1 0x00 000023be: DUP1 000023bf: RETURNDATACOPY 000023c0: RETURNDATASIZE 000023c1: PUSH1 0x00 000023c3: REVERT 000023c4: JUMPDEST 000023c5: POP 000023c6: POP 000023c7: POP 000023c8: POP 000023c9: PUSH1 0x40 000023cb: MLOAD 000023cc: RETURNDATASIZE 000023cd: PUSH1 0x1f 000023cf: NOT 000023d0: PUSH1 0x1f 000023d2: DUP3 000023d3: ADD 000023d4: AND 000023d5: DUP3 000023d6: ADD 000023d7: DUP1 000023d8: PUSH1 0x40 000023da: MSTORE 000023db: POP 000023dc: DUP2 000023dd: ADD 000023de: SWAP1 000023df: PUSH2 0x23e8 000023e2: SWAP2 000023e3: SWAP1 000023e4: PUSH2 0x53b6 000023e7: JUMP 000023e8: JUMPDEST 000023e9: PUSH2 0x23f2 000023ec: SWAP1 000023ed: DUP4 000023ee: PUSH2 0x57a0 000023f1: JUMP 000023f2: JUMPDEST 000023f3: TIMESTAMP 000023f4: GT 000023f5: SWAP3 000023f6: SWAP2 000023f7: POP 000023f8: POP 000023f9: JUMP 000023fa: JUMPDEST 000023fb: PUSH1 0x00 000023fd: DUP1 000023fe: PUSH1 0x00 00002400: PUSH2 0x240a 00002403: DUP7 00002404: PUSH1 0x00 00002406: PUSH2 0x2717 00002409: JUMP 0000240a: JUMPDEST 0000240b: SWAP1 0000240c: POP 0000240d: DUP1 0000240e: PUSH2 0x2440 00002411: JUMPI 00002412: PUSH4 0x08c379a0 00002417: PUSH1 0x00 00002419: MSTORE 0000241a: PUSH1 0x20 0000241c: DUP1 0000241d: MSTORE 0000241e: PUSH25 0x185361666543616c6c3a204e6f7420656e6f75676820676173 00002438: PUSH1 0x58 0000243a: MSTORE 0000243b: PUSH1 0x64 0000243d: PUSH1 0x1c 0000243f: REVERT 00002440: JUMPDEST 00002441: PUSH1 0x00 00002443: DUP1 00002444: DUP6 00002445: MLOAD 00002446: PUSH1 0x20 00002448: DUP8 00002449: ADD 0000244a: DUP9 0000244b: DUP12 0000244c: GAS 0000244d: CALL 0000244e: SWAP8 0000244f: SWAP7 00002450: POP 00002451: POP 00002452: POP 00002453: POP 00002454: POP 00002455: POP 00002456: POP 00002457: JUMP 00002458: JUMPDEST 00002459: PUSH1 0x00 0000245b: SLOAD 0000245c: PUSH2 0x0100 0000245f: SWAP1 00002460: DIV 00002461: PUSH1 0xff 00002463: AND 00002464: PUSH2 0x24ef 00002467: JUMPI 00002468: PUSH1 0x40 0000246a: MLOAD 0000246b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000248c: DUP2 0000248d: MSTORE 0000248e: PUSH1 0x20 00002490: PUSH1 0x04 00002492: DUP3 00002493: ADD 00002494: MSTORE 00002495: PUSH1 0x2b 00002497: PUSH1 0x24 00002499: DUP3 0000249a: ADD 0000249b: MSTORE 0000249c: PUSH32 0x496e697469616c697a61626c653a20636f6e7472616374206973206e6f742069 000024bd: PUSH1 0x44 000024bf: DUP3 000024c0: ADD 000024c1: MSTORE 000024c2: PUSH32 0x6e697469616c697a696e67000000000000000000000000000000000000000000 000024e3: PUSH1 0x64 000024e5: DUP3 000024e6: ADD 000024e7: MSTORE 000024e8: PUSH1 0x84 000024ea: ADD 000024eb: PUSH2 0x0622 000024ee: JUMP 000024ef: JUMPDEST 000024f0: PUSH1 0x40 000024f2: DUP1 000024f3: MLOAD 000024f4: PUSH1 0x60 000024f6: DUP2 000024f7: ADD 000024f8: DUP3 000024f9: MSTORE 000024fa: PUSH4 0x3b9aca00 000024ff: DUP1 00002500: DUP3 00002501: MSTORE 00002502: PUSH1 0x00 00002504: PUSH1 0x20 00002506: DUP4 00002507: ADD 00002508: MSTORE 00002509: NUMBER 0000250a: PUSH8 0xffffffffffffffff 00002513: AND 00002514: SWAP2 00002515: SWAP1 00002516: SWAP3 00002517: ADD 00002518: DUP2 00002519: SWAP1 0000251a: MSTORE 0000251b: PUSH25 0x01000000000000000000000000000000000000000000000000 00002535: MUL 00002536: OR 00002537: PUSH1 0x01 00002539: SSTORE 0000253a: JUMP 0000253b: JUMPDEST 0000253c: PUSH1 0x40 0000253e: DUP1 0000253f: MLOAD 00002540: PUSH1 0xc0 00002542: DUP2 00002543: ADD 00002544: DUP3 00002545: MSTORE 00002546: PUSH1 0x00 00002548: DUP1 00002549: DUP3 0000254a: MSTORE 0000254b: PUSH1 0x20 0000254d: DUP3 0000254e: ADD 0000254f: DUP2 00002550: SWAP1 00002551: MSTORE 00002552: SWAP2 00002553: DUP2 00002554: ADD 00002555: DUP3 00002556: SWAP1 00002557: MSTORE 00002558: PUSH1 0x60 0000255a: DUP2 0000255b: ADD 0000255c: DUP3 0000255d: SWAP1 0000255e: MSTORE 0000255f: PUSH1 0x80 00002561: DUP2 00002562: ADD 00002563: DUP3 00002564: SWAP1 00002565: MSTORE 00002566: PUSH1 0xa0 00002568: DUP2 00002569: ADD 0000256a: SWAP2 0000256b: SWAP1 0000256c: SWAP2 0000256d: MSTORE 0000256e: PUSH32 0x0000000000000000000000007df716ead1d83a2bf35b416b7bc84bd0700357c9 0000258f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000025a4: AND 000025a5: PUSH4 0xcc731b02 000025aa: PUSH1 0x40 000025ac: MLOAD 000025ad: DUP2 000025ae: PUSH4 0xffffffff 000025b3: AND 000025b4: PUSH1 0xe0 000025b6: SHL 000025b7: DUP2 000025b8: MSTORE 000025b9: PUSH1 0x04 000025bb: ADD 000025bc: PUSH1 0xc0 000025be: PUSH1 0x40 000025c0: MLOAD 000025c1: DUP1 000025c2: DUP4 000025c3: SUB 000025c4: DUP2 000025c5: DUP7 000025c6: GAS 000025c7: STATICCALL 000025c8: ISZERO 000025c9: DUP1 000025ca: ISZERO 000025cb: PUSH2 0x25d8 000025ce: JUMPI 000025cf: RETURNDATASIZE 000025d0: PUSH1 0x00 000025d2: DUP1 000025d3: RETURNDATACOPY 000025d4: RETURNDATASIZE 000025d5: PUSH1 0x00 000025d7: REVERT 000025d8: JUMPDEST 000025d9: POP 000025da: POP 000025db: POP 000025dc: POP 000025dd: PUSH1 0x40 000025df: MLOAD 000025e0: RETURNDATASIZE 000025e1: PUSH1 0x1f 000025e3: NOT 000025e4: PUSH1 0x1f 000025e6: DUP3 000025e7: ADD 000025e8: AND 000025e9: DUP3 000025ea: ADD 000025eb: DUP1 000025ec: PUSH1 0x40 000025ee: MSTORE 000025ef: POP 000025f0: DUP2 000025f1: ADD 000025f2: SWAP1 000025f3: PUSH2 0x25fc 000025f6: SWAP2 000025f7: SWAP1 000025f8: PUSH2 0x580c 000025fb: JUMP 000025fc: JUMPDEST 000025fd: SWAP1 000025fe: POP 000025ff: SWAP1 00002600: JUMP 00002601: JUMPDEST 00002602: PUSH1 0x00 00002604: PUSH2 0x2616 00002607: PUSH2 0x2610 0000260a: DUP6 0000260b: DUP6 0000260c: PUSH2 0x2735 0000260f: JUMP 00002610: JUMPDEST 00002611: DUP4 00002612: PUSH2 0x2745 00002615: JUMP 00002616: JUMPDEST 00002617: SWAP1 00002618: POP 00002619: JUMPDEST 0000261a: SWAP4 0000261b: SWAP3 0000261c: POP 0000261d: POP 0000261e: POP 0000261f: JUMP 00002620: JUMPDEST 00002621: PUSH1 0x00 00002623: PUSH8 0x0de0b6b3a7640000 0000262c: PUSH2 0x2661 0000262f: PUSH2 0x2638 00002632: DUP6 00002633: DUP4 00002634: PUSH2 0x54a0 00002637: JUMP 00002638: JUMPDEST 00002639: PUSH2 0x264a 0000263c: SWAP1 0000263d: PUSH8 0x0de0b6b3a7640000 00002646: PUSH2 0x5508 00002649: JUMP 0000264a: JUMPDEST 0000264b: PUSH2 0x265c 0000264e: DUP6 0000264f: PUSH8 0x0de0b6b3a7640000 00002658: PUSH2 0x557c 0000265b: JUMP 0000265c: JUMPDEST 0000265d: PUSH2 0x2754 00002660: JUMP 00002661: JUMPDEST 00002662: PUSH2 0x266b 00002665: SWAP1 00002666: DUP7 00002667: PUSH2 0x557c 0000266a: JUMP 0000266b: JUMPDEST 0000266c: PUSH2 0x2616 0000266f: SWAP2 00002670: SWAP1 00002671: PUSH2 0x54a0 00002674: JUMP 00002675: JUMPDEST 00002676: PUSH1 0x00 00002678: DUP2 00002679: DUP4 0000267a: LT 0000267b: ISZERO 0000267c: PUSH2 0x2685 0000267f: JUMPI 00002680: DUP2 00002681: PUSH2 0x2619 00002684: JUMP 00002685: JUMPDEST 00002686: POP 00002687: SWAP1 00002688: SWAP2 00002689: SWAP1 0000268a: POP 0000268b: JUMP 0000268c: JUMPDEST 0000268d: PUSH1 0x00 0000268f: DUP1 00002690: GAS 00002691: SWAP1 00002692: POP 00002693: JUMPDEST 00002694: DUP3 00002695: GAS 00002696: PUSH2 0x269f 00002699: SWAP1 0000269a: DUP4 0000269b: PUSH2 0x545a 0000269e: JUMP 0000269f: JUMPDEST 000026a0: LT 000026a1: ISZERO 000026a2: PUSH2 0x1e1c 000026a5: JUMPI 000026a6: PUSH2 0x26ae 000026a9: DUP3 000026aa: PUSH2 0x5754 000026ad: JUMP 000026ae: JUMPDEST 000026af: SWAP2 000026b0: POP 000026b1: PUSH2 0x2693 000026b4: JUMP 000026b5: JUMPDEST 000026b6: PUSH1 0x60 000026b8: DUP2 000026b9: DUP1 000026ba: MLOAD 000026bb: SWAP1 000026bc: PUSH1 0x20 000026be: ADD 000026bf: KECCAK256 000026c0: PUSH1 0x40 000026c2: MLOAD 000026c3: PUSH1 0x20 000026c5: ADD 000026c6: PUSH2 0x26d1 000026c9: SWAP2 000026ca: DUP2 000026cb: MSTORE 000026cc: PUSH1 0x20 000026ce: ADD 000026cf: SWAP1 000026d0: JUMP 000026d1: JUMPDEST 000026d2: PUSH1 0x40 000026d4: MLOAD 000026d5: PUSH1 0x20 000026d7: DUP2 000026d8: DUP4 000026d9: SUB 000026da: SUB 000026db: DUP2 000026dc: MSTORE 000026dd: SWAP1 000026de: PUSH1 0x40 000026e0: MSTORE 000026e1: SWAP1 000026e2: POP 000026e3: SWAP2 000026e4: SWAP1 000026e5: POP 000026e6: JUMP 000026e7: JUMPDEST 000026e8: PUSH1 0x00 000026ea: PUSH2 0x270e 000026ed: DUP5 000026ee: PUSH2 0x26f8 000026f1: DUP8 000026f2: DUP7 000026f3: DUP7 000026f4: PUSH2 0x2785 000026f7: JUMP 000026f8: JUMPDEST 000026f9: DUP1 000026fa: MLOAD 000026fb: PUSH1 0x20 000026fd: SWAP2 000026fe: DUP3 000026ff: ADD 00002700: KECCAK256 00002701: DUP3 00002702: MLOAD 00002703: SWAP3 00002704: SWAP1 00002705: SWAP2 00002706: ADD 00002707: SWAP2 00002708: SWAP1 00002709: SWAP2 0000270a: KECCAK256 0000270b: EQ 0000270c: SWAP1 0000270d: JUMP 0000270e: JUMPDEST 0000270f: SWAP6 00002710: SWAP5 00002711: POP 00002712: POP 00002713: POP 00002714: POP 00002715: POP 00002716: JUMP 00002717: JUMPDEST 00002718: PUSH1 0x00 0000271a: DUP1 0000271b: PUSH1 0x3f 0000271d: DUP4 0000271e: PUSH2 0x9c40 00002721: ADD 00002722: MUL 00002723: PUSH1 0x40 00002725: DUP6 00002726: MUL 00002727: ADD 00002728: PUSH1 0x3f 0000272a: GAS 0000272b: MUL 0000272c: LT 0000272d: ISZERO 0000272e: SWAP5 0000272f: SWAP4 00002730: POP 00002731: POP 00002732: POP 00002733: POP 00002734: JUMP 00002735: JUMPDEST 00002736: PUSH1 0x00 00002738: DUP2 00002739: DUP4 0000273a: SLT 0000273b: ISZERO 0000273c: PUSH2 0x2685 0000273f: JUMPI 00002740: DUP2 00002741: PUSH2 0x2619 00002744: JUMP 00002745: JUMPDEST 00002746: PUSH1 0x00 00002748: DUP2 00002749: DUP4 0000274a: SLT 0000274b: PUSH2 0x2685 0000274e: JUMPI 0000274f: DUP2 00002750: PUSH2 0x2619 00002753: JUMP 00002754: JUMPDEST 00002755: PUSH1 0x00 00002757: PUSH2 0x2619 0000275a: PUSH8 0x0de0b6b3a7640000 00002763: DUP4 00002764: PUSH2 0x276c 00002767: DUP7 00002768: PUSH2 0x320d 0000276b: JUMP 0000276c: JUMPDEST 0000276d: PUSH2 0x2776 00002770: SWAP2 00002771: SWAP1 00002772: PUSH2 0x557c 00002775: JUMP 00002776: JUMPDEST 00002777: PUSH2 0x2780 0000277a: SWAP2 0000277b: SWAP1 0000277c: PUSH2 0x54a0 0000277f: JUMP 00002780: JUMPDEST 00002781: PUSH2 0x3451 00002784: JUMP 00002785: JUMPDEST 00002786: PUSH1 0x60 00002788: PUSH1 0x00 0000278a: DUP5 0000278b: MLOAD 0000278c: GT 0000278d: PUSH2 0x27f2 00002790: JUMPI 00002791: PUSH1 0x40 00002793: MLOAD 00002794: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000027b5: DUP2 000027b6: MSTORE 000027b7: PUSH1 0x20 000027b9: PUSH1 0x04 000027bb: DUP3 000027bc: ADD 000027bd: MSTORE 000027be: PUSH1 0x15 000027c0: PUSH1 0x24 000027c2: DUP3 000027c3: ADD 000027c4: MSTORE 000027c5: PUSH32 0x4d65726b6c65547269653a20656d707479206b65790000000000000000000000 000027e6: PUSH1 0x44 000027e8: DUP3 000027e9: ADD 000027ea: MSTORE 000027eb: PUSH1 0x64 000027ed: ADD 000027ee: PUSH2 0x0622 000027f1: JUMP 000027f2: JUMPDEST 000027f3: PUSH1 0x00 000027f5: PUSH2 0x27fd 000027f8: DUP5 000027f9: PUSH2 0x3690 000027fc: JUMP 000027fd: JUMPDEST 000027fe: SWAP1 000027ff: POP 00002800: PUSH1 0x00 00002802: PUSH2 0x280a 00002805: DUP7 00002806: PUSH2 0x377f 00002809: JUMP 0000280a: JUMPDEST 0000280b: SWAP1 0000280c: POP 0000280d: PUSH1 0x00 0000280f: DUP5 00002810: PUSH1 0x40 00002812: MLOAD 00002813: PUSH1 0x20 00002815: ADD 00002816: PUSH2 0x2821 00002819: SWAP2 0000281a: DUP2 0000281b: MSTORE 0000281c: PUSH1 0x20 0000281e: ADD 0000281f: SWAP1 00002820: JUMP 00002821: JUMPDEST 00002822: PUSH1 0x40 00002824: MLOAD 00002825: PUSH1 0x20 00002827: DUP2 00002828: DUP4 00002829: SUB 0000282a: SUB 0000282b: DUP2 0000282c: MSTORE 0000282d: SWAP1 0000282e: PUSH1 0x40 00002830: MSTORE 00002831: SWAP1 00002832: POP 00002833: PUSH1 0x00 00002835: DUP1 00002836: JUMPDEST 00002837: DUP5 00002838: MLOAD 00002839: DUP2 0000283a: LT 0000283b: ISZERO 0000283c: PUSH2 0x3184 0000283f: JUMPI 00002840: PUSH1 0x00 00002842: DUP6 00002843: DUP3 00002844: DUP2 00002845: MLOAD 00002846: DUP2 00002847: LT 00002848: PUSH2 0x2853 0000284b: JUMPI 0000284c: PUSH2 0x2853 0000284f: PUSH2 0x57b8 00002852: JUMP 00002853: JUMPDEST 00002854: PUSH1 0x20 00002856: MUL 00002857: PUSH1 0x20 00002859: ADD 0000285a: ADD 0000285b: MLOAD 0000285c: SWAP1 0000285d: POP 0000285e: DUP5 0000285f: MLOAD 00002860: DUP4 00002861: GT 00002862: ISZERO 00002863: PUSH2 0x28ee 00002866: JUMPI 00002867: PUSH1 0x40 00002869: MLOAD 0000286a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000288b: DUP2 0000288c: MSTORE 0000288d: PUSH1 0x20 0000288f: PUSH1 0x04 00002891: DUP3 00002892: ADD 00002893: MSTORE 00002894: PUSH1 0x2e 00002896: PUSH1 0x24 00002898: DUP3 00002899: ADD 0000289a: MSTORE 0000289b: PUSH32 0x4d65726b6c65547269653a206b657920696e646578206578636565647320746f 000028bc: PUSH1 0x44 000028be: DUP3 000028bf: ADD 000028c0: MSTORE 000028c1: PUSH32 0x74616c206b6579206c656e677468000000000000000000000000000000000000 000028e2: PUSH1 0x64 000028e4: DUP3 000028e5: ADD 000028e6: MSTORE 000028e7: PUSH1 0x84 000028e9: ADD 000028ea: PUSH2 0x0622 000028ed: JUMP 000028ee: JUMPDEST 000028ef: DUP3 000028f0: PUSH1 0x00 000028f2: SUB 000028f3: PUSH2 0x29a7 000028f6: JUMPI 000028f7: DUP1 000028f8: MLOAD 000028f9: DUP1 000028fa: MLOAD 000028fb: PUSH1 0x20 000028fd: SWAP2 000028fe: DUP3 000028ff: ADD 00002900: KECCAK256 00002901: PUSH1 0x40 00002903: MLOAD 00002904: PUSH2 0x293c 00002907: SWAP3 00002908: PUSH2 0x2916 0000290b: SWAP3 0000290c: SWAP2 0000290d: ADD 0000290e: SWAP1 0000290f: DUP2 00002910: MSTORE 00002911: PUSH1 0x20 00002913: ADD 00002914: SWAP1 00002915: JUMP 00002916: JUMPDEST 00002917: PUSH1 0x40 00002919: MLOAD 0000291a: PUSH1 0x20 0000291c: DUP2 0000291d: DUP4 0000291e: SUB 0000291f: SUB 00002920: DUP2 00002921: MSTORE 00002922: SWAP1 00002923: PUSH1 0x40 00002925: MSTORE 00002926: DUP6 00002927: DUP1 00002928: MLOAD 00002929: PUSH1 0x20 0000292b: SWAP2 0000292c: DUP3 0000292d: ADD 0000292e: KECCAK256 0000292f: DUP3 00002930: MLOAD 00002931: SWAP3 00002932: SWAP1 00002933: SWAP2 00002934: ADD 00002935: SWAP2 00002936: SWAP1 00002937: SWAP2 00002938: KECCAK256 00002939: EQ 0000293a: SWAP1 0000293b: JUMP 0000293c: JUMPDEST 0000293d: PUSH2 0x29a2 00002940: JUMPI 00002941: PUSH1 0x40 00002943: MLOAD 00002944: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002965: DUP2 00002966: MSTORE 00002967: PUSH1 0x20 00002969: PUSH1 0x04 0000296b: DUP3 0000296c: ADD 0000296d: MSTORE 0000296e: PUSH1 0x1d 00002970: PUSH1 0x24 00002972: DUP3 00002973: ADD 00002974: MSTORE 00002975: PUSH32 0x4d65726b6c65547269653a20696e76616c696420726f6f742068617368000000 00002996: PUSH1 0x44 00002998: DUP3 00002999: ADD 0000299a: MSTORE 0000299b: PUSH1 0x64 0000299d: ADD 0000299e: PUSH2 0x0622 000029a1: JUMP 000029a2: JUMPDEST 000029a3: PUSH2 0x2afe 000029a6: JUMP 000029a7: JUMPDEST 000029a8: DUP1 000029a9: MLOAD 000029aa: MLOAD 000029ab: PUSH1 0x20 000029ad: GT 000029ae: PUSH2 0x2a5d 000029b1: JUMPI 000029b2: DUP1 000029b3: MLOAD 000029b4: DUP1 000029b5: MLOAD 000029b6: PUSH1 0x20 000029b8: SWAP2 000029b9: DUP3 000029ba: ADD 000029bb: KECCAK256 000029bc: PUSH1 0x40 000029be: MLOAD 000029bf: PUSH2 0x29d1 000029c2: SWAP3 000029c3: PUSH2 0x2916 000029c6: SWAP3 000029c7: SWAP2 000029c8: ADD 000029c9: SWAP1 000029ca: DUP2 000029cb: MSTORE 000029cc: PUSH1 0x20 000029ce: ADD 000029cf: SWAP1 000029d0: JUMP 000029d1: JUMPDEST 000029d2: PUSH2 0x29a2 000029d5: JUMPI 000029d6: PUSH1 0x40 000029d8: MLOAD 000029d9: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000029fa: DUP2 000029fb: MSTORE 000029fc: PUSH1 0x20 000029fe: PUSH1 0x04 00002a00: DUP3 00002a01: ADD 00002a02: MSTORE 00002a03: PUSH1 0x27 00002a05: PUSH1 0x24 00002a07: DUP3 00002a08: ADD 00002a09: MSTORE 00002a0a: PUSH32 0x4d65726b6c65547269653a20696e76616c6964206c6172676520696e7465726e 00002a2b: PUSH1 0x44 00002a2d: DUP3 00002a2e: ADD 00002a2f: MSTORE 00002a30: PUSH32 0x616c206861736800000000000000000000000000000000000000000000000000 00002a51: PUSH1 0x64 00002a53: DUP3 00002a54: ADD 00002a55: MSTORE 00002a56: PUSH1 0x84 00002a58: ADD 00002a59: PUSH2 0x0622 00002a5c: JUMP 00002a5d: JUMPDEST 00002a5e: DUP1 00002a5f: MLOAD 00002a60: DUP5 00002a61: MLOAD 00002a62: PUSH1 0x20 00002a64: DUP1 00002a65: DUP8 00002a66: ADD 00002a67: SWAP2 00002a68: SWAP1 00002a69: SWAP2 00002a6a: KECCAK256 00002a6b: DUP3 00002a6c: MLOAD 00002a6d: SWAP2 00002a6e: SWAP1 00002a6f: SWAP3 00002a70: ADD 00002a71: KECCAK256 00002a72: EQ 00002a73: PUSH2 0x2afe 00002a76: JUMPI 00002a77: PUSH1 0x40 00002a79: MLOAD 00002a7a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002a9b: DUP2 00002a9c: MSTORE 00002a9d: PUSH1 0x20 00002a9f: PUSH1 0x04 00002aa1: DUP3 00002aa2: ADD 00002aa3: MSTORE 00002aa4: PUSH1 0x26 00002aa6: PUSH1 0x24 00002aa8: DUP3 00002aa9: ADD 00002aaa: MSTORE 00002aab: PUSH32 0x4d65726b6c65547269653a20696e76616c696420696e7465726e616c206e6f64 00002acc: PUSH1 0x44 00002ace: DUP3 00002acf: ADD 00002ad0: MSTORE 00002ad1: PUSH32 0x6520686173680000000000000000000000000000000000000000000000000000 00002af2: PUSH1 0x64 00002af4: DUP3 00002af5: ADD 00002af6: MSTORE 00002af7: PUSH1 0x84 00002af9: ADD 00002afa: PUSH2 0x0622 00002afd: JUMP 00002afe: JUMPDEST 00002aff: PUSH2 0x2b0a 00002b02: PUSH1 0x10 00002b04: PUSH1 0x01 00002b06: PUSH2 0x57a0 00002b09: JUMP 00002b0a: JUMPDEST 00002b0b: DUP2 00002b0c: PUSH1 0x20 00002b0e: ADD 00002b0f: MLOAD 00002b10: MLOAD 00002b11: SUB 00002b12: PUSH2 0x2ceb 00002b15: JUMPI 00002b16: DUP5 00002b17: MLOAD 00002b18: DUP4 00002b19: SUB 00002b1a: PUSH2 0x2c83 00002b1d: JUMPI 00002b1e: PUSH1 0x00 00002b20: PUSH2 0x2b46 00002b23: DUP3 00002b24: PUSH1 0x20 00002b26: ADD 00002b27: MLOAD 00002b28: PUSH1 0x10 00002b2a: DUP2 00002b2b: MLOAD 00002b2c: DUP2 00002b2d: LT 00002b2e: PUSH2 0x2b39 00002b31: JUMPI 00002b32: PUSH2 0x2b39 00002b35: PUSH2 0x57b8 00002b38: JUMP 00002b39: JUMPDEST 00002b3a: PUSH1 0x20 00002b3c: MUL 00002b3d: PUSH1 0x20 00002b3f: ADD 00002b40: ADD 00002b41: MLOAD 00002b42: PUSH2 0x391a 00002b45: JUMP 00002b46: JUMPDEST 00002b47: SWAP1 00002b48: POP 00002b49: PUSH1 0x00 00002b4b: DUP2 00002b4c: MLOAD 00002b4d: GT 00002b4e: PUSH2 0x2bd9 00002b51: JUMPI 00002b52: PUSH1 0x40 00002b54: MLOAD 00002b55: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002b76: DUP2 00002b77: MSTORE 00002b78: PUSH1 0x20 00002b7a: PUSH1 0x04 00002b7c: DUP3 00002b7d: ADD 00002b7e: MSTORE 00002b7f: PUSH1 0x3b 00002b81: PUSH1 0x24 00002b83: DUP3 00002b84: ADD 00002b85: MSTORE 00002b86: PUSH32 0x4d65726b6c65547269653a2076616c7565206c656e677468206d757374206265 00002ba7: PUSH1 0x44 00002ba9: DUP3 00002baa: ADD 00002bab: MSTORE 00002bac: PUSH32 0x2067726561746572207468616e207a65726f20286272616e6368290000000000 00002bcd: PUSH1 0x64 00002bcf: DUP3 00002bd0: ADD 00002bd1: MSTORE 00002bd2: PUSH1 0x84 00002bd4: ADD 00002bd5: PUSH2 0x0622 00002bd8: JUMP 00002bd9: JUMPDEST 00002bda: PUSH1 0x01 00002bdc: DUP8 00002bdd: MLOAD 00002bde: PUSH2 0x2be7 00002be1: SWAP2 00002be2: SWAP1 00002be3: PUSH2 0x545a 00002be6: JUMP 00002be7: JUMPDEST 00002be8: DUP4 00002be9: EQ 00002bea: PUSH2 0x2c75 00002bed: JUMPI 00002bee: PUSH1 0x40 00002bf0: MLOAD 00002bf1: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002c12: DUP2 00002c13: MSTORE 00002c14: PUSH1 0x20 00002c16: PUSH1 0x04 00002c18: DUP3 00002c19: ADD 00002c1a: MSTORE 00002c1b: PUSH1 0x3a 00002c1d: PUSH1 0x24 00002c1f: DUP3 00002c20: ADD 00002c21: MSTORE 00002c22: PUSH32 0x4d65726b6c65547269653a2076616c7565206e6f6465206d757374206265206c 00002c43: PUSH1 0x44 00002c45: DUP3 00002c46: ADD 00002c47: MSTORE 00002c48: PUSH32 0x617374206e6f646520696e2070726f6f6620286272616e636829000000000000 00002c69: PUSH1 0x64 00002c6b: DUP3 00002c6c: ADD 00002c6d: MSTORE 00002c6e: PUSH1 0x84 00002c70: ADD 00002c71: PUSH2 0x0622 00002c74: JUMP 00002c75: JUMPDEST 00002c76: SWAP7 00002c77: POP 00002c78: PUSH2 0x2619 00002c7b: SWAP6 00002c7c: POP 00002c7d: POP 00002c7e: POP 00002c7f: POP 00002c80: POP 00002c81: POP 00002c82: JUMP 00002c83: JUMPDEST 00002c84: PUSH1 0x00 00002c86: DUP6 00002c87: DUP5 00002c88: DUP2 00002c89: MLOAD 00002c8a: DUP2 00002c8b: LT 00002c8c: PUSH2 0x2c97 00002c8f: JUMPI 00002c90: PUSH2 0x2c97 00002c93: PUSH2 0x57b8 00002c96: JUMP 00002c97: JUMPDEST 00002c98: PUSH1 0x20 00002c9a: ADD 00002c9b: ADD 00002c9c: MLOAD 00002c9d: PUSH1 0xf8 00002c9f: SHR 00002ca0: PUSH1 0xf8 00002ca2: SHL 00002ca3: PUSH1 0xf8 00002ca5: SHR 00002ca6: SWAP1 00002ca7: POP 00002ca8: PUSH1 0x00 00002caa: DUP3 00002cab: PUSH1 0x20 00002cad: ADD 00002cae: MLOAD 00002caf: DUP3 00002cb0: PUSH1 0xff 00002cb2: AND 00002cb3: DUP2 00002cb4: MLOAD 00002cb5: DUP2 00002cb6: LT 00002cb7: PUSH2 0x2cc2 00002cba: JUMPI 00002cbb: PUSH2 0x2cc2 00002cbe: PUSH2 0x57b8 00002cc1: JUMP 00002cc2: JUMPDEST 00002cc3: PUSH1 0x20 00002cc5: MUL 00002cc6: PUSH1 0x20 00002cc8: ADD 00002cc9: ADD 00002cca: MLOAD 00002ccb: SWAP1 00002ccc: POP 00002ccd: PUSH2 0x2cd5 00002cd0: DUP2 00002cd1: PUSH2 0x3a7a 00002cd4: JUMP 00002cd5: JUMPDEST 00002cd6: SWAP6 00002cd7: POP 00002cd8: PUSH2 0x2ce2 00002cdb: PUSH1 0x01 00002cdd: DUP7 00002cde: PUSH2 0x57a0 00002ce1: JUMP 00002ce2: JUMPDEST 00002ce3: SWAP5 00002ce4: POP 00002ce5: POP 00002ce6: POP 00002ce7: PUSH2 0x3171 00002cea: JUMP 00002ceb: JUMPDEST 00002cec: PUSH1 0x02 00002cee: DUP2 00002cef: PUSH1 0x20 00002cf1: ADD 00002cf2: MLOAD 00002cf3: MLOAD 00002cf4: SUB 00002cf5: PUSH2 0x30e9 00002cf8: JUMPI 00002cf9: PUSH1 0x00 00002cfb: PUSH2 0x2d03 00002cfe: DUP3 00002cff: PUSH2 0x3a9f 00002d02: JUMP 00002d03: JUMPDEST 00002d04: SWAP1 00002d05: POP 00002d06: PUSH1 0x00 00002d08: DUP2 00002d09: PUSH1 0x00 00002d0b: DUP2 00002d0c: MLOAD 00002d0d: DUP2 00002d0e: LT 00002d0f: PUSH2 0x2d1a 00002d12: JUMPI 00002d13: PUSH2 0x2d1a 00002d16: PUSH2 0x57b8 00002d19: JUMP 00002d1a: JUMPDEST 00002d1b: ADD 00002d1c: PUSH1 0x20 00002d1e: ADD 00002d1f: MLOAD 00002d20: PUSH1 0xf8 00002d22: SHR 00002d23: SWAP1 00002d24: POP 00002d25: PUSH1 0x00 00002d27: PUSH2 0x2d31 00002d2a: PUSH1 0x02 00002d2c: DUP4 00002d2d: PUSH2 0x58ab 00002d30: JUMP 00002d31: JUMPDEST 00002d32: PUSH2 0x2d3c 00002d35: SWAP1 00002d36: PUSH1 0x02 00002d38: PUSH2 0x58cd 00002d3b: JUMP 00002d3c: JUMPDEST 00002d3d: SWAP1 00002d3e: POP 00002d3f: PUSH1 0x00 00002d41: PUSH2 0x2d4d 00002d44: DUP5 00002d45: DUP4 00002d46: PUSH1 0xff 00002d48: AND 00002d49: PUSH2 0x3ac3 00002d4c: JUMP 00002d4d: JUMPDEST 00002d4e: SWAP1 00002d4f: POP 00002d50: PUSH1 0x00 00002d52: PUSH2 0x2d5b 00002d55: DUP11 00002d56: DUP10 00002d57: PUSH2 0x3ac3 00002d5a: JUMP 00002d5b: JUMPDEST 00002d5c: SWAP1 00002d5d: POP 00002d5e: PUSH1 0x00 00002d60: PUSH2 0x2d69 00002d63: DUP4 00002d64: DUP4 00002d65: PUSH2 0x3af9 00002d68: JUMP 00002d69: JUMPDEST 00002d6a: SWAP1 00002d6b: POP 00002d6c: DUP1 00002d6d: DUP4 00002d6e: MLOAD 00002d6f: EQ 00002d70: PUSH2 0x2dfb 00002d73: JUMPI 00002d74: PUSH1 0x40 00002d76: MLOAD 00002d77: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002d98: DUP2 00002d99: MSTORE 00002d9a: PUSH1 0x20 00002d9c: PUSH1 0x04 00002d9e: DUP3 00002d9f: ADD 00002da0: MSTORE 00002da1: PUSH1 0x3a 00002da3: PUSH1 0x24 00002da5: DUP3 00002da6: ADD 00002da7: MSTORE 00002da8: PUSH32 0x4d65726b6c65547269653a20706174682072656d61696e646572206d75737420 00002dc9: PUSH1 0x44 00002dcb: DUP3 00002dcc: ADD 00002dcd: MSTORE 00002dce: PUSH32 0x736861726520616c6c206e6962626c65732077697468206b6579000000000000 00002def: PUSH1 0x64 00002df1: DUP3 00002df2: ADD 00002df3: MSTORE 00002df4: PUSH1 0x84 00002df6: ADD 00002df7: PUSH2 0x0622 00002dfa: JUMP 00002dfb: JUMPDEST 00002dfc: PUSH1 0xff 00002dfe: DUP6 00002dff: AND 00002e00: PUSH1 0x02 00002e02: EQ 00002e03: DUP1 00002e04: PUSH2 0x2e10 00002e07: JUMPI 00002e08: POP 00002e09: PUSH1 0xff 00002e0b: DUP6 00002e0c: AND 00002e0d: PUSH1 0x03 00002e0f: EQ 00002e10: JUMPDEST 00002e11: ISZERO 00002e12: PUSH2 0x3004 00002e15: JUMPI 00002e16: DUP1 00002e17: DUP3 00002e18: MLOAD 00002e19: EQ 00002e1a: PUSH2 0x2ea5 00002e1d: JUMPI 00002e1e: PUSH1 0x40 00002e20: MLOAD 00002e21: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002e42: DUP2 00002e43: MSTORE 00002e44: PUSH1 0x20 00002e46: PUSH1 0x04 00002e48: DUP3 00002e49: ADD 00002e4a: MSTORE 00002e4b: PUSH1 0x3d 00002e4d: PUSH1 0x24 00002e4f: DUP3 00002e50: ADD 00002e51: MSTORE 00002e52: PUSH32 0x4d65726b6c65547269653a206b65792072656d61696e646572206d7573742062 00002e73: PUSH1 0x44 00002e75: DUP3 00002e76: ADD 00002e77: MSTORE 00002e78: PUSH32 0x65206964656e746963616c20746f20706174682072656d61696e646572000000 00002e99: PUSH1 0x64 00002e9b: DUP3 00002e9c: ADD 00002e9d: MSTORE 00002e9e: PUSH1 0x84 00002ea0: ADD 00002ea1: PUSH2 0x0622 00002ea4: JUMP 00002ea5: JUMPDEST 00002ea6: PUSH1 0x00 00002ea8: PUSH2 0x2ec1 00002eab: DUP9 00002eac: PUSH1 0x20 00002eae: ADD 00002eaf: MLOAD 00002eb0: PUSH1 0x01 00002eb2: DUP2 00002eb3: MLOAD 00002eb4: DUP2 00002eb5: LT 00002eb6: PUSH2 0x2b39 00002eb9: JUMPI 00002eba: PUSH2 0x2b39 00002ebd: PUSH2 0x57b8 00002ec0: JUMP 00002ec1: JUMPDEST 00002ec2: SWAP1 00002ec3: POP 00002ec4: PUSH1 0x00 00002ec6: DUP2 00002ec7: MLOAD 00002ec8: GT 00002ec9: PUSH2 0x2f54 00002ecc: JUMPI 00002ecd: PUSH1 0x40 00002ecf: MLOAD 00002ed0: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002ef1: DUP2 00002ef2: MSTORE 00002ef3: PUSH1 0x20 00002ef5: PUSH1 0x04 00002ef7: DUP3 00002ef8: ADD 00002ef9: MSTORE 00002efa: PUSH1 0x39 00002efc: PUSH1 0x24 00002efe: DUP3 00002eff: ADD 00002f00: MSTORE 00002f01: PUSH32 0x4d65726b6c65547269653a2076616c7565206c656e677468206d757374206265 00002f22: PUSH1 0x44 00002f24: DUP3 00002f25: ADD 00002f26: MSTORE 00002f27: PUSH32 0x2067726561746572207468616e207a65726f20286c6561662900000000000000 00002f48: PUSH1 0x64 00002f4a: DUP3 00002f4b: ADD 00002f4c: MSTORE 00002f4d: PUSH1 0x84 00002f4f: ADD 00002f50: PUSH2 0x0622 00002f53: JUMP 00002f54: JUMPDEST 00002f55: PUSH1 0x01 00002f57: DUP14 00002f58: MLOAD 00002f59: PUSH2 0x2f62 00002f5c: SWAP2 00002f5d: SWAP1 00002f5e: PUSH2 0x545a 00002f61: JUMP 00002f62: JUMPDEST 00002f63: DUP10 00002f64: EQ 00002f65: PUSH2 0x2ff0 00002f68: JUMPI 00002f69: PUSH1 0x40 00002f6b: MLOAD 00002f6c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002f8d: DUP2 00002f8e: MSTORE 00002f8f: PUSH1 0x20 00002f91: PUSH1 0x04 00002f93: DUP3 00002f94: ADD 00002f95: MSTORE 00002f96: PUSH1 0x38 00002f98: PUSH1 0x24 00002f9a: DUP3 00002f9b: ADD 00002f9c: MSTORE 00002f9d: PUSH32 0x4d65726b6c65547269653a2076616c7565206e6f6465206d757374206265206c 00002fbe: PUSH1 0x44 00002fc0: DUP3 00002fc1: ADD 00002fc2: MSTORE 00002fc3: PUSH32 0x617374206e6f646520696e2070726f6f6620286c656166290000000000000000 00002fe4: PUSH1 0x64 00002fe6: DUP3 00002fe7: ADD 00002fe8: MSTORE 00002fe9: PUSH1 0x84 00002feb: ADD 00002fec: PUSH2 0x0622 00002fef: JUMP 00002ff0: JUMPDEST 00002ff1: SWAP13 00002ff2: POP 00002ff3: PUSH2 0x2619 00002ff6: SWAP12 00002ff7: POP 00002ff8: POP 00002ff9: POP 00002ffa: POP 00002ffb: POP 00002ffc: POP 00002ffd: POP 00002ffe: POP 00002fff: POP 00003000: POP 00003001: POP 00003002: POP 00003003: JUMP 00003004: JUMPDEST 00003005: PUSH1 0xff 00003007: DUP6 00003008: AND 00003009: ISZERO 0000300a: DUP1 0000300b: PUSH2 0x3017 0000300e: JUMPI 0000300f: POP 00003010: PUSH1 0xff 00003012: DUP6 00003013: AND 00003014: PUSH1 0x01 00003016: EQ 00003017: JUMPDEST 00003018: ISZERO 00003019: PUSH2 0x3056 0000301c: JUMPI 0000301d: PUSH2 0x3043 00003020: DUP8 00003021: PUSH1 0x20 00003023: ADD 00003024: MLOAD 00003025: PUSH1 0x01 00003027: DUP2 00003028: MLOAD 00003029: DUP2 0000302a: LT 0000302b: PUSH2 0x3036 0000302e: JUMPI 0000302f: PUSH2 0x3036 00003032: PUSH2 0x57b8 00003035: JUMP 00003036: JUMPDEST 00003037: PUSH1 0x20 00003039: MUL 0000303a: PUSH1 0x20 0000303c: ADD 0000303d: ADD 0000303e: MLOAD 0000303f: PUSH2 0x3a7a 00003042: JUMP 00003043: JUMPDEST 00003044: SWAP10 00003045: POP 00003046: PUSH2 0x304f 00003049: DUP2 0000304a: DUP11 0000304b: PUSH2 0x57a0 0000304e: JUMP 0000304f: JUMPDEST 00003050: SWAP9 00003051: POP 00003052: PUSH2 0x30de 00003055: JUMP 00003056: JUMPDEST 00003057: PUSH1 0x40 00003059: MLOAD 0000305a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000307b: DUP2 0000307c: MSTORE 0000307d: PUSH1 0x20 0000307f: PUSH1 0x04 00003081: DUP3 00003082: ADD 00003083: MSTORE 00003084: PUSH1 0x32 00003086: PUSH1 0x24 00003088: DUP3 00003089: ADD 0000308a: MSTORE 0000308b: PUSH32 0x4d65726b6c65547269653a2072656365697665642061206e6f64652077697468 000030ac: PUSH1 0x44 000030ae: DUP3 000030af: ADD 000030b0: MSTORE 000030b1: PUSH32 0x20616e20756e6b6e6f776e207072656669780000000000000000000000000000 000030d2: PUSH1 0x64 000030d4: DUP3 000030d5: ADD 000030d6: MSTORE 000030d7: PUSH1 0x84 000030d9: ADD 000030da: PUSH2 0x0622 000030dd: JUMP 000030de: JUMPDEST 000030df: POP 000030e0: POP 000030e1: POP 000030e2: POP 000030e3: POP 000030e4: POP 000030e5: PUSH2 0x3171 000030e8: JUMP 000030e9: JUMPDEST 000030ea: PUSH1 0x40 000030ec: MLOAD 000030ed: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000310e: DUP2 0000310f: MSTORE 00003110: PUSH1 0x20 00003112: PUSH1 0x04 00003114: DUP3 00003115: ADD 00003116: MSTORE 00003117: PUSH1 0x28 00003119: PUSH1 0x24 0000311b: DUP3 0000311c: ADD 0000311d: MSTORE 0000311e: PUSH32 0x4d65726b6c65547269653a20726563656976656420616e20756e706172736561 0000313f: PUSH1 0x44 00003141: DUP3 00003142: ADD 00003143: MSTORE 00003144: PUSH32 0x626c65206e6f6465000000000000000000000000000000000000000000000000 00003165: PUSH1 0x64 00003167: DUP3 00003168: ADD 00003169: MSTORE 0000316a: PUSH1 0x84 0000316c: ADD 0000316d: PUSH2 0x0622 00003170: JUMP 00003171: JUMPDEST 00003172: POP 00003173: DUP1 00003174: PUSH2 0x317c 00003177: DUP2 00003178: PUSH2 0x5754 0000317b: JUMP 0000317c: JUMPDEST 0000317d: SWAP2 0000317e: POP 0000317f: POP 00003180: PUSH2 0x2836 00003183: JUMP 00003184: JUMPDEST 00003185: POP 00003186: PUSH1 0x40 00003188: MLOAD 00003189: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000031aa: DUP2 000031ab: MSTORE 000031ac: PUSH1 0x20 000031ae: PUSH1 0x04 000031b0: DUP3 000031b1: ADD 000031b2: MSTORE 000031b3: PUSH1 0x25 000031b5: PUSH1 0x24 000031b7: DUP3 000031b8: ADD 000031b9: MSTORE 000031ba: PUSH32 0x4d65726b6c65547269653a2072616e206f7574206f662070726f6f6620656c65 000031db: PUSH1 0x44 000031dd: DUP3 000031de: ADD 000031df: MSTORE 000031e0: PUSH32 0x6d656e7473000000000000000000000000000000000000000000000000000000 00003201: PUSH1 0x64 00003203: DUP3 00003204: ADD 00003205: MSTORE 00003206: PUSH1 0x84 00003208: ADD 00003209: PUSH2 0x0622 0000320c: JUMP 0000320d: JUMPDEST 0000320e: PUSH1 0x00 00003210: DUP1 00003211: DUP3 00003212: SGT 00003213: PUSH2 0x3278 00003216: JUMPI 00003217: PUSH1 0x40 00003219: MLOAD 0000321a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000323b: DUP2 0000323c: MSTORE 0000323d: PUSH1 0x20 0000323f: PUSH1 0x04 00003241: DUP3 00003242: ADD 00003243: MSTORE 00003244: PUSH1 0x09 00003246: PUSH1 0x24 00003248: DUP3 00003249: ADD 0000324a: MSTORE 0000324b: PUSH32 0x554e444546494e45440000000000000000000000000000000000000000000000 0000326c: PUSH1 0x44 0000326e: DUP3 0000326f: ADD 00003270: MSTORE 00003271: PUSH1 0x64 00003273: ADD 00003274: PUSH2 0x0622 00003277: JUMP 00003278: JUMPDEST 00003279: PUSH1 0x00 0000327b: PUSH1 0x60 0000327d: PUSH2 0x3285 00003280: DUP5 00003281: PUSH2 0x3ba8 00003284: JUMP 00003285: JUMPDEST 00003286: SUB 00003287: PUSH1 0x9f 00003289: DUP2 0000328a: DUP2 0000328b: SUB 0000328c: SWAP5 0000328d: SWAP1 0000328e: SWAP5 0000328f: SHL 00003290: SWAP1 00003291: SWAP4 00003292: SHR 00003293: PUSH13 0x465772b2bbbb5f824b15207a30 000032a1: DUP2 000032a2: ADD 000032a3: DUP2 000032a4: MUL 000032a5: PUSH1 0x60 000032a7: SWAP1 000032a8: DUP2 000032a9: SAR 000032aa: PUSH14 0x0388eaa27412d5aca026815d636e 000032b9: ADD 000032ba: DUP3 000032bb: MUL 000032bc: DUP2 000032bd: SAR 000032be: PUSH14 0x0df99ac502031bf953eff472fdcc 000032cd: ADD 000032ce: DUP3 000032cf: MUL 000032d0: DUP2 000032d1: SAR 000032d2: PUSH14 0x13cdffb29d51d99322bdff5f2211 000032e1: ADD 000032e2: DUP3 000032e3: MUL 000032e4: DUP2 000032e5: SAR 000032e6: PUSH14 0x0a0f742023def783a307a986912e 000032f5: ADD 000032f6: DUP3 000032f7: MUL 000032f8: DUP2 000032f9: SAR 000032fa: PUSH14 0x01920d8043ca89b5239253284e42 00003309: ADD 0000330a: DUP3 0000330b: MUL 0000330c: DUP2 0000330d: SAR 0000330e: PUSH13 0x0b7a86d7375468fac667a0a527 0000331c: ADD 0000331d: PUSH13 0x29508e458543d8aa4df2abee78 0000332b: DUP4 0000332c: ADD 0000332d: DUP4 0000332e: MUL 0000332f: DUP3 00003330: SAR 00003331: PUSH14 0x0139601a2efabe717e604cbb4894 00003340: ADD 00003341: DUP4 00003342: MUL 00003343: DUP3 00003344: SAR 00003345: PUSH14 0x02247f7a7b6594320649aa03aba1 00003354: ADD 00003355: DUP4 00003356: MUL 00003357: DUP3 00003358: SAR 00003359: PUSH32 0xffffffffffffffffffffffffffffffffffffff73c0c716a594e00d54e3c4cbc9 0000337a: ADD 0000337b: DUP4 0000337c: MUL 0000337d: DUP3 0000337e: SAR 0000337f: PUSH32 0xfffffffffffffffffffffffffffffffffffffdc7b88c420e53a9890533129f6f 000033a0: ADD 000033a1: DUP4 000033a2: MUL 000033a3: SWAP1 000033a4: SWAP2 000033a5: SAR 000033a6: PUSH32 0xffffffffffffffffffffffffffffffffffffff465fda27eb4d63ded474e5f832 000033c7: ADD 000033c8: SWAP1 000033c9: SWAP2 000033ca: MUL 000033cb: PUSH32 0xfffffffffffffff5f6af8f7b3396644f18e15796000000000000000000000000 000033ec: ADD 000033ed: SDIV 000033ee: PUSH18 0x1340daa0d5f769dba1915cef59f0815a5506 00003401: MUL 00003402: PUSH30 0x0267a36c0c95b3975ab3ee5b203a7614a3f75373f047d803ae7b6687f2b3 00003421: SWAP4 00003422: SWAP1 00003423: SWAP4 00003424: MUL 00003425: SWAP3 00003426: SWAP1 00003427: SWAP3 00003428: ADD 00003429: PUSH30 0x57115e47018c7177eebf7cd370a3356a1b7863008a5ae8028c72b8864284 00003448: ADD 00003449: PUSH1 0xae 0000344b: SAR 0000344c: SWAP3 0000344d: SWAP2 0000344e: POP 0000344f: POP 00003450: JUMP 00003451: JUMPDEST 00003452: PUSH1 0x00 00003454: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffdb731c958f34d94c1 00003475: DUP3 00003476: SGT 00003477: PUSH2 0x3482 0000347a: JUMPI 0000347b: POP 0000347c: PUSH1 0x00 0000347e: SWAP2 0000347f: SWAP1 00003480: POP 00003481: JUMP 00003482: JUMPDEST 00003483: PUSH9 0x0755bf798b4a1bf1e5 0000348d: DUP3 0000348e: SLT 0000348f: PUSH2 0x34f4 00003492: JUMPI 00003493: PUSH1 0x40 00003495: MLOAD 00003496: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000034b7: DUP2 000034b8: MSTORE 000034b9: PUSH1 0x20 000034bb: PUSH1 0x04 000034bd: DUP3 000034be: ADD 000034bf: MSTORE 000034c0: PUSH1 0x0c 000034c2: PUSH1 0x24 000034c4: DUP3 000034c5: ADD 000034c6: MSTORE 000034c7: PUSH32 0x4558505f4f564552464c4f570000000000000000000000000000000000000000 000034e8: PUSH1 0x44 000034ea: DUP3 000034eb: ADD 000034ec: MSTORE 000034ed: PUSH1 0x64 000034ef: ADD 000034f0: PUSH2 0x0622 000034f3: JUMP 000034f4: JUMPDEST 000034f5: PUSH6 0x03782dace9d9 000034fc: PUSH1 0x4e 000034fe: DUP4 000034ff: SWAP1 00003500: SHL 00003501: SDIV 00003502: SWAP2 00003503: POP 00003504: PUSH1 0x00 00003506: PUSH1 0x60 00003508: PUSH12 0xb17217f7d1cf79abc9e3b398 00003515: DUP5 00003516: DUP3 00003517: SHL 00003518: SDIV 00003519: PUSH12 0x800000000000000000000000 00003526: ADD 00003527: SWAP1 00003528: SAR 00003529: PUSH12 0xb17217f7d1cf79abc9e3b398 00003536: DUP2 00003537: MUL 00003538: SWAP1 00003539: SWAP4 0000353a: SUB 0000353b: PUSH32 0xffffffffffffffffffffffffffffffffffffffdbf3ccf1604d263450f02a5504 0000355c: DUP2 0000355d: ADD 0000355e: DUP2 0000355f: MUL 00003560: PUSH1 0x60 00003562: SWAP1 00003563: DUP2 00003564: SAR 00003565: PUSH14 0x0277594991cfc85f6e2461837cd9 00003574: ADD 00003575: DUP3 00003576: MUL 00003577: DUP2 00003578: SAR 00003579: PUSH32 0xffffffffffffffffffffffffffffffffffffe5adedaa1cb095af9e4da10e363c 0000359a: ADD 0000359b: DUP3 0000359c: MUL 0000359d: DUP2 0000359e: SAR 0000359f: PUSH14 0xb1bbb201f443cf962f1a1d3db4a5 000035ae: ADD 000035af: DUP3 000035b0: MUL 000035b1: DUP2 000035b2: SAR 000035b3: PUSH32 0xfffffffffffffffffffffffffffffffffffd38dc772608b0ae56cce01296c0eb 000035d4: ADD 000035d5: DUP3 000035d6: MUL 000035d7: DUP2 000035d8: SAR 000035d9: PUSH15 0x05180bb14799ab47a8a8cb2a527d57 000035e9: ADD 000035ea: PUSH14 0x02d16720577bd19bf614176fe9ea 000035f9: PUSH13 0x10fe68e7fd37d0007b713f7650 00003607: DUP5 00003608: ADD 00003609: DUP5 0000360a: MUL 0000360b: DUP4 0000360c: SAR 0000360d: SWAP1 0000360e: DUP2 0000360f: ADD 00003610: SWAP1 00003611: DUP5 00003612: ADD 00003613: PUSH32 0xfffffffffffffffffffffffffffffffffffffe2c69812cf03b0763fd454a8f7e 00003634: ADD 00003635: MUL 00003636: SWAP1 00003637: SWAP2 00003638: SAR 00003639: PUSH15 0x0587f503bb6ea29d25fcb740196450 00003649: ADD 0000364a: SWAP1 0000364b: SWAP2 0000364c: MUL 0000364d: PUSH26 0xd835ebba824c98fb31b83b2ca45c000000000000000000000000 00003668: ADD 00003669: SDIV 0000366a: PUSH21 0x029d9dc38563c32e5c2f6dc192ee70ef65f9978af3 00003680: MUL 00003681: PUSH1 0xc3 00003683: SWAP4 00003684: SWAP1 00003685: SWAP4 00003686: SUB 00003687: SWAP3 00003688: SWAP1 00003689: SWAP3 0000368a: SHR 0000368b: SWAP3 0000368c: SWAP2 0000368d: POP 0000368e: POP 0000368f: JUMP 00003690: JUMPDEST 00003691: DUP1 00003692: MLOAD 00003693: PUSH1 0x60 00003695: SWAP1 00003696: PUSH1 0x00 00003698: DUP2 00003699: PUSH8 0xffffffffffffffff 000036a2: DUP2 000036a3: GT 000036a4: ISZERO 000036a5: PUSH2 0x36b0 000036a8: JUMPI 000036a9: PUSH2 0x36b0 000036ac: PUSH2 0x4cda 000036af: JUMP 000036b0: JUMPDEST 000036b1: PUSH1 0x40 000036b3: MLOAD 000036b4: SWAP1 000036b5: DUP1 000036b6: DUP3 000036b7: MSTORE 000036b8: DUP1 000036b9: PUSH1 0x20 000036bb: MUL 000036bc: PUSH1 0x20 000036be: ADD 000036bf: DUP3 000036c0: ADD 000036c1: PUSH1 0x40 000036c3: MSTORE 000036c4: DUP1 000036c5: ISZERO 000036c6: PUSH2 0x36f5 000036c9: JUMPI 000036ca: DUP2 000036cb: PUSH1 0x20 000036cd: ADD 000036ce: JUMPDEST 000036cf: PUSH1 0x40 000036d1: DUP1 000036d2: MLOAD 000036d3: DUP1 000036d4: DUP3 000036d5: ADD 000036d6: SWAP1 000036d7: SWAP2 000036d8: MSTORE 000036d9: PUSH1 0x60 000036db: DUP1 000036dc: DUP3 000036dd: MSTORE 000036de: PUSH1 0x20 000036e0: DUP3 000036e1: ADD 000036e2: MSTORE 000036e3: DUP2 000036e4: MSTORE 000036e5: PUSH1 0x20 000036e7: ADD 000036e8: SWAP1 000036e9: PUSH1 0x01 000036eb: SWAP1 000036ec: SUB 000036ed: SWAP1 000036ee: DUP2 000036ef: PUSH2 0x36ce 000036f2: JUMPI 000036f3: SWAP1 000036f4: POP 000036f5: JUMPDEST 000036f6: POP 000036f7: SWAP1 000036f8: POP 000036f9: PUSH1 0x00 000036fb: JUMPDEST 000036fc: DUP3 000036fd: DUP2 000036fe: LT 000036ff: ISZERO 00003700: PUSH2 0x3777 00003703: JUMPI 00003704: PUSH1 0x40 00003706: MLOAD 00003707: DUP1 00003708: PUSH1 0x40 0000370a: ADD 0000370b: PUSH1 0x40 0000370d: MSTORE 0000370e: DUP1 0000370f: DUP7 00003710: DUP4 00003711: DUP2 00003712: MLOAD 00003713: DUP2 00003714: LT 00003715: PUSH2 0x3720 00003718: JUMPI 00003719: PUSH2 0x3720 0000371c: PUSH2 0x57b8 0000371f: JUMP 00003720: JUMPDEST 00003721: PUSH1 0x20 00003723: MUL 00003724: PUSH1 0x20 00003726: ADD 00003727: ADD 00003728: MLOAD 00003729: DUP2 0000372a: MSTORE 0000372b: PUSH1 0x20 0000372d: ADD 0000372e: PUSH2 0x374f 00003731: DUP8 00003732: DUP5 00003733: DUP2 00003734: MLOAD 00003735: DUP2 00003736: LT 00003737: PUSH2 0x3742 0000373a: JUMPI 0000373b: PUSH2 0x3742 0000373e: PUSH2 0x57b8 00003741: JUMP 00003742: JUMPDEST 00003743: PUSH1 0x20 00003745: MUL 00003746: PUSH1 0x20 00003748: ADD 00003749: ADD 0000374a: MLOAD 0000374b: PUSH2 0x3c7e 0000374e: JUMP 0000374f: JUMPDEST 00003750: DUP2 00003751: MSTORE 00003752: POP 00003753: DUP3 00003754: DUP3 00003755: DUP2 00003756: MLOAD 00003757: DUP2 00003758: LT 00003759: PUSH2 0x3764 0000375c: JUMPI 0000375d: PUSH2 0x3764 00003760: PUSH2 0x57b8 00003763: JUMP 00003764: JUMPDEST 00003765: PUSH1 0x20 00003767: SWAP1 00003768: DUP2 00003769: MUL 0000376a: SWAP2 0000376b: SWAP1 0000376c: SWAP2 0000376d: ADD 0000376e: ADD 0000376f: MSTORE 00003770: PUSH1 0x01 00003772: ADD 00003773: PUSH2 0x36fb 00003776: JUMP 00003777: JUMPDEST 00003778: POP 00003779: SWAP4 0000377a: SWAP3 0000377b: POP 0000377c: POP 0000377d: POP 0000377e: JUMP 0000377f: JUMPDEST 00003780: DUP1 00003781: MLOAD 00003782: PUSH1 0x60 00003784: SWAP1 00003785: PUSH1 0x00 00003787: PUSH2 0x3791 0000378a: DUP3 0000378b: PUSH1 0x02 0000378d: PUSH2 0x56ac 00003790: JUMP 00003791: JUMPDEST 00003792: PUSH8 0xffffffffffffffff 0000379b: DUP2 0000379c: GT 0000379d: ISZERO 0000379e: PUSH2 0x37a9 000037a1: JUMPI 000037a2: PUSH2 0x37a9 000037a5: PUSH2 0x4cda 000037a8: JUMP 000037a9: JUMPDEST 000037aa: PUSH1 0x40 000037ac: MLOAD 000037ad: SWAP1 000037ae: DUP1 000037af: DUP3 000037b0: MSTORE 000037b1: DUP1 000037b2: PUSH1 0x1f 000037b4: ADD 000037b5: PUSH1 0x1f 000037b7: NOT 000037b8: AND 000037b9: PUSH1 0x20 000037bb: ADD 000037bc: DUP3 000037bd: ADD 000037be: PUSH1 0x40 000037c0: MSTORE 000037c1: DUP1 000037c2: ISZERO 000037c3: PUSH2 0x37d3 000037c6: JUMPI 000037c7: PUSH1 0x20 000037c9: DUP3 000037ca: ADD 000037cb: DUP2 000037cc: DUP1 000037cd: CALLDATASIZE 000037ce: DUP4 000037cf: CALLDATACOPY 000037d0: ADD 000037d1: SWAP1 000037d2: POP 000037d3: JUMPDEST 000037d4: POP 000037d5: SWAP1 000037d6: POP 000037d7: PUSH1 0x00 000037d9: DUP1 000037da: JUMPDEST 000037db: DUP4 000037dc: DUP2 000037dd: LT 000037de: ISZERO 000037df: PUSH2 0x3910 000037e2: JUMPI 000037e3: DUP6 000037e4: DUP2 000037e5: DUP2 000037e6: MLOAD 000037e7: DUP2 000037e8: LT 000037e9: PUSH2 0x37f4 000037ec: JUMPI 000037ed: PUSH2 0x37f4 000037f0: PUSH2 0x57b8 000037f3: JUMP 000037f4: JUMPDEST 000037f5: PUSH1 0x20 000037f7: SWAP2 000037f8: ADD 000037f9: ADD 000037fa: MLOAD 000037fb: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 0000381c: DUP2 0000381d: AND 0000381e: SWAP3 0000381f: POP 00003820: PUSH1 0x04 00003822: SHR 00003823: PUSH32 0x0ff0000000000000000000000000000000000000000000000000000000000000 00003844: AND 00003845: DUP4 00003846: PUSH2 0x3850 00003849: DUP4 0000384a: PUSH1 0x02 0000384c: PUSH2 0x56ac 0000384f: JUMP 00003850: JUMPDEST 00003851: DUP2 00003852: MLOAD 00003853: DUP2 00003854: LT 00003855: PUSH2 0x3860 00003858: JUMPI 00003859: PUSH2 0x3860 0000385c: PUSH2 0x57b8 0000385f: JUMP 00003860: JUMPDEST 00003861: PUSH1 0x20 00003863: ADD 00003864: ADD 00003865: SWAP1 00003866: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00003886: NOT 00003887: AND 00003888: SWAP1 00003889: DUP2 0000388a: PUSH1 0x00 0000388c: BYTE 0000388d: SWAP1 0000388e: MSTORE8 0000388f: POP 00003890: PUSH32 0x0f00000000000000000000000000000000000000000000000000000000000000 000038b1: DUP3 000038b2: AND 000038b3: DUP4 000038b4: PUSH2 0x38be 000038b7: DUP4 000038b8: PUSH1 0x02 000038ba: PUSH2 0x56ac 000038bd: JUMP 000038be: JUMPDEST 000038bf: PUSH2 0x38c9 000038c2: SWAP1 000038c3: PUSH1 0x01 000038c5: PUSH2 0x57a0 000038c8: JUMP 000038c9: JUMPDEST 000038ca: DUP2 000038cb: MLOAD 000038cc: DUP2 000038cd: LT 000038ce: PUSH2 0x38d9 000038d1: JUMPI 000038d2: PUSH2 0x38d9 000038d5: PUSH2 0x57b8 000038d8: JUMP 000038d9: JUMPDEST 000038da: PUSH1 0x20 000038dc: ADD 000038dd: ADD 000038de: SWAP1 000038df: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 000038ff: NOT 00003900: AND 00003901: SWAP1 00003902: DUP2 00003903: PUSH1 0x00 00003905: BYTE 00003906: SWAP1 00003907: MSTORE8 00003908: POP 00003909: PUSH1 0x01 0000390b: ADD 0000390c: PUSH2 0x37da 0000390f: JUMP 00003910: JUMPDEST 00003911: POP 00003912: SWAP1 00003913: SWAP5 00003914: SWAP4 00003915: POP 00003916: POP 00003917: POP 00003918: POP 00003919: JUMP 0000391a: JUMPDEST 0000391b: PUSH1 0x60 0000391d: PUSH1 0x00 0000391f: DUP1 00003920: PUSH1 0x00 00003922: PUSH2 0x392a 00003925: DUP6 00003926: PUSH2 0x3c91 00003929: JUMP 0000392a: JUMPDEST 0000392b: SWAP2 0000392c: SWAP5 0000392d: POP 0000392e: SWAP3 0000392f: POP 00003930: SWAP1 00003931: POP 00003932: PUSH1 0x00 00003934: DUP2 00003935: PUSH1 0x01 00003937: DUP2 00003938: GT 00003939: ISZERO 0000393a: PUSH2 0x3945 0000393d: JUMPI 0000393e: PUSH2 0x3945 00003941: PUSH2 0x58f0 00003944: JUMP 00003945: JUMPDEST 00003946: EQ 00003947: PUSH2 0x39d2 0000394a: JUMPI 0000394b: PUSH1 0x40 0000394d: MLOAD 0000394e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000396f: DUP2 00003970: MSTORE 00003971: PUSH1 0x20 00003973: PUSH1 0x04 00003975: DUP3 00003976: ADD 00003977: MSTORE 00003978: PUSH1 0x39 0000397a: PUSH1 0x24 0000397c: DUP3 0000397d: ADD 0000397e: MSTORE 0000397f: PUSH32 0x524c505265616465723a206465636f646564206974656d207479706520666f72 000039a0: PUSH1 0x44 000039a2: DUP3 000039a3: ADD 000039a4: MSTORE 000039a5: PUSH32 0x206279746573206973206e6f7420612064617461206974656d00000000000000 000039c6: PUSH1 0x64 000039c8: DUP3 000039c9: ADD 000039ca: MSTORE 000039cb: PUSH1 0x84 000039cd: ADD 000039ce: PUSH2 0x0622 000039d1: JUMP 000039d2: JUMPDEST 000039d3: PUSH2 0x39dc 000039d6: DUP3 000039d7: DUP5 000039d8: PUSH2 0x57a0 000039db: JUMP 000039dc: JUMPDEST 000039dd: DUP6 000039de: MLOAD 000039df: EQ 000039e0: PUSH2 0x3a6b 000039e3: JUMPI 000039e4: PUSH1 0x40 000039e6: MLOAD 000039e7: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003a08: DUP2 00003a09: MSTORE 00003a0a: PUSH1 0x20 00003a0c: PUSH1 0x04 00003a0e: DUP3 00003a0f: ADD 00003a10: MSTORE 00003a11: PUSH1 0x34 00003a13: PUSH1 0x24 00003a15: DUP3 00003a16: ADD 00003a17: MSTORE 00003a18: PUSH32 0x524c505265616465723a2062797465732076616c756520636f6e7461696e7320 00003a39: PUSH1 0x44 00003a3b: DUP3 00003a3c: ADD 00003a3d: MSTORE 00003a3e: PUSH32 0x616e20696e76616c69642072656d61696e646572000000000000000000000000 00003a5f: PUSH1 0x64 00003a61: DUP3 00003a62: ADD 00003a63: MSTORE 00003a64: PUSH1 0x84 00003a66: ADD 00003a67: PUSH2 0x0622 00003a6a: JUMP 00003a6b: JUMPDEST 00003a6c: PUSH2 0x270e 00003a6f: DUP6 00003a70: PUSH1 0x20 00003a72: ADD 00003a73: MLOAD 00003a74: DUP5 00003a75: DUP5 00003a76: PUSH2 0x46fe 00003a79: JUMP 00003a7a: JUMPDEST 00003a7b: PUSH1 0x60 00003a7d: PUSH1 0x20 00003a7f: DUP3 00003a80: PUSH1 0x00 00003a82: ADD 00003a83: MLOAD 00003a84: LT 00003a85: PUSH2 0x3a96 00003a88: JUMPI 00003a89: PUSH2 0x3a91 00003a8c: DUP3 00003a8d: PUSH2 0x391a 00003a90: JUMP 00003a91: JUMPDEST 00003a92: PUSH2 0x110c 00003a95: JUMP 00003a96: JUMPDEST 00003a97: PUSH2 0x110c 00003a9a: DUP3 00003a9b: PUSH2 0x479f 00003a9e: JUMP 00003a9f: JUMPDEST 00003aa0: PUSH1 0x60 00003aa2: PUSH2 0x110c 00003aa5: PUSH2 0x3abe 00003aa8: DUP4 00003aa9: PUSH1 0x20 00003aab: ADD 00003aac: MLOAD 00003aad: PUSH1 0x00 00003aaf: DUP2 00003ab0: MLOAD 00003ab1: DUP2 00003ab2: LT 00003ab3: PUSH2 0x2b39 00003ab6: JUMPI 00003ab7: PUSH2 0x2b39 00003aba: PUSH2 0x57b8 00003abd: JUMP 00003abe: JUMPDEST 00003abf: PUSH2 0x377f 00003ac2: JUMP 00003ac3: JUMPDEST 00003ac4: PUSH1 0x60 00003ac6: DUP3 00003ac7: MLOAD 00003ac8: DUP3 00003ac9: LT 00003aca: PUSH2 0x3ae2 00003acd: JUMPI 00003ace: POP 00003acf: PUSH1 0x40 00003ad1: DUP1 00003ad2: MLOAD 00003ad3: PUSH1 0x20 00003ad5: DUP2 00003ad6: ADD 00003ad7: SWAP1 00003ad8: SWAP2 00003ad9: MSTORE 00003ada: PUSH1 0x00 00003adc: DUP2 00003add: MSTORE 00003ade: PUSH2 0x110c 00003ae1: JUMP 00003ae2: JUMPDEST 00003ae3: PUSH2 0x2619 00003ae6: DUP4 00003ae7: DUP4 00003ae8: DUP5 00003ae9: DUP7 00003aea: MLOAD 00003aeb: PUSH2 0x3af4 00003aee: SWAP2 00003aef: SWAP1 00003af0: PUSH2 0x545a 00003af3: JUMP 00003af4: JUMPDEST 00003af5: PUSH2 0x47b5 00003af8: JUMP 00003af9: JUMPDEST 00003afa: PUSH1 0x00 00003afc: DUP1 00003afd: PUSH1 0x00 00003aff: DUP4 00003b00: MLOAD 00003b01: DUP6 00003b02: MLOAD 00003b03: LT 00003b04: PUSH2 0x3b0e 00003b07: JUMPI 00003b08: DUP4 00003b09: MLOAD 00003b0a: PUSH2 0x3b11 00003b0d: JUMP 00003b0e: JUMPDEST 00003b0f: DUP5 00003b10: MLOAD 00003b11: JUMPDEST 00003b12: SWAP1 00003b13: POP 00003b14: JUMPDEST 00003b15: DUP1 00003b16: DUP3 00003b17: LT 00003b18: DUP1 00003b19: ISZERO 00003b1a: PUSH2 0x3b98 00003b1d: JUMPI 00003b1e: POP 00003b1f: DUP4 00003b20: DUP3 00003b21: DUP2 00003b22: MLOAD 00003b23: DUP2 00003b24: LT 00003b25: PUSH2 0x3b30 00003b28: JUMPI 00003b29: PUSH2 0x3b30 00003b2c: PUSH2 0x57b8 00003b2f: JUMP 00003b30: JUMPDEST 00003b31: PUSH1 0x20 00003b33: ADD 00003b34: ADD 00003b35: MLOAD 00003b36: PUSH1 0xf8 00003b38: SHR 00003b39: PUSH1 0xf8 00003b3b: SHL 00003b3c: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00003b5c: NOT 00003b5d: AND 00003b5e: DUP6 00003b5f: DUP4 00003b60: DUP2 00003b61: MLOAD 00003b62: DUP2 00003b63: LT 00003b64: PUSH2 0x3b6f 00003b67: JUMPI 00003b68: PUSH2 0x3b6f 00003b6b: PUSH2 0x57b8 00003b6e: JUMP 00003b6f: JUMPDEST 00003b70: ADD 00003b71: PUSH1 0x20 00003b73: ADD 00003b74: MLOAD 00003b75: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 00003b96: AND 00003b97: EQ 00003b98: JUMPDEST 00003b99: ISZERO 00003b9a: PUSH2 0x3777 00003b9d: JUMPI 00003b9e: DUP2 00003b9f: PUSH1 0x01 00003ba1: ADD 00003ba2: SWAP2 00003ba3: POP 00003ba4: PUSH2 0x3b14 00003ba7: JUMP 00003ba8: JUMPDEST 00003ba9: PUSH1 0x00 00003bab: DUP1 00003bac: DUP3 00003bad: GT 00003bae: PUSH2 0x3c13 00003bb1: JUMPI 00003bb2: PUSH1 0x40 00003bb4: MLOAD 00003bb5: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003bd6: DUP2 00003bd7: MSTORE 00003bd8: PUSH1 0x20 00003bda: PUSH1 0x04 00003bdc: DUP3 00003bdd: ADD 00003bde: MSTORE 00003bdf: PUSH1 0x09 00003be1: PUSH1 0x24 00003be3: DUP3 00003be4: ADD 00003be5: MSTORE 00003be6: PUSH32 0x554e444546494e45440000000000000000000000000000000000000000000000 00003c07: PUSH1 0x44 00003c09: DUP3 00003c0a: ADD 00003c0b: MSTORE 00003c0c: PUSH1 0x64 00003c0e: ADD 00003c0f: PUSH2 0x0622 00003c12: JUMP 00003c13: JUMPDEST 00003c14: POP 00003c15: PUSH1 0x01 00003c17: PUSH16 0xffffffffffffffffffffffffffffffff 00003c28: DUP3 00003c29: GT 00003c2a: PUSH1 0x07 00003c2c: SHL 00003c2d: DUP3 00003c2e: DUP2 00003c2f: SHR 00003c30: PUSH8 0xffffffffffffffff 00003c39: LT 00003c3a: PUSH1 0x06 00003c3c: SHL 00003c3d: OR 00003c3e: DUP3 00003c3f: DUP2 00003c40: SHR 00003c41: PUSH4 0xffffffff 00003c46: LT 00003c47: PUSH1 0x05 00003c49: SHL 00003c4a: OR 00003c4b: DUP3 00003c4c: DUP2 00003c4d: SHR 00003c4e: PUSH2 0xffff 00003c51: LT 00003c52: PUSH1 0x04 00003c54: SHL 00003c55: OR 00003c56: DUP3 00003c57: DUP2 00003c58: SHR 00003c59: PUSH1 0xff 00003c5b: LT 00003c5c: PUSH1 0x03 00003c5e: SWAP1 00003c5f: DUP2 00003c60: SHL 00003c61: SWAP1 00003c62: SWAP2 00003c63: OR 00003c64: DUP4 00003c65: DUP2 00003c66: SHR 00003c67: PUSH1 0x0f 00003c69: LT 00003c6a: PUSH1 0x02 00003c6c: SHL 00003c6d: OR 00003c6e: DUP4 00003c6f: DUP2 00003c70: SHR 00003c71: SWAP1 00003c72: SWAP2 00003c73: LT 00003c74: DUP3 00003c75: SHL 00003c76: OR 00003c77: SWAP2 00003c78: DUP3 00003c79: SHR 00003c7a: GT 00003c7b: OR 00003c7c: SWAP1 00003c7d: JUMP 00003c7e: JUMPDEST 00003c7f: PUSH1 0x60 00003c81: PUSH2 0x110c 00003c84: PUSH2 0x3c8c 00003c87: DUP4 00003c88: PUSH2 0x498d 00003c8b: JUMP 00003c8c: JUMPDEST 00003c8d: PUSH2 0x4a76 00003c90: JUMP 00003c91: JUMPDEST 00003c92: PUSH1 0x00 00003c94: DUP1 00003c95: PUSH1 0x00 00003c97: DUP1 00003c98: DUP5 00003c99: PUSH1 0x00 00003c9b: ADD 00003c9c: MLOAD 00003c9d: GT 00003c9e: PUSH2 0x3d4f 00003ca1: JUMPI 00003ca2: PUSH1 0x40 00003ca4: MLOAD 00003ca5: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003cc6: DUP2 00003cc7: MSTORE 00003cc8: PUSH1 0x20 00003cca: PUSH1 0x04 00003ccc: DUP3 00003ccd: ADD 00003cce: MSTORE 00003ccf: PUSH1 0x4a 00003cd1: PUSH1 0x24 00003cd3: DUP3 00003cd4: ADD 00003cd5: MSTORE 00003cd6: PUSH32 0x524c505265616465723a206c656e677468206f6620616e20524c50206974656d 00003cf7: PUSH1 0x44 00003cf9: DUP3 00003cfa: ADD 00003cfb: MSTORE 00003cfc: PUSH32 0x206d7573742062652067726561746572207468616e207a65726f20746f206265 00003d1d: PUSH1 0x64 00003d1f: DUP3 00003d20: ADD 00003d21: MSTORE 00003d22: PUSH32 0x206465636f6461626c6500000000000000000000000000000000000000000000 00003d43: PUSH1 0x84 00003d45: DUP3 00003d46: ADD 00003d47: MSTORE 00003d48: PUSH1 0xa4 00003d4a: ADD 00003d4b: PUSH2 0x0622 00003d4e: JUMP 00003d4f: JUMPDEST 00003d50: PUSH1 0x20 00003d52: DUP5 00003d53: ADD 00003d54: MLOAD 00003d55: DUP1 00003d56: MLOAD 00003d57: PUSH1 0x00 00003d59: BYTE 00003d5a: PUSH1 0x7f 00003d5c: DUP2 00003d5d: GT 00003d5e: PUSH2 0x3d74 00003d61: JUMPI 00003d62: PUSH1 0x00 00003d64: PUSH1 0x01 00003d66: PUSH1 0x00 00003d68: SWAP5 00003d69: POP 00003d6a: SWAP5 00003d6b: POP 00003d6c: SWAP5 00003d6d: POP 00003d6e: POP 00003d6f: POP 00003d70: PUSH2 0x46f7 00003d73: JUMP 00003d74: JUMPDEST 00003d75: PUSH1 0xb7 00003d77: DUP2 00003d78: GT 00003d79: PUSH2 0x3f82 00003d7c: JUMPI 00003d7d: PUSH1 0x00 00003d7f: PUSH2 0x3d89 00003d82: PUSH1 0x80 00003d84: DUP4 00003d85: PUSH2 0x545a 00003d88: JUMP 00003d89: JUMPDEST 00003d8a: SWAP1 00003d8b: POP 00003d8c: DUP1 00003d8d: DUP8 00003d8e: PUSH1 0x00 00003d90: ADD 00003d91: MLOAD 00003d92: GT 00003d93: PUSH2 0x3e44 00003d96: JUMPI 00003d97: PUSH1 0x40 00003d99: MLOAD 00003d9a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003dbb: DUP2 00003dbc: MSTORE 00003dbd: PUSH1 0x20 00003dbf: PUSH1 0x04 00003dc1: DUP3 00003dc2: ADD 00003dc3: MSTORE 00003dc4: PUSH1 0x4e 00003dc6: PUSH1 0x24 00003dc8: DUP3 00003dc9: ADD 00003dca: MSTORE 00003dcb: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 00003dec: PUSH1 0x44 00003dee: DUP3 00003def: ADD 00003df0: MSTORE 00003df1: PUSH32 0x742062652067726561746572207468616e20737472696e67206c656e67746820 00003e12: PUSH1 0x64 00003e14: DUP3 00003e15: ADD 00003e16: MSTORE 00003e17: PUSH32 0x2873686f727420737472696e6729000000000000000000000000000000000000 00003e38: PUSH1 0x84 00003e3a: DUP3 00003e3b: ADD 00003e3c: MSTORE 00003e3d: PUSH1 0xa4 00003e3f: ADD 00003e40: PUSH2 0x0622 00003e43: JUMP 00003e44: JUMPDEST 00003e45: PUSH1 0x01 00003e47: DUP4 00003e48: DUP2 00003e49: ADD 00003e4a: MLOAD 00003e4b: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 00003e6c: AND 00003e6d: SWAP1 00003e6e: DUP3 00003e6f: EQ 00003e70: ISZERO 00003e71: DUP1 00003e72: PUSH2 0x3ebd 00003e75: JUMPI 00003e76: POP 00003e77: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 00003e98: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 00003eb9: DUP3 00003eba: AND 00003ebb: LT 00003ebc: ISZERO 00003ebd: JUMPDEST 00003ebe: PUSH2 0x3f6f 00003ec1: JUMPI 00003ec2: PUSH1 0x40 00003ec4: MLOAD 00003ec5: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003ee6: DUP2 00003ee7: MSTORE 00003ee8: PUSH1 0x20 00003eea: PUSH1 0x04 00003eec: DUP3 00003eed: ADD 00003eee: MSTORE 00003eef: PUSH1 0x4d 00003ef1: PUSH1 0x24 00003ef3: DUP3 00003ef4: ADD 00003ef5: MSTORE 00003ef6: PUSH32 0x524c505265616465723a20696e76616c6964207072656669782c2073696e676c 00003f17: PUSH1 0x44 00003f19: DUP3 00003f1a: ADD 00003f1b: MSTORE 00003f1c: PUSH32 0x652062797465203c203078383020617265206e6f742070726566697865642028 00003f3d: PUSH1 0x64 00003f3f: DUP3 00003f40: ADD 00003f41: MSTORE 00003f42: PUSH32 0x73686f727420737472696e672900000000000000000000000000000000000000 00003f63: PUSH1 0x84 00003f65: DUP3 00003f66: ADD 00003f67: MSTORE 00003f68: PUSH1 0xa4 00003f6a: ADD 00003f6b: PUSH2 0x0622 00003f6e: JUMP 00003f6f: JUMPDEST 00003f70: POP 00003f71: PUSH1 0x01 00003f73: SWAP6 00003f74: POP 00003f75: SWAP4 00003f76: POP 00003f77: PUSH1 0x00 00003f79: SWAP3 00003f7a: POP 00003f7b: PUSH2 0x46f7 00003f7e: SWAP2 00003f7f: POP 00003f80: POP 00003f81: JUMP 00003f82: JUMPDEST 00003f83: PUSH1 0xbf 00003f85: DUP2 00003f86: GT 00003f87: PUSH2 0x42d0 00003f8a: JUMPI 00003f8b: PUSH1 0x00 00003f8d: PUSH2 0x3f97 00003f90: PUSH1 0xb7 00003f92: DUP4 00003f93: PUSH2 0x545a 00003f96: JUMP 00003f97: JUMPDEST 00003f98: SWAP1 00003f99: POP 00003f9a: DUP1 00003f9b: DUP8 00003f9c: PUSH1 0x00 00003f9e: ADD 00003f9f: MLOAD 00003fa0: GT 00003fa1: PUSH2 0x4052 00003fa4: JUMPI 00003fa5: PUSH1 0x40 00003fa7: MLOAD 00003fa8: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003fc9: DUP2 00003fca: MSTORE 00003fcb: PUSH1 0x20 00003fcd: PUSH1 0x04 00003fcf: DUP3 00003fd0: ADD 00003fd1: MSTORE 00003fd2: PUSH1 0x51 00003fd4: PUSH1 0x24 00003fd6: DUP3 00003fd7: ADD 00003fd8: MSTORE 00003fd9: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 00003ffa: PUSH1 0x44 00003ffc: DUP3 00003ffd: ADD 00003ffe: MSTORE 00003fff: PUSH32 0x74206265203e207468616e206c656e677468206f6620737472696e67206c656e 00004020: PUSH1 0x64 00004022: DUP3 00004023: ADD 00004024: MSTORE 00004025: PUSH32 0x67746820286c6f6e6720737472696e6729000000000000000000000000000000 00004046: PUSH1 0x84 00004048: DUP3 00004049: ADD 0000404a: MSTORE 0000404b: PUSH1 0xa4 0000404d: ADD 0000404e: PUSH2 0x0622 00004051: JUMP 00004052: JUMPDEST 00004053: PUSH1 0x01 00004055: DUP4 00004056: ADD 00004057: MLOAD 00004058: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 00004079: AND 0000407a: PUSH1 0x00 0000407c: DUP2 0000407d: SWAP1 0000407e: SUB 0000407f: PUSH2 0x4130 00004082: JUMPI 00004083: PUSH1 0x40 00004085: MLOAD 00004086: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000040a7: DUP2 000040a8: MSTORE 000040a9: PUSH1 0x20 000040ab: PUSH1 0x04 000040ad: DUP3 000040ae: ADD 000040af: MSTORE 000040b0: PUSH1 0x4a 000040b2: PUSH1 0x24 000040b4: DUP3 000040b5: ADD 000040b6: MSTORE 000040b7: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 000040d8: PUSH1 0x44 000040da: DUP3 000040db: ADD 000040dc: MSTORE 000040dd: PUSH32 0x74206e6f74206861766520616e79206c656164696e67207a65726f7320286c6f 000040fe: PUSH1 0x64 00004100: DUP3 00004101: ADD 00004102: MSTORE 00004103: PUSH32 0x6e6720737472696e672900000000000000000000000000000000000000000000 00004124: PUSH1 0x84 00004126: DUP3 00004127: ADD 00004128: MSTORE 00004129: PUSH1 0xa4 0000412b: ADD 0000412c: PUSH2 0x0622 0000412f: JUMP 00004130: JUMPDEST 00004131: PUSH1 0x01 00004133: DUP5 00004134: ADD 00004135: MLOAD 00004136: PUSH1 0x08 00004138: DUP4 00004139: MUL 0000413a: PUSH2 0x0100 0000413d: SUB 0000413e: SHR 0000413f: PUSH1 0x37 00004141: DUP2 00004142: GT 00004143: PUSH2 0x41f4 00004146: JUMPI 00004147: PUSH1 0x40 00004149: MLOAD 0000414a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000416b: DUP2 0000416c: MSTORE 0000416d: PUSH1 0x20 0000416f: PUSH1 0x04 00004171: DUP3 00004172: ADD 00004173: MSTORE 00004174: PUSH1 0x48 00004176: PUSH1 0x24 00004178: DUP3 00004179: ADD 0000417a: MSTORE 0000417b: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 0000419c: PUSH1 0x44 0000419e: DUP3 0000419f: ADD 000041a0: MSTORE 000041a1: PUSH32 0x742062652067726561746572207468616e20353520627974657320286c6f6e67 000041c2: PUSH1 0x64 000041c4: DUP3 000041c5: ADD 000041c6: MSTORE 000041c7: PUSH32 0x20737472696e6729000000000000000000000000000000000000000000000000 000041e8: PUSH1 0x84 000041ea: DUP3 000041eb: ADD 000041ec: MSTORE 000041ed: PUSH1 0xa4 000041ef: ADD 000041f0: PUSH2 0x0622 000041f3: JUMP 000041f4: JUMPDEST 000041f5: PUSH2 0x41fe 000041f8: DUP2 000041f9: DUP5 000041fa: PUSH2 0x57a0 000041fd: JUMP 000041fe: JUMPDEST 000041ff: DUP10 00004200: MLOAD 00004201: GT 00004202: PUSH2 0x42b3 00004205: JUMPI 00004206: PUSH1 0x40 00004208: MLOAD 00004209: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000422a: DUP2 0000422b: MSTORE 0000422c: PUSH1 0x20 0000422e: PUSH1 0x04 00004230: DUP3 00004231: ADD 00004232: MSTORE 00004233: PUSH1 0x4c 00004235: PUSH1 0x24 00004237: DUP3 00004238: ADD 00004239: MSTORE 0000423a: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 0000425b: PUSH1 0x44 0000425d: DUP3 0000425e: ADD 0000425f: MSTORE 00004260: PUSH32 0x742062652067726561746572207468616e20746f74616c206c656e6774682028 00004281: PUSH1 0x64 00004283: DUP3 00004284: ADD 00004285: MSTORE 00004286: PUSH32 0x6c6f6e6720737472696e67290000000000000000000000000000000000000000 000042a7: PUSH1 0x84 000042a9: DUP3 000042aa: ADD 000042ab: MSTORE 000042ac: PUSH1 0xa4 000042ae: ADD 000042af: PUSH2 0x0622 000042b2: JUMP 000042b3: JUMPDEST 000042b4: PUSH2 0x42be 000042b7: DUP4 000042b8: PUSH1 0x01 000042ba: PUSH2 0x57a0 000042bd: JUMP 000042be: JUMPDEST 000042bf: SWAP8 000042c0: POP 000042c1: SWAP6 000042c2: POP 000042c3: PUSH1 0x00 000042c5: SWAP5 000042c6: POP 000042c7: PUSH2 0x46f7 000042ca: SWAP4 000042cb: POP 000042cc: POP 000042cd: POP 000042ce: POP 000042cf: JUMP 000042d0: JUMPDEST 000042d1: PUSH1 0xf7 000042d3: DUP2 000042d4: GT 000042d5: PUSH2 0x43b1 000042d8: JUMPI 000042d9: PUSH1 0x00 000042db: PUSH2 0x42e5 000042de: PUSH1 0xc0 000042e0: DUP4 000042e1: PUSH2 0x545a 000042e4: JUMP 000042e5: JUMPDEST 000042e6: SWAP1 000042e7: POP 000042e8: DUP1 000042e9: DUP8 000042ea: PUSH1 0x00 000042ec: ADD 000042ed: MLOAD 000042ee: GT 000042ef: PUSH2 0x43a0 000042f2: JUMPI 000042f3: PUSH1 0x40 000042f5: MLOAD 000042f6: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004317: DUP2 00004318: MSTORE 00004319: PUSH1 0x20 0000431b: PUSH1 0x04 0000431d: DUP3 0000431e: ADD 0000431f: MSTORE 00004320: PUSH1 0x4a 00004322: PUSH1 0x24 00004324: DUP3 00004325: ADD 00004326: MSTORE 00004327: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 00004348: PUSH1 0x44 0000434a: DUP3 0000434b: ADD 0000434c: MSTORE 0000434d: PUSH32 0x742062652067726561746572207468616e206c697374206c656e677468202873 0000436e: PUSH1 0x64 00004370: DUP3 00004371: ADD 00004372: MSTORE 00004373: PUSH32 0x686f7274206c6973742900000000000000000000000000000000000000000000 00004394: PUSH1 0x84 00004396: DUP3 00004397: ADD 00004398: MSTORE 00004399: PUSH1 0xa4 0000439b: ADD 0000439c: PUSH2 0x0622 0000439f: JUMP 000043a0: JUMPDEST 000043a1: PUSH1 0x01 000043a3: SWAP6 000043a4: POP 000043a5: SWAP4 000043a6: POP 000043a7: DUP5 000043a8: SWAP3 000043a9: POP 000043aa: PUSH2 0x46f7 000043ad: SWAP2 000043ae: POP 000043af: POP 000043b0: JUMP 000043b1: JUMPDEST 000043b2: PUSH1 0x00 000043b4: PUSH2 0x43be 000043b7: PUSH1 0xf7 000043b9: DUP4 000043ba: PUSH2 0x545a 000043bd: JUMP 000043be: JUMPDEST 000043bf: SWAP1 000043c0: POP 000043c1: DUP1 000043c2: DUP8 000043c3: PUSH1 0x00 000043c5: ADD 000043c6: MLOAD 000043c7: GT 000043c8: PUSH2 0x4479 000043cb: JUMPI 000043cc: PUSH1 0x40 000043ce: MLOAD 000043cf: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000043f0: DUP2 000043f1: MSTORE 000043f2: PUSH1 0x20 000043f4: PUSH1 0x04 000043f6: DUP3 000043f7: ADD 000043f8: MSTORE 000043f9: PUSH1 0x4d 000043fb: PUSH1 0x24 000043fd: DUP3 000043fe: ADD 000043ff: MSTORE 00004400: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 00004421: PUSH1 0x44 00004423: DUP3 00004424: ADD 00004425: MSTORE 00004426: PUSH32 0x74206265203e207468616e206c656e677468206f66206c697374206c656e6774 00004447: PUSH1 0x64 00004449: DUP3 0000444a: ADD 0000444b: MSTORE 0000444c: PUSH32 0x6820286c6f6e67206c6973742900000000000000000000000000000000000000 0000446d: PUSH1 0x84 0000446f: DUP3 00004470: ADD 00004471: MSTORE 00004472: PUSH1 0xa4 00004474: ADD 00004475: PUSH2 0x0622 00004478: JUMP 00004479: JUMPDEST 0000447a: PUSH1 0x01 0000447c: DUP4 0000447d: ADD 0000447e: MLOAD 0000447f: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 000044a0: AND 000044a1: PUSH1 0x00 000044a3: DUP2 000044a4: SWAP1 000044a5: SUB 000044a6: PUSH2 0x4557 000044a9: JUMPI 000044aa: PUSH1 0x40 000044ac: MLOAD 000044ad: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000044ce: DUP2 000044cf: MSTORE 000044d0: PUSH1 0x20 000044d2: PUSH1 0x04 000044d4: DUP3 000044d5: ADD 000044d6: MSTORE 000044d7: PUSH1 0x48 000044d9: PUSH1 0x24 000044db: DUP3 000044dc: ADD 000044dd: MSTORE 000044de: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 000044ff: PUSH1 0x44 00004501: DUP3 00004502: ADD 00004503: MSTORE 00004504: PUSH32 0x74206e6f74206861766520616e79206c656164696e67207a65726f7320286c6f 00004525: PUSH1 0x64 00004527: DUP3 00004528: ADD 00004529: MSTORE 0000452a: PUSH32 0x6e67206c69737429000000000000000000000000000000000000000000000000 0000454b: PUSH1 0x84 0000454d: DUP3 0000454e: ADD 0000454f: MSTORE 00004550: PUSH1 0xa4 00004552: ADD 00004553: PUSH2 0x0622 00004556: JUMP 00004557: JUMPDEST 00004558: PUSH1 0x01 0000455a: DUP5 0000455b: ADD 0000455c: MLOAD 0000455d: PUSH1 0x08 0000455f: DUP4 00004560: MUL 00004561: PUSH2 0x0100 00004564: SUB 00004565: SHR 00004566: PUSH1 0x37 00004568: DUP2 00004569: GT 0000456a: PUSH2 0x461b 0000456d: JUMPI 0000456e: PUSH1 0x40 00004570: MLOAD 00004571: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004592: DUP2 00004593: MSTORE 00004594: PUSH1 0x20 00004596: PUSH1 0x04 00004598: DUP3 00004599: ADD 0000459a: MSTORE 0000459b: PUSH1 0x46 0000459d: PUSH1 0x24 0000459f: DUP3 000045a0: ADD 000045a1: MSTORE 000045a2: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 000045c3: PUSH1 0x44 000045c5: DUP3 000045c6: ADD 000045c7: MSTORE 000045c8: PUSH32 0x742062652067726561746572207468616e20353520627974657320286c6f6e67 000045e9: PUSH1 0x64 000045eb: DUP3 000045ec: ADD 000045ed: MSTORE 000045ee: PUSH32 0x206c697374290000000000000000000000000000000000000000000000000000 0000460f: PUSH1 0x84 00004611: DUP3 00004612: ADD 00004613: MSTORE 00004614: PUSH1 0xa4 00004616: ADD 00004617: PUSH2 0x0622 0000461a: JUMP 0000461b: JUMPDEST 0000461c: PUSH2 0x4625 0000461f: DUP2 00004620: DUP5 00004621: PUSH2 0x57a0 00004624: JUMP 00004625: JUMPDEST 00004626: DUP10 00004627: MLOAD 00004628: GT 00004629: PUSH2 0x46da 0000462c: JUMPI 0000462d: PUSH1 0x40 0000462f: MLOAD 00004630: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004651: DUP2 00004652: MSTORE 00004653: PUSH1 0x20 00004655: PUSH1 0x04 00004657: DUP3 00004658: ADD 00004659: MSTORE 0000465a: PUSH1 0x4a 0000465c: PUSH1 0x24 0000465e: DUP3 0000465f: ADD 00004660: MSTORE 00004661: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 00004682: PUSH1 0x44 00004684: DUP3 00004685: ADD 00004686: MSTORE 00004687: PUSH32 0x742062652067726561746572207468616e20746f74616c206c656e6774682028 000046a8: PUSH1 0x64 000046aa: DUP3 000046ab: ADD 000046ac: MSTORE 000046ad: PUSH32 0x6c6f6e67206c6973742900000000000000000000000000000000000000000000 000046ce: PUSH1 0x84 000046d0: DUP3 000046d1: ADD 000046d2: MSTORE 000046d3: PUSH1 0xa4 000046d5: ADD 000046d6: PUSH2 0x0622 000046d9: JUMP 000046da: JUMPDEST 000046db: PUSH2 0x46e5 000046de: DUP4 000046df: PUSH1 0x01 000046e1: PUSH2 0x57a0 000046e4: JUMP 000046e5: JUMPDEST 000046e6: SWAP8 000046e7: POP 000046e8: SWAP6 000046e9: POP 000046ea: PUSH1 0x01 000046ec: SWAP5 000046ed: POP 000046ee: PUSH2 0x46f7 000046f1: SWAP4 000046f2: POP 000046f3: POP 000046f4: POP 000046f5: POP 000046f6: JUMP 000046f7: JUMPDEST 000046f8: SWAP2 000046f9: SWAP4 000046fa: SWAP1 000046fb: SWAP3 000046fc: POP 000046fd: JUMP 000046fe: JUMPDEST 000046ff: PUSH1 0x60 00004701: PUSH1 0x00 00004703: DUP3 00004704: PUSH8 0xffffffffffffffff 0000470d: DUP2 0000470e: GT 0000470f: ISZERO 00004710: PUSH2 0x471b 00004713: JUMPI 00004714: PUSH2 0x471b 00004717: PUSH2 0x4cda 0000471a: JUMP 0000471b: JUMPDEST 0000471c: PUSH1 0x40 0000471e: MLOAD 0000471f: SWAP1 00004720: DUP1 00004721: DUP3 00004722: MSTORE 00004723: DUP1 00004724: PUSH1 0x1f 00004726: ADD 00004727: PUSH1 0x1f 00004729: NOT 0000472a: AND 0000472b: PUSH1 0x20 0000472d: ADD 0000472e: DUP3 0000472f: ADD 00004730: PUSH1 0x40 00004732: MSTORE 00004733: DUP1 00004734: ISZERO 00004735: PUSH2 0x4745 00004738: JUMPI 00004739: PUSH1 0x20 0000473b: DUP3 0000473c: ADD 0000473d: DUP2 0000473e: DUP1 0000473f: CALLDATASIZE 00004740: DUP4 00004741: CALLDATACOPY 00004742: ADD 00004743: SWAP1 00004744: POP 00004745: JUMPDEST 00004746: POP 00004747: SWAP1 00004748: POP 00004749: DUP3 0000474a: PUSH1 0x00 0000474c: SUB 0000474d: PUSH2 0x4757 00004750: JUMPI 00004751: SWAP1 00004752: POP 00004753: PUSH2 0x2619 00004756: JUMP 00004757: JUMPDEST 00004758: PUSH1 0x00 0000475a: PUSH2 0x4763 0000475d: DUP6 0000475e: DUP8 0000475f: PUSH2 0x57a0 00004762: JUMP 00004763: JUMPDEST 00004764: SWAP1 00004765: POP 00004766: PUSH1 0x20 00004768: DUP3 00004769: ADD 0000476a: PUSH1 0x00 0000476c: JUMPDEST 0000476d: DUP6 0000476e: DUP2 0000476f: LT 00004770: ISZERO 00004771: PUSH2 0x4784 00004774: JUMPI 00004775: DUP3 00004776: DUP2 00004777: ADD 00004778: MLOAD 00004779: DUP3 0000477a: DUP3 0000477b: ADD 0000477c: MSTORE 0000477d: PUSH1 0x20 0000477f: ADD 00004780: PUSH2 0x476c 00004783: JUMP 00004784: JUMPDEST 00004785: DUP6 00004786: DUP2 00004787: GT 00004788: ISZERO 00004789: PUSH2 0x4793 0000478c: JUMPI 0000478d: PUSH1 0x00 0000478f: DUP7 00004790: DUP4 00004791: ADD 00004792: MSTORE 00004793: JUMPDEST 00004794: POP 00004795: SWAP2 00004796: SWAP7 00004797: SWAP6 00004798: POP 00004799: POP 0000479a: POP 0000479b: POP 0000479c: POP 0000479d: POP 0000479e: JUMP 0000479f: JUMPDEST 000047a0: PUSH1 0x60 000047a2: PUSH2 0x110c 000047a5: DUP3 000047a6: PUSH1 0x20 000047a8: ADD 000047a9: MLOAD 000047aa: PUSH1 0x00 000047ac: DUP5 000047ad: PUSH1 0x00 000047af: ADD 000047b0: MLOAD 000047b1: PUSH2 0x46fe 000047b4: JUMP 000047b5: JUMPDEST 000047b6: PUSH1 0x60 000047b8: DUP2 000047b9: DUP3 000047ba: PUSH1 0x1f 000047bc: ADD 000047bd: LT 000047be: ISZERO 000047bf: PUSH2 0x4824 000047c2: JUMPI 000047c3: PUSH1 0x40 000047c5: MLOAD 000047c6: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000047e7: DUP2 000047e8: MSTORE 000047e9: PUSH1 0x20 000047eb: PUSH1 0x04 000047ed: DUP3 000047ee: ADD 000047ef: MSTORE 000047f0: PUSH1 0x0e 000047f2: PUSH1 0x24 000047f4: DUP3 000047f5: ADD 000047f6: MSTORE 000047f7: PUSH32 0x736c6963655f6f766572666c6f77000000000000000000000000000000000000 00004818: PUSH1 0x44 0000481a: DUP3 0000481b: ADD 0000481c: MSTORE 0000481d: PUSH1 0x64 0000481f: ADD 00004820: PUSH2 0x0622 00004823: JUMP 00004824: JUMPDEST 00004825: DUP3 00004826: DUP3 00004827: DUP5 00004828: ADD 00004829: LT 0000482a: ISZERO 0000482b: PUSH2 0x4890 0000482e: JUMPI 0000482f: PUSH1 0x40 00004831: MLOAD 00004832: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004853: DUP2 00004854: MSTORE 00004855: PUSH1 0x20 00004857: PUSH1 0x04 00004859: DUP3 0000485a: ADD 0000485b: MSTORE 0000485c: PUSH1 0x0e 0000485e: PUSH1 0x24 00004860: DUP3 00004861: ADD 00004862: MSTORE 00004863: PUSH32 0x736c6963655f6f766572666c6f77000000000000000000000000000000000000 00004884: PUSH1 0x44 00004886: DUP3 00004887: ADD 00004888: MSTORE 00004889: PUSH1 0x64 0000488b: ADD 0000488c: PUSH2 0x0622 0000488f: JUMP 00004890: JUMPDEST 00004891: DUP2 00004892: DUP4 00004893: ADD 00004894: DUP5 00004895: MLOAD 00004896: LT 00004897: ISZERO 00004898: PUSH2 0x48fd 0000489b: JUMPI 0000489c: PUSH1 0x40 0000489e: MLOAD 0000489f: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000048c0: DUP2 000048c1: MSTORE 000048c2: PUSH1 0x20 000048c4: PUSH1 0x04 000048c6: DUP3 000048c7: ADD 000048c8: MSTORE 000048c9: PUSH1 0x11 000048cb: PUSH1 0x24 000048cd: DUP3 000048ce: ADD 000048cf: MSTORE 000048d0: PUSH32 0x736c6963655f6f75744f66426f756e6473000000000000000000000000000000 000048f1: PUSH1 0x44 000048f3: DUP3 000048f4: ADD 000048f5: MSTORE 000048f6: PUSH1 0x64 000048f8: ADD 000048f9: PUSH2 0x0622 000048fc: JUMP 000048fd: JUMPDEST 000048fe: PUSH1 0x60 00004900: DUP3 00004901: ISZERO 00004902: DUP1 00004903: ISZERO 00004904: PUSH2 0x491c 00004907: JUMPI 00004908: PUSH1 0x40 0000490a: MLOAD 0000490b: SWAP2 0000490c: POP 0000490d: PUSH1 0x00 0000490f: DUP3 00004910: MSTORE 00004911: PUSH1 0x20 00004913: DUP3 00004914: ADD 00004915: PUSH1 0x40 00004917: MSTORE 00004918: PUSH2 0x4984 0000491b: JUMP 0000491c: JUMPDEST 0000491d: PUSH1 0x40 0000491f: MLOAD 00004920: SWAP2 00004921: POP 00004922: PUSH1 0x1f 00004924: DUP5 00004925: AND 00004926: DUP1 00004927: ISZERO 00004928: PUSH1 0x20 0000492a: MUL 0000492b: DUP2 0000492c: DUP5 0000492d: ADD 0000492e: ADD 0000492f: DUP6 00004930: DUP2 00004931: ADD 00004932: DUP8 00004933: DUP4 00004934: ISZERO 00004935: PUSH1 0x20 00004937: MUL 00004938: DUP5 00004939: DUP12 0000493a: ADD 0000493b: ADD 0000493c: ADD 0000493d: JUMPDEST 0000493e: DUP2 0000493f: DUP4 00004940: LT 00004941: ISZERO 00004942: PUSH2 0x4955 00004945: JUMPI 00004946: DUP1 00004947: MLOAD 00004948: DUP4 00004949: MSTORE 0000494a: PUSH1 0x20 0000494c: SWAP3 0000494d: DUP4 0000494e: ADD 0000494f: SWAP3 00004950: ADD 00004951: PUSH2 0x493d 00004954: JUMP 00004955: JUMPDEST 00004956: POP 00004957: POP 00004958: DUP6 00004959: DUP5 0000495a: MSTORE 0000495b: PUSH1 0x1f 0000495d: ADD 0000495e: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 0000497f: AND 00004980: PUSH1 0x40 00004982: MSTORE 00004983: POP 00004984: JUMPDEST 00004985: POP 00004986: SWAP5 00004987: SWAP4 00004988: POP 00004989: POP 0000498a: POP 0000498b: POP 0000498c: JUMP 0000498d: JUMPDEST 0000498e: PUSH1 0x40 00004990: DUP1 00004991: MLOAD 00004992: DUP1 00004993: DUP3 00004994: ADD 00004995: SWAP1 00004996: SWAP2 00004997: MSTORE 00004998: PUSH1 0x00 0000499a: DUP1 0000499b: DUP3 0000499c: MSTORE 0000499d: PUSH1 0x20 0000499f: DUP3 000049a0: ADD 000049a1: MSTORE 000049a2: PUSH1 0x00 000049a4: DUP3 000049a5: MLOAD 000049a6: GT 000049a7: PUSH2 0x4a58 000049aa: JUMPI 000049ab: PUSH1 0x40 000049ad: MLOAD 000049ae: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000049cf: DUP2 000049d0: MSTORE 000049d1: PUSH1 0x20 000049d3: PUSH1 0x04 000049d5: DUP3 000049d6: ADD 000049d7: MSTORE 000049d8: PUSH1 0x4a 000049da: PUSH1 0x24 000049dc: DUP3 000049dd: ADD 000049de: MSTORE 000049df: PUSH32 0x524c505265616465723a206c656e677468206f6620616e20524c50206974656d 00004a00: PUSH1 0x44 00004a02: DUP3 00004a03: ADD 00004a04: MSTORE 00004a05: PUSH32 0x206d7573742062652067726561746572207468616e207a65726f20746f206265 00004a26: PUSH1 0x64 00004a28: DUP3 00004a29: ADD 00004a2a: MSTORE 00004a2b: PUSH32 0x206465636f6461626c6500000000000000000000000000000000000000000000 00004a4c: PUSH1 0x84 00004a4e: DUP3 00004a4f: ADD 00004a50: MSTORE 00004a51: PUSH1 0xa4 00004a53: ADD 00004a54: PUSH2 0x0622 00004a57: JUMP 00004a58: JUMPDEST 00004a59: POP 00004a5a: PUSH1 0x40 00004a5c: DUP1 00004a5d: MLOAD 00004a5e: DUP1 00004a5f: DUP3 00004a60: ADD 00004a61: SWAP1 00004a62: SWAP2 00004a63: MSTORE 00004a64: DUP2 00004a65: MLOAD 00004a66: DUP2 00004a67: MSTORE 00004a68: PUSH1 0x20 00004a6a: SWAP2 00004a6b: DUP3 00004a6c: ADD 00004a6d: SWAP2 00004a6e: DUP2 00004a6f: ADD 00004a70: SWAP2 00004a71: SWAP1 00004a72: SWAP2 00004a73: MSTORE 00004a74: SWAP1 00004a75: JUMP 00004a76: JUMPDEST 00004a77: PUSH1 0x60 00004a79: PUSH1 0x00 00004a7b: DUP1 00004a7c: PUSH1 0x00 00004a7e: PUSH2 0x4a86 00004a81: DUP6 00004a82: PUSH2 0x3c91 00004a85: JUMP 00004a86: JUMPDEST 00004a87: SWAP2 00004a88: SWAP5 00004a89: POP 00004a8a: SWAP3 00004a8b: POP 00004a8c: SWAP1 00004a8d: POP 00004a8e: PUSH1 0x01 00004a90: DUP2 00004a91: PUSH1 0x01 00004a93: DUP2 00004a94: GT 00004a95: ISZERO 00004a96: PUSH2 0x4aa1 00004a99: JUMPI 00004a9a: PUSH2 0x4aa1 00004a9d: PUSH2 0x58f0 00004aa0: JUMP 00004aa1: JUMPDEST 00004aa2: EQ 00004aa3: PUSH2 0x4b2e 00004aa6: JUMPI 00004aa7: PUSH1 0x40 00004aa9: MLOAD 00004aaa: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004acb: DUP2 00004acc: MSTORE 00004acd: PUSH1 0x20 00004acf: PUSH1 0x04 00004ad1: DUP3 00004ad2: ADD 00004ad3: MSTORE 00004ad4: PUSH1 0x38 00004ad6: PUSH1 0x24 00004ad8: DUP3 00004ad9: ADD 00004ada: MSTORE 00004adb: PUSH32 0x524c505265616465723a206465636f646564206974656d207479706520666f72 00004afc: PUSH1 0x44 00004afe: DUP3 00004aff: ADD 00004b00: MSTORE 00004b01: PUSH32 0x206c697374206973206e6f742061206c697374206974656d0000000000000000 00004b22: PUSH1 0x64 00004b24: DUP3 00004b25: ADD 00004b26: MSTORE 00004b27: PUSH1 0x84 00004b29: ADD 00004b2a: PUSH2 0x0622 00004b2d: JUMP 00004b2e: JUMPDEST 00004b2f: DUP5 00004b30: MLOAD 00004b31: PUSH2 0x4b3a 00004b34: DUP4 00004b35: DUP6 00004b36: PUSH2 0x57a0 00004b39: JUMP 00004b3a: JUMPDEST 00004b3b: EQ 00004b3c: PUSH2 0x4bc7 00004b3f: JUMPI 00004b40: PUSH1 0x40 00004b42: MLOAD 00004b43: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004b64: DUP2 00004b65: MSTORE 00004b66: PUSH1 0x20 00004b68: PUSH1 0x04 00004b6a: DUP3 00004b6b: ADD 00004b6c: MSTORE 00004b6d: PUSH1 0x32 00004b6f: PUSH1 0x24 00004b71: DUP3 00004b72: ADD 00004b73: MSTORE 00004b74: PUSH32 0x524c505265616465723a206c697374206974656d2068617320616e20696e7661 00004b95: PUSH1 0x44 00004b97: DUP3 00004b98: ADD 00004b99: MSTORE 00004b9a: PUSH32 0x6c696420646174612072656d61696e6465720000000000000000000000000000 00004bbb: PUSH1 0x64 00004bbd: DUP3 00004bbe: ADD 00004bbf: MSTORE 00004bc0: PUSH1 0x84 00004bc2: ADD 00004bc3: PUSH2 0x0622 00004bc6: JUMP 00004bc7: JUMPDEST 00004bc8: PUSH1 0x40 00004bca: DUP1 00004bcb: MLOAD 00004bcc: PUSH1 0x20 00004bce: DUP1 00004bcf: DUP3 00004bd0: MSTORE 00004bd1: PUSH2 0x0420 00004bd4: DUP3 00004bd5: ADD 00004bd6: SWAP1 00004bd7: SWAP3 00004bd8: MSTORE 00004bd9: PUSH1 0x00 00004bdb: SWAP2 00004bdc: DUP2 00004bdd: PUSH1 0x20 00004bdf: ADD 00004be0: JUMPDEST 00004be1: PUSH1 0x40 00004be3: DUP1 00004be4: MLOAD 00004be5: DUP1 00004be6: DUP3 00004be7: ADD 00004be8: SWAP1 00004be9: SWAP2 00004bea: MSTORE 00004beb: PUSH1 0x00 00004bed: DUP1 00004bee: DUP3 00004bef: MSTORE 00004bf0: PUSH1 0x20 00004bf2: DUP3 00004bf3: ADD 00004bf4: MSTORE 00004bf5: DUP2 00004bf6: MSTORE 00004bf7: PUSH1 0x20 00004bf9: ADD 00004bfa: SWAP1 00004bfb: PUSH1 0x01 00004bfd: SWAP1 00004bfe: SUB 00004bff: SWAP1 00004c00: DUP2 00004c01: PUSH2 0x4be0 00004c04: JUMPI 00004c05: SWAP1 00004c06: POP 00004c07: POP 00004c08: SWAP1 00004c09: POP 00004c0a: PUSH1 0x00 00004c0c: DUP5 00004c0d: JUMPDEST 00004c0e: DUP8 00004c0f: MLOAD 00004c10: DUP2 00004c11: LT 00004c12: ISZERO 00004c13: PUSH2 0x4cce 00004c16: JUMPI 00004c17: PUSH1 0x00 00004c19: DUP1 00004c1a: PUSH2 0x4c53 00004c1d: PUSH1 0x40 00004c1f: MLOAD 00004c20: DUP1 00004c21: PUSH1 0x40 00004c23: ADD 00004c24: PUSH1 0x40 00004c26: MSTORE 00004c27: DUP1 00004c28: DUP6 00004c29: DUP14 00004c2a: PUSH1 0x00 00004c2c: ADD 00004c2d: MLOAD 00004c2e: PUSH2 0x4c37 00004c31: SWAP2 00004c32: SWAP1 00004c33: PUSH2 0x545a 00004c36: JUMP 00004c37: JUMPDEST 00004c38: DUP2 00004c39: MSTORE 00004c3a: PUSH1 0x20 00004c3c: ADD 00004c3d: DUP6 00004c3e: DUP14 00004c3f: PUSH1 0x20 00004c41: ADD 00004c42: MLOAD 00004c43: PUSH2 0x4c4c 00004c46: SWAP2 00004c47: SWAP1 00004c48: PUSH2 0x57a0 00004c4b: JUMP 00004c4c: JUMPDEST 00004c4d: SWAP1 00004c4e: MSTORE 00004c4f: PUSH2 0x3c91 00004c52: JUMP 00004c53: JUMPDEST 00004c54: POP 00004c55: SWAP2 00004c56: POP 00004c57: SWAP2 00004c58: POP 00004c59: PUSH1 0x40 00004c5b: MLOAD 00004c5c: DUP1 00004c5d: PUSH1 0x40 00004c5f: ADD 00004c60: PUSH1 0x40 00004c62: MSTORE 00004c63: DUP1 00004c64: DUP4 00004c65: DUP4 00004c66: PUSH2 0x4c6f 00004c69: SWAP2 00004c6a: SWAP1 00004c6b: PUSH2 0x57a0 00004c6e: JUMP 00004c6f: JUMPDEST 00004c70: DUP2 00004c71: MSTORE 00004c72: PUSH1 0x20 00004c74: ADD 00004c75: DUP5 00004c76: DUP13 00004c77: PUSH1 0x20 00004c79: ADD 00004c7a: MLOAD 00004c7b: PUSH2 0x4c84 00004c7e: SWAP2 00004c7f: SWAP1 00004c80: PUSH2 0x57a0 00004c83: JUMP 00004c84: JUMPDEST 00004c85: DUP2 00004c86: MSTORE 00004c87: POP 00004c88: DUP6 00004c89: DUP6 00004c8a: DUP2 00004c8b: MLOAD 00004c8c: DUP2 00004c8d: LT 00004c8e: PUSH2 0x4c99 00004c91: JUMPI 00004c92: PUSH2 0x4c99 00004c95: PUSH2 0x57b8 00004c98: JUMP 00004c99: JUMPDEST 00004c9a: PUSH1 0x20 00004c9c: SWAP1 00004c9d: DUP2 00004c9e: MUL 00004c9f: SWAP2 00004ca0: SWAP1 00004ca1: SWAP2 00004ca2: ADD 00004ca3: ADD 00004ca4: MSTORE 00004ca5: PUSH2 0x4caf 00004ca8: PUSH1 0x01 00004caa: DUP6 00004cab: PUSH2 0x57a0 00004cae: JUMP 00004caf: JUMPDEST 00004cb0: SWAP4 00004cb1: POP 00004cb2: PUSH2 0x4cbb 00004cb5: DUP2 00004cb6: DUP4 00004cb7: PUSH2 0x57a0 00004cba: JUMP 00004cbb: JUMPDEST 00004cbc: PUSH2 0x4cc5 00004cbf: SWAP1 00004cc0: DUP5 00004cc1: PUSH2 0x57a0 00004cc4: JUMP 00004cc5: JUMPDEST 00004cc6: SWAP3 00004cc7: POP 00004cc8: POP 00004cc9: POP 00004cca: PUSH2 0x4c0d 00004ccd: JUMP 00004cce: JUMPDEST 00004ccf: POP 00004cd0: DUP2 00004cd1: MSTORE 00004cd2: SWAP6 00004cd3: SWAP5 00004cd4: POP 00004cd5: POP 00004cd6: POP 00004cd7: POP 00004cd8: POP 00004cd9: JUMP 00004cda: JUMPDEST 00004cdb: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00004cfc: PUSH1 0x00 00004cfe: MSTORE 00004cff: PUSH1 0x41 00004d01: PUSH1 0x04 00004d03: MSTORE 00004d04: PUSH1 0x24 00004d06: PUSH1 0x00 00004d08: REVERT 00004d09: JUMPDEST 00004d0a: PUSH1 0x40 00004d0c: MLOAD 00004d0d: PUSH1 0x1f 00004d0f: DUP3 00004d10: ADD 00004d11: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00004d32: AND 00004d33: DUP2 00004d34: ADD 00004d35: PUSH8 0xffffffffffffffff 00004d3e: DUP2 00004d3f: GT 00004d40: DUP3 00004d41: DUP3 00004d42: LT 00004d43: OR 00004d44: ISZERO 00004d45: PUSH2 0x4d50 00004d48: JUMPI 00004d49: PUSH2 0x4d50 00004d4c: PUSH2 0x4cda 00004d4f: JUMP 00004d50: JUMPDEST 00004d51: PUSH1 0x40 00004d53: MSTORE 00004d54: SWAP2 00004d55: SWAP1 00004d56: POP 00004d57: JUMP 00004d58: JUMPDEST 00004d59: DUP1 00004d5a: CALLDATALOAD 00004d5b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004d70: DUP2 00004d71: AND 00004d72: DUP2 00004d73: EQ 00004d74: PUSH2 0x4d7c 00004d77: JUMPI 00004d78: PUSH1 0x00 00004d7a: DUP1 00004d7b: REVERT 00004d7c: JUMPDEST 00004d7d: SWAP2 00004d7e: SWAP1 00004d7f: POP 00004d80: JUMP 00004d81: JUMPDEST 00004d82: PUSH1 0x00 00004d84: DUP3 00004d85: PUSH1 0x1f 00004d87: DUP4 00004d88: ADD 00004d89: SLT 00004d8a: PUSH2 0x4d92 00004d8d: JUMPI 00004d8e: PUSH1 0x00 00004d90: DUP1 00004d91: REVERT 00004d92: JUMPDEST 00004d93: DUP2 00004d94: CALLDATALOAD 00004d95: PUSH8 0xffffffffffffffff 00004d9e: DUP2 00004d9f: GT 00004da0: ISZERO 00004da1: PUSH2 0x4dac 00004da4: JUMPI 00004da5: PUSH2 0x4dac 00004da8: PUSH2 0x4cda 00004dab: JUMP 00004dac: JUMPDEST 00004dad: PUSH2 0x4ddd 00004db0: PUSH1 0x20 00004db2: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00004dd3: PUSH1 0x1f 00004dd5: DUP5 00004dd6: ADD 00004dd7: AND 00004dd8: ADD 00004dd9: PUSH2 0x4d09 00004ddc: JUMP 00004ddd: JUMPDEST 00004dde: DUP2 00004ddf: DUP2 00004de0: MSTORE 00004de1: DUP5 00004de2: PUSH1 0x20 00004de4: DUP4 00004de5: DUP7 00004de6: ADD 00004de7: ADD 00004de8: GT 00004de9: ISZERO 00004dea: PUSH2 0x4df2 00004ded: JUMPI 00004dee: PUSH1 0x00 00004df0: DUP1 00004df1: REVERT 00004df2: JUMPDEST 00004df3: DUP2 00004df4: PUSH1 0x20 00004df6: DUP6 00004df7: ADD 00004df8: PUSH1 0x20 00004dfa: DUP4 00004dfb: ADD 00004dfc: CALLDATACOPY 00004dfd: PUSH1 0x00 00004dff: SWAP2 00004e00: DUP2 00004e01: ADD 00004e02: PUSH1 0x20 00004e04: ADD 00004e05: SWAP2 00004e06: SWAP1 00004e07: SWAP2 00004e08: MSTORE 00004e09: SWAP4 00004e0a: SWAP3 00004e0b: POP 00004e0c: POP 00004e0d: POP 00004e0e: JUMP 00004e0f: JUMPDEST 00004e10: PUSH1 0x00 00004e12: PUSH1 0xc0 00004e14: DUP3 00004e15: DUP5 00004e16: SUB 00004e17: SLT 00004e18: ISZERO 00004e19: PUSH2 0x4e21 00004e1c: JUMPI 00004e1d: PUSH1 0x00 00004e1f: DUP1 00004e20: REVERT 00004e21: JUMPDEST 00004e22: PUSH1 0x40 00004e24: MLOAD 00004e25: PUSH1 0xc0 00004e27: DUP2 00004e28: ADD 00004e29: PUSH8 0xffffffffffffffff 00004e32: DUP3 00004e33: DUP3 00004e34: LT 00004e35: DUP2 00004e36: DUP4 00004e37: GT 00004e38: OR 00004e39: ISZERO 00004e3a: PUSH2 0x4e45 00004e3d: JUMPI 00004e3e: PUSH2 0x4e45 00004e41: PUSH2 0x4cda 00004e44: JUMP 00004e45: JUMPDEST 00004e46: DUP2 00004e47: PUSH1 0x40 00004e49: MSTORE 00004e4a: DUP3 00004e4b: SWAP4 00004e4c: POP 00004e4d: DUP5 00004e4e: CALLDATALOAD 00004e4f: DUP4 00004e50: MSTORE 00004e51: PUSH2 0x4e5c 00004e54: PUSH1 0x20 00004e56: DUP7 00004e57: ADD 00004e58: PUSH2 0x4d58 00004e5b: JUMP 00004e5c: JUMPDEST 00004e5d: PUSH1 0x20 00004e5f: DUP5 00004e60: ADD 00004e61: MSTORE 00004e62: PUSH2 0x4e6d 00004e65: PUSH1 0x40 00004e67: DUP7 00004e68: ADD 00004e69: PUSH2 0x4d58 00004e6c: JUMP 00004e6d: JUMPDEST 00004e6e: PUSH1 0x40 00004e70: DUP5 00004e71: ADD 00004e72: MSTORE 00004e73: PUSH1 0x60 00004e75: DUP6 00004e76: ADD 00004e77: CALLDATALOAD 00004e78: PUSH1 0x60 00004e7a: DUP5 00004e7b: ADD 00004e7c: MSTORE 00004e7d: PUSH1 0x80 00004e7f: DUP6 00004e80: ADD 00004e81: CALLDATALOAD 00004e82: PUSH1 0x80 00004e84: DUP5 00004e85: ADD 00004e86: MSTORE 00004e87: PUSH1 0xa0 00004e89: DUP6 00004e8a: ADD 00004e8b: CALLDATALOAD 00004e8c: SWAP2 00004e8d: POP 00004e8e: DUP1 00004e8f: DUP3 00004e90: GT 00004e91: ISZERO 00004e92: PUSH2 0x4e9a 00004e95: JUMPI 00004e96: PUSH1 0x00 00004e98: DUP1 00004e99: REVERT 00004e9a: JUMPDEST 00004e9b: POP 00004e9c: PUSH2 0x4ea7 00004e9f: DUP6 00004ea0: DUP3 00004ea1: DUP7 00004ea2: ADD 00004ea3: PUSH2 0x4d81 00004ea6: JUMP 00004ea7: JUMPDEST 00004ea8: PUSH1 0xa0 00004eaa: DUP4 00004eab: ADD 00004eac: MSTORE 00004ead: POP 00004eae: POP 00004eaf: SWAP3 00004eb0: SWAP2 00004eb1: POP 00004eb2: POP 00004eb3: JUMP 00004eb4: JUMPDEST 00004eb5: PUSH1 0x00 00004eb7: DUP1 00004eb8: PUSH1 0x00 00004eba: DUP1 00004ebb: PUSH1 0x00 00004ebd: DUP6 00004ebe: DUP8 00004ebf: SUB 00004ec0: PUSH1 0xe0 00004ec2: DUP2 00004ec3: SLT 00004ec4: ISZERO 00004ec5: PUSH2 0x4ecd 00004ec8: JUMPI 00004ec9: PUSH1 0x00 00004ecb: DUP1 00004ecc: REVERT 00004ecd: JUMPDEST 00004ece: DUP7 00004ecf: CALLDATALOAD 00004ed0: PUSH8 0xffffffffffffffff 00004ed9: DUP1 00004eda: DUP3 00004edb: GT 00004edc: ISZERO 00004edd: PUSH2 0x4ee5 00004ee0: JUMPI 00004ee1: PUSH1 0x00 00004ee3: DUP1 00004ee4: REVERT 00004ee5: JUMPDEST 00004ee6: PUSH2 0x4ef1 00004ee9: DUP11 00004eea: DUP4 00004eeb: DUP12 00004eec: ADD 00004eed: PUSH2 0x4e0f 00004ef0: JUMP 00004ef1: JUMPDEST 00004ef2: SWAP8 00004ef3: POP 00004ef4: PUSH1 0x20 00004ef6: DUP10 00004ef7: ADD 00004ef8: CALLDATALOAD 00004ef9: SWAP7 00004efa: POP 00004efb: PUSH1 0x80 00004efd: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0 00004f1e: DUP5 00004f1f: ADD 00004f20: SLT 00004f21: ISZERO 00004f22: PUSH2 0x4f2a 00004f25: JUMPI 00004f26: PUSH1 0x00 00004f28: DUP1 00004f29: REVERT 00004f2a: JUMPDEST 00004f2b: PUSH1 0x40 00004f2d: DUP10 00004f2e: ADD 00004f2f: SWAP6 00004f30: POP 00004f31: PUSH1 0xc0 00004f33: DUP10 00004f34: ADD 00004f35: CALLDATALOAD 00004f36: SWAP3 00004f37: POP 00004f38: DUP1 00004f39: DUP4 00004f3a: GT 00004f3b: ISZERO 00004f3c: PUSH2 0x4f44 00004f3f: JUMPI 00004f40: PUSH1 0x00 00004f42: DUP1 00004f43: REVERT 00004f44: JUMPDEST 00004f45: DUP3 00004f46: DUP10 00004f47: ADD 00004f48: SWAP3 00004f49: POP 00004f4a: DUP10 00004f4b: PUSH1 0x1f 00004f4d: DUP5 00004f4e: ADD 00004f4f: SLT 00004f50: PUSH2 0x4f58 00004f53: JUMPI 00004f54: PUSH1 0x00 00004f56: DUP1 00004f57: REVERT 00004f58: JUMPDEST 00004f59: DUP3 00004f5a: CALLDATALOAD 00004f5b: SWAP2 00004f5c: POP 00004f5d: DUP1 00004f5e: DUP3 00004f5f: GT 00004f60: ISZERO 00004f61: PUSH2 0x4f69 00004f64: JUMPI 00004f65: PUSH1 0x00 00004f67: DUP1 00004f68: REVERT 00004f69: JUMPDEST 00004f6a: POP 00004f6b: DUP9 00004f6c: PUSH1 0x20 00004f6e: DUP3 00004f6f: PUSH1 0x05 00004f71: SHL 00004f72: DUP5 00004f73: ADD 00004f74: ADD 00004f75: GT 00004f76: ISZERO 00004f77: PUSH2 0x4f7f 00004f7a: JUMPI 00004f7b: PUSH1 0x00 00004f7d: DUP1 00004f7e: REVERT 00004f7f: JUMPDEST 00004f80: SWAP6 00004f81: SWAP9 00004f82: SWAP5 00004f83: SWAP8 00004f84: POP 00004f85: SWAP3 00004f86: SWAP6 00004f87: POP 00004f88: POP 00004f89: POP 00004f8a: PUSH1 0x20 00004f8c: ADD 00004f8d: SWAP2 00004f8e: SWAP1 00004f8f: JUMP 00004f90: JUMPDEST 00004f91: PUSH1 0x00 00004f93: JUMPDEST 00004f94: DUP4 00004f95: DUP2 00004f96: LT 00004f97: ISZERO 00004f98: PUSH2 0x4fab 00004f9b: JUMPI 00004f9c: DUP2 00004f9d: DUP2 00004f9e: ADD 00004f9f: MLOAD 00004fa0: DUP4 00004fa1: DUP3 00004fa2: ADD 00004fa3: MSTORE 00004fa4: PUSH1 0x20 00004fa6: ADD 00004fa7: PUSH2 0x4f93 00004faa: JUMP 00004fab: JUMPDEST 00004fac: DUP4 00004fad: DUP2 00004fae: GT 00004faf: ISZERO 00004fb0: PUSH2 0x4fba 00004fb3: JUMPI 00004fb4: PUSH1 0x00 00004fb6: DUP5 00004fb7: DUP5 00004fb8: ADD 00004fb9: MSTORE 00004fba: JUMPDEST 00004fbb: POP 00004fbc: POP 00004fbd: POP 00004fbe: POP 00004fbf: JUMP 00004fc0: JUMPDEST 00004fc1: PUSH1 0x00 00004fc3: DUP2 00004fc4: MLOAD 00004fc5: DUP1 00004fc6: DUP5 00004fc7: MSTORE 00004fc8: PUSH2 0x4fd8 00004fcb: DUP2 00004fcc: PUSH1 0x20 00004fce: DUP7 00004fcf: ADD 00004fd0: PUSH1 0x20 00004fd2: DUP7 00004fd3: ADD 00004fd4: PUSH2 0x4f90 00004fd7: JUMP 00004fd8: JUMPDEST 00004fd9: PUSH1 0x1f 00004fdb: ADD 00004fdc: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00004ffd: AND 00004ffe: SWAP3 00004fff: SWAP1 00005000: SWAP3 00005001: ADD 00005002: PUSH1 0x20 00005004: ADD 00005005: SWAP3 00005006: SWAP2 00005007: POP 00005008: POP 00005009: JUMP 0000500a: JUMPDEST 0000500b: PUSH1 0x20 0000500d: DUP2 0000500e: MSTORE 0000500f: PUSH1 0x00 00005011: PUSH2 0x2619 00005014: PUSH1 0x20 00005016: DUP4 00005017: ADD 00005018: DUP5 00005019: PUSH2 0x4fc0 0000501c: JUMP 0000501d: JUMPDEST 0000501e: PUSH1 0x00 00005020: PUSH1 0x20 00005022: DUP3 00005023: DUP5 00005024: SUB 00005025: SLT 00005026: ISZERO 00005027: PUSH2 0x502f 0000502a: JUMPI 0000502b: PUSH1 0x00 0000502d: DUP1 0000502e: REVERT 0000502f: JUMPDEST 00005030: POP 00005031: CALLDATALOAD 00005032: SWAP2 00005033: SWAP1 00005034: POP 00005035: JUMP 00005036: JUMPDEST 00005037: PUSH1 0x00 00005039: PUSH1 0x20 0000503b: DUP3 0000503c: DUP5 0000503d: SUB 0000503e: SLT 0000503f: ISZERO 00005040: PUSH2 0x5048 00005043: JUMPI 00005044: PUSH1 0x00 00005046: DUP1 00005047: REVERT 00005048: JUMPDEST 00005049: DUP2 0000504a: CALLDATALOAD 0000504b: PUSH8 0xffffffffffffffff 00005054: DUP2 00005055: GT 00005056: ISZERO 00005057: PUSH2 0x505f 0000505a: JUMPI 0000505b: PUSH1 0x00 0000505d: DUP1 0000505e: REVERT 0000505f: JUMPDEST 00005060: PUSH2 0x234f 00005063: DUP5 00005064: DUP3 00005065: DUP6 00005066: ADD 00005067: PUSH2 0x4e0f 0000506a: JUMP 0000506b: JUMPDEST 0000506c: DUP1 0000506d: CALLDATALOAD 0000506e: PUSH8 0xffffffffffffffff 00005077: DUP2 00005078: AND 00005079: DUP2 0000507a: EQ 0000507b: PUSH2 0x4d7c 0000507e: JUMPI 0000507f: PUSH1 0x00 00005081: DUP1 00005082: REVERT 00005083: JUMPDEST 00005084: PUSH1 0x00 00005086: PUSH1 0x20 00005088: DUP3 00005089: DUP5 0000508a: SUB 0000508b: SLT 0000508c: ISZERO 0000508d: PUSH2 0x5095 00005090: JUMPI 00005091: PUSH1 0x00 00005093: DUP1 00005094: REVERT 00005095: JUMPDEST 00005096: PUSH2 0x2619 00005099: DUP3 0000509a: PUSH2 0x506b 0000509d: JUMP 0000509e: JUMPDEST 0000509f: DUP1 000050a0: CALLDATALOAD 000050a1: DUP1 000050a2: ISZERO 000050a3: ISZERO 000050a4: DUP2 000050a5: EQ 000050a6: PUSH2 0x4d7c 000050a9: JUMPI 000050aa: PUSH1 0x00 000050ac: DUP1 000050ad: REVERT 000050ae: JUMPDEST 000050af: PUSH1 0x00 000050b1: PUSH1 0x20 000050b3: DUP3 000050b4: DUP5 000050b5: SUB 000050b6: SLT 000050b7: ISZERO 000050b8: PUSH2 0x50c0 000050bb: JUMPI 000050bc: PUSH1 0x00 000050be: DUP1 000050bf: REVERT 000050c0: JUMPDEST 000050c1: PUSH2 0x2619 000050c4: DUP3 000050c5: PUSH2 0x509e 000050c8: JUMP 000050c9: JUMPDEST 000050ca: PUSH1 0x00 000050cc: DUP1 000050cd: PUSH1 0x00 000050cf: DUP1 000050d0: PUSH1 0x00 000050d2: PUSH1 0xa0 000050d4: DUP7 000050d5: DUP9 000050d6: SUB 000050d7: SLT 000050d8: ISZERO 000050d9: PUSH2 0x50e1 000050dc: JUMPI 000050dd: PUSH1 0x00 000050df: DUP1 000050e0: REVERT 000050e1: JUMPDEST 000050e2: PUSH2 0x50ea 000050e5: DUP7 000050e6: PUSH2 0x4d58 000050e9: JUMP 000050ea: JUMPDEST 000050eb: SWAP5 000050ec: POP 000050ed: PUSH1 0x20 000050ef: DUP7 000050f0: ADD 000050f1: CALLDATALOAD 000050f2: SWAP4 000050f3: POP 000050f4: PUSH2 0x50ff 000050f7: PUSH1 0x40 000050f9: DUP8 000050fa: ADD 000050fb: PUSH2 0x506b 000050fe: JUMP 000050ff: JUMPDEST 00005100: SWAP3 00005101: POP 00005102: PUSH2 0x510d 00005105: PUSH1 0x60 00005107: DUP8 00005108: ADD 00005109: PUSH2 0x509e 0000510c: JUMP 0000510d: JUMPDEST 0000510e: SWAP2 0000510f: POP 00005110: PUSH1 0x80 00005112: DUP7 00005113: ADD 00005114: CALLDATALOAD 00005115: PUSH8 0xffffffffffffffff 0000511e: DUP2 0000511f: GT 00005120: ISZERO 00005121: PUSH2 0x5129 00005124: JUMPI 00005125: PUSH1 0x00 00005127: DUP1 00005128: REVERT 00005129: JUMPDEST 0000512a: PUSH2 0x5135 0000512d: DUP9 0000512e: DUP3 0000512f: DUP10 00005130: ADD 00005131: PUSH2 0x4d81 00005134: JUMP 00005135: JUMPDEST 00005136: SWAP2 00005137: POP 00005138: POP 00005139: SWAP3 0000513a: SWAP6 0000513b: POP 0000513c: SWAP3 0000513d: SWAP6 0000513e: SWAP1 0000513f: SWAP4 00005140: POP 00005141: JUMP 00005142: JUMPDEST 00005143: PUSH1 0x00 00005145: DUP1 00005146: PUSH1 0x40 00005148: DUP4 00005149: DUP6 0000514a: SUB 0000514b: SLT 0000514c: ISZERO 0000514d: PUSH2 0x5155 00005150: JUMPI 00005151: PUSH1 0x00 00005153: DUP1 00005154: REVERT 00005155: JUMPDEST 00005156: PUSH2 0x515e 00005159: DUP4 0000515a: PUSH2 0x4d58 0000515d: JUMP 0000515e: JUMPDEST 0000515f: SWAP5 00005160: PUSH1 0x20 00005162: SWAP4 00005163: SWAP1 00005164: SWAP4 00005165: ADD 00005166: CALLDATALOAD 00005167: SWAP4 00005168: POP 00005169: POP 0000516a: POP 0000516b: JUMP 0000516c: JUMPDEST 0000516d: DUP6 0000516e: DUP2 0000516f: MSTORE 00005170: DUP5 00005171: PUSH1 0x20 00005173: DUP3 00005174: ADD 00005175: MSTORE 00005176: PUSH32 0xffffffffffffffff000000000000000000000000000000000000000000000000 00005197: DUP5 00005198: PUSH1 0xc0 0000519a: SHL 0000519b: AND 0000519c: PUSH1 0x40 0000519e: DUP3 0000519f: ADD 000051a0: MSTORE 000051a1: DUP3 000051a2: ISZERO 000051a3: ISZERO 000051a4: PUSH1 0xf8 000051a6: SHL 000051a7: PUSH1 0x48 000051a9: DUP3 000051aa: ADD 000051ab: MSTORE 000051ac: PUSH1 0x00 000051ae: DUP3 000051af: MLOAD 000051b0: PUSH2 0x51c0 000051b3: DUP2 000051b4: PUSH1 0x49 000051b6: DUP6 000051b7: ADD 000051b8: PUSH1 0x20 000051ba: DUP8 000051bb: ADD 000051bc: PUSH2 0x4f90 000051bf: JUMP 000051c0: JUMPDEST 000051c1: SWAP2 000051c2: SWAP1 000051c3: SWAP2 000051c4: ADD 000051c5: PUSH1 0x49 000051c7: ADD 000051c8: SWAP7 000051c9: SWAP6 000051ca: POP 000051cb: POP 000051cc: POP 000051cd: POP 000051ce: POP 000051cf: POP 000051d0: JUMP 000051d1: JUMPDEST 000051d2: DUP1 000051d3: MLOAD 000051d4: PUSH16 0xffffffffffffffffffffffffffffffff 000051e5: DUP2 000051e6: AND 000051e7: DUP2 000051e8: EQ 000051e9: PUSH2 0x4d7c 000051ec: JUMPI 000051ed: PUSH1 0x00 000051ef: DUP1 000051f0: REVERT 000051f1: JUMPDEST 000051f2: PUSH1 0x00 000051f4: PUSH1 0x60 000051f6: DUP3 000051f7: DUP5 000051f8: SUB 000051f9: SLT 000051fa: ISZERO 000051fb: PUSH2 0x5203 000051fe: JUMPI 000051ff: PUSH1 0x00 00005201: DUP1 00005202: REVERT 00005203: JUMPDEST 00005204: PUSH1 0x40 00005206: MLOAD 00005207: PUSH1 0x60 00005209: DUP2 0000520a: ADD 0000520b: DUP2 0000520c: DUP2 0000520d: LT 0000520e: PUSH8 0xffffffffffffffff 00005217: DUP3 00005218: GT 00005219: OR 0000521a: ISZERO 0000521b: PUSH2 0x5226 0000521e: JUMPI 0000521f: PUSH2 0x5226 00005222: PUSH2 0x4cda 00005225: JUMP 00005226: JUMPDEST 00005227: PUSH1 0x40 00005229: MSTORE 0000522a: DUP3 0000522b: MLOAD 0000522c: DUP2 0000522d: MSTORE 0000522e: PUSH2 0x5239 00005231: PUSH1 0x20 00005233: DUP5 00005234: ADD 00005235: PUSH2 0x51d1 00005238: JUMP 00005239: JUMPDEST 0000523a: PUSH1 0x20 0000523c: DUP3 0000523d: ADD 0000523e: MSTORE 0000523f: PUSH2 0x524a 00005242: PUSH1 0x40 00005244: DUP5 00005245: ADD 00005246: PUSH2 0x51d1 00005249: JUMP 0000524a: JUMPDEST 0000524b: PUSH1 0x40 0000524d: DUP3 0000524e: ADD 0000524f: MSTORE 00005250: SWAP4 00005251: SWAP3 00005252: POP 00005253: POP 00005254: POP 00005255: JUMP 00005256: JUMPDEST 00005257: PUSH1 0x00 00005259: PUSH1 0x80 0000525b: DUP3 0000525c: DUP5 0000525d: SUB 0000525e: SLT 0000525f: ISZERO 00005260: PUSH2 0x5268 00005263: JUMPI 00005264: PUSH1 0x00 00005266: DUP1 00005267: REVERT 00005268: JUMPDEST 00005269: PUSH1 0x40 0000526b: MLOAD 0000526c: PUSH1 0x80 0000526e: DUP2 0000526f: ADD 00005270: DUP2 00005271: DUP2 00005272: LT 00005273: PUSH8 0xffffffffffffffff 0000527c: DUP3 0000527d: GT 0000527e: OR 0000527f: ISZERO 00005280: PUSH2 0x528b 00005283: JUMPI 00005284: PUSH2 0x528b 00005287: PUSH2 0x4cda 0000528a: JUMP 0000528b: JUMPDEST 0000528c: DUP1 0000528d: PUSH1 0x40 0000528f: MSTORE 00005290: POP 00005291: DUP3 00005292: CALLDATALOAD 00005293: DUP2 00005294: MSTORE 00005295: PUSH1 0x20 00005297: DUP4 00005298: ADD 00005299: CALLDATALOAD 0000529a: PUSH1 0x20 0000529c: DUP3 0000529d: ADD 0000529e: MSTORE 0000529f: PUSH1 0x40 000052a1: DUP4 000052a2: ADD 000052a3: CALLDATALOAD 000052a4: PUSH1 0x40 000052a6: DUP3 000052a7: ADD 000052a8: MSTORE 000052a9: PUSH1 0x60 000052ab: DUP4 000052ac: ADD 000052ad: CALLDATALOAD 000052ae: PUSH1 0x60 000052b0: DUP3 000052b1: ADD 000052b2: MSTORE 000052b3: DUP1 000052b4: SWAP2 000052b5: POP 000052b6: POP 000052b7: SWAP3 000052b8: SWAP2 000052b9: POP 000052ba: POP 000052bb: JUMP 000052bc: JUMPDEST 000052bd: PUSH1 0x00 000052bf: PUSH8 0xffffffffffffffff 000052c8: DUP1 000052c9: DUP5 000052ca: GT 000052cb: ISZERO 000052cc: PUSH2 0x52d7 000052cf: JUMPI 000052d0: PUSH2 0x52d7 000052d3: PUSH2 0x4cda 000052d6: JUMP 000052d7: JUMPDEST 000052d8: DUP4 000052d9: PUSH1 0x05 000052db: SHL 000052dc: PUSH1 0x20 000052de: PUSH2 0x52e8 000052e1: DUP2 000052e2: DUP4 000052e3: ADD 000052e4: PUSH2 0x4d09 000052e7: JUMP 000052e8: JUMPDEST 000052e9: DUP7 000052ea: DUP2 000052eb: MSTORE 000052ec: SWAP2 000052ed: DUP6 000052ee: ADD 000052ef: SWAP2 000052f0: DUP2 000052f1: DUP2 000052f2: ADD 000052f3: SWAP1 000052f4: CALLDATASIZE 000052f5: DUP5 000052f6: GT 000052f7: ISZERO 000052f8: PUSH2 0x5300 000052fb: JUMPI 000052fc: PUSH1 0x00 000052fe: DUP1 000052ff: REVERT 00005300: JUMPDEST 00005301: DUP7 00005302: JUMPDEST 00005303: DUP5 00005304: DUP2 00005305: LT 00005306: ISZERO 00005307: PUSH2 0x5334 0000530a: JUMPI 0000530b: DUP1 0000530c: CALLDATALOAD 0000530d: DUP7 0000530e: DUP2 0000530f: GT 00005310: ISZERO 00005311: PUSH2 0x531a 00005314: JUMPI 00005315: PUSH1 0x00 00005317: DUP1 00005318: DUP2 00005319: REVERT 0000531a: JUMPDEST 0000531b: PUSH2 0x5326 0000531e: CALLDATASIZE 0000531f: DUP3 00005320: DUP12 00005321: ADD 00005322: PUSH2 0x4d81 00005325: JUMP 00005326: JUMPDEST 00005327: DUP5 00005328: MSTORE 00005329: POP 0000532a: SWAP2 0000532b: DUP4 0000532c: ADD 0000532d: SWAP2 0000532e: DUP4 0000532f: ADD 00005330: PUSH2 0x5302 00005333: JUMP 00005334: JUMPDEST 00005335: POP 00005336: SWAP8 00005337: SWAP7 00005338: POP 00005339: POP 0000533a: POP 0000533b: POP 0000533c: POP 0000533d: POP 0000533e: POP 0000533f: JUMP 00005340: JUMPDEST 00005341: PUSH1 0x00 00005343: DUP5 00005344: MLOAD 00005345: PUSH2 0x5352 00005348: DUP2 00005349: DUP5 0000534a: PUSH1 0x20 0000534c: DUP10 0000534d: ADD 0000534e: PUSH2 0x4f90 00005351: JUMP 00005352: JUMPDEST 00005353: DUP1 00005354: DUP4 00005355: ADD 00005356: SWAP1 00005357: POP 00005358: PUSH32 0x2e00000000000000000000000000000000000000000000000000000000000000 00005379: DUP1 0000537a: DUP3 0000537b: MSTORE 0000537c: DUP6 0000537d: MLOAD 0000537e: PUSH2 0x538e 00005381: DUP2 00005382: PUSH1 0x01 00005384: DUP6 00005385: ADD 00005386: PUSH1 0x20 00005388: DUP11 00005389: ADD 0000538a: PUSH2 0x4f90 0000538d: JUMP 0000538e: JUMPDEST 0000538f: PUSH1 0x01 00005391: SWAP3 00005392: ADD 00005393: SWAP2 00005394: DUP3 00005395: ADD 00005396: MSTORE 00005397: DUP4 00005398: MLOAD 00005399: PUSH2 0x53a9 0000539c: DUP2 0000539d: PUSH1 0x02 0000539f: DUP5 000053a0: ADD 000053a1: PUSH1 0x20 000053a3: DUP9 000053a4: ADD 000053a5: PUSH2 0x4f90 000053a8: JUMP 000053a9: JUMPDEST 000053aa: ADD 000053ab: PUSH1 0x02 000053ad: ADD 000053ae: SWAP6 000053af: SWAP5 000053b0: POP 000053b1: POP 000053b2: POP 000053b3: POP 000053b4: POP 000053b5: JUMP 000053b6: JUMPDEST 000053b7: PUSH1 0x00 000053b9: PUSH1 0x20 000053bb: DUP3 000053bc: DUP5 000053bd: SUB 000053be: SLT 000053bf: ISZERO 000053c0: PUSH2 0x53c8 000053c3: JUMPI 000053c4: PUSH1 0x00 000053c6: DUP1 000053c7: REVERT 000053c8: JUMPDEST 000053c9: POP 000053ca: MLOAD 000053cb: SWAP2 000053cc: SWAP1 000053cd: POP 000053ce: JUMP 000053cf: JUMPDEST 000053d0: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 000053f1: PUSH1 0x00 000053f3: MSTORE 000053f4: PUSH1 0x11 000053f6: PUSH1 0x04 000053f8: MSTORE 000053f9: PUSH1 0x24 000053fb: PUSH1 0x00 000053fd: REVERT 000053fe: JUMPDEST 000053ff: PUSH1 0x00 00005401: PUSH8 0xffffffffffffffff 0000540a: DUP1 0000540b: DUP4 0000540c: AND 0000540d: DUP2 0000540e: DUP6 0000540f: AND 00005410: DUP2 00005411: DUP4 00005412: DIV 00005413: DUP2 00005414: GT 00005415: DUP3 00005416: ISZERO 00005417: ISZERO 00005418: AND 00005419: ISZERO 0000541a: PUSH2 0x5425 0000541d: JUMPI 0000541e: PUSH2 0x5425 00005421: PUSH2 0x53cf 00005424: JUMP 00005425: JUMPDEST 00005426: MUL 00005427: SWAP5 00005428: SWAP4 00005429: POP 0000542a: POP 0000542b: POP 0000542c: POP 0000542d: JUMP 0000542e: JUMPDEST 0000542f: PUSH1 0x00 00005431: PUSH8 0xffffffffffffffff 0000543a: DUP1 0000543b: DUP4 0000543c: AND 0000543d: DUP2 0000543e: DUP6 0000543f: AND 00005440: DUP1 00005441: DUP4 00005442: SUB 00005443: DUP3 00005444: GT 00005445: ISZERO 00005446: PUSH2 0x5451 00005449: JUMPI 0000544a: PUSH2 0x5451 0000544d: PUSH2 0x53cf 00005450: JUMP 00005451: JUMPDEST 00005452: ADD 00005453: SWAP5 00005454: SWAP4 00005455: POP 00005456: POP 00005457: POP 00005458: POP 00005459: JUMP 0000545a: JUMPDEST 0000545b: PUSH1 0x00 0000545d: DUP3 0000545e: DUP3 0000545f: LT 00005460: ISZERO 00005461: PUSH2 0x546c 00005464: JUMPI 00005465: PUSH2 0x546c 00005468: PUSH2 0x53cf 0000546b: JUMP 0000546c: JUMPDEST 0000546d: POP 0000546e: SUB 0000546f: SWAP1 00005470: JUMP 00005471: JUMPDEST 00005472: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00005493: PUSH1 0x00 00005495: MSTORE 00005496: PUSH1 0x12 00005498: PUSH1 0x04 0000549a: MSTORE 0000549b: PUSH1 0x24 0000549d: PUSH1 0x00 0000549f: REVERT 000054a0: JUMPDEST 000054a1: PUSH1 0x00 000054a3: DUP3 000054a4: PUSH2 0x54af 000054a7: JUMPI 000054a8: PUSH2 0x54af 000054ab: PUSH2 0x5471 000054ae: JUMP 000054af: JUMPDEST 000054b0: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 000054d1: DUP4 000054d2: EQ 000054d3: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 000054f4: DUP4 000054f5: EQ 000054f6: AND 000054f7: ISZERO 000054f8: PUSH2 0x5503 000054fb: JUMPI 000054fc: PUSH2 0x5503 000054ff: PUSH2 0x53cf 00005502: JUMP 00005503: JUMPDEST 00005504: POP 00005505: SDIV 00005506: SWAP1 00005507: JUMP 00005508: JUMPDEST 00005509: PUSH1 0x00 0000550b: DUP1 0000550c: DUP4 0000550d: SLT 0000550e: DUP4 0000550f: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 00005530: ADD 00005531: DUP4 00005532: SLT 00005533: DUP2 00005534: ISZERO 00005535: AND 00005536: ISZERO 00005537: PUSH2 0x5542 0000553a: JUMPI 0000553b: PUSH2 0x5542 0000553e: PUSH2 0x53cf 00005541: JUMP 00005542: JUMPDEST 00005543: DUP4 00005544: PUSH32 0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00005565: ADD 00005566: DUP4 00005567: SGT 00005568: DUP2 00005569: AND 0000556a: ISZERO 0000556b: PUSH2 0x5576 0000556e: JUMPI 0000556f: PUSH2 0x5576 00005572: PUSH2 0x53cf 00005575: JUMP 00005576: JUMPDEST 00005577: POP 00005578: POP 00005579: SUB 0000557a: SWAP1 0000557b: JUMP 0000557c: JUMPDEST 0000557d: PUSH1 0x00 0000557f: PUSH32 0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 000055a0: PUSH1 0x00 000055a2: DUP5 000055a3: SGT 000055a4: PUSH1 0x00 000055a6: DUP5 000055a7: SGT 000055a8: DUP6 000055a9: DUP4 000055aa: DIV 000055ab: DUP6 000055ac: GT 000055ad: DUP3 000055ae: DUP3 000055af: AND 000055b0: AND 000055b1: ISZERO 000055b2: PUSH2 0x55bd 000055b5: JUMPI 000055b6: PUSH2 0x55bd 000055b9: PUSH2 0x53cf 000055bc: JUMP 000055bd: JUMPDEST 000055be: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 000055df: PUSH1 0x00 000055e1: DUP8 000055e2: SLT 000055e3: DUP7 000055e4: DUP3 000055e5: SDIV 000055e6: DUP9 000055e7: SLT 000055e8: DUP2 000055e9: DUP5 000055ea: AND 000055eb: AND 000055ec: ISZERO 000055ed: PUSH2 0x55f8 000055f0: JUMPI 000055f1: PUSH2 0x55f8 000055f4: PUSH2 0x53cf 000055f7: JUMP 000055f8: JUMPDEST 000055f9: PUSH1 0x00 000055fb: DUP8 000055fc: SLT 000055fd: SWAP3 000055fe: POP 000055ff: DUP8 00005600: DUP3 00005601: SDIV 00005602: DUP8 00005603: SLT 00005604: DUP5 00005605: DUP5 00005606: AND 00005607: AND 00005608: ISZERO 00005609: PUSH2 0x5614 0000560c: JUMPI 0000560d: PUSH2 0x5614 00005610: PUSH2 0x53cf 00005613: JUMP 00005614: JUMPDEST 00005615: DUP8 00005616: DUP6 00005617: SDIV 00005618: DUP8 00005619: SLT 0000561a: DUP2 0000561b: DUP5 0000561c: AND 0000561d: AND 0000561e: ISZERO 0000561f: PUSH2 0x562a 00005622: JUMPI 00005623: PUSH2 0x562a 00005626: PUSH2 0x53cf 00005629: JUMP 0000562a: JUMPDEST 0000562b: POP 0000562c: POP 0000562d: POP 0000562e: SWAP3 0000562f: SWAP1 00005630: SWAP4 00005631: MUL 00005632: SWAP4 00005633: SWAP3 00005634: POP 00005635: POP 00005636: POP 00005637: JUMP 00005638: JUMPDEST 00005639: PUSH1 0x00 0000563b: DUP1 0000563c: DUP3 0000563d: SLT 0000563e: DUP3 0000563f: PUSH32 0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00005660: SUB 00005661: DUP5 00005662: SGT 00005663: DUP2 00005664: ISZERO 00005665: AND 00005666: ISZERO 00005667: PUSH2 0x5672 0000566a: JUMPI 0000566b: PUSH2 0x5672 0000566e: PUSH2 0x53cf 00005671: JUMP 00005672: JUMPDEST 00005673: DUP3 00005674: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 00005695: SUB 00005696: DUP5 00005697: SLT 00005698: DUP2 00005699: AND 0000569a: ISZERO 0000569b: PUSH2 0x56a6 0000569e: JUMPI 0000569f: PUSH2 0x56a6 000056a2: PUSH2 0x53cf 000056a5: JUMP 000056a6: JUMPDEST 000056a7: POP 000056a8: POP 000056a9: ADD 000056aa: SWAP1 000056ab: JUMP 000056ac: JUMPDEST 000056ad: PUSH1 0x00 000056af: DUP2 000056b0: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 000056d1: DIV 000056d2: DUP4 000056d3: GT 000056d4: DUP3 000056d5: ISZERO 000056d6: ISZERO 000056d7: AND 000056d8: ISZERO 000056d9: PUSH2 0x56e4 000056dc: JUMPI 000056dd: PUSH2 0x56e4 000056e0: PUSH2 0x53cf 000056e3: JUMP 000056e4: JUMPDEST 000056e5: POP 000056e6: MUL 000056e7: SWAP1 000056e8: JUMP 000056e9: JUMPDEST 000056ea: PUSH1 0x00 000056ec: DUP3 000056ed: PUSH2 0x56f8 000056f0: JUMPI 000056f1: PUSH2 0x56f8 000056f4: PUSH2 0x5471 000056f7: JUMP 000056f8: JUMPDEST 000056f9: POP 000056fa: DIV 000056fb: SWAP1 000056fc: JUMP 000056fd: JUMPDEST 000056fe: DUP7 000056ff: DUP2 00005700: MSTORE 00005701: PUSH1 0x00 00005703: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00005718: DUP1 00005719: DUP9 0000571a: AND 0000571b: PUSH1 0x20 0000571d: DUP5 0000571e: ADD 0000571f: MSTORE 00005720: DUP1 00005721: DUP8 00005722: AND 00005723: PUSH1 0x40 00005725: DUP5 00005726: ADD 00005727: MSTORE 00005728: POP 00005729: DUP5 0000572a: PUSH1 0x60 0000572c: DUP4 0000572d: ADD 0000572e: MSTORE 0000572f: DUP4 00005730: PUSH1 0x80 00005732: DUP4 00005733: ADD 00005734: MSTORE 00005735: PUSH1 0xc0 00005737: PUSH1 0xa0 00005739: DUP4 0000573a: ADD 0000573b: MSTORE 0000573c: PUSH2 0x5748 0000573f: PUSH1 0xc0 00005741: DUP4 00005742: ADD 00005743: DUP5 00005744: PUSH2 0x4fc0 00005747: JUMP 00005748: JUMPDEST 00005749: SWAP9 0000574a: SWAP8 0000574b: POP 0000574c: POP 0000574d: POP 0000574e: POP 0000574f: POP 00005750: POP 00005751: POP 00005752: POP 00005753: JUMP 00005754: JUMPDEST 00005755: PUSH1 0x00 00005757: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00005778: DUP3 00005779: SUB 0000577a: PUSH2 0x5785 0000577d: JUMPI 0000577e: PUSH2 0x5785 00005781: PUSH2 0x53cf 00005784: JUMP 00005785: JUMPDEST 00005786: POP 00005787: PUSH1 0x01 00005789: ADD 0000578a: SWAP1 0000578b: JUMP 0000578c: JUMPDEST 0000578d: PUSH1 0x00 0000578f: DUP3 00005790: PUSH2 0x579b 00005793: JUMPI 00005794: PUSH2 0x579b 00005797: PUSH2 0x5471 0000579a: JUMP 0000579b: JUMPDEST 0000579c: POP 0000579d: MOD 0000579e: SWAP1 0000579f: JUMP 000057a0: JUMPDEST 000057a1: PUSH1 0x00 000057a3: DUP3 000057a4: NOT 000057a5: DUP3 000057a6: GT 000057a7: ISZERO 000057a8: PUSH2 0x57b3 000057ab: JUMPI 000057ac: PUSH2 0x57b3 000057af: PUSH2 0x53cf 000057b2: JUMP 000057b3: JUMPDEST 000057b4: POP 000057b5: ADD 000057b6: SWAP1 000057b7: JUMP 000057b8: JUMPDEST 000057b9: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 000057da: PUSH1 0x00 000057dc: MSTORE 000057dd: PUSH1 0x32 000057df: PUSH1 0x04 000057e1: MSTORE 000057e2: PUSH1 0x24 000057e4: PUSH1 0x00 000057e6: REVERT 000057e7: JUMPDEST 000057e8: DUP1 000057e9: MLOAD 000057ea: PUSH4 0xffffffff 000057ef: DUP2 000057f0: AND 000057f1: DUP2 000057f2: EQ 000057f3: PUSH2 0x4d7c 000057f6: JUMPI 000057f7: PUSH1 0x00 000057f9: DUP1 000057fa: REVERT 000057fb: JUMPDEST 000057fc: DUP1 000057fd: MLOAD 000057fe: PUSH1 0xff 00005800: DUP2 00005801: AND 00005802: DUP2 00005803: EQ 00005804: PUSH2 0x4d7c 00005807: JUMPI 00005808: PUSH1 0x00 0000580a: DUP1 0000580b: REVERT 0000580c: JUMPDEST 0000580d: PUSH1 0x00 0000580f: PUSH1 0xc0 00005811: DUP3 00005812: DUP5 00005813: SUB 00005814: SLT 00005815: ISZERO 00005816: PUSH2 0x581e 00005819: JUMPI 0000581a: PUSH1 0x00 0000581c: DUP1 0000581d: REVERT 0000581e: JUMPDEST 0000581f: PUSH1 0x40 00005821: MLOAD 00005822: PUSH1 0xc0 00005824: DUP2 00005825: ADD 00005826: DUP2 00005827: DUP2 00005828: LT 00005829: PUSH8 0xffffffffffffffff 00005832: DUP3 00005833: GT 00005834: OR 00005835: ISZERO 00005836: PUSH2 0x5841 00005839: JUMPI 0000583a: PUSH2 0x5841 0000583d: PUSH2 0x4cda 00005840: JUMP 00005841: JUMPDEST 00005842: PUSH1 0x40 00005844: MSTORE 00005845: PUSH2 0x584d 00005848: DUP4 00005849: PUSH2 0x57e7 0000584c: JUMP 0000584d: JUMPDEST 0000584e: DUP2 0000584f: MSTORE 00005850: PUSH2 0x585b 00005853: PUSH1 0x20 00005855: DUP5 00005856: ADD 00005857: PUSH2 0x57fb 0000585a: JUMP 0000585b: JUMPDEST 0000585c: PUSH1 0x20 0000585e: DUP3 0000585f: ADD 00005860: MSTORE 00005861: PUSH2 0x586c 00005864: PUSH1 0x40 00005866: DUP5 00005867: ADD 00005868: PUSH2 0x57fb 0000586b: JUMP 0000586c: JUMPDEST 0000586d: PUSH1 0x40 0000586f: DUP3 00005870: ADD 00005871: MSTORE 00005872: PUSH2 0x587d 00005875: PUSH1 0x60 00005877: DUP5 00005878: ADD 00005879: PUSH2 0x57e7 0000587c: JUMP 0000587d: JUMPDEST 0000587e: PUSH1 0x60 00005880: DUP3 00005881: ADD 00005882: MSTORE 00005883: PUSH2 0x588e 00005886: PUSH1 0x80 00005888: DUP5 00005889: ADD 0000588a: PUSH2 0x57e7 0000588d: JUMP 0000588e: JUMPDEST 0000588f: PUSH1 0x80 00005891: DUP3 00005892: ADD 00005893: MSTORE 00005894: PUSH2 0x589f 00005897: PUSH1 0xa0 00005899: DUP5 0000589a: ADD 0000589b: PUSH2 0x51d1 0000589e: JUMP 0000589f: JUMPDEST 000058a0: PUSH1 0xa0 000058a2: DUP3 000058a3: ADD 000058a4: MSTORE 000058a5: SWAP4 000058a6: SWAP3 000058a7: POP 000058a8: POP 000058a9: POP 000058aa: JUMP 000058ab: JUMPDEST 000058ac: PUSH1 0x00 000058ae: PUSH1 0xff 000058b0: DUP4 000058b1: AND 000058b2: DUP1 000058b3: PUSH2 0x58be 000058b6: JUMPI 000058b7: PUSH2 0x58be 000058ba: PUSH2 0x5471 000058bd: JUMP 000058be: JUMPDEST 000058bf: DUP1 000058c0: PUSH1 0xff 000058c2: DUP5 000058c3: AND 000058c4: MOD 000058c5: SWAP2 000058c6: POP 000058c7: POP 000058c8: SWAP3 000058c9: SWAP2 000058ca: POP 000058cb: POP 000058cc: JUMP 000058cd: JUMPDEST 000058ce: PUSH1 0x00 000058d0: PUSH1 0xff 000058d2: DUP3 000058d3: AND 000058d4: PUSH1 0xff 000058d6: DUP5 000058d7: AND 000058d8: DUP1 000058d9: DUP3 000058da: LT 000058db: ISZERO 000058dc: PUSH2 0x58e7 000058df: JUMPI 000058e0: PUSH2 0x58e7 000058e3: PUSH2 0x53cf 000058e6: JUMP 000058e7: JUMPDEST 000058e8: SWAP1 000058e9: SUB 000058ea: SWAP4 000058eb: SWAP3 000058ec: POP 000058ed: POP 000058ee: POP 000058ef: JUMP 000058f0: JUMPDEST 000058f1: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00005912: PUSH1 0x00 00005914: MSTORE 00005915: PUSH1 0x21 00005917: PUSH1 0x04 00005919: MSTORE 0000591a: PUSH1 0x24 0000591c: PUSH1 0x00 0000591e: REVERT 0000591f: INVALID 00005920: LOG1 00005921: PUSH5 0x736f6c6343 00005927: STOP 00005928: ADDMOD 00005929: UNKNOWN(0x0F) 0000592a: STOP 0000592b: 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": "0xe9e05c42",
"selector": "0xe9e05c42",
"calldata_variants": [
"0xe9e05c42",
"0xe9e05c420000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf0498750",
"selector": "0xf0498750",
"calldata_variants": [
"0xf0498750",
"0xf04987500000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfc67436c",
"selector": "0xfc67436c",
"calldata_variants": [
"0xfc67436c",
"0xfc67436c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd53a822f",
"selector": "0xd53a822f",
"calldata_variants": [
"0xd53a822f",
"0xd53a822f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe965084c",
"selector": "0xe965084c",
"calldata_variants": [
"0xe965084c",
"0xe965084c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa14238e7",
"selector": "0xa14238e7",
"calldata_variants": [
"0xa14238e7",
"0xa14238e70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa35d99df",
"selector": "0xa35d99df",
"calldata_variants": [
"0xa35d99df",
"0xa35d99df0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xcff0ab96",
"selector": "0xcff0ab96",
"calldata_variants": [
"0xcff0ab96",
"0xcff0ab960000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 1866,
"type": "tx_origin_used"
},
{
"pc": 6776,
"type": "tx_origin_used"
},
{
"pc": 1864,
"type": "tx_origin_used"
},
{
"pc": 2064,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 4371,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 6773,
"type": "tx_origin_used"
},
{
"pc": 7444,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
]
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0x9d9ee84fa395cec2b23444bd1292c1a5d7910ab5a797509b34d148a1ff1edf43
call_targets:
0x75a2aac09c8a51bdde7303b06f1ad2fffccf8c09
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x9d9ee84fa395cec2b23444bd1292c1a5d7910ab5a797509b34d148a1ff1edf43",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x75a2aac09c8a51bdde7303b06f1ad2fffccf8c09"
],
"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": "0xe9e05c42",
"selector": "0xe9e05c42",
"calldata_variants": [
"0xe9e05c42",
"0xe9e05c420000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf0498750",
"selector": "0xf0498750",
"calldata_variants": [
"0xf0498750",
"0xf04987500000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfc67436c",
"selector": "0xfc67436c",
"calldata_variants": [
"0xfc67436c",
"0xfc67436c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd53a822f",
"selector": "0xd53a822f",
"calldata_variants": [
"0xd53a822f",
"0xd53a822f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe965084c",
"selector": "0xe965084c",
"calldata_variants": [
"0xe965084c",
"0xe965084c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa14238e7",
"selector": "0xa14238e7",
"calldata_variants": [
"0xa14238e7",
"0xa14238e70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa35d99df",
"selector": "0xa35d99df",
"calldata_variants": [
"0xa35d99df",
"0xa35d99df0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xcff0ab96",
"selector": "0xcff0ab96",
"calldata_variants": [
"0xcff0ab96",
"0xcff0ab960000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 7596,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 9293,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 2,
"guards_detected": [
{
"pc": 1866,
"type": "tx_origin_used"
},
{
"pc": 6776,
"type": "tx_origin_used"
},
{
"pc": 1864,
"type": "tx_origin_used"
},
{
"pc": 2064,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 4371,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 6773,
"type": "tx_origin_used"
},
{
"pc": 7444,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
],
"untrusted_call_count": 2
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0x9d9ee84fa395cec2b23444bd1292c1a5d7910ab5a797509b34d148a1ff1edf43
call_targets:
0x75a2aac09c8a51bdde7303b06f1ad2fffccf8c09
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x9d9ee84fa395cec2b23444bd1292c1a5d7910ab5a797509b34d148a1ff1edf43",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x75a2aac09c8a51bdde7303b06f1ad2fffccf8c09"
],
"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": "0xe9e05c42",
"selector": "0xe9e05c42",
"calldata_variants": [
"0xe9e05c42",
"0xe9e05c420000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf0498750",
"selector": "0xf0498750",
"calldata_variants": [
"0xf0498750",
"0xf04987500000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfc67436c",
"selector": "0xfc67436c",
"calldata_variants": [
"0xfc67436c",
"0xfc67436c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd53a822f",
"selector": "0xd53a822f",
"calldata_variants": [
"0xd53a822f",
"0xd53a822f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe965084c",
"selector": "0xe965084c",
"calldata_variants": [
"0xe965084c",
"0xe965084c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa14238e7",
"selector": "0xa14238e7",
"calldata_variants": [
"0xa14238e7",
"0xa14238e70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa35d99df",
"selector": "0xa35d99df",
"calldata_variants": [
"0xa35d99df",
"0xa35d99df0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xcff0ab96",
"selector": "0xcff0ab96",
"calldata_variants": [
"0xcff0ab96",
"0xcff0ab960000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 7596,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 9293,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 2,
"guards_detected": [
{
"pc": 1866,
"type": "tx_origin_used"
},
{
"pc": 6776,
"type": "tx_origin_used"
},
{
"pc": 1864,
"type": "tx_origin_used"
},
{
"pc": 2064,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 4371,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 6773,
"type": "tx_origin_used"
},
{
"pc": 7444,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
]
}
|