39e8c34e-b418-47e4-a6fc-e194e181a094
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 |
|---|---|---|---|---|
| 31575 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 78077 | artifact.fetch | failed | 1 / 3 | 1 week ago |
| 78078 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 78079 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 78080 | capability.graph | complete | 1 / 3 | 1 week ago |
| 78081 | detector.run | complete | 1 / 3 | 1 week ago |
| 78082 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:1161355] OpenAI Codex v0.77.0 (research preview)
[codex:1161355] --------
[codex:1161355] workdir: /tmp/codex-multi-xfjhqe_9
[codex:1161355] model: gpt-5.2-codex
[codex:1161355] provider: openai
[codex:1161355] approval: never
[codex:1161355] sandbox: read-only
[codex:1161355] reasoning effort: xhigh
[codex:1161355] reasoning summaries: auto
[codex:1161355] session id: 019b8799-e591-7fc0-8a06-076d82c27579
[codex:1161355] --------
[codex:1161355] user
[codex:1161355] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:1161355]
[codex:1161355] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:1161355]
[codex:1161355] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:1161355] - Gas inefficiency, code quality, naming, or best practices
[codex:1161355] - Theoretical vulnerabilities without a clear extraction path
[codex:1161355] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:1161355] - Front-running unless it enables theft beyond MEV
[codex:1161355] - DoS, griefing, or issues that don't result in attacker profit
[codex:1161355] - Missing events, view function issues, or informational findings
[codex:1161355]
[codex:1161355] HIGH-VALUE PATTERNS TO HUNT:
[codex:1161355] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:1161355] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:1161355] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:1161355] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:1161355] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:1161355] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:1161355] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:1161355] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:1161355] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:1161355]
[codex:1161355] For each finding, you MUST provide:
[codex:1161355] 1. Exact file and line numbers of vulnerable code
[codex:1161355] 2. Step-by-step exploit transaction sequence
[codex:1161355] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:1161355]
[codex:1161355] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:1161355]
[codex:1161355] Output MUST be valid JSON matching the provided schema.
[codex:1161355] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:1161355] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:1161355] mcp startup: no servers
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Reading AUDIT_BUNDLE file**
[codex:1161355] exec
[codex:1161355] /bin/bash -lc ls in /tmp/codex-multi-xfjhqe_9 succeeded in 6ms:
[codex:1161355] AUDIT_BUNDLE.txt
[codex:1161355] codex-output-schema.json
[codex:1161355] contracts
[codex:1161355] exec
[codex:1161355] /bin/bash -lc 'rg --files' in /tmp/codex-multi-xfjhqe_9 succeeded in 10ms:
[codex:1161355] codex-output-schema.json
[codex:1161355] AUDIT_BUNDLE.txt
[codex:1161355] contracts/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol
[codex:1161355] contracts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol
[codex:1161355] contracts/contracts/interfaces/IVaultOsToken.sol
[codex:1161355] contracts/contracts/interfaces/IVaultAdmin.sol
[codex:1161355] contracts/contracts/interfaces/IKeeperRewards.sol
[codex:1161355] contracts/contracts/interfaces/IVaultEthStaking.sol
[codex:1161355] contracts/contracts/interfaces/IVaultsRegistry.sol
[codex:1161355] contracts/contracts/interfaces/IVaultVersion.sol
[codex:1161355] contracts/contracts/interfaces/IVaultEnterExit.sol
[codex:1161355] contracts/contracts/interfaces/IDepositDataRegistry.sol
[codex:1161355] contracts/contracts/interfaces/IKeeperOracles.sol
[codex:1161355] contracts/contracts/interfaces/IEthVault.sol
[codex:1161355] contracts/contracts/interfaces/IValidatorsRegistry.sol
[codex:1161355] contracts/contracts/interfaces/IKeeperValidators.sol
[codex:1161355] contracts/contracts/interfaces/IVaultValidators.sol
[codex:1161355] contracts/contracts/interfaces/ISharedMevEscrow.sol
[codex:1161355] contracts/contracts/interfaces/IMulticall.sol
[codex:1161355] contracts/contracts/interfaces/IOsTokenVaultController.sol
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Reading AUDIT_BUNDLE**
[codex:1161355] exec
[codex:1161355] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-xfjhqe_9 succeeded in 6ms:
[codex:1161355] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:1161355]
[codex:1161355] ================================================================================
[codex:1161355] FILE: contracts/contracts/base/Multicall.sol
[codex:1161355] ================================================================================
[codex:1161355] // SPDX-License-Identifier: GPL-2.0-or-later
[codex:1161355]
[codex:1161355] pragma solidity ^0.8.22;
[codex:1161355]
[codex:1161355] import '../interfaces/IMulticall.sol';
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @title Multicall
[codex:1161355] * @author Uniswap
[codex:1161355] * @notice Adopted from https://github.com/Uniswap/v3-periphery/blob/1d69caf0d6c8cfeae9acd1f34ead30018d6e6400/contracts/base/Multicall.sol
[codex:1161355] * @notice Enables calling multiple methods in a single call to the contract
[codex:1161355] */
[codex:1161355] abstract contract Multicall is IMulticall {
[codex:1161355] /// @inheritdoc IMulticall
[codex:1161355] function multicall(bytes[] calldata data) external override returns (bytes[] memory results) {
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Preparing to analyze contract vulnerabilities**
[codex:1161355] exec
[codex:1161355] /bin/bash -lc 'rg -n "contract EthVault|function|withdraw|exit|mint|deposit" contracts/contracts/vaults/ethereum/EthVault.sol' in /tmp/codex-multi-xfjhqe_9 succeeded in 12ms:
[codex:1161355] 26:contract EthVault is
[codex:1161355] 53: * @param depositDataRegistry The address of the DepositDataRegistry contract
[codex:1161355] 54: * @param exitingAssetsClaimDelay The delay after which the assets can be claimed after exiting from staking
[codex:1161355] 64: address depositDataRegistry,
[codex:1161355] 65: uint256 exitingAssetsClaimDelay
[codex:1161355] 68: VaultValidators(depositDataRegistry)
[codex:1161355] 69: VaultEnterExit(exitingAssetsClaimDelay)
[codex:1161355] 77: function initialize(
[codex:1161355] 94: function depositAndMintOsToken(
[codex:1161355] 99: deposit(msg.sender, referrer);
[codex:1161355] 101: // mint max OsToken shares based on the deposited amount
[codex:1161355] 104: mintOsToken(receiver, osTokenShares, referrer);
[codex:1161355] 109: function updateStateAndDepositAndMintOsToken(
[codex:1161355] 116: return depositAndMintOsToken(receiver, osTokenShares, referrer);
[codex:1161355] 120: function enterExitQueue(
[codex:1161355] 133: function vaultId() public pure virtual override(IVaultVersion, VaultVersion) returns (bytes32) {
[codex:1161355] 138: function version() public pure virtual override(IVaultVersion, VaultVersion) returns (uint8) {
[codex:1161355] 148: function __EthVault_init(
[codex:1161355] 165: function __EthVault_initV2() internal onlyInitializing {
[codex:1161355] exec
[codex:1161355] /bin/bash -lc "sed -n '1,220p' contracts/contracts/vaults/ethereum/EthVault.sol" in /tmp/codex-multi-xfjhqe_9 succeeded in 7ms:
[codex:1161355] // SPDX-License-Identifier: BUSL-1.1
[codex:1161355]
[codex:1161355] pragma solidity ^0.8.22;
[codex:1161355]
[codex:1161355] import {Initializable} from '@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol';
[codex:1161355] import {IEthVault} from '../../interfaces/IEthVault.sol';
[codex:1161355] import {IEthVaultFactory} from '../../interfaces/IEthVaultFactory.sol';
[codex:1161355] import {IKeeperRewards} from '../../interfaces/IKeeperRewards.sol';
[codex:1161355] import {Multicall} from '../../base/Multicall.sol';
[codex:1161355] import {VaultValidators} from '../modules/VaultValidators.sol';
[codex:1161355] import {VaultAdmin} from '../modules/VaultAdmin.sol';
[codex:1161355] import {VaultFee} from '../modules/VaultFee.sol';
[codex:1161355] import {VaultVersion, IVaultVersion} from '../modules/VaultVersion.sol';
[codex:1161355] import {VaultImmutables} from '../modules/VaultImmutables.sol';
[codex:1161355] import {VaultState} from '../modules/VaultState.sol';
[codex:1161355] import {VaultEnterExit, IVaultEnterExit} from '../modules/VaultEnterExit.sol';
[codex:1161355] import {VaultOsToken} from '../modules/VaultOsToken.sol';
[codex:1161355] import {VaultEthStaking} from '../modules/VaultEthStaking.sol';
[codex:1161355] import {VaultMev} from '../modules/VaultMev.sol';
[codex:1161355]
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Investigating deposit and withdrawal modules**
[codex:1161355] exec
[codex:1161355] /bin/bash -lc "sed -n '1,240p' contracts/contracts/vaults/modules/VaultEnterExit.sol" in /tmp/codex-multi-xfjhqe_9 succeeded in 5ms:
[codex:1161355] // SPDX-License-Identifier: BUSL-1.1
[codex:1161355]
[codex:1161355] pragma solidity ^0.8.22;
[codex:1161355]
[codex:1161355] import {Initializable} from '@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol';
[codex:1161355] import {SafeCast} from '@openzeppelin/contracts/utils/math/SafeCast.sol';
[codex:1161355] import {Math} from '@openzeppelin/contracts/utils/math/Math.sol';
[codex:1161355] import {IKeeperRewards} from '../../interfaces/IKeeperRewards.sol';
[codex:1161355] import {IVaultEnterExit} from '../../interfaces/IVaultEnterExit.sol';
[codex:1161355] import {ExitQueue} from '../../libraries/ExitQueue.sol';
[codex:1161355] import {Errors} from '../../libraries/Errors.sol';
[codex:1161355] import {VaultImmutables} from './VaultImmutables.sol';
[codex:1161355] import {VaultState} from './VaultState.sol';
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @title VaultEnterExit
[codex:1161355] * @author StakeWise
[codex:1161355] * @notice Defines the functionality for entering and exiting the Vault
[codex:1161355] */
[codex:1161355] abstract contract VaultEnterExit is VaultImmutables, Initializable, VaultState, IVaultEnterExit {
[codex:1161355] exec
[codex:1161355] /bin/bash -lc "sed -n '240,520p' contracts/contracts/vaults/modules/VaultEnterExit.sol" in /tmp/codex-multi-xfjhqe_9 succeeded in 5ms:
[codex:1161355] // calculate available assets
[codex:1161355] uint256 availableAssets = _vaultAssets() - _unclaimedAssets;
[codex:1161355] uint256 queuedAssets = convertToAssets(queuedShares);
[codex:1161355] if (queuedAssets > 0) {
[codex:1161355] unchecked {
[codex:1161355] // cannot underflow as availableAssets >= queuedV1Assets
[codex:1161355] availableAssets = availableAssets > queuedAssets ? availableAssets - queuedAssets : 0;
[codex:1161355] }
[codex:1161355] }
[codex:1161355] if (availableAssets == 0) return 0;
[codex:1161355]
[codex:1161355] // calculate number of tickets that can be withdrawn based on available assets
[codex:1161355] return _convertAssetsToExitTickets(Math.min(availableAssets, totalExitingAssets));
[codex:1161355] }
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @dev Internal function for transferring assets from the Vault to the receiver
[codex:1161355] * @dev IMPORTANT: because control is transferred to the receiver, care must be
[codex:1161355] * taken to not create reentrancy vulnerabilities. The Vault must follow the checks-effects-interactions pattern:
[codex:1161355] * https://docs.soliditylang.org/en/v0.8.22/security-considerations.html#use-the-checks-effects-interactions-pattern
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Reviewing _transferVaultAssets function**
[codex:1161355] exec
[codex:1161355] /bin/bash -lc "sed -n '1,260p' contracts/contracts/vaults/modules/VaultEthStaking.sol" in /tmp/codex-multi-xfjhqe_9 succeeded in 5ms:
[codex:1161355] // SPDX-License-Identifier: BUSL-1.1
[codex:1161355]
[codex:1161355] pragma solidity ^0.8.22;
[codex:1161355]
[codex:1161355] import {Initializable} from '@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol';
[codex:1161355] import {ReentrancyGuardUpgradeable} from '@openzeppelin/contracts-upgradeable/utils/ReentrancyGuardUpgradeable.sol';
[codex:1161355] import {Address} from '@openzeppelin/contracts/utils/Address.sol';
[codex:1161355] import {IEthValidatorsRegistry} from '../../interfaces/IEthValidatorsRegistry.sol';
[codex:1161355] import {IKeeperRewards} from '../../interfaces/IKeeperRewards.sol';
[codex:1161355] import {IVaultEthStaking} from '../../interfaces/IVaultEthStaking.sol';
[codex:1161355] import {Errors} from '../../libraries/Errors.sol';
[codex:1161355] import {VaultValidators} from './VaultValidators.sol';
[codex:1161355] import {VaultState} from './VaultState.sol';
[codex:1161355] import {VaultEnterExit} from './VaultEnterExit.sol';
[codex:1161355] import {VaultMev} from './VaultMev.sol';
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @title VaultEthStaking
[codex:1161355] * @author StakeWise
[codex:1161355] * @notice Defines the Ethereum staking functionality for the Vault
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Verifying reentrancy protections and state updates**
[codex:1161355] exec
[codex:1161355] /bin/bash -lc "sed -n '1,260p' contracts/contracts/vaults/modules/VaultOsToken.sol" in /tmp/codex-multi-xfjhqe_9 succeeded in 5ms:
[codex:1161355] // SPDX-License-Identifier: BUSL-1.1
[codex:1161355]
[codex:1161355] pragma solidity ^0.8.22;
[codex:1161355]
[codex:1161355] import {Math} from '@openzeppelin/contracts/utils/math/Math.sol';
[codex:1161355] import {SafeCast} from '@openzeppelin/contracts/utils/math/SafeCast.sol';
[codex:1161355] import {IOsTokenVaultController} from '../../interfaces/IOsTokenVaultController.sol';
[codex:1161355] import {IOsTokenConfig} from '../../interfaces/IOsTokenConfig.sol';
[codex:1161355] import {IVaultOsToken} from '../../interfaces/IVaultOsToken.sol';
[codex:1161355] import {Errors} from '../../libraries/Errors.sol';
[codex:1161355] import {VaultImmutables} from './VaultImmutables.sol';
[codex:1161355] import {VaultEnterExit, IVaultEnterExit} from './VaultEnterExit.sol';
[codex:1161355] import {VaultState} from './VaultState.sol';
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @title VaultOsToken
[codex:1161355] * @author StakeWise
[codex:1161355] * @notice Defines the functionality for minting OsToken
[codex:1161355] */
[codex:1161355] abstract contract VaultOsToken is VaultImmutables, VaultState, VaultEnterExit, IVaultOsToken {
[codex:1161355] exec
[codex:1161355] /bin/bash -lc "sed -n '260,520p' contracts/contracts/vaults/modules/VaultOsToken.sol" in /tmp/codex-multi-xfjhqe_9 succeeded in 5ms:
[codex:1161355] function _checkOsTokenPosition(address user) internal view {
[codex:1161355] // fetch user position
[codex:1161355] OsTokenPosition memory position = _positions[user];
[codex:1161355] if (position.shares == 0) return;
[codex:1161355]
[codex:1161355] // check whether vault assets are up to date
[codex:1161355] _checkHarvested();
[codex:1161355]
[codex:1161355] // sync fee
[codex:1161355] _syncPositionFee(position);
[codex:1161355]
[codex:1161355] // calculate and validate position LTV
[codex:1161355] if (_calcMaxOsTokenShares(convertToAssets(_balances[user])) < position.shares) {
[codex:1161355] revert Errors.LowLtv();
[codex:1161355] }
[codex:1161355] }
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @dev Internal function for calculating the maximum amount of osToken shares that can be minted
[codex:1161355] * @param assets The amount of assets to convert to osToken shares
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Analyzing token minting and redemption logic**
[codex:1161355] exec
[codex:1161355] /bin/bash -lc "sed -n '1,260p' contracts/contracts/vaults/modules/VaultState.sol" in /tmp/codex-multi-xfjhqe_9 succeeded in 5ms:
[codex:1161355] // SPDX-License-Identifier: BUSL-1.1
[codex:1161355]
[codex:1161355] pragma solidity ^0.8.22;
[codex:1161355]
[codex:1161355] import {Initializable} from '@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol';
[codex:1161355] import {SafeCast} from '@openzeppelin/contracts/utils/math/SafeCast.sol';
[codex:1161355] import {Math} from '@openzeppelin/contracts/utils/math/Math.sol';
[codex:1161355] import {IVaultState} from '../../interfaces/IVaultState.sol';
[codex:1161355] import {IKeeperRewards} from '../../interfaces/IKeeperRewards.sol';
[codex:1161355] import {ExitQueue} from '../../libraries/ExitQueue.sol';
[codex:1161355] import {Errors} from '../../libraries/Errors.sol';
[codex:1161355] import {VaultImmutables} from './VaultImmutables.sol';
[codex:1161355] import {VaultFee} from './VaultFee.sol';
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @title VaultState
[codex:1161355] * @author StakeWise
[codex:1161355] * @notice Defines Vault's state manipulation
[codex:1161355] */
[codex:1161355] abstract contract VaultState is VaultImmutables, Initializable, VaultFee, IVaultState {
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Checking Vault-related components**
[codex:1161355] exec
[codex:1161355] /bin/bash -lc "sed -n '1,220p' contracts/contracts/vaults/modules/VaultAdmin.sol" in /tmp/codex-multi-xfjhqe_9 succeeded in 6ms:
[codex:1161355] // SPDX-License-Identifier: BUSL-1.1
[codex:1161355]
[codex:1161355] pragma solidity ^0.8.22;
[codex:1161355]
[codex:1161355] import {Initializable} from '@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol';
[codex:1161355] import {IVaultAdmin} from '../../interfaces/IVaultAdmin.sol';
[codex:1161355] import {Errors} from '../../libraries/Errors.sol';
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @title VaultAdmin
[codex:1161355] * @author StakeWise
[codex:1161355] * @notice Defines the admin functionality for the Vault
[codex:1161355] */
[codex:1161355] abstract contract VaultAdmin is Initializable, IVaultAdmin {
[codex:1161355] /// @inheritdoc IVaultAdmin
[codex:1161355] address public override admin;
[codex:1161355]
[codex:1161355] /// @inheritdoc IVaultAdmin
[codex:1161355] function setMetadata(string calldata metadataIpfsHash) external override {
[codex:1161355] _checkAdmin();
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Noting VaultAdmin metadata role**
[codex:1161355] exec
[codex:1161355] /bin/bash -lc "sed -n '1,220p' contracts/contracts/vaults/modules/VaultFee.sol" in /tmp/codex-multi-xfjhqe_9 succeeded in 5ms:
[codex:1161355] // SPDX-License-Identifier: BUSL-1.1
[codex:1161355]
[codex:1161355] pragma solidity ^0.8.22;
[codex:1161355]
[codex:1161355] import {Initializable} from '@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol';
[codex:1161355] import {IVaultFee} from '../../interfaces/IVaultFee.sol';
[codex:1161355] import {IKeeperRewards} from '../../interfaces/IKeeperRewards.sol';
[codex:1161355] import {Errors} from '../../libraries/Errors.sol';
[codex:1161355] import {VaultAdmin} from './VaultAdmin.sol';
[codex:1161355] import {VaultImmutables} from './VaultImmutables.sol';
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @title VaultFee
[codex:1161355] * @author StakeWise
[codex:1161355] * @notice Defines the fee functionality for the Vault
[codex:1161355] */
[codex:1161355] abstract contract VaultFee is VaultImmutables, Initializable, VaultAdmin, IVaultFee {
[codex:1161355] uint256 internal constant _maxFeePercent = 10_000; // @dev 100.00 %
[codex:1161355]
[codex:1161355] /// @inheritdoc IVaultFee
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Considering VaultMev reference**
[codex:1161355] exec
[codex:1161355] /bin/bash -lc "sed -n '1,260p' contracts/contracts/vaults/modules/VaultMev.sol" in /tmp/codex-multi-xfjhqe_9 succeeded in 5ms:
[codex:1161355] // SPDX-License-Identifier: BUSL-1.1
[codex:1161355]
[codex:1161355] pragma solidity ^0.8.22;
[codex:1161355]
[codex:1161355] import {Initializable} from '@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol';
[codex:1161355] import {IKeeperRewards} from '../../interfaces/IKeeperRewards.sol';
[codex:1161355] import {ISharedMevEscrow} from '../../interfaces/ISharedMevEscrow.sol';
[codex:1161355] import {IOwnMevEscrow} from '../../interfaces/IOwnMevEscrow.sol';
[codex:1161355] import {IVaultMev} from '../../interfaces/IVaultMev.sol';
[codex:1161355] import {VaultState} from './VaultState.sol';
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @title VaultMev
[codex:1161355] * @author StakeWise
[codex:1161355] * @notice Defines the Vaults' MEV functionality
[codex:1161355] */
[codex:1161355] abstract contract VaultMev is Initializable, VaultState, IVaultMev {
[codex:1161355] /// @custom:oz-upgrades-unsafe-allow state-variable-immutable
[codex:1161355] address private immutable _sharedMevEscrow;
[codex:1161355] address private _ownMevEscrow;
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Checking VaultImmutables**
[codex:1161355] exec
[codex:1161355] /bin/bash -lc "sed -n '1,220p' contracts/contracts/vaults/modules/VaultImmutables.sol" in /tmp/codex-multi-xfjhqe_9 succeeded in 5ms:
[codex:1161355] // SPDX-License-Identifier: BUSL-1.1
[codex:1161355]
[codex:1161355] pragma solidity ^0.8.22;
[codex:1161355]
[codex:1161355] import {IKeeperRewards} from '../../interfaces/IKeeperRewards.sol';
[codex:1161355] import {Errors} from '../../libraries/Errors.sol';
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @title VaultImmutables
[codex:1161355] * @author StakeWise
[codex:1161355] * @notice Defines the Vault common immutable variables
[codex:1161355] */
[codex:1161355] abstract contract VaultImmutables {
[codex:1161355] /// @custom:oz-upgrades-unsafe-allow state-variable-immutable
[codex:1161355] address internal immutable _keeper;
[codex:1161355]
[codex:1161355] /// @custom:oz-upgrades-unsafe-allow state-variable-immutable
[codex:1161355] address internal immutable _vaultsRegistry;
[codex:1161355]
[codex:1161355] /// @custom:oz-upgrades-unsafe-allow state-variable-immutable
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Checking class inheritance**
[codex:1161355] exec
[codex:1161355] /bin/bash -lc "sed -n '1,220p' contracts/contracts/vaults/ethereum/EthPrivVault.sol" in /tmp/codex-multi-xfjhqe_9 succeeded in 5ms:
[codex:1161355] // SPDX-License-Identifier: BUSL-1.1
[codex:1161355]
[codex:1161355] pragma solidity ^0.8.22;
[codex:1161355]
[codex:1161355] import {Initializable} from '@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol';
[codex:1161355] import {IEthPrivVault} from '../../interfaces/IEthPrivVault.sol';
[codex:1161355] import {IEthVaultFactory} from '../../interfaces/IEthVaultFactory.sol';
[codex:1161355] import {VaultEthStaking, IVaultEthStaking} from '../modules/VaultEthStaking.sol';
[codex:1161355] import {VaultOsToken, IVaultOsToken} from '../modules/VaultOsToken.sol';
[codex:1161355] import {VaultWhitelist} from '../modules/VaultWhitelist.sol';
[codex:1161355] import {IVaultVersion} from '../modules/VaultVersion.sol';
[codex:1161355] import {EthVault, IEthVault} from './EthVault.sol';
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @title EthPrivVault
[codex:1161355] * @author StakeWise
[codex:1161355] * @notice Defines the Ethereum staking Vault with whitelist
[codex:1161355] */
[codex:1161355] contract EthPrivVault is Initializable, EthVault, VaultWhitelist, IEthPrivVault {
[codex:1161355] // slither-disable-next-line shadowing-state
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Analyzing signature replay risk in validator registration**
[codex:1161355] exec
[codex:1161355] /bin/bash -lc 'rg -n "KeeperValidators|approveValidators|validatorsRegistryRoot|register" -S contracts/contracts' in /tmp/codex-multi-xfjhqe_9 succeeded in 9ms:
[codex:1161355] contracts/contracts/interfaces/IDepositDataRegistry.sol:5:import {IKeeperValidators} from './IKeeperValidators.sol';
[codex:1161355] contracts/contracts/interfaces/IDepositDataRegistry.sol:33: * @param validatorIndex The index of the next validator to be registered
[codex:1161355] contracts/contracts/interfaces/IDepositDataRegistry.sol:46: * @return validatorIndex The index of the next validator to be registered
[codex:1161355] contracts/contracts/interfaces/IDepositDataRegistry.sol:79: * @notice Updates the vault state. Can be used in multicall to update state and register validator(s).
[codex:1161355] contracts/contracts/interfaces/IDepositDataRegistry.sol:89: * @notice Function for registering single validator
[codex:1161355] contracts/contracts/interfaces/IDepositDataRegistry.sol:94: function registerValidator(
[codex:1161355] contracts/contracts/interfaces/IDepositDataRegistry.sol:96: IKeeperValidators.ApprovalParams calldata keeperParams,
[codex:1161355] contracts/contracts/interfaces/IDepositDataRegistry.sol:101: * @notice Function for registering multiple validators
[codex:1161355] contracts/contracts/interfaces/IDepositDataRegistry.sol:108: function registerValidators(
[codex:1161355] contracts/contracts/interfaces/IDepositDataRegistry.sol:110: IKeeperValidators.ApprovalParams calldata keeperParams,
[codex:1161355] contracts/contracts/interfaces/IDepositDataRegistry.sol:119: * @param validatorIndex The current index of the next validator to be registered
[codex:1161355] contracts/contracts/interfaces/IKeeperRewards.sol:174: * @notice Checks whether the Vault has registered validators
[codex:1161355] contracts/contracts/interfaces/IOsTokenVaultController.sol:135: * @notice Mint OsToken shares. Can only be called by the registered vault.
[codex:1161355] contracts/contracts/interfaces/IOsTokenVaultController.sol:143: * @notice Burn shares for withdrawn assets. Can only be called by the registered vault.
[codex:1161355] contracts/contracts/interfaces/IKeeperOracles.sol:32: * @notice Function for verifying whether oracle is registered or not
[codex:1161355] contracts/contracts/interfaces/IKeeperOracles.sol:34: * @return `true` for the registered oracle, `false` otherwise
[codex:1161355] contracts/contracts/interfaces/IKeeperOracles.sol:40: * @return The total number of oracles registered
[codex:1161355] contracts/contracts/interfaces/IKeeperValidators.sol:9: * @title IKeeperValidators
[codex:1161355] contracts/contracts/interfaces/IKeeperValidators.sol:13:interface IKeeperValidators is IKeeperOracles, IKeeperRewards {
[codex:1161355] contracts/contracts/interfaces/IKeeperValidators.sol:50: * @param validatorsRegistryRoot The deposit data root used to verify that oracles approved validators
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Evaluating external dependencies and potential vulnerabilities**
[codex:1161355]
[codex:1161355] I'm reviewing how this contract relies on external Keeper validators and handling trusted libraries like OpenZeppelin, verifying assumptions. I'm inspecting possible exploit paths like reentrancy, share inflation, rounding errors, and access controls—especially around initialization, upgrades, and exit queues—to identify any edge cases that might enable profit or denial of service. There's a lot here about how shares and assets interact, so I'll keep digging into the exit queue logic next.
[codex:1161355] exec
[codex:1161355] /bin/bash -lc "sed -n '1,240p' contracts/contracts/libraries/ExitQueue.sol" in /tmp/codex-multi-xfjhqe_9 succeeded in 5ms:
[codex:1161355] // SPDX-License-Identifier: BUSL-1.1
[codex:1161355]
[codex:1161355] pragma solidity ^0.8.22;
[codex:1161355]
[codex:1161355] import {Math} from '@openzeppelin/contracts/utils/math/Math.sol';
[codex:1161355] import {SafeCast} from '@openzeppelin/contracts/utils/math/SafeCast.sol';
[codex:1161355] import {Errors} from './Errors.sol';
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @title ExitQueue
[codex:1161355] * @author StakeWise
[codex:1161355] * @notice ExitQueue represent checkpoints of burned shares and exited assets
[codex:1161355] */
[codex:1161355] library ExitQueue {
[codex:1161355] /**
[codex:1161355] * @notice A struct containing checkpoint data
[codex:1161355] * @param totalTickets The cumulative number of tickets (shares) exited
[codex:1161355] * @param exitedAssets The number of assets that exited in this checkpoint
[codex:1161355] */
[codex:1161355] struct Checkpoint {
[codex:1161355]
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Analyzing vault asset calculations and potential rounding edge cases**
[codex:1161355]
[codex:1161355] I'm carefully examining how checkpoint indexes, position tickets, and asset ratios interact to prevent exploits, especially around rounding in share minting and exit calculations. I'm also exploring if self-liquidation or forced ETH transfers could yield profit or manipulation opportunities, and checking the integrity of health factor checks and permissioned calls to spot subtle vulnerabilities. There is a lot here involving timing and rounding nuances that might affect vault asset accounting or liquidation fairness.
[codex:1161355] thinking
[codex:1161355] **Verifying deposit timing against MEV reward updates**
[codex:1161355]
[codex:1161355] I'm investigating how the system blocks deposits when harvests are pending, especially regarding MEV escrow ETH transfers that may add funds without immediately updating the vault’s accounting. The key question is whether deposits can sneak in before `_totalAssets` reflects these added rewards, potentially allowing share minting at a stale price. The interplay between keeper’s `isHarvestRequired` and MEV escrow timings is subtle and important here.
[codex:1161355] exec
[codex:1161355] /bin/bash -lc "sed -n '1,220p' contracts/contracts/interfaces/ISharedMevEscrow.sol" in /tmp/codex-multi-xfjhqe_9 succeeded in 6ms:
[codex:1161355] // SPDX-License-Identifier: BUSL-1.1
[codex:1161355]
[codex:1161355] pragma solidity ^0.8.22;
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @title ISharedMevEscrow
[codex:1161355] * @author StakeWise
[codex:1161355] * @notice Defines the interface for the SharedMevEscrow contract
[codex:1161355] */
[codex:1161355] interface ISharedMevEscrow {
[codex:1161355] /**
[codex:1161355] * @notice Event emitted on received MEV
[codex:1161355] * @param assets The amount of MEV assets received
[codex:1161355] */
[codex:1161355] event MevReceived(uint256 assets);
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @notice Event emitted on harvest
[codex:1161355] * @param caller The function caller
[codex:1161355] * @param assets The amount of assets withdrawn
[codex:1161355] exec
[codex:1161355] /bin/bash -lc "sed -n '1,220p' contracts/contracts/interfaces/IOwnMevEscrow.sol" in /tmp/codex-multi-xfjhqe_9 succeeded in 5ms:
[codex:1161355] // SPDX-License-Identifier: BUSL-1.1
[codex:1161355]
[codex:1161355] pragma solidity ^0.8.22;
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @title IOwnMevEscrow
[codex:1161355] * @author StakeWise
[codex:1161355] * @notice Defines the interface for the OwnMevEscrow contract
[codex:1161355] */
[codex:1161355] interface IOwnMevEscrow {
[codex:1161355] /**
[codex:1161355] * @notice Event emitted on received MEV
[codex:1161355] * @param assets The amount of MEV assets received
[codex:1161355] */
[codex:1161355] event MevReceived(uint256 assets);
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @notice Event emitted on harvest
[codex:1161355] * @param assets The amount of assets withdrawn
[codex:1161355] */
[codex:1161355]
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Analyzing vault and escrow ETH flow and reentrancy risks**
[codex:1161355]
[codex:1161355] There's a lot going on with how the MEV escrow sends ETH to the vault, especially distinguishing between the vault’s receive() fallback and the receiveFromMevEscrow() method to avoid unintended share minting. I'm digging into potential reentrancy vulnerabilities, notably around minting shares and exiting the vault, checking if external calls to trusted controllers could be dangerous. The exit queue and claim logic seem carefully designed to prevent double claims despite reentrancy risks, but I'm verifying edge cases with state updates and external calls to be sure no exploitable paths arise. Additionally, I'm investigating the validator registration process and signature validation to confirm assets and withdrawal credentials are handled safely and that no replay or impersonation issues exist. Overall, I’m piecing together the complex flow to understand if vault accounting correctly reflects the actual ETH state and if contract interactions maintain security guarantees.
[codex:1161355] thinking
[codex:1161355] **Examining fee syncing and MEV reward accounting**
[codex:1161355]
[codex:1161355] I'm exploring how fee synchronization updates position shares only in memory and doesn't persist immediately, which seems intentional but worth noting. There's a question about whether MEV rewards from shared escrow properly update the vault’s total assets since `_harvestAssets` doesn’t add unlocked MEV delta separately—I'm trying to confirm if the keeper’s reported `totalAssetsDelta` already includes those MEV rewards to avoid double counting. This matters because if the ETH is in the vault but `_totalAssets` isn’t increased accordingly, it could lead to discrepancies affecting shares or withdrawable assets. I'm also checking how initial vault deposits by itself (like security deposits) mint shares and the implications of that. Overall, I’m piecing together if asset accounting around MEV and fees aligns correctly across the system.
[codex:1161355] exec
[codex:1161355] /bin/bash -lc 'rg -n "function harvest" -n contracts/contracts/interfaces/IKeeperRewards.sol' in /tmp/codex-multi-xfjhqe_9 succeeded in 6ms:
[codex:1161355] 193: function harvest(
[codex:1161355] exec
[codex:1161355] /bin/bash -lc "sed -n '150,230p' contracts/contracts/interfaces/IKeeperRewards.sol" in /tmp/codex-multi-xfjhqe_9 succeeded in 5ms:
[codex:1161355] */
[codex:1161355] function unlockedMevRewards(address vault) external view returns (uint192 assets, uint64 nonce);
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @notice Checks whether Vault must be harvested
[codex:1161355] * @param vault The address of the Vault
[codex:1161355] * @return `true` if the Vault requires harvesting, `false` otherwise
[codex:1161355] */
[codex:1161355] function isHarvestRequired(address vault) external view returns (bool);
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @notice Checks whether the Vault can be harvested
[codex:1161355] * @param vault The address of the Vault
[codex:1161355] * @return `true` if Vault can be harvested, `false` otherwise
[codex:1161355] */
[codex:1161355] function canHarvest(address vault) external view returns (bool);
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @notice Checks whether rewards can be updated
[codex:1161355] * @return `true` if rewards can be updated, `false` otherwise
[codex:1161355]
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Analyzing MEV reward accounting and upgrade logic**
[codex:1161355] thinking
[codex:1161355] **Reviewing external calls and permission assumptions**
[codex:1161355]
[codex:1161355] I'll consider if attackers could supply malicious escrow addresses by deploying their own vaults, but that wouldn't affect existing vaults’ assets. Also, I'll think about permissions around registerValidators and whether external contracts trusted in the system could be exploited to trigger vault operations, though this seems unlikely. Overall, I want to confirm there’s no way to profit from existing vault assets through these paths.
[codex:1161355] exec
[codex:1161355] /bin/bash -lc 'rg --files contracts/contracts' in /tmp/codex-multi-xfjhqe_9 succeeded in 10ms:
[codex:1161355] contracts/contracts/interfaces/IEthValidatorsRegistry.sol
[codex:1161355] contracts/contracts/interfaces/IEthPrivVault.sol
[codex:1161355] contracts/contracts/interfaces/IVaultOsToken.sol
[codex:1161355] contracts/contracts/interfaces/IVaultAdmin.sol
[codex:1161355] contracts/contracts/interfaces/IKeeperRewards.sol
[codex:1161355] contracts/contracts/interfaces/IVaultEthStaking.sol
[codex:1161355] contracts/contracts/interfaces/IVaultsRegistry.sol
[codex:1161355] contracts/contracts/interfaces/IVaultVersion.sol
[codex:1161355] contracts/contracts/interfaces/IVaultEnterExit.sol
[codex:1161355] contracts/contracts/interfaces/IDepositDataRegistry.sol
[codex:1161355] contracts/contracts/interfaces/IKeeperOracles.sol
[codex:1161355] contracts/contracts/interfaces/IEthVault.sol
[codex:1161355] contracts/contracts/interfaces/IValidatorsRegistry.sol
[codex:1161355] contracts/contracts/interfaces/IKeeperValidators.sol
[codex:1161355] contracts/contracts/interfaces/IVaultValidators.sol
[codex:1161355] contracts/contracts/interfaces/ISharedMevEscrow.sol
[codex:1161355] contracts/contracts/interfaces/IMulticall.sol
[codex:1161355] contracts/contracts/interfaces/IOsTokenVaultController.sol
[codex:1161355] contracts/contracts/interfaces/IVaultFee.sol
[codex:1161355] contracts/contracts/interfaces/IOwnMevEscrow.sol
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Checking Errors library for issues**
[codex:1161355] exec
[codex:1161355] /bin/bash -lc "sed -n '1,200p' contracts/contracts/libraries/Errors.sol" in /tmp/codex-multi-xfjhqe_9 succeeded in 6ms:
[codex:1161355] // SPDX-License-Identifier: BUSL-1.1
[codex:1161355]
[codex:1161355] pragma solidity ^0.8.22;
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @title Errors
[codex:1161355] * @author StakeWise
[codex:1161355] * @notice Contains all the custom errors
[codex:1161355] */
[codex:1161355] library Errors {
[codex:1161355] error AccessDenied();
[codex:1161355] error InvalidShares();
[codex:1161355] error InvalidAssets();
[codex:1161355] error ZeroAddress();
[codex:1161355] error InsufficientAssets();
[codex:1161355] error CapacityExceeded();
[codex:1161355] error InvalidCapacity();
[codex:1161355] error InvalidSecurityDeposit();
[codex:1161355] error InvalidFeeRecipient();
[codex:1161355] error InvalidFeePercent();
[codex:1161355]
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Analyzing share rounding vulnerability**
[codex:1161355]
[codex:1161355] I'm exploring if the vault’s use of rounding up when converting assets to shares could let a depositor exploit rounding differences to gain disproportionate shares. The case seems subtle: if the share price is above 1, depositing a small amount might mint 1 whole share, which could be worth more than the deposit, leading to a small profit. However, the profit looks limited to about one extra share worth roughly the current share price, and the dynamics of totalShares and totalAssets keep their ratio close to 1, limiting exploitation scope. Repeated tiny deposits might aggregate small profits, but substantial draining seems unlikely under normal vault conditions. Let's see if any other mechanics enable or prevent this.
[codex:1161355] thinking
[codex:1161355] **Confirming minimal vulnerabilities and output plan**
[codex:1161355]
[codex:1161355] I'm concluding the rounding issue is negligible and other checks like LTV appear safe, with no obvious permit or missing code problems. To follow the user’s audit instructions carefully, I plan to confirm I've reviewed the entire audit bundle and then produce the required JSON output indicating no findings, adhering strictly to the user’s schema and requirements.
[codex:1161355] exec
[codex:1161355] /bin/bash -lc 'cat codex-output-schema.json' in /tmp/codex-multi-xfjhqe_9 succeeded in 5ms:
[codex:1161355] {"type": "object", "additionalProperties": false, "required": ["no_findings", "summary", "findings"], "properties": {"no_findings": {"type": "boolean"}, "summary": {"type": "string"}, "findings": {"type": "array", "items": {"type": "object", "additionalProperties": false, "required": ["severity", "category", "title", "evidence", "locations", "exploit_scenario", "recommendation"], "properties": {"severity": {"type": "string", "enum": ["info", "low", "medium", "high", "critical"]}, "category": {"type": "string", "enum": ["access_control", "reentrancy", "math", "oracle", "upgradeability", "auth", "other"]}, "title": {"type": "string"}, "exploit_scenario": {"type": "string"}, "recommendation": {"type": "string"}, "evidence": {"type": "string"}, "locations": {"type": "array", "items": {"type": "string"}}}}}}}
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Assessing potential vulnerabilities for exploitability**
[codex:1161355]
[codex:1161355] I'm carefully reviewing different contract functions and scenarios to spot any exploitable profit paths, paying close attention to signature validation, reentrancy possibilities, state updates, and access controls; after detailed analysis, no concrete exploit path appears to exist, so I'll ensure the output JSON properly reflects that with no findings.
[codex:1161355] exec
[codex:1161355] /bin/bash -lc "sed -n '1,220p' contracts/contracts/interfaces/IVaultEnterExit.sol" in /tmp/codex-multi-xfjhqe_9 succeeded in 6ms:
[codex:1161355] // SPDX-License-Identifier: BUSL-1.1
[codex:1161355]
[codex:1161355] pragma solidity ^0.8.22;
[codex:1161355]
[codex:1161355] import {IVaultState} from './IVaultState.sol';
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @title IVaultEnterExit
[codex:1161355] * @author StakeWise
[codex:1161355] * @notice Defines the interface for the VaultEnterExit contract
[codex:1161355] */
[codex:1161355] interface IVaultEnterExit is IVaultState {
[codex:1161355] /**
[codex:1161355] * @notice Event emitted on deposit
[codex:1161355] * @param caller The address that called the deposit function
[codex:1161355] * @param receiver The address that received the shares
[codex:1161355] * @param assets The number of assets deposited by the caller
[codex:1161355] * @param shares The number of shares received
[codex:1161355] * @param referrer The address of the referrer
[codex:1161355] */
[codex:1161355]
[codex:1161355]
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Analyzing share rounding exploit possibility**
[codex:1161355] thinking
[codex:1161355] **Examining multicall delegatecall valuation inflation**
[codex:1161355]
[codex:1161355] This is a detailed dive into how using delegatecall in multicall leads to repeated counting of the same ETH (msg.value) for multiple deposits, inflating shares and totalAssets without true ETH backing. I’m exploring how this mismatch could let an attacker mint outsized osToken collateral or shares, potentially extracting value by exploiting this accounting inconsistency. This definitely looks like a concrete profit path worth reporting!
[codex:1161355] thinking
[codex:1161355] **Detailing multicall msg.value reuse exploit with withdrawal impact**
[codex:1161355]
[codex:1161355] I’m mapping out how calling multiple payable functions like deposit via multicall inflates shares beyond actual ETH sent, letting an attacker withdraw disproportionately large amounts by exploiting this msg.value reuse. This flaw effectively steals from honest vault users and is a high-severity profit path I’ll document with precise source lines.
[codex:1161355] exec
[codex:1161355] /bin/bash -lc 'nl -ba contracts/contracts/base/Multicall.sol' in /tmp/codex-multi-xfjhqe_9 succeeded in 5ms:
[codex:1161355] 1 // SPDX-License-Identifier: GPL-2.0-or-later
[codex:1161355] 2
[codex:1161355] 3 pragma solidity ^0.8.22;
[codex:1161355] 4
[codex:1161355] 5 import '../interfaces/IMulticall.sol';
[codex:1161355] 6
[codex:1161355] 7 /**
[codex:1161355] 8 * @title Multicall
[codex:1161355] 9 * @author Uniswap
[codex:1161355] 10 * @notice Adopted from https://github.com/Uniswap/v3-periphery/blob/1d69caf0d6c8cfeae9acd1f34ead30018d6e6400/contracts/base/Multicall.sol
[codex:1161355] 11 * @notice Enables calling multiple methods in a single call to the contract
[codex:1161355] 12 */
[codex:1161355] 13 abstract contract Multicall is IMulticall {
[codex:1161355] 14 /// @inheritdoc IMulticall
[codex:1161355] 15 function multicall(bytes[] calldata data) external override returns (bytes[] memory results) {
[codex:1161355] 16 uint256 dataLength = data.length;
[codex:1161355] 17 results = new bytes[](dataLength);
[codex:1161355] 18 for (uint256 i = 0; i < dataLength; i++) {
[codex:1161355] 19 (bool success, bytes memory result) = address(this).delegatecall(data[i]);
[codex:1161355] 20
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Checking delegatecall and deposit function locations**
[codex:1161355] exec
[codex:1161355] /bin/bash -lc "nl -ba contracts/contracts/vaults/modules/VaultEthStaking.sol | sed -n '20,120p'" in /tmp/codex-multi-xfjhqe_9 succeeded in 6ms:
[codex:1161355] 20 * @notice Defines the Ethereum staking functionality for the Vault
[codex:1161355] 21 */
[codex:1161355] 22 abstract contract VaultEthStaking is
[codex:1161355] 23 Initializable,
[codex:1161355] 24 ReentrancyGuardUpgradeable,
[codex:1161355] 25 VaultState,
[codex:1161355] 26 VaultValidators,
[codex:1161355] 27 VaultEnterExit,
[codex:1161355] 28 VaultMev,
[codex:1161355] 29 IVaultEthStaking
[codex:1161355] 30 {
[codex:1161355] 31 uint256 private constant _securityDeposit = 1e9;
[codex:1161355] 32
[codex:1161355] 33 /// @inheritdoc IVaultEthStaking
[codex:1161355] 34 function deposit(
[codex:1161355] 35 address receiver,
[codex:1161355] 36 address referrer
[codex:1161355] 37 ) public payable virtual override returns (uint256 shares) {
[codex:1161355] 38 return _deposit(receiver, msg.value, referrer);
[codex:1161355] 39 }
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Checking depositAndMint usage in EthVault**
[codex:1161355] exec
[codex:1161355] /bin/bash -lc "nl -ba contracts/contracts/vaults/ethereum/EthVault.sol | sed -n '80,140p'" in /tmp/codex-multi-xfjhqe_9 succeeded in 6ms:
[codex:1161355] 80 // if admin is already set, it's an upgrade
[codex:1161355] 81 if (admin != address(0)) {
[codex:1161355] 82 __EthVault_initV2();
[codex:1161355] 83 return;
[codex:1161355] 84 }
[codex:1161355] 85 // initialize deployed vault
[codex:1161355] 86 __EthVault_init(
[codex:1161355] 87 IEthVaultFactory(msg.sender).vaultAdmin(),
[codex:1161355] 88 IEthVaultFactory(msg.sender).ownMevEscrow(),
[codex:1161355] 89 abi.decode(params, (EthVaultInitParams))
[codex:1161355] 90 );
[codex:1161355] 91 }
[codex:1161355] 92
[codex:1161355] 93 /// @inheritdoc IEthVault
[codex:1161355] 94 function depositAndMintOsToken(
[codex:1161355] 95 address receiver,
[codex:1161355] 96 uint256 osTokenShares,
[codex:1161355] 97 address referrer
[codex:1161355] 98 ) public payable override returns (uint256) {
[codex:1161355] 99 deposit(msg.sender, referrer);
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Analyzing multicall value reuse risk**
[codex:1161355] exec
[codex:1161355] /bin/bash -lc "sed -n '1,220p' contracts/contracts/interfaces/IOsTokenVaultController.sol" in /tmp/codex-multi-xfjhqe_9 succeeded in 8ms:
[codex:1161355] // SPDX-License-Identifier: BUSL-1.1
[codex:1161355]
[codex:1161355] pragma solidity ^0.8.22;
[codex:1161355]
[codex:1161355] /**
[codex:1161355] * @title IOsTokenVaultController
[codex:1161355] * @author StakeWise
[codex:1161355] * @notice Defines the interface for the OsTokenVaultController contract
[codex:1161355] */
[codex:1161355] interface IOsTokenVaultController {
[codex:1161355] /**
[codex:1161355] * @notice Event emitted on minting shares
[codex:1161355] * @param vault The address of the Vault
[codex:1161355] * @param receiver The address that received the shares
[codex:1161355] * @param assets The number of assets collateralized
[codex:1161355] * @param shares The number of tokens the owner received
[codex:1161355] */
[codex:1161355] event Mint(address indexed vault, address indexed receiver, uint256 assets, uint256 shares);
[codex:1161355]
[codex:1161355] /**
[codex:1161355]
[codex:1161355] thinking
[codex:1161355] **Evaluating potential vulnerabilities and no-findings conclusion**
[codex:1161355] codex
[codex:1161355] {"no_findings":true,"summary":"No concrete, exploitable profit paths to extract ETH/tokens/NFTs were identified in the provided contracts.","findings":[]}
[codex:1161355] tokens used
[codex:1161355] 81,084
[codex:1161355] {"no_findings":true,"summary":"No concrete, exploitable profit paths to extract ETH/tokens/NFTs were identified in the provided contracts.","findings":[]}
{
"codex": {
"ran_at": "2026-01-04T06:14:16.372757+00:00",
"returncode": 0
},
"summary": "No concrete, exploitable profit paths to extract ETH/tokens/NFTs were identified in the provided contracts.",
"raw_final": {
"summary": "No concrete, exploitable profit paths to extract ETH/tokens/NFTs were identified in the provided contracts.",
"findings": [],
"no_findings": true
},
"no_findings": true,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: ISZERO 0000000a: PUSH2 0x0022 0000000d: JUMPI 0000000e: JUMPDEST 0000000f: CALLDATASIZE 00000010: ISZERO 00000011: PUSH2 0x0018 00000014: JUMPI 00000015: PUSH0 00000016: DUP1 00000017: REVERT 00000018: JUMPDEST 00000019: PUSH2 0x0020 0000001c: PUSH2 0x29a8 0000001f: JUMP 00000020: JUMPDEST 00000021: STOP 00000022: JUMPDEST 00000023: PUSH0 00000024: CALLDATALOAD 00000025: PUSH1 0xe0 00000027: SHR 00000028: DUP1 00000029: PUSH4 0x01d523b6 0000002e: EQ 0000002f: PUSH2 0x0301 00000032: JUMPI 00000033: DUP1 00000034: PUSH4 0x01e1d114 00000039: EQ 0000003a: PUSH2 0x02fc 0000003d: JUMPI 0000003e: DUP1 0000003f: PUSH4 0x066055e0 00000044: EQ 00000045: PUSH2 0x02f7 00000048: JUMPI 00000049: DUP1 0000004a: PUSH4 0x07a2d13a 0000004f: EQ 00000050: PUSH2 0x02f2 00000053: JUMPI 00000054: DUP1 00000055: PUSH4 0x0d392cd9 0000005a: EQ 0000005b: PUSH2 0x02ed 0000005e: JUMPI 0000005f: DUP1 00000060: PUSH4 0x18f72950 00000065: EQ 00000066: PUSH2 0x02e8 00000069: JUMPI 0000006a: DUP1 0000006b: PUSH4 0x1a7ff553 00000070: EQ 00000071: PUSH2 0x02e3 00000074: JUMPI 00000075: DUP1 00000076: PUSH4 0x201b9eb5 0000007b: EQ 0000007c: PUSH2 0x02de 0000007f: JUMPI 00000080: DUP1 00000081: PUSH4 0x22758a4a 00000086: EQ 00000087: PUSH2 0x02d9 0000008a: JUMPI 0000008b: DUP1 0000008c: PUSH4 0x2999ad3f 00000091: EQ 00000092: PUSH2 0x02d4 00000095: JUMPI 00000096: DUP1 00000097: PUSH4 0x2cdf7401 0000009c: EQ 0000009d: PUSH2 0x02cf 000000a0: JUMPI 000000a1: DUP1 000000a2: PUSH4 0x3229fa95 000000a7: EQ 000000a8: PUSH2 0x02ca 000000ab: JUMPI 000000ac: DUP1 000000ad: PUSH4 0x33194c0a 000000b2: EQ 000000b3: PUSH2 0x02c5 000000b6: JUMPI 000000b7: DUP1 000000b8: PUSH4 0x36fe59d2 000000bd: EQ 000000be: PUSH2 0x02c0 000000c1: JUMPI 000000c2: DUP1 000000c3: PUSH4 0x3a98ef39 000000c8: EQ 000000c9: PUSH2 0x02bb 000000cc: JUMPI 000000cd: DUP1 000000ce: PUSH4 0x439fab91 000000d3: EQ 000000d4: PUSH2 0x02b6 000000d7: JUMPI 000000d8: DUP1 000000d9: PUSH4 0x43e82a79 000000de: EQ 000000df: PUSH2 0x02b1 000000e2: JUMPI 000000e3: DUP1 000000e4: PUSH4 0x46904840 000000e9: EQ 000000ea: PUSH2 0x02ac 000000ed: JUMPI 000000ee: DUP1 000000ef: PUSH4 0x4ec96b22 000000f4: EQ 000000f5: PUSH2 0x02a7 000000f8: JUMPI 000000f9: DUP1 000000fa: PUSH4 0x4f1ef286 000000ff: EQ 00000100: PUSH2 0x02a2 00000103: JUMPI 00000104: DUP1 00000105: PUSH4 0x52d1902d 0000010a: EQ 0000010b: PUSH2 0x029d 0000010e: JUMPI 0000010f: DUP1 00000110: PUSH4 0x53156f28 00000115: EQ 00000116: PUSH2 0x0298 00000119: JUMPI 0000011a: DUP1 0000011b: PUSH4 0x54fd4d50 00000120: EQ 00000121: PUSH2 0x0293 00000124: JUMPI 00000125: DUP1 00000126: PUSH4 0x5c60da1b 0000012b: EQ 0000012c: PUSH2 0x028e 0000012f: JUMPI 00000130: DUP1 00000131: PUSH4 0x5cfc1a51 00000136: EQ 00000137: PUSH2 0x0289 0000013a: JUMPI 0000013b: DUP1 0000013c: PUSH4 0x60d60e6e 00000141: EQ 00000142: PUSH2 0x0284 00000145: JUMPI 00000146: DUP1 00000147: PUSH4 0x72b410a8 0000014c: EQ 0000014d: PUSH2 0x027f 00000150: JUMPI 00000151: DUP1 00000152: PUSH4 0x754c3888 00000157: EQ 00000158: PUSH2 0x027a 0000015b: JUMPI 0000015c: DUP1 0000015d: PUSH4 0x76b58b90 00000162: EQ 00000163: PUSH2 0x0275 00000166: JUMPI 00000167: DUP1 00000168: PUSH4 0x7fd6f15c 0000016d: EQ 0000016e: PUSH2 0x0270 00000171: JUMPI 00000172: DUP1 00000173: PUSH4 0x83d430d5 00000178: EQ 00000179: PUSH2 0x026b 0000017c: JUMPI 0000017d: DUP1 0000017e: PUSH4 0x8697d2c2 00000183: EQ 00000184: PUSH2 0x0266 00000187: JUMPI 00000188: DUP1 00000189: PUSH4 0x8ceab9aa 0000018e: EQ 0000018f: PUSH2 0x0261 00000192: JUMPI 00000193: DUP1 00000194: PUSH4 0xa49a1e7d 00000199: EQ 0000019a: PUSH2 0x025c 0000019d: JUMPI 0000019e: DUP1 0000019f: PUSH4 0xac9650d8 000001a4: EQ 000001a5: PUSH2 0x0257 000001a8: JUMPI 000001a9: DUP1 000001aa: PUSH4 0xad3cb1cc 000001af: EQ 000001b0: PUSH2 0x0252 000001b3: JUMPI 000001b4: DUP1 000001b5: PUSH4 0xb1f0e7c7 000001ba: EQ 000001bb: PUSH2 0x024d 000001be: JUMPI 000001bf: DUP1 000001c0: PUSH4 0xc6e6f592 000001c5: EQ 000001c6: PUSH2 0x0248 000001c9: JUMPI 000001ca: DUP1 000001cb: PUSH4 0xd83ad00c 000001d0: EQ 000001d1: PUSH2 0x0243 000001d4: JUMPI 000001d5: DUP1 000001d6: PUSH4 0xe74b981b 000001db: EQ 000001dc: PUSH2 0x023e 000001df: JUMPI 000001e0: DUP1 000001e1: PUSH4 0xee3bd5df 000001e6: EQ 000001e7: PUSH2 0x0239 000001ea: JUMPI 000001eb: DUP1 000001ec: PUSH4 0xf04da65b 000001f1: EQ 000001f2: PUSH2 0x0234 000001f5: JUMPI 000001f6: DUP1 000001f7: PUSH4 0xf6a6830f 000001fc: EQ 000001fd: PUSH2 0x022f 00000200: JUMPI 00000201: DUP1 00000202: PUSH4 0xf851a440 00000207: EQ 00000208: PUSH2 0x022a 0000020b: JUMPI 0000020c: DUP1 0000020d: PUSH4 0xf9609f08 00000212: EQ 00000213: PUSH2 0x0225 00000216: JUMPI 00000217: PUSH4 0xf98f5b92 0000021c: SUB 0000021d: PUSH2 0x000e 00000220: JUMPI 00000221: PUSH2 0x1e71 00000224: JUMP 00000225: JUMPDEST 00000226: PUSH2 0x1e47 00000229: JUMP 0000022a: JUMPDEST 0000022b: PUSH2 0x1e20 0000022e: JUMP 0000022f: JUMPDEST 00000230: PUSH2 0x1ddf 00000233: JUMP 00000234: JUMPDEST 00000235: PUSH2 0x1da4 00000238: JUMP 00000239: JUMPDEST 0000023a: PUSH2 0x1d7e 0000023d: JUMP 0000023e: JUMPDEST 0000023f: PUSH2 0x1d51 00000242: JUMP 00000243: JUMPDEST 00000244: PUSH2 0x1d2b 00000247: JUMP 00000248: JUMPDEST 00000249: PUSH2 0x1d0d 0000024c: JUMP 0000024d: JUMPDEST 0000024e: PUSH2 0x1cf3 00000251: JUMP 00000252: JUMPDEST 00000253: PUSH2 0x1cae 00000256: JUMP 00000257: JUMPDEST 00000258: PUSH2 0x1c38 0000025b: JUMP 0000025c: JUMPDEST 0000025d: PUSH2 0x1b3d 00000260: JUMP 00000261: JUMPDEST 00000262: PUSH2 0x1954 00000265: JUMP 00000266: JUMPDEST 00000267: PUSH2 0x16ed 0000026a: JUMP 0000026b: JUMPDEST 0000026c: PUSH2 0x151d 0000026f: JUMP 00000270: JUMPDEST 00000271: PUSH2 0x14f9 00000274: JUMP 00000275: JUMPDEST 00000276: PUSH2 0x14a8 00000279: JUMP 0000027a: JUMPDEST 0000027b: PUSH2 0x143d 0000027e: JUMP 0000027f: JUMPDEST 00000280: PUSH2 0x13b0 00000283: JUMP 00000284: JUMPDEST 00000285: PUSH2 0x1392 00000288: JUMP 00000289: JUMPDEST 0000028a: PUSH2 0x1378 0000028d: JUMP 0000028e: JUMPDEST 0000028f: PUSH2 0x1344 00000292: JUMP 00000293: JUMPDEST 00000294: PUSH2 0x1329 00000297: JUMP 00000298: JUMPDEST 00000299: PUSH2 0x1305 0000029c: JUMP 0000029d: JUMPDEST 0000029e: PUSH2 0x129c 000002a1: JUMP 000002a2: JUMPDEST 000002a3: PUSH2 0x1016 000002a6: JUMP 000002a7: JUMPDEST 000002a8: PUSH2 0x0ea2 000002ab: JUMP 000002ac: JUMPDEST 000002ad: PUSH2 0x0e7a 000002b0: JUMP 000002b1: JUMPDEST 000002b2: PUSH2 0x0d6d 000002b5: JUMP 000002b6: JUMPDEST 000002b7: PUSH2 0x0ca7 000002ba: JUMP 000002bb: JUMPDEST 000002bc: PUSH2 0x0c26 000002bf: JUMP 000002c0: JUMPDEST 000002c1: PUSH2 0x0c12 000002c4: JUMP 000002c5: JUMPDEST 000002c6: PUSH2 0x0bd8 000002c9: JUMP 000002ca: JUMPDEST 000002cb: PUSH2 0x0bac 000002ce: JUMP 000002cf: JUMPDEST 000002d0: PUSH2 0x0b92 000002d3: JUMP 000002d4: JUMPDEST 000002d5: PUSH2 0x06f0 000002d8: JUMP 000002d9: JUMPDEST 000002da: PUSH2 0x069e 000002dd: JUMP 000002de: JUMPDEST 000002df: PUSH2 0x0685 000002e2: JUMP 000002e3: JUMPDEST 000002e4: PUSH2 0x0626 000002e7: JUMP 000002e8: JUMPDEST 000002e9: PUSH2 0x05c0 000002ec: JUMP 000002ed: JUMPDEST 000002ee: PUSH2 0x058e 000002f1: JUMP 000002f2: JUMPDEST 000002f3: PUSH2 0x0566 000002f6: JUMP 000002f7: JUMPDEST 000002f8: PUSH2 0x03c7 000002fb: JUMP 000002fc: JUMPDEST 000002fd: PUSH2 0x0396 00000300: JUMP 00000301: JUMPDEST 00000302: PUSH2 0x0329 00000305: JUMP 00000306: JUMPDEST 00000307: PUSH1 0x01 00000309: PUSH1 0x01 0000030b: PUSH1 0xa0 0000030d: SHL 0000030e: SUB 0000030f: DUP2 00000310: AND 00000311: SUB 00000312: PUSH2 0x0317 00000315: JUMPI 00000316: JUMP 00000317: JUMPDEST 00000318: PUSH0 00000319: DUP1 0000031a: REVERT 0000031b: JUMPDEST 0000031c: SWAP1 0000031d: DUP2 0000031e: PUSH1 0x80 00000320: SWAP2 00000321: SUB 00000322: SLT 00000323: PUSH2 0x0317 00000326: JUMPI 00000327: SWAP1 00000328: JUMP 00000329: JUMPDEST 0000032a: PUSH1 0x80 0000032c: CALLDATASIZE 0000032d: PUSH1 0x03 0000032f: NOT 00000330: ADD 00000331: SLT 00000332: PUSH2 0x0317 00000335: JUMPI 00000336: PUSH1 0x04 00000338: CALLDATALOAD 00000339: PUSH2 0x0341 0000033c: DUP2 0000033d: PUSH2 0x0306 00000340: JUMP 00000341: JUMPDEST 00000342: PUSH1 0x44 00000344: CALLDATALOAD 00000345: PUSH2 0x034d 00000348: DUP2 00000349: PUSH2 0x0306 0000034c: JUMP 0000034d: JUMPDEST 0000034e: PUSH1 0x64 00000350: CALLDATALOAD 00000351: SWAP1 00000352: PUSH1 0x01 00000354: PUSH1 0x01 00000356: PUSH1 0x40 00000358: SHL 00000359: SUB 0000035a: DUP3 0000035b: GT 0000035c: PUSH2 0x0317 0000035f: JUMPI 00000360: PUSH1 0x20 00000362: SWAP3 00000363: PUSH2 0x037b 00000366: PUSH2 0x0376 00000369: PUSH2 0x0384 0000036c: SWAP5 0000036d: CALLDATASIZE 0000036e: SWAP1 0000036f: PUSH1 0x04 00000371: ADD 00000372: PUSH2 0x031b 00000375: JUMP 00000376: JUMPDEST 00000377: PUSH2 0x1fff 0000037a: JUMP 0000037b: JUMPDEST 0000037c: PUSH1 0x24 0000037e: CALLDATALOAD 0000037f: SWAP1 00000380: PUSH2 0x22b9 00000383: JUMP 00000384: JUMPDEST 00000385: PUSH1 0x40 00000387: MLOAD 00000388: SWAP1 00000389: DUP2 0000038a: MSTORE 0000038b: RETURN 0000038c: JUMPDEST 0000038d: PUSH0 0000038e: SWAP2 0000038f: SUB 00000390: SLT 00000391: PUSH2 0x0317 00000394: JUMPI 00000395: JUMP 00000396: JUMPDEST 00000397: CALLVALUE 00000398: PUSH2 0x0317 0000039b: JUMPI 0000039c: PUSH0 0000039d: CALLDATASIZE 0000039e: PUSH1 0x03 000003a0: NOT 000003a1: ADD 000003a2: SLT 000003a3: PUSH2 0x0317 000003a6: JUMPI 000003a7: PUSH1 0x20 000003a9: PUSH1 0x98 000003ab: SLOAD 000003ac: PUSH1 0x80 000003ae: SHR 000003af: PUSH1 0x40 000003b1: MLOAD 000003b2: SWAP1 000003b3: DUP2 000003b4: MSTORE 000003b5: RETURN 000003b6: JUMPDEST 000003b7: PUSH1 0x01 000003b9: PUSH1 0x01 000003bb: PUSH1 0x80 000003bd: SHL 000003be: SUB 000003bf: DUP2 000003c0: AND 000003c1: SUB 000003c2: PUSH2 0x0317 000003c5: JUMPI 000003c6: JUMP 000003c7: JUMPDEST 000003c8: CALLVALUE 000003c9: PUSH2 0x0317 000003cc: JUMPI 000003cd: PUSH1 0x20 000003cf: CALLDATASIZE 000003d0: PUSH1 0x03 000003d2: NOT 000003d3: ADD 000003d4: SLT 000003d5: PUSH2 0x0317 000003d8: JUMPI 000003d9: PUSH1 0x04 000003db: CALLDATALOAD 000003dc: PUSH2 0x03e4 000003df: DUP2 000003e0: PUSH2 0x03b6 000003e3: JUMP 000003e4: JUMPDEST 000003e5: PUSH1 0x40 000003e7: MLOAD 000003e8: PUSH4 0x3b9e9f01 000003ed: PUSH1 0xe2 000003ef: SHL 000003f0: DUP2 000003f1: MSTORE 000003f2: CALLER 000003f3: PUSH1 0x04 000003f5: DUP3 000003f6: ADD 000003f7: MSTORE 000003f8: PUSH1 0x01 000003fa: PUSH1 0x01 000003fc: PUSH1 0x80 000003fe: SHL 000003ff: SUB 00000400: DUP3 00000401: AND 00000402: PUSH1 0x24 00000404: DUP3 00000405: ADD 00000406: MSTORE 00000407: PUSH1 0x20 00000409: DUP2 0000040a: PUSH1 0x44 0000040c: DUP2 0000040d: PUSH0 0000040e: PUSH1 0x01 00000410: PUSH1 0x01 00000412: PUSH1 0xa0 00000414: SHL 00000415: SUB 00000416: PUSH32 0x0000000000000000000000002a261e60fb14586b474c208b1b7ac6d0f5000306 00000437: AND 00000438: GAS 00000439: CALL 0000043a: SWAP1 0000043b: DUP2 0000043c: ISZERO 0000043d: PUSH2 0x0561 00000440: JUMPI 00000441: PUSH0 00000442: SWAP2 00000443: PUSH2 0x0532 00000446: JUMPI 00000447: JUMPDEST 00000448: POP 00000449: CALLER 0000044a: PUSH0 0000044b: SWAP1 0000044c: DUP2 0000044d: MSTORE 0000044e: PUSH2 0x0137 00000451: PUSH1 0x20 00000453: MSTORE 00000454: PUSH1 0x40 00000456: SWAP1 00000457: KECCAK256 00000458: PUSH2 0x0460 0000045b: SWAP1 0000045c: PUSH2 0x1eb8 0000045f: JUMP 00000460: JUMPDEST 00000461: SWAP2 00000462: PUSH1 0x01 00000464: PUSH1 0x01 00000466: PUSH1 0x80 00000468: SHL 00000469: SUB 0000046a: PUSH2 0x047a 0000046d: DUP5 0000046e: MLOAD 0000046f: PUSH1 0x01 00000471: PUSH1 0x01 00000473: PUSH1 0x80 00000475: SHL 00000476: SUB 00000477: AND 00000478: SWAP1 00000479: JUMP 0000047a: JUMPDEST 0000047b: AND 0000047c: ISZERO 0000047d: PUSH2 0x0520 00000480: JUMPI 00000481: PUSH2 0x04ce 00000484: DUP4 00000485: PUSH2 0x0490 00000488: PUSH2 0x051c 0000048b: SWAP6 0000048c: PUSH2 0x29bb 0000048f: JUMP 00000490: JUMPDEST 00000491: PUSH2 0x04ba 00000494: PUSH2 0x04ad 00000497: DUP5 00000498: PUSH2 0x04a8 0000049b: DUP5 0000049c: MLOAD 0000049d: PUSH1 0x01 0000049f: PUSH1 0x01 000004a1: PUSH1 0x80 000004a3: SHL 000004a4: SUB 000004a5: AND 000004a6: SWAP1 000004a7: JUMP 000004a8: JUMPDEST 000004a9: PUSH2 0x1ef1 000004ac: JUMP 000004ad: JUMPDEST 000004ae: PUSH1 0x01 000004b0: PUSH1 0x01 000004b2: PUSH1 0x80 000004b4: SHL 000004b5: SUB 000004b6: AND 000004b7: DUP3 000004b8: MSTORE 000004b9: JUMP 000004ba: JUMPDEST 000004bb: CALLER 000004bc: PUSH0 000004bd: SWAP1 000004be: DUP2 000004bf: MSTORE 000004c0: PUSH2 0x0137 000004c3: PUSH1 0x20 000004c5: MSTORE 000004c6: PUSH1 0x40 000004c8: SWAP1 000004c9: KECCAK256 000004ca: PUSH2 0x1f0f 000004cd: JUMP 000004ce: JUMPDEST 000004cf: PUSH1 0x40 000004d1: DUP1 000004d2: MLOAD 000004d3: DUP4 000004d4: DUP2 000004d5: MSTORE 000004d6: PUSH1 0x01 000004d8: PUSH1 0x01 000004da: PUSH1 0x80 000004dc: SHL 000004dd: SUB 000004de: SWAP3 000004df: SWAP1 000004e0: SWAP3 000004e1: AND 000004e2: PUSH1 0x20 000004e4: DUP4 000004e5: ADD 000004e6: MSTORE 000004e7: CALLER 000004e8: SWAP2 000004e9: PUSH32 0x3f7354ba02880b4fa37a629985852a38417ff369369ce1e52fa6f8342a9100a7 0000050a: SWAP2 0000050b: SWAP1 0000050c: LOG2 0000050d: PUSH1 0x40 0000050f: MLOAD 00000510: SWAP1 00000511: DUP2 00000512: MSTORE 00000513: SWAP1 00000514: DUP2 00000515: SWAP1 00000516: PUSH1 0x20 00000518: DUP3 00000519: ADD 0000051a: SWAP1 0000051b: JUMP 0000051c: JUMPDEST 0000051d: SUB 0000051e: SWAP1 0000051f: RETURN 00000520: JUMPDEST 00000521: PUSH1 0x40 00000523: MLOAD 00000524: PUSH4 0x673f032f 00000529: PUSH1 0xe1 0000052b: SHL 0000052c: DUP2 0000052d: MSTORE 0000052e: PUSH1 0x04 00000530: SWAP1 00000531: REVERT 00000532: JUMPDEST 00000533: PUSH2 0x0554 00000536: SWAP2 00000537: POP 00000538: PUSH1 0x20 0000053a: RETURNDATASIZE 0000053b: PUSH1 0x20 0000053d: GT 0000053e: PUSH2 0x055a 00000541: JUMPI 00000542: JUMPDEST 00000543: PUSH2 0x054c 00000546: DUP2 00000547: DUP4 00000548: PUSH2 0x0f95 0000054b: JUMP 0000054c: JUMPDEST 0000054d: DUP2 0000054e: ADD 0000054f: SWAP1 00000550: PUSH2 0x1e9e 00000553: JUMP 00000554: JUMPDEST 00000555: PUSH0 00000556: PUSH2 0x0447 00000559: JUMP 0000055a: JUMPDEST 0000055b: POP 0000055c: RETURNDATASIZE 0000055d: PUSH2 0x0542 00000560: JUMP 00000561: JUMPDEST 00000562: PUSH2 0x1ead 00000565: JUMP 00000566: JUMPDEST 00000567: CALLVALUE 00000568: PUSH2 0x0317 0000056b: JUMPI 0000056c: PUSH1 0x20 0000056e: CALLDATASIZE 0000056f: PUSH1 0x03 00000571: NOT 00000572: ADD 00000573: SLT 00000574: PUSH2 0x0317 00000577: JUMPI 00000578: PUSH1 0x20 0000057a: PUSH2 0x0384 0000057d: PUSH1 0x04 0000057f: CALLDATALOAD 00000580: PUSH2 0x1f41 00000583: JUMP 00000584: JUMPDEST 00000585: DUP1 00000586: ISZERO 00000587: ISZERO 00000588: SUB 00000589: PUSH2 0x0317 0000058c: JUMPI 0000058d: JUMP 0000058e: JUMPDEST 0000058f: CALLVALUE 00000590: PUSH2 0x0317 00000593: JUMPI 00000594: PUSH1 0x40 00000596: CALLDATASIZE 00000597: PUSH1 0x03 00000599: NOT 0000059a: ADD 0000059b: SLT 0000059c: PUSH2 0x0317 0000059f: JUMPI 000005a0: PUSH2 0x0020 000005a3: PUSH1 0x04 000005a5: CALLDATALOAD 000005a6: PUSH2 0x05ae 000005a9: DUP2 000005aa: PUSH2 0x0306 000005ad: JUMP 000005ae: JUMPDEST 000005af: PUSH1 0x24 000005b1: CALLDATALOAD 000005b2: SWAP1 000005b3: PUSH2 0x05bb 000005b6: DUP3 000005b7: PUSH2 0x0584 000005ba: JUMP 000005bb: JUMPDEST 000005bc: PUSH2 0x1f67 000005bf: JUMP 000005c0: JUMPDEST 000005c1: PUSH1 0x60 000005c3: CALLDATASIZE 000005c4: PUSH1 0x03 000005c6: NOT 000005c7: ADD 000005c8: SLT 000005c9: PUSH2 0x0317 000005cc: JUMPI 000005cd: PUSH1 0x04 000005cf: CALLDATALOAD 000005d0: PUSH2 0x05d8 000005d3: DUP2 000005d4: PUSH2 0x0306 000005d7: JUMP 000005d8: JUMPDEST 000005d9: PUSH1 0x24 000005db: CALLDATALOAD 000005dc: PUSH2 0x05e4 000005df: DUP2 000005e0: PUSH2 0x0306 000005e3: JUMP 000005e4: JUMPDEST 000005e5: PUSH1 0x44 000005e7: CALLDATALOAD 000005e8: SWAP1 000005e9: PUSH1 0x01 000005eb: PUSH1 0x01 000005ed: PUSH1 0x40 000005ef: SHL 000005f0: SUB 000005f1: DUP3 000005f2: GT 000005f3: PUSH2 0x0317 000005f6: JUMPI 000005f7: PUSH1 0x20 000005f9: SWAP3 000005fa: PUSH2 0x060d 000005fd: PUSH2 0x0376 00000600: PUSH2 0x0384 00000603: SWAP5 00000604: CALLDATASIZE 00000605: SWAP1 00000606: PUSH1 0x04 00000608: ADD 00000609: PUSH2 0x031b 0000060c: JUMP 0000060d: JUMPDEST 0000060e: PUSH2 0x0616 00000611: CALLER 00000612: PUSH2 0x310f 00000615: JUMP 00000616: JUMPDEST 00000617: PUSH2 0x061f 0000061a: DUP2 0000061b: PUSH2 0x310f 0000061e: JUMP 0000061f: JUMPDEST 00000620: CALLVALUE 00000621: SWAP1 00000622: PUSH2 0x42c1 00000625: JUMP 00000626: JUMPDEST 00000627: CALLVALUE 00000628: PUSH2 0x0317 0000062b: JUMPI 0000062c: PUSH1 0x20 0000062e: CALLDATASIZE 0000062f: PUSH1 0x03 00000631: NOT 00000632: ADD 00000633: SLT 00000634: PUSH2 0x0317 00000637: JUMPI 00000638: PUSH1 0x04 0000063a: CALLDATALOAD 0000063b: PUSH1 0x01 0000063d: PUSH1 0x01 0000063f: PUSH1 0x40 00000641: SHL 00000642: SUB 00000643: DUP2 00000644: GT 00000645: PUSH2 0x0317 00000648: JUMPI 00000649: PUSH2 0x0376 0000064c: PUSH2 0x0020 0000064f: SWAP2 00000650: CALLDATASIZE 00000651: SWAP1 00000652: PUSH1 0x04 00000654: ADD 00000655: PUSH2 0x031b 00000658: JUMP 00000659: JUMPDEST 0000065a: PUSH1 0x60 0000065c: SWAP1 0000065d: PUSH1 0x03 0000065f: NOT 00000660: ADD 00000661: SLT 00000662: PUSH2 0x0317 00000665: JUMPI 00000666: PUSH1 0x04 00000668: CALLDATALOAD 00000669: PUSH2 0x0671 0000066c: DUP2 0000066d: PUSH2 0x0306 00000670: JUMP 00000671: JUMPDEST 00000672: SWAP1 00000673: PUSH1 0x24 00000675: CALLDATALOAD 00000676: SWAP1 00000677: PUSH1 0x44 00000679: CALLDATALOAD 0000067a: PUSH2 0x0682 0000067d: DUP2 0000067e: PUSH2 0x0306 00000681: JUMP 00000682: JUMPDEST 00000683: SWAP1 00000684: JUMP 00000685: JUMPDEST 00000686: CALLVALUE 00000687: PUSH2 0x0317 0000068a: JUMPI 0000068b: PUSH1 0x20 0000068d: PUSH2 0x0384 00000690: PUSH2 0x0698 00000693: CALLDATASIZE 00000694: PUSH2 0x0659 00000697: JUMP 00000698: JUMPDEST 00000699: SWAP2 0000069a: PUSH2 0x2023 0000069d: JUMP 0000069e: JUMPDEST 0000069f: CALLVALUE 000006a0: PUSH2 0x0317 000006a3: JUMPI 000006a4: PUSH0 000006a5: CALLDATASIZE 000006a6: PUSH1 0x03 000006a8: NOT 000006a9: ADD 000006aa: SLT 000006ab: PUSH2 0x0317 000006ae: JUMPI 000006af: PUSH2 0x0201 000006b2: SLOAD 000006b3: PUSH1 0x40 000006b5: MLOAD 000006b6: PUSH1 0x01 000006b8: PUSH1 0x01 000006ba: PUSH1 0xa0 000006bc: SHL 000006bd: SUB 000006be: SWAP1 000006bf: SWAP2 000006c0: AND 000006c1: DUP2 000006c2: MSTORE 000006c3: PUSH1 0x20 000006c5: SWAP1 000006c6: RETURN 000006c7: JUMPDEST 000006c8: PUSH1 0x60 000006ca: SWAP1 000006cb: PUSH1 0x03 000006cd: NOT 000006ce: ADD 000006cf: SLT 000006d0: PUSH2 0x0317 000006d3: JUMPI 000006d4: PUSH1 0x04 000006d6: CALLDATALOAD 000006d7: SWAP1 000006d8: PUSH1 0x24 000006da: CALLDATALOAD 000006db: PUSH2 0x06e3 000006de: DUP2 000006df: PUSH2 0x0306 000006e2: JUMP 000006e3: JUMPDEST 000006e4: SWAP1 000006e5: PUSH1 0x44 000006e7: CALLDATALOAD 000006e8: PUSH2 0x0682 000006eb: DUP2 000006ec: PUSH2 0x0306 000006ef: JUMP 000006f0: JUMPDEST 000006f1: CALLVALUE 000006f2: PUSH2 0x0317 000006f5: JUMPI 000006f6: PUSH2 0x06fe 000006f9: CALLDATASIZE 000006fa: PUSH2 0x06c7 000006fd: JUMP 000006fe: JUMPDEST 000006ff: SWAP1 00000700: PUSH1 0x01 00000702: PUSH1 0x01 00000704: PUSH1 0xa0 00000706: SHL 00000707: SUB 00000708: DUP1 00000709: DUP4 0000070a: AND 0000070b: ISZERO 0000070c: PUSH2 0x0b80 0000070f: JUMPI 00000710: PUSH2 0x0717 00000713: PUSH2 0x3ac3 00000716: JUMP 00000717: JUMPDEST 00000718: DUP1 00000719: PUSH32 0x0000000000000000000000002a261e60fb14586b474c208b1b7ac6d0f5000306 0000073a: AND 0000073b: SWAP2 0000073c: DUP3 0000073d: EXTCODESIZE 0000073e: ISZERO 0000073f: PUSH2 0x0317 00000742: JUMPI 00000743: PUSH1 0x40 00000745: DUP1 00000746: MLOAD 00000747: PUSH4 0x1d8557d7 0000074c: PUSH1 0xe0 0000074e: SHL 0000074f: DUP2 00000750: MSTORE 00000751: PUSH1 0x04 00000753: SWAP5 00000754: SWAP2 00000755: SWAP1 00000756: PUSH0 00000757: DUP2 00000758: DUP8 00000759: DUP2 0000075a: DUP4 0000075b: DUP8 0000075c: GAS 0000075d: CALL 0000075e: DUP1 0000075f: ISZERO 00000760: PUSH2 0x0561 00000763: JUMPI 00000764: PUSH2 0x0b67 00000767: JUMPI 00000768: JUMPDEST 00000769: POP 0000076a: PUSH1 0x01 0000076c: PUSH1 0x01 0000076e: PUSH1 0xa0 00000770: SHL 00000771: SUB 00000772: DUP4 00000773: AND 00000774: PUSH0 00000775: SWAP1 00000776: DUP2 00000777: MSTORE 00000778: PUSH2 0x0137 0000077b: PUSH1 0x20 0000077d: MSTORE 0000077e: PUSH1 0x40 00000780: SWAP1 00000781: KECCAK256 00000782: PUSH2 0x078a 00000785: SWAP1 00000786: PUSH2 0x1eb8 00000789: JUMP 0000078a: JUMPDEST 0000078b: PUSH1 0x01 0000078d: PUSH1 0x01 0000078f: PUSH1 0x80 00000791: SHL 00000792: SUB 00000793: SWAP3 00000794: DUP4 00000795: PUSH2 0x07a5 00000798: DUP4 00000799: MLOAD 0000079a: PUSH1 0x01 0000079c: PUSH1 0x01 0000079e: PUSH1 0x80 000007a0: SHL 000007a1: SUB 000007a2: AND 000007a3: SWAP1 000007a4: JUMP 000007a5: JUMPDEST 000007a6: AND 000007a7: ISZERO 000007a8: PUSH2 0x0b57 000007ab: JUMPI 000007ac: PUSH2 0x07b4 000007af: DUP3 000007b0: PUSH2 0x29bb 000007b3: JUMP 000007b4: JUMPDEST 000007b5: DUP3 000007b6: MLOAD 000007b7: PUSH4 0xe48a5f7b 000007bc: PUSH1 0xe0 000007be: SHL 000007bf: DUP2 000007c0: MSTORE 000007c1: ADDRESS 000007c2: DUP9 000007c3: DUP3 000007c4: ADD 000007c5: SWAP1 000007c6: DUP2 000007c7: MSTORE 000007c8: SWAP1 000007c9: SWAP8 000007ca: SWAP1 000007cb: PUSH1 0x60 000007cd: SWAP1 000007ce: DUP10 000007cf: SWAP1 000007d0: DUP2 000007d1: SWAP1 000007d2: PUSH1 0x20 000007d4: ADD 000007d5: SUB 000007d6: DUP2 000007d7: DUP11 000007d8: PUSH32 0x000000000000000000000000287d1e2a8de183a8bf8f2b09fa1340fbd766eb59 000007f9: AND 000007fa: GAS 000007fb: STATICCALL 000007fc: SWAP8 000007fd: DUP9 000007fe: ISZERO 000007ff: PUSH2 0x0561 00000802: JUMPI 00000803: PUSH0 00000804: SWAP9 00000805: PUSH2 0x0b26 00000808: JUMPI 00000809: JUMPDEST 0000080a: POP 0000080b: PUSH1 0x20 0000080d: SWAP8 0000080e: DUP9 0000080f: DUP2 00000810: ADD 00000811: SWAP6 00000812: PUSH1 0x01 00000814: PUSH1 0x01 00000816: PUSH1 0x40 00000818: SHL 00000819: SUB 0000081a: SWAP2 0000081b: DUP3 0000081c: DUP1 0000081d: PUSH2 0x082d 00000820: DUP11 00000821: MLOAD 00000822: PUSH1 0x01 00000824: PUSH1 0x01 00000826: PUSH1 0x40 00000828: SHL 00000829: SUB 0000082a: AND 0000082b: SWAP1 0000082c: JUMP 0000082d: JUMPDEST 0000082e: AND 0000082f: EQ 00000830: PUSH2 0x0b16 00000833: JUMPI 00000834: SWAP1 00000835: DUP13 00000836: SWAP3 00000837: SWAP2 00000838: DUP8 00000839: MLOAD 0000083a: SWAP2 0000083b: DUP13 0000083c: DUP4 0000083d: DUP1 0000083e: PUSH2 0x0859 00000841: PUSH4 0x03d1689d 00000846: PUSH1 0xe1 00000848: SHL 00000849: SWAP9 0000084a: DUP10 0000084b: DUP4 0000084c: MSTORE 0000084d: DUP11 0000084e: DUP4 0000084f: ADD 00000850: SWAP2 00000851: SWAP1 00000852: PUSH1 0x20 00000854: DUP4 00000855: ADD 00000856: SWAP3 00000857: MSTORE 00000858: JUMP 00000859: JUMPDEST 0000085a: SUB 0000085b: DUP2 0000085c: DUP11 0000085d: GAS 0000085e: STATICCALL 0000085f: SWAP2 00000860: DUP3 00000861: ISZERO 00000862: PUSH2 0x0561 00000865: JUMPI 00000866: PUSH2 0x0885 00000869: SWAP4 0000086a: DUP15 0000086b: PUSH0 0000086c: SWAP5 0000086d: PUSH2 0x0af1 00000870: JUMPI 00000871: JUMPDEST 00000872: POP 00000873: POP 00000874: MLOAD 00000875: PUSH1 0x01 00000877: PUSH1 0x01 00000879: PUSH1 0x80 0000087b: SHL 0000087c: SUB 0000087d: AND 0000087e: JUMPDEST 0000087f: AND 00000880: SWAP1 00000881: PUSH2 0x2aea 00000884: JUMP 00000885: JUMPDEST 00000886: SWAP7 00000887: PUSH2 0x08a9 0000088a: PUSH2 0x08a3 0000088d: DUP11 0000088e: PUSH1 0x01 00000890: DUP1 00000891: PUSH1 0xa0 00000893: SHL 00000894: SUB 00000895: AND 00000896: PUSH0 00000897: MSTORE 00000898: PUSH1 0x9c 0000089a: PUSH1 0x20 0000089c: MSTORE 0000089d: PUSH1 0x40 0000089f: PUSH0 000008a0: KECCAK256 000008a1: SWAP1 000008a2: JUMP 000008a3: JUMPDEST 000008a4: SLOAD 000008a5: PUSH2 0x1f41 000008a8: JUMP 000008a9: JUMPDEST 000008aa: SWAP3 000008ab: DUP4 000008ac: DUP10 000008ad: GT 000008ae: DUP1 000008af: ISZERO 000008b0: PUSH2 0x0ae1 000008b3: JUMPI 000008b4: JUMPDEST 000008b5: PUSH2 0x0ad1 000008b8: JUMPI 000008b9: SWAP1 000008ba: DUP12 000008bb: PUSH2 0x08f2 000008be: SWAP4 000008bf: SWAP3 000008c0: PUSH2 0x08d0 000008c3: DUP10 000008c4: MLOAD 000008c5: PUSH1 0x01 000008c7: PUSH1 0x01 000008c9: PUSH1 0x80 000008cb: SHL 000008cc: SUB 000008cd: AND 000008ce: SWAP1 000008cf: JUMP 000008d0: JUMPDEST 000008d1: SWAP1 000008d2: DUP11 000008d3: MLOAD 000008d4: SWAP6 000008d5: DUP7 000008d6: SWAP3 000008d7: DUP4 000008d8: SWAP3 000008d9: DUP4 000008da: MSTORE 000008db: DUP10 000008dc: DUP4 000008dd: ADD 000008de: SWAP2 000008df: SWAP1 000008e0: SWAP2 000008e1: PUSH1 0x01 000008e3: PUSH1 0x01 000008e5: PUSH1 0x80 000008e7: SHL 000008e8: SUB 000008e9: PUSH1 0x20 000008eb: DUP3 000008ec: ADD 000008ed: SWAP4 000008ee: AND 000008ef: SWAP1 000008f0: MSTORE 000008f1: JUMP 000008f2: JUMPDEST 000008f3: SUB 000008f4: DUP2 000008f5: DUP10 000008f6: GAS 000008f7: STATICCALL 000008f8: SWAP2 000008f9: DUP3 000008fa: ISZERO 000008fb: PUSH2 0x0561 000008fe: JUMPI 000008ff: PUSH8 0x0de0b6b3a7640000 00000908: SWAP5 00000909: PUSH2 0x0941 0000090c: SWAP5 0000090d: DUP15 0000090e: PUSH0 0000090f: SWAP6 00000910: PUSH2 0x0aa4 00000913: JUMPI 00000914: JUMPDEST 00000915: POP 00000916: POP 00000917: PUSH2 0x0933 0000091a: PUSH2 0x0925 0000091d: PUSH2 0x0939 00000920: SWAP3 00000921: PUSH2 0x276a 00000924: JUMP 00000925: JUMPDEST 00000926: SWAP4 00000927: MLOAD 00000928: PUSH1 0x01 0000092a: PUSH1 0x01 0000092c: PUSH1 0x40 0000092e: SHL 0000092f: SUB 00000930: AND 00000931: SWAP1 00000932: JUMP 00000933: JUMPDEST 00000934: SWAP4 00000935: PUSH2 0x276a 00000938: JUMP 00000939: JUMPDEST 0000093a: SWAP3 0000093b: AND 0000093c: SWAP1 0000093d: PUSH2 0x2b5e 00000940: JUMP 00000941: JUMPDEST 00000942: LT 00000943: ISZERO 00000944: PUSH2 0x0a96 00000947: JUMPI 00000948: DUP4 00000949: MLOAD 0000094a: PUSH4 0x3b9e9f01 0000094f: PUSH1 0xe2 00000951: SHL 00000952: DUP2 00000953: MSTORE 00000954: CALLER 00000955: SWAP2 00000956: DUP2 00000957: ADD 00000958: SWAP2 00000959: DUP3 0000095a: MSTORE 0000095b: PUSH1 0x20 0000095d: DUP3 0000095e: ADD 0000095f: DUP12 00000960: SWAP1 00000961: MSTORE 00000962: SWAP5 00000963: SWAP4 00000964: SWAP3 00000965: SWAP2 00000966: DUP9 00000967: SWAP2 00000968: DUP7 00000969: SWAP2 0000096a: SWAP1 0000096b: DUP3 0000096c: SWAP1 0000096d: PUSH0 0000096e: SWAP1 0000096f: DUP3 00000970: SWAP1 00000971: PUSH1 0x40 00000973: ADD 00000974: SUB 00000975: SWAP3 00000976: GAS 00000977: CALL 00000978: SWAP1 00000979: DUP2 0000097a: ISZERO 0000097b: PUSH2 0x0561 0000097e: JUMPI 0000097f: PUSH32 0x61fd285f9e34a3dbfa9846bdcf22a023e37a3c93549902843b30dd74a18c5350 000009a0: SWAP8 000009a1: PUSH2 0x0a73 000009a4: SWAP6 000009a5: PUSH2 0x09eb 000009a8: SWAP4 000009a9: PUSH2 0x0a78 000009ac: JUMPI 000009ad: JUMPDEST 000009ae: POP 000009af: POP 000009b0: PUSH2 0x09ce 000009b3: PUSH2 0x04ad 000009b6: PUSH2 0x09be 000009b9: DUP13 000009ba: PUSH2 0x3ff4 000009bd: JUMP 000009be: JUMPDEST 000009bf: DUP4 000009c0: MLOAD 000009c1: PUSH1 0x01 000009c3: PUSH1 0x01 000009c5: PUSH1 0x80 000009c7: SHL 000009c8: SUB 000009c9: AND 000009ca: PUSH2 0x1ef1 000009cd: JUMP 000009ce: JUMPDEST 000009cf: PUSH1 0x01 000009d1: PUSH1 0x01 000009d3: PUSH1 0xa0 000009d5: SHL 000009d6: SUB 000009d7: DUP7 000009d8: AND 000009d9: PUSH0 000009da: SWAP1 000009db: DUP2 000009dc: MSTORE 000009dd: PUSH2 0x0137 000009e0: PUSH1 0x20 000009e2: MSTORE 000009e3: PUSH1 0x40 000009e5: SWAP1 000009e6: KECCAK256 000009e7: PUSH2 0x1f0f 000009ea: JUMP 000009eb: JUMPDEST 000009ec: PUSH2 0x09f4 000009ef: DUP3 000009f0: PUSH2 0x40c1 000009f3: JUMP 000009f4: JUMPDEST 000009f5: SWAP1 000009f6: PUSH2 0x0a32 000009f9: PUSH2 0x0a17 000009fc: PUSH2 0x0a04 000009ff: DUP6 00000a00: PUSH2 0x3ff4 00000a03: JUMP 00000a04: JUMPDEST 00000a05: PUSH1 0x98 00000a07: SLOAD 00000a08: PUSH1 0x80 00000a0a: SHR 00000a0b: SUB 00000a0c: PUSH1 0x01 00000a0e: PUSH1 0x01 00000a10: PUSH1 0x80 00000a12: SHL 00000a13: SUB 00000a14: AND 00000a15: SWAP1 00000a16: JUMP 00000a17: JUMPDEST 00000a18: PUSH1 0x01 00000a1a: PUSH1 0x01 00000a1c: PUSH1 0x80 00000a1e: SHL 00000a1f: SUB 00000a20: PUSH1 0x98 00000a22: SLOAD 00000a23: SWAP2 00000a24: DUP2 00000a25: NOT 00000a26: SWAP1 00000a27: PUSH1 0x80 00000a29: SHL 00000a2a: AND 00000a2b: SWAP2 00000a2c: AND 00000a2d: OR 00000a2e: PUSH1 0x98 00000a30: SSTORE 00000a31: JUMP 00000a32: JUMPDEST 00000a33: PUSH2 0x0a3c 00000a36: DUP3 00000a37: DUP7 00000a38: PUSH2 0x458a 00000a3b: JUMP 00000a3c: JUMPDEST 00000a3d: PUSH2 0x0a46 00000a40: DUP4 00000a41: DUP10 00000a42: PUSH2 0x4027 00000a45: JUMP 00000a46: JUMPDEST 00000a47: MLOAD 00000a48: SWAP5 00000a49: DUP6 00000a4a: SWAP5 00000a4b: AND 00000a4c: SWAP8 00000a4d: CALLER 00000a4e: SWAP8 00000a4f: DUP6 00000a50: SWAP1 00000a51: SWAP5 00000a52: SWAP4 00000a53: SWAP3 00000a54: PUSH1 0x60 00000a56: SWAP3 00000a57: PUSH1 0x80 00000a59: DUP4 00000a5a: ADD 00000a5b: SWAP7 00000a5c: PUSH1 0x01 00000a5e: DUP1 00000a5f: PUSH1 0xa0 00000a61: SHL 00000a62: SUB 00000a63: AND 00000a64: DUP4 00000a65: MSTORE 00000a66: PUSH1 0x20 00000a68: DUP4 00000a69: ADD 00000a6a: MSTORE 00000a6b: PUSH1 0x40 00000a6d: DUP3 00000a6e: ADD 00000a6f: MSTORE 00000a70: ADD 00000a71: MSTORE 00000a72: JUMP 00000a73: JUMPDEST 00000a74: SUB 00000a75: SWAP1 00000a76: LOG3 00000a77: STOP 00000a78: JUMPDEST 00000a79: DUP2 00000a7a: PUSH2 0x0a8e 00000a7d: SWAP3 00000a7e: SWAP1 00000a7f: RETURNDATASIZE 00000a80: LT 00000a81: PUSH2 0x055a 00000a84: JUMPI 00000a85: PUSH2 0x054c 00000a88: DUP2 00000a89: DUP4 00000a8a: PUSH2 0x0f95 00000a8d: JUMP 00000a8e: JUMPDEST 00000a8f: POP 00000a90: PUSH0 00000a91: DUP1 00000a92: PUSH2 0x09ad 00000a95: JUMP 00000a96: JUMPDEST 00000a97: DUP4 00000a98: MLOAD 00000a99: PUSH4 0x185cfc6d 00000a9e: PUSH1 0xe1 00000aa0: SHL 00000aa1: DUP2 00000aa2: MSTORE 00000aa3: REVERT 00000aa4: JUMPDEST 00000aa5: PUSH2 0x0939 00000aa8: SWAP3 00000aa9: SWAP6 00000aaa: POP 00000aab: PUSH2 0x0ac7 00000aae: PUSH2 0x0933 00000ab1: SWAP3 00000ab2: DUP3 00000ab3: PUSH2 0x0925 00000ab6: SWAP4 00000ab7: SWAP1 00000ab8: RETURNDATASIZE 00000ab9: LT 00000aba: PUSH2 0x055a 00000abd: JUMPI 00000abe: PUSH2 0x054c 00000ac1: DUP2 00000ac2: DUP4 00000ac3: PUSH2 0x0f95 00000ac6: JUMP 00000ac7: JUMPDEST 00000ac8: SWAP6 00000ac9: SWAP3 00000aca: POP 00000acb: POP 00000acc: DUP15 00000acd: PUSH2 0x0914 00000ad0: JUMP 00000ad1: JUMPDEST 00000ad2: DUP8 00000ad3: MLOAD 00000ad4: PUSH4 0xefda1a27 00000ad9: PUSH1 0xe0 00000adb: SHL 00000adc: DUP2 00000add: MSTORE 00000ade: DUP6 00000adf: SWAP1 00000ae0: REVERT 00000ae1: JUMPDEST 00000ae2: POP 00000ae3: PUSH2 0x0aea 00000ae6: PUSH2 0x2248 00000ae9: JUMP 00000aea: JUMPDEST 00000aeb: DUP10 00000aec: GT 00000aed: PUSH2 0x08b4 00000af0: JUMP 00000af1: JUMPDEST 00000af2: PUSH2 0x087e 00000af5: SWAP3 00000af6: SWAP5 00000af7: POP 00000af8: SWAP1 00000af9: DUP2 00000afa: PUSH2 0x0b0e 00000afd: SWAP3 00000afe: SWAP1 00000aff: RETURNDATASIZE 00000b00: LT 00000b01: PUSH2 0x055a 00000b04: JUMPI 00000b05: PUSH2 0x054c 00000b08: DUP2 00000b09: DUP4 00000b0a: PUSH2 0x0f95 00000b0d: JUMP 00000b0e: JUMPDEST 00000b0f: SWAP3 00000b10: SWAP1 00000b11: DUP15 00000b12: PUSH2 0x0871 00000b15: JUMP 00000b16: JUMPDEST 00000b17: DUP7 00000b18: MLOAD 00000b19: PUSH4 0x07091331 00000b1e: PUSH1 0xe0 00000b20: SHL 00000b21: DUP2 00000b22: MSTORE 00000b23: DUP5 00000b24: SWAP1 00000b25: REVERT 00000b26: JUMPDEST 00000b27: PUSH2 0x0b49 00000b2a: SWAP2 00000b2b: SWAP9 00000b2c: POP 00000b2d: PUSH1 0x60 00000b2f: RETURNDATASIZE 00000b30: PUSH1 0x60 00000b32: GT 00000b33: PUSH2 0x0b50 00000b36: JUMPI 00000b37: JUMPDEST 00000b38: PUSH2 0x0b41 00000b3b: DUP2 00000b3c: DUP4 00000b3d: PUSH2 0x0f95 00000b40: JUMP 00000b41: JUMPDEST 00000b42: DUP2 00000b43: ADD 00000b44: SWAP1 00000b45: PUSH2 0x3160 00000b48: JUMP 00000b49: JUMPDEST 00000b4a: SWAP7 00000b4b: PUSH0 00000b4c: PUSH2 0x0809 00000b4f: JUMP 00000b50: JUMPDEST 00000b51: POP 00000b52: RETURNDATASIZE 00000b53: PUSH2 0x0b37 00000b56: JUMP 00000b57: JUMPDEST 00000b58: DUP3 00000b59: MLOAD 00000b5a: PUSH4 0x673f032f 00000b5f: PUSH1 0xe1 00000b61: SHL 00000b62: DUP2 00000b63: MSTORE 00000b64: DUP8 00000b65: SWAP1 00000b66: REVERT 00000b67: JUMPDEST 00000b68: DUP1 00000b69: PUSH2 0x0b74 00000b6c: PUSH2 0x0b7a 00000b6f: SWAP3 00000b70: PUSH2 0x0f4c 00000b73: JUMP 00000b74: JUMPDEST 00000b75: DUP1 00000b76: PUSH2 0x038c 00000b79: JUMP 00000b7a: JUMPDEST 00000b7b: PUSH0 00000b7c: PUSH2 0x0768 00000b7f: JUMP 00000b80: JUMPDEST 00000b81: PUSH1 0x40 00000b83: MLOAD 00000b84: PUSH4 0xd92e233d 00000b89: PUSH1 0xe0 00000b8b: SHL 00000b8c: DUP2 00000b8d: MSTORE 00000b8e: PUSH1 0x04 00000b90: SWAP1 00000b91: REVERT 00000b92: JUMPDEST 00000b93: CALLVALUE 00000b94: PUSH2 0x0317 00000b97: JUMPI 00000b98: PUSH0 00000b99: CALLDATASIZE 00000b9a: PUSH1 0x03 00000b9c: NOT 00000b9d: ADD 00000b9e: SLT 00000b9f: PUSH2 0x0317 00000ba2: JUMPI 00000ba3: PUSH1 0x20 00000ba5: PUSH2 0x0384 00000ba8: PUSH2 0x2248 00000bab: JUMP 00000bac: JUMPDEST 00000bad: CALLVALUE 00000bae: PUSH2 0x0317 00000bb1: JUMPI 00000bb2: PUSH0 00000bb3: CALLDATASIZE 00000bb4: PUSH1 0x03 00000bb6: NOT 00000bb7: ADD 00000bb8: SLT 00000bb9: PUSH2 0x0317 00000bbc: JUMPI 00000bbd: PUSH1 0x20 00000bbf: PUSH2 0x0bc6 00000bc2: PUSH2 0x227e 00000bc5: JUMP 00000bc6: JUMPDEST 00000bc7: PUSH1 0x40 00000bc9: MLOAD 00000bca: PUSH1 0x01 00000bcc: PUSH1 0x01 00000bce: PUSH1 0xa0 00000bd0: SHL 00000bd1: SUB 00000bd2: SWAP1 00000bd3: SWAP2 00000bd4: AND 00000bd5: DUP2 00000bd6: MSTORE 00000bd7: RETURN 00000bd8: JUMPDEST 00000bd9: CALLVALUE 00000bda: PUSH2 0x0317 00000bdd: JUMPI 00000bde: PUSH0 00000bdf: CALLDATASIZE 00000be0: PUSH1 0x03 00000be2: NOT 00000be3: ADD 00000be4: SLT 00000be5: PUSH2 0x0317 00000be8: JUMPI 00000be9: PUSH1 0x20 00000beb: PUSH1 0x40 00000bed: MLOAD 00000bee: PUSH32 0xa90b5863127e5f962890f832f07b9f40c8df2fc043326a0e4b538552d600f2d9 00000c0f: DUP2 00000c10: MSTORE 00000c11: RETURN 00000c12: JUMPDEST 00000c13: PUSH1 0x20 00000c15: PUSH2 0x0384 00000c18: PUSH2 0x0c20 00000c1b: CALLDATASIZE 00000c1c: PUSH2 0x0659 00000c1f: JUMP 00000c20: JUMPDEST 00000c21: SWAP2 00000c22: PUSH2 0x22b9 00000c25: JUMP 00000c26: JUMPDEST 00000c27: CALLVALUE 00000c28: PUSH2 0x0317 00000c2b: JUMPI 00000c2c: PUSH0 00000c2d: CALLDATASIZE 00000c2e: PUSH1 0x03 00000c30: NOT 00000c31: ADD 00000c32: SLT 00000c33: PUSH2 0x0317 00000c36: JUMPI 00000c37: PUSH1 0x20 00000c39: PUSH1 0x01 00000c3b: PUSH1 0x01 00000c3d: PUSH1 0x80 00000c3f: SHL 00000c40: SUB 00000c41: PUSH1 0x98 00000c43: SLOAD 00000c44: AND 00000c45: PUSH1 0x40 00000c47: MLOAD 00000c48: SWAP1 00000c49: DUP2 00000c4a: MSTORE 00000c4b: RETURN 00000c4c: JUMPDEST 00000c4d: SWAP2 00000c4e: DUP2 00000c4f: PUSH1 0x1f 00000c51: DUP5 00000c52: ADD 00000c53: SLT 00000c54: ISZERO 00000c55: PUSH2 0x0317 00000c58: JUMPI 00000c59: DUP3 00000c5a: CALLDATALOAD 00000c5b: SWAP2 00000c5c: PUSH1 0x01 00000c5e: PUSH1 0x01 00000c60: PUSH1 0x40 00000c62: SHL 00000c63: SUB 00000c64: DUP4 00000c65: GT 00000c66: PUSH2 0x0317 00000c69: JUMPI 00000c6a: PUSH1 0x20 00000c6c: DUP4 00000c6d: DUP2 00000c6e: DUP7 00000c6f: ADD 00000c70: SWAP6 00000c71: ADD 00000c72: ADD 00000c73: GT 00000c74: PUSH2 0x0317 00000c77: JUMPI 00000c78: JUMP 00000c79: JUMPDEST 00000c7a: PUSH1 0x20 00000c7c: PUSH1 0x03 00000c7e: NOT 00000c7f: DUP3 00000c80: ADD 00000c81: SLT 00000c82: PUSH2 0x0317 00000c85: JUMPI 00000c86: PUSH1 0x04 00000c88: CALLDATALOAD 00000c89: SWAP1 00000c8a: PUSH1 0x01 00000c8c: PUSH1 0x01 00000c8e: PUSH1 0x40 00000c90: SHL 00000c91: SUB 00000c92: DUP3 00000c93: GT 00000c94: PUSH2 0x0317 00000c97: JUMPI 00000c98: PUSH2 0x0ca3 00000c9b: SWAP2 00000c9c: PUSH1 0x04 00000c9e: ADD 00000c9f: PUSH2 0x0c4c 00000ca2: JUMP 00000ca3: JUMPDEST 00000ca4: SWAP1 00000ca5: SWAP2 00000ca6: JUMP 00000ca7: JUMPDEST 00000ca8: PUSH2 0x0cb0 00000cab: CALLDATASIZE 00000cac: PUSH2 0x0c79 00000caf: JUMP 00000cb0: JUMPDEST 00000cb1: SWAP1 00000cb2: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 00000cd3: SWAP2 00000cd4: DUP3 00000cd5: SLOAD 00000cd6: SWAP2 00000cd7: PUSH1 0xff 00000cd9: DUP4 00000cda: PUSH1 0x40 00000cdc: SHR 00000cdd: AND 00000cde: DUP1 00000cdf: ISZERO 00000ce0: PUSH2 0x0d59 00000ce3: JUMPI 00000ce4: JUMPDEST 00000ce5: PUSH2 0x0d47 00000ce8: JUMPI 00000ce9: PUSH9 0x010000000000000002 00000cf3: PUSH2 0x0d0a 00000cf6: SWAP4 00000cf7: PUSH9 0xffffffffffffffffff 00000d01: NOT 00000d02: AND 00000d03: OR 00000d04: DUP5 00000d05: SSTORE 00000d06: PUSH2 0x2399 00000d09: JUMP 00000d0a: JUMPDEST 00000d0b: PUSH9 0xff0000000000000000 00000d15: NOT 00000d16: DUP2 00000d17: SLOAD 00000d18: AND 00000d19: SWAP1 00000d1a: SSTORE 00000d1b: PUSH32 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2 00000d3c: PUSH1 0x20 00000d3e: PUSH1 0x40 00000d40: MLOAD 00000d41: PUSH1 0x02 00000d43: DUP2 00000d44: MSTORE 00000d45: LOG1 00000d46: STOP 00000d47: JUMPDEST 00000d48: PUSH1 0x40 00000d4a: MLOAD 00000d4b: PUSH4 0xf92ee8a9 00000d50: PUSH1 0xe0 00000d52: SHL 00000d53: DUP2 00000d54: MSTORE 00000d55: PUSH1 0x04 00000d57: SWAP1 00000d58: REVERT 00000d59: JUMPDEST 00000d5a: POP 00000d5b: PUSH1 0x02 00000d5d: PUSH1 0x01 00000d5f: PUSH1 0x01 00000d61: PUSH1 0x40 00000d63: SHL 00000d64: SUB 00000d65: DUP5 00000d66: AND 00000d67: LT 00000d68: ISZERO 00000d69: PUSH2 0x0ce4 00000d6c: JUMP 00000d6d: JUMPDEST 00000d6e: CALLVALUE 00000d6f: PUSH2 0x0317 00000d72: JUMPI 00000d73: PUSH2 0x0d7b 00000d76: CALLDATASIZE 00000d77: PUSH2 0x06c7 00000d7a: JUMP 00000d7b: JUMPDEST 00000d7c: PUSH1 0x40 00000d7e: MLOAD 00000d7f: PUSH4 0x057453a7 00000d84: PUSH1 0xe3 00000d86: SHL 00000d87: DUP2 00000d88: MSTORE 00000d89: SWAP1 00000d8a: SWAP2 00000d8b: SWAP1 00000d8c: PUSH1 0x01 00000d8e: PUSH1 0x01 00000d90: PUSH1 0xa0 00000d92: SHL 00000d93: SUB 00000d94: SWAP1 00000d95: PUSH1 0x20 00000d97: DUP2 00000d98: PUSH1 0x04 00000d9a: DUP2 00000d9b: PUSH32 0x000000000000000000000000287d1e2a8de183a8bf8f2b09fa1340fbd766eb59 00000dbc: DUP7 00000dbd: AND 00000dbe: GAS 00000dbf: STATICCALL 00000dc0: DUP1 00000dc1: ISZERO 00000dc2: PUSH2 0x0561 00000dc5: JUMPI 00000dc6: DUP3 00000dc7: SWAP2 00000dc8: PUSH0 00000dc9: SWAP2 00000dca: PUSH2 0x0e4b 00000dcd: JUMPI 00000dce: JUMPDEST 00000dcf: POP 00000dd0: AND 00000dd1: CALLER 00000dd2: SUB 00000dd3: PUSH2 0x0e39 00000dd6: JUMPI 00000dd7: DUP2 00000dd8: PUSH2 0x0a73 00000ddb: PUSH2 0x0e06 00000dde: DUP7 00000ddf: DUP7 00000de0: PUSH32 0x57f5eb636bf62215c111b54545422f11dfb0cb115f606be905f0be08e8859dd3 00000e01: SWAP7 00000e02: PUSH2 0x31a0 00000e05: JUMP 00000e06: JUMPDEST 00000e07: PUSH1 0x40 00000e09: DUP1 00000e0a: MLOAD 00000e0b: PUSH1 0x01 00000e0d: PUSH1 0x01 00000e0f: PUSH1 0xa0 00000e11: SHL 00000e12: SUB 00000e13: SWAP1 00000e14: SWAP9 00000e15: AND 00000e16: DUP9 00000e17: MSTORE 00000e18: PUSH1 0x20 00000e1a: DUP9 00000e1b: ADD 00000e1c: SWAP9 00000e1d: SWAP1 00000e1e: SWAP9 00000e1f: MSTORE 00000e20: SWAP7 00000e21: DUP7 00000e22: ADD 00000e23: MSTORE 00000e24: PUSH1 0x60 00000e26: DUP6 00000e27: ADD 00000e28: SWAP6 00000e29: SWAP1 00000e2a: SWAP6 00000e2b: MSTORE 00000e2c: AND 00000e2d: SWAP3 00000e2e: CALLER 00000e2f: SWAP3 00000e30: SWAP1 00000e31: DUP2 00000e32: SWAP1 00000e33: PUSH1 0x80 00000e35: DUP3 00000e36: ADD 00000e37: SWAP1 00000e38: JUMP 00000e39: JUMPDEST 00000e3a: PUSH1 0x40 00000e3c: MLOAD 00000e3d: PUSH4 0x4ca88867 00000e42: PUSH1 0xe0 00000e44: SHL 00000e45: DUP2 00000e46: MSTORE 00000e47: PUSH1 0x04 00000e49: SWAP1 00000e4a: REVERT 00000e4b: JUMPDEST 00000e4c: PUSH2 0x0e6d 00000e4f: SWAP2 00000e50: POP 00000e51: PUSH1 0x20 00000e53: RETURNDATASIZE 00000e54: PUSH1 0x20 00000e56: GT 00000e57: PUSH2 0x0e73 00000e5a: JUMPI 00000e5b: JUMPDEST 00000e5c: PUSH2 0x0e65 00000e5f: DUP2 00000e60: DUP4 00000e61: PUSH2 0x0f95 00000e64: JUMP 00000e65: JUMPDEST 00000e66: DUP2 00000e67: ADD 00000e68: SWAP1 00000e69: PUSH2 0x2305 00000e6c: JUMP 00000e6d: JUMPDEST 00000e6e: PUSH0 00000e6f: PUSH2 0x0dce 00000e72: JUMP 00000e73: JUMPDEST 00000e74: POP 00000e75: RETURNDATASIZE 00000e76: PUSH2 0x0e5b 00000e79: JUMP 00000e7a: JUMPDEST 00000e7b: CALLVALUE 00000e7c: PUSH2 0x0317 00000e7f: JUMPI 00000e80: PUSH0 00000e81: CALLDATASIZE 00000e82: PUSH1 0x03 00000e84: NOT 00000e85: ADD 00000e86: SLT 00000e87: PUSH2 0x0317 00000e8a: JUMPI 00000e8b: PUSH1 0x65 00000e8d: SLOAD 00000e8e: PUSH1 0x40 00000e90: MLOAD 00000e91: PUSH1 0x01 00000e93: PUSH1 0x01 00000e95: PUSH1 0xa0 00000e97: SHL 00000e98: SUB 00000e99: SWAP1 00000e9a: SWAP2 00000e9b: AND 00000e9c: DUP2 00000e9d: MSTORE 00000e9e: PUSH1 0x20 00000ea0: SWAP1 00000ea1: RETURN 00000ea2: JUMPDEST 00000ea3: CALLVALUE 00000ea4: PUSH2 0x0317 00000ea7: JUMPI 00000ea8: PUSH1 0x20 00000eaa: CALLDATASIZE 00000eab: PUSH1 0x03 00000ead: NOT 00000eae: ADD 00000eaf: SLT 00000eb0: PUSH2 0x0317 00000eb3: JUMPI 00000eb4: PUSH1 0x04 00000eb6: CALLDATALOAD 00000eb7: PUSH2 0x0ebf 00000eba: DUP2 00000ebb: PUSH2 0x0306 00000ebe: JUMP 00000ebf: JUMPDEST 00000ec0: PUSH1 0x01 00000ec2: DUP1 00000ec3: PUSH1 0xa0 00000ec5: SHL 00000ec6: SUB 00000ec7: AND 00000ec8: PUSH0 00000ec9: MSTORE 00000eca: PUSH2 0x0137 00000ecd: PUSH1 0x20 00000ecf: MSTORE 00000ed0: PUSH1 0x20 00000ed2: PUSH1 0x40 00000ed4: PUSH0 00000ed5: KECCAK256 00000ed6: PUSH1 0x40 00000ed8: MLOAD 00000ed9: SWAP1 00000eda: PUSH2 0x0ee2 00000edd: DUP3 00000ede: PUSH2 0x0f2c 00000ee1: JUMP 00000ee2: JUMPDEST 00000ee3: SLOAD 00000ee4: SWAP1 00000ee5: PUSH1 0x01 00000ee7: PUSH1 0x01 00000ee9: PUSH1 0x80 00000eeb: SHL 00000eec: SUB 00000eed: SWAP2 00000eee: DUP3 00000eef: DUP2 00000ef0: AND 00000ef1: SWAP1 00000ef2: DUP2 00000ef3: DUP4 00000ef4: MSTORE 00000ef5: PUSH1 0x80 00000ef7: SHR 00000ef8: DUP5 00000ef9: DUP4 00000efa: ADD 00000efb: MSTORE 00000efc: PUSH2 0x0f0a 00000eff: JUMPI 00000f00: JUMPDEST 00000f01: MLOAD 00000f02: AND 00000f03: PUSH1 0x40 00000f05: MLOAD 00000f06: SWAP1 00000f07: DUP2 00000f08: MSTORE 00000f09: RETURN 00000f0a: JUMPDEST 00000f0b: PUSH2 0x0f13 00000f0e: DUP2 00000f0f: PUSH2 0x29bb 00000f12: JUMP 00000f13: JUMPDEST 00000f14: PUSH2 0x0f00 00000f17: JUMP 00000f18: JUMPDEST 00000f19: PUSH4 0x4e487b71 00000f1e: PUSH1 0xe0 00000f20: SHL 00000f21: PUSH0 00000f22: MSTORE 00000f23: PUSH1 0x41 00000f25: PUSH1 0x04 00000f27: MSTORE 00000f28: PUSH1 0x24 00000f2a: PUSH0 00000f2b: REVERT 00000f2c: JUMPDEST 00000f2d: PUSH1 0x40 00000f2f: DUP2 00000f30: ADD 00000f31: SWAP1 00000f32: DUP2 00000f33: LT 00000f34: PUSH1 0x01 00000f36: PUSH1 0x01 00000f38: PUSH1 0x40 00000f3a: SHL 00000f3b: SUB 00000f3c: DUP3 00000f3d: GT 00000f3e: OR 00000f3f: PUSH2 0x0f47 00000f42: JUMPI 00000f43: PUSH1 0x40 00000f45: MSTORE 00000f46: JUMP 00000f47: JUMPDEST 00000f48: PUSH2 0x0f18 00000f4b: JUMP 00000f4c: JUMPDEST 00000f4d: PUSH1 0x01 00000f4f: PUSH1 0x01 00000f51: PUSH1 0x40 00000f53: SHL 00000f54: SUB 00000f55: DUP2 00000f56: GT 00000f57: PUSH2 0x0f47 00000f5a: JUMPI 00000f5b: PUSH1 0x40 00000f5d: MSTORE 00000f5e: JUMP 00000f5f: JUMPDEST 00000f60: PUSH1 0x60 00000f62: DUP2 00000f63: ADD 00000f64: SWAP1 00000f65: DUP2 00000f66: LT 00000f67: PUSH1 0x01 00000f69: PUSH1 0x01 00000f6b: PUSH1 0x40 00000f6d: SHL 00000f6e: SUB 00000f6f: DUP3 00000f70: GT 00000f71: OR 00000f72: PUSH2 0x0f47 00000f75: JUMPI 00000f76: PUSH1 0x40 00000f78: MSTORE 00000f79: JUMP 00000f7a: JUMPDEST 00000f7b: PUSH1 0x80 00000f7d: DUP2 00000f7e: ADD 00000f7f: SWAP1 00000f80: DUP2 00000f81: LT 00000f82: PUSH1 0x01 00000f84: PUSH1 0x01 00000f86: PUSH1 0x40 00000f88: SHL 00000f89: SUB 00000f8a: DUP3 00000f8b: GT 00000f8c: OR 00000f8d: PUSH2 0x0f47 00000f90: JUMPI 00000f91: PUSH1 0x40 00000f93: MSTORE 00000f94: JUMP 00000f95: JUMPDEST 00000f96: SWAP1 00000f97: PUSH1 0x1f 00000f99: DUP1 00000f9a: NOT 00000f9b: SWAP2 00000f9c: ADD 00000f9d: AND 00000f9e: DUP2 00000f9f: ADD 00000fa0: SWAP1 00000fa1: DUP2 00000fa2: LT 00000fa3: PUSH1 0x01 00000fa5: PUSH1 0x01 00000fa7: PUSH1 0x40 00000fa9: SHL 00000faa: SUB 00000fab: DUP3 00000fac: GT 00000fad: OR 00000fae: PUSH2 0x0f47 00000fb1: JUMPI 00000fb2: PUSH1 0x40 00000fb4: MSTORE 00000fb5: JUMP 00000fb6: JUMPDEST 00000fb7: PUSH1 0x40 00000fb9: MLOAD 00000fba: SWAP1 00000fbb: PUSH2 0x0fc3 00000fbe: DUP3 00000fbf: PUSH2 0x0f2c 00000fc2: JUMP 00000fc3: JUMPDEST 00000fc4: JUMP 00000fc5: JUMPDEST 00000fc6: PUSH1 0x01 00000fc8: PUSH1 0x01 00000fca: PUSH1 0x40 00000fcc: SHL 00000fcd: SUB 00000fce: DUP2 00000fcf: GT 00000fd0: PUSH2 0x0f47 00000fd3: JUMPI 00000fd4: PUSH1 0x1f 00000fd6: ADD 00000fd7: PUSH1 0x1f 00000fd9: NOT 00000fda: AND 00000fdb: PUSH1 0x20 00000fdd: ADD 00000fde: SWAP1 00000fdf: JUMP 00000fe0: JUMPDEST 00000fe1: SWAP3 00000fe2: SWAP2 00000fe3: SWAP3 00000fe4: PUSH2 0x0fec 00000fe7: DUP3 00000fe8: PUSH2 0x0fc5 00000feb: JUMP 00000fec: JUMPDEST 00000fed: SWAP2 00000fee: PUSH2 0x0ffa 00000ff1: PUSH1 0x40 00000ff3: MLOAD 00000ff4: SWAP4 00000ff5: DUP5 00000ff6: PUSH2 0x0f95 00000ff9: JUMP 00000ffa: JUMPDEST 00000ffb: DUP3 00000ffc: SWAP5 00000ffd: DUP2 00000ffe: DUP5 00000fff: MSTORE 00001000: DUP2 00001001: DUP4 00001002: ADD 00001003: GT 00001004: PUSH2 0x0317 00001007: JUMPI 00001008: DUP3 00001009: DUP2 0000100a: PUSH1 0x20 0000100c: SWAP4 0000100d: DUP5 0000100e: PUSH0 0000100f: SWAP7 00001010: ADD 00001011: CALLDATACOPY 00001012: ADD 00001013: ADD 00001014: MSTORE 00001015: JUMP 00001016: JUMPDEST 00001017: PUSH1 0x40 00001019: DUP1 0000101a: PUSH1 0x03 0000101c: NOT 0000101d: CALLDATASIZE 0000101e: ADD 0000101f: SLT 00001020: PUSH2 0x0317 00001023: JUMPI 00001024: PUSH1 0x04 00001026: SWAP1 00001027: DUP2 00001028: CALLDATALOAD 00001029: PUSH2 0x1031 0000102c: DUP2 0000102d: PUSH2 0x0306 00001030: JUMP 00001031: JUMPDEST 00001032: PUSH1 0x24 00001034: CALLDATALOAD 00001035: PUSH1 0x01 00001037: PUSH1 0x01 00001039: PUSH1 0x40 0000103b: SHL 0000103c: SUB 0000103d: DUP2 0000103e: GT 0000103f: PUSH2 0x0317 00001042: JUMPI 00001043: CALLDATASIZE 00001044: PUSH1 0x23 00001046: DUP3 00001047: ADD 00001048: SLT 00001049: ISZERO 0000104a: PUSH2 0x0317 0000104d: JUMPI 0000104e: PUSH2 0x1060 00001051: SWAP1 00001052: CALLDATASIZE 00001053: SWAP1 00001054: PUSH1 0x24 00001056: DUP2 00001057: DUP8 00001058: ADD 00001059: CALLDATALOAD 0000105a: SWAP2 0000105b: ADD 0000105c: PUSH2 0x0fe0 0000105f: JUMP 00001060: JUMPDEST 00001061: SWAP2 00001062: PUSH2 0x1069 00001065: PUSH2 0x37bc 00001068: JUMP 00001069: JUMPDEST 0000106a: DUP1 0000106b: MLOAD 0000106c: SWAP3 0000106d: PUSH2 0x10a0 00001070: DUP5 00001071: PUSH2 0x1092 00001074: PUSH1 0x20 00001076: SWAP4 00001077: PUSH4 0x439fab91 0000107c: PUSH1 0xe0 0000107e: SHL 0000107f: DUP6 00001080: DUP5 00001081: ADD 00001082: MSTORE 00001083: DUP5 00001084: PUSH1 0x24 00001086: DUP5 00001087: ADD 00001088: MSTORE 00001089: PUSH1 0x44 0000108b: DUP4 0000108c: ADD 0000108d: SWAP1 0000108e: PUSH2 0x1bb0 00001091: JUMP 00001092: JUMPDEST 00001093: SUB 00001094: PUSH1 0x1f 00001096: NOT 00001097: DUP2 00001098: ADD 00001099: DUP7 0000109a: MSTORE 0000109b: DUP6 0000109c: PUSH2 0x0f95 0000109f: JUMP 000010a0: JUMPDEST 000010a1: PUSH2 0x10a8 000010a4: PUSH2 0x37bc 000010a7: JUMP 000010a8: JUMPDEST 000010a9: PUSH2 0x10b0 000010ac: PUSH2 0x3895 000010af: JUMP 000010b0: JUMPDEST 000010b1: PUSH1 0x01 000010b3: PUSH1 0x01 000010b5: PUSH1 0xa0 000010b7: SHL 000010b8: SUB 000010b9: DUP4 000010ba: DUP2 000010bb: AND 000010bc: DUP1 000010bd: ISZERO 000010be: SWAP3 000010bf: SWAP2 000010c0: SWAP1 000010c1: DUP8 000010c2: SWAP1 000010c3: DUP5 000010c4: ISZERO 000010c5: PUSH2 0x1267 000010c8: JUMPI 000010c9: JUMPDEST 000010ca: DUP5 000010cb: ISZERO 000010cc: PUSH2 0x11f9 000010cf: JUMPI 000010d0: JUMPDEST 000010d1: DUP5 000010d2: ISZERO 000010d3: PUSH2 0x1195 000010d6: JUMPI 000010d7: JUMPDEST 000010d8: POP 000010d9: POP 000010da: DUP3 000010db: ISZERO 000010dc: PUSH2 0x10ff 000010df: JUMPI 000010e0: JUMPDEST 000010e1: POP 000010e2: POP 000010e3: PUSH2 0x10f0 000010e6: JUMPI 000010e7: PUSH2 0x0020 000010ea: DUP4 000010eb: DUP4 000010ec: PUSH2 0x471a 000010ef: JUMP 000010f0: JUMPDEST 000010f1: MLOAD 000010f2: PUSH4 0x55299b49 000010f7: PUSH1 0xe0 000010f9: SHL 000010fa: DUP2 000010fb: MSTORE 000010fc: DUP4 000010fd: SWAP1 000010fe: REVERT 000010ff: JUMPDEST 00001100: DUP4 00001101: MLOAD 00001102: PUSH4 0x45da87c5 00001107: PUSH1 0xe0 00001109: SHL 0000110a: DUP2 0000110b: MSTORE 0000110c: PUSH1 0x01 0000110e: PUSH1 0x01 00001110: PUSH1 0xa0 00001112: SHL 00001113: SUB 00001114: DUP7 00001115: AND 00001116: DUP9 00001117: DUP3 00001118: ADD 00001119: SWAP1 0000111a: DUP2 0000111b: MSTORE 0000111c: SWAP3 0000111d: SWAP4 0000111e: POP 0000111f: SWAP2 00001120: DUP4 00001121: SWAP2 00001122: DUP4 00001123: SWAP2 00001124: DUP3 00001125: SWAP1 00001126: DUP2 00001127: SWAP1 00001128: PUSH1 0x20 0000112a: ADD 0000112b: SUB 0000112c: SWAP2 0000112d: PUSH32 0x0000000000000000000000003a0008a588772446f6e656133c2d5029cc4fc20e 0000114e: AND 0000114f: GAS 00001150: STATICCALL 00001151: SWAP2 00001152: DUP3 00001153: ISZERO 00001154: PUSH2 0x0561 00001157: JUMPI 00001158: PUSH0 00001159: SWAP3 0000115a: PUSH2 0x1168 0000115d: JUMPI 0000115e: JUMPDEST 0000115f: POP 00001160: POP 00001161: ISZERO 00001162: PUSH0 00001163: DUP1 00001164: PUSH2 0x10e0 00001167: JUMP 00001168: JUMPDEST 00001169: PUSH2 0x1187 0000116c: SWAP3 0000116d: POP 0000116e: DUP1 0000116f: RETURNDATASIZE 00001170: LT 00001171: PUSH2 0x118e 00001174: JUMPI 00001175: JUMPDEST 00001176: PUSH2 0x117f 00001179: DUP2 0000117a: DUP4 0000117b: PUSH2 0x0f95 0000117e: JUMP 0000117f: JUMPDEST 00001180: DUP2 00001181: ADD 00001182: SWAP1 00001183: PUSH2 0x2540 00001186: JUMP 00001187: JUMPDEST 00001188: PUSH0 00001189: DUP1 0000118a: PUSH2 0x115e 0000118d: JUMP 0000118e: JUMPDEST 0000118f: POP 00001190: RETURNDATASIZE 00001191: PUSH2 0x1175 00001194: JUMP 00001195: JUMPDEST 00001196: DUP6 00001197: MLOAD 00001198: PUSH4 0x054fd4d5 0000119d: PUSH1 0xe4 0000119f: SHL 000011a0: DUP2 000011a1: MSTORE 000011a2: SWAP3 000011a3: SWAP5 000011a4: POP 000011a5: DUP4 000011a6: SWAP2 000011a7: DUP4 000011a8: SWAP2 000011a9: DUP3 000011aa: SWAP1 000011ab: GAS 000011ac: STATICCALL 000011ad: SWAP1 000011ae: DUP2 000011af: ISZERO 000011b0: PUSH2 0x0561 000011b3: JUMPI 000011b4: PUSH1 0x03 000011b6: SWAP2 000011b7: PUSH1 0xff 000011b9: SWAP2 000011ba: PUSH0 000011bb: SWAP2 000011bc: PUSH2 0x11cc 000011bf: JUMPI 000011c0: JUMPDEST 000011c1: POP 000011c2: AND 000011c3: EQ 000011c4: ISZERO 000011c5: SWAP2 000011c6: DUP7 000011c7: PUSH0 000011c8: PUSH2 0x10d7 000011cb: JUMP 000011cc: JUMPDEST 000011cd: PUSH2 0x11ec 000011d0: SWAP2 000011d1: POP 000011d2: DUP5 000011d3: RETURNDATASIZE 000011d4: DUP7 000011d5: GT 000011d6: PUSH2 0x11f2 000011d9: JUMPI 000011da: JUMPDEST 000011db: PUSH2 0x11e4 000011de: DUP2 000011df: DUP4 000011e0: PUSH2 0x0f95 000011e3: JUMP 000011e4: JUMPDEST 000011e5: DUP2 000011e6: ADD 000011e7: SWAP1 000011e8: PUSH2 0x4701 000011eb: JUMP 000011ec: JUMPDEST 000011ed: PUSH0 000011ee: PUSH2 0x11c0 000011f1: JUMP 000011f2: JUMPDEST 000011f3: POP 000011f4: RETURNDATASIZE 000011f5: PUSH2 0x11da 000011f8: JUMP 000011f9: JUMPDEST 000011fa: SWAP4 000011fb: POP 000011fc: POP 000011fd: DUP4 000011fe: MLOAD 000011ff: PUSH4 0x198ca605 00001204: PUSH1 0xe1 00001206: SHL 00001207: DUP2 00001208: MSTORE 00001209: DUP3 0000120a: DUP2 0000120b: DUP10 0000120c: DUP2 0000120d: DUP8 0000120e: GAS 0000120f: STATICCALL 00001210: SWAP1 00001211: DUP2 00001212: ISZERO 00001213: PUSH2 0x0561 00001216: JUMPI 00001217: DUP9 00001218: SWAP2 00001219: PUSH32 0xa90b5863127e5f962890f832f07b9f40c8df2fc043326a0e4b538552d600f2d9 0000123a: SWAP2 0000123b: PUSH0 0000123c: SWAP2 0000123d: PUSH2 0x124a 00001240: JUMPI 00001241: JUMPDEST 00001242: POP 00001243: EQ 00001244: ISZERO 00001245: SWAP4 00001246: PUSH2 0x10d0 00001249: JUMP 0000124a: JUMPDEST 0000124b: PUSH2 0x1261 0000124e: SWAP2 0000124f: POP 00001250: DUP6 00001251: RETURNDATASIZE 00001252: DUP8 00001253: GT 00001254: PUSH2 0x055a 00001257: JUMPI 00001258: PUSH2 0x054c 0000125b: DUP2 0000125c: DUP4 0000125d: PUSH2 0x0f95 00001260: JUMP 00001261: JUMPDEST 00001262: PUSH0 00001263: PUSH2 0x1241 00001266: JUMP 00001267: JUMPDEST 00001268: PUSH0 00001269: DUP1 0000126a: MLOAD 0000126b: PUSH1 0x20 0000126d: PUSH2 0x4b9c 00001270: DUP4 00001271: CODECOPY 00001272: DUP2 00001273: MLOAD 00001274: SWAP2 00001275: MSTORE 00001276: SLOAD 00001277: SWAP1 00001278: SWAP5 00001279: POP 0000127a: DUP5 0000127b: SWAP1 0000127c: PUSH2 0x1295 0000127f: SWAP1 00001280: PUSH1 0x01 00001282: PUSH1 0x01 00001284: PUSH1 0xa0 00001286: SHL 00001287: SUB 00001288: AND 00001289: JUMPDEST 0000128a: PUSH1 0x01 0000128c: PUSH1 0x01 0000128e: PUSH1 0xa0 00001290: SHL 00001291: SUB 00001292: AND 00001293: SWAP1 00001294: JUMP 00001295: JUMPDEST 00001296: EQ 00001297: SWAP4 00001298: PUSH2 0x10c9 0000129b: JUMP 0000129c: JUMPDEST 0000129d: CALLVALUE 0000129e: PUSH2 0x0317 000012a1: JUMPI 000012a2: PUSH0 000012a3: CALLDATASIZE 000012a4: PUSH1 0x03 000012a6: NOT 000012a7: ADD 000012a8: SLT 000012a9: PUSH2 0x0317 000012ac: JUMPI 000012ad: PUSH32 0x00000000000000000000000081ab00dd782492d62105b8fa9b03e82d4b57798c 000012ce: PUSH1 0x01 000012d0: PUSH1 0x01 000012d2: PUSH1 0xa0 000012d4: SHL 000012d5: SUB 000012d6: AND 000012d7: ADDRESS 000012d8: SUB 000012d9: PUSH2 0x12f3 000012dc: JUMPI 000012dd: PUSH1 0x20 000012df: PUSH1 0x40 000012e1: MLOAD 000012e2: PUSH0 000012e3: DUP1 000012e4: MLOAD 000012e5: PUSH1 0x20 000012e7: PUSH2 0x4b9c 000012ea: DUP4 000012eb: CODECOPY 000012ec: DUP2 000012ed: MLOAD 000012ee: SWAP2 000012ef: MSTORE 000012f0: DUP2 000012f1: MSTORE 000012f2: RETURN 000012f3: JUMPDEST 000012f4: PUSH1 0x40 000012f6: MLOAD 000012f7: PUSH4 0x703e46dd 000012fc: PUSH1 0xe1 000012fe: SHL 000012ff: DUP2 00001300: MSTORE 00001301: PUSH1 0x04 00001303: SWAP1 00001304: REVERT 00001305: JUMPDEST 00001306: PUSH0 00001307: CALLDATASIZE 00001308: PUSH1 0x03 0000130a: NOT 0000130b: ADD 0000130c: SLT 0000130d: PUSH2 0x0317 00001310: JUMPI 00001311: PUSH1 0x01 00001313: PUSH1 0x01 00001315: PUSH1 0xa0 00001317: SHL 00001318: SUB 00001319: PUSH2 0x1320 0000131c: PUSH2 0x227e 0000131f: JUMP 00001320: JUMPDEST 00001321: AND 00001322: CALLER 00001323: SUB 00001324: PUSH2 0x0e39 00001327: JUMPI 00001328: STOP 00001329: JUMPDEST 0000132a: CALLVALUE 0000132b: PUSH2 0x0317 0000132e: JUMPI 0000132f: PUSH0 00001330: CALLDATASIZE 00001331: PUSH1 0x03 00001333: NOT 00001334: ADD 00001335: SLT 00001336: PUSH2 0x0317 00001339: JUMPI 0000133a: PUSH1 0x20 0000133c: PUSH1 0x40 0000133e: MLOAD 0000133f: PUSH1 0x02 00001341: DUP2 00001342: MSTORE 00001343: RETURN 00001344: JUMPDEST 00001345: CALLVALUE 00001346: PUSH2 0x0317 00001349: JUMPI 0000134a: PUSH0 0000134b: CALLDATASIZE 0000134c: PUSH1 0x03 0000134e: NOT 0000134f: ADD 00001350: SLT 00001351: PUSH2 0x0317 00001354: JUMPI 00001355: PUSH0 00001356: DUP1 00001357: MLOAD 00001358: PUSH1 0x20 0000135a: PUSH2 0x4b9c 0000135d: DUP4 0000135e: CODECOPY 0000135f: DUP2 00001360: MLOAD 00001361: SWAP2 00001362: MSTORE 00001363: SLOAD 00001364: PUSH1 0x40 00001366: MLOAD 00001367: PUSH1 0x01 00001369: PUSH1 0x01 0000136b: PUSH1 0xa0 0000136d: SHL 0000136e: SUB 0000136f: SWAP1 00001370: SWAP2 00001371: AND 00001372: DUP2 00001373: MSTORE 00001374: PUSH1 0x20 00001376: SWAP1 00001377: RETURN 00001378: JUMPDEST 00001379: CALLVALUE 0000137a: PUSH2 0x0317 0000137d: JUMPI 0000137e: PUSH0 0000137f: CALLDATASIZE 00001380: PUSH1 0x03 00001382: NOT 00001383: ADD 00001384: SLT 00001385: PUSH2 0x0317 00001388: JUMPI 00001389: PUSH1 0x20 0000138b: PUSH2 0x0384 0000138e: PUSH2 0x2466 00001391: JUMP 00001392: JUMPDEST 00001393: CALLVALUE 00001394: PUSH2 0x0317 00001397: JUMPI 00001398: PUSH1 0x20 0000139a: CALLDATASIZE 0000139b: PUSH1 0x03 0000139d: NOT 0000139e: ADD 0000139f: SLT 000013a0: PUSH2 0x0317 000013a3: JUMPI 000013a4: PUSH1 0x20 000013a6: PUSH2 0x0384 000013a9: PUSH1 0x04 000013ab: CALLDATALOAD 000013ac: PUSH2 0x2481 000013af: JUMP 000013b0: JUMPDEST 000013b1: CALLVALUE 000013b2: PUSH2 0x0317 000013b5: JUMPI 000013b6: PUSH0 000013b7: CALLDATASIZE 000013b8: PUSH1 0x03 000013ba: NOT 000013bb: ADD 000013bc: SLT 000013bd: PUSH2 0x0317 000013c0: JUMPI 000013c1: PUSH1 0x40 000013c3: MLOAD 000013c4: PUSH4 0x3eb1acf7 000013c9: PUSH1 0xe1 000013cb: SHL 000013cc: DUP2 000013cd: MSTORE 000013ce: ADDRESS 000013cf: PUSH1 0x04 000013d1: DUP3 000013d2: ADD 000013d3: MSTORE 000013d4: PUSH1 0x20 000013d6: DUP2 000013d7: PUSH1 0x24 000013d9: DUP2 000013da: PUSH32 0x0000000000000000000000006b5815467da09daa7dc83db21c9239d98bb487b5 000013fb: PUSH1 0x01 000013fd: PUSH1 0x01 000013ff: PUSH1 0xa0 00001401: SHL 00001402: SUB 00001403: AND 00001404: GAS 00001405: STATICCALL 00001406: DUP1 00001407: ISZERO 00001408: PUSH2 0x0561 0000140b: JUMPI 0000140c: PUSH1 0x20 0000140e: SWAP2 0000140f: PUSH0 00001410: SWAP2 00001411: PUSH2 0x1420 00001414: JUMPI 00001415: JUMPDEST 00001416: POP 00001417: PUSH1 0x40 00001419: MLOAD 0000141a: SWAP1 0000141b: ISZERO 0000141c: ISZERO 0000141d: DUP2 0000141e: MSTORE 0000141f: RETURN 00001420: JUMPDEST 00001421: PUSH2 0x1437 00001424: SWAP2 00001425: POP 00001426: DUP3 00001427: RETURNDATASIZE 00001428: DUP5 00001429: GT 0000142a: PUSH2 0x118e 0000142d: JUMPI 0000142e: PUSH2 0x117f 00001431: DUP2 00001432: DUP4 00001433: PUSH2 0x0f95 00001436: JUMP 00001437: JUMPDEST 00001438: PUSH0 00001439: PUSH2 0x1415 0000143c: JUMP 0000143d: JUMPDEST 0000143e: CALLVALUE 0000143f: PUSH2 0x0317 00001442: JUMPI 00001443: PUSH1 0x20 00001445: CALLDATASIZE 00001446: PUSH1 0x03 00001448: NOT 00001449: ADD 0000144a: SLT 0000144b: PUSH2 0x0317 0000144e: JUMPI 0000144f: PUSH1 0x04 00001451: CALLDATALOAD 00001452: PUSH2 0x145a 00001455: DUP2 00001456: PUSH2 0x0306 00001459: JUMP 0000145a: JUMPDEST 0000145b: PUSH2 0x1462 0000145e: PUSH2 0x3895 00001461: JUMP 00001462: JUMPDEST 00001463: PUSH1 0xd2 00001465: DUP1 00001466: SLOAD 00001467: PUSH1 0x01 00001469: PUSH1 0x01 0000146b: PUSH1 0xa0 0000146d: SHL 0000146e: SUB 0000146f: NOT 00001470: AND 00001471: PUSH1 0x01 00001473: PUSH1 0x01 00001475: PUSH1 0xa0 00001477: SHL 00001478: SUB 00001479: SWAP3 0000147a: SWAP1 0000147b: SWAP3 0000147c: AND 0000147d: SWAP2 0000147e: DUP3 0000147f: OR 00001480: SWAP1 00001481: SSTORE 00001482: CALLER 00001483: PUSH32 0x6bdc78d8c88160b3fc3638e67f2afe523b3f4c7d00c56ebb6216790e4c3eb2cb 000014a4: PUSH0 000014a5: DUP1 000014a6: LOG3 000014a7: STOP 000014a8: JUMPDEST 000014a9: CALLVALUE 000014aa: PUSH2 0x0317 000014ad: JUMPI 000014ae: PUSH1 0x80 000014b0: CALLDATASIZE 000014b1: PUSH1 0x03 000014b3: NOT 000014b4: ADD 000014b5: SLT 000014b6: PUSH2 0x0317 000014b9: JUMPI 000014ba: PUSH2 0x051c 000014bd: PUSH2 0x14dc 000014c0: PUSH1 0x04 000014c2: CALLDATALOAD 000014c3: PUSH2 0x14cb 000014c6: DUP2 000014c7: PUSH2 0x0306 000014ca: JUMP 000014cb: JUMPDEST 000014cc: PUSH1 0x64 000014ce: CALLDATALOAD 000014cf: SWAP1 000014d0: PUSH1 0x44 000014d2: CALLDATALOAD 000014d3: SWAP1 000014d4: PUSH1 0x24 000014d6: CALLDATALOAD 000014d7: SWAP1 000014d8: PUSH2 0x2562 000014db: JUMP 000014dc: JUMPDEST 000014dd: PUSH1 0x40 000014df: DUP1 000014e0: MLOAD 000014e1: SWAP4 000014e2: DUP5 000014e3: MSTORE 000014e4: PUSH1 0x20 000014e6: DUP5 000014e7: ADD 000014e8: SWAP3 000014e9: SWAP1 000014ea: SWAP3 000014eb: MSTORE 000014ec: SWAP1 000014ed: DUP3 000014ee: ADD 000014ef: MSTORE 000014f0: SWAP1 000014f1: DUP2 000014f2: SWAP1 000014f3: PUSH1 0x60 000014f5: DUP3 000014f6: ADD 000014f7: SWAP1 000014f8: JUMP 000014f9: JUMPDEST 000014fa: CALLVALUE 000014fb: PUSH2 0x0317 000014fe: JUMPI 000014ff: PUSH0 00001500: CALLDATASIZE 00001501: PUSH1 0x03 00001503: NOT 00001504: ADD 00001505: SLT 00001506: PUSH2 0x0317 00001509: JUMPI 0000150a: PUSH1 0x20 0000150c: PUSH2 0xffff 0000150f: PUSH1 0x65 00001511: SLOAD 00001512: PUSH1 0xa0 00001514: SHR 00001515: AND 00001516: PUSH1 0x40 00001518: MLOAD 00001519: SWAP1 0000151a: DUP2 0000151b: MSTORE 0000151c: RETURN 0000151d: JUMPDEST 0000151e: CALLVALUE 0000151f: PUSH2 0x0317 00001522: JUMPI 00001523: PUSH1 0x03 00001525: NOT 00001526: PUSH1 0x40 00001528: CALLDATASIZE 00001529: DUP3 0000152a: ADD 0000152b: SLT 0000152c: PUSH2 0x0317 0000152f: JUMPI 00001530: PUSH1 0x04 00001532: SWAP1 00001533: DUP2 00001534: CALLDATALOAD 00001535: PUSH1 0x01 00001537: PUSH1 0x01 00001539: PUSH1 0x40 0000153b: SHL 0000153c: SUB 0000153d: DUP1 0000153e: DUP3 0000153f: GT 00001540: PUSH2 0x0317 00001543: JUMPI 00001544: PUSH1 0xa0 00001546: DUP3 00001547: DUP6 00001548: ADD 00001549: SWAP4 0000154a: DUP4 0000154b: CALLDATASIZE 0000154c: SUB 0000154d: ADD 0000154e: SLT 0000154f: PUSH2 0x0317 00001552: JUMPI 00001553: PUSH1 0x24 00001555: CALLDATALOAD 00001556: SWAP1 00001557: DUP2 00001558: GT 00001559: PUSH2 0x0317 0000155c: JUMPI 0000155d: PUSH2 0x1569 00001560: SWAP1 00001561: CALLDATASIZE 00001562: SWAP1 00001563: DUP6 00001564: ADD 00001565: PUSH2 0x0c4c 00001568: JUMP 00001569: JUMPDEST 0000156a: PUSH1 0x01 0000156c: PUSH1 0x01 0000156e: PUSH1 0xa0 00001570: SHL 00001571: SUB 00001572: PUSH32 0x0000000000000000000000006b5815467da09daa7dc83db21c9239d98bb487b5 00001593: DUP2 00001594: AND 00001595: DUP1 00001596: EXTCODESIZE 00001597: ISZERO 00001598: PUSH2 0x0317 0000159b: JUMPI 0000159c: PUSH1 0x40 0000159e: MLOAD 0000159f: PUSH4 0x837d4441 000015a4: PUSH1 0xe0 000015a6: SHL 000015a7: DUP2 000015a8: MSTORE 000015a9: SWAP1 000015aa: PUSH0 000015ab: SWAP1 000015ac: DUP3 000015ad: SWAP1 000015ae: DUP2 000015af: DUP4 000015b0: DUP2 000015b1: PUSH2 0x15bc 000015b4: DUP13 000015b5: DUP3 000015b6: DUP16 000015b7: ADD 000015b8: PUSH2 0x267e 000015bb: JUMP 000015bc: JUMPDEST 000015bd: SUB 000015be: SWAP3 000015bf: GAS 000015c0: CALL 000015c1: DUP1 000015c2: ISZERO 000015c3: PUSH2 0x0561 000015c6: JUMPI 000015c7: PUSH2 0x16da 000015ca: JUMPI 000015cb: JUMPDEST 000015cc: POP 000015cd: PUSH2 0x15d4 000015d0: PUSH2 0x3ac3 000015d3: JUMP 000015d4: JUMPDEST 000015d5: PUSH2 0x15dc 000015d8: PUSH2 0x2972 000015db: JUMP 000015dc: JUMPDEST 000015dd: SWAP1 000015de: DUP2 000015df: AND 000015e0: CALLER 000015e1: EQ 000015e2: ISZERO 000015e3: SWAP2 000015e4: DUP3 000015e5: PUSH2 0x16ab 000015e8: JUMPI 000015e9: JUMPDEST 000015ea: POP 000015eb: POP 000015ec: SWAP1 000015ed: POP 000015ee: PUSH2 0x169a 000015f1: JUMPI 000015f2: PUSH1 0x44 000015f4: ADD 000015f5: SWAP2 000015f6: PUSH1 0xb0 000015f8: PUSH2 0x1601 000015fb: DUP5 000015fc: DUP5 000015fd: PUSH2 0x26fc 00001600: JUMP 00001601: JUMPDEST 00001602: SWAP1 00001603: POP 00001604: DIV 00001605: DUP1 00001606: ISZERO 00001607: DUP1 00001608: ISZERO 00001609: PUSH2 0x1682 0000160c: JUMPI 0000160d: JUMPDEST 0000160e: PUSH2 0x1672 00001611: JUMPI 00001612: PUSH2 0x1622 00001615: PUSH2 0x161c 00001618: PUSH2 0x2248 0000161b: JUMP 0000161c: JUMPDEST 0000161d: SWAP2 0000161e: PUSH2 0x2751 00001621: JUMP 00001622: JUMPDEST 00001623: GT 00001624: PUSH2 0x1663 00001627: JUMPI 00001628: POP 00001629: PUSH1 0xb0 0000162b: PUSH2 0x1634 0000162e: DUP4 0000162f: DUP4 00001630: PUSH2 0x26fc 00001633: JUMP 00001634: JUMPDEST 00001635: SWAP1 00001636: POP 00001637: EQ 00001638: PUSH0 00001639: EQ 0000163a: PUSH2 0x1650 0000163d: JUMPI 0000163e: PUSH2 0x0020 00001641: SWAP2 00001642: PUSH2 0x164a 00001645: SWAP2 00001646: PUSH2 0x26fc 00001649: JUMP 0000164a: JUMPDEST 0000164b: SWAP1 0000164c: PUSH2 0x3ee1 0000164f: JUMP 00001650: JUMPDEST 00001651: PUSH2 0x0020 00001654: SWAP2 00001655: PUSH2 0x165d 00001658: SWAP2 00001659: PUSH2 0x26fc 0000165c: JUMP 0000165d: JUMPDEST 0000165e: SWAP1 0000165f: PUSH2 0x3db9 00001662: JUMP 00001663: JUMPDEST 00001664: PUSH1 0x40 00001666: MLOAD 00001667: PUSH4 0x96d80433 0000166c: PUSH1 0xe0 0000166e: SHL 0000166f: DUP2 00001670: MSTORE 00001671: REVERT 00001672: JUMPDEST 00001673: POP 00001674: PUSH1 0x40 00001676: MLOAD 00001677: PUSH4 0x1c6c4cf3 0000167c: PUSH1 0xe3 0000167e: SHL 0000167f: DUP2 00001680: MSTORE 00001681: REVERT 00001682: JUMPDEST 00001683: POP 00001684: PUSH2 0x168d 00001687: DUP5 00001688: DUP5 00001689: PUSH2 0x26fc 0000168c: JUMP 0000168d: JUMPDEST 0000168e: SWAP1 0000168f: POP 00001690: PUSH1 0xb0 00001692: DUP3 00001693: MUL 00001694: EQ 00001695: ISZERO 00001696: PUSH2 0x160d 00001699: JUMP 0000169a: JUMPDEST 0000169b: PUSH1 0x40 0000169d: MLOAD 0000169e: PUSH4 0x4ca88867 000016a3: PUSH1 0xe0 000016a5: SHL 000016a6: DUP2 000016a7: MSTORE 000016a8: DUP4 000016a9: SWAP1 000016aa: REVERT 000016ab: JUMPDEST 000016ac: PUSH2 0x16ce 000016af: SWAP3 000016b0: POP 000016b1: PUSH2 0x16c8 000016b4: PUSH2 0x16d2 000016b7: SWAP5 000016b8: PUSH2 0x16c0 000016bb: DUP9 000016bc: PUSH2 0x3b4e 000016bf: JUMP 000016c0: JUMPDEST 000016c1: SWAP3 000016c2: CALLDATASIZE 000016c3: SWAP2 000016c4: PUSH2 0x0fe0 000016c7: JUMP 000016c8: JUMPDEST 000016c9: SWAP2 000016ca: PUSH2 0x3c28 000016cd: JUMP 000016ce: JUMPDEST 000016cf: ISZERO 000016d0: SWAP1 000016d1: JUMP 000016d2: JUMPDEST 000016d3: DUP1 000016d4: PUSH0 000016d5: DUP1 000016d6: PUSH2 0x15e9 000016d9: JUMP 000016da: JUMPDEST 000016db: DUP1 000016dc: PUSH2 0x0b74 000016df: PUSH2 0x16e7 000016e2: SWAP3 000016e3: PUSH2 0x0f4c 000016e6: JUMP 000016e7: JUMPDEST 000016e8: PUSH0 000016e9: PUSH2 0x15cb 000016ec: JUMP 000016ed: JUMPDEST 000016ee: CALLVALUE 000016ef: PUSH2 0x0317 000016f2: JUMPI 000016f3: PUSH1 0x60 000016f5: CALLDATASIZE 000016f6: PUSH1 0x03 000016f8: NOT 000016f9: ADD 000016fa: SLT 000016fb: PUSH2 0x0317 000016fe: JUMPI 000016ff: PUSH1 0x04 00001701: CALLDATALOAD 00001702: PUSH1 0x24 00001704: CALLDATALOAD 00001705: PUSH2 0x1712 00001708: PUSH1 0x44 0000170a: CALLDATALOAD 0000170b: DUP3 0000170c: DUP5 0000170d: CALLER 0000170e: PUSH2 0x2562 00001711: JUMP 00001712: JUMPDEST 00001713: SWAP2 00001714: SWAP3 00001715: PUSH2 0x173e 00001718: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180 00001739: DUP3 0000173a: PUSH2 0x2474 0000173d: JUMP 0000173e: JUMPDEST 0000173f: TIMESTAMP 00001740: LT 00001741: DUP1 00001742: ISZERO 00001743: PUSH2 0x194c 00001746: JUMPI 00001747: JUMPDEST 00001748: DUP1 00001749: ISZERO 0000174a: PUSH2 0x1944 0000174d: JUMPI 0000174e: JUMPDEST 0000174f: PUSH2 0x1932 00001752: JUMPI 00001753: PUSH32 0xeb3b05c070c24f667611fdb3ff75fe007d42401c573aed8d8faca95fd00ccb56 00001774: SWAP4 00001775: PUSH2 0x179e 00001778: DUP7 00001779: PUSH2 0x1799 0000177c: PUSH2 0x178d 0000177f: PUSH1 0x99 00001781: SLOAD 00001782: PUSH1 0x01 00001784: PUSH1 0x01 00001786: PUSH1 0x80 00001788: SHL 00001789: SUB 0000178a: AND 0000178b: SWAP1 0000178c: JUMP 0000178d: JUMPDEST 0000178e: PUSH1 0x01 00001790: PUSH1 0x01 00001792: PUSH1 0x80 00001794: SHL 00001795: SUB 00001796: AND 00001797: SWAP1 00001798: JUMP 00001799: JUMPDEST 0000179a: PUSH2 0x3815 0000179d: JUMP 0000179e: JUMPDEST 0000179f: ISZERO 000017a0: PUSH2 0x18a0 000017a3: JUMPI 000017a4: PUSH2 0x17d8 000017a7: PUSH2 0x17bd 000017aa: PUSH2 0x17b2 000017ad: DUP7 000017ae: PUSH2 0x3ff4 000017b1: JUMP 000017b2: JUMPDEST 000017b3: PUSH1 0x99 000017b5: SLOAD 000017b6: PUSH1 0x80 000017b8: SHR 000017b9: PUSH2 0x1ef1 000017bc: JUMP 000017bd: JUMPDEST 000017be: PUSH1 0x01 000017c0: PUSH1 0x01 000017c2: PUSH1 0x80 000017c4: SHL 000017c5: SUB 000017c6: PUSH1 0x99 000017c8: SLOAD 000017c9: SWAP2 000017ca: DUP2 000017cb: NOT 000017cc: SWAP1 000017cd: PUSH1 0x80 000017cf: SHL 000017d0: AND 000017d1: SWAP2 000017d2: AND 000017d3: OR 000017d4: PUSH1 0x99 000017d6: SSTORE 000017d7: JUMP 000017d8: JUMPDEST 000017d9: PUSH1 0x40 000017db: DUP1 000017dc: MLOAD 000017dd: CALLER 000017de: PUSH1 0x20 000017e0: DUP3 000017e1: ADD 000017e2: SWAP1 000017e3: DUP2 000017e4: MSTORE 000017e5: SWAP2 000017e6: DUP2 000017e7: ADD 000017e8: DUP5 000017e9: SWAP1 000017ea: MSTORE 000017eb: PUSH1 0x60 000017ed: DUP1 000017ee: DUP3 000017ef: ADD 000017f0: DUP10 000017f1: SWAP1 000017f2: MSTORE 000017f3: DUP2 000017f4: MSTORE 000017f5: PUSH1 0x1f 000017f7: NOT 000017f8: SWAP4 000017f9: SWAP2 000017fa: PUSH0 000017fb: SWAP2 000017fc: PUSH2 0x181c 000017ff: SWAP2 00001800: SWAP1 00001801: PUSH2 0x180b 00001804: PUSH1 0x80 00001806: DUP3 00001807: PUSH2 0x0f95 0000180a: JUMP 0000180b: JUMPDEST 0000180c: MLOAD 0000180d: SWAP1 0000180e: KECCAK256 0000180f: PUSH0 00001810: MSTORE 00001811: PUSH1 0x9b 00001813: PUSH1 0x20 00001815: MSTORE 00001816: PUSH1 0x40 00001818: PUSH0 00001819: KECCAK256 0000181a: SWAP1 0000181b: JUMP 0000181c: JUMPDEST 0000181d: SSTORE 0000181e: PUSH0 0000181f: SWAP4 00001820: PUSH1 0x01 00001822: DUP4 00001823: GT 00001824: PUSH2 0x1855 00001827: JUMPI 00001828: JUMPDEST 00001829: POP 0000182a: POP 0000182b: POP 0000182c: POP 0000182d: PUSH2 0x1836 00001830: DUP3 00001831: CALLER 00001832: PUSH2 0x4027 00001835: JUMP 00001836: JUMPDEST 00001837: PUSH1 0x40 00001839: DUP1 0000183a: MLOAD 0000183b: SWAP5 0000183c: DUP6 0000183d: MSTORE 0000183e: PUSH1 0x20 00001840: DUP6 00001841: ADD 00001842: SWAP2 00001843: SWAP1 00001844: SWAP2 00001845: MSTORE 00001846: DUP4 00001847: ADD 00001848: MSTORE 00001849: CALLER 0000184a: SWAP2 0000184b: DUP1 0000184c: PUSH1 0x60 0000184e: DUP2 0000184f: ADD 00001850: JUMPDEST 00001851: SUB 00001852: SWAP1 00001853: LOG2 00001854: STOP 00001855: JUMPDEST 00001856: PUSH2 0x1896 00001859: SWAP3 0000185a: SWAP4 0000185b: SWAP5 0000185c: POP 0000185d: PUSH2 0x1866 00001860: SWAP1 00001861: DUP9 00001862: PUSH2 0x2474 00001865: JUMP 00001866: JUMPDEST 00001867: PUSH1 0x40 00001869: DUP1 0000186a: MLOAD 0000186b: CALLER 0000186c: PUSH1 0x20 0000186e: DUP3 0000186f: ADD 00001870: SWAP1 00001871: DUP2 00001872: MSTORE 00001873: SWAP2 00001874: DUP2 00001875: ADD 00001876: SWAP4 00001877: SWAP1 00001878: SWAP4 00001879: MSTORE 0000187a: PUSH1 0x60 0000187c: DUP4 0000187d: ADD 0000187e: DUP3 0000187f: SWAP1 00001880: MSTORE 00001881: PUSH1 0x80 00001883: SWAP6 00001884: DUP7 00001885: ADD 00001886: DUP4 00001887: MSTORE 00001888: SWAP1 00001889: SWAP5 0000188a: SWAP1 0000188b: SWAP2 0000188c: SWAP1 0000188d: PUSH2 0x180b 00001890: SWAP1 00001891: DUP3 00001892: PUSH2 0x0f95 00001895: JUMP 00001896: JUMPDEST 00001897: SSTORE 00001898: PUSH0 00001899: DUP1 0000189a: DUP1 0000189b: DUP1 0000189c: PUSH2 0x1828 0000189f: JUMP 000018a0: JUMPDEST 000018a1: PUSH2 0x18a8 000018a4: PUSH2 0x3ac3 000018a7: JUMP 000018a8: JUMPDEST 000018a9: PUSH2 0x18e4 000018ac: PUSH2 0x18c8 000018af: PUSH2 0x18b7 000018b2: DUP7 000018b3: PUSH2 0x3ff4 000018b6: JUMP 000018b7: JUMPDEST 000018b8: PUSH1 0x9e 000018ba: SLOAD 000018bb: PUSH1 0x01 000018bd: PUSH1 0x01 000018bf: PUSH1 0x80 000018c1: SHL 000018c2: SUB 000018c3: AND 000018c4: PUSH2 0x1ef1 000018c7: JUMP 000018c8: JUMPDEST 000018c9: PUSH1 0x01 000018cb: PUSH1 0x01 000018cd: PUSH1 0x80 000018cf: SHL 000018d0: SUB 000018d1: AND 000018d2: PUSH1 0x01 000018d4: PUSH1 0x01 000018d6: PUSH1 0x80 000018d8: SHL 000018d9: SUB 000018da: NOT 000018db: PUSH1 0x9e 000018dd: SLOAD 000018de: AND 000018df: OR 000018e0: PUSH1 0x9e 000018e2: SSTORE 000018e3: JUMP 000018e4: JUMPDEST 000018e5: PUSH2 0x1919 000018e8: PUSH2 0x18fe 000018eb: PUSH2 0x18f3 000018ee: DUP6 000018ef: PUSH2 0x3ff4 000018f2: JUMP 000018f3: JUMPDEST 000018f4: PUSH1 0x9e 000018f6: SLOAD 000018f7: PUSH1 0x80 000018f9: SHR 000018fa: PUSH2 0x1ef1 000018fd: JUMP 000018fe: JUMPDEST 000018ff: PUSH1 0x01 00001901: PUSH1 0x01 00001903: PUSH1 0x80 00001905: SHL 00001906: SUB 00001907: PUSH1 0x9e 00001909: SLOAD 0000190a: SWAP2 0000190b: DUP2 0000190c: NOT 0000190d: SWAP1 0000190e: PUSH1 0x80 00001910: SHL 00001911: AND 00001912: SWAP2 00001913: AND 00001914: OR 00001915: PUSH1 0x9e 00001917: SSTORE 00001918: JUMP 00001919: JUMPDEST 0000191a: PUSH2 0x192d 0000191d: PUSH2 0x1928 00001920: DUP5 00001921: PUSH1 0x9f 00001923: SLOAD 00001924: PUSH2 0x2474 00001927: JUMP 00001928: JUMPDEST 00001929: PUSH1 0x9f 0000192b: SSTORE 0000192c: JUMP 0000192d: JUMPDEST 0000192e: PUSH2 0x17d8 00001931: JUMP 00001932: JUMPDEST 00001933: PUSH1 0x40 00001935: MLOAD 00001936: PUSH4 0x0e3d8e8d 0000193b: PUSH1 0xe1 0000193d: SHL 0000193e: DUP2 0000193f: MSTORE 00001940: PUSH1 0x04 00001942: SWAP1 00001943: REVERT 00001944: JUMPDEST 00001945: POP 00001946: DUP3 00001947: ISZERO 00001948: PUSH2 0x174e 0000194b: JUMP 0000194c: JUMPDEST 0000194d: POP 0000194e: DUP2 0000194f: ISZERO 00001950: PUSH2 0x1747 00001953: JUMP 00001954: JUMPDEST 00001955: CALLVALUE 00001956: PUSH2 0x0317 00001959: JUMPI 0000195a: PUSH1 0x40 0000195c: DUP1 0000195d: PUSH1 0x03 0000195f: NOT 00001960: CALLDATASIZE 00001961: ADD 00001962: SLT 00001963: PUSH2 0x0317 00001966: JUMPI 00001967: PUSH1 0x24 00001969: CALLDATALOAD 0000196a: SWAP1 0000196b: PUSH1 0x04 0000196d: CALLDATALOAD 0000196e: PUSH2 0x1976 00001971: DUP4 00001972: PUSH2 0x0306 00001975: JUMP 00001976: JUMPDEST 00001977: PUSH2 0x197e 0000197a: PUSH2 0x3ac3 0000197d: JUMP 0000197e: JUMPDEST 0000197f: DUP1 00001980: ISZERO 00001981: PUSH2 0x1b2c 00001984: JUMPI 00001985: PUSH1 0x01 00001987: PUSH1 0x01 00001989: PUSH1 0xa0 0000198b: SHL 0000198c: SUB 0000198d: DUP4 0000198e: AND 0000198f: SWAP1 00001990: DUP2 00001991: ISZERO 00001992: PUSH2 0x1b1b 00001995: JUMPI 00001996: PUSH2 0x199e 00001999: DUP2 0000199a: PUSH2 0x1f41 0000199d: JUMP 0000199e: JUMPDEST 0000199f: SWAP1 000019a0: DUP2 000019a1: ISZERO 000019a2: PUSH2 0x1b0a 000019a5: JUMPI 000019a6: PUSH2 0x19ae 000019a9: DUP3 000019aa: PUSH2 0x4807 000019ad: JUMP 000019ae: JUMPDEST 000019af: PUSH2 0x19b7 000019b2: DUP4 000019b3: PUSH2 0x3ff4 000019b6: JUMP 000019b7: JUMPDEST 000019b8: PUSH1 0x98 000019ba: SLOAD 000019bb: PUSH1 0x80 000019bd: SHR 000019be: SWAP1 000019bf: PUSH2 0x19c7 000019c2: SWAP2 000019c3: PUSH2 0x1ef1 000019c6: JUMP 000019c7: JUMPDEST 000019c8: PUSH2 0x19e6 000019cb: SWAP1 000019cc: PUSH1 0x01 000019ce: PUSH1 0x01 000019d0: PUSH1 0x80 000019d2: SHL 000019d3: SUB 000019d4: PUSH1 0x98 000019d6: SLOAD 000019d7: SWAP2 000019d8: DUP2 000019d9: NOT 000019da: SWAP1 000019db: PUSH1 0x80 000019dd: SHL 000019de: AND 000019df: SWAP2 000019e0: AND 000019e1: OR 000019e2: PUSH1 0x98 000019e4: SSTORE 000019e5: JUMP 000019e6: JUMPDEST 000019e7: PUSH2 0x19f0 000019ea: DUP3 000019eb: CALLER 000019ec: PUSH2 0x458a 000019ef: JUMP 000019f0: JUMPDEST 000019f1: PUSH1 0x9e 000019f3: SLOAD 000019f4: SWAP6 000019f5: DUP7 000019f6: PUSH1 0x80 000019f8: SHR 000019f9: DUP3 000019fa: DUP2 000019fb: PUSH1 0x9f 000019fd: SLOAD 000019fe: SWAP1 000019ff: PUSH2 0x1a07 00001a02: SWAP2 00001a03: PUSH2 0x2474 00001a06: JUMP 00001a07: JUMPDEST 00001a08: SWAP9 00001a09: PUSH2 0x1a11 00001a0c: DUP8 00001a0d: PUSH2 0x3ff4 00001a10: JUMP 00001a11: JUMPDEST 00001a12: PUSH2 0x1a23 00001a15: SWAP2 00001a16: PUSH1 0x01 00001a18: PUSH1 0x01 00001a1a: PUSH1 0x80 00001a1c: SHL 00001a1d: SUB 00001a1e: AND 00001a1f: PUSH2 0x3131 00001a22: JUMP 00001a23: JUMPDEST 00001a24: PUSH2 0x1a43 00001a27: SWAP1 00001a28: PUSH1 0x01 00001a2a: PUSH1 0x01 00001a2c: PUSH1 0x80 00001a2e: SHL 00001a2f: SUB 00001a30: AND 00001a31: PUSH1 0x01 00001a33: PUSH1 0x01 00001a35: PUSH1 0x80 00001a37: SHL 00001a38: SUB 00001a39: NOT 00001a3a: PUSH1 0x9e 00001a3c: SLOAD 00001a3d: AND 00001a3e: OR 00001a3f: PUSH1 0x9e 00001a41: SSTORE 00001a42: JUMP 00001a43: JUMPDEST 00001a44: PUSH2 0x1a4c 00001a47: SWAP2 00001a48: PUSH2 0x2474 00001a4b: JUMP 00001a4c: JUMPDEST 00001a4d: PUSH2 0x1a55 00001a50: SWAP1 00001a51: PUSH2 0x3ff4 00001a54: JUMP 00001a55: JUMPDEST 00001a56: PUSH2 0x1a74 00001a59: SWAP1 00001a5a: PUSH1 0x01 00001a5c: PUSH1 0x01 00001a5e: PUSH1 0x80 00001a60: SHL 00001a61: SUB 00001a62: PUSH1 0x9e 00001a64: SLOAD 00001a65: SWAP2 00001a66: DUP2 00001a67: NOT 00001a68: SWAP1 00001a69: PUSH1 0x80 00001a6b: SHL 00001a6c: AND 00001a6d: SWAP2 00001a6e: AND 00001a6f: OR 00001a70: PUSH1 0x9e 00001a72: SSTORE 00001a73: JUMP 00001a74: JUMPDEST 00001a75: DUP6 00001a76: MLOAD 00001a77: PUSH1 0x01 00001a79: PUSH1 0x01 00001a7b: PUSH1 0xa0 00001a7d: SHL 00001a7e: SUB 00001a7f: SWAP2 00001a80: SWAP1 00001a81: SWAP2 00001a82: AND 00001a83: PUSH1 0x20 00001a85: DUP3 00001a86: ADD 00001a87: SWAP1 00001a88: DUP2 00001a89: MSTORE 00001a8a: TIMESTAMP 00001a8b: PUSH1 0x40 00001a8d: DUP4 00001a8e: ADD 00001a8f: MSTORE 00001a90: PUSH1 0x60 00001a92: DUP1 00001a93: DUP4 00001a94: ADD 00001a95: DUP10 00001a96: SWAP1 00001a97: MSTORE 00001a98: DUP3 00001a99: MSTORE 00001a9a: SWAP1 00001a9b: PUSH2 0x1aa5 00001a9e: PUSH1 0x80 00001aa0: DUP3 00001aa1: PUSH2 0x0f95 00001aa4: JUMP 00001aa5: JUMPDEST 00001aa6: MLOAD 00001aa7: SWAP1 00001aa8: KECCAK256 00001aa9: PUSH2 0x1aba 00001aac: SWAP1 00001aad: PUSH0 00001aae: MSTORE 00001aaf: PUSH1 0x9b 00001ab1: PUSH1 0x20 00001ab3: MSTORE 00001ab4: PUSH1 0x40 00001ab6: PUSH0 00001ab7: KECCAK256 00001ab8: SWAP1 00001ab9: JUMP 00001aba: JUMPDEST 00001abb: SSTORE 00001abc: DUP4 00001abd: MLOAD 00001abe: DUP6 00001abf: DUP2 00001ac0: MSTORE 00001ac1: PUSH1 0x20 00001ac3: DUP2 00001ac4: ADD 00001ac5: SWAP2 00001ac6: SWAP1 00001ac7: SWAP2 00001ac8: MSTORE 00001ac9: PUSH1 0x40 00001acb: DUP2 00001acc: ADD 00001acd: SWAP2 00001ace: SWAP1 00001acf: SWAP2 00001ad0: MSTORE 00001ad1: CALLER 00001ad2: SWAP1 00001ad3: PUSH32 0x869f12645d154414259c47bcb998b6b6983fae50e5e0c6053bc87d4330db9f2d 00001af4: SWAP1 00001af5: PUSH1 0x60 00001af7: SWAP1 00001af8: LOG3 00001af9: PUSH2 0x1b01 00001afc: CALLER 00001afd: PUSH2 0x496e 00001b00: JUMP 00001b01: JUMPDEST 00001b02: MLOAD 00001b03: SWAP1 00001b04: DUP2 00001b05: MSTORE 00001b06: PUSH1 0x20 00001b08: SWAP1 00001b09: RETURN 00001b0a: JUMPDEST 00001b0b: DUP4 00001b0c: MLOAD 00001b0d: PUSH4 0x18374fd1 00001b12: PUSH1 0xe2 00001b14: SHL 00001b15: DUP2 00001b16: MSTORE 00001b17: PUSH1 0x04 00001b19: SWAP1 00001b1a: REVERT 00001b1b: JUMPDEST 00001b1c: DUP3 00001b1d: MLOAD 00001b1e: PUSH4 0xd92e233d 00001b23: PUSH1 0xe0 00001b25: SHL 00001b26: DUP2 00001b27: MSTORE 00001b28: PUSH1 0x04 00001b2a: SWAP1 00001b2b: REVERT 00001b2c: JUMPDEST 00001b2d: DUP2 00001b2e: MLOAD 00001b2f: PUSH4 0x6edcc523 00001b34: PUSH1 0xe0 00001b36: SHL 00001b37: DUP2 00001b38: MSTORE 00001b39: PUSH1 0x04 00001b3b: SWAP1 00001b3c: REVERT 00001b3d: JUMPDEST 00001b3e: CALLVALUE 00001b3f: PUSH2 0x0317 00001b42: JUMPI 00001b43: PUSH2 0x1850 00001b46: PUSH32 0x2013570c343af8ab14a9778150e381a0fda34ed6368127a95fd5e7210cbec5bf 00001b67: PUSH2 0x1b6f 00001b6a: CALLDATASIZE 00001b6b: PUSH2 0x0c79 00001b6e: JUMP 00001b6f: JUMPDEST 00001b70: SWAP3 00001b71: SWAP1 00001b72: PUSH2 0x1b79 00001b75: PUSH2 0x3895 00001b78: JUMP 00001b79: JUMPDEST 00001b7a: PUSH1 0x40 00001b7c: MLOAD 00001b7d: SWAP2 00001b7e: DUP3 00001b7f: SWAP2 00001b80: PUSH1 0x20 00001b82: DUP4 00001b83: MSTORE 00001b84: CALLER 00001b85: SWAP6 00001b86: PUSH1 0x20 00001b88: DUP5 00001b89: ADD 00001b8a: SWAP2 00001b8b: PUSH2 0x265e 00001b8e: JUMP 00001b8f: JUMPDEST 00001b90: PUSH0 00001b91: JUMPDEST 00001b92: DUP4 00001b93: DUP2 00001b94: LT 00001b95: PUSH2 0x1ba0 00001b98: JUMPI 00001b99: POP 00001b9a: POP 00001b9b: PUSH0 00001b9c: SWAP2 00001b9d: ADD 00001b9e: MSTORE 00001b9f: JUMP 00001ba0: JUMPDEST 00001ba1: DUP2 00001ba2: DUP2 00001ba3: ADD 00001ba4: MLOAD 00001ba5: DUP4 00001ba6: DUP3 00001ba7: ADD 00001ba8: MSTORE 00001ba9: PUSH1 0x20 00001bab: ADD 00001bac: PUSH2 0x1b91 00001baf: JUMP 00001bb0: JUMPDEST 00001bb1: SWAP1 00001bb2: PUSH1 0x20 00001bb4: SWAP2 00001bb5: PUSH2 0x1bc9 00001bb8: DUP2 00001bb9: MLOAD 00001bba: DUP1 00001bbb: SWAP3 00001bbc: DUP2 00001bbd: DUP6 00001bbe: MSTORE 00001bbf: DUP6 00001bc0: DUP1 00001bc1: DUP7 00001bc2: ADD 00001bc3: SWAP2 00001bc4: ADD 00001bc5: PUSH2 0x1b8f 00001bc8: JUMP 00001bc9: JUMPDEST 00001bca: PUSH1 0x1f 00001bcc: ADD 00001bcd: PUSH1 0x1f 00001bcf: NOT 00001bd0: AND 00001bd1: ADD 00001bd2: ADD 00001bd3: SWAP1 00001bd4: JUMP 00001bd5: JUMPDEST 00001bd6: PUSH1 0x20 00001bd8: DUP1 00001bd9: DUP3 00001bda: ADD 00001bdb: SWAP1 00001bdc: PUSH1 0x20 00001bde: DUP4 00001bdf: MSTORE 00001be0: DUP4 00001be1: MLOAD 00001be2: DUP1 00001be3: SWAP3 00001be4: MSTORE 00001be5: PUSH1 0x40 00001be7: DUP4 00001be8: ADD 00001be9: SWAP3 00001bea: PUSH1 0x20 00001bec: PUSH1 0x40 00001bee: DUP5 00001bef: PUSH1 0x05 00001bf1: SHL 00001bf2: DUP4 00001bf3: ADD 00001bf4: ADD 00001bf5: SWAP6 00001bf6: ADD 00001bf7: SWAP4 00001bf8: PUSH0 00001bf9: SWAP2 00001bfa: JUMPDEST 00001bfb: DUP5 00001bfc: DUP4 00001bfd: LT 00001bfe: PUSH2 0x1c0a 00001c01: JUMPI 00001c02: POP 00001c03: POP 00001c04: POP 00001c05: POP 00001c06: POP 00001c07: POP 00001c08: SWAP1 00001c09: JUMP 00001c0a: JUMPDEST 00001c0b: SWAP1 00001c0c: SWAP2 00001c0d: SWAP3 00001c0e: SWAP4 00001c0f: SWAP5 00001c10: SWAP6 00001c11: DUP5 00001c12: DUP1 00001c13: PUSH2 0x1c28 00001c16: PUSH1 0x01 00001c18: SWAP4 00001c19: PUSH1 0x3f 00001c1b: NOT 00001c1c: DUP7 00001c1d: DUP3 00001c1e: SUB 00001c1f: ADD 00001c20: DUP8 00001c21: MSTORE 00001c22: DUP11 00001c23: MLOAD 00001c24: PUSH2 0x1bb0 00001c27: JUMP 00001c28: JUMPDEST 00001c29: SWAP9 00001c2a: ADD 00001c2b: SWAP4 00001c2c: ADD 00001c2d: SWAP4 00001c2e: ADD 00001c2f: SWAP2 00001c30: SWAP5 00001c31: SWAP4 00001c32: SWAP3 00001c33: SWAP1 00001c34: PUSH2 0x1bfa 00001c37: JUMP 00001c38: JUMPDEST 00001c39: CALLVALUE 00001c3a: PUSH2 0x0317 00001c3d: JUMPI 00001c3e: PUSH1 0x20 00001c40: CALLDATASIZE 00001c41: PUSH1 0x03 00001c43: NOT 00001c44: ADD 00001c45: SLT 00001c46: PUSH2 0x0317 00001c49: JUMPI 00001c4a: PUSH1 0x01 00001c4c: PUSH1 0x01 00001c4e: PUSH1 0x40 00001c50: SHL 00001c51: SUB 00001c52: PUSH1 0x04 00001c54: CALLDATALOAD 00001c55: DUP2 00001c56: DUP2 00001c57: GT 00001c58: PUSH2 0x0317 00001c5b: JUMPI 00001c5c: CALLDATASIZE 00001c5d: PUSH1 0x23 00001c5f: DUP3 00001c60: ADD 00001c61: SLT 00001c62: ISZERO 00001c63: PUSH2 0x0317 00001c66: JUMPI 00001c67: DUP1 00001c68: PUSH1 0x04 00001c6a: ADD 00001c6b: CALLDATALOAD 00001c6c: SWAP2 00001c6d: DUP3 00001c6e: GT 00001c6f: PUSH2 0x0317 00001c72: JUMPI 00001c73: CALLDATASIZE 00001c74: PUSH1 0x24 00001c76: DUP4 00001c77: PUSH1 0x05 00001c79: SHL 00001c7a: DUP4 00001c7b: ADD 00001c7c: ADD 00001c7d: GT 00001c7e: PUSH2 0x0317 00001c81: JUMPI 00001c82: PUSH2 0x051c 00001c85: SWAP2 00001c86: PUSH1 0x24 00001c88: PUSH2 0x1c91 00001c8b: SWAP3 00001c8c: ADD 00001c8d: PUSH2 0x28c5 00001c90: JUMP 00001c91: JUMPDEST 00001c92: PUSH1 0x40 00001c94: MLOAD 00001c95: SWAP2 00001c96: DUP3 00001c97: SWAP2 00001c98: DUP3 00001c99: PUSH2 0x1bd5 00001c9c: JUMP 00001c9d: JUMPDEST 00001c9e: SWAP1 00001c9f: PUSH1 0x20 00001ca1: PUSH2 0x0682 00001ca4: SWAP3 00001ca5: DUP2 00001ca6: DUP2 00001ca7: MSTORE 00001ca8: ADD 00001ca9: SWAP1 00001caa: PUSH2 0x1bb0 00001cad: JUMP 00001cae: JUMPDEST 00001caf: CALLVALUE 00001cb0: PUSH2 0x0317 00001cb3: JUMPI 00001cb4: PUSH0 00001cb5: CALLDATASIZE 00001cb6: PUSH1 0x03 00001cb8: NOT 00001cb9: ADD 00001cba: SLT 00001cbb: PUSH2 0x0317 00001cbe: JUMPI 00001cbf: PUSH2 0x051c 00001cc2: PUSH1 0x40 00001cc4: MLOAD 00001cc5: PUSH2 0x1ccd 00001cc8: DUP2 00001cc9: PUSH2 0x0f2c 00001ccc: JUMP 00001ccd: JUMPDEST 00001cce: PUSH1 0x05 00001cd0: DUP2 00001cd1: MSTORE 00001cd2: PUSH5 0x0352e302e3 00001cd8: PUSH1 0xdc 00001cda: SHL 00001cdb: PUSH1 0x20 00001cdd: DUP3 00001cde: ADD 00001cdf: MSTORE 00001ce0: PUSH1 0x40 00001ce2: MLOAD 00001ce3: SWAP2 00001ce4: DUP3 00001ce5: SWAP2 00001ce6: PUSH1 0x20 00001ce8: DUP4 00001ce9: MSTORE 00001cea: PUSH1 0x20 00001cec: DUP4 00001ced: ADD 00001cee: SWAP1 00001cef: PUSH2 0x1bb0 00001cf2: JUMP 00001cf3: JUMPDEST 00001cf4: CALLVALUE 00001cf5: PUSH2 0x0317 00001cf8: JUMPI 00001cf9: PUSH0 00001cfa: CALLDATASIZE 00001cfb: PUSH1 0x03 00001cfd: NOT 00001cfe: ADD 00001cff: SLT 00001d00: PUSH2 0x0317 00001d03: JUMPI 00001d04: PUSH1 0x20 00001d06: PUSH2 0x0bc6 00001d09: PUSH2 0x2972 00001d0c: JUMP 00001d0d: JUMPDEST 00001d0e: CALLVALUE 00001d0f: PUSH2 0x0317 00001d12: JUMPI 00001d13: PUSH1 0x20 00001d15: CALLDATASIZE 00001d16: PUSH1 0x03 00001d18: NOT 00001d19: ADD 00001d1a: SLT 00001d1b: PUSH2 0x0317 00001d1e: JUMPI 00001d1f: PUSH1 0x20 00001d21: PUSH2 0x0384 00001d24: PUSH1 0x04 00001d26: CALLDATALOAD 00001d27: PUSH2 0x40c1 00001d2a: JUMP 00001d2b: JUMPDEST 00001d2c: CALLVALUE 00001d2d: PUSH2 0x0317 00001d30: JUMPI 00001d31: PUSH0 00001d32: CALLDATASIZE 00001d33: PUSH1 0x03 00001d35: NOT 00001d36: ADD 00001d37: SLT 00001d38: PUSH2 0x0317 00001d3b: JUMPI 00001d3c: PUSH1 0x20 00001d3e: PUSH1 0x01 00001d40: PUSH1 0x01 00001d42: PUSH1 0x80 00001d44: SHL 00001d45: SUB 00001d46: PUSH1 0x99 00001d48: SLOAD 00001d49: AND 00001d4a: PUSH1 0x40 00001d4c: MLOAD 00001d4d: SWAP1 00001d4e: DUP2 00001d4f: MSTORE 00001d50: RETURN 00001d51: JUMPDEST 00001d52: CALLVALUE 00001d53: PUSH2 0x0317 00001d56: JUMPI 00001d57: PUSH1 0x20 00001d59: CALLDATASIZE 00001d5a: PUSH1 0x03 00001d5c: NOT 00001d5d: ADD 00001d5e: SLT 00001d5f: PUSH2 0x0317 00001d62: JUMPI 00001d63: PUSH2 0x0020 00001d66: PUSH1 0x04 00001d68: CALLDATALOAD 00001d69: PUSH2 0x1d71 00001d6c: DUP2 00001d6d: PUSH2 0x0306 00001d70: JUMP 00001d71: JUMPDEST 00001d72: PUSH2 0x1d79 00001d75: PUSH2 0x3895 00001d78: JUMP 00001d79: JUMPDEST 00001d7a: PUSH2 0x4150 00001d7d: JUMP 00001d7e: JUMPDEST 00001d7f: CALLVALUE 00001d80: PUSH2 0x0317 00001d83: JUMPI 00001d84: PUSH0 00001d85: CALLDATASIZE 00001d86: PUSH1 0x03 00001d88: NOT 00001d89: ADD 00001d8a: SLT 00001d8b: PUSH2 0x0317 00001d8e: JUMPI 00001d8f: PUSH1 0x20 00001d91: PUSH1 0x01 00001d93: PUSH1 0x01 00001d95: PUSH1 0x80 00001d97: SHL 00001d98: SUB 00001d99: PUSH1 0x9e 00001d9b: SLOAD 00001d9c: AND 00001d9d: PUSH1 0x40 00001d9f: MLOAD 00001da0: SWAP1 00001da1: DUP2 00001da2: MSTORE 00001da3: RETURN 00001da4: JUMPDEST 00001da5: CALLVALUE 00001da6: PUSH2 0x0317 00001da9: JUMPI 00001daa: PUSH1 0x20 00001dac: CALLDATASIZE 00001dad: PUSH1 0x03 00001daf: NOT 00001db0: ADD 00001db1: SLT 00001db2: PUSH2 0x0317 00001db5: JUMPI 00001db6: PUSH1 0x04 00001db8: CALLDATALOAD 00001db9: PUSH2 0x1dc1 00001dbc: DUP2 00001dbd: PUSH2 0x0306 00001dc0: JUMP 00001dc1: JUMPDEST 00001dc2: PUSH1 0x01 00001dc4: DUP1 00001dc5: PUSH1 0xa0 00001dc7: SHL 00001dc8: SUB 00001dc9: AND 00001dca: PUSH0 00001dcb: MSTORE 00001dcc: PUSH1 0x9c 00001dce: PUSH1 0x20 00001dd0: MSTORE 00001dd1: PUSH1 0x20 00001dd3: PUSH1 0x40 00001dd5: PUSH0 00001dd6: KECCAK256 00001dd7: SLOAD 00001dd8: PUSH1 0x40 00001dda: MLOAD 00001ddb: SWAP1 00001ddc: DUP2 00001ddd: MSTORE 00001dde: RETURN 00001ddf: JUMPDEST 00001de0: CALLVALUE 00001de1: PUSH2 0x0317 00001de4: JUMPI 00001de5: PUSH1 0x20 00001de7: CALLDATASIZE 00001de8: PUSH1 0x03 00001dea: NOT 00001deb: ADD 00001dec: SLT 00001ded: PUSH2 0x0317 00001df0: JUMPI 00001df1: PUSH1 0x04 00001df3: CALLDATALOAD 00001df4: PUSH2 0x1dfc 00001df7: DUP2 00001df8: PUSH2 0x0306 00001dfb: JUMP 00001dfc: JUMPDEST 00001dfd: PUSH1 0x01 00001dff: DUP1 00001e00: PUSH1 0xa0 00001e02: SHL 00001e03: SUB 00001e04: AND 00001e05: PUSH0 00001e06: MSTORE 00001e07: PUSH2 0x0202 00001e0a: PUSH1 0x20 00001e0c: MSTORE 00001e0d: PUSH1 0x20 00001e0f: PUSH1 0xff 00001e11: PUSH1 0x40 00001e13: PUSH0 00001e14: KECCAK256 00001e15: SLOAD 00001e16: AND 00001e17: PUSH1 0x40 00001e19: MLOAD 00001e1a: SWAP1 00001e1b: ISZERO 00001e1c: ISZERO 00001e1d: DUP2 00001e1e: MSTORE 00001e1f: RETURN 00001e20: JUMPDEST 00001e21: CALLVALUE 00001e22: PUSH2 0x0317 00001e25: JUMPI 00001e26: PUSH0 00001e27: CALLDATASIZE 00001e28: PUSH1 0x03 00001e2a: NOT 00001e2b: ADD 00001e2c: SLT 00001e2d: PUSH2 0x0317 00001e30: JUMPI 00001e31: PUSH0 00001e32: SLOAD 00001e33: PUSH1 0x40 00001e35: MLOAD 00001e36: PUSH1 0x01 00001e38: PUSH1 0x01 00001e3a: PUSH1 0xa0 00001e3c: SHL 00001e3d: SUB 00001e3e: SWAP1 00001e3f: SWAP2 00001e40: AND 00001e41: DUP2 00001e42: MSTORE 00001e43: PUSH1 0x20 00001e45: SWAP1 00001e46: RETURN 00001e47: JUMPDEST 00001e48: PUSH1 0x40 00001e4a: CALLDATASIZE 00001e4b: PUSH1 0x03 00001e4d: NOT 00001e4e: ADD 00001e4f: SLT 00001e50: PUSH2 0x0317 00001e53: JUMPI 00001e54: PUSH1 0x20 00001e56: PUSH2 0x0384 00001e59: PUSH1 0x04 00001e5b: CALLDATALOAD 00001e5c: PUSH2 0x1e64 00001e5f: DUP2 00001e60: PUSH2 0x0306 00001e63: JUMP 00001e64: JUMPDEST 00001e65: PUSH1 0x24 00001e67: CALLDATALOAD 00001e68: SWAP1 00001e69: PUSH2 0x060d 00001e6c: DUP3 00001e6d: PUSH2 0x0306 00001e70: JUMP 00001e71: JUMPDEST 00001e72: CALLVALUE 00001e73: PUSH2 0x0317 00001e76: JUMPI 00001e77: PUSH1 0x20 00001e79: CALLDATASIZE 00001e7a: PUSH1 0x03 00001e7c: NOT 00001e7d: ADD 00001e7e: SLT 00001e7f: PUSH2 0x0317 00001e82: JUMPI 00001e83: PUSH2 0x0020 00001e86: PUSH1 0x04 00001e88: CALLDATALOAD 00001e89: PUSH2 0x1e91 00001e8c: DUP2 00001e8d: PUSH2 0x0306 00001e90: JUMP 00001e91: JUMPDEST 00001e92: PUSH2 0x1e99 00001e95: PUSH2 0x3895 00001e98: JUMP 00001e99: JUMPDEST 00001e9a: PUSH2 0x41b2 00001e9d: JUMP 00001e9e: JUMPDEST 00001e9f: SWAP1 00001ea0: DUP2 00001ea1: PUSH1 0x20 00001ea3: SWAP2 00001ea4: SUB 00001ea5: SLT 00001ea6: PUSH2 0x0317 00001ea9: JUMPI 00001eaa: MLOAD 00001eab: SWAP1 00001eac: JUMP 00001ead: JUMPDEST 00001eae: PUSH1 0x40 00001eb0: MLOAD 00001eb1: RETURNDATASIZE 00001eb2: PUSH0 00001eb3: DUP3 00001eb4: RETURNDATACOPY 00001eb5: RETURNDATASIZE 00001eb6: SWAP1 00001eb7: REVERT 00001eb8: JUMPDEST 00001eb9: SWAP1 00001eba: PUSH1 0x40 00001ebc: MLOAD 00001ebd: PUSH2 0x1ec5 00001ec0: DUP2 00001ec1: PUSH2 0x0f2c 00001ec4: JUMP 00001ec5: JUMPDEST 00001ec6: SWAP2 00001ec7: SLOAD 00001ec8: PUSH1 0x01 00001eca: PUSH1 0x01 00001ecc: PUSH1 0x80 00001ece: SHL 00001ecf: SUB 00001ed0: DUP2 00001ed1: AND 00001ed2: DUP4 00001ed3: MSTORE 00001ed4: PUSH1 0x80 00001ed6: SHR 00001ed7: PUSH1 0x20 00001ed9: DUP4 00001eda: ADD 00001edb: MSTORE 00001edc: JUMP 00001edd: JUMPDEST 00001ede: PUSH4 0x4e487b71 00001ee3: PUSH1 0xe0 00001ee5: SHL 00001ee6: PUSH0 00001ee7: MSTORE 00001ee8: PUSH1 0x11 00001eea: PUSH1 0x04 00001eec: MSTORE 00001eed: PUSH1 0x24 00001eef: PUSH0 00001ef0: REVERT 00001ef1: JUMPDEST 00001ef2: PUSH1 0x01 00001ef4: PUSH1 0x01 00001ef6: PUSH1 0x80 00001ef8: SHL 00001ef9: SUB 00001efa: SWAP2 00001efb: DUP3 00001efc: AND 00001efd: SWAP1 00001efe: DUP3 00001eff: AND 00001f00: SUB 00001f01: SWAP2 00001f02: SWAP1 00001f03: DUP3 00001f04: GT 00001f05: PUSH2 0x1f0a 00001f08: JUMPI 00001f09: JUMP 00001f0a: JUMPDEST 00001f0b: PUSH2 0x1edd 00001f0e: JUMP 00001f0f: JUMPDEST 00001f10: DUP2 00001f11: MLOAD 00001f12: PUSH1 0x20 00001f14: SWAP1 00001f15: SWAP3 00001f16: ADD 00001f17: MLOAD 00001f18: PUSH1 0x80 00001f1a: SHL 00001f1b: PUSH16 0xffffffffffffffffffffffffffffffff 00001f2c: NOT 00001f2d: AND 00001f2e: PUSH1 0x01 00001f30: PUSH1 0x01 00001f32: PUSH1 0x80 00001f34: SHL 00001f35: SUB 00001f36: SWAP3 00001f37: SWAP1 00001f38: SWAP3 00001f39: AND 00001f3a: SWAP2 00001f3b: SWAP1 00001f3c: SWAP2 00001f3d: OR 00001f3e: SWAP1 00001f3f: SSTORE 00001f40: JUMP 00001f41: JUMPDEST 00001f42: PUSH1 0x98 00001f44: SLOAD 00001f45: PUSH1 0x01 00001f47: PUSH1 0x01 00001f49: PUSH1 0x80 00001f4b: SHL 00001f4c: SUB 00001f4d: DUP2 00001f4e: AND 00001f4f: SWAP1 00001f50: DUP2 00001f51: PUSH2 0x1f59 00001f54: JUMPI 00001f55: POP 00001f56: POP 00001f57: SWAP1 00001f58: JUMP 00001f59: JUMPDEST 00001f5a: SWAP2 00001f5b: PUSH2 0x0682 00001f5e: SWAP3 00001f5f: PUSH1 0x80 00001f61: SHR 00001f62: SWAP1 00001f63: PUSH2 0x2b5e 00001f66: JUMP 00001f67: JUMPDEST 00001f68: PUSH2 0x0201 00001f6b: SLOAD 00001f6c: PUSH1 0x01 00001f6e: PUSH1 0x01 00001f70: PUSH1 0xa0 00001f72: SHL 00001f73: SUB 00001f74: SWAP2 00001f75: SWAP1 00001f76: DUP3 00001f77: AND 00001f78: CALLER 00001f79: SUB 00001f7a: PUSH2 0x0e39 00001f7d: JUMPI 00001f7e: PUSH1 0x01 00001f80: PUSH1 0x01 00001f82: PUSH1 0xa0 00001f84: SHL 00001f85: SUB 00001f86: DUP2 00001f87: AND 00001f88: PUSH0 00001f89: SWAP1 00001f8a: DUP2 00001f8b: MSTORE 00001f8c: PUSH2 0x0202 00001f8f: PUSH1 0x20 00001f91: MSTORE 00001f92: PUSH1 0x40 00001f94: SWAP1 00001f95: KECCAK256 00001f96: SLOAD 00001f97: SWAP3 00001f98: ISZERO 00001f99: ISZERO 00001f9a: SWAP3 00001f9b: PUSH1 0xff 00001f9d: AND 00001f9e: ISZERO 00001f9f: ISZERO 00001fa0: DUP4 00001fa1: EQ 00001fa2: PUSH2 0x1ffa 00001fa5: JUMPI 00001fa6: PUSH1 0x01 00001fa8: PUSH1 0x01 00001faa: PUSH1 0xa0 00001fac: SHL 00001fad: SUB 00001fae: DUP2 00001faf: AND 00001fb0: PUSH0 00001fb1: SWAP1 00001fb2: DUP2 00001fb3: MSTORE 00001fb4: PUSH2 0x0202 00001fb7: PUSH1 0x20 00001fb9: MSTORE 00001fba: PUSH1 0x40 00001fbc: SWAP1 00001fbd: KECCAK256 00001fbe: PUSH1 0xff 00001fc0: NOT 00001fc1: DUP2 00001fc2: SLOAD 00001fc3: AND 00001fc4: PUSH1 0xff 00001fc6: DUP6 00001fc7: AND 00001fc8: OR 00001fc9: SWAP1 00001fca: SSTORE 00001fcb: PUSH1 0x40 00001fcd: MLOAD 00001fce: SWAP3 00001fcf: DUP4 00001fd0: MSTORE 00001fd1: AND 00001fd2: SWAP1 00001fd3: PUSH32 0xd9c6c3eabe38e3b9a606a66358d8f225489216a59eeba66facefb7d916635266 00001ff4: PUSH1 0x20 00001ff6: CALLER 00001ff7: SWAP3 00001ff8: LOG3 00001ff9: JUMP 00001ffa: JUMPDEST 00001ffb: POP 00001ffc: POP 00001ffd: POP 00001ffe: JUMP 00001fff: JUMPDEST 00002000: PUSH2 0x200b 00002003: PUSH2 0x2012 00002006: SWAP2 00002007: PUSH2 0x2cc6 0000200a: JUMP 0000200b: JUMPDEST 0000200c: SWAP2 0000200d: SWAP1 0000200e: PUSH2 0x2e5c 00002011: JUMP 00002012: JUMPDEST 00002013: PUSH2 0x2018 00002016: JUMPI 00002017: JUMP 00002018: JUMPDEST 00002019: PUSH2 0x2020 0000201c: PUSH2 0x2fe6 0000201f: JUMP 00002020: JUMPDEST 00002021: POP 00002022: JUMP 00002023: JUMPDEST 00002024: SWAP1 00002025: SWAP2 00002026: PUSH2 0x202e 00002029: CALLER 0000202a: PUSH2 0x310f 0000202d: JUMP 0000202e: JUMPDEST 0000202f: PUSH2 0x2036 00002032: PUSH2 0x44fe 00002035: JUMP 00002036: JUMPDEST 00002037: PUSH2 0x203e 0000203a: PUSH2 0x3ac3 0000203d: JUMP 0000203e: JUMPDEST 0000203f: PUSH1 0x40 00002041: MLOAD 00002042: PUSH4 0x29460cc5 00002047: PUSH1 0xe1 00002049: SHL 0000204a: DUP2 0000204b: MSTORE 0000204c: PUSH1 0x01 0000204e: PUSH1 0x01 00002050: PUSH1 0xa0 00002052: SHL 00002053: SUB 00002054: DUP4 00002055: DUP2 00002056: AND 00002057: PUSH1 0x04 00002059: DUP4 0000205a: ADD 0000205b: MSTORE 0000205c: PUSH1 0x24 0000205e: DUP3 0000205f: ADD 00002060: DUP6 00002061: SWAP1 00002062: MSTORE 00002063: SWAP1 00002064: SWAP4 00002065: PUSH1 0x20 00002067: SWAP3 00002068: SWAP2 00002069: PUSH32 0x0000000000000000000000002a261e60fb14586b474c208b1b7ac6d0f5000306 0000208a: AND 0000208b: DUP4 0000208c: DUP7 0000208d: PUSH1 0x44 0000208f: DUP2 00002090: PUSH0 00002091: DUP6 00002092: GAS 00002093: CALL 00002094: SWAP6 00002095: DUP7 00002096: ISZERO 00002097: PUSH2 0x0561 0000209a: JUMPI 0000209b: PUSH0 0000209c: SWAP7 0000209d: PUSH2 0x2229 000020a0: JUMPI 000020a1: JUMPDEST 000020a2: POP 000020a3: CALLER 000020a4: PUSH0 000020a5: SWAP1 000020a6: DUP2 000020a7: MSTORE 000020a8: PUSH2 0x0137 000020ab: PUSH1 0x20 000020ad: MSTORE 000020ae: PUSH1 0x40 000020b0: SWAP1 000020b1: KECCAK256 000020b2: PUSH2 0x20ba 000020b5: SWAP1 000020b6: PUSH2 0x1eb8 000020b9: JUMP 000020ba: JUMPDEST 000020bb: SWAP4 000020bc: PUSH1 0x01 000020be: PUSH1 0x01 000020c0: PUSH1 0x80 000020c2: SHL 000020c3: SUB 000020c4: PUSH2 0x20d4 000020c7: DUP7 000020c8: MLOAD 000020c9: PUSH1 0x01 000020cb: PUSH1 0x01 000020cd: PUSH1 0x80 000020cf: SHL 000020d0: SUB 000020d1: AND 000020d2: SWAP1 000020d3: JUMP 000020d4: JUMPDEST 000020d5: AND 000020d6: ISZERO 000020d7: PUSH2 0x21c5 000020da: JUMPI 000020db: POP 000020dc: POP 000020dd: PUSH2 0x20e5 000020e0: DUP4 000020e1: PUSH2 0x29bb 000020e4: JUMP 000020e5: JUMPDEST 000020e6: PUSH2 0x2111 000020e9: PUSH2 0x2104 000020ec: PUSH2 0x20f4 000020ef: DUP4 000020f0: PUSH2 0x3ff4 000020f3: JUMP 000020f4: JUMPDEST 000020f5: DUP6 000020f6: MLOAD 000020f7: PUSH1 0x01 000020f9: PUSH1 0x01 000020fb: PUSH1 0x80 000020fd: SHL 000020fe: SUB 000020ff: AND 00002100: PUSH2 0x3131 00002103: JUMP 00002104: JUMPDEST 00002105: PUSH1 0x01 00002107: PUSH1 0x01 00002109: PUSH1 0x80 0000210b: SHL 0000210c: SUB 0000210d: AND 0000210e: DUP5 0000210f: MSTORE 00002110: JUMP 00002111: JUMPDEST 00002112: CALLER 00002113: PUSH0 00002114: SWAP1 00002115: DUP2 00002116: MSTORE 00002117: PUSH1 0x9c 00002119: PUSH1 0x20 0000211b: MSTORE 0000211c: PUSH1 0x40 0000211e: SWAP1 0000211f: KECCAK256 00002120: PUSH2 0x2131 00002123: SWAP1 00002124: PUSH2 0x212c 00002127: SWAP1 00002128: PUSH2 0x08a3 0000212b: JUMP 0000212c: JUMPDEST 0000212d: PUSH2 0x34b9 00002130: JUMP 00002131: JUMPDEST 00002132: PUSH2 0x2145 00002135: PUSH2 0x178d 00002138: DUP6 00002139: MLOAD 0000213a: PUSH1 0x01 0000213c: PUSH1 0x01 0000213e: PUSH1 0x80 00002140: SHL 00002141: SUB 00002142: AND 00002143: SWAP1 00002144: JUMP 00002145: JUMPDEST 00002146: GT 00002147: PUSH2 0x21b3 0000214a: JUMPI 0000214b: CALLER 0000214c: PUSH0 0000214d: SWAP1 0000214e: DUP2 0000214f: MSTORE 00002150: PUSH2 0x0137 00002153: PUSH1 0x20 00002155: MSTORE 00002156: PUSH1 0x40 00002158: SWAP1 00002159: KECCAK256 0000215a: PUSH32 0xa16d97739893e1436c9753925fb5cef174c4f368699dc86cc8fdb0e6e60f8e58 0000217b: SWAP4 0000217c: PUSH2 0x2184 0000217f: SWAP2 00002180: PUSH2 0x1f0f 00002183: JUMP 00002184: JUMPDEST 00002185: PUSH1 0x40 00002187: DUP1 00002188: MLOAD 00002189: PUSH1 0x01 0000218b: PUSH1 0x01 0000218d: PUSH1 0xa0 0000218f: SHL 00002190: SUB 00002191: SWAP6 00002192: DUP7 00002193: AND 00002194: DUP2 00002195: MSTORE 00002196: PUSH1 0x20 00002198: DUP2 00002199: ADD 0000219a: DUP8 0000219b: SWAP1 0000219c: MSTORE 0000219d: SWAP1 0000219e: DUP2 0000219f: ADD 000021a0: SWAP2 000021a1: SWAP1 000021a2: SWAP2 000021a3: MSTORE 000021a4: SWAP3 000021a5: AND 000021a6: PUSH1 0x60 000021a8: DUP4 000021a9: ADD 000021aa: MSTORE 000021ab: CALLER 000021ac: SWAP2 000021ad: PUSH1 0x80 000021af: SWAP1 000021b0: LOG2 000021b1: SWAP1 000021b2: JUMP 000021b3: JUMPDEST 000021b4: PUSH1 0x40 000021b6: MLOAD 000021b7: PUSH4 0x3684c659 000021bc: PUSH1 0xe0 000021be: SHL 000021bf: DUP2 000021c0: MSTORE 000021c1: PUSH1 0x04 000021c3: SWAP1 000021c4: REVERT 000021c5: JUMPDEST 000021c6: DUP1 000021c7: PUSH1 0x04 000021c9: SWAP3 000021ca: PUSH1 0x40 000021cc: MLOAD 000021cd: SWAP4 000021ce: DUP5 000021cf: DUP1 000021d0: SWAP3 000021d1: PUSH4 0x752a536d 000021d6: PUSH1 0xe0 000021d8: SHL 000021d9: DUP3 000021da: MSTORE 000021db: GAS 000021dc: STATICCALL 000021dd: SWAP2 000021de: DUP3 000021df: ISZERO 000021e0: PUSH2 0x0561 000021e3: JUMPI 000021e4: PUSH2 0x2207 000021e7: SWAP3 000021e8: PUSH2 0x21f8 000021eb: SWAP2 000021ec: PUSH0 000021ed: SWAP2 000021ee: PUSH2 0x220c 000021f1: JUMPI 000021f2: JUMPDEST 000021f3: POP 000021f4: PUSH2 0x3ff4 000021f7: JUMP 000021f8: JUMPDEST 000021f9: PUSH1 0x01 000021fb: PUSH1 0x01 000021fd: PUSH1 0x80 000021ff: SHL 00002200: SUB 00002201: AND 00002202: SWAP1 00002203: DUP6 00002204: ADD 00002205: MSTORE 00002206: JUMP 00002207: JUMPDEST 00002208: PUSH2 0x20e5 0000220b: JUMP 0000220c: JUMPDEST 0000220d: PUSH2 0x2223 00002210: SWAP2 00002211: POP 00002212: DUP4 00002213: RETURNDATASIZE 00002214: DUP6 00002215: GT 00002216: PUSH2 0x055a 00002219: JUMPI 0000221a: PUSH2 0x054c 0000221d: DUP2 0000221e: DUP4 0000221f: PUSH2 0x0f95 00002222: JUMP 00002223: JUMPDEST 00002224: PUSH0 00002225: PUSH2 0x21f2 00002228: JUMP 00002229: JUMPDEST 0000222a: PUSH2 0x2241 0000222d: SWAP2 0000222e: SWAP7 0000222f: POP 00002230: DUP5 00002231: RETURNDATASIZE 00002232: DUP7 00002233: GT 00002234: PUSH2 0x055a 00002237: JUMPI 00002238: PUSH2 0x054c 0000223b: DUP2 0000223c: DUP4 0000223d: PUSH2 0x0f95 00002240: JUMP 00002241: JUMPDEST 00002242: SWAP5 00002243: PUSH0 00002244: PUSH2 0x20a1 00002247: JUMP 00002248: JUMPDEST 00002249: SELFBALANCE 0000224a: PUSH1 0x99 0000224c: SLOAD 0000224d: PUSH1 0x01 0000224f: PUSH1 0x01 00002251: PUSH1 0x80 00002253: SHL 00002254: SUB 00002255: PUSH2 0x225f 00002258: DUP2 00002259: DUP4 0000225a: AND 0000225b: PUSH2 0x1f41 0000225e: JUMP 0000225f: JUMPDEST 00002260: SWAP1 00002261: PUSH1 0x9e 00002263: SLOAD 00002264: AND 00002265: ADD 00002266: SWAP1 00002267: PUSH1 0x80 00002269: SHR 0000226a: ADD 0000226b: SWAP1 0000226c: DUP2 0000226d: DUP2 0000226e: GT 0000226f: PUSH0 00002270: EQ 00002271: PUSH2 0x2278 00002274: JUMPI 00002275: SUB 00002276: SWAP1 00002277: JUMP 00002278: JUMPDEST 00002279: POP 0000227a: POP 0000227b: PUSH0 0000227c: SWAP1 0000227d: JUMP 0000227e: JUMPDEST 0000227f: PUSH2 0x016a 00002282: SLOAD 00002283: PUSH1 0x01 00002285: PUSH1 0x01 00002287: PUSH1 0xa0 00002289: SHL 0000228a: SUB 0000228b: AND 0000228c: DUP1 0000228d: ISZERO 0000228e: PUSH2 0x2294 00002291: JUMPI 00002292: SWAP1 00002293: JUMP 00002294: JUMPDEST 00002295: POP 00002296: PUSH32 0x00000000000000000000000048319f97e5da1233c21c48b80097c0fb7a20ff86 000022b7: SWAP1 000022b8: JUMP 000022b9: JUMPDEST 000022ba: SWAP2 000022bb: PUSH2 0x22c3 000022be: CALLER 000022bf: PUSH2 0x310f 000022c2: JUMP 000022c3: JUMPDEST 000022c4: PUSH2 0x22cc 000022c7: CALLER 000022c8: PUSH2 0x310f 000022cb: JUMP 000022cc: JUMPDEST 000022cd: PUSH2 0x22d7 000022d0: DUP2 000022d1: CALLVALUE 000022d2: CALLER 000022d3: PUSH2 0x42c1 000022d6: JUMP 000022d7: JUMPDEST 000022d8: POP 000022d9: PUSH0 000022da: NOT 000022db: DUP3 000022dc: EQ 000022dd: PUSH2 0x22f0 000022e0: JUMPI 000022e1: JUMPDEST 000022e2: DUP2 000022e3: PUSH2 0x22ec 000022e6: SWAP3 000022e7: SWAP4 000022e8: PUSH2 0x2023 000022eb: JUMP 000022ec: JUMPDEST 000022ed: POP 000022ee: SWAP1 000022ef: JUMP 000022f0: JUMPDEST 000022f1: PUSH2 0x22ec 000022f4: SWAP2 000022f5: POP 000022f6: PUSH2 0x22fe 000022f9: CALLVALUE 000022fa: PUSH2 0x34b9 000022fd: JUMP 000022fe: JUMPDEST 000022ff: SWAP2 00002300: POP 00002301: PUSH2 0x22e1 00002304: JUMP 00002305: JUMPDEST 00002306: SWAP1 00002307: DUP2 00002308: PUSH1 0x20 0000230a: SWAP2 0000230b: SUB 0000230c: SLT 0000230d: PUSH2 0x0317 00002310: JUMPI 00002311: MLOAD 00002312: PUSH2 0x0682 00002315: DUP2 00002316: PUSH2 0x0306 00002319: JUMP 0000231a: JUMPDEST 0000231b: SWAP1 0000231c: PUSH1 0x20 0000231e: DUP3 0000231f: DUP3 00002320: SUB 00002321: SLT 00002322: PUSH2 0x0317 00002325: JUMPI 00002326: DUP2 00002327: CALLDATALOAD 00002328: PUSH1 0x01 0000232a: PUSH1 0x01 0000232c: PUSH1 0x40 0000232e: SHL 0000232f: SUB 00002330: SWAP3 00002331: DUP4 00002332: DUP3 00002333: GT 00002334: PUSH2 0x0317 00002337: JUMPI 00002338: ADD 00002339: SWAP2 0000233a: PUSH1 0x60 0000233c: DUP4 0000233d: DUP4 0000233e: SUB 0000233f: SLT 00002340: PUSH2 0x0317 00002343: JUMPI 00002344: PUSH1 0x40 00002346: MLOAD 00002347: SWAP3 00002348: PUSH2 0x2350 0000234b: DUP5 0000234c: PUSH2 0x0f5f 0000234f: JUMP 00002350: JUMPDEST 00002351: DUP1 00002352: CALLDATALOAD 00002353: DUP5 00002354: MSTORE 00002355: PUSH1 0x20 00002357: DUP2 00002358: ADD 00002359: CALLDATALOAD 0000235a: PUSH2 0xffff 0000235d: DUP2 0000235e: AND 0000235f: DUP2 00002360: SUB 00002361: PUSH2 0x0317 00002364: JUMPI 00002365: PUSH1 0x20 00002367: DUP6 00002368: ADD 00002369: MSTORE 0000236a: PUSH1 0x40 0000236c: DUP2 0000236d: ADD 0000236e: CALLDATALOAD 0000236f: SWAP2 00002370: DUP3 00002371: GT 00002372: PUSH2 0x0317 00002375: JUMPI 00002376: ADD 00002377: SWAP1 00002378: DUP1 00002379: PUSH1 0x1f 0000237b: DUP4 0000237c: ADD 0000237d: SLT 0000237e: ISZERO 0000237f: PUSH2 0x0317 00002382: JUMPI 00002383: DUP2 00002384: PUSH1 0x20 00002386: PUSH2 0x2391 00002389: SWAP4 0000238a: CALLDATALOAD 0000238b: SWAP2 0000238c: ADD 0000238d: PUSH2 0x0fe0 00002390: JUMP 00002391: JUMPDEST 00002392: PUSH1 0x40 00002394: DUP3 00002395: ADD 00002396: MSTORE 00002397: SWAP1 00002398: JUMP 00002399: JUMPDEST 0000239a: PUSH0 0000239b: SLOAD 0000239c: SWAP1 0000239d: SWAP2 0000239e: SWAP1 0000239f: PUSH1 0x01 000023a1: PUSH1 0x01 000023a3: PUSH1 0xa0 000023a5: SHL 000023a6: SUB 000023a7: AND 000023a8: PUSH2 0x245c 000023ab: JUMPI 000023ac: PUSH1 0x40 000023ae: MLOAD 000023af: PUSH4 0xe7f6f225 000023b4: PUSH1 0xe0 000023b6: SHL 000023b7: DUP2 000023b8: MSTORE 000023b9: SWAP1 000023ba: PUSH1 0x20 000023bc: SWAP1 000023bd: DUP2 000023be: DUP4 000023bf: PUSH1 0x04 000023c1: DUP2 000023c2: CALLER 000023c3: GAS 000023c4: STATICCALL 000023c5: SWAP3 000023c6: DUP4 000023c7: ISZERO 000023c8: PUSH2 0x0561 000023cb: JUMPI 000023cc: PUSH0 000023cd: SWAP4 000023ce: PUSH2 0x243d 000023d1: JUMPI 000023d2: JUMPDEST 000023d3: POP 000023d4: PUSH1 0x40 000023d6: MLOAD 000023d7: PUSH4 0x6f4fa30f 000023dc: PUSH1 0xe0 000023de: SHL 000023df: DUP2 000023e0: MSTORE 000023e1: SWAP4 000023e2: DUP3 000023e3: DUP6 000023e4: PUSH1 0x04 000023e6: DUP2 000023e7: CALLER 000023e8: GAS 000023e9: STATICCALL 000023ea: SWAP1 000023eb: DUP2 000023ec: ISZERO 000023ed: PUSH2 0x0561 000023f0: JUMPI 000023f1: PUSH2 0x0fc3 000023f4: SWAP6 000023f5: PUSH2 0x2415 000023f8: SWAP5 000023f9: PUSH0 000023fa: SWAP4 000023fb: PUSH2 0x241a 000023fe: JUMPI 000023ff: JUMPDEST 00002400: POP 00002401: POP 00002402: PUSH2 0x240e 00002405: SWAP2 00002406: SWAP3 00002407: DUP2 00002408: ADD 00002409: SWAP1 0000240a: PUSH2 0x231a 0000240d: JUMP 0000240e: JUMPDEST 0000240f: SWAP1 00002410: DUP4 00002411: PUSH2 0x36c8 00002414: JUMP 00002415: JUMPDEST 00002416: PUSH2 0x37b0 00002419: JUMP 0000241a: JUMPDEST 0000241b: PUSH2 0x240e 0000241e: SWAP4 0000241f: POP 00002420: SWAP1 00002421: DUP2 00002422: PUSH2 0x2436 00002425: SWAP3 00002426: SWAP1 00002427: RETURNDATASIZE 00002428: LT 00002429: PUSH2 0x0e73 0000242c: JUMPI 0000242d: PUSH2 0x0e65 00002430: DUP2 00002431: DUP4 00002432: PUSH2 0x0f95 00002435: JUMP 00002436: JUMPDEST 00002437: SWAP2 00002438: PUSH0 00002439: PUSH2 0x23ff 0000243c: JUMP 0000243d: JUMPDEST 0000243e: PUSH2 0x2455 00002441: SWAP2 00002442: SWAP4 00002443: POP 00002444: DUP3 00002445: RETURNDATASIZE 00002446: DUP5 00002447: GT 00002448: PUSH2 0x0e73 0000244b: JUMPI 0000244c: PUSH2 0x0e65 0000244f: DUP2 00002450: DUP4 00002451: PUSH2 0x0f95 00002454: JUMP 00002455: JUMPDEST 00002456: SWAP2 00002457: PUSH0 00002458: PUSH2 0x23d2 0000245b: JUMP 0000245c: JUMPDEST 0000245d: POP 0000245e: POP 0000245f: PUSH2 0x0fc3 00002462: PUSH2 0x35c3 00002465: JUMP 00002466: JUMPDEST 00002467: PUSH1 0x9d 00002469: SLOAD 0000246a: DUP1 0000246b: PUSH2 0x0682 0000246e: JUMPI 0000246f: POP 00002470: PUSH0 00002471: NOT 00002472: SWAP1 00002473: JUMP 00002474: JUMPDEST 00002475: SWAP2 00002476: SWAP1 00002477: DUP3 00002478: ADD 00002479: DUP1 0000247a: SWAP3 0000247b: GT 0000247c: PUSH2 0x1f0a 0000247f: JUMPI 00002480: JUMP 00002481: JUMPDEST 00002482: PUSH1 0x01 00002484: PUSH1 0x01 00002486: PUSH1 0x80 00002488: SHL 00002489: SUB 0000248a: PUSH1 0x99 0000248c: SLOAD 0000248d: AND 0000248e: PUSH2 0x2495 00002491: PUSH2 0x47c5 00002494: JUMP 00002495: JUMPDEST 00002496: SWAP1 00002497: DUP2 00002498: ADD 00002499: DUP1 0000249a: SWAP2 0000249b: GT 0000249c: PUSH2 0x1f0a 0000249f: JUMPI 000024a0: DUP2 000024a1: LT 000024a2: PUSH2 0x24c8 000024a5: JUMPI 000024a6: PUSH2 0x24b9 000024a9: PUSH1 0x9f 000024ab: SLOAD 000024ac: PUSH2 0x24b3 000024af: PUSH2 0x382c 000024b2: JUMP 000024b3: JUMPDEST 000024b4: SWAP1 000024b5: PUSH2 0x2474 000024b8: JUMP 000024b9: JUMPDEST 000024ba: GT 000024bb: ISZERO 000024bc: PUSH2 0x24c3 000024bf: JUMPI 000024c0: PUSH0 000024c1: SWAP1 000024c2: JUMP 000024c3: JUMPDEST 000024c4: PUSH0 000024c5: NOT 000024c6: SWAP1 000024c7: JUMP 000024c8: JUMPDEST 000024c9: PUSH1 0x9a 000024cb: SWAP1 000024cc: PUSH1 0x9a 000024ce: SLOAD 000024cf: SWAP2 000024d0: DUP3 000024d1: SWAP2 000024d2: PUSH0 000024d3: SWAP1 000024d4: JUMPDEST 000024d5: DUP5 000024d6: DUP3 000024d7: LT 000024d8: PUSH2 0x24ee 000024db: JUMPI 000024dc: POP 000024dd: POP 000024de: POP 000024df: DUP2 000024e0: LT 000024e1: ISZERO 000024e2: PUSH2 0x24e8 000024e5: JUMPI 000024e6: SWAP1 000024e7: JUMP 000024e8: JUMPDEST 000024e9: POP 000024ea: PUSH0 000024eb: NOT 000024ec: SWAP1 000024ed: JUMP 000024ee: JUMPDEST 000024ef: SWAP1 000024f0: SWAP2 000024f1: SWAP4 000024f2: DUP1 000024f3: DUP4 000024f4: AND 000024f5: SWAP1 000024f6: PUSH1 0x01 000024f8: DUP2 000024f9: DUP6 000024fa: XOR 000024fb: DUP2 000024fc: SHR 000024fd: DUP4 000024fe: ADD 000024ff: DUP1 00002500: SWAP4 00002501: GT 00002502: PUSH2 0x1f0a 00002505: JUMPI 00002506: PUSH0 00002507: DUP8 00002508: SWAP1 00002509: MSTORE 0000250a: PUSH0 0000250b: DUP1 0000250c: MLOAD 0000250d: PUSH1 0x20 0000250f: PUSH2 0x4b7c 00002512: DUP4 00002513: CODECOPY 00002514: DUP2 00002515: MLOAD 00002516: SWAP2 00002517: MSTORE 00002518: DUP4 00002519: ADD 0000251a: SLOAD 0000251b: PUSH1 0x01 0000251d: PUSH1 0x01 0000251f: PUSH1 0xa0 00002521: SHL 00002522: SUB 00002523: AND 00002524: DUP5 00002525: LT 00002526: ISZERO 00002527: PUSH2 0x2535 0000252a: JUMPI 0000252b: POP 0000252c: POP 0000252d: SWAP4 0000252e: JUMPDEST 0000252f: SWAP2 00002530: SWAP1 00002531: PUSH2 0x24d4 00002534: JUMP 00002535: JUMPDEST 00002536: SWAP1 00002537: SWAP6 00002538: SWAP2 00002539: ADD 0000253a: SWAP3 0000253b: POP 0000253c: PUSH2 0x252e 0000253f: JUMP 00002540: JUMPDEST 00002541: SWAP1 00002542: DUP2 00002543: PUSH1 0x20 00002545: SWAP2 00002546: SUB 00002547: SLT 00002548: PUSH2 0x0317 0000254b: JUMPI 0000254c: MLOAD 0000254d: PUSH2 0x0682 00002550: DUP2 00002551: PUSH2 0x0584 00002554: JUMP 00002555: JUMPDEST 00002556: SWAP2 00002557: SWAP1 00002558: DUP3 00002559: SUB 0000255a: SWAP2 0000255b: DUP3 0000255c: GT 0000255d: PUSH2 0x1f0a 00002560: JUMPI 00002561: JUMP 00002562: JUMPDEST 00002563: PUSH1 0x40 00002565: DUP1 00002566: MLOAD 00002567: PUSH1 0x01 00002569: PUSH1 0x01 0000256b: PUSH1 0xa0 0000256d: SHL 0000256e: SUB 0000256f: SWAP1 00002570: SWAP3 00002571: AND 00002572: PUSH1 0x20 00002574: DUP4 00002575: ADD 00002576: SWAP1 00002577: DUP2 00002578: MSTORE 00002579: SWAP1 0000257a: DUP3 0000257b: ADD 0000257c: SWAP4 0000257d: SWAP1 0000257e: SWAP4 0000257f: MSTORE 00002580: PUSH1 0x60 00002582: DUP2 00002583: ADD 00002584: DUP3 00002585: SWAP1 00002586: MSTORE 00002587: SWAP1 00002588: SWAP2 00002589: SWAP1 0000258a: PUSH2 0x25a0 0000258d: DUP2 0000258e: PUSH1 0x80 00002590: DUP2 00002591: ADD 00002592: JUMPDEST 00002593: SUB 00002594: PUSH1 0x1f 00002596: NOT 00002597: DUP2 00002598: ADD 00002599: DUP4 0000259a: MSTORE 0000259b: DUP3 0000259c: PUSH2 0x0f95 0000259f: JUMP 000025a0: JUMPDEST 000025a1: MLOAD 000025a2: SWAP1 000025a3: KECCAK256 000025a4: PUSH0 000025a5: MSTORE 000025a6: PUSH1 0x9b 000025a8: PUSH1 0x20 000025aa: MSTORE 000025ab: PUSH1 0x40 000025ad: PUSH0 000025ae: KECCAK256 000025af: SLOAD 000025b0: SWAP2 000025b1: DUP3 000025b2: ISZERO 000025b3: PUSH2 0x260a 000025b6: JUMPI 000025b7: PUSH1 0x01 000025b9: PUSH1 0x01 000025bb: PUSH1 0x80 000025bd: SHL 000025be: SUB 000025bf: PUSH1 0x99 000025c1: SLOAD 000025c2: AND 000025c3: SWAP1 000025c4: PUSH2 0x25cb 000025c7: PUSH2 0x47c5 000025ca: JUMP 000025cb: JUMPDEST 000025cc: SWAP2 000025cd: DUP3 000025ce: ADD 000025cf: DUP1 000025d0: SWAP3 000025d1: GT 000025d2: PUSH2 0x1f0a 000025d5: JUMPI 000025d6: DUP4 000025d7: SWAP2 000025d8: DUP4 000025d9: LT 000025da: ISZERO 000025db: PUSH2 0x25f8 000025de: JUMPI 000025df: SWAP2 000025e0: PUSH2 0x25e8 000025e3: SWAP3 000025e4: PUSH2 0x3928 000025e7: JUMP 000025e8: JUMPDEST 000025e9: SWAP1 000025ea: SWAP2 000025eb: JUMPDEST 000025ec: DUP3 000025ed: DUP2 000025ee: SUB 000025ef: SWAP1 000025f0: DUP2 000025f1: GT 000025f2: PUSH2 0x1f0a 000025f5: JUMPI 000025f6: SWAP3 000025f7: JUMP 000025f8: JUMPDEST 000025f9: POP 000025fa: SWAP1 000025fb: PUSH2 0x2603 000025fe: SWAP2 000025ff: PUSH2 0x38a8 00002602: JUMP 00002603: JUMPDEST 00002604: SWAP1 00002605: SWAP2 00002606: PUSH2 0x25eb 00002609: JUMP 0000260a: JUMPDEST 0000260b: POP 0000260c: POP 0000260d: POP 0000260e: PUSH0 0000260f: SWAP1 00002610: PUSH0 00002611: SWAP1 00002612: PUSH0 00002613: SWAP1 00002614: JUMP 00002615: JUMPDEST 00002616: SWAP1 00002617: CALLDATALOAD 00002618: PUSH1 0x1e 0000261a: NOT 0000261b: DUP3 0000261c: CALLDATASIZE 0000261d: SUB 0000261e: ADD 0000261f: DUP2 00002620: SLT 00002621: ISZERO 00002622: PUSH2 0x0317 00002625: JUMPI 00002626: ADD 00002627: PUSH1 0x20 00002629: DUP2 0000262a: CALLDATALOAD 0000262b: SWAP2 0000262c: ADD 0000262d: SWAP2 0000262e: PUSH1 0x01 00002630: PUSH1 0x01 00002632: PUSH1 0x40 00002634: SHL 00002635: SUB 00002636: DUP3 00002637: GT 00002638: PUSH2 0x0317 0000263b: JUMPI 0000263c: DUP2 0000263d: CALLDATASIZE 0000263e: SUB 0000263f: DUP4 00002640: SGT 00002641: PUSH2 0x0317 00002644: JUMPI 00002645: JUMP 00002646: JUMPDEST 00002647: SWAP1 00002648: PUSH1 0x30 0000264a: PUSH1 0x60 0000264c: SWAP3 0000264d: DUP2 0000264e: DUP4 0000264f: MSTORE 00002650: PUSH1 0x20 00002652: DUP4 00002653: ADD 00002654: CALLDATACOPY 00002655: PUSH0 00002656: PUSH1 0x50 00002658: DUP3 00002659: ADD 0000265a: MSTORE 0000265b: ADD 0000265c: SWAP1 0000265d: JUMP 0000265e: JUMPDEST 0000265f: SWAP1 00002660: DUP1 00002661: PUSH1 0x20 00002663: SWAP4 00002664: SWAP3 00002665: DUP2 00002666: DUP5 00002667: MSTORE 00002668: DUP5 00002669: DUP5 0000266a: ADD 0000266b: CALLDATACOPY 0000266c: PUSH0 0000266d: DUP3 0000266e: DUP3 0000266f: ADD 00002670: DUP5 00002671: ADD 00002672: MSTORE 00002673: PUSH1 0x1f 00002675: ADD 00002676: PUSH1 0x1f 00002678: NOT 00002679: AND 0000267a: ADD 0000267b: ADD 0000267c: SWAP1 0000267d: JUMP 0000267e: JUMPDEST 0000267f: SWAP1 00002680: PUSH1 0xa0 00002682: PUSH2 0x0682 00002685: SWAP3 00002686: PUSH1 0x20 00002688: DUP2 00002689: MSTORE 0000268a: DUP3 0000268b: CALLDATALOAD 0000268c: PUSH1 0x20 0000268e: DUP3 0000268f: ADD 00002690: MSTORE 00002691: PUSH1 0x20 00002693: DUP4 00002694: ADD 00002695: CALLDATALOAD 00002696: PUSH1 0x40 00002698: DUP3 00002699: ADD 0000269a: MSTORE 0000269b: PUSH2 0x26ba 0000269e: PUSH2 0x26aa 000026a1: PUSH1 0x40 000026a3: DUP6 000026a4: ADD 000026a5: DUP6 000026a6: PUSH2 0x2615 000026a9: JUMP 000026aa: JUMPDEST 000026ab: DUP5 000026ac: PUSH1 0x60 000026ae: DUP6 000026af: ADD 000026b0: MSTORE 000026b1: PUSH1 0xc0 000026b3: DUP5 000026b4: ADD 000026b5: SWAP2 000026b6: PUSH2 0x265e 000026b9: JUMP 000026ba: JUMPDEST 000026bb: SWAP1 000026bc: PUSH2 0x26ed 000026bf: PUSH2 0x26e2 000026c2: PUSH2 0x26ce 000026c5: PUSH1 0x60 000026c7: DUP8 000026c8: ADD 000026c9: DUP8 000026ca: PUSH2 0x2615 000026cd: JUMP 000026ce: JUMPDEST 000026cf: PUSH1 0x1f 000026d1: NOT 000026d2: DUP6 000026d3: DUP8 000026d4: SUB 000026d5: DUP2 000026d6: ADD 000026d7: PUSH1 0x80 000026d9: DUP8 000026da: ADD 000026db: MSTORE 000026dc: SWAP6 000026dd: SWAP2 000026de: PUSH2 0x265e 000026e1: JUMP 000026e2: JUMPDEST 000026e3: SWAP5 000026e4: PUSH1 0x80 000026e6: DUP2 000026e7: ADD 000026e8: SWAP1 000026e9: PUSH2 0x2615 000026ec: JUMP 000026ed: JUMPDEST 000026ee: SWAP4 000026ef: SWAP1 000026f0: SWAP3 000026f1: DUP3 000026f2: DUP7 000026f3: SUB 000026f4: ADD 000026f5: SWAP2 000026f6: ADD 000026f7: MSTORE 000026f8: PUSH2 0x265e 000026fb: JUMP 000026fc: JUMPDEST 000026fd: SWAP1 000026fe: CALLDATALOAD 000026ff: SWAP1 00002700: PUSH1 0x1e 00002702: NOT 00002703: DUP2 00002704: CALLDATASIZE 00002705: SUB 00002706: ADD 00002707: DUP3 00002708: SLT 00002709: ISZERO 0000270a: PUSH2 0x0317 0000270d: JUMPI 0000270e: ADD 0000270f: DUP1 00002710: CALLDATALOAD 00002711: SWAP1 00002712: PUSH1 0x01 00002714: PUSH1 0x01 00002716: PUSH1 0x40 00002718: SHL 00002719: SUB 0000271a: DUP3 0000271b: GT 0000271c: PUSH2 0x0317 0000271f: JUMPI 00002720: PUSH1 0x20 00002722: ADD 00002723: SWAP2 00002724: DUP2 00002725: CALLDATASIZE 00002726: SUB 00002727: DUP4 00002728: SGT 00002729: PUSH2 0x0317 0000272c: JUMPI 0000272d: JUMP 0000272e: JUMPDEST 0000272f: PUSH4 0x4e487b71 00002734: PUSH1 0xe0 00002736: SHL 00002737: PUSH0 00002738: MSTORE 00002739: PUSH1 0x12 0000273b: PUSH1 0x04 0000273d: MSTORE 0000273e: PUSH1 0x24 00002740: PUSH0 00002741: REVERT 00002742: JUMPDEST 00002743: DUP2 00002744: ISZERO 00002745: PUSH2 0x274c 00002748: JUMPI 00002749: DIV 0000274a: SWAP1 0000274b: JUMP 0000274c: JUMPDEST 0000274d: PUSH2 0x272e 00002750: JUMP 00002751: JUMPDEST 00002752: SWAP1 00002753: PUSH9 0x01bc16d674ec800000 0000275d: SWAP2 0000275e: DUP1 0000275f: DUP4 00002760: MUL 00002761: SWAP3 00002762: DUP4 00002763: DIV 00002764: SUB 00002765: PUSH2 0x1f0a 00002768: JUMPI 00002769: JUMP 0000276a: JUMPDEST 0000276b: SWAP1 0000276c: PUSH8 0x0de0b6b3a7640000 00002775: SWAP2 00002776: DUP3 00002777: DUP2 00002778: MUL 00002779: SWAP3 0000277a: DUP2 0000277b: DUP5 0000277c: DIV 0000277d: EQ 0000277e: SWAP1 0000277f: ISZERO 00002780: OR 00002781: ISZERO 00002782: PUSH2 0x1f0a 00002785: JUMPI 00002786: JUMP 00002787: JUMPDEST 00002788: PUSH1 0x01 0000278a: PUSH1 0x01 0000278c: PUSH1 0x40 0000278e: SHL 0000278f: SUB 00002790: DUP2 00002791: GT 00002792: PUSH2 0x0f47 00002795: JUMPI 00002796: PUSH1 0x05 00002798: SHL 00002799: PUSH1 0x20 0000279b: ADD 0000279c: SWAP1 0000279d: JUMP 0000279e: JUMPDEST 0000279f: SWAP1 000027a0: PUSH2 0x27a8 000027a3: DUP3 000027a4: PUSH2 0x2787 000027a7: JUMP 000027a8: JUMPDEST 000027a9: PUSH2 0x27b5 000027ac: PUSH1 0x40 000027ae: MLOAD 000027af: SWAP2 000027b0: DUP3 000027b1: PUSH2 0x0f95 000027b4: JUMP 000027b5: JUMPDEST 000027b6: DUP3 000027b7: DUP2 000027b8: MSTORE 000027b9: DUP1 000027ba: SWAP3 000027bb: PUSH2 0x27c6 000027be: PUSH1 0x1f 000027c0: NOT 000027c1: SWAP2 000027c2: PUSH2 0x2787 000027c5: JUMP 000027c6: JUMPDEST 000027c7: ADD 000027c8: SWAP1 000027c9: PUSH0 000027ca: JUMPDEST 000027cb: DUP3 000027cc: DUP2 000027cd: LT 000027ce: PUSH2 0x27d6 000027d1: JUMPI 000027d2: POP 000027d3: POP 000027d4: POP 000027d5: JUMP 000027d6: JUMPDEST 000027d7: DUP1 000027d8: PUSH1 0x60 000027da: PUSH1 0x20 000027dc: DUP1 000027dd: SWAP4 000027de: DUP6 000027df: ADD 000027e0: ADD 000027e1: MSTORE 000027e2: ADD 000027e3: PUSH2 0x27ca 000027e6: JUMP 000027e7: JUMPDEST 000027e8: PUSH4 0x4e487b71 000027ed: PUSH1 0xe0 000027ef: SHL 000027f0: PUSH0 000027f1: MSTORE 000027f2: PUSH1 0x32 000027f4: PUSH1 0x04 000027f6: MSTORE 000027f7: PUSH1 0x24 000027f9: PUSH0 000027fa: REVERT 000027fb: JUMPDEST 000027fc: SWAP1 000027fd: DUP3 000027fe: LT 000027ff: ISZERO 00002800: PUSH2 0x2812 00002803: JUMPI 00002804: PUSH2 0x0ca3 00002807: SWAP2 00002808: PUSH1 0x05 0000280a: SHL 0000280b: DUP2 0000280c: ADD 0000280d: SWAP1 0000280e: PUSH2 0x26fc 00002811: JUMP 00002812: JUMPDEST 00002813: PUSH2 0x27e7 00002816: JUMP 00002817: JUMPDEST 00002818: SWAP1 00002819: DUP1 0000281a: SWAP3 0000281b: SWAP2 0000281c: DUP3 0000281d: CALLDATACOPY 0000281e: ADD 0000281f: PUSH0 00002820: DUP2 00002821: MSTORE 00002822: SWAP1 00002823: JUMP 00002824: JUMPDEST 00002825: RETURNDATASIZE 00002826: ISZERO 00002827: PUSH2 0x284e 0000282a: JUMPI 0000282b: RETURNDATASIZE 0000282c: SWAP1 0000282d: PUSH2 0x2835 00002830: DUP3 00002831: PUSH2 0x0fc5 00002834: JUMP 00002835: JUMPDEST 00002836: SWAP2 00002837: PUSH2 0x2843 0000283a: PUSH1 0x40 0000283c: MLOAD 0000283d: SWAP4 0000283e: DUP5 0000283f: PUSH2 0x0f95 00002842: JUMP 00002843: JUMPDEST 00002844: DUP3 00002845: MSTORE 00002846: RETURNDATASIZE 00002847: PUSH0 00002848: PUSH1 0x20 0000284a: DUP5 0000284b: ADD 0000284c: RETURNDATACOPY 0000284d: JUMP 0000284e: JUMPDEST 0000284f: PUSH1 0x60 00002851: SWAP1 00002852: JUMP 00002853: JUMPDEST 00002854: PUSH1 0x20 00002856: DUP2 00002857: DUP4 00002858: SUB 00002859: SLT 0000285a: PUSH2 0x0317 0000285d: JUMPI 0000285e: DUP1 0000285f: MLOAD 00002860: SWAP1 00002861: PUSH1 0x01 00002863: PUSH1 0x01 00002865: PUSH1 0x40 00002867: SHL 00002868: SUB 00002869: DUP3 0000286a: GT 0000286b: PUSH2 0x0317 0000286e: JUMPI 0000286f: ADD 00002870: DUP2 00002871: PUSH1 0x1f 00002873: DUP3 00002874: ADD 00002875: SLT 00002876: ISZERO 00002877: PUSH2 0x0317 0000287a: JUMPI 0000287b: DUP1 0000287c: MLOAD 0000287d: PUSH2 0x2885 00002880: DUP2 00002881: PUSH2 0x0fc5 00002884: JUMP 00002885: JUMPDEST 00002886: SWAP3 00002887: PUSH2 0x2893 0000288a: PUSH1 0x40 0000288c: MLOAD 0000288d: SWAP5 0000288e: DUP6 0000288f: PUSH2 0x0f95 00002892: JUMP 00002893: JUMPDEST 00002894: DUP2 00002895: DUP5 00002896: MSTORE 00002897: PUSH1 0x20 00002899: DUP3 0000289a: DUP5 0000289b: ADD 0000289c: ADD 0000289d: GT 0000289e: PUSH2 0x0317 000028a1: JUMPI 000028a2: PUSH2 0x0682 000028a5: SWAP2 000028a6: PUSH1 0x20 000028a8: DUP1 000028a9: DUP6 000028aa: ADD 000028ab: SWAP2 000028ac: ADD 000028ad: PUSH2 0x1b8f 000028b0: JUMP 000028b1: JUMPDEST 000028b2: DUP1 000028b3: MLOAD 000028b4: DUP3 000028b5: LT 000028b6: ISZERO 000028b7: PUSH2 0x2812 000028ba: JUMPI 000028bb: PUSH1 0x20 000028bd: SWAP2 000028be: PUSH1 0x05 000028c0: SHL 000028c1: ADD 000028c2: ADD 000028c3: SWAP1 000028c4: JUMP 000028c5: JUMPDEST 000028c6: SWAP2 000028c7: SWAP1 000028c8: SWAP2 000028c9: PUSH2 0x28d1 000028cc: DUP4 000028cd: PUSH2 0x279e 000028d0: JUMP 000028d1: JUMPDEST 000028d2: SWAP3 000028d3: PUSH0 000028d4: JUMPDEST 000028d5: DUP2 000028d6: DUP2 000028d7: LT 000028d8: PUSH2 0x28e0 000028db: JUMPI 000028dc: POP 000028dd: POP 000028de: POP 000028df: JUMP 000028e0: JUMPDEST 000028e1: PUSH0 000028e2: DUP1 000028e3: PUSH2 0x28ed 000028e6: DUP4 000028e7: DUP6 000028e8: DUP8 000028e9: PUSH2 0x27fb 000028ec: JUMP 000028ed: JUMPDEST 000028ee: PUSH1 0x40 000028f0: SWAP4 000028f1: SWAP2 000028f2: PUSH2 0x28ff 000028f5: DUP6 000028f6: MLOAD 000028f7: DUP1 000028f8: SWAP4 000028f9: DUP2 000028fa: SWAP4 000028fb: PUSH2 0x2817 000028fe: JUMP 000028ff: JUMPDEST 00002900: SUB 00002901: SWAP1 00002902: ADDRESS 00002903: GAS 00002904: DELEGATECALL 00002905: SWAP1 00002906: PUSH2 0x290d 00002909: PUSH2 0x2824 0000290c: JUMP 0000290d: JUMPDEST 0000290e: SWAP2 0000290f: ISZERO 00002910: PUSH2 0x2934 00002913: JUMPI 00002914: POP 00002915: SWAP1 00002916: PUSH1 0x01 00002918: SWAP2 00002919: PUSH2 0x2922 0000291c: DUP3 0000291d: DUP9 0000291e: PUSH2 0x28b1 00002921: JUMP 00002922: JUMPDEST 00002923: MSTORE 00002924: PUSH2 0x292d 00002927: DUP2 00002928: DUP8 00002929: PUSH2 0x28b1 0000292c: JUMP 0000292d: JUMPDEST 0000292e: POP 0000292f: ADD 00002930: PUSH2 0x28d4 00002933: JUMP 00002934: JUMPDEST 00002935: SWAP1 00002936: PUSH1 0x44 00002938: DUP2 00002939: MLOAD 0000293a: LT 0000293b: PUSH2 0x0317 0000293e: JUMPI 0000293f: PUSH2 0x296e 00002942: PUSH2 0x2959 00002945: PUSH1 0x04 00002947: SWAP3 00002948: DUP4 00002949: DUP2 0000294a: ADD 0000294b: MLOAD 0000294c: PUSH1 0x24 0000294e: DUP1 0000294f: SWAP2 00002950: DUP4 00002951: ADD 00002952: ADD 00002953: SWAP2 00002954: ADD 00002955: PUSH2 0x2853 00002958: JUMP 00002959: JUMPDEST 0000295a: SWAP3 0000295b: MLOAD 0000295c: PUSH3 0x461bcd 00002960: PUSH1 0xe5 00002962: SHL 00002963: DUP2 00002964: MSTORE 00002965: SWAP3 00002966: DUP4 00002967: SWAP3 00002968: DUP4 00002969: ADD 0000296a: PUSH2 0x1c9d 0000296d: JUMP 0000296e: JUMPDEST 0000296f: SUB 00002970: SWAP1 00002971: REVERT 00002972: JUMPDEST 00002973: PUSH1 0xd2 00002975: SLOAD 00002976: PUSH1 0x01 00002978: PUSH1 0x01 0000297a: PUSH1 0xa0 0000297c: SHL 0000297d: SUB 0000297e: AND 0000297f: DUP1 00002980: PUSH2 0x0682 00002983: JUMPI 00002984: POP 00002985: PUSH32 0x00000000000000000000000075ab6ddce07556639333d3df1eaa684f5735223e 000029a6: SWAP1 000029a7: JUMP 000029a8: JUMPDEST 000029a9: PUSH2 0x29b1 000029ac: CALLER 000029ad: PUSH2 0x310f 000029b0: JUMP 000029b1: JUMPDEST 000029b2: PUSH2 0x2020 000029b5: CALLVALUE 000029b6: CALLER 000029b7: PUSH2 0x41f9 000029ba: JUMP 000029bb: JUMPDEST 000029bc: PUSH1 0x40 000029be: MLOAD 000029bf: PUSH4 0x752a536d 000029c4: PUSH1 0xe0 000029c6: SHL 000029c7: DUP2 000029c8: MSTORE 000029c9: PUSH1 0x20 000029cb: DUP2 000029cc: PUSH1 0x04 000029ce: DUP2 000029cf: PUSH32 0x0000000000000000000000002a261e60fb14586b474c208b1b7ac6d0f5000306 000029f0: PUSH1 0x01 000029f2: PUSH1 0x01 000029f4: PUSH1 0xa0 000029f6: SHL 000029f7: SUB 000029f8: AND 000029f9: GAS 000029fa: STATICCALL 000029fb: SWAP1 000029fc: DUP2 000029fd: ISZERO 000029fe: PUSH2 0x0561 00002a01: JUMPI 00002a02: PUSH0 00002a03: SWAP2 00002a04: PUSH2 0x2a51 00002a07: JUMPI 00002a08: JUMPDEST 00002a09: POP 00002a0a: PUSH1 0x20 00002a0c: DUP3 00002a0d: ADD 00002a0e: SWAP2 00002a0f: PUSH1 0x01 00002a11: PUSH1 0x01 00002a13: PUSH1 0x80 00002a15: SHL 00002a16: SUB 00002a17: SWAP2 00002a18: DUP3 00002a19: DUP5 00002a1a: MLOAD 00002a1b: AND 00002a1c: SWAP2 00002a1d: DUP3 00002a1e: DUP3 00002a1f: EQ 00002a20: PUSH2 0x2a4a 00002a23: JUMPI 00002a24: DUP4 00002a25: PUSH2 0x2a3d 00002a28: PUSH2 0x2a38 00002a2b: PUSH2 0x2a45 00002a2e: SWAP6 00002a2f: DUP6 00002a30: DUP5 00002a31: DUP7 00002a32: MLOAD 00002a33: AND 00002a34: PUSH2 0x2b5e 00002a37: JUMP 00002a38: JUMPDEST 00002a39: PUSH2 0x3ff4 00002a3c: JUMP 00002a3d: JUMPDEST 00002a3e: AND 00002a3f: SWAP1 00002a40: MSTORE 00002a41: PUSH2 0x3ff4 00002a44: JUMP 00002a45: JUMPDEST 00002a46: AND 00002a47: SWAP1 00002a48: MSTORE 00002a49: JUMP 00002a4a: JUMPDEST 00002a4b: POP 00002a4c: POP 00002a4d: POP 00002a4e: POP 00002a4f: POP 00002a50: JUMP 00002a51: JUMPDEST 00002a52: PUSH2 0x2a6a 00002a55: SWAP2 00002a56: POP 00002a57: PUSH1 0x20 00002a59: RETURNDATASIZE 00002a5a: PUSH1 0x20 00002a5c: GT 00002a5d: PUSH2 0x055a 00002a60: JUMPI 00002a61: PUSH2 0x054c 00002a64: DUP2 00002a65: DUP4 00002a66: PUSH2 0x0f95 00002a69: JUMP 00002a6a: JUMPDEST 00002a6b: PUSH0 00002a6c: PUSH2 0x2a08 00002a6f: JUMP 00002a70: JUMPDEST 00002a71: SWAP1 00002a72: DUP1 00002a73: DUP3 00002a74: MUL 00002a75: SWAP1 00002a76: PUSH0 00002a77: NOT 00002a78: DUP2 00002a79: DUP5 00002a7a: MULMOD 00002a7b: SWAP1 00002a7c: DUP3 00002a7d: DUP1 00002a7e: DUP4 00002a7f: LT 00002a80: SWAP3 00002a81: SUB 00002a82: SWAP2 00002a83: DUP1 00002a84: DUP4 00002a85: SUB 00002a86: SWAP3 00002a87: EQ 00002a88: PUSH2 0x2adf 00002a8b: JUMPI 00002a8c: PUSH2 0x2710 00002a8f: SWAP1 00002a90: DUP3 00002a91: DUP3 00002a92: GT 00002a93: ISZERO 00002a94: PUSH2 0x2acd 00002a97: JUMPI 00002a98: PUSH32 0xbc01a36e2eb1c432ca57a786c226809d495182a9930be0ded288ce703afb7e91 00002ab9: SWAP5 00002aba: MULMOD 00002abb: SWAP1 00002abc: DUP3 00002abd: DUP3 00002abe: GT 00002abf: SWAP1 00002ac0: SUB 00002ac1: PUSH1 0xfc 00002ac3: SHL 00002ac4: SWAP2 00002ac5: SUB 00002ac6: PUSH1 0x04 00002ac8: SHR 00002ac9: OR 00002aca: MUL 00002acb: SWAP1 00002acc: JUMP 00002acd: JUMPDEST 00002ace: PUSH1 0x40 00002ad0: MLOAD 00002ad1: PUSH4 0x227bc153 00002ad6: PUSH1 0xe0 00002ad8: SHL 00002ad9: DUP2 00002ada: MSTORE 00002adb: PUSH1 0x04 00002add: SWAP1 00002ade: REVERT 00002adf: JUMPDEST 00002ae0: POP 00002ae1: POP 00002ae2: PUSH2 0x2710 00002ae5: SWAP2 00002ae6: POP 00002ae7: DIV 00002ae8: SWAP1 00002ae9: JUMP 00002aea: JUMPDEST 00002aeb: SWAP1 00002aec: DUP1 00002aed: DUP3 00002aee: MUL 00002aef: SWAP1 00002af0: PUSH0 00002af1: NOT 00002af2: DUP2 00002af3: DUP5 00002af4: MULMOD 00002af5: SWAP1 00002af6: DUP3 00002af7: DUP1 00002af8: DUP4 00002af9: LT 00002afa: SWAP3 00002afb: SUB 00002afc: SWAP2 00002afd: DUP1 00002afe: DUP4 00002aff: SUB 00002b00: SWAP3 00002b01: EQ 00002b02: PUSH2 0x2b4d 00002b05: JUMPI 00002b06: PUSH8 0x0de0b6b3a7640000 00002b0f: SWAP1 00002b10: DUP3 00002b11: DUP3 00002b12: GT 00002b13: ISZERO 00002b14: PUSH2 0x2acd 00002b17: JUMPI 00002b18: PUSH32 0xaccb18165bd6fe31ae1cf318dc5b51eee0e1ba569b88cd74c1773b91fac10669 00002b39: SWAP5 00002b3a: MULMOD 00002b3b: SWAP1 00002b3c: DUP3 00002b3d: DUP3 00002b3e: GT 00002b3f: SWAP1 00002b40: SUB 00002b41: PUSH1 0xee 00002b43: SHL 00002b44: SWAP2 00002b45: SUB 00002b46: PUSH1 0x12 00002b48: SHR 00002b49: OR 00002b4a: MUL 00002b4b: SWAP1 00002b4c: JUMP 00002b4d: JUMPDEST 00002b4e: POP 00002b4f: POP 00002b50: PUSH8 0x0de0b6b3a7640000 00002b59: SWAP2 00002b5a: POP 00002b5b: DIV 00002b5c: SWAP1 00002b5d: JUMP 00002b5e: JUMPDEST 00002b5f: SWAP1 00002b60: SWAP2 00002b61: DUP3 00002b62: DUP3 00002b63: MUL 00002b64: SWAP2 00002b65: PUSH0 00002b66: NOT 00002b67: DUP5 00002b68: DUP3 00002b69: MULMOD 00002b6a: SWAP4 00002b6b: DUP4 00002b6c: DUP1 00002b6d: DUP7 00002b6e: LT 00002b6f: SWAP6 00002b70: SUB 00002b71: SWAP5 00002b72: DUP1 00002b73: DUP7 00002b74: SUB 00002b75: SWAP6 00002b76: EQ 00002b77: PUSH2 0x2bd1 00002b7a: JUMPI 00002b7b: DUP5 00002b7c: DUP4 00002b7d: GT 00002b7e: ISZERO 00002b7f: PUSH2 0x2acd 00002b82: JUMPI 00002b83: DUP3 00002b84: SWAP2 00002b85: MULMOD 00002b86: DUP2 00002b87: PUSH0 00002b88: SUB 00002b89: DUP3 00002b8a: AND 00002b8b: DUP1 00002b8c: SWAP3 00002b8d: DIV 00002b8e: PUSH1 0x02 00002b90: DUP1 00002b91: DUP3 00002b92: PUSH1 0x03 00002b94: MUL 00002b95: XOR 00002b96: DUP1 00002b97: DUP4 00002b98: MUL 00002b99: DUP3 00002b9a: SUB 00002b9b: MUL 00002b9c: DUP1 00002b9d: DUP4 00002b9e: MUL 00002b9f: DUP3 00002ba0: SUB 00002ba1: MUL 00002ba2: DUP1 00002ba3: DUP4 00002ba4: MUL 00002ba5: DUP3 00002ba6: SUB 00002ba7: MUL 00002ba8: DUP1 00002ba9: DUP4 00002baa: MUL 00002bab: DUP3 00002bac: SUB 00002bad: MUL 00002bae: DUP1 00002baf: DUP4 00002bb0: MUL 00002bb1: DUP3 00002bb2: SUB 00002bb3: MUL 00002bb4: DUP1 00002bb5: SWAP3 00002bb6: MUL 00002bb7: SWAP1 00002bb8: SUB 00002bb9: MUL 00002bba: SWAP4 00002bbb: PUSH1 0x01 00002bbd: DUP4 00002bbe: DUP1 00002bbf: PUSH0 00002bc0: SUB 00002bc1: DIV 00002bc2: ADD 00002bc3: SWAP1 00002bc4: DUP5 00002bc5: DUP4 00002bc6: GT 00002bc7: SWAP1 00002bc8: SUB 00002bc9: MUL 00002bca: SWAP3 00002bcb: SUB 00002bcc: DIV 00002bcd: OR 00002bce: MUL 00002bcf: SWAP1 00002bd0: JUMP 00002bd1: JUMPDEST 00002bd2: POP 00002bd3: POP 00002bd4: SWAP1 00002bd5: PUSH2 0x0682 00002bd8: SWAP3 00002bd9: POP 00002bda: PUSH2 0x2742 00002bdd: JUMP 00002bde: JUMPDEST 00002bdf: SWAP1 00002be0: DUP2 00002be1: PUSH1 0x60 00002be3: SWAP2 00002be4: SUB 00002be5: SLT 00002be6: PUSH2 0x0317 00002be9: JUMPI 00002bea: DUP1 00002beb: MLOAD 00002bec: SWAP2 00002bed: PUSH1 0x40 00002bef: PUSH1 0x20 00002bf1: DUP4 00002bf2: ADD 00002bf3: MLOAD 00002bf4: SWAP3 00002bf5: ADD 00002bf6: MLOAD 00002bf7: PUSH2 0x0682 00002bfa: DUP2 00002bfb: PUSH2 0x0584 00002bfe: JUMP 00002bff: JUMPDEST 00002c00: DUP2 00002c01: DUP4 00002c02: MSTORE 00002c03: SWAP1 00002c04: SWAP2 00002c05: PUSH1 0x01 00002c07: PUSH1 0x01 00002c09: PUSH1 0xfb 00002c0b: SHL 00002c0c: SUB 00002c0d: DUP4 00002c0e: GT 00002c0f: PUSH2 0x0317 00002c12: JUMPI 00002c13: PUSH1 0x20 00002c15: SWAP3 00002c16: PUSH1 0x05 00002c18: SHL 00002c19: DUP1 00002c1a: SWAP3 00002c1b: DUP5 00002c1c: DUP4 00002c1d: ADD 00002c1e: CALLDATACOPY 00002c1f: ADD 00002c20: ADD 00002c21: SWAP1 00002c22: JUMP 00002c23: JUMPDEST 00002c24: SWAP1 00002c25: PUSH1 0x20 00002c27: DUP3 00002c28: MSTORE 00002c29: DUP1 00002c2a: CALLDATALOAD 00002c2b: PUSH1 0x20 00002c2d: DUP4 00002c2e: ADD 00002c2f: MSTORE 00002c30: PUSH1 0x20 00002c32: DUP2 00002c33: ADD 00002c34: CALLDATALOAD 00002c35: DUP1 00002c36: PUSH1 0x13 00002c38: SIGNEXTEND 00002c39: DUP1 00002c3a: SWAP2 00002c3b: SUB 00002c3c: PUSH2 0x0317 00002c3f: JUMPI 00002c40: PUSH1 0x40 00002c42: DUP4 00002c43: ADD 00002c44: MSTORE 00002c45: PUSH1 0x40 00002c47: DUP2 00002c48: ADD 00002c49: CALLDATALOAD 00002c4a: PUSH2 0x2c52 00002c4d: DUP2 00002c4e: PUSH2 0x0306 00002c51: JUMP 00002c52: JUMPDEST 00002c53: PUSH1 0x01 00002c55: PUSH1 0x01 00002c57: PUSH1 0xa0 00002c59: SHL 00002c5a: SUB 00002c5b: AND 00002c5c: PUSH1 0x60 00002c5e: DUP4 00002c5f: DUP2 00002c60: ADD 00002c61: SWAP2 00002c62: SWAP1 00002c63: SWAP2 00002c64: MSTORE 00002c65: DUP2 00002c66: ADD 00002c67: CALLDATALOAD 00002c68: CALLDATASIZE 00002c69: DUP3 00002c6a: SWAP1 00002c6b: SUB 00002c6c: PUSH1 0x1e 00002c6e: NOT 00002c6f: ADD 00002c70: DUP2 00002c71: SLT 00002c72: ISZERO 00002c73: PUSH2 0x0317 00002c76: JUMPI 00002c77: ADD 00002c78: PUSH1 0x20 00002c7a: DUP2 00002c7b: CALLDATALOAD 00002c7c: SWAP2 00002c7d: ADD 00002c7e: SWAP1 00002c7f: PUSH1 0x01 00002c81: PUSH1 0x01 00002c83: PUSH1 0x40 00002c85: SHL 00002c86: SUB 00002c87: DUP2 00002c88: GT 00002c89: PUSH2 0x0317 00002c8c: JUMPI 00002c8d: DUP1 00002c8e: PUSH1 0x05 00002c90: SHL 00002c91: CALLDATASIZE 00002c92: SUB 00002c93: DUP3 00002c94: SGT 00002c95: PUSH2 0x0317 00002c98: JUMPI 00002c99: PUSH1 0xa0 00002c9b: DUP4 00002c9c: PUSH1 0x80 00002c9e: DUP1 00002c9f: PUSH2 0x0682 00002ca2: SWAP7 00002ca3: ADD 00002ca4: MSTORE 00002ca5: ADD 00002ca6: SWAP2 00002ca7: PUSH2 0x2bff 00002caa: JUMP 00002cab: JUMPDEST 00002cac: SWAP2 00002cad: SWAP1 00002cae: SWAP2 00002caf: PUSH0 00002cb0: DUP4 00002cb1: DUP3 00002cb2: ADD 00002cb3: SWAP4 00002cb4: DUP5 00002cb5: SLT 00002cb6: SWAP2 00002cb7: SLT 00002cb8: SWAP1 00002cb9: DUP1 00002cba: ISZERO 00002cbb: DUP3 00002cbc: AND 00002cbd: SWAP2 00002cbe: ISZERO 00002cbf: AND 00002cc0: OR 00002cc1: PUSH2 0x1f0a 00002cc4: JUMPI 00002cc5: JUMP 00002cc6: JUMPDEST 00002cc7: PUSH1 0x40 00002cc9: MLOAD 00002cca: PUSH4 0x25f56f11 00002ccf: PUSH1 0xe0 00002cd1: SHL 00002cd2: DUP2 00002cd3: MSTORE 00002cd4: PUSH1 0x01 00002cd6: PUSH1 0x01 00002cd8: PUSH1 0xa0 00002cda: SHL 00002cdb: SUB 00002cdc: SWAP3 00002cdd: SWAP2 00002cde: PUSH1 0x60 00002ce0: SWAP1 00002ce1: DUP3 00002ce2: SWAP1 00002ce3: DUP2 00002ce4: SWAP1 00002ce5: PUSH2 0x2cf1 00002ce8: SWAP1 00002ce9: PUSH1 0x04 00002ceb: DUP4 00002cec: ADD 00002ced: PUSH2 0x2c23 00002cf0: JUMP 00002cf1: JUMPDEST 00002cf2: SUB 00002cf3: DUP2 00002cf4: PUSH0 00002cf5: DUP8 00002cf6: PUSH32 0x0000000000000000000000006b5815467da09daa7dc83db21c9239d98bb487b5 00002d17: AND 00002d18: GAS 00002d19: CALL 00002d1a: SWAP3 00002d1b: DUP4 00002d1c: ISZERO 00002d1d: PUSH2 0x0561 00002d20: JUMPI 00002d21: PUSH0 00002d22: SWAP2 00002d23: PUSH0 00002d24: SWAP1 00002d25: PUSH0 00002d26: SWAP6 00002d27: PUSH2 0x2e17 00002d2a: JUMPI 00002d2b: JUMPDEST 00002d2c: POP 00002d2d: DUP5 00002d2e: ISZERO 00002d2f: PUSH2 0x2dc4 00002d32: JUMPI 00002d33: DUP2 00002d34: PUSH2 0x2d3b 00002d37: PUSH2 0x227e 00002d3a: JUMP 00002d3b: JUMPDEST 00002d3c: AND 00002d3d: SWAP2 00002d3e: PUSH32 0x00000000000000000000000048319f97e5da1233c21c48b80097c0fb7a20ff86 00002d5f: AND 00002d60: DUP3 00002d61: EQ 00002d62: PUSH2 0x2dbd 00002d65: JUMPI 00002d66: POP 00002d67: SWAP1 00002d68: PUSH1 0x20 00002d6a: PUSH0 00002d6b: SWAP3 00002d6c: PUSH1 0x04 00002d6e: PUSH1 0x40 00002d70: MLOAD 00002d71: DUP1 00002d72: SWAP6 00002d73: DUP2 00002d74: SWAP4 00002d75: PUSH4 0x4641257d 00002d7a: PUSH1 0xe0 00002d7c: SHL 00002d7d: DUP4 00002d7e: MSTORE 00002d7f: GAS 00002d80: CALL 00002d81: SWAP1 00002d82: DUP2 00002d83: ISZERO 00002d84: PUSH2 0x0561 00002d87: JUMPI 00002d88: PUSH2 0x2d98 00002d8b: SWAP3 00002d8c: PUSH0 00002d8d: SWAP3 00002d8e: PUSH2 0x2d9c 00002d91: JUMPI 00002d92: JUMPDEST 00002d93: POP 00002d94: PUSH2 0x2cab 00002d97: JUMP 00002d98: JUMPDEST 00002d99: SWAP2 00002d9a: SWAP1 00002d9b: JUMP 00002d9c: JUMPDEST 00002d9d: PUSH2 0x2db6 00002da0: SWAP2 00002da1: SWAP3 00002da2: POP 00002da3: PUSH1 0x20 00002da5: RETURNDATASIZE 00002da6: PUSH1 0x20 00002da8: GT 00002da9: PUSH2 0x055a 00002dac: JUMPI 00002dad: PUSH2 0x054c 00002db0: DUP2 00002db1: DUP4 00002db2: PUSH2 0x0f95 00002db5: JUMP 00002db6: JUMPDEST 00002db7: SWAP1 00002db8: PUSH0 00002db9: PUSH2 0x2d92 00002dbc: JUMP 00002dbd: JUMPDEST 00002dbe: SWAP1 00002dbf: DUP2 00002dc0: PUSH2 0x2dca 00002dc3: JUMPI 00002dc4: JUMPDEST 00002dc5: POP 00002dc6: POP 00002dc7: SWAP2 00002dc8: SWAP1 00002dc9: JUMP 00002dca: JUMPDEST 00002dcb: DUP1 00002dcc: EXTCODESIZE 00002dcd: ISZERO 00002dce: PUSH2 0x0317 00002dd1: JUMPI 00002dd2: PUSH1 0x40 00002dd4: MLOAD 00002dd5: PUSH4 0x6ee31931 00002dda: PUSH1 0xe1 00002ddc: SHL 00002ddd: DUP2 00002dde: MSTORE 00002ddf: PUSH1 0x04 00002de1: DUP2 00002de2: ADD 00002de3: SWAP3 00002de4: SWAP1 00002de5: SWAP3 00002de6: MSTORE 00002de7: PUSH0 00002de8: SWAP1 00002de9: DUP3 00002dea: SWAP1 00002deb: PUSH1 0x24 00002ded: SWAP1 00002dee: DUP3 00002def: SWAP1 00002df0: DUP5 00002df1: SWAP1 00002df2: GAS 00002df3: CALL 00002df4: DUP1 00002df5: ISZERO 00002df6: PUSH2 0x0561 00002df9: JUMPI 00002dfa: PUSH2 0x2e04 00002dfd: JUMPI 00002dfe: JUMPDEST 00002dff: DUP1 00002e00: PUSH2 0x2dc4 00002e03: JUMP 00002e04: JUMPDEST 00002e05: DUP1 00002e06: PUSH2 0x0b74 00002e09: PUSH2 0x2e11 00002e0c: SWAP3 00002e0d: PUSH2 0x0f4c 00002e10: JUMP 00002e11: JUMPDEST 00002e12: PUSH0 00002e13: PUSH2 0x2dfe 00002e16: JUMP 00002e17: JUMPDEST 00002e18: SWAP2 00002e19: SWAP5 00002e1a: POP 00002e1b: POP 00002e1c: PUSH2 0x2e3d 00002e1f: SWAP2 00002e20: POP 00002e21: PUSH1 0x60 00002e23: RETURNDATASIZE 00002e24: PUSH1 0x60 00002e26: GT 00002e27: PUSH2 0x2e45 00002e2a: JUMPI 00002e2b: JUMPDEST 00002e2c: PUSH2 0x2e35 00002e2f: DUP2 00002e30: DUP4 00002e31: PUSH2 0x0f95 00002e34: JUMP 00002e35: JUMPDEST 00002e36: DUP2 00002e37: ADD 00002e38: SWAP1 00002e39: PUSH2 0x2bde 00002e3c: JUMP 00002e3d: JUMPDEST 00002e3e: SWAP4 00002e3f: SWAP1 00002e40: PUSH0 00002e41: PUSH2 0x2d2b 00002e44: JUMP 00002e45: JUMPDEST 00002e46: POP 00002e47: RETURNDATASIZE 00002e48: PUSH2 0x2e2b 00002e4b: JUMP 00002e4c: JUMPDEST 00002e4d: PUSH1 0x01 00002e4f: PUSH1 0xff 00002e51: SHL 00002e52: DUP2 00002e53: EQ 00002e54: PUSH2 0x1f0a 00002e57: JUMPI 00002e58: PUSH0 00002e59: SUB 00002e5a: SWAP1 00002e5b: JUMP 00002e5c: JUMPDEST 00002e5d: DUP1 00002e5e: ISZERO 00002e5f: PUSH2 0x2020 00002e62: JUMPI 00002e63: PUSH2 0x2e71 00002e66: PUSH2 0x178d 00002e69: PUSH1 0x98 00002e6b: SLOAD 00002e6c: PUSH1 0x80 00002e6e: SHR 00002e6f: SWAP1 00002e70: JUMP 00002e71: JUMPDEST 00002e72: PUSH0 00002e73: DUP3 00002e74: SLT 00002e75: PUSH2 0x2f43 00002e78: JUMPI 00002e79: DUP2 00002e7a: PUSH2 0x2e82 00002e7d: SWAP2 00002e7e: PUSH2 0x2474 00002e81: JUMP 00002e82: JUMPDEST 00002e83: SWAP1 00002e84: PUSH2 0x2e8f 00002e87: PUSH2 0x0a17 00002e8a: DUP4 00002e8b: PUSH2 0x3ff4 00002e8e: JUMP 00002e8f: JUMPDEST 00002e90: PUSH2 0x2ea4 00002e93: PUSH1 0x65 00002e95: SLOAD 00002e96: SWAP2 00002e97: PUSH2 0xffff 00002e9a: DUP4 00002e9b: PUSH1 0xa0 00002e9d: SHR 00002e9e: AND 00002e9f: SWAP1 00002ea0: PUSH2 0x2a70 00002ea3: JUMP 00002ea4: JUMPDEST 00002ea5: DUP1 00002ea6: ISZERO 00002ea7: PUSH2 0x1ffa 00002eaa: JUMPI 00002eab: DUP1 00002eac: PUSH32 0x555ee6b2ef9506d870f386c067e47d3689435330b012ad263d8cc35318686547 00002ecd: SWAP4 00002ece: PUSH2 0x2ee2 00002ed1: PUSH2 0x178d 00002ed4: PUSH1 0x98 00002ed6: SLOAD 00002ed7: PUSH1 0x01 00002ed9: PUSH1 0x01 00002edb: PUSH1 0x80 00002edd: SHL 00002ede: SUB 00002edf: AND 00002ee0: SWAP1 00002ee1: JUMP 00002ee2: JUMPDEST 00002ee3: DUP1 00002ee4: PUSH2 0x2f2d 00002ee7: JUMPI 00002ee8: POP 00002ee9: POP 00002eea: PUSH2 0x2f28 00002eed: SWAP1 00002eee: SWAP3 00002eef: JUMPDEST 00002ef0: PUSH1 0x01 00002ef2: PUSH1 0x01 00002ef4: PUSH1 0xa0 00002ef6: SHL 00002ef7: SUB 00002ef8: AND 00002ef9: SWAP2 00002efa: PUSH2 0x2f03 00002efd: DUP5 00002efe: DUP5 00002eff: PUSH2 0x436d 00002f02: JUMP 00002f03: JUMPDEST 00002f04: PUSH1 0x40 00002f06: MLOAD 00002f07: SWAP4 00002f08: DUP5 00002f09: SWAP4 00002f0a: DUP5 00002f0b: PUSH1 0x40 00002f0d: SWAP2 00002f0e: SWAP5 00002f0f: SWAP4 00002f10: SWAP3 00002f11: PUSH1 0x60 00002f13: DUP3 00002f14: ADD 00002f15: SWAP6 00002f16: PUSH1 0x01 00002f18: DUP1 00002f19: PUSH1 0xa0 00002f1b: SHL 00002f1c: SUB 00002f1d: AND 00002f1e: DUP3 00002f1f: MSTORE 00002f20: PUSH1 0x20 00002f22: DUP3 00002f23: ADD 00002f24: MSTORE 00002f25: ADD 00002f26: MSTORE 00002f27: JUMP 00002f28: JUMPDEST 00002f29: SUB 00002f2a: SWAP1 00002f2b: LOG1 00002f2c: JUMP 00002f2d: JUMPDEST 00002f2e: PUSH2 0x2f28 00002f31: SWAP3 00002f32: PUSH2 0x2f3d 00002f35: SWAP3 00002f36: SUB 00002f37: SWAP1 00002f38: DUP5 00002f39: PUSH2 0x2b5e 00002f3c: JUMP 00002f3d: JUMPDEST 00002f3e: SWAP3 00002f3f: PUSH2 0x2eef 00002f42: JUMP 00002f43: JUMPDEST 00002f44: SWAP1 00002f45: PUSH2 0x2f4d 00002f48: SWAP1 00002f49: PUSH2 0x2e4c 00002f4c: JUMP 00002f4d: JUMPDEST 00002f4e: PUSH2 0x2f62 00002f51: PUSH2 0x178d 00002f54: PUSH1 0x9e 00002f56: SLOAD 00002f57: PUSH1 0x01 00002f59: PUSH1 0x01 00002f5b: PUSH1 0x80 00002f5d: SHL 00002f5e: SUB 00002f5f: AND 00002f60: SWAP1 00002f61: JUMP 00002f62: JUMPDEST 00002f63: DUP1 00002f64: PUSH2 0x2f82 00002f67: JUMPI 00002f68: JUMPDEST 00002f69: POP 00002f6a: DUP1 00002f6b: PUSH2 0x2f72 00002f6e: JUMPI 00002f6f: POP 00002f70: POP 00002f71: JUMP 00002f72: JUMPDEST 00002f73: PUSH2 0x2a38 00002f76: PUSH2 0x0a17 00002f79: SWAP2 00002f7a: PUSH2 0x0fc3 00002f7d: SWAP4 00002f7e: PUSH2 0x2555 00002f81: JUMP 00002f82: JUMPDEST 00002f83: SWAP1 00002f84: PUSH2 0x2fdd 00002f87: PUSH32 0x3623a54e8078be0d90ecfbef82da6a31ff3e6be8aa1718e7a7f3d0d33ff1d32a 00002fa8: SWAP2 00002fa9: PUSH2 0x2fcd 00002fac: PUSH2 0x18c8 00002faf: PUSH2 0x2fc2 00002fb2: PUSH2 0x2fbb 00002fb5: DUP9 00002fb6: DUP9 00002fb7: PUSH2 0x2474 00002fba: JUMP 00002fbb: JUMPDEST 00002fbc: DUP8 00002fbd: DUP6 00002fbe: PUSH2 0x2b5e 00002fc1: JUMP 00002fc2: JUMPDEST 00002fc3: DUP1 00002fc4: DUP1 00002fc5: SWAP5 00002fc6: SUB 00002fc7: SWAP7 00002fc8: SUB 00002fc9: PUSH2 0x3ff4 00002fcc: JUMP 00002fcd: JUMPDEST 00002fce: PUSH1 0x40 00002fd0: MLOAD 00002fd1: SWAP1 00002fd2: DUP2 00002fd3: MSTORE 00002fd4: SWAP1 00002fd5: DUP2 00002fd6: SWAP1 00002fd7: PUSH1 0x20 00002fd9: DUP3 00002fda: ADD 00002fdb: SWAP1 00002fdc: JUMP 00002fdd: JUMPDEST 00002fde: SUB 00002fdf: SWAP1 00002fe0: LOG1 00002fe1: PUSH0 00002fe2: PUSH2 0x2f68 00002fe5: JUMP 00002fe6: JUMPDEST 00002fe7: PUSH1 0x99 00002fe9: SLOAD 00002fea: SWAP1 00002feb: PUSH1 0x01 00002fed: PUSH1 0x01 00002fef: PUSH1 0x80 00002ff1: SHL 00002ff2: SUB 00002ff3: DUP3 00002ff4: AND 00002ff5: SWAP2 00002ff6: DUP3 00002ff7: ISZERO 00002ff8: PUSH2 0x3109 00002ffb: JUMPI 00002ffc: PUSH1 0x80 00002ffe: SHR 00002fff: PUSH2 0x301a 00003002: PUSH2 0x300b 00003005: DUP3 00003006: SELFBALANCE 00003007: PUSH2 0x2555 0000300a: JUMP 0000300b: JUMPDEST 0000300c: PUSH2 0x3014 0000300f: DUP6 00003010: PUSH2 0x1f41 00003013: JUMP 00003014: JUMPDEST 00003015: SWAP1 00003016: PUSH2 0x43b9 00003019: JUMP 0000301a: JUMPDEST 0000301b: SWAP1 0000301c: DUP2 0000301d: ISZERO 0000301e: PUSH2 0x3102 00003021: JUMPI 00003022: PUSH2 0x302a 00003025: DUP3 00003026: PUSH2 0x40c1 00003029: JUMP 0000302a: JUMPDEST 0000302b: SWAP4 0000302c: DUP5 0000302d: ISZERO 0000302e: PUSH2 0x30fa 00003031: JUMPI 00003032: DUP3 00003033: PUSH2 0x3077 00003036: PUSH2 0x17bd 00003039: PUSH2 0x2a38 0000303c: PUSH2 0x0fc3 0000303f: SWAP7 00003040: PUSH2 0x0a17 00003043: SWAP7 00003044: PUSH2 0x3072 00003047: PUSH2 0x3056 0000304a: PUSH2 0x2a38 0000304d: DUP14 0000304e: PUSH2 0x30ef 00003051: SWAP11 00003052: PUSH2 0x2555 00003055: JUMP 00003056: JUMPDEST 00003057: PUSH1 0x01 00003059: PUSH1 0x01 0000305b: PUSH1 0x80 0000305d: SHL 0000305e: SUB 0000305f: AND 00003060: PUSH1 0x01 00003062: PUSH1 0x01 00003064: PUSH1 0x80 00003066: SHL 00003067: SUB 00003068: NOT 00003069: PUSH1 0x99 0000306b: SLOAD 0000306c: AND 0000306d: OR 0000306e: PUSH1 0x99 00003070: SSTORE 00003071: JUMP 00003072: JUMPDEST 00003073: PUSH2 0x2474 00003076: JUMP 00003077: JUMPDEST 00003078: PUSH2 0x3081 0000307b: DUP2 0000307c: DUP8 0000307d: PUSH2 0x4429 00003080: JUMP 00003081: JUMPDEST 00003082: PUSH1 0x40 00003084: DUP1 00003085: MLOAD 00003086: DUP8 00003087: DUP2 00003088: MSTORE 00003089: PUSH1 0x20 0000308b: DUP2 0000308c: ADD 0000308d: DUP4 0000308e: SWAP1 0000308f: MSTORE 00003090: PUSH32 0x624ea167e477f9d39f7f4094b9dfe2e6346eb4a7aada54338db51abd554c4b9f 000030b1: SWAP2 000030b2: SWAP1 000030b3: LOG1 000030b4: PUSH2 0x2a38 000030b7: PUSH2 0x30d3 000030ba: PUSH2 0x30c2 000030bd: DUP9 000030be: PUSH2 0x3ff4 000030c1: JUMP 000030c2: JUMPDEST 000030c3: PUSH1 0x98 000030c5: SLOAD 000030c6: PUSH1 0x01 000030c8: PUSH1 0x01 000030ca: PUSH1 0x80 000030cc: SHL 000030cd: SUB 000030ce: AND 000030cf: PUSH2 0x1ef1 000030d2: JUMP 000030d3: JUMPDEST 000030d4: PUSH1 0x01 000030d6: PUSH1 0x01 000030d8: PUSH1 0x80 000030da: SHL 000030db: SUB 000030dc: AND 000030dd: PUSH1 0x01 000030df: PUSH1 0x01 000030e1: PUSH1 0x80 000030e3: SHL 000030e4: SUB 000030e5: NOT 000030e6: PUSH1 0x98 000030e8: SLOAD 000030e9: AND 000030ea: OR 000030eb: PUSH1 0x98 000030ed: SSTORE 000030ee: JUMP 000030ef: JUMPDEST 000030f0: PUSH1 0x98 000030f2: SLOAD 000030f3: PUSH1 0x80 000030f5: SHR 000030f6: PUSH2 0x1ef1 000030f9: JUMP 000030fa: JUMPDEST 000030fb: POP 000030fc: PUSH0 000030fd: SWAP4 000030fe: POP 000030ff: POP 00003100: POP 00003101: JUMP 00003102: JUMPDEST 00003103: POP 00003104: PUSH0 00003105: SWAP3 00003106: POP 00003107: POP 00003108: JUMP 00003109: JUMPDEST 0000310a: POP 0000310b: PUSH0 0000310c: SWAP2 0000310d: POP 0000310e: JUMP 0000310f: JUMPDEST 00003110: PUSH1 0x01 00003112: PUSH1 0x01 00003114: PUSH1 0xa0 00003116: SHL 00003117: SUB 00003118: AND 00003119: PUSH0 0000311a: SWAP1 0000311b: DUP2 0000311c: MSTORE 0000311d: PUSH2 0x0202 00003120: PUSH1 0x20 00003122: MSTORE 00003123: PUSH1 0x40 00003125: SWAP1 00003126: KECCAK256 00003127: SLOAD 00003128: PUSH1 0xff 0000312a: AND 0000312b: ISZERO 0000312c: PUSH2 0x0e39 0000312f: JUMPI 00003130: JUMP 00003131: JUMPDEST 00003132: SWAP2 00003133: SWAP1 00003134: SWAP2 00003135: PUSH1 0x01 00003137: PUSH1 0x01 00003139: PUSH1 0x80 0000313b: SHL 0000313c: SUB 0000313d: DUP1 0000313e: DUP1 0000313f: SWAP5 00003140: AND 00003141: SWAP2 00003142: AND 00003143: ADD 00003144: SWAP2 00003145: DUP3 00003146: GT 00003147: PUSH2 0x1f0a 0000314a: JUMPI 0000314b: JUMP 0000314c: JUMPDEST 0000314d: MLOAD 0000314e: SWAP1 0000314f: PUSH1 0x01 00003151: PUSH1 0x01 00003153: PUSH1 0x40 00003155: SHL 00003156: SUB 00003157: DUP3 00003158: AND 00003159: DUP3 0000315a: SUB 0000315b: PUSH2 0x0317 0000315e: JUMPI 0000315f: JUMP 00003160: JUMPDEST 00003161: SWAP1 00003162: DUP2 00003163: PUSH1 0x60 00003165: SWAP2 00003166: SUB 00003167: SLT 00003168: PUSH2 0x0317 0000316b: JUMPI 0000316c: PUSH2 0x2391 0000316f: PUSH1 0x40 00003171: DUP1 00003172: MLOAD 00003173: SWAP3 00003174: PUSH2 0x317c 00003177: DUP5 00003178: PUSH2 0x0f5f 0000317b: JUMP 0000317c: JUMPDEST 0000317d: DUP1 0000317e: MLOAD 0000317f: PUSH2 0x3187 00003182: DUP2 00003183: PUSH2 0x03b6 00003186: JUMP 00003187: JUMPDEST 00003188: DUP5 00003189: MSTORE 0000318a: PUSH2 0x3195 0000318d: PUSH1 0x20 0000318f: DUP3 00003190: ADD 00003191: PUSH2 0x314c 00003194: JUMP 00003195: JUMPDEST 00003196: PUSH1 0x20 00003198: DUP6 00003199: ADD 0000319a: MSTORE 0000319b: ADD 0000319c: PUSH2 0x314c 0000319f: JUMP 000031a0: JUMPDEST 000031a1: SWAP3 000031a2: SWAP1 000031a3: PUSH1 0x01 000031a5: PUSH1 0x01 000031a7: PUSH1 0xa0 000031a9: SHL 000031aa: SUB 000031ab: SWAP1 000031ac: DUP2 000031ad: DUP2 000031ae: AND 000031af: ISZERO 000031b0: PUSH2 0x0b80 000031b3: JUMPI 000031b4: PUSH2 0x31bb 000031b7: PUSH2 0x3ac3 000031ba: JUMP 000031bb: JUMPDEST 000031bc: DUP2 000031bd: PUSH32 0x0000000000000000000000002a261e60fb14586b474c208b1b7ac6d0f5000306 000031de: AND 000031df: SWAP1 000031e0: DUP2 000031e1: EXTCODESIZE 000031e2: ISZERO 000031e3: PUSH2 0x0317 000031e6: JUMPI 000031e7: PUSH1 0x40 000031e9: SWAP5 000031ea: DUP6 000031eb: MLOAD 000031ec: SWAP4 000031ed: PUSH4 0x1d8557d7 000031f2: PUSH1 0xe0 000031f4: SHL 000031f5: DUP6 000031f6: MSTORE 000031f7: PUSH1 0x04 000031f9: SWAP5 000031fa: PUSH0 000031fb: DUP2 000031fc: DUP8 000031fd: DUP2 000031fe: DUP4 000031ff: DUP10 00003200: GAS 00003201: CALL 00003202: DUP1 00003203: ISZERO 00003204: PUSH2 0x0561 00003207: JUMPI 00003208: PUSH2 0x34a6 0000320b: JUMPI 0000320c: JUMPDEST 0000320d: POP 0000320e: PUSH1 0x01 00003210: PUSH1 0x01 00003212: PUSH1 0xa0 00003214: SHL 00003215: SUB 00003216: DUP9 00003217: AND 00003218: PUSH0 00003219: SWAP1 0000321a: DUP2 0000321b: MSTORE 0000321c: PUSH2 0x0137 0000321f: PUSH1 0x20 00003221: MSTORE 00003222: PUSH1 0x40 00003224: SWAP1 00003225: KECCAK256 00003226: PUSH2 0x322e 00003229: SWAP1 0000322a: PUSH2 0x1eb8 0000322d: JUMP 0000322e: JUMPDEST 0000322f: SWAP1 00003230: PUSH1 0x01 00003232: PUSH1 0x01 00003234: PUSH1 0x80 00003236: SHL 00003237: SUB 00003238: PUSH2 0x3248 0000323b: DUP4 0000323c: MLOAD 0000323d: PUSH1 0x01 0000323f: PUSH1 0x01 00003241: PUSH1 0x80 00003243: SHL 00003244: SUB 00003245: AND 00003246: SWAP1 00003247: JUMP 00003248: JUMPDEST 00003249: AND 0000324a: ISZERO 0000324b: PUSH2 0x3496 0000324e: JUMPI 0000324f: PUSH2 0x3257 00003252: DUP3 00003253: PUSH2 0x29bb 00003256: JUMP 00003257: JUMPDEST 00003258: DUP8 00003259: MLOAD 0000325a: PUSH4 0xe48a5f7b 0000325f: PUSH1 0xe0 00003261: SHL 00003262: DUP2 00003263: MSTORE 00003264: ADDRESS 00003265: DUP8 00003266: DUP3 00003267: ADD 00003268: SWAP1 00003269: DUP2 0000326a: MSTORE 0000326b: SWAP1 0000326c: SWAP2 0000326d: PUSH1 0x60 0000326f: SWAP2 00003270: DUP4 00003271: SWAP2 00003272: SWAP1 00003273: DUP3 00003274: SWAP1 00003275: DUP2 00003276: SWAP1 00003277: PUSH1 0x20 00003279: ADD 0000327a: SUB 0000327b: SWAP2 0000327c: PUSH32 0x000000000000000000000000287d1e2a8de183a8bf8f2b09fa1340fbd766eb59 0000329d: AND 0000329e: GAS 0000329f: STATICCALL 000032a0: DUP1 000032a1: ISZERO 000032a2: PUSH2 0x0561 000032a5: JUMPI 000032a6: PUSH2 0x3477 000032a9: JUMPI 000032aa: JUMPDEST 000032ab: POP 000032ac: DUP7 000032ad: MLOAD 000032ae: SWAP4 000032af: PUSH4 0x03d1689d 000032b4: PUSH1 0xe1 000032b6: SHL 000032b7: SWAP8 000032b8: DUP9 000032b9: DUP7 000032ba: MSTORE 000032bb: PUSH1 0x20 000032bd: SWAP2 000032be: DUP3 000032bf: DUP8 000032c0: DUP1 000032c1: PUSH2 0x32d1 000032c4: DUP9 000032c5: DUP13 000032c6: DUP4 000032c7: ADD 000032c8: SWAP2 000032c9: SWAP1 000032ca: PUSH1 0x20 000032cc: DUP4 000032cd: ADD 000032ce: SWAP3 000032cf: MSTORE 000032d0: JUMP 000032d1: JUMPDEST 000032d2: SUB 000032d3: DUP2 000032d4: DUP5 000032d5: GAS 000032d6: STATICCALL 000032d7: SWAP7 000032d8: DUP8 000032d9: ISZERO 000032da: PUSH2 0x0561 000032dd: JUMPI 000032de: PUSH0 000032df: SWAP8 000032e0: PUSH2 0x3458 000032e3: JUMPI 000032e4: JUMPDEST 000032e5: POP 000032e6: DUP7 000032e7: SWAP10 000032e8: PUSH2 0x3304 000032eb: PUSH2 0x08a3 000032ee: DUP14 000032ef: PUSH1 0x01 000032f1: DUP1 000032f2: PUSH1 0xa0 000032f4: SHL 000032f5: SUB 000032f6: AND 000032f7: PUSH0 000032f8: MSTORE 000032f9: PUSH1 0x9c 000032fb: PUSH1 0x20 000032fd: MSTORE 000032fe: PUSH1 0x40 00003300: PUSH0 00003301: KECCAK256 00003302: SWAP1 00003303: JUMP 00003304: JUMPDEST 00003305: DUP9 00003306: GT 00003307: DUP1 00003308: ISZERO 00003309: PUSH2 0x3448 0000330c: JUMPI 0000330d: JUMPDEST 0000330e: PUSH2 0x3438 00003311: JUMPI 00003312: SWAP1 00003313: DUP4 00003314: PUSH2 0x334a 00003317: SWAP3 00003318: PUSH2 0x3328 0000331b: DUP8 0000331c: MLOAD 0000331d: PUSH1 0x01 0000331f: PUSH1 0x01 00003321: PUSH1 0x80 00003323: SHL 00003324: SUB 00003325: AND 00003326: SWAP1 00003327: JUMP 00003328: JUMPDEST 00003329: SWAP1 0000332a: DUP6 0000332b: MLOAD 0000332c: SWAP5 0000332d: DUP6 0000332e: SWAP3 0000332f: DUP4 00003330: SWAP3 00003331: DUP4 00003332: MSTORE 00003333: DUP14 00003334: DUP4 00003335: ADD 00003336: SWAP2 00003337: SWAP1 00003338: SWAP2 00003339: PUSH1 0x01 0000333b: PUSH1 0x01 0000333d: PUSH1 0x80 0000333f: SHL 00003340: SUB 00003341: PUSH1 0x20 00003343: DUP3 00003344: ADD 00003345: SWAP4 00003346: AND 00003347: SWAP1 00003348: MSTORE 00003349: JUMP 0000334a: JUMPDEST 0000334b: SUB 0000334c: DUP2 0000334d: DUP5 0000334e: GAS 0000334f: STATICCALL 00003350: SWAP9 00003351: DUP10 00003352: ISZERO 00003353: PUSH2 0x0561 00003356: JUMPI 00003357: PUSH0 00003358: DUP6 00003359: SWAP5 0000335a: DUP9 0000335b: SWAP5 0000335c: PUSH2 0x338f 0000335f: SWAP13 00003360: PUSH2 0x341b 00003363: JUMPI 00003364: JUMPDEST 00003365: POP 00003366: MLOAD 00003367: PUSH4 0x3b9e9f01 0000336c: PUSH1 0xe2 0000336e: SHL 0000336f: DUP2 00003370: MSTORE 00003371: CALLER 00003372: SWAP3 00003373: DUP2 00003374: ADD 00003375: SWAP3 00003376: DUP4 00003377: MSTORE 00003378: PUSH1 0x20 0000337a: DUP4 0000337b: ADD 0000337c: SWAP5 0000337d: SWAP1 0000337e: SWAP5 0000337f: MSTORE 00003380: SWAP3 00003381: SWAP10 00003382: DUP11 00003383: SWAP4 00003384: DUP5 00003385: SWAP3 00003386: SWAP1 00003387: SWAP2 00003388: DUP4 00003389: SWAP2 0000338a: PUSH1 0x40 0000338c: ADD 0000338d: SWAP1 0000338e: JUMP 0000338f: JUMPDEST 00003390: SUB 00003391: SWAP3 00003392: GAS 00003393: CALL 00003394: SWAP6 00003395: DUP7 00003396: ISZERO 00003397: PUSH2 0x0561 0000339a: JUMPI 0000339b: PUSH2 0x09be 0000339e: PUSH2 0x33d6 000033a1: SWAP5 000033a2: PUSH2 0x33b9 000033a5: SWAP4 000033a6: PUSH2 0x04ad 000033a9: SWAP4 000033aa: PUSH2 0x0fc3 000033ad: SWAP11 000033ae: PUSH2 0x33fd 000033b1: JUMPI 000033b2: JUMPDEST 000033b3: POP 000033b4: POP 000033b5: PUSH2 0x3ff4 000033b8: JUMP 000033b9: JUMPDEST 000033ba: PUSH1 0x01 000033bc: PUSH1 0x01 000033be: PUSH1 0xa0 000033c0: SHL 000033c1: SUB 000033c2: DUP9 000033c3: AND 000033c4: PUSH0 000033c5: SWAP1 000033c6: DUP2 000033c7: MSTORE 000033c8: PUSH2 0x0137 000033cb: PUSH1 0x20 000033cd: MSTORE 000033ce: PUSH1 0x40 000033d0: SWAP1 000033d1: KECCAK256 000033d2: PUSH2 0x1f0f 000033d5: JUMP 000033d6: JUMPDEST 000033d7: PUSH2 0x33f8 000033da: PUSH2 0x33e2 000033dd: DUP4 000033de: PUSH2 0x40c1 000033e1: JUMP 000033e2: JUMPDEST 000033e3: DUP1 000033e4: SWAP8 000033e5: PUSH2 0x33f3 000033e8: PUSH2 0x0a17 000033eb: PUSH2 0x0a04 000033ee: DUP8 000033ef: PUSH2 0x3ff4 000033f2: JUMP 000033f3: JUMPDEST 000033f4: PUSH2 0x458a 000033f7: JUMP 000033f8: JUMPDEST 000033f9: PUSH2 0x4027 000033fc: JUMP 000033fd: JUMPDEST 000033fe: DUP2 000033ff: PUSH2 0x3413 00003402: SWAP3 00003403: SWAP1 00003404: RETURNDATASIZE 00003405: LT 00003406: PUSH2 0x055a 00003409: JUMPI 0000340a: PUSH2 0x054c 0000340d: DUP2 0000340e: DUP4 0000340f: PUSH2 0x0f95 00003412: JUMP 00003413: JUMPDEST 00003414: POP 00003415: PUSH0 00003416: DUP1 00003417: PUSH2 0x33b2 0000341a: JUMP 0000341b: JUMPDEST 0000341c: PUSH2 0x3431 0000341f: SWAP1 00003420: DUP8 00003421: RETURNDATASIZE 00003422: DUP10 00003423: GT 00003424: PUSH2 0x055a 00003427: JUMPI 00003428: PUSH2 0x054c 0000342b: DUP2 0000342c: DUP4 0000342d: PUSH2 0x0f95 00003430: JUMP 00003431: JUMPDEST 00003432: POP 00003433: PUSH0 00003434: PUSH2 0x3364 00003437: JUMP 00003438: JUMPDEST 00003439: DUP3 0000343a: MLOAD 0000343b: PUSH4 0xefda1a27 00003440: PUSH1 0xe0 00003442: SHL 00003443: DUP2 00003444: MSTORE 00003445: DUP10 00003446: SWAP1 00003447: REVERT 00003448: JUMPDEST 00003449: POP 0000344a: PUSH2 0x3451 0000344d: PUSH2 0x2248 00003450: JUMP 00003451: JUMPDEST 00003452: DUP9 00003453: GT 00003454: PUSH2 0x330d 00003457: JUMP 00003458: JUMPDEST 00003459: PUSH2 0x3470 0000345c: SWAP2 0000345d: SWAP8 0000345e: POP 0000345f: DUP4 00003460: RETURNDATASIZE 00003461: DUP6 00003462: GT 00003463: PUSH2 0x055a 00003466: JUMPI 00003467: PUSH2 0x054c 0000346a: DUP2 0000346b: DUP4 0000346c: PUSH2 0x0f95 0000346f: JUMP 00003470: JUMPDEST 00003471: SWAP6 00003472: PUSH0 00003473: PUSH2 0x32e4 00003476: JUMP 00003477: JUMPDEST 00003478: PUSH2 0x348f 0000347b: SWAP1 0000347c: PUSH1 0x60 0000347e: RETURNDATASIZE 0000347f: PUSH1 0x60 00003481: GT 00003482: PUSH2 0x0b50 00003485: JUMPI 00003486: PUSH2 0x0b41 00003489: DUP2 0000348a: DUP4 0000348b: PUSH2 0x0f95 0000348e: JUMP 0000348f: JUMPDEST 00003490: POP 00003491: PUSH0 00003492: PUSH2 0x32aa 00003495: JUMP 00003496: JUMPDEST 00003497: DUP8 00003498: MLOAD 00003499: PUSH4 0x673f032f 0000349e: PUSH1 0xe1 000034a0: SHL 000034a1: DUP2 000034a2: MSTORE 000034a3: DUP7 000034a4: SWAP1 000034a5: REVERT 000034a6: JUMPDEST 000034a7: DUP1 000034a8: PUSH2 0x0b74 000034ab: PUSH2 0x34b3 000034ae: SWAP3 000034af: PUSH2 0x0f4c 000034b2: JUMP 000034b3: JUMPDEST 000034b4: PUSH0 000034b5: PUSH2 0x320c 000034b8: JUMP 000034b9: JUMPDEST 000034ba: PUSH1 0x40 000034bc: MLOAD 000034bd: PUSH4 0xe48a5f7b 000034c2: PUSH1 0xe0 000034c4: SHL 000034c5: DUP2 000034c6: MSTORE 000034c7: ADDRESS 000034c8: PUSH1 0x04 000034ca: DUP3 000034cb: ADD 000034cc: MSTORE 000034cd: PUSH1 0x01 000034cf: PUSH1 0x01 000034d1: PUSH1 0xa0 000034d3: SHL 000034d4: SUB 000034d5: PUSH1 0x60 000034d7: DUP3 000034d8: PUSH1 0x24 000034da: DUP2 000034db: PUSH32 0x000000000000000000000000287d1e2a8de183a8bf8f2b09fa1340fbd766eb59 000034fc: DUP6 000034fd: AND 000034fe: GAS 000034ff: STATICCALL 00003500: DUP1 00003501: ISZERO 00003502: PUSH2 0x0561 00003505: JUMPI 00003506: PUSH2 0x3554 00003509: SWAP4 0000350a: PUSH1 0x01 0000350c: PUSH1 0x01 0000350e: PUSH1 0x40 00003510: SHL 00003511: SUB 00003512: PUSH2 0x087e 00003515: PUSH1 0x40 00003517: PUSH2 0x3533 0000351a: SWAP5 0000351b: PUSH1 0x20 0000351d: SWAP8 0000351e: PUSH0 0000351f: SWAP2 00003520: PUSH2 0x35a4 00003523: JUMPI 00003524: JUMPDEST 00003525: POP 00003526: ADD 00003527: MLOAD 00003528: PUSH1 0x01 0000352a: PUSH1 0x01 0000352c: PUSH1 0x40 0000352e: SHL 0000352f: SUB 00003530: AND 00003531: SWAP1 00003532: JUMP 00003533: JUMPDEST 00003534: SWAP1 00003535: PUSH1 0x40 00003537: MLOAD 00003538: DUP1 00003539: DUP1 0000353a: SWAP6 0000353b: DUP2 0000353c: SWAP5 0000353d: PUSH4 0x63737ac9 00003542: PUSH1 0xe1 00003544: SHL 00003545: DUP4 00003546: MSTORE 00003547: PUSH1 0x04 00003549: DUP4 0000354a: ADD 0000354b: SWAP2 0000354c: SWAP1 0000354d: PUSH1 0x20 0000354f: DUP4 00003550: ADD 00003551: SWAP3 00003552: MSTORE 00003553: JUMP 00003554: JUMPDEST 00003555: SUB 00003556: SWAP2 00003557: PUSH32 0x0000000000000000000000002a261e60fb14586b474c208b1b7ac6d0f5000306 00003578: AND 00003579: GAS 0000357a: STATICCALL 0000357b: SWAP1 0000357c: DUP2 0000357d: ISZERO 0000357e: PUSH2 0x0561 00003581: JUMPI 00003582: PUSH0 00003583: SWAP2 00003584: PUSH2 0x358b 00003587: JUMPI 00003588: POP 00003589: SWAP1 0000358a: JUMP 0000358b: JUMPDEST 0000358c: PUSH2 0x0682 0000358f: SWAP2 00003590: POP 00003591: PUSH1 0x20 00003593: RETURNDATASIZE 00003594: PUSH1 0x20 00003596: GT 00003597: PUSH2 0x055a 0000359a: JUMPI 0000359b: PUSH2 0x054c 0000359e: DUP2 0000359f: DUP4 000035a0: PUSH2 0x0f95 000035a3: JUMP 000035a4: JUMPDEST 000035a5: PUSH2 0x35bd 000035a8: SWAP2 000035a9: POP 000035aa: PUSH1 0x60 000035ac: RETURNDATASIZE 000035ad: PUSH1 0x60 000035af: GT 000035b0: PUSH2 0x0b50 000035b3: JUMPI 000035b4: PUSH2 0x0b41 000035b7: DUP2 000035b8: DUP4 000035b9: PUSH2 0x0f95 000035bc: JUMP 000035bd: JUMPDEST 000035be: PUSH0 000035bf: PUSH2 0x3524 000035c2: JUMP 000035c3: JUMPDEST 000035c4: PUSH2 0x35cb 000035c7: PUSH2 0x45d7 000035ca: JUMP 000035cb: JUMPDEST 000035cc: PUSH2 0x35d3 000035cf: PUSH2 0x45d7 000035d2: JUMP 000035d3: JUMPDEST 000035d4: PUSH2 0x35db 000035d7: PUSH2 0x47c5 000035da: JUMP 000035db: JUMPDEST 000035dc: PUSH1 0x01 000035de: PUSH1 0x01 000035e0: PUSH1 0x80 000035e2: SHL 000035e3: SUB 000035e4: PUSH1 0x99 000035e6: SLOAD 000035e7: AND 000035e8: DUP2 000035e9: ADD 000035ea: DUP1 000035eb: SWAP2 000035ec: GT 000035ed: PUSH2 0x1f0a 000035f0: JUMPI 000035f1: PUSH1 0x9f 000035f3: SSTORE 000035f4: PUSH2 0x35fb 000035f7: PUSH2 0x45d7 000035fa: JUMP 000035fb: JUMPDEST 000035fc: PUSH2 0x360b 000035ff: PUSH2 0x3606 00003602: PUSH2 0x483e 00003605: JUMP 00003606: JUMPDEST 00003607: PUSH1 0xd3 00003609: SSTORE 0000360a: JUMP 0000360b: JUMPDEST 0000360c: PUSH1 0xd0 0000360e: SLOAD 0000360f: PUSH1 0xd1 00003611: SLOAD 00003612: PUSH1 0xd2 00003614: SLOAD 00003615: SWAP1 00003616: SWAP2 00003617: SWAP1 00003618: PUSH1 0x01 0000361a: PUSH1 0x01 0000361c: PUSH1 0xa0 0000361e: SHL 0000361f: SUB 00003620: PUSH32 0x00000000000000000000000075ab6ddce07556639333d3df1eaa684f5735223e 00003641: DUP2 00003642: AND 00003643: SWAP2 00003644: AND 00003645: SWAP1 00003646: DUP1 00003647: EXTCODESIZE 00003648: ISZERO 00003649: PUSH2 0x0317 0000364c: JUMPI 0000364d: PUSH1 0x40 0000364f: MLOAD 00003650: PUSH4 0x76615a55 00003655: PUSH1 0xe0 00003657: SHL 00003658: DUP2 00003659: MSTORE 0000365a: PUSH1 0x04 0000365c: DUP2 0000365d: ADD 0000365e: SWAP4 0000365f: SWAP1 00003660: SWAP4 00003661: MSTORE 00003662: PUSH1 0x24 00003664: DUP4 00003665: ADD 00003666: SWAP4 00003667: SWAP1 00003668: SWAP4 00003669: MSTORE 0000366a: PUSH1 0x01 0000366c: PUSH1 0x01 0000366e: PUSH1 0xa0 00003670: SHL 00003671: SUB 00003672: AND 00003673: PUSH1 0x44 00003675: DUP3 00003676: ADD 00003677: MSTORE 00003678: SWAP1 00003679: PUSH0 0000367a: SWAP1 0000367b: DUP3 0000367c: SWAP1 0000367d: PUSH1 0x64 0000367f: SWAP1 00003680: DUP3 00003681: SWAP1 00003682: DUP5 00003683: SWAP1 00003684: GAS 00003685: CALL 00003686: DUP1 00003687: ISZERO 00003688: PUSH2 0x0561 0000368b: JUMPI 0000368c: PUSH2 0x36b5 0000368f: JUMPI 00003690: JUMPDEST 00003691: POP 00003692: PUSH2 0x369a 00003695: PUSH0 00003696: PUSH1 0xd0 00003698: SSTORE 00003699: JUMP 0000369a: JUMPDEST 0000369b: PUSH2 0x36a3 0000369e: PUSH0 0000369f: PUSH1 0xd1 000036a1: SSTORE 000036a2: JUMP 000036a3: JUMPDEST 000036a4: PUSH1 0xd2 000036a6: DUP1 000036a7: SLOAD 000036a8: PUSH1 0x01 000036aa: PUSH1 0x01 000036ac: PUSH1 0xa0 000036ae: SHL 000036af: SUB 000036b0: NOT 000036b1: AND 000036b2: SWAP1 000036b3: SSTORE 000036b4: JUMP 000036b5: JUMPDEST 000036b6: DUP1 000036b7: PUSH2 0x0b74 000036ba: PUSH2 0x36c2 000036bd: SWAP3 000036be: PUSH2 0x0f4c 000036c1: JUMP 000036c2: JUMPDEST 000036c3: PUSH0 000036c4: PUSH2 0x3690 000036c7: JUMP 000036c8: JUMPDEST 000036c9: PUSH2 0x36d0 000036cc: PUSH2 0x45d7 000036cf: JUMP 000036d0: JUMPDEST 000036d1: PUSH1 0x40 000036d3: DUP4 000036d4: ADD 000036d5: MLOAD 000036d6: PUSH2 0x36dd 000036d9: PUSH2 0x45d7 000036dc: JUMP 000036dd: JUMPDEST 000036de: PUSH1 0x01 000036e0: PUSH1 0x01 000036e2: PUSH1 0xa0 000036e4: SHL 000036e5: SUB 000036e6: DUP3 000036e7: AND 000036e8: DUP1 000036e9: ISZERO 000036ea: PUSH2 0x0b80 000036ed: JUMPI 000036ee: PUSH1 0x01 000036f0: PUSH1 0x01 000036f2: PUSH1 0x60 000036f4: SHL 000036f5: SUB 000036f6: PUSH1 0xa0 000036f8: SHL 000036f9: PUSH0 000036fa: SLOAD 000036fb: AND 000036fc: OR 000036fd: PUSH0 000036fe: SSTORE 000036ff: PUSH32 0x2013570c343af8ab14a9778150e381a0fda34ed6368127a95fd5e7210cbec5bf 00003720: PUSH1 0x40 00003722: MLOAD 00003723: PUSH1 0x20 00003725: DUP2 00003726: MSTORE 00003727: DUP1 00003728: PUSH2 0x3736 0000372b: CALLER 0000372c: SWAP5 0000372d: PUSH1 0x20 0000372f: DUP4 00003730: ADD 00003731: SWAP1 00003732: PUSH2 0x1bb0 00003735: JUMP 00003736: JUMPDEST 00003737: SUB 00003738: SWAP1 00003739: LOG2 0000373a: PUSH1 0x20 0000373c: DUP4 0000373d: ADD 0000373e: MLOAD 0000373f: SWAP3 00003740: PUSH2 0x3747 00003743: PUSH2 0x45d7 00003746: JUMP 00003747: JUMPDEST 00003748: PUSH2 0x2710 0000374b: PUSH2 0xffff 0000374e: DUP6 0000374f: AND 00003750: GT 00003751: PUSH2 0x379e 00003754: JUMPI 00003755: PUSH2 0x3796 00003758: SWAP4 00003759: PUSH2 0x3764 0000375c: PUSH2 0x3789 0000375f: SWAP4 00003760: PUSH2 0x4150 00003763: JUMP 00003764: JUMPDEST 00003765: PUSH1 0x65 00003767: DUP1 00003768: SLOAD 00003769: PUSH2 0xffff 0000376c: PUSH1 0xa0 0000376e: SHL 0000376f: NOT 00003770: AND 00003771: PUSH1 0xa0 00003773: SWAP3 00003774: SWAP1 00003775: SWAP3 00003776: SHL 00003777: PUSH2 0xffff 0000377a: PUSH1 0xa0 0000377c: SHL 0000377d: AND 0000377e: SWAP2 0000377f: SWAP1 00003780: SWAP2 00003781: OR 00003782: SWAP1 00003783: SSTORE 00003784: MLOAD 00003785: PUSH2 0x4618 00003788: JUMP 00003789: JUMPDEST 0000378a: PUSH2 0x3791 0000378d: PUSH2 0x4648 00003790: JUMP 00003791: JUMPDEST 00003792: PUSH2 0x466f 00003795: JUMP 00003796: JUMPDEST 00003797: PUSH2 0x0fc3 0000379a: PUSH2 0x469e 0000379d: JUMP 0000379e: JUMPDEST 0000379f: PUSH1 0x40 000037a1: MLOAD 000037a2: PUSH4 0x8a81d3b3 000037a7: PUSH1 0xe0 000037a9: SHL 000037aa: DUP2 000037ab: MSTORE 000037ac: PUSH1 0x04 000037ae: SWAP1 000037af: REVERT 000037b0: JUMPDEST 000037b1: PUSH2 0x0fc3 000037b4: SWAP1 000037b5: PUSH2 0x1e99 000037b8: PUSH2 0x45d7 000037bb: JUMP 000037bc: JUMPDEST 000037bd: PUSH1 0x01 000037bf: PUSH1 0x01 000037c1: PUSH1 0xa0 000037c3: SHL 000037c4: SUB 000037c5: PUSH32 0x00000000000000000000000081ab00dd782492d62105b8fa9b03e82d4b57798c 000037e6: DUP2 000037e7: AND 000037e8: ADDRESS 000037e9: DUP2 000037ea: EQ 000037eb: SWAP2 000037ec: DUP3 000037ed: ISZERO 000037ee: PUSH2 0x37fa 000037f1: JUMPI 000037f2: JUMPDEST 000037f3: POP 000037f4: POP 000037f5: PUSH2 0x12f3 000037f8: JUMPI 000037f9: JUMP 000037fa: JUMPDEST 000037fb: PUSH0 000037fc: DUP1 000037fd: MLOAD 000037fe: PUSH1 0x20 00003800: PUSH2 0x4b9c 00003803: DUP4 00003804: CODECOPY 00003805: DUP2 00003806: MLOAD 00003807: SWAP2 00003808: MSTORE 00003809: SLOAD 0000380a: AND 0000380b: EQ 0000380c: ISZERO 0000380d: SWAP1 0000380e: POP 0000380f: PUSH0 00003810: DUP1 00003811: PUSH2 0x37f2 00003814: JUMP 00003815: JUMPDEST 00003816: SWAP1 00003817: PUSH2 0x381e 0000381a: PUSH2 0x47c5 0000381d: JUMP 0000381e: JUMPDEST 0000381f: SWAP2 00003820: DUP3 00003821: ADD 00003822: DUP1 00003823: SWAP3 00003824: GT 00003825: PUSH2 0x1f0a 00003828: JUMPI 00003829: LT 0000382a: SWAP1 0000382b: JUMP 0000382c: JUMPDEST 0000382d: SELFBALANCE 0000382e: PUSH1 0x99 00003830: SLOAD 00003831: DUP1 00003832: PUSH1 0x80 00003834: SHR 00003835: DUP3 00003836: SUB 00003837: SWAP2 00003838: DUP3 00003839: GT 0000383a: PUSH2 0x1f0a 0000383d: JUMPI 0000383e: DUP2 0000383f: PUSH2 0x3851 00003842: PUSH1 0x01 00003844: PUSH1 0x01 00003846: PUSH1 0x80 00003848: SHL 00003849: SUB 0000384a: DUP1 0000384b: SWAP4 0000384c: AND 0000384d: PUSH2 0x1f41 00003850: JUMP 00003851: JUMPDEST 00003852: SWAP1 00003853: DUP2 00003854: PUSH2 0x3877 00003857: JUMPI 00003858: JUMPDEST 00003859: POP 0000385a: POP 0000385b: DUP2 0000385c: ISZERO 0000385d: PUSH2 0x2278 00003860: JUMPI 00003861: PUSH2 0x0682 00003864: SWAP2 00003865: PUSH2 0x3872 00003868: SWAP2 00003869: PUSH1 0x9e 0000386b: SLOAD 0000386c: AND 0000386d: SWAP1 0000386e: PUSH2 0x43b9 00003871: JUMP 00003872: JUMPDEST 00003873: PUSH2 0x4807 00003876: JUMP 00003877: JUMPDEST 00003878: SWAP2 00003879: SWAP3 0000387a: POP 0000387b: SWAP1 0000387c: DUP2 0000387d: DUP2 0000387e: GT 0000387f: ISZERO 00003880: PUSH2 0x388d 00003883: JUMPI 00003884: SUB 00003885: JUMPDEST 00003886: SWAP1 00003887: PUSH0 00003888: DUP1 00003889: PUSH2 0x3858 0000388c: JUMP 0000388d: JUMPDEST 0000388e: POP 0000388f: POP 00003890: PUSH0 00003891: PUSH2 0x3885 00003894: JUMP 00003895: JUMPDEST 00003896: PUSH0 00003897: SLOAD 00003898: PUSH1 0x01 0000389a: PUSH1 0x01 0000389c: PUSH1 0xa0 0000389e: SHL 0000389f: SUB 000038a0: AND 000038a1: CALLER 000038a2: SUB 000038a3: PUSH2 0x0e39 000038a6: JUMPI 000038a7: JUMP 000038a8: JUMPDEST 000038a9: PUSH2 0x38b0 000038ac: PUSH2 0x382c 000038af: JUMP 000038b0: JUMPDEST 000038b1: SWAP2 000038b2: PUSH1 0x9f 000038b4: SLOAD 000038b5: SWAP3 000038b6: DUP4 000038b7: ADD 000038b8: DUP1 000038b9: SWAP4 000038ba: GT 000038bb: PUSH2 0x1f0a 000038be: JUMPI 000038bf: DUP1 000038c0: DUP4 000038c1: GT 000038c2: ISZERO 000038c3: PUSH2 0x38fa 000038c6: JUMPI 000038c7: PUSH2 0x38d1 000038ca: SWAP3 000038cb: SUB 000038cc: SWAP1 000038cd: PUSH2 0x43b9 000038d0: JUMP 000038d1: JUMPDEST 000038d2: SWAP1 000038d3: PUSH1 0x9e 000038d5: SLOAD 000038d6: DUP1 000038d7: PUSH1 0x80 000038d9: SHR 000038da: DUP1 000038db: ISZERO 000038dc: PUSH0 000038dd: EQ 000038de: PUSH2 0x38e7 000038e1: JUMPI 000038e2: POP 000038e3: POP 000038e4: DUP2 000038e5: SWAP1 000038e6: JUMP 000038e7: JUMPDEST 000038e8: PUSH1 0x01 000038ea: PUSH1 0x01 000038ec: PUSH1 0x80 000038ee: SHL 000038ef: SUB 000038f0: PUSH2 0x0682 000038f3: SWAP3 000038f4: AND 000038f5: DUP5 000038f6: PUSH2 0x2b5e 000038f9: JUMP 000038fa: JUMPDEST 000038fb: POP 000038fc: POP 000038fd: POP 000038fe: PUSH0 000038ff: SWAP1 00003900: PUSH0 00003901: SWAP1 00003902: JUMP 00003903: JUMPDEST 00003904: SWAP1 00003905: PUSH1 0x40 00003907: MLOAD 00003908: PUSH2 0x3910 0000390b: DUP2 0000390c: PUSH2 0x0f2c 0000390f: JUMP 00003910: JUMPDEST 00003911: SWAP2 00003912: SLOAD 00003913: PUSH1 0x01 00003915: PUSH1 0x01 00003917: PUSH1 0xa0 00003919: SHL 0000391a: SUB 0000391b: DUP2 0000391c: AND 0000391d: DUP4 0000391e: MSTORE 0000391f: PUSH1 0xa0 00003921: SHR 00003922: PUSH1 0x20 00003924: DUP4 00003925: ADD 00003926: MSTORE 00003927: JUMP 00003928: JUMPDEST 00003929: PUSH1 0x9a 0000392b: SLOAD 0000392c: PUSH0 0000392d: SWAP5 0000392e: DUP6 0000392f: SWAP5 00003930: SWAP4 00003931: SWAP1 00003932: SWAP2 00003933: DUP1 00003934: DUP5 00003935: LT 00003936: DUP1 00003937: ISZERO 00003938: SWAP1 00003939: PUSH2 0x3abb 0000393c: JUMPI 0000393d: JUMPDEST 0000393e: PUSH2 0x3aae 00003941: JUMPI 00003942: DUP4 00003943: PUSH2 0x3a78 00003946: JUMPI 00003947: PUSH0 00003948: JUMPDEST 00003949: PUSH1 0x9a 0000394b: PUSH0 0000394c: MSTORE 0000394d: PUSH1 0x01 0000394f: PUSH1 0x01 00003951: PUSH1 0xa0 00003953: SHL 00003954: SUB 00003955: AND 00003956: PUSH2 0x396d 00003959: PUSH0 0000395a: DUP1 0000395b: MLOAD 0000395c: PUSH1 0x20 0000395e: PUSH2 0x4b7c 00003961: DUP4 00003962: CODECOPY 00003963: DUP2 00003964: MLOAD 00003965: SWAP2 00003966: MSTORE 00003967: DUP7 00003968: ADD 00003969: PUSH2 0x3903 0000396c: JUMP 0000396d: JUMPDEST 0000396e: DUP1 0000396f: MLOAD 00003970: SWAP1 00003971: SWAP8 00003972: SWAP1 00003973: PUSH2 0x3984 00003976: SWAP1 00003977: PUSH1 0x01 00003979: PUSH1 0x01 0000397b: PUSH1 0xa0 0000397d: SHL 0000397e: SUB 0000397f: AND 00003980: PUSH2 0x1289 00003983: JUMP 00003984: JUMPDEST 00003985: SWAP9 00003986: PUSH2 0x39a9 00003989: PUSH2 0x399d 0000398c: PUSH1 0x20 0000398e: DUP1 0000398f: SWAP12 00003990: ADD 00003991: MLOAD 00003992: PUSH1 0x01 00003994: PUSH1 0x01 00003996: PUSH1 0x60 00003998: SHL 00003999: SUB 0000399a: AND 0000399b: SWAP1 0000399c: JUMP 0000399d: JUMPDEST 0000399e: PUSH1 0x01 000039a0: PUSH1 0x01 000039a2: PUSH1 0x60 000039a4: SHL 000039a5: SUB 000039a6: AND 000039a7: SWAP1 000039a8: JUMP 000039a9: JUMPDEST 000039aa: SWAP5 000039ab: DUP4 000039ac: DUP2 000039ad: LT 000039ae: DUP1 000039af: ISZERO 000039b0: PUSH2 0x3a6e 000039b3: JUMPI 000039b4: JUMPDEST 000039b5: PUSH2 0x3a5c 000039b8: JUMPI 000039b9: SWAP2 000039ba: PUSH1 0x01 000039bc: SWAP4 000039bd: SWAP8 000039be: SWAP11 000039bf: SWAP6 000039c0: PUSH2 0x39d3 000039c3: PUSH2 0x39df 000039c6: SWAP4 000039c7: SWAP5 000039c8: DUP9 000039c9: SUB 000039ca: JUMPDEST 000039cb: DUP4 000039cc: DUP13 000039cd: SUB 000039ce: SWAP1 000039cf: PUSH2 0x43b9 000039d2: JUMP 000039d3: JUMPDEST 000039d4: DUP1 000039d5: SWAP3 000039d6: ADD 000039d7: SWAP9 000039d8: DUP8 000039d9: SUB 000039da: SWAP2 000039db: PUSH2 0x2b5e 000039de: JUMP 000039df: JUMPDEST 000039e0: ADD 000039e1: SWAP8 000039e2: ADD 000039e3: SWAP4 000039e4: DUP1 000039e5: DUP7 000039e6: GT 000039e7: DUP1 000039e8: ISZERO 000039e9: SWAP1 000039ea: PUSH2 0x3a52 000039ed: JUMPI 000039ee: JUMPDEST 000039ef: PUSH2 0x3a47 000039f2: JUMPI 000039f3: PUSH1 0x9a 000039f5: PUSH0 000039f6: MSTORE 000039f7: DUP3 000039f8: SWAP1 000039f9: PUSH2 0x3a10 000039fc: PUSH0 000039fd: DUP1 000039fe: MLOAD 000039ff: PUSH1 0x20 00003a01: PUSH2 0x4b7c 00003a04: DUP4 00003a05: CODECOPY 00003a06: DUP2 00003a07: MLOAD 00003a08: SWAP2 00003a09: MSTORE 00003a0a: DUP8 00003a0b: ADD 00003a0c: PUSH2 0x3903 00003a0f: JUMP 00003a10: JUMPDEST 00003a11: DUP1 00003a12: MLOAD 00003a13: SWAP1 00003a14: DUP10 00003a15: ADD 00003a16: MLOAD 00003a17: SWAP7 00003a18: SWAP10 00003a19: SWAP3 00003a1a: SWAP7 00003a1b: PUSH1 0x01 00003a1d: PUSH1 0x01 00003a1f: PUSH1 0xa0 00003a21: SHL 00003a22: SUB 00003a23: SWAP1 00003a24: SWAP2 00003a25: AND 00003a26: SWAP5 00003a27: PUSH1 0x01 00003a29: SWAP4 00003a2a: SWAP3 00003a2b: PUSH2 0x39df 00003a2e: SWAP3 00003a2f: SWAP1 00003a30: SWAP2 00003a31: PUSH1 0x01 00003a33: PUSH1 0x01 00003a35: PUSH1 0x60 00003a37: SHL 00003a38: SUB 00003a39: SWAP1 00003a3a: SWAP2 00003a3b: AND 00003a3c: SWAP1 00003a3d: PUSH2 0x39d3 00003a40: SWAP1 00003a41: DUP9 00003a42: SUB 00003a43: PUSH2 0x39ca 00003a46: JUMP 00003a47: JUMPDEST 00003a48: SWAP5 00003a49: POP 00003a4a: POP 00003a4b: POP 00003a4c: SWAP3 00003a4d: POP 00003a4e: POP 00003a4f: SWAP2 00003a50: SWAP1 00003a51: JUMP 00003a52: JUMPDEST 00003a53: POP 00003a54: DUP2 00003a55: DUP6 00003a56: LT 00003a57: ISZERO 00003a58: PUSH2 0x39ee 00003a5b: JUMP 00003a5c: JUMPDEST 00003a5d: PUSH1 0x40 00003a5f: MLOAD 00003a60: PUSH4 0xe8722f8f 00003a65: PUSH1 0xe0 00003a67: SHL 00003a68: DUP2 00003a69: MSTORE 00003a6a: PUSH1 0x04 00003a6c: SWAP1 00003a6d: REVERT 00003a6e: JUMPDEST 00003a6f: POP 00003a70: DUP1 00003a71: DUP12 00003a72: GT 00003a73: ISZERO 00003a74: PUSH2 0x39b4 00003a77: JUMP 00003a78: JUMPDEST 00003a79: PUSH1 0x9a 00003a7b: PUSH0 00003a7c: MSTORE 00003a7d: PUSH32 0x44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be3 00003a9e: DUP5 00003a9f: ADD 00003aa0: SLOAD 00003aa1: PUSH1 0x01 00003aa3: PUSH1 0x01 00003aa5: PUSH1 0xa0 00003aa7: SHL 00003aa8: SUB 00003aa9: AND 00003aaa: PUSH2 0x3948 00003aad: JUMP 00003aae: JUMPDEST 00003aaf: POP 00003ab0: POP 00003ab1: SWAP4 00003ab2: POP 00003ab3: POP 00003ab4: POP 00003ab5: POP 00003ab6: PUSH0 00003ab7: SWAP1 00003ab8: PUSH0 00003ab9: SWAP1 00003aba: JUMP 00003abb: JUMPDEST 00003abc: POP 00003abd: DUP5 00003abe: ISZERO 00003abf: PUSH2 0x393d 00003ac2: JUMP 00003ac3: JUMPDEST 00003ac4: PUSH1 0x40 00003ac6: MLOAD 00003ac7: PUSH4 0x3eb1acf7 00003acc: PUSH1 0xe1 00003ace: SHL 00003acf: DUP2 00003ad0: MSTORE 00003ad1: ADDRESS 00003ad2: PUSH1 0x04 00003ad4: DUP3 00003ad5: ADD 00003ad6: MSTORE 00003ad7: PUSH1 0x20 00003ad9: DUP2 00003ada: PUSH1 0x24 00003adc: DUP2 00003add: PUSH32 0x0000000000000000000000006b5815467da09daa7dc83db21c9239d98bb487b5 00003afe: PUSH1 0x01 00003b00: PUSH1 0x01 00003b02: PUSH1 0xa0 00003b04: SHL 00003b05: SUB 00003b06: AND 00003b07: GAS 00003b08: STATICCALL 00003b09: SWAP1 00003b0a: DUP2 00003b0b: ISZERO 00003b0c: PUSH2 0x0561 00003b0f: JUMPI 00003b10: PUSH0 00003b11: SWAP2 00003b12: PUSH2 0x3b2f 00003b15: JUMPI 00003b16: JUMPDEST 00003b17: POP 00003b18: PUSH2 0x3b1d 00003b1b: JUMPI 00003b1c: JUMP 00003b1d: JUMPDEST 00003b1e: PUSH1 0x40 00003b20: MLOAD 00003b21: PUSH4 0xe7757151 00003b26: PUSH1 0xe0 00003b28: SHL 00003b29: DUP2 00003b2a: MSTORE 00003b2b: PUSH1 0x04 00003b2d: SWAP1 00003b2e: REVERT 00003b2f: JUMPDEST 00003b30: PUSH2 0x3b48 00003b33: SWAP2 00003b34: POP 00003b35: PUSH1 0x20 00003b37: RETURNDATASIZE 00003b38: PUSH1 0x20 00003b3a: GT 00003b3b: PUSH2 0x118e 00003b3e: JUMPI 00003b3f: PUSH2 0x117f 00003b42: DUP2 00003b43: DUP4 00003b44: PUSH2 0x0f95 00003b47: JUMP 00003b48: JUMPDEST 00003b49: PUSH0 00003b4a: PUSH2 0x3b16 00003b4d: JUMP 00003b4e: JUMPDEST 00003b4f: PUSH1 0x42 00003b51: SWAP1 00003b52: CHAINID 00003b53: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001 00003b74: SUB 00003b75: PUSH2 0x3bfc 00003b78: JUMPI 00003b79: PUSH1 0xd3 00003b7b: SLOAD 00003b7c: SWAP1 00003b7d: JUMPDEST 00003b7e: PUSH2 0x3b94 00003b81: PUSH2 0x3b8d 00003b84: PUSH1 0x40 00003b86: DUP4 00003b87: ADD 00003b88: DUP4 00003b89: PUSH2 0x26fc 00003b8c: JUMP 00003b8d: JUMPDEST 00003b8e: CALLDATASIZE 00003b8f: SWAP2 00003b90: PUSH2 0x0fe0 00003b93: JUMP 00003b94: JUMPDEST 00003b95: PUSH1 0x20 00003b97: DUP2 00003b98: MLOAD 00003b99: SWAP2 00003b9a: ADD 00003b9b: KECCAK256 00003b9c: PUSH1 0x40 00003b9e: MLOAD 00003b9f: SWAP1 00003ba0: PUSH1 0x20 00003ba2: DUP3 00003ba3: ADD 00003ba4: SWAP3 00003ba5: PUSH32 0x838af86bfca91ada6557e38d913af1c2f24ef9b2567b3b77cc9e1144314b35b0 00003bc6: DUP5 00003bc7: MSTORE 00003bc8: CALLDATALOAD 00003bc9: PUSH1 0x40 00003bcb: DUP4 00003bcc: ADD 00003bcd: MSTORE 00003bce: PUSH1 0x60 00003bd0: DUP3 00003bd1: ADD 00003bd2: MSTORE 00003bd3: PUSH1 0x60 00003bd5: DUP2 00003bd6: MSTORE 00003bd7: PUSH2 0x3bdf 00003bda: DUP2 00003bdb: PUSH2 0x0f7a 00003bde: JUMP 00003bdf: JUMPDEST 00003be0: MLOAD 00003be1: SWAP1 00003be2: KECCAK256 00003be3: PUSH1 0x40 00003be5: MLOAD 00003be6: SWAP2 00003be7: PUSH2 0x1901 00003bea: PUSH1 0xf0 00003bec: SHL 00003bed: DUP4 00003bee: MSTORE 00003bef: PUSH1 0x02 00003bf1: DUP4 00003bf2: ADD 00003bf3: MSTORE 00003bf4: PUSH1 0x22 00003bf6: DUP3 00003bf7: ADD 00003bf8: MSTORE 00003bf9: KECCAK256 00003bfa: SWAP1 00003bfb: JUMP 00003bfc: JUMPDEST 00003bfd: PUSH2 0x3c04 00003c00: PUSH2 0x483e 00003c03: JUMP 00003c04: JUMPDEST 00003c05: SWAP1 00003c06: PUSH2 0x3b7d 00003c09: JUMP 00003c0a: JUMPDEST 00003c0b: PUSH1 0x04 00003c0d: GT 00003c0e: ISZERO 00003c0f: PUSH2 0x3c14 00003c12: JUMPI 00003c13: JUMP 00003c14: JUMPDEST 00003c15: PUSH4 0x4e487b71 00003c1a: PUSH1 0xe0 00003c1c: SHL 00003c1d: PUSH0 00003c1e: MSTORE 00003c1f: PUSH1 0x21 00003c21: PUSH1 0x04 00003c23: MSTORE 00003c24: PUSH1 0x24 00003c26: PUSH0 00003c27: REVERT 00003c28: JUMPDEST 00003c29: PUSH2 0x3c32 00003c2c: DUP4 00003c2d: DUP4 00003c2e: PUSH2 0x490b 00003c31: JUMP 00003c32: JUMPDEST 00003c33: POP 00003c34: PUSH2 0x3c3f 00003c37: DUP2 00003c38: SWAP6 00003c39: SWAP3 00003c3a: SWAP6 00003c3b: PUSH2 0x3c0a 00003c3e: JUMP 00003c3f: JUMPDEST 00003c40: ISZERO 00003c41: SWAP4 00003c42: DUP5 00003c43: PUSH2 0x3cdb 00003c46: JUMPI 00003c47: JUMPDEST 00003c48: POP 00003c49: DUP4 00003c4a: ISZERO 00003c4b: PUSH2 0x3c55 00003c4e: JUMPI 00003c4f: JUMPDEST 00003c50: POP 00003c51: POP 00003c52: POP 00003c53: SWAP1 00003c54: JUMP 00003c55: JUMPDEST 00003c56: PUSH0 00003c57: SWAP3 00003c58: SWAP4 00003c59: POP 00003c5a: SWAP1 00003c5b: DUP3 00003c5c: SWAP2 00003c5d: PUSH1 0x40 00003c5f: MLOAD 00003c60: PUSH2 0x3c8d 00003c63: DUP2 00003c64: PUSH2 0x2592 00003c67: PUSH1 0x20 00003c69: DUP3 00003c6a: ADD 00003c6b: SWAP5 00003c6c: PUSH4 0x0b135d3f 00003c71: PUSH1 0xe1 00003c73: SHL 00003c74: SWAP10 00003c75: DUP11 00003c76: DUP8 00003c77: MSTORE 00003c78: PUSH1 0x24 00003c7a: DUP5 00003c7b: ADD 00003c7c: MSTORE 00003c7d: PUSH1 0x40 00003c7f: PUSH1 0x44 00003c81: DUP5 00003c82: ADD 00003c83: MSTORE 00003c84: PUSH1 0x64 00003c86: DUP4 00003c87: ADD 00003c88: SWAP1 00003c89: PUSH2 0x1bb0 00003c8c: JUMP 00003c8d: JUMPDEST 00003c8e: MLOAD 00003c8f: SWAP2 00003c90: GAS 00003c91: STATICCALL 00003c92: SWAP1 00003c93: PUSH2 0x3c9a 00003c96: PUSH2 0x2824 00003c99: JUMP 00003c9a: JUMPDEST 00003c9b: DUP3 00003c9c: PUSH2 0x3ccd 00003c9f: JUMPI 00003ca0: JUMPDEST 00003ca1: DUP3 00003ca2: PUSH2 0x3cb0 00003ca5: JUMPI 00003ca6: JUMPDEST 00003ca7: POP 00003ca8: POP 00003ca9: PUSH0 00003caa: DUP1 00003cab: DUP1 00003cac: PUSH2 0x3c4f 00003caf: JUMP 00003cb0: JUMPDEST 00003cb1: PUSH2 0x3cc5 00003cb4: SWAP2 00003cb5: SWAP3 00003cb6: POP 00003cb7: PUSH1 0x20 00003cb9: DUP1 00003cba: DUP3 00003cbb: MLOAD 00003cbc: DUP4 00003cbd: ADD 00003cbe: ADD 00003cbf: SWAP2 00003cc0: ADD 00003cc1: PUSH2 0x1e9e 00003cc4: JUMP 00003cc5: JUMPDEST 00003cc6: EQ 00003cc7: PUSH0 00003cc8: DUP1 00003cc9: PUSH2 0x3ca6 00003ccc: JUMP 00003ccd: JUMPDEST 00003cce: SWAP2 00003ccf: POP 00003cd0: PUSH1 0x20 00003cd2: DUP3 00003cd3: MLOAD 00003cd4: LT 00003cd5: ISZERO 00003cd6: SWAP2 00003cd7: PUSH2 0x3ca0 00003cda: JUMP 00003cdb: JUMPDEST 00003cdc: PUSH1 0x01 00003cde: PUSH1 0x01 00003ce0: PUSH1 0xa0 00003ce2: SHL 00003ce3: SUB 00003ce4: DUP4 00003ce5: DUP2 00003ce6: AND 00003ce7: SWAP2 00003ce8: AND 00003ce9: EQ 00003cea: SWAP4 00003ceb: POP 00003cec: PUSH0 00003ced: PUSH2 0x3c47 00003cf0: JUMP 00003cf1: JUMPDEST 00003cf2: SWAP1 00003cf3: PUSH1 0x30 00003cf5: GT 00003cf6: PUSH2 0x0317 00003cf9: JUMPI 00003cfa: SWAP1 00003cfb: PUSH1 0x30 00003cfd: SWAP1 00003cfe: JUMP 00003cff: JUMPDEST 00003d00: SWAP1 00003d01: PUSH1 0x90 00003d03: GT 00003d04: PUSH2 0x0317 00003d07: JUMPI 00003d08: PUSH1 0x30 00003d0a: ADD 00003d0b: SWAP1 00003d0c: PUSH1 0x60 00003d0e: SWAP1 00003d0f: JUMP 00003d10: JUMPDEST 00003d11: SWAP1 00003d12: PUSH1 0xb0 00003d14: GT 00003d15: PUSH2 0x0317 00003d18: JUMPI 00003d19: PUSH1 0x90 00003d1b: ADD 00003d1c: SWAP1 00003d1d: PUSH1 0x20 00003d1f: SWAP1 00003d20: JUMP 00003d21: JUMPDEST 00003d22: SWAP1 00003d23: SWAP4 00003d24: SWAP3 00003d25: SWAP4 00003d26: DUP5 00003d27: DUP4 00003d28: GT 00003d29: PUSH2 0x0317 00003d2c: JUMPI 00003d2d: DUP5 00003d2e: GT 00003d2f: PUSH2 0x0317 00003d32: JUMPI 00003d33: DUP2 00003d34: ADD 00003d35: SWAP3 00003d36: SUB 00003d37: SWAP1 00003d38: JUMP 00003d39: JUMPDEST 00003d3a: CALLDATALOAD 00003d3b: SWAP1 00003d3c: PUSH1 0x20 00003d3e: DUP2 00003d3f: LT 00003d40: PUSH2 0x3d47 00003d43: JUMPI 00003d44: POP 00003d45: SWAP1 00003d46: JUMP 00003d47: JUMPDEST 00003d48: PUSH0 00003d49: NOT 00003d4a: SWAP1 00003d4b: PUSH1 0x20 00003d4d: SUB 00003d4e: PUSH1 0x03 00003d50: SHL 00003d51: SHL 00003d52: AND 00003d53: SWAP1 00003d54: JUMP 00003d55: JUMPDEST 00003d56: SWAP7 00003d57: SWAP6 00003d58: SWAP5 00003d59: SWAP1 00003d5a: PUSH2 0x3d92 00003d5d: SWAP4 00003d5e: PUSH2 0x3d76 00003d61: PUSH2 0x3d84 00003d64: SWAP3 00003d65: PUSH1 0x60 00003d67: SWAP8 00003d68: SWAP6 00003d69: PUSH1 0x80 00003d6b: DUP13 00003d6c: MSTORE 00003d6d: PUSH1 0x80 00003d6f: DUP13 00003d70: ADD 00003d71: SWAP2 00003d72: PUSH2 0x265e 00003d75: JUMP 00003d76: JUMPDEST 00003d77: SWAP1 00003d78: DUP10 00003d79: DUP3 00003d7a: SUB 00003d7b: PUSH1 0x20 00003d7d: DUP12 00003d7e: ADD 00003d7f: MSTORE 00003d80: PUSH2 0x1bb0 00003d83: JUMP 00003d84: JUMPDEST 00003d85: SWAP2 00003d86: DUP8 00003d87: DUP4 00003d88: SUB 00003d89: PUSH1 0x40 00003d8b: DUP10 00003d8c: ADD 00003d8d: MSTORE 00003d8e: PUSH2 0x265e 00003d91: JUMP 00003d92: JUMPDEST 00003d93: SWAP4 00003d94: ADD 00003d95: MSTORE 00003d96: JUMP 00003d97: JUMPDEST 00003d98: SWAP1 00003d99: PUSH1 0x20 00003d9b: PUSH2 0x0682 00003d9e: SWAP3 00003d9f: DUP2 00003da0: DUP2 00003da1: MSTORE 00003da2: ADD 00003da3: SWAP1 00003da4: PUSH2 0x2646 00003da7: JUMP 00003da8: JUMPDEST 00003da9: SWAP2 00003daa: PUSH1 0x20 00003dac: PUSH2 0x0682 00003daf: SWAP4 00003db0: DUP2 00003db1: DUP2 00003db2: MSTORE 00003db3: ADD 00003db4: SWAP2 00003db5: PUSH2 0x265e 00003db8: JUMP 00003db9: JUMPDEST 00003dba: PUSH1 0xb0 00003dbc: SWAP2 00003dbd: DUP3 00003dbe: DUP2 00003dbf: DIV 00003dc0: SWAP2 00003dc1: PUSH0 00003dc2: SWAP1 00003dc3: DUP2 00003dc4: PUSH2 0x3dcb 00003dc7: PUSH2 0x4945 00003dca: JUMP 00003dcb: JUMPDEST 00003dcc: SWAP6 00003dcd: PUSH32 0x00000000000000000000000000000000219ab540356cbb839cbe05303d7705fa 00003dee: PUSH1 0x01 00003df0: PUSH1 0x01 00003df2: PUSH1 0xa0 00003df4: SHL 00003df5: SUB 00003df6: AND 00003df7: SWAP4 00003df8: PUSH0 00003df9: SWAP3 00003dfa: SWAP1 00003dfb: JUMPDEST 00003dfc: DUP8 00003dfd: DUP5 00003dfe: LT 00003dff: PUSH2 0x3e0d 00003e02: JUMPI 00003e03: POP 00003e04: POP 00003e05: POP 00003e06: POP 00003e07: POP 00003e08: POP 00003e09: POP 00003e0a: POP 00003e0b: POP 00003e0c: JUMP 00003e0d: JUMPDEST 00003e0e: DUP3 00003e0f: PUSH2 0x3e1c 00003e12: SWAP2 00003e13: ADD 00003e14: DUP1 00003e15: SWAP3 00003e16: DUP9 00003e17: DUP8 00003e18: PUSH2 0x3d21 00003e1b: JUMP 00003e1c: JUMPDEST 00003e1d: SWAP1 00003e1e: PUSH2 0x3e27 00003e21: DUP3 00003e22: DUP3 00003e23: PUSH2 0x3cf1 00003e26: JUMP 00003e27: JUMPDEST 00003e28: SWAP2 00003e29: PUSH2 0x3e46 00003e2c: PUSH2 0x3e40 00003e2f: PUSH2 0x3e38 00003e32: DUP7 00003e33: DUP5 00003e34: PUSH2 0x3cff 00003e37: JUMP 00003e38: JUMPDEST 00003e39: SWAP7 00003e3a: SWAP1 00003e3b: SWAP4 00003e3c: PUSH2 0x3d10 00003e3f: JUMP 00003e40: JUMPDEST 00003e41: SWAP1 00003e42: PUSH2 0x3d39 00003e45: JUMP 00003e46: JUMPDEST 00003e47: SWAP1 00003e48: DUP10 00003e49: EXTCODESIZE 00003e4a: ISZERO 00003e4b: PUSH2 0x0317 00003e4e: JUMPI 00003e4f: PUSH0 00003e50: SWAP1 00003e51: DUP14 00003e52: PUSH2 0x3e73 00003e55: PUSH1 0x40 00003e57: SWAP5 00003e58: DUP6 00003e59: MLOAD 00003e5a: SWAP9 00003e5b: DUP10 00003e5c: SWAP5 00003e5d: DUP6 00003e5e: SWAP5 00003e5f: PUSH4 0x04512a23 00003e64: PUSH1 0xe3 00003e66: SHL 00003e67: DUP7 00003e68: MSTORE 00003e69: DUP11 00003e6a: DUP11 00003e6b: PUSH1 0x04 00003e6d: DUP9 00003e6e: ADD 00003e6f: PUSH2 0x3d55 00003e72: JUMP 00003e73: JUMPDEST 00003e74: SUB 00003e75: DUP2 00003e76: PUSH9 0x01bc16d674ec800000 00003e80: DUP14 00003e81: GAS 00003e82: CALL 00003e83: SWAP1 00003e84: DUP2 00003e85: ISZERO 00003e86: PUSH2 0x0561 00003e89: JUMPI 00003e8a: PUSH32 0x64b6e61d93b7a91e8cc4376183ede0997a27b44fd9dd2f30a866b2a5730efdb1 00003eab: SWAP5 00003eac: PUSH2 0x3ebf 00003eaf: SWAP3 00003eb0: PUSH2 0x3ece 00003eb3: JUMPI 00003eb4: JUMPDEST 00003eb5: POP 00003eb6: MLOAD 00003eb7: SWAP3 00003eb8: DUP4 00003eb9: SWAP3 00003eba: DUP4 00003ebb: PUSH2 0x3da8 00003ebe: JUMP 00003ebf: JUMPDEST 00003ec0: SUB 00003ec1: SWAP1 00003ec2: LOG1 00003ec3: PUSH1 0x01 00003ec5: DUP2 00003ec6: SWAP4 00003ec7: ADD 00003ec8: SWAP3 00003ec9: SWAP1 00003eca: PUSH2 0x3dfb 00003ecd: JUMP 00003ece: JUMPDEST 00003ecf: DUP1 00003ed0: PUSH2 0x0b74 00003ed3: PUSH2 0x3edb 00003ed6: SWAP3 00003ed7: PUSH2 0x0f4c 00003eda: JUMP 00003edb: JUMPDEST 00003edc: PUSH0 00003edd: PUSH2 0x3eb4 00003ee0: JUMP 00003ee1: JUMPDEST 00003ee2: DUP2 00003ee3: PUSH1 0x30 00003ee5: GT 00003ee6: PUSH2 0x0317 00003ee9: JUMPI 00003eea: PUSH2 0x3e40 00003eed: SWAP2 00003eee: PUSH32 0x00000000000000000000000000000000219ab540356cbb839cbe05303d7705fa 00003f0f: PUSH1 0x01 00003f11: PUSH1 0x01 00003f13: PUSH1 0xa0 00003f15: SHL 00003f16: SUB 00003f17: AND 00003f18: PUSH2 0x3f1f 00003f1b: PUSH2 0x4945 00003f1e: JUMP 00003f1f: JUMPDEST 00003f20: SWAP1 00003f21: PUSH2 0x3f36 00003f24: PUSH2 0x3f2d 00003f27: DUP5 00003f28: DUP7 00003f29: PUSH2 0x3cff 00003f2c: JUMP 00003f2d: JUMPDEST 00003f2e: SWAP7 00003f2f: SWAP1 00003f30: SWAP5 00003f31: DUP7 00003f32: PUSH2 0x3d10 00003f35: JUMP 00003f36: JUMPDEST 00003f37: SWAP5 00003f38: DUP2 00003f39: EXTCODESIZE 00003f3a: ISZERO 00003f3b: PUSH2 0x0317 00003f3e: JUMPI 00003f3f: PUSH9 0x01bc16d674ec800000 00003f49: PUSH0 00003f4a: SWAP5 00003f4b: PUSH2 0x3f9c 00003f4e: SWAP8 00003f4f: PUSH1 0x40 00003f51: MLOAD 00003f52: SWAP9 00003f53: DUP10 00003f54: SWAP7 00003f55: DUP8 00003f56: SWAP6 00003f57: DUP7 00003f58: SWAP5 00003f59: PUSH4 0x04512a23 00003f5e: PUSH1 0xe3 00003f60: SHL 00003f61: DUP7 00003f62: MSTORE 00003f63: PUSH1 0x80 00003f65: PUSH1 0x04 00003f67: DUP8 00003f68: ADD 00003f69: MSTORE 00003f6a: PUSH2 0x3f8d 00003f6d: PUSH2 0x3f7a 00003f70: DUP14 00003f71: PUSH1 0x84 00003f73: DUP10 00003f74: ADD 00003f75: SWAP1 00003f76: PUSH2 0x2646 00003f79: JUMP 00003f7a: JUMPDEST 00003f7b: PUSH1 0x03 00003f7d: NOT 00003f7e: SWAP5 00003f7f: DUP6 00003f80: DUP10 00003f81: DUP4 00003f82: SUB 00003f83: ADD 00003f84: PUSH1 0x24 00003f86: DUP11 00003f87: ADD 00003f88: MSTORE 00003f89: PUSH2 0x1bb0 00003f8c: JUMP 00003f8d: JUMPDEST 00003f8e: SWAP3 00003f8f: DUP7 00003f90: DUP5 00003f91: SUB 00003f92: ADD 00003f93: PUSH1 0x44 00003f95: DUP8 00003f96: ADD 00003f97: MSTORE 00003f98: PUSH2 0x265e 00003f9b: JUMP 00003f9c: JUMPDEST 00003f9d: SWAP1 00003f9e: PUSH1 0x64 00003fa0: DUP4 00003fa1: ADD 00003fa2: MSTORE 00003fa3: SUB 00003fa4: SWAP3 00003fa5: GAS 00003fa6: CALL 00003fa7: SWAP1 00003fa8: DUP2 00003fa9: ISZERO 00003faa: PUSH2 0x0561 00003fad: JUMPI 00003fae: PUSH32 0x64b6e61d93b7a91e8cc4376183ede0997a27b44fd9dd2f30a866b2a5730efdb1 00003fcf: SWAP3 00003fd0: PUSH2 0x2f28 00003fd3: SWAP3 00003fd4: PUSH2 0x3fe5 00003fd7: JUMPI 00003fd8: JUMPDEST 00003fd9: POP 00003fda: PUSH1 0x40 00003fdc: MLOAD 00003fdd: SWAP2 00003fde: DUP3 00003fdf: SWAP2 00003fe0: DUP3 00003fe1: PUSH2 0x3d97 00003fe4: JUMP 00003fe5: JUMPDEST 00003fe6: PUSH2 0x3fee 00003fe9: SWAP1 00003fea: PUSH2 0x0f4c 00003fed: JUMP 00003fee: JUMPDEST 00003fef: PUSH0 00003ff0: PUSH2 0x3fd8 00003ff3: JUMP 00003ff4: JUMPDEST 00003ff5: PUSH1 0x01 00003ff7: PUSH1 0x01 00003ff9: PUSH1 0x80 00003ffb: SHL 00003ffc: SUB 00003ffd: SWAP1 00003ffe: DUP2 00003fff: DUP2 00004000: GT 00004001: PUSH2 0x4008 00004004: JUMPI 00004005: AND 00004006: SWAP1 00004007: JUMP 00004008: JUMPDEST 00004009: PUSH1 0x44 0000400b: SWAP1 0000400c: PUSH1 0x40 0000400e: MLOAD 0000400f: SWAP1 00004010: PUSH4 0x06dfcc65 00004015: PUSH1 0xe4 00004017: SHL 00004018: DUP3 00004019: MSTORE 0000401a: PUSH1 0x80 0000401c: PUSH1 0x04 0000401e: DUP4 0000401f: ADD 00004020: MSTORE 00004021: PUSH1 0x24 00004023: DUP3 00004024: ADD 00004025: MSTORE 00004026: REVERT 00004027: JUMPDEST 00004028: SWAP1 00004029: PUSH32 0x9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00 0000404a: SWAP2 0000404b: PUSH1 0x02 0000404d: DUP4 0000404e: SLOAD 0000404f: EQ 00004050: PUSH2 0x40af 00004053: JUMPI 00004054: PUSH1 0x02 00004056: DUP4 00004057: SSTORE 00004058: DUP2 00004059: SELFBALANCE 0000405a: LT 0000405b: PUSH2 0x4097 0000405e: JUMPI 0000405f: PUSH0 00004060: SWAP2 00004061: DUP3 00004062: SWAP2 00004063: DUP3 00004064: SWAP2 00004065: DUP3 00004066: SWAP2 00004067: PUSH1 0x01 00004069: PUSH1 0x01 0000406b: PUSH1 0xa0 0000406d: SHL 0000406e: SUB 0000406f: AND 00004070: GAS 00004071: CALL 00004072: PUSH2 0x4079 00004075: PUSH2 0x2824 00004078: JUMP 00004079: JUMPDEST 0000407a: POP 0000407b: ISZERO 0000407c: PUSH2 0x4085 0000407f: JUMPI 00004080: PUSH1 0x01 00004082: SWAP1 00004083: SSTORE 00004084: JUMP 00004085: JUMPDEST 00004086: PUSH1 0x40 00004088: MLOAD 00004089: PUSH4 0x0a12f521 0000408e: PUSH1 0xe1 00004090: SHL 00004091: DUP2 00004092: MSTORE 00004093: PUSH1 0x04 00004095: SWAP1 00004096: REVERT 00004097: JUMPDEST 00004098: PUSH1 0x40 0000409a: MLOAD 0000409b: PUSH4 0xcd786059 000040a0: PUSH1 0xe0 000040a2: SHL 000040a3: DUP2 000040a4: MSTORE 000040a5: ADDRESS 000040a6: PUSH1 0x04 000040a8: DUP3 000040a9: ADD 000040aa: MSTORE 000040ab: PUSH1 0x24 000040ad: SWAP1 000040ae: REVERT 000040af: JUMPDEST 000040b0: PUSH1 0x40 000040b2: MLOAD 000040b3: PUSH4 0x3ee5aeb5 000040b8: PUSH1 0xe0 000040ba: SHL 000040bb: DUP2 000040bc: MSTORE 000040bd: PUSH1 0x04 000040bf: SWAP1 000040c0: REVERT 000040c1: JUMPDEST 000040c2: PUSH1 0x98 000040c4: SLOAD 000040c5: SWAP1 000040c6: PUSH1 0x01 000040c8: PUSH1 0x01 000040ca: PUSH1 0x80 000040cc: SHL 000040cd: SUB 000040ce: DUP3 000040cf: AND 000040d0: DUP2 000040d1: ISZERO 000040d2: DUP1 000040d3: ISZERO 000040d4: PUSH2 0x40f0 000040d7: JUMPI 000040d8: JUMPDEST 000040d9: ISZERO 000040da: PUSH2 0x40e3 000040dd: JUMPI 000040de: POP 000040df: SWAP1 000040e0: POP 000040e1: SWAP1 000040e2: JUMP 000040e3: JUMPDEST 000040e4: PUSH2 0x0682 000040e7: SWAP3 000040e8: PUSH1 0x80 000040ea: SHR 000040eb: SWAP2 000040ec: PUSH2 0x2b5e 000040ef: JUMP 000040f0: JUMPDEST 000040f1: POP 000040f2: DUP1 000040f3: ISZERO 000040f4: PUSH2 0x40d8 000040f7: JUMP 000040f8: JUMPDEST 000040f9: PUSH1 0x98 000040fb: SLOAD 000040fc: PUSH1 0x01 000040fe: PUSH1 0x01 00004100: PUSH1 0x80 00004102: SHL 00004103: SUB 00004104: DUP2 00004105: AND 00004106: SWAP1 00004107: DUP3 00004108: ISZERO 00004109: DUP1 0000410a: ISZERO 0000410b: PUSH2 0x4148 0000410e: JUMPI 0000410f: JUMPDEST 00004110: ISZERO 00004111: PUSH2 0x4119 00004114: JUMPI 00004115: POP 00004116: POP 00004117: SWAP1 00004118: JUMP 00004119: JUMPDEST 0000411a: PUSH1 0x80 0000411c: SHR 0000411d: SWAP1 0000411e: PUSH2 0x4128 00004121: DUP3 00004122: DUP3 00004123: DUP6 00004124: PUSH2 0x2b5e 00004127: JUMP 00004128: JUMPDEST 00004129: SWAP3 0000412a: DUP3 0000412b: ISZERO 0000412c: PUSH2 0x274c 0000412f: JUMPI 00004130: MULMOD 00004131: PUSH2 0x4137 00004134: JUMPI 00004135: SWAP1 00004136: JUMP 00004137: JUMPDEST 00004138: PUSH1 0x01 0000413a: DUP2 0000413b: ADD 0000413c: DUP1 0000413d: SWAP2 0000413e: GT 0000413f: ISZERO 00004140: PUSH2 0x0682 00004143: JUMPI 00004144: PUSH2 0x1edd 00004147: JUMP 00004148: JUMPDEST 00004149: POP 0000414a: DUP2 0000414b: ISZERO 0000414c: PUSH2 0x410f 0000414f: JUMP 00004150: JUMPDEST 00004151: PUSH2 0x4158 00004154: PUSH2 0x3ac3 00004157: JUMP 00004158: JUMPDEST 00004159: PUSH1 0x01 0000415b: PUSH1 0x01 0000415d: PUSH1 0xa0 0000415f: SHL 00004160: SUB 00004161: AND 00004162: DUP1 00004163: ISZERO 00004164: PUSH2 0x41a0 00004167: JUMPI 00004168: PUSH1 0x65 0000416a: DUP1 0000416b: SLOAD 0000416c: PUSH1 0x01 0000416e: PUSH1 0x01 00004170: PUSH1 0xa0 00004172: SHL 00004173: SUB 00004174: NOT 00004175: AND 00004176: DUP3 00004177: OR 00004178: SWAP1 00004179: SSTORE 0000417a: CALLER 0000417b: PUSH32 0xaaebcf1bfa00580e41d966056b48521fa9f202645c86d4ddf28113e617c1b1d3 0000419c: PUSH0 0000419d: DUP1 0000419e: LOG3 0000419f: JUMP 000041a0: JUMPDEST 000041a1: PUSH1 0x40 000041a3: MLOAD 000041a4: PUSH4 0x0ed1b8b3 000041a9: PUSH1 0xe3 000041ab: SHL 000041ac: DUP2 000041ad: MSTORE 000041ae: PUSH1 0x04 000041b0: SWAP1 000041b1: REVERT 000041b2: JUMPDEST 000041b3: PUSH2 0x0201 000041b6: DUP1 000041b7: SLOAD 000041b8: PUSH1 0x01 000041ba: PUSH1 0x01 000041bc: PUSH1 0xa0 000041be: SHL 000041bf: SUB 000041c0: NOT 000041c1: AND 000041c2: PUSH1 0x01 000041c4: PUSH1 0x01 000041c6: PUSH1 0xa0 000041c8: SHL 000041c9: SUB 000041ca: SWAP3 000041cb: SWAP1 000041cc: SWAP3 000041cd: AND 000041ce: SWAP2 000041cf: DUP3 000041d0: OR 000041d1: SWAP1 000041d2: SSTORE 000041d3: CALLER 000041d4: PUSH32 0xda2bcad4d57ac529886ff995d07bce191c08b5424c8f5824de6c73f90cc623d4 000041f5: PUSH0 000041f6: DUP1 000041f7: LOG3 000041f8: JUMP 000041f9: JUMPDEST 000041fa: SWAP2 000041fb: SWAP1 000041fc: PUSH2 0x4203 000041ff: PUSH2 0x3ac3 00004202: JUMP 00004203: JUMPDEST 00004204: PUSH1 0x01 00004206: PUSH1 0x01 00004208: PUSH1 0xa0 0000420a: SHL 0000420b: SUB 0000420c: DUP4 0000420d: AND 0000420e: SWAP1 0000420f: DUP2 00004210: ISZERO 00004211: PUSH2 0x0b80 00004214: JUMPI 00004215: DUP1 00004216: ISZERO 00004217: PUSH2 0x42af 0000421a: JUMPI 0000421b: DUP1 0000421c: PUSH2 0x422a 0000421f: PUSH2 0x178d 00004222: PUSH1 0x98 00004224: SLOAD 00004225: PUSH1 0x80 00004227: SHR 00004228: SWAP1 00004229: JUMP 0000422a: JUMPDEST 0000422b: ADD 0000422c: SWAP4 0000422d: PUSH2 0x4234 00004230: PUSH2 0x2466 00004233: JUMP 00004234: JUMPDEST 00004235: DUP6 00004236: GT 00004237: PUSH2 0x429d 0000423a: JUMPI 0000423b: PUSH2 0x0a17 0000423e: SWAP5 0000423f: PUSH2 0x425b 00004242: SWAP2 00004243: PUSH2 0x4256 00004246: PUSH2 0x424e 00004249: DUP6 0000424a: PUSH2 0x40f8 0000424d: JUMP 0000424e: JUMPDEST 0000424f: SWAP8 00004250: DUP9 00004251: SWAP4 00004252: PUSH2 0x3ff4 00004255: JUMP 00004256: JUMPDEST 00004257: PUSH2 0x436d 0000425a: JUMP 0000425b: JUMPDEST 0000425c: PUSH1 0x40 0000425e: DUP1 0000425f: MLOAD 00004260: SWAP2 00004261: DUP3 00004262: MSTORE 00004263: PUSH1 0x20 00004265: DUP3 00004266: ADD 00004267: DUP6 00004268: SWAP1 00004269: MSTORE 0000426a: PUSH0 0000426b: SWAP1 0000426c: DUP3 0000426d: ADD 0000426e: MSTORE 0000426f: CALLER 00004270: SWAP1 00004271: PUSH32 0x861a4138e41fb21c121a7dbb1053df465c837fc77380cc7226189a662281be2c 00004292: SWAP1 00004293: DUP1 00004294: PUSH1 0x60 00004296: DUP2 00004297: ADD 00004298: JUMPDEST 00004299: SUB 0000429a: SWAP1 0000429b: LOG3 0000429c: JUMP 0000429d: JUMPDEST 0000429e: PUSH1 0x40 000042a0: MLOAD 000042a1: PUSH4 0x04ffa0ff 000042a6: PUSH1 0xe5 000042a8: SHL 000042a9: DUP2 000042aa: MSTORE 000042ab: PUSH1 0x04 000042ad: SWAP1 000042ae: REVERT 000042af: JUMPDEST 000042b0: PUSH1 0x40 000042b2: MLOAD 000042b3: PUSH4 0x18374fd1 000042b8: PUSH1 0xe2 000042ba: SHL 000042bb: DUP2 000042bc: MSTORE 000042bd: PUSH1 0x04 000042bf: SWAP1 000042c0: REVERT 000042c1: JUMPDEST 000042c2: SWAP1 000042c3: SWAP3 000042c4: SWAP2 000042c5: SWAP3 000042c6: PUSH2 0x42cd 000042c9: PUSH2 0x3ac3 000042cc: JUMP 000042cd: JUMPDEST 000042ce: PUSH1 0x01 000042d0: PUSH1 0x01 000042d2: PUSH1 0xa0 000042d4: SHL 000042d5: SUB 000042d6: DUP3 000042d7: AND 000042d8: SWAP2 000042d9: DUP3 000042da: ISZERO 000042db: PUSH2 0x0b80 000042de: JUMPI 000042df: DUP2 000042e0: ISZERO 000042e1: PUSH2 0x42af 000042e4: JUMPI 000042e5: DUP2 000042e6: PUSH2 0x42f4 000042e9: PUSH2 0x178d 000042ec: PUSH1 0x98 000042ee: SLOAD 000042ef: PUSH1 0x80 000042f1: SHR 000042f2: SWAP1 000042f3: JUMP 000042f4: JUMPDEST 000042f5: ADD 000042f6: PUSH2 0x42fd 000042f9: PUSH2 0x2466 000042fc: JUMP 000042fd: JUMPDEST 000042fe: DUP2 000042ff: GT 00004300: PUSH2 0x429d 00004303: JUMPI 00004304: PUSH2 0x0a17 00004307: SWAP6 00004308: PUSH2 0x4344 0000430b: PUSH2 0x4298 0000430e: SWAP3 0000430f: PUSH32 0x861a4138e41fb21c121a7dbb1053df465c837fc77380cc7226189a662281be2c 00004330: SWAP5 00004331: PUSH2 0x4256 00004334: PUSH2 0x433c 00004337: DUP9 00004338: PUSH2 0x40f8 0000433b: JUMP 0000433c: JUMPDEST 0000433d: SWAP11 0000433e: DUP12 0000433f: SWAP4 00004340: PUSH2 0x3ff4 00004343: JUMP 00004344: JUMPDEST 00004345: PUSH1 0x40 00004347: DUP1 00004348: MLOAD 00004349: SWAP5 0000434a: DUP6 0000434b: MSTORE 0000434c: PUSH1 0x20 0000434e: DUP6 0000434f: ADD 00004350: DUP9 00004351: SWAP1 00004352: MSTORE 00004353: PUSH1 0x01 00004355: PUSH1 0x01 00004357: PUSH1 0xa0 00004359: SHL 0000435a: SUB 0000435b: SWAP1 0000435c: SWAP2 0000435d: AND 0000435e: SWAP1 0000435f: DUP5 00004360: ADD 00004361: MSTORE 00004362: CALLER 00004363: SWAP3 00004364: SWAP1 00004365: DUP2 00004366: SWAP1 00004367: PUSH1 0x60 00004369: DUP3 0000436a: ADD 0000436b: SWAP1 0000436c: JUMP 0000436d: JUMPDEST 0000436e: PUSH2 0x4376 00004371: DUP3 00004372: PUSH2 0x3ff4 00004375: JUMP 00004376: JUMPDEST 00004377: PUSH1 0x98 00004379: SLOAD 0000437a: SWAP1 0000437b: PUSH2 0x438e 0000437e: PUSH1 0x01 00004380: PUSH1 0x01 00004382: PUSH1 0x80 00004384: SHL 00004385: SUB 00004386: SWAP2 00004387: DUP3 00004388: DUP5 00004389: AND 0000438a: PUSH2 0x3131 0000438d: JUMP 0000438e: JUMPDEST 0000438f: AND 00004390: SWAP1 00004391: PUSH1 0x01 00004393: PUSH1 0x01 00004395: PUSH1 0x80 00004397: SHL 00004398: SUB 00004399: NOT 0000439a: AND 0000439b: OR 0000439c: PUSH1 0x98 0000439e: SSTORE 0000439f: PUSH1 0x01 000043a1: DUP1 000043a2: PUSH1 0xa0 000043a4: SHL 000043a5: SUB 000043a6: AND 000043a7: PUSH0 000043a8: MSTORE 000043a9: PUSH1 0x9c 000043ab: PUSH1 0x20 000043ad: MSTORE 000043ae: PUSH1 0x40 000043b0: PUSH0 000043b1: KECCAK256 000043b2: SWAP1 000043b3: DUP2 000043b4: SLOAD 000043b5: ADD 000043b6: SWAP1 000043b7: SSTORE 000043b8: JUMP 000043b9: JUMPDEST 000043ba: SWAP1 000043bb: DUP1 000043bc: DUP3 000043bd: LT 000043be: ISZERO 000043bf: PUSH2 0x43c6 000043c2: JUMPI 000043c3: POP 000043c4: SWAP1 000043c5: JUMP 000043c6: JUMPDEST 000043c7: SWAP1 000043c8: POP 000043c9: SWAP1 000043ca: JUMP 000043cb: JUMPDEST 000043cc: PUSH1 0x9a 000043ce: SLOAD 000043cf: SWAP1 000043d0: PUSH9 0x010000000000000000 000043da: DUP3 000043db: LT 000043dc: ISZERO 000043dd: PUSH2 0x0f47 000043e0: JUMPI 000043e1: PUSH1 0x01 000043e3: DUP3 000043e4: ADD 000043e5: DUP1 000043e6: PUSH1 0x9a 000043e8: SSTORE 000043e9: DUP3 000043ea: LT 000043eb: ISZERO 000043ec: PUSH2 0x2812 000043ef: JUMPI 000043f0: PUSH1 0x9a 000043f2: PUSH0 000043f3: MSTORE 000043f4: DUP1 000043f5: MLOAD 000043f6: PUSH1 0x20 000043f8: SWAP1 000043f9: SWAP2 000043fa: ADD 000043fb: MLOAD 000043fc: PUSH1 0xa0 000043fe: SHL 000043ff: PUSH1 0x01 00004401: PUSH1 0x01 00004403: PUSH1 0xa0 00004405: SHL 00004406: SUB 00004407: NOT 00004408: AND 00004409: PUSH1 0x01 0000440b: PUSH1 0x01 0000440d: PUSH1 0xa0 0000440f: SHL 00004410: SUB 00004411: SWAP2 00004412: SWAP1 00004413: SWAP2 00004414: AND 00004415: OR 00004416: PUSH0 00004417: DUP1 00004418: MLOAD 00004419: PUSH1 0x20 0000441b: PUSH2 0x4b7c 0000441e: DUP4 0000441f: CODECOPY 00004420: DUP2 00004421: MLOAD 00004422: SWAP2 00004423: MSTORE 00004424: SWAP1 00004425: SWAP2 00004426: ADD 00004427: SSTORE 00004428: JUMP 00004429: JUMPDEST 0000442a: SWAP2 0000442b: SWAP1 0000442c: SWAP2 0000442d: DUP1 0000442e: ISZERO 0000442f: DUP1 00004430: ISZERO 00004431: PUSH2 0x44f6 00004434: JUMPI 00004435: JUMPDEST 00004436: PUSH2 0x44e4 00004439: JUMPI 0000443a: PUSH2 0x4441 0000443d: PUSH2 0x47c5 00004440: JUMP 00004441: JUMPDEST 00004442: SWAP1 00004443: DUP2 00004444: ADD 00004445: DUP1 00004446: SWAP2 00004447: GT 00004448: PUSH2 0x1f0a 0000444b: JUMPI 0000444c: PUSH1 0x01 0000444e: PUSH1 0x01 00004450: PUSH1 0xa0 00004452: SHL 00004453: SUB 00004454: DUP1 00004455: DUP3 00004456: GT 00004457: PUSH2 0x44c4 0000445a: JUMPI 0000445b: PUSH1 0x01 0000445d: PUSH1 0x01 0000445f: PUSH1 0x60 00004461: SHL 00004462: SUB 00004463: SWAP1 00004464: DUP2 00004465: DUP6 00004466: GT 00004467: PUSH2 0x44a4 0000446a: JUMPI 0000446b: SWAP1 0000446c: PUSH2 0x0fc3 0000446f: SWAP4 00004470: SWAP5 00004471: PUSH2 0x448e 00004474: PUSH2 0x449f 00004477: SWAP4 00004478: PUSH2 0x447f 0000447b: PUSH2 0x0fb6 0000447e: JUMP 0000447f: JUMPDEST 00004480: SWAP6 00004481: AND 00004482: PUSH1 0x01 00004484: PUSH1 0x01 00004486: PUSH1 0xa0 00004488: SHL 00004489: SUB 0000448a: AND 0000448b: DUP6 0000448c: MSTORE 0000448d: JUMP 0000448e: JUMPDEST 0000448f: AND 00004490: PUSH1 0x01 00004492: PUSH1 0x01 00004494: PUSH1 0x60 00004496: SHL 00004497: SUB 00004498: AND 00004499: PUSH1 0x20 0000449b: DUP4 0000449c: ADD 0000449d: MSTORE 0000449e: JUMP 0000449f: JUMPDEST 000044a0: PUSH2 0x43cb 000044a3: JUMP 000044a4: JUMPDEST 000044a5: PUSH1 0x40 000044a7: MLOAD 000044a8: PUSH4 0x06dfcc65 000044ad: PUSH1 0xe4 000044af: SHL 000044b0: DUP2 000044b1: MSTORE 000044b2: PUSH1 0x60 000044b4: PUSH1 0x04 000044b6: DUP3 000044b7: ADD 000044b8: MSTORE 000044b9: PUSH1 0x24 000044bb: DUP2 000044bc: ADD 000044bd: DUP7 000044be: SWAP1 000044bf: MSTORE 000044c0: PUSH1 0x44 000044c2: SWAP1 000044c3: REVERT 000044c4: JUMPDEST 000044c5: PUSH1 0x40 000044c7: MLOAD 000044c8: PUSH4 0x06dfcc65 000044cd: PUSH1 0xe4 000044cf: SHL 000044d0: DUP2 000044d1: MSTORE 000044d2: PUSH1 0xa0 000044d4: PUSH1 0x04 000044d6: DUP3 000044d7: ADD 000044d8: MSTORE 000044d9: PUSH1 0x24 000044db: DUP2 000044dc: ADD 000044dd: DUP4 000044de: SWAP1 000044df: MSTORE 000044e0: PUSH1 0x44 000044e2: SWAP1 000044e3: REVERT 000044e4: JUMPDEST 000044e5: PUSH1 0x40 000044e7: MLOAD 000044e8: PUSH4 0x2ec8835b 000044ed: PUSH1 0xe2 000044ef: SHL 000044f0: DUP2 000044f1: MSTORE 000044f2: PUSH1 0x04 000044f4: SWAP1 000044f5: REVERT 000044f6: JUMPDEST 000044f7: POP 000044f8: DUP3 000044f9: ISZERO 000044fa: PUSH2 0x4435 000044fd: JUMP 000044fe: JUMPDEST 000044ff: PUSH1 0x40 00004501: MLOAD 00004502: PUSH4 0x0156a695 00004507: PUSH1 0xe1 00004509: SHL 0000450a: DUP2 0000450b: MSTORE 0000450c: ADDRESS 0000450d: PUSH1 0x04 0000450f: DUP3 00004510: ADD 00004511: MSTORE 00004512: PUSH1 0x20 00004514: DUP2 00004515: PUSH1 0x24 00004517: DUP2 00004518: PUSH32 0x0000000000000000000000006b5815467da09daa7dc83db21c9239d98bb487b5 00004539: PUSH1 0x01 0000453b: PUSH1 0x01 0000453d: PUSH1 0xa0 0000453f: SHL 00004540: SUB 00004541: AND 00004542: GAS 00004543: STATICCALL 00004544: SWAP1 00004545: DUP2 00004546: ISZERO 00004547: PUSH2 0x0561 0000454a: JUMPI 0000454b: PUSH0 0000454c: SWAP2 0000454d: PUSH2 0x456b 00004550: JUMPI 00004551: JUMPDEST 00004552: POP 00004553: ISZERO 00004554: PUSH2 0x4559 00004557: JUMPI 00004558: JUMP 00004559: JUMPDEST 0000455a: PUSH1 0x40 0000455c: MLOAD 0000455d: PUSH4 0x0a62fbdb 00004562: PUSH1 0xe1 00004564: SHL 00004565: DUP2 00004566: MSTORE 00004567: PUSH1 0x04 00004569: SWAP1 0000456a: REVERT 0000456b: JUMPDEST 0000456c: PUSH2 0x4584 0000456f: SWAP2 00004570: POP 00004571: PUSH1 0x20 00004573: RETURNDATASIZE 00004574: PUSH1 0x20 00004576: GT 00004577: PUSH2 0x118e 0000457a: JUMPI 0000457b: PUSH2 0x117f 0000457e: DUP2 0000457f: DUP4 00004580: PUSH2 0x0f95 00004583: JUMP 00004584: JUMPDEST 00004585: PUSH0 00004586: PUSH2 0x4551 00004589: JUMP 0000458a: JUMPDEST 0000458b: PUSH1 0x01 0000458d: DUP1 0000458e: PUSH1 0xa0 00004590: SHL 00004591: SUB 00004592: AND 00004593: PUSH0 00004594: MSTORE 00004595: PUSH1 0x9c 00004597: PUSH1 0x20 00004599: MSTORE 0000459a: PUSH1 0x40 0000459c: PUSH0 0000459d: KECCAK256 0000459e: SWAP1 0000459f: DUP2 000045a0: SLOAD 000045a1: DUP2 000045a2: DUP2 000045a3: SUB 000045a4: SWAP1 000045a5: DUP2 000045a6: GT 000045a7: PUSH2 0x1f0a 000045aa: JUMPI 000045ab: PUSH2 0x45b4 000045ae: SWAP3 000045af: SSTORE 000045b0: PUSH2 0x3ff4 000045b3: JUMP 000045b4: JUMPDEST 000045b5: PUSH1 0x98 000045b7: SLOAD 000045b8: SWAP1 000045b9: PUSH1 0x01 000045bb: PUSH1 0x01 000045bd: PUSH1 0x80 000045bf: SHL 000045c0: SUB 000045c1: SWAP1 000045c2: DUP2 000045c3: DUP4 000045c4: AND 000045c5: SUB 000045c6: AND 000045c7: SWAP1 000045c8: PUSH1 0x01 000045ca: PUSH1 0x01 000045cc: PUSH1 0x80 000045ce: SHL 000045cf: SUB 000045d0: NOT 000045d1: AND 000045d2: OR 000045d3: PUSH1 0x98 000045d5: SSTORE 000045d6: JUMP 000045d7: JUMPDEST 000045d8: PUSH1 0xff 000045da: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 000045fb: SLOAD 000045fc: PUSH1 0x40 000045fe: SHR 000045ff: AND 00004600: ISZERO 00004601: PUSH2 0x4606 00004604: JUMPI 00004605: JUMP 00004606: JUMPDEST 00004607: PUSH1 0x40 00004609: MLOAD 0000460a: PUSH4 0x1afcd79f 0000460f: PUSH1 0xe3 00004611: SHL 00004612: DUP2 00004613: MSTORE 00004614: PUSH1 0x04 00004616: SWAP1 00004617: REVERT 00004618: JUMPDEST 00004619: PUSH2 0x4620 0000461c: PUSH2 0x45d7 0000461f: JUMP 00004620: JUMPDEST 00004621: DUP1 00004622: ISZERO 00004623: PUSH2 0x4636 00004626: JUMPI 00004627: PUSH1 0x01 00004629: DUP2 0000462a: ADD 0000462b: PUSH2 0x4631 0000462e: JUMPI 0000462f: POP 00004630: JUMP 00004631: JUMPDEST 00004632: PUSH1 0x9d 00004634: SSTORE 00004635: JUMP 00004636: JUMPDEST 00004637: PUSH1 0x40 00004639: MLOAD 0000463a: PUSH4 0x31278a87 0000463f: PUSH1 0xe0 00004641: SHL 00004642: DUP2 00004643: MSTORE 00004644: PUSH1 0x04 00004646: SWAP1 00004647: REVERT 00004648: JUMPDEST 00004649: PUSH2 0x4650 0000464c: PUSH2 0x45d7 0000464f: JUMP 00004650: JUMPDEST 00004651: PUSH9 0x01bc16d674ec800000 0000465b: PUSH2 0x4662 0000465e: PUSH2 0x2466 00004661: JUMP 00004662: JUMPDEST 00004663: LT 00004664: PUSH2 0x4636 00004667: JUMPI 00004668: PUSH2 0x3606 0000466b: PUSH2 0x483e 0000466e: JUMP 0000466f: JUMPDEST 00004670: PUSH2 0x4677 00004673: PUSH2 0x45d7 00004676: JUMP 00004677: JUMPDEST 00004678: PUSH1 0x01 0000467a: PUSH1 0x01 0000467c: PUSH1 0xa0 0000467e: SHL 0000467f: SUB 00004680: AND 00004681: DUP1 00004682: PUSH2 0x4688 00004685: JUMPI 00004686: POP 00004687: JUMP 00004688: JUMPDEST 00004689: PUSH2 0x016a 0000468c: DUP1 0000468d: SLOAD 0000468e: PUSH1 0x01 00004690: PUSH1 0x01 00004692: PUSH1 0xa0 00004694: SHL 00004695: SUB 00004696: NOT 00004697: AND 00004698: SWAP1 00004699: SWAP2 0000469a: OR 0000469b: SWAP1 0000469c: SSTORE 0000469d: JUMP 0000469e: JUMPDEST 0000469f: PUSH2 0x46a6 000046a2: PUSH2 0x45d7 000046a5: JUMP 000046a6: JUMPDEST 000046a7: PUSH2 0x46ae 000046aa: PUSH2 0x45d7 000046ad: JUMP 000046ae: JUMPDEST 000046af: PUSH2 0x46b6 000046b2: PUSH2 0x45d7 000046b5: JUMP 000046b6: JUMPDEST 000046b7: PUSH1 0x01 000046b9: PUSH32 0x9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00 000046da: SSTORE 000046db: PUSH4 0x3b9aca00 000046e0: CALLVALUE 000046e1: LT 000046e2: PUSH2 0x46ef 000046e5: JUMPI 000046e6: PUSH2 0x2020 000046e9: CALLVALUE 000046ea: ADDRESS 000046eb: PUSH2 0x41f9 000046ee: JUMP 000046ef: JUMPDEST 000046f0: PUSH1 0x40 000046f2: MLOAD 000046f3: PUSH4 0xea2559bb 000046f8: PUSH1 0xe0 000046fa: SHL 000046fb: DUP2 000046fc: MSTORE 000046fd: PUSH1 0x04 000046ff: SWAP1 00004700: REVERT 00004701: JUMPDEST 00004702: SWAP1 00004703: DUP2 00004704: PUSH1 0x20 00004706: SWAP2 00004707: SUB 00004708: SLT 00004709: PUSH2 0x0317 0000470c: JUMPI 0000470d: MLOAD 0000470e: PUSH1 0xff 00004710: DUP2 00004711: AND 00004712: DUP2 00004713: SUB 00004714: PUSH2 0x0317 00004717: JUMPI 00004718: SWAP1 00004719: JUMP 0000471a: JUMPDEST 0000471b: PUSH1 0x40 0000471d: MLOAD 0000471e: PUSH4 0x52d1902d 00004723: PUSH1 0xe0 00004725: SHL 00004726: DUP2 00004727: MSTORE 00004728: SWAP3 00004729: SWAP1 0000472a: SWAP2 0000472b: PUSH1 0x20 0000472d: DUP5 0000472e: PUSH1 0x04 00004730: DUP2 00004731: PUSH1 0x01 00004733: PUSH1 0x01 00004735: PUSH1 0xa0 00004737: SHL 00004738: SUB 00004739: DUP8 0000473a: AND 0000473b: GAS 0000473c: STATICCALL 0000473d: PUSH0 0000473e: SWAP5 0000473f: DUP2 00004740: PUSH2 0x47a4 00004743: JUMPI 00004744: JUMPDEST 00004745: POP 00004746: PUSH2 0x476a 00004749: JUMPI 0000474a: PUSH1 0x40 0000474c: MLOAD 0000474d: PUSH4 0x4c9c8ce3 00004752: PUSH1 0xe0 00004754: SHL 00004755: DUP2 00004756: MSTORE 00004757: PUSH1 0x01 00004759: PUSH1 0x01 0000475b: PUSH1 0xa0 0000475d: SHL 0000475e: SUB 0000475f: DUP5 00004760: AND 00004761: PUSH1 0x04 00004763: DUP3 00004764: ADD 00004765: MSTORE 00004766: PUSH1 0x24 00004768: SWAP1 00004769: REVERT 0000476a: JUMPDEST 0000476b: SWAP1 0000476c: SWAP2 0000476d: PUSH0 0000476e: DUP1 0000476f: MLOAD 00004770: PUSH1 0x20 00004772: PUSH2 0x4b9c 00004775: DUP4 00004776: CODECOPY 00004777: DUP2 00004778: MLOAD 00004779: SWAP2 0000477a: MSTORE 0000477b: DUP5 0000477c: SUB 0000477d: PUSH2 0x478b 00004780: JUMPI 00004781: PUSH2 0x0fc3 00004784: SWAP3 00004785: SWAP4 00004786: POP 00004787: PUSH2 0x49ee 0000478a: JUMP 0000478b: JUMPDEST 0000478c: PUSH1 0x40 0000478e: MLOAD 0000478f: PUSH4 0x2a875269 00004794: PUSH1 0xe2 00004796: SHL 00004797: DUP2 00004798: MSTORE 00004799: PUSH1 0x04 0000479b: DUP2 0000479c: ADD 0000479d: DUP6 0000479e: SWAP1 0000479f: MSTORE 000047a0: PUSH1 0x24 000047a2: SWAP1 000047a3: REVERT 000047a4: JUMPDEST 000047a5: PUSH2 0x47be 000047a8: SWAP2 000047a9: SWAP6 000047aa: POP 000047ab: PUSH1 0x20 000047ad: RETURNDATASIZE 000047ae: PUSH1 0x20 000047b0: GT 000047b1: PUSH2 0x055a 000047b4: JUMPI 000047b5: PUSH2 0x054c 000047b8: DUP2 000047b9: DUP4 000047ba: PUSH2 0x0f95 000047bd: JUMP 000047be: JUMPDEST 000047bf: SWAP4 000047c0: PUSH0 000047c1: PUSH2 0x4744 000047c4: JUMP 000047c5: JUMPDEST 000047c6: PUSH1 0x9a 000047c8: SLOAD 000047c9: DUP1 000047ca: PUSH2 0x47d2 000047cd: JUMPI 000047ce: POP 000047cf: PUSH0 000047d0: SWAP1 000047d1: JUMP 000047d2: JUMPDEST 000047d3: PUSH1 0x9a 000047d5: PUSH0 000047d6: MSTORE 000047d7: PUSH32 0x44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be3 000047f8: ADD 000047f9: SLOAD 000047fa: PUSH1 0x01 000047fc: PUSH1 0x01 000047fe: PUSH1 0xa0 00004800: SHL 00004801: SUB 00004802: AND 00004803: PUSH2 0x1289 00004806: JUMP 00004807: JUMPDEST 00004808: PUSH1 0x9e 0000480a: SLOAD 0000480b: SWAP1 0000480c: DUP2 0000480d: PUSH1 0x80 0000480f: SHR 00004810: DUP2 00004811: ISZERO 00004812: DUP1 00004813: ISZERO 00004814: PUSH2 0x4836 00004817: JUMPI 00004818: JUMPDEST 00004819: ISZERO 0000481a: PUSH2 0x4823 0000481d: JUMPI 0000481e: POP 0000481f: SWAP1 00004820: POP 00004821: SWAP1 00004822: JUMP 00004823: JUMPDEST 00004824: PUSH1 0x01 00004826: PUSH1 0x01 00004828: PUSH1 0x80 0000482a: SHL 0000482b: SUB 0000482c: PUSH2 0x0682 0000482f: SWAP4 00004830: AND 00004831: SWAP2 00004832: PUSH2 0x2b5e 00004835: JUMP 00004836: JUMPDEST 00004837: POP 00004838: DUP1 00004839: ISZERO 0000483a: PUSH2 0x4818 0000483d: JUMP 0000483e: JUMPDEST 0000483f: PUSH15 0x5661756c7456616c696461746f7273 0000484f: PUSH1 0x88 00004851: SHL 00004852: PUSH1 0x20 00004854: PUSH1 0x40 00004856: MLOAD 00004857: PUSH2 0x485f 0000485a: DUP2 0000485b: PUSH2 0x0f2c 0000485e: JUMP 0000485f: JUMPDEST 00004860: PUSH1 0x0f 00004862: DUP2 00004863: MSTORE 00004864: ADD 00004865: MSTORE 00004866: PUSH1 0x40 00004868: MLOAD 00004869: PUSH1 0x20 0000486b: DUP2 0000486c: ADD 0000486d: SWAP1 0000486e: PUSH32 0x8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f 0000488f: DUP3 00004890: MSTORE 00004891: PUSH32 0x35d6cf9768d8be929c3a11ed667b1560ae6f1920195a985758fdd7265505d1ca 000048b2: PUSH1 0x40 000048b4: DUP3 000048b5: ADD 000048b6: MSTORE 000048b7: PUSH32 0xc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc6 000048d8: PUSH1 0x60 000048da: DUP3 000048db: ADD 000048dc: MSTORE 000048dd: CHAINID 000048de: PUSH1 0x80 000048e0: DUP3 000048e1: ADD 000048e2: MSTORE 000048e3: ADDRESS 000048e4: PUSH1 0xa0 000048e6: DUP3 000048e7: ADD 000048e8: MSTORE 000048e9: PUSH1 0xa0 000048eb: DUP2 000048ec: MSTORE 000048ed: PUSH1 0xc0 000048ef: DUP2 000048f0: ADD 000048f1: DUP2 000048f2: DUP2 000048f3: LT 000048f4: PUSH1 0x01 000048f6: PUSH1 0x01 000048f8: PUSH1 0x40 000048fa: SHL 000048fb: SUB 000048fc: DUP3 000048fd: GT 000048fe: OR 000048ff: PUSH2 0x0f47 00004902: JUMPI 00004903: PUSH1 0x40 00004905: MSTORE 00004906: MLOAD 00004907: SWAP1 00004908: KECCAK256 00004909: SWAP1 0000490a: JUMP 0000490b: JUMPDEST 0000490c: DUP2 0000490d: MLOAD 0000490e: SWAP2 0000490f: SWAP1 00004910: PUSH1 0x41 00004912: DUP4 00004913: SUB 00004914: PUSH2 0x493b 00004917: JUMPI 00004918: PUSH2 0x4934 0000491b: SWAP3 0000491c: POP 0000491d: PUSH1 0x20 0000491f: DUP3 00004920: ADD 00004921: MLOAD 00004922: SWAP1 00004923: PUSH1 0x60 00004925: PUSH1 0x40 00004927: DUP5 00004928: ADD 00004929: MLOAD 0000492a: SWAP4 0000492b: ADD 0000492c: MLOAD 0000492d: PUSH0 0000492e: BYTE 0000492f: SWAP1 00004930: PUSH2 0x4a90 00004933: JUMP 00004934: JUMPDEST 00004935: SWAP2 00004936: SWAP3 00004937: SWAP1 00004938: SWAP2 00004939: SWAP1 0000493a: JUMP 0000493b: JUMPDEST 0000493c: POP 0000493d: POP 0000493e: PUSH0 0000493f: SWAP2 00004940: PUSH1 0x02 00004942: SWAP2 00004943: SWAP1 00004944: JUMP 00004945: JUMPDEST 00004946: PUSH1 0x40 00004948: MLOAD 00004949: PUSH1 0x01 0000494b: PUSH1 0xf8 0000494d: SHL 0000494e: PUSH1 0x20 00004950: DUP3 00004951: ADD 00004952: MSTORE 00004953: PUSH0 00004954: PUSH1 0x21 00004956: DUP3 00004957: ADD 00004958: MSTORE 00004959: ADDRESS 0000495a: PUSH1 0x60 0000495c: SHL 0000495d: PUSH1 0x2c 0000495f: DUP3 00004960: ADD 00004961: MSTORE 00004962: PUSH1 0x20 00004964: DUP2 00004965: MSTORE 00004966: PUSH2 0x0682 00004969: DUP2 0000496a: PUSH2 0x0f2c 0000496d: JUMP 0000496e: JUMPDEST 0000496f: PUSH1 0x01 00004971: DUP1 00004972: PUSH1 0xa0 00004974: SHL 00004975: SUB 00004976: DUP2 00004977: AND 00004978: PUSH0 00004979: MSTORE 0000497a: PUSH2 0x0137 0000497d: PUSH1 0x20 0000497f: MSTORE 00004980: PUSH1 0x40 00004982: PUSH0 00004983: KECCAK256 00004984: SWAP1 00004985: PUSH1 0x40 00004987: MLOAD 00004988: SWAP2 00004989: PUSH2 0x4991 0000498c: DUP4 0000498d: PUSH2 0x0f2c 00004990: JUMP 00004991: JUMPDEST 00004992: SLOAD 00004993: SWAP1 00004994: PUSH1 0x01 00004996: PUSH1 0x01 00004998: PUSH1 0x80 0000499a: SHL 0000499b: SUB 0000499c: SWAP2 0000499d: DUP3 0000499e: DUP2 0000499f: AND 000049a0: SWAP1 000049a1: DUP2 000049a2: DUP6 000049a3: MSTORE 000049a4: PUSH1 0x80 000049a6: SHR 000049a7: PUSH1 0x20 000049a9: DUP6 000049aa: ADD 000049ab: MSTORE 000049ac: ISZERO 000049ad: PUSH2 0x1ffa 000049b0: JUMPI 000049b1: PUSH2 0x212c 000049b4: PUSH2 0x08a3 000049b7: PUSH2 0x49e4 000049ba: SWAP3 000049bb: PUSH2 0x49c2 000049be: PUSH2 0x3ac3 000049c1: JUMP 000049c2: JUMPDEST 000049c3: PUSH2 0x49cb 000049c6: DUP7 000049c7: PUSH2 0x29bb 000049ca: JUMP 000049cb: JUMPDEST 000049cc: PUSH1 0x01 000049ce: PUSH1 0x01 000049d0: PUSH1 0xa0 000049d2: SHL 000049d3: SUB 000049d4: AND 000049d5: PUSH0 000049d6: SWAP1 000049d7: DUP2 000049d8: MSTORE 000049d9: PUSH1 0x9c 000049db: PUSH1 0x20 000049dd: MSTORE 000049de: PUSH1 0x40 000049e0: SWAP1 000049e1: KECCAK256 000049e2: SWAP1 000049e3: JUMP 000049e4: JUMPDEST 000049e5: SWAP2 000049e6: MLOAD 000049e7: AND 000049e8: GT 000049e9: PUSH2 0x21b3 000049ec: JUMPI 000049ed: JUMP 000049ee: JUMPDEST 000049ef: SWAP1 000049f0: DUP2 000049f1: EXTCODESIZE 000049f2: ISZERO 000049f3: PUSH2 0x4a6f 000049f6: JUMPI 000049f7: PUSH0 000049f8: DUP1 000049f9: MLOAD 000049fa: PUSH1 0x20 000049fc: PUSH2 0x4b9c 000049ff: DUP4 00004a00: CODECOPY 00004a01: DUP2 00004a02: MLOAD 00004a03: SWAP2 00004a04: MSTORE 00004a05: DUP1 00004a06: SLOAD 00004a07: PUSH1 0x01 00004a09: PUSH1 0x01 00004a0b: PUSH1 0xa0 00004a0d: SHL 00004a0e: SUB 00004a0f: NOT 00004a10: AND 00004a11: PUSH1 0x01 00004a13: PUSH1 0x01 00004a15: PUSH1 0xa0 00004a17: SHL 00004a18: SUB 00004a19: DUP5 00004a1a: AND 00004a1b: SWAP1 00004a1c: DUP2 00004a1d: OR 00004a1e: SWAP1 00004a1f: SWAP2 00004a20: SSTORE 00004a21: PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b 00004a42: PUSH0 00004a43: DUP1 00004a44: LOG2 00004a45: DUP1 00004a46: MLOAD 00004a47: ISZERO 00004a48: PUSH2 0x4a54 00004a4b: JUMPI 00004a4c: PUSH2 0x2020 00004a4f: SWAP2 00004a50: PUSH2 0x4b12 00004a53: JUMP 00004a54: JUMPDEST 00004a55: POP 00004a56: POP 00004a57: CALLVALUE 00004a58: PUSH2 0x4a5d 00004a5b: JUMPI 00004a5c: JUMP 00004a5d: JUMPDEST 00004a5e: PUSH1 0x40 00004a60: MLOAD 00004a61: PUSH4 0xb398979f 00004a66: PUSH1 0xe0 00004a68: SHL 00004a69: DUP2 00004a6a: MSTORE 00004a6b: PUSH1 0x04 00004a6d: SWAP1 00004a6e: REVERT 00004a6f: JUMPDEST 00004a70: PUSH1 0x40 00004a72: MLOAD 00004a73: PUSH4 0x4c9c8ce3 00004a78: PUSH1 0xe0 00004a7a: SHL 00004a7b: DUP2 00004a7c: MSTORE 00004a7d: PUSH1 0x01 00004a7f: PUSH1 0x01 00004a81: PUSH1 0xa0 00004a83: SHL 00004a84: SUB 00004a85: DUP4 00004a86: AND 00004a87: PUSH1 0x04 00004a89: DUP3 00004a8a: ADD 00004a8b: MSTORE 00004a8c: PUSH1 0x24 00004a8e: SWAP1 00004a8f: REVERT 00004a90: JUMPDEST 00004a91: SWAP2 00004a92: SWAP1 00004a93: PUSH32 0x7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0 00004ab4: DUP5 00004ab5: GT 00004ab6: PUSH2 0x4b07 00004ab9: JUMPI 00004aba: SWAP2 00004abb: PUSH1 0x20 00004abd: SWAP4 00004abe: PUSH1 0x80 00004ac0: SWAP3 00004ac1: PUSH1 0xff 00004ac3: PUSH0 00004ac4: SWAP6 00004ac5: PUSH1 0x40 00004ac7: MLOAD 00004ac8: SWAP5 00004ac9: DUP6 00004aca: MSTORE 00004acb: AND 00004acc: DUP7 00004acd: DUP5 00004ace: ADD 00004acf: MSTORE 00004ad0: PUSH1 0x40 00004ad2: DUP4 00004ad3: ADD 00004ad4: MSTORE 00004ad5: PUSH1 0x60 00004ad7: DUP3 00004ad8: ADD 00004ad9: MSTORE 00004ada: DUP3 00004adb: DUP1 00004adc: MSTORE 00004add: PUSH1 0x01 00004adf: GAS 00004ae0: STATICCALL 00004ae1: ISZERO 00004ae2: PUSH2 0x0561 00004ae5: JUMPI 00004ae6: PUSH0 00004ae7: MLOAD 00004ae8: PUSH1 0x01 00004aea: PUSH1 0x01 00004aec: PUSH1 0xa0 00004aee: SHL 00004aef: SUB 00004af0: DUP2 00004af1: AND 00004af2: ISZERO 00004af3: PUSH2 0x4afd 00004af6: JUMPI 00004af7: SWAP1 00004af8: PUSH0 00004af9: SWAP1 00004afa: PUSH0 00004afb: SWAP1 00004afc: JUMP 00004afd: JUMPDEST 00004afe: POP 00004aff: PUSH0 00004b00: SWAP1 00004b01: PUSH1 0x01 00004b03: SWAP1 00004b04: PUSH0 00004b05: SWAP1 00004b06: JUMP 00004b07: JUMPDEST 00004b08: POP 00004b09: POP 00004b0a: POP 00004b0b: PUSH0 00004b0c: SWAP2 00004b0d: PUSH1 0x03 00004b0f: SWAP2 00004b10: SWAP1 00004b11: JUMP 00004b12: JUMPDEST 00004b13: PUSH0 00004b14: DUP1 00004b15: PUSH2 0x0682 00004b18: SWAP4 00004b19: PUSH1 0x20 00004b1b: DUP2 00004b1c: MLOAD 00004b1d: SWAP2 00004b1e: ADD 00004b1f: DUP5 00004b20: GAS 00004b21: DELEGATECALL 00004b22: PUSH2 0x4b29 00004b25: PUSH2 0x2824 00004b28: JUMP 00004b29: JUMPDEST 00004b2a: SWAP2 00004b2b: SWAP1 00004b2c: PUSH2 0x4b3f 00004b2f: JUMPI 00004b30: POP 00004b31: DUP1 00004b32: MLOAD 00004b33: ISZERO 00004b34: PUSH2 0x4085 00004b37: JUMPI 00004b38: DUP1 00004b39: MLOAD 00004b3a: SWAP1 00004b3b: PUSH1 0x20 00004b3d: ADD 00004b3e: REVERT 00004b3f: JUMPDEST 00004b40: DUP2 00004b41: MLOAD 00004b42: ISZERO 00004b43: DUP1 00004b44: PUSH2 0x4b72 00004b47: JUMPI 00004b48: JUMPDEST 00004b49: PUSH2 0x4b50 00004b4c: JUMPI 00004b4d: POP 00004b4e: SWAP1 00004b4f: JUMP 00004b50: JUMPDEST 00004b51: PUSH1 0x40 00004b53: MLOAD 00004b54: PUSH4 0x9996b315 00004b59: PUSH1 0xe0 00004b5b: SHL 00004b5c: DUP2 00004b5d: MSTORE 00004b5e: PUSH1 0x01 00004b60: PUSH1 0x01 00004b62: PUSH1 0xa0 00004b64: SHL 00004b65: SUB 00004b66: SWAP1 00004b67: SWAP2 00004b68: AND 00004b69: PUSH1 0x04 00004b6b: DUP3 00004b6c: ADD 00004b6d: MSTORE 00004b6e: PUSH1 0x24 00004b70: SWAP1 00004b71: REVERT 00004b72: JUMPDEST 00004b73: POP 00004b74: DUP1 00004b75: EXTCODESIZE 00004b76: ISZERO 00004b77: PUSH2 0x4b48 00004b7a: JUMP 00004b7b: INVALID 00004b7c: DIFFICULTY 00004b7d: UNKNOWN(0xDA) 00004b7e: ISZERO 00004b7f: DUP12 00004b80: LOG2 00004b81: PUSH32 0x9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be4360894a13ba1 00004ba2: LOG3 00004ba3: UNKNOWN(0x21) 00004ba4: MOD 00004ba5: PUSH8 0xc828492db98dca3e 00004bae: KECCAK256 00004baf: PUSH23 0xcc3735a920a3ca505d382bbca26469706673582212205c 00004bc7: COINBASE 00004bc8: CALLCODE 00004bc9: UNKNOWN(0xA8) 00004bca: CREATE2 00004bcb: STOP 00004bcc: GASLIMIT 00004bcd: DUP8 00004bce: UNKNOWN(0x2A) 00004bcf: NUMBER 00004bd0: UNKNOWN(0x0E) 00004bd1: UNKNOWN(0xDE) 00004bd2: DUP16 00004bd3: CLZ 00004bd4: UNKNOWN(0xEC) 00004bd5: DIFFICULTY 00004bd6: UNKNOWN(0xCD) 00004bd7: UNKNOWN(0xDF) 00004bd8: UNKNOWN(0x2F) 00004bd9: CALLDATASIZE 00004bda: UNKNOWN(0xCD) 00004bdb: UNKNOWN(0xD1) 00004bdc: CALL 00004bdd: UNKNOWN(0xE4) 00004bde: UNKNOWN(0xE9) 00004bdf: MLOAD 00004be0: SMOD 00004be1: UNKNOWN(0xF9) 00004be2: UNKNOWN(0xA8) 00004be3: BLOBBASEFEE 00004be4: STATICCALL 00004be5: MULMOD 00004be6: PUSH5 0x736f6c6343 00004bec: STOP 00004bed: ADDMOD 00004bee: AND 00004bef: STOP 00004bf0: CALLER
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| critical | upgradeability | detector | Untrusted DELEGATECALL target reachable | 70 | no | no |
viewtrace_id: 0x78fb6273ddb560c9f231ef894777280722c26032c0da4c9fc7c5a8fe6c0f430b
validation_json{
"sink": "DELEGATECALL",
"errors": 0,
"status": "unknown",
"attempts": 192,
"trace_id": "0x78fb6273ddb560c9f231ef894777280722c26032c0da4c9fc7c5a8fe6c0f430b",
"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": "0x01d523b6",
"selector": "0x01d523b6",
"calldata_variants": [
"0x01d523b6",
"0x01d523b60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x01e1d114",
"selector": "0x01e1d114",
"calldata_variants": [
"0x01e1d114",
"0x01e1d1140000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x066055e0",
"selector": "0x066055e0",
"calldata_variants": [
"0x066055e0",
"0x066055e00000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x07a2d13a",
"selector": "0x07a2d13a",
"calldata_variants": [
"0x07a2d13a",
"0x07a2d13a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0d392cd9",
"selector": "0x0d392cd9",
"calldata_variants": [
"0x0d392cd9",
"0x0d392cd90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x18f72950",
"selector": "0x18f72950",
"calldata_variants": [
"0x18f72950",
"0x18f729500000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1a7ff553",
"selector": "0x1a7ff553",
"calldata_variants": [
"0x1a7ff553",
"0x1a7ff5530000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x201b9eb5",
"selector": "0x201b9eb5",
"calldata_variants": [
"0x201b9eb5",
"0x201b9eb50000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 10500,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
},
{
"pc": 19233,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
}
],
"guards_detected": [],
"delegatecall_count": 2,
"untrusted_delegatecall_count": 2
}
|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_id: 0x819a34cf62d03599c27d38207ea14b5940eec9921ac24f35b0fe65db9bd2e45b
call_targets:
0x81ab00dd782492d62105b8fa9b03e82d4b57798c
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x819a34cf62d03599c27d38207ea14b5940eec9921ac24f35b0fe65db9bd2e45b",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x81ab00dd782492d62105b8fa9b03e82d4b57798c"
],
"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": "0x01d523b6",
"selector": "0x01d523b6",
"calldata_variants": [
"0x01d523b6",
"0x01d523b60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x01e1d114",
"selector": "0x01e1d114",
"calldata_variants": [
"0x01e1d114",
"0x01e1d1140000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x066055e0",
"selector": "0x066055e0",
"calldata_variants": [
"0x066055e0",
"0x066055e00000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x07a2d13a",
"selector": "0x07a2d13a",
"calldata_variants": [
"0x07a2d13a",
"0x07a2d13a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0d392cd9",
"selector": "0x0d392cd9",
"calldata_variants": [
"0x0d392cd9",
"0x0d392cd90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x18f72950",
"selector": "0x18f72950",
"calldata_variants": [
"0x18f72950",
"0x18f729500000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1a7ff553",
"selector": "0x1a7ff553",
"calldata_variants": [
"0x1a7ff553",
"0x1a7ff5530000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x201b9eb5",
"selector": "0x201b9eb5",
"calldata_variants": [
"0x201b9eb5",
"0x201b9eb50000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 1081,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1885,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2423,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 16,
"guards_detected": [],
"untrusted_call_count": 16
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0x819a34cf62d03599c27d38207ea14b5940eec9921ac24f35b0fe65db9bd2e45b
call_targets:
0x81ab00dd782492d62105b8fa9b03e82d4b57798c
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x819a34cf62d03599c27d38207ea14b5940eec9921ac24f35b0fe65db9bd2e45b",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x81ab00dd782492d62105b8fa9b03e82d4b57798c"
],
"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": "0x01d523b6",
"selector": "0x01d523b6",
"calldata_variants": [
"0x01d523b6",
"0x01d523b60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x01e1d114",
"selector": "0x01e1d114",
"calldata_variants": [
"0x01e1d114",
"0x01e1d1140000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x066055e0",
"selector": "0x066055e0",
"calldata_variants": [
"0x066055e0",
"0x066055e00000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x07a2d13a",
"selector": "0x07a2d13a",
"calldata_variants": [
"0x07a2d13a",
"0x07a2d13a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0d392cd9",
"selector": "0x0d392cd9",
"calldata_variants": [
"0x0d392cd9",
"0x0d392cd90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x18f72950",
"selector": "0x18f72950",
"calldata_variants": [
"0x18f72950",
"0x18f729500000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1a7ff553",
"selector": "0x1a7ff553",
"calldata_variants": [
"0x1a7ff553",
"0x1a7ff5530000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x201b9eb5",
"selector": "0x201b9eb5",
"calldata_variants": [
"0x201b9eb5",
"0x201b9eb50000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 1081,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1885,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2423,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 16,
"guards_detected": []
}
|
| medium | other | detector | CREATE/CREATE2 reachable | 45 | no | no |
viewtrace_id: 0xfc326611459dbf48c73239b516b95e2e265595c7e349789108fff3ec02d9e461
validation_json{
"sink": "CREATE",
"errors": 0,
"status": "unknown",
"attempts": 32,
"trace_id": "0xfc326611459dbf48c73239b516b95e2e265595c7e349789108fff3ec02d9e461",
"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": "0x01d523b6",
"selector": "0x01d523b6",
"calldata_variants": [
"0x01d523b6",
"0x01d523b60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x01e1d114",
"selector": "0x01e1d114",
"calldata_variants": [
"0x01e1d114",
"0x01e1d1140000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x066055e0",
"selector": "0x066055e0",
"calldata_variants": [
"0x066055e0",
"0x066055e00000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x07a2d13a",
"selector": "0x07a2d13a",
"calldata_variants": [
"0x07a2d13a",
"0x07a2d13a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0d392cd9",
"selector": "0x0d392cd9",
"calldata_variants": [
"0x0d392cd9",
"0x0d392cd90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x18f72950",
"selector": "0x18f72950",
"calldata_variants": [
"0x18f72950",
"0x18f729500000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1a7ff553",
"selector": "0x1a7ff553",
"calldata_variants": [
"0x1a7ff553",
"0x1a7ff5530000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x201b9eb5",
"selector": "0x201b9eb5",
"calldata_variants": [
"0x201b9eb5",
"0x201b9eb50000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"create_count": 0,
"create2_count": 1
}
|
| medium | upgradeability | cast | DELEGATECALL present | 80 | no | — |
viewevidence_json{
"notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
"delegatecall_count": 2
}
|
| low | other | cast | Contract creation opcode present | 60 | no | — |
viewevidence_json{
"notes": "runtime can deploy contracts dynamically via CREATE/CREATE2",
"create_count": 0,
"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": 9
}
|
| info | other | cast | Heavy CALL-family usage | 55 | no | — |
viewevidence_json{
"notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
"call_family_count": 39
}
|