cecf6418-3be4-43ce-a779-aaed5728f72b
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 |
|---|---|---|---|---|
| 30503 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 103877 | artifact.fetch | complete | 1 / 3 | 1 week ago |
| 103878 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 103879 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 103880 | capability.graph | complete | 1 / 3 | 1 week ago |
| 103881 | detector.run | complete | 1 / 3 | 1 week ago |
| 103882 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:1472946] OpenAI Codex v0.77.0 (research preview)
[codex:1472946] --------
[codex:1472946] workdir: /tmp/codex-multi-m9gw9jes
[codex:1472946] model: gpt-5.2-codex
[codex:1472946] provider: openai
[codex:1472946] approval: never
[codex:1472946] sandbox: read-only
[codex:1472946] reasoning effort: xhigh
[codex:1472946] reasoning summaries: auto
[codex:1472946] session id: 019b6a74-982d-7962-94cf-64882ab52fcb
[codex:1472946] --------
[codex:1472946] user
[codex:1472946] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:1472946] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:1472946] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:1472946]
[codex:1472946] Scope rules:
[codex:1472946] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:1472946] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:1472946]
[codex:1472946] Output MUST be valid JSON matching the provided schema.
[codex:1472946] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:1472946] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:1472946]
[codex:1472946] Output constraints (IMPORTANT):
[codex:1472946] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:1472946] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:1472946] mcp startup: no servers
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Preparing to review audit instructions**
[codex:1472946] exec
[codex:1472946] /bin/bash -lc ls in /tmp/codex-multi-m9gw9jes succeeded in 5ms:
[codex:1472946] AUDIT_BUNDLE.txt
[codex:1472946] codex-output-schema.json
[codex:1472946] contracts
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Reading AUDIT_BUNDLE.txt**
[codex:1472946] exec
[codex:1472946] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-m9gw9jes succeeded in 6ms:
[codex:1472946] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:1472946]
[codex:1472946] ================================================================================
[codex:1472946] FILE: contracts/node_modules/@openzeppelin/contracts/interfaces/IERC1363.sol
[codex:1472946] ================================================================================
[codex:1472946] // SPDX-License-Identifier: MIT
[codex:1472946] // OpenZeppelin Contracts (last updated v5.1.0) (interfaces/IERC1363.sol)
[codex:1472946]
[codex:1472946] pragma solidity ^0.8.20;
[codex:1472946]
[codex:1472946] import {IERC20} from "./IERC20.sol";
[codex:1472946] import {IERC165} from "./IERC165.sol";
[codex:1472946]
[codex:1472946] /**
[codex:1472946] * @title IERC1363
[codex:1472946] * @dev Interface of the ERC-1363 standard as defined in the https://eips.ethereum.org/EIPS/eip-1363[ERC-1363].
[codex:1472946] *
[codex:1472946] * Defines an extension interface for ERC-20 tokens that supports executing code on a recipient contract
[codex:1472946] * after `transfer` or `transferFrom`, or code on a spender contract after `approve`, in a single transaction.
[codex:1472946] */
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Planning first-party contract analysis**
[codex:1472946] exec
[codex:1472946] /bin/bash -lc 'rg "''^FILE: contracts/src" -n AUDIT_BUNDLE.txt' in /tmp/codex-multi-m9gw9jes succeeded in 6ms:
[codex:1472946] 8485:FILE: contracts/src/SablierLockup.sol
[codex:1472946] 9196:FILE: contracts/src/abstracts/SablierLockupDynamic.sol
[codex:1472946] 9354:FILE: contracts/src/abstracts/SablierLockupLinear.sol
[codex:1472946] 9519:FILE: contracts/src/abstracts/SablierLockupState.sol
[codex:1472946] 9824:FILE: contracts/src/abstracts/SablierLockupTranched.sol
[codex:1472946] 9982:FILE: contracts/src/interfaces/ILockupNFTDescriptor.sol
[codex:1472946] 10006:FILE: contracts/src/interfaces/ISablierLockup.sol
[codex:1472946] 10347:FILE: contracts/src/interfaces/ISablierLockupDynamic.sol
[codex:1472946] 10432:FILE: contracts/src/interfaces/ISablierLockupLinear.sol
[codex:1472946] 10528:FILE: contracts/src/interfaces/ISablierLockupRecipient.sol
[codex:1472946] 10593:FILE: contracts/src/interfaces/ISablierLockupState.sol
[codex:1472946] 10734:FILE: contracts/src/interfaces/ISablierLockupTranched.sol
[codex:1472946] 10819:FILE: contracts/src/libraries/Errors.sol
[codex:1472946] 10978:FILE: contracts/src/libraries/Helpers.sol
[codex:1472946] 11337:FILE: contracts/src/libraries/LockupMath.sol
[codex:1472946] 11616:FILE: contracts/src/types/Lockup.sol
[codex:1472946] 11770:FILE: contracts/src/types/LockupDynamic.sol
[codex:1472946] 11802:FILE: contracts/src/types/LockupLinear.sol
[codex:1472946] 11830:FILE: contracts/src/types/LockupTranched.sol
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Extracting contract source code sections**
[codex:1472946] exec
[codex:1472946] /bin/bash -lc "sed -n '8485,9195p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-m9gw9jes succeeded in 6ms:
[codex:1472946] FILE: contracts/src/SablierLockup.sol
[codex:1472946] ================================================================================
[codex:1472946] // SPDX-License-Identifier: BUSL-1.1
[codex:1472946] pragma solidity >=0.8.22;
[codex:1472946]
[codex:1472946] import { IERC4906 } from "@openzeppelin/contracts/interfaces/IERC4906.sol";
[codex:1472946] import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
[codex:1472946] import { SafeERC20 } from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1472946] import { ERC721 } from "@openzeppelin/contracts/token/ERC721/ERC721.sol";
[codex:1472946] import { IERC721Metadata } from "@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol";
[codex:1472946] import { IERC165 } from "@openzeppelin/contracts/utils/introspection/IERC165.sol";
[codex:1472946] import { Batch } from "@sablier/evm-utils/src/Batch.sol";
[codex:1472946] import { Comptrollerable } from "@sablier/evm-utils/src/Comptrollerable.sol";
[codex:1472946] import { ISablierComptroller } from "@sablier/evm-utils/src/interfaces/ISablierComptroller.sol";
[codex:1472946]
[codex:1472946] import { SablierLockupDynamic } from "./abstracts/SablierLockupDynamic.sol";
[codex:1472946] import { SablierLockupLinear } from "./abstracts/SablierLockupLinear.sol";
[codex:1472946] import { SablierLockupState } from "./abstracts/SablierLockupState.sol";
[codex:1472946] import { SablierLockupTranched } from "./abstracts/SablierLockupTranched.sol";
[codex:1472946] import { ILockupNFTDescriptor } from "./interfaces/ILockupNFTDescriptor.sol";
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Inspecting additional files sequentially**
[codex:1472946] exec
[codex:1472946] /bin/bash -lc "sed -n '9196,9353p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-m9gw9jes succeeded in 6ms:
[codex:1472946] FILE: contracts/src/abstracts/SablierLockupDynamic.sol
[codex:1472946] ================================================================================
[codex:1472946] // SPDX-License-Identifier: BUSL-1.1
[codex:1472946] pragma solidity >=0.8.22;
[codex:1472946]
[codex:1472946] import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
[codex:1472946] import { NoDelegateCall } from "@sablier/evm-utils/src/NoDelegateCall.sol";
[codex:1472946]
[codex:1472946] import { ISablierLockupDynamic } from "../interfaces/ISablierLockupDynamic.sol";
[codex:1472946] import { Helpers } from "../libraries/Helpers.sol";
[codex:1472946] import { Lockup } from "../types/Lockup.sol";
[codex:1472946] import { LockupDynamic } from "../types/LockupDynamic.sol";
[codex:1472946] import { SablierLockupState } from "./SablierLockupState.sol";
[codex:1472946]
[codex:1472946] /// @title SablierLockupDynamic
[codex:1472946] /// @notice See the documentation in {ISablierLockupDynamic}.
[codex:1472946] abstract contract SablierLockupDynamic is
[codex:1472946] ISablierLockupDynamic, // 1 inherited component
[codex:1472946] NoDelegateCall, // 0 inherited components
[codex:1472946] SablierLockupState // 1 inherited component
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Preparing to work on SablierLockupLinear**
[codex:1472946] exec
[codex:1472946] /bin/bash -lc "sed -n '9354,9518p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-m9gw9jes succeeded in 6ms:
[codex:1472946] FILE: contracts/src/abstracts/SablierLockupLinear.sol
[codex:1472946] ================================================================================
[codex:1472946] // SPDX-License-Identifier: BUSL-1.1
[codex:1472946] pragma solidity >=0.8.22;
[codex:1472946]
[codex:1472946] import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
[codex:1472946] import { NoDelegateCall } from "@sablier/evm-utils/src/NoDelegateCall.sol";
[codex:1472946]
[codex:1472946] import { ISablierLockupLinear } from "../interfaces/ISablierLockupLinear.sol";
[codex:1472946] import { Helpers } from "../libraries/Helpers.sol";
[codex:1472946] import { Lockup } from "../types/Lockup.sol";
[codex:1472946] import { LockupLinear } from "../types/LockupLinear.sol";
[codex:1472946] import { SablierLockupState } from "./SablierLockupState.sol";
[codex:1472946]
[codex:1472946] /// @title SablierLockupLinear
[codex:1472946] /// @notice See the documentation in {ISablierLockupLinear}.
[codex:1472946] abstract contract SablierLockupLinear is
[codex:1472946] ISablierLockupLinear, // 1 inherited component
[codex:1472946] NoDelegateCall, // 0 inherited components
[codex:1472946] SablierLockupState // 1 inherited component
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Switching to SablierLockupState**
[codex:1472946] exec
[codex:1472946] /bin/bash -lc "sed -n '9519,9823p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-m9gw9jes succeeded in 6ms:
[codex:1472946] FILE: contracts/src/abstracts/SablierLockupState.sol
[codex:1472946] ================================================================================
[codex:1472946] // SPDX-License-Identifier: BUSL-1.1
[codex:1472946] pragma solidity >=0.8.22;
[codex:1472946]
[codex:1472946] import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
[codex:1472946]
[codex:1472946] import { ILockupNFTDescriptor } from "../interfaces/ILockupNFTDescriptor.sol";
[codex:1472946] import { ISablierLockupState } from "../interfaces/ISablierLockupState.sol";
[codex:1472946] import { Errors } from "../libraries/Errors.sol";
[codex:1472946] import { Lockup } from "../types/Lockup.sol";
[codex:1472946] import { LockupDynamic } from "../types/LockupDynamic.sol";
[codex:1472946] import { LockupLinear } from "../types/LockupLinear.sol";
[codex:1472946] import { LockupTranched } from "../types/LockupTranched.sol";
[codex:1472946]
[codex:1472946] /// @title SablierLockupState
[codex:1472946] /// @notice See the documentation in {ISablierLockupState}.
[codex:1472946] abstract contract SablierLockupState is ISablierLockupState {
[codex:1472946] /*//////////////////////////////////////////////////////////////////////////
[codex:1472946] STATE VARIABLES
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Preparing SablierLockupTranched next**
[codex:1472946] exec
[codex:1472946] /bin/bash -lc "sed -n '9824,9981p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-m9gw9jes succeeded in 6ms:
[codex:1472946] FILE: contracts/src/abstracts/SablierLockupTranched.sol
[codex:1472946] ================================================================================
[codex:1472946] // SPDX-License-Identifier: BUSL-1.1
[codex:1472946] pragma solidity >=0.8.22;
[codex:1472946]
[codex:1472946] import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
[codex:1472946] import { NoDelegateCall } from "@sablier/evm-utils/src/NoDelegateCall.sol";
[codex:1472946]
[codex:1472946] import { ISablierLockupTranched } from "../interfaces/ISablierLockupTranched.sol";
[codex:1472946] import { Helpers } from "../libraries/Helpers.sol";
[codex:1472946] import { Lockup } from "../types/Lockup.sol";
[codex:1472946] import { LockupTranched } from "../types/LockupTranched.sol";
[codex:1472946] import { SablierLockupState } from "./SablierLockupState.sol";
[codex:1472946]
[codex:1472946] /// @title SablierLockupTranched
[codex:1472946] /// @notice See the documentation in {ISablierLockupTranched}.
[codex:1472946] abstract contract SablierLockupTranched is
[codex:1472946] ISablierLockupTranched, // 1 inherited component
[codex:1472946] NoDelegateCall, // 0 inherited components
[codex:1472946] SablierLockupState // 1 inherited component
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Reviewing interface definitions**
[codex:1472946] exec
[codex:1472946] /bin/bash -lc "sed -n '9982,10005p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-m9gw9jes succeeded in 6ms:
[codex:1472946] FILE: contracts/src/interfaces/ILockupNFTDescriptor.sol
[codex:1472946] ================================================================================
[codex:1472946] // SPDX-License-Identifier: GPL-3.0-or-later
[codex:1472946] pragma solidity >=0.8.22;
[codex:1472946]
[codex:1472946] import { IERC721Metadata } from "@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol";
[codex:1472946]
[codex:1472946] /// @title ILockupNFTDescriptor
[codex:1472946] /// @notice This contract generates the URI describing the Sablier stream NFTs.
[codex:1472946] /// @dev Inspired by Uniswap V3 Positions NFTs.
[codex:1472946] interface ILockupNFTDescriptor {
[codex:1472946] /*//////////////////////////////////////////////////////////////////////////
[codex:1472946] USER-FACING READ-ONLY FUNCTIONS
[codex:1472946] //////////////////////////////////////////////////////////////////////////*/
[codex:1472946]
[codex:1472946] /// @notice Produces the URI describing a particular stream NFT.
[codex:1472946] /// @dev This is a data URI with the JSON contents directly inlined.
[codex:1472946] /// @param sablier The address of the Sablier contract the stream was created in.
[codex:1472946] /// @param streamId The ID of the stream for which to produce a description.
[codex:1472946] /// @return uri The URI of the ERC721-compliant metadata.
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Investigating potential vulnerabilities**
[codex:1472946] exec
[codex:1472946] /bin/bash -lc "sed -n '10819,10977p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-m9gw9jes succeeded in 6ms:
[codex:1472946] FILE: contracts/src/libraries/Errors.sol
[codex:1472946] ================================================================================
[codex:1472946] // SPDX-License-Identifier: GPL-3.0-or-later
[codex:1472946] pragma solidity >=0.8.22;
[codex:1472946]
[codex:1472946] import { Lockup } from "../types/Lockup.sol";
[codex:1472946]
[codex:1472946] /// @title Errors
[codex:1472946] /// @notice Library containing all custom errors the protocol may revert with.
[codex:1472946] library Errors {
[codex:1472946] /*//////////////////////////////////////////////////////////////////////////
[codex:1472946] SABLIER-BATCH-LOCKUP
[codex:1472946] //////////////////////////////////////////////////////////////////////////*/
[codex:1472946]
[codex:1472946] error SablierBatchLockup_BatchSizeZero();
[codex:1472946]
[codex:1472946] /*//////////////////////////////////////////////////////////////////////////
[codex:1472946] HELPERS
[codex:1472946] //////////////////////////////////////////////////////////////////////////*/
[codex:1472946]
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Focusing on error output**
[codex:1472946] exec
[codex:1472946] /bin/bash -lc "sed -n '10978,11336p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-m9gw9jes succeeded in 6ms:
[codex:1472946] FILE: contracts/src/libraries/Helpers.sol
[codex:1472946] ================================================================================
[codex:1472946] // SPDX-License-Identifier: BUSL-1.1
[codex:1472946] pragma solidity >=0.8.22;
[codex:1472946]
[codex:1472946] import { Lockup } from "../types/Lockup.sol";
[codex:1472946] import { LockupDynamic } from "../types/LockupDynamic.sol";
[codex:1472946] import { LockupLinear } from "../types/LockupLinear.sol";
[codex:1472946] import { LockupTranched } from "../types/LockupTranched.sol";
[codex:1472946] import { Errors } from "./Errors.sol";
[codex:1472946]
[codex:1472946] /// @title Helpers
[codex:1472946] /// @notice Library with functions needed to validate input parameters across Lockup streams.
[codex:1472946] library Helpers {
[codex:1472946] /*//////////////////////////////////////////////////////////////////////////
[codex:1472946] USER-FACING READ-ONLY FUNCTIONS
[codex:1472946] //////////////////////////////////////////////////////////////////////////*/
[codex:1472946]
[codex:1472946] /// @dev Calculate the timestamps and return the segments.
[codex:1472946] function calculateSegmentTimestamps(
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Inspecting LockupMath library**
[codex:1472946] exec
[codex:1472946] /bin/bash -lc "sed -n '11337,11615p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-m9gw9jes succeeded in 7ms:
[codex:1472946] FILE: contracts/src/libraries/LockupMath.sol
[codex:1472946] ================================================================================
[codex:1472946] // SPDX-License-Identifier: BUSL-1.1
[codex:1472946] pragma solidity >=0.8.22;
[codex:1472946]
[codex:1472946] import { PRBMathCastingUint128 as CastingUint128 } from "@prb/math/src/casting/Uint128.sol";
[codex:1472946] import { PRBMathCastingUint40 as CastingUint40 } from "@prb/math/src/casting/Uint40.sol";
[codex:1472946] import { SD59x18 } from "@prb/math/src/SD59x18.sol";
[codex:1472946] import { UD60x18, ud } from "@prb/math/src/UD60x18.sol";
[codex:1472946]
[codex:1472946] import { LockupDynamic } from "../types/LockupDynamic.sol";
[codex:1472946] import { LockupLinear } from "../types/LockupLinear.sol";
[codex:1472946] import { LockupTranched } from "../types/LockupTranched.sol";
[codex:1472946]
[codex:1472946] /// @title LockupMath
[codex:1472946] /// @notice Provides functions for calculating the streamed amounts in Lockup streams. Note that 'streamed' is
[codex:1472946] /// synonymous with 'vested'.
[codex:1472946] library LockupMath {
[codex:1472946] using CastingUint128 for uint128;
[codex:1472946] using CastingUint40 for uint40;
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Reviewing interfaces**
[codex:1472946] exec
[codex:1472946] /bin/bash -lc "sed -n '10006,10346p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-m9gw9jes succeeded in 6ms:
[codex:1472946] FILE: contracts/src/interfaces/ISablierLockup.sol
[codex:1472946] ================================================================================
[codex:1472946] // SPDX-License-Identifier: GPL-3.0-or-later
[codex:1472946] pragma solidity >=0.8.22;
[codex:1472946]
[codex:1472946] import { IERC4906 } from "@openzeppelin/contracts/interfaces/IERC4906.sol";
[codex:1472946] import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
[codex:1472946] import { IERC721Metadata } from "@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol";
[codex:1472946] import { IBatch } from "@sablier/evm-utils/src/interfaces/IBatch.sol";
[codex:1472946] import { IComptrollerable } from "@sablier/evm-utils/src/interfaces/IComptrollerable.sol";
[codex:1472946] import { ISablierComptroller } from "@sablier/evm-utils/src/interfaces/ISablierComptroller.sol";
[codex:1472946]
[codex:1472946] import { Lockup } from "../types/Lockup.sol";
[codex:1472946] import { ILockupNFTDescriptor } from "./ILockupNFTDescriptor.sol";
[codex:1472946] import { ISablierLockupDynamic } from "./ISablierLockupDynamic.sol";
[codex:1472946] import { ISablierLockupLinear } from "./ISablierLockupLinear.sol";
[codex:1472946] import { ISablierLockupTranched } from "./ISablierLockupTranched.sol";
[codex:1472946]
[codex:1472946] /// @title ISablierLockup
[codex:1472946] /// @notice Interface to manage Lockup streams with various distribution models.
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Assessing third-party dependency scope**
[codex:1472946] exec
[codex:1472946] /bin/bash -lc 'rg "FILE: contracts/.*/@sablier" -n AUDIT_BUNDLE.txt' in /tmp/codex-multi-m9gw9jes succeeded in 8ms:
[codex:1472946] 7808:FILE: contracts/node_modules/@sablier/evm-utils/src/Batch.sol
[codex:1472946] 7847:FILE: contracts/node_modules/@sablier/evm-utils/src/Comptrollerable.sol
[codex:1472946] 7965:FILE: contracts/node_modules/@sablier/evm-utils/src/NoDelegateCall.sol
[codex:1472946] 8019:FILE: contracts/node_modules/@sablier/evm-utils/src/interfaces/IAdminable.sol
[codex:1472946] 8064:FILE: contracts/node_modules/@sablier/evm-utils/src/interfaces/IBatch.sol
[codex:1472946] 8080:FILE: contracts/node_modules/@sablier/evm-utils/src/interfaces/IComptrollerable.sol
[codex:1472946] 8132:FILE: contracts/node_modules/@sablier/evm-utils/src/interfaces/IRoleAdminable.sol
[codex:1472946] 8200:FILE: contracts/node_modules/@sablier/evm-utils/src/interfaces/ISablierComptroller.sol
[codex:1472946] 8417:FILE: contracts/node_modules/@sablier/evm-utils/src/libraries/Errors.sol
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Considering third-party code handling**
[codex:1472946] exec
[codex:1472946] /bin/bash -lc "sed -n '7808,8018p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-m9gw9jes succeeded in 6ms:
[codex:1472946] FILE: contracts/node_modules/@sablier/evm-utils/src/Batch.sol
[codex:1472946] ================================================================================
[codex:1472946] // SPDX-License-Identifier: GPL-3.0-or-later
[codex:1472946] // solhint-disable no-inline-assembly
[codex:1472946] pragma solidity >=0.8.22;
[codex:1472946]
[codex:1472946] import { IBatch } from "./interfaces/IBatch.sol";
[codex:1472946]
[codex:1472946] /// @title Batch
[codex:1472946] /// @notice See the documentation in {IBatch}.
[codex:1472946] abstract contract Batch is IBatch {
[codex:1472946] /// @inheritdoc IBatch
[codex:1472946] /// @dev Since `msg.value` can be reused across calls, be VERY CAREFUL when using it. Refer to
[codex:1472946] /// https://paradigm.xyz/2021/08/two-rights-might-make-a-wrong for more information.
[codex:1472946] function batch(bytes[] calldata calls) external payable virtual override returns (bytes[] memory results) {
[codex:1472946] uint256 count = calls.length;
[codex:1472946] results = new bytes[](count);
[codex:1472946]
[codex:1472946] for (uint256 i = 0; i < count; ++i) {
[codex:1472946] (bool success, bytes memory result) = address(this).delegatecall(calls[i]);
[codex:1472946]
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Evaluating contract reentrancy and fee bypass risks**
[codex:1472946] thinking
[codex:1472946] **Analyzing token transfer hooks and fee handling**
[codex:1472946]
[codex:1472946] I’m looking into how ERC777 token hooks might interact with the contract during token transfers, especially whether malicious tokens could reenter contract functions. I’m also checking how fees are handled during withdrawals and if functions gracefully handle zero amounts or fee requirements, along with potential edge cases in state updates and fee transfers.
[codex:1472946] exec
[codex:1472946] /bin/bash -lc "sed -n '8200,8416p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-m9gw9jes succeeded in 7ms:
[codex:1472946] FILE: contracts/node_modules/@sablier/evm-utils/src/interfaces/ISablierComptroller.sol
[codex:1472946] ================================================================================
[codex:1472946] // SPDX-License-Identifier: GPL-3.0-or-later
[codex:1472946] pragma solidity >=0.8.22;
[codex:1472946]
[codex:1472946] import { IERC165 } from "@openzeppelin/contracts/utils/introspection/IERC165.sol";
[codex:1472946] import { IERC1822Proxiable } from "@openzeppelin/contracts/interfaces/draft-IERC1822.sol";
[codex:1472946] import { IRoleAdminable } from "./IRoleAdminable.sol";
[codex:1472946]
[codex:1472946] /// @title ISablierComptroller
[codex:1472946] /// @notice Manage fees across all Sablier protocols. State-changing functions are only accessible to the admin and the
[codex:1472946] /// fee manager.
[codex:1472946] interface ISablierComptroller is IERC165, IERC1822Proxiable, IRoleAdminable {
[codex:1472946] /*//////////////////////////////////////////////////////////////////////////
[codex:1472946] TYPES
[codex:1472946] //////////////////////////////////////////////////////////////////////////*/
[codex:1472946]
[codex:1472946] /// @notice Struct encapsulating the parameters of a custom USD fee.
[codex:1472946] /// @param enabled Whether the fee is enabled. If false, the min USD fee will apply instead.
[codex:1472946] /// @param fee The fee amount in USD, denominated in Chainlink's 8-decimal format for USD prices, where 1e8 is $1.
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Analyzing potential reentrancy and delegatecall risks**
[codex:1472946]
[codex:1472946] I'm reviewing multiple aspects of this contract for vulnerabilities, especially focusing on delegatecall usage within batch operations, potential reentrancy through hooks, fee accounting issues with msg.value reuse during withdrawals, and compatibility problems with deflationary tokens impacting token balances versus aggregate accounting. There are subtle concerns about external calls to the comptroller, allowance hooks, and gas exhaustion risks from malicious hooks, but most risks appear to be low severity or design trade-offs rather than outright bugs. I'm piecing together how these elements might interplay under various edge cases.
[codex:1472946] exec
[codex:1472946] /bin/bash -lc "sed -n '10528,10592p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-m9gw9jes succeeded in 6ms:
[codex:1472946] FILE: contracts/src/interfaces/ISablierLockupRecipient.sol
[codex:1472946] ================================================================================
[codex:1472946] // SPDX-License-Identifier: GPL-3.0-or-later
[codex:1472946] pragma solidity >=0.8.22;
[codex:1472946]
[codex:1472946] import { IERC165 } from "@openzeppelin/contracts/utils/introspection/IERC165.sol";
[codex:1472946]
[codex:1472946] /// @title ISablierLockupRecipient
[codex:1472946] /// @notice Interface for recipient contracts capable of reacting to cancellations and withdrawals. For this to be able
[codex:1472946] /// to hook into Sablier, it must fully implement this interface and it must have been allowlisted in the Lockup
[codex:1472946] /// contract.
[codex:1472946] /// @dev See {IERC165-supportsInterface}.
[codex:1472946] /// The implementation MUST implement the {IERC165-supportsInterface} method, which MUST return `true` when called with
[codex:1472946] /// `0xf8ee98d3`, i.e. `type(ISablierLockupRecipient).interfaceId`.
[codex:1472946] interface ISablierLockupRecipient is IERC165 {
[codex:1472946] /*//////////////////////////////////////////////////////////////////////////
[codex:1472946] USER-FACING STATE-CHANGING FUNCTIONS
[codex:1472946] //////////////////////////////////////////////////////////////////////////*/
[codex:1472946]
[codex:1472946] /// @notice Responds to cancellations.
[codex:1472946]
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Analyzing potential contract vulnerabilities**
[codex:1472946]
[codex:1472946] I'm carefully exploring multiple facets of the contract for vulnerabilities—nested delegatecalls, msg.value reuse in batch operations, timestamp overflows, and fee accounting nuances. There are subtle behaviors with approvals, reentrancy protections, and aggregate accounting, but nothing appears outright exploitable given the current logic and checks. Still, these intricate patterns make for interesting risk discussions!
[codex:1472946] thinking
[codex:1472946] **Reviewing reentrancy and fee mechanics**
[codex:1472946]
[codex:1472946] I'm weighing possible reentrancy paths from token transfers and hooks, plus subtle fee logic in multi-withdraw and batch calls. The absence of some strict checks and unchecked math raises interesting scenarios, but the state updates and internal bounds appear to keep things secure. There’s also curious behavior around who can trigger withdrawals and fee payments, which seems deliberate rather than problematic.
[codex:1472946] exec
[codex:1472946] /bin/bash -lc "sed -n '10593,10733p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-m9gw9jes succeeded in 6ms:
[codex:1472946] FILE: contracts/src/interfaces/ISablierLockupState.sol
[codex:1472946] ================================================================================
[codex:1472946] // SPDX-License-Identifier: GPL-3.0-or-later
[codex:1472946] pragma solidity >=0.8.22;
[codex:1472946]
[codex:1472946] import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
[codex:1472946]
[codex:1472946] import { Lockup } from "../types/Lockup.sol";
[codex:1472946] import { LockupDynamic } from "../types/LockupDynamic.sol";
[codex:1472946] import { LockupLinear } from "../types/LockupLinear.sol";
[codex:1472946] import { LockupTranched } from "../types/LockupTranched.sol";
[codex:1472946] import { ILockupNFTDescriptor } from "./ILockupNFTDescriptor.sol";
[codex:1472946]
[codex:1472946] /// @title ISablierLockupState
[codex:1472946] /// @notice Contract with state variables (storage and constants) for the {SablierLockup} contract, their respective
[codex:1472946] /// getters and helpful modifiers.
[codex:1472946] interface ISablierLockupState {
[codex:1472946] /*//////////////////////////////////////////////////////////////////////////
[codex:1472946] USER-FACING READ-ONLY FUNCTIONS
[codex:1472946] //////////////////////////////////////////////////////////////////////////*/
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Analyzing token address zero vulnerability and fee bypass**
[codex:1472946]
[codex:1472946] I'm carefully reviewing how streams might be created with token address zero, which due to missing validation in SafeERC20 can allow unbacked streams where no real tokens transfer but NFTs mint and accounting updates. This bug could inflate aggregates without actual funds. Additionally, I'm noting how batch and withdrawMultiple delegatecalls allow fee bypass since msg.value is only checked once, likely letting users skirt per-stream withdrawal fees—this seems a more concrete vulnerability worth reporting.
[codex:1472946] exec
[codex:1472946] /bin/bash -lc 'rg "delegatecall" -n contracts/src AUDIT_BUNDLE.txt' in /tmp/codex-multi-m9gw9jes succeeded in 11ms:
[codex:1472946] AUDIT_BUNDLE.txt:7827: (bool success, bytes memory result) = address(this).delegatecall(calls[i]);
[codex:1472946] AUDIT_BUNDLE.txt:7829: // Check: If the delegatecall failed, load and bubble up the revert data.
[codex:1472946] AUDIT_BUNDLE.txt:8725: address(this).delegatecall(abi.encodeCall(ISablierLockup.cancel, (streamIds[i])));
[codex:1472946] AUDIT_BUNDLE.txt:8922: (bool success, bytes memory result) = address(this).delegatecall(
[codex:1472946] contracts/src/SablierLockup.sol:239: address(this).delegatecall(abi.encodeCall(ISablierLockup.cancel, (streamIds[i])));
[codex:1472946] contracts/src/SablierLockup.sol:436: (bool success, bytes memory result) = address(this).delegatecall(
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Analyzing contract fee and token handling risks**
[codex:1472946]
[codex:1472946] I'm reviewing potential vulnerabilities around fee handling, native token usage before initialization, and delegatecall patterns in the contract. I’m considering msg.value reuse risks in batch withdraws, native token ERC20 wrapper issues before nativeToken is set, and safe token transfer checks to identify possible fee bypass or accounting problems. I'll gather precise line numbers from SablierLockup.sol to support findings and prepare a JSON report reflecting these nuanced concerns.
[codex:1472946] exec
[codex:1472946] /bin/bash -lc "nl -ba contracts/src/SablierLockup.sol | sed -n '200,520p'" in /tmp/codex-multi-m9gw9jes succeeded in 6ms:
[codex:1472946] 200 payable
[codex:1472946] 201 override
[codex:1472946] 202 noDelegateCall
[codex:1472946] 203 notNull(streamId)
[codex:1472946] 204 returns (uint128 refundedAmount)
[codex:1472946] 205 {
[codex:1472946] 206 // Check: the stream is neither depleted nor canceled.
[codex:1472946] 207 if (_streams[streamId].isDepleted) {
[codex:1472946] 208 revert Errors.SablierLockup_StreamDepleted(streamId);
[codex:1472946] 209 } else if (_streams[streamId].wasCanceled) {
[codex:1472946] 210 revert Errors.SablierLockup_StreamCanceled(streamId);
[codex:1472946] 211 }
[codex:1472946] 212
[codex:1472946] 213 // Check: `msg.sender` is the stream's sender.
[codex:1472946] 214 if (msg.sender != _streams[streamId].sender) {
[codex:1472946] 215 revert Errors.SablierLockup_Unauthorized(streamId, msg.sender);
[codex:1472946] 216 }
[codex:1472946] 217
[codex:1472946] 218 // Checks, Effects and Interactions: cancel the stream.
[codex:1472946] 219 refundedAmount = _cancel(streamId);
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Searching for _withdraw function**
[codex:1472946] exec
[codex:1472946] /bin/bash -lc "nl -ba contracts/src/SablierLockup.sol | sed -n '560,780p'" in /tmp/codex-multi-m9gw9jes succeeded in 6ms:
[codex:1472946] 560
[codex:1472946] 561 return super._update(to, streamId, auth);
[codex:1472946] 562 }
[codex:1472946] 563
[codex:1472946] 564 /*//////////////////////////////////////////////////////////////////////////
[codex:1472946] 565 PRIVATE READ-ONLY FUNCTIONS
[codex:1472946] 566 //////////////////////////////////////////////////////////////////////////*/
[codex:1472946] 567
[codex:1472946] 568 /// @notice Checks whether `msg.sender` is the stream's recipient or an approved third party, when the `recipient`
[codex:1472946] 569 /// is known in advance.
[codex:1472946] 570 /// @param streamId The stream ID for the query.
[codex:1472946] 571 /// @param recipient The address of the stream's recipient.
[codex:1472946] 572 function _isCallerStreamRecipientOrApproved(uint256 streamId, address recipient) private view returns (bool) {
[codex:1472946] 573 return _isAuthorized({ owner: recipient, spender: msg.sender, tokenId: streamId });
[codex:1472946] 574 }
[codex:1472946] 575
[codex:1472946] 576 /// @dev See the documentation for the user-facing functions that call this private function.
[codex:1472946] 577 function _withdrawableAmountOf(uint256 streamId) private view returns (uint128) {
[codex:1472946] 578 return _streamedAmountOf(streamId) - _streams[streamId].amounts.withdrawn;
[codex:1472946] 579 }
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Examining Batch contract references**
[codex:1472946] exec
[codex:1472946] /bin/bash -lc "nl -ba contracts/node_modules/@sablier/evm-utils/src/Batch.sol | sed -n '1,120p'" in /tmp/codex-multi-m9gw9jes succeeded in 6ms:
[codex:1472946] 1 // SPDX-License-Identifier: GPL-3.0-or-later
[codex:1472946] 2 // solhint-disable no-inline-assembly
[codex:1472946] 3 pragma solidity >=0.8.22;
[codex:1472946] 4
[codex:1472946] 5 import { IBatch } from "./interfaces/IBatch.sol";
[codex:1472946] 6
[codex:1472946] 7 /// @title Batch
[codex:1472946] 8 /// @notice See the documentation in {IBatch}.
[codex:1472946] 9 abstract contract Batch is IBatch {
[codex:1472946] 10 /// @inheritdoc IBatch
[codex:1472946] 11 /// @dev Since `msg.value` can be reused across calls, be VERY CAREFUL when using it. Refer to
[codex:1472946] 12 /// https://paradigm.xyz/2021/08/two-rights-might-make-a-wrong for more information.
[codex:1472946] 13 function batch(bytes[] calldata calls) external payable virtual override returns (bytes[] memory results) {
[codex:1472946] 14 uint256 count = calls.length;
[codex:1472946] 15 results = new bytes[](count);
[codex:1472946] 16
[codex:1472946] 17 for (uint256 i = 0; i < count; ++i) {
[codex:1472946] 18 (bool success, bytes memory result) = address(this).delegatecall(calls[i]);
[codex:1472946] 19
[codex:1472946] 20 // Check: If the delegatecall failed, load and bubble up the revert data.
[codex:1472946]
[codex:1472946] thinking
[codex:1472946] **Summarizing vulnerability analysis**
[codex:1472946]
[codex:1472946] I've considered potential vulnerabilities focusing on dangerous delegatecall patterns and fee handling, especially in withdrawMultiple and batch functions where msg.value is reused across delegatecalls, allowing protocol fee bypass via a single payment for multiple withdrawals. I also explored other issues like stream creation with non-contract tokens and rebase token compatibility but concluded those are not security vulnerabilities. My main finding highlights the fee bypass risk and suggests changes in fee accounting or withdraw logic to fix it.
[codex:1472946] codex
[codex:1472946] {"no_findings":false,"summary":"Found 1 low-severity issue: delegatecall-based batching lets a single `msg.value` satisfy multiple withdrawal fee checks, reducing protocol fee collection.","findings":[{"severity":"low","category":"other","title":"Protocol fee can be paid once for multiple withdrawals via delegatecall batching","exploit_scenario":"An attacker calls `withdrawMultiple` (or `batch` with multiple `withdraw` calls) and supplies `msg.value` equal to one stream’s minimum fee. Each delegated `withdraw` reuses the same `msg.value`, so every fee check passes, allowing many withdrawals for the price of one. This under-collects protocol fees and lets users withdraw from many streams with a single fee payment.","recommendation":"In `withdrawMultiple`, compute the total minimum fee across streams and require `msg.value` to cover the sum before performing internal withdrawals without per-call fee checks. Alternatively, refactor `withdraw` to accept an explicit fee parameter and decrement a running fee balance, or avoid delegatecall-based batching for payable functions.","evidence":"`withdrawMultiple` performs delegatecalls to `withdraw`, and `_withdraw` reads `msg.value` for the fee check; because delegatecall preserves the original `msg.value`, each sub-call sees the full fee amount.","locations":["contracts/src/SablierLockup.sol:417","contracts/src/SablierLockup.sol:663","contracts/node_modules/@sablier/evm-utils/src/Batch.sol:11"]}]}
[codex:1472946] tokens used
[codex:1472946] 93,141
[codex:1472946] {"no_findings":false,"summary":"Found 1 low-severity issue: delegatecall-based batching lets a single `msg.value` satisfy multiple withdrawal fee checks, reducing protocol fee collection.","findings":[{"severity":"low","category":"other","title":"Protocol fee can be paid once for multiple withdrawals via delegatecall batching","exploit_scenario":"An attacker calls `withdrawMultiple` (or `batch` with multiple `withdraw` calls) and supplies `msg.value` equal to one stream’s minimum fee. Each delegated `withdraw` reuses the same `msg.value`, so every fee check passes, allowing many withdrawals for the price of one. This under-collects protocol fees and lets users withdraw from many streams with a single fee payment.","recommendation":"In `withdrawMultiple`, compute the total minimum fee across streams and require `msg.value` to cover the sum before performing internal withdrawals without per-call fee checks. Alternatively, refactor `withdraw` to accept an explicit fee parameter and decrement a running fee balance, or avoid delegatecall-based batching for payable functions.","evidence":"`withdrawMultiple` performs delegatecalls to `withdraw`, and `_withdraw` reads `msg.value` for the fee check; because delegatecall preserves the original `msg.value`, each sub-call sees the full fee amount.","locations":["contracts/src/SablierLockup.sol:417","contracts/src/SablierLockup.sol:663","contracts/node_modules/@sablier/evm-utils/src/Batch.sol:11"]}]}
{
"codex": {
"ran_at": "2025-12-29T14:21:21.587268+00:00",
"returncode": 0
},
"summary": "Found 1 low-severity issue: delegatecall-based batching lets a single `msg.value` satisfy multiple withdrawal fee checks, reducing protocol fee collection.",
"raw_final": {
"summary": "Found 1 low-severity issue: delegatecall-based batching lets a single `msg.value` satisfy multiple withdrawal fee checks, reducing protocol fee collection.",
"findings": [
{
"title": "Protocol fee can be paid once for multiple withdrawals via delegatecall batching",
"category": "other",
"evidence": "`withdrawMultiple` performs delegatecalls to `withdraw`, and `_withdraw` reads `msg.value` for the fee check; because delegatecall preserves the original `msg.value`, each sub-call sees the full fee amount.",
"severity": "low",
"locations": [
"contracts/src/SablierLockup.sol:417",
"contracts/src/SablierLockup.sol:663",
"contracts/node_modules/@sablier/evm-utils/src/Batch.sol:11"
],
"recommendation": "In `withdrawMultiple`, compute the total minimum fee across streams and require `msg.value` to cover the sum before performing internal withdrawals without per-call fee checks. Alternatively, refactor `withdraw` to accept an explicit fee parameter and decrement a running fee balance, or avoid delegatecall-based batching for payable functions.",
"exploit_scenario": "An attacker calls `withdrawMultiple` (or `batch` with multiple `withdraw` calls) and supplies `msg.value` equal to one stream\u2019s minimum fee. Each delegated `withdraw` reuses the same `msg.value`, so every fee check passes, allowing many withdrawals for the price of one. This under-collects protocol fees and lets users withdraw from many streams with a single fee payment."
}
],
"no_findings": false
},
"no_findings": false,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: ISZERO 0000000a: PUSH2 0x0011 0000000d: JUMPI 0000000e: PUSH0 0000000f: DUP1 00000010: REVERT 00000011: JUMPDEST 00000012: PUSH0 00000013: CALLDATALOAD 00000014: PUSH1 0xe0 00000016: SHR 00000017: DUP1 00000018: PUSH4 0x01ffc9a7 0000001d: EQ 0000001e: PUSH2 0x041f 00000021: JUMPI 00000022: DUP1 00000023: PUSH4 0x06fdde03 00000028: EQ 00000029: PUSH2 0x041a 0000002c: JUMPI 0000002d: DUP1 0000002e: PUSH4 0x081812fc 00000033: EQ 00000034: PUSH2 0x0415 00000037: JUMPI 00000038: DUP1 00000039: PUSH4 0x095ea7b3 0000003e: EQ 0000003f: PUSH2 0x0410 00000042: JUMPI 00000043: DUP1 00000044: PUSH4 0x1400ecec 00000049: EQ 0000004a: PUSH2 0x040b 0000004d: JUMPI 0000004e: DUP1 0000004f: PUSH4 0x1c1cdd4c 00000054: EQ 00000055: PUSH2 0x0406 00000058: JUMPI 00000059: DUP1 0000005a: PUSH4 0x1e897afb 0000005f: EQ 00000060: PUSH2 0x0401 00000063: JUMPI 00000064: DUP1 00000065: PUSH4 0x1e99d569 0000006a: EQ 0000006b: PUSH2 0x03fc 0000006e: JUMPI 0000006f: DUP1 00000070: PUSH4 0x23b872dd 00000075: EQ 00000076: PUSH2 0x03f7 00000079: JUMPI 0000007a: DUP1 0000007b: PUSH4 0x303acc85 00000080: EQ 00000081: PUSH2 0x03f2 00000084: JUMPI 00000085: DUP1 00000086: PUSH4 0x406887cb 0000008b: EQ 0000008c: PUSH2 0x03ed 0000008f: JUMPI 00000090: DUP1 00000091: PUSH4 0x40e58ee5 00000096: EQ 00000097: PUSH2 0x03e8 0000009a: JUMPI 0000009b: DUP1 0000009c: PUSH4 0x425d30dd 000000a1: EQ 000000a2: PUSH2 0x03e3 000000a5: JUMPI 000000a6: DUP1 000000a7: PUSH4 0x42842e0e 000000ac: EQ 000000ad: PUSH2 0x03de 000000b0: JUMPI 000000b1: DUP1 000000b2: PUSH4 0x42966c68 000000b7: EQ 000000b8: PUSH2 0x03d9 000000bb: JUMPI 000000bc: DUP1 000000bd: PUSH4 0x44267570 000000c2: EQ 000000c3: PUSH2 0x03d4 000000c6: JUMPI 000000c7: DUP1 000000c8: PUSH4 0x4857501f 000000cd: EQ 000000ce: PUSH2 0x03cf 000000d1: JUMPI 000000d2: DUP1 000000d3: PUSH4 0x4869e12d 000000d8: EQ 000000d9: PUSH2 0x03ca 000000dc: JUMPI 000000dd: DUP1 000000de: PUSH4 0x4cc55e11 000000e3: EQ 000000e4: PUSH2 0x03c5 000000e7: JUMPI 000000e8: DUP1 000000e9: PUSH4 0x5fe3b567 000000ee: EQ 000000ef: PUSH2 0x03c0 000000f2: JUMPI 000000f3: DUP1 000000f4: PUSH4 0x6352211e 000000f9: EQ 000000fa: PUSH2 0x03b6 000000fd: JUMPI 000000fe: DUP1 000000ff: PUSH4 0x648bf774 00000104: EQ 00000105: PUSH2 0x03bb 00000108: JUMPI 00000109: DUP1 0000010a: PUSH4 0x6d0cee75 0000010f: EQ 00000110: PUSH2 0x03b6 00000113: JUMPI 00000114: DUP1 00000115: PUSH4 0x6da1e102 0000011a: EQ 0000011b: PUSH2 0x03b1 0000011e: JUMPI 0000011f: DUP1 00000120: PUSH4 0x70a08231 00000125: EQ 00000126: PUSH2 0x03ac 00000129: JUMPI 0000012a: DUP1 0000012b: PUSH4 0x74d213e5 00000130: EQ 00000131: PUSH2 0x03a7 00000134: JUMPI 00000135: DUP1 00000136: PUSH4 0x780a82c8 0000013b: EQ 0000013c: PUSH2 0x03a2 0000013f: JUMPI 00000140: DUP1 00000141: PUSH4 0x78f82ce7 00000146: EQ 00000147: PUSH2 0x039d 0000014a: JUMPI 0000014b: DUP1 0000014c: PUSH4 0x7aab211a 00000151: EQ 00000152: PUSH2 0x0398 00000155: JUMPI 00000156: DUP1 00000157: PUSH4 0x7cad6cd1 0000015c: EQ 0000015d: PUSH2 0x0393 00000160: JUMPI 00000161: DUP1 00000162: PUSH4 0x7de6b1db 00000167: EQ 00000168: PUSH2 0x038e 0000016b: JUMPI 0000016c: DUP1 0000016d: PUSH4 0x7ee44729 00000172: EQ 00000173: PUSH2 0x0389 00000176: JUMPI 00000177: DUP1 00000178: PUSH4 0x7f5799f9 0000017d: EQ 0000017e: PUSH2 0x0384 00000181: JUMPI 00000182: DUP1 00000183: PUSH4 0x8659c270 00000188: EQ 00000189: PUSH2 0x037f 0000018c: JUMPI 0000018d: DUP1 0000018e: PUSH4 0x8bad38dd 00000193: EQ 00000194: PUSH2 0x037a 00000197: JUMPI 00000198: DUP1 00000199: PUSH4 0x8f69b993 0000019e: EQ 0000019f: PUSH2 0x0375 000001a2: JUMPI 000001a3: DUP1 000001a4: PUSH4 0x9067b677 000001a9: EQ 000001aa: PUSH2 0x0370 000001ad: JUMPI 000001ae: DUP1 000001af: PUSH4 0x95d89b41 000001b4: EQ 000001b5: PUSH2 0x036b 000001b8: JUMPI 000001b9: DUP1 000001ba: PUSH4 0x9d93ddd3 000001bf: EQ 000001c0: PUSH2 0x0366 000001c3: JUMPI 000001c4: DUP1 000001c5: PUSH4 0xa22cb465 000001ca: EQ 000001cb: PUSH2 0x0361 000001ce: JUMPI 000001cf: DUP1 000001d0: PUSH4 0xa4775772 000001d5: EQ 000001d6: PUSH2 0x035c 000001d9: JUMPI 000001da: DUP1 000001db: PUSH4 0xa80fc071 000001e0: EQ 000001e1: PUSH2 0x0357 000001e4: JUMPI 000001e5: DUP1 000001e6: PUSH4 0xad35efd4 000001eb: EQ 000001ec: PUSH2 0x0352 000001ef: JUMPI 000001f0: DUP1 000001f1: PUSH4 0xb2564569 000001f6: EQ 000001f7: PUSH2 0x034d 000001fa: JUMPI 000001fb: DUP1 000001fc: PUSH4 0xb637b865 00000201: EQ 00000202: PUSH2 0x0348 00000205: JUMPI 00000206: DUP1 00000207: PUSH4 0xb8856d89 0000020c: EQ 0000020d: PUSH2 0x0343 00000210: JUMPI 00000211: DUP1 00000212: PUSH4 0xb88d4fde 00000217: EQ 00000218: PUSH2 0x033e 0000021b: JUMPI 0000021c: DUP1 0000021d: PUSH4 0xb8a3be66 00000222: EQ 00000223: PUSH2 0x0339 00000226: JUMPI 00000227: DUP1 00000228: PUSH4 0xb971302a 0000022d: EQ 0000022e: PUSH2 0x0334 00000231: JUMPI 00000232: DUP1 00000233: PUSH4 0xbc2be1be 00000238: EQ 00000239: PUSH2 0x032f 0000023c: JUMPI 0000023d: DUP1 0000023e: PUSH4 0xc156a11d 00000243: EQ 00000244: PUSH2 0x032a 00000247: JUMPI 00000248: DUP1 00000249: PUSH4 0xc87b56dd 0000024e: EQ 0000024f: PUSH2 0x0325 00000252: JUMPI 00000253: DUP1 00000254: PUSH4 0xc9ad007c 00000259: EQ 0000025a: PUSH2 0x0320 0000025d: JUMPI 0000025e: DUP1 0000025f: PUSH4 0xcca138e5 00000264: EQ 00000265: PUSH2 0x031b 00000268: JUMPI 00000269: DUP1 0000026a: PUSH4 0xd4dbd20b 0000026f: EQ 00000270: PUSH2 0x0316 00000273: JUMPI 00000274: DUP1 00000275: PUSH4 0xd511609f 0000027a: EQ 0000027b: PUSH2 0x0311 0000027e: JUMPI 0000027f: DUP1 00000280: PUSH4 0xd975dfed 00000285: EQ 00000286: PUSH2 0x030c 00000289: JUMPI 0000028a: DUP1 0000028b: PUSH4 0xdf2a848c 00000290: EQ 00000291: PUSH2 0x0307 00000294: JUMPI 00000295: DUP1 00000296: PUSH4 0xe1758bd8 0000029b: EQ 0000029c: PUSH2 0x0302 0000029f: JUMPI 000002a0: DUP1 000002a1: PUSH4 0xe6c417eb 000002a6: EQ 000002a7: PUSH2 0x02fd 000002aa: JUMPI 000002ab: DUP1 000002ac: PUSH4 0xe985e9c5 000002b1: EQ 000002b2: PUSH2 0x02f8 000002b5: JUMPI 000002b6: DUP1 000002b7: PUSH4 0xea5ead19 000002bc: EQ 000002bd: PUSH2 0x02f3 000002c0: JUMPI 000002c1: DUP1 000002c2: PUSH4 0xec01da3b 000002c7: EQ 000002c8: PUSH2 0x02ee 000002cb: JUMPI 000002cc: DUP1 000002cd: PUSH4 0xf590c176 000002d2: EQ 000002d3: PUSH2 0x02e9 000002d6: JUMPI 000002d7: PUSH4 0xfdd46d60 000002dc: EQ 000002dd: PUSH2 0x02e4 000002e0: JUMPI 000002e1: PUSH0 000002e2: DUP1 000002e3: REVERT 000002e4: JUMPDEST 000002e5: PUSH2 0x30a8 000002e8: JUMP 000002e9: JUMPDEST 000002ea: PUSH2 0x305f 000002ed: JUMP 000002ee: JUMPDEST 000002ef: PUSH2 0x3023 000002f2: JUMP 000002f3: JUMPDEST 000002f4: PUSH2 0x2dce 000002f7: JUMP 000002f8: JUMPDEST 000002f9: PUSH2 0x2d68 000002fc: JUMP 000002fd: JUMPDEST 000002fe: PUSH2 0x2d23 00000301: JUMP 00000302: JUMPDEST 00000303: PUSH2 0x2cf3 00000306: JUMP 00000307: JUMPDEST 00000308: PUSH2 0x2c76 0000030b: JUMP 0000030c: JUMPDEST 0000030d: PUSH2 0x2c29 00000310: JUMP 00000311: JUMPDEST 00000312: PUSH2 0x2bf0 00000315: JUMP 00000316: JUMPDEST 00000317: PUSH2 0x2bb1 0000031a: JUMP 0000031b: JUMPDEST 0000031c: PUSH2 0x2af7 0000031f: JUMP 00000320: JUMPDEST 00000321: PUSH2 0x297d 00000324: JUMP 00000325: JUMPDEST 00000326: PUSH2 0x2898 00000329: JUMP 0000032a: JUMPDEST 0000032b: PUSH2 0x25d2 0000032e: JUMP 0000032f: JUMPDEST 00000330: PUSH2 0x2595 00000333: JUMP 00000334: JUMPDEST 00000335: PUSH2 0x2559 00000338: JUMP 00000339: JUMPDEST 0000033a: PUSH2 0x2524 0000033d: JUMP 0000033e: JUMPDEST 0000033f: PUSH2 0x24bd 00000342: JUMP 00000343: JUMPDEST 00000344: PUSH2 0x2266 00000347: JUMP 00000348: JUMPDEST 00000349: PUSH2 0x21cc 0000034c: JUMP 0000034d: JUMPDEST 0000034e: PUSH2 0x2113 00000351: JUMP 00000352: JUMPDEST 00000353: PUSH2 0x20e0 00000356: JUMP 00000357: JUMPDEST 00000358: PUSH2 0x2083 0000035b: JUMP 0000035c: JUMPDEST 0000035d: PUSH2 0x2044 00000360: JUMP 00000361: JUMPDEST 00000362: PUSH2 0x1f8c 00000365: JUMP 00000366: JUMPDEST 00000367: PUSH2 0x1e33 0000036a: JUMP 0000036b: JUMPDEST 0000036c: PUSH2 0x1d7e 0000036f: JUMP 00000370: JUMPDEST 00000371: PUSH2 0x1d41 00000374: JUMP 00000375: JUMPDEST 00000376: PUSH2 0x1cd9 00000379: JUMP 0000037a: JUMPDEST 0000037b: PUSH2 0x1b5e 0000037e: JUMP 0000037f: JUMPDEST 00000380: PUSH2 0x1a77 00000383: JUMP 00000384: JUMPDEST 00000385: PUSH2 0x199b 00000388: JUMP 00000389: JUMPDEST 0000038a: PUSH2 0x17ab 0000038d: JUMP 0000038e: JUMPDEST 0000038f: PUSH2 0x1639 00000392: JUMP 00000393: JUMPDEST 00000394: PUSH2 0x1577 00000397: JUMP 00000398: JUMPDEST 00000399: PUSH2 0x1402 0000039c: JUMP 0000039d: JUMPDEST 0000039e: PUSH2 0x136d 000003a1: JUMP 000003a2: JUMPDEST 000003a3: PUSH2 0x12c4 000003a6: JUMP 000003a7: JUMPDEST 000003a8: PUSH2 0x11d5 000003ab: JUMP 000003ac: JUMPDEST 000003ad: PUSH2 0x1140 000003b0: JUMP 000003b1: JUMPDEST 000003b2: PUSH2 0x10d9 000003b5: JUMP 000003b6: JUMPDEST 000003b7: PUSH2 0x0ff1 000003ba: JUMP 000003bb: JUMPDEST 000003bc: PUSH2 0x1020 000003bf: JUMP 000003c0: JUMPDEST 000003c1: PUSH2 0x0fcc 000003c4: JUMP 000003c5: JUMPDEST 000003c6: PUSH2 0x0e52 000003c9: JUMP 000003ca: JUMPDEST 000003cb: PUSH2 0x0e1a 000003ce: JUMP 000003cf: JUMPDEST 000003d0: PUSH2 0x0dba 000003d3: JUMP 000003d4: JUMPDEST 000003d5: PUSH2 0x0d94 000003d8: JUMP 000003d9: JUMPDEST 000003da: PUSH2 0x0d0d 000003dd: JUMP 000003de: JUMPDEST 000003df: PUSH2 0x0ce4 000003e2: JUMP 000003e3: JUMPDEST 000003e4: PUSH2 0x0ca6 000003e7: JUMP 000003e8: JUMPDEST 000003e9: PUSH2 0x0bb3 000003ec: JUMP 000003ed: JUMPDEST 000003ee: PUSH2 0x0a91 000003f1: JUMP 000003f2: JUMPDEST 000003f3: PUSH2 0x0a50 000003f6: JUMP 000003f7: JUMPDEST 000003f8: PUSH2 0x0a39 000003fb: JUMP 000003fc: JUMPDEST 000003fd: PUSH2 0x09f0 00000400: JUMP 00000401: JUMPDEST 00000402: PUSH2 0x0934 00000405: JUMP 00000406: JUMPDEST 00000407: PUSH2 0x0822 0000040a: JUMP 0000040b: JUMPDEST 0000040c: PUSH2 0x0771 0000040f: JUMP 00000410: JUMPDEST 00000411: PUSH2 0x0668 00000414: JUMP 00000415: JUMPDEST 00000416: PUSH2 0x061a 00000419: JUMP 0000041a: JUMPDEST 0000041b: PUSH2 0x0527 0000041e: JUMP 0000041f: JUMPDEST 00000420: PUSH2 0x043a 00000423: JUMP 00000424: JUMPDEST 00000425: PUSH1 0x01 00000427: PUSH1 0x01 00000429: PUSH1 0xe0 0000042b: SHL 0000042c: SUB 0000042d: NOT 0000042e: DUP2 0000042f: AND 00000430: SUB 00000431: PUSH2 0x0436 00000434: JUMPI 00000435: JUMP 00000436: JUMPDEST 00000437: PUSH0 00000438: DUP1 00000439: REVERT 0000043a: JUMPDEST 0000043b: CALLVALUE 0000043c: PUSH2 0x0436 0000043f: JUMPI 00000440: PUSH1 0x20 00000442: CALLDATASIZE 00000443: PUSH1 0x03 00000445: NOT 00000446: ADD 00000447: SLT 00000448: PUSH2 0x0436 0000044b: JUMPI 0000044c: PUSH1 0x04 0000044e: CALLDATALOAD 0000044f: PUSH2 0x0457 00000452: DUP2 00000453: PUSH2 0x0424 00000456: JUMP 00000457: JUMPDEST 00000458: PUSH4 0xffffffff 0000045d: PUSH1 0xe0 0000045f: SHL 00000460: AND 00000461: PUSH4 0x24832483 00000466: PUSH1 0xe1 00000468: SHL 00000469: DUP2 0000046a: EQ 0000046b: SWAP1 0000046c: DUP2 0000046d: ISZERO 0000046e: PUSH2 0x0480 00000471: JUMPI 00000472: JUMPDEST 00000473: POP 00000474: PUSH1 0x40 00000476: MLOAD 00000477: SWAP1 00000478: ISZERO 00000479: ISZERO 0000047a: DUP2 0000047b: MSTORE 0000047c: PUSH1 0x20 0000047e: SWAP1 0000047f: RETURN 00000480: JUMPDEST 00000481: PUSH4 0x80ac58cd 00000486: PUSH1 0xe0 00000488: SHL 00000489: DUP2 0000048a: EQ 0000048b: SWAP2 0000048c: POP 0000048d: DUP2 0000048e: ISZERO 0000048f: PUSH2 0x04b2 00000492: JUMPI 00000493: JUMPDEST 00000494: DUP2 00000495: ISZERO 00000496: PUSH2 0x04a1 00000499: JUMPI 0000049a: JUMPDEST 0000049b: POP 0000049c: PUSH0 0000049d: PUSH2 0x0472 000004a0: JUMP 000004a1: JUMPDEST 000004a2: PUSH4 0x01ffc9a7 000004a7: PUSH1 0xe0 000004a9: SHL 000004aa: EQ 000004ab: SWAP1 000004ac: POP 000004ad: PUSH0 000004ae: PUSH2 0x049a 000004b1: JUMP 000004b2: JUMPDEST 000004b3: PUSH4 0x5b5e139f 000004b8: PUSH1 0xe0 000004ba: SHL 000004bb: DUP2 000004bc: EQ 000004bd: SWAP2 000004be: POP 000004bf: PUSH2 0x0493 000004c2: JUMP 000004c3: JUMPDEST 000004c4: PUSH0 000004c5: SWAP2 000004c6: SUB 000004c7: SLT 000004c8: PUSH2 0x0436 000004cb: JUMPI 000004cc: JUMP 000004cd: JUMPDEST 000004ce: PUSH0 000004cf: JUMPDEST 000004d0: DUP4 000004d1: DUP2 000004d2: LT 000004d3: PUSH2 0x04de 000004d6: JUMPI 000004d7: POP 000004d8: POP 000004d9: PUSH0 000004da: SWAP2 000004db: ADD 000004dc: MSTORE 000004dd: JUMP 000004de: JUMPDEST 000004df: DUP2 000004e0: DUP2 000004e1: ADD 000004e2: MLOAD 000004e3: DUP4 000004e4: DUP3 000004e5: ADD 000004e6: MSTORE 000004e7: PUSH1 0x20 000004e9: ADD 000004ea: PUSH2 0x04cf 000004ed: JUMP 000004ee: JUMPDEST 000004ef: SWAP1 000004f0: PUSH1 0x20 000004f2: SWAP2 000004f3: PUSH2 0x0507 000004f6: DUP2 000004f7: MLOAD 000004f8: DUP1 000004f9: SWAP3 000004fa: DUP2 000004fb: DUP6 000004fc: MSTORE 000004fd: DUP6 000004fe: DUP1 000004ff: DUP7 00000500: ADD 00000501: SWAP2 00000502: ADD 00000503: PUSH2 0x04cd 00000506: JUMP 00000507: JUMPDEST 00000508: PUSH1 0x1f 0000050a: ADD 0000050b: PUSH1 0x1f 0000050d: NOT 0000050e: AND 0000050f: ADD 00000510: ADD 00000511: SWAP1 00000512: JUMP 00000513: JUMPDEST 00000514: SWAP1 00000515: PUSH1 0x20 00000517: PUSH2 0x0524 0000051a: SWAP3 0000051b: DUP2 0000051c: DUP2 0000051d: MSTORE 0000051e: ADD 0000051f: SWAP1 00000520: PUSH2 0x04ee 00000523: JUMP 00000524: JUMPDEST 00000525: SWAP1 00000526: JUMP 00000527: JUMPDEST 00000528: CALLVALUE 00000529: PUSH2 0x0436 0000052c: JUMPI 0000052d: PUSH0 0000052e: CALLDATASIZE 0000052f: PUSH1 0x03 00000531: NOT 00000532: ADD 00000533: SLT 00000534: PUSH2 0x0436 00000537: JUMPI 00000538: PUSH1 0x40 0000053a: MLOAD 0000053b: PUSH0 0000053c: PUSH1 0x01 0000053e: SLOAD 0000053f: DUP1 00000540: PUSH1 0x01 00000542: SHR 00000543: SWAP1 00000544: PUSH1 0x01 00000546: DUP2 00000547: AND 00000548: SWAP1 00000549: DUP2 0000054a: ISZERO 0000054b: PUSH2 0x0610 0000054e: JUMPI 0000054f: JUMPDEST 00000550: PUSH1 0x20 00000552: DUP4 00000553: LT 00000554: DUP3 00000555: EQ 00000556: PUSH2 0x05fc 00000559: JUMPI 0000055a: DUP3 0000055b: DUP6 0000055c: MSTORE 0000055d: PUSH1 0x20 0000055f: DUP6 00000560: ADD 00000561: SWAP2 00000562: SWAP1 00000563: DUP2 00000564: ISZERO 00000565: PUSH2 0x05e3 00000568: JUMPI 00000569: POP 0000056a: PUSH1 0x01 0000056c: EQ 0000056d: PUSH2 0x0591 00000570: JUMPI 00000571: JUMPDEST 00000572: PUSH2 0x058d 00000575: DUP5 00000576: PUSH2 0x0581 00000579: DUP2 0000057a: DUP7 0000057b: SUB 0000057c: DUP3 0000057d: PUSH2 0x240b 00000580: JUMP 00000581: JUMPDEST 00000582: PUSH1 0x40 00000584: MLOAD 00000585: SWAP2 00000586: DUP3 00000587: SWAP2 00000588: DUP3 00000589: PUSH2 0x0513 0000058c: JUMP 0000058d: JUMPDEST 0000058e: SUB 0000058f: SWAP1 00000590: RETURN 00000591: JUMPDEST 00000592: PUSH1 0x01 00000594: PUSH0 00000595: SWAP1 00000596: DUP2 00000597: MSTORE 00000598: SWAP3 00000599: POP 0000059a: SWAP1 0000059b: PUSH32 0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6 000005bc: JUMPDEST 000005bd: DUP2 000005be: DUP5 000005bf: LT 000005c0: PUSH2 0x05cf 000005c3: JUMPI 000005c4: POP 000005c5: POP 000005c6: ADD 000005c7: PUSH2 0x0581 000005ca: DUP3 000005cb: PUSH2 0x0571 000005ce: JUMP 000005cf: JUMPDEST 000005d0: DUP1 000005d1: SLOAD 000005d2: DUP5 000005d3: DUP5 000005d4: ADD 000005d5: MSTORE 000005d6: PUSH1 0x20 000005d8: SWAP1 000005d9: SWAP4 000005da: ADD 000005db: SWAP3 000005dc: PUSH1 0x01 000005de: ADD 000005df: PUSH2 0x05bc 000005e2: JUMP 000005e3: JUMPDEST 000005e4: PUSH1 0xff 000005e6: NOT 000005e7: AND 000005e8: DUP3 000005e9: MSTORE 000005ea: POP 000005eb: SWAP1 000005ec: ISZERO 000005ed: ISZERO 000005ee: PUSH1 0x05 000005f0: SHL 000005f1: ADD 000005f2: SWAP1 000005f3: POP 000005f4: PUSH2 0x0581 000005f7: DUP3 000005f8: PUSH2 0x0571 000005fb: JUMP 000005fc: JUMPDEST 000005fd: PUSH4 0x4e487b71 00000602: PUSH1 0xe0 00000604: SHL 00000605: PUSH0 00000606: MSTORE 00000607: PUSH1 0x22 00000609: PUSH1 0x04 0000060b: MSTORE 0000060c: PUSH1 0x24 0000060e: PUSH0 0000060f: REVERT 00000610: JUMPDEST 00000611: SWAP2 00000612: PUSH1 0x7f 00000614: AND 00000615: SWAP2 00000616: PUSH2 0x054f 00000619: JUMP 0000061a: JUMPDEST 0000061b: CALLVALUE 0000061c: PUSH2 0x0436 0000061f: JUMPI 00000620: PUSH1 0x20 00000622: CALLDATASIZE 00000623: PUSH1 0x03 00000625: NOT 00000626: ADD 00000627: SLT 00000628: PUSH2 0x0436 0000062b: JUMPI 0000062c: PUSH1 0x04 0000062e: CALLDATALOAD 0000062f: PUSH2 0x0637 00000632: DUP2 00000633: PUSH2 0x3b23 00000636: JUMP 00000637: JUMPDEST 00000638: POP 00000639: PUSH0 0000063a: MSTORE 0000063b: PUSH1 0x05 0000063d: PUSH1 0x20 0000063f: MSTORE 00000640: PUSH1 0x20 00000642: PUSH1 0x01 00000644: PUSH1 0x01 00000646: PUSH1 0xa0 00000648: SHL 00000649: SUB 0000064a: PUSH1 0x40 0000064c: PUSH0 0000064d: KECCAK256 0000064e: SLOAD 0000064f: AND 00000650: PUSH1 0x40 00000652: MLOAD 00000653: SWAP1 00000654: DUP2 00000655: MSTORE 00000656: RETURN 00000657: JUMPDEST 00000658: PUSH1 0x01 0000065a: PUSH1 0x01 0000065c: PUSH1 0xa0 0000065e: SHL 0000065f: SUB 00000660: DUP2 00000661: AND 00000662: SUB 00000663: PUSH2 0x0436 00000666: JUMPI 00000667: JUMP 00000668: JUMPDEST 00000669: CALLVALUE 0000066a: PUSH2 0x0436 0000066d: JUMPI 0000066e: PUSH1 0x40 00000670: CALLDATASIZE 00000671: PUSH1 0x03 00000673: NOT 00000674: ADD 00000675: SLT 00000676: PUSH2 0x0436 00000679: JUMPI 0000067a: PUSH1 0x04 0000067c: CALLDATALOAD 0000067d: PUSH2 0x0685 00000680: DUP2 00000681: PUSH2 0x0657 00000684: JUMP 00000685: JUMPDEST 00000686: PUSH1 0x24 00000688: CALLDATALOAD 00000689: SWAP1 0000068a: PUSH2 0x0692 0000068d: DUP3 0000068e: PUSH2 0x3b23 00000691: JUMP 00000692: JUMPDEST 00000693: CALLER 00000694: ISZERO 00000695: ISZERO 00000696: DUP1 00000697: PUSH2 0x075e 0000069a: JUMPI 0000069b: JUMPDEST 0000069c: DUP1 0000069d: PUSH2 0x071e 000006a0: JUMPI 000006a1: JUMPDEST 000006a2: PUSH2 0x070a 000006a5: JUMPI 000006a6: DUP3 000006a7: PUSH2 0x0708 000006aa: SWAP4 000006ab: PUSH2 0x06ed 000006ae: SWAP3 000006af: PUSH1 0x01 000006b1: PUSH1 0x01 000006b3: PUSH1 0xa0 000006b5: SHL 000006b6: SUB 000006b7: DUP1 000006b8: DUP7 000006b9: AND 000006ba: SWAP2 000006bb: AND 000006bc: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925 000006dd: PUSH0 000006de: DUP1 000006df: LOG4 000006e0: PUSH0 000006e1: MSTORE 000006e2: PUSH1 0x05 000006e4: PUSH1 0x20 000006e6: MSTORE 000006e7: PUSH1 0x40 000006e9: PUSH0 000006ea: KECCAK256 000006eb: SWAP1 000006ec: JUMP 000006ed: JUMPDEST 000006ee: SWAP1 000006ef: PUSH1 0x01 000006f1: PUSH1 0x01 000006f3: PUSH1 0xa0 000006f5: SHL 000006f6: SUB 000006f7: AND 000006f8: PUSH1 0x01 000006fa: PUSH1 0x01 000006fc: PUSH1 0xa0 000006fe: SHL 000006ff: SUB 00000700: NOT 00000701: DUP3 00000702: SLOAD 00000703: AND 00000704: OR 00000705: SWAP1 00000706: SSTORE 00000707: JUMP 00000708: JUMPDEST 00000709: STOP 0000070a: JUMPDEST 0000070b: PUSH4 0xa9fbf51f 00000710: PUSH1 0xe0 00000712: SHL 00000713: PUSH0 00000714: MSTORE 00000715: CALLER 00000716: PUSH1 0x04 00000718: MSTORE 00000719: PUSH1 0x24 0000071b: JUMPDEST 0000071c: PUSH0 0000071d: REVERT 0000071e: JUMPDEST 0000071f: POP 00000720: PUSH1 0xff 00000722: PUSH2 0x0756 00000725: CALLER 00000726: PUSH2 0x0740 00000729: DUP5 0000072a: PUSH1 0x01 0000072c: PUSH1 0x01 0000072e: PUSH1 0xa0 00000730: SHL 00000731: SUB 00000732: AND 00000733: PUSH0 00000734: MSTORE 00000735: PUSH1 0x06 00000737: PUSH1 0x20 00000739: MSTORE 0000073a: PUSH1 0x40 0000073c: PUSH0 0000073d: KECCAK256 0000073e: SWAP1 0000073f: JUMP 00000740: JUMPDEST 00000741: SWAP1 00000742: PUSH1 0x01 00000744: PUSH1 0x01 00000746: PUSH1 0xa0 00000748: SHL 00000749: SUB 0000074a: AND 0000074b: PUSH0 0000074c: MSTORE 0000074d: PUSH1 0x20 0000074f: MSTORE 00000750: PUSH1 0x40 00000752: PUSH0 00000753: KECCAK256 00000754: SWAP1 00000755: JUMP 00000756: JUMPDEST 00000757: SLOAD 00000758: AND 00000759: ISZERO 0000075a: PUSH2 0x06a1 0000075d: JUMP 0000075e: JUMPDEST 0000075f: POP 00000760: CALLER 00000761: PUSH1 0x01 00000763: PUSH1 0x01 00000765: PUSH1 0xa0 00000767: SHL 00000768: SUB 00000769: DUP3 0000076a: AND 0000076b: EQ 0000076c: ISZERO 0000076d: PUSH2 0x069b 00000770: JUMP 00000771: JUMPDEST 00000772: CALLVALUE 00000773: PUSH2 0x0436 00000776: JUMPI 00000777: PUSH1 0x20 00000779: CALLDATASIZE 0000077a: PUSH1 0x03 0000077c: NOT 0000077d: ADD 0000077e: SLT 0000077f: PUSH2 0x0436 00000782: JUMPI 00000783: PUSH2 0x058d 00000786: PUSH1 0x04 00000788: CALLDATALOAD 00000789: PUSH2 0x0791 0000078c: DUP2 0000078d: PUSH2 0x3b56 00000790: JUMP 00000791: JUMPDEST 00000792: PUSH0 00000793: SWAP1 00000794: DUP1 00000795: PUSH0 00000796: MSTORE 00000797: PUSH1 0x0e 00000799: PUSH1 0x20 0000079b: MSTORE 0000079c: PUSH1 0xff 0000079e: PUSH1 0x40 000007a0: PUSH0 000007a1: KECCAK256 000007a2: SLOAD 000007a3: PUSH1 0xf0 000007a5: SHR 000007a6: AND 000007a7: DUP1 000007a8: PUSH2 0x0805 000007ab: JUMPI 000007ac: JUMPDEST 000007ad: PUSH2 0x07cc 000007b0: JUMPI 000007b1: JUMPDEST 000007b2: POP 000007b3: PUSH1 0x40 000007b5: MLOAD 000007b6: PUSH1 0x01 000007b8: PUSH1 0x01 000007ba: PUSH1 0x80 000007bc: SHL 000007bd: SUB 000007be: SWAP1 000007bf: SWAP2 000007c0: AND 000007c1: DUP2 000007c2: MSTORE 000007c3: SWAP1 000007c4: DUP2 000007c5: SWAP1 000007c6: PUSH1 0x20 000007c8: DUP3 000007c9: ADD 000007ca: SWAP1 000007cb: JUMP 000007cc: JUMPDEST 000007cd: PUSH2 0x07ff 000007d0: SWAP2 000007d1: POP 000007d2: DUP1 000007d3: PUSH0 000007d4: MSTORE 000007d5: PUSH1 0x0e 000007d7: PUSH1 0x20 000007d9: MSTORE 000007da: PUSH2 0x07f9 000007dd: PUSH2 0x07f3 000007e0: PUSH1 0x02 000007e2: PUSH1 0x40 000007e4: PUSH0 000007e5: KECCAK256 000007e6: ADD 000007e7: SLOAD 000007e8: PUSH1 0x01 000007ea: PUSH1 0x01 000007ec: PUSH1 0x80 000007ee: SHL 000007ef: SUB 000007f0: AND 000007f1: SWAP1 000007f2: JUMP 000007f3: JUMPDEST 000007f4: SWAP2 000007f5: PUSH2 0x3df4 000007f8: JUMP 000007f9: JUMPDEST 000007fa: SWAP1 000007fb: PUSH2 0x32fa 000007fe: JUMP 000007ff: JUMPDEST 00000800: PUSH0 00000801: PUSH2 0x07b1 00000804: JUMP 00000805: JUMPDEST 00000806: POP 00000807: DUP1 00000808: PUSH0 00000809: MSTORE 0000080a: PUSH1 0x0e 0000080c: PUSH1 0x20 0000080e: MSTORE 0000080f: PUSH1 0xff 00000811: PUSH1 0x01 00000813: PUSH1 0x40 00000815: PUSH0 00000816: KECCAK256 00000817: ADD 00000818: SLOAD 00000819: PUSH1 0xa0 0000081b: SHR 0000081c: AND 0000081d: ISZERO 0000081e: PUSH2 0x07ac 00000821: JUMP 00000822: JUMPDEST 00000823: CALLVALUE 00000824: PUSH2 0x0436 00000827: JUMPI 00000828: PUSH1 0x20 0000082a: CALLDATASIZE 0000082b: PUSH1 0x03 0000082d: NOT 0000082e: ADD 0000082f: SLT 00000830: PUSH2 0x0436 00000833: JUMPI 00000834: PUSH2 0x0847 00000837: PUSH1 0x04 00000839: CALLDATALOAD 0000083a: PUSH2 0x0842 0000083d: DUP2 0000083e: PUSH2 0x3b56 00000841: JUMP 00000842: JUMPDEST 00000843: PUSH2 0x40e5 00000846: JUMP 00000847: JUMPDEST 00000848: PUSH1 0x05 0000084a: DUP2 0000084b: LT 0000084c: ISZERO 0000084d: PUSH2 0x0872 00000850: JUMPI 00000851: DUP1 00000852: ISZERO 00000853: SWAP1 00000854: DUP2 00000855: ISZERO 00000856: PUSH2 0x0867 00000859: JUMPI 0000085a: POP 0000085b: PUSH1 0x40 0000085d: MLOAD 0000085e: SWAP1 0000085f: ISZERO 00000860: ISZERO 00000861: DUP2 00000862: MSTORE 00000863: PUSH1 0x20 00000865: SWAP1 00000866: RETURN 00000867: JUMPDEST 00000868: PUSH1 0x01 0000086a: SWAP2 0000086b: POP 0000086c: EQ 0000086d: PUSH0 0000086e: PUSH2 0x0472 00000871: JUMP 00000872: JUMPDEST 00000873: PUSH2 0x20c2 00000876: JUMP 00000877: JUMPDEST 00000878: SWAP2 00000879: DUP2 0000087a: PUSH1 0x1f 0000087c: DUP5 0000087d: ADD 0000087e: SLT 0000087f: ISZERO 00000880: PUSH2 0x0436 00000883: JUMPI 00000884: DUP3 00000885: CALLDATALOAD 00000886: SWAP2 00000887: PUSH1 0x01 00000889: PUSH1 0x01 0000088b: PUSH1 0x40 0000088d: SHL 0000088e: SUB 0000088f: DUP4 00000890: GT 00000891: PUSH2 0x0436 00000894: JUMPI 00000895: PUSH1 0x20 00000897: DUP1 00000898: DUP6 00000899: ADD 0000089a: SWAP5 0000089b: DUP5 0000089c: PUSH1 0x05 0000089e: SHL 0000089f: ADD 000008a0: ADD 000008a1: GT 000008a2: PUSH2 0x0436 000008a5: JUMPI 000008a6: JUMP 000008a7: JUMPDEST 000008a8: PUSH1 0x20 000008aa: PUSH1 0x03 000008ac: NOT 000008ad: DUP3 000008ae: ADD 000008af: SLT 000008b0: PUSH2 0x0436 000008b3: JUMPI 000008b4: PUSH1 0x04 000008b6: CALLDATALOAD 000008b7: SWAP1 000008b8: PUSH1 0x01 000008ba: PUSH1 0x01 000008bc: PUSH1 0x40 000008be: SHL 000008bf: SUB 000008c0: DUP3 000008c1: GT 000008c2: PUSH2 0x0436 000008c5: JUMPI 000008c6: PUSH2 0x08d1 000008c9: SWAP2 000008ca: PUSH1 0x04 000008cc: ADD 000008cd: PUSH2 0x0877 000008d0: JUMP 000008d1: JUMPDEST 000008d2: SWAP1 000008d3: SWAP2 000008d4: JUMP 000008d5: JUMPDEST 000008d6: PUSH1 0x20 000008d8: DUP2 000008d9: ADD 000008da: PUSH1 0x20 000008dc: DUP3 000008dd: MSTORE 000008de: DUP3 000008df: MLOAD 000008e0: DUP1 000008e1: SWAP2 000008e2: MSTORE 000008e3: PUSH1 0x40 000008e5: DUP3 000008e6: ADD 000008e7: SWAP2 000008e8: PUSH1 0x20 000008ea: PUSH1 0x40 000008ec: DUP4 000008ed: PUSH1 0x05 000008ef: SHL 000008f0: DUP4 000008f1: ADD 000008f2: ADD 000008f3: SWAP5 000008f4: ADD 000008f5: SWAP3 000008f6: PUSH0 000008f7: SWAP2 000008f8: JUMPDEST 000008f9: DUP4 000008fa: DUP4 000008fb: LT 000008fc: PUSH2 0x0907 000008ff: JUMPI 00000900: POP 00000901: POP 00000902: POP 00000903: POP 00000904: POP 00000905: SWAP1 00000906: JUMP 00000907: JUMPDEST 00000908: SWAP1 00000909: SWAP2 0000090a: SWAP3 0000090b: SWAP4 0000090c: SWAP5 0000090d: PUSH1 0x20 0000090f: DUP1 00000910: PUSH2 0x0925 00000913: PUSH1 0x01 00000915: SWAP4 00000916: PUSH1 0x3f 00000918: NOT 00000919: DUP7 0000091a: DUP3 0000091b: SUB 0000091c: ADD 0000091d: DUP8 0000091e: MSTORE 0000091f: DUP10 00000920: MLOAD 00000921: PUSH2 0x04ee 00000924: JUMP 00000925: JUMPDEST 00000926: SWAP8 00000927: ADD 00000928: SWAP4 00000929: ADD 0000092a: SWAP4 0000092b: ADD 0000092c: SWAP2 0000092d: SWAP4 0000092e: SWAP3 0000092f: SWAP1 00000930: PUSH2 0x08f8 00000933: JUMP 00000934: JUMPDEST 00000935: PUSH2 0x093d 00000938: CALLDATASIZE 00000939: PUSH2 0x08a7 0000093c: JUMP 0000093d: JUMPDEST 0000093e: SWAP1 0000093f: PUSH2 0x0947 00000942: DUP3 00000943: PUSH2 0x331a 00000946: JUMP 00000947: JUMPDEST 00000948: SWAP2 00000949: PUSH2 0x0955 0000094c: PUSH1 0x40 0000094e: MLOAD 0000094f: SWAP4 00000950: DUP5 00000951: PUSH2 0x240b 00000954: JUMP 00000955: JUMPDEST 00000956: DUP1 00000957: DUP4 00000958: MSTORE 00000959: PUSH1 0x1f 0000095b: NOT 0000095c: PUSH2 0x0964 0000095f: DUP3 00000960: PUSH2 0x331a 00000963: JUMP 00000964: JUMPDEST 00000965: ADD 00000966: PUSH0 00000967: JUMPDEST 00000968: DUP2 00000969: DUP2 0000096a: LT 0000096b: PUSH2 0x09df 0000096e: JUMPI 0000096f: POP 00000970: POP 00000971: PUSH0 00000972: JUMPDEST 00000973: DUP2 00000974: DUP2 00000975: LT 00000976: PUSH2 0x0987 00000979: JUMPI 0000097a: PUSH1 0x40 0000097c: MLOAD 0000097d: DUP1 0000097e: PUSH2 0x058d 00000981: DUP7 00000982: DUP3 00000983: PUSH2 0x08d5 00000986: JUMP 00000987: JUMPDEST 00000988: PUSH0 00000989: DUP1 0000098a: PUSH2 0x0994 0000098d: DUP4 0000098e: DUP6 0000098f: DUP8 00000990: PUSH2 0x3377 00000993: JUMP 00000994: JUMPDEST 00000995: SWAP1 00000996: PUSH2 0x09a4 00000999: PUSH1 0x40 0000099b: MLOAD 0000099c: DUP1 0000099d: SWAP4 0000099e: DUP2 0000099f: SWAP4 000009a0: PUSH2 0x3393 000009a3: JUMP 000009a4: JUMPDEST 000009a5: SUB 000009a6: SWAP1 000009a7: ADDRESS 000009a8: GAS 000009a9: DELEGATECALL 000009aa: PUSH2 0x09b1 000009ad: PUSH2 0x33a0 000009b0: JUMP 000009b1: JUMPDEST 000009b2: SWAP1 000009b3: ISZERO 000009b4: PUSH2 0x09d7 000009b7: JUMPI 000009b8: SWAP1 000009b9: PUSH1 0x01 000009bb: SWAP2 000009bc: PUSH2 0x09c5 000009bf: DUP3 000009c0: DUP8 000009c1: PUSH2 0x33cf 000009c4: JUMP 000009c5: JUMPDEST 000009c6: MSTORE 000009c7: PUSH2 0x09d0 000009ca: DUP2 000009cb: DUP7 000009cc: PUSH2 0x33cf 000009cf: JUMP 000009d0: JUMPDEST 000009d1: POP 000009d2: ADD 000009d3: PUSH2 0x0972 000009d6: JUMP 000009d7: JUMPDEST 000009d8: DUP1 000009d9: MLOAD 000009da: SWAP1 000009db: PUSH1 0x20 000009dd: ADD 000009de: REVERT 000009df: JUMPDEST 000009e0: DUP1 000009e1: PUSH1 0x60 000009e3: PUSH1 0x20 000009e5: DUP1 000009e6: SWAP4 000009e7: DUP9 000009e8: ADD 000009e9: ADD 000009ea: MSTORE 000009eb: ADD 000009ec: PUSH2 0x0967 000009ef: JUMP 000009f0: JUMPDEST 000009f1: CALLVALUE 000009f2: PUSH2 0x0436 000009f5: JUMPI 000009f6: PUSH0 000009f7: CALLDATASIZE 000009f8: PUSH1 0x03 000009fa: NOT 000009fb: ADD 000009fc: SLT 000009fd: PUSH2 0x0436 00000a00: JUMPI 00000a01: PUSH1 0x20 00000a03: PUSH1 0x09 00000a05: SLOAD 00000a06: PUSH1 0x40 00000a08: MLOAD 00000a09: SWAP1 00000a0a: DUP2 00000a0b: MSTORE 00000a0c: RETURN 00000a0d: JUMPDEST 00000a0e: PUSH1 0x60 00000a10: SWAP1 00000a11: PUSH1 0x03 00000a13: NOT 00000a14: ADD 00000a15: SLT 00000a16: PUSH2 0x0436 00000a19: JUMPI 00000a1a: PUSH1 0x04 00000a1c: CALLDATALOAD 00000a1d: PUSH2 0x0a25 00000a20: DUP2 00000a21: PUSH2 0x0657 00000a24: JUMP 00000a25: JUMPDEST 00000a26: SWAP1 00000a27: PUSH1 0x24 00000a29: CALLDATALOAD 00000a2a: PUSH2 0x0a32 00000a2d: DUP2 00000a2e: PUSH2 0x0657 00000a31: JUMP 00000a32: JUMPDEST 00000a33: SWAP1 00000a34: PUSH1 0x44 00000a36: CALLDATALOAD 00000a37: SWAP1 00000a38: JUMP 00000a39: JUMPDEST 00000a3a: CALLVALUE 00000a3b: PUSH2 0x0436 00000a3e: JUMPI 00000a3f: PUSH2 0x0708 00000a42: PUSH2 0x0a4a 00000a45: CALLDATASIZE 00000a46: PUSH2 0x0a0d 00000a49: JUMP 00000a4a: JUMPDEST 00000a4b: SWAP2 00000a4c: PUSH2 0x33e3 00000a4f: JUMP 00000a50: JUMPDEST 00000a51: CALLVALUE 00000a52: PUSH2 0x0436 00000a55: JUMPI 00000a56: PUSH1 0x20 00000a58: CALLDATASIZE 00000a59: PUSH1 0x03 00000a5b: NOT 00000a5c: ADD 00000a5d: SLT 00000a5e: PUSH2 0x0436 00000a61: JUMPI 00000a62: PUSH1 0x01 00000a64: PUSH1 0x01 00000a66: PUSH1 0xa0 00000a68: SHL 00000a69: SUB 00000a6a: PUSH1 0x04 00000a6c: CALLDATALOAD 00000a6d: PUSH2 0x0a75 00000a70: DUP2 00000a71: PUSH2 0x0657 00000a74: JUMP 00000a75: JUMPDEST 00000a76: AND 00000a77: PUSH0 00000a78: MSTORE 00000a79: PUSH1 0x0b 00000a7b: PUSH1 0x20 00000a7d: MSTORE 00000a7e: PUSH1 0x20 00000a80: PUSH1 0xff 00000a82: PUSH1 0x40 00000a84: PUSH0 00000a85: KECCAK256 00000a86: SLOAD 00000a87: AND 00000a88: PUSH1 0x40 00000a8a: MLOAD 00000a8b: SWAP1 00000a8c: ISZERO 00000a8d: ISZERO 00000a8e: DUP2 00000a8f: MSTORE 00000a90: RETURN 00000a91: JUMPDEST 00000a92: CALLVALUE 00000a93: PUSH2 0x0436 00000a96: JUMPI 00000a97: PUSH1 0x20 00000a99: CALLDATASIZE 00000a9a: PUSH1 0x03 00000a9c: NOT 00000a9d: ADD 00000a9e: SLT 00000a9f: PUSH2 0x0436 00000aa2: JUMPI 00000aa3: PUSH1 0x04 00000aa5: CALLDATALOAD 00000aa6: PUSH2 0x0aae 00000aa9: DUP2 00000aaa: PUSH2 0x0657 00000aad: JUMP 00000aae: JUMPDEST 00000aaf: PUSH2 0x0ab6 00000ab2: PUSH2 0x424d 00000ab5: JUMP 00000ab6: JUMPDEST 00000ab7: PUSH1 0x40 00000ab9: MLOAD 00000aba: PUSH4 0x01ffc9a7 00000abf: PUSH1 0xe0 00000ac1: SHL 00000ac2: DUP2 00000ac3: MSTORE 00000ac4: PUSH4 0xf8ee98d3 00000ac9: PUSH1 0xe0 00000acb: SHL 00000acc: PUSH1 0x04 00000ace: DUP3 00000acf: ADD 00000ad0: MSTORE 00000ad1: PUSH1 0x01 00000ad3: PUSH1 0x01 00000ad5: PUSH1 0xa0 00000ad7: SHL 00000ad8: SUB 00000ad9: DUP3 00000ada: AND 00000adb: SWAP2 00000adc: SWAP1 00000add: PUSH1 0x20 00000adf: DUP2 00000ae0: PUSH1 0x24 00000ae2: DUP2 00000ae3: DUP7 00000ae4: GAS 00000ae5: STATICCALL 00000ae6: SWAP1 00000ae7: DUP2 00000ae8: ISZERO 00000ae9: PUSH2 0x0bae 00000aec: JUMPI 00000aed: PUSH0 00000aee: SWAP2 00000aef: PUSH2 0x0b7f 00000af2: JUMPI 00000af3: JUMPDEST 00000af4: POP 00000af5: ISZERO 00000af6: PUSH2 0x0b64 00000af9: JUMPI 00000afa: PUSH2 0x0b17 00000afd: PUSH2 0x0b24 00000b00: SWAP2 00000b01: PUSH1 0x01 00000b03: PUSH1 0x01 00000b05: PUSH1 0xa0 00000b07: SHL 00000b08: SUB 00000b09: AND 00000b0a: PUSH0 00000b0b: MSTORE 00000b0c: PUSH1 0x0b 00000b0e: PUSH1 0x20 00000b10: MSTORE 00000b11: PUSH1 0x40 00000b13: PUSH0 00000b14: KECCAK256 00000b15: SWAP1 00000b16: JUMP 00000b17: JUMPDEST 00000b18: DUP1 00000b19: SLOAD 00000b1a: PUSH1 0xff 00000b1c: NOT 00000b1d: AND 00000b1e: PUSH1 0x01 00000b20: OR 00000b21: SWAP1 00000b22: SSTORE 00000b23: JUMP 00000b24: JUMPDEST 00000b25: PUSH1 0x01 00000b27: PUSH1 0x01 00000b29: PUSH1 0xa0 00000b2b: SHL 00000b2c: SUB 00000b2d: PUSH2 0x0b3d 00000b30: PUSH0 00000b31: SLOAD 00000b32: PUSH1 0x01 00000b34: PUSH1 0x01 00000b36: PUSH1 0xa0 00000b38: SHL 00000b39: SUB 00000b3a: AND 00000b3b: SWAP1 00000b3c: JUMP 00000b3d: JUMPDEST 00000b3e: AND 00000b3f: PUSH32 0xb4378d4e289cb3f40f4f75a99c9cafa76e3df1c4dc31309babc23dc91bd72801 00000b60: PUSH0 00000b61: DUP1 00000b62: LOG3 00000b63: STOP 00000b64: JUMPDEST 00000b65: PUSH4 0xf1dc125d 00000b6a: PUSH1 0xe0 00000b6c: SHL 00000b6d: PUSH0 00000b6e: MSTORE 00000b6f: PUSH1 0x01 00000b71: PUSH1 0x01 00000b73: PUSH1 0xa0 00000b75: SHL 00000b76: SUB 00000b77: AND 00000b78: PUSH1 0x04 00000b7a: MSTORE 00000b7b: PUSH1 0x24 00000b7d: PUSH0 00000b7e: REVERT 00000b7f: JUMPDEST 00000b80: PUSH2 0x0ba1 00000b83: SWAP2 00000b84: POP 00000b85: PUSH1 0x20 00000b87: RETURNDATASIZE 00000b88: PUSH1 0x20 00000b8a: GT 00000b8b: PUSH2 0x0ba7 00000b8e: JUMPI 00000b8f: JUMPDEST 00000b90: PUSH2 0x0b99 00000b93: DUP2 00000b94: DUP4 00000b95: PUSH2 0x240b 00000b98: JUMP 00000b99: JUMPDEST 00000b9a: DUP2 00000b9b: ADD 00000b9c: SWAP1 00000b9d: PUSH2 0x34e2 00000ba0: JUMP 00000ba1: JUMPDEST 00000ba2: PUSH0 00000ba3: PUSH2 0x0af3 00000ba6: JUMP 00000ba7: JUMPDEST 00000ba8: POP 00000ba9: RETURNDATASIZE 00000baa: PUSH2 0x0b8f 00000bad: JUMP 00000bae: JUMPDEST 00000baf: PUSH2 0x34f7 00000bb2: JUMP 00000bb3: JUMPDEST 00000bb4: PUSH1 0x20 00000bb6: CALLDATASIZE 00000bb7: PUSH1 0x03 00000bb9: NOT 00000bba: ADD 00000bbb: SLT 00000bbc: PUSH2 0x0436 00000bbf: JUMPI 00000bc0: PUSH1 0x04 00000bc2: CALLDATALOAD 00000bc3: PUSH2 0x0bca 00000bc6: PUSH2 0x4278 00000bc9: JUMP 00000bca: JUMPDEST 00000bcb: PUSH2 0x0bd3 00000bce: DUP2 00000bcf: PUSH2 0x3b56 00000bd2: JUMP 00000bd3: JUMPDEST 00000bd4: PUSH0 00000bd5: DUP2 00000bd6: DUP2 00000bd7: MSTORE 00000bd8: PUSH1 0x0e 00000bda: PUSH1 0x20 00000bdc: MSTORE 00000bdd: PUSH1 0x40 00000bdf: SWAP1 00000be0: KECCAK256 00000be1: PUSH1 0x01 00000be3: ADD 00000be4: SLOAD 00000be5: PUSH1 0xa0 00000be7: SHR 00000be8: PUSH1 0xff 00000bea: AND 00000beb: ISZERO 00000bec: PUSH2 0x0c01 00000bef: JUMPI 00000bf0: PUSH4 0x15efa0f3 00000bf5: PUSH1 0xe1 00000bf7: SHL 00000bf8: PUSH0 00000bf9: MSTORE 00000bfa: PUSH1 0x04 00000bfc: MSTORE 00000bfd: PUSH1 0x24 00000bff: PUSH0 00000c00: REVERT 00000c01: JUMPDEST 00000c02: PUSH2 0x0c1d 00000c05: PUSH2 0x0c16 00000c08: DUP3 00000c09: PUSH0 00000c0a: MSTORE 00000c0b: PUSH1 0x0e 00000c0d: PUSH1 0x20 00000c0f: MSTORE 00000c10: PUSH1 0x40 00000c12: PUSH0 00000c13: KECCAK256 00000c14: SWAP1 00000c15: JUMP 00000c16: JUMPDEST 00000c17: SLOAD 00000c18: PUSH1 0xf8 00000c1a: SHR 00000c1b: SWAP1 00000c1c: JUMP 00000c1d: JUMPDEST 00000c1e: PUSH2 0x0c94 00000c21: JUMPI 00000c22: PUSH2 0x0c52 00000c25: PUSH2 0x0c46 00000c28: PUSH2 0x0c39 00000c2b: DUP4 00000c2c: PUSH0 00000c2d: MSTORE 00000c2e: PUSH1 0x0e 00000c30: PUSH1 0x20 00000c32: MSTORE 00000c33: PUSH1 0x40 00000c35: PUSH0 00000c36: KECCAK256 00000c37: SWAP1 00000c38: JUMP 00000c39: JUMPDEST 00000c3a: SLOAD 00000c3b: PUSH1 0x01 00000c3d: PUSH1 0x01 00000c3f: PUSH1 0xa0 00000c41: SHL 00000c42: SUB 00000c43: AND 00000c44: SWAP1 00000c45: JUMP 00000c46: JUMPDEST 00000c47: PUSH1 0x01 00000c49: PUSH1 0x01 00000c4b: PUSH1 0xa0 00000c4d: SHL 00000c4e: SUB 00000c4f: AND 00000c50: SWAP1 00000c51: JUMP 00000c52: JUMPDEST 00000c53: CALLER 00000c54: SUB 00000c55: PUSH2 0x0c7e 00000c58: JUMPI 00000c59: PUSH2 0x0c64 00000c5c: PUSH2 0x058d 00000c5f: SWAP2 00000c60: PUSH2 0x42b9 00000c63: JUMP 00000c64: JUMPDEST 00000c65: PUSH1 0x40 00000c67: MLOAD 00000c68: PUSH1 0x01 00000c6a: PUSH1 0x01 00000c6c: PUSH1 0x80 00000c6e: SHL 00000c6f: SUB 00000c70: SWAP1 00000c71: SWAP2 00000c72: AND 00000c73: DUP2 00000c74: MSTORE 00000c75: SWAP1 00000c76: DUP2 00000c77: SWAP1 00000c78: PUSH1 0x20 00000c7a: DUP3 00000c7b: ADD 00000c7c: SWAP1 00000c7d: JUMP 00000c7e: JUMPDEST 00000c7f: PUSH4 0x20825011 00000c84: PUSH1 0xe0 00000c86: SHL 00000c87: PUSH0 00000c88: MSTORE 00000c89: PUSH1 0x04 00000c8b: MSTORE 00000c8c: CALLER 00000c8d: PUSH1 0x24 00000c8f: MSTORE 00000c90: PUSH1 0x44 00000c92: PUSH0 00000c93: REVERT 00000c94: JUMPDEST 00000c95: PUSH4 0xd0a172b3 00000c9a: PUSH1 0xe0 00000c9c: SHL 00000c9d: PUSH0 00000c9e: MSTORE 00000c9f: PUSH1 0x04 00000ca1: MSTORE 00000ca2: PUSH1 0x24 00000ca4: PUSH0 00000ca5: REVERT 00000ca6: JUMPDEST 00000ca7: CALLVALUE 00000ca8: PUSH2 0x0436 00000cab: JUMPI 00000cac: PUSH1 0x20 00000cae: CALLDATASIZE 00000caf: PUSH1 0x03 00000cb1: NOT 00000cb2: ADD 00000cb3: SLT 00000cb4: PUSH2 0x0436 00000cb7: JUMPI 00000cb8: PUSH1 0x04 00000cba: CALLDATALOAD 00000cbb: PUSH2 0x0cc3 00000cbe: DUP2 00000cbf: PUSH2 0x3b56 00000cc2: JUMP 00000cc3: JUMPDEST 00000cc4: PUSH0 00000cc5: MSTORE 00000cc6: PUSH1 0x0e 00000cc8: PUSH1 0x20 00000cca: MSTORE 00000ccb: PUSH1 0x20 00000ccd: PUSH1 0xff 00000ccf: PUSH1 0x01 00000cd1: PUSH1 0x40 00000cd3: PUSH0 00000cd4: KECCAK256 00000cd5: ADD 00000cd6: SLOAD 00000cd7: PUSH1 0xa0 00000cd9: SHR 00000cda: AND 00000cdb: PUSH1 0x40 00000cdd: MLOAD 00000cde: SWAP1 00000cdf: ISZERO 00000ce0: ISZERO 00000ce1: DUP2 00000ce2: MSTORE 00000ce3: RETURN 00000ce4: JUMPDEST 00000ce5: CALLVALUE 00000ce6: PUSH2 0x0436 00000ce9: JUMPI 00000cea: PUSH2 0x0708 00000ced: PUSH2 0x0cf5 00000cf0: CALLDATASIZE 00000cf1: PUSH2 0x0a0d 00000cf4: JUMP 00000cf5: JUMPDEST 00000cf6: SWAP1 00000cf7: PUSH1 0x40 00000cf9: MLOAD 00000cfa: SWAP3 00000cfb: PUSH2 0x0d05 00000cfe: PUSH1 0x20 00000d00: DUP6 00000d01: PUSH2 0x240b 00000d04: JUMP 00000d05: JUMPDEST 00000d06: PUSH0 00000d07: DUP5 00000d08: MSTORE 00000d09: PUSH2 0x38bd 00000d0c: JUMP 00000d0d: JUMPDEST 00000d0e: PUSH1 0x20 00000d10: CALLDATASIZE 00000d11: PUSH1 0x03 00000d13: NOT 00000d14: ADD 00000d15: SLT 00000d16: PUSH2 0x0436 00000d19: JUMPI 00000d1a: PUSH1 0x04 00000d1c: CALLDATALOAD 00000d1d: PUSH2 0x0d24 00000d20: PUSH2 0x4278 00000d23: JUMP 00000d24: JUMPDEST 00000d25: PUSH2 0x0d2d 00000d28: DUP2 00000d29: PUSH2 0x3b56 00000d2c: JUMP 00000d2d: JUMPDEST 00000d2e: DUP1 00000d2f: PUSH0 00000d30: MSTORE 00000d31: PUSH1 0x0e 00000d33: PUSH1 0x20 00000d35: MSTORE 00000d36: PUSH1 0xff 00000d38: PUSH1 0x01 00000d3a: PUSH1 0x40 00000d3c: PUSH0 00000d3d: KECCAK256 00000d3e: ADD 00000d3f: SLOAD 00000d40: PUSH1 0xa0 00000d42: SHR 00000d43: AND 00000d44: ISZERO 00000d45: PUSH2 0x0d82 00000d48: JUMPI 00000d49: DUP1 00000d4a: PUSH0 00000d4b: MSTORE 00000d4c: PUSH1 0x03 00000d4e: PUSH1 0x20 00000d50: MSTORE 00000d51: PUSH2 0x0d75 00000d54: PUSH2 0x0d71 00000d57: PUSH2 0x0d6b 00000d5a: PUSH1 0x40 00000d5c: PUSH0 00000d5d: KECCAK256 00000d5e: PUSH1 0x01 00000d60: PUSH1 0x01 00000d62: PUSH1 0xa0 00000d64: SHL 00000d65: SUB 00000d66: SWAP1 00000d67: SLOAD 00000d68: AND 00000d69: SWAP1 00000d6a: JUMP 00000d6b: JUMPDEST 00000d6c: DUP4 00000d6d: PUSH2 0x45ef 00000d70: JUMP 00000d71: JUMPDEST 00000d72: ISZERO 00000d73: SWAP1 00000d74: JUMP 00000d75: JUMPDEST 00000d76: PUSH2 0x0c7e 00000d79: JUMPI 00000d7a: PUSH2 0x0708 00000d7d: SWAP1 00000d7e: PUSH2 0x45fa 00000d81: JUMP 00000d82: JUMPDEST 00000d83: PUSH4 0x3090f59b 00000d88: PUSH1 0xe1 00000d8a: SHL 00000d8b: PUSH0 00000d8c: MSTORE 00000d8d: PUSH1 0x04 00000d8f: MSTORE 00000d90: PUSH1 0x24 00000d92: PUSH0 00000d93: REVERT 00000d94: JUMPDEST 00000d95: CALLVALUE 00000d96: PUSH2 0x0436 00000d99: JUMPI 00000d9a: PUSH0 00000d9b: CALLDATASIZE 00000d9c: PUSH1 0x03 00000d9e: NOT 00000d9f: ADD 00000da0: SLT 00000da1: PUSH2 0x0436 00000da4: JUMPI 00000da5: PUSH1 0x20 00000da7: PUSH1 0x01 00000da9: PUSH1 0x01 00000dab: PUSH1 0xa0 00000dad: SHL 00000dae: SUB 00000daf: PUSH1 0x0a 00000db1: SLOAD 00000db2: AND 00000db3: PUSH1 0x40 00000db5: MLOAD 00000db6: SWAP1 00000db7: DUP2 00000db8: MSTORE 00000db9: RETURN 00000dba: JUMPDEST 00000dbb: CALLVALUE 00000dbc: PUSH2 0x0436 00000dbf: JUMPI 00000dc0: PUSH1 0x20 00000dc2: CALLDATASIZE 00000dc3: PUSH1 0x03 00000dc5: NOT 00000dc6: ADD 00000dc7: SLT 00000dc8: PUSH2 0x0436 00000dcb: JUMPI 00000dcc: PUSH1 0x04 00000dce: CALLDATALOAD 00000dcf: PUSH2 0x0dd7 00000dd2: DUP2 00000dd3: PUSH2 0x3b56 00000dd6: JUMP 00000dd7: JUMPDEST 00000dd8: PUSH0 00000dd9: SWAP1 00000dda: PUSH2 0x0de2 00000ddd: DUP2 00000dde: PUSH2 0x40e5 00000de1: JUMP 00000de2: JUMPDEST 00000de3: PUSH1 0x05 00000de5: DUP2 00000de6: LT 00000de7: ISZERO 00000de8: PUSH2 0x0872 00000deb: JUMPI 00000dec: PUSH1 0x02 00000dee: SUB 00000def: PUSH2 0x0e00 00000df2: JUMPI 00000df3: POP 00000df4: PUSH1 0x40 00000df6: MLOAD 00000df7: SWAP1 00000df8: ISZERO 00000df9: ISZERO 00000dfa: DUP2 00000dfb: MSTORE 00000dfc: PUSH1 0x20 00000dfe: SWAP1 00000dff: RETURN 00000e00: JUMPDEST 00000e01: SWAP1 00000e02: POP 00000e03: PUSH0 00000e04: MSTORE 00000e05: PUSH1 0x0e 00000e07: PUSH1 0x20 00000e09: MSTORE 00000e0a: PUSH1 0xff 00000e0c: PUSH1 0x40 00000e0e: PUSH0 00000e0f: KECCAK256 00000e10: SLOAD 00000e11: PUSH1 0xf0 00000e13: SHR 00000e14: AND 00000e15: PUSH0 00000e16: PUSH2 0x0472 00000e19: JUMP 00000e1a: JUMPDEST 00000e1b: CALLVALUE 00000e1c: PUSH2 0x0436 00000e1f: JUMPI 00000e20: PUSH1 0x20 00000e22: CALLDATASIZE 00000e23: PUSH1 0x03 00000e25: NOT 00000e26: ADD 00000e27: SLT 00000e28: PUSH2 0x0436 00000e2b: JUMPI 00000e2c: PUSH1 0x20 00000e2e: PUSH2 0x0e41 00000e31: PUSH1 0x04 00000e33: CALLDATALOAD 00000e34: PUSH2 0x0e3c 00000e37: DUP2 00000e38: PUSH2 0x3b56 00000e3b: JUMP 00000e3c: JUMPDEST 00000e3d: PUSH2 0x3df4 00000e40: JUMP 00000e41: JUMPDEST 00000e42: PUSH1 0x01 00000e44: PUSH1 0x01 00000e46: PUSH1 0x80 00000e48: SHL 00000e49: SUB 00000e4a: PUSH1 0x40 00000e4c: MLOAD 00000e4d: SWAP2 00000e4e: AND 00000e4f: DUP2 00000e50: MSTORE 00000e51: RETURN 00000e52: JUMPDEST 00000e53: PUSH1 0x40 00000e55: CALLDATASIZE 00000e56: PUSH1 0x03 00000e58: NOT 00000e59: ADD 00000e5a: SLT 00000e5b: PUSH2 0x0436 00000e5e: JUMPI 00000e5f: PUSH1 0x04 00000e61: CALLDATALOAD 00000e62: PUSH1 0x01 00000e64: PUSH1 0x01 00000e66: PUSH1 0x40 00000e68: SHL 00000e69: SUB 00000e6a: DUP2 00000e6b: GT 00000e6c: PUSH2 0x0436 00000e6f: JUMPI 00000e70: PUSH2 0x0e7d 00000e73: SWAP1 00000e74: CALLDATASIZE 00000e75: SWAP1 00000e76: PUSH1 0x04 00000e78: ADD 00000e79: PUSH2 0x0877 00000e7c: JUMP 00000e7d: JUMPDEST 00000e7e: PUSH1 0x24 00000e80: CALLDATALOAD 00000e81: PUSH1 0x01 00000e83: PUSH1 0x01 00000e85: PUSH1 0x40 00000e87: SHL 00000e88: SUB 00000e89: DUP2 00000e8a: GT 00000e8b: PUSH2 0x0436 00000e8e: JUMPI 00000e8f: PUSH2 0x0e9c 00000e92: SWAP1 00000e93: CALLDATASIZE 00000e94: SWAP1 00000e95: PUSH1 0x04 00000e97: ADD 00000e98: PUSH2 0x0877 00000e9b: JUMP 00000e9c: JUMPDEST 00000e9d: SWAP3 00000e9e: SWAP1 00000e9f: PUSH2 0x0ea6 00000ea2: PUSH2 0x4278 00000ea5: JUMP 00000ea6: JUMPDEST 00000ea7: DUP4 00000ea8: DUP4 00000ea9: SUB 00000eaa: PUSH2 0x0fb3 00000ead: JUMPI 00000eae: PUSH0 00000eaf: JUMPDEST 00000eb0: DUP4 00000eb1: DUP2 00000eb2: LT 00000eb3: PUSH2 0x0eb8 00000eb6: JUMPI 00000eb7: STOP 00000eb8: JUMPDEST 00000eb9: DUP1 00000eba: PUSH0 00000ebb: DUP1 00000ebc: PUSH2 0x0ec8 00000ebf: PUSH1 0x01 00000ec1: SWAP5 00000ec2: DUP9 00000ec3: DUP9 00000ec4: PUSH2 0x3502 00000ec7: JUMP 00000ec8: JUMPDEST 00000ec9: CALLDATALOAD 00000eca: PUSH2 0x0ef0 00000ecd: PUSH2 0x0ed7 00000ed0: DUP6 00000ed1: DUP11 00000ed2: DUP11 00000ed3: PUSH2 0x3502 00000ed6: JUMP 00000ed7: JUMPDEST 00000ed8: CALLDATALOAD 00000ed9: PUSH0 00000eda: MSTORE 00000edb: PUSH1 0x03 00000edd: PUSH1 0x20 00000edf: MSTORE 00000ee0: PUSH1 0x01 00000ee2: PUSH1 0x01 00000ee4: PUSH1 0xa0 00000ee6: SHL 00000ee7: SUB 00000ee8: PUSH1 0x40 00000eea: PUSH0 00000eeb: KECCAK256 00000eec: SLOAD 00000eed: AND 00000eee: SWAP1 00000eef: JUMP 00000ef0: JUMPDEST 00000ef1: PUSH2 0x0f52 00000ef4: PUSH2 0x0f06 00000ef7: PUSH2 0x0f01 00000efa: DUP8 00000efb: DUP14 00000efc: DUP12 00000efd: PUSH2 0x3502 00000f00: JUMP 00000f01: JUMPDEST 00000f02: PUSH2 0x3512 00000f05: JUMP 00000f06: JUMPDEST 00000f07: PUSH1 0x40 00000f09: MLOAD 00000f0a: PUSH4 0x07eea36b 00000f0f: PUSH1 0xe5 00000f11: SHL 00000f12: PUSH1 0x20 00000f14: DUP3 00000f15: ADD 00000f16: SWAP1 00000f17: DUP2 00000f18: MSTORE 00000f19: PUSH1 0x24 00000f1b: DUP3 00000f1c: ADD 00000f1d: SWAP6 00000f1e: SWAP1 00000f1f: SWAP6 00000f20: MSTORE 00000f21: PUSH1 0x01 00000f23: PUSH1 0x01 00000f25: PUSH1 0xa0 00000f27: SHL 00000f28: SUB 00000f29: SWAP1 00000f2a: SWAP4 00000f2b: AND 00000f2c: PUSH1 0x44 00000f2e: DUP5 00000f2f: ADD 00000f30: MSTORE 00000f31: PUSH1 0x01 00000f33: PUSH1 0x01 00000f35: PUSH1 0x80 00000f37: SHL 00000f38: SUB 00000f39: AND 00000f3a: PUSH1 0x64 00000f3c: DUP4 00000f3d: ADD 00000f3e: MSTORE 00000f3f: DUP2 00000f40: PUSH1 0x84 00000f42: DUP2 00000f43: ADD 00000f44: JUMPDEST 00000f45: SUB 00000f46: PUSH1 0x1f 00000f48: NOT 00000f49: DUP2 00000f4a: ADD 00000f4b: DUP4 00000f4c: MSTORE 00000f4d: DUP3 00000f4e: PUSH2 0x240b 00000f51: JUMP 00000f52: JUMPDEST 00000f53: MLOAD 00000f54: SWAP1 00000f55: ADDRESS 00000f56: GAS 00000f57: DELEGATECALL 00000f58: PUSH2 0x0f5f 00000f5b: PUSH2 0x33a0 00000f5e: JUMP 00000f5f: JUMPDEST 00000f60: SWAP1 00000f61: ISZERO 00000f62: PUSH2 0x0f6d 00000f65: JUMPI 00000f66: JUMPDEST 00000f67: POP 00000f68: ADD 00000f69: PUSH2 0x0eaf 00000f6c: JUMP 00000f6d: JUMPDEST 00000f6e: PUSH32 0x36b7a9a3f5bfe69ad6ae04107796a967de5c92c761b4d7a4c34e985670666419 00000f8f: PUSH2 0x0faa 00000f92: PUSH2 0x0f9c 00000f95: DUP5 00000f96: DUP10 00000f97: DUP10 00000f98: PUSH2 0x3502 00000f9b: JUMP 00000f9c: JUMPDEST 00000f9d: CALLDATALOAD 00000f9e: SWAP3 00000f9f: PUSH1 0x40 00000fa1: MLOAD 00000fa2: SWAP2 00000fa3: DUP3 00000fa4: SWAP2 00000fa5: DUP3 00000fa6: PUSH2 0x0513 00000fa9: JUMP 00000faa: JUMPDEST 00000fab: SUB 00000fac: SWAP1 00000fad: LOG2 00000fae: PUSH0 00000faf: PUSH2 0x0f66 00000fb2: JUMP 00000fb3: JUMPDEST 00000fb4: PUSH4 0x52f6a1f3 00000fb9: PUSH1 0xe1 00000fbb: SHL 00000fbc: PUSH0 00000fbd: MSTORE 00000fbe: PUSH1 0x04 00000fc0: DUP4 00000fc1: SWAP1 00000fc2: MSTORE 00000fc3: PUSH1 0x24 00000fc5: DUP5 00000fc6: SWAP1 00000fc7: MSTORE 00000fc8: PUSH1 0x44 00000fca: PUSH0 00000fcb: REVERT 00000fcc: JUMPDEST 00000fcd: CALLVALUE 00000fce: PUSH2 0x0436 00000fd1: JUMPI 00000fd2: PUSH0 00000fd3: CALLDATASIZE 00000fd4: PUSH1 0x03 00000fd6: NOT 00000fd7: ADD 00000fd8: SLT 00000fd9: PUSH2 0x0436 00000fdc: JUMPI 00000fdd: PUSH1 0x20 00000fdf: PUSH1 0x01 00000fe1: PUSH1 0x01 00000fe3: PUSH1 0xa0 00000fe5: SHL 00000fe6: SUB 00000fe7: PUSH0 00000fe8: SLOAD 00000fe9: AND 00000fea: PUSH1 0x40 00000fec: MLOAD 00000fed: SWAP1 00000fee: DUP2 00000fef: MSTORE 00000ff0: RETURN 00000ff1: JUMPDEST 00000ff2: CALLVALUE 00000ff3: PUSH2 0x0436 00000ff6: JUMPI 00000ff7: PUSH1 0x20 00000ff9: CALLDATASIZE 00000ffa: PUSH1 0x03 00000ffc: NOT 00000ffd: ADD 00000ffe: SLT 00000fff: PUSH2 0x0436 00001002: JUMPI 00001003: PUSH1 0x20 00001005: PUSH2 0x100f 00001008: PUSH1 0x04 0000100a: CALLDATALOAD 0000100b: PUSH2 0x3b23 0000100e: JUMP 0000100f: JUMPDEST 00001010: PUSH1 0x01 00001012: PUSH1 0x01 00001014: PUSH1 0xa0 00001016: SHL 00001017: SUB 00001018: PUSH1 0x40 0000101a: MLOAD 0000101b: SWAP2 0000101c: AND 0000101d: DUP2 0000101e: MSTORE 0000101f: RETURN 00001020: JUMPDEST 00001021: CALLVALUE 00001022: PUSH2 0x0436 00001025: JUMPI 00001026: PUSH1 0x40 00001028: CALLDATASIZE 00001029: PUSH1 0x03 0000102b: NOT 0000102c: ADD 0000102d: SLT 0000102e: PUSH2 0x0436 00001031: JUMPI 00001032: PUSH1 0x04 00001034: CALLDATALOAD 00001035: PUSH2 0x103d 00001038: DUP2 00001039: PUSH2 0x0657 0000103c: JUMP 0000103d: JUMPDEST 0000103e: PUSH1 0x24 00001040: CALLDATALOAD 00001041: SWAP1 00001042: PUSH2 0x104a 00001045: DUP3 00001046: PUSH2 0x0657 00001049: JUMP 0000104a: JUMPDEST 0000104b: PUSH2 0x1052 0000104e: PUSH2 0x424d 00001051: JUMP 00001052: JUMPDEST 00001053: PUSH1 0x40 00001055: MLOAD 00001056: PUSH4 0x70a08231 0000105b: PUSH1 0xe0 0000105d: SHL 0000105e: DUP2 0000105f: MSTORE 00001060: ADDRESS 00001061: PUSH1 0x04 00001063: DUP3 00001064: ADD 00001065: MSTORE 00001066: PUSH1 0x01 00001068: PUSH1 0x01 0000106a: PUSH1 0xa0 0000106c: SHL 0000106d: SUB 0000106e: DUP3 0000106f: AND 00001070: SWAP3 00001071: SWAP1 00001072: PUSH1 0x20 00001074: DUP2 00001075: PUSH1 0x24 00001077: DUP2 00001078: DUP8 00001079: GAS 0000107a: STATICCALL 0000107b: DUP1 0000107c: ISZERO 0000107d: PUSH2 0x0bae 00001080: JUMPI 00001081: PUSH2 0x0708 00001084: SWAP5 00001085: PUSH2 0x10a2 00001088: SWAP3 00001089: PUSH0 0000108a: SWAP3 0000108b: PUSH2 0x10a8 0000108e: JUMPI 0000108f: JUMPDEST 00001090: POP 00001091: PUSH0 00001092: MSTORE 00001093: PUSH1 0x07 00001095: PUSH1 0x20 00001097: MSTORE 00001098: PUSH1 0x40 0000109a: PUSH0 0000109b: KECCAK256 0000109c: SLOAD 0000109d: SWAP1 0000109e: PUSH2 0x3539 000010a1: JUMP 000010a2: JUMPDEST 000010a3: SWAP2 000010a4: PUSH2 0x468c 000010a7: JUMP 000010a8: JUMPDEST 000010a9: PUSH2 0x10cb 000010ac: SWAP2 000010ad: SWAP3 000010ae: POP 000010af: PUSH1 0x20 000010b1: RETURNDATASIZE 000010b2: PUSH1 0x20 000010b4: GT 000010b5: PUSH2 0x10d2 000010b8: JUMPI 000010b9: JUMPDEST 000010ba: PUSH2 0x10c3 000010bd: DUP2 000010be: DUP4 000010bf: PUSH2 0x240b 000010c2: JUMP 000010c3: JUMPDEST 000010c4: DUP2 000010c5: ADD 000010c6: SWAP1 000010c7: PUSH2 0x351c 000010ca: JUMP 000010cb: JUMPDEST 000010cc: SWAP1 000010cd: PUSH0 000010ce: PUSH2 0x108f 000010d1: JUMP 000010d2: JUMPDEST 000010d3: POP 000010d4: RETURNDATASIZE 000010d5: PUSH2 0x10b9 000010d8: JUMP 000010d9: JUMPDEST 000010da: CALLVALUE 000010db: PUSH2 0x0436 000010de: JUMPI 000010df: PUSH1 0x20 000010e1: CALLDATASIZE 000010e2: PUSH1 0x03 000010e4: NOT 000010e5: ADD 000010e6: SLT 000010e7: PUSH2 0x0436 000010ea: JUMPI 000010eb: PUSH1 0x04 000010ed: CALLDATALOAD 000010ee: PUSH2 0x10f6 000010f1: DUP2 000010f2: PUSH2 0x0657 000010f5: JUMP 000010f6: JUMPDEST 000010f7: PUSH2 0x10fe 000010fa: PUSH2 0x424d 000010fd: JUMP 000010fe: JUMPDEST 000010ff: PUSH1 0x08 00001101: SLOAD 00001102: SWAP1 00001103: PUSH1 0x01 00001105: PUSH1 0x01 00001107: PUSH1 0xa0 00001109: SHL 0000110a: SUB 0000110b: DUP3 0000110c: AND 0000110d: DUP1 0000110e: PUSH2 0x112e 00001111: JUMPI 00001112: POP 00001113: PUSH1 0x01 00001115: PUSH1 0x01 00001117: PUSH1 0xa0 00001119: SHL 0000111a: SUB 0000111b: AND 0000111c: SWAP1 0000111d: PUSH1 0x01 0000111f: PUSH1 0x01 00001121: PUSH1 0xa0 00001123: SHL 00001124: SUB 00001125: NOT 00001126: AND 00001127: OR 00001128: PUSH1 0x08 0000112a: SSTORE 0000112b: PUSH0 0000112c: DUP1 0000112d: RETURN 0000112e: JUMPDEST 0000112f: PUSH4 0x73f4d8a7 00001134: PUSH1 0xe1 00001136: SHL 00001137: PUSH0 00001138: MSTORE 00001139: PUSH1 0x04 0000113b: MSTORE 0000113c: PUSH1 0x24 0000113e: PUSH0 0000113f: REVERT 00001140: JUMPDEST 00001141: CALLVALUE 00001142: PUSH2 0x0436 00001145: JUMPI 00001146: PUSH1 0x20 00001148: CALLDATASIZE 00001149: PUSH1 0x03 0000114b: NOT 0000114c: ADD 0000114d: SLT 0000114e: PUSH2 0x0436 00001151: JUMPI 00001152: PUSH1 0x01 00001154: PUSH1 0x01 00001156: PUSH1 0xa0 00001158: SHL 00001159: SUB 0000115a: PUSH1 0x04 0000115c: CALLDATALOAD 0000115d: PUSH2 0x1165 00001160: DUP2 00001161: PUSH2 0x0657 00001164: JUMP 00001165: JUMPDEST 00001166: AND 00001167: DUP1 00001168: ISZERO 00001169: PUSH2 0x1182 0000116c: JUMPI 0000116d: PUSH0 0000116e: MSTORE 0000116f: PUSH1 0x04 00001171: PUSH1 0x20 00001173: MSTORE 00001174: PUSH1 0x20 00001176: PUSH1 0x40 00001178: PUSH0 00001179: KECCAK256 0000117a: SLOAD 0000117b: PUSH1 0x40 0000117d: MLOAD 0000117e: SWAP1 0000117f: DUP2 00001180: MSTORE 00001181: RETURN 00001182: JUMPDEST 00001183: PUSH4 0x22718ad9 00001188: PUSH1 0xe2 0000118a: SHL 0000118b: PUSH0 0000118c: MSTORE 0000118d: PUSH0 0000118e: PUSH1 0x04 00001190: MSTORE 00001191: PUSH1 0x24 00001193: PUSH0 00001194: REVERT 00001195: JUMPDEST 00001196: SWAP1 00001197: DUP2 00001198: PUSH2 0x0120 0000119b: SWAP2 0000119c: SUB 0000119d: SLT 0000119e: PUSH2 0x0436 000011a1: JUMPI 000011a2: SWAP1 000011a3: JUMP 000011a4: JUMPDEST 000011a5: PUSH1 0x40 000011a7: SWAP1 000011a8: PUSH1 0x23 000011aa: NOT 000011ab: ADD 000011ac: SLT 000011ad: PUSH2 0x0436 000011b0: JUMPI 000011b1: PUSH1 0x24 000011b3: SWAP1 000011b4: JUMP 000011b5: JUMPDEST 000011b6: PUSH1 0x40 000011b8: SWAP1 000011b9: PUSH1 0x63 000011bb: NOT 000011bc: ADD 000011bd: SLT 000011be: PUSH2 0x0436 000011c1: JUMPI 000011c2: PUSH1 0x64 000011c4: SWAP1 000011c5: JUMP 000011c6: JUMPDEST 000011c7: PUSH5 0xffffffffff 000011cd: DUP2 000011ce: AND 000011cf: SUB 000011d0: PUSH2 0x0436 000011d3: JUMPI 000011d4: JUMP 000011d5: JUMPDEST 000011d6: PUSH1 0x80 000011d8: CALLDATASIZE 000011d9: PUSH1 0x03 000011db: NOT 000011dc: ADD 000011dd: SLT 000011de: PUSH2 0x0436 000011e1: JUMPI 000011e2: PUSH1 0x04 000011e4: CALLDATALOAD 000011e5: PUSH1 0x01 000011e7: PUSH1 0x01 000011e9: PUSH1 0x40 000011eb: SHL 000011ec: SUB 000011ed: DUP2 000011ee: GT 000011ef: PUSH2 0x0436 000011f2: JUMPI 000011f3: PUSH2 0x12b4 000011f6: PUSH2 0x1206 000011f9: PUSH2 0x058d 000011fc: SWAP3 000011fd: CALLDATASIZE 000011fe: SWAP1 000011ff: PUSH1 0x04 00001201: ADD 00001202: PUSH2 0x1195 00001205: JUMP 00001206: JUMPDEST 00001207: PUSH2 0x120f 0000120a: CALLDATASIZE 0000120b: PUSH2 0x11a4 0000120e: JUMP 0000120f: JUMPDEST 00001210: SWAP1 00001211: PUSH1 0x64 00001213: CALLDATALOAD 00001214: PUSH2 0x121c 00001217: DUP2 00001218: PUSH2 0x11c6 0000121b: JUMP 0000121c: JUMPDEST 0000121d: PUSH2 0x1224 00001220: PUSH2 0x4278 00001223: JUMP 00001224: JUMPDEST 00001225: PUSH1 0x80 00001227: DUP3 00001228: ADD 00001229: CALLDATALOAD 0000122a: SWAP3 0000122b: PUSH2 0x1233 0000122e: DUP5 0000122f: PUSH2 0x1f82 00001232: JUMP 00001233: JUMPDEST 00001234: PUSH1 0x40 00001236: DUP4 00001237: ADD 00001238: CALLDATALOAD 00001239: SWAP3 0000123a: PUSH2 0x1242 0000123d: DUP5 0000123e: PUSH2 0x3097 00001241: JUMP 00001242: JUMPDEST 00001243: PUSH1 0x20 00001245: DUP2 00001246: ADD 00001247: CALLDATALOAD 00001248: PUSH2 0x1250 0000124b: DUP2 0000124c: PUSH2 0x0657 0000124f: JUMP 00001250: JUMPDEST 00001251: DUP2 00001252: CALLDATALOAD 00001253: SWAP1 00001254: PUSH2 0x125c 00001257: DUP3 00001258: PUSH2 0x0657 0000125b: JUMP 0000125c: JUMPDEST 0000125d: PUSH2 0x126a 00001260: PUSH2 0x0100 00001263: DUP5 00001264: ADD 00001265: DUP5 00001266: PUSH2 0x3345 00001269: JUMP 0000126a: JUMPDEST 0000126b: SWAP7 0000126c: SWAP1 0000126d: SWAP6 0000126e: PUSH2 0x12ae 00001271: PUSH2 0x12a6 00001274: PUSH2 0x129b 00001277: PUSH1 0x60 00001279: DUP9 0000127a: ADD 0000127b: CALLDATALOAD 0000127c: SWAP10 0000127d: PUSH2 0x1285 00001280: DUP12 00001281: PUSH2 0x0657 00001284: JUMP 00001285: JUMPDEST 00001286: PUSH1 0xa0 00001288: DUP10 00001289: ADD 0000128a: CALLDATALOAD 0000128b: SWAP12 0000128c: PUSH2 0x1294 0000128f: DUP14 00001290: PUSH2 0x1f82 00001293: JUMP 00001294: JUMPDEST 00001295: CALLDATASIZE 00001296: SWAP2 00001297: PUSH2 0x2487 0000129a: JUMP 0000129b: JUMPDEST 0000129c: SWAP7 0000129d: PUSH1 0xc0 0000129f: CALLDATASIZE 000012a0: SWAP2 000012a1: ADD 000012a2: PUSH2 0x355a 000012a5: JUMP 000012a6: JUMPDEST 000012a7: SWAP7 000012a8: CALLDATASIZE 000012a9: SWAP1 000012aa: PUSH2 0x3594 000012ad: JUMP 000012ae: JUMPDEST 000012af: SWAP9 000012b0: PUSH2 0x486a 000012b3: JUMP 000012b4: JUMPDEST 000012b5: PUSH1 0x40 000012b7: MLOAD 000012b8: SWAP1 000012b9: DUP2 000012ba: MSTORE 000012bb: SWAP1 000012bc: DUP2 000012bd: SWAP1 000012be: PUSH1 0x20 000012c0: DUP3 000012c1: ADD 000012c2: SWAP1 000012c3: JUMP 000012c4: JUMPDEST 000012c5: CALLVALUE 000012c6: PUSH2 0x0436 000012c9: JUMPI 000012ca: PUSH1 0x20 000012cc: CALLDATASIZE 000012cd: PUSH1 0x03 000012cf: NOT 000012d0: ADD 000012d1: SLT 000012d2: PUSH2 0x0436 000012d5: JUMPI 000012d6: PUSH1 0x04 000012d8: CALLDATALOAD 000012d9: PUSH2 0x12e1 000012dc: DUP2 000012dd: PUSH2 0x3b56 000012e0: JUMP 000012e1: JUMPDEST 000012e2: DUP1 000012e3: PUSH0 000012e4: MSTORE 000012e5: PUSH1 0x0e 000012e7: PUSH1 0x20 000012e9: MSTORE 000012ea: PUSH1 0xff 000012ec: PUSH1 0x01 000012ee: PUSH1 0x40 000012f0: PUSH0 000012f1: KECCAK256 000012f2: ADD 000012f3: SLOAD 000012f4: PUSH1 0xb0 000012f6: SHR 000012f7: AND 000012f8: PUSH1 0x03 000012fa: DUP2 000012fb: LT 000012fc: ISZERO 000012fd: PUSH2 0x0872 00001300: JUMPI 00001301: PUSH2 0x133f 00001304: JUMPI 00001305: PUSH2 0x1327 00001308: PUSH2 0x131c 0000130b: PUSH2 0x058d 0000130e: SWAP3 0000130f: PUSH0 00001310: MSTORE 00001311: PUSH1 0x0c 00001313: PUSH1 0x20 00001315: MSTORE 00001316: PUSH1 0x40 00001318: PUSH0 00001319: KECCAK256 0000131a: SWAP1 0000131b: JUMP 0000131c: JUMPDEST 0000131d: SLOAD 0000131e: PUSH5 0xffffffffff 00001324: AND 00001325: SWAP1 00001326: JUMP 00001327: JUMPDEST 00001328: PUSH1 0x40 0000132a: MLOAD 0000132b: PUSH5 0xffffffffff 00001331: SWAP1 00001332: SWAP2 00001333: AND 00001334: DUP2 00001335: MSTORE 00001336: SWAP1 00001337: DUP2 00001338: SWAP1 00001339: PUSH1 0x20 0000133b: DUP3 0000133c: ADD 0000133d: SWAP1 0000133e: JUMP 0000133f: JUMPDEST 00001340: PUSH0 00001341: MSTORE 00001342: PUSH1 0x0e 00001344: PUSH1 0x20 00001346: MSTORE 00001347: PUSH2 0x071b 0000134a: PUSH2 0x135e 0000134d: PUSH1 0x01 0000134f: PUSH1 0x40 00001351: PUSH0 00001352: KECCAK256 00001353: ADD 00001354: PUSH1 0xff 00001356: SWAP1 00001357: SLOAD 00001358: PUSH1 0xb0 0000135a: SHR 0000135b: AND 0000135c: SWAP1 0000135d: JUMP 0000135e: JUMPDEST 0000135f: PUSH4 0x319dec3f 00001364: PUSH1 0xe0 00001366: SHL 00001367: PUSH0 00001368: MSTORE 00001369: PUSH2 0x35ca 0000136c: JUMP 0000136d: JUMPDEST 0000136e: CALLVALUE 0000136f: PUSH2 0x0436 00001372: JUMPI 00001373: PUSH0 00001374: CALLDATASIZE 00001375: PUSH1 0x03 00001377: NOT 00001378: ADD 00001379: SLT 0000137a: PUSH2 0x0436 0000137d: JUMPI 0000137e: SELFBALANCE 0000137f: PUSH0 00001380: DUP1 00001381: DUP1 00001382: DUP1 00001383: DUP5 00001384: PUSH1 0x01 00001386: PUSH1 0x01 00001388: PUSH1 0xa0 0000138a: SHL 0000138b: SUB 0000138c: DUP3 0000138d: SLOAD 0000138e: AND 0000138f: GAS 00001390: CALL 00001391: POP 00001392: PUSH2 0x1399 00001395: PUSH2 0x33a0 00001398: JUMP 00001399: JUMPDEST 0000139a: POP 0000139b: PUSH32 0x56dedb874d4fc0f70753f281fa2c25e82085163206086fe826cf834b51701f6c 000013bc: PUSH1 0x20 000013be: PUSH1 0x01 000013c0: PUSH1 0x01 000013c2: PUSH1 0xa0 000013c4: SHL 000013c5: SUB 000013c6: PUSH0 000013c7: SLOAD 000013c8: AND 000013c9: SWAP3 000013ca: PUSH1 0x40 000013cc: MLOAD 000013cd: SWAP1 000013ce: DUP2 000013cf: MSTORE 000013d0: LOG2 000013d1: STOP 000013d2: JUMPDEST 000013d3: SWAP2 000013d4: DUP2 000013d5: PUSH1 0x1f 000013d7: DUP5 000013d8: ADD 000013d9: SLT 000013da: ISZERO 000013db: PUSH2 0x0436 000013de: JUMPI 000013df: DUP3 000013e0: CALLDATALOAD 000013e1: SWAP2 000013e2: PUSH1 0x01 000013e4: PUSH1 0x01 000013e6: PUSH1 0x40 000013e8: SHL 000013e9: SUB 000013ea: DUP4 000013eb: GT 000013ec: PUSH2 0x0436 000013ef: JUMPI 000013f0: PUSH1 0x20 000013f2: DUP1 000013f3: DUP6 000013f4: ADD 000013f5: SWAP5 000013f6: PUSH1 0x60 000013f8: DUP6 000013f9: MUL 000013fa: ADD 000013fb: ADD 000013fc: GT 000013fd: PUSH2 0x0436 00001400: JUMPI 00001401: JUMP 00001402: JUMPDEST 00001403: PUSH1 0x40 00001405: CALLDATASIZE 00001406: PUSH1 0x03 00001408: NOT 00001409: ADD 0000140a: SLT 0000140b: PUSH2 0x0436 0000140e: JUMPI 0000140f: PUSH1 0x04 00001411: CALLDATALOAD 00001412: PUSH1 0x01 00001414: PUSH1 0x01 00001416: PUSH1 0x40 00001418: SHL 00001419: SUB 0000141a: DUP2 0000141b: GT 0000141c: PUSH2 0x0436 0000141f: JUMPI 00001420: PUSH2 0x142d 00001423: SWAP1 00001424: CALLDATASIZE 00001425: SWAP1 00001426: PUSH1 0x04 00001428: ADD 00001429: PUSH2 0x1195 0000142c: JUMP 0000142d: JUMPDEST 0000142e: PUSH1 0x24 00001430: CALLDATALOAD 00001431: PUSH1 0x01 00001433: PUSH1 0x01 00001435: PUSH1 0x40 00001437: SHL 00001438: SUB 00001439: DUP2 0000143a: GT 0000143b: PUSH2 0x0436 0000143e: JUMPI 0000143f: PUSH2 0x144c 00001442: SWAP1 00001443: CALLDATASIZE 00001444: SWAP1 00001445: PUSH1 0x04 00001447: ADD 00001448: PUSH2 0x13d2 0000144b: JUMP 0000144c: JUMPDEST 0000144d: SWAP2 0000144e: PUSH2 0x1455 00001451: PUSH2 0x4278 00001454: JUMP 00001455: JUMPDEST 00001456: PUSH1 0x80 00001458: DUP2 00001459: ADD 0000145a: CALLDATALOAD 0000145b: SWAP1 0000145c: PUSH2 0x1464 0000145f: DUP3 00001460: PUSH2 0x1f82 00001463: JUMP 00001464: JUMPDEST 00001465: PUSH1 0x40 00001467: DUP2 00001468: ADD 00001469: CALLDATALOAD 0000146a: SWAP3 0000146b: PUSH2 0x1473 0000146e: DUP5 0000146f: PUSH2 0x3097 00001472: JUMP 00001473: JUMPDEST 00001474: PUSH1 0x20 00001476: DUP3 00001477: ADD 00001478: CALLDATALOAD 00001479: SWAP1 0000147a: PUSH2 0x1482 0000147d: DUP3 0000147e: PUSH2 0x0657 00001481: JUMP 00001482: JUMPDEST 00001483: DUP3 00001484: CALLDATALOAD 00001485: SWAP2 00001486: PUSH2 0x148e 00001489: DUP4 0000148a: PUSH2 0x0657 0000148d: JUMP 0000148e: JUMPDEST 0000148f: PUSH2 0x149c 00001492: PUSH2 0x0100 00001495: DUP6 00001496: ADD 00001497: DUP6 00001498: PUSH2 0x3345 0000149b: JUMP 0000149c: JUMPDEST 0000149d: SWAP7 0000149e: SWAP1 0000149f: PUSH1 0x60 000014a1: DUP7 000014a2: ADD 000014a3: CALLDATALOAD 000014a4: SWAP8 000014a5: PUSH2 0x14ad 000014a8: DUP10 000014a9: PUSH2 0x0657 000014ac: JUMP 000014ad: JUMPDEST 000014ae: PUSH1 0xa0 000014b0: DUP8 000014b1: ADD 000014b2: CALLDATALOAD 000014b3: SWAP10 000014b4: PUSH2 0x14bc 000014b7: DUP12 000014b8: PUSH2 0x1f82 000014bb: JUMP 000014bc: JUMPDEST 000014bd: PUSH2 0x14c5 000014c0: DUP2 000014c1: PUSH2 0x331a 000014c4: JUMP 000014c5: JUMPDEST 000014c6: SWAP6 000014c7: PUSH2 0x14d3 000014ca: PUSH1 0x40 000014cc: MLOAD 000014cd: SWAP8 000014ce: DUP9 000014cf: PUSH2 0x240b 000014d2: JUMP 000014d3: JUMPDEST 000014d4: DUP2 000014d5: DUP8 000014d6: MSTORE 000014d7: PUSH1 0x60 000014d9: PUSH1 0x20 000014db: DUP9 000014dc: ADD 000014dd: SWAP3 000014de: MUL 000014df: DUP2 000014e0: ADD 000014e1: SWAP1 000014e2: CALLDATASIZE 000014e3: DUP3 000014e4: GT 000014e5: PUSH2 0x0436 000014e8: JUMPI 000014e9: SWAP2 000014ea: JUMPDEST 000014eb: DUP2 000014ec: DUP4 000014ed: LT 000014ee: PUSH2 0x1520 000014f1: JUMPI 000014f2: POP 000014f3: PUSH2 0x058d 000014f6: PUSH2 0x12b4 000014f9: DUP14 000014fa: DUP14 000014fb: DUP14 000014fc: DUP14 000014fd: DUP14 000014fe: DUP14 000014ff: DUP14 00001500: DUP14 00001501: PUSH2 0x151a 00001504: PUSH2 0x150f 00001507: DUP16 00001508: DUP16 00001509: CALLDATASIZE 0000150a: SWAP2 0000150b: PUSH2 0x2487 0000150e: JUMP 0000150f: JUMPDEST 00001510: SWAP6 00001511: PUSH1 0xc0 00001513: CALLDATASIZE 00001514: SWAP2 00001515: ADD 00001516: PUSH2 0x355a 00001519: JUMP 0000151a: JUMPDEST 0000151b: SWAP6 0000151c: PUSH2 0x4bf9 0000151f: JUMP 00001520: JUMPDEST 00001521: PUSH1 0x60 00001523: DUP4 00001524: CALLDATASIZE 00001525: SUB 00001526: SLT 00001527: PUSH2 0x0436 0000152a: JUMPI 0000152b: PUSH1 0x20 0000152d: PUSH1 0x60 0000152f: SWAP2 00001530: PUSH1 0x40 00001532: MLOAD 00001533: PUSH2 0x153b 00001536: DUP2 00001537: PUSH2 0x23d0 0000153a: JUMP 0000153b: JUMPDEST 0000153c: DUP6 0000153d: CALLDATALOAD 0000153e: PUSH2 0x1546 00001541: DUP2 00001542: PUSH2 0x3097 00001545: JUMP 00001546: JUMPDEST 00001547: DUP2 00001548: MSTORE 00001549: DUP3 0000154a: DUP7 0000154b: ADD 0000154c: CALLDATALOAD 0000154d: PUSH2 0x1555 00001550: DUP2 00001551: PUSH2 0x360e 00001554: JUMP 00001555: JUMPDEST 00001556: DUP4 00001557: DUP3 00001558: ADD 00001559: MSTORE 0000155a: PUSH1 0x40 0000155c: DUP7 0000155d: ADD 0000155e: CALLDATALOAD 0000155f: PUSH2 0x1567 00001562: DUP2 00001563: PUSH2 0x11c6 00001566: JUMP 00001567: JUMPDEST 00001568: PUSH1 0x40 0000156a: DUP3 0000156b: ADD 0000156c: MSTORE 0000156d: DUP2 0000156e: MSTORE 0000156f: ADD 00001570: SWAP3 00001571: ADD 00001572: SWAP2 00001573: PUSH2 0x14ea 00001576: JUMP 00001577: JUMPDEST 00001578: CALLVALUE 00001579: PUSH2 0x0436 0000157c: JUMPI 0000157d: PUSH1 0x20 0000157f: CALLDATASIZE 00001580: PUSH1 0x03 00001582: NOT 00001583: ADD 00001584: SLT 00001585: PUSH2 0x0436 00001588: JUMPI 00001589: PUSH1 0x04 0000158b: CALLDATALOAD 0000158c: PUSH2 0x1594 0000158f: DUP2 00001590: PUSH2 0x0657 00001593: JUMP 00001594: JUMPDEST 00001595: PUSH2 0x159c 00001598: PUSH2 0x424d 0000159b: JUMP 0000159c: JUMPDEST 0000159d: PUSH1 0x01 0000159f: PUSH1 0x01 000015a1: PUSH1 0xa0 000015a3: SHL 000015a4: SUB 000015a5: DUP1 000015a6: PUSH1 0x0a 000015a8: SLOAD 000015a9: SWAP3 000015aa: AND 000015ab: SWAP2 000015ac: DUP3 000015ad: DUP3 000015ae: NOT 000015af: DUP3 000015b0: AND 000015b1: OR 000015b2: PUSH1 0x0a 000015b4: SSTORE 000015b5: AND 000015b6: PUSH1 0x01 000015b8: PUSH1 0x01 000015ba: PUSH1 0xa0 000015bc: SHL 000015bd: SUB 000015be: PUSH0 000015bf: SLOAD 000015c0: AND 000015c1: PUSH32 0xa2548bd4b805e907c1558a47b5858324fe8bb4a2e1ddfca647eecbf65610eebc 000015e2: PUSH0 000015e3: DUP1 000015e4: LOG4 000015e5: PUSH1 0x09 000015e7: SLOAD 000015e8: PUSH0 000015e9: NOT 000015ea: DUP2 000015eb: ADD 000015ec: SWAP1 000015ed: DUP2 000015ee: GT 000015ef: PUSH2 0x1634 000015f2: JUMPI 000015f3: PUSH2 0x162f 000015f6: PUSH32 0x6bd5c950a8d8df17f772f5af37cb3655737899cbf903264b9795592da439661c 00001617: SWAP2 00001618: PUSH1 0x40 0000161a: MLOAD 0000161b: SWAP2 0000161c: DUP3 0000161d: SWAP2 0000161e: DUP3 0000161f: SWAP2 00001620: SWAP1 00001621: PUSH1 0x20 00001623: PUSH1 0x40 00001625: DUP5 00001626: ADD 00001627: SWAP4 00001628: PUSH1 0x01 0000162a: DUP2 0000162b: MSTORE 0000162c: ADD 0000162d: MSTORE 0000162e: JUMP 0000162f: JUMPDEST 00001630: SUB 00001631: SWAP1 00001632: LOG1 00001633: STOP 00001634: JUMPDEST 00001635: PUSH2 0x32e6 00001638: JUMP 00001639: JUMPDEST 0000163a: PUSH1 0x20 0000163c: CALLDATASIZE 0000163d: PUSH1 0x03 0000163f: NOT 00001640: ADD 00001641: SLT 00001642: PUSH2 0x0436 00001645: JUMPI 00001646: PUSH1 0x04 00001648: CALLDATALOAD 00001649: PUSH2 0x1650 0000164c: PUSH2 0x4278 0000164f: JUMP 00001650: JUMPDEST 00001651: PUSH2 0x1659 00001654: DUP2 00001655: PUSH2 0x3b56 00001658: JUMP 00001659: JUMPDEST 0000165a: PUSH2 0x1662 0000165d: DUP2 0000165e: PUSH2 0x40e5 00001661: JUMP 00001662: JUMPDEST 00001663: PUSH2 0x166b 00001666: DUP2 00001667: PUSH2 0x20d6 0000166a: JUMP 0000166b: JUMPDEST 0000166c: PUSH1 0x04 0000166e: DUP2 0000166f: SUB 00001670: PUSH2 0x1687 00001673: JUMPI 00001674: PUSH4 0x15efa0f3 00001679: PUSH1 0xe1 0000167b: SHL 0000167c: PUSH0 0000167d: MSTORE 0000167e: PUSH1 0x04 00001680: DUP3 00001681: SWAP1 00001682: MSTORE 00001683: PUSH1 0x24 00001685: PUSH0 00001686: REVERT 00001687: JUMPDEST 00001688: PUSH2 0x1690 0000168b: DUP2 0000168c: PUSH2 0x20d6 0000168f: JUMP 00001690: JUMPDEST 00001691: PUSH1 0x03 00001693: DUP2 00001694: SUB 00001695: PUSH2 0x16ac 00001698: JUMPI 00001699: PUSH4 0xd0a172b3 0000169e: PUSH1 0xe0 000016a0: SHL 000016a1: PUSH0 000016a2: MSTORE 000016a3: PUSH1 0x04 000016a5: DUP3 000016a6: SWAP1 000016a7: MSTORE 000016a8: PUSH1 0x24 000016aa: PUSH0 000016ab: REVERT 000016ac: JUMPDEST 000016ad: DUP1 000016ae: PUSH2 0x16b8 000016b1: PUSH1 0x02 000016b3: SWAP3 000016b4: PUSH2 0x20d6 000016b7: JUMP 000016b8: JUMPDEST 000016b9: EQ 000016ba: PUSH2 0x175b 000016bd: JUMPI 000016be: PUSH2 0x16d5 000016c1: PUSH2 0x0c46 000016c4: PUSH2 0x0c39 000016c7: DUP4 000016c8: PUSH0 000016c9: MSTORE 000016ca: PUSH1 0x0e 000016cc: PUSH1 0x20 000016ce: MSTORE 000016cf: PUSH1 0x40 000016d1: PUSH0 000016d2: KECCAK256 000016d3: SWAP1 000016d4: JUMP 000016d5: JUMPDEST 000016d6: CALLER 000016d7: SUB 000016d8: PUSH2 0x0c7e 000016db: JUMPI 000016dc: PUSH2 0x16fd 000016df: PUSH2 0x0d71 000016e2: PUSH2 0x16f3 000016e5: DUP4 000016e6: PUSH0 000016e7: MSTORE 000016e8: PUSH1 0x0e 000016ea: PUSH1 0x20 000016ec: MSTORE 000016ed: PUSH1 0x40 000016ef: PUSH0 000016f0: KECCAK256 000016f1: SWAP1 000016f2: JUMP 000016f3: JUMPDEST 000016f4: SLOAD 000016f5: PUSH1 0xf0 000016f7: SHR 000016f8: PUSH1 0xff 000016fa: AND 000016fb: SWAP1 000016fc: JUMP 000016fd: JUMPDEST 000016fe: PUSH2 0x1749 00001701: JUMPI 00001702: PUSH2 0x1723 00001705: PUSH2 0x1716 00001708: DUP3 00001709: PUSH0 0000170a: MSTORE 0000170b: PUSH1 0x0e 0000170d: PUSH1 0x20 0000170f: MSTORE 00001710: PUSH1 0x40 00001712: PUSH0 00001713: KECCAK256 00001714: SWAP1 00001715: JUMP 00001716: JUMPDEST 00001717: DUP1 00001718: SLOAD 00001719: PUSH1 0xff 0000171b: PUSH1 0xf0 0000171d: SHL 0000171e: NOT 0000171f: AND 00001720: SWAP1 00001721: SSTORE 00001722: JUMP 00001723: JUMPDEST 00001724: PUSH32 0x0eb069207093cd3e51cd1370d2d369770057fbe29947e577e5fb428c6c6fc78f 00001745: PUSH0 00001746: DUP1 00001747: LOG2 00001748: STOP 00001749: JUMPDEST 0000174a: PUSH4 0x5dd950cb 0000174f: PUSH1 0xe1 00001751: SHL 00001752: PUSH0 00001753: MSTORE 00001754: PUSH1 0x04 00001756: MSTORE 00001757: PUSH1 0x24 00001759: PUSH0 0000175a: REVERT 0000175b: JUMPDEST 0000175c: PUSH4 0x08aca53f 00001761: PUSH1 0xe2 00001763: SHL 00001764: PUSH0 00001765: MSTORE 00001766: PUSH1 0x04 00001768: MSTORE 00001769: PUSH1 0x24 0000176b: PUSH0 0000176c: REVERT 0000176d: JUMPDEST 0000176e: SWAP1 0000176f: DUP2 00001770: PUSH1 0xe0 00001772: SWAP2 00001773: SUB 00001774: SLT 00001775: PUSH2 0x0436 00001778: JUMPI 00001779: SWAP1 0000177a: JUMP 0000177b: JUMPDEST 0000177c: SWAP2 0000177d: DUP2 0000177e: PUSH1 0x1f 00001780: DUP5 00001781: ADD 00001782: SLT 00001783: ISZERO 00001784: PUSH2 0x0436 00001787: JUMPI 00001788: DUP3 00001789: CALLDATALOAD 0000178a: SWAP2 0000178b: PUSH1 0x01 0000178d: PUSH1 0x01 0000178f: PUSH1 0x40 00001791: SHL 00001792: SUB 00001793: DUP4 00001794: GT 00001795: PUSH2 0x0436 00001798: JUMPI 00001799: PUSH1 0x20 0000179b: DUP1 0000179c: DUP6 0000179d: ADD 0000179e: SWAP5 0000179f: DUP5 000017a0: PUSH1 0x06 000017a2: SHL 000017a3: ADD 000017a4: ADD 000017a5: GT 000017a6: PUSH2 0x0436 000017a9: JUMPI 000017aa: JUMP 000017ab: JUMPDEST 000017ac: PUSH1 0x40 000017ae: CALLDATASIZE 000017af: PUSH1 0x03 000017b1: NOT 000017b2: ADD 000017b3: SLT 000017b4: PUSH2 0x0436 000017b7: JUMPI 000017b8: PUSH1 0x04 000017ba: CALLDATALOAD 000017bb: PUSH1 0x01 000017bd: PUSH1 0x01 000017bf: PUSH1 0x40 000017c1: SHL 000017c2: SUB 000017c3: DUP2 000017c4: GT 000017c5: PUSH2 0x0436 000017c8: JUMPI 000017c9: PUSH2 0x17d6 000017cc: SWAP1 000017cd: CALLDATASIZE 000017ce: SWAP1 000017cf: PUSH1 0x04 000017d1: ADD 000017d2: PUSH2 0x176d 000017d5: JUMP 000017d6: JUMPDEST 000017d7: PUSH1 0x24 000017d9: CALLDATALOAD 000017da: PUSH1 0x01 000017dc: PUSH1 0x01 000017de: PUSH1 0x40 000017e0: SHL 000017e1: SUB 000017e2: DUP2 000017e3: GT 000017e4: PUSH2 0x0436 000017e7: JUMPI 000017e8: PUSH2 0x17f5 000017eb: SWAP1 000017ec: CALLDATASIZE 000017ed: SWAP1 000017ee: PUSH1 0x04 000017f0: ADD 000017f1: PUSH2 0x177b 000017f4: JUMP 000017f5: JUMPDEST 000017f6: SWAP1 000017f7: PUSH2 0x17fe 000017fa: PUSH2 0x4278 000017fd: JUMP 000017fe: JUMPDEST 000017ff: PUSH0 00001800: PUSH5 0xffffffffff 00001806: TIMESTAMP 00001807: AND 00001808: SWAP3 00001809: DUP4 0000180a: SWAP3 0000180b: PUSH2 0x1828 0000180e: PUSH1 0x40 00001810: MLOAD 00001811: SWAP6 00001812: DUP7 00001813: SWAP4 00001814: DUP5 00001815: SWAP4 00001816: PUSH4 0x14412079 0000181b: PUSH1 0xe0 0000181d: SHL 0000181e: DUP6 0000181f: MSTORE 00001820: PUSH1 0x04 00001822: DUP6 00001823: ADD 00001824: PUSH2 0x36cd 00001827: JUMP 00001828: JUMPDEST 00001829: SUB 0000182a: DUP2 0000182b: PUSH20 0xa0a1ac47260b95d334763473b868117ef7343aa0 00001840: GAS 00001841: DELEGATECALL 00001842: DUP1 00001843: ISZERO 00001844: PUSH2 0x0bae 00001847: JUMPI 00001848: PUSH2 0x058d 0000184b: SWAP4 0000184c: PUSH2 0x12b4 0000184f: SWAP4 00001850: PUSH0 00001851: SWAP3 00001852: PUSH2 0x190d 00001855: JUMPI 00001856: JUMPDEST 00001857: POP 00001858: DUP2 00001859: SWAP3 0000185a: PUSH2 0x18aa 0000185d: PUSH2 0x1884 00001860: PUSH1 0x20 00001862: PUSH2 0x1877 00001865: PUSH2 0x1871 00001868: PUSH2 0x1907 0000186b: SWAP8 0000186c: MLOAD 0000186d: PUSH2 0x352b 00001870: JUMP 00001871: JUMPDEST 00001872: DUP9 00001873: PUSH2 0x33cf 00001876: JUMP 00001877: JUMPDEST 00001878: MLOAD 00001879: ADD 0000187a: MLOAD 0000187b: PUSH5 0xffffffffff 00001881: AND 00001882: SWAP1 00001883: JUMP 00001884: JUMPDEST 00001885: PUSH2 0x189c 00001888: PUSH2 0x188f 0000188b: PUSH2 0x242c 0000188e: JUMP 0000188f: JUMPDEST 00001890: PUSH5 0xffffffffff 00001896: SWAP1 00001897: SWAP5 00001898: AND 00001899: DUP5 0000189a: MSTORE 0000189b: JUMP 0000189c: JUMPDEST 0000189d: PUSH5 0xffffffffff 000018a3: AND 000018a4: PUSH1 0x20 000018a6: DUP4 000018a7: ADD 000018a8: MSTORE 000018a9: JUMP 000018aa: JUMPDEST 000018ab: PUSH2 0x18b6 000018ae: PUSH1 0x80 000018b0: DUP4 000018b1: ADD 000018b2: PUSH2 0x3546 000018b5: JUMP 000018b6: JUMPDEST 000018b7: PUSH2 0x18c2 000018ba: PUSH1 0x40 000018bc: DUP5 000018bd: ADD 000018be: PUSH2 0x3512 000018c1: JUMP 000018c2: JUMPDEST 000018c3: PUSH2 0x18ce 000018c6: PUSH1 0x20 000018c8: DUP6 000018c9: ADD 000018ca: PUSH2 0x3550 000018cd: JUMP 000018ce: JUMPDEST 000018cf: PUSH2 0x18d7 000018d2: DUP6 000018d3: PUSH2 0x3550 000018d6: JUMP 000018d7: JUMPDEST 000018d8: SWAP2 000018d9: PUSH2 0x18e5 000018dc: PUSH1 0xc0 000018de: DUP8 000018df: ADD 000018e0: DUP8 000018e1: PUSH2 0x3345 000018e4: JUMP 000018e5: JUMPDEST 000018e6: SWAP8 000018e7: SWAP1 000018e8: PUSH2 0x18ff 000018eb: PUSH1 0xa0 000018ed: PUSH2 0x18f8 000018f0: PUSH1 0x60 000018f2: DUP12 000018f3: ADD 000018f4: PUSH2 0x3550 000018f7: JUMP 000018f8: JUMPDEST 000018f9: SWAP10 000018fa: ADD 000018fb: PUSH2 0x3546 000018fe: JUMP 000018ff: JUMPDEST 00001900: SWAP9 00001901: CALLDATASIZE 00001902: SWAP2 00001903: PUSH2 0x2487 00001906: JUMP 00001907: JUMPDEST 00001908: SWAP4 00001909: PUSH2 0x4f1a 0000190c: JUMP 0000190d: JUMPDEST 0000190e: PUSH2 0x1907 00001911: SWAP3 00001912: POP 00001913: PUSH2 0x192d 00001916: SWAP1 00001917: RETURNDATASIZE 00001918: DUP1 00001919: PUSH0 0000191a: DUP4 0000191b: RETURNDATACOPY 0000191c: PUSH2 0x1925 0000191f: DUP2 00001920: DUP4 00001921: PUSH2 0x240b 00001924: JUMP 00001925: JUMPDEST 00001926: DUP2 00001927: ADD 00001928: SWAP1 00001929: PUSH2 0x361f 0000192c: JUMP 0000192d: JUMPDEST 0000192e: SWAP2 0000192f: PUSH2 0x1856 00001932: JUMP 00001933: JUMPDEST 00001934: SWAP1 00001935: PUSH1 0x20 00001937: DUP1 00001938: DUP4 00001939: MLOAD 0000193a: SWAP3 0000193b: DUP4 0000193c: DUP2 0000193d: MSTORE 0000193e: ADD 0000193f: SWAP3 00001940: ADD 00001941: SWAP1 00001942: PUSH0 00001943: JUMPDEST 00001944: DUP2 00001945: DUP2 00001946: LT 00001947: PUSH2 0x1950 0000194a: JUMPI 0000194b: POP 0000194c: POP 0000194d: POP 0000194e: SWAP1 0000194f: JUMP 00001950: JUMPDEST 00001951: SWAP1 00001952: SWAP2 00001953: SWAP3 00001954: PUSH1 0x20 00001956: PUSH1 0x40 00001958: DUP3 00001959: PUSH2 0x197f 0000195c: PUSH1 0x01 0000195e: SWAP5 0000195f: DUP9 00001960: MLOAD 00001961: PUSH5 0xffffffffff 00001967: PUSH1 0x20 00001969: DUP1 0000196a: SWAP3 0000196b: PUSH1 0x01 0000196d: PUSH1 0x01 0000196f: PUSH1 0x80 00001971: SHL 00001972: SUB 00001973: DUP2 00001974: MLOAD 00001975: AND 00001976: DUP6 00001977: MSTORE 00001978: ADD 00001979: MLOAD 0000197a: AND 0000197b: SWAP2 0000197c: ADD 0000197d: MSTORE 0000197e: JUMP 0000197f: JUMPDEST 00001980: ADD 00001981: SWAP5 00001982: ADD 00001983: SWAP3 00001984: SWAP2 00001985: ADD 00001986: PUSH2 0x1943 00001989: JUMP 0000198a: JUMPDEST 0000198b: SWAP1 0000198c: PUSH1 0x20 0000198e: PUSH2 0x0524 00001991: SWAP3 00001992: DUP2 00001993: DUP2 00001994: MSTORE 00001995: ADD 00001996: SWAP1 00001997: PUSH2 0x1933 0000199a: JUMP 0000199b: JUMPDEST 0000199c: CALLVALUE 0000199d: PUSH2 0x0436 000019a0: JUMPI 000019a1: PUSH1 0x20 000019a3: CALLDATASIZE 000019a4: PUSH1 0x03 000019a6: NOT 000019a7: ADD 000019a8: SLT 000019a9: PUSH2 0x0436 000019ac: JUMPI 000019ad: PUSH1 0x04 000019af: CALLDATALOAD 000019b0: PUSH2 0x19b8 000019b3: DUP2 000019b4: PUSH2 0x3b56 000019b7: JUMP 000019b8: JUMPDEST 000019b9: DUP1 000019ba: PUSH0 000019bb: MSTORE 000019bc: PUSH1 0x0e 000019be: PUSH1 0x20 000019c0: MSTORE 000019c1: PUSH1 0xff 000019c3: PUSH1 0x01 000019c5: PUSH1 0x40 000019c7: PUSH0 000019c8: KECCAK256 000019c9: ADD 000019ca: SLOAD 000019cb: PUSH1 0xb0 000019cd: SHR 000019ce: AND 000019cf: PUSH1 0x03 000019d1: DUP2 000019d2: LT 000019d3: ISZERO 000019d4: PUSH2 0x0872 000019d7: JUMPI 000019d8: PUSH1 0x02 000019da: SUB 000019db: PUSH2 0x1a07 000019de: JUMPI 000019df: PUSH2 0x19fb 000019e2: PUSH2 0x19f6 000019e5: PUSH2 0x058d 000019e8: SWAP3 000019e9: PUSH0 000019ea: MSTORE 000019eb: PUSH1 0x0f 000019ed: PUSH1 0x20 000019ef: MSTORE 000019f0: PUSH1 0x40 000019f2: PUSH0 000019f3: KECCAK256 000019f4: SWAP1 000019f5: JUMP 000019f6: JUMPDEST 000019f7: PUSH2 0x3741 000019fa: JUMP 000019fb: JUMPDEST 000019fc: PUSH1 0x40 000019fe: MLOAD 000019ff: SWAP2 00001a00: DUP3 00001a01: SWAP2 00001a02: DUP3 00001a03: PUSH2 0x198a 00001a06: JUMP 00001a07: JUMPDEST 00001a08: PUSH0 00001a09: MSTORE 00001a0a: PUSH1 0x0e 00001a0c: PUSH1 0x20 00001a0e: MSTORE 00001a0f: PUSH2 0x071b 00001a12: PUSH2 0x1a26 00001a15: PUSH1 0x01 00001a17: PUSH1 0x40 00001a19: PUSH0 00001a1a: KECCAK256 00001a1b: ADD 00001a1c: PUSH1 0xff 00001a1e: SWAP1 00001a1f: SLOAD 00001a20: PUSH1 0xb0 00001a22: SHR 00001a23: AND 00001a24: SWAP1 00001a25: JUMP 00001a26: JUMPDEST 00001a27: PUSH4 0x319dec3f 00001a2c: PUSH1 0xe0 00001a2e: SHL 00001a2f: PUSH0 00001a30: MSTORE 00001a31: PUSH2 0x35e0 00001a34: JUMP 00001a35: JUMPDEST 00001a36: PUSH1 0x20 00001a38: PUSH1 0x40 00001a3a: DUP2 00001a3b: DUP4 00001a3c: ADD 00001a3d: SWAP3 00001a3e: DUP3 00001a3f: DUP2 00001a40: MSTORE 00001a41: DUP5 00001a42: MLOAD 00001a43: DUP1 00001a44: SWAP5 00001a45: MSTORE 00001a46: ADD 00001a47: SWAP3 00001a48: ADD 00001a49: SWAP1 00001a4a: PUSH0 00001a4b: JUMPDEST 00001a4c: DUP2 00001a4d: DUP2 00001a4e: LT 00001a4f: PUSH2 0x1a58 00001a52: JUMPI 00001a53: POP 00001a54: POP 00001a55: POP 00001a56: SWAP1 00001a57: JUMP 00001a58: JUMPDEST 00001a59: DUP3 00001a5a: MLOAD 00001a5b: PUSH1 0x01 00001a5d: PUSH1 0x01 00001a5f: PUSH1 0x80 00001a61: SHL 00001a62: SUB 00001a63: AND 00001a64: DUP5 00001a65: MSTORE 00001a66: PUSH1 0x20 00001a68: SWAP4 00001a69: DUP5 00001a6a: ADD 00001a6b: SWAP4 00001a6c: SWAP1 00001a6d: SWAP3 00001a6e: ADD 00001a6f: SWAP2 00001a70: PUSH1 0x01 00001a72: ADD 00001a73: PUSH2 0x1a4b 00001a76: JUMP 00001a77: JUMPDEST 00001a78: PUSH2 0x1a80 00001a7b: CALLDATASIZE 00001a7c: PUSH2 0x08a7 00001a7f: JUMP 00001a80: JUMPDEST 00001a81: SWAP1 00001a82: PUSH2 0x1a89 00001a85: PUSH2 0x4278 00001a88: JUMP 00001a89: JUMPDEST 00001a8a: PUSH2 0x1a92 00001a8d: DUP3 00001a8e: PUSH2 0x37b5 00001a91: JUMP 00001a92: JUMPDEST 00001a93: SWAP2 00001a94: PUSH0 00001a95: JUMPDEST 00001a96: DUP2 00001a97: DUP2 00001a98: LT 00001a99: PUSH2 0x1aaa 00001a9c: JUMPI 00001a9d: PUSH1 0x40 00001a9f: MLOAD 00001aa0: DUP1 00001aa1: PUSH2 0x058d 00001aa4: DUP7 00001aa5: DUP3 00001aa6: PUSH2 0x1a35 00001aa9: JUMP 00001aaa: JUMPDEST 00001aab: DUP1 00001aac: PUSH0 00001aad: DUP1 00001aae: PUSH2 0x1aba 00001ab1: PUSH1 0x01 00001ab3: SWAP5 00001ab4: DUP7 00001ab5: DUP9 00001ab6: PUSH2 0x3502 00001ab9: JUMP 00001aba: JUMPDEST 00001abb: PUSH1 0x40 00001abd: MLOAD 00001abe: PUSH4 0x40e58ee5 00001ac3: PUSH1 0xe0 00001ac5: SHL 00001ac6: PUSH1 0x20 00001ac8: DUP3 00001ac9: ADD 00001aca: SWAP1 00001acb: DUP2 00001acc: MSTORE 00001acd: SWAP2 00001ace: CALLDATALOAD 00001acf: PUSH1 0x24 00001ad1: DUP3 00001ad2: ADD 00001ad3: MSTORE 00001ad4: PUSH2 0x1ae0 00001ad7: DUP2 00001ad8: PUSH1 0x44 00001ada: DUP2 00001adb: ADD 00001adc: PUSH2 0x0f44 00001adf: JUMP 00001ae0: JUMPDEST 00001ae1: MLOAD 00001ae2: SWAP1 00001ae3: ADDRESS 00001ae4: GAS 00001ae5: DELEGATECALL 00001ae6: PUSH2 0x1aed 00001ae9: PUSH2 0x33a0 00001aec: JUMP 00001aed: JUMPDEST 00001aee: SWAP1 00001aef: PUSH2 0x1b2b 00001af2: JUMPI 00001af3: PUSH32 0x93fea6715d28b8667a24abd06acf5a526d08244c3ba06ce7e896e26199470d6c 00001b14: PUSH2 0x1b21 00001b17: PUSH2 0x0f9c 00001b1a: DUP5 00001b1b: DUP8 00001b1c: DUP10 00001b1d: PUSH2 0x3502 00001b20: JUMP 00001b21: JUMPDEST 00001b22: SUB 00001b23: SWAP1 00001b24: LOG2 00001b25: JUMPDEST 00001b26: ADD 00001b27: PUSH2 0x1a95 00001b2a: JUMP 00001b2b: JUMPDEST 00001b2c: PUSH2 0x1b41 00001b2f: DUP2 00001b30: PUSH1 0x20 00001b32: DUP1 00001b33: PUSH2 0x1b59 00001b36: SWAP5 00001b37: MLOAD 00001b38: DUP4 00001b39: ADD 00001b3a: ADD 00001b3b: SWAP2 00001b3c: ADD 00001b3d: PUSH2 0x37e7 00001b40: JUMP 00001b41: JUMPDEST 00001b42: PUSH2 0x1b4b 00001b45: DUP4 00001b46: DUP9 00001b47: PUSH2 0x33cf 00001b4a: JUMP 00001b4b: JUMPDEST 00001b4c: SWAP1 00001b4d: PUSH1 0x01 00001b4f: PUSH1 0x01 00001b51: PUSH1 0x80 00001b53: SHL 00001b54: SUB 00001b55: AND 00001b56: SWAP1 00001b57: MSTORE 00001b58: JUMP 00001b59: JUMPDEST 00001b5a: PUSH2 0x1b25 00001b5d: JUMP 00001b5e: JUMPDEST 00001b5f: CALLVALUE 00001b60: PUSH2 0x0436 00001b63: JUMPI 00001b64: PUSH1 0x20 00001b66: CALLDATASIZE 00001b67: PUSH1 0x03 00001b69: NOT 00001b6a: ADD 00001b6b: SLT 00001b6c: PUSH2 0x0436 00001b6f: JUMPI 00001b70: PUSH1 0x04 00001b72: CALLDATALOAD 00001b73: PUSH2 0x1b7b 00001b76: DUP2 00001b77: PUSH2 0x0657 00001b7a: JUMP 00001b7b: JUMPDEST 00001b7c: PUSH2 0x1b83 00001b7f: PUSH2 0x424d 00001b82: JUMP 00001b83: JUMPDEST 00001b84: PUSH1 0x01 00001b86: PUSH1 0x01 00001b88: PUSH1 0xa0 00001b8a: SHL 00001b8b: SUB 00001b8c: PUSH0 00001b8d: SLOAD 00001b8e: AND 00001b8f: SWAP1 00001b90: PUSH1 0x40 00001b92: MLOAD 00001b93: PUSH4 0x61a6f99f 00001b98: PUSH1 0xe1 00001b9a: SHL 00001b9b: DUP2 00001b9c: MSTORE 00001b9d: PUSH1 0x20 00001b9f: DUP2 00001ba0: PUSH1 0x04 00001ba2: DUP2 00001ba3: DUP7 00001ba4: GAS 00001ba5: STATICCALL 00001ba6: SWAP1 00001ba7: DUP2 00001ba8: ISZERO 00001ba9: PUSH2 0x0bae 00001bac: JUMPI 00001bad: PUSH0 00001bae: SWAP2 00001baf: PUSH2 0x1caa 00001bb2: JUMPI 00001bb3: JUMPDEST 00001bb4: POP 00001bb5: PUSH1 0x40 00001bb7: MLOAD 00001bb8: PUSH4 0x01ffc9a7 00001bbd: PUSH1 0xe0 00001bbf: SHL 00001bc0: DUP2 00001bc1: MSTORE 00001bc2: PUSH1 0x01 00001bc4: PUSH1 0x01 00001bc6: PUSH1 0xe0 00001bc8: SHL 00001bc9: SUB 00001bca: NOT 00001bcb: DUP3 00001bcc: AND 00001bcd: PUSH1 0x04 00001bcf: DUP3 00001bd0: ADD 00001bd1: MSTORE 00001bd2: PUSH1 0x01 00001bd4: PUSH1 0x01 00001bd6: PUSH1 0xa0 00001bd8: SHL 00001bd9: SUB 00001bda: DUP4 00001bdb: AND 00001bdc: SWAP1 00001bdd: PUSH1 0x20 00001bdf: DUP2 00001be0: PUSH1 0x24 00001be2: DUP2 00001be3: DUP6 00001be4: GAS 00001be5: STATICCALL 00001be6: SWAP1 00001be7: DUP2 00001be8: ISZERO 00001be9: PUSH2 0x0bae 00001bec: JUMPI 00001bed: PUSH0 00001bee: SWAP2 00001bef: PUSH2 0x1c8b 00001bf2: JUMPI 00001bf3: JUMPDEST 00001bf4: POP 00001bf5: ISZERO 00001bf6: PUSH2 0x1c5d 00001bf9: JUMPI 00001bfa: PUSH32 0xf45d882a72fce9d8d7a7e2e196a338d4d9d4057510b4b9ddf91a7066104d2eaf 00001c1b: DUP4 00001c1c: DUP6 00001c1d: PUSH2 0x1c3a 00001c20: DUP3 00001c21: PUSH1 0x01 00001c23: PUSH1 0x01 00001c25: PUSH1 0xa0 00001c27: SHL 00001c28: SUB 00001c29: AND 00001c2a: PUSH1 0x01 00001c2c: PUSH1 0x01 00001c2e: PUSH1 0xa0 00001c30: SHL 00001c31: SUB 00001c32: NOT 00001c33: PUSH0 00001c34: SLOAD 00001c35: AND 00001c36: OR 00001c37: PUSH0 00001c38: SSTORE 00001c39: JUMP 00001c3a: JUMPDEST 00001c3b: PUSH1 0x40 00001c3d: DUP1 00001c3e: MLOAD 00001c3f: PUSH1 0x01 00001c41: PUSH1 0x01 00001c43: PUSH1 0xa0 00001c45: SHL 00001c46: SUB 00001c47: SWAP3 00001c48: DUP4 00001c49: AND 00001c4a: DUP2 00001c4b: MSTORE 00001c4c: SWAP3 00001c4d: SWAP1 00001c4e: SWAP2 00001c4f: AND 00001c50: PUSH1 0x20 00001c52: DUP4 00001c53: ADD 00001c54: MSTORE 00001c55: DUP2 00001c56: SWAP1 00001c57: DUP2 00001c58: ADD 00001c59: PUSH2 0x162f 00001c5c: JUMP 00001c5d: JUMPDEST 00001c5e: PUSH4 0x64ca3de1 00001c63: PUSH1 0xe1 00001c65: SHL 00001c66: PUSH0 00001c67: MSTORE 00001c68: PUSH1 0x01 00001c6a: PUSH1 0x01 00001c6c: PUSH1 0xa0 00001c6e: SHL 00001c6f: SUB 00001c70: DUP1 00001c71: DUP6 00001c72: AND 00001c73: PUSH1 0x04 00001c75: MSTORE 00001c76: AND 00001c77: PUSH1 0x24 00001c79: MSTORE 00001c7a: PUSH1 0x01 00001c7c: PUSH1 0x01 00001c7e: PUSH1 0xe0 00001c80: SHL 00001c81: SUB 00001c82: NOT 00001c83: AND 00001c84: PUSH1 0x44 00001c86: MSTORE 00001c87: PUSH1 0x64 00001c89: PUSH0 00001c8a: REVERT 00001c8b: JUMPDEST 00001c8c: PUSH2 0x1ca4 00001c8f: SWAP2 00001c90: POP 00001c91: PUSH1 0x20 00001c93: RETURNDATASIZE 00001c94: PUSH1 0x20 00001c96: GT 00001c97: PUSH2 0x0ba7 00001c9a: JUMPI 00001c9b: PUSH2 0x0b99 00001c9e: DUP2 00001c9f: DUP4 00001ca0: PUSH2 0x240b 00001ca3: JUMP 00001ca4: JUMPDEST 00001ca5: PUSH0 00001ca6: PUSH2 0x1bf3 00001ca9: JUMP 00001caa: JUMPDEST 00001cab: PUSH2 0x1ccc 00001cae: SWAP2 00001caf: POP 00001cb0: PUSH1 0x20 00001cb2: RETURNDATASIZE 00001cb3: PUSH1 0x20 00001cb5: GT 00001cb6: PUSH2 0x1cd2 00001cb9: JUMPI 00001cba: JUMPDEST 00001cbb: PUSH2 0x1cc4 00001cbe: DUP2 00001cbf: DUP4 00001cc0: PUSH2 0x240b 00001cc3: JUMP 00001cc4: JUMPDEST 00001cc5: DUP2 00001cc6: ADD 00001cc7: SWAP1 00001cc8: PUSH2 0x37fc 00001ccb: JUMP 00001ccc: JUMPDEST 00001ccd: PUSH0 00001cce: PUSH2 0x1bb3 00001cd1: JUMP 00001cd2: JUMPDEST 00001cd3: POP 00001cd4: RETURNDATASIZE 00001cd5: PUSH2 0x1cba 00001cd8: JUMP 00001cd9: JUMPDEST 00001cda: CALLVALUE 00001cdb: PUSH2 0x0436 00001cde: JUMPI 00001cdf: PUSH1 0x20 00001ce1: CALLDATASIZE 00001ce2: PUSH1 0x03 00001ce4: NOT 00001ce5: ADD 00001ce6: SLT 00001ce7: PUSH2 0x0436 00001cea: JUMPI 00001ceb: PUSH2 0x1cf9 00001cee: PUSH1 0x04 00001cf0: CALLDATALOAD 00001cf1: PUSH2 0x0842 00001cf4: DUP2 00001cf5: PUSH2 0x3b56 00001cf8: JUMP 00001cf9: JUMPDEST 00001cfa: PUSH1 0x05 00001cfc: DUP2 00001cfd: LT 00001cfe: ISZERO 00001cff: PUSH2 0x0872 00001d02: JUMPI 00001d03: PUSH1 0x02 00001d05: DUP2 00001d06: EQ 00001d07: SWAP1 00001d08: DUP2 00001d09: ISZERO 00001d0a: PUSH2 0x1d36 00001d0d: JUMPI 00001d0e: JUMPDEST 00001d0f: DUP2 00001d10: ISZERO 00001d11: PUSH2 0x1d22 00001d14: JUMPI 00001d15: POP 00001d16: PUSH1 0x40 00001d18: MLOAD 00001d19: SWAP1 00001d1a: ISZERO 00001d1b: ISZERO 00001d1c: DUP2 00001d1d: MSTORE 00001d1e: PUSH1 0x20 00001d20: SWAP1 00001d21: RETURN 00001d22: JUMPDEST 00001d23: PUSH1 0x04 00001d25: SWAP2 00001d26: POP 00001d27: PUSH2 0x1d2f 00001d2a: DUP2 00001d2b: PUSH2 0x20d6 00001d2e: JUMP 00001d2f: JUMPDEST 00001d30: EQ 00001d31: PUSH0 00001d32: PUSH2 0x0472 00001d35: JUMP 00001d36: JUMPDEST 00001d37: PUSH1 0x03 00001d39: DUP2 00001d3a: EQ 00001d3b: SWAP2 00001d3c: POP 00001d3d: PUSH2 0x1d0e 00001d40: JUMP 00001d41: JUMPDEST 00001d42: CALLVALUE 00001d43: PUSH2 0x0436 00001d46: JUMPI 00001d47: PUSH1 0x20 00001d49: CALLDATASIZE 00001d4a: PUSH1 0x03 00001d4c: NOT 00001d4d: ADD 00001d4e: SLT 00001d4f: PUSH2 0x0436 00001d52: JUMPI 00001d53: PUSH1 0x04 00001d55: CALLDATALOAD 00001d56: PUSH2 0x1d5e 00001d59: DUP2 00001d5a: PUSH2 0x3b56 00001d5d: JUMP 00001d5e: JUMPDEST 00001d5f: PUSH0 00001d60: MSTORE 00001d61: PUSH1 0x0e 00001d63: PUSH1 0x20 00001d65: MSTORE 00001d66: PUSH1 0x20 00001d68: PUSH5 0xffffffffff 00001d6e: PUSH1 0x40 00001d70: PUSH0 00001d71: KECCAK256 00001d72: SLOAD 00001d73: PUSH1 0xc8 00001d75: SHR 00001d76: AND 00001d77: PUSH1 0x40 00001d79: MLOAD 00001d7a: SWAP1 00001d7b: DUP2 00001d7c: MSTORE 00001d7d: RETURN 00001d7e: JUMPDEST 00001d7f: CALLVALUE 00001d80: PUSH2 0x0436 00001d83: JUMPI 00001d84: PUSH0 00001d85: CALLDATASIZE 00001d86: PUSH1 0x03 00001d88: NOT 00001d89: ADD 00001d8a: SLT 00001d8b: PUSH2 0x0436 00001d8e: JUMPI 00001d8f: PUSH1 0x40 00001d91: MLOAD 00001d92: PUSH0 00001d93: PUSH1 0x02 00001d95: SLOAD 00001d96: DUP1 00001d97: PUSH1 0x01 00001d99: SHR 00001d9a: SWAP1 00001d9b: PUSH1 0x01 00001d9d: DUP2 00001d9e: AND 00001d9f: SWAP1 00001da0: DUP2 00001da1: ISZERO 00001da2: PUSH2 0x1e29 00001da5: JUMPI 00001da6: JUMPDEST 00001da7: PUSH1 0x20 00001da9: DUP4 00001daa: LT 00001dab: DUP3 00001dac: EQ 00001dad: PUSH2 0x05fc 00001db0: JUMPI 00001db1: DUP3 00001db2: DUP6 00001db3: MSTORE 00001db4: PUSH1 0x20 00001db6: DUP6 00001db7: ADD 00001db8: SWAP2 00001db9: SWAP1 00001dba: DUP2 00001dbb: ISZERO 00001dbc: PUSH2 0x05e3 00001dbf: JUMPI 00001dc0: POP 00001dc1: PUSH1 0x01 00001dc3: EQ 00001dc4: PUSH2 0x1dd7 00001dc7: JUMPI 00001dc8: PUSH2 0x058d 00001dcb: DUP5 00001dcc: PUSH2 0x0581 00001dcf: DUP2 00001dd0: DUP7 00001dd1: SUB 00001dd2: DUP3 00001dd3: PUSH2 0x240b 00001dd6: JUMP 00001dd7: JUMPDEST 00001dd8: PUSH1 0x02 00001dda: PUSH0 00001ddb: SWAP1 00001ddc: DUP2 00001ddd: MSTORE 00001dde: SWAP3 00001ddf: POP 00001de0: SWAP1 00001de1: PUSH32 0x405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace 00001e02: JUMPDEST 00001e03: DUP2 00001e04: DUP5 00001e05: LT 00001e06: PUSH2 0x1e15 00001e09: JUMPI 00001e0a: POP 00001e0b: POP 00001e0c: ADD 00001e0d: PUSH2 0x0581 00001e10: DUP3 00001e11: PUSH2 0x0571 00001e14: JUMP 00001e15: JUMPDEST 00001e16: DUP1 00001e17: SLOAD 00001e18: DUP5 00001e19: DUP5 00001e1a: ADD 00001e1b: MSTORE 00001e1c: PUSH1 0x20 00001e1e: SWAP1 00001e1f: SWAP4 00001e20: ADD 00001e21: SWAP3 00001e22: PUSH1 0x01 00001e24: ADD 00001e25: PUSH2 0x1e02 00001e28: JUMP 00001e29: JUMPDEST 00001e2a: SWAP2 00001e2b: PUSH1 0x7f 00001e2d: AND 00001e2e: SWAP2 00001e2f: PUSH2 0x1da6 00001e32: JUMP 00001e33: JUMPDEST 00001e34: PUSH1 0x40 00001e36: CALLDATASIZE 00001e37: PUSH1 0x03 00001e39: NOT 00001e3a: ADD 00001e3b: SLT 00001e3c: PUSH2 0x0436 00001e3f: JUMPI 00001e40: PUSH1 0x04 00001e42: CALLDATALOAD 00001e43: PUSH1 0x01 00001e45: PUSH1 0x01 00001e47: PUSH1 0x40 00001e49: SHL 00001e4a: SUB 00001e4b: DUP2 00001e4c: GT 00001e4d: PUSH2 0x0436 00001e50: JUMPI 00001e51: PUSH2 0x1e5e 00001e54: SWAP1 00001e55: CALLDATASIZE 00001e56: SWAP1 00001e57: PUSH1 0x04 00001e59: ADD 00001e5a: PUSH2 0x1195 00001e5d: JUMP 00001e5e: JUMPDEST 00001e5f: PUSH1 0x24 00001e61: CALLDATALOAD 00001e62: PUSH1 0x01 00001e64: PUSH1 0x01 00001e66: PUSH1 0x40 00001e68: SHL 00001e69: SUB 00001e6a: DUP2 00001e6b: GT 00001e6c: PUSH2 0x0436 00001e6f: JUMPI 00001e70: PUSH2 0x1e7d 00001e73: SWAP1 00001e74: CALLDATASIZE 00001e75: SWAP1 00001e76: PUSH1 0x04 00001e78: ADD 00001e79: PUSH2 0x177b 00001e7c: JUMP 00001e7d: JUMPDEST 00001e7e: PUSH2 0x1e88 00001e81: SWAP3 00001e82: SWAP2 00001e83: SWAP3 00001e84: PUSH2 0x4278 00001e87: JUMP 00001e88: JUMPDEST 00001e89: PUSH1 0x80 00001e8b: DUP3 00001e8c: ADD 00001e8d: CALLDATALOAD 00001e8e: SWAP1 00001e8f: PUSH2 0x1e97 00001e92: DUP3 00001e93: PUSH2 0x1f82 00001e96: JUMP 00001e97: JUMPDEST 00001e98: PUSH1 0x40 00001e9a: DUP4 00001e9b: ADD 00001e9c: CALLDATALOAD 00001e9d: SWAP3 00001e9e: PUSH2 0x1ea6 00001ea1: DUP5 00001ea2: PUSH2 0x3097 00001ea5: JUMP 00001ea6: JUMPDEST 00001ea7: PUSH1 0x20 00001ea9: DUP2 00001eaa: ADD 00001eab: CALLDATALOAD 00001eac: PUSH2 0x1eb4 00001eaf: DUP2 00001eb0: PUSH2 0x0657 00001eb3: JUMP 00001eb4: JUMPDEST 00001eb5: DUP2 00001eb6: CALLDATALOAD 00001eb7: SWAP1 00001eb8: PUSH2 0x1ec0 00001ebb: DUP3 00001ebc: PUSH2 0x0657 00001ebf: JUMP 00001ec0: JUMPDEST 00001ec1: PUSH2 0x1ece 00001ec4: PUSH2 0x0100 00001ec7: DUP5 00001ec8: ADD 00001ec9: DUP5 00001eca: PUSH2 0x3345 00001ecd: JUMP 00001ece: JUMPDEST 00001ecf: SWAP7 00001ed0: SWAP1 00001ed1: SWAP6 00001ed2: PUSH2 0x1ef5 00001ed5: PUSH2 0x150f 00001ed8: PUSH1 0x60 00001eda: DUP8 00001edb: ADD 00001edc: CALLDATALOAD 00001edd: SWAP9 00001ede: PUSH2 0x1ee6 00001ee1: DUP11 00001ee2: PUSH2 0x0657 00001ee5: JUMP 00001ee6: JUMPDEST 00001ee7: PUSH1 0xa0 00001ee9: DUP9 00001eea: ADD 00001eeb: CALLDATALOAD 00001eec: SWAP11 00001eed: PUSH2 0x1294 00001ef0: DUP13 00001ef1: PUSH2 0x1f82 00001ef4: JUMP 00001ef5: JUMPDEST 00001ef6: SWAP6 00001ef7: PUSH2 0x1eff 00001efa: DUP2 00001efb: PUSH2 0x331a 00001efe: JUMP 00001eff: JUMPDEST 00001f00: SWAP10 00001f01: PUSH2 0x1f0d 00001f04: PUSH1 0x40 00001f06: MLOAD 00001f07: SWAP12 00001f08: DUP13 00001f09: PUSH2 0x240b 00001f0c: JUMP 00001f0d: JUMPDEST 00001f0e: DUP2 00001f0f: DUP12 00001f10: MSTORE 00001f11: PUSH1 0x20 00001f13: DUP12 00001f14: ADD 00001f15: SWAP2 00001f16: PUSH1 0x06 00001f18: SHL 00001f19: DUP2 00001f1a: ADD 00001f1b: SWAP1 00001f1c: CALLDATASIZE 00001f1d: DUP3 00001f1e: GT 00001f1f: PUSH2 0x0436 00001f22: JUMPI 00001f23: SWAP2 00001f24: JUMPDEST 00001f25: DUP2 00001f26: DUP4 00001f27: LT 00001f28: PUSH2 0x1f3f 00001f2b: JUMPI 00001f2c: PUSH2 0x058d 00001f2f: PUSH2 0x12b4 00001f32: DUP14 00001f33: DUP14 00001f34: DUP14 00001f35: DUP14 00001f36: DUP14 00001f37: DUP14 00001f38: DUP14 00001f39: DUP14 00001f3a: DUP14 00001f3b: PUSH2 0x4f1a 00001f3e: JUMP 00001f3f: JUMPDEST 00001f40: PUSH1 0x40 00001f42: DUP4 00001f43: CALLDATASIZE 00001f44: SUB 00001f45: SLT 00001f46: PUSH2 0x0436 00001f49: JUMPI 00001f4a: PUSH1 0x20 00001f4c: PUSH1 0x40 00001f4e: SWAP2 00001f4f: DUP3 00001f50: MLOAD 00001f51: PUSH2 0x1f59 00001f54: DUP2 00001f55: PUSH2 0x23f0 00001f58: JUMP 00001f59: JUMPDEST 00001f5a: DUP6 00001f5b: CALLDATALOAD 00001f5c: PUSH2 0x1f64 00001f5f: DUP2 00001f60: PUSH2 0x3097 00001f63: JUMP 00001f64: JUMPDEST 00001f65: DUP2 00001f66: MSTORE 00001f67: DUP3 00001f68: DUP7 00001f69: ADD 00001f6a: CALLDATALOAD 00001f6b: PUSH2 0x1f73 00001f6e: DUP2 00001f6f: PUSH2 0x11c6 00001f72: JUMP 00001f73: JUMPDEST 00001f74: DUP4 00001f75: DUP3 00001f76: ADD 00001f77: MSTORE 00001f78: DUP2 00001f79: MSTORE 00001f7a: ADD 00001f7b: SWAP3 00001f7c: ADD 00001f7d: SWAP2 00001f7e: PUSH2 0x1f24 00001f81: JUMP 00001f82: JUMPDEST 00001f83: DUP1 00001f84: ISZERO 00001f85: ISZERO 00001f86: SUB 00001f87: PUSH2 0x0436 00001f8a: JUMPI 00001f8b: JUMP 00001f8c: JUMPDEST 00001f8d: CALLVALUE 00001f8e: PUSH2 0x0436 00001f91: JUMPI 00001f92: PUSH1 0x40 00001f94: CALLDATASIZE 00001f95: PUSH1 0x03 00001f97: NOT 00001f98: ADD 00001f99: SLT 00001f9a: PUSH2 0x0436 00001f9d: JUMPI 00001f9e: PUSH1 0x04 00001fa0: CALLDATALOAD 00001fa1: PUSH2 0x1fa9 00001fa4: DUP2 00001fa5: PUSH2 0x0657 00001fa8: JUMP 00001fa9: JUMPDEST 00001faa: PUSH1 0x24 00001fac: CALLDATALOAD 00001fad: PUSH2 0x1fb5 00001fb0: DUP2 00001fb1: PUSH2 0x1f82 00001fb4: JUMP 00001fb5: JUMPDEST 00001fb6: PUSH1 0x01 00001fb8: PUSH1 0x01 00001fba: PUSH1 0xa0 00001fbc: SHL 00001fbd: SUB 00001fbe: DUP3 00001fbf: AND 00001fc0: SWAP2 00001fc1: DUP3 00001fc2: ISZERO 00001fc3: PUSH2 0x2031 00001fc6: JUMPI 00001fc7: DUP2 00001fc8: PUSH2 0x1ff0 00001fcb: PUSH2 0x2001 00001fce: SWAP3 00001fcf: CALLER 00001fd0: PUSH0 00001fd1: MSTORE 00001fd2: PUSH1 0x06 00001fd4: PUSH1 0x20 00001fd6: MSTORE 00001fd7: PUSH1 0x40 00001fd9: PUSH0 00001fda: KECCAK256 00001fdb: SWAP1 00001fdc: PUSH1 0x01 00001fde: PUSH1 0x01 00001fe0: PUSH1 0xa0 00001fe2: SHL 00001fe3: SUB 00001fe4: AND 00001fe5: PUSH0 00001fe6: MSTORE 00001fe7: PUSH1 0x20 00001fe9: MSTORE 00001fea: PUSH1 0x40 00001fec: PUSH0 00001fed: KECCAK256 00001fee: SWAP1 00001fef: JUMP 00001ff0: JUMPDEST 00001ff1: SWAP1 00001ff2: PUSH1 0xff 00001ff4: DUP1 00001ff5: NOT 00001ff6: DUP4 00001ff7: SLOAD 00001ff8: AND 00001ff9: SWAP2 00001ffa: ISZERO 00001ffb: ISZERO 00001ffc: AND 00001ffd: OR 00001ffe: SWAP1 00001fff: SSTORE 00002000: JUMP 00002001: JUMPDEST 00002002: PUSH1 0x40 00002004: MLOAD 00002005: SWAP1 00002006: ISZERO 00002007: ISZERO 00002008: DUP2 00002009: MSTORE 0000200a: PUSH32 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31 0000202b: PUSH1 0x20 0000202d: CALLER 0000202e: SWAP3 0000202f: LOG3 00002030: STOP 00002031: JUMPDEST 00002032: DUP3 00002033: PUSH4 0x0b611743 00002038: PUSH1 0xe3 0000203a: SHL 0000203b: PUSH0 0000203c: MSTORE 0000203d: PUSH1 0x04 0000203f: MSTORE 00002040: PUSH1 0x24 00002042: PUSH0 00002043: REVERT 00002044: JUMPDEST 00002045: CALLVALUE 00002046: PUSH2 0x0436 00002049: JUMPI 0000204a: PUSH1 0x20 0000204c: CALLDATASIZE 0000204d: PUSH1 0x03 0000204f: NOT 00002050: ADD 00002051: SLT 00002052: PUSH2 0x0436 00002055: JUMPI 00002056: PUSH1 0x04 00002058: CALLDATALOAD 00002059: PUSH2 0x2061 0000205c: DUP2 0000205d: PUSH2 0x3b56 00002060: JUMP 00002061: JUMPDEST 00002062: PUSH0 00002063: MSTORE 00002064: PUSH1 0x0e 00002066: PUSH1 0x20 00002068: MSTORE 00002069: PUSH1 0x20 0000206b: PUSH1 0x01 0000206d: PUSH1 0x01 0000206f: PUSH1 0xa0 00002071: SHL 00002072: SUB 00002073: PUSH1 0x01 00002075: PUSH1 0x40 00002077: PUSH0 00002078: KECCAK256 00002079: ADD 0000207a: SLOAD 0000207b: AND 0000207c: PUSH1 0x40 0000207e: MLOAD 0000207f: SWAP1 00002080: DUP2 00002081: MSTORE 00002082: RETURN 00002083: JUMPDEST 00002084: CALLVALUE 00002085: PUSH2 0x0436 00002088: JUMPI 00002089: PUSH1 0x20 0000208b: CALLDATASIZE 0000208c: PUSH1 0x03 0000208e: NOT 0000208f: ADD 00002090: SLT 00002091: PUSH2 0x0436 00002094: JUMPI 00002095: PUSH1 0x04 00002097: CALLDATALOAD 00002098: PUSH2 0x20a0 0000209b: DUP2 0000209c: PUSH2 0x3b56 0000209f: JUMP 000020a0: JUMPDEST 000020a1: PUSH0 000020a2: MSTORE 000020a3: PUSH1 0x0e 000020a5: PUSH1 0x20 000020a7: MSTORE 000020a8: PUSH1 0x20 000020aa: PUSH1 0x01 000020ac: PUSH1 0x01 000020ae: PUSH1 0x80 000020b0: SHL 000020b1: SUB 000020b2: PUSH1 0x02 000020b4: PUSH1 0x40 000020b6: PUSH0 000020b7: KECCAK256 000020b8: ADD 000020b9: SLOAD 000020ba: AND 000020bb: PUSH1 0x40 000020bd: MLOAD 000020be: SWAP1 000020bf: DUP2 000020c0: MSTORE 000020c1: RETURN 000020c2: JUMPDEST 000020c3: PUSH4 0x4e487b71 000020c8: PUSH1 0xe0 000020ca: SHL 000020cb: PUSH0 000020cc: MSTORE 000020cd: PUSH1 0x21 000020cf: PUSH1 0x04 000020d1: MSTORE 000020d2: PUSH1 0x24 000020d4: PUSH0 000020d5: REVERT 000020d6: JUMPDEST 000020d7: PUSH1 0x05 000020d9: GT 000020da: ISZERO 000020db: PUSH2 0x0872 000020de: JUMPI 000020df: JUMP 000020e0: JUMPDEST 000020e1: CALLVALUE 000020e2: PUSH2 0x0436 000020e5: JUMPI 000020e6: PUSH1 0x20 000020e8: CALLDATASIZE 000020e9: PUSH1 0x03 000020eb: NOT 000020ec: ADD 000020ed: SLT 000020ee: PUSH2 0x0436 000020f1: JUMPI 000020f2: PUSH2 0x2100 000020f5: PUSH1 0x04 000020f7: CALLDATALOAD 000020f8: PUSH2 0x0842 000020fb: DUP2 000020fc: PUSH2 0x3b56 000020ff: JUMP 00002100: JUMPDEST 00002101: PUSH1 0x40 00002103: MLOAD 00002104: PUSH1 0x05 00002106: DUP3 00002107: LT 00002108: ISZERO 00002109: PUSH2 0x0872 0000210c: JUMPI 0000210d: PUSH1 0x20 0000210f: SWAP2 00002110: DUP2 00002111: MSTORE 00002112: RETURN 00002113: JUMPDEST 00002114: CALLVALUE 00002115: PUSH2 0x0436 00002118: JUMPI 00002119: PUSH1 0x20 0000211b: CALLDATASIZE 0000211c: PUSH1 0x03 0000211e: NOT 0000211f: ADD 00002120: SLT 00002121: PUSH2 0x0436 00002124: JUMPI 00002125: PUSH1 0x04 00002127: CALLDATALOAD 00002128: PUSH2 0x2130 0000212b: DUP2 0000212c: PUSH2 0x3b56 0000212f: JUMP 00002130: JUMPDEST 00002131: PUSH0 00002132: MSTORE 00002133: PUSH1 0x0e 00002135: PUSH1 0x20 00002137: MSTORE 00002138: PUSH1 0x20 0000213a: PUSH1 0xff 0000213c: PUSH1 0x01 0000213e: PUSH1 0x40 00002140: PUSH0 00002141: KECCAK256 00002142: ADD 00002143: SLOAD 00002144: PUSH1 0xa8 00002146: SHR 00002147: AND 00002148: PUSH1 0x40 0000214a: MLOAD 0000214b: SWAP1 0000214c: ISZERO 0000214d: ISZERO 0000214e: DUP2 0000214f: MSTORE 00002150: RETURN 00002151: JUMPDEST 00002152: SWAP1 00002153: PUSH1 0x20 00002155: DUP1 00002156: DUP4 00002157: MLOAD 00002158: SWAP3 00002159: DUP4 0000215a: DUP2 0000215b: MSTORE 0000215c: ADD 0000215d: SWAP3 0000215e: ADD 0000215f: SWAP1 00002160: PUSH0 00002161: JUMPDEST 00002162: DUP2 00002163: DUP2 00002164: LT 00002165: PUSH2 0x216e 00002168: JUMPI 00002169: POP 0000216a: POP 0000216b: POP 0000216c: SWAP1 0000216d: JUMP 0000216e: JUMPDEST 0000216f: SWAP1 00002170: SWAP2 00002171: SWAP3 00002172: PUSH1 0x20 00002174: PUSH1 0x60 00002176: DUP3 00002177: PUSH2 0x21b0 0000217a: PUSH1 0x01 0000217c: SWAP5 0000217d: DUP9 0000217e: MLOAD 0000217f: PUSH5 0xffffffffff 00002185: PUSH1 0x40 00002187: DUP1 00002188: SWAP3 00002189: PUSH1 0x01 0000218b: PUSH1 0x01 0000218d: PUSH1 0x80 0000218f: SHL 00002190: SUB 00002191: DUP2 00002192: MLOAD 00002193: AND 00002194: DUP6 00002195: MSTORE 00002196: PUSH1 0x01 00002198: PUSH1 0x01 0000219a: PUSH1 0x40 0000219c: SHL 0000219d: SUB 0000219e: PUSH1 0x20 000021a0: DUP3 000021a1: ADD 000021a2: MLOAD 000021a3: AND 000021a4: PUSH1 0x20 000021a6: DUP7 000021a7: ADD 000021a8: MSTORE 000021a9: ADD 000021aa: MLOAD 000021ab: AND 000021ac: SWAP2 000021ad: ADD 000021ae: MSTORE 000021af: JUMP 000021b0: JUMPDEST 000021b1: ADD 000021b2: SWAP5 000021b3: ADD 000021b4: SWAP3 000021b5: SWAP2 000021b6: ADD 000021b7: PUSH2 0x2161 000021ba: JUMP 000021bb: JUMPDEST 000021bc: SWAP1 000021bd: PUSH1 0x20 000021bf: PUSH2 0x0524 000021c2: SWAP3 000021c3: DUP2 000021c4: DUP2 000021c5: MSTORE 000021c6: ADD 000021c7: SWAP1 000021c8: PUSH2 0x2151 000021cb: JUMP 000021cc: JUMPDEST 000021cd: CALLVALUE 000021ce: PUSH2 0x0436 000021d1: JUMPI 000021d2: PUSH1 0x20 000021d4: CALLDATASIZE 000021d5: PUSH1 0x03 000021d7: NOT 000021d8: ADD 000021d9: SLT 000021da: PUSH2 0x0436 000021dd: JUMPI 000021de: PUSH1 0x04 000021e0: CALLDATALOAD 000021e1: PUSH2 0x21e9 000021e4: DUP2 000021e5: PUSH2 0x3b56 000021e8: JUMP 000021e9: JUMPDEST 000021ea: DUP1 000021eb: PUSH0 000021ec: MSTORE 000021ed: PUSH1 0x0e 000021ef: PUSH1 0x20 000021f1: MSTORE 000021f2: PUSH1 0xff 000021f4: PUSH1 0x01 000021f6: PUSH1 0x40 000021f8: PUSH0 000021f9: KECCAK256 000021fa: ADD 000021fb: SLOAD 000021fc: PUSH1 0xb0 000021fe: SHR 000021ff: AND 00002200: PUSH1 0x03 00002202: DUP2 00002203: LT 00002204: ISZERO 00002205: PUSH2 0x0872 00002208: JUMPI 00002209: PUSH1 0x01 0000220b: SUB 0000220c: PUSH2 0x2238 0000220f: JUMPI 00002210: PUSH2 0x222c 00002213: PUSH2 0x2227 00002216: PUSH2 0x058d 00002219: SWAP3 0000221a: PUSH0 0000221b: MSTORE 0000221c: PUSH1 0x0d 0000221e: PUSH1 0x20 00002220: MSTORE 00002221: PUSH1 0x40 00002223: PUSH0 00002224: KECCAK256 00002225: SWAP1 00002226: JUMP 00002227: JUMPDEST 00002228: PUSH2 0x3811 0000222b: JUMP 0000222c: JUMPDEST 0000222d: PUSH1 0x40 0000222f: MLOAD 00002230: SWAP2 00002231: DUP3 00002232: SWAP2 00002233: DUP3 00002234: PUSH2 0x21bb 00002237: JUMP 00002238: JUMPDEST 00002239: PUSH0 0000223a: MSTORE 0000223b: PUSH1 0x0e 0000223d: PUSH1 0x20 0000223f: MSTORE 00002240: PUSH2 0x071b 00002243: PUSH2 0x2257 00002246: PUSH1 0x01 00002248: PUSH1 0x40 0000224a: PUSH0 0000224b: KECCAK256 0000224c: ADD 0000224d: PUSH1 0xff 0000224f: SWAP1 00002250: SLOAD 00002251: PUSH1 0xb0 00002253: SHR 00002254: AND 00002255: SWAP1 00002256: JUMP 00002257: JUMPDEST 00002258: PUSH4 0x319dec3f 0000225d: PUSH1 0xe0 0000225f: SHL 00002260: PUSH0 00002261: MSTORE 00002262: PUSH2 0x35f7 00002265: JUMP 00002266: JUMPDEST 00002267: PUSH1 0xa0 00002269: CALLDATASIZE 0000226a: PUSH1 0x03 0000226c: NOT 0000226d: ADD 0000226e: SLT 0000226f: PUSH2 0x0436 00002272: JUMPI 00002273: PUSH1 0x04 00002275: CALLDATALOAD 00002276: PUSH1 0x01 00002278: PUSH1 0x01 0000227a: PUSH1 0x40 0000227c: SHL 0000227d: SUB 0000227e: DUP2 0000227f: GT 00002280: PUSH2 0x0436 00002283: JUMPI 00002284: PUSH2 0x12b4 00002287: PUSH2 0x2297 0000228a: PUSH2 0x058d 0000228d: SWAP3 0000228e: CALLDATASIZE 0000228f: SWAP1 00002290: PUSH1 0x04 00002292: ADD 00002293: PUSH2 0x176d 00002296: JUMP 00002297: JUMPDEST 00002298: PUSH2 0x22a0 0000229b: CALLDATASIZE 0000229c: PUSH2 0x11a4 0000229f: JUMP 000022a0: JUMPDEST 000022a1: PUSH2 0x22a9 000022a4: CALLDATASIZE 000022a5: PUSH2 0x11b5 000022a8: JUMP 000022a9: JUMPDEST 000022aa: SWAP2 000022ab: PUSH2 0x22b2 000022ae: PUSH2 0x4278 000022b1: JUMP 000022b2: JUMPDEST 000022b3: PUSH2 0x22ba 000022b6: PUSH2 0x242c 000022b9: JUMP 000022ba: JUMPDEST 000022bb: TIMESTAMP 000022bc: PUSH5 0xffffffffff 000022c2: AND 000022c3: DUP2 000022c4: MSTORE 000022c5: PUSH1 0x20 000022c7: DUP2 000022c8: ADD 000022c9: SWAP3 000022ca: PUSH0 000022cb: DUP5 000022cc: MSTORE 000022cd: PUSH0 000022ce: SWAP4 000022cf: PUSH2 0x22e4 000022d2: PUSH2 0x22da 000022d5: DUP8 000022d6: PUSH2 0x3897 000022d9: JUMP 000022da: JUMPDEST 000022db: PUSH5 0xffffffffff 000022e1: AND 000022e2: SWAP1 000022e3: JUMP 000022e4: JUMPDEST 000022e5: PUSH2 0x238b 000022e8: JUMPI 000022e9: JUMPDEST 000022ea: PUSH2 0x2321 000022ed: SWAP1 000022ee: PUSH2 0x2316 000022f1: PUSH2 0x2383 000022f4: SWAP7 000022f5: SWAP8 000022f6: PUSH2 0x2310 000022f9: PUSH1 0x20 000022fb: PUSH2 0x2309 000022fe: DUP9 000022ff: MLOAD 00002300: PUSH5 0xffffffffff 00002306: AND 00002307: SWAP1 00002308: JUMP 00002309: JUMPDEST 0000230a: SWAP3 0000230b: ADD 0000230c: PUSH2 0x3897 0000230f: JUMP 00002310: JUMPDEST 00002311: SWAP1 00002312: PUSH2 0x38a1 00002315: JUMP 00002316: JUMPDEST 00002317: PUSH5 0xffffffffff 0000231d: AND 0000231e: SWAP1 0000231f: MSTORE 00002320: JUMP 00002321: JUMPDEST 00002322: PUSH2 0x232d 00002325: PUSH1 0x80 00002327: DUP5 00002328: ADD 00002329: PUSH2 0x3546 0000232c: JUMP 0000232d: JUMPDEST 0000232e: SWAP5 0000232f: PUSH2 0x233a 00002332: PUSH1 0x40 00002334: DUP6 00002335: ADD 00002336: PUSH2 0x3512 00002339: JUMP 0000233a: JUMPDEST 0000233b: PUSH2 0x2346 0000233e: PUSH1 0x20 00002340: DUP7 00002341: ADD 00002342: PUSH2 0x3550 00002345: JUMP 00002346: JUMPDEST 00002347: SWAP1 00002348: PUSH2 0x2350 0000234b: DUP7 0000234c: PUSH2 0x3550 0000234f: JUMP 00002350: JUMPDEST 00002351: SWAP3 00002352: PUSH2 0x12ae 00002355: PUSH2 0x2361 00002358: PUSH1 0xc0 0000235a: DUP10 0000235b: ADD 0000235c: DUP10 0000235d: PUSH2 0x3345 00002360: JUMP 00002361: JUMPDEST 00002362: SWAP10 00002363: SWAP1 00002364: PUSH2 0x237b 00002367: PUSH1 0xa0 00002369: PUSH2 0x2374 0000236c: PUSH1 0x60 0000236e: DUP14 0000236f: ADD 00002370: PUSH2 0x3550 00002373: JUMP 00002374: JUMPDEST 00002375: SWAP12 00002376: ADD 00002377: PUSH2 0x3546 0000237a: JUMP 0000237b: JUMPDEST 0000237c: SWAP11 0000237d: CALLDATASIZE 0000237e: SWAP2 0000237f: PUSH2 0x2487 00002382: JUMP 00002383: JUMPDEST 00002384: SWAP6 00002385: CALLDATASIZE 00002386: SWAP1 00002387: PUSH2 0x3594 0000238a: JUMP 0000238b: JUMPDEST 0000238c: PUSH2 0x2383 0000238f: SWAP5 00002390: POP 00002391: PUSH2 0x2321 00002394: SWAP1 00002395: PUSH2 0x2316 00002398: PUSH2 0x23b2 0000239b: PUSH2 0x23a9 0000239e: DUP7 0000239f: MLOAD 000023a0: PUSH5 0xffffffffff 000023a6: AND 000023a7: SWAP1 000023a8: JUMP 000023a9: JUMPDEST 000023aa: PUSH2 0x2310 000023ad: DUP11 000023ae: PUSH2 0x3897 000023b1: JUMP 000023b2: JUMPDEST 000023b3: SWAP7 000023b4: POP 000023b5: POP 000023b6: SWAP1 000023b7: POP 000023b8: PUSH2 0x22e9 000023bb: JUMP 000023bc: JUMPDEST 000023bd: PUSH4 0x4e487b71 000023c2: PUSH1 0xe0 000023c4: SHL 000023c5: PUSH0 000023c6: MSTORE 000023c7: PUSH1 0x41 000023c9: PUSH1 0x04 000023cb: MSTORE 000023cc: PUSH1 0x24 000023ce: PUSH0 000023cf: REVERT 000023d0: JUMPDEST 000023d1: PUSH1 0x60 000023d3: DUP2 000023d4: ADD 000023d5: SWAP1 000023d6: DUP2 000023d7: LT 000023d8: PUSH1 0x01 000023da: PUSH1 0x01 000023dc: PUSH1 0x40 000023de: SHL 000023df: SUB 000023e0: DUP3 000023e1: GT 000023e2: OR 000023e3: PUSH2 0x23eb 000023e6: JUMPI 000023e7: PUSH1 0x40 000023e9: MSTORE 000023ea: JUMP 000023eb: JUMPDEST 000023ec: PUSH2 0x23bc 000023ef: JUMP 000023f0: JUMPDEST 000023f1: PUSH1 0x40 000023f3: DUP2 000023f4: ADD 000023f5: SWAP1 000023f6: DUP2 000023f7: LT 000023f8: PUSH1 0x01 000023fa: PUSH1 0x01 000023fc: PUSH1 0x40 000023fe: SHL 000023ff: SUB 00002400: DUP3 00002401: GT 00002402: OR 00002403: PUSH2 0x23eb 00002406: JUMPI 00002407: PUSH1 0x40 00002409: MSTORE 0000240a: JUMP 0000240b: JUMPDEST 0000240c: SWAP1 0000240d: PUSH1 0x1f 0000240f: DUP1 00002410: NOT 00002411: SWAP2 00002412: ADD 00002413: AND 00002414: DUP2 00002415: ADD 00002416: SWAP1 00002417: DUP2 00002418: LT 00002419: PUSH1 0x01 0000241b: PUSH1 0x01 0000241d: PUSH1 0x40 0000241f: SHL 00002420: SUB 00002421: DUP3 00002422: GT 00002423: OR 00002424: PUSH2 0x23eb 00002427: JUMPI 00002428: PUSH1 0x40 0000242a: MSTORE 0000242b: JUMP 0000242c: JUMPDEST 0000242d: PUSH1 0x40 0000242f: MLOAD 00002430: SWAP1 00002431: PUSH2 0x243b 00002434: PUSH1 0x40 00002436: DUP4 00002437: PUSH2 0x240b 0000243a: JUMP 0000243b: JUMPDEST 0000243c: JUMP 0000243d: JUMPDEST 0000243e: PUSH1 0x40 00002440: MLOAD 00002441: SWAP1 00002442: PUSH2 0x243b 00002445: PUSH2 0x0140 00002448: DUP4 00002449: PUSH2 0x240b 0000244c: JUMP 0000244d: JUMPDEST 0000244e: PUSH1 0x40 00002450: MLOAD 00002451: SWAP1 00002452: PUSH2 0x243b 00002455: PUSH2 0x0120 00002458: DUP4 00002459: PUSH2 0x240b 0000245c: JUMP 0000245d: JUMPDEST 0000245e: PUSH1 0x40 00002460: MLOAD 00002461: SWAP1 00002462: PUSH2 0x243b 00002465: PUSH1 0x60 00002467: DUP4 00002468: PUSH2 0x240b 0000246b: JUMP 0000246c: JUMPDEST 0000246d: PUSH1 0x01 0000246f: PUSH1 0x01 00002471: PUSH1 0x40 00002473: SHL 00002474: SUB 00002475: DUP2 00002476: GT 00002477: PUSH2 0x23eb 0000247a: JUMPI 0000247b: PUSH1 0x1f 0000247d: ADD 0000247e: PUSH1 0x1f 00002480: NOT 00002481: AND 00002482: PUSH1 0x20 00002484: ADD 00002485: SWAP1 00002486: JUMP 00002487: JUMPDEST 00002488: SWAP3 00002489: SWAP2 0000248a: SWAP3 0000248b: PUSH2 0x2493 0000248e: DUP3 0000248f: PUSH2 0x246c 00002492: JUMP 00002493: JUMPDEST 00002494: SWAP2 00002495: PUSH2 0x24a1 00002498: PUSH1 0x40 0000249a: MLOAD 0000249b: SWAP4 0000249c: DUP5 0000249d: PUSH2 0x240b 000024a0: JUMP 000024a1: JUMPDEST 000024a2: DUP3 000024a3: SWAP5 000024a4: DUP2 000024a5: DUP5 000024a6: MSTORE 000024a7: DUP2 000024a8: DUP4 000024a9: ADD 000024aa: GT 000024ab: PUSH2 0x0436 000024ae: JUMPI 000024af: DUP3 000024b0: DUP2 000024b1: PUSH1 0x20 000024b3: SWAP4 000024b4: DUP5 000024b5: PUSH0 000024b6: SWAP7 000024b7: ADD 000024b8: CALLDATACOPY 000024b9: ADD 000024ba: ADD 000024bb: MSTORE 000024bc: JUMP 000024bd: JUMPDEST 000024be: CALLVALUE 000024bf: PUSH2 0x0436 000024c2: JUMPI 000024c3: PUSH1 0x80 000024c5: CALLDATASIZE 000024c6: PUSH1 0x03 000024c8: NOT 000024c9: ADD 000024ca: SLT 000024cb: PUSH2 0x0436 000024ce: JUMPI 000024cf: PUSH1 0x04 000024d1: CALLDATALOAD 000024d2: PUSH2 0x24da 000024d5: DUP2 000024d6: PUSH2 0x0657 000024d9: JUMP 000024da: JUMPDEST 000024db: PUSH1 0x24 000024dd: CALLDATALOAD 000024de: SWAP1 000024df: PUSH2 0x24e7 000024e2: DUP3 000024e3: PUSH2 0x0657 000024e6: JUMP 000024e7: JUMPDEST 000024e8: PUSH1 0x44 000024ea: CALLDATALOAD 000024eb: PUSH1 0x64 000024ed: CALLDATALOAD 000024ee: SWAP3 000024ef: PUSH1 0x01 000024f1: PUSH1 0x01 000024f3: PUSH1 0x40 000024f5: SHL 000024f6: SUB 000024f7: DUP5 000024f8: GT 000024f9: PUSH2 0x0436 000024fc: JUMPI 000024fd: CALLDATASIZE 000024fe: PUSH1 0x23 00002500: DUP6 00002501: ADD 00002502: SLT 00002503: ISZERO 00002504: PUSH2 0x0436 00002507: JUMPI 00002508: PUSH2 0x251e 0000250b: PUSH2 0x0708 0000250e: SWAP5 0000250f: CALLDATASIZE 00002510: SWAP1 00002511: PUSH1 0x24 00002513: DUP2 00002514: PUSH1 0x04 00002516: ADD 00002517: CALLDATALOAD 00002518: SWAP2 00002519: ADD 0000251a: PUSH2 0x2487 0000251d: JUMP 0000251e: JUMPDEST 0000251f: SWAP3 00002520: PUSH2 0x38bd 00002523: JUMP 00002524: JUMPDEST 00002525: CALLVALUE 00002526: PUSH2 0x0436 00002529: JUMPI 0000252a: PUSH1 0x20 0000252c: CALLDATASIZE 0000252d: PUSH1 0x03 0000252f: NOT 00002530: ADD 00002531: SLT 00002532: PUSH2 0x0436 00002535: JUMPI 00002536: PUSH1 0x04 00002538: CALLDATALOAD 00002539: PUSH0 0000253a: MSTORE 0000253b: PUSH1 0x0e 0000253d: PUSH1 0x20 0000253f: MSTORE 00002540: PUSH1 0x20 00002542: PUSH1 0x01 00002544: PUSH1 0x01 00002546: PUSH1 0xa0 00002548: SHL 00002549: SUB 0000254a: PUSH1 0x40 0000254c: PUSH0 0000254d: KECCAK256 0000254e: SLOAD 0000254f: AND 00002550: ISZERO 00002551: ISZERO 00002552: PUSH1 0x40 00002554: MLOAD 00002555: SWAP1 00002556: DUP2 00002557: MSTORE 00002558: RETURN 00002559: JUMPDEST 0000255a: CALLVALUE 0000255b: PUSH2 0x0436 0000255e: JUMPI 0000255f: PUSH1 0x20 00002561: CALLDATASIZE 00002562: PUSH1 0x03 00002564: NOT 00002565: ADD 00002566: SLT 00002567: PUSH2 0x0436 0000256a: JUMPI 0000256b: PUSH1 0x04 0000256d: CALLDATALOAD 0000256e: PUSH2 0x2576 00002571: DUP2 00002572: PUSH2 0x3b56 00002575: JUMP 00002576: JUMPDEST 00002577: PUSH0 00002578: MSTORE 00002579: PUSH1 0x0e 0000257b: PUSH1 0x20 0000257d: MSTORE 0000257e: PUSH1 0x20 00002580: PUSH1 0x01 00002582: PUSH1 0x01 00002584: PUSH1 0xa0 00002586: SHL 00002587: SUB 00002588: PUSH1 0x40 0000258a: PUSH0 0000258b: KECCAK256 0000258c: SLOAD 0000258d: AND 0000258e: PUSH1 0x40 00002590: MLOAD 00002591: SWAP1 00002592: DUP2 00002593: MSTORE 00002594: RETURN 00002595: JUMPDEST 00002596: CALLVALUE 00002597: PUSH2 0x0436 0000259a: JUMPI 0000259b: PUSH1 0x20 0000259d: CALLDATASIZE 0000259e: PUSH1 0x03 000025a0: NOT 000025a1: ADD 000025a2: SLT 000025a3: PUSH2 0x0436 000025a6: JUMPI 000025a7: PUSH1 0x04 000025a9: CALLDATALOAD 000025aa: PUSH2 0x25b2 000025ad: DUP2 000025ae: PUSH2 0x3b56 000025b1: JUMP 000025b2: JUMPDEST 000025b3: PUSH0 000025b4: MSTORE 000025b5: PUSH1 0x0e 000025b7: PUSH1 0x20 000025b9: MSTORE 000025ba: PUSH1 0x20 000025bc: PUSH5 0xffffffffff 000025c2: PUSH1 0x40 000025c4: PUSH0 000025c5: KECCAK256 000025c6: SLOAD 000025c7: PUSH1 0xa0 000025c9: SHR 000025ca: AND 000025cb: PUSH1 0x40 000025cd: MLOAD 000025ce: SWAP1 000025cf: DUP2 000025d0: MSTORE 000025d1: RETURN 000025d2: JUMPDEST 000025d3: PUSH1 0x40 000025d5: CALLDATASIZE 000025d6: PUSH1 0x03 000025d8: NOT 000025d9: ADD 000025da: SLT 000025db: PUSH2 0x0436 000025de: JUMPI 000025df: PUSH1 0x04 000025e1: CALLDATALOAD 000025e2: PUSH1 0x24 000025e4: CALLDATALOAD 000025e5: PUSH2 0x25ed 000025e8: DUP2 000025e9: PUSH2 0x0657 000025ec: JUMP 000025ed: JUMPDEST 000025ee: PUSH2 0x25f5 000025f1: PUSH2 0x4278 000025f4: JUMP 000025f5: JUMPDEST 000025f6: PUSH2 0x25fe 000025f9: DUP3 000025fa: PUSH2 0x3b56 000025fd: JUMP 000025fe: JUMPDEST 000025ff: DUP2 00002600: PUSH0 00002601: MSTORE 00002602: PUSH1 0x03 00002604: PUSH1 0x20 00002606: MSTORE 00002607: PUSH1 0x01 00002609: PUSH1 0x01 0000260b: PUSH1 0xa0 0000260d: SHL 0000260e: SUB 0000260f: PUSH1 0x40 00002611: PUSH0 00002612: KECCAK256 00002613: SLOAD 00002614: AND 00002615: SWAP1 00002616: PUSH2 0x2620 00002619: DUP4 0000261a: CALLER 0000261b: DUP5 0000261c: PUSH2 0x54b0 0000261f: JUMP 00002620: JUMPDEST 00002621: ISZERO 00002622: PUSH2 0x2881 00002625: JUMPI 00002626: PUSH2 0x262e 00002629: DUP4 0000262a: PUSH2 0x509b 0000262d: JUMP 0000262e: JUMPDEST 0000262f: SWAP2 00002630: PUSH1 0x01 00002632: PUSH1 0x01 00002634: PUSH1 0x80 00002636: SHL 00002637: SUB 00002638: DUP4 00002639: AND 0000263a: DUP1 0000263b: ISZERO 0000263c: DUP1 0000263d: ISZERO 0000263e: PUSH2 0x2651 00002641: JUMPI 00002642: JUMPDEST 00002643: PUSH2 0x058d 00002646: DUP6 00002647: PUSH2 0x0c64 0000264a: DUP9 0000264b: DUP8 0000264c: DUP8 0000264d: PUSH2 0x50c1 00002650: JUMP 00002651: JUMPDEST 00002652: PUSH2 0x2659 00002655: PUSH2 0x4278 00002658: JUMP 00002659: JUMPDEST 0000265a: PUSH2 0x2662 0000265d: DUP7 0000265e: PUSH2 0x3b56 00002661: JUMP 00002662: JUMPDEST 00002663: PUSH2 0x2684 00002666: PUSH1 0x01 00002668: PUSH2 0x2679 0000266b: DUP9 0000266c: PUSH0 0000266d: MSTORE 0000266e: PUSH1 0x0e 00002670: PUSH1 0x20 00002672: MSTORE 00002673: PUSH1 0x40 00002675: PUSH0 00002676: KECCAK256 00002677: SWAP1 00002678: JUMP 00002679: JUMPDEST 0000267a: ADD 0000267b: SLOAD 0000267c: PUSH1 0xa0 0000267e: SHR 0000267f: PUSH1 0xff 00002681: AND 00002682: SWAP1 00002683: JUMP 00002684: JUMPDEST 00002685: PUSH2 0x286d 00002688: JUMPI 00002689: DUP3 0000268a: ISZERO 0000268b: PUSH2 0x2859 0000268e: JUMPI 0000268f: PUSH2 0x26a3 00002692: PUSH2 0x0c39 00002695: DUP8 00002696: PUSH0 00002697: MSTORE 00002698: PUSH1 0x03 0000269a: PUSH1 0x20 0000269c: MSTORE 0000269d: PUSH1 0x40 0000269f: PUSH0 000026a0: KECCAK256 000026a1: SWAP1 000026a2: JUMP 000026a3: JUMPDEST 000026a4: SWAP2 000026a5: PUSH1 0x01 000026a7: PUSH1 0x01 000026a9: PUSH1 0xa0 000026ab: SHL 000026ac: SUB 000026ad: DUP4 000026ae: AND 000026af: SWAP2 000026b0: DUP3 000026b1: DUP6 000026b2: EQ 000026b3: ISZERO 000026b4: DUP1 000026b5: PUSH2 0x2845 000026b8: JUMPI 000026b9: JUMPDEST 000026ba: PUSH2 0x2820 000026bd: JUMPI 000026be: PUSH2 0x280c 000026c1: JUMPI 000026c2: PUSH2 0x26ca 000026c5: DUP8 000026c6: PUSH2 0x509b 000026c9: JUMP 000026ca: JUMPDEST 000026cb: SWAP1 000026cc: PUSH1 0x01 000026ce: PUSH1 0x01 000026d0: PUSH1 0x80 000026d2: SHL 000026d3: SUB 000026d4: DUP3 000026d5: AND 000026d6: LT 000026d7: PUSH2 0x27e6 000026da: JUMPI 000026db: POP 000026dc: PUSH2 0x26e6 000026df: DUP6 000026e0: DUP5 000026e1: DUP9 000026e2: PUSH2 0x5139 000026e5: JUMP 000026e6: JUMPDEST 000026e7: PUSH1 0x40 000026e9: MLOAD 000026ea: DUP7 000026eb: DUP2 000026ec: MSTORE 000026ed: PUSH0 000026ee: MLOAD 000026ef: PUSH1 0x20 000026f1: PUSH2 0x5a20 000026f4: PUSH0 000026f5: CODECOPY 000026f6: PUSH0 000026f7: MLOAD 000026f8: SWAP1 000026f9: PUSH0 000026fa: MSTORE 000026fb: SWAP1 000026fc: PUSH1 0x20 000026fe: SWAP1 000026ff: LOG1 00002700: DUP1 00002701: CALLER 00002702: EQ 00002703: ISZERO 00002704: DUP1 00002705: PUSH2 0x27bb 00002708: JUMPI 00002709: JUMPDEST 0000270a: ISZERO 0000270b: PUSH2 0x2642 0000270e: JUMPI 0000270f: PUSH1 0x40 00002711: MLOAD 00002712: PUSH4 0x92b9102b 00002717: PUSH1 0xe0 00002719: SHL 0000271a: DUP2 0000271b: MSTORE 0000271c: PUSH1 0x04 0000271e: DUP2 0000271f: ADD 00002720: DUP8 00002721: SWAP1 00002722: MSTORE 00002723: CALLER 00002724: PUSH1 0x24 00002726: DUP3 00002727: ADD 00002728: MSTORE 00002729: PUSH1 0x01 0000272b: PUSH1 0x01 0000272d: PUSH1 0xa0 0000272f: SHL 00002730: SUB 00002731: DUP5 00002732: AND 00002733: PUSH1 0x44 00002735: DUP3 00002736: ADD 00002737: MSTORE 00002738: PUSH1 0x01 0000273a: PUSH1 0x01 0000273c: PUSH1 0x80 0000273e: SHL 0000273f: SUB 00002740: DUP7 00002741: AND 00002742: PUSH1 0x64 00002744: DUP3 00002745: ADD 00002746: MSTORE 00002747: SWAP1 00002748: PUSH1 0x20 0000274a: SWAP1 0000274b: DUP3 0000274c: SWAP1 0000274d: PUSH1 0x84 0000274f: SWAP1 00002750: DUP3 00002751: SWAP1 00002752: PUSH0 00002753: SWAP1 00002754: GAS 00002755: CALL 00002756: SWAP1 00002757: DUP2 00002758: ISZERO 00002759: PUSH2 0x0bae 0000275c: JUMPI 0000275d: PUSH0 0000275e: SWAP2 0000275f: PUSH2 0x279c 00002762: JUMPI 00002763: JUMPDEST 00002764: POP 00002765: PUSH1 0x01 00002767: PUSH1 0x01 00002769: PUSH1 0xe0 0000276b: SHL 0000276c: SUB 0000276d: NOT 0000276e: AND 0000276f: PUSH4 0x6d46efd5 00002774: PUSH1 0xe0 00002776: SHL 00002777: ADD 00002778: PUSH2 0x2781 0000277b: JUMPI 0000277c: DUP1 0000277d: PUSH2 0x2642 00002780: JUMP 00002781: JUMPDEST 00002782: PUSH4 0x6ade2511 00002787: PUSH1 0xe0 00002789: SHL 0000278a: PUSH0 0000278b: MSTORE 0000278c: PUSH1 0x01 0000278e: PUSH1 0x01 00002790: PUSH1 0xa0 00002792: SHL 00002793: SUB 00002794: AND 00002795: PUSH1 0x04 00002797: MSTORE 00002798: PUSH1 0x24 0000279a: PUSH0 0000279b: REVERT 0000279c: JUMPDEST 0000279d: PUSH2 0x27b5 000027a0: SWAP2 000027a1: POP 000027a2: PUSH1 0x20 000027a4: RETURNDATASIZE 000027a5: PUSH1 0x20 000027a7: GT 000027a8: PUSH2 0x1cd2 000027ab: JUMPI 000027ac: PUSH2 0x1cc4 000027af: DUP2 000027b0: DUP4 000027b1: PUSH2 0x240b 000027b4: JUMP 000027b5: JUMPDEST 000027b6: PUSH0 000027b7: PUSH2 0x2763 000027ba: JUMP 000027bb: JUMPDEST 000027bc: POP 000027bd: PUSH2 0x27e1 000027c0: PUSH2 0x27da 000027c3: DUP4 000027c4: PUSH1 0x01 000027c6: PUSH1 0x01 000027c8: PUSH1 0xa0 000027ca: SHL 000027cb: SUB 000027cc: AND 000027cd: PUSH0 000027ce: MSTORE 000027cf: PUSH1 0x0b 000027d1: PUSH1 0x20 000027d3: MSTORE 000027d4: PUSH1 0x40 000027d6: PUSH0 000027d7: KECCAK256 000027d8: SWAP1 000027d9: JUMP 000027da: JUMPDEST 000027db: SLOAD 000027dc: PUSH1 0xff 000027de: AND 000027df: SWAP1 000027e0: JUMP 000027e1: JUMPDEST 000027e2: PUSH2 0x2709 000027e5: JUMP 000027e6: JUMPDEST 000027e7: PUSH4 0x066920d7 000027ec: PUSH1 0xe0 000027ee: SHL 000027ef: PUSH0 000027f0: MSTORE 000027f1: PUSH1 0x04 000027f3: DUP8 000027f4: SWAP1 000027f5: MSTORE 000027f6: PUSH1 0x01 000027f8: PUSH1 0x01 000027fa: PUSH1 0x80 000027fc: SHL 000027fd: SUB 000027fe: DUP1 000027ff: DUP8 00002800: AND 00002801: PUSH1 0x24 00002803: MSTORE 00002804: AND 00002805: PUSH1 0x44 00002807: MSTORE 00002808: PUSH1 0x64 0000280a: PUSH0 0000280b: REVERT 0000280c: JUMPDEST 0000280d: PUSH4 0xb2ae7633 00002812: PUSH1 0xe0 00002814: SHL 00002815: PUSH0 00002816: MSTORE 00002817: PUSH1 0x04 00002819: DUP8 0000281a: SWAP1 0000281b: MSTORE 0000281c: PUSH1 0x24 0000281e: PUSH0 0000281f: REVERT 00002820: JUMPDEST 00002821: PUSH4 0x350b3203 00002826: PUSH1 0xe1 00002828: SHL 00002829: PUSH0 0000282a: MSTORE 0000282b: PUSH1 0x04 0000282d: DUP9 0000282e: SWAP1 0000282f: MSTORE 00002830: CALLER 00002831: PUSH1 0x24 00002833: MSTORE 00002834: PUSH1 0x01 00002836: PUSH1 0x01 00002838: PUSH1 0xa0 0000283a: SHL 0000283b: SUB 0000283c: DUP6 0000283d: AND 0000283e: PUSH1 0x44 00002840: MSTORE 00002841: PUSH1 0x64 00002843: PUSH0 00002844: REVERT 00002845: JUMPDEST 00002846: POP 00002847: PUSH2 0x2854 0000284a: PUSH2 0x0d71 0000284d: DUP10 0000284e: CALLER 0000284f: DUP8 00002850: PUSH2 0x54b0 00002853: JUMP 00002854: JUMPDEST 00002855: PUSH2 0x26b9 00002858: JUMP 00002859: JUMPDEST 0000285a: PUSH4 0x2da33e5b 0000285f: PUSH1 0xe0 00002861: SHL 00002862: PUSH0 00002863: MSTORE 00002864: PUSH1 0x04 00002866: DUP7 00002867: SWAP1 00002868: MSTORE 00002869: PUSH1 0x24 0000286b: PUSH0 0000286c: REVERT 0000286d: JUMPDEST 0000286e: PUSH4 0x15efa0f3 00002873: PUSH1 0xe1 00002875: SHL 00002876: PUSH0 00002877: MSTORE 00002878: PUSH1 0x04 0000287a: DUP7 0000287b: SWAP1 0000287c: MSTORE 0000287d: PUSH1 0x24 0000287f: PUSH0 00002880: REVERT 00002881: JUMPDEST 00002882: DUP3 00002883: PUSH4 0x20825011 00002888: PUSH1 0xe0 0000288a: SHL 0000288b: PUSH0 0000288c: MSTORE 0000288d: PUSH1 0x04 0000288f: MSTORE 00002890: CALLER 00002891: PUSH1 0x24 00002893: MSTORE 00002894: PUSH1 0x44 00002896: PUSH0 00002897: REVERT 00002898: JUMPDEST 00002899: CALLVALUE 0000289a: PUSH2 0x0436 0000289d: JUMPI 0000289e: PUSH1 0x20 000028a0: CALLDATASIZE 000028a1: PUSH1 0x03 000028a3: NOT 000028a4: ADD 000028a5: SLT 000028a6: PUSH2 0x0436 000028a9: JUMPI 000028aa: PUSH1 0x04 000028ac: CALLDATALOAD 000028ad: PUSH2 0x28b5 000028b0: DUP2 000028b1: PUSH2 0x3b23 000028b4: JUMP 000028b5: JUMPDEST 000028b6: POP 000028b7: PUSH0 000028b8: PUSH1 0x01 000028ba: PUSH1 0x01 000028bc: PUSH1 0xa0 000028be: SHL 000028bf: SUB 000028c0: PUSH1 0x0a 000028c2: SLOAD 000028c3: AND 000028c4: SWAP2 000028c5: PUSH1 0x44 000028c7: PUSH1 0x40 000028c9: MLOAD 000028ca: DUP1 000028cb: SWAP5 000028cc: DUP2 000028cd: SWAP4 000028ce: PUSH4 0xe9dc6375 000028d3: PUSH1 0xe0 000028d5: SHL 000028d6: DUP4 000028d7: MSTORE 000028d8: ADDRESS 000028d9: PUSH1 0x04 000028db: DUP5 000028dc: ADD 000028dd: MSTORE 000028de: PUSH1 0x24 000028e0: DUP4 000028e1: ADD 000028e2: MSTORE 000028e3: GAS 000028e4: STATICCALL 000028e5: DUP1 000028e6: ISZERO 000028e7: PUSH2 0x0bae 000028ea: JUMPI 000028eb: PUSH0 000028ec: SWAP1 000028ed: PUSH2 0x2901 000028f0: JUMPI 000028f1: JUMPDEST 000028f2: PUSH2 0x058d 000028f5: SWAP1 000028f6: PUSH1 0x40 000028f8: MLOAD 000028f9: SWAP2 000028fa: DUP3 000028fb: SWAP2 000028fc: DUP3 000028fd: PUSH2 0x0513 00002900: JUMP 00002901: JUMPDEST 00002902: POP 00002903: RETURNDATASIZE 00002904: DUP1 00002905: PUSH0 00002906: DUP4 00002907: RETURNDATACOPY 00002908: PUSH2 0x2911 0000290b: DUP2 0000290c: DUP4 0000290d: PUSH2 0x240b 00002910: JUMP 00002911: JUMPDEST 00002912: DUP2 00002913: ADD 00002914: SWAP1 00002915: PUSH1 0x20 00002917: DUP2 00002918: DUP4 00002919: SUB 0000291a: SLT 0000291b: PUSH2 0x0436 0000291e: JUMPI 0000291f: DUP1 00002920: MLOAD 00002921: SWAP1 00002922: PUSH1 0x01 00002924: PUSH1 0x01 00002926: PUSH1 0x40 00002928: SHL 00002929: SUB 0000292a: DUP3 0000292b: GT 0000292c: PUSH2 0x0436 0000292f: JUMPI 00002930: ADD 00002931: SWAP1 00002932: DUP1 00002933: PUSH1 0x1f 00002935: DUP4 00002936: ADD 00002937: SLT 00002938: ISZERO 00002939: PUSH2 0x0436 0000293c: JUMPI 0000293d: DUP2 0000293e: MLOAD 0000293f: SWAP2 00002940: PUSH2 0x2948 00002943: DUP4 00002944: PUSH2 0x246c 00002947: JUMP 00002948: JUMPDEST 00002949: SWAP2 0000294a: PUSH2 0x2956 0000294d: PUSH1 0x40 0000294f: MLOAD 00002950: SWAP4 00002951: DUP5 00002952: PUSH2 0x240b 00002955: JUMP 00002956: JUMPDEST 00002957: DUP4 00002958: DUP4 00002959: MSTORE 0000295a: PUSH1 0x20 0000295c: DUP5 0000295d: DUP4 0000295e: ADD 0000295f: ADD 00002960: GT 00002961: PUSH2 0x0436 00002964: JUMPI 00002965: PUSH2 0x058d 00002968: SWAP3 00002969: PUSH2 0x2978 0000296c: SWAP2 0000296d: PUSH1 0x20 0000296f: DUP1 00002970: DUP6 00002971: ADD 00002972: SWAP2 00002973: ADD 00002974: PUSH2 0x04cd 00002977: JUMP 00002978: JUMPDEST 00002979: PUSH2 0x28f1 0000297c: JUMP 0000297d: JUMPDEST 0000297e: PUSH1 0x40 00002980: CALLDATASIZE 00002981: PUSH1 0x03 00002983: NOT 00002984: ADD 00002985: SLT 00002986: PUSH2 0x0436 00002989: JUMPI 0000298a: PUSH1 0x04 0000298c: CALLDATALOAD 0000298d: PUSH1 0x01 0000298f: PUSH1 0x01 00002991: PUSH1 0x40 00002993: SHL 00002994: SUB 00002995: DUP2 00002996: GT 00002997: PUSH2 0x0436 0000299a: JUMPI 0000299b: PUSH2 0x29a8 0000299e: SWAP1 0000299f: CALLDATASIZE 000029a0: SWAP1 000029a1: PUSH1 0x04 000029a3: ADD 000029a4: PUSH2 0x176d 000029a7: JUMP 000029a8: JUMPDEST 000029a9: PUSH1 0x24 000029ab: CALLDATALOAD 000029ac: PUSH1 0x01 000029ae: PUSH1 0x01 000029b0: PUSH1 0x40 000029b2: SHL 000029b3: SUB 000029b4: DUP2 000029b5: GT 000029b6: PUSH2 0x0436 000029b9: JUMPI 000029ba: PUSH2 0x29c7 000029bd: SWAP1 000029be: CALLDATASIZE 000029bf: SWAP1 000029c0: PUSH1 0x04 000029c2: ADD 000029c3: PUSH2 0x13d2 000029c6: JUMP 000029c7: JUMPDEST 000029c8: SWAP2 000029c9: SWAP1 000029ca: PUSH2 0x29d1 000029cd: PUSH2 0x4278 000029d0: JUMP 000029d1: JUMPDEST 000029d2: PUSH0 000029d3: PUSH5 0xffffffffff 000029d9: TIMESTAMP 000029da: AND 000029db: SWAP4 000029dc: DUP5 000029dd: SWAP3 000029de: PUSH2 0x29fb 000029e1: PUSH1 0x40 000029e3: MLOAD 000029e4: SWAP5 000029e5: DUP6 000029e6: SWAP4 000029e7: DUP5 000029e8: SWAP4 000029e9: PUSH4 0xf0b95e09 000029ee: PUSH1 0xe0 000029f0: SHL 000029f1: DUP6 000029f2: MSTORE 000029f3: PUSH1 0x04 000029f5: DUP6 000029f6: ADD 000029f7: PUSH2 0x3a6a 000029fa: JUMP 000029fb: JUMPDEST 000029fc: SUB 000029fd: DUP2 000029fe: PUSH20 0xa0a1ac47260b95d334763473b868117ef7343aa0 00002a13: GAS 00002a14: DELEGATECALL 00002a15: SWAP2 00002a16: DUP3 00002a17: ISZERO 00002a18: PUSH2 0x0bae 00002a1b: JUMPI 00002a1c: PUSH2 0x058d 00002a1f: SWAP4 00002a20: PUSH2 0x12b4 00002a23: SWAP4 00002a24: PUSH2 0x2acf 00002a27: SWAP4 00002a28: PUSH0 00002a29: SWAP2 00002a2a: PUSH2 0x2ad5 00002a2d: JUMPI 00002a2e: JUMPDEST 00002a2f: POP 00002a30: PUSH2 0x2a70 00002a33: PUSH2 0x2a4a 00002a36: PUSH1 0x40 00002a38: PUSH2 0x1877 00002a3b: PUSH2 0x2a44 00002a3e: DUP6 00002a3f: MLOAD 00002a40: PUSH2 0x352b 00002a43: JUMP 00002a44: JUMPDEST 00002a45: DUP6 00002a46: PUSH2 0x33cf 00002a49: JUMP 00002a4a: JUMPDEST 00002a4b: PUSH2 0x2a62 00002a4e: PUSH2 0x2a55 00002a51: PUSH2 0x242c 00002a54: JUMP 00002a55: JUMPDEST 00002a56: PUSH5 0xffffffffff 00002a5c: SWAP1 00002a5d: SWAP6 00002a5e: AND 00002a5f: DUP6 00002a60: MSTORE 00002a61: JUMP 00002a62: JUMPDEST 00002a63: PUSH5 0xffffffffff 00002a69: AND 00002a6a: PUSH1 0x20 00002a6c: DUP5 00002a6d: ADD 00002a6e: MSTORE 00002a6f: JUMP 00002a70: JUMPDEST 00002a71: PUSH2 0x2a7c 00002a74: PUSH1 0x80 00002a76: DUP5 00002a77: ADD 00002a78: PUSH2 0x3546 00002a7b: JUMP 00002a7c: JUMPDEST 00002a7d: SWAP1 00002a7e: PUSH2 0x2a89 00002a81: PUSH1 0x40 00002a83: DUP6 00002a84: ADD 00002a85: PUSH2 0x3512 00002a88: JUMP 00002a89: JUMPDEST 00002a8a: SWAP1 00002a8b: PUSH2 0x2a96 00002a8e: PUSH1 0x20 00002a90: DUP7 00002a91: ADD 00002a92: PUSH2 0x3550 00002a95: JUMP 00002a96: JUMPDEST 00002a97: PUSH2 0x2a9f 00002a9a: DUP7 00002a9b: PUSH2 0x3550 00002a9e: JUMP 00002a9f: JUMPDEST 00002aa0: SWAP3 00002aa1: PUSH2 0x2aad 00002aa4: PUSH1 0xc0 00002aa6: DUP9 00002aa7: ADD 00002aa8: DUP9 00002aa9: PUSH2 0x3345 00002aac: JUMP 00002aad: JUMPDEST 00002aae: SWAP9 00002aaf: SWAP1 00002ab0: PUSH2 0x2ac7 00002ab3: PUSH1 0xa0 00002ab5: PUSH2 0x2ac0 00002ab8: PUSH1 0x60 00002aba: DUP13 00002abb: ADD 00002abc: PUSH2 0x3550 00002abf: JUMP 00002ac0: JUMPDEST 00002ac1: SWAP11 00002ac2: ADD 00002ac3: PUSH2 0x3546 00002ac6: JUMP 00002ac7: JUMPDEST 00002ac8: SWAP10 00002ac9: CALLDATASIZE 00002aca: SWAP2 00002acb: PUSH2 0x2487 00002ace: JUMP 00002acf: JUMPDEST 00002ad0: SWAP5 00002ad1: PUSH2 0x4bf9 00002ad4: JUMP 00002ad5: JUMPDEST 00002ad6: PUSH2 0x2af1 00002ad9: SWAP2 00002ada: POP 00002adb: RETURNDATASIZE 00002adc: DUP1 00002add: PUSH0 00002ade: DUP4 00002adf: RETURNDATACOPY 00002ae0: PUSH2 0x2ae9 00002ae3: DUP2 00002ae4: DUP4 00002ae5: PUSH2 0x240b 00002ae8: JUMP 00002ae9: JUMPDEST 00002aea: DUP2 00002aeb: ADD 00002aec: SWAP1 00002aed: PUSH2 0x39a8 00002af0: JUMP 00002af1: JUMPDEST 00002af2: PUSH0 00002af3: PUSH2 0x2a2e 00002af6: JUMP 00002af7: JUMPDEST 00002af8: CALLVALUE 00002af9: PUSH2 0x0436 00002afc: JUMPI 00002afd: PUSH1 0x20 00002aff: CALLDATASIZE 00002b00: PUSH1 0x03 00002b02: NOT 00002b03: ADD 00002b04: SLT 00002b05: PUSH2 0x0436 00002b08: JUMPI 00002b09: PUSH2 0x2b6c 00002b0c: PUSH1 0x20 00002b0e: PUSH1 0x04 00002b10: CALLDATALOAD 00002b11: PUSH2 0x2b19 00002b14: DUP2 00002b15: PUSH2 0x3b56 00002b18: JUMP 00002b19: JUMPDEST 00002b1a: PUSH1 0x01 00002b1c: PUSH1 0x01 00002b1e: PUSH1 0xa0 00002b20: SHL 00002b21: SUB 00002b22: PUSH0 00002b23: SLOAD 00002b24: AND 00002b25: SWAP1 00002b26: PUSH0 00002b27: MSTORE 00002b28: PUSH1 0x0e 00002b2a: DUP3 00002b2b: MSTORE 00002b2c: PUSH1 0x01 00002b2e: PUSH1 0x01 00002b30: PUSH1 0xa0 00002b32: SHL 00002b33: SUB 00002b34: PUSH1 0x40 00002b36: PUSH0 00002b37: KECCAK256 00002b38: SLOAD 00002b39: AND 00002b3a: SWAP1 00002b3b: PUSH1 0x40 00002b3d: MLOAD 00002b3e: DUP1 00002b3f: DUP1 00002b40: SWAP6 00002b41: DUP2 00002b42: SWAP5 00002b43: PUSH4 0x419d289d 00002b48: PUSH1 0xe0 00002b4a: SHL 00002b4b: DUP4 00002b4c: MSTORE 00002b4d: PUSH1 0x04 00002b4f: DUP4 00002b50: ADD 00002b51: SWAP2 00002b52: SWAP1 00002b53: SWAP2 00002b54: PUSH1 0x20 00002b56: PUSH1 0x01 00002b58: PUSH1 0x01 00002b5a: PUSH1 0xa0 00002b5c: SHL 00002b5d: SUB 00002b5e: PUSH1 0x40 00002b60: DUP4 00002b61: ADD 00002b62: SWAP5 00002b63: PUSH1 0x02 00002b65: DUP5 00002b66: MSTORE 00002b67: AND 00002b68: SWAP2 00002b69: ADD 00002b6a: MSTORE 00002b6b: JUMP 00002b6c: JUMPDEST 00002b6d: SUB 00002b6e: SWAP2 00002b6f: GAS 00002b70: STATICCALL 00002b71: DUP1 00002b72: ISZERO 00002b73: PUSH2 0x0bae 00002b76: JUMPI 00002b77: PUSH2 0x058d 00002b7a: SWAP2 00002b7b: PUSH0 00002b7c: SWAP2 00002b7d: PUSH2 0x2b92 00002b80: JUMPI 00002b81: JUMPDEST 00002b82: POP 00002b83: PUSH1 0x40 00002b85: MLOAD 00002b86: SWAP1 00002b87: DUP2 00002b88: MSTORE 00002b89: SWAP1 00002b8a: DUP2 00002b8b: SWAP1 00002b8c: PUSH1 0x20 00002b8e: DUP3 00002b8f: ADD 00002b90: SWAP1 00002b91: JUMP 00002b92: JUMPDEST 00002b93: PUSH2 0x2bab 00002b96: SWAP2 00002b97: POP 00002b98: PUSH1 0x20 00002b9a: RETURNDATASIZE 00002b9b: PUSH1 0x20 00002b9d: GT 00002b9e: PUSH2 0x10d2 00002ba1: JUMPI 00002ba2: PUSH2 0x10c3 00002ba5: DUP2 00002ba6: DUP4 00002ba7: PUSH2 0x240b 00002baa: JUMP 00002bab: JUMPDEST 00002bac: PUSH0 00002bad: PUSH2 0x2b81 00002bb0: JUMP 00002bb1: JUMPDEST 00002bb2: CALLVALUE 00002bb3: PUSH2 0x0436 00002bb6: JUMPI 00002bb7: PUSH1 0x20 00002bb9: CALLDATASIZE 00002bba: PUSH1 0x03 00002bbc: NOT 00002bbd: ADD 00002bbe: SLT 00002bbf: PUSH2 0x0436 00002bc2: JUMPI 00002bc3: PUSH1 0x04 00002bc5: CALLDATALOAD 00002bc6: PUSH2 0x2bce 00002bc9: DUP2 00002bca: PUSH2 0x3b56 00002bcd: JUMP 00002bce: JUMPDEST 00002bcf: PUSH0 00002bd0: MSTORE 00002bd1: PUSH1 0x0e 00002bd3: PUSH1 0x20 00002bd5: MSTORE 00002bd6: PUSH1 0x20 00002bd8: PUSH1 0x01 00002bda: PUSH1 0x01 00002bdc: PUSH1 0x80 00002bde: SHL 00002bdf: SUB 00002be0: PUSH1 0x03 00002be2: PUSH1 0x40 00002be4: PUSH0 00002be5: KECCAK256 00002be6: ADD 00002be7: SLOAD 00002be8: AND 00002be9: PUSH1 0x40 00002beb: MLOAD 00002bec: SWAP1 00002bed: DUP2 00002bee: MSTORE 00002bef: RETURN 00002bf0: JUMPDEST 00002bf1: CALLVALUE 00002bf2: PUSH2 0x0436 00002bf5: JUMPI 00002bf6: PUSH1 0x20 00002bf8: CALLDATASIZE 00002bf9: PUSH1 0x03 00002bfb: NOT 00002bfc: ADD 00002bfd: SLT 00002bfe: PUSH2 0x0436 00002c01: JUMPI 00002c02: PUSH1 0x04 00002c04: CALLDATALOAD 00002c05: PUSH2 0x2c0d 00002c08: DUP2 00002c09: PUSH2 0x3b56 00002c0c: JUMP 00002c0d: JUMPDEST 00002c0e: PUSH0 00002c0f: MSTORE 00002c10: PUSH1 0x0e 00002c12: PUSH1 0x20 00002c14: MSTORE 00002c15: PUSH1 0x20 00002c17: PUSH1 0x02 00002c19: PUSH1 0x40 00002c1b: PUSH0 00002c1c: KECCAK256 00002c1d: ADD 00002c1e: SLOAD 00002c1f: PUSH1 0x80 00002c21: SHR 00002c22: PUSH1 0x40 00002c24: MLOAD 00002c25: SWAP1 00002c26: DUP2 00002c27: MSTORE 00002c28: RETURN 00002c29: JUMPDEST 00002c2a: CALLVALUE 00002c2b: PUSH2 0x0436 00002c2e: JUMPI 00002c2f: PUSH1 0x20 00002c31: CALLDATASIZE 00002c32: PUSH1 0x03 00002c34: NOT 00002c35: ADD 00002c36: SLT 00002c37: PUSH2 0x0436 00002c3a: JUMPI 00002c3b: PUSH1 0x20 00002c3d: PUSH2 0x0e41 00002c40: PUSH1 0x04 00002c42: CALLDATALOAD 00002c43: PUSH2 0x2c4b 00002c46: DUP2 00002c47: PUSH2 0x3b56 00002c4a: JUMP 00002c4b: JUMPDEST 00002c4c: PUSH2 0x509b 00002c4f: JUMP 00002c50: JUMPDEST 00002c51: PUSH2 0x243b 00002c54: SWAP1 00002c55: SWAP3 00002c56: SWAP2 00002c57: SWAP3 00002c58: PUSH1 0x40 00002c5a: DUP2 00002c5b: ADD 00002c5c: SWAP4 00002c5d: PUSH1 0x01 00002c5f: PUSH1 0x01 00002c61: PUSH1 0x80 00002c63: SHL 00002c64: SUB 00002c65: PUSH1 0x20 00002c67: DUP1 00002c68: SWAP3 00002c69: DUP3 00002c6a: DUP2 00002c6b: MLOAD 00002c6c: AND 00002c6d: DUP6 00002c6e: MSTORE 00002c6f: ADD 00002c70: MLOAD 00002c71: AND 00002c72: SWAP2 00002c73: ADD 00002c74: MSTORE 00002c75: JUMP 00002c76: JUMPDEST 00002c77: CALLVALUE 00002c78: PUSH2 0x0436 00002c7b: JUMPI 00002c7c: PUSH1 0x20 00002c7e: CALLDATASIZE 00002c7f: PUSH1 0x03 00002c81: NOT 00002c82: ADD 00002c83: SLT 00002c84: PUSH2 0x0436 00002c87: JUMPI 00002c88: PUSH1 0x04 00002c8a: CALLDATALOAD 00002c8b: PUSH0 00002c8c: PUSH1 0x20 00002c8e: PUSH1 0x40 00002c90: MLOAD 00002c91: PUSH2 0x2c99 00002c94: DUP2 00002c95: PUSH2 0x23f0 00002c98: JUMP 00002c99: JUMPDEST 00002c9a: DUP3 00002c9b: DUP2 00002c9c: MSTORE 00002c9d: ADD 00002c9e: MSTORE 00002c9f: PUSH2 0x2ca7 00002ca2: DUP2 00002ca3: PUSH2 0x3b56 00002ca6: JUMP 00002ca7: JUMPDEST 00002ca8: DUP1 00002ca9: PUSH0 00002caa: MSTORE 00002cab: PUSH1 0x0e 00002cad: PUSH1 0x20 00002caf: MSTORE 00002cb0: PUSH1 0xff 00002cb2: PUSH1 0x01 00002cb4: PUSH1 0x40 00002cb6: PUSH0 00002cb7: KECCAK256 00002cb8: ADD 00002cb9: SLOAD 00002cba: PUSH1 0xb0 00002cbc: SHR 00002cbd: AND 00002cbe: PUSH1 0x03 00002cc0: DUP2 00002cc1: LT 00002cc2: ISZERO 00002cc3: PUSH2 0x0872 00002cc6: JUMPI 00002cc7: PUSH2 0x133f 00002cca: JUMPI 00002ccb: PUSH2 0x2ce7 00002cce: PUSH2 0x2ce2 00002cd1: PUSH2 0x058d 00002cd4: SWAP3 00002cd5: PUSH0 00002cd6: MSTORE 00002cd7: PUSH1 0x10 00002cd9: PUSH1 0x20 00002cdb: MSTORE 00002cdc: PUSH1 0x40 00002cde: PUSH0 00002cdf: KECCAK256 00002ce0: SWAP1 00002ce1: JUMP 00002ce2: JUMPDEST 00002ce3: PUSH2 0x3afe 00002ce6: JUMP 00002ce7: JUMPDEST 00002ce8: PUSH1 0x40 00002cea: MLOAD 00002ceb: SWAP2 00002cec: DUP3 00002ced: SWAP2 00002cee: DUP3 00002cef: PUSH2 0x2c50 00002cf2: JUMP 00002cf3: JUMPDEST 00002cf4: CALLVALUE 00002cf5: PUSH2 0x0436 00002cf8: JUMPI 00002cf9: PUSH0 00002cfa: CALLDATASIZE 00002cfb: PUSH1 0x03 00002cfd: NOT 00002cfe: ADD 00002cff: SLT 00002d00: PUSH2 0x0436 00002d03: JUMPI 00002d04: PUSH1 0x20 00002d06: PUSH1 0x01 00002d08: PUSH1 0x01 00002d0a: PUSH1 0xa0 00002d0c: SHL 00002d0d: SUB 00002d0e: PUSH1 0x08 00002d10: SLOAD 00002d11: AND 00002d12: PUSH1 0x40 00002d14: MLOAD 00002d15: SWAP1 00002d16: DUP2 00002d17: MSTORE 00002d18: RETURN 00002d19: JUMPDEST 00002d1a: PUSH1 0x03 00002d1c: GT 00002d1d: ISZERO 00002d1e: PUSH2 0x0872 00002d21: JUMPI 00002d22: JUMP 00002d23: JUMPDEST 00002d24: CALLVALUE 00002d25: PUSH2 0x0436 00002d28: JUMPI 00002d29: PUSH1 0x20 00002d2b: CALLDATASIZE 00002d2c: PUSH1 0x03 00002d2e: NOT 00002d2f: ADD 00002d30: SLT 00002d31: PUSH2 0x0436 00002d34: JUMPI 00002d35: PUSH1 0x04 00002d37: CALLDATALOAD 00002d38: PUSH2 0x2d40 00002d3b: DUP2 00002d3c: PUSH2 0x3b56 00002d3f: JUMP 00002d40: JUMPDEST 00002d41: PUSH0 00002d42: MSTORE 00002d43: PUSH1 0x0e 00002d45: PUSH1 0x20 00002d47: MSTORE 00002d48: PUSH1 0xff 00002d4a: PUSH1 0x01 00002d4c: PUSH1 0x40 00002d4e: PUSH0 00002d4f: KECCAK256 00002d50: ADD 00002d51: SLOAD 00002d52: PUSH1 0xb0 00002d54: SHR 00002d55: AND 00002d56: PUSH1 0x40 00002d58: MLOAD 00002d59: PUSH1 0x03 00002d5b: DUP3 00002d5c: LT 00002d5d: ISZERO 00002d5e: PUSH2 0x0872 00002d61: JUMPI 00002d62: PUSH1 0x20 00002d64: SWAP2 00002d65: DUP2 00002d66: MSTORE 00002d67: RETURN 00002d68: JUMPDEST 00002d69: CALLVALUE 00002d6a: PUSH2 0x0436 00002d6d: JUMPI 00002d6e: PUSH1 0x40 00002d70: CALLDATASIZE 00002d71: PUSH1 0x03 00002d73: NOT 00002d74: ADD 00002d75: SLT 00002d76: PUSH2 0x0436 00002d79: JUMPI 00002d7a: PUSH1 0x20 00002d7c: PUSH1 0xff 00002d7e: PUSH2 0x2dc2 00002d81: PUSH1 0x04 00002d83: CALLDATALOAD 00002d84: PUSH2 0x2d8c 00002d87: DUP2 00002d88: PUSH2 0x0657 00002d8b: JUMP 00002d8c: JUMPDEST 00002d8d: PUSH1 0x01 00002d8f: PUSH1 0x01 00002d91: PUSH1 0xa0 00002d93: SHL 00002d94: SUB 00002d95: PUSH1 0x24 00002d97: CALLDATALOAD 00002d98: SWAP2 00002d99: PUSH2 0x2da1 00002d9c: DUP4 00002d9d: PUSH2 0x0657 00002da0: JUMP 00002da1: JUMPDEST 00002da2: AND 00002da3: PUSH0 00002da4: MSTORE 00002da5: PUSH1 0x06 00002da7: DUP5 00002da8: MSTORE 00002da9: PUSH1 0x40 00002dab: PUSH0 00002dac: KECCAK256 00002dad: SWAP1 00002dae: PUSH1 0x01 00002db0: PUSH1 0x01 00002db2: PUSH1 0xa0 00002db4: SHL 00002db5: SUB 00002db6: AND 00002db7: PUSH0 00002db8: MSTORE 00002db9: PUSH1 0x20 00002dbb: MSTORE 00002dbc: PUSH1 0x40 00002dbe: PUSH0 00002dbf: KECCAK256 00002dc0: SWAP1 00002dc1: JUMP 00002dc2: JUMPDEST 00002dc3: SLOAD 00002dc4: AND 00002dc5: PUSH1 0x40 00002dc7: MLOAD 00002dc8: SWAP1 00002dc9: ISZERO 00002dca: ISZERO 00002dcb: DUP2 00002dcc: MSTORE 00002dcd: RETURN 00002dce: JUMPDEST 00002dcf: PUSH1 0x40 00002dd1: CALLDATASIZE 00002dd2: PUSH1 0x03 00002dd4: NOT 00002dd5: ADD 00002dd6: SLT 00002dd7: PUSH2 0x0436 00002dda: JUMPI 00002ddb: PUSH1 0x24 00002ddd: CALLDATALOAD 00002dde: PUSH1 0x04 00002de0: CALLDATALOAD 00002de1: PUSH2 0x2de9 00002de4: DUP3 00002de5: PUSH2 0x0657 00002de8: JUMP 00002de9: JUMPDEST 00002dea: PUSH2 0x2df2 00002ded: DUP2 00002dee: PUSH2 0x509b 00002df1: JUMP 00002df2: JUMPDEST 00002df3: SWAP2 00002df4: PUSH2 0x2dfb 00002df7: PUSH2 0x4278 00002dfa: JUMP 00002dfb: JUMPDEST 00002dfc: PUSH2 0x2e04 00002dff: DUP3 00002e00: PUSH2 0x3b56 00002e03: JUMP 00002e04: JUMPDEST 00002e05: PUSH2 0x2e1b 00002e08: PUSH1 0x01 00002e0a: PUSH2 0x2679 00002e0d: DUP5 00002e0e: PUSH0 00002e0f: MSTORE 00002e10: PUSH1 0x0e 00002e12: PUSH1 0x20 00002e14: MSTORE 00002e15: PUSH1 0x40 00002e17: PUSH0 00002e18: KECCAK256 00002e19: SWAP1 00002e1a: JUMP 00002e1b: JUMPDEST 00002e1c: PUSH2 0x300f 00002e1f: JUMPI 00002e20: PUSH1 0x01 00002e22: PUSH1 0x01 00002e24: PUSH1 0xa0 00002e26: SHL 00002e27: SUB 00002e28: DUP2 00002e29: AND 00002e2a: SWAP1 00002e2b: DUP2 00002e2c: ISZERO 00002e2d: PUSH2 0x2ffb 00002e30: JUMPI 00002e31: PUSH2 0x2e45 00002e34: PUSH2 0x0c39 00002e37: DUP5 00002e38: PUSH0 00002e39: MSTORE 00002e3a: PUSH1 0x03 00002e3c: PUSH1 0x20 00002e3e: MSTORE 00002e3f: PUSH1 0x40 00002e41: PUSH0 00002e42: KECCAK256 00002e43: SWAP1 00002e44: JUMP 00002e45: JUMPDEST 00002e46: SWAP3 00002e47: PUSH1 0x01 00002e49: PUSH1 0x01 00002e4b: PUSH1 0xa0 00002e4d: SHL 00002e4e: SUB 00002e4f: DUP5 00002e50: AND 00002e51: DUP1 00002e52: SWAP4 00002e53: EQ 00002e54: ISZERO 00002e55: DUP1 00002e56: PUSH2 0x2fe7 00002e59: JUMPI 00002e5a: JUMPDEST 00002e5b: PUSH2 0x2fc5 00002e5e: JUMPI 00002e5f: PUSH1 0x01 00002e61: PUSH1 0x01 00002e63: PUSH1 0x80 00002e65: SHL 00002e66: SUB 00002e67: DUP6 00002e68: AND 00002e69: DUP1 00002e6a: ISZERO 00002e6b: PUSH2 0x2fb1 00002e6e: JUMPI 00002e6f: PUSH2 0x2e77 00002e72: DUP3 00002e73: PUSH2 0x509b 00002e76: JUMP 00002e77: JUMPDEST 00002e78: SWAP1 00002e79: PUSH1 0x01 00002e7b: PUSH1 0x01 00002e7d: PUSH1 0x80 00002e7f: SHL 00002e80: SUB 00002e81: DUP3 00002e82: AND 00002e83: LT 00002e84: PUSH2 0x2f8a 00002e87: JUMPI 00002e88: POP 00002e89: PUSH2 0x2e93 00002e8c: DUP6 00002e8d: DUP4 00002e8e: DUP4 00002e8f: PUSH2 0x5139 00002e92: JUMP 00002e93: JUMPDEST 00002e94: PUSH1 0x40 00002e96: MLOAD 00002e97: DUP2 00002e98: DUP2 00002e99: MSTORE 00002e9a: PUSH0 00002e9b: MLOAD 00002e9c: PUSH1 0x20 00002e9e: PUSH2 0x5a20 00002ea1: PUSH0 00002ea2: CODECOPY 00002ea3: PUSH0 00002ea4: MLOAD 00002ea5: SWAP1 00002ea6: PUSH0 00002ea7: MSTORE 00002ea8: SWAP1 00002ea9: PUSH1 0x20 00002eab: SWAP1 00002eac: LOG1 00002ead: DUP3 00002eae: CALLER 00002eaf: EQ 00002eb0: ISZERO 00002eb1: DUP1 00002eb2: PUSH2 0x2f66 00002eb5: JUMPI 00002eb6: JUMPDEST 00002eb7: PUSH2 0x2ecf 00002eba: JUMPI 00002ebb: JUMPDEST 00002ebc: PUSH1 0x40 00002ebe: MLOAD 00002ebf: PUSH1 0x01 00002ec1: PUSH1 0x01 00002ec3: PUSH1 0x80 00002ec5: SHL 00002ec6: SUB 00002ec7: DUP7 00002ec8: AND 00002ec9: DUP2 00002eca: MSTORE 00002ecb: PUSH1 0x20 00002ecd: SWAP1 00002ece: RETURN 00002ecf: JUMPDEST 00002ed0: PUSH1 0x40 00002ed2: MLOAD 00002ed3: PUSH4 0x92b9102b 00002ed8: PUSH1 0xe0 00002eda: SHL 00002edb: DUP2 00002edc: MSTORE 00002edd: PUSH1 0x04 00002edf: DUP2 00002ee0: ADD 00002ee1: SWAP2 00002ee2: SWAP1 00002ee3: SWAP2 00002ee4: MSTORE 00002ee5: CALLER 00002ee6: PUSH1 0x24 00002ee8: DUP3 00002ee9: ADD 00002eea: MSTORE 00002eeb: PUSH1 0x01 00002eed: PUSH1 0x01 00002eef: PUSH1 0xa0 00002ef1: SHL 00002ef2: SUB 00002ef3: SWAP2 00002ef4: SWAP1 00002ef5: SWAP2 00002ef6: AND 00002ef7: PUSH1 0x44 00002ef9: DUP3 00002efa: ADD 00002efb: MSTORE 00002efc: PUSH1 0x01 00002efe: PUSH1 0x01 00002f00: PUSH1 0x80 00002f02: SHL 00002f03: SUB 00002f04: DUP5 00002f05: AND 00002f06: PUSH1 0x64 00002f08: DUP3 00002f09: ADD 00002f0a: MSTORE 00002f0b: SWAP1 00002f0c: PUSH1 0x20 00002f0e: SWAP1 00002f0f: DUP3 00002f10: SWAP1 00002f11: PUSH1 0x84 00002f13: SWAP1 00002f14: DUP3 00002f15: SWAP1 00002f16: PUSH0 00002f17: SWAP1 00002f18: GAS 00002f19: CALL 00002f1a: SWAP1 00002f1b: DUP2 00002f1c: ISZERO 00002f1d: PUSH2 0x0bae 00002f20: JUMPI 00002f21: PUSH0 00002f22: SWAP2 00002f23: PUSH2 0x2f47 00002f26: JUMPI 00002f27: JUMPDEST 00002f28: POP 00002f29: PUSH1 0x01 00002f2b: PUSH1 0x01 00002f2d: PUSH1 0xe0 00002f2f: SHL 00002f30: SUB 00002f31: NOT 00002f32: AND 00002f33: PUSH4 0x6d46efd5 00002f38: PUSH1 0xe0 00002f3a: SHL 00002f3b: ADD 00002f3c: PUSH2 0x2781 00002f3f: JUMPI 00002f40: DUP1 00002f41: DUP1 00002f42: DUP1 00002f43: PUSH2 0x2ebb 00002f46: JUMP 00002f47: JUMPDEST 00002f48: PUSH2 0x2f60 00002f4b: SWAP2 00002f4c: POP 00002f4d: PUSH1 0x20 00002f4f: RETURNDATASIZE 00002f50: PUSH1 0x20 00002f52: GT 00002f53: PUSH2 0x1cd2 00002f56: JUMPI 00002f57: PUSH2 0x1cc4 00002f5a: DUP2 00002f5b: DUP4 00002f5c: PUSH2 0x240b 00002f5f: JUMP 00002f60: JUMPDEST 00002f61: PUSH0 00002f62: PUSH2 0x2f27 00002f65: JUMP 00002f66: JUMPDEST 00002f67: POP 00002f68: PUSH2 0x2f85 00002f6b: PUSH2 0x27da 00002f6e: DUP6 00002f6f: PUSH1 0x01 00002f71: PUSH1 0x01 00002f73: PUSH1 0xa0 00002f75: SHL 00002f76: SUB 00002f77: AND 00002f78: PUSH0 00002f79: MSTORE 00002f7a: PUSH1 0x0b 00002f7c: PUSH1 0x20 00002f7e: MSTORE 00002f7f: PUSH1 0x40 00002f81: PUSH0 00002f82: KECCAK256 00002f83: SWAP1 00002f84: JUMP 00002f85: JUMPDEST 00002f86: PUSH2 0x2eb6 00002f89: JUMP 00002f8a: JUMPDEST 00002f8b: PUSH4 0x066920d7 00002f90: PUSH1 0xe0 00002f92: SHL 00002f93: PUSH0 00002f94: MSTORE 00002f95: PUSH1 0x04 00002f97: SWAP2 00002f98: SWAP1 00002f99: SWAP2 00002f9a: MSTORE 00002f9b: PUSH1 0x01 00002f9d: PUSH1 0x01 00002f9f: PUSH1 0x80 00002fa1: SHL 00002fa2: SUB 00002fa3: DUP1 00002fa4: DUP7 00002fa5: AND 00002fa6: PUSH1 0x24 00002fa8: MSTORE 00002fa9: AND 00002faa: PUSH1 0x44 00002fac: MSTORE 00002fad: PUSH1 0x64 00002faf: PUSH0 00002fb0: REVERT 00002fb1: JUMPDEST 00002fb2: PUSH4 0xb2ae7633 00002fb7: PUSH1 0xe0 00002fb9: SHL 00002fba: PUSH0 00002fbb: MSTORE 00002fbc: PUSH1 0x04 00002fbe: DUP3 00002fbf: SWAP1 00002fc0: MSTORE 00002fc1: PUSH1 0x24 00002fc3: PUSH0 00002fc4: REVERT 00002fc5: JUMPDEST 00002fc6: PUSH4 0x350b3203 00002fcb: PUSH1 0xe1 00002fcd: SHL 00002fce: PUSH0 00002fcf: MSTORE 00002fd0: PUSH1 0x04 00002fd2: MSTORE 00002fd3: CALLER 00002fd4: PUSH1 0x24 00002fd6: MSTORE 00002fd7: PUSH1 0x01 00002fd9: PUSH1 0x01 00002fdb: PUSH1 0xa0 00002fdd: SHL 00002fde: SUB 00002fdf: AND 00002fe0: PUSH1 0x44 00002fe2: MSTORE 00002fe3: PUSH1 0x64 00002fe5: PUSH0 00002fe6: REVERT 00002fe7: JUMPDEST 00002fe8: POP 00002fe9: PUSH2 0x2ff6 00002fec: PUSH2 0x0d71 00002fef: DUP3 00002ff0: CALLER 00002ff1: DUP8 00002ff2: PUSH2 0x54b0 00002ff5: JUMP 00002ff6: JUMPDEST 00002ff7: PUSH2 0x2e5a 00002ffa: JUMP 00002ffb: JUMPDEST 00002ffc: PUSH4 0x2da33e5b 00003001: PUSH1 0xe0 00003003: SHL 00003004: PUSH0 00003005: MSTORE 00003006: PUSH1 0x04 00003008: DUP4 00003009: SWAP1 0000300a: MSTORE 0000300b: PUSH1 0x24 0000300d: PUSH0 0000300e: REVERT 0000300f: JUMPDEST 00003010: PUSH4 0x15efa0f3 00003015: PUSH1 0xe1 00003017: SHL 00003018: PUSH0 00003019: MSTORE 0000301a: PUSH1 0x04 0000301c: DUP3 0000301d: SWAP1 0000301e: MSTORE 0000301f: PUSH1 0x24 00003021: PUSH0 00003022: REVERT 00003023: JUMPDEST 00003024: CALLVALUE 00003025: PUSH2 0x0436 00003028: JUMPI 00003029: PUSH1 0x20 0000302b: CALLDATASIZE 0000302c: PUSH1 0x03 0000302e: NOT 0000302f: ADD 00003030: SLT 00003031: PUSH2 0x0436 00003034: JUMPI 00003035: PUSH1 0x01 00003037: PUSH1 0x01 00003039: PUSH1 0xa0 0000303b: SHL 0000303c: SUB 0000303d: PUSH1 0x04 0000303f: CALLDATALOAD 00003040: PUSH2 0x3048 00003043: DUP2 00003044: PUSH2 0x0657 00003047: JUMP 00003048: JUMPDEST 00003049: AND 0000304a: PUSH0 0000304b: MSTORE 0000304c: PUSH1 0x07 0000304e: PUSH1 0x20 00003050: MSTORE 00003051: PUSH1 0x20 00003053: PUSH1 0x40 00003055: PUSH0 00003056: KECCAK256 00003057: SLOAD 00003058: PUSH1 0x40 0000305a: MLOAD 0000305b: SWAP1 0000305c: DUP2 0000305d: MSTORE 0000305e: RETURN 0000305f: JUMPDEST 00003060: CALLVALUE 00003061: PUSH2 0x0436 00003064: JUMPI 00003065: PUSH1 0x20 00003067: CALLDATASIZE 00003068: PUSH1 0x03 0000306a: NOT 0000306b: ADD 0000306c: SLT 0000306d: PUSH2 0x0436 00003070: JUMPI 00003071: PUSH1 0x04 00003073: CALLDATALOAD 00003074: PUSH2 0x307c 00003077: DUP2 00003078: PUSH2 0x3b56 0000307b: JUMP 0000307c: JUMPDEST 0000307d: PUSH0 0000307e: MSTORE 0000307f: PUSH1 0x0e 00003081: PUSH1 0x20 00003083: MSTORE 00003084: PUSH1 0x20 00003086: PUSH1 0x40 00003088: PUSH0 00003089: KECCAK256 0000308a: SLOAD 0000308b: PUSH1 0xf8 0000308d: SHR 0000308e: PUSH1 0x40 00003090: MLOAD 00003091: SWAP1 00003092: ISZERO 00003093: ISZERO 00003094: DUP2 00003095: MSTORE 00003096: RETURN 00003097: JUMPDEST 00003098: PUSH1 0x01 0000309a: PUSH1 0x01 0000309c: PUSH1 0x80 0000309e: SHL 0000309f: SUB 000030a0: DUP2 000030a1: AND 000030a2: SUB 000030a3: PUSH2 0x0436 000030a6: JUMPI 000030a7: JUMP 000030a8: JUMPDEST 000030a9: PUSH1 0x60 000030ab: CALLDATASIZE 000030ac: PUSH1 0x03 000030ae: NOT 000030af: ADD 000030b0: SLT 000030b1: PUSH2 0x0436 000030b4: JUMPI 000030b5: PUSH1 0x04 000030b7: CALLDATALOAD 000030b8: PUSH1 0x24 000030ba: CALLDATALOAD 000030bb: PUSH2 0x30c3 000030be: DUP2 000030bf: PUSH2 0x0657 000030c2: JUMP 000030c3: JUMPDEST 000030c4: PUSH1 0x44 000030c6: CALLDATALOAD 000030c7: SWAP2 000030c8: PUSH2 0x30d0 000030cb: DUP4 000030cc: PUSH2 0x3097 000030cf: JUMP 000030d0: JUMPDEST 000030d1: PUSH2 0x30d8 000030d4: PUSH2 0x4278 000030d7: JUMP 000030d8: JUMPDEST 000030d9: PUSH2 0x30e1 000030dc: DUP2 000030dd: PUSH2 0x3b56 000030e0: JUMP 000030e1: JUMPDEST 000030e2: PUSH2 0x30f8 000030e5: PUSH1 0x01 000030e7: PUSH2 0x2679 000030ea: DUP4 000030eb: PUSH0 000030ec: MSTORE 000030ed: PUSH1 0x0e 000030ef: PUSH1 0x20 000030f1: MSTORE 000030f2: PUSH1 0x40 000030f4: PUSH0 000030f5: KECCAK256 000030f6: SWAP1 000030f7: JUMP 000030f8: JUMPDEST 000030f9: PUSH2 0x32d4 000030fc: JUMPI 000030fd: PUSH1 0x01 000030ff: PUSH1 0x01 00003101: PUSH1 0xa0 00003103: SHL 00003104: SUB 00003105: DUP3 00003106: AND 00003107: SWAP3 00003108: DUP4 00003109: ISZERO 0000310a: PUSH2 0x32c0 0000310d: JUMPI 0000310e: PUSH2 0x3122 00003111: PUSH2 0x0c39 00003114: DUP4 00003115: PUSH0 00003116: MSTORE 00003117: PUSH1 0x03 00003119: PUSH1 0x20 0000311b: MSTORE 0000311c: PUSH1 0x40 0000311e: PUSH0 0000311f: KECCAK256 00003120: SWAP1 00003121: JUMP 00003122: JUMPDEST 00003123: SWAP4 00003124: PUSH1 0x01 00003126: PUSH1 0x01 00003128: PUSH1 0xa0 0000312a: SHL 0000312b: SUB 0000312c: DUP6 0000312d: AND 0000312e: DUP1 0000312f: SWAP2 00003130: EQ 00003131: ISZERO 00003132: DUP1 00003133: PUSH2 0x32ac 00003136: JUMPI 00003137: JUMPDEST 00003138: PUSH2 0x3287 0000313b: JUMPI 0000313c: PUSH1 0x01 0000313e: PUSH1 0x01 00003140: PUSH1 0x80 00003142: SHL 00003143: SUB 00003144: DUP3 00003145: AND 00003146: DUP1 00003147: ISZERO 00003148: PUSH2 0x3273 0000314b: JUMPI 0000314c: PUSH2 0x3154 0000314f: DUP5 00003150: PUSH2 0x509b 00003153: JUMP 00003154: JUMPDEST 00003155: SWAP1 00003156: PUSH1 0x01 00003158: PUSH1 0x01 0000315a: PUSH1 0x80 0000315c: SHL 0000315d: SUB 0000315e: DUP3 0000315f: AND 00003160: LT 00003161: PUSH2 0x324d 00003164: JUMPI 00003165: POP 00003166: PUSH2 0x3170 00003169: DUP3 0000316a: DUP6 0000316b: DUP6 0000316c: PUSH2 0x5139 0000316f: JUMP 00003170: JUMPDEST 00003171: PUSH1 0x40 00003173: MLOAD 00003174: DUP4 00003175: DUP2 00003176: MSTORE 00003177: PUSH0 00003178: MLOAD 00003179: PUSH1 0x20 0000317b: PUSH2 0x5a20 0000317e: PUSH0 0000317f: CODECOPY 00003180: PUSH0 00003181: MLOAD 00003182: SWAP1 00003183: PUSH0 00003184: MSTORE 00003185: SWAP1 00003186: PUSH1 0x20 00003188: SWAP1 00003189: LOG1 0000318a: DUP1 0000318b: CALLER 0000318c: EQ 0000318d: ISZERO 0000318e: DUP1 0000318f: PUSH2 0x3229 00003192: JUMPI 00003193: JUMPDEST 00003194: PUSH2 0x3199 00003197: JUMPI 00003198: STOP 00003199: JUMPDEST 0000319a: PUSH1 0x40 0000319c: MLOAD 0000319d: PUSH4 0x92b9102b 000031a2: PUSH1 0xe0 000031a4: SHL 000031a5: DUP2 000031a6: MSTORE 000031a7: PUSH1 0x04 000031a9: DUP2 000031aa: ADD 000031ab: SWAP4 000031ac: SWAP1 000031ad: SWAP4 000031ae: MSTORE 000031af: CALLER 000031b0: PUSH1 0x24 000031b2: DUP5 000031b3: ADD 000031b4: MSTORE 000031b5: PUSH1 0x01 000031b7: PUSH1 0x01 000031b9: PUSH1 0xa0 000031bb: SHL 000031bc: SUB 000031bd: SWAP4 000031be: SWAP1 000031bf: SWAP4 000031c0: AND 000031c1: PUSH1 0x44 000031c3: DUP4 000031c4: ADD 000031c5: MSTORE 000031c6: PUSH1 0x01 000031c8: PUSH1 0x01 000031ca: PUSH1 0x80 000031cc: SHL 000031cd: SUB 000031ce: AND 000031cf: PUSH1 0x64 000031d1: DUP3 000031d2: ADD 000031d3: MSTORE 000031d4: SWAP1 000031d5: PUSH1 0x20 000031d7: SWAP1 000031d8: DUP3 000031d9: SWAP1 000031da: PUSH1 0x84 000031dc: SWAP1 000031dd: DUP3 000031de: SWAP1 000031df: PUSH0 000031e0: SWAP1 000031e1: GAS 000031e2: CALL 000031e3: SWAP1 000031e4: DUP2 000031e5: ISZERO 000031e6: PUSH2 0x0bae 000031e9: JUMPI 000031ea: PUSH0 000031eb: SWAP2 000031ec: PUSH2 0x320a 000031ef: JUMPI 000031f0: JUMPDEST 000031f1: POP 000031f2: PUSH1 0x01 000031f4: PUSH1 0x01 000031f6: PUSH1 0xe0 000031f8: SHL 000031f9: SUB 000031fa: NOT 000031fb: AND 000031fc: PUSH4 0x6d46efd5 00003201: PUSH1 0xe0 00003203: SHL 00003204: ADD 00003205: PUSH2 0x2781 00003208: JUMPI 00003209: STOP 0000320a: JUMPDEST 0000320b: PUSH2 0x3223 0000320e: SWAP2 0000320f: POP 00003210: PUSH1 0x20 00003212: RETURNDATASIZE 00003213: PUSH1 0x20 00003215: GT 00003216: PUSH2 0x1cd2 00003219: JUMPI 0000321a: PUSH2 0x1cc4 0000321d: DUP2 0000321e: DUP4 0000321f: PUSH2 0x240b 00003222: JUMP 00003223: JUMPDEST 00003224: PUSH0 00003225: PUSH2 0x31f0 00003228: JUMP 00003229: JUMPDEST 0000322a: POP 0000322b: PUSH2 0x3248 0000322e: PUSH2 0x27da 00003231: DUP7 00003232: PUSH1 0x01 00003234: PUSH1 0x01 00003236: PUSH1 0xa0 00003238: SHL 00003239: SUB 0000323a: AND 0000323b: PUSH0 0000323c: MSTORE 0000323d: PUSH1 0x0b 0000323f: PUSH1 0x20 00003241: MSTORE 00003242: PUSH1 0x40 00003244: PUSH0 00003245: KECCAK256 00003246: SWAP1 00003247: JUMP 00003248: JUMPDEST 00003249: PUSH2 0x3193 0000324c: JUMP 0000324d: JUMPDEST 0000324e: PUSH4 0x066920d7 00003253: PUSH1 0xe0 00003255: SHL 00003256: PUSH0 00003257: MSTORE 00003258: PUSH1 0x04 0000325a: DUP5 0000325b: SWAP1 0000325c: MSTORE 0000325d: PUSH1 0x01 0000325f: PUSH1 0x01 00003261: PUSH1 0x80 00003263: SHL 00003264: SUB 00003265: DUP1 00003266: DUP5 00003267: AND 00003268: PUSH1 0x24 0000326a: MSTORE 0000326b: AND 0000326c: PUSH1 0x44 0000326e: MSTORE 0000326f: PUSH1 0x64 00003271: PUSH0 00003272: REVERT 00003273: JUMPDEST 00003274: PUSH4 0xb2ae7633 00003279: PUSH1 0xe0 0000327b: SHL 0000327c: PUSH0 0000327d: MSTORE 0000327e: PUSH1 0x04 00003280: DUP5 00003281: SWAP1 00003282: MSTORE 00003283: PUSH1 0x24 00003285: PUSH0 00003286: REVERT 00003287: JUMPDEST 00003288: PUSH4 0x350b3203 0000328d: PUSH1 0xe1 0000328f: SHL 00003290: PUSH0 00003291: MSTORE 00003292: PUSH1 0x04 00003294: DUP4 00003295: SWAP1 00003296: MSTORE 00003297: CALLER 00003298: PUSH1 0x24 0000329a: MSTORE 0000329b: PUSH1 0x01 0000329d: PUSH1 0x01 0000329f: PUSH1 0xa0 000032a1: SHL 000032a2: SUB 000032a3: DUP5 000032a4: AND 000032a5: PUSH1 0x44 000032a7: MSTORE 000032a8: PUSH1 0x64 000032aa: PUSH0 000032ab: REVERT 000032ac: JUMPDEST 000032ad: POP 000032ae: PUSH2 0x32bb 000032b1: PUSH2 0x0d71 000032b4: DUP5 000032b5: CALLER 000032b6: DUP9 000032b7: PUSH2 0x54b0 000032ba: JUMP 000032bb: JUMPDEST 000032bc: PUSH2 0x3137 000032bf: JUMP 000032c0: JUMPDEST 000032c1: PUSH4 0x2da33e5b 000032c6: PUSH1 0xe0 000032c8: SHL 000032c9: PUSH0 000032ca: MSTORE 000032cb: PUSH1 0x04 000032cd: DUP3 000032ce: SWAP1 000032cf: MSTORE 000032d0: PUSH1 0x24 000032d2: PUSH0 000032d3: REVERT 000032d4: JUMPDEST 000032d5: PUSH4 0x15efa0f3 000032da: PUSH1 0xe1 000032dc: SHL 000032dd: PUSH0 000032de: MSTORE 000032df: PUSH1 0x04 000032e1: MSTORE 000032e2: PUSH1 0x24 000032e4: PUSH0 000032e5: REVERT 000032e6: JUMPDEST 000032e7: PUSH4 0x4e487b71 000032ec: PUSH1 0xe0 000032ee: SHL 000032ef: PUSH0 000032f0: MSTORE 000032f1: PUSH1 0x11 000032f3: PUSH1 0x04 000032f5: MSTORE 000032f6: PUSH1 0x24 000032f8: PUSH0 000032f9: REVERT 000032fa: JUMPDEST 000032fb: SWAP1 000032fc: PUSH1 0x01 000032fe: PUSH1 0x01 00003300: PUSH1 0x80 00003302: SHL 00003303: SUB 00003304: DUP1 00003305: SWAP2 00003306: AND 00003307: SWAP2 00003308: AND 00003309: SUB 0000330a: SWAP1 0000330b: PUSH1 0x01 0000330d: PUSH1 0x01 0000330f: PUSH1 0x80 00003311: SHL 00003312: SUB 00003313: DUP3 00003314: GT 00003315: PUSH2 0x1634 00003318: JUMPI 00003319: JUMP 0000331a: JUMPDEST 0000331b: PUSH1 0x01 0000331d: PUSH1 0x01 0000331f: PUSH1 0x40 00003321: SHL 00003322: SUB 00003323: DUP2 00003324: GT 00003325: PUSH2 0x23eb 00003328: JUMPI 00003329: PUSH1 0x05 0000332b: SHL 0000332c: PUSH1 0x20 0000332e: ADD 0000332f: SWAP1 00003330: JUMP 00003331: JUMPDEST 00003332: PUSH4 0x4e487b71 00003337: PUSH1 0xe0 00003339: SHL 0000333a: PUSH0 0000333b: MSTORE 0000333c: PUSH1 0x32 0000333e: PUSH1 0x04 00003340: MSTORE 00003341: PUSH1 0x24 00003343: PUSH0 00003344: REVERT 00003345: JUMPDEST 00003346: SWAP1 00003347: CALLDATALOAD 00003348: SWAP1 00003349: PUSH1 0x1e 0000334b: NOT 0000334c: DUP2 0000334d: CALLDATASIZE 0000334e: SUB 0000334f: ADD 00003350: DUP3 00003351: SLT 00003352: ISZERO 00003353: PUSH2 0x0436 00003356: JUMPI 00003357: ADD 00003358: DUP1 00003359: CALLDATALOAD 0000335a: SWAP1 0000335b: PUSH1 0x01 0000335d: PUSH1 0x01 0000335f: PUSH1 0x40 00003361: SHL 00003362: SUB 00003363: DUP3 00003364: GT 00003365: PUSH2 0x0436 00003368: JUMPI 00003369: PUSH1 0x20 0000336b: ADD 0000336c: SWAP2 0000336d: DUP2 0000336e: CALLDATASIZE 0000336f: SUB 00003370: DUP4 00003371: SGT 00003372: PUSH2 0x0436 00003375: JUMPI 00003376: JUMP 00003377: JUMPDEST 00003378: SWAP1 00003379: DUP3 0000337a: LT 0000337b: ISZERO 0000337c: PUSH2 0x338e 0000337f: JUMPI 00003380: PUSH2 0x08d1 00003383: SWAP2 00003384: PUSH1 0x05 00003386: SHL 00003387: DUP2 00003388: ADD 00003389: SWAP1 0000338a: PUSH2 0x3345 0000338d: JUMP 0000338e: JUMPDEST 0000338f: PUSH2 0x3331 00003392: JUMP 00003393: JUMPDEST 00003394: SWAP1 00003395: DUP1 00003396: SWAP3 00003397: SWAP2 00003398: DUP3 00003399: CALLDATACOPY 0000339a: ADD 0000339b: PUSH0 0000339c: DUP2 0000339d: MSTORE 0000339e: SWAP1 0000339f: JUMP 000033a0: JUMPDEST 000033a1: RETURNDATASIZE 000033a2: ISZERO 000033a3: PUSH2 0x33ca 000033a6: JUMPI 000033a7: RETURNDATASIZE 000033a8: SWAP1 000033a9: PUSH2 0x33b1 000033ac: DUP3 000033ad: PUSH2 0x246c 000033b0: JUMP 000033b1: JUMPDEST 000033b2: SWAP2 000033b3: PUSH2 0x33bf 000033b6: PUSH1 0x40 000033b8: MLOAD 000033b9: SWAP4 000033ba: DUP5 000033bb: PUSH2 0x240b 000033be: JUMP 000033bf: JUMPDEST 000033c0: DUP3 000033c1: MSTORE 000033c2: RETURNDATASIZE 000033c3: PUSH0 000033c4: PUSH1 0x20 000033c6: DUP5 000033c7: ADD 000033c8: RETURNDATACOPY 000033c9: JUMP 000033ca: JUMPDEST 000033cb: PUSH1 0x60 000033cd: SWAP1 000033ce: JUMP 000033cf: JUMPDEST 000033d0: DUP1 000033d1: MLOAD 000033d2: DUP3 000033d3: LT 000033d4: ISZERO 000033d5: PUSH2 0x338e 000033d8: JUMPI 000033d9: PUSH1 0x20 000033db: SWAP2 000033dc: PUSH1 0x05 000033de: SHL 000033df: ADD 000033e0: ADD 000033e1: SWAP1 000033e2: JUMP 000033e3: JUMPDEST 000033e4: SWAP2 000033e5: SWAP1 000033e6: PUSH1 0x01 000033e8: PUSH1 0x01 000033ea: PUSH1 0xa0 000033ec: SHL 000033ed: SUB 000033ee: DUP2 000033ef: AND 000033f0: ISZERO 000033f1: PUSH2 0x34cf 000033f4: JUMPI 000033f5: DUP2 000033f6: PUSH0 000033f7: MSTORE 000033f8: PUSH1 0x03 000033fa: PUSH1 0x20 000033fc: MSTORE 000033fd: PUSH1 0x01 000033ff: PUSH1 0x01 00003401: PUSH1 0xa0 00003403: SHL 00003404: SUB 00003405: PUSH1 0x40 00003407: PUSH0 00003408: KECCAK256 00003409: SLOAD 0000340a: AND 0000340b: ISZERO 0000340c: ISZERO 0000340d: DUP1 0000340e: PUSH2 0x34c7 00003411: JUMPI 00003412: JUMPDEST 00003413: DUP1 00003414: PUSH2 0x349c 00003417: JUMPI 00003418: JUMPDEST 00003419: PUSH2 0x3488 0000341c: JUMPI 0000341d: PUSH1 0x40 0000341f: MLOAD 00003420: DUP3 00003421: DUP2 00003422: MSTORE 00003423: PUSH2 0x3442 00003426: SWAP2 00003427: SWAP1 00003428: PUSH0 00003429: MLOAD 0000342a: PUSH1 0x20 0000342c: PUSH2 0x5a20 0000342f: PUSH0 00003430: CODECOPY 00003431: PUSH0 00003432: MLOAD 00003433: SWAP1 00003434: PUSH0 00003435: MSTORE 00003436: SWAP1 00003437: PUSH1 0x20 00003439: SWAP1 0000343a: LOG1 0000343b: DUP3 0000343c: CALLER 0000343d: SWAP2 0000343e: PUSH2 0x5384 00003441: JUMP 00003442: JUMPDEST 00003443: SWAP2 00003444: PUSH1 0x01 00003446: PUSH1 0x01 00003448: PUSH1 0xa0 0000344a: SHL 0000344b: SUB 0000344c: DUP2 0000344d: AND 0000344e: PUSH1 0x01 00003450: PUSH1 0x01 00003452: PUSH1 0xa0 00003454: SHL 00003455: SUB 00003456: DUP5 00003457: AND 00003458: SUB 00003459: PUSH2 0x3461 0000345c: JUMPI 0000345d: POP 0000345e: POP 0000345f: POP 00003460: JUMP 00003461: JUMPDEST 00003462: PUSH4 0x64283d7b 00003467: PUSH1 0xe0 00003469: SHL 0000346a: PUSH0 0000346b: MSTORE 0000346c: PUSH1 0x01 0000346e: PUSH1 0x01 00003470: PUSH1 0xa0 00003472: SHL 00003473: SUB 00003474: SWAP1 00003475: DUP2 00003476: AND 00003477: PUSH1 0x04 00003479: MSTORE 0000347a: PUSH1 0x24 0000347c: SWAP2 0000347d: SWAP1 0000347e: SWAP2 0000347f: MSTORE 00003480: AND 00003481: PUSH1 0x44 00003483: MSTORE 00003484: PUSH1 0x64 00003486: PUSH0 00003487: REVERT 00003488: JUMPDEST 00003489: PUSH4 0x4274c8e1 0000348e: PUSH1 0xe1 00003490: SHL 00003491: PUSH0 00003492: MSTORE 00003493: PUSH1 0x04 00003495: DUP3 00003496: SWAP1 00003497: MSTORE 00003498: PUSH1 0x24 0000349a: PUSH0 0000349b: REVERT 0000349c: JUMPDEST 0000349d: POP 0000349e: PUSH2 0x34c2 000034a1: PUSH2 0x0d71 000034a4: PUSH1 0x01 000034a6: PUSH2 0x34b7 000034a9: DUP6 000034aa: PUSH0 000034ab: MSTORE 000034ac: PUSH1 0x0e 000034ae: PUSH1 0x20 000034b0: MSTORE 000034b1: PUSH1 0x40 000034b3: PUSH0 000034b4: KECCAK256 000034b5: SWAP1 000034b6: JUMP 000034b7: JUMPDEST 000034b8: ADD 000034b9: SLOAD 000034ba: PUSH1 0xa8 000034bc: SHR 000034bd: PUSH1 0xff 000034bf: AND 000034c0: SWAP1 000034c1: JUMP 000034c2: JUMPDEST 000034c3: PUSH2 0x3418 000034c6: JUMP 000034c7: JUMPDEST 000034c8: POP 000034c9: PUSH1 0x01 000034cb: PUSH2 0x3412 000034ce: JUMP 000034cf: JUMPDEST 000034d0: PUSH4 0x32505749 000034d5: PUSH1 0xe1 000034d7: SHL 000034d8: PUSH0 000034d9: MSTORE 000034da: PUSH0 000034db: PUSH1 0x04 000034dd: MSTORE 000034de: PUSH1 0x24 000034e0: PUSH0 000034e1: REVERT 000034e2: JUMPDEST 000034e3: SWAP1 000034e4: DUP2 000034e5: PUSH1 0x20 000034e7: SWAP2 000034e8: SUB 000034e9: SLT 000034ea: PUSH2 0x0436 000034ed: JUMPI 000034ee: MLOAD 000034ef: PUSH2 0x0524 000034f2: DUP2 000034f3: PUSH2 0x1f82 000034f6: JUMP 000034f7: JUMPDEST 000034f8: PUSH1 0x40 000034fa: MLOAD 000034fb: RETURNDATASIZE 000034fc: PUSH0 000034fd: DUP3 000034fe: RETURNDATACOPY 000034ff: RETURNDATASIZE 00003500: SWAP1 00003501: REVERT 00003502: JUMPDEST 00003503: SWAP2 00003504: SWAP1 00003505: DUP2 00003506: LT 00003507: ISZERO 00003508: PUSH2 0x338e 0000350b: JUMPI 0000350c: PUSH1 0x05 0000350e: SHL 0000350f: ADD 00003510: SWAP1 00003511: JUMP 00003512: JUMPDEST 00003513: CALLDATALOAD 00003514: PUSH2 0x0524 00003517: DUP2 00003518: PUSH2 0x3097 0000351b: JUMP 0000351c: JUMPDEST 0000351d: SWAP1 0000351e: DUP2 0000351f: PUSH1 0x20 00003521: SWAP2 00003522: SUB 00003523: SLT 00003524: PUSH2 0x0436 00003527: JUMPI 00003528: MLOAD 00003529: SWAP1 0000352a: JUMP 0000352b: JUMPDEST 0000352c: PUSH0 0000352d: NOT 0000352e: DUP2 0000352f: ADD 00003530: SWAP2 00003531: SWAP1 00003532: DUP3 00003533: GT 00003534: PUSH2 0x1634 00003537: JUMPI 00003538: JUMP 00003539: JUMPDEST 0000353a: SWAP2 0000353b: SWAP1 0000353c: DUP3 0000353d: SUB 0000353e: SWAP2 0000353f: DUP3 00003540: GT 00003541: PUSH2 0x1634 00003544: JUMPI 00003545: JUMP 00003546: JUMPDEST 00003547: CALLDATALOAD 00003548: PUSH2 0x0524 0000354b: DUP2 0000354c: PUSH2 0x1f82 0000354f: JUMP 00003550: JUMPDEST 00003551: CALLDATALOAD 00003552: PUSH2 0x0524 00003555: DUP2 00003556: PUSH2 0x0657 00003559: JUMP 0000355a: JUMPDEST 0000355b: SWAP2 0000355c: SWAP1 0000355d: DUP3 0000355e: PUSH1 0x40 00003560: SWAP2 00003561: SUB 00003562: SLT 00003563: PUSH2 0x0436 00003566: JUMPI 00003567: PUSH1 0x40 00003569: MLOAD 0000356a: PUSH2 0x3572 0000356d: DUP2 0000356e: PUSH2 0x23f0 00003571: JUMP 00003572: JUMPDEST 00003573: PUSH1 0x20 00003575: DUP1 00003576: DUP3 00003577: SWAP5 00003578: DUP1 00003579: CALLDATALOAD 0000357a: PUSH2 0x3582 0000357d: DUP2 0000357e: PUSH2 0x11c6 00003581: JUMP 00003582: JUMPDEST 00003583: DUP5 00003584: MSTORE 00003585: ADD 00003586: CALLDATALOAD 00003587: SWAP2 00003588: PUSH2 0x3590 0000358b: DUP4 0000358c: PUSH2 0x11c6 0000358f: JUMP 00003590: JUMPDEST 00003591: ADD 00003592: MSTORE 00003593: JUMP 00003594: JUMPDEST 00003595: SWAP2 00003596: SWAP1 00003597: DUP3 00003598: PUSH1 0x40 0000359a: SWAP2 0000359b: SUB 0000359c: SLT 0000359d: PUSH2 0x0436 000035a0: JUMPI 000035a1: PUSH1 0x40 000035a3: MLOAD 000035a4: PUSH2 0x35ac 000035a7: DUP2 000035a8: PUSH2 0x23f0 000035ab: JUMP 000035ac: JUMPDEST 000035ad: PUSH1 0x20 000035af: DUP1 000035b0: DUP3 000035b1: SWAP5 000035b2: DUP1 000035b3: CALLDATALOAD 000035b4: PUSH2 0x35bc 000035b7: DUP2 000035b8: PUSH2 0x3097 000035bb: JUMP 000035bc: JUMPDEST 000035bd: DUP5 000035be: MSTORE 000035bf: ADD 000035c0: CALLDATALOAD 000035c1: SWAP2 000035c2: PUSH2 0x3590 000035c5: DUP4 000035c6: PUSH2 0x3097 000035c9: JUMP 000035ca: JUMPDEST 000035cb: SWAP1 000035cc: PUSH1 0x44 000035ce: SWAP2 000035cf: PUSH1 0x03 000035d1: DUP2 000035d2: LT 000035d3: ISZERO 000035d4: PUSH2 0x0872 000035d7: JUMPI 000035d8: PUSH1 0x04 000035da: MSTORE 000035db: PUSH0 000035dc: PUSH1 0x24 000035de: MSTORE 000035df: JUMP 000035e0: JUMPDEST 000035e1: SWAP1 000035e2: PUSH1 0x44 000035e4: SWAP2 000035e5: PUSH1 0x03 000035e7: DUP2 000035e8: LT 000035e9: ISZERO 000035ea: PUSH2 0x0872 000035ed: JUMPI 000035ee: PUSH1 0x04 000035f0: MSTORE 000035f1: PUSH1 0x02 000035f3: PUSH1 0x24 000035f5: MSTORE 000035f6: JUMP 000035f7: JUMPDEST 000035f8: SWAP1 000035f9: PUSH1 0x44 000035fb: SWAP2 000035fc: PUSH1 0x03 000035fe: DUP2 000035ff: LT 00003600: ISZERO 00003601: PUSH2 0x0872 00003604: JUMPI 00003605: PUSH1 0x04 00003607: MSTORE 00003608: PUSH1 0x01 0000360a: PUSH1 0x24 0000360c: MSTORE 0000360d: JUMP 0000360e: JUMPDEST 0000360f: PUSH1 0x01 00003611: PUSH1 0x01 00003613: PUSH1 0x40 00003615: SHL 00003616: SUB 00003617: DUP2 00003618: AND 00003619: SUB 0000361a: PUSH2 0x0436 0000361d: JUMPI 0000361e: JUMP 0000361f: JUMPDEST 00003620: PUSH1 0x20 00003622: DUP2 00003623: DUP4 00003624: SUB 00003625: SLT 00003626: PUSH2 0x0436 00003629: JUMPI 0000362a: DUP1 0000362b: MLOAD 0000362c: SWAP1 0000362d: PUSH1 0x01 0000362f: PUSH1 0x01 00003631: PUSH1 0x40 00003633: SHL 00003634: SUB 00003635: DUP3 00003636: GT 00003637: PUSH2 0x0436 0000363a: JUMPI 0000363b: ADD 0000363c: DUP2 0000363d: PUSH1 0x1f 0000363f: DUP3 00003640: ADD 00003641: SLT 00003642: ISZERO 00003643: PUSH2 0x0436 00003646: JUMPI 00003647: DUP1 00003648: MLOAD 00003649: SWAP1 0000364a: PUSH2 0x3652 0000364d: DUP3 0000364e: PUSH2 0x331a 00003651: JUMP 00003652: JUMPDEST 00003653: SWAP3 00003654: PUSH2 0x3660 00003657: PUSH1 0x40 00003659: MLOAD 0000365a: SWAP5 0000365b: DUP6 0000365c: PUSH2 0x240b 0000365f: JUMP 00003660: JUMPDEST 00003661: DUP3 00003662: DUP5 00003663: MSTORE 00003664: PUSH1 0x20 00003666: DUP1 00003667: DUP6 00003668: ADD 00003669: SWAP4 0000366a: PUSH1 0x06 0000366c: SHL 0000366d: DUP4 0000366e: ADD 0000366f: ADD 00003670: SWAP2 00003671: DUP2 00003672: DUP4 00003673: GT 00003674: PUSH2 0x0436 00003677: JUMPI 00003678: PUSH1 0x20 0000367a: ADD 0000367b: SWAP3 0000367c: JUMPDEST 0000367d: DUP3 0000367e: DUP5 0000367f: LT 00003680: PUSH2 0x368a 00003683: JUMPI 00003684: POP 00003685: POP 00003686: POP 00003687: POP 00003688: SWAP1 00003689: JUMP 0000368a: JUMPDEST 0000368b: PUSH1 0x40 0000368d: DUP5 0000368e: DUP4 0000368f: SUB 00003690: SLT 00003691: PUSH2 0x0436 00003694: JUMPI 00003695: PUSH1 0x20 00003697: PUSH1 0x40 00003699: SWAP2 0000369a: DUP3 0000369b: MLOAD 0000369c: PUSH2 0x36a4 0000369f: DUP2 000036a0: PUSH2 0x23f0 000036a3: JUMP 000036a4: JUMPDEST 000036a5: DUP7 000036a6: MLOAD 000036a7: PUSH2 0x36af 000036aa: DUP2 000036ab: PUSH2 0x3097 000036ae: JUMP 000036af: JUMPDEST 000036b0: DUP2 000036b1: MSTORE 000036b2: DUP3 000036b3: DUP8 000036b4: ADD 000036b5: MLOAD 000036b6: PUSH2 0x36be 000036b9: DUP2 000036ba: PUSH2 0x11c6 000036bd: JUMP 000036be: JUMPDEST 000036bf: DUP4 000036c0: DUP3 000036c1: ADD 000036c2: MSTORE 000036c3: DUP2 000036c4: MSTORE 000036c5: ADD 000036c6: SWAP4 000036c7: ADD 000036c8: SWAP3 000036c9: PUSH2 0x367c 000036cc: JUMP 000036cd: JUMPDEST 000036ce: SWAP2 000036cf: SWAP4 000036d0: SWAP3 000036d1: SWAP4 000036d2: DUP1 000036d3: PUSH1 0x40 000036d5: DUP5 000036d6: ADD 000036d7: PUSH1 0x40 000036d9: DUP6 000036da: MSTORE 000036db: MSTORE 000036dc: PUSH1 0x60 000036de: DUP4 000036df: ADD 000036e0: SWAP2 000036e1: SWAP1 000036e2: PUSH0 000036e3: JUMPDEST 000036e4: DUP2 000036e5: DUP2 000036e6: LT 000036e7: PUSH2 0x36fd 000036ea: JUMPI 000036eb: POP 000036ec: POP 000036ed: POP 000036ee: PUSH5 0xffffffffff 000036f4: PUSH1 0x20 000036f6: SWAP2 000036f7: SWAP5 000036f8: AND 000036f9: SWAP2 000036fa: ADD 000036fb: MSTORE 000036fc: JUMP 000036fd: JUMPDEST 000036fe: SWAP1 000036ff: SWAP2 00003700: SWAP3 00003701: PUSH1 0x40 00003703: DUP1 00003704: PUSH1 0x01 00003706: SWAP3 00003707: PUSH1 0x01 00003709: PUSH1 0x01 0000370b: PUSH1 0x80 0000370d: SHL 0000370e: SUB 0000370f: DUP8 00003710: CALLDATALOAD 00003711: PUSH2 0x3719 00003714: DUP2 00003715: PUSH2 0x3097 00003718: JUMP 00003719: JUMPDEST 0000371a: AND 0000371b: DUP2 0000371c: MSTORE 0000371d: PUSH5 0xffffffffff 00003723: PUSH1 0x20 00003725: DUP9 00003726: ADD 00003727: CALLDATALOAD 00003728: PUSH2 0x3730 0000372b: DUP2 0000372c: PUSH2 0x11c6 0000372f: JUMP 00003730: JUMPDEST 00003731: AND 00003732: PUSH1 0x20 00003734: DUP3 00003735: ADD 00003736: MSTORE 00003737: ADD 00003738: SWAP5 00003739: ADD 0000373a: SWAP3 0000373b: SWAP2 0000373c: ADD 0000373d: PUSH2 0x36e3 00003740: JUMP 00003741: JUMPDEST 00003742: SWAP1 00003743: DUP2 00003744: SLOAD 00003745: PUSH2 0x374d 00003748: DUP2 00003749: PUSH2 0x331a 0000374c: JUMP 0000374d: JUMPDEST 0000374e: SWAP3 0000374f: PUSH2 0x375b 00003752: PUSH1 0x40 00003754: MLOAD 00003755: SWAP5 00003756: DUP6 00003757: PUSH2 0x240b 0000375a: JUMP 0000375b: JUMPDEST 0000375c: DUP2 0000375d: DUP5 0000375e: MSTORE 0000375f: PUSH1 0x20 00003761: DUP5 00003762: ADD 00003763: SWAP1 00003764: PUSH0 00003765: MSTORE 00003766: PUSH1 0x20 00003768: PUSH0 00003769: KECCAK256 0000376a: PUSH0 0000376b: SWAP2 0000376c: JUMPDEST 0000376d: DUP4 0000376e: DUP4 0000376f: LT 00003770: PUSH2 0x3779 00003773: JUMPI 00003774: POP 00003775: POP 00003776: POP 00003777: POP 00003778: JUMP 00003779: JUMPDEST 0000377a: PUSH1 0x01 0000377c: PUSH1 0x20 0000377e: DUP2 0000377f: SWAP3 00003780: PUSH1 0x40 00003782: MLOAD 00003783: PUSH2 0x378b 00003786: DUP2 00003787: PUSH2 0x23f0 0000378a: JUMP 0000378b: JUMPDEST 0000378c: PUSH5 0xffffffffff 00003792: DUP7 00003793: SLOAD 00003794: PUSH1 0x01 00003796: PUSH1 0x01 00003798: PUSH1 0x80 0000379a: SHL 0000379b: SUB 0000379c: DUP2 0000379d: AND 0000379e: DUP4 0000379f: MSTORE 000037a0: PUSH1 0x80 000037a2: SHR 000037a3: AND 000037a4: DUP4 000037a5: DUP3 000037a6: ADD 000037a7: MSTORE 000037a8: DUP2 000037a9: MSTORE 000037aa: ADD 000037ab: SWAP3 000037ac: ADD 000037ad: SWAP3 000037ae: ADD 000037af: SWAP2 000037b0: SWAP1 000037b1: PUSH2 0x376c 000037b4: JUMP 000037b5: JUMPDEST 000037b6: SWAP1 000037b7: PUSH2 0x37bf 000037ba: DUP3 000037bb: PUSH2 0x331a 000037be: JUMP 000037bf: JUMPDEST 000037c0: PUSH2 0x37cc 000037c3: PUSH1 0x40 000037c5: MLOAD 000037c6: SWAP2 000037c7: DUP3 000037c8: PUSH2 0x240b 000037cb: JUMP 000037cc: JUMPDEST 000037cd: DUP3 000037ce: DUP2 000037cf: MSTORE 000037d0: DUP1 000037d1: SWAP3 000037d2: PUSH2 0x37dd 000037d5: PUSH1 0x1f 000037d7: NOT 000037d8: SWAP2 000037d9: PUSH2 0x331a 000037dc: JUMP 000037dd: JUMPDEST 000037de: ADD 000037df: SWAP1 000037e0: PUSH1 0x20 000037e2: CALLDATASIZE 000037e3: SWAP2 000037e4: ADD 000037e5: CALLDATACOPY 000037e6: JUMP 000037e7: JUMPDEST 000037e8: SWAP1 000037e9: DUP2 000037ea: PUSH1 0x20 000037ec: SWAP2 000037ed: SUB 000037ee: SLT 000037ef: PUSH2 0x0436 000037f2: JUMPI 000037f3: MLOAD 000037f4: PUSH2 0x0524 000037f7: DUP2 000037f8: PUSH2 0x3097 000037fb: JUMP 000037fc: JUMPDEST 000037fd: SWAP1 000037fe: DUP2 000037ff: PUSH1 0x20 00003801: SWAP2 00003802: SUB 00003803: SLT 00003804: PUSH2 0x0436 00003807: JUMPI 00003808: MLOAD 00003809: PUSH2 0x0524 0000380c: DUP2 0000380d: PUSH2 0x0424 00003810: JUMP 00003811: JUMPDEST 00003812: SWAP1 00003813: DUP2 00003814: SLOAD 00003815: PUSH2 0x381d 00003818: DUP2 00003819: PUSH2 0x331a 0000381c: JUMP 0000381d: JUMPDEST 0000381e: SWAP3 0000381f: PUSH2 0x382b 00003822: PUSH1 0x40 00003824: MLOAD 00003825: SWAP5 00003826: DUP6 00003827: PUSH2 0x240b 0000382a: JUMP 0000382b: JUMPDEST 0000382c: DUP2 0000382d: DUP5 0000382e: MSTORE 0000382f: PUSH1 0x20 00003831: DUP5 00003832: ADD 00003833: SWAP1 00003834: PUSH0 00003835: MSTORE 00003836: PUSH1 0x20 00003838: PUSH0 00003839: KECCAK256 0000383a: PUSH0 0000383b: SWAP2 0000383c: JUMPDEST 0000383d: DUP4 0000383e: DUP4 0000383f: LT 00003840: PUSH2 0x3849 00003843: JUMPI 00003844: POP 00003845: POP 00003846: POP 00003847: POP 00003848: JUMP 00003849: JUMPDEST 0000384a: PUSH1 0x01 0000384c: PUSH1 0x20 0000384e: DUP2 0000384f: SWAP3 00003850: PUSH1 0x40 00003852: MLOAD 00003853: PUSH2 0x385b 00003856: DUP2 00003857: PUSH2 0x23d0 0000385a: JUMP 0000385b: JUMPDEST 0000385c: PUSH5 0xffffffffff 00003862: DUP7 00003863: SLOAD 00003864: PUSH1 0x01 00003866: PUSH1 0x01 00003868: PUSH1 0x80 0000386a: SHL 0000386b: SUB 0000386c: DUP2 0000386d: AND 0000386e: DUP4 0000386f: MSTORE 00003870: PUSH1 0x01 00003872: PUSH1 0x01 00003874: PUSH1 0x40 00003876: SHL 00003877: SUB 00003878: DUP2 00003879: PUSH1 0x80 0000387b: SHR 0000387c: AND 0000387d: DUP6 0000387e: DUP5 0000387f: ADD 00003880: MSTORE 00003881: PUSH1 0xc0 00003883: SHR 00003884: AND 00003885: PUSH1 0x40 00003887: DUP3 00003888: ADD 00003889: MSTORE 0000388a: DUP2 0000388b: MSTORE 0000388c: ADD 0000388d: SWAP3 0000388e: ADD 0000388f: SWAP3 00003890: ADD 00003891: SWAP2 00003892: SWAP1 00003893: PUSH2 0x383c 00003896: JUMP 00003897: JUMPDEST 00003898: CALLDATALOAD 00003899: PUSH2 0x0524 0000389c: DUP2 0000389d: PUSH2 0x11c6 000038a0: JUMP 000038a1: JUMPDEST 000038a2: SWAP1 000038a3: PUSH5 0xffffffffff 000038a9: DUP1 000038aa: SWAP2 000038ab: AND 000038ac: SWAP2 000038ad: AND 000038ae: ADD 000038af: SWAP1 000038b0: PUSH5 0xffffffffff 000038b6: DUP3 000038b7: GT 000038b8: PUSH2 0x1634 000038bb: JUMPI 000038bc: JUMP 000038bd: JUMPDEST 000038be: SWAP1 000038bf: SWAP3 000038c0: SWAP2 000038c1: PUSH2 0x38cb 000038c4: DUP2 000038c5: DUP6 000038c6: DUP5 000038c7: PUSH2 0x33e3 000038ca: JUMP 000038cb: JUMPDEST 000038cc: DUP4 000038cd: EXTCODESIZE 000038ce: PUSH2 0x38d8 000038d1: JUMPI 000038d2: JUMPDEST 000038d3: POP 000038d4: POP 000038d5: POP 000038d6: POP 000038d7: JUMP 000038d8: JUMPDEST 000038d9: PUSH1 0x20 000038db: SWAP2 000038dc: PUSH2 0x38fa 000038df: PUSH1 0x40 000038e1: MLOAD 000038e2: SWAP5 000038e3: DUP6 000038e4: SWAP4 000038e5: DUP5 000038e6: SWAP4 000038e7: PUSH4 0x0a85bd01 000038ec: PUSH1 0xe1 000038ee: SHL 000038ef: DUP6 000038f0: MSTORE 000038f1: CALLER 000038f2: PUSH1 0x04 000038f4: DUP7 000038f5: ADD 000038f6: PUSH2 0x506d 000038f9: JUMP 000038fa: JUMPDEST 000038fb: SUB 000038fc: DUP2 000038fd: PUSH0 000038fe: PUSH1 0x01 00003900: PUSH1 0x01 00003902: PUSH1 0xa0 00003904: SHL 00003905: SUB 00003906: DUP8 00003907: AND 00003908: GAS 00003909: CALL 0000390a: PUSH0 0000390b: SWAP2 0000390c: DUP2 0000390d: PUSH2 0x3987 00003910: JUMPI 00003911: JUMPDEST 00003912: POP 00003913: PUSH2 0x394b 00003916: JUMPI 00003917: POP 00003918: PUSH2 0x391f 0000391b: PUSH2 0x33a0 0000391e: JUMP 0000391f: JUMPDEST 00003920: DUP1 00003921: MLOAD 00003922: SWAP2 00003923: SWAP1 00003924: DUP3 00003925: PUSH2 0x3944 00003928: JUMPI 00003929: PUSH4 0x32505749 0000392e: PUSH1 0xe1 00003930: SHL 00003931: PUSH0 00003932: MSTORE 00003933: PUSH1 0x01 00003935: PUSH1 0x01 00003937: PUSH1 0xa0 00003939: SHL 0000393a: SUB 0000393b: DUP3 0000393c: AND 0000393d: PUSH1 0x04 0000393f: MSTORE 00003940: PUSH1 0x24 00003942: PUSH0 00003943: REVERT 00003944: JUMPDEST 00003945: SWAP1 00003946: POP 00003947: PUSH1 0x20 00003949: ADD 0000394a: REVERT 0000394b: JUMPDEST 0000394c: PUSH1 0x01 0000394e: PUSH1 0x01 00003950: PUSH1 0xe0 00003952: SHL 00003953: SUB 00003954: NOT 00003955: AND 00003956: PUSH4 0x757a42ff 0000395b: PUSH1 0xe1 0000395d: SHL 0000395e: ADD 0000395f: PUSH2 0x396c 00003962: JUMPI 00003963: POP 00003964: PUSH0 00003965: DUP1 00003966: DUP1 00003967: DUP1 00003968: PUSH2 0x38d2 0000396b: JUMP 0000396c: JUMPDEST 0000396d: PUSH4 0x32505749 00003972: PUSH1 0xe1 00003974: SHL 00003975: PUSH0 00003976: MSTORE 00003977: PUSH1 0x01 00003979: PUSH1 0x01 0000397b: PUSH1 0xa0 0000397d: SHL 0000397e: SUB 0000397f: AND 00003980: PUSH1 0x04 00003982: MSTORE 00003983: PUSH1 0x24 00003985: PUSH0 00003986: REVERT 00003987: JUMPDEST 00003988: PUSH2 0x39a1 0000398b: SWAP2 0000398c: SWAP3 0000398d: POP 0000398e: PUSH1 0x20 00003990: RETURNDATASIZE 00003991: PUSH1 0x20 00003993: GT 00003994: PUSH2 0x1cd2 00003997: JUMPI 00003998: PUSH2 0x1cc4 0000399b: DUP2 0000399c: DUP4 0000399d: PUSH2 0x240b 000039a0: JUMP 000039a1: JUMPDEST 000039a2: SWAP1 000039a3: PUSH0 000039a4: PUSH2 0x3911 000039a7: JUMP 000039a8: JUMPDEST 000039a9: PUSH1 0x20 000039ab: DUP2 000039ac: DUP4 000039ad: SUB 000039ae: SLT 000039af: PUSH2 0x0436 000039b2: JUMPI 000039b3: DUP1 000039b4: MLOAD 000039b5: SWAP1 000039b6: PUSH1 0x01 000039b8: PUSH1 0x01 000039ba: PUSH1 0x40 000039bc: SHL 000039bd: SUB 000039be: DUP3 000039bf: GT 000039c0: PUSH2 0x0436 000039c3: JUMPI 000039c4: ADD 000039c5: DUP2 000039c6: PUSH1 0x1f 000039c8: DUP3 000039c9: ADD 000039ca: SLT 000039cb: ISZERO 000039cc: PUSH2 0x0436 000039cf: JUMPI 000039d0: DUP1 000039d1: MLOAD 000039d2: SWAP1 000039d3: PUSH2 0x39db 000039d6: DUP3 000039d7: PUSH2 0x331a 000039da: JUMP 000039db: JUMPDEST 000039dc: SWAP3 000039dd: PUSH2 0x39e9 000039e0: PUSH1 0x40 000039e2: MLOAD 000039e3: SWAP5 000039e4: DUP6 000039e5: PUSH2 0x240b 000039e8: JUMP 000039e9: JUMPDEST 000039ea: DUP3 000039eb: DUP5 000039ec: MSTORE 000039ed: PUSH1 0x20 000039ef: PUSH1 0x60 000039f1: DUP2 000039f2: DUP7 000039f3: ADD 000039f4: SWAP5 000039f5: MUL 000039f6: DUP4 000039f7: ADD 000039f8: ADD 000039f9: SWAP2 000039fa: DUP2 000039fb: DUP4 000039fc: GT 000039fd: PUSH2 0x0436 00003a00: JUMPI 00003a01: PUSH1 0x20 00003a03: ADD 00003a04: SWAP3 00003a05: JUMPDEST 00003a06: DUP3 00003a07: DUP5 00003a08: LT 00003a09: PUSH2 0x3a13 00003a0c: JUMPI 00003a0d: POP 00003a0e: POP 00003a0f: POP 00003a10: POP 00003a11: SWAP1 00003a12: JUMP 00003a13: JUMPDEST 00003a14: PUSH1 0x60 00003a16: DUP5 00003a17: DUP4 00003a18: SUB 00003a19: SLT 00003a1a: PUSH2 0x0436 00003a1d: JUMPI 00003a1e: PUSH1 0x20 00003a20: PUSH1 0x60 00003a22: SWAP2 00003a23: PUSH1 0x40 00003a25: MLOAD 00003a26: PUSH2 0x3a2e 00003a29: DUP2 00003a2a: PUSH2 0x23d0 00003a2d: JUMP 00003a2e: JUMPDEST 00003a2f: DUP7 00003a30: MLOAD 00003a31: PUSH2 0x3a39 00003a34: DUP2 00003a35: PUSH2 0x3097 00003a38: JUMP 00003a39: JUMPDEST 00003a3a: DUP2 00003a3b: MSTORE 00003a3c: DUP3 00003a3d: DUP8 00003a3e: ADD 00003a3f: MLOAD 00003a40: PUSH2 0x3a48 00003a43: DUP2 00003a44: PUSH2 0x360e 00003a47: JUMP 00003a48: JUMPDEST 00003a49: DUP4 00003a4a: DUP3 00003a4b: ADD 00003a4c: MSTORE 00003a4d: PUSH1 0x40 00003a4f: DUP8 00003a50: ADD 00003a51: MLOAD 00003a52: PUSH2 0x3a5a 00003a55: DUP2 00003a56: PUSH2 0x11c6 00003a59: JUMP 00003a5a: JUMPDEST 00003a5b: PUSH1 0x40 00003a5d: DUP3 00003a5e: ADD 00003a5f: MSTORE 00003a60: DUP2 00003a61: MSTORE 00003a62: ADD 00003a63: SWAP4 00003a64: ADD 00003a65: SWAP3 00003a66: PUSH2 0x3a05 00003a69: JUMP 00003a6a: JUMPDEST 00003a6b: SWAP4 00003a6c: SWAP3 00003a6d: SWAP2 00003a6e: DUP1 00003a6f: PUSH1 0x40 00003a71: DUP7 00003a72: ADD 00003a73: PUSH1 0x40 00003a75: DUP8 00003a76: MSTORE 00003a77: MSTORE 00003a78: PUSH1 0x60 00003a7a: DUP6 00003a7b: ADD 00003a7c: SWAP2 00003a7d: SWAP1 00003a7e: PUSH0 00003a7f: JUMPDEST 00003a80: DUP2 00003a81: DUP2 00003a82: LT 00003a83: PUSH2 0x3a9e 00003a86: JUMPI 00003a87: POP 00003a88: POP 00003a89: POP 00003a8a: SWAP1 00003a8b: PUSH1 0x20 00003a8d: PUSH2 0x243b 00003a90: SWAP3 00003a91: SWAP5 00003a92: ADD 00003a93: SWAP1 00003a94: PUSH5 0xffffffffff 00003a9a: AND 00003a9b: SWAP1 00003a9c: MSTORE 00003a9d: JUMP 00003a9e: JUMPDEST 00003a9f: SWAP1 00003aa0: SWAP2 00003aa1: SWAP3 00003aa2: PUSH1 0x60 00003aa4: DUP1 00003aa5: PUSH1 0x01 00003aa7: SWAP3 00003aa8: PUSH1 0x01 00003aaa: PUSH1 0x01 00003aac: PUSH1 0x80 00003aae: SHL 00003aaf: SUB 00003ab0: DUP8 00003ab1: CALLDATALOAD 00003ab2: PUSH2 0x3aba 00003ab5: DUP2 00003ab6: PUSH2 0x3097 00003ab9: JUMP 00003aba: JUMPDEST 00003abb: AND 00003abc: DUP2 00003abd: MSTORE 00003abe: PUSH1 0x01 00003ac0: PUSH1 0x01 00003ac2: PUSH1 0x40 00003ac4: SHL 00003ac5: SUB 00003ac6: PUSH1 0x20 00003ac8: DUP9 00003ac9: ADD 00003aca: CALLDATALOAD 00003acb: PUSH2 0x3ad3 00003ace: DUP2 00003acf: PUSH2 0x360e 00003ad2: JUMP 00003ad3: JUMPDEST 00003ad4: AND 00003ad5: PUSH1 0x20 00003ad7: DUP3 00003ad8: ADD 00003ad9: MSTORE 00003ada: PUSH5 0xffffffffff 00003ae0: PUSH1 0x40 00003ae2: DUP9 00003ae3: ADD 00003ae4: CALLDATALOAD 00003ae5: PUSH2 0x3aed 00003ae8: DUP2 00003ae9: PUSH2 0x11c6 00003aec: JUMP 00003aed: JUMPDEST 00003aee: AND 00003aef: PUSH1 0x40 00003af1: DUP3 00003af2: ADD 00003af3: MSTORE 00003af4: ADD 00003af5: SWAP5 00003af6: ADD 00003af7: SWAP3 00003af8: SWAP2 00003af9: ADD 00003afa: PUSH2 0x3a7f 00003afd: JUMP 00003afe: JUMPDEST 00003aff: SWAP1 00003b00: PUSH1 0x40 00003b02: MLOAD 00003b03: PUSH2 0x3b0b 00003b06: DUP2 00003b07: PUSH2 0x23f0 00003b0a: JUMP 00003b0b: JUMPDEST 00003b0c: SWAP2 00003b0d: SLOAD 00003b0e: PUSH1 0x01 00003b10: PUSH1 0x01 00003b12: PUSH1 0x80 00003b14: SHL 00003b15: SUB 00003b16: DUP2 00003b17: AND 00003b18: DUP4 00003b19: MSTORE 00003b1a: PUSH1 0x80 00003b1c: SHR 00003b1d: PUSH1 0x20 00003b1f: DUP4 00003b20: ADD 00003b21: MSTORE 00003b22: JUMP 00003b23: JUMPDEST 00003b24: DUP1 00003b25: PUSH0 00003b26: MSTORE 00003b27: PUSH1 0x03 00003b29: PUSH1 0x20 00003b2b: MSTORE 00003b2c: PUSH1 0x01 00003b2e: PUSH1 0x01 00003b30: PUSH1 0xa0 00003b32: SHL 00003b33: SUB 00003b34: PUSH1 0x40 00003b36: PUSH0 00003b37: KECCAK256 00003b38: SLOAD 00003b39: AND 00003b3a: SWAP1 00003b3b: DUP2 00003b3c: ISZERO 00003b3d: PUSH2 0x3b44 00003b40: JUMPI 00003b41: POP 00003b42: SWAP1 00003b43: JUMP 00003b44: JUMPDEST 00003b45: PUSH4 0x7e273289 00003b4a: PUSH1 0xe0 00003b4c: SHL 00003b4d: PUSH0 00003b4e: MSTORE 00003b4f: PUSH1 0x04 00003b51: MSTORE 00003b52: PUSH1 0x24 00003b54: PUSH0 00003b55: REVERT 00003b56: JUMPDEST 00003b57: DUP1 00003b58: PUSH0 00003b59: MSTORE 00003b5a: PUSH1 0x0e 00003b5c: PUSH1 0x20 00003b5e: MSTORE 00003b5f: PUSH1 0x01 00003b61: PUSH1 0x01 00003b63: PUSH1 0xa0 00003b65: SHL 00003b66: SUB 00003b67: PUSH1 0x40 00003b69: PUSH0 00003b6a: KECCAK256 00003b6b: SLOAD 00003b6c: AND 00003b6d: ISZERO 00003b6e: PUSH2 0x3b74 00003b71: JUMPI 00003b72: POP 00003b73: JUMP 00003b74: JUMPDEST 00003b75: PUSH3 0x763a5b 00003b79: PUSH1 0xe9 00003b7b: SHL 00003b7c: PUSH0 00003b7d: MSTORE 00003b7e: PUSH1 0x04 00003b80: MSTORE 00003b81: PUSH1 0x24 00003b83: PUSH0 00003b84: REVERT 00003b85: JUMPDEST 00003b86: PUSH1 0x03 00003b88: DUP3 00003b89: LT 00003b8a: ISZERO 00003b8b: PUSH2 0x0872 00003b8e: JUMPI 00003b8f: MSTORE 00003b90: JUMP 00003b91: JUMPDEST 00003b92: SWAP1 00003b93: PUSH1 0x40 00003b95: MLOAD 00003b96: PUSH2 0x3b9e 00003b99: DUP2 00003b9a: PUSH2 0x23d0 00003b9d: JUMP 00003b9e: JUMPDEST 00003b9f: PUSH1 0x40 00003ba1: PUSH1 0x01 00003ba3: PUSH1 0x01 00003ba5: PUSH1 0x80 00003ba7: SHL 00003ba8: SUB 00003ba9: PUSH1 0x01 00003bab: DUP4 00003bac: SWAP6 00003bad: DUP1 00003bae: SLOAD 00003baf: DUP4 00003bb0: DUP2 00003bb1: AND 00003bb2: DUP7 00003bb3: MSTORE 00003bb4: PUSH1 0x80 00003bb6: SHR 00003bb7: PUSH1 0x20 00003bb9: DUP7 00003bba: ADD 00003bbb: MSTORE 00003bbc: ADD 00003bbd: SLOAD 00003bbe: AND 00003bbf: SWAP2 00003bc0: ADD 00003bc1: MSTORE 00003bc2: JUMP 00003bc3: JUMPDEST 00003bc4: SWAP1 00003bc5: PUSH1 0x40 00003bc7: MLOAD 00003bc8: PUSH2 0x3bd3 00003bcb: PUSH2 0x0140 00003bce: DUP3 00003bcf: PUSH2 0x240b 00003bd2: JUMP 00003bd3: JUMPDEST 00003bd4: PUSH2 0x0120 00003bd7: PUSH2 0x3cc6 00003bda: PUSH1 0x02 00003bdc: DUP4 00003bdd: SWAP6 00003bde: PUSH2 0x3c57 00003be1: PUSH2 0x3c4e 00003be4: DUP3 00003be5: SLOAD 00003be6: PUSH2 0x3c05 00003be9: PUSH2 0x3bf8 00003bec: DUP3 00003bed: PUSH1 0x01 00003bef: PUSH1 0x01 00003bf1: PUSH1 0xa0 00003bf3: SHL 00003bf4: SUB 00003bf5: AND 00003bf6: SWAP1 00003bf7: JUMP 00003bf8: JUMPDEST 00003bf9: PUSH1 0x01 00003bfb: PUSH1 0x01 00003bfd: PUSH1 0xa0 00003bff: SHL 00003c00: SUB 00003c01: AND 00003c02: DUP10 00003c03: MSTORE 00003c04: JUMP 00003c05: JUMPDEST 00003c06: PUSH5 0xffffffffff 00003c0c: PUSH1 0xa0 00003c0e: DUP3 00003c0f: SWAP1 00003c10: SHR 00003c11: AND 00003c12: PUSH1 0x20 00003c14: DUP10 00003c15: ADD 00003c16: MSTORE 00003c17: PUSH2 0x3c34 00003c1a: PUSH1 0xc8 00003c1c: DUP3 00003c1d: SWAP1 00003c1e: SHR 00003c1f: PUSH5 0xffffffffff 00003c25: AND 00003c26: JUMPDEST 00003c27: PUSH5 0xffffffffff 00003c2d: AND 00003c2e: PUSH1 0x40 00003c30: DUP11 00003c31: ADD 00003c32: MSTORE 00003c33: JUMP 00003c34: JUMPDEST 00003c35: PUSH2 0x3c48 00003c38: PUSH1 0xf0 00003c3a: DUP3 00003c3b: SWAP1 00003c3c: SHR 00003c3d: PUSH1 0xff 00003c3f: AND 00003c40: ISZERO 00003c41: ISZERO 00003c42: PUSH1 0x60 00003c44: DUP11 00003c45: ADD 00003c46: MSTORE 00003c47: JUMP 00003c48: JUMPDEST 00003c49: PUSH1 0xf8 00003c4b: SHR 00003c4c: SWAP1 00003c4d: JUMP 00003c4e: JUMPDEST 00003c4f: ISZERO 00003c50: ISZERO 00003c51: PUSH1 0x80 00003c53: DUP8 00003c54: ADD 00003c55: MSTORE 00003c56: JUMP 00003c57: JUMPDEST 00003c58: PUSH2 0x3cc0 00003c5b: PUSH2 0x3cb6 00003c5e: PUSH1 0x01 00003c60: DUP4 00003c61: ADD 00003c62: SLOAD 00003c63: PUSH2 0x3c85 00003c66: PUSH2 0x3c75 00003c69: DUP3 00003c6a: PUSH1 0x01 00003c6c: PUSH1 0x01 00003c6e: PUSH1 0xa0 00003c70: SHL 00003c71: SUB 00003c72: AND 00003c73: SWAP1 00003c74: JUMP 00003c75: JUMPDEST 00003c76: PUSH1 0x01 00003c78: PUSH1 0x01 00003c7a: PUSH1 0xa0 00003c7c: SHL 00003c7d: SUB 00003c7e: AND 00003c7f: PUSH1 0xa0 00003c81: DUP11 00003c82: ADD 00003c83: MSTORE 00003c84: JUMP 00003c85: JUMPDEST 00003c86: PUSH2 0x3c99 00003c89: PUSH1 0xa0 00003c8b: DUP3 00003c8c: SWAP1 00003c8d: SHR 00003c8e: PUSH1 0xff 00003c90: AND 00003c91: ISZERO 00003c92: ISZERO 00003c93: PUSH1 0xc0 00003c95: DUP11 00003c96: ADD 00003c97: MSTORE 00003c98: JUMP 00003c99: JUMPDEST 00003c9a: PUSH2 0x3cad 00003c9d: PUSH1 0xa8 00003c9f: DUP3 00003ca0: SWAP1 00003ca1: SHR 00003ca2: PUSH1 0xff 00003ca4: AND 00003ca5: ISZERO 00003ca6: ISZERO 00003ca7: PUSH1 0xe0 00003ca9: DUP11 00003caa: ADD 00003cab: MSTORE 00003cac: JUMP 00003cad: JUMPDEST 00003cae: PUSH1 0xb0 00003cb0: SHR 00003cb1: PUSH1 0xff 00003cb3: AND 00003cb4: SWAP1 00003cb5: JUMP 00003cb6: JUMPDEST 00003cb7: PUSH2 0x0100 00003cba: DUP8 00003cbb: ADD 00003cbc: PUSH2 0x3b85 00003cbf: JUMP 00003cc0: JUMPDEST 00003cc1: ADD 00003cc2: PUSH2 0x3b91 00003cc5: JUMP 00003cc6: JUMPDEST 00003cc7: SWAP2 00003cc8: ADD 00003cc9: MSTORE 00003cca: JUMP 00003ccb: JUMPDEST 00003ccc: SWAP1 00003ccd: SWAP3 00003cce: PUSH5 0xffffffffff 00003cd4: SWAP1 00003cd5: DUP2 00003cd6: PUSH1 0xa0 00003cd8: SWAP5 00003cd9: PUSH1 0x01 00003cdb: PUSH1 0x01 00003cdd: PUSH1 0x80 00003cdf: SHL 00003ce0: SUB 00003ce1: PUSH1 0x80 00003ce3: DUP7 00003ce4: ADD 00003ce5: SWAP8 00003ce6: AND 00003ce7: DUP6 00003ce8: MSTORE 00003ce9: AND 00003cea: PUSH1 0x20 00003cec: DUP5 00003ced: ADD 00003cee: MSTORE 00003cef: AND 00003cf0: PUSH1 0x40 00003cf2: DUP3 00003cf3: ADD 00003cf4: MSTORE 00003cf5: PUSH1 0x80 00003cf7: PUSH1 0x60 00003cf9: DUP3 00003cfa: ADD 00003cfb: MSTORE 00003cfc: DUP4 00003cfd: SLOAD 00003cfe: DUP1 00003cff: SWAP4 00003d00: MSTORE 00003d01: ADD 00003d02: SWAP2 00003d03: PUSH0 00003d04: MSTORE 00003d05: PUSH1 0x20 00003d07: PUSH0 00003d08: KECCAK256 00003d09: SWAP1 00003d0a: PUSH0 00003d0b: JUMPDEST 00003d0c: DUP2 00003d0d: DUP2 00003d0e: LT 00003d0f: PUSH2 0x3d18 00003d12: JUMPI 00003d13: POP 00003d14: POP 00003d15: POP 00003d16: SWAP1 00003d17: JUMP 00003d18: JUMPDEST 00003d19: DUP3 00003d1a: SLOAD 00003d1b: PUSH1 0x01 00003d1d: PUSH1 0x01 00003d1f: PUSH1 0x80 00003d21: SHL 00003d22: SUB 00003d23: DUP2 00003d24: AND 00003d25: DUP6 00003d26: MSTORE 00003d27: PUSH1 0x80 00003d29: SHR 00003d2a: PUSH5 0xffffffffff 00003d30: AND 00003d31: PUSH1 0x20 00003d33: DUP6 00003d34: ADD 00003d35: MSTORE 00003d36: PUSH1 0x40 00003d38: SWAP1 00003d39: SWAP4 00003d3a: ADD 00003d3b: SWAP3 00003d3c: PUSH1 0x01 00003d3e: SWAP3 00003d3f: DUP4 00003d40: ADD 00003d41: SWAP3 00003d42: ADD 00003d43: PUSH2 0x3d0b 00003d46: JUMP 00003d47: JUMPDEST 00003d48: SWAP3 00003d49: SWAP2 00003d4a: PUSH5 0xffffffffff 00003d50: SWAP1 00003d51: SWAP7 00003d52: SWAP6 00003d53: SWAP5 00003d54: SWAP7 00003d55: PUSH1 0x01 00003d57: PUSH1 0x01 00003d59: PUSH1 0x80 00003d5b: SHL 00003d5c: SUB 00003d5d: PUSH1 0xa0 00003d5f: DUP7 00003d60: ADD 00003d61: SWAP4 00003d62: AND 00003d63: DUP6 00003d64: MSTORE 00003d65: AND 00003d66: PUSH1 0x20 00003d68: DUP5 00003d69: ADD 00003d6a: MSTORE 00003d6b: PUSH1 0xa0 00003d6d: PUSH1 0x40 00003d6f: DUP5 00003d70: ADD 00003d71: MSTORE 00003d72: DUP2 00003d73: SLOAD 00003d74: DUP1 00003d75: SWAP2 00003d76: MSTORE 00003d77: PUSH1 0xc0 00003d79: DUP4 00003d7a: ADD 00003d7b: SWAP2 00003d7c: PUSH0 00003d7d: MSTORE 00003d7e: PUSH1 0x20 00003d80: PUSH0 00003d81: KECCAK256 00003d82: SWAP1 00003d83: PUSH0 00003d84: JUMPDEST 00003d85: DUP2 00003d86: DUP2 00003d87: LT 00003d88: PUSH2 0x3db2 00003d8b: JUMPI 00003d8c: POP 00003d8d: POP 00003d8e: POP 00003d8f: PUSH5 0xffffffffff 00003d95: SWAP1 00003d96: SWAP5 00003d97: AND 00003d98: PUSH1 0x60 00003d9a: DUP3 00003d9b: ADD 00003d9c: MSTORE 00003d9d: PUSH2 0x243b 00003da0: SWAP2 00003da1: SWAP1 00003da2: PUSH1 0x80 00003da4: ADD 00003da5: SWAP1 00003da6: PUSH1 0x01 00003da8: PUSH1 0x01 00003daa: PUSH1 0x80 00003dac: SHL 00003dad: SUB 00003dae: AND 00003daf: SWAP1 00003db0: MSTORE 00003db1: JUMP 00003db2: JUMPDEST 00003db3: DUP3 00003db4: SLOAD 00003db5: PUSH1 0x01 00003db7: PUSH1 0x01 00003db9: PUSH1 0x80 00003dbb: SHL 00003dbc: SUB 00003dbd: DUP2 00003dbe: AND 00003dbf: DUP6 00003dc0: MSTORE 00003dc1: PUSH1 0x80 00003dc3: DUP2 00003dc4: SWAP1 00003dc5: SHR 00003dc6: PUSH1 0x01 00003dc8: PUSH1 0x01 00003dca: PUSH1 0x40 00003dcc: SHL 00003dcd: SUB 00003dce: AND 00003dcf: PUSH1 0x20 00003dd1: DUP7 00003dd2: ADD 00003dd3: MSTORE 00003dd4: PUSH1 0xc0 00003dd6: SHR 00003dd7: PUSH5 0xffffffffff 00003ddd: AND 00003dde: PUSH1 0x40 00003de0: DUP6 00003de1: ADD 00003de2: MSTORE 00003de3: PUSH1 0x60 00003de5: SWAP1 00003de6: SWAP4 00003de7: ADD 00003de8: SWAP3 00003de9: PUSH1 0x01 00003deb: SWAP3 00003dec: DUP4 00003ded: ADD 00003dee: SWAP3 00003def: ADD 00003df0: PUSH2 0x3d84 00003df3: JUMP 00003df4: JUMPDEST 00003df5: PUSH0 00003df6: SWAP1 00003df7: PUSH2 0x3e10 00003dfa: PUSH2 0x3e0b 00003dfd: DUP3 00003dfe: PUSH0 00003dff: MSTORE 00003e00: PUSH1 0x0e 00003e02: PUSH1 0x20 00003e04: MSTORE 00003e05: PUSH1 0x40 00003e07: PUSH0 00003e08: KECCAK256 00003e09: SWAP1 00003e0a: JUMP 00003e0b: JUMPDEST 00003e0c: PUSH2 0x3bc3 00003e0f: JUMP 00003e10: JUMPDEST 00003e11: SWAP2 00003e12: PUSH2 0x3e1e 00003e15: PUSH1 0xc0 00003e17: DUP5 00003e18: ADD 00003e19: MLOAD 00003e1a: ISZERO 00003e1b: ISZERO 00003e1c: SWAP1 00003e1d: JUMP 00003e1e: JUMPDEST 00003e1f: ISZERO 00003e20: PUSH2 0x3e3a 00003e23: JUMPI 00003e24: POP 00003e25: POP 00003e26: PUSH2 0x0120 00003e29: ADD 00003e2a: MLOAD 00003e2b: PUSH1 0x20 00003e2d: ADD 00003e2e: MLOAD 00003e2f: PUSH1 0x01 00003e31: PUSH1 0x01 00003e33: PUSH1 0x80 00003e35: SHL 00003e36: SUB 00003e37: AND 00003e38: SWAP1 00003e39: JUMP 00003e3a: JUMPDEST 00003e3b: PUSH1 0x80 00003e3d: DUP4 00003e3e: ADD 00003e3f: MLOAD 00003e40: PUSH2 0x40b5 00003e43: JUMPI 00003e44: PUSH2 0x0100 00003e47: DUP4 00003e48: ADD 00003e49: PUSH1 0x01 00003e4b: DUP2 00003e4c: MLOAD 00003e4d: PUSH2 0x3e55 00003e50: DUP2 00003e51: PUSH2 0x2d19 00003e54: JUMP 00003e55: JUMPDEST 00003e56: PUSH2 0x3e5e 00003e59: DUP2 00003e5a: PUSH2 0x2d19 00003e5d: JUMP 00003e5e: JUMPDEST 00003e5f: SUB 00003e60: PUSH2 0x3f3b 00003e63: JUMPI 00003e64: POP 00003e65: POP 00003e66: PUSH1 0x20 00003e68: SWAP1 00003e69: PUSH2 0x0120 00003e6c: DUP4 00003e6d: ADD 00003e6e: PUSH2 0x3ee8 00003e71: PUSH2 0x3e82 00003e74: DUP3 00003e75: MLOAD 00003e76: MLOAD 00003e77: PUSH1 0x01 00003e79: PUSH1 0x01 00003e7b: PUSH1 0x80 00003e7d: SHL 00003e7e: SUB 00003e7f: AND 00003e80: SWAP1 00003e81: JUMP 00003e82: JUMPDEST 00003e83: SWAP2 00003e84: PUSH2 0x3ecc 00003e87: DUP6 00003e88: PUSH2 0x3ebc 00003e8b: DUP2 00003e8c: PUSH2 0x3eaf 00003e8f: PUSH2 0x3ea0 00003e92: PUSH1 0x40 00003e94: DUP13 00003e95: ADD 00003e96: MLOAD 00003e97: PUSH5 0xffffffffff 00003e9d: AND 00003e9e: SWAP1 00003e9f: JUMP 00003ea0: JUMPDEST 00003ea1: SWAP9 00003ea2: PUSH0 00003ea3: MSTORE 00003ea4: PUSH1 0x0d 00003ea6: PUSH1 0x20 00003ea8: MSTORE 00003ea9: PUSH1 0x40 00003eab: PUSH0 00003eac: KECCAK256 00003ead: SWAP1 00003eae: JUMP 00003eaf: JUMPDEST 00003eb0: SWAP10 00003eb1: ADD 00003eb2: MLOAD 00003eb3: PUSH5 0xffffffffff 00003eb9: AND 00003eba: SWAP1 00003ebb: JUMP 00003ebc: JUMPDEST 00003ebd: SWAP3 00003ebe: MLOAD 00003ebf: ADD 00003ec0: MLOAD 00003ec1: PUSH1 0x01 00003ec3: PUSH1 0x01 00003ec5: PUSH1 0x80 00003ec7: SHL 00003ec8: SUB 00003ec9: AND 00003eca: SWAP1 00003ecb: JUMP 00003ecc: JUMPDEST 00003ecd: SWAP1 00003ece: PUSH1 0x40 00003ed0: MLOAD 00003ed1: SWAP7 00003ed2: DUP8 00003ed3: SWAP6 00003ed4: DUP7 00003ed5: SWAP6 00003ed6: PUSH4 0x1efe3003 00003edb: PUSH1 0xe2 00003edd: SHL 00003ede: DUP8 00003edf: MSTORE 00003ee0: PUSH1 0x04 00003ee2: DUP8 00003ee3: ADD 00003ee4: PUSH2 0x3d47 00003ee7: JUMP 00003ee8: JUMPDEST 00003ee9: SUB 00003eea: DUP2 00003eeb: PUSH20 0x1feb172238638897b13b69c65feb508a0a96b35d 00003f00: GAS 00003f01: DELEGATECALL 00003f02: SWAP1 00003f03: DUP2 00003f04: ISZERO 00003f05: PUSH2 0x0bae 00003f08: JUMPI 00003f09: PUSH0 00003f0a: SWAP2 00003f0b: PUSH2 0x3f12 00003f0e: JUMPI 00003f0f: POP 00003f10: SWAP1 00003f11: JUMP 00003f12: JUMPDEST 00003f13: PUSH2 0x0524 00003f16: SWAP2 00003f17: POP 00003f18: PUSH1 0x20 00003f1a: RETURNDATASIZE 00003f1b: PUSH1 0x20 00003f1d: GT 00003f1e: PUSH2 0x3f34 00003f21: JUMPI 00003f22: JUMPDEST 00003f23: PUSH2 0x3f2c 00003f26: DUP2 00003f27: DUP4 00003f28: PUSH2 0x240b 00003f2b: JUMP 00003f2c: JUMPDEST 00003f2d: DUP2 00003f2e: ADD 00003f2f: SWAP1 00003f30: PUSH2 0x37e7 00003f33: JUMP 00003f34: JUMPDEST 00003f35: POP 00003f36: RETURNDATASIZE 00003f37: PUSH2 0x3f22 00003f3a: JUMP 00003f3b: JUMPDEST 00003f3c: DUP1 00003f3d: MLOAD 00003f3e: PUSH2 0x3f46 00003f41: DUP2 00003f42: PUSH2 0x2d19 00003f45: JUMP 00003f46: JUMPDEST 00003f47: PUSH2 0x3f4f 00003f4a: DUP2 00003f4b: PUSH2 0x2d19 00003f4e: JUMP 00003f4f: JUMPDEST 00003f50: PUSH2 0x4022 00003f53: JUMPI 00003f54: POP 00003f55: POP 00003f56: DUP1 00003f57: PUSH2 0x3f6d 00003f5a: PUSH2 0x131c 00003f5d: PUSH1 0x20 00003f5f: SWAP4 00003f60: PUSH0 00003f61: MSTORE 00003f62: PUSH1 0x0c 00003f64: PUSH1 0x20 00003f66: MSTORE 00003f67: PUSH1 0x40 00003f69: PUSH0 00003f6a: KECCAK256 00003f6b: SWAP1 00003f6c: JUMP 00003f6d: JUMPDEST 00003f6e: PUSH2 0x3ee8 00003f71: PUSH2 0x0120 00003f74: DUP6 00003f75: ADD 00003f76: SWAP3 00003f77: PUSH2 0x3f89 00003f7a: DUP5 00003f7b: MLOAD 00003f7c: PUSH1 0x01 00003f7e: PUSH1 0x01 00003f80: PUSH1 0x80 00003f82: SHL 00003f83: SUB 00003f84: SWAP1 00003f85: MLOAD 00003f86: AND 00003f87: SWAP1 00003f88: JUMP 00003f89: JUMPDEST 00003f8a: SWAP4 00003f8b: PUSH2 0x3fc3 00003f8e: DUP7 00003f8f: PUSH2 0x3ebc 00003f92: PUSH2 0x3fb4 00003f95: DUP3 00003f96: PUSH2 0x3fa7 00003f99: PUSH1 0x40 00003f9b: DUP14 00003f9c: ADD 00003f9d: MLOAD 00003f9e: PUSH5 0xffffffffff 00003fa4: AND 00003fa5: SWAP1 00003fa6: JUMP 00003fa7: JUMPDEST 00003fa8: SWAP12 00003fa9: ADD 00003faa: MLOAD 00003fab: PUSH5 0xffffffffff 00003fb1: AND 00003fb2: SWAP1 00003fb3: JUMP 00003fb4: JUMPDEST 00003fb5: SWAP5 00003fb6: PUSH0 00003fb7: MSTORE 00003fb8: PUSH1 0x10 00003fba: PUSH1 0x20 00003fbc: MSTORE 00003fbd: PUSH1 0x40 00003fbf: PUSH0 00003fc0: KECCAK256 00003fc1: SWAP1 00003fc2: JUMP 00003fc3: JUMPDEST 00003fc4: PUSH1 0x40 00003fc6: MLOAD 00003fc7: PUSH4 0x13c015db 00003fcc: PUSH1 0xe0 00003fce: SHL 00003fcf: DUP2 00003fd0: MSTORE 00003fd1: PUSH5 0xffffffffff 00003fd7: SWAP6 00003fd8: DUP7 00003fd9: AND 00003fda: PUSH1 0x04 00003fdc: DUP3 00003fdd: ADD 00003fde: MSTORE 00003fdf: PUSH1 0x01 00003fe1: PUSH1 0x01 00003fe3: PUSH1 0x80 00003fe5: SHL 00003fe6: SUB 00003fe7: SWAP7 00003fe8: DUP8 00003fe9: AND 00003fea: PUSH1 0x24 00003fec: DUP3 00003fed: ADD 00003fee: MSTORE 00003fef: SWAP8 00003ff0: DUP6 00003ff1: AND 00003ff2: PUSH1 0x44 00003ff4: DUP10 00003ff5: ADD 00003ff6: MSTORE 00003ff7: SWAP4 00003ff8: SWAP1 00003ff9: SWAP2 00003ffa: AND 00003ffb: PUSH1 0x64 00003ffd: DUP8 00003ffe: ADD 00003fff: MSTORE 00004000: SLOAD 00004001: DUP1 00004002: DUP5 00004003: AND 00004004: PUSH1 0x84 00004006: DUP8 00004007: ADD 00004008: MSTORE 00004009: PUSH1 0x80 0000400b: SHR 0000400c: PUSH1 0xa4 0000400e: DUP7 0000400f: ADD 00004010: MSTORE 00004011: SWAP2 00004012: AND 00004013: PUSH1 0xc4 00004015: DUP5 00004016: ADD 00004017: MSTORE 00004018: DUP3 00004019: SWAP1 0000401a: DUP2 0000401b: SWAP1 0000401c: PUSH1 0xe4 0000401e: DUP3 0000401f: ADD 00004020: SWAP1 00004021: JUMP 00004022: JUMPDEST 00004023: PUSH1 0x02 00004025: SWAP1 00004026: SWAP5 00004027: SWAP4 00004028: SWAP2 00004029: SWAP5 0000402a: MLOAD 0000402b: PUSH2 0x4033 0000402e: DUP2 0000402f: PUSH2 0x2d19 00004032: JUMP 00004033: JUMPDEST 00004034: PUSH2 0x403c 00004037: DUP2 00004038: PUSH2 0x2d19 0000403b: JUMP 0000403c: JUMPDEST 0000403d: EQ 0000403e: PUSH2 0x4045 00004041: JUMPI 00004042: POP 00004043: POP 00004044: JUMP 00004045: JUMPDEST 00004046: PUSH1 0x20 00004048: SWAP2 00004049: SWAP3 0000404a: SWAP4 0000404b: POP 0000404c: PUSH2 0x4062 0000404f: PUSH2 0x0120 00004052: DUP3 00004053: ADD 00004054: MLOAD 00004055: PUSH1 0x01 00004057: PUSH1 0x01 00004059: PUSH1 0x80 0000405b: SHL 0000405c: SUB 0000405d: SWAP1 0000405e: MLOAD 0000405f: AND 00004060: SWAP1 00004061: JUMP 00004062: JUMPDEST 00004063: PUSH2 0x3ee8 00004066: PUSH2 0x409a 00004069: PUSH2 0x408b 0000406c: DUP6 0000406d: PUSH2 0x407e 00004070: PUSH1 0x40 00004072: DUP8 00004073: ADD 00004074: MLOAD 00004075: PUSH5 0xffffffffff 0000407b: AND 0000407c: SWAP1 0000407d: JUMP 0000407e: JUMPDEST 0000407f: SWAP6 00004080: ADD 00004081: MLOAD 00004082: PUSH5 0xffffffffff 00004088: AND 00004089: SWAP1 0000408a: JUMP 0000408b: JUMPDEST 0000408c: SWAP6 0000408d: PUSH0 0000408e: MSTORE 0000408f: PUSH1 0x0f 00004091: PUSH1 0x20 00004093: MSTORE 00004094: PUSH1 0x40 00004096: PUSH0 00004097: KECCAK256 00004098: SWAP1 00004099: JUMP 0000409a: JUMPDEST 0000409b: PUSH1 0x40 0000409d: MLOAD 0000409e: PUSH4 0x3796f97b 000040a3: PUSH1 0xe0 000040a5: SHL 000040a6: DUP2 000040a7: MSTORE 000040a8: SWAP6 000040a9: DUP7 000040aa: SWAP5 000040ab: DUP6 000040ac: SWAP5 000040ad: PUSH1 0x04 000040af: DUP7 000040b0: ADD 000040b1: PUSH2 0x3ccb 000040b4: JUMP 000040b5: JUMPDEST 000040b6: POP 000040b7: POP 000040b8: PUSH2 0x0120 000040bb: PUSH2 0x0524 000040be: SWAP2 000040bf: ADD 000040c0: MLOAD 000040c1: PUSH2 0x07f9 000040c4: PUSH1 0x40 000040c6: PUSH2 0x40d6 000040c9: DUP4 000040ca: MLOAD 000040cb: PUSH1 0x01 000040cd: PUSH1 0x01 000040cf: PUSH1 0x80 000040d1: SHL 000040d2: SUB 000040d3: AND 000040d4: SWAP1 000040d5: JUMP 000040d6: JUMPDEST 000040d7: SWAP3 000040d8: ADD 000040d9: MLOAD 000040da: PUSH1 0x01 000040dc: PUSH1 0x01 000040de: PUSH1 0x80 000040e0: SHL 000040e1: SUB 000040e2: AND 000040e3: SWAP1 000040e4: JUMP 000040e5: JUMPDEST 000040e6: PUSH2 0x40fc 000040e9: PUSH1 0x01 000040eb: PUSH2 0x2679 000040ee: DUP4 000040ef: PUSH0 000040f0: MSTORE 000040f1: PUSH1 0x0e 000040f3: PUSH1 0x20 000040f5: MSTORE 000040f6: PUSH1 0x40 000040f8: PUSH0 000040f9: KECCAK256 000040fa: SWAP1 000040fb: JUMP 000040fc: JUMPDEST 000040fd: ISZERO 000040fe: PUSH2 0x4107 00004101: JUMPI 00004102: POP 00004103: PUSH1 0x04 00004105: SWAP1 00004106: JUMP 00004107: JUMPDEST 00004108: PUSH2 0x411c 0000410b: PUSH2 0x0c16 0000410e: DUP3 0000410f: PUSH0 00004110: MSTORE 00004111: PUSH1 0x0e 00004113: PUSH1 0x20 00004115: MSTORE 00004116: PUSH1 0x40 00004118: PUSH0 00004119: KECCAK256 0000411a: SWAP1 0000411b: JUMP 0000411c: JUMPDEST 0000411d: PUSH2 0x41a8 00004120: JUMPI 00004121: PUSH2 0x4146 00004124: PUSH2 0x22da 00004127: PUSH2 0x4138 0000412a: DUP4 0000412b: PUSH0 0000412c: MSTORE 0000412d: PUSH1 0x0e 0000412f: PUSH1 0x20 00004131: MSTORE 00004132: PUSH1 0x40 00004134: PUSH0 00004135: KECCAK256 00004136: SWAP1 00004137: JUMP 00004138: JUMPDEST 00004139: SLOAD 0000413a: PUSH1 0xa0 0000413c: SHR 0000413d: PUSH5 0xffffffffff 00004143: AND 00004144: SWAP1 00004145: JUMP 00004146: JUMPDEST 00004147: TIMESTAMP 00004148: LT 00004149: PUSH2 0x41a3 0000414c: JUMPI 0000414d: PUSH1 0x01 0000414f: PUSH1 0x01 00004151: PUSH1 0x80 00004153: SHL 00004154: SUB 00004155: PUSH2 0x4191 00004158: PUSH2 0x4185 0000415b: PUSH1 0x02 0000415d: PUSH2 0x4177 00004160: PUSH2 0x4168 00004163: DUP7 00004164: PUSH2 0x3df4 00004167: JUMP 00004168: JUMPDEST 00004169: SWAP6 0000416a: PUSH0 0000416b: MSTORE 0000416c: PUSH1 0x0e 0000416e: PUSH1 0x20 00004170: MSTORE 00004171: PUSH1 0x40 00004173: PUSH0 00004174: KECCAK256 00004175: SWAP1 00004176: JUMP 00004177: JUMPDEST 00004178: ADD 00004179: SLOAD 0000417a: PUSH1 0x01 0000417c: PUSH1 0x01 0000417e: PUSH1 0x80 00004180: SHL 00004181: SUB 00004182: AND 00004183: SWAP1 00004184: JUMP 00004185: JUMPDEST 00004186: PUSH1 0x01 00004188: PUSH1 0x01 0000418a: PUSH1 0x80 0000418c: SHL 0000418d: SUB 0000418e: AND 0000418f: SWAP1 00004190: JUMP 00004191: JUMPDEST 00004192: SWAP2 00004193: AND 00004194: LT 00004195: ISZERO 00004196: PUSH2 0x419e 00004199: JUMPI 0000419a: PUSH1 0x01 0000419c: SWAP1 0000419d: JUMP 0000419e: JUMPDEST 0000419f: PUSH1 0x02 000041a1: SWAP1 000041a2: JUMP 000041a3: JUMPDEST 000041a4: POP 000041a5: PUSH0 000041a6: SWAP1 000041a7: JUMP 000041a8: JUMPDEST 000041a9: POP 000041aa: PUSH1 0x03 000041ac: SWAP1 000041ad: JUMP 000041ae: JUMPDEST 000041af: DUP2 000041b0: PUSH0 000041b1: MSTORE 000041b2: PUSH1 0x03 000041b4: PUSH1 0x20 000041b6: MSTORE 000041b7: PUSH1 0x01 000041b9: PUSH1 0x01 000041bb: PUSH1 0xa0 000041bd: SHL 000041be: SUB 000041bf: PUSH1 0x40 000041c1: PUSH0 000041c2: KECCAK256 000041c3: SLOAD 000041c4: AND 000041c5: ISZERO 000041c6: ISZERO 000041c7: DUP1 000041c8: PUSH2 0x423b 000041cb: JUMPI 000041cc: JUMPDEST 000041cd: DUP1 000041ce: PUSH2 0x4218 000041d1: JUMPI 000041d2: JUMPDEST 000041d3: PUSH2 0x4205 000041d6: JUMPI 000041d7: PUSH2 0x0524 000041da: SWAP2 000041db: PUSH0 000041dc: SWAP2 000041dd: PUSH0 000041de: MLOAD 000041df: PUSH1 0x20 000041e1: PUSH2 0x5a20 000041e4: PUSH0 000041e5: CODECOPY 000041e6: PUSH0 000041e7: MLOAD 000041e8: SWAP1 000041e9: PUSH0 000041ea: MSTORE 000041eb: PUSH1 0x40 000041ed: MLOAD 000041ee: DUP1 000041ef: PUSH2 0x41fd 000041f2: DUP6 000041f3: DUP3 000041f4: SWAP2 000041f5: SWAP1 000041f6: PUSH1 0x20 000041f8: DUP4 000041f9: ADD 000041fa: SWAP3 000041fb: MSTORE 000041fc: JUMP 000041fd: JUMPDEST 000041fe: SUB 000041ff: SWAP1 00004200: LOG1 00004201: PUSH2 0x5384 00004204: JUMP 00004205: JUMPDEST 00004206: POP 00004207: PUSH4 0x4274c8e1 0000420c: PUSH1 0xe1 0000420e: SHL 0000420f: PUSH0 00004210: MSTORE 00004211: PUSH1 0x04 00004213: MSTORE 00004214: PUSH1 0x24 00004216: PUSH0 00004217: REVERT 00004218: JUMPDEST 00004219: POP 0000421a: PUSH1 0xff 0000421c: PUSH1 0x01 0000421e: PUSH2 0x422f 00004221: DUP5 00004222: PUSH0 00004223: MSTORE 00004224: PUSH1 0x0e 00004226: PUSH1 0x20 00004228: MSTORE 00004229: PUSH1 0x40 0000422b: PUSH0 0000422c: KECCAK256 0000422d: SWAP1 0000422e: JUMP 0000422f: JUMPDEST 00004230: ADD 00004231: SLOAD 00004232: PUSH1 0xa8 00004234: SHR 00004235: AND 00004236: ISZERO 00004237: PUSH2 0x41d2 0000423a: JUMP 0000423b: JUMPDEST 0000423c: POP 0000423d: PUSH1 0x01 0000423f: PUSH1 0x01 00004241: PUSH1 0xa0 00004243: SHL 00004244: SUB 00004245: DUP2 00004246: AND 00004247: ISZERO 00004248: ISZERO 00004249: PUSH2 0x41cc 0000424c: JUMP 0000424d: JUMPDEST 0000424e: PUSH1 0x01 00004250: PUSH1 0x01 00004252: PUSH1 0xa0 00004254: SHL 00004255: SUB 00004256: PUSH0 00004257: SLOAD 00004258: AND 00004259: DUP1 0000425a: CALLER 0000425b: SUB 0000425c: PUSH2 0x4262 0000425f: JUMPI 00004260: POP 00004261: JUMP 00004262: JUMPDEST 00004263: PUSH4 0x53f0a8cf 00004268: PUSH1 0xe1 0000426a: SHL 0000426b: PUSH0 0000426c: MSTORE 0000426d: PUSH1 0x04 0000426f: MSTORE 00004270: CALLER 00004271: PUSH1 0x24 00004273: MSTORE 00004274: PUSH1 0x44 00004276: PUSH0 00004277: REVERT 00004278: JUMPDEST 00004279: PUSH1 0x01 0000427b: PUSH1 0x01 0000427d: PUSH1 0xa0 0000427f: SHL 00004280: SUB 00004281: PUSH32 0x000000000000000000000000cf8ce57fa442ba50acbc57147a62ad03873ffa73 000042a2: AND 000042a3: ADDRESS 000042a4: SUB 000042a5: PUSH2 0x42aa 000042a8: JUMPI 000042a9: JUMP 000042aa: JUMPDEST 000042ab: PUSH4 0xa1c0d6e5 000042b0: PUSH1 0xe0 000042b2: SHL 000042b3: PUSH0 000042b4: MSTORE 000042b5: PUSH1 0x04 000042b7: PUSH0 000042b8: REVERT 000042b9: JUMPDEST 000042ba: SWAP1 000042bb: PUSH2 0x42c3 000042be: DUP3 000042bf: PUSH2 0x3df4 000042c2: JUMP 000042c3: JUMPDEST 000042c4: SWAP2 000042c5: PUSH2 0x42db 000042c8: PUSH1 0x02 000042ca: PUSH2 0x3cc0 000042cd: DUP4 000042ce: PUSH0 000042cf: MSTORE 000042d0: PUSH1 0x0e 000042d2: PUSH1 0x20 000042d4: MSTORE 000042d5: PUSH1 0x40 000042d7: PUSH0 000042d8: KECCAK256 000042d9: SWAP1 000042da: JUMP 000042db: JUMPDEST 000042dc: SWAP3 000042dd: PUSH2 0x42f0 000042e0: PUSH2 0x4185 000042e3: DUP6 000042e4: MLOAD 000042e5: PUSH1 0x01 000042e7: PUSH1 0x01 000042e9: PUSH1 0x80 000042eb: SHL 000042ec: SUB 000042ed: AND 000042ee: SWAP1 000042ef: JUMP 000042f0: JUMPDEST 000042f1: PUSH1 0x01 000042f3: PUSH1 0x01 000042f5: PUSH1 0x80 000042f7: SHL 000042f8: SUB 000042f9: DUP3 000042fa: AND 000042fb: LT 000042fc: ISZERO 000042fd: PUSH2 0x45db 00004300: JUMPI 00004301: PUSH2 0x4318 00004304: PUSH2 0x0d71 00004307: PUSH2 0x16f3 0000430a: DUP5 0000430b: PUSH0 0000430c: MSTORE 0000430d: PUSH1 0x0e 0000430f: PUSH1 0x20 00004311: MSTORE 00004312: PUSH1 0x40 00004314: PUSH0 00004315: KECCAK256 00004316: SWAP1 00004317: JUMP 00004318: JUMPDEST 00004319: PUSH2 0x45c7 0000431c: JUMPI 0000431d: DUP1 0000431e: PUSH2 0x07f9 00004321: PUSH1 0x20 00004323: PUSH2 0x4347 00004326: PUSH2 0x4356 00004329: SWAP5 0000432a: PUSH2 0x433a 0000432d: DUP10 0000432e: MLOAD 0000432f: PUSH1 0x01 00004331: PUSH1 0x01 00004333: PUSH1 0x80 00004335: SHL 00004336: SUB 00004337: AND 00004338: SWAP1 00004339: JUMP 0000433a: JUMPDEST 0000433b: SUB 0000433c: PUSH1 0x01 0000433e: PUSH1 0x01 00004340: PUSH1 0x80 00004342: SHL 00004343: SUB 00004344: AND 00004345: SWAP1 00004346: JUMP 00004347: JUMPDEST 00004348: SWAP7 00004349: ADD 0000434a: MLOAD 0000434b: PUSH1 0x01 0000434d: PUSH1 0x01 0000434f: PUSH1 0x80 00004351: SHL 00004352: SUB 00004353: AND 00004354: SWAP1 00004355: JUMP 00004356: JUMPDEST 00004357: PUSH2 0x4380 0000435a: PUSH2 0x436b 0000435d: DUP4 0000435e: PUSH0 0000435f: MSTORE 00004360: PUSH1 0x0e 00004362: PUSH1 0x20 00004364: MSTORE 00004365: PUSH1 0x40 00004367: PUSH0 00004368: KECCAK256 00004369: SWAP1 0000436a: JUMP 0000436b: JUMPDEST 0000436c: DUP1 0000436d: SLOAD 0000436e: PUSH1 0x01 00004370: PUSH1 0x01 00004372: PUSH1 0xf8 00004374: SHL 00004375: SUB 00004376: AND 00004377: PUSH1 0x01 00004379: PUSH1 0xf8 0000437b: SHL 0000437c: OR 0000437d: SWAP1 0000437e: SSTORE 0000437f: JUMP 00004380: JUMPDEST 00004381: PUSH2 0x4395 00004384: PUSH2 0x1716 00004387: DUP4 00004388: PUSH0 00004389: MSTORE 0000438a: PUSH1 0x0e 0000438c: PUSH1 0x20 0000438e: MSTORE 0000438f: PUSH1 0x40 00004391: PUSH0 00004392: KECCAK256 00004393: SWAP1 00004394: JUMP 00004395: JUMPDEST 00004396: PUSH1 0x01 00004398: PUSH1 0x01 0000439a: PUSH1 0x80 0000439c: SHL 0000439d: SUB 0000439e: DUP2 0000439f: AND 000043a0: ISZERO 000043a1: PUSH2 0x4597 000043a4: JUMPI 000043a5: JUMPDEST 000043a6: PUSH2 0x43d9 000043a9: DUP5 000043aa: PUSH1 0x03 000043ac: PUSH2 0x43bd 000043af: DUP6 000043b0: PUSH0 000043b1: MSTORE 000043b2: PUSH1 0x0e 000043b4: PUSH1 0x20 000043b6: MSTORE 000043b7: PUSH1 0x40 000043b9: PUSH0 000043ba: KECCAK256 000043bb: SWAP1 000043bc: JUMP 000043bd: JUMPDEST 000043be: ADD 000043bf: SWAP1 000043c0: PUSH1 0x01 000043c2: PUSH1 0x01 000043c4: PUSH1 0x80 000043c6: SHL 000043c7: SUB 000043c8: AND 000043c9: PUSH1 0x01 000043cb: PUSH1 0x01 000043cd: PUSH1 0x80 000043cf: SHL 000043d0: SUB 000043d1: NOT 000043d2: DUP3 000043d3: SLOAD 000043d4: AND 000043d5: OR 000043d6: SWAP1 000043d7: SSTORE 000043d8: JUMP 000043d9: JUMPDEST 000043da: PUSH2 0x43ee 000043dd: PUSH2 0x0c39 000043e0: DUP4 000043e1: PUSH0 000043e2: MSTORE 000043e3: PUSH1 0x0e 000043e5: PUSH1 0x20 000043e7: MSTORE 000043e8: PUSH1 0x40 000043ea: PUSH0 000043eb: KECCAK256 000043ec: SWAP1 000043ed: JUMP 000043ee: JUMPDEST 000043ef: SWAP2 000043f0: DUP5 000043f1: PUSH2 0x4405 000043f4: PUSH2 0x0c39 000043f7: DUP4 000043f8: PUSH0 000043f9: MSTORE 000043fa: PUSH1 0x03 000043fc: PUSH1 0x20 000043fe: MSTORE 000043ff: PUSH1 0x40 00004401: PUSH0 00004402: KECCAK256 00004403: SWAP1 00004404: JUMP 00004405: JUMPDEST 00004406: SWAP4 00004407: PUSH2 0x442b 0000440a: PUSH1 0x01 0000440c: PUSH2 0x441d 0000440f: DUP6 00004410: PUSH0 00004411: MSTORE 00004412: PUSH1 0x0e 00004414: PUSH1 0x20 00004416: MSTORE 00004417: PUSH1 0x40 00004419: PUSH0 0000441a: KECCAK256 0000441b: SWAP1 0000441c: JUMP 0000441d: JUMPDEST 0000441e: ADD 0000441f: SLOAD 00004420: PUSH1 0x01 00004422: PUSH1 0x01 00004424: PUSH1 0xa0 00004426: SHL 00004427: SUB 00004428: AND 00004429: SWAP1 0000442a: JUMP 0000442b: JUMPDEST 0000442c: SWAP1 0000442d: PUSH2 0x4461 00004430: PUSH1 0x01 00004432: PUSH1 0x01 00004434: PUSH1 0x80 00004436: SHL 00004437: SUB 00004438: DUP5 00004439: AND 0000443a: PUSH2 0x4454 0000443d: DUP5 0000443e: PUSH1 0x01 00004440: PUSH1 0x01 00004442: PUSH1 0xa0 00004444: SHL 00004445: SUB 00004446: AND 00004447: PUSH0 00004448: MSTORE 00004449: PUSH1 0x07 0000444b: PUSH1 0x20 0000444d: MSTORE 0000444e: PUSH1 0x40 00004450: PUSH0 00004451: KECCAK256 00004452: SWAP1 00004453: JUMP 00004454: JUMPDEST 00004455: DUP2 00004456: DUP2 00004457: SLOAD 00004458: SUB 00004459: SWAP1 0000445a: SSTORE 0000445b: DUP3 0000445c: DUP5 0000445d: PUSH2 0x468c 00004460: JUMP 00004461: JUMPDEST 00004462: PUSH1 0x40 00004464: DUP1 00004465: MLOAD 00004466: DUP6 00004467: DUP2 00004468: MSTORE 00004469: PUSH1 0x01 0000446b: PUSH1 0x01 0000446d: PUSH1 0x80 0000446f: SHL 00004470: SUB 00004471: DUP6 00004472: DUP2 00004473: AND 00004474: PUSH1 0x20 00004476: DUP4 00004477: ADD 00004478: MSTORE 00004479: DUP8 0000447a: AND 0000447b: SWAP2 0000447c: DUP2 0000447d: ADD 0000447e: SWAP2 0000447f: SWAP1 00004480: SWAP2 00004481: MSTORE 00004482: PUSH1 0x01 00004484: PUSH1 0x01 00004486: PUSH1 0xa0 00004488: SHL 00004489: SUB 0000448a: DUP8 0000448b: DUP2 0000448c: AND 0000448d: SWAP4 0000448e: DUP2 0000448f: AND 00004490: SWAP2 00004491: DUP5 00004492: SWAP2 00004493: DUP5 00004494: AND 00004495: SWAP1 00004496: PUSH32 0x5edb27d6c1a327513b90a792050debf074b7194444885e3144d4decc5caaaa50 000044b7: SWAP1 000044b8: PUSH1 0x60 000044ba: SWAP1 000044bb: LOG4 000044bc: PUSH1 0x40 000044be: MLOAD 000044bf: DUP5 000044c0: DUP2 000044c1: MSTORE 000044c2: PUSH0 000044c3: MLOAD 000044c4: PUSH1 0x20 000044c6: PUSH2 0x5a20 000044c9: PUSH0 000044ca: CODECOPY 000044cb: PUSH0 000044cc: MLOAD 000044cd: SWAP1 000044ce: PUSH0 000044cf: MSTORE 000044d0: SWAP1 000044d1: PUSH1 0x20 000044d3: SWAP1 000044d4: LOG1 000044d5: PUSH2 0x44f2 000044d8: PUSH2 0x27da 000044db: DUP8 000044dc: PUSH1 0x01 000044de: PUSH1 0x01 000044e0: PUSH1 0xa0 000044e2: SHL 000044e3: SUB 000044e4: AND 000044e5: PUSH0 000044e6: MSTORE 000044e7: PUSH1 0x0b 000044e9: PUSH1 0x20 000044eb: MSTORE 000044ec: PUSH1 0x40 000044ee: PUSH0 000044ef: KECCAK256 000044f0: SWAP1 000044f1: JUMP 000044f2: JUMPDEST 000044f3: PUSH2 0x44ff 000044f6: JUMPI 000044f7: JUMPDEST 000044f8: POP 000044f9: POP 000044fa: POP 000044fb: POP 000044fc: POP 000044fd: POP 000044fe: JUMP 000044ff: JUMPDEST 00004500: PUSH1 0x40 00004502: MLOAD 00004503: PUSH4 0x0d4af11f 00004508: PUSH1 0xe3 0000450a: SHL 0000450b: DUP2 0000450c: MSTORE 0000450d: PUSH1 0x04 0000450f: DUP2 00004510: ADD 00004511: SWAP5 00004512: SWAP1 00004513: SWAP5 00004514: MSTORE 00004515: PUSH1 0x01 00004517: PUSH1 0x01 00004519: PUSH1 0xa0 0000451b: SHL 0000451c: SUB 0000451d: AND 0000451e: PUSH1 0x24 00004520: DUP5 00004521: ADD 00004522: MSTORE 00004523: PUSH1 0x01 00004525: PUSH1 0x01 00004527: PUSH1 0x80 00004529: SHL 0000452a: SUB 0000452b: SWAP2 0000452c: DUP3 0000452d: AND 0000452e: PUSH1 0x44 00004530: DUP5 00004531: ADD 00004532: MSTORE 00004533: SWAP3 00004534: AND 00004535: PUSH1 0x64 00004537: DUP3 00004538: ADD 00004539: MSTORE 0000453a: SWAP1 0000453b: PUSH1 0x20 0000453d: SWAP1 0000453e: DUP3 0000453f: SWAP1 00004540: PUSH1 0x84 00004542: SWAP1 00004543: DUP3 00004544: SWAP1 00004545: PUSH0 00004546: SWAP1 00004547: GAS 00004548: CALL 00004549: SWAP1 0000454a: DUP2 0000454b: ISZERO 0000454c: PUSH2 0x0bae 0000454f: JUMPI 00004550: PUSH0 00004551: SWAP2 00004552: PUSH2 0x4578 00004555: JUMPI 00004556: JUMPDEST 00004557: POP 00004558: PUSH1 0x01 0000455a: PUSH1 0x01 0000455c: PUSH1 0xe0 0000455e: SHL 0000455f: SUB 00004560: NOT 00004561: AND 00004562: PUSH4 0x12b50ee1 00004567: PUSH1 0xe3 00004569: SHL 0000456a: ADD 0000456b: PUSH2 0x2781 0000456e: JUMPI 0000456f: DUP1 00004570: DUP1 00004571: DUP5 00004572: DUP2 00004573: DUP1 00004574: PUSH2 0x44f7 00004577: JUMP 00004578: JUMPDEST 00004579: PUSH2 0x4591 0000457c: SWAP2 0000457d: POP 0000457e: PUSH1 0x20 00004580: RETURNDATASIZE 00004581: PUSH1 0x20 00004583: GT 00004584: PUSH2 0x1cd2 00004587: JUMPI 00004588: PUSH2 0x1cc4 0000458b: DUP2 0000458c: DUP4 0000458d: PUSH2 0x240b 00004590: JUMP 00004591: JUMPDEST 00004592: PUSH0 00004593: PUSH2 0x4556 00004596: JUMP 00004597: JUMPDEST 00004598: PUSH2 0x45c2 0000459b: PUSH1 0x01 0000459d: PUSH2 0x45ae 000045a0: DUP5 000045a1: PUSH0 000045a2: MSTORE 000045a3: PUSH1 0x0e 000045a5: PUSH1 0x20 000045a7: MSTORE 000045a8: PUSH1 0x40 000045aa: PUSH0 000045ab: KECCAK256 000045ac: SWAP1 000045ad: JUMP 000045ae: JUMPDEST 000045af: ADD 000045b0: DUP1 000045b1: SLOAD 000045b2: PUSH1 0xff 000045b4: PUSH1 0xa0 000045b6: SHL 000045b7: NOT 000045b8: AND 000045b9: PUSH1 0x01 000045bb: PUSH1 0xa0 000045bd: SHL 000045be: OR 000045bf: SWAP1 000045c0: SSTORE 000045c1: JUMP 000045c2: JUMPDEST 000045c3: PUSH2 0x43a5 000045c6: JUMP 000045c7: JUMPDEST 000045c8: PUSH4 0x5dd950cb 000045cd: PUSH1 0xe1 000045cf: SHL 000045d0: PUSH0 000045d1: MSTORE 000045d2: PUSH1 0x04 000045d4: DUP3 000045d5: SWAP1 000045d6: MSTORE 000045d7: PUSH1 0x24 000045d9: PUSH0 000045da: REVERT 000045db: JUMPDEST 000045dc: PUSH4 0x08aca53f 000045e1: PUSH1 0xe2 000045e3: SHL 000045e4: PUSH0 000045e5: MSTORE 000045e6: PUSH1 0x04 000045e8: DUP3 000045e9: SWAP1 000045ea: MSTORE 000045eb: PUSH1 0x24 000045ed: PUSH0 000045ee: REVERT 000045ef: JUMPDEST 000045f0: PUSH2 0x0524 000045f3: SWAP2 000045f4: CALLER 000045f5: SWAP1 000045f6: PUSH2 0x54b0 000045f9: JUMP 000045fa: JUMPDEST 000045fb: DUP1 000045fc: PUSH0 000045fd: MSTORE 000045fe: PUSH1 0x03 00004600: PUSH1 0x20 00004602: MSTORE 00004603: PUSH1 0x01 00004605: PUSH1 0x01 00004607: PUSH1 0xa0 00004609: SHL 0000460a: SUB 0000460b: PUSH1 0x40 0000460d: PUSH0 0000460e: KECCAK256 0000460f: SLOAD 00004610: AND 00004611: ISZERO 00004612: ISZERO 00004613: DUP1 00004614: PUSH2 0x4685 00004617: JUMPI 00004618: JUMPDEST 00004619: DUP1 0000461a: PUSH2 0x4667 0000461d: JUMPI 0000461e: JUMPDEST 0000461f: PUSH2 0x4655 00004622: JUMPI 00004623: PUSH0 00004624: MLOAD 00004625: PUSH1 0x20 00004627: PUSH2 0x5a20 0000462a: PUSH0 0000462b: CODECOPY 0000462c: PUSH0 0000462d: MLOAD 0000462e: SWAP1 0000462f: PUSH0 00004630: MSTORE 00004631: PUSH1 0x20 00004633: PUSH1 0x40 00004635: MLOAD 00004636: DUP4 00004637: DUP2 00004638: MSTORE 00004639: LOG1 0000463a: PUSH1 0x01 0000463c: PUSH1 0x01 0000463e: PUSH1 0xa0 00004640: SHL 00004641: SUB 00004642: PUSH2 0x464c 00004645: PUSH0 00004646: DUP4 00004647: DUP2 00004648: PUSH2 0x5384 0000464b: JUMP 0000464c: JUMPDEST 0000464d: AND 0000464e: ISZERO 0000464f: PUSH2 0x3b44 00004652: JUMPI 00004653: POP 00004654: JUMP 00004655: JUMPDEST 00004656: PUSH4 0x4274c8e1 0000465b: PUSH1 0xe1 0000465d: SHL 0000465e: PUSH0 0000465f: MSTORE 00004660: PUSH1 0x04 00004662: MSTORE 00004663: PUSH1 0x24 00004665: PUSH0 00004666: REVERT 00004667: JUMPDEST 00004668: POP 00004669: PUSH2 0x467f 0000466c: PUSH1 0x01 0000466e: PUSH2 0x34b7 00004671: DUP4 00004672: PUSH0 00004673: MSTORE 00004674: PUSH1 0x0e 00004676: PUSH1 0x20 00004678: MSTORE 00004679: PUSH1 0x40 0000467b: PUSH0 0000467c: KECCAK256 0000467d: SWAP1 0000467e: JUMP 0000467f: JUMPDEST 00004680: ISZERO 00004681: PUSH2 0x461e 00004684: JUMP 00004685: JUMPDEST 00004686: POP 00004687: PUSH0 00004688: PUSH2 0x4618 0000468b: JUMP 0000468c: JUMPDEST 0000468d: PUSH2 0x243b 00004690: SWAP3 00004691: PUSH1 0x01 00004693: PUSH1 0x01 00004695: PUSH1 0xa0 00004697: SHL 00004698: SUB 00004699: PUSH1 0x40 0000469b: MLOAD 0000469c: SWAP4 0000469d: PUSH4 0xa9059cbb 000046a2: PUSH1 0xe0 000046a4: SHL 000046a5: PUSH1 0x20 000046a7: DUP7 000046a8: ADD 000046a9: MSTORE 000046aa: AND 000046ab: PUSH1 0x24 000046ad: DUP5 000046ae: ADD 000046af: MSTORE 000046b0: PUSH1 0x44 000046b2: DUP4 000046b3: ADD 000046b4: MSTORE 000046b5: PUSH1 0x44 000046b7: DUP3 000046b8: MSTORE 000046b9: PUSH2 0x46c3 000046bc: PUSH1 0x64 000046be: DUP4 000046bf: PUSH2 0x240b 000046c2: JUMP 000046c3: JUMPDEST 000046c4: PUSH2 0x554f 000046c7: JUMP 000046c8: JUMPDEST 000046c9: SWAP5 000046ca: PUSH2 0x4740 000046cd: SWAP1 000046ce: PUSH1 0x01 000046d0: PUSH1 0x01 000046d2: PUSH1 0x80 000046d4: SHL 000046d5: SUB 000046d6: PUSH1 0x01 000046d8: PUSH1 0x01 000046da: PUSH1 0xa0 000046dc: SHL 000046dd: SUB 000046de: SWAP7 000046df: PUSH5 0xffffffffff 000046e5: PUSH2 0x0524 000046e8: SWAP13 000046e9: SWAP12 000046ea: SWAP8 000046eb: PUSH2 0x4715 000046ee: DUP11 000046ef: SWAP9 000046f0: DUP10 000046f1: PUSH2 0x0140 000046f4: SWAP15 000046f5: SWAP10 000046f6: AND 000046f7: DUP14 000046f8: MSTORE 000046f9: PUSH1 0x20 000046fb: DUP14 000046fc: ADD 000046fd: SWAP1 000046fe: PUSH5 0xffffffffff 00004704: PUSH1 0x20 00004706: DUP1 00004707: SWAP3 00004708: DUP3 00004709: DUP2 0000470a: MLOAD 0000470b: AND 0000470c: DUP6 0000470d: MSTORE 0000470e: ADD 0000470f: MLOAD 00004710: AND 00004711: SWAP2 00004712: ADD 00004713: MSTORE 00004714: JUMP 00004715: JUMPDEST 00004716: AND 00004717: PUSH1 0x60 00004719: DUP11 0000471a: ADD 0000471b: MSTORE 0000471c: AND 0000471d: PUSH1 0x80 0000471f: DUP9 00004720: ADD 00004721: MSTORE 00004722: PUSH1 0xa0 00004724: DUP8 00004725: ADD 00004726: SWAP1 00004727: PUSH1 0x01 00004729: PUSH1 0x01 0000472b: PUSH1 0x80 0000472d: SHL 0000472e: SUB 0000472f: PUSH1 0x20 00004731: DUP1 00004732: SWAP3 00004733: DUP3 00004734: DUP2 00004735: MLOAD 00004736: AND 00004737: DUP6 00004738: MSTORE 00004739: ADD 0000473a: MLOAD 0000473b: AND 0000473c: SWAP2 0000473d: ADD 0000473e: MSTORE 0000473f: JUMP 00004740: JUMPDEST 00004741: AND 00004742: PUSH1 0xe0 00004744: DUP5 00004745: ADD 00004746: MSTORE 00004747: AND 00004748: PUSH2 0x0100 0000474b: DUP3 0000474c: ADD 0000474d: MSTORE 0000474e: DUP2 0000474f: PUSH2 0x0120 00004752: DUP3 00004753: ADD 00004754: MSTORE 00004755: ADD 00004756: SWAP1 00004757: PUSH2 0x04ee 0000475a: JUMP 0000475b: JUMPDEST 0000475c: PUSH4 0x4e487b71 00004761: PUSH1 0xe0 00004763: SHL 00004764: PUSH0 00004765: MSTORE 00004766: PUSH0 00004767: PUSH1 0x04 00004769: MSTORE 0000476a: PUSH1 0x24 0000476c: PUSH0 0000476d: REVERT 0000476e: JUMPDEST 0000476f: SWAP1 00004770: PUSH2 0x0140 00004773: PUSH2 0x0100 00004776: PUSH2 0x0524 00004779: SWAP4 0000477a: PUSH2 0x478c 0000477d: DUP5 0000477e: DUP3 0000477f: MLOAD 00004780: PUSH1 0x01 00004782: PUSH1 0x01 00004784: PUSH1 0xa0 00004786: SHL 00004787: SUB 00004788: AND 00004789: SWAP1 0000478a: MSTORE 0000478b: JUMP 0000478c: JUMPDEST 0000478d: PUSH1 0x20 0000478f: DUP2 00004790: DUP2 00004791: ADD 00004792: MLOAD 00004793: PUSH1 0x01 00004795: PUSH1 0x01 00004797: PUSH1 0xa0 00004799: SHL 0000479a: SUB 0000479b: AND 0000479c: SWAP1 0000479d: DUP6 0000479e: ADD 0000479f: MSTORE 000047a0: PUSH1 0x40 000047a2: DUP2 000047a3: DUP2 000047a4: ADD 000047a5: MLOAD 000047a6: PUSH1 0x01 000047a8: PUSH1 0x01 000047aa: PUSH1 0xa0 000047ac: SHL 000047ad: SUB 000047ae: AND 000047af: SWAP1 000047b0: DUP6 000047b1: ADD 000047b2: MSTORE 000047b3: PUSH1 0x60 000047b5: DUP2 000047b6: DUP2 000047b7: ADD 000047b8: MLOAD 000047b9: PUSH1 0x01 000047bb: PUSH1 0x01 000047bd: PUSH1 0x80 000047bf: SHL 000047c0: SUB 000047c1: AND 000047c2: SWAP1 000047c3: DUP6 000047c4: ADD 000047c5: MSTORE 000047c6: PUSH1 0x80 000047c8: DUP2 000047c9: DUP2 000047ca: ADD 000047cb: MLOAD 000047cc: PUSH1 0x01 000047ce: PUSH1 0x01 000047d0: PUSH1 0xa0 000047d2: SHL 000047d3: SUB 000047d4: AND 000047d5: SWAP1 000047d6: DUP6 000047d7: ADD 000047d8: MSTORE 000047d9: PUSH1 0xa0 000047db: DUP2 000047dc: DUP2 000047dd: ADD 000047de: MLOAD 000047df: ISZERO 000047e0: ISZERO 000047e1: SWAP1 000047e2: DUP6 000047e3: ADD 000047e4: MSTORE 000047e5: PUSH1 0xc0 000047e7: DUP2 000047e8: DUP2 000047e9: ADD 000047ea: MLOAD 000047eb: ISZERO 000047ec: ISZERO 000047ed: SWAP1 000047ee: DUP6 000047ef: ADD 000047f0: MSTORE 000047f1: PUSH2 0x4815 000047f4: PUSH1 0xe0 000047f6: DUP3 000047f7: ADD 000047f8: MLOAD 000047f9: PUSH1 0xe0 000047fb: DUP7 000047fc: ADD 000047fd: SWAP1 000047fe: PUSH5 0xffffffffff 00004804: PUSH1 0x20 00004806: DUP1 00004807: SWAP3 00004808: DUP3 00004809: DUP2 0000480a: MLOAD 0000480b: AND 0000480c: DUP6 0000480d: MSTORE 0000480e: ADD 0000480f: MLOAD 00004810: AND 00004811: SWAP2 00004812: ADD 00004813: MSTORE 00004814: JUMP 00004815: JUMPDEST 00004816: ADD 00004817: MLOAD 00004818: SWAP2 00004819: DUP2 0000481a: PUSH2 0x0120 0000481d: DUP3 0000481e: ADD 0000481f: MSTORE 00004820: ADD 00004821: SWAP1 00004822: PUSH2 0x04ee 00004825: JUMP 00004826: JUMPDEST 00004827: PUSH1 0x40 00004829: SWAP1 0000482a: PUSH5 0xffffffffff 00004830: PUSH2 0x4847 00004833: PUSH2 0x243b 00004836: SWAP6 00004837: SWAP8 00004838: SWAP7 00004839: SWAP5 0000483a: PUSH1 0x80 0000483c: DUP5 0000483d: MSTORE 0000483e: PUSH1 0x80 00004840: DUP5 00004841: ADD 00004842: SWAP1 00004843: PUSH2 0x476e 00004846: JUMP 00004847: JUMPDEST 00004848: SWAP7 00004849: AND 0000484a: PUSH1 0x20 0000484c: DUP3 0000484d: ADD 0000484e: MSTORE 0000484f: ADD 00004850: SWAP1 00004851: PUSH1 0x01 00004853: PUSH1 0x01 00004855: PUSH1 0x80 00004857: SHL 00004858: SUB 00004859: PUSH1 0x20 0000485b: DUP1 0000485c: SWAP3 0000485d: DUP3 0000485e: DUP2 0000485f: MLOAD 00004860: AND 00004861: DUP6 00004862: MSTORE 00004863: ADD 00004864: MLOAD 00004865: AND 00004866: SWAP2 00004867: ADD 00004868: MSTORE 00004869: JUMP 0000486a: JUMPDEST 0000486b: SWAP1 0000486c: SWAP6 0000486d: SWAP3 0000486e: SWAP8 0000486f: SWAP2 00004870: SWAP10 00004871: SWAP9 00004872: SWAP7 00004873: SWAP5 00004874: SWAP4 00004875: SWAP5 00004876: PUSH20 0xa0a1ac47260b95d334763473b868117ef7343aa0 0000488b: PUSH2 0x489c 0000488e: PUSH1 0x08 00004890: SLOAD 00004891: PUSH1 0x01 00004893: PUSH1 0x01 00004895: PUSH1 0xa0 00004897: SHL 00004898: SUB 00004899: AND 0000489a: SWAP1 0000489b: JUMP 0000489c: JUMPDEST 0000489d: SWAP1 0000489e: DUP1 0000489f: EXTCODESIZE 000048a0: ISZERO 000048a1: PUSH2 0x0436 000048a4: JUMPI 000048a5: DUP6 000048a6: PUSH0 000048a7: SWAP2 000048a8: PUSH1 0x01 000048aa: PUSH1 0x01 000048ac: PUSH1 0xa0 000048ae: SHL 000048af: SUB 000048b0: DUP16 000048b1: PUSH2 0x48db 000048b4: DUP12 000048b5: DUP16 000048b6: SWAP8 000048b7: DUP16 000048b8: SWAP9 000048b9: DUP16 000048ba: SWAP1 000048bb: DUP12 000048bc: SWAP6 000048bd: PUSH1 0x40 000048bf: MLOAD 000048c0: SWAP12 000048c1: DUP13 000048c2: SWAP11 000048c3: DUP12 000048c4: SWAP10 000048c5: DUP11 000048c6: SWAP10 000048c7: PUSH4 0xf89d5841 000048cc: PUSH1 0xe0 000048ce: SHL 000048cf: DUP12 000048d0: MSTORE 000048d1: AND 000048d2: SWAP5 000048d3: PUSH1 0x04 000048d5: DUP11 000048d6: ADD 000048d7: PUSH2 0x46c8 000048da: JUMP 000048db: JUMPDEST 000048dc: SUB 000048dd: SWAP2 000048de: GAS 000048df: DELEGATECALL 000048e0: DUP1 000048e1: ISZERO 000048e2: PUSH2 0x0bae 000048e5: JUMPI 000048e6: PUSH2 0x4a0d 000048e9: JUMPI 000048ea: JUMPDEST 000048eb: POP 000048ec: PUSH1 0x09 000048ee: SLOAD 000048ef: SWAP11 000048f0: DUP12 000048f1: SWAP10 000048f2: DUP10 000048f3: PUSH2 0x4904 000048f6: DUP13 000048f7: PUSH0 000048f8: MSTORE 000048f9: PUSH1 0x10 000048fb: PUSH1 0x20 000048fd: MSTORE 000048fe: PUSH1 0x40 00004900: PUSH0 00004901: KECCAK256 00004902: SWAP1 00004903: JUMP 00004904: JUMPDEST 00004905: SWAP1 00004906: PUSH2 0x493a 00004909: SWAP2 0000490a: DUP2 0000490b: MLOAD 0000490c: PUSH1 0x20 0000490e: SWAP1 0000490f: SWAP3 00004910: ADD 00004911: MLOAD 00004912: PUSH1 0x80 00004914: SHL 00004915: PUSH16 0xffffffffffffffffffffffffffffffff 00004926: NOT 00004927: AND 00004928: PUSH1 0x01 0000492a: PUSH1 0x01 0000492c: PUSH1 0x80 0000492e: SHL 0000492f: SUB 00004930: SWAP1 00004931: SWAP3 00004932: AND 00004933: SWAP2 00004934: SWAP1 00004935: SWAP2 00004936: OR 00004937: SWAP1 00004938: SSTORE 00004939: JUMP 0000493a: JUMPDEST 0000493b: DUP11 0000493c: DUP6 0000493d: DUP5 0000493e: DUP9 0000493f: DUP13 00004940: PUSH2 0x4951 00004943: DUP6 00004944: PUSH0 00004945: MSTORE 00004946: PUSH1 0x0c 00004948: PUSH1 0x20 0000494a: MSTORE 0000494b: PUSH1 0x40 0000494d: PUSH0 0000494e: KECCAK256 0000494f: SWAP1 00004950: JUMP 00004951: JUMPDEST 00004952: SWAP1 00004953: PUSH2 0x496d 00004956: SWAP2 00004957: SWAP1 00004958: PUSH5 0xffffffffff 0000495e: AND 0000495f: PUSH5 0xffffffffff 00004965: NOT 00004966: DUP3 00004967: SLOAD 00004968: AND 00004969: OR 0000496a: SWAP1 0000496b: SSTORE 0000496c: JUMP 0000496d: JUMPDEST 0000496e: PUSH2 0x497a 00004971: SWAP4 00004972: DUP13 00004973: DUP7 00004974: DUP9 00004975: DUP12 00004976: PUSH2 0x57cb 00004979: JUMP 0000497a: JUMPDEST 0000497b: PUSH2 0x4982 0000497e: PUSH2 0x244d 00004981: JUMP 00004982: JUMPDEST 00004983: CALLER 00004984: DUP2 00004985: MSTORE 00004986: SWAP8 00004987: PUSH1 0x01 00004989: PUSH1 0x01 0000498b: PUSH1 0xa0 0000498d: SHL 0000498e: SUB 0000498f: AND 00004990: PUSH1 0x20 00004992: DUP10 00004993: ADD 00004994: MSTORE 00004995: PUSH1 0x01 00004997: PUSH1 0x01 00004999: PUSH1 0xa0 0000499b: SHL 0000499c: SUB 0000499d: AND 0000499e: PUSH1 0x40 000049a0: DUP9 000049a1: ADD 000049a2: MSTORE 000049a3: PUSH1 0x01 000049a5: PUSH1 0x01 000049a7: PUSH1 0x80 000049a9: SHL 000049aa: SUB 000049ab: AND 000049ac: PUSH1 0x60 000049ae: DUP8 000049af: ADD 000049b0: MSTORE 000049b1: PUSH1 0x01 000049b3: PUSH1 0x01 000049b5: PUSH1 0xa0 000049b7: SHL 000049b8: SUB 000049b9: AND 000049ba: PUSH1 0x80 000049bc: DUP7 000049bd: ADD 000049be: MSTORE 000049bf: ISZERO 000049c0: ISZERO 000049c1: PUSH1 0xa0 000049c3: DUP6 000049c4: ADD 000049c5: MSTORE 000049c6: ISZERO 000049c7: ISZERO 000049c8: PUSH1 0xc0 000049ca: DUP5 000049cb: ADD 000049cc: MSTORE 000049cd: PUSH1 0xe0 000049cf: DUP4 000049d0: ADD 000049d1: MSTORE 000049d2: PUSH2 0x0100 000049d5: DUP3 000049d6: ADD 000049d7: MSTORE 000049d8: PUSH1 0x40 000049da: MLOAD 000049db: SWAP3 000049dc: DUP4 000049dd: SWAP3 000049de: PUSH2 0x49e7 000049e1: SWAP3 000049e2: DUP5 000049e3: PUSH2 0x4826 000049e6: JUMP 000049e7: JUMPDEST 000049e8: SUB 000049e9: PUSH32 0xc79bd540ef5a04a4ac63a943cd4fb703e8a730be1368c34f4c31bb7142bbdb3a 00004a0a: SWAP2 00004a0b: LOG2 00004a0c: JUMP 00004a0d: JUMPDEST 00004a0e: DUP1 00004a0f: PUSH2 0x4a1b 00004a12: PUSH0 00004a13: PUSH2 0x4a21 00004a16: SWAP4 00004a17: PUSH2 0x240b 00004a1a: JUMP 00004a1b: JUMPDEST 00004a1c: DUP1 00004a1d: PUSH2 0x04c3 00004a20: JUMP 00004a21: JUMPDEST 00004a22: PUSH0 00004a23: PUSH2 0x48ea 00004a26: JUMP 00004a27: JUMPDEST 00004a28: SWAP4 00004a29: SWAP6 00004a2a: SWAP8 00004a2b: SWAP7 00004a2c: SWAP5 00004a2d: SWAP3 00004a2e: PUSH2 0x4a68 00004a31: PUSH1 0x01 00004a33: PUSH1 0x01 00004a35: PUSH1 0x80 00004a37: SHL 00004a38: SUB 00004a39: SWAP3 00004a3a: SWAP4 00004a3b: PUSH1 0x01 00004a3d: PUSH1 0x01 00004a3f: PUSH1 0xa0 00004a41: SHL 00004a42: SUB 00004a43: PUSH2 0x0100 00004a46: DUP9 00004a47: ADD 00004a48: SWAP6 00004a49: AND 00004a4a: DUP8 00004a4b: MSTORE 00004a4c: PUSH1 0x20 00004a4e: DUP8 00004a4f: ADD 00004a50: SWAP1 00004a51: PUSH5 0xffffffffff 00004a57: PUSH1 0x20 00004a59: DUP1 00004a5a: SWAP3 00004a5b: DUP3 00004a5c: DUP2 00004a5d: MLOAD 00004a5e: AND 00004a5f: DUP6 00004a60: MSTORE 00004a61: ADD 00004a62: MLOAD 00004a63: AND 00004a64: SWAP2 00004a65: ADD 00004a66: MSTORE 00004a67: JUMP 00004a68: JUMPDEST 00004a69: AND 00004a6a: PUSH1 0x60 00004a6c: DUP5 00004a6d: ADD 00004a6e: MSTORE 00004a6f: PUSH2 0x0100 00004a72: PUSH1 0x80 00004a74: DUP5 00004a75: ADD 00004a76: MSTORE 00004a77: DUP5 00004a78: MLOAD 00004a79: DUP1 00004a7a: SWAP2 00004a7b: MSTORE 00004a7c: PUSH1 0x20 00004a7e: PUSH2 0x0120 00004a81: DUP5 00004a82: ADD 00004a83: SWAP6 00004a84: ADD 00004a85: SWAP1 00004a86: PUSH0 00004a87: JUMPDEST 00004a88: DUP2 00004a89: DUP2 00004a8a: LT 00004a8b: PUSH2 0x4acc 00004a8e: JUMPI 00004a8f: POP 00004a90: POP 00004a91: POP 00004a92: PUSH2 0x0524 00004a95: SWAP5 00004a96: SWAP6 00004a97: PUSH2 0x4aaf 00004a9a: PUSH2 0x4abf 00004a9d: SWAP3 00004a9e: PUSH1 0xa0 00004aa0: DUP6 00004aa1: ADD 00004aa2: SWAP1 00004aa3: PUSH1 0x01 00004aa5: PUSH1 0x01 00004aa7: PUSH1 0xa0 00004aa9: SHL 00004aaa: SUB 00004aab: AND 00004aac: SWAP1 00004aad: MSTORE 00004aae: JUMP 00004aaf: JUMPDEST 00004ab0: PUSH1 0x01 00004ab2: PUSH1 0x01 00004ab4: PUSH1 0xa0 00004ab6: SHL 00004ab7: SUB 00004ab8: AND 00004ab9: PUSH1 0xc0 00004abb: DUP4 00004abc: ADD 00004abd: MSTORE 00004abe: JUMP 00004abf: JUMPDEST 00004ac0: PUSH1 0xe0 00004ac2: DUP2 00004ac3: DUP5 00004ac4: SUB 00004ac5: SWAP2 00004ac6: ADD 00004ac7: MSTORE 00004ac8: PUSH2 0x04ee 00004acb: JUMP 00004acc: JUMPDEST 00004acd: SWAP1 00004ace: SWAP2 00004acf: SWAP6 00004ad0: PUSH1 0x20 00004ad2: PUSH1 0x60 00004ad4: DUP3 00004ad5: PUSH2 0x4b0e 00004ad8: PUSH1 0x01 00004ada: SWAP5 00004adb: DUP12 00004adc: MLOAD 00004add: PUSH5 0xffffffffff 00004ae3: PUSH1 0x40 00004ae5: DUP1 00004ae6: SWAP3 00004ae7: PUSH1 0x01 00004ae9: PUSH1 0x01 00004aeb: PUSH1 0x80 00004aed: SHL 00004aee: SUB 00004aef: DUP2 00004af0: MLOAD 00004af1: AND 00004af2: DUP6 00004af3: MSTORE 00004af4: PUSH1 0x01 00004af6: PUSH1 0x01 00004af8: PUSH1 0x40 00004afa: SHL 00004afb: SUB 00004afc: PUSH1 0x20 00004afe: DUP3 00004aff: ADD 00004b00: MLOAD 00004b01: AND 00004b02: PUSH1 0x20 00004b04: DUP7 00004b05: ADD 00004b06: MSTORE 00004b07: ADD 00004b08: MLOAD 00004b09: AND 00004b0a: SWAP2 00004b0b: ADD 00004b0c: MSTORE 00004b0d: JUMP 00004b0e: JUMPDEST 00004b0f: ADD 00004b10: SWAP8 00004b11: ADD 00004b12: SWAP3 00004b13: SWAP2 00004b14: ADD 00004b15: PUSH2 0x4a87 00004b18: JUMP 00004b19: JUMPDEST 00004b1a: DUP1 00004b1b: SLOAD 00004b1c: DUP3 00004b1d: LT 00004b1e: ISZERO 00004b1f: PUSH2 0x338e 00004b22: JUMPI 00004b23: PUSH0 00004b24: MSTORE 00004b25: PUSH1 0x20 00004b27: PUSH0 00004b28: KECCAK256 00004b29: ADD 00004b2a: SWAP1 00004b2b: PUSH0 00004b2c: SWAP1 00004b2d: JUMP 00004b2e: JUMPDEST 00004b2f: DUP1 00004b30: SLOAD 00004b31: PUSH9 0x010000000000000000 00004b3b: DUP2 00004b3c: LT 00004b3d: ISZERO 00004b3e: PUSH2 0x23eb 00004b41: JUMPI 00004b42: PUSH2 0x4b50 00004b45: SWAP2 00004b46: PUSH1 0x01 00004b48: DUP3 00004b49: ADD 00004b4a: DUP2 00004b4b: SSTORE 00004b4c: PUSH2 0x4b19 00004b4f: JUMP 00004b50: JUMPDEST 00004b51: SWAP2 00004b52: SWAP1 00004b53: SWAP2 00004b54: PUSH2 0x4bcf 00004b57: JUMPI 00004b58: DUP1 00004b59: MLOAD 00004b5a: DUP3 00004b5b: SLOAD 00004b5c: PUSH1 0x20 00004b5e: DUP4 00004b5f: ADD 00004b60: MLOAD 00004b61: PUSH1 0x40 00004b63: SWAP1 00004b64: SWAP4 00004b65: ADD 00004b66: MLOAD 00004b67: PUSH1 0x01 00004b69: PUSH1 0x01 00004b6b: PUSH1 0x80 00004b6d: SHL 00004b6e: SUB 00004b6f: SWAP1 00004b70: SWAP3 00004b71: AND 00004b72: PUSH32 0xffffff0000000000000000000000000000000000000000000000000000000000 00004b93: SWAP1 00004b94: SWAP2 00004b95: AND 00004b96: OR 00004b97: PUSH1 0x80 00004b99: SWAP3 00004b9a: SWAP1 00004b9b: SWAP3 00004b9c: SHL 00004b9d: PUSH24 0xffffffffffffffff00000000000000000000000000000000 00004bb6: AND 00004bb7: SWAP2 00004bb8: SWAP1 00004bb9: SWAP2 00004bba: OR 00004bbb: PUSH1 0xc0 00004bbd: SWAP2 00004bbe: SWAP1 00004bbf: SWAP2 00004bc0: SHL 00004bc1: PUSH5 0xffffffffff 00004bc7: PUSH1 0xc0 00004bc9: SHL 00004bca: AND 00004bcb: OR 00004bcc: SWAP1 00004bcd: SSTORE 00004bce: JUMP 00004bcf: JUMPDEST 00004bd0: PUSH2 0x475b 00004bd3: JUMP 00004bd4: JUMPDEST 00004bd5: SWAP1 00004bd6: SWAP2 00004bd7: PUSH2 0x4beb 00004bda: PUSH2 0x0524 00004bdd: SWAP4 00004bde: PUSH1 0x40 00004be0: DUP5 00004be1: MSTORE 00004be2: PUSH1 0x40 00004be4: DUP5 00004be5: ADD 00004be6: SWAP1 00004be7: PUSH2 0x476e 00004bea: JUMP 00004beb: JUMPDEST 00004bec: SWAP2 00004bed: PUSH1 0x20 00004bef: DUP2 00004bf0: DUP5 00004bf1: SUB 00004bf2: SWAP2 00004bf3: ADD 00004bf4: MSTORE 00004bf5: PUSH2 0x2151 00004bf8: JUMP 00004bf9: JUMPDEST 00004bfa: SWAP3 00004bfb: SWAP7 00004bfc: SWAP2 00004bfd: SWAP9 00004bfe: SWAP8 00004bff: SWAP4 00004c00: SWAP9 00004c01: SWAP6 00004c02: SWAP5 00004c03: SWAP6 00004c04: PUSH20 0xa0a1ac47260b95d334763473b868117ef7343aa0 00004c19: PUSH2 0x4c2a 00004c1c: PUSH1 0x08 00004c1e: SLOAD 00004c1f: PUSH1 0x01 00004c21: PUSH1 0x01 00004c23: PUSH1 0xa0 00004c25: SHL 00004c26: SUB 00004c27: AND 00004c28: SWAP1 00004c29: JUMP 00004c2a: JUMPDEST 00004c2b: SWAP1 00004c2c: DUP1 00004c2d: EXTCODESIZE 00004c2e: ISZERO 00004c2f: PUSH2 0x0436 00004c32: JUMPI 00004c33: DUP8 00004c34: PUSH0 00004c35: SWAP2 00004c36: PUSH1 0x01 00004c38: PUSH1 0x01 00004c3a: PUSH1 0xa0 00004c3c: SHL 00004c3d: SUB 00004c3e: DUP8 00004c3f: DUP16 00004c40: DUP14 00004c41: DUP16 00004c42: SWAP8 00004c43: PUSH2 0x4c67 00004c46: SWAP3 00004c47: DUP12 00004c48: SWAP10 00004c49: PUSH1 0x40 00004c4b: MLOAD 00004c4c: SWAP11 00004c4d: DUP12 00004c4e: SWAP10 00004c4f: DUP11 00004c50: SWAP9 00004c51: DUP10 00004c52: SWAP9 00004c53: PUSH4 0x0bce559f 00004c58: PUSH1 0xe1 00004c5a: SHL 00004c5b: DUP11 00004c5c: MSTORE 00004c5d: AND 00004c5e: SWAP4 00004c5f: PUSH1 0x04 00004c61: DUP10 00004c62: ADD 00004c63: PUSH2 0x4a27 00004c66: JUMP 00004c67: JUMPDEST 00004c68: SUB 00004c69: SWAP2 00004c6a: GAS 00004c6b: DELEGATECALL 00004c6c: DUP1 00004c6d: ISZERO 00004c6e: PUSH2 0x0bae 00004c71: JUMPI 00004c72: PUSH2 0x4da4 00004c75: JUMPI 00004c76: JUMPDEST 00004c77: POP 00004c78: SWAP9 00004c79: SWAP6 00004c7a: SWAP5 00004c7b: SWAP4 00004c7c: SWAP3 00004c7d: SWAP2 00004c7e: SWAP1 00004c7f: PUSH1 0x09 00004c81: SLOAD 00004c82: SWAP10 00004c83: DUP11 00004c84: SWAP8 00004c85: DUP10 00004c86: MLOAD 00004c87: PUSH0 00004c88: JUMPDEST 00004c89: DUP2 00004c8a: DUP2 00004c8b: LT 00004c8c: PUSH2 0x4d61 00004c8f: JUMPI 00004c90: POP 00004c91: POP 00004c92: SWAP4 00004c93: PUSH2 0x4d30 00004c96: DUP5 00004c97: PUSH2 0x4d20 00004c9a: DUP6 00004c9b: PUSH2 0x4d10 00004c9e: DUP7 00004c9f: DUP15 00004ca0: SWAP16 00004ca1: SWAP14 00004ca2: SWAP12 00004ca3: SWAP9 00004ca4: PUSH32 0x0e7eb51bad11fb6392e8e6cfd568e0750bbaf84bca8bf4dceb9bcae5b46a3311 00004cc5: SWAP16 00004cc6: SWAP12 00004cc7: PUSH2 0x4ce4 00004cca: PUSH1 0x20 00004ccc: SWAP16 00004ccd: SWAP14 00004cce: PUSH2 0x4d42 00004cd1: SWAP14 00004cd2: DUP16 00004cd3: DUP15 00004cd4: SWAP3 00004cd5: DUP6 00004cd6: PUSH2 0x4d39 00004cd9: SWAP16 00004cda: DUP16 00004cdb: SWAP9 00004cdc: PUSH2 0x4d00 00004cdf: SWAP10 00004ce0: PUSH2 0x58fc 00004ce3: JUMP 00004ce4: JUMPDEST 00004ce5: PUSH2 0x4cec 00004ce8: PUSH2 0x244d 00004ceb: JUMP 00004cec: JUMPDEST 00004ced: CALLER 00004cee: DUP2 00004cef: MSTORE 00004cf0: SWAP15 00004cf1: DUP16 00004cf2: ADD 00004cf3: SWAP1 00004cf4: PUSH1 0x01 00004cf6: PUSH1 0x01 00004cf8: PUSH1 0xa0 00004cfa: SHL 00004cfb: SUB 00004cfc: AND 00004cfd: SWAP1 00004cfe: MSTORE 00004cff: JUMP 00004d00: JUMPDEST 00004d01: PUSH1 0x01 00004d03: PUSH1 0x01 00004d05: PUSH1 0xa0 00004d07: SHL 00004d08: SUB 00004d09: AND 00004d0a: PUSH1 0x40 00004d0c: DUP14 00004d0d: ADD 00004d0e: MSTORE 00004d0f: JUMP 00004d10: JUMPDEST 00004d11: PUSH1 0x01 00004d13: PUSH1 0x01 00004d15: PUSH1 0x80 00004d17: SHL 00004d18: SUB 00004d19: AND 00004d1a: PUSH1 0x60 00004d1c: DUP12 00004d1d: ADD 00004d1e: MSTORE 00004d1f: JUMP 00004d20: JUMPDEST 00004d21: PUSH1 0x01 00004d23: PUSH1 0x01 00004d25: PUSH1 0xa0 00004d27: SHL 00004d28: SUB 00004d29: AND 00004d2a: PUSH1 0x80 00004d2c: DUP10 00004d2d: ADD 00004d2e: MSTORE 00004d2f: JUMP 00004d30: JUMPDEST 00004d31: ISZERO 00004d32: ISZERO 00004d33: PUSH1 0xa0 00004d35: DUP8 00004d36: ADD 00004d37: MSTORE 00004d38: JUMP 00004d39: JUMPDEST 00004d3a: ISZERO 00004d3b: ISZERO 00004d3c: PUSH1 0xc0 00004d3e: DUP6 00004d3f: ADD 00004d40: MSTORE 00004d41: JUMP 00004d42: JUMPDEST 00004d43: PUSH1 0xe0 00004d45: DUP4 00004d46: ADD 00004d47: MSTORE 00004d48: PUSH2 0x0100 00004d4b: DUP3 00004d4c: ADD 00004d4d: MSTORE 00004d4e: PUSH2 0x4d5c 00004d51: PUSH1 0x40 00004d53: MLOAD 00004d54: SWAP3 00004d55: DUP4 00004d56: SWAP3 00004d57: DUP4 00004d58: PUSH2 0x4bd4 00004d5b: JUMP 00004d5c: JUMPDEST 00004d5d: SUB 00004d5e: SWAP1 00004d5f: LOG2 00004d60: JUMP 00004d61: JUMPDEST 00004d62: PUSH2 0x4d93 00004d65: DUP13 00004d66: PUSH2 0x4d8c 00004d69: DUP4 00004d6a: PUSH2 0x4d86 00004d6d: PUSH1 0x01 00004d6f: SWAP7 00004d70: SWAP8 00004d71: SWAP9 00004d72: SWAP10 00004d73: SWAP11 00004d74: SWAP12 00004d75: SWAP13 00004d76: SWAP14 00004d77: SWAP15 00004d78: SWAP16 00004d79: PUSH0 00004d7a: MSTORE 00004d7b: PUSH1 0x0d 00004d7d: PUSH1 0x20 00004d7f: MSTORE 00004d80: PUSH1 0x40 00004d82: PUSH0 00004d83: KECCAK256 00004d84: SWAP1 00004d85: JUMP 00004d86: JUMPDEST 00004d87: SWAP3 00004d88: PUSH2 0x33cf 00004d8b: JUMP 00004d8c: JUMPDEST 00004d8d: MLOAD 00004d8e: SWAP1 00004d8f: PUSH2 0x4b2e 00004d92: JUMP 00004d93: JUMPDEST 00004d94: ADD 00004d95: SWAP1 00004d96: DUP13 00004d97: SWAP10 00004d98: SWAP9 00004d99: SWAP8 00004d9a: SWAP7 00004d9b: SWAP6 00004d9c: SWAP5 00004d9d: SWAP4 00004d9e: SWAP3 00004d9f: SWAP2 00004da0: PUSH2 0x4c88 00004da3: JUMP 00004da4: JUMPDEST 00004da5: DUP1 00004da6: PUSH2 0x4a1b 00004da9: PUSH0 00004daa: PUSH2 0x4db2 00004dad: SWAP4 00004dae: PUSH2 0x240b 00004db1: JUMP 00004db2: JUMPDEST 00004db3: PUSH0 00004db4: PUSH2 0x4c76 00004db7: JUMP 00004db8: JUMPDEST 00004db9: SWAP4 00004dba: SWAP6 00004dbb: SWAP8 00004dbc: SWAP7 00004dbd: SWAP5 00004dbe: SWAP3 00004dbf: PUSH2 0x4df9 00004dc2: PUSH1 0x01 00004dc4: PUSH1 0x01 00004dc6: PUSH1 0x80 00004dc8: SHL 00004dc9: SUB 00004dca: SWAP3 00004dcb: SWAP4 00004dcc: PUSH1 0x01 00004dce: PUSH1 0x01 00004dd0: PUSH1 0xa0 00004dd2: SHL 00004dd3: SUB 00004dd4: PUSH2 0x0100 00004dd7: DUP9 00004dd8: ADD 00004dd9: SWAP6 00004dda: AND 00004ddb: DUP8 00004ddc: MSTORE 00004ddd: PUSH1 0x20 00004ddf: DUP8 00004de0: ADD 00004de1: SWAP1 00004de2: PUSH5 0xffffffffff 00004de8: PUSH1 0x20 00004dea: DUP1 00004deb: SWAP3 00004dec: DUP3 00004ded: DUP2 00004dee: MLOAD 00004def: AND 00004df0: DUP6 00004df1: MSTORE 00004df2: ADD 00004df3: MLOAD 00004df4: AND 00004df5: SWAP2 00004df6: ADD 00004df7: MSTORE 00004df8: JUMP 00004df9: JUMPDEST 00004dfa: AND 00004dfb: PUSH1 0x60 00004dfd: DUP5 00004dfe: ADD 00004dff: MSTORE 00004e00: PUSH2 0x0100 00004e03: PUSH1 0x80 00004e05: DUP5 00004e06: ADD 00004e07: MSTORE 00004e08: DUP5 00004e09: MLOAD 00004e0a: DUP1 00004e0b: SWAP2 00004e0c: MSTORE 00004e0d: PUSH1 0x20 00004e0f: PUSH2 0x0120 00004e12: DUP5 00004e13: ADD 00004e14: SWAP6 00004e15: ADD 00004e16: SWAP1 00004e17: PUSH0 00004e18: JUMPDEST 00004e19: DUP2 00004e1a: DUP2 00004e1b: LT 00004e1c: PUSH2 0x4e40 00004e1f: JUMPI 00004e20: POP 00004e21: POP 00004e22: POP 00004e23: PUSH2 0x0524 00004e26: SWAP5 00004e27: SWAP6 00004e28: PUSH2 0x4aaf 00004e2b: PUSH2 0x4abf 00004e2e: SWAP3 00004e2f: PUSH1 0xa0 00004e31: DUP6 00004e32: ADD 00004e33: SWAP1 00004e34: PUSH1 0x01 00004e36: PUSH1 0x01 00004e38: PUSH1 0xa0 00004e3a: SHL 00004e3b: SUB 00004e3c: AND 00004e3d: SWAP1 00004e3e: MSTORE 00004e3f: JUMP 00004e40: JUMPDEST 00004e41: SWAP1 00004e42: SWAP2 00004e43: SWAP6 00004e44: PUSH1 0x20 00004e46: PUSH1 0x40 00004e48: DUP3 00004e49: PUSH2 0x4e6f 00004e4c: PUSH1 0x01 00004e4e: SWAP5 00004e4f: DUP12 00004e50: MLOAD 00004e51: PUSH5 0xffffffffff 00004e57: PUSH1 0x20 00004e59: DUP1 00004e5a: SWAP3 00004e5b: PUSH1 0x01 00004e5d: PUSH1 0x01 00004e5f: PUSH1 0x80 00004e61: SHL 00004e62: SUB 00004e63: DUP2 00004e64: MLOAD 00004e65: AND 00004e66: DUP6 00004e67: MSTORE 00004e68: ADD 00004e69: MLOAD 00004e6a: AND 00004e6b: SWAP2 00004e6c: ADD 00004e6d: MSTORE 00004e6e: JUMP 00004e6f: JUMPDEST 00004e70: ADD 00004e71: SWAP8 00004e72: ADD 00004e73: SWAP3 00004e74: SWAP2 00004e75: ADD 00004e76: PUSH2 0x4e18 00004e79: JUMP 00004e7a: JUMPDEST 00004e7b: DUP1 00004e7c: SLOAD 00004e7d: PUSH9 0x010000000000000000 00004e87: DUP2 00004e88: LT 00004e89: ISZERO 00004e8a: PUSH2 0x23eb 00004e8d: JUMPI 00004e8e: PUSH2 0x4e9c 00004e91: SWAP2 00004e92: PUSH1 0x01 00004e94: DUP3 00004e95: ADD 00004e96: DUP2 00004e97: SSTORE 00004e98: PUSH2 0x4b19 00004e9b: JUMP 00004e9c: JUMPDEST 00004e9d: SWAP2 00004e9e: SWAP1 00004e9f: SWAP2 00004ea0: PUSH2 0x4bcf 00004ea3: JUMPI 00004ea4: DUP1 00004ea5: MLOAD 00004ea6: DUP3 00004ea7: SLOAD 00004ea8: PUSH1 0x20 00004eaa: SWAP1 00004eab: SWAP3 00004eac: ADD 00004ead: MLOAD 00004eae: PUSH21 0xffffffffffffffffffffffffffffffffffffffffff 00004ec4: NOT 00004ec5: SWAP1 00004ec6: SWAP3 00004ec7: AND 00004ec8: PUSH1 0x01 00004eca: PUSH1 0x01 00004ecc: PUSH1 0x80 00004ece: SHL 00004ecf: SUB 00004ed0: SWAP1 00004ed1: SWAP2 00004ed2: AND 00004ed3: OR 00004ed4: PUSH1 0x80 00004ed6: SWAP2 00004ed7: SWAP1 00004ed8: SWAP2 00004ed9: SHL 00004eda: PUSH21 0xffffffffff00000000000000000000000000000000 00004ef0: AND 00004ef1: OR 00004ef2: SWAP1 00004ef3: SSTORE 00004ef4: JUMP 00004ef5: JUMPDEST 00004ef6: SWAP1 00004ef7: SWAP2 00004ef8: PUSH2 0x4f0c 00004efb: PUSH2 0x0524 00004efe: SWAP4 00004eff: PUSH1 0x40 00004f01: DUP5 00004f02: MSTORE 00004f03: PUSH1 0x40 00004f05: DUP5 00004f06: ADD 00004f07: SWAP1 00004f08: PUSH2 0x476e 00004f0b: JUMP 00004f0c: JUMPDEST 00004f0d: SWAP2 00004f0e: PUSH1 0x20 00004f10: DUP2 00004f11: DUP5 00004f12: SUB 00004f13: SWAP2 00004f14: ADD 00004f15: MSTORE 00004f16: PUSH2 0x1933 00004f19: JUMP 00004f1a: JUMPDEST 00004f1b: SWAP3 00004f1c: SWAP9 00004f1d: SWAP8 00004f1e: SWAP7 00004f1f: SWAP4 00004f20: SWAP6 00004f21: SWAP2 00004f22: PUSH20 0xa0a1ac47260b95d334763473b868117ef7343aa0 00004f37: PUSH2 0x4f48 00004f3a: PUSH1 0x08 00004f3c: SLOAD 00004f3d: PUSH1 0x01 00004f3f: PUSH1 0x01 00004f41: PUSH1 0xa0 00004f43: SHL 00004f44: SUB 00004f45: AND 00004f46: SWAP1 00004f47: JUMP 00004f48: JUMPDEST 00004f49: SWAP1 00004f4a: DUP1 00004f4b: EXTCODESIZE 00004f4c: ISZERO 00004f4d: PUSH2 0x0436 00004f50: JUMPI 00004f51: DUP8 00004f52: PUSH0 00004f53: SWAP2 00004f54: PUSH1 0x01 00004f56: PUSH1 0x01 00004f58: PUSH1 0xa0 00004f5a: SHL 00004f5b: SUB 00004f5c: DUP8 00004f5d: DUP16 00004f5e: DUP14 00004f5f: DUP16 00004f60: SWAP8 00004f61: PUSH2 0x4f85 00004f64: SWAP3 00004f65: DUP12 00004f66: SWAP10 00004f67: PUSH1 0x40 00004f69: MLOAD 00004f6a: SWAP11 00004f6b: DUP12 00004f6c: SWAP10 00004f6d: DUP11 00004f6e: SWAP9 00004f6f: DUP10 00004f70: SWAP9 00004f71: PUSH4 0x038720af 00004f76: PUSH1 0xe2 00004f78: SHL 00004f79: DUP11 00004f7a: MSTORE 00004f7b: AND 00004f7c: SWAP4 00004f7d: PUSH1 0x04 00004f7f: DUP10 00004f80: ADD 00004f81: PUSH2 0x4db8 00004f84: JUMP 00004f85: JUMPDEST 00004f86: SUB 00004f87: SWAP2 00004f88: GAS 00004f89: DELEGATECALL 00004f8a: DUP1 00004f8b: ISZERO 00004f8c: PUSH2 0x0bae 00004f8f: JUMPI 00004f90: PUSH2 0x5059 00004f93: JUMPI 00004f94: JUMPDEST 00004f95: POP 00004f96: SWAP9 00004f97: SWAP6 00004f98: SWAP5 00004f99: SWAP4 00004f9a: SWAP3 00004f9b: SWAP2 00004f9c: SWAP1 00004f9d: PUSH1 0x09 00004f9f: SLOAD 00004fa0: SWAP10 00004fa1: DUP11 00004fa2: SWAP8 00004fa3: DUP10 00004fa4: MLOAD 00004fa5: PUSH0 00004fa6: JUMPDEST 00004fa7: DUP2 00004fa8: DUP2 00004fa9: LT 00004faa: PUSH2 0x501c 00004fad: JUMPI 00004fae: POP 00004faf: POP 00004fb0: SWAP4 00004fb1: PUSH2 0x4d30 00004fb4: DUP5 00004fb5: PUSH2 0x4d20 00004fb8: DUP6 00004fb9: PUSH2 0x4d10 00004fbc: DUP7 00004fbd: DUP15 00004fbe: SWAP16 00004fbf: SWAP14 00004fc0: SWAP12 00004fc1: SWAP9 00004fc2: PUSH32 0xb5286ba059f8139658108ff5a9617e2ba55bd80fb2dd93063f9f9bc0e65c4c2a 00004fe3: SWAP16 00004fe4: SWAP12 00004fe5: PUSH2 0x4ce4 00004fe8: PUSH1 0x20 00004fea: SWAP16 00004feb: SWAP14 00004fec: PUSH2 0x5002 00004fef: SWAP14 00004ff0: DUP16 00004ff1: DUP15 00004ff2: SWAP3 00004ff3: DUP6 00004ff4: PUSH2 0x4d39 00004ff7: SWAP16 00004ff8: DUP16 00004ff9: SWAP9 00004ffa: PUSH2 0x4d00 00004ffd: SWAP10 00004ffe: PUSH2 0x594f 00005001: JUMP 00005002: JUMPDEST 00005003: PUSH1 0xe0 00005005: DUP4 00005006: ADD 00005007: MSTORE 00005008: PUSH2 0x0100 0000500b: DUP3 0000500c: ADD 0000500d: MSTORE 0000500e: PUSH2 0x4d5c 00005011: PUSH1 0x40 00005013: MLOAD 00005014: SWAP3 00005015: DUP4 00005016: SWAP3 00005017: DUP4 00005018: PUSH2 0x4ef5 0000501b: JUMP 0000501c: JUMPDEST 0000501d: PUSH2 0x5048 00005020: DUP13 00005021: PUSH2 0x5041 00005024: DUP4 00005025: PUSH2 0x4d86 00005028: PUSH1 0x01 0000502a: SWAP7 0000502b: SWAP8 0000502c: SWAP9 0000502d: SWAP10 0000502e: SWAP11 0000502f: SWAP12 00005030: SWAP13 00005031: SWAP14 00005032: SWAP15 00005033: SWAP16 00005034: PUSH0 00005035: MSTORE 00005036: PUSH1 0x0f 00005038: PUSH1 0x20 0000503a: MSTORE 0000503b: PUSH1 0x40 0000503d: PUSH0 0000503e: KECCAK256 0000503f: SWAP1 00005040: JUMP 00005041: JUMPDEST 00005042: MLOAD 00005043: SWAP1 00005044: PUSH2 0x4e7a 00005047: JUMP 00005048: JUMPDEST 00005049: ADD 0000504a: SWAP1 0000504b: DUP13 0000504c: SWAP10 0000504d: SWAP9 0000504e: SWAP8 0000504f: SWAP7 00005050: SWAP6 00005051: SWAP5 00005052: SWAP4 00005053: SWAP3 00005054: SWAP2 00005055: PUSH2 0x4fa6 00005058: JUMP 00005059: JUMPDEST 0000505a: DUP1 0000505b: PUSH2 0x4a1b 0000505e: PUSH0 0000505f: PUSH2 0x5067 00005062: SWAP4 00005063: PUSH2 0x240b 00005066: JUMP 00005067: JUMPDEST 00005068: PUSH0 00005069: PUSH2 0x4f94 0000506c: JUMP 0000506d: JUMPDEST 0000506e: SWAP1 0000506f: SWAP3 00005070: PUSH1 0x01 00005072: PUSH1 0x01 00005074: PUSH1 0xa0 00005076: SHL 00005077: SUB 00005078: PUSH1 0x80 0000507a: SWAP4 0000507b: DUP2 0000507c: PUSH2 0x0524 0000507f: SWAP8 00005080: SWAP7 00005081: AND 00005082: DUP5 00005083: MSTORE 00005084: AND 00005085: PUSH1 0x20 00005087: DUP4 00005088: ADD 00005089: MSTORE 0000508a: PUSH1 0x40 0000508c: DUP3 0000508d: ADD 0000508e: MSTORE 0000508f: DUP2 00005090: PUSH1 0x60 00005092: DUP3 00005093: ADD 00005094: MSTORE 00005095: ADD 00005096: SWAP1 00005097: PUSH2 0x04ee 0000509a: JUMP 0000509b: JUMPDEST 0000509c: PUSH2 0x0524 0000509f: SWAP1 000050a0: PUSH2 0x50a8 000050a3: DUP2 000050a4: PUSH2 0x3df4 000050a7: JUMP 000050a8: JUMPDEST 000050a9: SWAP1 000050aa: PUSH0 000050ab: MSTORE 000050ac: PUSH1 0x0e 000050ae: PUSH1 0x20 000050b0: MSTORE 000050b1: PUSH1 0x02 000050b3: PUSH1 0x40 000050b5: PUSH0 000050b6: KECCAK256 000050b7: ADD 000050b8: SLOAD 000050b9: PUSH1 0x80 000050bb: SHR 000050bc: SWAP1 000050bd: PUSH2 0x32fa 000050c0: JUMP 000050c1: JUMPDEST 000050c2: SWAP1 000050c3: SWAP3 000050c4: SWAP2 000050c5: SWAP3 000050c6: PUSH1 0x01 000050c8: PUSH1 0x01 000050ca: PUSH1 0xa0 000050cc: SHL 000050cd: SUB 000050ce: DUP2 000050cf: AND 000050d0: ISZERO 000050d1: PUSH2 0x34cf 000050d4: JUMPI 000050d5: DUP4 000050d6: PUSH2 0x50de 000050d9: SWAP2 000050da: PUSH2 0x41ae 000050dd: JUMP 000050de: JUMPDEST 000050df: SWAP1 000050e0: PUSH1 0x01 000050e2: PUSH1 0x01 000050e4: PUSH1 0xa0 000050e6: SHL 000050e7: SUB 000050e8: DUP3 000050e9: AND 000050ea: DUP1 000050eb: PUSH2 0x5101 000050ee: JUMPI 000050ef: DUP5 000050f0: PUSH4 0x7e273289 000050f5: PUSH1 0xe0 000050f7: SHL 000050f8: PUSH0 000050f9: MSTORE 000050fa: PUSH1 0x04 000050fc: MSTORE 000050fd: PUSH1 0x24 000050ff: PUSH0 00005100: REVERT 00005101: JUMPDEST 00005102: PUSH1 0x01 00005104: PUSH1 0x01 00005106: PUSH1 0xa0 00005108: SHL 00005109: SUB 0000510a: DUP3 0000510b: SWAP6 0000510c: SWAP4 0000510d: SWAP5 0000510e: SWAP6 0000510f: AND 00005110: SUB 00005111: PUSH2 0x3461 00005114: JUMPI 00005115: POP 00005116: POP 00005117: POP 00005118: JUMP 00005119: JUMPDEST 0000511a: SWAP1 0000511b: PUSH1 0x01 0000511d: PUSH1 0x01 0000511f: PUSH1 0x80 00005121: SHL 00005122: SUB 00005123: DUP1 00005124: SWAP2 00005125: AND 00005126: SWAP2 00005127: AND 00005128: ADD 00005129: SWAP1 0000512a: PUSH1 0x01 0000512c: PUSH1 0x01 0000512e: PUSH1 0x80 00005130: SHL 00005131: SUB 00005132: DUP3 00005133: GT 00005134: PUSH2 0x1634 00005137: JUMPI 00005138: JUMP 00005139: JUMPDEST 0000513a: SWAP2 0000513b: SWAP1 0000513c: SWAP2 0000513d: PUSH2 0x519d 00005140: PUSH1 0x20 00005142: PUSH2 0x5155 00005145: PUSH2 0x0c46 00005148: PUSH0 00005149: SLOAD 0000514a: PUSH1 0x01 0000514c: PUSH1 0x01 0000514e: PUSH1 0xa0 00005150: SHL 00005151: SUB 00005152: AND 00005153: SWAP1 00005154: JUMP 00005155: JUMPDEST 00005156: PUSH2 0x516a 00005159: PUSH2 0x0c39 0000515c: DUP6 0000515d: PUSH0 0000515e: MSTORE 0000515f: PUSH1 0x0e 00005161: PUSH1 0x20 00005163: MSTORE 00005164: PUSH1 0x40 00005166: PUSH0 00005167: KECCAK256 00005168: SWAP1 00005169: JUMP 0000516a: JUMPDEST 0000516b: PUSH1 0x40 0000516d: MLOAD 0000516e: PUSH4 0x419d289d 00005173: PUSH1 0xe0 00005175: SHL 00005176: DUP2 00005177: MSTORE 00005178: PUSH1 0x02 0000517a: PUSH1 0x04 0000517c: DUP3 0000517d: ADD 0000517e: MSTORE 0000517f: PUSH1 0x01 00005181: PUSH1 0x01 00005183: PUSH1 0xa0 00005185: SHL 00005186: SUB 00005187: SWAP1 00005188: SWAP2 00005189: AND 0000518a: PUSH1 0x24 0000518c: DUP3 0000518d: ADD 0000518e: MSTORE 0000518f: SWAP3 00005190: DUP4 00005191: SWAP2 00005192: SWAP1 00005193: DUP3 00005194: SWAP1 00005195: DUP2 00005196: SWAP1 00005197: PUSH1 0x44 00005199: DUP3 0000519a: ADD 0000519b: SWAP1 0000519c: JUMP 0000519d: JUMPDEST 0000519e: SUB 0000519f: SWAP2 000051a0: GAS 000051a1: STATICCALL 000051a2: SWAP1 000051a3: DUP2 000051a4: ISZERO 000051a5: PUSH2 0x0bae 000051a8: JUMPI 000051a9: PUSH0 000051aa: SWAP2 000051ab: PUSH2 0x5343 000051ae: JUMPI 000051af: JUMPDEST 000051b0: POP 000051b1: DUP1 000051b2: CALLVALUE 000051b3: LT 000051b4: PUSH2 0x532d 000051b7: JUMPI 000051b8: POP 000051b9: PUSH2 0x5212 000051bc: PUSH2 0x51e3 000051bf: DUP4 000051c0: PUSH2 0x51de 000051c3: PUSH1 0x02 000051c5: PUSH2 0x51d6 000051c8: DUP7 000051c9: PUSH0 000051ca: MSTORE 000051cb: PUSH1 0x0e 000051cd: PUSH1 0x20 000051cf: MSTORE 000051d0: PUSH1 0x40 000051d2: PUSH0 000051d3: KECCAK256 000051d4: SWAP1 000051d5: JUMP 000051d6: JUMPDEST 000051d7: ADD 000051d8: SLOAD 000051d9: PUSH1 0x80 000051db: SHR 000051dc: SWAP1 000051dd: JUMP 000051de: JUMPDEST 000051df: PUSH2 0x5119 000051e2: JUMP 000051e3: JUMPDEST 000051e4: PUSH1 0x02 000051e6: PUSH2 0x51f7 000051e9: DUP5 000051ea: PUSH0 000051eb: MSTORE 000051ec: PUSH1 0x0e 000051ee: PUSH1 0x20 000051f0: MSTORE 000051f1: PUSH1 0x40 000051f3: PUSH0 000051f4: KECCAK256 000051f5: SWAP1 000051f6: JUMP 000051f7: JUMPDEST 000051f8: ADD 000051f9: SWAP1 000051fa: PUSH1 0x01 000051fc: PUSH1 0x01 000051fe: PUSH1 0x80 00005200: SHL 00005201: SUB 00005202: DUP3 00005203: SLOAD 00005204: SWAP2 00005205: DUP2 00005206: NOT 00005207: SWAP1 00005208: PUSH1 0x80 0000520a: SHL 0000520b: AND 0000520c: SWAP2 0000520d: AND 0000520e: OR 0000520f: SWAP1 00005210: SSTORE 00005211: JUMP 00005212: JUMPDEST 00005213: PUSH2 0x5229 00005216: PUSH1 0x02 00005218: PUSH2 0x3cc0 0000521b: DUP4 0000521c: PUSH0 0000521d: MSTORE 0000521e: PUSH1 0x0e 00005220: PUSH1 0x20 00005222: MSTORE 00005223: PUSH1 0x40 00005225: PUSH0 00005226: KECCAK256 00005227: SWAP1 00005228: JUMP 00005229: JUMPDEST 0000522a: PUSH1 0x01 0000522c: PUSH1 0x01 0000522e: PUSH1 0x80 00005230: SHL 00005231: SUB 00005232: PUSH2 0x5262 00005235: PUSH2 0x4185 00005238: PUSH2 0x524b 0000523b: PUSH1 0x20 0000523d: DUP6 0000523e: ADD 0000523f: MLOAD 00005240: PUSH1 0x01 00005242: PUSH1 0x01 00005244: PUSH1 0x80 00005246: SHL 00005247: SUB 00005248: AND 00005249: SWAP1 0000524a: JUMP 0000524b: JUMPDEST 0000524c: SWAP4 0000524d: PUSH2 0x07f9 00005250: PUSH1 0x40 00005252: PUSH2 0x40d6 00005255: DUP4 00005256: MLOAD 00005257: PUSH1 0x01 00005259: PUSH1 0x01 0000525b: PUSH1 0x80 0000525d: SHL 0000525e: SUB 0000525f: AND 00005260: SWAP1 00005261: JUMP 00005262: JUMPDEST 00005263: SWAP2 00005264: AND 00005265: LT 00005266: ISZERO 00005267: PUSH2 0x52fc 0000526a: JUMPI 0000526b: JUMPDEST 0000526c: PUSH32 0x40b88e5c41c5a97ffb7b6ef88a0a2d505aa0c634cf8a0275cb236ea7dd87ed4d 0000528d: PUSH1 0x01 0000528f: PUSH1 0x01 00005291: PUSH1 0xa0 00005293: SHL 00005294: SUB 00005295: PUSH2 0x52ab 00005298: PUSH1 0x01 0000529a: PUSH2 0x441d 0000529d: DUP6 0000529e: PUSH0 0000529f: MSTORE 000052a0: PUSH1 0x0e 000052a2: PUSH1 0x20 000052a4: MSTORE 000052a5: PUSH1 0x40 000052a7: PUSH0 000052a8: KECCAK256 000052a9: SWAP1 000052aa: JUMP 000052ab: JUMPDEST 000052ac: PUSH2 0x52e0 000052af: PUSH1 0x01 000052b1: PUSH1 0x01 000052b3: PUSH1 0x80 000052b5: SHL 000052b6: SUB 000052b7: DUP7 000052b8: AND 000052b9: PUSH2 0x52d3 000052bc: DUP4 000052bd: PUSH1 0x01 000052bf: PUSH1 0x01 000052c1: PUSH1 0xa0 000052c3: SHL 000052c4: SUB 000052c5: AND 000052c6: PUSH0 000052c7: MSTORE 000052c8: PUSH1 0x07 000052ca: PUSH1 0x20 000052cc: MSTORE 000052cd: PUSH1 0x40 000052cf: PUSH0 000052d0: KECCAK256 000052d1: SWAP1 000052d2: JUMP 000052d3: JUMPDEST 000052d4: DUP2 000052d5: DUP2 000052d6: SLOAD 000052d7: SUB 000052d8: SWAP1 000052d9: SSTORE 000052da: DUP8 000052db: DUP4 000052dc: PUSH2 0x468c 000052df: JUMP 000052e0: JUMPDEST 000052e1: PUSH1 0x40 000052e3: MLOAD 000052e4: PUSH1 0x01 000052e6: PUSH1 0x01 000052e8: PUSH1 0x80 000052ea: SHL 000052eb: SUB 000052ec: SWAP6 000052ed: SWAP1 000052ee: SWAP6 000052ef: AND 000052f0: DUP6 000052f1: MSTORE 000052f2: DUP2 000052f3: AND 000052f4: SWAP5 000052f5: AND 000052f6: SWAP3 000052f7: PUSH1 0x20 000052f9: SWAP1 000052fa: LOG4 000052fb: JUMP 000052fc: JUMPDEST 000052fd: PUSH2 0x5313 00005300: PUSH1 0x01 00005302: PUSH2 0x45ae 00005305: DUP4 00005306: PUSH0 00005307: MSTORE 00005308: PUSH1 0x0e 0000530a: PUSH1 0x20 0000530c: MSTORE 0000530d: PUSH1 0x40 0000530f: PUSH0 00005310: KECCAK256 00005311: SWAP1 00005312: JUMP 00005313: JUMPDEST 00005314: PUSH2 0x5328 00005317: PUSH2 0x1716 0000531a: DUP3 0000531b: PUSH0 0000531c: MSTORE 0000531d: PUSH1 0x0e 0000531f: PUSH1 0x20 00005321: MSTORE 00005322: PUSH1 0x40 00005324: PUSH0 00005325: KECCAK256 00005326: SWAP1 00005327: JUMP 00005328: JUMPDEST 00005329: PUSH2 0x526b 0000532c: JUMP 0000532d: JUMPDEST 0000532e: PUSH4 0x4fc1eeff 00005333: PUSH1 0xe0 00005335: SHL 00005336: PUSH0 00005337: MSTORE 00005338: CALLVALUE 00005339: PUSH1 0x04 0000533b: MSTORE 0000533c: PUSH1 0x24 0000533e: MSTORE 0000533f: PUSH1 0x44 00005341: PUSH0 00005342: REVERT 00005343: JUMPDEST 00005344: PUSH2 0x535c 00005347: SWAP2 00005348: POP 00005349: PUSH1 0x20 0000534b: RETURNDATASIZE 0000534c: PUSH1 0x20 0000534e: GT 0000534f: PUSH2 0x10d2 00005352: JUMPI 00005353: PUSH2 0x10c3 00005356: DUP2 00005357: DUP4 00005358: PUSH2 0x240b 0000535b: JUMP 0000535c: JUMPDEST 0000535d: PUSH0 0000535e: PUSH2 0x51af 00005361: JUMP 00005362: JUMPDEST 00005363: PUSH2 0x5374 00005366: SWAP1 00005367: PUSH0 00005368: MSTORE 00005369: PUSH1 0x05 0000536b: PUSH1 0x20 0000536d: MSTORE 0000536e: PUSH1 0x40 00005370: PUSH0 00005371: KECCAK256 00005372: SWAP1 00005373: JUMP 00005374: JUMPDEST 00005375: DUP1 00005376: SLOAD 00005377: PUSH1 0x01 00005379: PUSH1 0x01 0000537b: PUSH1 0xa0 0000537d: SHL 0000537e: SUB 0000537f: NOT 00005380: AND 00005381: SWAP1 00005382: SSTORE 00005383: JUMP 00005384: JUMPDEST 00005385: DUP2 00005386: PUSH0 00005387: MSTORE 00005388: PUSH1 0x03 0000538a: PUSH1 0x20 0000538c: MSTORE 0000538d: PUSH1 0x01 0000538f: PUSH1 0x01 00005391: PUSH1 0xa0 00005393: SHL 00005394: SUB 00005395: PUSH1 0x40 00005397: PUSH0 00005398: KECCAK256 00005399: SLOAD 0000539a: AND 0000539b: SWAP3 0000539c: PUSH1 0x01 0000539e: PUSH1 0x01 000053a0: PUSH1 0xa0 000053a2: SHL 000053a3: SUB 000053a4: DUP2 000053a5: AND 000053a6: PUSH2 0x545f 000053a9: JUMPI 000053aa: JUMPDEST 000053ab: POP 000053ac: PUSH1 0x01 000053ae: PUSH1 0x01 000053b0: PUSH1 0xa0 000053b2: SHL 000053b3: SUB 000053b4: DUP4 000053b5: AND 000053b6: DUP1 000053b7: PUSH2 0x542f 000053ba: JUMPI 000053bb: JUMPDEST 000053bc: PUSH2 0x53e1 000053bf: PUSH1 0x01 000053c1: PUSH1 0x01 000053c3: PUSH1 0xa0 000053c5: SHL 000053c6: SUB 000053c7: DUP4 000053c8: AND 000053c9: SWAP3 000053ca: DUP4 000053cb: PUSH2 0x5408 000053ce: JUMPI 000053cf: JUMPDEST 000053d0: PUSH2 0x06ed 000053d3: DUP6 000053d4: PUSH0 000053d5: MSTORE 000053d6: PUSH1 0x03 000053d8: PUSH1 0x20 000053da: MSTORE 000053db: PUSH1 0x40 000053dd: PUSH0 000053de: KECCAK256 000053df: SWAP1 000053e0: JUMP 000053e1: JUMPDEST 000053e2: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 00005403: PUSH0 00005404: DUP1 00005405: LOG4 00005406: SWAP1 00005407: JUMP 00005408: JUMPDEST 00005409: PUSH2 0x5423 0000540c: DUP2 0000540d: PUSH1 0x01 0000540f: PUSH1 0x01 00005411: PUSH1 0xa0 00005413: SHL 00005414: SUB 00005415: AND 00005416: PUSH0 00005417: MSTORE 00005418: PUSH1 0x04 0000541a: PUSH1 0x20 0000541c: MSTORE 0000541d: PUSH1 0x40 0000541f: PUSH0 00005420: KECCAK256 00005421: SWAP1 00005422: JUMP 00005423: JUMPDEST 00005424: PUSH1 0x01 00005426: DUP2 00005427: SLOAD 00005428: ADD 00005429: SWAP1 0000542a: SSTORE 0000542b: PUSH2 0x53cf 0000542e: JUMP 0000542f: JUMPDEST 00005430: PUSH2 0x5438 00005433: DUP4 00005434: PUSH2 0x5362 00005437: JUMP 00005438: JUMPDEST 00005439: PUSH2 0x5453 0000543c: DUP5 0000543d: PUSH1 0x01 0000543f: PUSH1 0x01 00005441: PUSH1 0xa0 00005443: SHL 00005444: SUB 00005445: AND 00005446: PUSH0 00005447: MSTORE 00005448: PUSH1 0x04 0000544a: PUSH1 0x20 0000544c: MSTORE 0000544d: PUSH1 0x40 0000544f: PUSH0 00005450: KECCAK256 00005451: SWAP1 00005452: JUMP 00005453: JUMPDEST 00005454: DUP1 00005455: SLOAD 00005456: PUSH0 00005457: NOT 00005458: ADD 00005459: SWAP1 0000545a: SSTORE 0000545b: PUSH2 0x53bb 0000545e: JUMP 0000545f: JUMPDEST 00005460: PUSH2 0x546a 00005463: DUP4 00005464: DUP3 00005465: DUP7 00005466: PUSH2 0x54b0 00005469: JUMP 0000546a: JUMPDEST 0000546b: PUSH2 0x53aa 0000546e: JUMPI 0000546f: SWAP1 00005470: POP 00005471: PUSH1 0x01 00005473: PUSH1 0x01 00005475: PUSH1 0xa0 00005477: SHL 00005478: SUB 00005479: DUP4 0000547a: AND 0000547b: PUSH2 0x5491 0000547e: JUMPI 0000547f: POP 00005480: PUSH4 0x7e273289 00005485: PUSH1 0xe0 00005487: SHL 00005488: PUSH0 00005489: MSTORE 0000548a: PUSH1 0x04 0000548c: MSTORE 0000548d: PUSH1 0x24 0000548f: PUSH0 00005490: REVERT 00005491: JUMPDEST 00005492: PUSH1 0x01 00005494: PUSH1 0x01 00005496: PUSH1 0xa0 00005498: SHL 00005499: SUB 0000549a: SWAP1 0000549b: PUSH4 0x177e802f 000054a0: PUSH1 0xe0 000054a2: SHL 000054a3: PUSH0 000054a4: MSTORE 000054a5: AND 000054a6: PUSH1 0x04 000054a8: MSTORE 000054a9: PUSH1 0x24 000054ab: MSTORE 000054ac: PUSH1 0x44 000054ae: PUSH0 000054af: REVERT 000054b0: JUMPDEST 000054b1: SWAP2 000054b2: PUSH1 0x01 000054b4: PUSH1 0x01 000054b6: PUSH1 0xa0 000054b8: SHL 000054b9: SUB 000054ba: DUP3 000054bb: AND 000054bc: SWAP1 000054bd: DUP2 000054be: ISZERO 000054bf: ISZERO 000054c0: SWAP4 000054c1: DUP5 000054c2: PUSH2 0x54cd 000054c5: JUMPI 000054c6: JUMPDEST 000054c7: POP 000054c8: POP 000054c9: POP 000054ca: POP 000054cb: SWAP1 000054cc: JUMP 000054cd: JUMPDEST 000054ce: PUSH1 0x01 000054d0: PUSH1 0x01 000054d2: PUSH1 0xa0 000054d4: SHL 000054d5: SUB 000054d6: AND 000054d7: DUP1 000054d8: DUP4 000054d9: EQ 000054da: SWAP5 000054db: POP 000054dc: SWAP2 000054dd: SWAP3 000054de: SWAP1 000054df: SWAP2 000054e0: DUP5 000054e1: ISZERO 000054e2: PUSH2 0x551a 000054e5: JUMPI 000054e6: JUMPDEST 000054e7: POP 000054e8: POP 000054e9: DUP3 000054ea: ISZERO 000054eb: PUSH2 0x54fa 000054ee: JUMPI 000054ef: JUMPDEST 000054f0: POP 000054f1: POP 000054f2: PUSH0 000054f3: DUP1 000054f4: DUP1 000054f5: DUP1 000054f6: PUSH2 0x54c6 000054f9: JUMP 000054fa: JUMPDEST 000054fb: SWAP1 000054fc: SWAP2 000054fd: POP 000054fe: PUSH0 000054ff: MSTORE 00005500: PUSH1 0x05 00005502: PUSH1 0x20 00005504: MSTORE 00005505: PUSH1 0x01 00005507: PUSH1 0x01 00005509: PUSH1 0xa0 0000550b: SHL 0000550c: SUB 0000550d: PUSH1 0x40 0000550f: PUSH0 00005510: KECCAK256 00005511: SLOAD 00005512: AND 00005513: EQ 00005514: PUSH0 00005515: DUP1 00005516: PUSH2 0x54ef 00005519: JUMP 0000551a: JUMPDEST 0000551b: PUSH1 0xff 0000551d: SWAP3 0000551e: SWAP5 0000551f: POP 00005520: SWAP1 00005521: PUSH2 0x5545 00005524: SWAP2 00005525: PUSH0 00005526: MSTORE 00005527: PUSH1 0x06 00005529: PUSH1 0x20 0000552b: MSTORE 0000552c: PUSH1 0x40 0000552e: PUSH0 0000552f: KECCAK256 00005530: SWAP1 00005531: PUSH1 0x01 00005533: PUSH1 0x01 00005535: PUSH1 0xa0 00005537: SHL 00005538: SUB 00005539: AND 0000553a: PUSH0 0000553b: MSTORE 0000553c: PUSH1 0x20 0000553e: MSTORE 0000553f: PUSH1 0x40 00005541: PUSH0 00005542: KECCAK256 00005543: SWAP1 00005544: JUMP 00005545: JUMPDEST 00005546: SLOAD 00005547: AND 00005548: SWAP2 00005549: PUSH0 0000554a: DUP1 0000554b: PUSH2 0x54e6 0000554e: JUMP 0000554f: JUMPDEST 00005550: SWAP1 00005551: PUSH0 00005552: PUSH1 0x20 00005554: SWAP2 00005555: DUP3 00005556: DUP2 00005557: MLOAD 00005558: SWAP2 00005559: ADD 0000555a: DUP3 0000555b: DUP6 0000555c: GAS 0000555d: CALL 0000555e: ISZERO 0000555f: PUSH2 0x34f7 00005562: JUMPI 00005563: PUSH0 00005564: MLOAD 00005565: RETURNDATASIZE 00005566: PUSH2 0x559a 00005569: JUMPI 0000556a: POP 0000556b: PUSH1 0x01 0000556d: PUSH1 0x01 0000556f: PUSH1 0xa0 00005571: SHL 00005572: SUB 00005573: DUP2 00005574: AND 00005575: EXTCODESIZE 00005576: ISZERO 00005577: JUMPDEST 00005578: PUSH2 0x557e 0000557b: JUMPI 0000557c: POP 0000557d: JUMP 0000557e: JUMPDEST 0000557f: PUSH1 0x01 00005581: PUSH1 0x01 00005583: PUSH1 0xa0 00005585: SHL 00005586: SUB 00005587: SWAP1 00005588: PUSH4 0x5274afe7 0000558d: PUSH1 0xe0 0000558f: SHL 00005590: PUSH0 00005591: MSTORE 00005592: AND 00005593: PUSH1 0x04 00005595: MSTORE 00005596: PUSH1 0x24 00005598: PUSH0 00005599: REVERT 0000559a: JUMPDEST 0000559b: PUSH1 0x01 0000559d: EQ 0000559e: ISZERO 0000559f: PUSH2 0x5577 000055a2: JUMP 000055a3: JUMPDEST 000055a4: SWAP1 000055a5: PUSH1 0x03 000055a7: DUP2 000055a8: LT 000055a9: ISZERO 000055aa: PUSH2 0x0872 000055ad: JUMPI 000055ae: DUP2 000055af: SLOAD 000055b0: PUSH1 0xff 000055b2: PUSH1 0xb0 000055b4: SHL 000055b5: NOT 000055b6: AND 000055b7: PUSH1 0xb0 000055b9: SWAP2 000055ba: SWAP1 000055bb: SWAP2 000055bc: SHL 000055bd: PUSH1 0xff 000055bf: PUSH1 0xb0 000055c1: SHL 000055c2: AND 000055c3: OR 000055c4: SWAP1 000055c5: SSTORE 000055c6: JUMP 000055c7: JUMPDEST 000055c8: PUSH1 0x02 000055ca: PUSH2 0x0120 000055cd: PUSH2 0x243b 000055d0: SWAP4 000055d1: PUSH2 0x5600 000055d4: PUSH2 0x55e4 000055d7: DUP3 000055d8: MLOAD 000055d9: PUSH1 0x01 000055db: PUSH1 0x01 000055dd: PUSH1 0xa0 000055df: SHL 000055e0: SUB 000055e1: AND 000055e2: SWAP1 000055e3: JUMP 000055e4: JUMPDEST 000055e5: DUP6 000055e6: SLOAD 000055e7: PUSH1 0x01 000055e9: PUSH1 0x01 000055eb: PUSH1 0xa0 000055ed: SHL 000055ee: SUB 000055ef: NOT 000055f0: AND 000055f1: PUSH1 0x01 000055f3: PUSH1 0x01 000055f5: PUSH1 0xa0 000055f7: SHL 000055f8: SUB 000055f9: SWAP1 000055fa: SWAP2 000055fb: AND 000055fc: OR 000055fd: DUP6 000055fe: SSTORE 000055ff: JUMP 00005600: JUMPDEST 00005601: PUSH2 0x5637 00005604: PUSH2 0x5615 00005607: PUSH1 0x20 00005609: DUP4 0000560a: ADD 0000560b: MLOAD 0000560c: PUSH5 0xffffffffff 00005612: AND 00005613: SWAP1 00005614: JUMP 00005615: JUMPDEST 00005616: DUP6 00005617: SLOAD 00005618: PUSH5 0xffffffffff 0000561e: PUSH1 0xa0 00005620: SHL 00005621: NOT 00005622: AND 00005623: PUSH1 0xa0 00005625: SWAP2 00005626: SWAP1 00005627: SWAP2 00005628: SHL 00005629: PUSH5 0xffffffffff 0000562f: PUSH1 0xa0 00005631: SHL 00005632: AND 00005633: OR 00005634: DUP6 00005635: SSTORE 00005636: JUMP 00005637: JUMPDEST 00005638: PUSH2 0x566e 0000563b: PUSH2 0x564c 0000563e: PUSH1 0x40 00005640: DUP4 00005641: ADD 00005642: MLOAD 00005643: PUSH5 0xffffffffff 00005649: AND 0000564a: SWAP1 0000564b: JUMP 0000564c: JUMPDEST 0000564d: DUP6 0000564e: SLOAD 0000564f: PUSH5 0xffffffffff 00005655: PUSH1 0xc8 00005657: SHL 00005658: NOT 00005659: AND 0000565a: PUSH1 0xc8 0000565c: SWAP2 0000565d: SWAP1 0000565e: SWAP2 0000565f: SHL 00005660: PUSH5 0xffffffffff 00005666: PUSH1 0xc8 00005668: SHL 00005669: AND 0000566a: OR 0000566b: DUP6 0000566c: SSTORE 0000566d: JUMP 0000566e: JUMPDEST 0000566f: PUSH2 0x5698 00005672: PUSH2 0x567e 00005675: PUSH1 0x60 00005677: DUP4 00005678: ADD 00005679: MLOAD 0000567a: ISZERO 0000567b: ISZERO 0000567c: SWAP1 0000567d: JUMP 0000567e: JUMPDEST 0000567f: DUP6 00005680: SLOAD 00005681: PUSH1 0xff 00005683: PUSH1 0xf0 00005685: SHL 00005686: NOT 00005687: AND 00005688: SWAP1 00005689: ISZERO 0000568a: ISZERO 0000568b: PUSH1 0xf0 0000568d: SHL 0000568e: PUSH1 0xff 00005690: PUSH1 0xf0 00005692: SHL 00005693: AND 00005694: OR 00005695: DUP6 00005696: SSTORE 00005697: JUMP 00005698: JUMPDEST 00005699: PUSH2 0x56e0 0000569c: PUSH2 0x56a8 0000569f: PUSH1 0x80 000056a1: DUP4 000056a2: ADD 000056a3: MLOAD 000056a4: ISZERO 000056a5: ISZERO 000056a6: SWAP1 000056a7: JUMP 000056a8: JUMPDEST 000056a9: DUP6 000056aa: SLOAD 000056ab: PUSH1 0x01 000056ad: PUSH1 0x01 000056af: PUSH1 0xf8 000056b1: SHL 000056b2: SUB 000056b3: AND 000056b4: SWAP1 000056b5: ISZERO 000056b6: ISZERO 000056b7: PUSH1 0xf8 000056b9: SHL 000056ba: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 000056db: AND 000056dc: OR 000056dd: DUP6 000056de: SSTORE 000056df: JUMP 000056e0: JUMPDEST 000056e1: PUSH2 0x5783 000056e4: PUSH1 0x01 000056e6: DUP6 000056e7: ADD 000056e8: PUSH2 0x571a 000056eb: PUSH2 0x56fe 000056ee: PUSH1 0xa0 000056f0: DUP6 000056f1: ADD 000056f2: MLOAD 000056f3: PUSH1 0x01 000056f5: PUSH1 0x01 000056f7: PUSH1 0xa0 000056f9: SHL 000056fa: SUB 000056fb: AND 000056fc: SWAP1 000056fd: JUMP 000056fe: JUMPDEST 000056ff: DUP3 00005700: SLOAD 00005701: PUSH1 0x01 00005703: PUSH1 0x01 00005705: PUSH1 0xa0 00005707: SHL 00005708: SUB 00005709: NOT 0000570a: AND 0000570b: PUSH1 0x01 0000570d: PUSH1 0x01 0000570f: PUSH1 0xa0 00005711: SHL 00005712: SUB 00005713: SWAP1 00005714: SWAP2 00005715: AND 00005716: OR 00005717: DUP3 00005718: SSTORE 00005719: JUMP 0000571a: JUMPDEST 0000571b: PUSH2 0x5744 0000571e: PUSH2 0x572a 00005721: PUSH1 0xc0 00005723: DUP6 00005724: ADD 00005725: MLOAD 00005726: ISZERO 00005727: ISZERO 00005728: SWAP1 00005729: JUMP 0000572a: JUMPDEST 0000572b: DUP3 0000572c: SLOAD 0000572d: PUSH1 0xff 0000572f: PUSH1 0xa0 00005731: SHL 00005732: NOT 00005733: AND 00005734: SWAP1 00005735: ISZERO 00005736: ISZERO 00005737: PUSH1 0xa0 00005739: SHL 0000573a: PUSH1 0xff 0000573c: PUSH1 0xa0 0000573e: SHL 0000573f: AND 00005740: OR 00005741: DUP3 00005742: SSTORE 00005743: JUMP 00005744: JUMPDEST 00005745: PUSH2 0x576e 00005748: PUSH2 0x5754 0000574b: PUSH1 0xe0 0000574d: DUP6 0000574e: ADD 0000574f: MLOAD 00005750: ISZERO 00005751: ISZERO 00005752: SWAP1 00005753: JUMP 00005754: JUMPDEST 00005755: DUP3 00005756: SLOAD 00005757: PUSH1 0xff 00005759: PUSH1 0xa8 0000575b: SHL 0000575c: NOT 0000575d: AND 0000575e: SWAP1 0000575f: ISZERO 00005760: ISZERO 00005761: PUSH1 0xa8 00005763: SHL 00005764: PUSH1 0xff 00005766: PUSH1 0xa8 00005768: SHL 00005769: AND 0000576a: OR 0000576b: DUP3 0000576c: SSTORE 0000576d: JUMP 0000576e: JUMPDEST 0000576f: PUSH2 0x0100 00005772: DUP4 00005773: ADD 00005774: MLOAD 00005775: SWAP1 00005776: PUSH2 0x577e 00005779: DUP3 0000577a: PUSH2 0x2d19 0000577d: JUMP 0000577e: JUMPDEST 0000577f: PUSH2 0x55a3 00005782: JUMP 00005783: JUMPDEST 00005784: ADD 00005785: MLOAD 00005786: SWAP2 00005787: ADD 00005788: DUP2 00005789: MLOAD 0000578a: PUSH1 0x20 0000578c: DUP4 0000578d: ADD 0000578e: MLOAD 0000578f: PUSH1 0x80 00005791: SHL 00005792: PUSH16 0xffffffffffffffffffffffffffffffff 000057a3: NOT 000057a4: SWAP1 000057a5: DUP2 000057a6: AND 000057a7: PUSH1 0x01 000057a9: PUSH1 0x01 000057ab: PUSH1 0x80 000057ad: SHL 000057ae: SUB 000057af: SWAP3 000057b0: DUP4 000057b1: AND 000057b2: OR 000057b3: DUP4 000057b4: SSTORE 000057b5: PUSH1 0x40 000057b7: SWAP1 000057b8: SWAP4 000057b9: ADD 000057ba: MLOAD 000057bb: PUSH1 0x01 000057bd: SWAP1 000057be: SWAP3 000057bf: ADD 000057c0: DUP1 000057c1: SLOAD 000057c2: SWAP1 000057c3: SWAP4 000057c4: AND 000057c5: SWAP2 000057c6: AND 000057c7: OR 000057c8: SWAP1 000057c9: SSTORE 000057ca: JUMP 000057cb: JUMPDEST 000057cc: DUP5 000057cd: PUSH1 0x01 000057cf: SWAP4 000057d0: PUSH2 0x58c5 000057d3: PUSH2 0x58d0 000057d6: SWAP7 000057d7: DUP6 000057d8: PUSH2 0x589a 000057db: PUSH2 0x243b 000057de: SWAP14 000057df: PUSH2 0x588b 000057e2: DUP15 000057e3: PUSH2 0x5875 000057e6: PUSH1 0x01 000057e8: PUSH1 0x01 000057ea: PUSH1 0x80 000057ec: SHL 000057ed: SUB 000057ee: SWAP16 000057ef: SWAP11 000057f0: SWAP12 000057f1: SWAP15 000057f2: SWAP12 000057f3: PUSH2 0x586c 000057f6: PUSH2 0x58ca 000057f9: SWAP13 000057fa: PUSH2 0x3c26 000057fd: PUSH2 0x581d 00005800: PUSH1 0x20 00005802: PUSH2 0x5810 00005805: DUP5 00005806: MLOAD 00005807: PUSH5 0xffffffffff 0000580d: AND 0000580e: SWAP1 0000580f: JUMP 00005810: JUMPDEST 00005811: SWAP4 00005812: ADD 00005813: MLOAD 00005814: PUSH5 0xffffffffff 0000581a: AND 0000581b: SWAP1 0000581c: JUMP 0000581d: JUMPDEST 0000581e: SWAP2 0000581f: PUSH2 0x5838 00005822: PUSH2 0x5829 00005825: PUSH2 0x245d 00005828: JUMP 00005829: JUMPDEST 0000582a: PUSH1 0x01 0000582c: PUSH1 0x01 0000582e: PUSH1 0x80 00005830: SHL 00005831: SUB 00005832: SWAP1 00005833: SWAP13 00005834: AND 00005835: DUP13 00005836: MSTORE 00005837: JUMP 00005838: JUMPDEST 00005839: PUSH0 0000583a: PUSH1 0x20 0000583c: DUP13 0000583d: ADD 0000583e: MSTORE 0000583f: PUSH0 00005840: PUSH1 0x40 00005842: DUP13 00005843: ADD 00005844: MSTORE 00005845: PUSH2 0x585e 00005848: PUSH2 0x584f 0000584b: PUSH2 0x243d 0000584e: JUMP 0000584f: JUMPDEST 00005850: PUSH1 0x01 00005852: PUSH1 0x01 00005854: PUSH1 0xa0 00005856: SHL 00005857: SUB 00005858: SWAP1 00005859: SWAP14 0000585a: AND 0000585b: DUP14 0000585c: MSTORE 0000585d: JUMP 0000585e: JUMPDEST 0000585f: PUSH5 0xffffffffff 00005865: AND 00005866: PUSH1 0x20 00005868: DUP13 00005869: ADD 0000586a: MSTORE 0000586b: JUMP 0000586c: JUMPDEST 0000586d: ISZERO 0000586e: ISZERO 0000586f: PUSH1 0x60 00005871: DUP9 00005872: ADD 00005873: MSTORE 00005874: JUMP 00005875: JUMPDEST 00005876: PUSH0 00005877: PUSH1 0x80 00005879: DUP8 0000587a: ADD 0000587b: MSTORE 0000587c: PUSH1 0x01 0000587e: PUSH1 0x01 00005880: PUSH1 0xa0 00005882: SHL 00005883: SUB 00005884: AND 00005885: PUSH1 0xa0 00005887: DUP7 00005888: ADD 00005889: MSTORE 0000588a: JUMP 0000588b: JUMPDEST 0000588c: PUSH0 0000588d: PUSH1 0xc0 0000588f: DUP6 00005890: ADD 00005891: MSTORE 00005892: ISZERO 00005893: ISZERO 00005894: PUSH1 0xe0 00005896: DUP5 00005897: ADD 00005898: MSTORE 00005899: JUMP 0000589a: JUMPDEST 0000589b: PUSH2 0x58a8 0000589e: PUSH0 0000589f: PUSH2 0x0100 000058a2: DUP5 000058a3: ADD 000058a4: PUSH2 0x3b85 000058a7: JUMP 000058a8: JUMPDEST 000058a9: PUSH2 0x0120 000058ac: DUP3 000058ad: ADD 000058ae: MSTORE 000058af: PUSH2 0x58c0 000058b2: DUP5 000058b3: PUSH0 000058b4: MSTORE 000058b5: PUSH1 0x0e 000058b7: PUSH1 0x20 000058b9: MSTORE 000058ba: PUSH1 0x40 000058bc: PUSH0 000058bd: KECCAK256 000058be: SWAP1 000058bf: JUMP 000058c0: JUMPDEST 000058c1: PUSH2 0x55c7 000058c4: JUMP 000058c5: JUMPDEST 000058c6: PUSH2 0x59a3 000058c9: JUMP 000058ca: JUMPDEST 000058cb: ADD 000058cc: PUSH1 0x09 000058ce: SSTORE 000058cf: JUMP 000058d0: JUMPDEST 000058d1: AND 000058d2: SWAP1 000058d3: PUSH2 0x58ed 000058d6: DUP2 000058d7: PUSH1 0x01 000058d9: PUSH1 0x01 000058db: PUSH1 0xa0 000058dd: SHL 000058de: SUB 000058df: AND 000058e0: PUSH0 000058e1: MSTORE 000058e2: PUSH1 0x07 000058e4: PUSH1 0x20 000058e6: MSTORE 000058e7: PUSH1 0x40 000058e9: PUSH0 000058ea: KECCAK256 000058eb: SWAP1 000058ec: JUMP 000058ed: JUMPDEST 000058ee: DUP3 000058ef: DUP2 000058f0: SLOAD 000058f1: ADD 000058f2: SWAP1 000058f3: SSTORE 000058f4: ADDRESS 000058f5: SWAP1 000058f6: CALLER 000058f7: SWAP1 000058f8: PUSH2 0x59de 000058fb: JUMP 000058fc: JUMPDEST 000058fd: DUP5 000058fe: PUSH1 0x01 00005900: SWAP4 00005901: PUSH2 0x58c5 00005904: PUSH2 0x58d0 00005907: SWAP7 00005908: DUP6 00005909: PUSH2 0x5941 0000590c: PUSH2 0x243b 0000590f: SWAP14 00005910: PUSH2 0x588b 00005913: DUP15 00005914: PUSH2 0x5875 00005917: PUSH1 0x01 00005919: PUSH1 0x01 0000591b: PUSH1 0x80 0000591d: SHL 0000591e: SUB 0000591f: SWAP16 00005920: SWAP11 00005921: SWAP12 00005922: SWAP15 00005923: SWAP12 00005924: PUSH2 0x586c 00005927: PUSH2 0x58ca 0000592a: SWAP13 0000592b: PUSH2 0x3c26 0000592e: PUSH2 0x581d 00005931: PUSH1 0x20 00005933: PUSH2 0x5810 00005936: DUP5 00005937: MLOAD 00005938: PUSH5 0xffffffffff 0000593e: AND 0000593f: SWAP1 00005940: JUMP 00005941: JUMPDEST 00005942: PUSH2 0x58a8 00005945: DUP9 00005946: PUSH2 0x0100 00005949: DUP5 0000594a: ADD 0000594b: PUSH2 0x3b85 0000594e: JUMP 0000594f: JUMPDEST 00005950: DUP5 00005951: PUSH1 0x01 00005953: SWAP4 00005954: PUSH2 0x58c5 00005957: PUSH2 0x58d0 0000595a: SWAP7 0000595b: DUP6 0000595c: PUSH2 0x5994 0000595f: PUSH2 0x243b 00005962: SWAP14 00005963: PUSH2 0x588b 00005966: DUP15 00005967: PUSH2 0x5875 0000596a: PUSH1 0x01 0000596c: PUSH1 0x01 0000596e: PUSH1 0x80 00005970: SHL 00005971: SUB 00005972: SWAP16 00005973: SWAP11 00005974: SWAP12 00005975: SWAP15 00005976: SWAP12 00005977: PUSH2 0x586c 0000597a: PUSH2 0x58ca 0000597d: SWAP13 0000597e: PUSH2 0x3c26 00005981: PUSH2 0x581d 00005984: PUSH1 0x20 00005986: PUSH2 0x5810 00005989: DUP5 0000598a: MLOAD 0000598b: PUSH5 0xffffffffff 00005991: AND 00005992: SWAP1 00005993: JUMP 00005994: JUMPDEST 00005995: PUSH2 0x58a8 00005998: PUSH1 0x02 0000599a: PUSH2 0x0100 0000599d: DUP5 0000599e: ADD 0000599f: PUSH2 0x3b85 000059a2: JUMP 000059a3: JUMPDEST 000059a4: PUSH1 0x01 000059a6: PUSH1 0x01 000059a8: PUSH1 0xa0 000059aa: SHL 000059ab: SUB 000059ac: DUP2 000059ad: AND 000059ae: ISZERO 000059af: PUSH2 0x34cf 000059b2: JUMPI 000059b3: PUSH1 0x01 000059b5: PUSH1 0x01 000059b7: PUSH1 0xa0 000059b9: SHL 000059ba: SUB 000059bb: SWAP2 000059bc: PUSH2 0x59c4 000059bf: SWAP2 000059c0: PUSH2 0x41ae 000059c3: JUMP 000059c4: JUMPDEST 000059c5: AND 000059c6: PUSH2 0x59cb 000059c9: JUMPI 000059ca: JUMP 000059cb: JUMPDEST 000059cc: PUSH4 0x39e35637 000059d1: PUSH1 0xe1 000059d3: SHL 000059d4: PUSH0 000059d5: MSTORE 000059d6: PUSH0 000059d7: PUSH1 0x04 000059d9: MSTORE 000059da: PUSH1 0x24 000059dc: PUSH0 000059dd: REVERT 000059de: JUMPDEST 000059df: SWAP1 000059e0: SWAP2 000059e1: SWAP3 000059e2: PUSH1 0x01 000059e4: PUSH1 0x01 000059e6: PUSH1 0xa0 000059e8: SHL 000059e9: SUB 000059ea: PUSH2 0x243b 000059ed: SWAP5 000059ee: DUP2 000059ef: PUSH1 0x40 000059f1: MLOAD 000059f2: SWAP6 000059f3: PUSH4 0x23b872dd 000059f8: PUSH1 0xe0 000059fa: SHL 000059fb: PUSH1 0x20 000059fd: DUP9 000059fe: ADD 000059ff: MSTORE 00005a00: AND 00005a01: PUSH1 0x24 00005a03: DUP7 00005a04: ADD 00005a05: MSTORE 00005a06: AND 00005a07: PUSH1 0x44 00005a09: DUP5 00005a0a: ADD 00005a0b: MSTORE 00005a0c: PUSH1 0x64 00005a0e: DUP4 00005a0f: ADD 00005a10: MSTORE 00005a11: PUSH1 0x64 00005a13: DUP3 00005a14: MSTORE 00005a15: PUSH2 0x46c3 00005a18: PUSH1 0x84 00005a1a: DUP4 00005a1b: PUSH2 0x240b 00005a1e: JUMP 00005a1f: INVALID 00005a20: UNKNOWN(0xF8) 00005a21: UNKNOWN(0xE1) 00005a22: LOG1 00005a23: GAS 00005a24: UNKNOWN(0xBA) 00005a25: SWAP4 00005a26: SWAP9 00005a27: UNKNOWN(0xE0) 00005a28: NOT 00005a29: CREATE 00005a2a: UNKNOWN(0xB4) 00005a2b: SWAP14 00005a2c: CALL 00005a2d: LOG4 00005a2e: REVERT 00005a2f: UNKNOWN(0xE9) 00005a30: DUP15 00005a31: UNKNOWN(0xE1) 00005a32: PUSH27 0xe345cb5f6b5e2c27f5033e8ce7a2646970667358221220ab36e967 00005a4e: BYTE 00005a4f: UNKNOWN(0x0F) 00005a50: DUP4 00005a51: SDIV 00005a52: UNKNOWN(0x4E) 00005a53: CREATE2 00005a54: UNKNOWN(0x4E) 00005a55: PUSH20 0x8e4be2f0875bb56a9005dea3a0642b3f0c52c8e8 00005a6a: PUSH5 0x736f6c6343 00005a70: STOP 00005a71: ADDMOD 00005a72: SAR 00005a73: STOP 00005a74: CALLER
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | upgradeability | detector | Untrusted DELEGATECALL target reachable | 55 | no | no |
viewtrace_id: 0xe78274031b0a57a070c0b4e504bb3ba09db82116677aa0b32f6498a9be0b63b8
validation_json{
"sink": "DELEGATECALL",
"errors": 0,
"status": "unknown",
"attempts": 192,
"trace_id": "0xe78274031b0a57a070c0b4e504bb3ba09db82116677aa0b32f6498a9be0b63b8",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x01ffc9a7",
"selector": "0x01ffc9a7",
"calldata_variants": [
"0x01ffc9a7",
"0x01ffc9a70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x06fdde03",
"selector": "0x06fdde03",
"calldata_variants": [
"0x06fdde03",
"0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x081812fc",
"selector": "0x081812fc",
"calldata_variants": [
"0x081812fc",
"0x081812fc0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x095ea7b3",
"selector": "0x095ea7b3",
"calldata_variants": [
"0x095ea7b3",
"0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1400ecec",
"selector": "0x1400ecec",
"calldata_variants": [
"0x1400ecec",
"0x1400ecec0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1c1cdd4c",
"selector": "0x1c1cdd4c",
"calldata_variants": [
"0x1c1cdd4c",
"0x1c1cdd4c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1e897afb",
"selector": "0x1e897afb",
"calldata_variants": [
"0x1e897afb",
"0x1e897afb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1e99d569",
"selector": "0x1e99d569",
"calldata_variants": [
"0x1e99d569",
"0x1e99d5690000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2473,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
},
{
"pc": 3927,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
},
{
"pc": 6209,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
}
],
"guards_detected": [
{
"pc": 9986,
"type": "msg_sender_eq_const",
"value": 32
},
{
"pc": 11951,
"type": "msg_sender_eq_const",
"value": 32
},
{
"pc": 12684,
"type": "msg_sender_eq_const",
"value": 32
}
],
"delegatecall_count": 9,
"untrusted_delegatecall_count": 9
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0xf665db85558cda956695ebda56f66dcc9d51b3424b81ada3445776831ca5d7b4
call_targets:
0xcf8ce57fa442ba50acbc57147a62ad03873ffa73
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xf665db85558cda956695ebda56f66dcc9d51b3424b81ada3445776831ca5d7b4",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xcf8ce57fa442ba50acbc57147a62ad03873ffa73"
],
"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": "0x01ffc9a7",
"selector": "0x01ffc9a7",
"calldata_variants": [
"0x01ffc9a7",
"0x01ffc9a70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x06fdde03",
"selector": "0x06fdde03",
"calldata_variants": [
"0x06fdde03",
"0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x081812fc",
"selector": "0x081812fc",
"calldata_variants": [
"0x081812fc",
"0x081812fc0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x095ea7b3",
"selector": "0x095ea7b3",
"calldata_variants": [
"0x095ea7b3",
"0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1400ecec",
"selector": "0x1400ecec",
"calldata_variants": [
"0x1400ecec",
"0x1400ecec0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1c1cdd4c",
"selector": "0x1c1cdd4c",
"calldata_variants": [
"0x1c1cdd4c",
"0x1c1cdd4c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1e897afb",
"selector": "0x1e897afb",
"calldata_variants": [
"0x1e897afb",
"0x1e897afb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1e99d569",
"selector": "0x1e99d569",
"calldata_variants": [
"0x1e99d569",
"0x1e99d5690000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 5008,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 10069,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 12057,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 8,
"guards_detected": [
{
"pc": 9986,
"type": "msg_sender_eq_const",
"value": 32
},
{
"pc": 11951,
"type": "msg_sender_eq_const",
"value": 32
},
{
"pc": 12684,
"type": "msg_sender_eq_const",
"value": 32
}
]
}
|
| medium | upgradeability | cast | DELEGATECALL present | 80 | no | — |
viewevidence_json{
"notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
"delegatecall_count": 9
}
|
| medium | other | detector | CREATE/CREATE2 reachable | 45 | no | no |
viewtrace_id: 0xe8353242cfb6a3afa6eb40fc23af6c7ea302fae37d29e18bbc785c6487dcbca5
validation_json{
"sink": "CREATE",
"errors": 0,
"status": "unknown",
"attempts": 32,
"trace_id": "0xe8353242cfb6a3afa6eb40fc23af6c7ea302fae37d29e18bbc785c6487dcbca5",
"confirmed": false,
"trace_mode": "structLogs",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x01ffc9a7",
"selector": "0x01ffc9a7",
"calldata_variants": [
"0x01ffc9a7",
"0x01ffc9a70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x06fdde03",
"selector": "0x06fdde03",
"calldata_variants": [
"0x06fdde03",
"0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x081812fc",
"selector": "0x081812fc",
"calldata_variants": [
"0x081812fc",
"0x081812fc0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x095ea7b3",
"selector": "0x095ea7b3",
"calldata_variants": [
"0x095ea7b3",
"0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1400ecec",
"selector": "0x1400ecec",
"calldata_variants": [
"0x1400ecec",
"0x1400ecec0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1c1cdd4c",
"selector": "0x1c1cdd4c",
"calldata_variants": [
"0x1c1cdd4c",
"0x1c1cdd4c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1e897afb",
"selector": "0x1e897afb",
"calldata_variants": [
"0x1e897afb",
"0x1e897afb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1e99d569",
"selector": "0x1e99d569",
"calldata_variants": [
"0x1e99d569",
"0x1e99d5690000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"create_count": 1,
"create2_count": 1
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0xf665db85558cda956695ebda56f66dcc9d51b3424b81ada3445776831ca5d7b4
call_targets:
0xcf8ce57fa442ba50acbc57147a62ad03873ffa73
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xf665db85558cda956695ebda56f66dcc9d51b3424b81ada3445776831ca5d7b4",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xcf8ce57fa442ba50acbc57147a62ad03873ffa73"
],
"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": "0x01ffc9a7",
"selector": "0x01ffc9a7",
"calldata_variants": [
"0x01ffc9a7",
"0x01ffc9a70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x06fdde03",
"selector": "0x06fdde03",
"calldata_variants": [
"0x06fdde03",
"0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x081812fc",
"selector": "0x081812fc",
"calldata_variants": [
"0x081812fc",
"0x081812fc0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x095ea7b3",
"selector": "0x095ea7b3",
"calldata_variants": [
"0x095ea7b3",
"0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1400ecec",
"selector": "0x1400ecec",
"calldata_variants": [
"0x1400ecec",
"0x1400ecec0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1c1cdd4c",
"selector": "0x1c1cdd4c",
"calldata_variants": [
"0x1c1cdd4c",
"0x1c1cdd4c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1e897afb",
"selector": "0x1e897afb",
"calldata_variants": [
"0x1e897afb",
"0x1e897afb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1e99d569",
"selector": "0x1e99d569",
"calldata_variants": [
"0x1e99d569",
"0x1e99d5690000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 5008,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 10069,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 12057,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 8,
"guards_detected": [
{
"pc": 9986,
"type": "msg_sender_eq_const",
"value": 32
},
{
"pc": 11951,
"type": "msg_sender_eq_const",
"value": 32
},
{
"pc": 12684,
"type": "msg_sender_eq_const",
"value": 32
}
],
"untrusted_call_count": 8
}
|
| low | other | codex | Protocol fee can be paid once for multiple withdrawals via delegatecall batching | 65 | no | — |
viewevidence_json{
"evidence": "`withdrawMultiple` performs delegatecalls to `withdraw`, and `_withdraw` reads `msg.value` for the fee check; because delegatecall preserves the original `msg.value`, each sub-call sees the full fee amount.",
"locations": [
"contracts/src/SablierLockup.sol:417",
"contracts/src/SablierLockup.sol:663",
"contracts/node_modules/@sablier/evm-utils/src/Batch.sol:11"
],
"recommendation": "In `withdrawMultiple`, compute the total minimum fee across streams and require `msg.value` to cover the sum before performing internal withdrawals without per-call fee checks. Alternatively, refactor `withdraw` to accept an explicit fee parameter and decrement a running fee balance, or avoid delegatecall-based batching for payable functions.",
"exploit_scenario": "An attacker calls `withdrawMultiple` (or `batch` with multiple `withdraw` calls) and supplies `msg.value` equal to one stream\u2019s minimum fee. Each delegated `withdraw` reuses the same `msg.value`, so every fee check passes, allowing many withdrawals for the price of one. This under-collects protocol fees and lets users withdraw from many streams with a single fee payment."
}
|
| low | other | cast | Contract creation opcode present | 60 | no | — |
viewevidence_json{
"notes": "runtime can deploy contracts dynamically via CREATE/CREATE2",
"create_count": 1,
"create2_count": 1
}
|
| 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": 5
}
|
| 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": 15
}
|