TW
Tripwire
Find contracts. Test them. Review real vulns.

Analysis Run

a378986b-1937-4c95-ba90-7f7917ebf427

failed
Chain ID
1
Address
Block Number
Created
Fri, Jan 2, 2026 11:41 PM
Review Summary

What survived the funnel

Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?

Confirmed
0
Validated
0
Source
Verified
Review Backing
Not yet
Best current signal
Untrusted DELEGATECALL target reachable
crit 0 high 0 proxy context implementation known
Review Checklist
1. Read the findings table first. Ignore raw jobs until the result looks real.
2. Confirm attacker control, not just the existence of a sink.
3. Confirm money or privilege impact.
4. Keep it if the behavior is real. Kill it if this is normal proxy, admin, or upgrade plumbing.

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
31388 report.consolidate complete 1 / 1 3 months ago
111326 artifact.fetch failed 1 / 3 1 week ago
111327 tool.cast_disasm complete 1 / 3 1 week ago
111328 analysis.bundle complete 1 / 3 1 week ago
111329 capability.graph complete 1 / 3 1 week ago
111330 detector.run complete 1 / 3 1 week ago
111331 validation.fork complete 1 / 3 1 week ago

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: yes
Verified Source: yes

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
0
No findings?
yes
Summary
Reviewed AUDIT_BUNDLE.txt; no concrete, exploitable paths to extract value (ETH/tokens/NFTs) were identified in the first‑party contracts under the stated assumptions.
View stderr
[codex:1079871] OpenAI Codex v0.77.0 (research preview)
[codex:1079871] --------
[codex:1079871] workdir: /tmp/codex-multi-qzyi9q5s
[codex:1079871] model: gpt-5.2-codex
[codex:1079871] provider: openai
[codex:1079871] approval: never
[codex:1079871] sandbox: read-only
[codex:1079871] reasoning effort: xhigh
[codex:1079871] reasoning summaries: auto
[codex:1079871] session id: 019b810d-91b3-74a1-bb7f-d52969dd64c7
[codex:1079871] --------
[codex:1079871] user
[codex:1079871] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:1079871] 
[codex:1079871] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:1079871] 
[codex:1079871] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:1079871] - Gas inefficiency, code quality, naming, or best practices
[codex:1079871] - Theoretical vulnerabilities without a clear extraction path
[codex:1079871] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:1079871] - Front-running unless it enables theft beyond MEV
[codex:1079871] - DoS, griefing, or issues that don't result in attacker profit
[codex:1079871] - Missing events, view function issues, or informational findings
[codex:1079871] 
[codex:1079871] HIGH-VALUE PATTERNS TO HUNT:
[codex:1079871] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:1079871] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:1079871] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:1079871] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:1079871] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:1079871] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:1079871] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:1079871] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:1079871] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:1079871] 
[codex:1079871] For each finding, you MUST provide:
[codex:1079871] 1. Exact file and line numbers of vulnerable code
[codex:1079871] 2. Step-by-step exploit transaction sequence
[codex:1079871] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:1079871] 
[codex:1079871] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:1079871] 
[codex:1079871] Output MUST be valid JSON matching the provided schema.
[codex:1079871] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:1079871] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:1079871] mcp startup: no servers
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Checking for AUDIT_BUNDLE.txt**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc ls in /tmp/codex-multi-qzyi9q5s succeeded in 6ms:
[codex:1079871] AUDIT_BUNDLE.txt
[codex:1079871] codex-output-schema.json
[codex:1079871] contracts
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Reading AUDIT_BUNDLE.txt**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-qzyi9q5s succeeded in 6ms:
[codex:1079871] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:1079871] 
[codex:1079871] ================================================================================
[codex:1079871] FILE: contracts/contracts/base/Multicall.sol
[codex:1079871] ================================================================================
[codex:1079871] // SPDX-License-Identifier: GPL-2.0-or-later
[codex:1079871] 
[codex:1079871] pragma solidity ^0.8.22;
[codex:1079871] 
[codex:1079871] import '../interfaces/IMulticall.sol';
[codex:1079871] 
[codex:1079871] /**
[codex:1079871]  * @title Multicall
[codex:1079871]  * @author Uniswap
[codex:1079871]  * @notice Adopted from https://github.com/Uniswap/v3-periphery/blob/1d69caf0d6c8cfeae9acd1f34ead30018d6e6400/contracts/base/Multicall.sol
[codex:1079871]  * @notice Enables calling multiple methods in a single call to the contract
[codex:1079871]  */
[codex:1079871] abstract contract Multicall is IMulticall {
[codex:1079871]   /// @inheritdoc IMulticall
[codex:1079871]   function multicall(bytes[] calldata data) external override returns (bytes[] memory results) {
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Searching for contract vulnerabilities**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc 'rg -n "withdraw|claim|exit|redeem|transfer|mint" contracts/contracts -g "*.sol"' in /tmp/codex-multi-qzyi9q5s succeeded in 14ms:
[codex:1079871] contracts/contracts/interfaces/IVaultEthStaking.sol:21:   * @return shares The number of shares minted
[codex:1079871] contracts/contracts/interfaces/IVaultEthStaking.sol:26:   * @notice Used by MEV escrow to transfer ETH.
[codex:1079871] contracts/contracts/interfaces/IVaultEthStaking.sol:35:   * @return shares The number of shares minted
[codex:1079871] contracts/contracts/interfaces/IEthVaultFactory.sol:44:   * @notice Create Vault. Must transfer security deposit together with a call.
[codex:1079871] contracts/contracts/interfaces/IEthVault.sol:47:   * @notice Initializes or upgrades the EthVault contract. Must transfer security deposit during the deployment.
[codex:1079871] contracts/contracts/interfaces/IEthVault.sol:53:   * @notice Deposits assets to the vault and mints OsToken shares to the receiver
[codex:1079871] contracts/contracts/interfaces/IEthVault.sol:55:   * @param osTokenShares The amount of OsToken shares to mint.
[codex:1079871] contracts/contracts/interfaces/IEthVault.sol:56:   *        If set to type(uint256).max, max OsToken shares will be minted.
[codex:1079871] contracts/contracts/interfaces/IEthVault.sol:58:   * @return The amount of OsToken assets minted
[codex:1079871] contracts/contracts/interfaces/IEthVault.sol:67:   * @notice Updates the state, deposits assets to the vault and mints OsToken shares to the receiver
[codex:1079871] contracts/contracts/interfaces/IEthVault.sol:69:   * @param osTokenShares The amount of OsToken shares to mint.
[codex:1079871] contracts/contracts/interfaces/IEthVault.sol:70:   *        If set to type(uint256).max, max OsToken shares will be minted.
[codex:1079871] contracts/contracts/interfaces/IEthVault.sol:73:   * @return The amount of OsToken assets minted
[codex:1079871] contracts/contracts/interfaces/ISharedMevEscrow.sol:20:   * @param assets The amount of assets withdrawn
[codex:1079871] contracts/contracts/interfaces/ISharedMevEscrow.sol:26:   * @dev IMPORTANT: because control is transferred to the Vault, care must be
[codex:1079871] contracts/contracts/interfaces/ISharedMevEscrow.sol:29:   * @param assets The amount of assets to withdraw
[codex:1079871] contracts/contracts/interfaces/IOwnMevEscrow.sol:19:   * @param assets The amount of assets withdrawn
[codex:1079871] contracts/contracts/interfaces/IOwnMevEscrow.sol:31:   * @dev IMPORTANT: because control is transferred to the Vault, care must be
[codex:1079871] contracts/contracts/interfaces/IOwnMevEscrow.sol:34:   * @return assets The amount of assets withdrawn
[codex:1079871] contracts/contracts/interfaces/IValidatorsRegistry.sol:14:    bytes withdrawal_credentials,
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Inspecting for vulnerabilities**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc "sed -n '1,240p' contracts/contracts/vaults/modules/VaultEnterExit.sol" in /tmp/codex-multi-qzyi9q5s succeeded in 5ms:
[codex:1079871] // SPDX-License-Identifier: BUSL-1.1
[codex:1079871] 
[codex:1079871] pragma solidity ^0.8.22;
[codex:1079871] 
[codex:1079871] import {Initializable} from '@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol';
[codex:1079871] import {SafeCast} from '@openzeppelin/contracts/utils/math/SafeCast.sol';
[codex:1079871] import {Math} from '@openzeppelin/contracts/utils/math/Math.sol';
[codex:1079871] import {IKeeperRewards} from '../../interfaces/IKeeperRewards.sol';
[codex:1079871] import {IVaultEnterExit} from '../../interfaces/IVaultEnterExit.sol';
[codex:1079871] import {ExitQueue} from '../../libraries/ExitQueue.sol';
[codex:1079871] import {Errors} from '../../libraries/Errors.sol';
[codex:1079871] import {VaultImmutables} from './VaultImmutables.sol';
[codex:1079871] import {VaultState} from './VaultState.sol';
[codex:1079871] 
[codex:1079871] /**
[codex:1079871]  * @title VaultEnterExit
[codex:1079871]  * @author StakeWise
[codex:1079871]  * @notice Defines the functionality for entering and exiting the Vault
[codex:1079871]  */
[codex:1079871] abstract contract VaultEnterExit is VaultImmutables, Initializable, VaultState, IVaultEnterExit {
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Analyzing reentrancy safety in asset transfers**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc "sed -n '1,260p' contracts/contracts/vaults/modules/VaultOsToken.sol" in /tmp/codex-multi-qzyi9q5s succeeded in 5ms:
[codex:1079871] // SPDX-License-Identifier: BUSL-1.1
[codex:1079871] 
[codex:1079871] pragma solidity ^0.8.22;
[codex:1079871] 
[codex:1079871] import {Math} from '@openzeppelin/contracts/utils/math/Math.sol';
[codex:1079871] import {SafeCast} from '@openzeppelin/contracts/utils/math/SafeCast.sol';
[codex:1079871] import {IOsTokenVaultController} from '../../interfaces/IOsTokenVaultController.sol';
[codex:1079871] import {IOsTokenConfig} from '../../interfaces/IOsTokenConfig.sol';
[codex:1079871] import {IVaultOsToken} from '../../interfaces/IVaultOsToken.sol';
[codex:1079871] import {IOsTokenVaultEscrow} from '../../interfaces/IOsTokenVaultEscrow.sol';
[codex:1079871] import {Errors} from '../../libraries/Errors.sol';
[codex:1079871] import {VaultImmutables} from './VaultImmutables.sol';
[codex:1079871] import {VaultEnterExit, IVaultEnterExit} from './VaultEnterExit.sol';
[codex:1079871] import {VaultState} from './VaultState.sol';
[codex:1079871] 
[codex:1079871] /**
[codex:1079871]  * @title VaultOsToken
[codex:1079871]  * @author StakeWise
[codex:1079871]  * @notice Defines the functionality for minting OsToken
[codex:1079871]  */
[codex:1079871] exec
[codex:1079871] /bin/bash -lc "sed -n '260,520p' contracts/contracts/vaults/modules/VaultOsToken.sol" in /tmp/codex-multi-qzyi9q5s succeeded in 5ms:
[codex:1079871]       revert Errors.LiquidationDisabled();
[codex:1079871]     }
[codex:1079871] 
[codex:1079871]     // calculate received assets
[codex:1079871]     if (isLiquidation) {
[codex:1079871]       receivedAssets = Math.mulDiv(
[codex:1079871]         _osTokenVaultController.convertToAssets(osTokenShares),
[codex:1079871]         osTokenConfig.liqBonusPercent,
[codex:1079871]         _maxPercent
[codex:1079871]       );
[codex:1079871]     } else {
[codex:1079871]       receivedAssets = _osTokenVaultController.convertToAssets(osTokenShares);
[codex:1079871]     }
[codex:1079871] 
[codex:1079871]     {
[codex:1079871]       // check whether received assets are valid
[codex:1079871]       uint256 depositedAssets = convertToAssets(_balances[owner]);
[codex:1079871]       if (receivedAssets > depositedAssets || receivedAssets > withdrawableAssets()) {
[codex:1079871]         revert Errors.InvalidReceivedAssets();
[codex:1079871]       }
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Inspecting VaultEthStaking for transfer logic**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc "sed -n '1,220p' contracts/contracts/vaults/modules/VaultEthStaking.sol" in /tmp/codex-multi-qzyi9q5s succeeded in 5ms:
[codex:1079871] // SPDX-License-Identifier: BUSL-1.1
[codex:1079871] 
[codex:1079871] pragma solidity ^0.8.22;
[codex:1079871] 
[codex:1079871] import {Initializable} from '@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol';
[codex:1079871] import {ReentrancyGuardUpgradeable} from '@openzeppelin/contracts-upgradeable/utils/ReentrancyGuardUpgradeable.sol';
[codex:1079871] import {Address} from '@openzeppelin/contracts/utils/Address.sol';
[codex:1079871] import {IEthValidatorsRegistry} from '../../interfaces/IEthValidatorsRegistry.sol';
[codex:1079871] import {IKeeperRewards} from '../../interfaces/IKeeperRewards.sol';
[codex:1079871] import {IVaultEthStaking} from '../../interfaces/IVaultEthStaking.sol';
[codex:1079871] import {Errors} from '../../libraries/Errors.sol';
[codex:1079871] import {VaultValidators} from './VaultValidators.sol';
[codex:1079871] import {VaultState} from './VaultState.sol';
[codex:1079871] import {VaultEnterExit} from './VaultEnterExit.sol';
[codex:1079871] import {VaultMev} from './VaultMev.sol';
[codex:1079871] 
[codex:1079871] /**
[codex:1079871]  * @title VaultEthStaking
[codex:1079871]  * @author StakeWise
[codex:1079871]  * @notice Defines the Ethereum staking functionality for the Vault
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Checking reentrancy protection across vault types**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc 'rg -n "contract .*Vault" contracts/contracts/vaults -g "*.sol"' in /tmp/codex-multi-qzyi9q5s succeeded in 10ms:
[codex:1079871] contracts/contracts/vaults/ethereum/EthVault.sol:26:contract EthVault is
[codex:1079871] contracts/contracts/vaults/modules/VaultState.sol:20:abstract contract VaultState is VaultImmutables, Initializable, VaultFee, IVaultState {
[codex:1079871] contracts/contracts/vaults/modules/VaultEnterExit.sol:20:abstract contract VaultEnterExit is VaultImmutables, Initializable, VaultState, IVaultEnterExit {
[codex:1079871] contracts/contracts/vaults/modules/VaultMev.sol:17:abstract contract VaultMev is Initializable, VaultState, IVaultMev {
[codex:1079871] contracts/contracts/vaults/modules/VaultAdmin.sol:14:abstract contract VaultAdmin is Initializable, IVaultAdmin {
[codex:1079871] contracts/contracts/vaults/modules/VaultOsToken.sol:21:abstract contract VaultOsToken is VaultImmutables, VaultState, VaultEnterExit, IVaultOsToken {
[codex:1079871] contracts/contracts/vaults/modules/VaultFee.sol:17:abstract contract VaultFee is VaultImmutables, Initializable, VaultAdmin, IVaultFee {
[codex:1079871] contracts/contracts/vaults/modules/VaultImmutables.sol:13:abstract contract VaultImmutables {
[codex:1079871] contracts/contracts/vaults/modules/VaultVersion.sol:19:abstract contract VaultVersion is
[codex:1079871] contracts/contracts/vaults/modules/VaultValidators.sol:22:abstract contract VaultValidators is
[codex:1079871] contracts/contracts/vaults/modules/VaultEthStaking.sol:22:abstract contract VaultEthStaking is
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Inspecting EthVault contract**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc "sed -n '1,200p' contracts/contracts/vaults/ethereum/EthVault.sol" in /tmp/codex-multi-qzyi9q5s succeeded in 5ms:
[codex:1079871] // SPDX-License-Identifier: BUSL-1.1
[codex:1079871] 
[codex:1079871] pragma solidity ^0.8.22;
[codex:1079871] 
[codex:1079871] import {Initializable} from '@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol';
[codex:1079871] import {IEthVault} from '../../interfaces/IEthVault.sol';
[codex:1079871] import {IEthVaultFactory} from '../../interfaces/IEthVaultFactory.sol';
[codex:1079871] import {IKeeperRewards} from '../../interfaces/IKeeperRewards.sol';
[codex:1079871] import {Multicall} from '../../base/Multicall.sol';
[codex:1079871] import {VaultValidators} from '../modules/VaultValidators.sol';
[codex:1079871] import {VaultAdmin} from '../modules/VaultAdmin.sol';
[codex:1079871] import {VaultFee} from '../modules/VaultFee.sol';
[codex:1079871] import {VaultVersion, IVaultVersion} from '../modules/VaultVersion.sol';
[codex:1079871] import {VaultImmutables} from '../modules/VaultImmutables.sol';
[codex:1079871] import {VaultState} from '../modules/VaultState.sol';
[codex:1079871] import {VaultEnterExit, IVaultEnterExit} from '../modules/VaultEnterExit.sol';
[codex:1079871] import {VaultOsToken} from '../modules/VaultOsToken.sol';
[codex:1079871] import {VaultEthStaking} from '../modules/VaultEthStaking.sol';
[codex:1079871] import {VaultMev} from '../modules/VaultMev.sol';
[codex:1079871] 
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Examining EthVault initialization risks**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc "sed -n '1,240p' contracts/contracts/factories/EthVaultFactory.sol" in /tmp/codex-multi-qzyi9q5s exited 2 in 5ms:
[codex:1079871] sed: can't read contracts/contracts/factories/EthVaultFactory.sol: No such file or directory
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Searching for Factory references**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc 'rg -n "contract .*Factory" contracts/contracts -g "*.sol"' in /tmp/codex-multi-qzyi9q5s exited 1 in 10ms:
[codex:1079871] 
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Searching for factory files**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc 'rg --files -g "*Factory*.sol" contracts/contracts' in /tmp/codex-multi-qzyi9q5s succeeded in 9ms:
[codex:1079871] contracts/contracts/interfaces/IEthVaultFactory.sol
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Investigating related Vault modules**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc "sed -n '1,200p' contracts/contracts/vaults/modules/VaultAdmin.sol" in /tmp/codex-multi-qzyi9q5s succeeded in 6ms:
[codex:1079871] // SPDX-License-Identifier: BUSL-1.1
[codex:1079871] 
[codex:1079871] pragma solidity ^0.8.22;
[codex:1079871] 
[codex:1079871] import {Initializable} from '@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol';
[codex:1079871] import {IVaultAdmin} from '../../interfaces/IVaultAdmin.sol';
[codex:1079871] import {Errors} from '../../libraries/Errors.sol';
[codex:1079871] 
[codex:1079871] /**
[codex:1079871]  * @title VaultAdmin
[codex:1079871]  * @author StakeWise
[codex:1079871]  * @notice Defines the admin functionality for the Vault
[codex:1079871]  */
[codex:1079871] abstract contract VaultAdmin is Initializable, IVaultAdmin {
[codex:1079871]   /// @inheritdoc IVaultAdmin
[codex:1079871]   address public override admin;
[codex:1079871] 
[codex:1079871]   /// @inheritdoc IVaultAdmin
[codex:1079871]   function setMetadata(string calldata metadataIpfsHash) external override {
[codex:1079871]     _checkAdmin();
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Identifying VaultFee reference**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc "sed -n '1,200p' contracts/contracts/vaults/modules/VaultFee.sol" in /tmp/codex-multi-qzyi9q5s succeeded in 5ms:
[codex:1079871] // SPDX-License-Identifier: BUSL-1.1
[codex:1079871] 
[codex:1079871] pragma solidity ^0.8.22;
[codex:1079871] 
[codex:1079871] import {Initializable} from '@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol';
[codex:1079871] import {IVaultFee} from '../../interfaces/IVaultFee.sol';
[codex:1079871] import {IKeeperRewards} from '../../interfaces/IKeeperRewards.sol';
[codex:1079871] import {Errors} from '../../libraries/Errors.sol';
[codex:1079871] import {VaultAdmin} from './VaultAdmin.sol';
[codex:1079871] import {VaultImmutables} from './VaultImmutables.sol';
[codex:1079871] 
[codex:1079871] /**
[codex:1079871]  * @title VaultFee
[codex:1079871]  * @author StakeWise
[codex:1079871]  * @notice Defines the fee functionality for the Vault
[codex:1079871]  */
[codex:1079871] abstract contract VaultFee is VaultImmutables, Initializable, VaultAdmin, IVaultFee {
[codex:1079871]   uint256 internal constant _maxFeePercent = 10_000; // @dev 100.00 %
[codex:1079871] 
[codex:1079871]   /// @inheritdoc IVaultFee
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Investigating VaultState issues**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc "sed -n '1,220p' contracts/contracts/vaults/modules/VaultState.sol" in /tmp/codex-multi-qzyi9q5s succeeded in 5ms:
[codex:1079871] // SPDX-License-Identifier: BUSL-1.1
[codex:1079871] 
[codex:1079871] pragma solidity ^0.8.22;
[codex:1079871] 
[codex:1079871] import {Initializable} from '@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol';
[codex:1079871] import {SafeCast} from '@openzeppelin/contracts/utils/math/SafeCast.sol';
[codex:1079871] import {Math} from '@openzeppelin/contracts/utils/math/Math.sol';
[codex:1079871] import {IVaultState} from '../../interfaces/IVaultState.sol';
[codex:1079871] import {IKeeperRewards} from '../../interfaces/IKeeperRewards.sol';
[codex:1079871] import {ExitQueue} from '../../libraries/ExitQueue.sol';
[codex:1079871] import {Errors} from '../../libraries/Errors.sol';
[codex:1079871] import {VaultImmutables} from './VaultImmutables.sol';
[codex:1079871] import {VaultFee} from './VaultFee.sol';
[codex:1079871] 
[codex:1079871] /**
[codex:1079871]  * @title VaultState
[codex:1079871]  * @author StakeWise
[codex:1079871]  * @notice Defines Vault's state manipulation
[codex:1079871]  */
[codex:1079871] abstract contract VaultState is VaultImmutables, Initializable, VaultFee, IVaultState {
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Reviewing VaultState methods**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc "sed -n '220,520p' contracts/contracts/vaults/modules/VaultState.sol" in /tmp/codex-multi-qzyi9q5s succeeded in 6ms:
[codex:1079871]     if (_queuedShares == 0 || availableAssets == 0) return 0;
[codex:1079871] 
[codex:1079871]     // calculate the amount of assets that can be exited
[codex:1079871]     uint256 exitedAssets = Math.min(availableAssets, convertToAssets(_queuedShares));
[codex:1079871]     if (exitedAssets == 0) return 0;
[codex:1079871] 
[codex:1079871]     // calculate the amount of shares that can be burned
[codex:1079871]     burnedShares = convertToShares(exitedAssets);
[codex:1079871]     if (burnedShares == 0) return 0;
[codex:1079871] 
[codex:1079871]     // update queued shares and unclaimed assets
[codex:1079871]     queuedShares = SafeCast.toUint128(_queuedShares - burnedShares);
[codex:1079871]     _unclaimedAssets += SafeCast.toUint128(exitedAssets);
[codex:1079871] 
[codex:1079871]     // push checkpoint so that exited assets could be claimed
[codex:1079871]     _exitQueue.push(burnedShares, exitedAssets);
[codex:1079871]     emit CheckpointCreated(burnedShares, exitedAssets);
[codex:1079871] 
[codex:1079871]     // update state
[codex:1079871]     _totalShares -= SafeCast.toUint128(burnedShares);
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Checking VaultMev and escrow**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc "sed -n '1,220p' contracts/contracts/vaults/modules/VaultMev.sol" in /tmp/codex-multi-qzyi9q5s succeeded in 5ms:
[codex:1079871] // SPDX-License-Identifier: BUSL-1.1
[codex:1079871] 
[codex:1079871] pragma solidity ^0.8.22;
[codex:1079871] 
[codex:1079871] import {Initializable} from '@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol';
[codex:1079871] import {IKeeperRewards} from '../../interfaces/IKeeperRewards.sol';
[codex:1079871] import {ISharedMevEscrow} from '../../interfaces/ISharedMevEscrow.sol';
[codex:1079871] import {IOwnMevEscrow} from '../../interfaces/IOwnMevEscrow.sol';
[codex:1079871] import {IVaultMev} from '../../interfaces/IVaultMev.sol';
[codex:1079871] import {VaultState} from './VaultState.sol';
[codex:1079871] 
[codex:1079871] /**
[codex:1079871]  * @title VaultMev
[codex:1079871]  * @author StakeWise
[codex:1079871]  * @notice Defines the Vaults' MEV functionality
[codex:1079871]  */
[codex:1079871] abstract contract VaultMev is Initializable, VaultState, IVaultMev {
[codex:1079871]   /// @custom:oz-upgrades-unsafe-allow state-variable-immutable
[codex:1079871]   address private immutable _sharedMevEscrow;
[codex:1079871]   address private _ownMevEscrow;
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Analyzing potential reentrancy risks**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc 'rg -n "contract DepositDataRegistry|DepositDataRegistry" contracts/contracts -g "*.sol"' in /tmp/codex-multi-qzyi9q5s succeeded in 9ms:
[codex:1079871] contracts/contracts/interfaces/IDepositDataRegistry.sol:10: * @title IDepositDataRegistry
[codex:1079871] contracts/contracts/interfaces/IDepositDataRegistry.sol:12: * @notice Defines the interface for DepositDataRegistry
[codex:1079871] contracts/contracts/interfaces/IDepositDataRegistry.sol:14:interface IDepositDataRegistry is IMulticall {
[codex:1079871] contracts/contracts/interfaces/IVaultValidators.sol:59:   * @notice Function for updating the validators manager. Can only be called by the admin. Default is the DepositDataRegistry contract.
[codex:1079871] contracts/contracts/vaults/ethereum/EthVault.sol:54:   * @param depositDataRegistry The address of the DepositDataRegistry contract
[codex:1079871] contracts/contracts/vaults/modules/VaultValidators.sol:10:import {IDepositDataRegistry} from '../../interfaces/IDepositDataRegistry.sol';
[codex:1079871] contracts/contracts/vaults/modules/VaultValidators.sol:38:  /// deprecated. Deposit data management is moved to DepositDataRegistry contract
[codex:1079871] contracts/contracts/vaults/modules/VaultValidators.sol:41:  /// deprecated. Deposit data management is moved to DepositDataRegistry contract
[codex:1079871] contracts/contracts/vaults/modules/VaultValidators.sol:52:   * @param depositDataRegistry The address of the DepositDataRegistry contract
[codex:1079871] contracts/contracts/vaults/modules/VaultValidators.sol:64:    // if validatorsManager is not set, use DepositDataRegistry contract address
[codex:1079871] contracts/contracts/vaults/modules/VaultValidators.sol:165:    // migrate deposit data variables to DepositDataRegistry contract
[codex:1079871] contracts/contracts/vaults/modules/VaultValidators.sol:166:    IDepositDataRegistry(_depositDataRegistry).migrate(
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Analyzing potential contract vulnerabilities and asset accounting**
[codex:1079871] 
[codex:1079871] I'm examining the bundle for deposit-related vulnerabilities, focusing on multicall delegatecalls, signature replay risks in validator registration, and possible flaws in osToken liquidation and redemption. I'm also exploring how asset accounting discrepancies—especially involving forcibly sent ETH or MEV escrow rewards—might enable share value manipulation or donation attacks. Next, I'll look into the keeper's harvest method for clarity on totalAssets updates.
[codex:1079871] exec
[codex:1079871] /bin/bash -lc 'rg -n "contract .*Keeper|function harvest" contracts/contracts -g "*.sol"' in /tmp/codex-multi-qzyi9q5s succeeded in 11ms:
[codex:1079871] contracts/contracts/interfaces/ISharedMevEscrow.sol:31:  function harvest(uint256 assets) external;
[codex:1079871] contracts/contracts/interfaces/IKeeperRewards.sol:193:  function harvest(
[codex:1079871] contracts/contracts/interfaces/IOwnMevEscrow.sol:36:  function harvest() external returns (uint256 assets);
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Analyzing vault asset accounting and potential vulnerabilities**
[codex:1079871] 
[codex:1079871] I'm weighing if totalAssetsDelta includes MEV rewards or not, since that affects vault asset accounting and potential exploits around depositing after MEV withdrawal. I'm also inspecting reentrancy protections and token liquidation logic while looking for pitfalls in fee calculations and position transfers. This feels like a careful review of MEV handling, access controls, and arithmetic safety in vault-related contracts.
[codex:1079871] exec
[codex:1079871] /bin/bash -lc "sed -n '1,200p' contracts/contracts/interfaces/IKeeperValidators.sol" in /tmp/codex-multi-qzyi9q5s succeeded in 6ms:
[codex:1079871] // SPDX-License-Identifier: BUSL-1.1
[codex:1079871] 
[codex:1079871] pragma solidity ^0.8.22;
[codex:1079871] 
[codex:1079871] import {IKeeperRewards} from './IKeeperRewards.sol';
[codex:1079871] import {IKeeperOracles} from './IKeeperOracles.sol';
[codex:1079871] 
[codex:1079871] /**
[codex:1079871]  * @title IKeeperValidators
[codex:1079871]  * @author StakeWise
[codex:1079871]  * @notice Defines the interface for the Keeper validators
[codex:1079871]  */
[codex:1079871] interface IKeeperValidators is IKeeperOracles, IKeeperRewards {
[codex:1079871]   /**
[codex:1079871]    * @notice Event emitted on validators approval
[codex:1079871]    * @param vault The address of the Vault
[codex:1079871]    * @param exitSignaturesIpfsHash The IPFS hash with the validators' exit signatures
[codex:1079871]    */
[codex:1079871]   event ValidatorsApproval(address indexed vault, string exitSignaturesIpfsHash);
[codex:1079871] 
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Analyzing security risks in validator approval and vault functions**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc "sed -n '1,220p' contracts/contracts/libraries/ExitQueue.sol" in /tmp/codex-multi-qzyi9q5s succeeded in 5ms:
[codex:1079871] // SPDX-License-Identifier: BUSL-1.1
[codex:1079871] 
[codex:1079871] pragma solidity ^0.8.22;
[codex:1079871] 
[codex:1079871] import {Math} from '@openzeppelin/contracts/utils/math/Math.sol';
[codex:1079871] import {SafeCast} from '@openzeppelin/contracts/utils/math/SafeCast.sol';
[codex:1079871] import {Errors} from './Errors.sol';
[codex:1079871] 
[codex:1079871] /**
[codex:1079871]  * @title ExitQueue
[codex:1079871]  * @author StakeWise
[codex:1079871]  * @notice ExitQueue represent checkpoints of burned shares and exited assets
[codex:1079871]  */
[codex:1079871] library ExitQueue {
[codex:1079871]   /**
[codex:1079871]    * @notice A struct containing checkpoint data
[codex:1079871]    * @param totalTickets The cumulative number of tickets (shares) exited
[codex:1079871]    * @param exitedAssets The number of assets that exited in this checkpoint
[codex:1079871]    */
[codex:1079871]   struct Checkpoint {
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Analyzing ExitQueue and collateral checks**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc "sed -n '1,200p' contracts/contracts/vaults/modules/VaultImmutables.sol" in /tmp/codex-multi-qzyi9q5s succeeded in 5ms:
[codex:1079871] // SPDX-License-Identifier: BUSL-1.1
[codex:1079871] 
[codex:1079871] pragma solidity ^0.8.22;
[codex:1079871] 
[codex:1079871] import {IKeeperRewards} from '../../interfaces/IKeeperRewards.sol';
[codex:1079871] import {Errors} from '../../libraries/Errors.sol';
[codex:1079871] 
[codex:1079871] /**
[codex:1079871]  * @title VaultImmutables
[codex:1079871]  * @author StakeWise
[codex:1079871]  * @notice Defines the Vault common immutable variables
[codex:1079871]  */
[codex:1079871] abstract contract VaultImmutables {
[codex:1079871]   /// @custom:oz-upgrades-unsafe-allow state-variable-immutable
[codex:1079871]   address internal immutable _keeper;
[codex:1079871] 
[codex:1079871]   /// @custom:oz-upgrades-unsafe-allow state-variable-immutable
[codex:1079871]   address internal immutable _vaultsRegistry;
[codex:1079871] 
[codex:1079871]   /// @custom:oz-upgrades-unsafe-allow state-variable-immutable
[codex:1079871] 
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Analyzing multicall msg.value exploit**
[codex:1079871] thinking
[codex:1079871] **Detailing deposit share inflation impact**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc "nl -ba contracts/contracts/base/Multicall.sol | sed -n '1,120p'" in /tmp/codex-multi-qzyi9q5s succeeded in 6ms:
[codex:1079871]      1	// SPDX-License-Identifier: GPL-2.0-or-later
[codex:1079871]      2	
[codex:1079871]      3	pragma solidity ^0.8.22;
[codex:1079871]      4	
[codex:1079871]      5	import '../interfaces/IMulticall.sol';
[codex:1079871]      6	
[codex:1079871]      7	/**
[codex:1079871]      8	 * @title Multicall
[codex:1079871]      9	 * @author Uniswap
[codex:1079871]     10	 * @notice Adopted from https://github.com/Uniswap/v3-periphery/blob/1d69caf0d6c8cfeae9acd1f34ead30018d6e6400/contracts/base/Multicall.sol
[codex:1079871]     11	 * @notice Enables calling multiple methods in a single call to the contract
[codex:1079871]     12	 */
[codex:1079871]     13	abstract contract Multicall is IMulticall {
[codex:1079871]     14	  /// @inheritdoc IMulticall
[codex:1079871]     15	  function multicall(bytes[] calldata data) external override returns (bytes[] memory results) {
[codex:1079871]     16	    uint256 dataLength = data.length;
[codex:1079871]     17	    results = new bytes[](dataLength);
[codex:1079871]     18	    for (uint256 i = 0; i < dataLength; i++) {
[codex:1079871]     19	      (bool success, bytes memory result) = address(this).delegatecall(data[i]);
[codex:1079871]     20	
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Adding line numbers to deposit functions**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc "nl -ba contracts/contracts/vaults/modules/VaultEthStaking.sol | sed -n '1,120p'" in /tmp/codex-multi-qzyi9q5s succeeded in 6ms:
[codex:1079871]      1	// SPDX-License-Identifier: BUSL-1.1
[codex:1079871]      2	
[codex:1079871]      3	pragma solidity ^0.8.22;
[codex:1079871]      4	
[codex:1079871]      5	import {Initializable} from '@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol';
[codex:1079871]      6	import {ReentrancyGuardUpgradeable} from '@openzeppelin/contracts-upgradeable/utils/ReentrancyGuardUpgradeable.sol';
[codex:1079871]      7	import {Address} from '@openzeppelin/contracts/utils/Address.sol';
[codex:1079871]      8	import {IEthValidatorsRegistry} from '../../interfaces/IEthValidatorsRegistry.sol';
[codex:1079871]      9	import {IKeeperRewards} from '../../interfaces/IKeeperRewards.sol';
[codex:1079871]     10	import {IVaultEthStaking} from '../../interfaces/IVaultEthStaking.sol';
[codex:1079871]     11	import {Errors} from '../../libraries/Errors.sol';
[codex:1079871]     12	import {VaultValidators} from './VaultValidators.sol';
[codex:1079871]     13	import {VaultState} from './VaultState.sol';
[codex:1079871]     14	import {VaultEnterExit} from './VaultEnterExit.sol';
[codex:1079871]     15	import {VaultMev} from './VaultMev.sol';
[codex:1079871]     16	
[codex:1079871]     17	/**
[codex:1079871]     18	 * @title VaultEthStaking
[codex:1079871]     19	 * @author StakeWise
[codex:1079871]     20	 * @notice Defines the Ethereum staking functionality for the Vault
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Analyzing multicall and deposit vulnerability**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc 'rg --files contracts/contracts -g "*.sol"' in /tmp/codex-multi-qzyi9q5s succeeded in 9ms:
[codex:1079871] contracts/contracts/interfaces/IVaultFee.sol
[codex:1079871] contracts/contracts/interfaces/IOwnMevEscrow.sol
[codex:1079871] contracts/contracts/interfaces/IEthVaultFactory.sol
[codex:1079871] contracts/contracts/interfaces/IVaultMev.sol
[codex:1079871] contracts/contracts/interfaces/IVaultState.sol
[codex:1079871] contracts/contracts/interfaces/IOsTokenConfig.sol
[codex:1079871] contracts/contracts/interfaces/IEthValidatorsRegistry.sol
[codex:1079871] contracts/contracts/interfaces/IVaultOsToken.sol
[codex:1079871] contracts/contracts/interfaces/IVaultAdmin.sol
[codex:1079871] contracts/contracts/interfaces/IKeeperRewards.sol
[codex:1079871] contracts/contracts/interfaces/IVaultEthStaking.sol
[codex:1079871] contracts/contracts/interfaces/IVaultsRegistry.sol
[codex:1079871] contracts/contracts/interfaces/IOsTokenVaultEscrow.sol
[codex:1079871] contracts/contracts/interfaces/IVaultVersion.sol
[codex:1079871] contracts/contracts/interfaces/IVaultEnterExit.sol
[codex:1079871] contracts/contracts/interfaces/IDepositDataRegistry.sol
[codex:1079871] contracts/contracts/interfaces/IKeeperOracles.sol
[codex:1079871] contracts/contracts/interfaces/IEthVault.sol
[codex:1079871] contracts/contracts/interfaces/IValidatorsRegistry.sol
[codex:1079871] contracts/contracts/interfaces/IKeeperValidators.sol
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Inspecting Errors.sol for vulnerabilities**
[codex:1079871] exec
[codex:1079871] /bin/bash -lc "sed -n '1,200p' contracts/contracts/libraries/Errors.sol" in /tmp/codex-multi-qzyi9q5s succeeded in 6ms:
[codex:1079871] // SPDX-License-Identifier: BUSL-1.1
[codex:1079871] 
[codex:1079871] pragma solidity ^0.8.22;
[codex:1079871] 
[codex:1079871] /**
[codex:1079871]  * @title Errors
[codex:1079871]  * @author StakeWise
[codex:1079871]  * @notice Contains all the custom errors
[codex:1079871]  */
[codex:1079871] library Errors {
[codex:1079871]   error AccessDenied();
[codex:1079871]   error InvalidShares();
[codex:1079871]   error InvalidAssets();
[codex:1079871]   error ZeroAddress();
[codex:1079871]   error InsufficientAssets();
[codex:1079871]   error CapacityExceeded();
[codex:1079871]   error InvalidCapacity();
[codex:1079871]   error InvalidSecurityDeposit();
[codex:1079871]   error InvalidFeeRecipient();
[codex:1079871]   error InvalidFeePercent();
[codex:1079871] 
[codex:1079871] 
[codex:1079871] 
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Analyzing potential vulnerabilities in vault deposit and shares minting**
[codex:1079871] 
[codex:1079871] I’m unpacking a tricky issue about how ETH sent to the vault triggers the `receive()` fallback, which mints shares to the sender, including possibly the MEV escrow contract. This could unintentionally credit the escrow with shares if it sends ETH without data, which might not be intended. I’m also checking if attackers could exploit this by forcing ETH transfers to mint undeserved shares, considering methods like selfdestruct or multicall, but many paths seem blocked or require controlling the escrow. There’s also a rounding issue in share burning during osToken redemption where small withdrawals might not burn enough shares, potentially letting users withdraw slightly more assets than deserved. Overall, I'm trying to identify concrete exploits but haven’t found a clear profitable attack yet.
[codex:1079871] thinking
[codex:1079871] **Examining rounding vulnerabilities in share redemption and deposit**
[codex:1079871] 
[codex:1079871] I’m looking closely at how rounding in converting assets to shares could let redeemers or liquidators withdraw assets without burning corresponding vault shares, potentially diluting existing share value. This could allow repeated small redemptions draining vault assets while maintaining collateral shares. Similarly, deposits use rounding up when converting assets to shares, possibly letting depositors mint more shares than their assets’ worth, creating a subtle profit via repeated tiny deposits. These rounding behaviors might enable dilution-type exploits, so I’m evaluating if these patterns can be practically leveraged for gain or if checks prevent abuse.
[codex:1079871] thinking
[codex:1079871] **Analyzing rounding-up effects on share minting and profit potential**
[codex:1079871] 
[codex:1079871] I’m unpacking how always rounding up during deposits causes users to mint slightly more shares than their assets’ exact value, especially when share price is above 1. This “rounding up” lets depositors convert small asset increments into whole shares, gaining extra share value over time. As repeated deposits push share price toward 1, depositors can gradually extract accrued yields from the vault’s surplus. I’m also weighing how deposit and withdraw rounding interact—withdrawals round down—affecting whether these tiny advantages realize as actual profit. The math suggests attackers can capture a bounded profit proportional to the vault’s surplus by depositing enough assets strategically, indicating a subtle yet concrete rounding-based extraction pathway.
[codex:1079871] thinking
[codex:1079871] **Confirming profitability of rounding-based share inflation attack**
[codex:1079871] 
[codex:1079871] I'm outlining a concrete attack where repeated tiny deposits using rounding-up mint extra shares, letting an attacker redeem more assets than deposited by capturing vault surplus. This aligns with known "first depositor" rounding exploits and fits the user’s interest in accounting errors favoring attackers. I plan to verify the critical code lines in the deposit function to support clear reporting.
[codex:1079871] exec
[codex:1079871] /bin/bash -lc "nl -ba contracts/contracts/vaults/modules/VaultEnterExit.sol | sed -n '110,180p'" in /tmp/codex-multi-qzyi9q5s succeeded in 7ms:
[codex:1079871]    110	    }
[codex:1079871]    111	
[codex:1079871]    112	    // transfer assets to the receiver
[codex:1079871]    113	    _transferVaultAssets(msg.sender, exitedAssets);
[codex:1079871]    114	    emit ExitedAssetsClaimed(msg.sender, positionTicket, newPositionTicket, exitedAssets);
[codex:1079871]    115	  }
[codex:1079871]    116	
[codex:1079871]    117	  /**
[codex:1079871]    118	   * @dev Internal function that must be used to process user deposits
[codex:1079871]    119	   * @param to The address to mint shares to
[codex:1079871]    120	   * @param assets The number of assets deposited
[codex:1079871]    121	   * @param referrer The address of the referrer. Set to zero address if not used.
[codex:1079871]    122	   * @return shares The total amount of shares minted
[codex:1079871]    123	   */
[codex:1079871]    124	  function _deposit(
[codex:1079871]    125	    address to,
[codex:1079871]    126	    uint256 assets,
[codex:1079871]    127	    address referrer
[codex:1079871]    128	  ) internal virtual returns (uint256 shares) {
[codex:1079871]    129	    _checkHarvested();
[codex:1079871] 
[codex:1079871] thinking
[codex:1079871] **Summarizing feasibility of rounding exploit**
[codex:1079871] 
[codex:1079871] I've analyzed the deposit rounding up exploit and found it theoretically possible but practically negligible due to gas costs and minimal per-deposit profit; overall, no concrete, exploitable profit paths appear under realistic conditions.
[codex:1079871] codex
[codex:1079871] {"no_findings":true,"summary":"Reviewed AUDIT_BUNDLE.txt; no concrete, exploitable paths to extract value (ETH/tokens/NFTs) were identified in the first‑party contracts under the stated assumptions.","findings":[]}
[codex:1079871] tokens used
[codex:1079871] 72,381
[codex:1079871] {"no_findings":true,"summary":"Reviewed AUDIT_BUNDLE.txt; no concrete, exploitable paths to extract value (ETH/tokens/NFTs) were identified in the first‑party contracts under the stated assumptions.","findings":[]}
Metadata
{
    "codex": {
        "ran_at": "2026-01-02T23:41:39.758368+00:00",
        "returncode": 0
    },
    "summary": "Reviewed AUDIT_BUNDLE.txt; no concrete, exploitable paths to extract value (ETH/tokens/NFTs) were identified in the first\u2011party contracts under the stated assumptions.",
    "raw_final": {
        "summary": "Reviewed AUDIT_BUNDLE.txt; no concrete, exploitable paths to extract value (ETH/tokens/NFTs) were identified in the first\u2011party contracts under the stated assumptions.",
        "findings": [],
        "no_findings": true
    },
    "no_findings": true,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
2
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
36
EXT*/BALANCE
9
Total opcodes
11805
Flags
delegatecall_present heavy_ext_balance_usage call_family_heavy
View cast disassembly output
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 0x24af
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 0x02d1
00000032: JUMPI
00000033: DUP1
00000034: PUSH4 0x01e1d114
00000039: EQ
0000003a: PUSH2 0x02cc
0000003d: JUMPI
0000003e: DUP1
0000003f: PUSH4 0x066055e0
00000044: EQ
00000045: PUSH2 0x02c7
00000048: JUMPI
00000049: DUP1
0000004a: PUSH4 0x07a2d13a
0000004f: EQ
00000050: PUSH2 0x02c2
00000053: JUMPI
00000054: DUP1
00000055: PUSH4 0x18f72950
0000005a: EQ
0000005b: PUSH2 0x02bd
0000005e: JUMPI
0000005f: DUP1
00000060: PUSH4 0x1a7ff553
00000065: EQ
00000066: PUSH2 0x02b8
00000069: JUMPI
0000006a: DUP1
0000006b: PUSH4 0x201b9eb5
00000070: EQ
00000071: PUSH2 0x02b3
00000074: JUMPI
00000075: DUP1
00000076: PUSH4 0x2999ad3f
0000007b: EQ
0000007c: PUSH2 0x02ae
0000007f: JUMPI
00000080: DUP1
00000081: PUSH4 0x2cdf7401
00000086: EQ
00000087: PUSH2 0x02a9
0000008a: JUMPI
0000008b: DUP1
0000008c: PUSH4 0x3229fa95
00000091: EQ
00000092: PUSH2 0x02a4
00000095: JUMPI
00000096: DUP1
00000097: PUSH4 0x33194c0a
0000009c: EQ
0000009d: PUSH2 0x029f
000000a0: JUMPI
000000a1: DUP1
000000a2: PUSH4 0x36fe59d2
000000a7: EQ
000000a8: PUSH2 0x029a
000000ab: JUMPI
000000ac: DUP1
000000ad: PUSH4 0x3a98ef39
000000b2: EQ
000000b3: PUSH2 0x0295
000000b6: JUMPI
000000b7: DUP1
000000b8: PUSH4 0x439fab91
000000bd: EQ
000000be: PUSH2 0x0290
000000c1: JUMPI
000000c2: DUP1
000000c3: PUSH4 0x43e82a79
000000c8: EQ
000000c9: PUSH2 0x028b
000000cc: JUMPI
000000cd: DUP1
000000ce: PUSH4 0x46904840
000000d3: EQ
000000d4: PUSH2 0x0286
000000d7: JUMPI
000000d8: DUP1
000000d9: PUSH4 0x4ec96b22
000000de: EQ
000000df: PUSH2 0x0281
000000e2: JUMPI
000000e3: DUP1
000000e4: PUSH4 0x4f1ef286
000000e9: EQ
000000ea: PUSH2 0x027c
000000ed: JUMPI
000000ee: DUP1
000000ef: PUSH4 0x52d1902d
000000f4: EQ
000000f5: PUSH2 0x0277
000000f8: JUMPI
000000f9: DUP1
000000fa: PUSH4 0x53156f28
000000ff: EQ
00000100: PUSH2 0x0272
00000103: JUMPI
00000104: DUP1
00000105: PUSH4 0x54fd4d50
0000010a: EQ
0000010b: PUSH2 0x026d
0000010e: JUMPI
0000010f: DUP1
00000110: PUSH4 0x5c60da1b
00000115: EQ
00000116: PUSH2 0x0268
00000119: JUMPI
0000011a: DUP1
0000011b: PUSH4 0x5cfc1a51
00000120: EQ
00000121: PUSH2 0x0263
00000124: JUMPI
00000125: DUP1
00000126: PUSH4 0x60d60e6e
0000012b: EQ
0000012c: PUSH2 0x025e
0000012f: JUMPI
00000130: DUP1
00000131: PUSH4 0x72b410a8
00000136: EQ
00000137: PUSH2 0x0259
0000013a: JUMPI
0000013b: DUP1
0000013c: PUSH4 0x754c3888
00000141: EQ
00000142: PUSH2 0x0254
00000145: JUMPI
00000146: DUP1
00000147: PUSH4 0x76b58b90
0000014c: EQ
0000014d: PUSH2 0x024f
00000150: JUMPI
00000151: DUP1
00000152: PUSH4 0x7fd6f15c
00000157: EQ
00000158: PUSH2 0x024a
0000015b: JUMPI
0000015c: DUP1
0000015d: PUSH4 0x83d430d5
00000162: EQ
00000163: PUSH2 0x0245
00000166: JUMPI
00000167: DUP1
00000168: PUSH4 0x8697d2c2
0000016d: EQ
0000016e: PUSH2 0x0240
00000171: JUMPI
00000172: DUP1
00000173: PUSH4 0x8ceab9aa
00000178: EQ
00000179: PUSH2 0x023b
0000017c: JUMPI
0000017d: DUP1
0000017e: PUSH4 0x9267842a
00000183: EQ
00000184: PUSH2 0x0236
00000187: JUMPI
00000188: DUP1
00000189: PUSH4 0xa49a1e7d
0000018e: EQ
0000018f: PUSH2 0x0231
00000192: JUMPI
00000193: DUP1
00000194: PUSH4 0xac9650d8
00000199: EQ
0000019a: PUSH2 0x022c
0000019d: JUMPI
0000019e: DUP1
0000019f: PUSH4 0xad3cb1cc
000001a4: EQ
000001a5: PUSH2 0x0227
000001a8: JUMPI
000001a9: DUP1
000001aa: PUSH4 0xb1f0e7c7
000001af: EQ
000001b0: PUSH2 0x0222
000001b3: JUMPI
000001b4: DUP1
000001b5: PUSH4 0xc6e6f592
000001ba: EQ
000001bb: PUSH2 0x021d
000001be: JUMPI
000001bf: DUP1
000001c0: PUSH4 0xd83ad00c
000001c5: EQ
000001c6: PUSH2 0x0218
000001c9: JUMPI
000001ca: DUP1
000001cb: PUSH4 0xe74b981b
000001d0: EQ
000001d1: PUSH2 0x0213
000001d4: JUMPI
000001d5: DUP1
000001d6: PUSH4 0xee3bd5df
000001db: EQ
000001dc: PUSH2 0x020e
000001df: JUMPI
000001e0: DUP1
000001e1: PUSH4 0xf04da65b
000001e6: EQ
000001e7: PUSH2 0x0209
000001ea: JUMPI
000001eb: DUP1
000001ec: PUSH4 0xf851a440
000001f1: EQ
000001f2: PUSH2 0x0204
000001f5: JUMPI
000001f6: PUSH4 0xf9609f08
000001fb: SUB
000001fc: PUSH2 0x000e
000001ff: JUMPI
00000200: PUSH2 0x1d76
00000203: JUMP
00000204: JUMPDEST
00000205: PUSH2 0x1d4f
00000208: JUMP
00000209: JUMPDEST
0000020a: PUSH2 0x1d14
0000020d: JUMP
0000020e: JUMPDEST
0000020f: PUSH2 0x1cee
00000212: JUMP
00000213: JUMPDEST
00000214: PUSH2 0x1cc1
00000217: JUMP
00000218: JUMPDEST
00000219: PUSH2 0x1c9b
0000021c: JUMP
0000021d: JUMPDEST
0000021e: PUSH2 0x1c7d
00000221: JUMP
00000222: JUMPDEST
00000223: PUSH2 0x1c63
00000226: JUMP
00000227: JUMPDEST
00000228: PUSH2 0x1c1e
0000022b: JUMP
0000022c: JUMPDEST
0000022d: PUSH2 0x1ba8
00000230: JUMP
00000231: JUMPDEST
00000232: PUSH2 0x1aad
00000235: JUMP
00000236: JUMPDEST
00000237: PUSH2 0x18b9
0000023a: JUMP
0000023b: JUMPDEST
0000023c: PUSH2 0x1885
0000023f: JUMP
00000240: JUMPDEST
00000241: PUSH2 0x16df
00000244: JUMP
00000245: JUMPDEST
00000246: PUSH2 0x150f
00000249: JUMP
0000024a: JUMPDEST
0000024b: PUSH2 0x14eb
0000024e: JUMP
0000024f: JUMPDEST
00000250: PUSH2 0x149a
00000253: JUMP
00000254: JUMPDEST
00000255: PUSH2 0x142f
00000258: JUMP
00000259: JUMPDEST
0000025a: PUSH2 0x13a2
0000025d: JUMP
0000025e: JUMPDEST
0000025f: PUSH2 0x12fd
00000262: JUMP
00000263: JUMPDEST
00000264: PUSH2 0x12e3
00000267: JUMP
00000268: JUMPDEST
00000269: PUSH2 0x12af
0000026c: JUMP
0000026d: JUMPDEST
0000026e: PUSH2 0x1294
00000271: JUMP
00000272: JUMPDEST
00000273: PUSH2 0x1270
00000276: JUMP
00000277: JUMPDEST
00000278: PUSH2 0x1207
0000027b: JUMP
0000027c: JUMPDEST
0000027d: PUSH2 0x0f81
00000280: JUMP
00000281: JUMPDEST
00000282: PUSH2 0x0e1c
00000285: JUMP
00000286: JUMPDEST
00000287: PUSH2 0x0df4
0000028a: JUMP
0000028b: JUMPDEST
0000028c: PUSH2 0x0ce7
0000028f: JUMP
00000290: JUMPDEST
00000291: PUSH2 0x0c21
00000294: JUMP
00000295: JUMPDEST
00000296: PUSH2 0x0ba0
00000299: JUMP
0000029a: JUMPDEST
0000029b: PUSH2 0x0b7f
0000029e: JUMP
0000029f: JUMPDEST
000002a0: PUSH2 0x0b45
000002a3: JUMP
000002a4: JUMPDEST
000002a5: PUSH2 0x0b19
000002a8: JUMP
000002a9: JUMPDEST
000002aa: PUSH2 0x0aff
000002ad: JUMP
000002ae: JUMPDEST
000002af: PUSH2 0x065c
000002b2: JUMP
000002b3: JUMPDEST
000002b4: PUSH2 0x0619
000002b7: JUMP
000002b8: JUMPDEST
000002b9: PUSH2 0x05ba
000002bc: JUMP
000002bd: JUMPDEST
000002be: PUSH2 0x0566
000002c1: JUMP
000002c2: JUMPDEST
000002c3: PUSH2 0x0548
000002c6: JUMP
000002c7: JUMPDEST
000002c8: PUSH2 0x03a4
000002cb: JUMP
000002cc: JUMPDEST
000002cd: PUSH2 0x0373
000002d0: JUMP
000002d1: JUMPDEST
000002d2: PUSH2 0x02f9
000002d5: JUMP
000002d6: JUMPDEST
000002d7: PUSH1 0x01
000002d9: PUSH1 0x01
000002db: PUSH1 0xa0
000002dd: SHL
000002de: SUB
000002df: DUP2
000002e0: AND
000002e1: SUB
000002e2: PUSH2 0x02e7
000002e5: JUMPI
000002e6: JUMP
000002e7: JUMPDEST
000002e8: PUSH0
000002e9: DUP1
000002ea: REVERT
000002eb: JUMPDEST
000002ec: SWAP1
000002ed: DUP2
000002ee: PUSH1 0x80
000002f0: SWAP2
000002f1: SUB
000002f2: SLT
000002f3: PUSH2 0x02e7
000002f6: JUMPI
000002f7: SWAP1
000002f8: JUMP
000002f9: JUMPDEST
000002fa: PUSH1 0x80
000002fc: CALLDATASIZE
000002fd: PUSH1 0x03
000002ff: NOT
00000300: ADD
00000301: SLT
00000302: PUSH2 0x02e7
00000305: JUMPI
00000306: PUSH1 0x04
00000308: CALLDATALOAD
00000309: PUSH2 0x0311
0000030c: DUP2
0000030d: PUSH2 0x02d6
00000310: JUMP
00000311: JUMPDEST
00000312: PUSH1 0x44
00000314: CALLDATALOAD
00000315: PUSH2 0x031d
00000318: DUP2
00000319: PUSH2 0x02d6
0000031c: JUMP
0000031d: JUMPDEST
0000031e: PUSH1 0x64
00000320: CALLDATALOAD
00000321: SWAP1
00000322: PUSH1 0x01
00000324: PUSH1 0x01
00000326: PUSH1 0x40
00000328: SHL
00000329: SUB
0000032a: DUP3
0000032b: GT
0000032c: PUSH2 0x02e7
0000032f: JUMPI
00000330: PUSH1 0x20
00000332: SWAP3
00000333: PUSH2 0x034b
00000336: PUSH2 0x0346
00000339: PUSH2 0x0361
0000033c: SWAP5
0000033d: CALLDATASIZE
0000033e: SWAP1
0000033f: PUSH1 0x04
00000341: ADD
00000342: PUSH2 0x02eb
00000345: JUMP
00000346: JUMPDEST
00000347: PUSH2 0x1e64
0000034a: JUMP
0000034b: JUMPDEST
0000034c: PUSH2 0x0356
0000034f: DUP3
00000350: CALLVALUE
00000351: CALLER
00000352: PUSH2 0x3eb2
00000355: JUMP
00000356: JUMPDEST
00000357: POP
00000358: PUSH1 0x24
0000035a: CALLDATALOAD
0000035b: SWAP1
0000035c: CALLER
0000035d: PUSH2 0x2d08
00000360: JUMP
00000361: JUMPDEST
00000362: PUSH1 0x40
00000364: MLOAD
00000365: SWAP1
00000366: DUP2
00000367: MSTORE
00000368: RETURN
00000369: JUMPDEST
0000036a: PUSH0
0000036b: SWAP2
0000036c: SUB
0000036d: SLT
0000036e: PUSH2 0x02e7
00000371: JUMPI
00000372: JUMP
00000373: JUMPDEST
00000374: CALLVALUE
00000375: PUSH2 0x02e7
00000378: JUMPI
00000379: PUSH0
0000037a: CALLDATASIZE
0000037b: PUSH1 0x03
0000037d: NOT
0000037e: ADD
0000037f: SLT
00000380: PUSH2 0x02e7
00000383: JUMPI
00000384: PUSH1 0x20
00000386: PUSH1 0x98
00000388: SLOAD
00000389: PUSH1 0x80
0000038b: SHR
0000038c: PUSH1 0x40
0000038e: MLOAD
0000038f: SWAP1
00000390: DUP2
00000391: MSTORE
00000392: RETURN
00000393: JUMPDEST
00000394: PUSH1 0x01
00000396: PUSH1 0x01
00000398: PUSH1 0x80
0000039a: SHL
0000039b: SUB
0000039c: DUP2
0000039d: AND
0000039e: SUB
0000039f: PUSH2 0x02e7
000003a2: JUMPI
000003a3: JUMP
000003a4: JUMPDEST
000003a5: CALLVALUE
000003a6: PUSH2 0x02e7
000003a9: JUMPI
000003aa: PUSH1 0x20
000003ac: CALLDATASIZE
000003ad: PUSH1 0x03
000003af: NOT
000003b0: ADD
000003b1: SLT
000003b2: PUSH2 0x02e7
000003b5: JUMPI
000003b6: PUSH1 0x04
000003b8: CALLDATALOAD
000003b9: PUSH2 0x03c1
000003bc: DUP2
000003bd: PUSH2 0x0393
000003c0: JUMP
000003c1: JUMPDEST
000003c2: PUSH1 0x40
000003c4: MLOAD
000003c5: PUSH4 0x3b9e9f01
000003ca: PUSH1 0xe2
000003cc: SHL
000003cd: DUP2
000003ce: MSTORE
000003cf: CALLER
000003d0: PUSH1 0x04
000003d2: DUP3
000003d3: ADD
000003d4: MSTORE
000003d5: PUSH1 0x01
000003d7: PUSH1 0x01
000003d9: PUSH1 0x80
000003db: SHL
000003dc: SUB
000003dd: DUP3
000003de: AND
000003df: PUSH1 0x24
000003e1: DUP3
000003e2: ADD
000003e3: MSTORE
000003e4: PUSH1 0x20
000003e6: DUP2
000003e7: PUSH1 0x44
000003e9: DUP2
000003ea: PUSH0
000003eb: PUSH1 0x01
000003ed: PUSH1 0x01
000003ef: PUSH1 0xa0
000003f1: SHL
000003f2: SUB
000003f3: PUSH32 0x0000000000000000000000002a261e60fb14586b474c208b1b7ac6d0f5000306
00000414: AND
00000415: GAS
00000416: CALL
00000417: SWAP1
00000418: DUP2
00000419: ISZERO
0000041a: PUSH2 0x0543
0000041d: JUMPI
0000041e: PUSH0
0000041f: SWAP2
00000420: PUSH2 0x0514
00000423: JUMPI
00000424: JUMPDEST
00000425: POP
00000426: CALLER
00000427: PUSH0
00000428: SWAP1
00000429: DUP2
0000042a: MSTORE
0000042b: PUSH2 0x0137
0000042e: PUSH1 0x20
00000430: MSTORE
00000431: PUSH1 0x40
00000433: SWAP1
00000434: KECCAK256
00000435: PUSH2 0x043d
00000438: SWAP1
00000439: PUSH2 0x1dba
0000043c: JUMP
0000043d: JUMPDEST
0000043e: SWAP2
0000043f: PUSH1 0x01
00000441: PUSH1 0x01
00000443: PUSH1 0x80
00000445: SHL
00000446: SUB
00000447: PUSH2 0x0457
0000044a: DUP5
0000044b: MLOAD
0000044c: PUSH1 0x01
0000044e: PUSH1 0x01
00000450: PUSH1 0x80
00000452: SHL
00000453: SUB
00000454: AND
00000455: SWAP1
00000456: JUMP
00000457: JUMPDEST
00000458: AND
00000459: ISZERO
0000045a: PUSH2 0x0502
0000045d: JUMPI
0000045e: PUSH2 0x04b0
00000461: DUP4
00000462: PUSH2 0x046d
00000465: PUSH2 0x04fe
00000468: SWAP6
00000469: PUSH2 0x24b9
0000046c: JUMP
0000046d: JUMPDEST
0000046e: PUSH2 0x0497
00000471: PUSH2 0x048a
00000474: DUP5
00000475: PUSH2 0x0485
00000478: DUP5
00000479: MLOAD
0000047a: PUSH1 0x01
0000047c: PUSH1 0x01
0000047e: PUSH1 0x80
00000480: SHL
00000481: SUB
00000482: AND
00000483: SWAP1
00000484: JUMP
00000485: JUMPDEST
00000486: PUSH2 0x1df3
00000489: JUMP
0000048a: JUMPDEST
0000048b: PUSH1 0x01
0000048d: PUSH1 0x01
0000048f: PUSH1 0x80
00000491: SHL
00000492: SUB
00000493: AND
00000494: DUP3
00000495: MSTORE
00000496: JUMP
00000497: JUMPDEST
00000498: CALLER
00000499: PUSH0
0000049a: SWAP1
0000049b: DUP2
0000049c: MSTORE
0000049d: PUSH2 0x0137
000004a0: PUSH1 0x20
000004a2: MSTORE
000004a3: PUSH1 0x40
000004a5: SWAP1
000004a6: KECCAK256
000004a7: PUSH2 0x1e0c
000004aa: JUMP
000004ab: JUMPDEST
000004ac: PUSH2 0x1e0c
000004af: JUMP
000004b0: JUMPDEST
000004b1: PUSH1 0x40
000004b3: DUP1
000004b4: MLOAD
000004b5: DUP4
000004b6: DUP2
000004b7: MSTORE
000004b8: PUSH1 0x01
000004ba: PUSH1 0x01
000004bc: PUSH1 0x80
000004be: SHL
000004bf: SUB
000004c0: SWAP3
000004c1: SWAP1
000004c2: SWAP3
000004c3: AND
000004c4: PUSH1 0x20
000004c6: DUP4
000004c7: ADD
000004c8: MSTORE
000004c9: CALLER
000004ca: SWAP2
000004cb: PUSH32 0x3f7354ba02880b4fa37a629985852a38417ff369369ce1e52fa6f8342a9100a7
000004ec: SWAP2
000004ed: SWAP1
000004ee: LOG2
000004ef: PUSH1 0x40
000004f1: MLOAD
000004f2: SWAP1
000004f3: DUP2
000004f4: MSTORE
000004f5: SWAP1
000004f6: DUP2
000004f7: SWAP1
000004f8: PUSH1 0x20
000004fa: DUP3
000004fb: ADD
000004fc: SWAP1
000004fd: JUMP
000004fe: JUMPDEST
000004ff: SUB
00000500: SWAP1
00000501: RETURN
00000502: JUMPDEST
00000503: PUSH1 0x40
00000505: MLOAD
00000506: PUSH4 0x673f032f
0000050b: PUSH1 0xe1
0000050d: SHL
0000050e: DUP2
0000050f: MSTORE
00000510: PUSH1 0x04
00000512: SWAP1
00000513: REVERT
00000514: JUMPDEST
00000515: PUSH2 0x0536
00000518: SWAP2
00000519: POP
0000051a: PUSH1 0x20
0000051c: RETURNDATASIZE
0000051d: PUSH1 0x20
0000051f: GT
00000520: PUSH2 0x053c
00000523: JUMPI
00000524: JUMPDEST
00000525: PUSH2 0x052e
00000528: DUP2
00000529: DUP4
0000052a: PUSH2 0x0f0f
0000052d: JUMP
0000052e: JUMPDEST
0000052f: DUP2
00000530: ADD
00000531: SWAP1
00000532: PUSH2 0x1da0
00000535: JUMP
00000536: JUMPDEST
00000537: PUSH0
00000538: PUSH2 0x0424
0000053b: JUMP
0000053c: JUMPDEST
0000053d: POP
0000053e: RETURNDATASIZE
0000053f: PUSH2 0x0524
00000542: JUMP
00000543: JUMPDEST
00000544: PUSH2 0x1daf
00000547: JUMP
00000548: JUMPDEST
00000549: CALLVALUE
0000054a: PUSH2 0x02e7
0000054d: JUMPI
0000054e: PUSH1 0x20
00000550: CALLDATASIZE
00000551: PUSH1 0x03
00000553: NOT
00000554: ADD
00000555: SLT
00000556: PUSH2 0x02e7
00000559: JUMPI
0000055a: PUSH1 0x20
0000055c: PUSH2 0x0361
0000055f: PUSH1 0x04
00000561: CALLDATALOAD
00000562: PUSH2 0x1e3e
00000565: JUMP
00000566: JUMPDEST
00000567: PUSH1 0x60
00000569: CALLDATASIZE
0000056a: PUSH1 0x03
0000056c: NOT
0000056d: ADD
0000056e: SLT
0000056f: PUSH2 0x02e7
00000572: JUMPI
00000573: PUSH1 0x04
00000575: CALLDATALOAD
00000576: PUSH2 0x057e
00000579: DUP2
0000057a: PUSH2 0x02d6
0000057d: JUMP
0000057e: JUMPDEST
0000057f: PUSH1 0x24
00000581: CALLDATALOAD
00000582: PUSH2 0x058a
00000585: DUP2
00000586: PUSH2 0x02d6
00000589: JUMP
0000058a: JUMPDEST
0000058b: PUSH1 0x44
0000058d: CALLDATALOAD
0000058e: SWAP1
0000058f: PUSH1 0x01
00000591: PUSH1 0x01
00000593: PUSH1 0x40
00000595: SHL
00000596: SUB
00000597: DUP3
00000598: GT
00000599: PUSH2 0x02e7
0000059c: JUMPI
0000059d: PUSH1 0x20
0000059f: SWAP3
000005a0: PUSH2 0x05b3
000005a3: PUSH2 0x0346
000005a6: PUSH2 0x0361
000005a9: SWAP5
000005aa: CALLDATASIZE
000005ab: SWAP1
000005ac: PUSH1 0x04
000005ae: ADD
000005af: PUSH2 0x02eb
000005b2: JUMP
000005b3: JUMPDEST
000005b4: CALLVALUE
000005b5: SWAP1
000005b6: PUSH2 0x3eb2
000005b9: JUMP
000005ba: JUMPDEST
000005bb: CALLVALUE
000005bc: PUSH2 0x02e7
000005bf: JUMPI
000005c0: PUSH1 0x20
000005c2: CALLDATASIZE
000005c3: PUSH1 0x03
000005c5: NOT
000005c6: ADD
000005c7: SLT
000005c8: PUSH2 0x02e7
000005cb: JUMPI
000005cc: PUSH1 0x04
000005ce: CALLDATALOAD
000005cf: PUSH1 0x01
000005d1: PUSH1 0x01
000005d3: PUSH1 0x40
000005d5: SHL
000005d6: SUB
000005d7: DUP2
000005d8: GT
000005d9: PUSH2 0x02e7
000005dc: JUMPI
000005dd: PUSH2 0x0346
000005e0: PUSH2 0x0020
000005e3: SWAP2
000005e4: CALLDATASIZE
000005e5: SWAP1
000005e6: PUSH1 0x04
000005e8: ADD
000005e9: PUSH2 0x02eb
000005ec: JUMP
000005ed: JUMPDEST
000005ee: PUSH1 0x60
000005f0: SWAP1
000005f1: PUSH1 0x03
000005f3: NOT
000005f4: ADD
000005f5: SLT
000005f6: PUSH2 0x02e7
000005f9: JUMPI
000005fa: PUSH1 0x04
000005fc: CALLDATALOAD
000005fd: PUSH2 0x0605
00000600: DUP2
00000601: PUSH2 0x02d6
00000604: JUMP
00000605: JUMPDEST
00000606: SWAP1
00000607: PUSH1 0x24
00000609: CALLDATALOAD
0000060a: SWAP1
0000060b: PUSH1 0x44
0000060d: CALLDATALOAD
0000060e: PUSH2 0x0616
00000611: DUP2
00000612: PUSH2 0x02d6
00000615: JUMP
00000616: JUMPDEST
00000617: SWAP1
00000618: JUMP
00000619: JUMPDEST
0000061a: CALLVALUE
0000061b: PUSH2 0x02e7
0000061e: JUMPI
0000061f: PUSH1 0x20
00000621: PUSH2 0x0361
00000624: PUSH2 0x062c
00000627: CALLDATASIZE
00000628: PUSH2 0x05ed
0000062b: JUMP
0000062c: JUMPDEST
0000062d: SWAP2
0000062e: CALLER
0000062f: PUSH2 0x2d08
00000632: JUMP
00000633: JUMPDEST
00000634: PUSH1 0x60
00000636: SWAP1
00000637: PUSH1 0x03
00000639: NOT
0000063a: ADD
0000063b: SLT
0000063c: PUSH2 0x02e7
0000063f: JUMPI
00000640: PUSH1 0x04
00000642: CALLDATALOAD
00000643: SWAP1
00000644: PUSH1 0x24
00000646: CALLDATALOAD
00000647: PUSH2 0x064f
0000064a: DUP2
0000064b: PUSH2 0x02d6
0000064e: JUMP
0000064f: JUMPDEST
00000650: SWAP1
00000651: PUSH1 0x44
00000653: CALLDATALOAD
00000654: PUSH2 0x0616
00000657: DUP2
00000658: PUSH2 0x02d6
0000065b: JUMP
0000065c: JUMPDEST
0000065d: CALLVALUE
0000065e: PUSH2 0x02e7
00000661: JUMPI
00000662: PUSH2 0x066a
00000665: CALLDATASIZE
00000666: PUSH2 0x0633
00000669: JUMP
0000066a: JUMPDEST
0000066b: SWAP1
0000066c: PUSH1 0x01
0000066e: PUSH1 0x01
00000670: PUSH1 0xa0
00000672: SHL
00000673: SUB
00000674: DUP1
00000675: DUP4
00000676: AND
00000677: ISZERO
00000678: PUSH2 0x0aed
0000067b: JUMPI
0000067c: PUSH2 0x0683
0000067f: PUSH2 0x36fb
00000682: JUMP
00000683: JUMPDEST
00000684: DUP1
00000685: PUSH32 0x0000000000000000000000002a261e60fb14586b474c208b1b7ac6d0f5000306
000006a6: AND
000006a7: SWAP2
000006a8: DUP3
000006a9: EXTCODESIZE
000006aa: ISZERO
000006ab: PUSH2 0x02e7
000006ae: JUMPI
000006af: PUSH1 0x40
000006b1: DUP1
000006b2: MLOAD
000006b3: PUSH4 0x1d8557d7
000006b8: PUSH1 0xe0
000006ba: SHL
000006bb: DUP2
000006bc: MSTORE
000006bd: PUSH1 0x04
000006bf: SWAP5
000006c0: SWAP2
000006c1: SWAP1
000006c2: PUSH0
000006c3: DUP2
000006c4: DUP8
000006c5: DUP2
000006c6: DUP4
000006c7: DUP8
000006c8: GAS
000006c9: CALL
000006ca: DUP1
000006cb: ISZERO
000006cc: PUSH2 0x0543
000006cf: JUMPI
000006d0: PUSH2 0x0ad4
000006d3: JUMPI
000006d4: JUMPDEST
000006d5: POP
000006d6: PUSH1 0x01
000006d8: PUSH1 0x01
000006da: PUSH1 0xa0
000006dc: SHL
000006dd: SUB
000006de: DUP4
000006df: AND
000006e0: PUSH0
000006e1: SWAP1
000006e2: DUP2
000006e3: MSTORE
000006e4: PUSH2 0x0137
000006e7: PUSH1 0x20
000006e9: MSTORE
000006ea: PUSH1 0x40
000006ec: SWAP1
000006ed: KECCAK256
000006ee: PUSH2 0x06f6
000006f1: SWAP1
000006f2: PUSH2 0x1dba
000006f5: JUMP
000006f6: JUMPDEST
000006f7: PUSH1 0x01
000006f9: PUSH1 0x01
000006fb: PUSH1 0x80
000006fd: SHL
000006fe: SUB
000006ff: SWAP3
00000700: DUP4
00000701: PUSH2 0x0711
00000704: DUP4
00000705: MLOAD
00000706: PUSH1 0x01
00000708: PUSH1 0x01
0000070a: PUSH1 0x80
0000070c: SHL
0000070d: SUB
0000070e: AND
0000070f: SWAP1
00000710: JUMP
00000711: JUMPDEST
00000712: AND
00000713: ISZERO
00000714: PUSH2 0x0ac4
00000717: JUMPI
00000718: PUSH2 0x0720
0000071b: DUP3
0000071c: PUSH2 0x24b9
0000071f: JUMP
00000720: JUMPDEST
00000721: DUP3
00000722: MLOAD
00000723: PUSH4 0xe48a5f7b
00000728: PUSH1 0xe0
0000072a: SHL
0000072b: DUP2
0000072c: MSTORE
0000072d: ADDRESS
0000072e: DUP9
0000072f: DUP3
00000730: ADD
00000731: SWAP1
00000732: DUP2
00000733: MSTORE
00000734: SWAP1
00000735: SWAP8
00000736: SWAP1
00000737: PUSH1 0x60
00000739: SWAP1
0000073a: DUP10
0000073b: SWAP1
0000073c: DUP2
0000073d: SWAP1
0000073e: PUSH1 0x20
00000740: ADD
00000741: SUB
00000742: DUP2
00000743: DUP11
00000744: PUSH32 0x000000000000000000000000287d1e2a8de183a8bf8f2b09fa1340fbd766eb59
00000765: AND
00000766: GAS
00000767: STATICCALL
00000768: SWAP8
00000769: DUP9
0000076a: ISZERO
0000076b: PUSH2 0x0543
0000076e: JUMPI
0000076f: PUSH0
00000770: SWAP9
00000771: PUSH2 0x0a93
00000774: JUMPI
00000775: JUMPDEST
00000776: POP
00000777: PUSH1 0x20
00000779: SWAP8
0000077a: DUP9
0000077b: DUP2
0000077c: ADD
0000077d: SWAP6
0000077e: PUSH1 0x01
00000780: PUSH1 0x01
00000782: PUSH1 0x40
00000784: SHL
00000785: SUB
00000786: SWAP2
00000787: DUP3
00000788: DUP1
00000789: PUSH2 0x0799
0000078c: DUP11
0000078d: MLOAD
0000078e: PUSH1 0x01
00000790: PUSH1 0x01
00000792: PUSH1 0x40
00000794: SHL
00000795: SUB
00000796: AND
00000797: SWAP1
00000798: JUMP
00000799: JUMPDEST
0000079a: AND
0000079b: EQ
0000079c: PUSH2 0x0a83
0000079f: JUMPI
000007a0: SWAP1
000007a1: DUP13
000007a2: SWAP3
000007a3: SWAP2
000007a4: DUP8
000007a5: MLOAD
000007a6: SWAP2
000007a7: DUP13
000007a8: DUP4
000007a9: DUP1
000007aa: PUSH2 0x07c5
000007ad: PUSH4 0x03d1689d
000007b2: PUSH1 0xe1
000007b4: SHL
000007b5: SWAP9
000007b6: DUP10
000007b7: DUP4
000007b8: MSTORE
000007b9: DUP11
000007ba: DUP4
000007bb: ADD
000007bc: SWAP2
000007bd: SWAP1
000007be: PUSH1 0x20
000007c0: DUP4
000007c1: ADD
000007c2: SWAP3
000007c3: MSTORE
000007c4: JUMP
000007c5: JUMPDEST
000007c6: SUB
000007c7: DUP2
000007c8: DUP11
000007c9: GAS
000007ca: STATICCALL
000007cb: SWAP2
000007cc: DUP3
000007cd: ISZERO
000007ce: PUSH2 0x0543
000007d1: JUMPI
000007d2: PUSH2 0x07f1
000007d5: SWAP4
000007d6: DUP15
000007d7: PUSH0
000007d8: SWAP5
000007d9: PUSH2 0x0a5e
000007dc: JUMPI
000007dd: JUMPDEST
000007de: POP
000007df: POP
000007e0: MLOAD
000007e1: PUSH1 0x01
000007e3: PUSH1 0x01
000007e5: PUSH1 0x80
000007e7: SHL
000007e8: SUB
000007e9: AND
000007ea: JUMPDEST
000007eb: AND
000007ec: SWAP1
000007ed: PUSH2 0x25e8
000007f0: JUMP
000007f1: JUMPDEST
000007f2: SWAP7
000007f3: PUSH2 0x0815
000007f6: PUSH2 0x080f
000007f9: DUP11
000007fa: PUSH1 0x01
000007fc: DUP1
000007fd: PUSH1 0xa0
000007ff: SHL
00000800: SUB
00000801: AND
00000802: PUSH0
00000803: MSTORE
00000804: PUSH1 0x9c
00000806: PUSH1 0x20
00000808: MSTORE
00000809: PUSH1 0x40
0000080b: PUSH0
0000080c: KECCAK256
0000080d: SWAP1
0000080e: JUMP
0000080f: JUMPDEST
00000810: SLOAD
00000811: PUSH2 0x1e3e
00000814: JUMP
00000815: JUMPDEST
00000816: SWAP3
00000817: DUP4
00000818: DUP10
00000819: GT
0000081a: DUP1
0000081b: ISZERO
0000081c: PUSH2 0x0a4e
0000081f: JUMPI
00000820: JUMPDEST
00000821: PUSH2 0x0a3e
00000824: JUMPI
00000825: SWAP1
00000826: DUP12
00000827: PUSH2 0x085e
0000082a: SWAP4
0000082b: SWAP3
0000082c: PUSH2 0x083c
0000082f: DUP10
00000830: MLOAD
00000831: PUSH1 0x01
00000833: PUSH1 0x01
00000835: PUSH1 0x80
00000837: SHL
00000838: SUB
00000839: AND
0000083a: SWAP1
0000083b: JUMP
0000083c: JUMPDEST
0000083d: SWAP1
0000083e: DUP11
0000083f: MLOAD
00000840: SWAP6
00000841: DUP7
00000842: SWAP3
00000843: DUP4
00000844: SWAP3
00000845: DUP4
00000846: MSTORE
00000847: DUP10
00000848: DUP4
00000849: ADD
0000084a: SWAP2
0000084b: SWAP1
0000084c: SWAP2
0000084d: PUSH1 0x01
0000084f: PUSH1 0x01
00000851: PUSH1 0x80
00000853: SHL
00000854: SUB
00000855: PUSH1 0x20
00000857: DUP3
00000858: ADD
00000859: SWAP4
0000085a: AND
0000085b: SWAP1
0000085c: MSTORE
0000085d: JUMP
0000085e: JUMPDEST
0000085f: SUB
00000860: DUP2
00000861: DUP10
00000862: GAS
00000863: STATICCALL
00000864: SWAP2
00000865: DUP3
00000866: ISZERO
00000867: PUSH2 0x0543
0000086a: JUMPI
0000086b: PUSH8 0x0de0b6b3a7640000
00000874: SWAP5
00000875: PUSH2 0x08ad
00000878: SWAP5
00000879: DUP15
0000087a: PUSH0
0000087b: SWAP6
0000087c: PUSH2 0x0a11
0000087f: JUMPI
00000880: JUMPDEST
00000881: POP
00000882: POP
00000883: PUSH2 0x089f
00000886: PUSH2 0x0891
00000889: PUSH2 0x08a5
0000088c: SWAP3
0000088d: PUSH2 0x2256
00000890: JUMP
00000891: JUMPDEST
00000892: SWAP4
00000893: MLOAD
00000894: PUSH1 0x01
00000896: PUSH1 0x01
00000898: PUSH1 0x40
0000089a: SHL
0000089b: SUB
0000089c: AND
0000089d: SWAP1
0000089e: JUMP
0000089f: JUMPDEST
000008a0: SWAP4
000008a1: PUSH2 0x2256
000008a4: JUMP
000008a5: JUMPDEST
000008a6: SWAP3
000008a7: AND
000008a8: SWAP1
000008a9: PUSH2 0x265c
000008ac: JUMP
000008ad: JUMPDEST
000008ae: LT
000008af: ISZERO
000008b0: PUSH2 0x0a03
000008b3: JUMPI
000008b4: DUP4
000008b5: MLOAD
000008b6: PUSH4 0x3b9e9f01
000008bb: PUSH1 0xe2
000008bd: SHL
000008be: DUP2
000008bf: MSTORE
000008c0: CALLER
000008c1: SWAP2
000008c2: DUP2
000008c3: ADD
000008c4: SWAP2
000008c5: DUP3
000008c6: MSTORE
000008c7: PUSH1 0x20
000008c9: DUP3
000008ca: ADD
000008cb: DUP12
000008cc: SWAP1
000008cd: MSTORE
000008ce: SWAP5
000008cf: SWAP4
000008d0: SWAP3
000008d1: SWAP2
000008d2: DUP9
000008d3: SWAP2
000008d4: DUP7
000008d5: SWAP2
000008d6: SWAP1
000008d7: DUP3
000008d8: SWAP1
000008d9: PUSH0
000008da: SWAP1
000008db: DUP3
000008dc: SWAP1
000008dd: PUSH1 0x40
000008df: ADD
000008e0: SUB
000008e1: SWAP3
000008e2: GAS
000008e3: CALL
000008e4: SWAP1
000008e5: DUP2
000008e6: ISZERO
000008e7: PUSH2 0x0543
000008ea: JUMPI
000008eb: PUSH32 0x61fd285f9e34a3dbfa9846bdcf22a023e37a3c93549902843b30dd74a18c5350
0000090c: SWAP8
0000090d: PUSH2 0x09e0
00000910: SWAP6
00000911: PUSH2 0x0957
00000914: SWAP4
00000915: PUSH2 0x09e5
00000918: JUMPI
00000919: JUMPDEST
0000091a: POP
0000091b: POP
0000091c: PUSH2 0x093a
0000091f: PUSH2 0x048a
00000922: PUSH2 0x092a
00000925: DUP13
00000926: PUSH2 0x3c2c
00000929: JUMP
0000092a: JUMPDEST
0000092b: DUP4
0000092c: MLOAD
0000092d: PUSH1 0x01
0000092f: PUSH1 0x01
00000931: PUSH1 0x80
00000933: SHL
00000934: SUB
00000935: AND
00000936: PUSH2 0x1df3
00000939: JUMP
0000093a: JUMPDEST
0000093b: PUSH1 0x01
0000093d: PUSH1 0x01
0000093f: PUSH1 0xa0
00000941: SHL
00000942: SUB
00000943: DUP7
00000944: AND
00000945: PUSH0
00000946: SWAP1
00000947: DUP2
00000948: MSTORE
00000949: PUSH2 0x0137
0000094c: PUSH1 0x20
0000094e: MSTORE
0000094f: PUSH1 0x40
00000951: SWAP1
00000952: KECCAK256
00000953: PUSH2 0x1e0c
00000956: JUMP
00000957: JUMPDEST
00000958: PUSH2 0x0960
0000095b: DUP3
0000095c: PUSH2 0x3cf9
0000095f: JUMP
00000960: JUMPDEST
00000961: SWAP1
00000962: PUSH2 0x099f
00000965: PUSH2 0x0984
00000968: PUSH2 0x0970
0000096b: DUP6
0000096c: PUSH2 0x3c2c
0000096f: JUMP
00000970: JUMPDEST
00000971: PUSH1 0x98
00000973: SLOAD
00000974: PUSH1 0x80
00000976: SHR
00000977: JUMPDEST
00000978: SUB
00000979: PUSH1 0x01
0000097b: PUSH1 0x01
0000097d: PUSH1 0x80
0000097f: SHL
00000980: SUB
00000981: AND
00000982: SWAP1
00000983: JUMP
00000984: JUMPDEST
00000985: PUSH1 0x01
00000987: PUSH1 0x01
00000989: PUSH1 0x80
0000098b: SHL
0000098c: SUB
0000098d: PUSH1 0x98
0000098f: SLOAD
00000990: SWAP2
00000991: DUP2
00000992: NOT
00000993: SWAP1
00000994: PUSH1 0x80
00000996: SHL
00000997: AND
00000998: SWAP2
00000999: AND
0000099a: OR
0000099b: PUSH1 0x98
0000099d: SSTORE
0000099e: JUMP
0000099f: JUMPDEST
000009a0: PUSH2 0x09a9
000009a3: DUP3
000009a4: DUP7
000009a5: PUSH2 0x4213
000009a8: JUMP
000009a9: JUMPDEST
000009aa: PUSH2 0x09b3
000009ad: DUP4
000009ae: DUP10
000009af: PUSH2 0x3c5f
000009b2: JUMP
000009b3: JUMPDEST
000009b4: MLOAD
000009b5: SWAP5
000009b6: DUP6
000009b7: SWAP5
000009b8: AND
000009b9: SWAP8
000009ba: CALLER
000009bb: SWAP8
000009bc: DUP6
000009bd: SWAP1
000009be: SWAP5
000009bf: SWAP4
000009c0: SWAP3
000009c1: PUSH1 0x60
000009c3: SWAP3
000009c4: PUSH1 0x80
000009c6: DUP4
000009c7: ADD
000009c8: SWAP7
000009c9: PUSH1 0x01
000009cb: DUP1
000009cc: PUSH1 0xa0
000009ce: SHL
000009cf: SUB
000009d0: AND
000009d1: DUP4
000009d2: MSTORE
000009d3: PUSH1 0x20
000009d5: DUP4
000009d6: ADD
000009d7: MSTORE
000009d8: PUSH1 0x40
000009da: DUP3
000009db: ADD
000009dc: MSTORE
000009dd: ADD
000009de: MSTORE
000009df: JUMP
000009e0: JUMPDEST
000009e1: SUB
000009e2: SWAP1
000009e3: LOG3
000009e4: STOP
000009e5: JUMPDEST
000009e6: DUP2
000009e7: PUSH2 0x09fb
000009ea: SWAP3
000009eb: SWAP1
000009ec: RETURNDATASIZE
000009ed: LT
000009ee: PUSH2 0x053c
000009f1: JUMPI
000009f2: PUSH2 0x052e
000009f5: DUP2
000009f6: DUP4
000009f7: PUSH2 0x0f0f
000009fa: JUMP
000009fb: JUMPDEST
000009fc: POP
000009fd: PUSH0
000009fe: DUP1
000009ff: PUSH2 0x0919
00000a02: JUMP
00000a03: JUMPDEST
00000a04: DUP4
00000a05: MLOAD
00000a06: PUSH4 0x185cfc6d
00000a0b: PUSH1 0xe1
00000a0d: SHL
00000a0e: DUP2
00000a0f: MSTORE
00000a10: REVERT
00000a11: JUMPDEST
00000a12: PUSH2 0x08a5
00000a15: SWAP3
00000a16: SWAP6
00000a17: POP
00000a18: PUSH2 0x0a34
00000a1b: PUSH2 0x089f
00000a1e: SWAP3
00000a1f: DUP3
00000a20: PUSH2 0x0891
00000a23: SWAP4
00000a24: SWAP1
00000a25: RETURNDATASIZE
00000a26: LT
00000a27: PUSH2 0x053c
00000a2a: JUMPI
00000a2b: PUSH2 0x052e
00000a2e: DUP2
00000a2f: DUP4
00000a30: PUSH2 0x0f0f
00000a33: JUMP
00000a34: JUMPDEST
00000a35: SWAP6
00000a36: SWAP3
00000a37: POP
00000a38: POP
00000a39: DUP15
00000a3a: PUSH2 0x0880
00000a3d: JUMP
00000a3e: JUMPDEST
00000a3f: DUP8
00000a40: MLOAD
00000a41: PUSH4 0xefda1a27
00000a46: PUSH1 0xe0
00000a48: SHL
00000a49: DUP2
00000a4a: MSTORE
00000a4b: DUP6
00000a4c: SWAP1
00000a4d: REVERT
00000a4e: JUMPDEST
00000a4f: POP
00000a50: PUSH2 0x0a57
00000a53: PUSH2 0x1e88
00000a56: JUMP
00000a57: JUMPDEST
00000a58: DUP10
00000a59: GT
00000a5a: PUSH2 0x0820
00000a5d: JUMP
00000a5e: JUMPDEST
00000a5f: PUSH2 0x07ea
00000a62: SWAP3
00000a63: SWAP5
00000a64: POP
00000a65: SWAP1
00000a66: DUP2
00000a67: PUSH2 0x0a7b
00000a6a: SWAP3
00000a6b: SWAP1
00000a6c: RETURNDATASIZE
00000a6d: LT
00000a6e: PUSH2 0x053c
00000a71: JUMPI
00000a72: PUSH2 0x052e
00000a75: DUP2
00000a76: DUP4
00000a77: PUSH2 0x0f0f
00000a7a: JUMP
00000a7b: JUMPDEST
00000a7c: SWAP3
00000a7d: SWAP1
00000a7e: DUP15
00000a7f: PUSH2 0x07dd
00000a82: JUMP
00000a83: JUMPDEST
00000a84: DUP7
00000a85: MLOAD
00000a86: PUSH4 0x07091331
00000a8b: PUSH1 0xe0
00000a8d: SHL
00000a8e: DUP2
00000a8f: MSTORE
00000a90: DUP5
00000a91: SWAP1
00000a92: REVERT
00000a93: JUMPDEST
00000a94: PUSH2 0x0ab6
00000a97: SWAP2
00000a98: SWAP9
00000a99: POP
00000a9a: PUSH1 0x60
00000a9c: RETURNDATASIZE
00000a9d: PUSH1 0x60
00000a9f: GT
00000aa0: PUSH2 0x0abd
00000aa3: JUMPI
00000aa4: JUMPDEST
00000aa5: PUSH2 0x0aae
00000aa8: DUP2
00000aa9: DUP4
00000aaa: PUSH2 0x0f0f
00000aad: JUMP
00000aae: JUMPDEST
00000aaf: DUP2
00000ab0: ADD
00000ab1: SWAP1
00000ab2: PUSH2 0x2fc7
00000ab5: JUMP
00000ab6: JUMPDEST
00000ab7: SWAP7
00000ab8: PUSH0
00000ab9: PUSH2 0x0775
00000abc: JUMP
00000abd: JUMPDEST
00000abe: POP
00000abf: RETURNDATASIZE
00000ac0: PUSH2 0x0aa4
00000ac3: JUMP
00000ac4: JUMPDEST
00000ac5: DUP3
00000ac6: MLOAD
00000ac7: PUSH4 0x673f032f
00000acc: PUSH1 0xe1
00000ace: SHL
00000acf: DUP2
00000ad0: MSTORE
00000ad1: DUP8
00000ad2: SWAP1
00000ad3: REVERT
00000ad4: JUMPDEST
00000ad5: DUP1
00000ad6: PUSH2 0x0ae1
00000ad9: PUSH2 0x0ae7
00000adc: SWAP3
00000add: PUSH2 0x0ec6
00000ae0: JUMP
00000ae1: JUMPDEST
00000ae2: DUP1
00000ae3: PUSH2 0x0369
00000ae6: JUMP
00000ae7: JUMPDEST
00000ae8: PUSH0
00000ae9: PUSH2 0x06d4
00000aec: JUMP
00000aed: JUMPDEST
00000aee: PUSH1 0x40
00000af0: MLOAD
00000af1: PUSH4 0xd92e233d
00000af6: PUSH1 0xe0
00000af8: SHL
00000af9: DUP2
00000afa: MSTORE
00000afb: PUSH1 0x04
00000afd: SWAP1
00000afe: REVERT
00000aff: JUMPDEST
00000b00: CALLVALUE
00000b01: PUSH2 0x02e7
00000b04: JUMPI
00000b05: PUSH0
00000b06: CALLDATASIZE
00000b07: PUSH1 0x03
00000b09: NOT
00000b0a: ADD
00000b0b: SLT
00000b0c: PUSH2 0x02e7
00000b0f: JUMPI
00000b10: PUSH1 0x20
00000b12: PUSH2 0x0361
00000b15: PUSH2 0x1e88
00000b18: JUMP
00000b19: JUMPDEST
00000b1a: CALLVALUE
00000b1b: PUSH2 0x02e7
00000b1e: JUMPI
00000b1f: PUSH0
00000b20: CALLDATASIZE
00000b21: PUSH1 0x03
00000b23: NOT
00000b24: ADD
00000b25: SLT
00000b26: PUSH2 0x02e7
00000b29: JUMPI
00000b2a: PUSH1 0x20
00000b2c: PUSH2 0x0b33
00000b2f: PUSH2 0x1ebe
00000b32: JUMP
00000b33: JUMPDEST
00000b34: PUSH1 0x40
00000b36: MLOAD
00000b37: PUSH1 0x01
00000b39: PUSH1 0x01
00000b3b: PUSH1 0xa0
00000b3d: SHL
00000b3e: SUB
00000b3f: SWAP1
00000b40: SWAP2
00000b41: AND
00000b42: DUP2
00000b43: MSTORE
00000b44: RETURN
00000b45: JUMPDEST
00000b46: CALLVALUE
00000b47: PUSH2 0x02e7
00000b4a: JUMPI
00000b4b: PUSH0
00000b4c: CALLDATASIZE
00000b4d: PUSH1 0x03
00000b4f: NOT
00000b50: ADD
00000b51: SLT
00000b52: PUSH2 0x02e7
00000b55: JUMPI
00000b56: PUSH1 0x20
00000b58: PUSH1 0x40
00000b5a: MLOAD
00000b5b: PUSH32 0xd92dbcef7ed61a67c0eefa7cafcc41f41d9402a5046486977364b4724c821f8b
00000b7c: DUP2
00000b7d: MSTORE
00000b7e: RETURN
00000b7f: JUMPDEST
00000b80: PUSH1 0x20
00000b82: PUSH2 0x0361
00000b85: PUSH2 0x0b8d
00000b88: CALLDATASIZE
00000b89: PUSH2 0x05ed
00000b8c: JUMP
00000b8d: JUMPDEST
00000b8e: SWAP2
00000b8f: PUSH2 0x0b99
00000b92: DUP4
00000b93: CALLVALUE
00000b94: CALLER
00000b95: PUSH2 0x3eb2
00000b98: JUMP
00000b99: JUMPDEST
00000b9a: POP
00000b9b: CALLER
00000b9c: PUSH2 0x2d08
00000b9f: JUMP
00000ba0: JUMPDEST
00000ba1: CALLVALUE
00000ba2: PUSH2 0x02e7
00000ba5: JUMPI
00000ba6: PUSH0
00000ba7: CALLDATASIZE
00000ba8: PUSH1 0x03
00000baa: NOT
00000bab: ADD
00000bac: SLT
00000bad: PUSH2 0x02e7
00000bb0: JUMPI
00000bb1: PUSH1 0x20
00000bb3: PUSH1 0x01
00000bb5: PUSH1 0x01
00000bb7: PUSH1 0x80
00000bb9: SHL
00000bba: SUB
00000bbb: PUSH1 0x98
00000bbd: SLOAD
00000bbe: AND
00000bbf: PUSH1 0x40
00000bc1: MLOAD
00000bc2: SWAP1
00000bc3: DUP2
00000bc4: MSTORE
00000bc5: RETURN
00000bc6: JUMPDEST
00000bc7: SWAP2
00000bc8: DUP2
00000bc9: PUSH1 0x1f
00000bcb: DUP5
00000bcc: ADD
00000bcd: SLT
00000bce: ISZERO
00000bcf: PUSH2 0x02e7
00000bd2: JUMPI
00000bd3: DUP3
00000bd4: CALLDATALOAD
00000bd5: SWAP2
00000bd6: PUSH1 0x01
00000bd8: PUSH1 0x01
00000bda: PUSH1 0x40
00000bdc: SHL
00000bdd: SUB
00000bde: DUP4
00000bdf: GT
00000be0: PUSH2 0x02e7
00000be3: JUMPI
00000be4: PUSH1 0x20
00000be6: DUP4
00000be7: DUP2
00000be8: DUP7
00000be9: ADD
00000bea: SWAP6
00000beb: ADD
00000bec: ADD
00000bed: GT
00000bee: PUSH2 0x02e7
00000bf1: JUMPI
00000bf2: JUMP
00000bf3: JUMPDEST
00000bf4: PUSH1 0x20
00000bf6: PUSH1 0x03
00000bf8: NOT
00000bf9: DUP3
00000bfa: ADD
00000bfb: SLT
00000bfc: PUSH2 0x02e7
00000bff: JUMPI
00000c00: PUSH1 0x04
00000c02: CALLDATALOAD
00000c03: SWAP1
00000c04: PUSH1 0x01
00000c06: PUSH1 0x01
00000c08: PUSH1 0x40
00000c0a: SHL
00000c0b: SUB
00000c0c: DUP3
00000c0d: GT
00000c0e: PUSH2 0x02e7
00000c11: JUMPI
00000c12: PUSH2 0x0c1d
00000c15: SWAP2
00000c16: PUSH1 0x04
00000c18: ADD
00000c19: PUSH2 0x0bc6
00000c1c: JUMP
00000c1d: JUMPDEST
00000c1e: SWAP1
00000c1f: SWAP2
00000c20: JUMP
00000c21: JUMPDEST
00000c22: PUSH2 0x0c2a
00000c25: CALLDATASIZE
00000c26: PUSH2 0x0bf3
00000c29: JUMP
00000c2a: JUMPDEST
00000c2b: SWAP1
00000c2c: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00
00000c4d: SWAP2
00000c4e: DUP3
00000c4f: SLOAD
00000c50: SWAP2
00000c51: PUSH1 0xff
00000c53: DUP4
00000c54: PUSH1 0x40
00000c56: SHR
00000c57: AND
00000c58: DUP1
00000c59: ISZERO
00000c5a: PUSH2 0x0cd3
00000c5d: JUMPI
00000c5e: JUMPDEST
00000c5f: PUSH2 0x0cc1
00000c62: JUMPI
00000c63: PUSH9 0x010000000000000004
00000c6d: PUSH2 0x0c84
00000c70: SWAP4
00000c71: PUSH9 0xffffffffffffffffff
00000c7b: NOT
00000c7c: AND
00000c7d: OR
00000c7e: DUP5
00000c7f: SSTORE
00000c80: PUSH2 0x1f8d
00000c83: JUMP
00000c84: JUMPDEST
00000c85: PUSH9 0xff0000000000000000
00000c8f: NOT
00000c90: DUP2
00000c91: SLOAD
00000c92: AND
00000c93: SWAP1
00000c94: SSTORE
00000c95: PUSH32 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2
00000cb6: PUSH1 0x20
00000cb8: PUSH1 0x40
00000cba: MLOAD
00000cbb: PUSH1 0x04
00000cbd: DUP2
00000cbe: MSTORE
00000cbf: LOG1
00000cc0: STOP
00000cc1: JUMPDEST
00000cc2: PUSH1 0x40
00000cc4: MLOAD
00000cc5: PUSH4 0xf92ee8a9
00000cca: PUSH1 0xe0
00000ccc: SHL
00000ccd: DUP2
00000cce: MSTORE
00000ccf: PUSH1 0x04
00000cd1: SWAP1
00000cd2: REVERT
00000cd3: JUMPDEST
00000cd4: POP
00000cd5: PUSH1 0x04
00000cd7: PUSH1 0x01
00000cd9: PUSH1 0x01
00000cdb: PUSH1 0x40
00000cdd: SHL
00000cde: SUB
00000cdf: DUP5
00000ce0: AND
00000ce1: LT
00000ce2: ISZERO
00000ce3: PUSH2 0x0c5e
00000ce6: JUMP
00000ce7: JUMPDEST
00000ce8: CALLVALUE
00000ce9: PUSH2 0x02e7
00000cec: JUMPI
00000ced: PUSH2 0x0cf5
00000cf0: CALLDATASIZE
00000cf1: PUSH2 0x0633
00000cf4: JUMP
00000cf5: JUMPDEST
00000cf6: PUSH1 0x40
00000cf8: MLOAD
00000cf9: PUSH4 0x057453a7
00000cfe: PUSH1 0xe3
00000d00: SHL
00000d01: DUP2
00000d02: MSTORE
00000d03: SWAP1
00000d04: SWAP2
00000d05: SWAP1
00000d06: PUSH1 0x01
00000d08: PUSH1 0x01
00000d0a: PUSH1 0xa0
00000d0c: SHL
00000d0d: SUB
00000d0e: SWAP1
00000d0f: PUSH1 0x20
00000d11: DUP2
00000d12: PUSH1 0x04
00000d14: DUP2
00000d15: PUSH32 0x000000000000000000000000287d1e2a8de183a8bf8f2b09fa1340fbd766eb59
00000d36: DUP7
00000d37: AND
00000d38: GAS
00000d39: STATICCALL
00000d3a: DUP1
00000d3b: ISZERO
00000d3c: PUSH2 0x0543
00000d3f: JUMPI
00000d40: DUP3
00000d41: SWAP2
00000d42: PUSH0
00000d43: SWAP2
00000d44: PUSH2 0x0dc5
00000d47: JUMPI
00000d48: JUMPDEST
00000d49: POP
00000d4a: AND
00000d4b: CALLER
00000d4c: SUB
00000d4d: PUSH2 0x0db3
00000d50: JUMPI
00000d51: DUP2
00000d52: PUSH2 0x09e0
00000d55: PUSH2 0x0d80
00000d58: DUP7
00000d59: DUP7
00000d5a: PUSH32 0x57f5eb636bf62215c111b54545422f11dfb0cb115f606be905f0be08e8859dd3
00000d7b: SWAP7
00000d7c: PUSH2 0x3007
00000d7f: JUMP
00000d80: JUMPDEST
00000d81: PUSH1 0x40
00000d83: DUP1
00000d84: MLOAD
00000d85: PUSH1 0x01
00000d87: PUSH1 0x01
00000d89: PUSH1 0xa0
00000d8b: SHL
00000d8c: SUB
00000d8d: SWAP1
00000d8e: SWAP9
00000d8f: AND
00000d90: DUP9
00000d91: MSTORE
00000d92: PUSH1 0x20
00000d94: DUP9
00000d95: ADD
00000d96: SWAP9
00000d97: SWAP1
00000d98: SWAP9
00000d99: MSTORE
00000d9a: SWAP7
00000d9b: DUP7
00000d9c: ADD
00000d9d: MSTORE
00000d9e: PUSH1 0x60
00000da0: DUP6
00000da1: ADD
00000da2: SWAP6
00000da3: SWAP1
00000da4: SWAP6
00000da5: MSTORE
00000da6: AND
00000da7: SWAP3
00000da8: CALLER
00000da9: SWAP3
00000daa: SWAP1
00000dab: DUP2
00000dac: SWAP1
00000dad: PUSH1 0x80
00000daf: DUP3
00000db0: ADD
00000db1: SWAP1
00000db2: JUMP
00000db3: JUMPDEST
00000db4: PUSH1 0x40
00000db6: MLOAD
00000db7: PUSH4 0x4ca88867
00000dbc: PUSH1 0xe0
00000dbe: SHL
00000dbf: DUP2
00000dc0: MSTORE
00000dc1: PUSH1 0x04
00000dc3: SWAP1
00000dc4: REVERT
00000dc5: JUMPDEST
00000dc6: PUSH2 0x0de7
00000dc9: SWAP2
00000dca: POP
00000dcb: PUSH1 0x20
00000dcd: RETURNDATASIZE
00000dce: PUSH1 0x20
00000dd0: GT
00000dd1: PUSH2 0x0ded
00000dd4: JUMPI
00000dd5: JUMPDEST
00000dd6: PUSH2 0x0ddf
00000dd9: DUP2
00000dda: DUP4
00000ddb: PUSH2 0x0f0f
00000dde: JUMP
00000ddf: JUMPDEST
00000de0: DUP2
00000de1: ADD
00000de2: SWAP1
00000de3: PUSH2 0x1ef9
00000de6: JUMP
00000de7: JUMPDEST
00000de8: PUSH0
00000de9: PUSH2 0x0d48
00000dec: JUMP
00000ded: JUMPDEST
00000dee: POP
00000def: RETURNDATASIZE
00000df0: PUSH2 0x0dd5
00000df3: JUMP
00000df4: JUMPDEST
00000df5: CALLVALUE
00000df6: PUSH2 0x02e7
00000df9: JUMPI
00000dfa: PUSH0
00000dfb: CALLDATASIZE
00000dfc: PUSH1 0x03
00000dfe: NOT
00000dff: ADD
00000e00: SLT
00000e01: PUSH2 0x02e7
00000e04: JUMPI
00000e05: PUSH1 0x65
00000e07: SLOAD
00000e08: PUSH1 0x40
00000e0a: MLOAD
00000e0b: PUSH1 0x01
00000e0d: PUSH1 0x01
00000e0f: PUSH1 0xa0
00000e11: SHL
00000e12: SUB
00000e13: SWAP1
00000e14: SWAP2
00000e15: AND
00000e16: DUP2
00000e17: MSTORE
00000e18: PUSH1 0x20
00000e1a: SWAP1
00000e1b: RETURN
00000e1c: JUMPDEST
00000e1d: CALLVALUE
00000e1e: PUSH2 0x02e7
00000e21: JUMPI
00000e22: PUSH1 0x20
00000e24: CALLDATASIZE
00000e25: PUSH1 0x03
00000e27: NOT
00000e28: ADD
00000e29: SLT
00000e2a: PUSH2 0x02e7
00000e2d: JUMPI
00000e2e: PUSH1 0x04
00000e30: CALLDATALOAD
00000e31: PUSH2 0x0e39
00000e34: DUP2
00000e35: PUSH2 0x02d6
00000e38: JUMP
00000e39: JUMPDEST
00000e3a: PUSH1 0x01
00000e3c: DUP1
00000e3d: PUSH1 0xa0
00000e3f: SHL
00000e40: SUB
00000e41: AND
00000e42: PUSH0
00000e43: MSTORE
00000e44: PUSH2 0x0137
00000e47: PUSH1 0x20
00000e49: MSTORE
00000e4a: PUSH1 0x20
00000e4c: PUSH1 0x40
00000e4e: PUSH0
00000e4f: KECCAK256
00000e50: PUSH1 0x40
00000e52: MLOAD
00000e53: SWAP1
00000e54: PUSH2 0x0e5c
00000e57: DUP3
00000e58: PUSH2 0x0ea6
00000e5b: JUMP
00000e5c: JUMPDEST
00000e5d: SLOAD
00000e5e: SWAP1
00000e5f: PUSH1 0x01
00000e61: PUSH1 0x01
00000e63: PUSH1 0x80
00000e65: SHL
00000e66: SUB
00000e67: SWAP2
00000e68: DUP3
00000e69: DUP2
00000e6a: AND
00000e6b: SWAP1
00000e6c: DUP2
00000e6d: DUP4
00000e6e: MSTORE
00000e6f: PUSH1 0x80
00000e71: SHR
00000e72: DUP5
00000e73: DUP4
00000e74: ADD
00000e75: MSTORE
00000e76: PUSH2 0x0e84
00000e79: JUMPI
00000e7a: JUMPDEST
00000e7b: MLOAD
00000e7c: AND
00000e7d: PUSH1 0x40
00000e7f: MLOAD
00000e80: SWAP1
00000e81: DUP2
00000e82: MSTORE
00000e83: RETURN
00000e84: JUMPDEST
00000e85: PUSH2 0x0e8d
00000e88: DUP2
00000e89: PUSH2 0x24b9
00000e8c: JUMP
00000e8d: JUMPDEST
00000e8e: PUSH2 0x0e7a
00000e91: JUMP
00000e92: JUMPDEST
00000e93: PUSH4 0x4e487b71
00000e98: PUSH1 0xe0
00000e9a: SHL
00000e9b: PUSH0
00000e9c: MSTORE
00000e9d: PUSH1 0x41
00000e9f: PUSH1 0x04
00000ea1: MSTORE
00000ea2: PUSH1 0x24
00000ea4: PUSH0
00000ea5: REVERT
00000ea6: JUMPDEST
00000ea7: PUSH1 0x40
00000ea9: DUP2
00000eaa: ADD
00000eab: SWAP1
00000eac: DUP2
00000ead: LT
00000eae: PUSH1 0x01
00000eb0: PUSH1 0x01
00000eb2: PUSH1 0x40
00000eb4: SHL
00000eb5: SUB
00000eb6: DUP3
00000eb7: GT
00000eb8: OR
00000eb9: PUSH2 0x0ec1
00000ebc: JUMPI
00000ebd: PUSH1 0x40
00000ebf: MSTORE
00000ec0: JUMP
00000ec1: JUMPDEST
00000ec2: PUSH2 0x0e92
00000ec5: JUMP
00000ec6: JUMPDEST
00000ec7: PUSH1 0x01
00000ec9: PUSH1 0x01
00000ecb: PUSH1 0x40
00000ecd: SHL
00000ece: SUB
00000ecf: DUP2
00000ed0: GT
00000ed1: PUSH2 0x0ec1
00000ed4: JUMPI
00000ed5: PUSH1 0x40
00000ed7: MSTORE
00000ed8: JUMP
00000ed9: JUMPDEST
00000eda: PUSH1 0x60
00000edc: DUP2
00000edd: ADD
00000ede: SWAP1
00000edf: DUP2
00000ee0: LT
00000ee1: PUSH1 0x01
00000ee3: PUSH1 0x01
00000ee5: PUSH1 0x40
00000ee7: SHL
00000ee8: SUB
00000ee9: DUP3
00000eea: GT
00000eeb: OR
00000eec: PUSH2 0x0ec1
00000eef: JUMPI
00000ef0: PUSH1 0x40
00000ef2: MSTORE
00000ef3: JUMP
00000ef4: JUMPDEST
00000ef5: PUSH1 0x80
00000ef7: DUP2
00000ef8: ADD
00000ef9: SWAP1
00000efa: DUP2
00000efb: LT
00000efc: PUSH1 0x01
00000efe: PUSH1 0x01
00000f00: PUSH1 0x40
00000f02: SHL
00000f03: SUB
00000f04: DUP3
00000f05: GT
00000f06: OR
00000f07: PUSH2 0x0ec1
00000f0a: JUMPI
00000f0b: PUSH1 0x40
00000f0d: MSTORE
00000f0e: JUMP
00000f0f: JUMPDEST
00000f10: SWAP1
00000f11: PUSH1 0x1f
00000f13: DUP1
00000f14: NOT
00000f15: SWAP2
00000f16: ADD
00000f17: AND
00000f18: DUP2
00000f19: ADD
00000f1a: SWAP1
00000f1b: DUP2
00000f1c: LT
00000f1d: PUSH1 0x01
00000f1f: PUSH1 0x01
00000f21: PUSH1 0x40
00000f23: SHL
00000f24: SUB
00000f25: DUP3
00000f26: GT
00000f27: OR
00000f28: PUSH2 0x0ec1
00000f2b: JUMPI
00000f2c: PUSH1 0x40
00000f2e: MSTORE
00000f2f: JUMP
00000f30: JUMPDEST
00000f31: PUSH1 0x01
00000f33: PUSH1 0x01
00000f35: PUSH1 0x40
00000f37: SHL
00000f38: SUB
00000f39: DUP2
00000f3a: GT
00000f3b: PUSH2 0x0ec1
00000f3e: JUMPI
00000f3f: PUSH1 0x1f
00000f41: ADD
00000f42: PUSH1 0x1f
00000f44: NOT
00000f45: AND
00000f46: PUSH1 0x20
00000f48: ADD
00000f49: SWAP1
00000f4a: JUMP
00000f4b: JUMPDEST
00000f4c: SWAP3
00000f4d: SWAP2
00000f4e: SWAP3
00000f4f: PUSH2 0x0f57
00000f52: DUP3
00000f53: PUSH2 0x0f30
00000f56: JUMP
00000f57: JUMPDEST
00000f58: SWAP2
00000f59: PUSH2 0x0f65
00000f5c: PUSH1 0x40
00000f5e: MLOAD
00000f5f: SWAP4
00000f60: DUP5
00000f61: PUSH2 0x0f0f
00000f64: JUMP
00000f65: JUMPDEST
00000f66: DUP3
00000f67: SWAP5
00000f68: DUP2
00000f69: DUP5
00000f6a: MSTORE
00000f6b: DUP2
00000f6c: DUP4
00000f6d: ADD
00000f6e: GT
00000f6f: PUSH2 0x02e7
00000f72: JUMPI
00000f73: DUP3
00000f74: DUP2
00000f75: PUSH1 0x20
00000f77: SWAP4
00000f78: DUP5
00000f79: PUSH0
00000f7a: SWAP7
00000f7b: ADD
00000f7c: CALLDATACOPY
00000f7d: ADD
00000f7e: ADD
00000f7f: MSTORE
00000f80: JUMP
00000f81: JUMPDEST
00000f82: PUSH1 0x40
00000f84: DUP1
00000f85: PUSH1 0x03
00000f87: NOT
00000f88: CALLDATASIZE
00000f89: ADD
00000f8a: SLT
00000f8b: PUSH2 0x02e7
00000f8e: JUMPI
00000f8f: PUSH1 0x04
00000f91: SWAP1
00000f92: DUP2
00000f93: CALLDATALOAD
00000f94: PUSH2 0x0f9c
00000f97: DUP2
00000f98: PUSH2 0x02d6
00000f9b: JUMP
00000f9c: JUMPDEST
00000f9d: PUSH1 0x24
00000f9f: CALLDATALOAD
00000fa0: PUSH1 0x01
00000fa2: PUSH1 0x01
00000fa4: PUSH1 0x40
00000fa6: SHL
00000fa7: SUB
00000fa8: DUP2
00000fa9: GT
00000faa: PUSH2 0x02e7
00000fad: JUMPI
00000fae: CALLDATASIZE
00000faf: PUSH1 0x23
00000fb1: DUP3
00000fb2: ADD
00000fb3: SLT
00000fb4: ISZERO
00000fb5: PUSH2 0x02e7
00000fb8: JUMPI
00000fb9: PUSH2 0x0fcb
00000fbc: SWAP1
00000fbd: CALLDATASIZE
00000fbe: SWAP1
00000fbf: PUSH1 0x24
00000fc1: DUP2
00000fc2: DUP8
00000fc3: ADD
00000fc4: CALLDATALOAD
00000fc5: SWAP2
00000fc6: ADD
00000fc7: PUSH2 0x0f4b
00000fca: JUMP
00000fcb: JUMPDEST
00000fcc: SWAP2
00000fcd: PUSH2 0x0fd4
00000fd0: PUSH2 0x3408
00000fd3: JUMP
00000fd4: JUMPDEST
00000fd5: DUP1
00000fd6: MLOAD
00000fd7: SWAP3
00000fd8: PUSH2 0x100b
00000fdb: DUP5
00000fdc: PUSH2 0x0ffd
00000fdf: PUSH1 0x20
00000fe1: SWAP4
00000fe2: PUSH4 0x439fab91
00000fe7: PUSH1 0xe0
00000fe9: SHL
00000fea: DUP6
00000feb: DUP5
00000fec: ADD
00000fed: MSTORE
00000fee: DUP5
00000fef: PUSH1 0x24
00000ff1: DUP5
00000ff2: ADD
00000ff3: MSTORE
00000ff4: PUSH1 0x44
00000ff6: DUP4
00000ff7: ADD
00000ff8: SWAP1
00000ff9: PUSH2 0x1b20
00000ffc: JUMP
00000ffd: JUMPDEST
00000ffe: SUB
00000fff: PUSH1 0x1f
00001001: NOT
00001002: DUP2
00001003: ADD
00001004: DUP7
00001005: MSTORE
00001006: DUP6
00001007: PUSH2 0x0f0f
0000100a: JUMP
0000100b: JUMPDEST
0000100c: PUSH2 0x1013
0000100f: PUSH2 0x3408
00001012: JUMP
00001013: JUMPDEST
00001014: PUSH2 0x101b
00001017: PUSH2 0x3461
0000101a: JUMP
0000101b: JUMPDEST
0000101c: PUSH1 0x01
0000101e: PUSH1 0x01
00001020: PUSH1 0xa0
00001022: SHL
00001023: SUB
00001024: DUP4
00001025: DUP2
00001026: AND
00001027: DUP1
00001028: ISZERO
00001029: SWAP3
0000102a: SWAP2
0000102b: SWAP1
0000102c: DUP8
0000102d: SWAP1
0000102e: DUP5
0000102f: ISZERO
00001030: PUSH2 0x11d2
00001033: JUMPI
00001034: JUMPDEST
00001035: DUP5
00001036: ISZERO
00001037: PUSH2 0x1164
0000103a: JUMPI
0000103b: JUMPDEST
0000103c: DUP5
0000103d: ISZERO
0000103e: PUSH2 0x1100
00001041: JUMPI
00001042: JUMPDEST
00001043: POP
00001044: POP
00001045: DUP3
00001046: ISZERO
00001047: PUSH2 0x106a
0000104a: JUMPI
0000104b: JUMPDEST
0000104c: POP
0000104d: POP
0000104e: PUSH2 0x105b
00001051: JUMPI
00001052: PUSH2 0x0020
00001055: DUP4
00001056: DUP4
00001057: PUSH2 0x43a8
0000105a: JUMP
0000105b: JUMPDEST
0000105c: MLOAD
0000105d: PUSH4 0x55299b49
00001062: PUSH1 0xe0
00001064: SHL
00001065: DUP2
00001066: MSTORE
00001067: DUP4
00001068: SWAP1
00001069: REVERT
0000106a: JUMPDEST
0000106b: DUP4
0000106c: MLOAD
0000106d: PUSH4 0x45da87c5
00001072: PUSH1 0xe0
00001074: SHL
00001075: DUP2
00001076: MSTORE
00001077: PUSH1 0x01
00001079: PUSH1 0x01
0000107b: PUSH1 0xa0
0000107d: SHL
0000107e: SUB
0000107f: DUP7
00001080: AND
00001081: DUP9
00001082: DUP3
00001083: ADD
00001084: SWAP1
00001085: DUP2
00001086: MSTORE
00001087: SWAP3
00001088: SWAP4
00001089: POP
0000108a: SWAP2
0000108b: DUP4
0000108c: SWAP2
0000108d: DUP4
0000108e: SWAP2
0000108f: DUP3
00001090: SWAP1
00001091: DUP2
00001092: SWAP1
00001093: PUSH1 0x20
00001095: ADD
00001096: SUB
00001097: SWAP2
00001098: PUSH32 0x0000000000000000000000003a0008a588772446f6e656133c2d5029cc4fc20e
000010b9: AND
000010ba: GAS
000010bb: STATICCALL
000010bc: SWAP2
000010bd: DUP3
000010be: ISZERO
000010bf: PUSH2 0x0543
000010c2: JUMPI
000010c3: PUSH0
000010c4: SWAP3
000010c5: PUSH2 0x10d3
000010c8: JUMPI
000010c9: JUMPDEST
000010ca: POP
000010cb: POP
000010cc: ISZERO
000010cd: PUSH0
000010ce: DUP1
000010cf: PUSH2 0x104b
000010d2: JUMP
000010d3: JUMPDEST
000010d4: PUSH2 0x10f2
000010d7: SWAP3
000010d8: POP
000010d9: DUP1
000010da: RETURNDATASIZE
000010db: LT
000010dc: PUSH2 0x10f9
000010df: JUMPI
000010e0: JUMPDEST
000010e1: PUSH2 0x10ea
000010e4: DUP2
000010e5: DUP4
000010e6: PUSH2 0x0f0f
000010e9: JUMP
000010ea: JUMPDEST
000010eb: DUP2
000010ec: ADD
000010ed: SWAP1
000010ee: PUSH2 0x2067
000010f1: JUMP
000010f2: JUMPDEST
000010f3: PUSH0
000010f4: DUP1
000010f5: PUSH2 0x10c9
000010f8: JUMP
000010f9: JUMPDEST
000010fa: POP
000010fb: RETURNDATASIZE
000010fc: PUSH2 0x10e0
000010ff: JUMP
00001100: JUMPDEST
00001101: DUP6
00001102: MLOAD
00001103: PUSH4 0x054fd4d5
00001108: PUSH1 0xe4
0000110a: SHL
0000110b: DUP2
0000110c: MSTORE
0000110d: SWAP3
0000110e: SWAP5
0000110f: POP
00001110: DUP4
00001111: SWAP2
00001112: DUP4
00001113: SWAP2
00001114: DUP3
00001115: SWAP1
00001116: GAS
00001117: STATICCALL
00001118: SWAP1
00001119: DUP2
0000111a: ISZERO
0000111b: PUSH2 0x0543
0000111e: JUMPI
0000111f: PUSH1 0x05
00001121: SWAP2
00001122: PUSH1 0xff
00001124: SWAP2
00001125: PUSH0
00001126: SWAP2
00001127: PUSH2 0x1137
0000112a: JUMPI
0000112b: JUMPDEST
0000112c: POP
0000112d: AND
0000112e: EQ
0000112f: ISZERO
00001130: SWAP2
00001131: DUP7
00001132: PUSH0
00001133: PUSH2 0x1042
00001136: JUMP
00001137: JUMPDEST
00001138: PUSH2 0x1157
0000113b: SWAP2
0000113c: POP
0000113d: DUP5
0000113e: RETURNDATASIZE
0000113f: DUP7
00001140: GT
00001141: PUSH2 0x115d
00001144: JUMPI
00001145: JUMPDEST
00001146: PUSH2 0x114f
00001149: DUP2
0000114a: DUP4
0000114b: PUSH2 0x0f0f
0000114e: JUMP
0000114f: JUMPDEST
00001150: DUP2
00001151: ADD
00001152: SWAP1
00001153: PUSH2 0x438f
00001156: JUMP
00001157: JUMPDEST
00001158: PUSH0
00001159: PUSH2 0x112b
0000115c: JUMP
0000115d: JUMPDEST
0000115e: POP
0000115f: RETURNDATASIZE
00001160: PUSH2 0x1145
00001163: JUMP
00001164: JUMPDEST
00001165: SWAP4
00001166: POP
00001167: POP
00001168: DUP4
00001169: MLOAD
0000116a: PUSH4 0x198ca605
0000116f: PUSH1 0xe1
00001171: SHL
00001172: DUP2
00001173: MSTORE
00001174: DUP3
00001175: DUP2
00001176: DUP10
00001177: DUP2
00001178: DUP8
00001179: GAS
0000117a: STATICCALL
0000117b: SWAP1
0000117c: DUP2
0000117d: ISZERO
0000117e: PUSH2 0x0543
00001181: JUMPI
00001182: DUP9
00001183: SWAP2
00001184: PUSH32 0xd92dbcef7ed61a67c0eefa7cafcc41f41d9402a5046486977364b4724c821f8b
000011a5: SWAP2
000011a6: PUSH0
000011a7: SWAP2
000011a8: PUSH2 0x11b5
000011ab: JUMPI
000011ac: JUMPDEST
000011ad: POP
000011ae: EQ
000011af: ISZERO
000011b0: SWAP4
000011b1: PUSH2 0x103b
000011b4: JUMP
000011b5: JUMPDEST
000011b6: PUSH2 0x11cc
000011b9: SWAP2
000011ba: POP
000011bb: DUP6
000011bc: RETURNDATASIZE
000011bd: DUP8
000011be: GT
000011bf: PUSH2 0x053c
000011c2: JUMPI
000011c3: PUSH2 0x052e
000011c6: DUP2
000011c7: DUP4
000011c8: PUSH2 0x0f0f
000011cb: JUMP
000011cc: JUMPDEST
000011cd: PUSH0
000011ce: PUSH2 0x11ac
000011d1: JUMP
000011d2: JUMPDEST
000011d3: PUSH0
000011d4: DUP1
000011d5: MLOAD
000011d6: PUSH1 0x20
000011d8: PUSH2 0x4a21
000011db: DUP4
000011dc: CODECOPY
000011dd: DUP2
000011de: MLOAD
000011df: SWAP2
000011e0: MSTORE
000011e1: SLOAD
000011e2: SWAP1
000011e3: SWAP5
000011e4: POP
000011e5: DUP5
000011e6: SWAP1
000011e7: PUSH2 0x1200
000011ea: SWAP1
000011eb: PUSH1 0x01
000011ed: PUSH1 0x01
000011ef: PUSH1 0xa0
000011f1: SHL
000011f2: SUB
000011f3: AND
000011f4: JUMPDEST
000011f5: PUSH1 0x01
000011f7: PUSH1 0x01
000011f9: PUSH1 0xa0
000011fb: SHL
000011fc: SUB
000011fd: AND
000011fe: SWAP1
000011ff: JUMP
00001200: JUMPDEST
00001201: EQ
00001202: SWAP4
00001203: PUSH2 0x1034
00001206: JUMP
00001207: JUMPDEST
00001208: CALLVALUE
00001209: PUSH2 0x02e7
0000120c: JUMPI
0000120d: PUSH0
0000120e: CALLDATASIZE
0000120f: PUSH1 0x03
00001211: NOT
00001212: ADD
00001213: SLT
00001214: PUSH2 0x02e7
00001217: JUMPI
00001218: PUSH32 0x000000000000000000000000decb606ee9140f229df78f9e40041ead61610f8f
00001239: PUSH1 0x01
0000123b: PUSH1 0x01
0000123d: PUSH1 0xa0
0000123f: SHL
00001240: SUB
00001241: AND
00001242: ADDRESS
00001243: SUB
00001244: PUSH2 0x125e
00001247: JUMPI
00001248: PUSH1 0x20
0000124a: PUSH1 0x40
0000124c: MLOAD
0000124d: PUSH0
0000124e: DUP1
0000124f: MLOAD
00001250: PUSH1 0x20
00001252: PUSH2 0x4a21
00001255: DUP4
00001256: CODECOPY
00001257: DUP2
00001258: MLOAD
00001259: SWAP2
0000125a: MSTORE
0000125b: DUP2
0000125c: MSTORE
0000125d: RETURN
0000125e: JUMPDEST
0000125f: PUSH1 0x40
00001261: MLOAD
00001262: PUSH4 0x703e46dd
00001267: PUSH1 0xe1
00001269: SHL
0000126a: DUP2
0000126b: MSTORE
0000126c: PUSH1 0x04
0000126e: SWAP1
0000126f: REVERT
00001270: JUMPDEST
00001271: PUSH0
00001272: CALLDATASIZE
00001273: PUSH1 0x03
00001275: NOT
00001276: ADD
00001277: SLT
00001278: PUSH2 0x02e7
0000127b: JUMPI
0000127c: PUSH1 0x01
0000127e: PUSH1 0x01
00001280: PUSH1 0xa0
00001282: SHL
00001283: SUB
00001284: PUSH2 0x128b
00001287: PUSH2 0x1ebe
0000128a: JUMP
0000128b: JUMPDEST
0000128c: AND
0000128d: CALLER
0000128e: SUB
0000128f: PUSH2 0x0db3
00001292: JUMPI
00001293: STOP
00001294: JUMPDEST
00001295: CALLVALUE
00001296: PUSH2 0x02e7
00001299: JUMPI
0000129a: PUSH0
0000129b: CALLDATASIZE
0000129c: PUSH1 0x03
0000129e: NOT
0000129f: ADD
000012a0: SLT
000012a1: PUSH2 0x02e7
000012a4: JUMPI
000012a5: PUSH1 0x20
000012a7: PUSH1 0x40
000012a9: MLOAD
000012aa: PUSH1 0x04
000012ac: DUP2
000012ad: MSTORE
000012ae: RETURN
000012af: JUMPDEST
000012b0: CALLVALUE
000012b1: PUSH2 0x02e7
000012b4: JUMPI
000012b5: PUSH0
000012b6: CALLDATASIZE
000012b7: PUSH1 0x03
000012b9: NOT
000012ba: ADD
000012bb: SLT
000012bc: PUSH2 0x02e7
000012bf: JUMPI
000012c0: PUSH0
000012c1: DUP1
000012c2: MLOAD
000012c3: PUSH1 0x20
000012c5: PUSH2 0x4a21
000012c8: DUP4
000012c9: CODECOPY
000012ca: DUP2
000012cb: MLOAD
000012cc: SWAP2
000012cd: MSTORE
000012ce: SLOAD
000012cf: PUSH1 0x40
000012d1: MLOAD
000012d2: PUSH1 0x01
000012d4: PUSH1 0x01
000012d6: PUSH1 0xa0
000012d8: SHL
000012d9: SUB
000012da: SWAP1
000012db: SWAP2
000012dc: AND
000012dd: DUP2
000012de: MSTORE
000012df: PUSH1 0x20
000012e1: SWAP1
000012e2: RETURN
000012e3: JUMPDEST
000012e4: CALLVALUE
000012e5: PUSH2 0x02e7
000012e8: JUMPI
000012e9: PUSH0
000012ea: CALLDATASIZE
000012eb: PUSH1 0x03
000012ed: NOT
000012ee: ADD
000012ef: SLT
000012f0: PUSH2 0x02e7
000012f3: JUMPI
000012f4: PUSH1 0x20
000012f6: PUSH2 0x0361
000012f9: PUSH2 0x204c
000012fc: JUMP
000012fd: JUMPDEST
000012fe: CALLVALUE
000012ff: PUSH2 0x02e7
00001302: JUMPI
00001303: PUSH1 0x20
00001305: CALLDATASIZE
00001306: PUSH1 0x03
00001308: NOT
00001309: ADD
0000130a: SLT
0000130b: PUSH2 0x02e7
0000130e: JUMPI
0000130f: PUSH1 0x9a
00001311: DUP1
00001312: SLOAD
00001313: SWAP1
00001314: DUP2
00001315: SWAP1
00001316: PUSH0
00001317: PUSH1 0x04
00001319: CALLDATALOAD
0000131a: JUMPDEST
0000131b: DUP5
0000131c: DUP3
0000131d: LT
0000131e: PUSH2 0x134b
00001321: JUMPI
00001322: POP
00001323: POP
00001324: POP
00001325: DUP2
00001326: LT
00001327: ISZERO
00001328: PUSH2 0x1340
0000132b: JUMPI
0000132c: PUSH2 0x04fe
0000132f: SWAP1
00001330: JUMPDEST
00001331: PUSH1 0x40
00001333: MLOAD
00001334: SWAP1
00001335: DUP2
00001336: MSTORE
00001337: SWAP1
00001338: DUP2
00001339: SWAP1
0000133a: PUSH1 0x20
0000133c: DUP3
0000133d: ADD
0000133e: SWAP1
0000133f: JUMP
00001340: JUMPDEST
00001341: POP
00001342: PUSH2 0x04fe
00001345: PUSH0
00001346: NOT
00001347: PUSH2 0x1330
0000134a: JUMP
0000134b: JUMPDEST
0000134c: SWAP1
0000134d: SWAP2
0000134e: SWAP4
0000134f: DUP1
00001350: DUP4
00001351: AND
00001352: SWAP1
00001353: PUSH1 0x01
00001355: DUP2
00001356: DUP6
00001357: XOR
00001358: DUP2
00001359: SHR
0000135a: DUP4
0000135b: ADD
0000135c: DUP1
0000135d: SWAP4
0000135e: GT
0000135f: PUSH2 0x139d
00001362: JUMPI
00001363: PUSH0
00001364: DUP8
00001365: SWAP1
00001366: MSTORE
00001367: PUSH0
00001368: DUP1
00001369: MLOAD
0000136a: PUSH1 0x20
0000136c: PUSH2 0x4a01
0000136f: DUP4
00001370: CODECOPY
00001371: DUP2
00001372: MLOAD
00001373: SWAP2
00001374: MSTORE
00001375: DUP4
00001376: ADD
00001377: SLOAD
00001378: PUSH1 0x01
0000137a: PUSH1 0x01
0000137c: PUSH1 0xa0
0000137e: SHL
0000137f: SUB
00001380: AND
00001381: DUP5
00001382: LT
00001383: ISZERO
00001384: PUSH2 0x1392
00001387: JUMPI
00001388: POP
00001389: POP
0000138a: SWAP4
0000138b: JUMPDEST
0000138c: SWAP2
0000138d: SWAP1
0000138e: PUSH2 0x131a
00001391: JUMP
00001392: JUMPDEST
00001393: SWAP1
00001394: SWAP6
00001395: SWAP2
00001396: ADD
00001397: SWAP3
00001398: POP
00001399: PUSH2 0x138b
0000139c: JUMP
0000139d: JUMPDEST
0000139e: PUSH2 0x1ddf
000013a1: JUMP
000013a2: JUMPDEST
000013a3: CALLVALUE
000013a4: PUSH2 0x02e7
000013a7: JUMPI
000013a8: PUSH0
000013a9: CALLDATASIZE
000013aa: PUSH1 0x03
000013ac: NOT
000013ad: ADD
000013ae: SLT
000013af: PUSH2 0x02e7
000013b2: JUMPI
000013b3: PUSH1 0x40
000013b5: MLOAD
000013b6: PUSH4 0x3eb1acf7
000013bb: PUSH1 0xe1
000013bd: SHL
000013be: DUP2
000013bf: MSTORE
000013c0: ADDRESS
000013c1: PUSH1 0x04
000013c3: DUP3
000013c4: ADD
000013c5: MSTORE
000013c6: PUSH1 0x20
000013c8: DUP2
000013c9: PUSH1 0x24
000013cb: DUP2
000013cc: PUSH32 0x0000000000000000000000006b5815467da09daa7dc83db21c9239d98bb487b5
000013ed: PUSH1 0x01
000013ef: PUSH1 0x01
000013f1: PUSH1 0xa0
000013f3: SHL
000013f4: SUB
000013f5: AND
000013f6: GAS
000013f7: STATICCALL
000013f8: DUP1
000013f9: ISZERO
000013fa: PUSH2 0x0543
000013fd: JUMPI
000013fe: PUSH1 0x20
00001400: SWAP2
00001401: PUSH0
00001402: SWAP2
00001403: PUSH2 0x1412
00001406: JUMPI
00001407: JUMPDEST
00001408: POP
00001409: PUSH1 0x40
0000140b: MLOAD
0000140c: SWAP1
0000140d: ISZERO
0000140e: ISZERO
0000140f: DUP2
00001410: MSTORE
00001411: RETURN
00001412: JUMPDEST
00001413: PUSH2 0x1429
00001416: SWAP2
00001417: POP
00001418: DUP3
00001419: RETURNDATASIZE
0000141a: DUP5
0000141b: GT
0000141c: PUSH2 0x10f9
0000141f: JUMPI
00001420: PUSH2 0x10ea
00001423: DUP2
00001424: DUP4
00001425: PUSH2 0x0f0f
00001428: JUMP
00001429: JUMPDEST
0000142a: PUSH0
0000142b: PUSH2 0x1407
0000142e: JUMP
0000142f: JUMPDEST
00001430: CALLVALUE
00001431: PUSH2 0x02e7
00001434: JUMPI
00001435: PUSH1 0x20
00001437: CALLDATASIZE
00001438: PUSH1 0x03
0000143a: NOT
0000143b: ADD
0000143c: SLT
0000143d: PUSH2 0x02e7
00001440: JUMPI
00001441: PUSH1 0x04
00001443: CALLDATALOAD
00001444: PUSH2 0x144c
00001447: DUP2
00001448: PUSH2 0x02d6
0000144b: JUMP
0000144c: JUMPDEST
0000144d: PUSH2 0x1454
00001450: PUSH2 0x3461
00001453: JUMP
00001454: JUMPDEST
00001455: PUSH1 0xd2
00001457: DUP1
00001458: SLOAD
00001459: PUSH1 0x01
0000145b: PUSH1 0x01
0000145d: PUSH1 0xa0
0000145f: SHL
00001460: SUB
00001461: NOT
00001462: AND
00001463: PUSH1 0x01
00001465: PUSH1 0x01
00001467: PUSH1 0xa0
00001469: SHL
0000146a: SUB
0000146b: SWAP3
0000146c: SWAP1
0000146d: SWAP3
0000146e: AND
0000146f: SWAP2
00001470: DUP3
00001471: OR
00001472: SWAP1
00001473: SSTORE
00001474: CALLER
00001475: PUSH32 0x6bdc78d8c88160b3fc3638e67f2afe523b3f4c7d00c56ebb6216790e4c3eb2cb
00001496: PUSH0
00001497: DUP1
00001498: LOG3
00001499: STOP
0000149a: JUMPDEST
0000149b: CALLVALUE
0000149c: PUSH2 0x02e7
0000149f: JUMPI
000014a0: PUSH1 0x80
000014a2: CALLDATASIZE
000014a3: PUSH1 0x03
000014a5: NOT
000014a6: ADD
000014a7: SLT
000014a8: PUSH2 0x02e7
000014ab: JUMPI
000014ac: PUSH2 0x04fe
000014af: PUSH2 0x14ce
000014b2: PUSH1 0x04
000014b4: CALLDATALOAD
000014b5: PUSH2 0x14bd
000014b8: DUP2
000014b9: PUSH2 0x02d6
000014bc: JUMP
000014bd: JUMPDEST
000014be: PUSH1 0x64
000014c0: CALLDATALOAD
000014c1: SWAP1
000014c2: PUSH1 0x44
000014c4: CALLDATALOAD
000014c5: SWAP1
000014c6: PUSH1 0x24
000014c8: CALLDATALOAD
000014c9: SWAP1
000014ca: PUSH2 0x2088
000014cd: JUMP
000014ce: JUMPDEST
000014cf: PUSH1 0x40
000014d1: DUP1
000014d2: MLOAD
000014d3: SWAP4
000014d4: DUP5
000014d5: MSTORE
000014d6: PUSH1 0x20
000014d8: DUP5
000014d9: ADD
000014da: SWAP3
000014db: SWAP1
000014dc: SWAP3
000014dd: MSTORE
000014de: SWAP1
000014df: DUP3
000014e0: ADD
000014e1: MSTORE
000014e2: SWAP1
000014e3: DUP2
000014e4: SWAP1
000014e5: PUSH1 0x60
000014e7: DUP3
000014e8: ADD
000014e9: SWAP1
000014ea: JUMP
000014eb: JUMPDEST
000014ec: CALLVALUE
000014ed: PUSH2 0x02e7
000014f0: JUMPI
000014f1: PUSH0
000014f2: CALLDATASIZE
000014f3: PUSH1 0x03
000014f5: NOT
000014f6: ADD
000014f7: SLT
000014f8: PUSH2 0x02e7
000014fb: JUMPI
000014fc: PUSH1 0x20
000014fe: PUSH2 0xffff
00001501: PUSH1 0x65
00001503: SLOAD
00001504: PUSH1 0xa0
00001506: SHR
00001507: AND
00001508: PUSH1 0x40
0000150a: MLOAD
0000150b: SWAP1
0000150c: DUP2
0000150d: MSTORE
0000150e: RETURN
0000150f: JUMPDEST
00001510: CALLVALUE
00001511: PUSH2 0x02e7
00001514: JUMPI
00001515: PUSH1 0x03
00001517: NOT
00001518: PUSH1 0x40
0000151a: CALLDATASIZE
0000151b: DUP3
0000151c: ADD
0000151d: SLT
0000151e: PUSH2 0x02e7
00001521: JUMPI
00001522: PUSH1 0x04
00001524: SWAP1
00001525: DUP2
00001526: CALLDATALOAD
00001527: PUSH1 0x01
00001529: PUSH1 0x01
0000152b: PUSH1 0x40
0000152d: SHL
0000152e: SUB
0000152f: DUP1
00001530: DUP3
00001531: GT
00001532: PUSH2 0x02e7
00001535: JUMPI
00001536: PUSH1 0xa0
00001538: DUP3
00001539: DUP6
0000153a: ADD
0000153b: SWAP4
0000153c: DUP4
0000153d: CALLDATASIZE
0000153e: SUB
0000153f: ADD
00001540: SLT
00001541: PUSH2 0x02e7
00001544: JUMPI
00001545: PUSH1 0x24
00001547: CALLDATALOAD
00001548: SWAP1
00001549: DUP2
0000154a: GT
0000154b: PUSH2 0x02e7
0000154e: JUMPI
0000154f: PUSH2 0x155b
00001552: SWAP1
00001553: CALLDATASIZE
00001554: SWAP1
00001555: DUP6
00001556: ADD
00001557: PUSH2 0x0bc6
0000155a: JUMP
0000155b: JUMPDEST
0000155c: PUSH1 0x01
0000155e: PUSH1 0x01
00001560: PUSH1 0xa0
00001562: SHL
00001563: SUB
00001564: PUSH32 0x0000000000000000000000006b5815467da09daa7dc83db21c9239d98bb487b5
00001585: DUP2
00001586: AND
00001587: DUP1
00001588: EXTCODESIZE
00001589: ISZERO
0000158a: PUSH2 0x02e7
0000158d: JUMPI
0000158e: PUSH1 0x40
00001590: MLOAD
00001591: PUSH4 0x837d4441
00001596: PUSH1 0xe0
00001598: SHL
00001599: DUP2
0000159a: MSTORE
0000159b: SWAP1
0000159c: PUSH0
0000159d: SWAP1
0000159e: DUP3
0000159f: SWAP1
000015a0: DUP2
000015a1: DUP4
000015a2: DUP2
000015a3: PUSH2 0x15ae
000015a6: DUP13
000015a7: DUP3
000015a8: DUP16
000015a9: ADD
000015aa: PUSH2 0x216a
000015ad: JUMP
000015ae: JUMPDEST
000015af: SUB
000015b0: SWAP3
000015b1: GAS
000015b2: CALL
000015b3: DUP1
000015b4: ISZERO
000015b5: PUSH2 0x0543
000015b8: JUMPI
000015b9: PUSH2 0x16cc
000015bc: JUMPI
000015bd: JUMPDEST
000015be: POP
000015bf: PUSH2 0x15c6
000015c2: PUSH2 0x36fb
000015c5: JUMP
000015c6: JUMPDEST
000015c7: PUSH2 0x15ce
000015ca: PUSH2 0x2479
000015cd: JUMP
000015ce: JUMPDEST
000015cf: SWAP1
000015d0: DUP2
000015d1: AND
000015d2: CALLER
000015d3: EQ
000015d4: ISZERO
000015d5: SWAP2
000015d6: DUP3
000015d7: PUSH2 0x169d
000015da: JUMPI
000015db: JUMPDEST
000015dc: POP
000015dd: POP
000015de: SWAP1
000015df: POP
000015e0: PUSH2 0x168c
000015e3: JUMPI
000015e4: PUSH1 0x44
000015e6: ADD
000015e7: SWAP2
000015e8: PUSH1 0xb0
000015ea: PUSH2 0x15f3
000015ed: DUP5
000015ee: DUP5
000015ef: PUSH2 0x21e8
000015f2: JUMP
000015f3: JUMPDEST
000015f4: SWAP1
000015f5: POP
000015f6: DIV
000015f7: DUP1
000015f8: ISZERO
000015f9: DUP1
000015fa: ISZERO
000015fb: PUSH2 0x1674
000015fe: JUMPI
000015ff: JUMPDEST
00001600: PUSH2 0x1664
00001603: JUMPI
00001604: PUSH2 0x1614
00001607: PUSH2 0x160e
0000160a: PUSH2 0x1e88
0000160d: JUMP
0000160e: JUMPDEST
0000160f: SWAP2
00001610: PUSH2 0x223d
00001613: JUMP
00001614: JUMPDEST
00001615: GT
00001616: PUSH2 0x1655
00001619: JUMPI
0000161a: POP
0000161b: PUSH1 0xb0
0000161d: PUSH2 0x1626
00001620: DUP4
00001621: DUP4
00001622: PUSH2 0x21e8
00001625: JUMP
00001626: JUMPDEST
00001627: SWAP1
00001628: POP
00001629: EQ
0000162a: PUSH0
0000162b: EQ
0000162c: PUSH2 0x1642
0000162f: JUMPI
00001630: PUSH2 0x0020
00001633: SWAP2
00001634: PUSH2 0x163c
00001637: SWAP2
00001638: PUSH2 0x21e8
0000163b: JUMP
0000163c: JUMPDEST
0000163d: SWAP1
0000163e: PUSH2 0x3b19
00001641: JUMP
00001642: JUMPDEST
00001643: PUSH2 0x0020
00001646: SWAP2
00001647: PUSH2 0x164f
0000164a: SWAP2
0000164b: PUSH2 0x21e8
0000164e: JUMP
0000164f: JUMPDEST
00001650: SWAP1
00001651: PUSH2 0x39f1
00001654: JUMP
00001655: JUMPDEST
00001656: PUSH1 0x40
00001658: MLOAD
00001659: PUSH4 0x96d80433
0000165e: PUSH1 0xe0
00001660: SHL
00001661: DUP2
00001662: MSTORE
00001663: REVERT
00001664: JUMPDEST
00001665: POP
00001666: PUSH1 0x40
00001668: MLOAD
00001669: PUSH4 0x1c6c4cf3
0000166e: PUSH1 0xe3
00001670: SHL
00001671: DUP2
00001672: MSTORE
00001673: REVERT
00001674: JUMPDEST
00001675: POP
00001676: PUSH2 0x167f
00001679: DUP5
0000167a: DUP5
0000167b: PUSH2 0x21e8
0000167e: JUMP
0000167f: JUMPDEST
00001680: SWAP1
00001681: POP
00001682: PUSH1 0xb0
00001684: DUP3
00001685: MUL
00001686: EQ
00001687: ISZERO
00001688: PUSH2 0x15ff
0000168b: JUMP
0000168c: JUMPDEST
0000168d: PUSH1 0x40
0000168f: MLOAD
00001690: PUSH4 0x4ca88867
00001695: PUSH1 0xe0
00001697: SHL
00001698: DUP2
00001699: MSTORE
0000169a: DUP4
0000169b: SWAP1
0000169c: REVERT
0000169d: JUMPDEST
0000169e: PUSH2 0x16c0
000016a1: SWAP3
000016a2: POP
000016a3: PUSH2 0x16ba
000016a6: PUSH2 0x16c4
000016a9: SWAP5
000016aa: PUSH2 0x16b2
000016ad: DUP9
000016ae: PUSH2 0x3786
000016b1: JUMP
000016b2: JUMPDEST
000016b3: SWAP3
000016b4: CALLDATASIZE
000016b5: SWAP2
000016b6: PUSH2 0x0f4b
000016b9: JUMP
000016ba: JUMPDEST
000016bb: SWAP2
000016bc: PUSH2 0x3860
000016bf: JUMP
000016c0: JUMPDEST
000016c1: ISZERO
000016c2: SWAP1
000016c3: JUMP
000016c4: JUMPDEST
000016c5: DUP1
000016c6: PUSH0
000016c7: DUP1
000016c8: PUSH2 0x15db
000016cb: JUMP
000016cc: JUMPDEST
000016cd: DUP1
000016ce: PUSH2 0x0ae1
000016d1: PUSH2 0x16d9
000016d4: SWAP3
000016d5: PUSH2 0x0ec6
000016d8: JUMP
000016d9: JUMPDEST
000016da: PUSH0
000016db: PUSH2 0x15bd
000016de: JUMP
000016df: JUMPDEST
000016e0: CALLVALUE
000016e1: PUSH2 0x02e7
000016e4: JUMPI
000016e5: PUSH1 0x60
000016e7: CALLDATASIZE
000016e8: PUSH1 0x03
000016ea: NOT
000016eb: ADD
000016ec: SLT
000016ed: PUSH2 0x02e7
000016f0: JUMPI
000016f1: PUSH1 0x04
000016f3: CALLDATALOAD
000016f4: PUSH1 0x24
000016f6: CALLDATALOAD
000016f7: PUSH2 0x1704
000016fa: PUSH1 0x44
000016fc: CALLDATALOAD
000016fd: DUP3
000016fe: DUP5
000016ff: CALLER
00001700: PUSH2 0x2088
00001703: JUMP
00001704: JUMPDEST
00001705: SWAP2
00001706: SWAP3
00001707: PUSH2 0x1730
0000170a: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180
0000172b: DUP3
0000172c: PUSH2 0x2281
0000172f: JUMP
00001730: JUMPDEST
00001731: TIMESTAMP
00001732: LT
00001733: DUP1
00001734: ISZERO
00001735: PUSH2 0x187d
00001738: JUMPI
00001739: JUMPDEST
0000173a: DUP1
0000173b: ISZERO
0000173c: PUSH2 0x1875
0000173f: JUMPI
00001740: JUMPDEST
00001741: PUSH2 0x1863
00001744: JUMPI
00001745: PUSH32 0xeb3b05c070c24f667611fdb3ff75fe007d42401c573aed8d8faca95fd00ccb56
00001766: SWAP4
00001767: PUSH2 0x179b
0000176a: PUSH2 0x1780
0000176d: PUSH2 0x1775
00001770: DUP7
00001771: PUSH2 0x3c2c
00001774: JUMP
00001775: JUMPDEST
00001776: PUSH1 0x99
00001778: SLOAD
00001779: PUSH1 0x80
0000177b: SHR
0000177c: PUSH2 0x1df3
0000177f: JUMP
00001780: JUMPDEST
00001781: PUSH1 0x01
00001783: PUSH1 0x01
00001785: PUSH1 0x80
00001787: SHL
00001788: SUB
00001789: PUSH1 0x99
0000178b: SLOAD
0000178c: SWAP2
0000178d: DUP2
0000178e: NOT
0000178f: SWAP1
00001790: PUSH1 0x80
00001792: SHL
00001793: AND
00001794: SWAP2
00001795: AND
00001796: OR
00001797: PUSH1 0x99
00001799: SSTORE
0000179a: JUMP
0000179b: JUMPDEST
0000179c: PUSH1 0x40
0000179e: DUP1
0000179f: MLOAD
000017a0: CALLER
000017a1: PUSH1 0x20
000017a3: DUP3
000017a4: ADD
000017a5: SWAP1
000017a6: DUP2
000017a7: MSTORE
000017a8: SWAP2
000017a9: DUP2
000017aa: ADD
000017ab: DUP5
000017ac: SWAP1
000017ad: MSTORE
000017ae: PUSH1 0x60
000017b0: DUP1
000017b1: DUP3
000017b2: ADD
000017b3: DUP10
000017b4: SWAP1
000017b5: MSTORE
000017b6: DUP2
000017b7: MSTORE
000017b8: PUSH1 0x1f
000017ba: NOT
000017bb: SWAP4
000017bc: SWAP2
000017bd: PUSH0
000017be: SWAP2
000017bf: PUSH2 0x17df
000017c2: SWAP2
000017c3: SWAP1
000017c4: PUSH2 0x17ce
000017c7: PUSH1 0x80
000017c9: DUP3
000017ca: PUSH2 0x0f0f
000017cd: JUMP
000017ce: JUMPDEST
000017cf: MLOAD
000017d0: SWAP1
000017d1: KECCAK256
000017d2: PUSH0
000017d3: MSTORE
000017d4: PUSH1 0x9b
000017d6: PUSH1 0x20
000017d8: MSTORE
000017d9: PUSH1 0x40
000017db: PUSH0
000017dc: KECCAK256
000017dd: SWAP1
000017de: JUMP
000017df: JUMPDEST
000017e0: SSTORE
000017e1: PUSH0
000017e2: SWAP4
000017e3: PUSH1 0x01
000017e5: DUP4
000017e6: GT
000017e7: PUSH2 0x1818
000017ea: JUMPI
000017eb: JUMPDEST
000017ec: POP
000017ed: POP
000017ee: POP
000017ef: POP
000017f0: PUSH2 0x17f9
000017f3: DUP3
000017f4: CALLER
000017f5: PUSH2 0x3c5f
000017f8: JUMP
000017f9: JUMPDEST
000017fa: PUSH1 0x40
000017fc: DUP1
000017fd: MLOAD
000017fe: SWAP5
000017ff: DUP6
00001800: MSTORE
00001801: PUSH1 0x20
00001803: DUP6
00001804: ADD
00001805: SWAP2
00001806: SWAP1
00001807: SWAP2
00001808: MSTORE
00001809: DUP4
0000180a: ADD
0000180b: MSTORE
0000180c: CALLER
0000180d: SWAP2
0000180e: DUP1
0000180f: PUSH1 0x60
00001811: DUP2
00001812: ADD
00001813: JUMPDEST
00001814: SUB
00001815: SWAP1
00001816: LOG2
00001817: STOP
00001818: JUMPDEST
00001819: PUSH2 0x1859
0000181c: SWAP3
0000181d: SWAP4
0000181e: SWAP5
0000181f: POP
00001820: PUSH2 0x1829
00001823: SWAP1
00001824: DUP9
00001825: PUSH2 0x2281
00001828: JUMP
00001829: JUMPDEST
0000182a: PUSH1 0x40
0000182c: DUP1
0000182d: MLOAD
0000182e: CALLER
0000182f: PUSH1 0x20
00001831: DUP3
00001832: ADD
00001833: SWAP1
00001834: DUP2
00001835: MSTORE
00001836: SWAP2
00001837: DUP2
00001838: ADD
00001839: SWAP4
0000183a: SWAP1
0000183b: SWAP4
0000183c: MSTORE
0000183d: PUSH1 0x60
0000183f: DUP4
00001840: ADD
00001841: DUP3
00001842: SWAP1
00001843: MSTORE
00001844: PUSH1 0x80
00001846: SWAP6
00001847: DUP7
00001848: ADD
00001849: DUP4
0000184a: MSTORE
0000184b: SWAP1
0000184c: SWAP5
0000184d: SWAP1
0000184e: SWAP2
0000184f: SWAP1
00001850: PUSH2 0x17ce
00001853: SWAP1
00001854: DUP3
00001855: PUSH2 0x0f0f
00001858: JUMP
00001859: JUMPDEST
0000185a: SSTORE
0000185b: PUSH0
0000185c: DUP1
0000185d: DUP1
0000185e: DUP1
0000185f: PUSH2 0x17eb
00001862: JUMP
00001863: JUMPDEST
00001864: PUSH1 0x40
00001866: MLOAD
00001867: PUSH4 0x0e3d8e8d
0000186c: PUSH1 0xe1
0000186e: SHL
0000186f: DUP2
00001870: MSTORE
00001871: PUSH1 0x04
00001873: SWAP1
00001874: REVERT
00001875: JUMPDEST
00001876: POP
00001877: DUP3
00001878: ISZERO
00001879: PUSH2 0x1740
0000187c: JUMP
0000187d: JUMPDEST
0000187e: POP
0000187f: DUP2
00001880: ISZERO
00001881: PUSH2 0x1739
00001884: JUMP
00001885: JUMPDEST
00001886: CALLVALUE
00001887: PUSH2 0x02e7
0000188a: JUMPI
0000188b: PUSH1 0x40
0000188d: CALLDATASIZE
0000188e: PUSH1 0x03
00001890: NOT
00001891: ADD
00001892: SLT
00001893: PUSH2 0x02e7
00001896: JUMPI
00001897: PUSH1 0x20
00001899: PUSH2 0x18b0
0000189c: PUSH1 0x24
0000189e: CALLDATALOAD
0000189f: PUSH2 0x18a7
000018a2: DUP2
000018a3: PUSH2 0x02d6
000018a6: JUMP
000018a7: JUMPDEST
000018a8: PUSH1 0x04
000018aa: CALLDATALOAD
000018ab: CALLER
000018ac: PUSH2 0x4603
000018af: JUMP
000018b0: JUMPDEST
000018b1: PUSH2 0x0361
000018b4: CALLER
000018b5: PUSH2 0x4583
000018b8: JUMP
000018b9: JUMPDEST
000018ba: CALLVALUE
000018bb: PUSH2 0x02e7
000018be: JUMPI
000018bf: PUSH1 0x20
000018c1: CALLDATASIZE
000018c2: PUSH1 0x03
000018c4: NOT
000018c5: ADD
000018c6: SLT
000018c7: PUSH2 0x02e7
000018ca: JUMPI
000018cb: PUSH1 0x04
000018cd: CALLDATALOAD
000018ce: PUSH2 0x18d5
000018d1: PUSH2 0x36fb
000018d4: JUMP
000018d5: JUMPDEST
000018d6: CALLER
000018d7: PUSH0
000018d8: SWAP1
000018d9: DUP2
000018da: MSTORE
000018db: PUSH2 0x0137
000018de: PUSH1 0x20
000018e0: MSTORE
000018e1: PUSH1 0x40
000018e3: SWAP1
000018e4: KECCAK256
000018e5: PUSH2 0x18ed
000018e8: SWAP1
000018e9: PUSH2 0x1dba
000018ec: JUMP
000018ed: JUMPDEST
000018ee: PUSH1 0x01
000018f0: PUSH1 0x01
000018f2: PUSH1 0x80
000018f4: SHL
000018f5: SUB
000018f6: DUP1
000018f7: PUSH2 0x1907
000018fa: DUP4
000018fb: MLOAD
000018fc: PUSH1 0x01
000018fe: PUSH1 0x01
00001900: PUSH1 0x80
00001902: SHL
00001903: SUB
00001904: AND
00001905: SWAP1
00001906: JUMP
00001907: JUMPDEST
00001908: AND
00001909: ISZERO
0000190a: PUSH2 0x0502
0000190d: JUMPI
0000190e: DUP3
0000190f: SWAP1
00001910: PUSH2 0x1918
00001913: DUP4
00001914: PUSH2 0x24b9
00001917: JUMP
00001918: JUMPDEST
00001919: DUP3
0000191a: MLOAD
0000191b: PUSH1 0x01
0000191d: PUSH1 0x01
0000191f: PUSH1 0x80
00001921: SHL
00001922: SUB
00001923: AND
00001924: AND
00001925: LT
00001926: PUSH2 0x1a9b
00001929: JUMPI
0000192a: CALLER
0000192b: PUSH0
0000192c: SWAP1
0000192d: DUP2
0000192e: MSTORE
0000192f: PUSH1 0x9c
00001931: PUSH1 0x20
00001933: MSTORE
00001934: PUSH1 0x40
00001936: SWAP1
00001937: KECCAK256
00001938: SLOAD
00001939: DUP3
0000193a: PUSH2 0x1959
0000193d: PUSH2 0x194d
00001940: DUP5
00001941: MLOAD
00001942: PUSH1 0x01
00001944: PUSH1 0x01
00001946: PUSH1 0x80
00001948: SHL
00001949: SUB
0000194a: AND
0000194b: SWAP1
0000194c: JUMP
0000194d: JUMPDEST
0000194e: PUSH1 0x01
00001950: PUSH1 0x01
00001952: PUSH1 0x80
00001954: SHL
00001955: SUB
00001956: AND
00001957: SWAP1
00001958: JUMP
00001959: JUMPDEST
0000195a: EQ
0000195b: PUSH2 0x1a85
0000195e: JUMPI
0000195f: PUSH2 0x197d
00001962: SWAP1
00001963: DUP4
00001964: PUSH2 0x1977
00001967: PUSH2 0x194d
0000196a: DUP6
0000196b: MLOAD
0000196c: PUSH1 0x01
0000196e: PUSH1 0x01
00001970: PUSH1 0x80
00001972: SHL
00001973: SUB
00001974: AND
00001975: SWAP1
00001976: JUMP
00001977: JUMPDEST
00001978: SWAP2
00001979: PUSH2 0x265c
0000197c: JUMP
0000197d: JUMPDEST
0000197e: SWAP2
0000197f: PUSH2 0x19aa
00001982: PUSH2 0x199d
00001985: PUSH2 0x198d
00001988: DUP4
00001989: PUSH2 0x3c2c
0000198c: JUMP
0000198d: JUMPDEST
0000198e: DUP5
0000198f: MLOAD
00001990: PUSH1 0x01
00001992: PUSH1 0x01
00001994: PUSH1 0x80
00001996: SHL
00001997: SUB
00001998: AND
00001999: PUSH2 0x0977
0000199c: JUMP
0000199d: JUMPDEST
0000199e: PUSH1 0x01
000019a0: PUSH1 0x01
000019a2: PUSH1 0x80
000019a4: SHL
000019a5: SUB
000019a6: AND
000019a7: DUP4
000019a8: MSTORE
000019a9: JUMP
000019aa: JUMPDEST
000019ab: CALLER
000019ac: PUSH0
000019ad: SWAP1
000019ae: DUP2
000019af: MSTORE
000019b0: PUSH2 0x0137
000019b3: PUSH1 0x20
000019b5: MSTORE
000019b6: PUSH1 0x40
000019b8: SWAP1
000019b9: KECCAK256
000019ba: PUSH2 0x19c4
000019bd: SWAP1
000019be: DUP4
000019bf: SWAP1
000019c0: PUSH2 0x1e0c
000019c3: JUMP
000019c4: JUMPDEST
000019c5: PUSH2 0x1a0c
000019c8: PUSH1 0x20
000019ca: PUSH2 0x19fd
000019cd: PUSH1 0x01
000019cf: DUP1
000019d0: PUSH1 0xa0
000019d2: SHL
000019d3: SUB
000019d4: PUSH32 0x00000000000000000000000009e84205df7c68907e619d07afd90143c5763605
000019f5: AND
000019f6: DUP1
000019f7: SWAP7
000019f8: CALLER
000019f9: PUSH2 0x4603
000019fc: JUMP
000019fd: JUMPDEST
000019fe: SWAP4
000019ff: ADD
00001a00: MLOAD
00001a01: PUSH1 0x01
00001a03: PUSH1 0x01
00001a05: PUSH1 0x80
00001a07: SHL
00001a08: SUB
00001a09: AND
00001a0a: SWAP1
00001a0b: JUMP
00001a0c: JUMPDEST
00001a0d: DUP4
00001a0e: EXTCODESIZE
00001a0f: ISZERO
00001a10: PUSH2 0x02e7
00001a13: JUMPI
00001a14: PUSH1 0x40
00001a16: MLOAD
00001a17: PUSH4 0x074ee969
00001a1c: PUSH1 0xe3
00001a1e: SHL
00001a1f: DUP2
00001a20: MSTORE
00001a21: CALLER
00001a22: PUSH1 0x04
00001a24: DUP3
00001a25: ADD
00001a26: MSTORE
00001a27: PUSH1 0x24
00001a29: DUP2
00001a2a: ADD
00001a2b: DUP5
00001a2c: SWAP1
00001a2d: MSTORE
00001a2e: PUSH1 0x44
00001a30: DUP2
00001a31: ADD
00001a32: SWAP3
00001a33: SWAP1
00001a34: SWAP3
00001a35: MSTORE
00001a36: PUSH1 0x01
00001a38: PUSH1 0x01
00001a3a: PUSH1 0x80
00001a3c: SHL
00001a3d: SUB
00001a3e: AND
00001a3f: PUSH1 0x64
00001a41: DUP3
00001a42: ADD
00001a43: MSTORE
00001a44: SWAP2
00001a45: PUSH0
00001a46: SWAP1
00001a47: DUP4
00001a48: SWAP1
00001a49: PUSH1 0x84
00001a4b: SWAP1
00001a4c: DUP3
00001a4d: SWAP1
00001a4e: DUP5
00001a4f: SWAP1
00001a50: GAS
00001a51: CALL
00001a52: SWAP2
00001a53: DUP3
00001a54: ISZERO
00001a55: PUSH2 0x0543
00001a58: JUMPI
00001a59: PUSH2 0x04fe
00001a5c: SWAP3
00001a5d: PUSH2 0x1a72
00001a60: JUMPI
00001a61: JUMPDEST
00001a62: POP
00001a63: PUSH1 0x40
00001a65: MLOAD
00001a66: SWAP1
00001a67: DUP2
00001a68: MSTORE
00001a69: SWAP1
00001a6a: DUP2
00001a6b: SWAP1
00001a6c: PUSH1 0x20
00001a6e: DUP3
00001a6f: ADD
00001a70: SWAP1
00001a71: JUMP
00001a72: JUMPDEST
00001a73: DUP1
00001a74: PUSH2 0x0ae1
00001a77: PUSH2 0x1a7f
00001a7a: SWAP3
00001a7b: PUSH2 0x0ec6
00001a7e: JUMP
00001a7f: JUMPDEST
00001a80: PUSH0
00001a81: PUSH2 0x1a61
00001a84: JUMP
00001a85: JUMPDEST
00001a86: CALLER
00001a87: PUSH0
00001a88: SWAP1
00001a89: DUP2
00001a8a: MSTORE
00001a8b: PUSH2 0x0137
00001a8e: PUSH1 0x20
00001a90: MSTORE
00001a91: PUSH1 0x40
00001a93: DUP2
00001a94: KECCAK256
00001a95: SSTORE
00001a96: SWAP2
00001a97: PUSH2 0x19c4
00001a9a: JUMP
00001a9b: JUMPDEST
00001a9c: PUSH1 0x40
00001a9e: MLOAD
00001a9f: PUSH4 0x6edcc523
00001aa4: PUSH1 0xe0
00001aa6: SHL
00001aa7: DUP2
00001aa8: MSTORE
00001aa9: PUSH1 0x04
00001aab: SWAP1
00001aac: REVERT
00001aad: JUMPDEST
00001aae: CALLVALUE
00001aaf: PUSH2 0x02e7
00001ab2: JUMPI
00001ab3: PUSH2 0x1813
00001ab6: PUSH32 0x2013570c343af8ab14a9778150e381a0fda34ed6368127a95fd5e7210cbec5bf
00001ad7: PUSH2 0x1adf
00001ada: CALLDATASIZE
00001adb: PUSH2 0x0bf3
00001ade: JUMP
00001adf: JUMPDEST
00001ae0: SWAP3
00001ae1: SWAP1
00001ae2: PUSH2 0x1ae9
00001ae5: PUSH2 0x3461
00001ae8: JUMP
00001ae9: JUMPDEST
00001aea: PUSH1 0x40
00001aec: MLOAD
00001aed: SWAP2
00001aee: DUP3
00001aef: SWAP2
00001af0: PUSH1 0x20
00001af2: DUP4
00001af3: MSTORE
00001af4: CALLER
00001af5: SWAP6
00001af6: PUSH1 0x20
00001af8: DUP5
00001af9: ADD
00001afa: SWAP2
00001afb: PUSH2 0x214a
00001afe: JUMP
00001aff: JUMPDEST
00001b00: PUSH0
00001b01: JUMPDEST
00001b02: DUP4
00001b03: DUP2
00001b04: LT
00001b05: PUSH2 0x1b10
00001b08: JUMPI
00001b09: POP
00001b0a: POP
00001b0b: PUSH0
00001b0c: SWAP2
00001b0d: ADD
00001b0e: MSTORE
00001b0f: JUMP
00001b10: JUMPDEST
00001b11: DUP2
00001b12: DUP2
00001b13: ADD
00001b14: MLOAD
00001b15: DUP4
00001b16: DUP3
00001b17: ADD
00001b18: MSTORE
00001b19: PUSH1 0x20
00001b1b: ADD
00001b1c: PUSH2 0x1b01
00001b1f: JUMP
00001b20: JUMPDEST
00001b21: SWAP1
00001b22: PUSH1 0x20
00001b24: SWAP2
00001b25: PUSH2 0x1b39
00001b28: DUP2
00001b29: MLOAD
00001b2a: DUP1
00001b2b: SWAP3
00001b2c: DUP2
00001b2d: DUP6
00001b2e: MSTORE
00001b2f: DUP6
00001b30: DUP1
00001b31: DUP7
00001b32: ADD
00001b33: SWAP2
00001b34: ADD
00001b35: PUSH2 0x1aff
00001b38: JUMP
00001b39: JUMPDEST
00001b3a: PUSH1 0x1f
00001b3c: ADD
00001b3d: PUSH1 0x1f
00001b3f: NOT
00001b40: AND
00001b41: ADD
00001b42: ADD
00001b43: SWAP1
00001b44: JUMP
00001b45: JUMPDEST
00001b46: PUSH1 0x20
00001b48: DUP1
00001b49: DUP3
00001b4a: ADD
00001b4b: SWAP1
00001b4c: PUSH1 0x20
00001b4e: DUP4
00001b4f: MSTORE
00001b50: DUP4
00001b51: MLOAD
00001b52: DUP1
00001b53: SWAP3
00001b54: MSTORE
00001b55: PUSH1 0x40
00001b57: DUP4
00001b58: ADD
00001b59: SWAP3
00001b5a: PUSH1 0x20
00001b5c: PUSH1 0x40
00001b5e: DUP5
00001b5f: PUSH1 0x05
00001b61: SHL
00001b62: DUP4
00001b63: ADD
00001b64: ADD
00001b65: SWAP6
00001b66: ADD
00001b67: SWAP4
00001b68: PUSH0
00001b69: SWAP2
00001b6a: JUMPDEST
00001b6b: DUP5
00001b6c: DUP4
00001b6d: LT
00001b6e: PUSH2 0x1b7a
00001b71: JUMPI
00001b72: POP
00001b73: POP
00001b74: POP
00001b75: POP
00001b76: POP
00001b77: POP
00001b78: SWAP1
00001b79: JUMP
00001b7a: JUMPDEST
00001b7b: SWAP1
00001b7c: SWAP2
00001b7d: SWAP3
00001b7e: SWAP4
00001b7f: SWAP5
00001b80: SWAP6
00001b81: DUP5
00001b82: DUP1
00001b83: PUSH2 0x1b98
00001b86: PUSH1 0x01
00001b88: SWAP4
00001b89: PUSH1 0x3f
00001b8b: NOT
00001b8c: DUP7
00001b8d: DUP3
00001b8e: SUB
00001b8f: ADD
00001b90: DUP8
00001b91: MSTORE
00001b92: DUP11
00001b93: MLOAD
00001b94: PUSH2 0x1b20
00001b97: JUMP
00001b98: JUMPDEST
00001b99: SWAP9
00001b9a: ADD
00001b9b: SWAP4
00001b9c: ADD
00001b9d: SWAP4
00001b9e: ADD
00001b9f: SWAP2
00001ba0: SWAP5
00001ba1: SWAP4
00001ba2: SWAP3
00001ba3: SWAP1
00001ba4: PUSH2 0x1b6a
00001ba7: JUMP
00001ba8: JUMPDEST
00001ba9: CALLVALUE
00001baa: PUSH2 0x02e7
00001bad: JUMPI
00001bae: PUSH1 0x20
00001bb0: CALLDATASIZE
00001bb1: PUSH1 0x03
00001bb3: NOT
00001bb4: ADD
00001bb5: SLT
00001bb6: PUSH2 0x02e7
00001bb9: JUMPI
00001bba: PUSH1 0x01
00001bbc: PUSH1 0x01
00001bbe: PUSH1 0x40
00001bc0: SHL
00001bc1: SUB
00001bc2: PUSH1 0x04
00001bc4: CALLDATALOAD
00001bc5: DUP2
00001bc6: DUP2
00001bc7: GT
00001bc8: PUSH2 0x02e7
00001bcb: JUMPI
00001bcc: CALLDATASIZE
00001bcd: PUSH1 0x23
00001bcf: DUP3
00001bd0: ADD
00001bd1: SLT
00001bd2: ISZERO
00001bd3: PUSH2 0x02e7
00001bd6: JUMPI
00001bd7: DUP1
00001bd8: PUSH1 0x04
00001bda: ADD
00001bdb: CALLDATALOAD
00001bdc: SWAP2
00001bdd: DUP3
00001bde: GT
00001bdf: PUSH2 0x02e7
00001be2: JUMPI
00001be3: CALLDATASIZE
00001be4: PUSH1 0x24
00001be6: DUP4
00001be7: PUSH1 0x05
00001be9: SHL
00001bea: DUP4
00001beb: ADD
00001bec: ADD
00001bed: GT
00001bee: PUSH2 0x02e7
00001bf1: JUMPI
00001bf2: PUSH2 0x04fe
00001bf5: SWAP2
00001bf6: PUSH1 0x24
00001bf8: PUSH2 0x1c01
00001bfb: SWAP3
00001bfc: ADD
00001bfd: PUSH2 0x23cc
00001c00: JUMP
00001c01: JUMPDEST
00001c02: PUSH1 0x40
00001c04: MLOAD
00001c05: SWAP2
00001c06: DUP3
00001c07: SWAP2
00001c08: DUP3
00001c09: PUSH2 0x1b45
00001c0c: JUMP
00001c0d: JUMPDEST
00001c0e: SWAP1
00001c0f: PUSH1 0x20
00001c11: PUSH2 0x0616
00001c14: SWAP3
00001c15: DUP2
00001c16: DUP2
00001c17: MSTORE
00001c18: ADD
00001c19: SWAP1
00001c1a: PUSH2 0x1b20
00001c1d: JUMP
00001c1e: JUMPDEST
00001c1f: CALLVALUE
00001c20: PUSH2 0x02e7
00001c23: JUMPI
00001c24: PUSH0
00001c25: CALLDATASIZE
00001c26: PUSH1 0x03
00001c28: NOT
00001c29: ADD
00001c2a: SLT
00001c2b: PUSH2 0x02e7
00001c2e: JUMPI
00001c2f: PUSH2 0x04fe
00001c32: PUSH1 0x40
00001c34: MLOAD
00001c35: PUSH2 0x1c3d
00001c38: DUP2
00001c39: PUSH2 0x0ea6
00001c3c: JUMP
00001c3d: JUMPDEST
00001c3e: PUSH1 0x05
00001c40: DUP2
00001c41: MSTORE
00001c42: PUSH5 0x0352e302e3
00001c48: PUSH1 0xdc
00001c4a: SHL
00001c4b: PUSH1 0x20
00001c4d: DUP3
00001c4e: ADD
00001c4f: MSTORE
00001c50: PUSH1 0x40
00001c52: MLOAD
00001c53: SWAP2
00001c54: DUP3
00001c55: SWAP2
00001c56: PUSH1 0x20
00001c58: DUP4
00001c59: MSTORE
00001c5a: PUSH1 0x20
00001c5c: DUP4
00001c5d: ADD
00001c5e: SWAP1
00001c5f: PUSH2 0x1b20
00001c62: JUMP
00001c63: JUMPDEST
00001c64: CALLVALUE
00001c65: PUSH2 0x02e7
00001c68: JUMPI
00001c69: PUSH0
00001c6a: CALLDATASIZE
00001c6b: PUSH1 0x03
00001c6d: NOT
00001c6e: ADD
00001c6f: SLT
00001c70: PUSH2 0x02e7
00001c73: JUMPI
00001c74: PUSH1 0x20
00001c76: PUSH2 0x0b33
00001c79: PUSH2 0x2479
00001c7c: JUMP
00001c7d: JUMPDEST
00001c7e: CALLVALUE
00001c7f: PUSH2 0x02e7
00001c82: JUMPI
00001c83: PUSH1 0x20
00001c85: CALLDATASIZE
00001c86: PUSH1 0x03
00001c88: NOT
00001c89: ADD
00001c8a: SLT
00001c8b: PUSH2 0x02e7
00001c8e: JUMPI
00001c8f: PUSH1 0x20
00001c91: PUSH2 0x0361
00001c94: PUSH1 0x04
00001c96: CALLDATALOAD
00001c97: PUSH2 0x3cf9
00001c9a: JUMP
00001c9b: JUMPDEST
00001c9c: CALLVALUE
00001c9d: PUSH2 0x02e7
00001ca0: JUMPI
00001ca1: PUSH0
00001ca2: CALLDATASIZE
00001ca3: PUSH1 0x03
00001ca5: NOT
00001ca6: ADD
00001ca7: SLT
00001ca8: PUSH2 0x02e7
00001cab: JUMPI
00001cac: PUSH1 0x20
00001cae: PUSH1 0x01
00001cb0: PUSH1 0x01
00001cb2: PUSH1 0x80
00001cb4: SHL
00001cb5: SUB
00001cb6: PUSH1 0x99
00001cb8: SLOAD
00001cb9: AND
00001cba: PUSH1 0x40
00001cbc: MLOAD
00001cbd: SWAP1
00001cbe: DUP2
00001cbf: MSTORE
00001cc0: RETURN
00001cc1: JUMPDEST
00001cc2: CALLVALUE
00001cc3: PUSH2 0x02e7
00001cc6: JUMPI
00001cc7: PUSH1 0x20
00001cc9: CALLDATASIZE
00001cca: PUSH1 0x03
00001ccc: NOT
00001ccd: ADD
00001cce: SLT
00001ccf: PUSH2 0x02e7
00001cd2: JUMPI
00001cd3: PUSH2 0x0020
00001cd6: PUSH1 0x04
00001cd8: CALLDATALOAD
00001cd9: PUSH2 0x1ce1
00001cdc: DUP2
00001cdd: PUSH2 0x02d6
00001ce0: JUMP
00001ce1: JUMPDEST
00001ce2: PUSH2 0x1ce9
00001ce5: PUSH2 0x3461
00001ce8: JUMP
00001ce9: JUMPDEST
00001cea: PUSH2 0x3d88
00001ced: JUMP
00001cee: JUMPDEST
00001cef: CALLVALUE
00001cf0: PUSH2 0x02e7
00001cf3: JUMPI
00001cf4: PUSH0
00001cf5: CALLDATASIZE
00001cf6: PUSH1 0x03
00001cf8: NOT
00001cf9: ADD
00001cfa: SLT
00001cfb: PUSH2 0x02e7
00001cfe: JUMPI
00001cff: PUSH1 0x20
00001d01: PUSH1 0x01
00001d03: PUSH1 0x01
00001d05: PUSH1 0x80
00001d07: SHL
00001d08: SUB
00001d09: PUSH1 0x9e
00001d0b: SLOAD
00001d0c: AND
00001d0d: PUSH1 0x40
00001d0f: MLOAD
00001d10: SWAP1
00001d11: DUP2
00001d12: MSTORE
00001d13: RETURN
00001d14: JUMPDEST
00001d15: CALLVALUE
00001d16: PUSH2 0x02e7
00001d19: JUMPI
00001d1a: PUSH1 0x20
00001d1c: CALLDATASIZE
00001d1d: PUSH1 0x03
00001d1f: NOT
00001d20: ADD
00001d21: SLT
00001d22: PUSH2 0x02e7
00001d25: JUMPI
00001d26: PUSH1 0x04
00001d28: CALLDATALOAD
00001d29: PUSH2 0x1d31
00001d2c: DUP2
00001d2d: PUSH2 0x02d6
00001d30: JUMP
00001d31: JUMPDEST
00001d32: PUSH1 0x01
00001d34: DUP1
00001d35: PUSH1 0xa0
00001d37: SHL
00001d38: SUB
00001d39: AND
00001d3a: PUSH0
00001d3b: MSTORE
00001d3c: PUSH1 0x9c
00001d3e: PUSH1 0x20
00001d40: MSTORE
00001d41: PUSH1 0x20
00001d43: PUSH1 0x40
00001d45: PUSH0
00001d46: KECCAK256
00001d47: SLOAD
00001d48: PUSH1 0x40
00001d4a: MLOAD
00001d4b: SWAP1
00001d4c: DUP2
00001d4d: MSTORE
00001d4e: RETURN
00001d4f: JUMPDEST
00001d50: CALLVALUE
00001d51: PUSH2 0x02e7
00001d54: JUMPI
00001d55: PUSH0
00001d56: CALLDATASIZE
00001d57: PUSH1 0x03
00001d59: NOT
00001d5a: ADD
00001d5b: SLT
00001d5c: PUSH2 0x02e7
00001d5f: JUMPI
00001d60: PUSH0
00001d61: SLOAD
00001d62: PUSH1 0x40
00001d64: MLOAD
00001d65: PUSH1 0x01
00001d67: PUSH1 0x01
00001d69: PUSH1 0xa0
00001d6b: SHL
00001d6c: SUB
00001d6d: SWAP1
00001d6e: SWAP2
00001d6f: AND
00001d70: DUP2
00001d71: MSTORE
00001d72: PUSH1 0x20
00001d74: SWAP1
00001d75: RETURN
00001d76: JUMPDEST
00001d77: PUSH1 0x40
00001d79: CALLDATASIZE
00001d7a: PUSH1 0x03
00001d7c: NOT
00001d7d: ADD
00001d7e: SLT
00001d7f: PUSH2 0x02e7
00001d82: JUMPI
00001d83: PUSH1 0x20
00001d85: PUSH2 0x0361
00001d88: PUSH1 0x04
00001d8a: CALLDATALOAD
00001d8b: PUSH2 0x1d93
00001d8e: DUP2
00001d8f: PUSH2 0x02d6
00001d92: JUMP
00001d93: JUMPDEST
00001d94: PUSH1 0x24
00001d96: CALLDATALOAD
00001d97: SWAP1
00001d98: PUSH2 0x05b3
00001d9b: DUP3
00001d9c: PUSH2 0x02d6
00001d9f: JUMP
00001da0: JUMPDEST
00001da1: SWAP1
00001da2: DUP2
00001da3: PUSH1 0x20
00001da5: SWAP2
00001da6: SUB
00001da7: SLT
00001da8: PUSH2 0x02e7
00001dab: JUMPI
00001dac: MLOAD
00001dad: SWAP1
00001dae: JUMP
00001daf: JUMPDEST
00001db0: PUSH1 0x40
00001db2: MLOAD
00001db3: RETURNDATASIZE
00001db4: PUSH0
00001db5: DUP3
00001db6: RETURNDATACOPY
00001db7: RETURNDATASIZE
00001db8: SWAP1
00001db9: REVERT
00001dba: JUMPDEST
00001dbb: SWAP1
00001dbc: PUSH1 0x40
00001dbe: MLOAD
00001dbf: PUSH2 0x1dc7
00001dc2: DUP2
00001dc3: PUSH2 0x0ea6
00001dc6: JUMP
00001dc7: JUMPDEST
00001dc8: SWAP2
00001dc9: SLOAD
00001dca: PUSH1 0x01
00001dcc: PUSH1 0x01
00001dce: PUSH1 0x80
00001dd0: SHL
00001dd1: SUB
00001dd2: DUP2
00001dd3: AND
00001dd4: DUP4
00001dd5: MSTORE
00001dd6: PUSH1 0x80
00001dd8: SHR
00001dd9: PUSH1 0x20
00001ddb: DUP4
00001ddc: ADD
00001ddd: MSTORE
00001dde: JUMP
00001ddf: JUMPDEST
00001de0: PUSH4 0x4e487b71
00001de5: PUSH1 0xe0
00001de7: SHL
00001de8: PUSH0
00001de9: MSTORE
00001dea: PUSH1 0x11
00001dec: PUSH1 0x04
00001dee: MSTORE
00001def: PUSH1 0x24
00001df1: PUSH0
00001df2: REVERT
00001df3: JUMPDEST
00001df4: PUSH1 0x01
00001df6: PUSH1 0x01
00001df8: PUSH1 0x80
00001dfa: SHL
00001dfb: SUB
00001dfc: SWAP2
00001dfd: DUP3
00001dfe: AND
00001dff: SWAP1
00001e00: DUP3
00001e01: AND
00001e02: SUB
00001e03: SWAP2
00001e04: SWAP1
00001e05: DUP3
00001e06: GT
00001e07: PUSH2 0x139d
00001e0a: JUMPI
00001e0b: JUMP
00001e0c: JUMPDEST
00001e0d: DUP2
00001e0e: MLOAD
00001e0f: PUSH1 0x20
00001e11: SWAP1
00001e12: SWAP3
00001e13: ADD
00001e14: MLOAD
00001e15: PUSH1 0x80
00001e17: SHL
00001e18: PUSH16 0xffffffffffffffffffffffffffffffff
00001e29: NOT
00001e2a: AND
00001e2b: PUSH1 0x01
00001e2d: PUSH1 0x01
00001e2f: PUSH1 0x80
00001e31: SHL
00001e32: SUB
00001e33: SWAP3
00001e34: SWAP1
00001e35: SWAP3
00001e36: AND
00001e37: SWAP2
00001e38: SWAP1
00001e39: SWAP2
00001e3a: OR
00001e3b: SWAP1
00001e3c: SSTORE
00001e3d: JUMP
00001e3e: JUMPDEST
00001e3f: PUSH1 0x98
00001e41: SLOAD
00001e42: PUSH1 0x01
00001e44: PUSH1 0x01
00001e46: PUSH1 0x80
00001e48: SHL
00001e49: SUB
00001e4a: DUP2
00001e4b: AND
00001e4c: SWAP1
00001e4d: DUP2
00001e4e: PUSH2 0x1e56
00001e51: JUMPI
00001e52: POP
00001e53: POP
00001e54: SWAP1
00001e55: JUMP
00001e56: JUMPDEST
00001e57: SWAP2
00001e58: PUSH2 0x0616
00001e5b: SWAP3
00001e5c: PUSH1 0x80
00001e5e: SHR
00001e5f: SWAP1
00001e60: PUSH2 0x265c
00001e63: JUMP
00001e64: JUMPDEST
00001e65: PUSH2 0x1e70
00001e68: PUSH2 0x1e77
00001e6b: SWAP2
00001e6c: PUSH2 0x27c2
00001e6f: JUMP
00001e70: JUMPDEST
00001e71: SWAP2
00001e72: SWAP1
00001e73: PUSH2 0x2958
00001e76: JUMP
00001e77: JUMPDEST
00001e78: PUSH2 0x1e7d
00001e7b: JUMPI
00001e7c: JUMP
00001e7d: JUMPDEST
00001e7e: PUSH2 0x1e85
00001e81: PUSH2 0x2b0e
00001e84: JUMP
00001e85: JUMPDEST
00001e86: POP
00001e87: JUMP
00001e88: JUMPDEST
00001e89: SELFBALANCE
00001e8a: PUSH1 0x99
00001e8c: SLOAD
00001e8d: PUSH1 0x01
00001e8f: PUSH1 0x01
00001e91: PUSH1 0x80
00001e93: SHL
00001e94: SUB
00001e95: PUSH2 0x1e9f
00001e98: DUP2
00001e99: DUP4
00001e9a: AND
00001e9b: PUSH2 0x1e3e
00001e9e: JUMP
00001e9f: JUMPDEST
00001ea0: SWAP1
00001ea1: PUSH1 0x9e
00001ea3: SLOAD
00001ea4: AND
00001ea5: ADD
00001ea6: SWAP1
00001ea7: PUSH1 0x80
00001ea9: SHR
00001eaa: ADD
00001eab: SWAP1
00001eac: DUP2
00001ead: DUP2
00001eae: GT
00001eaf: PUSH0
00001eb0: EQ
00001eb1: PUSH2 0x1eb8
00001eb4: JUMPI
00001eb5: SUB
00001eb6: SWAP1
00001eb7: JUMP
00001eb8: JUMPDEST
00001eb9: POP
00001eba: POP
00001ebb: PUSH0
00001ebc: SWAP1
00001ebd: JUMP
00001ebe: JUMPDEST
00001ebf: PUSH2 0x016a
00001ec2: SLOAD
00001ec3: PUSH1 0x01
00001ec5: PUSH1 0x01
00001ec7: PUSH1 0xa0
00001ec9: SHL
00001eca: SUB
00001ecb: AND
00001ecc: DUP1
00001ecd: ISZERO
00001ece: PUSH2 0x1ed4
00001ed1: JUMPI
00001ed2: SWAP1
00001ed3: JUMP
00001ed4: JUMPDEST
00001ed5: POP
00001ed6: PUSH32 0x00000000000000000000000048319f97e5da1233c21c48b80097c0fb7a20ff86
00001ef7: SWAP1
00001ef8: JUMP
00001ef9: JUMPDEST
00001efa: SWAP1
00001efb: DUP2
00001efc: PUSH1 0x20
00001efe: SWAP2
00001eff: SUB
00001f00: SLT
00001f01: PUSH2 0x02e7
00001f04: JUMPI
00001f05: MLOAD
00001f06: PUSH2 0x0616
00001f09: DUP2
00001f0a: PUSH2 0x02d6
00001f0d: JUMP
00001f0e: JUMPDEST
00001f0f: SWAP1
00001f10: PUSH1 0x20
00001f12: DUP3
00001f13: DUP3
00001f14: SUB
00001f15: SLT
00001f16: PUSH2 0x02e7
00001f19: JUMPI
00001f1a: DUP2
00001f1b: CALLDATALOAD
00001f1c: PUSH1 0x01
00001f1e: PUSH1 0x01
00001f20: PUSH1 0x40
00001f22: SHL
00001f23: SUB
00001f24: SWAP3
00001f25: DUP4
00001f26: DUP3
00001f27: GT
00001f28: PUSH2 0x02e7
00001f2b: JUMPI
00001f2c: ADD
00001f2d: SWAP2
00001f2e: PUSH1 0x60
00001f30: DUP4
00001f31: DUP4
00001f32: SUB
00001f33: SLT
00001f34: PUSH2 0x02e7
00001f37: JUMPI
00001f38: PUSH1 0x40
00001f3a: MLOAD
00001f3b: SWAP3
00001f3c: PUSH2 0x1f44
00001f3f: DUP5
00001f40: PUSH2 0x0ed9
00001f43: JUMP
00001f44: JUMPDEST
00001f45: DUP1
00001f46: CALLDATALOAD
00001f47: DUP5
00001f48: MSTORE
00001f49: PUSH1 0x20
00001f4b: DUP2
00001f4c: ADD
00001f4d: CALLDATALOAD
00001f4e: PUSH2 0xffff
00001f51: DUP2
00001f52: AND
00001f53: DUP2
00001f54: SUB
00001f55: PUSH2 0x02e7
00001f58: JUMPI
00001f59: PUSH1 0x20
00001f5b: DUP6
00001f5c: ADD
00001f5d: MSTORE
00001f5e: PUSH1 0x40
00001f60: DUP2
00001f61: ADD
00001f62: CALLDATALOAD
00001f63: SWAP2
00001f64: DUP3
00001f65: GT
00001f66: PUSH2 0x02e7
00001f69: JUMPI
00001f6a: ADD
00001f6b: SWAP1
00001f6c: DUP1
00001f6d: PUSH1 0x1f
00001f6f: DUP4
00001f70: ADD
00001f71: SLT
00001f72: ISZERO
00001f73: PUSH2 0x02e7
00001f76: JUMPI
00001f77: DUP2
00001f78: PUSH1 0x20
00001f7a: PUSH2 0x1f85
00001f7d: SWAP4
00001f7e: CALLDATALOAD
00001f7f: SWAP2
00001f80: ADD
00001f81: PUSH2 0x0f4b
00001f84: JUMP
00001f85: JUMPDEST
00001f86: PUSH1 0x40
00001f88: DUP3
00001f89: ADD
00001f8a: MSTORE
00001f8b: SWAP1
00001f8c: JUMP
00001f8d: JUMPDEST
00001f8e: PUSH0
00001f8f: SLOAD
00001f90: SWAP1
00001f91: SWAP2
00001f92: SWAP1
00001f93: PUSH1 0x01
00001f95: PUSH1 0x01
00001f97: PUSH1 0xa0
00001f99: SHL
00001f9a: SUB
00001f9b: AND
00001f9c: PUSH2 0x2048
00001f9f: JUMPI
00001fa0: PUSH1 0x40
00001fa2: MLOAD
00001fa3: SWAP1
00001fa4: PUSH4 0xe7f6f225
00001fa9: PUSH1 0xe0
00001fab: SHL
00001fac: DUP3
00001fad: MSTORE
00001fae: PUSH1 0x20
00001fb0: SWAP3
00001fb1: DUP4
00001fb2: DUP4
00001fb3: PUSH1 0x04
00001fb5: DUP2
00001fb6: CALLER
00001fb7: GAS
00001fb8: STATICCALL
00001fb9: SWAP3
00001fba: DUP4
00001fbb: ISZERO
00001fbc: PUSH2 0x0543
00001fbf: JUMPI
00001fc0: PUSH0
00001fc1: SWAP4
00001fc2: PUSH2 0x2029
00001fc5: JUMPI
00001fc6: JUMPDEST
00001fc7: POP
00001fc8: PUSH1 0x40
00001fca: MLOAD
00001fcb: PUSH4 0x6f4fa30f
00001fd0: PUSH1 0xe0
00001fd2: SHL
00001fd3: DUP2
00001fd4: MSTORE
00001fd5: SWAP1
00001fd6: DUP5
00001fd7: DUP3
00001fd8: PUSH1 0x04
00001fda: DUP2
00001fdb: CALLER
00001fdc: GAS
00001fdd: STATICCALL
00001fde: SWAP2
00001fdf: DUP3
00001fe0: ISZERO
00001fe1: PUSH2 0x0543
00001fe4: JUMPI
00001fe5: PUSH2 0x2004
00001fe8: SWAP6
00001fe9: PUSH0
00001fea: SWAP4
00001feb: PUSH2 0x2006
00001fee: JUMPI
00001fef: JUMPDEST
00001ff0: POP
00001ff1: POP
00001ff2: PUSH2 0x1ffe
00001ff5: SWAP2
00001ff6: SWAP3
00001ff7: DUP2
00001ff8: ADD
00001ff9: SWAP1
00001ffa: PUSH2 0x1f0e
00001ffd: JUMP
00001ffe: JUMPDEST
00001fff: SWAP2
00002000: PUSH2 0x3320
00002003: JUMP
00002004: JUMPDEST
00002005: JUMP
00002006: JUMPDEST
00002007: PUSH2 0x1ffe
0000200a: SWAP4
0000200b: POP
0000200c: SWAP1
0000200d: DUP2
0000200e: PUSH2 0x2022
00002011: SWAP3
00002012: SWAP1
00002013: RETURNDATASIZE
00002014: LT
00002015: PUSH2 0x0ded
00002018: JUMPI
00002019: PUSH2 0x0ddf
0000201c: DUP2
0000201d: DUP4
0000201e: PUSH2 0x0f0f
00002021: JUMP
00002022: JUMPDEST
00002023: SWAP2
00002024: PUSH0
00002025: PUSH2 0x1fef
00002028: JUMP
00002029: JUMPDEST
0000202a: PUSH2 0x2041
0000202d: SWAP2
0000202e: SWAP4
0000202f: POP
00002030: DUP5
00002031: RETURNDATASIZE
00002032: DUP7
00002033: GT
00002034: PUSH2 0x0ded
00002037: JUMPI
00002038: PUSH2 0x0ddf
0000203b: DUP2
0000203c: DUP4
0000203d: PUSH2 0x0f0f
00002040: JUMP
00002041: JUMPDEST
00002042: SWAP2
00002043: PUSH0
00002044: PUSH2 0x1fc6
00002047: JUMP
00002048: JUMPDEST
00002049: POP
0000204a: POP
0000204b: JUMP
0000204c: JUMPDEST
0000204d: PUSH1 0x9d
0000204f: SLOAD
00002050: DUP1
00002051: PUSH2 0x0616
00002054: JUMPI
00002055: POP
00002056: PUSH0
00002057: NOT
00002058: SWAP1
00002059: JUMP
0000205a: JUMPDEST
0000205b: MLOAD
0000205c: SWAP1
0000205d: DUP2
0000205e: ISZERO
0000205f: ISZERO
00002060: DUP3
00002061: SUB
00002062: PUSH2 0x02e7
00002065: JUMPI
00002066: JUMP
00002067: JUMPDEST
00002068: SWAP1
00002069: DUP2
0000206a: PUSH1 0x20
0000206c: SWAP2
0000206d: SUB
0000206e: SLT
0000206f: PUSH2 0x02e7
00002072: JUMPI
00002073: PUSH2 0x0616
00002076: SWAP1
00002077: PUSH2 0x205a
0000207a: JUMP
0000207b: JUMPDEST
0000207c: SWAP2
0000207d: SWAP1
0000207e: DUP3
0000207f: SUB
00002080: SWAP2
00002081: DUP3
00002082: GT
00002083: PUSH2 0x139d
00002086: JUMPI
00002087: JUMP
00002088: JUMPDEST
00002089: PUSH1 0x40
0000208b: DUP1
0000208c: MLOAD
0000208d: PUSH1 0x01
0000208f: PUSH1 0x01
00002091: PUSH1 0xa0
00002093: SHL
00002094: SUB
00002095: SWAP1
00002096: SWAP3
00002097: AND
00002098: PUSH1 0x20
0000209a: DUP4
0000209b: ADD
0000209c: SWAP1
0000209d: DUP2
0000209e: MSTORE
0000209f: SWAP1
000020a0: DUP3
000020a1: ADD
000020a2: SWAP4
000020a3: SWAP1
000020a4: SWAP4
000020a5: MSTORE
000020a6: PUSH1 0x60
000020a8: DUP2
000020a9: ADD
000020aa: DUP3
000020ab: SWAP1
000020ac: MSTORE
000020ad: SWAP1
000020ae: SWAP2
000020af: SWAP1
000020b0: PUSH2 0x20c6
000020b3: DUP2
000020b4: PUSH1 0x80
000020b6: DUP2
000020b7: ADD
000020b8: JUMPDEST
000020b9: SUB
000020ba: PUSH1 0x1f
000020bc: NOT
000020bd: DUP2
000020be: ADD
000020bf: DUP4
000020c0: MSTORE
000020c1: DUP3
000020c2: PUSH2 0x0f0f
000020c5: JUMP
000020c6: JUMPDEST
000020c7: MLOAD
000020c8: SWAP1
000020c9: KECCAK256
000020ca: PUSH0
000020cb: MSTORE
000020cc: PUSH1 0x9b
000020ce: PUSH1 0x20
000020d0: MSTORE
000020d1: PUSH1 0x40
000020d3: PUSH0
000020d4: KECCAK256
000020d5: SLOAD
000020d6: SWAP2
000020d7: DUP3
000020d8: ISZERO
000020d9: PUSH2 0x20f6
000020dc: JUMPI
000020dd: PUSH2 0x20e7
000020e0: SWAP2
000020e1: DUP4
000020e2: SWAP2
000020e3: PUSH2 0x3499
000020e6: JUMP
000020e7: JUMPDEST
000020e8: SWAP1
000020e9: SWAP2
000020ea: DUP3
000020eb: DUP2
000020ec: SUB
000020ed: SWAP1
000020ee: DUP2
000020ef: GT
000020f0: PUSH2 0x139d
000020f3: JUMPI
000020f4: SWAP3
000020f5: JUMP
000020f6: JUMPDEST
000020f7: POP
000020f8: POP
000020f9: POP
000020fa: PUSH0
000020fb: SWAP1
000020fc: PUSH0
000020fd: SWAP1
000020fe: PUSH0
000020ff: SWAP1
00002100: JUMP
00002101: JUMPDEST
00002102: SWAP1
00002103: CALLDATALOAD
00002104: PUSH1 0x1e
00002106: NOT
00002107: DUP3
00002108: CALLDATASIZE
00002109: SUB
0000210a: ADD
0000210b: DUP2
0000210c: SLT
0000210d: ISZERO
0000210e: PUSH2 0x02e7
00002111: JUMPI
00002112: ADD
00002113: PUSH1 0x20
00002115: DUP2
00002116: CALLDATALOAD
00002117: SWAP2
00002118: ADD
00002119: SWAP2
0000211a: PUSH1 0x01
0000211c: PUSH1 0x01
0000211e: PUSH1 0x40
00002120: SHL
00002121: SUB
00002122: DUP3
00002123: GT
00002124: PUSH2 0x02e7
00002127: JUMPI
00002128: DUP2
00002129: CALLDATASIZE
0000212a: SUB
0000212b: DUP4
0000212c: SGT
0000212d: PUSH2 0x02e7
00002130: JUMPI
00002131: JUMP
00002132: JUMPDEST
00002133: SWAP1
00002134: PUSH1 0x30
00002136: PUSH1 0x60
00002138: SWAP3
00002139: DUP2
0000213a: DUP4
0000213b: MSTORE
0000213c: PUSH1 0x20
0000213e: DUP4
0000213f: ADD
00002140: CALLDATACOPY
00002141: PUSH0
00002142: PUSH1 0x50
00002144: DUP3
00002145: ADD
00002146: MSTORE
00002147: ADD
00002148: SWAP1
00002149: JUMP
0000214a: JUMPDEST
0000214b: SWAP1
0000214c: DUP1
0000214d: PUSH1 0x20
0000214f: SWAP4
00002150: SWAP3
00002151: DUP2
00002152: DUP5
00002153: MSTORE
00002154: DUP5
00002155: DUP5
00002156: ADD
00002157: CALLDATACOPY
00002158: PUSH0
00002159: DUP3
0000215a: DUP3
0000215b: ADD
0000215c: DUP5
0000215d: ADD
0000215e: MSTORE
0000215f: PUSH1 0x1f
00002161: ADD
00002162: PUSH1 0x1f
00002164: NOT
00002165: AND
00002166: ADD
00002167: ADD
00002168: SWAP1
00002169: JUMP
0000216a: JUMPDEST
0000216b: SWAP1
0000216c: PUSH1 0xa0
0000216e: PUSH2 0x0616
00002171: SWAP3
00002172: PUSH1 0x20
00002174: DUP2
00002175: MSTORE
00002176: DUP3
00002177: CALLDATALOAD
00002178: PUSH1 0x20
0000217a: DUP3
0000217b: ADD
0000217c: MSTORE
0000217d: PUSH1 0x20
0000217f: DUP4
00002180: ADD
00002181: CALLDATALOAD
00002182: PUSH1 0x40
00002184: DUP3
00002185: ADD
00002186: MSTORE
00002187: PUSH2 0x21a6
0000218a: PUSH2 0x2196
0000218d: PUSH1 0x40
0000218f: DUP6
00002190: ADD
00002191: DUP6
00002192: PUSH2 0x2101
00002195: JUMP
00002196: JUMPDEST
00002197: DUP5
00002198: PUSH1 0x60
0000219a: DUP6
0000219b: ADD
0000219c: MSTORE
0000219d: PUSH1 0xc0
0000219f: DUP5
000021a0: ADD
000021a1: SWAP2
000021a2: PUSH2 0x214a
000021a5: JUMP
000021a6: JUMPDEST
000021a7: SWAP1
000021a8: PUSH2 0x21d9
000021ab: PUSH2 0x21ce
000021ae: PUSH2 0x21ba
000021b1: PUSH1 0x60
000021b3: DUP8
000021b4: ADD
000021b5: DUP8
000021b6: PUSH2 0x2101
000021b9: JUMP
000021ba: JUMPDEST
000021bb: PUSH1 0x1f
000021bd: NOT
000021be: DUP6
000021bf: DUP8
000021c0: SUB
000021c1: DUP2
000021c2: ADD
000021c3: PUSH1 0x80
000021c5: DUP8
000021c6: ADD
000021c7: MSTORE
000021c8: SWAP6
000021c9: SWAP2
000021ca: PUSH2 0x214a
000021cd: JUMP
000021ce: JUMPDEST
000021cf: SWAP5
000021d0: PUSH1 0x80
000021d2: DUP2
000021d3: ADD
000021d4: SWAP1
000021d5: PUSH2 0x2101
000021d8: JUMP
000021d9: JUMPDEST
000021da: SWAP4
000021db: SWAP1
000021dc: SWAP3
000021dd: DUP3
000021de: DUP7
000021df: SUB
000021e0: ADD
000021e1: SWAP2
000021e2: ADD
000021e3: MSTORE
000021e4: PUSH2 0x214a
000021e7: JUMP
000021e8: JUMPDEST
000021e9: SWAP1
000021ea: CALLDATALOAD
000021eb: SWAP1
000021ec: PUSH1 0x1e
000021ee: NOT
000021ef: DUP2
000021f0: CALLDATASIZE
000021f1: SUB
000021f2: ADD
000021f3: DUP3
000021f4: SLT
000021f5: ISZERO
000021f6: PUSH2 0x02e7
000021f9: JUMPI
000021fa: ADD
000021fb: DUP1
000021fc: CALLDATALOAD
000021fd: SWAP1
000021fe: PUSH1 0x01
00002200: PUSH1 0x01
00002202: PUSH1 0x40
00002204: SHL
00002205: SUB
00002206: DUP3
00002207: GT
00002208: PUSH2 0x02e7
0000220b: JUMPI
0000220c: PUSH1 0x20
0000220e: ADD
0000220f: SWAP2
00002210: DUP2
00002211: CALLDATASIZE
00002212: SUB
00002213: DUP4
00002214: SGT
00002215: PUSH2 0x02e7
00002218: JUMPI
00002219: JUMP
0000221a: JUMPDEST
0000221b: PUSH4 0x4e487b71
00002220: PUSH1 0xe0
00002222: SHL
00002223: PUSH0
00002224: MSTORE
00002225: PUSH1 0x12
00002227: PUSH1 0x04
00002229: MSTORE
0000222a: PUSH1 0x24
0000222c: PUSH0
0000222d: REVERT
0000222e: JUMPDEST
0000222f: DUP2
00002230: ISZERO
00002231: PUSH2 0x2238
00002234: JUMPI
00002235: DIV
00002236: SWAP1
00002237: JUMP
00002238: JUMPDEST
00002239: PUSH2 0x221a
0000223c: JUMP
0000223d: JUMPDEST
0000223e: SWAP1
0000223f: PUSH9 0x01bc16d674ec800000
00002249: SWAP2
0000224a: DUP1
0000224b: DUP4
0000224c: MUL
0000224d: SWAP3
0000224e: DUP4
0000224f: DIV
00002250: SUB
00002251: PUSH2 0x139d
00002254: JUMPI
00002255: JUMP
00002256: JUMPDEST
00002257: SWAP1
00002258: PUSH8 0x0de0b6b3a7640000
00002261: SWAP2
00002262: DUP3
00002263: DUP2
00002264: MUL
00002265: SWAP3
00002266: DUP2
00002267: DUP5
00002268: DIV
00002269: EQ
0000226a: SWAP1
0000226b: ISZERO
0000226c: OR
0000226d: ISZERO
0000226e: PUSH2 0x139d
00002271: JUMPI
00002272: JUMP
00002273: JUMPDEST
00002274: SWAP1
00002275: PUSH1 0x01
00002277: DUP3
00002278: ADD
00002279: DUP1
0000227a: SWAP3
0000227b: GT
0000227c: PUSH2 0x139d
0000227f: JUMPI
00002280: JUMP
00002281: JUMPDEST
00002282: SWAP2
00002283: SWAP1
00002284: DUP3
00002285: ADD
00002286: DUP1
00002287: SWAP3
00002288: GT
00002289: PUSH2 0x139d
0000228c: JUMPI
0000228d: JUMP
0000228e: JUMPDEST
0000228f: PUSH1 0x01
00002291: PUSH1 0x01
00002293: PUSH1 0x40
00002295: SHL
00002296: SUB
00002297: DUP2
00002298: GT
00002299: PUSH2 0x0ec1
0000229c: JUMPI
0000229d: PUSH1 0x05
0000229f: SHL
000022a0: PUSH1 0x20
000022a2: ADD
000022a3: SWAP1
000022a4: JUMP
000022a5: JUMPDEST
000022a6: SWAP1
000022a7: PUSH2 0x22af
000022aa: DUP3
000022ab: PUSH2 0x228e
000022ae: JUMP
000022af: JUMPDEST
000022b0: PUSH2 0x22bc
000022b3: PUSH1 0x40
000022b5: MLOAD
000022b6: SWAP2
000022b7: DUP3
000022b8: PUSH2 0x0f0f
000022bb: JUMP
000022bc: JUMPDEST
000022bd: DUP3
000022be: DUP2
000022bf: MSTORE
000022c0: DUP1
000022c1: SWAP3
000022c2: PUSH2 0x22cd
000022c5: PUSH1 0x1f
000022c7: NOT
000022c8: SWAP2
000022c9: PUSH2 0x228e
000022cc: JUMP
000022cd: JUMPDEST
000022ce: ADD
000022cf: SWAP1
000022d0: PUSH0
000022d1: JUMPDEST
000022d2: DUP3
000022d3: DUP2
000022d4: LT
000022d5: PUSH2 0x22dd
000022d8: JUMPI
000022d9: POP
000022da: POP
000022db: POP
000022dc: JUMP
000022dd: JUMPDEST
000022de: DUP1
000022df: PUSH1 0x60
000022e1: PUSH1 0x20
000022e3: DUP1
000022e4: SWAP4
000022e5: DUP6
000022e6: ADD
000022e7: ADD
000022e8: MSTORE
000022e9: ADD
000022ea: PUSH2 0x22d1
000022ed: JUMP
000022ee: JUMPDEST
000022ef: PUSH4 0x4e487b71
000022f4: PUSH1 0xe0
000022f6: SHL
000022f7: PUSH0
000022f8: MSTORE
000022f9: PUSH1 0x32
000022fb: PUSH1 0x04
000022fd: MSTORE
000022fe: PUSH1 0x24
00002300: PUSH0
00002301: REVERT
00002302: JUMPDEST
00002303: SWAP1
00002304: DUP3
00002305: LT
00002306: ISZERO
00002307: PUSH2 0x2319
0000230a: JUMPI
0000230b: PUSH2 0x0c1d
0000230e: SWAP2
0000230f: PUSH1 0x05
00002311: SHL
00002312: DUP2
00002313: ADD
00002314: SWAP1
00002315: PUSH2 0x21e8
00002318: JUMP
00002319: JUMPDEST
0000231a: PUSH2 0x22ee
0000231d: JUMP
0000231e: JUMPDEST
0000231f: SWAP1
00002320: DUP1
00002321: SWAP3
00002322: SWAP2
00002323: DUP3
00002324: CALLDATACOPY
00002325: ADD
00002326: PUSH0
00002327: DUP2
00002328: MSTORE
00002329: SWAP1
0000232a: JUMP
0000232b: JUMPDEST
0000232c: RETURNDATASIZE
0000232d: ISZERO
0000232e: PUSH2 0x2355
00002331: JUMPI
00002332: RETURNDATASIZE
00002333: SWAP1
00002334: PUSH2 0x233c
00002337: DUP3
00002338: PUSH2 0x0f30
0000233b: JUMP
0000233c: JUMPDEST
0000233d: SWAP2
0000233e: PUSH2 0x234a
00002341: PUSH1 0x40
00002343: MLOAD
00002344: SWAP4
00002345: DUP5
00002346: PUSH2 0x0f0f
00002349: JUMP
0000234a: JUMPDEST
0000234b: DUP3
0000234c: MSTORE
0000234d: RETURNDATASIZE
0000234e: PUSH0
0000234f: PUSH1 0x20
00002351: DUP5
00002352: ADD
00002353: RETURNDATACOPY
00002354: JUMP
00002355: JUMPDEST
00002356: PUSH1 0x60
00002358: SWAP1
00002359: JUMP
0000235a: JUMPDEST
0000235b: PUSH1 0x20
0000235d: DUP2
0000235e: DUP4
0000235f: SUB
00002360: SLT
00002361: PUSH2 0x02e7
00002364: JUMPI
00002365: DUP1
00002366: MLOAD
00002367: SWAP1
00002368: PUSH1 0x01
0000236a: PUSH1 0x01
0000236c: PUSH1 0x40
0000236e: SHL
0000236f: SUB
00002370: DUP3
00002371: GT
00002372: PUSH2 0x02e7
00002375: JUMPI
00002376: ADD
00002377: DUP2
00002378: PUSH1 0x1f
0000237a: DUP3
0000237b: ADD
0000237c: SLT
0000237d: ISZERO
0000237e: PUSH2 0x02e7
00002381: JUMPI
00002382: DUP1
00002383: MLOAD
00002384: PUSH2 0x238c
00002387: DUP2
00002388: PUSH2 0x0f30
0000238b: JUMP
0000238c: JUMPDEST
0000238d: SWAP3
0000238e: PUSH2 0x239a
00002391: PUSH1 0x40
00002393: MLOAD
00002394: SWAP5
00002395: DUP6
00002396: PUSH2 0x0f0f
00002399: JUMP
0000239a: JUMPDEST
0000239b: DUP2
0000239c: DUP5
0000239d: MSTORE
0000239e: PUSH1 0x20
000023a0: DUP3
000023a1: DUP5
000023a2: ADD
000023a3: ADD
000023a4: GT
000023a5: PUSH2 0x02e7
000023a8: JUMPI
000023a9: PUSH2 0x0616
000023ac: SWAP2
000023ad: PUSH1 0x20
000023af: DUP1
000023b0: DUP6
000023b1: ADD
000023b2: SWAP2
000023b3: ADD
000023b4: PUSH2 0x1aff
000023b7: JUMP
000023b8: JUMPDEST
000023b9: DUP1
000023ba: MLOAD
000023bb: DUP3
000023bc: LT
000023bd: ISZERO
000023be: PUSH2 0x2319
000023c1: JUMPI
000023c2: PUSH1 0x20
000023c4: SWAP2
000023c5: PUSH1 0x05
000023c7: SHL
000023c8: ADD
000023c9: ADD
000023ca: SWAP1
000023cb: JUMP
000023cc: JUMPDEST
000023cd: SWAP2
000023ce: SWAP1
000023cf: SWAP2
000023d0: PUSH2 0x23d8
000023d3: DUP4
000023d4: PUSH2 0x22a5
000023d7: JUMP
000023d8: JUMPDEST
000023d9: SWAP3
000023da: PUSH0
000023db: JUMPDEST
000023dc: DUP2
000023dd: DUP2
000023de: LT
000023df: PUSH2 0x23e7
000023e2: JUMPI
000023e3: POP
000023e4: POP
000023e5: POP
000023e6: JUMP
000023e7: JUMPDEST
000023e8: PUSH0
000023e9: DUP1
000023ea: PUSH2 0x23f4
000023ed: DUP4
000023ee: DUP6
000023ef: DUP8
000023f0: PUSH2 0x2302
000023f3: JUMP
000023f4: JUMPDEST
000023f5: PUSH1 0x40
000023f7: SWAP4
000023f8: SWAP2
000023f9: PUSH2 0x2406
000023fc: DUP6
000023fd: MLOAD
000023fe: DUP1
000023ff: SWAP4
00002400: DUP2
00002401: SWAP4
00002402: PUSH2 0x231e
00002405: JUMP
00002406: JUMPDEST
00002407: SUB
00002408: SWAP1
00002409: ADDRESS
0000240a: GAS
0000240b: DELEGATECALL
0000240c: SWAP1
0000240d: PUSH2 0x2414
00002410: PUSH2 0x232b
00002413: JUMP
00002414: JUMPDEST
00002415: SWAP2
00002416: ISZERO
00002417: PUSH2 0x243b
0000241a: JUMPI
0000241b: POP
0000241c: SWAP1
0000241d: PUSH1 0x01
0000241f: SWAP2
00002420: PUSH2 0x2429
00002423: DUP3
00002424: DUP9
00002425: PUSH2 0x23b8
00002428: JUMP
00002429: JUMPDEST
0000242a: MSTORE
0000242b: PUSH2 0x2434
0000242e: DUP2
0000242f: DUP8
00002430: PUSH2 0x23b8
00002433: JUMP
00002434: JUMPDEST
00002435: POP
00002436: ADD
00002437: PUSH2 0x23db
0000243a: JUMP
0000243b: JUMPDEST
0000243c: SWAP1
0000243d: PUSH1 0x44
0000243f: DUP2
00002440: MLOAD
00002441: LT
00002442: PUSH2 0x02e7
00002445: JUMPI
00002446: PUSH2 0x2475
00002449: PUSH2 0x2460
0000244c: PUSH1 0x04
0000244e: SWAP3
0000244f: DUP4
00002450: DUP2
00002451: ADD
00002452: MLOAD
00002453: PUSH1 0x24
00002455: DUP1
00002456: SWAP2
00002457: DUP4
00002458: ADD
00002459: ADD
0000245a: SWAP2
0000245b: ADD
0000245c: PUSH2 0x235a
0000245f: JUMP
00002460: JUMPDEST
00002461: SWAP3
00002462: MLOAD
00002463: PUSH3 0x461bcd
00002467: PUSH1 0xe5
00002469: SHL
0000246a: DUP2
0000246b: MSTORE
0000246c: SWAP3
0000246d: DUP4
0000246e: SWAP3
0000246f: DUP4
00002470: ADD
00002471: PUSH2 0x1c0d
00002474: JUMP
00002475: JUMPDEST
00002476: SUB
00002477: SWAP1
00002478: REVERT
00002479: JUMPDEST
0000247a: PUSH1 0xd2
0000247c: SLOAD
0000247d: PUSH1 0x01
0000247f: PUSH1 0x01
00002481: PUSH1 0xa0
00002483: SHL
00002484: SUB
00002485: AND
00002486: DUP1
00002487: PUSH2 0x0616
0000248a: JUMPI
0000248b: POP
0000248c: PUSH32 0x00000000000000000000000075ab6ddce07556639333d3df1eaa684f5735223e
000024ad: SWAP1
000024ae: JUMP
000024af: JUMPDEST
000024b0: PUSH2 0x1e85
000024b3: CALLVALUE
000024b4: CALLER
000024b5: PUSH2 0x3dea
000024b8: JUMP
000024b9: JUMPDEST
000024ba: PUSH1 0x40
000024bc: MLOAD
000024bd: PUSH4 0x752a536d
000024c2: PUSH1 0xe0
000024c4: SHL
000024c5: DUP2
000024c6: MSTORE
000024c7: PUSH1 0x20
000024c9: DUP2
000024ca: PUSH1 0x04
000024cc: DUP2
000024cd: PUSH32 0x0000000000000000000000002a261e60fb14586b474c208b1b7ac6d0f5000306
000024ee: PUSH1 0x01
000024f0: PUSH1 0x01
000024f2: PUSH1 0xa0
000024f4: SHL
000024f5: SUB
000024f6: AND
000024f7: GAS
000024f8: STATICCALL
000024f9: SWAP1
000024fa: DUP2
000024fb: ISZERO
000024fc: PUSH2 0x0543
000024ff: JUMPI
00002500: PUSH0
00002501: SWAP2
00002502: PUSH2 0x254f
00002505: JUMPI
00002506: JUMPDEST
00002507: POP
00002508: PUSH1 0x20
0000250a: DUP3
0000250b: ADD
0000250c: SWAP2
0000250d: PUSH1 0x01
0000250f: PUSH1 0x01
00002511: PUSH1 0x80
00002513: SHL
00002514: SUB
00002515: SWAP2
00002516: DUP3
00002517: DUP5
00002518: MLOAD
00002519: AND
0000251a: SWAP2
0000251b: DUP3
0000251c: DUP3
0000251d: EQ
0000251e: PUSH2 0x2548
00002521: JUMPI
00002522: DUP4
00002523: PUSH2 0x253b
00002526: PUSH2 0x2536
00002529: PUSH2 0x2543
0000252c: SWAP6
0000252d: DUP6
0000252e: DUP5
0000252f: DUP7
00002530: MLOAD
00002531: AND
00002532: PUSH2 0x265c
00002535: JUMP
00002536: JUMPDEST
00002537: PUSH2 0x3c2c
0000253a: JUMP
0000253b: JUMPDEST
0000253c: AND
0000253d: SWAP1
0000253e: MSTORE
0000253f: PUSH2 0x3c2c
00002542: JUMP
00002543: JUMPDEST
00002544: AND
00002545: SWAP1
00002546: MSTORE
00002547: JUMP
00002548: JUMPDEST
00002549: POP
0000254a: POP
0000254b: POP
0000254c: POP
0000254d: POP
0000254e: JUMP
0000254f: JUMPDEST
00002550: PUSH2 0x2568
00002553: SWAP2
00002554: POP
00002555: PUSH1 0x20
00002557: RETURNDATASIZE
00002558: PUSH1 0x20
0000255a: GT
0000255b: PUSH2 0x053c
0000255e: JUMPI
0000255f: PUSH2 0x052e
00002562: DUP2
00002563: DUP4
00002564: PUSH2 0x0f0f
00002567: JUMP
00002568: JUMPDEST
00002569: PUSH0
0000256a: PUSH2 0x2506
0000256d: JUMP
0000256e: JUMPDEST
0000256f: SWAP1
00002570: DUP1
00002571: DUP3
00002572: MUL
00002573: SWAP1
00002574: PUSH0
00002575: NOT
00002576: DUP2
00002577: DUP5
00002578: MULMOD
00002579: SWAP1
0000257a: DUP3
0000257b: DUP1
0000257c: DUP4
0000257d: LT
0000257e: SWAP3
0000257f: SUB
00002580: SWAP2
00002581: DUP1
00002582: DUP4
00002583: SUB
00002584: SWAP3
00002585: EQ
00002586: PUSH2 0x25dd
00002589: JUMPI
0000258a: PUSH2 0x2710
0000258d: SWAP1
0000258e: DUP3
0000258f: DUP3
00002590: GT
00002591: ISZERO
00002592: PUSH2 0x25cb
00002595: JUMPI
00002596: PUSH32 0xbc01a36e2eb1c432ca57a786c226809d495182a9930be0ded288ce703afb7e91
000025b7: SWAP5
000025b8: MULMOD
000025b9: SWAP1
000025ba: DUP3
000025bb: DUP3
000025bc: GT
000025bd: SWAP1
000025be: SUB
000025bf: PUSH1 0xfc
000025c1: SHL
000025c2: SWAP2
000025c3: SUB
000025c4: PUSH1 0x04
000025c6: SHR
000025c7: OR
000025c8: MUL
000025c9: SWAP1
000025ca: JUMP
000025cb: JUMPDEST
000025cc: PUSH1 0x40
000025ce: MLOAD
000025cf: PUSH4 0x227bc153
000025d4: PUSH1 0xe0
000025d6: SHL
000025d7: DUP2
000025d8: MSTORE
000025d9: PUSH1 0x04
000025db: SWAP1
000025dc: REVERT
000025dd: JUMPDEST
000025de: POP
000025df: POP
000025e0: PUSH2 0x2710
000025e3: SWAP2
000025e4: POP
000025e5: DIV
000025e6: SWAP1
000025e7: JUMP
000025e8: JUMPDEST
000025e9: SWAP1
000025ea: DUP1
000025eb: DUP3
000025ec: MUL
000025ed: SWAP1
000025ee: PUSH0
000025ef: NOT
000025f0: DUP2
000025f1: DUP5
000025f2: MULMOD
000025f3: SWAP1
000025f4: DUP3
000025f5: DUP1
000025f6: DUP4
000025f7: LT
000025f8: SWAP3
000025f9: SUB
000025fa: SWAP2
000025fb: DUP1
000025fc: DUP4
000025fd: SUB
000025fe: SWAP3
000025ff: EQ
00002600: PUSH2 0x264b
00002603: JUMPI
00002604: PUSH8 0x0de0b6b3a7640000
0000260d: SWAP1
0000260e: DUP3
0000260f: DUP3
00002610: GT
00002611: ISZERO
00002612: PUSH2 0x25cb
00002615: JUMPI
00002616: PUSH32 0xaccb18165bd6fe31ae1cf318dc5b51eee0e1ba569b88cd74c1773b91fac10669
00002637: SWAP5
00002638: MULMOD
00002639: SWAP1
0000263a: DUP3
0000263b: DUP3
0000263c: GT
0000263d: SWAP1
0000263e: SUB
0000263f: PUSH1 0xee
00002641: SHL
00002642: SWAP2
00002643: SUB
00002644: PUSH1 0x12
00002646: SHR
00002647: OR
00002648: MUL
00002649: SWAP1
0000264a: JUMP
0000264b: JUMPDEST
0000264c: POP
0000264d: POP
0000264e: PUSH8 0x0de0b6b3a7640000
00002657: SWAP2
00002658: POP
00002659: DIV
0000265a: SWAP1
0000265b: JUMP
0000265c: JUMPDEST
0000265d: SWAP1
0000265e: SWAP2
0000265f: DUP3
00002660: DUP3
00002661: MUL
00002662: SWAP2
00002663: PUSH0
00002664: NOT
00002665: DUP5
00002666: DUP3
00002667: MULMOD
00002668: SWAP4
00002669: DUP4
0000266a: DUP1
0000266b: DUP7
0000266c: LT
0000266d: SWAP6
0000266e: SUB
0000266f: SWAP5
00002670: DUP1
00002671: DUP7
00002672: SUB
00002673: SWAP6
00002674: EQ
00002675: PUSH2 0x26cf
00002678: JUMPI
00002679: DUP5
0000267a: DUP4
0000267b: GT
0000267c: ISZERO
0000267d: PUSH2 0x25cb
00002680: JUMPI
00002681: DUP3
00002682: SWAP2
00002683: MULMOD
00002684: DUP2
00002685: PUSH0
00002686: SUB
00002687: DUP3
00002688: AND
00002689: DUP1
0000268a: SWAP3
0000268b: DIV
0000268c: PUSH1 0x02
0000268e: DUP1
0000268f: DUP3
00002690: PUSH1 0x03
00002692: MUL
00002693: XOR
00002694: DUP1
00002695: DUP4
00002696: MUL
00002697: DUP3
00002698: SUB
00002699: MUL
0000269a: DUP1
0000269b: DUP4
0000269c: MUL
0000269d: DUP3
0000269e: SUB
0000269f: MUL
000026a0: DUP1
000026a1: DUP4
000026a2: MUL
000026a3: DUP3
000026a4: SUB
000026a5: MUL
000026a6: DUP1
000026a7: DUP4
000026a8: MUL
000026a9: DUP3
000026aa: SUB
000026ab: MUL
000026ac: DUP1
000026ad: DUP4
000026ae: MUL
000026af: DUP3
000026b0: SUB
000026b1: MUL
000026b2: DUP1
000026b3: SWAP3
000026b4: MUL
000026b5: SWAP1
000026b6: SUB
000026b7: MUL
000026b8: SWAP4
000026b9: PUSH1 0x01
000026bb: DUP4
000026bc: DUP1
000026bd: PUSH0
000026be: SUB
000026bf: DIV
000026c0: ADD
000026c1: SWAP1
000026c2: DUP5
000026c3: DUP4
000026c4: GT
000026c5: SWAP1
000026c6: SUB
000026c7: MUL
000026c8: SWAP3
000026c9: SUB
000026ca: DIV
000026cb: OR
000026cc: MUL
000026cd: SWAP1
000026ce: JUMP
000026cf: JUMPDEST
000026d0: POP
000026d1: POP
000026d2: SWAP1
000026d3: PUSH2 0x0616
000026d6: SWAP3
000026d7: POP
000026d8: PUSH2 0x222e
000026db: JUMP
000026dc: JUMPDEST
000026dd: SWAP1
000026de: DUP2
000026df: PUSH1 0x60
000026e1: SWAP2
000026e2: SUB
000026e3: SLT
000026e4: PUSH2 0x02e7
000026e7: JUMPI
000026e8: DUP1
000026e9: MLOAD
000026ea: SWAP2
000026eb: PUSH2 0x0616
000026ee: PUSH1 0x40
000026f0: PUSH1 0x20
000026f2: DUP5
000026f3: ADD
000026f4: MLOAD
000026f5: SWAP4
000026f6: ADD
000026f7: PUSH2 0x205a
000026fa: JUMP
000026fb: JUMPDEST
000026fc: DUP2
000026fd: DUP4
000026fe: MSTORE
000026ff: SWAP1
00002700: SWAP2
00002701: PUSH1 0x01
00002703: PUSH1 0x01
00002705: PUSH1 0xfb
00002707: SHL
00002708: SUB
00002709: DUP4
0000270a: GT
0000270b: PUSH2 0x02e7
0000270e: JUMPI
0000270f: PUSH1 0x20
00002711: SWAP3
00002712: PUSH1 0x05
00002714: SHL
00002715: DUP1
00002716: SWAP3
00002717: DUP5
00002718: DUP4
00002719: ADD
0000271a: CALLDATACOPY
0000271b: ADD
0000271c: ADD
0000271d: SWAP1
0000271e: JUMP
0000271f: JUMPDEST
00002720: SWAP1
00002721: PUSH1 0x20
00002723: DUP3
00002724: MSTORE
00002725: DUP1
00002726: CALLDATALOAD
00002727: PUSH1 0x20
00002729: DUP4
0000272a: ADD
0000272b: MSTORE
0000272c: PUSH1 0x20
0000272e: DUP2
0000272f: ADD
00002730: CALLDATALOAD
00002731: DUP1
00002732: PUSH1 0x13
00002734: SIGNEXTEND
00002735: DUP1
00002736: SWAP2
00002737: SUB
00002738: PUSH2 0x02e7
0000273b: JUMPI
0000273c: PUSH1 0x40
0000273e: DUP4
0000273f: ADD
00002740: MSTORE
00002741: PUSH1 0x40
00002743: DUP2
00002744: ADD
00002745: CALLDATALOAD
00002746: PUSH2 0x274e
00002749: DUP2
0000274a: PUSH2 0x02d6
0000274d: JUMP
0000274e: JUMPDEST
0000274f: PUSH1 0x01
00002751: PUSH1 0x01
00002753: PUSH1 0xa0
00002755: SHL
00002756: SUB
00002757: AND
00002758: PUSH1 0x60
0000275a: DUP4
0000275b: DUP2
0000275c: ADD
0000275d: SWAP2
0000275e: SWAP1
0000275f: SWAP2
00002760: MSTORE
00002761: DUP2
00002762: ADD
00002763: CALLDATALOAD
00002764: CALLDATASIZE
00002765: DUP3
00002766: SWAP1
00002767: SUB
00002768: PUSH1 0x1e
0000276a: NOT
0000276b: ADD
0000276c: DUP2
0000276d: SLT
0000276e: ISZERO
0000276f: PUSH2 0x02e7
00002772: JUMPI
00002773: ADD
00002774: PUSH1 0x20
00002776: DUP2
00002777: CALLDATALOAD
00002778: SWAP2
00002779: ADD
0000277a: SWAP1
0000277b: PUSH1 0x01
0000277d: PUSH1 0x01
0000277f: PUSH1 0x40
00002781: SHL
00002782: SUB
00002783: DUP2
00002784: GT
00002785: PUSH2 0x02e7
00002788: JUMPI
00002789: DUP1
0000278a: PUSH1 0x05
0000278c: SHL
0000278d: CALLDATASIZE
0000278e: SUB
0000278f: DUP3
00002790: SGT
00002791: PUSH2 0x02e7
00002794: JUMPI
00002795: PUSH1 0xa0
00002797: DUP4
00002798: PUSH1 0x80
0000279a: DUP1
0000279b: PUSH2 0x0616
0000279e: SWAP7
0000279f: ADD
000027a0: MSTORE
000027a1: ADD
000027a2: SWAP2
000027a3: PUSH2 0x26fb
000027a6: JUMP
000027a7: JUMPDEST
000027a8: SWAP2
000027a9: SWAP1
000027aa: SWAP2
000027ab: PUSH0
000027ac: DUP4
000027ad: DUP3
000027ae: ADD
000027af: SWAP4
000027b0: DUP5
000027b1: SLT
000027b2: SWAP2
000027b3: SLT
000027b4: SWAP1
000027b5: DUP1
000027b6: ISZERO
000027b7: DUP3
000027b8: AND
000027b9: SWAP2
000027ba: ISZERO
000027bb: AND
000027bc: OR
000027bd: PUSH2 0x139d
000027c0: JUMPI
000027c1: JUMP
000027c2: JUMPDEST
000027c3: PUSH1 0x40
000027c5: MLOAD
000027c6: PUSH4 0x25f56f11
000027cb: PUSH1 0xe0
000027cd: SHL
000027ce: DUP2
000027cf: MSTORE
000027d0: PUSH1 0x01
000027d2: PUSH1 0x01
000027d4: PUSH1 0xa0
000027d6: SHL
000027d7: SUB
000027d8: SWAP3
000027d9: SWAP2
000027da: PUSH1 0x60
000027dc: SWAP1
000027dd: DUP3
000027de: SWAP1
000027df: DUP2
000027e0: SWAP1
000027e1: PUSH2 0x27ed
000027e4: SWAP1
000027e5: PUSH1 0x04
000027e7: DUP4
000027e8: ADD
000027e9: PUSH2 0x271f
000027ec: JUMP
000027ed: JUMPDEST
000027ee: SUB
000027ef: DUP2
000027f0: PUSH0
000027f1: DUP8
000027f2: PUSH32 0x0000000000000000000000006b5815467da09daa7dc83db21c9239d98bb487b5
00002813: AND
00002814: GAS
00002815: CALL
00002816: SWAP3
00002817: DUP4
00002818: ISZERO
00002819: PUSH2 0x0543
0000281c: JUMPI
0000281d: PUSH0
0000281e: SWAP2
0000281f: PUSH0
00002820: SWAP1
00002821: PUSH0
00002822: SWAP6
00002823: PUSH2 0x2913
00002826: JUMPI
00002827: JUMPDEST
00002828: POP
00002829: DUP5
0000282a: ISZERO
0000282b: PUSH2 0x28c0
0000282e: JUMPI
0000282f: DUP2
00002830: PUSH2 0x2837
00002833: PUSH2 0x1ebe
00002836: JUMP
00002837: JUMPDEST
00002838: AND
00002839: SWAP2
0000283a: PUSH32 0x00000000000000000000000048319f97e5da1233c21c48b80097c0fb7a20ff86
0000285b: AND
0000285c: DUP3
0000285d: EQ
0000285e: PUSH2 0x28b9
00002861: JUMPI
00002862: POP
00002863: SWAP1
00002864: PUSH1 0x20
00002866: PUSH0
00002867: SWAP3
00002868: PUSH1 0x04
0000286a: PUSH1 0x40
0000286c: MLOAD
0000286d: DUP1
0000286e: SWAP6
0000286f: DUP2
00002870: SWAP4
00002871: PUSH4 0x4641257d
00002876: PUSH1 0xe0
00002878: SHL
00002879: DUP4
0000287a: MSTORE
0000287b: GAS
0000287c: CALL
0000287d: SWAP1
0000287e: DUP2
0000287f: ISZERO
00002880: PUSH2 0x0543
00002883: JUMPI
00002884: PUSH2 0x2894
00002887: SWAP3
00002888: PUSH0
00002889: SWAP3
0000288a: PUSH2 0x2898
0000288d: JUMPI
0000288e: JUMPDEST
0000288f: POP
00002890: PUSH2 0x27a7
00002893: JUMP
00002894: JUMPDEST
00002895: SWAP2
00002896: SWAP1
00002897: JUMP
00002898: JUMPDEST
00002899: PUSH2 0x28b2
0000289c: SWAP2
0000289d: SWAP3
0000289e: POP
0000289f: PUSH1 0x20
000028a1: RETURNDATASIZE
000028a2: PUSH1 0x20
000028a4: GT
000028a5: PUSH2 0x053c
000028a8: JUMPI
000028a9: PUSH2 0x052e
000028ac: DUP2
000028ad: DUP4
000028ae: PUSH2 0x0f0f
000028b1: JUMP
000028b2: JUMPDEST
000028b3: SWAP1
000028b4: PUSH0
000028b5: PUSH2 0x288e
000028b8: JUMP
000028b9: JUMPDEST
000028ba: SWAP1
000028bb: DUP2
000028bc: PUSH2 0x28c6
000028bf: JUMPI
000028c0: JUMPDEST
000028c1: POP
000028c2: POP
000028c3: SWAP2
000028c4: SWAP1
000028c5: JUMP
000028c6: JUMPDEST
000028c7: DUP1
000028c8: EXTCODESIZE
000028c9: ISZERO
000028ca: PUSH2 0x02e7
000028cd: JUMPI
000028ce: PUSH1 0x40
000028d0: MLOAD
000028d1: PUSH4 0x6ee31931
000028d6: PUSH1 0xe1
000028d8: SHL
000028d9: DUP2
000028da: MSTORE
000028db: PUSH1 0x04
000028dd: DUP2
000028de: ADD
000028df: SWAP3
000028e0: SWAP1
000028e1: SWAP3
000028e2: MSTORE
000028e3: PUSH0
000028e4: SWAP1
000028e5: DUP3
000028e6: SWAP1
000028e7: PUSH1 0x24
000028e9: SWAP1
000028ea: DUP3
000028eb: SWAP1
000028ec: DUP5
000028ed: SWAP1
000028ee: GAS
000028ef: CALL
000028f0: DUP1
000028f1: ISZERO
000028f2: PUSH2 0x0543
000028f5: JUMPI
000028f6: PUSH2 0x2900
000028f9: JUMPI
000028fa: JUMPDEST
000028fb: DUP1
000028fc: PUSH2 0x28c0
000028ff: JUMP
00002900: JUMPDEST
00002901: DUP1
00002902: PUSH2 0x0ae1
00002905: PUSH2 0x290d
00002908: SWAP3
00002909: PUSH2 0x0ec6
0000290c: JUMP
0000290d: JUMPDEST
0000290e: PUSH0
0000290f: PUSH2 0x28fa
00002912: JUMP
00002913: JUMPDEST
00002914: SWAP2
00002915: SWAP5
00002916: POP
00002917: POP
00002918: PUSH2 0x2939
0000291b: SWAP2
0000291c: POP
0000291d: PUSH1 0x60
0000291f: RETURNDATASIZE
00002920: PUSH1 0x60
00002922: GT
00002923: PUSH2 0x2941
00002926: JUMPI
00002927: JUMPDEST
00002928: PUSH2 0x2931
0000292b: DUP2
0000292c: DUP4
0000292d: PUSH2 0x0f0f
00002930: JUMP
00002931: JUMPDEST
00002932: DUP2
00002933: ADD
00002934: SWAP1
00002935: PUSH2 0x26dc
00002938: JUMP
00002939: JUMPDEST
0000293a: SWAP4
0000293b: SWAP1
0000293c: PUSH0
0000293d: PUSH2 0x2827
00002940: JUMP
00002941: JUMPDEST
00002942: POP
00002943: RETURNDATASIZE
00002944: PUSH2 0x2927
00002947: JUMP
00002948: JUMPDEST
00002949: PUSH1 0x01
0000294b: PUSH1 0xff
0000294d: SHL
0000294e: DUP2
0000294f: EQ
00002950: PUSH2 0x139d
00002953: JUMPI
00002954: PUSH0
00002955: SUB
00002956: SWAP1
00002957: JUMP
00002958: JUMPDEST
00002959: DUP1
0000295a: ISZERO
0000295b: PUSH2 0x1e85
0000295e: JUMPI
0000295f: PUSH2 0x296d
00002962: PUSH2 0x194d
00002965: PUSH1 0x98
00002967: SLOAD
00002968: PUSH1 0x80
0000296a: SHR
0000296b: SWAP1
0000296c: JUMP
0000296d: JUMPDEST
0000296e: PUSH0
0000296f: DUP3
00002970: SLT
00002971: PUSH2 0x2a44
00002974: JUMPI
00002975: DUP2
00002976: PUSH2 0x297e
00002979: SWAP2
0000297a: PUSH2 0x2281
0000297d: JUMP
0000297e: JUMPDEST
0000297f: SWAP1
00002980: PUSH2 0x298b
00002983: PUSH2 0x0984
00002986: DUP4
00002987: PUSH2 0x3c2c
0000298a: JUMP
0000298b: JUMPDEST
0000298c: PUSH2 0x29a0
0000298f: PUSH1 0x65
00002991: SLOAD
00002992: SWAP2
00002993: PUSH2 0xffff
00002996: DUP4
00002997: PUSH1 0xa0
00002999: SHR
0000299a: AND
0000299b: SWAP1
0000299c: PUSH2 0x256e
0000299f: JUMP
000029a0: JUMPDEST
000029a1: DUP1
000029a2: ISZERO
000029a3: PUSH2 0x2a3f
000029a6: JUMPI
000029a7: DUP1
000029a8: PUSH32 0x555ee6b2ef9506d870f386c067e47d3689435330b012ad263d8cc35318686547
000029c9: SWAP4
000029ca: PUSH2 0x29de
000029cd: PUSH2 0x194d
000029d0: PUSH1 0x98
000029d2: SLOAD
000029d3: PUSH1 0x01
000029d5: PUSH1 0x01
000029d7: PUSH1 0x80
000029d9: SHL
000029da: SUB
000029db: AND
000029dc: SWAP1
000029dd: JUMP
000029de: JUMPDEST
000029df: DUP1
000029e0: PUSH2 0x2a29
000029e3: JUMPI
000029e4: POP
000029e5: POP
000029e6: PUSH2 0x2a24
000029e9: SWAP1
000029ea: SWAP3
000029eb: JUMPDEST
000029ec: PUSH1 0x01
000029ee: PUSH1 0x01
000029f0: PUSH1 0xa0
000029f2: SHL
000029f3: SUB
000029f4: AND
000029f5: SWAP2
000029f6: PUSH2 0x29ff
000029f9: DUP5
000029fa: DUP5
000029fb: PUSH2 0x3f5e
000029fe: JUMP
000029ff: JUMPDEST
00002a00: PUSH1 0x40
00002a02: MLOAD
00002a03: SWAP4
00002a04: DUP5
00002a05: SWAP4
00002a06: DUP5
00002a07: PUSH1 0x40
00002a09: SWAP2
00002a0a: SWAP5
00002a0b: SWAP4
00002a0c: SWAP3
00002a0d: PUSH1 0x60
00002a0f: DUP3
00002a10: ADD
00002a11: SWAP6
00002a12: PUSH1 0x01
00002a14: DUP1
00002a15: PUSH1 0xa0
00002a17: SHL
00002a18: SUB
00002a19: AND
00002a1a: DUP3
00002a1b: MSTORE
00002a1c: PUSH1 0x20
00002a1e: DUP3
00002a1f: ADD
00002a20: MSTORE
00002a21: ADD
00002a22: MSTORE
00002a23: JUMP
00002a24: JUMPDEST
00002a25: SUB
00002a26: SWAP1
00002a27: LOG1
00002a28: JUMP
00002a29: JUMPDEST
00002a2a: PUSH2 0x2a24
00002a2d: SWAP3
00002a2e: PUSH2 0x2a39
00002a31: SWAP3
00002a32: SUB
00002a33: SWAP1
00002a34: DUP5
00002a35: PUSH2 0x265c
00002a38: JUMP
00002a39: JUMPDEST
00002a3a: SWAP3
00002a3b: PUSH2 0x29eb
00002a3e: JUMP
00002a3f: JUMPDEST
00002a40: POP
00002a41: POP
00002a42: POP
00002a43: JUMP
00002a44: JUMPDEST
00002a45: SWAP1
00002a46: PUSH2 0x2a4e
00002a49: SWAP1
00002a4a: PUSH2 0x2948
00002a4d: JUMP
00002a4e: JUMPDEST
00002a4f: PUSH2 0x2a63
00002a52: PUSH2 0x194d
00002a55: PUSH1 0x9e
00002a57: SLOAD
00002a58: PUSH1 0x01
00002a5a: PUSH1 0x01
00002a5c: PUSH1 0x80
00002a5e: SHL
00002a5f: SUB
00002a60: AND
00002a61: SWAP1
00002a62: JUMP
00002a63: JUMPDEST
00002a64: DUP1
00002a65: PUSH2 0x2a83
00002a68: JUMPI
00002a69: JUMPDEST
00002a6a: POP
00002a6b: DUP1
00002a6c: PUSH2 0x2a73
00002a6f: JUMPI
00002a70: POP
00002a71: POP
00002a72: JUMP
00002a73: JUMPDEST
00002a74: PUSH2 0x2536
00002a77: PUSH2 0x0984
00002a7a: SWAP2
00002a7b: PUSH2 0x2004
00002a7e: SWAP4
00002a7f: PUSH2 0x207b
00002a82: JUMP
00002a83: JUMPDEST
00002a84: SWAP1
00002a85: PUSH2 0x2aea
00002a88: PUSH32 0x3623a54e8078be0d90ecfbef82da6a31ff3e6be8aa1718e7a7f3d0d33ff1d32a
00002aa9: SWAP2
00002aaa: PUSH2 0x1330
00002aad: PUSH2 0x2ace
00002ab0: PUSH2 0x2ac3
00002ab3: PUSH2 0x2abc
00002ab6: DUP9
00002ab7: DUP9
00002ab8: PUSH2 0x2281
00002abb: JUMP
00002abc: JUMPDEST
00002abd: DUP8
00002abe: DUP6
00002abf: PUSH2 0x265c
00002ac2: JUMP
00002ac3: JUMPDEST
00002ac4: DUP1
00002ac5: DUP1
00002ac6: SWAP5
00002ac7: SUB
00002ac8: SWAP7
00002ac9: SUB
00002aca: PUSH2 0x3c2c
00002acd: JUMP
00002ace: JUMPDEST
00002acf: PUSH1 0x01
00002ad1: PUSH1 0x01
00002ad3: PUSH1 0x80
00002ad5: SHL
00002ad6: SUB
00002ad7: AND
00002ad8: PUSH1 0x01
00002ada: PUSH1 0x01
00002adc: PUSH1 0x80
00002ade: SHL
00002adf: SUB
00002ae0: NOT
00002ae1: PUSH1 0x9e
00002ae3: SLOAD
00002ae4: AND
00002ae5: OR
00002ae6: PUSH1 0x9e
00002ae8: SSTORE
00002ae9: JUMP
00002aea: JUMPDEST
00002aeb: SUB
00002aec: SWAP1
00002aed: LOG1
00002aee: PUSH0
00002aef: PUSH2 0x2a69
00002af2: JUMP
00002af3: JUMPDEST
00002af4: SWAP2
00002af5: SWAP1
00002af6: SWAP2
00002af7: PUSH1 0x01
00002af9: PUSH1 0x01
00002afb: PUSH1 0x80
00002afd: SHL
00002afe: SUB
00002aff: DUP1
00002b00: DUP1
00002b01: SWAP5
00002b02: AND
00002b03: SWAP2
00002b04: AND
00002b05: ADD
00002b06: SWAP2
00002b07: DUP3
00002b08: GT
00002b09: PUSH2 0x139d
00002b0c: JUMPI
00002b0d: JUMP
00002b0e: JUMPDEST
00002b0f: PUSH2 0x2b27
00002b12: SELFBALANCE
00002b13: PUSH2 0x2b21
00002b16: PUSH2 0x194d
00002b19: PUSH1 0x99
00002b1b: SLOAD
00002b1c: PUSH1 0x80
00002b1e: SHR
00002b1f: SWAP1
00002b20: JUMP
00002b21: JUMPDEST
00002b22: SWAP1
00002b23: PUSH2 0x207b
00002b26: JUMP
00002b27: JUMPDEST
00002b28: SWAP1
00002b29: DUP2
00002b2a: ISZERO
00002b2b: PUSH2 0x2d03
00002b2e: JUMPI
00002b2f: PUSH1 0x9e
00002b31: SLOAD
00002b32: PUSH1 0x01
00002b34: PUSH1 0x01
00002b36: PUSH1 0x80
00002b38: SHL
00002b39: SUB
00002b3a: DUP2
00002b3b: AND
00002b3c: SWAP1
00002b3d: DUP2
00002b3e: PUSH2 0x2c78
00002b41: JUMPI
00002b42: JUMPDEST
00002b43: POP
00002b44: POP
00002b45: PUSH2 0x2b59
00002b48: PUSH2 0x194d
00002b4b: PUSH1 0x99
00002b4d: SLOAD
00002b4e: PUSH1 0x01
00002b50: PUSH1 0x01
00002b52: PUSH1 0x80
00002b54: SHL
00002b55: SUB
00002b56: AND
00002b57: SWAP1
00002b58: JUMP
00002b59: JUMPDEST
00002b5a: SWAP2
00002b5b: DUP3
00002b5c: ISZERO
00002b5d: DUP1
00002b5e: ISZERO
00002b5f: PUSH2 0x2c70
00002b62: JUMPI
00002b63: JUMPDEST
00002b64: PUSH2 0x2c6a
00002b67: JUMPI
00002b68: PUSH2 0x2b7a
00002b6b: SWAP1
00002b6c: PUSH2 0x2b74
00002b6f: DUP5
00002b70: PUSH2 0x1e3e
00002b73: JUMP
00002b74: JUMPDEST
00002b75: SWAP1
00002b76: PUSH2 0x40d6
00002b79: JUMP
00002b7a: JUMPDEST
00002b7b: DUP1
00002b7c: ISZERO
00002b7d: PUSH2 0x2c6a
00002b80: JUMPI
00002b81: PUSH2 0x2b89
00002b84: DUP2
00002b85: PUSH2 0x3cf9
00002b88: JUMP
00002b89: JUMPDEST
00002b8a: SWAP3
00002b8b: DUP4
00002b8c: ISZERO
00002b8d: PUSH2 0x2c63
00002b90: JUMPI
00002b91: PUSH2 0x2c58
00002b94: PUSH2 0x2004
00002b97: SWAP3
00002b98: PUSH2 0x2bc6
00002b9b: PUSH2 0x2baa
00002b9e: PUSH2 0x2536
00002ba1: DUP9
00002ba2: PUSH2 0x0984
00002ba5: SWAP7
00002ba6: PUSH2 0x207b
00002ba9: JUMP
00002baa: JUMPDEST
00002bab: PUSH1 0x01
00002bad: PUSH1 0x01
00002baf: PUSH1 0x80
00002bb1: SHL
00002bb2: SUB
00002bb3: AND
00002bb4: PUSH1 0x01
00002bb6: PUSH1 0x01
00002bb8: PUSH1 0x80
00002bba: SHL
00002bbb: SUB
00002bbc: NOT
00002bbd: PUSH1 0x99
00002bbf: SLOAD
00002bc0: AND
00002bc1: OR
00002bc2: PUSH1 0x99
00002bc4: SSTORE
00002bc5: JUMP
00002bc6: JUMPDEST
00002bc7: PUSH2 0x2be0
00002bca: PUSH2 0x1780
00002bcd: PUSH2 0x2bd5
00002bd0: DUP4
00002bd1: PUSH2 0x3c2c
00002bd4: JUMP
00002bd5: JUMPDEST
00002bd6: PUSH1 0x99
00002bd8: SLOAD
00002bd9: PUSH1 0x80
00002bdb: SHR
00002bdc: PUSH2 0x2af3
00002bdf: JUMP
00002be0: JUMPDEST
00002be1: PUSH2 0x2bea
00002be4: DUP2
00002be5: DUP8
00002be6: PUSH2 0x4008
00002be9: JUMP
00002bea: JUMPDEST
00002beb: PUSH1 0x40
00002bed: DUP1
00002bee: MLOAD
00002bef: DUP8
00002bf0: DUP2
00002bf1: MSTORE
00002bf2: PUSH1 0x20
00002bf4: DUP2
00002bf5: ADD
00002bf6: DUP4
00002bf7: SWAP1
00002bf8: MSTORE
00002bf9: PUSH32 0x624ea167e477f9d39f7f4094b9dfe2e6346eb4a7aada54338db51abd554c4b9f
00002c1a: SWAP2
00002c1b: SWAP1
00002c1c: LOG1
00002c1d: PUSH2 0x2536
00002c20: PUSH2 0x2c3c
00002c23: PUSH2 0x2c2b
00002c26: DUP9
00002c27: PUSH2 0x3c2c
00002c2a: JUMP
00002c2b: JUMPDEST
00002c2c: PUSH1 0x98
00002c2e: SLOAD
00002c2f: PUSH1 0x01
00002c31: PUSH1 0x01
00002c33: PUSH1 0x80
00002c35: SHL
00002c36: SUB
00002c37: AND
00002c38: PUSH2 0x1df3
00002c3b: JUMP
00002c3c: JUMPDEST
00002c3d: PUSH1 0x01
00002c3f: PUSH1 0x01
00002c41: PUSH1 0x80
00002c43: SHL
00002c44: SUB
00002c45: AND
00002c46: PUSH1 0x01
00002c48: PUSH1 0x01
00002c4a: PUSH1 0x80
00002c4c: SHL
00002c4d: SUB
00002c4e: NOT
00002c4f: PUSH1 0x98
00002c51: SLOAD
00002c52: AND
00002c53: OR
00002c54: PUSH1 0x98
00002c56: SSTORE
00002c57: JUMP
00002c58: JUMPDEST
00002c59: PUSH1 0x98
00002c5b: SLOAD
00002c5c: PUSH1 0x80
00002c5e: SHR
00002c5f: PUSH2 0x1df3
00002c62: JUMP
00002c63: JUMPDEST
00002c64: POP
00002c65: PUSH0
00002c66: SWAP3
00002c67: POP
00002c68: POP
00002c69: JUMP
00002c6a: JUMPDEST
00002c6b: POP
00002c6c: PUSH0
00002c6d: SWAP2
00002c6e: POP
00002c6f: JUMP
00002c70: JUMPDEST
00002c71: POP
00002c72: DUP1
00002c73: ISZERO
00002c74: PUSH2 0x2b63
00002c77: JUMP
00002c78: JUMPDEST
00002c79: DUP2
00002c7a: DUP5
00002c7b: SWAP3
00002c7c: SWAP5
00002c7d: LT
00002c7e: PUSH2 0x2c63
00002c81: JUMPI
00002c82: PUSH2 0x2bd5
00002c85: DUP5
00002c86: PUSH2 0x2cd3
00002c89: SWAP4
00002c8a: PUSH32 0x624ea167e477f9d39f7f4094b9dfe2e6346eb4a7aada54338db51abd554c4b9f
00002cab: DUP3
00002cac: PUSH2 0x1780
00002caf: SWAP6
00002cb0: PUSH1 0x80
00002cb2: SHR
00002cb3: PUSH2 0x2cbc
00002cb6: DUP3
00002cb7: DUP3
00002cb8: PUSH2 0x4008
00002cbb: JUMP
00002cbc: JUMPDEST
00002cbd: PUSH1 0x40
00002cbf: DUP1
00002cc0: MLOAD
00002cc1: SWAP2
00002cc2: DUP3
00002cc3: MSTORE
00002cc4: PUSH1 0x20
00002cc6: DUP3
00002cc7: ADD
00002cc8: SWAP3
00002cc9: SWAP1
00002cca: SWAP3
00002ccb: MSTORE
00002ccc: LOG1
00002ccd: SUB
00002cce: SWAP5
00002ccf: PUSH2 0x3c2c
00002cd2: JUMP
00002cd3: JUMPDEST
00002cd4: PUSH2 0x2ce7
00002cd7: PUSH1 0x01
00002cd9: PUSH1 0x01
00002cdb: PUSH1 0x80
00002cdd: SHL
00002cde: SUB
00002cdf: PUSH1 0x9e
00002ce1: SLOAD
00002ce2: AND
00002ce3: PUSH1 0x9e
00002ce5: SSTORE
00002ce6: JUMP
00002ce7: JUMPDEST
00002ce8: PUSH2 0x2cfc
00002ceb: PUSH1 0x01
00002ced: PUSH1 0x01
00002cef: PUSH1 0x80
00002cf1: SHL
00002cf2: SUB
00002cf3: NOT
00002cf4: PUSH1 0x9e
00002cf6: SLOAD
00002cf7: AND
00002cf8: PUSH1 0x9e
00002cfa: SSTORE
00002cfb: JUMP
00002cfc: JUMPDEST
00002cfd: PUSH0
00002cfe: DUP1
00002cff: PUSH2 0x2b42
00002d02: JUMP
00002d03: JUMPDEST
00002d04: PUSH0
00002d05: SWAP2
00002d06: POP
00002d07: JUMP
00002d08: JUMPDEST
00002d09: SWAP4
00002d0a: SWAP3
00002d0b: SWAP2
00002d0c: SWAP1
00002d0d: SWAP2
00002d0e: PUSH2 0x2d15
00002d11: PUSH2 0x40e8
00002d14: JUMP
00002d15: JUMPDEST
00002d16: PUSH2 0x2d1d
00002d19: PUSH2 0x36fb
00002d1c: JUMP
00002d1d: JUMPDEST
00002d1e: PUSH1 0x01
00002d20: PUSH1 0x01
00002d22: PUSH1 0xa0
00002d24: SHL
00002d25: SUB
00002d26: DUP6
00002d27: AND
00002d28: PUSH0
00002d29: SWAP1
00002d2a: DUP2
00002d2b: MSTORE
00002d2c: PUSH2 0x0137
00002d2f: PUSH1 0x20
00002d31: MSTORE
00002d32: PUSH1 0x40
00002d34: SWAP1
00002d35: KECCAK256
00002d36: PUSH2 0x2d3e
00002d39: SWAP1
00002d3a: PUSH2 0x1dba
00002d3d: JUMP
00002d3e: JUMPDEST
00002d3f: SWAP5
00002d40: PUSH1 0x01
00002d42: PUSH1 0x01
00002d44: PUSH1 0x80
00002d46: SHL
00002d47: SUB
00002d48: PUSH2 0x2d58
00002d4b: DUP8
00002d4c: MLOAD
00002d4d: PUSH1 0x01
00002d4f: PUSH1 0x01
00002d51: PUSH1 0x80
00002d53: SHL
00002d54: SUB
00002d55: AND
00002d56: SWAP1
00002d57: JUMP
00002d58: JUMPDEST
00002d59: AND
00002d5a: ISZERO
00002d5b: PUSH2 0x2f24
00002d5e: JUMPI
00002d5f: PUSH2 0x2d67
00002d62: DUP7
00002d63: PUSH2 0x24b9
00002d66: JUMP
00002d67: JUMPDEST
00002d68: PUSH1 0x01
00002d6a: PUSH1 0x01
00002d6c: PUSH1 0xa0
00002d6e: SHL
00002d6f: SUB
00002d70: DUP2
00002d71: AND
00002d72: PUSH0
00002d73: SWAP1
00002d74: DUP2
00002d75: MSTORE
00002d76: PUSH1 0x9c
00002d78: PUSH1 0x20
00002d7a: MSTORE
00002d7b: PUSH1 0x40
00002d7d: SWAP1
00002d7e: KECCAK256
00002d7f: PUSH2 0x2d90
00002d82: SWAP1
00002d83: PUSH2 0x2d8b
00002d86: SWAP1
00002d87: PUSH2 0x080f
00002d8a: JUMP
00002d8b: JUMPDEST
00002d8c: PUSH2 0x4109
00002d8f: JUMP
00002d90: JUMPDEST
00002d91: SWAP6
00002d92: PUSH0
00002d93: NOT
00002d94: DUP5
00002d95: EQ
00002d96: PUSH2 0x2ef4
00002d99: JUMPI
00002d9a: JUMPDEST
00002d9b: PUSH1 0x40
00002d9d: MLOAD
00002d9e: PUSH4 0x29460cc5
00002da3: PUSH1 0xe1
00002da5: SHL
00002da6: DUP2
00002da7: MSTORE
00002da8: PUSH1 0x01
00002daa: PUSH1 0x01
00002dac: PUSH1 0xa0
00002dae: SHL
00002daf: SUB
00002db0: DUP7
00002db1: DUP2
00002db2: AND
00002db3: PUSH1 0x04
00002db5: DUP4
00002db6: ADD
00002db7: MSTORE
00002db8: PUSH1 0x24
00002dba: DUP3
00002dbb: ADD
00002dbc: DUP7
00002dbd: SWAP1
00002dbe: MSTORE
00002dbf: SWAP1
00002dc0: SWAP5
00002dc1: SWAP1
00002dc2: SWAP4
00002dc3: SWAP1
00002dc4: PUSH1 0x20
00002dc6: DUP7
00002dc7: PUSH1 0x44
00002dc9: DUP2
00002dca: PUSH0
00002dcb: PUSH32 0x0000000000000000000000002a261e60fb14586b474c208b1b7ac6d0f5000306
00002dec: DUP11
00002ded: AND
00002dee: GAS
00002def: CALL
00002df0: SWAP6
00002df1: DUP7
00002df2: ISZERO
00002df3: PUSH2 0x0543
00002df6: JUMPI
00002df7: PUSH0
00002df8: SWAP7
00002df9: PUSH2 0x2ed3
00002dfc: JUMPI
00002dfd: JUMPDEST
00002dfe: POP
00002dff: DUP6
00002e00: SWAP9
00002e01: PUSH2 0x2e2c
00002e04: PUSH2 0x2e1f
00002e07: PUSH2 0x2e0f
00002e0a: DUP5
00002e0b: PUSH2 0x3c2c
00002e0e: JUMP
00002e0f: JUMPDEST
00002e10: DUP7
00002e11: MLOAD
00002e12: PUSH1 0x01
00002e14: PUSH1 0x01
00002e16: PUSH1 0x80
00002e18: SHL
00002e19: SUB
00002e1a: AND
00002e1b: PUSH2 0x2af3
00002e1e: JUMP
00002e1f: JUMPDEST
00002e20: PUSH1 0x01
00002e22: PUSH1 0x01
00002e24: PUSH1 0x80
00002e26: SHL
00002e27: SUB
00002e28: AND
00002e29: DUP6
00002e2a: MSTORE
00002e2b: JUMP
00002e2c: JUMPDEST
00002e2d: PUSH2 0x2e40
00002e30: PUSH2 0x194d
00002e33: DUP6
00002e34: MLOAD
00002e35: PUSH1 0x01
00002e37: PUSH1 0x01
00002e39: PUSH1 0x80
00002e3b: SHL
00002e3c: SUB
00002e3d: AND
00002e3e: SWAP1
00002e3f: JUMP
00002e40: JUMPDEST
00002e41: GT
00002e42: PUSH2 0x2ec1
00002e45: JUMPI
00002e46: PUSH32 0xa16d97739893e1436c9753925fb5cef174c4f368699dc86cc8fdb0e6e60f8e58
00002e67: SWAP6
00002e68: PUSH2 0x2e89
00002e6b: PUSH2 0x2ebc
00002e6e: SWAP5
00002e6f: PUSH2 0x04ab
00002e72: DUP8
00002e73: PUSH1 0x01
00002e75: DUP1
00002e76: PUSH1 0xa0
00002e78: SHL
00002e79: SUB
00002e7a: AND
00002e7b: PUSH0
00002e7c: MSTORE
00002e7d: PUSH2 0x0137
00002e80: PUSH1 0x20
00002e82: MSTORE
00002e83: PUSH1 0x40
00002e85: PUSH0
00002e86: KECCAK256
00002e87: SWAP1
00002e88: JUMP
00002e89: JUMPDEST
00002e8a: PUSH1 0x40
00002e8c: DUP1
00002e8d: MLOAD
00002e8e: PUSH1 0x01
00002e90: PUSH1 0x01
00002e92: PUSH1 0xa0
00002e94: SHL
00002e95: SUB
00002e96: SWAP10
00002e97: DUP11
00002e98: AND
00002e99: DUP2
00002e9a: MSTORE
00002e9b: PUSH1 0x20
00002e9d: DUP2
00002e9e: ADD
00002e9f: SWAP3
00002ea0: SWAP1
00002ea1: SWAP3
00002ea2: MSTORE
00002ea3: DUP2
00002ea4: ADD
00002ea5: SWAP2
00002ea6: SWAP1
00002ea7: SWAP2
00002ea8: MSTORE
00002ea9: SWAP6
00002eaa: AND
00002eab: PUSH1 0x60
00002ead: DUP7
00002eae: ADD
00002eaf: MSTORE
00002eb0: SWAP2
00002eb1: AND
00002eb2: SWAP3
00002eb3: SWAP1
00002eb4: DUP2
00002eb5: SWAP1
00002eb6: PUSH1 0x80
00002eb8: DUP3
00002eb9: ADD
00002eba: SWAP1
00002ebb: JUMP
00002ebc: JUMPDEST
00002ebd: SUB
00002ebe: SWAP1
00002ebf: LOG2
00002ec0: JUMP
00002ec1: JUMPDEST
00002ec2: PUSH1 0x40
00002ec4: MLOAD
00002ec5: PUSH4 0x3684c659
00002eca: PUSH1 0xe0
00002ecc: SHL
00002ecd: DUP2
00002ece: MSTORE
00002ecf: PUSH1 0x04
00002ed1: SWAP1
00002ed2: REVERT
00002ed3: JUMPDEST
00002ed4: PUSH2 0x2eed
00002ed7: SWAP2
00002ed8: SWAP7
00002ed9: POP
00002eda: PUSH1 0x20
00002edc: RETURNDATASIZE
00002edd: PUSH1 0x20
00002edf: GT
00002ee0: PUSH2 0x053c
00002ee3: JUMPI
00002ee4: PUSH2 0x052e
00002ee7: DUP2
00002ee8: DUP4
00002ee9: PUSH2 0x0f0f
00002eec: JUMP
00002eed: JUMPDEST
00002eee: SWAP5
00002eef: PUSH0
00002ef0: PUSH2 0x2dfd
00002ef3: JUMP
00002ef4: JUMPDEST
00002ef5: SWAP3
00002ef6: POP
00002ef7: PUSH2 0x2f0a
00002efa: PUSH2 0x194d
00002efd: DUP5
00002efe: MLOAD
00002eff: PUSH1 0x01
00002f01: PUSH1 0x01
00002f03: PUSH1 0x80
00002f05: SHL
00002f06: SUB
00002f07: AND
00002f08: SWAP1
00002f09: JUMP
00002f0a: JUMPDEST
00002f0b: DUP1
00002f0c: DUP8
00002f0d: GT
00002f0e: ISZERO
00002f0f: PUSH2 0x2f1a
00002f12: JUMPI
00002f13: DUP7
00002f14: SUB
00002f15: SWAP3
00002f16: PUSH2 0x2d9a
00002f19: JUMP
00002f1a: JUMPDEST
00002f1b: POP
00002f1c: PUSH0
00002f1d: SWAP6
00002f1e: POP
00002f1f: POP
00002f20: POP
00002f21: POP
00002f22: POP
00002f23: JUMP
00002f24: JUMPDEST
00002f25: PUSH1 0x40
00002f27: MLOAD
00002f28: PUSH4 0x752a536d
00002f2d: PUSH1 0xe0
00002f2f: SHL
00002f30: DUP2
00002f31: MSTORE
00002f32: PUSH1 0x20
00002f34: DUP2
00002f35: PUSH1 0x04
00002f37: DUP2
00002f38: PUSH32 0x0000000000000000000000002a261e60fb14586b474c208b1b7ac6d0f5000306
00002f59: PUSH1 0x01
00002f5b: PUSH1 0x01
00002f5d: PUSH1 0xa0
00002f5f: SHL
00002f60: SUB
00002f61: AND
00002f62: GAS
00002f63: STATICCALL
00002f64: SWAP1
00002f65: DUP2
00002f66: ISZERO
00002f67: PUSH2 0x0543
00002f6a: JUMPI
00002f6b: PUSH2 0x2f8f
00002f6e: SWAP2
00002f6f: PUSH2 0x2f7f
00002f72: SWAP2
00002f73: PUSH0
00002f74: SWAP2
00002f75: PUSH2 0x2f94
00002f78: JUMPI
00002f79: JUMPDEST
00002f7a: POP
00002f7b: PUSH2 0x3c2c
00002f7e: JUMP
00002f7f: JUMPDEST
00002f80: PUSH1 0x01
00002f82: PUSH1 0x01
00002f84: PUSH1 0x80
00002f86: SHL
00002f87: SUB
00002f88: AND
00002f89: PUSH1 0x20
00002f8b: DUP9
00002f8c: ADD
00002f8d: MSTORE
00002f8e: JUMP
00002f8f: JUMPDEST
00002f90: PUSH2 0x2d67
00002f93: JUMP
00002f94: JUMPDEST
00002f95: PUSH2 0x2fad
00002f98: SWAP2
00002f99: POP
00002f9a: PUSH1 0x20
00002f9c: RETURNDATASIZE
00002f9d: PUSH1 0x20
00002f9f: GT
00002fa0: PUSH2 0x053c
00002fa3: JUMPI
00002fa4: PUSH2 0x052e
00002fa7: DUP2
00002fa8: DUP4
00002fa9: PUSH2 0x0f0f
00002fac: JUMP
00002fad: JUMPDEST
00002fae: PUSH0
00002faf: PUSH2 0x2f79
00002fb2: JUMP
00002fb3: JUMPDEST
00002fb4: MLOAD
00002fb5: SWAP1
00002fb6: PUSH1 0x01
00002fb8: PUSH1 0x01
00002fba: PUSH1 0x40
00002fbc: SHL
00002fbd: SUB
00002fbe: DUP3
00002fbf: AND
00002fc0: DUP3
00002fc1: SUB
00002fc2: PUSH2 0x02e7
00002fc5: JUMPI
00002fc6: JUMP
00002fc7: JUMPDEST
00002fc8: SWAP1
00002fc9: DUP2
00002fca: PUSH1 0x60
00002fcc: SWAP2
00002fcd: SUB
00002fce: SLT
00002fcf: PUSH2 0x02e7
00002fd2: JUMPI
00002fd3: PUSH2 0x1f85
00002fd6: PUSH1 0x40
00002fd8: DUP1
00002fd9: MLOAD
00002fda: SWAP3
00002fdb: PUSH2 0x2fe3
00002fde: DUP5
00002fdf: PUSH2 0x0ed9
00002fe2: JUMP
00002fe3: JUMPDEST
00002fe4: DUP1
00002fe5: MLOAD
00002fe6: PUSH2 0x2fee
00002fe9: DUP2
00002fea: PUSH2 0x0393
00002fed: JUMP
00002fee: JUMPDEST
00002fef: DUP5
00002ff0: MSTORE
00002ff1: PUSH2 0x2ffc
00002ff4: PUSH1 0x20
00002ff6: DUP3
00002ff7: ADD
00002ff8: PUSH2 0x2fb3
00002ffb: JUMP
00002ffc: JUMPDEST
00002ffd: PUSH1 0x20
00002fff: DUP6
00003000: ADD
00003001: MSTORE
00003002: ADD
00003003: PUSH2 0x2fb3
00003006: JUMP
00003007: JUMPDEST
00003008: SWAP3
00003009: SWAP1
0000300a: PUSH1 0x01
0000300c: PUSH1 0x01
0000300e: PUSH1 0xa0
00003010: SHL
00003011: SUB
00003012: SWAP1
00003013: DUP2
00003014: DUP2
00003015: AND
00003016: ISZERO
00003017: PUSH2 0x0aed
0000301a: JUMPI
0000301b: PUSH2 0x3022
0000301e: PUSH2 0x36fb
00003021: JUMP
00003022: JUMPDEST
00003023: DUP2
00003024: PUSH32 0x0000000000000000000000002a261e60fb14586b474c208b1b7ac6d0f5000306
00003045: AND
00003046: SWAP1
00003047: DUP2
00003048: EXTCODESIZE
00003049: ISZERO
0000304a: PUSH2 0x02e7
0000304d: JUMPI
0000304e: PUSH1 0x40
00003050: SWAP5
00003051: DUP6
00003052: MLOAD
00003053: SWAP4
00003054: PUSH4 0x1d8557d7
00003059: PUSH1 0xe0
0000305b: SHL
0000305c: DUP6
0000305d: MSTORE
0000305e: PUSH1 0x04
00003060: SWAP5
00003061: PUSH0
00003062: DUP2
00003063: DUP8
00003064: DUP2
00003065: DUP4
00003066: DUP10
00003067: GAS
00003068: CALL
00003069: DUP1
0000306a: ISZERO
0000306b: PUSH2 0x0543
0000306e: JUMPI
0000306f: PUSH2 0x330d
00003072: JUMPI
00003073: JUMPDEST
00003074: POP
00003075: PUSH1 0x01
00003077: PUSH1 0x01
00003079: PUSH1 0xa0
0000307b: SHL
0000307c: SUB
0000307d: DUP9
0000307e: AND
0000307f: PUSH0
00003080: SWAP1
00003081: DUP2
00003082: MSTORE
00003083: PUSH2 0x0137
00003086: PUSH1 0x20
00003088: MSTORE
00003089: PUSH1 0x40
0000308b: SWAP1
0000308c: KECCAK256
0000308d: PUSH2 0x3095
00003090: SWAP1
00003091: PUSH2 0x1dba
00003094: JUMP
00003095: JUMPDEST
00003096: SWAP1
00003097: PUSH1 0x01
00003099: PUSH1 0x01
0000309b: PUSH1 0x80
0000309d: SHL
0000309e: SUB
0000309f: PUSH2 0x30af
000030a2: DUP4
000030a3: MLOAD
000030a4: PUSH1 0x01
000030a6: PUSH1 0x01
000030a8: PUSH1 0x80
000030aa: SHL
000030ab: SUB
000030ac: AND
000030ad: SWAP1
000030ae: JUMP
000030af: JUMPDEST
000030b0: AND
000030b1: ISZERO
000030b2: PUSH2 0x32fd
000030b5: JUMPI
000030b6: PUSH2 0x30be
000030b9: DUP3
000030ba: PUSH2 0x24b9
000030bd: JUMP
000030be: JUMPDEST
000030bf: DUP8
000030c0: MLOAD
000030c1: PUSH4 0xe48a5f7b
000030c6: PUSH1 0xe0
000030c8: SHL
000030c9: DUP2
000030ca: MSTORE
000030cb: ADDRESS
000030cc: DUP8
000030cd: DUP3
000030ce: ADD
000030cf: SWAP1
000030d0: DUP2
000030d1: MSTORE
000030d2: SWAP1
000030d3: SWAP2
000030d4: PUSH1 0x60
000030d6: SWAP2
000030d7: DUP4
000030d8: SWAP2
000030d9: SWAP1
000030da: DUP3
000030db: SWAP1
000030dc: DUP2
000030dd: SWAP1
000030de: PUSH1 0x20
000030e0: ADD
000030e1: SUB
000030e2: SWAP2
000030e3: PUSH32 0x000000000000000000000000287d1e2a8de183a8bf8f2b09fa1340fbd766eb59
00003104: AND
00003105: GAS
00003106: STATICCALL
00003107: DUP1
00003108: ISZERO
00003109: PUSH2 0x0543
0000310c: JUMPI
0000310d: PUSH2 0x32de
00003110: JUMPI
00003111: JUMPDEST
00003112: POP
00003113: DUP7
00003114: MLOAD
00003115: SWAP4
00003116: PUSH4 0x03d1689d
0000311b: PUSH1 0xe1
0000311d: SHL
0000311e: SWAP8
0000311f: DUP9
00003120: DUP7
00003121: MSTORE
00003122: PUSH1 0x20
00003124: SWAP2
00003125: DUP3
00003126: DUP8
00003127: DUP1
00003128: PUSH2 0x3138
0000312b: DUP9
0000312c: DUP13
0000312d: DUP4
0000312e: ADD
0000312f: SWAP2
00003130: SWAP1
00003131: PUSH1 0x20
00003133: DUP4
00003134: ADD
00003135: SWAP3
00003136: MSTORE
00003137: JUMP
00003138: JUMPDEST
00003139: SUB
0000313a: DUP2
0000313b: DUP5
0000313c: GAS
0000313d: STATICCALL
0000313e: SWAP7
0000313f: DUP8
00003140: ISZERO
00003141: PUSH2 0x0543
00003144: JUMPI
00003145: PUSH0
00003146: SWAP8
00003147: PUSH2 0x32bf
0000314a: JUMPI
0000314b: JUMPDEST
0000314c: POP
0000314d: DUP7
0000314e: SWAP10
0000314f: PUSH2 0x316b
00003152: PUSH2 0x080f
00003155: DUP14
00003156: PUSH1 0x01
00003158: DUP1
00003159: PUSH1 0xa0
0000315b: SHL
0000315c: SUB
0000315d: AND
0000315e: PUSH0
0000315f: MSTORE
00003160: PUSH1 0x9c
00003162: PUSH1 0x20
00003164: MSTORE
00003165: PUSH1 0x40
00003167: PUSH0
00003168: KECCAK256
00003169: SWAP1
0000316a: JUMP
0000316b: JUMPDEST
0000316c: DUP9
0000316d: GT
0000316e: DUP1
0000316f: ISZERO
00003170: PUSH2 0x32af
00003173: JUMPI
00003174: JUMPDEST
00003175: PUSH2 0x329f
00003178: JUMPI
00003179: SWAP1
0000317a: DUP4
0000317b: PUSH2 0x31b1
0000317e: SWAP3
0000317f: PUSH2 0x318f
00003182: DUP8
00003183: MLOAD
00003184: PUSH1 0x01
00003186: PUSH1 0x01
00003188: PUSH1 0x80
0000318a: SHL
0000318b: SUB
0000318c: AND
0000318d: SWAP1
0000318e: JUMP
0000318f: JUMPDEST
00003190: SWAP1
00003191: DUP6
00003192: MLOAD
00003193: SWAP5
00003194: DUP6
00003195: SWAP3
00003196: DUP4
00003197: SWAP3
00003198: DUP4
00003199: MSTORE
0000319a: DUP14
0000319b: DUP4
0000319c: ADD
0000319d: SWAP2
0000319e: SWAP1
0000319f: SWAP2
000031a0: PUSH1 0x01
000031a2: PUSH1 0x01
000031a4: PUSH1 0x80
000031a6: SHL
000031a7: SUB
000031a8: PUSH1 0x20
000031aa: DUP3
000031ab: ADD
000031ac: SWAP4
000031ad: AND
000031ae: SWAP1
000031af: MSTORE
000031b0: JUMP
000031b1: JUMPDEST
000031b2: SUB
000031b3: DUP2
000031b4: DUP5
000031b5: GAS
000031b6: STATICCALL
000031b7: SWAP9
000031b8: DUP10
000031b9: ISZERO
000031ba: PUSH2 0x0543
000031bd: JUMPI
000031be: PUSH0
000031bf: DUP6
000031c0: SWAP5
000031c1: DUP9
000031c2: SWAP5
000031c3: PUSH2 0x31f6
000031c6: SWAP13
000031c7: PUSH2 0x3282
000031ca: JUMPI
000031cb: JUMPDEST
000031cc: POP
000031cd: MLOAD
000031ce: PUSH4 0x3b9e9f01
000031d3: PUSH1 0xe2
000031d5: SHL
000031d6: DUP2
000031d7: MSTORE
000031d8: CALLER
000031d9: SWAP3
000031da: DUP2
000031db: ADD
000031dc: SWAP3
000031dd: DUP4
000031de: MSTORE
000031df: PUSH1 0x20
000031e1: DUP4
000031e2: ADD
000031e3: SWAP5
000031e4: SWAP1
000031e5: SWAP5
000031e6: MSTORE
000031e7: SWAP3
000031e8: SWAP10
000031e9: DUP11
000031ea: SWAP4
000031eb: DUP5
000031ec: SWAP3
000031ed: SWAP1
000031ee: SWAP2
000031ef: DUP4
000031f0: SWAP2
000031f1: PUSH1 0x40
000031f3: ADD
000031f4: SWAP1
000031f5: JUMP
000031f6: JUMPDEST
000031f7: SUB
000031f8: SWAP3
000031f9: GAS
000031fa: CALL
000031fb: SWAP6
000031fc: DUP7
000031fd: ISZERO
000031fe: PUSH2 0x0543
00003201: JUMPI
00003202: PUSH2 0x092a
00003205: PUSH2 0x323d
00003208: SWAP5
00003209: PUSH2 0x3220
0000320c: SWAP4
0000320d: PUSH2 0x048a
00003210: SWAP4
00003211: PUSH2 0x2004
00003214: SWAP11
00003215: PUSH2 0x3264
00003218: JUMPI
00003219: JUMPDEST
0000321a: POP
0000321b: POP
0000321c: PUSH2 0x3c2c
0000321f: JUMP
00003220: JUMPDEST
00003221: PUSH1 0x01
00003223: PUSH1 0x01
00003225: PUSH1 0xa0
00003227: SHL
00003228: SUB
00003229: DUP9
0000322a: AND
0000322b: PUSH0
0000322c: SWAP1
0000322d: DUP2
0000322e: MSTORE
0000322f: PUSH2 0x0137
00003232: PUSH1 0x20
00003234: MSTORE
00003235: PUSH1 0x40
00003237: SWAP1
00003238: KECCAK256
00003239: PUSH2 0x1e0c
0000323c: JUMP
0000323d: JUMPDEST
0000323e: PUSH2 0x325f
00003241: PUSH2 0x3249
00003244: DUP4
00003245: PUSH2 0x3cf9
00003248: JUMP
00003249: JUMPDEST
0000324a: DUP1
0000324b: SWAP8
0000324c: PUSH2 0x325a
0000324f: PUSH2 0x0984
00003252: PUSH2 0x0970
00003255: DUP8
00003256: PUSH2 0x3c2c
00003259: JUMP
0000325a: JUMPDEST
0000325b: PUSH2 0x4213
0000325e: JUMP
0000325f: JUMPDEST
00003260: PUSH2 0x3c5f
00003263: JUMP
00003264: JUMPDEST
00003265: DUP2
00003266: PUSH2 0x327a
00003269: SWAP3
0000326a: SWAP1
0000326b: RETURNDATASIZE
0000326c: LT
0000326d: PUSH2 0x053c
00003270: JUMPI
00003271: PUSH2 0x052e
00003274: DUP2
00003275: DUP4
00003276: PUSH2 0x0f0f
00003279: JUMP
0000327a: JUMPDEST
0000327b: POP
0000327c: PUSH0
0000327d: DUP1
0000327e: PUSH2 0x3219
00003281: JUMP
00003282: JUMPDEST
00003283: PUSH2 0x3298
00003286: SWAP1
00003287: DUP8
00003288: RETURNDATASIZE
00003289: DUP10
0000328a: GT
0000328b: PUSH2 0x053c
0000328e: JUMPI
0000328f: PUSH2 0x052e
00003292: DUP2
00003293: DUP4
00003294: PUSH2 0x0f0f
00003297: JUMP
00003298: JUMPDEST
00003299: POP
0000329a: PUSH0
0000329b: PUSH2 0x31cb
0000329e: JUMP
0000329f: JUMPDEST
000032a0: DUP3
000032a1: MLOAD
000032a2: PUSH4 0xefda1a27
000032a7: PUSH1 0xe0
000032a9: SHL
000032aa: DUP2
000032ab: MSTORE
000032ac: DUP10
000032ad: SWAP1
000032ae: REVERT
000032af: JUMPDEST
000032b0: POP
000032b1: PUSH2 0x32b8
000032b4: PUSH2 0x1e88
000032b7: JUMP
000032b8: JUMPDEST
000032b9: DUP9
000032ba: GT
000032bb: PUSH2 0x3174
000032be: JUMP
000032bf: JUMPDEST
000032c0: PUSH2 0x32d7
000032c3: SWAP2
000032c4: SWAP8
000032c5: POP
000032c6: DUP4
000032c7: RETURNDATASIZE
000032c8: DUP6
000032c9: GT
000032ca: PUSH2 0x053c
000032cd: JUMPI
000032ce: PUSH2 0x052e
000032d1: DUP2
000032d2: DUP4
000032d3: PUSH2 0x0f0f
000032d6: JUMP
000032d7: JUMPDEST
000032d8: SWAP6
000032d9: PUSH0
000032da: PUSH2 0x314b
000032dd: JUMP
000032de: JUMPDEST
000032df: PUSH2 0x32f6
000032e2: SWAP1
000032e3: PUSH1 0x60
000032e5: RETURNDATASIZE
000032e6: PUSH1 0x60
000032e8: GT
000032e9: PUSH2 0x0abd
000032ec: JUMPI
000032ed: PUSH2 0x0aae
000032f0: DUP2
000032f1: DUP4
000032f2: PUSH2 0x0f0f
000032f5: JUMP
000032f6: JUMPDEST
000032f7: POP
000032f8: PUSH0
000032f9: PUSH2 0x3111
000032fc: JUMP
000032fd: JUMPDEST
000032fe: DUP8
000032ff: MLOAD
00003300: PUSH4 0x673f032f
00003305: PUSH1 0xe1
00003307: SHL
00003308: DUP2
00003309: MSTORE
0000330a: DUP7
0000330b: SWAP1
0000330c: REVERT
0000330d: JUMPDEST
0000330e: DUP1
0000330f: PUSH2 0x0ae1
00003312: PUSH2 0x331a
00003315: SWAP3
00003316: PUSH2 0x0ec6
00003319: JUMP
0000331a: JUMPDEST
0000331b: PUSH0
0000331c: PUSH2 0x3073
0000331f: JUMP
00003320: JUMPDEST
00003321: PUSH2 0x3328
00003324: PUSH2 0x4260
00003327: JUMP
00003328: JUMPDEST
00003329: PUSH1 0x40
0000332b: DUP4
0000332c: ADD
0000332d: MLOAD
0000332e: PUSH2 0x3335
00003331: PUSH2 0x4260
00003334: JUMP
00003335: JUMPDEST
00003336: PUSH1 0x01
00003338: PUSH1 0x01
0000333a: PUSH1 0xa0
0000333c: SHL
0000333d: SUB
0000333e: DUP3
0000333f: AND
00003340: DUP1
00003341: ISZERO
00003342: PUSH2 0x0aed
00003345: JUMPI
00003346: PUSH1 0x01
00003348: PUSH1 0x01
0000334a: PUSH1 0x60
0000334c: SHL
0000334d: SUB
0000334e: PUSH1 0xa0
00003350: SHL
00003351: PUSH0
00003352: SLOAD
00003353: AND
00003354: OR
00003355: PUSH0
00003356: SSTORE
00003357: PUSH32 0x2013570c343af8ab14a9778150e381a0fda34ed6368127a95fd5e7210cbec5bf
00003378: PUSH1 0x40
0000337a: MLOAD
0000337b: PUSH1 0x20
0000337d: DUP2
0000337e: MSTORE
0000337f: DUP1
00003380: PUSH2 0x338e
00003383: CALLER
00003384: SWAP5
00003385: PUSH1 0x20
00003387: DUP4
00003388: ADD
00003389: SWAP1
0000338a: PUSH2 0x1b20
0000338d: JUMP
0000338e: JUMPDEST
0000338f: SUB
00003390: SWAP1
00003391: LOG2
00003392: PUSH1 0x20
00003394: DUP4
00003395: ADD
00003396: MLOAD
00003397: SWAP3
00003398: PUSH2 0x339f
0000339b: PUSH2 0x4260
0000339e: JUMP
0000339f: JUMPDEST
000033a0: PUSH2 0x2710
000033a3: PUSH2 0xffff
000033a6: DUP6
000033a7: AND
000033a8: GT
000033a9: PUSH2 0x33f6
000033ac: JUMPI
000033ad: PUSH2 0x33ee
000033b0: SWAP4
000033b1: PUSH2 0x33bc
000033b4: PUSH2 0x33e1
000033b7: SWAP4
000033b8: PUSH2 0x3d88
000033bb: JUMP
000033bc: JUMPDEST
000033bd: PUSH1 0x65
000033bf: DUP1
000033c0: SLOAD
000033c1: PUSH2 0xffff
000033c4: PUSH1 0xa0
000033c6: SHL
000033c7: NOT
000033c8: AND
000033c9: PUSH1 0xa0
000033cb: SWAP3
000033cc: SWAP1
000033cd: SWAP3
000033ce: SHL
000033cf: PUSH2 0xffff
000033d2: PUSH1 0xa0
000033d4: SHL
000033d5: AND
000033d6: SWAP2
000033d7: SWAP1
000033d8: SWAP2
000033d9: OR
000033da: SWAP1
000033db: SSTORE
000033dc: MLOAD
000033dd: PUSH2 0x42a1
000033e0: JUMP
000033e1: JUMPDEST
000033e2: PUSH2 0x33e9
000033e5: PUSH2 0x42d1
000033e8: JUMP
000033e9: JUMPDEST
000033ea: PUSH2 0x42fd
000033ed: JUMP
000033ee: JUMPDEST
000033ef: PUSH2 0x2004
000033f2: PUSH2 0x432c
000033f5: JUMP
000033f6: JUMPDEST
000033f7: PUSH1 0x40
000033f9: MLOAD
000033fa: PUSH4 0x8a81d3b3
000033ff: PUSH1 0xe0
00003401: SHL
00003402: DUP2
00003403: MSTORE
00003404: PUSH1 0x04
00003406: SWAP1
00003407: REVERT
00003408: JUMPDEST
00003409: PUSH1 0x01
0000340b: PUSH1 0x01
0000340d: PUSH1 0xa0
0000340f: SHL
00003410: SUB
00003411: PUSH32 0x000000000000000000000000decb606ee9140f229df78f9e40041ead61610f8f
00003432: DUP2
00003433: AND
00003434: ADDRESS
00003435: DUP2
00003436: EQ
00003437: SWAP2
00003438: DUP3
00003439: ISZERO
0000343a: PUSH2 0x3446
0000343d: JUMPI
0000343e: JUMPDEST
0000343f: POP
00003440: POP
00003441: PUSH2 0x125e
00003444: JUMPI
00003445: JUMP
00003446: JUMPDEST
00003447: PUSH0
00003448: DUP1
00003449: MLOAD
0000344a: PUSH1 0x20
0000344c: PUSH2 0x4a21
0000344f: DUP4
00003450: CODECOPY
00003451: DUP2
00003452: MLOAD
00003453: SWAP2
00003454: MSTORE
00003455: SLOAD
00003456: AND
00003457: EQ
00003458: ISZERO
00003459: SWAP1
0000345a: POP
0000345b: PUSH0
0000345c: DUP1
0000345d: PUSH2 0x343e
00003460: JUMP
00003461: JUMPDEST
00003462: PUSH0
00003463: SLOAD
00003464: PUSH1 0x01
00003466: PUSH1 0x01
00003468: PUSH1 0xa0
0000346a: SHL
0000346b: SUB
0000346c: AND
0000346d: CALLER
0000346e: SUB
0000346f: PUSH2 0x0db3
00003472: JUMPI
00003473: JUMP
00003474: JUMPDEST
00003475: SWAP1
00003476: PUSH1 0x40
00003478: MLOAD
00003479: PUSH2 0x3481
0000347c: DUP2
0000347d: PUSH2 0x0ea6
00003480: JUMP
00003481: JUMPDEST
00003482: SWAP2
00003483: SLOAD
00003484: PUSH1 0x01
00003486: PUSH1 0x01
00003488: PUSH1 0xa0
0000348a: SHL
0000348b: SUB
0000348c: DUP2
0000348d: AND
0000348e: DUP4
0000348f: MSTORE
00003490: PUSH1 0xa0
00003492: SHR
00003493: PUSH1 0x20
00003495: DUP4
00003496: ADD
00003497: MSTORE
00003498: JUMP
00003499: JUMPDEST
0000349a: SWAP3
0000349b: SWAP1
0000349c: PUSH0
0000349d: SWAP4
0000349e: PUSH0
0000349f: SWAP4
000034a0: PUSH1 0x9a
000034a2: SLOAD
000034a3: SWAP2
000034a4: DUP3
000034a5: DUP2
000034a6: LT
000034a7: DUP1
000034a8: ISZERO
000034a9: SWAP1
000034aa: PUSH2 0x36f3
000034ad: JUMPI
000034ae: JUMPDEST
000034af: PUSH2 0x36e7
000034b2: JUMPI
000034b3: DUP1
000034b4: PUSH2 0x36b1
000034b7: JUMPI
000034b8: PUSH0
000034b9: JUMPDEST
000034ba: PUSH1 0x9a
000034bc: PUSH0
000034bd: MSTORE
000034be: PUSH1 0x01
000034c0: PUSH1 0x01
000034c2: PUSH1 0xa0
000034c4: SHL
000034c5: SUB
000034c6: AND
000034c7: SWAP4
000034c8: PUSH2 0x34e4
000034cb: PUSH0
000034cc: DUP1
000034cd: MLOAD
000034ce: PUSH1 0x20
000034d0: PUSH2 0x4a01
000034d3: DUP4
000034d4: CODECOPY
000034d5: DUP2
000034d6: MLOAD
000034d7: SWAP2
000034d8: MSTORE
000034d9: DUP4
000034da: ADD
000034db: PUSH2 0x3474
000034de: JUMP
000034df: JUMPDEST
000034e0: PUSH2 0x3474
000034e3: JUMP
000034e4: JUMPDEST
000034e5: DUP1
000034e6: MLOAD
000034e7: SWAP1
000034e8: SWAP5
000034e9: SWAP1
000034ea: PUSH2 0x34fb
000034ed: SWAP1
000034ee: PUSH1 0x01
000034f0: PUSH1 0x01
000034f2: PUSH1 0xa0
000034f4: SHL
000034f5: SUB
000034f6: AND
000034f7: PUSH2 0x11f4
000034fa: JUMP
000034fb: JUMPDEST
000034fc: SWAP6
000034fd: PUSH2 0x3520
00003500: PUSH2 0x3514
00003503: PUSH1 0x20
00003505: DUP1
00003506: SWAP9
00003507: ADD
00003508: MLOAD
00003509: PUSH1 0x01
0000350b: PUSH1 0x01
0000350d: PUSH1 0x60
0000350f: SHL
00003510: SUB
00003511: AND
00003512: SWAP1
00003513: JUMP
00003514: JUMPDEST
00003515: PUSH1 0x01
00003517: PUSH1 0x01
00003519: PUSH1 0x60
0000351b: SHL
0000351c: SUB
0000351d: AND
0000351e: SWAP1
0000351f: JUMP
00003520: JUMPDEST
00003521: SWAP3
00003522: DUP2
00003523: DUP2
00003524: LT
00003525: DUP1
00003526: ISZERO
00003527: PUSH2 0x36a7
0000352a: JUMPI
0000352b: JUMPDEST
0000352c: PUSH2 0x3695
0000352f: JUMPI
00003530: PUSH1 0x01
00003532: SWAP1
00003533: PUSH1 0x01
00003535: DUP10
00003536: GT
00003537: DUP1
00003538: PUSH2 0x368d
0000353b: JUMPI
0000353c: JUMPDEST
0000353d: DUP1
0000353e: PUSH2 0x367c
00003541: JUMPI
00003542: JUMPDEST
00003543: PUSH2 0x360b
00003546: JUMPI
00003547: SWAP2
00003548: SWAP8
00003549: SWAP5
0000354a: SWAP7
0000354b: SWAP1
0000354c: SWAP6
0000354d: SWAP1
0000354e: SWAP5
0000354f: SWAP1
00003550: SWAP4
00003551: SWAP1
00003552: SWAP2
00003553: DUP3
00003554: SUB
00003555: DUP7
00003556: JUMPDEST
00003557: PUSH2 0x3565
0000355a: JUMPI
0000355b: POP
0000355c: POP
0000355d: POP
0000355e: POP
0000355f: POP
00003560: POP
00003561: POP
00003562: POP
00003563: POP
00003564: JUMP
00003565: JUMPDEST
00003566: SWAP11
00003567: PUSH2 0x358c
0000356a: SWAP2
0000356b: PUSH2 0x3580
0000356e: DUP9
0000356f: SWAP11
00003570: SWAP14
00003571: DUP4
00003572: DUP9
00003573: SWAP11
00003574: SWAP8
00003575: SWAP10
00003576: SWAP12
00003577: SWAP15
00003578: SWAP7
00003579: SWAP9
0000357a: SUB
0000357b: SWAP1
0000357c: PUSH2 0x40d6
0000357f: JUMP
00003580: JUMPDEST
00003581: DUP1
00003582: SWAP3
00003583: ADD
00003584: SWAP13
00003585: DUP7
00003586: SUB
00003587: SWAP2
00003588: PUSH2 0x265c
0000358b: JUMP
0000358c: JUMPDEST
0000358d: ADD
0000358e: SWAP8
0000358f: ADD
00003590: SWAP2
00003591: DUP9
00003592: DUP5
00003593: GT
00003594: DUP1
00003595: ISZERO
00003596: SWAP1
00003597: PUSH2 0x3601
0000359a: JUMPI
0000359b: JUMPDEST
0000359c: PUSH2 0x35f9
0000359f: JUMPI
000035a0: PUSH1 0x9a
000035a2: PUSH0
000035a3: MSTORE
000035a4: DUP2
000035a5: PUSH2 0x35bc
000035a8: PUSH0
000035a9: DUP1
000035aa: MLOAD
000035ab: PUSH1 0x20
000035ad: PUSH2 0x4a01
000035b0: DUP4
000035b1: CODECOPY
000035b2: DUP2
000035b3: MLOAD
000035b4: SWAP2
000035b5: MSTORE
000035b6: DUP6
000035b7: ADD
000035b8: PUSH2 0x3474
000035bb: JUMP
000035bc: JUMPDEST
000035bd: SWAP7
000035be: DUP1
000035bf: PUSH2 0x35e7
000035c2: PUSH2 0x3514
000035c5: DUP10
000035c6: PUSH2 0x35d8
000035c9: PUSH2 0x11f4
000035cc: DUP14
000035cd: MLOAD
000035ce: PUSH1 0x01
000035d0: DUP1
000035d1: PUSH1 0xa0
000035d3: SHL
000035d4: SUB
000035d5: AND
000035d6: SWAP1
000035d7: JUMP
000035d8: JUMPDEST
000035d9: SWAP12
000035da: ADD
000035db: MLOAD
000035dc: PUSH1 0x01
000035de: PUSH1 0x01
000035e0: PUSH1 0x60
000035e2: SHL
000035e3: SUB
000035e4: AND
000035e5: SWAP1
000035e6: JUMP
000035e7: JUMPDEST
000035e8: SWAP5
000035e9: DUP10
000035ea: SUB
000035eb: SWAP1
000035ec: SWAP7
000035ed: SWAP5
000035ee: SWAP2
000035ef: SWAP9
000035f0: SWAP3
000035f1: SWAP9
000035f2: SWAP8
000035f3: SWAP6
000035f4: SWAP8
000035f5: PUSH2 0x3556
000035f8: JUMP
000035f9: JUMPDEST
000035fa: POP
000035fb: POP
000035fc: POP
000035fd: POP
000035fe: POP
000035ff: POP
00003600: JUMP
00003601: JUMPDEST
00003602: POP
00003603: DUP1
00003604: DUP4
00003605: LT
00003606: ISZERO
00003607: PUSH2 0x359b
0000360a: JUMP
0000360b: JUMPDEST
0000360c: POP
0000360d: POP
0000360e: POP
0000360f: POP
00003610: POP
00003611: PUSH2 0x3514
00003614: SWAP2
00003615: SWAP7
00003616: POP
00003617: PUSH2 0x0616
0000361a: SWAP5
0000361b: SWAP6
0000361c: POP
0000361d: PUSH2 0x3676
00003620: SWAP3
00003621: POP
00003622: PUSH2 0x3667
00003625: PUSH2 0x364b
00003628: PUSH2 0x34df
0000362b: PUSH2 0x3635
0000362e: PUSH1 0x20
00003630: SWAP5
00003631: PUSH2 0x2273
00003634: JUMP
00003635: JUMPDEST
00003636: PUSH1 0x9a
00003638: PUSH0
00003639: MSTORE
0000363a: PUSH0
0000363b: DUP1
0000363c: MLOAD
0000363d: PUSH1 0x20
0000363f: PUSH2 0x4a01
00003642: DUP4
00003643: CODECOPY
00003644: DUP2
00003645: MLOAD
00003646: SWAP2
00003647: MSTORE
00003648: ADD
00003649: SWAP1
0000364a: JUMP
0000364b: JUMPDEST
0000364c: DUP1
0000364d: MLOAD
0000364e: SWAP1
0000364f: SWAP6
00003650: SWAP1
00003651: PUSH2 0x3662
00003654: SWAP1
00003655: PUSH1 0x01
00003657: PUSH1 0x01
00003659: PUSH1 0xa0
0000365b: SHL
0000365c: SUB
0000365d: AND
0000365e: PUSH2 0x11f4
00003661: JUMP
00003662: JUMPDEST
00003663: PUSH2 0x207b
00003666: JUMP
00003667: JUMPDEST
00003668: SWAP4
00003669: ADD
0000366a: MLOAD
0000366b: PUSH1 0x01
0000366d: PUSH1 0x01
0000366f: PUSH1 0x60
00003671: SHL
00003672: SUB
00003673: AND
00003674: SWAP1
00003675: JUMP
00003676: JUMPDEST
00003677: DUP5
00003678: PUSH2 0x265c
0000367b: JUMP
0000367c: JUMPDEST
0000367d: POP
0000367e: DUP4
0000367f: PUSH2 0x3687
00003682: DUP8
00003683: PUSH2 0x2273
00003686: JUMP
00003687: JUMPDEST
00003688: LT
00003689: PUSH2 0x3542
0000368c: JUMP
0000368d: JUMPDEST
0000368e: POP
0000368f: DUP5
00003690: ISZERO
00003691: PUSH2 0x353c
00003694: JUMP
00003695: JUMPDEST
00003696: PUSH1 0x40
00003698: MLOAD
00003699: PUSH4 0xe8722f8f
0000369e: PUSH1 0xe0
000036a0: SHL
000036a1: DUP2
000036a2: MSTORE
000036a3: PUSH1 0x04
000036a5: SWAP1
000036a6: REVERT
000036a7: JUMPDEST
000036a8: POP
000036a9: DUP1
000036aa: DUP9
000036ab: GT
000036ac: ISZERO
000036ad: PUSH2 0x352b
000036b0: JUMP
000036b1: JUMPDEST
000036b2: PUSH1 0x9a
000036b4: PUSH0
000036b5: MSTORE
000036b6: PUSH32 0x44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be3
000036d7: DUP2
000036d8: ADD
000036d9: SLOAD
000036da: PUSH1 0x01
000036dc: PUSH1 0x01
000036de: PUSH1 0xa0
000036e0: SHL
000036e1: SUB
000036e2: AND
000036e3: PUSH2 0x34b9
000036e6: JUMP
000036e7: JUMPDEST
000036e8: POP
000036e9: PUSH0
000036ea: SWAP6
000036eb: POP
000036ec: DUP6
000036ed: SWAP5
000036ee: POP
000036ef: POP
000036f0: POP
000036f1: POP
000036f2: JUMP
000036f3: JUMPDEST
000036f4: POP
000036f5: DUP2
000036f6: ISZERO
000036f7: PUSH2 0x34ae
000036fa: JUMP
000036fb: JUMPDEST
000036fc: PUSH1 0x40
000036fe: MLOAD
000036ff: PUSH4 0x3eb1acf7
00003704: PUSH1 0xe1
00003706: SHL
00003707: DUP2
00003708: MSTORE
00003709: ADDRESS
0000370a: PUSH1 0x04
0000370c: DUP3
0000370d: ADD
0000370e: MSTORE
0000370f: PUSH1 0x20
00003711: DUP2
00003712: PUSH1 0x24
00003714: DUP2
00003715: PUSH32 0x0000000000000000000000006b5815467da09daa7dc83db21c9239d98bb487b5
00003736: PUSH1 0x01
00003738: PUSH1 0x01
0000373a: PUSH1 0xa0
0000373c: SHL
0000373d: SUB
0000373e: AND
0000373f: GAS
00003740: STATICCALL
00003741: SWAP1
00003742: DUP2
00003743: ISZERO
00003744: PUSH2 0x0543
00003747: JUMPI
00003748: PUSH0
00003749: SWAP2
0000374a: PUSH2 0x3767
0000374d: JUMPI
0000374e: JUMPDEST
0000374f: POP
00003750: PUSH2 0x3755
00003753: JUMPI
00003754: JUMP
00003755: JUMPDEST
00003756: PUSH1 0x40
00003758: MLOAD
00003759: PUSH4 0xe7757151
0000375e: PUSH1 0xe0
00003760: SHL
00003761: DUP2
00003762: MSTORE
00003763: PUSH1 0x04
00003765: SWAP1
00003766: REVERT
00003767: JUMPDEST
00003768: PUSH2 0x3780
0000376b: SWAP2
0000376c: POP
0000376d: PUSH1 0x20
0000376f: RETURNDATASIZE
00003770: PUSH1 0x20
00003772: GT
00003773: PUSH2 0x10f9
00003776: JUMPI
00003777: PUSH2 0x10ea
0000377a: DUP2
0000377b: DUP4
0000377c: PUSH2 0x0f0f
0000377f: JUMP
00003780: JUMPDEST
00003781: PUSH0
00003782: PUSH2 0x374e
00003785: JUMP
00003786: JUMPDEST
00003787: PUSH1 0x42
00003789: SWAP1
0000378a: CHAINID
0000378b: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001
000037ac: SUB
000037ad: PUSH2 0x3834
000037b0: JUMPI
000037b1: PUSH1 0xd3
000037b3: SLOAD
000037b4: SWAP1
000037b5: JUMPDEST
000037b6: PUSH2 0x37cc
000037b9: PUSH2 0x37c5
000037bc: PUSH1 0x40
000037be: DUP4
000037bf: ADD
000037c0: DUP4
000037c1: PUSH2 0x21e8
000037c4: JUMP
000037c5: JUMPDEST
000037c6: CALLDATASIZE
000037c7: SWAP2
000037c8: PUSH2 0x0f4b
000037cb: JUMP
000037cc: JUMPDEST
000037cd: PUSH1 0x20
000037cf: DUP2
000037d0: MLOAD
000037d1: SWAP2
000037d2: ADD
000037d3: KECCAK256
000037d4: PUSH1 0x40
000037d6: MLOAD
000037d7: SWAP1
000037d8: PUSH1 0x20
000037da: DUP3
000037db: ADD
000037dc: SWAP3
000037dd: PUSH32 0x838af86bfca91ada6557e38d913af1c2f24ef9b2567b3b77cc9e1144314b35b0
000037fe: DUP5
000037ff: MSTORE
00003800: CALLDATALOAD
00003801: PUSH1 0x40
00003803: DUP4
00003804: ADD
00003805: MSTORE
00003806: PUSH1 0x60
00003808: DUP3
00003809: ADD
0000380a: MSTORE
0000380b: PUSH1 0x60
0000380d: DUP2
0000380e: MSTORE
0000380f: PUSH2 0x3817
00003812: DUP2
00003813: PUSH2 0x0ef4
00003816: JUMP
00003817: JUMPDEST
00003818: MLOAD
00003819: SWAP1
0000381a: KECCAK256
0000381b: PUSH1 0x40
0000381d: MLOAD
0000381e: SWAP2
0000381f: PUSH2 0x1901
00003822: PUSH1 0xf0
00003824: SHL
00003825: DUP4
00003826: MSTORE
00003827: PUSH1 0x02
00003829: DUP4
0000382a: ADD
0000382b: MSTORE
0000382c: PUSH1 0x22
0000382e: DUP3
0000382f: ADD
00003830: MSTORE
00003831: KECCAK256
00003832: SWAP1
00003833: JUMP
00003834: JUMPDEST
00003835: PUSH2 0x383c
00003838: PUSH2 0x4453
0000383b: JUMP
0000383c: JUMPDEST
0000383d: SWAP1
0000383e: PUSH2 0x37b5
00003841: JUMP
00003842: JUMPDEST
00003843: PUSH1 0x04
00003845: GT
00003846: ISZERO
00003847: PUSH2 0x384c
0000384a: JUMPI
0000384b: JUMP
0000384c: JUMPDEST
0000384d: PUSH4 0x4e487b71
00003852: PUSH1 0xe0
00003854: SHL
00003855: PUSH0
00003856: MSTORE
00003857: PUSH1 0x21
00003859: PUSH1 0x04
0000385b: MSTORE
0000385c: PUSH1 0x24
0000385e: PUSH0
0000385f: REVERT
00003860: JUMPDEST
00003861: PUSH2 0x386a
00003864: DUP4
00003865: DUP4
00003866: PUSH2 0x4520
00003869: JUMP
0000386a: JUMPDEST
0000386b: POP
0000386c: PUSH2 0x3877
0000386f: DUP2
00003870: SWAP6
00003871: SWAP3
00003872: SWAP6
00003873: PUSH2 0x3842
00003876: JUMP
00003877: JUMPDEST
00003878: ISZERO
00003879: SWAP4
0000387a: DUP5
0000387b: PUSH2 0x3913
0000387e: JUMPI
0000387f: JUMPDEST
00003880: POP
00003881: DUP4
00003882: ISZERO
00003883: PUSH2 0x388d
00003886: JUMPI
00003887: JUMPDEST
00003888: POP
00003889: POP
0000388a: POP
0000388b: SWAP1
0000388c: JUMP
0000388d: JUMPDEST
0000388e: PUSH0
0000388f: SWAP3
00003890: SWAP4
00003891: POP
00003892: SWAP1
00003893: DUP3
00003894: SWAP2
00003895: PUSH1 0x40
00003897: MLOAD
00003898: PUSH2 0x38c5
0000389b: DUP2
0000389c: PUSH2 0x20b8
0000389f: PUSH1 0x20
000038a1: DUP3
000038a2: ADD
000038a3: SWAP5
000038a4: PUSH4 0x0b135d3f
000038a9: PUSH1 0xe1
000038ab: SHL
000038ac: SWAP10
000038ad: DUP11
000038ae: DUP8
000038af: MSTORE
000038b0: PUSH1 0x24
000038b2: DUP5
000038b3: ADD
000038b4: MSTORE
000038b5: PUSH1 0x40
000038b7: PUSH1 0x44
000038b9: DUP5
000038ba: ADD
000038bb: MSTORE
000038bc: PUSH1 0x64
000038be: DUP4
000038bf: ADD
000038c0: SWAP1
000038c1: PUSH2 0x1b20
000038c4: JUMP
000038c5: JUMPDEST
000038c6: MLOAD
000038c7: SWAP2
000038c8: GAS
000038c9: STATICCALL
000038ca: SWAP1
000038cb: PUSH2 0x38d2
000038ce: PUSH2 0x232b
000038d1: JUMP
000038d2: JUMPDEST
000038d3: DUP3
000038d4: PUSH2 0x3905
000038d7: JUMPI
000038d8: JUMPDEST
000038d9: DUP3
000038da: PUSH2 0x38e8
000038dd: JUMPI
000038de: JUMPDEST
000038df: POP
000038e0: POP
000038e1: PUSH0
000038e2: DUP1
000038e3: DUP1
000038e4: PUSH2 0x3887
000038e7: JUMP
000038e8: JUMPDEST
000038e9: PUSH2 0x38fd
000038ec: SWAP2
000038ed: SWAP3
000038ee: POP
000038ef: PUSH1 0x20
000038f1: DUP1
000038f2: DUP3
000038f3: MLOAD
000038f4: DUP4
000038f5: ADD
000038f6: ADD
000038f7: SWAP2
000038f8: ADD
000038f9: PUSH2 0x1da0
000038fc: JUMP
000038fd: JUMPDEST
000038fe: EQ
000038ff: PUSH0
00003900: DUP1
00003901: PUSH2 0x38de
00003904: JUMP
00003905: JUMPDEST
00003906: SWAP2
00003907: POP
00003908: PUSH1 0x20
0000390a: DUP3
0000390b: MLOAD
0000390c: LT
0000390d: ISZERO
0000390e: SWAP2
0000390f: PUSH2 0x38d8
00003912: JUMP
00003913: JUMPDEST
00003914: PUSH1 0x01
00003916: PUSH1 0x01
00003918: PUSH1 0xa0
0000391a: SHL
0000391b: SUB
0000391c: DUP4
0000391d: DUP2
0000391e: AND
0000391f: SWAP2
00003920: AND
00003921: EQ
00003922: SWAP4
00003923: POP
00003924: PUSH0
00003925: PUSH2 0x387f
00003928: JUMP
00003929: JUMPDEST
0000392a: SWAP1
0000392b: PUSH1 0x30
0000392d: GT
0000392e: PUSH2 0x02e7
00003931: JUMPI
00003932: SWAP1
00003933: PUSH1 0x30
00003935: SWAP1
00003936: JUMP
00003937: JUMPDEST
00003938: SWAP1
00003939: PUSH1 0x90
0000393b: GT
0000393c: PUSH2 0x02e7
0000393f: JUMPI
00003940: PUSH1 0x30
00003942: ADD
00003943: SWAP1
00003944: PUSH1 0x60
00003946: SWAP1
00003947: JUMP
00003948: JUMPDEST
00003949: SWAP1
0000394a: PUSH1 0xb0
0000394c: GT
0000394d: PUSH2 0x02e7
00003950: JUMPI
00003951: PUSH1 0x90
00003953: ADD
00003954: SWAP1
00003955: PUSH1 0x20
00003957: SWAP1
00003958: JUMP
00003959: JUMPDEST
0000395a: SWAP1
0000395b: SWAP4
0000395c: SWAP3
0000395d: SWAP4
0000395e: DUP5
0000395f: DUP4
00003960: GT
00003961: PUSH2 0x02e7
00003964: JUMPI
00003965: DUP5
00003966: GT
00003967: PUSH2 0x02e7
0000396a: JUMPI
0000396b: DUP2
0000396c: ADD
0000396d: SWAP3
0000396e: SUB
0000396f: SWAP1
00003970: JUMP
00003971: JUMPDEST
00003972: CALLDATALOAD
00003973: SWAP1
00003974: PUSH1 0x20
00003976: DUP2
00003977: LT
00003978: PUSH2 0x397f
0000397b: JUMPI
0000397c: POP
0000397d: SWAP1
0000397e: JUMP
0000397f: JUMPDEST
00003980: PUSH0
00003981: NOT
00003982: SWAP1
00003983: PUSH1 0x20
00003985: SUB
00003986: PUSH1 0x03
00003988: SHL
00003989: SHL
0000398a: AND
0000398b: SWAP1
0000398c: JUMP
0000398d: JUMPDEST
0000398e: SWAP7
0000398f: SWAP6
00003990: SWAP5
00003991: SWAP1
00003992: PUSH2 0x39ca
00003995: SWAP4
00003996: PUSH2 0x39ae
00003999: PUSH2 0x39bc
0000399c: SWAP3
0000399d: PUSH1 0x60
0000399f: SWAP8
000039a0: SWAP6
000039a1: PUSH1 0x80
000039a3: DUP13
000039a4: MSTORE
000039a5: PUSH1 0x80
000039a7: DUP13
000039a8: ADD
000039a9: SWAP2
000039aa: PUSH2 0x214a
000039ad: JUMP
000039ae: JUMPDEST
000039af: SWAP1
000039b0: DUP10
000039b1: DUP3
000039b2: SUB
000039b3: PUSH1 0x20
000039b5: DUP12
000039b6: ADD
000039b7: MSTORE
000039b8: PUSH2 0x1b20
000039bb: JUMP
000039bc: JUMPDEST
000039bd: SWAP2
000039be: DUP8
000039bf: DUP4
000039c0: SUB
000039c1: PUSH1 0x40
000039c3: DUP10
000039c4: ADD
000039c5: MSTORE
000039c6: PUSH2 0x214a
000039c9: JUMP
000039ca: JUMPDEST
000039cb: SWAP4
000039cc: ADD
000039cd: MSTORE
000039ce: JUMP
000039cf: JUMPDEST
000039d0: SWAP1
000039d1: PUSH1 0x20
000039d3: PUSH2 0x0616
000039d6: SWAP3
000039d7: DUP2
000039d8: DUP2
000039d9: MSTORE
000039da: ADD
000039db: SWAP1
000039dc: PUSH2 0x2132
000039df: JUMP
000039e0: JUMPDEST
000039e1: SWAP2
000039e2: PUSH1 0x20
000039e4: PUSH2 0x0616
000039e7: SWAP4
000039e8: DUP2
000039e9: DUP2
000039ea: MSTORE
000039eb: ADD
000039ec: SWAP2
000039ed: PUSH2 0x214a
000039f0: JUMP
000039f1: JUMPDEST
000039f2: PUSH1 0xb0
000039f4: SWAP2
000039f5: DUP3
000039f6: DUP2
000039f7: DIV
000039f8: SWAP2
000039f9: PUSH0
000039fa: SWAP1
000039fb: DUP2
000039fc: PUSH2 0x3a03
000039ff: PUSH2 0x455a
00003a02: JUMP
00003a03: JUMPDEST
00003a04: SWAP6
00003a05: PUSH32 0x00000000000000000000000000000000219ab540356cbb839cbe05303d7705fa
00003a26: PUSH1 0x01
00003a28: PUSH1 0x01
00003a2a: PUSH1 0xa0
00003a2c: SHL
00003a2d: SUB
00003a2e: AND
00003a2f: SWAP4
00003a30: PUSH0
00003a31: SWAP3
00003a32: SWAP1
00003a33: JUMPDEST
00003a34: DUP8
00003a35: DUP5
00003a36: LT
00003a37: PUSH2 0x3a45
00003a3a: JUMPI
00003a3b: POP
00003a3c: POP
00003a3d: POP
00003a3e: POP
00003a3f: POP
00003a40: POP
00003a41: POP
00003a42: POP
00003a43: POP
00003a44: JUMP
00003a45: JUMPDEST
00003a46: DUP3
00003a47: PUSH2 0x3a54
00003a4a: SWAP2
00003a4b: ADD
00003a4c: DUP1
00003a4d: SWAP3
00003a4e: DUP9
00003a4f: DUP8
00003a50: PUSH2 0x3959
00003a53: JUMP
00003a54: JUMPDEST
00003a55: SWAP1
00003a56: PUSH2 0x3a5f
00003a59: DUP3
00003a5a: DUP3
00003a5b: PUSH2 0x3929
00003a5e: JUMP
00003a5f: JUMPDEST
00003a60: SWAP2
00003a61: PUSH2 0x3a7e
00003a64: PUSH2 0x3a78
00003a67: PUSH2 0x3a70
00003a6a: DUP7
00003a6b: DUP5
00003a6c: PUSH2 0x3937
00003a6f: JUMP
00003a70: JUMPDEST
00003a71: SWAP7
00003a72: SWAP1
00003a73: SWAP4
00003a74: PUSH2 0x3948
00003a77: JUMP
00003a78: JUMPDEST
00003a79: SWAP1
00003a7a: PUSH2 0x3971
00003a7d: JUMP
00003a7e: JUMPDEST
00003a7f: SWAP1
00003a80: DUP10
00003a81: EXTCODESIZE
00003a82: ISZERO
00003a83: PUSH2 0x02e7
00003a86: JUMPI
00003a87: PUSH0
00003a88: SWAP1
00003a89: DUP14
00003a8a: PUSH2 0x3aab
00003a8d: PUSH1 0x40
00003a8f: SWAP5
00003a90: DUP6
00003a91: MLOAD
00003a92: SWAP9
00003a93: DUP10
00003a94: SWAP5
00003a95: DUP6
00003a96: SWAP5
00003a97: PUSH4 0x04512a23
00003a9c: PUSH1 0xe3
00003a9e: SHL
00003a9f: DUP7
00003aa0: MSTORE
00003aa1: DUP11
00003aa2: DUP11
00003aa3: PUSH1 0x04
00003aa5: DUP9
00003aa6: ADD
00003aa7: PUSH2 0x398d
00003aaa: JUMP
00003aab: JUMPDEST
00003aac: SUB
00003aad: DUP2
00003aae: PUSH9 0x01bc16d674ec800000
00003ab8: DUP14
00003ab9: GAS
00003aba: CALL
00003abb: SWAP1
00003abc: DUP2
00003abd: ISZERO
00003abe: PUSH2 0x0543
00003ac1: JUMPI
00003ac2: PUSH32 0x64b6e61d93b7a91e8cc4376183ede0997a27b44fd9dd2f30a866b2a5730efdb1
00003ae3: SWAP5
00003ae4: PUSH2 0x3af7
00003ae7: SWAP3
00003ae8: PUSH2 0x3b06
00003aeb: JUMPI
00003aec: JUMPDEST
00003aed: POP
00003aee: MLOAD
00003aef: SWAP3
00003af0: DUP4
00003af1: SWAP3
00003af2: DUP4
00003af3: PUSH2 0x39e0
00003af6: JUMP
00003af7: JUMPDEST
00003af8: SUB
00003af9: SWAP1
00003afa: LOG1
00003afb: PUSH1 0x01
00003afd: DUP2
00003afe: SWAP4
00003aff: ADD
00003b00: SWAP3
00003b01: SWAP1
00003b02: PUSH2 0x3a33
00003b05: JUMP
00003b06: JUMPDEST
00003b07: DUP1
00003b08: PUSH2 0x0ae1
00003b0b: PUSH2 0x3b13
00003b0e: SWAP3
00003b0f: PUSH2 0x0ec6
00003b12: JUMP
00003b13: JUMPDEST
00003b14: PUSH0
00003b15: PUSH2 0x3aec
00003b18: JUMP
00003b19: JUMPDEST
00003b1a: DUP2
00003b1b: PUSH1 0x30
00003b1d: GT
00003b1e: PUSH2 0x02e7
00003b21: JUMPI
00003b22: PUSH2 0x3a78
00003b25: SWAP2
00003b26: PUSH32 0x00000000000000000000000000000000219ab540356cbb839cbe05303d7705fa
00003b47: PUSH1 0x01
00003b49: PUSH1 0x01
00003b4b: PUSH1 0xa0
00003b4d: SHL
00003b4e: SUB
00003b4f: AND
00003b50: PUSH2 0x3b57
00003b53: PUSH2 0x455a
00003b56: JUMP
00003b57: JUMPDEST
00003b58: SWAP1
00003b59: PUSH2 0x3b6e
00003b5c: PUSH2 0x3b65
00003b5f: DUP5
00003b60: DUP7
00003b61: PUSH2 0x3937
00003b64: JUMP
00003b65: JUMPDEST
00003b66: SWAP7
00003b67: SWAP1
00003b68: SWAP5
00003b69: DUP7
00003b6a: PUSH2 0x3948
00003b6d: JUMP
00003b6e: JUMPDEST
00003b6f: SWAP5
00003b70: DUP2
00003b71: EXTCODESIZE
00003b72: ISZERO
00003b73: PUSH2 0x02e7
00003b76: JUMPI
00003b77: PUSH9 0x01bc16d674ec800000
00003b81: PUSH0
00003b82: SWAP5
00003b83: PUSH2 0x3bd4
00003b86: SWAP8
00003b87: PUSH1 0x40
00003b89: MLOAD
00003b8a: SWAP9
00003b8b: DUP10
00003b8c: SWAP7
00003b8d: DUP8
00003b8e: SWAP6
00003b8f: DUP7
00003b90: SWAP5
00003b91: PUSH4 0x04512a23
00003b96: PUSH1 0xe3
00003b98: SHL
00003b99: DUP7
00003b9a: MSTORE
00003b9b: PUSH1 0x80
00003b9d: PUSH1 0x04
00003b9f: DUP8
00003ba0: ADD
00003ba1: MSTORE
00003ba2: PUSH2 0x3bc5
00003ba5: PUSH2 0x3bb2
00003ba8: DUP14
00003ba9: PUSH1 0x84
00003bab: DUP10
00003bac: ADD
00003bad: SWAP1
00003bae: PUSH2 0x2132
00003bb1: JUMP
00003bb2: JUMPDEST
00003bb3: PUSH1 0x03
00003bb5: NOT
00003bb6: SWAP5
00003bb7: DUP6
00003bb8: DUP10
00003bb9: DUP4
00003bba: SUB
00003bbb: ADD
00003bbc: PUSH1 0x24
00003bbe: DUP11
00003bbf: ADD
00003bc0: MSTORE
00003bc1: PUSH2 0x1b20
00003bc4: JUMP
00003bc5: JUMPDEST
00003bc6: SWAP3
00003bc7: DUP7
00003bc8: DUP5
00003bc9: SUB
00003bca: ADD
00003bcb: PUSH1 0x44
00003bcd: DUP8
00003bce: ADD
00003bcf: MSTORE
00003bd0: PUSH2 0x214a
00003bd3: JUMP
00003bd4: JUMPDEST
00003bd5: SWAP1
00003bd6: PUSH1 0x64
00003bd8: DUP4
00003bd9: ADD
00003bda: MSTORE
00003bdb: SUB
00003bdc: SWAP3
00003bdd: GAS
00003bde: CALL
00003bdf: SWAP1
00003be0: DUP2
00003be1: ISZERO
00003be2: PUSH2 0x0543
00003be5: JUMPI
00003be6: PUSH32 0x64b6e61d93b7a91e8cc4376183ede0997a27b44fd9dd2f30a866b2a5730efdb1
00003c07: SWAP3
00003c08: PUSH2 0x2a24
00003c0b: SWAP3
00003c0c: PUSH2 0x3c1d
00003c0f: JUMPI
00003c10: JUMPDEST
00003c11: POP
00003c12: PUSH1 0x40
00003c14: MLOAD
00003c15: SWAP2
00003c16: DUP3
00003c17: SWAP2
00003c18: DUP3
00003c19: PUSH2 0x39cf
00003c1c: JUMP
00003c1d: JUMPDEST
00003c1e: PUSH2 0x3c26
00003c21: SWAP1
00003c22: PUSH2 0x0ec6
00003c25: JUMP
00003c26: JUMPDEST
00003c27: PUSH0
00003c28: PUSH2 0x3c10
00003c2b: JUMP
00003c2c: JUMPDEST
00003c2d: PUSH1 0x01
00003c2f: PUSH1 0x01
00003c31: PUSH1 0x80
00003c33: SHL
00003c34: SUB
00003c35: SWAP1
00003c36: DUP2
00003c37: DUP2
00003c38: GT
00003c39: PUSH2 0x3c40
00003c3c: JUMPI
00003c3d: AND
00003c3e: SWAP1
00003c3f: JUMP
00003c40: JUMPDEST
00003c41: PUSH1 0x44
00003c43: SWAP1
00003c44: PUSH1 0x40
00003c46: MLOAD
00003c47: SWAP1
00003c48: PUSH4 0x06dfcc65
00003c4d: PUSH1 0xe4
00003c4f: SHL
00003c50: DUP3
00003c51: MSTORE
00003c52: PUSH1 0x80
00003c54: PUSH1 0x04
00003c56: DUP4
00003c57: ADD
00003c58: MSTORE
00003c59: PUSH1 0x24
00003c5b: DUP3
00003c5c: ADD
00003c5d: MSTORE
00003c5e: REVERT
00003c5f: JUMPDEST
00003c60: SWAP1
00003c61: PUSH32 0x9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00
00003c82: SWAP2
00003c83: PUSH1 0x02
00003c85: DUP4
00003c86: SLOAD
00003c87: EQ
00003c88: PUSH2 0x3ce7
00003c8b: JUMPI
00003c8c: PUSH1 0x02
00003c8e: DUP4
00003c8f: SSTORE
00003c90: DUP2
00003c91: SELFBALANCE
00003c92: LT
00003c93: PUSH2 0x3ccf
00003c96: JUMPI
00003c97: PUSH0
00003c98: SWAP2
00003c99: DUP3
00003c9a: SWAP2
00003c9b: DUP3
00003c9c: SWAP2
00003c9d: DUP3
00003c9e: SWAP2
00003c9f: PUSH1 0x01
00003ca1: PUSH1 0x01
00003ca3: PUSH1 0xa0
00003ca5: SHL
00003ca6: SUB
00003ca7: AND
00003ca8: GAS
00003ca9: CALL
00003caa: PUSH2 0x3cb1
00003cad: PUSH2 0x232b
00003cb0: JUMP
00003cb1: JUMPDEST
00003cb2: POP
00003cb3: ISZERO
00003cb4: PUSH2 0x3cbd
00003cb7: JUMPI
00003cb8: PUSH1 0x01
00003cba: SWAP1
00003cbb: SSTORE
00003cbc: JUMP
00003cbd: JUMPDEST
00003cbe: PUSH1 0x40
00003cc0: MLOAD
00003cc1: PUSH4 0x0a12f521
00003cc6: PUSH1 0xe1
00003cc8: SHL
00003cc9: DUP2
00003cca: MSTORE
00003ccb: PUSH1 0x04
00003ccd: SWAP1
00003cce: REVERT
00003ccf: JUMPDEST
00003cd0: PUSH1 0x40
00003cd2: MLOAD
00003cd3: PUSH4 0xcd786059
00003cd8: PUSH1 0xe0
00003cda: SHL
00003cdb: DUP2
00003cdc: MSTORE
00003cdd: ADDRESS
00003cde: PUSH1 0x04
00003ce0: DUP3
00003ce1: ADD
00003ce2: MSTORE
00003ce3: PUSH1 0x24
00003ce5: SWAP1
00003ce6: REVERT
00003ce7: JUMPDEST
00003ce8: PUSH1 0x40
00003cea: MLOAD
00003ceb: PUSH4 0x3ee5aeb5
00003cf0: PUSH1 0xe0
00003cf2: SHL
00003cf3: DUP2
00003cf4: MSTORE
00003cf5: PUSH1 0x04
00003cf7: SWAP1
00003cf8: REVERT
00003cf9: JUMPDEST
00003cfa: PUSH1 0x98
00003cfc: SLOAD
00003cfd: SWAP1
00003cfe: PUSH1 0x01
00003d00: PUSH1 0x01
00003d02: PUSH1 0x80
00003d04: SHL
00003d05: SUB
00003d06: DUP3
00003d07: AND
00003d08: DUP2
00003d09: ISZERO
00003d0a: DUP1
00003d0b: ISZERO
00003d0c: PUSH2 0x3d28
00003d0f: JUMPI
00003d10: JUMPDEST
00003d11: ISZERO
00003d12: PUSH2 0x3d1b
00003d15: JUMPI
00003d16: POP
00003d17: SWAP1
00003d18: POP
00003d19: SWAP1
00003d1a: JUMP
00003d1b: JUMPDEST
00003d1c: PUSH2 0x0616
00003d1f: SWAP3
00003d20: PUSH1 0x80
00003d22: SHR
00003d23: SWAP2
00003d24: PUSH2 0x265c
00003d27: JUMP
00003d28: JUMPDEST
00003d29: POP
00003d2a: DUP1
00003d2b: ISZERO
00003d2c: PUSH2 0x3d10
00003d2f: JUMP
00003d30: JUMPDEST
00003d31: PUSH1 0x98
00003d33: SLOAD
00003d34: PUSH1 0x01
00003d36: PUSH1 0x01
00003d38: PUSH1 0x80
00003d3a: SHL
00003d3b: SUB
00003d3c: DUP2
00003d3d: AND
00003d3e: SWAP1
00003d3f: DUP3
00003d40: ISZERO
00003d41: DUP1
00003d42: ISZERO
00003d43: PUSH2 0x3d80
00003d46: JUMPI
00003d47: JUMPDEST
00003d48: ISZERO
00003d49: PUSH2 0x3d51
00003d4c: JUMPI
00003d4d: POP
00003d4e: POP
00003d4f: SWAP1
00003d50: JUMP
00003d51: JUMPDEST
00003d52: PUSH1 0x80
00003d54: SHR
00003d55: SWAP1
00003d56: PUSH2 0x3d60
00003d59: DUP3
00003d5a: DUP3
00003d5b: DUP6
00003d5c: PUSH2 0x265c
00003d5f: JUMP
00003d60: JUMPDEST
00003d61: SWAP3
00003d62: DUP3
00003d63: ISZERO
00003d64: PUSH2 0x2238
00003d67: JUMPI
00003d68: MULMOD
00003d69: PUSH2 0x3d6f
00003d6c: JUMPI
00003d6d: SWAP1
00003d6e: JUMP
00003d6f: JUMPDEST
00003d70: PUSH1 0x01
00003d72: DUP2
00003d73: ADD
00003d74: DUP1
00003d75: SWAP2
00003d76: GT
00003d77: ISZERO
00003d78: PUSH2 0x0616
00003d7b: JUMPI
00003d7c: PUSH2 0x1ddf
00003d7f: JUMP
00003d80: JUMPDEST
00003d81: POP
00003d82: DUP2
00003d83: ISZERO
00003d84: PUSH2 0x3d47
00003d87: JUMP
00003d88: JUMPDEST
00003d89: PUSH2 0x3d90
00003d8c: PUSH2 0x36fb
00003d8f: JUMP
00003d90: JUMPDEST
00003d91: PUSH1 0x01
00003d93: PUSH1 0x01
00003d95: PUSH1 0xa0
00003d97: SHL
00003d98: SUB
00003d99: AND
00003d9a: DUP1
00003d9b: ISZERO
00003d9c: PUSH2 0x3dd8
00003d9f: JUMPI
00003da0: PUSH1 0x65
00003da2: DUP1
00003da3: SLOAD
00003da4: PUSH1 0x01
00003da6: PUSH1 0x01
00003da8: PUSH1 0xa0
00003daa: SHL
00003dab: SUB
00003dac: NOT
00003dad: AND
00003dae: DUP3
00003daf: OR
00003db0: SWAP1
00003db1: SSTORE
00003db2: CALLER
00003db3: PUSH32 0xaaebcf1bfa00580e41d966056b48521fa9f202645c86d4ddf28113e617c1b1d3
00003dd4: PUSH0
00003dd5: DUP1
00003dd6: LOG3
00003dd7: JUMP
00003dd8: JUMPDEST
00003dd9: PUSH1 0x40
00003ddb: MLOAD
00003ddc: PUSH4 0x0ed1b8b3
00003de1: PUSH1 0xe3
00003de3: SHL
00003de4: DUP2
00003de5: MSTORE
00003de6: PUSH1 0x04
00003de8: SWAP1
00003de9: REVERT
00003dea: JUMPDEST
00003deb: SWAP2
00003dec: SWAP1
00003ded: PUSH2 0x3df4
00003df0: PUSH2 0x36fb
00003df3: JUMP
00003df4: JUMPDEST
00003df5: PUSH1 0x01
00003df7: PUSH1 0x01
00003df9: PUSH1 0xa0
00003dfb: SHL
00003dfc: SUB
00003dfd: DUP4
00003dfe: AND
00003dff: SWAP1
00003e00: DUP2
00003e01: ISZERO
00003e02: PUSH2 0x0aed
00003e05: JUMPI
00003e06: DUP1
00003e07: ISZERO
00003e08: PUSH2 0x3ea0
00003e0b: JUMPI
00003e0c: DUP1
00003e0d: PUSH2 0x3e1b
00003e10: PUSH2 0x194d
00003e13: PUSH1 0x98
00003e15: SLOAD
00003e16: PUSH1 0x80
00003e18: SHR
00003e19: SWAP1
00003e1a: JUMP
00003e1b: JUMPDEST
00003e1c: ADD
00003e1d: SWAP4
00003e1e: PUSH2 0x3e25
00003e21: PUSH2 0x204c
00003e24: JUMP
00003e25: JUMPDEST
00003e26: DUP6
00003e27: GT
00003e28: PUSH2 0x3e8e
00003e2b: JUMPI
00003e2c: PUSH2 0x0984
00003e2f: SWAP5
00003e30: PUSH2 0x3e4c
00003e33: SWAP2
00003e34: PUSH2 0x3e47
00003e37: PUSH2 0x3e3f
00003e3a: DUP6
00003e3b: PUSH2 0x3d30
00003e3e: JUMP
00003e3f: JUMPDEST
00003e40: SWAP8
00003e41: DUP9
00003e42: SWAP4
00003e43: PUSH2 0x3c2c
00003e46: JUMP
00003e47: JUMPDEST
00003e48: PUSH2 0x3f5e
00003e4b: JUMP
00003e4c: JUMPDEST
00003e4d: PUSH1 0x40
00003e4f: DUP1
00003e50: MLOAD
00003e51: SWAP2
00003e52: DUP3
00003e53: MSTORE
00003e54: PUSH1 0x20
00003e56: DUP3
00003e57: ADD
00003e58: DUP6
00003e59: SWAP1
00003e5a: MSTORE
00003e5b: PUSH0
00003e5c: SWAP1
00003e5d: DUP3
00003e5e: ADD
00003e5f: MSTORE
00003e60: CALLER
00003e61: SWAP1
00003e62: PUSH32 0x861a4138e41fb21c121a7dbb1053df465c837fc77380cc7226189a662281be2c
00003e83: SWAP1
00003e84: DUP1
00003e85: PUSH1 0x60
00003e87: DUP2
00003e88: ADD
00003e89: JUMPDEST
00003e8a: SUB
00003e8b: SWAP1
00003e8c: LOG3
00003e8d: JUMP
00003e8e: JUMPDEST
00003e8f: PUSH1 0x40
00003e91: MLOAD
00003e92: PUSH4 0x04ffa0ff
00003e97: PUSH1 0xe5
00003e99: SHL
00003e9a: DUP2
00003e9b: MSTORE
00003e9c: PUSH1 0x04
00003e9e: SWAP1
00003e9f: REVERT
00003ea0: JUMPDEST
00003ea1: PUSH1 0x40
00003ea3: MLOAD
00003ea4: PUSH4 0x18374fd1
00003ea9: PUSH1 0xe2
00003eab: SHL
00003eac: DUP2
00003ead: MSTORE
00003eae: PUSH1 0x04
00003eb0: SWAP1
00003eb1: REVERT
00003eb2: JUMPDEST
00003eb3: SWAP1
00003eb4: SWAP3
00003eb5: SWAP2
00003eb6: SWAP3
00003eb7: PUSH2 0x3ebe
00003eba: PUSH2 0x36fb
00003ebd: JUMP
00003ebe: JUMPDEST
00003ebf: PUSH1 0x01
00003ec1: PUSH1 0x01
00003ec3: PUSH1 0xa0
00003ec5: SHL
00003ec6: SUB
00003ec7: DUP3
00003ec8: AND
00003ec9: SWAP2
00003eca: DUP3
00003ecb: ISZERO
00003ecc: PUSH2 0x0aed
00003ecf: JUMPI
00003ed0: DUP2
00003ed1: ISZERO
00003ed2: PUSH2 0x3ea0
00003ed5: JUMPI
00003ed6: DUP2
00003ed7: PUSH2 0x3ee5
00003eda: PUSH2 0x194d
00003edd: PUSH1 0x98
00003edf: SLOAD
00003ee0: PUSH1 0x80
00003ee2: SHR
00003ee3: SWAP1
00003ee4: JUMP
00003ee5: JUMPDEST
00003ee6: ADD
00003ee7: PUSH2 0x3eee
00003eea: PUSH2 0x204c
00003eed: JUMP
00003eee: JUMPDEST
00003eef: DUP2
00003ef0: GT
00003ef1: PUSH2 0x3e8e
00003ef4: JUMPI
00003ef5: PUSH2 0x0984
00003ef8: SWAP6
00003ef9: PUSH2 0x3f35
00003efc: PUSH2 0x3e89
00003eff: SWAP3
00003f00: PUSH32 0x861a4138e41fb21c121a7dbb1053df465c837fc77380cc7226189a662281be2c
00003f21: SWAP5
00003f22: PUSH2 0x3e47
00003f25: PUSH2 0x3f2d
00003f28: DUP9
00003f29: PUSH2 0x3d30
00003f2c: JUMP
00003f2d: JUMPDEST
00003f2e: SWAP11
00003f2f: DUP12
00003f30: SWAP4
00003f31: PUSH2 0x3c2c
00003f34: JUMP
00003f35: JUMPDEST
00003f36: PUSH1 0x40
00003f38: DUP1
00003f39: MLOAD
00003f3a: SWAP5
00003f3b: DUP6
00003f3c: MSTORE
00003f3d: PUSH1 0x20
00003f3f: DUP6
00003f40: ADD
00003f41: DUP9
00003f42: SWAP1
00003f43: MSTORE
00003f44: PUSH1 0x01
00003f46: PUSH1 0x01
00003f48: PUSH1 0xa0
00003f4a: SHL
00003f4b: SUB
00003f4c: SWAP1
00003f4d: SWAP2
00003f4e: AND
00003f4f: SWAP1
00003f50: DUP5
00003f51: ADD
00003f52: MSTORE
00003f53: CALLER
00003f54: SWAP3
00003f55: SWAP1
00003f56: DUP2
00003f57: SWAP1
00003f58: PUSH1 0x60
00003f5a: DUP3
00003f5b: ADD
00003f5c: SWAP1
00003f5d: JUMP
00003f5e: JUMPDEST
00003f5f: PUSH2 0x3f67
00003f62: DUP3
00003f63: PUSH2 0x3c2c
00003f66: JUMP
00003f67: JUMPDEST
00003f68: PUSH1 0x98
00003f6a: SLOAD
00003f6b: SWAP1
00003f6c: PUSH2 0x3f7f
00003f6f: PUSH1 0x01
00003f71: PUSH1 0x01
00003f73: PUSH1 0x80
00003f75: SHL
00003f76: SUB
00003f77: SWAP2
00003f78: DUP3
00003f79: DUP5
00003f7a: AND
00003f7b: PUSH2 0x2af3
00003f7e: JUMP
00003f7f: JUMPDEST
00003f80: AND
00003f81: SWAP1
00003f82: PUSH1 0x01
00003f84: PUSH1 0x01
00003f86: PUSH1 0x80
00003f88: SHL
00003f89: SUB
00003f8a: NOT
00003f8b: AND
00003f8c: OR
00003f8d: PUSH1 0x98
00003f8f: SSTORE
00003f90: PUSH1 0x01
00003f92: DUP1
00003f93: PUSH1 0xa0
00003f95: SHL
00003f96: SUB
00003f97: AND
00003f98: PUSH0
00003f99: MSTORE
00003f9a: PUSH1 0x9c
00003f9c: PUSH1 0x20
00003f9e: MSTORE
00003f9f: PUSH1 0x40
00003fa1: PUSH0
00003fa2: KECCAK256
00003fa3: SWAP1
00003fa4: DUP2
00003fa5: SLOAD
00003fa6: ADD
00003fa7: SWAP1
00003fa8: SSTORE
00003fa9: JUMP
00003faa: JUMPDEST
00003fab: PUSH1 0x9a
00003fad: SLOAD
00003fae: SWAP1
00003faf: PUSH9 0x010000000000000000
00003fb9: DUP3
00003fba: LT
00003fbb: ISZERO
00003fbc: PUSH2 0x0ec1
00003fbf: JUMPI
00003fc0: PUSH1 0x01
00003fc2: DUP3
00003fc3: ADD
00003fc4: DUP1
00003fc5: PUSH1 0x9a
00003fc7: SSTORE
00003fc8: DUP3
00003fc9: LT
00003fca: ISZERO
00003fcb: PUSH2 0x2319
00003fce: JUMPI
00003fcf: PUSH1 0x9a
00003fd1: PUSH0
00003fd2: MSTORE
00003fd3: DUP1
00003fd4: MLOAD
00003fd5: PUSH1 0x20
00003fd7: SWAP1
00003fd8: SWAP2
00003fd9: ADD
00003fda: MLOAD
00003fdb: PUSH1 0xa0
00003fdd: SHL
00003fde: PUSH1 0x01
00003fe0: PUSH1 0x01
00003fe2: PUSH1 0xa0
00003fe4: SHL
00003fe5: SUB
00003fe6: NOT
00003fe7: AND
00003fe8: PUSH1 0x01
00003fea: PUSH1 0x01
00003fec: PUSH1 0xa0
00003fee: SHL
00003fef: SUB
00003ff0: SWAP2
00003ff1: SWAP1
00003ff2: SWAP2
00003ff3: AND
00003ff4: OR
00003ff5: PUSH0
00003ff6: DUP1
00003ff7: MLOAD
00003ff8: PUSH1 0x20
00003ffa: PUSH2 0x4a01
00003ffd: DUP4
00003ffe: CODECOPY
00003fff: DUP2
00004000: MLOAD
00004001: SWAP2
00004002: MSTORE
00004003: SWAP1
00004004: SWAP2
00004005: ADD
00004006: SSTORE
00004007: JUMP
00004008: JUMPDEST
00004009: SWAP1
0000400a: DUP2
0000400b: ISZERO
0000400c: PUSH2 0x40c4
0000400f: JUMPI
00004010: PUSH1 0x9a
00004012: SLOAD
00004013: DUP1
00004014: PUSH2 0x408e
00004017: JUMPI
00004018: POP
00004019: PUSH0
0000401a: SWAP1
0000401b: JUMPDEST
0000401c: PUSH1 0x01
0000401e: PUSH1 0x01
00004020: PUSH1 0xa0
00004022: SHL
00004023: SUB
00004024: SWAP2
00004025: DUP3
00004026: AND
00004027: SWAP3
00004028: DUP4
00004029: ADD
0000402a: SWAP3
0000402b: DUP4
0000402c: LT
0000402d: PUSH2 0x139d
00004030: JUMPI
00004031: DUP2
00004032: DUP4
00004033: GT
00004034: PUSH2 0x406e
00004037: JUMPI
00004038: PUSH2 0x2004
0000403b: SWAP3
0000403c: SWAP2
0000403d: PUSH2 0x4048
00004040: PUSH2 0x4069
00004043: SWAP3
00004044: PUSH2 0x47d1
00004047: JUMP
00004048: JUMPDEST
00004049: SWAP1
0000404a: PUSH1 0x40
0000404c: MLOAD
0000404d: SWAP4
0000404e: PUSH2 0x4056
00004051: DUP6
00004052: PUSH2 0x0ea6
00004055: JUMP
00004056: JUMPDEST
00004057: AND
00004058: DUP4
00004059: MSTORE
0000405a: PUSH1 0x01
0000405c: PUSH1 0x01
0000405e: PUSH1 0x60
00004060: SHL
00004061: SUB
00004062: AND
00004063: PUSH1 0x20
00004065: DUP4
00004066: ADD
00004067: MSTORE
00004068: JUMP
00004069: JUMPDEST
0000406a: PUSH2 0x3faa
0000406d: JUMP
0000406e: JUMPDEST
0000406f: PUSH1 0x40
00004071: MLOAD
00004072: PUSH4 0x06dfcc65
00004077: PUSH1 0xe4
00004079: SHL
0000407a: DUP2
0000407b: MSTORE
0000407c: PUSH1 0xa0
0000407e: PUSH1 0x04
00004080: DUP3
00004081: ADD
00004082: MSTORE
00004083: PUSH1 0x24
00004085: DUP2
00004086: ADD
00004087: DUP5
00004088: SWAP1
00004089: MSTORE
0000408a: PUSH1 0x44
0000408c: SWAP1
0000408d: REVERT
0000408e: JUMPDEST
0000408f: PUSH1 0x9a
00004091: PUSH0
00004092: MSTORE
00004093: PUSH32 0x44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be3
000040b4: ADD
000040b5: SLOAD
000040b6: PUSH1 0x01
000040b8: PUSH1 0x01
000040ba: PUSH1 0xa0
000040bc: SHL
000040bd: SUB
000040be: AND
000040bf: SWAP1
000040c0: PUSH2 0x401b
000040c3: JUMP
000040c4: JUMPDEST
000040c5: PUSH1 0x40
000040c7: MLOAD
000040c8: PUSH4 0x2ec8835b
000040cd: PUSH1 0xe2
000040cf: SHL
000040d0: DUP2
000040d1: MSTORE
000040d2: PUSH1 0x04
000040d4: SWAP1
000040d5: REVERT
000040d6: JUMPDEST
000040d7: SWAP1
000040d8: DUP1
000040d9: DUP3
000040da: LT
000040db: ISZERO
000040dc: PUSH2 0x40e3
000040df: JUMPI
000040e0: POP
000040e1: SWAP1
000040e2: JUMP
000040e3: JUMPDEST
000040e4: SWAP1
000040e5: POP
000040e6: SWAP1
000040e7: JUMP
000040e8: JUMPDEST
000040e9: PUSH2 0x40f0
000040ec: PUSH2 0x4804
000040ef: JUMP
000040f0: JUMPDEST
000040f1: ISZERO
000040f2: PUSH2 0x40f7
000040f5: JUMPI
000040f6: JUMP
000040f7: JUMPDEST
000040f8: PUSH1 0x40
000040fa: MLOAD
000040fb: PUSH4 0x0a62fbdb
00004100: PUSH1 0xe1
00004102: SHL
00004103: DUP2
00004104: MSTORE
00004105: PUSH1 0x04
00004107: SWAP1
00004108: REVERT
00004109: JUMPDEST
0000410a: PUSH1 0x40
0000410c: MLOAD
0000410d: PUSH4 0xe48a5f7b
00004112: PUSH1 0xe0
00004114: SHL
00004115: DUP2
00004116: MSTORE
00004117: ADDRESS
00004118: PUSH1 0x04
0000411a: DUP3
0000411b: ADD
0000411c: MSTORE
0000411d: PUSH1 0x01
0000411f: PUSH1 0x01
00004121: PUSH1 0xa0
00004123: SHL
00004124: SUB
00004125: PUSH1 0x60
00004127: DUP3
00004128: PUSH1 0x24
0000412a: DUP2
0000412b: PUSH32 0x000000000000000000000000287d1e2a8de183a8bf8f2b09fa1340fbd766eb59
0000414c: DUP6
0000414d: AND
0000414e: GAS
0000414f: STATICCALL
00004150: DUP1
00004151: ISZERO
00004152: PUSH2 0x0543
00004155: JUMPI
00004156: PUSH2 0x41a4
00004159: SWAP4
0000415a: PUSH1 0x01
0000415c: PUSH1 0x01
0000415e: PUSH1 0x40
00004160: SHL
00004161: SUB
00004162: PUSH2 0x07ea
00004165: PUSH1 0x40
00004167: PUSH2 0x4183
0000416a: SWAP5
0000416b: PUSH1 0x20
0000416d: SWAP8
0000416e: PUSH0
0000416f: SWAP2
00004170: PUSH2 0x41f4
00004173: JUMPI
00004174: JUMPDEST
00004175: POP
00004176: ADD
00004177: MLOAD
00004178: PUSH1 0x01
0000417a: PUSH1 0x01
0000417c: PUSH1 0x40
0000417e: SHL
0000417f: SUB
00004180: AND
00004181: SWAP1
00004182: JUMP
00004183: JUMPDEST
00004184: SWAP1
00004185: PUSH1 0x40
00004187: MLOAD
00004188: DUP1
00004189: DUP1
0000418a: SWAP6
0000418b: DUP2
0000418c: SWAP5
0000418d: PUSH4 0x63737ac9
00004192: PUSH1 0xe1
00004194: SHL
00004195: DUP4
00004196: MSTORE
00004197: PUSH1 0x04
00004199: DUP4
0000419a: ADD
0000419b: SWAP2
0000419c: SWAP1
0000419d: PUSH1 0x20
0000419f: DUP4
000041a0: ADD
000041a1: SWAP3
000041a2: MSTORE
000041a3: JUMP
000041a4: JUMPDEST
000041a5: SUB
000041a6: SWAP2
000041a7: PUSH32 0x0000000000000000000000002a261e60fb14586b474c208b1b7ac6d0f5000306
000041c8: AND
000041c9: GAS
000041ca: STATICCALL
000041cb: SWAP1
000041cc: DUP2
000041cd: ISZERO
000041ce: PUSH2 0x0543
000041d1: JUMPI
000041d2: PUSH0
000041d3: SWAP2
000041d4: PUSH2 0x41db
000041d7: JUMPI
000041d8: POP
000041d9: SWAP1
000041da: JUMP
000041db: JUMPDEST
000041dc: PUSH2 0x0616
000041df: SWAP2
000041e0: POP
000041e1: PUSH1 0x20
000041e3: RETURNDATASIZE
000041e4: PUSH1 0x20
000041e6: GT
000041e7: PUSH2 0x053c
000041ea: JUMPI
000041eb: PUSH2 0x052e
000041ee: DUP2
000041ef: DUP4
000041f0: PUSH2 0x0f0f
000041f3: JUMP
000041f4: JUMPDEST
000041f5: PUSH2 0x420d
000041f8: SWAP2
000041f9: POP
000041fa: PUSH1 0x60
000041fc: RETURNDATASIZE
000041fd: PUSH1 0x60
000041ff: GT
00004200: PUSH2 0x0abd
00004203: JUMPI
00004204: PUSH2 0x0aae
00004207: DUP2
00004208: DUP4
00004209: PUSH2 0x0f0f
0000420c: JUMP
0000420d: JUMPDEST
0000420e: PUSH0
0000420f: PUSH2 0x4174
00004212: JUMP
00004213: JUMPDEST
00004214: PUSH1 0x01
00004216: DUP1
00004217: PUSH1 0xa0
00004219: SHL
0000421a: SUB
0000421b: AND
0000421c: PUSH0
0000421d: MSTORE
0000421e: PUSH1 0x9c
00004220: PUSH1 0x20
00004222: MSTORE
00004223: PUSH1 0x40
00004225: PUSH0
00004226: KECCAK256
00004227: SWAP1
00004228: DUP2
00004229: SLOAD
0000422a: DUP2
0000422b: DUP2
0000422c: SUB
0000422d: SWAP1
0000422e: DUP2
0000422f: GT
00004230: PUSH2 0x139d
00004233: JUMPI
00004234: PUSH2 0x423d
00004237: SWAP3
00004238: SSTORE
00004239: PUSH2 0x3c2c
0000423c: JUMP
0000423d: JUMPDEST
0000423e: PUSH1 0x98
00004240: SLOAD
00004241: SWAP1
00004242: PUSH1 0x01
00004244: PUSH1 0x01
00004246: PUSH1 0x80
00004248: SHL
00004249: SUB
0000424a: SWAP1
0000424b: DUP2
0000424c: DUP4
0000424d: AND
0000424e: SUB
0000424f: AND
00004250: SWAP1
00004251: PUSH1 0x01
00004253: PUSH1 0x01
00004255: PUSH1 0x80
00004257: SHL
00004258: SUB
00004259: NOT
0000425a: AND
0000425b: OR
0000425c: PUSH1 0x98
0000425e: SSTORE
0000425f: JUMP
00004260: JUMPDEST
00004261: PUSH1 0xff
00004263: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00
00004284: SLOAD
00004285: PUSH1 0x40
00004287: SHR
00004288: AND
00004289: ISZERO
0000428a: PUSH2 0x428f
0000428d: JUMPI
0000428e: JUMP
0000428f: JUMPDEST
00004290: PUSH1 0x40
00004292: MLOAD
00004293: PUSH4 0x1afcd79f
00004298: PUSH1 0xe3
0000429a: SHL
0000429b: DUP2
0000429c: MSTORE
0000429d: PUSH1 0x04
0000429f: SWAP1
000042a0: REVERT
000042a1: JUMPDEST
000042a2: PUSH2 0x42a9
000042a5: PUSH2 0x4260
000042a8: JUMP
000042a9: JUMPDEST
000042aa: DUP1
000042ab: ISZERO
000042ac: PUSH2 0x42bf
000042af: JUMPI
000042b0: PUSH1 0x01
000042b2: DUP2
000042b3: ADD
000042b4: PUSH2 0x42ba
000042b7: JUMPI
000042b8: POP
000042b9: JUMP
000042ba: JUMPDEST
000042bb: PUSH1 0x9d
000042bd: SSTORE
000042be: JUMP
000042bf: JUMPDEST
000042c0: PUSH1 0x40
000042c2: MLOAD
000042c3: PUSH4 0x31278a87
000042c8: PUSH1 0xe0
000042ca: SHL
000042cb: DUP2
000042cc: MSTORE
000042cd: PUSH1 0x04
000042cf: SWAP1
000042d0: REVERT
000042d1: JUMPDEST
000042d2: PUSH2 0x42d9
000042d5: PUSH2 0x4260
000042d8: JUMP
000042d9: JUMPDEST
000042da: PUSH9 0x01bc16d674ec800000
000042e4: PUSH2 0x42eb
000042e7: PUSH2 0x204c
000042ea: JUMP
000042eb: JUMPDEST
000042ec: LT
000042ed: PUSH2 0x42bf
000042f0: JUMPI
000042f1: PUSH2 0x42f8
000042f4: PUSH2 0x4453
000042f7: JUMP
000042f8: JUMPDEST
000042f9: PUSH1 0xd3
000042fb: SSTORE
000042fc: JUMP
000042fd: JUMPDEST
000042fe: PUSH2 0x4305
00004301: PUSH2 0x4260
00004304: JUMP
00004305: JUMPDEST
00004306: PUSH1 0x01
00004308: PUSH1 0x01
0000430a: PUSH1 0xa0
0000430c: SHL
0000430d: SUB
0000430e: AND
0000430f: DUP1
00004310: PUSH2 0x4316
00004313: JUMPI
00004314: POP
00004315: JUMP
00004316: JUMPDEST
00004317: PUSH2 0x016a
0000431a: DUP1
0000431b: SLOAD
0000431c: PUSH1 0x01
0000431e: PUSH1 0x01
00004320: PUSH1 0xa0
00004322: SHL
00004323: SUB
00004324: NOT
00004325: AND
00004326: SWAP1
00004327: SWAP2
00004328: OR
00004329: SWAP1
0000432a: SSTORE
0000432b: JUMP
0000432c: JUMPDEST
0000432d: PUSH2 0x4334
00004330: PUSH2 0x4260
00004333: JUMP
00004334: JUMPDEST
00004335: PUSH2 0x433c
00004338: PUSH2 0x4260
0000433b: JUMP
0000433c: JUMPDEST
0000433d: PUSH2 0x4344
00004340: PUSH2 0x4260
00004343: JUMP
00004344: JUMPDEST
00004345: PUSH1 0x01
00004347: PUSH32 0x9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00
00004368: SSTORE
00004369: PUSH4 0x3b9aca00
0000436e: CALLVALUE
0000436f: LT
00004370: PUSH2 0x437d
00004373: JUMPI
00004374: PUSH2 0x1e85
00004377: CALLVALUE
00004378: ADDRESS
00004379: PUSH2 0x3dea
0000437c: JUMP
0000437d: JUMPDEST
0000437e: PUSH1 0x40
00004380: MLOAD
00004381: PUSH4 0xea2559bb
00004386: PUSH1 0xe0
00004388: SHL
00004389: DUP2
0000438a: MSTORE
0000438b: PUSH1 0x04
0000438d: SWAP1
0000438e: REVERT
0000438f: JUMPDEST
00004390: SWAP1
00004391: DUP2
00004392: PUSH1 0x20
00004394: SWAP2
00004395: SUB
00004396: SLT
00004397: PUSH2 0x02e7
0000439a: JUMPI
0000439b: MLOAD
0000439c: PUSH1 0xff
0000439e: DUP2
0000439f: AND
000043a0: DUP2
000043a1: SUB
000043a2: PUSH2 0x02e7
000043a5: JUMPI
000043a6: SWAP1
000043a7: JUMP
000043a8: JUMPDEST
000043a9: PUSH1 0x40
000043ab: MLOAD
000043ac: PUSH4 0x52d1902d
000043b1: PUSH1 0xe0
000043b3: SHL
000043b4: DUP2
000043b5: MSTORE
000043b6: SWAP3
000043b7: SWAP1
000043b8: SWAP2
000043b9: PUSH1 0x20
000043bb: DUP5
000043bc: PUSH1 0x04
000043be: DUP2
000043bf: PUSH1 0x01
000043c1: PUSH1 0x01
000043c3: PUSH1 0xa0
000043c5: SHL
000043c6: SUB
000043c7: DUP8
000043c8: AND
000043c9: GAS
000043ca: STATICCALL
000043cb: PUSH0
000043cc: SWAP5
000043cd: DUP2
000043ce: PUSH2 0x4432
000043d1: JUMPI
000043d2: JUMPDEST
000043d3: POP
000043d4: PUSH2 0x43f8
000043d7: JUMPI
000043d8: PUSH1 0x40
000043da: MLOAD
000043db: PUSH4 0x4c9c8ce3
000043e0: PUSH1 0xe0
000043e2: SHL
000043e3: DUP2
000043e4: MSTORE
000043e5: PUSH1 0x01
000043e7: PUSH1 0x01
000043e9: PUSH1 0xa0
000043eb: SHL
000043ec: SUB
000043ed: DUP5
000043ee: AND
000043ef: PUSH1 0x04
000043f1: DUP3
000043f2: ADD
000043f3: MSTORE
000043f4: PUSH1 0x24
000043f6: SWAP1
000043f7: REVERT
000043f8: JUMPDEST
000043f9: SWAP1
000043fa: SWAP2
000043fb: PUSH0
000043fc: DUP1
000043fd: MLOAD
000043fe: PUSH1 0x20
00004400: PUSH2 0x4a21
00004403: DUP4
00004404: CODECOPY
00004405: DUP2
00004406: MLOAD
00004407: SWAP2
00004408: MSTORE
00004409: DUP5
0000440a: SUB
0000440b: PUSH2 0x4419
0000440e: JUMPI
0000440f: PUSH2 0x2004
00004412: SWAP3
00004413: SWAP4
00004414: POP
00004415: PUSH2 0x4873
00004418: JUMP
00004419: JUMPDEST
0000441a: PUSH1 0x40
0000441c: MLOAD
0000441d: PUSH4 0x2a875269
00004422: PUSH1 0xe2
00004424: SHL
00004425: DUP2
00004426: MSTORE
00004427: PUSH1 0x04
00004429: DUP2
0000442a: ADD
0000442b: DUP6
0000442c: SWAP1
0000442d: MSTORE
0000442e: PUSH1 0x24
00004430: SWAP1
00004431: REVERT
00004432: JUMPDEST
00004433: PUSH2 0x444c
00004436: SWAP2
00004437: SWAP6
00004438: POP
00004439: PUSH1 0x20
0000443b: RETURNDATASIZE
0000443c: PUSH1 0x20
0000443e: GT
0000443f: PUSH2 0x053c
00004442: JUMPI
00004443: PUSH2 0x052e
00004446: DUP2
00004447: DUP4
00004448: PUSH2 0x0f0f
0000444b: JUMP
0000444c: JUMPDEST
0000444d: SWAP4
0000444e: PUSH0
0000444f: PUSH2 0x43d2
00004452: JUMP
00004453: JUMPDEST
00004454: PUSH15 0x5661756c7456616c696461746f7273
00004464: PUSH1 0x88
00004466: SHL
00004467: PUSH1 0x20
00004469: PUSH1 0x40
0000446b: MLOAD
0000446c: PUSH2 0x4474
0000446f: DUP2
00004470: PUSH2 0x0ea6
00004473: JUMP
00004474: JUMPDEST
00004475: PUSH1 0x0f
00004477: DUP2
00004478: MSTORE
00004479: ADD
0000447a: MSTORE
0000447b: PUSH1 0x40
0000447d: MLOAD
0000447e: PUSH1 0x20
00004480: DUP2
00004481: ADD
00004482: SWAP1
00004483: PUSH32 0x8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f
000044a4: DUP3
000044a5: MSTORE
000044a6: PUSH32 0x35d6cf9768d8be929c3a11ed667b1560ae6f1920195a985758fdd7265505d1ca
000044c7: PUSH1 0x40
000044c9: DUP3
000044ca: ADD
000044cb: MSTORE
000044cc: PUSH32 0xc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc6
000044ed: PUSH1 0x60
000044ef: DUP3
000044f0: ADD
000044f1: MSTORE
000044f2: CHAINID
000044f3: PUSH1 0x80
000044f5: DUP3
000044f6: ADD
000044f7: MSTORE
000044f8: ADDRESS
000044f9: PUSH1 0xa0
000044fb: DUP3
000044fc: ADD
000044fd: MSTORE
000044fe: PUSH1 0xa0
00004500: DUP2
00004501: MSTORE
00004502: PUSH1 0xc0
00004504: DUP2
00004505: ADD
00004506: DUP2
00004507: DUP2
00004508: LT
00004509: PUSH1 0x01
0000450b: PUSH1 0x01
0000450d: PUSH1 0x40
0000450f: SHL
00004510: SUB
00004511: DUP3
00004512: GT
00004513: OR
00004514: PUSH2 0x0ec1
00004517: JUMPI
00004518: PUSH1 0x40
0000451a: MSTORE
0000451b: MLOAD
0000451c: SWAP1
0000451d: KECCAK256
0000451e: SWAP1
0000451f: JUMP
00004520: JUMPDEST
00004521: DUP2
00004522: MLOAD
00004523: SWAP2
00004524: SWAP1
00004525: PUSH1 0x41
00004527: DUP4
00004528: SUB
00004529: PUSH2 0x4550
0000452c: JUMPI
0000452d: PUSH2 0x4549
00004530: SWAP3
00004531: POP
00004532: PUSH1 0x20
00004534: DUP3
00004535: ADD
00004536: MLOAD
00004537: SWAP1
00004538: PUSH1 0x60
0000453a: PUSH1 0x40
0000453c: DUP5
0000453d: ADD
0000453e: MLOAD
0000453f: SWAP4
00004540: ADD
00004541: MLOAD
00004542: PUSH0
00004543: BYTE
00004544: SWAP1
00004545: PUSH2 0x4915
00004548: JUMP
00004549: JUMPDEST
0000454a: SWAP2
0000454b: SWAP3
0000454c: SWAP1
0000454d: SWAP2
0000454e: SWAP1
0000454f: JUMP
00004550: JUMPDEST
00004551: POP
00004552: POP
00004553: PUSH0
00004554: SWAP2
00004555: PUSH1 0x02
00004557: SWAP2
00004558: SWAP1
00004559: JUMP
0000455a: JUMPDEST
0000455b: PUSH1 0x40
0000455d: MLOAD
0000455e: PUSH1 0x01
00004560: PUSH1 0xf8
00004562: SHL
00004563: PUSH1 0x20
00004565: DUP3
00004566: ADD
00004567: MSTORE
00004568: PUSH0
00004569: PUSH1 0x21
0000456b: DUP3
0000456c: ADD
0000456d: MSTORE
0000456e: ADDRESS
0000456f: PUSH1 0x60
00004571: SHL
00004572: PUSH1 0x2c
00004574: DUP3
00004575: ADD
00004576: MSTORE
00004577: PUSH1 0x20
00004579: DUP2
0000457a: MSTORE
0000457b: PUSH2 0x0616
0000457e: DUP2
0000457f: PUSH2 0x0ea6
00004582: JUMP
00004583: JUMPDEST
00004584: PUSH1 0x01
00004586: DUP1
00004587: PUSH1 0xa0
00004589: SHL
0000458a: SUB
0000458b: DUP2
0000458c: AND
0000458d: PUSH0
0000458e: MSTORE
0000458f: PUSH2 0x0137
00004592: PUSH1 0x20
00004594: MSTORE
00004595: PUSH1 0x40
00004597: PUSH0
00004598: KECCAK256
00004599: SWAP1
0000459a: PUSH1 0x40
0000459c: MLOAD
0000459d: SWAP2
0000459e: PUSH2 0x45a6
000045a1: DUP4
000045a2: PUSH2 0x0ea6
000045a5: JUMP
000045a6: JUMPDEST
000045a7: SLOAD
000045a8: SWAP1
000045a9: PUSH1 0x01
000045ab: PUSH1 0x01
000045ad: PUSH1 0x80
000045af: SHL
000045b0: SUB
000045b1: SWAP2
000045b2: DUP3
000045b3: DUP2
000045b4: AND
000045b5: SWAP1
000045b6: DUP2
000045b7: DUP6
000045b8: MSTORE
000045b9: PUSH1 0x80
000045bb: SHR
000045bc: PUSH1 0x20
000045be: DUP6
000045bf: ADD
000045c0: MSTORE
000045c1: ISZERO
000045c2: PUSH2 0x2a3f
000045c5: JUMPI
000045c6: PUSH2 0x2d8b
000045c9: PUSH2 0x080f
000045cc: PUSH2 0x45f9
000045cf: SWAP3
000045d0: PUSH2 0x45d7
000045d3: PUSH2 0x36fb
000045d6: JUMP
000045d7: JUMPDEST
000045d8: PUSH2 0x45e0
000045db: DUP7
000045dc: PUSH2 0x24b9
000045df: JUMP
000045e0: JUMPDEST
000045e1: PUSH1 0x01
000045e3: PUSH1 0x01
000045e5: PUSH1 0xa0
000045e7: SHL
000045e8: SUB
000045e9: AND
000045ea: PUSH0
000045eb: SWAP1
000045ec: DUP2
000045ed: MSTORE
000045ee: PUSH1 0x9c
000045f0: PUSH1 0x20
000045f2: MSTORE
000045f3: PUSH1 0x40
000045f5: SWAP1
000045f6: KECCAK256
000045f7: SWAP1
000045f8: JUMP
000045f9: JUMPDEST
000045fa: SWAP2
000045fb: MLOAD
000045fc: AND
000045fd: GT
000045fe: PUSH2 0x2ec1
00004601: JUMPI
00004602: JUMP
00004603: JUMPDEST
00004604: SWAP3
00004605: SWAP2
00004606: SWAP1
00004607: DUP1
00004608: ISZERO
00004609: PUSH2 0x1a9b
0000460c: JUMPI
0000460d: PUSH1 0x01
0000460f: PUSH1 0x01
00004611: PUSH1 0xa0
00004613: SHL
00004614: SUB
00004615: DUP3
00004616: DUP2
00004617: AND
00004618: SWAP3
00004619: DUP4
0000461a: ISZERO
0000461b: PUSH2 0x0aed
0000461e: JUMPI
0000461f: PUSH2 0x4629
00004622: PUSH2 0x16c0
00004625: PUSH2 0x4804
00004628: JUMP
00004629: JUMPDEST
0000462a: PUSH2 0x4716
0000462d: JUMPI
0000462e: SWAP1
0000462f: PUSH2 0x17ce
00004632: SWAP6
00004633: PUSH2 0x46fa
00004636: PUSH2 0x2baa
00004639: DUP6
0000463a: PUSH32 0x211091c5bf013c1230f996c3bb2bc327e3de429a3d3c356dcea9a0c858bc407f
0000465b: SWAP6
0000465c: DUP2
0000465d: PUSH2 0x46cf
00004660: PUSH2 0x4674
00004663: PUSH2 0x194d
00004666: PUSH1 0x99
00004668: SLOAD
00004669: PUSH1 0x01
0000466b: PUSH1 0x01
0000466d: PUSH1 0x80
0000466f: SHL
00004670: SUB
00004671: AND
00004672: SWAP1
00004673: JUMP
00004674: JUMPDEST
00004675: SWAP3
00004676: PUSH2 0x20b8
00004679: PUSH2 0x46a1
0000467c: DUP6
0000467d: PUSH2 0x469c
00004680: PUSH2 0x4687
00004683: PUSH2 0x478f
00004686: JUMP
00004687: JUMPDEST
00004688: PUSH2 0x4696
0000468b: PUSH2 0x194d
0000468e: PUSH1 0x9e
00004690: SLOAD
00004691: PUSH1 0x80
00004693: SHR
00004694: SWAP1
00004695: JUMP
00004696: JUMPDEST
00004697: SWAP1
00004698: PUSH2 0x2281
0000469b: JUMP
0000469c: JUMPDEST
0000469d: PUSH2 0x2281
000046a0: JUMP
000046a1: JUMPDEST
000046a2: SWAP15
000046a3: DUP16
000046a4: PUSH1 0x40
000046a6: MLOAD
000046a7: SWAP3
000046a8: DUP4
000046a9: SWAP2
000046aa: PUSH1 0x20
000046ac: DUP4
000046ad: ADD
000046ae: SWAP6
000046af: TIMESTAMP
000046b0: SWAP1
000046b1: DUP8
000046b2: PUSH1 0x40
000046b4: SWAP2
000046b5: SWAP5
000046b6: SWAP4
000046b7: SWAP3
000046b8: PUSH1 0x60
000046ba: DUP3
000046bb: ADD
000046bc: SWAP6
000046bd: PUSH1 0x01
000046bf: DUP1
000046c0: PUSH1 0xa0
000046c2: SHL
000046c3: SUB
000046c4: AND
000046c5: DUP3
000046c6: MSTORE
000046c7: PUSH1 0x20
000046c9: DUP3
000046ca: ADD
000046cb: MSTORE
000046cc: ADD
000046cd: MSTORE
000046ce: JUMP
000046cf: JUMPDEST
000046d0: SSTORE
000046d1: PUSH1 0x01
000046d3: PUSH1 0x01
000046d5: PUSH1 0xa0
000046d7: SHL
000046d8: SUB
000046d9: DUP6
000046da: AND
000046db: PUSH0
000046dc: SWAP1
000046dd: DUP2
000046de: MSTORE
000046df: PUSH1 0x9c
000046e1: PUSH1 0x20
000046e3: MSTORE
000046e4: PUSH1 0x40
000046e6: SWAP1
000046e7: KECCAK256
000046e8: PUSH2 0x46f2
000046eb: DUP4
000046ec: DUP3
000046ed: SLOAD
000046ee: PUSH2 0x207b
000046f1: JUMP
000046f2: JUMPDEST
000046f3: SWAP1
000046f4: SSTORE
000046f5: ADD
000046f6: PUSH2 0x3c2c
000046f9: JUMP
000046fa: JUMPDEST
000046fb: PUSH1 0x40
000046fd: DUP1
000046fe: MLOAD
000046ff: DUP9
00004700: DUP2
00004701: MSTORE
00004702: PUSH1 0x20
00004704: DUP2
00004705: ADD
00004706: SWAP6
00004707: SWAP1
00004708: SWAP6
00004709: MSTORE
0000470a: SWAP2
0000470b: AND
0000470c: SWAP3
0000470d: SWAP1
0000470e: DUP2
0000470f: SWAP1
00004710: DUP2
00004711: ADD
00004712: PUSH2 0x3e89
00004715: JUMP
00004716: JUMPDEST
00004717: SWAP3
00004718: SWAP4
00004719: SWAP5
0000471a: PUSH2 0x4722
0000471d: DUP4
0000471e: PUSH2 0x1e3e
00004721: JUMP
00004722: JUMPDEST
00004723: SWAP4
00004724: DUP5
00004725: ISZERO
00004726: PUSH2 0x3ea0
00004729: JUMPI
0000472a: PUSH32 0x5cdf07ad0fc222442720b108e3ed4c4640f0fadc2ab2253e66f259a0fea83480
0000474b: SWAP4
0000474c: PUSH2 0x476c
0000474f: DUP7
00004750: PUSH2 0x4787
00004753: SWAP4
00004754: PUSH2 0x4762
00004757: PUSH2 0x0984
0000475a: PUSH2 0x2c58
0000475d: DUP5
0000475e: PUSH2 0x3c2c
00004761: JUMP
00004762: JUMPDEST
00004763: PUSH2 0x325f
00004766: DUP5
00004767: DUP8
00004768: PUSH2 0x4213
0000476b: JUMP
0000476c: JUMPDEST
0000476d: PUSH1 0x40
0000476f: MLOAD
00004770: SWAP4
00004771: DUP5
00004772: SWAP4
00004773: AND
00004774: SWAP6
00004775: DUP4
00004776: PUSH1 0x20
00004778: SWAP1
00004779: SWAP4
0000477a: SWAP3
0000477b: SWAP2
0000477c: SWAP4
0000477d: PUSH1 0x40
0000477f: DUP2
00004780: ADD
00004781: SWAP5
00004782: DUP2
00004783: MSTORE
00004784: ADD
00004785: MSTORE
00004786: JUMP
00004787: JUMPDEST
00004788: SUB
00004789: SWAP1
0000478a: LOG3
0000478b: PUSH0
0000478c: NOT
0000478d: SWAP1
0000478e: JUMP
0000478f: JUMPDEST
00004790: PUSH1 0x9a
00004792: SLOAD
00004793: DUP1
00004794: PUSH2 0x479c
00004797: JUMPI
00004798: POP
00004799: PUSH0
0000479a: SWAP1
0000479b: JUMP
0000479c: JUMPDEST
0000479d: PUSH1 0x9a
0000479f: PUSH0
000047a0: MSTORE
000047a1: PUSH32 0x44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be3
000047c2: ADD
000047c3: SLOAD
000047c4: PUSH1 0x01
000047c6: PUSH1 0x01
000047c8: PUSH1 0xa0
000047ca: SHL
000047cb: SUB
000047cc: AND
000047cd: PUSH2 0x11f4
000047d0: JUMP
000047d1: JUMPDEST
000047d2: PUSH1 0x01
000047d4: PUSH1 0x01
000047d6: PUSH1 0x60
000047d8: SHL
000047d9: SUB
000047da: SWAP1
000047db: DUP2
000047dc: DUP2
000047dd: GT
000047de: PUSH2 0x47e5
000047e1: JUMPI
000047e2: AND
000047e3: SWAP1
000047e4: JUMP
000047e5: JUMPDEST
000047e6: PUSH1 0x44
000047e8: SWAP1
000047e9: PUSH1 0x40
000047eb: MLOAD
000047ec: SWAP1
000047ed: PUSH4 0x06dfcc65
000047f2: PUSH1 0xe4
000047f4: SHL
000047f5: DUP3
000047f6: MSTORE
000047f7: PUSH1 0x60
000047f9: PUSH1 0x04
000047fb: DUP4
000047fc: ADD
000047fd: MSTORE
000047fe: PUSH1 0x24
00004800: DUP3
00004801: ADD
00004802: MSTORE
00004803: REVERT
00004804: JUMPDEST
00004805: PUSH1 0x40
00004807: MLOAD
00004808: PUSH4 0x0156a695
0000480d: PUSH1 0xe1
0000480f: SHL
00004810: DUP2
00004811: MSTORE
00004812: ADDRESS
00004813: PUSH1 0x04
00004815: DUP3
00004816: ADD
00004817: MSTORE
00004818: PUSH1 0x20
0000481a: DUP2
0000481b: PUSH1 0x24
0000481d: DUP2
0000481e: PUSH32 0x0000000000000000000000006b5815467da09daa7dc83db21c9239d98bb487b5
0000483f: PUSH1 0x01
00004841: PUSH1 0x01
00004843: PUSH1 0xa0
00004845: SHL
00004846: SUB
00004847: AND
00004848: GAS
00004849: STATICCALL
0000484a: SWAP1
0000484b: DUP2
0000484c: ISZERO
0000484d: PUSH2 0x0543
00004850: JUMPI
00004851: PUSH0
00004852: SWAP2
00004853: PUSH2 0x485a
00004856: JUMPI
00004857: POP
00004858: SWAP1
00004859: JUMP
0000485a: JUMPDEST
0000485b: PUSH2 0x0616
0000485e: SWAP2
0000485f: POP
00004860: PUSH1 0x20
00004862: RETURNDATASIZE
00004863: PUSH1 0x20
00004865: GT
00004866: PUSH2 0x10f9
00004869: JUMPI
0000486a: PUSH2 0x10ea
0000486d: DUP2
0000486e: DUP4
0000486f: PUSH2 0x0f0f
00004872: JUMP
00004873: JUMPDEST
00004874: SWAP1
00004875: DUP2
00004876: EXTCODESIZE
00004877: ISZERO
00004878: PUSH2 0x48f4
0000487b: JUMPI
0000487c: PUSH0
0000487d: DUP1
0000487e: MLOAD
0000487f: PUSH1 0x20
00004881: PUSH2 0x4a21
00004884: DUP4
00004885: CODECOPY
00004886: DUP2
00004887: MLOAD
00004888: SWAP2
00004889: MSTORE
0000488a: DUP1
0000488b: SLOAD
0000488c: PUSH1 0x01
0000488e: PUSH1 0x01
00004890: PUSH1 0xa0
00004892: SHL
00004893: SUB
00004894: NOT
00004895: AND
00004896: PUSH1 0x01
00004898: PUSH1 0x01
0000489a: PUSH1 0xa0
0000489c: SHL
0000489d: SUB
0000489e: DUP5
0000489f: AND
000048a0: SWAP1
000048a1: DUP2
000048a2: OR
000048a3: SWAP1
000048a4: SWAP2
000048a5: SSTORE
000048a6: PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b
000048c7: PUSH0
000048c8: DUP1
000048c9: LOG2
000048ca: DUP1
000048cb: MLOAD
000048cc: ISZERO
000048cd: PUSH2 0x48d9
000048d0: JUMPI
000048d1: PUSH2 0x1e85
000048d4: SWAP2
000048d5: PUSH2 0x4997
000048d8: JUMP
000048d9: JUMPDEST
000048da: POP
000048db: POP
000048dc: CALLVALUE
000048dd: PUSH2 0x48e2
000048e0: JUMPI
000048e1: JUMP
000048e2: JUMPDEST
000048e3: PUSH1 0x40
000048e5: MLOAD
000048e6: PUSH4 0xb398979f
000048eb: PUSH1 0xe0
000048ed: SHL
000048ee: DUP2
000048ef: MSTORE
000048f0: PUSH1 0x04
000048f2: SWAP1
000048f3: REVERT
000048f4: JUMPDEST
000048f5: PUSH1 0x40
000048f7: MLOAD
000048f8: PUSH4 0x4c9c8ce3
000048fd: PUSH1 0xe0
000048ff: SHL
00004900: DUP2
00004901: MSTORE
00004902: PUSH1 0x01
00004904: PUSH1 0x01
00004906: PUSH1 0xa0
00004908: SHL
00004909: SUB
0000490a: DUP4
0000490b: AND
0000490c: PUSH1 0x04
0000490e: DUP3
0000490f: ADD
00004910: MSTORE
00004911: PUSH1 0x24
00004913: SWAP1
00004914: REVERT
00004915: JUMPDEST
00004916: SWAP2
00004917: SWAP1
00004918: PUSH32 0x7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0
00004939: DUP5
0000493a: GT
0000493b: PUSH2 0x498c
0000493e: JUMPI
0000493f: SWAP2
00004940: PUSH1 0x20
00004942: SWAP4
00004943: PUSH1 0x80
00004945: SWAP3
00004946: PUSH1 0xff
00004948: PUSH0
00004949: SWAP6
0000494a: PUSH1 0x40
0000494c: MLOAD
0000494d: SWAP5
0000494e: DUP6
0000494f: MSTORE
00004950: AND
00004951: DUP7
00004952: DUP5
00004953: ADD
00004954: MSTORE
00004955: PUSH1 0x40
00004957: DUP4
00004958: ADD
00004959: MSTORE
0000495a: PUSH1 0x60
0000495c: DUP3
0000495d: ADD
0000495e: MSTORE
0000495f: DUP3
00004960: DUP1
00004961: MSTORE
00004962: PUSH1 0x01
00004964: GAS
00004965: STATICCALL
00004966: ISZERO
00004967: PUSH2 0x0543
0000496a: JUMPI
0000496b: PUSH0
0000496c: MLOAD
0000496d: PUSH1 0x01
0000496f: PUSH1 0x01
00004971: PUSH1 0xa0
00004973: SHL
00004974: SUB
00004975: DUP2
00004976: AND
00004977: ISZERO
00004978: PUSH2 0x4982
0000497b: JUMPI
0000497c: SWAP1
0000497d: PUSH0
0000497e: SWAP1
0000497f: PUSH0
00004980: SWAP1
00004981: JUMP
00004982: JUMPDEST
00004983: POP
00004984: PUSH0
00004985: SWAP1
00004986: PUSH1 0x01
00004988: SWAP1
00004989: PUSH0
0000498a: SWAP1
0000498b: JUMP
0000498c: JUMPDEST
0000498d: POP
0000498e: POP
0000498f: POP
00004990: PUSH0
00004991: SWAP2
00004992: PUSH1 0x03
00004994: SWAP2
00004995: SWAP1
00004996: JUMP
00004997: JUMPDEST
00004998: PUSH0
00004999: DUP1
0000499a: PUSH2 0x0616
0000499d: SWAP4
0000499e: PUSH1 0x20
000049a0: DUP2
000049a1: MLOAD
000049a2: SWAP2
000049a3: ADD
000049a4: DUP5
000049a5: GAS
000049a6: DELEGATECALL
000049a7: PUSH2 0x49ae
000049aa: PUSH2 0x232b
000049ad: JUMP
000049ae: JUMPDEST
000049af: SWAP2
000049b0: SWAP1
000049b1: PUSH2 0x49c4
000049b4: JUMPI
000049b5: POP
000049b6: DUP1
000049b7: MLOAD
000049b8: ISZERO
000049b9: PUSH2 0x3cbd
000049bc: JUMPI
000049bd: DUP1
000049be: MLOAD
000049bf: SWAP1
000049c0: PUSH1 0x20
000049c2: ADD
000049c3: REVERT
000049c4: JUMPDEST
000049c5: DUP2
000049c6: MLOAD
000049c7: ISZERO
000049c8: DUP1
000049c9: PUSH2 0x49f7
000049cc: JUMPI
000049cd: JUMPDEST
000049ce: PUSH2 0x49d5
000049d1: JUMPI
000049d2: POP
000049d3: SWAP1
000049d4: JUMP
000049d5: JUMPDEST
000049d6: PUSH1 0x40
000049d8: MLOAD
000049d9: PUSH4 0x9996b315
000049de: PUSH1 0xe0
000049e0: SHL
000049e1: DUP2
000049e2: MSTORE
000049e3: PUSH1 0x01
000049e5: PUSH1 0x01
000049e7: PUSH1 0xa0
000049e9: SHL
000049ea: SUB
000049eb: SWAP1
000049ec: SWAP2
000049ed: AND
000049ee: PUSH1 0x04
000049f0: DUP3
000049f1: ADD
000049f2: MSTORE
000049f3: PUSH1 0x24
000049f5: SWAP1
000049f6: REVERT
000049f7: JUMPDEST
000049f8: POP
000049f9: DUP1
000049fa: EXTCODESIZE
000049fb: ISZERO
000049fc: PUSH2 0x49cd
000049ff: JUMP
00004a00: INVALID
00004a01: DIFFICULTY
00004a02: UNKNOWN(0xDA)
00004a03: ISZERO
00004a04: DUP12
00004a05: LOG2
00004a06: PUSH32 0x9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be4360894a13ba1
00004a27: LOG3
00004a28: UNKNOWN(0x21)
00004a29: MOD
00004a2a: PUSH8 0xc828492db98dca3e
00004a33: KECCAK256
00004a34: PUSH23 0xcc3735a920a3ca505d382bbca26469706673582212206d
00004a4c: UNKNOWN(0x4D)
00004a4d: UNKNOWN(0xF6)
00004a4e: GT
00004a4f: PC
00004a50: SWAP3
00004a51: UNKNOWN(0x21)
00004a52: DUP9
00004a53: DUP9
00004a54: RETURNDATASIZE
00004a55: UNKNOWN(0xDE)
00004a56: SHL
00004a57: SLT
00004a58: DUP15
00004a59: STOP
00004a5a: CALLDATALOAD
00004a5b: CODECOPY
00004a5c: UNKNOWN(0xE8)
00004a5d: UNKNOWN(0xDD)
00004a5e: LOG3
00004a5f: UNKNOWN(0xE8)
00004a60: MSTORE8
00004a61: SMOD
00004a62: DUP7
00004a63: LOG2
00004a64: PUSH24

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
critical upgradeability detector Untrusted DELEGATECALL target reachable 70 no no
view
trace_id: 0x94106f70913849b7b4dfb3c075c2c848af7682699f67bf3a5cd58e13f61ca2ac
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 0,
    "status": "unknown",
    "attempts": 192,
    "trace_id": "0x94106f70913849b7b4dfb3c075c2c848af7682699f67bf3a5cd58e13f61ca2ac",
    "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": "0x18f72950",
            "selector": "0x18f72950",
            "calldata_variants": [
                "0x18f72950",
                "0x18f729500000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1a7ff553",
            "selector": "0x1a7ff553",
            "calldata_variants": [
                "0x1a7ff553",
                "0x1a7ff5530000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x201b9eb5",
            "selector": "0x201b9eb5",
            "calldata_variants": [
                "0x201b9eb5",
                "0x201b9eb50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2999ad3f",
            "selector": "0x2999ad3f",
            "calldata_variants": [
                "0x2999ad3f",
                "0x2999ad3f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 9227,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        },
        {
            "pc": 18854,
            "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
view
trace_id: 0x36799997cb959c540b793ca1f9f8f9a805830ac814dff63ca0cc1c838cad0fcf
call_targets: 0xdecb606ee9140f229df78f9e40041ead61610f8f
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x36799997cb959c540b793ca1f9f8f9a805830ac814dff63ca0cc1c838cad0fcf",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xdecb606ee9140f229df78f9e40041ead61610f8f"
    ],
    "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": "0x18f72950",
            "selector": "0x18f72950",
            "calldata_variants": [
                "0x18f72950",
                "0x18f729500000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1a7ff553",
            "selector": "0x1a7ff553",
            "calldata_variants": [
                "0x1a7ff553",
                "0x1a7ff5530000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x201b9eb5",
            "selector": "0x201b9eb5",
            "calldata_variants": [
                "0x201b9eb5",
                "0x201b9eb50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2999ad3f",
            "selector": "0x2999ad3f",
            "calldata_variants": [
                "0x2999ad3f",
                "0x2999ad3f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1046,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1737,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2275,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 14,
    "guards_detected": [],
    "untrusted_call_count": 14
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x36799997cb959c540b793ca1f9f8f9a805830ac814dff63ca0cc1c838cad0fcf
call_targets: 0xdecb606ee9140f229df78f9e40041ead61610f8f
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x36799997cb959c540b793ca1f9f8f9a805830ac814dff63ca0cc1c838cad0fcf",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xdecb606ee9140f229df78f9e40041ead61610f8f"
    ],
    "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": "0x18f72950",
            "selector": "0x18f72950",
            "calldata_variants": [
                "0x18f72950",
                "0x18f729500000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1a7ff553",
            "selector": "0x1a7ff553",
            "calldata_variants": [
                "0x1a7ff553",
                "0x1a7ff5530000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x201b9eb5",
            "selector": "0x201b9eb5",
            "calldata_variants": [
                "0x201b9eb5",
                "0x201b9eb50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2999ad3f",
            "selector": "0x2999ad3f",
            "calldata_variants": [
                "0x2999ad3f",
                "0x2999ad3f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1046,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1737,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2275,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 14,
    "guards_detected": []
}
medium upgradeability cast DELEGATECALL present 80 no
view
evidence_json
{
    "notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
    "delegatecall_count": 2
}
info other cast Heavy EXTCODE*/BALANCE usage 55 no
view
evidence_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
view
evidence_json
{
    "notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
    "call_family_count": 36
}