2b03ce69-6667-4e80-a75c-83ddd1a33fc2
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 |
|---|---|---|---|---|
| 30383 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 74482 | artifact.fetch | complete | 1 / 3 | 1 week ago |
| 74483 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 74484 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 74485 | capability.graph | complete | 1 / 3 | 1 week ago |
| 74486 | detector.run | complete | 1 / 3 | 1 week ago |
| 74487 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:1171619] OpenAI Codex v0.77.0 (research preview)
[codex:1171619] --------
[codex:1171619] workdir: /tmp/codex-multi-nt9y47fv
[codex:1171619] model: gpt-5.2-codex
[codex:1171619] provider: openai
[codex:1171619] approval: never
[codex:1171619] sandbox: read-only
[codex:1171619] reasoning effort: xhigh
[codex:1171619] reasoning summaries: auto
[codex:1171619] session id: 019b67f9-5bea-78f1-ad31-18b1979955cb
[codex:1171619] --------
[codex:1171619] user
[codex:1171619] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:1171619] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:1171619] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:1171619]
[codex:1171619] Scope rules:
[codex:1171619] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:1171619] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:1171619]
[codex:1171619] Output MUST be valid JSON matching the provided schema.
[codex:1171619] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:1171619] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:1171619]
[codex:1171619] Output constraints (IMPORTANT):
[codex:1171619] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:1171619] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:1171619] mcp startup: no servers
[codex:1171619]
[codex:1171619] thinking
[codex:1171619] **Reading AUDIT_BUNDLE file**
[codex:1171619] exec
[codex:1171619] /bin/bash -lc ls in /tmp/codex-multi-nt9y47fv succeeded in 6ms:
[codex:1171619] AUDIT_BUNDLE.txt
[codex:1171619] codex-output-schema.json
[codex:1171619] contracts
[codex:1171619]
[codex:1171619] thinking
[codex:1171619] **Reading the bundle**
[codex:1171619] exec
[codex:1171619] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-nt9y47fv succeeded in 6ms:
[codex:1171619] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:1171619]
[codex:1171619] ================================================================================
[codex:1171619] FILE: contracts/@openzeppelin/contracts/access/AccessControl.sol
[codex:1171619] ================================================================================
[codex:1171619] // SPDX-License-Identifier: MIT
[codex:1171619] // OpenZeppelin Contracts (last updated v4.7.0) (access/AccessControl.sol)
[codex:1171619]
[codex:1171619] pragma solidity ^0.8.0;
[codex:1171619]
[codex:1171619] import "./IAccessControl.sol";
[codex:1171619] import "../utils/Context.sol";
[codex:1171619] import "../utils/Strings.sol";
[codex:1171619] import "../utils/introspection/ERC165.sol";
[codex:1171619]
[codex:1171619] /**
[codex:1171619] * @dev Contract module that allows children to implement role-based access
[codex:1171619] * control mechanisms. This is a lightweight version that doesn't allow enumerating role
[codex:1171619] * members except through off-chain means by accessing the contract event logs. Some
[codex:1171619] * applications may benefit from on-chain enumerability, for those cases see
[codex:1171619]
[codex:1171619] thinking
[codex:1171619] **Planning full audit bundle inspection**
[codex:1171619] exec
[codex:1171619] /bin/bash -lc 'rg "''^FILE:" -n AUDIT_BUNDLE.txt' in /tmp/codex-multi-nt9y47fv succeeded in 15ms:
[codex:1171619] 4:FILE: contracts/@openzeppelin/contracts/access/AccessControl.sol
[codex:1171619] 255:FILE: contracts/@openzeppelin/contracts/access/IAccessControl.sol
[codex:1171619] 347:FILE: contracts/@openzeppelin/contracts/token/ERC20/IERC20.sol
[codex:1171619] 433:FILE: contracts/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol
[codex:1171619] 497:FILE: contracts/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol
[codex:1171619] 617:FILE: contracts/@openzeppelin/contracts/utils/Address.sol
[codex:1171619] 843:FILE: contracts/@openzeppelin/contracts/utils/Context.sol
[codex:1171619] 871:FILE: contracts/@openzeppelin/contracts/utils/Strings.sol
[codex:1171619] 950:FILE: contracts/@openzeppelin/contracts/utils/introspection/ERC165.sol
[codex:1171619] 983:FILE: contracts/@openzeppelin/contracts/utils/introspection/IERC165.sol
[codex:1171619] 1012:FILE: contracts/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol
[codex:1171619] 1277:FILE: contracts/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.sol
[codex:1171619] 1369:FILE: contracts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol
[codex:1171619] 1468:FILE: contracts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol
[codex:1171619] 1638:FILE: contracts/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol
[codex:1171619] 1759:FILE: contracts/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol
[codex:1171619] 1852:FILE: contracts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol
[codex:1171619] 2100:FILE: contracts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol
[codex:1171619] 2145:FILE: contracts/@openzeppelin/contracts-upgradeable/utils/StringsUpgradeable.sol
[codex:1171619] 2234:FILE: contracts/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol
[codex:1171619]
[codex:1171619] thinking
[codex:1171619] **Extracting first-party contract files**
[codex:1171619] exec
[codex:1171619] /bin/bash -lc "sed -n '3677,3865p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-nt9y47fv succeeded in 6ms:
[codex:1171619] FILE: contracts/contracts/base/tokenservice/TokenSupport.sol
[codex:1171619] ================================================================================
[codex:1171619] // SPDX-License-Identifier: UNLICENSED
[codex:1171619] pragma solidity ^0.8.19;
[codex:1171619]
[codex:1171619] import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
[codex:1171619]
[codex:1171619] /// @title TokenSupport
[codex:1171619] /// @dev Abstract contract providing support for managing tokens on a bridge
[codex:1171619] abstract contract TokenSupport is OwnableUpgradeable {
[codex:1171619]
[codex:1171619] /// @notice Emitted when the vault of a token is updated
[codex:1171619] /// @param token address of token
[codex:1171619] /// @param oldVault address of old vault
[codex:1171619] /// @param newVault address of new vault
[codex:1171619] event VaultUpdated(address token, address oldVault, address newVault);
[codex:1171619]
[codex:1171619] /// @notice Chain ID of the destination chain for token support
[codex:1171619] uint256 public destChainId;
[codex:1171619]
[codex:1171619]
[codex:1171619] thinking
[codex:1171619] **Preparing for next pausable task**
[codex:1171619] exec
[codex:1171619] /bin/bash -lc "sed -n '3866,3907p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-nt9y47fv succeeded in 5ms:
[codex:1171619] FILE: contracts/contracts/common/Pausable.sol
[codex:1171619] ================================================================================
[codex:1171619] // SPDX-License-Identifier: UNLICENSED
[codex:1171619] pragma solidity ^0.8.19;
[codex:1171619]
[codex:1171619] import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
[codex:1171619] import {PausableUpgradeable} from "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol";
[codex:1171619]
[codex:1171619]
[codex:1171619] /**
[codex:1171619] * @title Pausable
[codex:1171619] * @dev Base contract which allows children to implement an emergency stop mechanism.
[codex:1171619] */
[codex:1171619] abstract contract Pausable is PausableUpgradeable, OwnableUpgradeable {
[codex:1171619]
[codex:1171619] // function Pausable_init() public initializer {
[codex:1171619] // __Ownable_init_unchained();
[codex:1171619] // __Pausable_init_unchained();
[codex:1171619] // }
[codex:1171619] /**
[codex:1171619]
[codex:1171619] thinking
[codex:1171619] **Reviewing interface components**
[codex:1171619] exec
[codex:1171619] /bin/bash -lc "sed -n '3908,4018p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-nt9y47fv succeeded in 5ms:
[codex:1171619] FILE: contracts/contracts/common/interface/bridge/IBridge.sol
[codex:1171619] ================================================================================
[codex:1171619] // SPDX-License-Identifier: UNLICENSED
[codex:1171619] pragma solidity ^0.8.19;
[codex:1171619]
[codex:1171619] import {PacketLibrary} from "../../libraries/PacketLibrary.sol";
[codex:1171619]
[codex:1171619] /// @title IBridge
[codex:1171619] /// @dev Interface for the Bridge contract
[codex:1171619] interface IBridge {
[codex:1171619]
[codex:1171619] /// @notice Emitted when a packet is dispatched from the Bridge
[codex:1171619] /// @param packet The dispatched packet
[codex:1171619] event PacketDispatched(PacketLibrary.OutPacket packet, bytes data);
[codex:1171619]
[codex:1171619] /// @notice Emitted when a packet arrives at the Bridge
[codex:1171619] /// @param packet The arrived packet
[codex:1171619] event PacketArrived(PacketLibrary.InPacket packet);
[codex:1171619]
[codex:1171619] function isAttestor(address signer) external view returns (bool);
[codex:1171619]
[codex:1171619] thinking
[codex:1171619] **Switching to PacketLibrary**
[codex:1171619] exec
[codex:1171619] /bin/bash -lc "sed -n '4019,4135p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-nt9y47fv succeeded in 5ms:
[codex:1171619] FILE: contracts/contracts/common/libraries/PacketLibrary.sol
[codex:1171619] ================================================================================
[codex:1171619] // SPDX-License-Identifier: UNLICENSED
[codex:1171619] pragma solidity ^0.8.19;
[codex:1171619]
[codex:1171619] /// @title PacketLibrary
[codex:1171619] /// @dev A library for handling packet structures and hashing.
[codex:1171619] library PacketLibrary {
[codex:1171619]
[codex:1171619] /// @notice The version of the contract
[codex:1171619] uint256 constant VERSION_PUBLIC_TRANSFER = 1;
[codex:1171619] uint256 constant VERSION_PUBLIC_TRANSFER_RELAYER = 2;
[codex:1171619] uint256 constant VERSION_PUBLIC_TRANSFER_PREDICATE = 3;
[codex:1171619] uint256 constant VERSION_PUBLIC_TRANSFER_PREDICATE_RELAYER = 4;
[codex:1171619]
[codex:1171619] uint256 constant VERSION_PRIVATE_TRANSFER = 11;
[codex:1171619] uint256 constant VERSION_PRIVATE_TRANSFER_RELAYER = 12;
[codex:1171619] uint256 constant VERSION_PRIVATE_TRANSFER_PREDICATE = 13;
[codex:1171619] uint256 constant VERSION_PRIVATE_TRANSFER_PREDICATE_RELAYER = 14;
[codex:1171619]
[codex:1171619]
[codex:1171619] thinking
[codex:1171619] **Advancing to next item**
[codex:1171619] exec
[codex:1171619] /bin/bash -lc "sed -n '4136,4304p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-nt9y47fv succeeded in 5ms:
[codex:1171619] FILE: contracts/contracts/main/Holding.sol
[codex:1171619] ================================================================================
[codex:1171619] // SPDX-License-Identifier: UNLICENSED
[codex:1171619] pragma solidity ^0.8.19;
[codex:1171619]
[codex:1171619] import {IIERC20} from "../common/interface/tokenservice/IIERC20.sol";
[codex:1171619] import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
[codex:1171619] import {Pausable} from "../common/Pausable.sol";
[codex:1171619] import {ReentrancyGuardUpgradeable} from "@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol";
[codex:1171619] import {Upgradeable} from "@thirdweb-dev/contracts/extension/Upgradeable.sol";
[codex:1171619] import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1171619]
[codex:1171619] /// @title A contract that implements OwnableUpgradeable, ReentrancyGuardUpgradeable, Pausable, Initializable and Upgradeable Contracts for Holding token
[codex:1171619] contract Holding is OwnableUpgradeable, Pausable, ReentrancyGuardUpgradeable, Upgradeable {
[codex:1171619]
[codex:1171619] using SafeERC20 for IIERC20;
[codex:1171619]
[codex:1171619] /// @notice Event triggered when tokens are locked
[codex:1171619] /// @param account The address of the account whose tokens are locked
[codex:1171619] /// @param token The address of token which is locked
[codex:1171619]
[codex:1171619] thinking
[codex:1171619] **Moving on to FeeCollector**
[codex:1171619] exec
[codex:1171619] /bin/bash -lc "sed -n '4305,4420p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-nt9y47fv succeeded in 6ms:
[codex:1171619] FILE: contracts/contracts/main/tokenservice/FeeCollector.sol
[codex:1171619] ================================================================================
[codex:1171619] // SPDX-License-Identifier: UNLICENSED
[codex:1171619] pragma solidity ^0.8.19;
[codex:1171619]
[codex:1171619] import {AccessControlUpgradeable} from "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol";
[codex:1171619] import {Initializable} from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol";
[codex:1171619] import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1171619]
[codex:1171619] import {IIERC20} from "../../common/interface/tokenservice/IIERC20.sol";
[codex:1171619] import {PacketLibrary} from "../../common/libraries/PacketLibrary.sol";
[codex:1171619]
[codex:1171619] /// @title FeeCollector Contract
[codex:1171619] /// @dev Handles platform and executor fees logic with transparent upgrade capability
[codex:1171619] contract FeeCollector is Initializable, AccessControlUpgradeable {
[codex:1171619] using SafeERC20 for IIERC20;
[codex:1171619]
[codex:1171619] bytes32 public constant TOKEN_SERVICE_ROLE = keccak256("TOKEN_SERVICE_ROLE");
[codex:1171619]
[codex:1171619] // Storage variables
[codex:1171619]
[codex:1171619] thinking
[codex:1171619] **Starting on TokenService**
[codex:1171619] exec
[codex:1171619] /bin/bash -lc "sed -n '4421,4571p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-nt9y47fv succeeded in 5ms:
[codex:1171619] FILE: contracts/contracts/main/tokenservice/TokenService.sol
[codex:1171619] ================================================================================
[codex:1171619] // SPDX-License-Identifier: UNLICENSED
[codex:1171619] pragma solidity ^0.8.19;
[codex:1171619]
[codex:1171619] import {IBridge} from "../../common/interface/bridge/IBridge.sol";
[codex:1171619] import {IBlackListService} from "../../common/interface/tokenservice/IBlackListService.sol";
[codex:1171619] import {IIERC20} from "../../common/interface/tokenservice/IIERC20.sol";
[codex:1171619] import {PacketLibrary} from "../../common/libraries/PacketLibrary.sol";
[codex:1171619] import {Pausable} from "../../common/Pausable.sol";
[codex:1171619] import {TokenSupport} from "../../base/tokenservice/TokenSupport.sol";
[codex:1171619] import {Holding} from "../Holding.sol";
[codex:1171619] import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
[codex:1171619] import {ReentrancyGuardUpgradeable} from "@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol";
[codex:1171619] import {Upgradeable} from "@thirdweb-dev/contracts/extension/Upgradeable.sol";
[codex:1171619] import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1171619]
[codex:1171619] /// @title TokenService Contract
[codex:1171619] /// @dev This contract implements OwnableUpgradeable, Pausable, TokenSupport, ReentrancyGuardUpgradeable, and Upgradeable contracts.
[codex:1171619] contract TokenService is
[codex:1171619]
[codex:1171619] thinking
[codex:1171619] **Preparing to extract specific service sections**
[codex:1171619] exec
[codex:1171619] /bin/bash -lc "sed -n '4572,4950p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-nt9y47fv succeeded in 5ms:
[codex:1171619] FILE: contracts/contracts/main/tokenservice/TokenServiceV2.sol
[codex:1171619] ================================================================================
[codex:1171619] // SPDX-License-Identifier: UNLICENSED
[codex:1171619] pragma solidity ^0.8.19;
[codex:1171619]
[codex:1171619] import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1171619] import {IIERC20} from "../../common/interface/tokenservice/IIERC20.sol";
[codex:1171619] import {TokenService} from "../../main/tokenservice/TokenService.sol";
[codex:1171619] import {PredicateMessage} from "@predicate/contracts/src/interfaces/IPredicateClient.sol";
[codex:1171619] import {PredicateService} from "../../main/tokenservice/predicate/PredicateService.sol";
[codex:1171619]
[codex:1171619] /// @title TokenServiceV2 Contract
[codex:1171619] /// @dev Inherits TokenService and PredicateService for predicate-based authorization
[codex:1171619] contract TokenServiceV2 is TokenService {
[codex:1171619] using SafeERC20 for IIERC20;
[codex:1171619]
[codex:1171619] /// @notice Sets the VerulinkPredicate contract for predicate-based authorization, callable by owner only
[codex:1171619] /// @param _predicateservice Address of the VerulinkPredicate contract
[codex:1171619] function setPredicateService(
[codex:1171619] PredicateService _predicateservice
[codex:1171619]
[codex:1171619] thinking
[codex:1171619] **Reading PredicateService section**
[codex:1171619] exec
[codex:1171619] /bin/bash -lc "sed -n '4950,5032p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-nt9y47fv succeeded in 5ms:
[codex:1171619] FILE: contracts/contracts/main/tokenservice/predicate/PredicateService.sol
[codex:1171619] ================================================================================
[codex:1171619] // SPDX-License-Identifier: UNLICENSED
[codex:1171619] pragma solidity ^0.8.19;
[codex:1171619]
[codex:1171619] import {PredicateClient} from "@predicate/contracts/src/mixins/PredicateClient.sol";
[codex:1171619] import {PredicateMessage} from "@predicate/contracts/src/interfaces/IPredicateClient.sol";
[codex:1171619] import {IPredicateManager} from "@predicate/contracts/src/interfaces/IPredicateManager.sol";
[codex:1171619] import {AccessControl} from "@openzeppelin/contracts/access/AccessControl.sol";
[codex:1171619]
[codex:1171619] /// @title PredicateService
[codex:1171619] /// @notice A contract for predicate-based authorization
[codex:1171619] /// @dev Inherits PredicateClient and provides verification functions for secure transactions.
[codex:1171619] contract PredicateService is PredicateClient, AccessControl {
[codex:1171619]
[codex:1171619] bytes32 public constant SERVICE_ROLE =
[codex:1171619] 0xd8a7a79547af723ee3e12b59a480111268d8969c634e1a34a144d2c8b91d635b;
[codex:1171619]
[codex:1171619] /// @notice Constructor sets the deployer as the DEFAULT_ADMIN_ROLE and assigns SERVICE_ROLE
[codex:1171619] constructor(address _serviceManagerAddress, string memory _policyID) {
[codex:1171619]
[codex:1171619]
[codex:1171619] thinking
[codex:1171619] **Reviewing detailed contract audit findings**
[codex:1171619]
[codex:1171619] I've carefully analyzed the audit bundle's first-party segments and key contracts like TokenServiceV3, Holding, and FeeCollector, focusing on common vulnerabilities such as reentrancy, access control, and upgradeability. There are nuanced issues like misordered storage gaps risking upgrade safety, potential feeCollector misconfigurations causing reverts, and a significant concern around PacketLibrary’s use of abi.encodePacked with dynamic strings that could enable hash collisions affecting signature validation. These findings reflect a deep dive into contract behaviors, constraints, and possible attack vectors.
[codex:1171619] thinking
[codex:1171619] **Analyzing packet hashing and contract call integrity**
[codex:1171619]
[codex:1171619] I'm examining the PacketLibrary.hash function’s risk from using abi.encodePacked with multiple strings, which could allow collisions and signature forgery. I’m also reviewing how TokenServiceV3 coordinates ETH token handling, predicate service calls, and external calls to Holding and FeeCollector, checking access controls and reentrancy protections. Several configurations might cause call failures or Denial-of-Service but mostly relate to setup rather than code vulnerabilities. The interplay of role permissions and contract interactions is crucial to ensure seamless operation without unintended reverts.
[codex:1171619] exec
[codex:1171619] /bin/bash -lc "rg \"PacketLibrary\\.hash\" -n contracts" in /tmp/codex-multi-nt9y47fv exited 1 in 10ms:
[codex:1171619]
[codex:1171619]
[codex:1171619] thinking
[codex:1171619] **Evaluating potential vulnerabilities in TokenServiceV3 and PacketLibrary**
[codex:1171619] exec
[codex:1171619] /bin/bash -lc 'nl -ba contracts/contracts/common/libraries/PacketLibrary.sol' in /tmp/codex-multi-nt9y47fv succeeded in 25ms:
[codex:1171619] 1 // SPDX-License-Identifier: UNLICENSED
[codex:1171619] 2 pragma solidity ^0.8.19;
[codex:1171619] 3
[codex:1171619] 4 /// @title PacketLibrary
[codex:1171619] 5 /// @dev A library for handling packet structures and hashing.
[codex:1171619] 6 library PacketLibrary {
[codex:1171619] 7
[codex:1171619] 8 /// @notice The version of the contract
[codex:1171619] 9 uint256 constant VERSION_PUBLIC_TRANSFER = 1;
[codex:1171619] 10 uint256 constant VERSION_PUBLIC_TRANSFER_RELAYER = 2;
[codex:1171619] 11 uint256 constant VERSION_PUBLIC_TRANSFER_PREDICATE = 3;
[codex:1171619] 12 uint256 constant VERSION_PUBLIC_TRANSFER_PREDICATE_RELAYER = 4;
[codex:1171619] 13
[codex:1171619] 14 uint256 constant VERSION_PRIVATE_TRANSFER = 11;
[codex:1171619] 15 uint256 constant VERSION_PRIVATE_TRANSFER_RELAYER = 12;
[codex:1171619] 16 uint256 constant VERSION_PRIVATE_TRANSFER_PREDICATE = 13;
[codex:1171619] 17 uint256 constant VERSION_PRIVATE_TRANSFER_PREDICATE_RELAYER = 14;
[codex:1171619] 18
[codex:1171619] 19
[codex:1171619] 20
[codex:1171619]
[codex:1171619] thinking
[codex:1171619] **Checking for hash collision and upgradeability issues**
[codex:1171619] exec
[codex:1171619] /bin/bash -lc 'nl -ba contracts/contracts/main/tokenservice/TokenServiceV2.sol' in /tmp/codex-multi-nt9y47fv succeeded in 6ms:
[codex:1171619] 1 // SPDX-License-Identifier: UNLICENSED
[codex:1171619] 2 pragma solidity ^0.8.19;
[codex:1171619] 3
[codex:1171619] 4 import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1171619] 5 import {IIERC20} from "../../common/interface/tokenservice/IIERC20.sol";
[codex:1171619] 6 import {TokenService} from "../../main/tokenservice/TokenService.sol";
[codex:1171619] 7 import {PredicateMessage} from "@predicate/contracts/src/interfaces/IPredicateClient.sol";
[codex:1171619] 8 import {PredicateService} from "../../main/tokenservice/predicate/PredicateService.sol";
[codex:1171619] 9
[codex:1171619] 10 /// @title TokenServiceV2 Contract
[codex:1171619] 11 /// @dev Inherits TokenService and PredicateService for predicate-based authorization
[codex:1171619] 12 contract TokenServiceV2 is TokenService {
[codex:1171619] 13 using SafeERC20 for IIERC20;
[codex:1171619] 14
[codex:1171619] 15 /// @notice Sets the VerulinkPredicate contract for predicate-based authorization, callable by owner only
[codex:1171619] 16 /// @param _predicateservice Address of the VerulinkPredicate contract
[codex:1171619] 17 function setPredicateService(
[codex:1171619] 18 PredicateService _predicateservice
[codex:1171619] 19 ) external virtual onlyOwner {
[codex:1171619] 20 predicateservice = _predicateservice;
[codex:1171619]
[codex:1171619] thinking
[codex:1171619] **Analyzing potential security concerns in services**
[codex:1171619] exec
[codex:1171619] /bin/bash -lc "sed -n '2943,3050p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-nt9y47fv succeeded in 7ms:
[codex:1171619] FILE: contracts/@predicate/contracts/src/mixins/PredicateClient.sol
[codex:1171619] ================================================================================
[codex:1171619] // SPDX-License-Identifier: MIT
[codex:1171619]
[codex:1171619] pragma solidity ^0.8.12;
[codex:1171619]
[codex:1171619] import {IPredicateManager, Task} from "../interfaces/IPredicateManager.sol";
[codex:1171619] import "../interfaces/IPredicateClient.sol";
[codex:1171619]
[codex:1171619] abstract contract PredicateClient is IPredicateClient {
[codex:1171619] // @notice the storage slot for the PredicateClientStorage struct
[codex:1171619] // @dev keccak256(abi.encode(uint256(keccak256("predicate.storage.PredicateClient")) - 1)) & ~bytes32(uint256(0xff))
[codex:1171619] bytes32 private constant _PREDICATE_CLIENT_STORAGE_SLOT =
[codex:1171619] 0x804776a84f3d03ad8442127b1451e2fbbb6a715c681d6a83c9e9fca787b99300;
[codex:1171619]
[codex:1171619] // @notice retrieves the PredicateClientStorage struct from the configured storage slot
[codex:1171619] function _getPredicateClientStorage() private pure returns (PredicateClientStorage storage $) {
[codex:1171619] assembly {
[codex:1171619] $.slot := _PREDICATE_CLIENT_STORAGE_SLOT
[codex:1171619] }
[codex:1171619]
[codex:1171619] thinking
[codex:1171619] **Analyzing potential vulnerabilities and signature issues**
[codex:1171619]
[codex:1171619] I’m examining how PredicateService validates signatures, especially how encoded signatures might omit parameters like version and data, potentially allowing replay attacks with modified relay data. I’m also looking at various access controls, upgradeability concerns, and subtle logic flaws throughout TokenServiceV3 and related contracts to identify any exploitable security gaps or upgrade risks.
[codex:1171619] exec
[codex:1171619] /bin/bash -lc 'rg "delegatecall" -n contracts/contracts' in /tmp/codex-multi-nt9y47fv exited 1 in 9ms:
[codex:1171619]
[codex:1171619]
[codex:1171619]
[codex:1171619] thinking
[codex:1171619] **Analyzing potential vulnerabilities in token service contracts**
[codex:1171619] thinking
[codex:1171619] **Evaluating release function and access control nuances**
[codex:1171619] exec
[codex:1171619] /bin/bash -lc "rg \"consume\\(\" -n contracts" in /tmp/codex-multi-nt9y47fv succeeded in 10ms:
[codex:1171619] contracts/contracts/common/interface/bridge/IBridge.sol:25: function consume(PacketLibrary.InPacket memory packet, bytes memory signatures) external returns (PacketLibrary.Vote);
[codex:1171619] contracts/contracts/main/tokenservice/TokenServiceV3.sol:288: PacketLibrary.Vote quorum = erc20Bridge.consume(packet, signatures);
[codex:1171619]
[codex:1171619] thinking
[codex:1171619] **Analyzing security and upgradeability findings**
[codex:1171619]
[codex:1171619] I'm reviewing potential risks including a hash collision vulnerability in PacketLibrary that could compromise signature validation, a misplacement of storage gap in TokenServiceV2 affecting upgrade safety, and an accounting flaw in TokenServiceV3 that mishandles fee-on-transfer tokens potentially leading to liquidity drain on bridging. I'll categorize each finding, draft exploit scenarios, and recommend safer coding and upgrade patterns with precise evidence from the codebase.
[codex:1171619] exec
[codex:1171619] /bin/bash -lc "nl -ba contracts/contracts/main/tokenservice/TokenServiceV3.sol | sed -n '150,260p'" in /tmp/codex-multi-nt9y47fv succeeded in 6ms:
[codex:1171619] 150 _transfer(receiver, version, data);
[codex:1171619] 151 }
[codex:1171619] 152
[codex:1171619] 153 /// @notice Transfers ERC20 tokens with predicate authorization
[codex:1171619] 154 /// @param tokenAddress The address of the ERC20 token
[codex:1171619] 155 /// @param amount Amount of tokens to be transferred
[codex:1171619] 156 /// @param receiver The intended receiver of the transferred tokens
[codex:1171619] 157 /// @param predicateMessage Predicate authorization message
[codex:1171619] 158 function transfer(
[codex:1171619] 159 address tokenAddress,
[codex:1171619] 160 uint256 amount,
[codex:1171619] 161 string calldata receiver,
[codex:1171619] 162 PredicateMessage calldata predicateMessage,
[codex:1171619] 163 bool isRelayerOn,
[codex:1171619] 164 bytes calldata data
[codex:1171619] 165 ) external virtual whenNotPaused nonReentrant {
[codex:1171619] 166 require(predicateservice.handleMessage(
[codex:1171619] 167 tokenAddress,
[codex:1171619] 168 amount,
[codex:1171619] 169 receiver,
[codex:1171619]
[codex:1171619] thinking
[codex:1171619] **Creating detailed JSON findings report**
[codex:1171619]
[codex:1171619] I'm working through crafting a structured JSON report capturing three key issues found: a high-severity signature hash collision risk, a medium-severity fee-on-transfer token accounting gap, and a low-severity upgradeability storage gap. I want to clearly state severity, category, exploit scenarios, recommendations, and evidence with paths and line numbers, ensuring all JSON is valid and concise.
[codex:1171619] codex
[codex:1171619] {"no_findings":false,"summary":"Found three issues: collision-prone packet hashing, fee-on-transfer token accounting mismatch, and a misordered storage gap in TokenServiceV2.","findings":[{"severity":"high","category":"auth","title":"Packet hashing uses abi.encodePacked with dynamic strings (collision-prone)","exploit_scenario":"If attestors/bridge signatures are produced over PacketLibrary.hash, an attacker can craft two different packets with colliding packed encodings (e.g., varying string fields like sourceTokenService.addr or senderAddress) and reuse valid signatures to authorize a different packet, potentially redirecting withdrawals or altering packet fields without new signatures.","recommendation":"Hash packets with length‑delimited encoding (e.g., keccak256(abi.encode(...))) or hash each dynamic field separately (keccak256(bytes(str))) and include those hashes in the final digest. Consider EIP-712 typed data for signature binding.","evidence":"PacketLibrary.hash uses keccak256(abi.encodePacked(...)) including multiple string fields.","locations":["contracts/contracts/common/libraries/PacketLibrary.sol:79","contracts/contracts/common/libraries/PacketLibrary.sol:98"]},{"severity":"medium","category":"other","title":"Fee-on-transfer tokens break escrow accounting and can undercollateralize the bridge","exploit_scenario":"If a supported token charges transfer fees, TokenServiceV3 sends a packet for amountToTransfer but receives fewer tokens than amountToTransfer. The attacker can repeatedly bridge such a token to receive the full amount on the destination chain while the source chain escrow accrues a deficit, eventually preventing withdrawals or draining pooled liquidity.","recommendation":"Explicitly disallow fee-on-transfer/deflationary tokens or compute the net received amount via balance‑before/balance‑after and use that for packet amounts and fee calculations.","evidence":"_handleFees computes amountToTransfer from the requested amount, and _transfer sends a packet for amountToTransfer without verifying actual tokens received.","locations":["contracts/contracts/main/tokenservice/TokenServiceV3.sol:186","contracts/contracts/main/tokenservice/TokenServiceV3.sol:250","contracts/contracts/main/tokenservice/TokenServiceV3.sol:258"]},{"severity":"low","category":"upgradeability","title":"Storage gap placed before new variables in TokenServiceV2","exploit_scenario":"Future upgrades that attempt to use the storage gap for new variables may overwrite the existing TokenServiceV2 state (predicateservice/whitelist), corrupting storage and potentially breaking access control or transfer logic after an upgrade.","recommendation":"In the next upgrade, append a new storage gap after the current variables and leave the existing gap unused. Avoid inserting new variables before the current end-of-storage layout.","evidence":"TokenServiceV2 declares __gap before new state variables.","locations":["contracts/contracts/main/tokenservice/TokenServiceV2.sol:45","contracts/contracts/main/tokenservice/TokenServiceV2.sol:47"]}]}
[codex:1171619] tokens used
[codex:1171619] 74,611
[codex:1171619] {"no_findings":false,"summary":"Found three issues: collision-prone packet hashing, fee-on-transfer token accounting mismatch, and a misordered storage gap in TokenServiceV2.","findings":[{"severity":"high","category":"auth","title":"Packet hashing uses abi.encodePacked with dynamic strings (collision-prone)","exploit_scenario":"If attestors/bridge signatures are produced over PacketLibrary.hash, an attacker can craft two different packets with colliding packed encodings (e.g., varying string fields like sourceTokenService.addr or senderAddress) and reuse valid signatures to authorize a different packet, potentially redirecting withdrawals or altering packet fields without new signatures.","recommendation":"Hash packets with length‑delimited encoding (e.g., keccak256(abi.encode(...))) or hash each dynamic field separately (keccak256(bytes(str))) and include those hashes in the final digest. Consider EIP-712 typed data for signature binding.","evidence":"PacketLibrary.hash uses keccak256(abi.encodePacked(...)) including multiple string fields.","locations":["contracts/contracts/common/libraries/PacketLibrary.sol:79","contracts/contracts/common/libraries/PacketLibrary.sol:98"]},{"severity":"medium","category":"other","title":"Fee-on-transfer tokens break escrow accounting and can undercollateralize the bridge","exploit_scenario":"If a supported token charges transfer fees, TokenServiceV3 sends a packet for amountToTransfer but receives fewer tokens than amountToTransfer. The attacker can repeatedly bridge such a token to receive the full amount on the destination chain while the source chain escrow accrues a deficit, eventually preventing withdrawals or draining pooled liquidity.","recommendation":"Explicitly disallow fee-on-transfer/deflationary tokens or compute the net received amount via balance‑before/balance‑after and use that for packet amounts and fee calculations.","evidence":"_handleFees computes amountToTransfer from the requested amount, and _transfer sends a packet for amountToTransfer without verifying actual tokens received.","locations":["contracts/contracts/main/tokenservice/TokenServiceV3.sol:186","contracts/contracts/main/tokenservice/TokenServiceV3.sol:250","contracts/contracts/main/tokenservice/TokenServiceV3.sol:258"]},{"severity":"low","category":"upgradeability","title":"Storage gap placed before new variables in TokenServiceV2","exploit_scenario":"Future upgrades that attempt to use the storage gap for new variables may overwrite the existing TokenServiceV2 state (predicateservice/whitelist), corrupting storage and potentially breaking access control or transfer logic after an upgrade.","recommendation":"In the next upgrade, append a new storage gap after the current variables and leave the existing gap unused. Avoid inserting new variables before the current end-of-storage layout.","evidence":"TokenServiceV2 declares __gap before new state variables.","locations":["contracts/contracts/main/tokenservice/TokenServiceV2.sol:45","contracts/contracts/main/tokenservice/TokenServiceV2.sol:47"]}]}
{
"codex": {
"ran_at": "2025-12-29T02:46:44.115944+00:00",
"returncode": 0
},
"summary": "Found three issues: collision-prone packet hashing, fee-on-transfer token accounting mismatch, and a misordered storage gap in TokenServiceV2.",
"raw_final": {
"summary": "Found three issues: collision-prone packet hashing, fee-on-transfer token accounting mismatch, and a misordered storage gap in TokenServiceV2.",
"findings": [
{
"title": "Packet hashing uses abi.encodePacked with dynamic strings (collision-prone)",
"category": "auth",
"evidence": "PacketLibrary.hash uses keccak256(abi.encodePacked(...)) including multiple string fields.",
"severity": "high",
"locations": [
"contracts/contracts/common/libraries/PacketLibrary.sol:79",
"contracts/contracts/common/libraries/PacketLibrary.sol:98"
],
"recommendation": "Hash packets with length\u2011delimited encoding (e.g., keccak256(abi.encode(...))) or hash each dynamic field separately (keccak256(bytes(str))) and include those hashes in the final digest. Consider EIP-712 typed data for signature binding.",
"exploit_scenario": "If attestors/bridge signatures are produced over PacketLibrary.hash, an attacker can craft two different packets with colliding packed encodings (e.g., varying string fields like sourceTokenService.addr or senderAddress) and reuse valid signatures to authorize a different packet, potentially redirecting withdrawals or altering packet fields without new signatures."
},
{
"title": "Fee-on-transfer tokens break escrow accounting and can undercollateralize the bridge",
"category": "other",
"evidence": "_handleFees computes amountToTransfer from the requested amount, and _transfer sends a packet for amountToTransfer without verifying actual tokens received.",
"severity": "medium",
"locations": [
"contracts/contracts/main/tokenservice/TokenServiceV3.sol:186",
"contracts/contracts/main/tokenservice/TokenServiceV3.sol:250",
"contracts/contracts/main/tokenservice/TokenServiceV3.sol:258"
],
"recommendation": "Explicitly disallow fee-on-transfer/deflationary tokens or compute the net received amount via balance\u2011before/balance\u2011after and use that for packet amounts and fee calculations.",
"exploit_scenario": "If a supported token charges transfer fees, TokenServiceV3 sends a packet for amountToTransfer but receives fewer tokens than amountToTransfer. The attacker can repeatedly bridge such a token to receive the full amount on the destination chain while the source chain escrow accrues a deficit, eventually preventing withdrawals or draining pooled liquidity."
},
{
"title": "Storage gap placed before new variables in TokenServiceV2",
"category": "upgradeability",
"evidence": "TokenServiceV2 declares __gap before new state variables.",
"severity": "low",
"locations": [
"contracts/contracts/main/tokenservice/TokenServiceV2.sol:45",
"contracts/contracts/main/tokenservice/TokenServiceV2.sol:47"
],
"recommendation": "In the next upgrade, append a new storage gap after the current variables and leave the existing gap unused. Avoid inserting new variables before the current end-of-storage layout.",
"exploit_scenario": "Future upgrades that attempt to use the storage gap for new variables may overwrite the existing TokenServiceV2 state (predicateservice/whitelist), corrupting storage and potentially breaking access control or transfer logic after an upgrade."
}
],
"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 0x02c6 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0x7104ddb2 00000019: GT 0000001a: PUSH2 0x017f 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0xa42dce80 00000024: GT 00000025: PUSH2 0x00e1 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xd451c20a 0000002f: GT 00000030: PUSH2 0x008a 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xf2fde38b 0000003a: GT 0000003b: PUSH2 0x0064 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xf2fde38b 00000045: EQ 00000046: PUSH2 0x0891 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xfbc9a662 00000050: EQ 00000051: PUSH2 0x08b1 00000054: JUMPI 00000055: DUP1 00000056: PUSH4 0xff8b1f8d 0000005b: EQ 0000005c: PUSH2 0x08d1 0000005f: JUMPI 00000060: PUSH1 0x00 00000062: DUP1 00000063: REVERT 00000064: JUMPDEST 00000065: DUP1 00000066: PUSH4 0xd451c20a 0000006b: EQ 0000006c: PUSH2 0x082f 0000006f: JUMPI 00000070: DUP1 00000071: PUSH4 0xdcbeeb23 00000076: EQ 00000077: PUSH2 0x0851 0000007a: JUMPI 0000007b: DUP1 0000007c: PUSH4 0xe6c09edf 00000081: EQ 00000082: PUSH2 0x0871 00000085: JUMPI 00000086: PUSH1 0x00 00000088: DUP1 00000089: REVERT 0000008a: JUMPDEST 0000008b: DUP1 0000008c: PUSH4 0xc354c62f 00000091: GT 00000092: PUSH2 0x00bb 00000095: JUMPI 00000096: DUP1 00000097: PUSH4 0xc354c62f 0000009c: EQ 0000009d: PUSH2 0x07d8 000000a0: JUMPI 000000a1: DUP1 000000a2: PUSH4 0xc415b95c 000000a7: EQ 000000a8: PUSH2 0x07f8 000000ab: JUMPI 000000ac: DUP1 000000ad: PUSH4 0xc4af1c0b 000000b2: EQ 000000b3: PUSH2 0x0819 000000b6: JUMPI 000000b7: PUSH1 0x00 000000b9: DUP1 000000ba: REVERT 000000bb: JUMPDEST 000000bc: DUP1 000000bd: PUSH4 0xa42dce80 000000c2: EQ 000000c3: PUSH2 0x0778 000000c6: JUMPI 000000c7: DUP1 000000c8: PUSH4 0xa4c36e62 000000cd: EQ 000000ce: PUSH2 0x0798 000000d1: JUMPI 000000d2: DUP1 000000d3: PUSH4 0xb7ecbaae 000000d8: EQ 000000d9: PUSH2 0x07b8 000000dc: JUMPI 000000dd: PUSH1 0x00 000000df: DUP1 000000e0: REVERT 000000e1: JUMPDEST 000000e2: DUP1 000000e3: PUSH4 0x89a71faa 000000e8: GT 000000e9: PUSH2 0x0143 000000ec: JUMPI 000000ed: DUP1 000000ee: PUSH4 0x94a7ef15 000000f3: GT 000000f4: PUSH2 0x011d 000000f7: JUMPI 000000f8: DUP1 000000f9: PUSH4 0x94a7ef15 000000fe: EQ 000000ff: PUSH2 0x0725 00000102: JUMPI 00000103: DUP1 00000104: PUSH4 0x9936077e 00000109: EQ 0000010a: PUSH2 0x0745 0000010d: JUMPI 0000010e: DUP1 0000010f: PUSH4 0x9f650297 00000114: EQ 00000115: PUSH2 0x0765 00000118: JUMPI 00000119: PUSH1 0x00 0000011b: DUP1 0000011c: REVERT 0000011d: JUMPDEST 0000011e: DUP1 0000011f: PUSH4 0x89a71faa 00000124: EQ 00000125: PUSH2 0x06b1 00000128: JUMPI 00000129: DUP1 0000012a: PUSH4 0x8c96ed4e 0000012f: EQ 00000130: PUSH2 0x06d1 00000133: JUMPI 00000134: DUP1 00000135: PUSH4 0x8da5cb5b 0000013a: EQ 0000013b: PUSH2 0x06ff 0000013e: JUMPI 0000013f: PUSH1 0x00 00000141: DUP1 00000142: REVERT 00000143: JUMPDEST 00000144: DUP1 00000145: PUSH4 0x7104ddb2 0000014a: EQ 0000014b: PUSH2 0x0613 0000014e: JUMPI 0000014f: DUP1 00000150: PUSH4 0x715018a6 00000155: EQ 00000156: PUSH2 0x0647 00000159: JUMPI 0000015a: DUP1 0000015b: PUSH4 0x7ed84e35 00000160: EQ 00000161: PUSH2 0x065c 00000164: JUMPI 00000165: DUP1 00000166: PUSH4 0x8456cb59 0000016b: EQ 0000016c: PUSH2 0x067c 0000016f: JUMPI 00000170: DUP1 00000171: PUSH4 0x87a3ecd7 00000176: EQ 00000177: PUSH2 0x0691 0000017a: JUMPI 0000017b: PUSH1 0x00 0000017d: DUP1 0000017e: REVERT 0000017f: JUMPDEST 00000180: DUP1 00000181: PUSH4 0x4a172c38 00000186: GT 00000187: PUSH2 0x0228 0000018a: JUMPI 0000018b: DUP1 0000018c: PUSH4 0x5c975abb 00000191: GT 00000192: PUSH2 0x01ec 00000195: JUMPI 00000196: DUP1 00000197: PUSH4 0x63bbc87b 0000019c: GT 0000019d: PUSH2 0x01c6 000001a0: JUMPI 000001a1: DUP1 000001a2: PUSH4 0x63bbc87b 000001a7: EQ 000001a8: PUSH2 0x05ad 000001ab: JUMPI 000001ac: DUP1 000001ad: PUSH4 0x68c4ac26 000001b2: EQ 000001b3: PUSH2 0x05cd 000001b6: JUMPI 000001b7: DUP1 000001b8: PUSH4 0x6f531555 000001bd: EQ 000001be: PUSH2 0x0600 000001c1: JUMPI 000001c2: PUSH1 0x00 000001c4: DUP1 000001c5: REVERT 000001c6: JUMPDEST 000001c7: DUP1 000001c8: PUSH4 0x5c975abb 000001cd: EQ 000001ce: PUSH2 0x0562 000001d1: JUMPI 000001d2: DUP1 000001d3: PUSH4 0x5fa7b584 000001d8: EQ 000001d9: PUSH2 0x057a 000001dc: JUMPI 000001dd: DUP1 000001de: PUSH4 0x5ff0586a 000001e3: EQ 000001e4: PUSH2 0x059a 000001e7: JUMPI 000001e8: PUSH1 0x00 000001ea: DUP1 000001eb: REVERT 000001ec: JUMPDEST 000001ed: DUP1 000001ee: PUSH4 0x4a172c38 000001f3: EQ 000001f4: PUSH2 0x04da 000001f7: JUMPI 000001f8: DUP1 000001f9: PUSH4 0x4f1ef286 000001fe: EQ 000001ff: PUSH2 0x04fa 00000202: JUMPI 00000203: DUP1 00000204: PUSH4 0x52d1902d 00000209: EQ 0000020a: PUSH2 0x050d 0000020d: JUMPI 0000020e: DUP1 0000020f: PUSH4 0x55b53413 00000214: EQ 00000215: PUSH2 0x0522 00000218: JUMPI 00000219: DUP1 0000021a: PUSH4 0x5bfa1b68 0000021f: EQ 00000220: PUSH2 0x0542 00000223: JUMPI 00000224: PUSH1 0x00 00000226: DUP1 00000227: REVERT 00000228: JUMPDEST 00000229: DUP1 0000022a: PUSH4 0x20bb0976 0000022f: GT 00000230: PUSH2 0x028a 00000233: JUMPI 00000234: DUP1 00000235: PUSH4 0x3659cfe6 0000023a: GT 0000023b: PUSH2 0x0264 0000023e: JUMPI 0000023f: DUP1 00000240: PUSH4 0x3659cfe6 00000245: EQ 00000246: PUSH2 0x0485 00000249: JUMPI 0000024a: DUP1 0000024b: PUSH4 0x3f4ba83a 00000250: EQ 00000251: PUSH2 0x04a5 00000254: JUMPI 00000255: DUP1 00000256: PUSH4 0x473b7263 0000025b: EQ 0000025c: PUSH2 0x04ba 0000025f: JUMPI 00000260: PUSH1 0x00 00000262: DUP1 00000263: REVERT 00000264: JUMPDEST 00000265: DUP1 00000266: PUSH4 0x20bb0976 0000026b: EQ 0000026c: PUSH2 0x0411 0000026f: JUMPI 00000270: DUP1 00000271: PUSH4 0x240028e8 00000276: EQ 00000277: PUSH2 0x0431 0000027a: JUMPI 0000027b: DUP1 0000027c: PUSH4 0x30fa738c 00000281: EQ 00000282: PUSH2 0x0451 00000285: JUMPI 00000286: PUSH1 0x00 00000288: DUP1 00000289: REVERT 0000028a: JUMPDEST 0000028b: DUP1 0000028c: PUSH4 0x0e687a68 00000291: EQ 00000292: PUSH2 0x0320 00000295: JUMPI 00000296: DUP1 00000297: PUSH4 0x1b451d28 0000029c: EQ 0000029d: PUSH2 0x0333 000002a0: JUMPI 000002a1: DUP1 000002a2: PUSH4 0x1b9e2fad 000002a7: EQ 000002a8: PUSH2 0x0353 000002ab: JUMPI 000002ac: DUP1 000002ad: PUSH4 0x1beb1ab8 000002b2: EQ 000002b3: PUSH2 0x039a 000002b6: JUMPI 000002b7: DUP1 000002b8: PUSH4 0x1cead9a7 000002bd: EQ 000002be: PUSH2 0x03d6 000002c1: JUMPI 000002c2: PUSH1 0x00 000002c4: DUP1 000002c5: REVERT 000002c6: JUMPDEST 000002c7: CALLDATASIZE 000002c8: PUSH2 0x031b 000002cb: JUMPI 000002cc: CALLER 000002cd: PUSH1 0x00 000002cf: SWAP1 000002d0: DUP2 000002d1: MSTORE 000002d2: PUSH2 0x0195 000002d5: PUSH1 0x20 000002d7: MSTORE 000002d8: PUSH1 0x40 000002da: SWAP1 000002db: KECCAK256 000002dc: SLOAD 000002dd: PUSH1 0xff 000002df: AND 000002e0: DUP1 000002e1: PUSH2 0x02f4 000002e4: JUMPI 000002e5: POP 000002e6: PUSH1 0x65 000002e8: SLOAD 000002e9: PUSH1 0x01 000002eb: PUSH1 0x01 000002ed: PUSH1 0xa0 000002ef: SHL 000002f0: SUB 000002f1: AND 000002f2: CALLER 000002f3: EQ 000002f4: JUMPDEST 000002f5: PUSH2 0x0319 000002f8: JUMPI 000002f9: PUSH1 0x40 000002fb: MLOAD 000002fc: PUSH3 0x461bcd 00000300: PUSH1 0xe5 00000302: SHL 00000303: DUP2 00000304: MSTORE 00000305: PUSH1 0x04 00000307: ADD 00000308: PUSH2 0x0310 0000030b: SWAP1 0000030c: PUSH2 0x3610 0000030f: JUMP 00000310: JUMPDEST 00000311: PUSH1 0x40 00000313: MLOAD 00000314: DUP1 00000315: SWAP2 00000316: SUB 00000317: SWAP1 00000318: REVERT 00000319: JUMPDEST 0000031a: STOP 0000031b: JUMPDEST 0000031c: PUSH1 0x00 0000031e: DUP1 0000031f: REVERT 00000320: JUMPDEST 00000321: PUSH2 0x0319 00000324: PUSH2 0x032e 00000327: CALLDATASIZE 00000328: PUSH1 0x04 0000032a: PUSH2 0x36a6 0000032d: JUMP 0000032e: JUMPDEST 0000032f: PUSH2 0x08f1 00000332: JUMP 00000333: JUMPDEST 00000334: CALLVALUE 00000335: DUP1 00000336: ISZERO 00000337: PUSH2 0x033f 0000033a: JUMPI 0000033b: PUSH1 0x00 0000033d: DUP1 0000033e: REVERT 0000033f: JUMPDEST 00000340: POP 00000341: PUSH2 0x0319 00000344: PUSH2 0x034e 00000347: CALLDATASIZE 00000348: PUSH1 0x04 0000034a: PUSH2 0x3784 0000034d: JUMP 0000034e: JUMPDEST 0000034f: PUSH2 0x0a34 00000352: JUMP 00000353: JUMPDEST 00000354: CALLVALUE 00000355: DUP1 00000356: ISZERO 00000357: PUSH2 0x035f 0000035a: JUMPI 0000035b: PUSH1 0x00 0000035d: DUP1 0000035e: REVERT 0000035f: JUMPDEST 00000360: POP 00000361: PUSH2 0x0384 00000364: PUSH2 0x036e 00000367: CALLDATASIZE 00000368: PUSH1 0x04 0000036a: PUSH2 0x37c1 0000036d: JUMP 0000036e: JUMPDEST 0000036f: PUSH2 0x0195 00000372: PUSH1 0x20 00000374: MSTORE 00000375: PUSH1 0x00 00000377: SWAP1 00000378: DUP2 00000379: MSTORE 0000037a: PUSH1 0x40 0000037c: SWAP1 0000037d: KECCAK256 0000037e: SLOAD 0000037f: PUSH1 0xff 00000381: AND 00000382: DUP2 00000383: JUMP 00000384: JUMPDEST 00000385: PUSH1 0x40 00000387: MLOAD 00000388: PUSH2 0x0391 0000038b: SWAP2 0000038c: SWAP1 0000038d: PUSH2 0x37ec 00000390: JUMP 00000391: JUMPDEST 00000392: PUSH1 0x40 00000394: MLOAD 00000395: DUP1 00000396: SWAP2 00000397: SUB 00000398: SWAP1 00000399: RETURN 0000039a: JUMPDEST 0000039b: CALLVALUE 0000039c: DUP1 0000039d: ISZERO 0000039e: PUSH2 0x03a6 000003a1: JUMPI 000003a2: PUSH1 0x00 000003a4: DUP1 000003a5: REVERT 000003a6: JUMPDEST 000003a7: POP 000003a8: PUSH2 0x0384 000003ab: PUSH2 0x03b5 000003ae: CALLDATASIZE 000003af: PUSH1 0x04 000003b1: PUSH2 0x37c1 000003b4: JUMP 000003b5: JUMPDEST 000003b6: PUSH1 0x01 000003b8: PUSH1 0x01 000003ba: PUSH1 0xa0 000003bc: SHL 000003bd: SUB 000003be: AND 000003bf: PUSH1 0x00 000003c1: SWAP1 000003c2: DUP2 000003c3: MSTORE 000003c4: PUSH1 0xc9 000003c6: PUSH1 0x20 000003c8: MSTORE 000003c9: PUSH1 0x40 000003cb: SWAP1 000003cc: KECCAK256 000003cd: PUSH1 0x06 000003cf: ADD 000003d0: SLOAD 000003d1: PUSH1 0xff 000003d3: AND 000003d4: SWAP1 000003d5: JUMP 000003d6: JUMPDEST 000003d7: CALLVALUE 000003d8: DUP1 000003d9: ISZERO 000003da: PUSH2 0x03e2 000003dd: JUMPI 000003de: PUSH1 0x00 000003e0: DUP1 000003e1: REVERT 000003e2: JUMPDEST 000003e3: POP 000003e4: PUSH2 0x0404 000003e7: PUSH2 0x03f1 000003ea: CALLDATASIZE 000003eb: PUSH1 0x04 000003ed: PUSH2 0x37c1 000003f0: JUMP 000003f1: JUMPDEST 000003f2: PUSH2 0x0197 000003f5: PUSH1 0x20 000003f7: MSTORE 000003f8: PUSH1 0x00 000003fa: SWAP1 000003fb: DUP2 000003fc: MSTORE 000003fd: PUSH1 0x40 000003ff: SWAP1 00000400: KECCAK256 00000401: SLOAD 00000402: DUP2 00000403: JUMP 00000404: JUMPDEST 00000405: PUSH1 0x40 00000407: MLOAD 00000408: PUSH2 0x0391 0000040b: SWAP2 0000040c: SWAP1 0000040d: PUSH2 0x3800 00000410: JUMP 00000411: JUMPDEST 00000412: CALLVALUE 00000413: DUP1 00000414: ISZERO 00000415: PUSH2 0x041d 00000418: JUMPI 00000419: PUSH1 0x00 0000041b: DUP1 0000041c: REVERT 0000041d: JUMPDEST 0000041e: POP 0000041f: PUSH2 0x0319 00000422: PUSH2 0x042c 00000425: CALLDATASIZE 00000426: PUSH1 0x04 00000428: PUSH2 0x381f 0000042b: JUMP 0000042c: JUMPDEST 0000042d: PUSH2 0x0af0 00000430: JUMP 00000431: JUMPDEST 00000432: CALLVALUE 00000433: DUP1 00000434: ISZERO 00000435: PUSH2 0x043d 00000438: JUMPI 00000439: PUSH1 0x00 0000043b: DUP1 0000043c: REVERT 0000043d: JUMPDEST 0000043e: POP 0000043f: PUSH2 0x0384 00000442: PUSH2 0x044c 00000445: CALLDATASIZE 00000446: PUSH1 0x04 00000448: PUSH2 0x37c1 0000044b: JUMP 0000044c: JUMPDEST 0000044d: PUSH2 0x0b6b 00000450: JUMP 00000451: JUMPDEST 00000452: CALLVALUE 00000453: DUP1 00000454: ISZERO 00000455: PUSH2 0x045d 00000458: JUMPI 00000459: PUSH1 0x00 0000045b: DUP1 0000045c: REVERT 0000045d: JUMPDEST 0000045e: POP 0000045f: PUSH1 0x40 00000461: DUP1 00000462: MLOAD 00000463: DUP1 00000464: DUP3 00000465: ADD 00000466: DUP3 00000467: MSTORE 00000468: PUSH1 0x05 0000046a: DUP2 0000046b: MSTORE 0000046c: PUSH5 0x0455243323 00000472: PUSH1 0xdc 00000474: SHL 00000475: PUSH1 0x20 00000477: DUP3 00000478: ADD 00000479: MSTORE 0000047a: SWAP1 0000047b: MLOAD 0000047c: PUSH2 0x0391 0000047f: SWAP2 00000480: SWAP1 00000481: PUSH2 0x392c 00000484: JUMP 00000485: JUMPDEST 00000486: CALLVALUE 00000487: DUP1 00000488: ISZERO 00000489: PUSH2 0x0491 0000048c: JUMPI 0000048d: PUSH1 0x00 0000048f: DUP1 00000490: REVERT 00000491: JUMPDEST 00000492: POP 00000493: PUSH2 0x0319 00000496: PUSH2 0x04a0 00000499: CALLDATASIZE 0000049a: PUSH1 0x04 0000049c: PUSH2 0x37c1 0000049f: JUMP 000004a0: JUMPDEST 000004a1: PUSH2 0x0baf 000004a4: JUMP 000004a5: JUMPDEST 000004a6: CALLVALUE 000004a7: DUP1 000004a8: ISZERO 000004a9: PUSH2 0x04b1 000004ac: JUMPI 000004ad: PUSH1 0x00 000004af: DUP1 000004b0: REVERT 000004b1: JUMPDEST 000004b2: POP 000004b3: PUSH2 0x0319 000004b6: PUSH2 0x0ca0 000004b9: JUMP 000004ba: JUMPDEST 000004bb: CALLVALUE 000004bc: DUP1 000004bd: ISZERO 000004be: PUSH2 0x04c6 000004c1: JUMPI 000004c2: PUSH1 0x00 000004c4: DUP1 000004c5: REVERT 000004c6: JUMPDEST 000004c7: POP 000004c8: PUSH2 0x0319 000004cb: PUSH2 0x04d5 000004ce: CALLDATASIZE 000004cf: PUSH1 0x04 000004d1: PUSH2 0x393d 000004d4: JUMP 000004d5: JUMPDEST 000004d6: PUSH2 0x0cba 000004d9: JUMP 000004da: JUMPDEST 000004db: CALLVALUE 000004dc: DUP1 000004dd: ISZERO 000004de: PUSH2 0x04e6 000004e1: JUMPI 000004e2: PUSH1 0x00 000004e4: DUP1 000004e5: REVERT 000004e6: JUMPDEST 000004e7: POP 000004e8: PUSH2 0x0319 000004eb: PUSH2 0x04f5 000004ee: CALLDATASIZE 000004ef: PUSH1 0x04 000004f1: PUSH2 0x398f 000004f4: JUMP 000004f5: JUMPDEST 000004f6: PUSH2 0x0d60 000004f9: JUMP 000004fa: JUMPDEST 000004fb: PUSH2 0x0319 000004fe: PUSH2 0x0508 00000501: CALLDATASIZE 00000502: PUSH1 0x04 00000504: PUSH2 0x3aa9 00000507: JUMP 00000508: JUMPDEST 00000509: PUSH2 0x0ddf 0000050c: JUMP 0000050d: JUMPDEST 0000050e: CALLVALUE 0000050f: DUP1 00000510: ISZERO 00000511: PUSH2 0x0519 00000514: JUMPI 00000515: PUSH1 0x00 00000517: DUP1 00000518: REVERT 00000519: JUMPDEST 0000051a: POP 0000051b: PUSH2 0x0404 0000051e: PUSH2 0x0ec1 00000521: JUMP 00000522: JUMPDEST 00000523: CALLVALUE 00000524: DUP1 00000525: ISZERO 00000526: PUSH2 0x052e 00000529: JUMPI 0000052a: PUSH1 0x00 0000052c: DUP1 0000052d: REVERT 0000052e: JUMPDEST 0000052f: POP 00000530: PUSH2 0x0319 00000533: PUSH2 0x053d 00000536: CALLDATASIZE 00000537: PUSH1 0x04 00000539: PUSH2 0x393d 0000053c: JUMP 0000053d: JUMPDEST 0000053e: PUSH2 0x0f30 00000541: JUMP 00000542: JUMPDEST 00000543: CALLVALUE 00000544: DUP1 00000545: ISZERO 00000546: PUSH2 0x054e 00000549: JUMPI 0000054a: PUSH1 0x00 0000054c: DUP1 0000054d: REVERT 0000054e: JUMPDEST 0000054f: POP 00000550: PUSH2 0x0319 00000553: PUSH2 0x055d 00000556: CALLDATASIZE 00000557: PUSH1 0x04 00000559: PUSH2 0x37c1 0000055c: JUMP 0000055d: JUMPDEST 0000055e: PUSH2 0x0fd6 00000561: JUMP 00000562: JUMPDEST 00000563: CALLVALUE 00000564: DUP1 00000565: ISZERO 00000566: PUSH2 0x056e 00000569: JUMPI 0000056a: PUSH1 0x00 0000056c: DUP1 0000056d: REVERT 0000056e: JUMPDEST 0000056f: POP 00000570: PUSH1 0x33 00000572: SLOAD 00000573: PUSH1 0xff 00000575: AND 00000576: PUSH2 0x0384 00000579: JUMP 0000057a: JUMPDEST 0000057b: CALLVALUE 0000057c: DUP1 0000057d: ISZERO 0000057e: PUSH2 0x0586 00000581: JUMPI 00000582: PUSH1 0x00 00000584: DUP1 00000585: REVERT 00000586: JUMPDEST 00000587: POP 00000588: PUSH2 0x0319 0000058b: PUSH2 0x0595 0000058e: CALLDATASIZE 0000058f: PUSH1 0x04 00000591: PUSH2 0x37c1 00000594: JUMP 00000595: JUMPDEST 00000596: PUSH2 0x10a5 00000599: JUMP 0000059a: JUMPDEST 0000059b: PUSH2 0x0319 0000059e: PUSH2 0x05a8 000005a1: CALLDATASIZE 000005a2: PUSH1 0x04 000005a4: PUSH2 0x3af6 000005a7: JUMP 000005a8: JUMPDEST 000005a9: PUSH2 0x1179 000005ac: JUMP 000005ad: JUMPDEST 000005ae: CALLVALUE 000005af: DUP1 000005b0: ISZERO 000005b1: PUSH2 0x05b9 000005b4: JUMPI 000005b5: PUSH1 0x00 000005b7: DUP1 000005b8: REVERT 000005b9: JUMPDEST 000005ba: POP 000005bb: PUSH2 0x0319 000005be: PUSH2 0x05c8 000005c1: CALLDATASIZE 000005c2: PUSH1 0x04 000005c4: PUSH2 0x3b7c 000005c7: JUMP 000005c8: JUMPDEST 000005c9: PUSH2 0x11ee 000005cc: JUMP 000005cd: JUMPDEST 000005ce: CALLVALUE 000005cf: DUP1 000005d0: ISZERO 000005d1: PUSH2 0x05d9 000005d4: JUMPI 000005d5: PUSH1 0x00 000005d7: DUP1 000005d8: REVERT 000005d9: JUMPDEST 000005da: POP 000005db: PUSH2 0x05ed 000005de: PUSH2 0x05e8 000005e1: CALLDATASIZE 000005e2: PUSH1 0x04 000005e4: PUSH2 0x37c1 000005e7: JUMP 000005e8: JUMPDEST 000005e9: PUSH2 0x1307 000005ec: JUMP 000005ed: JUMPDEST 000005ee: PUSH1 0x40 000005f0: MLOAD 000005f1: PUSH2 0x0391 000005f4: SWAP8 000005f5: SWAP7 000005f6: SWAP6 000005f7: SWAP5 000005f8: SWAP4 000005f9: SWAP3 000005fa: SWAP2 000005fb: SWAP1 000005fc: PUSH2 0x3c67 000005ff: JUMP 00000600: JUMPDEST 00000601: PUSH2 0x0319 00000604: PUSH2 0x060e 00000607: CALLDATASIZE 00000608: PUSH1 0x04 0000060a: PUSH2 0x3cdd 0000060d: JUMP 0000060e: JUMPDEST 0000060f: PUSH2 0x1464 00000612: JUMP 00000613: JUMPDEST 00000614: CALLVALUE 00000615: DUP1 00000616: ISZERO 00000617: PUSH2 0x061f 0000061a: JUMPI 0000061b: PUSH1 0x00 0000061d: DUP1 0000061e: REVERT 0000061f: JUMPDEST 00000620: POP 00000621: PUSH2 0x0130 00000624: SLOAD 00000625: PUSH2 0x0131 00000628: SLOAD 00000629: PUSH2 0x0639 0000062c: SWAP2 0000062d: SWAP1 0000062e: PUSH1 0x01 00000630: PUSH1 0x01 00000632: PUSH1 0xa0 00000634: SHL 00000635: SUB 00000636: AND 00000637: DUP3 00000638: JUMP 00000639: JUMPDEST 0000063a: PUSH1 0x40 0000063c: MLOAD 0000063d: PUSH2 0x0391 00000640: SWAP3 00000641: SWAP2 00000642: SWAP1 00000643: PUSH2 0x3d93 00000646: JUMP 00000647: JUMPDEST 00000648: CALLVALUE 00000649: DUP1 0000064a: ISZERO 0000064b: PUSH2 0x0653 0000064e: JUMPI 0000064f: PUSH1 0x00 00000651: DUP1 00000652: REVERT 00000653: JUMPDEST 00000654: POP 00000655: PUSH2 0x0319 00000658: PUSH2 0x1570 0000065b: JUMP 0000065c: JUMPDEST 0000065d: CALLVALUE 0000065e: DUP1 0000065f: ISZERO 00000660: PUSH2 0x0668 00000663: JUMPI 00000664: PUSH1 0x00 00000666: DUP1 00000667: REVERT 00000668: JUMPDEST 00000669: POP 0000066a: PUSH2 0x0319 0000066d: PUSH2 0x0677 00000670: CALLDATASIZE 00000671: PUSH1 0x04 00000673: PUSH2 0x381f 00000676: JUMP 00000677: JUMPDEST 00000678: PUSH2 0x1582 0000067b: JUMP 0000067c: JUMPDEST 0000067d: CALLVALUE 0000067e: DUP1 0000067f: ISZERO 00000680: PUSH2 0x0688 00000683: JUMPI 00000684: PUSH1 0x00 00000686: DUP1 00000687: REVERT 00000688: JUMPDEST 00000689: POP 0000068a: PUSH2 0x0319 0000068d: PUSH2 0x15e8 00000690: JUMP 00000691: JUMPDEST 00000692: CALLVALUE 00000693: DUP1 00000694: ISZERO 00000695: PUSH2 0x069d 00000698: JUMPI 00000699: PUSH1 0x00 0000069b: DUP1 0000069c: REVERT 0000069d: JUMPDEST 0000069e: POP 0000069f: PUSH2 0x0319 000006a2: PUSH2 0x06ac 000006a5: CALLDATASIZE 000006a6: PUSH1 0x04 000006a8: PUSH2 0x398f 000006ab: JUMP 000006ac: JUMPDEST 000006ad: PUSH2 0x1600 000006b0: JUMP 000006b1: JUMPDEST 000006b2: CALLVALUE 000006b3: DUP1 000006b4: ISZERO 000006b5: PUSH2 0x06bd 000006b8: JUMPI 000006b9: PUSH1 0x00 000006bb: DUP1 000006bc: REVERT 000006bd: JUMPDEST 000006be: POP 000006bf: PUSH2 0x0319 000006c2: PUSH2 0x06cc 000006c5: CALLDATASIZE 000006c6: PUSH1 0x04 000006c8: PUSH2 0x393d 000006cb: JUMP 000006cc: JUMPDEST 000006cd: PUSH2 0x162b 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 0x0194 000006e2: SLOAD 000006e3: PUSH2 0x06f2 000006e6: SWAP1 000006e7: PUSH1 0x01 000006e9: PUSH1 0x01 000006eb: PUSH1 0xa0 000006ed: SHL 000006ee: SUB 000006ef: AND 000006f0: DUP2 000006f1: JUMP 000006f2: JUMPDEST 000006f3: PUSH1 0x40 000006f5: MLOAD 000006f6: PUSH2 0x0391 000006f9: SWAP2 000006fa: SWAP1 000006fb: PUSH2 0x3df0 000006fe: JUMP 000006ff: JUMPDEST 00000700: CALLVALUE 00000701: DUP1 00000702: ISZERO 00000703: PUSH2 0x070b 00000706: JUMPI 00000707: PUSH1 0x00 00000709: DUP1 0000070a: REVERT 0000070b: JUMPDEST 0000070c: POP 0000070d: PUSH1 0x65 0000070f: SLOAD 00000710: PUSH1 0x01 00000712: PUSH1 0x01 00000714: PUSH1 0xa0 00000716: SHL 00000717: SUB 00000718: AND 00000719: PUSH1 0x40 0000071b: MLOAD 0000071c: PUSH2 0x0391 0000071f: SWAP2 00000720: SWAP1 00000721: PUSH2 0x3dfe 00000724: JUMP 00000725: JUMPDEST 00000726: CALLVALUE 00000727: DUP1 00000728: ISZERO 00000729: PUSH2 0x0731 0000072c: JUMPI 0000072d: PUSH1 0x00 0000072f: DUP1 00000730: REVERT 00000731: JUMPDEST 00000732: POP 00000733: PUSH2 0x0319 00000736: PUSH2 0x0740 00000739: CALLDATASIZE 0000073a: PUSH1 0x04 0000073c: PUSH2 0x37c1 0000073f: JUMP 00000740: JUMPDEST 00000741: PUSH2 0x178b 00000744: JUMP 00000745: JUMPDEST 00000746: CALLVALUE 00000747: DUP1 00000748: ISZERO 00000749: PUSH2 0x0751 0000074c: JUMPI 0000074d: PUSH1 0x00 0000074f: DUP1 00000750: REVERT 00000751: JUMPDEST 00000752: POP 00000753: PUSH2 0x0319 00000756: PUSH2 0x0760 00000759: CALLDATASIZE 0000075a: PUSH1 0x04 0000075c: PUSH2 0x398f 0000075f: JUMP 00000760: JUMPDEST 00000761: PUSH2 0x17db 00000764: JUMP 00000765: JUMPDEST 00000766: PUSH2 0x0319 00000769: PUSH2 0x0773 0000076c: CALLDATASIZE 0000076d: PUSH1 0x04 0000076f: PUSH2 0x3af6 00000772: JUMP 00000773: JUMPDEST 00000774: PUSH2 0x1806 00000777: JUMP 00000778: JUMPDEST 00000779: CALLVALUE 0000077a: DUP1 0000077b: ISZERO 0000077c: PUSH2 0x0784 0000077f: JUMPI 00000780: PUSH1 0x00 00000782: DUP1 00000783: REVERT 00000784: JUMPDEST 00000785: POP 00000786: PUSH2 0x0319 00000789: PUSH2 0x0793 0000078c: CALLDATASIZE 0000078d: PUSH1 0x04 0000078f: PUSH2 0x398f 00000792: JUMP 00000793: JUMPDEST 00000794: PUSH2 0x1869 00000797: JUMP 00000798: JUMPDEST 00000799: CALLVALUE 0000079a: DUP1 0000079b: ISZERO 0000079c: PUSH2 0x07a4 0000079f: JUMPI 000007a0: PUSH1 0x00 000007a2: DUP1 000007a3: REVERT 000007a4: JUMPDEST 000007a5: POP 000007a6: PUSH2 0x0319 000007a9: PUSH2 0x07b3 000007ac: CALLDATASIZE 000007ad: PUSH1 0x04 000007af: PUSH2 0x4007 000007b2: JUMP 000007b3: JUMPDEST 000007b4: PUSH2 0x1894 000007b7: JUMP 000007b8: JUMPDEST 000007b9: CALLVALUE 000007ba: DUP1 000007bb: ISZERO 000007bc: PUSH2 0x07c4 000007bf: JUMPI 000007c0: PUSH1 0x00 000007c2: DUP1 000007c3: REVERT 000007c4: JUMPDEST 000007c5: POP 000007c6: PUSH2 0x0319 000007c9: PUSH2 0x07d3 000007cc: CALLDATASIZE 000007cd: PUSH1 0x04 000007cf: PUSH2 0x37c1 000007d2: JUMP 000007d3: JUMPDEST 000007d4: PUSH2 0x1d72 000007d7: JUMP 000007d8: JUMPDEST 000007d9: CALLVALUE 000007da: DUP1 000007db: ISZERO 000007dc: PUSH2 0x07e4 000007df: JUMPI 000007e0: PUSH1 0x00 000007e2: DUP1 000007e3: REVERT 000007e4: JUMPDEST 000007e5: POP 000007e6: PUSH2 0x0319 000007e9: PUSH2 0x07f3 000007ec: CALLDATASIZE 000007ed: PUSH1 0x04 000007ef: PUSH2 0x4042 000007f2: JUMP 000007f3: JUMPDEST 000007f4: PUSH2 0x1dbe 000007f7: JUMP 000007f8: JUMPDEST 000007f9: CALLVALUE 000007fa: DUP1 000007fb: ISZERO 000007fc: PUSH2 0x0804 000007ff: JUMPI 00000800: PUSH1 0x00 00000802: DUP1 00000803: REVERT 00000804: JUMPDEST 00000805: POP 00000806: PUSH2 0x0196 00000809: SLOAD 0000080a: PUSH2 0x06f2 0000080d: SWAP1 0000080e: PUSH1 0x01 00000810: PUSH1 0x01 00000812: PUSH1 0xa0 00000814: SHL 00000815: SUB 00000816: AND 00000817: DUP2 00000818: JUMP 00000819: JUMPDEST 0000081a: CALLVALUE 0000081b: DUP1 0000081c: ISZERO 0000081d: PUSH2 0x0825 00000820: JUMPI 00000821: PUSH1 0x00 00000823: DUP1 00000824: REVERT 00000825: JUMPDEST 00000826: POP 00000827: PUSH2 0x0404 0000082a: PUSH1 0xc8 0000082c: SLOAD 0000082d: DUP2 0000082e: JUMP 0000082f: JUMPDEST 00000830: CALLVALUE 00000831: DUP1 00000832: ISZERO 00000833: PUSH2 0x083b 00000836: JUMPI 00000837: PUSH1 0x00 00000839: DUP1 0000083a: REVERT 0000083b: JUMPDEST 0000083c: POP 0000083d: PUSH2 0x0194 00000840: SLOAD 00000841: PUSH2 0x0384 00000844: SWAP1 00000845: PUSH1 0x01 00000847: PUSH1 0xa0 00000849: SHL 0000084a: SWAP1 0000084b: DIV 0000084c: PUSH1 0xff 0000084e: AND 0000084f: DUP2 00000850: JUMP 00000851: JUMPDEST 00000852: CALLVALUE 00000853: DUP1 00000854: ISZERO 00000855: PUSH2 0x085d 00000858: JUMPI 00000859: PUSH1 0x00 0000085b: DUP1 0000085c: REVERT 0000085d: JUMPDEST 0000085e: POP 0000085f: PUSH2 0x0384 00000862: PUSH2 0x086c 00000865: CALLDATASIZE 00000866: PUSH1 0x04 00000868: PUSH2 0x393d 0000086b: JUMP 0000086c: JUMPDEST 0000086d: PUSH2 0x1f7e 00000870: JUMP 00000871: JUMPDEST 00000872: CALLVALUE 00000873: DUP1 00000874: ISZERO 00000875: PUSH2 0x087d 00000878: JUMPI 00000879: PUSH1 0x00 0000087b: DUP1 0000087c: REVERT 0000087d: JUMPDEST 0000087e: POP 0000087f: PUSH2 0x0319 00000882: PUSH2 0x088c 00000885: CALLDATASIZE 00000886: PUSH1 0x04 00000888: PUSH2 0x37c1 0000088b: JUMP 0000088c: JUMPDEST 0000088d: PUSH2 0x212e 00000890: JUMP 00000891: JUMPDEST 00000892: CALLVALUE 00000893: DUP1 00000894: ISZERO 00000895: PUSH2 0x089d 00000898: JUMPI 00000899: PUSH1 0x00 0000089b: DUP1 0000089c: REVERT 0000089d: JUMPDEST 0000089e: POP 0000089f: PUSH2 0x0319 000008a2: PUSH2 0x08ac 000008a5: CALLDATASIZE 000008a6: PUSH1 0x04 000008a8: PUSH2 0x37c1 000008ab: JUMP 000008ac: JUMPDEST 000008ad: PUSH2 0x21ee 000008b0: JUMP 000008b1: JUMPDEST 000008b2: CALLVALUE 000008b3: DUP1 000008b4: ISZERO 000008b5: PUSH2 0x08bd 000008b8: JUMPI 000008b9: PUSH1 0x00 000008bb: DUP1 000008bc: REVERT 000008bd: JUMPDEST 000008be: POP 000008bf: PUSH2 0x0319 000008c2: PUSH2 0x08cc 000008c5: CALLDATASIZE 000008c6: PUSH1 0x04 000008c8: PUSH2 0x4115 000008cb: JUMP 000008cc: JUMPDEST 000008cd: PUSH2 0x2225 000008d0: JUMP 000008d1: JUMPDEST 000008d2: CALLVALUE 000008d3: DUP1 000008d4: ISZERO 000008d5: PUSH2 0x08dd 000008d8: JUMPI 000008d9: PUSH1 0x00 000008db: DUP1 000008dc: REVERT 000008dd: JUMPDEST 000008de: POP 000008df: PUSH2 0x0319 000008e2: PUSH2 0x08ec 000008e5: CALLDATASIZE 000008e6: PUSH1 0x04 000008e8: PUSH2 0x3b7c 000008eb: JUMP 000008ec: JUMPDEST 000008ed: PUSH2 0x2374 000008f0: JUMP 000008f1: JUMPDEST 000008f2: PUSH2 0x08f9 000008f5: PUSH2 0x2477 000008f8: JUMP 000008f9: JUMPDEST 000008fa: PUSH2 0x0901 000008fd: PUSH2 0x249a 00000900: JUMP 00000901: JUMPDEST 00000902: PUSH2 0x0194 00000905: SLOAD 00000906: PUSH1 0x40 00000908: MLOAD 00000909: PUSH4 0x3ed959bb 0000090e: PUSH1 0xe2 00000910: SHL 00000911: DUP2 00000912: MSTORE 00000913: PUSH1 0x01 00000915: PUSH1 0x01 00000917: PUSH1 0xa0 00000919: SHL 0000091a: SUB 0000091b: SWAP1 0000091c: SWAP2 0000091d: AND 0000091e: SWAP1 0000091f: PUSH4 0xfb6566ec 00000924: SWAP1 00000925: PUSH2 0x093a 00000928: SWAP1 00000929: DUP10 0000092a: SWAP1 0000092b: DUP10 0000092c: SWAP1 0000092d: DUP10 0000092e: SWAP1 0000092f: CALLER 00000930: SWAP1 00000931: CALLVALUE 00000932: SWAP1 00000933: PUSH1 0x04 00000935: ADD 00000936: PUSH2 0x43c5 00000939: JUMP 0000093a: JUMPDEST 0000093b: PUSH1 0x20 0000093d: PUSH1 0x40 0000093f: MLOAD 00000940: DUP1 00000941: DUP4 00000942: SUB 00000943: DUP2 00000944: PUSH1 0x00 00000946: DUP8 00000947: GAS 00000948: CALL 00000949: ISZERO 0000094a: DUP1 0000094b: ISZERO 0000094c: PUSH2 0x0959 0000094f: JUMPI 00000950: RETURNDATASIZE 00000951: PUSH1 0x00 00000953: DUP1 00000954: RETURNDATACOPY 00000955: RETURNDATASIZE 00000956: PUSH1 0x00 00000958: REVERT 00000959: JUMPDEST 0000095a: POP 0000095b: POP 0000095c: POP 0000095d: POP 0000095e: PUSH1 0x40 00000960: MLOAD 00000961: RETURNDATASIZE 00000962: PUSH1 0x1f 00000964: NOT 00000965: PUSH1 0x1f 00000967: DUP3 00000968: ADD 00000969: AND 0000096a: DUP3 0000096b: ADD 0000096c: DUP1 0000096d: PUSH1 0x40 0000096f: MSTORE 00000970: POP 00000971: DUP2 00000972: ADD 00000973: SWAP1 00000974: PUSH2 0x097d 00000977: SWAP2 00000978: SWAP1 00000979: PUSH2 0x4412 0000097c: JUMP 0000097d: JUMPDEST 0000097e: PUSH2 0x0999 00000981: JUMPI 00000982: PUSH1 0x40 00000984: MLOAD 00000985: PUSH3 0x461bcd 00000989: PUSH1 0xe5 0000098b: SHL 0000098c: DUP2 0000098d: MSTORE 0000098e: PUSH1 0x04 00000990: ADD 00000991: PUSH2 0x0310 00000994: SWAP1 00000995: PUSH2 0x4477 00000998: JUMP 00000999: JUMPDEST 0000099a: PUSH1 0x00 0000099c: DUP4 0000099d: PUSH2 0x09a7 000009a0: JUMPI 000009a1: PUSH1 0x03 000009a3: PUSH2 0x09aa 000009a6: JUMP 000009a7: JUMPDEST 000009a8: PUSH1 0x04 000009aa: JUMPDEST 000009ab: SWAP1 000009ac: POP 000009ad: PUSH2 0x0a21 000009b0: DUP8 000009b1: DUP8 000009b2: DUP1 000009b3: DUP1 000009b4: PUSH1 0x1f 000009b6: ADD 000009b7: PUSH1 0x20 000009b9: DUP1 000009ba: SWAP2 000009bb: DIV 000009bc: MUL 000009bd: PUSH1 0x20 000009bf: ADD 000009c0: PUSH1 0x40 000009c2: MLOAD 000009c3: SWAP1 000009c4: DUP2 000009c5: ADD 000009c6: PUSH1 0x40 000009c8: MSTORE 000009c9: DUP1 000009ca: SWAP4 000009cb: SWAP3 000009cc: SWAP2 000009cd: SWAP1 000009ce: DUP2 000009cf: DUP2 000009d0: MSTORE 000009d1: PUSH1 0x20 000009d3: ADD 000009d4: DUP4 000009d5: DUP4 000009d6: DUP1 000009d7: DUP3 000009d8: DUP5 000009d9: CALLDATACOPY 000009da: PUSH1 0x00 000009dc: SWAP3 000009dd: ADD 000009de: SWAP2 000009df: SWAP1 000009e0: SWAP2 000009e1: MSTORE 000009e2: POP 000009e3: POP 000009e4: PUSH1 0x40 000009e6: DUP1 000009e7: MLOAD 000009e8: PUSH1 0x20 000009ea: PUSH1 0x1f 000009ec: DUP10 000009ed: ADD 000009ee: DUP2 000009ef: SWAP1 000009f0: DIV 000009f1: DUP2 000009f2: MUL 000009f3: DUP3 000009f4: ADD 000009f5: DUP2 000009f6: ADD 000009f7: SWAP1 000009f8: SWAP3 000009f9: MSTORE 000009fa: DUP8 000009fb: DUP2 000009fc: MSTORE 000009fd: DUP7 000009fe: SWAP4 000009ff: POP 00000a00: SWAP2 00000a01: POP 00000a02: DUP8 00000a03: SWAP1 00000a04: DUP8 00000a05: SWAP1 00000a06: DUP2 00000a07: SWAP1 00000a08: DUP5 00000a09: ADD 00000a0a: DUP4 00000a0b: DUP3 00000a0c: DUP1 00000a0d: DUP3 00000a0e: DUP5 00000a0f: CALLDATACOPY 00000a10: PUSH1 0x00 00000a12: SWAP3 00000a13: ADD 00000a14: SWAP2 00000a15: SWAP1 00000a16: SWAP2 00000a17: MSTORE 00000a18: POP 00000a19: PUSH2 0x24c3 00000a1c: SWAP3 00000a1d: POP 00000a1e: POP 00000a1f: POP 00000a20: JUMP 00000a21: JUMPDEST 00000a22: POP 00000a23: PUSH2 0x0a2c 00000a26: PUSH1 0x01 00000a28: PUSH1 0xfb 00000a2a: SSTORE 00000a2b: JUMP 00000a2c: JUMPDEST 00000a2d: POP 00000a2e: POP 00000a2f: POP 00000a30: POP 00000a31: POP 00000a32: POP 00000a33: JUMP 00000a34: JUMPDEST 00000a35: PUSH2 0x0a3c 00000a38: PUSH2 0x25f3 00000a3b: JUMP 00000a3c: JUMPDEST 00000a3d: PUSH2 0x0a45 00000a40: DUP3 00000a41: PUSH2 0x0b6b 00000a44: JUMP 00000a45: JUMPDEST 00000a46: PUSH2 0x0a61 00000a49: JUMPI 00000a4a: PUSH1 0x40 00000a4c: MLOAD 00000a4d: PUSH3 0x461bcd 00000a51: PUSH1 0xe5 00000a53: SHL 00000a54: DUP2 00000a55: MSTORE 00000a56: PUSH1 0x04 00000a58: ADD 00000a59: PUSH2 0x0310 00000a5c: SWAP1 00000a5d: PUSH2 0x44c5 00000a60: JUMP 00000a61: JUMPDEST 00000a62: PUSH1 0x01 00000a64: PUSH1 0x01 00000a66: PUSH1 0xa0 00000a68: SHL 00000a69: SUB 00000a6a: DUP1 00000a6b: DUP4 00000a6c: AND 00000a6d: PUSH1 0x00 00000a6f: SWAP1 00000a70: DUP2 00000a71: MSTORE 00000a72: PUSH1 0xc9 00000a74: PUSH1 0x20 00000a76: MSTORE 00000a77: PUSH1 0x40 00000a79: SWAP1 00000a7a: DUP2 00000a7b: SWAP1 00000a7c: KECCAK256 00000a7d: PUSH1 0x01 00000a7f: ADD 00000a80: SLOAD 00000a81: SWAP1 00000a82: MLOAD 00000a83: SWAP2 00000a84: AND 00000a85: SWAP1 00000a86: PUSH32 0x2afec66505e0ceed692012e3833f6609d4933ded34732135bc05f28423744065 00000aa7: SWAP1 00000aa8: PUSH2 0x0ab6 00000aab: SWAP1 00000aac: DUP6 00000aad: SWAP1 00000aae: DUP5 00000aaf: SWAP1 00000ab0: DUP7 00000ab1: SWAP1 00000ab2: PUSH2 0x44d5 00000ab5: JUMP 00000ab6: JUMPDEST 00000ab7: PUSH1 0x40 00000ab9: MLOAD 00000aba: DUP1 00000abb: SWAP2 00000abc: SUB 00000abd: SWAP1 00000abe: LOG1 00000abf: POP 00000ac0: PUSH1 0x01 00000ac2: PUSH1 0x01 00000ac4: PUSH1 0xa0 00000ac6: SHL 00000ac7: SUB 00000ac8: SWAP2 00000ac9: DUP3 00000aca: AND 00000acb: PUSH1 0x00 00000acd: SWAP1 00000ace: DUP2 00000acf: MSTORE 00000ad0: PUSH1 0xc9 00000ad2: PUSH1 0x20 00000ad4: MSTORE 00000ad5: PUSH1 0x40 00000ad7: SWAP1 00000ad8: KECCAK256 00000ad9: PUSH1 0x01 00000adb: ADD 00000adc: DUP1 00000add: SLOAD 00000ade: PUSH1 0x01 00000ae0: PUSH1 0x01 00000ae2: PUSH1 0xa0 00000ae4: SHL 00000ae5: SUB 00000ae6: NOT 00000ae7: AND 00000ae8: SWAP2 00000ae9: SWAP1 00000aea: SWAP3 00000aeb: AND 00000aec: OR 00000aed: SWAP1 00000aee: SSTORE 00000aef: JUMP 00000af0: JUMPDEST 00000af1: PUSH2 0x0af8 00000af4: PUSH2 0x2477 00000af7: JUMP 00000af8: JUMPDEST 00000af9: PUSH2 0x0b00 00000afc: PUSH2 0x249a 00000aff: JUMP 00000b00: JUMPDEST 00000b01: PUSH1 0x00 00000b03: DUP4 00000b04: PUSH2 0x0b0e 00000b07: JUMPI 00000b08: PUSH1 0x01 00000b0a: PUSH2 0x0b11 00000b0d: JUMP 00000b0e: JUMPDEST 00000b0f: PUSH1 0x02 00000b11: JUMPDEST 00000b12: SWAP1 00000b13: POP 00000b14: PUSH2 0x0b57 00000b17: DUP9 00000b18: DUP9 00000b19: DUP9 00000b1a: DUP9 00000b1b: DUP6 00000b1c: DUP9 00000b1d: DUP9 00000b1e: DUP1 00000b1f: DUP1 00000b20: PUSH1 0x1f 00000b22: ADD 00000b23: PUSH1 0x20 00000b25: DUP1 00000b26: SWAP2 00000b27: DIV 00000b28: MUL 00000b29: PUSH1 0x20 00000b2b: ADD 00000b2c: PUSH1 0x40 00000b2e: MLOAD 00000b2f: SWAP1 00000b30: DUP2 00000b31: ADD 00000b32: PUSH1 0x40 00000b34: MSTORE 00000b35: DUP1 00000b36: SWAP4 00000b37: SWAP3 00000b38: SWAP2 00000b39: SWAP1 00000b3a: DUP2 00000b3b: DUP2 00000b3c: MSTORE 00000b3d: PUSH1 0x20 00000b3f: ADD 00000b40: DUP4 00000b41: DUP4 00000b42: DUP1 00000b43: DUP3 00000b44: DUP5 00000b45: CALLDATACOPY 00000b46: PUSH1 0x00 00000b48: SWAP3 00000b49: ADD 00000b4a: SWAP2 00000b4b: SWAP1 00000b4c: SWAP2 00000b4d: MSTORE 00000b4e: POP 00000b4f: PUSH2 0x261d 00000b52: SWAP3 00000b53: POP 00000b54: POP 00000b55: POP 00000b56: JUMP 00000b57: JUMPDEST 00000b58: POP 00000b59: PUSH2 0x0b62 00000b5c: PUSH1 0x01 00000b5e: PUSH1 0xfb 00000b60: SSTORE 00000b61: JUMP 00000b62: JUMPDEST 00000b63: POP 00000b64: POP 00000b65: POP 00000b66: POP 00000b67: POP 00000b68: POP 00000b69: POP 00000b6a: JUMP 00000b6b: JUMPDEST 00000b6c: PUSH1 0x01 00000b6e: PUSH1 0x01 00000b70: PUSH1 0xa0 00000b72: SHL 00000b73: SUB 00000b74: SWAP1 00000b75: DUP2 00000b76: AND 00000b77: PUSH1 0x00 00000b79: SWAP1 00000b7a: DUP2 00000b7b: MSTORE 00000b7c: PUSH1 0xc9 00000b7e: PUSH1 0x20 00000b80: MSTORE 00000b81: PUSH1 0x40 00000b83: SWAP1 00000b84: KECCAK256 00000b85: SLOAD 00000b86: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000000 00000ba7: DUP3 00000ba8: AND 00000ba9: SWAP2 00000baa: AND 00000bab: EQ 00000bac: ISZERO 00000bad: SWAP1 00000bae: JUMP 00000baf: JUMPDEST 00000bb0: PUSH1 0x01 00000bb2: PUSH1 0x01 00000bb4: PUSH1 0xa0 00000bb6: SHL 00000bb7: SUB 00000bb8: PUSH32 0x000000000000000000000000bdae358dc3b0389a5532d011a8b4098ffda11836 00000bd9: AND 00000bda: ADDRESS 00000bdb: SUB 00000bdc: PUSH2 0x0bf7 00000bdf: JUMPI 00000be0: PUSH1 0x40 00000be2: MLOAD 00000be3: PUSH3 0x461bcd 00000be7: PUSH1 0xe5 00000be9: SHL 00000bea: DUP2 00000beb: MSTORE 00000bec: PUSH1 0x04 00000bee: ADD 00000bef: PUSH2 0x0310 00000bf2: SWAP1 00000bf3: PUSH2 0x4546 00000bf6: JUMP 00000bf7: JUMPDEST 00000bf8: PUSH32 0x000000000000000000000000bdae358dc3b0389a5532d011a8b4098ffda11836 00000c19: PUSH1 0x01 00000c1b: PUSH1 0x01 00000c1d: PUSH1 0xa0 00000c1f: SHL 00000c20: SUB 00000c21: AND 00000c22: PUSH2 0x0c52 00000c25: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc 00000c46: SLOAD 00000c47: PUSH1 0x01 00000c49: PUSH1 0x01 00000c4b: PUSH1 0xa0 00000c4d: SHL 00000c4e: SUB 00000c4f: AND 00000c50: SWAP1 00000c51: JUMP 00000c52: JUMPDEST 00000c53: PUSH1 0x01 00000c55: PUSH1 0x01 00000c57: PUSH1 0xa0 00000c59: SHL 00000c5a: SUB 00000c5b: AND 00000c5c: EQ 00000c5d: PUSH2 0x0c78 00000c60: JUMPI 00000c61: PUSH1 0x40 00000c63: MLOAD 00000c64: PUSH3 0x461bcd 00000c68: PUSH1 0xe5 00000c6a: SHL 00000c6b: DUP2 00000c6c: MSTORE 00000c6d: PUSH1 0x04 00000c6f: ADD 00000c70: PUSH2 0x0310 00000c73: SWAP1 00000c74: PUSH2 0x459f 00000c77: JUMP 00000c78: JUMPDEST 00000c79: PUSH2 0x0c81 00000c7c: DUP2 00000c7d: PUSH2 0x27d4 00000c80: JUMP 00000c81: JUMPDEST 00000c82: PUSH1 0x40 00000c84: DUP1 00000c85: MLOAD 00000c86: PUSH1 0x00 00000c88: DUP1 00000c89: DUP3 00000c8a: MSTORE 00000c8b: PUSH1 0x20 00000c8d: DUP3 00000c8e: ADD 00000c8f: SWAP1 00000c90: SWAP3 00000c91: MSTORE 00000c92: PUSH2 0x0c9d 00000c95: SWAP2 00000c96: DUP4 00000c97: SWAP2 00000c98: SWAP1 00000c99: PUSH2 0x27eb 00000c9c: JUMP 00000c9d: JUMPDEST 00000c9e: POP 00000c9f: JUMP 00000ca0: JUMPDEST 00000ca1: PUSH2 0x0ca8 00000ca4: PUSH2 0x25f3 00000ca7: JUMP 00000ca8: JUMPDEST 00000ca9: PUSH2 0x0cb0 00000cac: PUSH2 0x28e4 00000caf: JUMP 00000cb0: JUMPDEST 00000cb1: PUSH2 0x0cb8 00000cb4: PUSH2 0x2906 00000cb7: JUMP 00000cb8: JUMPDEST 00000cb9: JUMP 00000cba: JUMPDEST 00000cbb: PUSH2 0x0cc2 00000cbe: PUSH2 0x25f3 00000cc1: JUMP 00000cc2: JUMPDEST 00000cc3: PUSH2 0x0ccb 00000cc6: DUP3 00000cc7: PUSH2 0x0b6b 00000cca: JUMP 00000ccb: JUMPDEST 00000ccc: PUSH2 0x0ce7 00000ccf: JUMPI 00000cd0: PUSH1 0x40 00000cd2: MLOAD 00000cd3: PUSH3 0x461bcd 00000cd7: PUSH1 0xe5 00000cd9: SHL 00000cda: DUP2 00000cdb: MSTORE 00000cdc: PUSH1 0x04 00000cde: ADD 00000cdf: PUSH2 0x0310 00000ce2: SWAP1 00000ce3: PUSH2 0x44c5 00000ce6: JUMP 00000ce7: JUMPDEST 00000ce8: PUSH1 0xc8 00000cea: SLOAD 00000ceb: PUSH1 0x01 00000ced: PUSH1 0x01 00000cef: PUSH1 0xa0 00000cf1: SHL 00000cf2: SUB 00000cf3: DUP4 00000cf4: AND 00000cf5: PUSH1 0x00 00000cf7: SWAP1 00000cf8: DUP2 00000cf9: MSTORE 00000cfa: PUSH1 0xc9 00000cfc: PUSH1 0x20 00000cfe: MSTORE 00000cff: PUSH1 0x40 00000d01: SWAP1 00000d02: DUP2 00000d03: SWAP1 00000d04: KECCAK256 00000d05: PUSH1 0x04 00000d07: ADD 00000d08: SLOAD 00000d09: SWAP1 00000d0a: MLOAD 00000d0b: PUSH32 0x4e2746c7657bbec4d53a9c8ae5d432680b93d5a8479882aa161af6e253229ffb 00000d2c: SWAP3 00000d2d: PUSH2 0x0d39 00000d30: SWAP3 00000d31: DUP7 00000d32: SWAP3 00000d33: DUP7 00000d34: SWAP1 00000d35: PUSH2 0x45af 00000d38: JUMP 00000d39: JUMPDEST 00000d3a: PUSH1 0x40 00000d3c: MLOAD 00000d3d: DUP1 00000d3e: SWAP2 00000d3f: SUB 00000d40: SWAP1 00000d41: LOG1 00000d42: PUSH1 0x01 00000d44: PUSH1 0x01 00000d46: PUSH1 0xa0 00000d48: SHL 00000d49: SUB 00000d4a: SWAP1 00000d4b: SWAP2 00000d4c: AND 00000d4d: PUSH1 0x00 00000d4f: SWAP1 00000d50: DUP2 00000d51: MSTORE 00000d52: PUSH1 0xc9 00000d54: PUSH1 0x20 00000d56: MSTORE 00000d57: PUSH1 0x40 00000d59: SWAP1 00000d5a: KECCAK256 00000d5b: PUSH1 0x04 00000d5d: ADD 00000d5e: SSTORE 00000d5f: JUMP 00000d60: JUMPDEST 00000d61: PUSH2 0x0d68 00000d64: PUSH2 0x25f3 00000d67: JUMP 00000d68: JUMPDEST 00000d69: PUSH1 0x01 00000d6b: PUSH1 0x01 00000d6d: PUSH1 0xa0 00000d6f: SHL 00000d70: SUB 00000d71: DUP2 00000d72: AND 00000d73: PUSH2 0x0d8e 00000d76: JUMPI 00000d77: PUSH1 0x40 00000d79: MLOAD 00000d7a: PUSH3 0x461bcd 00000d7e: PUSH1 0xe5 00000d80: SHL 00000d81: DUP2 00000d82: MSTORE 00000d83: PUSH1 0x04 00000d85: ADD 00000d86: PUSH2 0x0310 00000d89: SWAP1 00000d8a: PUSH2 0x462b 00000d8d: JUMP 00000d8e: JUMPDEST 00000d8f: PUSH2 0x012e 00000d92: SLOAD 00000d93: PUSH1 0x01 00000d95: PUSH1 0x01 00000d97: PUSH1 0xa0 00000d99: SHL 00000d9a: SUB 00000d9b: DUP1 00000d9c: DUP4 00000d9d: AND 00000d9e: SWAP2 00000d9f: AND 00000da0: SUB 00000da1: PUSH2 0x0dbc 00000da4: JUMPI 00000da5: PUSH1 0x40 00000da7: MLOAD 00000da8: PUSH3 0x461bcd 00000dac: PUSH1 0xe5 00000dae: SHL 00000daf: DUP2 00000db0: MSTORE 00000db1: PUSH1 0x04 00000db3: ADD 00000db4: PUSH2 0x0310 00000db7: SWAP1 00000db8: PUSH2 0x4695 00000dbb: JUMP 00000dbc: JUMPDEST 00000dbd: PUSH2 0x012e 00000dc0: DUP1 00000dc1: SLOAD 00000dc2: PUSH1 0x01 00000dc4: PUSH1 0x01 00000dc6: PUSH1 0xa0 00000dc8: SHL 00000dc9: SUB 00000dca: NOT 00000dcb: AND 00000dcc: PUSH1 0x01 00000dce: PUSH1 0x01 00000dd0: PUSH1 0xa0 00000dd2: SHL 00000dd3: SUB 00000dd4: SWAP3 00000dd5: SWAP1 00000dd6: SWAP3 00000dd7: AND 00000dd8: SWAP2 00000dd9: SWAP1 00000dda: SWAP2 00000ddb: OR 00000ddc: SWAP1 00000ddd: SSTORE 00000dde: JUMP 00000ddf: JUMPDEST 00000de0: PUSH1 0x01 00000de2: PUSH1 0x01 00000de4: PUSH1 0xa0 00000de6: SHL 00000de7: SUB 00000de8: PUSH32 0x000000000000000000000000bdae358dc3b0389a5532d011a8b4098ffda11836 00000e09: AND 00000e0a: ADDRESS 00000e0b: SUB 00000e0c: PUSH2 0x0e27 00000e0f: JUMPI 00000e10: PUSH1 0x40 00000e12: MLOAD 00000e13: PUSH3 0x461bcd 00000e17: PUSH1 0xe5 00000e19: SHL 00000e1a: DUP2 00000e1b: MSTORE 00000e1c: PUSH1 0x04 00000e1e: ADD 00000e1f: PUSH2 0x0310 00000e22: SWAP1 00000e23: PUSH2 0x4546 00000e26: JUMP 00000e27: JUMPDEST 00000e28: PUSH32 0x000000000000000000000000bdae358dc3b0389a5532d011a8b4098ffda11836 00000e49: PUSH1 0x01 00000e4b: PUSH1 0x01 00000e4d: PUSH1 0xa0 00000e4f: SHL 00000e50: SUB 00000e51: AND 00000e52: PUSH2 0x0e82 00000e55: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc 00000e76: SLOAD 00000e77: PUSH1 0x01 00000e79: PUSH1 0x01 00000e7b: PUSH1 0xa0 00000e7d: SHL 00000e7e: SUB 00000e7f: AND 00000e80: SWAP1 00000e81: JUMP 00000e82: JUMPDEST 00000e83: PUSH1 0x01 00000e85: PUSH1 0x01 00000e87: PUSH1 0xa0 00000e89: SHL 00000e8a: SUB 00000e8b: AND 00000e8c: EQ 00000e8d: PUSH2 0x0ea8 00000e90: JUMPI 00000e91: PUSH1 0x40 00000e93: MLOAD 00000e94: PUSH3 0x461bcd 00000e98: PUSH1 0xe5 00000e9a: SHL 00000e9b: DUP2 00000e9c: MSTORE 00000e9d: PUSH1 0x04 00000e9f: ADD 00000ea0: PUSH2 0x0310 00000ea3: SWAP1 00000ea4: PUSH2 0x459f 00000ea7: JUMP 00000ea8: JUMPDEST 00000ea9: PUSH2 0x0eb1 00000eac: DUP3 00000ead: PUSH2 0x27d4 00000eb0: JUMP 00000eb1: JUMPDEST 00000eb2: PUSH2 0x0ebd 00000eb5: DUP3 00000eb6: DUP3 00000eb7: PUSH1 0x01 00000eb9: PUSH2 0x27eb 00000ebc: JUMP 00000ebd: JUMPDEST 00000ebe: POP 00000ebf: POP 00000ec0: JUMP 00000ec1: JUMPDEST 00000ec2: PUSH1 0x00 00000ec4: ADDRESS 00000ec5: PUSH1 0x01 00000ec7: PUSH1 0x01 00000ec9: PUSH1 0xa0 00000ecb: SHL 00000ecc: SUB 00000ecd: PUSH32 0x000000000000000000000000bdae358dc3b0389a5532d011a8b4098ffda11836 00000eee: AND 00000eef: EQ 00000ef0: PUSH2 0x0f0b 00000ef3: JUMPI 00000ef4: PUSH1 0x40 00000ef6: MLOAD 00000ef7: PUSH3 0x461bcd 00000efb: PUSH1 0xe5 00000efd: SHL 00000efe: DUP2 00000eff: MSTORE 00000f00: PUSH1 0x04 00000f02: ADD 00000f03: PUSH2 0x0310 00000f06: SWAP1 00000f07: PUSH2 0x46ff 00000f0a: JUMP 00000f0b: JUMPDEST 00000f0c: POP 00000f0d: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc 00000f2e: SWAP1 00000f2f: JUMP 00000f30: JUMPDEST 00000f31: PUSH2 0x0f38 00000f34: PUSH2 0x25f3 00000f37: JUMP 00000f38: JUMPDEST 00000f39: PUSH2 0x0f41 00000f3c: DUP3 00000f3d: PUSH2 0x0b6b 00000f40: JUMP 00000f41: JUMPDEST 00000f42: PUSH2 0x0f5d 00000f45: JUMPI 00000f46: PUSH1 0x40 00000f48: MLOAD 00000f49: PUSH3 0x461bcd 00000f4d: PUSH1 0xe5 00000f4f: SHL 00000f50: DUP2 00000f51: MSTORE 00000f52: PUSH1 0x04 00000f54: ADD 00000f55: PUSH2 0x0310 00000f58: SWAP1 00000f59: PUSH2 0x44c5 00000f5c: JUMP 00000f5d: JUMPDEST 00000f5e: PUSH1 0xc8 00000f60: SLOAD 00000f61: PUSH1 0x01 00000f63: PUSH1 0x01 00000f65: PUSH1 0xa0 00000f67: SHL 00000f68: SUB 00000f69: DUP4 00000f6a: AND 00000f6b: PUSH1 0x00 00000f6d: SWAP1 00000f6e: DUP2 00000f6f: MSTORE 00000f70: PUSH1 0xc9 00000f72: PUSH1 0x20 00000f74: MSTORE 00000f75: PUSH1 0x40 00000f77: SWAP1 00000f78: DUP2 00000f79: SWAP1 00000f7a: KECCAK256 00000f7b: PUSH1 0x05 00000f7d: ADD 00000f7e: SLOAD 00000f7f: SWAP1 00000f80: MLOAD 00000f81: PUSH32 0xb9c2d22dbf31b05651eadf1ede6f87e23acf9db9d8d82de6c69d53aa46ecc2c2 00000fa2: SWAP3 00000fa3: PUSH2 0x0faf 00000fa6: SWAP3 00000fa7: DUP7 00000fa8: SWAP3 00000fa9: DUP7 00000faa: SWAP1 00000fab: PUSH2 0x45af 00000fae: JUMP 00000faf: JUMPDEST 00000fb0: PUSH1 0x40 00000fb2: MLOAD 00000fb3: DUP1 00000fb4: SWAP2 00000fb5: SUB 00000fb6: SWAP1 00000fb7: LOG1 00000fb8: PUSH1 0x01 00000fba: PUSH1 0x01 00000fbc: PUSH1 0xa0 00000fbe: SHL 00000fbf: SUB 00000fc0: SWAP1 00000fc1: SWAP2 00000fc2: AND 00000fc3: PUSH1 0x00 00000fc5: SWAP1 00000fc6: DUP2 00000fc7: MSTORE 00000fc8: PUSH1 0xc9 00000fca: PUSH1 0x20 00000fcc: MSTORE 00000fcd: PUSH1 0x40 00000fcf: SWAP1 00000fd0: KECCAK256 00000fd1: PUSH1 0x05 00000fd3: ADD 00000fd4: SSTORE 00000fd5: JUMP 00000fd6: JUMPDEST 00000fd7: PUSH2 0x0fde 00000fda: PUSH2 0x25f3 00000fdd: JUMP 00000fde: JUMPDEST 00000fdf: PUSH2 0x0fe7 00000fe2: DUP2 00000fe3: PUSH2 0x0b6b 00000fe6: JUMP 00000fe7: JUMPDEST 00000fe8: PUSH2 0x1003 00000feb: JUMPI 00000fec: PUSH1 0x40 00000fee: MLOAD 00000fef: PUSH3 0x461bcd 00000ff3: PUSH1 0xe5 00000ff5: SHL 00000ff6: DUP2 00000ff7: MSTORE 00000ff8: PUSH1 0x04 00000ffa: ADD 00000ffb: PUSH2 0x0310 00000ffe: SWAP1 00000fff: PUSH2 0x44c5 00001002: JUMP 00001003: JUMPDEST 00001004: PUSH1 0x01 00001006: PUSH1 0x01 00001008: PUSH1 0xa0 0000100a: SHL 0000100b: SUB 0000100c: DUP2 0000100d: AND 0000100e: PUSH1 0x00 00001010: SWAP1 00001011: DUP2 00001012: MSTORE 00001013: PUSH1 0xc9 00001015: PUSH1 0x20 00001017: MSTORE 00001018: PUSH1 0x40 0000101a: SWAP1 0000101b: KECCAK256 0000101c: PUSH1 0x06 0000101e: ADD 0000101f: SLOAD 00001020: PUSH1 0xff 00001022: AND 00001023: ISZERO 00001024: PUSH2 0x103f 00001027: JUMPI 00001028: PUSH1 0x40 0000102a: MLOAD 0000102b: PUSH3 0x461bcd 0000102f: PUSH1 0xe5 00001031: SHL 00001032: DUP2 00001033: MSTORE 00001034: PUSH1 0x04 00001036: ADD 00001037: PUSH2 0x0310 0000103a: SWAP1 0000103b: PUSH2 0x474f 0000103e: JUMP 0000103f: JUMPDEST 00001040: PUSH1 0x01 00001042: PUSH1 0x01 00001044: PUSH1 0xa0 00001046: SHL 00001047: SUB 00001048: DUP2 00001049: AND 0000104a: PUSH1 0x00 0000104c: SWAP1 0000104d: DUP2 0000104e: MSTORE 0000104f: PUSH1 0xc9 00001051: PUSH1 0x20 00001053: MSTORE 00001054: PUSH1 0x40 00001056: SWAP1 00001057: DUP2 00001058: SWAP1 00001059: KECCAK256 0000105a: PUSH1 0x06 0000105c: ADD 0000105d: DUP1 0000105e: SLOAD 0000105f: PUSH1 0xff 00001061: NOT 00001062: AND 00001063: PUSH1 0x01 00001065: OR 00001066: SWAP1 00001067: SSTORE 00001068: PUSH1 0xc8 0000106a: SLOAD 0000106b: SWAP1 0000106c: MLOAD 0000106d: PUSH32 0xaf3af7664a431a2f0c37f4bad4e8a1733402871c1a886b85b673ad48353f4ec4 0000108e: SWAP2 0000108f: PUSH2 0x109a 00001092: SWAP2 00001093: DUP5 00001094: SWAP2 00001095: SWAP1 00001096: PUSH2 0x475f 00001099: JUMP 0000109a: JUMPDEST 0000109b: PUSH1 0x40 0000109d: MLOAD 0000109e: DUP1 0000109f: SWAP2 000010a0: SUB 000010a1: SWAP1 000010a2: LOG1 000010a3: POP 000010a4: JUMP 000010a5: JUMPDEST 000010a6: PUSH2 0x10ad 000010a9: PUSH2 0x25f3 000010ac: JUMP 000010ad: JUMPDEST 000010ae: PUSH2 0x10b6 000010b1: DUP2 000010b2: PUSH2 0x0b6b 000010b5: JUMP 000010b6: JUMPDEST 000010b7: PUSH2 0x10d2 000010ba: JUMPI 000010bb: PUSH1 0x40 000010bd: MLOAD 000010be: PUSH3 0x461bcd 000010c2: PUSH1 0xe5 000010c4: SHL 000010c5: DUP2 000010c6: MSTORE 000010c7: PUSH1 0x04 000010c9: ADD 000010ca: PUSH2 0x0310 000010cd: SWAP1 000010ce: PUSH2 0x44c5 000010d1: JUMP 000010d2: JUMPDEST 000010d3: PUSH32 0xbe9bb4bdca0a094babd75e3a98b1d2e2390633430d0a2f6e2b9970e2ee03fb2e 000010f4: DUP2 000010f5: PUSH1 0xc8 000010f7: SLOAD 000010f8: PUSH1 0x40 000010fa: MLOAD 000010fb: PUSH2 0x1105 000010fe: SWAP3 000010ff: SWAP2 00001100: SWAP1 00001101: PUSH2 0x475f 00001104: JUMP 00001105: JUMPDEST 00001106: PUSH1 0x40 00001108: MLOAD 00001109: DUP1 0000110a: SWAP2 0000110b: SUB 0000110c: SWAP1 0000110d: LOG1 0000110e: PUSH1 0x01 00001110: PUSH1 0x01 00001112: PUSH1 0xa0 00001114: SHL 00001115: SUB 00001116: DUP2 00001117: AND 00001118: PUSH1 0x00 0000111a: SWAP1 0000111b: DUP2 0000111c: MSTORE 0000111d: PUSH1 0xc9 0000111f: PUSH1 0x20 00001121: MSTORE 00001122: PUSH1 0x40 00001124: DUP2 00001125: KECCAK256 00001126: DUP1 00001127: SLOAD 00001128: PUSH1 0x01 0000112a: PUSH1 0x01 0000112c: PUSH1 0xa0 0000112e: SHL 0000112f: SUB 00001130: NOT 00001131: SWAP1 00001132: DUP2 00001133: AND 00001134: DUP3 00001135: SSTORE 00001136: PUSH1 0x01 00001138: DUP3 00001139: ADD 0000113a: DUP1 0000113b: SLOAD 0000113c: SWAP1 0000113d: SWAP2 0000113e: AND 0000113f: SWAP1 00001140: SSTORE 00001141: SWAP1 00001142: PUSH2 0x114e 00001145: PUSH1 0x02 00001147: DUP4 00001148: ADD 00001149: DUP3 0000114a: PUSH2 0x34d2 0000114d: JUMP 0000114e: JUMPDEST 0000114f: PUSH2 0x115c 00001152: PUSH1 0x03 00001154: DUP4 00001155: ADD 00001156: PUSH1 0x00 00001158: PUSH2 0x34d2 0000115b: JUMP 0000115c: JUMPDEST 0000115d: POP 0000115e: PUSH1 0x00 00001160: PUSH1 0x04 00001162: DUP3 00001163: ADD 00001164: DUP2 00001165: SWAP1 00001166: SSTORE 00001167: PUSH1 0x05 00001169: DUP3 0000116a: ADD 0000116b: SSTORE 0000116c: PUSH1 0x06 0000116e: ADD 0000116f: DUP1 00001170: SLOAD 00001171: PUSH1 0xff 00001173: NOT 00001174: AND 00001175: SWAP1 00001176: SSTORE 00001177: POP 00001178: JUMP 00001179: JUMPDEST 0000117a: PUSH2 0x1181 0000117d: PUSH2 0x2477 00001180: JUMP 00001181: JUMPDEST 00001182: PUSH2 0x1189 00001185: PUSH2 0x249a 00001188: JUMP 00001189: JUMPDEST 0000118a: PUSH1 0x00 0000118c: DUP4 0000118d: PUSH2 0x1197 00001190: JUMPI 00001191: PUSH1 0x0b 00001193: PUSH2 0x119a 00001196: JUMP 00001197: JUMPDEST 00001198: PUSH1 0x0c 0000119a: JUMPDEST 0000119b: SWAP1 0000119c: POP 0000119d: PUSH2 0x11dd 000011a0: DUP6 000011a1: DUP3 000011a2: DUP6 000011a3: DUP6 000011a4: DUP1 000011a5: DUP1 000011a6: PUSH1 0x1f 000011a8: ADD 000011a9: PUSH1 0x20 000011ab: DUP1 000011ac: SWAP2 000011ad: DIV 000011ae: MUL 000011af: PUSH1 0x20 000011b1: ADD 000011b2: PUSH1 0x40 000011b4: MLOAD 000011b5: SWAP1 000011b6: DUP2 000011b7: ADD 000011b8: PUSH1 0x40 000011ba: MSTORE 000011bb: DUP1 000011bc: SWAP4 000011bd: SWAP3 000011be: SWAP2 000011bf: SWAP1 000011c0: DUP2 000011c1: DUP2 000011c2: MSTORE 000011c3: PUSH1 0x20 000011c5: ADD 000011c6: DUP4 000011c7: DUP4 000011c8: DUP1 000011c9: DUP3 000011ca: DUP5 000011cb: CALLDATACOPY 000011cc: PUSH1 0x00 000011ce: SWAP3 000011cf: ADD 000011d0: SWAP2 000011d1: SWAP1 000011d2: SWAP2 000011d3: MSTORE 000011d4: POP 000011d5: PUSH2 0x24c3 000011d8: SWAP3 000011d9: POP 000011da: POP 000011db: POP 000011dc: JUMP 000011dd: JUMPDEST 000011de: POP 000011df: PUSH2 0x11e8 000011e2: PUSH1 0x01 000011e4: PUSH1 0xfb 000011e6: SSTORE 000011e7: JUMP 000011e8: JUMPDEST 000011e9: POP 000011ea: POP 000011eb: POP 000011ec: POP 000011ed: JUMP 000011ee: JUMPDEST 000011ef: PUSH2 0x11f6 000011f2: PUSH2 0x2477 000011f5: JUMP 000011f6: JUMPDEST 000011f7: PUSH2 0x11fe 000011fa: PUSH2 0x249a 000011fd: JUMP 000011fe: JUMPDEST 000011ff: PUSH2 0x0194 00001202: SLOAD 00001203: PUSH1 0x40 00001205: MLOAD 00001206: PUSH4 0x39beaa9b 0000120b: PUSH1 0xe1 0000120d: SHL 0000120e: DUP2 0000120f: MSTORE 00001210: PUSH1 0x01 00001212: PUSH1 0x01 00001214: PUSH1 0xa0 00001216: SHL 00001217: SUB 00001218: SWAP1 00001219: SWAP2 0000121a: AND 0000121b: SWAP1 0000121c: PUSH4 0x737d5536 00001221: SWAP1 00001222: PUSH2 0x123c 00001225: SWAP1 00001226: DUP12 00001227: SWAP1 00001228: DUP12 00001229: SWAP1 0000122a: DUP12 0000122b: SWAP1 0000122c: DUP12 0000122d: SWAP1 0000122e: DUP12 0000122f: SWAP1 00001230: CALLER 00001231: SWAP1 00001232: PUSH1 0x00 00001234: SWAP1 00001235: PUSH1 0x04 00001237: ADD 00001238: PUSH2 0x478f 0000123b: JUMP 0000123c: JUMPDEST 0000123d: PUSH1 0x20 0000123f: PUSH1 0x40 00001241: MLOAD 00001242: DUP1 00001243: DUP4 00001244: SUB 00001245: DUP2 00001246: PUSH1 0x00 00001248: DUP8 00001249: GAS 0000124a: CALL 0000124b: ISZERO 0000124c: DUP1 0000124d: ISZERO 0000124e: PUSH2 0x125b 00001251: JUMPI 00001252: RETURNDATASIZE 00001253: PUSH1 0x00 00001255: DUP1 00001256: RETURNDATACOPY 00001257: RETURNDATASIZE 00001258: PUSH1 0x00 0000125a: REVERT 0000125b: JUMPDEST 0000125c: POP 0000125d: POP 0000125e: POP 0000125f: POP 00001260: PUSH1 0x40 00001262: MLOAD 00001263: RETURNDATASIZE 00001264: PUSH1 0x1f 00001266: NOT 00001267: PUSH1 0x1f 00001269: DUP3 0000126a: ADD 0000126b: AND 0000126c: DUP3 0000126d: ADD 0000126e: DUP1 0000126f: PUSH1 0x40 00001271: MSTORE 00001272: POP 00001273: DUP2 00001274: ADD 00001275: SWAP1 00001276: PUSH2 0x127f 00001279: SWAP2 0000127a: SWAP1 0000127b: PUSH2 0x4412 0000127e: JUMP 0000127f: JUMPDEST 00001280: PUSH2 0x129b 00001283: JUMPI 00001284: PUSH1 0x40 00001286: MLOAD 00001287: PUSH3 0x461bcd 0000128b: PUSH1 0xe5 0000128d: SHL 0000128e: DUP2 0000128f: MSTORE 00001290: PUSH1 0x04 00001292: ADD 00001293: PUSH2 0x0310 00001296: SWAP1 00001297: PUSH2 0x4477 0000129a: JUMP 0000129b: JUMPDEST 0000129c: PUSH1 0x00 0000129e: DUP4 0000129f: PUSH2 0x12a9 000012a2: JUMPI 000012a3: PUSH1 0x0d 000012a5: PUSH2 0x12ac 000012a8: JUMP 000012a9: JUMPDEST 000012aa: PUSH1 0x0e 000012ac: JUMPDEST 000012ad: SWAP1 000012ae: POP 000012af: PUSH2 0x12f2 000012b2: DUP10 000012b3: DUP10 000012b4: DUP10 000012b5: DUP10 000012b6: DUP6 000012b7: DUP9 000012b8: DUP9 000012b9: DUP1 000012ba: DUP1 000012bb: PUSH1 0x1f 000012bd: ADD 000012be: PUSH1 0x20 000012c0: DUP1 000012c1: SWAP2 000012c2: DIV 000012c3: MUL 000012c4: PUSH1 0x20 000012c6: ADD 000012c7: PUSH1 0x40 000012c9: MLOAD 000012ca: SWAP1 000012cb: DUP2 000012cc: ADD 000012cd: PUSH1 0x40 000012cf: MSTORE 000012d0: DUP1 000012d1: SWAP4 000012d2: SWAP3 000012d3: SWAP2 000012d4: SWAP1 000012d5: DUP2 000012d6: DUP2 000012d7: MSTORE 000012d8: PUSH1 0x20 000012da: ADD 000012db: DUP4 000012dc: DUP4 000012dd: DUP1 000012de: DUP3 000012df: DUP5 000012e0: CALLDATACOPY 000012e1: PUSH1 0x00 000012e3: SWAP3 000012e4: ADD 000012e5: SWAP2 000012e6: SWAP1 000012e7: SWAP2 000012e8: MSTORE 000012e9: POP 000012ea: PUSH2 0x261d 000012ed: SWAP3 000012ee: POP 000012ef: POP 000012f0: POP 000012f1: JUMP 000012f2: JUMPDEST 000012f3: POP 000012f4: PUSH2 0x12fd 000012f7: PUSH1 0x01 000012f9: PUSH1 0xfb 000012fb: SSTORE 000012fc: JUMP 000012fd: JUMPDEST 000012fe: POP 000012ff: POP 00001300: POP 00001301: POP 00001302: POP 00001303: POP 00001304: POP 00001305: POP 00001306: JUMP 00001307: JUMPDEST 00001308: PUSH1 0xc9 0000130a: PUSH1 0x20 0000130c: MSTORE 0000130d: PUSH1 0x00 0000130f: SWAP1 00001310: DUP2 00001311: MSTORE 00001312: PUSH1 0x40 00001314: SWAP1 00001315: KECCAK256 00001316: DUP1 00001317: SLOAD 00001318: PUSH1 0x01 0000131a: DUP3 0000131b: ADD 0000131c: SLOAD 0000131d: PUSH1 0x02 0000131f: DUP4 00001320: ADD 00001321: DUP1 00001322: SLOAD 00001323: PUSH1 0x01 00001325: PUSH1 0x01 00001327: PUSH1 0xa0 00001329: SHL 0000132a: SUB 0000132b: SWAP4 0000132c: DUP5 0000132d: AND 0000132e: SWAP5 0000132f: SWAP3 00001330: SWAP1 00001331: SWAP4 00001332: AND 00001333: SWAP3 00001334: PUSH2 0x133c 00001337: SWAP1 00001338: PUSH2 0x4803 0000133b: JUMP 0000133c: JUMPDEST 0000133d: DUP1 0000133e: PUSH1 0x1f 00001340: ADD 00001341: PUSH1 0x20 00001343: DUP1 00001344: SWAP2 00001345: DIV 00001346: MUL 00001347: PUSH1 0x20 00001349: ADD 0000134a: PUSH1 0x40 0000134c: MLOAD 0000134d: SWAP1 0000134e: DUP2 0000134f: ADD 00001350: PUSH1 0x40 00001352: MSTORE 00001353: DUP1 00001354: SWAP3 00001355: SWAP2 00001356: SWAP1 00001357: DUP2 00001358: DUP2 00001359: MSTORE 0000135a: PUSH1 0x20 0000135c: ADD 0000135d: DUP3 0000135e: DUP1 0000135f: SLOAD 00001360: PUSH2 0x1368 00001363: SWAP1 00001364: PUSH2 0x4803 00001367: JUMP 00001368: JUMPDEST 00001369: DUP1 0000136a: ISZERO 0000136b: PUSH2 0x13b5 0000136e: JUMPI 0000136f: DUP1 00001370: PUSH1 0x1f 00001372: LT 00001373: PUSH2 0x138a 00001376: JUMPI 00001377: PUSH2 0x0100 0000137a: DUP1 0000137b: DUP4 0000137c: SLOAD 0000137d: DIV 0000137e: MUL 0000137f: DUP4 00001380: MSTORE 00001381: SWAP2 00001382: PUSH1 0x20 00001384: ADD 00001385: SWAP2 00001386: PUSH2 0x13b5 00001389: JUMP 0000138a: JUMPDEST 0000138b: DUP3 0000138c: ADD 0000138d: SWAP2 0000138e: SWAP1 0000138f: PUSH1 0x00 00001391: MSTORE 00001392: PUSH1 0x20 00001394: PUSH1 0x00 00001396: KECCAK256 00001397: SWAP1 00001398: JUMPDEST 00001399: DUP2 0000139a: SLOAD 0000139b: DUP2 0000139c: MSTORE 0000139d: SWAP1 0000139e: PUSH1 0x01 000013a0: ADD 000013a1: SWAP1 000013a2: PUSH1 0x20 000013a4: ADD 000013a5: DUP1 000013a6: DUP4 000013a7: GT 000013a8: PUSH2 0x1398 000013ab: JUMPI 000013ac: DUP3 000013ad: SWAP1 000013ae: SUB 000013af: PUSH1 0x1f 000013b1: AND 000013b2: DUP3 000013b3: ADD 000013b4: SWAP2 000013b5: JUMPDEST 000013b6: POP 000013b7: POP 000013b8: POP 000013b9: POP 000013ba: POP 000013bb: SWAP1 000013bc: DUP1 000013bd: PUSH1 0x03 000013bf: ADD 000013c0: DUP1 000013c1: SLOAD 000013c2: PUSH2 0x13ca 000013c5: SWAP1 000013c6: PUSH2 0x4803 000013c9: JUMP 000013ca: JUMPDEST 000013cb: DUP1 000013cc: PUSH1 0x1f 000013ce: ADD 000013cf: PUSH1 0x20 000013d1: DUP1 000013d2: SWAP2 000013d3: DIV 000013d4: MUL 000013d5: PUSH1 0x20 000013d7: ADD 000013d8: PUSH1 0x40 000013da: MLOAD 000013db: SWAP1 000013dc: DUP2 000013dd: ADD 000013de: PUSH1 0x40 000013e0: MSTORE 000013e1: DUP1 000013e2: SWAP3 000013e3: SWAP2 000013e4: SWAP1 000013e5: DUP2 000013e6: DUP2 000013e7: MSTORE 000013e8: PUSH1 0x20 000013ea: ADD 000013eb: DUP3 000013ec: DUP1 000013ed: SLOAD 000013ee: PUSH2 0x13f6 000013f1: SWAP1 000013f2: PUSH2 0x4803 000013f5: JUMP 000013f6: JUMPDEST 000013f7: DUP1 000013f8: ISZERO 000013f9: PUSH2 0x1443 000013fc: JUMPI 000013fd: DUP1 000013fe: PUSH1 0x1f 00001400: LT 00001401: PUSH2 0x1418 00001404: JUMPI 00001405: PUSH2 0x0100 00001408: DUP1 00001409: DUP4 0000140a: SLOAD 0000140b: DIV 0000140c: MUL 0000140d: DUP4 0000140e: MSTORE 0000140f: SWAP2 00001410: PUSH1 0x20 00001412: ADD 00001413: SWAP2 00001414: PUSH2 0x1443 00001417: JUMP 00001418: JUMPDEST 00001419: DUP3 0000141a: ADD 0000141b: SWAP2 0000141c: SWAP1 0000141d: PUSH1 0x00 0000141f: MSTORE 00001420: PUSH1 0x20 00001422: PUSH1 0x00 00001424: KECCAK256 00001425: SWAP1 00001426: JUMPDEST 00001427: DUP2 00001428: SLOAD 00001429: DUP2 0000142a: MSTORE 0000142b: SWAP1 0000142c: PUSH1 0x01 0000142e: ADD 0000142f: SWAP1 00001430: PUSH1 0x20 00001432: ADD 00001433: DUP1 00001434: DUP4 00001435: GT 00001436: PUSH2 0x1426 00001439: JUMPI 0000143a: DUP3 0000143b: SWAP1 0000143c: SUB 0000143d: PUSH1 0x1f 0000143f: AND 00001440: DUP3 00001441: ADD 00001442: SWAP2 00001443: JUMPDEST 00001444: POP 00001445: POP 00001446: POP 00001447: POP 00001448: PUSH1 0x04 0000144a: DUP4 0000144b: ADD 0000144c: SLOAD 0000144d: PUSH1 0x05 0000144f: DUP5 00001450: ADD 00001451: SLOAD 00001452: PUSH1 0x06 00001454: SWAP1 00001455: SWAP5 00001456: ADD 00001457: SLOAD 00001458: SWAP3 00001459: SWAP4 0000145a: SWAP1 0000145b: SWAP3 0000145c: SWAP1 0000145d: SWAP2 0000145e: POP 0000145f: PUSH1 0xff 00001461: AND 00001462: DUP8 00001463: JUMP 00001464: JUMPDEST 00001465: PUSH2 0x146c 00001468: PUSH2 0x2477 0000146b: JUMP 0000146c: JUMPDEST 0000146d: PUSH2 0x1474 00001470: PUSH2 0x249a 00001473: JUMP 00001474: JUMPDEST 00001475: PUSH2 0x0194 00001478: SLOAD 00001479: PUSH1 0x40 0000147b: MLOAD 0000147c: PUSH4 0x3ed959bb 00001481: PUSH1 0xe2 00001483: SHL 00001484: DUP2 00001485: MSTORE 00001486: PUSH1 0x01 00001488: PUSH1 0x01 0000148a: PUSH1 0xa0 0000148c: SHL 0000148d: SUB 0000148e: SWAP1 0000148f: SWAP2 00001490: AND 00001491: SWAP1 00001492: PUSH4 0xfb6566ec 00001497: SWAP1 00001498: PUSH2 0x14ab 0000149b: SWAP1 0000149c: DUP9 0000149d: SWAP1 0000149e: DUP9 0000149f: SWAP1 000014a0: CALLER 000014a1: SWAP1 000014a2: CALLVALUE 000014a3: SWAP1 000014a4: PUSH1 0x04 000014a6: ADD 000014a7: PUSH2 0x4829 000014aa: JUMP 000014ab: JUMPDEST 000014ac: PUSH1 0x20 000014ae: PUSH1 0x40 000014b0: MLOAD 000014b1: DUP1 000014b2: DUP4 000014b3: SUB 000014b4: DUP2 000014b5: PUSH1 0x00 000014b7: DUP8 000014b8: GAS 000014b9: CALL 000014ba: ISZERO 000014bb: DUP1 000014bc: ISZERO 000014bd: PUSH2 0x14ca 000014c0: JUMPI 000014c1: RETURNDATASIZE 000014c2: PUSH1 0x00 000014c4: DUP1 000014c5: RETURNDATACOPY 000014c6: RETURNDATASIZE 000014c7: PUSH1 0x00 000014c9: REVERT 000014ca: JUMPDEST 000014cb: POP 000014cc: POP 000014cd: POP 000014ce: POP 000014cf: PUSH1 0x40 000014d1: MLOAD 000014d2: RETURNDATASIZE 000014d3: PUSH1 0x1f 000014d5: NOT 000014d6: PUSH1 0x1f 000014d8: DUP3 000014d9: ADD 000014da: AND 000014db: DUP3 000014dc: ADD 000014dd: DUP1 000014de: PUSH1 0x40 000014e0: MSTORE 000014e1: POP 000014e2: DUP2 000014e3: ADD 000014e4: SWAP1 000014e5: PUSH2 0x14ee 000014e8: SWAP2 000014e9: SWAP1 000014ea: PUSH2 0x4412 000014ed: JUMP 000014ee: JUMPDEST 000014ef: PUSH2 0x150a 000014f2: JUMPI 000014f3: PUSH1 0x40 000014f5: MLOAD 000014f6: PUSH3 0x461bcd 000014fa: PUSH1 0xe5 000014fc: SHL 000014fd: DUP2 000014fe: MSTORE 000014ff: PUSH1 0x04 00001501: ADD 00001502: PUSH2 0x0310 00001505: SWAP1 00001506: PUSH2 0x4477 00001509: JUMP 0000150a: JUMPDEST 0000150b: PUSH1 0x00 0000150d: DUP4 0000150e: PUSH2 0x1518 00001511: JUMPI 00001512: PUSH1 0x0d 00001514: PUSH2 0x151b 00001517: JUMP 00001518: JUMPDEST 00001519: PUSH1 0x0e 0000151b: JUMPDEST 0000151c: SWAP1 0000151d: POP 0000151e: PUSH2 0x155e 00001521: DUP7 00001522: DUP3 00001523: DUP6 00001524: DUP6 00001525: DUP1 00001526: DUP1 00001527: PUSH1 0x1f 00001529: ADD 0000152a: PUSH1 0x20 0000152c: DUP1 0000152d: SWAP2 0000152e: DIV 0000152f: MUL 00001530: PUSH1 0x20 00001532: ADD 00001533: PUSH1 0x40 00001535: MLOAD 00001536: SWAP1 00001537: DUP2 00001538: ADD 00001539: PUSH1 0x40 0000153b: MSTORE 0000153c: DUP1 0000153d: SWAP4 0000153e: SWAP3 0000153f: SWAP2 00001540: SWAP1 00001541: DUP2 00001542: DUP2 00001543: MSTORE 00001544: PUSH1 0x20 00001546: ADD 00001547: DUP4 00001548: DUP4 00001549: DUP1 0000154a: DUP3 0000154b: DUP5 0000154c: CALLDATACOPY 0000154d: PUSH1 0x00 0000154f: SWAP3 00001550: ADD 00001551: SWAP2 00001552: SWAP1 00001553: SWAP2 00001554: MSTORE 00001555: POP 00001556: PUSH2 0x24c3 00001559: SWAP3 0000155a: POP 0000155b: POP 0000155c: POP 0000155d: JUMP 0000155e: JUMPDEST 0000155f: POP 00001560: PUSH2 0x1569 00001563: PUSH1 0x01 00001565: PUSH1 0xfb 00001567: SSTORE 00001568: JUMP 00001569: JUMPDEST 0000156a: POP 0000156b: POP 0000156c: POP 0000156d: POP 0000156e: POP 0000156f: JUMP 00001570: JUMPDEST 00001571: PUSH2 0x1578 00001574: PUSH2 0x25f3 00001577: JUMP 00001578: JUMPDEST 00001579: PUSH2 0x0cb8 0000157c: PUSH1 0x00 0000157e: PUSH2 0x2952 00001581: JUMP 00001582: JUMPDEST 00001583: PUSH2 0x158a 00001586: PUSH2 0x2477 00001589: JUMP 0000158a: JUMPDEST 0000158b: PUSH2 0x1592 0000158e: PUSH2 0x249a 00001591: JUMP 00001592: JUMPDEST 00001593: PUSH1 0x00 00001595: DUP4 00001596: PUSH2 0x15a0 00001599: JUMPI 0000159a: PUSH1 0x0b 0000159c: PUSH2 0x0b11 0000159f: JUMP 000015a0: JUMPDEST 000015a1: PUSH1 0x0c 000015a3: SWAP1 000015a4: POP 000015a5: PUSH2 0x0b57 000015a8: DUP9 000015a9: DUP9 000015aa: DUP9 000015ab: DUP9 000015ac: DUP6 000015ad: DUP9 000015ae: DUP9 000015af: DUP1 000015b0: DUP1 000015b1: PUSH1 0x1f 000015b3: ADD 000015b4: PUSH1 0x20 000015b6: DUP1 000015b7: SWAP2 000015b8: DIV 000015b9: MUL 000015ba: PUSH1 0x20 000015bc: ADD 000015bd: PUSH1 0x40 000015bf: MLOAD 000015c0: SWAP1 000015c1: DUP2 000015c2: ADD 000015c3: PUSH1 0x40 000015c5: MSTORE 000015c6: DUP1 000015c7: SWAP4 000015c8: SWAP3 000015c9: SWAP2 000015ca: SWAP1 000015cb: DUP2 000015cc: DUP2 000015cd: MSTORE 000015ce: PUSH1 0x20 000015d0: ADD 000015d1: DUP4 000015d2: DUP4 000015d3: DUP1 000015d4: DUP3 000015d5: DUP5 000015d6: CALLDATACOPY 000015d7: PUSH1 0x00 000015d9: SWAP3 000015da: ADD 000015db: SWAP2 000015dc: SWAP1 000015dd: SWAP2 000015de: MSTORE 000015df: POP 000015e0: PUSH2 0x261d 000015e3: SWAP3 000015e4: POP 000015e5: POP 000015e6: POP 000015e7: JUMP 000015e8: JUMPDEST 000015e9: PUSH2 0x15f0 000015ec: PUSH2 0x25f3 000015ef: JUMP 000015f0: JUMPDEST 000015f1: PUSH2 0x15f8 000015f4: PUSH2 0x2477 000015f7: JUMP 000015f8: JUMPDEST 000015f9: PUSH2 0x0cb8 000015fc: PUSH2 0x29a4 000015ff: JUMP 00001600: JUMPDEST 00001601: PUSH2 0x1608 00001604: PUSH2 0x25f3 00001607: JUMP 00001608: JUMPDEST 00001609: PUSH2 0x0194 0000160c: DUP1 0000160d: SLOAD 0000160e: PUSH1 0x01 00001610: PUSH1 0x01 00001612: PUSH1 0xa0 00001614: SHL 00001615: SUB 00001616: NOT 00001617: AND 00001618: PUSH1 0x01 0000161a: PUSH1 0x01 0000161c: PUSH1 0xa0 0000161e: SHL 0000161f: SUB 00001620: SWAP3 00001621: SWAP1 00001622: SWAP3 00001623: AND 00001624: SWAP2 00001625: SWAP1 00001626: SWAP2 00001627: OR 00001628: SWAP1 00001629: SSTORE 0000162a: JUMP 0000162b: JUMPDEST 0000162c: PUSH2 0x1633 0000162f: PUSH2 0x25f3 00001632: JUMP 00001633: JUMPDEST 00001634: PUSH2 0x163b 00001637: PUSH2 0x249a 0000163a: JUMP 0000163b: JUMPDEST 0000163c: PUSH1 0x01 0000163e: PUSH1 0x01 00001640: PUSH1 0xa0 00001642: SHL 00001643: SUB 00001644: DUP3 00001645: AND 00001646: PUSH1 0x00 00001648: SWAP1 00001649: DUP2 0000164a: MSTORE 0000164b: PUSH1 0xc9 0000164d: PUSH1 0x20 0000164f: MSTORE 00001650: PUSH1 0x40 00001652: SWAP1 00001653: KECCAK256 00001654: PUSH1 0x06 00001656: ADD 00001657: SLOAD 00001658: PUSH1 0xff 0000165a: AND 0000165b: PUSH2 0x1676 0000165e: JUMPI 0000165f: PUSH1 0x40 00001661: MLOAD 00001662: PUSH3 0x461bcd 00001666: PUSH1 0xe5 00001668: SHL 00001669: DUP2 0000166a: MSTORE 0000166b: PUSH1 0x04 0000166d: ADD 0000166e: PUSH2 0x0310 00001671: SWAP1 00001672: PUSH2 0x489b 00001675: JUMP 00001676: JUMPDEST 00001677: PUSH1 0x01 00001679: PUSH1 0x01 0000167b: PUSH1 0xa0 0000167d: SHL 0000167e: SUB 0000167f: DUP1 00001680: DUP4 00001681: AND 00001682: PUSH1 0x00 00001684: SWAP1 00001685: DUP2 00001686: MSTORE 00001687: PUSH1 0xc9 00001689: PUSH1 0x20 0000168b: MSTORE 0000168c: PUSH1 0x40 0000168e: SWAP1 0000168f: KECCAK256 00001690: PUSH1 0x01 00001692: ADD 00001693: SLOAD 00001694: AND 00001695: DUP1 00001696: PUSH2 0x16b1 00001699: JUMPI 0000169a: PUSH1 0x40 0000169c: MLOAD 0000169d: PUSH3 0x461bcd 000016a1: PUSH1 0xe5 000016a3: SHL 000016a4: DUP2 000016a5: MSTORE 000016a6: PUSH1 0x04 000016a8: ADD 000016a9: PUSH2 0x0310 000016ac: SWAP1 000016ad: PUSH2 0x48e0 000016b0: JUMP 000016b1: JUMPDEST 000016b2: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001 000016d3: PUSH1 0x01 000016d5: PUSH1 0x01 000016d7: PUSH1 0xa0 000016d9: SHL 000016da: SUB 000016db: AND 000016dc: DUP4 000016dd: PUSH1 0x01 000016df: PUSH1 0x01 000016e1: PUSH1 0xa0 000016e3: SHL 000016e4: SUB 000016e5: AND 000016e6: SUB 000016e7: PUSH2 0x176c 000016ea: JUMPI 000016eb: PUSH1 0x00 000016ed: DUP2 000016ee: PUSH1 0x01 000016f0: PUSH1 0x01 000016f2: PUSH1 0xa0 000016f4: SHL 000016f5: SUB 000016f6: AND 000016f7: DUP4 000016f8: PUSH1 0x40 000016fa: MLOAD 000016fb: PUSH2 0x1703 000016fe: SWAP1 000016ff: PUSH2 0x48f0 00001702: JUMP 00001703: JUMPDEST 00001704: PUSH1 0x00 00001706: PUSH1 0x40 00001708: MLOAD 00001709: DUP1 0000170a: DUP4 0000170b: SUB 0000170c: DUP2 0000170d: DUP6 0000170e: DUP8 0000170f: GAS 00001710: CALL 00001711: SWAP3 00001712: POP 00001713: POP 00001714: POP 00001715: RETURNDATASIZE 00001716: DUP1 00001717: PUSH1 0x00 00001719: DUP2 0000171a: EQ 0000171b: PUSH2 0x1740 0000171e: JUMPI 0000171f: PUSH1 0x40 00001721: MLOAD 00001722: SWAP2 00001723: POP 00001724: PUSH1 0x1f 00001726: NOT 00001727: PUSH1 0x3f 00001729: RETURNDATASIZE 0000172a: ADD 0000172b: AND 0000172c: DUP3 0000172d: ADD 0000172e: PUSH1 0x40 00001730: MSTORE 00001731: RETURNDATASIZE 00001732: DUP3 00001733: MSTORE 00001734: RETURNDATASIZE 00001735: PUSH1 0x00 00001737: PUSH1 0x20 00001739: DUP5 0000173a: ADD 0000173b: RETURNDATACOPY 0000173c: PUSH2 0x1745 0000173f: JUMP 00001740: JUMPDEST 00001741: PUSH1 0x60 00001743: SWAP2 00001744: POP 00001745: JUMPDEST 00001746: POP 00001747: POP 00001748: SWAP1 00001749: POP 0000174a: DUP1 0000174b: PUSH2 0x1766 0000174e: JUMPI 0000174f: PUSH1 0x40 00001751: MLOAD 00001752: PUSH3 0x461bcd 00001756: PUSH1 0xe5 00001758: SHL 00001759: DUP2 0000175a: MSTORE 0000175b: PUSH1 0x04 0000175d: ADD 0000175e: PUSH2 0x0310 00001761: SWAP1 00001762: PUSH2 0x4939 00001765: JUMP 00001766: JUMPDEST 00001767: POP 00001768: PUSH2 0x1780 0000176b: JUMP 0000176c: JUMPDEST 0000176d: PUSH2 0x1780 00001770: PUSH1 0x01 00001772: PUSH1 0x01 00001774: PUSH1 0xa0 00001776: SHL 00001777: SUB 00001778: DUP5 00001779: AND 0000177a: DUP3 0000177b: DUP5 0000177c: PUSH2 0x29e1 0000177f: JUMP 00001780: JUMPDEST 00001781: POP 00001782: PUSH2 0x0ebd 00001785: PUSH1 0x01 00001787: PUSH1 0xfb 00001789: SSTORE 0000178a: JUMP 0000178b: JUMPDEST 0000178c: PUSH2 0x1793 0000178f: PUSH2 0x25f3 00001792: JUMP 00001793: JUMPDEST 00001794: PUSH1 0x01 00001796: PUSH1 0x01 00001798: PUSH1 0xa0 0000179a: SHL 0000179b: SUB 0000179c: DUP2 0000179d: AND 0000179e: PUSH1 0x00 000017a0: SWAP1 000017a1: DUP2 000017a2: MSTORE 000017a3: PUSH2 0x0195 000017a6: PUSH1 0x20 000017a8: MSTORE 000017a9: PUSH1 0x40 000017ab: SWAP1 000017ac: KECCAK256 000017ad: SLOAD 000017ae: PUSH1 0xff 000017b0: AND 000017b1: PUSH2 0x0c9d 000017b4: JUMPI 000017b5: PUSH1 0x01 000017b7: PUSH1 0x01 000017b9: PUSH1 0xa0 000017bb: SHL 000017bc: SUB 000017bd: DUP2 000017be: AND 000017bf: PUSH1 0x00 000017c1: SWAP1 000017c2: DUP2 000017c3: MSTORE 000017c4: PUSH2 0x0195 000017c7: PUSH1 0x20 000017c9: MSTORE 000017ca: PUSH1 0x40 000017cc: SWAP1 000017cd: KECCAK256 000017ce: DUP1 000017cf: SLOAD 000017d0: PUSH1 0xff 000017d2: NOT 000017d3: AND 000017d4: PUSH1 0x01 000017d6: OR 000017d7: SWAP1 000017d8: SSTORE 000017d9: POP 000017da: JUMP 000017db: JUMPDEST 000017dc: PUSH2 0x17e3 000017df: PUSH2 0x25f3 000017e2: JUMP 000017e3: JUMPDEST 000017e4: PUSH2 0x012f 000017e7: DUP1 000017e8: SLOAD 000017e9: PUSH1 0x01 000017eb: PUSH1 0x01 000017ed: PUSH1 0xa0 000017ef: SHL 000017f0: SUB 000017f1: NOT 000017f2: AND 000017f3: PUSH1 0x01 000017f5: PUSH1 0x01 000017f7: PUSH1 0xa0 000017f9: SHL 000017fa: SUB 000017fb: SWAP3 000017fc: SWAP1 000017fd: SWAP3 000017fe: AND 000017ff: SWAP2 00001800: SWAP1 00001801: SWAP2 00001802: OR 00001803: SWAP1 00001804: SSTORE 00001805: JUMP 00001806: JUMPDEST 00001807: PUSH2 0x180e 0000180a: PUSH2 0x2477 0000180d: JUMP 0000180e: JUMPDEST 0000180f: PUSH2 0x1816 00001812: PUSH2 0x249a 00001815: JUMP 00001816: JUMPDEST 00001817: PUSH1 0x00 00001819: DUP4 0000181a: PUSH2 0x1824 0000181d: JUMPI 0000181e: PUSH1 0x01 00001820: PUSH2 0x119a 00001823: JUMP 00001824: JUMPDEST 00001825: PUSH1 0x02 00001827: SWAP1 00001828: POP 00001829: PUSH2 0x11dd 0000182c: DUP6 0000182d: DUP3 0000182e: DUP6 0000182f: DUP6 00001830: DUP1 00001831: DUP1 00001832: PUSH1 0x1f 00001834: ADD 00001835: PUSH1 0x20 00001837: DUP1 00001838: SWAP2 00001839: DIV 0000183a: MUL 0000183b: PUSH1 0x20 0000183d: ADD 0000183e: PUSH1 0x40 00001840: MLOAD 00001841: SWAP1 00001842: DUP2 00001843: ADD 00001844: PUSH1 0x40 00001846: MSTORE 00001847: DUP1 00001848: SWAP4 00001849: SWAP3 0000184a: SWAP2 0000184b: SWAP1 0000184c: DUP2 0000184d: DUP2 0000184e: MSTORE 0000184f: PUSH1 0x20 00001851: ADD 00001852: DUP4 00001853: DUP4 00001854: DUP1 00001855: DUP3 00001856: DUP5 00001857: CALLDATACOPY 00001858: PUSH1 0x00 0000185a: SWAP3 0000185b: ADD 0000185c: SWAP2 0000185d: SWAP1 0000185e: SWAP2 0000185f: MSTORE 00001860: POP 00001861: PUSH2 0x24c3 00001864: SWAP3 00001865: POP 00001866: POP 00001867: POP 00001868: JUMP 00001869: JUMPDEST 0000186a: PUSH2 0x1871 0000186d: PUSH2 0x25f3 00001870: JUMP 00001871: JUMPDEST 00001872: PUSH2 0x0196 00001875: DUP1 00001876: SLOAD 00001877: PUSH1 0x01 00001879: PUSH1 0x01 0000187b: PUSH1 0xa0 0000187d: SHL 0000187e: SUB 0000187f: NOT 00001880: AND 00001881: PUSH1 0x01 00001883: PUSH1 0x01 00001885: PUSH1 0xa0 00001887: SHL 00001888: SUB 00001889: SWAP3 0000188a: SWAP1 0000188b: SWAP3 0000188c: AND 0000188d: SWAP2 0000188e: SWAP1 0000188f: SWAP2 00001890: OR 00001891: SWAP1 00001892: SSTORE 00001893: JUMP 00001894: JUMPDEST 00001895: PUSH2 0x189c 00001898: PUSH2 0x249a 0000189b: JUMP 0000189c: JUMPDEST 0000189d: PUSH2 0x18a4 000018a0: PUSH2 0x2477 000018a3: JUMP 000018a4: JUMPDEST 000018a5: PUSH1 0x60 000018a7: DUP3 000018a8: ADD 000018a9: MLOAD 000018aa: PUSH1 0x20 000018ac: ADD 000018ad: MLOAD 000018ae: PUSH1 0x01 000018b0: PUSH1 0x01 000018b2: PUSH1 0xa0 000018b4: SHL 000018b5: SUB 000018b6: AND 000018b7: ADDRESS 000018b8: EQ 000018b9: PUSH2 0x18d4 000018bc: JUMPI 000018bd: PUSH1 0x40 000018bf: MLOAD 000018c0: PUSH3 0x461bcd 000018c4: PUSH1 0xe5 000018c6: SHL 000018c7: DUP2 000018c8: MSTORE 000018c9: PUSH1 0x04 000018cb: ADD 000018cc: PUSH2 0x0310 000018cf: SWAP1 000018d0: PUSH2 0x498b 000018d3: JUMP 000018d4: JUMPDEST 000018d5: PUSH1 0x40 000018d7: DUP3 000018d8: ADD 000018d9: MLOAD 000018da: MLOAD 000018db: PUSH1 0xc8 000018dd: SLOAD 000018de: EQ 000018df: PUSH2 0x18fa 000018e2: JUMPI 000018e3: PUSH1 0x40 000018e5: MLOAD 000018e6: PUSH3 0x461bcd 000018ea: PUSH1 0xe5 000018ec: SHL 000018ed: DUP2 000018ee: MSTORE 000018ef: PUSH1 0x04 000018f1: ADD 000018f2: PUSH2 0x0310 000018f5: SWAP1 000018f6: PUSH2 0x49da 000018f9: JUMP 000018fa: JUMPDEST 000018fb: PUSH1 0x60 000018fd: DUP3 000018fe: ADD 000018ff: MLOAD 00001900: MLOAD 00001901: PUSH2 0x0130 00001904: SLOAD 00001905: EQ 00001906: PUSH2 0x1921 00001909: JUMPI 0000190a: PUSH1 0x40 0000190c: MLOAD 0000190d: PUSH3 0x461bcd 00001911: PUSH1 0xe5 00001913: SHL 00001914: DUP2 00001915: MSTORE 00001916: PUSH1 0x04 00001918: ADD 00001919: PUSH2 0x0310 0000191c: SWAP1 0000191d: PUSH2 0x4a1c 00001920: JUMP 00001921: JUMPDEST 00001922: PUSH1 0x80 00001924: DUP3 00001925: ADD 00001926: MLOAD 00001927: PUSH1 0x60 00001929: DUP2 0000192a: ADD 0000192b: MLOAD 0000192c: PUSH1 0x20 0000192e: DUP3 0000192f: ADD 00001930: MLOAD 00001931: PUSH1 0x40 00001933: SWAP1 00001934: SWAP3 00001935: ADD 00001936: MLOAD 00001937: SWAP1 00001938: SWAP2 00001939: SWAP1 0000193a: PUSH2 0x195e 0000193d: DUP3 0000193e: PUSH1 0x01 00001940: PUSH1 0x01 00001942: PUSH1 0xa0 00001944: SHL 00001945: SUB 00001946: AND 00001947: PUSH1 0x00 00001949: SWAP1 0000194a: DUP2 0000194b: MSTORE 0000194c: PUSH1 0xc9 0000194e: PUSH1 0x20 00001950: MSTORE 00001951: PUSH1 0x40 00001953: SWAP1 00001954: KECCAK256 00001955: PUSH1 0x06 00001957: ADD 00001958: SLOAD 00001959: PUSH1 0xff 0000195b: AND 0000195c: SWAP1 0000195d: JUMP 0000195e: JUMPDEST 0000195f: PUSH2 0x197a 00001962: JUMPI 00001963: PUSH1 0x40 00001965: MLOAD 00001966: PUSH3 0x461bcd 0000196a: PUSH1 0xe5 0000196c: SHL 0000196d: DUP2 0000196e: MSTORE 0000196f: PUSH1 0x04 00001971: ADD 00001972: PUSH2 0x0310 00001975: SWAP1 00001976: PUSH2 0x4a60 00001979: JUMP 0000197a: JUMPDEST 0000197b: PUSH1 0x00 0000197d: DUP2 0000197e: GT 0000197f: PUSH2 0x199a 00001982: JUMPI 00001983: PUSH1 0x40 00001985: MLOAD 00001986: PUSH3 0x461bcd 0000198a: PUSH1 0xe5 0000198c: SHL 0000198d: DUP2 0000198e: MSTORE 0000198f: PUSH1 0x04 00001991: ADD 00001992: PUSH2 0x0310 00001995: SWAP1 00001996: PUSH2 0x4aa4 00001999: JUMP 0000199a: JUMPDEST 0000199b: PUSH1 0x01 0000199d: PUSH1 0x01 0000199f: PUSH1 0xa0 000019a1: SHL 000019a2: SUB 000019a3: DUP3 000019a4: AND 000019a5: PUSH1 0x00 000019a7: SWAP1 000019a8: DUP2 000019a9: MSTORE 000019aa: PUSH1 0xc9 000019ac: PUSH1 0x20 000019ae: SWAP1 000019af: DUP2 000019b0: MSTORE 000019b1: PUSH1 0x40 000019b3: SWAP2 000019b4: DUP3 000019b5: SWAP1 000019b6: KECCAK256 000019b7: SWAP2 000019b8: MLOAD 000019b9: PUSH2 0x19c6 000019bc: SWAP3 000019bd: PUSH1 0x03 000019bf: ADD 000019c0: SWAP2 000019c1: ADD 000019c2: PUSH2 0x4b26 000019c5: JUMP 000019c6: JUMPDEST 000019c7: PUSH1 0x40 000019c9: MLOAD 000019ca: PUSH1 0x20 000019cc: DUP2 000019cd: DUP4 000019ce: SUB 000019cf: SUB 000019d0: DUP2 000019d1: MSTORE 000019d2: SWAP1 000019d3: PUSH1 0x40 000019d5: MSTORE 000019d6: DUP1 000019d7: MLOAD 000019d8: SWAP1 000019d9: PUSH1 0x20 000019db: ADD 000019dc: KECCAK256 000019dd: DUP6 000019de: PUSH1 0x40 000019e0: ADD 000019e1: MLOAD 000019e2: PUSH1 0x20 000019e4: ADD 000019e5: MLOAD 000019e6: PUSH1 0x40 000019e8: MLOAD 000019e9: PUSH1 0x20 000019eb: ADD 000019ec: PUSH2 0x19f5 000019ef: SWAP2 000019f0: SWAP1 000019f1: PUSH2 0x4b54 000019f4: JUMP 000019f5: JUMPDEST 000019f6: PUSH1 0x40 000019f8: MLOAD 000019f9: PUSH1 0x20 000019fb: DUP2 000019fc: DUP4 000019fd: SUB 000019fe: SUB 000019ff: DUP2 00001a00: MSTORE 00001a01: SWAP1 00001a02: PUSH1 0x40 00001a04: MSTORE 00001a05: DUP1 00001a06: MLOAD 00001a07: SWAP1 00001a08: PUSH1 0x20 00001a0a: ADD 00001a0b: KECCAK256 00001a0c: EQ 00001a0d: PUSH2 0x1a28 00001a10: JUMPI 00001a11: PUSH1 0x40 00001a13: MLOAD 00001a14: PUSH3 0x461bcd 00001a18: PUSH1 0xe5 00001a1a: SHL 00001a1b: DUP2 00001a1c: MSTORE 00001a1d: PUSH1 0x04 00001a1f: ADD 00001a20: PUSH2 0x0310 00001a23: SWAP1 00001a24: PUSH2 0x4ba4 00001a27: JUMP 00001a28: JUMPDEST 00001a29: PUSH2 0x012d 00001a2c: SLOAD 00001a2d: PUSH1 0x40 00001a2f: MLOAD 00001a30: PUSH4 0x97067823 00001a35: PUSH1 0xe0 00001a37: SHL 00001a38: DUP2 00001a39: MSTORE 00001a3a: PUSH1 0x00 00001a3c: SWAP2 00001a3d: PUSH1 0x01 00001a3f: PUSH1 0x01 00001a41: PUSH1 0xa0 00001a43: SHL 00001a44: SUB 00001a45: AND 00001a46: SWAP1 00001a47: PUSH4 0x97067823 00001a4c: SWAP1 00001a4d: PUSH2 0x1a5c 00001a50: SWAP1 00001a51: DUP10 00001a52: SWAP1 00001a53: DUP10 00001a54: SWAP1 00001a55: PUSH1 0x04 00001a57: ADD 00001a58: PUSH2 0x4cd8 00001a5b: JUMP 00001a5c: JUMPDEST 00001a5d: PUSH1 0x20 00001a5f: PUSH1 0x40 00001a61: MLOAD 00001a62: DUP1 00001a63: DUP4 00001a64: SUB 00001a65: DUP2 00001a66: PUSH1 0x00 00001a68: DUP8 00001a69: GAS 00001a6a: CALL 00001a6b: ISZERO 00001a6c: DUP1 00001a6d: ISZERO 00001a6e: PUSH2 0x1a7b 00001a71: JUMPI 00001a72: RETURNDATASIZE 00001a73: PUSH1 0x00 00001a75: DUP1 00001a76: RETURNDATACOPY 00001a77: RETURNDATASIZE 00001a78: PUSH1 0x00 00001a7a: REVERT 00001a7b: JUMPDEST 00001a7c: POP 00001a7d: POP 00001a7e: POP 00001a7f: POP 00001a80: PUSH1 0x40 00001a82: MLOAD 00001a83: RETURNDATASIZE 00001a84: PUSH1 0x1f 00001a86: NOT 00001a87: PUSH1 0x1f 00001a89: DUP3 00001a8a: ADD 00001a8b: AND 00001a8c: DUP3 00001a8d: ADD 00001a8e: DUP1 00001a8f: PUSH1 0x40 00001a91: MSTORE 00001a92: POP 00001a93: DUP2 00001a94: ADD 00001a95: SWAP1 00001a96: PUSH2 0x1a9f 00001a99: SWAP2 00001a9a: SWAP1 00001a9b: PUSH2 0x4d15 00001a9e: JUMP 00001a9f: JUMPDEST 00001aa0: SWAP1 00001aa1: POP 00001aa2: DUP1 00001aa3: PUSH1 0x02 00001aa5: DUP2 00001aa6: GT 00001aa7: ISZERO 00001aa8: PUSH2 0x1ab3 00001aab: JUMPI 00001aac: PUSH2 0x1ab3 00001aaf: PUSH2 0x4d36 00001ab2: JUMP 00001ab3: JUMPDEST 00001ab4: PUSH1 0x02 00001ab6: EQ 00001ab7: DUP1 00001ab8: PUSH2 0x1b2e 00001abb: JUMPI 00001abc: POP 00001abd: PUSH2 0x012e 00001ac0: SLOAD 00001ac1: PUSH1 0x40 00001ac3: MLOAD 00001ac4: PUSH4 0x0723eb03 00001ac9: PUSH1 0xe5 00001acb: SHL 00001acc: DUP2 00001acd: MSTORE 00001ace: PUSH1 0x01 00001ad0: PUSH1 0x01 00001ad2: PUSH1 0xa0 00001ad4: SHL 00001ad5: SUB 00001ad6: SWAP1 00001ad7: SWAP2 00001ad8: AND 00001ad9: SWAP1 00001ada: PUSH4 0xe47d6060 00001adf: SWAP1 00001ae0: PUSH2 0x1aed 00001ae3: SWAP1 00001ae4: DUP8 00001ae5: SWAP1 00001ae6: PUSH1 0x04 00001ae8: ADD 00001ae9: PUSH2 0x3dfe 00001aec: JUMP 00001aed: JUMPDEST 00001aee: PUSH1 0x20 00001af0: PUSH1 0x40 00001af2: MLOAD 00001af3: DUP1 00001af4: DUP4 00001af5: SUB 00001af6: DUP2 00001af7: DUP7 00001af8: GAS 00001af9: STATICCALL 00001afa: ISZERO 00001afb: DUP1 00001afc: ISZERO 00001afd: PUSH2 0x1b0a 00001b00: JUMPI 00001b01: RETURNDATASIZE 00001b02: PUSH1 0x00 00001b04: DUP1 00001b05: RETURNDATACOPY 00001b06: RETURNDATASIZE 00001b07: PUSH1 0x00 00001b09: REVERT 00001b0a: JUMPDEST 00001b0b: POP 00001b0c: POP 00001b0d: POP 00001b0e: POP 00001b0f: PUSH1 0x40 00001b11: MLOAD 00001b12: RETURNDATASIZE 00001b13: PUSH1 0x1f 00001b15: NOT 00001b16: PUSH1 0x1f 00001b18: DUP3 00001b19: ADD 00001b1a: AND 00001b1b: DUP3 00001b1c: ADD 00001b1d: DUP1 00001b1e: PUSH1 0x40 00001b20: MSTORE 00001b21: POP 00001b22: DUP2 00001b23: ADD 00001b24: SWAP1 00001b25: PUSH2 0x1b2e 00001b28: SWAP2 00001b29: SWAP1 00001b2a: PUSH2 0x4412 00001b2d: JUMP 00001b2e: JUMPDEST 00001b2f: ISZERO 00001b30: PUSH2 0x1c5d 00001b33: JUMPI 00001b34: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001 00001b55: PUSH1 0x01 00001b57: PUSH1 0x01 00001b59: PUSH1 0xa0 00001b5b: SHL 00001b5c: SUB 00001b5d: AND 00001b5e: DUP4 00001b5f: PUSH1 0x01 00001b61: PUSH1 0x01 00001b63: PUSH1 0xa0 00001b65: SHL 00001b66: SUB 00001b67: AND 00001b68: SUB 00001b69: PUSH2 0x1bd6 00001b6c: JUMPI 00001b6d: PUSH2 0x012f 00001b70: SLOAD 00001b71: PUSH1 0x40 00001b73: MLOAD 00001b74: PUSH4 0xf435f5a7 00001b79: PUSH1 0xe0 00001b7b: SHL 00001b7c: DUP2 00001b7d: MSTORE 00001b7e: PUSH1 0x01 00001b80: PUSH1 0x01 00001b82: PUSH1 0xa0 00001b84: SHL 00001b85: SUB 00001b86: SWAP1 00001b87: SWAP2 00001b88: AND 00001b89: SWAP1 00001b8a: PUSH4 0xf435f5a7 00001b8f: SWAP1 00001b90: DUP5 00001b91: SWAP1 00001b92: PUSH2 0x1b9f 00001b95: SWAP1 00001b96: DUP9 00001b97: SWAP1 00001b98: PUSH1 0x04 00001b9a: ADD 00001b9b: PUSH2 0x3dfe 00001b9e: JUMP 00001b9f: JUMPDEST 00001ba0: PUSH1 0x00 00001ba2: PUSH1 0x40 00001ba4: MLOAD 00001ba5: DUP1 00001ba6: DUP4 00001ba7: SUB 00001ba8: DUP2 00001ba9: DUP6 00001baa: DUP9 00001bab: DUP1 00001bac: EXTCODESIZE 00001bad: ISZERO 00001bae: DUP1 00001baf: ISZERO 00001bb0: PUSH2 0x1bb8 00001bb3: JUMPI 00001bb4: PUSH1 0x00 00001bb6: DUP1 00001bb7: REVERT 00001bb8: JUMPDEST 00001bb9: POP 00001bba: GAS 00001bbb: CALL 00001bbc: ISZERO 00001bbd: DUP1 00001bbe: ISZERO 00001bbf: PUSH2 0x1bcc 00001bc2: JUMPI 00001bc3: RETURNDATASIZE 00001bc4: PUSH1 0x00 00001bc6: DUP1 00001bc7: RETURNDATACOPY 00001bc8: RETURNDATASIZE 00001bc9: PUSH1 0x00 00001bcb: REVERT 00001bcc: JUMPDEST 00001bcd: POP 00001bce: POP 00001bcf: POP 00001bd0: POP 00001bd1: POP 00001bd2: PUSH2 0x1d64 00001bd5: JUMP 00001bd6: JUMPDEST 00001bd7: PUSH2 0x012f 00001bda: SLOAD 00001bdb: PUSH2 0x1bf1 00001bde: SWAP1 00001bdf: PUSH1 0x01 00001be1: PUSH1 0x01 00001be3: PUSH1 0xa0 00001be5: SHL 00001be6: SUB 00001be7: DUP6 00001be8: DUP2 00001be9: AND 00001bea: SWAP2 00001beb: AND 00001bec: DUP5 00001bed: PUSH2 0x29e1 00001bf0: JUMP 00001bf1: JUMPDEST 00001bf2: PUSH2 0x012f 00001bf5: SLOAD 00001bf6: PUSH1 0x40 00001bf8: MLOAD 00001bf9: PUSH4 0x07750c9f 00001bfe: PUSH1 0xe4 00001c00: SHL 00001c01: DUP2 00001c02: MSTORE 00001c03: PUSH1 0x01 00001c05: PUSH1 0x01 00001c07: PUSH1 0xa0 00001c09: SHL 00001c0a: SUB 00001c0b: SWAP1 00001c0c: SWAP2 00001c0d: AND 00001c0e: SWAP1 00001c0f: PUSH4 0x7750c9f0 00001c14: SWAP1 00001c15: PUSH2 0x1c26 00001c18: SWAP1 00001c19: DUP8 00001c1a: SWAP1 00001c1b: DUP8 00001c1c: SWAP1 00001c1d: DUP8 00001c1e: SWAP1 00001c1f: PUSH1 0x04 00001c21: ADD 00001c22: PUSH2 0x4d4c 00001c25: JUMP 00001c26: JUMPDEST 00001c27: PUSH1 0x00 00001c29: PUSH1 0x40 00001c2b: MLOAD 00001c2c: DUP1 00001c2d: DUP4 00001c2e: SUB 00001c2f: DUP2 00001c30: PUSH1 0x00 00001c32: DUP8 00001c33: DUP1 00001c34: EXTCODESIZE 00001c35: ISZERO 00001c36: DUP1 00001c37: ISZERO 00001c38: PUSH2 0x1c40 00001c3b: JUMPI 00001c3c: PUSH1 0x00 00001c3e: DUP1 00001c3f: REVERT 00001c40: JUMPDEST 00001c41: POP 00001c42: GAS 00001c43: CALL 00001c44: ISZERO 00001c45: DUP1 00001c46: ISZERO 00001c47: PUSH2 0x1c54 00001c4a: JUMPI 00001c4b: RETURNDATASIZE 00001c4c: PUSH1 0x00 00001c4e: DUP1 00001c4f: RETURNDATACOPY 00001c50: RETURNDATASIZE 00001c51: PUSH1 0x00 00001c53: REVERT 00001c54: JUMPDEST 00001c55: POP 00001c56: POP 00001c57: POP 00001c58: POP 00001c59: PUSH2 0x1d64 00001c5c: JUMP 00001c5d: JUMPDEST 00001c5e: PUSH1 0x01 00001c60: DUP2 00001c61: PUSH1 0x02 00001c63: DUP2 00001c64: GT 00001c65: ISZERO 00001c66: PUSH2 0x1c71 00001c69: JUMPI 00001c6a: PUSH2 0x1c71 00001c6d: PUSH2 0x4d36 00001c70: JUMP 00001c71: JUMPDEST 00001c72: SUB 00001c73: PUSH2 0x1d4c 00001c76: JUMPI 00001c77: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001 00001c98: PUSH1 0x01 00001c9a: PUSH1 0x01 00001c9c: PUSH1 0xa0 00001c9e: SHL 00001c9f: SUB 00001ca0: AND 00001ca1: DUP4 00001ca2: PUSH1 0x01 00001ca4: PUSH1 0x01 00001ca6: PUSH1 0xa0 00001ca8: SHL 00001ca9: SUB 00001caa: AND 00001cab: SUB 00001cac: PUSH2 0x1d33 00001caf: JUMPI 00001cb0: PUSH1 0x00 00001cb2: DUP5 00001cb3: PUSH1 0x01 00001cb5: PUSH1 0x01 00001cb7: PUSH1 0xa0 00001cb9: SHL 00001cba: SUB 00001cbb: AND 00001cbc: DUP4 00001cbd: PUSH1 0x40 00001cbf: MLOAD 00001cc0: PUSH2 0x1cc8 00001cc3: SWAP1 00001cc4: PUSH2 0x48f0 00001cc7: JUMP 00001cc8: JUMPDEST 00001cc9: PUSH1 0x00 00001ccb: PUSH1 0x40 00001ccd: MLOAD 00001cce: DUP1 00001ccf: DUP4 00001cd0: SUB 00001cd1: DUP2 00001cd2: DUP6 00001cd3: DUP8 00001cd4: GAS 00001cd5: CALL 00001cd6: SWAP3 00001cd7: POP 00001cd8: POP 00001cd9: POP 00001cda: RETURNDATASIZE 00001cdb: DUP1 00001cdc: PUSH1 0x00 00001cde: DUP2 00001cdf: EQ 00001ce0: PUSH2 0x1d05 00001ce3: JUMPI 00001ce4: PUSH1 0x40 00001ce6: MLOAD 00001ce7: SWAP2 00001ce8: POP 00001ce9: PUSH1 0x1f 00001ceb: NOT 00001cec: PUSH1 0x3f 00001cee: RETURNDATASIZE 00001cef: ADD 00001cf0: AND 00001cf1: DUP3 00001cf2: ADD 00001cf3: PUSH1 0x40 00001cf5: MSTORE 00001cf6: RETURNDATASIZE 00001cf7: DUP3 00001cf8: MSTORE 00001cf9: RETURNDATASIZE 00001cfa: PUSH1 0x00 00001cfc: PUSH1 0x20 00001cfe: DUP5 00001cff: ADD 00001d00: RETURNDATACOPY 00001d01: PUSH2 0x1d0a 00001d04: JUMP 00001d05: JUMPDEST 00001d06: PUSH1 0x60 00001d08: SWAP2 00001d09: POP 00001d0a: JUMPDEST 00001d0b: POP 00001d0c: POP 00001d0d: DUP1 00001d0e: SWAP2 00001d0f: POP 00001d10: POP 00001d11: DUP1 00001d12: PUSH2 0x1d2d 00001d15: JUMPI 00001d16: PUSH1 0x40 00001d18: MLOAD 00001d19: PUSH3 0x461bcd 00001d1d: PUSH1 0xe5 00001d1f: SHL 00001d20: DUP2 00001d21: MSTORE 00001d22: PUSH1 0x04 00001d24: ADD 00001d25: PUSH2 0x0310 00001d28: SWAP1 00001d29: PUSH2 0x4da8 00001d2c: JUMP 00001d2d: JUMPDEST 00001d2e: POP 00001d2f: PUSH2 0x1d64 00001d32: JUMP 00001d33: JUMPDEST 00001d34: PUSH2 0x1d47 00001d37: PUSH1 0x01 00001d39: PUSH1 0x01 00001d3b: PUSH1 0xa0 00001d3d: SHL 00001d3e: SUB 00001d3f: DUP5 00001d40: AND 00001d41: DUP6 00001d42: DUP5 00001d43: PUSH2 0x29e1 00001d46: JUMP 00001d47: JUMPDEST 00001d48: PUSH2 0x1d64 00001d4b: JUMP 00001d4c: JUMPDEST 00001d4d: PUSH1 0x40 00001d4f: MLOAD 00001d50: PUSH3 0x461bcd 00001d54: PUSH1 0xe5 00001d56: SHL 00001d57: DUP2 00001d58: MSTORE 00001d59: PUSH1 0x04 00001d5b: ADD 00001d5c: PUSH2 0x0310 00001d5f: SWAP1 00001d60: PUSH2 0x4dea 00001d63: JUMP 00001d64: JUMPDEST 00001d65: POP 00001d66: POP 00001d67: POP 00001d68: POP 00001d69: PUSH2 0x0ebd 00001d6c: PUSH1 0x01 00001d6e: PUSH1 0xfb 00001d70: SSTORE 00001d71: JUMP 00001d72: JUMPDEST 00001d73: PUSH2 0x1d7a 00001d76: PUSH2 0x25f3 00001d79: JUMP 00001d7a: JUMPDEST 00001d7b: PUSH1 0x01 00001d7d: PUSH1 0x01 00001d7f: PUSH1 0xa0 00001d81: SHL 00001d82: SUB 00001d83: DUP2 00001d84: AND 00001d85: PUSH1 0x00 00001d87: SWAP1 00001d88: DUP2 00001d89: MSTORE 00001d8a: PUSH2 0x0195 00001d8d: PUSH1 0x20 00001d8f: MSTORE 00001d90: PUSH1 0x40 00001d92: SWAP1 00001d93: KECCAK256 00001d94: SLOAD 00001d95: PUSH1 0xff 00001d97: AND 00001d98: ISZERO 00001d99: PUSH2 0x0c9d 00001d9c: JUMPI 00001d9d: PUSH1 0x01 00001d9f: PUSH1 0x01 00001da1: PUSH1 0xa0 00001da3: SHL 00001da4: SUB 00001da5: AND 00001da6: PUSH1 0x00 00001da8: SWAP1 00001da9: DUP2 00001daa: MSTORE 00001dab: PUSH2 0x0195 00001dae: PUSH1 0x20 00001db0: MSTORE 00001db1: PUSH1 0x40 00001db3: SWAP1 00001db4: KECCAK256 00001db5: DUP1 00001db6: SLOAD 00001db7: PUSH1 0xff 00001db9: NOT 00001dba: AND 00001dbb: SWAP1 00001dbc: SSTORE 00001dbd: JUMP 00001dbe: JUMPDEST 00001dbf: PUSH2 0x1dc6 00001dc2: PUSH2 0x25f3 00001dc5: JUMP 00001dc6: JUMPDEST 00001dc7: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000000 00001de8: PUSH1 0x01 00001dea: PUSH1 0x01 00001dec: PUSH1 0xa0 00001dee: SHL 00001def: SUB 00001df0: AND 00001df1: DUP8 00001df2: PUSH1 0x01 00001df4: PUSH1 0x01 00001df6: PUSH1 0xa0 00001df8: SHL 00001df9: SUB 00001dfa: AND 00001dfb: SUB 00001dfc: PUSH2 0x1e17 00001dff: JUMPI 00001e00: PUSH1 0x40 00001e02: MLOAD 00001e03: PUSH3 0x461bcd 00001e07: PUSH1 0xe5 00001e09: SHL 00001e0a: DUP2 00001e0b: MSTORE 00001e0c: PUSH1 0x04 00001e0e: ADD 00001e0f: PUSH2 0x0310 00001e12: SWAP1 00001e13: PUSH2 0x4e2e 00001e16: JUMP 00001e17: JUMPDEST 00001e18: PUSH2 0x1e20 00001e1b: DUP8 00001e1c: PUSH2 0x0b6b 00001e1f: JUMP 00001e20: JUMPDEST 00001e21: ISZERO 00001e22: PUSH2 0x1e3d 00001e25: JUMPI 00001e26: PUSH1 0x40 00001e28: MLOAD 00001e29: PUSH3 0x461bcd 00001e2d: PUSH1 0xe5 00001e2f: SHL 00001e30: DUP2 00001e31: MSTORE 00001e32: PUSH1 0x04 00001e34: ADD 00001e35: PUSH2 0x0310 00001e38: SWAP1 00001e39: PUSH2 0x4e80 00001e3c: JUMP 00001e3d: JUMPDEST 00001e3e: PUSH1 0xc8 00001e40: SLOAD 00001e41: DUP7 00001e42: EQ 00001e43: PUSH2 0x1e5e 00001e46: JUMPI 00001e47: PUSH1 0x40 00001e49: MLOAD 00001e4a: PUSH3 0x461bcd 00001e4e: PUSH1 0xe5 00001e50: SHL 00001e51: DUP2 00001e52: MSTORE 00001e53: PUSH1 0x04 00001e55: ADD 00001e56: PUSH2 0x0310 00001e59: SWAP1 00001e5a: PUSH2 0x4ed0 00001e5d: JUMP 00001e5e: JUMPDEST 00001e5f: PUSH1 0x40 00001e61: DUP1 00001e62: MLOAD 00001e63: PUSH1 0xe0 00001e65: DUP2 00001e66: ADD 00001e67: DUP3 00001e68: MSTORE 00001e69: PUSH1 0x01 00001e6b: PUSH1 0x01 00001e6d: PUSH1 0xa0 00001e6f: SHL 00001e70: SUB 00001e71: DUP1 00001e72: DUP11 00001e73: AND 00001e74: DUP1 00001e75: DUP4 00001e76: MSTORE 00001e77: DUP9 00001e78: DUP3 00001e79: AND 00001e7a: PUSH1 0x20 00001e7c: DUP1 00001e7d: DUP6 00001e7e: ADD 00001e7f: SWAP2 00001e80: DUP3 00001e81: MSTORE 00001e82: DUP5 00001e83: DUP7 00001e84: ADD 00001e85: DUP11 00001e86: DUP2 00001e87: MSTORE 00001e88: PUSH1 0x60 00001e8a: DUP7 00001e8b: ADD 00001e8c: DUP11 00001e8d: SWAP1 00001e8e: MSTORE 00001e8f: PUSH1 0x80 00001e91: DUP7 00001e92: ADD 00001e93: DUP10 00001e94: SWAP1 00001e95: MSTORE 00001e96: PUSH1 0xa0 00001e98: DUP7 00001e99: ADD 00001e9a: DUP9 00001e9b: SWAP1 00001e9c: MSTORE 00001e9d: PUSH1 0x01 00001e9f: PUSH1 0xc0 00001ea1: DUP8 00001ea2: ADD 00001ea3: DUP2 00001ea4: SWAP1 00001ea5: MSTORE 00001ea6: PUSH1 0x00 00001ea8: SWAP5 00001ea9: DUP6 00001eaa: MSTORE 00001eab: PUSH1 0xc9 00001ead: SWAP1 00001eae: SWAP3 00001eaf: MSTORE 00001eb0: SWAP6 00001eb1: SWAP1 00001eb2: SWAP3 00001eb3: KECCAK256 00001eb4: DUP5 00001eb5: MLOAD 00001eb6: DUP2 00001eb7: SLOAD 00001eb8: SWAP1 00001eb9: DUP6 00001eba: AND 00001ebb: PUSH1 0x01 00001ebd: PUSH1 0x01 00001ebf: PUSH1 0xa0 00001ec1: SHL 00001ec2: SUB 00001ec3: NOT 00001ec4: SWAP2 00001ec5: DUP3 00001ec6: AND 00001ec7: OR 00001ec8: DUP3 00001ec9: SSTORE 00001eca: SWAP2 00001ecb: MLOAD 00001ecc: SWAP3 00001ecd: DUP2 00001ece: ADD 00001ecf: DUP1 00001ed0: SLOAD 00001ed1: SWAP4 00001ed2: SWAP1 00001ed3: SWAP5 00001ed4: AND 00001ed5: SWAP3 00001ed6: SWAP1 00001ed7: SWAP2 00001ed8: AND 00001ed9: SWAP2 00001eda: SWAP1 00001edb: SWAP2 00001edc: OR 00001edd: SWAP1 00001ede: SWAP2 00001edf: SSTORE 00001ee0: SWAP2 00001ee1: MLOAD 00001ee2: SWAP1 00001ee3: SWAP2 00001ee4: DUP3 00001ee5: SWAP2 00001ee6: PUSH1 0x02 00001ee8: DUP3 00001ee9: ADD 00001eea: SWAP1 00001eeb: PUSH2 0x1ef4 00001eee: SWAP1 00001eef: DUP3 00001ef0: PUSH2 0x4f65 00001ef3: JUMP 00001ef4: JUMPDEST 00001ef5: POP 00001ef6: PUSH1 0x60 00001ef8: DUP3 00001ef9: ADD 00001efa: MLOAD 00001efb: PUSH1 0x03 00001efd: DUP3 00001efe: ADD 00001eff: SWAP1 00001f00: PUSH2 0x1f09 00001f03: SWAP1 00001f04: DUP3 00001f05: PUSH2 0x4f65 00001f08: JUMP 00001f09: JUMPDEST 00001f0a: POP 00001f0b: PUSH1 0x80 00001f0d: DUP3 00001f0e: ADD 00001f0f: MLOAD 00001f10: PUSH1 0x04 00001f12: DUP3 00001f13: ADD 00001f14: SSTORE 00001f15: PUSH1 0xa0 00001f17: DUP3 00001f18: ADD 00001f19: MLOAD 00001f1a: PUSH1 0x05 00001f1c: DUP3 00001f1d: ADD 00001f1e: SSTORE 00001f1f: PUSH1 0xc0 00001f21: SWAP1 00001f22: SWAP2 00001f23: ADD 00001f24: MLOAD 00001f25: PUSH1 0x06 00001f27: SWAP1 00001f28: SWAP2 00001f29: ADD 00001f2a: DUP1 00001f2b: SLOAD 00001f2c: PUSH1 0xff 00001f2e: NOT 00001f2f: AND 00001f30: SWAP2 00001f31: ISZERO 00001f32: ISZERO 00001f33: SWAP2 00001f34: SWAP1 00001f35: SWAP2 00001f36: OR 00001f37: SWAP1 00001f38: SSTORE 00001f39: PUSH1 0xc8 00001f3b: SLOAD 00001f3c: PUSH1 0x40 00001f3e: MLOAD 00001f3f: PUSH32 0xf7a6d688a353b66d1ebb8f5080c5b7513eaab79221239496ee76041df102a025 00001f60: SWAP2 00001f61: PUSH2 0x1f6c 00001f64: SWAP2 00001f65: DUP5 00001f66: SWAP2 00001f67: SWAP1 00001f68: PUSH2 0x50bb 00001f6b: JUMP 00001f6c: JUMPDEST 00001f6d: PUSH1 0x40 00001f6f: MLOAD 00001f70: DUP1 00001f71: SWAP2 00001f72: SUB 00001f73: SWAP1 00001f74: LOG1 00001f75: POP 00001f76: POP 00001f77: POP 00001f78: POP 00001f79: POP 00001f7a: POP 00001f7b: POP 00001f7c: POP 00001f7d: JUMP 00001f7e: JUMPDEST 00001f7f: PUSH1 0x01 00001f81: PUSH1 0x01 00001f83: PUSH1 0xa0 00001f85: SHL 00001f86: SUB 00001f87: DUP1 00001f88: DUP4 00001f89: AND 00001f8a: PUSH1 0x00 00001f8c: SWAP1 00001f8d: DUP2 00001f8e: MSTORE 00001f8f: PUSH1 0xc9 00001f91: PUSH1 0x20 00001f93: SWAP1 00001f94: DUP2 00001f95: MSTORE 00001f96: PUSH1 0x40 00001f98: DUP1 00001f99: DUP4 00001f9a: KECCAK256 00001f9b: DUP2 00001f9c: MLOAD 00001f9d: PUSH1 0xe0 00001f9f: DUP2 00001fa0: ADD 00001fa1: DUP4 00001fa2: MSTORE 00001fa3: DUP2 00001fa4: SLOAD 00001fa5: DUP7 00001fa6: AND 00001fa7: DUP2 00001fa8: MSTORE 00001fa9: PUSH1 0x01 00001fab: DUP3 00001fac: ADD 00001fad: SLOAD 00001fae: SWAP1 00001faf: SWAP6 00001fb0: AND 00001fb1: SWAP3 00001fb2: DUP6 00001fb3: ADD 00001fb4: SWAP3 00001fb5: SWAP1 00001fb6: SWAP3 00001fb7: MSTORE 00001fb8: PUSH1 0x02 00001fba: DUP3 00001fbb: ADD 00001fbc: DUP1 00001fbd: SLOAD 00001fbe: SWAP4 00001fbf: SWAP5 00001fc0: DUP6 00001fc1: SWAP5 00001fc2: SWAP1 00001fc3: SWAP4 00001fc4: SWAP3 00001fc5: DUP5 00001fc6: ADD 00001fc7: SWAP2 00001fc8: SWAP1 00001fc9: PUSH2 0x1fd1 00001fcc: SWAP1 00001fcd: PUSH2 0x4803 00001fd0: JUMP 00001fd1: JUMPDEST 00001fd2: DUP1 00001fd3: PUSH1 0x1f 00001fd5: ADD 00001fd6: PUSH1 0x20 00001fd8: DUP1 00001fd9: SWAP2 00001fda: DIV 00001fdb: MUL 00001fdc: PUSH1 0x20 00001fde: ADD 00001fdf: PUSH1 0x40 00001fe1: MLOAD 00001fe2: SWAP1 00001fe3: DUP2 00001fe4: ADD 00001fe5: PUSH1 0x40 00001fe7: MSTORE 00001fe8: DUP1 00001fe9: SWAP3 00001fea: SWAP2 00001feb: SWAP1 00001fec: DUP2 00001fed: DUP2 00001fee: MSTORE 00001fef: PUSH1 0x20 00001ff1: ADD 00001ff2: DUP3 00001ff3: DUP1 00001ff4: SLOAD 00001ff5: PUSH2 0x1ffd 00001ff8: SWAP1 00001ff9: PUSH2 0x4803 00001ffc: JUMP 00001ffd: JUMPDEST 00001ffe: DUP1 00001fff: ISZERO 00002000: PUSH2 0x204a 00002003: JUMPI 00002004: DUP1 00002005: PUSH1 0x1f 00002007: LT 00002008: PUSH2 0x201f 0000200b: JUMPI 0000200c: PUSH2 0x0100 0000200f: DUP1 00002010: DUP4 00002011: SLOAD 00002012: DIV 00002013: MUL 00002014: DUP4 00002015: MSTORE 00002016: SWAP2 00002017: PUSH1 0x20 00002019: ADD 0000201a: SWAP2 0000201b: PUSH2 0x204a 0000201e: JUMP 0000201f: JUMPDEST 00002020: DUP3 00002021: ADD 00002022: SWAP2 00002023: SWAP1 00002024: PUSH1 0x00 00002026: MSTORE 00002027: PUSH1 0x20 00002029: PUSH1 0x00 0000202b: KECCAK256 0000202c: SWAP1 0000202d: JUMPDEST 0000202e: DUP2 0000202f: SLOAD 00002030: DUP2 00002031: MSTORE 00002032: SWAP1 00002033: PUSH1 0x01 00002035: ADD 00002036: SWAP1 00002037: PUSH1 0x20 00002039: ADD 0000203a: DUP1 0000203b: DUP4 0000203c: GT 0000203d: PUSH2 0x202d 00002040: JUMPI 00002041: DUP3 00002042: SWAP1 00002043: SUB 00002044: PUSH1 0x1f 00002046: AND 00002047: DUP3 00002048: ADD 00002049: SWAP2 0000204a: JUMPDEST 0000204b: POP 0000204c: POP 0000204d: POP 0000204e: POP 0000204f: POP 00002050: DUP2 00002051: MSTORE 00002052: PUSH1 0x20 00002054: ADD 00002055: PUSH1 0x03 00002057: DUP3 00002058: ADD 00002059: DUP1 0000205a: SLOAD 0000205b: PUSH2 0x2063 0000205e: SWAP1 0000205f: PUSH2 0x4803 00002062: JUMP 00002063: JUMPDEST 00002064: DUP1 00002065: PUSH1 0x1f 00002067: ADD 00002068: PUSH1 0x20 0000206a: DUP1 0000206b: SWAP2 0000206c: DIV 0000206d: MUL 0000206e: PUSH1 0x20 00002070: ADD 00002071: PUSH1 0x40 00002073: MLOAD 00002074: SWAP1 00002075: DUP2 00002076: ADD 00002077: PUSH1 0x40 00002079: MSTORE 0000207a: DUP1 0000207b: SWAP3 0000207c: SWAP2 0000207d: SWAP1 0000207e: DUP2 0000207f: DUP2 00002080: MSTORE 00002081: PUSH1 0x20 00002083: ADD 00002084: DUP3 00002085: DUP1 00002086: SLOAD 00002087: PUSH2 0x208f 0000208a: SWAP1 0000208b: PUSH2 0x4803 0000208e: JUMP 0000208f: JUMPDEST 00002090: DUP1 00002091: ISZERO 00002092: PUSH2 0x20dc 00002095: JUMPI 00002096: DUP1 00002097: PUSH1 0x1f 00002099: LT 0000209a: PUSH2 0x20b1 0000209d: JUMPI 0000209e: PUSH2 0x0100 000020a1: DUP1 000020a2: DUP4 000020a3: SLOAD 000020a4: DIV 000020a5: MUL 000020a6: DUP4 000020a7: MSTORE 000020a8: SWAP2 000020a9: PUSH1 0x20 000020ab: ADD 000020ac: SWAP2 000020ad: PUSH2 0x20dc 000020b0: JUMP 000020b1: JUMPDEST 000020b2: DUP3 000020b3: ADD 000020b4: SWAP2 000020b5: SWAP1 000020b6: PUSH1 0x00 000020b8: MSTORE 000020b9: PUSH1 0x20 000020bb: PUSH1 0x00 000020bd: KECCAK256 000020be: SWAP1 000020bf: JUMPDEST 000020c0: DUP2 000020c1: SLOAD 000020c2: DUP2 000020c3: MSTORE 000020c4: SWAP1 000020c5: PUSH1 0x01 000020c7: ADD 000020c8: SWAP1 000020c9: PUSH1 0x20 000020cb: ADD 000020cc: DUP1 000020cd: DUP4 000020ce: GT 000020cf: PUSH2 0x20bf 000020d2: JUMPI 000020d3: DUP3 000020d4: SWAP1 000020d5: SUB 000020d6: PUSH1 0x1f 000020d8: AND 000020d9: DUP3 000020da: ADD 000020db: SWAP2 000020dc: JUMPDEST 000020dd: POP 000020de: POP 000020df: POP 000020e0: SWAP2 000020e1: DUP4 000020e2: MSTORE 000020e3: POP 000020e4: POP 000020e5: PUSH1 0x04 000020e7: DUP3 000020e8: ADD 000020e9: SLOAD 000020ea: PUSH1 0x20 000020ec: DUP3 000020ed: ADD 000020ee: MSTORE 000020ef: PUSH1 0x05 000020f1: DUP3 000020f2: ADD 000020f3: SLOAD 000020f4: PUSH1 0x40 000020f6: DUP3 000020f7: ADD 000020f8: MSTORE 000020f9: PUSH1 0x06 000020fb: SWAP1 000020fc: SWAP2 000020fd: ADD 000020fe: SLOAD 000020ff: PUSH1 0xff 00002101: AND 00002102: ISZERO 00002103: ISZERO 00002104: PUSH1 0x60 00002106: SWAP1 00002107: SWAP2 00002108: ADD 00002109: MSTORE 0000210a: PUSH1 0x80 0000210c: DUP2 0000210d: ADD 0000210e: MLOAD 0000210f: SWAP1 00002110: SWAP2 00002111: POP 00002112: DUP4 00002113: LT 00002114: DUP1 00002115: ISZERO 00002116: SWAP1 00002117: PUSH2 0x2124 0000211a: JUMPI 0000211b: POP 0000211c: DUP1 0000211d: PUSH1 0xa0 0000211f: ADD 00002120: MLOAD 00002121: DUP4 00002122: GT 00002123: ISZERO 00002124: JUMPDEST 00002125: SWAP2 00002126: POP 00002127: POP 00002128: JUMPDEST 00002129: SWAP3 0000212a: SWAP2 0000212b: POP 0000212c: POP 0000212d: JUMP 0000212e: JUMPDEST 0000212f: PUSH2 0x2136 00002132: PUSH2 0x25f3 00002135: JUMP 00002136: JUMPDEST 00002137: PUSH2 0x213f 0000213a: DUP2 0000213b: PUSH2 0x0b6b 0000213e: JUMP 0000213f: JUMPDEST 00002140: PUSH2 0x215b 00002143: JUMPI 00002144: PUSH1 0x40 00002146: MLOAD 00002147: PUSH3 0x461bcd 0000214b: PUSH1 0xe5 0000214d: SHL 0000214e: DUP2 0000214f: MSTORE 00002150: PUSH1 0x04 00002152: ADD 00002153: PUSH2 0x0310 00002156: SWAP1 00002157: PUSH2 0x44c5 0000215a: JUMP 0000215b: JUMPDEST 0000215c: PUSH1 0x01 0000215e: PUSH1 0x01 00002160: PUSH1 0xa0 00002162: SHL 00002163: SUB 00002164: DUP2 00002165: AND 00002166: PUSH1 0x00 00002168: SWAP1 00002169: DUP2 0000216a: MSTORE 0000216b: PUSH1 0xc9 0000216d: PUSH1 0x20 0000216f: MSTORE 00002170: PUSH1 0x40 00002172: SWAP1 00002173: KECCAK256 00002174: PUSH1 0x06 00002176: ADD 00002177: SLOAD 00002178: PUSH1 0xff 0000217a: AND 0000217b: PUSH2 0x2196 0000217e: JUMPI 0000217f: PUSH1 0x40 00002181: MLOAD 00002182: PUSH3 0x461bcd 00002186: PUSH1 0xe5 00002188: SHL 00002189: DUP2 0000218a: MSTORE 0000218b: PUSH1 0x04 0000218d: ADD 0000218e: PUSH2 0x0310 00002191: SWAP1 00002192: PUSH2 0x511c 00002195: JUMP 00002196: JUMPDEST 00002197: PUSH1 0x01 00002199: PUSH1 0x01 0000219b: PUSH1 0xa0 0000219d: SHL 0000219e: SUB 0000219f: DUP2 000021a0: AND 000021a1: PUSH1 0x00 000021a3: SWAP1 000021a4: DUP2 000021a5: MSTORE 000021a6: PUSH1 0xc9 000021a8: PUSH1 0x20 000021aa: MSTORE 000021ab: PUSH1 0x40 000021ad: SWAP1 000021ae: DUP2 000021af: SWAP1 000021b0: KECCAK256 000021b1: PUSH1 0x06 000021b3: ADD 000021b4: DUP1 000021b5: SLOAD 000021b6: PUSH1 0xff 000021b8: NOT 000021b9: AND 000021ba: SWAP1 000021bb: SSTORE 000021bc: PUSH1 0xc8 000021be: SLOAD 000021bf: SWAP1 000021c0: MLOAD 000021c1: PUSH32 0x7e853a44c5ec3f34ea62e92332609e2588e70e4300133dce82a820efbc227aab 000021e2: SWAP2 000021e3: PUSH2 0x109a 000021e6: SWAP2 000021e7: DUP5 000021e8: SWAP2 000021e9: SWAP1 000021ea: PUSH2 0x475f 000021ed: JUMP 000021ee: JUMPDEST 000021ef: PUSH2 0x21f6 000021f2: PUSH2 0x25f3 000021f5: JUMP 000021f6: JUMPDEST 000021f7: PUSH1 0x01 000021f9: PUSH1 0x01 000021fb: PUSH1 0xa0 000021fd: SHL 000021fe: SUB 000021ff: DUP2 00002200: AND 00002201: PUSH2 0x221c 00002204: JUMPI 00002205: PUSH1 0x40 00002207: MLOAD 00002208: PUSH3 0x461bcd 0000220c: PUSH1 0xe5 0000220e: SHL 0000220f: DUP2 00002210: MSTORE 00002211: PUSH1 0x04 00002213: ADD 00002214: PUSH2 0x0310 00002217: SWAP1 00002218: PUSH2 0x516f 0000221b: JUMP 0000221c: JUMPDEST 0000221d: PUSH2 0x0c9d 00002220: DUP2 00002221: PUSH2 0x2952 00002224: JUMP 00002225: JUMPDEST 00002226: PUSH1 0x00 00002228: SLOAD 00002229: PUSH2 0x0100 0000222c: SWAP1 0000222d: DIV 0000222e: PUSH1 0xff 00002230: AND 00002231: ISZERO 00002232: DUP1 00002233: DUP1 00002234: ISZERO 00002235: PUSH2 0x2245 00002238: JUMPI 00002239: POP 0000223a: PUSH1 0x00 0000223c: SLOAD 0000223d: PUSH1 0x01 0000223f: PUSH1 0xff 00002241: SWAP1 00002242: SWAP2 00002243: AND 00002244: LT 00002245: JUMPDEST 00002246: DUP1 00002247: PUSH2 0x225f 0000224a: JUMPI 0000224b: POP 0000224c: ADDRESS 0000224d: EXTCODESIZE 0000224e: ISZERO 0000224f: DUP1 00002250: ISZERO 00002251: PUSH2 0x225f 00002254: JUMPI 00002255: POP 00002256: PUSH1 0x00 00002258: SLOAD 00002259: PUSH1 0xff 0000225b: AND 0000225c: PUSH1 0x01 0000225e: EQ 0000225f: JUMPDEST 00002260: PUSH2 0x227b 00002263: JUMPI 00002264: PUSH1 0x40 00002266: MLOAD 00002267: PUSH3 0x461bcd 0000226b: PUSH1 0xe5 0000226d: SHL 0000226e: DUP2 0000226f: MSTORE 00002270: PUSH1 0x04 00002272: ADD 00002273: PUSH2 0x0310 00002276: SWAP1 00002277: PUSH2 0x51ca 0000227a: JUMP 0000227b: JUMPDEST 0000227c: PUSH1 0x00 0000227e: DUP1 0000227f: SLOAD 00002280: PUSH1 0xff 00002282: NOT 00002283: AND 00002284: PUSH1 0x01 00002286: OR 00002287: SWAP1 00002288: SSTORE 00002289: DUP1 0000228a: ISZERO 0000228b: PUSH2 0x229e 0000228e: JUMPI 0000228f: PUSH1 0x00 00002291: DUP1 00002292: SLOAD 00002293: PUSH2 0xff00 00002296: NOT 00002297: AND 00002298: PUSH2 0x0100 0000229b: OR 0000229c: SWAP1 0000229d: SSTORE 0000229e: JUMPDEST 0000229f: PUSH2 0x22a6 000022a2: PUSH2 0x2a64 000022a5: JUMP 000022a6: JUMPDEST 000022a7: PUSH2 0x22af 000022aa: DUP4 000022ab: PUSH1 0xc8 000022ad: SSTORE 000022ae: JUMP 000022af: JUMPDEST 000022b0: PUSH2 0x22b7 000022b3: PUSH2 0x2a94 000022b6: JUMP 000022b7: JUMPDEST 000022b8: PUSH2 0x22bf 000022bb: PUSH2 0x2ac7 000022be: JUMP 000022bf: JUMPDEST 000022c0: PUSH2 0x012d 000022c3: DUP1 000022c4: SLOAD 000022c5: PUSH1 0x01 000022c7: PUSH1 0x01 000022c9: PUSH1 0xa0 000022cb: SHL 000022cc: SUB 000022cd: DUP1 000022ce: DUP10 000022cf: AND 000022d0: PUSH1 0x01 000022d2: PUSH1 0x01 000022d4: PUSH1 0xa0 000022d6: SHL 000022d7: SUB 000022d8: NOT 000022d9: SWAP3 000022da: DUP4 000022db: AND 000022dc: OR 000022dd: SWAP1 000022de: SWAP3 000022df: SSTORE 000022e0: PUSH1 0x40 000022e2: DUP1 000022e3: MLOAD 000022e4: DUP1 000022e5: DUP3 000022e6: ADD 000022e7: SWAP1 000022e8: SWAP2 000022e9: MSTORE 000022ea: DUP7 000022eb: DUP2 000022ec: MSTORE 000022ed: ADDRESS 000022ee: PUSH1 0x20 000022f0: SWAP1 000022f1: SWAP2 000022f2: ADD 000022f3: DUP2 000022f4: SWAP1 000022f5: MSTORE 000022f6: PUSH2 0x0130 000022f9: DUP8 000022fa: SWAP1 000022fb: SSTORE 000022fc: PUSH2 0x0131 000022ff: DUP1 00002300: SLOAD 00002301: DUP4 00002302: AND 00002303: SWAP1 00002304: SWAP2 00002305: OR 00002306: SWAP1 00002307: SSTORE 00002308: PUSH2 0x012e 0000230b: DUP1 0000230c: SLOAD 0000230d: SWAP3 0000230e: DUP6 0000230f: AND 00002310: SWAP3 00002311: SWAP1 00002312: SWAP2 00002313: AND 00002314: SWAP2 00002315: SWAP1 00002316: SWAP2 00002317: OR 00002318: SWAP1 00002319: SSTORE 0000231a: PUSH2 0x2322 0000231d: DUP6 0000231e: PUSH2 0x2952 00002321: JUMP 00002322: JUMPDEST 00002323: DUP1 00002324: ISZERO 00002325: PUSH2 0x0a2c 00002328: JUMPI 00002329: PUSH1 0x00 0000232b: DUP1 0000232c: SLOAD 0000232d: PUSH2 0xff00 00002330: NOT 00002331: AND 00002332: SWAP1 00002333: SSTORE 00002334: PUSH1 0x40 00002336: MLOAD 00002337: PUSH32 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498 00002358: SWAP1 00002359: PUSH2 0x2364 0000235c: SWAP1 0000235d: PUSH1 0x01 0000235f: SWAP1 00002360: PUSH2 0x51ee 00002363: JUMP 00002364: JUMPDEST 00002365: PUSH1 0x40 00002367: MLOAD 00002368: DUP1 00002369: SWAP2 0000236a: SUB 0000236b: SWAP1 0000236c: LOG1 0000236d: POP 0000236e: POP 0000236f: POP 00002370: POP 00002371: POP 00002372: POP 00002373: JUMP 00002374: JUMPDEST 00002375: PUSH2 0x237c 00002378: PUSH2 0x2477 0000237b: JUMP 0000237c: JUMPDEST 0000237d: PUSH2 0x2384 00002380: PUSH2 0x249a 00002383: JUMP 00002384: JUMPDEST 00002385: PUSH2 0x0194 00002388: SLOAD 00002389: PUSH1 0x40 0000238b: MLOAD 0000238c: PUSH4 0x39beaa9b 00002391: PUSH1 0xe1 00002393: SHL 00002394: DUP2 00002395: MSTORE 00002396: PUSH1 0x01 00002398: PUSH1 0x01 0000239a: PUSH1 0xa0 0000239c: SHL 0000239d: SUB 0000239e: SWAP1 0000239f: SWAP2 000023a0: AND 000023a1: SWAP1 000023a2: PUSH4 0x737d5536 000023a7: SWAP1 000023a8: PUSH2 0x23c2 000023ab: SWAP1 000023ac: DUP12 000023ad: SWAP1 000023ae: DUP12 000023af: SWAP1 000023b0: DUP12 000023b1: SWAP1 000023b2: DUP12 000023b3: SWAP1 000023b4: DUP12 000023b5: SWAP1 000023b6: CALLER 000023b7: SWAP1 000023b8: PUSH1 0x00 000023ba: SWAP1 000023bb: PUSH1 0x04 000023bd: ADD 000023be: PUSH2 0x478f 000023c1: JUMP 000023c2: JUMPDEST 000023c3: PUSH1 0x20 000023c5: PUSH1 0x40 000023c7: MLOAD 000023c8: DUP1 000023c9: DUP4 000023ca: SUB 000023cb: DUP2 000023cc: PUSH1 0x00 000023ce: DUP8 000023cf: GAS 000023d0: CALL 000023d1: ISZERO 000023d2: DUP1 000023d3: ISZERO 000023d4: PUSH2 0x23e1 000023d7: JUMPI 000023d8: RETURNDATASIZE 000023d9: PUSH1 0x00 000023db: DUP1 000023dc: RETURNDATACOPY 000023dd: RETURNDATASIZE 000023de: PUSH1 0x00 000023e0: REVERT 000023e1: JUMPDEST 000023e2: POP 000023e3: POP 000023e4: POP 000023e5: POP 000023e6: PUSH1 0x40 000023e8: MLOAD 000023e9: RETURNDATASIZE 000023ea: PUSH1 0x1f 000023ec: NOT 000023ed: PUSH1 0x1f 000023ef: DUP3 000023f0: ADD 000023f1: AND 000023f2: DUP3 000023f3: ADD 000023f4: DUP1 000023f5: PUSH1 0x40 000023f7: MSTORE 000023f8: POP 000023f9: DUP2 000023fa: ADD 000023fb: SWAP1 000023fc: PUSH2 0x2405 000023ff: SWAP2 00002400: SWAP1 00002401: PUSH2 0x4412 00002404: JUMP 00002405: JUMPDEST 00002406: PUSH2 0x2421 00002409: JUMPI 0000240a: PUSH1 0x40 0000240c: MLOAD 0000240d: PUSH3 0x461bcd 00002411: PUSH1 0xe5 00002413: SHL 00002414: DUP2 00002415: MSTORE 00002416: PUSH1 0x04 00002418: ADD 00002419: PUSH2 0x0310 0000241c: SWAP1 0000241d: PUSH2 0x4477 00002420: JUMP 00002421: JUMPDEST 00002422: PUSH1 0x00 00002424: DUP4 00002425: PUSH2 0x242f 00002428: JUMPI 00002429: PUSH1 0x03 0000242b: PUSH2 0x12ac 0000242e: JUMP 0000242f: JUMPDEST 00002430: PUSH1 0x04 00002432: SWAP1 00002433: POP 00002434: PUSH2 0x12f2 00002437: DUP10 00002438: DUP10 00002439: DUP10 0000243a: DUP10 0000243b: DUP6 0000243c: DUP9 0000243d: DUP9 0000243e: DUP1 0000243f: DUP1 00002440: PUSH1 0x1f 00002442: ADD 00002443: PUSH1 0x20 00002445: DUP1 00002446: SWAP2 00002447: DIV 00002448: MUL 00002449: PUSH1 0x20 0000244b: ADD 0000244c: PUSH1 0x40 0000244e: MLOAD 0000244f: SWAP1 00002450: DUP2 00002451: ADD 00002452: PUSH1 0x40 00002454: MSTORE 00002455: DUP1 00002456: SWAP4 00002457: SWAP3 00002458: SWAP2 00002459: SWAP1 0000245a: DUP2 0000245b: DUP2 0000245c: MSTORE 0000245d: PUSH1 0x20 0000245f: ADD 00002460: DUP4 00002461: DUP4 00002462: DUP1 00002463: DUP3 00002464: DUP5 00002465: CALLDATACOPY 00002466: PUSH1 0x00 00002468: SWAP3 00002469: ADD 0000246a: SWAP2 0000246b: SWAP1 0000246c: SWAP2 0000246d: MSTORE 0000246e: POP 0000246f: PUSH2 0x261d 00002472: SWAP3 00002473: POP 00002474: POP 00002475: POP 00002476: JUMP 00002477: JUMPDEST 00002478: PUSH1 0x33 0000247a: SLOAD 0000247b: PUSH1 0xff 0000247d: AND 0000247e: ISZERO 0000247f: PUSH2 0x0cb8 00002482: JUMPI 00002483: PUSH1 0x40 00002485: MLOAD 00002486: PUSH3 0x461bcd 0000248a: PUSH1 0xe5 0000248c: SHL 0000248d: DUP2 0000248e: MSTORE 0000248f: PUSH1 0x04 00002491: ADD 00002492: PUSH2 0x0310 00002495: SWAP1 00002496: PUSH2 0x5223 00002499: JUMP 0000249a: JUMPDEST 0000249b: PUSH1 0x02 0000249d: PUSH1 0xfb 0000249f: SLOAD 000024a0: SUB 000024a1: PUSH2 0x24bc 000024a4: JUMPI 000024a5: PUSH1 0x40 000024a7: MLOAD 000024a8: PUSH3 0x461bcd 000024ac: PUSH1 0xe5 000024ae: SHL 000024af: DUP2 000024b0: MSTORE 000024b1: PUSH1 0x04 000024b3: ADD 000024b4: PUSH2 0x0310 000024b7: SWAP1 000024b8: PUSH2 0x5267 000024bb: JUMP 000024bc: JUMPDEST 000024bd: PUSH1 0x02 000024bf: PUSH1 0xfb 000024c1: SSTORE 000024c2: JUMP 000024c3: JUMPDEST 000024c4: PUSH2 0x012d 000024c7: SLOAD 000024c8: PUSH1 0x40 000024ca: MLOAD 000024cb: PUSH4 0x3ce8382f 000024d0: PUSH1 0xe1 000024d2: SHL 000024d3: DUP2 000024d4: MSTORE 000024d5: PUSH1 0x01 000024d7: PUSH1 0x01 000024d9: PUSH1 0xa0 000024db: SHL 000024dc: SUB 000024dd: SWAP1 000024de: SWAP2 000024df: AND 000024e0: SWAP1 000024e1: PUSH4 0x79d0705e 000024e6: SWAP1 000024e7: PUSH2 0x24f4 000024ea: SWAP1 000024eb: DUP7 000024ec: SWAP1 000024ed: PUSH1 0x04 000024ef: ADD 000024f0: PUSH2 0x392c 000024f3: JUMP 000024f4: JUMPDEST 000024f5: PUSH1 0x20 000024f7: PUSH1 0x40 000024f9: MLOAD 000024fa: DUP1 000024fb: DUP4 000024fc: SUB 000024fd: DUP2 000024fe: DUP7 000024ff: GAS 00002500: STATICCALL 00002501: ISZERO 00002502: DUP1 00002503: ISZERO 00002504: PUSH2 0x2511 00002507: JUMPI 00002508: RETURNDATASIZE 00002509: PUSH1 0x00 0000250b: DUP1 0000250c: RETURNDATACOPY 0000250d: RETURNDATASIZE 0000250e: PUSH1 0x00 00002510: REVERT 00002511: JUMPDEST 00002512: POP 00002513: POP 00002514: POP 00002515: POP 00002516: PUSH1 0x40 00002518: MLOAD 00002519: RETURNDATASIZE 0000251a: PUSH1 0x1f 0000251c: NOT 0000251d: PUSH1 0x1f 0000251f: DUP3 00002520: ADD 00002521: AND 00002522: DUP3 00002523: ADD 00002524: DUP1 00002525: PUSH1 0x40 00002527: MSTORE 00002528: POP 00002529: DUP2 0000252a: ADD 0000252b: SWAP1 0000252c: PUSH2 0x2535 0000252f: SWAP2 00002530: SWAP1 00002531: PUSH2 0x4412 00002534: JUMP 00002535: JUMPDEST 00002536: PUSH2 0x2551 00002539: JUMPI 0000253a: PUSH1 0x40 0000253c: MLOAD 0000253d: PUSH3 0x461bcd 00002541: PUSH1 0xe5 00002543: SHL 00002544: DUP2 00002545: MSTORE 00002546: PUSH1 0x04 00002548: ADD 00002549: PUSH2 0x0310 0000254c: SWAP1 0000254d: PUSH2 0x52b8 00002550: JUMP 00002551: JUMPDEST 00002552: PUSH1 0x00 00002554: PUSH2 0x255f 00002557: PUSH1 0x01 00002559: CALLVALUE 0000255a: DUP6 0000255b: PUSH2 0x2aee 0000255e: JUMP 0000255f: JUMPDEST 00002560: PUSH2 0x012d 00002563: SLOAD 00002564: SWAP1 00002565: SWAP2 00002566: POP 00002567: PUSH1 0x01 00002569: PUSH1 0x01 0000256b: PUSH1 0xa0 0000256d: SHL 0000256e: SUB 0000256f: AND 00002570: PUSH4 0x6d1eaa88 00002575: PUSH2 0x25a0 00002578: DUP6 00002579: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001 0000259a: DUP6 0000259b: DUP10 0000259c: PUSH2 0x2e54 0000259f: JUMP 000025a0: JUMPDEST 000025a1: DUP5 000025a2: PUSH1 0x40 000025a4: MLOAD 000025a5: DUP4 000025a6: PUSH4 0xffffffff 000025ab: AND 000025ac: PUSH1 0xe0 000025ae: SHL 000025af: DUP2 000025b0: MSTORE 000025b1: PUSH1 0x04 000025b3: ADD 000025b4: PUSH2 0x25be 000025b7: SWAP3 000025b8: SWAP2 000025b9: SWAP1 000025ba: PUSH2 0x538d 000025bd: JUMP 000025be: JUMPDEST 000025bf: PUSH1 0x00 000025c1: PUSH1 0x40 000025c3: MLOAD 000025c4: DUP1 000025c5: DUP4 000025c6: SUB 000025c7: DUP2 000025c8: PUSH1 0x00 000025ca: DUP8 000025cb: DUP1 000025cc: EXTCODESIZE 000025cd: ISZERO 000025ce: DUP1 000025cf: ISZERO 000025d0: PUSH2 0x25d8 000025d3: JUMPI 000025d4: PUSH1 0x00 000025d6: DUP1 000025d7: REVERT 000025d8: JUMPDEST 000025d9: POP 000025da: GAS 000025db: CALL 000025dc: ISZERO 000025dd: DUP1 000025de: ISZERO 000025df: PUSH2 0x12fd 000025e2: JUMPI 000025e3: RETURNDATASIZE 000025e4: PUSH1 0x00 000025e6: DUP1 000025e7: RETURNDATACOPY 000025e8: RETURNDATASIZE 000025e9: PUSH1 0x00 000025eb: REVERT 000025ec: JUMPDEST 000025ed: PUSH1 0x01 000025ef: PUSH1 0xfb 000025f1: SSTORE 000025f2: JUMP 000025f3: JUMPDEST 000025f4: PUSH1 0x65 000025f6: SLOAD 000025f7: PUSH1 0x01 000025f9: PUSH1 0x01 000025fb: PUSH1 0xa0 000025fd: SHL 000025fe: SUB 000025ff: AND 00002600: CALLER 00002601: EQ 00002602: PUSH2 0x0cb8 00002605: JUMPI 00002606: PUSH1 0x40 00002608: MLOAD 00002609: PUSH3 0x461bcd 0000260d: PUSH1 0xe5 0000260f: SHL 00002610: DUP2 00002611: MSTORE 00002612: PUSH1 0x04 00002614: ADD 00002615: PUSH2 0x0310 00002618: SWAP1 00002619: PUSH2 0x53d0 0000261c: JUMP 0000261d: JUMPDEST 0000261e: PUSH2 0x012d 00002621: SLOAD 00002622: PUSH1 0x40 00002624: MLOAD 00002625: PUSH4 0x3ce8382f 0000262a: PUSH1 0xe1 0000262c: SHL 0000262d: DUP2 0000262e: MSTORE 0000262f: PUSH1 0x01 00002631: PUSH1 0x01 00002633: PUSH1 0xa0 00002635: SHL 00002636: SUB 00002637: SWAP1 00002638: SWAP2 00002639: AND 0000263a: SWAP1 0000263b: PUSH4 0x79d0705e 00002640: SWAP1 00002641: PUSH2 0x2650 00002644: SWAP1 00002645: DUP8 00002646: SWAP1 00002647: DUP8 00002648: SWAP1 00002649: PUSH1 0x04 0000264b: ADD 0000264c: PUSH2 0x53e0 0000264f: JUMP 00002650: JUMPDEST 00002651: PUSH1 0x20 00002653: PUSH1 0x40 00002655: MLOAD 00002656: DUP1 00002657: DUP4 00002658: SUB 00002659: DUP2 0000265a: DUP7 0000265b: GAS 0000265c: STATICCALL 0000265d: ISZERO 0000265e: DUP1 0000265f: ISZERO 00002660: PUSH2 0x266d 00002663: JUMPI 00002664: RETURNDATASIZE 00002665: PUSH1 0x00 00002667: DUP1 00002668: RETURNDATACOPY 00002669: RETURNDATASIZE 0000266a: PUSH1 0x00 0000266c: REVERT 0000266d: JUMPDEST 0000266e: POP 0000266f: POP 00002670: POP 00002671: POP 00002672: PUSH1 0x40 00002674: MLOAD 00002675: RETURNDATASIZE 00002676: PUSH1 0x1f 00002678: NOT 00002679: PUSH1 0x1f 0000267b: DUP3 0000267c: ADD 0000267d: AND 0000267e: DUP3 0000267f: ADD 00002680: DUP1 00002681: PUSH1 0x40 00002683: MSTORE 00002684: POP 00002685: DUP2 00002686: ADD 00002687: SWAP1 00002688: PUSH2 0x2691 0000268b: SWAP2 0000268c: SWAP1 0000268d: PUSH2 0x4412 00002690: JUMP 00002691: JUMPDEST 00002692: PUSH2 0x26ad 00002695: JUMPI 00002696: PUSH1 0x40 00002698: MLOAD 00002699: PUSH3 0x461bcd 0000269d: PUSH1 0xe5 0000269f: SHL 000026a0: DUP2 000026a1: MSTORE 000026a2: PUSH1 0x04 000026a4: ADD 000026a5: PUSH2 0x0310 000026a8: SWAP1 000026a9: PUSH2 0x52b8 000026ac: JUMP 000026ad: JUMPDEST 000026ae: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001 000026cf: PUSH1 0x01 000026d1: PUSH1 0x01 000026d3: PUSH1 0xa0 000026d5: SHL 000026d6: SUB 000026d7: AND 000026d8: DUP7 000026d9: PUSH1 0x01 000026db: PUSH1 0x01 000026dd: PUSH1 0xa0 000026df: SHL 000026e0: SUB 000026e1: AND 000026e2: SUB 000026e3: PUSH2 0x26fe 000026e6: JUMPI 000026e7: PUSH1 0x40 000026e9: MLOAD 000026ea: PUSH3 0x461bcd 000026ee: PUSH1 0xe5 000026f0: SHL 000026f1: DUP2 000026f2: MSTORE 000026f3: PUSH1 0x04 000026f5: ADD 000026f6: PUSH2 0x0310 000026f9: SWAP1 000026fa: PUSH2 0x5426 000026fd: JUMP 000026fe: JUMPDEST 000026ff: PUSH1 0x00 00002701: PUSH2 0x270b 00002704: DUP8 00002705: DUP8 00002706: DUP6 00002707: PUSH2 0x2aee 0000270a: JUMP 0000270b: JUMPDEST 0000270c: SWAP1 0000270d: POP 0000270e: PUSH2 0x2722 00002711: PUSH1 0x01 00002713: PUSH1 0x01 00002715: PUSH1 0xa0 00002717: SHL 00002718: SUB 00002719: DUP9 0000271a: AND 0000271b: CALLER 0000271c: ADDRESS 0000271d: DUP5 0000271e: PUSH2 0x2e73 00002721: JUMP 00002722: JUMPDEST 00002723: PUSH2 0x012d 00002726: SLOAD 00002727: PUSH1 0x40 00002729: DUP1 0000272a: MLOAD 0000272b: PUSH1 0x20 0000272d: PUSH1 0x1f 0000272f: DUP9 00002730: ADD 00002731: DUP2 00002732: SWAP1 00002733: DIV 00002734: DUP2 00002735: MUL 00002736: DUP3 00002737: ADD 00002738: DUP2 00002739: ADD 0000273a: SWAP1 0000273b: SWAP3 0000273c: MSTORE 0000273d: DUP7 0000273e: DUP2 0000273f: MSTORE 00002740: PUSH1 0x01 00002742: PUSH1 0x01 00002744: PUSH1 0xa0 00002746: SHL 00002747: SUB 00002748: SWAP1 00002749: SWAP3 0000274a: AND 0000274b: SWAP2 0000274c: PUSH4 0x6d1eaa88 00002751: SWAP2 00002752: PUSH2 0x277b 00002755: SWAP2 00002756: DUP8 00002757: SWAP2 00002758: DUP13 00002759: SWAP2 0000275a: DUP8 0000275b: SWAP2 0000275c: DUP13 0000275d: SWAP1 0000275e: DUP13 0000275f: SWAP1 00002760: DUP2 00002761: SWAP1 00002762: DUP5 00002763: ADD 00002764: DUP4 00002765: DUP3 00002766: DUP1 00002767: DUP3 00002768: DUP5 00002769: CALLDATACOPY 0000276a: PUSH1 0x00 0000276c: SWAP3 0000276d: ADD 0000276e: SWAP2 0000276f: SWAP1 00002770: SWAP2 00002771: MSTORE 00002772: POP 00002773: PUSH2 0x2e54 00002776: SWAP3 00002777: POP 00002778: POP 00002779: POP 0000277a: JUMP 0000277b: JUMPDEST 0000277c: DUP5 0000277d: PUSH1 0x40 0000277f: MLOAD 00002780: DUP4 00002781: PUSH4 0xffffffff 00002786: AND 00002787: PUSH1 0xe0 00002789: SHL 0000278a: DUP2 0000278b: MSTORE 0000278c: PUSH1 0x04 0000278e: ADD 0000278f: PUSH2 0x2799 00002792: SWAP3 00002793: SWAP2 00002794: SWAP1 00002795: PUSH2 0x538d 00002798: JUMP 00002799: JUMPDEST 0000279a: PUSH1 0x00 0000279c: PUSH1 0x40 0000279e: MLOAD 0000279f: DUP1 000027a0: DUP4 000027a1: SUB 000027a2: DUP2 000027a3: PUSH1 0x00 000027a5: DUP8 000027a6: DUP1 000027a7: EXTCODESIZE 000027a8: ISZERO 000027a9: DUP1 000027aa: ISZERO 000027ab: PUSH2 0x27b3 000027ae: JUMPI 000027af: PUSH1 0x00 000027b1: DUP1 000027b2: REVERT 000027b3: JUMPDEST 000027b4: POP 000027b5: GAS 000027b6: CALL 000027b7: ISZERO 000027b8: DUP1 000027b9: ISZERO 000027ba: PUSH2 0x27c7 000027bd: JUMPI 000027be: RETURNDATASIZE 000027bf: PUSH1 0x00 000027c1: DUP1 000027c2: RETURNDATACOPY 000027c3: RETURNDATASIZE 000027c4: PUSH1 0x00 000027c6: REVERT 000027c7: JUMPDEST 000027c8: POP 000027c9: POP 000027ca: POP 000027cb: POP 000027cc: POP 000027cd: POP 000027ce: POP 000027cf: POP 000027d0: POP 000027d1: POP 000027d2: POP 000027d3: JUMP 000027d4: JUMPDEST 000027d5: PUSH1 0x65 000027d7: SLOAD 000027d8: PUSH1 0x01 000027da: PUSH1 0x01 000027dc: PUSH1 0xa0 000027de: SHL 000027df: SUB 000027e0: AND 000027e1: CALLER 000027e2: EQ 000027e3: PUSH2 0x0c9d 000027e6: JUMPI 000027e7: PUSH1 0x00 000027e9: DUP1 000027ea: REVERT 000027eb: JUMPDEST 000027ec: PUSH32 0x4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143 0000280d: SLOAD 0000280e: PUSH1 0xff 00002810: AND 00002811: ISZERO 00002812: PUSH2 0x2823 00002815: JUMPI 00002816: PUSH2 0x281e 00002819: DUP4 0000281a: PUSH2 0x2e94 0000281d: JUMP 0000281e: JUMPDEST 0000281f: POP 00002820: POP 00002821: POP 00002822: JUMP 00002823: JUMPDEST 00002824: DUP3 00002825: PUSH1 0x01 00002827: PUSH1 0x01 00002829: PUSH1 0xa0 0000282b: SHL 0000282c: SUB 0000282d: AND 0000282e: PUSH4 0x52d1902d 00002833: PUSH1 0x40 00002835: MLOAD 00002836: DUP2 00002837: PUSH4 0xffffffff 0000283c: AND 0000283d: PUSH1 0xe0 0000283f: SHL 00002840: DUP2 00002841: MSTORE 00002842: PUSH1 0x04 00002844: ADD 00002845: PUSH1 0x20 00002847: PUSH1 0x40 00002849: MLOAD 0000284a: DUP1 0000284b: DUP4 0000284c: SUB 0000284d: DUP2 0000284e: DUP7 0000284f: GAS 00002850: STATICCALL 00002851: SWAP3 00002852: POP 00002853: POP 00002854: POP 00002855: DUP1 00002856: ISZERO 00002857: PUSH2 0x287d 0000285a: JUMPI 0000285b: POP 0000285c: PUSH1 0x40 0000285e: DUP1 0000285f: MLOAD 00002860: PUSH1 0x1f 00002862: RETURNDATASIZE 00002863: SWAP1 00002864: DUP2 00002865: ADD 00002866: PUSH1 0x1f 00002868: NOT 00002869: AND 0000286a: DUP3 0000286b: ADD 0000286c: SWAP1 0000286d: SWAP3 0000286e: MSTORE 0000286f: PUSH2 0x287a 00002872: SWAP2 00002873: DUP2 00002874: ADD 00002875: SWAP1 00002876: PUSH2 0x5441 00002879: JUMP 0000287a: JUMPDEST 0000287b: PUSH1 0x01 0000287d: JUMPDEST 0000287e: PUSH2 0x2899 00002881: JUMPI 00002882: PUSH1 0x40 00002884: MLOAD 00002885: PUSH3 0x461bcd 00002889: PUSH1 0xe5 0000288b: SHL 0000288c: DUP2 0000288d: MSTORE 0000288e: PUSH1 0x04 00002890: ADD 00002891: PUSH2 0x0310 00002894: SWAP1 00002895: PUSH2 0x54ad 00002898: JUMP 00002899: JUMPDEST 0000289a: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc 000028bb: DUP2 000028bc: EQ 000028bd: PUSH2 0x28d8 000028c0: JUMPI 000028c1: PUSH1 0x40 000028c3: MLOAD 000028c4: PUSH3 0x461bcd 000028c8: PUSH1 0xe5 000028ca: SHL 000028cb: DUP2 000028cc: MSTORE 000028cd: PUSH1 0x04 000028cf: ADD 000028d0: PUSH2 0x0310 000028d3: SWAP1 000028d4: PUSH2 0x5503 000028d7: JUMP 000028d8: JUMPDEST 000028d9: POP 000028da: PUSH2 0x281e 000028dd: DUP4 000028de: DUP4 000028df: DUP4 000028e0: PUSH2 0x2efc 000028e3: JUMP 000028e4: JUMPDEST 000028e5: PUSH1 0x33 000028e7: SLOAD 000028e8: PUSH1 0xff 000028ea: AND 000028eb: PUSH2 0x0cb8 000028ee: JUMPI 000028ef: PUSH1 0x40 000028f1: MLOAD 000028f2: PUSH3 0x461bcd 000028f6: PUSH1 0xe5 000028f8: SHL 000028f9: DUP2 000028fa: MSTORE 000028fb: PUSH1 0x04 000028fd: ADD 000028fe: PUSH2 0x0310 00002901: SWAP1 00002902: PUSH2 0x5547 00002905: JUMP 00002906: JUMPDEST 00002907: PUSH2 0x290e 0000290a: PUSH2 0x28e4 0000290d: JUMP 0000290e: JUMPDEST 0000290f: PUSH1 0x33 00002911: DUP1 00002912: SLOAD 00002913: PUSH1 0xff 00002915: NOT 00002916: AND 00002917: SWAP1 00002918: SSTORE 00002919: PUSH32 0x5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa 0000293a: CALLER 0000293b: JUMPDEST 0000293c: PUSH1 0x40 0000293e: MLOAD 0000293f: PUSH2 0x2948 00002942: SWAP2 00002943: SWAP1 00002944: PUSH2 0x3dfe 00002947: JUMP 00002948: JUMPDEST 00002949: PUSH1 0x40 0000294b: MLOAD 0000294c: DUP1 0000294d: SWAP2 0000294e: SUB 0000294f: SWAP1 00002950: LOG1 00002951: JUMP 00002952: JUMPDEST 00002953: PUSH1 0x65 00002955: DUP1 00002956: SLOAD 00002957: PUSH1 0x01 00002959: PUSH1 0x01 0000295b: PUSH1 0xa0 0000295d: SHL 0000295e: SUB 0000295f: DUP4 00002960: DUP2 00002961: AND 00002962: PUSH1 0x01 00002964: PUSH1 0x01 00002966: PUSH1 0xa0 00002968: SHL 00002969: SUB 0000296a: NOT 0000296b: DUP4 0000296c: AND 0000296d: DUP2 0000296e: OR 0000296f: SWAP1 00002970: SWAP4 00002971: SSTORE 00002972: PUSH1 0x40 00002974: MLOAD 00002975: SWAP2 00002976: AND 00002977: SWAP2 00002978: SWAP1 00002979: DUP3 0000297a: SWAP1 0000297b: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 0000299c: SWAP1 0000299d: PUSH1 0x00 0000299f: SWAP1 000029a0: LOG3 000029a1: POP 000029a2: POP 000029a3: JUMP 000029a4: JUMPDEST 000029a5: PUSH2 0x29ac 000029a8: PUSH2 0x2477 000029ab: JUMP 000029ac: JUMPDEST 000029ad: PUSH1 0x33 000029af: DUP1 000029b0: SLOAD 000029b1: PUSH1 0xff 000029b3: NOT 000029b4: AND 000029b5: PUSH1 0x01 000029b7: OR 000029b8: SWAP1 000029b9: SSTORE 000029ba: PUSH32 0x62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258 000029db: PUSH2 0x293b 000029de: CALLER 000029df: SWAP1 000029e0: JUMP 000029e1: JUMPDEST 000029e2: PUSH2 0x281e 000029e5: DUP4 000029e6: PUSH4 0xa9059cbb 000029eb: PUSH1 0xe0 000029ed: SHL 000029ee: DUP5 000029ef: DUP5 000029f0: PUSH1 0x40 000029f2: MLOAD 000029f3: PUSH1 0x24 000029f5: ADD 000029f6: PUSH2 0x2a00 000029f9: SWAP3 000029fa: SWAP2 000029fb: SWAP1 000029fc: PUSH2 0x475f 000029ff: JUMP 00002a00: JUMPDEST 00002a01: PUSH1 0x40 00002a03: DUP1 00002a04: MLOAD 00002a05: PUSH1 0x1f 00002a07: NOT 00002a08: DUP2 00002a09: DUP5 00002a0a: SUB 00002a0b: ADD 00002a0c: DUP2 00002a0d: MSTORE 00002a0e: SWAP2 00002a0f: SWAP1 00002a10: MSTORE 00002a11: PUSH1 0x20 00002a13: DUP2 00002a14: ADD 00002a15: DUP1 00002a16: MLOAD 00002a17: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00002a34: AND 00002a35: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 00002a56: SWAP1 00002a57: SWAP4 00002a58: AND 00002a59: SWAP3 00002a5a: SWAP1 00002a5b: SWAP3 00002a5c: OR 00002a5d: SWAP1 00002a5e: SWAP2 00002a5f: MSTORE 00002a60: PUSH2 0x2f21 00002a63: JUMP 00002a64: JUMPDEST 00002a65: PUSH1 0x00 00002a67: SLOAD 00002a68: PUSH2 0x0100 00002a6b: SWAP1 00002a6c: DIV 00002a6d: PUSH1 0xff 00002a6f: AND 00002a70: PUSH2 0x2a8b 00002a73: JUMPI 00002a74: PUSH1 0x40 00002a76: MLOAD 00002a77: PUSH3 0x461bcd 00002a7b: PUSH1 0xe5 00002a7d: SHL 00002a7e: DUP2 00002a7f: MSTORE 00002a80: PUSH1 0x04 00002a82: ADD 00002a83: PUSH2 0x0310 00002a86: SWAP1 00002a87: PUSH2 0x559f 00002a8a: JUMP 00002a8b: JUMPDEST 00002a8c: PUSH2 0x0cb8 00002a8f: CALLER 00002a90: PUSH2 0x2952 00002a93: JUMP 00002a94: JUMPDEST 00002a95: PUSH1 0x00 00002a97: SLOAD 00002a98: PUSH2 0x0100 00002a9b: SWAP1 00002a9c: DIV 00002a9d: PUSH1 0xff 00002a9f: AND 00002aa0: PUSH2 0x2abb 00002aa3: JUMPI 00002aa4: PUSH1 0x40 00002aa6: MLOAD 00002aa7: PUSH3 0x461bcd 00002aab: PUSH1 0xe5 00002aad: SHL 00002aae: DUP2 00002aaf: MSTORE 00002ab0: PUSH1 0x04 00002ab2: ADD 00002ab3: PUSH2 0x0310 00002ab6: SWAP1 00002ab7: PUSH2 0x559f 00002aba: JUMP 00002abb: JUMPDEST 00002abc: PUSH1 0x33 00002abe: DUP1 00002abf: SLOAD 00002ac0: PUSH1 0xff 00002ac2: NOT 00002ac3: AND 00002ac4: SWAP1 00002ac5: SSTORE 00002ac6: JUMP 00002ac7: JUMPDEST 00002ac8: PUSH1 0x00 00002aca: SLOAD 00002acb: PUSH2 0x0100 00002ace: SWAP1 00002acf: DIV 00002ad0: PUSH1 0xff 00002ad2: AND 00002ad3: PUSH2 0x25ec 00002ad6: JUMPI 00002ad7: PUSH1 0x40 00002ad9: MLOAD 00002ada: PUSH3 0x461bcd 00002ade: PUSH1 0xe5 00002ae0: SHL 00002ae1: DUP2 00002ae2: MSTORE 00002ae3: PUSH1 0x04 00002ae5: ADD 00002ae6: PUSH2 0x0310 00002ae9: SWAP1 00002aea: PUSH2 0x559f 00002aed: JUMP 00002aee: JUMPDEST 00002aef: PUSH1 0x00 00002af1: DUP1 00002af2: DUP4 00002af3: GT 00002af4: PUSH2 0x2b0f 00002af7: JUMPI 00002af8: PUSH1 0x40 00002afa: MLOAD 00002afb: PUSH3 0x461bcd 00002aff: PUSH1 0xe5 00002b01: SHL 00002b02: DUP2 00002b03: MSTORE 00002b04: PUSH1 0x04 00002b06: ADD 00002b07: PUSH2 0x0310 00002b0a: SWAP1 00002b0b: PUSH2 0x55e3 00002b0e: JUMP 00002b0f: JUMPDEST 00002b10: PUSH1 0x00 00002b12: PUSH1 0x0a 00002b14: DUP4 00002b15: GT 00002b16: ISZERO 00002b17: PUSH2 0x2bae 00002b1a: JUMPI 00002b1b: PUSH2 0x0196 00002b1e: SLOAD 00002b1f: PUSH1 0x40 00002b21: MLOAD 00002b22: PUSH4 0x13989aff 00002b27: PUSH1 0xe3 00002b29: SHL 00002b2a: DUP2 00002b2b: MSTORE 00002b2c: PUSH3 0x0186a0 00002b30: SWAP2 00002b31: DUP7 00002b32: SWAP2 00002b33: PUSH1 0x01 00002b35: PUSH1 0x01 00002b37: PUSH1 0xa0 00002b39: SHL 00002b3a: SUB 00002b3b: SWAP1 00002b3c: SWAP2 00002b3d: AND 00002b3e: SWAP1 00002b3f: PUSH4 0x9cc4d7f8 00002b44: SWAP1 00002b45: PUSH2 0x2b52 00002b48: SWAP1 00002b49: DUP11 00002b4a: SWAP1 00002b4b: PUSH1 0x04 00002b4d: ADD 00002b4e: PUSH2 0x3dfe 00002b51: JUMP 00002b52: JUMPDEST 00002b53: PUSH1 0x20 00002b55: PUSH1 0x40 00002b57: MLOAD 00002b58: DUP1 00002b59: DUP4 00002b5a: SUB 00002b5b: DUP2 00002b5c: DUP7 00002b5d: GAS 00002b5e: STATICCALL 00002b5f: ISZERO 00002b60: DUP1 00002b61: ISZERO 00002b62: PUSH2 0x2b6f 00002b65: JUMPI 00002b66: RETURNDATASIZE 00002b67: PUSH1 0x00 00002b69: DUP1 00002b6a: RETURNDATACOPY 00002b6b: RETURNDATASIZE 00002b6c: PUSH1 0x00 00002b6e: REVERT 00002b6f: JUMPDEST 00002b70: POP 00002b71: POP 00002b72: POP 00002b73: POP 00002b74: PUSH1 0x40 00002b76: MLOAD 00002b77: RETURNDATASIZE 00002b78: PUSH1 0x1f 00002b7a: NOT 00002b7b: PUSH1 0x1f 00002b7d: DUP3 00002b7e: ADD 00002b7f: AND 00002b80: DUP3 00002b81: ADD 00002b82: DUP1 00002b83: PUSH1 0x40 00002b85: MSTORE 00002b86: POP 00002b87: DUP2 00002b88: ADD 00002b89: SWAP1 00002b8a: PUSH2 0x2b93 00002b8d: SWAP2 00002b8e: SWAP1 00002b8f: PUSH2 0x5441 00002b92: JUMP 00002b93: JUMPDEST 00002b94: PUSH2 0x2b9d 00002b97: SWAP2 00002b98: SWAP1 00002b99: PUSH2 0x5609 00002b9c: JUMP 00002b9d: JUMPDEST 00002b9e: PUSH2 0x2ba7 00002ba1: SWAP2 00002ba2: SWAP1 00002ba3: PUSH2 0x563e 00002ba6: JUMP 00002ba7: JUMPDEST 00002ba8: SWAP1 00002ba9: POP 00002baa: PUSH2 0x2c3e 00002bad: JUMP 00002bae: JUMPDEST 00002baf: PUSH2 0x0196 00002bb2: SLOAD 00002bb3: PUSH1 0x40 00002bb5: MLOAD 00002bb6: PUSH4 0x19745e39 00002bbb: PUSH1 0xe1 00002bbd: SHL 00002bbe: DUP2 00002bbf: MSTORE 00002bc0: PUSH3 0x0186a0 00002bc4: SWAP2 00002bc5: DUP7 00002bc6: SWAP2 00002bc7: PUSH1 0x01 00002bc9: PUSH1 0x01 00002bcb: PUSH1 0xa0 00002bcd: SHL 00002bce: SUB 00002bcf: SWAP1 00002bd0: SWAP2 00002bd1: AND 00002bd2: SWAP1 00002bd3: PUSH4 0x32e8bc72 00002bd8: SWAP1 00002bd9: PUSH2 0x2be6 00002bdc: SWAP1 00002bdd: DUP11 00002bde: SWAP1 00002bdf: PUSH1 0x04 00002be1: ADD 00002be2: PUSH2 0x3dfe 00002be5: JUMP 00002be6: JUMPDEST 00002be7: PUSH1 0x20 00002be9: PUSH1 0x40 00002beb: MLOAD 00002bec: DUP1 00002bed: DUP4 00002bee: SUB 00002bef: DUP2 00002bf0: DUP7 00002bf1: GAS 00002bf2: STATICCALL 00002bf3: ISZERO 00002bf4: DUP1 00002bf5: ISZERO 00002bf6: PUSH2 0x2c03 00002bf9: JUMPI 00002bfa: RETURNDATASIZE 00002bfb: PUSH1 0x00 00002bfd: DUP1 00002bfe: RETURNDATACOPY 00002bff: RETURNDATASIZE 00002c00: PUSH1 0x00 00002c02: REVERT 00002c03: JUMPDEST 00002c04: POP 00002c05: POP 00002c06: POP 00002c07: POP 00002c08: PUSH1 0x40 00002c0a: MLOAD 00002c0b: RETURNDATASIZE 00002c0c: PUSH1 0x1f 00002c0e: NOT 00002c0f: PUSH1 0x1f 00002c11: DUP3 00002c12: ADD 00002c13: AND 00002c14: DUP3 00002c15: ADD 00002c16: DUP1 00002c17: PUSH1 0x40 00002c19: MSTORE 00002c1a: POP 00002c1b: DUP2 00002c1c: ADD 00002c1d: SWAP1 00002c1e: PUSH2 0x2c27 00002c21: SWAP2 00002c22: SWAP1 00002c23: PUSH2 0x5441 00002c26: JUMP 00002c27: JUMPDEST 00002c28: PUSH2 0x2c31 00002c2b: SWAP2 00002c2c: SWAP1 00002c2d: PUSH2 0x5609 00002c30: JUMP 00002c31: JUMPDEST 00002c32: PUSH2 0x2c3b 00002c35: SWAP2 00002c36: SWAP1 00002c37: PUSH2 0x563e 00002c3a: JUMP 00002c3b: JUMPDEST 00002c3c: SWAP1 00002c3d: POP 00002c3e: JUMPDEST 00002c3f: DUP1 00002c40: ISZERO 00002c41: PUSH2 0x2e41 00002c44: JUMPI 00002c45: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001 00002c66: PUSH1 0x01 00002c68: PUSH1 0x01 00002c6a: PUSH1 0xa0 00002c6c: SHL 00002c6d: SUB 00002c6e: AND 00002c6f: DUP6 00002c70: PUSH1 0x01 00002c72: PUSH1 0x01 00002c74: PUSH1 0xa0 00002c76: SHL 00002c77: SUB 00002c78: AND 00002c79: SUB 00002c7a: PUSH2 0x2db4 00002c7d: JUMPI 00002c7e: PUSH1 0x01 00002c80: PUSH1 0x01 00002c82: PUSH1 0xa0 00002c84: SHL 00002c85: SUB 00002c86: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001 00002ca7: AND 00002ca8: PUSH1 0x00 00002caa: SWAP1 00002cab: DUP2 00002cac: MSTORE 00002cad: PUSH2 0x0197 00002cb0: PUSH1 0x20 00002cb2: MSTORE 00002cb3: PUSH1 0x40 00002cb5: DUP2 00002cb6: KECCAK256 00002cb7: DUP1 00002cb8: SLOAD 00002cb9: DUP4 00002cba: SWAP3 00002cbb: SWAP1 00002cbc: PUSH2 0x2cc6 00002cbf: SWAP1 00002cc0: DUP5 00002cc1: SWAP1 00002cc2: PUSH2 0x5652 00002cc5: JUMP 00002cc6: JUMPDEST 00002cc7: SWAP1 00002cc8: SWAP2 00002cc9: SSTORE 00002cca: POP 00002ccb: POP 00002ccc: PUSH2 0x0196 00002ccf: SLOAD 00002cd0: PUSH1 0x40 00002cd2: MLOAD 00002cd3: PUSH1 0x00 00002cd5: SWAP2 00002cd6: PUSH1 0x01 00002cd8: PUSH1 0x01 00002cda: PUSH1 0xa0 00002cdc: SHL 00002cdd: SUB 00002cde: AND 00002cdf: SWAP1 00002ce0: DUP4 00002ce1: SWAP1 00002ce2: PUSH2 0x2cea 00002ce5: SWAP1 00002ce6: PUSH2 0x48f0 00002ce9: JUMP 00002cea: JUMPDEST 00002ceb: PUSH1 0x00 00002ced: PUSH1 0x40 00002cef: MLOAD 00002cf0: DUP1 00002cf1: DUP4 00002cf2: SUB 00002cf3: DUP2 00002cf4: DUP6 00002cf5: DUP8 00002cf6: GAS 00002cf7: CALL 00002cf8: SWAP3 00002cf9: POP 00002cfa: POP 00002cfb: POP 00002cfc: RETURNDATASIZE 00002cfd: DUP1 00002cfe: PUSH1 0x00 00002d00: DUP2 00002d01: EQ 00002d02: PUSH2 0x2d27 00002d05: JUMPI 00002d06: PUSH1 0x40 00002d08: MLOAD 00002d09: SWAP2 00002d0a: POP 00002d0b: PUSH1 0x1f 00002d0d: NOT 00002d0e: PUSH1 0x3f 00002d10: RETURNDATASIZE 00002d11: ADD 00002d12: AND 00002d13: DUP3 00002d14: ADD 00002d15: PUSH1 0x40 00002d17: MSTORE 00002d18: RETURNDATASIZE 00002d19: DUP3 00002d1a: MSTORE 00002d1b: RETURNDATASIZE 00002d1c: PUSH1 0x00 00002d1e: PUSH1 0x20 00002d20: DUP5 00002d21: ADD 00002d22: RETURNDATACOPY 00002d23: PUSH2 0x2d2c 00002d26: JUMP 00002d27: JUMPDEST 00002d28: PUSH1 0x60 00002d2a: SWAP2 00002d2b: POP 00002d2c: JUMPDEST 00002d2d: POP 00002d2e: POP 00002d2f: SWAP1 00002d30: POP 00002d31: DUP1 00002d32: PUSH2 0x2d4d 00002d35: JUMPI 00002d36: PUSH1 0x40 00002d38: MLOAD 00002d39: PUSH3 0x461bcd 00002d3d: PUSH1 0xe5 00002d3f: SHL 00002d40: DUP2 00002d41: MSTORE 00002d42: PUSH1 0x04 00002d44: ADD 00002d45: PUSH2 0x0310 00002d48: SWAP1 00002d49: PUSH2 0x5697 00002d4c: JUMP 00002d4d: JUMPDEST 00002d4e: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001 00002d6f: PUSH1 0x01 00002d71: PUSH1 0x01 00002d73: PUSH1 0xa0 00002d75: SHL 00002d76: SUB 00002d77: AND 00002d78: PUSH32 0x4ffe5bf553bf6aeeb1ee609a4214a42f4891810f9ff6751298650c4c1933a09e 00002d99: DUP4 00002d9a: PUSH1 0x40 00002d9c: MLOAD 00002d9d: PUSH2 0x2da6 00002da0: SWAP2 00002da1: SWAP1 00002da2: PUSH2 0x3800 00002da5: JUMP 00002da6: JUMPDEST 00002da7: PUSH1 0x40 00002da9: MLOAD 00002daa: DUP1 00002dab: SWAP2 00002dac: SUB 00002dad: SWAP1 00002dae: LOG2 00002daf: POP 00002db0: PUSH2 0x2e41 00002db3: JUMP 00002db4: JUMPDEST 00002db5: PUSH1 0x01 00002db7: PUSH1 0x01 00002db9: PUSH1 0xa0 00002dbb: SHL 00002dbc: SUB 00002dbd: DUP6 00002dbe: AND 00002dbf: PUSH1 0x00 00002dc1: SWAP1 00002dc2: DUP2 00002dc3: MSTORE 00002dc4: PUSH2 0x0197 00002dc7: PUSH1 0x20 00002dc9: MSTORE 00002dca: PUSH1 0x40 00002dcc: DUP2 00002dcd: KECCAK256 00002dce: DUP1 00002dcf: SLOAD 00002dd0: DUP4 00002dd1: SWAP3 00002dd2: SWAP1 00002dd3: PUSH2 0x2ddd 00002dd6: SWAP1 00002dd7: DUP5 00002dd8: SWAP1 00002dd9: PUSH2 0x5652 00002ddc: JUMP 00002ddd: JUMPDEST 00002dde: SWAP1 00002ddf: SWAP2 00002de0: SSTORE 00002de1: POP 00002de2: POP 00002de3: PUSH2 0x0196 00002de6: SLOAD 00002de7: PUSH2 0x2dff 00002dea: SWAP1 00002deb: PUSH1 0x01 00002ded: PUSH1 0x01 00002def: PUSH1 0xa0 00002df1: SHL 00002df2: SUB 00002df3: DUP8 00002df4: DUP2 00002df5: AND 00002df6: SWAP2 00002df7: CALLER 00002df8: SWAP2 00002df9: AND 00002dfa: DUP5 00002dfb: PUSH2 0x2e73 00002dfe: JUMP 00002dff: JUMPDEST 00002e00: DUP5 00002e01: PUSH1 0x01 00002e03: PUSH1 0x01 00002e05: PUSH1 0xa0 00002e07: SHL 00002e08: SUB 00002e09: AND 00002e0a: PUSH32 0x4ffe5bf553bf6aeeb1ee609a4214a42f4891810f9ff6751298650c4c1933a09e 00002e2b: DUP3 00002e2c: PUSH1 0x40 00002e2e: MLOAD 00002e2f: PUSH2 0x2e38 00002e32: SWAP2 00002e33: SWAP1 00002e34: PUSH2 0x3800 00002e37: JUMP 00002e38: JUMPDEST 00002e39: PUSH1 0x40 00002e3b: MLOAD 00002e3c: DUP1 00002e3d: SWAP2 00002e3e: SUB 00002e3f: SWAP1 00002e40: LOG2 00002e41: JUMPDEST 00002e42: PUSH2 0x2e4b 00002e45: DUP2 00002e46: DUP6 00002e47: PUSH2 0x56a7 00002e4a: JUMP 00002e4b: JUMPDEST 00002e4c: SWAP6 00002e4d: SWAP5 00002e4e: POP 00002e4f: POP 00002e50: POP 00002e51: POP 00002e52: POP 00002e53: JUMP 00002e54: JUMPDEST 00002e55: PUSH2 0x2e5c 00002e58: PUSH2 0x350c 00002e5b: JUMP 00002e5c: JUMPDEST 00002e5d: PUSH2 0x2e67 00002e60: DUP5 00002e61: DUP5 00002e62: DUP5 00002e63: PUSH2 0x2fb0 00002e66: JUMP 00002e67: JUMPDEST 00002e68: SWAP5 00002e69: DUP6 00002e6a: MSTORE 00002e6b: POP 00002e6c: SWAP3 00002e6d: SWAP4 00002e6e: SWAP3 00002e6f: POP 00002e70: POP 00002e71: POP 00002e72: JUMP 00002e73: JUMPDEST 00002e74: PUSH2 0x11e8 00002e77: DUP5 00002e78: PUSH4 0x23b872dd 00002e7d: PUSH1 0xe0 00002e7f: SHL 00002e80: DUP6 00002e81: DUP6 00002e82: DUP6 00002e83: PUSH1 0x40 00002e85: MLOAD 00002e86: PUSH1 0x24 00002e88: ADD 00002e89: PUSH2 0x2a00 00002e8c: SWAP4 00002e8d: SWAP3 00002e8e: SWAP2 00002e8f: SWAP1 00002e90: PUSH2 0x4d4c 00002e93: JUMP 00002e94: JUMPDEST 00002e95: PUSH1 0x01 00002e97: PUSH1 0x01 00002e99: PUSH1 0xa0 00002e9b: SHL 00002e9c: SUB 00002e9d: DUP2 00002e9e: AND 00002e9f: EXTCODESIZE 00002ea0: PUSH2 0x2ebb 00002ea3: JUMPI 00002ea4: PUSH1 0x40 00002ea6: MLOAD 00002ea7: PUSH3 0x461bcd 00002eab: PUSH1 0xe5 00002ead: SHL 00002eae: DUP2 00002eaf: MSTORE 00002eb0: PUSH1 0x04 00002eb2: ADD 00002eb3: PUSH2 0x0310 00002eb6: SWAP1 00002eb7: PUSH2 0x5704 00002eba: JUMP 00002ebb: JUMPDEST 00002ebc: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc 00002edd: DUP1 00002ede: SLOAD 00002edf: PUSH1 0x01 00002ee1: PUSH1 0x01 00002ee3: PUSH1 0xa0 00002ee5: SHL 00002ee6: SUB 00002ee7: NOT 00002ee8: AND 00002ee9: PUSH1 0x01 00002eeb: PUSH1 0x01 00002eed: PUSH1 0xa0 00002eef: SHL 00002ef0: SUB 00002ef1: SWAP3 00002ef2: SWAP1 00002ef3: SWAP3 00002ef4: AND 00002ef5: SWAP2 00002ef6: SWAP1 00002ef7: SWAP2 00002ef8: OR 00002ef9: SWAP1 00002efa: SSTORE 00002efb: JUMP 00002efc: JUMPDEST 00002efd: PUSH2 0x2f05 00002f00: DUP4 00002f01: PUSH2 0x3269 00002f04: JUMP 00002f05: JUMPDEST 00002f06: PUSH1 0x00 00002f08: DUP3 00002f09: MLOAD 00002f0a: GT 00002f0b: DUP1 00002f0c: PUSH2 0x2f12 00002f0f: JUMPI 00002f10: POP 00002f11: DUP1 00002f12: JUMPDEST 00002f13: ISZERO 00002f14: PUSH2 0x281e 00002f17: JUMPI 00002f18: PUSH2 0x11e8 00002f1b: DUP4 00002f1c: DUP4 00002f1d: PUSH2 0x32a9 00002f20: JUMP 00002f21: JUMPDEST 00002f22: PUSH1 0x00 00002f24: PUSH2 0x2f76 00002f27: DUP3 00002f28: PUSH1 0x40 00002f2a: MLOAD 00002f2b: DUP1 00002f2c: PUSH1 0x40 00002f2e: ADD 00002f2f: PUSH1 0x40 00002f31: MSTORE 00002f32: DUP1 00002f33: PUSH1 0x20 00002f35: DUP2 00002f36: MSTORE 00002f37: PUSH1 0x20 00002f39: ADD 00002f3a: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564 00002f5b: DUP2 00002f5c: MSTORE 00002f5d: POP 00002f5e: DUP6 00002f5f: PUSH1 0x01 00002f61: PUSH1 0x01 00002f63: PUSH1 0xa0 00002f65: SHL 00002f66: SUB 00002f67: AND 00002f68: PUSH2 0x32d5 00002f6b: SWAP1 00002f6c: SWAP3 00002f6d: SWAP2 00002f6e: SWAP1 00002f6f: PUSH4 0xffffffff 00002f74: AND 00002f75: JUMP 00002f76: JUMPDEST 00002f77: DUP1 00002f78: MLOAD 00002f79: SWAP1 00002f7a: SWAP2 00002f7b: POP 00002f7c: ISZERO 00002f7d: PUSH2 0x281e 00002f80: JUMPI 00002f81: DUP1 00002f82: DUP1 00002f83: PUSH1 0x20 00002f85: ADD 00002f86: SWAP1 00002f87: MLOAD 00002f88: DUP2 00002f89: ADD 00002f8a: SWAP1 00002f8b: PUSH2 0x2f94 00002f8e: SWAP2 00002f8f: SWAP1 00002f90: PUSH2 0x4412 00002f93: JUMP 00002f94: JUMPDEST 00002f95: PUSH2 0x281e 00002f98: JUMPI 00002f99: PUSH1 0x40 00002f9b: MLOAD 00002f9c: PUSH3 0x461bcd 00002fa0: PUSH1 0xe5 00002fa2: SHL 00002fa3: DUP2 00002fa4: MSTORE 00002fa5: PUSH1 0x04 00002fa7: ADD 00002fa8: PUSH2 0x0310 00002fab: SWAP1 00002fac: PUSH2 0x575b 00002faf: JUMP 00002fb0: JUMPDEST 00002fb1: PUSH2 0x2fb8 00002fb4: PUSH2 0x350c 00002fb7: JUMP 00002fb8: JUMPDEST 00002fb9: PUSH2 0x012e 00002fbc: SLOAD 00002fbd: PUSH1 0x40 00002fbf: MLOAD 00002fc0: PUSH4 0x0723eb03 00002fc5: PUSH1 0xe5 00002fc7: SHL 00002fc8: DUP2 00002fc9: MSTORE 00002fca: PUSH1 0x01 00002fcc: PUSH1 0x01 00002fce: PUSH1 0xa0 00002fd0: SHL 00002fd1: SUB 00002fd2: SWAP1 00002fd3: SWAP2 00002fd4: AND 00002fd5: SWAP1 00002fd6: PUSH4 0xe47d6060 00002fdb: SWAP1 00002fdc: PUSH2 0x2fe9 00002fdf: SWAP1 00002fe0: CALLER 00002fe1: SWAP1 00002fe2: PUSH1 0x04 00002fe4: ADD 00002fe5: PUSH2 0x3dfe 00002fe8: JUMP 00002fe9: JUMPDEST 00002fea: PUSH1 0x20 00002fec: PUSH1 0x40 00002fee: MLOAD 00002fef: DUP1 00002ff0: DUP4 00002ff1: SUB 00002ff2: DUP2 00002ff3: DUP7 00002ff4: GAS 00002ff5: STATICCALL 00002ff6: ISZERO 00002ff7: DUP1 00002ff8: ISZERO 00002ff9: PUSH2 0x3006 00002ffc: JUMPI 00002ffd: RETURNDATASIZE 00002ffe: PUSH1 0x00 00003000: DUP1 00003001: RETURNDATACOPY 00003002: RETURNDATASIZE 00003003: PUSH1 0x00 00003005: REVERT 00003006: JUMPDEST 00003007: POP 00003008: POP 00003009: POP 0000300a: POP 0000300b: PUSH1 0x40 0000300d: MLOAD 0000300e: RETURNDATASIZE 0000300f: PUSH1 0x1f 00003011: NOT 00003012: PUSH1 0x1f 00003014: DUP3 00003015: ADD 00003016: AND 00003017: DUP3 00003018: ADD 00003019: DUP1 0000301a: PUSH1 0x40 0000301c: MSTORE 0000301d: POP 0000301e: DUP2 0000301f: ADD 00003020: SWAP1 00003021: PUSH2 0x302a 00003024: SWAP2 00003025: SWAP1 00003026: PUSH2 0x4412 00003029: JUMP 0000302a: JUMPDEST 0000302b: ISZERO 0000302c: PUSH2 0x3047 0000302f: JUMPI 00003030: PUSH1 0x40 00003032: MLOAD 00003033: PUSH3 0x461bcd 00003037: PUSH1 0xe5 00003039: SHL 0000303a: DUP2 0000303b: MSTORE 0000303c: PUSH1 0x04 0000303e: ADD 0000303f: PUSH2 0x0310 00003042: SWAP1 00003043: PUSH2 0x579d 00003046: JUMP 00003047: JUMPDEST 00003048: PUSH1 0x01 0000304a: PUSH1 0x01 0000304c: PUSH1 0xa0 0000304e: SHL 0000304f: SUB 00003050: DUP5 00003051: AND 00003052: PUSH1 0x00 00003054: SWAP1 00003055: DUP2 00003056: MSTORE 00003057: PUSH1 0xc9 00003059: PUSH1 0x20 0000305b: MSTORE 0000305c: PUSH1 0x40 0000305e: SWAP1 0000305f: KECCAK256 00003060: PUSH1 0x06 00003062: ADD 00003063: SLOAD 00003064: PUSH1 0xff 00003066: AND 00003067: PUSH2 0x3082 0000306a: JUMPI 0000306b: PUSH1 0x40 0000306d: MLOAD 0000306e: PUSH3 0x461bcd 00003072: PUSH1 0xe5 00003074: SHL 00003075: DUP2 00003076: MSTORE 00003077: PUSH1 0x04 00003079: ADD 0000307a: PUSH2 0x0310 0000307d: SWAP1 0000307e: PUSH2 0x489b 00003081: JUMP 00003082: JUMPDEST 00003083: PUSH2 0x308c 00003086: DUP5 00003087: DUP5 00003088: PUSH2 0x1f7e 0000308b: JUMP 0000308c: JUMPDEST 0000308d: PUSH2 0x30a8 00003090: JUMPI 00003091: PUSH1 0x40 00003093: MLOAD 00003094: PUSH3 0x461bcd 00003098: PUSH1 0xe5 0000309a: SHL 0000309b: DUP2 0000309c: MSTORE 0000309d: PUSH1 0x04 0000309f: ADD 000030a0: PUSH2 0x0310 000030a3: SWAP1 000030a4: PUSH2 0x57eb 000030a7: JUMP 000030a8: JUMPDEST 000030a9: PUSH1 0x40 000030ab: DUP1 000030ac: MLOAD 000030ad: DUP1 000030ae: DUP3 000030af: ADD 000030b0: DUP3 000030b1: MSTORE 000030b2: PUSH2 0x0130 000030b5: SLOAD 000030b6: DUP2 000030b7: MSTORE 000030b8: PUSH2 0x0131 000030bb: SLOAD 000030bc: PUSH1 0x01 000030be: PUSH1 0x01 000030c0: PUSH1 0xa0 000030c2: SHL 000030c3: SUB 000030c4: SWAP1 000030c5: DUP2 000030c6: AND 000030c7: PUSH1 0x20 000030c9: DUP1 000030ca: DUP5 000030cb: ADD 000030cc: SWAP2 000030cd: SWAP1 000030ce: SWAP2 000030cf: MSTORE 000030d0: DUP5 000030d1: DUP5 000030d2: ADD 000030d3: SWAP3 000030d4: SWAP1 000030d5: SWAP3 000030d6: MSTORE 000030d7: DUP3 000030d8: MLOAD 000030d9: DUP1 000030da: DUP5 000030db: ADD 000030dc: DUP5 000030dd: MSTORE 000030de: PUSH1 0xc8 000030e0: SLOAD 000030e1: DUP2 000030e2: MSTORE 000030e3: SWAP1 000030e4: DUP8 000030e5: AND 000030e6: PUSH1 0x00 000030e8: SWAP1 000030e9: DUP2 000030ea: MSTORE 000030eb: PUSH1 0xc9 000030ed: DUP4 000030ee: MSTORE 000030ef: SWAP3 000030f0: SWAP1 000030f1: SWAP3 000030f2: KECCAK256 000030f3: PUSH1 0x03 000030f5: ADD 000030f6: DUP1 000030f7: SLOAD 000030f8: SWAP2 000030f9: DUP4 000030fa: ADD 000030fb: SWAP2 000030fc: PUSH2 0x3104 000030ff: SWAP1 00003100: PUSH2 0x4803 00003103: JUMP 00003104: JUMPDEST 00003105: DUP1 00003106: PUSH1 0x1f 00003108: ADD 00003109: PUSH1 0x20 0000310b: DUP1 0000310c: SWAP2 0000310d: DIV 0000310e: MUL 0000310f: PUSH1 0x20 00003111: ADD 00003112: PUSH1 0x40 00003114: MLOAD 00003115: SWAP1 00003116: DUP2 00003117: ADD 00003118: PUSH1 0x40 0000311a: MSTORE 0000311b: DUP1 0000311c: SWAP3 0000311d: SWAP2 0000311e: SWAP1 0000311f: DUP2 00003120: DUP2 00003121: MSTORE 00003122: PUSH1 0x20 00003124: ADD 00003125: DUP3 00003126: DUP1 00003127: SLOAD 00003128: PUSH2 0x3130 0000312b: SWAP1 0000312c: PUSH2 0x4803 0000312f: JUMP 00003130: JUMPDEST 00003131: DUP1 00003132: ISZERO 00003133: PUSH2 0x317d 00003136: JUMPI 00003137: DUP1 00003138: PUSH1 0x1f 0000313a: LT 0000313b: PUSH2 0x3152 0000313e: JUMPI 0000313f: PUSH2 0x0100 00003142: DUP1 00003143: DUP4 00003144: SLOAD 00003145: DIV 00003146: MUL 00003147: DUP4 00003148: MSTORE 00003149: SWAP2 0000314a: PUSH1 0x20 0000314c: ADD 0000314d: SWAP2 0000314e: PUSH2 0x317d 00003151: JUMP 00003152: JUMPDEST 00003153: DUP3 00003154: ADD 00003155: SWAP2 00003156: SWAP1 00003157: PUSH1 0x00 00003159: MSTORE 0000315a: PUSH1 0x20 0000315c: PUSH1 0x00 0000315e: KECCAK256 0000315f: SWAP1 00003160: JUMPDEST 00003161: DUP2 00003162: SLOAD 00003163: DUP2 00003164: MSTORE 00003165: SWAP1 00003166: PUSH1 0x01 00003168: ADD 00003169: SWAP1 0000316a: PUSH1 0x20 0000316c: ADD 0000316d: DUP1 0000316e: DUP4 0000316f: GT 00003170: PUSH2 0x3160 00003173: JUMPI 00003174: DUP3 00003175: SWAP1 00003176: SUB 00003177: PUSH1 0x1f 00003179: AND 0000317a: DUP3 0000317b: ADD 0000317c: SWAP2 0000317d: JUMPDEST 0000317e: POP 0000317f: POP 00003180: POP 00003181: SWAP2 00003182: SWAP1 00003183: SWAP3 00003184: MSTORE 00003185: POP 00003186: POP 00003187: PUSH1 0x60 00003189: DUP3 0000318a: ADD 0000318b: MSTORE 0000318c: PUSH1 0x40 0000318e: DUP1 0000318f: MLOAD 00003190: PUSH1 0x80 00003192: DUP2 00003193: ADD 00003194: DUP3 00003195: MSTORE 00003196: CALLER 00003197: DUP2 00003198: MSTORE 00003199: PUSH1 0x01 0000319b: PUSH1 0x01 0000319d: PUSH1 0xa0 0000319f: SHL 000031a0: SUB 000031a1: DUP7 000031a2: AND 000031a3: PUSH1 0x00 000031a5: SWAP1 000031a6: DUP2 000031a7: MSTORE 000031a8: PUSH1 0xc9 000031aa: PUSH1 0x20 000031ac: SWAP1 000031ad: DUP2 000031ae: MSTORE 000031af: SWAP3 000031b0: SWAP1 000031b1: KECCAK256 000031b2: PUSH1 0x02 000031b4: ADD 000031b5: DUP1 000031b6: SLOAD 000031b7: SWAP2 000031b8: SWAP3 000031b9: DUP4 000031ba: ADD 000031bb: SWAP2 000031bc: PUSH2 0x31c4 000031bf: SWAP1 000031c0: PUSH2 0x4803 000031c3: JUMP 000031c4: JUMPDEST 000031c5: DUP1 000031c6: PUSH1 0x1f 000031c8: ADD 000031c9: PUSH1 0x20 000031cb: DUP1 000031cc: SWAP2 000031cd: DIV 000031ce: MUL 000031cf: PUSH1 0x20 000031d1: ADD 000031d2: PUSH1 0x40 000031d4: MLOAD 000031d5: SWAP1 000031d6: DUP2 000031d7: ADD 000031d8: PUSH1 0x40 000031da: MSTORE 000031db: DUP1 000031dc: SWAP3 000031dd: SWAP2 000031de: SWAP1 000031df: DUP2 000031e0: DUP2 000031e1: MSTORE 000031e2: PUSH1 0x20 000031e4: ADD 000031e5: DUP3 000031e6: DUP1 000031e7: SLOAD 000031e8: PUSH2 0x31f0 000031eb: SWAP1 000031ec: PUSH2 0x4803 000031ef: JUMP 000031f0: JUMPDEST 000031f1: DUP1 000031f2: ISZERO 000031f3: PUSH2 0x323d 000031f6: JUMPI 000031f7: DUP1 000031f8: PUSH1 0x1f 000031fa: LT 000031fb: PUSH2 0x3212 000031fe: JUMPI 000031ff: PUSH2 0x0100 00003202: DUP1 00003203: DUP4 00003204: SLOAD 00003205: DIV 00003206: MUL 00003207: DUP4 00003208: MSTORE 00003209: SWAP2 0000320a: PUSH1 0x20 0000320c: ADD 0000320d: SWAP2 0000320e: PUSH2 0x323d 00003211: JUMP 00003212: JUMPDEST 00003213: DUP3 00003214: ADD 00003215: SWAP2 00003216: SWAP1 00003217: PUSH1 0x00 00003219: MSTORE 0000321a: PUSH1 0x20 0000321c: PUSH1 0x00 0000321e: KECCAK256 0000321f: SWAP1 00003220: JUMPDEST 00003221: DUP2 00003222: SLOAD 00003223: DUP2 00003224: MSTORE 00003225: SWAP1 00003226: PUSH1 0x01 00003228: ADD 00003229: SWAP1 0000322a: PUSH1 0x20 0000322c: ADD 0000322d: DUP1 0000322e: DUP4 0000322f: GT 00003230: PUSH2 0x3220 00003233: JUMPI 00003234: DUP3 00003235: SWAP1 00003236: SUB 00003237: PUSH1 0x1f 00003239: AND 0000323a: DUP3 0000323b: ADD 0000323c: SWAP2 0000323d: JUMPDEST 0000323e: POP 0000323f: POP 00003240: POP 00003241: SWAP2 00003242: DUP4 00003243: MSTORE 00003244: POP 00003245: POP 00003246: PUSH1 0x20 00003248: DUP2 00003249: ADD 0000324a: SWAP5 0000324b: SWAP1 0000324c: SWAP5 0000324d: MSTORE 0000324e: PUSH1 0x40 00003250: SWAP1 00003251: SWAP4 00003252: ADD 00003253: SWAP2 00003254: SWAP1 00003255: SWAP2 00003256: MSTORE 00003257: PUSH1 0x80 00003259: DUP2 0000325a: ADD 0000325b: SWAP2 0000325c: SWAP1 0000325d: SWAP2 0000325e: MSTORE 0000325f: NUMBER 00003260: PUSH1 0xa0 00003262: DUP3 00003263: ADD 00003264: MSTORE 00003265: SWAP2 00003266: SWAP1 00003267: POP 00003268: JUMP 00003269: JUMPDEST 0000326a: PUSH2 0x3272 0000326d: DUP2 0000326e: PUSH2 0x2e94 00003271: JUMP 00003272: JUMPDEST 00003273: PUSH1 0x40 00003275: MLOAD 00003276: PUSH1 0x01 00003278: PUSH1 0x01 0000327a: PUSH1 0xa0 0000327c: SHL 0000327d: SUB 0000327e: DUP3 0000327f: AND 00003280: SWAP1 00003281: PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b 000032a2: SWAP1 000032a3: PUSH1 0x00 000032a5: SWAP1 000032a6: LOG2 000032a7: POP 000032a8: JUMP 000032a9: JUMPDEST 000032aa: PUSH1 0x60 000032ac: PUSH2 0x32ce 000032af: DUP4 000032b0: DUP4 000032b1: PUSH1 0x40 000032b3: MLOAD 000032b4: DUP1 000032b5: PUSH1 0x60 000032b7: ADD 000032b8: PUSH1 0x40 000032ba: MSTORE 000032bb: DUP1 000032bc: PUSH1 0x27 000032be: DUP2 000032bf: MSTORE 000032c0: PUSH1 0x20 000032c2: ADD 000032c3: PUSH2 0x5893 000032c6: PUSH1 0x27 000032c8: SWAP2 000032c9: CODECOPY 000032ca: PUSH2 0x32ec 000032cd: JUMP 000032ce: JUMPDEST 000032cf: SWAP4 000032d0: SWAP3 000032d1: POP 000032d2: POP 000032d3: POP 000032d4: JUMP 000032d5: JUMPDEST 000032d6: PUSH1 0x60 000032d8: PUSH2 0x32e4 000032db: DUP5 000032dc: DUP5 000032dd: PUSH1 0x00 000032df: DUP6 000032e0: PUSH2 0x3364 000032e3: JUMP 000032e4: JUMPDEST 000032e5: SWAP5 000032e6: SWAP4 000032e7: POP 000032e8: POP 000032e9: POP 000032ea: POP 000032eb: JUMP 000032ec: JUMPDEST 000032ed: PUSH1 0x60 000032ef: PUSH1 0x00 000032f1: DUP1 000032f2: DUP6 000032f3: PUSH1 0x01 000032f5: PUSH1 0x01 000032f7: PUSH1 0xa0 000032f9: SHL 000032fa: SUB 000032fb: AND 000032fc: DUP6 000032fd: PUSH1 0x40 000032ff: MLOAD 00003300: PUSH2 0x3309 00003303: SWAP2 00003304: SWAP1 00003305: PUSH2 0x4b54 00003308: JUMP 00003309: JUMPDEST 0000330a: PUSH1 0x00 0000330c: PUSH1 0x40 0000330e: MLOAD 0000330f: DUP1 00003310: DUP4 00003311: SUB 00003312: DUP2 00003313: DUP6 00003314: GAS 00003315: DELEGATECALL 00003316: SWAP2 00003317: POP 00003318: POP 00003319: RETURNDATASIZE 0000331a: DUP1 0000331b: PUSH1 0x00 0000331d: DUP2 0000331e: EQ 0000331f: PUSH2 0x3344 00003322: JUMPI 00003323: PUSH1 0x40 00003325: MLOAD 00003326: SWAP2 00003327: POP 00003328: PUSH1 0x1f 0000332a: NOT 0000332b: PUSH1 0x3f 0000332d: RETURNDATASIZE 0000332e: ADD 0000332f: AND 00003330: DUP3 00003331: ADD 00003332: PUSH1 0x40 00003334: MSTORE 00003335: RETURNDATASIZE 00003336: DUP3 00003337: MSTORE 00003338: RETURNDATASIZE 00003339: PUSH1 0x00 0000333b: PUSH1 0x20 0000333d: DUP5 0000333e: ADD 0000333f: RETURNDATACOPY 00003340: PUSH2 0x3349 00003343: JUMP 00003344: JUMPDEST 00003345: PUSH1 0x60 00003347: SWAP2 00003348: POP 00003349: JUMPDEST 0000334a: POP 0000334b: SWAP2 0000334c: POP 0000334d: SWAP2 0000334e: POP 0000334f: PUSH2 0x335a 00003352: DUP7 00003353: DUP4 00003354: DUP4 00003355: DUP8 00003356: PUSH2 0x3426 00003359: JUMP 0000335a: JUMPDEST 0000335b: SWAP7 0000335c: SWAP6 0000335d: POP 0000335e: POP 0000335f: POP 00003360: POP 00003361: POP 00003362: POP 00003363: JUMP 00003364: JUMPDEST 00003365: PUSH1 0x60 00003367: DUP3 00003368: SELFBALANCE 00003369: LT 0000336a: ISZERO 0000336b: PUSH2 0x3386 0000336e: JUMPI 0000336f: PUSH1 0x40 00003371: MLOAD 00003372: PUSH3 0x461bcd 00003376: PUSH1 0xe5 00003378: SHL 00003379: DUP2 0000337a: MSTORE 0000337b: PUSH1 0x04 0000337d: ADD 0000337e: PUSH2 0x0310 00003381: SWAP1 00003382: PUSH2 0x583e 00003385: JUMP 00003386: JUMPDEST 00003387: PUSH1 0x01 00003389: PUSH1 0x01 0000338b: PUSH1 0xa0 0000338d: SHL 0000338e: SUB 0000338f: DUP6 00003390: AND 00003391: EXTCODESIZE 00003392: PUSH2 0x33ad 00003395: JUMPI 00003396: PUSH1 0x40 00003398: MLOAD 00003399: PUSH3 0x461bcd 0000339d: PUSH1 0xe5 0000339f: SHL 000033a0: DUP2 000033a1: MSTORE 000033a2: PUSH1 0x04 000033a4: ADD 000033a5: PUSH2 0x0310 000033a8: SWAP1 000033a9: PUSH2 0x5882 000033ac: JUMP 000033ad: JUMPDEST 000033ae: PUSH1 0x00 000033b0: DUP1 000033b1: DUP7 000033b2: PUSH1 0x01 000033b4: PUSH1 0x01 000033b6: PUSH1 0xa0 000033b8: SHL 000033b9: SUB 000033ba: AND 000033bb: DUP6 000033bc: DUP8 000033bd: PUSH1 0x40 000033bf: MLOAD 000033c0: PUSH2 0x33c9 000033c3: SWAP2 000033c4: SWAP1 000033c5: PUSH2 0x4b54 000033c8: JUMP 000033c9: JUMPDEST 000033ca: PUSH1 0x00 000033cc: PUSH1 0x40 000033ce: MLOAD 000033cf: DUP1 000033d0: DUP4 000033d1: SUB 000033d2: DUP2 000033d3: DUP6 000033d4: DUP8 000033d5: GAS 000033d6: CALL 000033d7: SWAP3 000033d8: POP 000033d9: POP 000033da: POP 000033db: RETURNDATASIZE 000033dc: DUP1 000033dd: PUSH1 0x00 000033df: DUP2 000033e0: EQ 000033e1: PUSH2 0x3406 000033e4: JUMPI 000033e5: PUSH1 0x40 000033e7: MLOAD 000033e8: SWAP2 000033e9: POP 000033ea: PUSH1 0x1f 000033ec: NOT 000033ed: PUSH1 0x3f 000033ef: RETURNDATASIZE 000033f0: ADD 000033f1: AND 000033f2: DUP3 000033f3: ADD 000033f4: PUSH1 0x40 000033f6: MSTORE 000033f7: RETURNDATASIZE 000033f8: DUP3 000033f9: MSTORE 000033fa: RETURNDATASIZE 000033fb: PUSH1 0x00 000033fd: PUSH1 0x20 000033ff: DUP5 00003400: ADD 00003401: RETURNDATACOPY 00003402: PUSH2 0x340b 00003405: JUMP 00003406: JUMPDEST 00003407: PUSH1 0x60 00003409: SWAP2 0000340a: POP 0000340b: JUMPDEST 0000340c: POP 0000340d: SWAP2 0000340e: POP 0000340f: SWAP2 00003410: POP 00003411: PUSH2 0x341b 00003414: DUP3 00003415: DUP3 00003416: DUP7 00003417: PUSH2 0x346f 0000341a: JUMP 0000341b: JUMPDEST 0000341c: SWAP8 0000341d: SWAP7 0000341e: POP 0000341f: POP 00003420: POP 00003421: POP 00003422: POP 00003423: POP 00003424: POP 00003425: JUMP 00003426: JUMPDEST 00003427: PUSH1 0x60 00003429: DUP4 0000342a: ISZERO 0000342b: PUSH2 0x3465 0000342e: JUMPI 0000342f: DUP3 00003430: MLOAD 00003431: PUSH1 0x00 00003433: SUB 00003434: PUSH2 0x345e 00003437: JUMPI 00003438: PUSH1 0x01 0000343a: PUSH1 0x01 0000343c: PUSH1 0xa0 0000343e: SHL 0000343f: SUB 00003440: DUP6 00003441: AND 00003442: EXTCODESIZE 00003443: PUSH2 0x345e 00003446: JUMPI 00003447: PUSH1 0x40 00003449: MLOAD 0000344a: PUSH3 0x461bcd 0000344e: PUSH1 0xe5 00003450: SHL 00003451: DUP2 00003452: MSTORE 00003453: PUSH1 0x04 00003455: ADD 00003456: PUSH2 0x0310 00003459: SWAP1 0000345a: PUSH2 0x5882 0000345d: JUMP 0000345e: JUMPDEST 0000345f: POP 00003460: DUP2 00003461: PUSH2 0x32e4 00003464: JUMP 00003465: JUMPDEST 00003466: PUSH2 0x32e4 00003469: DUP4 0000346a: DUP4 0000346b: PUSH2 0x34a8 0000346e: JUMP 0000346f: JUMPDEST 00003470: PUSH1 0x60 00003472: DUP4 00003473: ISZERO 00003474: PUSH2 0x347e 00003477: JUMPI 00003478: POP 00003479: DUP2 0000347a: PUSH2 0x32ce 0000347d: JUMP 0000347e: JUMPDEST 0000347f: DUP3 00003480: MLOAD 00003481: ISZERO 00003482: PUSH2 0x348e 00003485: JUMPI 00003486: DUP3 00003487: MLOAD 00003488: DUP1 00003489: DUP5 0000348a: PUSH1 0x20 0000348c: ADD 0000348d: REVERT 0000348e: JUMPDEST 0000348f: DUP2 00003490: PUSH1 0x40 00003492: MLOAD 00003493: PUSH3 0x461bcd 00003497: PUSH1 0xe5 00003499: SHL 0000349a: DUP2 0000349b: MSTORE 0000349c: PUSH1 0x04 0000349e: ADD 0000349f: PUSH2 0x0310 000034a2: SWAP2 000034a3: SWAP1 000034a4: PUSH2 0x392c 000034a7: JUMP 000034a8: JUMPDEST 000034a9: DUP2 000034aa: MLOAD 000034ab: ISZERO 000034ac: PUSH2 0x34b8 000034af: JUMPI 000034b0: DUP2 000034b1: MLOAD 000034b2: DUP1 000034b3: DUP4 000034b4: PUSH1 0x20 000034b6: ADD 000034b7: REVERT 000034b8: JUMPDEST 000034b9: DUP1 000034ba: PUSH1 0x40 000034bc: MLOAD 000034bd: PUSH3 0x461bcd 000034c1: PUSH1 0xe5 000034c3: SHL 000034c4: DUP2 000034c5: MSTORE 000034c6: PUSH1 0x04 000034c8: ADD 000034c9: PUSH2 0x0310 000034cc: SWAP2 000034cd: SWAP1 000034ce: PUSH2 0x392c 000034d1: JUMP 000034d2: JUMPDEST 000034d3: POP 000034d4: DUP1 000034d5: SLOAD 000034d6: PUSH2 0x34de 000034d9: SWAP1 000034da: PUSH2 0x4803 000034dd: JUMP 000034de: JUMPDEST 000034df: PUSH1 0x00 000034e1: DUP3 000034e2: SSTORE 000034e3: DUP1 000034e4: PUSH1 0x1f 000034e6: LT 000034e7: PUSH2 0x34ee 000034ea: JUMPI 000034eb: POP 000034ec: POP 000034ed: JUMP 000034ee: JUMPDEST 000034ef: PUSH1 0x1f 000034f1: ADD 000034f2: PUSH1 0x20 000034f4: SWAP1 000034f5: DIV 000034f6: SWAP1 000034f7: PUSH1 0x00 000034f9: MSTORE 000034fa: PUSH1 0x20 000034fc: PUSH1 0x00 000034fe: KECCAK256 000034ff: SWAP1 00003500: DUP2 00003501: ADD 00003502: SWAP1 00003503: PUSH2 0x0c9d 00003506: SWAP2 00003507: SWAP1 00003508: PUSH2 0x35b3 0000350b: JUMP 0000350c: JUMPDEST 0000350d: PUSH1 0x40 0000350f: MLOAD 00003510: DUP1 00003511: PUSH1 0xc0 00003513: ADD 00003514: PUSH1 0x40 00003516: MSTORE 00003517: DUP1 00003518: PUSH1 0x00 0000351a: DUP2 0000351b: MSTORE 0000351c: PUSH1 0x20 0000351e: ADD 0000351f: PUSH1 0x00 00003521: DUP2 00003522: MSTORE 00003523: PUSH1 0x20 00003525: ADD 00003526: PUSH2 0x354b 00003529: PUSH1 0x40 0000352b: MLOAD 0000352c: DUP1 0000352d: PUSH1 0x40 0000352f: ADD 00003530: PUSH1 0x40 00003532: MSTORE 00003533: DUP1 00003534: PUSH1 0x00 00003536: DUP2 00003537: MSTORE 00003538: PUSH1 0x20 0000353a: ADD 0000353b: PUSH1 0x00 0000353d: PUSH1 0x01 0000353f: PUSH1 0x01 00003541: PUSH1 0xa0 00003543: SHL 00003544: SUB 00003545: AND 00003546: DUP2 00003547: MSTORE 00003548: POP 00003549: SWAP1 0000354a: JUMP 0000354b: JUMPDEST 0000354c: DUP2 0000354d: MSTORE 0000354e: PUSH1 0x20 00003550: ADD 00003551: PUSH2 0x356d 00003554: PUSH1 0x40 00003556: MLOAD 00003557: DUP1 00003558: PUSH1 0x40 0000355a: ADD 0000355b: PUSH1 0x40 0000355d: MSTORE 0000355e: DUP1 0000355f: PUSH1 0x00 00003561: DUP2 00003562: MSTORE 00003563: PUSH1 0x20 00003565: ADD 00003566: PUSH1 0x60 00003568: DUP2 00003569: MSTORE 0000356a: POP 0000356b: SWAP1 0000356c: JUMP 0000356d: JUMPDEST 0000356e: DUP2 0000356f: MSTORE 00003570: PUSH1 0x20 00003572: ADD 00003573: PUSH2 0x35a6 00003576: PUSH1 0x40 00003578: MLOAD 00003579: DUP1 0000357a: PUSH1 0x80 0000357c: ADD 0000357d: PUSH1 0x40 0000357f: MSTORE 00003580: DUP1 00003581: PUSH1 0x00 00003583: PUSH1 0x01 00003585: PUSH1 0x01 00003587: PUSH1 0xa0 00003589: SHL 0000358a: SUB 0000358b: AND 0000358c: DUP2 0000358d: MSTORE 0000358e: PUSH1 0x20 00003590: ADD 00003591: PUSH1 0x60 00003593: DUP2 00003594: MSTORE 00003595: PUSH1 0x20 00003597: ADD 00003598: PUSH1 0x00 0000359a: DUP2 0000359b: MSTORE 0000359c: PUSH1 0x20 0000359e: ADD 0000359f: PUSH1 0x60 000035a1: DUP2 000035a2: MSTORE 000035a3: POP 000035a4: SWAP1 000035a5: JUMP 000035a6: JUMPDEST 000035a7: DUP2 000035a8: MSTORE 000035a9: PUSH1 0x20 000035ab: ADD 000035ac: PUSH1 0x00 000035ae: DUP2 000035af: MSTORE 000035b0: POP 000035b1: SWAP1 000035b2: JUMP 000035b3: JUMPDEST 000035b4: JUMPDEST 000035b5: DUP1 000035b6: DUP3 000035b7: GT 000035b8: ISZERO 000035b9: PUSH2 0x35c8 000035bc: JUMPI 000035bd: PUSH1 0x00 000035bf: DUP2 000035c0: SSTORE 000035c1: PUSH1 0x01 000035c3: ADD 000035c4: PUSH2 0x35b4 000035c7: JUMP 000035c8: JUMPDEST 000035c9: POP 000035ca: SWAP1 000035cb: JUMP 000035cc: JUMPDEST 000035cd: PUSH1 0x24 000035cf: DUP2 000035d0: MSTORE 000035d1: PUSH1 0x00 000035d3: PUSH1 0x20 000035d5: DUP3 000035d6: ADD 000035d7: PUSH32 0x546f6b656e536572766963653a2053656e64657249734e6f7457686974656c69 000035f8: DUP2 000035f9: MSTORE 000035fa: PUSH4 0x1cdd1959 000035ff: PUSH1 0xe2 00003601: SHL 00003602: PUSH1 0x20 00003604: DUP3 00003605: ADD 00003606: MSTORE 00003607: SWAP2 00003608: POP 00003609: JUMPDEST 0000360a: POP 0000360b: PUSH1 0x40 0000360d: ADD 0000360e: SWAP1 0000360f: JUMP 00003610: JUMPDEST 00003611: PUSH1 0x20 00003613: DUP1 00003614: DUP3 00003615: MSTORE 00003616: DUP2 00003617: ADD 00003618: PUSH2 0x2128 0000361b: DUP2 0000361c: PUSH2 0x35cc 0000361f: JUMP 00003620: JUMPDEST 00003621: PUSH1 0x00 00003623: DUP1 00003624: DUP4 00003625: PUSH1 0x1f 00003627: DUP5 00003628: ADD 00003629: SLT 0000362a: PUSH2 0x3635 0000362d: JUMPI 0000362e: PUSH2 0x3635 00003631: PUSH1 0x00 00003633: DUP1 00003634: REVERT 00003635: JUMPDEST 00003636: POP 00003637: DUP2 00003638: CALLDATALOAD 00003639: PUSH1 0x01 0000363b: PUSH1 0x01 0000363d: PUSH1 0x40 0000363f: SHL 00003640: SUB 00003641: DUP2 00003642: GT 00003643: ISZERO 00003644: PUSH2 0x364f 00003647: JUMPI 00003648: PUSH2 0x364f 0000364b: PUSH1 0x00 0000364d: DUP1 0000364e: REVERT 0000364f: JUMPDEST 00003650: PUSH1 0x20 00003652: DUP4 00003653: ADD 00003654: SWAP2 00003655: POP 00003656: DUP4 00003657: PUSH1 0x01 00003659: DUP3 0000365a: MUL 0000365b: DUP4 0000365c: ADD 0000365d: GT 0000365e: ISZERO 0000365f: PUSH2 0x366a 00003662: JUMPI 00003663: PUSH2 0x366a 00003666: PUSH1 0x00 00003668: DUP1 00003669: REVERT 0000366a: JUMPDEST 0000366b: SWAP3 0000366c: POP 0000366d: SWAP3 0000366e: SWAP1 0000366f: POP 00003670: JUMP 00003671: JUMPDEST 00003672: PUSH1 0x00 00003674: PUSH1 0x80 00003676: DUP3 00003677: DUP5 00003678: SUB 00003679: SLT 0000367a: ISZERO 0000367b: PUSH2 0x3686 0000367e: JUMPI 0000367f: PUSH2 0x3686 00003682: PUSH1 0x00 00003684: DUP1 00003685: REVERT 00003686: JUMPDEST 00003687: POP 00003688: SWAP2 00003689: SWAP1 0000368a: POP 0000368b: JUMP 0000368c: JUMPDEST 0000368d: DUP1 0000368e: ISZERO 0000368f: ISZERO 00003690: JUMPDEST 00003691: DUP2 00003692: EQ 00003693: PUSH2 0x0c9d 00003696: JUMPI 00003697: PUSH1 0x00 00003699: DUP1 0000369a: REVERT 0000369b: JUMPDEST 0000369c: DUP1 0000369d: CALLDATALOAD 0000369e: PUSH2 0x2128 000036a1: DUP2 000036a2: PUSH2 0x368c 000036a5: JUMP 000036a6: JUMPDEST 000036a7: PUSH1 0x00 000036a9: DUP1 000036aa: PUSH1 0x00 000036ac: DUP1 000036ad: PUSH1 0x00 000036af: DUP1 000036b0: PUSH1 0x80 000036b2: DUP8 000036b3: DUP10 000036b4: SUB 000036b5: SLT 000036b6: ISZERO 000036b7: PUSH2 0x36c2 000036ba: JUMPI 000036bb: PUSH2 0x36c2 000036be: PUSH1 0x00 000036c0: DUP1 000036c1: REVERT 000036c2: JUMPDEST 000036c3: DUP7 000036c4: CALLDATALOAD 000036c5: PUSH1 0x01 000036c7: PUSH1 0x01 000036c9: PUSH1 0x40 000036cb: SHL 000036cc: SUB 000036cd: DUP2 000036ce: GT 000036cf: ISZERO 000036d0: PUSH2 0x36db 000036d3: JUMPI 000036d4: PUSH2 0x36db 000036d7: PUSH1 0x00 000036d9: DUP1 000036da: REVERT 000036db: JUMPDEST 000036dc: PUSH2 0x36e7 000036df: DUP10 000036e0: DUP3 000036e1: DUP11 000036e2: ADD 000036e3: PUSH2 0x3620 000036e6: JUMP 000036e7: JUMPDEST 000036e8: SWAP7 000036e9: POP 000036ea: SWAP7 000036eb: POP 000036ec: POP 000036ed: PUSH1 0x20 000036ef: DUP8 000036f0: ADD 000036f1: CALLDATALOAD 000036f2: PUSH1 0x01 000036f4: PUSH1 0x01 000036f6: PUSH1 0x40 000036f8: SHL 000036f9: SUB 000036fa: DUP2 000036fb: GT 000036fc: ISZERO 000036fd: PUSH2 0x3708 00003700: JUMPI 00003701: PUSH2 0x3708 00003704: PUSH1 0x00 00003706: DUP1 00003707: REVERT 00003708: JUMPDEST 00003709: PUSH2 0x3714 0000370c: DUP10 0000370d: DUP3 0000370e: DUP11 0000370f: ADD 00003710: PUSH2 0x3671 00003713: JUMP 00003714: JUMPDEST 00003715: SWAP5 00003716: POP 00003717: POP 00003718: PUSH1 0x40 0000371a: PUSH2 0x3725 0000371d: DUP10 0000371e: DUP3 0000371f: DUP11 00003720: ADD 00003721: PUSH2 0x369b 00003724: JUMP 00003725: JUMPDEST 00003726: SWAP4 00003727: POP 00003728: POP 00003729: PUSH1 0x60 0000372b: DUP8 0000372c: ADD 0000372d: CALLDATALOAD 0000372e: PUSH1 0x01 00003730: PUSH1 0x01 00003732: PUSH1 0x40 00003734: SHL 00003735: SUB 00003736: DUP2 00003737: GT 00003738: ISZERO 00003739: PUSH2 0x3744 0000373c: JUMPI 0000373d: PUSH2 0x3744 00003740: PUSH1 0x00 00003742: DUP1 00003743: REVERT 00003744: JUMPDEST 00003745: PUSH2 0x3750 00003748: DUP10 00003749: DUP3 0000374a: DUP11 0000374b: ADD 0000374c: PUSH2 0x3620 0000374f: JUMP 00003750: JUMPDEST 00003751: SWAP3 00003752: POP 00003753: SWAP3 00003754: POP 00003755: POP 00003756: SWAP3 00003757: SWAP6 00003758: POP 00003759: SWAP3 0000375a: SWAP6 0000375b: POP 0000375c: SWAP3 0000375d: SWAP6 0000375e: JUMP 0000375f: JUMPDEST 00003760: PUSH1 0x00 00003762: PUSH1 0x01 00003764: PUSH1 0x01 00003766: PUSH1 0xa0 00003768: SHL 00003769: SUB 0000376a: DUP3 0000376b: AND 0000376c: PUSH2 0x2128 0000376f: JUMP 00003770: JUMPDEST 00003771: PUSH2 0x3690 00003774: DUP2 00003775: PUSH2 0x375f 00003778: JUMP 00003779: JUMPDEST 0000377a: DUP1 0000377b: CALLDATALOAD 0000377c: PUSH2 0x2128 0000377f: DUP2 00003780: PUSH2 0x3770 00003783: JUMP 00003784: JUMPDEST 00003785: PUSH1 0x00 00003787: DUP1 00003788: PUSH1 0x40 0000378a: DUP4 0000378b: DUP6 0000378c: SUB 0000378d: SLT 0000378e: ISZERO 0000378f: PUSH2 0x379a 00003792: JUMPI 00003793: PUSH2 0x379a 00003796: PUSH1 0x00 00003798: DUP1 00003799: REVERT 0000379a: JUMPDEST 0000379b: PUSH1 0x00 0000379d: PUSH2 0x37a6 000037a0: DUP6 000037a1: DUP6 000037a2: PUSH2 0x3779 000037a5: JUMP 000037a6: JUMPDEST 000037a7: SWAP3 000037a8: POP 000037a9: POP 000037aa: PUSH1 0x20 000037ac: PUSH2 0x37b7 000037af: DUP6 000037b0: DUP3 000037b1: DUP7 000037b2: ADD 000037b3: PUSH2 0x3779 000037b6: JUMP 000037b7: JUMPDEST 000037b8: SWAP2 000037b9: POP 000037ba: POP 000037bb: SWAP3 000037bc: POP 000037bd: SWAP3 000037be: SWAP1 000037bf: POP 000037c0: JUMP 000037c1: JUMPDEST 000037c2: PUSH1 0x00 000037c4: PUSH1 0x20 000037c6: DUP3 000037c7: DUP5 000037c8: SUB 000037c9: SLT 000037ca: ISZERO 000037cb: PUSH2 0x37d6 000037ce: JUMPI 000037cf: PUSH2 0x37d6 000037d2: PUSH1 0x00 000037d4: DUP1 000037d5: REVERT 000037d6: JUMPDEST 000037d7: PUSH1 0x00 000037d9: PUSH2 0x2124 000037dc: DUP5 000037dd: DUP5 000037de: PUSH2 0x3779 000037e1: JUMP 000037e2: JUMPDEST 000037e3: DUP1 000037e4: ISZERO 000037e5: ISZERO 000037e6: JUMPDEST 000037e7: DUP3 000037e8: MSTORE 000037e9: POP 000037ea: POP 000037eb: JUMP 000037ec: JUMPDEST 000037ed: PUSH1 0x20 000037ef: DUP2 000037f0: ADD 000037f1: PUSH2 0x2128 000037f4: DUP3 000037f5: DUP5 000037f6: PUSH2 0x37e2 000037f9: JUMP 000037fa: JUMPDEST 000037fb: DUP1 000037fc: PUSH2 0x37e6 000037ff: JUMP 00003800: JUMPDEST 00003801: PUSH1 0x20 00003803: DUP2 00003804: ADD 00003805: PUSH2 0x2128 00003808: DUP3 00003809: DUP5 0000380a: PUSH2 0x37fa 0000380d: JUMP 0000380e: JUMPDEST 0000380f: DUP1 00003810: PUSH2 0x3690 00003813: JUMP 00003814: JUMPDEST 00003815: DUP1 00003816: CALLDATALOAD 00003817: PUSH2 0x2128 0000381a: DUP2 0000381b: PUSH2 0x380e 0000381e: JUMP 0000381f: JUMPDEST 00003820: PUSH1 0x00 00003822: DUP1 00003823: PUSH1 0x00 00003825: DUP1 00003826: PUSH1 0x00 00003828: DUP1 00003829: PUSH1 0x00 0000382b: PUSH1 0xa0 0000382d: DUP9 0000382e: DUP11 0000382f: SUB 00003830: SLT 00003831: ISZERO 00003832: PUSH2 0x383d 00003835: JUMPI 00003836: PUSH2 0x383d 00003839: PUSH1 0x00 0000383b: DUP1 0000383c: REVERT 0000383d: JUMPDEST 0000383e: PUSH1 0x00 00003840: PUSH2 0x3849 00003843: DUP11 00003844: DUP11 00003845: PUSH2 0x3779 00003848: JUMP 00003849: JUMPDEST 0000384a: SWAP8 0000384b: POP 0000384c: POP 0000384d: PUSH1 0x20 0000384f: PUSH2 0x385a 00003852: DUP11 00003853: DUP3 00003854: DUP12 00003855: ADD 00003856: PUSH2 0x3814 00003859: JUMP 0000385a: JUMPDEST 0000385b: SWAP7 0000385c: POP 0000385d: POP 0000385e: PUSH1 0x40 00003860: DUP9 00003861: ADD 00003862: CALLDATALOAD 00003863: PUSH1 0x01 00003865: PUSH1 0x01 00003867: PUSH1 0x40 00003869: SHL 0000386a: SUB 0000386b: DUP2 0000386c: GT 0000386d: ISZERO 0000386e: PUSH2 0x3879 00003871: JUMPI 00003872: PUSH2 0x3879 00003875: PUSH1 0x00 00003877: DUP1 00003878: REVERT 00003879: JUMPDEST 0000387a: PUSH2 0x3885 0000387d: DUP11 0000387e: DUP3 0000387f: DUP12 00003880: ADD 00003881: PUSH2 0x3620 00003884: JUMP 00003885: JUMPDEST 00003886: SWAP6 00003887: POP 00003888: SWAP6 00003889: POP 0000388a: POP 0000388b: PUSH1 0x60 0000388d: PUSH2 0x3898 00003890: DUP11 00003891: DUP3 00003892: DUP12 00003893: ADD 00003894: PUSH2 0x369b 00003897: JUMP 00003898: JUMPDEST 00003899: SWAP4 0000389a: POP 0000389b: POP 0000389c: PUSH1 0x80 0000389e: DUP9 0000389f: ADD 000038a0: CALLDATALOAD 000038a1: PUSH1 0x01 000038a3: PUSH1 0x01 000038a5: PUSH1 0x40 000038a7: SHL 000038a8: SUB 000038a9: DUP2 000038aa: GT 000038ab: ISZERO 000038ac: PUSH2 0x38b7 000038af: JUMPI 000038b0: PUSH2 0x38b7 000038b3: PUSH1 0x00 000038b5: DUP1 000038b6: REVERT 000038b7: JUMPDEST 000038b8: PUSH2 0x38c3 000038bb: DUP11 000038bc: DUP3 000038bd: DUP12 000038be: ADD 000038bf: PUSH2 0x3620 000038c2: JUMP 000038c3: JUMPDEST 000038c4: SWAP3 000038c5: POP 000038c6: SWAP3 000038c7: POP 000038c8: POP 000038c9: SWAP3 000038ca: SWAP6 000038cb: SWAP9 000038cc: SWAP2 000038cd: SWAP5 000038ce: SWAP8 000038cf: POP 000038d0: SWAP3 000038d1: SWAP6 000038d2: POP 000038d3: JUMP 000038d4: JUMPDEST 000038d5: PUSH1 0x00 000038d7: JUMPDEST 000038d8: DUP4 000038d9: DUP2 000038da: LT 000038db: ISZERO 000038dc: PUSH2 0x38ef 000038df: JUMPI 000038e0: DUP2 000038e1: DUP2 000038e2: ADD 000038e3: MLOAD 000038e4: DUP4 000038e5: DUP3 000038e6: ADD 000038e7: MSTORE 000038e8: PUSH1 0x20 000038ea: ADD 000038eb: PUSH2 0x38d7 000038ee: JUMP 000038ef: JUMPDEST 000038f0: POP 000038f1: POP 000038f2: PUSH1 0x00 000038f4: SWAP2 000038f5: ADD 000038f6: MSTORE 000038f7: JUMP 000038f8: JUMPDEST 000038f9: PUSH1 0x00 000038fb: PUSH2 0x3902 000038fe: DUP3 000038ff: MLOAD 00003900: SWAP1 00003901: JUMP 00003902: JUMPDEST 00003903: DUP1 00003904: DUP5 00003905: MSTORE 00003906: PUSH1 0x20 00003908: DUP5 00003909: ADD 0000390a: SWAP4 0000390b: POP 0000390c: PUSH2 0x3919 0000390f: DUP2 00003910: DUP6 00003911: PUSH1 0x20 00003913: DUP7 00003914: ADD 00003915: PUSH2 0x38d4 00003918: JUMP 00003919: JUMPDEST 0000391a: PUSH1 0x1f 0000391c: NOT 0000391d: PUSH1 0x1f 0000391f: DUP3 00003920: ADD 00003921: AND 00003922: JUMPDEST 00003923: SWAP1 00003924: SWAP4 00003925: ADD 00003926: SWAP4 00003927: SWAP3 00003928: POP 00003929: POP 0000392a: POP 0000392b: JUMP 0000392c: JUMPDEST 0000392d: PUSH1 0x20 0000392f: DUP1 00003930: DUP3 00003931: MSTORE 00003932: DUP2 00003933: ADD 00003934: PUSH2 0x32ce 00003937: DUP2 00003938: DUP5 00003939: PUSH2 0x38f8 0000393c: JUMP 0000393d: JUMPDEST 0000393e: PUSH1 0x00 00003940: DUP1 00003941: PUSH1 0x40 00003943: DUP4 00003944: DUP6 00003945: SUB 00003946: SLT 00003947: ISZERO 00003948: PUSH2 0x3953 0000394b: JUMPI 0000394c: PUSH2 0x3953 0000394f: PUSH1 0x00 00003951: DUP1 00003952: REVERT 00003953: JUMPDEST 00003954: PUSH1 0x00 00003956: PUSH2 0x395f 00003959: DUP6 0000395a: DUP6 0000395b: PUSH2 0x3779 0000395e: JUMP 0000395f: JUMPDEST 00003960: SWAP3 00003961: POP 00003962: POP 00003963: PUSH1 0x20 00003965: PUSH2 0x37b7 00003968: DUP6 00003969: DUP3 0000396a: DUP7 0000396b: ADD 0000396c: PUSH2 0x3814 0000396f: JUMP 00003970: JUMPDEST 00003971: PUSH1 0x00 00003973: PUSH2 0x2128 00003976: DUP3 00003977: PUSH2 0x375f 0000397a: JUMP 0000397b: JUMPDEST 0000397c: PUSH2 0x3690 0000397f: DUP2 00003980: PUSH2 0x3970 00003983: JUMP 00003984: JUMPDEST 00003985: DUP1 00003986: CALLDATALOAD 00003987: PUSH2 0x2128 0000398a: DUP2 0000398b: PUSH2 0x397b 0000398e: JUMP 0000398f: JUMPDEST 00003990: PUSH1 0x00 00003992: PUSH1 0x20 00003994: DUP3 00003995: DUP5 00003996: SUB 00003997: SLT 00003998: ISZERO 00003999: PUSH2 0x39a4 0000399c: JUMPI 0000399d: PUSH2 0x39a4 000039a0: PUSH1 0x00 000039a2: DUP1 000039a3: REVERT 000039a4: JUMPDEST 000039a5: PUSH1 0x00 000039a7: PUSH2 0x2124 000039aa: DUP5 000039ab: DUP5 000039ac: PUSH2 0x3984 000039af: JUMP 000039b0: JUMPDEST 000039b1: PUSH4 0x4e487b71 000039b6: PUSH1 0xe0 000039b8: SHL 000039b9: PUSH1 0x00 000039bb: MSTORE 000039bc: PUSH1 0x41 000039be: PUSH1 0x04 000039c0: MSTORE 000039c1: PUSH1 0x24 000039c3: PUSH1 0x00 000039c5: REVERT 000039c6: JUMPDEST 000039c7: PUSH1 0x1f 000039c9: NOT 000039ca: PUSH1 0x1f 000039cc: DUP4 000039cd: ADD 000039ce: AND 000039cf: DUP2 000039d0: ADD 000039d1: DUP2 000039d2: DUP2 000039d3: LT 000039d4: PUSH1 0x01 000039d6: PUSH1 0x01 000039d8: PUSH1 0x40 000039da: SHL 000039db: SUB 000039dc: DUP3 000039dd: GT 000039de: OR 000039df: ISZERO 000039e0: PUSH2 0x39eb 000039e3: JUMPI 000039e4: PUSH2 0x39eb 000039e7: PUSH2 0x39b0 000039ea: JUMP 000039eb: JUMPDEST 000039ec: PUSH1 0x40 000039ee: MSTORE 000039ef: POP 000039f0: POP 000039f1: JUMP 000039f2: JUMPDEST 000039f3: PUSH1 0x00 000039f5: PUSH2 0x39fd 000039f8: PUSH1 0x40 000039fa: MLOAD 000039fb: SWAP1 000039fc: JUMP 000039fd: JUMPDEST 000039fe: SWAP1 000039ff: POP 00003a00: PUSH2 0x3a09 00003a03: DUP3 00003a04: DUP3 00003a05: PUSH2 0x39c6 00003a08: JUMP 00003a09: JUMPDEST 00003a0a: SWAP2 00003a0b: SWAP1 00003a0c: POP 00003a0d: JUMP 00003a0e: JUMPDEST 00003a0f: PUSH1 0x00 00003a11: PUSH1 0x01 00003a13: PUSH1 0x01 00003a15: PUSH1 0x40 00003a17: SHL 00003a18: SUB 00003a19: DUP3 00003a1a: GT 00003a1b: ISZERO 00003a1c: PUSH2 0x3a27 00003a1f: JUMPI 00003a20: PUSH2 0x3a27 00003a23: PUSH2 0x39b0 00003a26: JUMP 00003a27: JUMPDEST 00003a28: PUSH1 0x1f 00003a2a: NOT 00003a2b: PUSH1 0x1f 00003a2d: DUP4 00003a2e: ADD 00003a2f: AND 00003a30: PUSH1 0x20 00003a32: ADD 00003a33: SWAP3 00003a34: SWAP2 00003a35: POP 00003a36: POP 00003a37: JUMP 00003a38: JUMPDEST 00003a39: DUP3 00003a3a: DUP2 00003a3b: DUP4 00003a3c: CALLDATACOPY 00003a3d: POP 00003a3e: PUSH1 0x00 00003a40: SWAP2 00003a41: ADD 00003a42: MSTORE 00003a43: JUMP 00003a44: JUMPDEST 00003a45: PUSH1 0x00 00003a47: PUSH2 0x3a57 00003a4a: PUSH2 0x3a52 00003a4d: DUP5 00003a4e: PUSH2 0x3a0e 00003a51: JUMP 00003a52: JUMPDEST 00003a53: PUSH2 0x39f2 00003a56: JUMP 00003a57: JUMPDEST 00003a58: SWAP1 00003a59: POP 00003a5a: DUP3 00003a5b: DUP2 00003a5c: MSTORE 00003a5d: PUSH1 0x20 00003a5f: DUP2 00003a60: ADD 00003a61: DUP5 00003a62: DUP5 00003a63: DUP5 00003a64: ADD 00003a65: GT 00003a66: ISZERO 00003a67: PUSH2 0x3a72 00003a6a: JUMPI 00003a6b: PUSH2 0x3a72 00003a6e: PUSH1 0x00 00003a70: DUP1 00003a71: REVERT 00003a72: JUMPDEST 00003a73: PUSH2 0x3a7d 00003a76: DUP5 00003a77: DUP3 00003a78: DUP6 00003a79: PUSH2 0x3a38 00003a7c: JUMP 00003a7d: JUMPDEST 00003a7e: POP 00003a7f: SWAP4 00003a80: SWAP3 00003a81: POP 00003a82: POP 00003a83: POP 00003a84: JUMP 00003a85: JUMPDEST 00003a86: PUSH1 0x00 00003a88: DUP3 00003a89: PUSH1 0x1f 00003a8b: DUP4 00003a8c: ADD 00003a8d: SLT 00003a8e: PUSH2 0x3a99 00003a91: JUMPI 00003a92: PUSH2 0x3a99 00003a95: PUSH1 0x00 00003a97: DUP1 00003a98: REVERT 00003a99: JUMPDEST 00003a9a: DUP2 00003a9b: CALLDATALOAD 00003a9c: PUSH2 0x2124 00003a9f: DUP5 00003aa0: DUP3 00003aa1: PUSH1 0x20 00003aa3: DUP7 00003aa4: ADD 00003aa5: PUSH2 0x3a44 00003aa8: JUMP 00003aa9: JUMPDEST 00003aaa: PUSH1 0x00 00003aac: DUP1 00003aad: PUSH1 0x40 00003aaf: DUP4 00003ab0: DUP6 00003ab1: SUB 00003ab2: SLT 00003ab3: ISZERO 00003ab4: PUSH2 0x3abf 00003ab7: JUMPI 00003ab8: PUSH2 0x3abf 00003abb: PUSH1 0x00 00003abd: DUP1 00003abe: REVERT 00003abf: JUMPDEST 00003ac0: PUSH1 0x00 00003ac2: PUSH2 0x3acb 00003ac5: DUP6 00003ac6: DUP6 00003ac7: PUSH2 0x3779 00003aca: JUMP 00003acb: JUMPDEST 00003acc: SWAP3 00003acd: POP 00003ace: POP 00003acf: PUSH1 0x20 00003ad1: DUP4 00003ad2: ADD 00003ad3: CALLDATALOAD 00003ad4: PUSH1 0x01 00003ad6: PUSH1 0x01 00003ad8: PUSH1 0x40 00003ada: SHL 00003adb: SUB 00003adc: DUP2 00003add: GT 00003ade: ISZERO 00003adf: PUSH2 0x3aea 00003ae2: JUMPI 00003ae3: PUSH2 0x3aea 00003ae6: PUSH1 0x00 00003ae8: DUP1 00003ae9: REVERT 00003aea: JUMPDEST 00003aeb: PUSH2 0x37b7 00003aee: DUP6 00003aef: DUP3 00003af0: DUP7 00003af1: ADD 00003af2: PUSH2 0x3a85 00003af5: JUMP 00003af6: JUMPDEST 00003af7: PUSH1 0x00 00003af9: DUP1 00003afa: PUSH1 0x00 00003afc: DUP1 00003afd: PUSH1 0x60 00003aff: DUP6 00003b00: DUP8 00003b01: SUB 00003b02: SLT 00003b03: ISZERO 00003b04: PUSH2 0x3b0f 00003b07: JUMPI 00003b08: PUSH2 0x3b0f 00003b0b: PUSH1 0x00 00003b0d: DUP1 00003b0e: REVERT 00003b0f: JUMPDEST 00003b10: DUP5 00003b11: CALLDATALOAD 00003b12: PUSH1 0x01 00003b14: PUSH1 0x01 00003b16: PUSH1 0x40 00003b18: SHL 00003b19: SUB 00003b1a: DUP2 00003b1b: GT 00003b1c: ISZERO 00003b1d: PUSH2 0x3b28 00003b20: JUMPI 00003b21: PUSH2 0x3b28 00003b24: PUSH1 0x00 00003b26: DUP1 00003b27: REVERT 00003b28: JUMPDEST 00003b29: PUSH2 0x3b34 00003b2c: DUP8 00003b2d: DUP3 00003b2e: DUP9 00003b2f: ADD 00003b30: PUSH2 0x3a85 00003b33: JUMP 00003b34: JUMPDEST 00003b35: SWAP5 00003b36: POP 00003b37: POP 00003b38: PUSH1 0x20 00003b3a: PUSH2 0x3b45 00003b3d: DUP8 00003b3e: DUP3 00003b3f: DUP9 00003b40: ADD 00003b41: PUSH2 0x369b 00003b44: JUMP 00003b45: JUMPDEST 00003b46: SWAP4 00003b47: POP 00003b48: POP 00003b49: PUSH1 0x40 00003b4b: DUP6 00003b4c: ADD 00003b4d: CALLDATALOAD 00003b4e: PUSH1 0x01 00003b50: PUSH1 0x01 00003b52: PUSH1 0x40 00003b54: SHL 00003b55: SUB 00003b56: DUP2 00003b57: GT 00003b58: ISZERO 00003b59: PUSH2 0x3b64 00003b5c: JUMPI 00003b5d: PUSH2 0x3b64 00003b60: PUSH1 0x00 00003b62: DUP1 00003b63: REVERT 00003b64: JUMPDEST 00003b65: PUSH2 0x3b70 00003b68: DUP8 00003b69: DUP3 00003b6a: DUP9 00003b6b: ADD 00003b6c: PUSH2 0x3620 00003b6f: JUMP 00003b70: JUMPDEST 00003b71: SWAP6 00003b72: SWAP9 00003b73: SWAP5 00003b74: SWAP8 00003b75: POP 00003b76: SWAP6 00003b77: POP 00003b78: POP 00003b79: POP 00003b7a: POP 00003b7b: JUMP 00003b7c: JUMPDEST 00003b7d: PUSH1 0x00 00003b7f: DUP1 00003b80: PUSH1 0x00 00003b82: DUP1 00003b83: PUSH1 0x00 00003b85: DUP1 00003b86: PUSH1 0x00 00003b88: DUP1 00003b89: PUSH1 0xc0 00003b8b: DUP10 00003b8c: DUP12 00003b8d: SUB 00003b8e: SLT 00003b8f: ISZERO 00003b90: PUSH2 0x3b9b 00003b93: JUMPI 00003b94: PUSH2 0x3b9b 00003b97: PUSH1 0x00 00003b99: DUP1 00003b9a: REVERT 00003b9b: JUMPDEST 00003b9c: PUSH1 0x00 00003b9e: PUSH2 0x3ba7 00003ba1: DUP12 00003ba2: DUP12 00003ba3: PUSH2 0x3779 00003ba6: JUMP 00003ba7: JUMPDEST 00003ba8: SWAP9 00003ba9: POP 00003baa: POP 00003bab: PUSH1 0x20 00003bad: PUSH2 0x3bb8 00003bb0: DUP12 00003bb1: DUP3 00003bb2: DUP13 00003bb3: ADD 00003bb4: PUSH2 0x3814 00003bb7: JUMP 00003bb8: JUMPDEST 00003bb9: SWAP8 00003bba: POP 00003bbb: POP 00003bbc: PUSH1 0x40 00003bbe: DUP10 00003bbf: ADD 00003bc0: CALLDATALOAD 00003bc1: PUSH1 0x01 00003bc3: PUSH1 0x01 00003bc5: PUSH1 0x40 00003bc7: SHL 00003bc8: SUB 00003bc9: DUP2 00003bca: GT 00003bcb: ISZERO 00003bcc: PUSH2 0x3bd7 00003bcf: JUMPI 00003bd0: PUSH2 0x3bd7 00003bd3: PUSH1 0x00 00003bd5: DUP1 00003bd6: REVERT 00003bd7: JUMPDEST 00003bd8: PUSH2 0x3be3 00003bdb: DUP12 00003bdc: DUP3 00003bdd: DUP13 00003bde: ADD 00003bdf: PUSH2 0x3620 00003be2: JUMP 00003be3: JUMPDEST 00003be4: SWAP7 00003be5: POP 00003be6: SWAP7 00003be7: POP 00003be8: POP 00003be9: PUSH1 0x60 00003beb: DUP10 00003bec: ADD 00003bed: CALLDATALOAD 00003bee: PUSH1 0x01 00003bf0: PUSH1 0x01 00003bf2: PUSH1 0x40 00003bf4: SHL 00003bf5: SUB 00003bf6: DUP2 00003bf7: GT 00003bf8: ISZERO 00003bf9: PUSH2 0x3c04 00003bfc: JUMPI 00003bfd: PUSH2 0x3c04 00003c00: PUSH1 0x00 00003c02: DUP1 00003c03: REVERT 00003c04: JUMPDEST 00003c05: PUSH2 0x3c10 00003c08: DUP12 00003c09: DUP3 00003c0a: DUP13 00003c0b: ADD 00003c0c: PUSH2 0x3671 00003c0f: JUMP 00003c10: JUMPDEST 00003c11: SWAP5 00003c12: POP 00003c13: POP 00003c14: PUSH1 0x80 00003c16: PUSH2 0x3c21 00003c19: DUP12 00003c1a: DUP3 00003c1b: DUP13 00003c1c: ADD 00003c1d: PUSH2 0x369b 00003c20: JUMP 00003c21: JUMPDEST 00003c22: SWAP4 00003c23: POP 00003c24: POP 00003c25: PUSH1 0xa0 00003c27: DUP10 00003c28: ADD 00003c29: CALLDATALOAD 00003c2a: PUSH1 0x01 00003c2c: PUSH1 0x01 00003c2e: PUSH1 0x40 00003c30: SHL 00003c31: SUB 00003c32: DUP2 00003c33: GT 00003c34: ISZERO 00003c35: PUSH2 0x3c40 00003c38: JUMPI 00003c39: PUSH2 0x3c40 00003c3c: PUSH1 0x00 00003c3e: DUP1 00003c3f: REVERT 00003c40: JUMPDEST 00003c41: PUSH2 0x3c4c 00003c44: DUP12 00003c45: DUP3 00003c46: DUP13 00003c47: ADD 00003c48: PUSH2 0x3620 00003c4b: JUMP 00003c4c: JUMPDEST 00003c4d: SWAP3 00003c4e: POP 00003c4f: SWAP3 00003c50: POP 00003c51: POP 00003c52: SWAP3 00003c53: SWAP6 00003c54: SWAP9 00003c55: POP 00003c56: SWAP3 00003c57: SWAP6 00003c58: SWAP9 00003c59: SWAP1 00003c5a: SWAP4 00003c5b: SWAP7 00003c5c: POP 00003c5d: JUMP 00003c5e: JUMPDEST 00003c5f: PUSH2 0x37e6 00003c62: DUP2 00003c63: PUSH2 0x375f 00003c66: JUMP 00003c67: JUMPDEST 00003c68: PUSH1 0xe0 00003c6a: DUP2 00003c6b: ADD 00003c6c: PUSH2 0x3c75 00003c6f: DUP3 00003c70: DUP11 00003c71: PUSH2 0x3c5e 00003c74: JUMP 00003c75: JUMPDEST 00003c76: PUSH2 0x3c82 00003c79: PUSH1 0x20 00003c7b: DUP4 00003c7c: ADD 00003c7d: DUP10 00003c7e: PUSH2 0x3c5e 00003c81: JUMP 00003c82: JUMPDEST 00003c83: DUP2 00003c84: DUP2 00003c85: SUB 00003c86: PUSH1 0x40 00003c88: DUP4 00003c89: ADD 00003c8a: MSTORE 00003c8b: PUSH2 0x3c94 00003c8e: DUP2 00003c8f: DUP9 00003c90: PUSH2 0x38f8 00003c93: JUMP 00003c94: JUMPDEST 00003c95: SWAP1 00003c96: POP 00003c97: DUP2 00003c98: DUP2 00003c99: SUB 00003c9a: PUSH1 0x60 00003c9c: DUP4 00003c9d: ADD 00003c9e: MSTORE 00003c9f: PUSH2 0x3ca8 00003ca2: DUP2 00003ca3: DUP8 00003ca4: PUSH2 0x38f8 00003ca7: JUMP 00003ca8: JUMPDEST 00003ca9: SWAP1 00003caa: POP 00003cab: PUSH2 0x3cb7 00003cae: PUSH1 0x80 00003cb0: DUP4 00003cb1: ADD 00003cb2: DUP7 00003cb3: PUSH2 0x37fa 00003cb6: JUMP 00003cb7: JUMPDEST 00003cb8: PUSH2 0x3cc4 00003cbb: PUSH1 0xa0 00003cbd: DUP4 00003cbe: ADD 00003cbf: DUP6 00003cc0: PUSH2 0x37fa 00003cc3: JUMP 00003cc4: JUMPDEST 00003cc5: PUSH2 0x3cd1 00003cc8: PUSH1 0xc0 00003cca: DUP4 00003ccb: ADD 00003ccc: DUP5 00003ccd: PUSH2 0x37e2 00003cd0: JUMP 00003cd1: JUMPDEST 00003cd2: SWAP9 00003cd3: SWAP8 00003cd4: POP 00003cd5: POP 00003cd6: POP 00003cd7: POP 00003cd8: POP 00003cd9: POP 00003cda: POP 00003cdb: POP 00003cdc: JUMP 00003cdd: JUMPDEST 00003cde: PUSH1 0x00 00003ce0: DUP1 00003ce1: PUSH1 0x00 00003ce3: DUP1 00003ce4: PUSH1 0x00 00003ce6: PUSH1 0x80 00003ce8: DUP7 00003ce9: DUP9 00003cea: SUB 00003ceb: SLT 00003cec: ISZERO 00003ced: PUSH2 0x3cf8 00003cf0: JUMPI 00003cf1: PUSH2 0x3cf8 00003cf4: PUSH1 0x00 00003cf6: DUP1 00003cf7: REVERT 00003cf8: JUMPDEST 00003cf9: DUP6 00003cfa: CALLDATALOAD 00003cfb: PUSH1 0x01 00003cfd: PUSH1 0x01 00003cff: PUSH1 0x40 00003d01: SHL 00003d02: SUB 00003d03: DUP2 00003d04: GT 00003d05: ISZERO 00003d06: PUSH2 0x3d11 00003d09: JUMPI 00003d0a: PUSH2 0x3d11 00003d0d: PUSH1 0x00 00003d0f: DUP1 00003d10: REVERT 00003d11: JUMPDEST 00003d12: PUSH2 0x3d1d 00003d15: DUP9 00003d16: DUP3 00003d17: DUP10 00003d18: ADD 00003d19: PUSH2 0x3a85 00003d1c: JUMP 00003d1d: JUMPDEST 00003d1e: SWAP6 00003d1f: POP 00003d20: POP 00003d21: PUSH1 0x20 00003d23: DUP7 00003d24: ADD 00003d25: CALLDATALOAD 00003d26: PUSH1 0x01 00003d28: PUSH1 0x01 00003d2a: PUSH1 0x40 00003d2c: SHL 00003d2d: SUB 00003d2e: DUP2 00003d2f: GT 00003d30: ISZERO 00003d31: PUSH2 0x3d3c 00003d34: JUMPI 00003d35: PUSH2 0x3d3c 00003d38: PUSH1 0x00 00003d3a: DUP1 00003d3b: REVERT 00003d3c: JUMPDEST 00003d3d: PUSH2 0x3d48 00003d40: DUP9 00003d41: DUP3 00003d42: DUP10 00003d43: ADD 00003d44: PUSH2 0x3671 00003d47: JUMP 00003d48: JUMPDEST 00003d49: SWAP5 00003d4a: POP 00003d4b: POP 00003d4c: PUSH1 0x40 00003d4e: PUSH2 0x3d59 00003d51: DUP9 00003d52: DUP3 00003d53: DUP10 00003d54: ADD 00003d55: PUSH2 0x369b 00003d58: JUMP 00003d59: JUMPDEST 00003d5a: SWAP4 00003d5b: POP 00003d5c: POP 00003d5d: PUSH1 0x60 00003d5f: DUP7 00003d60: ADD 00003d61: CALLDATALOAD 00003d62: PUSH1 0x01 00003d64: PUSH1 0x01 00003d66: PUSH1 0x40 00003d68: SHL 00003d69: SUB 00003d6a: DUP2 00003d6b: GT 00003d6c: ISZERO 00003d6d: PUSH2 0x3d78 00003d70: JUMPI 00003d71: PUSH2 0x3d78 00003d74: PUSH1 0x00 00003d76: DUP1 00003d77: REVERT 00003d78: JUMPDEST 00003d79: PUSH2 0x3d84 00003d7c: DUP9 00003d7d: DUP3 00003d7e: DUP10 00003d7f: ADD 00003d80: PUSH2 0x3620 00003d83: JUMP 00003d84: JUMPDEST 00003d85: SWAP3 00003d86: POP 00003d87: SWAP3 00003d88: POP 00003d89: POP 00003d8a: SWAP3 00003d8b: SWAP6 00003d8c: POP 00003d8d: SWAP3 00003d8e: SWAP6 00003d8f: SWAP1 00003d90: SWAP4 00003d91: POP 00003d92: JUMP 00003d93: JUMPDEST 00003d94: PUSH1 0x40 00003d96: DUP2 00003d97: ADD 00003d98: PUSH2 0x3da1 00003d9b: DUP3 00003d9c: DUP6 00003d9d: PUSH2 0x37fa 00003da0: JUMP 00003da1: JUMPDEST 00003da2: PUSH2 0x32ce 00003da5: PUSH1 0x20 00003da7: DUP4 00003da8: ADD 00003da9: DUP5 00003daa: PUSH2 0x3c5e 00003dad: JUMP 00003dae: JUMPDEST 00003daf: PUSH1 0x00 00003db1: PUSH2 0x2128 00003db4: PUSH1 0x01 00003db6: PUSH1 0x01 00003db8: PUSH1 0xa0 00003dba: SHL 00003dbb: SUB 00003dbc: DUP4 00003dbd: AND 00003dbe: PUSH2 0x3dc5 00003dc1: JUMP 00003dc2: JUMPDEST 00003dc3: SWAP1 00003dc4: JUMP 00003dc5: JUMPDEST 00003dc6: PUSH1 0x01 00003dc8: PUSH1 0x01 00003dca: PUSH1 0xa0 00003dcc: SHL 00003dcd: SUB 00003dce: AND 00003dcf: SWAP1 00003dd0: JUMP 00003dd1: JUMPDEST 00003dd2: PUSH1 0x00 00003dd4: PUSH2 0x2128 00003dd7: DUP3 00003dd8: PUSH2 0x3dae 00003ddb: JUMP 00003ddc: JUMPDEST 00003ddd: PUSH1 0x00 00003ddf: PUSH2 0x2128 00003de2: DUP3 00003de3: PUSH2 0x3dd1 00003de6: JUMP 00003de7: JUMPDEST 00003de8: PUSH2 0x37e6 00003deb: DUP2 00003dec: PUSH2 0x3ddc 00003def: JUMP 00003df0: JUMPDEST 00003df1: PUSH1 0x20 00003df3: DUP2 00003df4: ADD 00003df5: PUSH2 0x2128 00003df8: DUP3 00003df9: DUP5 00003dfa: PUSH2 0x3de7 00003dfd: JUMP 00003dfe: JUMPDEST 00003dff: PUSH1 0x20 00003e01: DUP2 00003e02: ADD 00003e03: PUSH2 0x2128 00003e06: DUP3 00003e07: DUP5 00003e08: PUSH2 0x3c5e 00003e0b: JUMP 00003e0c: JUMPDEST 00003e0d: PUSH1 0x00 00003e0f: PUSH1 0x40 00003e11: DUP3 00003e12: DUP5 00003e13: SUB 00003e14: SLT 00003e15: ISZERO 00003e16: PUSH2 0x3e21 00003e19: JUMPI 00003e1a: PUSH2 0x3e21 00003e1d: PUSH1 0x00 00003e1f: DUP1 00003e20: REVERT 00003e21: JUMPDEST 00003e22: PUSH2 0x3e2b 00003e25: PUSH1 0x40 00003e27: PUSH2 0x39f2 00003e2a: JUMP 00003e2b: JUMPDEST 00003e2c: SWAP1 00003e2d: POP 00003e2e: PUSH1 0x00 00003e30: PUSH2 0x3e39 00003e33: DUP5 00003e34: DUP5 00003e35: PUSH2 0x3814 00003e38: JUMP 00003e39: JUMPDEST 00003e3a: DUP3 00003e3b: MSTORE 00003e3c: POP 00003e3d: PUSH1 0x20 00003e3f: DUP3 00003e40: ADD 00003e41: CALLDATALOAD 00003e42: PUSH1 0x01 00003e44: PUSH1 0x01 00003e46: PUSH1 0x40 00003e48: SHL 00003e49: SUB 00003e4a: DUP2 00003e4b: GT 00003e4c: ISZERO 00003e4d: PUSH2 0x3e58 00003e50: JUMPI 00003e51: PUSH2 0x3e58 00003e54: PUSH1 0x00 00003e56: DUP1 00003e57: REVERT 00003e58: JUMPDEST 00003e59: PUSH2 0x3e64 00003e5c: DUP5 00003e5d: DUP3 00003e5e: DUP6 00003e5f: ADD 00003e60: PUSH2 0x3a85 00003e63: JUMP 00003e64: JUMPDEST 00003e65: PUSH1 0x20 00003e67: DUP4 00003e68: ADD 00003e69: MSTORE 00003e6a: POP 00003e6b: SWAP3 00003e6c: SWAP2 00003e6d: POP 00003e6e: POP 00003e6f: JUMP 00003e70: JUMPDEST 00003e71: PUSH1 0x00 00003e73: PUSH1 0x40 00003e75: DUP3 00003e76: DUP5 00003e77: SUB 00003e78: SLT 00003e79: ISZERO 00003e7a: PUSH2 0x3e85 00003e7d: JUMPI 00003e7e: PUSH2 0x3e85 00003e81: PUSH1 0x00 00003e83: DUP1 00003e84: REVERT 00003e85: JUMPDEST 00003e86: PUSH2 0x3e8f 00003e89: PUSH1 0x40 00003e8b: PUSH2 0x39f2 00003e8e: JUMP 00003e8f: JUMPDEST 00003e90: SWAP1 00003e91: POP 00003e92: PUSH1 0x00 00003e94: PUSH2 0x3e9d 00003e97: DUP5 00003e98: DUP5 00003e99: PUSH2 0x3814 00003e9c: JUMP 00003e9d: JUMPDEST 00003e9e: DUP3 00003e9f: MSTORE 00003ea0: POP 00003ea1: PUSH1 0x20 00003ea3: PUSH2 0x3e64 00003ea6: DUP5 00003ea7: DUP5 00003ea8: DUP4 00003ea9: ADD 00003eaa: PUSH2 0x3779 00003ead: JUMP 00003eae: JUMPDEST 00003eaf: PUSH1 0x00 00003eb1: PUSH1 0x80 00003eb3: DUP3 00003eb4: DUP5 00003eb5: SUB 00003eb6: SLT 00003eb7: ISZERO 00003eb8: PUSH2 0x3ec3 00003ebb: JUMPI 00003ebc: PUSH2 0x3ec3 00003ebf: PUSH1 0x00 00003ec1: DUP1 00003ec2: REVERT 00003ec3: JUMPDEST 00003ec4: PUSH2 0x3ecd 00003ec7: PUSH1 0x80 00003ec9: PUSH2 0x39f2 00003ecc: JUMP 00003ecd: JUMPDEST 00003ece: SWAP1 00003ecf: POP 00003ed0: DUP2 00003ed1: CALLDATALOAD 00003ed2: PUSH1 0x01 00003ed4: PUSH1 0x01 00003ed6: PUSH1 0x40 00003ed8: SHL 00003ed9: SUB 00003eda: DUP2 00003edb: GT 00003edc: ISZERO 00003edd: PUSH2 0x3ee8 00003ee0: JUMPI 00003ee1: PUSH2 0x3ee8 00003ee4: PUSH1 0x00 00003ee6: DUP1 00003ee7: REVERT 00003ee8: JUMPDEST 00003ee9: PUSH2 0x3ef4 00003eec: DUP5 00003eed: DUP3 00003eee: DUP6 00003eef: ADD 00003ef0: PUSH2 0x3a85 00003ef3: JUMP 00003ef4: JUMPDEST 00003ef5: DUP3 00003ef6: MSTORE 00003ef7: POP 00003ef8: PUSH1 0x20 00003efa: PUSH2 0x3f05 00003efd: DUP5 00003efe: DUP5 00003eff: DUP4 00003f00: ADD 00003f01: PUSH2 0x3779 00003f04: JUMP 00003f05: JUMPDEST 00003f06: PUSH1 0x20 00003f08: DUP4 00003f09: ADD 00003f0a: MSTORE 00003f0b: POP 00003f0c: PUSH1 0x40 00003f0e: PUSH2 0x3f19 00003f11: DUP5 00003f12: DUP3 00003f13: DUP6 00003f14: ADD 00003f15: PUSH2 0x3814 00003f18: JUMP 00003f19: JUMPDEST 00003f1a: PUSH1 0x40 00003f1c: DUP4 00003f1d: ADD 00003f1e: MSTORE 00003f1f: POP 00003f20: PUSH1 0x60 00003f22: PUSH2 0x3f2d 00003f25: DUP5 00003f26: DUP3 00003f27: DUP6 00003f28: ADD 00003f29: PUSH2 0x3779 00003f2c: JUMP 00003f2d: JUMPDEST 00003f2e: PUSH1 0x60 00003f30: DUP4 00003f31: ADD 00003f32: MSTORE 00003f33: POP 00003f34: SWAP3 00003f35: SWAP2 00003f36: POP 00003f37: POP 00003f38: JUMP 00003f39: JUMPDEST 00003f3a: PUSH1 0x00 00003f3c: PUSH1 0xe0 00003f3e: DUP3 00003f3f: DUP5 00003f40: SUB 00003f41: SLT 00003f42: ISZERO 00003f43: PUSH2 0x3f4e 00003f46: JUMPI 00003f47: PUSH2 0x3f4e 00003f4a: PUSH1 0x00 00003f4c: DUP1 00003f4d: REVERT 00003f4e: JUMPDEST 00003f4f: PUSH2 0x3f58 00003f52: PUSH1 0xc0 00003f54: PUSH2 0x39f2 00003f57: JUMP 00003f58: JUMPDEST 00003f59: SWAP1 00003f5a: POP 00003f5b: PUSH1 0x00 00003f5d: PUSH2 0x3f66 00003f60: DUP5 00003f61: DUP5 00003f62: PUSH2 0x3814 00003f65: JUMP 00003f66: JUMPDEST 00003f67: DUP3 00003f68: MSTORE 00003f69: POP 00003f6a: PUSH1 0x20 00003f6c: PUSH2 0x3f77 00003f6f: DUP5 00003f70: DUP5 00003f71: DUP4 00003f72: ADD 00003f73: PUSH2 0x3814 00003f76: JUMP 00003f77: JUMPDEST 00003f78: PUSH1 0x20 00003f7a: DUP4 00003f7b: ADD 00003f7c: MSTORE 00003f7d: POP 00003f7e: PUSH1 0x40 00003f80: DUP3 00003f81: ADD 00003f82: CALLDATALOAD 00003f83: PUSH1 0x01 00003f85: PUSH1 0x01 00003f87: PUSH1 0x40 00003f89: SHL 00003f8a: SUB 00003f8b: DUP2 00003f8c: GT 00003f8d: ISZERO 00003f8e: PUSH2 0x3f99 00003f91: JUMPI 00003f92: PUSH2 0x3f99 00003f95: PUSH1 0x00 00003f97: DUP1 00003f98: REVERT 00003f99: JUMPDEST 00003f9a: PUSH2 0x3fa5 00003f9d: DUP5 00003f9e: DUP3 00003f9f: DUP6 00003fa0: ADD 00003fa1: PUSH2 0x3e0c 00003fa4: JUMP 00003fa5: JUMPDEST 00003fa6: PUSH1 0x40 00003fa8: DUP4 00003fa9: ADD 00003faa: MSTORE 00003fab: POP 00003fac: PUSH1 0x60 00003fae: PUSH2 0x3fb9 00003fb1: DUP5 00003fb2: DUP3 00003fb3: DUP6 00003fb4: ADD 00003fb5: PUSH2 0x3e70 00003fb8: JUMP 00003fb9: JUMPDEST 00003fba: PUSH1 0x60 00003fbc: DUP4 00003fbd: ADD 00003fbe: MSTORE 00003fbf: POP 00003fc0: PUSH1 0xa0 00003fc2: DUP3 00003fc3: ADD 00003fc4: CALLDATALOAD 00003fc5: PUSH1 0x01 00003fc7: PUSH1 0x01 00003fc9: PUSH1 0x40 00003fcb: SHL 00003fcc: SUB 00003fcd: DUP2 00003fce: GT 00003fcf: ISZERO 00003fd0: PUSH2 0x3fdb 00003fd3: JUMPI 00003fd4: PUSH2 0x3fdb 00003fd7: PUSH1 0x00 00003fd9: DUP1 00003fda: REVERT 00003fdb: JUMPDEST 00003fdc: PUSH2 0x3fe7 00003fdf: DUP5 00003fe0: DUP3 00003fe1: DUP6 00003fe2: ADD 00003fe3: PUSH2 0x3eae 00003fe6: JUMP 00003fe7: JUMPDEST 00003fe8: PUSH1 0x80 00003fea: DUP4 00003feb: ADD 00003fec: MSTORE 00003fed: POP 00003fee: PUSH1 0xc0 00003ff0: PUSH2 0x3ffb 00003ff3: DUP5 00003ff4: DUP3 00003ff5: DUP6 00003ff6: ADD 00003ff7: PUSH2 0x3814 00003ffa: JUMP 00003ffb: JUMPDEST 00003ffc: PUSH1 0xa0 00003ffe: DUP4 00003fff: ADD 00004000: MSTORE 00004001: POP 00004002: SWAP3 00004003: SWAP2 00004004: POP 00004005: POP 00004006: JUMP 00004007: JUMPDEST 00004008: PUSH1 0x00 0000400a: DUP1 0000400b: PUSH1 0x40 0000400d: DUP4 0000400e: DUP6 0000400f: SUB 00004010: SLT 00004011: ISZERO 00004012: PUSH2 0x401d 00004015: JUMPI 00004016: PUSH2 0x401d 00004019: PUSH1 0x00 0000401b: DUP1 0000401c: REVERT 0000401d: JUMPDEST 0000401e: DUP3 0000401f: CALLDATALOAD 00004020: PUSH1 0x01 00004022: PUSH1 0x01 00004024: PUSH1 0x40 00004026: SHL 00004027: SUB 00004028: DUP2 00004029: GT 0000402a: ISZERO 0000402b: PUSH2 0x4036 0000402e: JUMPI 0000402f: PUSH2 0x4036 00004032: PUSH1 0x00 00004034: DUP1 00004035: REVERT 00004036: JUMPDEST 00004037: PUSH2 0x3acb 0000403a: DUP6 0000403b: DUP3 0000403c: DUP7 0000403d: ADD 0000403e: PUSH2 0x3f39 00004041: JUMP 00004042: JUMPDEST 00004043: PUSH1 0x00 00004045: DUP1 00004046: PUSH1 0x00 00004048: DUP1 00004049: PUSH1 0x00 0000404b: DUP1 0000404c: PUSH1 0x00 0000404e: PUSH1 0xe0 00004050: DUP9 00004051: DUP11 00004052: SUB 00004053: SLT 00004054: ISZERO 00004055: PUSH2 0x4060 00004058: JUMPI 00004059: PUSH2 0x4060 0000405c: PUSH1 0x00 0000405e: DUP1 0000405f: REVERT 00004060: JUMPDEST 00004061: PUSH1 0x00 00004063: PUSH2 0x406c 00004066: DUP11 00004067: DUP11 00004068: PUSH2 0x3779 0000406b: JUMP 0000406c: JUMPDEST 0000406d: SWAP8 0000406e: POP 0000406f: POP 00004070: PUSH1 0x20 00004072: PUSH2 0x407d 00004075: DUP11 00004076: DUP3 00004077: DUP12 00004078: ADD 00004079: PUSH2 0x3814 0000407c: JUMP 0000407d: JUMPDEST 0000407e: SWAP7 0000407f: POP 00004080: POP 00004081: PUSH1 0x40 00004083: PUSH2 0x408e 00004086: DUP11 00004087: DUP3 00004088: DUP12 00004089: ADD 0000408a: PUSH2 0x3779 0000408d: JUMP 0000408e: JUMPDEST 0000408f: SWAP6 00004090: POP 00004091: POP 00004092: PUSH1 0x60 00004094: DUP9 00004095: ADD 00004096: CALLDATALOAD 00004097: PUSH1 0x01 00004099: PUSH1 0x01 0000409b: PUSH1 0x40 0000409d: SHL 0000409e: SUB 0000409f: DUP2 000040a0: GT 000040a1: ISZERO 000040a2: PUSH2 0x40ad 000040a5: JUMPI 000040a6: PUSH2 0x40ad 000040a9: PUSH1 0x00 000040ab: DUP1 000040ac: REVERT 000040ad: JUMPDEST 000040ae: PUSH2 0x40b9 000040b1: DUP11 000040b2: DUP3 000040b3: DUP12 000040b4: ADD 000040b5: PUSH2 0x3a85 000040b8: JUMP 000040b9: JUMPDEST 000040ba: SWAP5 000040bb: POP 000040bc: POP 000040bd: PUSH1 0x80 000040bf: DUP9 000040c0: ADD 000040c1: CALLDATALOAD 000040c2: PUSH1 0x01 000040c4: PUSH1 0x01 000040c6: PUSH1 0x40 000040c8: SHL 000040c9: SUB 000040ca: DUP2 000040cb: GT 000040cc: ISZERO 000040cd: PUSH2 0x40d8 000040d0: JUMPI 000040d1: PUSH2 0x40d8 000040d4: PUSH1 0x00 000040d6: DUP1 000040d7: REVERT 000040d8: JUMPDEST 000040d9: PUSH2 0x40e4 000040dc: DUP11 000040dd: DUP3 000040de: DUP12 000040df: ADD 000040e0: PUSH2 0x3a85 000040e3: JUMP 000040e4: JUMPDEST 000040e5: SWAP4 000040e6: POP 000040e7: POP 000040e8: PUSH1 0xa0 000040ea: PUSH2 0x40f5 000040ed: DUP11 000040ee: DUP3 000040ef: DUP12 000040f0: ADD 000040f1: PUSH2 0x3814 000040f4: JUMP 000040f5: JUMPDEST 000040f6: SWAP3 000040f7: POP 000040f8: POP 000040f9: PUSH1 0xc0 000040fb: PUSH2 0x4106 000040fe: DUP11 000040ff: DUP3 00004100: DUP12 00004101: ADD 00004102: PUSH2 0x3814 00004105: JUMP 00004106: JUMPDEST 00004107: SWAP2 00004108: POP 00004109: POP 0000410a: SWAP3 0000410b: SWAP6 0000410c: SWAP9 0000410d: SWAP2 0000410e: SWAP5 0000410f: SWAP8 00004110: POP 00004111: SWAP3 00004112: SWAP6 00004113: POP 00004114: JUMP 00004115: JUMPDEST 00004116: PUSH1 0x00 00004118: DUP1 00004119: PUSH1 0x00 0000411b: DUP1 0000411c: PUSH1 0x00 0000411e: PUSH1 0xa0 00004120: DUP7 00004121: DUP9 00004122: SUB 00004123: SLT 00004124: ISZERO 00004125: PUSH2 0x4130 00004128: JUMPI 00004129: PUSH2 0x4130 0000412c: PUSH1 0x00 0000412e: DUP1 0000412f: REVERT 00004130: JUMPDEST 00004131: PUSH1 0x00 00004133: PUSH2 0x413c 00004136: DUP9 00004137: DUP9 00004138: PUSH2 0x3779 0000413b: JUMP 0000413c: JUMPDEST 0000413d: SWAP6 0000413e: POP 0000413f: POP 00004140: PUSH1 0x20 00004142: PUSH2 0x414d 00004145: DUP9 00004146: DUP3 00004147: DUP10 00004148: ADD 00004149: PUSH2 0x3779 0000414c: JUMP 0000414d: JUMPDEST 0000414e: SWAP5 0000414f: POP 00004150: POP 00004151: PUSH1 0x40 00004153: PUSH2 0x415e 00004156: DUP9 00004157: DUP3 00004158: DUP10 00004159: ADD 0000415a: PUSH2 0x3814 0000415d: JUMP 0000415e: JUMPDEST 0000415f: SWAP4 00004160: POP 00004161: POP 00004162: PUSH1 0x60 00004164: PUSH2 0x416f 00004167: DUP9 00004168: DUP3 00004169: DUP10 0000416a: ADD 0000416b: PUSH2 0x3814 0000416e: JUMP 0000416f: JUMPDEST 00004170: SWAP3 00004171: POP 00004172: POP 00004173: PUSH1 0x80 00004175: PUSH2 0x4180 00004178: DUP9 00004179: DUP3 0000417a: DUP10 0000417b: ADD 0000417c: PUSH2 0x3779 0000417f: JUMP 00004180: JUMPDEST 00004181: SWAP2 00004182: POP 00004183: POP 00004184: SWAP3 00004185: SWAP6 00004186: POP 00004187: SWAP3 00004188: SWAP6 00004189: SWAP1 0000418a: SWAP4 0000418b: POP 0000418c: JUMP 0000418d: JUMPDEST 0000418e: DUP2 0000418f: DUP4 00004190: MSTORE 00004191: PUSH1 0x00 00004193: PUSH1 0x20 00004195: DUP5 00004196: ADD 00004197: SWAP4 00004198: POP 00004199: PUSH2 0x41a3 0000419c: DUP4 0000419d: DUP6 0000419e: DUP5 0000419f: PUSH2 0x3a38 000041a2: JUMP 000041a3: JUMPDEST 000041a4: PUSH1 0x1f 000041a6: NOT 000041a7: PUSH1 0x1f 000041a9: DUP5 000041aa: ADD 000041ab: AND 000041ac: PUSH2 0x3922 000041af: JUMP 000041b0: JUMPDEST 000041b1: PUSH1 0x00 000041b3: DUP1 000041b4: DUP4 000041b5: CALLDATALOAD 000041b6: PUSH1 0x1e 000041b8: NOT 000041b9: CALLDATASIZE 000041ba: DUP6 000041bb: SWAP1 000041bc: SUB 000041bd: ADD 000041be: DUP2 000041bf: SLT 000041c0: PUSH2 0x41cb 000041c3: JUMPI 000041c4: PUSH2 0x41cb 000041c7: PUSH1 0x00 000041c9: DUP1 000041ca: REVERT 000041cb: JUMPDEST 000041cc: DUP4 000041cd: DUP2 000041ce: ADD 000041cf: PUSH1 0x20 000041d1: DUP2 000041d2: ADD 000041d3: SWAP4 000041d4: POP 000041d5: CALLDATALOAD 000041d6: SWAP2 000041d7: POP 000041d8: PUSH1 0x01 000041da: PUSH1 0x01 000041dc: PUSH1 0x40 000041de: SHL 000041df: SUB 000041e0: DUP3 000041e1: GT 000041e2: ISZERO 000041e3: PUSH2 0x41ee 000041e6: JUMPI 000041e7: PUSH2 0x41ee 000041ea: PUSH1 0x00 000041ec: DUP1 000041ed: REVERT 000041ee: JUMPDEST 000041ef: CALLDATASIZE 000041f0: DUP3 000041f1: SWAP1 000041f2: SUB 000041f3: DUP4 000041f4: SGT 000041f5: ISZERO 000041f6: PUSH2 0x4201 000041f9: JUMPI 000041fa: PUSH2 0x4201 000041fd: PUSH1 0x00 000041ff: DUP1 00004200: REVERT 00004201: JUMPDEST 00004202: POP 00004203: SWAP3 00004204: POP 00004205: SWAP3 00004206: SWAP1 00004207: POP 00004208: JUMP 00004209: JUMPDEST 0000420a: PUSH1 0x00 0000420c: PUSH2 0x32ce 0000420f: PUSH1 0x20 00004211: DUP5 00004212: ADD 00004213: DUP5 00004214: PUSH2 0x3814 00004217: JUMP 00004218: JUMPDEST 00004219: PUSH1 0x00 0000421b: DUP1 0000421c: DUP4 0000421d: CALLDATALOAD 0000421e: PUSH1 0x1e 00004220: NOT 00004221: CALLDATASIZE 00004222: DUP6 00004223: SWAP1 00004224: SUB 00004225: ADD 00004226: DUP2 00004227: SLT 00004228: PUSH2 0x4233 0000422b: JUMPI 0000422c: PUSH2 0x4233 0000422f: PUSH1 0x00 00004231: DUP1 00004232: REVERT 00004233: JUMPDEST 00004234: DUP4 00004235: DUP2 00004236: ADD 00004237: PUSH1 0x20 00004239: DUP2 0000423a: ADD 0000423b: SWAP4 0000423c: POP 0000423d: CALLDATALOAD 0000423e: SWAP2 0000423f: POP 00004240: PUSH1 0x01 00004242: PUSH1 0x01 00004244: PUSH1 0x40 00004246: SHL 00004247: SUB 00004248: DUP3 00004249: GT 0000424a: ISZERO 0000424b: PUSH2 0x4256 0000424e: JUMPI 0000424f: PUSH2 0x4256 00004252: PUSH1 0x00 00004254: DUP1 00004255: REVERT 00004256: JUMPDEST 00004257: PUSH1 0x20 00004259: DUP3 0000425a: MUL 0000425b: CALLDATASIZE 0000425c: SUB 0000425d: DUP4 0000425e: SGT 0000425f: ISZERO 00004260: PUSH2 0x4201 00004263: JUMPI 00004264: PUSH2 0x4201 00004267: PUSH1 0x00 00004269: DUP1 0000426a: REVERT 0000426b: JUMPDEST 0000426c: PUSH1 0x00 0000426e: PUSH2 0x4277 00004271: DUP4 00004272: DUP4 00004273: PUSH2 0x3c5e 00004276: JUMP 00004277: JUMPDEST 00004278: POP 00004279: POP 0000427a: PUSH1 0x20 0000427c: ADD 0000427d: SWAP1 0000427e: JUMP 0000427f: JUMPDEST 00004280: PUSH1 0x00 00004282: PUSH2 0x32ce 00004285: PUSH1 0x20 00004287: DUP5 00004288: ADD 00004289: DUP5 0000428a: PUSH2 0x3779 0000428d: JUMP 0000428e: JUMPDEST 0000428f: DUP2 00004290: DUP4 00004291: MSTORE 00004292: PUSH1 0x00 00004294: PUSH1 0x20 00004296: DUP5 00004297: ADD 00004298: SWAP4 00004299: POP 0000429a: DUP2 0000429b: DUP1 0000429c: PUSH1 0x00 0000429e: JUMPDEST 0000429f: DUP6 000042a0: DUP2 000042a1: LT 000042a2: ISZERO 000042a3: PUSH2 0x42cb 000042a6: JUMPI 000042a7: PUSH2 0x42b0 000042aa: DUP3 000042ab: DUP5 000042ac: PUSH2 0x427f 000042af: JUMP 000042b0: JUMPDEST 000042b1: PUSH2 0x42ba 000042b4: DUP9 000042b5: DUP3 000042b6: PUSH2 0x426b 000042b9: JUMP 000042ba: JUMPDEST 000042bb: SWAP8 000042bc: POP 000042bd: PUSH1 0x20 000042bf: DUP4 000042c0: ADD 000042c1: SWAP3 000042c2: POP 000042c3: POP 000042c4: PUSH1 0x01 000042c6: ADD 000042c7: PUSH2 0x429e 000042ca: JUMP 000042cb: JUMPDEST 000042cc: POP 000042cd: SWAP5 000042ce: SWAP6 000042cf: SWAP5 000042d0: POP 000042d1: POP 000042d2: POP 000042d3: POP 000042d4: POP 000042d5: JUMP 000042d6: JUMPDEST 000042d7: PUSH1 0x00 000042d9: PUSH2 0x32e4 000042dc: DUP5 000042dd: DUP5 000042de: DUP5 000042df: PUSH2 0x418d 000042e2: JUMP 000042e3: JUMPDEST 000042e4: DUP2 000042e5: DUP4 000042e6: MSTORE 000042e7: PUSH1 0x00 000042e9: PUSH1 0x20 000042eb: DUP5 000042ec: ADD 000042ed: SWAP4 000042ee: POP 000042ef: DUP4 000042f0: PUSH1 0x20 000042f2: DUP5 000042f3: MUL 000042f4: DUP2 000042f5: ADD 000042f6: DUP4 000042f7: DUP1 000042f8: PUSH1 0x00 000042fa: JUMPDEST 000042fb: DUP8 000042fc: DUP2 000042fd: LT 000042fe: ISZERO 000042ff: PUSH2 0x4335 00004302: JUMPI 00004303: DUP5 00004304: DUP5 00004305: SUB 00004306: DUP10 00004307: MSTORE 00004308: PUSH2 0x4311 0000430b: DUP3 0000430c: DUP5 0000430d: PUSH2 0x41b0 00004310: JUMP 00004311: JUMPDEST 00004312: PUSH2 0x431c 00004315: DUP7 00004316: DUP3 00004317: DUP5 00004318: PUSH2 0x42d6 0000431b: JUMP 0000431c: JUMPDEST 0000431d: SWAP6 0000431e: POP 0000431f: PUSH1 0x20 00004321: DUP5 00004322: ADD 00004323: PUSH1 0x20 00004325: SWAP12 00004326: SWAP1 00004327: SWAP12 00004328: ADD 00004329: SWAP11 0000432a: SWAP4 0000432b: POP 0000432c: POP 0000432d: POP 0000432e: PUSH1 0x01 00004330: ADD 00004331: PUSH2 0x42fa 00004334: JUMP 00004335: JUMPDEST 00004336: POP 00004337: SWAP2 00004338: SWAP8 00004339: SWAP7 0000433a: POP 0000433b: POP 0000433c: POP 0000433d: POP 0000433e: POP 0000433f: POP 00004340: POP 00004341: JUMP 00004342: JUMPDEST 00004343: PUSH1 0x00 00004345: PUSH1 0x80 00004347: DUP4 00004348: ADD 00004349: PUSH2 0x4352 0000434c: DUP4 0000434d: DUP1 0000434e: PUSH2 0x41b0 00004351: JUMP 00004352: JUMPDEST 00004353: DUP6 00004354: DUP4 00004355: SUB 00004356: DUP7 00004357: MSTORE 00004358: PUSH2 0x4362 0000435b: DUP4 0000435c: DUP3 0000435d: DUP5 0000435e: PUSH2 0x418d 00004361: JUMP 00004362: JUMPDEST 00004363: SWAP3 00004364: POP 00004365: POP 00004366: POP 00004367: PUSH2 0x4373 0000436a: PUSH1 0x20 0000436c: DUP5 0000436d: ADD 0000436e: DUP5 0000436f: PUSH2 0x4209 00004372: JUMP 00004373: JUMPDEST 00004374: PUSH2 0x4380 00004377: PUSH1 0x20 00004379: DUP7 0000437a: ADD 0000437b: DUP3 0000437c: PUSH2 0x37fa 0000437f: JUMP 00004380: JUMPDEST 00004381: POP 00004382: PUSH2 0x438e 00004385: PUSH1 0x40 00004387: DUP5 00004388: ADD 00004389: DUP5 0000438a: PUSH2 0x4218 0000438d: JUMP 0000438e: JUMPDEST 0000438f: DUP6 00004390: DUP4 00004391: SUB 00004392: PUSH1 0x40 00004394: DUP8 00004395: ADD 00004396: MSTORE 00004397: PUSH2 0x43a1 0000439a: DUP4 0000439b: DUP3 0000439c: DUP5 0000439d: PUSH2 0x428e 000043a0: JUMP 000043a1: JUMPDEST 000043a2: SWAP3 000043a3: POP 000043a4: POP 000043a5: POP 000043a6: PUSH2 0x43b2 000043a9: PUSH1 0x60 000043ab: DUP5 000043ac: ADD 000043ad: DUP5 000043ae: PUSH2 0x4218 000043b1: JUMP 000043b2: JUMPDEST 000043b3: DUP6 000043b4: DUP4 000043b5: SUB 000043b6: PUSH1 0x60 000043b8: DUP8 000043b9: ADD 000043ba: MSTORE 000043bb: PUSH2 0x335a 000043be: DUP4 000043bf: DUP3 000043c0: DUP5 000043c1: PUSH2 0x42e3 000043c4: JUMP 000043c5: JUMPDEST 000043c6: PUSH1 0x80 000043c8: DUP1 000043c9: DUP3 000043ca: MSTORE 000043cb: DUP2 000043cc: ADD 000043cd: PUSH2 0x43d7 000043d0: DUP2 000043d1: DUP8 000043d2: DUP10 000043d3: PUSH2 0x418d 000043d6: JUMP 000043d7: JUMPDEST 000043d8: SWAP1 000043d9: POP 000043da: DUP2 000043db: DUP2 000043dc: SUB 000043dd: PUSH1 0x20 000043df: DUP4 000043e0: ADD 000043e1: MSTORE 000043e2: PUSH2 0x43eb 000043e5: DUP2 000043e6: DUP7 000043e7: PUSH2 0x4342 000043ea: JUMP 000043eb: JUMPDEST 000043ec: SWAP1 000043ed: POP 000043ee: PUSH2 0x43fa 000043f1: PUSH1 0x40 000043f3: DUP4 000043f4: ADD 000043f5: DUP6 000043f6: PUSH2 0x3c5e 000043f9: JUMP 000043fa: JUMPDEST 000043fb: PUSH2 0x335a 000043fe: PUSH1 0x60 00004400: DUP4 00004401: ADD 00004402: DUP5 00004403: PUSH2 0x37fa 00004406: JUMP 00004407: JUMPDEST 00004408: DUP1 00004409: MLOAD 0000440a: PUSH2 0x2128 0000440d: DUP2 0000440e: PUSH2 0x368c 00004411: JUMP 00004412: JUMPDEST 00004413: PUSH1 0x00 00004415: PUSH1 0x20 00004417: DUP3 00004418: DUP5 00004419: SUB 0000441a: SLT 0000441b: ISZERO 0000441c: PUSH2 0x4427 0000441f: JUMPI 00004420: PUSH2 0x4427 00004423: PUSH1 0x00 00004425: DUP1 00004426: REVERT 00004427: JUMPDEST 00004428: PUSH1 0x00 0000442a: PUSH2 0x2124 0000442d: DUP5 0000442e: DUP5 0000442f: PUSH2 0x4407 00004432: JUMP 00004433: JUMPDEST 00004434: PUSH1 0x27 00004436: DUP2 00004437: MSTORE 00004438: PUSH1 0x00 0000443a: PUSH1 0x20 0000443c: DUP3 0000443d: ADD 0000443e: PUSH32 0x546f6b656e536572766963653a20756e617574686f72697a656446726f6d5072 0000445f: DUP2 00004460: MSTORE 00004461: PUSH7 0x65646963617465 00004469: PUSH1 0xc8 0000446b: SHL 0000446c: PUSH1 0x20 0000446e: DUP3 0000446f: ADD 00004470: MSTORE 00004471: SWAP2 00004472: POP 00004473: PUSH2 0x3609 00004476: JUMP 00004477: JUMPDEST 00004478: PUSH1 0x20 0000447a: DUP1 0000447b: DUP3 0000447c: MSTORE 0000447d: DUP2 0000447e: ADD 0000447f: PUSH2 0x2128 00004482: DUP2 00004483: PUSH2 0x4433 00004486: JUMP 00004487: JUMPDEST 00004488: PUSH1 0x21 0000448a: DUP2 0000448b: MSTORE 0000448c: PUSH1 0x00 0000448e: PUSH1 0x20 00004490: DUP3 00004491: ADD 00004492: PUSH32 0x546f6b656e537570706f72743a20746f6b656e206e6f7420737570706f727465 000044b3: DUP2 000044b4: MSTORE 000044b5: PUSH1 0x19 000044b7: PUSH1 0xfa 000044b9: SHL 000044ba: PUSH1 0x20 000044bc: DUP3 000044bd: ADD 000044be: MSTORE 000044bf: SWAP2 000044c0: POP 000044c1: PUSH2 0x3609 000044c4: JUMP 000044c5: JUMPDEST 000044c6: PUSH1 0x20 000044c8: DUP1 000044c9: DUP3 000044ca: MSTORE 000044cb: DUP2 000044cc: ADD 000044cd: PUSH2 0x2128 000044d0: DUP2 000044d1: PUSH2 0x4487 000044d4: JUMP 000044d5: JUMPDEST 000044d6: PUSH1 0x60 000044d8: DUP2 000044d9: ADD 000044da: PUSH2 0x44e3 000044dd: DUP3 000044de: DUP7 000044df: PUSH2 0x3c5e 000044e2: JUMP 000044e3: JUMPDEST 000044e4: PUSH2 0x44f0 000044e7: PUSH1 0x20 000044e9: DUP4 000044ea: ADD 000044eb: DUP6 000044ec: PUSH2 0x3c5e 000044ef: JUMP 000044f0: JUMPDEST 000044f1: PUSH2 0x32e4 000044f4: PUSH1 0x40 000044f6: DUP4 000044f7: ADD 000044f8: DUP5 000044f9: PUSH2 0x3c5e 000044fc: JUMP 000044fd: JUMPDEST 000044fe: PUSH1 0x2c 00004500: DUP2 00004501: MSTORE 00004502: PUSH1 0x00 00004504: PUSH1 0x20 00004506: DUP3 00004507: ADD 00004508: PUSH32 0x46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820 00004529: DUP2 0000452a: MSTORE 0000452b: PUSH12 0x19195b1959d85d1958d85b1b 00004538: PUSH1 0xa2 0000453a: SHL 0000453b: PUSH1 0x20 0000453d: DUP3 0000453e: ADD 0000453f: MSTORE 00004540: SWAP2 00004541: POP 00004542: PUSH2 0x3609 00004545: JUMP 00004546: JUMPDEST 00004547: PUSH1 0x20 00004549: DUP1 0000454a: DUP3 0000454b: MSTORE 0000454c: DUP2 0000454d: ADD 0000454e: PUSH2 0x2128 00004551: DUP2 00004552: PUSH2 0x44fd 00004555: JUMP 00004556: JUMPDEST 00004557: PUSH1 0x2c 00004559: DUP2 0000455a: MSTORE 0000455b: PUSH1 0x00 0000455d: PUSH1 0x20 0000455f: DUP3 00004560: ADD 00004561: PUSH32 0x46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820 00004582: DUP2 00004583: MSTORE 00004584: PUSH12 0x6163746976652070726f7879 00004591: PUSH1 0xa0 00004593: SHL 00004594: PUSH1 0x20 00004596: DUP3 00004597: ADD 00004598: MSTORE 00004599: SWAP2 0000459a: POP 0000459b: PUSH2 0x3609 0000459e: JUMP 0000459f: JUMPDEST 000045a0: PUSH1 0x20 000045a2: DUP1 000045a3: DUP3 000045a4: MSTORE 000045a5: DUP2 000045a6: ADD 000045a7: PUSH2 0x2128 000045aa: DUP2 000045ab: PUSH2 0x4556 000045ae: JUMP 000045af: JUMPDEST 000045b0: PUSH1 0x80 000045b2: DUP2 000045b3: ADD 000045b4: PUSH2 0x45bd 000045b7: DUP3 000045b8: DUP8 000045b9: PUSH2 0x3c5e 000045bc: JUMP 000045bd: JUMPDEST 000045be: PUSH2 0x45ca 000045c1: PUSH1 0x20 000045c3: DUP4 000045c4: ADD 000045c5: DUP7 000045c6: PUSH2 0x37fa 000045c9: JUMP 000045ca: JUMPDEST 000045cb: PUSH2 0x45d7 000045ce: PUSH1 0x40 000045d0: DUP4 000045d1: ADD 000045d2: DUP6 000045d3: PUSH2 0x37fa 000045d6: JUMP 000045d7: JUMPDEST 000045d8: PUSH2 0x2e4b 000045db: PUSH1 0x60 000045dd: DUP4 000045de: ADD 000045df: DUP5 000045e0: PUSH2 0x37fa 000045e3: JUMP 000045e4: JUMPDEST 000045e5: PUSH1 0x2a 000045e7: DUP2 000045e8: MSTORE 000045e9: PUSH1 0x00 000045eb: PUSH1 0x20 000045ed: DUP3 000045ee: ADD 000045ef: PUSH32 0x546f6b656e536572766963653a20426c61636b4c697374536572766963654361 00004610: DUP2 00004611: MSTORE 00004612: PUSH10 0x6e6e6f7442655a65726f 0000461d: PUSH1 0xb0 0000461f: SHL 00004620: PUSH1 0x20 00004622: DUP3 00004623: ADD 00004624: MSTORE 00004625: SWAP2 00004626: POP 00004627: PUSH2 0x3609 0000462a: JUMP 0000462b: JUMPDEST 0000462c: PUSH1 0x20 0000462e: DUP1 0000462f: DUP3 00004630: MSTORE 00004631: DUP2 00004632: ADD 00004633: PUSH2 0x2128 00004636: DUP2 00004637: PUSH2 0x45e4 0000463a: JUMP 0000463b: JUMPDEST 0000463c: PUSH1 0x33 0000463e: DUP2 0000463f: MSTORE 00004640: PUSH1 0x00 00004642: PUSH1 0x20 00004644: DUP3 00004645: ADD 00004646: PUSH32 0x546f6b656e536572766963653a20426c61636b4c697374536572766963654361 00004667: DUP2 00004668: MSTORE 00004669: PUSH32 0x6e6e6f74426553616d65417343757272656e7400000000000000000000000000 0000468a: PUSH1 0x20 0000468c: DUP3 0000468d: ADD 0000468e: MSTORE 0000468f: SWAP2 00004690: POP 00004691: PUSH2 0x3609 00004694: JUMP 00004695: JUMPDEST 00004696: PUSH1 0x20 00004698: DUP1 00004699: DUP3 0000469a: MSTORE 0000469b: DUP2 0000469c: ADD 0000469d: PUSH2 0x2128 000046a0: DUP2 000046a1: PUSH2 0x463b 000046a4: JUMP 000046a5: JUMPDEST 000046a6: PUSH1 0x38 000046a8: DUP2 000046a9: MSTORE 000046aa: PUSH1 0x00 000046ac: PUSH1 0x20 000046ae: DUP3 000046af: ADD 000046b0: PUSH32 0x555550535570677261646561626c653a206d757374206e6f742062652063616c 000046d1: DUP2 000046d2: MSTORE 000046d3: PUSH32 0x6c6564207468726f7567682064656c656761746563616c6c0000000000000000 000046f4: PUSH1 0x20 000046f6: DUP3 000046f7: ADD 000046f8: MSTORE 000046f9: SWAP2 000046fa: POP 000046fb: PUSH2 0x3609 000046fe: JUMP 000046ff: JUMPDEST 00004700: PUSH1 0x20 00004702: DUP1 00004703: DUP3 00004704: MSTORE 00004705: DUP2 00004706: ADD 00004707: PUSH2 0x2128 0000470a: DUP2 0000470b: PUSH2 0x46a5 0000470e: JUMP 0000470f: JUMPDEST 00004710: PUSH1 0x23 00004712: DUP2 00004713: MSTORE 00004714: PUSH1 0x00 00004716: PUSH1 0x20 00004718: DUP3 00004719: ADD 0000471a: PUSH32 0x546f6b656e537570706f72743a20746f6b656e20616c726561647920656e6162 0000473b: DUP2 0000473c: MSTORE 0000473d: PUSH3 0x1b1959 00004741: PUSH1 0xea 00004743: SHL 00004744: PUSH1 0x20 00004746: DUP3 00004747: ADD 00004748: MSTORE 00004749: SWAP2 0000474a: POP 0000474b: PUSH2 0x3609 0000474e: JUMP 0000474f: JUMPDEST 00004750: PUSH1 0x20 00004752: DUP1 00004753: DUP3 00004754: MSTORE 00004755: DUP2 00004756: ADD 00004757: PUSH2 0x2128 0000475a: DUP2 0000475b: PUSH2 0x470f 0000475e: JUMP 0000475f: JUMPDEST 00004760: PUSH1 0x40 00004762: DUP2 00004763: ADD 00004764: PUSH2 0x476d 00004767: DUP3 00004768: DUP6 00004769: PUSH2 0x3c5e 0000476c: JUMP 0000476d: JUMPDEST 0000476e: PUSH2 0x32ce 00004771: PUSH1 0x20 00004773: DUP4 00004774: ADD 00004775: DUP5 00004776: PUSH2 0x37fa 00004779: JUMP 0000477a: JUMPDEST 0000477b: PUSH1 0x00 0000477d: PUSH2 0x2128 00004780: PUSH2 0x3dc2 00004783: DUP4 00004784: DUP2 00004785: JUMP 00004786: JUMPDEST 00004787: PUSH2 0x37e6 0000478a: DUP2 0000478b: PUSH2 0x477a 0000478e: JUMP 0000478f: JUMPDEST 00004790: PUSH1 0xc0 00004792: DUP2 00004793: ADD 00004794: PUSH2 0x479d 00004797: DUP3 00004798: DUP11 00004799: PUSH2 0x3c5e 0000479c: JUMP 0000479d: JUMPDEST 0000479e: PUSH2 0x47aa 000047a1: PUSH1 0x20 000047a3: DUP4 000047a4: ADD 000047a5: DUP10 000047a6: PUSH2 0x37fa 000047a9: JUMP 000047aa: JUMPDEST 000047ab: DUP2 000047ac: DUP2 000047ad: SUB 000047ae: PUSH1 0x40 000047b0: DUP4 000047b1: ADD 000047b2: MSTORE 000047b3: PUSH2 0x47bd 000047b6: DUP2 000047b7: DUP8 000047b8: DUP10 000047b9: PUSH2 0x418d 000047bc: JUMP 000047bd: JUMPDEST 000047be: SWAP1 000047bf: POP 000047c0: DUP2 000047c1: DUP2 000047c2: SUB 000047c3: PUSH1 0x60 000047c5: DUP4 000047c6: ADD 000047c7: MSTORE 000047c8: PUSH2 0x47d1 000047cb: DUP2 000047cc: DUP7 000047cd: PUSH2 0x4342 000047d0: JUMP 000047d1: JUMPDEST 000047d2: SWAP1 000047d3: POP 000047d4: PUSH2 0x47e0 000047d7: PUSH1 0x80 000047d9: DUP4 000047da: ADD 000047db: DUP6 000047dc: PUSH2 0x3c5e 000047df: JUMP 000047e0: JUMPDEST 000047e1: PUSH2 0x3cd1 000047e4: PUSH1 0xa0 000047e6: DUP4 000047e7: ADD 000047e8: DUP5 000047e9: PUSH2 0x4786 000047ec: JUMP 000047ed: JUMPDEST 000047ee: PUSH4 0x4e487b71 000047f3: PUSH1 0xe0 000047f5: SHL 000047f6: PUSH1 0x00 000047f8: MSTORE 000047f9: PUSH1 0x22 000047fb: PUSH1 0x04 000047fd: MSTORE 000047fe: PUSH1 0x24 00004800: PUSH1 0x00 00004802: REVERT 00004803: JUMPDEST 00004804: PUSH1 0x02 00004806: DUP2 00004807: DIV 00004808: PUSH1 0x01 0000480a: DUP3 0000480b: AND 0000480c: DUP1 0000480d: PUSH2 0x4817 00004810: JUMPI 00004811: PUSH1 0x7f 00004813: DUP3 00004814: AND 00004815: SWAP2 00004816: POP 00004817: JUMPDEST 00004818: PUSH1 0x20 0000481a: DUP3 0000481b: LT 0000481c: DUP2 0000481d: SUB 0000481e: PUSH2 0x3686 00004821: JUMPI 00004822: PUSH2 0x3686 00004825: PUSH2 0x47ed 00004828: JUMP 00004829: JUMPDEST 0000482a: PUSH1 0x80 0000482c: DUP1 0000482d: DUP3 0000482e: MSTORE 0000482f: DUP2 00004830: ADD 00004831: PUSH2 0x483a 00004834: DUP2 00004835: DUP8 00004836: PUSH2 0x38f8 00004839: JUMP 0000483a: JUMPDEST 0000483b: SWAP1 0000483c: POP 0000483d: DUP2 0000483e: DUP2 0000483f: SUB 00004840: PUSH1 0x20 00004842: DUP4 00004843: ADD 00004844: MSTORE 00004845: PUSH2 0x484e 00004848: DUP2 00004849: DUP7 0000484a: PUSH2 0x4342 0000484d: JUMP 0000484e: JUMPDEST 0000484f: SWAP1 00004850: POP 00004851: PUSH2 0x45d7 00004854: PUSH1 0x40 00004856: DUP4 00004857: ADD 00004858: DUP6 00004859: PUSH2 0x3c5e 0000485c: JUMP 0000485d: JUMPDEST 0000485e: PUSH1 0x21 00004860: DUP2 00004861: MSTORE 00004862: PUSH1 0x00 00004864: PUSH1 0x20 00004866: DUP3 00004867: ADD 00004868: PUSH32 0x546f6b656e536572766963653a20746f6b656e206e6f7420737570706f727465 00004889: DUP2 0000488a: MSTORE 0000488b: PUSH1 0x19 0000488d: PUSH1 0xfa 0000488f: SHL 00004890: PUSH1 0x20 00004892: DUP3 00004893: ADD 00004894: MSTORE 00004895: SWAP2 00004896: POP 00004897: PUSH2 0x3609 0000489a: JUMP 0000489b: JUMPDEST 0000489c: PUSH1 0x20 0000489e: DUP1 0000489f: DUP3 000048a0: MSTORE 000048a1: DUP2 000048a2: ADD 000048a3: PUSH2 0x2128 000048a6: DUP2 000048a7: PUSH2 0x485d 000048aa: JUMP 000048ab: JUMPDEST 000048ac: PUSH1 0x20 000048ae: DUP1 000048af: DUP3 000048b0: MSTORE 000048b1: PUSH32 0x546f6b656e536572766963653a207661756c74207a65726f2061646472657373 000048d2: SWAP2 000048d3: ADD 000048d4: SWAP1 000048d5: DUP2 000048d6: MSTORE 000048d7: PUSH1 0x00 000048d9: JUMPDEST 000048da: POP 000048db: PUSH1 0x20 000048dd: ADD 000048de: SWAP1 000048df: JUMP 000048e0: JUMPDEST 000048e1: PUSH1 0x20 000048e3: DUP1 000048e4: DUP3 000048e5: MSTORE 000048e6: DUP2 000048e7: ADD 000048e8: PUSH2 0x2128 000048eb: DUP2 000048ec: PUSH2 0x48ab 000048ef: JUMP 000048f0: JUMPDEST 000048f1: PUSH1 0x00 000048f3: PUSH2 0x2128 000048f6: DUP3 000048f7: PUSH2 0x3dc2 000048fa: JUMP 000048fb: JUMPDEST 000048fc: PUSH1 0x21 000048fe: DUP2 000048ff: MSTORE 00004900: PUSH1 0x00 00004902: PUSH1 0x20 00004904: DUP3 00004905: ADD 00004906: PUSH32 0x546f6b656e536572766963653a20657468207472616e73666572206661696c65 00004927: DUP2 00004928: MSTORE 00004929: PUSH1 0x19 0000492b: PUSH1 0xfa 0000492d: SHL 0000492e: PUSH1 0x20 00004930: DUP3 00004931: ADD 00004932: MSTORE 00004933: SWAP2 00004934: POP 00004935: PUSH2 0x3609 00004938: JUMP 00004939: JUMPDEST 0000493a: PUSH1 0x20 0000493c: DUP1 0000493d: DUP3 0000493e: MSTORE 0000493f: DUP2 00004940: ADD 00004941: PUSH2 0x2128 00004944: DUP2 00004945: PUSH2 0x48fb 00004948: JUMP 00004949: JUMPDEST 0000494a: PUSH1 0x25 0000494c: DUP2 0000494d: MSTORE 0000494e: PUSH1 0x00 00004950: PUSH1 0x20 00004952: DUP3 00004953: ADD 00004954: PUSH32 0x546f6b656e536572766963653a20696e76616c696444657374546f6b656e5365 00004975: DUP2 00004976: MSTORE 00004977: PUSH5 0x7276696365 0000497d: PUSH1 0xd8 0000497f: SHL 00004980: PUSH1 0x20 00004982: DUP3 00004983: ADD 00004984: MSTORE 00004985: SWAP2 00004986: POP 00004987: PUSH2 0x3609 0000498a: JUMP 0000498b: JUMPDEST 0000498c: PUSH1 0x20 0000498e: DUP1 0000498f: DUP3 00004990: MSTORE 00004991: DUP2 00004992: ADD 00004993: PUSH2 0x2128 00004996: DUP2 00004997: PUSH2 0x4949 0000499a: JUMP 0000499b: JUMPDEST 0000499c: PUSH1 0x22 0000499e: DUP2 0000499f: MSTORE 000049a0: PUSH1 0x00 000049a2: PUSH1 0x20 000049a4: DUP3 000049a5: ADD 000049a6: PUSH32 0x546f6b656e536572766963653a20696e76616c6964536f75726365436861696e 000049c7: DUP2 000049c8: MSTORE 000049c9: PUSH2 0x1259 000049cc: PUSH1 0xf2 000049ce: SHL 000049cf: PUSH1 0x20 000049d1: DUP3 000049d2: ADD 000049d3: MSTORE 000049d4: SWAP2 000049d5: POP 000049d6: PUSH2 0x3609 000049d9: JUMP 000049da: JUMPDEST 000049db: PUSH1 0x20 000049dd: DUP1 000049de: DUP3 000049df: MSTORE 000049e0: DUP2 000049e1: ADD 000049e2: PUSH2 0x2128 000049e5: DUP2 000049e6: PUSH2 0x499b 000049e9: JUMP 000049ea: JUMPDEST 000049eb: PUSH1 0x20 000049ed: DUP1 000049ee: DUP3 000049ef: MSTORE 000049f0: PUSH32 0x546f6b656e536572766963653a20696e76616c696444657374436861696e4964 00004a11: SWAP2 00004a12: ADD 00004a13: SWAP1 00004a14: DUP2 00004a15: MSTORE 00004a16: PUSH1 0x00 00004a18: PUSH2 0x48d9 00004a1b: JUMP 00004a1c: JUMPDEST 00004a1d: PUSH1 0x20 00004a1f: DUP1 00004a20: DUP3 00004a21: MSTORE 00004a22: DUP2 00004a23: ADD 00004a24: PUSH2 0x2128 00004a27: DUP2 00004a28: PUSH2 0x49ea 00004a2b: JUMP 00004a2c: JUMPDEST 00004a2d: PUSH1 0x1a 00004a2f: DUP2 00004a30: MSTORE 00004a31: PUSH1 0x00 00004a33: PUSH1 0x20 00004a35: DUP3 00004a36: ADD 00004a37: PUSH32 0x546f6b656e536572766963653a20696e76616c6964546f6b656e000000000000 00004a58: DUP2 00004a59: MSTORE 00004a5a: SWAP2 00004a5b: POP 00004a5c: PUSH2 0x48d9 00004a5f: JUMP 00004a60: JUMPDEST 00004a61: PUSH1 0x20 00004a63: DUP1 00004a64: DUP3 00004a65: MSTORE 00004a66: DUP2 00004a67: ADD 00004a68: PUSH2 0x2128 00004a6b: DUP2 00004a6c: PUSH2 0x4a2c 00004a6f: JUMP 00004a70: JUMPDEST 00004a71: PUSH1 0x1b 00004a73: DUP2 00004a74: MSTORE 00004a75: PUSH1 0x00 00004a77: PUSH1 0x20 00004a79: DUP3 00004a7a: ADD 00004a7b: PUSH32 0x546f6b656e536572766963653a20696e76616c6964416d6f756e740000000000 00004a9c: DUP2 00004a9d: MSTORE 00004a9e: SWAP2 00004a9f: POP 00004aa0: PUSH2 0x48d9 00004aa3: JUMP 00004aa4: JUMPDEST 00004aa5: PUSH1 0x20 00004aa7: DUP1 00004aa8: DUP3 00004aa9: MSTORE 00004aaa: DUP2 00004aab: ADD 00004aac: PUSH2 0x2128 00004aaf: DUP2 00004ab0: PUSH2 0x4a70 00004ab3: JUMP 00004ab4: JUMPDEST 00004ab5: PUSH1 0x00 00004ab7: DUP2 00004ab8: SLOAD 00004ab9: PUSH2 0x4ac1 00004abc: DUP2 00004abd: PUSH2 0x4803 00004ac0: JUMP 00004ac1: JUMPDEST 00004ac2: PUSH1 0x01 00004ac4: DUP3 00004ac5: AND 00004ac6: DUP1 00004ac7: ISZERO 00004ac8: PUSH2 0x4ad8 00004acb: JUMPI 00004acc: PUSH1 0x01 00004ace: DUP2 00004acf: EQ 00004ad0: PUSH2 0x4aed 00004ad3: JUMPI 00004ad4: PUSH2 0x4b1d 00004ad7: JUMP 00004ad8: JUMPDEST 00004ad9: PUSH1 0xff 00004adb: NOT 00004adc: DUP4 00004add: AND 00004ade: DUP7 00004adf: MSTORE 00004ae0: DUP2 00004ae1: ISZERO 00004ae2: ISZERO 00004ae3: DUP3 00004ae4: MUL 00004ae5: DUP7 00004ae6: ADD 00004ae7: SWAP4 00004ae8: POP 00004ae9: PUSH2 0x4b1d 00004aec: JUMP 00004aed: JUMPDEST 00004aee: PUSH1 0x00 00004af0: DUP6 00004af1: DUP2 00004af2: MSTORE 00004af3: PUSH1 0x20 00004af5: SWAP1 00004af6: KECCAK256 00004af7: PUSH1 0x00 00004af9: JUMPDEST 00004afa: DUP4 00004afb: DUP2 00004afc: LT 00004afd: ISZERO 00004afe: PUSH2 0x4b15 00004b01: JUMPI 00004b02: DUP2 00004b03: SLOAD 00004b04: DUP9 00004b05: DUP3 00004b06: ADD 00004b07: MSTORE 00004b08: PUSH1 0x01 00004b0a: SWAP1 00004b0b: SWAP2 00004b0c: ADD 00004b0d: SWAP1 00004b0e: PUSH1 0x20 00004b10: ADD 00004b11: PUSH2 0x4af9 00004b14: JUMP 00004b15: JUMPDEST 00004b16: DUP4 00004b17: DUP9 00004b18: ADD 00004b19: SWAP6 00004b1a: POP 00004b1b: POP 00004b1c: POP 00004b1d: JUMPDEST 00004b1e: POP 00004b1f: POP 00004b20: POP 00004b21: SWAP3 00004b22: SWAP2 00004b23: POP 00004b24: POP 00004b25: JUMP 00004b26: JUMPDEST 00004b27: PUSH1 0x00 00004b29: PUSH2 0x32ce 00004b2c: DUP3 00004b2d: DUP5 00004b2e: PUSH2 0x4ab4 00004b31: JUMP 00004b32: JUMPDEST 00004b33: PUSH1 0x00 00004b35: PUSH2 0x4b3c 00004b38: DUP3 00004b39: MLOAD 00004b3a: SWAP1 00004b3b: JUMP 00004b3c: JUMPDEST 00004b3d: PUSH2 0x4b4a 00004b40: DUP2 00004b41: DUP6 00004b42: PUSH1 0x20 00004b44: DUP7 00004b45: ADD 00004b46: PUSH2 0x38d4 00004b49: JUMP 00004b4a: JUMPDEST 00004b4b: SWAP3 00004b4c: SWAP1 00004b4d: SWAP3 00004b4e: ADD 00004b4f: SWAP3 00004b50: SWAP2 00004b51: POP 00004b52: POP 00004b53: JUMP 00004b54: JUMPDEST 00004b55: PUSH1 0x00 00004b57: PUSH2 0x32ce 00004b5a: DUP3 00004b5b: DUP5 00004b5c: PUSH2 0x4b32 00004b5f: JUMP 00004b60: JUMPDEST 00004b61: PUSH1 0x27 00004b63: DUP2 00004b64: MSTORE 00004b65: PUSH1 0x00 00004b67: PUSH1 0x20 00004b69: DUP3 00004b6a: ADD 00004b6b: PUSH32 0x546f6b656e536572766963653a20696e76616c6964536f75726365546f6b656e 00004b8c: DUP2 00004b8d: MSTORE 00004b8e: PUSH7 0x53657276696365 00004b96: PUSH1 0xc8 00004b98: SHL 00004b99: PUSH1 0x20 00004b9b: DUP3 00004b9c: ADD 00004b9d: MSTORE 00004b9e: SWAP2 00004b9f: POP 00004ba0: PUSH2 0x3609 00004ba3: JUMP 00004ba4: JUMPDEST 00004ba5: PUSH1 0x20 00004ba7: DUP1 00004ba8: DUP3 00004ba9: MSTORE 00004baa: DUP2 00004bab: ADD 00004bac: PUSH2 0x2128 00004baf: DUP2 00004bb0: PUSH2 0x4b60 00004bb3: JUMP 00004bb4: JUMPDEST 00004bb5: DUP1 00004bb6: MLOAD 00004bb7: PUSH1 0x00 00004bb9: SWAP1 00004bba: PUSH1 0x40 00004bbc: DUP5 00004bbd: ADD 00004bbe: SWAP1 00004bbf: PUSH2 0x4bc8 00004bc2: DUP6 00004bc3: DUP3 00004bc4: PUSH2 0x37fa 00004bc7: JUMP 00004bc8: JUMPDEST 00004bc9: POP 00004bca: PUSH1 0x20 00004bcc: DUP4 00004bcd: ADD 00004bce: MLOAD 00004bcf: DUP5 00004bd0: DUP3 00004bd1: SUB 00004bd2: PUSH1 0x20 00004bd4: DUP7 00004bd5: ADD 00004bd6: MSTORE 00004bd7: PUSH2 0x2e4b 00004bda: DUP3 00004bdb: DUP3 00004bdc: PUSH2 0x38f8 00004bdf: JUMP 00004be0: JUMPDEST 00004be1: DUP1 00004be2: MLOAD 00004be3: PUSH1 0x40 00004be5: DUP4 00004be6: ADD 00004be7: SWAP1 00004be8: PUSH2 0x4bf1 00004beb: DUP5 00004bec: DUP3 00004bed: PUSH2 0x37fa 00004bf0: JUMP 00004bf1: JUMPDEST 00004bf2: POP 00004bf3: PUSH1 0x20 00004bf5: DUP3 00004bf6: ADD 00004bf7: MLOAD 00004bf8: PUSH2 0x11e8 00004bfb: PUSH1 0x20 00004bfd: DUP6 00004bfe: ADD 00004bff: DUP3 00004c00: PUSH2 0x3c5e 00004c03: JUMP 00004c04: JUMPDEST 00004c05: DUP1 00004c06: MLOAD 00004c07: PUSH1 0x80 00004c09: DUP1 00004c0a: DUP5 00004c0b: MSTORE 00004c0c: PUSH1 0x00 00004c0e: SWAP2 00004c0f: SWAP1 00004c10: DUP5 00004c11: ADD 00004c12: SWAP1 00004c13: PUSH2 0x4c1c 00004c16: DUP3 00004c17: DUP3 00004c18: PUSH2 0x38f8 00004c1b: JUMP 00004c1c: JUMPDEST 00004c1d: SWAP2 00004c1e: POP 00004c1f: POP 00004c20: PUSH1 0x20 00004c22: DUP4 00004c23: ADD 00004c24: MLOAD 00004c25: PUSH2 0x4c31 00004c28: PUSH1 0x20 00004c2a: DUP7 00004c2b: ADD 00004c2c: DUP3 00004c2d: PUSH2 0x3c5e 00004c30: JUMP 00004c31: JUMPDEST 00004c32: POP 00004c33: PUSH1 0x40 00004c35: DUP4 00004c36: ADD 00004c37: MLOAD 00004c38: PUSH2 0x4c44 00004c3b: PUSH1 0x40 00004c3d: DUP7 00004c3e: ADD 00004c3f: DUP3 00004c40: PUSH2 0x37fa 00004c43: JUMP 00004c44: JUMPDEST 00004c45: POP 00004c46: PUSH1 0x60 00004c48: DUP4 00004c49: ADD 00004c4a: MLOAD 00004c4b: PUSH2 0x3a7d 00004c4e: PUSH1 0x60 00004c50: DUP7 00004c51: ADD 00004c52: DUP3 00004c53: PUSH2 0x3c5e 00004c56: JUMP 00004c57: JUMPDEST 00004c58: DUP1 00004c59: MLOAD 00004c5a: PUSH1 0x00 00004c5c: SWAP1 00004c5d: PUSH1 0xe0 00004c5f: DUP5 00004c60: ADD 00004c61: SWAP1 00004c62: PUSH2 0x4c6b 00004c65: DUP6 00004c66: DUP3 00004c67: PUSH2 0x37fa 00004c6a: JUMP 00004c6b: JUMPDEST 00004c6c: POP 00004c6d: PUSH1 0x20 00004c6f: DUP4 00004c70: ADD 00004c71: MLOAD 00004c72: PUSH2 0x4c7e 00004c75: PUSH1 0x20 00004c77: DUP7 00004c78: ADD 00004c79: DUP3 00004c7a: PUSH2 0x37fa 00004c7d: JUMP 00004c7e: JUMPDEST 00004c7f: POP 00004c80: PUSH1 0x40 00004c82: DUP4 00004c83: ADD 00004c84: MLOAD 00004c85: DUP5 00004c86: DUP3 00004c87: SUB 00004c88: PUSH1 0x40 00004c8a: DUP7 00004c8b: ADD 00004c8c: MSTORE 00004c8d: PUSH2 0x4c96 00004c90: DUP3 00004c91: DUP3 00004c92: PUSH2 0x4bb4 00004c95: JUMP 00004c96: JUMPDEST 00004c97: SWAP2 00004c98: POP 00004c99: POP 00004c9a: PUSH1 0x60 00004c9c: DUP4 00004c9d: ADD 00004c9e: MLOAD 00004c9f: PUSH2 0x4cab 00004ca2: PUSH1 0x60 00004ca4: DUP7 00004ca5: ADD 00004ca6: DUP3 00004ca7: PUSH2 0x4be0 00004caa: JUMP 00004cab: JUMPDEST 00004cac: POP 00004cad: PUSH1 0x80 00004caf: DUP4 00004cb0: ADD 00004cb1: MLOAD 00004cb2: DUP5 00004cb3: DUP3 00004cb4: SUB 00004cb5: PUSH1 0xa0 00004cb7: DUP7 00004cb8: ADD 00004cb9: MSTORE 00004cba: PUSH2 0x4cc3 00004cbd: DUP3 00004cbe: DUP3 00004cbf: PUSH2 0x4c04 00004cc2: JUMP 00004cc3: JUMPDEST 00004cc4: SWAP2 00004cc5: POP 00004cc6: POP 00004cc7: PUSH1 0xa0 00004cc9: DUP4 00004cca: ADD 00004ccb: MLOAD 00004ccc: PUSH2 0x3a7d 00004ccf: PUSH1 0xc0 00004cd1: DUP7 00004cd2: ADD 00004cd3: DUP3 00004cd4: PUSH2 0x37fa 00004cd7: JUMP 00004cd8: JUMPDEST 00004cd9: PUSH1 0x40 00004cdb: DUP1 00004cdc: DUP3 00004cdd: MSTORE 00004cde: DUP2 00004cdf: ADD 00004ce0: PUSH2 0x4ce9 00004ce3: DUP2 00004ce4: DUP6 00004ce5: PUSH2 0x4c57 00004ce8: JUMP 00004ce9: JUMPDEST 00004cea: SWAP1 00004ceb: POP 00004cec: DUP2 00004ced: DUP2 00004cee: SUB 00004cef: PUSH1 0x20 00004cf1: DUP4 00004cf2: ADD 00004cf3: MSTORE 00004cf4: PUSH2 0x32e4 00004cf7: DUP2 00004cf8: DUP5 00004cf9: PUSH2 0x38f8 00004cfc: JUMP 00004cfd: JUMPDEST 00004cfe: PUSH1 0x03 00004d00: DUP2 00004d01: LT 00004d02: PUSH2 0x0c9d 00004d05: JUMPI 00004d06: PUSH1 0x00 00004d08: DUP1 00004d09: REVERT 00004d0a: JUMPDEST 00004d0b: DUP1 00004d0c: MLOAD 00004d0d: PUSH2 0x2128 00004d10: DUP2 00004d11: PUSH2 0x4cfd 00004d14: JUMP 00004d15: JUMPDEST 00004d16: PUSH1 0x00 00004d18: PUSH1 0x20 00004d1a: DUP3 00004d1b: DUP5 00004d1c: SUB 00004d1d: SLT 00004d1e: ISZERO 00004d1f: PUSH2 0x4d2a 00004d22: JUMPI 00004d23: PUSH2 0x4d2a 00004d26: PUSH1 0x00 00004d28: DUP1 00004d29: REVERT 00004d2a: JUMPDEST 00004d2b: PUSH1 0x00 00004d2d: PUSH2 0x2124 00004d30: DUP5 00004d31: DUP5 00004d32: PUSH2 0x4d0a 00004d35: JUMP 00004d36: JUMPDEST 00004d37: PUSH4 0x4e487b71 00004d3c: PUSH1 0xe0 00004d3e: SHL 00004d3f: PUSH1 0x00 00004d41: MSTORE 00004d42: PUSH1 0x21 00004d44: PUSH1 0x04 00004d46: MSTORE 00004d47: PUSH1 0x24 00004d49: PUSH1 0x00 00004d4b: REVERT 00004d4c: JUMPDEST 00004d4d: PUSH1 0x60 00004d4f: DUP2 00004d50: ADD 00004d51: PUSH2 0x4d5a 00004d54: DUP3 00004d55: DUP7 00004d56: PUSH2 0x3c5e 00004d59: JUMP 00004d5a: JUMPDEST 00004d5b: PUSH2 0x4d67 00004d5e: PUSH1 0x20 00004d60: DUP4 00004d61: ADD 00004d62: DUP6 00004d63: PUSH2 0x3c5e 00004d66: JUMP 00004d67: JUMPDEST 00004d68: PUSH2 0x32e4 00004d6b: PUSH1 0x40 00004d6d: DUP4 00004d6e: ADD 00004d6f: DUP5 00004d70: PUSH2 0x37fa 00004d73: JUMP 00004d74: JUMPDEST 00004d75: PUSH1 0x1f 00004d77: DUP2 00004d78: MSTORE 00004d79: PUSH1 0x00 00004d7b: PUSH1 0x20 00004d7d: DUP3 00004d7e: ADD 00004d7f: PUSH32 0x546f6b656e536572766963653a2065746857697468647261774661696c656400 00004da0: DUP2 00004da1: MSTORE 00004da2: SWAP2 00004da3: POP 00004da4: PUSH2 0x48d9 00004da7: JUMP 00004da8: JUMPDEST 00004da9: PUSH1 0x20 00004dab: DUP1 00004dac: DUP3 00004dad: MSTORE 00004dae: DUP2 00004daf: ADD 00004db0: PUSH2 0x2128 00004db3: DUP2 00004db4: PUSH2 0x4d74 00004db7: JUMP 00004db8: JUMPDEST 00004db9: PUSH1 0x20 00004dbb: DUP1 00004dbc: DUP3 00004dbd: MSTORE 00004dbe: PUSH32 0x546f6b656e536572766963653a20696e73756666696369656e7451756f72756d 00004ddf: SWAP2 00004de0: ADD 00004de1: SWAP1 00004de2: DUP2 00004de3: MSTORE 00004de4: PUSH1 0x00 00004de6: PUSH2 0x48d9 00004de9: JUMP 00004dea: JUMPDEST 00004deb: PUSH1 0x20 00004ded: DUP1 00004dee: DUP3 00004def: MSTORE 00004df0: DUP2 00004df1: ADD 00004df2: PUSH2 0x2128 00004df5: DUP2 00004df6: PUSH2 0x4db8 00004df9: JUMP 00004dfa: JUMPDEST 00004dfb: PUSH1 0x1a 00004dfd: DUP2 00004dfe: MSTORE 00004dff: PUSH1 0x00 00004e01: PUSH1 0x20 00004e03: DUP3 00004e04: ADD 00004e05: PUSH32 0x546f6b656e537570706f72743a207a65726f2061646472657373000000000000 00004e26: DUP2 00004e27: MSTORE 00004e28: SWAP2 00004e29: POP 00004e2a: PUSH2 0x48d9 00004e2d: JUMP 00004e2e: JUMPDEST 00004e2f: PUSH1 0x20 00004e31: DUP1 00004e32: DUP3 00004e33: MSTORE 00004e34: DUP2 00004e35: ADD 00004e36: PUSH2 0x2128 00004e39: DUP2 00004e3a: PUSH2 0x4dfa 00004e3d: JUMP 00004e3e: JUMPDEST 00004e3f: PUSH1 0x25 00004e41: DUP2 00004e42: MSTORE 00004e43: PUSH1 0x00 00004e45: PUSH1 0x20 00004e47: DUP3 00004e48: ADD 00004e49: PUSH32 0x546f6b656e537570706f72743a20746f6b656e20616c72656164792073757070 00004e6a: DUP2 00004e6b: MSTORE 00004e6c: PUSH5 0x1bdc9d1959 00004e72: PUSH1 0xda 00004e74: SHL 00004e75: PUSH1 0x20 00004e77: DUP3 00004e78: ADD 00004e79: MSTORE 00004e7a: SWAP2 00004e7b: POP 00004e7c: PUSH2 0x3609 00004e7f: JUMP 00004e80: JUMPDEST 00004e81: PUSH1 0x20 00004e83: DUP1 00004e84: DUP3 00004e85: MSTORE 00004e86: DUP2 00004e87: ADD 00004e88: PUSH2 0x2128 00004e8b: DUP2 00004e8c: PUSH2 0x4e3e 00004e8f: JUMP 00004e90: JUMPDEST 00004e91: PUSH1 0x23 00004e93: DUP2 00004e94: MSTORE 00004e95: PUSH1 0x00 00004e97: PUSH1 0x20 00004e99: DUP3 00004e9a: ADD 00004e9b: PUSH32 0x546f6b656e537570706f72743a2074617267657420636861696e206d69736d61 00004ebc: DUP2 00004ebd: MSTORE 00004ebe: PUSH3 0x0e8c6d 00004ec2: PUSH1 0xeb 00004ec4: SHL 00004ec5: PUSH1 0x20 00004ec7: DUP3 00004ec8: ADD 00004ec9: MSTORE 00004eca: SWAP2 00004ecb: POP 00004ecc: PUSH2 0x3609 00004ecf: JUMP 00004ed0: JUMPDEST 00004ed1: PUSH1 0x20 00004ed3: DUP1 00004ed4: DUP3 00004ed5: MSTORE 00004ed6: DUP2 00004ed7: ADD 00004ed8: PUSH2 0x2128 00004edb: DUP2 00004edc: PUSH2 0x4e90 00004edf: JUMP 00004ee0: JUMPDEST 00004ee1: PUSH2 0x4ee9 00004ee4: DUP4 00004ee5: PUSH2 0x477a 00004ee8: JUMP 00004ee9: JUMPDEST 00004eea: DUP2 00004eeb: SLOAD 00004eec: PUSH1 0x00 00004eee: NOT 00004eef: PUSH1 0x08 00004ef1: SWAP5 00004ef2: SWAP1 00004ef3: SWAP5 00004ef4: MUL 00004ef5: SWAP4 00004ef6: DUP5 00004ef7: SHL 00004ef8: NOT 00004ef9: AND 00004efa: SWAP3 00004efb: SHL 00004efc: SWAP2 00004efd: SWAP1 00004efe: SWAP2 00004eff: OR 00004f00: SWAP1 00004f01: SSTORE 00004f02: POP 00004f03: JUMP 00004f04: JUMPDEST 00004f05: PUSH1 0x00 00004f07: PUSH2 0x281e 00004f0a: DUP2 00004f0b: DUP5 00004f0c: DUP5 00004f0d: PUSH2 0x4ee0 00004f10: JUMP 00004f11: JUMPDEST 00004f12: DUP2 00004f13: DUP2 00004f14: LT 00004f15: ISZERO 00004f16: PUSH2 0x0ebd 00004f19: JUMPI 00004f1a: PUSH2 0x4f24 00004f1d: PUSH1 0x00 00004f1f: DUP3 00004f20: PUSH2 0x4f04 00004f23: JUMP 00004f24: JUMPDEST 00004f25: PUSH1 0x01 00004f27: ADD 00004f28: PUSH2 0x4f11 00004f2b: JUMP 00004f2c: JUMPDEST 00004f2d: PUSH1 0x1f 00004f2f: DUP3 00004f30: GT 00004f31: ISZERO 00004f32: PUSH2 0x281e 00004f35: JUMPI 00004f36: PUSH1 0x00 00004f38: DUP2 00004f39: DUP2 00004f3a: MSTORE 00004f3b: PUSH1 0x20 00004f3d: SWAP1 00004f3e: KECCAK256 00004f3f: PUSH1 0x20 00004f41: PUSH1 0x1f 00004f43: DUP6 00004f44: ADD 00004f45: DIV 00004f46: DUP2 00004f47: ADD 00004f48: PUSH1 0x20 00004f4a: DUP6 00004f4b: LT 00004f4c: ISZERO 00004f4d: PUSH2 0x4f53 00004f50: JUMPI 00004f51: POP 00004f52: DUP1 00004f53: JUMPDEST 00004f54: PUSH2 0x1569 00004f57: PUSH1 0x20 00004f59: PUSH1 0x1f 00004f5b: DUP7 00004f5c: ADD 00004f5d: DIV 00004f5e: DUP4 00004f5f: ADD 00004f60: DUP3 00004f61: PUSH2 0x4f11 00004f64: JUMP 00004f65: JUMPDEST 00004f66: DUP2 00004f67: MLOAD 00004f68: PUSH1 0x01 00004f6a: PUSH1 0x01 00004f6c: PUSH1 0x40 00004f6e: SHL 00004f6f: SUB 00004f70: DUP2 00004f71: GT 00004f72: ISZERO 00004f73: PUSH2 0x4f7e 00004f76: JUMPI 00004f77: PUSH2 0x4f7e 00004f7a: PUSH2 0x39b0 00004f7d: JUMP 00004f7e: JUMPDEST 00004f7f: PUSH2 0x4f88 00004f82: DUP3 00004f83: SLOAD 00004f84: PUSH2 0x4803 00004f87: JUMP 00004f88: JUMPDEST 00004f89: PUSH2 0x4f93 00004f8c: DUP3 00004f8d: DUP3 00004f8e: DUP6 00004f8f: PUSH2 0x4f2c 00004f92: JUMP 00004f93: JUMPDEST 00004f94: PUSH1 0x20 00004f96: PUSH1 0x1f 00004f98: DUP4 00004f99: GT 00004f9a: PUSH1 0x01 00004f9c: DUP2 00004f9d: EQ 00004f9e: PUSH2 0x4fc7 00004fa1: JUMPI 00004fa2: PUSH1 0x00 00004fa4: DUP5 00004fa5: ISZERO 00004fa6: PUSH2 0x4faf 00004fa9: JUMPI 00004faa: POP 00004fab: DUP6 00004fac: DUP3 00004fad: ADD 00004fae: MLOAD 00004faf: JUMPDEST 00004fb0: PUSH1 0x00 00004fb2: NOT 00004fb3: PUSH1 0x08 00004fb5: DUP7 00004fb6: MUL 00004fb7: SHR 00004fb8: NOT 00004fb9: DUP2 00004fba: AND 00004fbb: PUSH1 0x02 00004fbd: DUP7 00004fbe: MUL 00004fbf: OR 00004fc0: DUP7 00004fc1: SSTORE 00004fc2: POP 00004fc3: PUSH2 0x0a2c 00004fc6: JUMP 00004fc7: JUMPDEST 00004fc8: PUSH1 0x00 00004fca: DUP6 00004fcb: DUP2 00004fcc: MSTORE 00004fcd: PUSH1 0x20 00004fcf: DUP2 00004fd0: KECCAK256 00004fd1: PUSH1 0x1f 00004fd3: NOT 00004fd4: DUP7 00004fd5: AND 00004fd6: SWAP2 00004fd7: JUMPDEST 00004fd8: DUP3 00004fd9: DUP2 00004fda: LT 00004fdb: ISZERO 00004fdc: PUSH2 0x4ff7 00004fdf: JUMPI 00004fe0: DUP9 00004fe1: DUP6 00004fe2: ADD 00004fe3: MLOAD 00004fe4: DUP3 00004fe5: SSTORE 00004fe6: PUSH1 0x20 00004fe8: SWAP5 00004fe9: DUP6 00004fea: ADD 00004feb: SWAP5 00004fec: PUSH1 0x01 00004fee: SWAP1 00004fef: SWAP3 00004ff0: ADD 00004ff1: SWAP2 00004ff2: ADD 00004ff3: PUSH2 0x4fd7 00004ff6: JUMP 00004ff7: JUMPDEST 00004ff8: DUP7 00004ff9: DUP4 00004ffa: LT 00004ffb: ISZERO 00004ffc: PUSH2 0x5013 00004fff: JUMPI 00005000: DUP5 00005001: DUP10 00005002: ADD 00005003: MLOAD 00005004: PUSH1 0x00 00005006: NOT 00005007: PUSH1 0x1f 00005009: DUP10 0000500a: AND 0000500b: PUSH1 0x08 0000500d: MUL 0000500e: SHR 0000500f: NOT 00005010: AND 00005011: DUP3 00005012: SSTORE 00005013: JUMPDEST 00005014: PUSH1 0x01 00005016: PUSH1 0x02 00005018: DUP9 00005019: MUL 0000501a: ADD 0000501b: DUP9 0000501c: SSTORE 0000501d: POP 0000501e: POP 0000501f: POP 00005020: POP 00005021: POP 00005022: POP 00005023: POP 00005024: POP 00005025: POP 00005026: JUMP 00005027: JUMPDEST 00005028: DUP1 00005029: MLOAD 0000502a: PUSH1 0x00 0000502c: SWAP1 0000502d: PUSH1 0xe0 0000502f: DUP5 00005030: ADD 00005031: SWAP1 00005032: PUSH2 0x503b 00005035: DUP6 00005036: DUP3 00005037: PUSH2 0x3c5e 0000503a: JUMP 0000503b: JUMPDEST 0000503c: POP 0000503d: PUSH1 0x20 0000503f: DUP4 00005040: ADD 00005041: MLOAD 00005042: PUSH2 0x504e 00005045: PUSH1 0x20 00005047: DUP7 00005048: ADD 00005049: DUP3 0000504a: PUSH2 0x3c5e 0000504d: JUMP 0000504e: JUMPDEST 0000504f: POP 00005050: PUSH1 0x40 00005052: DUP4 00005053: ADD 00005054: MLOAD 00005055: DUP5 00005056: DUP3 00005057: SUB 00005058: PUSH1 0x40 0000505a: DUP7 0000505b: ADD 0000505c: MSTORE 0000505d: PUSH2 0x5066 00005060: DUP3 00005061: DUP3 00005062: PUSH2 0x38f8 00005065: JUMP 00005066: JUMPDEST 00005067: SWAP2 00005068: POP 00005069: POP 0000506a: PUSH1 0x60 0000506c: DUP4 0000506d: ADD 0000506e: MLOAD 0000506f: DUP5 00005070: DUP3 00005071: SUB 00005072: PUSH1 0x60 00005074: DUP7 00005075: ADD 00005076: MSTORE 00005077: PUSH2 0x5080 0000507a: DUP3 0000507b: DUP3 0000507c: PUSH2 0x38f8 0000507f: JUMP 00005080: JUMPDEST 00005081: SWAP2 00005082: POP 00005083: POP 00005084: PUSH1 0x80 00005086: DUP4 00005087: ADD 00005088: MLOAD 00005089: PUSH2 0x5095 0000508c: PUSH1 0x80 0000508e: DUP7 0000508f: ADD 00005090: DUP3 00005091: PUSH2 0x37fa 00005094: JUMP 00005095: JUMPDEST 00005096: POP 00005097: PUSH1 0xa0 00005099: DUP4 0000509a: ADD 0000509b: MLOAD 0000509c: PUSH2 0x50a8 0000509f: PUSH1 0xa0 000050a1: DUP7 000050a2: ADD 000050a3: DUP3 000050a4: PUSH2 0x37fa 000050a7: JUMP 000050a8: JUMPDEST 000050a9: POP 000050aa: PUSH1 0xc0 000050ac: DUP4 000050ad: ADD 000050ae: MLOAD 000050af: PUSH2 0x3a7d 000050b2: PUSH1 0xc0 000050b4: DUP7 000050b5: ADD 000050b6: DUP3 000050b7: PUSH2 0x37e2 000050ba: JUMP 000050bb: JUMPDEST 000050bc: PUSH1 0x40 000050be: DUP1 000050bf: DUP3 000050c0: MSTORE 000050c1: DUP2 000050c2: ADD 000050c3: PUSH2 0x50cc 000050c6: DUP2 000050c7: DUP6 000050c8: PUSH2 0x5027 000050cb: JUMP 000050cc: JUMPDEST 000050cd: SWAP1 000050ce: POP 000050cf: PUSH2 0x32ce 000050d2: PUSH1 0x20 000050d4: DUP4 000050d5: ADD 000050d6: DUP5 000050d7: PUSH2 0x37fa 000050da: JUMP 000050db: JUMPDEST 000050dc: PUSH1 0x24 000050de: DUP2 000050df: MSTORE 000050e0: PUSH1 0x00 000050e2: PUSH1 0x20 000050e4: DUP3 000050e5: ADD 000050e6: PUSH32 0x546f6b656e537570706f72743a20746f6b656e20616c72656164792064697361 00005107: DUP2 00005108: MSTORE 00005109: PUSH4 0x189b1959 0000510e: PUSH1 0xe2 00005110: SHL 00005111: PUSH1 0x20 00005113: DUP3 00005114: ADD 00005115: MSTORE 00005116: SWAP2 00005117: POP 00005118: PUSH2 0x3609 0000511b: JUMP 0000511c: JUMPDEST 0000511d: PUSH1 0x20 0000511f: DUP1 00005120: DUP3 00005121: MSTORE 00005122: DUP2 00005123: ADD 00005124: PUSH2 0x2128 00005127: DUP2 00005128: PUSH2 0x50db 0000512b: JUMP 0000512c: JUMPDEST 0000512d: PUSH1 0x26 0000512f: DUP2 00005130: MSTORE 00005131: PUSH1 0x00 00005133: PUSH1 0x20 00005135: DUP3 00005136: ADD 00005137: PUSH32 0x4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061 00005158: DUP2 00005159: MSTORE 0000515a: PUSH6 0x646472657373 00005161: PUSH1 0xd0 00005163: SHL 00005164: PUSH1 0x20 00005166: DUP3 00005167: ADD 00005168: MSTORE 00005169: SWAP2 0000516a: POP 0000516b: PUSH2 0x3609 0000516e: JUMP 0000516f: JUMPDEST 00005170: PUSH1 0x20 00005172: DUP1 00005173: DUP3 00005174: MSTORE 00005175: DUP2 00005176: ADD 00005177: PUSH2 0x2128 0000517a: DUP2 0000517b: PUSH2 0x512c 0000517e: JUMP 0000517f: JUMPDEST 00005180: PUSH1 0x2e 00005182: DUP2 00005183: MSTORE 00005184: PUSH1 0x00 00005186: PUSH1 0x20 00005188: DUP3 00005189: ADD 0000518a: PUSH32 0x496e697469616c697a61626c653a20636f6e747261637420697320616c726561 000051ab: DUP2 000051ac: MSTORE 000051ad: PUSH14 0x191e481a5b9a5d1a585b1a5e9959 000051bc: PUSH1 0x92 000051be: SHL 000051bf: PUSH1 0x20 000051c1: DUP3 000051c2: ADD 000051c3: MSTORE 000051c4: SWAP2 000051c5: POP 000051c6: PUSH2 0x3609 000051c9: JUMP 000051ca: JUMPDEST 000051cb: PUSH1 0x20 000051cd: DUP1 000051ce: DUP3 000051cf: MSTORE 000051d0: DUP2 000051d1: ADD 000051d2: PUSH2 0x2128 000051d5: DUP2 000051d6: PUSH2 0x517f 000051d9: JUMP 000051da: JUMPDEST 000051db: PUSH1 0x00 000051dd: PUSH1 0xff 000051df: DUP3 000051e0: AND 000051e1: PUSH2 0x2128 000051e4: JUMP 000051e5: JUMPDEST 000051e6: PUSH2 0x37e6 000051e9: DUP2 000051ea: PUSH2 0x51da 000051ed: JUMP 000051ee: JUMPDEST 000051ef: PUSH1 0x20 000051f1: DUP2 000051f2: ADD 000051f3: PUSH2 0x2128 000051f6: DUP3 000051f7: DUP5 000051f8: PUSH2 0x51e5 000051fb: JUMP 000051fc: JUMPDEST 000051fd: PUSH1 0x10 000051ff: DUP2 00005200: MSTORE 00005201: PUSH1 0x00 00005203: PUSH1 0x20 00005205: DUP3 00005206: ADD 00005207: PUSH16 0x14185d5cd8589b194e881c185d5cd959 00005218: PUSH1 0x82 0000521a: SHL 0000521b: DUP2 0000521c: MSTORE 0000521d: SWAP2 0000521e: POP 0000521f: PUSH2 0x48d9 00005222: JUMP 00005223: JUMPDEST 00005224: PUSH1 0x20 00005226: DUP1 00005227: DUP3 00005228: MSTORE 00005229: DUP2 0000522a: ADD 0000522b: PUSH2 0x2128 0000522e: DUP2 0000522f: PUSH2 0x51fc 00005232: JUMP 00005233: JUMPDEST 00005234: PUSH1 0x1f 00005236: DUP2 00005237: MSTORE 00005238: PUSH1 0x00 0000523a: PUSH1 0x20 0000523c: DUP3 0000523d: ADD 0000523e: PUSH32 0x5265656e7472616e637947756172643a207265656e7472616e742063616c6c00 0000525f: DUP2 00005260: MSTORE 00005261: SWAP2 00005262: POP 00005263: PUSH2 0x48d9 00005266: JUMP 00005267: JUMPDEST 00005268: PUSH1 0x20 0000526a: DUP1 0000526b: DUP3 0000526c: MSTORE 0000526d: DUP2 0000526e: ADD 0000526f: PUSH2 0x2128 00005272: DUP2 00005273: PUSH2 0x5233 00005276: JUMP 00005277: JUMPDEST 00005278: PUSH1 0x24 0000527a: DUP2 0000527b: MSTORE 0000527c: PUSH1 0x00 0000527e: PUSH1 0x20 00005280: DUP3 00005281: ADD 00005282: PUSH32 0x546f6b656e536572766963653a20496e76616c69645265636569766572416464 000052a3: DUP2 000052a4: MSTORE 000052a5: PUSH4 0x72657373 000052aa: PUSH1 0xe0 000052ac: SHL 000052ad: PUSH1 0x20 000052af: DUP3 000052b0: ADD 000052b1: MSTORE 000052b2: SWAP2 000052b3: POP 000052b4: PUSH2 0x3609 000052b7: JUMP 000052b8: JUMPDEST 000052b9: PUSH1 0x20 000052bb: DUP1 000052bc: DUP3 000052bd: MSTORE 000052be: DUP2 000052bf: ADD 000052c0: PUSH2 0x2128 000052c3: DUP2 000052c4: PUSH2 0x5277 000052c7: JUMP 000052c8: JUMPDEST 000052c9: DUP1 000052ca: MLOAD 000052cb: PUSH1 0x00 000052cd: SWAP1 000052ce: PUSH1 0x80 000052d0: DUP5 000052d1: ADD 000052d2: SWAP1 000052d3: PUSH2 0x52dc 000052d6: DUP6 000052d7: DUP3 000052d8: PUSH2 0x3c5e 000052db: JUMP 000052dc: JUMPDEST 000052dd: POP 000052de: PUSH1 0x20 000052e0: DUP4 000052e1: ADD 000052e2: MLOAD 000052e3: DUP5 000052e4: DUP3 000052e5: SUB 000052e6: PUSH1 0x20 000052e8: DUP7 000052e9: ADD 000052ea: MSTORE 000052eb: PUSH2 0x52f4 000052ee: DUP3 000052ef: DUP3 000052f0: PUSH2 0x38f8 000052f3: JUMP 000052f4: JUMPDEST 000052f5: SWAP2 000052f6: POP 000052f7: POP 000052f8: PUSH1 0x40 000052fa: DUP4 000052fb: ADD 000052fc: MLOAD 000052fd: PUSH2 0x5309 00005300: PUSH1 0x40 00005302: DUP7 00005303: ADD 00005304: DUP3 00005305: PUSH2 0x37fa 00005308: JUMP 00005309: JUMPDEST 0000530a: POP 0000530b: PUSH1 0x60 0000530d: DUP4 0000530e: ADD 0000530f: MLOAD 00005310: DUP5 00005311: DUP3 00005312: SUB 00005313: PUSH1 0x60 00005315: DUP7 00005316: ADD 00005317: MSTORE 00005318: PUSH2 0x2e4b 0000531b: DUP3 0000531c: DUP3 0000531d: PUSH2 0x38f8 00005320: JUMP 00005321: JUMPDEST 00005322: DUP1 00005323: MLOAD 00005324: PUSH1 0x00 00005326: SWAP1 00005327: PUSH1 0xe0 00005329: DUP5 0000532a: ADD 0000532b: SWAP1 0000532c: PUSH2 0x5335 0000532f: DUP6 00005330: DUP3 00005331: PUSH2 0x37fa 00005334: JUMP 00005335: JUMPDEST 00005336: POP 00005337: PUSH1 0x20 00005339: DUP4 0000533a: ADD 0000533b: MLOAD 0000533c: PUSH2 0x5348 0000533f: PUSH1 0x20 00005341: DUP7 00005342: ADD 00005343: DUP3 00005344: PUSH2 0x37fa 00005347: JUMP 00005348: JUMPDEST 00005349: POP 0000534a: PUSH1 0x40 0000534c: DUP4 0000534d: ADD 0000534e: MLOAD 0000534f: PUSH2 0x535b 00005352: PUSH1 0x40 00005354: DUP7 00005355: ADD 00005356: DUP3 00005357: PUSH2 0x4be0 0000535a: JUMP 0000535b: JUMPDEST 0000535c: POP 0000535d: PUSH1 0x60 0000535f: DUP4 00005360: ADD 00005361: MLOAD 00005362: DUP5 00005363: DUP3 00005364: SUB 00005365: PUSH1 0x80 00005367: DUP7 00005368: ADD 00005369: MSTORE 0000536a: PUSH2 0x5373 0000536d: DUP3 0000536e: DUP3 0000536f: PUSH2 0x4bb4 00005372: JUMP 00005373: JUMPDEST 00005374: SWAP2 00005375: POP 00005376: POP 00005377: PUSH1 0x80 00005379: DUP4 0000537a: ADD 0000537b: MLOAD 0000537c: DUP5 0000537d: DUP3 0000537e: SUB 0000537f: PUSH1 0xa0 00005381: DUP7 00005382: ADD 00005383: MSTORE 00005384: PUSH2 0x4cc3 00005387: DUP3 00005388: DUP3 00005389: PUSH2 0x52c8 0000538c: JUMP 0000538d: JUMPDEST 0000538e: PUSH1 0x40 00005390: DUP1 00005391: DUP3 00005392: MSTORE 00005393: DUP2 00005394: ADD 00005395: PUSH2 0x4ce9 00005398: DUP2 00005399: DUP6 0000539a: PUSH2 0x5321 0000539d: JUMP 0000539e: JUMPDEST 0000539f: PUSH1 0x20 000053a1: DUP1 000053a2: DUP3 000053a3: MSTORE 000053a4: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572 000053c5: SWAP2 000053c6: ADD 000053c7: SWAP1 000053c8: DUP2 000053c9: MSTORE 000053ca: PUSH1 0x00 000053cc: PUSH2 0x48d9 000053cf: JUMP 000053d0: JUMPDEST 000053d1: PUSH1 0x20 000053d3: DUP1 000053d4: DUP3 000053d5: MSTORE 000053d6: DUP2 000053d7: ADD 000053d8: PUSH2 0x2128 000053db: DUP2 000053dc: PUSH2 0x539e 000053df: JUMP 000053e0: JUMPDEST 000053e1: PUSH1 0x20 000053e3: DUP1 000053e4: DUP3 000053e5: MSTORE 000053e6: DUP2 000053e7: ADD 000053e8: PUSH2 0x32e4 000053eb: DUP2 000053ec: DUP5 000053ed: DUP7 000053ee: PUSH2 0x418d 000053f1: JUMP 000053f2: JUMPDEST 000053f3: PUSH1 0x1b 000053f5: DUP2 000053f6: MSTORE 000053f7: PUSH1 0x00 000053f9: PUSH1 0x20 000053fb: DUP3 000053fc: ADD 000053fd: PUSH32 0x546f6b656e536572766963653a206574684e6f74416c6c6f7765640000000000 0000541e: DUP2 0000541f: MSTORE 00005420: SWAP2 00005421: POP 00005422: PUSH2 0x48d9 00005425: JUMP 00005426: JUMPDEST 00005427: PUSH1 0x20 00005429: DUP1 0000542a: DUP3 0000542b: MSTORE 0000542c: DUP2 0000542d: ADD 0000542e: PUSH2 0x2128 00005431: DUP2 00005432: PUSH2 0x53f2 00005435: JUMP 00005436: JUMPDEST 00005437: DUP1 00005438: MLOAD 00005439: PUSH2 0x2128 0000543c: DUP2 0000543d: PUSH2 0x380e 00005440: JUMP 00005441: JUMPDEST 00005442: PUSH1 0x00 00005444: PUSH1 0x20 00005446: DUP3 00005447: DUP5 00005448: SUB 00005449: SLT 0000544a: ISZERO 0000544b: PUSH2 0x5456 0000544e: JUMPI 0000544f: PUSH2 0x5456 00005452: PUSH1 0x00 00005454: DUP1 00005455: REVERT 00005456: JUMPDEST 00005457: PUSH1 0x00 00005459: PUSH2 0x2124 0000545c: DUP5 0000545d: DUP5 0000545e: PUSH2 0x5436 00005461: JUMP 00005462: JUMPDEST 00005463: PUSH1 0x2e 00005465: DUP2 00005466: MSTORE 00005467: PUSH1 0x00 00005469: PUSH1 0x20 0000546b: DUP3 0000546c: ADD 0000546d: PUSH32 0x45524331393637557067726164653a206e657720696d706c656d656e74617469 0000548e: DUP2 0000548f: MSTORE 00005490: PUSH14 0x6f6e206973206e6f742055555053 0000549f: PUSH1 0x90 000054a1: SHL 000054a2: PUSH1 0x20 000054a4: DUP3 000054a5: ADD 000054a6: MSTORE 000054a7: SWAP2 000054a8: POP 000054a9: PUSH2 0x3609 000054ac: JUMP 000054ad: JUMPDEST 000054ae: PUSH1 0x20 000054b0: DUP1 000054b1: DUP3 000054b2: MSTORE 000054b3: DUP2 000054b4: ADD 000054b5: PUSH2 0x2128 000054b8: DUP2 000054b9: PUSH2 0x5462 000054bc: JUMP 000054bd: JUMPDEST 000054be: PUSH1 0x29 000054c0: DUP2 000054c1: MSTORE 000054c2: PUSH1 0x00 000054c4: PUSH1 0x20 000054c6: DUP3 000054c7: ADD 000054c8: PUSH32 0x45524331393637557067726164653a20756e737570706f727465642070726f78 000054e9: DUP2 000054ea: MSTORE 000054eb: PUSH9 0x1a58589b1955555251 000054f5: PUSH1 0xba 000054f7: SHL 000054f8: PUSH1 0x20 000054fa: DUP3 000054fb: ADD 000054fc: MSTORE 000054fd: SWAP2 000054fe: POP 000054ff: PUSH2 0x3609 00005502: JUMP 00005503: JUMPDEST 00005504: PUSH1 0x20 00005506: DUP1 00005507: DUP3 00005508: MSTORE 00005509: DUP2 0000550a: ADD 0000550b: PUSH2 0x2128 0000550e: DUP2 0000550f: PUSH2 0x54bd 00005512: JUMP 00005513: JUMPDEST 00005514: PUSH1 0x14 00005516: DUP2 00005517: MSTORE 00005518: PUSH1 0x00 0000551a: PUSH1 0x20 0000551c: DUP3 0000551d: ADD 0000551e: PUSH32 0x5061757361626c653a206e6f7420706175736564000000000000000000000000 0000553f: DUP2 00005540: MSTORE 00005541: SWAP2 00005542: POP 00005543: PUSH2 0x48d9 00005546: JUMP 00005547: JUMPDEST 00005548: PUSH1 0x20 0000554a: DUP1 0000554b: DUP3 0000554c: MSTORE 0000554d: DUP2 0000554e: ADD 0000554f: PUSH2 0x2128 00005552: DUP2 00005553: PUSH2 0x5513 00005556: JUMP 00005557: JUMPDEST 00005558: PUSH1 0x2b 0000555a: DUP2 0000555b: MSTORE 0000555c: PUSH1 0x00 0000555e: PUSH1 0x20 00005560: DUP3 00005561: ADD 00005562: PUSH32 0x496e697469616c697a61626c653a20636f6e7472616374206973206e6f742069 00005583: DUP2 00005584: MSTORE 00005585: PUSH11 0x6e697469616c697a696e67 00005591: PUSH1 0xa8 00005593: SHL 00005594: PUSH1 0x20 00005596: DUP3 00005597: ADD 00005598: MSTORE 00005599: SWAP2 0000559a: POP 0000559b: PUSH2 0x3609 0000559e: JUMP 0000559f: JUMPDEST 000055a0: PUSH1 0x20 000055a2: DUP1 000055a3: DUP3 000055a4: MSTORE 000055a5: DUP2 000055a6: ADD 000055a7: PUSH2 0x2128 000055aa: DUP2 000055ab: PUSH2 0x5557 000055ae: JUMP 000055af: JUMPDEST 000055b0: PUSH1 0x1d 000055b2: DUP2 000055b3: MSTORE 000055b4: PUSH1 0x00 000055b6: PUSH1 0x20 000055b8: DUP3 000055b9: ADD 000055ba: PUSH32 0x546f6b656e536572766963653a206e6f74456e6f756768416d6f756e74000000 000055db: DUP2 000055dc: MSTORE 000055dd: SWAP2 000055de: POP 000055df: PUSH2 0x48d9 000055e2: JUMP 000055e3: JUMPDEST 000055e4: PUSH1 0x20 000055e6: DUP1 000055e7: DUP3 000055e8: MSTORE 000055e9: DUP2 000055ea: ADD 000055eb: PUSH2 0x2128 000055ee: DUP2 000055ef: PUSH2 0x55af 000055f2: JUMP 000055f3: JUMPDEST 000055f4: PUSH4 0x4e487b71 000055f9: PUSH1 0xe0 000055fb: SHL 000055fc: PUSH1 0x00 000055fe: MSTORE 000055ff: PUSH1 0x11 00005601: PUSH1 0x04 00005603: MSTORE 00005604: PUSH1 0x24 00005606: PUSH1 0x00 00005608: REVERT 00005609: JUMPDEST 0000560a: DUP2 0000560b: DUP2 0000560c: MUL 0000560d: DUP1 0000560e: DUP3 0000560f: ISZERO 00005610: DUP4 00005611: DUP3 00005612: DIV 00005613: DUP6 00005614: EQ 00005615: OR 00005616: PUSH2 0x5621 00005619: JUMPI 0000561a: PUSH2 0x5621 0000561d: PUSH2 0x55f3 00005620: JUMP 00005621: JUMPDEST 00005622: POP 00005623: SWAP3 00005624: SWAP2 00005625: POP 00005626: POP 00005627: JUMP 00005628: JUMPDEST 00005629: PUSH4 0x4e487b71 0000562e: PUSH1 0xe0 00005630: SHL 00005631: PUSH1 0x00 00005633: MSTORE 00005634: PUSH1 0x12 00005636: PUSH1 0x04 00005638: MSTORE 00005639: PUSH1 0x24 0000563b: PUSH1 0x00 0000563d: REVERT 0000563e: JUMPDEST 0000563f: PUSH1 0x00 00005641: DUP3 00005642: PUSH2 0x564d 00005645: JUMPI 00005646: PUSH2 0x564d 00005649: PUSH2 0x5628 0000564c: JUMP 0000564d: JUMPDEST 0000564e: POP 0000564f: DIV 00005650: SWAP1 00005651: JUMP 00005652: JUMPDEST 00005653: DUP1 00005654: DUP3 00005655: ADD 00005656: DUP1 00005657: DUP3 00005658: GT 00005659: ISZERO 0000565a: PUSH2 0x2128 0000565d: JUMPI 0000565e: PUSH2 0x2128 00005661: PUSH2 0x55f3 00005664: JUMP 00005665: JUMPDEST 00005666: PUSH1 0x20 00005668: DUP1 00005669: DUP3 0000566a: MSTORE 0000566b: PUSH32 0x546f6b656e536572766963653a20666565735472616e736665724661696c6564 0000568c: SWAP2 0000568d: ADD 0000568e: SWAP1 0000568f: DUP2 00005690: MSTORE 00005691: PUSH1 0x00 00005693: PUSH2 0x48d9 00005696: JUMP 00005697: JUMPDEST 00005698: PUSH1 0x20 0000569a: DUP1 0000569b: DUP3 0000569c: MSTORE 0000569d: DUP2 0000569e: ADD 0000569f: PUSH2 0x2128 000056a2: DUP2 000056a3: PUSH2 0x5665 000056a6: JUMP 000056a7: JUMPDEST 000056a8: DUP2 000056a9: DUP2 000056aa: SUB 000056ab: DUP2 000056ac: DUP2 000056ad: GT 000056ae: ISZERO 000056af: PUSH2 0x2128 000056b2: JUMPI 000056b3: PUSH2 0x2128 000056b6: PUSH2 0x55f3 000056b9: JUMP 000056ba: JUMPDEST 000056bb: PUSH1 0x2d 000056bd: DUP2 000056be: MSTORE 000056bf: PUSH1 0x00 000056c1: PUSH1 0x20 000056c3: DUP3 000056c4: ADD 000056c5: PUSH32 0x455243313936373a206e657720696d706c656d656e746174696f6e206973206e 000056e6: DUP2 000056e7: MSTORE 000056e8: PUSH13 0x1bdd08184818dbdb9d1c9858dd 000056f6: PUSH1 0x9a 000056f8: SHL 000056f9: PUSH1 0x20 000056fb: DUP3 000056fc: ADD 000056fd: MSTORE 000056fe: SWAP2 000056ff: POP 00005700: PUSH2 0x3609 00005703: JUMP 00005704: JUMPDEST 00005705: PUSH1 0x20 00005707: DUP1 00005708: DUP3 00005709: MSTORE 0000570a: DUP2 0000570b: ADD 0000570c: PUSH2 0x2128 0000570f: DUP2 00005710: PUSH2 0x56ba 00005713: JUMP 00005714: JUMPDEST 00005715: PUSH1 0x2a 00005717: DUP2 00005718: MSTORE 00005719: PUSH1 0x00 0000571b: PUSH1 0x20 0000571d: DUP3 0000571e: ADD 0000571f: PUSH32 0x5361666545524332303a204552433230206f7065726174696f6e20646964206e 00005740: DUP2 00005741: MSTORE 00005742: PUSH10 0x1bdd081cdd58d8d95959 0000574d: PUSH1 0xb2 0000574f: SHL 00005750: PUSH1 0x20 00005752: DUP3 00005753: ADD 00005754: MSTORE 00005755: SWAP2 00005756: POP 00005757: PUSH2 0x3609 0000575a: JUMP 0000575b: JUMPDEST 0000575c: PUSH1 0x20 0000575e: DUP1 0000575f: DUP3 00005760: MSTORE 00005761: DUP2 00005762: ADD 00005763: PUSH2 0x2128 00005766: DUP2 00005767: PUSH2 0x5714 0000576a: JUMP 0000576b: JUMPDEST 0000576c: PUSH1 0x20 0000576e: DUP1 0000576f: DUP3 00005770: MSTORE 00005771: PUSH32 0x546f6b656e536572766963653a2073656e64657220626c61636b6c6973746564 00005792: SWAP2 00005793: ADD 00005794: SWAP1 00005795: DUP2 00005796: MSTORE 00005797: PUSH1 0x00 00005799: PUSH2 0x48d9 0000579c: JUMP 0000579d: JUMPDEST 0000579e: PUSH1 0x20 000057a0: DUP1 000057a1: DUP3 000057a2: MSTORE 000057a3: DUP2 000057a4: ADD 000057a5: PUSH2 0x2128 000057a8: DUP2 000057a9: PUSH2 0x576b 000057ac: JUMP 000057ad: JUMPDEST 000057ae: PUSH1 0x21 000057b0: DUP2 000057b1: MSTORE 000057b2: PUSH1 0x00 000057b4: PUSH1 0x20 000057b6: DUP3 000057b7: ADD 000057b8: PUSH32 0x546f6b656e536572766963653a20616d6f756e74206f7574206f662072616e67 000057d9: DUP2 000057da: MSTORE 000057db: PUSH1 0x65 000057dd: PUSH1 0xf8 000057df: SHL 000057e0: PUSH1 0x20 000057e2: DUP3 000057e3: ADD 000057e4: MSTORE 000057e5: SWAP2 000057e6: POP 000057e7: PUSH2 0x3609 000057ea: JUMP 000057eb: JUMPDEST 000057ec: PUSH1 0x20 000057ee: DUP1 000057ef: DUP3 000057f0: MSTORE 000057f1: DUP2 000057f2: ADD 000057f3: PUSH2 0x2128 000057f6: DUP2 000057f7: PUSH2 0x57ad 000057fa: JUMP 000057fb: JUMPDEST 000057fc: PUSH1 0x26 000057fe: DUP2 000057ff: MSTORE 00005800: PUSH1 0x00 00005802: PUSH1 0x20 00005804: DUP3 00005805: ADD 00005806: PUSH32 0x416464726573733a20696e73756666696369656e742062616c616e636520666f 00005827: DUP2 00005828: MSTORE 00005829: PUSH6 0x1c8818d85b1b 00005830: PUSH1 0xd2 00005832: SHL 00005833: PUSH1 0x20 00005835: DUP3 00005836: ADD 00005837: MSTORE 00005838: SWAP2 00005839: POP 0000583a: PUSH2 0x3609 0000583d: JUMP 0000583e: JUMPDEST 0000583f: PUSH1 0x20 00005841: DUP1 00005842: DUP3 00005843: MSTORE 00005844: DUP2 00005845: ADD 00005846: PUSH2 0x2128 00005849: DUP2 0000584a: PUSH2 0x57fb 0000584d: JUMP 0000584e: JUMPDEST 0000584f: PUSH1 0x1d 00005851: DUP2 00005852: MSTORE 00005853: PUSH1 0x00 00005855: PUSH1 0x20 00005857: DUP3 00005858: ADD 00005859: PUSH32 0x416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000 0000587a: DUP2 0000587b: MSTORE 0000587c: SWAP2 0000587d: POP 0000587e: PUSH2 0x48d9 00005881: JUMP 00005882: JUMPDEST 00005883: PUSH1 0x20 00005885: DUP1 00005886: DUP3 00005887: MSTORE 00005888: DUP2 00005889: ADD 0000588a: PUSH2 0x2128 0000588d: DUP2 0000588e: PUSH2 0x584e 00005891: JUMP 00005892: INVALID 00005893: COINBASE 00005894: PUSH5 0x6472657373 0000589a: GASPRICE 0000589b: KECCAK256 0000589c: PUSH13 0x6f772d6c6576656c2064656c65 000058aa: PUSH8 0x6174652063616c6c 000058b3: KECCAK256 000058b4: PUSH7 0x61696c6564a264 000058bc: PUSH10 0x70667358221220d7c4b7 000058c7: SWAP2 000058c8: DUP16 000058c9: UNKNOWN(0xB0) 000058ca: UNKNOWN(0xBF) 000058cb: UNKNOWN(0xD2) 000058cc: DUP15 000058cd: UNKNOWN(0xE3) 000058ce: UNKNOWN(0xEE) 000058cf: DIFFICULTY 000058d0: DUP1 000058d1: UNKNOWN(0xBA) 000058d2: UNKNOWN(0xFC) 000058d3: UNKNOWN(0xA8) 000058d4: UNKNOWN(0x4D) 000058d5: EXTCODESIZE 000058d6: DUP13 000058d7: SUB 000058d8: COINBASE 000058d9: CALLDATASIZE 000058da: TIMESTAMP 000058db: MLOAD 000058dc: PUSH9 0x38982c14263e696473 000058e6: PUSH16
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| critical | upgradeability | detector | Untrusted DELEGATECALL target reachable | 70 | no | no |
viewtrace_id: 0x4f4052027886fa09c83d0983f4e2c9427a42252d4944658b060fe6f816052ee2
validation_json{
"sink": "DELEGATECALL",
"errors": 0,
"status": "unknown",
"attempts": 192,
"trace_id": "0x4f4052027886fa09c83d0983f4e2c9427a42252d4944658b060fe6f816052ee2",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfbc9a662",
"selector": "0xfbc9a662",
"calldata_variants": [
"0xfbc9a662",
"0xfbc9a6620000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xff8b1f8d",
"selector": "0xff8b1f8d",
"calldata_variants": [
"0xff8b1f8d",
"0xff8b1f8d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd451c20a",
"selector": "0xd451c20a",
"calldata_variants": [
"0xd451c20a",
"0xd451c20a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdcbeeb23",
"selector": "0xdcbeeb23",
"calldata_variants": [
"0xdcbeeb23",
"0xdcbeeb230000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe6c09edf",
"selector": "0xe6c09edf",
"calldata_variants": [
"0xe6c09edf",
"0xe6c09edf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc354c62f",
"selector": "0xc354c62f",
"calldata_variants": [
"0xc354c62f",
"0xc354c62f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc415b95c",
"selector": "0xc415b95c",
"calldata_variants": [
"0xc415b95c",
"0xc415b95c0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 13077,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
}
],
"guards_detected": [],
"delegatecall_count": 1,
"untrusted_delegatecall_count": 1
}
|
| high | auth | codex | Packet hashing uses abi.encodePacked with dynamic strings (collision-prone) | 85 | no | — |
viewevidence_json{
"evidence": "PacketLibrary.hash uses keccak256(abi.encodePacked(...)) including multiple string fields.",
"locations": [
"contracts/contracts/common/libraries/PacketLibrary.sol:79",
"contracts/contracts/common/libraries/PacketLibrary.sol:98"
],
"recommendation": "Hash packets with length\u2011delimited encoding (e.g., keccak256(abi.encode(...))) or hash each dynamic field separately (keccak256(bytes(str))) and include those hashes in the final digest. Consider EIP-712 typed data for signature binding.",
"exploit_scenario": "If attestors/bridge signatures are produced over PacketLibrary.hash, an attacker can craft two different packets with colliding packed encodings (e.g., varying string fields like sourceTokenService.addr or senderAddress) and reuse valid signatures to authorize a different packet, potentially redirecting withdrawals or altering packet fields without new signatures."
}
|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_id: 0xccee45d754874e01c709a5f7f953fbcb1fcd2e9a2e5fcb8e6a011c4ddab2bb5a
call_targets:
0xbdae358dc3b0389a5532d011a8b4098ffda11836
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xccee45d754874e01c709a5f7f953fbcb1fcd2e9a2e5fcb8e6a011c4ddab2bb5a",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xbdae358dc3b0389a5532d011a8b4098ffda11836"
],
"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": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfbc9a662",
"selector": "0xfbc9a662",
"calldata_variants": [
"0xfbc9a662",
"0xfbc9a6620000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xff8b1f8d",
"selector": "0xff8b1f8d",
"calldata_variants": [
"0xff8b1f8d",
"0xff8b1f8d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd451c20a",
"selector": "0xd451c20a",
"calldata_variants": [
"0xd451c20a",
"0xd451c20a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdcbeeb23",
"selector": "0xdcbeeb23",
"calldata_variants": [
"0xdcbeeb23",
"0xdcbeeb230000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe6c09edf",
"selector": "0xe6c09edf",
"calldata_variants": [
"0xe6c09edf",
"0xe6c09edf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc354c62f",
"selector": "0xc354c62f",
"calldata_variants": [
"0xc354c62f",
"0xc354c62f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc415b95c",
"selector": "0xc415b95c",
"calldata_variants": [
"0xc415b95c",
"0xc415b95c0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2376,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 4682,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 5305,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 13,
"guards_detected": [],
"untrusted_call_count": 13
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0xccee45d754874e01c709a5f7f953fbcb1fcd2e9a2e5fcb8e6a011c4ddab2bb5a
call_targets:
0xbdae358dc3b0389a5532d011a8b4098ffda11836
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xccee45d754874e01c709a5f7f953fbcb1fcd2e9a2e5fcb8e6a011c4ddab2bb5a",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xbdae358dc3b0389a5532d011a8b4098ffda11836"
],
"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": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfbc9a662",
"selector": "0xfbc9a662",
"calldata_variants": [
"0xfbc9a662",
"0xfbc9a6620000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xff8b1f8d",
"selector": "0xff8b1f8d",
"calldata_variants": [
"0xff8b1f8d",
"0xff8b1f8d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd451c20a",
"selector": "0xd451c20a",
"calldata_variants": [
"0xd451c20a",
"0xd451c20a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdcbeeb23",
"selector": "0xdcbeeb23",
"calldata_variants": [
"0xdcbeeb23",
"0xdcbeeb230000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe6c09edf",
"selector": "0xe6c09edf",
"calldata_variants": [
"0xe6c09edf",
"0xe6c09edf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc354c62f",
"selector": "0xc354c62f",
"calldata_variants": [
"0xc354c62f",
"0xc354c62f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc415b95c",
"selector": "0xc415b95c",
"calldata_variants": [
"0xc415b95c",
"0xc415b95c0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2376,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 4682,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 5305,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 13,
"guards_detected": []
}
|
| medium | other | codex | Fee-on-transfer tokens break escrow accounting and can undercollateralize the bridge | 75 | no | — |
viewevidence_json{
"evidence": "_handleFees computes amountToTransfer from the requested amount, and _transfer sends a packet for amountToTransfer without verifying actual tokens received.",
"locations": [
"contracts/contracts/main/tokenservice/TokenServiceV3.sol:186",
"contracts/contracts/main/tokenservice/TokenServiceV3.sol:250",
"contracts/contracts/main/tokenservice/TokenServiceV3.sol:258"
],
"recommendation": "Explicitly disallow fee-on-transfer/deflationary tokens or compute the net received amount via balance\u2011before/balance\u2011after and use that for packet amounts and fee calculations.",
"exploit_scenario": "If a supported token charges transfer fees, TokenServiceV3 sends a packet for amountToTransfer but receives fewer tokens than amountToTransfer. The attacker can repeatedly bridge such a token to receive the full amount on the destination chain while the source chain escrow accrues a deficit, eventually preventing withdrawals or draining pooled liquidity."
}
|
| medium | upgradeability | cast | DELEGATECALL present | 80 | no | — |
viewevidence_json{
"notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
"delegatecall_count": 1
}
|
| low | upgradeability | codex | Storage gap placed before new variables in TokenServiceV2 | 65 | no | — |
viewevidence_json{
"evidence": "TokenServiceV2 declares __gap before new state variables.",
"locations": [
"contracts/contracts/main/tokenservice/TokenServiceV2.sol:45",
"contracts/contracts/main/tokenservice/TokenServiceV2.sol:47"
],
"recommendation": "In the next upgrade, append a new storage gap after the current variables and leave the existing gap unused. Avoid inserting new variables before the current end-of-storage layout.",
"exploit_scenario": "Future upgrades that attempt to use the storage gap for new variables may overwrite the existing TokenServiceV2 state (predicateservice/whitelist), corrupting storage and potentially breaking access control or transfer logic after an upgrade."
}
|
| info | other | cast | Heavy EXTCODE*/BALANCE usage | 55 | no | — |
viewevidence_json{
"notes": "frequent external code or balance checks; may indicate introspection or validation logic",
"ext_balance_count": 9
}
|
| info | other | cast | Heavy CALL-family usage | 55 | no | — |
viewevidence_json{
"notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
"call_family_count": 20
}
|