019be3d8-dab2-7125-9844-e6c896367631
Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?
| ID | Type | Status | Attempts | Heartbeat |
|---|---|---|---|---|
| 41396 | artifact.fetch | complete | 1 / 3 | 2 months ago |
| 41397 | proxy.resolve | complete | 1 / 3 | 2 months ago |
| 41398 | tool.cast_disasm | complete | 1 / 3 | 2 months ago |
| 41399 | analysis.bundle | complete | 1 / 3 | 2 months ago |
| 41400 | capability.graph | complete | 1 / 3 | 2 months ago |
| 41401 | detector.run | complete | 1 / 3 | 2 months ago |
| 41402 | validation.fork | complete | 1 / 3 | 2 months ago |
| 41470 | report.consolidate | complete | 1 / 6 | 2 months ago |
| 41471 | tool.slither | failed | 2 / 2 | 2 months ago |
{
"status": "not_proxy"
}
Traceback (most recent call last):
File "/var/www/tripwire/worker/worker.py", line 198, in main
payload = dispatch_job(job_type, job_id, job_meta, run_data, config, laravel_client)
File "/var/www/tripwire/worker/worker.py", line 114, in dispatch_job
return slither_run.run(job_id, job_meta, run_data, config, log, laravel_client)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/var/www/tripwire/worker/jobs/slither_run.py", line 1084, in run
stdout_text, stderr_text, result_json = _run_slither(
~~~~~~~~~~~~^
workspace,
^^^^^^^^^^
...<4 lines>...
target_path=target_path,
^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/var/www/tripwire/worker/jobs/slither_run.py", line 958, in _run_slither
raise RuntimeError(f"slither failed (exit {result.returncode}): {stderr_text or stdout_text}")
RuntimeError: slither failed (exit 1): 'forge clean' running (wd: /tmp/slither-bmgdv61p)
'forge config --json' running
'forge build --build-info --skip ./test/** ./script/** --force' running (wd: /tmp/slither-bmgdv61p)
'forge' returned non-zero exit code 1
Compiling 67 files with Solc 0.8.25
stdout: Solc 0.8.25 finished in 1.24s
Error: Compiler run failed:
stderr: Error: Compiler error (/solidity/libsolidity/codegen/LValue.cpp:51):Stack too deep. Try compiling with `--via-ir` (cli) or the equivalent `viaIR: true` (standard JSON) while enabling the optimizer. Otherwise, try removing local variables.
stderr: --> contracts/main/RedeemOperator.sol:274:47:
stderr: |
stderr: 274 | _withdrawalRequestInstant[_epoch][thisUser_].mulDiv(assetPerShare_, PRECISION, Math.Rounding.Floor);
stderr: | ^^^^^^
Traceback (most recent call last):
File "/var/www/tripwire/.venv/bin/slither", line 10, in <module>
sys.exit(main())
~~~~^^
File "/var/www/tripwire/.venv/lib/python3.13/site-packages/slither/__main__.py", line 776, in main
main_impl(all_detector_classes=detectors, all_printer_classes=printers)
~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/var/www/tripwire/.venv/lib/python3.13/site-packages/slither/__main__.py", line 882, in main_impl
) = process_all(filename, args, detector_classes, printer_classes)
~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/var/www/tripwire/.venv/lib/python3.13/site-packages/slither/__main__.py", line 96, in process_all
compilations = compile_all(target, **vars(args))
File "/var/www/tripwire/.venv/lib/python3.13/site-packages/crytic_compile/crytic_compile.py", line 722, in compile_all
compilations.append(CryticCompile(target, **kwargs))
~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
File "/var/www/tripwire/.venv/lib/python3.13/site-packages/crytic_compile/crytic_compile.py", line 211, in __init__
self._compile(**kwargs)
~~~~~~~~~~~~~^^^^^^^^^^
File "/var/www/tripwire/.venv/lib/python3.13/site-packages/crytic_compile/crytic_compile.py", line 633, in _compile
self._platform.compile(self, **kwargs)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
File "/var/www/tripwire/.venv/lib/python3.13/site-packages/crytic_compile/platform/foundry.py", line 102, in compile
hardhat_like_parsing(
~~~~~~~~~~~~~~~~~~~~^
crytic_compile, str(self._target), build_directory, str(self._project_root)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/var/www/tripwire/.venv/lib/python3.13/site-packages/crytic_compile/platform/hardhat.py", line 52, in hardhat_like_parsing
raise InvalidCompilation(txt)
crytic_compile.platform.exceptions.InvalidCompilation: Compilation failed. Can you run build command?
/tmp/slither-bmgdv61p/out/build-info is not a directory.
{"no_findings":false,"summary":"Found 3 issues: oracle pricing used without staleness/validity checks for MF_ONE valuation, strategy proxy admin not tied to current ownership, and a rapid refund accounting bug that never restores instant redeem limits.","findings":[{"severity":"high","category":"oracle","title":"MF_ONE valuation uses unvalidated oracle price for share minting and TVL","exploit_scenario":"An attacker who can manipulate or serve a stale/high price from `IMidasOracle.lastAnswer()` can deposit MF_ONE and receive inflated share issuance. Those shares can later be redeemed for USDC at the (lower) fair exchange price, draining vault assets. The same oracle value is also used to compute TVL/exchange price, amplifying the pricing distortion.","recommendation":"Use an oracle interface that exposes round data (e.g., `latestRoundData`) with staleness checks, enforce max deviation bounds, and/or use TWAPs. Consider rejecting deposits and price updates when the oracle is stale or outside expected bounds.","evidence":"MF_ONE deposits and TVL rely on `IMidasOracle(MIDAS_ORACLE).lastAnswer()` with only a non-negative check and no staleness or bounds validation.","locations":["contracts/main/Vault.sol:43","contracts/main/Vault.sol:96","contracts/main/strategies/morpho/StrategyMorphoBlue.sol:380"]},{"severity":"medium","category":"upgradeability","title":"Strategy proxy admin fixed to creator, not current owner","exploit_scenario":"Strategies are deployed via `TransparentUpgradeableProxy` with admin set to `msg.sender`. If vault ownership changes later, the old owner retains proxy admin rights and can still upgrade strategy implementations to malicious code that drains assets, while the new owner cannot upgrade.","recommendation":"Use a dedicated `ProxyAdmin` controlled by current ownership, or track the proxy admin and update it on ownership transfers. Avoid setting the proxy admin to the caller directly.","evidence":"`createStrategy` sets proxy admin to `msg.sender` without any linkage to `OwnableUpgradeable` ownership changes.","locations":["contracts/main/vault/StrategyFactory.sol:90"]},{"severity":"low","category":"other","title":"Rapid withdrawal refunds do not restore instant redeem limits","exploit_scenario":"When a rapid withdrawal is refunded, the vault’s instant redeem limit for the user is not restored because the amount is deleted before being passed to `refundInstantLimit`. This can permanently reduce a user’s rapid redeem allowance within the epoch and be used by the operator to grief users.","recommendation":"Cache the withdrawal amount before deletion and call `refundInstantLimit` with that value, or reorder the operations to refund the limit first.","evidence":"`_withdrawalRequestInstant` is deleted before calling `refundInstantLimit`, so the refund amount is always zero.","locations":["contracts/main/RedeemOperator.sol:300"]}]}
OpenAI Codex v0.77.0 (research preview)
--------
workdir: /tmp/codex-zbjc3o22
model: gpt-5.2-codex
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: auto
session id: 019be4d6-3fac-7be3-b428-dbbdd2a04f4f
--------
user
You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
Scope rules:
- You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party Solidity sources in this workspace.
- Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
- If there are only dependency files and no first-party sources, set no_findings=true and explain in summary.
Output MUST be valid JSON matching the provided schema.
- If you find nothing meaningful: set no_findings=true and findings=[].
- Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
Output constraints (IMPORTANT):
- severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
- category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
Keep summary short and concrete.
mcp startup: no servers
thinking
**Deciding read method**
Since the instructions don't require special parsing, I'll use simple shell cat to read the AUDIT_BUNDLE file in read-only mode instead of ripgrep.
exec
/bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-zbjc3o22 succeeded in 7ms:
This file concatenates the full contents of first-party Solidity sources for auditing.
Do not treat dependency code under lib/ or @openzeppelin/ as first-party.
================================================================================
FILE: @morpho-org/morpho-blue/src/interfaces/IIrm.sol
================================================================================
// SPDX-License-Identifier: GPL-2.0-or-later
pragma solidity >=0.5.0;
import {MarketParams, Market} from "./IMorpho.sol";
/// @title IIrm
/// @author Morpho Labs
/// @custom:contact security@morpho.org
/// @notice Interface that Interest Rate Models (IRMs) used by Morpho must implement.
interface IIrm {
/// @notice Returns the borrow rate per second (scaled by WAD) of the market `marketParams`.
/// @dev Assumes that `market` corresponds to `marketParams`.
function borrowRate(MarketParams memory marketParams, Market memory market) external returns (uint256);
thinking
**Planning contract identification approach**
I'll use ripgrep to list "FILE:" lines within the large audit bundle file to pinpoint relevant contracts efficiently, avoiding opening the entire huge file directly.
exec
/bin/bash -lc 'rg "''^FILE:" -n AUDIT_BUNDLE.txt' in /tmp/codex-zbjc3o22 succeeded in 8ms:
5:FILE: @morpho-org/morpho-blue/src/interfaces/IIrm.sol
28:FILE: @morpho-org/morpho-blue/src/interfaces/IMorpho.sol
385:FILE: @morpho-org/morpho-blue/src/interfaces/IOracle.sol
404:FILE: @morpho-org/morpho-blue/src/libraries/ErrorsLib.sol
488:FILE: @morpho-org/morpho-blue/src/libraries/MarketParamsLib.sol
513:FILE: @morpho-org/morpho-blue/src/libraries/MathLib.sol
562:FILE: @morpho-org/morpho-blue/src/libraries/SharesMathLib.sol
611:FILE: @morpho-org/morpho-blue/src/libraries/UtilsLib.sol
653:FILE: @morpho-org/morpho-blue/src/libraries/periphery/MorphoBalancesLib.sol
777:FILE: @morpho-org/morpho-blue/src/libraries/periphery/MorphoLib.sol
844:FILE: @morpho-org/morpho-blue/src/libraries/periphery/MorphoStorageLib.sol
957:FILE: contracts/interfaces/IRedeemOperator.sol
987:FILE: contracts/interfaces/IStrategy.sol
999:FILE: contracts/interfaces/IVault.sol
1098:FILE: contracts/interfaces/flashloanHelper/IFlashloanHelper.sol
1114:FILE: contracts/interfaces/midas/IDepositVault.sol
1206:FILE: contracts/interfaces/midas/IMidasOracle.sol
1216:FILE: contracts/interfaces/midas/IRedemptionVault.sol
1311:FILE: contracts/interfaces/morpho/IMorpho.sol
1356:FILE: contracts/main/Manager.sol
thinking
**Planning contract file scanning**
I'm focusing on first-party contract files under the contracts directory, excluding external ones, and planning to read each file from the workspace to extract relevant sections with line numbers using ripgrep and possibly sed for parsing.
exec
/bin/bash -lc 'rg --files -g "contracts/**/*.sol"' in /tmp/codex-zbjc3o22 succeeded in 11ms:
contracts/interfaces/midas/IRedemptionVault.sol
contracts/interfaces/midas/IDepositVault.sol
contracts/interfaces/IRedeemOperator.sol
contracts/interfaces/midas/IMidasOracle.sol
contracts/interfaces/flashloanHelper/IFlashloanHelper.sol
contracts/interfaces/IVault.sol
contracts/interfaces/IStrategy.sol
contracts/interfaces/morpho/IMorpho.sol
contracts/main/Manager.sol
contracts/main/vault/StrategyFactory.sol
contracts/main/vault/VaultYieldBasic.sol
contracts/main/libraries/StorageSlot.sol
contracts/main/common/Constants.sol
contracts/main/RedeemOperator.sol
contracts/main/libraries/Errors.sol
contracts/main/Vault.sol
contracts/main/strategies/morpho/StrategyMorphoBlue.sol
thinking
**Preparing to inspect key contracts**
exec
/bin/bash -lc "sed -n '1,220p' contracts/main/Vault.sol" in /tmp/codex-zbjc3o22 succeeded in 6ms:
// SPDX-License-Identifier: BUSL-1.1
pragma solidity ^0.8.25;
import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
import "./libraries/Errors.sol";
import "./common/Constants.sol";
import "./vault/VaultYieldBasic.sol";
import "../interfaces/midas/IDepositVault.sol";
import "../interfaces/midas/IMidasOracle.sol";
/**
* @title Vault contract
* @author Naturelab
* @dev This contract is the logical implementation of the vault,
* and its main purpose is to provide users with a gateway for depositing
* and withdrawing funds and to manage user shares.
*/
contract Vault is VaultYieldBasic, Constants {
using SafeERC20 for IERC20;
thinking
**Identifying possible token handling bug**
Noticed that optionalDeposit uses the USDC balance even when the token is MF_ONE, potentially causing mismatched asset amounts and failed transfers; this seems a bug but not exploitable as it would just revert. I'll check related contracts like RedeemOperator next.
exec
/bin/bash -lc "sed -n '1,260p' contracts/main/RedeemOperator.sol" in /tmp/codex-zbjc3o22 succeeded in 7ms:
// SPDX-License-Identifier: BUSL-1.1
pragma solidity ^0.8.25;
import "@openzeppelin/contracts/access/Ownable.sol";
import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
import "@openzeppelin/contracts/utils/structs/EnumerableSet.sol";
import {Math} from "@openzeppelin/contracts/utils/math/Math.sol";
import "@openzeppelin/contracts/utils/Address.sol";
import "../interfaces/IRedeemOperator.sol";
import "../interfaces/IVault.sol";
import {Errors as CustomErrors} from "./libraries/Errors.sol";
import "./common/Constants.sol";
/**
* @title RedeemOperator contract
* @author Naturelab
* @notice Manages temporary storage of share tokens and facilitates redemption operations.
* @dev Implements the IRedeemOperator interface and uses OpenZeppelin libraries for safety and utility functions.
*/
contract RedeemOperator is IRedeemOperator, Constants, Ownable {
exec
/bin/bash -lc "sed -n '260,520p' contracts/main/RedeemOperator.sol" in /tmp/codex-zbjc3o22 succeeded in 6ms:
uint256 tokenBalanceBefore_ = IERC20(asset).balanceOf(address(this));
IVault(vault).optionalRedeem(asset, totalShares_, _fairExchangePrice, address(this), address(this));
uint256 tokenBalanceGet_ = IERC20(asset).balanceOf(address(this)) - tokenBalanceBefore_;
uint256 assetPerShare_ = tokenBalanceGet_.mulDiv(PRECISION, totalShares_, Math.Rounding.Floor);
address thisUser_;
uint256 thisUserGet_;
uint256 gasPerUser_ = _totalGasTokenAmount / _users.length;
uint256[] memory amounts_ = new uint256[](_users.length);
for (uint256 i = 0; i < _users.length; ++i) {
thisUser_ = _users[i];
if (_isRapid) {
thisUserGet_ =
_withdrawalRequestInstant[_epoch][thisUser_].mulDiv(assetPerShare_, PRECISION, Math.Rounding.Floor);
} else {
thisUserGet_ =
_withdrawalRequest[_epoch][thisUser_].mulDiv(assetPerShare_, PRECISION, Math.Rounding.Floor);
}
// If the user's share is not enough to cover the gas, it will fail.
thinking
**Identifying logic bug in refundWithdraw**
The code deletes the withdrawal request mapping before calling refundInstantLimit, causing the refund amount to be zero and user's redeem limit not restored; this is a logic bug that could reduce user functionality but doesn't appear to pose a direct security risk.
exec
/bin/bash -lc "sed -n '1,260p' contracts/main/Manager.sol" in /tmp/codex-zbjc3o22 succeeded in 5ms:
// SPDX-License-Identifier: BUSL-1.1
pragma solidity ^0.8.25;
import "@openzeppelin/contracts/access/Ownable.sol";
import "@openzeppelin/contracts/utils/Address.sol";
import {Errors as CustomErrors} from "./libraries/Errors.sol";
/**
* @title Manager
* @author Naturelab
* @dev This contract is used to manage KMS addresses for batch operations.
*/
contract Manager is Ownable {
mapping(address => bool) public operators;
/**
* @dev Initializes the contract by setting the admin and adding the initial operator to the whitelist.
* @param _admin The address of the contract owner, it will be a multisignature address.
* @param _initialOperator The address of the initial operator.
*/
thinking
**Noting multiCall access and safety**
The manager's multiCall is freely accessible to operators by design, using Address.functionCall without value and no explicit reentrancy check, which seems acceptable. Next is to investigate the StrategyFactory.
exec
/bin/bash -lc "sed -n '1,260p' contracts/main/vault/StrategyFactory.sol" in /tmp/codex-zbjc3o22 succeeded in 6ms:
// SPDX-License-Identifier: BUSL-1.1
pragma solidity ^0.8.25;
import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
import "@openzeppelin/contracts/utils/structs/EnumerableSet.sol";
import "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol";
import "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
import "@openzeppelin/contracts-upgradeable/utils/PausableUpgradeable.sol";
import "@openzeppelin/contracts-upgradeable/utils/ReentrancyGuardUpgradeable.sol";
import "../../interfaces/IRedeemOperator.sol";
import "../../interfaces/IStrategy.sol";
import "../libraries/Errors.sol";
/**
* @title StrategyFactory contract
* @author Naturelab
* @dev This contract is responsible for managing strategies in a vault.
* It allows the owner to create, remove, and interact with different strategies.
*/
abstract contract StrategyFactory is OwnableUpgradeable {
thinking
**Reviewing proxy ownership and upgrade control**
The factory uses TransparentUpgradeableProxy with the admin as the owner’s msg.sender, meaning upgrades rely solely on that owner externally. The createStrategy function restricts implementation setting to onlyOwner, ensuring controlled upgrades. Next, reviewing VaultYieldBasic.
exec
/bin/bash -lc "sed -n '1,260p' contracts/main/vault/VaultYieldBasic.sol" in /tmp/codex-zbjc3o22 succeeded in 9ms:
// SPDX-License-Identifier: BUSL-1.1
pragma solidity ^0.8.25;
import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
import "@openzeppelin/contracts-upgradeable/utils/PausableUpgradeable.sol";
import "@openzeppelin/contracts-upgradeable/utils/ReentrancyGuardTransientUpgradeable.sol";
import "@openzeppelin/contracts-upgradeable/token/ERC20/extensions/ERC4626Upgradeable.sol";
import "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
import "../../interfaces/IRedeemOperator.sol";
import "../../interfaces/IStrategy.sol";
import "../../interfaces/IVault.sol";
import "../libraries/StorageSlot.sol";
import "../libraries/Errors.sol";
import "./StrategyFactory.sol";
/**
* @title VaultYieldBasic contract
* @author Naturelab
* @dev This contract is the logical implementation of the vault,
* and its main purpose is to provide users with a gateway for depositing
thinking
**Assessing reentrancy protections**
I'm checking VaultYieldBasic functions like collectManagementFee, collectRevenue, and transferToStrategy for missing nonReentrant guards, focusing on external calls that could pose reentrancy risks. Next, I'll review the rest of the file for similar vulnerabilities.
exec
/bin/bash -lc "sed -n '260,720p' contracts/main/vault/VaultYieldBasic.sol" in /tmp/codex-zbjc3o22 succeeded in 5ms:
function updateExchangePrice() external onlyRebalancer returns (uint256 newExchangePrice, uint256 newRevenue) {
EXCHANGE_PRICE_CACHE.asUint256().tstore(vaultState.exchangePrice);
vaultState.lastUpdatePriceTime = block.timestamp;
uint256 totalSupply_ = totalSupply();
if (totalSupply_ == 0) {
return (vaultState.exchangePrice, vaultState.revenue);
}
uint256 currentNetAssets_ = underlyingTvl();
newExchangePrice = currentNetAssets_ * PRECISION / totalSupply_;
if (newExchangePrice > vaultState.revenueExchangePrice) {
if (vaultState.revenueExchangePrice == 0) {
vaultState.revenueExchangePrice = newExchangePrice;
vaultState.exchangePrice = newExchangePrice;
return (vaultState.exchangePrice, vaultState.revenue);
}
uint256 newProfit_ = currentNetAssets_ - ((vaultState.revenueExchangePrice * totalSupply_) / PRECISION);
newRevenue = (newProfit_ * vaultParams.revenueRate) / FEE_DENOMINATOR;
vaultState.revenue += newRevenue;
uint256 oldExchangePrice_ = vaultState.exchangePrice;
vaultState.exchangePrice = ((currentNetAssets_ - newRevenue) * PRECISION) / totalSupply_;
thinking
**Analyzing potential trust and call restrictions**
The optionalRedeem function relies on a fairExchangePrice set by RedeemOperator, which must stay within 3% of the vault price, mitigating some manipulation risk. Calls are restricted so only RedeemOperator can invoke optionalRedeem directly, preventing the operator from bypassing controls by calling it alone. However, the operator within RedeemOperator could still misuse confirmWithdrawal flow, and transferToStrategy’s external call after allowance increase could pose risks if strategy is malicious.
thinking
**Identifying allowance accumulation and limited reentrancy risks**
The strategy’s allowance increments without reset, allowing a malicious strategy to gradually drain tokens if compromised. The transferToStrategy function lacks a reentrancy guard, but caller restrictions and protected deposit logic limit harmful reentrancy paths, reducing likely impact. The focus now is to review related strategy implementations for further concerns.
exec
/bin/bash -lc "sed -n '1,260p' contracts/main/strategies/morpho/StrategyMorphoBlue.sol" in /tmp/codex-zbjc3o22 succeeded in 6ms:
// SPDX-License-Identifier: BUSL-1.1
pragma solidity ^0.8.25;
import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
import "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
import "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
import "@morpho-org/morpho-blue/src/libraries/periphery/MorphoBalancesLib.sol";
import "@morpho-org/morpho-blue/src/libraries/periphery/MorphoStorageLib.sol";
import "@morpho-org/morpho-blue/src/libraries/MarketParamsLib.sol";
import "@morpho-org/morpho-blue/src/interfaces/IOracle.sol";
import "../../../interfaces/IStrategy.sol";
import "../../../interfaces/midas/IDepositVault.sol";
import "../../../interfaces/midas/IRedemptionVault.sol";
import "../../../interfaces/midas/IMidasOracle.sol";
import "../../../interfaces/morpho/IMorpho.sol";
import "../../libraries/Errors.sol";
import "../../common/Constants.sol";
/**
* @title StrategyMorphoBlue contract
* @author Naturelab
exec
/bin/bash -lc "sed -n '260,620p' contracts/main/strategies/morpho/StrategyMorphoBlue.sol" in /tmp/codex-zbjc3o22 succeeded in 6ms:
* @dev Get the amount of assets in all lending protocols involved in this contract for the strategy pool.
* @return netAssets The total amount of net assets.
*/
function getNetAssets() public view override returns (uint256) {
// decimal 6
uint256 mFONEAMount_ = collateralAssetsUser() + IERC20(MF_ONE).balanceOf(address(this));
uint256 usdcDebt_ = borrowAssetsUser();
uint256 usdcAmount_ = IERC20(USDC).balanceOf(address(this));
// statistic redeem request (Redeem Pending)
RedeemRequest memory redeemRequest = IRedemptionVault(MIDAS_REDEEM).redeemRequests(getStorage().redeemRequestId);
uint256 usdcPending_ = 0;
if (redeemRequest.status == RedeemRequestStatus.Pending) {
usdcPending_ = redeemRequest.mTokenRate * redeemRequest.amountMToken / (PRECISION * 1e12);
}
// statistic deposit request (Deposit Pending)
MintRequest memory mintRequest = IDepositVault(MIDAS_MINT).mintRequests(getStorage().mintRequestId);
uint256 depositedUsdcAmount_ = 0;
thinking
**Identifying oracle manipulation risk**
The code relies on an oracle for asset conversion and share pricing, which poses a potential vulnerability if the oracle price can be manipulated, enabling unfair minting or value inflation.
thinking
**Locating oracle interface**
I'm planning to review the IMidasOracle interface to understand how price data is provided and verify its security assumptions.
exec
/bin/bash -lc "sed -n '1,120p' contracts/interfaces/midas/IMidasOracle.sol" in /tmp/codex-zbjc3o22 succeeded in 6ms:
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.25;
interface IMidasOracle {
function lastAnswer() external view returns (int256);
}
thinking
**Identifying oracle staleness risk**
The oracle usage lacks staleness checks, allowing stale or manipulated prices to misprice deposits and vault TVL. This enables attacks inflating share minting by manipulating MF_ONE prices before redeeming for USDC.
thinking
**Detailing reentrancy and logic issues**
A key reentrancy risk exists in revenue collection where external token calls happen before state update, potentially allowing repeated revenue drains if feeReceiver is malicious and token supports reentrancy. Also noted are vault share accounting inconsistencies and a refund logic bug enabling operator-caused denial of rapid withdraw refunds, though with limited exploitability due to access control.
exec
/bin/bash -lc "sed -n '1,200p' contracts/main/common/Constants.sol" in /tmp/codex-zbjc3o22 succeeded in 7ms:
// SPDX-License-Identifier: BUSL-1.1
pragma solidity ^0.8.25;
abstract contract Constants {
address public constant USDC = 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48;
address public constant MF_ONE = 0x238a700eD6165261Cf8b2e544ba797BC11e466Ba;
}
thinking
**Identifying misuse of transient storage**
Noticed the previous exchange price is stored using ephemeral EIP-1153 transient storage, which resets each transaction, making retrieval outside the current transaction unreliable; this likely breaks expected logic but isn’t a security vulnerability.
thinking
**Finding unchecked owner-controlled fee causing potential reverts**
The instant fee can be set by the owner without bounds, allowing values over 100% that cause underflow and revert deposits, effectively blocking deposits though owner trust limits exploitation potential.
exec
/bin/bash -lc "sed -n '1,200p' contracts/main/libraries/StorageSlot.sol" in /tmp/codex-zbjc3o22 succeeded in 6ms:
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v5.0.0) (utils/StorageSlot.sol)
// This file was procedurally generated from scripts/generate/templates/StorageSlot.js.
pragma solidity ^0.8.25;
/**
* @dev Library for reading and writing primitive types to specific storage slots.
*
* Storage slots are often used to avoid storage conflict when dealing with upgradeable contracts.
* This library helps with reading and writing to such slots without the need for inline assembly.
*
* The functions in this library return Slot structs that contain a `value` member that can be used to read or write.
*
* Example usage to set ERC-1967 implementation slot:
* ```solidity
* contract ERC1967 {
* // Define the slot. Alternatively, use the SlotDerivation library to derive the slot.
* bytes32 internal constant _IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;
*
thinking
**Assessing oracle manipulation and access control risks**
Identified oracle manipulation risks due to stale price checks in MidasOracle and StrategyMorphoBlue, with unclear staleness protections. Also noted that RedeemOperator.confirmWithdrawal might redeem shares without verifying holding them, posing a potential accounting risk.
thinking
**Identifying unbounded approvals and potential share sweeping risks**
Noted that strategies use unlimited token approvals, risking token drains if strategies or proxies become malicious. Also found that the owner-only sweep function can transfer vault shares, potentially enabling admin to sweep user shares, posing a significant trust risk despite access control.
exec
/bin/bash -lc "sed -n '1,220p' contracts/main/libraries/Errors.sol" in /tmp/codex-zbjc3o22 succeeded in 6ms:
// SPDX-License-Identifier: BUSL-1.1
pragma solidity ^0.8.25;
library Errors {
// Revert Errors:
error CallerNotOperator(); // 0xa5523ee5
error CallerNotRebalancer(); // 0xbd72e291
error CallerNotVault(); // 0xedd7338f
error CallerNotMinter(); // 0x5eee367a
error ExceededExchangePriceRate(); // 0xc8d1ba3d
error ExceededMaxDeposit(); // 0x3bc9ae09
error ExceededRedeemInstantLimit(); // 0x1cdb58a6
error ExitFeeRateTooHigh(); // 0xf4d1caab
error FlashloanInProgress(); // 0x772ac4e8
error IncorrectState(); // 0x508c9390
error InfoExpired(); // 0x4ddf4a65
error InsufficientDepositAmount(); // 0x517d9d34
error InvalidAccount(); // 0x6d187b28
error InvalidAdapter(); // 0xfbf66df1
error InvalidAdmin(); // 0xb5eba9f0
thinking
**Reviewing token and ownership logic for edge cases**
I'm verifying token address checks, owner setup via proxy initialization, and token decimals handling to ensure no overflow risk or access issues; found them acceptable so far. I also considered withdrawal and redeem logic against potential share-transfer edge cases but didn't find apparent flaws.
thinking
**Identifying oracle manipulation risk via price usage**
I analyzed how vault deposit shares depend on an oracle price that lacks staleness checks, creating risk of inflated share minting if the oracle is manipulated. This is a classic oracle manipulation vulnerability tied to the unverified use of the on-chain Midas oracle price in deposit calculations.
exec
/bin/bash -lc "rg \"delegatecall|call\\(\" contracts/main -n" in /tmp/codex-zbjc3o22 exited 1 in 9ms:
thinking
**Identifying potential rebalancer price manipulation**
The rebalancer can call updateExchangePrice and may manipulate exchangePrice to affect totalAssets valuation, potentially enabling cheap deposit minting; access control limits this but it's worth deeper review.
thinking
**Confirming rebalancer access control and checking strategy calls**
The updateExchangePrice is properly restricted to the rebalancer, ruling out unauthorized price updates. Next, I'm focusing on the StrategyMorphoBlue contract since its view methods might involve external calls affecting state, which could have subtle implications.
exec
/bin/bash -lc "sed -n '1,220p' contracts/interfaces/midas/IDepositVault.sol" in /tmp/codex-zbjc3o22 succeeded in 6ms:
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.25;
enum MintRequestStatus {
Pending,
Processed,
Canceled
}
struct MintRequest {
address sender;
address tokenIn;
MintRequestStatus status;
uint256 depositedUsdAmount;
uint256 usdAmountWithoutFees;
uint256 tokenOutRate;
}
interface IDepositVault {
/**
exec
/bin/bash -lc "sed -n '1,220p' contracts/interfaces/midas/IRedemptionVault.sol" in /tmp/codex-zbjc3o22 succeeded in 6ms:
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.25;
enum RedeemRequestStatus {
Pending,
Processed,
Canceled
}
/**
* @notice Redeem request scruct
* @param sender user address who create
* @param tokenOut tokenOut address
* @param status request status
* @param amountMToken amount mToken
* @param mTokenRate rate of mToken at request creation time
* @param tokenOutRate rate of tokenOut at request creation time
*/
struct RedeemRequest {
address sender;
thinking
**Identifying potential access control and functional issues**
The main vulnerability focus is oracle manipulation, but there’s a functional bug where rapid redeem checks userTotalSupply per account ignoring transfers, allowing inconsistent rapid redeem limits; also, a key access control risk exists if the implementation contract’s initialize function is called directly, letting an attacker set vault and rebalancer addresses improperly.
thinking
**Highlighting significant upgradeability and oracle risks**
I identified a critical upgradeability risk where proxy admin rights remain with the original owner after ownership transfers, letting the old owner retain upgrade control and potentially drain funds. Also, Midas oracle usage lacks staleness or sanity checks, posing a high-severity oracle manipulation risk affecting share minting and asset valuation.
exec
/bin/bash -lc "nl -ba contracts/main/Vault.sol | sed -n '30,140p'" in /tmp/codex-zbjc3o22 succeeded in 7ms:
30 // Based on shares
31 mapping(uint256 => mapping(address => uint256)) internal userRedeemInstantLimitEpoch;
32 mapping(address => uint256) internal userTotalSupply;
33 mapping(address => uint256) internal userTotalRedeem;
34
35 uint256 public prevEpoch;
36 uint256 public epoch;
37 uint256 public redeemInstantLimit;
38 uint256 public instantFee;
39 bool public depositPaused;
40
41 constructor(uint256 _minMarketCapacity) VaultYieldBasic(1e6, _minMarketCapacity) {}
42
43 function underlyingTvl() public override returns (uint256) {
44 uint256 usdcBal_ = IERC20(USDC).balanceOf(address(this));
45 uint256 totalStrategy_ = totalStrategiesAssets();
46 uint256 mFONEBal_ = IERC20(MF_ONE).balanceOf(address(this));
47 // mFONEBal_ = mFONEBal_ / 1e12;
48 int256 price_ = IMidasOracle(MIDAS_ORACLE).lastAnswer();
49 if (price_ < 0) revert Errors.PriceBelowZero();
thinking
**Noting key lines for variables**
I identified line numbers related to underlyingTvl, optionalDepositShares, and convertMFONEtoUSDC in StrategyMorphoBlue, preparing for targeted code inspection or modification.
exec
/bin/bash -lc "nl -ba contracts/main/strategies/morpho/StrategyMorphoBlue.sol | sed -n '300,420p'" in /tmp/codex-zbjc3o22 succeeded in 9ms:
300
301 function borrow(address _asset, uint256 _amount) external onlyRebalancer {
302 _borrow(_asset, _amount);
303 emit Borrow(_asset, _amount);
304 }
305
306 function repay(address _asset, uint256 _amount) external onlyRebalancer {
307 _repay(_asset, _amount);
308 emit Repay(_asset, _amount);
309 }
310
311 function supplyAssetsUser() public view returns (uint256 totalSupplyAssets) {
312 totalSupplyAssets = IMorpho(MORPHO_POOL).expectedSupplyAssets(getMarketParams(), address(this));
313 }
314
315 function collateralAssetsUser() public view returns (uint256 totalCollateralAssets) {
316 bytes32[] memory slots = new bytes32[](1);
317 slots[0] =
318 MorphoStorageLib.positionBorrowSharesAndCollateralSlot(MarketParamsLib.id(getMarketParams()), address(this));
319 bytes32[] memory values = IMorpho(MORPHO_POOL).extSloads(slots);
thinking
**Identifying upgradeability mismatch**
I'm focusing on upgradeability issues by checking proxy admin usage and will inspect StrategyFactory.createStrategy with specific line references next.
exec
/bin/bash -lc "nl -ba contracts/main/vault/StrategyFactory.sol | sed -n '60,160p'" in /tmp/codex-zbjc3o22 succeeded in 6ms:
60 function strategyAddress(uint256 _offset) public view returns (address) {
61 return _strategies.at(_offset);
62 }
63
64 /**
65 * @dev Returns the total assets managed by a specific strategy.
66 * @param _offset The index of the strategy.
67 * @return totalAssets_ The total assets managed by the strategy.
68 */
69 function strategyAssets(uint256 _offset) public returns (uint256 totalAssets_) {
70 totalAssets_ = IStrategy(_strategies.at(_offset)).getNetAssets();
71 }
72
73 /**
74 * @dev Returns the total assets managed by all strategies combined.
75 * @return totalAssets_ The total assets managed by all strategies.
76 */
77 function totalStrategiesAssets() public returns (uint256 totalAssets_) {
78 uint256 length_ = strategiesCount();
79 address[] memory strategies_ = strategies();
thinking
**Identifying refundWithdraw bug lines**
I'm extracting lines 90-93 to examine the RedeemOperator refundWithdraw issue more closely.
exec
/bin/bash -lc "nl -ba contracts/main/RedeemOperator.sol | sed -n '300,380p'" in /tmp/codex-zbjc3o22 succeeded in 6ms:
300 if (!_pendingWithdrawersInstant[_epoch].contains(_users[i])) {
301 revert CustomErrors.InvalidWithdrawalUser();
302 }
303 IERC20(vault).safeTransfer(_users[i], _withdrawalRequestInstant[_epoch][_users[i]]);
304 _pendingWithdrawersInstant[_epoch].remove(_users[i]);
305 delete _withdrawalRequestInstant[_epoch][_users[i]];
306
307 IVault(vault).refundInstantLimit(_users[i], _withdrawalRequestInstant[_epoch][_users[i]]);
308 } else {
309 if (!_pendingWithdrawers[_epoch].contains(_users[i])) revert CustomErrors.InvalidWithdrawalUser();
310 IERC20(vault).safeTransfer(_users[i], _withdrawalRequest[_epoch][_users[i]]);
311 _pendingWithdrawers[_epoch].remove(_users[i]);
312 delete _withdrawalRequest[_epoch][_users[i]];
313 }
314 }
315 }
316
317 function cancelWithdraw(address _user, bool _isRapid, uint256 _epoch) external onlyVault {
318 if (_isRapid) {
319 if (!_pendingWithdrawersInstant[_epoch].contains(_user)) revert CustomErrors.InvalidWithdrawalUser();
thinking
**Assessing potential vulnerabilities**
I evaluated unchecked return values, access controls, and external call patterns, finding no critical issues but noting a possible omission in Vault.optionalDeposit where MF_ONE tokens are transferred without conversion or decimal handling. I'll aim to highlight 2–3 findings for the review.
thinking
**Preparing detailed vulnerability findings**
I've analyzed design and oracle use, identifying three key issues: unvalidated oracle price risks share mispricing and drain, strategy proxy admin tied only to creator enabling upgrade exploits, and refund logic deleting withdrawal data before restoring limits causing potential user denial of service. I'll generate a precise JSON report capturing severity, exploit scenarios, recommendations, evidence, and locations.
codex
{"no_findings":false,"summary":"Found 3 issues: oracle pricing used without staleness/validity checks for MF_ONE valuation, strategy proxy admin not tied to current ownership, and a rapid refund accounting bug that never restores instant redeem limits.","findings":[{"severity":"high","category":"oracle","title":"MF_ONE valuation uses unvalidated oracle price for share minting and TVL","exploit_scenario":"An attacker who can manipulate or serve a stale/high price from `IMidasOracle.lastAnswer()` can deposit MF_ONE and receive inflated share issuance. Those shares can later be redeemed for USDC at the (lower) fair exchange price, draining vault assets. The same oracle value is also used to compute TVL/exchange price, amplifying the pricing distortion.","recommendation":"Use an oracle interface that exposes round data (e.g., `latestRoundData`) with staleness checks, enforce max deviation bounds, and/or use TWAPs. Consider rejecting deposits and price updates when the oracle is stale or outside expected bounds.","evidence":"MF_ONE deposits and TVL rely on `IMidasOracle(MIDAS_ORACLE).lastAnswer()` with only a non-negative check and no staleness or bounds validation.","locations":["contracts/main/Vault.sol:43","contracts/main/Vault.sol:96","contracts/main/strategies/morpho/StrategyMorphoBlue.sol:380"]},{"severity":"medium","category":"upgradeability","title":"Strategy proxy admin fixed to creator, not current owner","exploit_scenario":"Strategies are deployed via `TransparentUpgradeableProxy` with admin set to `msg.sender`. If vault ownership changes later, the old owner retains proxy admin rights and can still upgrade strategy implementations to malicious code that drains assets, while the new owner cannot upgrade.","recommendation":"Use a dedicated `ProxyAdmin` controlled by current ownership, or track the proxy admin and update it on ownership transfers. Avoid setting the proxy admin to the caller directly.","evidence":"`createStrategy` sets proxy admin to `msg.sender` without any linkage to `OwnableUpgradeable` ownership changes.","locations":["contracts/main/vault/StrategyFactory.sol:90"]},{"severity":"low","category":"other","title":"Rapid withdrawal refunds do not restore instant redeem limits","exploit_scenario":"When a rapid withdrawal is refunded, the vault’s instant redeem limit for the user is not restored because the amount is deleted before being passed to `refundInstantLimit`. This can permanently reduce a user’s rapid redeem allowance within the epoch and be used by the operator to grief users.","recommendation":"Cache the withdrawal amount before deletion and call `refundInstantLimit` with that value, or reorder the operations to refund the limit first.","evidence":"`_withdrawalRequestInstant` is deleted before calling `refundInstantLimit`, so the refund amount is always zero.","locations":["contracts/main/RedeemOperator.sol:300"]}]}
tokens used
67,578
{
"codex": {
"ran_at": "2026-01-22T08:40:19.295558+00:00",
"returncode": 0
},
"project": {
"mode": "source",
"file_count": 66,
"import_count": 87,
"first_party_contracts_count": 28
},
"summary": "Found 3 issues: oracle pricing used without staleness/validity checks for MF_ONE valuation, strategy proxy admin not tied to current ownership, and a rapid refund accounting bug that never restores instant redeem limits.",
"raw_final": {
"summary": "Found 3 issues: oracle pricing used without staleness/validity checks for MF_ONE valuation, strategy proxy admin not tied to current ownership, and a rapid refund accounting bug that never restores instant redeem limits.",
"findings": [
{
"title": "MF_ONE valuation uses unvalidated oracle price for share minting and TVL",
"category": "oracle",
"evidence": "MF_ONE deposits and TVL rely on `IMidasOracle(MIDAS_ORACLE).lastAnswer()` with only a non-negative check and no staleness or bounds validation.",
"severity": "high",
"locations": [
"contracts/main/Vault.sol:43",
"contracts/main/Vault.sol:96",
"contracts/main/strategies/morpho/StrategyMorphoBlue.sol:380"
],
"recommendation": "Use an oracle interface that exposes round data (e.g., `latestRoundData`) with staleness checks, enforce max deviation bounds, and/or use TWAPs. Consider rejecting deposits and price updates when the oracle is stale or outside expected bounds.",
"exploit_scenario": "An attacker who can manipulate or serve a stale/high price from `IMidasOracle.lastAnswer()` can deposit MF_ONE and receive inflated share issuance. Those shares can later be redeemed for USDC at the (lower) fair exchange price, draining vault assets. The same oracle value is also used to compute TVL/exchange price, amplifying the pricing distortion."
},
{
"title": "Strategy proxy admin fixed to creator, not current owner",
"category": "upgradeability",
"evidence": "`createStrategy` sets proxy admin to `msg.sender` without any linkage to `OwnableUpgradeable` ownership changes.",
"severity": "medium",
"locations": [
"contracts/main/vault/StrategyFactory.sol:90"
],
"recommendation": "Use a dedicated `ProxyAdmin` controlled by current ownership, or track the proxy admin and update it on ownership transfers. Avoid setting the proxy admin to the caller directly.",
"exploit_scenario": "Strategies are deployed via `TransparentUpgradeableProxy` with admin set to `msg.sender`. If vault ownership changes later, the old owner retains proxy admin rights and can still upgrade strategy implementations to malicious code that drains assets, while the new owner cannot upgrade."
},
{
"title": "Rapid withdrawal refunds do not restore instant redeem limits",
"category": "other",
"evidence": "`_withdrawalRequestInstant` is deleted before calling `refundInstantLimit`, so the refund amount is always zero.",
"severity": "low",
"locations": [
"contracts/main/RedeemOperator.sol:300"
],
"recommendation": "Cache the withdrawal amount before deletion and call `refundInstantLimit` with that value, or reorder the operations to refund the limit first.",
"exploit_scenario": "When a rapid withdrawal is refunded, the vault\u2019s instant redeem limit for the user is not restored because the amount is deleted before being passed to `refundInstantLimit`. This can permanently reduce a user\u2019s rapid redeem allowance within the epoch and be used by the operator to grief users."
}
],
"no_findings": false
},
"no_findings": false,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: ISZERO 0000000a: PUSH2 0x001a 0000000d: JUMPI 0000000e: JUMPDEST 0000000f: CALLDATASIZE 00000010: ISZERO 00000011: PUSH2 0x0018 00000014: JUMPI 00000015: PUSH0 00000016: DUP1 00000017: REVERT 00000018: JUMPDEST 00000019: STOP 0000001a: JUMPDEST 0000001b: PUSH0 0000001c: DUP1 0000001d: CALLDATALOAD 0000001e: PUSH1 0xe0 00000020: SHR 00000021: DUP1 00000022: PUSH4 0x01e1d114 00000027: EQ 00000028: PUSH2 0x3a50 0000002b: JUMPI 0000002c: DUP1 0000002d: PUSH4 0x02befd24 00000032: EQ 00000033: PUSH2 0x3a2e 00000036: JUMPI 00000037: DUP1 00000038: PUSH4 0x030d624a 0000003d: EQ 0000003e: PUSH2 0x39d3 00000041: JUMPI 00000042: DUP1 00000043: PUSH4 0x06fdde03 00000048: EQ 00000049: PUSH2 0x393b 0000004c: JUMPI 0000004d: DUP1 0000004e: PUSH4 0x079c3b88 00000053: EQ 00000054: PUSH2 0x3921 00000057: JUMPI 00000058: DUP1 00000059: PUSH4 0x07a2d13a 0000005e: EQ 0000005f: PUSH2 0x2363 00000062: JUMPI 00000063: DUP1 00000064: PUSH4 0x09299dfb 00000069: EQ 0000006a: PUSH2 0x3904 0000006d: JUMPI 0000006e: DUP1 0000006f: PUSH4 0x095ea7b3 00000074: EQ 00000075: PUSH2 0x3855 00000078: JUMPI 00000079: DUP1 0000007a: PUSH4 0x0a28a477 0000007f: EQ 00000080: PUSH2 0x3807 00000083: JUMPI 00000084: DUP1 00000085: PUSH4 0x0d8ea779 0000008a: EQ 0000008b: PUSH2 0x37d9 0000008e: JUMPI 0000008f: DUP1 00000090: PUSH4 0x0f81894f 00000095: EQ 00000096: PUSH2 0x37a1 00000099: JUMPI 0000009a: DUP1 0000009b: PUSH4 0x107703ab 000000a0: EQ 000000a1: PUSH2 0x3788 000000a4: JUMPI 000000a5: DUP1 000000a6: PUSH4 0x175188e8 000000ab: EQ 000000ac: PUSH2 0x36c1 000000af: JUMPI 000000b0: DUP1 000000b1: PUSH4 0x17f7a13f 000000b6: EQ 000000b7: PUSH2 0x362c 000000ba: JUMPI 000000bb: DUP1 000000bc: PUSH4 0x18160ddd 000000c1: EQ 000000c2: PUSH2 0x3603 000000c5: JUMPI 000000c6: DUP1 000000c7: PUSH4 0x23b872dd 000000cc: EQ 000000cd: PUSH2 0x35cb 000000d0: JUMPI 000000d1: DUP1 000000d2: PUSH4 0x2489f7f7 000000d7: EQ 000000d8: PUSH2 0x35af 000000db: JUMPI 000000dc: DUP1 000000dd: PUSH4 0x25bd4142 000000e2: EQ 000000e3: PUSH2 0x3554 000000e6: JUMPI 000000e7: DUP1 000000e8: PUSH4 0x266f8dc9 000000ed: EQ 000000ee: PUSH2 0x34f8 000000f1: JUMPI 000000f2: DUP1 000000f3: PUSH4 0x29c23e4a 000000f8: EQ 000000f9: PUSH2 0x34cb 000000fc: JUMPI 000000fd: DUP1 000000fe: PUSH4 0x313ce567 00000103: EQ 00000104: PUSH2 0x34a6 00000107: JUMPI 00000108: DUP1 00000109: PUSH4 0x32507a5f 0000010e: EQ 0000010f: PUSH2 0x31d8 00000112: JUMPI 00000113: DUP1 00000114: PUSH4 0x34069157 00000119: EQ 0000011a: PUSH2 0x317b 0000011d: JUMPI 0000011e: DUP1 0000011f: PUSH4 0x38d52e0f 00000124: EQ 00000125: PUSH2 0x3147 00000128: JUMPI 00000129: DUP1 0000012a: PUSH4 0x3b0426db 0000012f: EQ 00000130: PUSH2 0x310a 00000133: JUMPI 00000134: DUP1 00000135: PUSH4 0x3bfaa7e3 0000013a: EQ 0000013b: PUSH2 0x30c0 0000013e: JUMPI 0000013f: DUP1 00000140: PUSH4 0x3c5280e4 00000145: EQ 00000146: PUSH2 0x3063 00000149: JUMPI 0000014a: DUP1 0000014b: PUSH4 0x3e9491a2 00000150: EQ 00000151: PUSH2 0x3046 00000154: JUMPI 00000155: DUP1 00000156: PUSH4 0x3f4ba83a 0000015b: EQ 0000015c: PUSH2 0x2fd1 0000015f: JUMPI 00000160: DUP1 00000161: PUSH4 0x402d267d 00000166: EQ 00000167: PUSH2 0x2fa7 0000016a: JUMPI 0000016b: DUP1 0000016c: PUSH4 0x439fab91 00000171: EQ 00000172: PUSH2 0x2433 00000175: JUMPI 00000176: DUP1 00000177: PUSH4 0x4a8c110a 0000017c: EQ 0000017d: PUSH2 0x239f 00000180: JUMPI 00000181: DUP1 00000182: PUSH4 0x4b59b82e 00000187: EQ 00000188: PUSH2 0x2368 0000018b: JUMPI 0000018c: DUP1 0000018d: PUSH4 0x4cdad506 00000192: EQ 00000193: PUSH2 0x2363 00000196: JUMPI 00000197: DUP1 00000198: PUSH4 0x539ffb77 0000019d: EQ 0000019e: PUSH2 0x228a 000001a1: JUMPI 000001a2: DUP1 000001a3: PUSH4 0x53fdfab0 000001a8: EQ 000001a9: PUSH2 0x2228 000001ac: JUMPI 000001ad: DUP1 000001ae: PUSH4 0x5b00f4a2 000001b3: EQ 000001b4: PUSH2 0x220a 000001b7: JUMPI 000001b8: DUP1 000001b9: PUSH4 0x5c975abb 000001be: EQ 000001bf: PUSH2 0x21db 000001c2: JUMPI 000001c3: DUP1 000001c4: PUSH4 0x5fa7b584 000001c9: EQ 000001ca: PUSH2 0x2184 000001cd: JUMPI 000001ce: DUP1 000001cf: PUSH4 0x61dd3124 000001d4: EQ 000001d5: PUSH2 0x1fb6 000001d8: JUMPI 000001d9: DUP1 000001da: PUSH4 0x6e553f65 000001df: EQ 000001e0: PUSH2 0x1d7c 000001e3: JUMPI 000001e4: DUP1 000001e5: PUSH4 0x70a08231 000001ea: EQ 000001eb: PUSH2 0x06c0 000001ee: JUMPI 000001ef: DUP1 000001f0: PUSH4 0x715018a6 000001f5: EQ 000001f6: PUSH2 0x1d13 000001f9: JUMPI 000001fa: DUP1 000001fb: PUSH4 0x7a825e07 00000200: EQ 00000201: PUSH2 0x1c82 00000204: JUMPI 00000205: DUP1 00000206: PUSH4 0x7f6c81b7 0000020b: EQ 0000020c: PUSH2 0x1c24 0000020f: JUMPI 00000210: DUP1 00000211: PUSH4 0x8152cd18 00000216: EQ 00000217: PUSH2 0x1b92 0000021a: JUMPI 0000021b: DUP1 0000021c: PUSH4 0x8456cb59 00000221: EQ 00000222: PUSH2 0x1afb 00000225: JUMPI 00000226: DUP1 00000227: PUSH4 0x8505d0a1 0000022c: EQ 0000022d: PUSH2 0x1aa6 00000230: JUMPI 00000231: DUP1 00000232: PUSH4 0x88bb4f60 00000237: EQ 00000238: PUSH2 0x1770 0000023b: JUMPI 0000023c: DUP1 0000023d: PUSH4 0x89a30271 00000242: EQ 00000243: PUSH2 0x1741 00000246: JUMPI 00000247: DUP1 00000248: PUSH4 0x8da5cb5b 0000024d: EQ 0000024e: PUSH2 0x170c 00000251: JUMPI 00000252: DUP1 00000253: PUSH4 0x8e92b184 00000258: EQ 00000259: PUSH2 0x15d4 0000025c: JUMPI 0000025d: DUP1 0000025e: PUSH4 0x900cf0cf 00000263: EQ 00000264: PUSH2 0x15b6 00000267: JUMPI 00000268: DUP1 00000269: PUSH4 0x94bf804d 0000026e: EQ 0000026f: PUSH2 0x1579 00000272: JUMPI 00000273: DUP1 00000274: PUSH4 0x95d89b41 00000279: EQ 0000027a: PUSH2 0x14a9 0000027d: JUMPI 0000027e: DUP1 0000027f: PUSH4 0x98e1862c 00000284: EQ 00000285: PUSH2 0x148b 00000288: JUMPI 00000289: DUP1 0000028a: PUSH4 0x9b70e945 0000028f: EQ 00000290: PUSH2 0x142b 00000293: JUMPI 00000294: DUP1 00000295: PUSH4 0x9c016ffd 0000029a: EQ 0000029b: PUSH2 0x1377 0000029e: JUMPI 0000029f: DUP1 000002a0: PUSH4 0x9e65741e 000002a5: EQ 000002a6: PUSH2 0x1359 000002a9: JUMPI 000002aa: DUP1 000002ab: PUSH4 0xa7b73254 000002b0: EQ 000002b1: PUSH2 0x10cd 000002b4: JUMPI 000002b5: DUP1 000002b6: PUSH4 0xa9059cbb 000002bb: EQ 000002bc: PUSH2 0x109b 000002bf: JUMPI 000002c0: DUP1 000002c1: PUSH4 0xaa6ca808 000002c6: EQ 000002c7: PUSH2 0x1025 000002ca: JUMPI 000002cb: DUP1 000002cc: PUSH4 0xad35530b 000002d1: EQ 000002d2: PUSH2 0x0ef2 000002d5: JUMPI 000002d6: DUP1 000002d7: PUSH4 0xb046a449 000002dc: EQ 000002dd: PUSH2 0x0e5e 000002e0: JUMPI 000002e1: DUP1 000002e2: PUSH4 0xb0caa891 000002e7: EQ 000002e8: PUSH2 0x0e25 000002eb: JUMPI 000002ec: DUP1 000002ed: PUSH4 0xb2db983a 000002f2: EQ 000002f3: PUSH2 0x0d8e 000002f6: JUMPI 000002f7: DUP1 000002f8: PUSH4 0xb3d7f6b9 000002fd: EQ 000002fe: PUSH2 0x0d2b 00000301: JUMPI 00000302: DUP1 00000303: PUSH4 0xb460af94 00000308: EQ 00000309: PUSH2 0x0d26 0000030c: JUMPI 0000030d: DUP1 0000030e: PUSH4 0xba087652 00000313: EQ 00000314: PUSH2 0x0d26 00000317: JUMPI 00000318: DUP1 00000319: PUSH4 0xba8bfa2a 0000031e: EQ 0000031f: PUSH2 0x08c0 00000322: JUMPI 00000323: DUP1 00000324: PUSH4 0xbf6590a4 00000329: EQ 0000032a: PUSH2 0x08a5 0000032d: JUMPI 0000032e: DUP1 0000032f: PUSH4 0xc0587a95 00000334: EQ 00000335: PUSH2 0x0868 00000338: JUMPI 00000339: DUP1 0000033a: PUSH4 0xc47d51be 0000033f: EQ 00000340: PUSH2 0x084a 00000343: JUMPI 00000344: DUP1 00000345: PUSH4 0xc63d75b6 0000034a: EQ 0000034b: PUSH2 0x0824 0000034e: JUMPI 0000034f: DUP1 00000350: PUSH4 0xc69bebe4 00000355: EQ 00000356: PUSH2 0x07a5 00000359: JUMPI 0000035a: DUP1 0000035b: PUSH4 0xc6e6f592 00000360: EQ 00000361: PUSH2 0x04cc 00000364: JUMPI 00000365: DUP1 00000366: PUSH4 0xce96cb77 0000036b: EQ 0000036c: PUSH2 0x075f 0000036f: JUMPI 00000370: DUP1 00000371: PUSH4 0xd48bfca7 00000376: EQ 00000377: PUSH2 0x06e4 0000037a: JUMPI 0000037b: DUP1 0000037c: PUSH4 0xd905777e 00000381: EQ 00000382: PUSH2 0x06c0 00000385: JUMPI 00000386: DUP1 00000387: PUSH4 0xd9f9027f 0000038c: EQ 0000038d: PUSH2 0x065d 00000390: JUMPI 00000391: DUP1 00000392: PUSH4 0xdc6ffecc 00000397: EQ 00000398: PUSH2 0x0602 0000039b: JUMPI 0000039c: DUP1 0000039d: PUSH4 0xdd62ed3e 000003a2: EQ 000003a3: PUSH2 0x05ba 000003a6: JUMPI 000003a7: DUP1 000003a8: PUSH4 0xe3ea7c6a 000003ad: EQ 000003ae: PUSH2 0x057f 000003b1: JUMPI 000003b2: DUP1 000003b3: PUSH4 0xe46e9a02 000003b8: EQ 000003b9: PUSH2 0x055c 000003bc: JUMPI 000003bd: DUP1 000003be: PUSH4 0xed14d17e 000003c3: EQ 000003c4: PUSH2 0x04d1 000003c7: JUMPI 000003c8: DUP1 000003c9: PUSH4 0xef8b30f7 000003ce: EQ 000003cf: PUSH2 0x04cc 000003d2: JUMPI 000003d3: DUP1 000003d4: PUSH4 0xf0f015e9 000003d9: EQ 000003da: PUSH2 0x0497 000003dd: JUMPI 000003de: DUP1 000003df: PUSH4 0xf2fde38b 000003e4: EQ 000003e5: PUSH2 0x046a 000003e8: JUMPI 000003e9: DUP1 000003ea: PUSH4 0xf4ad8788 000003ef: EQ 000003f0: PUSH2 0x044d 000003f3: JUMPI 000003f4: PUSH4 0xffa1ad74 000003f9: EQ 000003fa: PUSH2 0x0403 000003fd: JUMPI 000003fe: POP 000003ff: PUSH2 0x000e 00000402: JUMP 00000403: JUMPDEST 00000404: CALLVALUE 00000405: PUSH2 0x044a 00000408: JUMPI 00000409: DUP1 0000040a: PUSH1 0x03 0000040c: NOT 0000040d: CALLDATASIZE 0000040e: ADD 0000040f: SLT 00000410: PUSH2 0x044a 00000413: JUMPI 00000414: PUSH2 0x0446 00000417: PUSH1 0x40 00000419: MLOAD 0000041a: PUSH2 0x0422 0000041d: DUP2 0000041e: PUSH2 0x3c79 00000421: JUMP 00000422: JUMPDEST 00000423: PUSH1 0x03 00000425: DUP2 00000426: MSTORE 00000427: PUSH3 0x0312e3 0000042b: PUSH1 0xec 0000042d: SHL 0000042e: PUSH1 0x20 00000430: DUP3 00000431: ADD 00000432: MSTORE 00000433: PUSH1 0x40 00000435: MLOAD 00000436: SWAP2 00000437: DUP3 00000438: SWAP2 00000439: PUSH1 0x20 0000043b: DUP4 0000043c: MSTORE 0000043d: PUSH1 0x20 0000043f: DUP4 00000440: ADD 00000441: SWAP1 00000442: PUSH2 0x3a6a 00000445: JUMP 00000446: JUMPDEST 00000447: SUB 00000448: SWAP1 00000449: RETURN 0000044a: JUMPDEST 0000044b: DUP1 0000044c: REVERT 0000044d: JUMPDEST 0000044e: POP 0000044f: CALLVALUE 00000450: PUSH2 0x044a 00000453: JUMPI 00000454: DUP1 00000455: PUSH1 0x03 00000457: NOT 00000458: CALLDATASIZE 00000459: ADD 0000045a: SLT 0000045b: PUSH2 0x044a 0000045e: JUMPI 0000045f: PUSH1 0x20 00000461: PUSH1 0x40 00000463: MLOAD 00000464: PUSH2 0x2710 00000467: DUP2 00000468: MSTORE 00000469: RETURN 0000046a: JUMPDEST 0000046b: POP 0000046c: CALLVALUE 0000046d: PUSH2 0x044a 00000470: JUMPI 00000471: PUSH1 0x20 00000473: CALLDATASIZE 00000474: PUSH1 0x03 00000476: NOT 00000477: ADD 00000478: SLT 00000479: PUSH2 0x044a 0000047c: JUMPI 0000047d: PUSH2 0x0494 00000480: PUSH2 0x0487 00000483: PUSH2 0x3aac 00000486: JUMP 00000487: JUMPDEST 00000488: PUSH2 0x048f 0000048b: PUSH2 0x436a 0000048e: JUMP 0000048f: JUMPDEST 00000490: PUSH2 0x42f9 00000493: JUMP 00000494: JUMPDEST 00000495: DUP1 00000496: RETURN 00000497: JUMPDEST 00000498: POP 00000499: CALLVALUE 0000049a: PUSH2 0x044a 0000049d: JUMPI 0000049e: PUSH1 0x40 000004a0: CALLDATASIZE 000004a1: PUSH1 0x03 000004a3: NOT 000004a4: ADD 000004a5: SLT 000004a6: PUSH2 0x044a 000004a9: JUMPI 000004aa: PUSH1 0x20 000004ac: PUSH2 0x04c4 000004af: PUSH2 0x04b6 000004b2: PUSH2 0x3b45 000004b5: JUMP 000004b6: JUMPDEST 000004b7: PUSH2 0x04be 000004ba: PUSH2 0x3ac2 000004bd: JUMP 000004be: JUMPDEST 000004bf: SWAP1 000004c0: PUSH2 0x42ac 000004c3: JUMP 000004c4: JUMPDEST 000004c5: PUSH1 0x40 000004c7: MLOAD 000004c8: SWAP1 000004c9: DUP2 000004ca: MSTORE 000004cb: RETURN 000004cc: JUMPDEST 000004cd: PUSH2 0x3c11 000004d0: JUMP 000004d1: JUMPDEST 000004d2: POP 000004d3: CALLVALUE 000004d4: PUSH2 0x044a 000004d7: JUMPI 000004d8: DUP1 000004d9: PUSH1 0x03 000004db: NOT 000004dc: CALLDATASIZE 000004dd: ADD 000004de: SLT 000004df: PUSH2 0x044a 000004e2: JUMPI 000004e3: PUSH1 0x0e 000004e5: SLOAD 000004e6: PUSH1 0x01 000004e8: PUSH1 0x01 000004ea: PUSH1 0xa0 000004ec: SHL 000004ed: SUB 000004ee: SWAP1 000004ef: DUP2 000004f0: AND 000004f1: CALLER 000004f2: DUP2 000004f3: SWAP1 000004f4: SUB 000004f5: PUSH2 0x054a 000004f8: JUMPI 000004f9: PUSH2 0x0516 000004fc: SWAP2 000004fd: PUSH0 000004fe: DUP1 000004ff: MLOAD 00000500: PUSH1 0x20 00000502: PUSH2 0x55da 00000505: DUP4 00000506: CODECOPY 00000507: DUP2 00000508: MLOAD 00000509: SWAP2 0000050a: MSTORE 0000050b: SLOAD 0000050c: AND 0000050d: SWAP1 0000050e: PUSH1 0x12 00000510: SLOAD 00000511: SWAP2 00000512: PUSH2 0x4611 00000515: JUMP 00000516: JUMPDEST 00000517: PUSH32 0x8a2034f45f83800eed1750a670ad845ceee6add62106ca5326598842cfbd6ea7 00000538: PUSH1 0x20 0000053a: PUSH1 0x12 0000053c: SLOAD 0000053d: PUSH1 0x40 0000053f: MLOAD 00000540: SWAP1 00000541: DUP2 00000542: MSTORE 00000543: LOG1 00000544: DUP1 00000545: PUSH1 0x12 00000547: SSTORE 00000548: DUP1 00000549: RETURN 0000054a: JUMPDEST 0000054b: PUSH1 0x40 0000054d: MLOAD 0000054e: PUSH4 0x34801217 00000553: PUSH1 0xe2 00000555: SHL 00000556: DUP2 00000557: MSTORE 00000558: PUSH1 0x04 0000055a: SWAP1 0000055b: REVERT 0000055c: JUMPDEST 0000055d: POP 0000055e: CALLVALUE 0000055f: PUSH2 0x044a 00000562: JUMPI 00000563: PUSH1 0x20 00000565: CALLDATASIZE 00000566: PUSH1 0x03 00000568: NOT 00000569: ADD 0000056a: SLT 0000056b: PUSH2 0x044a 0000056e: JUMPI 0000056f: PUSH2 0x0576 00000572: PUSH2 0x436a 00000575: JUMP 00000576: JUMPDEST 00000577: PUSH1 0x04 00000579: CALLDATALOAD 0000057a: PUSH1 0x1c 0000057c: SSTORE 0000057d: DUP1 0000057e: RETURN 0000057f: JUMPDEST 00000580: POP 00000581: CALLVALUE 00000582: PUSH2 0x044a 00000585: JUMPI 00000586: DUP1 00000587: PUSH1 0x03 00000589: NOT 0000058a: CALLDATASIZE 0000058b: ADD 0000058c: SLT 0000058d: PUSH2 0x044a 00000590: JUMPI 00000591: PUSH1 0x20 00000593: PUSH1 0x40 00000595: MLOAD 00000596: PUSH32 0x00000000000000000000000000000000000000000000000000000000000f4240 000005b7: DUP2 000005b8: MSTORE 000005b9: RETURN 000005ba: JUMPDEST 000005bb: POP 000005bc: CALLVALUE 000005bd: PUSH2 0x044a 000005c0: JUMPI 000005c1: PUSH1 0x40 000005c3: CALLDATASIZE 000005c4: PUSH1 0x03 000005c6: NOT 000005c7: ADD 000005c8: SLT 000005c9: PUSH2 0x044a 000005cc: JUMPI 000005cd: PUSH2 0x05d4 000005d0: PUSH2 0x3aac 000005d3: JUMP 000005d4: JUMPDEST 000005d5: PUSH2 0x05e5 000005d8: PUSH2 0x05df 000005db: PUSH2 0x3ac2 000005de: JUMP 000005df: JUMPDEST 000005e0: SWAP2 000005e1: PUSH2 0x3b98 000005e4: JUMP 000005e5: JUMPDEST 000005e6: SWAP1 000005e7: PUSH1 0x01 000005e9: DUP1 000005ea: PUSH1 0xa0 000005ec: SHL 000005ed: SUB 000005ee: AND 000005ef: PUSH0 000005f0: MSTORE 000005f1: PUSH1 0x20 000005f3: MSTORE 000005f4: PUSH1 0x20 000005f6: PUSH1 0x40 000005f8: PUSH0 000005f9: KECCAK256 000005fa: SLOAD 000005fb: PUSH1 0x40 000005fd: MLOAD 000005fe: SWAP1 000005ff: DUP2 00000600: MSTORE 00000601: RETURN 00000602: JUMPDEST 00000603: POP 00000604: CALLVALUE 00000605: PUSH2 0x044a 00000608: JUMPI 00000609: PUSH1 0x20 0000060b: CALLDATASIZE 0000060c: PUSH1 0x03 0000060e: NOT 0000060f: ADD 00000610: SLT 00000611: PUSH2 0x044a 00000614: JUMPI 00000615: PUSH1 0x20 00000617: SWAP1 00000618: PUSH2 0x061f 0000061b: PUSH2 0x3aac 0000061e: JUMP 0000061f: JUMPDEST 00000620: PUSH1 0x1b 00000622: SLOAD 00000623: DUP3 00000624: MSTORE 00000625: PUSH1 0x17 00000627: DUP4 00000628: MSTORE 00000629: PUSH1 0x40 0000062b: DUP1 0000062c: DUP4 0000062d: KECCAK256 0000062e: PUSH1 0x01 00000630: PUSH1 0x01 00000632: PUSH1 0xa0 00000634: SHL 00000635: SUB 00000636: SWAP1 00000637: SWAP3 00000638: AND 00000639: PUSH0 0000063a: SWAP1 0000063b: DUP2 0000063c: MSTORE 0000063d: SWAP2 0000063e: DUP5 0000063f: MSTORE 00000640: SWAP1 00000641: KECCAK256 00000642: SLOAD 00000643: PUSH1 0x1c 00000645: SLOAD 00000646: DUP2 00000647: DUP2 00000648: LT 00000649: PUSH2 0x0656 0000064c: JUMPI 0000064d: PUSH2 0x04c4 00000650: SWAP3 00000651: POP 00000652: PUSH2 0x3cd0 00000655: JUMP 00000656: JUMPDEST 00000657: POP 00000658: POP 00000659: PUSH2 0x04c4 0000065c: JUMP 0000065d: JUMPDEST 0000065e: POP 0000065f: CALLVALUE 00000660: PUSH2 0x044a 00000663: JUMPI 00000664: DUP1 00000665: PUSH1 0x03 00000667: NOT 00000668: CALLDATASIZE 00000669: ADD 0000066a: SLT 0000066b: PUSH2 0x044a 0000066e: JUMPI 0000066f: PUSH1 0x40 00000671: MLOAD 00000672: DUP2 00000673: SLOAD 00000674: DUP1 00000675: DUP3 00000676: MSTORE 00000677: DUP3 00000678: DUP1 00000679: MSTORE 0000067a: PUSH1 0x20 0000067c: DUP1 0000067d: DUP5 0000067e: KECCAK256 0000067f: DUP2 00000680: DUP5 00000681: ADD 00000682: SWAP5 00000683: SWAP1 00000684: SWAP3 00000685: SWAP2 00000686: JUMPDEST 00000687: DUP3 00000688: DUP3 00000689: LT 0000068a: PUSH2 0x06a9 0000068d: JUMPI 0000068e: PUSH2 0x0446 00000691: DUP6 00000692: PUSH2 0x069d 00000695: DUP2 00000696: DUP10 00000697: SUB 00000698: DUP3 00000699: PUSH2 0x3c94 0000069c: JUMP 0000069d: JUMPDEST 0000069e: PUSH1 0x40 000006a0: MLOAD 000006a1: SWAP2 000006a2: DUP3 000006a3: SWAP2 000006a4: DUP3 000006a5: PUSH2 0x3b54 000006a8: JUMP 000006a9: JUMPDEST 000006aa: DUP4 000006ab: SLOAD 000006ac: DUP7 000006ad: MSTORE 000006ae: SWAP5 000006af: DUP6 000006b0: ADD 000006b1: SWAP5 000006b2: PUSH1 0x01 000006b4: SWAP4 000006b5: DUP5 000006b6: ADD 000006b7: SWAP4 000006b8: SWAP1 000006b9: SWAP2 000006ba: ADD 000006bb: SWAP1 000006bc: PUSH2 0x0686 000006bf: JUMP 000006c0: JUMPDEST 000006c1: POP 000006c2: CALLVALUE 000006c3: PUSH2 0x044a 000006c6: JUMPI 000006c7: PUSH1 0x20 000006c9: CALLDATASIZE 000006ca: PUSH1 0x03 000006cc: NOT 000006cd: ADD 000006ce: SLT 000006cf: PUSH2 0x044a 000006d2: JUMPI 000006d3: PUSH1 0x20 000006d5: PUSH2 0x04c4 000006d8: PUSH2 0x06df 000006db: PUSH2 0x3aac 000006de: JUMP 000006df: JUMPDEST 000006e0: PUSH2 0x412a 000006e3: JUMP 000006e4: JUMPDEST 000006e5: POP 000006e6: CALLVALUE 000006e7: PUSH2 0x044a 000006ea: JUMPI 000006eb: PUSH1 0x20 000006ed: CALLDATASIZE 000006ee: PUSH1 0x03 000006f0: NOT 000006f1: ADD 000006f2: SLT 000006f3: PUSH2 0x044a 000006f6: JUMPI 000006f7: PUSH2 0x06fe 000006fa: PUSH2 0x3aac 000006fd: JUMP 000006fe: JUMPDEST 000006ff: PUSH2 0x0706 00000702: PUSH2 0x436a 00000705: JUMP 00000706: JUMPDEST 00000707: PUSH1 0x01 00000709: PUSH1 0x01 0000070b: PUSH1 0xa0 0000070d: SHL 0000070e: SUB 0000070f: AND 00000710: DUP1 00000711: ISZERO 00000712: PUSH2 0x074d 00000715: JUMPI 00000716: PUSH1 0x20 00000718: DUP2 00000719: PUSH2 0x0742 0000071c: PUSH32 0xe473c74f34be27c1464d6624f14a0d7fd4e301cbfa29c3eba425d378c8a7ebe0 0000073d: SWAP4 0000073e: PUSH2 0x48af 00000741: JUMP 00000742: JUMPDEST 00000743: POP 00000744: PUSH1 0x40 00000746: MLOAD 00000747: SWAP1 00000748: DUP2 00000749: MSTORE 0000074a: LOG1 0000074b: DUP1 0000074c: RETURN 0000074d: JUMPDEST 0000074e: PUSH1 0x40 00000750: MLOAD 00000751: PUSH4 0x17dc37cb 00000756: PUSH1 0xe1 00000758: SHL 00000759: DUP2 0000075a: MSTORE 0000075b: PUSH1 0x04 0000075d: SWAP1 0000075e: REVERT 0000075f: JUMPDEST 00000760: POP 00000761: CALLVALUE 00000762: PUSH2 0x044a 00000765: JUMPI 00000766: PUSH1 0x20 00000768: CALLDATASIZE 00000769: PUSH1 0x03 0000076b: NOT 0000076c: ADD 0000076d: SLT 0000076e: PUSH2 0x044a 00000771: JUMPI 00000772: PUSH1 0x20 00000774: SWAP1 00000775: PUSH2 0x04c4 00000778: SWAP1 00000779: PUSH1 0x40 0000077b: SWAP1 0000077c: PUSH1 0x01 0000077e: PUSH1 0x01 00000780: PUSH1 0xa0 00000782: SHL 00000783: SUB 00000784: PUSH2 0x078b 00000787: PUSH2 0x3aac 0000078a: JUMP 0000078b: JUMPDEST 0000078c: AND 0000078d: DUP2 0000078e: MSTORE 0000078f: PUSH0 00000790: DUP1 00000791: MLOAD 00000792: PUSH1 0x20 00000794: PUSH2 0x553a 00000797: DUP4 00000798: CODECOPY 00000799: DUP2 0000079a: MLOAD 0000079b: SWAP2 0000079c: MSTORE 0000079d: DUP5 0000079e: MSTORE 0000079f: KECCAK256 000007a0: SLOAD 000007a1: PUSH2 0x43a2 000007a4: JUMP 000007a5: JUMPDEST 000007a6: POP 000007a7: CALLVALUE 000007a8: PUSH2 0x044a 000007ab: JUMPI 000007ac: PUSH1 0x20 000007ae: CALLDATASIZE 000007af: PUSH1 0x03 000007b1: NOT 000007b2: ADD 000007b3: SLT 000007b4: PUSH2 0x044a 000007b7: JUMPI 000007b8: PUSH2 0x07bf 000007bb: PUSH2 0x3aac 000007be: JUMP 000007bf: JUMPDEST 000007c0: PUSH2 0x07c7 000007c3: PUSH2 0x436a 000007c6: JUMP 000007c7: JUMPDEST 000007c8: PUSH1 0x01 000007ca: PUSH1 0x01 000007cc: PUSH1 0xa0 000007ce: SHL 000007cf: SUB 000007d0: DUP2 000007d1: DUP2 000007d2: AND 000007d3: SWAP2 000007d4: DUP3 000007d5: ISZERO 000007d6: PUSH2 0x054a 000007d9: JUMPI 000007da: PUSH32 0x2861448678f0be67f11bfb5481b3e3b4cfeb3acc6126ad60a05f95bfc6530666 000007fb: SWAP1 000007fc: PUSH1 0x0e 000007fe: SLOAD 000007ff: SWAP3 00000800: PUSH2 0x0810 00000803: PUSH1 0x40 00000805: MLOAD 00000806: SWAP3 00000807: DUP4 00000808: SWAP3 00000809: DUP7 0000080a: AND 0000080b: DUP4 0000080c: PUSH2 0x4150 0000080f: JUMP 00000810: JUMPDEST 00000811: SUB 00000812: SWAP1 00000813: LOG1 00000814: PUSH1 0x01 00000816: PUSH1 0x01 00000818: PUSH1 0xa0 0000081a: SHL 0000081b: SUB 0000081c: NOT 0000081d: AND 0000081e: OR 0000081f: PUSH1 0x0e 00000821: SSTORE 00000822: DUP1 00000823: RETURN 00000824: JUMPDEST 00000825: POP 00000826: CALLVALUE 00000827: PUSH2 0x044a 0000082a: JUMPI 0000082b: PUSH1 0x20 0000082d: CALLDATASIZE 0000082e: PUSH1 0x03 00000830: NOT 00000831: ADD 00000832: SLT 00000833: PUSH2 0x044a 00000836: JUMPI 00000837: PUSH2 0x083e 0000083a: PUSH2 0x3aac 0000083d: JUMP 0000083e: JUMPDEST 0000083f: POP 00000840: PUSH1 0x20 00000842: PUSH1 0x40 00000844: MLOAD 00000845: PUSH0 00000846: NOT 00000847: DUP2 00000848: MSTORE 00000849: RETURN 0000084a: JUMPDEST 0000084b: POP 0000084c: CALLVALUE 0000084d: PUSH2 0x044a 00000850: JUMPI 00000851: DUP1 00000852: PUSH1 0x03 00000854: NOT 00000855: CALLDATASIZE 00000856: ADD 00000857: SLT 00000858: PUSH2 0x044a 0000085b: JUMPI 0000085c: PUSH1 0x20 0000085e: PUSH1 0x1d 00000860: SLOAD 00000861: PUSH1 0x40 00000863: MLOAD 00000864: SWAP1 00000865: DUP2 00000866: MSTORE 00000867: RETURN 00000868: JUMPDEST 00000869: POP 0000086a: CALLVALUE 0000086b: PUSH2 0x044a 0000086e: JUMPI 0000086f: DUP1 00000870: PUSH1 0x03 00000872: NOT 00000873: CALLDATASIZE 00000874: ADD 00000875: SLT 00000876: PUSH2 0x044a 00000879: JUMPI 0000087a: PUSH1 0x20 0000087c: PUSH32 0x4995646f72fa9a270ffc094641ab616ce576b2e3eab25eaf05c15caa4f0e595d 0000089d: TLOAD 0000089e: PUSH1 0x40 000008a0: MLOAD 000008a1: SWAP1 000008a2: DUP2 000008a3: MSTORE 000008a4: RETURN 000008a5: JUMPDEST 000008a6: POP 000008a7: CALLVALUE 000008a8: PUSH2 0x044a 000008ab: JUMPI 000008ac: DUP1 000008ad: PUSH1 0x03 000008af: NOT 000008b0: CALLDATASIZE 000008b1: ADD 000008b2: SLT 000008b3: PUSH2 0x044a 000008b6: JUMPI 000008b7: PUSH1 0x20 000008b9: PUSH2 0x04c4 000008bc: PUSH2 0x41ad 000008bf: JUMP 000008c0: JUMPDEST 000008c1: POP 000008c2: CALLVALUE 000008c3: PUSH2 0x044a 000008c6: JUMPI 000008c7: PUSH1 0x60 000008c9: CALLDATASIZE 000008ca: PUSH1 0x03 000008cc: NOT 000008cd: ADD 000008ce: SLT 000008cf: PUSH2 0x044a 000008d2: JUMPI 000008d3: PUSH2 0x08da 000008d6: PUSH2 0x3aac 000008d9: JUMP 000008da: JUMPDEST 000008db: PUSH1 0x24 000008dd: CALLDATALOAD 000008de: PUSH1 0x44 000008e0: CALLDATALOAD 000008e1: SWAP2 000008e2: DUP3 000008e3: ISZERO 000008e4: PUSH0 000008e5: EQ 000008e6: PUSH2 0x0cf6 000008e9: JUMPI 000008ea: PUSH0 000008eb: DUP1 000008ec: MLOAD 000008ed: PUSH1 0x20 000008ef: PUSH2 0x557a 000008f2: DUP4 000008f3: CODECOPY 000008f4: DUP2 000008f5: MLOAD 000008f6: SWAP2 000008f7: MSTORE 000008f8: SLOAD 000008f9: CALLER 000008fa: PUSH1 0x01 000008fc: PUSH1 0x01 000008fe: PUSH1 0xa0 00000900: SHL 00000901: SUB 00000902: SWAP2 00000903: DUP3 00000904: AND 00000905: EQ 00000906: ISZERO 00000907: SWAP1 00000908: DUP2 00000909: PUSH2 0x0ce7 0000090c: JUMPI 0000090d: JUMPDEST 0000090e: POP 0000090f: PUSH2 0x0cd5 00000912: JUMPI 00000913: JUMPDEST 00000914: PUSH2 0x091c 00000917: DUP4 00000918: PUSH2 0x466f 0000091b: JUMP 0000091c: JUMPDEST 0000091d: SWAP1 0000091e: SLOAD 0000091f: PUSH1 0x01 00000921: PUSH1 0x01 00000923: PUSH1 0xa0 00000925: SHL 00000926: SUB 00000927: PUSH1 0x03 00000929: SWAP3 0000092a: SWAP1 0000092b: SWAP3 0000092c: SHL 0000092d: SHR 0000092e: DUP2 0000092f: AND 00000930: DUP1 00000931: DUP7 00000932: MSTORE 00000933: PUSH1 0x02 00000935: PUSH1 0x20 00000937: SWAP1 00000938: DUP2 00000939: MSTORE 0000093a: PUSH1 0x40 0000093c: DUP1 0000093d: DUP9 0000093e: KECCAK256 0000093f: SLOAD 00000940: SWAP1 00000941: MLOAD 00000942: PUSH3 0x8bb5fb 00000946: PUSH1 0xe4 00000948: SHL 00000949: DUP2 0000094a: MSTORE 0000094b: SWAP2 0000094c: SWAP4 0000094d: SWAP2 0000094e: DUP5 0000094f: DUP2 00000950: PUSH1 0x04 00000952: DUP2 00000953: DUP13 00000954: DUP9 00000955: GAS 00000956: CALL 00000957: SWAP1 00000958: DUP2 00000959: ISZERO 0000095a: PUSH2 0x0cca 0000095d: JUMPI 0000095e: DUP10 0000095f: SWAP2 00000960: PUSH2 0x0c9d 00000963: JUMPI 00000964: JUMPDEST 00000965: POP 00000966: PUSH2 0x096d 00000969: PUSH2 0x3f33 0000096c: JUMP 0000096d: JUMPDEST 0000096e: PUSH1 0x40 00000970: MLOAD 00000971: PUSH4 0x313ce567 00000976: PUSH1 0xe0 00000978: SHL 00000979: DUP2 0000097a: MSTORE 0000097b: SWAP4 0000097c: DUP8 0000097d: AND 0000097e: SWAP4 0000097f: DUP7 00000980: DUP2 00000981: PUSH1 0x04 00000983: DUP2 00000984: DUP9 00000985: GAS 00000986: STATICCALL 00000987: SWAP1 00000988: DUP2 00000989: ISZERO 0000098a: PUSH2 0x0c92 0000098d: JUMPI 0000098e: DUP12 0000098f: SWAP2 00000990: PUSH2 0x0c55 00000993: JUMPI 00000994: JUMPDEST 00000995: POP 00000996: PUSH2 0x2710 00000999: SWAP3 0000099a: PUSH2 0x09e5 0000099d: SWAP3 0000099e: PUSH2 0x09d7 000009a1: SWAP3 000009a2: DUP12 000009a3: PUSH1 0xff 000009a5: DUP4 000009a6: AND 000009a7: PUSH1 0xff 000009a9: DUP4 000009aa: AND 000009ab: DUP2 000009ac: DUP2 000009ad: GT 000009ae: PUSH0 000009af: EQ 000009b0: PUSH2 0x0c23 000009b3: JUMPI 000009b4: POP 000009b5: POP 000009b6: POP 000009b7: PUSH2 0x09c6 000009ba: PUSH2 0x09d1 000009bd: SWAP3 000009be: PUSH2 0x09cb 000009c1: SWAP3 000009c2: PUSH2 0x416a 000009c5: JUMP 000009c6: JUMPDEST 000009c7: PUSH2 0x417e 000009ca: JUMP 000009cb: JUMPDEST 000009cc: DUP12 000009cd: PUSH2 0x3cf0 000009d0: JUMP 000009d1: JUMPDEST 000009d2: SWAP1 000009d3: PUSH2 0x3d7b 000009d6: JUMP 000009d7: JUMPDEST 000009d8: SWAP3 000009d9: PUSH2 0x09e0 000009dc: PUSH2 0x3d0e 000009df: JUMP 000009e0: JUMPDEST 000009e1: PUSH2 0x3cdd 000009e4: JUMP 000009e5: JUMPDEST 000009e6: DIV 000009e7: LT 000009e8: PUSH2 0x0c11 000009eb: JUMPI 000009ec: PUSH1 0x40 000009ee: MLOAD 000009ef: PUSH4 0x6eb1769f 000009f4: PUSH1 0xe1 000009f6: SHL 000009f7: DUP2 000009f8: MSTORE 000009f9: DUP4 000009fa: DUP2 000009fb: DUP1 000009fc: PUSH2 0x0a09 000009ff: DUP7 00000a00: ADDRESS 00000a01: PUSH1 0x04 00000a03: DUP5 00000a04: ADD 00000a05: PUSH2 0x4150 00000a08: JUMP 00000a09: JUMPDEST 00000a0a: SUB 00000a0b: DUP2 00000a0c: DUP6 00000a0d: GAS 00000a0e: STATICCALL 00000a0f: DUP1 00000a10: ISZERO 00000a11: PUSH2 0x0c06 00000a14: JUMPI 00000a15: DUP7 00000a16: SWAP1 00000a17: DUP10 00000a18: SWAP1 00000a19: PUSH2 0x0bd1 00000a1c: JUMPI 00000a1d: JUMPDEST 00000a1e: PUSH2 0x0a27 00000a21: SWAP3 00000a22: POP 00000a23: PUSH2 0x3d7b 00000a26: JUMP 00000a27: JUMPDEST 00000a28: PUSH1 0x40 00000a2a: MLOAD 00000a2b: PUSH4 0x095ea7b3 00000a30: PUSH1 0xe0 00000a32: SHL 00000a33: DUP6 00000a34: DUP3 00000a35: ADD 00000a36: DUP2 00000a37: DUP2 00000a38: MSTORE 00000a39: PUSH1 0x01 00000a3b: PUSH1 0x01 00000a3d: PUSH1 0xa0 00000a3f: SHL 00000a40: SUB 00000a41: DUP7 00000a42: AND 00000a43: PUSH1 0x24 00000a45: DUP5 00000a46: ADD 00000a47: MSTORE 00000a48: PUSH1 0x44 00000a4a: DUP1 00000a4b: DUP5 00000a4c: ADD 00000a4d: SWAP5 00000a4e: SWAP1 00000a4f: SWAP5 00000a50: MSTORE 00000a51: SWAP3 00000a52: DUP3 00000a53: MSTORE 00000a54: SWAP3 00000a55: SWAP1 00000a56: SWAP2 00000a57: DUP6 00000a58: SWAP1 00000a59: DUP11 00000a5a: SWAP1 00000a5b: PUSH2 0x0a65 00000a5e: PUSH1 0x64 00000a60: DUP7 00000a61: PUSH2 0x3c94 00000a64: JUMP 00000a65: JUMPDEST 00000a66: DUP5 00000a67: MLOAD 00000a68: SWAP1 00000a69: DUP3 00000a6a: DUP6 00000a6b: GAS 00000a6c: CALL 00000a6d: DUP10 00000a6e: MLOAD 00000a6f: RETURNDATASIZE 00000a70: DUP3 00000a71: PUSH2 0x0bb5 00000a74: JUMPI 00000a75: JUMPDEST 00000a76: POP 00000a77: POP 00000a78: ISZERO 00000a79: PUSH2 0x0b55 00000a7c: JUMPI 00000a7d: JUMPDEST 00000a7e: POP 00000a7f: POP 00000a80: PUSH1 0x40 00000a82: MLOAD 00000a83: PUSH4 0x56f4edaf 00000a88: PUSH1 0xe0 00000a8a: SHL 00000a8b: DUP2 00000a8c: MSTORE 00000a8d: PUSH1 0x01 00000a8f: PUSH1 0x01 00000a91: PUSH1 0xa0 00000a93: SHL 00000a94: SUB 00000a95: DUP6 00000a96: AND 00000a97: PUSH1 0x04 00000a99: DUP3 00000a9a: ADD 00000a9b: MSTORE 00000a9c: PUSH1 0x24 00000a9e: DUP2 00000a9f: ADD 00000aa0: DUP7 00000aa1: SWAP1 00000aa2: MSTORE 00000aa3: SWAP2 00000aa4: DUP4 00000aa5: SWAP2 00000aa6: POP 00000aa7: DUP3 00000aa8: SWAP1 00000aa9: PUSH1 0x44 00000aab: SWAP1 00000aac: DUP3 00000aad: SWAP1 00000aae: DUP11 00000aaf: SWAP1 00000ab0: GAS 00000ab1: CALL 00000ab2: SWAP2 00000ab3: DUP3 00000ab4: ISZERO 00000ab5: PUSH2 0x0b4a 00000ab8: JUMPI 00000ab9: DUP7 00000aba: SWAP3 00000abb: PUSH2 0x0b0f 00000abe: JUMPI 00000abf: JUMPDEST 00000ac0: POP 00000ac1: POP 00000ac2: ISZERO 00000ac3: PUSH2 0x0afd 00000ac6: JUMPI 00000ac7: PUSH2 0x0af7 00000aca: PUSH32 0x921f9e77ef648025190d46d8b7f3d22a5546367ff7aaa883b1f39ffd2a2d325d 00000aeb: SWAP4 00000aec: PUSH1 0x40 00000aee: MLOAD 00000aef: SWAP4 00000af0: DUP5 00000af1: SWAP4 00000af2: DUP5 00000af3: PUSH2 0x418f 00000af6: JUMP 00000af7: JUMPDEST 00000af8: SUB 00000af9: SWAP1 00000afa: LOG1 00000afb: DUP1 00000afc: RETURN 00000afd: JUMPDEST 00000afe: PUSH1 0x40 00000b00: MLOAD 00000b01: PUSH4 0x0508c939 00000b06: PUSH1 0xe4 00000b08: SHL 00000b09: DUP2 00000b0a: MSTORE 00000b0b: PUSH1 0x04 00000b0d: SWAP1 00000b0e: REVERT 00000b0f: JUMPDEST 00000b10: SWAP1 00000b11: DUP1 00000b12: SWAP3 00000b13: POP 00000b14: DUP2 00000b15: RETURNDATASIZE 00000b16: DUP4 00000b17: GT 00000b18: PUSH2 0x0b43 00000b1b: JUMPI 00000b1c: JUMPDEST 00000b1d: PUSH2 0x0b26 00000b20: DUP2 00000b21: DUP4 00000b22: PUSH2 0x3c94 00000b25: JUMP 00000b26: JUMPDEST 00000b27: DUP2 00000b28: ADD 00000b29: SUB 00000b2a: SLT 00000b2b: PUSH2 0x0b3f 00000b2e: JUMPI 00000b2f: MLOAD 00000b30: DUP1 00000b31: ISZERO 00000b32: ISZERO 00000b33: DUP2 00000b34: SUB 00000b35: PUSH2 0x0b3f 00000b38: JUMPI 00000b39: PUSH0 00000b3a: DUP1 00000b3b: PUSH2 0x0abf 00000b3e: JUMP 00000b3f: JUMPDEST 00000b40: DUP5 00000b41: DUP1 00000b42: REVERT 00000b43: JUMPDEST 00000b44: POP 00000b45: RETURNDATASIZE 00000b46: PUSH2 0x0b1c 00000b49: JUMP 00000b4a: JUMPDEST 00000b4b: PUSH1 0x40 00000b4d: MLOAD 00000b4e: RETURNDATASIZE 00000b4f: DUP9 00000b50: DUP3 00000b51: RETURNDATACOPY 00000b52: RETURNDATASIZE 00000b53: SWAP1 00000b54: REVERT 00000b55: JUMPDEST 00000b56: PUSH1 0x40 00000b58: MLOAD 00000b59: SWAP3 00000b5a: DUP6 00000b5b: DUP5 00000b5c: ADD 00000b5d: MSTORE 00000b5e: DUP4 00000b5f: PUSH1 0x24 00000b61: DUP5 00000b62: ADD 00000b63: MSTORE 00000b64: DUP9 00000b65: PUSH1 0x44 00000b67: DUP5 00000b68: ADD 00000b69: MSTORE 00000b6a: PUSH1 0x44 00000b6c: DUP4 00000b6d: MSTORE 00000b6e: PUSH1 0x80 00000b70: DUP4 00000b71: ADD 00000b72: DUP4 00000b73: DUP2 00000b74: LT 00000b75: PUSH1 0x01 00000b77: PUSH1 0x01 00000b79: PUSH1 0x40 00000b7b: SHL 00000b7c: SUB 00000b7d: DUP3 00000b7e: GT 00000b7f: OR 00000b80: PUSH2 0x0ba1 00000b83: JUMPI 00000b84: PUSH2 0x0b99 00000b87: SWAP4 00000b88: PUSH2 0x0b94 00000b8b: SWAP2 00000b8c: PUSH1 0x40 00000b8e: MSTORE 00000b8f: DUP3 00000b90: PUSH2 0x4814 00000b93: JUMP 00000b94: JUMPDEST 00000b95: PUSH2 0x4814 00000b98: JUMP 00000b99: JUMPDEST 00000b9a: PUSH0 00000b9b: DUP1 00000b9c: DUP1 00000b9d: PUSH2 0x0a7d 00000ba0: JUMP 00000ba1: JUMPDEST 00000ba2: PUSH4 0x4e487b71 00000ba7: PUSH1 0xe0 00000ba9: SHL 00000baa: PUSH0 00000bab: MSTORE 00000bac: PUSH1 0x41 00000bae: PUSH1 0x04 00000bb0: MSTORE 00000bb1: PUSH1 0x24 00000bb3: PUSH0 00000bb4: REVERT 00000bb5: JUMPDEST 00000bb6: SWAP1 00000bb7: SWAP2 00000bb8: POP 00000bb9: PUSH2 0x0bc9 00000bbc: JUMPI 00000bbd: POP 00000bbe: DUP1 00000bbf: EXTCODESIZE 00000bc0: ISZERO 00000bc1: ISZERO 00000bc2: JUMPDEST 00000bc3: PUSH0 00000bc4: DUP1 00000bc5: PUSH2 0x0a75 00000bc8: JUMP 00000bc9: JUMPDEST 00000bca: PUSH1 0x01 00000bcc: EQ 00000bcd: PUSH2 0x0bc2 00000bd0: JUMP 00000bd1: JUMPDEST 00000bd2: POP 00000bd3: POP 00000bd4: DUP4 00000bd5: DUP2 00000bd6: DUP2 00000bd7: RETURNDATASIZE 00000bd8: DUP4 00000bd9: GT 00000bda: PUSH2 0x0bff 00000bdd: JUMPI 00000bde: JUMPDEST 00000bdf: PUSH2 0x0be8 00000be2: DUP2 00000be3: DUP4 00000be4: PUSH2 0x3c94 00000be7: JUMP 00000be8: JUMPDEST 00000be9: DUP2 00000bea: ADD 00000beb: SUB 00000bec: SLT 00000bed: PUSH2 0x0bfb 00000bf0: JUMPI 00000bf1: DUP6 00000bf2: PUSH2 0x0a27 00000bf5: SWAP2 00000bf6: MLOAD 00000bf7: PUSH2 0x0a1d 00000bfa: JUMP 00000bfb: JUMPDEST 00000bfc: PUSH0 00000bfd: DUP1 00000bfe: REVERT 00000bff: JUMPDEST 00000c00: POP 00000c01: RETURNDATASIZE 00000c02: PUSH2 0x0bde 00000c05: JUMP 00000c06: JUMPDEST 00000c07: PUSH1 0x40 00000c09: MLOAD 00000c0a: RETURNDATASIZE 00000c0b: DUP11 00000c0c: DUP3 00000c0d: RETURNDATACOPY 00000c0e: RETURNDATASIZE 00000c0f: SWAP1 00000c10: REVERT 00000c11: JUMPDEST 00000c12: PUSH1 0x40 00000c14: MLOAD 00000c15: PUSH4 0xe55fb509 00000c1a: PUSH1 0xe0 00000c1c: SHL 00000c1d: DUP2 00000c1e: MSTORE 00000c1f: PUSH1 0x04 00000c21: SWAP1 00000c22: REVERT 00000c23: JUMPDEST 00000c24: SWAP5 00000c25: SWAP4 00000c26: SWAP2 00000c27: SWAP5 00000c28: LT 00000c29: PUSH2 0x0c34 00000c2c: JUMPI 00000c2d: JUMPDEST 00000c2e: POP 00000c2f: POP 00000c30: PUSH2 0x3d7b 00000c33: JUMP 00000c34: JUMPDEST 00000c35: PUSH2 0x0c4d 00000c38: SWAP3 00000c39: SWAP4 00000c3a: POP 00000c3b: PUSH2 0x0c47 00000c3e: SWAP2 00000c3f: PUSH2 0x09c6 00000c42: SWAP2 00000c43: PUSH2 0x416a 00000c46: JUMP 00000c47: JUMPDEST 00000c48: DUP12 00000c49: PUSH2 0x3cdd 00000c4c: JUMP 00000c4d: JUMPDEST 00000c4e: SWAP1 00000c4f: PUSH0 00000c50: DUP1 00000c51: PUSH2 0x0c2d 00000c54: JUMP 00000c55: JUMPDEST 00000c56: SWAP1 00000c57: POP 00000c58: DUP7 00000c59: DUP2 00000c5a: DUP2 00000c5b: RETURNDATASIZE 00000c5c: DUP4 00000c5d: GT 00000c5e: PUSH2 0x0c8b 00000c61: JUMPI 00000c62: JUMPDEST 00000c63: PUSH2 0x0c6c 00000c66: DUP2 00000c67: DUP4 00000c68: PUSH2 0x3c94 00000c6b: JUMP 00000c6c: JUMPDEST 00000c6d: DUP2 00000c6e: ADD 00000c6f: SUB 00000c70: SLT 00000c71: PUSH2 0x0c87 00000c74: JUMPI 00000c75: MLOAD 00000c76: PUSH1 0xff 00000c78: DUP2 00000c79: AND 00000c7a: DUP2 00000c7b: SUB 00000c7c: PUSH2 0x0c87 00000c7f: JUMPI 00000c80: PUSH2 0x2710 00000c83: PUSH2 0x0994 00000c86: JUMP 00000c87: JUMPDEST 00000c88: DUP11 00000c89: DUP1 00000c8a: REVERT 00000c8b: JUMPDEST 00000c8c: POP 00000c8d: RETURNDATASIZE 00000c8e: PUSH2 0x0c62 00000c91: JUMP 00000c92: JUMPDEST 00000c93: PUSH1 0x40 00000c95: MLOAD 00000c96: RETURNDATASIZE 00000c97: DUP14 00000c98: DUP3 00000c99: RETURNDATACOPY 00000c9a: RETURNDATASIZE 00000c9b: SWAP1 00000c9c: REVERT 00000c9d: JUMPDEST 00000c9e: SWAP1 00000c9f: POP 00000ca0: DUP5 00000ca1: DUP2 00000ca2: DUP2 00000ca3: RETURNDATASIZE 00000ca4: DUP4 00000ca5: GT 00000ca6: PUSH2 0x0cc3 00000ca9: JUMPI 00000caa: JUMPDEST 00000cab: PUSH2 0x0cb4 00000cae: DUP2 00000caf: DUP4 00000cb0: PUSH2 0x3c94 00000cb3: JUMP 00000cb4: JUMPDEST 00000cb5: DUP2 00000cb6: ADD 00000cb7: SUB 00000cb8: SLT 00000cb9: PUSH2 0x0bfb 00000cbc: JUMPI 00000cbd: MLOAD 00000cbe: PUSH0 00000cbf: PUSH2 0x0964 00000cc2: JUMP 00000cc3: JUMPDEST 00000cc4: POP 00000cc5: RETURNDATASIZE 00000cc6: PUSH2 0x0caa 00000cc9: JUMP 00000cca: JUMPDEST 00000ccb: PUSH1 0x40 00000ccd: MLOAD 00000cce: RETURNDATASIZE 00000ccf: DUP12 00000cd0: DUP3 00000cd1: RETURNDATACOPY 00000cd2: RETURNDATASIZE 00000cd3: SWAP1 00000cd4: REVERT 00000cd5: JUMPDEST 00000cd6: PUSH1 0x40 00000cd8: MLOAD 00000cd9: PUSH4 0xccea9e6f 00000cde: PUSH1 0xe0 00000ce0: SHL 00000ce1: DUP2 00000ce2: MSTORE 00000ce3: PUSH1 0x04 00000ce5: SWAP1 00000ce6: REVERT 00000ce7: JUMPDEST 00000ce8: SWAP1 00000ce9: POP 00000cea: PUSH1 0x0d 00000cec: SLOAD 00000ced: AND 00000cee: CALLER 00000cef: EQ 00000cf0: ISZERO 00000cf1: PUSH0 00000cf2: PUSH2 0x090d 00000cf5: JUMP 00000cf6: JUMPDEST 00000cf7: PUSH0 00000cf8: DUP1 00000cf9: MLOAD 00000cfa: PUSH1 0x20 00000cfc: PUSH2 0x557a 00000cff: DUP4 00000d00: CODECOPY 00000d01: DUP2 00000d02: MLOAD 00000d03: SWAP2 00000d04: MSTORE 00000d05: SLOAD 00000d06: PUSH1 0x01 00000d08: PUSH1 0x01 00000d0a: PUSH1 0xa0 00000d0c: SHL 00000d0d: SUB 00000d0e: AND 00000d0f: CALLER 00000d10: EQ 00000d11: PUSH2 0x0913 00000d14: JUMPI 00000d15: PUSH1 0x40 00000d17: MLOAD 00000d18: PUSH4 0xccea9e6f 00000d1d: PUSH1 0xe0 00000d1f: SHL 00000d20: DUP2 00000d21: MSTORE 00000d22: PUSH1 0x04 00000d24: SWAP1 00000d25: REVERT 00000d26: JUMPDEST 00000d27: PUSH2 0x3bd0 00000d2a: JUMP 00000d2b: JUMPDEST 00000d2c: POP 00000d2d: CALLVALUE 00000d2e: PUSH2 0x044a 00000d31: JUMPI 00000d32: PUSH1 0x20 00000d34: CALLDATASIZE 00000d35: PUSH1 0x03 00000d37: NOT 00000d38: ADD 00000d39: SLT 00000d3a: PUSH2 0x044a 00000d3d: JUMPI 00000d3e: PUSH2 0x0d45 00000d41: PUSH2 0x3d0e 00000d44: JUMP 00000d45: JUMPDEST 00000d46: PUSH1 0x01 00000d48: DUP2 00000d49: ADD 00000d4a: DUP1 00000d4b: SWAP2 00000d4c: GT 00000d4d: PUSH2 0x0d7a 00000d50: JUMPI 00000d51: PUSH0 00000d52: DUP1 00000d53: MLOAD 00000d54: PUSH1 0x20 00000d56: PUSH2 0x559a 00000d59: DUP4 00000d5a: CODECOPY 00000d5b: DUP2 00000d5c: MLOAD 00000d5d: SWAP2 00000d5e: MSTORE 00000d5f: SLOAD 00000d60: SWAP1 00000d61: PUSH1 0x01 00000d63: DUP3 00000d64: ADD 00000d65: DUP1 00000d66: SWAP3 00000d67: GT 00000d68: PUSH2 0x0d7a 00000d6b: JUMPI 00000d6c: PUSH1 0x20 00000d6e: SWAP2 00000d6f: PUSH2 0x04c4 00000d72: SWAP2 00000d73: PUSH1 0x04 00000d75: CALLDATALOAD 00000d76: PUSH2 0x464f 00000d79: JUMP 00000d7a: JUMPDEST 00000d7b: PUSH4 0x4e487b71 00000d80: PUSH1 0xe0 00000d82: SHL 00000d83: PUSH0 00000d84: MSTORE 00000d85: PUSH1 0x11 00000d87: PUSH1 0x04 00000d89: MSTORE 00000d8a: PUSH1 0x24 00000d8c: PUSH0 00000d8d: REVERT 00000d8e: JUMPDEST 00000d8f: POP 00000d90: CALLVALUE 00000d91: PUSH2 0x044a 00000d94: JUMPI 00000d95: PUSH1 0x20 00000d97: SWAP1 00000d98: DUP2 00000d99: PUSH1 0x03 00000d9b: NOT 00000d9c: CALLDATASIZE 00000d9d: ADD 00000d9e: SLT 00000d9f: PUSH2 0x044a 00000da2: JUMPI 00000da3: DUP1 00000da4: DUP3 00000da5: PUSH1 0x04 00000da7: PUSH2 0x0db0 00000daa: DUP2 00000dab: CALLDATALOAD 00000dac: PUSH2 0x466f 00000daf: JUMP 00000db0: JUMPDEST 00000db1: SWAP1 00000db2: SLOAD 00000db3: PUSH1 0x40 00000db5: MLOAD 00000db6: PUSH3 0x8bb5fb 00000dba: PUSH1 0xe4 00000dbc: SHL 00000dbd: DUP2 00000dbe: MSTORE 00000dbf: SWAP5 00000dc0: DUP6 00000dc1: SWAP4 00000dc2: SWAP3 00000dc3: DUP5 00000dc4: SWAP3 00000dc5: PUSH1 0x03 00000dc7: SWAP2 00000dc8: SWAP1 00000dc9: SWAP2 00000dca: SHL 00000dcb: SHR 00000dcc: PUSH1 0x01 00000dce: PUSH1 0x01 00000dd0: PUSH1 0xa0 00000dd2: SHL 00000dd3: SUB 00000dd4: AND 00000dd5: GAS 00000dd6: CALL 00000dd7: SWAP2 00000dd8: DUP3 00000dd9: ISZERO 00000dda: PUSH2 0x0e19 00000ddd: JUMPI 00000dde: SWAP2 00000ddf: PUSH2 0x0dec 00000de2: JUMPI 00000de3: JUMPDEST 00000de4: POP 00000de5: PUSH1 0x40 00000de7: MLOAD 00000de8: SWAP1 00000de9: DUP2 00000dea: MSTORE 00000deb: RETURN 00000dec: JUMPDEST 00000ded: SWAP1 00000dee: POP 00000def: DUP2 00000df0: DUP2 00000df1: DUP2 00000df2: RETURNDATASIZE 00000df3: DUP4 00000df4: GT 00000df5: PUSH2 0x0e12 00000df8: JUMPI 00000df9: JUMPDEST 00000dfa: PUSH2 0x0e03 00000dfd: DUP2 00000dfe: DUP4 00000dff: PUSH2 0x3c94 00000e02: JUMP 00000e03: JUMPDEST 00000e04: DUP2 00000e05: ADD 00000e06: SUB 00000e07: SLT 00000e08: PUSH2 0x0bfb 00000e0b: JUMPI 00000e0c: MLOAD 00000e0d: PUSH0 00000e0e: PUSH2 0x0de3 00000e11: JUMP 00000e12: JUMPDEST 00000e13: POP 00000e14: RETURNDATASIZE 00000e15: PUSH2 0x0df9 00000e18: JUMP 00000e19: JUMPDEST 00000e1a: PUSH1 0x40 00000e1c: MLOAD 00000e1d: SWAP1 00000e1e: RETURNDATASIZE 00000e1f: SWAP1 00000e20: DUP3 00000e21: RETURNDATACOPY 00000e22: RETURNDATASIZE 00000e23: SWAP1 00000e24: REVERT 00000e25: JUMPDEST 00000e26: POP 00000e27: CALLVALUE 00000e28: PUSH2 0x044a 00000e2b: JUMPI 00000e2c: PUSH1 0x20 00000e2e: CALLDATASIZE 00000e2f: PUSH1 0x03 00000e31: NOT 00000e32: ADD 00000e33: SLT 00000e34: PUSH2 0x044a 00000e37: JUMPI 00000e38: PUSH1 0x20 00000e3a: SWAP1 00000e3b: PUSH1 0x40 00000e3d: SWAP1 00000e3e: PUSH1 0x01 00000e40: PUSH1 0x01 00000e42: PUSH1 0xa0 00000e44: SHL 00000e45: SUB 00000e46: PUSH2 0x0e4d 00000e49: PUSH2 0x3aac 00000e4c: JUMP 00000e4d: JUMPDEST 00000e4e: AND 00000e4f: DUP2 00000e50: MSTORE 00000e51: PUSH1 0x02 00000e53: DUP4 00000e54: MSTORE 00000e55: KECCAK256 00000e56: SLOAD 00000e57: PUSH1 0x40 00000e59: MLOAD 00000e5a: SWAP1 00000e5b: DUP2 00000e5c: MSTORE 00000e5d: RETURN 00000e5e: JUMPDEST 00000e5f: POP 00000e60: CALLVALUE 00000e61: PUSH2 0x044a 00000e64: JUMPI 00000e65: PUSH1 0x20 00000e67: CALLDATASIZE 00000e68: PUSH1 0x03 00000e6a: NOT 00000e6b: ADD 00000e6c: SLT 00000e6d: PUSH2 0x044a 00000e70: JUMPI 00000e71: PUSH2 0x0e78 00000e74: PUSH2 0x3aac 00000e77: JUMP 00000e78: JUMPDEST 00000e79: PUSH2 0x0e80 00000e7c: PUSH2 0x436a 00000e7f: JUMP 00000e80: JUMPDEST 00000e81: PUSH1 0x01 00000e83: PUSH1 0x01 00000e85: PUSH1 0xa0 00000e87: SHL 00000e88: SUB 00000e89: DUP2 00000e8a: DUP2 00000e8b: AND 00000e8c: SWAP2 00000e8d: DUP3 00000e8e: ISZERO 00000e8f: PUSH2 0x0edd 00000e92: JUMPI 00000e93: PUSH32 0xe2eeab472f89ac267be30e463da684fb96f56cc8e947839361fdf45bf6a3458e 00000eb4: SWAP1 00000eb5: PUSH1 0x0d 00000eb7: SLOAD 00000eb8: SWAP3 00000eb9: PUSH2 0x0ec9 00000ebc: PUSH1 0x40 00000ebe: MLOAD 00000ebf: SWAP3 00000ec0: DUP4 00000ec1: SWAP3 00000ec2: DUP7 00000ec3: AND 00000ec4: DUP4 00000ec5: PUSH2 0x4150 00000ec8: JUMP 00000ec9: JUMPDEST 00000eca: SUB 00000ecb: SWAP1 00000ecc: LOG1 00000ecd: PUSH1 0x01 00000ecf: PUSH1 0x01 00000ed1: PUSH1 0xa0 00000ed3: SHL 00000ed4: SUB 00000ed5: NOT 00000ed6: AND 00000ed7: OR 00000ed8: PUSH1 0x0d 00000eda: SSTORE 00000edb: DUP1 00000edc: RETURN 00000edd: JUMPDEST 00000ede: PUSH1 0x40 00000ee0: MLOAD 00000ee1: PUSH1 0x01 00000ee3: PUSH3 0x6bbab9 00000ee7: PUSH1 0xe1 00000ee9: SHL 00000eea: SUB 00000eeb: NOT 00000eec: DUP2 00000eed: MSTORE 00000eee: PUSH1 0x04 00000ef0: SWAP1 00000ef1: REVERT 00000ef2: JUMPDEST 00000ef3: POP 00000ef4: CALLVALUE 00000ef5: PUSH2 0x044a 00000ef8: JUMPI 00000ef9: PUSH1 0x60 00000efb: CALLDATASIZE 00000efc: PUSH1 0x03 00000efe: NOT 00000eff: ADD 00000f00: SLT 00000f01: PUSH2 0x044a 00000f04: JUMPI 00000f05: PUSH2 0x0f0c 00000f08: PUSH2 0x3aac 00000f0b: JUMP 00000f0c: JUMPDEST 00000f0d: PUSH1 0x01 00000f0f: PUSH1 0x01 00000f11: PUSH1 0x40 00000f13: SHL 00000f14: SUB 00000f15: SWAP1 00000f16: PUSH1 0x24 00000f18: CALLDATALOAD 00000f19: DUP3 00000f1a: DUP2 00000f1b: GT 00000f1c: PUSH2 0x1021 00000f1f: JUMPI 00000f20: PUSH2 0x0f2d 00000f23: SWAP1 00000f24: CALLDATASIZE 00000f25: SWAP1 00000f26: PUSH1 0x04 00000f28: ADD 00000f29: PUSH2 0x3b02 00000f2c: JUMP 00000f2d: JUMPDEST 00000f2e: PUSH1 0x44 00000f30: SWAP4 00000f31: SWAP2 00000f32: SWAP4 00000f33: CALLDATALOAD 00000f34: SWAP2 00000f35: PUSH2 0x0f3c 00000f38: PUSH2 0x436a 00000f3b: JUMP 00000f3c: JUMPDEST 00000f3d: DUP3 00000f3e: ISZERO 00000f3f: DUP1 00000f40: ISZERO 00000f41: PUSH2 0x1016 00000f44: JUMPI 00000f45: JUMPDEST 00000f46: PUSH2 0x0c11 00000f49: JUMPI 00000f4a: PUSH1 0x40 00000f4c: MLOAD 00000f4d: SWAP2 00000f4e: PUSH2 0x0a92 00000f51: DUP1 00000f52: DUP5 00000f53: ADD 00000f54: SWAP3 00000f55: DUP4 00000f56: GT 00000f57: DUP5 00000f58: DUP5 00000f59: LT 00000f5a: OR 00000f5b: PUSH2 0x1002 00000f5e: JUMPI 00000f5f: SWAP2 00000f60: DUP4 00000f61: SWAP2 00000f62: PUSH1 0x80 00000f64: SWAP4 00000f65: PUSH2 0x4a88 00000f68: DUP5 00000f69: CODECOPY 00000f6a: PUSH1 0x01 00000f6c: PUSH1 0x01 00000f6e: PUSH1 0xa0 00000f70: SHL 00000f71: SUB 00000f72: DUP8 00000f73: DUP2 00000f74: AND 00000f75: DUP4 00000f76: MSTORE 00000f77: CALLER 00000f78: PUSH1 0x20 00000f7a: DUP5 00000f7b: ADD 00000f7c: MSTORE 00000f7d: PUSH1 0x60 00000f7f: PUSH1 0x40 00000f81: DUP5 00000f82: ADD 00000f83: DUP2 00000f84: SWAP1 00000f85: MSTORE 00000f86: DUP4 00000f87: ADD 00000f88: DUP3 00000f89: SWAP1 00000f8a: MSTORE 00000f8b: SWAP8 00000f8c: DUP2 00000f8d: SWAP1 00000f8e: DUP6 00000f8f: DUP5 00000f90: ADD 00000f91: CALLDATACOPY 00000f92: DUP2 00000f93: DUP2 00000f94: ADD 00000f95: DUP5 00000f96: ADD 00000f97: DUP10 00000f98: SWAP1 00000f99: MSTORE 00000f9a: PUSH1 0x1f 00000f9c: ADD 00000f9d: PUSH1 0x1f 00000f9f: NOT 00000fa0: AND 00000fa1: ADD 00000fa2: SUB 00000fa3: ADD 00000fa4: SWAP1 00000fa5: DUP6 00000fa6: CREATE 00000fa7: SWAP3 00000fa8: DUP4 00000fa9: ISZERO 00000faa: PUSH2 0x0ff7 00000fad: JUMPI 00000fae: PUSH32 0x0803371633b57311f58d10924711080d2dae75ab17c5c0c262af3887cfca00bb 00000fcf: SWAP4 00000fd0: AND 00000fd1: SWAP1 00000fd2: DUP2 00000fd3: DUP6 00000fd4: MSTORE 00000fd5: PUSH1 0x02 00000fd7: PUSH1 0x20 00000fd9: MSTORE 00000fda: PUSH1 0x40 00000fdc: DUP6 00000fdd: KECCAK256 00000fde: SSTORE 00000fdf: PUSH2 0x0fe7 00000fe2: DUP2 00000fe3: PUSH2 0x4902 00000fe6: JUMP 00000fe7: JUMPDEST 00000fe8: POP 00000fe9: PUSH2 0x0af7 00000fec: PUSH1 0x40 00000fee: MLOAD 00000fef: SWAP3 00000ff0: DUP4 00000ff1: SWAP3 00000ff2: DUP4 00000ff3: PUSH2 0x4150 00000ff6: JUMP 00000ff7: JUMPDEST 00000ff8: PUSH1 0x40 00000ffa: MLOAD 00000ffb: RETURNDATASIZE 00000ffc: DUP7 00000ffd: DUP3 00000ffe: RETURNDATACOPY 00000fff: RETURNDATASIZE 00001000: SWAP1 00001001: REVERT 00001002: JUMPDEST 00001003: PUSH4 0x4e487b71 00001008: PUSH1 0xe0 0000100a: SHL 0000100b: DUP9 0000100c: MSTORE 0000100d: PUSH1 0x41 0000100f: PUSH1 0x04 00001011: MSTORE 00001012: PUSH1 0x24 00001014: DUP9 00001015: REVERT 00001016: JUMPDEST 00001017: POP 00001018: PUSH2 0x2710 0000101b: DUP4 0000101c: GT 0000101d: PUSH2 0x0f45 00001020: JUMP 00001021: JUMPDEST 00001022: DUP4 00001023: DUP1 00001024: REVERT 00001025: JUMPDEST 00001026: POP 00001027: CALLVALUE 00001028: PUSH2 0x044a 0000102b: JUMPI 0000102c: DUP1 0000102d: PUSH1 0x03 0000102f: NOT 00001030: CALLDATASIZE 00001031: ADD 00001032: SLT 00001033: PUSH2 0x044a 00001036: JUMPI 00001037: PUSH1 0x40 00001039: MLOAD 0000103a: PUSH1 0x15 0000103c: DUP1 0000103d: SLOAD 0000103e: DUP1 0000103f: DUP4 00001040: MSTORE 00001041: SWAP1 00001042: DUP4 00001043: MSTORE 00001044: PUSH1 0x20 00001046: DUP1 00001047: DUP4 00001048: ADD 00001049: SWAP4 0000104a: PUSH32 0x55f448fdea98c4d29eb340757ef0a66cd03dbb9538908a6a81d96026b71ec475 0000106b: SWAP3 0000106c: SWAP2 0000106d: JUMPDEST 0000106e: DUP3 0000106f: DUP3 00001070: LT 00001071: PUSH2 0x1084 00001074: JUMPI 00001075: PUSH2 0x0446 00001078: DUP6 00001079: PUSH2 0x069d 0000107c: DUP2 0000107d: DUP10 0000107e: SUB 0000107f: DUP3 00001080: PUSH2 0x3c94 00001083: JUMP 00001084: JUMPDEST 00001085: DUP4 00001086: SLOAD 00001087: DUP7 00001088: MSTORE 00001089: SWAP5 0000108a: DUP6 0000108b: ADD 0000108c: SWAP5 0000108d: PUSH1 0x01 0000108f: SWAP4 00001090: DUP5 00001091: ADD 00001092: SWAP4 00001093: SWAP1 00001094: SWAP2 00001095: ADD 00001096: SWAP1 00001097: PUSH2 0x106d 0000109a: JUMP 0000109b: JUMPDEST 0000109c: POP 0000109d: CALLVALUE 0000109e: PUSH2 0x044a 000010a1: JUMPI 000010a2: PUSH1 0x40 000010a4: CALLDATASIZE 000010a5: PUSH1 0x03 000010a7: NOT 000010a8: ADD 000010a9: SLT 000010aa: PUSH2 0x044a 000010ad: JUMPI 000010ae: PUSH2 0x10c2 000010b1: PUSH2 0x10b8 000010b4: PUSH2 0x3aac 000010b7: JUMP 000010b8: JUMPDEST 000010b9: PUSH1 0x24 000010bb: CALLDATALOAD 000010bc: SWAP1 000010bd: CALLER 000010be: PUSH2 0x4466 000010c1: JUMP 000010c2: JUMPDEST 000010c3: PUSH1 0x20 000010c5: PUSH1 0x40 000010c7: MLOAD 000010c8: PUSH1 0x01 000010ca: DUP2 000010cb: MSTORE 000010cc: RETURN 000010cd: JUMPDEST 000010ce: POP 000010cf: CALLVALUE 000010d0: PUSH2 0x044a 000010d3: JUMPI 000010d4: PUSH1 0xa0 000010d6: CALLDATASIZE 000010d7: PUSH1 0x03 000010d9: NOT 000010da: ADD 000010db: SLT 000010dc: PUSH2 0x044a 000010df: JUMPI 000010e0: PUSH2 0x10e7 000010e3: PUSH2 0x3aac 000010e6: JUMP 000010e7: JUMPDEST 000010e8: PUSH1 0x24 000010ea: CALLDATALOAD 000010eb: SWAP2 000010ec: PUSH2 0x10f3 000010ef: PUSH2 0x3ad8 000010f2: JUMP 000010f3: JUMPDEST 000010f4: PUSH1 0x84 000010f6: CALLDATALOAD 000010f7: SWAP4 000010f8: SWAP1 000010f9: SWAP3 000010fa: SWAP1 000010fb: PUSH1 0x01 000010fd: PUSH1 0x01 000010ff: PUSH1 0xa0 00001101: SHL 00001102: SUB 00001103: DUP1 00001104: DUP7 00001105: AND 00001106: SWAP2 00001107: DUP3 00001108: DUP8 00001109: SUB 0000110a: PUSH2 0x0bfb 0000110d: JUMPI 0000110e: PUSH2 0x1115 00001111: PUSH2 0x4410 00001114: JUMP 00001115: JUMPDEST 00001116: PUSH2 0x111d 00001119: PUSH2 0x443c 0000111c: JUMP 0000111d: JUMPDEST 0000111e: DUP1 0000111f: DUP3 00001120: DUP1 00001121: PUSH0 00001122: DUP1 00001123: MLOAD 00001124: PUSH1 0x20 00001126: PUSH2 0x55da 00001129: DUP4 0000112a: CODECOPY 0000112b: DUP2 0000112c: MLOAD 0000112d: SWAP2 0000112e: MSTORE 0000112f: SLOAD 00001130: AND 00001131: SWAP6 00001132: AND 00001133: SWAP5 00001134: DUP6 00001135: SUB 00001136: PUSH2 0x1347 00001139: JUMPI 0000113a: DUP3 0000113b: PUSH1 0x0f 0000113d: SLOAD 0000113e: AND 0000113f: CALLER 00001140: SUB 00001141: PUSH2 0x1335 00001144: JUMPI 00001145: PUSH1 0x14 00001147: SLOAD 00001148: TIMESTAMP 00001149: SUB 0000114a: PUSH2 0x1323 0000114d: JUMPI 0000114e: PUSH0 0000114f: NOT 00001150: DUP2 00001151: SUB 00001152: PUSH2 0x12cc 00001155: JUMPI 00001156: POP 00001157: POP 00001158: PUSH2 0x1160 0000115b: DUP7 0000115c: PUSH2 0x412a 0000115f: JUMP 00001160: JUMPDEST 00001161: SWAP5 00001162: JUMPDEST 00001163: DUP3 00001164: CALLER 00001165: SUB 00001166: PUSH2 0x12bc 00001169: JUMPI 0000116a: JUMPDEST 0000116b: PUSH2 0x11a0 0000116e: PUSH2 0x1179 00001171: PUSH1 0x44 00001173: CALLDATALOAD 00001174: DUP9 00001175: PUSH2 0x3cdd 00001178: JUMP 00001179: JUMPDEST 0000117a: PUSH32 0x00000000000000000000000000000000000000000000000000000000000f4240 0000119b: SWAP1 0000119c: PUSH2 0x3cf0 0000119f: JUMP 000011a0: JUMPDEST 000011a1: DUP4 000011a2: ISZERO 000011a3: PUSH2 0x12a3 000011a6: JUMPI 000011a7: DUP4 000011a8: PUSH0 000011a9: MSTORE 000011aa: PUSH0 000011ab: DUP1 000011ac: MLOAD 000011ad: PUSH1 0x20 000011af: PUSH2 0x553a 000011b2: DUP4 000011b3: CODECOPY 000011b4: DUP2 000011b5: MLOAD 000011b6: SWAP2 000011b7: MSTORE 000011b8: DUP1 000011b9: PUSH1 0x20 000011bb: MSTORE 000011bc: PUSH1 0x40 000011be: PUSH0 000011bf: KECCAK256 000011c0: SLOAD 000011c1: SWAP9 000011c2: DUP9 000011c3: DUP11 000011c4: LT 000011c5: PUSH2 0x1280 000011c8: JUMPI 000011c9: POP 000011ca: SWAP2 000011cb: PUSH2 0x1247 000011ce: PUSH32 0x4e19afb1df46d77083cc4e520735afa0cdc2d763d6bc5d710661c3dbb35f4c4d 000011ef: SWAP7 000011f0: SWAP5 000011f1: SWAP3 000011f2: DUP10 000011f3: PUSH1 0x20 000011f5: SWAP12 000011f6: DUP9 000011f7: SWAP7 000011f8: PUSH1 0x80 000011fa: SWAP10 000011fb: PUSH0 000011fc: MSTORE 000011fd: DUP14 000011fe: MSTORE 000011ff: SUB 00001200: PUSH1 0x40 00001202: PUSH0 00001203: KECCAK256 00001204: SSTORE 00001205: PUSH0 00001206: DUP1 00001207: MLOAD 00001208: PUSH1 0x20 0000120a: PUSH2 0x559a 0000120d: DUP4 0000120e: CODECOPY 0000120f: DUP2 00001210: MLOAD 00001211: SWAP2 00001212: MSTORE 00001213: DUP11 00001214: DUP2 00001215: SLOAD 00001216: SUB 00001217: SWAP1 00001218: SSTORE 00001219: PUSH0 0000121a: DUP6 0000121b: PUSH0 0000121c: DUP1 0000121d: MLOAD 0000121e: PUSH1 0x20 00001220: PUSH2 0x55ba 00001223: DUP4 00001224: CODECOPY 00001225: DUP2 00001226: MLOAD 00001227: SWAP2 00001228: MSTORE 00001229: DUP14 0000122a: DUP14 0000122b: PUSH1 0x40 0000122d: MLOAD 0000122e: SWAP1 0000122f: DUP2 00001230: MSTORE 00001231: LOG3 00001232: PUSH2 0x2710 00001235: PUSH2 0x1240 00001238: PUSH1 0x0b 0000123a: SLOAD 0000123b: DUP4 0000123c: PUSH2 0x3cdd 0000123f: JUMP 00001240: JUMPDEST 00001241: DIV 00001242: SWAP1 00001243: PUSH2 0x3cd0 00001246: JUMP 00001247: JUMPDEST 00001248: SWAP8 00001249: PUSH2 0x1253 0000124c: DUP10 0000124d: DUP4 0000124e: DUP8 0000124f: PUSH2 0x4611 00001252: JUMP 00001253: JUMPDEST 00001254: PUSH1 0x40 00001256: MLOAD 00001257: SWAP5 00001258: DUP6 00001259: MSTORE 0000125a: DUP10 0000125b: DUP6 0000125c: ADD 0000125d: MSTORE 0000125e: AND 0000125f: PUSH1 0x40 00001261: DUP4 00001262: ADD 00001263: MSTORE 00001264: PUSH1 0x60 00001266: DUP3 00001267: ADD 00001268: MSTORE 00001269: LOG1 0000126a: PUSH0 0000126b: DUP1 0000126c: MLOAD 0000126d: PUSH1 0x20 0000126f: PUSH2 0x563a 00001272: DUP4 00001273: CODECOPY 00001274: DUP2 00001275: MLOAD 00001276: SWAP2 00001277: MSTORE 00001278: TSTORE 00001279: PUSH1 0x40 0000127b: MLOAD 0000127c: SWAP1 0000127d: DUP2 0000127e: MSTORE 0000127f: RETURN 00001280: JUMPDEST 00001281: DUP10 00001282: SWAP1 00001283: PUSH2 0x129f 00001286: DUP11 00001287: PUSH1 0x40 00001289: MLOAD 0000128a: SWAP4 0000128b: DUP5 0000128c: SWAP4 0000128d: PUSH4 0x391434e3 00001292: PUSH1 0xe2 00001294: SHL 00001295: DUP6 00001296: MSTORE 00001297: PUSH1 0x04 00001299: DUP6 0000129a: ADD 0000129b: PUSH2 0x418f 0000129e: JUMP 0000129f: JUMPDEST 000012a0: SUB 000012a1: SWAP1 000012a2: REVERT 000012a3: JUMPDEST 000012a4: PUSH1 0x40 000012a6: MLOAD 000012a7: PUSH4 0x4b637e8f 000012ac: PUSH1 0xe1 000012ae: SHL 000012af: DUP2 000012b0: MSTORE 000012b1: PUSH1 0x04 000012b3: DUP2 000012b4: ADD 000012b5: DUP8 000012b6: SWAP1 000012b7: MSTORE 000012b8: PUSH1 0x24 000012ba: SWAP1 000012bb: REVERT 000012bc: JUMPDEST 000012bd: PUSH2 0x12c7 000012c0: DUP7 000012c1: CALLER 000012c2: DUP10 000012c3: PUSH2 0x4528 000012c6: JUMP 000012c7: JUMPDEST 000012c8: PUSH2 0x116a 000012cb: JUMP 000012cc: JUMPDEST 000012cd: PUSH2 0x12d8 000012d0: DUP9 000012d1: SWAP8 000012d2: SWAP3 000012d3: SWAP8 000012d4: PUSH2 0x412a 000012d7: JUMP 000012d8: JUMPDEST 000012d9: LT 000012da: ISZERO 000012db: PUSH2 0x1162 000012de: JUMPI 000012df: PUSH1 0x40 000012e1: MLOAD 000012e2: PUSH3 0x461bcd 000012e6: PUSH1 0xe5 000012e8: SHL 000012e9: DUP2 000012ea: MSTORE 000012eb: PUSH1 0x20 000012ed: PUSH1 0x04 000012ef: DUP3 000012f0: ADD 000012f1: MSTORE 000012f2: PUSH1 0x1d 000012f4: PUSH1 0x24 000012f6: DUP3 000012f7: ADD 000012f8: MSTORE 000012f9: PUSH32 0x455243343632363a2072656465656d206d6f7265207468616e206d6178000000 0000131a: PUSH1 0x44 0000131c: DUP3 0000131d: ADD 0000131e: MSTORE 0000131f: PUSH1 0x64 00001321: SWAP1 00001322: REVERT 00001323: JUMPDEST 00001324: PUSH1 0x40 00001326: MLOAD 00001327: PUSH4 0x1f4bcb2b 0000132c: PUSH1 0xe0 0000132e: SHL 0000132f: DUP2 00001330: MSTORE 00001331: PUSH1 0x04 00001333: SWAP1 00001334: REVERT 00001335: JUMPDEST 00001336: PUSH1 0x40 00001338: MLOAD 00001339: PUSH4 0xe9ec8129 0000133e: PUSH1 0xe0 00001340: SHL 00001341: DUP2 00001342: MSTORE 00001343: PUSH1 0x04 00001345: SWAP1 00001346: REVERT 00001347: JUMPDEST 00001348: PUSH1 0x40 0000134a: MLOAD 0000134b: PUSH4 0x6448d6e9 00001350: PUSH1 0xe1 00001352: SHL 00001353: DUP2 00001354: MSTORE 00001355: PUSH1 0x04 00001357: SWAP1 00001358: REVERT 00001359: JUMPDEST 0000135a: POP 0000135b: CALLVALUE 0000135c: PUSH2 0x044a 0000135f: JUMPI 00001360: DUP1 00001361: PUSH1 0x03 00001363: NOT 00001364: CALLDATASIZE 00001365: ADD 00001366: SLT 00001367: PUSH2 0x044a 0000136a: JUMPI 0000136b: PUSH1 0x20 0000136d: PUSH1 0x10 0000136f: SLOAD 00001370: PUSH1 0x40 00001372: MLOAD 00001373: SWAP1 00001374: DUP2 00001375: MSTORE 00001376: RETURN 00001377: JUMPDEST 00001378: POP 00001379: CALLVALUE 0000137a: PUSH2 0x044a 0000137d: JUMPI 0000137e: DUP1 0000137f: PUSH1 0x03 00001381: NOT 00001382: CALLDATASIZE 00001383: ADD 00001384: SLT 00001385: PUSH2 0x044a 00001388: JUMPI 00001389: PUSH1 0x0e 0000138b: SLOAD 0000138c: PUSH1 0x01 0000138e: PUSH1 0x01 00001390: PUSH1 0xa0 00001392: SHL 00001393: SUB 00001394: SWAP1 00001395: DUP2 00001396: AND 00001397: SWAP1 00001398: CALLER 00001399: DUP3 0000139a: SWAP1 0000139b: SUB 0000139c: PUSH2 0x054a 0000139f: JUMPI 000013a0: PUSH2 0x13ab 000013a3: PUSH1 0x13 000013a5: SLOAD 000013a6: TIMESTAMP 000013a7: PUSH2 0x3cd0 000013aa: JUMP 000013ab: JUMPDEST 000013ac: PUSH1 0x08 000013ae: SLOAD 000013af: GT 000013b0: PUSH2 0x1419 000013b3: JUMPI 000013b4: PUSH32 0x55ce6141cc7099e5baac44c64543a6d7fc4e37ebba0fcaa65fa1f2a9996ec5a5 000013d5: SWAP2 000013d6: PUSH2 0x140f 000013d9: PUSH1 0x20 000013db: SWAP3 000013dc: TIMESTAMP 000013dd: PUSH1 0x13 000013df: SSTORE 000013e0: PUSH2 0x2710 000013e3: PUSH2 0x13f6 000013e6: PUSH2 0x13ed 000013e9: PUSH2 0x3d0e 000013ec: JUMP 000013ed: JUMPDEST 000013ee: PUSH1 0x07 000013f0: SLOAD 000013f1: SWAP1 000013f2: PUSH2 0x3cdd 000013f5: JUMP 000013f6: JUMPDEST 000013f7: DIV 000013f8: SWAP3 000013f9: DUP4 000013fa: SWAP2 000013fb: PUSH0 000013fc: DUP1 000013fd: MLOAD 000013fe: PUSH1 0x20 00001400: PUSH2 0x55da 00001403: DUP4 00001404: CODECOPY 00001405: DUP2 00001406: MLOAD 00001407: SWAP2 00001408: MSTORE 00001409: SLOAD 0000140a: AND 0000140b: PUSH2 0x4611 0000140e: JUMP 0000140f: JUMPDEST 00001410: PUSH1 0x40 00001412: MLOAD 00001413: SWAP1 00001414: DUP2 00001415: MSTORE 00001416: LOG1 00001417: DUP1 00001418: RETURN 00001419: JUMPDEST 0000141a: PUSH1 0x40 0000141c: MLOAD 0000141d: PUSH4 0x1221b97b 00001422: PUSH1 0xe0 00001424: SHL 00001425: DUP2 00001426: MSTORE 00001427: PUSH1 0x04 00001429: SWAP1 0000142a: REVERT 0000142b: JUMPDEST 0000142c: POP 0000142d: CALLVALUE 0000142e: PUSH2 0x044a 00001431: JUMPI 00001432: PUSH1 0x20 00001434: CALLDATASIZE 00001435: PUSH1 0x03 00001437: NOT 00001438: ADD 00001439: SLT 0000143a: PUSH2 0x044a 0000143d: JUMPI 0000143e: PUSH32 0x4bded0b2eab1f9bbe6b8e6ddeeb362eae52626c095bb6cffb84a2bb3422fc5ee 0000145f: PUSH1 0x20 00001461: PUSH2 0x1468 00001464: PUSH2 0x3b45 00001467: JUMP 00001468: JUMPDEST 00001469: PUSH2 0x1470 0000146c: PUSH2 0x436a 0000146f: JUMP 00001470: JUMPDEST 00001471: ISZERO 00001472: ISZERO 00001473: PUSH1 0xff 00001475: NOT 00001476: PUSH1 0x1e 00001478: SLOAD 00001479: AND 0000147a: PUSH1 0xff 0000147c: DUP3 0000147d: AND 0000147e: OR 0000147f: PUSH1 0x1e 00001481: SSTORE 00001482: PUSH1 0x40 00001484: MLOAD 00001485: SWAP1 00001486: DUP2 00001487: MSTORE 00001488: LOG1 00001489: DUP1 0000148a: RETURN 0000148b: JUMPDEST 0000148c: POP 0000148d: CALLVALUE 0000148e: PUSH2 0x044a 00001491: JUMPI 00001492: DUP1 00001493: PUSH1 0x03 00001495: NOT 00001496: CALLDATASIZE 00001497: ADD 00001498: SLT 00001499: PUSH2 0x044a 0000149c: JUMPI 0000149d: PUSH1 0x20 0000149f: PUSH1 0x11 000014a1: SLOAD 000014a2: PUSH1 0x40 000014a4: MLOAD 000014a5: SWAP1 000014a6: DUP2 000014a7: MSTORE 000014a8: RETURN 000014a9: JUMPDEST 000014aa: POP 000014ab: CALLVALUE 000014ac: PUSH2 0x044a 000014af: JUMPI 000014b0: DUP1 000014b1: PUSH1 0x03 000014b3: NOT 000014b4: CALLDATASIZE 000014b5: ADD 000014b6: SLT 000014b7: PUSH2 0x044a 000014ba: JUMPI 000014bb: PUSH1 0x40 000014bd: MLOAD 000014be: PUSH0 000014bf: DUP1 000014c0: MLOAD 000014c1: PUSH1 0x20 000014c3: PUSH2 0x555a 000014c6: DUP4 000014c7: CODECOPY 000014c8: DUP2 000014c9: MLOAD 000014ca: SWAP2 000014cb: MSTORE 000014cc: DUP1 000014cd: SLOAD 000014ce: DUP3 000014cf: PUSH0 000014d0: PUSH2 0x14d8 000014d3: DUP4 000014d4: PUSH2 0x3d43 000014d7: JUMP 000014d8: JUMPDEST 000014d9: SWAP3 000014da: DUP4 000014db: DUP4 000014dc: MSTORE 000014dd: PUSH1 0x20 000014df: SWAP5 000014e0: PUSH1 0x01 000014e2: SWAP2 000014e3: DUP7 000014e4: PUSH1 0x01 000014e6: DUP3 000014e7: AND 000014e8: SWAP2 000014e9: DUP3 000014ea: PUSH0 000014eb: EQ 000014ec: PUSH2 0x1557 000014ef: JUMPI 000014f0: POP 000014f1: POP 000014f2: PUSH1 0x01 000014f4: EQ 000014f5: PUSH2 0x151b 000014f8: JUMPI 000014f9: JUMPDEST 000014fa: POP 000014fb: POP 000014fc: PUSH2 0x1507 000014ff: SWAP3 00001500: POP 00001501: SUB 00001502: DUP4 00001503: PUSH2 0x3c94 00001506: JUMP 00001507: JUMPDEST 00001508: PUSH2 0x0446 0000150b: PUSH1 0x40 0000150d: MLOAD 0000150e: SWAP3 0000150f: DUP3 00001510: DUP5 00001511: SWAP4 00001512: DUP5 00001513: MSTORE 00001514: DUP4 00001515: ADD 00001516: SWAP1 00001517: PUSH2 0x3a6a 0000151a: JUMP 0000151b: JUMPDEST 0000151c: DUP6 0000151d: SWAP3 0000151e: POP 0000151f: PUSH0 00001520: MSTORE 00001521: DUP2 00001522: PUSH0 00001523: KECCAK256 00001524: SWAP1 00001525: PUSH0 00001526: SWAP2 00001527: JUMPDEST 00001528: DUP6 00001529: DUP4 0000152a: LT 0000152b: PUSH2 0x153f 0000152e: JUMPI 0000152f: POP 00001530: POP 00001531: PUSH2 0x1507 00001534: SWAP4 00001535: POP 00001536: DUP3 00001537: ADD 00001538: ADD 00001539: DUP6 0000153a: DUP1 0000153b: PUSH2 0x14f9 0000153e: JUMP 0000153f: JUMPDEST 00001540: DUP1 00001541: SLOAD 00001542: DUP4 00001543: DUP10 00001544: ADD 00001545: DUP6 00001546: ADD 00001547: MSTORE 00001548: DUP8 00001549: SWAP5 0000154a: POP 0000154b: DUP7 0000154c: SWAP4 0000154d: SWAP1 0000154e: SWAP3 0000154f: ADD 00001550: SWAP2 00001551: DUP2 00001552: ADD 00001553: PUSH2 0x1527 00001556: JUMP 00001557: JUMPDEST 00001558: SWAP3 00001559: POP 0000155a: SWAP4 0000155b: POP 0000155c: POP 0000155d: PUSH2 0x1507 00001560: SWAP5 00001561: SWAP2 00001562: POP 00001563: PUSH1 0xff 00001565: NOT 00001566: AND 00001567: DUP3 00001568: DUP5 00001569: ADD 0000156a: MSTORE 0000156b: ISZERO 0000156c: ISZERO 0000156d: PUSH1 0x05 0000156f: SHL 00001570: DUP3 00001571: ADD 00001572: ADD 00001573: DUP6 00001574: DUP1 00001575: PUSH2 0x14f9 00001578: JUMP 00001579: JUMPDEST 0000157a: POP 0000157b: CALLVALUE 0000157c: PUSH2 0x044a 0000157f: JUMPI 00001580: PUSH1 0x40 00001582: CALLDATASIZE 00001583: PUSH1 0x03 00001585: NOT 00001586: ADD 00001587: SLT 00001588: PUSH2 0x044a 0000158b: JUMPI 0000158c: PUSH2 0x1593 0000158f: PUSH2 0x3ac2 00001592: JUMP 00001593: JUMPDEST 00001594: POP 00001595: PUSH2 0x159c 00001598: PUSH2 0x4410 0000159b: JUMP 0000159c: JUMPDEST 0000159d: PUSH2 0x15a4 000015a0: PUSH2 0x443c 000015a3: JUMP 000015a4: JUMPDEST 000015a5: PUSH1 0x40 000015a7: MLOAD 000015a8: PUSH4 0x7dc4dd15 000015ad: PUSH1 0xe1 000015af: SHL 000015b0: DUP2 000015b1: MSTORE 000015b2: PUSH1 0x04 000015b4: SWAP1 000015b5: REVERT 000015b6: JUMPDEST 000015b7: POP 000015b8: CALLVALUE 000015b9: PUSH2 0x044a 000015bc: JUMPI 000015bd: DUP1 000015be: PUSH1 0x03 000015c0: NOT 000015c1: CALLDATASIZE 000015c2: ADD 000015c3: SLT 000015c4: PUSH2 0x044a 000015c7: JUMPI 000015c8: PUSH1 0x20 000015ca: PUSH1 0x1b 000015cc: SLOAD 000015cd: PUSH1 0x40 000015cf: MLOAD 000015d0: SWAP1 000015d1: DUP2 000015d2: MSTORE 000015d3: RETURN 000015d4: JUMPDEST 000015d5: POP 000015d6: CALLVALUE 000015d7: PUSH2 0x044a 000015da: JUMPI 000015db: PUSH1 0x40 000015dd: CALLDATASIZE 000015de: PUSH1 0x03 000015e0: NOT 000015e1: ADD 000015e2: SLT 000015e3: PUSH2 0x044a 000015e6: JUMPI 000015e7: PUSH1 0x04 000015e9: CALLDATALOAD 000015ea: PUSH2 0x15f1 000015ed: PUSH2 0x3ac2 000015f0: JUMP 000015f1: JUMPDEST 000015f2: PUSH2 0x15f9 000015f5: PUSH2 0x4410 000015f8: JUMP 000015f9: JUMPDEST 000015fa: PUSH2 0x1601 000015fd: PUSH2 0x443c 00001600: JUMP 00001601: JUMPDEST 00001602: DUP2 00001603: ISZERO 00001604: PUSH2 0x16fa 00001607: JUMPI 00001608: PUSH0 00001609: DUP1 0000160a: MLOAD 0000160b: PUSH1 0x20 0000160d: PUSH2 0x55da 00001610: DUP4 00001611: CODECOPY 00001612: DUP2 00001613: MLOAD 00001614: SWAP2 00001615: MSTORE 00001616: SLOAD 00001617: PUSH1 0x01 00001619: PUSH1 0x01 0000161b: PUSH1 0xa0 0000161d: SHL 0000161e: SUB 0000161f: SWAP2 00001620: DUP3 00001621: AND 00001622: SWAP2 00001623: SWAP1 00001624: DUP2 00001625: AND 00001626: DUP3 00001627: SUB 00001628: PUSH2 0x1347 0000162b: JUMPI 0000162c: DUP1 0000162d: PUSH2 0x163c 00001630: DUP5 00001631: DUP7 00001632: SWAP4 00001633: PUSH1 0x0f 00001635: SLOAD 00001636: AND 00001637: CALLER 00001638: PUSH2 0x4466 0000163b: JUMP 0000163c: JUMPDEST 0000163d: PUSH1 0x0f 0000163f: SLOAD 00001640: AND 00001641: PUSH1 0x1b 00001643: SLOAD 00001644: DUP2 00001645: EXTCODESIZE 00001646: ISZERO 00001647: PUSH2 0x16eb 0000164a: JUMPI 0000164b: DUP3 0000164c: SWAP2 0000164d: PUSH1 0x84 0000164f: DUP4 00001650: SWAP3 00001651: PUSH1 0x40 00001653: MLOAD 00001654: SWAP5 00001655: DUP6 00001656: SWAP4 00001657: DUP5 00001658: SWAP3 00001659: PUSH4 0x567a28eb 0000165e: PUSH1 0xe0 00001660: SHL 00001661: DUP5 00001662: MSTORE 00001663: CALLER 00001664: PUSH1 0x04 00001666: DUP6 00001667: ADD 00001668: MSTORE 00001669: DUP11 0000166a: PUSH1 0x24 0000166c: DUP6 0000166d: ADD 0000166e: MSTORE 0000166f: PUSH0 00001670: PUSH1 0x44 00001672: DUP6 00001673: ADD 00001674: MSTORE 00001675: PUSH1 0x64 00001677: DUP5 00001678: ADD 00001679: MSTORE 0000167a: GAS 0000167b: CALL 0000167c: DUP1 0000167d: ISZERO 0000167e: PUSH2 0x16ef 00001681: JUMPI 00001682: PUSH2 0x16d7 00001685: JUMPI 00001686: JUMPDEST 00001687: POP 00001688: PUSH32 0x84e61bb7a516bd67884995d6a189c01796ef032973d03ad48f8a301b28161d5d 000016a9: PUSH1 0x80 000016ab: DUP5 000016ac: DUP5 000016ad: PUSH1 0x40 000016af: MLOAD 000016b0: SWAP2 000016b1: CALLER 000016b2: DUP4 000016b3: MSTORE 000016b4: PUSH1 0x20 000016b6: DUP4 000016b7: ADD 000016b8: MSTORE 000016b9: PUSH1 0x40 000016bb: DUP3 000016bc: ADD 000016bd: MSTORE 000016be: PUSH0 000016bf: PUSH1 0x60 000016c1: DUP3 000016c2: ADD 000016c3: MSTORE 000016c4: LOG1 000016c5: DUP1 000016c6: PUSH0 000016c7: DUP1 000016c8: MLOAD 000016c9: PUSH1 0x20 000016cb: PUSH2 0x563a 000016ce: DUP4 000016cf: CODECOPY 000016d0: DUP2 000016d1: MLOAD 000016d2: SWAP2 000016d3: MSTORE 000016d4: TSTORE 000016d5: DUP1 000016d6: RETURN 000016d7: JUMPDEST 000016d8: PUSH2 0x16e0 000016db: SWAP1 000016dc: PUSH2 0x3c66 000016df: JUMP 000016e0: JUMPDEST 000016e1: PUSH2 0x16eb 000016e4: JUMPI 000016e5: DUP3 000016e6: PUSH0 000016e7: PUSH2 0x1686 000016ea: JUMP 000016eb: JUMPDEST 000016ec: DUP3 000016ed: DUP1 000016ee: REVERT 000016ef: JUMPDEST 000016f0: PUSH1 0x40 000016f2: MLOAD 000016f3: RETURNDATASIZE 000016f4: DUP5 000016f5: DUP3 000016f6: RETURNDATACOPY 000016f7: RETURNDATASIZE 000016f8: SWAP1 000016f9: REVERT 000016fa: JUMPDEST 000016fb: PUSH1 0x40 000016fd: MLOAD 000016fe: PUSH4 0x7ea773a9 00001703: PUSH1 0xe0 00001705: SHL 00001706: DUP2 00001707: MSTORE 00001708: PUSH1 0x04 0000170a: SWAP1 0000170b: REVERT 0000170c: JUMPDEST 0000170d: POP 0000170e: CALLVALUE 0000170f: PUSH2 0x044a 00001712: JUMPI 00001713: DUP1 00001714: PUSH1 0x03 00001716: NOT 00001717: CALLDATASIZE 00001718: ADD 00001719: SLT 0000171a: PUSH2 0x044a 0000171d: JUMPI 0000171e: PUSH0 0000171f: DUP1 00001720: MLOAD 00001721: PUSH1 0x20 00001723: PUSH2 0x557a 00001726: DUP4 00001727: CODECOPY 00001728: DUP2 00001729: MLOAD 0000172a: SWAP2 0000172b: MSTORE 0000172c: SLOAD 0000172d: PUSH1 0x40 0000172f: MLOAD 00001730: PUSH1 0x01 00001732: PUSH1 0x01 00001734: PUSH1 0xa0 00001736: SHL 00001737: SUB 00001738: SWAP1 00001739: SWAP2 0000173a: AND 0000173b: DUP2 0000173c: MSTORE 0000173d: PUSH1 0x20 0000173f: SWAP1 00001740: RETURN 00001741: JUMPDEST 00001742: POP 00001743: CALLVALUE 00001744: PUSH2 0x044a 00001747: JUMPI 00001748: DUP1 00001749: PUSH1 0x03 0000174b: NOT 0000174c: CALLDATASIZE 0000174d: ADD 0000174e: SLT 0000174f: PUSH2 0x044a 00001752: JUMPI 00001753: PUSH1 0x20 00001755: PUSH1 0x40 00001757: MLOAD 00001758: PUSH20 0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 0000176d: DUP2 0000176e: MSTORE 0000176f: RETURN 00001770: JUMPDEST 00001771: POP 00001772: CALLVALUE 00001773: PUSH2 0x044a 00001776: JUMPI 00001777: DUP1 00001778: PUSH1 0x03 0000177a: NOT 0000177b: CALLDATASIZE 0000177c: ADD 0000177d: SLT 0000177e: PUSH2 0x044a 00001781: JUMPI 00001782: PUSH2 0x0180 00001785: PUSH1 0x40 00001787: MLOAD 00001788: PUSH2 0x1790 0000178b: DUP2 0000178c: PUSH2 0x3c2f 0000178f: JUMP 00001790: JUMPDEST 00001791: DUP3 00001792: DUP2 00001793: MSTORE 00001794: PUSH1 0x60 00001796: PUSH1 0x20 00001798: DUP3 00001799: ADD 0000179a: MSTORE 0000179b: PUSH1 0x60 0000179d: PUSH1 0x40 0000179f: DUP3 000017a0: ADD 000017a1: MSTORE 000017a2: DUP3 000017a3: PUSH1 0x60 000017a5: DUP3 000017a6: ADD 000017a7: MSTORE 000017a8: DUP3 000017a9: PUSH1 0x80 000017ab: DUP3 000017ac: ADD 000017ad: MSTORE 000017ae: DUP3 000017af: PUSH1 0xa0 000017b1: DUP3 000017b2: ADD 000017b3: MSTORE 000017b4: DUP3 000017b5: PUSH1 0xc0 000017b7: DUP3 000017b8: ADD 000017b9: MSTORE 000017ba: DUP3 000017bb: PUSH1 0xe0 000017bd: DUP3 000017be: ADD 000017bf: MSTORE 000017c0: DUP3 000017c1: PUSH2 0x0100 000017c4: DUP3 000017c5: ADD 000017c6: MSTORE 000017c7: DUP3 000017c8: PUSH2 0x0120 000017cb: DUP3 000017cc: ADD 000017cd: MSTORE 000017ce: DUP3 000017cf: PUSH2 0x0140 000017d2: DUP3 000017d3: ADD 000017d4: MSTORE 000017d5: DUP3 000017d6: PUSH2 0x0160 000017d9: DUP3 000017da: ADD 000017db: MSTORE 000017dc: ADD 000017dd: MSTORE 000017de: PUSH1 0x40 000017e0: MLOAD 000017e1: PUSH2 0x17e9 000017e4: DUP2 000017e5: PUSH2 0x3c2f 000017e8: JUMP 000017e9: JUMPDEST 000017ea: PUSH1 0x03 000017ec: SLOAD 000017ed: PUSH1 0x01 000017ef: PUSH1 0x01 000017f1: PUSH1 0xa0 000017f3: SHL 000017f4: SUB 000017f5: AND 000017f6: DUP2 000017f7: MSTORE 000017f8: PUSH1 0x40 000017fa: MLOAD 000017fb: PUSH1 0x04 000017fd: SLOAD 000017fe: SWAP1 000017ff: PUSH0 00001800: DUP2 00001801: PUSH2 0x1809 00001804: DUP5 00001805: PUSH2 0x3d43 00001808: JUMP 00001809: JUMPDEST 0000180a: SWAP2 0000180b: DUP3 0000180c: DUP3 0000180d: MSTORE 0000180e: PUSH1 0x01 00001810: SWAP5 00001811: PUSH1 0x01 00001813: DUP2 00001814: AND 00001815: SWAP1 00001816: DUP2 00001817: PUSH0 00001818: EQ 00001819: PUSH2 0x1a87 0000181c: JUMPI 0000181d: POP 0000181e: PUSH1 0x01 00001820: EQ 00001821: PUSH2 0x1a3b 00001824: JUMPI 00001825: JUMPDEST 00001826: PUSH2 0x1831 00001829: SWAP3 0000182a: POP 0000182b: SUB 0000182c: DUP3 0000182d: PUSH2 0x3c94 00001830: JUMP 00001831: JUMPDEST 00001832: PUSH1 0x20 00001834: DUP4 00001835: ADD 00001836: MSTORE 00001837: PUSH1 0x40 00001839: MLOAD 0000183a: SWAP1 0000183b: DUP2 0000183c: PUSH0 0000183d: PUSH1 0x05 0000183f: SLOAD 00001840: SWAP3 00001841: PUSH2 0x1849 00001844: DUP5 00001845: PUSH2 0x3d43 00001848: JUMP 00001849: JUMPDEST 0000184a: DUP1 0000184b: DUP5 0000184c: MSTORE 0000184d: SWAP4 0000184e: PUSH1 0x01 00001850: DUP2 00001851: AND 00001852: SWAP1 00001853: DUP2 00001854: ISZERO 00001855: PUSH2 0x1a19 00001858: JUMPI 00001859: POP 0000185a: PUSH1 0x01 0000185c: EQ 0000185d: PUSH2 0x19bb 00001860: JUMPI 00001861: JUMPDEST 00001862: POP 00001863: PUSH2 0x186e 00001866: SWAP3 00001867: POP 00001868: SUB 00001869: DUP3 0000186a: PUSH2 0x3c94 0000186d: JUMP 0000186e: JUMPDEST 0000186f: PUSH1 0x40 00001871: DUP3 00001872: DUP2 00001873: ADD 00001874: SWAP2 00001875: SWAP1 00001876: SWAP2 00001877: MSTORE 00001878: PUSH1 0x06 0000187a: SLOAD 0000187b: PUSH1 0x60 0000187d: DUP4 0000187e: ADD 0000187f: MSTORE 00001880: PUSH1 0x07 00001882: SLOAD 00001883: PUSH1 0x80 00001885: DUP4 00001886: ADD 00001887: MSTORE 00001888: PUSH1 0x08 0000188a: SLOAD 0000188b: PUSH1 0xa0 0000188d: DUP4 0000188e: ADD 0000188f: MSTORE 00001890: PUSH1 0x09 00001892: SLOAD 00001893: PUSH1 0xc0 00001895: DUP4 00001896: ADD 00001897: MSTORE 00001898: PUSH1 0x0a 0000189a: SLOAD 0000189b: PUSH1 0xe0 0000189d: DUP4 0000189e: ADD 0000189f: MSTORE 000018a0: PUSH1 0x0b 000018a2: SLOAD 000018a3: PUSH2 0x0100 000018a6: DUP4 000018a7: ADD 000018a8: MSTORE 000018a9: PUSH1 0x0c 000018ab: SLOAD 000018ac: PUSH1 0x01 000018ae: PUSH1 0x01 000018b0: PUSH1 0xa0 000018b2: SHL 000018b3: SUB 000018b4: SWAP1 000018b5: DUP2 000018b6: AND 000018b7: PUSH2 0x0120 000018ba: DUP5 000018bb: ADD 000018bc: MSTORE 000018bd: PUSH1 0x0d 000018bf: SLOAD 000018c0: DUP2 000018c1: AND 000018c2: PUSH2 0x0140 000018c5: DUP5 000018c6: ADD 000018c7: MSTORE 000018c8: PUSH1 0x0e 000018ca: SLOAD 000018cb: DUP2 000018cc: AND 000018cd: PUSH2 0x0160 000018d0: DUP5 000018d1: ADD 000018d2: MSTORE 000018d3: PUSH1 0x0f 000018d5: SLOAD 000018d6: DUP2 000018d7: AND 000018d8: PUSH2 0x0180 000018db: DUP5 000018dc: ADD 000018dd: MSTORE 000018de: DUP2 000018df: MLOAD 000018e0: PUSH1 0x20 000018e2: DUP1 000018e3: DUP3 000018e4: MSTORE 000018e5: DUP5 000018e6: MLOAD 000018e7: SWAP1 000018e8: SWAP3 000018e9: AND 000018ea: DUP3 000018eb: DUP3 000018ec: ADD 000018ed: MSTORE 000018ee: SWAP1 000018ef: DUP4 000018f0: ADD 000018f1: MLOAD 000018f2: PUSH2 0x01a0 000018f5: SWAP3 000018f6: DUP3 000018f7: ADD 000018f8: SWAP3 000018f9: SWAP1 000018fa: SWAP3 000018fb: MSTORE 000018fc: SWAP2 000018fd: DUP3 000018fe: SWAP2 000018ff: PUSH2 0x1927 00001902: SWAP1 00001903: PUSH2 0x1911 00001906: SWAP1 00001907: PUSH2 0x01c0 0000190a: DUP6 0000190b: ADD 0000190c: SWAP1 0000190d: PUSH2 0x3a6a 00001910: JUMP 00001911: JUMPDEST 00001912: PUSH1 0x40 00001914: DUP4 00001915: ADD 00001916: MLOAD 00001917: DUP5 00001918: DUP3 00001919: SUB 0000191a: PUSH1 0x1f 0000191c: NOT 0000191d: ADD 0000191e: PUSH1 0x60 00001920: DUP7 00001921: ADD 00001922: MSTORE 00001923: PUSH2 0x3a6a 00001926: JUMP 00001927: JUMPDEST 00001928: SWAP1 00001929: PUSH1 0x60 0000192b: DUP2 0000192c: ADD 0000192d: MLOAD 0000192e: PUSH1 0x80 00001930: DUP5 00001931: ADD 00001932: MSTORE 00001933: PUSH1 0x80 00001935: DUP2 00001936: ADD 00001937: MLOAD 00001938: PUSH1 0xa0 0000193a: DUP5 0000193b: ADD 0000193c: MSTORE 0000193d: PUSH1 0xa0 0000193f: DUP2 00001940: ADD 00001941: MLOAD 00001942: PUSH1 0xc0 00001944: DUP5 00001945: ADD 00001946: MSTORE 00001947: PUSH1 0xc0 00001949: DUP2 0000194a: ADD 0000194b: MLOAD 0000194c: PUSH1 0xe0 0000194e: DUP5 0000194f: ADD 00001950: MSTORE 00001951: PUSH1 0xe0 00001953: DUP2 00001954: ADD 00001955: MLOAD 00001956: PUSH2 0x0100 00001959: DUP5 0000195a: ADD 0000195b: MSTORE 0000195c: PUSH2 0x0100 0000195f: DUP2 00001960: ADD 00001961: MLOAD 00001962: PUSH2 0x0120 00001965: DUP5 00001966: ADD 00001967: MSTORE 00001968: PUSH1 0x01 0000196a: DUP1 0000196b: PUSH1 0xa0 0000196d: SHL 0000196e: SUB 0000196f: PUSH2 0x0120 00001972: DUP3 00001973: ADD 00001974: MLOAD 00001975: AND 00001976: PUSH2 0x0140 00001979: DUP5 0000197a: ADD 0000197b: MSTORE 0000197c: PUSH1 0x01 0000197e: DUP1 0000197f: PUSH1 0xa0 00001981: SHL 00001982: SUB 00001983: PUSH2 0x0140 00001986: DUP3 00001987: ADD 00001988: MLOAD 00001989: AND 0000198a: PUSH2 0x0160 0000198d: DUP5 0000198e: ADD 0000198f: MSTORE 00001990: PUSH1 0x01 00001992: DUP1 00001993: PUSH1 0xa0 00001995: SHL 00001996: SUB 00001997: PUSH2 0x0160 0000199a: DUP3 0000199b: ADD 0000199c: MLOAD 0000199d: AND 0000199e: PUSH2 0x0180 000019a1: DUP5 000019a2: ADD 000019a3: MSTORE 000019a4: PUSH2 0x0180 000019a7: PUSH1 0x01 000019a9: DUP1 000019aa: PUSH1 0xa0 000019ac: SHL 000019ad: SUB 000019ae: SWAP2 000019af: ADD 000019b0: MLOAD 000019b1: AND 000019b2: PUSH2 0x01a0 000019b5: DUP4 000019b6: ADD 000019b7: MSTORE 000019b8: SUB 000019b9: SWAP1 000019ba: RETURN 000019bb: JUMPDEST 000019bc: PUSH1 0x05 000019be: PUSH0 000019bf: SWAP1 000019c0: DUP2 000019c1: MSTORE 000019c2: SWAP2 000019c3: POP 000019c4: PUSH32 0x036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0 000019e5: JUMPDEST 000019e6: DUP5 000019e7: DUP4 000019e8: LT 000019e9: PUSH2 0x19fe 000019ec: JUMPI 000019ed: POP 000019ee: PUSH2 0x186e 000019f1: SWAP4 000019f2: POP 000019f3: POP 000019f4: DUP2 000019f5: ADD 000019f6: PUSH1 0x20 000019f8: ADD 000019f9: PUSH0 000019fa: PUSH2 0x1861 000019fd: JUMP 000019fe: JUMPDEST 000019ff: DUP2 00001a00: SWAP4 00001a01: POP 00001a02: SWAP1 00001a03: DUP2 00001a04: PUSH1 0x20 00001a06: SWAP3 00001a07: SLOAD 00001a08: DUP4 00001a09: DUP6 00001a0a: DUP10 00001a0b: ADD 00001a0c: ADD 00001a0d: MSTORE 00001a0e: ADD 00001a0f: SWAP2 00001a10: ADD 00001a11: SWAP1 00001a12: SWAP2 00001a13: DUP5 00001a14: SWAP3 00001a15: PUSH2 0x19e5 00001a18: JUMP 00001a19: JUMPDEST 00001a1a: SWAP1 00001a1b: POP 00001a1c: PUSH1 0x20 00001a1e: SWAP3 00001a1f: POP 00001a20: PUSH2 0x186e 00001a23: SWAP5 00001a24: SWAP2 00001a25: POP 00001a26: PUSH1 0xff 00001a28: NOT 00001a29: AND 00001a2a: DUP3 00001a2b: DUP5 00001a2c: ADD 00001a2d: MSTORE 00001a2e: ISZERO 00001a2f: ISZERO 00001a30: PUSH1 0x05 00001a32: SHL 00001a33: DUP3 00001a34: ADD 00001a35: ADD 00001a36: PUSH0 00001a37: PUSH2 0x1861 00001a3a: JUMP 00001a3b: JUMPDEST 00001a3c: POP 00001a3d: PUSH1 0x04 00001a3f: PUSH0 00001a40: SWAP1 00001a41: DUP2 00001a42: MSTORE 00001a43: SWAP1 00001a44: SWAP2 00001a45: DUP5 00001a46: PUSH0 00001a47: DUP1 00001a48: MLOAD 00001a49: PUSH1 0x20 00001a4b: PUSH2 0x561a 00001a4e: DUP4 00001a4f: CODECOPY 00001a50: DUP2 00001a51: MLOAD 00001a52: SWAP2 00001a53: MSTORE 00001a54: JUMPDEST 00001a55: DUP3 00001a56: DUP5 00001a57: LT 00001a58: PUSH2 0x1a6d 00001a5b: JUMPI 00001a5c: POP 00001a5d: POP 00001a5e: POP 00001a5f: SWAP1 00001a60: PUSH1 0x20 00001a62: PUSH2 0x1831 00001a65: SWAP3 00001a66: DUP3 00001a67: ADD 00001a68: ADD 00001a69: PUSH2 0x1825 00001a6c: JUMP 00001a6d: JUMPDEST 00001a6e: PUSH1 0x20 00001a70: SWAP3 00001a71: SWAP5 00001a72: POP 00001a73: DUP1 00001a74: SLOAD 00001a75: DUP4 00001a76: DUP6 00001a77: DUP9 00001a78: ADD 00001a79: ADD 00001a7a: MSTORE 00001a7b: ADD 00001a7c: SWAP2 00001a7d: ADD 00001a7e: SWAP1 00001a7f: SWAP2 00001a80: DUP5 00001a81: DUP5 00001a82: SWAP4 00001a83: PUSH2 0x1a54 00001a86: JUMP 00001a87: JUMPDEST 00001a88: PUSH1 0x20 00001a8a: SWAP3 00001a8b: POP 00001a8c: PUSH2 0x1831 00001a8f: SWAP5 00001a90: SWAP2 00001a91: POP 00001a92: PUSH1 0xff 00001a94: NOT 00001a95: AND 00001a96: DUP3 00001a97: DUP5 00001a98: ADD 00001a99: MSTORE 00001a9a: ISZERO 00001a9b: ISZERO 00001a9c: PUSH1 0x05 00001a9e: SHL 00001a9f: DUP3 00001aa0: ADD 00001aa1: ADD 00001aa2: PUSH2 0x1825 00001aa5: JUMP 00001aa6: JUMPDEST 00001aa7: POP 00001aa8: CALLVALUE 00001aa9: PUSH2 0x044a 00001aac: JUMPI 00001aad: PUSH1 0x20 00001aaf: CALLDATASIZE 00001ab0: PUSH1 0x03 00001ab2: NOT 00001ab3: ADD 00001ab4: SLT 00001ab5: PUSH2 0x044a 00001ab8: JUMPI 00001ab9: PUSH1 0x04 00001abb: CALLDATALOAD 00001abc: PUSH2 0x1ac3 00001abf: PUSH2 0x436a 00001ac2: JUMP 00001ac3: JUMPDEST 00001ac4: PUSH32 0x4ce3464de9f3f9d08f99c3a4af8f37cffea7da47f6def29b334675e10a98223b 00001ae5: PUSH1 0x40 00001ae7: PUSH1 0x1d 00001ae9: SLOAD 00001aea: DUP2 00001aeb: MLOAD 00001aec: SWAP1 00001aed: DUP2 00001aee: MSTORE 00001aef: DUP4 00001af0: PUSH1 0x20 00001af2: DUP3 00001af3: ADD 00001af4: MSTORE 00001af5: LOG1 00001af6: PUSH1 0x1d 00001af8: SSTORE 00001af9: DUP1 00001afa: RETURN 00001afb: JUMPDEST 00001afc: POP 00001afd: CALLVALUE 00001afe: PUSH2 0x044a 00001b01: JUMPI 00001b02: DUP1 00001b03: PUSH1 0x03 00001b05: NOT 00001b06: CALLDATASIZE 00001b07: ADD 00001b08: SLT 00001b09: PUSH2 0x044a 00001b0c: JUMPI 00001b0d: PUSH0 00001b0e: DUP1 00001b0f: MLOAD 00001b10: PUSH1 0x20 00001b12: PUSH2 0x557a 00001b15: DUP4 00001b16: CODECOPY 00001b17: DUP2 00001b18: MLOAD 00001b19: SWAP2 00001b1a: MSTORE 00001b1b: SLOAD 00001b1c: CALLER 00001b1d: PUSH1 0x01 00001b1f: PUSH1 0x01 00001b21: PUSH1 0xa0 00001b23: SHL 00001b24: SUB 00001b25: SWAP2 00001b26: DUP3 00001b27: AND 00001b28: EQ 00001b29: ISZERO 00001b2a: SWAP1 00001b2b: DUP2 00001b2c: PUSH2 0x1b83 00001b2f: JUMPI 00001b30: JUMPDEST 00001b31: POP 00001b32: PUSH2 0x1335 00001b35: JUMPI 00001b36: PUSH2 0x1b3d 00001b39: PUSH2 0x443c 00001b3c: JUMP 00001b3d: JUMPDEST 00001b3e: PUSH0 00001b3f: DUP1 00001b40: MLOAD 00001b41: PUSH1 0x20 00001b43: PUSH2 0x55fa 00001b46: DUP4 00001b47: CODECOPY 00001b48: DUP2 00001b49: MLOAD 00001b4a: SWAP2 00001b4b: MSTORE 00001b4c: PUSH1 0x01 00001b4e: PUSH1 0xff 00001b50: NOT 00001b51: DUP3 00001b52: SLOAD 00001b53: AND 00001b54: OR 00001b55: SWAP1 00001b56: SSTORE 00001b57: PUSH32 0x62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258 00001b78: PUSH1 0x20 00001b7a: PUSH1 0x40 00001b7c: MLOAD 00001b7d: CALLER 00001b7e: DUP2 00001b7f: MSTORE 00001b80: LOG1 00001b81: DUP1 00001b82: RETURN 00001b83: JUMPDEST 00001b84: SWAP1 00001b85: POP 00001b86: PUSH1 0x0d 00001b88: SLOAD 00001b89: AND 00001b8a: CALLER 00001b8b: EQ 00001b8c: ISZERO 00001b8d: PUSH0 00001b8e: PUSH2 0x1b30 00001b91: JUMP 00001b92: JUMPDEST 00001b93: POP 00001b94: CALLVALUE 00001b95: PUSH2 0x044a 00001b98: JUMPI 00001b99: PUSH2 0x1ba1 00001b9c: CALLDATASIZE 00001b9d: PUSH2 0x3b2f 00001ba0: JUMP 00001ba1: JUMPDEST 00001ba2: SWAP1 00001ba3: PUSH2 0x1baa 00001ba6: PUSH2 0x436a 00001ba9: JUMP 00001baa: JUMPDEST 00001bab: DUP2 00001bac: ISZERO 00001bad: DUP1 00001bae: ISZERO 00001baf: PUSH2 0x1c19 00001bb2: JUMPI 00001bb3: JUMPDEST 00001bb4: PUSH2 0x0c11 00001bb7: JUMPI 00001bb8: PUSH2 0x1bc0 00001bbb: SWAP1 00001bbc: PUSH2 0x466f 00001bbf: JUMP 00001bc0: JUMPDEST 00001bc1: PUSH1 0x01 00001bc3: DUP1 00001bc4: PUSH1 0xa0 00001bc6: SHL 00001bc7: SUB 00001bc8: SWAP2 00001bc9: SLOAD 00001bca: SWAP1 00001bcb: PUSH1 0x03 00001bcd: SHL 00001bce: SHR 00001bcf: AND 00001bd0: DUP1 00001bd1: DUP4 00001bd2: MSTORE 00001bd3: PUSH1 0x02 00001bd5: PUSH1 0x20 00001bd7: MSTORE 00001bd8: PUSH32 0x7cd01dd3533c6dc08821cd303814de60aba1901f1531c3cbcd95d26ed924e9cf 00001bf9: PUSH1 0x40 00001bfb: DUP1 00001bfc: DUP6 00001bfd: KECCAK256 00001bfe: SLOAD 00001bff: DUP2 00001c00: MLOAD 00001c01: SWAP1 00001c02: DUP2 00001c03: MSTORE 00001c04: DUP5 00001c05: PUSH1 0x20 00001c07: DUP3 00001c08: ADD 00001c09: MSTORE 00001c0a: LOG1 00001c0b: DUP3 00001c0c: MSTORE 00001c0d: PUSH1 0x02 00001c0f: PUSH1 0x20 00001c11: MSTORE 00001c12: PUSH1 0x40 00001c14: DUP3 00001c15: KECCAK256 00001c16: SSTORE 00001c17: DUP1 00001c18: RETURN 00001c19: JUMPDEST 00001c1a: POP 00001c1b: PUSH2 0x2710 00001c1e: DUP3 00001c1f: GT 00001c20: PUSH2 0x1bb3 00001c23: JUMP 00001c24: JUMPDEST 00001c25: POP 00001c26: CALLVALUE 00001c27: PUSH2 0x044a 00001c2a: JUMPI 00001c2b: PUSH1 0x20 00001c2d: CALLDATASIZE 00001c2e: PUSH1 0x03 00001c30: NOT 00001c31: ADD 00001c32: SLT 00001c33: PUSH2 0x044a 00001c36: JUMPI 00001c37: PUSH1 0x04 00001c39: CALLDATALOAD 00001c3a: PUSH2 0x1c41 00001c3d: PUSH2 0x436a 00001c40: JUMP 00001c41: JUMPDEST 00001c42: PUSH1 0x06 00001c44: SLOAD 00001c45: DUP1 00001c46: DUP3 00001c47: GT 00001c48: ISZERO 00001c49: PUSH2 0x1335 00001c4c: JUMPI 00001c4d: PUSH1 0x40 00001c4f: PUSH32 0x7f3306669f28a6aa13d0f709be2bd4f3e21d2f37aee9358846a50e1988ee4832 00001c70: SWAP2 00001c71: DUP2 00001c72: MLOAD 00001c73: SWAP1 00001c74: DUP2 00001c75: MSTORE 00001c76: DUP4 00001c77: PUSH1 0x20 00001c79: DUP3 00001c7a: ADD 00001c7b: MSTORE 00001c7c: LOG1 00001c7d: PUSH1 0x06 00001c7f: SSTORE 00001c80: DUP1 00001c81: RETURN 00001c82: JUMPDEST 00001c83: POP 00001c84: CALLVALUE 00001c85: PUSH2 0x044a 00001c88: JUMPI 00001c89: PUSH1 0x20 00001c8b: CALLDATASIZE 00001c8c: PUSH1 0x03 00001c8e: NOT 00001c8f: ADD 00001c90: SLT 00001c91: PUSH2 0x044a 00001c94: JUMPI 00001c95: PUSH2 0x1c9c 00001c98: PUSH2 0x3aac 00001c9b: JUMP 00001c9c: JUMPDEST 00001c9d: PUSH2 0x1ca4 00001ca0: PUSH2 0x436a 00001ca3: JUMP 00001ca4: JUMPDEST 00001ca5: PUSH1 0x01 00001ca7: PUSH1 0x01 00001ca9: PUSH1 0xa0 00001cab: SHL 00001cac: SUB 00001cad: DUP2 00001cae: DUP2 00001caf: AND 00001cb0: SWAP2 00001cb1: DUP3 00001cb2: ISZERO 00001cb3: PUSH2 0x1d01 00001cb6: JUMPI 00001cb7: PUSH32 0xe74dd8b1f5f3d5328df682e649c08b085f09c2ce77b68e54329e8d30e2642f78 00001cd8: SWAP1 00001cd9: PUSH1 0x0f 00001cdb: SLOAD 00001cdc: SWAP3 00001cdd: PUSH2 0x1ced 00001ce0: PUSH1 0x40 00001ce2: MLOAD 00001ce3: SWAP3 00001ce4: DUP4 00001ce5: SWAP3 00001ce6: DUP7 00001ce7: AND 00001ce8: DUP4 00001ce9: PUSH2 0x4150 00001cec: JUMP 00001ced: JUMPDEST 00001cee: SUB 00001cef: SWAP1 00001cf0: LOG1 00001cf1: PUSH1 0x01 00001cf3: PUSH1 0x01 00001cf5: PUSH1 0xa0 00001cf7: SHL 00001cf8: SUB 00001cf9: NOT 00001cfa: AND 00001cfb: OR 00001cfc: PUSH1 0x0f 00001cfe: SSTORE 00001cff: DUP1 00001d00: RETURN 00001d01: JUMPDEST 00001d02: PUSH1 0x40 00001d04: MLOAD 00001d05: PUSH4 0xd214a597 00001d0a: PUSH1 0xe0 00001d0c: SHL 00001d0d: DUP2 00001d0e: MSTORE 00001d0f: PUSH1 0x04 00001d11: SWAP1 00001d12: REVERT 00001d13: JUMPDEST 00001d14: POP 00001d15: CALLVALUE 00001d16: PUSH2 0x044a 00001d19: JUMPI 00001d1a: DUP1 00001d1b: PUSH1 0x03 00001d1d: NOT 00001d1e: CALLDATASIZE 00001d1f: ADD 00001d20: SLT 00001d21: PUSH2 0x044a 00001d24: JUMPI 00001d25: PUSH2 0x1d2c 00001d28: PUSH2 0x436a 00001d2b: JUMP 00001d2c: JUMPDEST 00001d2d: PUSH0 00001d2e: DUP1 00001d2f: MLOAD 00001d30: PUSH1 0x20 00001d32: PUSH2 0x557a 00001d35: DUP4 00001d36: CODECOPY 00001d37: DUP2 00001d38: MLOAD 00001d39: SWAP2 00001d3a: MSTORE 00001d3b: DUP1 00001d3c: SLOAD 00001d3d: PUSH1 0x01 00001d3f: PUSH1 0x01 00001d41: PUSH1 0xa0 00001d43: SHL 00001d44: SUB 00001d45: NOT 00001d46: DUP2 00001d47: AND 00001d48: SWAP1 00001d49: SWAP2 00001d4a: SSTORE 00001d4b: PUSH0 00001d4c: SWAP1 00001d4d: PUSH1 0x01 00001d4f: PUSH1 0x01 00001d51: PUSH1 0xa0 00001d53: SHL 00001d54: SUB 00001d55: AND 00001d56: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 00001d77: DUP3 00001d78: DUP1 00001d79: LOG3 00001d7a: DUP1 00001d7b: RETURN 00001d7c: JUMPDEST 00001d7d: POP 00001d7e: CALLVALUE 00001d7f: PUSH2 0x044a 00001d82: JUMPI 00001d83: PUSH1 0x40 00001d85: CALLDATASIZE 00001d86: PUSH1 0x03 00001d88: NOT 00001d89: ADD 00001d8a: SLT 00001d8b: PUSH2 0x044a 00001d8e: JUMPI 00001d8f: PUSH1 0x04 00001d91: CALLDATALOAD 00001d92: SWAP1 00001d93: PUSH2 0x1d9a 00001d96: PUSH2 0x3ac2 00001d99: JUMP 00001d9a: JUMPDEST 00001d9b: SWAP1 00001d9c: PUSH2 0x1da3 00001d9f: PUSH2 0x4410 00001da2: JUMP 00001da3: JUMPDEST 00001da4: PUSH2 0x1dab 00001da7: PUSH2 0x443c 00001daa: JUMP 00001dab: JUMPDEST 00001dac: DUP3 00001dad: PUSH1 0xff 00001daf: PUSH1 0x1e 00001db1: SLOAD 00001db2: AND 00001db3: PUSH2 0x15a4 00001db6: JUMPI 00001db7: PUSH1 0x09 00001db9: SLOAD 00001dba: PUSH2 0x1dc5 00001dbd: PUSH1 0x14 00001dbf: SLOAD 00001dc0: TIMESTAMP 00001dc1: PUSH2 0x3cd0 00001dc4: JUMP 00001dc5: JUMPDEST 00001dc6: GT 00001dc7: PUSH2 0x1323 00001dca: JUMPI 00001dcb: PUSH0 00001dcc: NOT 00001dcd: EQ 00001dce: PUSH2 0x1f2a 00001dd1: JUMPI 00001dd2: JUMPDEST 00001dd3: PUSH1 0x40 00001dd5: MLOAD 00001dd6: PUSH1 0x20 00001dd8: PUSH0 00001dd9: DUP2 00001dda: DUP4 00001ddb: ADD 00001ddc: SWAP3 00001ddd: PUSH4 0x23b872dd 00001de2: PUSH1 0xe0 00001de4: SHL 00001de5: DUP5 00001de6: MSTORE 00001de7: CALLER 00001de8: PUSH1 0x24 00001dea: DUP3 00001deb: ADD 00001dec: MSTORE 00001ded: ADDRESS 00001dee: PUSH1 0x44 00001df0: DUP3 00001df1: ADD 00001df2: MSTORE 00001df3: DUP7 00001df4: PUSH1 0x64 00001df6: DUP3 00001df7: ADD 00001df8: MSTORE 00001df9: PUSH1 0x64 00001dfb: DUP2 00001dfc: MSTORE 00001dfd: PUSH2 0x1e05 00001e00: DUP2 00001e01: PUSH2 0x3c4b 00001e04: JUMP 00001e05: JUMPDEST 00001e06: MLOAD 00001e07: PUSH20 0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 00001e1c: SWAP4 00001e1d: DUP3 00001e1e: DUP6 00001e1f: GAS 00001e20: CALL 00001e21: ISZERO 00001e22: PUSH2 0x1f1f 00001e25: JUMPI 00001e26: PUSH0 00001e27: MLOAD 00001e28: RETURNDATASIZE 00001e29: PUSH2 0x1f16 00001e2c: JUMPI 00001e2d: POP 00001e2e: DUP1 00001e2f: EXTCODESIZE 00001e30: ISZERO 00001e31: JUMPDEST 00001e32: PUSH2 0x1efe 00001e35: JUMPI 00001e36: POP 00001e37: PUSH2 0x1e4a 00001e3a: PUSH1 0x06 00001e3c: SLOAD 00001e3d: PUSH2 0x1e44 00001e40: PUSH2 0x3d0e 00001e43: JUMP 00001e44: JUMPDEST 00001e45: SWAP1 00001e46: PUSH2 0x3cd0 00001e49: JUMP 00001e4a: JUMPDEST 00001e4b: DUP4 00001e4c: GT 00001e4d: PUSH2 0x1eec 00001e50: JUMPI 00001e51: PUSH2 0x1e59 00001e54: DUP4 00001e55: PUSH2 0x43d9 00001e58: JUMP 00001e59: JUMPDEST 00001e5a: SWAP3 00001e5b: PUSH1 0x1d 00001e5d: SLOAD 00001e5e: PUSH2 0x2710 00001e61: SWAP1 00001e62: DUP2 00001e63: SUB 00001e64: SWAP5 00001e65: DUP2 00001e66: DUP7 00001e67: GT 00001e68: PUSH2 0x0d7a 00001e6b: JUMPI 00001e6c: PUSH1 0x20 00001e6e: SWAP6 00001e6f: PUSH2 0x1e77 00001e72: SWAP2 00001e73: PUSH2 0x3cdd 00001e76: JUMP 00001e77: JUMPDEST 00001e78: DIV 00001e79: SWAP3 00001e7a: CALLER 00001e7b: DUP4 00001e7c: MSTORE 00001e7d: PUSH1 0x18 00001e7f: DUP6 00001e80: MSTORE 00001e81: PUSH1 0x40 00001e83: DUP4 00001e84: KECCAK256 00001e85: PUSH2 0x1e8f 00001e88: DUP6 00001e89: DUP3 00001e8a: SLOAD 00001e8b: PUSH2 0x3d7b 00001e8e: JUMP 00001e8f: JUMPDEST 00001e90: SWAP1 00001e91: SSTORE 00001e92: PUSH2 0x1e9b 00001e95: DUP5 00001e96: DUP3 00001e97: PUSH2 0x45ae 00001e9a: JUMP 00001e9b: JUMPDEST 00001e9c: PUSH1 0x40 00001e9e: MLOAD 00001e9f: SWAP2 00001ea0: DUP3 00001ea1: MSTORE 00001ea2: DUP4 00001ea3: DUP6 00001ea4: DUP4 00001ea5: ADD 00001ea6: MSTORE 00001ea7: PUSH1 0x01 00001ea9: DUP1 00001eaa: PUSH1 0xa0 00001eac: SHL 00001ead: SUB 00001eae: AND 00001eaf: SWAP1 00001eb0: PUSH32 0xdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d7 00001ed1: PUSH1 0x40 00001ed3: CALLER 00001ed4: SWAP3 00001ed5: LOG3 00001ed6: PUSH0 00001ed7: DUP1 00001ed8: MLOAD 00001ed9: PUSH1 0x20 00001edb: PUSH2 0x563a 00001ede: DUP4 00001edf: CODECOPY 00001ee0: DUP2 00001ee1: MLOAD 00001ee2: SWAP2 00001ee3: MSTORE 00001ee4: TSTORE 00001ee5: PUSH1 0x40 00001ee7: MLOAD 00001ee8: SWAP1 00001ee9: DUP2 00001eea: MSTORE 00001eeb: RETURN 00001eec: JUMPDEST 00001eed: PUSH1 0x40 00001eef: MLOAD 00001ef0: PUSH4 0x3bc9ae09 00001ef5: PUSH1 0xe0 00001ef7: SHL 00001ef8: DUP2 00001ef9: MSTORE 00001efa: PUSH1 0x04 00001efc: SWAP1 00001efd: REVERT 00001efe: JUMPDEST 00001eff: PUSH1 0x24 00001f01: SWAP1 00001f02: PUSH1 0x40 00001f04: MLOAD 00001f05: SWAP1 00001f06: PUSH4 0x5274afe7 00001f0b: PUSH1 0xe0 00001f0d: SHL 00001f0e: DUP3 00001f0f: MSTORE 00001f10: PUSH1 0x04 00001f12: DUP3 00001f13: ADD 00001f14: MSTORE 00001f15: REVERT 00001f16: JUMPDEST 00001f17: PUSH1 0x01 00001f19: EQ 00001f1a: ISZERO 00001f1b: PUSH2 0x1e31 00001f1e: JUMP 00001f1f: JUMPDEST 00001f20: PUSH1 0x40 00001f22: MLOAD 00001f23: RETURNDATASIZE 00001f24: PUSH0 00001f25: DUP3 00001f26: RETURNDATACOPY 00001f27: RETURNDATASIZE 00001f28: SWAP1 00001f29: REVERT 00001f2a: JUMPDEST 00001f2b: PUSH0 00001f2c: DUP1 00001f2d: MLOAD 00001f2e: PUSH1 0x20 00001f30: PUSH2 0x55da 00001f33: DUP4 00001f34: CODECOPY 00001f35: DUP2 00001f36: MLOAD 00001f37: SWAP2 00001f38: MSTORE 00001f39: SLOAD 00001f3a: PUSH1 0x40 00001f3c: MLOAD 00001f3d: PUSH4 0x70a08231 00001f42: PUSH1 0xe0 00001f44: SHL 00001f45: DUP2 00001f46: MSTORE 00001f47: CALLER 00001f48: PUSH1 0x04 00001f4a: DUP3 00001f4b: ADD 00001f4c: MSTORE 00001f4d: SWAP2 00001f4e: SWAP4 00001f4f: POP 00001f50: PUSH1 0x20 00001f52: SWAP1 00001f53: DUP3 00001f54: SWAP1 00001f55: PUSH1 0x24 00001f57: SWAP1 00001f58: DUP3 00001f59: SWAP1 00001f5a: PUSH1 0x01 00001f5c: PUSH1 0x01 00001f5e: PUSH1 0xa0 00001f60: SHL 00001f61: SUB 00001f62: AND 00001f63: GAS 00001f64: STATICCALL 00001f65: SWAP1 00001f66: DUP2 00001f67: ISZERO 00001f68: PUSH2 0x1fab 00001f6b: JUMPI 00001f6c: DUP4 00001f6d: SWAP2 00001f6e: PUSH2 0x1f79 00001f71: JUMPI 00001f72: JUMPDEST 00001f73: POP 00001f74: SWAP2 00001f75: PUSH2 0x1dd2 00001f78: JUMP 00001f79: JUMPDEST 00001f7a: SWAP1 00001f7b: POP 00001f7c: PUSH1 0x20 00001f7e: DUP2 00001f7f: RETURNDATASIZE 00001f80: PUSH1 0x20 00001f82: GT 00001f83: PUSH2 0x1fa3 00001f86: JUMPI 00001f87: JUMPDEST 00001f88: DUP2 00001f89: PUSH2 0x1f94 00001f8c: PUSH1 0x20 00001f8e: SWAP4 00001f8f: DUP4 00001f90: PUSH2 0x3c94 00001f93: JUMP 00001f94: JUMPDEST 00001f95: DUP2 00001f96: ADD 00001f97: SUB 00001f98: SLT 00001f99: PUSH2 0x0bfb 00001f9c: JUMPI 00001f9d: MLOAD 00001f9e: PUSH0 00001f9f: PUSH2 0x1f72 00001fa2: JUMP 00001fa3: JUMPDEST 00001fa4: RETURNDATASIZE 00001fa5: SWAP2 00001fa6: POP 00001fa7: PUSH2 0x1f87 00001faa: JUMP 00001fab: JUMPDEST 00001fac: PUSH1 0x40 00001fae: MLOAD 00001faf: RETURNDATASIZE 00001fb0: DUP6 00001fb1: DUP3 00001fb2: RETURNDATACOPY 00001fb3: RETURNDATASIZE 00001fb4: SWAP1 00001fb5: REVERT 00001fb6: JUMPDEST 00001fb7: POP 00001fb8: CALLVALUE 00001fb9: PUSH2 0x044a 00001fbc: JUMPI 00001fbd: PUSH1 0x40 00001fbf: CALLDATASIZE 00001fc0: PUSH1 0x03 00001fc2: NOT 00001fc3: ADD 00001fc4: SLT 00001fc5: PUSH2 0x044a 00001fc8: JUMPI 00001fc9: PUSH1 0x04 00001fcb: CALLDATALOAD 00001fcc: PUSH2 0x1fd3 00001fcf: PUSH2 0x3ac2 00001fd2: JUMP 00001fd3: JUMPDEST 00001fd4: SWAP1 00001fd5: PUSH2 0x1fdc 00001fd8: PUSH2 0x4410 00001fdb: JUMP 00001fdc: JUMPDEST 00001fdd: PUSH2 0x1fe4 00001fe0: PUSH2 0x443c 00001fe3: JUMP 00001fe4: JUMPDEST 00001fe5: DUP1 00001fe6: ISZERO 00001fe7: PUSH2 0x16fa 00001fea: JUMPI 00001feb: PUSH0 00001fec: DUP1 00001fed: MLOAD 00001fee: PUSH1 0x20 00001ff0: PUSH2 0x55da 00001ff3: DUP4 00001ff4: CODECOPY 00001ff5: DUP2 00001ff6: MLOAD 00001ff7: SWAP2 00001ff8: MSTORE 00001ff9: SLOAD 00001ffa: PUSH1 0x01 00001ffc: PUSH1 0x01 00001ffe: PUSH1 0xa0 00002000: SHL 00002001: SUB 00002002: SWAP3 00002003: DUP4 00002004: AND 00002005: SWAP3 00002006: SWAP2 00002007: SWAP1 00002008: DUP3 00002009: AND 0000200a: DUP4 0000200b: SUB 0000200c: PUSH2 0x1347 0000200f: JUMPI 00002010: PUSH1 0x1b 00002012: SLOAD 00002013: PUSH0 00002014: MSTORE 00002015: PUSH1 0x20 00002017: SWAP2 00002018: PUSH1 0x17 0000201a: DUP4 0000201b: MSTORE 0000201c: PUSH1 0x40 0000201e: PUSH0 0000201f: KECCAK256 00002020: CALLER 00002021: PUSH0 00002022: MSTORE 00002023: DUP4 00002024: MSTORE 00002025: PUSH2 0x2032 00002028: DUP3 00002029: PUSH1 0x40 0000202b: PUSH0 0000202c: KECCAK256 0000202d: SLOAD 0000202e: PUSH2 0x3d7b 00002031: JUMP 00002032: JUMPDEST 00002033: PUSH1 0x1c 00002035: SLOAD 00002036: LT 00002037: PUSH2 0x2172 0000203a: JUMPI 0000203b: CALLER 0000203c: DUP6 0000203d: MSTORE 0000203e: PUSH1 0x19 00002040: DUP4 00002041: MSTORE 00002042: PUSH2 0x204f 00002045: DUP3 00002046: PUSH1 0x40 00002048: DUP8 00002049: KECCAK256 0000204a: SLOAD 0000204b: PUSH2 0x3d7b 0000204e: JUMP 0000204f: JUMPDEST 00002050: CALLER 00002051: DUP7 00002052: MSTORE 00002053: PUSH1 0x18 00002055: DUP5 00002056: MSTORE 00002057: PUSH1 0x40 00002059: DUP7 0000205a: KECCAK256 0000205b: SLOAD 0000205c: LT 0000205d: PUSH2 0x2160 00002060: JUMPI 00002061: DUP1 00002062: PUSH2 0x2071 00002065: DUP4 00002066: DUP8 00002067: SWAP4 00002068: PUSH1 0x0f 0000206a: SLOAD 0000206b: AND 0000206c: CALLER 0000206d: PUSH2 0x4466 00002070: JUMP 00002071: JUMPDEST 00002072: PUSH1 0x0f 00002074: SLOAD 00002075: AND 00002076: PUSH1 0x1b 00002078: SLOAD 00002079: DUP2 0000207a: EXTCODESIZE 0000207b: ISZERO 0000207c: PUSH2 0x16eb 0000207f: JUMPI 00002080: DUP3 00002081: SWAP2 00002082: PUSH1 0x84 00002084: DUP4 00002085: SWAP3 00002086: PUSH1 0x40 00002088: MLOAD 00002089: SWAP5 0000208a: DUP6 0000208b: SWAP4 0000208c: DUP5 0000208d: SWAP3 0000208e: PUSH4 0x567a28eb 00002093: PUSH1 0xe0 00002095: SHL 00002096: DUP5 00002097: MSTORE 00002098: CALLER 00002099: PUSH1 0x04 0000209b: DUP6 0000209c: ADD 0000209d: MSTORE 0000209e: DUP10 0000209f: PUSH1 0x24 000020a1: DUP6 000020a2: ADD 000020a3: MSTORE 000020a4: PUSH1 0x01 000020a6: PUSH1 0x44 000020a8: DUP6 000020a9: ADD 000020aa: MSTORE 000020ab: PUSH1 0x64 000020ad: DUP5 000020ae: ADD 000020af: MSTORE 000020b0: GAS 000020b1: CALL 000020b2: DUP1 000020b3: ISZERO 000020b4: PUSH2 0x16ef 000020b7: JUMPI 000020b8: PUSH2 0x2148 000020bb: JUMPI 000020bc: JUMPDEST 000020bd: POP 000020be: PUSH32 0x84e61bb7a516bd67884995d6a189c01796ef032973d03ad48f8a301b28161d5d 000020df: PUSH1 0x80 000020e1: DUP5 000020e2: DUP7 000020e3: DUP6 000020e4: CALLER 000020e5: DUP7 000020e6: MSTORE 000020e7: PUSH1 0x19 000020e9: DUP4 000020ea: MSTORE 000020eb: PUSH1 0x40 000020ed: DUP7 000020ee: KECCAK256 000020ef: PUSH2 0x20f9 000020f2: DUP3 000020f3: DUP3 000020f4: SLOAD 000020f5: PUSH2 0x3d7b 000020f8: JUMP 000020f9: JUMPDEST 000020fa: SWAP1 000020fb: SSTORE 000020fc: PUSH1 0x1b 000020fe: SLOAD 000020ff: DUP7 00002100: MSTORE 00002101: PUSH1 0x17 00002103: DUP4 00002104: MSTORE 00002105: PUSH1 0x40 00002107: DUP7 00002108: KECCAK256 00002109: CALLER 0000210a: PUSH0 0000210b: MSTORE 0000210c: DUP4 0000210d: MSTORE 0000210e: PUSH1 0x40 00002110: PUSH0 00002111: KECCAK256 00002112: PUSH2 0x211c 00002115: DUP3 00002116: DUP3 00002117: SLOAD 00002118: PUSH2 0x3d7b 0000211b: JUMP 0000211c: JUMPDEST 0000211d: SWAP1 0000211e: SSTORE 0000211f: PUSH1 0x40 00002121: MLOAD 00002122: SWAP3 00002123: CALLER 00002124: DUP5 00002125: MSTORE 00002126: DUP4 00002127: ADD 00002128: MSTORE 00002129: PUSH1 0x40 0000212b: DUP3 0000212c: ADD 0000212d: MSTORE 0000212e: PUSH1 0x01 00002130: PUSH1 0x60 00002132: DUP3 00002133: ADD 00002134: MSTORE 00002135: LOG1 00002136: DUP1 00002137: PUSH0 00002138: DUP1 00002139: MLOAD 0000213a: PUSH1 0x20 0000213c: PUSH2 0x563a 0000213f: DUP4 00002140: CODECOPY 00002141: DUP2 00002142: MLOAD 00002143: SWAP2 00002144: MSTORE 00002145: TSTORE 00002146: DUP1 00002147: RETURN 00002148: JUMPDEST 00002149: PUSH2 0x2154 0000214c: SWAP1 0000214d: SWAP4 0000214e: SWAP3 0000214f: SWAP4 00002150: PUSH2 0x3c66 00002153: JUMP 00002154: JUMPDEST 00002155: PUSH2 0x1021 00002158: JUMPI 00002159: SWAP1 0000215a: DUP4 0000215b: PUSH0 0000215c: PUSH2 0x20bc 0000215f: JUMP 00002160: JUMPDEST 00002161: PUSH1 0x40 00002163: MLOAD 00002164: PUSH4 0x145f674d 00002169: PUSH1 0xe2 0000216b: SHL 0000216c: DUP2 0000216d: MSTORE 0000216e: PUSH1 0x04 00002170: SWAP1 00002171: REVERT 00002172: JUMPDEST 00002173: PUSH1 0x40 00002175: MLOAD 00002176: PUSH4 0x0e6dac53 0000217b: PUSH1 0xe1 0000217d: SHL 0000217e: DUP2 0000217f: MSTORE 00002180: PUSH1 0x04 00002182: SWAP1 00002183: REVERT 00002184: JUMPDEST 00002185: POP 00002186: CALLVALUE 00002187: PUSH2 0x044a 0000218a: JUMPI 0000218b: PUSH1 0x20 0000218d: CALLDATASIZE 0000218e: PUSH1 0x03 00002190: NOT 00002191: ADD 00002192: SLT 00002193: PUSH2 0x044a 00002196: JUMPI 00002197: PUSH32 0x4eb129c82dcd3eedb52df2b0e6fb4cfa41ac64ee9d63ff081acbb1877e85d79b 000021b8: PUSH1 0x20 000021ba: PUSH2 0x21c1 000021bd: PUSH2 0x3aac 000021c0: JUMP 000021c1: JUMPDEST 000021c2: PUSH2 0x21c9 000021c5: PUSH2 0x436a 000021c8: JUMP 000021c9: JUMPDEST 000021ca: PUSH1 0x01 000021cc: PUSH1 0x01 000021ce: PUSH1 0xa0 000021d0: SHL 000021d1: SUB 000021d2: AND 000021d3: PUSH2 0x0742 000021d6: DUP2 000021d7: PUSH2 0x476f 000021da: JUMP 000021db: JUMPDEST 000021dc: POP 000021dd: CALLVALUE 000021de: PUSH2 0x044a 000021e1: JUMPI 000021e2: DUP1 000021e3: PUSH1 0x03 000021e5: NOT 000021e6: CALLDATASIZE 000021e7: ADD 000021e8: SLT 000021e9: PUSH2 0x044a 000021ec: JUMPI 000021ed: PUSH1 0x20 000021ef: PUSH1 0xff 000021f1: PUSH0 000021f2: DUP1 000021f3: MLOAD 000021f4: PUSH1 0x20 000021f6: PUSH2 0x55fa 000021f9: DUP4 000021fa: CODECOPY 000021fb: DUP2 000021fc: MLOAD 000021fd: SWAP2 000021fe: MSTORE 000021ff: SLOAD 00002200: AND 00002201: PUSH1 0x40 00002203: MLOAD 00002204: SWAP1 00002205: ISZERO 00002206: ISZERO 00002207: DUP2 00002208: MSTORE 00002209: RETURN 0000220a: JUMPDEST 0000220b: POP 0000220c: CALLVALUE 0000220d: PUSH2 0x044a 00002210: JUMPI 00002211: DUP1 00002212: PUSH1 0x03 00002214: NOT 00002215: CALLDATASIZE 00002216: ADD 00002217: SLT 00002218: PUSH2 0x044a 0000221b: JUMPI 0000221c: PUSH1 0x20 0000221e: PUSH1 0x1a 00002220: SLOAD 00002221: PUSH1 0x40 00002223: MLOAD 00002224: SWAP1 00002225: DUP2 00002226: MSTORE 00002227: RETURN 00002228: JUMPDEST 00002229: POP 0000222a: CALLVALUE 0000222b: PUSH2 0x044a 0000222e: JUMPI 0000222f: PUSH2 0x2237 00002232: CALLDATASIZE 00002233: PUSH2 0x3b2f 00002236: JUMP 00002237: JUMPDEST 00002238: SWAP1 00002239: PUSH2 0x2240 0000223c: PUSH2 0x436a 0000223f: JUMP 00002240: JUMPDEST 00002241: PUSH32 0x8054e31accd385c74219eac9c238e4261c2a460523deb5aab574bdaf8a5c225b 00002262: PUSH1 0x80 00002264: PUSH1 0x1b 00002266: SLOAD 00002267: PUSH1 0x1a 00002269: SLOAD 0000226a: PUSH1 0x40 0000226c: MLOAD 0000226d: SWAP2 0000226e: DUP3 0000226f: MSTORE 00002270: DUP5 00002271: PUSH1 0x20 00002273: DUP4 00002274: ADD 00002275: MSTORE 00002276: PUSH1 0x40 00002278: DUP3 00002279: ADD 0000227a: MSTORE 0000227b: DUP5 0000227c: PUSH1 0x60 0000227e: DUP3 0000227f: ADD 00002280: MSTORE 00002281: LOG1 00002282: PUSH1 0x1b 00002284: SSTORE 00002285: PUSH1 0x1a 00002287: SSTORE 00002288: DUP1 00002289: RETURN 0000228a: JUMPDEST 0000228b: POP 0000228c: CALLVALUE 0000228d: PUSH2 0x0bfb 00002290: JUMPI 00002291: PUSH1 0x20 00002293: CALLDATASIZE 00002294: PUSH1 0x03 00002296: NOT 00002297: ADD 00002298: SLT 00002299: PUSH2 0x0bfb 0000229c: JUMPI 0000229d: PUSH1 0x04 0000229f: CALLDATALOAD 000022a0: PUSH2 0x22a7 000022a3: PUSH2 0x4410 000022a6: JUMP 000022a7: JUMPDEST 000022a8: PUSH2 0x22af 000022ab: PUSH2 0x443c 000022ae: JUMP 000022af: JUMPDEST 000022b0: PUSH1 0x1b 000022b2: SLOAD 000022b3: DUP2 000022b4: SUB 000022b5: PUSH2 0x2351 000022b8: JUMPI 000022b9: PUSH1 0x0f 000022bb: SLOAD 000022bc: PUSH1 0x01 000022be: PUSH1 0x01 000022c0: PUSH1 0xa0 000022c2: SHL 000022c3: SUB 000022c4: AND 000022c5: SWAP1 000022c6: DUP2 000022c7: EXTCODESIZE 000022c8: ISZERO 000022c9: PUSH2 0x0bfb 000022cc: JUMPI 000022cd: PUSH0 000022ce: SWAP2 000022cf: PUSH1 0x64 000022d1: DUP4 000022d2: SWAP3 000022d3: PUSH1 0x40 000022d5: MLOAD 000022d6: SWAP5 000022d7: DUP6 000022d8: SWAP4 000022d9: DUP5 000022da: SWAP3 000022db: PUSH4 0xe4fcba53 000022e0: PUSH1 0xe0 000022e2: SHL 000022e3: DUP5 000022e4: MSTORE 000022e5: CALLER 000022e6: PUSH1 0x04 000022e8: DUP6 000022e9: ADD 000022ea: MSTORE 000022eb: DUP3 000022ec: PUSH1 0x24 000022ee: DUP6 000022ef: ADD 000022f0: MSTORE 000022f1: PUSH1 0x44 000022f3: DUP5 000022f4: ADD 000022f5: MSTORE 000022f6: GAS 000022f7: CALL 000022f8: DUP1 000022f9: ISZERO 000022fa: PUSH2 0x1f1f 000022fd: JUMPI 000022fe: PUSH2 0x2340 00002301: JUMPI 00002302: JUMPDEST 00002303: POP 00002304: PUSH32 0x16df417990f9da6a40f079e6beba7cc76cdf2f89f2097559054df0bce59b9828 00002325: PUSH1 0x20 00002327: PUSH1 0x40 00002329: MLOAD 0000232a: CALLER 0000232b: DUP2 0000232c: MSTORE 0000232d: LOG1 0000232e: DUP1 0000232f: PUSH0 00002330: DUP1 00002331: MLOAD 00002332: PUSH1 0x20 00002334: PUSH2 0x563a 00002337: DUP4 00002338: CODECOPY 00002339: DUP2 0000233a: MLOAD 0000233b: SWAP2 0000233c: MSTORE 0000233d: TSTORE 0000233e: DUP1 0000233f: RETURN 00002340: JUMPDEST 00002341: PUSH2 0x234a 00002344: SWAP2 00002345: POP 00002346: PUSH2 0x3c66 00002349: JUMP 0000234a: JUMPDEST 0000234b: PUSH0 0000234c: DUP1 0000234d: PUSH2 0x2302 00002350: JUMP 00002351: JUMPDEST 00002352: PUSH1 0x40 00002354: MLOAD 00002355: PUSH4 0x6a103625 0000235a: PUSH1 0xe1 0000235c: SHL 0000235d: DUP2 0000235e: MSTORE 0000235f: PUSH1 0x04 00002361: SWAP1 00002362: REVERT 00002363: JUMPDEST 00002364: PUSH2 0x3a8e 00002367: JUMP 00002368: JUMPDEST 00002369: CALLVALUE 0000236a: PUSH2 0x0bfb 0000236d: JUMPI 0000236e: PUSH1 0x20 00002370: CALLDATASIZE 00002371: PUSH1 0x03 00002373: NOT 00002374: ADD 00002375: SLT 00002376: PUSH2 0x0bfb 00002379: JUMPI 0000237a: PUSH1 0x20 0000237c: PUSH2 0x2386 0000237f: PUSH1 0x04 00002381: CALLDATALOAD 00002382: PUSH2 0x466f 00002385: JUMP 00002386: JUMPDEST 00002387: SWAP1 00002388: SLOAD 00002389: PUSH1 0x40 0000238b: MLOAD 0000238c: PUSH1 0x03 0000238e: SWAP3 0000238f: SWAP1 00002390: SWAP3 00002391: SHL 00002392: SHR 00002393: PUSH1 0x01 00002395: PUSH1 0x01 00002397: PUSH1 0xa0 00002399: SHL 0000239a: SUB 0000239b: AND 0000239c: DUP2 0000239d: MSTORE 0000239e: RETURN 0000239f: JUMPDEST 000023a0: CALLVALUE 000023a1: PUSH2 0x0bfb 000023a4: JUMPI 000023a5: PUSH0 000023a6: CALLDATASIZE 000023a7: PUSH1 0x03 000023a9: NOT 000023aa: ADD 000023ab: SLT 000023ac: PUSH2 0x0bfb 000023af: JUMPI 000023b0: PUSH0 000023b1: PUSH1 0x80 000023b3: PUSH1 0x40 000023b5: MLOAD 000023b6: PUSH2 0x23be 000023b9: DUP2 000023ba: PUSH2 0x3c4b 000023bd: JUMP 000023be: JUMPDEST 000023bf: DUP3 000023c0: DUP2 000023c1: MSTORE 000023c2: DUP3 000023c3: PUSH1 0x20 000023c5: DUP3 000023c6: ADD 000023c7: MSTORE 000023c8: DUP3 000023c9: PUSH1 0x40 000023cb: DUP3 000023cc: ADD 000023cd: MSTORE 000023ce: DUP3 000023cf: PUSH1 0x60 000023d1: DUP3 000023d2: ADD 000023d3: MSTORE 000023d4: ADD 000023d5: MSTORE 000023d6: PUSH1 0xa0 000023d8: PUSH1 0x40 000023da: MLOAD 000023db: PUSH2 0x23e3 000023de: DUP2 000023df: PUSH2 0x3c4b 000023e2: JUMP 000023e3: JUMPDEST 000023e4: PUSH1 0x10 000023e6: SLOAD 000023e7: SWAP1 000023e8: DUP2 000023e9: DUP2 000023ea: MSTORE 000023eb: PUSH1 0x11 000023ed: SLOAD 000023ee: PUSH1 0x20 000023f0: DUP3 000023f1: ADD 000023f2: SWAP1 000023f3: DUP2 000023f4: MSTORE 000023f5: PUSH1 0x12 000023f7: SLOAD 000023f8: PUSH1 0x40 000023fa: DUP4 000023fb: ADD 000023fc: SWAP1 000023fd: DUP2 000023fe: MSTORE 000023ff: PUSH1 0x13 00002401: SLOAD 00002402: SWAP2 00002403: PUSH1 0x60 00002405: DUP5 00002406: ADD 00002407: SWAP3 00002408: DUP4 00002409: MSTORE 0000240a: PUSH1 0x80 0000240c: PUSH1 0x14 0000240e: SLOAD 0000240f: SWAP5 00002410: ADD 00002411: SWAP4 00002412: DUP5 00002413: MSTORE 00002414: PUSH1 0x40 00002416: MLOAD 00002417: SWAP5 00002418: DUP6 00002419: MSTORE 0000241a: MLOAD 0000241b: PUSH1 0x20 0000241d: DUP6 0000241e: ADD 0000241f: MSTORE 00002420: MLOAD 00002421: PUSH1 0x40 00002423: DUP5 00002424: ADD 00002425: MSTORE 00002426: MLOAD 00002427: PUSH1 0x60 00002429: DUP4 0000242a: ADD 0000242b: MSTORE 0000242c: MLOAD 0000242d: PUSH1 0x80 0000242f: DUP3 00002430: ADD 00002431: MSTORE 00002432: RETURN 00002433: JUMPDEST 00002434: CALLVALUE 00002435: PUSH2 0x0bfb 00002438: JUMPI 00002439: PUSH1 0x20 0000243b: CALLDATASIZE 0000243c: PUSH1 0x03 0000243e: NOT 0000243f: ADD 00002440: SLT 00002441: PUSH2 0x0bfb 00002444: JUMPI 00002445: PUSH1 0x04 00002447: CALLDATALOAD 00002448: PUSH1 0x01 0000244a: PUSH1 0x01 0000244c: PUSH1 0x40 0000244e: SHL 0000244f: SUB 00002450: DUP2 00002451: GT 00002452: PUSH2 0x0bfb 00002455: JUMPI 00002456: PUSH2 0x2463 00002459: SWAP1 0000245a: CALLDATASIZE 0000245b: SWAP1 0000245c: PUSH1 0x04 0000245e: ADD 0000245f: PUSH2 0x3b02 00002462: JUMP 00002463: JUMPDEST 00002464: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 00002485: DUP1 00002486: SLOAD 00002487: SWAP2 00002488: PUSH1 0x01 0000248a: PUSH1 0x01 0000248c: PUSH1 0x40 0000248e: SHL 0000248f: SUB 00002490: DUP4 00002491: AND 00002492: DUP1 00002493: ISZERO 00002494: SWAP1 00002495: DUP2 00002496: PUSH2 0x2f97 00002499: JUMPI 0000249a: JUMPDEST 0000249b: PUSH1 0x01 0000249d: EQ 0000249e: SWAP1 0000249f: DUP2 000024a0: PUSH2 0x2f8d 000024a3: JUMPI 000024a4: JUMPDEST 000024a5: ISZERO 000024a6: SWAP1 000024a7: DUP2 000024a8: PUSH2 0x2f84 000024ab: JUMPI 000024ac: JUMPDEST 000024ad: POP 000024ae: PUSH2 0x2f72 000024b1: JUMPI 000024b2: PUSH1 0x01 000024b4: PUSH1 0x01 000024b6: PUSH1 0x01 000024b8: PUSH1 0x40 000024ba: SHL 000024bb: SUB 000024bc: NOT 000024bd: DUP5 000024be: AND 000024bf: OR 000024c0: DUP3 000024c1: SSTORE 000024c2: PUSH1 0xff 000024c4: DUP4 000024c5: PUSH1 0x40 000024c7: SHR 000024c8: AND 000024c9: ISZERO 000024ca: PUSH2 0x2f53 000024cd: JUMPI 000024ce: JUMPDEST 000024cf: PUSH1 0x40 000024d1: DUP5 000024d2: DUP3 000024d3: DUP2 000024d4: ADD 000024d5: SUB 000024d6: SLT 000024d7: PUSH2 0x0bfb 000024da: JUMPI 000024db: DUP4 000024dc: CALLDATALOAD 000024dd: PUSH1 0x01 000024df: PUSH1 0x01 000024e1: PUSH1 0x40 000024e3: SHL 000024e4: SUB 000024e5: DUP2 000024e6: GT 000024e7: PUSH2 0x0bfb 000024ea: JUMPI 000024eb: DUP5 000024ec: ADD 000024ed: PUSH2 0x01a0 000024f0: DUP2 000024f1: DUP4 000024f2: DUP8 000024f3: ADD 000024f4: SUB 000024f5: SLT 000024f6: PUSH2 0x0bfb 000024f9: JUMPI 000024fa: PUSH1 0x40 000024fc: MLOAD 000024fd: SWAP2 000024fe: PUSH2 0x2506 00002501: DUP4 00002502: PUSH2 0x3c2f 00002505: JUMP 00002506: JUMPDEST 00002507: PUSH2 0x250f 0000250a: DUP3 0000250b: PUSH2 0x3aee 0000250e: JUMP 0000250f: JUMPDEST 00002510: DUP4 00002511: MSTORE 00002512: PUSH1 0x20 00002514: DUP3 00002515: ADD 00002516: CALLDATALOAD 00002517: PUSH1 0x01 00002519: PUSH1 0x01 0000251b: PUSH1 0x40 0000251d: SHL 0000251e: SUB 0000251f: DUP2 00002520: GT 00002521: PUSH2 0x0bfb 00002524: JUMPI 00002525: PUSH2 0x2533 00002528: SWAP1 00002529: DUP3 0000252a: DUP9 0000252b: ADD 0000252c: SWAP1 0000252d: DUP5 0000252e: ADD 0000252f: PUSH2 0x40bc 00002532: JUMP 00002533: JUMPDEST 00002534: PUSH1 0x20 00002536: DUP5 00002537: ADD 00002538: MSTORE 00002539: PUSH1 0x40 0000253b: DUP3 0000253c: ADD 0000253d: CALLDATALOAD 0000253e: PUSH1 0x01 00002540: PUSH1 0x01 00002542: PUSH1 0x40 00002544: SHL 00002545: SUB 00002546: DUP2 00002547: GT 00002548: PUSH2 0x0bfb 0000254b: JUMPI 0000254c: PUSH2 0x255a 0000254f: SWAP1 00002550: DUP3 00002551: DUP9 00002552: ADD 00002553: SWAP1 00002554: DUP5 00002555: ADD 00002556: PUSH2 0x40bc 00002559: JUMP 0000255a: JUMPDEST 0000255b: PUSH1 0x40 0000255d: DUP5 0000255e: ADD 0000255f: MSTORE 00002560: PUSH1 0x60 00002562: DUP3 00002563: ADD 00002564: CALLDATALOAD 00002565: PUSH1 0x60 00002567: DUP5 00002568: ADD 00002569: MSTORE 0000256a: PUSH1 0x80 0000256c: DUP3 0000256d: ADD 0000256e: CALLDATALOAD 0000256f: PUSH1 0x80 00002571: DUP5 00002572: ADD 00002573: MSTORE 00002574: PUSH1 0xa0 00002576: DUP3 00002577: ADD 00002578: CALLDATALOAD 00002579: PUSH1 0xa0 0000257b: DUP5 0000257c: ADD 0000257d: MSTORE 0000257e: PUSH1 0xc0 00002580: DUP3 00002581: ADD 00002582: CALLDATALOAD 00002583: PUSH1 0xc0 00002585: DUP5 00002586: ADD 00002587: MSTORE 00002588: PUSH1 0xe0 0000258a: DUP3 0000258b: ADD 0000258c: CALLDATALOAD 0000258d: PUSH1 0xe0 0000258f: DUP5 00002590: ADD 00002591: MSTORE 00002592: PUSH2 0x0100 00002595: DUP1 00002596: DUP4 00002597: ADD 00002598: CALLDATALOAD 00002599: DUP2 0000259a: DUP6 0000259b: ADD 0000259c: MSTORE 0000259d: PUSH2 0x0120 000025a0: PUSH2 0x25aa 000025a3: DUP2 000025a4: DUP6 000025a5: ADD 000025a6: PUSH2 0x3aee 000025a9: JUMP 000025aa: JUMPDEST 000025ab: DUP2 000025ac: DUP7 000025ad: ADD 000025ae: MSTORE 000025af: PUSH2 0x0140 000025b2: SWAP2 000025b3: PUSH2 0x25bd 000025b6: DUP4 000025b7: DUP7 000025b8: ADD 000025b9: PUSH2 0x3aee 000025bc: JUMP 000025bd: JUMPDEST 000025be: DUP4 000025bf: DUP8 000025c0: ADD 000025c1: MSTORE 000025c2: PUSH2 0x0160 000025c5: SWAP4 000025c6: PUSH2 0x25d0 000025c9: DUP6 000025ca: DUP8 000025cb: ADD 000025cc: PUSH2 0x3aee 000025cf: JUMP 000025d0: JUMPDEST 000025d1: DUP6 000025d2: DUP9 000025d3: ADD 000025d4: MSTORE 000025d5: PUSH2 0x25e2 000025d8: PUSH2 0x0180 000025db: DUP1 000025dc: SWAP8 000025dd: ADD 000025de: PUSH2 0x3aee 000025e1: JUMP 000025e2: JUMPDEST 000025e3: DUP7 000025e4: DUP9 000025e5: ADD 000025e6: MSTORE 000025e7: PUSH1 0x20 000025e9: DUP11 000025ea: ADD 000025eb: CALLDATALOAD 000025ec: SWAP1 000025ed: PUSH1 0x01 000025ef: PUSH1 0x01 000025f1: PUSH1 0x40 000025f3: SHL 000025f4: SUB 000025f5: DUP3 000025f6: GT 000025f7: PUSH2 0x0bfb 000025fa: JUMPI 000025fb: DUP1 000025fc: DUP12 000025fd: ADD 000025fe: PUSH1 0x1f 00002600: DUP4 00002601: DUP14 00002602: ADD 00002603: ADD 00002604: SLT 00002605: ISZERO 00002606: PUSH2 0x0bfb 00002609: JUMPI 0000260a: PUSH1 0x01 0000260c: PUSH1 0x01 0000260e: PUSH1 0x40 00002610: SHL 00002611: SUB 00002612: DUP3 00002613: DUP13 00002614: ADD 00002615: CALLDATALOAD 00002616: GT 00002617: PUSH2 0x0ba1 0000261a: JUMPI 0000261b: PUSH1 0x40 0000261d: MLOAD 0000261e: SWAP11 0000261f: PUSH2 0x2631 00002622: PUSH1 0x20 00002624: DUP5 00002625: DUP4 00002626: ADD 00002627: CALLDATALOAD 00002628: PUSH1 0x05 0000262a: SHL 0000262b: ADD 0000262c: DUP14 0000262d: PUSH2 0x3c94 00002630: JUMP 00002631: JUMPDEST 00002632: DUP3 00002633: DUP2 00002634: ADD 00002635: CALLDATALOAD 00002636: DUP13 00002637: MSTORE 00002638: PUSH1 0x20 0000263a: DUP13 0000263b: ADD 0000263c: SWAP2 0000263d: DUP2 0000263e: ADD 0000263f: PUSH1 0x20 00002641: DUP5 00002642: DUP4 00002643: ADD 00002644: CALLDATALOAD 00002645: PUSH1 0x05 00002647: SHL 00002648: DUP6 00002649: DUP5 0000264a: ADD 0000264b: ADD 0000264c: ADD 0000264d: GT 0000264e: PUSH2 0x0bfb 00002651: JUMPI 00002652: SWAP1 00002653: PUSH1 0x20 00002655: DUP4 00002656: DUP4 00002657: ADD 00002658: ADD 00002659: SWAP2 0000265a: JUMPDEST 0000265b: DUP1 0000265c: DUP5 0000265d: ADD 0000265e: DUP1 0000265f: CALLDATALOAD 00002660: PUSH1 0x05 00002662: SHL 00002663: ADD 00002664: PUSH1 0x20 00002666: ADD 00002667: DUP4 00002668: LT 00002669: PUSH2 0x2f38 0000266c: JUMPI 0000266d: POP 0000266e: POP 0000266f: POP 00002670: POP 00002671: PUSH2 0x2678 00002674: PUSH2 0x486e 00002677: JUMP 00002678: JUMPDEST 00002679: PUSH2 0x2680 0000267c: PUSH2 0x486e 0000267f: JUMP 00002680: JUMPDEST 00002681: PUSH1 0x20 00002683: DUP7 00002684: ADD 00002685: MLOAD 00002686: PUSH1 0x40 00002688: DUP8 00002689: ADD 0000268a: MLOAD 0000268b: SWAP1 0000268c: PUSH2 0x2693 0000268f: PUSH2 0x486e 00002692: JUMP 00002693: JUMPDEST 00002694: PUSH2 0x269b 00002697: PUSH2 0x486e 0000269a: JUMP 0000269b: JUMPDEST 0000269c: DUP1 0000269d: MLOAD 0000269e: SWAP1 0000269f: PUSH1 0x01 000026a1: PUSH1 0x01 000026a3: PUSH1 0x40 000026a5: SHL 000026a6: SUB 000026a7: DUP3 000026a8: GT 000026a9: PUSH2 0x0ba1 000026ac: JUMPI 000026ad: DUP2 000026ae: SWAP1 000026af: PUSH2 0x26c5 000026b2: PUSH0 000026b3: DUP1 000026b4: MLOAD 000026b5: PUSH1 0x20 000026b7: PUSH2 0x551a 000026ba: DUP4 000026bb: CODECOPY 000026bc: DUP2 000026bd: MLOAD 000026be: SWAP2 000026bf: MSTORE 000026c0: SLOAD 000026c1: PUSH2 0x3d43 000026c4: JUMP 000026c5: JUMPDEST 000026c6: PUSH1 0x1f 000026c8: DUP2 000026c9: GT 000026ca: PUSH2 0x2ec1 000026cd: JUMPI 000026ce: JUMPDEST 000026cf: POP 000026d0: PUSH1 0x20 000026d2: SWAP1 000026d3: PUSH1 0x1f 000026d5: DUP4 000026d6: GT 000026d7: PUSH1 0x01 000026d9: EQ 000026da: PUSH2 0x2e21 000026dd: JUMPI 000026de: PUSH0 000026df: SWAP3 000026e0: PUSH2 0x2e16 000026e3: JUMPI 000026e4: JUMPDEST 000026e5: POP 000026e6: POP 000026e7: DUP2 000026e8: PUSH1 0x01 000026ea: SHL 000026eb: SWAP2 000026ec: PUSH0 000026ed: NOT 000026ee: SWAP1 000026ef: PUSH1 0x03 000026f1: SHL 000026f2: SHR 000026f3: NOT 000026f4: AND 000026f5: OR 000026f6: PUSH0 000026f7: DUP1 000026f8: MLOAD 000026f9: PUSH1 0x20 000026fb: PUSH2 0x551a 000026fe: DUP4 000026ff: CODECOPY 00002700: DUP2 00002701: MLOAD 00002702: SWAP2 00002703: MSTORE 00002704: SSTORE 00002705: JUMPDEST 00002706: DUP1 00002707: MLOAD 00002708: SWAP1 00002709: PUSH1 0x01 0000270b: PUSH1 0x01 0000270d: PUSH1 0x40 0000270f: SHL 00002710: SUB 00002711: DUP3 00002712: GT 00002713: PUSH2 0x0ba1 00002716: JUMPI 00002717: DUP2 00002718: SWAP1 00002719: PUSH2 0x272f 0000271c: PUSH0 0000271d: DUP1 0000271e: MLOAD 0000271f: PUSH1 0x20 00002721: PUSH2 0x555a 00002724: DUP4 00002725: CODECOPY 00002726: DUP2 00002727: MLOAD 00002728: SWAP2 00002729: MSTORE 0000272a: SLOAD 0000272b: PUSH2 0x3d43 0000272e: JUMP 0000272f: JUMPDEST 00002730: PUSH1 0x1f 00002732: DUP2 00002733: GT 00002734: PUSH2 0x2d9f 00002737: JUMPI 00002738: JUMPDEST 00002739: POP 0000273a: PUSH1 0x20 0000273c: SWAP1 0000273d: PUSH1 0x1f 0000273f: DUP4 00002740: GT 00002741: PUSH1 0x01 00002743: EQ 00002744: PUSH2 0x2cff 00002747: JUMPI 00002748: PUSH0 00002749: SWAP3 0000274a: PUSH2 0x2cf4 0000274d: JUMPI 0000274e: JUMPDEST 0000274f: POP 00002750: POP 00002751: DUP2 00002752: PUSH1 0x01 00002754: SHL 00002755: SWAP2 00002756: PUSH0 00002757: NOT 00002758: SWAP1 00002759: PUSH1 0x03 0000275b: SHL 0000275c: SHR 0000275d: NOT 0000275e: AND 0000275f: OR 00002760: PUSH0 00002761: DUP1 00002762: MLOAD 00002763: PUSH1 0x20 00002765: PUSH2 0x555a 00002768: DUP4 00002769: CODECOPY 0000276a: DUP2 0000276b: MLOAD 0000276c: SWAP2 0000276d: MSTORE 0000276e: SSTORE 0000276f: JUMPDEST 00002770: DUP6 00002771: MLOAD 00002772: PUSH1 0x01 00002774: PUSH1 0x01 00002776: PUSH1 0xa0 00002778: SHL 00002779: SUB 0000277a: AND 0000277b: ISZERO 0000277c: PUSH2 0x074d 0000277f: JUMPI 00002780: DUP6 00002781: DUP4 00002782: ADD 00002783: MLOAD 00002784: PUSH1 0x01 00002786: PUSH1 0x01 00002788: PUSH1 0xa0 0000278a: SHL 0000278b: SUB 0000278c: AND 0000278d: ISZERO 0000278e: PUSH2 0x0edd 00002791: JUMPI 00002792: DUP6 00002793: DUP3 00002794: ADD 00002795: MLOAD 00002796: PUSH1 0x01 00002798: PUSH1 0x01 0000279a: PUSH1 0xa0 0000279c: SHL 0000279d: SUB 0000279e: AND 0000279f: ISZERO 000027a0: PUSH2 0x2ce2 000027a3: JUMPI 000027a4: DUP6 000027a5: DUP5 000027a6: ADD 000027a7: MLOAD 000027a8: PUSH1 0x01 000027aa: PUSH1 0x01 000027ac: PUSH1 0xa0 000027ae: SHL 000027af: SUB 000027b0: AND 000027b1: ISZERO 000027b2: PUSH2 0x054a 000027b5: JUMPI 000027b6: PUSH1 0x60 000027b8: DUP7 000027b9: ADD 000027ba: MLOAD 000027bb: PUSH32 0x0000000000000000000000000000000000000000000000000de0b6b3a7640000 000027dc: GT 000027dd: PUSH2 0x2cd0 000027e0: JUMPI 000027e1: PUSH1 0x04 000027e3: PUSH1 0x80 000027e5: DUP8 000027e6: ADD 000027e7: MLOAD 000027e8: GT 000027e9: PUSH2 0x2cbe 000027ec: JUMPI 000027ed: PUSH3 0x093a80 000027f1: PUSH1 0xa0 000027f3: DUP8 000027f4: ADD 000027f5: MLOAD 000027f6: LT 000027f7: PUSH2 0x2cac 000027fa: JUMPI 000027fb: PUSH3 0x127500 000027ff: PUSH1 0xc0 00002801: DUP8 00002802: ADD 00002803: MLOAD 00002804: GT 00002805: PUSH2 0x2c9a 00002808: JUMPI 00002809: PUSH2 0x05dc 0000280c: PUSH1 0xe0 0000280e: DUP8 0000280f: ADD 00002810: MLOAD 00002811: GT 00002812: PUSH2 0x2c88 00002815: JUMPI 00002816: PUSH1 0x78 00002818: DUP2 00002819: DUP8 0000281a: ADD 0000281b: MLOAD 0000281c: GT 0000281d: PUSH2 0x2c76 00002820: JUMPI 00002821: DUP6 00002822: DUP3 00002823: ADD 00002824: MLOAD 00002825: PUSH2 0x2841 00002828: SWAP1 00002829: PUSH1 0x01 0000282b: PUSH1 0x01 0000282d: PUSH1 0xa0 0000282f: SHL 00002830: SUB 00002831: AND 00002832: PUSH2 0x2839 00002835: PUSH2 0x486e 00002838: JUMP 00002839: JUMPDEST 0000283a: PUSH2 0x048f 0000283d: PUSH2 0x486e 00002840: JUMP 00002841: JUMPDEST 00002842: DUP6 00002843: MLOAD 00002844: PUSH1 0x01 00002846: PUSH1 0x01 00002848: PUSH1 0xa0 0000284a: SHL 0000284b: SUB 0000284c: AND 0000284d: PUSH2 0x2854 00002850: PUSH2 0x486e 00002853: JUMP 00002854: JUMPDEST 00002855: PUSH2 0x285c 00002858: PUSH2 0x486e 0000285b: JUMP 0000285c: JUMPDEST 0000285d: PUSH2 0x2865 00002860: DUP2 00002861: PUSH2 0x49e6 00002864: JUMP 00002865: JUMPDEST 00002866: SWAP1 00002867: ISZERO 00002868: PUSH2 0x2c6d 0000286b: JUMPI 0000286c: SWAP1 0000286d: JUMPDEST 0000286e: PUSH0 0000286f: DUP1 00002870: MLOAD 00002871: PUSH1 0x20 00002873: PUSH2 0x55da 00002876: DUP4 00002877: CODECOPY 00002878: DUP2 00002879: MLOAD 0000287a: SWAP2 0000287b: MSTORE 0000287c: DUP1 0000287d: SLOAD 0000287e: PUSH1 0x01 00002880: PUSH1 0x01 00002882: PUSH1 0xa8 00002884: SHL 00002885: SUB 00002886: NOT 00002887: AND 00002888: PUSH1 0xa0 0000288a: SWAP4 0000288b: SWAP1 0000288c: SWAP4 0000288d: SHL 0000288e: PUSH1 0xff 00002890: PUSH1 0xa0 00002892: SHL 00002893: AND 00002894: SWAP3 00002895: SWAP1 00002896: SWAP3 00002897: OR 00002898: OR 00002899: SWAP1 0000289a: SSTORE 0000289b: TIMESTAMP 0000289c: PUSH1 0x13 0000289e: DUP2 0000289f: SWAP1 000028a0: SSTORE 000028a1: PUSH1 0x14 000028a3: SSTORE 000028a4: PUSH32 0x00000000000000000000000000000000000000000000000000000000000f4240 000028c5: PUSH1 0x10 000028c7: SSTORE 000028c8: DUP6 000028c9: MLOAD 000028ca: PUSH1 0x03 000028cc: DUP1 000028cd: SLOAD 000028ce: PUSH1 0x01 000028d0: PUSH1 0x01 000028d2: PUSH1 0xa0 000028d4: SHL 000028d5: SUB 000028d6: NOT 000028d7: AND 000028d8: PUSH1 0x01 000028da: PUSH1 0x01 000028dc: PUSH1 0xa0 000028de: SHL 000028df: SUB 000028e0: SWAP3 000028e1: SWAP1 000028e2: SWAP3 000028e3: AND 000028e4: SWAP2 000028e5: SWAP1 000028e6: SWAP2 000028e7: OR 000028e8: SWAP1 000028e9: SSTORE 000028ea: PUSH1 0x20 000028ec: DUP7 000028ed: ADD 000028ee: MLOAD 000028ef: DUP1 000028f0: MLOAD 000028f1: SWAP1 000028f2: PUSH1 0x01 000028f4: PUSH1 0x01 000028f6: PUSH1 0x40 000028f8: SHL 000028f9: SUB 000028fa: DUP3 000028fb: GT 000028fc: PUSH2 0x0ba1 000028ff: JUMPI 00002900: DUP2 00002901: SWAP1 00002902: PUSH2 0x290c 00002905: PUSH1 0x04 00002907: SLOAD 00002908: PUSH2 0x3d43 0000290b: JUMP 0000290c: JUMPDEST 0000290d: PUSH1 0x1f 0000290f: DUP2 00002910: GT 00002911: PUSH2 0x2c15 00002914: JUMPI 00002915: JUMPDEST 00002916: POP 00002917: PUSH1 0x20 00002919: SWAP1 0000291a: PUSH1 0x1f 0000291c: DUP4 0000291d: GT 0000291e: PUSH1 0x01 00002920: EQ 00002921: PUSH2 0x2ba0 00002924: JUMPI 00002925: PUSH0 00002926: SWAP3 00002927: PUSH2 0x2b95 0000292a: JUMPI 0000292b: JUMPDEST 0000292c: POP 0000292d: POP 0000292e: DUP2 0000292f: PUSH1 0x01 00002931: SHL 00002932: SWAP2 00002933: PUSH0 00002934: NOT 00002935: SWAP1 00002936: PUSH1 0x03 00002938: SHL 00002939: SHR 0000293a: NOT 0000293b: AND 0000293c: OR 0000293d: PUSH1 0x04 0000293f: SSTORE 00002940: JUMPDEST 00002941: PUSH1 0x40 00002943: DUP7 00002944: ADD 00002945: MLOAD 00002946: DUP1 00002947: MLOAD 00002948: SWAP1 00002949: PUSH1 0x01 0000294b: PUSH1 0x01 0000294d: PUSH1 0x40 0000294f: SHL 00002950: SUB 00002951: DUP3 00002952: GT 00002953: PUSH2 0x0ba1 00002956: JUMPI 00002957: DUP2 00002958: SWAP1 00002959: PUSH2 0x2963 0000295c: PUSH1 0x05 0000295e: SLOAD 0000295f: PUSH2 0x3d43 00002962: JUMP 00002963: JUMPDEST 00002964: PUSH1 0x1f 00002966: DUP2 00002967: GT 00002968: PUSH2 0x2b47 0000296b: JUMPI 0000296c: JUMPDEST 0000296d: POP 0000296e: PUSH1 0x20 00002970: SWAP1 00002971: PUSH1 0x1f 00002973: DUP4 00002974: GT 00002975: PUSH1 0x01 00002977: EQ 00002978: PUSH2 0x2abf 0000297b: JUMPI 0000297c: PUSH0 0000297d: SWAP3 0000297e: PUSH2 0x2ab4 00002981: JUMPI 00002982: JUMPDEST 00002983: POP 00002984: POP 00002985: DUP2 00002986: PUSH1 0x01 00002988: SHL 00002989: SWAP2 0000298a: PUSH0 0000298b: NOT 0000298c: SWAP1 0000298d: PUSH1 0x03 0000298f: SHL 00002990: SHR 00002991: NOT 00002992: AND 00002993: OR 00002994: PUSH1 0x05 00002996: SSTORE 00002997: JUMPDEST 00002998: PUSH1 0x60 0000299a: DUP7 0000299b: ADD 0000299c: MLOAD 0000299d: PUSH1 0x06 0000299f: SSTORE 000029a0: PUSH1 0x80 000029a2: DUP7 000029a3: ADD 000029a4: MLOAD 000029a5: PUSH1 0x07 000029a7: SSTORE 000029a8: PUSH1 0xa0 000029aa: DUP7 000029ab: ADD 000029ac: MLOAD 000029ad: PUSH1 0x08 000029af: SSTORE 000029b0: PUSH1 0xc0 000029b2: DUP7 000029b3: ADD 000029b4: MLOAD 000029b5: PUSH1 0x09 000029b7: SSTORE 000029b8: PUSH1 0xe0 000029ba: DUP7 000029bb: ADD 000029bc: MLOAD 000029bd: PUSH1 0x0a 000029bf: SSTORE 000029c0: DUP6 000029c1: ADD 000029c2: MLOAD 000029c3: PUSH1 0x0b 000029c5: SSTORE 000029c6: DUP5 000029c7: ADD 000029c8: MLOAD 000029c9: PUSH1 0x0c 000029cb: DUP1 000029cc: SLOAD 000029cd: PUSH1 0x01 000029cf: PUSH1 0x01 000029d1: PUSH1 0xa0 000029d3: SHL 000029d4: SUB 000029d5: NOT 000029d6: SWAP1 000029d7: DUP2 000029d8: AND 000029d9: PUSH1 0x01 000029db: PUSH1 0x01 000029dd: PUSH1 0xa0 000029df: SHL 000029e0: SUB 000029e1: SWAP4 000029e2: DUP5 000029e3: AND 000029e4: OR 000029e5: SWAP1 000029e6: SWAP2 000029e7: SSTORE 000029e8: SWAP2 000029e9: DUP6 000029ea: ADD 000029eb: MLOAD 000029ec: PUSH1 0x0d 000029ee: DUP1 000029ef: SLOAD 000029f0: DUP5 000029f1: AND 000029f2: SWAP2 000029f3: DUP4 000029f4: AND 000029f5: SWAP2 000029f6: SWAP1 000029f7: SWAP2 000029f8: OR 000029f9: SWAP1 000029fa: SSTORE 000029fb: SWAP2 000029fc: DUP5 000029fd: ADD 000029fe: MLOAD 000029ff: PUSH1 0x0e 00002a01: DUP1 00002a02: SLOAD 00002a03: DUP4 00002a04: AND 00002a05: SWAP2 00002a06: DUP5 00002a07: AND 00002a08: SWAP2 00002a09: SWAP1 00002a0a: SWAP2 00002a0b: OR 00002a0c: SWAP1 00002a0d: SSTORE 00002a0e: SWAP2 00002a0f: SWAP1 00002a10: SWAP3 00002a11: ADD 00002a12: MLOAD 00002a13: PUSH1 0x0f 00002a15: DUP1 00002a16: SLOAD 00002a17: SWAP1 00002a18: SWAP3 00002a19: AND 00002a1a: SWAP3 00002a1b: AND 00002a1c: SWAP2 00002a1d: SWAP1 00002a1e: SWAP2 00002a1f: OR 00002a20: SWAP1 00002a21: SSTORE 00002a22: PUSH0 00002a23: JUMPDEST 00002a24: DUP4 00002a25: MLOAD 00002a26: DUP2 00002a27: LT 00002a28: ISZERO 00002a29: PUSH2 0x2a6b 00002a2c: JUMPI 00002a2d: PUSH1 0x01 00002a2f: PUSH1 0x01 00002a31: PUSH1 0xa0 00002a33: SHL 00002a34: SUB 00002a35: PUSH2 0x2a3e 00002a38: DUP3 00002a39: DUP7 00002a3a: PUSH2 0x4102 00002a3d: JUMP 00002a3e: JUMPDEST 00002a3f: MLOAD 00002a40: AND 00002a41: ISZERO 00002a42: PUSH2 0x074d 00002a45: JUMPI 00002a46: PUSH1 0x01 00002a48: SWAP1 00002a49: PUSH2 0x2a64 00002a4c: PUSH1 0x01 00002a4e: PUSH1 0x01 00002a50: PUSH1 0xa0 00002a52: SHL 00002a53: SUB 00002a54: PUSH2 0x2a5d 00002a57: DUP4 00002a58: DUP9 00002a59: PUSH2 0x4102 00002a5c: JUMP 00002a5d: JUMPDEST 00002a5e: MLOAD 00002a5f: AND 00002a60: PUSH2 0x48af 00002a63: JUMP 00002a64: JUMPDEST 00002a65: POP 00002a66: ADD 00002a67: PUSH2 0x2a23 00002a6a: JUMP 00002a6b: JUMPDEST 00002a6c: POP 00002a6d: PUSH1 0xff 00002a6f: DUP3 00002a70: PUSH1 0x40 00002a72: SHR 00002a73: AND 00002a74: ISZERO 00002a75: PUSH2 0x2a7a 00002a78: JUMPI 00002a79: STOP 00002a7a: JUMPDEST 00002a7b: DUP1 00002a7c: SLOAD 00002a7d: PUSH1 0xff 00002a7f: PUSH1 0x40 00002a81: SHL 00002a82: NOT 00002a83: AND 00002a84: SWAP1 00002a85: SSTORE 00002a86: PUSH1 0x40 00002a88: MLOAD 00002a89: PUSH1 0x01 00002a8b: DUP2 00002a8c: MSTORE 00002a8d: PUSH32 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2 00002aae: SWAP1 00002aaf: PUSH1 0x20 00002ab1: SWAP1 00002ab2: LOG1 00002ab3: STOP 00002ab4: JUMPDEST 00002ab5: ADD 00002ab6: MLOAD 00002ab7: SWAP1 00002ab8: POP 00002ab9: DUP12 00002aba: DUP1 00002abb: PUSH2 0x2982 00002abe: JUMP 00002abf: JUMPDEST 00002ac0: PUSH1 0x05 00002ac2: PUSH0 00002ac3: SWAP1 00002ac4: DUP2 00002ac5: MSTORE 00002ac6: SWAP4 00002ac7: POP 00002ac8: PUSH32 0x036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0 00002ae9: SWAP2 00002aea: SWAP1 00002aeb: JUMPDEST 00002aec: PUSH1 0x1f 00002aee: NOT 00002aef: DUP5 00002af0: AND 00002af1: DUP6 00002af2: LT 00002af3: PUSH2 0x2b2c 00002af6: JUMPI 00002af7: PUSH1 0x01 00002af9: SWAP5 00002afa: POP 00002afb: DUP4 00002afc: PUSH1 0x1f 00002afe: NOT 00002aff: DUP2 00002b00: AND 00002b01: LT 00002b02: PUSH2 0x2b14 00002b05: JUMPI 00002b06: JUMPDEST 00002b07: POP 00002b08: POP 00002b09: POP 00002b0a: DUP2 00002b0b: SHL 00002b0c: ADD 00002b0d: PUSH1 0x05 00002b0f: SSTORE 00002b10: PUSH2 0x2997 00002b13: JUMP 00002b14: JUMPDEST 00002b15: ADD 00002b16: MLOAD 00002b17: PUSH0 00002b18: NOT 00002b19: PUSH1 0xf8 00002b1b: DUP5 00002b1c: PUSH1 0x03 00002b1e: SHL 00002b1f: AND 00002b20: SHR 00002b21: NOT 00002b22: AND 00002b23: SWAP1 00002b24: SSTORE 00002b25: DUP12 00002b26: DUP1 00002b27: DUP1 00002b28: PUSH2 0x2b06 00002b2b: JUMP 00002b2c: JUMPDEST 00002b2d: DUP2 00002b2e: DUP2 00002b2f: ADD 00002b30: MLOAD 00002b31: DUP4 00002b32: SSTORE 00002b33: PUSH1 0x20 00002b35: SWAP5 00002b36: DUP6 00002b37: ADD 00002b38: SWAP5 00002b39: PUSH1 0x01 00002b3b: SWAP1 00002b3c: SWAP4 00002b3d: ADD 00002b3e: SWAP3 00002b3f: SWAP1 00002b40: SWAP2 00002b41: ADD 00002b42: SWAP1 00002b43: PUSH2 0x2aeb 00002b46: JUMP 00002b47: JUMPDEST 00002b48: SWAP1 00002b49: SWAP2 00002b4a: POP 00002b4b: PUSH1 0x05 00002b4d: PUSH0 00002b4e: MSTORE 00002b4f: PUSH1 0x20 00002b51: PUSH0 00002b52: KECCAK256 00002b53: PUSH1 0x1f 00002b55: DUP5 00002b56: ADD 00002b57: PUSH1 0x05 00002b59: SHR 00002b5a: DUP2 00002b5b: ADD 00002b5c: PUSH1 0x20 00002b5e: DUP6 00002b5f: LT 00002b60: PUSH2 0x2b8e 00002b63: JUMPI 00002b64: JUMPDEST 00002b65: SWAP1 00002b66: DUP5 00002b67: SWAP4 00002b68: SWAP3 00002b69: SWAP2 00002b6a: JUMPDEST 00002b6b: PUSH1 0x1f 00002b6d: DUP4 00002b6e: ADD 00002b6f: PUSH1 0x05 00002b71: SHR 00002b72: DUP3 00002b73: ADD 00002b74: DUP2 00002b75: LT 00002b76: PUSH2 0x2b80 00002b79: JUMPI 00002b7a: POP 00002b7b: POP 00002b7c: PUSH2 0x296c 00002b7f: JUMP 00002b80: JUMPDEST 00002b81: PUSH0 00002b82: DUP2 00002b83: SSTORE 00002b84: DUP6 00002b85: SWAP5 00002b86: POP 00002b87: PUSH1 0x01 00002b89: ADD 00002b8a: PUSH2 0x2b6a 00002b8d: JUMP 00002b8e: JUMPDEST 00002b8f: POP 00002b90: DUP1 00002b91: PUSH2 0x2b64 00002b94: JUMP 00002b95: JUMPDEST 00002b96: ADD 00002b97: MLOAD 00002b98: SWAP1 00002b99: POP 00002b9a: DUP12 00002b9b: DUP1 00002b9c: PUSH2 0x292b 00002b9f: JUMP 00002ba0: JUMPDEST 00002ba1: PUSH1 0x04 00002ba3: PUSH0 00002ba4: SWAP1 00002ba5: DUP2 00002ba6: MSTORE 00002ba7: SWAP4 00002ba8: POP 00002ba9: PUSH0 00002baa: DUP1 00002bab: MLOAD 00002bac: PUSH1 0x20 00002bae: PUSH2 0x561a 00002bb1: DUP4 00002bb2: CODECOPY 00002bb3: DUP2 00002bb4: MLOAD 00002bb5: SWAP2 00002bb6: MSTORE 00002bb7: SWAP2 00002bb8: SWAP1 00002bb9: JUMPDEST 00002bba: PUSH1 0x1f 00002bbc: NOT 00002bbd: DUP5 00002bbe: AND 00002bbf: DUP6 00002bc0: LT 00002bc1: PUSH2 0x2bfa 00002bc4: JUMPI 00002bc5: PUSH1 0x01 00002bc7: SWAP5 00002bc8: POP 00002bc9: DUP4 00002bca: PUSH1 0x1f 00002bcc: NOT 00002bcd: DUP2 00002bce: AND 00002bcf: LT 00002bd0: PUSH2 0x2be2 00002bd3: JUMPI 00002bd4: JUMPDEST 00002bd5: POP 00002bd6: POP 00002bd7: POP 00002bd8: DUP2 00002bd9: SHL 00002bda: ADD 00002bdb: PUSH1 0x04 00002bdd: SSTORE 00002bde: PUSH2 0x2940 00002be1: JUMP 00002be2: JUMPDEST 00002be3: ADD 00002be4: MLOAD 00002be5: PUSH0 00002be6: NOT 00002be7: PUSH1 0xf8 00002be9: DUP5 00002bea: PUSH1 0x03 00002bec: SHL 00002bed: AND 00002bee: SHR 00002bef: NOT 00002bf0: AND 00002bf1: SWAP1 00002bf2: SSTORE 00002bf3: DUP12 00002bf4: DUP1 00002bf5: DUP1 00002bf6: PUSH2 0x2bd4 00002bf9: JUMP 00002bfa: JUMPDEST 00002bfb: DUP2 00002bfc: DUP2 00002bfd: ADD 00002bfe: MLOAD 00002bff: DUP4 00002c00: SSTORE 00002c01: PUSH1 0x20 00002c03: SWAP5 00002c04: DUP6 00002c05: ADD 00002c06: SWAP5 00002c07: PUSH1 0x01 00002c09: SWAP1 00002c0a: SWAP4 00002c0b: ADD 00002c0c: SWAP3 00002c0d: SWAP1 00002c0e: SWAP2 00002c0f: ADD 00002c10: SWAP1 00002c11: PUSH2 0x2bb9 00002c14: JUMP 00002c15: JUMPDEST 00002c16: PUSH1 0x04 00002c18: PUSH0 00002c19: MSTORE 00002c1a: SWAP1 00002c1b: SWAP2 00002c1c: POP 00002c1d: PUSH0 00002c1e: DUP1 00002c1f: MLOAD 00002c20: PUSH1 0x20 00002c22: PUSH2 0x561a 00002c25: DUP4 00002c26: CODECOPY 00002c27: DUP2 00002c28: MLOAD 00002c29: SWAP2 00002c2a: MSTORE 00002c2b: PUSH1 0x1f 00002c2d: DUP5 00002c2e: ADD 00002c2f: PUSH1 0x05 00002c31: SHR 00002c32: DUP2 00002c33: ADD 00002c34: PUSH1 0x20 00002c36: DUP6 00002c37: LT 00002c38: PUSH2 0x2c66 00002c3b: JUMPI 00002c3c: JUMPDEST 00002c3d: SWAP1 00002c3e: DUP5 00002c3f: SWAP4 00002c40: SWAP3 00002c41: SWAP2 00002c42: JUMPDEST 00002c43: PUSH1 0x1f 00002c45: DUP4 00002c46: ADD 00002c47: PUSH1 0x05 00002c49: SHR 00002c4a: DUP3 00002c4b: ADD 00002c4c: DUP2 00002c4d: LT 00002c4e: PUSH2 0x2c58 00002c51: JUMPI 00002c52: POP 00002c53: POP 00002c54: PUSH2 0x2915 00002c57: JUMP 00002c58: JUMPDEST 00002c59: PUSH0 00002c5a: DUP2 00002c5b: SSTORE 00002c5c: DUP6 00002c5d: SWAP5 00002c5e: POP 00002c5f: PUSH1 0x01 00002c61: ADD 00002c62: PUSH2 0x2c42 00002c65: JUMP 00002c66: JUMPDEST 00002c67: POP 00002c68: DUP1 00002c69: PUSH2 0x2c3c 00002c6c: JUMP 00002c6d: JUMPDEST 00002c6e: POP 00002c6f: PUSH1 0x12 00002c71: SWAP1 00002c72: PUSH2 0x286d 00002c75: JUMP 00002c76: JUMPDEST 00002c77: PUSH1 0x40 00002c79: MLOAD 00002c7a: PUSH4 0xf4d1caab 00002c7f: PUSH1 0xe0 00002c81: SHL 00002c82: DUP2 00002c83: MSTORE 00002c84: PUSH1 0x04 00002c86: SWAP1 00002c87: REVERT 00002c88: JUMPDEST 00002c89: PUSH1 0x40 00002c8b: MLOAD 00002c8c: PUSH4 0x0674143f 00002c91: PUSH1 0xe0 00002c93: SHL 00002c94: DUP2 00002c95: MSTORE 00002c96: PUSH1 0x04 00002c98: SWAP1 00002c99: REVERT 00002c9a: JUMPDEST 00002c9b: PUSH1 0x40 00002c9d: MLOAD 00002c9e: PUSH4 0xe88d3ecb 00002ca3: PUSH1 0xe0 00002ca5: SHL 00002ca6: DUP2 00002ca7: MSTORE 00002ca8: PUSH1 0x04 00002caa: SWAP1 00002cab: REVERT 00002cac: JUMPDEST 00002cad: PUSH1 0x40 00002caf: MLOAD 00002cb0: PUSH4 0x2011727b 00002cb5: PUSH1 0xe1 00002cb7: SHL 00002cb8: DUP2 00002cb9: MSTORE 00002cba: PUSH1 0x04 00002cbc: SWAP1 00002cbd: REVERT 00002cbe: JUMPDEST 00002cbf: PUSH1 0x40 00002cc1: MLOAD 00002cc2: PUSH4 0x09aa66eb 00002cc7: PUSH1 0xe0 00002cc9: SHL 00002cca: DUP2 00002ccb: MSTORE 00002ccc: PUSH1 0x04 00002cce: SWAP1 00002ccf: REVERT 00002cd0: JUMPDEST 00002cd1: PUSH1 0x40 00002cd3: MLOAD 00002cd4: PUSH4 0x3240d181 00002cd9: PUSH1 0xe2 00002cdb: SHL 00002cdc: DUP2 00002cdd: MSTORE 00002cde: PUSH1 0x04 00002ce0: SWAP1 00002ce1: REVERT 00002ce2: JUMPDEST 00002ce3: PUSH1 0x40 00002ce5: MLOAD 00002ce6: PUSH4 0x0b5eba9f 00002ceb: PUSH1 0xe4 00002ced: SHL 00002cee: DUP2 00002cef: MSTORE 00002cf0: PUSH1 0x04 00002cf2: SWAP1 00002cf3: REVERT 00002cf4: JUMPDEST 00002cf5: ADD 00002cf6: MLOAD 00002cf7: SWAP1 00002cf8: POP 00002cf9: DUP12 00002cfa: DUP1 00002cfb: PUSH2 0x274e 00002cfe: JUMP 00002cff: JUMPDEST 00002d00: PUSH0 00002d01: DUP1 00002d02: MLOAD 00002d03: PUSH1 0x20 00002d05: PUSH2 0x555a 00002d08: DUP4 00002d09: CODECOPY 00002d0a: DUP2 00002d0b: MLOAD 00002d0c: SWAP2 00002d0d: MSTORE 00002d0e: PUSH0 00002d0f: SWAP1 00002d10: DUP2 00002d11: MSTORE 00002d12: SWAP4 00002d13: POP 00002d14: PUSH32 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa 00002d35: SWAP2 00002d36: SWAP1 00002d37: JUMPDEST 00002d38: PUSH1 0x1f 00002d3a: NOT 00002d3b: DUP5 00002d3c: AND 00002d3d: DUP6 00002d3e: LT 00002d3f: PUSH2 0x2d84 00002d42: JUMPI 00002d43: PUSH1 0x01 00002d45: SWAP5 00002d46: POP 00002d47: DUP4 00002d48: PUSH1 0x1f 00002d4a: NOT 00002d4b: DUP2 00002d4c: AND 00002d4d: LT 00002d4e: PUSH2 0x2d6c 00002d51: JUMPI 00002d52: JUMPDEST 00002d53: POP 00002d54: POP 00002d55: POP 00002d56: DUP2 00002d57: SHL 00002d58: ADD 00002d59: PUSH0 00002d5a: DUP1 00002d5b: MLOAD 00002d5c: PUSH1 0x20 00002d5e: PUSH2 0x555a 00002d61: DUP4 00002d62: CODECOPY 00002d63: DUP2 00002d64: MLOAD 00002d65: SWAP2 00002d66: MSTORE 00002d67: SSTORE 00002d68: PUSH2 0x276f 00002d6b: JUMP 00002d6c: JUMPDEST 00002d6d: ADD 00002d6e: MLOAD 00002d6f: PUSH0 00002d70: NOT 00002d71: PUSH1 0xf8 00002d73: DUP5 00002d74: PUSH1 0x03 00002d76: SHL 00002d77: AND 00002d78: SHR 00002d79: NOT 00002d7a: AND 00002d7b: SWAP1 00002d7c: SSTORE 00002d7d: DUP12 00002d7e: DUP1 00002d7f: DUP1 00002d80: PUSH2 0x2d52 00002d83: JUMP 00002d84: JUMPDEST 00002d85: DUP2 00002d86: DUP2 00002d87: ADD 00002d88: MLOAD 00002d89: DUP4 00002d8a: SSTORE 00002d8b: PUSH1 0x20 00002d8d: SWAP5 00002d8e: DUP6 00002d8f: ADD 00002d90: SWAP5 00002d91: PUSH1 0x01 00002d93: SWAP1 00002d94: SWAP4 00002d95: ADD 00002d96: SWAP3 00002d97: SWAP1 00002d98: SWAP2 00002d99: ADD 00002d9a: SWAP1 00002d9b: PUSH2 0x2d37 00002d9e: JUMP 00002d9f: JUMPDEST 00002da0: PUSH0 00002da1: DUP1 00002da2: MLOAD 00002da3: PUSH1 0x20 00002da5: PUSH2 0x555a 00002da8: DUP4 00002da9: CODECOPY 00002daa: DUP2 00002dab: MLOAD 00002dac: SWAP2 00002dad: MSTORE 00002dae: PUSH0 00002daf: MSTORE 00002db0: SWAP1 00002db1: SWAP2 00002db2: POP 00002db3: PUSH32 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa 00002dd4: PUSH1 0x1f 00002dd6: DUP5 00002dd7: ADD 00002dd8: PUSH1 0x05 00002dda: SHR 00002ddb: DUP2 00002ddc: ADD 00002ddd: PUSH1 0x20 00002ddf: DUP6 00002de0: LT 00002de1: PUSH2 0x2e0f 00002de4: JUMPI 00002de5: JUMPDEST 00002de6: SWAP1 00002de7: DUP5 00002de8: SWAP4 00002de9: SWAP3 00002dea: SWAP2 00002deb: JUMPDEST 00002dec: PUSH1 0x1f 00002dee: DUP4 00002def: ADD 00002df0: PUSH1 0x05 00002df2: SHR 00002df3: DUP3 00002df4: ADD 00002df5: DUP2 00002df6: LT 00002df7: PUSH2 0x2e01 00002dfa: JUMPI 00002dfb: POP 00002dfc: POP 00002dfd: PUSH2 0x2738 00002e00: JUMP 00002e01: JUMPDEST 00002e02: PUSH0 00002e03: DUP2 00002e04: SSTORE 00002e05: DUP6 00002e06: SWAP5 00002e07: POP 00002e08: PUSH1 0x01 00002e0a: ADD 00002e0b: PUSH2 0x2deb 00002e0e: JUMP 00002e0f: JUMPDEST 00002e10: POP 00002e11: DUP1 00002e12: PUSH2 0x2de5 00002e15: JUMP 00002e16: JUMPDEST 00002e17: ADD 00002e18: MLOAD 00002e19: SWAP1 00002e1a: POP 00002e1b: DUP13 00002e1c: DUP1 00002e1d: PUSH2 0x26e4 00002e20: JUMP 00002e21: JUMPDEST 00002e22: PUSH0 00002e23: DUP1 00002e24: MLOAD 00002e25: PUSH1 0x20 00002e27: PUSH2 0x551a 00002e2a: DUP4 00002e2b: CODECOPY 00002e2c: DUP2 00002e2d: MLOAD 00002e2e: SWAP2 00002e2f: MSTORE 00002e30: PUSH0 00002e31: SWAP1 00002e32: DUP2 00002e33: MSTORE 00002e34: SWAP4 00002e35: POP 00002e36: PUSH32 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0 00002e57: SWAP2 00002e58: SWAP1 00002e59: JUMPDEST 00002e5a: PUSH1 0x1f 00002e5c: NOT 00002e5d: DUP5 00002e5e: AND 00002e5f: DUP6 00002e60: LT 00002e61: PUSH2 0x2ea6 00002e64: JUMPI 00002e65: PUSH1 0x01 00002e67: SWAP5 00002e68: POP 00002e69: DUP4 00002e6a: PUSH1 0x1f 00002e6c: NOT 00002e6d: DUP2 00002e6e: AND 00002e6f: LT 00002e70: PUSH2 0x2e8e 00002e73: JUMPI 00002e74: JUMPDEST 00002e75: POP 00002e76: POP 00002e77: POP 00002e78: DUP2 00002e79: SHL 00002e7a: ADD 00002e7b: PUSH0 00002e7c: DUP1 00002e7d: MLOAD 00002e7e: PUSH1 0x20 00002e80: PUSH2 0x551a 00002e83: DUP4 00002e84: CODECOPY 00002e85: DUP2 00002e86: MLOAD 00002e87: SWAP2 00002e88: MSTORE 00002e89: SSTORE 00002e8a: PUSH2 0x2705 00002e8d: JUMP 00002e8e: JUMPDEST 00002e8f: ADD 00002e90: MLOAD 00002e91: PUSH0 00002e92: NOT 00002e93: PUSH1 0xf8 00002e95: DUP5 00002e96: PUSH1 0x03 00002e98: SHL 00002e99: AND 00002e9a: SHR 00002e9b: NOT 00002e9c: AND 00002e9d: SWAP1 00002e9e: SSTORE 00002e9f: DUP13 00002ea0: DUP1 00002ea1: DUP1 00002ea2: PUSH2 0x2e74 00002ea5: JUMP 00002ea6: JUMPDEST 00002ea7: DUP2 00002ea8: DUP2 00002ea9: ADD 00002eaa: MLOAD 00002eab: DUP4 00002eac: SSTORE 00002ead: PUSH1 0x20 00002eaf: SWAP5 00002eb0: DUP6 00002eb1: ADD 00002eb2: SWAP5 00002eb3: PUSH1 0x01 00002eb5: SWAP1 00002eb6: SWAP4 00002eb7: ADD 00002eb8: SWAP3 00002eb9: SWAP1 00002eba: SWAP2 00002ebb: ADD 00002ebc: SWAP1 00002ebd: PUSH2 0x2e59 00002ec0: JUMP 00002ec1: JUMPDEST 00002ec2: PUSH0 00002ec3: DUP1 00002ec4: MLOAD 00002ec5: PUSH1 0x20 00002ec7: PUSH2 0x551a 00002eca: DUP4 00002ecb: CODECOPY 00002ecc: DUP2 00002ecd: MLOAD 00002ece: SWAP2 00002ecf: MSTORE 00002ed0: PUSH0 00002ed1: MSTORE 00002ed2: SWAP1 00002ed3: SWAP2 00002ed4: POP 00002ed5: PUSH32 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0 00002ef6: PUSH1 0x1f 00002ef8: DUP5 00002ef9: ADD 00002efa: PUSH1 0x05 00002efc: SHR 00002efd: DUP2 00002efe: ADD 00002eff: PUSH1 0x20 00002f01: DUP6 00002f02: LT 00002f03: PUSH2 0x2f31 00002f06: JUMPI 00002f07: JUMPDEST 00002f08: SWAP1 00002f09: DUP5 00002f0a: SWAP4 00002f0b: SWAP3 00002f0c: SWAP2 00002f0d: JUMPDEST 00002f0e: PUSH1 0x1f 00002f10: DUP4 00002f11: ADD 00002f12: PUSH1 0x05 00002f14: SHR 00002f15: DUP3 00002f16: ADD 00002f17: DUP2 00002f18: LT 00002f19: PUSH2 0x2f23 00002f1c: JUMPI 00002f1d: POP 00002f1e: POP 00002f1f: PUSH2 0x26ce 00002f22: JUMP 00002f23: JUMPDEST 00002f24: PUSH0 00002f25: DUP2 00002f26: SSTORE 00002f27: DUP6 00002f28: SWAP5 00002f29: POP 00002f2a: PUSH1 0x01 00002f2c: ADD 00002f2d: PUSH2 0x2f0d 00002f30: JUMP 00002f31: JUMPDEST 00002f32: POP 00002f33: DUP1 00002f34: PUSH2 0x2f07 00002f37: JUMP 00002f38: JUMPDEST 00002f39: PUSH1 0x20 00002f3b: DUP1 00002f3c: DUP1 00002f3d: SWAP4 00002f3e: PUSH2 0x2f46 00002f41: DUP7 00002f42: PUSH2 0x3aee 00002f45: JUMP 00002f46: JUMPDEST 00002f47: DUP2 00002f48: MSTORE 00002f49: ADD 00002f4a: SWAP4 00002f4b: ADD 00002f4c: SWAP3 00002f4d: SWAP2 00002f4e: POP 00002f4f: PUSH2 0x265a 00002f52: JUMP 00002f53: JUMPDEST 00002f54: PUSH9 0xffffffffffffffffff 00002f5e: NOT 00002f5f: DUP4 00002f60: AND 00002f61: PUSH9 0x010000000000000001 00002f6b: OR 00002f6c: DUP3 00002f6d: SSTORE 00002f6e: PUSH2 0x24ce 00002f71: JUMP 00002f72: JUMPDEST 00002f73: PUSH1 0x40 00002f75: MLOAD 00002f76: PUSH4 0xf92ee8a9 00002f7b: PUSH1 0xe0 00002f7d: SHL 00002f7e: DUP2 00002f7f: MSTORE 00002f80: PUSH1 0x04 00002f82: SWAP1 00002f83: REVERT 00002f84: JUMPDEST 00002f85: SWAP1 00002f86: POP 00002f87: ISZERO 00002f88: DUP6 00002f89: PUSH2 0x24ac 00002f8c: JUMP 00002f8d: JUMPDEST 00002f8e: ADDRESS 00002f8f: EXTCODESIZE 00002f90: ISZERO 00002f91: SWAP2 00002f92: POP 00002f93: PUSH2 0x24a4 00002f96: JUMP 00002f97: JUMPDEST 00002f98: PUSH1 0x40 00002f9a: DUP6 00002f9b: SWAP1 00002f9c: SHR 00002f9d: PUSH1 0xff 00002f9f: AND 00002fa0: ISZERO 00002fa1: SWAP2 00002fa2: POP 00002fa3: PUSH2 0x249a 00002fa6: JUMP 00002fa7: JUMPDEST 00002fa8: CALLVALUE 00002fa9: PUSH2 0x0bfb 00002fac: JUMPI 00002fad: PUSH1 0x20 00002faf: CALLDATASIZE 00002fb0: PUSH1 0x03 00002fb2: NOT 00002fb3: ADD 00002fb4: SLT 00002fb5: PUSH2 0x0bfb 00002fb8: JUMPI 00002fb9: PUSH2 0x2fc0 00002fbc: PUSH2 0x3aac 00002fbf: JUMP 00002fc0: JUMPDEST 00002fc1: POP 00002fc2: PUSH1 0x20 00002fc4: PUSH2 0x04c4 00002fc7: PUSH1 0x06 00002fc9: SLOAD 00002fca: PUSH2 0x1e44 00002fcd: PUSH2 0x3d0e 00002fd0: JUMP 00002fd1: JUMPDEST 00002fd2: CALLVALUE 00002fd3: PUSH2 0x0bfb 00002fd6: JUMPI 00002fd7: PUSH0 00002fd8: CALLDATASIZE 00002fd9: PUSH1 0x03 00002fdb: NOT 00002fdc: ADD 00002fdd: SLT 00002fde: PUSH2 0x0bfb 00002fe1: JUMPI 00002fe2: PUSH2 0x2fe9 00002fe5: PUSH2 0x436a 00002fe8: JUMP 00002fe9: JUMPDEST 00002fea: PUSH0 00002feb: DUP1 00002fec: MLOAD 00002fed: PUSH1 0x20 00002fef: PUSH2 0x55fa 00002ff2: DUP4 00002ff3: CODECOPY 00002ff4: DUP2 00002ff5: MLOAD 00002ff6: SWAP2 00002ff7: MSTORE 00002ff8: DUP1 00002ff9: SLOAD 00002ffa: PUSH1 0xff 00002ffc: DUP2 00002ffd: AND 00002ffe: ISZERO 00002fff: PUSH2 0x3034 00003002: JUMPI 00003003: PUSH1 0xff 00003005: NOT 00003006: AND 00003007: SWAP1 00003008: SSTORE 00003009: PUSH32 0x5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa 0000302a: PUSH1 0x20 0000302c: PUSH1 0x40 0000302e: MLOAD 0000302f: CALLER 00003030: DUP2 00003031: MSTORE 00003032: LOG1 00003033: STOP 00003034: JUMPDEST 00003035: PUSH1 0x40 00003037: MLOAD 00003038: PUSH4 0x8dfc202b 0000303d: PUSH1 0xe0 0000303f: SHL 00003040: DUP2 00003041: MSTORE 00003042: PUSH1 0x04 00003044: SWAP1 00003045: REVERT 00003046: JUMPDEST 00003047: CALLVALUE 00003048: PUSH2 0x0bfb 0000304b: JUMPI 0000304c: PUSH0 0000304d: CALLDATASIZE 0000304e: PUSH1 0x03 00003050: NOT 00003051: ADD 00003052: SLT 00003053: PUSH2 0x0bfb 00003056: JUMPI 00003057: PUSH1 0x20 00003059: PUSH1 0x12 0000305b: SLOAD 0000305c: PUSH1 0x40 0000305e: MLOAD 0000305f: SWAP1 00003060: DUP2 00003061: MSTORE 00003062: RETURN 00003063: JUMPDEST 00003064: CALLVALUE 00003065: PUSH2 0x0bfb 00003068: JUMPI 00003069: PUSH1 0x20 0000306b: CALLDATASIZE 0000306c: PUSH1 0x03 0000306e: NOT 0000306f: ADD 00003070: SLT 00003071: PUSH2 0x0bfb 00003074: JUMPI 00003075: PUSH1 0x04 00003077: CALLDATALOAD 00003078: PUSH2 0x307f 0000307b: PUSH2 0x436a 0000307e: JUMP 0000307f: JUMPDEST 00003080: PUSH3 0x093a80 00003084: DUP2 00003085: LT 00003086: PUSH2 0x2cac 00003089: JUMPI 0000308a: PUSH32 0xcdbf56e2a82365307f9691ad933e9762726485d202543fe224f47447d79feaf0 000030ab: PUSH1 0x40 000030ad: PUSH1 0x08 000030af: SLOAD 000030b0: DUP2 000030b1: MLOAD 000030b2: SWAP1 000030b3: DUP2 000030b4: MSTORE 000030b5: DUP4 000030b6: PUSH1 0x20 000030b8: DUP3 000030b9: ADD 000030ba: MSTORE 000030bb: LOG1 000030bc: PUSH1 0x08 000030be: SSTORE 000030bf: STOP 000030c0: JUMPDEST 000030c1: CALLVALUE 000030c2: PUSH2 0x0bfb 000030c5: JUMPI 000030c6: PUSH0 000030c7: CALLDATASIZE 000030c8: PUSH1 0x03 000030ca: NOT 000030cb: ADD 000030cc: SLT 000030cd: PUSH2 0x0bfb 000030d0: JUMPI 000030d1: PUSH1 0x0d 000030d3: SLOAD 000030d4: PUSH1 0x01 000030d6: PUSH1 0x01 000030d8: PUSH1 0xa0 000030da: SHL 000030db: SUB 000030dc: AND 000030dd: CALLER 000030de: SUB 000030df: PUSH2 0x30f8 000030e2: JUMPI 000030e3: PUSH1 0x40 000030e5: PUSH2 0x30ec 000030e8: PUSH2 0x3f53 000030eb: JUMP 000030ec: JUMPDEST 000030ed: DUP3 000030ee: MLOAD 000030ef: SWAP2 000030f0: DUP3 000030f1: MSTORE 000030f2: PUSH1 0x20 000030f4: DUP3 000030f5: ADD 000030f6: MSTORE 000030f7: RETURN 000030f8: JUMPDEST 000030f9: PUSH1 0x40 000030fb: MLOAD 000030fc: PUSH4 0xbd72e291 00003101: PUSH1 0xe0 00003103: SHL 00003104: DUP2 00003105: MSTORE 00003106: PUSH1 0x04 00003108: SWAP1 00003109: REVERT 0000310a: JUMPDEST 0000310b: CALLVALUE 0000310c: PUSH2 0x0bfb 0000310f: JUMPI 00003110: PUSH0 00003111: CALLDATASIZE 00003112: PUSH1 0x03 00003114: NOT 00003115: ADD 00003116: SLT 00003117: PUSH2 0x0bfb 0000311a: JUMPI 0000311b: PUSH2 0x3126 0000311e: PUSH1 0x14 00003120: SLOAD 00003121: TIMESTAMP 00003122: PUSH2 0x3cd0 00003125: JUMP 00003126: JUMPDEST 00003127: PUSH1 0x09 00003129: SLOAD 0000312a: DUP2 0000312b: DUP2 0000312c: GT 0000312d: ISZERO 0000312e: PUSH2 0x313d 00003131: JUMPI 00003132: PUSH1 0x20 00003134: SWAP2 00003135: PUSH2 0x04c4 00003138: SWAP2 00003139: PUSH2 0x3cd0 0000313c: JUMP 0000313d: JUMPDEST 0000313e: POP 0000313f: POP 00003140: PUSH1 0x20 00003142: PUSH0 00003143: PUSH2 0x04c4 00003146: JUMP 00003147: JUMPDEST 00003148: CALLVALUE 00003149: PUSH2 0x0bfb 0000314c: JUMPI 0000314d: PUSH0 0000314e: CALLDATASIZE 0000314f: PUSH1 0x03 00003151: NOT 00003152: ADD 00003153: SLT 00003154: PUSH2 0x0bfb 00003157: JUMPI 00003158: PUSH0 00003159: DUP1 0000315a: MLOAD 0000315b: PUSH1 0x20 0000315d: PUSH2 0x55da 00003160: DUP4 00003161: CODECOPY 00003162: DUP2 00003163: MLOAD 00003164: SWAP2 00003165: MSTORE 00003166: SLOAD 00003167: PUSH1 0x40 00003169: MLOAD 0000316a: PUSH1 0x01 0000316c: PUSH1 0x01 0000316e: PUSH1 0xa0 00003170: SHL 00003171: SUB 00003172: SWAP1 00003173: SWAP2 00003174: AND 00003175: DUP2 00003176: MSTORE 00003177: PUSH1 0x20 00003179: SWAP1 0000317a: RETURN 0000317b: JUMPDEST 0000317c: CALLVALUE 0000317d: PUSH2 0x0bfb 00003180: JUMPI 00003181: PUSH1 0x20 00003183: CALLDATASIZE 00003184: PUSH1 0x03 00003186: NOT 00003187: ADD 00003188: SLT 00003189: PUSH2 0x0bfb 0000318c: JUMPI 0000318d: PUSH1 0x04 0000318f: CALLDATALOAD 00003190: PUSH2 0x3197 00003193: PUSH2 0x436a 00003196: JUMP 00003197: JUMPDEST 00003198: PUSH3 0x127500 0000319c: DUP2 0000319d: GT 0000319e: PUSH2 0x2c9a 000031a1: JUMPI 000031a2: PUSH32 0xcc5a4a7c466fc20af4119a7a26048791fdb55cbd401aff36ef2bfc639662b2e2 000031c3: PUSH1 0x40 000031c5: PUSH1 0x09 000031c7: SLOAD 000031c8: DUP2 000031c9: MLOAD 000031ca: SWAP1 000031cb: DUP2 000031cc: MSTORE 000031cd: DUP4 000031ce: PUSH1 0x20 000031d0: DUP3 000031d1: ADD 000031d2: MSTORE 000031d3: LOG1 000031d4: PUSH1 0x09 000031d6: SSTORE 000031d7: STOP 000031d8: JUMPDEST 000031d9: PUSH1 0x80 000031db: CALLDATASIZE 000031dc: PUSH1 0x03 000031de: NOT 000031df: ADD 000031e0: SLT 000031e1: PUSH2 0x0bfb 000031e4: JUMPI 000031e5: PUSH2 0x31ec 000031e8: PUSH2 0x3aac 000031eb: JUMP 000031ec: JUMPDEST 000031ed: PUSH1 0x01 000031ef: PUSH1 0x01 000031f1: PUSH1 0xa0 000031f3: SHL 000031f4: SUB 000031f5: SWAP1 000031f6: PUSH1 0x44 000031f8: CALLDATALOAD 000031f9: DUP3 000031fa: DUP2 000031fb: AND 000031fc: SWAP2 000031fd: SWAP1 000031fe: PUSH1 0x24 00003200: CALLDATALOAD 00003201: DUP4 00003202: DUP3 00003203: SUB 00003204: PUSH2 0x0bfb 00003207: JUMPI 00003208: PUSH2 0x320f 0000320b: PUSH2 0x3ad8 0000320e: JUMP 0000320f: JUMPDEST 00003210: SWAP5 00003211: PUSH2 0x3218 00003214: PUSH2 0x4410 00003217: JUMP 00003218: JUMPDEST 00003219: PUSH2 0x3220 0000321c: PUSH2 0x443c 0000321f: JUMP 00003220: JUMPDEST 00003221: DUP2 00003222: SWAP4 00003223: PUSH1 0xff 00003225: PUSH1 0x1e 00003227: SLOAD 00003228: AND 00003229: PUSH2 0x15a4 0000322c: JUMPI 0000322d: DUP2 0000322e: AND 0000322f: SWAP2 00003230: PUSH20 0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 00003245: DUP4 00003246: EQ 00003247: ISZERO 00003248: DUP1 00003249: PUSH2 0x3488 0000324c: JUMPI 0000324d: JUMPDEST 0000324e: PUSH2 0x1347 00003251: JUMPI 00003252: PUSH0 00003253: NOT 00003254: EQ 00003255: PUSH2 0x3411 00003258: JUMPI 00003259: JUMPDEST 0000325a: PUSH1 0x40 0000325c: MLOAD 0000325d: SWAP6 0000325e: PUSH2 0x3294 00003261: PUSH1 0x20 00003263: SWAP8 00003264: PUSH4 0x23b872dd 00003269: PUSH1 0xe0 0000326b: SHL 0000326c: DUP10 0000326d: DUP3 0000326e: ADD 0000326f: MSTORE 00003270: CALLER 00003271: PUSH1 0x24 00003273: DUP3 00003274: ADD 00003275: MSTORE 00003276: ADDRESS 00003277: PUSH1 0x44 00003279: DUP3 0000327a: ADD 0000327b: MSTORE 0000327c: DUP7 0000327d: PUSH1 0x64 0000327f: DUP3 00003280: ADD 00003281: MSTORE 00003282: PUSH1 0x64 00003284: DUP2 00003285: MSTORE 00003286: PUSH2 0x328e 00003289: DUP2 0000328a: PUSH2 0x3c4b 0000328d: JUMP 0000328e: JUMPDEST 0000328f: DUP5 00003290: PUSH2 0x4814 00003293: JUMP 00003294: JUMPDEST 00003295: DUP5 00003296: PUSH20 0x238a700ed6165261cf8b2e544ba797bc11e466ba 000032ab: DUP5 000032ac: EQ 000032ad: PUSH2 0x3378 000032b0: JUMPI 000032b1: JUMPDEST 000032b2: PUSH2 0x32bf 000032b5: PUSH1 0x06 000032b7: SLOAD 000032b8: PUSH2 0x1e44 000032bb: PUSH2 0x3d0e 000032be: JUMP 000032bf: JUMPDEST 000032c0: DUP2 000032c1: GT 000032c2: PUSH2 0x1eec 000032c5: JUMPI 000032c6: PUSH2 0x32ce 000032c9: SWAP1 000032ca: PUSH2 0x43d9 000032cd: JUMP 000032ce: JUMPDEST 000032cf: PUSH1 0x1d 000032d1: SLOAD 000032d2: SWAP1 000032d3: PUSH2 0x2710 000032d6: SWAP2 000032d7: DUP3 000032d8: SUB 000032d9: DUP3 000032da: DUP2 000032db: GT 000032dc: PUSH2 0x0d7a 000032df: JUMPI 000032e0: PUSH2 0x32e8 000032e3: SWAP2 000032e4: PUSH2 0x3cdd 000032e7: JUMP 000032e8: JUMPDEST 000032e9: DIV 000032ea: SWAP6 000032eb: PUSH1 0x09 000032ed: SLOAD 000032ee: PUSH2 0x32f9 000032f1: PUSH1 0x14 000032f3: SLOAD 000032f4: TIMESTAMP 000032f5: PUSH2 0x3cd0 000032f8: JUMP 000032f9: JUMPDEST 000032fa: GT 000032fb: PUSH2 0x1323 000032fe: JUMPI 000032ff: PUSH32 0x308d36d8f61bd4393536b6557142f55554c34d4ea2a3dbf54fe782b98889dfb2 00003320: SWAP6 00003321: PUSH2 0x332c 00003324: DUP9 00003325: PUSH1 0xa0 00003327: SWAP8 00003328: PUSH2 0x45ae 0000332b: JUMP 0000332c: JUMPDEST 0000332d: CALLER 0000332e: PUSH0 0000332f: MSTORE 00003330: PUSH1 0x18 00003332: DUP10 00003333: MSTORE 00003334: PUSH1 0x40 00003336: PUSH0 00003337: KECCAK256 00003338: PUSH2 0x3342 0000333b: DUP10 0000333c: DUP3 0000333d: SLOAD 0000333e: PUSH2 0x3d7b 00003341: JUMP 00003342: JUMPDEST 00003343: SWAP1 00003344: SSTORE 00003345: PUSH1 0x40 00003347: MLOAD 00003348: SWAP5 00003349: CALLER 0000334a: DUP7 0000334b: MSTORE 0000334c: DUP10 0000334d: DUP7 0000334e: ADD 0000334f: MSTORE 00003350: PUSH1 0x40 00003352: DUP6 00003353: ADD 00003354: MSTORE 00003355: PUSH1 0x60 00003357: DUP5 00003358: ADD 00003359: MSTORE 0000335a: AND 0000335b: PUSH1 0x80 0000335d: DUP3 0000335e: ADD 0000335f: MSTORE 00003360: LOG1 00003361: PUSH0 00003362: PUSH0 00003363: DUP1 00003364: MLOAD 00003365: PUSH1 0x20 00003367: PUSH2 0x563a 0000336a: DUP4 0000336b: CODECOPY 0000336c: DUP2 0000336d: MLOAD 0000336e: SWAP2 0000336f: MSTORE 00003370: TSTORE 00003371: PUSH1 0x40 00003373: MLOAD 00003374: SWAP1 00003375: DUP2 00003376: MSTORE 00003377: RETURN 00003378: JUMPDEST 00003379: POP 0000337a: PUSH1 0x40 0000337c: MLOAD 0000337d: PUSH4 0xbb23ae25 00003382: PUSH1 0xe0 00003384: SHL 00003385: DUP2 00003386: MSTORE 00003387: DUP8 00003388: DUP2 00003389: PUSH1 0x04 0000338b: DUP2 0000338c: PUSH20 0x8d51dbc85ceef637c97d02bdaabb5e274850e68c 000033a1: GAS 000033a2: STATICCALL 000033a3: SWAP1 000033a4: DUP2 000033a5: ISZERO 000033a6: PUSH2 0x1f1f 000033a9: JUMPI 000033aa: PUSH0 000033ab: SWAP2 000033ac: PUSH2 0x33e4 000033af: JUMPI 000033b0: JUMPDEST 000033b1: POP 000033b2: PUSH0 000033b3: DUP2 000033b4: SLT 000033b5: PUSH2 0x33d2 000033b8: JUMPI 000033b9: PUSH2 0x33cc 000033bc: PUSH9 0x056bc75e2d63100000 000033c6: SWAP2 000033c7: DUP8 000033c8: PUSH2 0x3cdd 000033cb: JUMP 000033cc: JUMPDEST 000033cd: DIV 000033ce: PUSH2 0x32b1 000033d1: JUMP 000033d2: JUMPDEST 000033d3: PUSH1 0x40 000033d5: MLOAD 000033d6: PUSH4 0x3253194b 000033db: PUSH1 0xe2 000033dd: SHL 000033de: DUP2 000033df: MSTORE 000033e0: PUSH1 0x04 000033e2: SWAP1 000033e3: REVERT 000033e4: JUMPDEST 000033e5: SWAP1 000033e6: POP 000033e7: DUP8 000033e8: DUP2 000033e9: DUP2 000033ea: RETURNDATASIZE 000033eb: DUP4 000033ec: GT 000033ed: PUSH2 0x340a 000033f0: JUMPI 000033f1: JUMPDEST 000033f2: PUSH2 0x33fb 000033f5: DUP2 000033f6: DUP4 000033f7: PUSH2 0x3c94 000033fa: JUMP 000033fb: JUMPDEST 000033fc: DUP2 000033fd: ADD 000033fe: SUB 000033ff: SLT 00003400: PUSH2 0x0bfb 00003403: JUMPI 00003404: MLOAD 00003405: DUP9 00003406: PUSH2 0x33b0 00003409: JUMP 0000340a: JUMPDEST 0000340b: POP 0000340c: RETURNDATASIZE 0000340d: PUSH2 0x33f1 00003410: JUMP 00003411: JUMPDEST 00003412: SWAP3 00003413: POP 00003414: PUSH1 0x24 00003416: PUSH1 0x20 00003418: DUP5 00003419: PUSH0 0000341a: DUP1 0000341b: MLOAD 0000341c: PUSH1 0x20 0000341e: PUSH2 0x55da 00003421: DUP4 00003422: CODECOPY 00003423: DUP2 00003424: MLOAD 00003425: SWAP2 00003426: MSTORE 00003427: SLOAD 00003428: AND 00003429: PUSH1 0x40 0000342b: MLOAD 0000342c: SWAP3 0000342d: DUP4 0000342e: DUP1 0000342f: SWAP3 00003430: PUSH4 0x70a08231 00003435: PUSH1 0xe0 00003437: SHL 00003438: DUP3 00003439: MSTORE 0000343a: CALLER 0000343b: PUSH1 0x04 0000343d: DUP4 0000343e: ADD 0000343f: MSTORE 00003440: GAS 00003441: STATICCALL 00003442: SWAP1 00003443: DUP2 00003444: ISZERO 00003445: PUSH2 0x1f1f 00003448: JUMPI 00003449: PUSH0 0000344a: SWAP2 0000344b: PUSH2 0x3456 0000344e: JUMPI 0000344f: JUMPDEST 00003450: POP 00003451: SWAP3 00003452: PUSH2 0x3259 00003455: JUMP 00003456: JUMPDEST 00003457: SWAP1 00003458: POP 00003459: PUSH1 0x20 0000345b: DUP2 0000345c: RETURNDATASIZE 0000345d: PUSH1 0x20 0000345f: GT 00003460: PUSH2 0x3480 00003463: JUMPI 00003464: JUMPDEST 00003465: DUP2 00003466: PUSH2 0x3471 00003469: PUSH1 0x20 0000346b: SWAP4 0000346c: DUP4 0000346d: PUSH2 0x3c94 00003470: JUMP 00003471: JUMPDEST 00003472: DUP2 00003473: ADD 00003474: SUB 00003475: SLT 00003476: PUSH2 0x0bfb 00003479: JUMPI 0000347a: MLOAD 0000347b: DUP7 0000347c: PUSH2 0x344f 0000347f: JUMP 00003480: JUMPDEST 00003481: RETURNDATASIZE 00003482: SWAP2 00003483: POP 00003484: PUSH2 0x3464 00003487: JUMP 00003488: JUMPDEST 00003489: POP 0000348a: PUSH20 0x238a700ed6165261cf8b2e544ba797bc11e466ba 0000349f: DUP4 000034a0: EQ 000034a1: ISZERO 000034a2: PUSH2 0x324d 000034a5: JUMP 000034a6: JUMPDEST 000034a7: CALLVALUE 000034a8: PUSH2 0x0bfb 000034ab: JUMPI 000034ac: PUSH0 000034ad: CALLDATASIZE 000034ae: PUSH1 0x03 000034b0: NOT 000034b1: ADD 000034b2: SLT 000034b3: PUSH2 0x0bfb 000034b6: JUMPI 000034b7: PUSH1 0x20 000034b9: PUSH2 0x34c0 000034bc: PUSH2 0x3f33 000034bf: JUMP 000034c0: JUMPDEST 000034c1: PUSH1 0xff 000034c3: PUSH1 0x40 000034c5: MLOAD 000034c6: SWAP2 000034c7: AND 000034c8: DUP2 000034c9: MSTORE 000034ca: RETURN 000034cb: JUMPDEST 000034cc: CALLVALUE 000034cd: PUSH2 0x0bfb 000034d0: JUMPI 000034d1: PUSH1 0x20 000034d3: CALLDATASIZE 000034d4: PUSH1 0x03 000034d6: NOT 000034d7: ADD 000034d8: SLT 000034d9: PUSH2 0x0bfb 000034dc: JUMPI 000034dd: PUSH1 0x20 000034df: PUSH2 0x2710 000034e2: PUSH2 0x34ef 000034e5: PUSH1 0x0b 000034e7: SLOAD 000034e8: PUSH1 0x04 000034ea: CALLDATALOAD 000034eb: PUSH2 0x3cdd 000034ee: JUMP 000034ef: JUMPDEST 000034f0: DIV 000034f1: PUSH1 0x40 000034f3: MLOAD 000034f4: SWAP1 000034f5: DUP2 000034f6: MSTORE 000034f7: RETURN 000034f8: JUMPDEST 000034f9: CALLVALUE 000034fa: PUSH2 0x0bfb 000034fd: JUMPI 000034fe: PUSH1 0x20 00003500: CALLDATASIZE 00003501: PUSH1 0x03 00003503: NOT 00003504: ADD 00003505: SLT 00003506: PUSH2 0x0bfb 00003509: JUMPI 0000350a: PUSH1 0x04 0000350c: CALLDATALOAD 0000350d: PUSH2 0x3514 00003510: PUSH2 0x436a 00003513: JUMP 00003514: JUMPDEST 00003515: PUSH2 0x05dc 00003518: DUP2 00003519: GT 0000351a: PUSH2 0x2c88 0000351d: JUMPI 0000351e: PUSH32 0x63058ed61801434ac6bfe39e74400bed7f3ba09b7cb6294092974450727eb753 0000353f: PUSH1 0x40 00003541: PUSH1 0x0a 00003543: SLOAD 00003544: DUP2 00003545: MLOAD 00003546: SWAP1 00003547: DUP2 00003548: MSTORE 00003549: DUP4 0000354a: PUSH1 0x20 0000354c: DUP3 0000354d: ADD 0000354e: MSTORE 0000354f: LOG1 00003550: PUSH1 0x0a 00003552: SSTORE 00003553: STOP 00003554: JUMPDEST 00003555: CALLVALUE 00003556: PUSH2 0x0bfb 00003559: JUMPI 0000355a: PUSH1 0x20 0000355c: CALLDATASIZE 0000355d: PUSH1 0x03 0000355f: NOT 00003560: ADD 00003561: SLT 00003562: PUSH2 0x0bfb 00003565: JUMPI 00003566: PUSH1 0x04 00003568: CALLDATALOAD 00003569: PUSH2 0x3570 0000356c: PUSH2 0x436a 0000356f: JUMP 00003570: JUMPDEST 00003571: PUSH1 0x78 00003573: DUP2 00003574: GT 00003575: PUSH2 0x2c76 00003578: JUMPI 00003579: PUSH32 0x394967f6fe403cda0905b23e81b928c5ca79107000b1404c6b3185442f05213c 0000359a: PUSH1 0x40 0000359c: PUSH1 0x0b 0000359e: SLOAD 0000359f: DUP2 000035a0: MLOAD 000035a1: SWAP1 000035a2: DUP2 000035a3: MSTORE 000035a4: DUP4 000035a5: PUSH1 0x20 000035a7: DUP3 000035a8: ADD 000035a9: MSTORE 000035aa: LOG1 000035ab: PUSH1 0x0b 000035ad: SSTORE 000035ae: STOP 000035af: JUMPDEST 000035b0: CALLVALUE 000035b1: PUSH2 0x0bfb 000035b4: JUMPI 000035b5: PUSH0 000035b6: CALLDATASIZE 000035b7: PUSH1 0x03 000035b9: NOT 000035ba: ADD 000035bb: SLT 000035bc: PUSH2 0x0bfb 000035bf: JUMPI 000035c0: PUSH1 0x20 000035c2: PUSH0 000035c3: SLOAD 000035c4: PUSH1 0x40 000035c6: MLOAD 000035c7: SWAP1 000035c8: DUP2 000035c9: MSTORE 000035ca: RETURN 000035cb: JUMPDEST 000035cc: CALLVALUE 000035cd: PUSH2 0x0bfb 000035d0: JUMPI 000035d1: PUSH1 0x60 000035d3: CALLDATASIZE 000035d4: PUSH1 0x03 000035d6: NOT 000035d7: ADD 000035d8: SLT 000035d9: PUSH2 0x0bfb 000035dc: JUMPI 000035dd: PUSH2 0x10c2 000035e0: PUSH2 0x35e7 000035e3: PUSH2 0x3aac 000035e6: JUMP 000035e7: JUMPDEST 000035e8: PUSH2 0x35ef 000035eb: PUSH2 0x3ac2 000035ee: JUMP 000035ef: JUMPDEST 000035f0: PUSH1 0x44 000035f2: CALLDATALOAD 000035f3: SWAP2 000035f4: PUSH2 0x35fe 000035f7: DUP4 000035f8: CALLER 000035f9: DUP4 000035fa: PUSH2 0x4528 000035fd: JUMP 000035fe: JUMPDEST 000035ff: PUSH2 0x4466 00003602: JUMP 00003603: JUMPDEST 00003604: CALLVALUE 00003605: PUSH2 0x0bfb 00003608: JUMPI 00003609: PUSH0 0000360a: CALLDATASIZE 0000360b: PUSH1 0x03 0000360d: NOT 0000360e: ADD 0000360f: SLT 00003610: PUSH2 0x0bfb 00003613: JUMPI 00003614: PUSH1 0x20 00003616: PUSH0 00003617: DUP1 00003618: MLOAD 00003619: PUSH1 0x20 0000361b: PUSH2 0x559a 0000361e: DUP4 0000361f: CODECOPY 00003620: DUP2 00003621: MLOAD 00003622: SWAP2 00003623: MSTORE 00003624: SLOAD 00003625: PUSH1 0x40 00003627: MLOAD 00003628: SWAP1 00003629: DUP2 0000362a: MSTORE 0000362b: RETURN 0000362c: JUMPDEST 0000362d: CALLVALUE 0000362e: PUSH2 0x0bfb 00003631: JUMPI 00003632: PUSH1 0x40 00003634: CALLDATASIZE 00003635: PUSH1 0x03 00003637: NOT 00003638: ADD 00003639: SLT 0000363a: PUSH2 0x0bfb 0000363d: JUMPI 0000363e: PUSH2 0x3645 00003641: PUSH2 0x3aac 00003644: JUMP 00003645: JUMPDEST 00003646: PUSH1 0x0f 00003648: SLOAD 00003649: PUSH1 0x01 0000364b: PUSH1 0x01 0000364d: PUSH1 0xa0 0000364f: SHL 00003650: SUB 00003651: SWAP2 00003652: SWAP1 00003653: PUSH1 0x24 00003655: CALLDATALOAD 00003656: SWAP1 00003657: DUP4 00003658: AND 00003659: CALLER 0000365a: SUB 0000365b: PUSH2 0x1335 0000365e: JUMPI 0000365f: PUSH1 0x1b 00003661: SLOAD 00003662: DUP1 00003663: PUSH0 00003664: MSTORE 00003665: PUSH1 0x20 00003667: SWAP4 00003668: PUSH1 0x17 0000366a: DUP6 0000366b: MSTORE 0000366c: PUSH1 0x40 0000366e: PUSH0 0000366f: KECCAK256 00003670: SWAP4 00003671: AND 00003672: SWAP3 00003673: DUP4 00003674: PUSH0 00003675: MSTORE 00003676: DUP5 00003677: MSTORE 00003678: DUP2 00003679: PUSH1 0x40 0000367b: PUSH0 0000367c: KECCAK256 0000367d: SLOAD 0000367e: LT 0000367f: PUSH2 0x2172 00003682: JUMPI 00003683: PUSH0 00003684: MSTORE 00003685: PUSH1 0x17 00003687: DUP4 00003688: MSTORE 00003689: PUSH1 0x40 0000368b: PUSH0 0000368c: KECCAK256 0000368d: DUP3 0000368e: PUSH0 0000368f: MSTORE 00003690: DUP4 00003691: MSTORE 00003692: PUSH2 0x36a0 00003695: PUSH1 0x40 00003697: PUSH0 00003698: KECCAK256 00003699: SWAP2 0000369a: DUP3 0000369b: SLOAD 0000369c: PUSH2 0x3cd0 0000369f: JUMP 000036a0: JUMPDEST 000036a1: SWAP1 000036a2: SSTORE 000036a3: PUSH1 0x1b 000036a5: SLOAD 000036a6: PUSH0 000036a7: MSTORE 000036a8: PUSH1 0x17 000036aa: DUP3 000036ab: MSTORE 000036ac: PUSH1 0x40 000036ae: PUSH0 000036af: KECCAK256 000036b0: SWAP1 000036b1: PUSH0 000036b2: MSTORE 000036b3: DUP2 000036b4: MSTORE 000036b5: PUSH1 0x40 000036b7: PUSH0 000036b8: KECCAK256 000036b9: SLOAD 000036ba: PUSH1 0x40 000036bc: MLOAD 000036bd: SWAP1 000036be: DUP2 000036bf: MSTORE 000036c0: RETURN 000036c1: JUMPDEST 000036c2: CALLVALUE 000036c3: PUSH2 0x0bfb 000036c6: JUMPI 000036c7: PUSH1 0x20 000036c9: DUP1 000036ca: PUSH1 0x03 000036cc: NOT 000036cd: CALLDATASIZE 000036ce: ADD 000036cf: SLT 000036d0: PUSH2 0x0bfb 000036d3: JUMPI 000036d4: PUSH2 0x36db 000036d7: PUSH2 0x3aac 000036da: JUMP 000036db: JUMPDEST 000036dc: PUSH2 0x36e3 000036df: PUSH2 0x436a 000036e2: JUMP 000036e3: JUMPDEST 000036e4: PUSH1 0x40 000036e6: MLOAD 000036e7: PUSH3 0x8bb5fb 000036eb: PUSH1 0xe4 000036ed: SHL 000036ee: DUP2 000036ef: MSTORE 000036f0: PUSH1 0x01 000036f2: PUSH1 0x01 000036f4: PUSH1 0xa0 000036f6: SHL 000036f7: SUB 000036f8: SWAP2 000036f9: SWAP1 000036fa: SWAP2 000036fb: AND 000036fc: SWAP2 000036fd: SWAP1 000036fe: DUP2 000036ff: DUP2 00003700: PUSH1 0x04 00003702: DUP2 00003703: PUSH0 00003704: DUP8 00003705: GAS 00003706: CALL 00003707: SWAP1 00003708: DUP2 00003709: ISZERO 0000370a: PUSH2 0x1f1f 0000370d: JUMPI 0000370e: PUSH0 0000370f: SWAP2 00003710: PUSH2 0x375b 00003713: JUMPI 00003714: JUMPDEST 00003715: POP 00003716: PUSH2 0x1335 00003719: JUMPI 0000371a: DUP2 0000371b: PUSH2 0x3744 0000371e: PUSH32 0xd3281a40d50ae838fe77dc627744037b8f0fc6a5711d66119a9b670c5cde41af 0000373f: SWAP4 00003740: PUSH2 0x469d 00003743: JUMP 00003744: JUMPDEST 00003745: POP 00003746: DUP1 00003747: PUSH0 00003748: MSTORE 00003749: PUSH1 0x02 0000374b: DUP3 0000374c: MSTORE 0000374d: PUSH0 0000374e: PUSH1 0x40 00003750: DUP2 00003751: KECCAK256 00003752: SSTORE 00003753: PUSH1 0x40 00003755: MLOAD 00003756: SWAP1 00003757: DUP2 00003758: MSTORE 00003759: LOG1 0000375a: STOP 0000375b: JUMPDEST 0000375c: SWAP1 0000375d: POP 0000375e: DUP2 0000375f: DUP2 00003760: DUP2 00003761: RETURNDATASIZE 00003762: DUP4 00003763: GT 00003764: PUSH2 0x3781 00003767: JUMPI 00003768: JUMPDEST 00003769: PUSH2 0x3772 0000376c: DUP2 0000376d: DUP4 0000376e: PUSH2 0x3c94 00003771: JUMP 00003772: JUMPDEST 00003773: DUP2 00003774: ADD 00003775: SUB 00003776: SLT 00003777: PUSH2 0x0bfb 0000377a: JUMPI 0000377b: MLOAD 0000377c: DUP4 0000377d: PUSH2 0x3714 00003780: JUMP 00003781: JUMPDEST 00003782: POP 00003783: RETURNDATASIZE 00003784: PUSH2 0x3768 00003787: JUMP 00003788: JUMPDEST 00003789: CALLVALUE 0000378a: PUSH2 0x0bfb 0000378d: JUMPI 0000378e: PUSH1 0x40 00003790: CALLDATASIZE 00003791: PUSH1 0x03 00003793: NOT 00003794: ADD 00003795: SLT 00003796: PUSH2 0x0bfb 00003799: JUMPI 0000379a: PUSH2 0x1593 0000379d: PUSH2 0x3ac2 000037a0: JUMP 000037a1: JUMPDEST 000037a2: CALLVALUE 000037a3: PUSH2 0x0bfb 000037a6: JUMPI 000037a7: PUSH1 0x20 000037a9: CALLDATASIZE 000037aa: PUSH1 0x03 000037ac: NOT 000037ad: ADD 000037ae: SLT 000037af: PUSH2 0x0bfb 000037b2: JUMPI 000037b3: PUSH1 0x01 000037b5: PUSH1 0x01 000037b7: PUSH1 0xa0 000037b9: SHL 000037ba: SUB 000037bb: PUSH2 0x37c2 000037be: PUSH2 0x3aac 000037c1: JUMP 000037c2: JUMPDEST 000037c3: AND 000037c4: PUSH0 000037c5: MSTORE 000037c6: PUSH1 0x18 000037c8: PUSH1 0x20 000037ca: MSTORE 000037cb: PUSH1 0x20 000037cd: PUSH1 0x40 000037cf: PUSH0 000037d0: KECCAK256 000037d1: SLOAD 000037d2: PUSH1 0x40 000037d4: MLOAD 000037d5: SWAP1 000037d6: DUP2 000037d7: MSTORE 000037d8: RETURN 000037d9: JUMPDEST 000037da: CALLVALUE 000037db: PUSH2 0x0bfb 000037de: JUMPI 000037df: PUSH0 000037e0: CALLDATASIZE 000037e1: PUSH1 0x03 000037e3: NOT 000037e4: ADD 000037e5: SLT 000037e6: PUSH2 0x0bfb 000037e9: JUMPI 000037ea: PUSH1 0x20 000037ec: PUSH1 0x40 000037ee: MLOAD 000037ef: PUSH20 0x238a700ed6165261cf8b2e544ba797bc11e466ba 00003804: DUP2 00003805: MSTORE 00003806: RETURN 00003807: JUMPDEST 00003808: CALLVALUE 00003809: PUSH2 0x0bfb 0000380c: JUMPI 0000380d: PUSH1 0x20 0000380f: CALLDATASIZE 00003810: PUSH1 0x03 00003812: NOT 00003813: ADD 00003814: SLT 00003815: PUSH2 0x0bfb 00003818: JUMPI 00003819: PUSH0 0000381a: DUP1 0000381b: MLOAD 0000381c: PUSH1 0x20 0000381e: PUSH2 0x559a 00003821: DUP4 00003822: CODECOPY 00003823: DUP2 00003824: MLOAD 00003825: SWAP2 00003826: MSTORE 00003827: SLOAD 00003828: PUSH1 0x01 0000382a: DUP2 0000382b: ADD 0000382c: DUP1 0000382d: SWAP2 0000382e: GT 0000382f: PUSH2 0x0d7a 00003832: JUMPI 00003833: PUSH2 0x383a 00003836: PUSH2 0x3d0e 00003839: JUMP 0000383a: JUMPDEST 0000383b: SWAP1 0000383c: PUSH1 0x01 0000383e: DUP3 0000383f: ADD 00003840: DUP1 00003841: SWAP3 00003842: GT 00003843: PUSH2 0x0d7a 00003846: JUMPI 00003847: PUSH1 0x20 00003849: SWAP2 0000384a: PUSH2 0x04c4 0000384d: SWAP2 0000384e: PUSH1 0x04 00003850: CALLDATALOAD 00003851: PUSH2 0x464f 00003854: JUMP 00003855: JUMPDEST 00003856: CALLVALUE 00003857: PUSH2 0x0bfb 0000385a: JUMPI 0000385b: PUSH1 0x40 0000385d: CALLDATASIZE 0000385e: PUSH1 0x03 00003860: NOT 00003861: ADD 00003862: SLT 00003863: PUSH2 0x0bfb 00003866: JUMPI 00003867: PUSH2 0x386e 0000386a: PUSH2 0x3aac 0000386d: JUMP 0000386e: JUMPDEST 0000386f: PUSH1 0x24 00003871: CALLDATALOAD 00003872: SWAP1 00003873: CALLER 00003874: ISZERO 00003875: PUSH2 0x38ec 00003878: JUMPI 00003879: PUSH1 0x01 0000387b: PUSH1 0x01 0000387d: PUSH1 0xa0 0000387f: SHL 00003880: SUB 00003881: AND 00003882: SWAP1 00003883: DUP2 00003884: ISZERO 00003885: PUSH2 0x38d4 00003888: JUMPI 00003889: PUSH2 0x3891 0000388c: CALLER 0000388d: PUSH2 0x3b98 00003890: JUMP 00003891: JUMPDEST 00003892: DUP3 00003893: PUSH0 00003894: MSTORE 00003895: PUSH1 0x20 00003897: MSTORE 00003898: DUP1 00003899: PUSH1 0x40 0000389b: PUSH0 0000389c: KECCAK256 0000389d: SSTORE 0000389e: PUSH1 0x40 000038a0: MLOAD 000038a1: SWAP1 000038a2: DUP2 000038a3: MSTORE 000038a4: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925 000038c5: PUSH1 0x20 000038c7: CALLER 000038c8: SWAP3 000038c9: LOG3 000038ca: PUSH1 0x20 000038cc: PUSH1 0x40 000038ce: MLOAD 000038cf: PUSH1 0x01 000038d1: DUP2 000038d2: MSTORE 000038d3: RETURN 000038d4: JUMPDEST 000038d5: PUSH1 0x40 000038d7: MLOAD 000038d8: PUSH4 0x4a1406b1 000038dd: PUSH1 0xe1 000038df: SHL 000038e0: DUP2 000038e1: MSTORE 000038e2: PUSH0 000038e3: PUSH1 0x04 000038e5: DUP3 000038e6: ADD 000038e7: MSTORE 000038e8: PUSH1 0x24 000038ea: SWAP1 000038eb: REVERT 000038ec: JUMPDEST 000038ed: PUSH1 0x40 000038ef: MLOAD 000038f0: PUSH4 0xe602df05 000038f5: PUSH1 0xe0 000038f7: SHL 000038f8: DUP2 000038f9: MSTORE 000038fa: PUSH0 000038fb: PUSH1 0x04 000038fd: DUP3 000038fe: ADD 000038ff: MSTORE 00003900: PUSH1 0x24 00003902: SWAP1 00003903: REVERT 00003904: JUMPDEST 00003905: CALLVALUE 00003906: PUSH2 0x0bfb 00003909: JUMPI 0000390a: PUSH0 0000390b: CALLDATASIZE 0000390c: PUSH1 0x03 0000390e: NOT 0000390f: ADD 00003910: SLT 00003911: PUSH2 0x0bfb 00003914: JUMPI 00003915: PUSH1 0x20 00003917: PUSH1 0x1c 00003919: SLOAD 0000391a: PUSH1 0x40 0000391c: MLOAD 0000391d: SWAP1 0000391e: DUP2 0000391f: MSTORE 00003920: RETURN 00003921: JUMPDEST 00003922: CALLVALUE 00003923: PUSH2 0x0bfb 00003926: JUMPI 00003927: PUSH0 00003928: CALLDATASIZE 00003929: PUSH1 0x03 0000392b: NOT 0000392c: ADD 0000392d: SLT 0000392e: PUSH2 0x0bfb 00003931: JUMPI 00003932: PUSH1 0x20 00003934: PUSH2 0x04c4 00003937: PUSH2 0x3d88 0000393a: JUMP 0000393b: JUMPDEST 0000393c: CALLVALUE 0000393d: PUSH2 0x0bfb 00003940: JUMPI 00003941: PUSH0 00003942: CALLDATASIZE 00003943: PUSH1 0x03 00003945: NOT 00003946: ADD 00003947: SLT 00003948: PUSH2 0x0bfb 0000394b: JUMPI 0000394c: PUSH1 0x40 0000394e: MLOAD 0000394f: PUSH0 00003950: DUP1 00003951: MLOAD 00003952: PUSH1 0x20 00003954: PUSH2 0x551a 00003957: DUP4 00003958: CODECOPY 00003959: DUP2 0000395a: MLOAD 0000395b: SWAP2 0000395c: MSTORE 0000395d: DUP1 0000395e: SLOAD 0000395f: DUP3 00003960: PUSH0 00003961: PUSH2 0x3969 00003964: DUP4 00003965: PUSH2 0x3d43 00003968: JUMP 00003969: JUMPDEST 0000396a: SWAP3 0000396b: DUP4 0000396c: DUP4 0000396d: MSTORE 0000396e: PUSH1 0x20 00003970: SWAP5 00003971: PUSH1 0x01 00003973: SWAP2 00003974: DUP7 00003975: PUSH1 0x01 00003977: DUP3 00003978: AND 00003979: SWAP2 0000397a: DUP3 0000397b: PUSH0 0000397c: EQ 0000397d: PUSH2 0x1557 00003980: JUMPI 00003981: POP 00003982: POP 00003983: PUSH1 0x01 00003985: EQ 00003986: PUSH2 0x3997 00003989: JUMPI 0000398a: POP 0000398b: POP 0000398c: PUSH2 0x1507 0000398f: SWAP3 00003990: POP 00003991: SUB 00003992: DUP4 00003993: PUSH2 0x3c94 00003996: JUMP 00003997: JUMPDEST 00003998: DUP6 00003999: SWAP3 0000399a: POP 0000399b: PUSH0 0000399c: MSTORE 0000399d: DUP2 0000399e: PUSH0 0000399f: KECCAK256 000039a0: SWAP1 000039a1: PUSH0 000039a2: SWAP2 000039a3: JUMPDEST 000039a4: DUP6 000039a5: DUP4 000039a6: LT 000039a7: PUSH2 0x39bb 000039aa: JUMPI 000039ab: POP 000039ac: POP 000039ad: PUSH2 0x1507 000039b0: SWAP4 000039b1: POP 000039b2: DUP3 000039b3: ADD 000039b4: ADD 000039b5: DUP6 000039b6: DUP1 000039b7: PUSH2 0x14f9 000039ba: JUMP 000039bb: JUMPDEST 000039bc: DUP1 000039bd: SLOAD 000039be: DUP4 000039bf: DUP10 000039c0: ADD 000039c1: DUP6 000039c2: ADD 000039c3: MSTORE 000039c4: DUP8 000039c5: SWAP5 000039c6: POP 000039c7: DUP7 000039c8: SWAP4 000039c9: SWAP1 000039ca: SWAP3 000039cb: ADD 000039cc: SWAP2 000039cd: DUP2 000039ce: ADD 000039cf: PUSH2 0x39a3 000039d2: JUMP 000039d3: JUMPDEST 000039d4: CALLVALUE 000039d5: PUSH2 0x0bfb 000039d8: JUMPI 000039d9: PUSH1 0x20 000039db: CALLDATASIZE 000039dc: PUSH1 0x03 000039de: NOT 000039df: ADD 000039e0: SLT 000039e1: PUSH2 0x0bfb 000039e4: JUMPI 000039e5: PUSH1 0x04 000039e7: CALLDATALOAD 000039e8: PUSH2 0x39ef 000039eb: PUSH2 0x436a 000039ee: JUMP 000039ef: JUMPDEST 000039f0: PUSH1 0x04 000039f2: DUP2 000039f3: GT 000039f4: PUSH2 0x2cbe 000039f7: JUMPI 000039f8: PUSH32 0x29b9d7a7d8a7a3ac22c295e4517723bc4e386eea60173e59e6da1dbd460cb409 00003a19: PUSH1 0x40 00003a1b: PUSH1 0x07 00003a1d: SLOAD 00003a1e: DUP2 00003a1f: MLOAD 00003a20: SWAP1 00003a21: DUP2 00003a22: MSTORE 00003a23: DUP4 00003a24: PUSH1 0x20 00003a26: DUP3 00003a27: ADD 00003a28: MSTORE 00003a29: LOG1 00003a2a: PUSH1 0x07 00003a2c: SSTORE 00003a2d: STOP 00003a2e: JUMPDEST 00003a2f: CALLVALUE 00003a30: PUSH2 0x0bfb 00003a33: JUMPI 00003a34: PUSH0 00003a35: CALLDATASIZE 00003a36: PUSH1 0x03 00003a38: NOT 00003a39: ADD 00003a3a: SLT 00003a3b: PUSH2 0x0bfb 00003a3e: JUMPI 00003a3f: PUSH1 0x20 00003a41: PUSH1 0xff 00003a43: PUSH1 0x1e 00003a45: SLOAD 00003a46: AND 00003a47: PUSH1 0x40 00003a49: MLOAD 00003a4a: SWAP1 00003a4b: ISZERO 00003a4c: ISZERO 00003a4d: DUP2 00003a4e: MSTORE 00003a4f: RETURN 00003a50: JUMPDEST 00003a51: CALLVALUE 00003a52: PUSH2 0x0bfb 00003a55: JUMPI 00003a56: PUSH0 00003a57: CALLDATASIZE 00003a58: PUSH1 0x03 00003a5a: NOT 00003a5b: ADD 00003a5c: SLT 00003a5d: PUSH2 0x0bfb 00003a60: JUMPI 00003a61: PUSH1 0x20 00003a63: PUSH2 0x04c4 00003a66: PUSH2 0x3d0e 00003a69: JUMP 00003a6a: JUMPDEST 00003a6b: DUP1 00003a6c: MLOAD 00003a6d: DUP1 00003a6e: DUP4 00003a6f: MSTORE 00003a70: PUSH1 0x20 00003a72: SWAP3 00003a73: SWAP2 00003a74: DUP2 00003a75: SWAP1 00003a76: DUP5 00003a77: ADD 00003a78: DUP5 00003a79: DUP5 00003a7a: ADD 00003a7b: MCOPY 00003a7c: PUSH0 00003a7d: DUP3 00003a7e: DUP3 00003a7f: ADD 00003a80: DUP5 00003a81: ADD 00003a82: MSTORE 00003a83: PUSH1 0x1f 00003a85: ADD 00003a86: PUSH1 0x1f 00003a88: NOT 00003a89: AND 00003a8a: ADD 00003a8b: ADD 00003a8c: SWAP1 00003a8d: JUMP 00003a8e: JUMPDEST 00003a8f: CALLVALUE 00003a90: PUSH2 0x0bfb 00003a93: JUMPI 00003a94: PUSH1 0x20 00003a96: CALLDATASIZE 00003a97: PUSH1 0x03 00003a99: NOT 00003a9a: ADD 00003a9b: SLT 00003a9c: PUSH2 0x0bfb 00003a9f: JUMPI 00003aa0: PUSH1 0x20 00003aa2: PUSH2 0x04c4 00003aa5: PUSH1 0x04 00003aa7: CALLDATALOAD 00003aa8: PUSH2 0x43a2 00003aab: JUMP 00003aac: JUMPDEST 00003aad: PUSH1 0x04 00003aaf: CALLDATALOAD 00003ab0: SWAP1 00003ab1: PUSH1 0x01 00003ab3: PUSH1 0x01 00003ab5: PUSH1 0xa0 00003ab7: SHL 00003ab8: SUB 00003ab9: DUP3 00003aba: AND 00003abb: DUP3 00003abc: SUB 00003abd: PUSH2 0x0bfb 00003ac0: JUMPI 00003ac1: JUMP 00003ac2: JUMPDEST 00003ac3: PUSH1 0x24 00003ac5: CALLDATALOAD 00003ac6: SWAP1 00003ac7: PUSH1 0x01 00003ac9: PUSH1 0x01 00003acb: PUSH1 0xa0 00003acd: SHL 00003ace: SUB 00003acf: DUP3 00003ad0: AND 00003ad1: DUP3 00003ad2: SUB 00003ad3: PUSH2 0x0bfb 00003ad6: JUMPI 00003ad7: JUMP 00003ad8: JUMPDEST 00003ad9: PUSH1 0x64 00003adb: CALLDATALOAD 00003adc: SWAP1 00003add: PUSH1 0x01 00003adf: PUSH1 0x01 00003ae1: PUSH1 0xa0 00003ae3: SHL 00003ae4: SUB 00003ae5: DUP3 00003ae6: AND 00003ae7: DUP3 00003ae8: SUB 00003ae9: PUSH2 0x0bfb 00003aec: JUMPI 00003aed: JUMP 00003aee: JUMPDEST 00003aef: CALLDATALOAD 00003af0: SWAP1 00003af1: PUSH1 0x01 00003af3: PUSH1 0x01 00003af5: PUSH1 0xa0 00003af7: SHL 00003af8: SUB 00003af9: DUP3 00003afa: AND 00003afb: DUP3 00003afc: SUB 00003afd: PUSH2 0x0bfb 00003b00: JUMPI 00003b01: JUMP 00003b02: JUMPDEST 00003b03: SWAP2 00003b04: DUP2 00003b05: PUSH1 0x1f 00003b07: DUP5 00003b08: ADD 00003b09: SLT 00003b0a: ISZERO 00003b0b: PUSH2 0x0bfb 00003b0e: JUMPI 00003b0f: DUP3 00003b10: CALLDATALOAD 00003b11: SWAP2 00003b12: PUSH1 0x01 00003b14: PUSH1 0x01 00003b16: PUSH1 0x40 00003b18: SHL 00003b19: SUB 00003b1a: DUP4 00003b1b: GT 00003b1c: PUSH2 0x0bfb 00003b1f: JUMPI 00003b20: PUSH1 0x20 00003b22: DUP4 00003b23: DUP2 00003b24: DUP7 00003b25: ADD 00003b26: SWAP6 00003b27: ADD 00003b28: ADD 00003b29: GT 00003b2a: PUSH2 0x0bfb 00003b2d: JUMPI 00003b2e: JUMP 00003b2f: JUMPDEST 00003b30: PUSH1 0x40 00003b32: SWAP1 00003b33: PUSH1 0x03 00003b35: NOT 00003b36: ADD 00003b37: SLT 00003b38: PUSH2 0x0bfb 00003b3b: JUMPI 00003b3c: PUSH1 0x04 00003b3e: CALLDATALOAD 00003b3f: SWAP1 00003b40: PUSH1 0x24 00003b42: CALLDATALOAD 00003b43: SWAP1 00003b44: JUMP 00003b45: JUMPDEST 00003b46: PUSH1 0x04 00003b48: CALLDATALOAD 00003b49: SWAP1 00003b4a: DUP2 00003b4b: ISZERO 00003b4c: ISZERO 00003b4d: DUP3 00003b4e: SUB 00003b4f: PUSH2 0x0bfb 00003b52: JUMPI 00003b53: JUMP 00003b54: JUMPDEST 00003b55: PUSH1 0x20 00003b57: SWAP1 00003b58: PUSH1 0x20 00003b5a: PUSH1 0x40 00003b5c: DUP2 00003b5d: DUP4 00003b5e: ADD 00003b5f: SWAP3 00003b60: DUP3 00003b61: DUP2 00003b62: MSTORE 00003b63: DUP6 00003b64: MLOAD 00003b65: DUP1 00003b66: SWAP5 00003b67: MSTORE 00003b68: ADD 00003b69: SWAP4 00003b6a: ADD 00003b6b: SWAP2 00003b6c: PUSH0 00003b6d: JUMPDEST 00003b6e: DUP3 00003b6f: DUP2 00003b70: LT 00003b71: PUSH2 0x3b7b 00003b74: JUMPI 00003b75: POP 00003b76: POP 00003b77: POP 00003b78: POP 00003b79: SWAP1 00003b7a: JUMP 00003b7b: JUMPDEST 00003b7c: DUP4 00003b7d: MLOAD 00003b7e: PUSH1 0x01 00003b80: PUSH1 0x01 00003b82: PUSH1 0xa0 00003b84: SHL 00003b85: SUB 00003b86: AND 00003b87: DUP6 00003b88: MSTORE 00003b89: SWAP4 00003b8a: DUP2 00003b8b: ADD 00003b8c: SWAP4 00003b8d: SWAP3 00003b8e: DUP2 00003b8f: ADD 00003b90: SWAP3 00003b91: PUSH1 0x01 00003b93: ADD 00003b94: PUSH2 0x3b6d 00003b97: JUMP 00003b98: JUMPDEST 00003b99: PUSH1 0x01 00003b9b: PUSH1 0x01 00003b9d: PUSH1 0xa0 00003b9f: SHL 00003ba0: SUB 00003ba1: AND 00003ba2: PUSH0 00003ba3: SWAP1 00003ba4: DUP2 00003ba5: MSTORE 00003ba6: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace01 00003bc7: PUSH1 0x20 00003bc9: MSTORE 00003bca: PUSH1 0x40 00003bcc: SWAP1 00003bcd: KECCAK256 00003bce: SWAP1 00003bcf: JUMP 00003bd0: JUMPDEST 00003bd1: CALLVALUE 00003bd2: PUSH2 0x0bfb 00003bd5: JUMPI 00003bd6: PUSH1 0x60 00003bd8: CALLDATASIZE 00003bd9: PUSH1 0x03 00003bdb: NOT 00003bdc: ADD 00003bdd: SLT 00003bde: PUSH2 0x0bfb 00003be1: JUMPI 00003be2: PUSH1 0x01 00003be4: PUSH1 0x01 00003be6: PUSH1 0xa0 00003be8: SHL 00003be9: SUB 00003bea: PUSH1 0x24 00003bec: CALLDATALOAD 00003bed: DUP2 00003bee: DUP2 00003bef: AND 00003bf0: SUB 00003bf1: PUSH2 0x0bfb 00003bf4: JUMPI 00003bf5: PUSH1 0x44 00003bf7: CALLDATALOAD 00003bf8: SWAP1 00003bf9: DUP2 00003bfa: AND 00003bfb: SUB 00003bfc: PUSH2 0x0bfb 00003bff: JUMPI 00003c00: PUSH1 0x40 00003c02: MLOAD 00003c03: PUSH4 0x7dc4dd15 00003c08: PUSH1 0xe1 00003c0a: SHL 00003c0b: DUP2 00003c0c: MSTORE 00003c0d: PUSH1 0x04 00003c0f: SWAP1 00003c10: REVERT 00003c11: JUMPDEST 00003c12: CALLVALUE 00003c13: PUSH2 0x0bfb 00003c16: JUMPI 00003c17: PUSH1 0x20 00003c19: CALLDATASIZE 00003c1a: PUSH1 0x03 00003c1c: NOT 00003c1d: ADD 00003c1e: SLT 00003c1f: PUSH2 0x0bfb 00003c22: JUMPI 00003c23: PUSH1 0x20 00003c25: PUSH2 0x04c4 00003c28: PUSH1 0x04 00003c2a: CALLDATALOAD 00003c2b: PUSH2 0x43d9 00003c2e: JUMP 00003c2f: JUMPDEST 00003c30: PUSH2 0x01a0 00003c33: DUP2 00003c34: ADD 00003c35: SWAP1 00003c36: DUP2 00003c37: LT 00003c38: PUSH1 0x01 00003c3a: PUSH1 0x01 00003c3c: PUSH1 0x40 00003c3e: SHL 00003c3f: SUB 00003c40: DUP3 00003c41: GT 00003c42: OR 00003c43: PUSH2 0x0ba1 00003c46: JUMPI 00003c47: PUSH1 0x40 00003c49: MSTORE 00003c4a: JUMP 00003c4b: JUMPDEST 00003c4c: PUSH1 0xa0 00003c4e: DUP2 00003c4f: ADD 00003c50: SWAP1 00003c51: DUP2 00003c52: LT 00003c53: PUSH1 0x01 00003c55: PUSH1 0x01 00003c57: PUSH1 0x40 00003c59: SHL 00003c5a: SUB 00003c5b: DUP3 00003c5c: GT 00003c5d: OR 00003c5e: PUSH2 0x0ba1 00003c61: JUMPI 00003c62: PUSH1 0x40 00003c64: MSTORE 00003c65: JUMP 00003c66: JUMPDEST 00003c67: PUSH1 0x01 00003c69: PUSH1 0x01 00003c6b: PUSH1 0x40 00003c6d: SHL 00003c6e: SUB 00003c6f: DUP2 00003c70: GT 00003c71: PUSH2 0x0ba1 00003c74: JUMPI 00003c75: PUSH1 0x40 00003c77: MSTORE 00003c78: JUMP 00003c79: JUMPDEST 00003c7a: PUSH1 0x40 00003c7c: DUP2 00003c7d: ADD 00003c7e: SWAP1 00003c7f: DUP2 00003c80: LT 00003c81: PUSH1 0x01 00003c83: PUSH1 0x01 00003c85: PUSH1 0x40 00003c87: SHL 00003c88: SUB 00003c89: DUP3 00003c8a: GT 00003c8b: OR 00003c8c: PUSH2 0x0ba1 00003c8f: JUMPI 00003c90: PUSH1 0x40 00003c92: MSTORE 00003c93: JUMP 00003c94: JUMPDEST 00003c95: SWAP1 00003c96: PUSH1 0x1f 00003c98: DUP1 00003c99: NOT 00003c9a: SWAP2 00003c9b: ADD 00003c9c: AND 00003c9d: DUP2 00003c9e: ADD 00003c9f: SWAP1 00003ca0: DUP2 00003ca1: LT 00003ca2: PUSH1 0x01 00003ca4: PUSH1 0x01 00003ca6: PUSH1 0x40 00003ca8: SHL 00003ca9: SUB 00003caa: DUP3 00003cab: GT 00003cac: OR 00003cad: PUSH2 0x0ba1 00003cb0: JUMPI 00003cb1: PUSH1 0x40 00003cb3: MSTORE 00003cb4: JUMP 00003cb5: JUMPDEST 00003cb6: PUSH1 0x01 00003cb8: PUSH1 0x01 00003cba: PUSH1 0x40 00003cbc: SHL 00003cbd: SUB 00003cbe: DUP2 00003cbf: GT 00003cc0: PUSH2 0x0ba1 00003cc3: JUMPI 00003cc4: PUSH1 0x1f 00003cc6: ADD 00003cc7: PUSH1 0x1f 00003cc9: NOT 00003cca: AND 00003ccb: PUSH1 0x20 00003ccd: ADD 00003cce: SWAP1 00003ccf: JUMP 00003cd0: JUMPDEST 00003cd1: SWAP2 00003cd2: SWAP1 00003cd3: DUP3 00003cd4: SUB 00003cd5: SWAP2 00003cd6: DUP3 00003cd7: GT 00003cd8: PUSH2 0x0d7a 00003cdb: JUMPI 00003cdc: JUMP 00003cdd: JUMPDEST 00003cde: DUP2 00003cdf: DUP2 00003ce0: MUL 00003ce1: SWAP3 00003ce2: SWAP2 00003ce3: DUP2 00003ce4: ISZERO 00003ce5: SWAP2 00003ce6: DUP5 00003ce7: DIV 00003ce8: EQ 00003ce9: OR 00003cea: ISZERO 00003ceb: PUSH2 0x0d7a 00003cee: JUMPI 00003cef: JUMP 00003cf0: JUMPDEST 00003cf1: DUP2 00003cf2: ISZERO 00003cf3: PUSH2 0x3cfa 00003cf6: JUMPI 00003cf7: DIV 00003cf8: SWAP1 00003cf9: JUMP 00003cfa: JUMPDEST 00003cfb: PUSH4 0x4e487b71 00003d00: PUSH1 0xe0 00003d02: SHL 00003d03: PUSH0 00003d04: MSTORE 00003d05: PUSH1 0x12 00003d07: PUSH1 0x04 00003d09: MSTORE 00003d0a: PUSH1 0x24 00003d0c: PUSH0 00003d0d: REVERT 00003d0e: JUMPDEST 00003d0f: PUSH2 0x3d1a 00003d12: PUSH1 0x14 00003d14: SLOAD 00003d15: TIMESTAMP 00003d16: PUSH2 0x3cd0 00003d19: JUMP 00003d1a: JUMPDEST 00003d1b: PUSH1 0x09 00003d1d: SLOAD 00003d1e: LT 00003d1f: PUSH2 0x1323 00003d22: JUMPI 00003d23: PUSH2 0x3d40 00003d26: PUSH2 0x1179 00003d29: PUSH1 0x10 00003d2b: SLOAD 00003d2c: PUSH0 00003d2d: DUP1 00003d2e: MLOAD 00003d2f: PUSH1 0x20 00003d31: PUSH2 0x559a 00003d34: DUP4 00003d35: CODECOPY 00003d36: DUP2 00003d37: MLOAD 00003d38: SWAP2 00003d39: MSTORE 00003d3a: SLOAD 00003d3b: SWAP1 00003d3c: PUSH2 0x3cdd 00003d3f: JUMP 00003d40: JUMPDEST 00003d41: SWAP1 00003d42: JUMP 00003d43: JUMPDEST 00003d44: SWAP1 00003d45: PUSH1 0x01 00003d47: DUP3 00003d48: DUP2 00003d49: SHR 00003d4a: SWAP3 00003d4b: AND 00003d4c: DUP1 00003d4d: ISZERO 00003d4e: PUSH2 0x3d71 00003d51: JUMPI 00003d52: JUMPDEST 00003d53: PUSH1 0x20 00003d55: DUP4 00003d56: LT 00003d57: EQ 00003d58: PUSH2 0x3d5d 00003d5b: JUMPI 00003d5c: JUMP 00003d5d: JUMPDEST 00003d5e: PUSH4 0x4e487b71 00003d63: PUSH1 0xe0 00003d65: SHL 00003d66: PUSH0 00003d67: MSTORE 00003d68: PUSH1 0x22 00003d6a: PUSH1 0x04 00003d6c: MSTORE 00003d6d: PUSH1 0x24 00003d6f: PUSH0 00003d70: REVERT 00003d71: JUMPDEST 00003d72: SWAP2 00003d73: PUSH1 0x7f 00003d75: AND 00003d76: SWAP2 00003d77: PUSH2 0x3d52 00003d7a: JUMP 00003d7b: JUMPDEST 00003d7c: SWAP2 00003d7d: SWAP1 00003d7e: DUP3 00003d7f: ADD 00003d80: DUP1 00003d81: SWAP3 00003d82: GT 00003d83: PUSH2 0x0d7a 00003d86: JUMPI 00003d87: JUMP 00003d88: JUMPDEST 00003d89: PUSH1 0x40 00003d8b: DUP1 00003d8c: MLOAD 00003d8d: PUSH4 0x70a08231 00003d92: PUSH1 0xe0 00003d94: SHL 00003d95: DUP1 00003d96: DUP3 00003d97: MSTORE 00003d98: ADDRESS 00003d99: PUSH1 0x04 00003d9b: DUP4 00003d9c: ADD 00003d9d: MSTORE 00003d9e: SWAP2 00003d9f: PUSH1 0x20 00003da1: SWAP2 00003da2: SWAP1 00003da3: DUP3 00003da4: DUP3 00003da5: PUSH1 0x24 00003da7: DUP2 00003da8: PUSH20 0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 00003dbd: GAS 00003dbe: STATICCALL 00003dbf: SWAP2 00003dc0: DUP3 00003dc1: ISZERO 00003dc2: PUSH2 0x3efa 00003dc5: JUMPI 00003dc6: PUSH0 00003dc7: SWAP3 00003dc8: PUSH2 0x3f04 00003dcb: JUMPI 00003dcc: JUMPDEST 00003dcd: POP 00003dce: PUSH2 0x3dd5 00003dd1: PUSH2 0x41ad 00003dd4: JUMP 00003dd5: JUMPDEST 00003dd6: SWAP1 00003dd7: DUP1 00003dd8: MLOAD 00003dd9: SWAP5 00003dda: DUP6 00003ddb: MSTORE 00003ddc: ADDRESS 00003ddd: PUSH1 0x04 00003ddf: DUP7 00003de0: ADD 00003de1: MSTORE 00003de2: DUP4 00003de3: DUP6 00003de4: PUSH1 0x24 00003de6: DUP2 00003de7: PUSH20 0x238a700ed6165261cf8b2e544ba797bc11e466ba 00003dfc: GAS 00003dfd: STATICCALL 00003dfe: SWAP5 00003dff: DUP6 00003e00: ISZERO 00003e01: PUSH2 0x3efa 00003e04: JUMPI 00003e05: PUSH0 00003e06: SWAP6 00003e07: PUSH2 0x3ecb 00003e0a: JUMPI 00003e0b: JUMPDEST 00003e0c: POP 00003e0d: DUP1 00003e0e: MLOAD 00003e0f: PUSH4 0xbb23ae25 00003e14: PUSH1 0xe0 00003e16: SHL 00003e17: DUP2 00003e18: MSTORE 00003e19: DUP5 00003e1a: DUP2 00003e1b: PUSH1 0x04 00003e1d: DUP2 00003e1e: PUSH20 0x8d51dbc85ceef637c97d02bdaabb5e274850e68c 00003e33: GAS 00003e34: STATICCALL 00003e35: SWAP5 00003e36: DUP6 00003e37: ISZERO 00003e38: PUSH2 0x3ec1 00003e3b: JUMPI 00003e3c: PUSH0 00003e3d: SWAP6 00003e3e: PUSH2 0x3e91 00003e41: JUMPI 00003e42: JUMPDEST 00003e43: POP 00003e44: POP 00003e45: PUSH0 00003e46: DUP5 00003e47: SLT 00003e48: PUSH2 0x3e81 00003e4b: JUMPI 00003e4c: POP 00003e4d: PUSH2 0x3e71 00003e50: PUSH2 0x3e78 00003e53: SWAP4 00003e54: PUSH2 0x3e6b 00003e57: PUSH2 0x3d40 00003e5a: SWAP7 00003e5b: SWAP5 00003e5c: PUSH9 0x056bc75e2d63100000 00003e66: SWAP5 00003e67: PUSH2 0x3d7b 00003e6a: JUMP 00003e6b: JUMPDEST 00003e6c: SWAP4 00003e6d: PUSH2 0x3cdd 00003e70: JUMP 00003e71: JUMPDEST 00003e72: DIV 00003e73: SWAP1 00003e74: PUSH2 0x3d7b 00003e77: JUMP 00003e78: JUMPDEST 00003e79: PUSH1 0x12 00003e7b: SLOAD 00003e7c: SWAP1 00003e7d: PUSH2 0x3cd0 00003e80: JUMP 00003e81: JUMPDEST 00003e82: MLOAD 00003e83: PUSH4 0x3253194b 00003e88: PUSH1 0xe2 00003e8a: SHL 00003e8b: DUP2 00003e8c: MSTORE 00003e8d: PUSH1 0x04 00003e8f: SWAP1 00003e90: REVERT 00003e91: JUMPDEST 00003e92: SWAP1 00003e93: DUP1 00003e94: SWAP3 00003e95: SWAP6 00003e96: POP 00003e97: DUP2 00003e98: RETURNDATASIZE 00003e99: DUP4 00003e9a: GT 00003e9b: PUSH2 0x3eba 00003e9e: JUMPI 00003e9f: JUMPDEST 00003ea0: PUSH2 0x3ea9 00003ea3: DUP2 00003ea4: DUP4 00003ea5: PUSH2 0x3c94 00003ea8: JUMP 00003ea9: JUMPDEST 00003eaa: DUP2 00003eab: ADD 00003eac: SUB 00003ead: SLT 00003eae: PUSH2 0x0bfb 00003eb1: JUMPI 00003eb2: MLOAD 00003eb3: SWAP3 00003eb4: PUSH0 00003eb5: DUP1 00003eb6: PUSH2 0x3e42 00003eb9: JUMP 00003eba: JUMPDEST 00003ebb: POP 00003ebc: RETURNDATASIZE 00003ebd: PUSH2 0x3e9f 00003ec0: JUMP 00003ec1: JUMPDEST 00003ec2: DUP3 00003ec3: MLOAD 00003ec4: RETURNDATASIZE 00003ec5: PUSH0 00003ec6: DUP3 00003ec7: RETURNDATACOPY 00003ec8: RETURNDATASIZE 00003ec9: SWAP1 00003eca: REVERT 00003ecb: JUMPDEST 00003ecc: SWAP1 00003ecd: SWAP5 00003ece: POP 00003ecf: DUP4 00003ed0: DUP2 00003ed1: DUP2 00003ed2: RETURNDATASIZE 00003ed3: DUP4 00003ed4: GT 00003ed5: PUSH2 0x3ef3 00003ed8: JUMPI 00003ed9: JUMPDEST 00003eda: PUSH2 0x3ee3 00003edd: DUP2 00003ede: DUP4 00003edf: PUSH2 0x3c94 00003ee2: JUMP 00003ee3: JUMPDEST 00003ee4: DUP2 00003ee5: ADD 00003ee6: SUB 00003ee7: SLT 00003ee8: PUSH2 0x0bfb 00003eeb: JUMPI 00003eec: MLOAD 00003eed: SWAP4 00003eee: PUSH0 00003eef: PUSH2 0x3e0b 00003ef2: JUMP 00003ef3: JUMPDEST 00003ef4: POP 00003ef5: RETURNDATASIZE 00003ef6: PUSH2 0x3ed9 00003ef9: JUMP 00003efa: JUMPDEST 00003efb: POP 00003efc: MLOAD 00003efd: RETURNDATASIZE 00003efe: PUSH0 00003eff: DUP3 00003f00: RETURNDATACOPY 00003f01: RETURNDATASIZE 00003f02: SWAP1 00003f03: REVERT 00003f04: JUMPDEST 00003f05: SWAP1 00003f06: SWAP2 00003f07: POP 00003f08: DUP3 00003f09: DUP2 00003f0a: DUP2 00003f0b: RETURNDATASIZE 00003f0c: DUP4 00003f0d: GT 00003f0e: PUSH2 0x3f2c 00003f11: JUMPI 00003f12: JUMPDEST 00003f13: PUSH2 0x3f1c 00003f16: DUP2 00003f17: DUP4 00003f18: PUSH2 0x3c94 00003f1b: JUMP 00003f1c: JUMPDEST 00003f1d: DUP2 00003f1e: ADD 00003f1f: SUB 00003f20: SLT 00003f21: PUSH2 0x0bfb 00003f24: JUMPI 00003f25: MLOAD 00003f26: SWAP1 00003f27: PUSH0 00003f28: PUSH2 0x3dcc 00003f2b: JUMP 00003f2c: JUMPDEST 00003f2d: POP 00003f2e: RETURNDATASIZE 00003f2f: PUSH2 0x3f12 00003f32: JUMP 00003f33: JUMPDEST 00003f34: PUSH1 0xff 00003f36: PUSH0 00003f37: DUP1 00003f38: MLOAD 00003f39: PUSH1 0x20 00003f3b: PUSH2 0x55da 00003f3e: DUP4 00003f3f: CODECOPY 00003f40: DUP2 00003f41: MLOAD 00003f42: SWAP2 00003f43: MSTORE 00003f44: SLOAD 00003f45: PUSH1 0xa0 00003f47: SHR 00003f48: AND 00003f49: PUSH1 0xff 00003f4b: DUP2 00003f4c: GT 00003f4d: PUSH2 0x0d7a 00003f50: JUMPI 00003f51: SWAP1 00003f52: JUMP 00003f53: JUMPDEST 00003f54: PUSH1 0x10 00003f56: SLOAD 00003f57: PUSH0 00003f58: SWAP2 00003f59: DUP2 00003f5a: PUSH32 0x4995646f72fa9a270ffc094641ab616ce576b2e3eab25eaf05c15caa4f0e595d 00003f7b: TSTORE 00003f7c: TIMESTAMP 00003f7d: PUSH1 0x14 00003f7f: SSTORE 00003f80: PUSH0 00003f81: DUP1 00003f82: MLOAD 00003f83: PUSH1 0x20 00003f85: PUSH2 0x559a 00003f88: DUP4 00003f89: CODECOPY 00003f8a: DUP2 00003f8b: MLOAD 00003f8c: SWAP2 00003f8d: MSTORE 00003f8e: SLOAD 00003f8f: SWAP2 00003f90: DUP3 00003f91: ISZERO 00003f92: PUSH2 0x40b2 00003f95: JUMPI 00003f96: POP 00003f97: PUSH2 0x3f9e 00003f9a: PUSH2 0x3d88 00003f9d: JUMP 00003f9e: JUMPDEST 00003f9f: SWAP2 00003fa0: PUSH32 0x00000000000000000000000000000000000000000000000000000000000f4240 00003fc1: PUSH2 0x3fd3 00003fc4: DUP3 00003fc5: PUSH2 0x3fce 00003fc8: DUP4 00003fc9: DUP8 00003fca: PUSH2 0x3cdd 00003fcd: JUMP 00003fce: JUMPDEST 00003fcf: PUSH2 0x3cf0 00003fd2: JUMP 00003fd3: JUMPDEST 00003fd4: SWAP5 00003fd5: PUSH1 0x11 00003fd7: SLOAD 00003fd8: DUP7 00003fd9: GT 00003fda: PUSH0 00003fdb: EQ 00003fdc: PUSH2 0x407d 00003fdf: JUMPI 00003fe0: POP 00003fe1: PUSH1 0x11 00003fe3: SLOAD 00003fe4: ISZERO 00003fe5: PUSH2 0x406b 00003fe8: JUMPI 00003fe9: SWAP1 00003fea: PUSH2 0x3fce 00003fed: DUP3 00003fee: PUSH2 0x09e0 00003ff1: PUSH2 0x2710 00003ff4: PUSH2 0x401b 00003ff7: PUSH2 0x4012 00003ffa: PUSH2 0x400c 00003ffd: PUSH2 0x4032 00004000: SWAP9 00004001: PUSH2 0x3fce 00004004: DUP10 00004005: PUSH1 0x11 00004007: SLOAD 00004008: PUSH2 0x3cdd 0000400b: JUMP 0000400c: JUMPDEST 0000400d: DUP11 0000400e: PUSH2 0x3cd0 00004011: JUMP 00004012: JUMPDEST 00004013: PUSH1 0x0a 00004015: SLOAD 00004016: SWAP1 00004017: PUSH2 0x3cdd 0000401a: JUMP 0000401b: JUMPDEST 0000401c: DIV 0000401d: DUP1 0000401e: SWAP8 0000401f: PUSH2 0x402a 00004022: DUP3 00004023: PUSH1 0x12 00004025: SLOAD 00004026: PUSH2 0x3d7b 00004029: JUMP 0000402a: JUMPDEST 0000402b: PUSH1 0x12 0000402d: SSTORE 0000402e: PUSH2 0x3cd0 00004031: JUMP 00004032: JUMPDEST 00004033: DUP1 00004034: PUSH1 0x10 00004036: SSTORE 00004037: PUSH1 0x11 00004039: SSTORE 0000403a: JUMPDEST 0000403b: PUSH32 0x83d2ad38a3d31bbc70811535dd8943b0140df344c23e6e167ee1ca32f9a1a459 0000405c: PUSH1 0x40 0000405e: DUP1 0000405f: MLOAD 00004060: DUP6 00004061: DUP2 00004062: MSTORE 00004063: DUP5 00004064: PUSH1 0x20 00004066: DUP3 00004067: ADD 00004068: MSTORE 00004069: LOG1 0000406a: JUMP 0000406b: JUMPDEST 0000406c: POP 0000406d: POP 0000406e: SWAP1 0000406f: POP 00004070: DUP2 00004071: PUSH1 0x11 00004073: SSTORE 00004074: DUP2 00004075: PUSH1 0x10 00004077: SSTORE 00004078: PUSH1 0x12 0000407a: SLOAD 0000407b: SWAP1 0000407c: JUMP 0000407d: JUMPDEST 0000407e: SWAP4 0000407f: POP 00004080: POP 00004081: POP 00004082: PUSH1 0x10 00004084: SLOAD 00004085: DUP4 00004086: DUP1 00004087: DUP3 00004088: GT 00004089: PUSH0 0000408a: EQ 0000408b: PUSH2 0x40a2 0000408e: JUMPI 0000408f: PUSH2 0x4097 00004092: SWAP2 00004093: PUSH2 0x3cd0 00004096: JUMP 00004097: JUMPDEST 00004098: POP 00004099: JUMPDEST 0000409a: DUP3 0000409b: PUSH1 0x10 0000409d: SSTORE 0000409e: PUSH2 0x403a 000040a1: JUMP 000040a2: JUMPDEST 000040a3: SWAP1 000040a4: PUSH2 0x40ac 000040a7: SWAP2 000040a8: PUSH2 0x3cd0 000040ab: JUMP 000040ac: JUMPDEST 000040ad: POP 000040ae: PUSH2 0x4099 000040b1: JUMP 000040b2: JUMPDEST 000040b3: SWAP3 000040b4: POP 000040b5: SWAP1 000040b6: POP 000040b7: PUSH1 0x12 000040b9: SLOAD 000040ba: SWAP1 000040bb: JUMP 000040bc: JUMPDEST 000040bd: DUP2 000040be: PUSH1 0x1f 000040c0: DUP3 000040c1: ADD 000040c2: SLT 000040c3: ISZERO 000040c4: PUSH2 0x0bfb 000040c7: JUMPI 000040c8: DUP1 000040c9: CALLDATALOAD 000040ca: SWAP1 000040cb: PUSH2 0x40d3 000040ce: DUP3 000040cf: PUSH2 0x3cb5 000040d2: JUMP 000040d3: JUMPDEST 000040d4: SWAP3 000040d5: PUSH2 0x40e1 000040d8: PUSH1 0x40 000040da: MLOAD 000040db: SWAP5 000040dc: DUP6 000040dd: PUSH2 0x3c94 000040e0: JUMP 000040e1: JUMPDEST 000040e2: DUP3 000040e3: DUP5 000040e4: MSTORE 000040e5: PUSH1 0x20 000040e7: DUP4 000040e8: DUP4 000040e9: ADD 000040ea: ADD 000040eb: GT 000040ec: PUSH2 0x0bfb 000040ef: JUMPI 000040f0: DUP2 000040f1: PUSH0 000040f2: SWAP3 000040f3: PUSH1 0x20 000040f5: DUP1 000040f6: SWAP4 000040f7: ADD 000040f8: DUP4 000040f9: DUP7 000040fa: ADD 000040fb: CALLDATACOPY 000040fc: DUP4 000040fd: ADD 000040fe: ADD 000040ff: MSTORE 00004100: SWAP1 00004101: JUMP 00004102: JUMPDEST 00004103: DUP1 00004104: MLOAD 00004105: DUP3 00004106: LT 00004107: ISZERO 00004108: PUSH2 0x4116 0000410b: JUMPI 0000410c: PUSH1 0x20 0000410e: SWAP2 0000410f: PUSH1 0x05 00004111: SHL 00004112: ADD 00004113: ADD 00004114: SWAP1 00004115: JUMP 00004116: JUMPDEST 00004117: PUSH4 0x4e487b71 0000411c: PUSH1 0xe0 0000411e: SHL 0000411f: PUSH0 00004120: MSTORE 00004121: PUSH1 0x32 00004123: PUSH1 0x04 00004125: MSTORE 00004126: PUSH1 0x24 00004128: PUSH0 00004129: REVERT 0000412a: JUMPDEST 0000412b: PUSH1 0x01 0000412d: PUSH1 0x01 0000412f: PUSH1 0xa0 00004131: SHL 00004132: SUB 00004133: AND 00004134: PUSH0 00004135: SWAP1 00004136: DUP2 00004137: MSTORE 00004138: PUSH0 00004139: DUP1 0000413a: MLOAD 0000413b: PUSH1 0x20 0000413d: PUSH2 0x553a 00004140: DUP4 00004141: CODECOPY 00004142: DUP2 00004143: MLOAD 00004144: SWAP2 00004145: MSTORE 00004146: PUSH1 0x20 00004148: MSTORE 00004149: PUSH1 0x40 0000414b: SWAP1 0000414c: KECCAK256 0000414d: SLOAD 0000414e: SWAP1 0000414f: JUMP 00004150: JUMPDEST 00004151: PUSH1 0x01 00004153: PUSH1 0x01 00004155: PUSH1 0xa0 00004157: SHL 00004158: SUB 00004159: SWAP2 0000415a: DUP3 0000415b: AND 0000415c: DUP2 0000415d: MSTORE 0000415e: SWAP2 0000415f: AND 00004160: PUSH1 0x20 00004162: DUP3 00004163: ADD 00004164: MSTORE 00004165: PUSH1 0x40 00004167: ADD 00004168: SWAP1 00004169: JUMP 0000416a: JUMPDEST 0000416b: SWAP1 0000416c: PUSH1 0xff 0000416e: DUP1 0000416f: SWAP2 00004170: AND 00004171: SWAP2 00004172: AND 00004173: SUB 00004174: SWAP1 00004175: PUSH1 0xff 00004177: DUP3 00004178: GT 00004179: PUSH2 0x0d7a 0000417c: JUMPI 0000417d: JUMP 0000417e: JUMPDEST 0000417f: PUSH1 0xff 00004181: AND 00004182: PUSH1 0x4d 00004184: DUP2 00004185: GT 00004186: PUSH2 0x0d7a 00004189: JUMPI 0000418a: PUSH1 0x0a 0000418c: EXP 0000418d: SWAP1 0000418e: JUMP 0000418f: JUMPDEST 00004190: PUSH1 0x40 00004192: SWAP2 00004193: SWAP5 00004194: SWAP4 00004195: SWAP3 00004196: PUSH1 0x60 00004198: DUP3 00004199: ADD 0000419a: SWAP6 0000419b: PUSH1 0x01 0000419d: DUP1 0000419e: PUSH1 0xa0 000041a0: SHL 000041a1: SUB 000041a2: AND 000041a3: DUP3 000041a4: MSTORE 000041a5: PUSH1 0x20 000041a7: DUP3 000041a8: ADD 000041a9: MSTORE 000041aa: ADD 000041ab: MSTORE 000041ac: JUMP 000041ad: JUMPDEST 000041ae: PUSH0 000041af: DUP1 000041b0: SLOAD 000041b1: PUSH1 0x40 000041b3: DUP1 000041b4: MLOAD 000041b5: DUP3 000041b6: DUP2 000041b7: MSTORE 000041b8: DUP4 000041b9: DUP1 000041ba: MSTORE 000041bb: SWAP3 000041bc: SWAP4 000041bd: SWAP3 000041be: SWAP2 000041bf: SWAP1 000041c0: PUSH1 0x20 000041c2: DUP1 000041c3: DUP5 000041c4: ADD 000041c5: PUSH32 0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563 000041e6: DUP8 000041e7: JUMPDEST 000041e8: DUP6 000041e9: DUP2 000041ea: LT 000041eb: PUSH2 0x4298 000041ee: JUMPI 000041ef: POP 000041f0: POP 000041f1: DUP5 000041f2: PUSH2 0x41fc 000041f5: SWAP2 000041f6: SUB 000041f7: DUP6 000041f8: PUSH2 0x3c94 000041fb: JUMP 000041fc: JUMPDEST 000041fd: PUSH0 000041fe: SWAP4 000041ff: JUMPDEST 00004200: DUP4 00004201: DUP6 00004202: LT 00004203: PUSH2 0x420d 00004206: JUMPI 00004207: POP 00004208: POP 00004209: POP 0000420a: POP 0000420b: POP 0000420c: JUMP 0000420d: JUMPDEST 0000420e: SWAP1 0000420f: SWAP2 00004210: SWAP3 00004211: SWAP4 00004212: SWAP6 00004213: PUSH0 00004214: DUP4 00004215: PUSH1 0x01 00004217: DUP1 00004218: PUSH1 0xa0 0000421a: SHL 0000421b: SUB 0000421c: PUSH2 0x4225 0000421f: DUP11 00004220: DUP7 00004221: PUSH2 0x4102 00004224: JUMP 00004225: JUMPDEST 00004226: MLOAD 00004227: AND 00004228: PUSH1 0x04 0000422a: DUP8 0000422b: MLOAD 0000422c: DUP1 0000422d: SWAP5 0000422e: DUP2 0000422f: SWAP4 00004230: PUSH3 0x8bb5fb 00004234: PUSH1 0xe4 00004236: SHL 00004237: DUP4 00004238: MSTORE 00004239: GAS 0000423a: CALL 0000423b: SWAP1 0000423c: DUP2 0000423d: ISZERO 0000423e: PUSH2 0x428e 00004241: JUMPI 00004242: PUSH0 00004243: SWAP2 00004244: PUSH2 0x4260 00004247: JUMPI 00004248: JUMPDEST 00004249: POP 0000424a: PUSH2 0x4255 0000424d: SWAP1 0000424e: PUSH1 0x01 00004250: SWAP3 00004251: PUSH2 0x3d7b 00004254: JUMP 00004255: JUMPDEST 00004256: SWAP7 00004257: ADD 00004258: SWAP4 00004259: SWAP3 0000425a: SWAP2 0000425b: SWAP1 0000425c: PUSH2 0x41ff 0000425f: JUMP 00004260: JUMPDEST 00004261: SWAP1 00004262: POP 00004263: DUP4 00004264: DUP2 00004265: DUP2 00004266: RETURNDATASIZE 00004267: DUP4 00004268: GT 00004269: PUSH2 0x4287 0000426c: JUMPI 0000426d: JUMPDEST 0000426e: PUSH2 0x4277 00004271: DUP2 00004272: DUP4 00004273: PUSH2 0x3c94 00004276: JUMP 00004277: JUMPDEST 00004278: DUP2 00004279: ADD 0000427a: SUB 0000427b: SLT 0000427c: PUSH2 0x0bfb 0000427f: JUMPI 00004280: MLOAD 00004281: PUSH1 0x01 00004283: PUSH2 0x4248 00004286: JUMP 00004287: JUMPDEST 00004288: POP 00004289: RETURNDATASIZE 0000428a: PUSH2 0x426d 0000428d: JUMP 0000428e: JUMPDEST 0000428f: DUP6 00004290: MLOAD 00004291: RETURNDATASIZE 00004292: PUSH0 00004293: DUP3 00004294: RETURNDATACOPY 00004295: RETURNDATASIZE 00004296: SWAP1 00004297: REVERT 00004298: JUMPDEST 00004299: DUP2 0000429a: SLOAD 0000429b: DUP4 0000429c: MSTORE 0000429d: SWAP2 0000429e: DUP4 0000429f: ADD 000042a0: SWAP2 000042a1: PUSH1 0x01 000042a3: SWAP2 000042a4: DUP3 000042a5: ADD 000042a6: SWAP2 000042a7: ADD 000042a8: PUSH2 0x41e7 000042ab: JUMP 000042ac: JUMPDEST 000042ad: ISZERO 000042ae: PUSH2 0x42d5 000042b1: JUMPI 000042b2: PUSH1 0x1b 000042b4: SLOAD 000042b5: PUSH0 000042b6: MSTORE 000042b7: PUSH1 0x17 000042b9: PUSH1 0x20 000042bb: MSTORE 000042bc: PUSH1 0x40 000042be: PUSH0 000042bf: KECCAK256 000042c0: SWAP1 000042c1: PUSH1 0x01 000042c3: DUP1 000042c4: PUSH1 0xa0 000042c6: SHL 000042c7: SUB 000042c8: AND 000042c9: PUSH0 000042ca: MSTORE 000042cb: PUSH1 0x20 000042cd: MSTORE 000042ce: PUSH1 0x40 000042d0: PUSH0 000042d1: KECCAK256 000042d2: SLOAD 000042d3: SWAP1 000042d4: JUMP 000042d5: JUMPDEST 000042d6: PUSH1 0x1a 000042d8: SLOAD 000042d9: PUSH0 000042da: MSTORE 000042db: PUSH1 0x17 000042dd: PUSH1 0x20 000042df: MSTORE 000042e0: PUSH1 0x40 000042e2: PUSH0 000042e3: KECCAK256 000042e4: SWAP1 000042e5: PUSH1 0x01 000042e7: DUP1 000042e8: PUSH1 0xa0 000042ea: SHL 000042eb: SUB 000042ec: AND 000042ed: PUSH0 000042ee: MSTORE 000042ef: PUSH1 0x20 000042f1: MSTORE 000042f2: PUSH1 0x40 000042f4: PUSH0 000042f5: KECCAK256 000042f6: SLOAD 000042f7: SWAP1 000042f8: JUMP 000042f9: JUMPDEST 000042fa: PUSH1 0x01 000042fc: PUSH1 0x01 000042fe: PUSH1 0xa0 00004300: SHL 00004301: SUB 00004302: SWAP1 00004303: DUP2 00004304: AND 00004305: SWAP1 00004306: DUP2 00004307: ISZERO 00004308: PUSH2 0x4352 0000430b: JUMPI 0000430c: PUSH0 0000430d: DUP1 0000430e: MLOAD 0000430f: PUSH1 0x20 00004311: PUSH2 0x557a 00004314: DUP4 00004315: CODECOPY 00004316: DUP2 00004317: MLOAD 00004318: SWAP2 00004319: MSTORE 0000431a: DUP1 0000431b: SLOAD 0000431c: PUSH1 0x01 0000431e: PUSH1 0x01 00004320: PUSH1 0xa0 00004322: SHL 00004323: SUB 00004324: NOT 00004325: DUP2 00004326: AND 00004327: DUP5 00004328: OR 00004329: SWAP1 0000432a: SWAP2 0000432b: SSTORE 0000432c: AND 0000432d: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 0000434e: PUSH0 0000434f: DUP1 00004350: LOG3 00004351: JUMP 00004352: JUMPDEST 00004353: PUSH1 0x40 00004355: MLOAD 00004356: PUSH4 0x1e4fbdf7 0000435b: PUSH1 0xe0 0000435d: SHL 0000435e: DUP2 0000435f: MSTORE 00004360: PUSH0 00004361: PUSH1 0x04 00004363: DUP3 00004364: ADD 00004365: MSTORE 00004366: PUSH1 0x24 00004368: SWAP1 00004369: REVERT 0000436a: JUMPDEST 0000436b: PUSH0 0000436c: DUP1 0000436d: MLOAD 0000436e: PUSH1 0x20 00004370: PUSH2 0x557a 00004373: DUP4 00004374: CODECOPY 00004375: DUP2 00004376: MLOAD 00004377: SWAP2 00004378: MSTORE 00004379: SLOAD 0000437a: PUSH1 0x01 0000437c: PUSH1 0x01 0000437e: PUSH1 0xa0 00004380: SHL 00004381: SUB 00004382: AND 00004383: CALLER 00004384: SUB 00004385: PUSH2 0x438a 00004388: JUMPI 00004389: JUMP 0000438a: JUMPDEST 0000438b: PUSH1 0x40 0000438d: MLOAD 0000438e: PUSH4 0x118cdaa7 00004393: PUSH1 0xe0 00004395: SHL 00004396: DUP2 00004397: MSTORE 00004398: CALLER 00004399: PUSH1 0x04 0000439b: DUP3 0000439c: ADD 0000439d: MSTORE 0000439e: PUSH1 0x24 000043a0: SWAP1 000043a1: REVERT 000043a2: JUMPDEST 000043a3: PUSH2 0x43aa 000043a6: PUSH2 0x3d0e 000043a9: JUMP 000043aa: JUMPDEST 000043ab: PUSH1 0x01 000043ad: DUP2 000043ae: ADD 000043af: DUP1 000043b0: SWAP2 000043b1: GT 000043b2: PUSH2 0x0d7a 000043b5: JUMPI 000043b6: PUSH0 000043b7: DUP1 000043b8: MLOAD 000043b9: PUSH1 0x20 000043bb: PUSH2 0x559a 000043be: DUP4 000043bf: CODECOPY 000043c0: DUP2 000043c1: MLOAD 000043c2: SWAP2 000043c3: MSTORE 000043c4: SLOAD 000043c5: SWAP1 000043c6: PUSH1 0x01 000043c8: DUP3 000043c9: ADD 000043ca: DUP1 000043cb: SWAP3 000043cc: GT 000043cd: PUSH2 0x0d7a 000043d0: JUMPI 000043d1: PUSH2 0x3d40 000043d4: SWAP3 000043d5: PUSH2 0x494d 000043d8: JUMP 000043d9: JUMPDEST 000043da: PUSH0 000043db: DUP1 000043dc: MLOAD 000043dd: PUSH1 0x20 000043df: PUSH2 0x559a 000043e2: DUP4 000043e3: CODECOPY 000043e4: DUP2 000043e5: MLOAD 000043e6: SWAP2 000043e7: MSTORE 000043e8: SLOAD 000043e9: PUSH1 0x01 000043eb: DUP2 000043ec: ADD 000043ed: DUP1 000043ee: SWAP2 000043ef: GT 000043f0: PUSH2 0x0d7a 000043f3: JUMPI 000043f4: PUSH2 0x43fb 000043f7: PUSH2 0x3d0e 000043fa: JUMP 000043fb: JUMPDEST 000043fc: SWAP1 000043fd: PUSH1 0x01 000043ff: DUP3 00004400: ADD 00004401: DUP1 00004402: SWAP3 00004403: GT 00004404: PUSH2 0x0d7a 00004407: JUMPI 00004408: PUSH2 0x3d40 0000440b: SWAP3 0000440c: PUSH2 0x494d 0000440f: JUMP 00004410: JUMPDEST 00004411: PUSH0 00004412: DUP1 00004413: MLOAD 00004414: PUSH1 0x20 00004416: PUSH2 0x563a 00004419: DUP4 0000441a: CODECOPY 0000441b: DUP2 0000441c: MLOAD 0000441d: SWAP2 0000441e: MSTORE 0000441f: DUP1 00004420: TLOAD 00004421: PUSH2 0x442a 00004424: JUMPI 00004425: PUSH1 0x01 00004427: SWAP1 00004428: TSTORE 00004429: JUMP 0000442a: JUMPDEST 0000442b: PUSH1 0x40 0000442d: MLOAD 0000442e: PUSH4 0x3ee5aeb5 00004433: PUSH1 0xe0 00004435: SHL 00004436: DUP2 00004437: MSTORE 00004438: PUSH1 0x04 0000443a: SWAP1 0000443b: REVERT 0000443c: JUMPDEST 0000443d: PUSH1 0xff 0000443f: PUSH0 00004440: DUP1 00004441: MLOAD 00004442: PUSH1 0x20 00004444: PUSH2 0x55fa 00004447: DUP4 00004448: CODECOPY 00004449: DUP2 0000444a: MLOAD 0000444b: SWAP2 0000444c: MSTORE 0000444d: SLOAD 0000444e: AND 0000444f: PUSH2 0x4454 00004452: JUMPI 00004453: JUMP 00004454: JUMPDEST 00004455: PUSH1 0x40 00004457: MLOAD 00004458: PUSH4 0xd93c0665 0000445d: PUSH1 0xe0 0000445f: SHL 00004460: DUP2 00004461: MSTORE 00004462: PUSH1 0x04 00004464: SWAP1 00004465: REVERT 00004466: JUMPDEST 00004467: SWAP2 00004468: PUSH1 0x01 0000446a: PUSH1 0x01 0000446c: PUSH1 0xa0 0000446e: SHL 0000446f: SUB 00004470: DUP1 00004471: DUP5 00004472: AND 00004473: SWAP3 00004474: DUP4 00004475: ISZERO 00004476: PUSH2 0x4510 00004479: JUMPI 0000447a: AND 0000447b: SWAP3 0000447c: DUP4 0000447d: ISZERO 0000447e: PUSH2 0x44f8 00004481: JUMPI 00004482: DUP3 00004483: PUSH0 00004484: MSTORE 00004485: PUSH0 00004486: DUP1 00004487: MLOAD 00004488: PUSH1 0x20 0000448a: PUSH2 0x553a 0000448d: DUP4 0000448e: CODECOPY 0000448f: DUP2 00004490: MLOAD 00004491: SWAP2 00004492: MSTORE 00004493: DUP1 00004494: PUSH1 0x20 00004496: MSTORE 00004497: PUSH1 0x40 00004499: PUSH0 0000449a: KECCAK256 0000449b: SLOAD 0000449c: SWAP2 0000449d: DUP4 0000449e: DUP4 0000449f: LT 000044a0: PUSH2 0x44d9 000044a3: JUMPI 000044a4: POP 000044a5: SWAP2 000044a6: DUP1 000044a7: PUSH1 0x20 000044a9: SWAP3 000044aa: PUSH0 000044ab: DUP1 000044ac: MLOAD 000044ad: PUSH1 0x20 000044af: PUSH2 0x55ba 000044b2: DUP4 000044b3: CODECOPY 000044b4: DUP2 000044b5: MLOAD 000044b6: SWAP2 000044b7: MSTORE 000044b8: SWAP5 000044b9: DUP7 000044ba: PUSH0 000044bb: MSTORE 000044bc: DUP5 000044bd: MSTORE 000044be: SUB 000044bf: PUSH1 0x40 000044c1: PUSH0 000044c2: KECCAK256 000044c3: SSTORE 000044c4: DUP5 000044c5: PUSH0 000044c6: MSTORE 000044c7: PUSH1 0x40 000044c9: PUSH0 000044ca: KECCAK256 000044cb: DUP2 000044cc: DUP2 000044cd: SLOAD 000044ce: ADD 000044cf: SWAP1 000044d0: SSTORE 000044d1: PUSH1 0x40 000044d3: MLOAD 000044d4: SWAP1 000044d5: DUP2 000044d6: MSTORE 000044d7: LOG3 000044d8: JUMP 000044d9: JUMPDEST 000044da: SWAP1 000044db: POP 000044dc: PUSH2 0x129f 000044df: DUP4 000044e0: PUSH1 0x40 000044e2: MLOAD 000044e3: SWAP4 000044e4: DUP5 000044e5: SWAP4 000044e6: PUSH4 0x391434e3 000044eb: PUSH1 0xe2 000044ed: SHL 000044ee: DUP6 000044ef: MSTORE 000044f0: PUSH1 0x04 000044f2: DUP6 000044f3: ADD 000044f4: PUSH2 0x418f 000044f7: JUMP 000044f8: JUMPDEST 000044f9: PUSH1 0x40 000044fb: MLOAD 000044fc: PUSH4 0xec442f05 00004501: PUSH1 0xe0 00004503: SHL 00004504: DUP2 00004505: MSTORE 00004506: PUSH0 00004507: PUSH1 0x04 00004509: DUP3 0000450a: ADD 0000450b: MSTORE 0000450c: PUSH1 0x24 0000450e: SWAP1 0000450f: REVERT 00004510: JUMPDEST 00004511: PUSH1 0x40 00004513: MLOAD 00004514: PUSH4 0x4b637e8f 00004519: PUSH1 0xe1 0000451b: SHL 0000451c: DUP2 0000451d: MSTORE 0000451e: PUSH0 0000451f: PUSH1 0x04 00004521: DUP3 00004522: ADD 00004523: MSTORE 00004524: PUSH1 0x24 00004526: SWAP1 00004527: REVERT 00004528: JUMPDEST 00004529: PUSH2 0x4531 0000452c: DUP2 0000452d: PUSH2 0x3b98 00004530: JUMP 00004531: JUMPDEST 00004532: SWAP1 00004533: PUSH1 0x01 00004535: DUP1 00004536: PUSH1 0xa0 00004538: SHL 00004539: SUB 0000453a: DUP1 0000453b: DUP5 0000453c: AND 0000453d: SWAP3 0000453e: DUP4 0000453f: PUSH0 00004540: MSTORE 00004541: PUSH1 0x20 00004543: MSTORE 00004544: PUSH1 0x40 00004546: PUSH0 00004547: KECCAK256 00004548: SLOAD 00004549: SWAP4 0000454a: PUSH0 0000454b: NOT 0000454c: DUP6 0000454d: LT 0000454e: PUSH2 0x455a 00004551: JUMPI 00004552: JUMPDEST 00004553: POP 00004554: POP 00004555: POP 00004556: POP 00004557: POP 00004558: POP 00004559: JUMP 0000455a: JUMPDEST 0000455b: DUP6 0000455c: DUP6 0000455d: LT 0000455e: PUSH2 0x458f 00004561: JUMPI 00004562: POP 00004563: DUP2 00004564: AND 00004565: ISZERO 00004566: PUSH2 0x38ec 00004569: JUMPI 0000456a: DUP2 0000456b: ISZERO 0000456c: PUSH2 0x38d4 0000456f: JUMPI 00004570: PUSH2 0x4578 00004573: SWAP1 00004574: PUSH2 0x3b98 00004577: JUMP 00004578: JUMPDEST 00004579: SWAP1 0000457a: PUSH0 0000457b: MSTORE 0000457c: PUSH1 0x20 0000457e: MSTORE 0000457f: SUB 00004580: PUSH1 0x40 00004582: PUSH0 00004583: KECCAK256 00004584: SSTORE 00004585: PUSH0 00004586: DUP1 00004587: DUP1 00004588: DUP1 00004589: DUP1 0000458a: DUP1 0000458b: PUSH2 0x4552 0000458e: JUMP 0000458f: JUMPDEST 00004590: DUP5 00004591: SWAP1 00004592: PUSH2 0x129f 00004595: DUP8 00004596: PUSH1 0x40 00004598: MLOAD 00004599: SWAP4 0000459a: DUP5 0000459b: SWAP4 0000459c: PUSH4 0x7dc7a0d9 000045a1: PUSH1 0xe1 000045a3: SHL 000045a4: DUP6 000045a5: MSTORE 000045a6: PUSH1 0x04 000045a8: DUP6 000045a9: ADD 000045aa: PUSH2 0x418f 000045ad: JUMP 000045ae: JUMPDEST 000045af: PUSH1 0x01 000045b1: PUSH1 0x01 000045b3: PUSH1 0xa0 000045b5: SHL 000045b6: SUB 000045b7: AND 000045b8: SWAP1 000045b9: DUP2 000045ba: ISZERO 000045bb: PUSH2 0x44f8 000045be: JUMPI 000045bf: PUSH0 000045c0: DUP1 000045c1: MLOAD 000045c2: PUSH1 0x20 000045c4: PUSH2 0x55ba 000045c7: DUP4 000045c8: CODECOPY 000045c9: DUP2 000045ca: MLOAD 000045cb: SWAP2 000045cc: MSTORE 000045cd: PUSH1 0x20 000045cf: PUSH0 000045d0: SWAP3 000045d1: PUSH0 000045d2: DUP1 000045d3: MLOAD 000045d4: PUSH1 0x20 000045d6: PUSH2 0x559a 000045d9: DUP4 000045da: CODECOPY 000045db: DUP2 000045dc: MLOAD 000045dd: SWAP2 000045de: MSTORE 000045df: PUSH2 0x45e9 000045e2: DUP3 000045e3: DUP3 000045e4: SLOAD 000045e5: PUSH2 0x3d7b 000045e8: JUMP 000045e9: JUMPDEST 000045ea: SWAP1 000045eb: SSTORE 000045ec: DUP5 000045ed: DUP5 000045ee: MSTORE 000045ef: PUSH0 000045f0: DUP1 000045f1: MLOAD 000045f2: PUSH1 0x20 000045f4: PUSH2 0x553a 000045f7: DUP4 000045f8: CODECOPY 000045f9: DUP2 000045fa: MLOAD 000045fb: SWAP2 000045fc: MSTORE 000045fd: DUP3 000045fe: MSTORE 000045ff: PUSH1 0x40 00004601: DUP5 00004602: KECCAK256 00004603: DUP2 00004604: DUP2 00004605: SLOAD 00004606: ADD 00004607: SWAP1 00004608: SSTORE 00004609: PUSH1 0x40 0000460b: MLOAD 0000460c: SWAP1 0000460d: DUP2 0000460e: MSTORE 0000460f: LOG3 00004610: JUMP 00004611: JUMPDEST 00004612: PUSH1 0x40 00004614: MLOAD 00004615: PUSH4 0xa9059cbb 0000461a: PUSH1 0xe0 0000461c: SHL 0000461d: PUSH1 0x20 0000461f: DUP3 00004620: ADD 00004621: MSTORE 00004622: PUSH1 0x01 00004624: PUSH1 0x01 00004626: PUSH1 0xa0 00004628: SHL 00004629: SUB 0000462a: SWAP3 0000462b: SWAP1 0000462c: SWAP3 0000462d: AND 0000462e: PUSH1 0x24 00004630: DUP4 00004631: ADD 00004632: MSTORE 00004633: PUSH1 0x44 00004635: DUP1 00004636: DUP4 00004637: ADD 00004638: SWAP4 00004639: SWAP1 0000463a: SWAP4 0000463b: MSTORE 0000463c: SWAP2 0000463d: DUP2 0000463e: MSTORE 0000463f: PUSH2 0x464d 00004642: SWAP2 00004643: PUSH2 0x0b94 00004646: PUSH1 0x64 00004648: DUP4 00004649: PUSH2 0x3c94 0000464c: JUMP 0000464d: JUMPDEST 0000464e: JUMP 0000464f: JUMPDEST 00004650: SWAP2 00004651: PUSH2 0x465b 00004654: DUP2 00004655: DUP4 00004656: DUP6 00004657: PUSH2 0x494d 0000465a: JUMP 0000465b: JUMPDEST 0000465c: SWAP2 0000465d: DUP2 0000465e: ISZERO 0000465f: PUSH2 0x3cfa 00004662: JUMPI 00004663: PUSH2 0x3d40 00004666: SWAP4 00004667: MULMOD 00004668: ISZERO 00004669: ISZERO 0000466a: SWAP1 0000466b: PUSH2 0x3d7b 0000466e: JUMP 0000466f: JUMPDEST 00004670: PUSH0 00004671: SLOAD 00004672: DUP2 00004673: LT 00004674: ISZERO 00004675: PUSH2 0x4116 00004678: JUMPI 00004679: PUSH0 0000467a: DUP1 0000467b: MSTORE 0000467c: PUSH1 0x20 0000467e: PUSH0 0000467f: KECCAK256 00004680: ADD 00004681: SWAP1 00004682: PUSH0 00004683: SWAP1 00004684: JUMP 00004685: JUMPDEST 00004686: PUSH1 0x15 00004688: SLOAD 00004689: DUP2 0000468a: LT 0000468b: ISZERO 0000468c: PUSH2 0x4116 0000468f: JUMPI 00004690: PUSH1 0x15 00004692: PUSH0 00004693: MSTORE 00004694: PUSH1 0x20 00004696: PUSH0 00004697: KECCAK256 00004698: ADD 00004699: SWAP1 0000469a: PUSH0 0000469b: SWAP1 0000469c: JUMP 0000469d: JUMPDEST 0000469e: PUSH0 0000469f: DUP2 000046a0: DUP2 000046a1: MSTORE 000046a2: PUSH1 0x01 000046a4: PUSH1 0x20 000046a6: MSTORE 000046a7: PUSH1 0x40 000046a9: SWAP1 000046aa: KECCAK256 000046ab: SLOAD 000046ac: DUP1 000046ad: ISZERO 000046ae: PUSH2 0x4769 000046b1: JUMPI 000046b2: PUSH0 000046b3: NOT 000046b4: SWAP1 000046b5: DUP1 000046b6: DUP3 000046b7: ADD 000046b8: DUP2 000046b9: DUP2 000046ba: GT 000046bb: PUSH2 0x0d7a 000046be: JUMPI 000046bf: PUSH0 000046c0: SLOAD 000046c1: SWAP1 000046c2: DUP4 000046c3: DUP3 000046c4: ADD 000046c5: SWAP2 000046c6: DUP3 000046c7: GT 000046c8: PUSH2 0x0d7a 000046cb: JUMPI 000046cc: DUP2 000046cd: DUP2 000046ce: SUB 000046cf: PUSH2 0x471f 000046d2: JUMPI 000046d3: JUMPDEST 000046d4: POP 000046d5: POP 000046d6: POP 000046d7: PUSH0 000046d8: SLOAD 000046d9: DUP1 000046da: ISZERO 000046db: PUSH2 0x470b 000046de: JUMPI 000046df: DUP2 000046e0: ADD 000046e1: SWAP1 000046e2: PUSH2 0x46ea 000046e5: DUP3 000046e6: PUSH2 0x466f 000046e9: JUMP 000046ea: JUMPDEST 000046eb: SWAP1 000046ec: SWAP2 000046ed: DUP3 000046ee: SLOAD 000046ef: SWAP2 000046f0: PUSH1 0x03 000046f2: SHL 000046f3: SHL 000046f4: NOT 000046f5: AND 000046f6: SWAP1 000046f7: SSTORE 000046f8: PUSH0 000046f9: SSTORE 000046fa: PUSH0 000046fb: MSTORE 000046fc: PUSH1 0x01 000046fe: PUSH1 0x20 00004700: MSTORE 00004701: PUSH0 00004702: PUSH1 0x40 00004704: DUP2 00004705: KECCAK256 00004706: SSTORE 00004707: PUSH1 0x01 00004709: SWAP1 0000470a: JUMP 0000470b: JUMPDEST 0000470c: PUSH4 0x4e487b71 00004711: PUSH1 0xe0 00004713: SHL 00004714: PUSH0 00004715: MSTORE 00004716: PUSH1 0x31 00004718: PUSH1 0x04 0000471a: MSTORE 0000471b: PUSH1 0x24 0000471d: PUSH0 0000471e: REVERT 0000471f: JUMPDEST 00004720: PUSH2 0x4753 00004723: PUSH2 0x472e 00004726: PUSH2 0x473d 00004729: SWAP4 0000472a: PUSH2 0x466f 0000472d: JUMP 0000472e: JUMPDEST 0000472f: SWAP1 00004730: SLOAD 00004731: SWAP1 00004732: PUSH1 0x03 00004734: SHL 00004735: SHR 00004736: SWAP3 00004737: DUP4 00004738: SWAP3 00004739: PUSH2 0x466f 0000473c: JUMP 0000473d: JUMPDEST 0000473e: DUP2 0000473f: SWAP4 00004740: SWAP2 00004741: SLOAD 00004742: SWAP1 00004743: PUSH1 0x03 00004745: SHL 00004746: SWAP2 00004747: DUP3 00004748: SHL 00004749: SWAP2 0000474a: PUSH0 0000474b: NOT 0000474c: SWAP1 0000474d: SHL 0000474e: NOT 0000474f: AND 00004750: OR 00004751: SWAP1 00004752: JUMP 00004753: JUMPDEST 00004754: SWAP1 00004755: SSTORE 00004756: PUSH0 00004757: MSTORE 00004758: PUSH1 0x01 0000475a: PUSH1 0x20 0000475c: MSTORE 0000475d: PUSH1 0x40 0000475f: PUSH0 00004760: KECCAK256 00004761: SSTORE 00004762: PUSH0 00004763: DUP1 00004764: DUP1 00004765: PUSH2 0x46d3 00004768: JUMP 00004769: JUMPDEST 0000476a: POP 0000476b: POP 0000476c: PUSH0 0000476d: SWAP1 0000476e: JUMP 0000476f: JUMPDEST 00004770: PUSH0 00004771: DUP2 00004772: DUP2 00004773: MSTORE 00004774: PUSH1 0x16 00004776: PUSH1 0x20 00004778: MSTORE 00004779: PUSH1 0x40 0000477b: SWAP1 0000477c: KECCAK256 0000477d: SLOAD 0000477e: DUP1 0000477f: ISZERO 00004780: PUSH2 0x4769 00004783: JUMPI 00004784: PUSH0 00004785: NOT 00004786: SWAP1 00004787: DUP1 00004788: DUP3 00004789: ADD 0000478a: DUP2 0000478b: DUP2 0000478c: GT 0000478d: PUSH2 0x0d7a 00004790: JUMPI 00004791: PUSH1 0x15 00004793: SLOAD 00004794: SWAP1 00004795: DUP4 00004796: DUP3 00004797: ADD 00004798: SWAP2 00004799: DUP3 0000479a: GT 0000479b: PUSH2 0x0d7a 0000479e: JUMPI 0000479f: DUP2 000047a0: DUP2 000047a1: SUB 000047a2: PUSH2 0x47e0 000047a5: JUMPI 000047a6: JUMPDEST 000047a7: POP 000047a8: POP 000047a9: POP 000047aa: PUSH1 0x15 000047ac: SLOAD 000047ad: DUP1 000047ae: ISZERO 000047af: PUSH2 0x470b 000047b2: JUMPI 000047b3: DUP2 000047b4: ADD 000047b5: SWAP1 000047b6: PUSH2 0x47be 000047b9: DUP3 000047ba: PUSH2 0x4685 000047bd: JUMP 000047be: JUMPDEST 000047bf: SWAP1 000047c0: SWAP2 000047c1: DUP3 000047c2: SLOAD 000047c3: SWAP2 000047c4: PUSH1 0x03 000047c6: SHL 000047c7: SHL 000047c8: NOT 000047c9: AND 000047ca: SWAP1 000047cb: SSTORE 000047cc: PUSH1 0x15 000047ce: SSTORE 000047cf: PUSH0 000047d0: MSTORE 000047d1: PUSH1 0x16 000047d3: PUSH1 0x20 000047d5: MSTORE 000047d6: PUSH0 000047d7: PUSH1 0x40 000047d9: DUP2 000047da: KECCAK256 000047db: SSTORE 000047dc: PUSH1 0x01 000047de: SWAP1 000047df: JUMP 000047e0: JUMPDEST 000047e1: PUSH2 0x47fe 000047e4: PUSH2 0x47ef 000047e7: PUSH2 0x473d 000047ea: SWAP4 000047eb: PUSH2 0x4685 000047ee: JUMP 000047ef: JUMPDEST 000047f0: SWAP1 000047f1: SLOAD 000047f2: SWAP1 000047f3: PUSH1 0x03 000047f5: SHL 000047f6: SHR 000047f7: SWAP3 000047f8: DUP4 000047f9: SWAP3 000047fa: PUSH2 0x4685 000047fd: JUMP 000047fe: JUMPDEST 000047ff: SWAP1 00004800: SSTORE 00004801: PUSH0 00004802: MSTORE 00004803: PUSH1 0x16 00004805: PUSH1 0x20 00004807: MSTORE 00004808: PUSH1 0x40 0000480a: PUSH0 0000480b: KECCAK256 0000480c: SSTORE 0000480d: PUSH0 0000480e: DUP1 0000480f: DUP1 00004810: PUSH2 0x47a6 00004813: JUMP 00004814: JUMPDEST 00004815: SWAP1 00004816: PUSH0 00004817: PUSH1 0x20 00004819: SWAP2 0000481a: DUP3 0000481b: DUP2 0000481c: MLOAD 0000481d: SWAP2 0000481e: ADD 0000481f: DUP3 00004820: DUP6 00004821: GAS 00004822: CALL 00004823: ISZERO 00004824: PUSH2 0x1f1f 00004827: JUMPI 00004828: PUSH0 00004829: MLOAD 0000482a: RETURNDATASIZE 0000482b: PUSH2 0x4865 0000482e: JUMPI 0000482f: POP 00004830: PUSH1 0x01 00004832: PUSH1 0x01 00004834: PUSH1 0xa0 00004836: SHL 00004837: SUB 00004838: DUP2 00004839: AND 0000483a: EXTCODESIZE 0000483b: ISZERO 0000483c: JUMPDEST 0000483d: PUSH2 0x4843 00004840: JUMPI 00004841: POP 00004842: JUMP 00004843: JUMPDEST 00004844: PUSH1 0x40 00004846: MLOAD 00004847: PUSH4 0x5274afe7 0000484c: PUSH1 0xe0 0000484e: SHL 0000484f: DUP2 00004850: MSTORE 00004851: PUSH1 0x01 00004853: PUSH1 0x01 00004855: PUSH1 0xa0 00004857: SHL 00004858: SUB 00004859: SWAP1 0000485a: SWAP2 0000485b: AND 0000485c: PUSH1 0x04 0000485e: DUP3 0000485f: ADD 00004860: MSTORE 00004861: PUSH1 0x24 00004863: SWAP1 00004864: REVERT 00004865: JUMPDEST 00004866: PUSH1 0x01 00004868: EQ 00004869: ISZERO 0000486a: PUSH2 0x483c 0000486d: JUMP 0000486e: JUMPDEST 0000486f: PUSH1 0xff 00004871: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 00004892: SLOAD 00004893: PUSH1 0x40 00004895: SHR 00004896: AND 00004897: ISZERO 00004898: PUSH2 0x489d 0000489b: JUMPI 0000489c: JUMP 0000489d: JUMPDEST 0000489e: PUSH1 0x40 000048a0: MLOAD 000048a1: PUSH4 0x1afcd79f 000048a6: PUSH1 0xe3 000048a8: SHL 000048a9: DUP2 000048aa: MSTORE 000048ab: PUSH1 0x04 000048ad: SWAP1 000048ae: REVERT 000048af: JUMPDEST 000048b0: DUP1 000048b1: PUSH0 000048b2: MSTORE 000048b3: PUSH1 0x16 000048b5: PUSH1 0x20 000048b7: MSTORE 000048b8: PUSH1 0x40 000048ba: PUSH0 000048bb: KECCAK256 000048bc: SLOAD 000048bd: ISZERO 000048be: PUSH0 000048bf: EQ 000048c0: PUSH2 0x48fd 000048c3: JUMPI 000048c4: PUSH1 0x15 000048c6: SLOAD 000048c7: PUSH1 0x01 000048c9: PUSH1 0x40 000048cb: SHL 000048cc: DUP2 000048cd: LT 000048ce: ISZERO 000048cf: PUSH2 0x0ba1 000048d2: JUMPI 000048d3: PUSH2 0x48e6 000048d6: PUSH2 0x473d 000048d9: DUP3 000048da: PUSH1 0x01 000048dc: DUP6 000048dd: SWAP5 000048de: ADD 000048df: PUSH1 0x15 000048e1: SSTORE 000048e2: PUSH2 0x4685 000048e5: JUMP 000048e6: JUMPDEST 000048e7: SWAP1 000048e8: SSTORE 000048e9: PUSH1 0x15 000048eb: SLOAD 000048ec: SWAP1 000048ed: PUSH0 000048ee: MSTORE 000048ef: PUSH1 0x16 000048f1: PUSH1 0x20 000048f3: MSTORE 000048f4: PUSH1 0x40 000048f6: PUSH0 000048f7: KECCAK256 000048f8: SSTORE 000048f9: PUSH1 0x01 000048fb: SWAP1 000048fc: JUMP 000048fd: JUMPDEST 000048fe: POP 000048ff: PUSH0 00004900: SWAP1 00004901: JUMP 00004902: JUMPDEST 00004903: DUP1 00004904: PUSH0 00004905: MSTORE 00004906: PUSH1 0x01 00004908: PUSH1 0x20 0000490a: MSTORE 0000490b: PUSH1 0x40 0000490d: PUSH0 0000490e: KECCAK256 0000490f: SLOAD 00004910: ISZERO 00004911: PUSH0 00004912: EQ 00004913: PUSH2 0x48fd 00004916: JUMPI 00004917: PUSH0 00004918: SLOAD 00004919: PUSH1 0x01 0000491b: PUSH1 0x40 0000491d: SHL 0000491e: DUP2 0000491f: LT 00004920: ISZERO 00004921: PUSH2 0x0ba1 00004924: JUMPI 00004925: PUSH2 0x4937 00004928: PUSH2 0x473d 0000492b: DUP3 0000492c: PUSH1 0x01 0000492e: DUP6 0000492f: SWAP5 00004930: ADD 00004931: PUSH0 00004932: SSTORE 00004933: PUSH2 0x466f 00004936: JUMP 00004937: JUMPDEST 00004938: SWAP1 00004939: SSTORE 0000493a: PUSH0 0000493b: SLOAD 0000493c: SWAP1 0000493d: PUSH0 0000493e: MSTORE 0000493f: PUSH1 0x01 00004941: PUSH1 0x20 00004943: MSTORE 00004944: PUSH1 0x40 00004946: PUSH0 00004947: KECCAK256 00004948: SSTORE 00004949: PUSH1 0x01 0000494b: SWAP1 0000494c: JUMP 0000494d: JUMPDEST 0000494e: SWAP1 0000494f: SWAP2 00004950: PUSH0 00004951: NOT 00004952: DUP4 00004953: DUP4 00004954: MULMOD 00004955: SWAP3 00004956: DUP1 00004957: DUP4 00004958: MUL 00004959: SWAP3 0000495a: DUP4 0000495b: DUP1 0000495c: DUP7 0000495d: LT 0000495e: SWAP6 0000495f: SUB 00004960: SWAP5 00004961: DUP1 00004962: DUP7 00004963: SUB 00004964: SWAP6 00004965: EQ 00004966: PUSH2 0x49d9 00004969: JUMPI 0000496a: DUP5 0000496b: DUP4 0000496c: GT 0000496d: ISZERO 0000496e: PUSH2 0x49c1 00004971: JUMPI 00004972: SWAP1 00004973: DUP3 00004974: SWAP2 00004975: MULMOD 00004976: DUP2 00004977: PUSH0 00004978: SUB 00004979: DUP3 0000497a: AND 0000497b: DUP1 0000497c: SWAP3 0000497d: DIV 0000497e: PUSH1 0x02 00004980: DUP1 00004981: DUP3 00004982: PUSH1 0x03 00004984: MUL 00004985: XOR 00004986: DUP1 00004987: DUP4 00004988: MUL 00004989: DUP3 0000498a: SUB 0000498b: MUL 0000498c: DUP1 0000498d: DUP4 0000498e: MUL 0000498f: DUP3 00004990: SUB 00004991: MUL 00004992: DUP1 00004993: DUP4 00004994: MUL 00004995: DUP3 00004996: SUB 00004997: MUL 00004998: DUP1 00004999: DUP4 0000499a: MUL 0000499b: DUP3 0000499c: SUB 0000499d: MUL 0000499e: DUP1 0000499f: DUP4 000049a0: MUL 000049a1: DUP3 000049a2: SUB 000049a3: MUL 000049a4: DUP1 000049a5: SWAP3 000049a6: MUL 000049a7: SWAP1 000049a8: SUB 000049a9: MUL 000049aa: SWAP4 000049ab: PUSH1 0x01 000049ad: DUP4 000049ae: DUP1 000049af: PUSH0 000049b0: SUB 000049b1: DIV 000049b2: ADD 000049b3: SWAP1 000049b4: DUP5 000049b5: DUP4 000049b6: GT 000049b7: SWAP1 000049b8: SUB 000049b9: MUL 000049ba: SWAP3 000049bb: SUB 000049bc: DIV 000049bd: OR 000049be: MUL 000049bf: SWAP1 000049c0: JUMP 000049c1: JUMPDEST 000049c2: DUP3 000049c3: PUSH4 0x4e487b71 000049c8: PUSH0 000049c9: MSTORE 000049ca: ISZERO 000049cb: PUSH1 0x03 000049cd: MUL 000049ce: PUSH1 0x11 000049d0: XOR 000049d1: PUSH1 0x20 000049d3: MSTORE 000049d4: PUSH1 0x24 000049d6: PUSH1 0x1c 000049d8: REVERT 000049d9: JUMPDEST 000049da: POP 000049db: POP 000049dc: SWAP1 000049dd: PUSH2 0x3d40 000049e0: SWAP3 000049e1: POP 000049e2: PUSH2 0x3cf0 000049e5: JUMP 000049e6: JUMPDEST 000049e7: PUSH0 000049e8: DUP1 000049e9: SWAP2 000049ea: PUSH1 0x40 000049ec: MLOAD 000049ed: PUSH1 0x20 000049ef: DUP2 000049f0: ADD 000049f1: SWAP1 000049f2: PUSH4 0x313ce567 000049f7: PUSH1 0xe0 000049f9: SHL 000049fa: DUP3 000049fb: MSTORE 000049fc: PUSH1 0x04 000049fe: DUP2 000049ff: MSTORE 00004a00: PUSH2 0x4a08 00004a03: DUP2 00004a04: PUSH2 0x3c79 00004a07: JUMP 00004a08: JUMPDEST 00004a09: MLOAD 00004a0a: SWAP2 00004a0b: PUSH1 0x01 00004a0d: PUSH1 0x01 00004a0f: PUSH1 0xa0 00004a11: SHL 00004a12: SUB 00004a13: AND 00004a14: GAS 00004a15: STATICCALL 00004a16: RETURNDATASIZE 00004a17: ISZERO 00004a18: PUSH2 0x4a7f 00004a1b: JUMPI 00004a1c: RETURNDATASIZE 00004a1d: SWAP1 00004a1e: PUSH2 0x4a26 00004a21: DUP3 00004a22: PUSH2 0x3cb5 00004a25: JUMP 00004a26: JUMPDEST 00004a27: SWAP2 00004a28: PUSH2 0x4a34 00004a2b: PUSH1 0x40 00004a2d: MLOAD 00004a2e: SWAP4 00004a2f: DUP5 00004a30: PUSH2 0x3c94 00004a33: JUMP 00004a34: JUMPDEST 00004a35: DUP3 00004a36: MSTORE 00004a37: RETURNDATASIZE 00004a38: PUSH0 00004a39: PUSH1 0x20 00004a3b: DUP5 00004a3c: ADD 00004a3d: RETURNDATACOPY 00004a3e: JUMPDEST 00004a3f: DUP1 00004a40: PUSH2 0x4a73 00004a43: JUMPI 00004a44: JUMPDEST 00004a45: PUSH2 0x4a50 00004a48: JUMPI 00004a49: JUMPDEST 00004a4a: POP 00004a4b: PUSH0 00004a4c: SWAP1 00004a4d: PUSH0 00004a4e: SWAP1 00004a4f: JUMP 00004a50: JUMPDEST 00004a51: PUSH1 0x20 00004a53: DUP2 00004a54: DUP1 00004a55: MLOAD 00004a56: DUP2 00004a57: ADD 00004a58: SUB 00004a59: SLT 00004a5a: PUSH2 0x0bfb 00004a5d: JUMPI 00004a5e: PUSH1 0x20 00004a60: ADD 00004a61: MLOAD 00004a62: PUSH1 0xff 00004a64: DUP2 00004a65: GT 00004a66: PUSH2 0x4a49 00004a69: JUMPI 00004a6a: SWAP1 00004a6b: PUSH1 0xff 00004a6d: PUSH1 0x01 00004a6f: SWAP3 00004a70: AND 00004a71: SWAP1 00004a72: JUMP 00004a73: JUMPDEST 00004a74: POP 00004a75: PUSH1 0x20 00004a77: DUP2 00004a78: MLOAD 00004a79: LT 00004a7a: ISZERO 00004a7b: PUSH2 0x4a44 00004a7e: JUMP 00004a7f: JUMPDEST 00004a80: PUSH1 0x60 00004a82: SWAP1 00004a83: PUSH2 0x4a3e 00004a86: JUMP 00004a87: INVALID 00004a88: PUSH1 0x40 00004a8a: PUSH1 0xa0 00004a8c: DUP2 00004a8d: MSTORE 00004a8e: PUSH2 0x0a92 00004a91: DUP1 00004a92: CODESIZE 00004a93: SUB 00004a94: DUP1 00004a95: PUSH2 0x0015 00004a98: DUP2 00004a99: PUSH2 0x0262 00004a9c: JUMP 00004a9d: JUMPDEST 00004a9e: SWAP3 00004a9f: DUP4 00004aa0: CODECOPY 00004aa1: DUP2 00004aa2: ADD 00004aa3: SWAP1 00004aa4: PUSH1 0x60 00004aa6: DUP2 00004aa7: DUP4 00004aa8: SUB 00004aa9: SLT 00004aaa: PUSH2 0x025e 00004aad: JUMPI 00004aae: PUSH2 0x002e 00004ab1: DUP2 00004ab2: PUSH2 0x0287 00004ab5: JUMP 00004ab6: JUMPDEST 00004ab7: SWAP2 00004ab8: PUSH1 0x20 00004aba: SWAP2 00004abb: PUSH2 0x003d 00004abe: DUP4 00004abf: DUP3 00004ac0: ADD 00004ac1: PUSH2 0x0287 00004ac4: JUMP 00004ac5: JUMPDEST 00004ac6: DUP6 00004ac7: DUP3 00004ac8: ADD 00004ac9: MLOAD 00004aca: SWAP1 00004acb: SWAP2 00004acc: PUSH1 0x01 00004ace: PUSH1 0x01 00004ad0: PUSH1 0x40 00004ad2: SHL 00004ad3: SUB 00004ad4: SWAP2 00004ad5: SWAP1 00004ad6: DUP3 00004ad7: DUP3 00004ad8: GT 00004ad9: PUSH2 0x025e 00004adc: JUMPI 00004add: ADD 00004ade: SWAP3 00004adf: DUP1 00004ae0: PUSH1 0x1f 00004ae2: DUP6 00004ae3: ADD 00004ae4: SLT 00004ae5: ISZERO 00004ae6: PUSH2 0x025e 00004ae9: JUMPI 00004aea: DUP4 00004aeb: MLOAD 00004aec: PUSH2 0x0074 00004aef: PUSH2 0x006f 00004af2: DUP3 00004af3: PUSH2 0x029b 00004af6: JUMP 00004af7: JUMPDEST 00004af8: PUSH2 0x0262 00004afb: JUMP 00004afc: JUMPDEST 00004afd: SWAP5 00004afe: DUP2 00004aff: DUP7 00004b00: MSTORE 00004b01: DUP7 00004b02: DUP7 00004b03: ADD 00004b04: SWAP3 00004b05: DUP8 00004b06: DUP4 00004b07: DUP4 00004b08: ADD 00004b09: ADD 00004b0a: GT 00004b0b: PUSH2 0x025e 00004b0e: JUMPI 00004b0f: DUP2 00004b10: PUSH0 00004b11: SWAP3 00004b12: DUP9 00004b13: DUP1 00004b14: SWAP4 00004b15: ADD 00004b16: DUP6 00004b17: MCOPY 00004b18: DUP7 00004b19: ADD 00004b1a: ADD 00004b1b: MSTORE 00004b1c: DUP6 00004b1d: EXTCODESIZE 00004b1e: ISZERO 00004b1f: PUSH2 0x023e 00004b22: JUMPI 00004b23: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc 00004b44: DUP1 00004b45: SLOAD 00004b46: PUSH1 0x01 00004b48: PUSH1 0x01 00004b4a: PUSH1 0xa0 00004b4c: SHL 00004b4d: SUB 00004b4e: DUP9 00004b4f: DUP2 00004b50: AND 00004b51: PUSH1 0x01 00004b53: PUSH1 0x01 00004b55: PUSH1 0xa0 00004b57: SHL 00004b58: SUB 00004b59: NOT 00004b5a: SWAP3 00004b5b: DUP4 00004b5c: AND 00004b5d: DUP2 00004b5e: OR 00004b5f: SWAP1 00004b60: SWAP4 00004b61: SSTORE 00004b62: DUP10 00004b63: MLOAD 00004b64: SWAP1 00004b65: SWAP9 00004b66: SWAP2 00004b67: SWAP7 00004b68: SWAP2 00004b69: SWAP3 00004b6a: PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b 00004b8b: PUSH0 00004b8c: DUP1 00004b8d: LOG2 00004b8e: DUP2 00004b8f: MLOAD 00004b90: ISZERO 00004b91: PUSH2 0x0220 00004b94: JUMPI 00004b95: POP 00004b96: PUSH0 00004b97: PUSH2 0x013b 00004b9a: SWAP4 00004b9b: DUP2 00004b9c: SWAP3 00004b9d: MLOAD 00004b9e: SWAP1 00004b9f: DUP5 00004ba0: GAS 00004ba1: DELEGATECALL 00004ba2: RETURNDATASIZE 00004ba3: ISZERO 00004ba4: PUSH2 0x0218 00004ba7: JUMPI 00004ba8: RETURNDATASIZE 00004ba9: SWAP2 00004baa: PUSH2 0x012d 00004bad: PUSH2 0x006f 00004bb0: DUP5 00004bb1: PUSH2 0x029b 00004bb4: JUMP 00004bb5: JUMPDEST 00004bb6: SWAP3 00004bb7: DUP4 00004bb8: MSTORE 00004bb9: RETURNDATASIZE 00004bba: PUSH0 00004bbb: DUP10 00004bbc: DUP6 00004bbd: ADD 00004bbe: RETURNDATACOPY 00004bbf: PUSH2 0x02b6 00004bc2: JUMP 00004bc3: JUMPDEST 00004bc4: POP 00004bc5: JUMPDEST 00004bc6: DUP6 00004bc7: MLOAD 00004bc8: SWAP2 00004bc9: PUSH2 0x045c 00004bcc: SWAP2 00004bcd: DUP3 00004bce: DUP5 00004bcf: ADD 00004bd0: SWAP1 00004bd1: DUP2 00004bd2: GT 00004bd3: DUP5 00004bd4: DUP3 00004bd5: LT 00004bd6: OR 00004bd7: PUSH2 0x0204 00004bda: JUMPI 00004bdb: DUP7 00004bdc: DUP5 00004bdd: SWAP3 00004bde: DUP8 00004bdf: SWAP5 00004be0: PUSH2 0x0636 00004be3: DUP6 00004be4: CODECOPY 00004be5: AND 00004be6: DUP2 00004be7: MSTORE 00004be8: SUB 00004be9: ADD 00004bea: SWAP1 00004beb: PUSH0 00004bec: CREATE 00004bed: DUP1 00004bee: ISZERO 00004bef: PUSH2 0x01fa 00004bf2: JUMPI 00004bf3: DUP4 00004bf4: AND 00004bf5: SWAP2 00004bf6: DUP3 00004bf7: PUSH1 0x80 00004bf9: MSTORE 00004bfa: PUSH32 0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f 00004c1b: DUP6 00004c1c: PUSH32 0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103 00004c3d: SWAP6 00004c3e: DUP6 00004c3f: DUP8 00004c40: SLOAD 00004c41: SWAP5 00004c42: DUP4 00004c43: MLOAD 00004c44: SWAP3 00004c45: DUP7 00004c46: AND 00004c47: DUP4 00004c48: MSTORE 00004c49: DUP3 00004c4a: ADD 00004c4b: MSTORE 00004c4c: LOG1 00004c4d: DUP3 00004c4e: ISZERO 00004c4f: PUSH2 0x01e3 00004c52: JUMPI 00004c53: AND 00004c54: OR 00004c55: SWAP1 00004c56: SSTORE 00004c57: MLOAD 00004c58: PUSH2 0x031c 00004c5b: SWAP1 00004c5c: DUP2 00004c5d: PUSH2 0x031a 00004c60: DUP3 00004c61: CODECOPY 00004c62: PUSH1 0x80 00004c64: MLOAD 00004c65: DUP2 00004c66: PUSH1 0x0f 00004c68: ADD 00004c69: MSTORE 00004c6a: RETURN 00004c6b: JUMPDEST 00004c6c: DUP5 00004c6d: MLOAD 00004c6e: PUSH4 0x3173bdd1 00004c73: PUSH1 0xe1 00004c75: SHL 00004c76: DUP2 00004c77: MSTORE 00004c78: PUSH0 00004c79: PUSH1 0x04 00004c7b: DUP3 00004c7c: ADD 00004c7d: MSTORE 00004c7e: PUSH1 0x24 00004c80: SWAP1 00004c81: REVERT 00004c82: JUMPDEST 00004c83: DUP5 00004c84: MLOAD 00004c85: RETURNDATASIZE 00004c86: PUSH0 00004c87: DUP3 00004c88: RETURNDATACOPY 00004c89: RETURNDATASIZE 00004c8a: SWAP1 00004c8b: REVERT 00004c8c: JUMPDEST 00004c8d: PUSH4 0x4e487b71 00004c92: PUSH1 0xe0 00004c94: SHL 00004c95: PUSH0 00004c96: MSTORE 00004c97: PUSH1 0x41 00004c99: PUSH1 0x04 00004c9b: MSTORE 00004c9c: PUSH1 0x24 00004c9e: PUSH0 00004c9f: REVERT 00004ca0: JUMPDEST 00004ca1: PUSH1 0x60 00004ca3: SWAP2 00004ca4: PUSH2 0x02b6 00004ca7: JUMP 00004ca8: JUMPDEST 00004ca9: SWAP3 00004caa: POP 00004cab: POP 00004cac: POP 00004cad: CALLVALUE 00004cae: PUSH2 0x022f 00004cb1: JUMPI 00004cb2: POP 00004cb3: PUSH2 0x013d 00004cb6: JUMP 00004cb7: JUMPDEST 00004cb8: PUSH4 0xb398979f 00004cbd: PUSH1 0xe0 00004cbf: SHL 00004cc0: DUP2 00004cc1: MSTORE 00004cc2: PUSH1 0x04 00004cc4: SWAP1 00004cc5: REVERT 00004cc6: JUMPDEST 00004cc7: DUP7 00004cc8: MLOAD 00004cc9: PUSH4 0x4c9c8ce3 00004cce: PUSH1 0xe0 00004cd0: SHL 00004cd1: DUP2 00004cd2: MSTORE 00004cd3: PUSH1 0x01 00004cd5: PUSH1 0x01 00004cd7: PUSH1 0xa0 00004cd9: SHL 00004cda: SUB 00004cdb: DUP8 00004cdc: AND 00004cdd: PUSH1 0x04 00004cdf: DUP3 00004ce0: ADD 00004ce1: MSTORE 00004ce2: PUSH1 0x24 00004ce4: SWAP1 00004ce5: REVERT 00004ce6: JUMPDEST 00004ce7: PUSH0 00004ce8: DUP1 00004ce9: REVERT 00004cea: JUMPDEST 00004ceb: PUSH1 0x40 00004ced: MLOAD 00004cee: SWAP2 00004cef: SWAP1 00004cf0: PUSH1 0x1f 00004cf2: ADD 00004cf3: PUSH1 0x1f 00004cf5: NOT 00004cf6: AND 00004cf7: DUP3 00004cf8: ADD 00004cf9: PUSH1 0x01 00004cfb: PUSH1 0x01 00004cfd: PUSH1 0x40 00004cff: SHL 00004d00: SUB 00004d01: DUP2 00004d02: GT 00004d03: DUP4 00004d04: DUP3 00004d05: LT 00004d06: OR 00004d07: PUSH2 0x0204 00004d0a: JUMPI 00004d0b: PUSH1 0x40 00004d0d: MSTORE 00004d0e: JUMP 00004d0f: JUMPDEST 00004d10: MLOAD 00004d11: SWAP1 00004d12: PUSH1 0x01 00004d14: PUSH1 0x01 00004d16: PUSH1 0xa0 00004d18: SHL 00004d19: SUB 00004d1a: DUP3 00004d1b: AND 00004d1c: DUP3 00004d1d: SUB 00004d1e: PUSH2 0x025e 00004d21: JUMPI 00004d22: JUMP 00004d23: JUMPDEST 00004d24: PUSH1 0x01 00004d26: PUSH1 0x01 00004d28: PUSH1 0x40 00004d2a: SHL 00004d2b: SUB 00004d2c: DUP2 00004d2d: GT 00004d2e: PUSH2 0x0204 00004d31: JUMPI 00004d32: PUSH1 0x1f 00004d34: ADD 00004d35: PUSH1 0x1f 00004d37: NOT 00004d38: AND 00004d39: PUSH1 0x20 00004d3b: ADD 00004d3c: SWAP1 00004d3d: JUMP 00004d3e: JUMPDEST 00004d3f: SWAP1 00004d40: PUSH2 0x02dd 00004d43: JUMPI 00004d44: POP 00004d45: DUP1 00004d46: MLOAD 00004d47: ISZERO 00004d48: PUSH2 0x02cb 00004d4b: JUMPI 00004d4c: DUP1 00004d4d: MLOAD 00004d4e: SWAP1 00004d4f: PUSH1 0x20 00004d51: ADD 00004d52: REVERT 00004d53: JUMPDEST 00004d54: PUSH1 0x40 00004d56: MLOAD 00004d57: PUSH4 0xd6bda275 00004d5c: PUSH1 0xe0 00004d5e: SHL 00004d5f: DUP2 00004d60: MSTORE 00004d61: PUSH1 0x04 00004d63: SWAP1 00004d64: REVERT 00004d65: JUMPDEST 00004d66: DUP2 00004d67: MLOAD 00004d68: ISZERO 00004d69: DUP1 00004d6a: PUSH2 0x0310 00004d6d: JUMPI 00004d6e: JUMPDEST 00004d6f: PUSH2 0x02ee 00004d72: JUMPI 00004d73: POP 00004d74: SWAP1 00004d75: JUMP 00004d76: JUMPDEST 00004d77: PUSH1 0x40 00004d79: MLOAD 00004d7a: PUSH4 0x9996b315 00004d7f: PUSH1 0xe0 00004d81: SHL 00004d82: DUP2 00004d83: MSTORE 00004d84: PUSH1 0x01 00004d86: PUSH1 0x01 00004d88: PUSH1 0xa0 00004d8a: SHL 00004d8b: SUB 00004d8c: SWAP1 00004d8d: SWAP2 00004d8e: AND 00004d8f: PUSH1 0x04 00004d91: DUP3 00004d92: ADD 00004d93: MSTORE 00004d94: PUSH1 0x24 00004d96: SWAP1 00004d97: REVERT 00004d98: JUMPDEST 00004d99: POP 00004d9a: DUP1 00004d9b: EXTCODESIZE 00004d9c: ISZERO 00004d9d: PUSH2 0x02e6 00004da0: JUMP 00004da1: INVALID 00004da2: PUSH1 0x80 00004da4: PUSH1 0x40 00004da6: MSTORE 00004da7: PUSH1 0x01 00004da9: PUSH1 0x01 00004dab: PUSH1 0xa0 00004dad: SHL 00004dae: SUB 00004daf: CALLER 00004db0: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000000 00004dd1: DUP3 00004dd2: AND 00004dd3: SUB 00004dd4: PUSH2 0x006a 00004dd7: JUMPI 00004dd8: PUSH0 00004dd9: CALLDATALOAD 00004dda: PUSH1 0x01 00004ddc: PUSH1 0x01 00004dde: PUSH1 0xe0 00004de0: SHL 00004de1: SUB 00004de2: NOT 00004de3: AND 00004de4: PUSH4 0x278f7943 00004de9: PUSH1 0xe1 00004deb: SHL 00004dec: EQ 00004ded: PUSH2 0x0060 00004df0: JUMPI 00004df1: PUSH1 0x40 00004df3: MLOAD 00004df4: PUSH4 0x34ad5dbb 00004df9: PUSH1 0xe2 00004dfb: SHL 00004dfc: DUP2 00004dfd: MSTORE 00004dfe: PUSH1 0x04 00004e00: SWAP1 00004e01: REVERT 00004e02: JUMPDEST 00004e03: PUSH2 0x0068 00004e06: PUSH2 0x0105 00004e09: JUMP 00004e0a: JUMPDEST 00004e0b: STOP 00004e0c: JUMPDEST 00004e0d: PUSH0 00004e0e: DUP1 00004e0f: SWAP2 00004e10: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc 00004e31: SLOAD 00004e32: AND 00004e33: CALLDATASIZE 00004e34: DUP3 00004e35: DUP1 00004e36: CALLDATACOPY 00004e37: DUP2 00004e38: CALLDATASIZE 00004e39: SWAP2 00004e3a: GAS 00004e3b: DELEGATECALL 00004e3c: RETURNDATASIZE 00004e3d: PUSH0 00004e3e: DUP1 00004e3f: RETURNDATACOPY 00004e40: ISZERO 00004e41: PUSH2 0x00a6 00004e44: JUMPI 00004e45: RETURNDATASIZE 00004e46: PUSH0 00004e47: RETURN 00004e48: JUMPDEST 00004e49: RETURNDATASIZE 00004e4a: PUSH0 00004e4b: REVERT 00004e4c: JUMPDEST 00004e4d: PUSH4 0x4e487b71 00004e52: PUSH1 0xe0 00004e54: SHL 00004e55: PUSH0 00004e56: MSTORE 00004e57: PUSH1 0x41 00004e59: PUSH1 0x04 00004e5b: MSTORE 00004e5c: PUSH1 0x24 00004e5e: PUSH0 00004e5f: REVERT 00004e60: JUMPDEST 00004e61: PUSH1 0x40 00004e63: MLOAD 00004e64: SWAP2 00004e65: SWAP1 00004e66: PUSH1 0x1f 00004e68: ADD 00004e69: PUSH1 0x1f 00004e6b: NOT 00004e6c: AND 00004e6d: DUP3 00004e6e: ADD 00004e6f: PUSH8 0xffffffffffffffff 00004e78: DUP2 00004e79: GT 00004e7a: DUP4 00004e7b: DUP3 00004e7c: LT 00004e7d: OR 00004e7e: PUSH2 0x00e4 00004e81: JUMPI 00004e82: PUSH1 0x40 00004e84: MSTORE 00004e85: JUMP 00004e86: JUMPDEST 00004e87: PUSH2 0x00aa 00004e8a: JUMP 00004e8b: JUMPDEST 00004e8c: PUSH8 0xffffffffffffffff 00004e95: DUP2 00004e96: GT 00004e97: PUSH2 0x00e4 00004e9a: JUMPI 00004e9b: PUSH1 0x1f 00004e9d: ADD 00004e9e: PUSH1 0x1f 00004ea0: NOT 00004ea1: AND 00004ea2: PUSH1 0x20 00004ea4: ADD 00004ea5: SWAP1 00004ea6: JUMP 00004ea7: JUMPDEST 00004ea8: CALLDATASIZE 00004ea9: PUSH1 0x04 00004eab: GT 00004eac: PUSH2 0x018e 00004eaf: JUMPI 00004eb0: PUSH1 0x40 00004eb2: CALLDATASIZE 00004eb3: PUSH1 0x03 00004eb5: NOT 00004eb6: ADD 00004eb7: SLT 00004eb8: PUSH2 0x018e 00004ebb: JUMPI 00004ebc: PUSH1 0x04 00004ebe: CALLDATALOAD 00004ebf: PUSH1 0x01 00004ec1: PUSH1 0x01 00004ec3: PUSH1 0xa0 00004ec5: SHL 00004ec6: SUB 00004ec7: DUP2 00004ec8: AND 00004ec9: SWAP1 00004eca: DUP2 00004ecb: SWAP1 00004ecc: SUB 00004ecd: PUSH2 0x018e 00004ed0: JUMPI 00004ed1: PUSH1 0x24 00004ed3: CALLDATALOAD 00004ed4: SWAP1 00004ed5: PUSH8 0xffffffffffffffff 00004ede: DUP3 00004edf: GT 00004ee0: PUSH2 0x018e 00004ee3: JUMPI 00004ee4: CALLDATASIZE 00004ee5: PUSH1 0x23 00004ee7: DUP4 00004ee8: ADD 00004ee9: SLT 00004eea: ISZERO 00004eeb: PUSH2 0x018e 00004eee: JUMPI 00004eef: DUP2 00004ef0: PUSH1 0x04 00004ef2: ADD 00004ef3: CALLDATALOAD 00004ef4: SWAP1 00004ef5: PUSH2 0x0163 00004ef8: PUSH2 0x015e 00004efb: DUP4 00004efc: PUSH2 0x00e9 00004eff: JUMP 00004f00: JUMPDEST 00004f01: PUSH2 0x00be 00004f04: JUMP 00004f05: JUMPDEST 00004f06: SWAP2 00004f07: DUP1 00004f08: DUP4 00004f09: MSTORE 00004f0a: CALLDATASIZE 00004f0b: PUSH1 0x24 00004f0d: DUP3 00004f0e: DUP7 00004f0f: ADD 00004f10: ADD 00004f11: GT 00004f12: PUSH2 0x018e 00004f15: JUMPI 00004f16: PUSH1 0x20 00004f18: DUP2 00004f19: PUSH0 00004f1a: SWAP3 00004f1b: PUSH1 0x24 00004f1d: PUSH2 0x018c 00004f20: SWAP8 00004f21: ADD 00004f22: DUP4 00004f23: DUP8 00004f24: ADD 00004f25: CALLDATACOPY 00004f26: DUP5 00004f27: ADD 00004f28: ADD 00004f29: MSTORE 00004f2a: PUSH2 0x0192 00004f2d: JUMP 00004f2e: JUMPDEST 00004f2f: JUMP 00004f30: JUMPDEST 00004f31: PUSH0 00004f32: DUP1 00004f33: REVERT 00004f34: JUMPDEST 00004f35: SWAP1 00004f36: DUP2 00004f37: EXTCODESIZE 00004f38: ISZERO 00004f39: PUSH2 0x0229 00004f3c: JUMPI 00004f3d: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc 00004f5e: DUP1 00004f5f: SLOAD 00004f60: PUSH1 0x01 00004f62: PUSH1 0x01 00004f64: PUSH1 0xa0 00004f66: SHL 00004f67: SUB 00004f68: NOT 00004f69: AND 00004f6a: PUSH1 0x01 00004f6c: PUSH1 0x01 00004f6e: PUSH1 0xa0 00004f70: SHL 00004f71: SUB 00004f72: DUP5 00004f73: AND 00004f74: SWAP1 00004f75: DUP2 00004f76: OR 00004f77: SWAP1 00004f78: SWAP2 00004f79: SSTORE 00004f7a: PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b 00004f9b: PUSH0 00004f9c: DUP1 00004f9d: LOG2 00004f9e: DUP1 00004f9f: MLOAD 00004fa0: ISZERO 00004fa1: PUSH2 0x020e 00004fa4: JUMPI 00004fa5: PUSH2 0x020b 00004fa8: SWAP2 00004fa9: PUSH2 0x024a 00004fac: JUMP 00004fad: JUMPDEST 00004fae: POP 00004faf: JUMP 00004fb0: JUMPDEST 00004fb1: POP 00004fb2: POP 00004fb3: CALLVALUE 00004fb4: PUSH2 0x0217 00004fb7: JUMPI 00004fb8: JUMP 00004fb9: JUMPDEST 00004fba: PUSH1 0x40 00004fbc: MLOAD 00004fbd: PUSH4 0xb398979f 00004fc2: PUSH1 0xe0 00004fc4: SHL 00004fc5: DUP2 00004fc6: MSTORE 00004fc7: PUSH1 0x04 00004fc9: SWAP1 00004fca: REVERT 00004fcb: JUMPDEST 00004fcc: PUSH1 0x40 00004fce: MLOAD 00004fcf: PUSH4 0x4c9c8ce3 00004fd4: PUSH1 0xe0 00004fd6: SHL 00004fd7: DUP2 00004fd8: MSTORE 00004fd9: PUSH1 0x01 00004fdb: PUSH1 0x01 00004fdd: PUSH1 0xa0 00004fdf: SHL 00004fe0: SUB 00004fe1: DUP4 00004fe2: AND 00004fe3: PUSH1 0x04 00004fe5: DUP3 00004fe6: ADD 00004fe7: MSTORE 00004fe8: PUSH1 0x24 00004fea: SWAP1 00004feb: REVERT 00004fec: JUMPDEST 00004fed: PUSH0 00004fee: DUP1 00004fef: PUSH2 0x027c 00004ff2: SWAP4 00004ff3: PUSH1 0x20 00004ff5: DUP2 00004ff6: MLOAD 00004ff7: SWAP2 00004ff8: ADD 00004ff9: DUP5 00004ffa: GAS 00004ffb: DELEGATECALL 00004ffc: RETURNDATASIZE 00004ffd: ISZERO 00004ffe: PUSH2 0x027f 00005001: JUMPI 00005002: RETURNDATASIZE 00005003: SWAP2 00005004: PUSH2 0x026d 00005007: PUSH2 0x015e 0000500a: DUP5 0000500b: PUSH2 0x00e9 0000500e: JUMP 0000500f: JUMPDEST 00005010: SWAP3 00005011: DUP4 00005012: MSTORE 00005013: RETURNDATASIZE 00005014: PUSH0 00005015: PUSH1 0x20 00005017: DUP6 00005018: ADD 00005019: RETURNDATACOPY 0000501a: PUSH2 0x0283 0000501d: JUMP 0000501e: JUMPDEST 0000501f: SWAP1 00005020: JUMP 00005021: JUMPDEST 00005022: PUSH1 0x60 00005024: SWAP2 00005025: JUMPDEST 00005026: SWAP1 00005027: PUSH2 0x02aa 0000502a: JUMPI 0000502b: POP 0000502c: DUP1 0000502d: MLOAD 0000502e: ISZERO 0000502f: PUSH2 0x0298 00005032: JUMPI 00005033: DUP1 00005034: MLOAD 00005035: SWAP1 00005036: PUSH1 0x20 00005038: ADD 00005039: REVERT 0000503a: JUMPDEST 0000503b: PUSH1 0x40 0000503d: MLOAD 0000503e: PUSH4 0xd6bda275 00005043: PUSH1 0xe0 00005045: SHL 00005046: DUP2 00005047: MSTORE 00005048: PUSH1 0x04 0000504a: SWAP1 0000504b: REVERT 0000504c: JUMPDEST 0000504d: DUP2 0000504e: MLOAD 0000504f: ISZERO 00005050: DUP1 00005051: PUSH2 0x02dd 00005054: JUMPI 00005055: JUMPDEST 00005056: PUSH2 0x02bb 00005059: JUMPI 0000505a: POP 0000505b: SWAP1 0000505c: JUMP 0000505d: JUMPDEST 0000505e: PUSH1 0x40 00005060: MLOAD 00005061: PUSH4 0x9996b315 00005066: PUSH1 0xe0 00005068: SHL 00005069: DUP2 0000506a: MSTORE 0000506b: PUSH1 0x01 0000506d: PUSH1 0x01 0000506f: PUSH1 0xa0 00005071: SHL 00005072: SUB 00005073: SWAP1 00005074: SWAP2 00005075: AND 00005076: PUSH1 0x04 00005078: DUP3 00005079: ADD 0000507a: MSTORE 0000507b: PUSH1 0x24 0000507d: SWAP1 0000507e: REVERT 0000507f: JUMPDEST 00005080: POP 00005081: DUP1 00005082: EXTCODESIZE 00005083: ISZERO 00005084: PUSH2 0x02b3 00005087: JUMP 00005088: INVALID 00005089: LOG2 0000508a: PUSH5 0x6970667358 00005090: UNKNOWN(0x22) 00005091: SLT 00005092: KECCAK256 00005093: UNKNOWN(0xD4) 00005094: PUSH22 0x2afe66e0c328c427bef50003f7bcdf6af7917020e116 000050ab: UNKNOWN(0xEA) 000050ac: UNKNOWN(0xAC) 000050ad: UNKNOWN(0xAC) 000050ae: UNKNOWN(0xF9) 000050af: CALLVALUE 000050b0: UNKNOWN(0x21) 000050b1: DUP11 000050b2: UNKNOWN(0xF7) 000050b3: PUSH5 0x736f6c6343 000050b9: STOP 000050ba: ADDMOD 000050bb: NOT 000050bc: STOP 000050bd: CALLER 000050be: PUSH1 0x80 000050c0: CALLVALUE 000050c1: PUSH1 0xb4 000050c3: JUMPI 000050c4: PUSH1 0x1f 000050c6: PUSH2 0x045c 000050c9: CODESIZE 000050ca: DUP2 000050cb: SWAP1 000050cc: SUB 000050cd: SWAP2 000050ce: DUP3 000050cf: ADD 000050d0: PUSH1 0x1f 000050d2: NOT 000050d3: AND 000050d4: DUP4 000050d5: ADD 000050d6: SWAP2 000050d7: PUSH1 0x01 000050d9: PUSH1 0x01 000050db: PUSH1 0x40 000050dd: SHL 000050de: SUB 000050df: DUP4 000050e0: GT 000050e1: DUP5 000050e2: DUP5 000050e3: LT 000050e4: OR 000050e5: PUSH1 0xb8 000050e7: JUMPI 000050e8: DUP1 000050e9: DUP5 000050ea: SWAP3 000050eb: PUSH1 0x20 000050ed: SWAP5 000050ee: PUSH1 0x40 000050f0: MSTORE 000050f1: DUP4 000050f2: CODECOPY 000050f3: DUP2 000050f4: ADD 000050f5: SUB 000050f6: SLT 000050f7: PUSH1 0xb4 000050f9: JUMPI 000050fa: MLOAD 000050fb: PUSH1 0x01 000050fd: PUSH1 0x01 000050ff: PUSH1 0xa0 00005101: SHL 00005102: SUB 00005103: SWAP1 00005104: DUP2 00005105: DUP2 00005106: AND 00005107: SWAP1 00005108: DUP2 00005109: SWAP1 0000510a: SUB 0000510b: PUSH1 0xb4 0000510d: JUMPI 0000510e: DUP1 0000510f: ISZERO 00005110: PUSH1 0x9c 00005112: JUMPI 00005113: PUSH0 00005114: DUP1 00005115: SLOAD 00005116: PUSH1 0x01 00005118: PUSH1 0x01 0000511a: PUSH1 0xa0 0000511c: SHL 0000511d: SUB 0000511e: NOT 0000511f: DUP2 00005120: AND 00005121: DUP4 00005122: OR 00005123: DUP3 00005124: SSTORE 00005125: PUSH1 0x40 00005127: MLOAD 00005128: SWAP4 00005129: AND 0000512a: SWAP1 0000512b: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 0000514c: SWAP1 0000514d: DUP1 0000514e: LOG3 0000514f: PUSH2 0x038f 00005152: SWAP1 00005153: DUP2 00005154: PUSH2 0x00cd 00005157: DUP3 00005158: CODECOPY 00005159: RETURN 0000515a: JUMPDEST 0000515b: PUSH1 0x40 0000515d: MLOAD 0000515e: PUSH4 0x1e4fbdf7 00005163: PUSH1 0xe0 00005165: SHL 00005166: DUP2 00005167: MSTORE 00005168: PUSH0 00005169: PUSH1 0x04 0000516b: DUP3 0000516c: ADD 0000516d: MSTORE 0000516e: PUSH1 0x24 00005170: SWAP1 00005171: REVERT 00005172: JUMPDEST 00005173: PUSH0 00005174: DUP1 00005175: REVERT 00005176: JUMPDEST 00005177: PUSH4 0x4e487b71 0000517c: PUSH1 0xe0 0000517e: SHL 0000517f: PUSH0 00005180: MSTORE 00005181: PUSH1 0x41 00005183: PUSH1 0x04 00005185: MSTORE 00005186: PUSH1 0x24 00005188: PUSH0 00005189: REVERT 0000518a: INVALID 0000518b: PUSH1 0x40 0000518d: PUSH1 0x80 0000518f: DUP2 00005190: MSTORE 00005191: PUSH1 0x04 00005193: DUP1 00005194: CALLDATASIZE 00005195: LT 00005196: ISZERO 00005197: PUSH2 0x0013 0000519a: JUMPI 0000519b: PUSH0 0000519c: DUP1 0000519d: REVERT 0000519e: JUMPDEST 0000519f: PUSH0 000051a0: SWAP2 000051a1: PUSH0 000051a2: CALLDATALOAD 000051a3: PUSH1 0xe0 000051a5: SHR 000051a6: DUP1 000051a7: PUSH4 0x715018a6 000051ac: EQ 000051ad: PUSH2 0x02b3 000051b0: JUMPI 000051b1: DUP1 000051b2: PUSH4 0x8da5cb5b 000051b7: EQ 000051b8: PUSH2 0x028c 000051bb: JUMPI 000051bc: DUP1 000051bd: PUSH4 0x9623609d 000051c2: EQ 000051c3: PUSH2 0x0154 000051c6: JUMPI 000051c7: DUP1 000051c8: PUSH4 0xad3cb1cc 000051cd: EQ 000051ce: PUSH2 0x00e3 000051d1: JUMPI 000051d2: PUSH4 0xf2fde38b 000051d7: EQ 000051d8: PUSH2 0x0054 000051db: JUMPI 000051dc: PUSH0 000051dd: DUP1 000051de: REVERT 000051df: JUMPDEST 000051e0: CALLVALUE 000051e1: PUSH2 0x00df 000051e4: JUMPI 000051e5: PUSH1 0x20 000051e7: CALLDATASIZE 000051e8: PUSH1 0x03 000051ea: NOT 000051eb: ADD 000051ec: SLT 000051ed: PUSH2 0x00df 000051f0: JUMPI 000051f1: PUSH1 0x01 000051f3: PUSH1 0x01 000051f5: PUSH1 0xa0 000051f7: SHL 000051f8: SUB 000051f9: DUP3 000051fa: CALLDATALOAD 000051fb: DUP2 000051fc: DUP2 000051fd: AND 000051fe: SWAP4 000051ff: SWAP2 00005200: SWAP3 00005201: SWAP1 00005202: DUP5 00005203: SWAP1 00005204: SUB 00005205: PUSH2 0x00db 00005208: JUMPI 00005209: PUSH2 0x0085 0000520c: PUSH2 0x032e 0000520f: JUMP 00005210: JUMPDEST 00005211: DUP4 00005212: ISZERO 00005213: PUSH2 0x00c5 00005216: JUMPI 00005217: POP 00005218: POP 00005219: PUSH0 0000521a: SLOAD 0000521b: DUP3 0000521c: PUSH1 0x01 0000521e: DUP1 0000521f: PUSH1 0xa0 00005221: SHL 00005222: SUB 00005223: NOT 00005224: DUP3 00005225: AND 00005226: OR 00005227: PUSH0 00005228: SSTORE 00005229: AND 0000522a: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 0000524b: PUSH0 0000524c: DUP1 0000524d: LOG3 0000524e: DUP1 0000524f: RETURN 00005250: JUMPDEST 00005251: MLOAD 00005252: PUSH4 0x1e4fbdf7 00005257: PUSH1 0xe0 00005259: SHL 0000525a: DUP2 0000525b: MSTORE 0000525c: SWAP1 0000525d: DUP2 0000525e: ADD 0000525f: DUP5 00005260: SWAP1 00005261: MSTORE 00005262: PUSH1 0x24 00005264: SWAP1 00005265: REVERT 00005266: JUMPDEST 00005267: PUSH0 00005268: DUP1 00005269: REVERT 0000526a: JUMPDEST 0000526b: DUP3 0000526c: DUP1 0000526d: REVERT 0000526e: JUMPDEST 0000526f: POP 00005270: DUP3 00005271: CALLVALUE 00005272: PUSH2 0x0151 00005275: JUMPI 00005276: DUP1 00005277: PUSH1 0x03 00005279: NOT 0000527a: CALLDATASIZE 0000527b: ADD 0000527c: SLT 0000527d: PUSH2 0x0151 00005280: JUMPI 00005281: POP 00005282: DUP1 00005283: MLOAD 00005284: SWAP1 00005285: DUP1 00005286: DUP3 00005287: ADD 00005288: DUP3 00005289: DUP2 0000528a: LT 0000528b: PUSH8 0xffffffffffffffff 00005294: DUP3 00005295: GT 00005296: OR 00005297: PUSH2 0x013e 0000529a: JUMPI 0000529b: PUSH2 0x013a 0000529e: SWAP4 0000529f: POP 000052a0: DUP2 000052a1: MSTORE 000052a2: PUSH1 0x05 000052a4: DUP3 000052a5: MSTORE 000052a6: PUSH5 0x0352e302e3 000052ac: PUSH1 0xdc 000052ae: SHL 000052af: PUSH1 0x20 000052b1: DUP4 000052b2: ADD 000052b3: MSTORE 000052b4: MLOAD 000052b5: SWAP2 000052b6: DUP3 000052b7: SWAP2 000052b8: PUSH1 0x20 000052ba: DUP4 000052bb: MSTORE 000052bc: PUSH1 0x20 000052be: DUP4 000052bf: ADD 000052c0: SWAP1 000052c1: PUSH2 0x030a 000052c4: JUMP 000052c5: JUMPDEST 000052c6: SUB 000052c7: SWAP1 000052c8: RETURN 000052c9: JUMPDEST 000052ca: PUSH1 0x41 000052cc: DUP5 000052cd: PUSH4 0x4e487b71 000052d2: PUSH1 0xe0 000052d4: SHL 000052d5: PUSH0 000052d6: MSTORE 000052d7: MSTORE 000052d8: PUSH1 0x24 000052da: PUSH0 000052db: REVERT 000052dc: JUMPDEST 000052dd: DUP1 000052de: REVERT 000052df: JUMPDEST 000052e0: POP 000052e1: PUSH1 0x60 000052e3: CALLDATASIZE 000052e4: PUSH1 0x03 000052e6: NOT 000052e7: ADD 000052e8: SLT 000052e9: PUSH2 0x00db 000052ec: JUMPI 000052ed: PUSH1 0x01 000052ef: PUSH1 0x01 000052f1: PUSH1 0xa0 000052f3: SHL 000052f4: SUB 000052f5: DUP3 000052f6: CALLDATALOAD 000052f7: DUP2 000052f8: DUP2 000052f9: AND 000052fa: SWAP4 000052fb: SWAP1 000052fc: DUP5 000052fd: SWAP1 000052fe: SUB 000052ff: PUSH2 0x00db 00005302: JUMPI 00005303: PUSH1 0x24 00005305: SWAP2 00005306: DUP3 00005307: CALLDATALOAD 00005308: SWAP1 00005309: DUP2 0000530a: AND 0000530b: DUP1 0000530c: SWAP2 0000530d: SUB 0000530e: PUSH2 0x00db 00005311: JUMPI 00005312: PUSH8 0xffffffffffffffff 0000531b: SWAP1 0000531c: PUSH1 0x44 0000531e: CALLDATALOAD 0000531f: DUP3 00005320: DUP2 00005321: GT 00005322: PUSH2 0x00db 00005325: JUMPI 00005326: CALLDATASIZE 00005327: PUSH1 0x23 00005329: DUP3 0000532a: ADD 0000532b: SLT 0000532c: ISZERO 0000532d: PUSH2 0x00db 00005330: JUMPI 00005331: DUP1 00005332: DUP5 00005333: ADD 00005334: CALLDATALOAD 00005335: DUP4 00005336: DUP2 00005337: GT 00005338: PUSH2 0x027a 0000533b: JUMPI 0000533c: DUP7 0000533d: MLOAD 0000533e: SWAP2 0000533f: PUSH1 0x1f 00005341: DUP3 00005342: ADD 00005343: PUSH1 0x1f 00005345: NOT 00005346: SWAP1 00005347: DUP2 00005348: AND 00005349: PUSH1 0x3f 0000534b: ADD 0000534c: AND 0000534d: DUP4 0000534e: ADD 0000534f: DUP6 00005350: DUP2 00005351: GT 00005352: DUP5 00005353: DUP3 00005354: LT 00005355: OR 00005356: PUSH2 0x0268 00005359: JUMPI 0000535a: DUP9 0000535b: MSTORE 0000535c: DUP2 0000535d: DUP4 0000535e: MSTORE 0000535f: CALLDATASIZE 00005360: DUP8 00005361: DUP4 00005362: DUP4 00005363: ADD 00005364: ADD 00005365: GT 00005366: PUSH2 0x00db 00005369: JUMPI 0000536a: DUP2 0000536b: PUSH0 0000536c: SWAP3 0000536d: DUP9 0000536e: PUSH1 0x20 00005370: SWAP4 00005371: ADD 00005372: DUP4 00005373: DUP7 00005374: ADD 00005375: CALLDATACOPY 00005376: DUP4 00005377: ADD 00005378: ADD 00005379: MSTORE 0000537a: PUSH2 0x01f6 0000537d: PUSH2 0x032e 00005380: JUMP 00005381: JUMPDEST 00005382: DUP7 00005383: EXTCODESIZE 00005384: ISZERO 00005385: PUSH2 0x00db 00005388: JUMPI 00005389: PUSH2 0x0228 0000538c: SWAP7 0000538d: PUSH0 0000538e: SWAP3 0000538f: DUP8 00005390: MLOAD 00005391: DUP1 00005392: SWAP10 00005393: DUP2 00005394: SWAP5 00005395: DUP3 00005396: SWAP4 00005397: PUSH4 0x278f7943 0000539c: PUSH1 0xe1 0000539e: SHL 0000539f: DUP5 000053a0: MSTORE 000053a1: DUP10 000053a2: DUP5 000053a3: ADD 000053a4: MSTORE 000053a5: DUP11 000053a6: DUP11 000053a7: DUP5 000053a8: ADD 000053a9: MSTORE 000053aa: PUSH1 0x44 000053ac: DUP4 000053ad: ADD 000053ae: SWAP1 000053af: PUSH2 0x030a 000053b2: JUMP 000053b3: JUMPDEST 000053b4: SUB 000053b5: SWAP2 000053b6: CALLVALUE 000053b7: SWAP1 000053b8: GAS 000053b9: CALL 000053ba: DUP1 000053bb: ISZERO 000053bc: PUSH2 0x025e 000053bf: JUMPI 000053c0: PUSH2 0x023c 000053c3: JUMPI 000053c4: DUP6 000053c5: DUP1 000053c6: RETURN 000053c7: JUMPDEST 000053c8: SWAP1 000053c9: SWAP2 000053ca: SWAP3 000053cb: SWAP4 000053cc: DUP1 000053cd: SWAP6 000053ce: POP 000053cf: GT 000053d0: PUSH2 0x024d 000053d3: JUMPI 000053d4: POP 000053d5: POP 000053d6: MSTORE 000053d7: STOP 000053d8: JUMPDEST 000053d9: PUSH1 0x41 000053db: SWAP1 000053dc: PUSH4 0x4e487b71 000053e1: PUSH1 0xe0 000053e3: SHL 000053e4: PUSH0 000053e5: MSTORE 000053e6: MSTORE 000053e7: PUSH0 000053e8: REVERT 000053e9: JUMPDEST 000053ea: DUP5 000053eb: MLOAD 000053ec: RETURNDATASIZE 000053ed: PUSH0 000053ee: DUP3 000053ef: RETURNDATACOPY 000053f0: RETURNDATASIZE 000053f1: SWAP1 000053f2: REVERT 000053f3: JUMPDEST 000053f4: DUP8 000053f5: PUSH1 0x41 000053f7: DUP9 000053f8: PUSH4 0x4e487b71 000053fd: PUSH1 0xe0 000053ff: SHL 00005400: PUSH0 00005401: MSTORE 00005402: MSTORE 00005403: PUSH0 00005404: REVERT 00005405: JUMPDEST 00005406: DUP6 00005407: PUSH1 0x41 00005409: DUP7 0000540a: PUSH4 0x4e487b71 0000540f: PUSH1 0xe0 00005411: SHL 00005412: PUSH0 00005413: MSTORE 00005414: MSTORE 00005415: PUSH0 00005416: REVERT 00005417: JUMPDEST 00005418: POP 00005419: CALLVALUE 0000541a: PUSH2 0x00db 0000541d: JUMPI 0000541e: PUSH0 0000541f: CALLDATASIZE 00005420: PUSH1 0x03 00005422: NOT 00005423: ADD 00005424: SLT 00005425: PUSH2 0x00db 00005428: JUMPI 00005429: PUSH0 0000542a: SLOAD 0000542b: SWAP1 0000542c: MLOAD 0000542d: PUSH1 0x01 0000542f: PUSH1 0x01 00005431: PUSH1 0xa0 00005433: SHL 00005434: SUB 00005435: SWAP1 00005436: SWAP2 00005437: AND 00005438: DUP2 00005439: MSTORE 0000543a: PUSH1 0x20 0000543c: SWAP1 0000543d: RETURN 0000543e: JUMPDEST 0000543f: CALLVALUE 00005440: PUSH2 0x00db 00005443: JUMPI 00005444: PUSH0 00005445: CALLDATASIZE 00005446: PUSH1 0x03 00005448: NOT 00005449: ADD 0000544a: SLT 0000544b: PUSH2 0x00db 0000544e: JUMPI 0000544f: PUSH2 0x02cb 00005452: PUSH2 0x032e 00005455: JUMP 00005456: JUMPDEST 00005457: PUSH0 00005458: DUP1 00005459: SLOAD 0000545a: PUSH1 0x01 0000545c: PUSH1 0x01 0000545e: PUSH1 0xa0 00005460: SHL 00005461: SUB 00005462: NOT 00005463: DUP2 00005464: AND 00005465: DUP3 00005466: SSTORE 00005467: PUSH1 0x01 00005469: PUSH1 0x01 0000546b: PUSH1 0xa0 0000546d: SHL 0000546e: SUB 0000546f: AND 00005470: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 00005491: DUP3 00005492: DUP1 00005493: LOG3 00005494: STOP 00005495: JUMPDEST 00005496: DUP1 00005497: MLOAD 00005498: DUP1 00005499: DUP4 0000549a: MSTORE 0000549b: PUSH1 0x20 0000549d: SWAP3 0000549e: SWAP2 0000549f: DUP2 000054a0: SWAP1 000054a1: DUP5 000054a2: ADD 000054a3: DUP5 000054a4: DUP5 000054a5: ADD 000054a6: MCOPY 000054a7: PUSH0 000054a8: DUP3 000054a9: DUP3 000054aa: ADD 000054ab: DUP5 000054ac: ADD 000054ad: MSTORE 000054ae: PUSH1 0x1f 000054b0: ADD 000054b1: PUSH1 0x1f 000054b3: NOT 000054b4: AND 000054b5: ADD 000054b6: ADD 000054b7: SWAP1 000054b8: JUMP 000054b9: JUMPDEST 000054ba: PUSH0 000054bb: SLOAD 000054bc: PUSH1 0x01 000054be: PUSH1 0x01 000054c0: PUSH1 0xa0 000054c2: SHL 000054c3: SUB 000054c4: AND 000054c5: CALLER 000054c6: SUB 000054c7: PUSH2 0x0341 000054ca: JUMPI 000054cb: JUMP 000054cc: JUMPDEST 000054cd: PUSH1 0x40 000054cf: MLOAD 000054d0: PUSH4 0x118cdaa7 000054d5: PUSH1 0xe0 000054d7: SHL 000054d8: DUP2 000054d9: MSTORE 000054da: CALLER 000054db: PUSH1 0x04 000054dd: DUP3 000054de: ADD 000054df: MSTORE 000054e0: PUSH1 0x24 000054e2: SWAP1 000054e3: REVERT 000054e4: INVALID 000054e5: LOG2 000054e6: PUSH5 0x6970667358 000054ec: UNKNOWN(0x22) 000054ed: SLT 000054ee: KECCAK256 000054ef: DUP11 000054f0: SUB 000054f1: UNKNOWN(0xE2) 000054f2: UNKNOWN(0xDD) 000054f3: PUSH19 0x585c6c1a10803fa4b431b84a7d64cde0273485 00005507: MUL 00005508: UNKNOWN(0xCD) 00005509: UNKNOWN(0xC6) 0000550a: EXTCODECOPY 0000550b: UNKNOWN(0xCC) 0000550c: UNKNOWN(0xC2) 0000550d: UNKNOWN(0x28) 0000550e: ORIGIN 0000550f: PUSH5 0x736f6c6343 00005515: STOP 00005516: ADDMOD 00005517: NOT 00005518: STOP 00005519: CALLER 0000551a: MSTORE 0000551b: UNKNOWN(0xC6) 0000551c: ORIGIN 0000551d: SELFBALANCE 0000551e: UNKNOWN(0xE1) 0000551f: DELEGATECALL 00005520: PUSH30 0xb19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0352c63247e1 0000553f: DELEGATECALL 00005540: PUSH30 0xb19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0052c63247e1 0000555f: DELEGATECALL 00005560: PUSH30 0xb19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace049016d09d72 0000557f: UNKNOWN(0xD4) 00005580: UNKNOWN(0x0F) 00005581: UNKNOWN(0xDA) 00005582: UNKNOWN(0xE2) 00005583: REVERT 00005584: DUP13 00005585: UNKNOWN(0xEA) 00005586: UNKNOWN(0xC6) 00005587: UNKNOWN(0xB6) 00005588: UNKNOWN(0x23) 00005589: UNKNOWN(0x4C) 0000558a: PUSH24 0x06214fd39c1cd1e609a0528c19930052c63247e1f47db19d 000055a3: TLOAD 000055a4: UNKNOWN(0xE0) 000055a5: CHAINID 000055a6: STOP 000055a7: ADDRESS 000055a8: UNKNOWN(0xC4) 000055a9: SWAP8 000055aa: CREATE 000055ab: PUSH8 0xca4cebf71ba98eea 000055b4: UNKNOWN(0xDA) 000055b5: UNKNOWN(0xBE) 000055b6: KECCAK256 000055b7: UNKNOWN(0xBA) 000055b8: UNKNOWN(0xCE) 000055b9: MUL 000055ba: UNKNOWN(0xDD) 000055bb: CALLCODE 000055bc: MSTORE 000055bd: UNKNOWN(0xAD) 000055be: SHL 000055bf: UNKNOWN(0xE2) 000055c0: UNKNOWN(0xC8) 000055c1: SWAP12 000055c2: PUSH10 0xc2b068fc378daa952ba7 000055cd: CALL 000055ce: PUSH4 0xc4a11628 000055d3: CREATE2 000055d4: GAS 000055d5: UNKNOWN(0x4D) 000055d6: CREATE2 000055d7: UNKNOWN(0x23) 000055d8: UNKNOWN(0xB3) 000055d9: UNKNOWN(0xEF) 000055da: SMOD 000055db: PUSH20 0xe532dfede91f04b12a73d3d2acd361424f41f76b 000055f0: UNKNOWN(0x4F) 000055f1: UNKNOWN(0xB7) 000055f2: SWAP16 000055f3: MULMOD 000055f4: ADD 000055f5: PUSH2 0xe36b 000055f8: UNKNOWN(0x4E) 000055f9: STOP 000055fa: UNKNOWN(0xCD) 000055fb: MCOPY 000055fc: UNKNOWN(0xD1) 000055fd: TLOAD 000055fe: PUSH15 0x187e77e9aee88184c21f4f2182ab58 0000560e: UNKNOWN(0x27) 0000560f: UNKNOWN(0xCB) 00005610: EXTCODESIZE 00005611: PUSH31 0x07fbedcd63f033008a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65 00005631: UNKNOWN(0xC6) 00005632: UNKNOWN(0xB6) 00005633: UNKNOWN(0x4B) 00005634: INVALID 00005635: PUSH32 0xe36bd19b9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003b 00005656: UNKNOWN(0xEC) 00005657: UNKNOWN(0xC5) 00005658: PUSH0 00005659: STOP 0000565a: LOG2 0000565b: PUSH5 0x6970667358 00005661: UNKNOWN(0x22) 00005662: SLT 00005663: KECCAK256 00005664: UNKNOWN(0xCD) 00005665: PUSH16 0xb1fd53ab0bc04cf85b9996175479e6b8 00005676: UNKNOWN(0xC2) 00005677: UNKNOWN(0xC6) 00005678: UNKNOWN(0xB8) 00005679: SWAP14 0000567a: UNKNOWN(0x29) 0000567b: DIFFICULTY 0000567c: SWAP9 0000567d: UNKNOWN(0xCC) 0000567e: RETURN 0000567f: UNKNOWN(0xA9) 00005680: SWAP6 00005681: UNKNOWN(0x27) 00005682: UNKNOWN(0xC5) 00005683: DUP6 00005684: PUSH5 0x736f6c6343 0000568a: STOP 0000568b: ADDMOD 0000568c: NOT 0000568d: STOP 0000568e: CALLER
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | oracle | codex | MF_ONE valuation uses unvalidated oracle price for share minting and TVL | 85 | no | — |
viewevidence_json{
"evidence": "MF_ONE deposits and TVL rely on `IMidasOracle(MIDAS_ORACLE).lastAnswer()` with only a non-negative check and no staleness or bounds validation.",
"locations": [
"contracts/main/Vault.sol:43",
"contracts/main/Vault.sol:96",
"contracts/main/strategies/morpho/StrategyMorphoBlue.sol:380"
],
"recommendation": "Use an oracle interface that exposes round data (e.g., `latestRoundData`) with staleness checks, enforce max deviation bounds, and/or use TWAPs. Consider rejecting deposits and price updates when the oracle is stale or outside expected bounds.",
"exploit_scenario": "An attacker who can manipulate or serve a stale/high price from `IMidasOracle.lastAnswer()` can deposit MF_ONE and receive inflated share issuance. Those shares can later be redeemed for USDC at the (lower) fair exchange price, draining vault assets. The same oracle value is also used to compute TVL/exchange price, amplifying the pricing distortion."
}
|
| high | upgradeability | detector | Untrusted DELEGATECALL target reachable | 55 | yes | yes |
viewtrace_id: 0xefbcfb5b02f9f5054f5fc50652ec6d21640bdef670b86e633bab2f8a89bff115
call_targets:
0x32fb951ce9be3cd9a0a406ea86647a3c7d6406e2, 0x43506849d7c04f9138d1a2050bbf3a0c054402dd, 0xd1660d18796a442ff6a87077c7e313be63597e91
target_varies:
yes
classification:
target_varies
validation_json{
"sink": "DELEGATECALL",
"errors": 0,
"status": "confirmed",
"attempts": 49,
"trace_id": "0xefbcfb5b02f9f5054f5fc50652ec6d21640bdef670b86e633bab2f8a89bff115",
"confirmed": true,
"trace_mode": "callTracer",
"call_targets": [
"0x32fb951ce9be3cd9a0a406ea86647a3c7d6406e2",
"0x43506849d7c04f9138d1a2050bbf3a0c054402dd",
"0xd1660d18796a442ff6a87077c7e313be63597e91"
],
"matched_probe": null,
"target_varies": true,
"classification": "target_varies"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x01e1d114",
"selector": "0x01e1d114",
"calldata_variants": [
"0x01e1d114",
"0x01e1d1140000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x02befd24",
"selector": "0x02befd24",
"calldata_variants": [
"0x02befd24",
"0x02befd240000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x030d624a",
"selector": "0x030d624a",
"calldata_variants": [
"0x030d624a",
"0x030d624a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x06fdde03",
"selector": "0x06fdde03",
"calldata_variants": [
"0x06fdde03",
"0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x079c3b88",
"selector": "0x079c3b88",
"calldata_variants": [
"0x079c3b88",
"0x079c3b880000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x07a2d13a",
"selector": "0x07a2d13a",
"calldata_variants": [
"0x07a2d13a",
"0x07a2d13a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x09299dfb",
"selector": "0x09299dfb",
"calldata_variants": [
"0x09299dfb",
"0x09299dfb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x095ea7b3",
"selector": "0x095ea7b3",
"calldata_variants": [
"0x095ea7b3",
"0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 19361,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
},
{
"pc": 20027,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
},
{
"pc": 20475,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
}
],
"guards_detected": [
{
"pc": 21774,
"type": "tx_origin_used"
},
{
"pc": 21788,
"type": "tx_origin_used"
}
],
"delegatecall_count": 6,
"untrusted_delegatecall_count": 6
}
|
| high | auth | detector | Authorization based on tx.origin | 70 | no | — |
viewvalidation_json{
"reason": "missing sink mapping",
"status": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x01e1d114",
"selector": "0x01e1d114",
"calldata_variants": [
"0x01e1d114",
"0x01e1d1140000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x02befd24",
"selector": "0x02befd24",
"calldata_variants": [
"0x02befd24",
"0x02befd240000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x030d624a",
"selector": "0x030d624a",
"calldata_variants": [
"0x030d624a",
"0x030d624a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x06fdde03",
"selector": "0x06fdde03",
"calldata_variants": [
"0x06fdde03",
"0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x079c3b88",
"selector": "0x079c3b88",
"calldata_variants": [
"0x079c3b88",
"0x079c3b880000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x07a2d13a",
"selector": "0x07a2d13a",
"calldata_variants": [
"0x07a2d13a",
"0x07a2d13a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x09299dfb",
"selector": "0x09299dfb",
"calldata_variants": [
"0x09299dfb",
"0x09299dfb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x095ea7b3",
"selector": "0x095ea7b3",
"calldata_variants": [
"0x095ea7b3",
"0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 21774,
"type": "tx_origin_used"
},
{
"pc": 21788,
"type": "tx_origin_used"
}
]
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0x926447688ef637931f09051b51b8317d990c49788177b3665989f08fb617d17b
call_targets:
0x71ea0eb2605bd63fe69012a60c75bdbd22e8b3d3
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x926447688ef637931f09051b51b8317d990c49788177b3665989f08fb617d17b",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x71ea0eb2605bd63fe69012a60c75bdbd22e8b3d3"
],
"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": "0x01e1d114",
"selector": "0x01e1d114",
"calldata_variants": [
"0x01e1d114",
"0x01e1d1140000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x02befd24",
"selector": "0x02befd24",
"calldata_variants": [
"0x02befd24",
"0x02befd240000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x030d624a",
"selector": "0x030d624a",
"calldata_variants": [
"0x030d624a",
"0x030d624a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x06fdde03",
"selector": "0x06fdde03",
"calldata_variants": [
"0x06fdde03",
"0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x079c3b88",
"selector": "0x079c3b88",
"calldata_variants": [
"0x079c3b88",
"0x079c3b880000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x07a2d13a",
"selector": "0x07a2d13a",
"calldata_variants": [
"0x07a2d13a",
"0x07a2d13a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x09299dfb",
"selector": "0x09299dfb",
"calldata_variants": [
"0x09299dfb",
"0x09299dfb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x095ea7b3",
"selector": "0x095ea7b3",
"calldata_variants": [
"0x095ea7b3",
"0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2390,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2668,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2737,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 14,
"guards_detected": [
{
"pc": 21774,
"type": "tx_origin_used"
},
{
"pc": 21788,
"type": "tx_origin_used"
}
]
}
|
| medium | upgradeability | codex | Strategy proxy admin fixed to creator, not current owner | 75 | no | — |
viewevidence_json{
"evidence": "`createStrategy` sets proxy admin to `msg.sender` without any linkage to `OwnableUpgradeable` ownership changes.",
"locations": [
"contracts/main/vault/StrategyFactory.sol:90"
],
"recommendation": "Use a dedicated `ProxyAdmin` controlled by current ownership, or track the proxy admin and update it on ownership transfers. Avoid setting the proxy admin to the caller directly.",
"exploit_scenario": "Strategies are deployed via `TransparentUpgradeableProxy` with admin set to `msg.sender`. If vault ownership changes later, the old owner retains proxy admin rights and can still upgrade strategy implementations to malicious code that drains assets, while the new owner cannot upgrade."
}
|
| medium | upgradeability | cast | DELEGATECALL present | 80 | no | — |
viewevidence_json{
"notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
"delegatecall_count": 6
}
|
| medium | other | detector | CREATE/CREATE2 reachable | 45 | no | no |
viewtrace_id: 0xad75a40ee27bd6462acb48e262c526a796f7b014a82e4709d644cd123b8d9f66
validation_json{
"sink": "CREATE",
"errors": 0,
"status": "unknown",
"attempts": 32,
"trace_id": "0xad75a40ee27bd6462acb48e262c526a796f7b014a82e4709d644cd123b8d9f66",
"confirmed": false,
"trace_mode": "structLogs",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x01e1d114",
"selector": "0x01e1d114",
"calldata_variants": [
"0x01e1d114",
"0x01e1d1140000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x02befd24",
"selector": "0x02befd24",
"calldata_variants": [
"0x02befd24",
"0x02befd240000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x030d624a",
"selector": "0x030d624a",
"calldata_variants": [
"0x030d624a",
"0x030d624a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x06fdde03",
"selector": "0x06fdde03",
"calldata_variants": [
"0x06fdde03",
"0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x079c3b88",
"selector": "0x079c3b88",
"calldata_variants": [
"0x079c3b88",
"0x079c3b880000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x07a2d13a",
"selector": "0x07a2d13a",
"calldata_variants": [
"0x07a2d13a",
"0x07a2d13a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x09299dfb",
"selector": "0x09299dfb",
"calldata_variants": [
"0x09299dfb",
"0x09299dfb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x095ea7b3",
"selector": "0x095ea7b3",
"calldata_variants": [
"0x095ea7b3",
"0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"create_count": 3,
"create2_count": 2
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0x926447688ef637931f09051b51b8317d990c49788177b3665989f08fb617d17b
call_targets:
0x71ea0eb2605bd63fe69012a60c75bdbd22e8b3d3
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x926447688ef637931f09051b51b8317d990c49788177b3665989f08fb617d17b",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x71ea0eb2605bd63fe69012a60c75bdbd22e8b3d3"
],
"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": "0x01e1d114",
"selector": "0x01e1d114",
"calldata_variants": [
"0x01e1d114",
"0x01e1d1140000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x02befd24",
"selector": "0x02befd24",
"calldata_variants": [
"0x02befd24",
"0x02befd240000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x030d624a",
"selector": "0x030d624a",
"calldata_variants": [
"0x030d624a",
"0x030d624a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x06fdde03",
"selector": "0x06fdde03",
"calldata_variants": [
"0x06fdde03",
"0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x079c3b88",
"selector": "0x079c3b88",
"calldata_variants": [
"0x079c3b88",
"0x079c3b880000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x07a2d13a",
"selector": "0x07a2d13a",
"calldata_variants": [
"0x07a2d13a",
"0x07a2d13a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x09299dfb",
"selector": "0x09299dfb",
"calldata_variants": [
"0x09299dfb",
"0x09299dfb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x095ea7b3",
"selector": "0x095ea7b3",
"calldata_variants": [
"0x095ea7b3",
"0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2390,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2668,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2737,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 14,
"guards_detected": [
{
"pc": 21774,
"type": "tx_origin_used"
},
{
"pc": 21788,
"type": "tx_origin_used"
}
],
"untrusted_call_count": 14
}
|
| low | other | codex | Rapid withdrawal refunds do not restore instant redeem limits | 65 | no | — |
viewevidence_json{
"evidence": "`_withdrawalRequestInstant` is deleted before calling `refundInstantLimit`, so the refund amount is always zero.",
"locations": [
"contracts/main/RedeemOperator.sol:300"
],
"recommendation": "Cache the withdrawal amount before deletion and call `refundInstantLimit` with that value, or reorder the operations to refund the limit first.",
"exploit_scenario": "When a rapid withdrawal is refunded, the vault\u2019s instant redeem limit for the user is not restored because the amount is deleted before being passed to `refundInstantLimit`. This can permanently reduce a user\u2019s rapid redeem allowance within the epoch and be used by the operator to grief users."
}
|
| low | other | cast | Contract creation opcode present | 60 | no | — |
viewevidence_json{
"notes": "runtime can deploy contracts dynamically via CREATE/CREATE2",
"create_count": 3,
"create2_count": 2
}
|
| info | other | cast | Heavy CALL-family usage | 55 | no | — |
viewevidence_json{
"notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
"call_family_count": 23
}
|
| info | other | cast | Heavy EXTCODE*/BALANCE usage | 55 | no | — |
viewevidence_json{
"notes": "frequent external code or balance checks; may indicate introspection or validation logic",
"ext_balance_count": 14
}
|