cb0d0890-71b6-43c1-9e9b-faffab747a65
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 |
|---|---|---|---|---|
| 30728 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 75364 | artifact.fetch | failed | 1 / 3 | 1 week ago |
| 75365 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 75366 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 75367 | capability.graph | complete | 1 / 3 | 1 week ago |
| 75368 | detector.run | complete | 1 / 3 | 1 week ago |
| 75369 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:894087] OpenAI Codex v0.77.0 (research preview)
[codex:894087] --------
[codex:894087] workdir: /tmp/codex-multi-f0pk3829
[codex:894087] model: gpt-5.2-codex
[codex:894087] provider: openai
[codex:894087] approval: never
[codex:894087] sandbox: read-only
[codex:894087] reasoning effort: xhigh
[codex:894087] reasoning summaries: auto
[codex:894087] session id: 019b70a0-6bcf-7ab3-8f6d-bf9fd23a331d
[codex:894087] --------
[codex:894087] user
[codex:894087] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:894087] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:894087] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:894087]
[codex:894087] Scope rules:
[codex:894087] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:894087] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:894087]
[codex:894087] Output MUST be valid JSON matching the provided schema.
[codex:894087] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:894087] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:894087]
[codex:894087] Output constraints (IMPORTANT):
[codex:894087] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:894087] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:894087] mcp startup: no servers
[codex:894087]
[codex:894087] thinking
[codex:894087] **Searching for skills documentation**
[codex:894087] exec
[codex:894087] /bin/bash -lc ls in /tmp/codex-multi-f0pk3829 succeeded in 5ms:
[codex:894087] AUDIT_BUNDLE.txt
[codex:894087] codex-output-schema.json
[codex:894087] contracts
[codex:894087] exec
[codex:894087] /bin/bash -lc "sed -n '1,200p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-f0pk3829 succeeded in 5ms:
[codex:894087] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:894087]
[codex:894087] ================================================================================
[codex:894087] FILE: contracts/@openzeppelin/contracts/token/ERC1155/IERC1155.sol
[codex:894087] ================================================================================
[codex:894087] // SPDX-License-Identifier: MIT
[codex:894087] // OpenZeppelin Contracts (last updated v4.7.0) (token/ERC1155/IERC1155.sol)
[codex:894087]
[codex:894087] pragma solidity ^0.8.0;
[codex:894087]
[codex:894087] import "../../utils/introspection/IERC165.sol";
[codex:894087]
[codex:894087] /**
[codex:894087] * @dev Required interface of an ERC1155 compliant contract, as defined in the
[codex:894087] * https://eips.ethereum.org/EIPS/eip-1155[EIP].
[codex:894087] *
[codex:894087] * _Available since v3.1._
[codex:894087] */
[codex:894087] interface IERC1155 is IERC165 {
[codex:894087] /**
[codex:894087]
[codex:894087] thinking
[codex:894087] **Analyzing entire AUDIT_BUNDLE file**
[codex:894087] exec
[codex:894087] /bin/bash -lc "sed -n '200,400p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-f0pk3829 succeeded in 6ms:
[codex:894087] function approve(address spender, uint256 amount) external returns (bool);
[codex:894087]
[codex:894087] /**
[codex:894087] * @dev Moves `amount` tokens from `from` to `to` using the
[codex:894087] * allowance mechanism. `amount` is then deducted from the caller's
[codex:894087] * allowance.
[codex:894087] *
[codex:894087] * Returns a boolean value indicating whether the operation succeeded.
[codex:894087] *
[codex:894087] * Emits a {Transfer} event.
[codex:894087] */
[codex:894087] function transferFrom(
[codex:894087] address from,
[codex:894087] address to,
[codex:894087] uint256 amount
[codex:894087] ) external returns (bool);
[codex:894087] }
[codex:894087]
[codex:894087] ================================================================================
[codex:894087] FILE: contracts/@openzeppelin/contracts/token/ERC721/IERC721.sol
[codex:894087]
[codex:894087] thinking
[codex:894087] **Continuing to read through large content**
[codex:894087] exec
[codex:894087] /bin/bash -lc "sed -n '400,800p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-f0pk3829 succeeded in 5ms:
[codex:894087] pragma solidity ^0.8.0;
[codex:894087]
[codex:894087] import "./IAccessControlUpgradeable.sol";
[codex:894087] import "../utils/ContextUpgradeable.sol";
[codex:894087] import "../utils/StringsUpgradeable.sol";
[codex:894087] import "../utils/introspection/ERC165Upgradeable.sol";
[codex:894087] import "../proxy/utils/Initializable.sol";
[codex:894087]
[codex:894087] /**
[codex:894087] * @dev Contract module that allows children to implement role-based access
[codex:894087] * control mechanisms. This is a lightweight version that doesn't allow enumerating role
[codex:894087] * members except through off-chain means by accessing the contract event logs. Some
[codex:894087] * applications may benefit from on-chain enumerability, for those cases see
[codex:894087] * {AccessControlEnumerable}.
[codex:894087] *
[codex:894087] * Roles are referred to by their `bytes32` identifier. These should be exposed
[codex:894087] * in the external API and be unique. The best way to achieve this is by
[codex:894087] * using `public constant` hash digests:
[codex:894087] *
[codex:894087] * ```
[codex:894087]
[codex:894087] thinking
[codex:894087] **Continuing exploration**
[codex:894087] exec
[codex:894087] /bin/bash -lc "sed -n '800,1200p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-f0pk3829 succeeded in 5ms:
[codex:894087] * [.hljs-theme-light.nopadding]
[codex:894087] * ```
[codex:894087] * /// @custom:oz-upgrades-unsafe-allow constructor
[codex:894087] * constructor() {
[codex:894087] * _disableInitializers();
[codex:894087] * }
[codex:894087] * ```
[codex:894087] * ====
[codex:894087] */
[codex:894087] abstract contract Initializable {
[codex:894087] /**
[codex:894087] * @dev Indicates that the contract has been initialized.
[codex:894087] * @custom:oz-retyped-from bool
[codex:894087] */
[codex:894087] uint8 private _initialized;
[codex:894087]
[codex:894087] /**
[codex:894087] * @dev Indicates that the contract is in the process of being initialized.
[codex:894087] */
[codex:894087] bool private _initializing;
[codex:894087]
[codex:894087] thinking
[codex:894087] **Continuing task**
[codex:894087] exec
[codex:894087] /bin/bash -lc "sed -n '1200,1600p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-f0pk3829 succeeded in 5ms:
[codex:894087] * @dev Emitted when `value` tokens are moved from one account (`from`) to
[codex:894087] * another (`to`).
[codex:894087] *
[codex:894087] * Note that `value` may be zero.
[codex:894087] */
[codex:894087] event Transfer(address indexed from, address indexed to, uint256 value);
[codex:894087]
[codex:894087] /**
[codex:894087] * @dev Emitted when the allowance of a `spender` for an `owner` is set by
[codex:894087] * a call to {approve}. `value` is the new allowance.
[codex:894087] */
[codex:894087] event Approval(address indexed owner, address indexed spender, uint256 value);
[codex:894087]
[codex:894087] /**
[codex:894087] * @dev Returns the amount of tokens in existence.
[codex:894087] */
[codex:894087] function totalSupply() external view returns (uint256);
[codex:894087]
[codex:894087] /**
[codex:894087] * @dev Returns the amount of tokens owned by `account`.
[codex:894087]
[codex:894087] thinking
[codex:894087] **Continuing process**
[codex:894087] exec
[codex:894087] /bin/bash -lc "sed -n '1600,2000p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-f0pk3829 succeeded in 5ms:
[codex:894087] }
[codex:894087]
[codex:894087] /**
[codex:894087] * @dev Performs a Solidity function call using a low level `call`. A
[codex:894087] * plain `call` is an unsafe replacement for a function call: use this
[codex:894087] * function instead.
[codex:894087] *
[codex:894087] * If `target` reverts with a revert reason, it is bubbled up by this
[codex:894087] * function (like regular Solidity function calls).
[codex:894087] *
[codex:894087] * Returns the raw returned data. To convert to the expected return value,
[codex:894087] * use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`].
[codex:894087] *
[codex:894087] * Requirements:
[codex:894087] *
[codex:894087] * - `target` must be a contract.
[codex:894087] * - calling `target` with `data` must not revert.
[codex:894087] *
[codex:894087] * _Available since v3.1._
[codex:894087] */
[codex:894087]
[codex:894087] thinking
[codex:894087] **Finishing reading the content**
[codex:894087] exec
[codex:894087] /bin/bash -lc "sed -n '2000,2400p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-f0pk3829 succeeded in 6ms:
[codex:894087] * @dev Overload of {ECDSA-tryRecover} that receives the `v`,
[codex:894087] * `r` and `s` signature fields separately.
[codex:894087] *
[codex:894087] * _Available since v4.3._
[codex:894087] */
[codex:894087] function tryRecover(
[codex:894087] bytes32 hash,
[codex:894087] uint8 v,
[codex:894087] bytes32 r,
[codex:894087] bytes32 s
[codex:894087] ) internal pure returns (address, RecoverError) {
[codex:894087] // EIP-2 still allows signature malleability for ecrecover(). Remove this possibility and make the signature
[codex:894087] // unique. Appendix F in the Ethereum Yellow paper (https://ethereum.github.io/yellowpaper/paper.pdf), defines
[codex:894087] // the valid range for s in (301): 0 < s < secp256k1n ÷ 2 + 1, and for v in (302): v ∈ {27, 28}. Most
[codex:894087] // signatures from current libraries generate a unique signature with an s-value in the lower half order.
[codex:894087] //
[codex:894087] // If your library generates malleable signatures, such as s-values in the upper range, calculate a new s-value
[codex:894087] // with 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141 - s1 and flip v from 27 to 28 or
[codex:894087] // vice versa. If your library also generates signatures with 0/1 for v instead 27/28, add 27 to v to accept
[codex:894087] // these malleable signatures as well.
[codex:894087]
[codex:894087] thinking
[codex:894087] **Finishing review**
[codex:894087] exec
[codex:894087] /bin/bash -lc "sed -n '2400,2800p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-f0pk3829 succeeded in 5ms:
[codex:894087] }
[codex:894087] if (value >> 1 > 0) {
[codex:894087] result += 1;
[codex:894087] }
[codex:894087] }
[codex:894087] return result;
[codex:894087] }
[codex:894087]
[codex:894087] /**
[codex:894087] * @dev Return the log in base 2, following the selected rounding direction, of a positive value.
[codex:894087] * Returns 0 if given 0.
[codex:894087] */
[codex:894087] function log2(uint256 value, Rounding rounding) internal pure returns (uint256) {
[codex:894087] unchecked {
[codex:894087] uint256 result = log2(value);
[codex:894087] return result + (rounding == Rounding.Up && 1 << result < value ? 1 : 0);
[codex:894087] }
[codex:894087] }
[codex:894087]
[codex:894087] /**
[codex:894087]
[codex:894087] thinking
[codex:894087] **Continuing to read first-party code**
[codex:894087] exec
[codex:894087] /bin/bash -lc "sed -n '2800,3200p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-f0pk3829 succeeded in 5ms:
[codex:894087] __Pausable_init();
[codex:894087]
[codex:894087] _cyanVaultTokenAddress = cyanVaultTokenAddress;
[codex:894087] _cyanVaultTokenContract = ICyanVaultTokenV1(_cyanVaultTokenAddress);
[codex:894087] _currencyTokenAddress = currencyTokenAddress;
[codex:894087]
[codex:894087] if (currencyTokenAddress != address(0)) {
[codex:894087] _currencyToken = IERC20Upgradeable(currencyTokenAddress);
[codex:894087] nonNativeCurrency = true;
[codex:894087] } else {
[codex:894087] nonNativeCurrency = false;
[codex:894087] }
[codex:894087] _safetyFundPercent = safetyFundPercent;
[codex:894087] _serviceFeePercent = serviceFeePercent;
[codex:894087]
[codex:894087] LOANED_AMOUNT = 0;
[codex:894087] DEFAULTED_NFT_ASSET_AMOUNT = 0;
[codex:894087] REMAINING_AMOUNT = 0;
[codex:894087]
[codex:894087] _setupRole(DEFAULT_ADMIN_ROLE, cyanSuperAdmin);
[codex:894087] exec
[codex:894087] /bin/bash -lc "sed -n '3200,3600p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-f0pk3829 succeeded in 6ms:
[codex:894087] function unpause() external nonReentrant onlyRole(DEFAULT_ADMIN_ROLE) {
[codex:894087] _unpause();
[codex:894087] }
[codex:894087]
[codex:894087] function migrateToMainVault(address mainVaultAddress, address[] calldata tokenHolders)
[codex:894087] external
[codex:894087] nonReentrant
[codex:894087] whenNotPaused
[codex:894087] onlyRole(DEFAULT_ADMIN_ROLE)
[codex:894087] {
[codex:894087] require(mainVaultAddress != address(0), "Main vault address cannot be zero");
[codex:894087] require(LOANED_AMOUNT == 0, "Cannot migrate when there are active loans");
[codex:894087] require(DEFAULTED_NFT_ASSET_AMOUNT == 0, "Cannot migrate when there are defaulted assets");
[codex:894087] require(REMAINING_AMOUNT > 0, "Cannot migrate when there is no remaining amount");
[codex:894087]
[codex:894087] // Check if both vaults have the same currency
[codex:894087] address mainVaultCurrencyAddress = CyanVaultV2(mainVaultAddress).getCurrencyAddress();
[codex:894087] require(mainVaultCurrencyAddress == _currencyTokenAddress, "Currency mismatch between vaults");
[codex:894087]
[codex:894087] uint256 totalToken = _cyanVaultTokenContract.totalSupply();
[codex:894087]
[codex:894087] thinking
[codex:894087] **Confirming file end**
[codex:894087] exec
[codex:894087] /bin/bash -lc 'tail -n 20 AUDIT_BUNDLE.txt' in /tmp/codex-multi-f0pk3829 succeeded in 5ms:
[codex:894087] pragma solidity 0.8.19;
[codex:894087]
[codex:894087] interface ICryptoPunk {
[codex:894087] function punkIndexToAddress(uint256) external view returns (address);
[codex:894087]
[codex:894087] function buyPunk(uint256) external payable;
[codex:894087]
[codex:894087] function transferPunk(address, uint256) external;
[codex:894087]
[codex:894087] function offerPunkForSale(uint256, uint256) external;
[codex:894087]
[codex:894087] function offerPunkForSaleToAddress(
[codex:894087] uint256,
[codex:894087] uint256,
[codex:894087] address
[codex:894087] ) external;
[codex:894087]
[codex:894087] function acceptBidForPunk(uint256, uint256) external;
[codex:894087] }
[codex:894087]
[codex:894087]
[codex:894087]
[codex:894087]
[codex:894087]
[codex:894087] thinking
[codex:894087] **Analyzing CyanVaultV2 vulnerabilities and design**
[codex:894087]
[codex:894087] I’m thoroughly auditing CyanVaultV2 for common risks like reentrancy, access control, upgrade patterns, signature misuse, and accounting correctness. There’s a lot to unpack around role restrictions, external calls, reentrancy guards, token accounting, signature replay risks, and upgrade initializer completeness. I’m carefully weighing whether each potential issue poses a real threat given the roles and context, focusing on implications like improper allowance handling, fee-on-transfer tokens, and signature replay that could affect contract integrity under admin or attacker actions.
[codex:894087] thinking
[codex:894087] **Reviewing nuanced risks in funds management and signature logic**
[codex:894087]
[codex:894087] I'm assessing deeper concerns like allowance misuse by privileged roles, subtle mismatches in accounting during fee collection and migration, reentrancy possibilities around external calls despite guards, and the implications of signature replay due to missing context fields. I’m also pointing out how token transferability can undermine withdrawal locks and how role assignments and external contract calls interact to create complex trust boundaries. It’s intricate, but I’m tying together how these factors might combine to impact the contract’s behavior under certain admin or attacker scenarios.
[codex:894087] thinking
[codex:894087] **Examining token accounting edge cases and signature replay risks**
[codex:894087]
[codex:894087] I'm digging into possible rounding and duplicate handling quirks in token calculations, unchecked approve return values in migration, and how transferability might let users bypass withdrawal locks. Also, I’m carefully weighing replay vulnerabilities in signature validation due to missing domain separation and nonce, noting that only privileged roles can exploit this, which limits risks but doesn’t eliminate subtle design flaws.
[codex:894087] thinking
[codex:894087] **Identifying key vulnerabilities involving token locks and signature replay**
[codex:894087]
[codex:894087] I'm focusing on withdrawal lock circumvention via token transfers, risks from signature replay due to missing domain binding and nonces, plus unchecked ERC20 approve returns. These look like the main technical issues worth detailing, with considerations of impact and severity while verifying safe defaults elsewhere.
[codex:894087] exec
[codex:894087] /bin/bash -lc "nl -ba contracts/contracts/main/CyanVaultV2.sol | sed -n '140,260p'" in /tmp/codex-multi-f0pk3829 succeeded in 7ms:
[codex:894087] 140 _cyanVaultTokenContract = ICyanVaultTokenV1(_cyanVaultTokenAddress);
[codex:894087] 141 _currencyTokenAddress = currencyTokenAddress;
[codex:894087] 142
[codex:894087] 143 if (currencyTokenAddress != address(0)) {
[codex:894087] 144 _currencyToken = IERC20Upgradeable(currencyTokenAddress);
[codex:894087] 145 nonNativeCurrency = true;
[codex:894087] 146 } else {
[codex:894087] 147 nonNativeCurrency = false;
[codex:894087] 148 }
[codex:894087] 149 _safetyFundPercent = safetyFundPercent;
[codex:894087] 150 _serviceFeePercent = serviceFeePercent;
[codex:894087] 151
[codex:894087] 152 LOANED_AMOUNT = 0;
[codex:894087] 153 DEFAULTED_NFT_ASSET_AMOUNT = 0;
[codex:894087] 154 REMAINING_AMOUNT = 0;
[codex:894087] 155
[codex:894087] 156 _setupRole(DEFAULT_ADMIN_ROLE, cyanSuperAdmin);
[codex:894087] 157 _setupRole(CYAN_PAYMENT_PLAN_ROLE, cyanPaymentPlanAddress);
[codex:894087] 158
[codex:894087] 159 _walletFactory = factory;
[codex:894087]
[codex:894087] thinking
[codex:894087] **Locating withdraw function**
[codex:894087] exec
[codex:894087] /bin/bash -lc "nl -ba contracts/contracts/main/CyanVaultV2.sol | sed -n '300,420p'" in /tmp/codex-multi-f0pk3829 succeeded in 7ms:
[codex:894087] 300 emit AutoLiquidated(info.planId, 1); // Opensea
[codex:894087] 301 }
[codex:894087] 302
[codex:894087] 303 function autoLiquidateByEarlyUnwindCyan(
[codex:894087] 304 AutoLiquidationInfo calldata info,
[codex:894087] 305 address cyanBuyerAddress,
[codex:894087] 306 uint256 unwindSignatureExpiryDate,
[codex:894087] 307 bytes memory unwindSignature
[codex:894087] 308 ) external whenNotPaused onlyRole(CYAN_ROLE) {
[codex:894087] 309 verifyAutoLiquidationSignature(info);
[codex:894087] 310
[codex:894087] 311 ICyanPaymentPlanV2 paymentPlan = ICyanPaymentPlanV2(info.paymentPlanAddress);
[codex:894087] 312 paymentPlan.earlyUnwindCyan(
[codex:894087] 313 info.planId,
[codex:894087] 314 info.apePlanIds,
[codex:894087] 315 info.price,
[codex:894087] 316 cyanBuyerAddress,
[codex:894087] 317 unwindSignatureExpiryDate,
[codex:894087] 318 unwindSignature
[codex:894087] 319 );
[codex:894087]
[codex:894087] thinking
[codex:894087] **Requesting line numbers for verification**
[codex:894087] exec
[codex:894087] /bin/bash -lc "nl -ba contracts/contracts/main/CyanVaultV2.sol | sed -n '500,640p'" in /tmp/codex-multi-f0pk3829 succeeded in 6ms:
[codex:894087] 500 */
[codex:894087] 501 function updateWalletFactoryAddress(address factory) external onlyRole(DEFAULT_ADMIN_ROLE) {
[codex:894087] 502 require(factory != address(0) && _walletFactory != factory, "Invalid factory address");
[codex:894087] 503 _walletFactory = factory;
[codex:894087] 504 emit UpdatedWalletFactory(factory);
[codex:894087] 505 }
[codex:894087] 506
[codex:894087] 507 /**
[codex:894087] 508 * @notice Updating Cyan signer address that used for verifying auto liquidation signature
[codex:894087] 509 * @param signer New Cyan signer address
[codex:894087] 510 */
[codex:894087] 511 function updateCyanSigner(address signer) external onlyRole(DEFAULT_ADMIN_ROLE) {
[codex:894087] 512 require(signer != address(0), "Invalid signer address");
[codex:894087] 513 cyanSigner = signer;
[codex:894087] 514 emit UpdatedCyanSigner(signer);
[codex:894087] 515 }
[codex:894087] 516
[codex:894087] 517 function verifyAutoLiquidationSignature(AutoLiquidationInfo calldata info) internal view {
[codex:894087] 518 require(block.timestamp <= info.signatureExpiryDate, "Signature expired");
[codex:894087] 519 bytes32 msgHash = keccak256(
[codex:894087]
[codex:894087] thinking
[codex:894087] **Summarizing security findings and crafting JSON output**
[codex:894087]
[codex:894087] I'll organize the vulnerability details with severity, evidence, categories, and recommendations, focusing on withdrawal lock bypass, signature replay risks, and unchecked ERC20 approve return values; then I'll format everything as valid JSON with approximate line numbers and all required fields for the final report.
[codex:894087] codex
[codex:894087] {"no_findings":false,"summary":"Identified issues around withdrawal lock enforcement, auto‑liquidation signature binding/replay, and an unchecked ERC20 approve during migration.","findings":[{"severity":"low","category":"other","title":"Withdrawal lock can be bypassed by transferring vault tokens","exploit_scenario":"A user deposits and receives vault tokens in their wallet contract, then transfers those tokens to a fresh address. Because `withdraw()` only checks `withdrawLocked[msg.sender]` and the lock is only set on the original wallet, the new address has no lock and can withdraw immediately, bypassing `_withdrawLockTerm`.","recommendation":"Enforce the lock in the vault token itself (block transfers while locked) or update lock metadata on transfers. Alternatively, track locks per deposit or require withdrawals to originate from the wallet address returned by the factory.","evidence":"`deposit()` sets `withdrawLocked[cyanWalletAddress]` (lines 181–196) while `withdraw()` only checks `withdrawLocked[msg.sender]` (line 326), with no transfer hook to propagate locks.","locations":["contracts/contracts/main/CyanVaultV2.sol:181","contracts/contracts/main/CyanVaultV2.sol:196","contracts/contracts/main/CyanVaultV2.sol:324","contracts/contracts/main/CyanVaultV2.sol:326"]},{"severity":"medium","category":"auth","title":"Auto‑liquidation signatures lack domain separation and replay protection","exploit_scenario":"A valid signature can be replayed across different liquidation methods or even different payment plan contracts (on the same chain) because the signed payload omits `paymentPlanAddress`, the vault address, and any action identifier. A CYAN_ROLE caller can reuse a signature intended for one context to authorize another until expiry.","recommendation":"Bind signatures to the intended target and action by including the vault address, `paymentPlanAddress`, and an action identifier (e.g., function selector). Add a nonce or a consumed‑signature mapping to prevent replay until expiry. Prefer EIP‑712 typed data for clearer domain separation.","evidence":"`verifyAutoLiquidationSignature` only hashes `planId`, `apePlanIds`, `price`, `signatureExpiryDate`, and `chainid` before `recover`, with no nonce or contract/action binding.","locations":["contracts/contracts/main/CyanVaultV2.sol:517","contracts/contracts/main/CyanVaultV2.sol:520","contracts/contracts/main/CyanVaultV2.sol:529"]},{"severity":"info","category":"other","title":"Unchecked ERC20 approve return value during migration","exploit_scenario":"For non‑standard ERC20s that return `false` on `approve` without reverting, the migration flow proceeds without noticing the failure. This can cause unexpected migration reverts when the main vault later calls `transferFrom`, and complicates operational safety.","recommendation":"Use `SafeERC20Upgradeable.safeApprove` or `safeIncreaseAllowance`, or check the return value explicitly before proceeding.","evidence":"`_currencyToken.approve(mainVaultAddress, REMAINING_AMOUNT);` is called directly without checking its return value.","locations":["contracts/contracts/main/CyanVaultV2.sol:583","contracts/contracts/main/CyanVaultV2.sol:585"]}]}
[codex:894087] tokens used
[codex:894087] 116,707
[codex:894087] {"no_findings":false,"summary":"Identified issues around withdrawal lock enforcement, auto‑liquidation signature binding/replay, and an unchecked ERC20 approve during migration.","findings":[{"severity":"low","category":"other","title":"Withdrawal lock can be bypassed by transferring vault tokens","exploit_scenario":"A user deposits and receives vault tokens in their wallet contract, then transfers those tokens to a fresh address. Because `withdraw()` only checks `withdrawLocked[msg.sender]` and the lock is only set on the original wallet, the new address has no lock and can withdraw immediately, bypassing `_withdrawLockTerm`.","recommendation":"Enforce the lock in the vault token itself (block transfers while locked) or update lock metadata on transfers. Alternatively, track locks per deposit or require withdrawals to originate from the wallet address returned by the factory.","evidence":"`deposit()` sets `withdrawLocked[cyanWalletAddress]` (lines 181–196) while `withdraw()` only checks `withdrawLocked[msg.sender]` (line 326), with no transfer hook to propagate locks.","locations":["contracts/contracts/main/CyanVaultV2.sol:181","contracts/contracts/main/CyanVaultV2.sol:196","contracts/contracts/main/CyanVaultV2.sol:324","contracts/contracts/main/CyanVaultV2.sol:326"]},{"severity":"medium","category":"auth","title":"Auto‑liquidation signatures lack domain separation and replay protection","exploit_scenario":"A valid signature can be replayed across different liquidation methods or even different payment plan contracts (on the same chain) because the signed payload omits `paymentPlanAddress`, the vault address, and any action identifier. A CYAN_ROLE caller can reuse a signature intended for one context to authorize another until expiry.","recommendation":"Bind signatures to the intended target and action by including the vault address, `paymentPlanAddress`, and an action identifier (e.g., function selector). Add a nonce or a consumed‑signature mapping to prevent replay until expiry. Prefer EIP‑712 typed data for clearer domain separation.","evidence":"`verifyAutoLiquidationSignature` only hashes `planId`, `apePlanIds`, `price`, `signatureExpiryDate`, and `chainid` before `recover`, with no nonce or contract/action binding.","locations":["contracts/contracts/main/CyanVaultV2.sol:517","contracts/contracts/main/CyanVaultV2.sol:520","contracts/contracts/main/CyanVaultV2.sol:529"]},{"severity":"info","category":"other","title":"Unchecked ERC20 approve return value during migration","exploit_scenario":"For non‑standard ERC20s that return `false` on `approve` without reverting, the migration flow proceeds without noticing the failure. This can cause unexpected migration reverts when the main vault later calls `transferFrom`, and complicates operational safety.","recommendation":"Use `SafeERC20Upgradeable.safeApprove` or `safeIncreaseAllowance`, or check the return value explicitly before proceeding.","evidence":"`_currencyToken.approve(mainVaultAddress, REMAINING_AMOUNT);` is called directly without checking its return value.","locations":["contracts/contracts/main/CyanVaultV2.sol:583","contracts/contracts/main/CyanVaultV2.sol:585"]}]}
{
"codex": {
"ran_at": "2025-12-30T19:04:34.632355+00:00",
"returncode": 0
},
"summary": "Identified issues around withdrawal lock enforcement, auto\u2011liquidation signature binding/replay, and an unchecked ERC20 approve during migration.",
"raw_final": {
"summary": "Identified issues around withdrawal lock enforcement, auto\u2011liquidation signature binding/replay, and an unchecked ERC20 approve during migration.",
"findings": [
{
"title": "Withdrawal lock can be bypassed by transferring vault tokens",
"category": "other",
"evidence": "`deposit()` sets `withdrawLocked[cyanWalletAddress]` (lines 181\u2013196) while `withdraw()` only checks `withdrawLocked[msg.sender]` (line 326), with no transfer hook to propagate locks.",
"severity": "low",
"locations": [
"contracts/contracts/main/CyanVaultV2.sol:181",
"contracts/contracts/main/CyanVaultV2.sol:196",
"contracts/contracts/main/CyanVaultV2.sol:324",
"contracts/contracts/main/CyanVaultV2.sol:326"
],
"recommendation": "Enforce the lock in the vault token itself (block transfers while locked) or update lock metadata on transfers. Alternatively, track locks per deposit or require withdrawals to originate from the wallet address returned by the factory.",
"exploit_scenario": "A user deposits and receives vault tokens in their wallet contract, then transfers those tokens to a fresh address. Because `withdraw()` only checks `withdrawLocked[msg.sender]` and the lock is only set on the original wallet, the new address has no lock and can withdraw immediately, bypassing `_withdrawLockTerm`."
},
{
"title": "Auto\u2011liquidation signatures lack domain separation and replay protection",
"category": "auth",
"evidence": "`verifyAutoLiquidationSignature` only hashes `planId`, `apePlanIds`, `price`, `signatureExpiryDate`, and `chainid` before `recover`, with no nonce or contract/action binding.",
"severity": "medium",
"locations": [
"contracts/contracts/main/CyanVaultV2.sol:517",
"contracts/contracts/main/CyanVaultV2.sol:520",
"contracts/contracts/main/CyanVaultV2.sol:529"
],
"recommendation": "Bind signatures to the intended target and action by including the vault address, `paymentPlanAddress`, and an action identifier (e.g., function selector). Add a nonce or a consumed\u2011signature mapping to prevent replay until expiry. Prefer EIP\u2011712 typed data for clearer domain separation.",
"exploit_scenario": "A valid signature can be replayed across different liquidation methods or even different payment plan contracts (on the same chain) because the signed payload omits `paymentPlanAddress`, the vault address, and any action identifier. A CYAN_ROLE caller can reuse a signature intended for one context to authorize another until expiry."
},
{
"title": "Unchecked ERC20 approve return value during migration",
"category": "other",
"evidence": "`_currencyToken.approve(mainVaultAddress, REMAINING_AMOUNT);` is called directly without checking its return value.",
"severity": "info",
"locations": [
"contracts/contracts/main/CyanVaultV2.sol:583",
"contracts/contracts/main/CyanVaultV2.sol:585"
],
"recommendation": "Use `SafeERC20Upgradeable.safeApprove` or `safeIncreaseAllowance`, or check the return value explicitly before proceeding.",
"exploit_scenario": "For non\u2011standard ERC20s that return `false` on `approve` without reverting, the migration flow proceeds without noticing the failure. This can cause unexpected migration reverts when the main vault later calls `transferFrom`, and complicates operational safety."
}
],
"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: PUSH2 0x034a 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0x823cbb09 00000019: GT 0000001a: PUSH2 0x01bb 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0xb6b55f25 00000024: GT 00000025: PUSH2 0x00f7 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xe364a439 0000002f: GT 00000030: PUSH2 0x0095 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xec8e83c0 0000003a: GT 0000003b: PUSH2 0x006f 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xec8e83c0 00000045: EQ 00000046: PUSH2 0x09d1 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xf23a6e61 00000050: EQ 00000051: PUSH2 0x09f1 00000054: JUMPI 00000055: DUP1 00000056: PUSH4 0xf61e0268 0000005b: EQ 0000005c: PUSH2 0x0a1d 0000005f: JUMPI 00000060: DUP1 00000061: PUSH4 0xfde7d7e6 00000066: EQ 00000067: PUSH2 0x0a3d 0000006a: JUMPI 0000006b: PUSH1 0x00 0000006d: DUP1 0000006e: REVERT 0000006f: JUMPDEST 00000070: DUP1 00000071: PUSH4 0xe364a439 00000076: EQ 00000077: PUSH2 0x0971 0000007a: JUMPI 0000007b: DUP1 0000007c: PUSH4 0xe895e117 00000081: EQ 00000082: PUSH2 0x0991 00000085: JUMPI 00000086: DUP1 00000087: PUSH4 0xe8c5c6d3 0000008c: EQ 0000008d: PUSH2 0x09b1 00000090: JUMPI 00000091: PUSH1 0x00 00000093: DUP1 00000094: REVERT 00000095: JUMPDEST 00000096: DUP1 00000097: PUSH4 0xc7e01ad6 0000009c: GT 0000009d: PUSH2 0x00d1 000000a0: JUMPI 000000a1: DUP1 000000a2: PUSH4 0xc7e01ad6 000000a7: EQ 000000a8: PUSH2 0x08d2 000000ab: JUMPI 000000ac: DUP1 000000ad: PUSH4 0xc9d375f4 000000b2: EQ 000000b3: PUSH2 0x08f2 000000b6: JUMPI 000000b7: DUP1 000000b8: PUSH4 0xd23f9a9a 000000bd: EQ 000000be: PUSH2 0x092f 000000c1: JUMPI 000000c2: DUP1 000000c3: PUSH4 0xd547741f 000000c8: EQ 000000c9: PUSH2 0x0951 000000cc: JUMPI 000000cd: PUSH1 0x00 000000cf: DUP1 000000d0: REVERT 000000d1: JUMPDEST 000000d2: DUP1 000000d3: PUSH4 0xb6b55f25 000000d8: EQ 000000d9: PUSH2 0x0874 000000dc: JUMPI 000000dd: DUP1 000000de: PUSH4 0xbc197c81 000000e3: EQ 000000e4: PUSH2 0x0887 000000e7: JUMPI 000000e8: DUP1 000000e9: PUSH4 0xbfe0c27e 000000ee: EQ 000000ef: PUSH2 0x08b3 000000f2: JUMPI 000000f3: PUSH1 0x00 000000f5: DUP1 000000f6: REVERT 000000f7: JUMPDEST 000000f8: DUP1 000000f9: PUSH4 0x8d676a92 000000fe: GT 000000ff: PUSH2 0x0164 00000102: JUMPI 00000103: DUP1 00000104: PUSH4 0xa2fb342d 00000109: GT 0000010a: PUSH2 0x013e 0000010d: JUMPI 0000010e: DUP1 0000010f: PUSH4 0xa2fb342d 00000114: EQ 00000115: PUSH2 0x07ec 00000118: JUMPI 00000119: DUP1 0000011a: PUSH4 0xa6617e78 0000011f: EQ 00000120: PUSH2 0x080c 00000123: JUMPI 00000124: DUP1 00000125: PUSH4 0xa930daf4 0000012a: EQ 0000012b: PUSH2 0x081f 0000012e: JUMPI 0000012f: DUP1 00000130: PUSH4 0xb5a68b81 00000135: EQ 00000136: PUSH2 0x0853 00000139: JUMPI 0000013a: PUSH1 0x00 0000013c: DUP1 0000013d: REVERT 0000013e: JUMPDEST 0000013f: DUP1 00000140: PUSH4 0x8d676a92 00000145: EQ 00000146: PUSH2 0x0771 00000149: JUMPI 0000014a: DUP1 0000014b: PUSH4 0x91d14854 00000150: EQ 00000151: PUSH2 0x0791 00000154: JUMPI 00000155: DUP1 00000156: PUSH4 0xa217fddf 0000015b: EQ 0000015c: PUSH2 0x07d7 0000015f: JUMPI 00000160: PUSH1 0x00 00000162: DUP1 00000163: REVERT 00000164: JUMPDEST 00000165: DUP1 00000166: PUSH4 0x87acb02c 0000016b: GT 0000016c: PUSH2 0x0195 0000016f: JUMPI 00000170: DUP1 00000171: PUSH4 0x87acb02c 00000176: EQ 00000177: PUSH2 0x0706 0000017a: JUMPI 0000017b: DUP1 0000017c: PUSH4 0x87e23bbc 00000181: EQ 00000182: PUSH2 0x0726 00000185: JUMPI 00000186: DUP1 00000187: PUSH4 0x88b122e7 0000018c: EQ 0000018d: PUSH2 0x075a 00000190: JUMPI 00000191: PUSH1 0x00 00000193: DUP1 00000194: REVERT 00000195: JUMPDEST 00000196: DUP1 00000197: PUSH4 0x823cbb09 0000019c: EQ 0000019d: PUSH2 0x0698 000001a0: JUMPI 000001a1: DUP1 000001a2: PUSH4 0x843592d3 000001a7: EQ 000001a8: PUSH2 0x06d1 000001ab: JUMPI 000001ac: DUP1 000001ad: PUSH4 0x8456cb59 000001b2: EQ 000001b3: PUSH2 0x06f1 000001b6: JUMPI 000001b7: PUSH1 0x00 000001b9: DUP1 000001ba: REVERT 000001bb: JUMPDEST 000001bc: DUP1 000001bd: PUSH4 0x46fe120e 000001c2: GT 000001c3: PUSH2 0x028a 000001c6: JUMPI 000001c7: DUP1 000001c8: PUSH4 0x5ef6a3bc 000001cd: GT 000001ce: PUSH2 0x0233 000001d1: JUMPI 000001d2: DUP1 000001d3: PUSH4 0x6d54294b 000001d8: GT 000001d9: PUSH2 0x020d 000001dc: JUMPI 000001dd: DUP1 000001de: PUSH4 0x6d54294b 000001e3: EQ 000001e4: PUSH2 0x061e 000001e7: JUMPI 000001e8: DUP1 000001e9: PUSH4 0x7ac0d155 000001ee: EQ 000001ef: PUSH2 0x0635 000001f2: JUMPI 000001f3: DUP1 000001f4: PUSH4 0x7bc56558 000001f9: EQ 000001fa: PUSH2 0x0663 000001fd: JUMPI 000001fe: DUP1 000001ff: PUSH4 0x7d8d1846 00000204: EQ 00000205: PUSH2 0x0683 00000208: JUMPI 00000209: PUSH1 0x00 0000020b: DUP1 0000020c: REVERT 0000020d: JUMPDEST 0000020e: DUP1 0000020f: PUSH4 0x5ef6a3bc 00000214: EQ 00000215: PUSH2 0x05cb 00000218: JUMPI 00000219: DUP1 0000021a: PUSH4 0x643840f2 0000021f: EQ 00000220: PUSH2 0x05eb 00000223: JUMPI 00000224: DUP1 00000225: PUSH4 0x6c66cee2 0000022a: EQ 0000022b: PUSH2 0x05fe 0000022e: JUMPI 0000022f: PUSH1 0x00 00000231: DUP1 00000232: REVERT 00000233: JUMPDEST 00000234: DUP1 00000235: PUSH4 0x590c5ef3 0000023a: GT 0000023b: PUSH2 0x0264 0000023e: JUMPI 0000023f: DUP1 00000240: PUSH4 0x590c5ef3 00000245: EQ 00000246: PUSH2 0x0580 00000249: JUMPI 0000024a: DUP1 0000024b: PUSH4 0x5c975abb 00000250: EQ 00000251: PUSH2 0x05a0 00000254: JUMPI 00000255: DUP1 00000256: PUSH4 0x5ec82d83 0000025b: EQ 0000025c: PUSH2 0x05b8 0000025f: JUMPI 00000260: PUSH1 0x00 00000262: DUP1 00000263: REVERT 00000264: JUMPDEST 00000265: DUP1 00000266: PUSH4 0x46fe120e 0000026b: EQ 0000026c: PUSH2 0x051e 0000026f: JUMPI 00000270: DUP1 00000271: PUSH4 0x533ba0df 00000276: EQ 00000277: PUSH2 0x0540 0000027a: JUMPI 0000027b: DUP1 0000027c: PUSH4 0x555f90c4 00000281: EQ 00000282: PUSH2 0x0560 00000285: JUMPI 00000286: PUSH1 0x00 00000288: DUP1 00000289: REVERT 0000028a: JUMPDEST 0000028b: DUP1 0000028c: PUSH4 0x2b09dd0f 00000291: GT 00000292: PUSH2 0x02f7 00000295: JUMPI 00000296: DUP1 00000297: PUSH4 0x36568abe 0000029c: GT 0000029d: PUSH2 0x02d1 000002a0: JUMPI 000002a1: DUP1 000002a2: PUSH4 0x36568abe 000002a7: EQ 000002a8: PUSH2 0x04a9 000002ab: JUMPI 000002ac: DUP1 000002ad: PUSH4 0x3f4ba83a 000002b2: EQ 000002b3: PUSH2 0x04c9 000002b6: JUMPI 000002b7: DUP1 000002b8: PUSH4 0x404da783 000002bd: EQ 000002be: PUSH2 0x04de 000002c1: JUMPI 000002c2: DUP1 000002c3: PUSH4 0x45e1aa3c 000002c8: EQ 000002c9: PUSH2 0x04fe 000002cc: JUMPI 000002cd: PUSH1 0x00 000002cf: DUP1 000002d0: REVERT 000002d1: JUMPDEST 000002d2: DUP1 000002d3: PUSH4 0x2b09dd0f 000002d8: EQ 000002d9: PUSH2 0x0449 000002dc: JUMPI 000002dd: DUP1 000002de: PUSH4 0x2e1a7d4d 000002e3: EQ 000002e4: PUSH2 0x0469 000002e7: JUMPI 000002e8: DUP1 000002e9: PUSH4 0x2f2ff15d 000002ee: EQ 000002ef: PUSH2 0x0489 000002f2: JUMPI 000002f3: PUSH1 0x00 000002f5: DUP1 000002f6: REVERT 000002f7: JUMPDEST 000002f8: DUP1 000002f9: PUSH4 0x150b7a02 000002fe: GT 000002ff: PUSH2 0x0328 00000302: JUMPI 00000303: DUP1 00000304: PUSH4 0x150b7a02 00000309: EQ 0000030a: PUSH2 0x03be 0000030d: JUMPI 0000030e: DUP1 0000030f: PUSH4 0x156b2d89 00000314: EQ 00000315: PUSH2 0x03f7 00000318: JUMPI 00000319: DUP1 0000031a: PUSH4 0x248a9ca3 0000031f: EQ 00000320: PUSH2 0x0419 00000323: JUMPI 00000324: PUSH1 0x00 00000326: DUP1 00000327: REVERT 00000328: JUMPDEST 00000329: DUP1 0000032a: PUSH4 0x01ffc9a7 0000032f: EQ 00000330: PUSH2 0x034f 00000333: JUMPI 00000334: DUP1 00000335: PUSH4 0x037d69f5 0000033a: EQ 0000033b: PUSH2 0x0384 0000033e: JUMPI 0000033f: DUP1 00000340: PUSH4 0x0bdb92c0 00000345: EQ 00000346: PUSH2 0x03a9 00000349: JUMPI 0000034a: JUMPDEST 0000034b: PUSH1 0x00 0000034d: DUP1 0000034e: REVERT 0000034f: JUMPDEST 00000350: CALLVALUE 00000351: DUP1 00000352: ISZERO 00000353: PUSH2 0x035b 00000356: JUMPI 00000357: PUSH1 0x00 00000359: DUP1 0000035a: REVERT 0000035b: JUMPDEST 0000035c: POP 0000035d: PUSH2 0x036f 00000360: PUSH2 0x036a 00000363: CALLDATASIZE 00000364: PUSH1 0x04 00000366: PUSH2 0x46b8 00000369: JUMP 0000036a: JUMPDEST 0000036b: PUSH2 0x0a5d 0000036e: JUMP 0000036f: JUMPDEST 00000370: PUSH1 0x40 00000372: MLOAD 00000373: SWAP1 00000374: ISZERO 00000375: ISZERO 00000376: DUP2 00000377: MSTORE 00000378: PUSH1 0x20 0000037a: ADD 0000037b: JUMPDEST 0000037c: PUSH1 0x40 0000037e: MLOAD 0000037f: DUP1 00000380: SWAP2 00000381: SUB 00000382: SWAP1 00000383: RETURN 00000384: JUMPDEST 00000385: CALLVALUE 00000386: DUP1 00000387: ISZERO 00000388: PUSH2 0x0390 0000038b: JUMPI 0000038c: PUSH1 0x00 0000038e: DUP1 0000038f: REVERT 00000390: JUMPDEST 00000391: POP 00000392: PUSH2 0x039b 00000395: PUSH2 0x0132 00000398: SLOAD 00000399: DUP2 0000039a: JUMP 0000039b: JUMPDEST 0000039c: PUSH1 0x40 0000039e: MLOAD 0000039f: SWAP1 000003a0: DUP2 000003a1: MSTORE 000003a2: PUSH1 0x20 000003a4: ADD 000003a5: PUSH2 0x037b 000003a8: JUMP 000003a9: JUMPDEST 000003aa: CALLVALUE 000003ab: DUP1 000003ac: ISZERO 000003ad: PUSH2 0x03b5 000003b0: JUMPI 000003b1: PUSH1 0x00 000003b3: DUP1 000003b4: REVERT 000003b5: JUMPDEST 000003b6: POP 000003b7: PUSH2 0x039b 000003ba: PUSH2 0x0a6e 000003bd: JUMP 000003be: JUMPDEST 000003bf: CALLVALUE 000003c0: DUP1 000003c1: ISZERO 000003c2: PUSH2 0x03ca 000003c5: JUMPI 000003c6: PUSH1 0x00 000003c8: DUP1 000003c9: REVERT 000003ca: JUMPDEST 000003cb: POP 000003cc: PUSH2 0x03de 000003cf: PUSH2 0x03d9 000003d2: CALLDATASIZE 000003d3: PUSH1 0x04 000003d5: PUSH2 0x47ae 000003d8: JUMP 000003d9: JUMPDEST 000003da: PUSH2 0x0ac8 000003dd: JUMP 000003de: JUMPDEST 000003df: PUSH1 0x40 000003e1: MLOAD 000003e2: PUSH1 0x01 000003e4: PUSH1 0x01 000003e6: PUSH1 0xe0 000003e8: SHL 000003e9: SUB 000003ea: NOT 000003eb: SWAP1 000003ec: SWAP2 000003ed: AND 000003ee: DUP2 000003ef: MSTORE 000003f0: PUSH1 0x20 000003f2: ADD 000003f3: PUSH2 0x037b 000003f6: JUMP 000003f7: JUMPDEST 000003f8: CALLVALUE 000003f9: DUP1 000003fa: ISZERO 000003fb: PUSH2 0x0403 000003fe: JUMPI 000003ff: PUSH1 0x00 00000401: DUP1 00000402: REVERT 00000403: JUMPDEST 00000404: POP 00000405: PUSH2 0x0417 00000408: PUSH2 0x0412 0000040b: CALLDATASIZE 0000040c: PUSH1 0x04 0000040e: PUSH2 0x4832 00000411: JUMP 00000412: JUMPDEST 00000413: PUSH2 0x0ad9 00000416: JUMP 00000417: JUMPDEST 00000418: STOP 00000419: JUMPDEST 0000041a: CALLVALUE 0000041b: DUP1 0000041c: ISZERO 0000041d: PUSH2 0x0425 00000420: JUMPI 00000421: PUSH1 0x00 00000423: DUP1 00000424: REVERT 00000425: JUMPDEST 00000426: POP 00000427: PUSH2 0x039b 0000042a: PUSH2 0x0434 0000042d: CALLDATASIZE 0000042e: PUSH1 0x04 00000430: PUSH2 0x4867 00000433: JUMP 00000434: JUMPDEST 00000435: PUSH1 0x00 00000437: SWAP1 00000438: DUP2 00000439: MSTORE 0000043a: PUSH1 0x65 0000043c: PUSH1 0x20 0000043e: MSTORE 0000043f: PUSH1 0x40 00000441: SWAP1 00000442: KECCAK256 00000443: PUSH1 0x01 00000445: ADD 00000446: SLOAD 00000447: SWAP1 00000448: JUMP 00000449: JUMPDEST 0000044a: CALLVALUE 0000044b: DUP1 0000044c: ISZERO 0000044d: PUSH2 0x0455 00000450: JUMPI 00000451: PUSH1 0x00 00000453: DUP1 00000454: REVERT 00000455: JUMPDEST 00000456: POP 00000457: PUSH2 0x0417 0000045a: PUSH2 0x0464 0000045d: CALLDATASIZE 0000045e: PUSH1 0x04 00000460: PUSH2 0x4880 00000463: JUMP 00000464: JUMPDEST 00000465: PUSH2 0x0bbd 00000468: JUMP 00000469: JUMPDEST 0000046a: CALLVALUE 0000046b: DUP1 0000046c: ISZERO 0000046d: PUSH2 0x0475 00000470: JUMPI 00000471: PUSH1 0x00 00000473: DUP1 00000474: REVERT 00000475: JUMPDEST 00000476: POP 00000477: PUSH2 0x0417 0000047a: PUSH2 0x0484 0000047d: CALLDATASIZE 0000047e: PUSH1 0x04 00000480: PUSH2 0x4867 00000483: JUMP 00000484: JUMPDEST 00000485: PUSH2 0x0c8c 00000488: JUMP 00000489: JUMPDEST 0000048a: CALLVALUE 0000048b: DUP1 0000048c: ISZERO 0000048d: PUSH2 0x0495 00000490: JUMPI 00000491: PUSH1 0x00 00000493: DUP1 00000494: REVERT 00000495: JUMPDEST 00000496: POP 00000497: PUSH2 0x0417 0000049a: PUSH2 0x04a4 0000049d: CALLDATASIZE 0000049e: PUSH1 0x04 000004a0: PUSH2 0x489d 000004a3: JUMP 000004a4: JUMPDEST 000004a5: PUSH2 0x0e96 000004a8: JUMP 000004a9: JUMPDEST 000004aa: CALLVALUE 000004ab: DUP1 000004ac: ISZERO 000004ad: PUSH2 0x04b5 000004b0: JUMPI 000004b1: PUSH1 0x00 000004b3: DUP1 000004b4: REVERT 000004b5: JUMPDEST 000004b6: POP 000004b7: PUSH2 0x0417 000004ba: PUSH2 0x04c4 000004bd: CALLDATASIZE 000004be: PUSH1 0x04 000004c0: PUSH2 0x489d 000004c3: JUMP 000004c4: JUMPDEST 000004c5: PUSH2 0x0ec0 000004c8: JUMP 000004c9: JUMPDEST 000004ca: CALLVALUE 000004cb: DUP1 000004cc: ISZERO 000004cd: PUSH2 0x04d5 000004d0: JUMPI 000004d1: PUSH1 0x00 000004d3: DUP1 000004d4: REVERT 000004d5: JUMPDEST 000004d6: POP 000004d7: PUSH2 0x0417 000004da: PUSH2 0x0f4c 000004dd: JUMP 000004de: JUMPDEST 000004df: CALLVALUE 000004e0: DUP1 000004e1: ISZERO 000004e2: PUSH2 0x04ea 000004e5: JUMPI 000004e6: PUSH1 0x00 000004e8: DUP1 000004e9: REVERT 000004ea: JUMPDEST 000004eb: POP 000004ec: PUSH2 0x0417 000004ef: PUSH2 0x04f9 000004f2: CALLDATASIZE 000004f3: PUSH1 0x04 000004f5: PUSH2 0x4867 000004f8: JUMP 000004f9: JUMPDEST 000004fa: PUSH2 0x0f74 000004fd: JUMP 000004fe: JUMPDEST 000004ff: CALLVALUE 00000500: DUP1 00000501: ISZERO 00000502: PUSH2 0x050a 00000505: JUMPI 00000506: PUSH1 0x00 00000508: DUP1 00000509: REVERT 0000050a: JUMPDEST 0000050b: POP 0000050c: PUSH2 0x0417 0000050f: PUSH2 0x0519 00000512: CALLDATASIZE 00000513: PUSH1 0x04 00000515: PUSH2 0x48cd 00000518: JUMP 00000519: JUMPDEST 0000051a: PUSH2 0x103b 0000051d: JUMP 0000051e: JUMPDEST 0000051f: CALLVALUE 00000520: DUP1 00000521: ISZERO 00000522: PUSH2 0x052a 00000525: JUMPI 00000526: PUSH1 0x00 00000528: DUP1 00000529: REVERT 0000052a: JUMPDEST 0000052b: POP 0000052c: PUSH2 0x039b 0000052f: PUSH1 0x00 00000531: DUP1 00000532: MLOAD 00000533: PUSH1 0x20 00000535: PUSH2 0x5289 00000538: DUP4 00000539: CODECOPY 0000053a: DUP2 0000053b: MLOAD 0000053c: SWAP2 0000053d: MSTORE 0000053e: DUP2 0000053f: JUMP 00000540: JUMPDEST 00000541: CALLVALUE 00000542: DUP1 00000543: ISZERO 00000544: PUSH2 0x054c 00000547: JUMPI 00000548: PUSH1 0x00 0000054a: DUP1 0000054b: REVERT 0000054c: JUMPDEST 0000054d: POP 0000054e: PUSH2 0x0417 00000551: PUSH2 0x055b 00000554: CALLDATASIZE 00000555: PUSH1 0x04 00000557: PUSH2 0x4953 0000055a: JUMP 0000055b: JUMPDEST 0000055c: PUSH2 0x11e1 0000055f: JUMP 00000560: JUMPDEST 00000561: CALLVALUE 00000562: DUP1 00000563: ISZERO 00000564: PUSH2 0x056c 00000567: JUMPI 00000568: PUSH1 0x00 0000056a: DUP1 0000056b: REVERT 0000056c: JUMPDEST 0000056d: POP 0000056e: PUSH2 0x0417 00000571: PUSH2 0x057b 00000574: CALLDATASIZE 00000575: PUSH1 0x04 00000577: PUSH2 0x49a8 0000057a: JUMP 0000057b: JUMPDEST 0000057c: PUSH2 0x1987 0000057f: JUMP 00000580: JUMPDEST 00000581: CALLVALUE 00000582: DUP1 00000583: ISZERO 00000584: PUSH2 0x058c 00000587: JUMPI 00000588: PUSH1 0x00 0000058a: DUP1 0000058b: REVERT 0000058c: JUMPDEST 0000058d: POP 0000058e: PUSH2 0x0417 00000591: PUSH2 0x059b 00000594: CALLDATASIZE 00000595: PUSH1 0x04 00000597: PUSH2 0x4880 0000059a: JUMP 0000059b: JUMPDEST 0000059c: PUSH2 0x1a74 0000059f: JUMP 000005a0: JUMPDEST 000005a1: CALLVALUE 000005a2: DUP1 000005a3: ISZERO 000005a4: PUSH2 0x05ac 000005a7: JUMPI 000005a8: PUSH1 0x00 000005aa: DUP1 000005ab: REVERT 000005ac: JUMPDEST 000005ad: POP 000005ae: PUSH1 0xfb 000005b0: SLOAD 000005b1: PUSH1 0xff 000005b3: AND 000005b4: PUSH2 0x036f 000005b7: JUMP 000005b8: JUMPDEST 000005b9: PUSH2 0x0417 000005bc: PUSH2 0x05c6 000005bf: CALLDATASIZE 000005c0: PUSH1 0x04 000005c2: PUSH2 0x4a1e 000005c5: JUMP 000005c6: JUMPDEST 000005c7: PUSH2 0x1b36 000005ca: JUMP 000005cb: JUMPDEST 000005cc: CALLVALUE 000005cd: DUP1 000005ce: ISZERO 000005cf: PUSH2 0x05d7 000005d2: JUMPI 000005d3: PUSH1 0x00 000005d5: DUP1 000005d6: REVERT 000005d7: JUMPDEST 000005d8: POP 000005d9: PUSH2 0x0417 000005dc: PUSH2 0x05e6 000005df: CALLDATASIZE 000005e0: PUSH1 0x04 000005e2: PUSH2 0x4ad4 000005e5: JUMP 000005e6: JUMPDEST 000005e7: PUSH2 0x1e66 000005ea: JUMP 000005eb: JUMPDEST 000005ec: PUSH2 0x0417 000005ef: PUSH2 0x05f9 000005f2: CALLDATASIZE 000005f3: PUSH1 0x04 000005f5: PUSH2 0x4b72 000005f8: JUMP 000005f9: JUMPDEST 000005fa: PUSH2 0x1f59 000005fd: JUMP 000005fe: JUMPDEST 000005ff: CALLVALUE 00000600: DUP1 00000601: ISZERO 00000602: PUSH2 0x060a 00000605: JUMPI 00000606: PUSH1 0x00 00000608: DUP1 00000609: REVERT 0000060a: JUMPDEST 0000060b: POP 0000060c: PUSH2 0x0417 0000060f: PUSH2 0x0619 00000612: CALLDATASIZE 00000613: PUSH1 0x04 00000615: PUSH2 0x4867 00000618: JUMP 00000619: JUMPDEST 0000061a: PUSH2 0x2103 0000061d: JUMP 0000061e: JUMPDEST 0000061f: CALLVALUE 00000620: DUP1 00000621: ISZERO 00000622: PUSH2 0x062a 00000625: JUMPI 00000626: PUSH1 0x00 00000628: DUP1 00000629: REVERT 0000062a: JUMPDEST 0000062b: POP 0000062c: PUSH2 0x039b 0000062f: PUSH2 0x0131 00000632: SLOAD 00000633: DUP2 00000634: JUMP 00000635: JUMPDEST 00000636: CALLVALUE 00000637: DUP1 00000638: ISZERO 00000639: PUSH2 0x0641 0000063c: JUMPI 0000063d: PUSH1 0x00 0000063f: DUP1 00000640: REVERT 00000641: JUMPDEST 00000642: POP 00000643: PUSH2 0x039b 00000646: PUSH2 0x0650 00000649: CALLDATASIZE 0000064a: PUSH1 0x04 0000064c: PUSH2 0x4880 0000064f: JUMP 00000650: JUMPDEST 00000651: PUSH2 0x013b 00000654: PUSH1 0x20 00000656: MSTORE 00000657: PUSH1 0x00 00000659: SWAP1 0000065a: DUP2 0000065b: MSTORE 0000065c: PUSH1 0x40 0000065e: SWAP1 0000065f: KECCAK256 00000660: SLOAD 00000661: DUP2 00000662: JUMP 00000663: JUMPDEST 00000664: CALLVALUE 00000665: DUP1 00000666: ISZERO 00000667: PUSH2 0x066f 0000066a: JUMPI 0000066b: PUSH1 0x00 0000066d: DUP1 0000066e: REVERT 0000066f: JUMPDEST 00000670: POP 00000671: PUSH2 0x0417 00000674: PUSH2 0x067e 00000677: CALLDATASIZE 00000678: PUSH1 0x04 0000067a: PUSH2 0x4b72 0000067d: JUMP 0000067e: JUMPDEST 0000067f: PUSH2 0x2152 00000682: JUMP 00000683: JUMPDEST 00000684: CALLVALUE 00000685: DUP1 00000686: ISZERO 00000687: PUSH2 0x068f 0000068a: JUMPI 0000068b: PUSH1 0x00 0000068d: DUP1 0000068e: REVERT 0000068f: JUMPDEST 00000690: POP 00000691: PUSH2 0x0417 00000694: PUSH2 0x2201 00000697: JUMP 00000698: JUMPDEST 00000699: CALLVALUE 0000069a: DUP1 0000069b: ISZERO 0000069c: PUSH2 0x06a4 0000069f: JUMPI 000006a0: PUSH1 0x00 000006a2: DUP1 000006a3: REVERT 000006a4: JUMPDEST 000006a5: POP 000006a6: PUSH2 0x012d 000006a9: SLOAD 000006aa: PUSH2 0x06b9 000006ad: SWAP1 000006ae: PUSH1 0x01 000006b0: PUSH1 0x01 000006b2: PUSH1 0xa0 000006b4: SHL 000006b5: SUB 000006b6: AND 000006b7: DUP2 000006b8: JUMP 000006b9: JUMPDEST 000006ba: PUSH1 0x40 000006bc: MLOAD 000006bd: PUSH1 0x01 000006bf: PUSH1 0x01 000006c1: PUSH1 0xa0 000006c3: SHL 000006c4: SUB 000006c5: SWAP1 000006c6: SWAP2 000006c7: AND 000006c8: DUP2 000006c9: MSTORE 000006ca: PUSH1 0x20 000006cc: ADD 000006cd: PUSH2 0x037b 000006d0: JUMP 000006d1: JUMPDEST 000006d2: CALLVALUE 000006d3: DUP1 000006d4: ISZERO 000006d5: PUSH2 0x06dd 000006d8: JUMPI 000006d9: PUSH1 0x00 000006db: DUP1 000006dc: REVERT 000006dd: JUMPDEST 000006de: POP 000006df: PUSH2 0x039b 000006e2: PUSH2 0x06ec 000006e5: CALLDATASIZE 000006e6: PUSH1 0x04 000006e8: PUSH2 0x4880 000006eb: JUMP 000006ec: JUMPDEST 000006ed: PUSH2 0x226e 000006f0: JUMP 000006f1: JUMPDEST 000006f2: CALLVALUE 000006f3: DUP1 000006f4: ISZERO 000006f5: PUSH2 0x06fd 000006f8: JUMPI 000006f9: PUSH1 0x00 000006fb: DUP1 000006fc: REVERT 000006fd: JUMPDEST 000006fe: POP 000006ff: PUSH2 0x0417 00000702: PUSH2 0x231e 00000705: JUMP 00000706: JUMPDEST 00000707: CALLVALUE 00000708: DUP1 00000709: ISZERO 0000070a: PUSH2 0x0712 0000070d: JUMPI 0000070e: PUSH1 0x00 00000710: DUP1 00000711: REVERT 00000712: JUMPDEST 00000713: POP 00000714: PUSH2 0x0417 00000717: PUSH2 0x0721 0000071a: CALLDATASIZE 0000071b: PUSH1 0x04 0000071d: PUSH2 0x4b94 00000720: JUMP 00000721: JUMPDEST 00000722: PUSH2 0x2339 00000725: JUMP 00000726: JUMPDEST 00000727: CALLVALUE 00000728: DUP1 00000729: ISZERO 0000072a: PUSH2 0x0732 0000072d: JUMPI 0000072e: PUSH1 0x00 00000730: DUP1 00000731: REVERT 00000732: JUMPDEST 00000733: POP 00000734: PUSH2 0x039b 00000737: PUSH32 0xfdbb443d3be9998f1655a4e17225c4ddd3b30e4167b68ae1afec32d933748df1 00000758: DUP2 00000759: JUMP 0000075a: JUMPDEST 0000075b: CALLVALUE 0000075c: DUP1 0000075d: ISZERO 0000075e: PUSH2 0x0766 00000761: JUMPI 00000762: PUSH1 0x00 00000764: DUP1 00000765: REVERT 00000766: JUMPDEST 00000767: POP 00000768: PUSH2 0x039b 0000076b: PUSH2 0x013a 0000076e: SLOAD 0000076f: DUP2 00000770: JUMP 00000771: JUMPDEST 00000772: CALLVALUE 00000773: DUP1 00000774: ISZERO 00000775: PUSH2 0x077d 00000778: JUMPI 00000779: PUSH1 0x00 0000077b: DUP1 0000077c: REVERT 0000077d: JUMPDEST 0000077e: POP 0000077f: PUSH2 0x0417 00000782: PUSH2 0x078c 00000785: CALLDATASIZE 00000786: PUSH1 0x04 00000788: PUSH2 0x4bc0 0000078b: JUMP 0000078c: JUMPDEST 0000078d: PUSH2 0x24d7 00000790: JUMP 00000791: JUMPDEST 00000792: CALLVALUE 00000793: DUP1 00000794: ISZERO 00000795: PUSH2 0x079d 00000798: JUMPI 00000799: PUSH1 0x00 0000079b: DUP1 0000079c: REVERT 0000079d: JUMPDEST 0000079e: POP 0000079f: PUSH2 0x036f 000007a2: PUSH2 0x07ac 000007a5: CALLDATASIZE 000007a6: PUSH1 0x04 000007a8: PUSH2 0x489d 000007ab: JUMP 000007ac: JUMPDEST 000007ad: PUSH1 0x00 000007af: SWAP2 000007b0: DUP3 000007b1: MSTORE 000007b2: PUSH1 0x65 000007b4: PUSH1 0x20 000007b6: SWAP1 000007b7: DUP2 000007b8: MSTORE 000007b9: PUSH1 0x40 000007bb: DUP1 000007bc: DUP5 000007bd: KECCAK256 000007be: PUSH1 0x01 000007c0: PUSH1 0x01 000007c2: PUSH1 0xa0 000007c4: SHL 000007c5: SUB 000007c6: SWAP4 000007c7: SWAP1 000007c8: SWAP4 000007c9: AND 000007ca: DUP5 000007cb: MSTORE 000007cc: SWAP2 000007cd: SWAP1 000007ce: MSTORE 000007cf: SWAP1 000007d0: KECCAK256 000007d1: SLOAD 000007d2: PUSH1 0xff 000007d4: AND 000007d5: SWAP1 000007d6: JUMP 000007d7: JUMPDEST 000007d8: CALLVALUE 000007d9: DUP1 000007da: ISZERO 000007db: PUSH2 0x07e3 000007de: JUMPI 000007df: PUSH1 0x00 000007e1: DUP1 000007e2: REVERT 000007e3: JUMPDEST 000007e4: POP 000007e5: PUSH2 0x039b 000007e8: PUSH1 0x00 000007ea: DUP2 000007eb: JUMP 000007ec: JUMPDEST 000007ed: CALLVALUE 000007ee: DUP1 000007ef: ISZERO 000007f0: PUSH2 0x07f8 000007f3: JUMPI 000007f4: PUSH1 0x00 000007f6: DUP1 000007f7: REVERT 000007f8: JUMPDEST 000007f9: POP 000007fa: PUSH2 0x0417 000007fd: PUSH2 0x0807 00000800: CALLDATASIZE 00000801: PUSH1 0x04 00000803: PUSH2 0x4b94 00000806: JUMP 00000807: JUMPDEST 00000808: PUSH2 0x26d8 0000080b: JUMP 0000080c: JUMPDEST 0000080d: PUSH2 0x0417 00000810: PUSH2 0x081a 00000813: CALLDATASIZE 00000814: PUSH1 0x04 00000816: PUSH2 0x4b72 00000819: JUMP 0000081a: JUMPDEST 0000081b: PUSH2 0x283c 0000081e: JUMP 0000081f: JUMPDEST 00000820: CALLVALUE 00000821: DUP1 00000822: ISZERO 00000823: PUSH2 0x082b 00000826: JUMPI 00000827: PUSH1 0x00 00000829: DUP1 0000082a: REVERT 0000082b: JUMPDEST 0000082c: POP 0000082d: PUSH2 0x039b 00000830: PUSH32 0x507793b6688804c17fc033a24c049858152fd713503d8768de9c67313c5a3afd 00000851: DUP2 00000852: JUMP 00000853: JUMPDEST 00000854: CALLVALUE 00000855: DUP1 00000856: ISZERO 00000857: PUSH2 0x085f 0000085a: JUMPI 0000085b: PUSH1 0x00 0000085d: DUP1 0000085e: REVERT 0000085f: JUMPDEST 00000860: POP 00000861: PUSH2 0x0137 00000864: SLOAD 00000865: PUSH2 0x06b9 00000868: SWAP1 00000869: PUSH1 0x01 0000086b: PUSH1 0x01 0000086d: PUSH1 0xa0 0000086f: SHL 00000870: SUB 00000871: AND 00000872: DUP2 00000873: JUMP 00000874: JUMPDEST 00000875: PUSH2 0x0417 00000878: PUSH2 0x0882 0000087b: CALLDATASIZE 0000087c: PUSH1 0x04 0000087e: PUSH2 0x4867 00000881: JUMP 00000882: JUMPDEST 00000883: PUSH2 0x2993 00000886: JUMP 00000887: JUMPDEST 00000888: CALLVALUE 00000889: DUP1 0000088a: ISZERO 0000088b: PUSH2 0x0893 0000088e: JUMPI 0000088f: PUSH1 0x00 00000891: DUP1 00000892: REVERT 00000893: JUMPDEST 00000894: POP 00000895: PUSH2 0x03de 00000898: PUSH2 0x08a2 0000089b: CALLDATASIZE 0000089c: PUSH1 0x04 0000089e: PUSH2 0x4c6a 000008a1: JUMP 000008a2: JUMPDEST 000008a3: PUSH4 0xbc197c81 000008a8: PUSH1 0xe0 000008aa: SHL 000008ab: SWAP6 000008ac: SWAP5 000008ad: POP 000008ae: POP 000008af: POP 000008b0: POP 000008b1: POP 000008b2: JUMP 000008b3: JUMPDEST 000008b4: CALLVALUE 000008b5: DUP1 000008b6: ISZERO 000008b7: PUSH2 0x08bf 000008ba: JUMPI 000008bb: PUSH1 0x00 000008bd: DUP1 000008be: REVERT 000008bf: JUMPDEST 000008c0: POP 000008c1: PUSH2 0x0137 000008c4: SLOAD 000008c5: PUSH1 0x01 000008c7: PUSH1 0x01 000008c9: PUSH1 0xa0 000008cb: SHL 000008cc: SUB 000008cd: AND 000008ce: PUSH2 0x06b9 000008d1: JUMP 000008d2: JUMPDEST 000008d3: CALLVALUE 000008d4: DUP1 000008d5: ISZERO 000008d6: PUSH2 0x08de 000008d9: JUMPI 000008da: PUSH1 0x00 000008dc: DUP1 000008dd: REVERT 000008de: JUMPDEST 000008df: POP 000008e0: PUSH2 0x0417 000008e3: PUSH2 0x08ed 000008e6: CALLDATASIZE 000008e7: PUSH1 0x04 000008e9: PUSH2 0x4867 000008ec: JUMP 000008ed: JUMPDEST 000008ee: PUSH2 0x2c83 000008f1: JUMP 000008f2: JUMPDEST 000008f3: CALLVALUE 000008f4: DUP1 000008f5: ISZERO 000008f6: PUSH2 0x08fe 000008f9: JUMPI 000008fa: PUSH1 0x00 000008fc: DUP1 000008fd: REVERT 000008fe: JUMPDEST 000008ff: POP 00000900: PUSH2 0x0133 00000903: SLOAD 00000904: PUSH2 0x0134 00000907: SLOAD 00000908: PUSH2 0x0135 0000090b: SLOAD 0000090c: PUSH2 0x0136 0000090f: SLOAD 00000910: PUSH1 0x40 00000912: DUP1 00000913: MLOAD 00000914: SWAP5 00000915: DUP6 00000916: MSTORE 00000917: PUSH1 0x20 00000919: DUP6 0000091a: ADD 0000091b: SWAP4 0000091c: SWAP1 0000091d: SWAP4 0000091e: MSTORE 0000091f: SWAP2 00000920: DUP4 00000921: ADD 00000922: MSTORE 00000923: PUSH1 0x60 00000925: DUP3 00000926: ADD 00000927: MSTORE 00000928: PUSH1 0x80 0000092a: ADD 0000092b: PUSH2 0x037b 0000092e: JUMP 0000092f: JUMPDEST 00000930: CALLVALUE 00000931: DUP1 00000932: ISZERO 00000933: PUSH2 0x093b 00000936: JUMPI 00000937: PUSH1 0x00 00000939: DUP1 0000093a: REVERT 0000093b: JUMPDEST 0000093c: POP 0000093d: PUSH2 0x0138 00000940: SLOAD 00000941: PUSH2 0x036f 00000944: SWAP1 00000945: PUSH1 0x01 00000947: PUSH1 0xa0 00000949: SHL 0000094a: SWAP1 0000094b: DIV 0000094c: PUSH1 0xff 0000094e: AND 0000094f: DUP2 00000950: JUMP 00000951: JUMPDEST 00000952: CALLVALUE 00000953: DUP1 00000954: ISZERO 00000955: PUSH2 0x095d 00000958: JUMPI 00000959: PUSH1 0x00 0000095b: DUP1 0000095c: REVERT 0000095d: JUMPDEST 0000095e: POP 0000095f: PUSH2 0x0417 00000962: PUSH2 0x096c 00000965: CALLDATASIZE 00000966: PUSH1 0x04 00000968: PUSH2 0x489d 0000096b: JUMP 0000096c: JUMPDEST 0000096d: PUSH2 0x2d49 00000970: JUMP 00000971: JUMPDEST 00000972: CALLVALUE 00000973: DUP1 00000974: ISZERO 00000975: PUSH2 0x097d 00000978: JUMPI 00000979: PUSH1 0x00 0000097b: DUP1 0000097c: REVERT 0000097d: JUMPDEST 0000097e: POP 0000097f: PUSH2 0x0417 00000982: PUSH2 0x098c 00000985: CALLDATASIZE 00000986: PUSH1 0x04 00000988: PUSH2 0x4d18 0000098b: JUMP 0000098c: JUMPDEST 0000098d: PUSH2 0x2d6e 00000990: JUMP 00000991: JUMPDEST 00000992: CALLVALUE 00000993: DUP1 00000994: ISZERO 00000995: PUSH2 0x099d 00000998: JUMPI 00000999: PUSH1 0x00 0000099b: DUP1 0000099c: REVERT 0000099d: JUMPDEST 0000099e: POP 0000099f: PUSH2 0x0417 000009a2: PUSH2 0x09ac 000009a5: CALLDATASIZE 000009a6: PUSH1 0x04 000009a8: PUSH2 0x4867 000009ab: JUMP 000009ac: JUMPDEST 000009ad: PUSH2 0x3357 000009b0: JUMP 000009b1: JUMPDEST 000009b2: CALLVALUE 000009b3: DUP1 000009b4: ISZERO 000009b5: PUSH2 0x09bd 000009b8: JUMPI 000009b9: PUSH1 0x00 000009bb: DUP1 000009bc: REVERT 000009bd: JUMPDEST 000009be: POP 000009bf: PUSH2 0x039b 000009c2: PUSH2 0x09cc 000009c5: CALLDATASIZE 000009c6: PUSH1 0x04 000009c8: PUSH2 0x4867 000009cb: JUMP 000009cc: JUMPDEST 000009cd: PUSH2 0x33bc 000009d0: JUMP 000009d1: JUMPDEST 000009d2: CALLVALUE 000009d3: DUP1 000009d4: ISZERO 000009d5: PUSH2 0x09dd 000009d8: JUMPI 000009d9: PUSH1 0x00 000009db: DUP1 000009dc: REVERT 000009dd: JUMPDEST 000009de: POP 000009df: PUSH2 0x0417 000009e2: PUSH2 0x09ec 000009e5: CALLDATASIZE 000009e6: PUSH1 0x04 000009e8: PUSH2 0x4b94 000009eb: JUMP 000009ec: JUMPDEST 000009ed: PUSH2 0x33f2 000009f0: JUMP 000009f1: JUMPDEST 000009f2: CALLVALUE 000009f3: DUP1 000009f4: ISZERO 000009f5: PUSH2 0x09fd 000009f8: JUMPI 000009f9: PUSH1 0x00 000009fb: DUP1 000009fc: REVERT 000009fd: JUMPDEST 000009fe: POP 000009ff: PUSH2 0x03de 00000a02: PUSH2 0x0a0c 00000a05: CALLDATASIZE 00000a06: PUSH1 0x04 00000a08: PUSH2 0x4db9 00000a0b: JUMP 00000a0c: JUMPDEST 00000a0d: PUSH4 0xf23a6e61 00000a12: PUSH1 0xe0 00000a14: SHL 00000a15: SWAP6 00000a16: SWAP5 00000a17: POP 00000a18: POP 00000a19: POP 00000a1a: POP 00000a1b: POP 00000a1c: JUMP 00000a1d: JUMPDEST 00000a1e: CALLVALUE 00000a1f: DUP1 00000a20: ISZERO 00000a21: PUSH2 0x0a29 00000a24: JUMPI 00000a25: PUSH1 0x00 00000a27: DUP1 00000a28: REVERT 00000a29: JUMPDEST 00000a2a: POP 00000a2b: PUSH2 0x039b 00000a2e: PUSH2 0x0a38 00000a31: CALLDATASIZE 00000a32: PUSH1 0x04 00000a34: PUSH2 0x4867 00000a37: JUMP 00000a38: JUMPDEST 00000a39: PUSH2 0x35e1 00000a3c: JUMP 00000a3d: JUMPDEST 00000a3e: CALLVALUE 00000a3f: DUP1 00000a40: ISZERO 00000a41: PUSH2 0x0a49 00000a44: JUMPI 00000a45: PUSH1 0x00 00000a47: DUP1 00000a48: REVERT 00000a49: JUMPDEST 00000a4a: POP 00000a4b: PUSH2 0x0417 00000a4e: PUSH2 0x0a58 00000a51: CALLDATASIZE 00000a52: PUSH1 0x04 00000a54: PUSH2 0x4867 00000a57: JUMP 00000a58: JUMPDEST 00000a59: PUSH2 0x360d 00000a5c: JUMP 00000a5d: JUMPDEST 00000a5e: PUSH1 0x00 00000a60: PUSH2 0x0a68 00000a63: DUP3 00000a64: PUSH2 0x37b0 00000a67: JUMP 00000a68: JUMPDEST 00000a69: SWAP3 00000a6a: SWAP2 00000a6b: POP 00000a6c: POP 00000a6d: JUMP 00000a6e: JUMPDEST 00000a6f: PUSH1 0x00 00000a71: DUP1 00000a72: PUSH2 0x2710 00000a75: PUSH2 0x0131 00000a78: SLOAD 00000a79: PUSH2 0x0135 00000a7c: SLOAD 00000a7d: PUSH2 0x0134 00000a80: SLOAD 00000a81: PUSH2 0x0a8a 00000a84: SWAP2 00000a85: SWAP1 00000a86: PUSH2 0x4e38 00000a89: JUMP 00000a8a: JUMPDEST 00000a8b: PUSH2 0x0a94 00000a8e: SWAP2 00000a8f: SWAP1 00000a90: PUSH2 0x4e4b 00000a93: JUMP 00000a94: JUMPDEST 00000a95: PUSH2 0x0a9e 00000a98: SWAP2 00000a99: SWAP1 00000a9a: PUSH2 0x4e62 00000a9d: JUMP 00000a9e: JUMPDEST 00000a9f: SWAP1 00000aa0: POP 00000aa1: DUP1 00000aa2: PUSH2 0x0133 00000aa5: SLOAD 00000aa6: GT 00000aa7: ISZERO 00000aa8: PUSH2 0x0ac0 00000aab: JUMPI 00000aac: DUP1 00000aad: PUSH2 0x0133 00000ab0: SLOAD 00000ab1: PUSH2 0x0aba 00000ab4: SWAP2 00000ab5: SWAP1 00000ab6: PUSH2 0x4e84 00000ab9: JUMP 00000aba: JUMPDEST 00000abb: SWAP2 00000abc: POP 00000abd: POP 00000abe: SWAP1 00000abf: JUMP 00000ac0: JUMPDEST 00000ac1: PUSH1 0x00 00000ac3: SWAP2 00000ac4: POP 00000ac5: POP 00000ac6: SWAP1 00000ac7: JUMP 00000ac8: JUMPDEST 00000ac9: PUSH4 0x0a85bd01 00000ace: PUSH1 0xe1 00000ad0: SHL 00000ad1: JUMPDEST 00000ad2: SWAP5 00000ad3: SWAP4 00000ad4: POP 00000ad5: POP 00000ad6: POP 00000ad7: POP 00000ad8: JUMP 00000ad9: JUMPDEST 00000ada: PUSH2 0x0ae1 00000add: PUSH2 0x37d5 00000ae0: JUMP 00000ae1: JUMPDEST 00000ae2: PUSH1 0x00 00000ae4: DUP1 00000ae5: MLOAD 00000ae6: PUSH1 0x20 00000ae8: PUSH2 0x5289 00000aeb: DUP4 00000aec: CODECOPY 00000aed: DUP2 00000aee: MLOAD 00000aef: SWAP2 00000af0: MSTORE 00000af1: PUSH2 0x0af9 00000af4: DUP2 00000af5: PUSH2 0x3828 00000af8: JUMP 00000af9: JUMPDEST 00000afa: PUSH2 0x0b02 00000afd: DUP3 00000afe: PUSH2 0x3832 00000b01: JUMP 00000b02: JUMPDEST 00000b03: PUSH1 0x00 00000b05: PUSH2 0x0b14 00000b08: PUSH1 0xa0 00000b0a: DUP5 00000b0b: ADD 00000b0c: PUSH1 0x80 00000b0e: DUP6 00000b0f: ADD 00000b10: PUSH2 0x4880 00000b13: JUMP 00000b14: JUMPDEST 00000b15: PUSH1 0x40 00000b17: MLOAD 00000b18: PUSH4 0x23c4b449 00000b1d: PUSH1 0xe0 00000b1f: SHL 00000b20: DUP2 00000b21: MSTORE 00000b22: SWAP1 00000b23: SWAP2 00000b24: POP 00000b25: PUSH1 0x01 00000b27: PUSH1 0x01 00000b29: PUSH1 0xa0 00000b2b: SHL 00000b2c: SUB 00000b2d: DUP3 00000b2e: AND 00000b2f: SWAP1 00000b30: PUSH4 0x23c4b449 00000b35: SWAP1 00000b36: PUSH2 0x0b4f 00000b39: SWAP1 00000b3a: DUP7 00000b3b: CALLDATALOAD 00000b3c: SWAP1 00000b3d: PUSH1 0x20 00000b3f: DUP9 00000b40: ADD 00000b41: SWAP1 00000b42: PUSH1 0x60 00000b44: DUP10 00000b45: ADD 00000b46: CALLDATALOAD 00000b47: SWAP1 00000b48: PUSH1 0x04 00000b4a: ADD 00000b4b: PUSH2 0x4e97 00000b4e: JUMP 00000b4f: JUMPDEST 00000b50: PUSH1 0x00 00000b52: PUSH1 0x40 00000b54: MLOAD 00000b55: DUP1 00000b56: DUP4 00000b57: SUB 00000b58: DUP2 00000b59: PUSH1 0x00 00000b5b: DUP8 00000b5c: DUP1 00000b5d: EXTCODESIZE 00000b5e: ISZERO 00000b5f: DUP1 00000b60: ISZERO 00000b61: PUSH2 0x0b69 00000b64: JUMPI 00000b65: PUSH1 0x00 00000b67: DUP1 00000b68: REVERT 00000b69: JUMPDEST 00000b6a: POP 00000b6b: GAS 00000b6c: CALL 00000b6d: ISZERO 00000b6e: DUP1 00000b6f: ISZERO 00000b70: PUSH2 0x0b7d 00000b73: JUMPI 00000b74: RETURNDATASIZE 00000b75: PUSH1 0x00 00000b77: DUP1 00000b78: RETURNDATACOPY 00000b79: RETURNDATASIZE 00000b7a: PUSH1 0x00 00000b7c: REVERT 00000b7d: JUMPDEST 00000b7e: POP 00000b7f: POP 00000b80: PUSH1 0x40 00000b82: MLOAD 00000b83: PUSH1 0x00 00000b85: DUP2 00000b86: MSTORE 00000b87: DUP6 00000b88: CALLDATALOAD 00000b89: SWAP3 00000b8a: POP 00000b8b: PUSH32 0x1bc13c64b284b03bd27bb0a4ce4d00d1d6892b4e10344c01bfcbe79396651bc1 00000bac: SWAP2 00000bad: POP 00000bae: PUSH1 0x20 00000bb0: ADD 00000bb1: PUSH1 0x40 00000bb3: MLOAD 00000bb4: DUP1 00000bb5: SWAP2 00000bb6: SUB 00000bb7: SWAP1 00000bb8: LOG2 00000bb9: POP 00000bba: POP 00000bbb: POP 00000bbc: JUMP 00000bbd: JUMPDEST 00000bbe: PUSH1 0x00 00000bc0: PUSH2 0x0bc8 00000bc3: DUP2 00000bc4: PUSH2 0x3828 00000bc7: JUMP 00000bc8: JUMPDEST 00000bc9: PUSH1 0x01 00000bcb: PUSH1 0x01 00000bcd: PUSH1 0xa0 00000bcf: SHL 00000bd0: SUB 00000bd1: DUP3 00000bd2: AND 00000bd3: ISZERO 00000bd4: DUP1 00000bd5: ISZERO 00000bd6: SWAP1 00000bd7: PUSH2 0x0bef 00000bda: JUMPI 00000bdb: POP 00000bdc: PUSH2 0x0139 00000bdf: SLOAD 00000be0: PUSH1 0x01 00000be2: PUSH1 0x01 00000be4: PUSH1 0xa0 00000be6: SHL 00000be7: SUB 00000be8: DUP4 00000be9: DUP2 00000bea: AND 00000beb: SWAP2 00000bec: AND 00000bed: EQ 00000bee: ISZERO 00000bef: JUMPDEST 00000bf0: PUSH2 0x0c40 00000bf3: JUMPI 00000bf4: PUSH1 0x40 00000bf6: MLOAD 00000bf7: PUSH3 0x461bcd 00000bfb: PUSH1 0xe5 00000bfd: SHL 00000bfe: DUP2 00000bff: MSTORE 00000c00: PUSH1 0x20 00000c02: PUSH1 0x04 00000c04: DUP3 00000c05: ADD 00000c06: MSTORE 00000c07: PUSH1 0x17 00000c09: PUSH1 0x24 00000c0b: DUP3 00000c0c: ADD 00000c0d: MSTORE 00000c0e: PUSH32 0x496e76616c696420666163746f72792061646472657373000000000000000000 00000c2f: PUSH1 0x44 00000c31: DUP3 00000c32: ADD 00000c33: MSTORE 00000c34: PUSH1 0x64 00000c36: ADD 00000c37: JUMPDEST 00000c38: PUSH1 0x40 00000c3a: MLOAD 00000c3b: DUP1 00000c3c: SWAP2 00000c3d: SUB 00000c3e: SWAP1 00000c3f: REVERT 00000c40: JUMPDEST 00000c41: PUSH2 0x0139 00000c44: DUP1 00000c45: SLOAD 00000c46: PUSH1 0x01 00000c48: PUSH1 0x01 00000c4a: PUSH1 0xa0 00000c4c: SHL 00000c4d: SUB 00000c4e: NOT 00000c4f: AND 00000c50: PUSH1 0x01 00000c52: PUSH1 0x01 00000c54: PUSH1 0xa0 00000c56: SHL 00000c57: SUB 00000c58: DUP5 00000c59: AND 00000c5a: SWAP1 00000c5b: DUP2 00000c5c: OR 00000c5d: SWAP1 00000c5e: SWAP2 00000c5f: SSTORE 00000c60: PUSH1 0x40 00000c62: MLOAD 00000c63: PUSH32 0xe62d9ecc2f46536d69df8cf1ba196250488dc869eadabc42466d72ee898716ce 00000c84: SWAP1 00000c85: PUSH1 0x00 00000c87: SWAP1 00000c88: LOG2 00000c89: POP 00000c8a: POP 00000c8b: JUMP 00000c8c: JUMPDEST 00000c8d: PUSH2 0x0c94 00000c90: PUSH2 0x39ee 00000c93: JUMP 00000c94: JUMPDEST 00000c95: PUSH2 0x0c9c 00000c98: PUSH2 0x37d5 00000c9b: JUMP 00000c9c: JUMPDEST 00000c9d: PUSH1 0x00 00000c9f: DUP2 00000ca0: GT 00000ca1: PUSH2 0x0cec 00000ca4: JUMPI 00000ca5: PUSH1 0x40 00000ca7: MLOAD 00000ca8: PUSH3 0x461bcd 00000cac: PUSH1 0xe5 00000cae: SHL 00000caf: DUP2 00000cb0: MSTORE 00000cb1: PUSH1 0x20 00000cb3: PUSH1 0x04 00000cb5: DUP3 00000cb6: ADD 00000cb7: MSTORE 00000cb8: PUSH1 0x19 00000cba: PUSH1 0x24 00000cbc: DUP3 00000cbd: ADD 00000cbe: MSTORE 00000cbf: PUSH32 0x4e6f6e2d706f73697469766520746f6b656e20616d6f756e7400000000000000 00000ce0: PUSH1 0x44 00000ce2: DUP3 00000ce3: ADD 00000ce4: MSTORE 00000ce5: PUSH1 0x64 00000ce7: ADD 00000ce8: PUSH2 0x0c37 00000ceb: JUMP 00000cec: JUMPDEST 00000ced: CALLER 00000cee: PUSH1 0x00 00000cf0: SWAP1 00000cf1: DUP2 00000cf2: MSTORE 00000cf3: PUSH2 0x013b 00000cf6: PUSH1 0x20 00000cf8: MSTORE 00000cf9: PUSH1 0x40 00000cfb: SWAP1 00000cfc: KECCAK256 00000cfd: SLOAD 00000cfe: TIMESTAMP 00000cff: GT 00000d00: PUSH2 0x0d4b 00000d03: JUMPI 00000d04: PUSH1 0x40 00000d06: MLOAD 00000d07: PUSH3 0x461bcd 00000d0b: PUSH1 0xe5 00000d0d: SHL 00000d0e: DUP2 00000d0f: MSTORE 00000d10: PUSH1 0x20 00000d12: PUSH1 0x04 00000d14: DUP3 00000d15: ADD 00000d16: MSTORE 00000d17: PUSH1 0x11 00000d19: PUSH1 0x24 00000d1b: DUP3 00000d1c: ADD 00000d1d: MSTORE 00000d1e: PUSH32 0x5769746864726177616c206c6f636b6564000000000000000000000000000000 00000d3f: PUSH1 0x44 00000d41: DUP3 00000d42: ADD 00000d43: MSTORE 00000d44: PUSH1 0x64 00000d46: ADD 00000d47: PUSH2 0x0c37 00000d4a: JUMP 00000d4b: JUMPDEST 00000d4c: PUSH1 0x00 00000d4e: PUSH2 0x0d56 00000d51: CALLER 00000d52: PUSH2 0x226e 00000d55: JUMP 00000d56: JUMPDEST 00000d57: SWAP1 00000d58: POP 00000d59: DUP1 00000d5a: DUP3 00000d5b: GT 00000d5c: ISZERO 00000d5d: PUSH2 0x0db8 00000d60: JUMPI 00000d61: PUSH1 0x40 00000d63: MLOAD 00000d64: PUSH3 0x461bcd 00000d68: PUSH1 0xe5 00000d6a: SHL 00000d6b: DUP2 00000d6c: MSTORE 00000d6d: PUSH1 0x20 00000d6f: PUSH1 0x04 00000d71: DUP3 00000d72: ADD 00000d73: MSTORE 00000d74: PUSH1 0x27 00000d76: PUSH1 0x24 00000d78: DUP3 00000d79: ADD 00000d7a: MSTORE 00000d7b: PUSH32 0x4e6f7420656e6f756768206163746976652062616c616e636520696e20437961 00000d9c: PUSH1 0x44 00000d9e: DUP3 00000d9f: ADD 00000da0: MSTORE 00000da1: PUSH7 0x1b8815985d5b1d 00000da9: PUSH1 0xca 00000dab: SHL 00000dac: PUSH1 0x64 00000dae: DUP3 00000daf: ADD 00000db0: MSTORE 00000db1: PUSH1 0x84 00000db3: ADD 00000db4: PUSH2 0x0c37 00000db7: JUMP 00000db8: JUMPDEST 00000db9: PUSH1 0x00 00000dbb: PUSH2 0x0dc3 00000dbe: DUP4 00000dbf: PUSH2 0x35e1 00000dc2: JUMP 00000dc3: JUMPDEST 00000dc4: SWAP1 00000dc5: POP 00000dc6: DUP1 00000dc7: PUSH2 0x0133 00000dca: PUSH1 0x00 00000dcc: DUP3 00000dcd: DUP3 00000dce: SLOAD 00000dcf: PUSH2 0x0dd8 00000dd2: SWAP2 00000dd3: SWAP1 00000dd4: PUSH2 0x4e84 00000dd7: JUMP 00000dd8: JUMPDEST 00000dd9: SWAP1 00000dda: SWAP2 00000ddb: SSTORE 00000ddc: POP 00000ddd: POP 00000dde: PUSH2 0x012e 00000de1: SLOAD 00000de2: PUSH1 0x40 00000de4: MLOAD 00000de5: PUSH4 0x2770a7eb 00000dea: PUSH1 0xe2 00000dec: SHL 00000ded: DUP2 00000dee: MSTORE 00000def: CALLER 00000df0: PUSH1 0x04 00000df2: DUP3 00000df3: ADD 00000df4: MSTORE 00000df5: PUSH1 0x24 00000df7: DUP2 00000df8: ADD 00000df9: DUP6 00000dfa: SWAP1 00000dfb: MSTORE 00000dfc: PUSH1 0x01 00000dfe: PUSH1 0x01 00000e00: PUSH1 0xa0 00000e02: SHL 00000e03: SUB 00000e04: SWAP1 00000e05: SWAP2 00000e06: AND 00000e07: SWAP1 00000e08: PUSH4 0x9dc29fac 00000e0d: SWAP1 00000e0e: PUSH1 0x44 00000e10: ADD 00000e11: PUSH1 0x00 00000e13: PUSH1 0x40 00000e15: MLOAD 00000e16: DUP1 00000e17: DUP4 00000e18: SUB 00000e19: DUP2 00000e1a: PUSH1 0x00 00000e1c: DUP8 00000e1d: DUP1 00000e1e: EXTCODESIZE 00000e1f: ISZERO 00000e20: DUP1 00000e21: ISZERO 00000e22: PUSH2 0x0e2a 00000e25: JUMPI 00000e26: PUSH1 0x00 00000e28: DUP1 00000e29: REVERT 00000e2a: JUMPDEST 00000e2b: POP 00000e2c: GAS 00000e2d: CALL 00000e2e: ISZERO 00000e2f: DUP1 00000e30: ISZERO 00000e31: PUSH2 0x0e3e 00000e34: JUMPI 00000e35: RETURNDATASIZE 00000e36: PUSH1 0x00 00000e38: DUP1 00000e39: RETURNDATACOPY 00000e3a: RETURNDATASIZE 00000e3b: PUSH1 0x00 00000e3d: REVERT 00000e3e: JUMPDEST 00000e3f: POP 00000e40: POP 00000e41: POP 00000e42: POP 00000e43: PUSH2 0x0e4c 00000e46: CALLER 00000e47: DUP3 00000e48: PUSH2 0x3a47 00000e4b: JUMP 00000e4c: JUMPDEST 00000e4d: PUSH1 0x40 00000e4f: DUP1 00000e50: MLOAD 00000e51: DUP3 00000e52: DUP2 00000e53: MSTORE 00000e54: PUSH1 0x20 00000e56: DUP2 00000e57: ADD 00000e58: DUP6 00000e59: SWAP1 00000e5a: MSTORE 00000e5b: CALLER 00000e5c: SWAP2 00000e5d: PUSH32 0xf279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b568 00000e7e: SWAP2 00000e7f: ADD 00000e80: PUSH1 0x40 00000e82: MLOAD 00000e83: DUP1 00000e84: SWAP2 00000e85: SUB 00000e86: SWAP1 00000e87: LOG2 00000e88: POP 00000e89: POP 00000e8a: PUSH2 0x0e93 00000e8d: PUSH1 0x01 00000e8f: PUSH1 0x97 00000e91: SSTORE 00000e92: JUMP 00000e93: JUMPDEST 00000e94: POP 00000e95: JUMP 00000e96: JUMPDEST 00000e97: PUSH1 0x00 00000e99: DUP3 00000e9a: DUP2 00000e9b: MSTORE 00000e9c: PUSH1 0x65 00000e9e: PUSH1 0x20 00000ea0: MSTORE 00000ea1: PUSH1 0x40 00000ea3: SWAP1 00000ea4: KECCAK256 00000ea5: PUSH1 0x01 00000ea7: ADD 00000ea8: SLOAD 00000ea9: PUSH2 0x0eb1 00000eac: DUP2 00000ead: PUSH2 0x3828 00000eb0: JUMP 00000eb1: JUMPDEST 00000eb2: PUSH2 0x0ebb 00000eb5: DUP4 00000eb6: DUP4 00000eb7: PUSH2 0x3b2a 00000eba: JUMP 00000ebb: JUMPDEST 00000ebc: POP 00000ebd: POP 00000ebe: POP 00000ebf: JUMP 00000ec0: JUMPDEST 00000ec1: PUSH1 0x01 00000ec3: PUSH1 0x01 00000ec5: PUSH1 0xa0 00000ec7: SHL 00000ec8: SUB 00000ec9: DUP2 00000eca: AND 00000ecb: CALLER 00000ecc: EQ 00000ecd: PUSH2 0x0f3e 00000ed0: JUMPI 00000ed1: PUSH1 0x40 00000ed3: MLOAD 00000ed4: PUSH3 0x461bcd 00000ed8: PUSH1 0xe5 00000eda: SHL 00000edb: DUP2 00000edc: MSTORE 00000edd: PUSH1 0x20 00000edf: PUSH1 0x04 00000ee1: DUP3 00000ee2: ADD 00000ee3: MSTORE 00000ee4: PUSH1 0x2f 00000ee6: PUSH1 0x24 00000ee8: DUP3 00000ee9: ADD 00000eea: MSTORE 00000eeb: PUSH32 0x416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e6365 00000f0c: PUSH1 0x44 00000f0e: DUP3 00000f0f: ADD 00000f10: MSTORE 00000f11: PUSH32 0x20726f6c657320666f722073656c660000000000000000000000000000000000 00000f32: PUSH1 0x64 00000f34: DUP3 00000f35: ADD 00000f36: MSTORE 00000f37: PUSH1 0x84 00000f39: ADD 00000f3a: PUSH2 0x0c37 00000f3d: JUMP 00000f3e: JUMPDEST 00000f3f: PUSH2 0x0f48 00000f42: DUP3 00000f43: DUP3 00000f44: PUSH2 0x3bcc 00000f47: JUMP 00000f48: JUMPDEST 00000f49: POP 00000f4a: POP 00000f4b: JUMP 00000f4c: JUMPDEST 00000f4d: PUSH2 0x0f54 00000f50: PUSH2 0x39ee 00000f53: JUMP 00000f54: JUMPDEST 00000f55: PUSH1 0x00 00000f57: PUSH2 0x0f5f 00000f5a: DUP2 00000f5b: PUSH2 0x3828 00000f5e: JUMP 00000f5f: JUMPDEST 00000f60: PUSH2 0x0f67 00000f63: PUSH2 0x3c4f 00000f66: JUMP 00000f67: JUMPDEST 00000f68: POP 00000f69: PUSH2 0x0f72 00000f6c: PUSH1 0x01 00000f6e: PUSH1 0x97 00000f70: SSTORE 00000f71: JUMP 00000f72: JUMPDEST 00000f73: JUMP 00000f74: JUMPDEST 00000f75: PUSH1 0x00 00000f77: PUSH2 0x0f7f 00000f7a: DUP2 00000f7b: PUSH2 0x3828 00000f7e: JUMP 00000f7f: JUMPDEST 00000f80: PUSH2 0x2710 00000f83: DUP3 00000f84: GT 00000f85: ISZERO 00000f86: PUSH2 0x0ff7 00000f89: JUMPI 00000f8a: PUSH1 0x40 00000f8c: MLOAD 00000f8d: PUSH3 0x461bcd 00000f91: PUSH1 0xe5 00000f93: SHL 00000f94: DUP2 00000f95: MSTORE 00000f96: PUSH1 0x20 00000f98: PUSH1 0x04 00000f9a: DUP3 00000f9b: ADD 00000f9c: MSTORE 00000f9d: PUSH1 0x3a 00000f9f: PUSH1 0x24 00000fa1: DUP3 00000fa2: ADD 00000fa3: MSTORE 00000fa4: PUSH32 0x5361666574792066756e642070657263656e74206d7573742062652065717561 00000fc5: PUSH1 0x44 00000fc7: DUP3 00000fc8: ADD 00000fc9: MSTORE 00000fca: PUSH32 0x6c206f72206c657373207468616e203130302070657263656e74000000000000 00000feb: PUSH1 0x64 00000fed: DUP3 00000fee: ADD 00000fef: MSTORE 00000ff0: PUSH1 0x84 00000ff2: ADD 00000ff3: PUSH2 0x0c37 00000ff6: JUMP 00000ff7: JUMPDEST 00000ff8: PUSH2 0x0131 00000ffb: SLOAD 00000ffc: PUSH1 0x40 00000ffe: DUP1 00000fff: MLOAD 00001000: SWAP2 00001001: DUP3 00001002: MSTORE 00001003: PUSH1 0x20 00001005: DUP3 00001006: ADD 00001007: DUP5 00001008: SWAP1 00001009: MSTORE 0000100a: PUSH32 0xeeeb5af1c3ceeab4fb8414a031926b58ba0e9b17d71c2ade80057757e6cb0260 0000102b: SWAP2 0000102c: ADD 0000102d: PUSH1 0x40 0000102f: MLOAD 00001030: DUP1 00001031: SWAP2 00001032: SUB 00001033: SWAP1 00001034: LOG1 00001035: POP 00001036: PUSH2 0x0131 00001039: SSTORE 0000103a: JUMP 0000103b: JUMPDEST 0000103c: PUSH2 0x1043 0000103f: PUSH2 0x39ee 00001042: JUMP 00001043: JUMPDEST 00001044: PUSH1 0x00 00001046: DUP1 00001047: MLOAD 00001048: PUSH1 0x20 0000104a: PUSH2 0x5289 0000104d: DUP4 0000104e: CODECOPY 0000104f: DUP2 00001050: MLOAD 00001051: SWAP2 00001052: MSTORE 00001053: PUSH2 0x105b 00001056: DUP2 00001057: PUSH2 0x3828 0000105a: JUMP 0000105b: JUMPDEST 0000105c: PUSH2 0x0137 0000105f: SLOAD 00001060: PUSH1 0x01 00001062: PUSH1 0x01 00001064: PUSH1 0xa0 00001066: SHL 00001067: SUB 00001068: SWAP1 00001069: DUP2 0000106a: AND 0000106b: SWAP1 0000106c: DUP6 0000106d: AND 0000106e: SUB 0000106f: PUSH2 0x10ba 00001072: JUMPI 00001073: PUSH1 0x40 00001075: MLOAD 00001076: PUSH3 0x461bcd 0000107a: PUSH1 0xe5 0000107c: SHL 0000107d: DUP2 0000107e: MSTORE 0000107f: PUSH1 0x20 00001081: PUSH1 0x04 00001083: DUP3 00001084: ADD 00001085: MSTORE 00001086: PUSH1 0x1e 00001088: PUSH1 0x24 0000108a: DUP3 0000108b: ADD 0000108c: MSTORE 0000108d: PUSH32 0x43616e6e6f742077697468647261772063757272656e637920746f6b656e0000 000010ae: PUSH1 0x44 000010b0: DUP3 000010b1: ADD 000010b2: MSTORE 000010b3: PUSH1 0x64 000010b5: ADD 000010b6: PUSH2 0x0c37 000010b9: JUMP 000010ba: JUMPDEST 000010bb: PUSH1 0x40 000010bd: MLOAD 000010be: PUSH4 0x6eb1769f 000010c3: PUSH1 0xe1 000010c5: SHL 000010c6: DUP2 000010c7: MSTORE 000010c8: PUSH1 0x01 000010ca: PUSH1 0x01 000010cc: PUSH1 0xa0 000010ce: SHL 000010cf: SUB 000010d0: DUP5 000010d1: DUP2 000010d2: AND 000010d3: PUSH1 0x04 000010d5: DUP4 000010d6: ADD 000010d7: MSTORE 000010d8: ADDRESS 000010d9: PUSH1 0x24 000010db: DUP4 000010dc: ADD 000010dd: MSTORE 000010de: DUP6 000010df: SWAP2 000010e0: DUP5 000010e1: SWAP2 000010e2: DUP4 000010e3: AND 000010e4: SWAP1 000010e5: PUSH4 0xdd62ed3e 000010ea: SWAP1 000010eb: PUSH1 0x44 000010ed: ADD 000010ee: PUSH1 0x20 000010f0: PUSH1 0x40 000010f2: MLOAD 000010f3: DUP1 000010f4: DUP4 000010f5: SUB 000010f6: DUP2 000010f7: DUP7 000010f8: GAS 000010f9: STATICCALL 000010fa: ISZERO 000010fb: DUP1 000010fc: ISZERO 000010fd: PUSH2 0x110a 00001100: JUMPI 00001101: RETURNDATASIZE 00001102: PUSH1 0x00 00001104: DUP1 00001105: RETURNDATACOPY 00001106: RETURNDATASIZE 00001107: PUSH1 0x00 00001109: REVERT 0000110a: JUMPDEST 0000110b: POP 0000110c: POP 0000110d: POP 0000110e: POP 0000110f: PUSH1 0x40 00001111: MLOAD 00001112: RETURNDATASIZE 00001113: PUSH1 0x1f 00001115: NOT 00001116: PUSH1 0x1f 00001118: DUP3 00001119: ADD 0000111a: AND 0000111b: DUP3 0000111c: ADD 0000111d: DUP1 0000111e: PUSH1 0x40 00001120: MSTORE 00001121: POP 00001122: DUP2 00001123: ADD 00001124: SWAP1 00001125: PUSH2 0x112e 00001128: SWAP2 00001129: SWAP1 0000112a: PUSH2 0x4eb4 0000112d: JUMP 0000112e: JUMPDEST 0000112f: LT 00001130: ISZERO 00001131: PUSH2 0x117c 00001134: JUMPI 00001135: PUSH1 0x40 00001137: MLOAD 00001138: PUSH3 0x461bcd 0000113c: PUSH1 0xe5 0000113e: SHL 0000113f: DUP2 00001140: MSTORE 00001141: PUSH1 0x20 00001143: PUSH1 0x04 00001145: DUP3 00001146: ADD 00001147: MSTORE 00001148: PUSH1 0x1a 0000114a: PUSH1 0x24 0000114c: DUP3 0000114d: ADD 0000114e: MSTORE 0000114f: PUSH32 0x455243323020616c6c6f77616e6365206e6f7420656e6f756768000000000000 00001170: PUSH1 0x44 00001172: DUP3 00001173: ADD 00001174: MSTORE 00001175: PUSH1 0x64 00001177: ADD 00001178: PUSH2 0x0c37 0000117b: JUMP 0000117c: JUMPDEST 0000117d: PUSH2 0x1191 00001180: PUSH1 0x01 00001182: PUSH1 0x01 00001184: PUSH1 0xa0 00001186: SHL 00001187: SUB 00001188: DUP3 00001189: AND 0000118a: DUP6 0000118b: CALLER 0000118c: DUP7 0000118d: PUSH2 0x3ca1 00001190: JUMP 00001191: JUMPDEST 00001192: PUSH1 0x40 00001194: DUP1 00001195: MLOAD 00001196: CALLER 00001197: DUP2 00001198: MSTORE 00001199: PUSH1 0x20 0000119b: DUP2 0000119c: ADD 0000119d: DUP6 0000119e: SWAP1 0000119f: MSTORE 000011a0: PUSH1 0x01 000011a2: PUSH1 0x01 000011a4: PUSH1 0xa0 000011a6: SHL 000011a7: SUB 000011a8: DUP8 000011a9: AND 000011aa: SWAP2 000011ab: PUSH32 0xa14466d832b5a1ff01be72c58e51196498a8e10751ab9c227fe73c4730dedc41 000011cc: SWAP2 000011cd: ADD 000011ce: PUSH1 0x40 000011d0: MLOAD 000011d1: DUP1 000011d2: SWAP2 000011d3: SUB 000011d4: SWAP1 000011d5: LOG2 000011d6: POP 000011d7: POP 000011d8: PUSH2 0x0ebb 000011db: PUSH1 0x01 000011dd: PUSH1 0x97 000011df: SSTORE 000011e0: JUMP 000011e1: JUMPDEST 000011e2: PUSH2 0x11e9 000011e5: PUSH2 0x39ee 000011e8: JUMP 000011e9: JUMPDEST 000011ea: PUSH2 0x11f1 000011ed: PUSH2 0x37d5 000011f0: JUMP 000011f1: JUMPDEST 000011f2: PUSH1 0x00 000011f4: PUSH2 0x11fc 000011f7: DUP2 000011f8: PUSH2 0x3828 000011fb: JUMP 000011fc: JUMPDEST 000011fd: PUSH1 0x01 000011ff: PUSH1 0x01 00001201: PUSH1 0xa0 00001203: SHL 00001204: SUB 00001205: DUP5 00001206: AND 00001207: PUSH2 0x125c 0000120a: JUMPI 0000120b: PUSH1 0x40 0000120d: MLOAD 0000120e: PUSH3 0x461bcd 00001212: PUSH1 0xe5 00001214: SHL 00001215: DUP2 00001216: MSTORE 00001217: PUSH1 0x20 00001219: PUSH1 0x04 0000121b: DUP3 0000121c: ADD 0000121d: MSTORE 0000121e: PUSH1 0x21 00001220: PUSH1 0x24 00001222: DUP3 00001223: ADD 00001224: MSTORE 00001225: PUSH32 0x4d61696e207661756c7420616464726573732063616e6e6f74206265207a6572 00001246: PUSH1 0x44 00001248: DUP3 00001249: ADD 0000124a: MSTORE 0000124b: PUSH1 0x6f 0000124d: PUSH1 0xf8 0000124f: SHL 00001250: PUSH1 0x64 00001252: DUP3 00001253: ADD 00001254: MSTORE 00001255: PUSH1 0x84 00001257: ADD 00001258: PUSH2 0x0c37 0000125b: JUMP 0000125c: JUMPDEST 0000125d: PUSH2 0x0134 00001260: SLOAD 00001261: ISZERO 00001262: PUSH2 0x12c0 00001265: JUMPI 00001266: PUSH1 0x40 00001268: MLOAD 00001269: PUSH3 0x461bcd 0000126d: PUSH1 0xe5 0000126f: SHL 00001270: DUP2 00001271: MSTORE 00001272: PUSH1 0x20 00001274: PUSH1 0x04 00001276: DUP3 00001277: ADD 00001278: MSTORE 00001279: PUSH1 0x2a 0000127b: PUSH1 0x24 0000127d: DUP3 0000127e: ADD 0000127f: MSTORE 00001280: PUSH32 0x43616e6e6f74206d696772617465207768656e20746865726520617265206163 000012a1: PUSH1 0x44 000012a3: DUP3 000012a4: ADD 000012a5: MSTORE 000012a6: PUSH10 0x74697665206c6f616e73 000012b1: PUSH1 0xb0 000012b3: SHL 000012b4: PUSH1 0x64 000012b6: DUP3 000012b7: ADD 000012b8: MSTORE 000012b9: PUSH1 0x84 000012bb: ADD 000012bc: PUSH2 0x0c37 000012bf: JUMP 000012c0: JUMPDEST 000012c1: PUSH2 0x0135 000012c4: SLOAD 000012c5: ISZERO 000012c6: PUSH2 0x1337 000012c9: JUMPI 000012ca: PUSH1 0x40 000012cc: MLOAD 000012cd: PUSH3 0x461bcd 000012d1: PUSH1 0xe5 000012d3: SHL 000012d4: DUP2 000012d5: MSTORE 000012d6: PUSH1 0x20 000012d8: PUSH1 0x04 000012da: DUP3 000012db: ADD 000012dc: MSTORE 000012dd: PUSH1 0x2e 000012df: PUSH1 0x24 000012e1: DUP3 000012e2: ADD 000012e3: MSTORE 000012e4: PUSH32 0x43616e6e6f74206d696772617465207768656e20746865726520617265206465 00001305: PUSH1 0x44 00001307: DUP3 00001308: ADD 00001309: MSTORE 0000130a: PUSH32 0x6661756c74656420617373657473000000000000000000000000000000000000 0000132b: PUSH1 0x64 0000132d: DUP3 0000132e: ADD 0000132f: MSTORE 00001330: PUSH1 0x84 00001332: ADD 00001333: PUSH2 0x0c37 00001336: JUMP 00001337: JUMPDEST 00001338: PUSH1 0x00 0000133a: PUSH2 0x0133 0000133d: SLOAD 0000133e: GT 0000133f: PUSH2 0x13b0 00001342: JUMPI 00001343: PUSH1 0x40 00001345: MLOAD 00001346: PUSH3 0x461bcd 0000134a: PUSH1 0xe5 0000134c: SHL 0000134d: DUP2 0000134e: MSTORE 0000134f: PUSH1 0x20 00001351: PUSH1 0x04 00001353: DUP3 00001354: ADD 00001355: MSTORE 00001356: PUSH1 0x30 00001358: PUSH1 0x24 0000135a: DUP3 0000135b: ADD 0000135c: MSTORE 0000135d: PUSH32 0x43616e6e6f74206d696772617465207768656e207468657265206973206e6f20 0000137e: PUSH1 0x44 00001380: DUP3 00001381: ADD 00001382: MSTORE 00001383: PUSH32 0x72656d61696e696e6720616d6f756e7400000000000000000000000000000000 000013a4: PUSH1 0x64 000013a6: DUP3 000013a7: ADD 000013a8: MSTORE 000013a9: PUSH1 0x84 000013ab: ADD 000013ac: PUSH2 0x0c37 000013af: JUMP 000013b0: JUMPDEST 000013b1: PUSH1 0x00 000013b3: DUP5 000013b4: PUSH1 0x01 000013b6: PUSH1 0x01 000013b8: PUSH1 0xa0 000013ba: SHL 000013bb: SUB 000013bc: AND 000013bd: PUSH4 0xbfe0c27e 000013c2: PUSH1 0x40 000013c4: MLOAD 000013c5: DUP2 000013c6: PUSH4 0xffffffff 000013cb: AND 000013cc: PUSH1 0xe0 000013ce: SHL 000013cf: DUP2 000013d0: MSTORE 000013d1: PUSH1 0x04 000013d3: ADD 000013d4: PUSH1 0x20 000013d6: PUSH1 0x40 000013d8: MLOAD 000013d9: DUP1 000013da: DUP4 000013db: SUB 000013dc: DUP2 000013dd: DUP7 000013de: GAS 000013df: STATICCALL 000013e0: ISZERO 000013e1: DUP1 000013e2: ISZERO 000013e3: PUSH2 0x13f0 000013e6: JUMPI 000013e7: RETURNDATASIZE 000013e8: PUSH1 0x00 000013ea: DUP1 000013eb: RETURNDATACOPY 000013ec: RETURNDATASIZE 000013ed: PUSH1 0x00 000013ef: REVERT 000013f0: JUMPDEST 000013f1: POP 000013f2: POP 000013f3: POP 000013f4: POP 000013f5: PUSH1 0x40 000013f7: MLOAD 000013f8: RETURNDATASIZE 000013f9: PUSH1 0x1f 000013fb: NOT 000013fc: PUSH1 0x1f 000013fe: DUP3 000013ff: ADD 00001400: AND 00001401: DUP3 00001402: ADD 00001403: DUP1 00001404: PUSH1 0x40 00001406: MSTORE 00001407: POP 00001408: DUP2 00001409: ADD 0000140a: SWAP1 0000140b: PUSH2 0x1414 0000140e: SWAP2 0000140f: SWAP1 00001410: PUSH2 0x4ecd 00001413: JUMP 00001414: JUMPDEST 00001415: PUSH2 0x0137 00001418: SLOAD 00001419: SWAP1 0000141a: SWAP2 0000141b: POP 0000141c: PUSH1 0x01 0000141e: PUSH1 0x01 00001420: PUSH1 0xa0 00001422: SHL 00001423: SUB 00001424: DUP1 00001425: DUP4 00001426: AND 00001427: SWAP2 00001428: AND 00001429: EQ 0000142a: PUSH2 0x1475 0000142d: JUMPI 0000142e: PUSH1 0x40 00001430: MLOAD 00001431: PUSH3 0x461bcd 00001435: PUSH1 0xe5 00001437: SHL 00001438: DUP2 00001439: MSTORE 0000143a: PUSH1 0x20 0000143c: PUSH1 0x04 0000143e: DUP3 0000143f: ADD 00001440: DUP2 00001441: SWAP1 00001442: MSTORE 00001443: PUSH1 0x24 00001445: DUP3 00001446: ADD 00001447: MSTORE 00001448: PUSH32 0x43757272656e6379206d69736d61746368206265747765656e207661756c7473 00001469: PUSH1 0x44 0000146b: DUP3 0000146c: ADD 0000146d: MSTORE 0000146e: PUSH1 0x64 00001470: ADD 00001471: PUSH2 0x0c37 00001474: JUMP 00001475: JUMPDEST 00001476: PUSH2 0x012e 00001479: SLOAD 0000147a: PUSH1 0x40 0000147c: DUP1 0000147d: MLOAD 0000147e: PUSH4 0x18160ddd 00001483: PUSH1 0xe0 00001485: SHL 00001486: DUP2 00001487: MSTORE 00001488: SWAP1 00001489: MLOAD 0000148a: PUSH1 0x00 0000148c: SWAP3 0000148d: PUSH1 0x01 0000148f: PUSH1 0x01 00001491: PUSH1 0xa0 00001493: SHL 00001494: SUB 00001495: AND 00001496: SWAP2 00001497: PUSH4 0x18160ddd 0000149c: SWAP2 0000149d: PUSH1 0x04 0000149f: DUP1 000014a0: DUP4 000014a1: ADD 000014a2: SWAP3 000014a3: PUSH1 0x20 000014a5: SWAP3 000014a6: SWAP2 000014a7: SWAP1 000014a8: DUP3 000014a9: SWAP1 000014aa: SUB 000014ab: ADD 000014ac: DUP2 000014ad: DUP7 000014ae: GAS 000014af: STATICCALL 000014b0: ISZERO 000014b1: DUP1 000014b2: ISZERO 000014b3: PUSH2 0x14c0 000014b6: JUMPI 000014b7: RETURNDATASIZE 000014b8: PUSH1 0x00 000014ba: DUP1 000014bb: RETURNDATACOPY 000014bc: RETURNDATASIZE 000014bd: PUSH1 0x00 000014bf: REVERT 000014c0: JUMPDEST 000014c1: POP 000014c2: POP 000014c3: POP 000014c4: POP 000014c5: PUSH1 0x40 000014c7: MLOAD 000014c8: RETURNDATASIZE 000014c9: PUSH1 0x1f 000014cb: NOT 000014cc: PUSH1 0x1f 000014ce: DUP3 000014cf: ADD 000014d0: AND 000014d1: DUP3 000014d2: ADD 000014d3: DUP1 000014d4: PUSH1 0x40 000014d6: MSTORE 000014d7: POP 000014d8: DUP2 000014d9: ADD 000014da: SWAP1 000014db: PUSH2 0x14e4 000014de: SWAP2 000014df: SWAP1 000014e0: PUSH2 0x4eb4 000014e3: JUMP 000014e4: JUMPDEST 000014e5: SWAP1 000014e6: POP 000014e7: PUSH1 0x00 000014e9: DUP2 000014ea: GT 000014eb: PUSH2 0x1536 000014ee: JUMPI 000014ef: PUSH1 0x40 000014f1: MLOAD 000014f2: PUSH3 0x461bcd 000014f6: PUSH1 0xe5 000014f8: SHL 000014f9: DUP2 000014fa: MSTORE 000014fb: PUSH1 0x20 000014fd: PUSH1 0x04 000014ff: DUP3 00001500: ADD 00001501: MSTORE 00001502: PUSH1 0x1a 00001504: PUSH1 0x24 00001506: DUP3 00001507: ADD 00001508: MSTORE 00001509: PUSH32 0x546f74616c20746f6b656e2063616e6e6f74206265207a65726f000000000000 0000152a: PUSH1 0x44 0000152c: DUP3 0000152d: ADD 0000152e: MSTORE 0000152f: PUSH1 0x64 00001531: ADD 00001532: PUSH2 0x0c37 00001535: JUMP 00001536: JUMPDEST 00001537: PUSH1 0x00 00001539: DUP5 0000153a: PUSH8 0xffffffffffffffff 00001543: DUP2 00001544: GT 00001545: ISZERO 00001546: PUSH2 0x1551 00001549: JUMPI 0000154a: PUSH2 0x1551 0000154d: PUSH2 0x46f7 00001550: JUMP 00001551: JUMPDEST 00001552: PUSH1 0x40 00001554: MLOAD 00001555: SWAP1 00001556: DUP1 00001557: DUP3 00001558: MSTORE 00001559: DUP1 0000155a: PUSH1 0x20 0000155c: MUL 0000155d: PUSH1 0x20 0000155f: ADD 00001560: DUP3 00001561: ADD 00001562: PUSH1 0x40 00001564: MSTORE 00001565: DUP1 00001566: ISZERO 00001567: PUSH2 0x157a 0000156a: JUMPI 0000156b: DUP2 0000156c: PUSH1 0x20 0000156e: ADD 0000156f: PUSH1 0x20 00001571: DUP3 00001572: MUL 00001573: DUP1 00001574: CALLDATASIZE 00001575: DUP4 00001576: CALLDATACOPY 00001577: ADD 00001578: SWAP1 00001579: POP 0000157a: JUMPDEST 0000157b: POP 0000157c: SWAP1 0000157d: POP 0000157e: PUSH1 0x00 00001580: DUP6 00001581: PUSH8 0xffffffffffffffff 0000158a: DUP2 0000158b: GT 0000158c: ISZERO 0000158d: PUSH2 0x1598 00001590: JUMPI 00001591: PUSH2 0x1598 00001594: PUSH2 0x46f7 00001597: JUMP 00001598: JUMPDEST 00001599: PUSH1 0x40 0000159b: MLOAD 0000159c: SWAP1 0000159d: DUP1 0000159e: DUP3 0000159f: MSTORE 000015a0: DUP1 000015a1: PUSH1 0x20 000015a3: MUL 000015a4: PUSH1 0x20 000015a6: ADD 000015a7: DUP3 000015a8: ADD 000015a9: PUSH1 0x40 000015ab: MSTORE 000015ac: DUP1 000015ad: ISZERO 000015ae: PUSH2 0x15c1 000015b1: JUMPI 000015b2: DUP2 000015b3: PUSH1 0x20 000015b5: ADD 000015b6: PUSH1 0x20 000015b8: DUP3 000015b9: MUL 000015ba: DUP1 000015bb: CALLDATASIZE 000015bc: DUP4 000015bd: CALLDATACOPY 000015be: ADD 000015bf: SWAP1 000015c0: POP 000015c1: JUMPDEST 000015c2: POP 000015c3: SWAP1 000015c4: POP 000015c5: PUSH1 0x00 000015c7: DUP1 000015c8: JUMPDEST 000015c9: DUP8 000015ca: DUP2 000015cb: LT 000015cc: ISZERO 000015cd: PUSH2 0x1708 000015d0: JUMPI 000015d1: PUSH2 0x012e 000015d4: SLOAD 000015d5: PUSH1 0x01 000015d7: PUSH1 0x01 000015d9: PUSH1 0xa0 000015db: SHL 000015dc: SUB 000015dd: AND 000015de: PUSH4 0x70a08231 000015e3: DUP11 000015e4: DUP11 000015e5: DUP5 000015e6: DUP2 000015e7: DUP2 000015e8: LT 000015e9: PUSH2 0x15f4 000015ec: JUMPI 000015ed: PUSH2 0x15f4 000015f0: PUSH2 0x4eea 000015f3: JUMP 000015f4: JUMPDEST 000015f5: SWAP1 000015f6: POP 000015f7: PUSH1 0x20 000015f9: MUL 000015fa: ADD 000015fb: PUSH1 0x20 000015fd: DUP2 000015fe: ADD 000015ff: SWAP1 00001600: PUSH2 0x1609 00001603: SWAP2 00001604: SWAP1 00001605: PUSH2 0x4880 00001608: JUMP 00001609: JUMPDEST 0000160a: PUSH1 0x40 0000160c: MLOAD 0000160d: PUSH1 0x01 0000160f: PUSH1 0x01 00001611: PUSH1 0xe0 00001613: SHL 00001614: SUB 00001615: NOT 00001616: PUSH1 0xe0 00001618: DUP5 00001619: SWAP1 0000161a: SHL 0000161b: AND 0000161c: DUP2 0000161d: MSTORE 0000161e: PUSH1 0x01 00001620: PUSH1 0x01 00001622: PUSH1 0xa0 00001624: SHL 00001625: SUB 00001626: SWAP1 00001627: SWAP2 00001628: AND 00001629: PUSH1 0x04 0000162b: DUP3 0000162c: ADD 0000162d: MSTORE 0000162e: PUSH1 0x24 00001630: ADD 00001631: PUSH1 0x20 00001633: PUSH1 0x40 00001635: MLOAD 00001636: DUP1 00001637: DUP4 00001638: SUB 00001639: DUP2 0000163a: DUP7 0000163b: GAS 0000163c: STATICCALL 0000163d: ISZERO 0000163e: DUP1 0000163f: ISZERO 00001640: PUSH2 0x164d 00001643: JUMPI 00001644: RETURNDATASIZE 00001645: PUSH1 0x00 00001647: DUP1 00001648: RETURNDATACOPY 00001649: RETURNDATASIZE 0000164a: PUSH1 0x00 0000164c: REVERT 0000164d: JUMPDEST 0000164e: POP 0000164f: POP 00001650: POP 00001651: POP 00001652: PUSH1 0x40 00001654: MLOAD 00001655: RETURNDATASIZE 00001656: PUSH1 0x1f 00001658: NOT 00001659: PUSH1 0x1f 0000165b: DUP3 0000165c: ADD 0000165d: AND 0000165e: DUP3 0000165f: ADD 00001660: DUP1 00001661: PUSH1 0x40 00001663: MSTORE 00001664: POP 00001665: DUP2 00001666: ADD 00001667: SWAP1 00001668: PUSH2 0x1671 0000166b: SWAP2 0000166c: SWAP1 0000166d: PUSH2 0x4eb4 00001670: JUMP 00001671: JUMPDEST 00001672: DUP5 00001673: DUP3 00001674: DUP2 00001675: MLOAD 00001676: DUP2 00001677: LT 00001678: PUSH2 0x1683 0000167b: JUMPI 0000167c: PUSH2 0x1683 0000167f: PUSH2 0x4eea 00001682: JUMP 00001683: JUMPDEST 00001684: PUSH1 0x20 00001686: MUL 00001687: PUSH1 0x20 00001689: ADD 0000168a: ADD 0000168b: DUP2 0000168c: DUP2 0000168d: MSTORE 0000168e: POP 0000168f: POP 00001690: PUSH2 0x16b1 00001693: DUP5 00001694: DUP3 00001695: DUP2 00001696: MLOAD 00001697: DUP2 00001698: LT 00001699: PUSH2 0x16a4 0000169c: JUMPI 0000169d: PUSH2 0x16a4 000016a0: PUSH2 0x4eea 000016a3: JUMP 000016a4: JUMPDEST 000016a5: PUSH1 0x20 000016a7: MUL 000016a8: PUSH1 0x20 000016aa: ADD 000016ab: ADD 000016ac: MLOAD 000016ad: PUSH2 0x35e1 000016b0: JUMP 000016b1: JUMPDEST 000016b2: DUP4 000016b3: DUP3 000016b4: DUP2 000016b5: MLOAD 000016b6: DUP2 000016b7: LT 000016b8: PUSH2 0x16c3 000016bb: JUMPI 000016bc: PUSH2 0x16c3 000016bf: PUSH2 0x4eea 000016c2: JUMP 000016c3: JUMPDEST 000016c4: PUSH1 0x20 000016c6: MUL 000016c7: PUSH1 0x20 000016c9: ADD 000016ca: ADD 000016cb: DUP2 000016cc: DUP2 000016cd: MSTORE 000016ce: POP 000016cf: POP 000016d0: DUP4 000016d1: DUP2 000016d2: DUP2 000016d3: MLOAD 000016d4: DUP2 000016d5: LT 000016d6: PUSH2 0x16e1 000016d9: JUMPI 000016da: PUSH2 0x16e1 000016dd: PUSH2 0x4eea 000016e0: JUMP 000016e1: JUMPDEST 000016e2: PUSH1 0x20 000016e4: MUL 000016e5: PUSH1 0x20 000016e7: ADD 000016e8: ADD 000016e9: MLOAD 000016ea: DUP3 000016eb: PUSH2 0x16f4 000016ee: SWAP2 000016ef: SWAP1 000016f0: PUSH2 0x4e38 000016f3: JUMP 000016f4: JUMPDEST 000016f5: SWAP2 000016f6: POP 000016f7: DUP1 000016f8: PUSH2 0x1700 000016fb: DUP2 000016fc: PUSH2 0x4f00 000016ff: JUMP 00001700: JUMPDEST 00001701: SWAP2 00001702: POP 00001703: POP 00001704: PUSH2 0x15c8 00001707: JUMP 00001708: JUMPDEST 00001709: POP 0000170a: DUP4 0000170b: DUP2 0000170c: EQ 0000170d: PUSH2 0x1758 00001710: JUMPI 00001711: PUSH1 0x40 00001713: MLOAD 00001714: PUSH3 0x461bcd 00001718: PUSH1 0xe5 0000171a: SHL 0000171b: DUP2 0000171c: MSTORE 0000171d: PUSH1 0x20 0000171f: PUSH1 0x04 00001721: DUP3 00001722: ADD 00001723: MSTORE 00001724: PUSH1 0x10 00001726: PUSH1 0x24 00001728: DUP3 00001729: ADD 0000172a: MSTORE 0000172b: PUSH32 0x42616c616e6365206d69736d6174636800000000000000000000000000000000 0000174c: PUSH1 0x44 0000174e: DUP3 0000174f: ADD 00001750: MSTORE 00001751: PUSH1 0x64 00001753: ADD 00001754: PUSH2 0x0c37 00001757: JUMP 00001758: JUMPDEST 00001759: PUSH1 0x00 0000175b: JUMPDEST 0000175c: DUP8 0000175d: DUP2 0000175e: LT 0000175f: ISZERO 00001760: PUSH2 0x184e 00001763: JUMPI 00001764: PUSH1 0x00 00001766: DUP5 00001767: DUP3 00001768: DUP2 00001769: MLOAD 0000176a: DUP2 0000176b: LT 0000176c: PUSH2 0x1777 0000176f: JUMPI 00001770: PUSH2 0x1777 00001773: PUSH2 0x4eea 00001776: JUMP 00001777: JUMPDEST 00001778: PUSH1 0x20 0000177a: MUL 0000177b: PUSH1 0x20 0000177d: ADD 0000177e: ADD 0000177f: MLOAD 00001780: GT 00001781: ISZERO 00001782: PUSH2 0x183c 00001785: JUMPI 00001786: PUSH2 0x012e 00001789: SLOAD 0000178a: PUSH1 0x01 0000178c: PUSH1 0x01 0000178e: PUSH1 0xa0 00001790: SHL 00001791: SUB 00001792: AND 00001793: PUSH4 0x9dc29fac 00001798: DUP11 00001799: DUP11 0000179a: DUP5 0000179b: DUP2 0000179c: DUP2 0000179d: LT 0000179e: PUSH2 0x17a9 000017a1: JUMPI 000017a2: PUSH2 0x17a9 000017a5: PUSH2 0x4eea 000017a8: JUMP 000017a9: JUMPDEST 000017aa: SWAP1 000017ab: POP 000017ac: PUSH1 0x20 000017ae: MUL 000017af: ADD 000017b0: PUSH1 0x20 000017b2: DUP2 000017b3: ADD 000017b4: SWAP1 000017b5: PUSH2 0x17be 000017b8: SWAP2 000017b9: SWAP1 000017ba: PUSH2 0x4880 000017bd: JUMP 000017be: JUMPDEST 000017bf: DUP7 000017c0: DUP5 000017c1: DUP2 000017c2: MLOAD 000017c3: DUP2 000017c4: LT 000017c5: PUSH2 0x17d0 000017c8: JUMPI 000017c9: PUSH2 0x17d0 000017cc: PUSH2 0x4eea 000017cf: JUMP 000017d0: JUMPDEST 000017d1: PUSH1 0x20 000017d3: MUL 000017d4: PUSH1 0x20 000017d6: ADD 000017d7: ADD 000017d8: MLOAD 000017d9: PUSH1 0x40 000017db: MLOAD 000017dc: DUP4 000017dd: PUSH4 0xffffffff 000017e2: AND 000017e3: PUSH1 0xe0 000017e5: SHL 000017e6: DUP2 000017e7: MSTORE 000017e8: PUSH1 0x04 000017ea: ADD 000017eb: PUSH2 0x1809 000017ee: SWAP3 000017ef: SWAP2 000017f0: SWAP1 000017f1: PUSH1 0x01 000017f3: PUSH1 0x01 000017f5: PUSH1 0xa0 000017f7: SHL 000017f8: SUB 000017f9: SWAP3 000017fa: SWAP1 000017fb: SWAP3 000017fc: AND 000017fd: DUP3 000017fe: MSTORE 000017ff: PUSH1 0x20 00001801: DUP3 00001802: ADD 00001803: MSTORE 00001804: PUSH1 0x40 00001806: ADD 00001807: SWAP1 00001808: JUMP 00001809: JUMPDEST 0000180a: PUSH1 0x00 0000180c: PUSH1 0x40 0000180e: MLOAD 0000180f: DUP1 00001810: DUP4 00001811: SUB 00001812: DUP2 00001813: PUSH1 0x00 00001815: DUP8 00001816: DUP1 00001817: EXTCODESIZE 00001818: ISZERO 00001819: DUP1 0000181a: ISZERO 0000181b: PUSH2 0x1823 0000181e: JUMPI 0000181f: PUSH1 0x00 00001821: DUP1 00001822: REVERT 00001823: JUMPDEST 00001824: POP 00001825: GAS 00001826: CALL 00001827: ISZERO 00001828: DUP1 00001829: ISZERO 0000182a: PUSH2 0x1837 0000182d: JUMPI 0000182e: RETURNDATASIZE 0000182f: PUSH1 0x00 00001831: DUP1 00001832: RETURNDATACOPY 00001833: RETURNDATASIZE 00001834: PUSH1 0x00 00001836: REVERT 00001837: JUMPDEST 00001838: POP 00001839: POP 0000183a: POP 0000183b: POP 0000183c: JUMPDEST 0000183d: DUP1 0000183e: PUSH2 0x1846 00001841: DUP2 00001842: PUSH2 0x4f00 00001845: JUMP 00001846: JUMPDEST 00001847: SWAP2 00001848: POP 00001849: POP 0000184a: PUSH2 0x175b 0000184d: JUMP 0000184e: JUMPDEST 0000184f: POP 00001850: PUSH2 0x0138 00001853: SLOAD 00001854: PUSH1 0x01 00001856: PUSH1 0xa0 00001858: SHL 00001859: SWAP1 0000185a: DIV 0000185b: PUSH1 0xff 0000185d: AND 0000185e: ISZERO 0000185f: PUSH2 0x18e0 00001862: JUMPI 00001863: PUSH2 0x0138 00001866: SLOAD 00001867: PUSH2 0x0133 0000186a: SLOAD 0000186b: PUSH1 0x40 0000186d: MLOAD 0000186e: PUSH4 0x095ea7b3 00001873: PUSH1 0xe0 00001875: SHL 00001876: DUP2 00001877: MSTORE 00001878: PUSH1 0x01 0000187a: PUSH1 0x01 0000187c: PUSH1 0xa0 0000187e: SHL 0000187f: SUB 00001880: DUP13 00001881: DUP2 00001882: AND 00001883: PUSH1 0x04 00001885: DUP4 00001886: ADD 00001887: MSTORE 00001888: PUSH1 0x24 0000188a: DUP3 0000188b: ADD 0000188c: SWAP3 0000188d: SWAP1 0000188e: SWAP3 0000188f: MSTORE 00001890: SWAP2 00001891: AND 00001892: SWAP1 00001893: PUSH4 0x095ea7b3 00001898: SWAP1 00001899: PUSH1 0x44 0000189b: ADD 0000189c: PUSH1 0x20 0000189e: PUSH1 0x40 000018a0: MLOAD 000018a1: DUP1 000018a2: DUP4 000018a3: SUB 000018a4: DUP2 000018a5: PUSH1 0x00 000018a7: DUP8 000018a8: GAS 000018a9: CALL 000018aa: ISZERO 000018ab: DUP1 000018ac: ISZERO 000018ad: PUSH2 0x18ba 000018b0: JUMPI 000018b1: RETURNDATASIZE 000018b2: PUSH1 0x00 000018b4: DUP1 000018b5: RETURNDATACOPY 000018b6: RETURNDATASIZE 000018b7: PUSH1 0x00 000018b9: REVERT 000018ba: JUMPDEST 000018bb: POP 000018bc: POP 000018bd: POP 000018be: POP 000018bf: PUSH1 0x40 000018c1: MLOAD 000018c2: RETURNDATASIZE 000018c3: PUSH1 0x1f 000018c5: NOT 000018c6: PUSH1 0x1f 000018c8: DUP3 000018c9: ADD 000018ca: AND 000018cb: DUP3 000018cc: ADD 000018cd: DUP1 000018ce: PUSH1 0x40 000018d0: MSTORE 000018d1: POP 000018d2: DUP2 000018d3: ADD 000018d4: SWAP1 000018d5: PUSH2 0x18de 000018d8: SWAP2 000018d9: SWAP1 000018da: PUSH2 0x4f19 000018dd: JUMP 000018de: JUMPDEST 000018df: POP 000018e0: JUMPDEST 000018e1: PUSH2 0x0138 000018e4: SLOAD 000018e5: PUSH1 0x01 000018e7: PUSH1 0x01 000018e9: PUSH1 0xa0 000018eb: SHL 000018ec: SUB 000018ed: DUP11 000018ee: AND 000018ef: SWAP1 000018f0: PUSH4 0x5ec82d83 000018f5: SWAP1 000018f6: PUSH1 0x01 000018f8: PUSH1 0xa0 000018fa: SHL 000018fb: SWAP1 000018fc: DIV 000018fd: PUSH1 0xff 000018ff: AND 00001900: PUSH2 0x190c 00001903: JUMPI 00001904: PUSH2 0x0133 00001907: SLOAD 00001908: PUSH2 0x190f 0000190b: JUMP 0000190c: JUMPDEST 0000190d: PUSH1 0x00 0000190f: JUMPDEST 00001910: DUP11 00001911: DUP11 00001912: DUP7 00001913: PUSH2 0x0133 00001916: SLOAD 00001917: PUSH1 0x40 00001919: MLOAD 0000191a: DUP7 0000191b: PUSH4 0xffffffff 00001920: AND 00001921: PUSH1 0xe0 00001923: SHL 00001924: DUP2 00001925: MSTORE 00001926: PUSH1 0x04 00001928: ADD 00001929: PUSH2 0x1935 0000192c: SWAP5 0000192d: SWAP4 0000192e: SWAP3 0000192f: SWAP2 00001930: SWAP1 00001931: PUSH2 0x4f3b 00001934: JUMP 00001935: JUMPDEST 00001936: PUSH1 0x00 00001938: PUSH1 0x40 0000193a: MLOAD 0000193b: DUP1 0000193c: DUP4 0000193d: SUB 0000193e: DUP2 0000193f: DUP6 00001940: DUP9 00001941: DUP1 00001942: EXTCODESIZE 00001943: ISZERO 00001944: DUP1 00001945: ISZERO 00001946: PUSH2 0x194e 00001949: JUMPI 0000194a: PUSH1 0x00 0000194c: DUP1 0000194d: REVERT 0000194e: JUMPDEST 0000194f: POP 00001950: GAS 00001951: CALL 00001952: ISZERO 00001953: DUP1 00001954: ISZERO 00001955: PUSH2 0x1962 00001958: JUMPI 00001959: RETURNDATASIZE 0000195a: PUSH1 0x00 0000195c: DUP1 0000195d: RETURNDATACOPY 0000195e: RETURNDATASIZE 0000195f: PUSH1 0x00 00001961: REVERT 00001962: JUMPDEST 00001963: POP 00001964: POP 00001965: PUSH1 0x00 00001967: PUSH2 0x0133 0000196a: SSTORE 0000196b: POP 0000196c: PUSH2 0x1977 0000196f: SWAP2 00001970: POP 00001971: PUSH2 0x3d27 00001974: SWAP1 00001975: POP 00001976: JUMP 00001977: JUMPDEST 00001978: POP 00001979: POP 0000197a: POP 0000197b: POP 0000197c: POP 0000197d: POP 0000197e: PUSH2 0x0ebb 00001981: PUSH1 0x01 00001983: PUSH1 0x97 00001985: SSTORE 00001986: JUMP 00001987: JUMPDEST 00001988: PUSH2 0x198f 0000198b: PUSH2 0x37d5 0000198e: JUMP 0000198f: JUMPDEST 00001990: PUSH1 0x00 00001992: DUP1 00001993: MLOAD 00001994: PUSH1 0x20 00001996: PUSH2 0x5289 00001999: DUP4 0000199a: CODECOPY 0000199b: DUP2 0000199c: MLOAD 0000199d: SWAP2 0000199e: MSTORE 0000199f: PUSH2 0x19a7 000019a2: DUP2 000019a3: PUSH2 0x3828 000019a6: JUMP 000019a7: JUMPDEST 000019a8: PUSH2 0x19b0 000019ab: DUP6 000019ac: PUSH2 0x3832 000019af: JUMP 000019b0: JUMPDEST 000019b1: PUSH1 0x00 000019b3: PUSH2 0x19c2 000019b6: PUSH1 0xa0 000019b8: DUP8 000019b9: ADD 000019ba: PUSH1 0x80 000019bc: DUP9 000019bd: ADD 000019be: PUSH2 0x4880 000019c1: JUMP 000019c2: JUMPDEST 000019c3: PUSH1 0x40 000019c5: MLOAD 000019c6: PUSH4 0x0d2a47a7 000019cb: PUSH1 0xe4 000019cd: SHL 000019ce: DUP2 000019cf: MSTORE 000019d0: SWAP1 000019d1: SWAP2 000019d2: POP 000019d3: PUSH1 0x01 000019d5: PUSH1 0x01 000019d7: PUSH1 0xa0 000019d9: SHL 000019da: SUB 000019db: DUP3 000019dc: AND 000019dd: SWAP1 000019de: PUSH4 0xd2a47a70 000019e3: SWAP1 000019e4: PUSH2 0x1a03 000019e7: SWAP1 000019e8: DUP10 000019e9: CALLDATALOAD 000019ea: SWAP1 000019eb: PUSH1 0x20 000019ed: DUP12 000019ee: ADD 000019ef: SWAP1 000019f0: PUSH1 0x60 000019f2: DUP13 000019f3: ADD 000019f4: CALLDATALOAD 000019f5: SWAP1 000019f6: DUP12 000019f7: SWAP1 000019f8: DUP12 000019f9: SWAP1 000019fa: DUP12 000019fb: SWAP1 000019fc: PUSH1 0x04 000019fe: ADD 000019ff: PUSH2 0x5020 00001a02: JUMP 00001a03: JUMPDEST 00001a04: PUSH1 0x00 00001a06: PUSH1 0x40 00001a08: MLOAD 00001a09: DUP1 00001a0a: DUP4 00001a0b: SUB 00001a0c: DUP2 00001a0d: PUSH1 0x00 00001a0f: DUP8 00001a10: DUP1 00001a11: EXTCODESIZE 00001a12: ISZERO 00001a13: DUP1 00001a14: ISZERO 00001a15: PUSH2 0x1a1d 00001a18: JUMPI 00001a19: PUSH1 0x00 00001a1b: DUP1 00001a1c: REVERT 00001a1d: JUMPDEST 00001a1e: POP 00001a1f: GAS 00001a20: CALL 00001a21: ISZERO 00001a22: DUP1 00001a23: ISZERO 00001a24: PUSH2 0x1a31 00001a27: JUMPI 00001a28: RETURNDATASIZE 00001a29: PUSH1 0x00 00001a2b: DUP1 00001a2c: RETURNDATACOPY 00001a2d: RETURNDATASIZE 00001a2e: PUSH1 0x00 00001a30: REVERT 00001a31: JUMPDEST 00001a32: POP 00001a33: POP 00001a34: PUSH1 0x40 00001a36: MLOAD 00001a37: PUSH1 0x02 00001a39: DUP2 00001a3a: MSTORE 00001a3b: DUP9 00001a3c: CALLDATALOAD 00001a3d: SWAP3 00001a3e: POP 00001a3f: PUSH32 0x1bc13c64b284b03bd27bb0a4ce4d00d1d6892b4e10344c01bfcbe79396651bc1 00001a60: SWAP2 00001a61: POP 00001a62: PUSH1 0x20 00001a64: ADD 00001a65: PUSH1 0x40 00001a67: MLOAD 00001a68: DUP1 00001a69: SWAP2 00001a6a: SUB 00001a6b: SWAP1 00001a6c: LOG2 00001a6d: POP 00001a6e: POP 00001a6f: POP 00001a70: POP 00001a71: POP 00001a72: POP 00001a73: JUMP 00001a74: JUMPDEST 00001a75: PUSH1 0x00 00001a77: PUSH2 0x1a7f 00001a7a: DUP2 00001a7b: PUSH2 0x3828 00001a7e: JUMP 00001a7f: JUMPDEST 00001a80: PUSH1 0x01 00001a82: PUSH1 0x01 00001a84: PUSH1 0xa0 00001a86: SHL 00001a87: SUB 00001a88: DUP3 00001a89: AND 00001a8a: PUSH2 0x1ad5 00001a8d: JUMPI 00001a8e: PUSH1 0x40 00001a90: MLOAD 00001a91: PUSH3 0x461bcd 00001a95: PUSH1 0xe5 00001a97: SHL 00001a98: DUP2 00001a99: MSTORE 00001a9a: PUSH1 0x20 00001a9c: PUSH1 0x04 00001a9e: DUP3 00001a9f: ADD 00001aa0: MSTORE 00001aa1: PUSH1 0x16 00001aa3: PUSH1 0x24 00001aa5: DUP3 00001aa6: ADD 00001aa7: MSTORE 00001aa8: PUSH32 0x496e76616c6964207369676e6572206164647265737300000000000000000000 00001ac9: PUSH1 0x44 00001acb: DUP3 00001acc: ADD 00001acd: MSTORE 00001ace: PUSH1 0x64 00001ad0: ADD 00001ad1: PUSH2 0x0c37 00001ad4: JUMP 00001ad5: JUMPDEST 00001ad6: PUSH2 0x013c 00001ad9: DUP1 00001ada: SLOAD 00001adb: PUSH21 0xffffffffffffffffffffffffffffffffffffffff00 00001af1: NOT 00001af2: AND 00001af3: PUSH2 0x0100 00001af6: PUSH1 0x01 00001af8: PUSH1 0x01 00001afa: PUSH1 0xa0 00001afc: SHL 00001afd: SUB 00001afe: DUP6 00001aff: AND 00001b00: SWAP1 00001b01: DUP2 00001b02: MUL 00001b03: SWAP2 00001b04: SWAP1 00001b05: SWAP2 00001b06: OR 00001b07: SWAP1 00001b08: SWAP2 00001b09: SSTORE 00001b0a: PUSH1 0x40 00001b0c: MLOAD 00001b0d: PUSH32 0xb600274ef5d11bda880beece19f867f60804daa64e9abecaf8f54ba2d2a73c11 00001b2e: SWAP1 00001b2f: PUSH1 0x00 00001b31: SWAP1 00001b32: LOG2 00001b33: POP 00001b34: POP 00001b35: JUMP 00001b36: JUMPDEST 00001b37: PUSH2 0x1b3e 00001b3a: PUSH2 0x39ee 00001b3d: JUMP 00001b3e: JUMPDEST 00001b3f: PUSH2 0x1b46 00001b42: PUSH2 0x37d5 00001b45: JUMP 00001b46: JUMPDEST 00001b47: PUSH32 0xfdbb443d3be9998f1655a4e17225c4ddd3b30e4167b68ae1afec32d933748df1 00001b68: PUSH2 0x1b70 00001b6b: DUP2 00001b6c: PUSH2 0x3828 00001b6f: JUMP 00001b70: JUMPDEST 00001b71: DUP5 00001b72: DUP4 00001b73: EQ 00001b74: PUSH2 0x1bbf 00001b77: JUMPI 00001b78: PUSH1 0x40 00001b7a: MLOAD 00001b7b: PUSH3 0x461bcd 00001b7f: PUSH1 0xe5 00001b81: SHL 00001b82: DUP2 00001b83: MSTORE 00001b84: PUSH1 0x20 00001b86: PUSH1 0x04 00001b88: DUP3 00001b89: ADD 00001b8a: MSTORE 00001b8b: PUSH1 0x18 00001b8d: PUSH1 0x24 00001b8f: DUP3 00001b90: ADD 00001b91: MSTORE 00001b92: PUSH32 0x4172726179206c656e67746873206d757374206d617463680000000000000000 00001bb3: PUSH1 0x44 00001bb5: DUP3 00001bb6: ADD 00001bb7: MSTORE 00001bb8: PUSH1 0x64 00001bba: ADD 00001bbb: PUSH2 0x0c37 00001bbe: JUMP 00001bbf: JUMPDEST 00001bc0: PUSH1 0x00 00001bc2: DUP3 00001bc3: GT 00001bc4: PUSH2 0x1c00 00001bc7: JUMPI 00001bc8: PUSH1 0x40 00001bca: MLOAD 00001bcb: PUSH3 0x461bcd 00001bcf: PUSH1 0xe5 00001bd1: SHL 00001bd2: DUP2 00001bd3: MSTORE 00001bd4: PUSH1 0x20 00001bd6: PUSH1 0x04 00001bd8: DUP3 00001bd9: ADD 00001bda: MSTORE 00001bdb: PUSH1 0x0e 00001bdd: PUSH1 0x24 00001bdf: DUP3 00001be0: ADD 00001be1: MSTORE 00001be2: PUSH14 0x125b9d985b1a5908185b5bdd5b9d 00001bf1: PUSH1 0x92 00001bf3: SHL 00001bf4: PUSH1 0x44 00001bf6: DUP3 00001bf7: ADD 00001bf8: MSTORE 00001bf9: PUSH1 0x64 00001bfb: ADD 00001bfc: PUSH2 0x0c37 00001bff: JUMP 00001c00: JUMPDEST 00001c01: PUSH2 0x0138 00001c04: SLOAD 00001c05: PUSH1 0x01 00001c07: PUSH1 0xa0 00001c09: SHL 00001c0a: SWAP1 00001c0b: DIV 00001c0c: PUSH1 0xff 00001c0e: AND 00001c0f: PUSH2 0x1c52 00001c12: JUMPI 00001c13: DUP2 00001c14: CALLVALUE 00001c15: EQ 00001c16: PUSH2 0x1c52 00001c19: JUMPI 00001c1a: PUSH1 0x40 00001c1c: MLOAD 00001c1d: PUSH3 0x461bcd 00001c21: PUSH1 0xe5 00001c23: SHL 00001c24: DUP2 00001c25: MSTORE 00001c26: PUSH1 0x20 00001c28: PUSH1 0x04 00001c2a: DUP3 00001c2b: ADD 00001c2c: MSTORE 00001c2d: PUSH1 0x0e 00001c2f: PUSH1 0x24 00001c31: DUP3 00001c32: ADD 00001c33: MSTORE 00001c34: PUSH14 0x125b9d985b1a5908185b5bdd5b9d 00001c43: PUSH1 0x92 00001c45: SHL 00001c46: PUSH1 0x44 00001c48: DUP3 00001c49: ADD 00001c4a: MSTORE 00001c4b: PUSH1 0x64 00001c4d: ADD 00001c4e: PUSH2 0x0c37 00001c51: JUMP 00001c52: JUMPDEST 00001c53: PUSH1 0x00 00001c55: DUP6 00001c56: PUSH8 0xffffffffffffffff 00001c5f: DUP2 00001c60: GT 00001c61: ISZERO 00001c62: PUSH2 0x1c6d 00001c65: JUMPI 00001c66: PUSH2 0x1c6d 00001c69: PUSH2 0x46f7 00001c6c: JUMP 00001c6d: JUMPDEST 00001c6e: PUSH1 0x40 00001c70: MLOAD 00001c71: SWAP1 00001c72: DUP1 00001c73: DUP3 00001c74: MSTORE 00001c75: DUP1 00001c76: PUSH1 0x20 00001c78: MUL 00001c79: PUSH1 0x20 00001c7b: ADD 00001c7c: DUP3 00001c7d: ADD 00001c7e: PUSH1 0x40 00001c80: MSTORE 00001c81: DUP1 00001c82: ISZERO 00001c83: PUSH2 0x1c96 00001c86: JUMPI 00001c87: DUP2 00001c88: PUSH1 0x20 00001c8a: ADD 00001c8b: PUSH1 0x20 00001c8d: DUP3 00001c8e: MUL 00001c8f: DUP1 00001c90: CALLDATASIZE 00001c91: DUP4 00001c92: CALLDATACOPY 00001c93: ADD 00001c94: SWAP1 00001c95: POP 00001c96: JUMPDEST 00001c97: POP 00001c98: SWAP1 00001c99: POP 00001c9a: PUSH1 0x00 00001c9c: JUMPDEST 00001c9d: DUP7 00001c9e: DUP2 00001c9f: LT 00001ca0: ISZERO 00001ca1: PUSH2 0x1d17 00001ca4: JUMPI 00001ca5: PUSH1 0x00 00001ca7: DUP7 00001ca8: DUP7 00001ca9: DUP4 00001caa: DUP2 00001cab: DUP2 00001cac: LT 00001cad: PUSH2 0x1cb8 00001cb0: JUMPI 00001cb1: PUSH2 0x1cb8 00001cb4: PUSH2 0x4eea 00001cb7: JUMP 00001cb8: JUMPDEST 00001cb9: SWAP1 00001cba: POP 00001cbb: PUSH1 0x20 00001cbd: MUL 00001cbe: ADD 00001cbf: CALLDATALOAD 00001cc0: GT 00001cc1: ISZERO 00001cc2: PUSH2 0x1d05 00001cc5: JUMPI 00001cc6: PUSH2 0x1ce6 00001cc9: DUP7 00001cca: DUP7 00001ccb: DUP4 00001ccc: DUP2 00001ccd: DUP2 00001cce: LT 00001ccf: PUSH2 0x1cda 00001cd2: JUMPI 00001cd3: PUSH2 0x1cda 00001cd6: PUSH2 0x4eea 00001cd9: JUMP 00001cda: JUMPDEST 00001cdb: SWAP1 00001cdc: POP 00001cdd: PUSH1 0x20 00001cdf: MUL 00001ce0: ADD 00001ce1: CALLDATALOAD 00001ce2: PUSH2 0x33bc 00001ce5: JUMP 00001ce6: JUMPDEST 00001ce7: DUP3 00001ce8: DUP3 00001ce9: DUP2 00001cea: MLOAD 00001ceb: DUP2 00001cec: LT 00001ced: PUSH2 0x1cf8 00001cf0: JUMPI 00001cf1: PUSH2 0x1cf8 00001cf4: PUSH2 0x4eea 00001cf7: JUMP 00001cf8: JUMPDEST 00001cf9: PUSH1 0x20 00001cfb: MUL 00001cfc: PUSH1 0x20 00001cfe: ADD 00001cff: ADD 00001d00: DUP2 00001d01: DUP2 00001d02: MSTORE 00001d03: POP 00001d04: POP 00001d05: JUMPDEST 00001d06: DUP1 00001d07: PUSH2 0x1d0f 00001d0a: DUP2 00001d0b: PUSH2 0x4f00 00001d0e: JUMP 00001d0f: JUMPDEST 00001d10: SWAP2 00001d11: POP 00001d12: POP 00001d13: PUSH2 0x1c9c 00001d16: JUMP 00001d17: JUMPDEST 00001d18: POP 00001d19: DUP3 00001d1a: PUSH2 0x0133 00001d1d: PUSH1 0x00 00001d1f: DUP3 00001d20: DUP3 00001d21: SLOAD 00001d22: PUSH2 0x1d2b 00001d25: SWAP2 00001d26: SWAP1 00001d27: PUSH2 0x4e38 00001d2a: JUMP 00001d2b: JUMPDEST 00001d2c: SWAP1 00001d2d: SWAP2 00001d2e: SSTORE 00001d2f: POP 00001d30: POP 00001d31: PUSH2 0x0138 00001d34: SLOAD 00001d35: PUSH1 0x01 00001d37: PUSH1 0xa0 00001d39: SHL 00001d3a: SWAP1 00001d3b: DIV 00001d3c: PUSH1 0xff 00001d3e: AND 00001d3f: ISZERO 00001d40: PUSH2 0x1d5c 00001d43: JUMPI 00001d44: PUSH2 0x0138 00001d47: SLOAD 00001d48: PUSH2 0x1d5c 00001d4b: SWAP1 00001d4c: PUSH1 0x01 00001d4e: PUSH1 0x01 00001d50: PUSH1 0xa0 00001d52: SHL 00001d53: SUB 00001d54: AND 00001d55: CALLER 00001d56: ADDRESS 00001d57: DUP7 00001d58: PUSH2 0x3ca1 00001d5b: JUMP 00001d5c: JUMPDEST 00001d5d: PUSH1 0x00 00001d5f: JUMPDEST 00001d60: DUP7 00001d61: DUP2 00001d62: LT 00001d63: ISZERO 00001d64: PUSH2 0x1e52 00001d67: JUMPI 00001d68: PUSH1 0x00 00001d6a: DUP3 00001d6b: DUP3 00001d6c: DUP2 00001d6d: MLOAD 00001d6e: DUP2 00001d6f: LT 00001d70: PUSH2 0x1d7b 00001d73: JUMPI 00001d74: PUSH2 0x1d7b 00001d77: PUSH2 0x4eea 00001d7a: JUMP 00001d7b: JUMPDEST 00001d7c: PUSH1 0x20 00001d7e: MUL 00001d7f: PUSH1 0x20 00001d81: ADD 00001d82: ADD 00001d83: MLOAD 00001d84: GT 00001d85: ISZERO 00001d86: PUSH2 0x1e40 00001d89: JUMPI 00001d8a: PUSH2 0x012e 00001d8d: SLOAD 00001d8e: PUSH1 0x01 00001d90: PUSH1 0x01 00001d92: PUSH1 0xa0 00001d94: SHL 00001d95: SUB 00001d96: AND 00001d97: PUSH4 0x40c10f19 00001d9c: DUP10 00001d9d: DUP10 00001d9e: DUP5 00001d9f: DUP2 00001da0: DUP2 00001da1: LT 00001da2: PUSH2 0x1dad 00001da5: JUMPI 00001da6: PUSH2 0x1dad 00001da9: PUSH2 0x4eea 00001dac: JUMP 00001dad: JUMPDEST 00001dae: SWAP1 00001daf: POP 00001db0: PUSH1 0x20 00001db2: MUL 00001db3: ADD 00001db4: PUSH1 0x20 00001db6: DUP2 00001db7: ADD 00001db8: SWAP1 00001db9: PUSH2 0x1dc2 00001dbc: SWAP2 00001dbd: SWAP1 00001dbe: PUSH2 0x4880 00001dc1: JUMP 00001dc2: JUMPDEST 00001dc3: DUP5 00001dc4: DUP5 00001dc5: DUP2 00001dc6: MLOAD 00001dc7: DUP2 00001dc8: LT 00001dc9: PUSH2 0x1dd4 00001dcc: JUMPI 00001dcd: PUSH2 0x1dd4 00001dd0: PUSH2 0x4eea 00001dd3: JUMP 00001dd4: JUMPDEST 00001dd5: PUSH1 0x20 00001dd7: MUL 00001dd8: PUSH1 0x20 00001dda: ADD 00001ddb: ADD 00001ddc: MLOAD 00001ddd: PUSH1 0x40 00001ddf: MLOAD 00001de0: DUP4 00001de1: PUSH4 0xffffffff 00001de6: AND 00001de7: PUSH1 0xe0 00001de9: SHL 00001dea: DUP2 00001deb: MSTORE 00001dec: PUSH1 0x04 00001dee: ADD 00001def: PUSH2 0x1e0d 00001df2: SWAP3 00001df3: SWAP2 00001df4: SWAP1 00001df5: PUSH1 0x01 00001df7: PUSH1 0x01 00001df9: PUSH1 0xa0 00001dfb: SHL 00001dfc: SUB 00001dfd: SWAP3 00001dfe: SWAP1 00001dff: SWAP3 00001e00: AND 00001e01: DUP3 00001e02: MSTORE 00001e03: PUSH1 0x20 00001e05: DUP3 00001e06: ADD 00001e07: MSTORE 00001e08: PUSH1 0x40 00001e0a: ADD 00001e0b: SWAP1 00001e0c: JUMP 00001e0d: JUMPDEST 00001e0e: PUSH1 0x00 00001e10: PUSH1 0x40 00001e12: MLOAD 00001e13: DUP1 00001e14: DUP4 00001e15: SUB 00001e16: DUP2 00001e17: PUSH1 0x00 00001e19: DUP8 00001e1a: DUP1 00001e1b: EXTCODESIZE 00001e1c: ISZERO 00001e1d: DUP1 00001e1e: ISZERO 00001e1f: PUSH2 0x1e27 00001e22: JUMPI 00001e23: PUSH1 0x00 00001e25: DUP1 00001e26: REVERT 00001e27: JUMPDEST 00001e28: POP 00001e29: GAS 00001e2a: CALL 00001e2b: ISZERO 00001e2c: DUP1 00001e2d: ISZERO 00001e2e: PUSH2 0x1e3b 00001e31: JUMPI 00001e32: RETURNDATASIZE 00001e33: PUSH1 0x00 00001e35: DUP1 00001e36: RETURNDATACOPY 00001e37: RETURNDATASIZE 00001e38: PUSH1 0x00 00001e3a: REVERT 00001e3b: JUMPDEST 00001e3c: POP 00001e3d: POP 00001e3e: POP 00001e3f: POP 00001e40: JUMPDEST 00001e41: DUP1 00001e42: PUSH2 0x1e4a 00001e45: DUP2 00001e46: PUSH2 0x4f00 00001e49: JUMP 00001e4a: JUMPDEST 00001e4b: SWAP2 00001e4c: POP 00001e4d: POP 00001e4e: PUSH2 0x1d5f 00001e51: JUMP 00001e52: JUMPDEST 00001e53: POP 00001e54: POP 00001e55: POP 00001e56: PUSH2 0x1e5f 00001e59: PUSH1 0x01 00001e5b: PUSH1 0x97 00001e5d: SSTORE 00001e5e: JUMP 00001e5f: JUMPDEST 00001e60: POP 00001e61: POP 00001e62: POP 00001e63: POP 00001e64: POP 00001e65: JUMP 00001e66: JUMPDEST 00001e67: PUSH2 0x1e6e 00001e6a: PUSH2 0x37d5 00001e6d: JUMP 00001e6e: JUMPDEST 00001e6f: PUSH1 0x00 00001e71: DUP1 00001e72: MLOAD 00001e73: PUSH1 0x20 00001e75: PUSH2 0x5289 00001e78: DUP4 00001e79: CODECOPY 00001e7a: DUP2 00001e7b: MLOAD 00001e7c: SWAP2 00001e7d: MSTORE 00001e7e: PUSH2 0x1e86 00001e81: DUP2 00001e82: PUSH2 0x3828 00001e85: JUMP 00001e86: JUMPDEST 00001e87: PUSH2 0x1e8f 00001e8a: DUP8 00001e8b: PUSH2 0x3832 00001e8e: JUMP 00001e8f: JUMPDEST 00001e90: PUSH1 0x00 00001e92: PUSH2 0x1ea1 00001e95: PUSH1 0xa0 00001e97: DUP10 00001e98: ADD 00001e99: PUSH1 0x80 00001e9b: DUP11 00001e9c: ADD 00001e9d: PUSH2 0x4880 00001ea0: JUMP 00001ea1: JUMPDEST 00001ea2: PUSH1 0x40 00001ea4: MLOAD 00001ea5: PUSH4 0x4f0815c1 00001eaa: PUSH1 0xe1 00001eac: SHL 00001ead: DUP2 00001eae: MSTORE 00001eaf: SWAP1 00001eb0: SWAP2 00001eb1: POP 00001eb2: PUSH1 0x01 00001eb4: PUSH1 0x01 00001eb6: PUSH1 0xa0 00001eb8: SHL 00001eb9: SUB 00001eba: DUP3 00001ebb: AND 00001ebc: SWAP1 00001ebd: PUSH4 0x9e102b82 00001ec2: SWAP1 00001ec3: PUSH2 0x1ee6 00001ec6: SWAP1 00001ec7: DUP12 00001ec8: CALLDATALOAD 00001ec9: SWAP1 00001eca: PUSH1 0x20 00001ecc: DUP14 00001ecd: ADD 00001ece: SWAP1 00001ecf: PUSH1 0x60 00001ed1: DUP15 00001ed2: ADD 00001ed3: CALLDATALOAD 00001ed4: SWAP1 00001ed5: DUP14 00001ed6: SWAP1 00001ed7: DUP14 00001ed8: SWAP1 00001ed9: DUP14 00001eda: SWAP1 00001edb: DUP14 00001edc: SWAP1 00001edd: DUP14 00001ede: SWAP1 00001edf: PUSH1 0x04 00001ee1: ADD 00001ee2: PUSH2 0x5091 00001ee5: JUMP 00001ee6: JUMPDEST 00001ee7: PUSH1 0x00 00001ee9: PUSH1 0x40 00001eeb: MLOAD 00001eec: DUP1 00001eed: DUP4 00001eee: SUB 00001eef: DUP2 00001ef0: PUSH1 0x00 00001ef2: DUP8 00001ef3: DUP1 00001ef4: EXTCODESIZE 00001ef5: ISZERO 00001ef6: DUP1 00001ef7: ISZERO 00001ef8: PUSH2 0x1f00 00001efb: JUMPI 00001efc: PUSH1 0x00 00001efe: DUP1 00001eff: REVERT 00001f00: JUMPDEST 00001f01: POP 00001f02: GAS 00001f03: CALL 00001f04: ISZERO 00001f05: DUP1 00001f06: ISZERO 00001f07: PUSH2 0x1f14 00001f0a: JUMPI 00001f0b: RETURNDATASIZE 00001f0c: PUSH1 0x00 00001f0e: DUP1 00001f0f: RETURNDATACOPY 00001f10: RETURNDATASIZE 00001f11: PUSH1 0x00 00001f13: REVERT 00001f14: JUMPDEST 00001f15: POP 00001f16: POP 00001f17: PUSH1 0x40 00001f19: MLOAD 00001f1a: PUSH1 0x01 00001f1c: DUP2 00001f1d: MSTORE 00001f1e: DUP11 00001f1f: CALLDATALOAD 00001f20: SWAP3 00001f21: POP 00001f22: PUSH32 0x1bc13c64b284b03bd27bb0a4ce4d00d1d6892b4e10344c01bfcbe79396651bc1 00001f43: SWAP2 00001f44: POP 00001f45: PUSH1 0x20 00001f47: ADD 00001f48: PUSH1 0x40 00001f4a: MLOAD 00001f4b: DUP1 00001f4c: SWAP2 00001f4d: SUB 00001f4e: SWAP1 00001f4f: LOG2 00001f50: POP 00001f51: POP 00001f52: POP 00001f53: POP 00001f54: POP 00001f55: POP 00001f56: POP 00001f57: POP 00001f58: JUMP 00001f59: JUMPDEST 00001f5a: PUSH2 0x1f61 00001f5d: PUSH2 0x39ee 00001f60: JUMP 00001f61: JUMPDEST 00001f62: PUSH32 0x507793b6688804c17fc033a24c049858152fd713503d8768de9c67313c5a3afd 00001f83: PUSH2 0x1f8b 00001f86: DUP2 00001f87: PUSH2 0x3828 00001f8a: JUMP 00001f8b: JUMPDEST 00001f8c: PUSH2 0x0138 00001f8f: SLOAD 00001f90: PUSH1 0x01 00001f92: PUSH1 0xa0 00001f94: SHL 00001f95: SWAP1 00001f96: DIV 00001f97: PUSH1 0xff 00001f99: AND 00001f9a: ISZERO 00001f9b: PUSH2 0x1fe8 00001f9e: JUMPI 00001f9f: CALLVALUE 00001fa0: ISZERO 00001fa1: PUSH2 0x1fe3 00001fa4: JUMPI 00001fa5: PUSH1 0x40 00001fa7: MLOAD 00001fa8: PUSH3 0x461bcd 00001fac: PUSH1 0xe5 00001fae: SHL 00001faf: DUP2 00001fb0: MSTORE 00001fb1: PUSH1 0x20 00001fb3: PUSH1 0x04 00001fb5: DUP3 00001fb6: ADD 00001fb7: MSTORE 00001fb8: PUSH1 0x14 00001fba: PUSH1 0x24 00001fbc: DUP3 00001fbd: ADD 00001fbe: MSTORE 00001fbf: PUSH20 0x15dc9bdb99c81d1c985b99995c88185b5bdd5b9d 00001fd4: PUSH1 0x62 00001fd6: SHL 00001fd7: PUSH1 0x44 00001fd9: DUP3 00001fda: ADD 00001fdb: MSTORE 00001fdc: PUSH1 0x64 00001fde: ADD 00001fdf: PUSH2 0x0c37 00001fe2: JUMP 00001fe3: JUMPDEST 00001fe4: PUSH2 0x2037 00001fe7: JUMP 00001fe8: JUMPDEST 00001fe9: PUSH2 0x1ff2 00001fec: DUP3 00001fed: DUP5 00001fee: PUSH2 0x4e38 00001ff1: JUMP 00001ff2: JUMPDEST 00001ff3: CALLVALUE 00001ff4: EQ 00001ff5: PUSH2 0x2037 00001ff8: JUMPI 00001ff9: PUSH1 0x40 00001ffb: MLOAD 00001ffc: PUSH3 0x461bcd 00002000: PUSH1 0xe5 00002002: SHL 00002003: DUP2 00002004: MSTORE 00002005: PUSH1 0x20 00002007: PUSH1 0x04 00002009: DUP3 0000200a: ADD 0000200b: MSTORE 0000200c: PUSH1 0x14 0000200e: PUSH1 0x24 00002010: DUP3 00002011: ADD 00002012: MSTORE 00002013: PUSH20 0x15dc9bdb99c81d1c985b99995c88185b5bdd5b9d 00002028: PUSH1 0x62 0000202a: SHL 0000202b: PUSH1 0x44 0000202d: DUP3 0000202e: ADD 0000202f: MSTORE 00002030: PUSH1 0x64 00002032: ADD 00002033: PUSH2 0x0c37 00002036: JUMP 00002037: JUMPDEST 00002038: PUSH2 0x0138 0000203b: SLOAD 0000203c: PUSH1 0x01 0000203e: PUSH1 0xa0 00002040: SHL 00002041: SWAP1 00002042: DIV 00002043: PUSH1 0xff 00002045: AND 00002046: ISZERO 00002047: PUSH2 0x206e 0000204a: JUMPI 0000204b: PUSH2 0x206e 0000204e: CALLER 0000204f: ADDRESS 00002050: PUSH2 0x2059 00002053: DUP6 00002054: DUP8 00002055: PUSH2 0x4e38 00002058: JUMP 00002059: JUMPDEST 0000205a: PUSH2 0x0138 0000205d: SLOAD 0000205e: PUSH1 0x01 00002060: PUSH1 0x01 00002062: PUSH1 0xa0 00002064: SHL 00002065: SUB 00002066: AND 00002067: SWAP3 00002068: SWAP2 00002069: SWAP1 0000206a: PUSH2 0x3ca1 0000206d: JUMP 0000206e: JUMPDEST 0000206f: PUSH2 0x2078 00002072: DUP3 00002073: DUP5 00002074: PUSH2 0x4e38 00002077: JUMP 00002078: JUMPDEST 00002079: PUSH2 0x0133 0000207c: PUSH1 0x00 0000207e: DUP3 0000207f: DUP3 00002080: SLOAD 00002081: PUSH2 0x208a 00002084: SWAP2 00002085: SWAP1 00002086: PUSH2 0x4e38 00002089: JUMP 0000208a: JUMPDEST 0000208b: SWAP1 0000208c: SWAP2 0000208d: SSTORE 0000208e: POP 0000208f: POP 00002090: PUSH2 0x0134 00002093: SLOAD 00002094: DUP4 00002095: GT 00002096: PUSH2 0x20b7 00002099: JUMPI 0000209a: DUP3 0000209b: PUSH2 0x0134 0000209e: PUSH1 0x00 000020a0: DUP3 000020a1: DUP3 000020a2: SLOAD 000020a3: PUSH2 0x20ac 000020a6: SWAP2 000020a7: SWAP1 000020a8: PUSH2 0x4e84 000020ab: JUMP 000020ac: JUMPDEST 000020ad: SWAP1 000020ae: SWAP2 000020af: SSTORE 000020b0: POP 000020b1: PUSH2 0x20be 000020b4: SWAP1 000020b5: POP 000020b6: JUMP 000020b7: JUMPDEST 000020b8: PUSH1 0x00 000020ba: PUSH2 0x0134 000020bd: SSTORE 000020be: JUMPDEST 000020bf: PUSH1 0x40 000020c1: DUP1 000020c2: MLOAD 000020c3: DUP5 000020c4: DUP2 000020c5: MSTORE 000020c6: PUSH1 0x20 000020c8: DUP2 000020c9: ADD 000020ca: DUP5 000020cb: SWAP1 000020cc: MSTORE 000020cd: PUSH32 0x5850d758e6151f474c145f4f59e8cb315c3f1a9fe82d96dff5bd2d48b5a76f9b 000020ee: SWAP2 000020ef: ADD 000020f0: JUMPDEST 000020f1: PUSH1 0x40 000020f3: MLOAD 000020f4: DUP1 000020f5: SWAP2 000020f6: SUB 000020f7: SWAP1 000020f8: LOG1 000020f9: POP 000020fa: PUSH2 0x0f48 000020fd: PUSH1 0x01 000020ff: PUSH1 0x97 00002101: SSTORE 00002102: JUMP 00002103: JUMPDEST 00002104: PUSH1 0x00 00002106: PUSH2 0x210e 00002109: DUP2 0000210a: PUSH2 0x3828 0000210d: JUMP 0000210e: JUMPDEST 0000210f: PUSH2 0x013a 00002112: SLOAD 00002113: PUSH1 0x40 00002115: DUP1 00002116: MLOAD 00002117: SWAP2 00002118: DUP3 00002119: MSTORE 0000211a: PUSH1 0x20 0000211c: DUP3 0000211d: ADD 0000211e: DUP5 0000211f: SWAP1 00002120: MSTORE 00002121: PUSH32 0x4cbae8b98c0d2e56b6aea023eb7a2bd38b351afbefdc5ca1f8b2583f1f781925 00002142: SWAP2 00002143: ADD 00002144: PUSH1 0x40 00002146: MLOAD 00002147: DUP1 00002148: SWAP2 00002149: SUB 0000214a: SWAP1 0000214b: LOG1 0000214c: POP 0000214d: PUSH2 0x013a 00002150: SSTORE 00002151: JUMP 00002152: JUMPDEST 00002153: PUSH2 0x215a 00002156: PUSH2 0x39ee 00002159: JUMP 0000215a: JUMPDEST 0000215b: PUSH32 0x507793b6688804c17fc033a24c049858152fd713503d8768de9c67313c5a3afd 0000217c: PUSH2 0x2184 0000217f: DUP2 00002180: PUSH2 0x3828 00002183: JUMP 00002184: JUMPDEST 00002185: DUP2 00002186: PUSH2 0x0135 00002189: PUSH1 0x00 0000218b: DUP3 0000218c: DUP3 0000218d: SLOAD 0000218e: PUSH2 0x2197 00002191: SWAP2 00002192: SWAP1 00002193: PUSH2 0x4e38 00002196: JUMP 00002197: JUMPDEST 00002198: SWAP1 00002199: SWAP2 0000219a: SSTORE 0000219b: POP 0000219c: POP 0000219d: PUSH2 0x0134 000021a0: SLOAD 000021a1: DUP4 000021a2: GT 000021a3: PUSH2 0x21c4 000021a6: JUMPI 000021a7: DUP3 000021a8: PUSH2 0x0134 000021ab: PUSH1 0x00 000021ad: DUP3 000021ae: DUP3 000021af: SLOAD 000021b0: PUSH2 0x21b9 000021b3: SWAP2 000021b4: SWAP1 000021b5: PUSH2 0x4e84 000021b8: JUMP 000021b9: JUMPDEST 000021ba: SWAP1 000021bb: SWAP2 000021bc: SSTORE 000021bd: POP 000021be: PUSH2 0x21cb 000021c1: SWAP1 000021c2: POP 000021c3: JUMP 000021c4: JUMPDEST 000021c5: PUSH1 0x00 000021c7: PUSH2 0x0134 000021ca: SSTORE 000021cb: JUMPDEST 000021cc: PUSH1 0x40 000021ce: DUP1 000021cf: MLOAD 000021d0: DUP5 000021d1: DUP2 000021d2: MSTORE 000021d3: PUSH1 0x20 000021d5: DUP2 000021d6: ADD 000021d7: DUP5 000021d8: SWAP1 000021d9: MSTORE 000021da: PUSH32 0x9b8376ea2c5e9863179edf3c51616d423d51e32eea3ca2e7a02ce8a3d3aa0142 000021fb: SWAP2 000021fc: ADD 000021fd: PUSH2 0x20f0 00002200: JUMP 00002201: JUMPDEST 00002202: PUSH2 0x2209 00002205: PUSH2 0x39ee 00002208: JUMP 00002209: JUMPDEST 0000220a: PUSH1 0x00 0000220c: PUSH2 0x2214 0000220f: DUP2 00002210: PUSH2 0x3828 00002213: JUMP 00002214: JUMPDEST 00002215: PUSH32 0xf0b42f9fe97fe866aaeaccc4da4b80df4b1e9d625522db8c2529cdf7f1cd1451 00002236: PUSH2 0x0136 00002239: SLOAD 0000223a: PUSH1 0x40 0000223c: MLOAD 0000223d: PUSH2 0x2248 00002240: SWAP2 00002241: DUP2 00002242: MSTORE 00002243: PUSH1 0x20 00002245: ADD 00002246: SWAP1 00002247: JUMP 00002248: JUMPDEST 00002249: PUSH1 0x40 0000224b: MLOAD 0000224c: DUP1 0000224d: SWAP2 0000224e: SUB 0000224f: SWAP1 00002250: LOG1 00002251: PUSH2 0x225d 00002254: CALLER 00002255: PUSH2 0x0136 00002258: SLOAD 00002259: PUSH2 0x3a47 0000225c: JUMP 0000225d: JUMPDEST 0000225e: POP 0000225f: PUSH1 0x00 00002261: PUSH2 0x0136 00002264: SSTORE 00002265: PUSH2 0x0f72 00002268: PUSH1 0x01 0000226a: PUSH1 0x97 0000226c: SSTORE 0000226d: JUMP 0000226e: JUMPDEST 0000226f: PUSH2 0x012e 00002272: SLOAD 00002273: PUSH1 0x40 00002275: MLOAD 00002276: PUSH4 0x70a08231 0000227b: PUSH1 0xe0 0000227d: SHL 0000227e: DUP2 0000227f: MSTORE 00002280: PUSH1 0x01 00002282: PUSH1 0x01 00002284: PUSH1 0xa0 00002286: SHL 00002287: SUB 00002288: DUP4 00002289: DUP2 0000228a: AND 0000228b: PUSH1 0x04 0000228d: DUP4 0000228e: ADD 0000228f: MSTORE 00002290: PUSH1 0x00 00002292: SWAP3 00002293: DUP4 00002294: SWAP3 00002295: SWAP2 00002296: AND 00002297: SWAP1 00002298: PUSH4 0x70a08231 0000229d: SWAP1 0000229e: PUSH1 0x24 000022a0: ADD 000022a1: PUSH1 0x20 000022a3: PUSH1 0x40 000022a5: MLOAD 000022a6: DUP1 000022a7: DUP4 000022a8: SUB 000022a9: DUP2 000022aa: DUP7 000022ab: GAS 000022ac: STATICCALL 000022ad: ISZERO 000022ae: DUP1 000022af: ISZERO 000022b0: PUSH2 0x22bd 000022b3: JUMPI 000022b4: RETURNDATASIZE 000022b5: PUSH1 0x00 000022b7: DUP1 000022b8: RETURNDATACOPY 000022b9: RETURNDATASIZE 000022ba: PUSH1 0x00 000022bc: REVERT 000022bd: JUMPDEST 000022be: POP 000022bf: POP 000022c0: POP 000022c1: POP 000022c2: PUSH1 0x40 000022c4: MLOAD 000022c5: RETURNDATASIZE 000022c6: PUSH1 0x1f 000022c8: NOT 000022c9: PUSH1 0x1f 000022cb: DUP3 000022cc: ADD 000022cd: AND 000022ce: DUP3 000022cf: ADD 000022d0: DUP1 000022d1: PUSH1 0x40 000022d3: MSTORE 000022d4: POP 000022d5: DUP2 000022d6: ADD 000022d7: SWAP1 000022d8: PUSH2 0x22e1 000022db: SWAP2 000022dc: SWAP1 000022dd: PUSH2 0x4eb4 000022e0: JUMP 000022e1: JUMPDEST 000022e2: SWAP1 000022e3: POP 000022e4: PUSH1 0x00 000022e6: PUSH2 0x22ee 000022e9: DUP3 000022ea: PUSH2 0x35e1 000022ed: JUMP 000022ee: JUMPDEST 000022ef: SWAP1 000022f0: POP 000022f1: PUSH1 0x00 000022f3: PUSH2 0x22fa 000022f6: PUSH2 0x0a6e 000022f9: JUMP 000022fa: JUMPDEST 000022fb: SWAP1 000022fc: POP 000022fd: DUP1 000022fe: DUP3 000022ff: GT 00002300: PUSH2 0x230c 00002303: JUMPI 00002304: POP 00002305: SWAP1 00002306: SWAP4 00002307: SWAP3 00002308: POP 00002309: POP 0000230a: POP 0000230b: JUMP 0000230c: JUMPDEST 0000230d: PUSH2 0x2315 00002310: DUP2 00002311: PUSH2 0x33bc 00002314: JUMP 00002315: JUMPDEST 00002316: SWAP6 00002317: SWAP5 00002318: POP 00002319: POP 0000231a: POP 0000231b: POP 0000231c: POP 0000231d: JUMP 0000231e: JUMPDEST 0000231f: PUSH2 0x2326 00002322: PUSH2 0x39ee 00002325: JUMP 00002326: JUMPDEST 00002327: PUSH1 0x00 00002329: PUSH2 0x2331 0000232c: DUP2 0000232d: PUSH2 0x3828 00002330: JUMP 00002331: JUMPDEST 00002332: PUSH2 0x0f67 00002335: PUSH2 0x3d27 00002338: JUMP 00002339: JUMPDEST 0000233a: PUSH2 0x2341 0000233d: PUSH2 0x39ee 00002340: JUMP 00002341: JUMPDEST 00002342: PUSH1 0x00 00002344: DUP1 00002345: MLOAD 00002346: PUSH1 0x20 00002348: PUSH2 0x5289 0000234b: DUP4 0000234c: CODECOPY 0000234d: DUP2 0000234e: MLOAD 0000234f: SWAP2 00002350: MSTORE 00002351: PUSH2 0x2359 00002354: DUP2 00002355: PUSH2 0x3828 00002358: JUMP 00002359: JUMPDEST 0000235a: PUSH2 0x0137 0000235d: SLOAD 0000235e: PUSH1 0x01 00002360: PUSH1 0x01 00002362: PUSH1 0xa0 00002364: SHL 00002365: SUB 00002366: SWAP1 00002367: DUP2 00002368: AND 00002369: SWAP1 0000236a: DUP5 0000236b: AND 0000236c: SUB 0000236d: PUSH2 0x23b8 00002370: JUMPI 00002371: PUSH1 0x40 00002373: MLOAD 00002374: PUSH3 0x461bcd 00002378: PUSH1 0xe5 0000237a: SHL 0000237b: DUP2 0000237c: MSTORE 0000237d: PUSH1 0x20 0000237f: PUSH1 0x04 00002381: DUP3 00002382: ADD 00002383: MSTORE 00002384: PUSH1 0x1e 00002386: PUSH1 0x24 00002388: DUP3 00002389: ADD 0000238a: MSTORE 0000238b: PUSH32 0x43616e6e6f742077697468647261772063757272656e637920746f6b656e0000 000023ac: PUSH1 0x44 000023ae: DUP3 000023af: ADD 000023b0: MSTORE 000023b1: PUSH1 0x64 000023b3: ADD 000023b4: PUSH2 0x0c37 000023b7: JUMP 000023b8: JUMPDEST 000023b9: PUSH1 0x40 000023bb: MLOAD 000023bc: PUSH4 0x70a08231 000023c1: PUSH1 0xe0 000023c3: SHL 000023c4: DUP2 000023c5: MSTORE 000023c6: ADDRESS 000023c7: PUSH1 0x04 000023c9: DUP3 000023ca: ADD 000023cb: MSTORE 000023cc: DUP4 000023cd: SWAP1 000023ce: DUP4 000023cf: SWAP1 000023d0: PUSH1 0x01 000023d2: PUSH1 0x01 000023d4: PUSH1 0xa0 000023d6: SHL 000023d7: SUB 000023d8: DUP4 000023d9: AND 000023da: SWAP1 000023db: PUSH4 0x70a08231 000023e0: SWAP1 000023e1: PUSH1 0x24 000023e3: ADD 000023e4: PUSH1 0x20 000023e6: PUSH1 0x40 000023e8: MLOAD 000023e9: DUP1 000023ea: DUP4 000023eb: SUB 000023ec: DUP2 000023ed: DUP7 000023ee: GAS 000023ef: STATICCALL 000023f0: ISZERO 000023f1: DUP1 000023f2: ISZERO 000023f3: PUSH2 0x2400 000023f6: JUMPI 000023f7: RETURNDATASIZE 000023f8: PUSH1 0x00 000023fa: DUP1 000023fb: RETURNDATACOPY 000023fc: RETURNDATASIZE 000023fd: PUSH1 0x00 000023ff: REVERT 00002400: JUMPDEST 00002401: POP 00002402: POP 00002403: POP 00002404: POP 00002405: PUSH1 0x40 00002407: MLOAD 00002408: RETURNDATASIZE 00002409: PUSH1 0x1f 0000240b: NOT 0000240c: PUSH1 0x1f 0000240e: DUP3 0000240f: ADD 00002410: AND 00002411: DUP3 00002412: ADD 00002413: DUP1 00002414: PUSH1 0x40 00002416: MSTORE 00002417: POP 00002418: DUP2 00002419: ADD 0000241a: SWAP1 0000241b: PUSH2 0x2424 0000241e: SWAP2 0000241f: SWAP1 00002420: PUSH2 0x4eb4 00002423: JUMP 00002424: JUMPDEST 00002425: LT 00002426: ISZERO 00002427: PUSH2 0x2472 0000242a: JUMPI 0000242b: PUSH1 0x40 0000242d: MLOAD 0000242e: PUSH3 0x461bcd 00002432: PUSH1 0xe5 00002434: SHL 00002435: DUP2 00002436: MSTORE 00002437: PUSH1 0x20 00002439: PUSH1 0x04 0000243b: DUP3 0000243c: ADD 0000243d: MSTORE 0000243e: PUSH1 0x18 00002440: PUSH1 0x24 00002442: DUP3 00002443: ADD 00002444: MSTORE 00002445: PUSH32 0x45524332302062616c616e6365206e6f7420656e6f7567680000000000000000 00002466: PUSH1 0x44 00002468: DUP3 00002469: ADD 0000246a: MSTORE 0000246b: PUSH1 0x64 0000246d: ADD 0000246e: PUSH2 0x0c37 00002471: JUMP 00002472: JUMPDEST 00002473: PUSH2 0x2486 00002476: PUSH1 0x01 00002478: PUSH1 0x01 0000247a: PUSH1 0xa0 0000247c: SHL 0000247d: SUB 0000247e: DUP3 0000247f: AND 00002480: CALLER 00002481: DUP6 00002482: PUSH2 0x3d64 00002485: JUMP 00002486: JUMPDEST 00002487: PUSH1 0x40 00002489: DUP1 0000248a: MLOAD 0000248b: CALLER 0000248c: DUP2 0000248d: MSTORE 0000248e: PUSH1 0x20 00002490: DUP2 00002491: ADD 00002492: DUP6 00002493: SWAP1 00002494: MSTORE 00002495: PUSH1 0x01 00002497: PUSH1 0x01 00002499: PUSH1 0xa0 0000249b: SHL 0000249c: SUB 0000249d: DUP7 0000249e: AND 0000249f: SWAP2 000024a0: PUSH32 0xa14466d832b5a1ff01be72c58e51196498a8e10751ab9c227fe73c4730dedc41 000024c1: SWAP2 000024c2: ADD 000024c3: JUMPDEST 000024c4: PUSH1 0x40 000024c6: MLOAD 000024c7: DUP1 000024c8: SWAP2 000024c9: SUB 000024ca: SWAP1 000024cb: LOG2 000024cc: POP 000024cd: POP 000024ce: PUSH2 0x0f48 000024d1: PUSH1 0x01 000024d3: PUSH1 0x97 000024d5: SSTORE 000024d6: JUMP 000024d7: JUMPDEST 000024d8: PUSH2 0x24df 000024db: PUSH2 0x39ee 000024de: JUMP 000024df: JUMPDEST 000024e0: PUSH2 0x24e7 000024e3: PUSH2 0x37d5 000024e6: JUMP 000024e7: JUMPDEST 000024e8: PUSH1 0x00 000024ea: DUP1 000024eb: MLOAD 000024ec: PUSH1 0x20 000024ee: PUSH2 0x5289 000024f1: DUP4 000024f2: CODECOPY 000024f3: DUP2 000024f4: MLOAD 000024f5: SWAP2 000024f6: MSTORE 000024f7: PUSH2 0x24ff 000024fa: DUP2 000024fb: PUSH2 0x3828 000024fe: JUMP 000024ff: JUMPDEST 00002500: PUSH1 0x01 00002502: PUSH1 0x01 00002504: PUSH1 0xa0 00002506: SHL 00002507: SUB 00002508: DUP5 00002509: AND 0000250a: PUSH2 0x254d 0000250d: JUMPI 0000250e: PUSH1 0x40 00002510: MLOAD 00002511: PUSH3 0x461bcd 00002515: PUSH1 0xe5 00002517: SHL 00002518: DUP2 00002519: MSTORE 0000251a: PUSH1 0x20 0000251c: PUSH1 0x04 0000251e: DUP3 0000251f: ADD 00002520: MSTORE 00002521: PUSH1 0x15 00002523: PUSH1 0x24 00002525: DUP3 00002526: ADD 00002527: MSTORE 00002528: PUSH21 0x5a65726f20636f6e74726163742061646472657373 0000253e: PUSH1 0x58 00002540: SHL 00002541: PUSH1 0x44 00002543: DUP3 00002544: ADD 00002545: MSTORE 00002546: PUSH1 0x64 00002548: ADD 00002549: PUSH2 0x0c37 0000254c: JUMP 0000254d: JUMPDEST 0000254e: PUSH1 0x40 00002550: MLOAD 00002551: PUSH3 0x7eeac7 00002555: PUSH1 0xe1 00002557: SHL 00002558: DUP2 00002559: MSTORE 0000255a: ADDRESS 0000255b: PUSH1 0x04 0000255d: DUP3 0000255e: ADD 0000255f: MSTORE 00002560: PUSH1 0x24 00002562: DUP2 00002563: ADD 00002564: DUP5 00002565: SWAP1 00002566: MSTORE 00002567: DUP5 00002568: SWAP1 00002569: DUP4 0000256a: SWAP1 0000256b: PUSH1 0x01 0000256d: PUSH1 0x01 0000256f: PUSH1 0xa0 00002571: SHL 00002572: SUB 00002573: DUP4 00002574: AND 00002575: SWAP1 00002576: PUSH3 0xfdd58e 0000257a: SWAP1 0000257b: PUSH1 0x44 0000257d: ADD 0000257e: PUSH1 0x20 00002580: PUSH1 0x40 00002582: MLOAD 00002583: DUP1 00002584: DUP4 00002585: SUB 00002586: DUP2 00002587: DUP7 00002588: GAS 00002589: STATICCALL 0000258a: ISZERO 0000258b: DUP1 0000258c: ISZERO 0000258d: PUSH2 0x259a 00002590: JUMPI 00002591: RETURNDATASIZE 00002592: PUSH1 0x00 00002594: DUP1 00002595: RETURNDATACOPY 00002596: RETURNDATASIZE 00002597: PUSH1 0x00 00002599: REVERT 0000259a: JUMPDEST 0000259b: POP 0000259c: POP 0000259d: POP 0000259e: POP 0000259f: PUSH1 0x40 000025a1: MLOAD 000025a2: RETURNDATASIZE 000025a3: PUSH1 0x1f 000025a5: NOT 000025a6: PUSH1 0x1f 000025a8: DUP3 000025a9: ADD 000025aa: AND 000025ab: DUP3 000025ac: ADD 000025ad: DUP1 000025ae: PUSH1 0x40 000025b0: MSTORE 000025b1: POP 000025b2: DUP2 000025b3: ADD 000025b4: SWAP1 000025b5: PUSH2 0x25be 000025b8: SWAP2 000025b9: SWAP1 000025ba: PUSH2 0x4eb4 000025bd: JUMP 000025be: JUMPDEST 000025bf: LT 000025c0: ISZERO 000025c1: PUSH2 0x260c 000025c4: JUMPI 000025c5: PUSH1 0x40 000025c7: MLOAD 000025c8: PUSH3 0x461bcd 000025cc: PUSH1 0xe5 000025ce: SHL 000025cf: DUP2 000025d0: MSTORE 000025d1: PUSH1 0x20 000025d3: PUSH1 0x04 000025d5: DUP3 000025d6: ADD 000025d7: DUP2 000025d8: SWAP1 000025d9: MSTORE 000025da: PUSH1 0x24 000025dc: DUP3 000025dd: ADD 000025de: MSTORE 000025df: PUSH32 0x5661756c7420646f6573206e6f74206861766520656e6f75676820746f6b656e 00002600: PUSH1 0x44 00002602: DUP3 00002603: ADD 00002604: MSTORE 00002605: PUSH1 0x64 00002607: ADD 00002608: PUSH2 0x0c37 0000260b: JUMP 0000260c: JUMPDEST 0000260d: PUSH1 0x40 0000260f: DUP1 00002610: MLOAD 00002611: PUSH1 0x20 00002613: DUP2 00002614: ADD 00002615: DUP3 00002616: MSTORE 00002617: PUSH1 0x00 00002619: DUP2 0000261a: MSTORE 0000261b: SWAP1 0000261c: MLOAD 0000261d: PUSH4 0x79212195 00002622: PUSH1 0xe1 00002624: SHL 00002625: DUP2 00002626: MSTORE 00002627: PUSH1 0x01 00002629: PUSH1 0x01 0000262b: PUSH1 0xa0 0000262d: SHL 0000262e: SUB 0000262f: DUP4 00002630: AND 00002631: SWAP2 00002632: PUSH4 0xf242432a 00002637: SWAP2 00002638: PUSH2 0x264c 0000263b: SWAP2 0000263c: ADDRESS 0000263d: SWAP2 0000263e: CALLER 0000263f: SWAP2 00002640: DUP11 00002641: SWAP2 00002642: DUP11 00002643: SWAP2 00002644: SWAP1 00002645: PUSH1 0x04 00002647: ADD 00002648: PUSH2 0x50e1 0000264b: JUMP 0000264c: JUMPDEST 0000264d: PUSH1 0x00 0000264f: PUSH1 0x40 00002651: MLOAD 00002652: DUP1 00002653: DUP4 00002654: SUB 00002655: DUP2 00002656: PUSH1 0x00 00002658: DUP8 00002659: DUP1 0000265a: EXTCODESIZE 0000265b: ISZERO 0000265c: DUP1 0000265d: ISZERO 0000265e: PUSH2 0x2666 00002661: JUMPI 00002662: PUSH1 0x00 00002664: DUP1 00002665: REVERT 00002666: JUMPDEST 00002667: POP 00002668: GAS 00002669: CALL 0000266a: ISZERO 0000266b: DUP1 0000266c: ISZERO 0000266d: PUSH2 0x267a 00002670: JUMPI 00002671: RETURNDATASIZE 00002672: PUSH1 0x00 00002674: DUP1 00002675: RETURNDATACOPY 00002676: RETURNDATASIZE 00002677: PUSH1 0x00 00002679: REVERT 0000267a: JUMPDEST 0000267b: POP 0000267c: POP 0000267d: POP 0000267e: POP 0000267f: DUP4 00002680: DUP6 00002681: PUSH1 0x01 00002683: PUSH1 0x01 00002685: PUSH1 0xa0 00002687: SHL 00002688: SUB 00002689: AND 0000268a: CALLER 0000268b: PUSH1 0x01 0000268d: PUSH1 0x01 0000268f: PUSH1 0xa0 00002691: SHL 00002692: SUB 00002693: AND 00002694: PUSH32 0x07394b3fad6920c344c25134bb6cf65ee1313a0296830f2043653661beb4136d 000026b5: DUP7 000026b6: PUSH1 0x40 000026b8: MLOAD 000026b9: PUSH2 0x26c4 000026bc: SWAP2 000026bd: DUP2 000026be: MSTORE 000026bf: PUSH1 0x20 000026c1: ADD 000026c2: SWAP1 000026c3: JUMP 000026c4: JUMPDEST 000026c5: PUSH1 0x40 000026c7: MLOAD 000026c8: DUP1 000026c9: SWAP2 000026ca: SUB 000026cb: SWAP1 000026cc: LOG4 000026cd: POP 000026ce: POP 000026cf: PUSH2 0x0ebb 000026d2: PUSH1 0x01 000026d4: PUSH1 0x97 000026d6: SSTORE 000026d7: JUMP 000026d8: JUMPDEST 000026d9: PUSH2 0x26e0 000026dc: PUSH2 0x39ee 000026df: JUMP 000026e0: JUMPDEST 000026e1: PUSH2 0x26e8 000026e4: PUSH2 0x37d5 000026e7: JUMP 000026e8: JUMPDEST 000026e9: PUSH32 0x507793b6688804c17fc033a24c049858152fd713503d8768de9c67313c5a3afd 0000270a: PUSH2 0x2712 0000270d: DUP2 0000270e: PUSH2 0x3828 00002711: JUMP 00002712: JUMPDEST 00002713: PUSH1 0x01 00002715: PUSH1 0x01 00002717: PUSH1 0xa0 00002719: SHL 0000271a: SUB 0000271b: DUP4 0000271c: AND 0000271d: PUSH2 0x2768 00002720: JUMPI 00002721: PUSH1 0x40 00002723: MLOAD 00002724: PUSH3 0x461bcd 00002728: PUSH1 0xe5 0000272a: SHL 0000272b: DUP2 0000272c: MSTORE 0000272d: PUSH1 0x20 0000272f: PUSH1 0x04 00002731: DUP3 00002732: ADD 00002733: MSTORE 00002734: PUSH1 0x19 00002736: PUSH1 0x24 00002738: DUP3 00002739: ADD 0000273a: MSTORE 0000273b: PUSH32 0x746f20616464726573732063616e6e6f74206265207a65726f00000000000000 0000275c: PUSH1 0x44 0000275e: DUP3 0000275f: ADD 00002760: MSTORE 00002761: PUSH1 0x64 00002763: ADD 00002764: PUSH2 0x0c37 00002767: JUMP 00002768: JUMPDEST 00002769: PUSH1 0x00 0000276b: PUSH2 0x2772 0000276e: PUSH2 0x0a6e 00002771: JUMP 00002772: JUMPDEST 00002773: SWAP1 00002774: POP 00002775: DUP1 00002776: DUP4 00002777: GT 00002778: ISZERO 00002779: PUSH2 0x27c4 0000277c: JUMPI 0000277d: PUSH1 0x40 0000277f: MLOAD 00002780: PUSH3 0x461bcd 00002784: PUSH1 0xe5 00002786: SHL 00002787: DUP2 00002788: MSTORE 00002789: PUSH1 0x20 0000278b: PUSH1 0x04 0000278d: DUP3 0000278e: ADD 0000278f: MSTORE 00002790: PUSH1 0x1f 00002792: PUSH1 0x24 00002794: DUP3 00002795: ADD 00002796: MSTORE 00002797: PUSH32 0x4e6f7420656e6f7567682062616c616e636520696e20746865205661756c7400 000027b8: PUSH1 0x44 000027ba: DUP3 000027bb: ADD 000027bc: MSTORE 000027bd: PUSH1 0x64 000027bf: ADD 000027c0: PUSH2 0x0c37 000027c3: JUMP 000027c4: JUMPDEST 000027c5: DUP3 000027c6: PUSH2 0x0134 000027c9: PUSH1 0x00 000027cb: DUP3 000027cc: DUP3 000027cd: SLOAD 000027ce: PUSH2 0x27d7 000027d1: SWAP2 000027d2: SWAP1 000027d3: PUSH2 0x4e38 000027d6: JUMP 000027d7: JUMPDEST 000027d8: SWAP3 000027d9: POP 000027da: POP 000027db: DUP2 000027dc: SWAP1 000027dd: SSTORE 000027de: POP 000027df: DUP3 000027e0: PUSH2 0x0133 000027e3: PUSH1 0x00 000027e5: DUP3 000027e6: DUP3 000027e7: SLOAD 000027e8: PUSH2 0x27f1 000027eb: SWAP2 000027ec: SWAP1 000027ed: PUSH2 0x4e84 000027f0: JUMP 000027f1: JUMPDEST 000027f2: SWAP1 000027f3: SWAP2 000027f4: SSTORE 000027f5: POP 000027f6: PUSH2 0x2801 000027f9: SWAP1 000027fa: POP 000027fb: DUP5 000027fc: DUP5 000027fd: PUSH2 0x3a47 00002800: JUMP 00002801: JUMPDEST 00002802: DUP4 00002803: PUSH1 0x01 00002805: PUSH1 0x01 00002807: PUSH1 0xa0 00002809: SHL 0000280a: SUB 0000280b: AND 0000280c: PUSH32 0x41b123d2493c7b2067b8b7f49cf71532523d83ead11494d793531ece1fd4d046 0000282d: DUP5 0000282e: PUSH1 0x40 00002830: MLOAD 00002831: PUSH2 0x24c3 00002834: SWAP2 00002835: DUP2 00002836: MSTORE 00002837: PUSH1 0x20 00002839: ADD 0000283a: SWAP1 0000283b: JUMP 0000283c: JUMPDEST 0000283d: PUSH2 0x2844 00002840: PUSH2 0x37d5 00002843: JUMP 00002844: JUMPDEST 00002845: PUSH1 0x00 00002847: DUP1 00002848: MLOAD 00002849: PUSH1 0x20 0000284b: PUSH2 0x5289 0000284e: DUP4 0000284f: CODECOPY 00002850: DUP2 00002851: MLOAD 00002852: SWAP2 00002853: MSTORE 00002854: PUSH2 0x285c 00002857: DUP2 00002858: PUSH2 0x3828 0000285b: JUMP 0000285c: JUMPDEST 0000285d: PUSH2 0x0138 00002860: SLOAD 00002861: PUSH1 0x01 00002863: PUSH1 0xa0 00002865: SHL 00002866: SWAP1 00002867: DIV 00002868: PUSH1 0xff 0000286a: AND 0000286b: ISZERO 0000286c: PUSH2 0x28bb 0000286f: JUMPI 00002870: CALLVALUE 00002871: ISZERO 00002872: PUSH2 0x28b6 00002875: JUMPI 00002876: PUSH1 0x40 00002878: MLOAD 00002879: PUSH3 0x461bcd 0000287d: PUSH1 0xe5 0000287f: SHL 00002880: DUP2 00002881: MSTORE 00002882: PUSH1 0x20 00002884: PUSH1 0x04 00002886: DUP3 00002887: ADD 00002888: MSTORE 00002889: PUSH1 0x16 0000288b: PUSH1 0x24 0000288d: DUP3 0000288e: ADD 0000288f: MSTORE 00002890: PUSH22 0x125b9d985b1a590819195c1bdcda5d08185b5bdd5b9d 000028a7: PUSH1 0x52 000028a9: SHL 000028aa: PUSH1 0x44 000028ac: DUP3 000028ad: ADD 000028ae: MSTORE 000028af: PUSH1 0x64 000028b1: ADD 000028b2: PUSH2 0x0c37 000028b5: JUMP 000028b6: JUMPDEST 000028b7: PUSH2 0x2903 000028ba: JUMP 000028bb: JUMPDEST 000028bc: DUP3 000028bd: CALLVALUE 000028be: EQ 000028bf: PUSH2 0x2903 000028c2: JUMPI 000028c3: PUSH1 0x40 000028c5: MLOAD 000028c6: PUSH3 0x461bcd 000028ca: PUSH1 0xe5 000028cc: SHL 000028cd: DUP2 000028ce: MSTORE 000028cf: PUSH1 0x20 000028d1: PUSH1 0x04 000028d3: DUP3 000028d4: ADD 000028d5: MSTORE 000028d6: PUSH1 0x16 000028d8: PUSH1 0x24 000028da: DUP3 000028db: ADD 000028dc: MSTORE 000028dd: PUSH22 0x125b9d985b1a590819195c1bdcda5d08185b5bdd5b9d 000028f4: PUSH1 0x52 000028f6: SHL 000028f7: PUSH1 0x44 000028f9: DUP3 000028fa: ADD 000028fb: MSTORE 000028fc: PUSH1 0x64 000028fe: ADD 000028ff: PUSH2 0x0c37 00002902: JUMP 00002903: JUMPDEST 00002904: PUSH2 0x0138 00002907: SLOAD 00002908: PUSH1 0x01 0000290a: PUSH1 0xa0 0000290c: SHL 0000290d: SWAP1 0000290e: DIV 0000290f: PUSH1 0xff 00002911: AND 00002912: ISZERO 00002913: PUSH2 0x292f 00002916: JUMPI 00002917: PUSH2 0x0138 0000291a: SLOAD 0000291b: PUSH2 0x292f 0000291e: SWAP1 0000291f: PUSH1 0x01 00002921: PUSH1 0x01 00002923: PUSH1 0xa0 00002925: SHL 00002926: SUB 00002927: AND 00002928: CALLER 00002929: ADDRESS 0000292a: DUP7 0000292b: PUSH2 0x3ca1 0000292e: JUMP 0000292f: JUMPDEST 00002930: DUP3 00002931: PUSH2 0x0133 00002934: PUSH1 0x00 00002936: DUP3 00002937: DUP3 00002938: SLOAD 00002939: PUSH2 0x2942 0000293c: SWAP2 0000293d: SWAP1 0000293e: PUSH2 0x4e38 00002941: JUMP 00002942: JUMPDEST 00002943: SWAP1 00002944: SWAP2 00002945: SSTORE 00002946: POP 00002947: POP 00002948: PUSH2 0x0135 0000294b: SLOAD 0000294c: PUSH1 0x40 0000294e: DUP1 0000294f: MLOAD 00002950: DUP6 00002951: DUP2 00002952: MSTORE 00002953: PUSH1 0x20 00002955: DUP2 00002956: ADD 00002957: DUP6 00002958: SWAP1 00002959: MSTORE 0000295a: DUP1 0000295b: DUP3 0000295c: ADD 0000295d: SWAP3 0000295e: SWAP1 0000295f: SWAP3 00002960: MSTORE 00002961: MLOAD 00002962: PUSH32 0x96e6bedbdb3caf466b6cdc33efaeacb3e7aabe7a4c7407eb7bbcfbc6bfe61bd7 00002983: SWAP2 00002984: DUP2 00002985: SWAP1 00002986: SUB 00002987: PUSH1 0x60 00002989: ADD 0000298a: SWAP1 0000298b: LOG1 0000298c: POP 0000298d: PUSH2 0x0135 00002990: SSTORE 00002991: POP 00002992: JUMP 00002993: JUMPDEST 00002994: PUSH2 0x299b 00002997: PUSH2 0x39ee 0000299a: JUMP 0000299b: JUMPDEST 0000299c: PUSH2 0x29a3 0000299f: PUSH2 0x37d5 000029a2: JUMP 000029a3: JUMPDEST 000029a4: PUSH1 0x00 000029a6: DUP2 000029a7: GT 000029a8: PUSH2 0x29f3 000029ab: JUMPI 000029ac: PUSH1 0x40 000029ae: MLOAD 000029af: PUSH3 0x461bcd 000029b3: PUSH1 0xe5 000029b5: SHL 000029b6: DUP2 000029b7: MSTORE 000029b8: PUSH1 0x20 000029ba: PUSH1 0x04 000029bc: DUP3 000029bd: ADD 000029be: MSTORE 000029bf: PUSH1 0x1b 000029c1: PUSH1 0x24 000029c3: DUP3 000029c4: ADD 000029c5: MSTORE 000029c6: PUSH32 0x4d757374206465706f736974206d6f7265207468616e207a65726f0000000000 000029e7: PUSH1 0x44 000029e9: DUP3 000029ea: ADD 000029eb: MSTORE 000029ec: PUSH1 0x64 000029ee: ADD 000029ef: PUSH2 0x0c37 000029f2: JUMP 000029f3: JUMPDEST 000029f4: PUSH2 0x0138 000029f7: SLOAD 000029f8: PUSH1 0x01 000029fa: PUSH1 0xa0 000029fc: SHL 000029fd: SWAP1 000029fe: DIV 000029ff: PUSH1 0xff 00002a01: AND 00002a02: ISZERO 00002a03: PUSH2 0x2a52 00002a06: JUMPI 00002a07: CALLVALUE 00002a08: ISZERO 00002a09: PUSH2 0x2a4d 00002a0c: JUMPI 00002a0d: PUSH1 0x40 00002a0f: MLOAD 00002a10: PUSH3 0x461bcd 00002a14: PUSH1 0xe5 00002a16: SHL 00002a17: DUP2 00002a18: MSTORE 00002a19: PUSH1 0x20 00002a1b: PUSH1 0x04 00002a1d: DUP3 00002a1e: ADD 00002a1f: MSTORE 00002a20: PUSH1 0x16 00002a22: PUSH1 0x24 00002a24: DUP3 00002a25: ADD 00002a26: MSTORE 00002a27: PUSH22 0x125b9d985b1a590819195c1bdcda5d08185b5bdd5b9d 00002a3e: PUSH1 0x52 00002a40: SHL 00002a41: PUSH1 0x44 00002a43: DUP3 00002a44: ADD 00002a45: MSTORE 00002a46: PUSH1 0x64 00002a48: ADD 00002a49: PUSH2 0x0c37 00002a4c: JUMP 00002a4d: JUMPDEST 00002a4e: PUSH2 0x2a9a 00002a51: JUMP 00002a52: JUMPDEST 00002a53: DUP1 00002a54: CALLVALUE 00002a55: EQ 00002a56: PUSH2 0x2a9a 00002a59: JUMPI 00002a5a: PUSH1 0x40 00002a5c: MLOAD 00002a5d: PUSH3 0x461bcd 00002a61: PUSH1 0xe5 00002a63: SHL 00002a64: DUP2 00002a65: MSTORE 00002a66: PUSH1 0x20 00002a68: PUSH1 0x04 00002a6a: DUP3 00002a6b: ADD 00002a6c: MSTORE 00002a6d: PUSH1 0x16 00002a6f: PUSH1 0x24 00002a71: DUP3 00002a72: ADD 00002a73: MSTORE 00002a74: PUSH22 0x125b9d985b1a590819195c1bdcda5d08185b5bdd5b9d 00002a8b: PUSH1 0x52 00002a8d: SHL 00002a8e: PUSH1 0x44 00002a90: DUP3 00002a91: ADD 00002a92: MSTORE 00002a93: PUSH1 0x64 00002a95: ADD 00002a96: PUSH2 0x0c37 00002a99: JUMP 00002a9a: JUMPDEST 00002a9b: PUSH2 0x0139 00002a9e: SLOAD 00002a9f: PUSH1 0x40 00002aa1: MLOAD 00002aa2: PUSH4 0x50355075 00002aa7: PUSH1 0xe1 00002aa9: SHL 00002aaa: DUP2 00002aab: MSTORE 00002aac: CALLER 00002aad: PUSH1 0x04 00002aaf: DUP3 00002ab0: ADD 00002ab1: MSTORE 00002ab2: PUSH1 0x00 00002ab4: SWAP2 00002ab5: PUSH1 0x01 00002ab7: PUSH1 0x01 00002ab9: PUSH1 0xa0 00002abb: SHL 00002abc: SUB 00002abd: AND 00002abe: SWAP1 00002abf: PUSH4 0xa06aa0ea 00002ac4: SWAP1 00002ac5: PUSH1 0x24 00002ac7: ADD 00002ac8: PUSH1 0x20 00002aca: PUSH1 0x40 00002acc: MLOAD 00002acd: DUP1 00002ace: DUP4 00002acf: SUB 00002ad0: DUP2 00002ad1: PUSH1 0x00 00002ad3: DUP8 00002ad4: GAS 00002ad5: CALL 00002ad6: ISZERO 00002ad7: DUP1 00002ad8: ISZERO 00002ad9: PUSH2 0x2ae6 00002adc: JUMPI 00002add: RETURNDATASIZE 00002ade: PUSH1 0x00 00002ae0: DUP1 00002ae1: RETURNDATACOPY 00002ae2: RETURNDATASIZE 00002ae3: PUSH1 0x00 00002ae5: REVERT 00002ae6: JUMPDEST 00002ae7: POP 00002ae8: POP 00002ae9: POP 00002aea: POP 00002aeb: PUSH1 0x40 00002aed: MLOAD 00002aee: RETURNDATASIZE 00002aef: PUSH1 0x1f 00002af1: NOT 00002af2: PUSH1 0x1f 00002af4: DUP3 00002af5: ADD 00002af6: AND 00002af7: DUP3 00002af8: ADD 00002af9: DUP1 00002afa: PUSH1 0x40 00002afc: MSTORE 00002afd: POP 00002afe: DUP2 00002aff: ADD 00002b00: SWAP1 00002b01: PUSH2 0x2b0a 00002b04: SWAP2 00002b05: SWAP1 00002b06: PUSH2 0x4ecd 00002b09: JUMP 00002b0a: JUMPDEST 00002b0b: SWAP1 00002b0c: POP 00002b0d: PUSH1 0x00 00002b0f: PUSH2 0x2710 00002b12: PUSH2 0x0132 00002b15: SLOAD 00002b16: DUP5 00002b17: PUSH2 0x2b20 00002b1a: SWAP2 00002b1b: SWAP1 00002b1c: PUSH2 0x4e4b 00002b1f: JUMP 00002b20: JUMPDEST 00002b21: PUSH2 0x2b2a 00002b24: SWAP2 00002b25: SWAP1 00002b26: PUSH2 0x4e62 00002b29: JUMP 00002b2a: JUMPDEST 00002b2b: SWAP1 00002b2c: POP 00002b2d: PUSH1 0x00 00002b2f: PUSH2 0x2b38 00002b32: DUP3 00002b33: DUP6 00002b34: PUSH2 0x4e84 00002b37: JUMP 00002b38: JUMPDEST 00002b39: SWAP1 00002b3a: POP 00002b3b: PUSH1 0x00 00002b3d: PUSH2 0x2b45 00002b40: DUP3 00002b41: PUSH2 0x33bc 00002b44: JUMP 00002b45: JUMPDEST 00002b46: PUSH2 0x0138 00002b49: SLOAD 00002b4a: SWAP1 00002b4b: SWAP2 00002b4c: POP 00002b4d: PUSH1 0x01 00002b4f: PUSH1 0xa0 00002b51: SHL 00002b52: SWAP1 00002b53: DIV 00002b54: PUSH1 0xff 00002b56: AND 00002b57: ISZERO 00002b58: PUSH2 0x2b74 00002b5b: JUMPI 00002b5c: PUSH2 0x0138 00002b5f: SLOAD 00002b60: PUSH2 0x2b74 00002b63: SWAP1 00002b64: PUSH1 0x01 00002b66: PUSH1 0x01 00002b68: PUSH1 0xa0 00002b6a: SHL 00002b6b: SUB 00002b6c: AND 00002b6d: CALLER 00002b6e: ADDRESS 00002b6f: DUP9 00002b70: PUSH2 0x3ca1 00002b73: JUMP 00002b74: JUMPDEST 00002b75: DUP2 00002b76: PUSH2 0x0133 00002b79: PUSH1 0x00 00002b7b: DUP3 00002b7c: DUP3 00002b7d: SLOAD 00002b7e: PUSH2 0x2b87 00002b81: SWAP2 00002b82: SWAP1 00002b83: PUSH2 0x4e38 00002b86: JUMP 00002b87: JUMPDEST 00002b88: SWAP3 00002b89: POP 00002b8a: POP 00002b8b: DUP2 00002b8c: SWAP1 00002b8d: SSTORE 00002b8e: POP 00002b8f: DUP3 00002b90: PUSH2 0x0136 00002b93: PUSH1 0x00 00002b95: DUP3 00002b96: DUP3 00002b97: SLOAD 00002b98: PUSH2 0x2ba1 00002b9b: SWAP2 00002b9c: SWAP1 00002b9d: PUSH2 0x4e38 00002ba0: JUMP 00002ba1: JUMPDEST 00002ba2: SWAP1 00002ba3: SWAP2 00002ba4: SSTORE 00002ba5: POP 00002ba6: POP 00002ba7: PUSH2 0x012e 00002baa: SLOAD 00002bab: PUSH1 0x40 00002bad: MLOAD 00002bae: PUSH4 0x40c10f19 00002bb3: PUSH1 0xe0 00002bb5: SHL 00002bb6: DUP2 00002bb7: MSTORE 00002bb8: PUSH1 0x01 00002bba: PUSH1 0x01 00002bbc: PUSH1 0xa0 00002bbe: SHL 00002bbf: SUB 00002bc0: DUP7 00002bc1: DUP2 00002bc2: AND 00002bc3: PUSH1 0x04 00002bc5: DUP4 00002bc6: ADD 00002bc7: MSTORE 00002bc8: PUSH1 0x24 00002bca: DUP3 00002bcb: ADD 00002bcc: DUP5 00002bcd: SWAP1 00002bce: MSTORE 00002bcf: SWAP1 00002bd0: SWAP2 00002bd1: AND 00002bd2: SWAP1 00002bd3: PUSH4 0x40c10f19 00002bd8: SWAP1 00002bd9: PUSH1 0x44 00002bdb: ADD 00002bdc: PUSH1 0x00 00002bde: PUSH1 0x40 00002be0: MLOAD 00002be1: DUP1 00002be2: DUP4 00002be3: SUB 00002be4: DUP2 00002be5: PUSH1 0x00 00002be7: DUP8 00002be8: DUP1 00002be9: EXTCODESIZE 00002bea: ISZERO 00002beb: DUP1 00002bec: ISZERO 00002bed: PUSH2 0x2bf5 00002bf0: JUMPI 00002bf1: PUSH1 0x00 00002bf3: DUP1 00002bf4: REVERT 00002bf5: JUMPDEST 00002bf6: POP 00002bf7: GAS 00002bf8: CALL 00002bf9: ISZERO 00002bfa: DUP1 00002bfb: ISZERO 00002bfc: PUSH2 0x2c09 00002bff: JUMPI 00002c00: RETURNDATASIZE 00002c01: PUSH1 0x00 00002c03: DUP1 00002c04: RETURNDATACOPY 00002c05: RETURNDATASIZE 00002c06: PUSH1 0x00 00002c08: REVERT 00002c09: JUMPDEST 00002c0a: POP 00002c0b: POP 00002c0c: POP 00002c0d: POP 00002c0e: PUSH2 0x013a 00002c11: SLOAD 00002c12: TIMESTAMP 00002c13: PUSH2 0x2c1c 00002c16: SWAP2 00002c17: SWAP1 00002c18: PUSH2 0x4e38 00002c1b: JUMP 00002c1c: JUMPDEST 00002c1d: PUSH1 0x01 00002c1f: PUSH1 0x01 00002c21: PUSH1 0xa0 00002c23: SHL 00002c24: SUB 00002c25: DUP6 00002c26: AND 00002c27: PUSH1 0x00 00002c29: SWAP1 00002c2a: DUP2 00002c2b: MSTORE 00002c2c: PUSH2 0x013b 00002c2f: PUSH1 0x20 00002c31: SWAP1 00002c32: DUP2 00002c33: MSTORE 00002c34: PUSH1 0x40 00002c36: SWAP2 00002c37: DUP3 00002c38: SWAP1 00002c39: KECCAK256 00002c3a: SWAP3 00002c3b: SWAP1 00002c3c: SWAP3 00002c3d: SSTORE 00002c3e: DUP1 00002c3f: MLOAD 00002c40: DUP5 00002c41: DUP2 00002c42: MSTORE 00002c43: SWAP2 00002c44: DUP3 00002c45: ADD 00002c46: DUP4 00002c47: SWAP1 00002c48: MSTORE 00002c49: CALLER 00002c4a: SWAP2 00002c4b: PUSH32 0x90890809c654f11d6e72a28fa60149770a0d11ec6c92319d6ceb2bb0a4ea1a15 00002c6c: SWAP2 00002c6d: ADD 00002c6e: PUSH1 0x40 00002c70: MLOAD 00002c71: DUP1 00002c72: SWAP2 00002c73: SUB 00002c74: SWAP1 00002c75: LOG2 00002c76: POP 00002c77: POP 00002c78: POP 00002c79: POP 00002c7a: PUSH2 0x0e93 00002c7d: PUSH1 0x01 00002c7f: PUSH1 0x97 00002c81: SSTORE 00002c82: JUMP 00002c83: JUMPDEST 00002c84: PUSH1 0x00 00002c86: PUSH2 0x2c8e 00002c89: DUP2 00002c8a: PUSH2 0x3828 00002c8d: JUMP 00002c8e: JUMPDEST 00002c8f: PUSH1 0xc8 00002c91: DUP3 00002c92: GT 00002c93: ISZERO 00002c94: PUSH2 0x2d05 00002c97: JUMPI 00002c98: PUSH1 0x40 00002c9a: MLOAD 00002c9b: PUSH3 0x461bcd 00002c9f: PUSH1 0xe5 00002ca1: SHL 00002ca2: DUP2 00002ca3: MSTORE 00002ca4: PUSH1 0x20 00002ca6: PUSH1 0x04 00002ca8: DUP3 00002ca9: ADD 00002caa: MSTORE 00002cab: PUSH1 0x36 00002cad: PUSH1 0x24 00002caf: DUP3 00002cb0: ADD 00002cb1: MSTORE 00002cb2: PUSH32 0x53657276696365206665652070657263656e74206d757374206e6f7420626520 00002cd3: PUSH1 0x44 00002cd5: DUP3 00002cd6: ADD 00002cd7: MSTORE 00002cd8: PUSH32 0x67726561746572207468616e20322070657263656e7400000000000000000000 00002cf9: PUSH1 0x64 00002cfb: DUP3 00002cfc: ADD 00002cfd: MSTORE 00002cfe: PUSH1 0x84 00002d00: ADD 00002d01: PUSH2 0x0c37 00002d04: JUMP 00002d05: JUMPDEST 00002d06: PUSH2 0x0132 00002d09: SLOAD 00002d0a: PUSH1 0x40 00002d0c: DUP1 00002d0d: MLOAD 00002d0e: SWAP2 00002d0f: DUP3 00002d10: MSTORE 00002d11: PUSH1 0x20 00002d13: DUP3 00002d14: ADD 00002d15: DUP5 00002d16: SWAP1 00002d17: MSTORE 00002d18: PUSH32 0x67ea558a1975802c885d7e38bc96ea4f925e1d5d86c8f53ad1a8387906297a90 00002d39: SWAP2 00002d3a: ADD 00002d3b: PUSH1 0x40 00002d3d: MLOAD 00002d3e: DUP1 00002d3f: SWAP2 00002d40: SUB 00002d41: SWAP1 00002d42: LOG1 00002d43: POP 00002d44: PUSH2 0x0132 00002d47: SSTORE 00002d48: JUMP 00002d49: JUMPDEST 00002d4a: PUSH1 0x00 00002d4c: DUP3 00002d4d: DUP2 00002d4e: MSTORE 00002d4f: PUSH1 0x65 00002d51: PUSH1 0x20 00002d53: MSTORE 00002d54: PUSH1 0x40 00002d56: SWAP1 00002d57: KECCAK256 00002d58: PUSH1 0x01 00002d5a: ADD 00002d5b: SLOAD 00002d5c: PUSH2 0x2d64 00002d5f: DUP2 00002d60: PUSH2 0x3828 00002d63: JUMP 00002d64: JUMPDEST 00002d65: PUSH2 0x0ebb 00002d68: DUP4 00002d69: DUP4 00002d6a: PUSH2 0x3bcc 00002d6d: JUMP 00002d6e: JUMPDEST 00002d6f: PUSH1 0x00 00002d71: SLOAD 00002d72: PUSH1 0x03 00002d74: SWAP1 00002d75: PUSH2 0x0100 00002d78: SWAP1 00002d79: DIV 00002d7a: PUSH1 0xff 00002d7c: AND 00002d7d: ISZERO 00002d7e: DUP1 00002d7f: ISZERO 00002d80: PUSH2 0x2d90 00002d83: JUMPI 00002d84: POP 00002d85: PUSH1 0x00 00002d87: SLOAD 00002d88: PUSH1 0xff 00002d8a: DUP1 00002d8b: DUP4 00002d8c: AND 00002d8d: SWAP2 00002d8e: AND 00002d8f: LT 00002d90: JUMPDEST 00002d91: PUSH2 0x2e02 00002d94: JUMPI 00002d95: PUSH1 0x40 00002d97: MLOAD 00002d98: PUSH3 0x461bcd 00002d9c: PUSH1 0xe5 00002d9e: SHL 00002d9f: DUP2 00002da0: MSTORE 00002da1: PUSH1 0x20 00002da3: PUSH1 0x04 00002da5: DUP3 00002da6: ADD 00002da7: MSTORE 00002da8: PUSH1 0x2e 00002daa: PUSH1 0x24 00002dac: DUP3 00002dad: ADD 00002dae: MSTORE 00002daf: PUSH32 0x496e697469616c697a61626c653a20636f6e747261637420697320616c726561 00002dd0: PUSH1 0x44 00002dd2: DUP3 00002dd3: ADD 00002dd4: MSTORE 00002dd5: PUSH32 0x647920696e697469616c697a6564000000000000000000000000000000000000 00002df6: PUSH1 0x64 00002df8: DUP3 00002df9: ADD 00002dfa: MSTORE 00002dfb: PUSH1 0x84 00002dfd: ADD 00002dfe: PUSH2 0x0c37 00002e01: JUMP 00002e02: JUMPDEST 00002e03: PUSH1 0x00 00002e05: DUP1 00002e06: SLOAD 00002e07: PUSH2 0xffff 00002e0a: NOT 00002e0b: AND 00002e0c: PUSH1 0xff 00002e0e: DUP4 00002e0f: AND 00002e10: OR 00002e11: PUSH2 0x0100 00002e14: OR 00002e15: SWAP1 00002e16: SSTORE 00002e17: PUSH2 0x012d 00002e1a: SLOAD 00002e1b: PUSH1 0x01 00002e1d: PUSH1 0x01 00002e1f: PUSH1 0xa0 00002e21: SHL 00002e22: SUB 00002e23: AND 00002e24: PUSH2 0x3257 00002e27: JUMPI 00002e28: PUSH1 0x01 00002e2a: PUSH1 0x01 00002e2c: PUSH1 0xa0 00002e2e: SHL 00002e2f: SUB 00002e30: DUP11 00002e31: AND 00002e32: PUSH2 0x2e8d 00002e35: JUMPI 00002e36: PUSH1 0x40 00002e38: MLOAD 00002e39: PUSH3 0x461bcd 00002e3d: PUSH1 0xe5 00002e3f: SHL 00002e40: DUP2 00002e41: MSTORE 00002e42: PUSH1 0x20 00002e44: PUSH1 0x04 00002e46: DUP3 00002e47: ADD 00002e48: MSTORE 00002e49: PUSH1 0x27 00002e4b: PUSH1 0x24 00002e4d: DUP3 00002e4e: ADD 00002e4f: MSTORE 00002e50: PUSH32 0x4379616e205661756c7420546f6b656e20616464726573732063616e6e6f7420 00002e71: PUSH1 0x44 00002e73: DUP3 00002e74: ADD 00002e75: MSTORE 00002e76: PUSH7 0x6265207a65726f 00002e7e: PUSH1 0xc8 00002e80: SHL 00002e81: PUSH1 0x64 00002e83: DUP3 00002e84: ADD 00002e85: MSTORE 00002e86: PUSH1 0x84 00002e88: ADD 00002e89: PUSH2 0x0c37 00002e8c: JUMP 00002e8d: JUMPDEST 00002e8e: PUSH1 0x01 00002e90: PUSH1 0x01 00002e92: PUSH1 0xa0 00002e94: SHL 00002e95: SUB 00002e96: DUP9 00002e97: AND 00002e98: PUSH2 0x2ef4 00002e9b: JUMPI 00002e9c: PUSH1 0x40 00002e9e: MLOAD 00002e9f: PUSH3 0x461bcd 00002ea3: PUSH1 0xe5 00002ea5: SHL 00002ea6: DUP2 00002ea7: MSTORE 00002ea8: PUSH1 0x20 00002eaa: PUSH1 0x04 00002eac: DUP3 00002ead: ADD 00002eae: MSTORE 00002eaf: PUSH1 0x28 00002eb1: PUSH1 0x24 00002eb3: DUP3 00002eb4: ADD 00002eb5: MSTORE 00002eb6: PUSH32 0x4379616e205061796d656e7420506c616e20616464726573732063616e6e6f74 00002ed7: PUSH1 0x44 00002ed9: DUP3 00002eda: ADD 00002edb: MSTORE 00002edc: PUSH8 0x206265207a65726f 00002ee5: PUSH1 0xc0 00002ee7: SHL 00002ee8: PUSH1 0x64 00002eea: DUP3 00002eeb: ADD 00002eec: MSTORE 00002eed: PUSH1 0x84 00002eef: ADD 00002ef0: PUSH2 0x0c37 00002ef3: JUMP 00002ef4: JUMPDEST 00002ef5: PUSH1 0x01 00002ef7: PUSH1 0x01 00002ef9: PUSH1 0xa0 00002efb: SHL 00002efc: SUB 00002efd: DUP8 00002efe: AND 00002eff: PUSH2 0x2f5a 00002f02: JUMPI 00002f03: PUSH1 0x40 00002f05: MLOAD 00002f06: PUSH3 0x461bcd 00002f0a: PUSH1 0xe5 00002f0c: SHL 00002f0d: DUP2 00002f0e: MSTORE 00002f0f: PUSH1 0x20 00002f11: PUSH1 0x04 00002f13: DUP3 00002f14: ADD 00002f15: MSTORE 00002f16: PUSH1 0x27 00002f18: PUSH1 0x24 00002f1a: DUP3 00002f1b: ADD 00002f1c: MSTORE 00002f1d: PUSH32 0x4379616e2053757065722041646d696e20616464726573732063616e6e6f7420 00002f3e: PUSH1 0x44 00002f40: DUP3 00002f41: ADD 00002f42: MSTORE 00002f43: PUSH7 0x6265207a65726f 00002f4b: PUSH1 0xc8 00002f4d: SHL 00002f4e: PUSH1 0x64 00002f50: DUP3 00002f51: ADD 00002f52: MSTORE 00002f53: PUSH1 0x84 00002f55: ADD 00002f56: PUSH2 0x0c37 00002f59: JUMP 00002f5a: JUMPDEST 00002f5b: PUSH2 0x2710 00002f5e: DUP6 00002f5f: GT 00002f60: ISZERO 00002f61: PUSH2 0x2fd2 00002f64: JUMPI 00002f65: PUSH1 0x40 00002f67: MLOAD 00002f68: PUSH3 0x461bcd 00002f6c: PUSH1 0xe5 00002f6e: SHL 00002f6f: DUP2 00002f70: MSTORE 00002f71: PUSH1 0x20 00002f73: PUSH1 0x04 00002f75: DUP3 00002f76: ADD 00002f77: MSTORE 00002f78: PUSH1 0x3a 00002f7a: PUSH1 0x24 00002f7c: DUP3 00002f7d: ADD 00002f7e: MSTORE 00002f7f: PUSH32 0x5361666574792066756e642070657263656e74206d7573742062652065717561 00002fa0: PUSH1 0x44 00002fa2: DUP3 00002fa3: ADD 00002fa4: MSTORE 00002fa5: PUSH32 0x6c206f72206c657373207468616e203130302070657263656e74000000000000 00002fc6: PUSH1 0x64 00002fc8: DUP3 00002fc9: ADD 00002fca: MSTORE 00002fcb: PUSH1 0x84 00002fcd: ADD 00002fce: PUSH2 0x0c37 00002fd1: JUMP 00002fd2: JUMPDEST 00002fd3: PUSH1 0xc8 00002fd5: DUP5 00002fd6: GT 00002fd7: ISZERO 00002fd8: PUSH2 0x3049 00002fdb: JUMPI 00002fdc: PUSH1 0x40 00002fde: MLOAD 00002fdf: PUSH3 0x461bcd 00002fe3: PUSH1 0xe5 00002fe5: SHL 00002fe6: DUP2 00002fe7: MSTORE 00002fe8: PUSH1 0x20 00002fea: PUSH1 0x04 00002fec: DUP3 00002fed: ADD 00002fee: MSTORE 00002fef: PUSH1 0x36 00002ff1: PUSH1 0x24 00002ff3: DUP3 00002ff4: ADD 00002ff5: MSTORE 00002ff6: PUSH32 0x53657276696365206665652070657263656e74206d757374206e6f7420626520 00003017: PUSH1 0x44 00003019: DUP3 0000301a: ADD 0000301b: MSTORE 0000301c: PUSH32 0x67726561746572207468616e20322070657263656e7400000000000000000000 0000303d: PUSH1 0x64 0000303f: DUP3 00003040: ADD 00003041: MSTORE 00003042: PUSH1 0x84 00003044: ADD 00003045: PUSH2 0x0c37 00003048: JUMP 00003049: JUMPDEST 0000304a: PUSH1 0x01 0000304c: PUSH1 0x01 0000304e: PUSH1 0xa0 00003050: SHL 00003051: SUB 00003052: DUP7 00003053: AND 00003054: PUSH2 0x309f 00003057: JUMPI 00003058: PUSH1 0x40 0000305a: MLOAD 0000305b: PUSH3 0x461bcd 0000305f: PUSH1 0xe5 00003061: SHL 00003062: DUP2 00003063: MSTORE 00003064: PUSH1 0x20 00003066: PUSH1 0x04 00003068: DUP3 00003069: ADD 0000306a: MSTORE 0000306b: PUSH1 0x1e 0000306d: PUSH1 0x24 0000306f: DUP3 00003070: ADD 00003071: MSTORE 00003072: PUSH32 0x466163746f727920616464726573732063616e6e6f74206265207a65726f0000 00003093: PUSH1 0x44 00003095: DUP3 00003096: ADD 00003097: MSTORE 00003098: PUSH1 0x64 0000309a: ADD 0000309b: PUSH2 0x0c37 0000309e: JUMP 0000309f: JUMPDEST 000030a0: PUSH2 0x30a7 000030a3: PUSH2 0x3d94 000030a6: JUMP 000030a7: JUMPDEST 000030a8: PUSH2 0x30af 000030ab: PUSH2 0x3dbb 000030ae: JUMP 000030af: JUMPDEST 000030b0: PUSH2 0x30b7 000030b3: PUSH2 0x3d94 000030b6: JUMP 000030b7: JUMPDEST 000030b8: PUSH2 0x30bf 000030bb: PUSH2 0x3dea 000030be: JUMP 000030bf: JUMPDEST 000030c0: PUSH2 0x012d 000030c3: DUP1 000030c4: SLOAD 000030c5: PUSH1 0x01 000030c7: PUSH1 0x01 000030c9: PUSH1 0xa0 000030cb: SHL 000030cc: SUB 000030cd: DUP1 000030ce: DUP14 000030cf: AND 000030d0: PUSH1 0x01 000030d2: PUSH1 0x01 000030d4: PUSH1 0xa0 000030d6: SHL 000030d7: SUB 000030d8: NOT 000030d9: SWAP3 000030da: DUP4 000030db: AND 000030dc: DUP2 000030dd: OR 000030de: SWAP1 000030df: SWAP4 000030e0: SSTORE 000030e1: PUSH2 0x012e 000030e4: DUP1 000030e5: SLOAD 000030e6: DUP4 000030e7: AND 000030e8: SWAP1 000030e9: SWAP4 000030ea: OR 000030eb: SWAP1 000030ec: SWAP3 000030ed: SSTORE 000030ee: PUSH2 0x0137 000030f1: DUP1 000030f2: SLOAD 000030f3: SWAP3 000030f4: DUP13 000030f5: AND 000030f6: SWAP3 000030f7: SWAP1 000030f8: SWAP2 000030f9: AND 000030fa: DUP3 000030fb: OR 000030fc: SWAP1 000030fd: SSTORE 000030fe: ISZERO 000030ff: PUSH2 0x3137 00003102: JUMPI 00003103: PUSH2 0x0138 00003106: DUP1 00003107: SLOAD 00003108: PUSH21 0xffffffffffffffffffffffffffffffffffffffffff 0000311e: NOT 0000311f: AND 00003120: PUSH1 0x01 00003122: PUSH1 0x01 00003124: PUSH1 0xa0 00003126: SHL 00003127: SUB 00003128: DUP12 00003129: AND 0000312a: OR 0000312b: PUSH1 0x01 0000312d: PUSH1 0xa0 0000312f: SHL 00003130: OR 00003131: SWAP1 00003132: SSTORE 00003133: PUSH2 0x3146 00003136: JUMP 00003137: JUMPDEST 00003138: PUSH2 0x0138 0000313b: DUP1 0000313c: SLOAD 0000313d: PUSH1 0xff 0000313f: PUSH1 0xa0 00003141: SHL 00003142: NOT 00003143: AND 00003144: SWAP1 00003145: SSTORE 00003146: JUMPDEST 00003147: PUSH2 0x0131 0000314a: DUP6 0000314b: SWAP1 0000314c: SSTORE 0000314d: PUSH2 0x0132 00003150: DUP5 00003151: SWAP1 00003152: SSTORE 00003153: PUSH1 0x00 00003155: PUSH2 0x0134 00003158: DUP2 00003159: SWAP1 0000315a: SSTORE 0000315b: PUSH2 0x0135 0000315e: DUP2 0000315f: SWAP1 00003160: SSTORE 00003161: PUSH2 0x0133 00003164: DUP2 00003165: SWAP1 00003166: SSTORE 00003167: PUSH2 0x3170 0000316a: SWAP1 0000316b: DUP9 0000316c: PUSH2 0x3e19 0000316f: JUMP 00003170: JUMPDEST 00003171: PUSH2 0x319a 00003174: PUSH32 0x507793b6688804c17fc033a24c049858152fd713503d8768de9c67313c5a3afd 00003195: DUP10 00003196: PUSH2 0x3e19 00003199: JUMP 0000319a: JUMPDEST 0000319b: PUSH2 0x0139 0000319e: DUP1 0000319f: SLOAD 000031a0: PUSH1 0x01 000031a2: PUSH1 0x01 000031a4: PUSH1 0xa0 000031a6: SHL 000031a7: SUB 000031a8: NOT 000031a9: AND 000031aa: PUSH1 0x01 000031ac: PUSH1 0x01 000031ae: PUSH1 0xa0 000031b0: SHL 000031b1: SUB 000031b2: DUP9 000031b3: AND 000031b4: OR 000031b5: SWAP1 000031b6: SSTORE 000031b7: PUSH2 0x013a 000031ba: DUP4 000031bb: SWAP1 000031bc: SSTORE 000031bd: PUSH1 0x40 000031bf: MLOAD 000031c0: DUP5 000031c1: DUP2 000031c2: MSTORE 000031c3: PUSH32 0x9946eeb5f4ca76305e83426173176fffd327e46ff4ac0e853f1806a8a6accb87 000031e4: SWAP1 000031e5: PUSH1 0x20 000031e7: ADD 000031e8: PUSH1 0x40 000031ea: MLOAD 000031eb: DUP1 000031ec: SWAP2 000031ed: SUB 000031ee: SWAP1 000031ef: LOG1 000031f0: PUSH1 0x40 000031f2: MLOAD 000031f3: DUP6 000031f4: DUP2 000031f5: MSTORE 000031f6: PUSH32 0x183d0700d6a3fbe1d9843804c26a1fad21802c73c8976b4945f947600230b267 00003217: SWAP1 00003218: PUSH1 0x20 0000321a: ADD 0000321b: PUSH1 0x40 0000321d: MLOAD 0000321e: DUP1 0000321f: SWAP2 00003220: SUB 00003221: SWAP1 00003222: LOG1 00003223: PUSH1 0x40 00003225: MLOAD 00003226: PUSH1 0x01 00003228: PUSH1 0x01 0000322a: PUSH1 0xa0 0000322c: SHL 0000322d: SUB 0000322e: DUP8 0000322f: AND 00003230: SWAP1 00003231: PUSH32 0xe62d9ecc2f46536d69df8cf1ba196250488dc869eadabc42466d72ee898716ce 00003252: SWAP1 00003253: PUSH1 0x00 00003255: SWAP1 00003256: LOG2 00003257: JUMPDEST 00003258: PUSH1 0x01 0000325a: PUSH1 0x01 0000325c: PUSH1 0xa0 0000325e: SHL 0000325f: SUB 00003260: DUP3 00003261: AND 00003262: PUSH2 0x32ad 00003265: JUMPI 00003266: PUSH1 0x40 00003268: MLOAD 00003269: PUSH3 0x461bcd 0000326d: PUSH1 0xe5 0000326f: SHL 00003270: DUP2 00003271: MSTORE 00003272: PUSH1 0x20 00003274: PUSH1 0x04 00003276: DUP3 00003277: ADD 00003278: MSTORE 00003279: PUSH1 0x1d 0000327b: PUSH1 0x24 0000327d: DUP3 0000327e: ADD 0000327f: MSTORE 00003280: PUSH32 0x5369676e657220616464726573732063616e6e6f74206265207a65726f000000 000032a1: PUSH1 0x44 000032a3: DUP3 000032a4: ADD 000032a5: MSTORE 000032a6: PUSH1 0x64 000032a8: ADD 000032a9: PUSH2 0x0c37 000032ac: JUMP 000032ad: JUMPDEST 000032ae: PUSH2 0x013c 000032b1: DUP1 000032b2: SLOAD 000032b3: PUSH21 0xffffffffffffffffffffffffffffffffffffffff00 000032c9: NOT 000032ca: AND 000032cb: PUSH2 0x0100 000032ce: PUSH1 0x01 000032d0: PUSH1 0x01 000032d2: PUSH1 0xa0 000032d4: SHL 000032d5: SUB 000032d6: DUP6 000032d7: AND 000032d8: SWAP1 000032d9: DUP2 000032da: MUL 000032db: SWAP2 000032dc: SWAP1 000032dd: SWAP2 000032de: OR 000032df: SWAP1 000032e0: SWAP2 000032e1: SSTORE 000032e2: PUSH1 0x40 000032e4: MLOAD 000032e5: PUSH32 0xb600274ef5d11bda880beece19f867f60804daa64e9abecaf8f54ba2d2a73c11 00003306: SWAP1 00003307: PUSH1 0x00 00003309: SWAP1 0000330a: LOG2 0000330b: PUSH1 0x00 0000330d: DUP1 0000330e: SLOAD 0000330f: PUSH2 0xff00 00003312: NOT 00003313: AND 00003314: SWAP1 00003315: SSTORE 00003316: PUSH1 0x40 00003318: MLOAD 00003319: PUSH1 0xff 0000331b: DUP3 0000331c: AND 0000331d: DUP2 0000331e: MSTORE 0000331f: PUSH32 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498 00003340: SWAP1 00003341: PUSH1 0x20 00003343: ADD 00003344: PUSH1 0x40 00003346: MLOAD 00003347: DUP1 00003348: SWAP2 00003349: SUB 0000334a: SWAP1 0000334b: LOG1 0000334c: POP 0000334d: POP 0000334e: POP 0000334f: POP 00003350: POP 00003351: POP 00003352: POP 00003353: POP 00003354: POP 00003355: POP 00003356: JUMP 00003357: JUMPDEST 00003358: PUSH2 0x335f 0000335b: PUSH2 0x37d5 0000335e: JUMP 0000335f: JUMPDEST 00003360: PUSH1 0x00 00003362: DUP1 00003363: MLOAD 00003364: PUSH1 0x20 00003366: PUSH2 0x5289 00003369: DUP4 0000336a: CODECOPY 0000336b: DUP2 0000336c: MLOAD 0000336d: SWAP2 0000336e: MSTORE 0000336f: PUSH2 0x3377 00003372: DUP2 00003373: PUSH2 0x3828 00003376: JUMP 00003377: JUMPDEST 00003378: PUSH2 0x0135 0000337b: SLOAD 0000337c: PUSH1 0x40 0000337e: DUP1 0000337f: MLOAD 00003380: DUP5 00003381: DUP2 00003382: MSTORE 00003383: PUSH1 0x20 00003385: DUP2 00003386: ADD 00003387: SWAP3 00003388: SWAP1 00003389: SWAP3 0000338a: MSTORE 0000338b: PUSH32 0x7225a18e2ba86dcc138ac0b9f071bb3b96001da5a09fd2633472545f7eeec4c0 000033ac: SWAP2 000033ad: ADD 000033ae: PUSH1 0x40 000033b0: MLOAD 000033b1: DUP1 000033b2: SWAP2 000033b3: SUB 000033b4: SWAP1 000033b5: LOG1 000033b6: POP 000033b7: PUSH2 0x0135 000033ba: SSTORE 000033bb: JUMP 000033bc: JUMPDEST 000033bd: PUSH1 0x00 000033bf: DUP1 000033c0: PUSH1 0x00 000033c2: PUSH2 0x33c9 000033c5: PUSH2 0x3e23 000033c8: JUMP 000033c9: JUMPDEST 000033ca: SWAP2 000033cb: POP 000033cc: SWAP2 000033cd: POP 000033ce: DUP2 000033cf: PUSH1 0x00 000033d1: SUB 000033d2: PUSH2 0x33dd 000033d5: JUMPI 000033d6: POP 000033d7: SWAP2 000033d8: SWAP3 000033d9: SWAP2 000033da: POP 000033db: POP 000033dc: JUMP 000033dd: JUMPDEST 000033de: DUP2 000033df: PUSH2 0x33e8 000033e2: DUP3 000033e3: DUP7 000033e4: PUSH2 0x4e4b 000033e7: JUMP 000033e8: JUMPDEST 000033e9: PUSH2 0x0ad1 000033ec: SWAP2 000033ed: SWAP1 000033ee: PUSH2 0x4e62 000033f1: JUMP 000033f2: JUMPDEST 000033f3: PUSH2 0x33fa 000033f6: PUSH2 0x39ee 000033f9: JUMP 000033fa: JUMPDEST 000033fb: PUSH2 0x3402 000033fe: PUSH2 0x37d5 00003401: JUMP 00003402: JUMPDEST 00003403: PUSH1 0x00 00003405: DUP1 00003406: MLOAD 00003407: PUSH1 0x20 00003409: PUSH2 0x5289 0000340c: DUP4 0000340d: CODECOPY 0000340e: DUP2 0000340f: MLOAD 00003410: SWAP2 00003411: MSTORE 00003412: PUSH2 0x341a 00003415: DUP2 00003416: PUSH2 0x3828 00003419: JUMP 0000341a: JUMPDEST 0000341b: PUSH1 0x01 0000341d: PUSH1 0x01 0000341f: PUSH1 0xa0 00003421: SHL 00003422: SUB 00003423: DUP4 00003424: AND 00003425: PUSH2 0x3468 00003428: JUMPI 00003429: PUSH1 0x40 0000342b: MLOAD 0000342c: PUSH3 0x461bcd 00003430: PUSH1 0xe5 00003432: SHL 00003433: DUP2 00003434: MSTORE 00003435: PUSH1 0x20 00003437: PUSH1 0x04 00003439: DUP3 0000343a: ADD 0000343b: MSTORE 0000343c: PUSH1 0x15 0000343e: PUSH1 0x24 00003440: DUP3 00003441: ADD 00003442: MSTORE 00003443: PUSH21 0x5a65726f20636f6e74726163742061646472657373 00003459: PUSH1 0x58 0000345b: SHL 0000345c: PUSH1 0x44 0000345e: DUP3 0000345f: ADD 00003460: MSTORE 00003461: PUSH1 0x64 00003463: ADD 00003464: PUSH2 0x0c37 00003467: JUMP 00003468: JUMPDEST 00003469: PUSH1 0x40 0000346b: MLOAD 0000346c: PUSH4 0x31a9108f 00003471: PUSH1 0xe1 00003473: SHL 00003474: DUP2 00003475: MSTORE 00003476: PUSH1 0x04 00003478: DUP2 00003479: ADD 0000347a: DUP4 0000347b: SWAP1 0000347c: MSTORE 0000347d: DUP4 0000347e: SWAP1 0000347f: ADDRESS 00003480: SWAP1 00003481: PUSH1 0x01 00003483: PUSH1 0x01 00003485: PUSH1 0xa0 00003487: SHL 00003488: SUB 00003489: DUP4 0000348a: AND 0000348b: SWAP1 0000348c: PUSH4 0x6352211e 00003491: SWAP1 00003492: PUSH1 0x24 00003494: ADD 00003495: PUSH1 0x20 00003497: PUSH1 0x40 00003499: MLOAD 0000349a: DUP1 0000349b: DUP4 0000349c: SUB 0000349d: DUP2 0000349e: DUP7 0000349f: GAS 000034a0: STATICCALL 000034a1: ISZERO 000034a2: DUP1 000034a3: ISZERO 000034a4: PUSH2 0x34b1 000034a7: JUMPI 000034a8: RETURNDATASIZE 000034a9: PUSH1 0x00 000034ab: DUP1 000034ac: RETURNDATACOPY 000034ad: RETURNDATASIZE 000034ae: PUSH1 0x00 000034b0: REVERT 000034b1: JUMPDEST 000034b2: POP 000034b3: POP 000034b4: POP 000034b5: POP 000034b6: PUSH1 0x40 000034b8: MLOAD 000034b9: RETURNDATASIZE 000034ba: PUSH1 0x1f 000034bc: NOT 000034bd: PUSH1 0x1f 000034bf: DUP3 000034c0: ADD 000034c1: AND 000034c2: DUP3 000034c3: ADD 000034c4: DUP1 000034c5: PUSH1 0x40 000034c7: MSTORE 000034c8: POP 000034c9: DUP2 000034ca: ADD 000034cb: SWAP1 000034cc: PUSH2 0x34d5 000034cf: SWAP2 000034d0: SWAP1 000034d1: PUSH2 0x4ecd 000034d4: JUMP 000034d5: JUMPDEST 000034d6: PUSH1 0x01 000034d8: PUSH1 0x01 000034da: PUSH1 0xa0 000034dc: SHL 000034dd: SUB 000034de: AND 000034df: EQ 000034e0: PUSH2 0x3537 000034e3: JUMPI 000034e4: PUSH1 0x40 000034e6: MLOAD 000034e7: PUSH3 0x461bcd 000034eb: PUSH1 0xe5 000034ed: SHL 000034ee: DUP2 000034ef: MSTORE 000034f0: PUSH1 0x20 000034f2: PUSH1 0x04 000034f4: DUP3 000034f5: ADD 000034f6: MSTORE 000034f7: PUSH1 0x23 000034f9: PUSH1 0x24 000034fb: DUP3 000034fc: ADD 000034fd: MSTORE 000034fe: PUSH32 0x5661756c74206973206e6f7420746865206f776e6572206f662074686520746f 0000351f: PUSH1 0x44 00003521: DUP3 00003522: ADD 00003523: MSTORE 00003524: PUSH3 0x35b2b7 00003528: PUSH1 0xe9 0000352a: SHL 0000352b: PUSH1 0x64 0000352d: DUP3 0000352e: ADD 0000352f: MSTORE 00003530: PUSH1 0x84 00003532: ADD 00003533: PUSH2 0x0c37 00003536: JUMP 00003537: JUMPDEST 00003538: PUSH1 0x40 0000353a: MLOAD 0000353b: PUSH4 0x21421707 00003540: PUSH1 0xe1 00003542: SHL 00003543: DUP2 00003544: MSTORE 00003545: ADDRESS 00003546: PUSH1 0x04 00003548: DUP3 00003549: ADD 0000354a: MSTORE 0000354b: CALLER 0000354c: PUSH1 0x24 0000354e: DUP3 0000354f: ADD 00003550: MSTORE 00003551: PUSH1 0x44 00003553: DUP2 00003554: ADD 00003555: DUP5 00003556: SWAP1 00003557: MSTORE 00003558: PUSH1 0x01 0000355a: PUSH1 0x01 0000355c: PUSH1 0xa0 0000355e: SHL 0000355f: SUB 00003560: DUP3 00003561: AND 00003562: SWAP1 00003563: PUSH4 0x42842e0e 00003568: SWAP1 00003569: PUSH1 0x64 0000356b: ADD 0000356c: PUSH1 0x00 0000356e: PUSH1 0x40 00003570: MLOAD 00003571: DUP1 00003572: DUP4 00003573: SUB 00003574: DUP2 00003575: PUSH1 0x00 00003577: DUP8 00003578: DUP1 00003579: EXTCODESIZE 0000357a: ISZERO 0000357b: DUP1 0000357c: ISZERO 0000357d: PUSH2 0x3585 00003580: JUMPI 00003581: PUSH1 0x00 00003583: DUP1 00003584: REVERT 00003585: JUMPDEST 00003586: POP 00003587: GAS 00003588: CALL 00003589: ISZERO 0000358a: DUP1 0000358b: ISZERO 0000358c: PUSH2 0x3599 0000358f: JUMPI 00003590: RETURNDATASIZE 00003591: PUSH1 0x00 00003593: DUP1 00003594: RETURNDATACOPY 00003595: RETURNDATASIZE 00003596: PUSH1 0x00 00003598: REVERT 00003599: JUMPDEST 0000359a: POP 0000359b: POP 0000359c: PUSH1 0x40 0000359e: MLOAD 0000359f: DUP6 000035a0: SWAP3 000035a1: POP 000035a2: PUSH1 0x01 000035a4: PUSH1 0x01 000035a6: PUSH1 0xa0 000035a8: SHL 000035a9: SUB 000035aa: DUP8 000035ab: AND 000035ac: SWAP2 000035ad: POP 000035ae: CALLER 000035af: SWAP1 000035b0: PUSH32 0x8c6ca3d9b6a0c7bebfa8490b1b23bd368f29583611fadb449ff9ff56a33d94dd 000035d1: SWAP1 000035d2: PUSH1 0x00 000035d4: SWAP1 000035d5: LOG4 000035d6: POP 000035d7: POP 000035d8: PUSH2 0x0f48 000035db: PUSH1 0x01 000035dd: PUSH1 0x97 000035df: SSTORE 000035e0: JUMP 000035e1: JUMPDEST 000035e2: PUSH1 0x00 000035e4: DUP1 000035e5: PUSH1 0x00 000035e7: PUSH2 0x35ee 000035ea: PUSH2 0x3e23 000035ed: JUMP 000035ee: JUMPDEST 000035ef: SWAP2 000035f0: POP 000035f1: SWAP2 000035f2: POP 000035f3: DUP1 000035f4: PUSH1 0x00 000035f6: SUB 000035f7: PUSH2 0x3602 000035fa: JUMPI 000035fb: POP 000035fc: SWAP2 000035fd: SWAP3 000035fe: SWAP2 000035ff: POP 00003600: POP 00003601: JUMP 00003602: JUMPDEST 00003603: DUP1 00003604: PUSH2 0x33e8 00003607: DUP4 00003608: DUP7 00003609: PUSH2 0x4e4b 0000360c: JUMP 0000360d: JUMPDEST 0000360e: PUSH2 0x3615 00003611: PUSH2 0x39ee 00003614: JUMP 00003615: JUMPDEST 00003616: PUSH2 0x361d 00003619: PUSH2 0x37d5 0000361c: JUMP 0000361d: JUMPDEST 0000361e: PUSH1 0x00 00003620: DUP1 00003621: MLOAD 00003622: PUSH1 0x20 00003624: PUSH2 0x5289 00003627: DUP4 00003628: CODECOPY 00003629: DUP2 0000362a: MLOAD 0000362b: SWAP2 0000362c: MSTORE 0000362d: PUSH2 0x3635 00003630: DUP2 00003631: PUSH2 0x3828 00003634: JUMP 00003635: JUMPDEST 00003636: PUSH1 0x40 00003638: MLOAD 00003639: PUSH4 0x0b02f02d 0000363e: PUSH1 0xe3 00003640: SHL 00003641: DUP2 00003642: MSTORE 00003643: PUSH1 0x04 00003645: DUP2 00003646: ADD 00003647: DUP4 00003648: SWAP1 00003649: MSTORE 0000364a: ADDRESS 0000364b: SWAP1 0000364c: PUSH20 0xb47e3cd837ddf8e4c57f05d70ab865de6e193bbb 00003661: SWAP1 00003662: PUSH4 0x58178168 00003667: SWAP1 00003668: PUSH1 0x24 0000366a: ADD 0000366b: PUSH1 0x20 0000366d: PUSH1 0x40 0000366f: MLOAD 00003670: DUP1 00003671: DUP4 00003672: SUB 00003673: DUP2 00003674: DUP7 00003675: GAS 00003676: STATICCALL 00003677: ISZERO 00003678: DUP1 00003679: ISZERO 0000367a: PUSH2 0x3687 0000367d: JUMPI 0000367e: RETURNDATASIZE 0000367f: PUSH1 0x00 00003681: DUP1 00003682: RETURNDATACOPY 00003683: RETURNDATASIZE 00003684: PUSH1 0x00 00003686: REVERT 00003687: JUMPDEST 00003688: POP 00003689: POP 0000368a: POP 0000368b: POP 0000368c: PUSH1 0x40 0000368e: MLOAD 0000368f: RETURNDATASIZE 00003690: PUSH1 0x1f 00003692: NOT 00003693: PUSH1 0x1f 00003695: DUP3 00003696: ADD 00003697: AND 00003698: DUP3 00003699: ADD 0000369a: DUP1 0000369b: PUSH1 0x40 0000369d: MSTORE 0000369e: POP 0000369f: DUP2 000036a0: ADD 000036a1: SWAP1 000036a2: PUSH2 0x36ab 000036a5: SWAP2 000036a6: SWAP1 000036a7: PUSH2 0x4ecd 000036aa: JUMP 000036ab: JUMPDEST 000036ac: PUSH1 0x01 000036ae: PUSH1 0x01 000036b0: PUSH1 0xa0 000036b2: SHL 000036b3: SUB 000036b4: AND 000036b5: EQ 000036b6: PUSH2 0x370d 000036b9: JUMPI 000036ba: PUSH1 0x40 000036bc: MLOAD 000036bd: PUSH3 0x461bcd 000036c1: PUSH1 0xe5 000036c3: SHL 000036c4: DUP2 000036c5: MSTORE 000036c6: PUSH1 0x20 000036c8: PUSH1 0x04 000036ca: DUP3 000036cb: ADD 000036cc: MSTORE 000036cd: PUSH1 0x23 000036cf: PUSH1 0x24 000036d1: DUP3 000036d2: ADD 000036d3: MSTORE 000036d4: PUSH32 0x5661756c74206973206e6f7420746865206f776e6572206f662074686520746f 000036f5: PUSH1 0x44 000036f7: DUP3 000036f8: ADD 000036f9: MSTORE 000036fa: PUSH3 0x35b2b7 000036fe: PUSH1 0xe9 00003700: SHL 00003701: PUSH1 0x64 00003703: DUP3 00003704: ADD 00003705: MSTORE 00003706: PUSH1 0x84 00003708: ADD 00003709: PUSH2 0x0c37 0000370c: JUMP 0000370d: JUMPDEST 0000370e: PUSH1 0x40 00003710: MLOAD 00003711: PUSH4 0x22dca8bb 00003716: PUSH1 0xe2 00003718: SHL 00003719: DUP2 0000371a: MSTORE 0000371b: CALLER 0000371c: PUSH1 0x04 0000371e: DUP3 0000371f: ADD 00003720: MSTORE 00003721: PUSH1 0x24 00003723: DUP2 00003724: ADD 00003725: DUP4 00003726: SWAP1 00003727: MSTORE 00003728: PUSH20 0xb47e3cd837ddf8e4c57f05d70ab865de6e193bbb 0000373d: SWAP1 0000373e: PUSH4 0x8b72a2ec 00003743: SWAP1 00003744: PUSH1 0x44 00003746: ADD 00003747: PUSH1 0x00 00003749: PUSH1 0x40 0000374b: MLOAD 0000374c: DUP1 0000374d: DUP4 0000374e: SUB 0000374f: DUP2 00003750: PUSH1 0x00 00003752: DUP8 00003753: DUP1 00003754: EXTCODESIZE 00003755: ISZERO 00003756: DUP1 00003757: ISZERO 00003758: PUSH2 0x3760 0000375b: JUMPI 0000375c: PUSH1 0x00 0000375e: DUP1 0000375f: REVERT 00003760: JUMPDEST 00003761: POP 00003762: GAS 00003763: CALL 00003764: ISZERO 00003765: DUP1 00003766: ISZERO 00003767: PUSH2 0x3774 0000376a: JUMPI 0000376b: RETURNDATASIZE 0000376c: PUSH1 0x00 0000376e: DUP1 0000376f: RETURNDATACOPY 00003770: RETURNDATASIZE 00003771: PUSH1 0x00 00003773: REVERT 00003774: JUMPDEST 00003775: POP 00003776: POP 00003777: PUSH1 0x40 00003779: MLOAD 0000377a: DUP5 0000377b: SWAP3 0000377c: POP 0000377d: CALLER 0000377e: SWAP2 0000377f: POP 00003780: PUSH32 0x87ce4af7e059c9ac99ce46a7950aa8274cdb9e5963ae7d875c8ed0bcc6fa0698 000037a1: SWAP1 000037a2: PUSH1 0x00 000037a4: SWAP1 000037a5: LOG3 000037a6: POP 000037a7: PUSH2 0x0e93 000037aa: PUSH1 0x01 000037ac: PUSH1 0x97 000037ae: SSTORE 000037af: JUMP 000037b0: JUMPDEST 000037b1: PUSH1 0x00 000037b3: PUSH1 0x01 000037b5: PUSH1 0x01 000037b7: PUSH1 0xe0 000037b9: SHL 000037ba: SUB 000037bb: NOT 000037bc: DUP3 000037bd: AND 000037be: PUSH4 0x02711897 000037c3: PUSH1 0xe5 000037c5: SHL 000037c6: EQ 000037c7: DUP1 000037c8: PUSH2 0x0a68 000037cb: JUMPI 000037cc: POP 000037cd: PUSH2 0x0a68 000037d0: DUP3 000037d1: PUSH2 0x3ecf 000037d4: JUMP 000037d5: JUMPDEST 000037d6: PUSH1 0xfb 000037d8: SLOAD 000037d9: PUSH1 0xff 000037db: AND 000037dc: ISZERO 000037dd: PUSH2 0x0f72 000037e0: JUMPI 000037e1: PUSH1 0x40 000037e3: MLOAD 000037e4: PUSH3 0x461bcd 000037e8: PUSH1 0xe5 000037ea: SHL 000037eb: DUP2 000037ec: MSTORE 000037ed: PUSH1 0x20 000037ef: PUSH1 0x04 000037f1: DUP3 000037f2: ADD 000037f3: MSTORE 000037f4: PUSH1 0x10 000037f6: PUSH1 0x24 000037f8: DUP3 000037f9: ADD 000037fa: MSTORE 000037fb: PUSH32 0x5061757361626c653a2070617573656400000000000000000000000000000000 0000381c: PUSH1 0x44 0000381e: DUP3 0000381f: ADD 00003820: MSTORE 00003821: PUSH1 0x64 00003823: ADD 00003824: PUSH2 0x0c37 00003827: JUMP 00003828: JUMPDEST 00003829: PUSH2 0x0e93 0000382c: DUP2 0000382d: CALLER 0000382e: PUSH2 0x3f04 00003831: JUMP 00003832: JUMPDEST 00003833: DUP1 00003834: PUSH1 0xa0 00003836: ADD 00003837: CALLDATALOAD 00003838: TIMESTAMP 00003839: GT 0000383a: ISZERO 0000383b: PUSH2 0x3886 0000383e: JUMPI 0000383f: PUSH1 0x40 00003841: MLOAD 00003842: PUSH3 0x461bcd 00003846: PUSH1 0xe5 00003848: SHL 00003849: DUP2 0000384a: MSTORE 0000384b: PUSH1 0x20 0000384d: PUSH1 0x04 0000384f: DUP3 00003850: ADD 00003851: MSTORE 00003852: PUSH1 0x11 00003854: PUSH1 0x24 00003856: DUP3 00003857: ADD 00003858: MSTORE 00003859: PUSH32 0x5369676e61747572652065787069726564000000000000000000000000000000 0000387a: PUSH1 0x44 0000387c: DUP3 0000387d: ADD 0000387e: MSTORE 0000387f: PUSH1 0x64 00003881: ADD 00003882: PUSH2 0x0c37 00003885: JUMP 00003886: JUMPDEST 00003887: PUSH1 0x40 00003889: DUP1 0000388a: MLOAD 0000388b: DUP3 0000388c: CALLDATALOAD 0000388d: PUSH1 0x20 0000388f: DUP3 00003890: DUP2 00003891: ADD 00003892: SWAP2 00003893: SWAP1 00003894: SWAP2 00003895: MSTORE 00003896: DUP4 00003897: ADD 00003898: CALLDATALOAD 00003899: DUP2 0000389a: DUP4 0000389b: ADD 0000389c: MSTORE 0000389d: SWAP1 0000389e: DUP3 0000389f: ADD 000038a0: CALLDATALOAD 000038a1: PUSH1 0x60 000038a3: DUP3 000038a4: DUP2 000038a5: ADD 000038a6: SWAP2 000038a7: SWAP1 000038a8: SWAP2 000038a9: MSTORE 000038aa: DUP3 000038ab: ADD 000038ac: CALLDATALOAD 000038ad: PUSH1 0x80 000038af: DUP3 000038b0: ADD 000038b1: MSTORE 000038b2: PUSH1 0xa0 000038b4: DUP1 000038b5: DUP4 000038b6: ADD 000038b7: CALLDATALOAD 000038b8: SWAP1 000038b9: DUP3 000038ba: ADD 000038bb: MSTORE 000038bc: CHAINID 000038bd: PUSH1 0xc0 000038bf: DUP3 000038c0: ADD 000038c1: MSTORE 000038c2: PUSH1 0x00 000038c4: SWAP1 000038c5: PUSH1 0xe0 000038c7: ADD 000038c8: PUSH1 0x40 000038ca: MLOAD 000038cb: PUSH1 0x20 000038cd: DUP2 000038ce: DUP4 000038cf: SUB 000038d0: SUB 000038d1: DUP2 000038d2: MSTORE 000038d3: SWAP1 000038d4: PUSH1 0x40 000038d6: MSTORE 000038d7: DUP1 000038d8: MLOAD 000038d9: SWAP1 000038da: PUSH1 0x20 000038dc: ADD 000038dd: KECCAK256 000038de: SWAP1 000038df: POP 000038e0: PUSH1 0x00 000038e2: DUP2 000038e3: PUSH1 0x40 000038e5: MLOAD 000038e6: PUSH1 0x20 000038e8: ADD 000038e9: PUSH2 0x391e 000038ec: SWAP2 000038ed: SWAP1 000038ee: PUSH32 0x19457468657265756d205369676e6564204d6573736167653a0a333200000000 0000390f: DUP2 00003910: MSTORE 00003911: PUSH1 0x1c 00003913: DUP2 00003914: ADD 00003915: SWAP2 00003916: SWAP1 00003917: SWAP2 00003918: MSTORE 00003919: PUSH1 0x3c 0000391b: ADD 0000391c: SWAP1 0000391d: JUMP 0000391e: JUMPDEST 0000391f: PUSH1 0x40 00003921: DUP1 00003922: MLOAD 00003923: DUP1 00003924: DUP4 00003925: SUB 00003926: PUSH1 0x1f 00003928: NOT 00003929: ADD 0000392a: DUP2 0000392b: MSTORE 0000392c: SWAP2 0000392d: SWAP1 0000392e: MSTORE 0000392f: DUP1 00003930: MLOAD 00003931: PUSH1 0x20 00003933: SWAP1 00003934: SWAP2 00003935: ADD 00003936: KECCAK256 00003937: PUSH2 0x013c 0000393a: SLOAD 0000393b: SWAP1 0000393c: SWAP2 0000393d: POP 0000393e: PUSH2 0x0100 00003941: SWAP1 00003942: DIV 00003943: PUSH1 0x01 00003945: PUSH1 0x01 00003947: PUSH1 0xa0 00003949: SHL 0000394a: SUB 0000394b: AND 0000394c: PUSH2 0x3998 0000394f: PUSH2 0x395b 00003952: PUSH1 0xc0 00003954: DUP7 00003955: ADD 00003956: DUP7 00003957: PUSH2 0x5119 0000395a: JUMP 0000395b: JUMPDEST 0000395c: DUP1 0000395d: DUP1 0000395e: PUSH1 0x1f 00003960: ADD 00003961: PUSH1 0x20 00003963: DUP1 00003964: SWAP2 00003965: DIV 00003966: MUL 00003967: PUSH1 0x20 00003969: ADD 0000396a: PUSH1 0x40 0000396c: MLOAD 0000396d: SWAP1 0000396e: DUP2 0000396f: ADD 00003970: PUSH1 0x40 00003972: MSTORE 00003973: DUP1 00003974: SWAP4 00003975: SWAP3 00003976: SWAP2 00003977: SWAP1 00003978: DUP2 00003979: DUP2 0000397a: MSTORE 0000397b: PUSH1 0x20 0000397d: ADD 0000397e: DUP4 0000397f: DUP4 00003980: DUP1 00003981: DUP3 00003982: DUP5 00003983: CALLDATACOPY 00003984: PUSH1 0x00 00003986: SWAP3 00003987: ADD 00003988: SWAP2 00003989: SWAP1 0000398a: SWAP2 0000398b: MSTORE 0000398c: POP 0000398d: DUP7 0000398e: SWAP4 0000398f: SWAP3 00003990: POP 00003991: POP 00003992: PUSH2 0x3f79 00003995: SWAP1 00003996: POP 00003997: JUMP 00003998: JUMPDEST 00003999: PUSH1 0x01 0000399b: PUSH1 0x01 0000399d: PUSH1 0xa0 0000399f: SHL 000039a0: SUB 000039a1: AND 000039a2: EQ 000039a3: PUSH2 0x0ebb 000039a6: JUMPI 000039a7: PUSH1 0x40 000039a9: MLOAD 000039aa: PUSH3 0x461bcd 000039ae: PUSH1 0xe5 000039b0: SHL 000039b1: DUP2 000039b2: MSTORE 000039b3: PUSH1 0x20 000039b5: PUSH1 0x04 000039b7: DUP3 000039b8: ADD 000039b9: MSTORE 000039ba: PUSH1 0x11 000039bc: PUSH1 0x24 000039be: DUP3 000039bf: ADD 000039c0: MSTORE 000039c1: PUSH32 0x496e76616c6964205369676e6174757265000000000000000000000000000000 000039e2: PUSH1 0x44 000039e4: DUP3 000039e5: ADD 000039e6: MSTORE 000039e7: PUSH1 0x64 000039e9: ADD 000039ea: PUSH2 0x0c37 000039ed: JUMP 000039ee: JUMPDEST 000039ef: PUSH1 0x02 000039f1: PUSH1 0x97 000039f3: SLOAD 000039f4: SUB 000039f5: PUSH2 0x3a40 000039f8: JUMPI 000039f9: PUSH1 0x40 000039fb: MLOAD 000039fc: PUSH3 0x461bcd 00003a00: PUSH1 0xe5 00003a02: SHL 00003a03: DUP2 00003a04: MSTORE 00003a05: PUSH1 0x20 00003a07: PUSH1 0x04 00003a09: DUP3 00003a0a: ADD 00003a0b: MSTORE 00003a0c: PUSH1 0x1f 00003a0e: PUSH1 0x24 00003a10: DUP3 00003a11: ADD 00003a12: MSTORE 00003a13: PUSH32 0x5265656e7472616e637947756172643a207265656e7472616e742063616c6c00 00003a34: PUSH1 0x44 00003a36: DUP3 00003a37: ADD 00003a38: MSTORE 00003a39: PUSH1 0x64 00003a3b: ADD 00003a3c: PUSH2 0x0c37 00003a3f: JUMP 00003a40: JUMPDEST 00003a41: PUSH1 0x02 00003a43: PUSH1 0x97 00003a45: SSTORE 00003a46: JUMP 00003a47: JUMPDEST 00003a48: PUSH2 0x0138 00003a4b: SLOAD 00003a4c: PUSH1 0x01 00003a4e: PUSH1 0xa0 00003a50: SHL 00003a51: SWAP1 00003a52: DIV 00003a53: PUSH1 0xff 00003a55: AND 00003a56: ISZERO 00003a57: PUSH2 0x3a72 00003a5a: JUMPI 00003a5b: PUSH2 0x0138 00003a5e: SLOAD 00003a5f: PUSH2 0x0f48 00003a62: SWAP1 00003a63: PUSH1 0x01 00003a65: PUSH1 0x01 00003a67: PUSH1 0xa0 00003a69: SHL 00003a6a: SUB 00003a6b: AND 00003a6c: DUP4 00003a6d: DUP4 00003a6e: PUSH2 0x3d64 00003a71: JUMP 00003a72: JUMPDEST 00003a73: PUSH1 0x00 00003a75: DUP3 00003a76: PUSH1 0x01 00003a78: PUSH1 0x01 00003a7a: PUSH1 0xa0 00003a7c: SHL 00003a7d: SUB 00003a7e: AND 00003a7f: DUP3 00003a80: PUSH1 0x40 00003a82: MLOAD 00003a83: PUSH1 0x00 00003a85: PUSH1 0x40 00003a87: MLOAD 00003a88: DUP1 00003a89: DUP4 00003a8a: SUB 00003a8b: DUP2 00003a8c: DUP6 00003a8d: DUP8 00003a8e: GAS 00003a8f: CALL 00003a90: SWAP3 00003a91: POP 00003a92: POP 00003a93: POP 00003a94: RETURNDATASIZE 00003a95: DUP1 00003a96: PUSH1 0x00 00003a98: DUP2 00003a99: EQ 00003a9a: PUSH2 0x3abf 00003a9d: JUMPI 00003a9e: PUSH1 0x40 00003aa0: MLOAD 00003aa1: SWAP2 00003aa2: POP 00003aa3: PUSH1 0x1f 00003aa5: NOT 00003aa6: PUSH1 0x3f 00003aa8: RETURNDATASIZE 00003aa9: ADD 00003aaa: AND 00003aab: DUP3 00003aac: ADD 00003aad: PUSH1 0x40 00003aaf: MSTORE 00003ab0: RETURNDATASIZE 00003ab1: DUP3 00003ab2: MSTORE 00003ab3: RETURNDATASIZE 00003ab4: PUSH1 0x00 00003ab6: PUSH1 0x20 00003ab8: DUP5 00003ab9: ADD 00003aba: RETURNDATACOPY 00003abb: PUSH2 0x3ac4 00003abe: JUMP 00003abf: JUMPDEST 00003ac0: PUSH1 0x60 00003ac2: SWAP2 00003ac3: POP 00003ac4: JUMPDEST 00003ac5: POP 00003ac6: POP 00003ac7: SWAP1 00003ac8: POP 00003ac9: DUP1 00003aca: PUSH2 0x0ebb 00003acd: JUMPI 00003ace: PUSH1 0x40 00003ad0: MLOAD 00003ad1: PUSH3 0x461bcd 00003ad5: PUSH1 0xe5 00003ad7: SHL 00003ad8: DUP2 00003ad9: MSTORE 00003ada: PUSH1 0x20 00003adc: PUSH1 0x04 00003ade: DUP3 00003adf: ADD 00003ae0: MSTORE 00003ae1: PUSH1 0x25 00003ae3: PUSH1 0x24 00003ae5: DUP3 00003ae6: ADD 00003ae7: MSTORE 00003ae8: PUSH32 0x5061796d656e74206661696c65643a204e617469766520746f6b656e20747261 00003b09: PUSH1 0x44 00003b0b: DUP3 00003b0c: ADD 00003b0d: MSTORE 00003b0e: PUSH5 0x3739b332b9 00003b14: PUSH1 0xd9 00003b16: SHL 00003b17: PUSH1 0x64 00003b19: DUP3 00003b1a: ADD 00003b1b: MSTORE 00003b1c: PUSH1 0x84 00003b1e: ADD 00003b1f: PUSH2 0x0c37 00003b22: JUMP 00003b23: JUMPDEST 00003b24: PUSH1 0x01 00003b26: PUSH1 0x97 00003b28: SSTORE 00003b29: JUMP 00003b2a: JUMPDEST 00003b2b: PUSH1 0x00 00003b2d: DUP3 00003b2e: DUP2 00003b2f: MSTORE 00003b30: PUSH1 0x65 00003b32: PUSH1 0x20 00003b34: SWAP1 00003b35: DUP2 00003b36: MSTORE 00003b37: PUSH1 0x40 00003b39: DUP1 00003b3a: DUP4 00003b3b: KECCAK256 00003b3c: PUSH1 0x01 00003b3e: PUSH1 0x01 00003b40: PUSH1 0xa0 00003b42: SHL 00003b43: SUB 00003b44: DUP6 00003b45: AND 00003b46: DUP5 00003b47: MSTORE 00003b48: SWAP1 00003b49: SWAP2 00003b4a: MSTORE 00003b4b: SWAP1 00003b4c: KECCAK256 00003b4d: SLOAD 00003b4e: PUSH1 0xff 00003b50: AND 00003b51: PUSH2 0x0f48 00003b54: JUMPI 00003b55: PUSH1 0x00 00003b57: DUP3 00003b58: DUP2 00003b59: MSTORE 00003b5a: PUSH1 0x65 00003b5c: PUSH1 0x20 00003b5e: SWAP1 00003b5f: DUP2 00003b60: MSTORE 00003b61: PUSH1 0x40 00003b63: DUP1 00003b64: DUP4 00003b65: KECCAK256 00003b66: PUSH1 0x01 00003b68: PUSH1 0x01 00003b6a: PUSH1 0xa0 00003b6c: SHL 00003b6d: SUB 00003b6e: DUP6 00003b6f: AND 00003b70: DUP5 00003b71: MSTORE 00003b72: SWAP1 00003b73: SWAP2 00003b74: MSTORE 00003b75: SWAP1 00003b76: KECCAK256 00003b77: DUP1 00003b78: SLOAD 00003b79: PUSH1 0xff 00003b7b: NOT 00003b7c: AND 00003b7d: PUSH1 0x01 00003b7f: OR 00003b80: SWAP1 00003b81: SSTORE 00003b82: PUSH2 0x3b88 00003b85: CALLER 00003b86: SWAP1 00003b87: JUMP 00003b88: JUMPDEST 00003b89: PUSH1 0x01 00003b8b: PUSH1 0x01 00003b8d: PUSH1 0xa0 00003b8f: SHL 00003b90: SUB 00003b91: AND 00003b92: DUP2 00003b93: PUSH1 0x01 00003b95: PUSH1 0x01 00003b97: PUSH1 0xa0 00003b99: SHL 00003b9a: SUB 00003b9b: AND 00003b9c: DUP4 00003b9d: PUSH32 0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d 00003bbe: PUSH1 0x40 00003bc0: MLOAD 00003bc1: PUSH1 0x40 00003bc3: MLOAD 00003bc4: DUP1 00003bc5: SWAP2 00003bc6: SUB 00003bc7: SWAP1 00003bc8: LOG4 00003bc9: POP 00003bca: POP 00003bcb: JUMP 00003bcc: JUMPDEST 00003bcd: PUSH1 0x00 00003bcf: DUP3 00003bd0: DUP2 00003bd1: MSTORE 00003bd2: PUSH1 0x65 00003bd4: PUSH1 0x20 00003bd6: SWAP1 00003bd7: DUP2 00003bd8: MSTORE 00003bd9: PUSH1 0x40 00003bdb: DUP1 00003bdc: DUP4 00003bdd: KECCAK256 00003bde: PUSH1 0x01 00003be0: PUSH1 0x01 00003be2: PUSH1 0xa0 00003be4: SHL 00003be5: SUB 00003be6: DUP6 00003be7: AND 00003be8: DUP5 00003be9: MSTORE 00003bea: SWAP1 00003beb: SWAP2 00003bec: MSTORE 00003bed: SWAP1 00003bee: KECCAK256 00003bef: SLOAD 00003bf0: PUSH1 0xff 00003bf2: AND 00003bf3: ISZERO 00003bf4: PUSH2 0x0f48 00003bf7: JUMPI 00003bf8: PUSH1 0x00 00003bfa: DUP3 00003bfb: DUP2 00003bfc: MSTORE 00003bfd: PUSH1 0x65 00003bff: PUSH1 0x20 00003c01: SWAP1 00003c02: DUP2 00003c03: MSTORE 00003c04: PUSH1 0x40 00003c06: DUP1 00003c07: DUP4 00003c08: KECCAK256 00003c09: PUSH1 0x01 00003c0b: PUSH1 0x01 00003c0d: PUSH1 0xa0 00003c0f: SHL 00003c10: SUB 00003c11: DUP6 00003c12: AND 00003c13: DUP1 00003c14: DUP6 00003c15: MSTORE 00003c16: SWAP3 00003c17: MSTORE 00003c18: DUP1 00003c19: DUP4 00003c1a: KECCAK256 00003c1b: DUP1 00003c1c: SLOAD 00003c1d: PUSH1 0xff 00003c1f: NOT 00003c20: AND 00003c21: SWAP1 00003c22: SSTORE 00003c23: MLOAD 00003c24: CALLER 00003c25: SWAP3 00003c26: DUP6 00003c27: SWAP2 00003c28: PUSH32 0xf6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b 00003c49: SWAP2 00003c4a: SWAP1 00003c4b: LOG4 00003c4c: POP 00003c4d: POP 00003c4e: JUMP 00003c4f: JUMPDEST 00003c50: PUSH2 0x3c57 00003c53: PUSH2 0x3f9d 00003c56: JUMP 00003c57: JUMPDEST 00003c58: PUSH1 0xfb 00003c5a: DUP1 00003c5b: SLOAD 00003c5c: PUSH1 0xff 00003c5e: NOT 00003c5f: AND 00003c60: SWAP1 00003c61: SSTORE 00003c62: PUSH32 0x5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa 00003c83: CALLER 00003c84: JUMPDEST 00003c85: PUSH1 0x40 00003c87: MLOAD 00003c88: PUSH1 0x01 00003c8a: PUSH1 0x01 00003c8c: PUSH1 0xa0 00003c8e: SHL 00003c8f: SUB 00003c90: SWAP1 00003c91: SWAP2 00003c92: AND 00003c93: DUP2 00003c94: MSTORE 00003c95: PUSH1 0x20 00003c97: ADD 00003c98: PUSH1 0x40 00003c9a: MLOAD 00003c9b: DUP1 00003c9c: SWAP2 00003c9d: SUB 00003c9e: SWAP1 00003c9f: LOG1 00003ca0: JUMP 00003ca1: JUMPDEST 00003ca2: PUSH1 0x40 00003ca4: MLOAD 00003ca5: PUSH1 0x01 00003ca7: PUSH1 0x01 00003ca9: PUSH1 0xa0 00003cab: SHL 00003cac: SUB 00003cad: DUP1 00003cae: DUP6 00003caf: AND 00003cb0: PUSH1 0x24 00003cb2: DUP4 00003cb3: ADD 00003cb4: MSTORE 00003cb5: DUP4 00003cb6: AND 00003cb7: PUSH1 0x44 00003cb9: DUP3 00003cba: ADD 00003cbb: MSTORE 00003cbc: PUSH1 0x64 00003cbe: DUP2 00003cbf: ADD 00003cc0: DUP3 00003cc1: SWAP1 00003cc2: MSTORE 00003cc3: PUSH2 0x3d21 00003cc6: SWAP1 00003cc7: DUP6 00003cc8: SWAP1 00003cc9: PUSH4 0x23b872dd 00003cce: PUSH1 0xe0 00003cd0: SHL 00003cd1: SWAP1 00003cd2: PUSH1 0x84 00003cd4: ADD 00003cd5: JUMPDEST 00003cd6: PUSH1 0x40 00003cd8: DUP1 00003cd9: MLOAD 00003cda: PUSH1 0x1f 00003cdc: NOT 00003cdd: DUP2 00003cde: DUP5 00003cdf: SUB 00003ce0: ADD 00003ce1: DUP2 00003ce2: MSTORE 00003ce3: SWAP2 00003ce4: SWAP1 00003ce5: MSTORE 00003ce6: PUSH1 0x20 00003ce8: DUP2 00003ce9: ADD 00003cea: DUP1 00003ceb: MLOAD 00003cec: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00003d09: AND 00003d0a: PUSH1 0x01 00003d0c: PUSH1 0x01 00003d0e: PUSH1 0xe0 00003d10: SHL 00003d11: SUB 00003d12: NOT 00003d13: SWAP1 00003d14: SWAP4 00003d15: AND 00003d16: SWAP3 00003d17: SWAP1 00003d18: SWAP3 00003d19: OR 00003d1a: SWAP1 00003d1b: SWAP2 00003d1c: MSTORE 00003d1d: PUSH2 0x3fef 00003d20: JUMP 00003d21: JUMPDEST 00003d22: POP 00003d23: POP 00003d24: POP 00003d25: POP 00003d26: JUMP 00003d27: JUMPDEST 00003d28: PUSH2 0x3d2f 00003d2b: PUSH2 0x37d5 00003d2e: JUMP 00003d2f: JUMPDEST 00003d30: PUSH1 0xfb 00003d32: DUP1 00003d33: SLOAD 00003d34: PUSH1 0xff 00003d36: NOT 00003d37: AND 00003d38: PUSH1 0x01 00003d3a: OR 00003d3b: SWAP1 00003d3c: SSTORE 00003d3d: PUSH32 0x62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258 00003d5e: PUSH2 0x3c84 00003d61: CALLER 00003d62: SWAP1 00003d63: JUMP 00003d64: JUMPDEST 00003d65: PUSH1 0x40 00003d67: MLOAD 00003d68: PUSH1 0x01 00003d6a: PUSH1 0x01 00003d6c: PUSH1 0xa0 00003d6e: SHL 00003d6f: SUB 00003d70: DUP4 00003d71: AND 00003d72: PUSH1 0x24 00003d74: DUP3 00003d75: ADD 00003d76: MSTORE 00003d77: PUSH1 0x44 00003d79: DUP2 00003d7a: ADD 00003d7b: DUP3 00003d7c: SWAP1 00003d7d: MSTORE 00003d7e: PUSH2 0x0ebb 00003d81: SWAP1 00003d82: DUP5 00003d83: SWAP1 00003d84: PUSH4 0xa9059cbb 00003d89: PUSH1 0xe0 00003d8b: SHL 00003d8c: SWAP1 00003d8d: PUSH1 0x64 00003d8f: ADD 00003d90: PUSH2 0x3cd5 00003d93: JUMP 00003d94: JUMPDEST 00003d95: PUSH1 0x00 00003d97: SLOAD 00003d98: PUSH2 0x0100 00003d9b: SWAP1 00003d9c: DIV 00003d9d: PUSH1 0xff 00003d9f: AND 00003da0: PUSH2 0x0f72 00003da3: JUMPI 00003da4: PUSH1 0x40 00003da6: MLOAD 00003da7: PUSH3 0x461bcd 00003dab: PUSH1 0xe5 00003dad: SHL 00003dae: DUP2 00003daf: MSTORE 00003db0: PUSH1 0x04 00003db2: ADD 00003db3: PUSH2 0x0c37 00003db6: SWAP1 00003db7: PUSH2 0x5160 00003dba: JUMP 00003dbb: JUMPDEST 00003dbc: PUSH1 0x00 00003dbe: SLOAD 00003dbf: PUSH2 0x0100 00003dc2: SWAP1 00003dc3: DIV 00003dc4: PUSH1 0xff 00003dc6: AND 00003dc7: PUSH2 0x3de2 00003dca: JUMPI 00003dcb: PUSH1 0x40 00003dcd: MLOAD 00003dce: PUSH3 0x461bcd 00003dd2: PUSH1 0xe5 00003dd4: SHL 00003dd5: DUP2 00003dd6: MSTORE 00003dd7: PUSH1 0x04 00003dd9: ADD 00003dda: PUSH2 0x0c37 00003ddd: SWAP1 00003dde: PUSH2 0x5160 00003de1: JUMP 00003de2: JUMPDEST 00003de3: PUSH2 0x0f72 00003de6: PUSH2 0x40c1 00003de9: JUMP 00003dea: JUMPDEST 00003deb: PUSH1 0x00 00003ded: SLOAD 00003dee: PUSH2 0x0100 00003df1: SWAP1 00003df2: DIV 00003df3: PUSH1 0xff 00003df5: AND 00003df6: PUSH2 0x3e11 00003df9: JUMPI 00003dfa: PUSH1 0x40 00003dfc: MLOAD 00003dfd: PUSH3 0x461bcd 00003e01: PUSH1 0xe5 00003e03: SHL 00003e04: DUP2 00003e05: MSTORE 00003e06: PUSH1 0x04 00003e08: ADD 00003e09: PUSH2 0x0c37 00003e0c: SWAP1 00003e0d: PUSH2 0x5160 00003e10: JUMP 00003e11: JUMPDEST 00003e12: PUSH2 0x0f72 00003e15: PUSH2 0x40e8 00003e18: JUMP 00003e19: JUMPDEST 00003e1a: PUSH2 0x0f48 00003e1d: DUP3 00003e1e: DUP3 00003e1f: PUSH2 0x3b2a 00003e22: JUMP 00003e23: JUMPDEST 00003e24: PUSH1 0x00 00003e26: DUP1 00003e27: PUSH1 0x00 00003e29: PUSH2 0x0135 00003e2c: SLOAD 00003e2d: PUSH2 0x0134 00003e30: SLOAD 00003e31: PUSH2 0x0133 00003e34: SLOAD 00003e35: PUSH2 0x3e3e 00003e38: SWAP2 00003e39: SWAP1 00003e3a: PUSH2 0x4e38 00003e3d: JUMP 00003e3e: JUMPDEST 00003e3f: PUSH2 0x3e48 00003e42: SWAP2 00003e43: SWAP1 00003e44: PUSH2 0x4e38 00003e47: JUMP 00003e48: JUMPDEST 00003e49: SWAP1 00003e4a: POP 00003e4b: PUSH1 0x00 00003e4d: PUSH2 0x012e 00003e50: PUSH1 0x00 00003e52: SWAP1 00003e53: SLOAD 00003e54: SWAP1 00003e55: PUSH2 0x0100 00003e58: EXP 00003e59: SWAP1 00003e5a: DIV 00003e5b: PUSH1 0x01 00003e5d: PUSH1 0x01 00003e5f: PUSH1 0xa0 00003e61: SHL 00003e62: SUB 00003e63: AND 00003e64: PUSH1 0x01 00003e66: PUSH1 0x01 00003e68: PUSH1 0xa0 00003e6a: SHL 00003e6b: SUB 00003e6c: AND 00003e6d: PUSH4 0x18160ddd 00003e72: PUSH1 0x40 00003e74: MLOAD 00003e75: DUP2 00003e76: PUSH4 0xffffffff 00003e7b: AND 00003e7c: PUSH1 0xe0 00003e7e: SHL 00003e7f: DUP2 00003e80: MSTORE 00003e81: PUSH1 0x04 00003e83: ADD 00003e84: PUSH1 0x20 00003e86: PUSH1 0x40 00003e88: MLOAD 00003e89: DUP1 00003e8a: DUP4 00003e8b: SUB 00003e8c: DUP2 00003e8d: DUP7 00003e8e: GAS 00003e8f: STATICCALL 00003e90: ISZERO 00003e91: DUP1 00003e92: ISZERO 00003e93: PUSH2 0x3ea0 00003e96: JUMPI 00003e97: RETURNDATASIZE 00003e98: PUSH1 0x00 00003e9a: DUP1 00003e9b: RETURNDATACOPY 00003e9c: RETURNDATASIZE 00003e9d: PUSH1 0x00 00003e9f: REVERT 00003ea0: JUMPDEST 00003ea1: POP 00003ea2: POP 00003ea3: POP 00003ea4: POP 00003ea5: PUSH1 0x40 00003ea7: MLOAD 00003ea8: RETURNDATASIZE 00003ea9: PUSH1 0x1f 00003eab: NOT 00003eac: PUSH1 0x1f 00003eae: DUP3 00003eaf: ADD 00003eb0: AND 00003eb1: DUP3 00003eb2: ADD 00003eb3: DUP1 00003eb4: PUSH1 0x40 00003eb6: MSTORE 00003eb7: POP 00003eb8: DUP2 00003eb9: ADD 00003eba: SWAP1 00003ebb: PUSH2 0x3ec4 00003ebe: SWAP2 00003ebf: SWAP1 00003ec0: PUSH2 0x4eb4 00003ec3: JUMP 00003ec4: JUMPDEST 00003ec5: SWAP2 00003ec6: SWAP5 00003ec7: SWAP2 00003ec8: SWAP4 00003ec9: POP 00003eca: SWAP1 00003ecb: SWAP2 00003ecc: POP 00003ecd: POP 00003ece: JUMP 00003ecf: JUMPDEST 00003ed0: PUSH1 0x00 00003ed2: PUSH1 0x01 00003ed4: PUSH1 0x01 00003ed6: PUSH1 0xe0 00003ed8: SHL 00003ed9: SUB 00003eda: NOT 00003edb: DUP3 00003edc: AND 00003edd: PUSH4 0x7965db0b 00003ee2: PUSH1 0xe0 00003ee4: SHL 00003ee5: EQ 00003ee6: DUP1 00003ee7: PUSH2 0x0a68 00003eea: JUMPI 00003eeb: POP 00003eec: PUSH4 0x01ffc9a7 00003ef1: PUSH1 0xe0 00003ef3: SHL 00003ef4: PUSH1 0x01 00003ef6: PUSH1 0x01 00003ef8: PUSH1 0xe0 00003efa: SHL 00003efb: SUB 00003efc: NOT 00003efd: DUP4 00003efe: AND 00003eff: EQ 00003f00: PUSH2 0x0a68 00003f03: JUMP 00003f04: JUMPDEST 00003f05: PUSH1 0x00 00003f07: DUP3 00003f08: DUP2 00003f09: MSTORE 00003f0a: PUSH1 0x65 00003f0c: PUSH1 0x20 00003f0e: SWAP1 00003f0f: DUP2 00003f10: MSTORE 00003f11: PUSH1 0x40 00003f13: DUP1 00003f14: DUP4 00003f15: KECCAK256 00003f16: PUSH1 0x01 00003f18: PUSH1 0x01 00003f1a: PUSH1 0xa0 00003f1c: SHL 00003f1d: SUB 00003f1e: DUP6 00003f1f: AND 00003f20: DUP5 00003f21: MSTORE 00003f22: SWAP1 00003f23: SWAP2 00003f24: MSTORE 00003f25: SWAP1 00003f26: KECCAK256 00003f27: SLOAD 00003f28: PUSH1 0xff 00003f2a: AND 00003f2b: PUSH2 0x0f48 00003f2e: JUMPI 00003f2f: PUSH2 0x3f37 00003f32: DUP2 00003f33: PUSH2 0x411b 00003f36: JUMP 00003f37: JUMPDEST 00003f38: PUSH2 0x3f42 00003f3b: DUP4 00003f3c: PUSH1 0x20 00003f3e: PUSH2 0x412d 00003f41: JUMP 00003f42: JUMPDEST 00003f43: PUSH1 0x40 00003f45: MLOAD 00003f46: PUSH1 0x20 00003f48: ADD 00003f49: PUSH2 0x3f53 00003f4c: SWAP3 00003f4d: SWAP2 00003f4e: SWAP1 00003f4f: PUSH2 0x51ab 00003f52: JUMP 00003f53: JUMPDEST 00003f54: PUSH1 0x40 00003f56: DUP1 00003f57: MLOAD 00003f58: PUSH1 0x1f 00003f5a: NOT 00003f5b: DUP2 00003f5c: DUP5 00003f5d: SUB 00003f5e: ADD 00003f5f: DUP2 00003f60: MSTORE 00003f61: SWAP1 00003f62: DUP3 00003f63: SWAP1 00003f64: MSTORE 00003f65: PUSH3 0x461bcd 00003f69: PUSH1 0xe5 00003f6b: SHL 00003f6c: DUP3 00003f6d: MSTORE 00003f6e: PUSH2 0x0c37 00003f71: SWAP2 00003f72: PUSH1 0x04 00003f74: ADD 00003f75: PUSH2 0x522c 00003f78: JUMP 00003f79: JUMPDEST 00003f7a: PUSH1 0x00 00003f7c: DUP1 00003f7d: PUSH1 0x00 00003f7f: PUSH2 0x3f88 00003f82: DUP6 00003f83: DUP6 00003f84: PUSH2 0x42dd 00003f87: JUMP 00003f88: JUMPDEST 00003f89: SWAP2 00003f8a: POP 00003f8b: SWAP2 00003f8c: POP 00003f8d: PUSH2 0x3f95 00003f90: DUP2 00003f91: PUSH2 0x4322 00003f94: JUMP 00003f95: JUMPDEST 00003f96: POP 00003f97: SWAP4 00003f98: SWAP3 00003f99: POP 00003f9a: POP 00003f9b: POP 00003f9c: JUMP 00003f9d: JUMPDEST 00003f9e: PUSH1 0xfb 00003fa0: SLOAD 00003fa1: PUSH1 0xff 00003fa3: AND 00003fa4: PUSH2 0x0f72 00003fa7: JUMPI 00003fa8: PUSH1 0x40 00003faa: MLOAD 00003fab: PUSH3 0x461bcd 00003faf: PUSH1 0xe5 00003fb1: SHL 00003fb2: DUP2 00003fb3: MSTORE 00003fb4: PUSH1 0x20 00003fb6: PUSH1 0x04 00003fb8: DUP3 00003fb9: ADD 00003fba: MSTORE 00003fbb: PUSH1 0x14 00003fbd: PUSH1 0x24 00003fbf: DUP3 00003fc0: ADD 00003fc1: MSTORE 00003fc2: PUSH32 0x5061757361626c653a206e6f7420706175736564000000000000000000000000 00003fe3: PUSH1 0x44 00003fe5: DUP3 00003fe6: ADD 00003fe7: MSTORE 00003fe8: PUSH1 0x64 00003fea: ADD 00003feb: PUSH2 0x0c37 00003fee: JUMP 00003fef: JUMPDEST 00003ff0: PUSH1 0x00 00003ff2: PUSH2 0x4044 00003ff5: DUP3 00003ff6: PUSH1 0x40 00003ff8: MLOAD 00003ff9: DUP1 00003ffa: PUSH1 0x40 00003ffc: ADD 00003ffd: PUSH1 0x40 00003fff: MSTORE 00004000: DUP1 00004001: PUSH1 0x20 00004003: DUP2 00004004: MSTORE 00004005: PUSH1 0x20 00004007: ADD 00004008: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564 00004029: DUP2 0000402a: MSTORE 0000402b: POP 0000402c: DUP6 0000402d: PUSH1 0x01 0000402f: PUSH1 0x01 00004031: PUSH1 0xa0 00004033: SHL 00004034: SUB 00004035: AND 00004036: PUSH2 0x446c 00004039: SWAP1 0000403a: SWAP3 0000403b: SWAP2 0000403c: SWAP1 0000403d: PUSH4 0xffffffff 00004042: AND 00004043: JUMP 00004044: JUMPDEST 00004045: DUP1 00004046: MLOAD 00004047: SWAP1 00004048: SWAP2 00004049: POP 0000404a: ISZERO 0000404b: PUSH2 0x0ebb 0000404e: JUMPI 0000404f: DUP1 00004050: DUP1 00004051: PUSH1 0x20 00004053: ADD 00004054: SWAP1 00004055: MLOAD 00004056: DUP2 00004057: ADD 00004058: SWAP1 00004059: PUSH2 0x4062 0000405c: SWAP2 0000405d: SWAP1 0000405e: PUSH2 0x4f19 00004061: JUMP 00004062: JUMPDEST 00004063: PUSH2 0x0ebb 00004066: JUMPI 00004067: PUSH1 0x40 00004069: MLOAD 0000406a: PUSH3 0x461bcd 0000406e: PUSH1 0xe5 00004070: SHL 00004071: DUP2 00004072: MSTORE 00004073: PUSH1 0x20 00004075: PUSH1 0x04 00004077: DUP3 00004078: ADD 00004079: MSTORE 0000407a: PUSH1 0x2a 0000407c: PUSH1 0x24 0000407e: DUP3 0000407f: ADD 00004080: MSTORE 00004081: PUSH32 0x5361666545524332303a204552433230206f7065726174696f6e20646964206e 000040a2: PUSH1 0x44 000040a4: DUP3 000040a5: ADD 000040a6: MSTORE 000040a7: PUSH10 0x1bdd081cdd58d8d95959 000040b2: PUSH1 0xb2 000040b4: SHL 000040b5: PUSH1 0x64 000040b7: DUP3 000040b8: ADD 000040b9: MSTORE 000040ba: PUSH1 0x84 000040bc: ADD 000040bd: PUSH2 0x0c37 000040c0: JUMP 000040c1: JUMPDEST 000040c2: PUSH1 0x00 000040c4: SLOAD 000040c5: PUSH2 0x0100 000040c8: SWAP1 000040c9: DIV 000040ca: PUSH1 0xff 000040cc: AND 000040cd: PUSH2 0x3b23 000040d0: JUMPI 000040d1: PUSH1 0x40 000040d3: MLOAD 000040d4: PUSH3 0x461bcd 000040d8: PUSH1 0xe5 000040da: SHL 000040db: DUP2 000040dc: MSTORE 000040dd: PUSH1 0x04 000040df: ADD 000040e0: PUSH2 0x0c37 000040e3: SWAP1 000040e4: PUSH2 0x5160 000040e7: JUMP 000040e8: JUMPDEST 000040e9: PUSH1 0x00 000040eb: SLOAD 000040ec: PUSH2 0x0100 000040ef: SWAP1 000040f0: DIV 000040f1: PUSH1 0xff 000040f3: AND 000040f4: PUSH2 0x410f 000040f7: JUMPI 000040f8: PUSH1 0x40 000040fa: MLOAD 000040fb: PUSH3 0x461bcd 000040ff: PUSH1 0xe5 00004101: SHL 00004102: DUP2 00004103: MSTORE 00004104: PUSH1 0x04 00004106: ADD 00004107: PUSH2 0x0c37 0000410a: SWAP1 0000410b: PUSH2 0x5160 0000410e: JUMP 0000410f: JUMPDEST 00004110: PUSH1 0xfb 00004112: DUP1 00004113: SLOAD 00004114: PUSH1 0xff 00004116: NOT 00004117: AND 00004118: SWAP1 00004119: SSTORE 0000411a: JUMP 0000411b: JUMPDEST 0000411c: PUSH1 0x60 0000411e: PUSH2 0x0a68 00004121: PUSH1 0x01 00004123: PUSH1 0x01 00004125: PUSH1 0xa0 00004127: SHL 00004128: SUB 00004129: DUP4 0000412a: AND 0000412b: PUSH1 0x14 0000412d: JUMPDEST 0000412e: PUSH1 0x60 00004130: PUSH1 0x00 00004132: PUSH2 0x413c 00004135: DUP4 00004136: PUSH1 0x02 00004138: PUSH2 0x4e4b 0000413b: JUMP 0000413c: JUMPDEST 0000413d: PUSH2 0x4147 00004140: SWAP1 00004141: PUSH1 0x02 00004143: PUSH2 0x4e38 00004146: JUMP 00004147: JUMPDEST 00004148: PUSH8 0xffffffffffffffff 00004151: DUP2 00004152: GT 00004153: ISZERO 00004154: PUSH2 0x415f 00004157: JUMPI 00004158: PUSH2 0x415f 0000415b: PUSH2 0x46f7 0000415e: JUMP 0000415f: JUMPDEST 00004160: PUSH1 0x40 00004162: MLOAD 00004163: SWAP1 00004164: DUP1 00004165: DUP3 00004166: MSTORE 00004167: DUP1 00004168: PUSH1 0x1f 0000416a: ADD 0000416b: PUSH1 0x1f 0000416d: NOT 0000416e: AND 0000416f: PUSH1 0x20 00004171: ADD 00004172: DUP3 00004173: ADD 00004174: PUSH1 0x40 00004176: MSTORE 00004177: DUP1 00004178: ISZERO 00004179: PUSH2 0x4189 0000417c: JUMPI 0000417d: PUSH1 0x20 0000417f: DUP3 00004180: ADD 00004181: DUP2 00004182: DUP1 00004183: CALLDATASIZE 00004184: DUP4 00004185: CALLDATACOPY 00004186: ADD 00004187: SWAP1 00004188: POP 00004189: JUMPDEST 0000418a: POP 0000418b: SWAP1 0000418c: POP 0000418d: PUSH1 0x03 0000418f: PUSH1 0xfc 00004191: SHL 00004192: DUP2 00004193: PUSH1 0x00 00004195: DUP2 00004196: MLOAD 00004197: DUP2 00004198: LT 00004199: PUSH2 0x41a4 0000419c: JUMPI 0000419d: PUSH2 0x41a4 000041a0: PUSH2 0x4eea 000041a3: JUMP 000041a4: JUMPDEST 000041a5: PUSH1 0x20 000041a7: ADD 000041a8: ADD 000041a9: SWAP1 000041aa: PUSH1 0x01 000041ac: PUSH1 0x01 000041ae: PUSH1 0xf8 000041b0: SHL 000041b1: SUB 000041b2: NOT 000041b3: AND 000041b4: SWAP1 000041b5: DUP2 000041b6: PUSH1 0x00 000041b8: BYTE 000041b9: SWAP1 000041ba: MSTORE8 000041bb: POP 000041bc: PUSH1 0x0f 000041be: PUSH1 0xfb 000041c0: SHL 000041c1: DUP2 000041c2: PUSH1 0x01 000041c4: DUP2 000041c5: MLOAD 000041c6: DUP2 000041c7: LT 000041c8: PUSH2 0x41d3 000041cb: JUMPI 000041cc: PUSH2 0x41d3 000041cf: PUSH2 0x4eea 000041d2: JUMP 000041d3: JUMPDEST 000041d4: PUSH1 0x20 000041d6: ADD 000041d7: ADD 000041d8: SWAP1 000041d9: PUSH1 0x01 000041db: PUSH1 0x01 000041dd: PUSH1 0xf8 000041df: SHL 000041e0: SUB 000041e1: NOT 000041e2: AND 000041e3: SWAP1 000041e4: DUP2 000041e5: PUSH1 0x00 000041e7: BYTE 000041e8: SWAP1 000041e9: MSTORE8 000041ea: POP 000041eb: PUSH1 0x00 000041ed: PUSH2 0x41f7 000041f0: DUP5 000041f1: PUSH1 0x02 000041f3: PUSH2 0x4e4b 000041f6: JUMP 000041f7: JUMPDEST 000041f8: PUSH2 0x4202 000041fb: SWAP1 000041fc: PUSH1 0x01 000041fe: PUSH2 0x4e38 00004201: JUMP 00004202: JUMPDEST 00004203: SWAP1 00004204: POP 00004205: JUMPDEST 00004206: PUSH1 0x01 00004208: DUP2 00004209: GT 0000420a: ISZERO 0000420b: PUSH2 0x4287 0000420e: JUMPI 0000420f: PUSH32 0x3031323334353637383961626364656600000000000000000000000000000000 00004230: DUP6 00004231: PUSH1 0x0f 00004233: AND 00004234: PUSH1 0x10 00004236: DUP2 00004237: LT 00004238: PUSH2 0x4243 0000423b: JUMPI 0000423c: PUSH2 0x4243 0000423f: PUSH2 0x4eea 00004242: JUMP 00004243: JUMPDEST 00004244: BYTE 00004245: PUSH1 0xf8 00004247: SHL 00004248: DUP3 00004249: DUP3 0000424a: DUP2 0000424b: MLOAD 0000424c: DUP2 0000424d: LT 0000424e: PUSH2 0x4259 00004251: JUMPI 00004252: PUSH2 0x4259 00004255: PUSH2 0x4eea 00004258: JUMP 00004259: JUMPDEST 0000425a: PUSH1 0x20 0000425c: ADD 0000425d: ADD 0000425e: SWAP1 0000425f: PUSH1 0x01 00004261: PUSH1 0x01 00004263: PUSH1 0xf8 00004265: SHL 00004266: SUB 00004267: NOT 00004268: AND 00004269: SWAP1 0000426a: DUP2 0000426b: PUSH1 0x00 0000426d: BYTE 0000426e: SWAP1 0000426f: MSTORE8 00004270: POP 00004271: PUSH1 0x04 00004273: SWAP5 00004274: SWAP1 00004275: SWAP5 00004276: SHR 00004277: SWAP4 00004278: PUSH2 0x4280 0000427b: DUP2 0000427c: PUSH2 0x523f 0000427f: JUMP 00004280: JUMPDEST 00004281: SWAP1 00004282: POP 00004283: PUSH2 0x4205 00004286: JUMP 00004287: JUMPDEST 00004288: POP 00004289: DUP4 0000428a: ISZERO 0000428b: PUSH2 0x42d6 0000428e: JUMPI 0000428f: PUSH1 0x40 00004291: MLOAD 00004292: PUSH3 0x461bcd 00004296: PUSH1 0xe5 00004298: SHL 00004299: DUP2 0000429a: MSTORE 0000429b: PUSH1 0x20 0000429d: PUSH1 0x04 0000429f: DUP3 000042a0: ADD 000042a1: DUP2 000042a2: SWAP1 000042a3: MSTORE 000042a4: PUSH1 0x24 000042a6: DUP3 000042a7: ADD 000042a8: MSTORE 000042a9: PUSH32 0x537472696e67733a20686578206c656e67746820696e73756666696369656e74 000042ca: PUSH1 0x44 000042cc: DUP3 000042cd: ADD 000042ce: MSTORE 000042cf: PUSH1 0x64 000042d1: ADD 000042d2: PUSH2 0x0c37 000042d5: JUMP 000042d6: JUMPDEST 000042d7: SWAP4 000042d8: SWAP3 000042d9: POP 000042da: POP 000042db: POP 000042dc: JUMP 000042dd: JUMPDEST 000042de: PUSH1 0x00 000042e0: DUP1 000042e1: DUP3 000042e2: MLOAD 000042e3: PUSH1 0x41 000042e5: SUB 000042e6: PUSH2 0x4313 000042e9: JUMPI 000042ea: PUSH1 0x20 000042ec: DUP4 000042ed: ADD 000042ee: MLOAD 000042ef: PUSH1 0x40 000042f1: DUP5 000042f2: ADD 000042f3: MLOAD 000042f4: PUSH1 0x60 000042f6: DUP6 000042f7: ADD 000042f8: MLOAD 000042f9: PUSH1 0x00 000042fb: BYTE 000042fc: PUSH2 0x4307 000042ff: DUP8 00004300: DUP3 00004301: DUP6 00004302: DUP6 00004303: PUSH2 0x447b 00004306: JUMP 00004307: JUMPDEST 00004308: SWAP5 00004309: POP 0000430a: SWAP5 0000430b: POP 0000430c: POP 0000430d: POP 0000430e: POP 0000430f: PUSH2 0x431b 00004312: JUMP 00004313: JUMPDEST 00004314: POP 00004315: PUSH1 0x00 00004317: SWAP1 00004318: POP 00004319: PUSH1 0x02 0000431b: JUMPDEST 0000431c: SWAP3 0000431d: POP 0000431e: SWAP3 0000431f: SWAP1 00004320: POP 00004321: JUMP 00004322: JUMPDEST 00004323: PUSH1 0x00 00004325: DUP2 00004326: PUSH1 0x04 00004328: DUP2 00004329: GT 0000432a: ISZERO 0000432b: PUSH2 0x4336 0000432e: JUMPI 0000432f: PUSH2 0x4336 00004332: PUSH2 0x5256 00004335: JUMP 00004336: JUMPDEST 00004337: SUB 00004338: PUSH2 0x433e 0000433b: JUMPI 0000433c: POP 0000433d: JUMP 0000433e: JUMPDEST 0000433f: PUSH1 0x01 00004341: DUP2 00004342: PUSH1 0x04 00004344: DUP2 00004345: GT 00004346: ISZERO 00004347: PUSH2 0x4352 0000434a: JUMPI 0000434b: PUSH2 0x4352 0000434e: PUSH2 0x5256 00004351: JUMP 00004352: JUMPDEST 00004353: SUB 00004354: PUSH2 0x439f 00004357: JUMPI 00004358: PUSH1 0x40 0000435a: MLOAD 0000435b: PUSH3 0x461bcd 0000435f: PUSH1 0xe5 00004361: SHL 00004362: DUP2 00004363: MSTORE 00004364: PUSH1 0x20 00004366: PUSH1 0x04 00004368: DUP3 00004369: ADD 0000436a: MSTORE 0000436b: PUSH1 0x18 0000436d: PUSH1 0x24 0000436f: DUP3 00004370: ADD 00004371: MSTORE 00004372: PUSH32 0x45434453413a20696e76616c6964207369676e61747572650000000000000000 00004393: PUSH1 0x44 00004395: DUP3 00004396: ADD 00004397: MSTORE 00004398: PUSH1 0x64 0000439a: ADD 0000439b: PUSH2 0x0c37 0000439e: JUMP 0000439f: JUMPDEST 000043a0: PUSH1 0x02 000043a2: DUP2 000043a3: PUSH1 0x04 000043a5: DUP2 000043a6: GT 000043a7: ISZERO 000043a8: PUSH2 0x43b3 000043ab: JUMPI 000043ac: PUSH2 0x43b3 000043af: PUSH2 0x5256 000043b2: JUMP 000043b3: JUMPDEST 000043b4: SUB 000043b5: PUSH2 0x4400 000043b8: JUMPI 000043b9: PUSH1 0x40 000043bb: MLOAD 000043bc: PUSH3 0x461bcd 000043c0: PUSH1 0xe5 000043c2: SHL 000043c3: DUP2 000043c4: MSTORE 000043c5: PUSH1 0x20 000043c7: PUSH1 0x04 000043c9: DUP3 000043ca: ADD 000043cb: MSTORE 000043cc: PUSH1 0x1f 000043ce: PUSH1 0x24 000043d0: DUP3 000043d1: ADD 000043d2: MSTORE 000043d3: PUSH32 0x45434453413a20696e76616c6964207369676e6174757265206c656e67746800 000043f4: PUSH1 0x44 000043f6: DUP3 000043f7: ADD 000043f8: MSTORE 000043f9: PUSH1 0x64 000043fb: ADD 000043fc: PUSH2 0x0c37 000043ff: JUMP 00004400: JUMPDEST 00004401: PUSH1 0x03 00004403: DUP2 00004404: PUSH1 0x04 00004406: DUP2 00004407: GT 00004408: ISZERO 00004409: PUSH2 0x4414 0000440c: JUMPI 0000440d: PUSH2 0x4414 00004410: PUSH2 0x5256 00004413: JUMP 00004414: JUMPDEST 00004415: SUB 00004416: PUSH2 0x0e93 00004419: JUMPI 0000441a: PUSH1 0x40 0000441c: MLOAD 0000441d: PUSH3 0x461bcd 00004421: PUSH1 0xe5 00004423: SHL 00004424: DUP2 00004425: MSTORE 00004426: PUSH1 0x20 00004428: PUSH1 0x04 0000442a: DUP3 0000442b: ADD 0000442c: MSTORE 0000442d: PUSH1 0x22 0000442f: PUSH1 0x24 00004431: DUP3 00004432: ADD 00004433: MSTORE 00004434: PUSH32 0x45434453413a20696e76616c6964207369676e6174757265202773272076616c 00004455: PUSH1 0x44 00004457: DUP3 00004458: ADD 00004459: MSTORE 0000445a: PUSH2 0x7565 0000445d: PUSH1 0xf0 0000445f: SHL 00004460: PUSH1 0x64 00004462: DUP3 00004463: ADD 00004464: MSTORE 00004465: PUSH1 0x84 00004467: ADD 00004468: PUSH2 0x0c37 0000446b: JUMP 0000446c: JUMPDEST 0000446d: PUSH1 0x60 0000446f: PUSH2 0x0ad1 00004472: DUP5 00004473: DUP5 00004474: PUSH1 0x00 00004476: DUP6 00004477: PUSH2 0x453f 0000447a: JUMP 0000447b: JUMPDEST 0000447c: PUSH1 0x00 0000447e: DUP1 0000447f: PUSH32 0x7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0 000044a0: DUP4 000044a1: GT 000044a2: ISZERO 000044a3: PUSH2 0x44b2 000044a6: JUMPI 000044a7: POP 000044a8: PUSH1 0x00 000044aa: SWAP1 000044ab: POP 000044ac: PUSH1 0x03 000044ae: PUSH2 0x4536 000044b1: JUMP 000044b2: JUMPDEST 000044b3: PUSH1 0x40 000044b5: DUP1 000044b6: MLOAD 000044b7: PUSH1 0x00 000044b9: DUP1 000044ba: DUP3 000044bb: MSTORE 000044bc: PUSH1 0x20 000044be: DUP3 000044bf: ADD 000044c0: DUP1 000044c1: DUP5 000044c2: MSTORE 000044c3: DUP10 000044c4: SWAP1 000044c5: MSTORE 000044c6: PUSH1 0xff 000044c8: DUP9 000044c9: AND 000044ca: SWAP3 000044cb: DUP3 000044cc: ADD 000044cd: SWAP3 000044ce: SWAP1 000044cf: SWAP3 000044d0: MSTORE 000044d1: PUSH1 0x60 000044d3: DUP2 000044d4: ADD 000044d5: DUP7 000044d6: SWAP1 000044d7: MSTORE 000044d8: PUSH1 0x80 000044da: DUP2 000044db: ADD 000044dc: DUP6 000044dd: SWAP1 000044de: MSTORE 000044df: PUSH1 0x01 000044e1: SWAP1 000044e2: PUSH1 0xa0 000044e4: ADD 000044e5: PUSH1 0x20 000044e7: PUSH1 0x40 000044e9: MLOAD 000044ea: PUSH1 0x20 000044ec: DUP2 000044ed: SUB 000044ee: SWAP1 000044ef: DUP1 000044f0: DUP5 000044f1: SUB 000044f2: SWAP1 000044f3: DUP6 000044f4: GAS 000044f5: STATICCALL 000044f6: ISZERO 000044f7: DUP1 000044f8: ISZERO 000044f9: PUSH2 0x4506 000044fc: JUMPI 000044fd: RETURNDATASIZE 000044fe: PUSH1 0x00 00004500: DUP1 00004501: RETURNDATACOPY 00004502: RETURNDATASIZE 00004503: PUSH1 0x00 00004505: REVERT 00004506: JUMPDEST 00004507: POP 00004508: POP 00004509: PUSH1 0x40 0000450b: MLOAD 0000450c: PUSH1 0x1f 0000450e: NOT 0000450f: ADD 00004510: MLOAD 00004511: SWAP2 00004512: POP 00004513: POP 00004514: PUSH1 0x01 00004516: PUSH1 0x01 00004518: PUSH1 0xa0 0000451a: SHL 0000451b: SUB 0000451c: DUP2 0000451d: AND 0000451e: PUSH2 0x452f 00004521: JUMPI 00004522: PUSH1 0x00 00004524: PUSH1 0x01 00004526: SWAP3 00004527: POP 00004528: SWAP3 00004529: POP 0000452a: POP 0000452b: PUSH2 0x4536 0000452e: JUMP 0000452f: JUMPDEST 00004530: SWAP2 00004531: POP 00004532: PUSH1 0x00 00004534: SWAP1 00004535: POP 00004536: JUMPDEST 00004537: SWAP5 00004538: POP 00004539: SWAP5 0000453a: SWAP3 0000453b: POP 0000453c: POP 0000453d: POP 0000453e: JUMP 0000453f: JUMPDEST 00004540: PUSH1 0x60 00004542: DUP3 00004543: SELFBALANCE 00004544: LT 00004545: ISZERO 00004546: PUSH2 0x45a0 00004549: JUMPI 0000454a: PUSH1 0x40 0000454c: MLOAD 0000454d: PUSH3 0x461bcd 00004551: PUSH1 0xe5 00004553: SHL 00004554: DUP2 00004555: MSTORE 00004556: PUSH1 0x20 00004558: PUSH1 0x04 0000455a: DUP3 0000455b: ADD 0000455c: MSTORE 0000455d: PUSH1 0x26 0000455f: PUSH1 0x24 00004561: DUP3 00004562: ADD 00004563: MSTORE 00004564: PUSH32 0x416464726573733a20696e73756666696369656e742062616c616e636520666f 00004585: PUSH1 0x44 00004587: DUP3 00004588: ADD 00004589: MSTORE 0000458a: PUSH6 0x1c8818d85b1b 00004591: PUSH1 0xd2 00004593: SHL 00004594: PUSH1 0x64 00004596: DUP3 00004597: ADD 00004598: MSTORE 00004599: PUSH1 0x84 0000459b: ADD 0000459c: PUSH2 0x0c37 0000459f: JUMP 000045a0: JUMPDEST 000045a1: PUSH1 0x00 000045a3: DUP1 000045a4: DUP7 000045a5: PUSH1 0x01 000045a7: PUSH1 0x01 000045a9: PUSH1 0xa0 000045ab: SHL 000045ac: SUB 000045ad: AND 000045ae: DUP6 000045af: DUP8 000045b0: PUSH1 0x40 000045b2: MLOAD 000045b3: PUSH2 0x45bc 000045b6: SWAP2 000045b7: SWAP1 000045b8: PUSH2 0x526c 000045bb: JUMP 000045bc: JUMPDEST 000045bd: PUSH1 0x00 000045bf: PUSH1 0x40 000045c1: MLOAD 000045c2: DUP1 000045c3: DUP4 000045c4: SUB 000045c5: DUP2 000045c6: DUP6 000045c7: DUP8 000045c8: GAS 000045c9: CALL 000045ca: SWAP3 000045cb: POP 000045cc: POP 000045cd: POP 000045ce: RETURNDATASIZE 000045cf: DUP1 000045d0: PUSH1 0x00 000045d2: DUP2 000045d3: EQ 000045d4: PUSH2 0x45f9 000045d7: JUMPI 000045d8: PUSH1 0x40 000045da: MLOAD 000045db: SWAP2 000045dc: POP 000045dd: PUSH1 0x1f 000045df: NOT 000045e0: PUSH1 0x3f 000045e2: RETURNDATASIZE 000045e3: ADD 000045e4: AND 000045e5: DUP3 000045e6: ADD 000045e7: PUSH1 0x40 000045e9: MSTORE 000045ea: RETURNDATASIZE 000045eb: DUP3 000045ec: MSTORE 000045ed: RETURNDATASIZE 000045ee: PUSH1 0x00 000045f0: PUSH1 0x20 000045f2: DUP5 000045f3: ADD 000045f4: RETURNDATACOPY 000045f5: PUSH2 0x45fe 000045f8: JUMP 000045f9: JUMPDEST 000045fa: PUSH1 0x60 000045fc: SWAP2 000045fd: POP 000045fe: JUMPDEST 000045ff: POP 00004600: SWAP2 00004601: POP 00004602: SWAP2 00004603: POP 00004604: PUSH2 0x460f 00004607: DUP8 00004608: DUP4 00004609: DUP4 0000460a: DUP8 0000460b: PUSH2 0x461a 0000460e: JUMP 0000460f: JUMPDEST 00004610: SWAP8 00004611: SWAP7 00004612: POP 00004613: POP 00004614: POP 00004615: POP 00004616: POP 00004617: POP 00004618: POP 00004619: JUMP 0000461a: JUMPDEST 0000461b: PUSH1 0x60 0000461d: DUP4 0000461e: ISZERO 0000461f: PUSH2 0x4689 00004622: JUMPI 00004623: DUP3 00004624: MLOAD 00004625: PUSH1 0x00 00004627: SUB 00004628: PUSH2 0x4682 0000462b: JUMPI 0000462c: PUSH1 0x01 0000462e: PUSH1 0x01 00004630: PUSH1 0xa0 00004632: SHL 00004633: SUB 00004634: DUP6 00004635: AND 00004636: EXTCODESIZE 00004637: PUSH2 0x4682 0000463a: JUMPI 0000463b: PUSH1 0x40 0000463d: MLOAD 0000463e: PUSH3 0x461bcd 00004642: PUSH1 0xe5 00004644: SHL 00004645: DUP2 00004646: MSTORE 00004647: PUSH1 0x20 00004649: PUSH1 0x04 0000464b: DUP3 0000464c: ADD 0000464d: MSTORE 0000464e: PUSH1 0x1d 00004650: PUSH1 0x24 00004652: DUP3 00004653: ADD 00004654: MSTORE 00004655: PUSH32 0x416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000 00004676: PUSH1 0x44 00004678: DUP3 00004679: ADD 0000467a: MSTORE 0000467b: PUSH1 0x64 0000467d: ADD 0000467e: PUSH2 0x0c37 00004681: JUMP 00004682: JUMPDEST 00004683: POP 00004684: DUP2 00004685: PUSH2 0x0ad1 00004688: JUMP 00004689: JUMPDEST 0000468a: PUSH2 0x0ad1 0000468d: DUP4 0000468e: DUP4 0000468f: DUP2 00004690: MLOAD 00004691: ISZERO 00004692: PUSH2 0x469e 00004695: JUMPI 00004696: DUP2 00004697: MLOAD 00004698: DUP1 00004699: DUP4 0000469a: PUSH1 0x20 0000469c: ADD 0000469d: REVERT 0000469e: JUMPDEST 0000469f: DUP1 000046a0: PUSH1 0x40 000046a2: MLOAD 000046a3: PUSH3 0x461bcd 000046a7: PUSH1 0xe5 000046a9: SHL 000046aa: DUP2 000046ab: MSTORE 000046ac: PUSH1 0x04 000046ae: ADD 000046af: PUSH2 0x0c37 000046b2: SWAP2 000046b3: SWAP1 000046b4: PUSH2 0x522c 000046b7: JUMP 000046b8: JUMPDEST 000046b9: PUSH1 0x00 000046bb: PUSH1 0x20 000046bd: DUP3 000046be: DUP5 000046bf: SUB 000046c0: SLT 000046c1: ISZERO 000046c2: PUSH2 0x46ca 000046c5: JUMPI 000046c6: PUSH1 0x00 000046c8: DUP1 000046c9: REVERT 000046ca: JUMPDEST 000046cb: DUP2 000046cc: CALLDATALOAD 000046cd: PUSH1 0x01 000046cf: PUSH1 0x01 000046d1: PUSH1 0xe0 000046d3: SHL 000046d4: SUB 000046d5: NOT 000046d6: DUP2 000046d7: AND 000046d8: DUP2 000046d9: EQ 000046da: PUSH2 0x42d6 000046dd: JUMPI 000046de: PUSH1 0x00 000046e0: DUP1 000046e1: REVERT 000046e2: JUMPDEST 000046e3: PUSH1 0x01 000046e5: PUSH1 0x01 000046e7: PUSH1 0xa0 000046e9: SHL 000046ea: SUB 000046eb: DUP2 000046ec: AND 000046ed: DUP2 000046ee: EQ 000046ef: PUSH2 0x0e93 000046f2: JUMPI 000046f3: PUSH1 0x00 000046f5: DUP1 000046f6: REVERT 000046f7: JUMPDEST 000046f8: PUSH4 0x4e487b71 000046fd: PUSH1 0xe0 000046ff: SHL 00004700: PUSH1 0x00 00004702: MSTORE 00004703: PUSH1 0x41 00004705: PUSH1 0x04 00004707: MSTORE 00004708: PUSH1 0x24 0000470a: PUSH1 0x00 0000470c: REVERT 0000470d: JUMPDEST 0000470e: PUSH1 0x40 00004710: MLOAD 00004711: PUSH1 0x1f 00004713: DUP3 00004714: ADD 00004715: PUSH1 0x1f 00004717: NOT 00004718: AND 00004719: DUP2 0000471a: ADD 0000471b: PUSH8 0xffffffffffffffff 00004724: DUP2 00004725: GT 00004726: DUP3 00004727: DUP3 00004728: LT 00004729: OR 0000472a: ISZERO 0000472b: PUSH2 0x4736 0000472e: JUMPI 0000472f: PUSH2 0x4736 00004732: PUSH2 0x46f7 00004735: JUMP 00004736: JUMPDEST 00004737: PUSH1 0x40 00004739: MSTORE 0000473a: SWAP2 0000473b: SWAP1 0000473c: POP 0000473d: JUMP 0000473e: JUMPDEST 0000473f: PUSH1 0x00 00004741: DUP3 00004742: PUSH1 0x1f 00004744: DUP4 00004745: ADD 00004746: SLT 00004747: PUSH2 0x474f 0000474a: JUMPI 0000474b: PUSH1 0x00 0000474d: DUP1 0000474e: REVERT 0000474f: JUMPDEST 00004750: DUP2 00004751: CALLDATALOAD 00004752: PUSH8 0xffffffffffffffff 0000475b: DUP2 0000475c: GT 0000475d: ISZERO 0000475e: PUSH2 0x4769 00004761: JUMPI 00004762: PUSH2 0x4769 00004765: PUSH2 0x46f7 00004768: JUMP 00004769: JUMPDEST 0000476a: PUSH2 0x477c 0000476d: PUSH1 0x1f 0000476f: DUP3 00004770: ADD 00004771: PUSH1 0x1f 00004773: NOT 00004774: AND 00004775: PUSH1 0x20 00004777: ADD 00004778: PUSH2 0x470d 0000477b: JUMP 0000477c: JUMPDEST 0000477d: DUP2 0000477e: DUP2 0000477f: MSTORE 00004780: DUP5 00004781: PUSH1 0x20 00004783: DUP4 00004784: DUP7 00004785: ADD 00004786: ADD 00004787: GT 00004788: ISZERO 00004789: PUSH2 0x4791 0000478c: JUMPI 0000478d: PUSH1 0x00 0000478f: DUP1 00004790: REVERT 00004791: JUMPDEST 00004792: DUP2 00004793: PUSH1 0x20 00004795: DUP6 00004796: ADD 00004797: PUSH1 0x20 00004799: DUP4 0000479a: ADD 0000479b: CALLDATACOPY 0000479c: PUSH1 0x00 0000479e: SWAP2 0000479f: DUP2 000047a0: ADD 000047a1: PUSH1 0x20 000047a3: ADD 000047a4: SWAP2 000047a5: SWAP1 000047a6: SWAP2 000047a7: MSTORE 000047a8: SWAP4 000047a9: SWAP3 000047aa: POP 000047ab: POP 000047ac: POP 000047ad: JUMP 000047ae: JUMPDEST 000047af: PUSH1 0x00 000047b1: DUP1 000047b2: PUSH1 0x00 000047b4: DUP1 000047b5: PUSH1 0x80 000047b7: DUP6 000047b8: DUP8 000047b9: SUB 000047ba: SLT 000047bb: ISZERO 000047bc: PUSH2 0x47c4 000047bf: JUMPI 000047c0: PUSH1 0x00 000047c2: DUP1 000047c3: REVERT 000047c4: JUMPDEST 000047c5: DUP5 000047c6: CALLDATALOAD 000047c7: PUSH2 0x47cf 000047ca: DUP2 000047cb: PUSH2 0x46e2 000047ce: JUMP 000047cf: JUMPDEST 000047d0: SWAP4 000047d1: POP 000047d2: PUSH1 0x20 000047d4: DUP6 000047d5: ADD 000047d6: CALLDATALOAD 000047d7: PUSH2 0x47df 000047da: DUP2 000047db: PUSH2 0x46e2 000047de: JUMP 000047df: JUMPDEST 000047e0: SWAP3 000047e1: POP 000047e2: PUSH1 0x40 000047e4: DUP6 000047e5: ADD 000047e6: CALLDATALOAD 000047e7: SWAP2 000047e8: POP 000047e9: PUSH1 0x60 000047eb: DUP6 000047ec: ADD 000047ed: CALLDATALOAD 000047ee: PUSH8 0xffffffffffffffff 000047f7: DUP2 000047f8: GT 000047f9: ISZERO 000047fa: PUSH2 0x4802 000047fd: JUMPI 000047fe: PUSH1 0x00 00004800: DUP1 00004801: REVERT 00004802: JUMPDEST 00004803: PUSH2 0x480e 00004806: DUP8 00004807: DUP3 00004808: DUP9 00004809: ADD 0000480a: PUSH2 0x473e 0000480d: JUMP 0000480e: JUMPDEST 0000480f: SWAP2 00004810: POP 00004811: POP 00004812: SWAP3 00004813: SWAP6 00004814: SWAP2 00004815: SWAP5 00004816: POP 00004817: SWAP3 00004818: POP 00004819: JUMP 0000481a: JUMPDEST 0000481b: PUSH1 0x00 0000481d: PUSH1 0xe0 0000481f: DUP3 00004820: DUP5 00004821: SUB 00004822: SLT 00004823: ISZERO 00004824: PUSH2 0x482c 00004827: JUMPI 00004828: PUSH1 0x00 0000482a: DUP1 0000482b: REVERT 0000482c: JUMPDEST 0000482d: POP 0000482e: SWAP2 0000482f: SWAP1 00004830: POP 00004831: JUMP 00004832: JUMPDEST 00004833: PUSH1 0x00 00004835: PUSH1 0x20 00004837: DUP3 00004838: DUP5 00004839: SUB 0000483a: SLT 0000483b: ISZERO 0000483c: PUSH2 0x4844 0000483f: JUMPI 00004840: PUSH1 0x00 00004842: DUP1 00004843: REVERT 00004844: JUMPDEST 00004845: DUP2 00004846: CALLDATALOAD 00004847: PUSH8 0xffffffffffffffff 00004850: DUP2 00004851: GT 00004852: ISZERO 00004853: PUSH2 0x485b 00004856: JUMPI 00004857: PUSH1 0x00 00004859: DUP1 0000485a: REVERT 0000485b: JUMPDEST 0000485c: PUSH2 0x0ad1 0000485f: DUP5 00004860: DUP3 00004861: DUP6 00004862: ADD 00004863: PUSH2 0x481a 00004866: JUMP 00004867: JUMPDEST 00004868: PUSH1 0x00 0000486a: PUSH1 0x20 0000486c: DUP3 0000486d: DUP5 0000486e: SUB 0000486f: SLT 00004870: ISZERO 00004871: PUSH2 0x4879 00004874: JUMPI 00004875: PUSH1 0x00 00004877: DUP1 00004878: REVERT 00004879: JUMPDEST 0000487a: POP 0000487b: CALLDATALOAD 0000487c: SWAP2 0000487d: SWAP1 0000487e: POP 0000487f: JUMP 00004880: JUMPDEST 00004881: PUSH1 0x00 00004883: PUSH1 0x20 00004885: DUP3 00004886: DUP5 00004887: SUB 00004888: SLT 00004889: ISZERO 0000488a: PUSH2 0x4892 0000488d: JUMPI 0000488e: PUSH1 0x00 00004890: DUP1 00004891: REVERT 00004892: JUMPDEST 00004893: DUP2 00004894: CALLDATALOAD 00004895: PUSH2 0x42d6 00004898: DUP2 00004899: PUSH2 0x46e2 0000489c: JUMP 0000489d: JUMPDEST 0000489e: PUSH1 0x00 000048a0: DUP1 000048a1: PUSH1 0x40 000048a3: DUP4 000048a4: DUP6 000048a5: SUB 000048a6: SLT 000048a7: ISZERO 000048a8: PUSH2 0x48b0 000048ab: JUMPI 000048ac: PUSH1 0x00 000048ae: DUP1 000048af: REVERT 000048b0: JUMPDEST 000048b1: DUP3 000048b2: CALLDATALOAD 000048b3: SWAP2 000048b4: POP 000048b5: PUSH1 0x20 000048b7: DUP4 000048b8: ADD 000048b9: CALLDATALOAD 000048ba: PUSH2 0x48c2 000048bd: DUP2 000048be: PUSH2 0x46e2 000048c1: JUMP 000048c2: JUMPDEST 000048c3: DUP1 000048c4: SWAP2 000048c5: POP 000048c6: POP 000048c7: SWAP3 000048c8: POP 000048c9: SWAP3 000048ca: SWAP1 000048cb: POP 000048cc: JUMP 000048cd: JUMPDEST 000048ce: PUSH1 0x00 000048d0: DUP1 000048d1: PUSH1 0x00 000048d3: PUSH1 0x60 000048d5: DUP5 000048d6: DUP7 000048d7: SUB 000048d8: SLT 000048d9: ISZERO 000048da: PUSH2 0x48e2 000048dd: JUMPI 000048de: PUSH1 0x00 000048e0: DUP1 000048e1: REVERT 000048e2: JUMPDEST 000048e3: DUP4 000048e4: CALLDATALOAD 000048e5: PUSH2 0x48ed 000048e8: DUP2 000048e9: PUSH2 0x46e2 000048ec: JUMP 000048ed: JUMPDEST 000048ee: SWAP3 000048ef: POP 000048f0: PUSH1 0x20 000048f2: DUP5 000048f3: ADD 000048f4: CALLDATALOAD 000048f5: PUSH2 0x48fd 000048f8: DUP2 000048f9: PUSH2 0x46e2 000048fc: JUMP 000048fd: JUMPDEST 000048fe: SWAP3 000048ff: SWAP6 00004900: SWAP3 00004901: SWAP5 00004902: POP 00004903: POP 00004904: POP 00004905: PUSH1 0x40 00004907: SWAP2 00004908: SWAP1 00004909: SWAP2 0000490a: ADD 0000490b: CALLDATALOAD 0000490c: SWAP1 0000490d: JUMP 0000490e: JUMPDEST 0000490f: PUSH1 0x00 00004911: DUP1 00004912: DUP4 00004913: PUSH1 0x1f 00004915: DUP5 00004916: ADD 00004917: SLT 00004918: PUSH2 0x4920 0000491b: JUMPI 0000491c: PUSH1 0x00 0000491e: DUP1 0000491f: REVERT 00004920: JUMPDEST 00004921: POP 00004922: DUP2 00004923: CALLDATALOAD 00004924: PUSH8 0xffffffffffffffff 0000492d: DUP2 0000492e: GT 0000492f: ISZERO 00004930: PUSH2 0x4938 00004933: JUMPI 00004934: PUSH1 0x00 00004936: DUP1 00004937: REVERT 00004938: JUMPDEST 00004939: PUSH1 0x20 0000493b: DUP4 0000493c: ADD 0000493d: SWAP2 0000493e: POP 0000493f: DUP4 00004940: PUSH1 0x20 00004942: DUP3 00004943: PUSH1 0x05 00004945: SHL 00004946: DUP6 00004947: ADD 00004948: ADD 00004949: GT 0000494a: ISZERO 0000494b: PUSH2 0x431b 0000494e: JUMPI 0000494f: PUSH1 0x00 00004951: DUP1 00004952: REVERT 00004953: JUMPDEST 00004954: PUSH1 0x00 00004956: DUP1 00004957: PUSH1 0x00 00004959: PUSH1 0x40 0000495b: DUP5 0000495c: DUP7 0000495d: SUB 0000495e: SLT 0000495f: ISZERO 00004960: PUSH2 0x4968 00004963: JUMPI 00004964: PUSH1 0x00 00004966: DUP1 00004967: REVERT 00004968: JUMPDEST 00004969: DUP4 0000496a: CALLDATALOAD 0000496b: PUSH2 0x4973 0000496e: DUP2 0000496f: PUSH2 0x46e2 00004972: JUMP 00004973: JUMPDEST 00004974: SWAP3 00004975: POP 00004976: PUSH1 0x20 00004978: DUP5 00004979: ADD 0000497a: CALLDATALOAD 0000497b: PUSH8 0xffffffffffffffff 00004984: DUP2 00004985: GT 00004986: ISZERO 00004987: PUSH2 0x498f 0000498a: JUMPI 0000498b: PUSH1 0x00 0000498d: DUP1 0000498e: REVERT 0000498f: JUMPDEST 00004990: PUSH2 0x499b 00004993: DUP7 00004994: DUP3 00004995: DUP8 00004996: ADD 00004997: PUSH2 0x490e 0000499a: JUMP 0000499b: JUMPDEST 0000499c: SWAP5 0000499d: SWAP8 0000499e: SWAP1 0000499f: SWAP7 000049a0: POP 000049a1: SWAP4 000049a2: SWAP5 000049a3: POP 000049a4: POP 000049a5: POP 000049a6: POP 000049a7: JUMP 000049a8: JUMPDEST 000049a9: PUSH1 0x00 000049ab: DUP1 000049ac: PUSH1 0x00 000049ae: DUP1 000049af: PUSH1 0x80 000049b1: DUP6 000049b2: DUP8 000049b3: SUB 000049b4: SLT 000049b5: ISZERO 000049b6: PUSH2 0x49be 000049b9: JUMPI 000049ba: PUSH1 0x00 000049bc: DUP1 000049bd: REVERT 000049be: JUMPDEST 000049bf: DUP5 000049c0: CALLDATALOAD 000049c1: PUSH8 0xffffffffffffffff 000049ca: DUP1 000049cb: DUP3 000049cc: GT 000049cd: ISZERO 000049ce: PUSH2 0x49d6 000049d1: JUMPI 000049d2: PUSH1 0x00 000049d4: DUP1 000049d5: REVERT 000049d6: JUMPDEST 000049d7: PUSH2 0x49e2 000049da: DUP9 000049db: DUP4 000049dc: DUP10 000049dd: ADD 000049de: PUSH2 0x481a 000049e1: JUMP 000049e2: JUMPDEST 000049e3: SWAP6 000049e4: POP 000049e5: PUSH1 0x20 000049e7: DUP8 000049e8: ADD 000049e9: CALLDATALOAD 000049ea: SWAP2 000049eb: POP 000049ec: PUSH2 0x49f4 000049ef: DUP3 000049f0: PUSH2 0x46e2 000049f3: JUMP 000049f4: JUMPDEST 000049f5: SWAP1 000049f6: SWAP4 000049f7: POP 000049f8: PUSH1 0x40 000049fa: DUP7 000049fb: ADD 000049fc: CALLDATALOAD 000049fd: SWAP3 000049fe: POP 000049ff: PUSH1 0x60 00004a01: DUP7 00004a02: ADD 00004a03: CALLDATALOAD 00004a04: SWAP1 00004a05: DUP1 00004a06: DUP3 00004a07: GT 00004a08: ISZERO 00004a09: PUSH2 0x4a11 00004a0c: JUMPI 00004a0d: PUSH1 0x00 00004a0f: DUP1 00004a10: REVERT 00004a11: JUMPDEST 00004a12: POP 00004a13: PUSH2 0x480e 00004a16: DUP8 00004a17: DUP3 00004a18: DUP9 00004a19: ADD 00004a1a: PUSH2 0x473e 00004a1d: JUMP 00004a1e: JUMPDEST 00004a1f: PUSH1 0x00 00004a21: DUP1 00004a22: PUSH1 0x00 00004a24: DUP1 00004a25: PUSH1 0x00 00004a27: PUSH1 0x60 00004a29: DUP7 00004a2a: DUP9 00004a2b: SUB 00004a2c: SLT 00004a2d: ISZERO 00004a2e: PUSH2 0x4a36 00004a31: JUMPI 00004a32: PUSH1 0x00 00004a34: DUP1 00004a35: REVERT 00004a36: JUMPDEST 00004a37: DUP6 00004a38: CALLDATALOAD 00004a39: PUSH8 0xffffffffffffffff 00004a42: DUP1 00004a43: DUP3 00004a44: GT 00004a45: ISZERO 00004a46: PUSH2 0x4a4e 00004a49: JUMPI 00004a4a: PUSH1 0x00 00004a4c: DUP1 00004a4d: REVERT 00004a4e: JUMPDEST 00004a4f: PUSH2 0x4a5a 00004a52: DUP10 00004a53: DUP4 00004a54: DUP11 00004a55: ADD 00004a56: PUSH2 0x490e 00004a59: JUMP 00004a5a: JUMPDEST 00004a5b: SWAP1 00004a5c: SWAP8 00004a5d: POP 00004a5e: SWAP6 00004a5f: POP 00004a60: PUSH1 0x20 00004a62: DUP9 00004a63: ADD 00004a64: CALLDATALOAD 00004a65: SWAP2 00004a66: POP 00004a67: DUP1 00004a68: DUP3 00004a69: GT 00004a6a: ISZERO 00004a6b: PUSH2 0x4a73 00004a6e: JUMPI 00004a6f: PUSH1 0x00 00004a71: DUP1 00004a72: REVERT 00004a73: JUMPDEST 00004a74: POP 00004a75: PUSH2 0x4a80 00004a78: DUP9 00004a79: DUP3 00004a7a: DUP10 00004a7b: ADD 00004a7c: PUSH2 0x490e 00004a7f: JUMP 00004a80: JUMPDEST 00004a81: SWAP7 00004a82: SWAP10 00004a83: SWAP6 00004a84: SWAP9 00004a85: POP 00004a86: SWAP7 00004a87: PUSH1 0x40 00004a89: ADD 00004a8a: CALLDATALOAD 00004a8b: SWAP5 00004a8c: SWAP4 00004a8d: POP 00004a8e: POP 00004a8f: POP 00004a90: POP 00004a91: JUMP 00004a92: JUMPDEST 00004a93: PUSH1 0x00 00004a95: DUP1 00004a96: DUP4 00004a97: PUSH1 0x1f 00004a99: DUP5 00004a9a: ADD 00004a9b: SLT 00004a9c: PUSH2 0x4aa4 00004a9f: JUMPI 00004aa0: PUSH1 0x00 00004aa2: DUP1 00004aa3: REVERT 00004aa4: JUMPDEST 00004aa5: POP 00004aa6: DUP2 00004aa7: CALLDATALOAD 00004aa8: PUSH8 0xffffffffffffffff 00004ab1: DUP2 00004ab2: GT 00004ab3: ISZERO 00004ab4: PUSH2 0x4abc 00004ab7: JUMPI 00004ab8: PUSH1 0x00 00004aba: DUP1 00004abb: REVERT 00004abc: JUMPDEST 00004abd: PUSH1 0x20 00004abf: DUP4 00004ac0: ADD 00004ac1: SWAP2 00004ac2: POP 00004ac3: DUP4 00004ac4: PUSH1 0x20 00004ac6: DUP3 00004ac7: DUP6 00004ac8: ADD 00004ac9: ADD 00004aca: GT 00004acb: ISZERO 00004acc: PUSH2 0x431b 00004acf: JUMPI 00004ad0: PUSH1 0x00 00004ad2: DUP1 00004ad3: REVERT 00004ad4: JUMPDEST 00004ad5: PUSH1 0x00 00004ad7: DUP1 00004ad8: PUSH1 0x00 00004ada: DUP1 00004adb: PUSH1 0x00 00004add: DUP1 00004ade: PUSH1 0x80 00004ae0: DUP8 00004ae1: DUP10 00004ae2: SUB 00004ae3: SLT 00004ae4: ISZERO 00004ae5: PUSH2 0x4aed 00004ae8: JUMPI 00004ae9: PUSH1 0x00 00004aeb: DUP1 00004aec: REVERT 00004aed: JUMPDEST 00004aee: DUP7 00004aef: CALLDATALOAD 00004af0: PUSH8 0xffffffffffffffff 00004af9: DUP1 00004afa: DUP3 00004afb: GT 00004afc: ISZERO 00004afd: PUSH2 0x4b05 00004b00: JUMPI 00004b01: PUSH1 0x00 00004b03: DUP1 00004b04: REVERT 00004b05: JUMPDEST 00004b06: PUSH2 0x4b11 00004b09: DUP11 00004b0a: DUP4 00004b0b: DUP12 00004b0c: ADD 00004b0d: PUSH2 0x481a 00004b10: JUMP 00004b11: JUMPDEST 00004b12: SWAP8 00004b13: POP 00004b14: PUSH1 0x20 00004b16: DUP10 00004b17: ADD 00004b18: CALLDATALOAD 00004b19: SWAP2 00004b1a: POP 00004b1b: DUP1 00004b1c: DUP3 00004b1d: GT 00004b1e: ISZERO 00004b1f: PUSH2 0x4b27 00004b22: JUMPI 00004b23: PUSH1 0x00 00004b25: DUP1 00004b26: REVERT 00004b27: JUMPDEST 00004b28: PUSH2 0x4b33 00004b2b: DUP11 00004b2c: DUP4 00004b2d: DUP12 00004b2e: ADD 00004b2f: PUSH2 0x4a92 00004b32: JUMP 00004b33: JUMPDEST 00004b34: SWAP1 00004b35: SWAP8 00004b36: POP 00004b37: SWAP6 00004b38: POP 00004b39: PUSH1 0x40 00004b3b: DUP10 00004b3c: ADD 00004b3d: CALLDATALOAD 00004b3e: SWAP5 00004b3f: POP 00004b40: PUSH1 0x60 00004b42: DUP10 00004b43: ADD 00004b44: CALLDATALOAD 00004b45: SWAP2 00004b46: POP 00004b47: DUP1 00004b48: DUP3 00004b49: GT 00004b4a: ISZERO 00004b4b: PUSH2 0x4b53 00004b4e: JUMPI 00004b4f: PUSH1 0x00 00004b51: DUP1 00004b52: REVERT 00004b53: JUMPDEST 00004b54: POP 00004b55: PUSH2 0x4b60 00004b58: DUP10 00004b59: DUP3 00004b5a: DUP11 00004b5b: ADD 00004b5c: PUSH2 0x4a92 00004b5f: JUMP 00004b60: JUMPDEST 00004b61: SWAP8 00004b62: SWAP11 00004b63: SWAP7 00004b64: SWAP10 00004b65: POP 00004b66: SWAP5 00004b67: SWAP8 00004b68: POP 00004b69: SWAP3 00004b6a: SWAP6 00004b6b: SWAP4 00004b6c: SWAP5 00004b6d: SWAP3 00004b6e: POP 00004b6f: POP 00004b70: POP 00004b71: JUMP 00004b72: JUMPDEST 00004b73: PUSH1 0x00 00004b75: DUP1 00004b76: PUSH1 0x40 00004b78: DUP4 00004b79: DUP6 00004b7a: SUB 00004b7b: SLT 00004b7c: ISZERO 00004b7d: PUSH2 0x4b85 00004b80: JUMPI 00004b81: PUSH1 0x00 00004b83: DUP1 00004b84: REVERT 00004b85: JUMPDEST 00004b86: POP 00004b87: POP 00004b88: DUP1 00004b89: CALLDATALOAD 00004b8a: SWAP3 00004b8b: PUSH1 0x20 00004b8d: SWAP1 00004b8e: SWAP2 00004b8f: ADD 00004b90: CALLDATALOAD 00004b91: SWAP2 00004b92: POP 00004b93: JUMP 00004b94: JUMPDEST 00004b95: PUSH1 0x00 00004b97: DUP1 00004b98: PUSH1 0x40 00004b9a: DUP4 00004b9b: DUP6 00004b9c: SUB 00004b9d: SLT 00004b9e: ISZERO 00004b9f: PUSH2 0x4ba7 00004ba2: JUMPI 00004ba3: PUSH1 0x00 00004ba5: DUP1 00004ba6: REVERT 00004ba7: JUMPDEST 00004ba8: DUP3 00004ba9: CALLDATALOAD 00004baa: PUSH2 0x4bb2 00004bad: DUP2 00004bae: PUSH2 0x46e2 00004bb1: JUMP 00004bb2: JUMPDEST 00004bb3: SWAP5 00004bb4: PUSH1 0x20 00004bb6: SWAP4 00004bb7: SWAP1 00004bb8: SWAP4 00004bb9: ADD 00004bba: CALLDATALOAD 00004bbb: SWAP4 00004bbc: POP 00004bbd: POP 00004bbe: POP 00004bbf: JUMP 00004bc0: JUMPDEST 00004bc1: PUSH1 0x00 00004bc3: DUP1 00004bc4: PUSH1 0x00 00004bc6: PUSH1 0x60 00004bc8: DUP5 00004bc9: DUP7 00004bca: SUB 00004bcb: SLT 00004bcc: ISZERO 00004bcd: PUSH2 0x4bd5 00004bd0: JUMPI 00004bd1: PUSH1 0x00 00004bd3: DUP1 00004bd4: REVERT 00004bd5: JUMPDEST 00004bd6: DUP4 00004bd7: CALLDATALOAD 00004bd8: PUSH2 0x4be0 00004bdb: DUP2 00004bdc: PUSH2 0x46e2 00004bdf: JUMP 00004be0: JUMPDEST 00004be1: SWAP6 00004be2: PUSH1 0x20 00004be4: DUP6 00004be5: ADD 00004be6: CALLDATALOAD 00004be7: SWAP6 00004be8: POP 00004be9: PUSH1 0x40 00004beb: SWAP1 00004bec: SWAP5 00004bed: ADD 00004bee: CALLDATALOAD 00004bef: SWAP4 00004bf0: SWAP3 00004bf1: POP 00004bf2: POP 00004bf3: POP 00004bf4: JUMP 00004bf5: JUMPDEST 00004bf6: PUSH1 0x00 00004bf8: DUP3 00004bf9: PUSH1 0x1f 00004bfb: DUP4 00004bfc: ADD 00004bfd: SLT 00004bfe: PUSH2 0x4c06 00004c01: JUMPI 00004c02: PUSH1 0x00 00004c04: DUP1 00004c05: REVERT 00004c06: JUMPDEST 00004c07: DUP2 00004c08: CALLDATALOAD 00004c09: PUSH1 0x20 00004c0b: PUSH8 0xffffffffffffffff 00004c14: DUP3 00004c15: GT 00004c16: ISZERO 00004c17: PUSH2 0x4c22 00004c1a: JUMPI 00004c1b: PUSH2 0x4c22 00004c1e: PUSH2 0x46f7 00004c21: JUMP 00004c22: JUMPDEST 00004c23: DUP2 00004c24: PUSH1 0x05 00004c26: SHL 00004c27: PUSH2 0x4c31 00004c2a: DUP3 00004c2b: DUP3 00004c2c: ADD 00004c2d: PUSH2 0x470d 00004c30: JUMP 00004c31: JUMPDEST 00004c32: SWAP3 00004c33: DUP4 00004c34: MSTORE 00004c35: DUP5 00004c36: DUP2 00004c37: ADD 00004c38: DUP3 00004c39: ADD 00004c3a: SWAP3 00004c3b: DUP3 00004c3c: DUP2 00004c3d: ADD 00004c3e: SWAP1 00004c3f: DUP8 00004c40: DUP6 00004c41: GT 00004c42: ISZERO 00004c43: PUSH2 0x4c4b 00004c46: JUMPI 00004c47: PUSH1 0x00 00004c49: DUP1 00004c4a: REVERT 00004c4b: JUMPDEST 00004c4c: DUP4 00004c4d: DUP8 00004c4e: ADD 00004c4f: SWAP3 00004c50: POP 00004c51: JUMPDEST 00004c52: DUP5 00004c53: DUP4 00004c54: LT 00004c55: ISZERO 00004c56: PUSH2 0x460f 00004c59: JUMPI 00004c5a: DUP3 00004c5b: CALLDATALOAD 00004c5c: DUP3 00004c5d: MSTORE 00004c5e: SWAP2 00004c5f: DUP4 00004c60: ADD 00004c61: SWAP2 00004c62: SWAP1 00004c63: DUP4 00004c64: ADD 00004c65: SWAP1 00004c66: PUSH2 0x4c51 00004c69: JUMP 00004c6a: JUMPDEST 00004c6b: PUSH1 0x00 00004c6d: DUP1 00004c6e: PUSH1 0x00 00004c70: DUP1 00004c71: PUSH1 0x00 00004c73: PUSH1 0xa0 00004c75: DUP7 00004c76: DUP9 00004c77: SUB 00004c78: SLT 00004c79: ISZERO 00004c7a: PUSH2 0x4c82 00004c7d: JUMPI 00004c7e: PUSH1 0x00 00004c80: DUP1 00004c81: REVERT 00004c82: JUMPDEST 00004c83: DUP6 00004c84: CALLDATALOAD 00004c85: PUSH2 0x4c8d 00004c88: DUP2 00004c89: PUSH2 0x46e2 00004c8c: JUMP 00004c8d: JUMPDEST 00004c8e: SWAP5 00004c8f: POP 00004c90: PUSH1 0x20 00004c92: DUP7 00004c93: ADD 00004c94: CALLDATALOAD 00004c95: PUSH2 0x4c9d 00004c98: DUP2 00004c99: PUSH2 0x46e2 00004c9c: JUMP 00004c9d: JUMPDEST 00004c9e: SWAP4 00004c9f: POP 00004ca0: PUSH1 0x40 00004ca2: DUP7 00004ca3: ADD 00004ca4: CALLDATALOAD 00004ca5: PUSH8 0xffffffffffffffff 00004cae: DUP1 00004caf: DUP3 00004cb0: GT 00004cb1: ISZERO 00004cb2: PUSH2 0x4cba 00004cb5: JUMPI 00004cb6: PUSH1 0x00 00004cb8: DUP1 00004cb9: REVERT 00004cba: JUMPDEST 00004cbb: PUSH2 0x4cc6 00004cbe: DUP10 00004cbf: DUP4 00004cc0: DUP11 00004cc1: ADD 00004cc2: PUSH2 0x4bf5 00004cc5: JUMP 00004cc6: JUMPDEST 00004cc7: SWAP5 00004cc8: POP 00004cc9: PUSH1 0x60 00004ccb: DUP9 00004ccc: ADD 00004ccd: CALLDATALOAD 00004cce: SWAP2 00004ccf: POP 00004cd0: DUP1 00004cd1: DUP3 00004cd2: GT 00004cd3: ISZERO 00004cd4: PUSH2 0x4cdc 00004cd7: JUMPI 00004cd8: PUSH1 0x00 00004cda: DUP1 00004cdb: REVERT 00004cdc: JUMPDEST 00004cdd: PUSH2 0x4ce8 00004ce0: DUP10 00004ce1: DUP4 00004ce2: DUP11 00004ce3: ADD 00004ce4: PUSH2 0x4bf5 00004ce7: JUMP 00004ce8: JUMPDEST 00004ce9: SWAP4 00004cea: POP 00004ceb: PUSH1 0x80 00004ced: DUP9 00004cee: ADD 00004cef: CALLDATALOAD 00004cf0: SWAP2 00004cf1: POP 00004cf2: DUP1 00004cf3: DUP3 00004cf4: GT 00004cf5: ISZERO 00004cf6: PUSH2 0x4cfe 00004cf9: JUMPI 00004cfa: PUSH1 0x00 00004cfc: DUP1 00004cfd: REVERT 00004cfe: JUMPDEST 00004cff: POP 00004d00: PUSH2 0x4d0b 00004d03: DUP9 00004d04: DUP3 00004d05: DUP10 00004d06: ADD 00004d07: PUSH2 0x473e 00004d0a: JUMP 00004d0b: JUMPDEST 00004d0c: SWAP2 00004d0d: POP 00004d0e: POP 00004d0f: SWAP3 00004d10: SWAP6 00004d11: POP 00004d12: SWAP3 00004d13: SWAP6 00004d14: SWAP1 00004d15: SWAP4 00004d16: POP 00004d17: JUMP 00004d18: JUMPDEST 00004d19: PUSH1 0x00 00004d1b: DUP1 00004d1c: PUSH1 0x00 00004d1e: DUP1 00004d1f: PUSH1 0x00 00004d21: DUP1 00004d22: PUSH1 0x00 00004d24: DUP1 00004d25: PUSH1 0x00 00004d27: PUSH2 0x0120 00004d2a: DUP11 00004d2b: DUP13 00004d2c: SUB 00004d2d: SLT 00004d2e: ISZERO 00004d2f: PUSH2 0x4d37 00004d32: JUMPI 00004d33: PUSH1 0x00 00004d35: DUP1 00004d36: REVERT 00004d37: JUMPDEST 00004d38: DUP10 00004d39: CALLDATALOAD 00004d3a: PUSH2 0x4d42 00004d3d: DUP2 00004d3e: PUSH2 0x46e2 00004d41: JUMP 00004d42: JUMPDEST 00004d43: SWAP9 00004d44: POP 00004d45: PUSH1 0x20 00004d47: DUP11 00004d48: ADD 00004d49: CALLDATALOAD 00004d4a: PUSH2 0x4d52 00004d4d: DUP2 00004d4e: PUSH2 0x46e2 00004d51: JUMP 00004d52: JUMPDEST 00004d53: SWAP8 00004d54: POP 00004d55: PUSH1 0x40 00004d57: DUP11 00004d58: ADD 00004d59: CALLDATALOAD 00004d5a: PUSH2 0x4d62 00004d5d: DUP2 00004d5e: PUSH2 0x46e2 00004d61: JUMP 00004d62: JUMPDEST 00004d63: SWAP7 00004d64: POP 00004d65: PUSH1 0x60 00004d67: DUP11 00004d68: ADD 00004d69: CALLDATALOAD 00004d6a: PUSH2 0x4d72 00004d6d: DUP2 00004d6e: PUSH2 0x46e2 00004d71: JUMP 00004d72: JUMPDEST 00004d73: SWAP6 00004d74: POP 00004d75: PUSH1 0x80 00004d77: DUP11 00004d78: ADD 00004d79: CALLDATALOAD 00004d7a: PUSH2 0x4d82 00004d7d: DUP2 00004d7e: PUSH2 0x46e2 00004d81: JUMP 00004d82: JUMPDEST 00004d83: SWAP5 00004d84: POP 00004d85: PUSH1 0xa0 00004d87: DUP11 00004d88: ADD 00004d89: CALLDATALOAD 00004d8a: SWAP4 00004d8b: POP 00004d8c: PUSH1 0xc0 00004d8e: DUP11 00004d8f: ADD 00004d90: CALLDATALOAD 00004d91: SWAP3 00004d92: POP 00004d93: PUSH1 0xe0 00004d95: DUP11 00004d96: ADD 00004d97: CALLDATALOAD 00004d98: SWAP2 00004d99: POP 00004d9a: PUSH2 0x0100 00004d9d: DUP11 00004d9e: ADD 00004d9f: CALLDATALOAD 00004da0: PUSH2 0x4da8 00004da3: DUP2 00004da4: PUSH2 0x46e2 00004da7: JUMP 00004da8: JUMPDEST 00004da9: DUP1 00004daa: SWAP2 00004dab: POP 00004dac: POP 00004dad: SWAP3 00004dae: SWAP6 00004daf: SWAP9 00004db0: POP 00004db1: SWAP3 00004db2: SWAP6 00004db3: SWAP9 00004db4: POP 00004db5: SWAP3 00004db6: SWAP6 00004db7: SWAP9 00004db8: JUMP 00004db9: JUMPDEST 00004dba: PUSH1 0x00 00004dbc: DUP1 00004dbd: PUSH1 0x00 00004dbf: DUP1 00004dc0: PUSH1 0x00 00004dc2: PUSH1 0xa0 00004dc4: DUP7 00004dc5: DUP9 00004dc6: SUB 00004dc7: SLT 00004dc8: ISZERO 00004dc9: PUSH2 0x4dd1 00004dcc: JUMPI 00004dcd: PUSH1 0x00 00004dcf: DUP1 00004dd0: REVERT 00004dd1: JUMPDEST 00004dd2: DUP6 00004dd3: CALLDATALOAD 00004dd4: PUSH2 0x4ddc 00004dd7: DUP2 00004dd8: PUSH2 0x46e2 00004ddb: JUMP 00004ddc: JUMPDEST 00004ddd: SWAP5 00004dde: POP 00004ddf: PUSH1 0x20 00004de1: DUP7 00004de2: ADD 00004de3: CALLDATALOAD 00004de4: PUSH2 0x4dec 00004de7: DUP2 00004de8: PUSH2 0x46e2 00004deb: JUMP 00004dec: JUMPDEST 00004ded: SWAP4 00004dee: POP 00004def: PUSH1 0x40 00004df1: DUP7 00004df2: ADD 00004df3: CALLDATALOAD 00004df4: SWAP3 00004df5: POP 00004df6: PUSH1 0x60 00004df8: DUP7 00004df9: ADD 00004dfa: CALLDATALOAD 00004dfb: SWAP2 00004dfc: POP 00004dfd: PUSH1 0x80 00004dff: DUP7 00004e00: ADD 00004e01: CALLDATALOAD 00004e02: PUSH8 0xffffffffffffffff 00004e0b: DUP2 00004e0c: GT 00004e0d: ISZERO 00004e0e: PUSH2 0x4e16 00004e11: JUMPI 00004e12: PUSH1 0x00 00004e14: DUP1 00004e15: REVERT 00004e16: JUMPDEST 00004e17: PUSH2 0x4d0b 00004e1a: DUP9 00004e1b: DUP3 00004e1c: DUP10 00004e1d: ADD 00004e1e: PUSH2 0x473e 00004e21: JUMP 00004e22: JUMPDEST 00004e23: PUSH4 0x4e487b71 00004e28: PUSH1 0xe0 00004e2a: SHL 00004e2b: PUSH1 0x00 00004e2d: MSTORE 00004e2e: PUSH1 0x11 00004e30: PUSH1 0x04 00004e32: MSTORE 00004e33: PUSH1 0x24 00004e35: PUSH1 0x00 00004e37: REVERT 00004e38: JUMPDEST 00004e39: DUP1 00004e3a: DUP3 00004e3b: ADD 00004e3c: DUP1 00004e3d: DUP3 00004e3e: GT 00004e3f: ISZERO 00004e40: PUSH2 0x0a68 00004e43: JUMPI 00004e44: PUSH2 0x0a68 00004e47: PUSH2 0x4e22 00004e4a: JUMP 00004e4b: JUMPDEST 00004e4c: DUP1 00004e4d: DUP3 00004e4e: MUL 00004e4f: DUP2 00004e50: ISZERO 00004e51: DUP3 00004e52: DUP3 00004e53: DIV 00004e54: DUP5 00004e55: EQ 00004e56: OR 00004e57: PUSH2 0x0a68 00004e5a: JUMPI 00004e5b: PUSH2 0x0a68 00004e5e: PUSH2 0x4e22 00004e61: JUMP 00004e62: JUMPDEST 00004e63: PUSH1 0x00 00004e65: DUP3 00004e66: PUSH2 0x4e7f 00004e69: JUMPI 00004e6a: PUSH4 0x4e487b71 00004e6f: PUSH1 0xe0 00004e71: SHL 00004e72: PUSH1 0x00 00004e74: MSTORE 00004e75: PUSH1 0x12 00004e77: PUSH1 0x04 00004e79: MSTORE 00004e7a: PUSH1 0x24 00004e7c: PUSH1 0x00 00004e7e: REVERT 00004e7f: JUMPDEST 00004e80: POP 00004e81: DIV 00004e82: SWAP1 00004e83: JUMP 00004e84: JUMPDEST 00004e85: DUP2 00004e86: DUP2 00004e87: SUB 00004e88: DUP2 00004e89: DUP2 00004e8a: GT 00004e8b: ISZERO 00004e8c: PUSH2 0x0a68 00004e8f: JUMPI 00004e90: PUSH2 0x0a68 00004e93: PUSH2 0x4e22 00004e96: JUMP 00004e97: JUMPDEST 00004e98: DUP4 00004e99: DUP2 00004e9a: MSTORE 00004e9b: PUSH1 0x80 00004e9d: DUP2 00004e9e: ADD 00004e9f: PUSH1 0x40 00004ea1: DUP5 00004ea2: PUSH1 0x20 00004ea4: DUP5 00004ea5: ADD 00004ea6: CALLDATACOPY 00004ea7: DUP3 00004ea8: PUSH1 0x60 00004eaa: DUP4 00004eab: ADD 00004eac: MSTORE 00004ead: SWAP5 00004eae: SWAP4 00004eaf: POP 00004eb0: POP 00004eb1: POP 00004eb2: POP 00004eb3: JUMP 00004eb4: JUMPDEST 00004eb5: PUSH1 0x00 00004eb7: PUSH1 0x20 00004eb9: DUP3 00004eba: DUP5 00004ebb: SUB 00004ebc: SLT 00004ebd: ISZERO 00004ebe: PUSH2 0x4ec6 00004ec1: JUMPI 00004ec2: PUSH1 0x00 00004ec4: DUP1 00004ec5: REVERT 00004ec6: JUMPDEST 00004ec7: POP 00004ec8: MLOAD 00004ec9: SWAP2 00004eca: SWAP1 00004ecb: POP 00004ecc: JUMP 00004ecd: JUMPDEST 00004ece: PUSH1 0x00 00004ed0: PUSH1 0x20 00004ed2: DUP3 00004ed3: DUP5 00004ed4: SUB 00004ed5: SLT 00004ed6: ISZERO 00004ed7: PUSH2 0x4edf 00004eda: JUMPI 00004edb: PUSH1 0x00 00004edd: DUP1 00004ede: REVERT 00004edf: JUMPDEST 00004ee0: DUP2 00004ee1: MLOAD 00004ee2: PUSH2 0x42d6 00004ee5: DUP2 00004ee6: PUSH2 0x46e2 00004ee9: JUMP 00004eea: JUMPDEST 00004eeb: PUSH4 0x4e487b71 00004ef0: PUSH1 0xe0 00004ef2: SHL 00004ef3: PUSH1 0x00 00004ef5: MSTORE 00004ef6: PUSH1 0x32 00004ef8: PUSH1 0x04 00004efa: MSTORE 00004efb: PUSH1 0x24 00004efd: PUSH1 0x00 00004eff: REVERT 00004f00: JUMPDEST 00004f01: PUSH1 0x00 00004f03: PUSH1 0x01 00004f05: DUP3 00004f06: ADD 00004f07: PUSH2 0x4f12 00004f0a: JUMPI 00004f0b: PUSH2 0x4f12 00004f0e: PUSH2 0x4e22 00004f11: JUMP 00004f12: JUMPDEST 00004f13: POP 00004f14: PUSH1 0x01 00004f16: ADD 00004f17: SWAP1 00004f18: JUMP 00004f19: JUMPDEST 00004f1a: PUSH1 0x00 00004f1c: PUSH1 0x20 00004f1e: DUP3 00004f1f: DUP5 00004f20: SUB 00004f21: SLT 00004f22: ISZERO 00004f23: PUSH2 0x4f2b 00004f26: JUMPI 00004f27: PUSH1 0x00 00004f29: DUP1 00004f2a: REVERT 00004f2b: JUMPDEST 00004f2c: DUP2 00004f2d: MLOAD 00004f2e: DUP1 00004f2f: ISZERO 00004f30: ISZERO 00004f31: DUP2 00004f32: EQ 00004f33: PUSH2 0x42d6 00004f36: JUMPI 00004f37: PUSH1 0x00 00004f39: DUP1 00004f3a: REVERT 00004f3b: JUMPDEST 00004f3c: PUSH1 0x60 00004f3e: DUP1 00004f3f: DUP3 00004f40: MSTORE 00004f41: DUP2 00004f42: ADD 00004f43: DUP5 00004f44: SWAP1 00004f45: MSTORE 00004f46: PUSH1 0x00 00004f48: DUP6 00004f49: PUSH1 0x80 00004f4b: DUP4 00004f4c: ADD 00004f4d: DUP3 00004f4e: JUMPDEST 00004f4f: DUP8 00004f50: DUP2 00004f51: LT 00004f52: ISZERO 00004f53: PUSH2 0x4f7e 00004f56: JUMPI 00004f57: DUP3 00004f58: CALLDATALOAD 00004f59: PUSH2 0x4f61 00004f5c: DUP2 00004f5d: PUSH2 0x46e2 00004f60: JUMP 00004f61: JUMPDEST 00004f62: PUSH1 0x01 00004f64: PUSH1 0x01 00004f66: PUSH1 0xa0 00004f68: SHL 00004f69: SUB 00004f6a: AND 00004f6b: DUP3 00004f6c: MSTORE 00004f6d: PUSH1 0x20 00004f6f: SWAP3 00004f70: DUP4 00004f71: ADD 00004f72: SWAP3 00004f73: SWAP1 00004f74: SWAP2 00004f75: ADD 00004f76: SWAP1 00004f77: PUSH1 0x01 00004f79: ADD 00004f7a: PUSH2 0x4f4e 00004f7d: JUMP 00004f7e: JUMPDEST 00004f7f: POP 00004f80: PUSH1 0x20 00004f82: SWAP2 00004f83: POP 00004f84: DUP4 00004f85: DUP2 00004f86: SUB 00004f87: DUP3 00004f88: DUP6 00004f89: ADD 00004f8a: MSTORE 00004f8b: DUP1 00004f8c: DUP7 00004f8d: MLOAD 00004f8e: DUP1 00004f8f: DUP4 00004f90: MSTORE 00004f91: DUP4 00004f92: DUP4 00004f93: ADD 00004f94: SWAP2 00004f95: POP 00004f96: DUP4 00004f97: DUP9 00004f98: ADD 00004f99: SWAP3 00004f9a: POP 00004f9b: PUSH1 0x00 00004f9d: JUMPDEST 00004f9e: DUP2 00004f9f: DUP2 00004fa0: LT 00004fa1: ISZERO 00004fa2: PUSH2 0x4fb9 00004fa5: JUMPI 00004fa6: DUP4 00004fa7: MLOAD 00004fa8: DUP4 00004fa9: MSTORE 00004faa: SWAP3 00004fab: DUP5 00004fac: ADD 00004fad: SWAP3 00004fae: SWAP2 00004faf: DUP5 00004fb0: ADD 00004fb1: SWAP2 00004fb2: PUSH1 0x01 00004fb4: ADD 00004fb5: PUSH2 0x4f9d 00004fb8: JUMP 00004fb9: JUMPDEST 00004fba: POP 00004fbb: POP 00004fbc: DUP1 00004fbd: SWAP4 00004fbe: POP 00004fbf: POP 00004fc0: POP 00004fc1: POP 00004fc2: DUP3 00004fc3: PUSH1 0x40 00004fc5: DUP4 00004fc6: ADD 00004fc7: MSTORE 00004fc8: SWAP6 00004fc9: SWAP5 00004fca: POP 00004fcb: POP 00004fcc: POP 00004fcd: POP 00004fce: POP 00004fcf: JUMP 00004fd0: JUMPDEST 00004fd1: PUSH1 0x00 00004fd3: JUMPDEST 00004fd4: DUP4 00004fd5: DUP2 00004fd6: LT 00004fd7: ISZERO 00004fd8: PUSH2 0x4feb 00004fdb: JUMPI 00004fdc: DUP2 00004fdd: DUP2 00004fde: ADD 00004fdf: MLOAD 00004fe0: DUP4 00004fe1: DUP3 00004fe2: ADD 00004fe3: MSTORE 00004fe4: PUSH1 0x20 00004fe6: ADD 00004fe7: PUSH2 0x4fd3 00004fea: JUMP 00004feb: JUMPDEST 00004fec: POP 00004fed: POP 00004fee: PUSH1 0x00 00004ff0: SWAP2 00004ff1: ADD 00004ff2: MSTORE 00004ff3: JUMP 00004ff4: JUMPDEST 00004ff5: PUSH1 0x00 00004ff7: DUP2 00004ff8: MLOAD 00004ff9: DUP1 00004ffa: DUP5 00004ffb: MSTORE 00004ffc: PUSH2 0x500c 00004fff: DUP2 00005000: PUSH1 0x20 00005002: DUP7 00005003: ADD 00005004: PUSH1 0x20 00005006: DUP7 00005007: ADD 00005008: PUSH2 0x4fd0 0000500b: JUMP 0000500c: JUMPDEST 0000500d: PUSH1 0x1f 0000500f: ADD 00005010: PUSH1 0x1f 00005012: NOT 00005013: AND 00005014: SWAP3 00005015: SWAP1 00005016: SWAP3 00005017: ADD 00005018: PUSH1 0x20 0000501a: ADD 0000501b: SWAP3 0000501c: SWAP2 0000501d: POP 0000501e: POP 0000501f: JUMP 00005020: JUMPDEST 00005021: DUP7 00005022: DUP2 00005023: MSTORE 00005024: PUSH1 0x40 00005026: DUP7 00005027: PUSH1 0x20 00005029: DUP4 0000502a: ADD 0000502b: CALLDATACOPY 0000502c: DUP5 0000502d: PUSH1 0x60 0000502f: DUP3 00005030: ADD 00005031: MSTORE 00005032: PUSH1 0x01 00005034: PUSH1 0x01 00005036: PUSH1 0xa0 00005038: SHL 00005039: SUB 0000503a: DUP5 0000503b: AND 0000503c: PUSH1 0x80 0000503e: DUP3 0000503f: ADD 00005040: MSTORE 00005041: DUP3 00005042: PUSH1 0xa0 00005044: DUP3 00005045: ADD 00005046: MSTORE 00005047: PUSH1 0xe0 00005049: PUSH1 0xc0 0000504b: DUP3 0000504c: ADD 0000504d: MSTORE 0000504e: PUSH1 0x00 00005050: PUSH2 0x505c 00005053: PUSH1 0xe0 00005055: DUP4 00005056: ADD 00005057: DUP5 00005058: PUSH2 0x4ff4 0000505b: JUMP 0000505c: JUMPDEST 0000505d: SWAP9 0000505e: SWAP8 0000505f: POP 00005060: POP 00005061: POP 00005062: POP 00005063: POP 00005064: POP 00005065: POP 00005066: POP 00005067: JUMP 00005068: JUMPDEST 00005069: DUP2 0000506a: DUP4 0000506b: MSTORE 0000506c: DUP2 0000506d: DUP2 0000506e: PUSH1 0x20 00005070: DUP6 00005071: ADD 00005072: CALLDATACOPY 00005073: POP 00005074: PUSH1 0x00 00005076: DUP3 00005077: DUP3 00005078: ADD 00005079: PUSH1 0x20 0000507b: SWAP1 0000507c: DUP2 0000507d: ADD 0000507e: SWAP2 0000507f: SWAP1 00005080: SWAP2 00005081: MSTORE 00005082: PUSH1 0x1f 00005084: SWAP1 00005085: SWAP2 00005086: ADD 00005087: PUSH1 0x1f 00005089: NOT 0000508a: AND 0000508b: SWAP1 0000508c: SWAP2 0000508d: ADD 0000508e: ADD 0000508f: SWAP1 00005090: JUMP 00005091: JUMPDEST 00005092: DUP9 00005093: DUP2 00005094: MSTORE 00005095: PUSH1 0x40 00005097: DUP9 00005098: PUSH1 0x20 0000509a: DUP4 0000509b: ADD 0000509c: CALLDATACOPY 0000509d: DUP7 0000509e: PUSH1 0x60 000050a0: DUP3 000050a1: ADD 000050a2: MSTORE 000050a3: PUSH1 0xe0 000050a5: PUSH1 0x80 000050a7: DUP3 000050a8: ADD 000050a9: MSTORE 000050aa: PUSH1 0x00 000050ac: PUSH2 0x50b9 000050af: PUSH1 0xe0 000050b1: DUP4 000050b2: ADD 000050b3: DUP8 000050b4: DUP10 000050b5: PUSH2 0x5068 000050b8: JUMP 000050b9: JUMPDEST 000050ba: DUP6 000050bb: PUSH1 0xa0 000050bd: DUP5 000050be: ADD 000050bf: MSTORE 000050c0: DUP3 000050c1: DUP2 000050c2: SUB 000050c3: PUSH1 0xc0 000050c5: DUP5 000050c6: ADD 000050c7: MSTORE 000050c8: PUSH2 0x50d2 000050cb: DUP2 000050cc: DUP6 000050cd: DUP8 000050ce: PUSH2 0x5068 000050d1: JUMP 000050d2: JUMPDEST 000050d3: SWAP12 000050d4: SWAP11 000050d5: POP 000050d6: POP 000050d7: POP 000050d8: POP 000050d9: POP 000050da: POP 000050db: POP 000050dc: POP 000050dd: POP 000050de: POP 000050df: POP 000050e0: JUMP 000050e1: JUMPDEST 000050e2: PUSH1 0x00 000050e4: PUSH1 0x01 000050e6: PUSH1 0x01 000050e8: PUSH1 0xa0 000050ea: SHL 000050eb: SUB 000050ec: DUP1 000050ed: DUP9 000050ee: AND 000050ef: DUP4 000050f0: MSTORE 000050f1: DUP1 000050f2: DUP8 000050f3: AND 000050f4: PUSH1 0x20 000050f6: DUP5 000050f7: ADD 000050f8: MSTORE 000050f9: POP 000050fa: DUP5 000050fb: PUSH1 0x40 000050fd: DUP4 000050fe: ADD 000050ff: MSTORE 00005100: DUP4 00005101: PUSH1 0x60 00005103: DUP4 00005104: ADD 00005105: MSTORE 00005106: PUSH1 0xa0 00005108: PUSH1 0x80 0000510a: DUP4 0000510b: ADD 0000510c: MSTORE 0000510d: PUSH2 0x460f 00005110: PUSH1 0xa0 00005112: DUP4 00005113: ADD 00005114: DUP5 00005115: PUSH2 0x4ff4 00005118: JUMP 00005119: JUMPDEST 0000511a: PUSH1 0x00 0000511c: DUP1 0000511d: DUP4 0000511e: CALLDATALOAD 0000511f: PUSH1 0x1e 00005121: NOT 00005122: DUP5 00005123: CALLDATASIZE 00005124: SUB 00005125: ADD 00005126: DUP2 00005127: SLT 00005128: PUSH2 0x5130 0000512b: JUMPI 0000512c: PUSH1 0x00 0000512e: DUP1 0000512f: REVERT 00005130: JUMPDEST 00005131: DUP4 00005132: ADD 00005133: DUP1 00005134: CALLDATALOAD 00005135: SWAP2 00005136: POP 00005137: PUSH8 0xffffffffffffffff 00005140: DUP3 00005141: GT 00005142: ISZERO 00005143: PUSH2 0x514b 00005146: JUMPI 00005147: PUSH1 0x00 00005149: DUP1 0000514a: REVERT 0000514b: JUMPDEST 0000514c: PUSH1 0x20 0000514e: ADD 0000514f: SWAP2 00005150: POP 00005151: CALLDATASIZE 00005152: DUP2 00005153: SWAP1 00005154: SUB 00005155: DUP3 00005156: SGT 00005157: ISZERO 00005158: PUSH2 0x431b 0000515b: JUMPI 0000515c: PUSH1 0x00 0000515e: DUP1 0000515f: REVERT 00005160: JUMPDEST 00005161: PUSH1 0x20 00005163: DUP1 00005164: DUP3 00005165: MSTORE 00005166: PUSH1 0x2b 00005168: SWAP1 00005169: DUP3 0000516a: ADD 0000516b: MSTORE 0000516c: PUSH32 0x496e697469616c697a61626c653a20636f6e7472616374206973206e6f742069 0000518d: PUSH1 0x40 0000518f: DUP3 00005190: ADD 00005191: MSTORE 00005192: PUSH11 0x6e697469616c697a696e67 0000519e: PUSH1 0xa8 000051a0: SHL 000051a1: PUSH1 0x60 000051a3: DUP3 000051a4: ADD 000051a5: MSTORE 000051a6: PUSH1 0x80 000051a8: ADD 000051a9: SWAP1 000051aa: JUMP 000051ab: JUMPDEST 000051ac: PUSH32 0x416363657373436f6e74726f6c3a206163636f756e7420000000000000000000 000051cd: DUP2 000051ce: MSTORE 000051cf: PUSH1 0x00 000051d1: DUP4 000051d2: MLOAD 000051d3: PUSH2 0x51e3 000051d6: DUP2 000051d7: PUSH1 0x17 000051d9: DUP6 000051da: ADD 000051db: PUSH1 0x20 000051dd: DUP9 000051de: ADD 000051df: PUSH2 0x4fd0 000051e2: JUMP 000051e3: JUMPDEST 000051e4: PUSH32 0x206973206d697373696e6720726f6c6520000000000000000000000000000000 00005205: PUSH1 0x17 00005207: SWAP2 00005208: DUP5 00005209: ADD 0000520a: SWAP2 0000520b: DUP3 0000520c: ADD 0000520d: MSTORE 0000520e: DUP4 0000520f: MLOAD 00005210: PUSH2 0x5220 00005213: DUP2 00005214: PUSH1 0x28 00005216: DUP5 00005217: ADD 00005218: PUSH1 0x20 0000521a: DUP9 0000521b: ADD 0000521c: PUSH2 0x4fd0 0000521f: JUMP 00005220: JUMPDEST 00005221: ADD 00005222: PUSH1 0x28 00005224: ADD 00005225: SWAP5 00005226: SWAP4 00005227: POP 00005228: POP 00005229: POP 0000522a: POP 0000522b: JUMP 0000522c: JUMPDEST 0000522d: PUSH1 0x20 0000522f: DUP2 00005230: MSTORE 00005231: PUSH1 0x00 00005233: PUSH2 0x42d6 00005236: PUSH1 0x20 00005238: DUP4 00005239: ADD 0000523a: DUP5 0000523b: PUSH2 0x4ff4 0000523e: JUMP 0000523f: JUMPDEST 00005240: PUSH1 0x00 00005242: DUP2 00005243: PUSH2 0x524e 00005246: JUMPI 00005247: PUSH2 0x524e 0000524a: PUSH2 0x4e22 0000524d: JUMP 0000524e: JUMPDEST 0000524f: POP 00005250: PUSH1 0x00 00005252: NOT 00005253: ADD 00005254: SWAP1 00005255: JUMP 00005256: JUMPDEST 00005257: PUSH4 0x4e487b71 0000525c: PUSH1 0xe0 0000525e: SHL 0000525f: PUSH1 0x00 00005261: MSTORE 00005262: PUSH1 0x21 00005264: PUSH1 0x04 00005266: MSTORE 00005267: PUSH1 0x24 00005269: PUSH1 0x00 0000526b: REVERT 0000526c: JUMPDEST 0000526d: PUSH1 0x00 0000526f: DUP3 00005270: MLOAD 00005271: PUSH2 0x527e 00005274: DUP2 00005275: DUP5 00005276: PUSH1 0x20 00005278: DUP8 00005279: ADD 0000527a: PUSH2 0x4fd0 0000527d: JUMP 0000527e: JUMPDEST 0000527f: SWAP2 00005280: SWAP1 00005281: SWAP2 00005282: ADD 00005283: SWAP3 00005284: SWAP2 00005285: POP 00005286: POP 00005287: JUMP 00005288: INVALID 00005289: ORIGIN 0000528a: GT 0000528b: PUSH4 0xfcbab3ba 00005290: UNKNOWN(0xC8) 00005291: SWAP1 00005292: UNKNOWN(0xD4) 00005293: UNKNOWN(0xFB) 00005294: UNKNOWN(0x1F) 00005295: SUB 00005296: UNKNOWN(0xB2) 00005297: UNKNOWN(0x2C) 00005298: TLOAD 00005299: PUSH12 0xd95bc472ee55584937974a1d 000052a6: UNKNOWN(0xB0) 000052a7: CALLER 000052a8: JUMP 000052a9: LOG2 000052aa: PUSH5 0x6970667358 000052b0: UNKNOWN(0x22) 000052b1: SLT 000052b2: KECCAK256 000052b3: UNKNOWN(0xB7) 000052b4: ADDMOD 000052b5: UNKNOWN(0xBE) 000052b6: UNKNOWN(0x2B) 000052b7: PUSH14 0x39c2ff929067b20374f97f8ba9b4 000052c6: UNKNOWN(0xEF) 000052c7: UNKNOWN(0xE6) 000052c8: PUSH2 0x744c 000052cb: UNKNOWN(0xF7) 000052cc: PUSH12 0x1bdea931cca764736f6c6343 000052d9: STOP 000052da: ADDMOD 000052db: SGT 000052dc: STOP 000052dd: CALLER
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| 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": "0xec8e83c0",
"selector": "0xec8e83c0",
"calldata_variants": [
"0xec8e83c0",
"0xec8e83c00000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf23a6e61",
"selector": "0xf23a6e61",
"calldata_variants": [
"0xf23a6e61",
"0xf23a6e610000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf61e0268",
"selector": "0xf61e0268",
"calldata_variants": [
"0xf61e0268",
"0xf61e02680000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfde7d7e6",
"selector": "0xfde7d7e6",
"calldata_variants": [
"0xfde7d7e6",
"0xfde7d7e60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe364a439",
"selector": "0xe364a439",
"calldata_variants": [
"0xe364a439",
"0xe364a4390000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe895e117",
"selector": "0xe895e117",
"calldata_variants": [
"0xe895e117",
"0xe895e1170000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe8c5c6d3",
"selector": "0xe8c5c6d3",
"calldata_variants": [
"0xe8c5c6d3",
"0xe8c5c6d30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc7e01ad6",
"selector": "0xc7e01ad6",
"calldata_variants": [
"0xc7e01ad6",
"0xc7e01ad60000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 21129,
"type": "tx_origin_used"
}
]
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0x7e282a6d89b926c66b4ac88eecee9c4a9b313ed5b65279edc5576846eb0855aa
call_targets:
0xd8dfc66f21149dda5b6904b9c9bcf3c62db303cd
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x7e282a6d89b926c66b4ac88eecee9c4a9b313ed5b65279edc5576846eb0855aa",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xd8dfc66f21149dda5b6904b9c9bcf3c62db303cd"
],
"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": "0xec8e83c0",
"selector": "0xec8e83c0",
"calldata_variants": [
"0xec8e83c0",
"0xec8e83c00000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf23a6e61",
"selector": "0xf23a6e61",
"calldata_variants": [
"0xf23a6e61",
"0xf23a6e610000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf61e0268",
"selector": "0xf61e0268",
"calldata_variants": [
"0xf61e0268",
"0xf61e02680000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfde7d7e6",
"selector": "0xfde7d7e6",
"calldata_variants": [
"0xfde7d7e6",
"0xfde7d7e60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe364a439",
"selector": "0xe364a439",
"calldata_variants": [
"0xe364a439",
"0xe364a4390000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe895e117",
"selector": "0xe895e117",
"calldata_variants": [
"0xe895e117",
"0xe895e1170000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe8c5c6d3",
"selector": "0xe8c5c6d3",
"calldata_variants": [
"0xe8c5c6d3",
"0xe8c5c6d30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc7e01ad6",
"selector": "0xc7e01ad6",
"calldata_variants": [
"0xc7e01ad6",
"0xc7e01ad60000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2924,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 3629,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 6182,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 15,
"guards_detected": [
{
"pc": 21129,
"type": "tx_origin_used"
}
],
"untrusted_call_count": 15
}
|
| medium | auth | codex | Auto‑liquidation signatures lack domain separation and replay protection | 75 | no | — |
viewevidence_json{
"evidence": "`verifyAutoLiquidationSignature` only hashes `planId`, `apePlanIds`, `price`, `signatureExpiryDate`, and `chainid` before `recover`, with no nonce or contract/action binding.",
"locations": [
"contracts/contracts/main/CyanVaultV2.sol:517",
"contracts/contracts/main/CyanVaultV2.sol:520",
"contracts/contracts/main/CyanVaultV2.sol:529"
],
"recommendation": "Bind signatures to the intended target and action by including the vault address, `paymentPlanAddress`, and an action identifier (e.g., function selector). Add a nonce or a consumed\u2011signature mapping to prevent replay until expiry. Prefer EIP\u2011712 typed data for clearer domain separation.",
"exploit_scenario": "A valid signature can be replayed across different liquidation methods or even different payment plan contracts (on the same chain) because the signed payload omits `paymentPlanAddress`, the vault address, and any action identifier. A CYAN_ROLE caller can reuse a signature intended for one context to authorize another until expiry."
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0x7e282a6d89b926c66b4ac88eecee9c4a9b313ed5b65279edc5576846eb0855aa
call_targets:
0xd8dfc66f21149dda5b6904b9c9bcf3c62db303cd
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x7e282a6d89b926c66b4ac88eecee9c4a9b313ed5b65279edc5576846eb0855aa",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xd8dfc66f21149dda5b6904b9c9bcf3c62db303cd"
],
"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": "0xec8e83c0",
"selector": "0xec8e83c0",
"calldata_variants": [
"0xec8e83c0",
"0xec8e83c00000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf23a6e61",
"selector": "0xf23a6e61",
"calldata_variants": [
"0xf23a6e61",
"0xf23a6e610000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf61e0268",
"selector": "0xf61e0268",
"calldata_variants": [
"0xf61e0268",
"0xf61e02680000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfde7d7e6",
"selector": "0xfde7d7e6",
"calldata_variants": [
"0xfde7d7e6",
"0xfde7d7e60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe364a439",
"selector": "0xe364a439",
"calldata_variants": [
"0xe364a439",
"0xe364a4390000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe895e117",
"selector": "0xe895e117",
"calldata_variants": [
"0xe895e117",
"0xe895e1170000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe8c5c6d3",
"selector": "0xe8c5c6d3",
"calldata_variants": [
"0xe8c5c6d3",
"0xe8c5c6d30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc7e01ad6",
"selector": "0xc7e01ad6",
"calldata_variants": [
"0xc7e01ad6",
"0xc7e01ad60000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2924,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 3629,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 6182,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 15,
"guards_detected": [
{
"pc": 21129,
"type": "tx_origin_used"
}
]
}
|
| low | other | codex | Withdrawal lock can be bypassed by transferring vault tokens | 65 | no | — |
viewevidence_json{
"evidence": "`deposit()` sets `withdrawLocked[cyanWalletAddress]` (lines 181\u2013196) while `withdraw()` only checks `withdrawLocked[msg.sender]` (line 326), with no transfer hook to propagate locks.",
"locations": [
"contracts/contracts/main/CyanVaultV2.sol:181",
"contracts/contracts/main/CyanVaultV2.sol:196",
"contracts/contracts/main/CyanVaultV2.sol:324",
"contracts/contracts/main/CyanVaultV2.sol:326"
],
"recommendation": "Enforce the lock in the vault token itself (block transfers while locked) or update lock metadata on transfers. Alternatively, track locks per deposit or require withdrawals to originate from the wallet address returned by the factory.",
"exploit_scenario": "A user deposits and receives vault tokens in their wallet contract, then transfers those tokens to a fresh address. Because `withdraw()` only checks `withdrawLocked[msg.sender]` and the lock is only set on the original wallet, the new address has no lock and can withdraw immediately, bypassing `_withdrawLockTerm`."
}
|
| info | other | codex | Unchecked ERC20 approve return value during migration | 60 | no | — |
viewevidence_json{
"evidence": "`_currencyToken.approve(mainVaultAddress, REMAINING_AMOUNT);` is called directly without checking its return value.",
"locations": [
"contracts/contracts/main/CyanVaultV2.sol:583",
"contracts/contracts/main/CyanVaultV2.sol:585"
],
"recommendation": "Use `SafeERC20Upgradeable.safeApprove` or `safeIncreaseAllowance`, or check the return value explicitly before proceeding.",
"exploit_scenario": "For non\u2011standard ERC20s that return `false` on `approve` without reverting, the migration flow proceeds without noticing the failure. This can cause unexpected migration reverts when the main vault later calls `transferFrom`, and complicates operational safety."
}
|
| 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": 12
}
|
| 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": 26
}
|