3cda34f9-1fd9-4a06-ad4d-43dfafce2985
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 |
|---|---|---|---|---|
| 30623 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 74734 | artifact.fetch | failed | 1 / 3 | 1 week ago |
| 74735 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 74736 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 74737 | capability.graph | complete | 1 / 3 | 1 week ago |
| 74738 | detector.run | complete | 1 / 3 | 1 week ago |
| 74739 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:1520926] OpenAI Codex v0.77.0 (research preview)
[codex:1520926] --------
[codex:1520926] workdir: /tmp/codex-multi-reaw30lk
[codex:1520926] model: gpt-5.2-codex
[codex:1520926] provider: openai
[codex:1520926] approval: never
[codex:1520926] sandbox: read-only
[codex:1520926] reasoning effort: xhigh
[codex:1520926] reasoning summaries: auto
[codex:1520926] session id: 019b6c8c-0aa0-7050-8ed0-62f23a22d542
[codex:1520926] --------
[codex:1520926] user
[codex:1520926] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:1520926] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:1520926] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:1520926]
[codex:1520926] Scope rules:
[codex:1520926] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:1520926] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:1520926]
[codex:1520926] Output MUST be valid JSON matching the provided schema.
[codex:1520926] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:1520926] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:1520926]
[codex:1520926] Output constraints (IMPORTANT):
[codex:1520926] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:1520926] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:1520926] mcp startup: no servers
[codex:1520926]
[codex:1520926] thinking
[codex:1520926] **Reading audit bundle instructions**
[codex:1520926] exec
[codex:1520926] /bin/bash -lc ls in /tmp/codex-multi-reaw30lk succeeded in 5ms:
[codex:1520926] AUDIT_BUNDLE.txt
[codex:1520926] codex-output-schema.json
[codex:1520926] contracts
[codex:1520926] exec
[codex:1520926] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-reaw30lk succeeded in 6ms:
[codex:1520926] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:1520926]
[codex:1520926] ================================================================================
[codex:1520926] FILE: contracts/@openzeppelin/contracts/governance/utils/IVotes.sol
[codex:1520926] ================================================================================
[codex:1520926] // SPDX-License-Identifier: MIT
[codex:1520926] // OpenZeppelin Contracts (last updated v5.0.0) (governance/utils/IVotes.sol)
[codex:1520926] pragma solidity ^0.8.20;
[codex:1520926]
[codex:1520926] /**
[codex:1520926] * @dev Common interface for {ERC20Votes}, {ERC721Votes}, and other {Votes}-enabled contracts.
[codex:1520926] */
[codex:1520926] interface IVotes {
[codex:1520926] /**
[codex:1520926] * @dev The signature used has expired.
[codex:1520926] */
[codex:1520926] error VotesExpiredSignature(uint256 expiry);
[codex:1520926]
[codex:1520926] /**
[codex:1520926] * @dev Emitted when an account changes their delegate.
[codex:1520926]
[codex:1520926] thinking
[codex:1520926] **Locating first-party contract files**
[codex:1520926] exec
[codex:1520926] /bin/bash -lc 'rg "''^FILE: contracts/contracts" -n AUDIT_BUNDLE.txt' in /tmp/codex-multi-reaw30lk succeeded in 13ms:
[codex:1520926] 4926:FILE: contracts/contracts/DataTypes.sol
[codex:1520926] 5047:FILE: contracts/contracts/Escrow.sol
[codex:1520926] 5725:FILE: contracts/contracts/errors/Errors.sol
[codex:1520926] 5783:FILE: contracts/contracts/interfaces/IDelegation.sol
[codex:1520926] 5797:FILE: contracts/contracts/interfaces/IEscrow.sol
[codex:1520926] 6054:FILE: contracts/contracts/interfaces/IOracleAdapter.sol
[codex:1520926] 6125:FILE: contracts/contracts/interfaces/IRouter.sol
[codex:1520926] 6544:FILE: contracts/contracts/utils/InitializableERC20.sol
[codex:1520926]
[codex:1520926] thinking
[codex:1520926] **Reviewing audit bundle reading strategy**
[codex:1520926] exec
[codex:1520926] /bin/bash -lc "sed -n '4926,5046p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-reaw30lk succeeded in 6ms:
[codex:1520926] FILE: contracts/contracts/DataTypes.sol
[codex:1520926] ================================================================================
[codex:1520926] // SPDX-License-Identifier: MIT
[codex:1520926] pragma solidity 0.8.24;
[codex:1520926]
[codex:1520926] library DataTypes {
[codex:1520926] struct OptionInfo {
[codex:1520926] address underlyingToken;
[codex:1520926] uint48 expiry;
[codex:1520926] address settlementToken;
[codex:1520926] uint48 earliestExercise;
[codex:1520926] uint128 notional;
[codex:1520926] uint128 strike;
[codex:1520926] AdvancedSettings advancedSettings;
[codex:1520926] }
[codex:1520926]
[codex:1520926] struct AdvancedSettings {
[codex:1520926] uint64 borrowCap;
[codex:1520926] address oracle;
[codex:1520926] bool premiumTokenIsUnderlying;
[codex:1520926]
[codex:1520926] thinking
[codex:1520926] **Locating Escrow.sol file**
[codex:1520926] exec
[codex:1520926] /bin/bash -lc "sed -n '5047,5724p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-reaw30lk succeeded in 7ms:
[codex:1520926] FILE: contracts/contracts/Escrow.sol
[codex:1520926] ================================================================================
[codex:1520926] // SPDX-License-Identifier: MIT
[codex:1520926] pragma solidity 0.8.24;
[codex:1520926]
[codex:1520926] import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1520926] import {IERC20Metadata} from "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
[codex:1520926] import {ERC20Votes} from "@openzeppelin/contracts/token/ERC20/extensions/ERC20Votes.sol";
[codex:1520926] import {SafeCast} from "@openzeppelin/contracts/utils/math/SafeCast.sol";
[codex:1520926] import {Strings} from "@openzeppelin/contracts/utils/Strings.sol";
[codex:1520926] import {InitializableERC20} from "./utils/InitializableERC20.sol";
[codex:1520926] import {DataTypes} from "./DataTypes.sol";
[codex:1520926] import {Errors} from "./errors/Errors.sol";
[codex:1520926] import {IOracleAdapter} from "./interfaces/IOracleAdapter.sol";
[codex:1520926] import {IDelegation} from "./interfaces/IDelegation.sol";
[codex:1520926] import {IEscrow} from "./interfaces/IEscrow.sol";
[codex:1520926] import {IRouter} from "./interfaces/IRouter.sol";
[codex:1520926]
[codex:1520926] contract Escrow is InitializableERC20, IEscrow {
[codex:1520926] using SafeERC20 for IERC20Metadata;
[codex:1520926]
[codex:1520926] thinking
[codex:1520926] **Checking interface coverage**
[codex:1520926] exec
[codex:1520926] /bin/bash -lc "sed -n '5725,5782p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-reaw30lk succeeded in 6ms:
[codex:1520926] FILE: contracts/contracts/errors/Errors.sol
[codex:1520926] ================================================================================
[codex:1520926] // SPDX-License-Identifier: MIT
[codex:1520926] pragma solidity 0.8.24;
[codex:1520926]
[codex:1520926] library Errors {
[codex:1520926] error AlreadyInitialized();
[codex:1520926] error DistPartnerFeeUnchanged();
[codex:1520926] error FeeHandlerAlreadySet();
[codex:1520926] error InvalidAddress();
[codex:1520926] error InvalidArrayLength();
[codex:1520926] error InvalidBid();
[codex:1520926] error InvalidBorrowAmount();
[codex:1520926] error InvalidBorrowCap();
[codex:1520926] error InvalidBorrowTime();
[codex:1520926] error InvalidDistPartnerFeeShare();
[codex:1520926] error InvalidEarliestExercise();
[codex:1520926] error InvalidEarliestExerciseTenor();
[codex:1520926] error InvalidEIP1271Signature();
[codex:1520926] error InvalidExpiry();
[codex:1520926] exec
[codex:1520926] /bin/bash -lc "sed -n '5783,5796p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-reaw30lk succeeded in 5ms:
[codex:1520926] FILE: contracts/contracts/interfaces/IDelegation.sol
[codex:1520926] ================================================================================
[codex:1520926] // SPDX-License-Identifier: MIT
[codex:1520926] pragma solidity 0.8.24;
[codex:1520926]
[codex:1520926] interface IDelegation {
[codex:1520926] /// @dev Sets a delegate for the msg.sender and a specific id.
[codex:1520926] /// The combination of msg.sender and the id can be seen as a unique key.
[codex:1520926] /// @param id Id for which the delegate should be set
[codex:1520926] /// @param delegate Address of the delegate
[codex:1520926] function setDelegate(bytes32 id, address delegate) external;
[codex:1520926] }
[codex:1520926]
[codex:1520926] ================================================================================
[codex:1520926] exec
[codex:1520926] /bin/bash -lc "sed -n '5797,6053p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-reaw30lk succeeded in 6ms:
[codex:1520926] FILE: contracts/contracts/interfaces/IEscrow.sol
[codex:1520926] ================================================================================
[codex:1520926] // SPDX-License-Identifier: MIT
[codex:1520926] pragma solidity 0.8.24;
[codex:1520926]
[codex:1520926] import {DataTypes} from "../DataTypes.sol";
[codex:1520926]
[codex:1520926] /**
[codex:1520926] * @title IEscrow
[codex:1520926] * @dev Interface for the Escrow contract.
[codex:1520926] * Provides functionality for initializing auctions, bids, options, and managing underlying tokens.
[codex:1520926] */
[codex:1520926] interface IEscrow {
[codex:1520926] /// @notice Emitted when on-chain voting rights are delegated.
[codex:1520926] /// @param delegate The address delegated for on-chain voting.
[codex:1520926] event OnChainVotingDelegation(address delegate);
[codex:1520926]
[codex:1520926] /// @notice Emitted when off-chain voting rights are delegated.
[codex:1520926] /// @param allowedDelegateRegistry Address of the allowed delegate registry.
[codex:1520926] /// @param spaceId ID of the delegation space (e.g., for Snapshot).
[codex:1520926]
[codex:1520926] thinking
[codex:1520926] **Identifying required adapters**
[codex:1520926] exec
[codex:1520926] /bin/bash -lc "sed -n '6054,6124p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-reaw30lk succeeded in 6ms:
[codex:1520926] FILE: contracts/contracts/interfaces/IOracleAdapter.sol
[codex:1520926] ================================================================================
[codex:1520926] // SPDX-License-Identifier: MIT
[codex:1520926] pragma solidity 0.8.24;
[codex:1520926]
[codex:1520926] /// @title IOracleAdapter
[codex:1520926] /// @dev Interface for OracleAdapter contract to provide a standard way of interacting with oracles.
[codex:1520926] interface IOracleAdapter {
[codex:1520926] /// @notice Event emitted when a new oracle mapping is added.
[codex:1520926] /// @param tokenAddress The address of the token for which the oracle is being added.
[codex:1520926] /// @param oracleAddress The address of the oracle to be used for given token.
[codex:1520926] event AddOracleMapping(address indexed tokenAddress, address oracleAddress);
[codex:1520926]
[codex:1520926] /// @notice Retrieves the price of a specified token quoted in another token.
[codex:1520926] /// @param token The address of the token for which the price is to be retrieved.
[codex:1520926] /// @param quoteToken The address of the token in which the price is to be quoted.
[codex:1520926] /// @param oracleData Additional data to pass to the oracle (if needed).
[codex:1520926] /// @return tokenPriceInQuoteToken The price of 1 unit of token quoted in the quoteToken.
[codex:1520926] function getPrice(
[codex:1520926] address token,
[codex:1520926]
[codex:1520926]
[codex:1520926]
[codex:1520926]
[codex:1520926]
[codex:1520926] thinking
[codex:1520926] **Evaluating Escrow contract vulnerabilities**
[codex:1520926] thinking
[codex:1520926] **Analyzing escrow initialization and borrowing logic vulnerabilities**
[codex:1520926]
[codex:1520926] I'm tracing how the Escrow implementation disables initializers but clones require explicit initialization, noting risks if router doesn't initialize quickly. I'm also exploring borrowing and repayment flows, seeing the contract trusts router to handle underlying transfers properly, which could risk accounting if router misbehaves. Additionally, I’m checking how zero strike prices or unvalidated borrow caps might cause errors or unexpected behavior, especially in less-restricted initialization paths like RFQ or mint options. Let's see if these are exploitable or mainly configuration-dependent.
[codex:1520926] thinking
[codex:1520926] **Evaluating price oracle dependence and token flow assumptions**
[codex:1520926]
[codex:1520926] I'm carefully reviewing how oracle prices influence exercise costs, noting that if oracle data can be manipulated or stale, users might exploit pricing to exercise options cheaply. I'm also checking token flows in borrow and repay functions, seeing that the contract trusts the router for correctness and that option minting or burning relies on external controls. There are several trust assumptions and edge cases like strike price zero or borrow caps that may cause failures but seem configuration-dependent rather than direct exploits. Overall, the risk seems tied to how well the router and oracle are secured.
[codex:1520926] thinking
[codex:1520926] **Identifying initialization and token approval quirks**
[codex:1520926]
[codex:1520926] I'm noticing a storage variable shadowing between InitializableERC20 and its base, which could cause confusion but isn't an outright vulnerability. There's also a risk from the router gaining unlimited approval to transfer option tokens from newly minted holders, which relies on router trust. Some calculations assume consistent decimals from oracles and tokens, which might cause subtle mispricing if mismatched. The owner and router roles have broad powers, including withdraws, but those seem intentional. Oracle dependency remains a key area where data trust impacts security.
[codex:1520926] thinking
[codex:1520926] **Assessing router trust and potential reentrancy risks**
[codex:1520926]
[codex:1520926] I'm weighing the trade-offs of granting the router unlimited token approvals and its role in external calls during transfers, which could enable reentrancy if the router is compromised. The contract relies heavily on the router for enforcing access controls and collecting fees, so while some behaviors might seem risky alone, they fit a broader trust model. I’m also considering minor issues like missing validations in initialization functions and input assumptions that could cause reverts or misconfigurations rather than direct exploits.
[codex:1520926] exec
[codex:1520926] /bin/bash -lc 'nl -ba contracts/contracts/Escrow.sol' in /tmp/codex-multi-reaw30lk succeeded in 7ms:
[codex:1520926] 1 // SPDX-License-Identifier: MIT
[codex:1520926] 2 pragma solidity 0.8.24;
[codex:1520926] 3
[codex:1520926] 4 import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1520926] 5 import {IERC20Metadata} from "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
[codex:1520926] 6 import {ERC20Votes} from "@openzeppelin/contracts/token/ERC20/extensions/ERC20Votes.sol";
[codex:1520926] 7 import {SafeCast} from "@openzeppelin/contracts/utils/math/SafeCast.sol";
[codex:1520926] 8 import {Strings} from "@openzeppelin/contracts/utils/Strings.sol";
[codex:1520926] 9 import {InitializableERC20} from "./utils/InitializableERC20.sol";
[codex:1520926] 10 import {DataTypes} from "./DataTypes.sol";
[codex:1520926] 11 import {Errors} from "./errors/Errors.sol";
[codex:1520926] 12 import {IOracleAdapter} from "./interfaces/IOracleAdapter.sol";
[codex:1520926] 13 import {IDelegation} from "./interfaces/IDelegation.sol";
[codex:1520926] 14 import {IEscrow} from "./interfaces/IEscrow.sol";
[codex:1520926] 15 import {IRouter} from "./interfaces/IRouter.sol";
[codex:1520926] 16
[codex:1520926] 17 contract Escrow is InitializableERC20, IEscrow {
[codex:1520926] 18 using SafeERC20 for IERC20Metadata;
[codex:1520926] 19
[codex:1520926] 20 uint256 internal constant BASE = 1 ether;
[codex:1520926]
[codex:1520926] thinking
[codex:1520926] **Checking InitializableERC20 line numbers**
[codex:1520926] exec
[codex:1520926] /bin/bash -lc 'nl -ba contracts/contracts/utils/InitializableERC20.sol' in /tmp/codex-multi-reaw30lk succeeded in 5ms:
[codex:1520926] 1 // SPDX-License-Identifier: UNLICENSED
[codex:1520926] 2 pragma solidity 0.8.24;
[codex:1520926] 3
[codex:1520926] 4 import {ERC20} from "@openzeppelin/contracts/token/ERC20/ERC20.sol";
[codex:1520926] 5 import {Initializable} from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
[codex:1520926] 6 import {Errors} from "../errors/Errors.sol";
[codex:1520926] 7
[codex:1520926] 8 contract InitializableERC20 is ERC20, Initializable {
[codex:1520926] 9 bool private _initialized;
[codex:1520926] 10 uint8 private _decimals;
[codex:1520926] 11 string private _name;
[codex:1520926] 12 string private _symbol;
[codex:1520926] 13
[codex:1520926] 14 constructor() ERC20("", "") {
[codex:1520926] 15 _disableInitializers();
[codex:1520926] 16 }
[codex:1520926] 17
[codex:1520926] 18 function _initializeERC20(
[codex:1520926] 19 string memory __name,
[codex:1520926] 20 string memory __symbol,
[codex:1520926]
[codex:1520926] thinking
[codex:1520926] **Summarizing audit findings JSON**
[codex:1520926]
[codex:1520926] I'm organizing the key audit issues detected: one about missing parameter validation in RFQ/mint initializers causing potential conversion underflow and unexercisable options, and another about oracle price dependence allowing manipulation if the oracle adapter is weak. I'll include severity, categories, exploit scenarios, recommendations, evidence, and locations per issue to form a clear JSON summary.
[codex:1520926] codex
[codex:1520926] {"no_findings":false,"summary":"Found 2 issues: RFQ/mint initializers accept invalid option parameters that can brick exercise/borrow, and oracle price inputs are trusted without additional integrity checks.","findings":[{"severity":"low","category":"math","title":"RFQ/mint options lack strike/expiry validation, enabling underflow and unexercisable options","exploit_scenario":"A malicious RFQ maker (or minter) sets `strike = 0` or `earliestExercise > expiry` in `OptionInfo`. The escrow still mints the option, but any exercise/borrow path calls `_getConversionAmount` with `roundUp = true`, where `nominator - 1` underflows when `strike` is zero, reverting every exercise/borrow and leaving the taker with worthless options and paid premium.","recommendation":"Add the same parameter validation used in `initializeAuction` to `initializeRFQMatch` and `initializeMintOption`: require nonzero `strike`/`notional`, distinct tokens, valid `expiry/earliestExercise`, nonzero oracle, and `borrowCap <= BASE`. Consider adding a guard in `_getConversionAmount` to handle `strike == 0` safely.","evidence":"`initializeRFQMatch`/`initializeMintOption` assign `optionInfo` without validation; `_getConversionAmount` uses `(nominator - 1)` when rounding up, which reverts if `nominator` is zero.","locations":["contracts/contracts/Escrow.sol:112","contracts/contracts/Escrow.sol:136","contracts/contracts/Escrow.sol:660"]},{"severity":"medium","category":"oracle","title":"Oracle price feeds directly set strike/premium/exercise costs without added integrity checks","exploit_scenario":"If the configured oracle adapter can be influenced by callers (e.g., spot DEX or permissive `oracleData`), a bidder/exerciser can manipulate `oracleSpotPrice` or the settlement→underlying price to underpay premium/strike or exercise at an artificially favorable rate.","recommendation":"Ensure the oracle adapter enforces TWAPs and staleness bounds and only accepts validated data; consider additional sanity bounds or whitelisting trusted oracles per pair in escrow/router flows.","evidence":"`previewBid` uses `IOracleAdapter.getPrice` to compute premium/strike; `handleExercise` uses `getPrice` for settlement→underlying conversion without escrow-level checks.","locations":["contracts/contracts/Escrow.sol:240","contracts/contracts/Escrow.sol:506"]}]}
[codex:1520926] tokens used
[codex:1520926] 57,767
[codex:1520926] {"no_findings":false,"summary":"Found 2 issues: RFQ/mint initializers accept invalid option parameters that can brick exercise/borrow, and oracle price inputs are trusted without additional integrity checks.","findings":[{"severity":"low","category":"math","title":"RFQ/mint options lack strike/expiry validation, enabling underflow and unexercisable options","exploit_scenario":"A malicious RFQ maker (or minter) sets `strike = 0` or `earliestExercise > expiry` in `OptionInfo`. The escrow still mints the option, but any exercise/borrow path calls `_getConversionAmount` with `roundUp = true`, where `nominator - 1` underflows when `strike` is zero, reverting every exercise/borrow and leaving the taker with worthless options and paid premium.","recommendation":"Add the same parameter validation used in `initializeAuction` to `initializeRFQMatch` and `initializeMintOption`: require nonzero `strike`/`notional`, distinct tokens, valid `expiry/earliestExercise`, nonzero oracle, and `borrowCap <= BASE`. Consider adding a guard in `_getConversionAmount` to handle `strike == 0` safely.","evidence":"`initializeRFQMatch`/`initializeMintOption` assign `optionInfo` without validation; `_getConversionAmount` uses `(nominator - 1)` when rounding up, which reverts if `nominator` is zero.","locations":["contracts/contracts/Escrow.sol:112","contracts/contracts/Escrow.sol:136","contracts/contracts/Escrow.sol:660"]},{"severity":"medium","category":"oracle","title":"Oracle price feeds directly set strike/premium/exercise costs without added integrity checks","exploit_scenario":"If the configured oracle adapter can be influenced by callers (e.g., spot DEX or permissive `oracleData`), a bidder/exerciser can manipulate `oracleSpotPrice` or the settlement→underlying price to underpay premium/strike or exercise at an artificially favorable rate.","recommendation":"Ensure the oracle adapter enforces TWAPs and staleness bounds and only accepts validated data; consider additional sanity bounds or whitelisting trusted oracles per pair in escrow/router flows.","evidence":"`previewBid` uses `IOracleAdapter.getPrice` to compute premium/strike; `handleExercise` uses `getPrice` for settlement→underlying conversion without escrow-level checks.","locations":["contracts/contracts/Escrow.sol:240","contracts/contracts/Escrow.sol:506"]}]}
{
"codex": {
"ran_at": "2025-12-30T00:05:10.216845+00:00",
"returncode": 0
},
"summary": "Found 2 issues: RFQ/mint initializers accept invalid option parameters that can brick exercise/borrow, and oracle price inputs are trusted without additional integrity checks.",
"raw_final": {
"summary": "Found 2 issues: RFQ/mint initializers accept invalid option parameters that can brick exercise/borrow, and oracle price inputs are trusted without additional integrity checks.",
"findings": [
{
"title": "RFQ/mint options lack strike/expiry validation, enabling underflow and unexercisable options",
"category": "math",
"evidence": "`initializeRFQMatch`/`initializeMintOption` assign `optionInfo` without validation; `_getConversionAmount` uses `(nominator - 1)` when rounding up, which reverts if `nominator` is zero.",
"severity": "low",
"locations": [
"contracts/contracts/Escrow.sol:112",
"contracts/contracts/Escrow.sol:136",
"contracts/contracts/Escrow.sol:660"
],
"recommendation": "Add the same parameter validation used in `initializeAuction` to `initializeRFQMatch` and `initializeMintOption`: require nonzero `strike`/`notional`, distinct tokens, valid `expiry/earliestExercise`, nonzero oracle, and `borrowCap <= BASE`. Consider adding a guard in `_getConversionAmount` to handle `strike == 0` safely.",
"exploit_scenario": "A malicious RFQ maker (or minter) sets `strike = 0` or `earliestExercise > expiry` in `OptionInfo`. The escrow still mints the option, but any exercise/borrow path calls `_getConversionAmount` with `roundUp = true`, where `nominator - 1` underflows when `strike` is zero, reverting every exercise/borrow and leaving the taker with worthless options and paid premium."
},
{
"title": "Oracle price feeds directly set strike/premium/exercise costs without added integrity checks",
"category": "oracle",
"evidence": "`previewBid` uses `IOracleAdapter.getPrice` to compute premium/strike; `handleExercise` uses `getPrice` for settlement\u2192underlying conversion without escrow-level checks.",
"severity": "medium",
"locations": [
"contracts/contracts/Escrow.sol:240",
"contracts/contracts/Escrow.sol:506"
],
"recommendation": "Ensure the oracle adapter enforces TWAPs and staleness bounds and only accepts validated data; consider additional sanity bounds or whitelisting trusted oracles per pair in escrow/router flows.",
"exploit_scenario": "If the configured oracle adapter can be influenced by callers (e.g., spot DEX or permissive `oracleData`), a bidder/exerciser can manipulate `oracleSpotPrice` or the settlement\u2192underlying price to underpay premium/strike or exercise at an artificially favorable rate."
}
],
"no_findings": false
},
"no_findings": false,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: CALLVALUE 00000006: DUP1 00000007: ISZERO 00000008: PUSH2 0x0010 0000000b: JUMPI 0000000c: PUSH1 0x00 0000000e: DUP1 0000000f: REVERT 00000010: JUMPDEST 00000011: POP 00000012: PUSH1 0x04 00000014: CALLDATASIZE 00000015: LT 00000016: PUSH2 0x0226 00000019: JUMPI 0000001a: PUSH1 0x00 0000001c: CALLDATALOAD 0000001d: PUSH1 0xe0 0000001f: SHR 00000020: DUP1 00000021: PUSH4 0x70a08231 00000026: GT 00000027: PUSH2 0x012a 0000002a: JUMPI 0000002b: DUP1 0000002c: PUSH4 0xc17723f9 00000031: GT 00000032: PUSH2 0x00bd 00000035: JUMPI 00000036: DUP1 00000037: PUSH4 0xdd62ed3e 0000003c: GT 0000003d: PUSH2 0x008c 00000040: JUMPI 00000041: DUP1 00000042: PUSH4 0xf0aa49d2 00000047: GT 00000048: PUSH2 0x0071 0000004b: JUMPI 0000004c: DUP1 0000004d: PUSH4 0xf0aa49d2 00000052: EQ 00000053: PUSH2 0x0796 00000056: JUMPI 00000057: DUP1 00000058: PUSH4 0xf2fde38b 0000005d: EQ 0000005e: PUSH2 0x07a8 00000061: JUMPI 00000062: DUP1 00000063: PUSH4 0xf887ea40 00000068: EQ 00000069: PUSH2 0x07bb 0000006c: JUMPI 0000006d: PUSH1 0x00 0000006f: DUP1 00000070: REVERT 00000071: JUMPDEST 00000072: DUP1 00000073: PUSH4 0xdd62ed3e 00000078: EQ 00000079: PUSH2 0x073c 0000007c: JUMPI 0000007d: DUP1 0000007e: PUSH4 0xdf1d444e 00000083: EQ 00000084: PUSH2 0x0775 00000087: JUMPI 00000088: PUSH1 0x00 0000008a: DUP1 0000008b: REVERT 0000008c: JUMPDEST 0000008d: DUP1 0000008e: PUSH4 0xc17723f9 00000093: EQ 00000094: PUSH2 0x06cd 00000097: JUMPI 00000098: DUP1 00000099: PUSH4 0xd0e8dcff 0000009e: EQ 0000009f: PUSH2 0x06da 000000a2: JUMPI 000000a3: DUP1 000000a4: PUSH4 0xd1c699aa 000000a9: EQ 000000aa: PUSH2 0x06ed 000000ad: JUMPI 000000ae: DUP1 000000af: PUSH4 0xd951124d 000000b4: EQ 000000b5: PUSH2 0x0729 000000b8: JUMPI 000000b9: PUSH1 0x00 000000bb: DUP1 000000bc: REVERT 000000bd: JUMPDEST 000000be: DUP1 000000bf: PUSH4 0x95d89b41 000000c4: GT 000000c5: PUSH2 0x00f9 000000c8: JUMPI 000000c9: DUP1 000000ca: PUSH4 0x95d89b41 000000cf: EQ 000000d0: PUSH2 0x067f 000000d3: JUMPI 000000d4: DUP1 000000d5: PUSH4 0xa3620ec4 000000da: EQ 000000db: PUSH2 0x0687 000000de: JUMPI 000000df: DUP1 000000e0: PUSH4 0xa9059cbb 000000e5: EQ 000000e6: PUSH2 0x069a 000000e9: JUMPI 000000ea: DUP1 000000eb: PUSH4 0xb53512f2 000000f0: EQ 000000f1: PUSH2 0x06ad 000000f4: JUMPI 000000f5: PUSH1 0x00 000000f7: DUP1 000000f8: REVERT 000000f9: JUMPDEST 000000fa: DUP1 000000fb: PUSH4 0x70a08231 00000100: EQ 00000101: PUSH2 0x05fe 00000104: JUMPI 00000105: DUP1 00000106: PUSH4 0x8da5cb5b 0000010b: EQ 0000010c: PUSH2 0x0627 0000010f: JUMPI 00000110: DUP1 00000111: PUSH4 0x9076e904 00000116: EQ 00000117: PUSH2 0x063a 0000011a: JUMPI 0000011b: DUP1 0000011c: PUSH4 0x95a2251f 00000121: EQ 00000122: PUSH2 0x066c 00000125: JUMPI 00000126: PUSH1 0x00 00000128: DUP1 00000129: REVERT 0000012a: JUMPDEST 0000012b: DUP1 0000012c: PUSH4 0x31cd4e62 00000131: GT 00000132: PUSH2 0x01bd 00000135: JUMPI 00000136: DUP1 00000137: PUSH4 0x53795208 0000013c: GT 0000013d: PUSH2 0x018c 00000140: JUMPI 00000141: DUP1 00000142: PUSH4 0x5b6a251b 00000147: GT 00000148: PUSH2 0x0171 0000014b: JUMPI 0000014c: DUP1 0000014d: PUSH4 0x5b6a251b 00000152: EQ 00000153: PUSH2 0x05c5 00000156: JUMPI 00000157: DUP1 00000158: PUSH4 0x5c8ad611 0000015d: EQ 0000015e: PUSH2 0x05d8 00000161: JUMPI 00000162: DUP1 00000163: PUSH4 0x67ff93a6 00000168: EQ 00000169: PUSH2 0x05eb 0000016c: JUMPI 0000016d: PUSH1 0x00 0000016f: DUP1 00000170: REVERT 00000171: JUMPDEST 00000172: DUP1 00000173: PUSH4 0x53795208 00000178: EQ 00000179: PUSH2 0x04c5 0000017c: JUMPI 0000017d: DUP1 0000017e: PUSH4 0x568f02f8 00000183: EQ 00000184: PUSH2 0x04d8 00000187: JUMPI 00000188: PUSH1 0x00 0000018a: DUP1 0000018b: REVERT 0000018c: JUMPDEST 0000018d: DUP1 0000018e: PUSH4 0x31cd4e62 00000193: EQ 00000194: PUSH2 0x0428 00000197: JUMPI 00000198: DUP1 00000199: PUSH4 0x43814e1e 0000019e: EQ 0000019f: PUSH2 0x0460 000001a2: JUMPI 000001a3: DUP1 000001a4: PUSH4 0x4c19386c 000001a9: EQ 000001aa: PUSH2 0x0480 000001ad: JUMPI 000001ae: DUP1 000001af: PUSH4 0x51b10f13 000001b4: EQ 000001b5: PUSH2 0x04b2 000001b8: JUMPI 000001b9: PUSH1 0x00 000001bb: DUP1 000001bc: REVERT 000001bd: JUMPDEST 000001be: DUP1 000001bf: PUSH4 0x23b872dd 000001c4: GT 000001c5: PUSH2 0x01f9 000001c8: JUMPI 000001c9: DUP1 000001ca: PUSH4 0x23b872dd 000001cf: EQ 000001d0: PUSH2 0x029f 000001d3: JUMPI 000001d4: DUP1 000001d5: PUSH4 0x23c8affa 000001da: EQ 000001db: PUSH2 0x02b2 000001de: JUMPI 000001df: DUP1 000001e0: PUSH4 0x2844e1e0 000001e5: EQ 000001e6: PUSH2 0x02c7 000001e9: JUMPI 000001ea: DUP1 000001eb: PUSH4 0x313ce567 000001f0: EQ 000001f1: PUSH2 0x040b 000001f4: JUMPI 000001f5: PUSH1 0x00 000001f7: DUP1 000001f8: REVERT 000001f9: JUMPDEST 000001fa: DUP1 000001fb: PUSH4 0x06fdde03 00000200: EQ 00000201: PUSH2 0x022b 00000204: JUMPI 00000205: DUP1 00000206: PUSH4 0x095ea7b3 0000020b: EQ 0000020c: PUSH2 0x0249 0000020f: JUMPI 00000210: DUP1 00000211: PUSH4 0x18160ddd 00000216: EQ 00000217: PUSH2 0x026c 0000021a: JUMPI 0000021b: DUP1 0000021c: PUSH4 0x18f9f30f 00000221: EQ 00000222: PUSH2 0x027e 00000225: JUMPI 00000226: JUMPDEST 00000227: PUSH1 0x00 00000229: DUP1 0000022a: REVERT 0000022b: JUMPDEST 0000022c: PUSH2 0x0233 0000022f: PUSH2 0x07ce 00000232: JUMP 00000233: JUMPDEST 00000234: PUSH1 0x40 00000236: MLOAD 00000237: PUSH2 0x0240 0000023a: SWAP2 0000023b: SWAP1 0000023c: PUSH2 0x356d 0000023f: JUMP 00000240: JUMPDEST 00000241: PUSH1 0x40 00000243: MLOAD 00000244: DUP1 00000245: SWAP2 00000246: SUB 00000247: SWAP1 00000248: RETURN 00000249: JUMPDEST 0000024a: PUSH2 0x025c 0000024d: PUSH2 0x0257 00000250: CALLDATASIZE 00000251: PUSH1 0x04 00000253: PUSH2 0x3595 00000256: JUMP 00000257: JUMPDEST 00000258: PUSH2 0x0860 0000025b: JUMP 0000025c: JUMPDEST 0000025d: PUSH1 0x40 0000025f: MLOAD 00000260: SWAP1 00000261: ISZERO 00000262: ISZERO 00000263: DUP2 00000264: MSTORE 00000265: PUSH1 0x20 00000267: ADD 00000268: PUSH2 0x0240 0000026b: JUMP 0000026c: JUMPDEST 0000026d: PUSH1 0x02 0000026f: SLOAD 00000270: JUMPDEST 00000271: PUSH1 0x40 00000273: MLOAD 00000274: SWAP1 00000275: DUP2 00000276: MSTORE 00000277: PUSH1 0x20 00000279: ADD 0000027a: PUSH2 0x0240 0000027d: JUMP 0000027e: JUMPDEST 0000027f: PUSH2 0x0291 00000282: PUSH2 0x028c 00000285: CALLDATASIZE 00000286: PUSH1 0x04 00000288: PUSH2 0x3713 0000028b: JUMP 0000028c: JUMPDEST 0000028d: PUSH2 0x087a 00000290: JUMP 00000291: JUMPDEST 00000292: PUSH1 0x40 00000294: MLOAD 00000295: PUSH2 0x0240 00000298: SWAP3 00000299: SWAP2 0000029a: SWAP1 0000029b: PUSH2 0x379b 0000029e: JUMP 0000029f: JUMPDEST 000002a0: PUSH2 0x025c 000002a3: PUSH2 0x02ad 000002a6: CALLDATASIZE 000002a7: PUSH1 0x04 000002a9: PUSH2 0x38c6 000002ac: JUMP 000002ad: JUMPDEST 000002ae: PUSH2 0x0d0e 000002b1: JUMP 000002b2: JUMPDEST 000002b3: PUSH2 0x02c5 000002b6: PUSH2 0x02c0 000002b9: CALLDATASIZE 000002ba: PUSH1 0x04 000002bc: PUSH2 0x3928 000002bf: JUMP 000002c0: JUMPDEST 000002c1: PUSH2 0x0d92 000002c4: JUMP 000002c5: JUMPDEST 000002c6: STOP 000002c7: JUMPDEST 000002c8: PUSH1 0x0e 000002ca: SLOAD 000002cb: PUSH1 0x0f 000002cd: SLOAD 000002ce: PUSH1 0x10 000002d0: SLOAD 000002d1: PUSH1 0x40 000002d3: DUP1 000002d4: MLOAD 000002d5: PUSH1 0xa0 000002d7: DUP2 000002d8: ADD 000002d9: DUP3 000002da: MSTORE 000002db: PUSH1 0x11 000002dd: SLOAD 000002de: PUSH8 0xffffffffffffffff 000002e7: DUP2 000002e8: AND 000002e9: DUP3 000002ea: MSTORE 000002eb: PUSH1 0x01 000002ed: PUSH1 0x40 000002ef: SHL 000002f0: DUP2 000002f1: DIV 000002f2: PUSH1 0x01 000002f4: PUSH1 0x01 000002f6: PUSH1 0xa0 000002f8: SHL 000002f9: SUB 000002fa: SWAP1 000002fb: DUP2 000002fc: AND 000002fd: PUSH1 0x20 000002ff: DUP5 00000300: ADD 00000301: MSTORE 00000302: PUSH1 0xff 00000304: PUSH1 0x01 00000306: PUSH1 0xe0 00000308: SHL 00000309: DUP4 0000030a: DIV 0000030b: DUP2 0000030c: AND 0000030d: ISZERO 0000030e: ISZERO 0000030f: SWAP5 00000310: DUP5 00000311: ADD 00000312: SWAP5 00000313: SWAP1 00000314: SWAP5 00000315: MSTORE 00000316: PUSH1 0x01 00000318: PUSH1 0xe8 0000031a: SHL 0000031b: SWAP1 0000031c: SWAP2 0000031d: DIV 0000031e: SWAP1 0000031f: SWAP3 00000320: AND 00000321: ISZERO 00000322: ISZERO 00000323: PUSH1 0x60 00000325: DUP3 00000326: ADD 00000327: MSTORE 00000328: PUSH1 0x12 0000032a: SLOAD 0000032b: DUP3 0000032c: AND 0000032d: PUSH1 0x80 0000032f: DUP3 00000330: ADD 00000331: MSTORE 00000332: PUSH2 0x036e 00000335: SWAP5 00000336: DUP3 00000337: DUP2 00000338: AND 00000339: SWAP5 0000033a: PUSH6 0xffffffffffff 00000341: PUSH1 0x01 00000343: PUSH1 0xa0 00000345: SHL 00000346: SWAP3 00000347: DUP4 00000348: SWAP1 00000349: DIV 0000034a: DUP2 0000034b: AND 0000034c: SWAP6 0000034d: SWAP5 0000034e: DUP3 0000034f: AND 00000350: SWAP5 00000351: SWAP3 00000352: SWAP1 00000353: SWAP2 00000354: DIV 00000355: AND 00000356: SWAP2 00000357: PUSH1 0x01 00000359: PUSH1 0x01 0000035b: PUSH1 0x80 0000035d: SHL 0000035e: SUB 0000035f: DUP1 00000360: DUP4 00000361: AND 00000362: SWAP3 00000363: PUSH1 0x01 00000365: PUSH1 0x80 00000367: SHL 00000368: SWAP1 00000369: DIV 0000036a: AND 0000036b: SWAP1 0000036c: DUP8 0000036d: JUMP 0000036e: JUMPDEST 0000036f: PUSH1 0x40 00000371: DUP1 00000372: MLOAD 00000373: PUSH1 0x01 00000375: PUSH1 0x01 00000377: PUSH1 0xa0 00000379: SHL 0000037a: SUB 0000037b: SWAP9 0000037c: DUP10 0000037d: AND 0000037e: DUP2 0000037f: MSTORE 00000380: PUSH6 0xffffffffffff 00000387: SWAP8 00000388: DUP9 00000389: AND 0000038a: PUSH1 0x20 0000038c: DUP1 0000038d: DUP4 0000038e: ADD 0000038f: SWAP2 00000390: SWAP1 00000391: SWAP2 00000392: MSTORE 00000393: SWAP7 00000394: DUP10 00000395: AND 00000396: DUP2 00000397: DUP4 00000398: ADD 00000399: MSTORE 0000039a: SWAP7 0000039b: SWAP1 0000039c: SWAP5 0000039d: AND 0000039e: PUSH1 0x60 000003a0: DUP1 000003a1: DUP9 000003a2: ADD 000003a3: SWAP2 000003a4: SWAP1 000003a5: SWAP2 000003a6: MSTORE 000003a7: PUSH1 0x01 000003a9: PUSH1 0x01 000003ab: PUSH1 0x80 000003ad: SHL 000003ae: SUB 000003af: SWAP4 000003b0: DUP5 000003b1: AND 000003b2: PUSH1 0x80 000003b4: DUP1 000003b5: DUP10 000003b6: ADD 000003b7: SWAP2 000003b8: SWAP1 000003b9: SWAP2 000003ba: MSTORE 000003bb: SWAP4 000003bc: SWAP1 000003bd: SWAP3 000003be: AND 000003bf: PUSH1 0xa0 000003c1: DUP8 000003c2: ADD 000003c3: MSTORE 000003c4: DUP1 000003c5: MLOAD 000003c6: PUSH8 0xffffffffffffffff 000003cf: AND 000003d0: PUSH1 0xc0 000003d2: DUP8 000003d3: ADD 000003d4: MSTORE 000003d5: SWAP4 000003d6: DUP5 000003d7: ADD 000003d8: MLOAD 000003d9: DUP7 000003da: AND 000003db: PUSH1 0xe0 000003dd: DUP7 000003de: ADD 000003df: MSTORE 000003e0: SWAP2 000003e1: DUP4 000003e2: ADD 000003e3: MLOAD 000003e4: ISZERO 000003e5: ISZERO 000003e6: PUSH2 0x0100 000003e9: DUP6 000003ea: ADD 000003eb: MSTORE 000003ec: SWAP1 000003ed: DUP3 000003ee: ADD 000003ef: MLOAD 000003f0: ISZERO 000003f1: ISZERO 000003f2: PUSH2 0x0120 000003f5: DUP5 000003f6: ADD 000003f7: MSTORE 000003f8: ADD 000003f9: MLOAD 000003fa: SWAP1 000003fb: SWAP2 000003fc: AND 000003fd: PUSH2 0x0140 00000400: DUP3 00000401: ADD 00000402: MSTORE 00000403: PUSH2 0x0160 00000406: ADD 00000407: PUSH2 0x0240 0000040a: JUMP 0000040b: JUMPDEST 0000040c: PUSH1 0x05 0000040e: SLOAD 0000040f: PUSH2 0x0100 00000412: SWAP1 00000413: DIV 00000414: PUSH1 0xff 00000416: AND 00000417: PUSH1 0x40 00000419: MLOAD 0000041a: PUSH1 0xff 0000041c: SWAP1 0000041d: SWAP2 0000041e: AND 0000041f: DUP2 00000420: MSTORE 00000421: PUSH1 0x20 00000423: ADD 00000424: PUSH2 0x0240 00000427: JUMP 00000428: JUMPDEST 00000429: PUSH2 0x043b 0000042c: PUSH2 0x0436 0000042f: CALLDATASIZE 00000430: PUSH1 0x04 00000432: PUSH2 0x39bb 00000435: JUMP 00000436: JUMPDEST 00000437: PUSH2 0x1367 0000043a: JUMP 0000043b: JUMPDEST 0000043c: PUSH1 0x40 0000043e: DUP1 0000043f: MLOAD 00000440: PUSH1 0x01 00000442: PUSH1 0x01 00000444: PUSH1 0xa0 00000446: SHL 00000447: SUB 00000448: SWAP1 00000449: SWAP5 0000044a: AND 0000044b: DUP5 0000044c: MSTORE 0000044d: PUSH1 0x20 0000044f: DUP5 00000450: ADD 00000451: SWAP3 00000452: SWAP1 00000453: SWAP3 00000454: MSTORE 00000455: SWAP1 00000456: DUP3 00000457: ADD 00000458: MSTORE 00000459: PUSH1 0x60 0000045b: ADD 0000045c: PUSH2 0x0240 0000045f: JUMP 00000460: JUMPDEST 00000461: PUSH2 0x0468 00000464: PUSH2 0x1726 00000467: JUMP 00000468: JUMPDEST 00000469: PUSH1 0x40 0000046b: MLOAD 0000046c: PUSH1 0x01 0000046e: PUSH1 0x01 00000470: PUSH1 0xa0 00000472: SHL 00000473: SUB 00000474: SWAP1 00000475: SWAP2 00000476: AND 00000477: DUP2 00000478: MSTORE 00000479: PUSH1 0x20 0000047b: ADD 0000047c: PUSH2 0x0240 0000047f: JUMP 00000480: JUMPDEST 00000481: PUSH1 0x08 00000483: SLOAD 00000484: PUSH2 0x049a 00000487: SWAP1 00000488: PUSH1 0x01 0000048a: PUSH1 0x80 0000048c: SHL 0000048d: SWAP1 0000048e: DIV 0000048f: PUSH1 0x01 00000491: PUSH1 0x01 00000493: PUSH1 0x80 00000495: SHL 00000496: SUB 00000497: AND 00000498: DUP2 00000499: JUMP 0000049a: JUMPDEST 0000049b: PUSH1 0x40 0000049d: MLOAD 0000049e: PUSH1 0x01 000004a0: PUSH1 0x01 000004a2: PUSH1 0x80 000004a4: SHL 000004a5: SUB 000004a6: SWAP1 000004a7: SWAP2 000004a8: AND 000004a9: DUP2 000004aa: MSTORE 000004ab: PUSH1 0x20 000004ad: ADD 000004ae: PUSH2 0x0240 000004b1: JUMP 000004b2: JUMPDEST 000004b3: PUSH2 0x02c5 000004b6: PUSH2 0x04c0 000004b9: CALLDATASIZE 000004ba: PUSH1 0x04 000004bc: PUSH2 0x3a3a 000004bf: JUMP 000004c0: JUMPDEST 000004c1: PUSH2 0x1776 000004c4: JUMP 000004c5: JUMPDEST 000004c6: PUSH2 0x02c5 000004c9: PUSH2 0x04d3 000004cc: CALLDATASIZE 000004cd: PUSH1 0x04 000004cf: PUSH2 0x3a6a 000004d2: JUMP 000004d3: JUMPDEST 000004d4: PUSH2 0x18af 000004d7: JUMP 000004d8: JUMPDEST 000004d9: PUSH1 0x13 000004db: SLOAD 000004dc: PUSH1 0x14 000004de: SLOAD 000004df: PUSH1 0x15 000004e1: SLOAD 000004e2: PUSH2 0x0553 000004e5: SWAP3 000004e6: PUSH1 0x01 000004e8: PUSH1 0x01 000004ea: PUSH1 0x80 000004ec: SHL 000004ed: SUB 000004ee: DUP1 000004ef: DUP3 000004f0: AND 000004f1: SWAP4 000004f2: PUSH6 0xffffffffffff 000004f9: PUSH1 0x01 000004fb: PUSH1 0x80 000004fd: SHL 000004fe: DUP1 000004ff: DUP6 00000500: DIV 00000501: DUP3 00000502: AND 00000503: SWAP6 00000504: PUSH1 0x01 00000506: PUSH1 0xb0 00000508: SHL 00000509: DUP7 0000050a: DIV 0000050b: SWAP1 0000050c: SWAP3 0000050d: AND 0000050e: SWAP5 0000050f: PUSH4 0xffffffff 00000514: PUSH1 0x01 00000516: PUSH1 0xe0 00000518: SHL 00000519: SWAP1 0000051a: SWAP2 0000051b: DIV 0000051c: DUP2 0000051d: AND 0000051e: SWAP5 0000051f: SWAP1 00000520: DUP5 00000521: AND 00000522: SWAP4 00000523: PUSH8 0xffffffffffffffff 0000052c: PUSH5 0x0100000000 00000532: DUP3 00000533: DIV 00000534: DUP2 00000535: AND 00000536: SWAP5 00000537: PUSH13 0x01000000000000000000000000 00000545: SWAP1 00000546: SWAP3 00000547: DIV 00000548: AND 00000549: SWAP3 0000054a: DUP2 0000054b: DUP4 0000054c: AND 0000054d: SWAP3 0000054e: SWAP2 0000054f: DIV 00000550: AND 00000551: DUP10 00000552: JUMP 00000553: JUMPDEST 00000554: PUSH1 0x40 00000556: DUP1 00000557: MLOAD 00000558: PUSH1 0x01 0000055a: PUSH1 0x01 0000055c: PUSH1 0x80 0000055e: SHL 0000055f: SUB 00000560: SWAP11 00000561: DUP12 00000562: AND 00000563: DUP2 00000564: MSTORE 00000565: PUSH6 0xffffffffffff 0000056c: SWAP10 0000056d: DUP11 0000056e: AND 0000056f: PUSH1 0x20 00000571: DUP3 00000572: ADD 00000573: MSTORE 00000574: SWAP9 00000575: SWAP1 00000576: SWAP8 00000577: AND 00000578: SWAP7 00000579: DUP9 0000057a: ADD 0000057b: SWAP7 0000057c: SWAP1 0000057d: SWAP7 0000057e: MSTORE 0000057f: PUSH4 0xffffffff 00000584: SWAP5 00000585: DUP6 00000586: AND 00000587: PUSH1 0x60 00000589: DUP9 0000058a: ADD 0000058b: MSTORE 0000058c: SWAP4 0000058d: SWAP1 0000058e: SWAP3 0000058f: AND 00000590: PUSH1 0x80 00000592: DUP7 00000593: ADD 00000594: MSTORE 00000595: PUSH8 0xffffffffffffffff 0000059e: SWAP1 0000059f: DUP2 000005a0: AND 000005a1: PUSH1 0xa0 000005a3: DUP7 000005a4: ADD 000005a5: MSTORE 000005a6: AND 000005a7: PUSH1 0xc0 000005a9: DUP5 000005aa: ADD 000005ab: MSTORE 000005ac: DUP4 000005ad: AND 000005ae: PUSH1 0xe0 000005b0: DUP4 000005b1: ADD 000005b2: MSTORE 000005b3: SWAP2 000005b4: SWAP1 000005b5: SWAP2 000005b6: AND 000005b7: PUSH2 0x0100 000005ba: DUP3 000005bb: ADD 000005bc: MSTORE 000005bd: PUSH2 0x0120 000005c0: ADD 000005c1: PUSH2 0x0240 000005c4: JUMP 000005c5: JUMPDEST 000005c6: PUSH1 0x08 000005c8: SLOAD 000005c9: PUSH2 0x049a 000005cc: SWAP1 000005cd: PUSH1 0x01 000005cf: PUSH1 0x01 000005d1: PUSH1 0x80 000005d3: SHL 000005d4: SUB 000005d5: AND 000005d6: DUP2 000005d7: JUMP 000005d8: JUMPDEST 000005d9: PUSH2 0x02c5 000005dc: PUSH2 0x05e6 000005df: CALLDATASIZE 000005e0: PUSH1 0x04 000005e2: PUSH2 0x3b00 000005e5: JUMP 000005e6: JUMPDEST 000005e7: PUSH2 0x19f5 000005ea: JUMP 000005eb: JUMPDEST 000005ec: PUSH2 0x043b 000005ef: PUSH2 0x05f9 000005f2: CALLDATASIZE 000005f3: PUSH1 0x04 000005f5: PUSH2 0x3b32 000005f8: JUMP 000005f9: JUMPDEST 000005fa: PUSH2 0x1b1b 000005fd: JUMP 000005fe: JUMPDEST 000005ff: PUSH2 0x0270 00000602: PUSH2 0x060c 00000605: CALLDATASIZE 00000606: PUSH1 0x04 00000608: PUSH2 0x3b00 0000060b: JUMP 0000060c: JUMPDEST 0000060d: PUSH1 0x01 0000060f: PUSH1 0x01 00000611: PUSH1 0xa0 00000613: SHL 00000614: SUB 00000615: AND 00000616: PUSH1 0x00 00000618: SWAP1 00000619: DUP2 0000061a: MSTORE 0000061b: PUSH1 0x20 0000061d: DUP2 0000061e: SWAP1 0000061f: MSTORE 00000620: PUSH1 0x40 00000622: SWAP1 00000623: KECCAK256 00000624: SLOAD 00000625: SWAP1 00000626: JUMP 00000627: JUMPDEST 00000628: PUSH1 0x0a 0000062a: SLOAD 0000062b: PUSH2 0x0468 0000062e: SWAP1 0000062f: PUSH1 0x01 00000631: PUSH1 0x01 00000633: PUSH1 0xa0 00000635: SHL 00000636: SUB 00000637: AND 00000638: DUP2 00000639: JUMP 0000063a: JUMPDEST 0000063b: PUSH2 0x064d 0000063e: PUSH2 0x0648 00000641: CALLDATASIZE 00000642: PUSH1 0x04 00000644: PUSH2 0x3b32 00000647: JUMP 00000648: JUMPDEST 00000649: PUSH2 0x1e20 0000064c: JUMP 0000064d: JUMPDEST 0000064e: PUSH1 0x40 00000650: DUP1 00000651: MLOAD 00000652: PUSH1 0x01 00000654: PUSH1 0x01 00000656: PUSH1 0xa0 00000658: SHL 00000659: SUB 0000065a: SWAP1 0000065b: SWAP4 0000065c: AND 0000065d: DUP4 0000065e: MSTORE 0000065f: PUSH1 0x20 00000661: DUP4 00000662: ADD 00000663: SWAP2 00000664: SWAP1 00000665: SWAP2 00000666: MSTORE 00000667: ADD 00000668: PUSH2 0x0240 0000066b: JUMP 0000066c: JUMPDEST 0000066d: PUSH2 0x02c5 00000670: PUSH2 0x067a 00000673: CALLDATASIZE 00000674: PUSH1 0x04 00000676: PUSH2 0x3b00 00000679: JUMP 0000067a: JUMPDEST 0000067b: PUSH2 0x2082 0000067e: JUMP 0000067f: JUMPDEST 00000680: PUSH2 0x0233 00000683: PUSH2 0x2175 00000686: JUMP 00000687: JUMPDEST 00000688: PUSH2 0x0291 0000068b: PUSH2 0x0695 0000068e: CALLDATASIZE 0000068f: PUSH1 0x04 00000691: PUSH2 0x3b7d 00000694: JUMP 00000695: JUMPDEST 00000696: PUSH2 0x2184 00000699: JUMP 0000069a: JUMPDEST 0000069b: PUSH2 0x025c 0000069e: PUSH2 0x06a8 000006a1: CALLDATASIZE 000006a2: PUSH1 0x04 000006a4: PUSH2 0x3595 000006a7: JUMP 000006a8: JUMPDEST 000006a9: PUSH2 0x230d 000006ac: JUMP 000006ad: JUMPDEST 000006ae: PUSH2 0x0270 000006b1: PUSH2 0x06bb 000006b4: CALLDATASIZE 000006b5: PUSH1 0x04 000006b7: PUSH2 0x3b00 000006ba: JUMP 000006bb: JUMPDEST 000006bc: PUSH1 0x0d 000006be: PUSH1 0x20 000006c0: MSTORE 000006c1: PUSH1 0x00 000006c3: SWAP1 000006c4: DUP2 000006c5: MSTORE 000006c6: PUSH1 0x40 000006c8: SWAP1 000006c9: KECCAK256 000006ca: SLOAD 000006cb: DUP2 000006cc: JUMP 000006cd: JUMPDEST 000006ce: PUSH1 0x0c 000006d0: SLOAD 000006d1: PUSH2 0x025c 000006d4: SWAP1 000006d5: PUSH1 0xff 000006d7: AND 000006d8: DUP2 000006d9: JUMP 000006da: JUMPDEST 000006db: PUSH2 0x02c5 000006de: PUSH2 0x06e8 000006e1: CALLDATASIZE 000006e2: PUSH1 0x04 000006e4: PUSH2 0x38c6 000006e7: JUMP 000006e8: JUMPDEST 000006e9: PUSH2 0x238d 000006ec: JUMP 000006ed: JUMPDEST 000006ee: PUSH1 0x0b 000006f0: SLOAD 000006f1: PUSH2 0x070c 000006f4: SWAP1 000006f5: PUSH1 0x01 000006f7: PUSH1 0xa0 000006f9: SHL 000006fa: SWAP1 000006fb: DIV 000006fc: PUSH12 0xffffffffffffffffffffffff 00000709: AND 0000070a: DUP2 0000070b: JUMP 0000070c: JUMPDEST 0000070d: PUSH1 0x40 0000070f: MLOAD 00000710: PUSH12 0xffffffffffffffffffffffff 0000071d: SWAP1 0000071e: SWAP2 0000071f: AND 00000720: DUP2 00000721: MSTORE 00000722: PUSH1 0x20 00000724: ADD 00000725: PUSH2 0x0240 00000728: JUMP 00000729: JUMPDEST 0000072a: PUSH2 0x02c5 0000072d: PUSH2 0x0737 00000730: CALLDATASIZE 00000731: PUSH1 0x04 00000733: PUSH2 0x3be0 00000736: JUMP 00000737: JUMPDEST 00000738: PUSH2 0x24c1 0000073b: JUMP 0000073c: JUMPDEST 0000073d: PUSH2 0x0270 00000740: PUSH2 0x074a 00000743: CALLDATASIZE 00000744: PUSH1 0x04 00000746: PUSH2 0x3c7d 00000749: JUMP 0000074a: JUMPDEST 0000074b: PUSH1 0x01 0000074d: PUSH1 0x01 0000074f: PUSH1 0xa0 00000751: SHL 00000752: SUB 00000753: SWAP2 00000754: DUP3 00000755: AND 00000756: PUSH1 0x00 00000758: SWAP1 00000759: DUP2 0000075a: MSTORE 0000075b: PUSH1 0x01 0000075d: PUSH1 0x20 0000075f: SWAP1 00000760: DUP2 00000761: MSTORE 00000762: PUSH1 0x40 00000764: DUP1 00000765: DUP4 00000766: KECCAK256 00000767: SWAP4 00000768: SWAP1 00000769: SWAP5 0000076a: AND 0000076b: DUP3 0000076c: MSTORE 0000076d: SWAP2 0000076e: SWAP1 0000076f: SWAP2 00000770: MSTORE 00000771: KECCAK256 00000772: SLOAD 00000773: SWAP1 00000774: JUMP 00000775: JUMPDEST 00000776: PUSH2 0x077d 00000779: PUSH2 0x26e7 0000077c: JUMP 0000077d: JUMPDEST 0000077e: PUSH1 0x40 00000780: MLOAD 00000781: PUSH8 0xffffffffffffffff 0000078a: SWAP1 0000078b: SWAP2 0000078c: AND 0000078d: DUP2 0000078e: MSTORE 0000078f: PUSH1 0x20 00000791: ADD 00000792: PUSH2 0x0240 00000795: JUMP 00000796: JUMPDEST 00000797: PUSH1 0x0c 00000799: SLOAD 0000079a: PUSH2 0x025c 0000079d: SWAP1 0000079e: PUSH2 0x0100 000007a1: SWAP1 000007a2: DIV 000007a3: PUSH1 0xff 000007a5: AND 000007a6: DUP2 000007a7: JUMP 000007a8: JUMPDEST 000007a9: PUSH2 0x02c5 000007ac: PUSH2 0x07b6 000007af: CALLDATASIZE 000007b0: PUSH1 0x04 000007b2: PUSH2 0x3b00 000007b5: JUMP 000007b6: JUMPDEST 000007b7: PUSH2 0x27bc 000007ba: JUMP 000007bb: JUMPDEST 000007bc: PUSH1 0x09 000007be: SLOAD 000007bf: PUSH2 0x0468 000007c2: SWAP1 000007c3: PUSH1 0x01 000007c5: PUSH1 0x01 000007c7: PUSH1 0xa0 000007c9: SHL 000007ca: SUB 000007cb: AND 000007cc: DUP2 000007cd: JUMP 000007ce: JUMPDEST 000007cf: PUSH1 0x60 000007d1: PUSH1 0x06 000007d3: DUP1 000007d4: SLOAD 000007d5: PUSH2 0x07dd 000007d8: SWAP1 000007d9: PUSH2 0x3cab 000007dc: JUMP 000007dd: JUMPDEST 000007de: DUP1 000007df: PUSH1 0x1f 000007e1: ADD 000007e2: PUSH1 0x20 000007e4: DUP1 000007e5: SWAP2 000007e6: DIV 000007e7: MUL 000007e8: PUSH1 0x20 000007ea: ADD 000007eb: PUSH1 0x40 000007ed: MLOAD 000007ee: SWAP1 000007ef: DUP2 000007f0: ADD 000007f1: PUSH1 0x40 000007f3: MSTORE 000007f4: DUP1 000007f5: SWAP3 000007f6: SWAP2 000007f7: SWAP1 000007f8: DUP2 000007f9: DUP2 000007fa: MSTORE 000007fb: PUSH1 0x20 000007fd: ADD 000007fe: DUP3 000007ff: DUP1 00000800: SLOAD 00000801: PUSH2 0x0809 00000804: SWAP1 00000805: PUSH2 0x3cab 00000808: JUMP 00000809: JUMPDEST 0000080a: DUP1 0000080b: ISZERO 0000080c: PUSH2 0x0856 0000080f: JUMPI 00000810: DUP1 00000811: PUSH1 0x1f 00000813: LT 00000814: PUSH2 0x082b 00000817: JUMPI 00000818: PUSH2 0x0100 0000081b: DUP1 0000081c: DUP4 0000081d: SLOAD 0000081e: DIV 0000081f: MUL 00000820: DUP4 00000821: MSTORE 00000822: SWAP2 00000823: PUSH1 0x20 00000825: ADD 00000826: SWAP2 00000827: PUSH2 0x0856 0000082a: JUMP 0000082b: JUMPDEST 0000082c: DUP3 0000082d: ADD 0000082e: SWAP2 0000082f: SWAP1 00000830: PUSH1 0x00 00000832: MSTORE 00000833: PUSH1 0x20 00000835: PUSH1 0x00 00000837: KECCAK256 00000838: SWAP1 00000839: JUMPDEST 0000083a: DUP2 0000083b: SLOAD 0000083c: DUP2 0000083d: MSTORE 0000083e: SWAP1 0000083f: PUSH1 0x01 00000841: ADD 00000842: SWAP1 00000843: PUSH1 0x20 00000845: ADD 00000846: DUP1 00000847: DUP4 00000848: GT 00000849: PUSH2 0x0839 0000084c: JUMPI 0000084d: DUP3 0000084e: SWAP1 0000084f: SUB 00000850: PUSH1 0x1f 00000852: AND 00000853: DUP3 00000854: ADD 00000855: SWAP2 00000856: JUMPDEST 00000857: POP 00000858: POP 00000859: POP 0000085a: POP 0000085b: POP 0000085c: SWAP1 0000085d: POP 0000085e: SWAP1 0000085f: JUMP 00000860: JUMPDEST 00000861: PUSH1 0x00 00000863: CALLER 00000864: PUSH2 0x086e 00000867: DUP2 00000868: DUP6 00000869: DUP6 0000086a: PUSH2 0x2913 0000086d: JUMP 0000086e: JUMPDEST 0000086f: PUSH1 0x01 00000871: SWAP2 00000872: POP 00000873: POP 00000874: JUMPDEST 00000875: SWAP3 00000876: SWAP2 00000877: POP 00000878: POP 00000879: JUMP 0000087a: JUMPDEST 0000087b: PUSH1 0x40 0000087d: DUP1 0000087e: MLOAD 0000087f: PUSH2 0x0180 00000882: DUP2 00000883: ADD 00000884: DUP3 00000885: MSTORE 00000886: PUSH1 0x00 00000888: DUP1 00000889: DUP3 0000088a: MSTORE 0000088b: PUSH1 0x20 0000088d: DUP3 0000088e: ADD 0000088f: DUP2 00000890: SWAP1 00000891: MSTORE 00000892: SWAP2 00000893: DUP2 00000894: ADD 00000895: DUP3 00000896: SWAP1 00000897: MSTORE 00000898: PUSH1 0x60 0000089a: DUP2 0000089b: ADD 0000089c: DUP3 0000089d: SWAP1 0000089e: MSTORE 0000089f: PUSH1 0x80 000008a1: DUP2 000008a2: ADD 000008a3: DUP3 000008a4: SWAP1 000008a5: MSTORE 000008a6: PUSH1 0xa0 000008a8: DUP2 000008a9: ADD 000008aa: DUP3 000008ab: SWAP1 000008ac: MSTORE 000008ad: PUSH1 0xc0 000008af: DUP2 000008b0: ADD 000008b1: DUP3 000008b2: SWAP1 000008b3: MSTORE 000008b4: PUSH1 0xe0 000008b6: DUP2 000008b7: ADD 000008b8: DUP3 000008b9: SWAP1 000008ba: MSTORE 000008bb: PUSH2 0x0100 000008be: DUP2 000008bf: ADD 000008c0: DUP3 000008c1: SWAP1 000008c2: MSTORE 000008c3: PUSH2 0x0120 000008c6: DUP2 000008c7: ADD 000008c8: DUP3 000008c9: SWAP1 000008ca: MSTORE 000008cb: PUSH2 0x0140 000008ce: DUP2 000008cf: ADD 000008d0: DUP3 000008d1: SWAP1 000008d2: MSTORE 000008d3: PUSH2 0x0160 000008d6: DUP2 000008d7: ADD 000008d8: DUP3 000008d9: SWAP1 000008da: MSTORE 000008db: SWAP1 000008dc: DUP1 000008dd: PUSH2 0x08e4 000008e0: PUSH2 0x26e7 000008e3: JUMP 000008e4: JUMPDEST 000008e5: PUSH1 0x0b 000008e7: SLOAD 000008e8: PUSH1 0x0c 000008ea: SLOAD 000008eb: PUSH1 0x01 000008ed: PUSH1 0x01 000008ef: PUSH1 0xa0 000008f1: SHL 000008f2: SUB 000008f3: SWAP1 000008f4: SWAP2 000008f5: AND 000008f6: SWAP4 000008f7: POP 000008f8: SWAP1 000008f9: SWAP2 000008fa: POP 000008fb: PUSH2 0x0100 000008fe: SWAP1 000008ff: DIV 00000900: PUSH1 0xff 00000902: AND 00000903: ISZERO 00000904: PUSH2 0x0919 00000907: JUMPI 00000908: PUSH2 0x0911 0000090b: PUSH1 0x03 0000090d: PUSH2 0x2925 00000910: JUMP 00000911: JUMPDEST 00000912: SWAP3 00000913: POP 00000914: POP 00000915: PUSH2 0x0d06 00000918: JUMP 00000919: JUMPDEST 0000091a: DUP1 0000091b: PUSH8 0xffffffffffffffff 00000924: AND 00000925: DUP7 00000926: LT 00000927: ISZERO 00000928: PUSH2 0x0935 0000092b: JUMPI 0000092c: PUSH2 0x0911 0000092f: PUSH1 0x04 00000931: PUSH2 0x2925 00000934: JUMP 00000935: JUMPDEST 00000936: PUSH1 0x0e 00000938: SLOAD 00000939: PUSH1 0x0f 0000093b: SLOAD 0000093c: PUSH1 0x11 0000093e: SLOAD 0000093f: PUSH1 0x40 00000941: MLOAD 00000942: PUSH4 0x517382cf 00000947: PUSH1 0xe1 00000949: SHL 0000094a: DUP2 0000094b: MSTORE 0000094c: PUSH1 0x01 0000094e: PUSH1 0x01 00000950: PUSH1 0xa0 00000952: SHL 00000953: SUB 00000954: SWAP4 00000955: DUP5 00000956: AND 00000957: SWAP4 00000958: SWAP3 00000959: DUP4 0000095a: AND 0000095b: SWAP3 0000095c: PUSH1 0x00 0000095e: SWAP3 0000095f: PUSH1 0x01 00000961: PUSH1 0x40 00000963: SHL 00000964: SWAP1 00000965: DIV 00000966: AND 00000967: SWAP1 00000968: PUSH4 0xa2e7059e 0000096d: SWAP1 0000096e: PUSH2 0x097f 00000971: SWAP1 00000972: DUP7 00000973: SWAP1 00000974: DUP7 00000975: SWAP1 00000976: DUP13 00000977: SWAP1 00000978: PUSH1 0x04 0000097a: ADD 0000097b: PUSH2 0x3ce5 0000097e: JUMP 0000097f: JUMPDEST 00000980: PUSH1 0x20 00000982: PUSH1 0x40 00000984: MLOAD 00000985: DUP1 00000986: DUP4 00000987: SUB 00000988: DUP2 00000989: DUP7 0000098a: GAS 0000098b: STATICCALL 0000098c: ISZERO 0000098d: DUP1 0000098e: ISZERO 0000098f: PUSH2 0x099c 00000992: JUMPI 00000993: RETURNDATASIZE 00000994: PUSH1 0x00 00000996: DUP1 00000997: RETURNDATACOPY 00000998: RETURNDATASIZE 00000999: PUSH1 0x00 0000099b: REVERT 0000099c: JUMPDEST 0000099d: POP 0000099e: POP 0000099f: POP 000009a0: POP 000009a1: PUSH1 0x40 000009a3: MLOAD 000009a4: RETURNDATASIZE 000009a5: PUSH1 0x1f 000009a7: NOT 000009a8: PUSH1 0x1f 000009aa: DUP3 000009ab: ADD 000009ac: AND 000009ad: DUP3 000009ae: ADD 000009af: DUP1 000009b0: PUSH1 0x40 000009b2: MSTORE 000009b3: POP 000009b4: DUP2 000009b5: ADD 000009b6: SWAP1 000009b7: PUSH2 0x09c0 000009ba: SWAP2 000009bb: SWAP1 000009bc: PUSH2 0x3d66 000009bf: JUMP 000009c0: JUMPDEST 000009c1: SWAP1 000009c2: POP 000009c3: DUP1 000009c4: DUP9 000009c5: LT 000009c6: ISZERO 000009c7: PUSH2 0x09df 000009ca: JUMPI 000009cb: PUSH2 0x09d4 000009ce: PUSH1 0x01 000009d0: PUSH2 0x2925 000009d3: JUMP 000009d4: JUMPDEST 000009d5: SWAP6 000009d6: POP 000009d7: POP 000009d8: POP 000009d9: POP 000009da: POP 000009db: PUSH2 0x0d06 000009de: JUMP 000009df: JUMPDEST 000009e0: PUSH1 0x15 000009e2: SLOAD 000009e3: PUSH1 0x01 000009e5: PUSH1 0x01 000009e7: PUSH1 0x80 000009e9: SHL 000009ea: SUB 000009eb: AND 000009ec: DUP2 000009ed: LT 000009ee: DUP1 000009ef: PUSH2 0x0a09 000009f2: JUMPI 000009f3: POP 000009f4: PUSH1 0x15 000009f6: SLOAD 000009f7: PUSH1 0x01 000009f9: PUSH1 0x80 000009fb: SHL 000009fc: SWAP1 000009fd: DIV 000009fe: PUSH1 0x01 00000a00: PUSH1 0x01 00000a02: PUSH1 0x80 00000a04: SHL 00000a05: SUB 00000a06: AND 00000a07: DUP2 00000a08: GT 00000a09: JUMPDEST 00000a0a: ISZERO 00000a0b: PUSH2 0x0a18 00000a0e: JUMPI 00000a0f: PUSH2 0x09d4 00000a12: PUSH1 0x02 00000a14: PUSH2 0x2925 00000a17: JUMP 00000a18: JUMPDEST 00000a19: PUSH1 0x0c 00000a1b: SLOAD 00000a1c: PUSH3 0x010000 00000a20: SWAP1 00000a21: DIV 00000a22: PUSH1 0xff 00000a24: AND 00000a25: ISZERO 00000a26: PUSH2 0x0a33 00000a29: JUMPI 00000a2a: PUSH2 0x09d4 00000a2d: PUSH1 0x05 00000a2f: PUSH2 0x2925 00000a32: JUMP 00000a33: JUMPDEST 00000a34: PUSH1 0x11 00000a36: SLOAD 00000a37: PUSH1 0x10 00000a39: SLOAD 00000a3a: PUSH1 0x01 00000a3c: PUSH1 0xe0 00000a3e: SHL 00000a3f: SWAP1 00000a40: SWAP2 00000a41: DIV 00000a42: PUSH1 0xff 00000a44: AND 00000a45: SWAP1 00000a46: PUSH1 0x01 00000a48: PUSH1 0x01 00000a4a: PUSH1 0x80 00000a4c: SHL 00000a4d: SUB 00000a4e: AND 00000a4f: PUSH1 0x00 00000a51: PUSH2 0x0b23 00000a54: DUP4 00000a55: PUSH2 0x0b06 00000a58: JUMPI 00000a59: DUP7 00000a5a: PUSH1 0x01 00000a5c: PUSH1 0x01 00000a5e: PUSH1 0xa0 00000a60: SHL 00000a61: SUB 00000a62: AND 00000a63: PUSH4 0x313ce567 00000a68: PUSH1 0x40 00000a6a: MLOAD 00000a6b: DUP2 00000a6c: PUSH4 0xffffffff 00000a71: AND 00000a72: PUSH1 0xe0 00000a74: SHL 00000a75: DUP2 00000a76: MSTORE 00000a77: PUSH1 0x04 00000a79: ADD 00000a7a: PUSH1 0x20 00000a7c: PUSH1 0x40 00000a7e: MLOAD 00000a7f: DUP1 00000a80: DUP4 00000a81: SUB 00000a82: DUP2 00000a83: DUP7 00000a84: GAS 00000a85: STATICCALL 00000a86: ISZERO 00000a87: DUP1 00000a88: ISZERO 00000a89: PUSH2 0x0a96 00000a8c: JUMPI 00000a8d: RETURNDATASIZE 00000a8e: PUSH1 0x00 00000a90: DUP1 00000a91: RETURNDATACOPY 00000a92: RETURNDATASIZE 00000a93: PUSH1 0x00 00000a95: REVERT 00000a96: JUMPDEST 00000a97: POP 00000a98: POP 00000a99: POP 00000a9a: POP 00000a9b: PUSH1 0x40 00000a9d: MLOAD 00000a9e: RETURNDATASIZE 00000a9f: PUSH1 0x1f 00000aa1: NOT 00000aa2: PUSH1 0x1f 00000aa4: DUP3 00000aa5: ADD 00000aa6: AND 00000aa7: DUP3 00000aa8: ADD 00000aa9: DUP1 00000aaa: PUSH1 0x40 00000aac: MSTORE 00000aad: POP 00000aae: DUP2 00000aaf: ADD 00000ab0: SWAP1 00000ab1: PUSH2 0x0aba 00000ab4: SWAP2 00000ab5: SWAP1 00000ab6: PUSH2 0x3d7f 00000ab9: JUMP 00000aba: JUMPDEST 00000abb: PUSH2 0x0ac5 00000abe: SWAP1 00000abf: PUSH1 0x0a 00000ac1: PUSH2 0x3e9c 00000ac4: JUMP 00000ac5: JUMPDEST 00000ac6: PUSH8 0x0de0b6b3a7640000 00000acf: DUP7 00000ad0: PUSH2 0x0ae3 00000ad3: DUP7 00000ad4: PUSH8 0xffffffffffffffff 00000add: DUP14 00000ade: AND 00000adf: PUSH2 0x3eab 00000ae2: JUMP 00000ae3: JUMPDEST 00000ae4: PUSH2 0x0aed 00000ae7: SWAP2 00000ae8: SWAP1 00000ae9: PUSH2 0x3eab 00000aec: JUMP 00000aed: JUMPDEST 00000aee: PUSH2 0x0af7 00000af1: SWAP2 00000af2: SWAP1 00000af3: PUSH2 0x3ec2 00000af6: JUMP 00000af7: JUMPDEST 00000af8: PUSH2 0x0b01 00000afb: SWAP2 00000afc: SWAP1 00000afd: PUSH2 0x3ec2 00000b00: JUMP 00000b01: JUMPDEST 00000b02: PUSH2 0x29fe 00000b05: JUMP 00000b06: JUMPDEST 00000b07: PUSH8 0x0de0b6b3a7640000 00000b10: PUSH2 0x0af7 00000b13: DUP5 00000b14: PUSH8 0xffffffffffffffff 00000b1d: DUP12 00000b1e: AND 00000b1f: PUSH2 0x3eab 00000b22: JUMP 00000b23: JUMPDEST 00000b24: PUSH1 0x13 00000b26: SLOAD 00000b27: SWAP1 00000b28: SWAP2 00000b29: POP 00000b2a: PUSH1 0x00 00000b2c: SWAP1 00000b2d: PUSH2 0x0b4d 00000b30: SWAP1 00000b31: PUSH8 0x0de0b6b3a7640000 00000b3a: SWAP1 00000b3b: PUSH2 0x0af7 00000b3e: SWAP1 00000b3f: PUSH1 0x01 00000b41: PUSH1 0x01 00000b43: PUSH1 0x80 00000b45: SHL 00000b46: SUB 00000b47: AND 00000b48: DUP9 00000b49: PUSH2 0x3eab 00000b4c: JUMP 00000b4d: JUMPDEST 00000b4e: PUSH1 0x13 00000b50: SLOAD 00000b51: SWAP1 00000b52: SWAP2 00000b53: POP 00000b54: PUSH1 0x00 00000b56: SWAP1 00000b57: PUSH2 0x0b78 00000b5a: SWAP1 00000b5b: PUSH2 0x0b73 00000b5e: SWAP1 00000b5f: PUSH1 0x01 00000b61: PUSH1 0x80 00000b63: SHL 00000b64: SWAP1 00000b65: DIV 00000b66: PUSH6 0xffffffffffff 00000b6d: AND 00000b6e: TIMESTAMP 00000b6f: PUSH2 0x3ee4 00000b72: JUMP 00000b73: JUMPDEST 00000b74: PUSH2 0x2a3b 00000b77: JUMP 00000b78: JUMPDEST 00000b79: PUSH1 0x13 00000b7b: SLOAD 00000b7c: SWAP1 00000b7d: SWAP2 00000b7e: POP 00000b7f: PUSH1 0x00 00000b81: SWAP1 00000b82: PUSH2 0x0b9e 00000b85: SWAP1 00000b86: PUSH2 0x0b73 00000b89: SWAP1 00000b8a: PUSH1 0x01 00000b8c: PUSH1 0xb0 00000b8e: SHL 00000b8f: SWAP1 00000b90: DIV 00000b91: PUSH6 0xffffffffffff 00000b98: AND 00000b99: TIMESTAMP 00000b9a: PUSH2 0x3ee4 00000b9d: JUMP 00000b9e: JUMPDEST 00000b9f: PUSH1 0x09 00000ba1: SLOAD 00000ba2: PUSH1 0x0b 00000ba4: SLOAD 00000ba5: PUSH1 0x40 00000ba7: MLOAD 00000ba8: PUSH32 0x3849153b00000000000000000000000000000000000000000000000000000000 00000bc9: DUP2 00000bca: MSTORE 00000bcb: SWAP3 00000bcc: SWAP4 00000bcd: POP 00000bce: PUSH1 0x00 00000bd0: SWAP3 00000bd1: DUP4 00000bd2: SWAP3 00000bd3: PUSH1 0x01 00000bd5: PUSH1 0x01 00000bd7: PUSH1 0xa0 00000bd9: SHL 00000bda: SUB 00000bdb: SWAP1 00000bdc: DUP2 00000bdd: AND 00000bde: SWAP3 00000bdf: PUSH4 0x3849153b 00000be4: SWAP3 00000be5: PUSH2 0x0bf9 00000be8: SWAP3 00000be9: SWAP1 00000bea: SWAP2 00000beb: AND 00000bec: SWAP1 00000bed: DUP11 00000bee: SWAP1 00000bef: PUSH1 0x0e 00000bf1: SWAP1 00000bf2: PUSH1 0x04 00000bf4: ADD 00000bf5: PUSH2 0x3ef7 00000bf8: JUMP 00000bf9: JUMPDEST 00000bfa: PUSH1 0x40 00000bfc: DUP1 00000bfd: MLOAD 00000bfe: DUP1 00000bff: DUP4 00000c00: SUB 00000c01: DUP2 00000c02: DUP7 00000c03: GAS 00000c04: STATICCALL 00000c05: ISZERO 00000c06: DUP1 00000c07: ISZERO 00000c08: PUSH2 0x0c15 00000c0b: JUMPI 00000c0c: RETURNDATASIZE 00000c0d: PUSH1 0x00 00000c0f: DUP1 00000c10: RETURNDATACOPY 00000c11: RETURNDATASIZE 00000c12: PUSH1 0x00 00000c14: REVERT 00000c15: JUMPDEST 00000c16: POP 00000c17: POP 00000c18: POP 00000c19: POP 00000c1a: PUSH1 0x40 00000c1c: MLOAD 00000c1d: RETURNDATASIZE 00000c1e: PUSH1 0x1f 00000c20: NOT 00000c21: PUSH1 0x1f 00000c23: DUP3 00000c24: ADD 00000c25: AND 00000c26: DUP3 00000c27: ADD 00000c28: DUP1 00000c29: PUSH1 0x40 00000c2b: MSTORE 00000c2c: POP 00000c2d: DUP2 00000c2e: ADD 00000c2f: SWAP1 00000c30: PUSH2 0x0c39 00000c33: SWAP2 00000c34: SWAP1 00000c35: PUSH2 0x3fe0 00000c38: JUMP 00000c39: JUMPDEST 00000c3a: PUSH1 0x40 00000c3c: DUP1 00000c3d: MLOAD 00000c3e: PUSH2 0x0180 00000c41: DUP2 00000c42: ADD 00000c43: SWAP1 00000c44: SWAP2 00000c45: MSTORE 00000c46: SWAP2 00000c47: SWAP4 00000c48: POP 00000c49: SWAP2 00000c4a: POP 00000c4b: DUP1 00000c4c: PUSH1 0x00 00000c4e: DUP2 00000c4f: MSTORE 00000c50: PUSH1 0x20 00000c52: ADD 00000c53: DUP12 00000c54: PUSH1 0x01 00000c56: PUSH1 0x01 00000c58: PUSH1 0xa0 00000c5a: SHL 00000c5b: SUB 00000c5c: AND 00000c5d: DUP2 00000c5e: MSTORE 00000c5f: PUSH1 0x20 00000c61: ADD 00000c62: DUP13 00000c63: PUSH1 0x01 00000c65: PUSH1 0x01 00000c67: PUSH1 0xa0 00000c69: SHL 00000c6a: SUB 00000c6b: AND 00000c6c: DUP2 00000c6d: MSTORE 00000c6e: PUSH1 0x20 00000c70: ADD 00000c71: DUP7 00000c72: PUSH1 0x01 00000c74: PUSH1 0x01 00000c76: PUSH1 0x80 00000c78: SHL 00000c79: SUB 00000c7a: AND 00000c7b: DUP2 00000c7c: MSTORE 00000c7d: PUSH1 0x20 00000c7f: ADD 00000c80: DUP6 00000c81: PUSH6 0xffffffffffff 00000c88: AND 00000c89: DUP2 00000c8a: MSTORE 00000c8b: PUSH1 0x20 00000c8d: ADD 00000c8e: DUP5 00000c8f: PUSH6 0xffffffffffff 00000c96: AND 00000c97: DUP2 00000c98: MSTORE 00000c99: PUSH1 0x20 00000c9b: ADD 00000c9c: DUP8 00000c9d: PUSH1 0x01 00000c9f: PUSH1 0x01 00000ca1: PUSH1 0x80 00000ca3: SHL 00000ca4: SUB 00000ca5: AND 00000ca6: DUP2 00000ca7: MSTORE 00000ca8: PUSH1 0x20 00000caa: ADD 00000cab: DUP10 00000cac: PUSH2 0x0cb5 00000caf: JUMPI 00000cb0: DUP12 00000cb1: PUSH2 0x0cb7 00000cb4: JUMP 00000cb5: JUMPDEST 00000cb6: DUP13 00000cb7: JUMPDEST 00000cb8: PUSH1 0x01 00000cba: PUSH1 0x01 00000cbc: PUSH1 0xa0 00000cbe: SHL 00000cbf: SUB 00000cc0: AND 00000cc1: DUP2 00000cc2: MSTORE 00000cc3: PUSH1 0x20 00000cc5: ADD 00000cc6: DUP11 00000cc7: DUP2 00000cc8: MSTORE 00000cc9: PUSH1 0x20 00000ccb: ADD 00000ccc: DUP14 00000ccd: PUSH8 0xffffffffffffffff 00000cd6: AND 00000cd7: DUP2 00000cd8: MSTORE 00000cd9: PUSH1 0x20 00000cdb: ADD 00000cdc: DUP4 00000cdd: PUSH1 0x01 00000cdf: PUSH1 0x01 00000ce1: PUSH1 0x80 00000ce3: SHL 00000ce4: SUB 00000ce5: AND 00000ce6: DUP2 00000ce7: MSTORE 00000ce8: PUSH1 0x20 00000cea: ADD 00000ceb: DUP3 00000cec: PUSH1 0x01 00000cee: PUSH1 0x01 00000cf0: PUSH1 0x80 00000cf2: SHL 00000cf3: SUB 00000cf4: AND 00000cf5: DUP2 00000cf6: MSTORE 00000cf7: POP 00000cf8: SWAP14 00000cf9: POP 00000cfa: POP 00000cfb: POP 00000cfc: POP 00000cfd: POP 00000cfe: POP 00000cff: POP 00000d00: POP 00000d01: POP 00000d02: POP 00000d03: POP 00000d04: POP 00000d05: POP 00000d06: JUMPDEST 00000d07: SWAP4 00000d08: POP 00000d09: SWAP4 00000d0a: SWAP2 00000d0b: POP 00000d0c: POP 00000d0d: JUMP 00000d0e: JUMPDEST 00000d0f: PUSH1 0x00 00000d11: PUSH2 0x0d1b 00000d14: DUP5 00000d15: DUP5 00000d16: DUP5 00000d17: PUSH2 0x2a6e 00000d1a: JUMP 00000d1b: JUMPDEST 00000d1c: PUSH1 0x09 00000d1e: SLOAD 00000d1f: PUSH1 0x40 00000d21: MLOAD 00000d22: PUSH4 0x536a4ee5 00000d27: PUSH1 0xe1 00000d29: SHL 00000d2a: DUP2 00000d2b: MSTORE 00000d2c: PUSH1 0x01 00000d2e: PUSH1 0x01 00000d30: PUSH1 0xa0 00000d32: SHL 00000d33: SUB 00000d34: DUP8 00000d35: DUP2 00000d36: AND 00000d37: PUSH1 0x04 00000d39: DUP4 00000d3a: ADD 00000d3b: MSTORE 00000d3c: DUP7 00000d3d: DUP2 00000d3e: AND 00000d3f: PUSH1 0x24 00000d41: DUP4 00000d42: ADD 00000d43: MSTORE 00000d44: PUSH1 0x44 00000d46: DUP3 00000d47: ADD 00000d48: DUP7 00000d49: SWAP1 00000d4a: MSTORE 00000d4b: SWAP3 00000d4c: SWAP4 00000d4d: POP 00000d4e: SWAP2 00000d4f: AND 00000d50: SWAP1 00000d51: PUSH4 0xa6d49dca 00000d56: SWAP1 00000d57: PUSH1 0x64 00000d59: ADD 00000d5a: PUSH1 0x00 00000d5c: PUSH1 0x40 00000d5e: MLOAD 00000d5f: DUP1 00000d60: DUP4 00000d61: SUB 00000d62: DUP2 00000d63: PUSH1 0x00 00000d65: DUP8 00000d66: DUP1 00000d67: EXTCODESIZE 00000d68: ISZERO 00000d69: DUP1 00000d6a: ISZERO 00000d6b: PUSH2 0x0d73 00000d6e: JUMPI 00000d6f: PUSH1 0x00 00000d71: DUP1 00000d72: REVERT 00000d73: JUMPDEST 00000d74: POP 00000d75: GAS 00000d76: CALL 00000d77: ISZERO 00000d78: DUP1 00000d79: ISZERO 00000d7a: PUSH2 0x0d87 00000d7d: JUMPI 00000d7e: RETURNDATASIZE 00000d7f: PUSH1 0x00 00000d81: DUP1 00000d82: RETURNDATACOPY 00000d83: RETURNDATASIZE 00000d84: PUSH1 0x00 00000d86: REVERT 00000d87: JUMPDEST 00000d88: POP 00000d89: POP 00000d8a: POP 00000d8b: POP 00000d8c: SWAP4 00000d8d: SWAP3 00000d8e: POP 00000d8f: POP 00000d90: POP 00000d91: JUMP 00000d92: JUMPDEST 00000d93: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 00000db4: DUP1 00000db5: SLOAD 00000db6: PUSH1 0x01 00000db8: PUSH1 0x40 00000dba: SHL 00000dbb: DUP2 00000dbc: DIV 00000dbd: PUSH1 0xff 00000dbf: AND 00000dc0: ISZERO 00000dc1: SWAP1 00000dc2: PUSH8 0xffffffffffffffff 00000dcb: AND 00000dcc: PUSH1 0x00 00000dce: DUP2 00000dcf: ISZERO 00000dd0: DUP1 00000dd1: ISZERO 00000dd2: PUSH2 0x0dd8 00000dd5: JUMPI 00000dd6: POP 00000dd7: DUP3 00000dd8: JUMPDEST 00000dd9: SWAP1 00000dda: POP 00000ddb: PUSH1 0x00 00000ddd: DUP3 00000dde: PUSH8 0xffffffffffffffff 00000de7: AND 00000de8: PUSH1 0x01 00000dea: EQ 00000deb: DUP1 00000dec: ISZERO 00000ded: PUSH2 0x0df5 00000df0: JUMPI 00000df1: POP 00000df2: ADDRESS 00000df3: EXTCODESIZE 00000df4: ISZERO 00000df5: JUMPDEST 00000df6: SWAP1 00000df7: POP 00000df8: DUP2 00000df9: ISZERO 00000dfa: DUP1 00000dfb: ISZERO 00000dfc: PUSH2 0x0e03 00000dff: JUMPI 00000e00: POP 00000e01: DUP1 00000e02: ISZERO 00000e03: JUMPDEST 00000e04: ISZERO 00000e05: PUSH2 0x0e21 00000e08: JUMPI 00000e09: PUSH1 0x40 00000e0b: MLOAD 00000e0c: PUSH4 0xf92ee8a9 00000e11: PUSH1 0xe0 00000e13: SHL 00000e14: DUP2 00000e15: MSTORE 00000e16: PUSH1 0x04 00000e18: ADD 00000e19: PUSH1 0x40 00000e1b: MLOAD 00000e1c: DUP1 00000e1d: SWAP2 00000e1e: SUB 00000e1f: SWAP1 00000e20: REVERT 00000e21: JUMPDEST 00000e22: DUP5 00000e23: SLOAD 00000e24: PUSH8 0xffffffffffffffff 00000e2d: NOT 00000e2e: AND 00000e2f: PUSH1 0x01 00000e31: OR 00000e32: DUP6 00000e33: SSTORE 00000e34: DUP4 00000e35: ISZERO 00000e36: PUSH2 0x0e50 00000e39: JUMPI 00000e3a: DUP5 00000e3b: SLOAD 00000e3c: PUSH9 0xff0000000000000000 00000e46: NOT 00000e47: AND 00000e48: PUSH1 0x01 00000e4a: PUSH1 0x40 00000e4c: SHL 00000e4d: OR 00000e4e: DUP6 00000e4f: SSTORE 00000e50: JUMPDEST 00000e51: PUSH2 0x0e60 00000e54: PUSH1 0x40 00000e56: DUP10 00000e57: ADD 00000e58: PUSH1 0x20 00000e5a: DUP11 00000e5b: ADD 00000e5c: PUSH2 0x3b00 00000e5f: JUMP 00000e60: JUMPDEST 00000e61: PUSH1 0x01 00000e63: PUSH1 0x01 00000e65: PUSH1 0xa0 00000e67: SHL 00000e68: SUB 00000e69: AND 00000e6a: PUSH2 0x0e76 00000e6d: PUSH1 0x20 00000e6f: DUP11 00000e70: ADD 00000e71: DUP11 00000e72: PUSH2 0x3b00 00000e75: JUMP 00000e76: JUMPDEST 00000e77: PUSH1 0x01 00000e79: PUSH1 0x01 00000e7b: PUSH1 0xa0 00000e7d: SHL 00000e7e: SUB 00000e7f: AND 00000e80: SUB 00000e81: PUSH2 0x0eb6 00000e84: JUMPI 00000e85: PUSH1 0x40 00000e87: MLOAD 00000e88: PUSH32 0x8686656d00000000000000000000000000000000000000000000000000000000 00000ea9: DUP2 00000eaa: MSTORE 00000eab: PUSH1 0x04 00000ead: ADD 00000eae: PUSH1 0x40 00000eb0: MLOAD 00000eb1: DUP1 00000eb2: SWAP2 00000eb3: SUB 00000eb4: SWAP1 00000eb5: REVERT 00000eb6: JUMPDEST 00000eb7: PUSH2 0x0ec6 00000eba: PUSH1 0x60 00000ebc: DUP10 00000ebd: ADD 00000ebe: PUSH1 0x40 00000ec0: DUP11 00000ec1: ADD 00000ec2: PUSH2 0x400f 00000ec5: JUMP 00000ec6: JUMPDEST 00000ec7: PUSH1 0x01 00000ec9: PUSH1 0x01 00000ecb: PUSH1 0x80 00000ecd: SHL 00000ece: SUB 00000ecf: AND 00000ed0: PUSH1 0x00 00000ed2: SUB 00000ed3: PUSH2 0x0f08 00000ed6: JUMPI 00000ed7: PUSH1 0x40 00000ed9: MLOAD 00000eda: PUSH32 0x950466ea00000000000000000000000000000000000000000000000000000000 00000efb: DUP2 00000efc: MSTORE 00000efd: PUSH1 0x04 00000eff: ADD 00000f00: PUSH1 0x40 00000f02: MLOAD 00000f03: DUP1 00000f04: SWAP2 00000f05: SUB 00000f06: SWAP1 00000f07: REVERT 00000f08: JUMPDEST 00000f09: PUSH2 0x0f18 00000f0c: PUSH1 0x80 00000f0e: DUP10 00000f0f: ADD 00000f10: PUSH1 0x60 00000f12: DUP11 00000f13: ADD 00000f14: PUSH2 0x400f 00000f17: JUMP 00000f18: JUMPDEST 00000f19: PUSH1 0x01 00000f1b: PUSH1 0x01 00000f1d: PUSH1 0x80 00000f1f: SHL 00000f20: SUB 00000f21: AND 00000f22: PUSH1 0x00 00000f24: SUB 00000f25: PUSH2 0x0f5a 00000f28: JUMPI 00000f29: PUSH1 0x40 00000f2b: MLOAD 00000f2c: PUSH32 0x9a5818d800000000000000000000000000000000000000000000000000000000 00000f4d: DUP2 00000f4e: MSTORE 00000f4f: PUSH1 0x04 00000f51: ADD 00000f52: PUSH1 0x40 00000f54: MLOAD 00000f55: DUP1 00000f56: SWAP2 00000f57: SUB 00000f58: SWAP1 00000f59: REVERT 00000f5a: JUMPDEST 00000f5b: PUSH2 0x0f6a 00000f5e: PUSH1 0xa0 00000f60: DUP10 00000f61: ADD 00000f62: PUSH1 0x80 00000f64: DUP11 00000f65: ADD 00000f66: PUSH2 0x4040 00000f69: JUMP 00000f6a: JUMPDEST 00000f6b: PUSH6 0xffffffffffff 00000f72: AND 00000f73: PUSH1 0x00 00000f75: SUB 00000f76: PUSH2 0x0fab 00000f79: JUMPI 00000f7a: PUSH1 0x40 00000f7c: MLOAD 00000f7d: PUSH32 0x82d4642500000000000000000000000000000000000000000000000000000000 00000f9e: DUP2 00000f9f: MSTORE 00000fa0: PUSH1 0x04 00000fa2: ADD 00000fa3: PUSH1 0x40 00000fa5: MLOAD 00000fa6: DUP1 00000fa7: SWAP2 00000fa8: SUB 00000fa9: SWAP1 00000faa: REVERT 00000fab: JUMPDEST 00000fac: PUSH2 0x0fbb 00000faf: PUSH1 0xc0 00000fb1: DUP10 00000fb2: ADD 00000fb3: PUSH1 0xa0 00000fb5: DUP11 00000fb6: ADD 00000fb7: PUSH2 0x4040 00000fba: JUMP 00000fbb: JUMPDEST 00000fbc: PUSH2 0x0fc8 00000fbf: SWAP1 00000fc0: PUSH3 0x015180 00000fc4: PUSH2 0x405d 00000fc7: JUMP 00000fc8: JUMPDEST 00000fc9: PUSH6 0xffffffffffff 00000fd0: AND 00000fd1: PUSH2 0x0fe0 00000fd4: PUSH1 0xa0 00000fd6: DUP11 00000fd7: ADD 00000fd8: PUSH1 0x80 00000fda: DUP12 00000fdb: ADD 00000fdc: PUSH2 0x4040 00000fdf: JUMP 00000fe0: JUMPDEST 00000fe1: PUSH6 0xffffffffffff 00000fe8: AND 00000fe9: LT 00000fea: ISZERO 00000feb: PUSH2 0x1020 00000fee: JUMPI 00000fef: PUSH1 0x40 00000ff1: MLOAD 00000ff2: PUSH32 0x7a098ab600000000000000000000000000000000000000000000000000000000 00001013: DUP2 00001014: MSTORE 00001015: PUSH1 0x04 00001017: ADD 00001018: PUSH1 0x40 0000101a: MLOAD 0000101b: DUP1 0000101c: SWAP2 0000101d: SUB 0000101e: SWAP1 0000101f: REVERT 00001020: JUMPDEST 00001021: PUSH2 0x1032 00001024: PUSH2 0x0120 00001027: DUP10 00001028: ADD 00001029: PUSH2 0x0100 0000102c: DUP11 0000102d: ADD 0000102e: PUSH2 0x4099 00001031: JUMP 00001032: JUMPDEST 00001033: PUSH8 0xffffffffffffffff 0000103c: AND 0000103d: ISZERO 0000103e: DUP1 0000103f: PUSH2 0x1061 00001042: JUMPI 00001043: POP 00001044: PUSH2 0x1055 00001047: PUSH2 0x0140 0000104a: DUP10 0000104b: ADD 0000104c: PUSH2 0x0120 0000104f: DUP11 00001050: ADD 00001051: PUSH2 0x4099 00001054: JUMP 00001055: JUMPDEST 00001056: PUSH8 0xffffffffffffffff 0000105f: AND 00001060: ISZERO 00001061: JUMPDEST 00001062: DUP1 00001063: PUSH2 0x10a1 00001066: JUMPI 00001067: POP 00001068: PUSH2 0x1079 0000106b: PUSH2 0x0140 0000106e: DUP10 0000106f: ADD 00001070: PUSH2 0x0120 00001073: DUP11 00001074: ADD 00001075: PUSH2 0x4099 00001078: JUMP 00001079: JUMPDEST 0000107a: PUSH8 0xffffffffffffffff 00001083: AND 00001084: PUSH2 0x1095 00001087: PUSH2 0x0120 0000108a: DUP11 0000108b: ADD 0000108c: PUSH2 0x0100 0000108f: DUP12 00001090: ADD 00001091: PUSH2 0x4099 00001094: JUMP 00001095: JUMPDEST 00001096: PUSH8 0xffffffffffffffff 0000109f: AND 000010a0: LT 000010a1: JUMPDEST 000010a2: ISZERO 000010a3: PUSH2 0x10d8 000010a6: JUMPI 000010a7: PUSH1 0x40 000010a9: MLOAD 000010aa: PUSH32 0x563184a000000000000000000000000000000000000000000000000000000000 000010cb: DUP2 000010cc: MSTORE 000010cd: PUSH1 0x04 000010cf: ADD 000010d0: PUSH1 0x40 000010d2: MLOAD 000010d3: DUP1 000010d4: SWAP2 000010d5: SUB 000010d6: SWAP1 000010d7: REVERT 000010d8: JUMPDEST 000010d9: PUSH2 0x10ea 000010dc: PUSH2 0x0180 000010df: DUP10 000010e0: ADD 000010e1: PUSH2 0x0160 000010e4: DUP11 000010e5: ADD 000010e6: PUSH2 0x400f 000010e9: JUMP 000010ea: JUMPDEST 000010eb: PUSH1 0x01 000010ed: PUSH1 0x01 000010ef: PUSH1 0x80 000010f1: SHL 000010f2: SUB 000010f3: AND 000010f4: ISZERO 000010f5: DUP1 000010f6: PUSH2 0x1132 000010f9: JUMPI 000010fa: POP 000010fb: PUSH2 0x110c 000010fe: PUSH2 0x0160 00001101: DUP10 00001102: ADD 00001103: PUSH2 0x0140 00001106: DUP11 00001107: ADD 00001108: PUSH2 0x400f 0000110b: JUMP 0000110c: JUMPDEST 0000110d: PUSH1 0x01 0000110f: PUSH1 0x01 00001111: PUSH1 0x80 00001113: SHL 00001114: SUB 00001115: AND 00001116: PUSH2 0x1127 00001119: PUSH2 0x0180 0000111c: DUP11 0000111d: ADD 0000111e: PUSH2 0x0160 00001121: DUP12 00001122: ADD 00001123: PUSH2 0x400f 00001126: JUMP 00001127: JUMPDEST 00001128: PUSH1 0x01 0000112a: PUSH1 0x01 0000112c: PUSH1 0x80 0000112e: SHL 0000112f: SUB 00001130: AND 00001131: LT 00001132: JUMPDEST 00001133: ISZERO 00001134: PUSH2 0x1169 00001137: JUMPI 00001138: PUSH1 0x40 0000113a: MLOAD 0000113b: PUSH32 0xc9ad7cfb00000000000000000000000000000000000000000000000000000000 0000115c: DUP2 0000115d: MSTORE 0000115e: PUSH1 0x04 00001160: ADD 00001161: PUSH1 0x40 00001163: MLOAD 00001164: DUP1 00001165: SWAP2 00001166: SUB 00001167: SWAP1 00001168: REVERT 00001169: JUMPDEST 0000116a: PUSH1 0x00 0000116c: PUSH2 0x117d 0000116f: PUSH2 0x01c0 00001172: DUP11 00001173: ADD 00001174: PUSH2 0x01a0 00001177: DUP12 00001178: ADD 00001179: PUSH2 0x3b00 0000117c: JUMP 0000117d: JUMPDEST 0000117e: PUSH1 0x01 00001180: PUSH1 0x01 00001182: PUSH1 0xa0 00001184: SHL 00001185: SUB 00001186: AND 00001187: SUB 00001188: PUSH2 0x11bd 0000118b: JUMPI 0000118c: PUSH1 0x40 0000118e: MLOAD 0000118f: PUSH32 0x9589a27d00000000000000000000000000000000000000000000000000000000 000011b0: DUP2 000011b1: MSTORE 000011b2: PUSH1 0x04 000011b4: ADD 000011b5: PUSH1 0x40 000011b7: MLOAD 000011b8: DUP1 000011b9: SWAP2 000011ba: SUB 000011bb: SWAP1 000011bc: REVERT 000011bd: JUMPDEST 000011be: PUSH8 0x0de0b6b3a7640000 000011c7: PUSH2 0x11d8 000011ca: PUSH2 0x01a0 000011cd: DUP11 000011ce: ADD 000011cf: PUSH2 0x0180 000011d2: DUP12 000011d3: ADD 000011d4: PUSH2 0x4099 000011d7: JUMP 000011d8: JUMPDEST 000011d9: PUSH8 0xffffffffffffffff 000011e2: AND 000011e3: GT 000011e4: ISZERO 000011e5: PUSH2 0x121a 000011e8: JUMPI 000011e9: PUSH1 0x40 000011eb: MLOAD 000011ec: PUSH32 0xa7e9b5b600000000000000000000000000000000000000000000000000000000 0000120d: DUP2 0000120e: MSTORE 0000120f: PUSH1 0x04 00001211: ADD 00001212: PUSH1 0x40 00001214: MLOAD 00001215: DUP1 00001216: SWAP2 00001217: SUB 00001218: SWAP1 00001219: REVERT 0000121a: JUMPDEST 0000121b: PUSH2 0x1227 0000121e: PUSH1 0x20 00001220: DUP10 00001221: ADD 00001222: DUP10 00001223: PUSH2 0x3b00 00001226: JUMP 00001227: JUMPDEST 00001228: PUSH1 0x0e 0000122a: DUP1 0000122b: SLOAD 0000122c: PUSH1 0x01 0000122e: PUSH1 0x01 00001230: PUSH1 0xa0 00001232: SHL 00001233: SUB 00001234: NOT 00001235: AND 00001236: PUSH1 0x01 00001238: PUSH1 0x01 0000123a: PUSH1 0xa0 0000123c: SHL 0000123d: SUB 0000123e: SWAP3 0000123f: SWAP1 00001240: SWAP3 00001241: AND 00001242: SWAP2 00001243: SWAP1 00001244: SWAP2 00001245: OR 00001246: SWAP1 00001247: SSTORE 00001248: PUSH2 0x1257 0000124b: PUSH1 0x40 0000124d: DUP10 0000124e: ADD 0000124f: PUSH1 0x20 00001251: DUP11 00001252: ADD 00001253: PUSH2 0x3b00 00001256: JUMP 00001257: JUMPDEST 00001258: PUSH1 0x0f 0000125a: DUP1 0000125b: SLOAD 0000125c: PUSH1 0x01 0000125e: PUSH1 0x01 00001260: PUSH1 0xa0 00001262: SHL 00001263: SUB 00001264: NOT 00001265: AND 00001266: PUSH1 0x01 00001268: PUSH1 0x01 0000126a: PUSH1 0xa0 0000126c: SHL 0000126d: SUB 0000126e: SWAP3 0000126f: SWAP1 00001270: SWAP3 00001271: AND 00001272: SWAP2 00001273: SWAP1 00001274: SWAP2 00001275: OR 00001276: SWAP1 00001277: SSTORE 00001278: PUSH2 0x1287 0000127b: PUSH1 0x60 0000127d: DUP10 0000127e: ADD 0000127f: PUSH1 0x40 00001281: DUP11 00001282: ADD 00001283: PUSH2 0x400f 00001286: JUMP 00001287: JUMPDEST 00001288: PUSH1 0x10 0000128a: DUP1 0000128b: SLOAD 0000128c: PUSH1 0x01 0000128e: PUSH1 0x01 00001290: PUSH1 0x80 00001292: SHL 00001293: SUB 00001294: NOT 00001295: AND 00001296: PUSH1 0x01 00001298: PUSH1 0x01 0000129a: PUSH1 0x80 0000129c: SHL 0000129d: SUB 0000129e: SWAP3 0000129f: SWAP1 000012a0: SWAP3 000012a1: AND 000012a2: SWAP2 000012a3: SWAP1 000012a4: SWAP2 000012a5: OR 000012a6: SWAP1 000012a7: SSTORE 000012a8: PUSH2 0x0180 000012ab: DUP9 000012ac: ADD 000012ad: PUSH1 0x11 000012af: PUSH2 0x12b8 000012b2: DUP3 000012b3: DUP3 000012b4: PUSH2 0x40dd 000012b7: JUMP 000012b8: JUMPDEST 000012b9: POP 000012ba: POP 000012bb: PUSH1 0x60 000012bd: DUP9 000012be: ADD 000012bf: PUSH1 0x13 000012c1: PUSH2 0x12ca 000012c4: DUP3 000012c5: DUP3 000012c6: PUSH2 0x4210 000012c9: JUMP 000012ca: JUMPDEST 000012cb: POP 000012cc: POP 000012cd: PUSH1 0x0c 000012cf: DUP1 000012d0: SLOAD 000012d1: PUSH1 0xff 000012d3: NOT 000012d4: AND 000012d5: PUSH1 0x01 000012d7: OR 000012d8: SWAP1 000012d9: SSTORE 000012da: PUSH1 0x0b 000012dc: DUP1 000012dd: SLOAD 000012de: PUSH1 0x01 000012e0: PUSH1 0x01 000012e2: PUSH1 0xa0 000012e4: SHL 000012e5: SUB 000012e6: DUP9 000012e7: AND 000012e8: PUSH1 0x01 000012ea: PUSH1 0x01 000012ec: PUSH1 0xa0 000012ee: SHL 000012ef: SUB 000012f0: NOT 000012f1: SWAP1 000012f2: SWAP2 000012f3: AND 000012f4: OR 000012f5: SWAP1 000012f6: SSTORE 000012f7: PUSH2 0x130f 000012fa: DUP12 000012fb: DUP12 000012fc: DUP12 000012fd: PUSH2 0x1309 00001300: PUSH1 0x20 00001302: DUP14 00001303: ADD 00001304: DUP14 00001305: PUSH2 0x3b00 00001308: JUMP 00001309: JUMPDEST 0000130a: DUP12 0000130b: PUSH2 0x2a94 0000130e: JUMP 0000130f: JUMPDEST 00001310: DUP4 00001311: ISZERO 00001312: PUSH2 0x135a 00001315: JUMPI 00001316: DUP5 00001317: SLOAD 00001318: PUSH9 0xff0000000000000000 00001322: NOT 00001323: AND 00001324: DUP6 00001325: SSTORE 00001326: PUSH1 0x40 00001328: MLOAD 00001329: PUSH1 0x01 0000132b: DUP2 0000132c: MSTORE 0000132d: PUSH32 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2 0000134e: SWAP1 0000134f: PUSH1 0x20 00001351: ADD 00001352: PUSH1 0x40 00001354: MLOAD 00001355: DUP1 00001356: SWAP2 00001357: SUB 00001358: SWAP1 00001359: LOG1 0000135a: JUMPDEST 0000135b: POP 0000135c: POP 0000135d: POP 0000135e: POP 0000135f: POP 00001360: POP 00001361: POP 00001362: POP 00001363: POP 00001364: POP 00001365: POP 00001366: JUMP 00001367: JUMPDEST 00001368: PUSH1 0x09 0000136a: SLOAD 0000136b: PUSH1 0x00 0000136d: SWAP1 0000136e: DUP2 0000136f: SWAP1 00001370: DUP2 00001371: SWAP1 00001372: PUSH1 0x01 00001374: PUSH1 0x01 00001376: PUSH1 0xa0 00001378: SHL 00001379: SUB 0000137a: AND 0000137b: CALLER 0000137c: EQ 0000137d: PUSH2 0x1399 00001380: JUMPI 00001381: PUSH1 0x40 00001383: MLOAD 00001384: PUSH4 0x6edaef2f 00001389: PUSH1 0xe1 0000138b: SHL 0000138c: DUP2 0000138d: MSTORE 0000138e: PUSH1 0x04 00001390: ADD 00001391: PUSH1 0x40 00001393: MLOAD 00001394: DUP1 00001395: SWAP2 00001396: SUB 00001397: SWAP1 00001398: REVERT 00001399: JUMPDEST 0000139a: PUSH1 0x0c 0000139c: SLOAD 0000139d: PUSH2 0x0100 000013a0: SWAP1 000013a1: DIV 000013a2: PUSH1 0xff 000013a4: AND 000013a5: PUSH2 0x13c1 000013a8: JUMPI 000013a9: PUSH1 0x40 000013ab: MLOAD 000013ac: PUSH4 0x2f8268ed 000013b1: PUSH1 0xe0 000013b3: SHL 000013b4: DUP2 000013b5: MSTORE 000013b6: PUSH1 0x04 000013b8: ADD 000013b9: PUSH1 0x40 000013bb: MLOAD 000013bc: DUP1 000013bd: SWAP2 000013be: SUB 000013bf: SWAP1 000013c0: REVERT 000013c1: JUMPDEST 000013c2: PUSH1 0x0e 000013c4: SLOAD 000013c5: PUSH1 0x01 000013c7: PUSH1 0xa0 000013c9: SHL 000013ca: SWAP1 000013cb: DIV 000013cc: PUSH6 0xffffffffffff 000013d3: AND 000013d4: TIMESTAMP 000013d5: GT 000013d6: DUP1 000013d7: PUSH2 0x13f0 000013da: JUMPI 000013db: POP 000013dc: PUSH1 0x0f 000013de: SLOAD 000013df: PUSH1 0x01 000013e1: PUSH1 0xa0 000013e3: SHL 000013e4: SWAP1 000013e5: DIV 000013e6: PUSH6 0xffffffffffff 000013ed: AND 000013ee: TIMESTAMP 000013ef: LT 000013f0: JUMPDEST 000013f1: ISZERO 000013f2: PUSH2 0x1427 000013f5: JUMPI 000013f6: PUSH1 0x40 000013f8: MLOAD 000013f9: PUSH32 0x9bafde7400000000000000000000000000000000000000000000000000000000 0000141a: DUP2 0000141b: MSTORE 0000141c: PUSH1 0x04 0000141e: ADD 0000141f: PUSH1 0x40 00001421: MLOAD 00001422: DUP1 00001423: SWAP2 00001424: SUB 00001425: SWAP1 00001426: REVERT 00001427: JUMPDEST 00001428: DUP6 00001429: ISZERO 0000142a: DUP1 0000142b: PUSH2 0x143e 0000142e: JUMPI 0000142f: POP 00001430: PUSH1 0x10 00001432: SLOAD 00001433: PUSH1 0x01 00001435: PUSH1 0x01 00001437: PUSH1 0x80 00001439: SHL 0000143a: SUB 0000143b: AND 0000143c: DUP7 0000143d: GT 0000143e: JUMPDEST 0000143f: ISZERO 00001440: PUSH2 0x1475 00001443: JUMPI 00001444: PUSH1 0x40 00001446: MLOAD 00001447: PUSH32 0x3bd8dc6600000000000000000000000000000000000000000000000000000000 00001468: DUP2 00001469: MSTORE 0000146a: PUSH1 0x04 0000146c: ADD 0000146d: PUSH1 0x40 0000146f: MLOAD 00001470: DUP1 00001471: SWAP2 00001472: SUB 00001473: SWAP1 00001474: REVERT 00001475: JUMPDEST 00001476: PUSH1 0x0e 00001478: SLOAD 00001479: PUSH1 0x10 0000147b: SLOAD 0000147c: PUSH1 0x40 0000147e: DUP1 0000147f: MLOAD 00001480: PUSH4 0x313ce567 00001485: PUSH1 0xe0 00001487: SHL 00001488: DUP2 00001489: MSTORE 0000148a: SWAP1 0000148b: MLOAD 0000148c: PUSH1 0x01 0000148e: PUSH1 0x01 00001490: PUSH1 0xa0 00001492: SHL 00001493: SUB 00001494: SWAP1 00001495: SWAP4 00001496: AND 00001497: SWAP3 00001498: PUSH1 0x01 0000149a: PUSH1 0x80 0000149c: SHL 0000149d: SWAP1 0000149e: SWAP3 0000149f: DIV 000014a0: PUSH1 0x01 000014a2: PUSH1 0x01 000014a4: PUSH1 0x80 000014a6: SHL 000014a7: SUB 000014a8: AND 000014a9: SWAP2 000014aa: PUSH1 0x00 000014ac: SWAP2 000014ad: DUP5 000014ae: SWAP2 000014af: PUSH4 0x313ce567 000014b4: SWAP2 000014b5: PUSH1 0x04 000014b7: DUP1 000014b8: DUP3 000014b9: ADD 000014ba: SWAP3 000014bb: PUSH1 0x20 000014bd: SWAP3 000014be: SWAP1 000014bf: SWAP2 000014c0: SWAP1 000014c1: DUP3 000014c2: SWAP1 000014c3: SUB 000014c4: ADD 000014c5: DUP2 000014c6: DUP7 000014c7: GAS 000014c8: STATICCALL 000014c9: ISZERO 000014ca: DUP1 000014cb: ISZERO 000014cc: PUSH2 0x14d9 000014cf: JUMPI 000014d0: RETURNDATASIZE 000014d1: PUSH1 0x00 000014d3: DUP1 000014d4: RETURNDATACOPY 000014d5: RETURNDATASIZE 000014d6: PUSH1 0x00 000014d8: REVERT 000014d9: JUMPDEST 000014da: POP 000014db: POP 000014dc: POP 000014dd: POP 000014de: PUSH1 0x40 000014e0: MLOAD 000014e1: RETURNDATASIZE 000014e2: PUSH1 0x1f 000014e4: NOT 000014e5: PUSH1 0x1f 000014e7: DUP3 000014e8: ADD 000014e9: AND 000014ea: DUP3 000014eb: ADD 000014ec: DUP1 000014ed: PUSH1 0x40 000014ef: MSTORE 000014f0: POP 000014f1: DUP2 000014f2: ADD 000014f3: SWAP1 000014f4: PUSH2 0x14fd 000014f7: SWAP2 000014f8: SWAP1 000014f9: PUSH2 0x3d7f 000014fc: JUMP 000014fd: JUMPDEST 000014fe: PUSH1 0xff 00001500: AND 00001501: SWAP1 00001502: POP 00001503: PUSH1 0x0e 00001505: PUSH1 0x01 00001507: ADD 00001508: PUSH1 0x00 0000150a: SWAP1 0000150b: SLOAD 0000150c: SWAP1 0000150d: PUSH2 0x0100 00001510: EXP 00001511: SWAP1 00001512: DIV 00001513: PUSH1 0x01 00001515: PUSH1 0x01 00001517: PUSH1 0xa0 00001519: SHL 0000151a: SUB 0000151b: AND 0000151c: SWAP6 0000151d: POP 0000151e: PUSH1 0x00 00001520: DUP7 00001521: PUSH1 0x01 00001523: PUSH1 0x01 00001525: PUSH1 0xa0 00001527: SHL 00001528: SUB 00001529: AND 0000152a: PUSH4 0x313ce567 0000152f: PUSH1 0x40 00001531: MLOAD 00001532: DUP2 00001533: PUSH4 0xffffffff 00001538: AND 00001539: PUSH1 0xe0 0000153b: SHL 0000153c: DUP2 0000153d: MSTORE 0000153e: PUSH1 0x04 00001540: ADD 00001541: PUSH1 0x20 00001543: PUSH1 0x40 00001545: MLOAD 00001546: DUP1 00001547: DUP4 00001548: SUB 00001549: DUP2 0000154a: DUP7 0000154b: GAS 0000154c: STATICCALL 0000154d: ISZERO 0000154e: DUP1 0000154f: ISZERO 00001550: PUSH2 0x155d 00001553: JUMPI 00001554: RETURNDATASIZE 00001555: PUSH1 0x00 00001557: DUP1 00001558: RETURNDATACOPY 00001559: RETURNDATASIZE 0000155a: PUSH1 0x00 0000155c: REVERT 0000155d: JUMPDEST 0000155e: POP 0000155f: POP 00001560: POP 00001561: POP 00001562: PUSH1 0x40 00001564: MLOAD 00001565: RETURNDATASIZE 00001566: PUSH1 0x1f 00001568: NOT 00001569: PUSH1 0x1f 0000156b: DUP3 0000156c: ADD 0000156d: AND 0000156e: DUP3 0000156f: ADD 00001570: DUP1 00001571: PUSH1 0x40 00001573: MSTORE 00001574: POP 00001575: DUP2 00001576: ADD 00001577: SWAP1 00001578: PUSH2 0x1581 0000157b: SWAP2 0000157c: SWAP1 0000157d: PUSH2 0x3d7f 00001580: JUMP 00001581: JUMPDEST 00001582: PUSH1 0xff 00001584: AND 00001585: SWAP1 00001586: POP 00001587: PUSH2 0x1593 0000158a: DUP4 0000158b: DUP12 0000158c: DUP5 0000158d: PUSH1 0x01 0000158f: PUSH2 0x2c6b 00001592: JUMP 00001593: JUMPDEST 00001594: PUSH1 0x0b 00001596: SLOAD 00001597: SWAP1 00001598: SWAP7 00001599: POP 0000159a: PUSH8 0x0de0b6b3a7640000 000015a3: SWAP1 000015a4: PUSH2 0x15c2 000015a7: SWAP1 000015a8: PUSH1 0x01 000015aa: PUSH1 0xa0 000015ac: SHL 000015ad: SWAP1 000015ae: DIV 000015af: PUSH12 0xffffffffffffffffffffffff 000015bc: AND 000015bd: DUP9 000015be: PUSH2 0x3eab 000015c1: JUMP 000015c2: JUMPDEST 000015c3: PUSH2 0x15cc 000015c6: SWAP2 000015c7: SWAP1 000015c8: PUSH2 0x3ec2 000015cb: JUMP 000015cc: JUMPDEST 000015cd: SWAP5 000015ce: POP 000015cf: PUSH1 0x00 000015d1: DUP10 000015d2: PUSH2 0x16ed 000015d5: JUMPI 000015d6: PUSH2 0x15e0 000015d9: DUP3 000015da: PUSH1 0x0a 000015dc: PUSH2 0x4458 000015df: JUMP 000015e0: JUMPDEST 000015e1: PUSH2 0x15eb 000015e4: DUP5 000015e5: PUSH1 0x0a 000015e7: PUSH2 0x4458 000015ea: JUMP 000015eb: JUMPDEST 000015ec: PUSH2 0x15f5 000015ef: SWAP2 000015f0: SWAP1 000015f1: PUSH2 0x3eab 000015f4: JUMP 000015f5: JUMPDEST 000015f6: PUSH1 0x11 000015f8: SLOAD 000015f9: PUSH1 0x40 000015fb: MLOAD 000015fc: PUSH4 0x517382cf 00001601: PUSH1 0xe1 00001603: SHL 00001604: DUP2 00001605: MSTORE 00001606: PUSH1 0x01 00001608: PUSH1 0x40 0000160a: SHL 0000160b: SWAP1 0000160c: SWAP2 0000160d: DIV 0000160e: PUSH1 0x01 00001610: PUSH1 0x01 00001612: PUSH1 0xa0 00001614: SHL 00001615: SUB 00001616: AND 00001617: SWAP1 00001618: PUSH4 0xa2e7059e 0000161d: SWAP1 0000161e: PUSH2 0x162f 00001621: SWAP1 00001622: DUP13 00001623: SWAP1 00001624: DUP11 00001625: SWAP1 00001626: DUP16 00001627: SWAP1 00001628: PUSH1 0x04 0000162a: ADD 0000162b: PUSH2 0x3ce5 0000162e: JUMP 0000162f: JUMPDEST 00001630: PUSH1 0x20 00001632: PUSH1 0x40 00001634: MLOAD 00001635: DUP1 00001636: DUP4 00001637: SUB 00001638: DUP2 00001639: DUP7 0000163a: GAS 0000163b: STATICCALL 0000163c: ISZERO 0000163d: DUP1 0000163e: ISZERO 0000163f: PUSH2 0x164c 00001642: JUMPI 00001643: RETURNDATASIZE 00001644: PUSH1 0x00 00001646: DUP1 00001647: RETURNDATACOPY 00001648: RETURNDATASIZE 00001649: PUSH1 0x00 0000164b: REVERT 0000164c: JUMPDEST 0000164d: POP 0000164e: POP 0000164f: POP 00001650: POP 00001651: PUSH1 0x40 00001653: MLOAD 00001654: RETURNDATASIZE 00001655: PUSH1 0x1f 00001657: NOT 00001658: PUSH1 0x1f 0000165a: DUP3 0000165b: ADD 0000165c: AND 0000165d: DUP3 0000165e: ADD 0000165f: DUP1 00001660: PUSH1 0x40 00001662: MSTORE 00001663: POP 00001664: DUP2 00001665: ADD 00001666: SWAP1 00001667: PUSH2 0x1670 0000166a: SWAP2 0000166b: SWAP1 0000166c: PUSH2 0x3d66 0000166f: JUMP 00001670: JUMPDEST 00001671: PUSH2 0x167a 00001674: DUP14 00001675: DUP8 00001676: PUSH2 0x3eab 00001679: JUMP 0000167a: JUMPDEST 0000167b: PUSH2 0x1684 0000167e: SWAP2 0000167f: SWAP1 00001680: PUSH2 0x3eab 00001683: JUMP 00001684: JUMPDEST 00001685: PUSH2 0x168e 00001688: SWAP2 00001689: SWAP1 0000168a: PUSH2 0x3ec2 0000168d: JUMP 0000168e: JUMPDEST 0000168f: SWAP1 00001690: POP 00001691: DUP11 00001692: DUP2 00001693: GT 00001694: DUP1 00001695: PUSH2 0x169c 00001698: JUMPI 00001699: POP 0000169a: DUP1 0000169b: ISZERO 0000169c: JUMPDEST 0000169d: ISZERO 0000169e: PUSH2 0x16d3 000016a1: JUMPI 000016a2: PUSH1 0x40 000016a4: MLOAD 000016a5: PUSH32 0xe7668eec00000000000000000000000000000000000000000000000000000000 000016c6: DUP2 000016c7: MSTORE 000016c8: PUSH1 0x04 000016ca: ADD 000016cb: PUSH1 0x40 000016cd: MLOAD 000016ce: DUP1 000016cf: SWAP2 000016d0: SUB 000016d1: SWAP1 000016d2: REVERT 000016d3: JUMPDEST 000016d4: PUSH1 0x0a 000016d6: SLOAD 000016d7: PUSH2 0x16ed 000016da: SWAP1 000016db: PUSH1 0x01 000016dd: PUSH1 0x01 000016df: PUSH1 0xa0 000016e1: SHL 000016e2: SUB 000016e3: DUP8 000016e4: DUP2 000016e5: AND 000016e6: SWAP2 000016e7: AND 000016e8: DUP4 000016e9: PUSH2 0x2ccb 000016ec: JUMP 000016ed: JUMPDEST 000016ee: PUSH2 0x170c 000016f1: DUP13 000016f2: PUSH2 0x16fb 000016f5: DUP4 000016f6: DUP15 000016f7: PUSH2 0x4464 000016fa: JUMP 000016fb: JUMPDEST 000016fc: PUSH1 0x01 000016fe: PUSH1 0x01 00001700: PUSH1 0xa0 00001702: SHL 00001703: SUB 00001704: DUP9 00001705: AND 00001706: SWAP2 00001707: SWAP1 00001708: PUSH2 0x2ccb 0000170b: JUMP 0000170c: JUMPDEST 0000170d: PUSH2 0x1716 00001710: DUP14 00001711: DUP13 00001712: PUSH2 0x2d4b 00001715: JUMP 00001716: JUMPDEST 00001717: POP 00001718: POP 00001719: POP 0000171a: POP 0000171b: POP 0000171c: SWAP6 0000171d: POP 0000171e: SWAP6 0000171f: POP 00001720: SWAP6 00001721: SWAP3 00001722: POP 00001723: POP 00001724: POP 00001725: JUMP 00001726: JUMPDEST 00001727: PUSH1 0x0c 00001729: SLOAD 0000172a: PUSH1 0x00 0000172c: SWAP1 0000172d: PUSH1 0xff 0000172f: AND 00001730: ISZERO 00001731: PUSH2 0x1744 00001734: JUMPI 00001735: POP 00001736: PUSH1 0x0b 00001738: SLOAD 00001739: PUSH1 0x01 0000173b: PUSH1 0x01 0000173d: PUSH1 0xa0 0000173f: SHL 00001740: SUB 00001741: AND 00001742: SWAP1 00001743: JUMP 00001744: JUMPDEST 00001745: PUSH1 0x40 00001747: MLOAD 00001748: PUSH32 0xa9d552b500000000000000000000000000000000000000000000000000000000 00001769: DUP2 0000176a: MSTORE 0000176b: PUSH1 0x04 0000176d: ADD 0000176e: PUSH1 0x40 00001770: MLOAD 00001771: DUP1 00001772: SWAP2 00001773: SUB 00001774: SWAP1 00001775: REVERT 00001776: JUMPDEST 00001777: PUSH1 0x0a 00001779: SLOAD 0000177a: PUSH1 0x01 0000177c: PUSH1 0x01 0000177e: PUSH1 0xa0 00001780: SHL 00001781: SUB 00001782: AND 00001783: CALLER 00001784: EQ 00001785: PUSH2 0x17a1 00001788: JUMPI 00001789: PUSH1 0x40 0000178b: MLOAD 0000178c: PUSH4 0x6edaef2f 00001791: PUSH1 0xe1 00001793: SHL 00001794: DUP2 00001795: MSTORE 00001796: PUSH1 0x04 00001798: ADD 00001799: PUSH1 0x40 0000179b: MLOAD 0000179c: DUP1 0000179d: SWAP2 0000179e: SUB 0000179f: SWAP1 000017a0: REVERT 000017a1: JUMPDEST 000017a2: PUSH1 0x12 000017a4: SLOAD 000017a5: PUSH1 0x01 000017a7: PUSH1 0x01 000017a9: PUSH1 0xa0 000017ab: SHL 000017ac: SUB 000017ad: AND 000017ae: DUP1 000017af: PUSH2 0x17e4 000017b2: JUMPI 000017b3: PUSH1 0x40 000017b5: MLOAD 000017b6: PUSH32 0xd741db9000000000000000000000000000000000000000000000000000000000 000017d7: DUP2 000017d8: MSTORE 000017d9: PUSH1 0x04 000017db: ADD 000017dc: PUSH1 0x40 000017de: MLOAD 000017df: DUP1 000017e0: SWAP2 000017e1: SUB 000017e2: SWAP1 000017e3: REVERT 000017e4: JUMPDEST 000017e5: PUSH1 0x40 000017e7: MLOAD 000017e8: PUSH32 0xbd86e50800000000000000000000000000000000000000000000000000000000 00001809: DUP2 0000180a: MSTORE 0000180b: PUSH1 0x04 0000180d: DUP2 0000180e: ADD 0000180f: DUP5 00001810: SWAP1 00001811: MSTORE 00001812: PUSH1 0x01 00001814: PUSH1 0x01 00001816: PUSH1 0xa0 00001818: SHL 00001819: SUB 0000181a: DUP4 0000181b: DUP2 0000181c: AND 0000181d: PUSH1 0x24 0000181f: DUP4 00001820: ADD 00001821: MSTORE 00001822: DUP3 00001823: AND 00001824: SWAP1 00001825: PUSH4 0xbd86e508 0000182a: SWAP1 0000182b: PUSH1 0x44 0000182d: ADD 0000182e: PUSH1 0x00 00001830: PUSH1 0x40 00001832: MLOAD 00001833: DUP1 00001834: DUP4 00001835: SUB 00001836: DUP2 00001837: PUSH1 0x00 00001839: DUP8 0000183a: DUP1 0000183b: EXTCODESIZE 0000183c: ISZERO 0000183d: DUP1 0000183e: ISZERO 0000183f: PUSH2 0x1847 00001842: JUMPI 00001843: PUSH1 0x00 00001845: DUP1 00001846: REVERT 00001847: JUMPDEST 00001848: POP 00001849: GAS 0000184a: CALL 0000184b: ISZERO 0000184c: DUP1 0000184d: ISZERO 0000184e: PUSH2 0x185b 00001851: JUMPI 00001852: RETURNDATASIZE 00001853: PUSH1 0x00 00001855: DUP1 00001856: RETURNDATACOPY 00001857: RETURNDATASIZE 00001858: PUSH1 0x00 0000185a: REVERT 0000185b: JUMPDEST 0000185c: POP 0000185d: POP 0000185e: PUSH1 0x40 00001860: DUP1 00001861: MLOAD 00001862: PUSH1 0x01 00001864: PUSH1 0x01 00001866: PUSH1 0xa0 00001868: SHL 00001869: SUB 0000186a: DUP6 0000186b: DUP2 0000186c: AND 0000186d: DUP3 0000186e: MSTORE 0000186f: PUSH1 0x20 00001871: DUP3 00001872: ADD 00001873: DUP9 00001874: SWAP1 00001875: MSTORE 00001876: DUP7 00001877: AND 00001878: DUP2 00001879: DUP4 0000187a: ADD 0000187b: MSTORE 0000187c: SWAP1 0000187d: MLOAD 0000187e: PUSH32 0xa8e9ed9d5a3dbe1d9fe6d227405bddc7076d509b3d1a7149862baa1d10ece892 0000189f: SWAP4 000018a0: POP 000018a1: SWAP1 000018a2: DUP2 000018a3: SWAP1 000018a4: SUB 000018a5: PUSH1 0x60 000018a7: ADD 000018a8: SWAP2 000018a9: POP 000018aa: LOG1 000018ab: POP 000018ac: POP 000018ad: POP 000018ae: JUMP 000018af: JUMPDEST 000018b0: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 000018d1: DUP1 000018d2: SLOAD 000018d3: PUSH1 0x01 000018d5: PUSH1 0x40 000018d7: SHL 000018d8: DUP2 000018d9: DIV 000018da: PUSH1 0xff 000018dc: AND 000018dd: ISZERO 000018de: SWAP1 000018df: PUSH8 0xffffffffffffffff 000018e8: AND 000018e9: PUSH1 0x00 000018eb: DUP2 000018ec: ISZERO 000018ed: DUP1 000018ee: ISZERO 000018ef: PUSH2 0x18f5 000018f2: JUMPI 000018f3: POP 000018f4: DUP3 000018f5: JUMPDEST 000018f6: SWAP1 000018f7: POP 000018f8: PUSH1 0x00 000018fa: DUP3 000018fb: PUSH8 0xffffffffffffffff 00001904: AND 00001905: PUSH1 0x01 00001907: EQ 00001908: DUP1 00001909: ISZERO 0000190a: PUSH2 0x1912 0000190d: JUMPI 0000190e: POP 0000190f: ADDRESS 00001910: EXTCODESIZE 00001911: ISZERO 00001912: JUMPDEST 00001913: SWAP1 00001914: POP 00001915: DUP2 00001916: ISZERO 00001917: DUP1 00001918: ISZERO 00001919: PUSH2 0x1920 0000191c: JUMPI 0000191d: POP 0000191e: DUP1 0000191f: ISZERO 00001920: JUMPDEST 00001921: ISZERO 00001922: PUSH2 0x193e 00001925: JUMPI 00001926: PUSH1 0x40 00001928: MLOAD 00001929: PUSH4 0xf92ee8a9 0000192e: PUSH1 0xe0 00001930: SHL 00001931: DUP2 00001932: MSTORE 00001933: PUSH1 0x04 00001935: ADD 00001936: PUSH1 0x40 00001938: MLOAD 00001939: DUP1 0000193a: SWAP2 0000193b: SUB 0000193c: SWAP1 0000193d: REVERT 0000193e: JUMPDEST 0000193f: DUP5 00001940: SLOAD 00001941: PUSH8 0xffffffffffffffff 0000194a: NOT 0000194b: AND 0000194c: PUSH1 0x01 0000194e: OR 0000194f: DUP6 00001950: SSTORE 00001951: DUP4 00001952: ISZERO 00001953: PUSH2 0x196d 00001956: JUMPI 00001957: DUP5 00001958: SLOAD 00001959: PUSH9 0xff0000000000000000 00001963: NOT 00001964: AND 00001965: PUSH1 0x01 00001967: PUSH1 0x40 00001969: SHL 0000196a: OR 0000196b: DUP6 0000196c: SSTORE 0000196d: JUMPDEST 0000196e: DUP7 0000196f: PUSH1 0x0e 00001971: PUSH2 0x197a 00001974: DUP3 00001975: DUP3 00001976: PUSH2 0x4477 00001979: JUMP 0000197a: JUMPDEST 0000197b: POP 0000197c: PUSH2 0x198b 0000197f: SWAP1 00001980: POP 00001981: PUSH2 0x0160 00001984: DUP9 00001985: ADD 00001986: DUP9 00001987: PUSH2 0x4689 0000198a: JUMP 0000198b: JUMPDEST 0000198c: PUSH2 0x1999 0000198f: SWAP1 00001990: PUSH1 0x20 00001992: DUP2 00001993: ADD 00001994: SWAP1 00001995: PUSH2 0x400f 00001998: JUMP 00001999: JUMPDEST 0000199a: PUSH1 0x08 0000199c: DUP1 0000199d: SLOAD 0000199e: PUSH1 0x01 000019a0: PUSH1 0x01 000019a2: PUSH1 0x80 000019a4: SHL 000019a5: SUB 000019a6: NOT 000019a7: AND 000019a8: PUSH1 0x01 000019aa: PUSH1 0x01 000019ac: PUSH1 0x80 000019ae: SHL 000019af: SUB 000019b0: SWAP3 000019b1: SWAP1 000019b2: SWAP3 000019b3: AND 000019b4: SWAP2 000019b5: SWAP1 000019b6: SWAP2 000019b7: OR 000019b8: SWAP1 000019b9: SSTORE 000019ba: PUSH2 0x19d2 000019bd: DUP12 000019be: DUP12 000019bf: DUP11 000019c0: PUSH2 0x19cc 000019c3: PUSH1 0x20 000019c5: DUP13 000019c6: ADD 000019c7: DUP13 000019c8: PUSH2 0x3b00 000019cb: JUMP 000019cc: JUMPDEST 000019cd: DUP11 000019ce: PUSH2 0x2a94 000019d1: JUMP 000019d2: JUMPDEST 000019d3: PUSH2 0x130f 000019d6: DUP10 000019d7: PUSH2 0x19e6 000019da: PUSH1 0xa0 000019dc: DUP11 000019dd: ADD 000019de: PUSH1 0x80 000019e0: DUP12 000019e1: ADD 000019e2: PUSH2 0x400f 000019e5: JUMP 000019e6: JUMPDEST 000019e7: PUSH1 0x01 000019e9: PUSH1 0x01 000019eb: PUSH1 0x80 000019ed: SHL 000019ee: SUB 000019ef: AND 000019f0: DUP14 000019f1: PUSH2 0x2d85 000019f4: JUMP 000019f5: JUMPDEST 000019f6: PUSH1 0x0a 000019f8: SLOAD 000019f9: PUSH1 0x01 000019fb: PUSH1 0x01 000019fd: PUSH1 0xa0 000019ff: SHL 00001a00: SUB 00001a01: AND 00001a02: CALLER 00001a03: EQ 00001a04: PUSH2 0x1a20 00001a07: JUMPI 00001a08: PUSH1 0x40 00001a0a: MLOAD 00001a0b: PUSH4 0x6edaef2f 00001a10: PUSH1 0xe1 00001a12: SHL 00001a13: DUP2 00001a14: MSTORE 00001a15: PUSH1 0x04 00001a17: ADD 00001a18: PUSH1 0x40 00001a1a: MLOAD 00001a1b: DUP1 00001a1c: SWAP2 00001a1d: SUB 00001a1e: SWAP1 00001a1f: REVERT 00001a20: JUMPDEST 00001a21: PUSH1 0x11 00001a23: SLOAD 00001a24: PUSH1 0x01 00001a26: PUSH1 0xe8 00001a28: SHL 00001a29: SWAP1 00001a2a: DIV 00001a2b: PUSH1 0xff 00001a2d: AND 00001a2e: PUSH2 0x1a63 00001a31: JUMPI 00001a32: PUSH1 0x40 00001a34: MLOAD 00001a35: PUSH32 0xb703ee6200000000000000000000000000000000000000000000000000000000 00001a56: DUP2 00001a57: MSTORE 00001a58: PUSH1 0x04 00001a5a: ADD 00001a5b: PUSH1 0x40 00001a5d: MLOAD 00001a5e: DUP1 00001a5f: SWAP2 00001a60: SUB 00001a61: SWAP1 00001a62: REVERT 00001a63: JUMPDEST 00001a64: PUSH1 0x0e 00001a66: SLOAD 00001a67: PUSH1 0x40 00001a69: MLOAD 00001a6a: PUSH32 0x5c19a95c00000000000000000000000000000000000000000000000000000000 00001a8b: DUP2 00001a8c: MSTORE 00001a8d: PUSH1 0x01 00001a8f: PUSH1 0x01 00001a91: PUSH1 0xa0 00001a93: SHL 00001a94: SUB 00001a95: DUP4 00001a96: DUP2 00001a97: AND 00001a98: PUSH1 0x04 00001a9a: DUP4 00001a9b: ADD 00001a9c: MSTORE 00001a9d: SWAP1 00001a9e: SWAP2 00001a9f: AND 00001aa0: SWAP1 00001aa1: PUSH4 0x5c19a95c 00001aa6: SWAP1 00001aa7: PUSH1 0x24 00001aa9: ADD 00001aaa: PUSH1 0x00 00001aac: PUSH1 0x40 00001aae: MLOAD 00001aaf: DUP1 00001ab0: DUP4 00001ab1: SUB 00001ab2: DUP2 00001ab3: PUSH1 0x00 00001ab5: DUP8 00001ab6: DUP1 00001ab7: EXTCODESIZE 00001ab8: ISZERO 00001ab9: DUP1 00001aba: ISZERO 00001abb: PUSH2 0x1ac3 00001abe: JUMPI 00001abf: PUSH1 0x00 00001ac1: DUP1 00001ac2: REVERT 00001ac3: JUMPDEST 00001ac4: POP 00001ac5: GAS 00001ac6: CALL 00001ac7: ISZERO 00001ac8: DUP1 00001ac9: ISZERO 00001aca: PUSH2 0x1ad7 00001acd: JUMPI 00001ace: RETURNDATASIZE 00001acf: PUSH1 0x00 00001ad1: DUP1 00001ad2: RETURNDATACOPY 00001ad3: RETURNDATASIZE 00001ad4: PUSH1 0x00 00001ad6: REVERT 00001ad7: JUMPDEST 00001ad8: POP 00001ad9: POP 00001ada: PUSH1 0x40 00001adc: MLOAD 00001add: PUSH1 0x01 00001adf: PUSH1 0x01 00001ae1: PUSH1 0xa0 00001ae3: SHL 00001ae4: SUB 00001ae5: DUP5 00001ae6: AND 00001ae7: DUP2 00001ae8: MSTORE 00001ae9: PUSH32 0x97272ae3625415c9e42454bb806ca07e49c86e720ecae7d9f22c54479e6a2e24 00001b0a: SWAP3 00001b0b: POP 00001b0c: PUSH1 0x20 00001b0e: ADD 00001b0f: SWAP1 00001b10: POP 00001b11: PUSH1 0x40 00001b13: MLOAD 00001b14: DUP1 00001b15: SWAP2 00001b16: SUB 00001b17: SWAP1 00001b18: LOG1 00001b19: POP 00001b1a: JUMP 00001b1b: JUMPDEST 00001b1c: PUSH1 0x09 00001b1e: SLOAD 00001b1f: PUSH1 0x00 00001b21: SWAP1 00001b22: DUP2 00001b23: SWAP1 00001b24: DUP2 00001b25: SWAP1 00001b26: PUSH1 0x01 00001b28: PUSH1 0x01 00001b2a: PUSH1 0xa0 00001b2c: SHL 00001b2d: SUB 00001b2e: AND 00001b2f: CALLER 00001b30: EQ 00001b31: PUSH2 0x1b4d 00001b34: JUMPI 00001b35: PUSH1 0x40 00001b37: MLOAD 00001b38: PUSH4 0x6edaef2f 00001b3d: PUSH1 0xe1 00001b3f: SHL 00001b40: DUP2 00001b41: MSTORE 00001b42: PUSH1 0x04 00001b44: ADD 00001b45: PUSH1 0x40 00001b47: MLOAD 00001b48: DUP1 00001b49: SWAP2 00001b4a: SUB 00001b4b: SWAP1 00001b4c: REVERT 00001b4d: JUMPDEST 00001b4e: PUSH1 0x0c 00001b50: SLOAD 00001b51: PUSH2 0x0100 00001b54: SWAP1 00001b55: DIV 00001b56: PUSH1 0xff 00001b58: AND 00001b59: PUSH2 0x1b75 00001b5c: JUMPI 00001b5d: PUSH1 0x40 00001b5f: MLOAD 00001b60: PUSH4 0x2f8268ed 00001b65: PUSH1 0xe0 00001b67: SHL 00001b68: DUP2 00001b69: MSTORE 00001b6a: PUSH1 0x04 00001b6c: ADD 00001b6d: PUSH1 0x40 00001b6f: MLOAD 00001b70: DUP1 00001b71: SWAP2 00001b72: SUB 00001b73: SWAP1 00001b74: REVERT 00001b75: JUMPDEST 00001b76: PUSH1 0x0e 00001b78: SLOAD 00001b79: PUSH1 0x01 00001b7b: PUSH1 0xa0 00001b7d: SHL 00001b7e: SWAP1 00001b7f: DIV 00001b80: PUSH6 0xffffffffffff 00001b87: AND 00001b88: TIMESTAMP 00001b89: GT 00001b8a: DUP1 00001b8b: PUSH2 0x1ba4 00001b8e: JUMPI 00001b8f: POP 00001b90: PUSH1 0x0f 00001b92: SLOAD 00001b93: PUSH1 0x01 00001b95: PUSH1 0xa0 00001b97: SHL 00001b98: SWAP1 00001b99: DIV 00001b9a: PUSH6 0xffffffffffff 00001ba1: AND 00001ba2: TIMESTAMP 00001ba3: LT 00001ba4: JUMPDEST 00001ba5: ISZERO 00001ba6: PUSH2 0x1bdb 00001ba9: JUMPI 00001baa: PUSH1 0x40 00001bac: MLOAD 00001bad: PUSH32 0x37a5533500000000000000000000000000000000000000000000000000000000 00001bce: DUP2 00001bcf: MSTORE 00001bd0: PUSH1 0x04 00001bd2: ADD 00001bd3: PUSH1 0x40 00001bd5: MLOAD 00001bd6: DUP1 00001bd7: SWAP2 00001bd8: SUB 00001bd9: SWAP1 00001bda: REVERT 00001bdb: JUMPDEST 00001bdc: PUSH1 0x01 00001bde: PUSH1 0x01 00001be0: PUSH1 0x80 00001be2: SHL 00001be3: SUB 00001be4: DUP5 00001be5: AND 00001be6: ISZERO 00001be7: DUP1 00001be8: PUSH2 0x1c4c 00001beb: JUMPI 00001bec: POP 00001bed: PUSH1 0x11 00001bef: SLOAD 00001bf0: PUSH1 0x10 00001bf2: SLOAD 00001bf3: PUSH2 0x1c0f 00001bf6: SWAP2 00001bf7: PUSH8 0xffffffffffffffff 00001c00: AND 00001c01: SWAP1 00001c02: PUSH1 0x01 00001c04: PUSH1 0x01 00001c06: PUSH1 0x80 00001c08: SHL 00001c09: SUB 00001c0a: AND 00001c0b: PUSH2 0x3eab 00001c0e: JUMP 00001c0f: JUMPDEST 00001c10: PUSH1 0x08 00001c12: SLOAD 00001c13: PUSH8 0x0de0b6b3a7640000 00001c1c: SWAP1 00001c1d: PUSH2 0x1c37 00001c20: SWAP1 00001c21: DUP8 00001c22: SWAP1 00001c23: PUSH1 0x01 00001c25: PUSH1 0x80 00001c27: SHL 00001c28: SWAP1 00001c29: DIV 00001c2a: PUSH1 0x01 00001c2c: PUSH1 0x01 00001c2e: PUSH1 0x80 00001c30: SHL 00001c31: SUB 00001c32: AND 00001c33: PUSH2 0x46a9 00001c36: JUMP 00001c37: JUMPDEST 00001c38: PUSH1 0x01 00001c3a: PUSH1 0x01 00001c3c: PUSH1 0x80 00001c3e: SHL 00001c3f: SUB 00001c40: AND 00001c41: PUSH2 0x1c4a 00001c44: SWAP2 00001c45: SWAP1 00001c46: PUSH2 0x3eab 00001c49: JUMP 00001c4a: JUMPDEST 00001c4b: GT 00001c4c: JUMPDEST 00001c4d: ISZERO 00001c4e: PUSH2 0x1c83 00001c51: JUMPI 00001c52: PUSH1 0x40 00001c54: MLOAD 00001c55: PUSH32 0x3894de6400000000000000000000000000000000000000000000000000000000 00001c76: DUP2 00001c77: MSTORE 00001c78: PUSH1 0x04 00001c7a: ADD 00001c7b: PUSH1 0x40 00001c7d: MLOAD 00001c7e: DUP1 00001c7f: SWAP2 00001c80: SUB 00001c81: SWAP1 00001c82: REVERT 00001c83: JUMPDEST 00001c84: PUSH1 0x0f 00001c86: SLOAD 00001c87: PUSH1 0x10 00001c89: SLOAD 00001c8a: PUSH1 0x0e 00001c8c: SLOAD 00001c8d: PUSH1 0x40 00001c8f: DUP1 00001c90: MLOAD 00001c91: PUSH4 0x313ce567 00001c96: PUSH1 0xe0 00001c98: SHL 00001c99: DUP2 00001c9a: MSTORE 00001c9b: SWAP1 00001c9c: MLOAD 00001c9d: PUSH1 0x01 00001c9f: PUSH1 0x01 00001ca1: PUSH1 0xa0 00001ca3: SHL 00001ca4: SUB 00001ca5: SWAP5 00001ca6: DUP6 00001ca7: AND 00001ca8: SWAP8 00001ca9: POP 00001caa: PUSH2 0x1d1d 00001cad: SWAP5 00001cae: PUSH1 0x01 00001cb0: PUSH1 0x01 00001cb2: PUSH1 0x80 00001cb4: SHL 00001cb5: SUB 00001cb6: PUSH1 0x01 00001cb8: PUSH1 0x80 00001cba: SHL 00001cbb: SWAP1 00001cbc: SWAP6 00001cbd: DIV 00001cbe: DUP6 00001cbf: AND 00001cc0: SWAP5 00001cc1: DUP11 00001cc2: AND 00001cc3: SWAP4 00001cc4: AND 00001cc5: SWAP2 00001cc6: PUSH4 0x313ce567 00001ccb: SWAP2 00001ccc: PUSH1 0x04 00001cce: DUP1 00001ccf: DUP4 00001cd0: ADD 00001cd1: SWAP3 00001cd2: PUSH1 0x20 00001cd4: SWAP3 00001cd5: SWAP2 00001cd6: SWAP1 00001cd7: DUP3 00001cd8: SWAP1 00001cd9: SUB 00001cda: ADD 00001cdb: DUP2 00001cdc: DUP7 00001cdd: GAS 00001cde: STATICCALL 00001cdf: ISZERO 00001ce0: DUP1 00001ce1: ISZERO 00001ce2: PUSH2 0x1cef 00001ce5: JUMPI 00001ce6: RETURNDATASIZE 00001ce7: PUSH1 0x00 00001ce9: DUP1 00001cea: RETURNDATACOPY 00001ceb: RETURNDATASIZE 00001cec: PUSH1 0x00 00001cee: REVERT 00001cef: JUMPDEST 00001cf0: POP 00001cf1: POP 00001cf2: POP 00001cf3: POP 00001cf4: PUSH1 0x40 00001cf6: MLOAD 00001cf7: RETURNDATASIZE 00001cf8: PUSH1 0x1f 00001cfa: NOT 00001cfb: PUSH1 0x1f 00001cfd: DUP3 00001cfe: ADD 00001cff: AND 00001d00: DUP3 00001d01: ADD 00001d02: DUP1 00001d03: PUSH1 0x40 00001d05: MSTORE 00001d06: POP 00001d07: DUP2 00001d08: ADD 00001d09: SWAP1 00001d0a: PUSH2 0x1d13 00001d0d: SWAP2 00001d0e: SWAP1 00001d0f: PUSH2 0x3d7f 00001d12: JUMP 00001d13: JUMPDEST 00001d14: PUSH1 0xff 00001d16: AND 00001d17: PUSH1 0x01 00001d19: PUSH2 0x2c6b 00001d1c: JUMP 00001d1d: JUMPDEST 00001d1e: PUSH1 0x0b 00001d20: SLOAD 00001d21: SWAP1 00001d22: SWAP3 00001d23: POP 00001d24: PUSH8 0x0de0b6b3a7640000 00001d2d: SWAP1 00001d2e: PUSH2 0x1d4c 00001d31: SWAP1 00001d32: PUSH1 0x01 00001d34: PUSH1 0xa0 00001d36: SHL 00001d37: SWAP1 00001d38: DIV 00001d39: PUSH12 0xffffffffffffffffffffffff 00001d46: AND 00001d47: DUP5 00001d48: PUSH2 0x3eab 00001d4b: JUMP 00001d4c: JUMPDEST 00001d4d: PUSH2 0x1d56 00001d50: SWAP2 00001d51: SWAP1 00001d52: PUSH2 0x3ec2 00001d55: JUMP 00001d56: JUMPDEST 00001d57: SWAP1 00001d58: POP 00001d59: DUP4 00001d5a: PUSH1 0x08 00001d5c: PUSH1 0x10 00001d5e: DUP3 00001d5f: DUP3 00001d60: DUP3 00001d61: SWAP1 00001d62: SLOAD 00001d63: SWAP1 00001d64: PUSH2 0x0100 00001d67: EXP 00001d68: SWAP1 00001d69: DIV 00001d6a: PUSH1 0x01 00001d6c: PUSH1 0x01 00001d6e: PUSH1 0x80 00001d70: SHL 00001d71: SUB 00001d72: AND 00001d73: PUSH2 0x1d7c 00001d76: SWAP2 00001d77: SWAP1 00001d78: PUSH2 0x46a9 00001d7b: JUMP 00001d7c: JUMPDEST 00001d7d: SWAP3 00001d7e: POP 00001d7f: PUSH2 0x0100 00001d82: EXP 00001d83: DUP2 00001d84: SLOAD 00001d85: DUP2 00001d86: PUSH1 0x01 00001d88: PUSH1 0x01 00001d8a: PUSH1 0x80 00001d8c: SHL 00001d8d: SUB 00001d8e: MUL 00001d8f: NOT 00001d90: AND 00001d91: SWAP1 00001d92: DUP4 00001d93: PUSH1 0x01 00001d95: PUSH1 0x01 00001d97: PUSH1 0x80 00001d99: SHL 00001d9a: SUB 00001d9b: AND 00001d9c: MUL 00001d9d: OR 00001d9e: SWAP1 00001d9f: SSTORE 00001da0: POP 00001da1: DUP4 00001da2: PUSH1 0x01 00001da4: PUSH1 0x01 00001da6: PUSH1 0x80 00001da8: SHL 00001da9: SUB 00001daa: AND 00001dab: PUSH1 0x0d 00001dad: PUSH1 0x00 00001daf: DUP9 00001db0: PUSH1 0x01 00001db2: PUSH1 0x01 00001db4: PUSH1 0xa0 00001db6: SHL 00001db7: SUB 00001db8: AND 00001db9: PUSH1 0x01 00001dbb: PUSH1 0x01 00001dbd: PUSH1 0xa0 00001dbf: SHL 00001dc0: SUB 00001dc1: AND 00001dc2: DUP2 00001dc3: MSTORE 00001dc4: PUSH1 0x20 00001dc6: ADD 00001dc7: SWAP1 00001dc8: DUP2 00001dc9: MSTORE 00001dca: PUSH1 0x20 00001dcc: ADD 00001dcd: PUSH1 0x00 00001dcf: KECCAK256 00001dd0: PUSH1 0x00 00001dd2: DUP3 00001dd3: DUP3 00001dd4: SLOAD 00001dd5: PUSH2 0x1dde 00001dd8: SWAP2 00001dd9: SWAP1 00001dda: PUSH2 0x3ee4 00001ddd: JUMP 00001dde: JUMPDEST 00001ddf: SWAP1 00001de0: SWAP2 00001de1: SSTORE 00001de2: POP 00001de3: PUSH2 0x1df7 00001de6: SWAP1 00001de7: POP 00001de8: DUP7 00001de9: PUSH1 0x01 00001deb: PUSH1 0x01 00001ded: PUSH1 0x80 00001def: SHL 00001df0: SUB 00001df1: DUP7 00001df2: AND 00001df3: PUSH2 0x2d4b 00001df6: JUMP 00001df7: JUMPDEST 00001df8: PUSH1 0x0e 00001dfa: SLOAD 00001dfb: PUSH2 0x1e17 00001dfe: SWAP1 00001dff: PUSH1 0x01 00001e01: PUSH1 0x01 00001e03: PUSH1 0xa0 00001e05: SHL 00001e06: SUB 00001e07: AND 00001e08: DUP7 00001e09: PUSH1 0x01 00001e0b: PUSH1 0x01 00001e0d: PUSH1 0x80 00001e0f: SHL 00001e10: SUB 00001e11: DUP8 00001e12: AND 00001e13: PUSH2 0x2ccb 00001e16: JUMP 00001e17: JUMPDEST 00001e18: SWAP4 00001e19: POP 00001e1a: SWAP4 00001e1b: POP 00001e1c: SWAP4 00001e1d: SWAP1 00001e1e: POP 00001e1f: JUMP 00001e20: JUMPDEST 00001e21: PUSH1 0x09 00001e23: SLOAD 00001e24: PUSH1 0x00 00001e26: SWAP1 00001e27: DUP2 00001e28: SWAP1 00001e29: PUSH1 0x01 00001e2b: PUSH1 0x01 00001e2d: PUSH1 0xa0 00001e2f: SHL 00001e30: SUB 00001e31: AND 00001e32: CALLER 00001e33: EQ 00001e34: PUSH2 0x1e50 00001e37: JUMPI 00001e38: PUSH1 0x40 00001e3a: MLOAD 00001e3b: PUSH4 0x6edaef2f 00001e40: PUSH1 0xe1 00001e42: SHL 00001e43: DUP2 00001e44: MSTORE 00001e45: PUSH1 0x04 00001e47: ADD 00001e48: PUSH1 0x40 00001e4a: MLOAD 00001e4b: DUP1 00001e4c: SWAP2 00001e4d: SUB 00001e4e: SWAP1 00001e4f: REVERT 00001e50: JUMPDEST 00001e51: PUSH1 0x0c 00001e53: SLOAD 00001e54: PUSH2 0x0100 00001e57: SWAP1 00001e58: DIV 00001e59: PUSH1 0xff 00001e5b: AND 00001e5c: PUSH2 0x1e78 00001e5f: JUMPI 00001e60: PUSH1 0x40 00001e62: MLOAD 00001e63: PUSH4 0x2f8268ed 00001e68: PUSH1 0xe0 00001e6a: SHL 00001e6b: DUP2 00001e6c: MSTORE 00001e6d: PUSH1 0x04 00001e6f: ADD 00001e70: PUSH1 0x40 00001e72: MLOAD 00001e73: DUP1 00001e74: SWAP2 00001e75: SUB 00001e76: SWAP1 00001e77: REVERT 00001e78: JUMPDEST 00001e79: PUSH1 0x0e 00001e7b: SLOAD 00001e7c: PUSH1 0x01 00001e7e: PUSH1 0xa0 00001e80: SHL 00001e81: SWAP1 00001e82: DIV 00001e83: PUSH6 0xffffffffffff 00001e8a: AND 00001e8b: TIMESTAMP 00001e8c: GT 00001e8d: ISZERO 00001e8e: PUSH2 0x1ec3 00001e91: JUMPI 00001e92: PUSH1 0x40 00001e94: MLOAD 00001e95: PUSH32 0x4aa1f71500000000000000000000000000000000000000000000000000000000 00001eb6: DUP2 00001eb7: MSTORE 00001eb8: PUSH1 0x04 00001eba: ADD 00001ebb: PUSH1 0x40 00001ebd: MLOAD 00001ebe: DUP1 00001ebf: SWAP2 00001ec0: SUB 00001ec1: SWAP1 00001ec2: REVERT 00001ec3: JUMPDEST 00001ec4: PUSH1 0x08 00001ec6: SLOAD 00001ec7: PUSH1 0x01 00001ec9: PUSH1 0x80 00001ecb: SHL 00001ecc: SWAP1 00001ecd: DIV 00001ece: PUSH1 0x01 00001ed0: PUSH1 0x01 00001ed2: PUSH1 0x80 00001ed4: SHL 00001ed5: SUB 00001ed6: AND 00001ed7: PUSH1 0x00 00001ed9: SUB 00001eda: PUSH2 0x1f0f 00001edd: JUMPI 00001ede: PUSH1 0x40 00001ee0: MLOAD 00001ee1: PUSH32 0xd32e7fc600000000000000000000000000000000000000000000000000000000 00001f02: DUP2 00001f03: MSTORE 00001f04: PUSH1 0x04 00001f06: ADD 00001f07: PUSH1 0x40 00001f09: MLOAD 00001f0a: DUP1 00001f0b: SWAP2 00001f0c: SUB 00001f0d: SWAP1 00001f0e: REVERT 00001f0f: JUMPDEST 00001f10: PUSH1 0x01 00001f12: PUSH1 0x01 00001f14: PUSH1 0x80 00001f16: SHL 00001f17: SUB 00001f18: DUP4 00001f19: AND 00001f1a: ISZERO 00001f1b: DUP1 00001f1c: PUSH2 0x1f45 00001f1f: JUMPI 00001f20: POP 00001f21: PUSH1 0x01 00001f23: PUSH1 0x01 00001f25: PUSH1 0xa0 00001f27: SHL 00001f28: SUB 00001f29: DUP6 00001f2a: AND 00001f2b: PUSH1 0x00 00001f2d: SWAP1 00001f2e: DUP2 00001f2f: MSTORE 00001f30: PUSH1 0x0d 00001f32: PUSH1 0x20 00001f34: MSTORE 00001f35: PUSH1 0x40 00001f37: SWAP1 00001f38: KECCAK256 00001f39: SLOAD 00001f3a: PUSH1 0x01 00001f3c: PUSH1 0x01 00001f3e: PUSH1 0x80 00001f40: SHL 00001f41: SUB 00001f42: DUP5 00001f43: AND 00001f44: GT 00001f45: JUMPDEST 00001f46: ISZERO 00001f47: PUSH2 0x1f7c 00001f4a: JUMPI 00001f4b: PUSH1 0x40 00001f4d: MLOAD 00001f4e: PUSH32 0x3d56fe3400000000000000000000000000000000000000000000000000000000 00001f6f: DUP2 00001f70: MSTORE 00001f71: PUSH1 0x04 00001f73: ADD 00001f74: PUSH1 0x40 00001f76: MLOAD 00001f77: DUP1 00001f78: SWAP2 00001f79: SUB 00001f7a: SWAP1 00001f7b: REVERT 00001f7c: JUMPDEST 00001f7d: PUSH1 0x0e 00001f7f: SLOAD 00001f80: PUSH1 0x10 00001f82: SLOAD 00001f83: PUSH1 0x40 00001f85: DUP1 00001f86: MLOAD 00001f87: PUSH4 0x313ce567 00001f8c: PUSH1 0xe0 00001f8e: SHL 00001f8f: DUP2 00001f90: MSTORE 00001f91: SWAP1 00001f92: MLOAD 00001f93: PUSH1 0x01 00001f95: PUSH1 0x01 00001f97: PUSH1 0xa0 00001f99: SHL 00001f9a: SUB 00001f9b: SWAP1 00001f9c: SWAP4 00001f9d: AND 00001f9e: SWAP5 00001f9f: POP 00001fa0: PUSH2 0x2014 00001fa3: SWAP3 00001fa4: PUSH1 0x01 00001fa6: PUSH1 0x01 00001fa8: PUSH1 0x80 00001faa: SHL 00001fab: SUB 00001fac: PUSH1 0x01 00001fae: PUSH1 0x80 00001fb0: SHL 00001fb1: SWAP1 00001fb2: SWAP4 00001fb3: DIV 00001fb4: DUP4 00001fb5: AND 00001fb6: SWAP3 00001fb7: DUP8 00001fb8: AND 00001fb9: SWAP2 00001fba: DUP7 00001fbb: SWAP2 00001fbc: PUSH4 0x313ce567 00001fc1: SWAP2 00001fc2: PUSH1 0x04 00001fc4: DUP1 00001fc5: DUP3 00001fc6: ADD 00001fc7: SWAP3 00001fc8: PUSH1 0x20 00001fca: SWAP3 00001fcb: SWAP1 00001fcc: SWAP2 00001fcd: SWAP1 00001fce: DUP3 00001fcf: SWAP1 00001fd0: SUB 00001fd1: ADD 00001fd2: DUP2 00001fd3: DUP7 00001fd4: GAS 00001fd5: STATICCALL 00001fd6: ISZERO 00001fd7: DUP1 00001fd8: ISZERO 00001fd9: PUSH2 0x1fe6 00001fdc: JUMPI 00001fdd: RETURNDATASIZE 00001fde: PUSH1 0x00 00001fe0: DUP1 00001fe1: RETURNDATACOPY 00001fe2: RETURNDATASIZE 00001fe3: PUSH1 0x00 00001fe5: REVERT 00001fe6: JUMPDEST 00001fe7: POP 00001fe8: POP 00001fe9: POP 00001fea: POP 00001feb: PUSH1 0x40 00001fed: MLOAD 00001fee: RETURNDATASIZE 00001fef: PUSH1 0x1f 00001ff1: NOT 00001ff2: PUSH1 0x1f 00001ff4: DUP3 00001ff5: ADD 00001ff6: AND 00001ff7: DUP3 00001ff8: ADD 00001ff9: DUP1 00001ffa: PUSH1 0x40 00001ffc: MSTORE 00001ffd: POP 00001ffe: DUP2 00001fff: ADD 00002000: SWAP1 00002001: PUSH2 0x200a 00002004: SWAP2 00002005: SWAP1 00002006: PUSH2 0x3d7f 00002009: JUMP 0000200a: JUMPDEST 0000200b: PUSH1 0xff 0000200d: AND 0000200e: PUSH1 0x00 00002010: PUSH2 0x2c6b 00002013: JUMP 00002014: JUMPDEST 00002015: PUSH1 0x08 00002017: DUP1 00002018: SLOAD 00002019: PUSH1 0x01 0000201b: PUSH1 0x01 0000201d: PUSH1 0x80 0000201f: SHL 00002020: SUB 00002021: PUSH1 0x01 00002023: PUSH1 0x80 00002025: SHL 00002026: DUP1 00002027: DUP4 00002028: DIV 00002029: DUP3 0000202a: AND 0000202b: DUP9 0000202c: SWAP1 0000202d: SUB 0000202e: DUP3 0000202f: AND 00002030: MUL 00002031: SWAP2 00002032: DUP2 00002033: AND 00002034: SWAP2 00002035: SWAP1 00002036: SWAP2 00002037: OR 00002038: SWAP1 00002039: SWAP2 0000203a: SSTORE 0000203b: PUSH1 0x01 0000203d: PUSH1 0x01 0000203f: PUSH1 0xa0 00002041: SHL 00002042: SUB 00002043: DUP8 00002044: AND 00002045: PUSH1 0x00 00002047: SWAP1 00002048: DUP2 00002049: MSTORE 0000204a: PUSH1 0x0d 0000204c: PUSH1 0x20 0000204e: MSTORE 0000204f: PUSH1 0x40 00002051: SWAP1 00002052: KECCAK256 00002053: DUP1 00002054: SLOAD 00002055: SWAP2 00002056: DUP7 00002057: AND 00002058: SWAP2 00002059: DUP3 0000205a: SWAP1 0000205b: SUB 0000205c: SWAP1 0000205d: SSTORE 0000205e: SWAP1 0000205f: SWAP2 00002060: POP 00002061: PUSH2 0x206b 00002064: SWAP1 00002065: DUP7 00002066: SWAP1 00002067: PUSH2 0x2dab 0000206a: JUMP 0000206b: JUMPDEST 0000206c: PUSH1 0x0f 0000206e: SLOAD 0000206f: PUSH2 0x0d06 00002072: SWAP1 00002073: PUSH1 0x01 00002075: PUSH1 0x01 00002077: PUSH1 0xa0 00002079: SHL 0000207a: SUB 0000207b: AND 0000207c: DUP6 0000207d: DUP4 0000207e: PUSH2 0x2ccb 00002081: JUMP 00002082: JUMPDEST 00002083: PUSH1 0x0a 00002085: SLOAD 00002086: PUSH1 0x01 00002088: PUSH1 0x01 0000208a: PUSH1 0xa0 0000208c: SHL 0000208d: SUB 0000208e: AND 0000208f: CALLER 00002090: DUP2 00002091: EQ 00002092: PUSH2 0x20ae 00002095: JUMPI 00002096: PUSH1 0x40 00002098: MLOAD 00002099: PUSH4 0x6edaef2f 0000209e: PUSH1 0xe1 000020a0: SHL 000020a1: DUP2 000020a2: MSTORE 000020a3: PUSH1 0x04 000020a5: ADD 000020a6: PUSH1 0x40 000020a8: MLOAD 000020a9: DUP1 000020aa: SWAP2 000020ab: SUB 000020ac: SWAP1 000020ad: REVERT 000020ae: JUMPDEST 000020af: CALLER 000020b0: PUSH1 0x00 000020b2: SWAP1 000020b3: DUP2 000020b4: MSTORE 000020b5: PUSH1 0x20 000020b7: DUP2 000020b8: SWAP1 000020b9: MSTORE 000020ba: PUSH1 0x40 000020bc: DUP2 000020bd: KECCAK256 000020be: SLOAD 000020bf: SWAP1 000020c0: DUP2 000020c1: SWAP1 000020c2: SUB 000020c3: PUSH2 0x20f8 000020c6: JUMPI 000020c7: PUSH1 0x40 000020c9: MLOAD 000020ca: PUSH32 0x9890af6000000000000000000000000000000000000000000000000000000000 000020eb: DUP2 000020ec: MSTORE 000020ed: PUSH1 0x04 000020ef: ADD 000020f0: PUSH1 0x40 000020f2: MLOAD 000020f3: DUP1 000020f4: SWAP2 000020f5: SUB 000020f6: SWAP1 000020f7: REVERT 000020f8: JUMPDEST 000020f9: PUSH1 0x0e 000020fb: SLOAD 000020fc: PUSH1 0x01 000020fe: PUSH1 0x01 00002100: PUSH1 0xa0 00002102: SHL 00002103: SUB 00002104: AND 00002105: PUSH2 0x210e 00002108: CALLER 00002109: DUP4 0000210a: PUSH2 0x2d4b 0000210d: JUMP 0000210e: JUMPDEST 0000210f: PUSH2 0x2122 00002112: PUSH1 0x01 00002114: PUSH1 0x01 00002116: PUSH1 0xa0 00002118: SHL 00002119: SUB 0000211a: DUP3 0000211b: AND 0000211c: DUP6 0000211d: DUP5 0000211e: PUSH2 0x2ccb 00002121: JUMP 00002122: JUMPDEST 00002123: PUSH1 0x40 00002125: DUP1 00002126: MLOAD 00002127: PUSH1 0x01 00002129: PUSH1 0x01 0000212b: PUSH1 0xa0 0000212d: SHL 0000212e: SUB 0000212f: DUP7 00002130: DUP2 00002131: AND 00002132: DUP3 00002133: MSTORE 00002134: DUP4 00002135: AND 00002136: PUSH1 0x20 00002138: DUP3 00002139: ADD 0000213a: MSTORE 0000213b: SWAP1 0000213c: DUP2 0000213d: ADD 0000213e: DUP4 0000213f: SWAP1 00002140: MSTORE 00002141: CALLER 00002142: SWAP1 00002143: PUSH32 0xee02732fab40ece8284c756220846dff4b8d32058b86b35b4f0459bf172fcef0 00002164: SWAP1 00002165: PUSH1 0x60 00002167: ADD 00002168: PUSH1 0x40 0000216a: MLOAD 0000216b: DUP1 0000216c: SWAP2 0000216d: SUB 0000216e: SWAP1 0000216f: LOG2 00002170: POP 00002171: POP 00002172: POP 00002173: POP 00002174: JUMP 00002175: JUMPDEST 00002176: PUSH1 0x60 00002178: PUSH1 0x07 0000217a: DUP1 0000217b: SLOAD 0000217c: PUSH2 0x07dd 0000217f: SWAP1 00002180: PUSH2 0x3cab 00002183: JUMP 00002184: JUMPDEST 00002185: PUSH1 0x40 00002187: DUP1 00002188: MLOAD 00002189: PUSH2 0x0180 0000218c: DUP2 0000218d: ADD 0000218e: DUP3 0000218f: MSTORE 00002190: PUSH1 0x00 00002192: DUP1 00002193: DUP3 00002194: MSTORE 00002195: PUSH1 0x20 00002197: DUP3 00002198: ADD 00002199: DUP2 0000219a: SWAP1 0000219b: MSTORE 0000219c: SWAP2 0000219d: DUP2 0000219e: ADD 0000219f: DUP3 000021a0: SWAP1 000021a1: MSTORE 000021a2: PUSH1 0x60 000021a4: DUP2 000021a5: ADD 000021a6: DUP3 000021a7: SWAP1 000021a8: MSTORE 000021a9: PUSH1 0x80 000021ab: DUP2 000021ac: ADD 000021ad: DUP3 000021ae: SWAP1 000021af: MSTORE 000021b0: PUSH1 0xa0 000021b2: DUP2 000021b3: ADD 000021b4: DUP3 000021b5: SWAP1 000021b6: MSTORE 000021b7: PUSH1 0xc0 000021b9: DUP2 000021ba: ADD 000021bb: DUP3 000021bc: SWAP1 000021bd: MSTORE 000021be: PUSH1 0xe0 000021c0: DUP2 000021c1: ADD 000021c2: DUP3 000021c3: SWAP1 000021c4: MSTORE 000021c5: PUSH2 0x0100 000021c8: DUP2 000021c9: ADD 000021ca: DUP3 000021cb: SWAP1 000021cc: MSTORE 000021cd: PUSH2 0x0120 000021d0: DUP2 000021d1: ADD 000021d2: DUP3 000021d3: SWAP1 000021d4: MSTORE 000021d5: PUSH2 0x0140 000021d8: DUP2 000021d9: ADD 000021da: DUP3 000021db: SWAP1 000021dc: MSTORE 000021dd: PUSH2 0x0160 000021e0: DUP2 000021e1: ADD 000021e2: SWAP2 000021e3: SWAP1 000021e4: SWAP2 000021e5: MSTORE 000021e6: PUSH1 0x09 000021e8: SLOAD 000021e9: PUSH1 0x00 000021eb: SWAP1 000021ec: PUSH1 0x01 000021ee: PUSH1 0x01 000021f0: PUSH1 0xa0 000021f2: SHL 000021f3: SUB 000021f4: AND 000021f5: CALLER 000021f6: DUP2 000021f7: EQ 000021f8: PUSH2 0x2214 000021fb: JUMPI 000021fc: PUSH1 0x40 000021fe: MLOAD 000021ff: PUSH4 0x6edaef2f 00002204: PUSH1 0xe1 00002206: SHL 00002207: DUP2 00002208: MSTORE 00002209: PUSH1 0x04 0000220b: ADD 0000220c: PUSH1 0x40 0000220e: MLOAD 0000220f: DUP1 00002210: SWAP2 00002211: SUB 00002212: SWAP1 00002213: REVERT 00002214: JUMPDEST 00002215: PUSH2 0x221f 00002218: DUP8 00002219: DUP7 0000221a: DUP7 0000221b: PUSH2 0x087a 0000221e: JUMP 0000221f: JUMPDEST 00002220: SWAP1 00002221: SWAP4 00002222: POP 00002223: SWAP2 00002224: POP 00002225: PUSH1 0x00 00002227: DUP4 00002228: MLOAD 00002229: PUSH1 0x05 0000222b: DUP2 0000222c: GT 0000222d: ISZERO 0000222e: PUSH2 0x2239 00002231: JUMPI 00002232: PUSH2 0x2239 00002235: PUSH2 0x3763 00002238: JUMP 00002239: JUMPDEST 0000223a: EQ 0000223b: PUSH2 0x2270 0000223e: JUMPI 0000223f: PUSH1 0x40 00002241: MLOAD 00002242: PUSH32 0xc6388ef700000000000000000000000000000000000000000000000000000000 00002263: DUP2 00002264: MSTORE 00002265: PUSH1 0x04 00002267: ADD 00002268: PUSH1 0x40 0000226a: MLOAD 0000226b: DUP1 0000226c: SWAP2 0000226d: SUB 0000226e: SWAP1 0000226f: REVERT 00002270: JUMPDEST 00002271: PUSH1 0x60 00002273: DUP4 00002274: ADD 00002275: MLOAD 00002276: PUSH1 0x10 00002278: DUP1 00002279: SLOAD 0000227a: PUSH1 0x01 0000227c: PUSH1 0x01 0000227e: PUSH1 0x80 00002280: SHL 00002281: SUB 00002282: SWAP3 00002283: DUP4 00002284: AND 00002285: PUSH1 0x01 00002287: PUSH1 0x80 00002289: SHL 0000228a: MUL 0000228b: SWAP1 0000228c: DUP4 0000228d: AND 0000228e: DUP2 0000228f: DUP2 00002290: OR 00002291: SWAP1 00002292: SWAP3 00002293: SSTORE 00002294: PUSH1 0x80 00002296: DUP7 00002297: ADD 00002298: MLOAD 00002299: PUSH1 0x0e 0000229b: DUP1 0000229c: SLOAD 0000229d: PUSH6 0xffffffffffff 000022a4: SWAP3 000022a5: DUP4 000022a6: AND 000022a7: PUSH1 0x01 000022a9: PUSH1 0xa0 000022ab: SHL 000022ac: SWAP1 000022ad: DUP2 000022ae: MUL 000022af: PUSH6 0xffffffffffff 000022b6: PUSH1 0xa0 000022b8: SHL 000022b9: NOT 000022ba: SWAP3 000022bb: DUP4 000022bc: AND 000022bd: OR 000022be: SWAP1 000022bf: SWAP3 000022c0: SSTORE 000022c1: PUSH1 0xa0 000022c3: DUP10 000022c4: ADD 000022c5: MLOAD 000022c6: PUSH1 0x0f 000022c8: DUP1 000022c9: SLOAD 000022ca: SWAP2 000022cb: SWAP1 000022cc: SWAP5 000022cd: AND 000022ce: SWAP1 000022cf: SWAP3 000022d0: MUL 000022d1: SWAP2 000022d2: AND 000022d3: OR 000022d4: SWAP1 000022d5: SSTORE 000022d6: PUSH1 0xc0 000022d8: DUP7 000022d9: ADD 000022da: MLOAD 000022db: PUSH1 0x08 000022dd: DUP1 000022de: SLOAD 000022df: SWAP2 000022e0: DUP6 000022e1: AND 000022e2: PUSH1 0x01 000022e4: PUSH1 0x01 000022e6: PUSH1 0x80 000022e8: SHL 000022e9: SUB 000022ea: NOT 000022eb: SWAP3 000022ec: SWAP1 000022ed: SWAP3 000022ee: AND 000022ef: SWAP2 000022f0: SWAP1 000022f1: SWAP2 000022f2: OR 000022f3: SWAP1 000022f4: SSTORE 000022f5: PUSH2 0x2303 000022f8: SWAP3 000022f9: DUP10 000022fa: SWAP3 000022fb: SWAP2 000022fc: AND 000022fd: OR 000022fe: DUP4 000022ff: PUSH2 0x2d85 00002302: JUMP 00002303: JUMPDEST 00002304: POP 00002305: SWAP5 00002306: POP 00002307: SWAP5 00002308: SWAP3 00002309: POP 0000230a: POP 0000230b: POP 0000230c: JUMP 0000230d: JUMPDEST 0000230e: PUSH1 0x00 00002310: PUSH2 0x2319 00002313: DUP4 00002314: DUP4 00002315: PUSH2 0x2de1 00002318: JUMP 00002319: JUMPDEST 0000231a: PUSH1 0x09 0000231c: SLOAD 0000231d: PUSH1 0x40 0000231f: MLOAD 00002320: PUSH4 0x536a4ee5 00002325: PUSH1 0xe1 00002327: SHL 00002328: DUP2 00002329: MSTORE 0000232a: CALLER 0000232b: PUSH1 0x04 0000232d: DUP3 0000232e: ADD 0000232f: MSTORE 00002330: PUSH1 0x01 00002332: PUSH1 0x01 00002334: PUSH1 0xa0 00002336: SHL 00002337: SUB 00002338: DUP7 00002339: DUP2 0000233a: AND 0000233b: PUSH1 0x24 0000233d: DUP4 0000233e: ADD 0000233f: MSTORE 00002340: PUSH1 0x44 00002342: DUP3 00002343: ADD 00002344: DUP7 00002345: SWAP1 00002346: MSTORE 00002347: SWAP3 00002348: SWAP4 00002349: POP 0000234a: SWAP2 0000234b: AND 0000234c: SWAP1 0000234d: PUSH4 0xa6d49dca 00002352: SWAP1 00002353: PUSH1 0x64 00002355: ADD 00002356: PUSH1 0x00 00002358: PUSH1 0x40 0000235a: MLOAD 0000235b: DUP1 0000235c: DUP4 0000235d: SUB 0000235e: DUP2 0000235f: PUSH1 0x00 00002361: DUP8 00002362: DUP1 00002363: EXTCODESIZE 00002364: ISZERO 00002365: DUP1 00002366: ISZERO 00002367: PUSH2 0x236f 0000236a: JUMPI 0000236b: PUSH1 0x00 0000236d: DUP1 0000236e: REVERT 0000236f: JUMPDEST 00002370: POP 00002371: GAS 00002372: CALL 00002373: ISZERO 00002374: DUP1 00002375: ISZERO 00002376: PUSH2 0x2383 00002379: JUMPI 0000237a: RETURNDATASIZE 0000237b: PUSH1 0x00 0000237d: DUP1 0000237e: RETURNDATACOPY 0000237f: RETURNDATASIZE 00002380: PUSH1 0x00 00002382: REVERT 00002383: JUMPDEST 00002384: POP 00002385: POP 00002386: POP 00002387: POP 00002388: SWAP3 00002389: SWAP2 0000238a: POP 0000238b: POP 0000238c: JUMP 0000238d: JUMPDEST 0000238e: PUSH1 0x09 00002390: SLOAD 00002391: PUSH1 0x01 00002393: PUSH1 0x01 00002395: PUSH1 0xa0 00002397: SHL 00002398: SUB 00002399: AND 0000239a: CALLER 0000239b: EQ 0000239c: DUP1 0000239d: ISZERO 0000239e: SWAP1 0000239f: PUSH2 0x23b3 000023a2: JUMPI 000023a3: POP 000023a4: PUSH1 0x0a 000023a6: SLOAD 000023a7: PUSH1 0x01 000023a9: PUSH1 0x01 000023ab: PUSH1 0xa0 000023ad: SHL 000023ae: SUB 000023af: AND 000023b0: CALLER 000023b1: EQ 000023b2: ISZERO 000023b3: JUMPDEST 000023b4: ISZERO 000023b5: PUSH2 0x23d1 000023b8: JUMPI 000023b9: PUSH1 0x40 000023bb: MLOAD 000023bc: PUSH4 0x6edaef2f 000023c1: PUSH1 0xe1 000023c3: SHL 000023c4: DUP2 000023c5: MSTORE 000023c6: PUSH1 0x04 000023c8: ADD 000023c9: PUSH1 0x40 000023cb: MLOAD 000023cc: DUP1 000023cd: SWAP2 000023ce: SUB 000023cf: SWAP1 000023d0: REVERT 000023d1: JUMPDEST 000023d2: PUSH1 0x0c 000023d4: SLOAD 000023d5: PUSH2 0x0100 000023d8: SWAP1 000023d9: DIV 000023da: PUSH1 0xff 000023dc: AND 000023dd: DUP1 000023de: ISZERO 000023df: PUSH2 0x23f9 000023e2: JUMPI 000023e3: POP 000023e4: PUSH1 0x0e 000023e6: SLOAD 000023e7: PUSH1 0x01 000023e9: PUSH1 0xa0 000023eb: SHL 000023ec: SWAP1 000023ed: DIV 000023ee: PUSH6 0xffffffffffff 000023f5: AND 000023f6: TIMESTAMP 000023f7: GT 000023f8: ISZERO 000023f9: JUMPDEST 000023fa: ISZERO 000023fb: PUSH2 0x2430 000023fe: JUMPI 000023ff: PUSH1 0x40 00002401: MLOAD 00002402: PUSH32 0x35411d8b00000000000000000000000000000000000000000000000000000000 00002423: DUP2 00002424: MSTORE 00002425: PUSH1 0x04 00002427: ADD 00002428: PUSH1 0x40 0000242a: MLOAD 0000242b: DUP1 0000242c: SWAP2 0000242d: SUB 0000242e: SWAP1 0000242f: REVERT 00002430: JUMPDEST 00002431: PUSH1 0x0c 00002433: SLOAD 00002434: PUSH2 0x0100 00002437: SWAP1 00002438: DIV 00002439: PUSH1 0xff 0000243b: AND 0000243c: PUSH2 0x2451 0000243f: JUMPI 00002440: PUSH1 0x0c 00002442: DUP1 00002443: SLOAD 00002444: PUSH3 0xff0000 00002448: NOT 00002449: AND 0000244a: PUSH3 0x010000 0000244e: OR 0000244f: SWAP1 00002450: SSTORE 00002451: JUMPDEST 00002452: PUSH2 0x2465 00002455: PUSH1 0x01 00002457: PUSH1 0x01 00002459: PUSH1 0xa0 0000245b: SHL 0000245c: SUB 0000245d: DUP4 0000245e: AND 0000245f: DUP5 00002460: DUP4 00002461: PUSH2 0x2ccb 00002464: JUMP 00002465: JUMPDEST 00002466: DUP2 00002467: PUSH1 0x01 00002469: PUSH1 0x01 0000246b: PUSH1 0xa0 0000246d: SHL 0000246e: SUB 0000246f: AND 00002470: DUP4 00002471: PUSH1 0x01 00002473: PUSH1 0x01 00002475: PUSH1 0xa0 00002477: SHL 00002478: SUB 00002479: AND 0000247a: CALLER 0000247b: PUSH1 0x01 0000247d: PUSH1 0x01 0000247f: PUSH1 0xa0 00002481: SHL 00002482: SUB 00002483: AND 00002484: PUSH32 0x3115d1449a7b732c986cba18244e897a450f61e1bb8d589cd2e69e6c8924f9f7 000024a5: DUP5 000024a6: PUSH1 0x40 000024a8: MLOAD 000024a9: PUSH2 0x24b4 000024ac: SWAP2 000024ad: DUP2 000024ae: MSTORE 000024af: PUSH1 0x20 000024b1: ADD 000024b2: SWAP1 000024b3: JUMP 000024b4: JUMPDEST 000024b5: PUSH1 0x40 000024b7: MLOAD 000024b8: DUP1 000024b9: SWAP2 000024ba: SUB 000024bb: SWAP1 000024bc: LOG4 000024bd: POP 000024be: POP 000024bf: POP 000024c0: JUMP 000024c1: JUMPDEST 000024c2: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 000024e3: DUP1 000024e4: SLOAD 000024e5: PUSH1 0x01 000024e7: PUSH1 0x40 000024e9: SHL 000024ea: DUP2 000024eb: DIV 000024ec: PUSH1 0xff 000024ee: AND 000024ef: ISZERO 000024f0: SWAP1 000024f1: PUSH8 0xffffffffffffffff 000024fa: AND 000024fb: PUSH1 0x00 000024fd: DUP2 000024fe: ISZERO 000024ff: DUP1 00002500: ISZERO 00002501: PUSH2 0x2507 00002504: JUMPI 00002505: POP 00002506: DUP3 00002507: JUMPDEST 00002508: SWAP1 00002509: POP 0000250a: PUSH1 0x00 0000250c: DUP3 0000250d: PUSH8 0xffffffffffffffff 00002516: AND 00002517: PUSH1 0x01 00002519: EQ 0000251a: DUP1 0000251b: ISZERO 0000251c: PUSH2 0x2524 0000251f: JUMPI 00002520: POP 00002521: ADDRESS 00002522: EXTCODESIZE 00002523: ISZERO 00002524: JUMPDEST 00002525: SWAP1 00002526: POP 00002527: DUP2 00002528: ISZERO 00002529: DUP1 0000252a: ISZERO 0000252b: PUSH2 0x2532 0000252e: JUMPI 0000252f: POP 00002530: DUP1 00002531: ISZERO 00002532: JUMPDEST 00002533: ISZERO 00002534: PUSH2 0x2550 00002537: JUMPI 00002538: PUSH1 0x40 0000253a: MLOAD 0000253b: PUSH4 0xf92ee8a9 00002540: PUSH1 0xe0 00002542: SHL 00002543: DUP2 00002544: MSTORE 00002545: PUSH1 0x04 00002547: ADD 00002548: PUSH1 0x40 0000254a: MLOAD 0000254b: DUP1 0000254c: SWAP2 0000254d: SUB 0000254e: SWAP1 0000254f: REVERT 00002550: JUMPDEST 00002551: DUP5 00002552: SLOAD 00002553: PUSH8 0xffffffffffffffff 0000255c: NOT 0000255d: AND 0000255e: PUSH1 0x01 00002560: OR 00002561: DUP6 00002562: SSTORE 00002563: DUP4 00002564: ISZERO 00002565: PUSH2 0x257f 00002568: JUMPI 00002569: DUP5 0000256a: SLOAD 0000256b: PUSH9 0xff0000000000000000 00002575: NOT 00002576: AND 00002577: PUSH1 0x01 00002579: PUSH1 0x40 0000257b: SHL 0000257c: OR 0000257d: DUP6 0000257e: SSTORE 0000257f: JUMPDEST 00002580: DUP7 00002581: PUSH1 0x0e 00002583: PUSH2 0x258c 00002586: DUP3 00002587: DUP3 00002588: PUSH2 0x4477 0000258b: JUMP 0000258c: JUMPDEST 0000258d: POP 0000258e: POP 0000258f: PUSH1 0x09 00002591: DUP1 00002592: SLOAD 00002593: PUSH1 0x01 00002595: PUSH1 0x01 00002597: PUSH1 0xa0 00002599: SHL 0000259a: SUB 0000259b: NOT 0000259c: SWAP1 0000259d: DUP2 0000259e: AND 0000259f: PUSH1 0x01 000025a1: PUSH1 0x01 000025a3: PUSH1 0xa0 000025a5: SHL 000025a6: SUB 000025a7: DUP15 000025a8: DUP2 000025a9: AND 000025aa: SWAP2 000025ab: SWAP1 000025ac: SWAP2 000025ad: OR 000025ae: SWAP1 000025af: SWAP3 000025b0: SSTORE 000025b1: PUSH1 0x0a 000025b3: DUP1 000025b4: SLOAD 000025b5: SWAP1 000025b6: SWAP2 000025b7: AND 000025b8: DUP13 000025b9: DUP4 000025ba: AND 000025bb: OR 000025bc: SWAP1 000025bd: SSTORE 000025be: PUSH1 0x0b 000025c0: DUP1 000025c1: SLOAD 000025c2: SWAP1 000025c3: SWAP2 000025c4: AND 000025c5: PUSH1 0x01 000025c7: PUSH1 0xa0 000025c9: SHL 000025ca: PUSH12 0xffffffffffffffffffffffff 000025d7: DUP12 000025d8: AND 000025d9: MUL 000025da: OR 000025db: SWAP1 000025dc: SSTORE 000025dd: PUSH2 0x25f0 000025e0: DUP10 000025e1: PUSH2 0x19e6 000025e4: PUSH1 0xa0 000025e6: DUP11 000025e7: ADD 000025e8: PUSH1 0x80 000025ea: DUP12 000025eb: ADD 000025ec: PUSH2 0x400f 000025ef: JUMP 000025f0: JUMPDEST 000025f1: PUSH2 0x130f 000025f4: PUSH2 0x25fd 000025f7: DUP8 000025f8: DUP1 000025f9: PUSH2 0x46c9 000025fc: JUMP 000025fd: JUMPDEST 000025fe: DUP1 000025ff: DUP1 00002600: PUSH1 0x1f 00002602: ADD 00002603: PUSH1 0x20 00002605: DUP1 00002606: SWAP2 00002607: DIV 00002608: MUL 00002609: PUSH1 0x20 0000260b: ADD 0000260c: PUSH1 0x40 0000260e: MLOAD 0000260f: SWAP1 00002610: DUP2 00002611: ADD 00002612: PUSH1 0x40 00002614: MSTORE 00002615: DUP1 00002616: SWAP4 00002617: SWAP3 00002618: SWAP2 00002619: SWAP1 0000261a: DUP2 0000261b: DUP2 0000261c: MSTORE 0000261d: PUSH1 0x20 0000261f: ADD 00002620: DUP4 00002621: DUP4 00002622: DUP1 00002623: DUP3 00002624: DUP5 00002625: CALLDATACOPY 00002626: PUSH1 0x00 00002628: SWAP3 00002629: ADD 0000262a: SWAP2 0000262b: SWAP1 0000262c: SWAP2 0000262d: MSTORE 0000262e: POP 0000262f: PUSH2 0x263f 00002632: SWAP3 00002633: POP 00002634: POP 00002635: POP 00002636: PUSH1 0x20 00002638: DUP10 00002639: ADD 0000263a: DUP10 0000263b: PUSH2 0x46c9 0000263e: JUMP 0000263f: JUMPDEST 00002640: DUP1 00002641: DUP1 00002642: PUSH1 0x1f 00002644: ADD 00002645: PUSH1 0x20 00002647: DUP1 00002648: SWAP2 00002649: DIV 0000264a: MUL 0000264b: PUSH1 0x20 0000264d: ADD 0000264e: PUSH1 0x40 00002650: MLOAD 00002651: SWAP1 00002652: DUP2 00002653: ADD 00002654: PUSH1 0x40 00002656: MSTORE 00002657: DUP1 00002658: SWAP4 00002659: SWAP3 0000265a: SWAP2 0000265b: SWAP1 0000265c: DUP2 0000265d: DUP2 0000265e: MSTORE 0000265f: PUSH1 0x20 00002661: ADD 00002662: DUP4 00002663: DUP4 00002664: DUP1 00002665: DUP3 00002666: DUP5 00002667: CALLDATACOPY 00002668: PUSH1 0x00 0000266a: SWAP3 0000266b: ADD 0000266c: SWAP2 0000266d: SWAP1 0000266e: SWAP2 0000266f: MSTORE 00002670: POP 00002671: PUSH2 0x2681 00002674: SWAP3 00002675: POP 00002676: POP 00002677: POP 00002678: PUSH1 0x20 0000267a: DUP12 0000267b: ADD 0000267c: DUP12 0000267d: PUSH2 0x3b00 00002680: JUMP 00002681: JUMPDEST 00002682: PUSH1 0x01 00002684: PUSH1 0x01 00002686: PUSH1 0xa0 00002688: SHL 00002689: SUB 0000268a: AND 0000268b: PUSH4 0x313ce567 00002690: PUSH1 0x40 00002692: MLOAD 00002693: DUP2 00002694: PUSH4 0xffffffff 00002699: AND 0000269a: PUSH1 0xe0 0000269c: SHL 0000269d: DUP2 0000269e: MSTORE 0000269f: PUSH1 0x04 000026a1: ADD 000026a2: PUSH1 0x20 000026a4: PUSH1 0x40 000026a6: MLOAD 000026a7: DUP1 000026a8: DUP4 000026a9: SUB 000026aa: DUP2 000026ab: DUP7 000026ac: GAS 000026ad: STATICCALL 000026ae: ISZERO 000026af: DUP1 000026b0: ISZERO 000026b1: PUSH2 0x26be 000026b4: JUMPI 000026b5: RETURNDATASIZE 000026b6: PUSH1 0x00 000026b8: DUP1 000026b9: RETURNDATACOPY 000026ba: RETURNDATASIZE 000026bb: PUSH1 0x00 000026bd: REVERT 000026be: JUMPDEST 000026bf: POP 000026c0: POP 000026c1: POP 000026c2: POP 000026c3: PUSH1 0x40 000026c5: MLOAD 000026c6: RETURNDATASIZE 000026c7: PUSH1 0x1f 000026c9: NOT 000026ca: PUSH1 0x1f 000026cc: DUP3 000026cd: ADD 000026ce: AND 000026cf: DUP3 000026d0: ADD 000026d1: DUP1 000026d2: PUSH1 0x40 000026d4: MSTORE 000026d5: POP 000026d6: DUP2 000026d7: ADD 000026d8: SWAP1 000026d9: PUSH2 0x26e2 000026dc: SWAP2 000026dd: SWAP1 000026de: PUSH2 0x3d7f 000026e1: JUMP 000026e2: JUMPDEST 000026e3: PUSH2 0x2def 000026e6: JUMP 000026e7: JUMPDEST 000026e8: PUSH1 0x13 000026ea: SLOAD 000026eb: PUSH1 0x14 000026ed: SLOAD 000026ee: PUSH1 0x00 000026f0: SWAP2 000026f1: PUSH4 0xffffffff 000026f6: PUSH1 0x01 000026f8: PUSH1 0xe0 000026fa: SHL 000026fb: SWAP1 000026fc: SWAP2 000026fd: DIV 000026fe: DUP2 000026ff: AND 00002700: SWAP2 00002701: AND 00002702: DUP3 00002703: TIMESTAMP 00002704: DUP4 00002705: GT 00002706: ISZERO 00002707: PUSH2 0x2725 0000270a: JUMPI 0000270b: POP 0000270c: PUSH1 0x14 0000270e: SLOAD 0000270f: PUSH5 0x0100000000 00002715: SWAP1 00002716: DIV 00002717: PUSH8 0xffffffffffffffff 00002720: AND 00002721: PUSH2 0x27ab 00002724: JUMP 00002725: JUMPDEST 00002726: PUSH2 0x272f 00002729: DUP3 0000272a: DUP5 0000272b: PUSH2 0x3ee4 0000272e: JUMP 0000272f: JUMPDEST 00002730: TIMESTAMP 00002731: LT 00002732: ISZERO 00002733: PUSH2 0x278c 00002736: JUMPI 00002737: PUSH1 0x14 00002739: SLOAD 0000273a: TIMESTAMP 0000273b: DUP5 0000273c: SWAP1 0000273d: SUB 0000273e: SWAP1 0000273f: PUSH8 0xffffffffffffffff 00002748: PUSH13 0x01000000000000000000000000 00002756: DUP3 00002757: DIV 00002758: DUP2 00002759: AND 0000275a: PUSH5 0x0100000000 00002760: SWAP1 00002761: SWAP3 00002762: DIV 00002763: AND 00002764: SWAP1 00002765: DUP2 00002766: SUB 00002767: SWAP1 00002768: PUSH1 0x00 0000276a: DUP6 0000276b: PUSH2 0x2774 0000276e: DUP6 0000276f: DUP6 00002770: PUSH2 0x3eab 00002773: JUMP 00002774: JUMPDEST 00002775: PUSH2 0x277e 00002778: SWAP2 00002779: SWAP1 0000277a: PUSH2 0x3ec2 0000277d: JUMP 0000277e: JUMPDEST 0000277f: SWAP1 00002780: SWAP2 00002781: SUB 00002782: SWAP4 00002783: POP 00002784: PUSH2 0x27ab 00002787: SWAP3 00002788: POP 00002789: POP 0000278a: POP 0000278b: JUMP 0000278c: JUMPDEST 0000278d: POP 0000278e: PUSH1 0x14 00002790: SLOAD 00002791: PUSH13 0x01000000000000000000000000 0000279f: SWAP1 000027a0: DIV 000027a1: PUSH8 0xffffffffffffffff 000027aa: AND 000027ab: JUMPDEST 000027ac: PUSH2 0x27b4 000027af: DUP2 000027b0: PUSH2 0x2e71 000027b3: JUMP 000027b4: JUMPDEST 000027b5: SWAP4 000027b6: POP 000027b7: POP 000027b8: POP 000027b9: POP 000027ba: SWAP1 000027bb: JUMP 000027bc: JUMPDEST 000027bd: PUSH1 0x0a 000027bf: SLOAD 000027c0: PUSH1 0x01 000027c2: PUSH1 0x01 000027c4: PUSH1 0xa0 000027c6: SHL 000027c7: SUB 000027c8: AND 000027c9: CALLER 000027ca: DUP2 000027cb: EQ 000027cc: PUSH2 0x27e8 000027cf: JUMPI 000027d0: PUSH1 0x40 000027d2: MLOAD 000027d3: PUSH4 0x6edaef2f 000027d8: PUSH1 0xe1 000027da: SHL 000027db: DUP2 000027dc: MSTORE 000027dd: PUSH1 0x04 000027df: ADD 000027e0: PUSH1 0x40 000027e2: MLOAD 000027e3: DUP1 000027e4: SWAP2 000027e5: SUB 000027e6: SWAP1 000027e7: REVERT 000027e8: JUMPDEST 000027e9: DUP2 000027ea: PUSH1 0x01 000027ec: PUSH1 0x01 000027ee: PUSH1 0xa0 000027f0: SHL 000027f1: SUB 000027f2: AND 000027f3: DUP2 000027f4: PUSH1 0x01 000027f6: PUSH1 0x01 000027f8: PUSH1 0xa0 000027fa: SHL 000027fb: SUB 000027fc: AND 000027fd: SUB 000027fe: PUSH2 0x2833 00002801: JUMPI 00002802: PUSH1 0x40 00002804: MLOAD 00002805: PUSH32 0xcf04b1bb00000000000000000000000000000000000000000000000000000000 00002826: DUP2 00002827: MSTORE 00002828: PUSH1 0x04 0000282a: ADD 0000282b: PUSH1 0x40 0000282d: MLOAD 0000282e: DUP1 0000282f: SWAP2 00002830: SUB 00002831: SWAP1 00002832: REVERT 00002833: JUMPDEST 00002834: PUSH1 0x0a 00002836: DUP1 00002837: SLOAD 00002838: PUSH1 0x01 0000283a: PUSH1 0x01 0000283c: PUSH1 0xa0 0000283e: SHL 0000283f: SUB 00002840: NOT 00002841: AND 00002842: PUSH1 0x01 00002844: PUSH1 0x01 00002846: PUSH1 0xa0 00002848: SHL 00002849: SUB 0000284a: DUP5 0000284b: DUP2 0000284c: AND 0000284d: SWAP2 0000284e: DUP3 0000284f: OR 00002850: SWAP1 00002851: SWAP3 00002852: SSTORE 00002853: PUSH1 0x09 00002855: SLOAD 00002856: PUSH1 0x40 00002858: MLOAD 00002859: PUSH32 0xc18abe0d00000000000000000000000000000000000000000000000000000000 0000287a: DUP2 0000287b: MSTORE 0000287c: DUP5 0000287d: DUP5 0000287e: AND 0000287f: PUSH1 0x04 00002881: DUP3 00002882: ADD 00002883: MSTORE 00002884: PUSH1 0x24 00002886: DUP2 00002887: ADD 00002888: SWAP3 00002889: SWAP1 0000288a: SWAP3 0000288b: MSTORE 0000288c: SWAP1 0000288d: SWAP2 0000288e: AND 0000288f: SWAP1 00002890: PUSH4 0xc18abe0d 00002895: SWAP1 00002896: PUSH1 0x44 00002898: ADD 00002899: PUSH1 0x00 0000289b: PUSH1 0x40 0000289d: MLOAD 0000289e: DUP1 0000289f: DUP4 000028a0: SUB 000028a1: DUP2 000028a2: PUSH1 0x00 000028a4: DUP8 000028a5: DUP1 000028a6: EXTCODESIZE 000028a7: ISZERO 000028a8: DUP1 000028a9: ISZERO 000028aa: PUSH2 0x28b2 000028ad: JUMPI 000028ae: PUSH1 0x00 000028b0: DUP1 000028b1: REVERT 000028b2: JUMPDEST 000028b3: POP 000028b4: GAS 000028b5: CALL 000028b6: ISZERO 000028b7: DUP1 000028b8: ISZERO 000028b9: PUSH2 0x28c6 000028bc: JUMPI 000028bd: RETURNDATASIZE 000028be: PUSH1 0x00 000028c0: DUP1 000028c1: RETURNDATACOPY 000028c2: RETURNDATASIZE 000028c3: PUSH1 0x00 000028c5: REVERT 000028c6: JUMPDEST 000028c7: POP 000028c8: POP 000028c9: PUSH1 0x40 000028cb: DUP1 000028cc: MLOAD 000028cd: PUSH1 0x01 000028cf: PUSH1 0x01 000028d1: PUSH1 0xa0 000028d3: SHL 000028d4: SUB 000028d5: DUP6 000028d6: DUP2 000028d7: AND 000028d8: DUP3 000028d9: MSTORE 000028da: DUP7 000028db: AND 000028dc: PUSH1 0x20 000028de: DUP3 000028df: ADD 000028e0: MSTORE 000028e1: CALLER 000028e2: SWAP4 000028e3: POP 000028e4: PUSH32 0x6954f1cdad46901994f29d9b1f78744c873c527bad04d294b4954cc8caf367da 00002905: SWAP3 00002906: POP 00002907: ADD 00002908: PUSH1 0x40 0000290a: MLOAD 0000290b: DUP1 0000290c: SWAP2 0000290d: SUB 0000290e: SWAP1 0000290f: LOG2 00002910: POP 00002911: POP 00002912: JUMP 00002913: JUMPDEST 00002914: PUSH2 0x2920 00002917: DUP4 00002918: DUP4 00002919: DUP4 0000291a: PUSH1 0x01 0000291c: PUSH2 0x2ea8 0000291f: JUMP 00002920: JUMPDEST 00002921: POP 00002922: POP 00002923: POP 00002924: JUMP 00002925: JUMPDEST 00002926: PUSH1 0x40 00002928: DUP1 00002929: MLOAD 0000292a: PUSH2 0x0180 0000292d: DUP2 0000292e: ADD 0000292f: DUP3 00002930: MSTORE 00002931: PUSH1 0x00 00002933: DUP1 00002934: DUP3 00002935: MSTORE 00002936: PUSH1 0x20 00002938: DUP3 00002939: ADD 0000293a: DUP2 0000293b: SWAP1 0000293c: MSTORE 0000293d: SWAP2 0000293e: DUP2 0000293f: ADD 00002940: DUP3 00002941: SWAP1 00002942: MSTORE 00002943: PUSH1 0x60 00002945: DUP2 00002946: ADD 00002947: DUP3 00002948: SWAP1 00002949: MSTORE 0000294a: PUSH1 0x80 0000294c: DUP2 0000294d: ADD 0000294e: DUP3 0000294f: SWAP1 00002950: MSTORE 00002951: PUSH1 0xa0 00002953: DUP2 00002954: ADD 00002955: DUP3 00002956: SWAP1 00002957: MSTORE 00002958: PUSH1 0xc0 0000295a: DUP2 0000295b: ADD 0000295c: DUP3 0000295d: SWAP1 0000295e: MSTORE 0000295f: PUSH1 0xe0 00002961: DUP2 00002962: ADD 00002963: DUP3 00002964: SWAP1 00002965: MSTORE 00002966: PUSH2 0x0100 00002969: DUP2 0000296a: ADD 0000296b: DUP3 0000296c: SWAP1 0000296d: MSTORE 0000296e: PUSH2 0x0120 00002971: DUP2 00002972: ADD 00002973: DUP3 00002974: SWAP1 00002975: MSTORE 00002976: PUSH2 0x0140 00002979: DUP2 0000297a: ADD 0000297b: DUP3 0000297c: SWAP1 0000297d: MSTORE 0000297e: PUSH2 0x0160 00002981: DUP2 00002982: ADD 00002983: SWAP2 00002984: SWAP1 00002985: SWAP2 00002986: MSTORE 00002987: PUSH1 0x40 00002989: MLOAD 0000298a: DUP1 0000298b: PUSH2 0x0180 0000298e: ADD 0000298f: PUSH1 0x40 00002991: MSTORE 00002992: DUP1 00002993: DUP4 00002994: PUSH1 0x05 00002996: DUP2 00002997: GT 00002998: ISZERO 00002999: PUSH2 0x29a4 0000299c: JUMPI 0000299d: PUSH2 0x29a4 000029a0: PUSH2 0x3763 000029a3: JUMP 000029a4: JUMPDEST 000029a5: DUP2 000029a6: MSTORE 000029a7: PUSH1 0x00 000029a9: PUSH1 0x20 000029ab: DUP3 000029ac: ADD 000029ad: DUP2 000029ae: SWAP1 000029af: MSTORE 000029b0: PUSH1 0x40 000029b2: DUP3 000029b3: ADD 000029b4: DUP2 000029b5: SWAP1 000029b6: MSTORE 000029b7: PUSH1 0x60 000029b9: DUP3 000029ba: ADD 000029bb: DUP2 000029bc: SWAP1 000029bd: MSTORE 000029be: PUSH1 0x80 000029c0: DUP3 000029c1: ADD 000029c2: DUP2 000029c3: SWAP1 000029c4: MSTORE 000029c5: PUSH1 0xa0 000029c7: DUP3 000029c8: ADD 000029c9: DUP2 000029ca: SWAP1 000029cb: MSTORE 000029cc: PUSH1 0xc0 000029ce: DUP3 000029cf: ADD 000029d0: DUP2 000029d1: SWAP1 000029d2: MSTORE 000029d3: PUSH1 0xe0 000029d5: DUP3 000029d6: ADD 000029d7: DUP2 000029d8: SWAP1 000029d9: MSTORE 000029da: PUSH2 0x0100 000029dd: DUP3 000029de: ADD 000029df: DUP2 000029e0: SWAP1 000029e1: MSTORE 000029e2: PUSH2 0x0120 000029e5: DUP3 000029e6: ADD 000029e7: DUP2 000029e8: SWAP1 000029e9: MSTORE 000029ea: PUSH2 0x0140 000029ed: DUP3 000029ee: ADD 000029ef: DUP2 000029f0: SWAP1 000029f1: MSTORE 000029f2: PUSH2 0x0160 000029f5: SWAP1 000029f6: SWAP2 000029f7: ADD 000029f8: MSTORE 000029f9: SWAP3 000029fa: SWAP2 000029fb: POP 000029fc: POP 000029fd: JUMP 000029fe: JUMPDEST 000029ff: PUSH1 0x00 00002a01: PUSH1 0x01 00002a03: PUSH1 0x01 00002a05: PUSH1 0x80 00002a07: SHL 00002a08: SUB 00002a09: DUP3 00002a0a: GT 00002a0b: ISZERO 00002a0c: PUSH2 0x2a37 00002a0f: JUMPI 00002a10: PUSH1 0x40 00002a12: MLOAD 00002a13: PUSH4 0x06dfcc65 00002a18: PUSH1 0xe4 00002a1a: SHL 00002a1b: DUP2 00002a1c: MSTORE 00002a1d: PUSH1 0x80 00002a1f: PUSH1 0x04 00002a21: DUP3 00002a22: ADD 00002a23: MSTORE 00002a24: PUSH1 0x24 00002a26: DUP2 00002a27: ADD 00002a28: DUP4 00002a29: SWAP1 00002a2a: MSTORE 00002a2b: PUSH1 0x44 00002a2d: ADD 00002a2e: JUMPDEST 00002a2f: PUSH1 0x40 00002a31: MLOAD 00002a32: DUP1 00002a33: SWAP2 00002a34: SUB 00002a35: SWAP1 00002a36: REVERT 00002a37: JUMPDEST 00002a38: POP 00002a39: SWAP1 00002a3a: JUMP 00002a3b: JUMPDEST 00002a3c: PUSH1 0x00 00002a3e: PUSH6 0xffffffffffff 00002a45: DUP3 00002a46: GT 00002a47: ISZERO 00002a48: PUSH2 0x2a37 00002a4b: JUMPI 00002a4c: PUSH1 0x40 00002a4e: MLOAD 00002a4f: PUSH4 0x06dfcc65 00002a54: PUSH1 0xe4 00002a56: SHL 00002a57: DUP2 00002a58: MSTORE 00002a59: PUSH1 0x30 00002a5b: PUSH1 0x04 00002a5d: DUP3 00002a5e: ADD 00002a5f: MSTORE 00002a60: PUSH1 0x24 00002a62: DUP2 00002a63: ADD 00002a64: DUP4 00002a65: SWAP1 00002a66: MSTORE 00002a67: PUSH1 0x44 00002a69: ADD 00002a6a: PUSH2 0x2a2e 00002a6d: JUMP 00002a6e: JUMPDEST 00002a6f: PUSH1 0x00 00002a71: CALLER 00002a72: PUSH2 0x2a7c 00002a75: DUP6 00002a76: DUP3 00002a77: DUP6 00002a78: PUSH2 0x2fb0 00002a7b: JUMP 00002a7c: JUMPDEST 00002a7d: PUSH2 0x2a87 00002a80: DUP6 00002a81: DUP6 00002a82: DUP6 00002a83: PUSH2 0x3041 00002a86: JUMP 00002a87: JUMPDEST 00002a88: PUSH1 0x01 00002a8a: SWAP2 00002a8b: POP 00002a8c: POP 00002a8d: JUMPDEST 00002a8e: SWAP4 00002a8f: SWAP3 00002a90: POP 00002a91: POP 00002a92: POP 00002a93: JUMP 00002a94: JUMPDEST 00002a95: PUSH1 0x09 00002a97: DUP1 00002a98: SLOAD 00002a99: PUSH1 0x01 00002a9b: PUSH1 0x01 00002a9d: PUSH1 0xa0 00002a9f: SHL 00002aa0: SUB 00002aa1: DUP1 00002aa2: DUP9 00002aa3: AND 00002aa4: PUSH1 0x01 00002aa6: PUSH1 0x01 00002aa8: PUSH1 0xa0 00002aaa: SHL 00002aab: SUB 00002aac: NOT 00002aad: SWAP3 00002aae: DUP4 00002aaf: AND 00002ab0: OR 00002ab1: SWAP1 00002ab2: SWAP3 00002ab3: SSTORE 00002ab4: PUSH1 0x0a 00002ab6: DUP1 00002ab7: SLOAD 00002ab8: DUP8 00002ab9: DUP5 00002aba: AND 00002abb: SWAP3 00002abc: AND 00002abd: SWAP2 00002abe: SWAP1 00002abf: SWAP2 00002ac0: OR 00002ac1: SWAP1 00002ac2: SSTORE 00002ac3: PUSH1 0x0b 00002ac5: DUP1 00002ac6: SLOAD 00002ac7: PUSH12 0xffffffffffffffffffffffff 00002ad4: DUP7 00002ad5: AND 00002ad6: PUSH1 0x01 00002ad8: PUSH1 0xa0 00002ada: SHL 00002adb: MUL 00002adc: SWAP1 00002add: DUP4 00002ade: AND 00002adf: OR 00002ae0: SWAP1 00002ae1: SSTORE 00002ae2: PUSH1 0x40 00002ae4: DUP1 00002ae5: MLOAD 00002ae6: PUSH32 0x06fdde0300000000000000000000000000000000000000000000000000000000 00002b07: DUP2 00002b08: MSTORE 00002b09: SWAP1 00002b0a: MLOAD 00002b0b: PUSH1 0x00 00002b0d: SWAP3 00002b0e: DUP6 00002b0f: AND 00002b10: SWAP2 00002b11: PUSH4 0x06fdde03 00002b16: SWAP2 00002b17: PUSH1 0x04 00002b19: DUP1 00002b1a: DUP4 00002b1b: ADD 00002b1c: SWAP3 00002b1d: DUP7 00002b1e: SWAP3 00002b1f: SWAP2 00002b20: SWAP1 00002b21: DUP3 00002b22: SWAP1 00002b23: SUB 00002b24: ADD 00002b25: DUP2 00002b26: DUP7 00002b27: GAS 00002b28: STATICCALL 00002b29: ISZERO 00002b2a: DUP1 00002b2b: ISZERO 00002b2c: PUSH2 0x2b39 00002b2f: JUMPI 00002b30: RETURNDATASIZE 00002b31: PUSH1 0x00 00002b33: DUP1 00002b34: RETURNDATACOPY 00002b35: RETURNDATASIZE 00002b36: PUSH1 0x00 00002b38: REVERT 00002b39: JUMPDEST 00002b3a: POP 00002b3b: POP 00002b3c: POP 00002b3d: POP 00002b3e: PUSH1 0x40 00002b40: MLOAD 00002b41: RETURNDATASIZE 00002b42: PUSH1 0x00 00002b44: DUP3 00002b45: RETURNDATACOPY 00002b46: PUSH1 0x1f 00002b48: RETURNDATASIZE 00002b49: SWAP1 00002b4a: DUP2 00002b4b: ADD 00002b4c: PUSH1 0x1f 00002b4e: NOT 00002b4f: AND 00002b50: DUP3 00002b51: ADD 00002b52: PUSH1 0x40 00002b54: MSTORE 00002b55: PUSH2 0x2b61 00002b58: SWAP2 00002b59: SWAP1 00002b5a: DUP2 00002b5b: ADD 00002b5c: SWAP1 00002b5d: PUSH2 0x4717 00002b60: JUMP 00002b61: JUMPDEST 00002b62: SWAP1 00002b63: POP 00002b64: PUSH1 0x00 00002b66: DUP4 00002b67: PUSH1 0x01 00002b69: PUSH1 0x01 00002b6b: PUSH1 0xa0 00002b6d: SHL 00002b6e: SUB 00002b6f: AND 00002b70: PUSH4 0x95d89b41 00002b75: PUSH1 0x40 00002b77: MLOAD 00002b78: DUP2 00002b79: PUSH4 0xffffffff 00002b7e: AND 00002b7f: PUSH1 0xe0 00002b81: SHL 00002b82: DUP2 00002b83: MSTORE 00002b84: PUSH1 0x04 00002b86: ADD 00002b87: PUSH1 0x00 00002b89: PUSH1 0x40 00002b8b: MLOAD 00002b8c: DUP1 00002b8d: DUP4 00002b8e: SUB 00002b8f: DUP2 00002b90: DUP7 00002b91: GAS 00002b92: STATICCALL 00002b93: ISZERO 00002b94: DUP1 00002b95: ISZERO 00002b96: PUSH2 0x2ba3 00002b99: JUMPI 00002b9a: RETURNDATASIZE 00002b9b: PUSH1 0x00 00002b9d: DUP1 00002b9e: RETURNDATACOPY 00002b9f: RETURNDATASIZE 00002ba0: PUSH1 0x00 00002ba2: REVERT 00002ba3: JUMPDEST 00002ba4: POP 00002ba5: POP 00002ba6: POP 00002ba7: POP 00002ba8: PUSH1 0x40 00002baa: MLOAD 00002bab: RETURNDATASIZE 00002bac: PUSH1 0x00 00002bae: DUP3 00002baf: RETURNDATACOPY 00002bb0: PUSH1 0x1f 00002bb2: RETURNDATASIZE 00002bb3: SWAP1 00002bb4: DUP2 00002bb5: ADD 00002bb6: PUSH1 0x1f 00002bb8: NOT 00002bb9: AND 00002bba: DUP3 00002bbb: ADD 00002bbc: PUSH1 0x40 00002bbe: MSTORE 00002bbf: PUSH2 0x2bcb 00002bc2: SWAP2 00002bc3: SWAP1 00002bc4: DUP2 00002bc5: ADD 00002bc6: SWAP1 00002bc7: PUSH2 0x4717 00002bca: JUMP 00002bcb: JUMPDEST 00002bcc: SWAP1 00002bcd: POP 00002bce: PUSH2 0x2c62 00002bd1: DUP3 00002bd2: PUSH2 0x2bda 00002bd5: DUP6 00002bd6: PUSH2 0x30a0 00002bd9: JUMP 00002bda: JUMPDEST 00002bdb: PUSH1 0x40 00002bdd: MLOAD 00002bde: PUSH1 0x20 00002be0: ADD 00002be1: PUSH2 0x2beb 00002be4: SWAP3 00002be5: SWAP2 00002be6: SWAP1 00002be7: PUSH2 0x478e 00002bea: JUMP 00002beb: JUMPDEST 00002bec: PUSH1 0x40 00002bee: MLOAD 00002bef: PUSH1 0x20 00002bf1: DUP2 00002bf2: DUP4 00002bf3: SUB 00002bf4: SUB 00002bf5: DUP2 00002bf6: MSTORE 00002bf7: SWAP1 00002bf8: PUSH1 0x40 00002bfa: MSTORE 00002bfb: DUP3 00002bfc: PUSH2 0x2c04 00002bff: DUP7 00002c00: PUSH2 0x30a0 00002c03: JUMP 00002c04: JUMPDEST 00002c05: PUSH1 0x40 00002c07: MLOAD 00002c08: PUSH1 0x20 00002c0a: ADD 00002c0b: PUSH2 0x2c15 00002c0e: SWAP3 00002c0f: SWAP2 00002c10: SWAP1 00002c11: PUSH2 0x478e 00002c14: JUMP 00002c15: JUMPDEST 00002c16: PUSH1 0x40 00002c18: MLOAD 00002c19: PUSH1 0x20 00002c1b: DUP2 00002c1c: DUP4 00002c1d: SUB 00002c1e: SUB 00002c1f: DUP2 00002c20: MSTORE 00002c21: SWAP1 00002c22: PUSH1 0x40 00002c24: MSTORE 00002c25: DUP7 00002c26: PUSH1 0x01 00002c28: PUSH1 0x01 00002c2a: PUSH1 0xa0 00002c2c: SHL 00002c2d: SUB 00002c2e: AND 00002c2f: PUSH4 0x313ce567 00002c34: PUSH1 0x40 00002c36: MLOAD 00002c37: DUP2 00002c38: PUSH4 0xffffffff 00002c3d: AND 00002c3e: PUSH1 0xe0 00002c40: SHL 00002c41: DUP2 00002c42: MSTORE 00002c43: PUSH1 0x04 00002c45: ADD 00002c46: PUSH1 0x20 00002c48: PUSH1 0x40 00002c4a: MLOAD 00002c4b: DUP1 00002c4c: DUP4 00002c4d: SUB 00002c4e: DUP2 00002c4f: DUP7 00002c50: GAS 00002c51: STATICCALL 00002c52: ISZERO 00002c53: DUP1 00002c54: ISZERO 00002c55: PUSH2 0x26be 00002c58: JUMPI 00002c59: RETURNDATASIZE 00002c5a: PUSH1 0x00 00002c5c: DUP1 00002c5d: RETURNDATACOPY 00002c5e: RETURNDATASIZE 00002c5f: PUSH1 0x00 00002c61: REVERT 00002c62: JUMPDEST 00002c63: POP 00002c64: POP 00002c65: POP 00002c66: POP 00002c67: POP 00002c68: POP 00002c69: POP 00002c6a: JUMP 00002c6b: JUMPDEST 00002c6c: PUSH1 0x00 00002c6e: DUP1 00002c6f: PUSH2 0x2c78 00002c72: DUP6 00002c73: DUP8 00002c74: PUSH2 0x3eab 00002c77: JUMP 00002c78: JUMPDEST 00002c79: SWAP1 00002c7a: POP 00002c7b: PUSH1 0x00 00002c7d: PUSH2 0x2c87 00002c80: DUP6 00002c81: PUSH1 0x0a 00002c83: PUSH2 0x4458 00002c86: JUMP 00002c87: JUMPDEST 00002c88: SWAP1 00002c89: POP 00002c8a: DUP4 00002c8b: ISZERO 00002c8c: PUSH2 0x2cb9 00002c8f: JUMPI 00002c90: DUP1 00002c91: PUSH2 0x2c9b 00002c94: PUSH1 0x01 00002c96: DUP5 00002c97: PUSH2 0x4464 00002c9a: JUMP 00002c9b: JUMPDEST 00002c9c: PUSH2 0x2ca5 00002c9f: SWAP2 00002ca0: SWAP1 00002ca1: PUSH2 0x3ec2 00002ca4: JUMP 00002ca5: JUMPDEST 00002ca6: PUSH2 0x2cb0 00002ca9: SWAP1 00002caa: PUSH1 0x01 00002cac: PUSH2 0x3ee4 00002caf: JUMP 00002cb0: JUMPDEST 00002cb1: SWAP3 00002cb2: POP 00002cb3: POP 00002cb4: POP 00002cb5: PUSH2 0x2cc3 00002cb8: JUMP 00002cb9: JUMPDEST 00002cba: PUSH2 0x2cb0 00002cbd: DUP2 00002cbe: DUP4 00002cbf: PUSH2 0x3ec2 00002cc2: JUMP 00002cc3: JUMPDEST 00002cc4: SWAP5 00002cc5: SWAP4 00002cc6: POP 00002cc7: POP 00002cc8: POP 00002cc9: POP 00002cca: JUMP 00002ccb: JUMPDEST 00002ccc: PUSH1 0x40 00002cce: DUP1 00002ccf: MLOAD 00002cd0: PUSH1 0x01 00002cd2: PUSH1 0x01 00002cd4: PUSH1 0xa0 00002cd6: SHL 00002cd7: SUB 00002cd8: DUP5 00002cd9: AND 00002cda: PUSH1 0x24 00002cdc: DUP3 00002cdd: ADD 00002cde: MSTORE 00002cdf: PUSH1 0x44 00002ce1: DUP1 00002ce2: DUP3 00002ce3: ADD 00002ce4: DUP5 00002ce5: SWAP1 00002ce6: MSTORE 00002ce7: DUP3 00002ce8: MLOAD 00002ce9: DUP1 00002cea: DUP4 00002ceb: SUB 00002cec: SWAP1 00002ced: SWAP2 00002cee: ADD 00002cef: DUP2 00002cf0: MSTORE 00002cf1: PUSH1 0x64 00002cf3: SWAP1 00002cf4: SWAP2 00002cf5: ADD 00002cf6: SWAP1 00002cf7: SWAP2 00002cf8: MSTORE 00002cf9: PUSH1 0x20 00002cfb: DUP2 00002cfc: ADD 00002cfd: DUP1 00002cfe: MLOAD 00002cff: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00002d1c: AND 00002d1d: PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000 00002d3e: OR 00002d3f: SWAP1 00002d40: MSTORE 00002d41: PUSH2 0x2920 00002d44: SWAP1 00002d45: DUP5 00002d46: SWAP1 00002d47: PUSH2 0x3140 00002d4a: JUMP 00002d4b: JUMPDEST 00002d4c: PUSH1 0x01 00002d4e: PUSH1 0x01 00002d50: PUSH1 0xa0 00002d52: SHL 00002d53: SUB 00002d54: DUP3 00002d55: AND 00002d56: PUSH2 0x2d75 00002d59: JUMPI 00002d5a: PUSH1 0x40 00002d5c: MLOAD 00002d5d: PUSH4 0x4b637e8f 00002d62: PUSH1 0xe1 00002d64: SHL 00002d65: DUP2 00002d66: MSTORE 00002d67: PUSH1 0x00 00002d69: PUSH1 0x04 00002d6b: DUP3 00002d6c: ADD 00002d6d: MSTORE 00002d6e: PUSH1 0x24 00002d70: ADD 00002d71: PUSH2 0x2a2e 00002d74: JUMP 00002d75: JUMPDEST 00002d76: PUSH2 0x2d81 00002d79: DUP3 00002d7a: PUSH1 0x00 00002d7c: DUP4 00002d7d: PUSH2 0x31bc 00002d80: JUMP 00002d81: JUMPDEST 00002d82: POP 00002d83: POP 00002d84: JUMP 00002d85: JUMPDEST 00002d86: PUSH1 0x0c 00002d88: DUP1 00002d89: SLOAD 00002d8a: PUSH2 0xff00 00002d8d: NOT 00002d8e: AND 00002d8f: PUSH2 0x0100 00002d92: OR 00002d93: SWAP1 00002d94: SSTORE 00002d95: PUSH2 0x2d9e 00002d98: DUP4 00002d99: DUP4 00002d9a: PUSH2 0x2dab 00002d9d: JUMP 00002d9e: JUMPDEST 00002d9f: PUSH2 0x2920 00002da2: DUP4 00002da3: DUP3 00002da4: PUSH1 0x00 00002da6: NOT 00002da7: PUSH2 0x2913 00002daa: JUMP 00002dab: JUMPDEST 00002dac: PUSH1 0x01 00002dae: PUSH1 0x01 00002db0: PUSH1 0xa0 00002db2: SHL 00002db3: SUB 00002db4: DUP3 00002db5: AND 00002db6: PUSH2 0x2dd5 00002db9: JUMPI 00002dba: PUSH1 0x40 00002dbc: MLOAD 00002dbd: PUSH4 0xec442f05 00002dc2: PUSH1 0xe0 00002dc4: SHL 00002dc5: DUP2 00002dc6: MSTORE 00002dc7: PUSH1 0x00 00002dc9: PUSH1 0x04 00002dcb: DUP3 00002dcc: ADD 00002dcd: MSTORE 00002dce: PUSH1 0x24 00002dd0: ADD 00002dd1: PUSH2 0x2a2e 00002dd4: JUMP 00002dd5: JUMPDEST 00002dd6: PUSH2 0x2d81 00002dd9: PUSH1 0x00 00002ddb: DUP4 00002ddc: DUP4 00002ddd: PUSH2 0x31bc 00002de0: JUMP 00002de1: JUMPDEST 00002de2: PUSH1 0x00 00002de4: CALLER 00002de5: PUSH2 0x086e 00002de8: DUP2 00002de9: DUP6 00002dea: DUP6 00002deb: PUSH2 0x3041 00002dee: JUMP 00002def: JUMPDEST 00002df0: PUSH1 0x05 00002df2: SLOAD 00002df3: PUSH1 0xff 00002df5: AND 00002df6: ISZERO 00002df7: PUSH2 0x2e2c 00002dfa: JUMPI 00002dfb: PUSH1 0x40 00002dfd: MLOAD 00002dfe: PUSH32 0x0dc149f000000000000000000000000000000000000000000000000000000000 00002e1f: DUP2 00002e20: MSTORE 00002e21: PUSH1 0x04 00002e23: ADD 00002e24: PUSH1 0x40 00002e26: MLOAD 00002e27: DUP1 00002e28: SWAP2 00002e29: SUB 00002e2a: SWAP1 00002e2b: REVERT 00002e2c: JUMPDEST 00002e2d: PUSH1 0x05 00002e2f: DUP1 00002e30: SLOAD 00002e31: PUSH1 0xff 00002e33: NOT 00002e34: AND 00002e35: PUSH1 0x01 00002e37: OR 00002e38: SWAP1 00002e39: SSTORE 00002e3a: PUSH1 0x06 00002e3c: PUSH2 0x2e45 00002e3f: DUP5 00002e40: DUP3 00002e41: PUSH2 0x4836 00002e44: JUMP 00002e45: JUMPDEST 00002e46: POP 00002e47: PUSH1 0x07 00002e49: PUSH2 0x2e52 00002e4c: DUP4 00002e4d: DUP3 00002e4e: PUSH2 0x4836 00002e51: JUMP 00002e52: JUMPDEST 00002e53: POP 00002e54: PUSH1 0x05 00002e56: DUP1 00002e57: SLOAD 00002e58: PUSH1 0xff 00002e5a: SWAP1 00002e5b: SWAP3 00002e5c: AND 00002e5d: PUSH2 0x0100 00002e60: MUL 00002e61: PUSH2 0xff00 00002e64: NOT 00002e65: SWAP1 00002e66: SWAP3 00002e67: AND 00002e68: SWAP2 00002e69: SWAP1 00002e6a: SWAP2 00002e6b: OR 00002e6c: SWAP1 00002e6d: SSTORE 00002e6e: POP 00002e6f: POP 00002e70: JUMP 00002e71: JUMPDEST 00002e72: PUSH1 0x00 00002e74: PUSH8 0xffffffffffffffff 00002e7d: DUP3 00002e7e: GT 00002e7f: ISZERO 00002e80: PUSH2 0x2a37 00002e83: JUMPI 00002e84: PUSH1 0x40 00002e86: DUP1 00002e87: MLOAD 00002e88: PUSH4 0x06dfcc65 00002e8d: PUSH1 0xe4 00002e8f: SHL 00002e90: DUP2 00002e91: MSTORE 00002e92: PUSH1 0x04 00002e94: DUP2 00002e95: ADD 00002e96: SWAP2 00002e97: SWAP1 00002e98: SWAP2 00002e99: MSTORE 00002e9a: PUSH1 0x24 00002e9c: DUP2 00002e9d: ADD 00002e9e: DUP4 00002e9f: SWAP1 00002ea0: MSTORE 00002ea1: PUSH1 0x44 00002ea3: ADD 00002ea4: PUSH2 0x2a2e 00002ea7: JUMP 00002ea8: JUMPDEST 00002ea9: PUSH1 0x01 00002eab: PUSH1 0x01 00002ead: PUSH1 0xa0 00002eaf: SHL 00002eb0: SUB 00002eb1: DUP5 00002eb2: AND 00002eb3: PUSH2 0x2eeb 00002eb6: JUMPI 00002eb7: PUSH1 0x40 00002eb9: MLOAD 00002eba: PUSH32 0xe602df0500000000000000000000000000000000000000000000000000000000 00002edb: DUP2 00002edc: MSTORE 00002edd: PUSH1 0x00 00002edf: PUSH1 0x04 00002ee1: DUP3 00002ee2: ADD 00002ee3: MSTORE 00002ee4: PUSH1 0x24 00002ee6: ADD 00002ee7: PUSH2 0x2a2e 00002eea: JUMP 00002eeb: JUMPDEST 00002eec: PUSH1 0x01 00002eee: PUSH1 0x01 00002ef0: PUSH1 0xa0 00002ef2: SHL 00002ef3: SUB 00002ef4: DUP4 00002ef5: AND 00002ef6: PUSH2 0x2f2e 00002ef9: JUMPI 00002efa: PUSH1 0x40 00002efc: MLOAD 00002efd: PUSH32 0x94280d6200000000000000000000000000000000000000000000000000000000 00002f1e: DUP2 00002f1f: MSTORE 00002f20: PUSH1 0x00 00002f22: PUSH1 0x04 00002f24: DUP3 00002f25: ADD 00002f26: MSTORE 00002f27: PUSH1 0x24 00002f29: ADD 00002f2a: PUSH2 0x2a2e 00002f2d: JUMP 00002f2e: JUMPDEST 00002f2f: PUSH1 0x01 00002f31: PUSH1 0x01 00002f33: PUSH1 0xa0 00002f35: SHL 00002f36: SUB 00002f37: DUP1 00002f38: DUP6 00002f39: AND 00002f3a: PUSH1 0x00 00002f3c: SWAP1 00002f3d: DUP2 00002f3e: MSTORE 00002f3f: PUSH1 0x01 00002f41: PUSH1 0x20 00002f43: SWAP1 00002f44: DUP2 00002f45: MSTORE 00002f46: PUSH1 0x40 00002f48: DUP1 00002f49: DUP4 00002f4a: KECCAK256 00002f4b: SWAP4 00002f4c: DUP8 00002f4d: AND 00002f4e: DUP4 00002f4f: MSTORE 00002f50: SWAP3 00002f51: SWAP1 00002f52: MSTORE 00002f53: KECCAK256 00002f54: DUP3 00002f55: SWAP1 00002f56: SSTORE 00002f57: DUP1 00002f58: ISZERO 00002f59: PUSH2 0x2faa 00002f5c: JUMPI 00002f5d: DUP3 00002f5e: PUSH1 0x01 00002f60: PUSH1 0x01 00002f62: PUSH1 0xa0 00002f64: SHL 00002f65: SUB 00002f66: AND 00002f67: DUP5 00002f68: PUSH1 0x01 00002f6a: PUSH1 0x01 00002f6c: PUSH1 0xa0 00002f6e: SHL 00002f6f: SUB 00002f70: AND 00002f71: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925 00002f92: DUP5 00002f93: PUSH1 0x40 00002f95: MLOAD 00002f96: PUSH2 0x2fa1 00002f99: SWAP2 00002f9a: DUP2 00002f9b: MSTORE 00002f9c: PUSH1 0x20 00002f9e: ADD 00002f9f: SWAP1 00002fa0: JUMP 00002fa1: JUMPDEST 00002fa2: PUSH1 0x40 00002fa4: MLOAD 00002fa5: DUP1 00002fa6: SWAP2 00002fa7: SUB 00002fa8: SWAP1 00002fa9: LOG3 00002faa: JUMPDEST 00002fab: POP 00002fac: POP 00002fad: POP 00002fae: POP 00002faf: JUMP 00002fb0: JUMPDEST 00002fb1: PUSH1 0x01 00002fb3: PUSH1 0x01 00002fb5: PUSH1 0xa0 00002fb7: SHL 00002fb8: SUB 00002fb9: DUP4 00002fba: DUP2 00002fbb: AND 00002fbc: PUSH1 0x00 00002fbe: SWAP1 00002fbf: DUP2 00002fc0: MSTORE 00002fc1: PUSH1 0x01 00002fc3: PUSH1 0x20 00002fc5: SWAP1 00002fc6: DUP2 00002fc7: MSTORE 00002fc8: PUSH1 0x40 00002fca: DUP1 00002fcb: DUP4 00002fcc: KECCAK256 00002fcd: SWAP4 00002fce: DUP7 00002fcf: AND 00002fd0: DUP4 00002fd1: MSTORE 00002fd2: SWAP3 00002fd3: SWAP1 00002fd4: MSTORE 00002fd5: KECCAK256 00002fd6: SLOAD 00002fd7: PUSH1 0x00 00002fd9: NOT 00002fda: DUP2 00002fdb: EQ 00002fdc: PUSH2 0x2faa 00002fdf: JUMPI 00002fe0: DUP2 00002fe1: DUP2 00002fe2: LT 00002fe3: ISZERO 00002fe4: PUSH2 0x3032 00002fe7: JUMPI 00002fe8: PUSH1 0x40 00002fea: MLOAD 00002feb: PUSH32 0xfb8f41b200000000000000000000000000000000000000000000000000000000 0000300c: DUP2 0000300d: MSTORE 0000300e: PUSH1 0x01 00003010: PUSH1 0x01 00003012: PUSH1 0xa0 00003014: SHL 00003015: SUB 00003016: DUP5 00003017: AND 00003018: PUSH1 0x04 0000301a: DUP3 0000301b: ADD 0000301c: MSTORE 0000301d: PUSH1 0x24 0000301f: DUP2 00003020: ADD 00003021: DUP3 00003022: SWAP1 00003023: MSTORE 00003024: PUSH1 0x44 00003026: DUP2 00003027: ADD 00003028: DUP4 00003029: SWAP1 0000302a: MSTORE 0000302b: PUSH1 0x64 0000302d: ADD 0000302e: PUSH2 0x2a2e 00003031: JUMP 00003032: JUMPDEST 00003033: PUSH2 0x2faa 00003036: DUP5 00003037: DUP5 00003038: DUP5 00003039: DUP5 0000303a: SUB 0000303b: PUSH1 0x00 0000303d: PUSH2 0x2ea8 00003040: JUMP 00003041: JUMPDEST 00003042: PUSH1 0x01 00003044: PUSH1 0x01 00003046: PUSH1 0xa0 00003048: SHL 00003049: SUB 0000304a: DUP4 0000304b: AND 0000304c: PUSH2 0x306b 0000304f: JUMPI 00003050: PUSH1 0x40 00003052: MLOAD 00003053: PUSH4 0x4b637e8f 00003058: PUSH1 0xe1 0000305a: SHL 0000305b: DUP2 0000305c: MSTORE 0000305d: PUSH1 0x00 0000305f: PUSH1 0x04 00003061: DUP3 00003062: ADD 00003063: MSTORE 00003064: PUSH1 0x24 00003066: ADD 00003067: PUSH2 0x2a2e 0000306a: JUMP 0000306b: JUMPDEST 0000306c: PUSH1 0x01 0000306e: PUSH1 0x01 00003070: PUSH1 0xa0 00003072: SHL 00003073: SUB 00003074: DUP3 00003075: AND 00003076: PUSH2 0x3095 00003079: JUMPI 0000307a: PUSH1 0x40 0000307c: MLOAD 0000307d: PUSH4 0xec442f05 00003082: PUSH1 0xe0 00003084: SHL 00003085: DUP2 00003086: MSTORE 00003087: PUSH1 0x00 00003089: PUSH1 0x04 0000308b: DUP3 0000308c: ADD 0000308d: MSTORE 0000308e: PUSH1 0x24 00003090: ADD 00003091: PUSH2 0x2a2e 00003094: JUMP 00003095: JUMPDEST 00003096: PUSH2 0x2920 00003099: DUP4 0000309a: DUP4 0000309b: DUP4 0000309c: PUSH2 0x31bc 0000309f: JUMP 000030a0: JUMPDEST 000030a1: PUSH1 0x60 000030a3: PUSH1 0x00 000030a5: PUSH2 0x30ad 000030a8: DUP4 000030a9: PUSH2 0x32ff 000030ac: JUMP 000030ad: JUMPDEST 000030ae: PUSH1 0x01 000030b0: ADD 000030b1: SWAP1 000030b2: POP 000030b3: PUSH1 0x00 000030b5: DUP2 000030b6: PUSH8 0xffffffffffffffff 000030bf: DUP2 000030c0: GT 000030c1: ISZERO 000030c2: PUSH2 0x30cd 000030c5: JUMPI 000030c6: PUSH2 0x30cd 000030c9: PUSH2 0x35c1 000030cc: JUMP 000030cd: JUMPDEST 000030ce: PUSH1 0x40 000030d0: MLOAD 000030d1: SWAP1 000030d2: DUP1 000030d3: DUP3 000030d4: MSTORE 000030d5: DUP1 000030d6: PUSH1 0x1f 000030d8: ADD 000030d9: PUSH1 0x1f 000030db: NOT 000030dc: AND 000030dd: PUSH1 0x20 000030df: ADD 000030e0: DUP3 000030e1: ADD 000030e2: PUSH1 0x40 000030e4: MSTORE 000030e5: DUP1 000030e6: ISZERO 000030e7: PUSH2 0x30f7 000030ea: JUMPI 000030eb: PUSH1 0x20 000030ed: DUP3 000030ee: ADD 000030ef: DUP2 000030f0: DUP1 000030f1: CALLDATASIZE 000030f2: DUP4 000030f3: CALLDATACOPY 000030f4: ADD 000030f5: SWAP1 000030f6: POP 000030f7: JUMPDEST 000030f8: POP 000030f9: SWAP1 000030fa: POP 000030fb: DUP2 000030fc: DUP2 000030fd: ADD 000030fe: PUSH1 0x20 00003100: ADD 00003101: JUMPDEST 00003102: PUSH1 0x00 00003104: NOT 00003105: ADD 00003106: PUSH32 0x3031323334353637383961626364656600000000000000000000000000000000 00003127: PUSH1 0x0a 00003129: DUP7 0000312a: MOD 0000312b: BYTE 0000312c: DUP2 0000312d: MSTORE8 0000312e: PUSH1 0x0a 00003130: DUP6 00003131: DIV 00003132: SWAP5 00003133: POP 00003134: DUP5 00003135: PUSH2 0x3101 00003138: JUMPI 00003139: POP 0000313a: SWAP4 0000313b: SWAP3 0000313c: POP 0000313d: POP 0000313e: POP 0000313f: JUMP 00003140: JUMPDEST 00003141: PUSH1 0x00 00003143: PUSH2 0x3155 00003146: PUSH1 0x01 00003148: PUSH1 0x01 0000314a: PUSH1 0xa0 0000314c: SHL 0000314d: SUB 0000314e: DUP5 0000314f: AND 00003150: DUP4 00003151: PUSH2 0x33e1 00003154: JUMP 00003155: JUMPDEST 00003156: SWAP1 00003157: POP 00003158: DUP1 00003159: MLOAD 0000315a: PUSH1 0x00 0000315c: EQ 0000315d: ISZERO 0000315e: DUP1 0000315f: ISZERO 00003160: PUSH2 0x317a 00003163: JUMPI 00003164: POP 00003165: DUP1 00003166: DUP1 00003167: PUSH1 0x20 00003169: ADD 0000316a: SWAP1 0000316b: MLOAD 0000316c: DUP2 0000316d: ADD 0000316e: SWAP1 0000316f: PUSH2 0x3178 00003172: SWAP2 00003173: SWAP1 00003174: PUSH2 0x48f6 00003177: JUMP 00003178: JUMPDEST 00003179: ISZERO 0000317a: JUMPDEST 0000317b: ISZERO 0000317c: PUSH2 0x2920 0000317f: JUMPI 00003180: PUSH1 0x40 00003182: MLOAD 00003183: PUSH32 0x5274afe700000000000000000000000000000000000000000000000000000000 000031a4: DUP2 000031a5: MSTORE 000031a6: PUSH1 0x01 000031a8: PUSH1 0x01 000031aa: PUSH1 0xa0 000031ac: SHL 000031ad: SUB 000031ae: DUP5 000031af: AND 000031b0: PUSH1 0x04 000031b2: DUP3 000031b3: ADD 000031b4: MSTORE 000031b5: PUSH1 0x24 000031b7: ADD 000031b8: PUSH2 0x2a2e 000031bb: JUMP 000031bc: JUMPDEST 000031bd: PUSH1 0x01 000031bf: PUSH1 0x01 000031c1: PUSH1 0xa0 000031c3: SHL 000031c4: SUB 000031c5: DUP4 000031c6: AND 000031c7: PUSH2 0x31e7 000031ca: JUMPI 000031cb: DUP1 000031cc: PUSH1 0x02 000031ce: PUSH1 0x00 000031d0: DUP3 000031d1: DUP3 000031d2: SLOAD 000031d3: PUSH2 0x31dc 000031d6: SWAP2 000031d7: SWAP1 000031d8: PUSH2 0x3ee4 000031db: JUMP 000031dc: JUMPDEST 000031dd: SWAP1 000031de: SWAP2 000031df: SSTORE 000031e0: POP 000031e1: PUSH2 0x3272 000031e4: SWAP1 000031e5: POP 000031e6: JUMP 000031e7: JUMPDEST 000031e8: PUSH1 0x01 000031ea: PUSH1 0x01 000031ec: PUSH1 0xa0 000031ee: SHL 000031ef: SUB 000031f0: DUP4 000031f1: AND 000031f2: PUSH1 0x00 000031f4: SWAP1 000031f5: DUP2 000031f6: MSTORE 000031f7: PUSH1 0x20 000031f9: DUP2 000031fa: SWAP1 000031fb: MSTORE 000031fc: PUSH1 0x40 000031fe: SWAP1 000031ff: KECCAK256 00003200: SLOAD 00003201: DUP2 00003202: DUP2 00003203: LT 00003204: ISZERO 00003205: PUSH2 0x3253 00003208: JUMPI 00003209: PUSH1 0x40 0000320b: MLOAD 0000320c: PUSH32 0xe450d38c00000000000000000000000000000000000000000000000000000000 0000322d: DUP2 0000322e: MSTORE 0000322f: PUSH1 0x01 00003231: PUSH1 0x01 00003233: PUSH1 0xa0 00003235: SHL 00003236: SUB 00003237: DUP6 00003238: AND 00003239: PUSH1 0x04 0000323b: DUP3 0000323c: ADD 0000323d: MSTORE 0000323e: PUSH1 0x24 00003240: DUP2 00003241: ADD 00003242: DUP3 00003243: SWAP1 00003244: MSTORE 00003245: PUSH1 0x44 00003247: DUP2 00003248: ADD 00003249: DUP4 0000324a: SWAP1 0000324b: MSTORE 0000324c: PUSH1 0x64 0000324e: ADD 0000324f: PUSH2 0x2a2e 00003252: JUMP 00003253: JUMPDEST 00003254: PUSH1 0x01 00003256: PUSH1 0x01 00003258: PUSH1 0xa0 0000325a: SHL 0000325b: SUB 0000325c: DUP5 0000325d: AND 0000325e: PUSH1 0x00 00003260: SWAP1 00003261: DUP2 00003262: MSTORE 00003263: PUSH1 0x20 00003265: DUP2 00003266: SWAP1 00003267: MSTORE 00003268: PUSH1 0x40 0000326a: SWAP1 0000326b: KECCAK256 0000326c: SWAP1 0000326d: DUP3 0000326e: SWAP1 0000326f: SUB 00003270: SWAP1 00003271: SSTORE 00003272: JUMPDEST 00003273: PUSH1 0x01 00003275: PUSH1 0x01 00003277: PUSH1 0xa0 00003279: SHL 0000327a: SUB 0000327b: DUP3 0000327c: AND 0000327d: PUSH2 0x328e 00003280: JUMPI 00003281: PUSH1 0x02 00003283: DUP1 00003284: SLOAD 00003285: DUP3 00003286: SWAP1 00003287: SUB 00003288: SWAP1 00003289: SSTORE 0000328a: PUSH2 0x32ad 0000328d: JUMP 0000328e: JUMPDEST 0000328f: PUSH1 0x01 00003291: PUSH1 0x01 00003293: PUSH1 0xa0 00003295: SHL 00003296: SUB 00003297: DUP3 00003298: AND 00003299: PUSH1 0x00 0000329b: SWAP1 0000329c: DUP2 0000329d: MSTORE 0000329e: PUSH1 0x20 000032a0: DUP2 000032a1: SWAP1 000032a2: MSTORE 000032a3: PUSH1 0x40 000032a5: SWAP1 000032a6: KECCAK256 000032a7: DUP1 000032a8: SLOAD 000032a9: DUP3 000032aa: ADD 000032ab: SWAP1 000032ac: SSTORE 000032ad: JUMPDEST 000032ae: DUP2 000032af: PUSH1 0x01 000032b1: PUSH1 0x01 000032b3: PUSH1 0xa0 000032b5: SHL 000032b6: SUB 000032b7: AND 000032b8: DUP4 000032b9: PUSH1 0x01 000032bb: PUSH1 0x01 000032bd: PUSH1 0xa0 000032bf: SHL 000032c0: SUB 000032c1: AND 000032c2: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 000032e3: DUP4 000032e4: PUSH1 0x40 000032e6: MLOAD 000032e7: PUSH2 0x32f2 000032ea: SWAP2 000032eb: DUP2 000032ec: MSTORE 000032ed: PUSH1 0x20 000032ef: ADD 000032f0: SWAP1 000032f1: JUMP 000032f2: JUMPDEST 000032f3: PUSH1 0x40 000032f5: MLOAD 000032f6: DUP1 000032f7: SWAP2 000032f8: SUB 000032f9: SWAP1 000032fa: LOG3 000032fb: POP 000032fc: POP 000032fd: POP 000032fe: JUMP 000032ff: JUMPDEST 00003300: PUSH1 0x00 00003302: DUP1 00003303: PUSH27 0x184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000 0000331f: DUP4 00003320: LT 00003321: PUSH2 0x3348 00003324: JUMPI 00003325: PUSH27 0x184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000 00003341: DUP4 00003342: DIV 00003343: SWAP3 00003344: POP 00003345: PUSH1 0x40 00003347: ADD 00003348: JUMPDEST 00003349: PUSH14 0x04ee2d6d415b85acef8100000000 00003358: DUP4 00003359: LT 0000335a: PUSH2 0x3374 0000335d: JUMPI 0000335e: PUSH14 0x04ee2d6d415b85acef8100000000 0000336d: DUP4 0000336e: DIV 0000336f: SWAP3 00003370: POP 00003371: PUSH1 0x20 00003373: ADD 00003374: JUMPDEST 00003375: PUSH7 0x2386f26fc10000 0000337d: DUP4 0000337e: LT 0000337f: PUSH2 0x3392 00003382: JUMPI 00003383: PUSH7 0x2386f26fc10000 0000338b: DUP4 0000338c: DIV 0000338d: SWAP3 0000338e: POP 0000338f: PUSH1 0x10 00003391: ADD 00003392: JUMPDEST 00003393: PUSH4 0x05f5e100 00003398: DUP4 00003399: LT 0000339a: PUSH2 0x33aa 0000339d: JUMPI 0000339e: PUSH4 0x05f5e100 000033a3: DUP4 000033a4: DIV 000033a5: SWAP3 000033a6: POP 000033a7: PUSH1 0x08 000033a9: ADD 000033aa: JUMPDEST 000033ab: PUSH2 0x2710 000033ae: DUP4 000033af: LT 000033b0: PUSH2 0x33be 000033b3: JUMPI 000033b4: PUSH2 0x2710 000033b7: DUP4 000033b8: DIV 000033b9: SWAP3 000033ba: POP 000033bb: PUSH1 0x04 000033bd: ADD 000033be: JUMPDEST 000033bf: PUSH1 0x64 000033c1: DUP4 000033c2: LT 000033c3: PUSH2 0x33d0 000033c6: JUMPI 000033c7: PUSH1 0x64 000033c9: DUP4 000033ca: DIV 000033cb: SWAP3 000033cc: POP 000033cd: PUSH1 0x02 000033cf: ADD 000033d0: JUMPDEST 000033d1: PUSH1 0x0a 000033d3: DUP4 000033d4: LT 000033d5: PUSH2 0x0874 000033d8: JUMPI 000033d9: PUSH1 0x01 000033db: ADD 000033dc: SWAP3 000033dd: SWAP2 000033de: POP 000033df: POP 000033e0: JUMP 000033e1: JUMPDEST 000033e2: PUSH1 0x60 000033e4: PUSH2 0x2a8d 000033e7: DUP4 000033e8: DUP4 000033e9: PUSH1 0x00 000033eb: DUP5 000033ec: PUSH1 0x00 000033ee: DUP1 000033ef: DUP6 000033f0: PUSH1 0x01 000033f2: PUSH1 0x01 000033f4: PUSH1 0xa0 000033f6: SHL 000033f7: SUB 000033f8: AND 000033f9: DUP5 000033fa: DUP7 000033fb: PUSH1 0x40 000033fd: MLOAD 000033fe: PUSH2 0x3407 00003401: SWAP2 00003402: SWAP1 00003403: PUSH2 0x4913 00003406: JUMP 00003407: JUMPDEST 00003408: PUSH1 0x00 0000340a: PUSH1 0x40 0000340c: MLOAD 0000340d: DUP1 0000340e: DUP4 0000340f: SUB 00003410: DUP2 00003411: DUP6 00003412: DUP8 00003413: GAS 00003414: CALL 00003415: SWAP3 00003416: POP 00003417: POP 00003418: POP 00003419: RETURNDATASIZE 0000341a: DUP1 0000341b: PUSH1 0x00 0000341d: DUP2 0000341e: EQ 0000341f: PUSH2 0x3444 00003422: JUMPI 00003423: PUSH1 0x40 00003425: MLOAD 00003426: SWAP2 00003427: POP 00003428: PUSH1 0x1f 0000342a: NOT 0000342b: PUSH1 0x3f 0000342d: RETURNDATASIZE 0000342e: ADD 0000342f: AND 00003430: DUP3 00003431: ADD 00003432: PUSH1 0x40 00003434: MSTORE 00003435: RETURNDATASIZE 00003436: DUP3 00003437: MSTORE 00003438: RETURNDATASIZE 00003439: PUSH1 0x00 0000343b: PUSH1 0x20 0000343d: DUP5 0000343e: ADD 0000343f: RETURNDATACOPY 00003440: PUSH2 0x3449 00003443: JUMP 00003444: JUMPDEST 00003445: PUSH1 0x60 00003447: SWAP2 00003448: POP 00003449: JUMPDEST 0000344a: POP 0000344b: SWAP2 0000344c: POP 0000344d: SWAP2 0000344e: POP 0000344f: PUSH2 0x3459 00003452: DUP7 00003453: DUP4 00003454: DUP4 00003455: PUSH2 0x3463 00003458: JUMP 00003459: JUMPDEST 0000345a: SWAP7 0000345b: SWAP6 0000345c: POP 0000345d: POP 0000345e: POP 0000345f: POP 00003460: POP 00003461: POP 00003462: JUMP 00003463: JUMPDEST 00003464: PUSH1 0x60 00003466: DUP3 00003467: PUSH2 0x3478 0000346a: JUMPI 0000346b: PUSH2 0x3473 0000346e: DUP3 0000346f: PUSH2 0x34d8 00003472: JUMP 00003473: JUMPDEST 00003474: PUSH2 0x2a8d 00003477: JUMP 00003478: JUMPDEST 00003479: DUP2 0000347a: MLOAD 0000347b: ISZERO 0000347c: DUP1 0000347d: ISZERO 0000347e: PUSH2 0x348f 00003481: JUMPI 00003482: POP 00003483: PUSH1 0x01 00003485: PUSH1 0x01 00003487: PUSH1 0xa0 00003489: SHL 0000348a: SUB 0000348b: DUP5 0000348c: AND 0000348d: EXTCODESIZE 0000348e: ISZERO 0000348f: JUMPDEST 00003490: ISZERO 00003491: PUSH2 0x34d1 00003494: JUMPI 00003495: PUSH1 0x40 00003497: MLOAD 00003498: PUSH32 0x9996b31500000000000000000000000000000000000000000000000000000000 000034b9: DUP2 000034ba: MSTORE 000034bb: PUSH1 0x01 000034bd: PUSH1 0x01 000034bf: PUSH1 0xa0 000034c1: SHL 000034c2: SUB 000034c3: DUP6 000034c4: AND 000034c5: PUSH1 0x04 000034c7: DUP3 000034c8: ADD 000034c9: MSTORE 000034ca: PUSH1 0x24 000034cc: ADD 000034cd: PUSH2 0x2a2e 000034d0: JUMP 000034d1: JUMPDEST 000034d2: POP 000034d3: DUP1 000034d4: PUSH2 0x2a8d 000034d7: JUMP 000034d8: JUMPDEST 000034d9: DUP1 000034da: MLOAD 000034db: ISZERO 000034dc: PUSH2 0x34e8 000034df: JUMPI 000034e0: DUP1 000034e1: MLOAD 000034e2: DUP1 000034e3: DUP3 000034e4: PUSH1 0x20 000034e6: ADD 000034e7: REVERT 000034e8: JUMPDEST 000034e9: PUSH1 0x40 000034eb: MLOAD 000034ec: PUSH32 0x1425ea4200000000000000000000000000000000000000000000000000000000 0000350d: DUP2 0000350e: MSTORE 0000350f: PUSH1 0x04 00003511: ADD 00003512: PUSH1 0x40 00003514: MLOAD 00003515: DUP1 00003516: SWAP2 00003517: SUB 00003518: SWAP1 00003519: REVERT 0000351a: JUMPDEST 0000351b: POP 0000351c: JUMP 0000351d: JUMPDEST 0000351e: PUSH1 0x00 00003520: JUMPDEST 00003521: DUP4 00003522: DUP2 00003523: LT 00003524: ISZERO 00003525: PUSH2 0x3538 00003528: JUMPI 00003529: DUP2 0000352a: DUP2 0000352b: ADD 0000352c: MLOAD 0000352d: DUP4 0000352e: DUP3 0000352f: ADD 00003530: MSTORE 00003531: PUSH1 0x20 00003533: ADD 00003534: PUSH2 0x3520 00003537: JUMP 00003538: JUMPDEST 00003539: POP 0000353a: POP 0000353b: PUSH1 0x00 0000353d: SWAP2 0000353e: ADD 0000353f: MSTORE 00003540: JUMP 00003541: JUMPDEST 00003542: PUSH1 0x00 00003544: DUP2 00003545: MLOAD 00003546: DUP1 00003547: DUP5 00003548: MSTORE 00003549: PUSH2 0x3559 0000354c: DUP2 0000354d: PUSH1 0x20 0000354f: DUP7 00003550: ADD 00003551: PUSH1 0x20 00003553: DUP7 00003554: ADD 00003555: PUSH2 0x351d 00003558: JUMP 00003559: JUMPDEST 0000355a: PUSH1 0x1f 0000355c: ADD 0000355d: PUSH1 0x1f 0000355f: NOT 00003560: AND 00003561: SWAP3 00003562: SWAP1 00003563: SWAP3 00003564: ADD 00003565: PUSH1 0x20 00003567: ADD 00003568: SWAP3 00003569: SWAP2 0000356a: POP 0000356b: POP 0000356c: JUMP 0000356d: JUMPDEST 0000356e: PUSH1 0x20 00003570: DUP2 00003571: MSTORE 00003572: PUSH1 0x00 00003574: PUSH2 0x2a8d 00003577: PUSH1 0x20 00003579: DUP4 0000357a: ADD 0000357b: DUP5 0000357c: PUSH2 0x3541 0000357f: JUMP 00003580: JUMPDEST 00003581: PUSH1 0x01 00003583: PUSH1 0x01 00003585: PUSH1 0xa0 00003587: SHL 00003588: SUB 00003589: DUP2 0000358a: AND 0000358b: DUP2 0000358c: EQ 0000358d: PUSH2 0x351a 00003590: JUMPI 00003591: PUSH1 0x00 00003593: DUP1 00003594: REVERT 00003595: JUMPDEST 00003596: PUSH1 0x00 00003598: DUP1 00003599: PUSH1 0x40 0000359b: DUP4 0000359c: DUP6 0000359d: SUB 0000359e: SLT 0000359f: ISZERO 000035a0: PUSH2 0x35a8 000035a3: JUMPI 000035a4: PUSH1 0x00 000035a6: DUP1 000035a7: REVERT 000035a8: JUMPDEST 000035a9: DUP3 000035aa: CALLDATALOAD 000035ab: PUSH2 0x35b3 000035ae: DUP2 000035af: PUSH2 0x3580 000035b2: JUMP 000035b3: JUMPDEST 000035b4: SWAP5 000035b5: PUSH1 0x20 000035b7: SWAP4 000035b8: SWAP1 000035b9: SWAP4 000035ba: ADD 000035bb: CALLDATALOAD 000035bc: SWAP4 000035bd: POP 000035be: POP 000035bf: POP 000035c0: JUMP 000035c1: JUMPDEST 000035c2: PUSH4 0x4e487b71 000035c7: PUSH1 0xe0 000035c9: SHL 000035ca: PUSH1 0x00 000035cc: MSTORE 000035cd: PUSH1 0x41 000035cf: PUSH1 0x04 000035d1: MSTORE 000035d2: PUSH1 0x24 000035d4: PUSH1 0x00 000035d6: REVERT 000035d7: JUMPDEST 000035d8: PUSH1 0x40 000035da: MLOAD 000035db: PUSH1 0x1f 000035dd: DUP3 000035de: ADD 000035df: PUSH1 0x1f 000035e1: NOT 000035e2: AND 000035e3: DUP2 000035e4: ADD 000035e5: PUSH8 0xffffffffffffffff 000035ee: DUP2 000035ef: GT 000035f0: DUP3 000035f1: DUP3 000035f2: LT 000035f3: OR 000035f4: ISZERO 000035f5: PUSH2 0x3600 000035f8: JUMPI 000035f9: PUSH2 0x3600 000035fc: PUSH2 0x35c1 000035ff: JUMP 00003600: JUMPDEST 00003601: PUSH1 0x40 00003603: MSTORE 00003604: SWAP2 00003605: SWAP1 00003606: POP 00003607: JUMP 00003608: JUMPDEST 00003609: PUSH1 0x00 0000360b: PUSH8 0xffffffffffffffff 00003614: DUP3 00003615: GT 00003616: ISZERO 00003617: PUSH2 0x3622 0000361a: JUMPI 0000361b: PUSH2 0x3622 0000361e: PUSH2 0x35c1 00003621: JUMP 00003622: JUMPDEST 00003623: POP 00003624: PUSH1 0x1f 00003626: ADD 00003627: PUSH1 0x1f 00003629: NOT 0000362a: AND 0000362b: PUSH1 0x20 0000362d: ADD 0000362e: SWAP1 0000362f: JUMP 00003630: JUMPDEST 00003631: PUSH1 0x00 00003633: DUP3 00003634: PUSH1 0x1f 00003636: DUP4 00003637: ADD 00003638: SLT 00003639: PUSH2 0x3641 0000363c: JUMPI 0000363d: PUSH1 0x00 0000363f: DUP1 00003640: REVERT 00003641: JUMPDEST 00003642: DUP2 00003643: CALLDATALOAD 00003644: PUSH1 0x20 00003646: PUSH8 0xffffffffffffffff 0000364f: DUP1 00003650: DUP4 00003651: GT 00003652: ISZERO 00003653: PUSH2 0x365e 00003656: JUMPI 00003657: PUSH2 0x365e 0000365a: PUSH2 0x35c1 0000365d: JUMP 0000365e: JUMPDEST 0000365f: DUP3 00003660: PUSH1 0x05 00003662: SHL 00003663: PUSH2 0x366d 00003666: DUP4 00003667: DUP3 00003668: ADD 00003669: PUSH2 0x35d7 0000366c: JUMP 0000366d: JUMPDEST 0000366e: SWAP4 0000366f: DUP5 00003670: MSTORE 00003671: DUP6 00003672: DUP2 00003673: ADD 00003674: DUP4 00003675: ADD 00003676: SWAP4 00003677: DUP4 00003678: DUP2 00003679: ADD 0000367a: SWAP1 0000367b: DUP9 0000367c: DUP7 0000367d: GT 0000367e: ISZERO 0000367f: PUSH2 0x3687 00003682: JUMPI 00003683: PUSH1 0x00 00003685: DUP1 00003686: REVERT 00003687: JUMPDEST 00003688: DUP5 00003689: DUP9 0000368a: ADD 0000368b: SWAP3 0000368c: POP 0000368d: JUMPDEST 0000368e: DUP6 0000368f: DUP4 00003690: LT 00003691: ISZERO 00003692: PUSH2 0x3707 00003695: JUMPI 00003696: DUP3 00003697: CALLDATALOAD 00003698: DUP5 00003699: DUP2 0000369a: GT 0000369b: ISZERO 0000369c: PUSH2 0x36a5 0000369f: JUMPI 000036a0: PUSH1 0x00 000036a2: DUP1 000036a3: DUP2 000036a4: REVERT 000036a5: JUMPDEST 000036a6: DUP9 000036a7: ADD 000036a8: PUSH1 0x3f 000036aa: DUP2 000036ab: ADD 000036ac: DUP11 000036ad: SGT 000036ae: PUSH2 0x36b7 000036b1: JUMPI 000036b2: PUSH1 0x00 000036b4: DUP1 000036b5: DUP2 000036b6: REVERT 000036b7: JUMPDEST 000036b8: DUP6 000036b9: DUP2 000036ba: ADD 000036bb: CALLDATALOAD 000036bc: PUSH1 0x40 000036be: PUSH2 0x36ce 000036c1: PUSH2 0x36c9 000036c4: DUP4 000036c5: PUSH2 0x3608 000036c8: JUMP 000036c9: JUMPDEST 000036ca: PUSH2 0x35d7 000036cd: JUMP 000036ce: JUMPDEST 000036cf: DUP3 000036d0: DUP2 000036d1: MSTORE 000036d2: DUP13 000036d3: DUP3 000036d4: DUP5 000036d5: DUP7 000036d6: ADD 000036d7: ADD 000036d8: GT 000036d9: ISZERO 000036da: PUSH2 0x36e3 000036dd: JUMPI 000036de: PUSH1 0x00 000036e0: DUP1 000036e1: DUP2 000036e2: REVERT 000036e3: JUMPDEST 000036e4: DUP3 000036e5: DUP3 000036e6: DUP6 000036e7: ADD 000036e8: DUP11 000036e9: DUP4 000036ea: ADD 000036eb: CALLDATACOPY 000036ec: PUSH1 0x00 000036ee: SWAP3 000036ef: DUP2 000036f0: ADD 000036f1: DUP10 000036f2: ADD 000036f3: SWAP3 000036f4: SWAP1 000036f5: SWAP3 000036f6: MSTORE 000036f7: POP 000036f8: DUP4 000036f9: MSTORE 000036fa: POP 000036fb: SWAP2 000036fc: DUP5 000036fd: ADD 000036fe: SWAP2 000036ff: SWAP1 00003700: DUP5 00003701: ADD 00003702: SWAP1 00003703: PUSH2 0x368d 00003706: JUMP 00003707: JUMPDEST 00003708: SWAP9 00003709: SWAP8 0000370a: POP 0000370b: POP 0000370c: POP 0000370d: POP 0000370e: POP 0000370f: POP 00003710: POP 00003711: POP 00003712: JUMP 00003713: JUMPDEST 00003714: PUSH1 0x00 00003716: DUP1 00003717: PUSH1 0x00 00003719: PUSH1 0x60 0000371b: DUP5 0000371c: DUP7 0000371d: SUB 0000371e: SLT 0000371f: ISZERO 00003720: PUSH2 0x3728 00003723: JUMPI 00003724: PUSH1 0x00 00003726: DUP1 00003727: REVERT 00003728: JUMPDEST 00003729: DUP4 0000372a: CALLDATALOAD 0000372b: SWAP3 0000372c: POP 0000372d: PUSH1 0x20 0000372f: DUP5 00003730: ADD 00003731: CALLDATALOAD 00003732: SWAP2 00003733: POP 00003734: PUSH1 0x40 00003736: DUP5 00003737: ADD 00003738: CALLDATALOAD 00003739: PUSH8 0xffffffffffffffff 00003742: DUP2 00003743: GT 00003744: ISZERO 00003745: PUSH2 0x374d 00003748: JUMPI 00003749: PUSH1 0x00 0000374b: DUP1 0000374c: REVERT 0000374d: JUMPDEST 0000374e: PUSH2 0x3759 00003751: DUP7 00003752: DUP3 00003753: DUP8 00003754: ADD 00003755: PUSH2 0x3630 00003758: JUMP 00003759: JUMPDEST 0000375a: SWAP2 0000375b: POP 0000375c: POP 0000375d: SWAP3 0000375e: POP 0000375f: SWAP3 00003760: POP 00003761: SWAP3 00003762: JUMP 00003763: JUMPDEST 00003764: PUSH4 0x4e487b71 00003769: PUSH1 0xe0 0000376b: SHL 0000376c: PUSH1 0x00 0000376e: MSTORE 0000376f: PUSH1 0x21 00003771: PUSH1 0x04 00003773: MSTORE 00003774: PUSH1 0x24 00003776: PUSH1 0x00 00003778: REVERT 00003779: JUMPDEST 0000377a: PUSH1 0x06 0000377c: DUP2 0000377d: LT 0000377e: PUSH2 0x3797 00003781: JUMPI 00003782: PUSH4 0x4e487b71 00003787: PUSH1 0xe0 00003789: SHL 0000378a: PUSH1 0x00 0000378c: MSTORE 0000378d: PUSH1 0x21 0000378f: PUSH1 0x04 00003791: MSTORE 00003792: PUSH1 0x24 00003794: PUSH1 0x00 00003796: REVERT 00003797: JUMPDEST 00003798: SWAP1 00003799: MSTORE 0000379a: JUMP 0000379b: JUMPDEST 0000379c: PUSH1 0x00 0000379e: PUSH2 0x01a0 000037a1: DUP3 000037a2: ADD 000037a3: SWAP1 000037a4: POP 000037a5: PUSH2 0x37af 000037a8: DUP3 000037a9: DUP6 000037aa: MLOAD 000037ab: PUSH2 0x3779 000037ae: JUMP 000037af: JUMPDEST 000037b0: PUSH1 0x20 000037b2: DUP5 000037b3: ADD 000037b4: MLOAD 000037b5: PUSH2 0x37c9 000037b8: PUSH1 0x20 000037ba: DUP5 000037bb: ADD 000037bc: DUP3 000037bd: PUSH1 0x01 000037bf: PUSH1 0x01 000037c1: PUSH1 0xa0 000037c3: SHL 000037c4: SUB 000037c5: AND 000037c6: SWAP1 000037c7: MSTORE 000037c8: JUMP 000037c9: JUMPDEST 000037ca: POP 000037cb: PUSH1 0x40 000037cd: DUP5 000037ce: ADD 000037cf: MLOAD 000037d0: PUSH2 0x37e4 000037d3: PUSH1 0x40 000037d5: DUP5 000037d6: ADD 000037d7: DUP3 000037d8: PUSH1 0x01 000037da: PUSH1 0x01 000037dc: PUSH1 0xa0 000037de: SHL 000037df: SUB 000037e0: AND 000037e1: SWAP1 000037e2: MSTORE 000037e3: JUMP 000037e4: JUMPDEST 000037e5: POP 000037e6: PUSH1 0x60 000037e8: DUP5 000037e9: ADD 000037ea: MLOAD 000037eb: PUSH2 0x37ff 000037ee: PUSH1 0x60 000037f0: DUP5 000037f1: ADD 000037f2: DUP3 000037f3: PUSH1 0x01 000037f5: PUSH1 0x01 000037f7: PUSH1 0x80 000037f9: SHL 000037fa: SUB 000037fb: AND 000037fc: SWAP1 000037fd: MSTORE 000037fe: JUMP 000037ff: JUMPDEST 00003800: POP 00003801: PUSH1 0x80 00003803: DUP5 00003804: ADD 00003805: MLOAD 00003806: PUSH2 0x3819 00003809: PUSH1 0x80 0000380b: DUP5 0000380c: ADD 0000380d: DUP3 0000380e: PUSH6 0xffffffffffff 00003815: AND 00003816: SWAP1 00003817: MSTORE 00003818: JUMP 00003819: JUMPDEST 0000381a: POP 0000381b: PUSH1 0xa0 0000381d: DUP5 0000381e: ADD 0000381f: MLOAD 00003820: PUSH2 0x3833 00003823: PUSH1 0xa0 00003825: DUP5 00003826: ADD 00003827: DUP3 00003828: PUSH6 0xffffffffffff 0000382f: AND 00003830: SWAP1 00003831: MSTORE 00003832: JUMP 00003833: JUMPDEST 00003834: POP 00003835: PUSH1 0xc0 00003837: DUP5 00003838: ADD 00003839: MLOAD 0000383a: PUSH2 0x384e 0000383d: PUSH1 0xc0 0000383f: DUP5 00003840: ADD 00003841: DUP3 00003842: PUSH1 0x01 00003844: PUSH1 0x01 00003846: PUSH1 0x80 00003848: SHL 00003849: SUB 0000384a: AND 0000384b: SWAP1 0000384c: MSTORE 0000384d: JUMP 0000384e: JUMPDEST 0000384f: POP 00003850: PUSH1 0xe0 00003852: DUP5 00003853: ADD 00003854: MLOAD 00003855: PUSH2 0x3869 00003858: PUSH1 0xe0 0000385a: DUP5 0000385b: ADD 0000385c: DUP3 0000385d: PUSH1 0x01 0000385f: PUSH1 0x01 00003861: PUSH1 0xa0 00003863: SHL 00003864: SUB 00003865: AND 00003866: SWAP1 00003867: MSTORE 00003868: JUMP 00003869: JUMPDEST 0000386a: POP 0000386b: PUSH2 0x0100 0000386e: DUP5 0000386f: DUP2 00003870: ADD 00003871: MLOAD 00003872: SWAP1 00003873: DUP4 00003874: ADD 00003875: MSTORE 00003876: PUSH2 0x0120 00003879: DUP1 0000387a: DUP6 0000387b: ADD 0000387c: MLOAD 0000387d: PUSH8 0xffffffffffffffff 00003886: AND 00003887: SWAP1 00003888: DUP4 00003889: ADD 0000388a: MSTORE 0000388b: PUSH2 0x0140 0000388e: DUP1 0000388f: DUP6 00003890: ADD 00003891: MLOAD 00003892: PUSH1 0x01 00003894: PUSH1 0x01 00003896: PUSH1 0x80 00003898: SHL 00003899: SUB 0000389a: SWAP1 0000389b: DUP2 0000389c: AND 0000389d: SWAP2 0000389e: DUP5 0000389f: ADD 000038a0: SWAP2 000038a1: SWAP1 000038a2: SWAP2 000038a3: MSTORE 000038a4: PUSH2 0x0160 000038a7: DUP1 000038a8: DUP7 000038a9: ADD 000038aa: MLOAD 000038ab: SWAP1 000038ac: SWAP2 000038ad: AND 000038ae: SWAP1 000038af: DUP4 000038b0: ADD 000038b1: MSTORE 000038b2: PUSH1 0x01 000038b4: PUSH1 0x01 000038b6: PUSH1 0xa0 000038b8: SHL 000038b9: SUB 000038ba: DUP4 000038bb: AND 000038bc: PUSH2 0x0180 000038bf: DUP4 000038c0: ADD 000038c1: MSTORE 000038c2: PUSH2 0x2a8d 000038c5: JUMP 000038c6: JUMPDEST 000038c7: PUSH1 0x00 000038c9: DUP1 000038ca: PUSH1 0x00 000038cc: PUSH1 0x60 000038ce: DUP5 000038cf: DUP7 000038d0: SUB 000038d1: SLT 000038d2: ISZERO 000038d3: PUSH2 0x38db 000038d6: JUMPI 000038d7: PUSH1 0x00 000038d9: DUP1 000038da: REVERT 000038db: JUMPDEST 000038dc: DUP4 000038dd: CALLDATALOAD 000038de: PUSH2 0x38e6 000038e1: DUP2 000038e2: PUSH2 0x3580 000038e5: JUMP 000038e6: JUMPDEST 000038e7: SWAP3 000038e8: POP 000038e9: PUSH1 0x20 000038eb: DUP5 000038ec: ADD 000038ed: CALLDATALOAD 000038ee: PUSH2 0x38f6 000038f1: DUP2 000038f2: PUSH2 0x3580 000038f5: JUMP 000038f6: JUMPDEST 000038f7: SWAP3 000038f8: SWAP6 000038f9: SWAP3 000038fa: SWAP5 000038fb: POP 000038fc: POP 000038fd: POP 000038fe: PUSH1 0x40 00003900: SWAP2 00003901: SWAP1 00003902: SWAP2 00003903: ADD 00003904: CALLDATALOAD 00003905: SWAP1 00003906: JUMP 00003907: JUMPDEST 00003908: DUP1 00003909: CALLDATALOAD 0000390a: PUSH12 0xffffffffffffffffffffffff 00003917: DUP2 00003918: AND 00003919: DUP2 0000391a: EQ 0000391b: PUSH2 0x3923 0000391e: JUMPI 0000391f: PUSH1 0x00 00003921: DUP1 00003922: REVERT 00003923: JUMPDEST 00003924: SWAP2 00003925: SWAP1 00003926: POP 00003927: JUMP 00003928: JUMPDEST 00003929: PUSH1 0x00 0000392b: DUP1 0000392c: PUSH1 0x00 0000392e: DUP1 0000392f: PUSH1 0x00 00003931: DUP1 00003932: DUP7 00003933: DUP9 00003934: SUB 00003935: PUSH2 0x02c0 00003938: DUP2 00003939: SLT 0000393a: ISZERO 0000393b: PUSH2 0x3943 0000393e: JUMPI 0000393f: PUSH1 0x00 00003941: DUP1 00003942: REVERT 00003943: JUMPDEST 00003944: DUP8 00003945: CALLDATALOAD 00003946: PUSH2 0x394e 00003949: DUP2 0000394a: PUSH2 0x3580 0000394d: JUMP 0000394e: JUMPDEST 0000394f: SWAP7 00003950: POP 00003951: PUSH1 0x20 00003953: DUP9 00003954: ADD 00003955: CALLDATALOAD 00003956: PUSH2 0x395e 00003959: DUP2 0000395a: PUSH2 0x3580 0000395d: JUMP 0000395e: JUMPDEST 0000395f: SWAP6 00003960: POP 00003961: PUSH2 0x396c 00003964: PUSH1 0x40 00003966: DUP10 00003967: ADD 00003968: PUSH2 0x3907 0000396b: JUMP 0000396c: JUMPDEST 0000396d: SWAP5 0000396e: POP 0000396f: PUSH2 0x0220 00003972: PUSH1 0x5f 00003974: NOT 00003975: DUP3 00003976: ADD 00003977: SLT 00003978: ISZERO 00003979: PUSH2 0x3981 0000397c: JUMPI 0000397d: PUSH1 0x00 0000397f: DUP1 00003980: REVERT 00003981: JUMPDEST 00003982: POP 00003983: PUSH1 0x60 00003985: DUP8 00003986: ADD 00003987: SWAP3 00003988: POP 00003989: PUSH2 0x0280 0000398c: DUP8 0000398d: ADD 0000398e: CALLDATALOAD 0000398f: SWAP2 00003990: POP 00003991: PUSH2 0x02a0 00003994: DUP8 00003995: ADD 00003996: CALLDATALOAD 00003997: PUSH2 0x399f 0000399a: DUP2 0000399b: PUSH2 0x3580 0000399e: JUMP 0000399f: JUMPDEST 000039a0: DUP1 000039a1: SWAP2 000039a2: POP 000039a3: POP 000039a4: SWAP3 000039a5: SWAP6 000039a6: POP 000039a7: SWAP3 000039a8: SWAP6 000039a9: POP 000039aa: SWAP3 000039ab: SWAP6 000039ac: JUMP 000039ad: JUMPDEST 000039ae: DUP1 000039af: ISZERO 000039b0: ISZERO 000039b1: DUP2 000039b2: EQ 000039b3: PUSH2 0x351a 000039b6: JUMPI 000039b7: PUSH1 0x00 000039b9: DUP1 000039ba: REVERT 000039bb: JUMPDEST 000039bc: PUSH1 0x00 000039be: DUP1 000039bf: PUSH1 0x00 000039c1: DUP1 000039c2: PUSH1 0x00 000039c4: PUSH1 0xa0 000039c6: DUP7 000039c7: DUP9 000039c8: SUB 000039c9: SLT 000039ca: ISZERO 000039cb: PUSH2 0x39d3 000039ce: JUMPI 000039cf: PUSH1 0x00 000039d1: DUP1 000039d2: REVERT 000039d3: JUMPDEST 000039d4: DUP6 000039d5: CALLDATALOAD 000039d6: PUSH2 0x39de 000039d9: DUP2 000039da: PUSH2 0x3580 000039dd: JUMP 000039de: JUMPDEST 000039df: SWAP5 000039e0: POP 000039e1: PUSH1 0x20 000039e3: DUP7 000039e4: ADD 000039e5: CALLDATALOAD 000039e6: PUSH2 0x39ee 000039e9: DUP2 000039ea: PUSH2 0x3580 000039ed: JUMP 000039ee: JUMPDEST 000039ef: SWAP4 000039f0: POP 000039f1: PUSH1 0x40 000039f3: DUP7 000039f4: ADD 000039f5: CALLDATALOAD 000039f6: SWAP3 000039f7: POP 000039f8: PUSH1 0x60 000039fa: DUP7 000039fb: ADD 000039fc: CALLDATALOAD 000039fd: PUSH2 0x3a05 00003a00: DUP2 00003a01: PUSH2 0x39ad 00003a04: JUMP 00003a05: JUMPDEST 00003a06: SWAP2 00003a07: POP 00003a08: PUSH1 0x80 00003a0a: DUP7 00003a0b: ADD 00003a0c: CALLDATALOAD 00003a0d: PUSH8 0xffffffffffffffff 00003a16: DUP2 00003a17: GT 00003a18: ISZERO 00003a19: PUSH2 0x3a21 00003a1c: JUMPI 00003a1d: PUSH1 0x00 00003a1f: DUP1 00003a20: REVERT 00003a21: JUMPDEST 00003a22: PUSH2 0x3a2d 00003a25: DUP9 00003a26: DUP3 00003a27: DUP10 00003a28: ADD 00003a29: PUSH2 0x3630 00003a2c: JUMP 00003a2d: JUMPDEST 00003a2e: SWAP2 00003a2f: POP 00003a30: POP 00003a31: SWAP3 00003a32: SWAP6 00003a33: POP 00003a34: SWAP3 00003a35: SWAP6 00003a36: SWAP1 00003a37: SWAP4 00003a38: POP 00003a39: JUMP 00003a3a: JUMPDEST 00003a3b: PUSH1 0x00 00003a3d: DUP1 00003a3e: PUSH1 0x40 00003a40: DUP4 00003a41: DUP6 00003a42: SUB 00003a43: SLT 00003a44: ISZERO 00003a45: PUSH2 0x3a4d 00003a48: JUMPI 00003a49: PUSH1 0x00 00003a4b: DUP1 00003a4c: REVERT 00003a4d: JUMPDEST 00003a4e: DUP3 00003a4f: CALLDATALOAD 00003a50: SWAP2 00003a51: POP 00003a52: PUSH1 0x20 00003a54: DUP4 00003a55: ADD 00003a56: CALLDATALOAD 00003a57: PUSH2 0x3a5f 00003a5a: DUP2 00003a5b: PUSH2 0x3580 00003a5e: JUMP 00003a5f: JUMPDEST 00003a60: DUP1 00003a61: SWAP2 00003a62: POP 00003a63: POP 00003a64: SWAP3 00003a65: POP 00003a66: SWAP3 00003a67: SWAP1 00003a68: POP 00003a69: JUMP 00003a6a: JUMPDEST 00003a6b: PUSH1 0x00 00003a6d: DUP1 00003a6e: PUSH1 0x00 00003a70: DUP1 00003a71: PUSH1 0x00 00003a73: DUP1 00003a74: PUSH1 0xc0 00003a76: DUP8 00003a77: DUP10 00003a78: SUB 00003a79: SLT 00003a7a: ISZERO 00003a7b: PUSH2 0x3a83 00003a7e: JUMPI 00003a7f: PUSH1 0x00 00003a81: DUP1 00003a82: REVERT 00003a83: JUMPDEST 00003a84: DUP7 00003a85: CALLDATALOAD 00003a86: PUSH2 0x3a8e 00003a89: DUP2 00003a8a: PUSH2 0x3580 00003a8d: JUMP 00003a8e: JUMPDEST 00003a8f: SWAP6 00003a90: POP 00003a91: PUSH1 0x20 00003a93: DUP8 00003a94: ADD 00003a95: CALLDATALOAD 00003a96: PUSH2 0x3a9e 00003a99: DUP2 00003a9a: PUSH2 0x3580 00003a9d: JUMP 00003a9e: JUMPDEST 00003a9f: SWAP5 00003aa0: POP 00003aa1: PUSH1 0x40 00003aa3: DUP8 00003aa4: ADD 00003aa5: CALLDATALOAD 00003aa6: PUSH2 0x3aae 00003aa9: DUP2 00003aaa: PUSH2 0x3580 00003aad: JUMP 00003aae: JUMPDEST 00003aaf: SWAP4 00003ab0: POP 00003ab1: PUSH2 0x3abc 00003ab4: PUSH1 0x60 00003ab6: DUP9 00003ab7: ADD 00003ab8: PUSH2 0x3907 00003abb: JUMP 00003abc: JUMPDEST 00003abd: SWAP3 00003abe: POP 00003abf: PUSH1 0x80 00003ac1: DUP8 00003ac2: ADD 00003ac3: CALLDATALOAD 00003ac4: PUSH8 0xffffffffffffffff 00003acd: DUP2 00003ace: GT 00003acf: ISZERO 00003ad0: PUSH2 0x3ad8 00003ad3: JUMPI 00003ad4: PUSH1 0x00 00003ad6: DUP1 00003ad7: REVERT 00003ad8: JUMPDEST 00003ad9: DUP8 00003ada: ADD 00003adb: PUSH2 0x0180 00003ade: DUP2 00003adf: DUP11 00003ae0: SUB 00003ae1: SLT 00003ae2: ISZERO 00003ae3: PUSH2 0x3aeb 00003ae6: JUMPI 00003ae7: PUSH1 0x00 00003ae9: DUP1 00003aea: REVERT 00003aeb: JUMPDEST 00003aec: DUP1 00003aed: SWAP3 00003aee: POP 00003aef: POP 00003af0: PUSH1 0xa0 00003af2: DUP8 00003af3: ADD 00003af4: CALLDATALOAD 00003af5: SWAP1 00003af6: POP 00003af7: SWAP3 00003af8: SWAP6 00003af9: POP 00003afa: SWAP3 00003afb: SWAP6 00003afc: POP 00003afd: SWAP3 00003afe: SWAP6 00003aff: JUMP 00003b00: JUMPDEST 00003b01: PUSH1 0x00 00003b03: PUSH1 0x20 00003b05: DUP3 00003b06: DUP5 00003b07: SUB 00003b08: SLT 00003b09: ISZERO 00003b0a: PUSH2 0x3b12 00003b0d: JUMPI 00003b0e: PUSH1 0x00 00003b10: DUP1 00003b11: REVERT 00003b12: JUMPDEST 00003b13: DUP2 00003b14: CALLDATALOAD 00003b15: PUSH2 0x2a8d 00003b18: DUP2 00003b19: PUSH2 0x3580 00003b1c: JUMP 00003b1d: JUMPDEST 00003b1e: PUSH1 0x01 00003b20: PUSH1 0x01 00003b22: PUSH1 0x80 00003b24: SHL 00003b25: SUB 00003b26: DUP2 00003b27: AND 00003b28: DUP2 00003b29: EQ 00003b2a: PUSH2 0x351a 00003b2d: JUMPI 00003b2e: PUSH1 0x00 00003b30: DUP1 00003b31: REVERT 00003b32: JUMPDEST 00003b33: PUSH1 0x00 00003b35: DUP1 00003b36: PUSH1 0x00 00003b38: PUSH1 0x60 00003b3a: DUP5 00003b3b: DUP7 00003b3c: SUB 00003b3d: SLT 00003b3e: ISZERO 00003b3f: PUSH2 0x3b47 00003b42: JUMPI 00003b43: PUSH1 0x00 00003b45: DUP1 00003b46: REVERT 00003b47: JUMPDEST 00003b48: DUP4 00003b49: CALLDATALOAD 00003b4a: PUSH2 0x3b52 00003b4d: DUP2 00003b4e: PUSH2 0x3580 00003b51: JUMP 00003b52: JUMPDEST 00003b53: SWAP3 00003b54: POP 00003b55: PUSH1 0x20 00003b57: DUP5 00003b58: ADD 00003b59: CALLDATALOAD 00003b5a: PUSH2 0x3b62 00003b5d: DUP2 00003b5e: PUSH2 0x3580 00003b61: JUMP 00003b62: JUMPDEST 00003b63: SWAP2 00003b64: POP 00003b65: PUSH1 0x40 00003b67: DUP5 00003b68: ADD 00003b69: CALLDATALOAD 00003b6a: PUSH2 0x3b72 00003b6d: DUP2 00003b6e: PUSH2 0x3b1d 00003b71: JUMP 00003b72: JUMPDEST 00003b73: DUP1 00003b74: SWAP2 00003b75: POP 00003b76: POP 00003b77: SWAP3 00003b78: POP 00003b79: SWAP3 00003b7a: POP 00003b7b: SWAP3 00003b7c: JUMP 00003b7d: JUMPDEST 00003b7e: PUSH1 0x00 00003b80: DUP1 00003b81: PUSH1 0x00 00003b83: DUP1 00003b84: PUSH1 0x80 00003b86: DUP6 00003b87: DUP8 00003b88: SUB 00003b89: SLT 00003b8a: ISZERO 00003b8b: PUSH2 0x3b93 00003b8e: JUMPI 00003b8f: PUSH1 0x00 00003b91: DUP1 00003b92: REVERT 00003b93: JUMPDEST 00003b94: DUP5 00003b95: CALLDATALOAD 00003b96: SWAP4 00003b97: POP 00003b98: PUSH1 0x20 00003b9a: DUP6 00003b9b: ADD 00003b9c: CALLDATALOAD 00003b9d: PUSH2 0x3ba5 00003ba0: DUP2 00003ba1: PUSH2 0x3580 00003ba4: JUMP 00003ba5: JUMPDEST 00003ba6: SWAP3 00003ba7: POP 00003ba8: PUSH1 0x40 00003baa: DUP6 00003bab: ADD 00003bac: CALLDATALOAD 00003bad: SWAP2 00003bae: POP 00003baf: PUSH1 0x60 00003bb1: DUP6 00003bb2: ADD 00003bb3: CALLDATALOAD 00003bb4: PUSH8 0xffffffffffffffff 00003bbd: DUP2 00003bbe: GT 00003bbf: ISZERO 00003bc0: PUSH2 0x3bc8 00003bc3: JUMPI 00003bc4: PUSH1 0x00 00003bc6: DUP1 00003bc7: REVERT 00003bc8: JUMPDEST 00003bc9: PUSH2 0x3bd4 00003bcc: DUP8 00003bcd: DUP3 00003bce: DUP9 00003bcf: ADD 00003bd0: PUSH2 0x3630 00003bd3: JUMP 00003bd4: JUMPDEST 00003bd5: SWAP2 00003bd6: POP 00003bd7: POP 00003bd8: SWAP3 00003bd9: SWAP6 00003bda: SWAP2 00003bdb: SWAP5 00003bdc: POP 00003bdd: SWAP3 00003bde: POP 00003bdf: JUMP 00003be0: JUMPDEST 00003be1: PUSH1 0x00 00003be3: DUP1 00003be4: PUSH1 0x00 00003be6: DUP1 00003be7: PUSH1 0x00 00003be9: DUP1 00003bea: DUP7 00003beb: DUP9 00003bec: SUB 00003bed: PUSH2 0x0200 00003bf0: DUP2 00003bf1: SLT 00003bf2: ISZERO 00003bf3: PUSH2 0x3bfb 00003bf6: JUMPI 00003bf7: PUSH1 0x00 00003bf9: DUP1 00003bfa: REVERT 00003bfb: JUMPDEST 00003bfc: DUP8 00003bfd: CALLDATALOAD 00003bfe: PUSH2 0x3c06 00003c01: DUP2 00003c02: PUSH2 0x3580 00003c05: JUMP 00003c06: JUMPDEST 00003c07: SWAP7 00003c08: POP 00003c09: PUSH1 0x20 00003c0b: DUP9 00003c0c: ADD 00003c0d: CALLDATALOAD 00003c0e: PUSH2 0x3c16 00003c11: DUP2 00003c12: PUSH2 0x3580 00003c15: JUMP 00003c16: JUMPDEST 00003c17: SWAP6 00003c18: POP 00003c19: PUSH1 0x40 00003c1b: DUP9 00003c1c: ADD 00003c1d: CALLDATALOAD 00003c1e: PUSH2 0x3c26 00003c21: DUP2 00003c22: PUSH2 0x3580 00003c25: JUMP 00003c26: JUMPDEST 00003c27: SWAP5 00003c28: POP 00003c29: PUSH2 0x3c34 00003c2c: PUSH1 0x60 00003c2e: DUP10 00003c2f: ADD 00003c30: PUSH2 0x3907 00003c33: JUMP 00003c34: JUMPDEST 00003c35: SWAP4 00003c36: POP 00003c37: PUSH2 0x0160 00003c3a: PUSH1 0x7f 00003c3c: NOT 00003c3d: DUP3 00003c3e: ADD 00003c3f: SLT 00003c40: ISZERO 00003c41: PUSH2 0x3c49 00003c44: JUMPI 00003c45: PUSH1 0x00 00003c47: DUP1 00003c48: REVERT 00003c49: JUMPDEST 00003c4a: POP 00003c4b: PUSH1 0x80 00003c4d: DUP8 00003c4e: ADD 00003c4f: SWAP2 00003c50: POP 00003c51: PUSH2 0x01e0 00003c54: DUP8 00003c55: ADD 00003c56: CALLDATALOAD 00003c57: PUSH8 0xffffffffffffffff 00003c60: DUP2 00003c61: GT 00003c62: ISZERO 00003c63: PUSH2 0x3c6b 00003c66: JUMPI 00003c67: PUSH1 0x00 00003c69: DUP1 00003c6a: REVERT 00003c6b: JUMPDEST 00003c6c: DUP8 00003c6d: ADD 00003c6e: PUSH1 0x40 00003c70: DUP2 00003c71: DUP11 00003c72: SUB 00003c73: SLT 00003c74: ISZERO 00003c75: PUSH2 0x399f 00003c78: JUMPI 00003c79: PUSH1 0x00 00003c7b: DUP1 00003c7c: REVERT 00003c7d: JUMPDEST 00003c7e: PUSH1 0x00 00003c80: DUP1 00003c81: PUSH1 0x40 00003c83: DUP4 00003c84: DUP6 00003c85: SUB 00003c86: SLT 00003c87: ISZERO 00003c88: PUSH2 0x3c90 00003c8b: JUMPI 00003c8c: PUSH1 0x00 00003c8e: DUP1 00003c8f: REVERT 00003c90: JUMPDEST 00003c91: DUP3 00003c92: CALLDATALOAD 00003c93: PUSH2 0x3c9b 00003c96: DUP2 00003c97: PUSH2 0x3580 00003c9a: JUMP 00003c9b: JUMPDEST 00003c9c: SWAP2 00003c9d: POP 00003c9e: PUSH1 0x20 00003ca0: DUP4 00003ca1: ADD 00003ca2: CALLDATALOAD 00003ca3: PUSH2 0x3a5f 00003ca6: DUP2 00003ca7: PUSH2 0x3580 00003caa: JUMP 00003cab: JUMPDEST 00003cac: PUSH1 0x01 00003cae: DUP2 00003caf: DUP2 00003cb0: SHR 00003cb1: SWAP1 00003cb2: DUP3 00003cb3: AND 00003cb4: DUP1 00003cb5: PUSH2 0x3cbf 00003cb8: JUMPI 00003cb9: PUSH1 0x7f 00003cbb: DUP3 00003cbc: AND 00003cbd: SWAP2 00003cbe: POP 00003cbf: JUMPDEST 00003cc0: PUSH1 0x20 00003cc2: DUP3 00003cc3: LT 00003cc4: DUP2 00003cc5: SUB 00003cc6: PUSH2 0x3cdf 00003cc9: JUMPI 00003cca: PUSH4 0x4e487b71 00003ccf: PUSH1 0xe0 00003cd1: SHL 00003cd2: PUSH1 0x00 00003cd4: MSTORE 00003cd5: PUSH1 0x22 00003cd7: PUSH1 0x04 00003cd9: MSTORE 00003cda: PUSH1 0x24 00003cdc: PUSH1 0x00 00003cde: REVERT 00003cdf: JUMPDEST 00003ce0: POP 00003ce1: SWAP2 00003ce2: SWAP1 00003ce3: POP 00003ce4: JUMP 00003ce5: JUMPDEST 00003ce6: PUSH1 0x00 00003ce8: PUSH1 0x60 00003cea: DUP3 00003ceb: ADD 00003cec: PUSH1 0x01 00003cee: PUSH1 0x01 00003cf0: PUSH1 0xa0 00003cf2: SHL 00003cf3: SUB 00003cf4: DUP1 00003cf5: DUP8 00003cf6: AND 00003cf7: DUP5 00003cf8: MSTORE 00003cf9: PUSH1 0x20 00003cfb: DUP2 00003cfc: DUP8 00003cfd: AND 00003cfe: PUSH1 0x20 00003d00: DUP7 00003d01: ADD 00003d02: MSTORE 00003d03: PUSH1 0x60 00003d05: PUSH1 0x40 00003d07: DUP7 00003d08: ADD 00003d09: MSTORE 00003d0a: DUP3 00003d0b: SWAP2 00003d0c: POP 00003d0d: DUP6 00003d0e: MLOAD 00003d0f: DUP1 00003d10: DUP5 00003d11: MSTORE 00003d12: PUSH1 0x80 00003d14: DUP7 00003d15: ADD 00003d16: SWAP3 00003d17: POP 00003d18: PUSH1 0x80 00003d1a: DUP2 00003d1b: PUSH1 0x05 00003d1d: SHL 00003d1e: DUP8 00003d1f: ADD 00003d20: ADD 00003d21: SWAP4 00003d22: POP 00003d23: PUSH1 0x20 00003d25: DUP8 00003d26: ADD 00003d27: PUSH1 0x00 00003d29: JUMPDEST 00003d2a: DUP3 00003d2b: DUP2 00003d2c: LT 00003d2d: ISZERO 00003d2e: PUSH2 0x3d57 00003d31: JUMPI 00003d32: PUSH1 0x7f 00003d34: NOT 00003d35: DUP9 00003d36: DUP8 00003d37: SUB 00003d38: ADD 00003d39: DUP6 00003d3a: MSTORE 00003d3b: PUSH2 0x3d45 00003d3e: DUP7 00003d3f: DUP4 00003d40: MLOAD 00003d41: PUSH2 0x3541 00003d44: JUMP 00003d45: JUMPDEST 00003d46: SWAP6 00003d47: POP 00003d48: SWAP4 00003d49: DUP4 00003d4a: ADD 00003d4b: SWAP4 00003d4c: SWAP1 00003d4d: DUP4 00003d4e: ADD 00003d4f: SWAP1 00003d50: PUSH1 0x01 00003d52: ADD 00003d53: PUSH2 0x3d29 00003d56: JUMP 00003d57: JUMPDEST 00003d58: POP 00003d59: SWAP4 00003d5a: SWAP10 00003d5b: SWAP9 00003d5c: POP 00003d5d: POP 00003d5e: POP 00003d5f: POP 00003d60: POP 00003d61: POP 00003d62: POP 00003d63: POP 00003d64: POP 00003d65: JUMP 00003d66: JUMPDEST 00003d67: PUSH1 0x00 00003d69: PUSH1 0x20 00003d6b: DUP3 00003d6c: DUP5 00003d6d: SUB 00003d6e: SLT 00003d6f: ISZERO 00003d70: PUSH2 0x3d78 00003d73: JUMPI 00003d74: PUSH1 0x00 00003d76: DUP1 00003d77: REVERT 00003d78: JUMPDEST 00003d79: POP 00003d7a: MLOAD 00003d7b: SWAP2 00003d7c: SWAP1 00003d7d: POP 00003d7e: JUMP 00003d7f: JUMPDEST 00003d80: PUSH1 0x00 00003d82: PUSH1 0x20 00003d84: DUP3 00003d85: DUP5 00003d86: SUB 00003d87: SLT 00003d88: ISZERO 00003d89: PUSH2 0x3d91 00003d8c: JUMPI 00003d8d: PUSH1 0x00 00003d8f: DUP1 00003d90: REVERT 00003d91: JUMPDEST 00003d92: DUP2 00003d93: MLOAD 00003d94: PUSH1 0xff 00003d96: DUP2 00003d97: AND 00003d98: DUP2 00003d99: EQ 00003d9a: PUSH2 0x2a8d 00003d9d: JUMPI 00003d9e: PUSH1 0x00 00003da0: DUP1 00003da1: REVERT 00003da2: JUMPDEST 00003da3: PUSH4 0x4e487b71 00003da8: PUSH1 0xe0 00003daa: SHL 00003dab: PUSH1 0x00 00003dad: MSTORE 00003dae: PUSH1 0x11 00003db0: PUSH1 0x04 00003db2: MSTORE 00003db3: PUSH1 0x24 00003db5: PUSH1 0x00 00003db7: REVERT 00003db8: JUMPDEST 00003db9: PUSH1 0x01 00003dbb: DUP2 00003dbc: DUP2 00003dbd: JUMPDEST 00003dbe: DUP1 00003dbf: DUP6 00003dc0: GT 00003dc1: ISZERO 00003dc2: PUSH2 0x3df3 00003dc5: JUMPI 00003dc6: DUP2 00003dc7: PUSH1 0x00 00003dc9: NOT 00003dca: DIV 00003dcb: DUP3 00003dcc: GT 00003dcd: ISZERO 00003dce: PUSH2 0x3dd9 00003dd1: JUMPI 00003dd2: PUSH2 0x3dd9 00003dd5: PUSH2 0x3da2 00003dd8: JUMP 00003dd9: JUMPDEST 00003dda: DUP1 00003ddb: DUP6 00003ddc: AND 00003ddd: ISZERO 00003dde: PUSH2 0x3de6 00003de1: JUMPI 00003de2: SWAP2 00003de3: DUP2 00003de4: MUL 00003de5: SWAP2 00003de6: JUMPDEST 00003de7: SWAP4 00003de8: DUP5 00003de9: SHR 00003dea: SWAP4 00003deb: SWAP1 00003dec: DUP1 00003ded: MUL 00003dee: SWAP1 00003def: PUSH2 0x3dbd 00003df2: JUMP 00003df3: JUMPDEST 00003df4: POP 00003df5: SWAP3 00003df6: POP 00003df7: SWAP3 00003df8: SWAP1 00003df9: POP 00003dfa: JUMP 00003dfb: JUMPDEST 00003dfc: PUSH1 0x00 00003dfe: DUP3 00003dff: PUSH2 0x3e0a 00003e02: JUMPI 00003e03: POP 00003e04: PUSH1 0x01 00003e06: PUSH2 0x0874 00003e09: JUMP 00003e0a: JUMPDEST 00003e0b: DUP2 00003e0c: PUSH2 0x3e17 00003e0f: JUMPI 00003e10: POP 00003e11: PUSH1 0x00 00003e13: PUSH2 0x0874 00003e16: JUMP 00003e17: JUMPDEST 00003e18: DUP2 00003e19: PUSH1 0x01 00003e1b: DUP2 00003e1c: EQ 00003e1d: PUSH2 0x3e2d 00003e20: JUMPI 00003e21: PUSH1 0x02 00003e23: DUP2 00003e24: EQ 00003e25: PUSH2 0x3e37 00003e28: JUMPI 00003e29: PUSH2 0x3e53 00003e2c: JUMP 00003e2d: JUMPDEST 00003e2e: PUSH1 0x01 00003e30: SWAP2 00003e31: POP 00003e32: POP 00003e33: PUSH2 0x0874 00003e36: JUMP 00003e37: JUMPDEST 00003e38: PUSH1 0xff 00003e3a: DUP5 00003e3b: GT 00003e3c: ISZERO 00003e3d: PUSH2 0x3e48 00003e40: JUMPI 00003e41: PUSH2 0x3e48 00003e44: PUSH2 0x3da2 00003e47: JUMP 00003e48: JUMPDEST 00003e49: POP 00003e4a: POP 00003e4b: PUSH1 0x01 00003e4d: DUP3 00003e4e: SHL 00003e4f: PUSH2 0x0874 00003e52: JUMP 00003e53: JUMPDEST 00003e54: POP 00003e55: PUSH1 0x20 00003e57: DUP4 00003e58: LT 00003e59: PUSH2 0x0133 00003e5c: DUP4 00003e5d: LT 00003e5e: AND 00003e5f: PUSH1 0x4e 00003e61: DUP5 00003e62: LT 00003e63: PUSH1 0x0b 00003e65: DUP5 00003e66: LT 00003e67: AND 00003e68: OR 00003e69: ISZERO 00003e6a: PUSH2 0x3e76 00003e6d: JUMPI 00003e6e: POP 00003e6f: DUP2 00003e70: DUP2 00003e71: EXP 00003e72: PUSH2 0x0874 00003e75: JUMP 00003e76: JUMPDEST 00003e77: PUSH2 0x3e80 00003e7a: DUP4 00003e7b: DUP4 00003e7c: PUSH2 0x3db8 00003e7f: JUMP 00003e80: JUMPDEST 00003e81: DUP1 00003e82: PUSH1 0x00 00003e84: NOT 00003e85: DIV 00003e86: DUP3 00003e87: GT 00003e88: ISZERO 00003e89: PUSH2 0x3e94 00003e8c: JUMPI 00003e8d: PUSH2 0x3e94 00003e90: PUSH2 0x3da2 00003e93: JUMP 00003e94: JUMPDEST 00003e95: MUL 00003e96: SWAP4 00003e97: SWAP3 00003e98: POP 00003e99: POP 00003e9a: POP 00003e9b: JUMP 00003e9c: JUMPDEST 00003e9d: PUSH1 0x00 00003e9f: PUSH2 0x2a8d 00003ea2: PUSH1 0xff 00003ea4: DUP5 00003ea5: AND 00003ea6: DUP4 00003ea7: PUSH2 0x3dfb 00003eaa: JUMP 00003eab: JUMPDEST 00003eac: DUP1 00003ead: DUP3 00003eae: MUL 00003eaf: DUP2 00003eb0: ISZERO 00003eb1: DUP3 00003eb2: DUP3 00003eb3: DIV 00003eb4: DUP5 00003eb5: EQ 00003eb6: OR 00003eb7: PUSH2 0x0874 00003eba: JUMPI 00003ebb: PUSH2 0x0874 00003ebe: PUSH2 0x3da2 00003ec1: JUMP 00003ec2: JUMPDEST 00003ec3: PUSH1 0x00 00003ec5: DUP3 00003ec6: PUSH2 0x3edf 00003ec9: JUMPI 00003eca: PUSH4 0x4e487b71 00003ecf: PUSH1 0xe0 00003ed1: SHL 00003ed2: PUSH1 0x00 00003ed4: MSTORE 00003ed5: PUSH1 0x12 00003ed7: PUSH1 0x04 00003ed9: MSTORE 00003eda: PUSH1 0x24 00003edc: PUSH1 0x00 00003ede: REVERT 00003edf: JUMPDEST 00003ee0: POP 00003ee1: DIV 00003ee2: SWAP1 00003ee3: JUMP 00003ee4: JUMPDEST 00003ee5: DUP1 00003ee6: DUP3 00003ee7: ADD 00003ee8: DUP1 00003ee9: DUP3 00003eea: GT 00003eeb: ISZERO 00003eec: PUSH2 0x0874 00003eef: JUMPI 00003ef0: PUSH2 0x0874 00003ef3: PUSH2 0x3da2 00003ef6: JUMP 00003ef7: JUMPDEST 00003ef8: PUSH1 0x01 00003efa: PUSH1 0x01 00003efc: PUSH1 0xa0 00003efe: SHL 00003eff: SUB 00003f00: DUP5 00003f01: DUP2 00003f02: AND 00003f03: DUP3 00003f04: MSTORE 00003f05: PUSH1 0x01 00003f07: PUSH1 0x01 00003f09: PUSH1 0x80 00003f0b: SHL 00003f0c: SUB 00003f0d: DUP5 00003f0e: DUP2 00003f0f: AND 00003f10: PUSH1 0x20 00003f12: DUP5 00003f13: ADD 00003f14: MSTORE 00003f15: DUP4 00003f16: SLOAD 00003f17: DUP1 00003f18: DUP4 00003f19: AND 00003f1a: PUSH1 0x40 00003f1c: DUP6 00003f1d: ADD 00003f1e: MSTORE 00003f1f: PUSH1 0xa0 00003f21: SHR 00003f22: PUSH6 0xffffffffffff 00003f29: SWAP1 00003f2a: DUP2 00003f2b: AND 00003f2c: PUSH1 0x60 00003f2e: DUP6 00003f2f: ADD 00003f30: MSTORE 00003f31: PUSH1 0x01 00003f33: DUP6 00003f34: ADD 00003f35: SLOAD 00003f36: DUP1 00003f37: DUP5 00003f38: AND 00003f39: PUSH1 0x80 00003f3b: DUP7 00003f3c: ADD 00003f3d: MSTORE 00003f3e: PUSH2 0x01a0 00003f41: DUP6 00003f42: ADD 00003f43: SWAP4 00003f44: SWAP3 00003f45: SWAP2 00003f46: PUSH2 0x3f5e 00003f49: PUSH1 0xa0 00003f4b: DUP8 00003f4c: ADD 00003f4d: DUP3 00003f4e: DUP5 00003f4f: PUSH1 0xa0 00003f51: SHR 00003f52: AND 00003f53: PUSH6 0xffffffffffff 00003f5a: AND 00003f5b: SWAP1 00003f5c: MSTORE 00003f5d: JUMP 00003f5e: JUMPDEST 00003f5f: POP 00003f60: POP 00003f61: PUSH1 0x02 00003f63: DUP6 00003f64: ADD 00003f65: SLOAD 00003f66: SWAP1 00003f67: DUP2 00003f68: AND 00003f69: PUSH1 0x01 00003f6b: PUSH1 0x01 00003f6d: PUSH1 0x80 00003f6f: SHL 00003f70: SUB 00003f71: AND 00003f72: PUSH1 0xc0 00003f74: DUP6 00003f75: ADD 00003f76: MSTORE 00003f77: PUSH1 0x80 00003f79: SHR 00003f7a: PUSH1 0xe0 00003f7c: DUP1 00003f7d: DUP6 00003f7e: ADD 00003f7f: SWAP2 00003f80: SWAP1 00003f81: SWAP2 00003f82: MSTORE 00003f83: PUSH1 0x03 00003f85: DUP6 00003f86: ADD 00003f87: SLOAD 00003f88: PUSH8 0xffffffffffffffff 00003f91: DUP2 00003f92: AND 00003f93: PUSH2 0x0100 00003f96: DUP7 00003f97: ADD 00003f98: MSTORE 00003f99: PUSH1 0x40 00003f9b: DUP2 00003f9c: SWAP1 00003f9d: SHR 00003f9e: PUSH1 0x01 00003fa0: PUSH1 0x01 00003fa2: PUSH1 0xa0 00003fa4: SHL 00003fa5: SUB 00003fa6: SWAP1 00003fa7: DUP2 00003fa8: AND 00003fa9: PUSH2 0x0120 00003fac: DUP8 00003fad: ADD 00003fae: MSTORE 00003faf: SWAP2 00003fb0: DUP2 00003fb1: SWAP1 00003fb2: SHR 00003fb3: PUSH1 0xff 00003fb5: SWAP1 00003fb6: DUP2 00003fb7: AND 00003fb8: ISZERO 00003fb9: ISZERO 00003fba: PUSH2 0x0140 00003fbd: DUP8 00003fbe: ADD 00003fbf: MSTORE 00003fc0: PUSH1 0xe8 00003fc2: SWAP2 00003fc3: SWAP1 00003fc4: SWAP2 00003fc5: SHR 00003fc6: AND 00003fc7: ISZERO 00003fc8: ISZERO 00003fc9: PUSH2 0x0160 00003fcc: DUP6 00003fcd: ADD 00003fce: MSTORE 00003fcf: PUSH1 0x04 00003fd1: DUP6 00003fd2: ADD 00003fd3: SLOAD 00003fd4: AND 00003fd5: PUSH2 0x0180 00003fd8: DUP5 00003fd9: ADD 00003fda: MSTORE 00003fdb: POP 00003fdc: PUSH2 0x2cc3 00003fdf: JUMP 00003fe0: JUMPDEST 00003fe1: PUSH1 0x00 00003fe3: DUP1 00003fe4: PUSH1 0x40 00003fe6: DUP4 00003fe7: DUP6 00003fe8: SUB 00003fe9: SLT 00003fea: ISZERO 00003feb: PUSH2 0x3ff3 00003fee: JUMPI 00003fef: PUSH1 0x00 00003ff1: DUP1 00003ff2: REVERT 00003ff3: JUMPDEST 00003ff4: DUP3 00003ff5: MLOAD 00003ff6: PUSH2 0x3ffe 00003ff9: DUP2 00003ffa: PUSH2 0x3b1d 00003ffd: JUMP 00003ffe: JUMPDEST 00003fff: PUSH1 0x20 00004001: DUP5 00004002: ADD 00004003: MLOAD 00004004: SWAP1 00004005: SWAP3 00004006: POP 00004007: PUSH2 0x3a5f 0000400a: DUP2 0000400b: PUSH2 0x3b1d 0000400e: JUMP 0000400f: JUMPDEST 00004010: PUSH1 0x00 00004012: PUSH1 0x20 00004014: DUP3 00004015: DUP5 00004016: SUB 00004017: SLT 00004018: ISZERO 00004019: PUSH2 0x4021 0000401c: JUMPI 0000401d: PUSH1 0x00 0000401f: DUP1 00004020: REVERT 00004021: JUMPDEST 00004022: DUP2 00004023: CALLDATALOAD 00004024: PUSH2 0x2a8d 00004027: DUP2 00004028: PUSH2 0x3b1d 0000402b: JUMP 0000402c: JUMPDEST 0000402d: PUSH6 0xffffffffffff 00004034: DUP2 00004035: AND 00004036: DUP2 00004037: EQ 00004038: PUSH2 0x351a 0000403b: JUMPI 0000403c: PUSH1 0x00 0000403e: DUP1 0000403f: REVERT 00004040: JUMPDEST 00004041: PUSH1 0x00 00004043: PUSH1 0x20 00004045: DUP3 00004046: DUP5 00004047: SUB 00004048: SLT 00004049: ISZERO 0000404a: PUSH2 0x4052 0000404d: JUMPI 0000404e: PUSH1 0x00 00004050: DUP1 00004051: REVERT 00004052: JUMPDEST 00004053: DUP2 00004054: CALLDATALOAD 00004055: PUSH2 0x2a8d 00004058: DUP2 00004059: PUSH2 0x402c 0000405c: JUMP 0000405d: JUMPDEST 0000405e: PUSH6 0xffffffffffff 00004065: DUP2 00004066: DUP2 00004067: AND 00004068: DUP4 00004069: DUP3 0000406a: AND 0000406b: ADD 0000406c: SWAP1 0000406d: DUP1 0000406e: DUP3 0000406f: GT 00004070: ISZERO 00004071: PUSH2 0x407c 00004074: JUMPI 00004075: PUSH2 0x407c 00004078: PUSH2 0x3da2 0000407b: JUMP 0000407c: JUMPDEST 0000407d: POP 0000407e: SWAP3 0000407f: SWAP2 00004080: POP 00004081: POP 00004082: JUMP 00004083: JUMPDEST 00004084: PUSH8 0xffffffffffffffff 0000408d: DUP2 0000408e: AND 0000408f: DUP2 00004090: EQ 00004091: PUSH2 0x351a 00004094: JUMPI 00004095: PUSH1 0x00 00004097: DUP1 00004098: REVERT 00004099: JUMPDEST 0000409a: PUSH1 0x00 0000409c: PUSH1 0x20 0000409e: DUP3 0000409f: DUP5 000040a0: SUB 000040a1: SLT 000040a2: ISZERO 000040a3: PUSH2 0x40ab 000040a6: JUMPI 000040a7: PUSH1 0x00 000040a9: DUP1 000040aa: REVERT 000040ab: JUMPDEST 000040ac: DUP2 000040ad: CALLDATALOAD 000040ae: PUSH2 0x2a8d 000040b1: DUP2 000040b2: PUSH2 0x4083 000040b5: JUMP 000040b6: JUMPDEST 000040b7: PUSH1 0x00 000040b9: DUP2 000040ba: CALLDATALOAD 000040bb: PUSH2 0x0874 000040be: DUP2 000040bf: PUSH2 0x4083 000040c2: JUMP 000040c3: JUMPDEST 000040c4: PUSH1 0x00 000040c6: DUP2 000040c7: CALLDATALOAD 000040c8: PUSH2 0x0874 000040cb: DUP2 000040cc: PUSH2 0x3580 000040cf: JUMP 000040d0: JUMPDEST 000040d1: PUSH1 0x00 000040d3: DUP2 000040d4: CALLDATALOAD 000040d5: PUSH2 0x0874 000040d8: DUP2 000040d9: PUSH2 0x39ad 000040dc: JUMP 000040dd: JUMPDEST 000040de: DUP2 000040df: CALLDATALOAD 000040e0: PUSH2 0x40e8 000040e3: DUP2 000040e4: PUSH2 0x4083 000040e7: JUMP 000040e8: JUMPDEST 000040e9: PUSH8 0xffffffffffffffff 000040f2: DUP2 000040f3: AND 000040f4: SWAP1 000040f5: POP 000040f6: DUP2 000040f7: SLOAD 000040f8: DUP2 000040f9: PUSH8 0xffffffffffffffff 00004102: NOT 00004103: DUP3 00004104: AND 00004105: OR 00004106: DUP4 00004107: SSTORE 00004108: PUSH1 0x20 0000410a: DUP5 0000410b: ADD 0000410c: CALLDATALOAD 0000410d: PUSH2 0x4115 00004110: DUP2 00004111: PUSH2 0x3580 00004114: JUMP 00004115: JUMPDEST 00004116: PUSH28 0xffffffffffffffffffffffffffffffffffffffff0000000000000000 00004133: DUP2 00004134: PUSH1 0x40 00004136: SHL 00004137: AND 00004138: DUP4 00004139: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 0000415a: DUP5 0000415b: AND 0000415c: OR 0000415d: OR 0000415e: DUP5 0000415f: SSTORE 00004160: POP 00004161: POP 00004162: POP 00004163: PUSH1 0x40 00004165: DUP3 00004166: ADD 00004167: CALLDATALOAD 00004168: PUSH2 0x4170 0000416b: DUP2 0000416c: PUSH2 0x39ad 0000416f: JUMP 00004170: JUMPDEST 00004171: DUP2 00004172: SLOAD 00004173: PUSH1 0xff 00004175: PUSH1 0xe0 00004177: SHL 00004178: NOT 00004179: AND 0000417a: DUP2 0000417b: ISZERO 0000417c: ISZERO 0000417d: PUSH1 0xe0 0000417f: SHL 00004180: PUSH1 0xff 00004182: PUSH1 0xe0 00004184: SHL 00004185: AND 00004186: OR 00004187: DUP3 00004188: SSTORE 00004189: POP 0000418a: PUSH1 0x60 0000418c: DUP3 0000418d: ADD 0000418e: CALLDATALOAD 0000418f: PUSH2 0x4197 00004192: DUP2 00004193: PUSH2 0x39ad 00004196: JUMP 00004197: JUMPDEST 00004198: DUP2 00004199: SLOAD 0000419a: PUSH1 0xff 0000419c: PUSH1 0xe8 0000419e: SHL 0000419f: NOT 000041a0: AND 000041a1: DUP2 000041a2: ISZERO 000041a3: ISZERO 000041a4: PUSH1 0xe8 000041a6: SHL 000041a7: PUSH1 0xff 000041a9: PUSH1 0xe8 000041ab: SHL 000041ac: AND 000041ad: OR 000041ae: DUP3 000041af: SSTORE 000041b0: POP 000041b1: PUSH1 0x80 000041b3: DUP3 000041b4: ADD 000041b5: CALLDATALOAD 000041b6: PUSH2 0x41be 000041b9: DUP2 000041ba: PUSH2 0x3580 000041bd: JUMP 000041be: JUMPDEST 000041bf: PUSH1 0x01 000041c1: DUP3 000041c2: ADD 000041c3: DUP1 000041c4: SLOAD 000041c5: PUSH1 0x01 000041c7: PUSH1 0x01 000041c9: PUSH1 0xa0 000041cb: SHL 000041cc: SUB 000041cd: NOT 000041ce: AND 000041cf: PUSH1 0x01 000041d1: PUSH1 0x01 000041d3: PUSH1 0xa0 000041d5: SHL 000041d6: SUB 000041d7: DUP4 000041d8: AND 000041d9: OR 000041da: SWAP1 000041db: SSTORE 000041dc: POP 000041dd: POP 000041de: POP 000041df: JUMP 000041e0: JUMPDEST 000041e1: PUSH1 0x00 000041e3: DUP2 000041e4: CALLDATALOAD 000041e5: PUSH2 0x0874 000041e8: DUP2 000041e9: PUSH2 0x3b1d 000041ec: JUMP 000041ed: JUMPDEST 000041ee: PUSH1 0x00 000041f0: DUP2 000041f1: CALLDATALOAD 000041f2: PUSH2 0x0874 000041f5: DUP2 000041f6: PUSH2 0x402c 000041f9: JUMP 000041fa: JUMPDEST 000041fb: PUSH1 0x00 000041fd: DUP2 000041fe: CALLDATALOAD 000041ff: PUSH4 0xffffffff 00004204: DUP2 00004205: AND 00004206: DUP2 00004207: EQ 00004208: PUSH2 0x0874 0000420b: JUMPI 0000420c: PUSH1 0x00 0000420e: DUP1 0000420f: REVERT 00004210: JUMPDEST 00004211: DUP2 00004212: CALLDATALOAD 00004213: PUSH2 0x421b 00004216: DUP2 00004217: PUSH2 0x3b1d 0000421a: JUMP 0000421b: JUMPDEST 0000421c: DUP2 0000421d: SLOAD 0000421e: PUSH1 0x01 00004220: PUSH1 0x01 00004222: PUSH1 0x80 00004224: SHL 00004225: SUB 00004226: NOT 00004227: AND 00004228: PUSH1 0x01 0000422a: PUSH1 0x01 0000422c: PUSH1 0x80 0000422e: SHL 0000422f: SUB 00004230: DUP3 00004231: AND 00004232: OR 00004233: DUP3 00004234: SSTORE 00004235: POP 00004236: PUSH1 0x20 00004238: DUP3 00004239: ADD 0000423a: CALLDATALOAD 0000423b: PUSH2 0x4243 0000423e: DUP2 0000423f: PUSH2 0x402c 00004242: JUMP 00004243: JUMPDEST 00004244: DUP2 00004245: SLOAD 00004246: PUSH32 0xffffffffffffffffffff000000000000ffffffffffffffffffffffffffffffff 00004267: AND 00004268: PUSH1 0x80 0000426a: SWAP2 0000426b: SWAP1 0000426c: SWAP2 0000426d: SHL 0000426e: PUSH22 0xffffffffffff00000000000000000000000000000000 00004285: AND 00004286: OR 00004287: DUP2 00004288: SSTORE 00004289: PUSH2 0x42e4 0000428c: PUSH2 0x4297 0000428f: PUSH1 0x40 00004291: DUP5 00004292: ADD 00004293: PUSH2 0x41ed 00004296: JUMP 00004297: JUMPDEST 00004298: DUP3 00004299: SLOAD 0000429a: PUSH32 0xffffffff000000000000ffffffffffffffffffffffffffffffffffffffffffff 000042bb: AND 000042bc: PUSH1 0xb0 000042be: SWAP2 000042bf: SWAP1 000042c0: SWAP2 000042c1: SHL 000042c2: PUSH28 0xffffffffffff00000000000000000000000000000000000000000000 000042df: AND 000042e0: OR 000042e1: DUP3 000042e2: SSTORE 000042e3: JUMP 000042e4: JUMPDEST 000042e5: PUSH2 0x4340 000042e8: PUSH2 0x42f3 000042eb: PUSH1 0x60 000042ed: DUP5 000042ee: ADD 000042ef: PUSH2 0x41fa 000042f2: JUMP 000042f3: JUMPDEST 000042f4: DUP3 000042f5: SLOAD 000042f6: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00004313: AND 00004314: PUSH1 0xe0 00004316: SWAP2 00004317: SWAP1 00004318: SWAP2 00004319: SHL 0000431a: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 0000433b: AND 0000433c: OR 0000433d: DUP3 0000433e: SSTORE 0000433f: JUMP 00004340: JUMPDEST 00004341: PUSH1 0x01 00004343: DUP2 00004344: ADD 00004345: PUSH2 0x436a 00004348: PUSH2 0x4353 0000434b: PUSH1 0x80 0000434d: DUP6 0000434e: ADD 0000434f: PUSH2 0x41fa 00004352: JUMP 00004353: JUMPDEST 00004354: DUP3 00004355: SLOAD 00004356: PUSH4 0xffffffff 0000435b: NOT 0000435c: AND 0000435d: PUSH4 0xffffffff 00004362: SWAP2 00004363: SWAP1 00004364: SWAP2 00004365: AND 00004366: OR 00004367: DUP3 00004368: SSTORE 00004369: JUMP 0000436a: JUMPDEST 0000436b: PUSH2 0x43a3 0000436e: PUSH2 0x4379 00004371: PUSH1 0xa0 00004373: DUP6 00004374: ADD 00004375: PUSH2 0x40b6 00004378: JUMP 00004379: JUMPDEST 0000437a: DUP3 0000437b: SLOAD 0000437c: PUSH12 0xffffffffffffffff00000000 00004389: NOT 0000438a: AND 0000438b: PUSH1 0x20 0000438d: SWAP2 0000438e: SWAP1 0000438f: SWAP2 00004390: SHL 00004391: PUSH12 0xffffffffffffffff00000000 0000439e: AND 0000439f: OR 000043a0: DUP3 000043a1: SSTORE 000043a2: JUMP 000043a3: JUMPDEST 000043a4: PUSH2 0x43f7 000043a7: PUSH2 0x43b2 000043aa: PUSH1 0xc0 000043ac: DUP6 000043ad: ADD 000043ae: PUSH2 0x40b6 000043b1: JUMP 000043b2: JUMPDEST 000043b3: DUP3 000043b4: SLOAD 000043b5: PUSH32 0xffffffffffffffffffffffff0000000000000000ffffffffffffffffffffffff 000043d6: AND 000043d7: PUSH1 0x60 000043d9: SWAP2 000043da: SWAP1 000043db: SWAP2 000043dc: SHL 000043dd: PUSH20 0xffffffffffffffff000000000000000000000000 000043f2: AND 000043f3: OR 000043f4: DUP3 000043f5: SSTORE 000043f6: JUMP 000043f7: JUMPDEST 000043f8: POP 000043f9: PUSH1 0x02 000043fb: DUP2 000043fc: ADD 000043fd: PUSH2 0x4428 00004400: PUSH2 0x440b 00004403: PUSH1 0xe0 00004405: DUP6 00004406: ADD 00004407: PUSH2 0x41e0 0000440a: JUMP 0000440b: JUMPDEST 0000440c: DUP3 0000440d: SLOAD 0000440e: PUSH1 0x01 00004410: PUSH1 0x01 00004412: PUSH1 0x80 00004414: SHL 00004415: SUB 00004416: NOT 00004417: AND 00004418: PUSH1 0x01 0000441a: PUSH1 0x01 0000441c: PUSH1 0x80 0000441e: SHL 0000441f: SUB 00004420: SWAP2 00004421: SWAP1 00004422: SWAP2 00004423: AND 00004424: OR 00004425: DUP3 00004426: SSTORE 00004427: JUMP 00004428: JUMPDEST 00004429: PUSH2 0x2920 0000442c: PUSH2 0x4438 0000442f: PUSH2 0x0100 00004432: DUP6 00004433: ADD 00004434: PUSH2 0x41e0 00004437: JUMP 00004438: JUMPDEST 00004439: DUP3 0000443a: SLOAD 0000443b: PUSH1 0x01 0000443d: PUSH1 0x01 0000443f: PUSH1 0x80 00004441: SHL 00004442: SUB 00004443: AND 00004444: PUSH1 0x80 00004446: SWAP2 00004447: SWAP1 00004448: SWAP2 00004449: SHL 0000444a: PUSH1 0x01 0000444c: PUSH1 0x01 0000444e: PUSH1 0x80 00004450: SHL 00004451: SUB 00004452: NOT 00004453: AND 00004454: OR 00004455: DUP3 00004456: SSTORE 00004457: JUMP 00004458: JUMPDEST 00004459: PUSH1 0x00 0000445b: PUSH2 0x2a8d 0000445e: DUP4 0000445f: DUP4 00004460: PUSH2 0x3dfb 00004463: JUMP 00004464: JUMPDEST 00004465: DUP2 00004466: DUP2 00004467: SUB 00004468: DUP2 00004469: DUP2 0000446a: GT 0000446b: ISZERO 0000446c: PUSH2 0x0874 0000446f: JUMPI 00004470: PUSH2 0x0874 00004473: PUSH2 0x3da2 00004476: JUMP 00004477: JUMPDEST 00004478: DUP2 00004479: CALLDATALOAD 0000447a: PUSH2 0x4482 0000447d: DUP2 0000447e: PUSH2 0x3580 00004481: JUMP 00004482: JUMPDEST 00004483: DUP2 00004484: SLOAD 00004485: PUSH1 0x01 00004487: PUSH1 0x01 00004489: PUSH1 0xa0 0000448b: SHL 0000448c: SUB 0000448d: NOT 0000448e: AND 0000448f: PUSH1 0x01 00004491: PUSH1 0x01 00004493: PUSH1 0xa0 00004495: SHL 00004496: SUB 00004497: DUP3 00004498: AND 00004499: OR 0000449a: DUP3 0000449b: SSTORE 0000449c: POP 0000449d: PUSH1 0x20 0000449f: DUP3 000044a0: ADD 000044a1: CALLDATALOAD 000044a2: PUSH2 0x44aa 000044a5: DUP2 000044a6: PUSH2 0x402c 000044a9: JUMP 000044aa: JUMPDEST 000044ab: DUP2 000044ac: SLOAD 000044ad: PUSH6 0xffffffffffff 000044b4: PUSH1 0xa0 000044b6: SHL 000044b7: NOT 000044b8: AND 000044b9: PUSH1 0xa0 000044bb: DUP3 000044bc: SWAP1 000044bd: SHL 000044be: PUSH6 0xffffffffffff 000044c5: PUSH1 0xa0 000044c7: SHL 000044c8: AND 000044c9: OR 000044ca: DUP3 000044cb: SSTORE 000044cc: POP 000044cd: PUSH1 0x01 000044cf: DUP2 000044d0: ADD 000044d1: PUSH1 0x40 000044d3: DUP4 000044d4: ADD 000044d5: CALLDATALOAD 000044d6: PUSH2 0x44de 000044d9: DUP2 000044da: PUSH2 0x3580 000044dd: JUMP 000044de: JUMPDEST 000044df: DUP2 000044e0: SLOAD 000044e1: PUSH1 0x01 000044e3: PUSH1 0x01 000044e5: PUSH1 0xa0 000044e7: SHL 000044e8: SUB 000044e9: NOT 000044ea: AND 000044eb: PUSH1 0x01 000044ed: PUSH1 0x01 000044ef: PUSH1 0xa0 000044f1: SHL 000044f2: SUB 000044f3: DUP3 000044f4: AND 000044f5: OR 000044f6: DUP3 000044f7: SSTORE 000044f8: POP 000044f9: PUSH1 0x60 000044fb: DUP4 000044fc: ADD 000044fd: CALLDATALOAD 000044fe: PUSH2 0x4506 00004501: DUP2 00004502: PUSH2 0x402c 00004505: JUMP 00004506: JUMPDEST 00004507: DUP2 00004508: SLOAD 00004509: PUSH6 0xffffffffffff 00004510: PUSH1 0xa0 00004512: SHL 00004513: NOT 00004514: AND 00004515: PUSH1 0xa0 00004517: DUP3 00004518: SWAP1 00004519: SHL 0000451a: PUSH6 0xffffffffffff 00004521: PUSH1 0xa0 00004523: SHL 00004524: AND 00004525: OR 00004526: DUP3 00004527: SSTORE 00004528: POP 00004529: POP 0000452a: PUSH1 0x02 0000452c: DUP2 0000452d: ADD 0000452e: PUSH1 0x80 00004530: DUP4 00004531: ADD 00004532: CALLDATALOAD 00004533: PUSH2 0x453b 00004536: DUP2 00004537: PUSH2 0x3b1d 0000453a: JUMP 0000453b: JUMPDEST 0000453c: DUP2 0000453d: SLOAD 0000453e: PUSH1 0x01 00004540: PUSH1 0x01 00004542: PUSH1 0x80 00004544: SHL 00004545: SUB 00004546: NOT 00004547: AND 00004548: PUSH1 0x01 0000454a: PUSH1 0x01 0000454c: PUSH1 0x80 0000454e: SHL 0000454f: SUB 00004550: DUP3 00004551: AND 00004552: OR 00004553: DUP3 00004554: SSTORE 00004555: POP 00004556: PUSH1 0xa0 00004558: DUP4 00004559: ADD 0000455a: CALLDATALOAD 0000455b: PUSH2 0x4563 0000455e: DUP2 0000455f: PUSH2 0x3b1d 00004562: JUMP 00004563: JUMPDEST 00004564: DUP2 00004565: SLOAD 00004566: PUSH1 0x01 00004568: PUSH1 0x01 0000456a: PUSH1 0x80 0000456c: SHL 0000456d: SUB 0000456e: AND 0000456f: PUSH1 0x80 00004571: DUP3 00004572: SWAP1 00004573: SHL 00004574: PUSH1 0x01 00004576: PUSH1 0x01 00004578: PUSH1 0x80 0000457a: SHL 0000457b: SUB 0000457c: NOT 0000457d: AND 0000457e: OR 0000457f: DUP3 00004580: SSTORE 00004581: POP 00004582: POP 00004583: PUSH1 0x03 00004585: DUP2 00004586: ADD 00004587: PUSH1 0xc0 00004589: DUP4 0000458a: ADD 0000458b: CALLDATALOAD 0000458c: PUSH2 0x4594 0000458f: DUP2 00004590: PUSH2 0x4083 00004593: JUMP 00004594: JUMPDEST 00004595: DUP2 00004596: SLOAD 00004597: PUSH1 0xe0 00004599: DUP6 0000459a: ADD 0000459b: CALLDATALOAD 0000459c: PUSH2 0x45a4 0000459f: DUP2 000045a0: PUSH2 0x3580 000045a3: JUMP 000045a4: JUMPDEST 000045a5: PUSH28 0xffffffffffffffffffffffffffffffffffffffff0000000000000000 000045c2: DUP2 000045c3: PUSH1 0x40 000045c5: SHL 000045c6: AND 000045c7: PUSH8 0xffffffffffffffff 000045d0: DUP5 000045d1: AND 000045d2: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 000045f3: DUP5 000045f4: AND 000045f5: OR 000045f6: OR 000045f7: DUP5 000045f8: SSTORE 000045f9: POP 000045fa: POP 000045fb: POP 000045fc: PUSH2 0x4629 000045ff: PUSH2 0x460b 00004602: PUSH2 0x0100 00004605: DUP6 00004606: ADD 00004607: PUSH2 0x40d0 0000460a: JUMP 0000460b: JUMPDEST 0000460c: DUP3 0000460d: DUP1 0000460e: SLOAD 0000460f: PUSH1 0xff 00004611: PUSH1 0xe0 00004613: SHL 00004614: NOT 00004615: AND 00004616: SWAP2 00004617: ISZERO 00004618: ISZERO 00004619: PUSH1 0xe0 0000461b: SHL 0000461c: PUSH1 0xff 0000461e: PUSH1 0xe0 00004620: SHL 00004621: AND 00004622: SWAP2 00004623: SWAP1 00004624: SWAP2 00004625: OR 00004626: SWAP1 00004627: SSTORE 00004628: JUMP 00004629: JUMPDEST 0000462a: PUSH2 0x4657 0000462d: PUSH2 0x4639 00004630: PUSH2 0x0120 00004633: DUP6 00004634: ADD 00004635: PUSH2 0x40d0 00004638: JUMP 00004639: JUMPDEST 0000463a: DUP3 0000463b: DUP1 0000463c: SLOAD 0000463d: PUSH1 0xff 0000463f: PUSH1 0xe8 00004641: SHL 00004642: NOT 00004643: AND 00004644: SWAP2 00004645: ISZERO 00004646: ISZERO 00004647: PUSH1 0xe8 00004649: SHL 0000464a: PUSH1 0xff 0000464c: PUSH1 0xe8 0000464e: SHL 0000464f: AND 00004650: SWAP2 00004651: SWAP1 00004652: SWAP2 00004653: OR 00004654: SWAP1 00004655: SSTORE 00004656: JUMP 00004657: JUMPDEST 00004658: POP 00004659: PUSH2 0x2d81 0000465c: PUSH2 0x4668 0000465f: PUSH2 0x0140 00004662: DUP5 00004663: ADD 00004664: PUSH2 0x40c3 00004667: JUMP 00004668: JUMPDEST 00004669: PUSH1 0x04 0000466b: DUP4 0000466c: ADD 0000466d: PUSH1 0x01 0000466f: PUSH1 0x01 00004671: PUSH1 0xa0 00004673: SHL 00004674: SUB 00004675: DUP3 00004676: AND 00004677: PUSH1 0x01 00004679: PUSH1 0x01 0000467b: PUSH1 0xa0 0000467d: SHL 0000467e: SUB 0000467f: NOT 00004680: DUP3 00004681: SLOAD 00004682: AND 00004683: OR 00004684: DUP2 00004685: SSTORE 00004686: POP 00004687: POP 00004688: JUMP 00004689: JUMPDEST 0000468a: PUSH1 0x00 0000468c: DUP3 0000468d: CALLDATALOAD 0000468e: PUSH1 0x7e 00004690: NOT 00004691: DUP4 00004692: CALLDATASIZE 00004693: SUB 00004694: ADD 00004695: DUP2 00004696: SLT 00004697: PUSH2 0x469f 0000469a: JUMPI 0000469b: PUSH1 0x00 0000469d: DUP1 0000469e: REVERT 0000469f: JUMPDEST 000046a0: SWAP2 000046a1: SWAP1 000046a2: SWAP2 000046a3: ADD 000046a4: SWAP3 000046a5: SWAP2 000046a6: POP 000046a7: POP 000046a8: JUMP 000046a9: JUMPDEST 000046aa: PUSH1 0x01 000046ac: PUSH1 0x01 000046ae: PUSH1 0x80 000046b0: SHL 000046b1: SUB 000046b2: DUP2 000046b3: DUP2 000046b4: AND 000046b5: DUP4 000046b6: DUP3 000046b7: AND 000046b8: ADD 000046b9: SWAP1 000046ba: DUP1 000046bb: DUP3 000046bc: GT 000046bd: ISZERO 000046be: PUSH2 0x407c 000046c1: JUMPI 000046c2: PUSH2 0x407c 000046c5: PUSH2 0x3da2 000046c8: JUMP 000046c9: JUMPDEST 000046ca: PUSH1 0x00 000046cc: DUP1 000046cd: DUP4 000046ce: CALLDATALOAD 000046cf: PUSH1 0x1e 000046d1: NOT 000046d2: DUP5 000046d3: CALLDATASIZE 000046d4: SUB 000046d5: ADD 000046d6: DUP2 000046d7: SLT 000046d8: PUSH2 0x46e0 000046db: JUMPI 000046dc: PUSH1 0x00 000046de: DUP1 000046df: REVERT 000046e0: JUMPDEST 000046e1: DUP4 000046e2: ADD 000046e3: DUP1 000046e4: CALLDATALOAD 000046e5: SWAP2 000046e6: POP 000046e7: PUSH8 0xffffffffffffffff 000046f0: DUP3 000046f1: GT 000046f2: ISZERO 000046f3: PUSH2 0x46fb 000046f6: JUMPI 000046f7: PUSH1 0x00 000046f9: DUP1 000046fa: REVERT 000046fb: JUMPDEST 000046fc: PUSH1 0x20 000046fe: ADD 000046ff: SWAP2 00004700: POP 00004701: CALLDATASIZE 00004702: DUP2 00004703: SWAP1 00004704: SUB 00004705: DUP3 00004706: SGT 00004707: ISZERO 00004708: PUSH2 0x4710 0000470b: JUMPI 0000470c: PUSH1 0x00 0000470e: DUP1 0000470f: REVERT 00004710: JUMPDEST 00004711: SWAP3 00004712: POP 00004713: SWAP3 00004714: SWAP1 00004715: POP 00004716: JUMP 00004717: JUMPDEST 00004718: PUSH1 0x00 0000471a: PUSH1 0x20 0000471c: DUP3 0000471d: DUP5 0000471e: SUB 0000471f: SLT 00004720: ISZERO 00004721: PUSH2 0x4729 00004724: JUMPI 00004725: PUSH1 0x00 00004727: DUP1 00004728: REVERT 00004729: JUMPDEST 0000472a: DUP2 0000472b: MLOAD 0000472c: PUSH8 0xffffffffffffffff 00004735: DUP2 00004736: GT 00004737: ISZERO 00004738: PUSH2 0x4740 0000473b: JUMPI 0000473c: PUSH1 0x00 0000473e: DUP1 0000473f: REVERT 00004740: JUMPDEST 00004741: DUP3 00004742: ADD 00004743: PUSH1 0x1f 00004745: DUP2 00004746: ADD 00004747: DUP5 00004748: SGT 00004749: PUSH2 0x4751 0000474c: JUMPI 0000474d: PUSH1 0x00 0000474f: DUP1 00004750: REVERT 00004751: JUMPDEST 00004752: DUP1 00004753: MLOAD 00004754: PUSH2 0x475f 00004757: PUSH2 0x36c9 0000475a: DUP3 0000475b: PUSH2 0x3608 0000475e: JUMP 0000475f: JUMPDEST 00004760: DUP2 00004761: DUP2 00004762: MSTORE 00004763: DUP6 00004764: PUSH1 0x20 00004766: DUP4 00004767: DUP6 00004768: ADD 00004769: ADD 0000476a: GT 0000476b: ISZERO 0000476c: PUSH2 0x4774 0000476f: JUMPI 00004770: PUSH1 0x00 00004772: DUP1 00004773: REVERT 00004774: JUMPDEST 00004775: PUSH2 0x4785 00004778: DUP3 00004779: PUSH1 0x20 0000477b: DUP4 0000477c: ADD 0000477d: PUSH1 0x20 0000477f: DUP7 00004780: ADD 00004781: PUSH2 0x351d 00004784: JUMP 00004785: JUMPDEST 00004786: SWAP6 00004787: SWAP5 00004788: POP 00004789: POP 0000478a: POP 0000478b: POP 0000478c: POP 0000478d: JUMP 0000478e: JUMPDEST 0000478f: PUSH1 0x00 00004791: DUP4 00004792: MLOAD 00004793: PUSH2 0x47a0 00004796: DUP2 00004797: DUP5 00004798: PUSH1 0x20 0000479a: DUP9 0000479b: ADD 0000479c: PUSH2 0x351d 0000479f: JUMP 000047a0: JUMPDEST 000047a1: PUSH32 0x204f000000000000000000000000000000000000000000000000000000000000 000047c2: SWAP1 000047c3: DUP4 000047c4: ADD 000047c5: SWAP1 000047c6: DUP2 000047c7: MSTORE 000047c8: DUP4 000047c9: MLOAD 000047ca: PUSH2 0x47da 000047cd: DUP2 000047ce: PUSH1 0x02 000047d0: DUP5 000047d1: ADD 000047d2: PUSH1 0x20 000047d4: DUP9 000047d5: ADD 000047d6: PUSH2 0x351d 000047d9: JUMP 000047da: JUMPDEST 000047db: ADD 000047dc: PUSH1 0x02 000047de: ADD 000047df: SWAP5 000047e0: SWAP4 000047e1: POP 000047e2: POP 000047e3: POP 000047e4: POP 000047e5: JUMP 000047e6: JUMPDEST 000047e7: PUSH1 0x1f 000047e9: DUP3 000047ea: GT 000047eb: ISZERO 000047ec: PUSH2 0x2920 000047ef: JUMPI 000047f0: PUSH1 0x00 000047f2: DUP2 000047f3: PUSH1 0x00 000047f5: MSTORE 000047f6: PUSH1 0x20 000047f8: PUSH1 0x00 000047fa: KECCAK256 000047fb: PUSH1 0x1f 000047fd: DUP6 000047fe: ADD 000047ff: PUSH1 0x05 00004801: SHR 00004802: DUP2 00004803: ADD 00004804: PUSH1 0x20 00004806: DUP7 00004807: LT 00004808: ISZERO 00004809: PUSH2 0x480f 0000480c: JUMPI 0000480d: POP 0000480e: DUP1 0000480f: JUMPDEST 00004810: PUSH1 0x1f 00004812: DUP6 00004813: ADD 00004814: PUSH1 0x05 00004816: SHR 00004817: DUP3 00004818: ADD 00004819: SWAP2 0000481a: POP 0000481b: JUMPDEST 0000481c: DUP2 0000481d: DUP2 0000481e: LT 0000481f: ISZERO 00004820: PUSH2 0x482e 00004823: JUMPI 00004824: DUP3 00004825: DUP2 00004826: SSTORE 00004827: PUSH1 0x01 00004829: ADD 0000482a: PUSH2 0x481b 0000482d: JUMP 0000482e: JUMPDEST 0000482f: POP 00004830: POP 00004831: POP 00004832: POP 00004833: POP 00004834: POP 00004835: JUMP 00004836: JUMPDEST 00004837: DUP2 00004838: MLOAD 00004839: PUSH8 0xffffffffffffffff 00004842: DUP2 00004843: GT 00004844: ISZERO 00004845: PUSH2 0x4850 00004848: JUMPI 00004849: PUSH2 0x4850 0000484c: PUSH2 0x35c1 0000484f: JUMP 00004850: JUMPDEST 00004851: PUSH2 0x4864 00004854: DUP2 00004855: PUSH2 0x485e 00004858: DUP5 00004859: SLOAD 0000485a: PUSH2 0x3cab 0000485d: JUMP 0000485e: JUMPDEST 0000485f: DUP5 00004860: PUSH2 0x47e6 00004863: JUMP 00004864: JUMPDEST 00004865: PUSH1 0x20 00004867: DUP1 00004868: PUSH1 0x1f 0000486a: DUP4 0000486b: GT 0000486c: PUSH1 0x01 0000486e: DUP2 0000486f: EQ 00004870: PUSH2 0x4899 00004873: JUMPI 00004874: PUSH1 0x00 00004876: DUP5 00004877: ISZERO 00004878: PUSH2 0x4881 0000487b: JUMPI 0000487c: POP 0000487d: DUP6 0000487e: DUP4 0000487f: ADD 00004880: MLOAD 00004881: JUMPDEST 00004882: PUSH1 0x00 00004884: NOT 00004885: PUSH1 0x03 00004887: DUP7 00004888: SWAP1 00004889: SHL 0000488a: SHR 0000488b: NOT 0000488c: AND 0000488d: PUSH1 0x01 0000488f: DUP6 00004890: SWAP1 00004891: SHL 00004892: OR 00004893: DUP6 00004894: SSTORE 00004895: PUSH2 0x482e 00004898: JUMP 00004899: JUMPDEST 0000489a: PUSH1 0x00 0000489c: DUP6 0000489d: DUP2 0000489e: MSTORE 0000489f: PUSH1 0x20 000048a1: DUP2 000048a2: KECCAK256 000048a3: PUSH1 0x1f 000048a5: NOT 000048a6: DUP7 000048a7: AND 000048a8: SWAP2 000048a9: JUMPDEST 000048aa: DUP3 000048ab: DUP2 000048ac: LT 000048ad: ISZERO 000048ae: PUSH2 0x48c8 000048b1: JUMPI 000048b2: DUP9 000048b3: DUP7 000048b4: ADD 000048b5: MLOAD 000048b6: DUP3 000048b7: SSTORE 000048b8: SWAP5 000048b9: DUP5 000048ba: ADD 000048bb: SWAP5 000048bc: PUSH1 0x01 000048be: SWAP1 000048bf: SWAP2 000048c0: ADD 000048c1: SWAP1 000048c2: DUP5 000048c3: ADD 000048c4: PUSH2 0x48a9 000048c7: JUMP 000048c8: JUMPDEST 000048c9: POP 000048ca: DUP6 000048cb: DUP3 000048cc: LT 000048cd: ISZERO 000048ce: PUSH2 0x48e6 000048d1: JUMPI 000048d2: DUP8 000048d3: DUP6 000048d4: ADD 000048d5: MLOAD 000048d6: PUSH1 0x00 000048d8: NOT 000048d9: PUSH1 0x03 000048db: DUP9 000048dc: SWAP1 000048dd: SHL 000048de: PUSH1 0xf8 000048e0: AND 000048e1: SHR 000048e2: NOT 000048e3: AND 000048e4: DUP2 000048e5: SSTORE 000048e6: JUMPDEST 000048e7: POP 000048e8: POP 000048e9: POP 000048ea: POP 000048eb: POP 000048ec: PUSH1 0x01 000048ee: SWAP1 000048ef: DUP2 000048f0: SHL 000048f1: ADD 000048f2: SWAP1 000048f3: SSTORE 000048f4: POP 000048f5: JUMP 000048f6: JUMPDEST 000048f7: PUSH1 0x00 000048f9: PUSH1 0x20 000048fb: DUP3 000048fc: DUP5 000048fd: SUB 000048fe: SLT 000048ff: ISZERO 00004900: PUSH2 0x4908 00004903: JUMPI 00004904: PUSH1 0x00 00004906: DUP1 00004907: REVERT 00004908: JUMPDEST 00004909: DUP2 0000490a: MLOAD 0000490b: PUSH2 0x2a8d 0000490e: DUP2 0000490f: PUSH2 0x39ad 00004912: JUMP 00004913: JUMPDEST 00004914: PUSH1 0x00 00004916: DUP3 00004917: MLOAD 00004918: PUSH2 0x469f 0000491b: DUP2 0000491c: DUP5 0000491d: PUSH1 0x20 0000491f: DUP8 00004920: ADD 00004921: PUSH2 0x351d 00004924: JUMP 00004925: INVALID 00004926: LOG2 00004927: PUSH5 0x6970667358 0000492d: UNKNOWN(0x22) 0000492e: SLT 0000492f: KECCAK256 00004930: UNKNOWN(0xCB) 00004931: UNKNOWN(0x26) 00004932: ISZERO 00004933: SWAP15 00004934: DUP6 00004935: UNKNOWN(0xEA) 00004936: UNKNOWN(0xC1) 00004937: ADDRESS 00004938: SHL 00004939: UNKNOWN(0xEC) 0000493a: MLOAD 0000493b: TIMESTAMP 0000493c: PUSH24 0xcde6c6c3fd92e6f1a4627c7fbc7f7e6f0ec4fa64736f6c63 00004955: NUMBER 00004956: STOP 00004957: ADDMOD 00004958: XOR 00004959: STOP 0000495a: CALLER
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_id: 0x886964a7e658d02a63a69001768fe66d582b4eeb3b6904497ee3844557c33fb4
call_targets:
0x8abf5358a88ca2586635d646aaaff172572fb0ed
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x886964a7e658d02a63a69001768fe66d582b4eeb3b6904497ee3844557c33fb4",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x8abf5358a88ca2586635d646aaaff172572fb0ed"
],
"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": "0xf0aa49d2",
"selector": "0xf0aa49d2",
"calldata_variants": [
"0xf0aa49d2",
"0xf0aa49d20000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf887ea40",
"selector": "0xf887ea40",
"calldata_variants": [
"0xf887ea40",
"0xf887ea400000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdd62ed3e",
"selector": "0xdd62ed3e",
"calldata_variants": [
"0xdd62ed3e",
"0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdf1d444e",
"selector": "0xdf1d444e",
"calldata_variants": [
"0xdf1d444e",
"0xdf1d444e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc17723f9",
"selector": "0xc17723f9",
"calldata_variants": [
"0xc17723f9",
"0xc17723f90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd0e8dcff",
"selector": "0xd0e8dcff",
"calldata_variants": [
"0xd0e8dcff",
"0xd0e8dcff0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd1c699aa",
"selector": "0xd1c699aa",
"calldata_variants": [
"0xd1c699aa",
"0xd1c699aa0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 3446,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 6218,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 6854,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 6,
"guards_detected": [],
"untrusted_call_count": 6
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0x886964a7e658d02a63a69001768fe66d582b4eeb3b6904497ee3844557c33fb4
call_targets:
0x8abf5358a88ca2586635d646aaaff172572fb0ed
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x886964a7e658d02a63a69001768fe66d582b4eeb3b6904497ee3844557c33fb4",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x8abf5358a88ca2586635d646aaaff172572fb0ed"
],
"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": "0xf0aa49d2",
"selector": "0xf0aa49d2",
"calldata_variants": [
"0xf0aa49d2",
"0xf0aa49d20000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf887ea40",
"selector": "0xf887ea40",
"calldata_variants": [
"0xf887ea40",
"0xf887ea400000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdd62ed3e",
"selector": "0xdd62ed3e",
"calldata_variants": [
"0xdd62ed3e",
"0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdf1d444e",
"selector": "0xdf1d444e",
"calldata_variants": [
"0xdf1d444e",
"0xdf1d444e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc17723f9",
"selector": "0xc17723f9",
"calldata_variants": [
"0xc17723f9",
"0xc17723f90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd0e8dcff",
"selector": "0xd0e8dcff",
"calldata_variants": [
"0xd0e8dcff",
"0xd0e8dcff0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd1c699aa",
"selector": "0xd1c699aa",
"calldata_variants": [
"0xd1c699aa",
"0xd1c699aa0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 3446,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 6218,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 6854,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 6,
"guards_detected": []
}
|
| medium | oracle | codex | Oracle price feeds directly set strike/premium/exercise costs without added integrity checks | 75 | no | — |
viewevidence_json{
"evidence": "`previewBid` uses `IOracleAdapter.getPrice` to compute premium/strike; `handleExercise` uses `getPrice` for settlement\u2192underlying conversion without escrow-level checks.",
"locations": [
"contracts/contracts/Escrow.sol:240",
"contracts/contracts/Escrow.sol:506"
],
"recommendation": "Ensure the oracle adapter enforces TWAPs and staleness bounds and only accepts validated data; consider additional sanity bounds or whitelisting trusted oracles per pair in escrow/router flows.",
"exploit_scenario": "If the configured oracle adapter can be influenced by callers (e.g., spot DEX or permissive `oracleData`), a bidder/exerciser can manipulate `oracleSpotPrice` or the settlement\u2192underlying price to underpay premium/strike or exercise at an artificially favorable rate."
}
|
| low | math | codex | RFQ/mint options lack strike/expiry validation, enabling underflow and unexercisable options | 65 | no | — |
viewevidence_json{
"evidence": "`initializeRFQMatch`/`initializeMintOption` assign `optionInfo` without validation; `_getConversionAmount` uses `(nominator - 1)` when rounding up, which reverts if `nominator` is zero.",
"locations": [
"contracts/contracts/Escrow.sol:112",
"contracts/contracts/Escrow.sol:136",
"contracts/contracts/Escrow.sol:660"
],
"recommendation": "Add the same parameter validation used in `initializeAuction` to `initializeRFQMatch` and `initializeMintOption`: require nonzero `strike`/`notional`, distinct tokens, valid `expiry/earliestExercise`, nonzero oracle, and `borrowCap <= BASE`. Consider adding a guard in `_getConversionAmount` to handle `strike == 0` safely.",
"exploit_scenario": "A malicious RFQ maker (or minter) sets `strike = 0` or `earliestExercise > expiry` in `OptionInfo`. The escrow still mints the option, but any exercise/borrow path calls `_getConversionAmount` with `roundUp = true`, where `nominator - 1` underflows when `strike` is zero, reverting every exercise/borrow and leaving the taker with worthless options and paid premium."
}
|
| info | other | cast | Heavy EXTCODE*/BALANCE usage | 55 | no | — |
viewevidence_json{
"notes": "frequent external code or balance checks; may indicate introspection or validation logic",
"ext_balance_count": 9
}
|
| info | other | cast | Heavy CALL-family usage | 55 | no | — |
viewevidence_json{
"notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
"call_family_count": 18
}
|