862e3f7c-2ed5-4db8-9735-5a3f88388d2b
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 |
|---|---|---|---|---|
| 31422 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 77158 | artifact.fetch | failed | 1 / 3 | 2 weeks ago |
| 77159 | tool.cast_disasm | complete | 1 / 3 | 2 weeks ago |
| 77160 | analysis.bundle | complete | 1 / 3 | 2 weeks ago |
| 77161 | capability.graph | complete | 1 / 3 | 2 weeks ago |
| 77162 | detector.run | complete | 1 / 3 | 2 weeks ago |
| 77163 | validation.fork | complete | 1 / 3 | 2 weeks ago |
No slither job recorded yet.
[codex:1102733] OpenAI Codex v0.77.0 (research preview)
[codex:1102733] --------
[codex:1102733] workdir: /tmp/codex-multi-srzxg2rd
[codex:1102733] model: gpt-5.2-codex
[codex:1102733] provider: openai
[codex:1102733] approval: never
[codex:1102733] sandbox: read-only
[codex:1102733] reasoning effort: xhigh
[codex:1102733] reasoning summaries: auto
[codex:1102733] session id: 019b818a-ded7-7b32-8dd1-038a24af2555
[codex:1102733] --------
[codex:1102733] user
[codex:1102733] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:1102733]
[codex:1102733] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:1102733]
[codex:1102733] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:1102733] - Gas inefficiency, code quality, naming, or best practices
[codex:1102733] - Theoretical vulnerabilities without a clear extraction path
[codex:1102733] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:1102733] - Front-running unless it enables theft beyond MEV
[codex:1102733] - DoS, griefing, or issues that don't result in attacker profit
[codex:1102733] - Missing events, view function issues, or informational findings
[codex:1102733]
[codex:1102733] HIGH-VALUE PATTERNS TO HUNT:
[codex:1102733] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:1102733] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:1102733] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:1102733] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:1102733] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:1102733] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:1102733] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:1102733] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:1102733] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:1102733]
[codex:1102733] For each finding, you MUST provide:
[codex:1102733] 1. Exact file and line numbers of vulnerable code
[codex:1102733] 2. Step-by-step exploit transaction sequence
[codex:1102733] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:1102733]
[codex:1102733] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:1102733]
[codex:1102733] Output MUST be valid JSON matching the provided schema.
[codex:1102733] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:1102733] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:1102733] mcp startup: no servers
[codex:1102733]
[codex:1102733] thinking
[codex:1102733] **Preparing to read instruction files**
[codex:1102733] exec
[codex:1102733] /bin/bash -lc ls in /tmp/codex-multi-srzxg2rd succeeded in 5ms:
[codex:1102733] AUDIT_BUNDLE.txt
[codex:1102733] codex-output-schema.json
[codex:1102733] contracts
[codex:1102733] exec
[codex:1102733] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-srzxg2rd succeeded in 5ms:
[codex:1102733] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:1102733]
[codex:1102733] ================================================================================
[codex:1102733] FILE: contracts/src/L1/L2OutputOracle.sol
[codex:1102733] ================================================================================
[codex:1102733] // SPDX-License-Identifier: MIT
[codex:1102733] pragma solidity 0.8.15;
[codex:1102733]
[codex:1102733] import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
[codex:1102733] import { ISemver } from "src/universal/ISemver.sol";
[codex:1102733] import { Types } from "src/libraries/Types.sol";
[codex:1102733] import { Constants } from "src/libraries/Constants.sol";
[codex:1102733]
[codex:1102733] /// @custom:proxied
[codex:1102733] /// @title L2OutputOracle
[codex:1102733] /// @notice The L2OutputOracle contains an array of L2 state outputs, where each output is a
[codex:1102733] /// commitment to the state of the L2 chain. Other contracts like the OptimismPortal use
[codex:1102733] /// these outputs to verify information about the state of L2.
[codex:1102733] contract L2OutputOracle is Initializable, ISemver {
[codex:1102733] /// @notice The number of the first L2 block recorded in this contract.
[codex:1102733]
[codex:1102733] thinking
[codex:1102733] **Scanning for withdrawal vulnerabilities**
[codex:1102733] exec
[codex:1102733] /bin/bash -lc 'rg -n "finalizeWithdrawal|withdraw|deposit|prove" contracts/src/L1/OptimismPortal.sol' in /tmp/codex-multi-srzxg2rd succeeded in 17ms:
[codex:1102733] 25: /// @notice Represents a proven withdrawal.
[codex:1102733] 26: /// @custom:field outputRoot Root of the L2 output this was proven against.
[codex:1102733] 27: /// @custom:field timestamp Timestamp at whcih the withdrawal was proven.
[codex:1102733] 28: /// @custom:field l2OutputIndex Index of the output this was proven against.
[codex:1102733] 35: /// @notice Version of the deposit event.
[codex:1102733] 38: /// @notice The L2 gas limit set when eth is deposited using the receive() function.
[codex:1102733] 41: /// @notice Address of the L2 account which initiated a withdrawal in this transaction.
[codex:1102733] 43: /// a call to finalizeWithdrawalTransaction.
[codex:1102733] 46: /// @notice A list of withdrawal hashes which have been successfully finalized.
[codex:1102733] 49: /// @notice A mapping of withdrawal hashes to `ProvenWithdrawal` data.
[codex:1102733] 50: mapping(bytes32 => ProvenWithdrawal) public provenWithdrawals;
[codex:1102733] 68: /// @notice Emitted when a transaction is deposited from L1 to L2.
[codex:1102733] 69: /// The parameters of this event are read by the rollup node and used to derive deposit
[codex:1102733] 71: /// @param from Address that triggered the deposit transaction.
[codex:1102733] 72: /// @param to Address that the deposit transaction is directed to.
[codex:1102733] 73: /// @param version Version of this deposit transaction event.
[codex:1102733] 74: /// @param opaqueData ABI encoded deposit data to be parsed off-chain.
[codex:1102733] 77: /// @notice Emitted when a withdrawal transaction is proven.
[codex:1102733] 78: /// @param withdrawalHash Hash of the withdrawal transaction.
[codex:1102733] 79: /// @param from Address that triggered the withdrawal transaction.
[codex:1102733]
[codex:1102733] thinking
[codex:1102733] **Examining OptimismPortal for vulnerabilities**
[codex:1102733] exec
[codex:1102733] /bin/bash -lc "sed -n '160,360p' contracts/src/L1/OptimismPortal.sol" in /tmp/codex-multi-srzxg2rd succeeded in 6ms:
[codex:1102733]
[codex:1102733] /// @notice Accepts ETH value without triggering a deposit to L2.
[codex:1102733] /// This function mainly exists for the sake of the migration between the legacy
[codex:1102733] /// Optimism system and Bedrock.
[codex:1102733] function donateETH() external payable {
[codex:1102733] // Intentionally empty.
[codex:1102733] }
[codex:1102733]
[codex:1102733] /// @notice Getter for the resource config.
[codex:1102733] /// Used internally by the ResourceMetering contract.
[codex:1102733] /// The SystemConfig is the source of truth for the resource config.
[codex:1102733] /// @return ResourceMetering ResourceConfig
[codex:1102733] function _resourceConfig() internal view override returns (ResourceMetering.ResourceConfig memory) {
[codex:1102733] return systemConfig.resourceConfig();
[codex:1102733] }
[codex:1102733]
[codex:1102733] /// @notice Proves a withdrawal transaction.
[codex:1102733] /// @param _tx Withdrawal transaction to finalize.
[codex:1102733] /// @param _l2OutputIndex L2 output index to prove against.
[codex:1102733] /// @param _outputRootProof Inclusion proof of the L2ToL1MessagePasser contract's storage root.
[codex:1102733] exec
[codex:1102733] /bin/bash -lc "sed -n '360,520p' contracts/src/L1/OptimismPortal.sol" in /tmp/codex-multi-srzxg2rd succeeded in 5ms:
[codex:1102733] public
[codex:1102733] payable
[codex:1102733] metered(_gasLimit)
[codex:1102733] {
[codex:1102733] // Just to be safe, make sure that people specify address(0) as the target when doing
[codex:1102733] // contract creations.
[codex:1102733] if (_isCreation && _to != address(0)) revert BadTarget();
[codex:1102733]
[codex:1102733] // Prevent depositing transactions that have too small of a gas limit. Users should pay
[codex:1102733] // more for more resource usage.
[codex:1102733] if (_gasLimit < minimumGasLimit(uint64(_data.length))) revert SmallGasLimit();
[codex:1102733]
[codex:1102733] // Prevent the creation of deposit transactions that have too much calldata. This gives an
[codex:1102733] // upper limit on the size of unsafe blocks over the p2p network. 120kb is chosen to ensure
[codex:1102733] // that the transaction can fit into the p2p network policy of 128kb even though deposit
[codex:1102733] // transactions are not gossipped over the p2p network.
[codex:1102733] if (_data.length > 120_000) revert LargeCalldata();
[codex:1102733]
[codex:1102733] // Transform the from-address to its alias if the caller is a contract.
[codex:1102733] address from = msg.sender;
[codex:1102733]
[codex:1102733] thinking
[codex:1102733] **Analyzing potential unprotected initialization and withdrawal risks**
[codex:1102733] exec
[codex:1102733] /bin/bash -lc 'rg -n "hashWithdrawal|WithdrawalTransaction" contracts/src -g"*.sol"' in /tmp/codex-multi-srzxg2rd succeeded in 9ms:
[codex:1102733] contracts/src/libraries/Types.sol:62: struct WithdrawalTransaction {
[codex:1102733] contracts/src/L1/OptimismPortal.sol:43: /// a call to finalizeWithdrawalTransaction.
[codex:1102733] contracts/src/L1/OptimismPortal.sol:181: function proveWithdrawalTransaction(
[codex:1102733] contracts/src/L1/OptimismPortal.sol:182: Types.WithdrawalTransaction memory _tx,
[codex:1102733] contracts/src/L1/OptimismPortal.sol:192: // `finalizeWithdrawalTransaction`.
[codex:1102733] contracts/src/L1/OptimismPortal.sol:205: bytes32 withdrawalHash = Hashing.hashWithdrawal(_tx);
[codex:1102733] contracts/src/L1/OptimismPortal.sol:259: function finalizeWithdrawalTransaction(Types.WithdrawalTransaction memory _tx) external whenNotPaused {
[codex:1102733] contracts/src/L1/OptimismPortal.sol:268: bytes32 withdrawalHash = Hashing.hashWithdrawal(_tx);
[codex:1102733] contracts/src/libraries/Hashing.sol:106: function hashWithdrawal(Types.WithdrawalTransaction memory _tx) internal pure returns (bytes32) {
[codex:1102733] exec
[codex:1102733] /bin/bash -lc "sed -n '1,140p' contracts/src/libraries/Types.sol" in /tmp/codex-multi-srzxg2rd succeeded in 6ms:
[codex:1102733] // SPDX-License-Identifier: MIT
[codex:1102733] pragma solidity ^0.8.0;
[codex:1102733]
[codex:1102733] /// @title Types
[codex:1102733] /// @notice Contains various types used throughout the Optimism contract system.
[codex:1102733] library Types {
[codex:1102733] /// @notice OutputProposal represents a commitment to the L2 state. The timestamp is the L1
[codex:1102733] /// timestamp that the output root is posted. This timestamp is used to verify that the
[codex:1102733] /// finalization period has passed since the output root was submitted.
[codex:1102733] /// @custom:field outputRoot Hash of the L2 output.
[codex:1102733] /// @custom:field timestamp Timestamp of the L1 block that the output root was submitted in.
[codex:1102733] /// @custom:field l2BlockNumber L2 block number that the output corresponds to.
[codex:1102733] struct OutputProposal {
[codex:1102733] bytes32 outputRoot;
[codex:1102733] uint128 timestamp;
[codex:1102733] uint128 l2BlockNumber;
[codex:1102733] }
[codex:1102733]
[codex:1102733] /// @notice Struct representing the elements that are hashed together to generate an output root
[codex:1102733] /// which itself represents a snapshot of the L2 state.
[codex:1102733] exec
[codex:1102733] /bin/bash -lc "sed -n '80,140p' contracts/src/libraries/Hashing.sol" in /tmp/codex-multi-srzxg2rd succeeded in 5ms:
[codex:1102733] /// @notice Hashes a cross domain message based on the V1 (current) encoding.
[codex:1102733] /// @param _nonce Message nonce.
[codex:1102733] /// @param _sender Address of the sender of the message.
[codex:1102733] /// @param _target Address of the target of the message.
[codex:1102733] /// @param _value ETH value to send to the target.
[codex:1102733] /// @param _gasLimit Gas limit to use for the message.
[codex:1102733] /// @param _data Data to send with the message.
[codex:1102733] /// @return Hashed cross domain message.
[codex:1102733] function hashCrossDomainMessageV1(
[codex:1102733] uint256 _nonce,
[codex:1102733] address _sender,
[codex:1102733] address _target,
[codex:1102733] uint256 _value,
[codex:1102733] uint256 _gasLimit,
[codex:1102733] bytes memory _data
[codex:1102733] )
[codex:1102733] internal
[codex:1102733] pure
[codex:1102733] returns (bytes32)
[codex:1102733] {
[codex:1102733]
[codex:1102733] thinking
[codex:1102733] **Analyzing withdrawal and deposit mechanics**
[codex:1102733]
[codex:1102733] I'm exploring how withdrawal hashes lacking chainId impact replay risk across chains and examining deposit transactions where msg.value isn't strictly checked against _value. It seems cross-chain withdrawal replay isn't profitable due to proof requirements, and deposit mismatches might be safe since L2 balances and minting handle values carefully. I'm curious about potential gaps in L2OutputOracle and will look into associated contracts for deeper understanding.
[codex:1102733] exec
[codex:1102733] /bin/bash -lc 'ls contracts/src' in /tmp/codex-multi-srzxg2rd succeeded in 5ms:
[codex:1102733] L1
[codex:1102733] libraries
[codex:1102733] universal
[codex:1102733] vendor
[codex:1102733] exec
[codex:1102733] /bin/bash -lc 'ls contracts/src/L1' in /tmp/codex-multi-srzxg2rd succeeded in 5ms:
[codex:1102733] L2OutputOracle.sol
[codex:1102733] OptimismPortal.sol
[codex:1102733] ResourceMetering.sol
[codex:1102733] SuperchainConfig.sol
[codex:1102733] SystemConfig.sol
[codex:1102733]
[codex:1102733] thinking
[codex:1102733] **Inspecting additional L1 contracts**
[codex:1102733] exec
[codex:1102733] /bin/bash -lc "sed -n '1,240p' contracts/src/L1/SystemConfig.sol" in /tmp/codex-multi-srzxg2rd succeeded in 6ms:
[codex:1102733] // SPDX-License-Identifier: MIT
[codex:1102733] pragma solidity 0.8.15;
[codex:1102733]
[codex:1102733] import { OwnableUpgradeable } from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
[codex:1102733] import { ISemver } from "src/universal/ISemver.sol";
[codex:1102733] import { ResourceMetering } from "src/L1/ResourceMetering.sol";
[codex:1102733] import { Storage } from "src/libraries/Storage.sol";
[codex:1102733] import { Constants } from "src/libraries/Constants.sol";
[codex:1102733]
[codex:1102733] /// @title SystemConfig
[codex:1102733] /// @notice The SystemConfig contract is used to manage configuration of an Optimism network.
[codex:1102733] /// All configuration is stored on L1 and picked up by L2 as part of the derviation of
[codex:1102733] /// the L2 chain.
[codex:1102733] contract SystemConfig is OwnableUpgradeable, ISemver {
[codex:1102733] /// @notice Enum representing different types of updates.
[codex:1102733] /// @custom:value BATCHER Represents an update to the batcher hash.
[codex:1102733] /// @custom:value GAS_CONFIG Represents an update to txn fee config on L2.
[codex:1102733] /// @custom:value GAS_LIMIT Represents an update to gas limit on L2.
[codex:1102733] /// @custom:value UNSAFE_BLOCK_SIGNER Represents an update to the signer key for unsafe
[codex:1102733] /// block distrubution.
[codex:1102733] exec
[codex:1102733] /bin/bash -lc "sed -n '240,480p' contracts/src/L1/SystemConfig.sol" in /tmp/codex-multi-srzxg2rd succeeded in 5ms:
[codex:1102733] function batchInbox() external view returns (address addr_) {
[codex:1102733] addr_ = Storage.getAddress(BATCH_INBOX_SLOT);
[codex:1102733] }
[codex:1102733]
[codex:1102733] /// @notice Getter for the StartBlock number.
[codex:1102733] function startBlock() external view returns (uint256 startBlock_) {
[codex:1102733] startBlock_ = Storage.getUint(START_BLOCK_SLOT);
[codex:1102733] }
[codex:1102733]
[codex:1102733] /// @notice Updates the unsafe block signer address. Can only be called by the owner.
[codex:1102733] /// @param _unsafeBlockSigner New unsafe block signer address.
[codex:1102733] function setUnsafeBlockSigner(address _unsafeBlockSigner) external onlyOwner {
[codex:1102733] _setUnsafeBlockSigner(_unsafeBlockSigner);
[codex:1102733] }
[codex:1102733]
[codex:1102733] /// @notice Updates the unsafe block signer address.
[codex:1102733] /// @param _unsafeBlockSigner New unsafe block signer address.
[codex:1102733] function _setUnsafeBlockSigner(address _unsafeBlockSigner) internal {
[codex:1102733] Storage.setAddress(UNSAFE_BLOCK_SIGNER_SLOT, _unsafeBlockSigner);
[codex:1102733]
[codex:1102733]
[codex:1102733] thinking
[codex:1102733] **Checking access control on SuperchainConfig**
[codex:1102733] exec
[codex:1102733] /bin/bash -lc "sed -n '1,200p' contracts/src/L1/SuperchainConfig.sol" in /tmp/codex-multi-srzxg2rd succeeded in 6ms:
[codex:1102733] // SPDX-License-Identifier: MIT
[codex:1102733] pragma solidity 0.8.15;
[codex:1102733]
[codex:1102733] import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
[codex:1102733] import { ISemver } from "src/universal/ISemver.sol";
[codex:1102733] import { Storage } from "src/libraries/Storage.sol";
[codex:1102733]
[codex:1102733] /// @custom:audit none This contracts is not yet audited.
[codex:1102733] /// @title SuperchainConfig
[codex:1102733] /// @notice The SuperchainConfig contract is used to manage configuration of global superchain values.
[codex:1102733] contract SuperchainConfig is Initializable, ISemver {
[codex:1102733] /// @notice Enum representing different types of updates.
[codex:1102733] /// @custom:value GUARDIAN Represents an update to the guardian.
[codex:1102733] enum UpdateType {
[codex:1102733] GUARDIAN
[codex:1102733] }
[codex:1102733]
[codex:1102733] /// @notice Whether or not the Superchain is paused.
[codex:1102733] bytes32 public constant PAUSED_SLOT = bytes32(uint256(keccak256("superchainConfig.paused")) - 1);
[codex:1102733]
[codex:1102733]
[codex:1102733] thinking
[codex:1102733] **Considering potential ResourceMetering**
[codex:1102733] exec
[codex:1102733] /bin/bash -lc "sed -n '1,220p' contracts/src/L1/ResourceMetering.sol" in /tmp/codex-multi-srzxg2rd succeeded in 5ms:
[codex:1102733] // SPDX-License-Identifier: MIT
[codex:1102733] pragma solidity 0.8.15;
[codex:1102733]
[codex:1102733] import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
[codex:1102733] import { Math } from "@openzeppelin/contracts/utils/math/Math.sol";
[codex:1102733] import { Burn } from "src/libraries/Burn.sol";
[codex:1102733] import { Arithmetic } from "src/libraries/Arithmetic.sol";
[codex:1102733]
[codex:1102733] /// @custom:upgradeable
[codex:1102733] /// @title ResourceMetering
[codex:1102733] /// @notice ResourceMetering implements an EIP-1559 style resource metering system where pricing
[codex:1102733] /// updates automatically based on current demand.
[codex:1102733] abstract contract ResourceMetering is Initializable {
[codex:1102733] /// @notice Error returned when too much gas resource is consumed.
[codex:1102733] error OutOfGas();
[codex:1102733]
[codex:1102733] /// @notice Represents the various parameters that control the way in which resources are
[codex:1102733] /// metered. Corresponds to the EIP-1559 resource metering system.
[codex:1102733] /// @custom:field prevBaseFee Base fee from the previous block(s).
[codex:1102733] /// @custom:field prevBoughtGas Amount of gas bought so far in the current block.
[codex:1102733]
[codex:1102733] thinking
[codex:1102733] **Checking Storage library for ResourceMetering issues**
[codex:1102733] exec
[codex:1102733] /bin/bash -lc "sed -n '1,200p' contracts/src/libraries/Storage.sol" in /tmp/codex-multi-srzxg2rd succeeded in 5ms:
[codex:1102733] // SPDX-License-Identifier: MIT
[codex:1102733] pragma solidity ^0.8.0;
[codex:1102733]
[codex:1102733] /// @title Storage
[codex:1102733] /// @notice Storage handles reading and writing to arbitary storage locations
[codex:1102733] library Storage {
[codex:1102733] /// @notice Returns an address stored in an arbitrary storage slot.
[codex:1102733] /// These storage slots decouple the storage layout from
[codex:1102733] /// solc's automation.
[codex:1102733] /// @param _slot The storage slot to retrieve the address from.
[codex:1102733] function getAddress(bytes32 _slot) internal view returns (address addr_) {
[codex:1102733] assembly {
[codex:1102733] addr_ := sload(_slot)
[codex:1102733] }
[codex:1102733] }
[codex:1102733]
[codex:1102733] /// @notice Stores an address in an arbitrary storage slot, `_slot`.
[codex:1102733] /// @param _slot The storage slot to store the address in.
[codex:1102733] /// @param _address The protocol version to store
[codex:1102733] /// @dev WARNING! This function must be used cautiously, as it allows for overwriting addresses
[codex:1102733]
[codex:1102733] thinking
[codex:1102733] **Analyzing potential contract vulnerabilities**
[codex:1102733] exec
[codex:1102733] /bin/bash -lc "sed -n '1,200p' contracts/src/libraries/Burn.sol" in /tmp/codex-multi-srzxg2rd succeeded in 5ms:
[codex:1102733] // SPDX-License-Identifier: MIT
[codex:1102733] pragma solidity 0.8.15;
[codex:1102733]
[codex:1102733] /// @title Burn
[codex:1102733] /// @notice Utilities for burning stuff.
[codex:1102733] library Burn {
[codex:1102733] /// @notice Burns a given amount of ETH.
[codex:1102733] /// @param _amount Amount of ETH to burn.
[codex:1102733] function eth(uint256 _amount) internal {
[codex:1102733] new Burner{ value: _amount }();
[codex:1102733] }
[codex:1102733]
[codex:1102733] /// @notice Burns a given amount of gas.
[codex:1102733] /// @param _amount Amount of gas to burn.
[codex:1102733] function gas(uint256 _amount) internal view {
[codex:1102733] uint256 i = 0;
[codex:1102733] uint256 initialGas = gasleft();
[codex:1102733] while (initialGas - gasleft() < _amount) {
[codex:1102733] ++i;
[codex:1102733] }
[codex:1102733]
[codex:1102733] thinking
[codex:1102733] **Examining possible vulnerabilities and audit completeness**
[codex:1102733] exec
[codex:1102733] /bin/bash -lc 'rg -n "''^FILE:" AUDIT_BUNDLE.txt' in /tmp/codex-multi-srzxg2rd succeeded in 7ms:
[codex:1102733] 4:FILE: contracts/src/L1/L2OutputOracle.sol
[codex:1102733] 324:FILE: contracts/src/L1/OptimismPortal.sol
[codex:1102733] 738:FILE: contracts/src/L1/ResourceMetering.sol
[codex:1102733] 905:FILE: contracts/src/L1/SuperchainConfig.sol
[codex:1102733] 1003:FILE: contracts/src/L1/SystemConfig.sol
[codex:1102733] 1374:FILE: contracts/src/libraries/Arithmetic.sol
[codex:1102733] 1406:FILE: contracts/src/libraries/Burn.sol
[codex:1102733] 1442:FILE: contracts/src/libraries/Bytes.sol
[codex:1102733] 1590:FILE: contracts/src/libraries/Constants.sol
[codex:1102733] 1640:FILE: contracts/src/libraries/Encoding.sol
[codex:1102733] 1868:FILE: contracts/src/libraries/Hashing.sol
[codex:1102733] 1996:FILE: contracts/src/libraries/PortalErrors.sol
[codex:1102733] 2022:FILE: contracts/src/libraries/SafeCall.sol
[codex:1102733] 2168:FILE: contracts/src/libraries/Storage.sol
[codex:1102733] 2260:FILE: contracts/src/libraries/Types.sol
[codex:1102733] 2334:FILE: contracts/src/libraries/rlp/RLPReader.sol
[codex:1102733] 2599:FILE: contracts/src/libraries/rlp/RLPWriter.sol
[codex:1102733] 2766:FILE: contracts/src/libraries/trie/MerkleTrie.sol
[codex:1102733] 2990:FILE: contracts/src/libraries/trie/SecureMerkleTrie.sol
[codex:1102733] 3043:FILE: contracts/src/universal/ISemver.sol
[codex:1102733]
[codex:1102733] thinking
[codex:1102733] **Checking SafeCall library**
[codex:1102733] exec
[codex:1102733] /bin/bash -lc "sed -n '2000,2168p' contracts/src/libraries/SafeCall.sol" in /tmp/codex-multi-srzxg2rd succeeded in 5ms:
[codex:1102733]
[codex:1102733]
[codex:1102733] thinking
[codex:1102733] **Checking sed command output**
[codex:1102733] exec
[codex:1102733] /bin/bash -lc "sed -n '2020,2140p' contracts/src/libraries/SafeCall.sol" in /tmp/codex-multi-srzxg2rd succeeded in 5ms:
[codex:1102733]
[codex:1102733]
[codex:1102733] thinking
[codex:1102733] **Checking file contents**
[codex:1102733] exec
[codex:1102733] /bin/bash -lc 'cat contracts/src/libraries/SafeCall.sol' in /tmp/codex-multi-srzxg2rd succeeded in 5ms:
[codex:1102733] // SPDX-License-Identifier: MIT
[codex:1102733] pragma solidity 0.8.15;
[codex:1102733]
[codex:1102733] /// @title SafeCall
[codex:1102733] /// @notice Perform low level safe calls
[codex:1102733] library SafeCall {
[codex:1102733] /// @notice Performs a low level call without copying any returndata.
[codex:1102733] /// @dev Passes no calldata to the call context.
[codex:1102733] /// @param _target Address to call
[codex:1102733] /// @param _gas Amount of gas to pass to the call
[codex:1102733] /// @param _value Amount of value to pass to the call
[codex:1102733] function send(address _target, uint256 _gas, uint256 _value) internal returns (bool) {
[codex:1102733] bool _success;
[codex:1102733] assembly {
[codex:1102733] _success :=
[codex:1102733] call(
[codex:1102733] _gas, // gas
[codex:1102733] _target, // recipient
[codex:1102733] _value, // ether value
[codex:1102733] 0, // inloc
[codex:1102733]
[codex:1102733] thinking
[codex:1102733] **Analyzing potential security issues in libraries**
[codex:1102733]
[codex:1102733] I’m carefully examining the code for unsafe payable functions and possible overflow in the Arithmetic library. I’m also evaluating if a forged withdrawal proof could bypass verification by exploiting MerkleTrie or RLPReader, while checking how storage keys and proofs are computed. I want to ensure the output root proofs and encoding methods like abi.encodePacked don’t introduce vulnerabilities through collisions or ambiguity. Let’s explore Encoding usage next to assess risks around cross-domain message hashing.
[codex:1102733] exec
[codex:1102733] /bin/bash -lc "sed -n '1640,1885p' contracts/src/libraries/Encoding.sol" in /tmp/codex-multi-srzxg2rd succeeded in 6ms:
[codex:1102733]
[codex:1102733]
[codex:1102733] thinking
[codex:1102733] **Checking file length**
[codex:1102733] exec
[codex:1102733] /bin/bash -lc 'cat contracts/src/libraries/Encoding.sol' in /tmp/codex-multi-srzxg2rd succeeded in 5ms:
[codex:1102733] // SPDX-License-Identifier: MIT
[codex:1102733] pragma solidity ^0.8.0;
[codex:1102733]
[codex:1102733] import { Types } from "src/libraries/Types.sol";
[codex:1102733] import { Hashing } from "src/libraries/Hashing.sol";
[codex:1102733] import { RLPWriter } from "src/libraries/rlp/RLPWriter.sol";
[codex:1102733]
[codex:1102733] /// @title Encoding
[codex:1102733] /// @notice Encoding handles Optimism's various different encoding schemes.
[codex:1102733] library Encoding {
[codex:1102733] /// @notice RLP encodes the L2 transaction that would be generated when a given deposit is sent
[codex:1102733] /// to the L2 system. Useful for searching for a deposit in the L2 system. The
[codex:1102733] /// transaction is prefixed with 0x7e to identify its EIP-2718 type.
[codex:1102733] /// @param _tx User deposit transaction to encode.
[codex:1102733] /// @return RLP encoded L2 deposit transaction.
[codex:1102733] function encodeDepositTransaction(Types.UserDepositTransaction memory _tx) internal pure returns (bytes memory) {
[codex:1102733] bytes32 source = Hashing.hashDepositSource(_tx.l1BlockHash, _tx.logIndex);
[codex:1102733] bytes[] memory raw = new bytes[](8);
[codex:1102733] raw[0] = RLPWriter.writeBytes(abi.encodePacked(source));
[codex:1102733] raw[1] = RLPWriter.writeAddress(_tx.from);
[codex:1102733]
[codex:1102733] thinking
[codex:1102733] **Reviewing encoding and pause checks**
[codex:1102733] exec
[codex:1102733] /bin/bash -lc "sed -n '1,160p' contracts/src/L1/OptimismPortal.sol" in /tmp/codex-multi-srzxg2rd succeeded in 6ms:
[codex:1102733] // SPDX-License-Identifier: MIT
[codex:1102733] pragma solidity 0.8.15;
[codex:1102733]
[codex:1102733] import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
[codex:1102733] import { SafeCall } from "src/libraries/SafeCall.sol";
[codex:1102733] import { L2OutputOracle } from "src/L1/L2OutputOracle.sol";
[codex:1102733] import { SystemConfig } from "src/L1/SystemConfig.sol";
[codex:1102733] import { SuperchainConfig } from "src/L1/SuperchainConfig.sol";
[codex:1102733] import { Constants } from "src/libraries/Constants.sol";
[codex:1102733] import { Types } from "src/libraries/Types.sol";
[codex:1102733] import { Hashing } from "src/libraries/Hashing.sol";
[codex:1102733] import { SecureMerkleTrie } from "src/libraries/trie/SecureMerkleTrie.sol";
[codex:1102733] import { AddressAliasHelper } from "src/vendor/AddressAliasHelper.sol";
[codex:1102733] import { ResourceMetering } from "src/L1/ResourceMetering.sol";
[codex:1102733] import { ISemver } from "src/universal/ISemver.sol";
[codex:1102733] import { Constants } from "src/libraries/Constants.sol";
[codex:1102733] import "src/libraries/PortalErrors.sol";
[codex:1102733]
[codex:1102733] /// @custom:proxied
[codex:1102733] /// @title OptimismPortal
[codex:1102733]
[codex:1102733] thinking
[codex:1102733] **Analyzing potential vulnerabilities and JSON output requirements**
[codex:1102733] exec
[codex:1102733] /bin/bash -lc 'rg -n "hashDepositSource" -n contracts/src/libraries/Hashing.sol' in /tmp/codex-multi-srzxg2rd succeeded in 6ms:
[codex:1102733] 25: function hashDepositSource(bytes32 _l1BlockHash, uint256 _logIndex) internal pure returns (bytes32) {
[codex:1102733] exec
[codex:1102733] /bin/bash -lc "sed -n '1,80p' contracts/src/libraries/Hashing.sol" in /tmp/codex-multi-srzxg2rd succeeded in 5ms:
[codex:1102733] // SPDX-License-Identifier: MIT
[codex:1102733] pragma solidity ^0.8.0;
[codex:1102733]
[codex:1102733] import { Types } from "src/libraries/Types.sol";
[codex:1102733] import { Encoding } from "src/libraries/Encoding.sol";
[codex:1102733]
[codex:1102733] /// @title Hashing
[codex:1102733] /// @notice Hashing handles Optimism's various different hashing schemes.
[codex:1102733] library Hashing {
[codex:1102733] /// @notice Computes the hash of the RLP encoded L2 transaction that would be generated when a
[codex:1102733] /// given deposit is sent to the L2 system. Useful for searching for a deposit in the L2
[codex:1102733] /// system.
[codex:1102733] /// @param _tx User deposit transaction to hash.
[codex:1102733] /// @return Hash of the RLP encoded L2 deposit transaction.
[codex:1102733] function hashDepositTransaction(Types.UserDepositTransaction memory _tx) internal pure returns (bytes32) {
[codex:1102733] return keccak256(Encoding.encodeDepositTransaction(_tx));
[codex:1102733] }
[codex:1102733]
[codex:1102733] /// @notice Computes the deposit transaction's "source hash", a value that guarantees the hash
[codex:1102733] /// of the L2 transaction that corresponds to a deposit is unique and is
[codex:1102733]
[codex:1102733] thinking
[codex:1102733] **Finalizing audit report with no findings**
[codex:1102733]
[codex:1102733] I'll confirm no exploitable vulnerabilities are found after carefully reviewing key functions and edge cases, then produce a clean JSON response stating no findings and no concrete profit-extraction paths exist.
[codex:1102733] codex
[codex:1102733] {"no_findings":true,"summary":"No concrete, exploitable profit path found in the audited contracts.","findings":[]}
[codex:1102733] tokens used
[codex:1102733] 45,608
[codex:1102733] {"no_findings":true,"summary":"No concrete, exploitable profit path found in the audited contracts.","findings":[]}
{
"codex": {
"ran_at": "2026-01-03T01:51:26.306933+00:00",
"returncode": 0
},
"summary": "No concrete, exploitable profit path found in the audited contracts.",
"raw_final": {
"summary": "No concrete, exploitable profit path found in the audited contracts.",
"findings": [],
"no_findings": true
},
"no_findings": true,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: PUSH2 0x0112 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0x8c3152e9 00000019: GT 0000001a: PUSH2 0x00a5 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0xa35d99df 00000024: GT 00000025: PUSH2 0x0074 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xcff0ab96 0000002f: GT 00000030: PUSH2 0x0059 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xcff0ab96 0000003a: EQ 0000003b: PUSH2 0x039a 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xe965084c 00000045: EQ 00000046: PUSH2 0x043b 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xe9e05c42 00000050: EQ 00000051: PUSH2 0x04c7 00000054: JUMPI 00000055: PUSH1 0x00 00000057: DUP1 00000058: REVERT 00000059: JUMPDEST 0000005a: DUP1 0000005b: PUSH4 0xa35d99df 00000060: EQ 00000061: PUSH2 0x0341 00000064: JUMPI 00000065: DUP1 00000066: PUSH4 0xc0c53b8b 0000006b: EQ 0000006c: PUSH2 0x037a 0000006f: JUMPI 00000070: PUSH1 0x00 00000072: DUP1 00000073: REVERT 00000074: JUMPDEST 00000075: DUP1 00000076: PUSH4 0x8c3152e9 0000007b: EQ 0000007c: PUSH2 0x0297 0000007f: JUMPI 00000080: DUP1 00000081: PUSH4 0x9b5f694a 00000086: EQ 00000087: PUSH2 0x02b7 0000008a: JUMPI 0000008b: DUP1 0000008c: PUSH4 0x9bf62d82 00000091: EQ 00000092: PUSH2 0x02e4 00000095: JUMPI 00000096: DUP1 00000097: PUSH4 0xa14238e7 0000009c: EQ 0000009d: PUSH2 0x0311 000000a0: JUMPI 000000a1: PUSH1 0x00 000000a3: DUP1 000000a4: REVERT 000000a5: JUMPDEST 000000a6: DUP1 000000a7: PUSH4 0x54fd4d50 000000ac: GT 000000ad: PUSH2 0x00e1 000000b0: JUMPI 000000b1: DUP1 000000b2: PUSH4 0x54fd4d50 000000b7: EQ 000000b8: PUSH2 0x01fc 000000bb: JUMPI 000000bc: DUP1 000000bd: PUSH4 0x5c975abb 000000c2: EQ 000000c3: PUSH2 0x0252 000000c6: JUMPI 000000c7: DUP1 000000c8: PUSH4 0x6dbffb78 000000cd: EQ 000000ce: PUSH2 0x0277 000000d1: JUMPI 000000d2: DUP1 000000d3: PUSH4 0x8b4c40b0 000000d8: EQ 000000d9: PUSH2 0x0137 000000dc: JUMPI 000000dd: PUSH1 0x00 000000df: DUP1 000000e0: REVERT 000000e1: JUMPDEST 000000e2: DUP1 000000e3: PUSH4 0x33d7e2bd 000000e8: EQ 000000e9: PUSH2 0x013e 000000ec: JUMPI 000000ed: DUP1 000000ee: PUSH4 0x35e80ab3 000000f3: EQ 000000f4: PUSH2 0x0195 000000f7: JUMPI 000000f8: DUP1 000000f9: PUSH4 0x452a9320 000000fe: EQ 000000ff: PUSH2 0x01c7 00000102: JUMPI 00000103: DUP1 00000104: PUSH4 0x4870496f 00000109: EQ 0000010a: PUSH2 0x01dc 0000010d: JUMPI 0000010e: PUSH1 0x00 00000110: DUP1 00000111: REVERT 00000112: JUMPDEST 00000113: CALLDATASIZE 00000114: PUSH2 0x0139 00000117: JUMPI 00000118: PUSH2 0x0137 0000011b: CALLER 0000011c: CALLVALUE 0000011d: PUSH3 0x0186a0 00000121: PUSH1 0x00 00000123: PUSH1 0x40 00000125: MLOAD 00000126: DUP1 00000127: PUSH1 0x20 00000129: ADD 0000012a: PUSH1 0x40 0000012c: MSTORE 0000012d: DUP1 0000012e: PUSH1 0x00 00000130: DUP2 00000131: MSTORE 00000132: POP 00000133: PUSH2 0x04d5 00000136: JUMP 00000137: JUMPDEST 00000138: STOP 00000139: JUMPDEST 0000013a: PUSH1 0x00 0000013c: DUP1 0000013d: REVERT 0000013e: JUMPDEST 0000013f: CALLVALUE 00000140: DUP1 00000141: ISZERO 00000142: PUSH2 0x014a 00000145: JUMPI 00000146: PUSH1 0x00 00000148: DUP1 00000149: REVERT 0000014a: JUMPDEST 0000014b: POP 0000014c: PUSH1 0x37 0000014e: SLOAD 0000014f: PUSH2 0x016b 00000152: SWAP1 00000153: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000168: AND 00000169: DUP2 0000016a: JUMP 0000016b: JUMPDEST 0000016c: PUSH1 0x40 0000016e: MLOAD 0000016f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000184: SWAP1 00000185: SWAP2 00000186: AND 00000187: DUP2 00000188: MSTORE 00000189: PUSH1 0x20 0000018b: ADD 0000018c: JUMPDEST 0000018d: PUSH1 0x40 0000018f: MLOAD 00000190: DUP1 00000191: SWAP2 00000192: SUB 00000193: SWAP1 00000194: RETURN 00000195: JUMPDEST 00000196: CALLVALUE 00000197: DUP1 00000198: ISZERO 00000199: PUSH2 0x01a1 0000019c: JUMPI 0000019d: PUSH1 0x00 0000019f: DUP1 000001a0: REVERT 000001a1: JUMPDEST 000001a2: POP 000001a3: PUSH1 0x35 000001a5: SLOAD 000001a6: PUSH2 0x016b 000001a9: SWAP1 000001aa: PUSH2 0x0100 000001ad: SWAP1 000001ae: DIV 000001af: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000001c4: AND 000001c5: DUP2 000001c6: JUMP 000001c7: JUMPDEST 000001c8: CALLVALUE 000001c9: DUP1 000001ca: ISZERO 000001cb: PUSH2 0x01d3 000001ce: JUMPI 000001cf: PUSH1 0x00 000001d1: DUP1 000001d2: REVERT 000001d3: JUMPDEST 000001d4: POP 000001d5: PUSH2 0x016b 000001d8: PUSH2 0x0692 000001db: JUMP 000001dc: JUMPDEST 000001dd: CALLVALUE 000001de: DUP1 000001df: ISZERO 000001e0: PUSH2 0x01e8 000001e3: JUMPI 000001e4: PUSH1 0x00 000001e6: DUP1 000001e7: REVERT 000001e8: JUMPDEST 000001e9: POP 000001ea: PUSH2 0x0137 000001ed: PUSH2 0x01f7 000001f0: CALLDATASIZE 000001f1: PUSH1 0x04 000001f3: PUSH2 0x4709 000001f6: JUMP 000001f7: JUMPDEST 000001f8: PUSH2 0x072a 000001fb: JUMP 000001fc: JUMPDEST 000001fd: CALLVALUE 000001fe: DUP1 000001ff: ISZERO 00000200: PUSH2 0x0208 00000203: JUMPI 00000204: PUSH1 0x00 00000206: DUP1 00000207: REVERT 00000208: JUMPDEST 00000209: POP 0000020a: PUSH2 0x0245 0000020d: PUSH1 0x40 0000020f: MLOAD 00000210: DUP1 00000211: PUSH1 0x40 00000213: ADD 00000214: PUSH1 0x40 00000216: MSTORE 00000217: DUP1 00000218: PUSH1 0x05 0000021a: DUP2 0000021b: MSTORE 0000021c: PUSH1 0x20 0000021e: ADD 0000021f: PUSH32 0x322e362e30000000000000000000000000000000000000000000000000000000 00000240: DUP2 00000241: MSTORE 00000242: POP 00000243: DUP2 00000244: JUMP 00000245: JUMPDEST 00000246: PUSH1 0x40 00000248: MLOAD 00000249: PUSH2 0x018c 0000024c: SWAP2 0000024d: SWAP1 0000024e: PUSH2 0x485b 00000251: JUMP 00000252: JUMPDEST 00000253: CALLVALUE 00000254: DUP1 00000255: ISZERO 00000256: PUSH2 0x025e 00000259: JUMPI 0000025a: PUSH1 0x00 0000025c: DUP1 0000025d: REVERT 0000025e: JUMPDEST 0000025f: POP 00000260: PUSH2 0x0267 00000263: PUSH2 0x0d2d 00000266: JUMP 00000267: JUMPDEST 00000268: PUSH1 0x40 0000026a: MLOAD 0000026b: SWAP1 0000026c: ISZERO 0000026d: ISZERO 0000026e: DUP2 0000026f: MSTORE 00000270: PUSH1 0x20 00000272: ADD 00000273: PUSH2 0x018c 00000276: JUMP 00000277: JUMPDEST 00000278: CALLVALUE 00000279: DUP1 0000027a: ISZERO 0000027b: PUSH2 0x0283 0000027e: JUMPI 0000027f: PUSH1 0x00 00000281: DUP1 00000282: REVERT 00000283: JUMPDEST 00000284: POP 00000285: PUSH2 0x0267 00000288: PUSH2 0x0292 0000028b: CALLDATASIZE 0000028c: PUSH1 0x04 0000028e: PUSH2 0x486e 00000291: JUMP 00000292: JUMPDEST 00000293: PUSH2 0x0dc0 00000296: JUMP 00000297: JUMPDEST 00000298: CALLVALUE 00000299: DUP1 0000029a: ISZERO 0000029b: PUSH2 0x02a3 0000029e: JUMPI 0000029f: PUSH1 0x00 000002a1: DUP1 000002a2: REVERT 000002a3: JUMPDEST 000002a4: POP 000002a5: PUSH2 0x0137 000002a8: PUSH2 0x02b2 000002ab: CALLDATASIZE 000002ac: PUSH1 0x04 000002ae: PUSH2 0x4887 000002b1: JUMP 000002b2: JUMPDEST 000002b3: PUSH2 0x0e7d 000002b6: JUMP 000002b7: JUMPDEST 000002b8: CALLVALUE 000002b9: DUP1 000002ba: ISZERO 000002bb: PUSH2 0x02c3 000002be: JUMPI 000002bf: PUSH1 0x00 000002c1: DUP1 000002c2: REVERT 000002c3: JUMPDEST 000002c4: POP 000002c5: PUSH1 0x36 000002c7: SLOAD 000002c8: PUSH2 0x016b 000002cb: SWAP1 000002cc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000002e1: AND 000002e2: DUP2 000002e3: JUMP 000002e4: JUMPDEST 000002e5: CALLVALUE 000002e6: DUP1 000002e7: ISZERO 000002e8: PUSH2 0x02f0 000002eb: JUMPI 000002ec: PUSH1 0x00 000002ee: DUP1 000002ef: REVERT 000002f0: JUMPDEST 000002f1: POP 000002f2: PUSH1 0x32 000002f4: SLOAD 000002f5: PUSH2 0x016b 000002f8: SWAP1 000002f9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000030e: AND 0000030f: DUP2 00000310: JUMP 00000311: JUMPDEST 00000312: CALLVALUE 00000313: DUP1 00000314: ISZERO 00000315: PUSH2 0x031d 00000318: JUMPI 00000319: PUSH1 0x00 0000031b: DUP1 0000031c: REVERT 0000031d: JUMPDEST 0000031e: POP 0000031f: PUSH2 0x0267 00000322: PUSH2 0x032c 00000325: CALLDATASIZE 00000326: PUSH1 0x04 00000328: PUSH2 0x486e 0000032b: JUMP 0000032c: JUMPDEST 0000032d: PUSH1 0x33 0000032f: PUSH1 0x20 00000331: MSTORE 00000332: PUSH1 0x00 00000334: SWAP1 00000335: DUP2 00000336: MSTORE 00000337: PUSH1 0x40 00000339: SWAP1 0000033a: KECCAK256 0000033b: SLOAD 0000033c: PUSH1 0xff 0000033e: AND 0000033f: DUP2 00000340: JUMP 00000341: JUMPDEST 00000342: CALLVALUE 00000343: DUP1 00000344: ISZERO 00000345: PUSH2 0x034d 00000348: JUMPI 00000349: PUSH1 0x00 0000034b: DUP1 0000034c: REVERT 0000034d: JUMPDEST 0000034e: POP 0000034f: PUSH2 0x0361 00000352: PUSH2 0x035c 00000355: CALLDATASIZE 00000356: PUSH1 0x04 00000358: PUSH2 0x48e1 0000035b: JUMP 0000035c: JUMPDEST 0000035d: PUSH2 0x16b8 00000360: JUMP 00000361: JUMPDEST 00000362: PUSH1 0x40 00000364: MLOAD 00000365: PUSH8 0xffffffffffffffff 0000036e: SWAP1 0000036f: SWAP2 00000370: AND 00000371: DUP2 00000372: MSTORE 00000373: PUSH1 0x20 00000375: ADD 00000376: PUSH2 0x018c 00000379: JUMP 0000037a: JUMPDEST 0000037b: CALLVALUE 0000037c: DUP1 0000037d: ISZERO 0000037e: PUSH2 0x0386 00000381: JUMPI 00000382: PUSH1 0x00 00000384: DUP1 00000385: REVERT 00000386: JUMPDEST 00000387: POP 00000388: PUSH2 0x0137 0000038b: PUSH2 0x0395 0000038e: CALLDATASIZE 0000038f: PUSH1 0x04 00000391: PUSH2 0x48fc 00000394: JUMP 00000395: JUMPDEST 00000396: PUSH2 0x16d1 00000399: JUMP 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: PUSH1 0x01 000003aa: SLOAD 000003ab: PUSH2 0x0402 000003ae: SWAP1 000003af: PUSH16 0xffffffffffffffffffffffffffffffff 000003c0: DUP2 000003c1: AND 000003c2: SWAP1 000003c3: PUSH8 0xffffffffffffffff 000003cc: PUSH17 0x0100000000000000000000000000000000 000003de: DUP3 000003df: DIV 000003e0: DUP2 000003e1: AND 000003e2: SWAP2 000003e3: PUSH25 0x01000000000000000000000000000000000000000000000000 000003fd: SWAP1 000003fe: DIV 000003ff: AND 00000400: DUP4 00000401: JUMP 00000402: JUMPDEST 00000403: PUSH1 0x40 00000405: DUP1 00000406: MLOAD 00000407: PUSH16 0xffffffffffffffffffffffffffffffff 00000418: SWAP1 00000419: SWAP5 0000041a: AND 0000041b: DUP5 0000041c: MSTORE 0000041d: PUSH8 0xffffffffffffffff 00000426: SWAP3 00000427: DUP4 00000428: AND 00000429: PUSH1 0x20 0000042b: DUP6 0000042c: ADD 0000042d: MSTORE 0000042e: SWAP2 0000042f: AND 00000430: SWAP1 00000431: DUP3 00000432: ADD 00000433: MSTORE 00000434: PUSH1 0x60 00000436: ADD 00000437: PUSH2 0x018c 0000043a: JUMP 0000043b: JUMPDEST 0000043c: CALLVALUE 0000043d: DUP1 0000043e: ISZERO 0000043f: PUSH2 0x0447 00000442: JUMPI 00000443: PUSH1 0x00 00000445: DUP1 00000446: REVERT 00000447: JUMPDEST 00000448: POP 00000449: PUSH2 0x0499 0000044c: PUSH2 0x0456 0000044f: CALLDATASIZE 00000450: PUSH1 0x04 00000452: PUSH2 0x486e 00000455: JUMP 00000456: JUMPDEST 00000457: PUSH1 0x34 00000459: PUSH1 0x20 0000045b: MSTORE 0000045c: PUSH1 0x00 0000045e: SWAP1 0000045f: DUP2 00000460: MSTORE 00000461: PUSH1 0x40 00000463: SWAP1 00000464: KECCAK256 00000465: DUP1 00000466: SLOAD 00000467: PUSH1 0x01 00000469: SWAP1 0000046a: SWAP2 0000046b: ADD 0000046c: SLOAD 0000046d: PUSH16 0xffffffffffffffffffffffffffffffff 0000047e: DUP1 0000047f: DUP3 00000480: AND 00000481: SWAP2 00000482: PUSH17 0x0100000000000000000000000000000000 00000494: SWAP1 00000495: DIV 00000496: AND 00000497: DUP4 00000498: JUMP 00000499: JUMPDEST 0000049a: PUSH1 0x40 0000049c: DUP1 0000049d: MLOAD 0000049e: SWAP4 0000049f: DUP5 000004a0: MSTORE 000004a1: PUSH16 0xffffffffffffffffffffffffffffffff 000004b2: SWAP3 000004b3: DUP4 000004b4: AND 000004b5: PUSH1 0x20 000004b7: DUP6 000004b8: ADD 000004b9: MSTORE 000004ba: SWAP2 000004bb: AND 000004bc: SWAP1 000004bd: DUP3 000004be: ADD 000004bf: MSTORE 000004c0: PUSH1 0x60 000004c2: ADD 000004c3: PUSH2 0x018c 000004c6: JUMP 000004c7: JUMPDEST 000004c8: PUSH2 0x0137 000004cb: PUSH2 0x04d5 000004ce: CALLDATASIZE 000004cf: PUSH1 0x04 000004d1: PUSH2 0x4955 000004d4: JUMP 000004d5: JUMPDEST 000004d6: DUP3 000004d7: PUSH1 0x00 000004d9: GAS 000004da: SWAP1 000004db: POP 000004dc: DUP4 000004dd: DUP1 000004de: ISZERO 000004df: PUSH2 0x04fd 000004e2: JUMPI 000004e3: POP 000004e4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000004f9: DUP8 000004fa: AND 000004fb: ISZERO 000004fc: ISZERO 000004fd: JUMPDEST 000004fe: ISZERO 000004ff: PUSH2 0x0534 00000502: JUMPI 00000503: PUSH1 0x40 00000505: MLOAD 00000506: PUSH32 0x13496fda00000000000000000000000000000000000000000000000000000000 00000527: DUP2 00000528: MSTORE 00000529: PUSH1 0x04 0000052b: ADD 0000052c: PUSH1 0x40 0000052e: MLOAD 0000052f: DUP1 00000530: SWAP2 00000531: SUB 00000532: SWAP1 00000533: REVERT 00000534: JUMPDEST 00000535: PUSH2 0x053e 00000538: DUP4 00000539: MLOAD 0000053a: PUSH2 0x16b8 0000053d: JUMP 0000053e: JUMPDEST 0000053f: PUSH8 0xffffffffffffffff 00000548: AND 00000549: DUP6 0000054a: PUSH8 0xffffffffffffffff 00000553: AND 00000554: LT 00000555: ISZERO 00000556: PUSH2 0x058b 00000559: JUMPI 0000055a: PUSH1 0x40 0000055c: MLOAD 0000055d: PUSH32 0x4929b80800000000000000000000000000000000000000000000000000000000 0000057e: DUP2 0000057f: MSTORE 00000580: PUSH1 0x04 00000582: ADD 00000583: PUSH1 0x40 00000585: MLOAD 00000586: DUP1 00000587: SWAP2 00000588: SUB 00000589: SWAP1 0000058a: REVERT 0000058b: JUMPDEST 0000058c: PUSH3 0x01d4c0 00000590: DUP4 00000591: MLOAD 00000592: GT 00000593: ISZERO 00000594: PUSH2 0x05c9 00000597: JUMPI 00000598: PUSH1 0x40 0000059a: MLOAD 0000059b: PUSH32 0x73052b0f00000000000000000000000000000000000000000000000000000000 000005bc: DUP2 000005bd: MSTORE 000005be: PUSH1 0x04 000005c0: ADD 000005c1: PUSH1 0x40 000005c3: MLOAD 000005c4: DUP1 000005c5: SWAP2 000005c6: SUB 000005c7: SWAP1 000005c8: REVERT 000005c9: JUMPDEST 000005ca: CALLER 000005cb: ORIGIN 000005cc: DUP2 000005cd: EQ 000005ce: PUSH2 0x05ea 000005d1: JUMPI 000005d2: POP 000005d3: CALLER 000005d4: PUSH20 0x1111000000000000000000000000000000001111 000005e9: ADD 000005ea: JUMPDEST 000005eb: PUSH1 0x00 000005ed: CALLVALUE 000005ee: DUP9 000005ef: DUP9 000005f0: DUP9 000005f1: DUP9 000005f2: PUSH1 0x40 000005f4: MLOAD 000005f5: PUSH1 0x20 000005f7: ADD 000005f8: PUSH2 0x0605 000005fb: SWAP6 000005fc: SWAP5 000005fd: SWAP4 000005fe: SWAP3 000005ff: SWAP2 00000600: SWAP1 00000601: PUSH2 0x49d2 00000604: JUMP 00000605: JUMPDEST 00000606: PUSH1 0x40 00000608: MLOAD 00000609: PUSH1 0x20 0000060b: DUP2 0000060c: DUP4 0000060d: SUB 0000060e: SUB 0000060f: DUP2 00000610: MSTORE 00000611: SWAP1 00000612: PUSH1 0x40 00000614: MSTORE 00000615: SWAP1 00000616: POP 00000617: PUSH1 0x00 00000619: DUP10 0000061a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000062f: AND 00000630: DUP4 00000631: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000646: AND 00000647: PUSH32 0xb3813568d9991fc951961fcb4c784893574240a28925604d09fc577c55bb7c32 00000668: DUP5 00000669: PUSH1 0x40 0000066b: MLOAD 0000066c: PUSH2 0x0675 0000066f: SWAP2 00000670: SWAP1 00000671: PUSH2 0x485b 00000674: JUMP 00000675: JUMPDEST 00000676: PUSH1 0x40 00000678: MLOAD 00000679: DUP1 0000067a: SWAP2 0000067b: SUB 0000067c: SWAP1 0000067d: LOG4 0000067e: POP 0000067f: POP 00000680: PUSH2 0x0689 00000683: DUP3 00000684: DUP3 00000685: PUSH2 0x193b 00000688: JUMP 00000689: JUMPDEST 0000068a: POP 0000068b: POP 0000068c: POP 0000068d: POP 0000068e: POP 0000068f: POP 00000690: POP 00000691: JUMP 00000692: JUMPDEST 00000693: PUSH1 0x00 00000695: PUSH1 0x35 00000697: PUSH1 0x01 00000699: SWAP1 0000069a: SLOAD 0000069b: SWAP1 0000069c: PUSH2 0x0100 0000069f: EXP 000006a0: SWAP1 000006a1: DIV 000006a2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000006b7: AND 000006b8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000006cd: AND 000006ce: PUSH4 0x452a9320 000006d3: PUSH1 0x40 000006d5: MLOAD 000006d6: DUP2 000006d7: PUSH4 0xffffffff 000006dc: AND 000006dd: PUSH1 0xe0 000006df: SHL 000006e0: DUP2 000006e1: MSTORE 000006e2: PUSH1 0x04 000006e4: ADD 000006e5: PUSH1 0x20 000006e7: PUSH1 0x40 000006e9: MLOAD 000006ea: DUP1 000006eb: DUP4 000006ec: SUB 000006ed: DUP2 000006ee: DUP7 000006ef: GAS 000006f0: STATICCALL 000006f1: ISZERO 000006f2: DUP1 000006f3: ISZERO 000006f4: PUSH2 0x0701 000006f7: JUMPI 000006f8: RETURNDATASIZE 000006f9: PUSH1 0x00 000006fb: DUP1 000006fc: RETURNDATACOPY 000006fd: RETURNDATASIZE 000006fe: PUSH1 0x00 00000700: REVERT 00000701: JUMPDEST 00000702: POP 00000703: POP 00000704: POP 00000705: POP 00000706: PUSH1 0x40 00000708: MLOAD 00000709: RETURNDATASIZE 0000070a: PUSH1 0x1f 0000070c: NOT 0000070d: PUSH1 0x1f 0000070f: DUP3 00000710: ADD 00000711: AND 00000712: DUP3 00000713: ADD 00000714: DUP1 00000715: PUSH1 0x40 00000717: MSTORE 00000718: POP 00000719: DUP2 0000071a: ADD 0000071b: SWAP1 0000071c: PUSH2 0x0725 0000071f: SWAP2 00000720: SWAP1 00000721: PUSH2 0x4a37 00000724: JUMP 00000725: JUMPDEST 00000726: SWAP1 00000727: POP 00000728: SWAP1 00000729: JUMP 0000072a: JUMPDEST 0000072b: PUSH2 0x0732 0000072e: PUSH2 0x0d2d 00000731: JUMP 00000732: JUMPDEST 00000733: ISZERO 00000734: PUSH2 0x0769 00000737: JUMPI 00000738: PUSH1 0x40 0000073a: MLOAD 0000073b: PUSH32 0xf480973e00000000000000000000000000000000000000000000000000000000 0000075c: DUP2 0000075d: MSTORE 0000075e: PUSH1 0x04 00000760: ADD 00000761: PUSH1 0x40 00000763: MLOAD 00000764: DUP1 00000765: SWAP2 00000766: SUB 00000767: SWAP1 00000768: REVERT 00000769: JUMPDEST 0000076a: ADDRESS 0000076b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000780: AND 00000781: DUP6 00000782: PUSH1 0x40 00000784: ADD 00000785: MLOAD 00000786: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000079b: AND 0000079c: SUB 0000079d: PUSH2 0x082d 000007a0: JUMPI 000007a1: PUSH1 0x40 000007a3: MLOAD 000007a4: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000007c5: DUP2 000007c6: MSTORE 000007c7: PUSH1 0x20 000007c9: PUSH1 0x04 000007cb: DUP3 000007cc: ADD 000007cd: MSTORE 000007ce: PUSH1 0x3f 000007d0: PUSH1 0x24 000007d2: DUP3 000007d3: ADD 000007d4: MSTORE 000007d5: PUSH32 0x4f7074696d69736d506f7274616c3a20796f752063616e6e6f742073656e6420 000007f6: PUSH1 0x44 000007f8: DUP3 000007f9: ADD 000007fa: MSTORE 000007fb: PUSH32 0x6d6573736167657320746f2074686520706f7274616c20636f6e747261637400 0000081c: PUSH1 0x64 0000081e: DUP3 0000081f: ADD 00000820: MSTORE 00000821: PUSH1 0x84 00000823: ADD 00000824: JUMPDEST 00000825: PUSH1 0x40 00000827: MLOAD 00000828: DUP1 00000829: SWAP2 0000082a: SUB 0000082b: SWAP1 0000082c: REVERT 0000082d: JUMPDEST 0000082e: PUSH1 0x36 00000830: SLOAD 00000831: PUSH1 0x40 00000833: MLOAD 00000834: PUSH32 0xa25ae55700000000000000000000000000000000000000000000000000000000 00000855: DUP2 00000856: MSTORE 00000857: PUSH1 0x04 00000859: DUP2 0000085a: ADD 0000085b: DUP7 0000085c: SWAP1 0000085d: MSTORE 0000085e: PUSH1 0x00 00000860: SWAP2 00000861: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000876: AND 00000877: SWAP1 00000878: PUSH4 0xa25ae557 0000087d: SWAP1 0000087e: PUSH1 0x24 00000880: ADD 00000881: PUSH1 0x60 00000883: PUSH1 0x40 00000885: MLOAD 00000886: DUP1 00000887: DUP4 00000888: SUB 00000889: DUP2 0000088a: DUP7 0000088b: GAS 0000088c: STATICCALL 0000088d: ISZERO 0000088e: DUP1 0000088f: ISZERO 00000890: PUSH2 0x089d 00000893: JUMPI 00000894: RETURNDATASIZE 00000895: PUSH1 0x00 00000897: DUP1 00000898: RETURNDATACOPY 00000899: RETURNDATASIZE 0000089a: PUSH1 0x00 0000089c: REVERT 0000089d: JUMPDEST 0000089e: POP 0000089f: POP 000008a0: POP 000008a1: POP 000008a2: PUSH1 0x40 000008a4: MLOAD 000008a5: RETURNDATASIZE 000008a6: PUSH1 0x1f 000008a8: NOT 000008a9: PUSH1 0x1f 000008ab: DUP3 000008ac: ADD 000008ad: AND 000008ae: DUP3 000008af: ADD 000008b0: DUP1 000008b1: PUSH1 0x40 000008b3: MSTORE 000008b4: POP 000008b5: DUP2 000008b6: ADD 000008b7: SWAP1 000008b8: PUSH2 0x08c1 000008bb: SWAP2 000008bc: SWAP1 000008bd: PUSH2 0x4a74 000008c0: JUMP 000008c1: JUMPDEST 000008c2: MLOAD 000008c3: SWAP1 000008c4: POP 000008c5: PUSH2 0x08db 000008c8: PUSH2 0x08d6 000008cb: CALLDATASIZE 000008cc: DUP7 000008cd: SWAP1 000008ce: SUB 000008cf: DUP7 000008d0: ADD 000008d1: DUP7 000008d2: PUSH2 0x4ad9 000008d5: JUMP 000008d6: JUMPDEST 000008d7: PUSH2 0x1c12 000008da: JUMP 000008db: JUMPDEST 000008dc: DUP2 000008dd: EQ 000008de: PUSH2 0x0969 000008e1: JUMPI 000008e2: PUSH1 0x40 000008e4: MLOAD 000008e5: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000906: DUP2 00000907: MSTORE 00000908: PUSH1 0x20 0000090a: PUSH1 0x04 0000090c: DUP3 0000090d: ADD 0000090e: MSTORE 0000090f: PUSH1 0x29 00000911: PUSH1 0x24 00000913: DUP3 00000914: ADD 00000915: MSTORE 00000916: PUSH32 0x4f7074696d69736d506f7274616c3a20696e76616c6964206f75747075742072 00000937: PUSH1 0x44 00000939: DUP3 0000093a: ADD 0000093b: MSTORE 0000093c: PUSH32 0x6f6f742070726f6f660000000000000000000000000000000000000000000000 0000095d: PUSH1 0x64 0000095f: DUP3 00000960: ADD 00000961: MSTORE 00000962: PUSH1 0x84 00000964: ADD 00000965: PUSH2 0x0824 00000968: JUMP 00000969: JUMPDEST 0000096a: PUSH1 0x00 0000096c: PUSH2 0x0974 0000096f: DUP8 00000970: PUSH2 0x1c6e 00000973: JUMP 00000974: JUMPDEST 00000975: PUSH1 0x00 00000977: DUP2 00000978: DUP2 00000979: MSTORE 0000097a: PUSH1 0x34 0000097c: PUSH1 0x20 0000097e: SWAP1 0000097f: DUP2 00000980: MSTORE 00000981: PUSH1 0x40 00000983: SWAP2 00000984: DUP3 00000985: SWAP1 00000986: KECCAK256 00000987: DUP3 00000988: MLOAD 00000989: PUSH1 0x60 0000098b: DUP2 0000098c: ADD 0000098d: DUP5 0000098e: MSTORE 0000098f: DUP2 00000990: SLOAD 00000991: DUP2 00000992: MSTORE 00000993: PUSH1 0x01 00000995: SWAP1 00000996: SWAP2 00000997: ADD 00000998: SLOAD 00000999: PUSH16 0xffffffffffffffffffffffffffffffff 000009aa: DUP1 000009ab: DUP3 000009ac: AND 000009ad: SWAP4 000009ae: DUP4 000009af: ADD 000009b0: DUP5 000009b1: SWAP1 000009b2: MSTORE 000009b3: PUSH17 0x0100000000000000000000000000000000 000009c5: SWAP1 000009c6: SWAP2 000009c7: DIV 000009c8: AND 000009c9: SWAP3 000009ca: DUP2 000009cb: ADD 000009cc: SWAP3 000009cd: SWAP1 000009ce: SWAP3 000009cf: MSTORE 000009d0: SWAP2 000009d1: SWAP3 000009d2: POP 000009d3: SWAP1 000009d4: ISZERO 000009d5: DUP1 000009d6: PUSH2 0x0a8a 000009d9: JUMPI 000009da: POP 000009db: DUP1 000009dc: MLOAD 000009dd: PUSH1 0x36 000009df: SLOAD 000009e0: PUSH1 0x40 000009e2: DUP1 000009e3: DUP5 000009e4: ADD 000009e5: MLOAD 000009e6: SWAP1 000009e7: MLOAD 000009e8: PUSH32 0xa25ae55700000000000000000000000000000000000000000000000000000000 00000a09: DUP2 00000a0a: MSTORE 00000a0b: PUSH16 0xffffffffffffffffffffffffffffffff 00000a1c: SWAP1 00000a1d: SWAP2 00000a1e: AND 00000a1f: PUSH1 0x04 00000a21: DUP3 00000a22: ADD 00000a23: MSTORE 00000a24: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a39: SWAP1 00000a3a: SWAP2 00000a3b: AND 00000a3c: SWAP1 00000a3d: PUSH4 0xa25ae557 00000a42: SWAP1 00000a43: PUSH1 0x24 00000a45: ADD 00000a46: PUSH1 0x60 00000a48: PUSH1 0x40 00000a4a: MLOAD 00000a4b: DUP1 00000a4c: DUP4 00000a4d: SUB 00000a4e: DUP2 00000a4f: DUP7 00000a50: GAS 00000a51: STATICCALL 00000a52: ISZERO 00000a53: DUP1 00000a54: ISZERO 00000a55: PUSH2 0x0a62 00000a58: JUMPI 00000a59: RETURNDATASIZE 00000a5a: PUSH1 0x00 00000a5c: DUP1 00000a5d: RETURNDATACOPY 00000a5e: RETURNDATASIZE 00000a5f: PUSH1 0x00 00000a61: REVERT 00000a62: JUMPDEST 00000a63: POP 00000a64: POP 00000a65: POP 00000a66: POP 00000a67: PUSH1 0x40 00000a69: MLOAD 00000a6a: RETURNDATASIZE 00000a6b: PUSH1 0x1f 00000a6d: NOT 00000a6e: PUSH1 0x1f 00000a70: DUP3 00000a71: ADD 00000a72: AND 00000a73: DUP3 00000a74: ADD 00000a75: DUP1 00000a76: PUSH1 0x40 00000a78: MSTORE 00000a79: POP 00000a7a: DUP2 00000a7b: ADD 00000a7c: SWAP1 00000a7d: PUSH2 0x0a86 00000a80: SWAP2 00000a81: SWAP1 00000a82: PUSH2 0x4a74 00000a85: JUMP 00000a86: JUMPDEST 00000a87: MLOAD 00000a88: EQ 00000a89: ISZERO 00000a8a: JUMPDEST 00000a8b: PUSH2 0x0b16 00000a8e: JUMPI 00000a8f: PUSH1 0x40 00000a91: MLOAD 00000a92: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000ab3: DUP2 00000ab4: MSTORE 00000ab5: PUSH1 0x20 00000ab7: PUSH1 0x04 00000ab9: DUP3 00000aba: ADD 00000abb: MSTORE 00000abc: PUSH1 0x37 00000abe: PUSH1 0x24 00000ac0: DUP3 00000ac1: ADD 00000ac2: MSTORE 00000ac3: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c206861736820 00000ae4: PUSH1 0x44 00000ae6: DUP3 00000ae7: ADD 00000ae8: MSTORE 00000ae9: PUSH32 0x68617320616c7265616479206265656e2070726f76656e000000000000000000 00000b0a: PUSH1 0x64 00000b0c: DUP3 00000b0d: ADD 00000b0e: MSTORE 00000b0f: PUSH1 0x84 00000b11: ADD 00000b12: PUSH2 0x0824 00000b15: JUMP 00000b16: JUMPDEST 00000b17: PUSH1 0x40 00000b19: DUP1 00000b1a: MLOAD 00000b1b: PUSH1 0x20 00000b1d: DUP2 00000b1e: ADD 00000b1f: DUP5 00000b20: SWAP1 00000b21: MSTORE 00000b22: PUSH1 0x00 00000b24: SWAP2 00000b25: DUP2 00000b26: ADD 00000b27: DUP3 00000b28: SWAP1 00000b29: MSTORE 00000b2a: PUSH1 0x60 00000b2c: ADD 00000b2d: PUSH1 0x40 00000b2f: DUP1 00000b30: MLOAD 00000b31: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00000b52: DUP2 00000b53: DUP5 00000b54: SUB 00000b55: ADD 00000b56: DUP2 00000b57: MSTORE 00000b58: DUP3 00000b59: DUP3 00000b5a: MSTORE 00000b5b: DUP1 00000b5c: MLOAD 00000b5d: PUSH1 0x20 00000b5f: SWAP2 00000b60: DUP3 00000b61: ADD 00000b62: KECCAK256 00000b63: SWAP1 00000b64: DUP4 00000b65: ADD 00000b66: DUP2 00000b67: SWAP1 00000b68: MSTORE 00000b69: SWAP3 00000b6a: POP 00000b6b: PUSH2 0x0bdf 00000b6e: SWAP2 00000b6f: ADD 00000b70: PUSH1 0x40 00000b72: DUP1 00000b73: MLOAD 00000b74: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00000b95: DUP2 00000b96: DUP5 00000b97: SUB 00000b98: ADD 00000b99: DUP2 00000b9a: MSTORE 00000b9b: DUP3 00000b9c: DUP3 00000b9d: ADD 00000b9e: SWAP1 00000b9f: SWAP2 00000ba0: MSTORE 00000ba1: PUSH1 0x01 00000ba3: DUP3 00000ba4: MSTORE 00000ba5: PUSH32 0x0100000000000000000000000000000000000000000000000000000000000000 00000bc6: PUSH1 0x20 00000bc8: DUP4 00000bc9: ADD 00000bca: MSTORE 00000bcb: SWAP1 00000bcc: PUSH2 0x0bd5 00000bcf: DUP9 00000bd0: DUP11 00000bd1: PUSH2 0x4b3f 00000bd4: JUMP 00000bd5: JUMPDEST 00000bd6: DUP11 00000bd7: PUSH1 0x40 00000bd9: ADD 00000bda: CALLDATALOAD 00000bdb: PUSH2 0x1c9e 00000bde: JUMP 00000bdf: JUMPDEST 00000be0: PUSH2 0x0c6b 00000be3: JUMPI 00000be4: PUSH1 0x40 00000be6: MLOAD 00000be7: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000c08: DUP2 00000c09: MSTORE 00000c0a: PUSH1 0x20 00000c0c: PUSH1 0x04 00000c0e: DUP3 00000c0f: ADD 00000c10: MSTORE 00000c11: PUSH1 0x32 00000c13: PUSH1 0x24 00000c15: DUP3 00000c16: ADD 00000c17: MSTORE 00000c18: PUSH32 0x4f7074696d69736d506f7274616c3a20696e76616c6964207769746864726177 00000c39: PUSH1 0x44 00000c3b: DUP3 00000c3c: ADD 00000c3d: MSTORE 00000c3e: PUSH32 0x616c20696e636c7573696f6e2070726f6f660000000000000000000000000000 00000c5f: PUSH1 0x64 00000c61: DUP3 00000c62: ADD 00000c63: MSTORE 00000c64: PUSH1 0x84 00000c66: ADD 00000c67: PUSH2 0x0824 00000c6a: JUMP 00000c6b: JUMPDEST 00000c6c: PUSH1 0x40 00000c6e: DUP1 00000c6f: MLOAD 00000c70: PUSH1 0x60 00000c72: DUP2 00000c73: ADD 00000c74: DUP3 00000c75: MSTORE 00000c76: DUP6 00000c77: DUP2 00000c78: MSTORE 00000c79: PUSH16 0xffffffffffffffffffffffffffffffff 00000c8a: TIMESTAMP 00000c8b: DUP2 00000c8c: AND 00000c8d: PUSH1 0x20 00000c8f: DUP1 00000c90: DUP5 00000c91: ADD 00000c92: SWAP2 00000c93: DUP3 00000c94: MSTORE 00000c95: DUP13 00000c96: DUP4 00000c97: AND 00000c98: DUP5 00000c99: DUP7 00000c9a: ADD 00000c9b: SWAP1 00000c9c: DUP2 00000c9d: MSTORE 00000c9e: PUSH1 0x00 00000ca0: DUP10 00000ca1: DUP2 00000ca2: MSTORE 00000ca3: PUSH1 0x34 00000ca5: DUP4 00000ca6: MSTORE 00000ca7: DUP7 00000ca8: DUP2 00000ca9: KECCAK256 00000caa: SWAP6 00000cab: MLOAD 00000cac: DUP7 00000cad: SSTORE 00000cae: SWAP3 00000caf: MLOAD 00000cb0: SWAP1 00000cb1: MLOAD 00000cb2: DUP5 00000cb3: AND 00000cb4: PUSH17 0x0100000000000000000000000000000000 00000cc6: MUL 00000cc7: SWAP4 00000cc8: AND 00000cc9: SWAP3 00000cca: SWAP1 00000ccb: SWAP3 00000ccc: OR 00000ccd: PUSH1 0x01 00000ccf: SWAP1 00000cd0: SWAP4 00000cd1: ADD 00000cd2: SWAP3 00000cd3: SWAP1 00000cd4: SWAP3 00000cd5: SSTORE 00000cd6: DUP12 00000cd7: DUP4 00000cd8: ADD 00000cd9: MLOAD 00000cda: SWAP1 00000cdb: DUP13 00000cdc: ADD 00000cdd: MLOAD 00000cde: SWAP3 00000cdf: MLOAD 00000ce0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000cf5: SWAP2 00000cf6: DUP3 00000cf7: AND 00000cf8: SWAP4 00000cf9: SWAP1 00000cfa: SWAP2 00000cfb: AND 00000cfc: SWAP2 00000cfd: DUP7 00000cfe: SWAP2 00000cff: PUSH32 0x67a6208cfcc0801d50f6cbe764733f4fddf66ac0b04442061a8a8c0cb6b63f62 00000d20: SWAP2 00000d21: SWAP1 00000d22: LOG4 00000d23: POP 00000d24: POP 00000d25: POP 00000d26: POP 00000d27: POP 00000d28: POP 00000d29: POP 00000d2a: POP 00000d2b: POP 00000d2c: JUMP 00000d2d: JUMPDEST 00000d2e: PUSH1 0x00 00000d30: PUSH1 0x35 00000d32: PUSH1 0x01 00000d34: SWAP1 00000d35: SLOAD 00000d36: SWAP1 00000d37: PUSH2 0x0100 00000d3a: EXP 00000d3b: SWAP1 00000d3c: DIV 00000d3d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000d52: AND 00000d53: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000d68: AND 00000d69: PUSH4 0x5c975abb 00000d6e: PUSH1 0x40 00000d70: MLOAD 00000d71: DUP2 00000d72: PUSH4 0xffffffff 00000d77: AND 00000d78: PUSH1 0xe0 00000d7a: SHL 00000d7b: DUP2 00000d7c: MSTORE 00000d7d: PUSH1 0x04 00000d7f: ADD 00000d80: PUSH1 0x20 00000d82: PUSH1 0x40 00000d84: MLOAD 00000d85: DUP1 00000d86: DUP4 00000d87: SUB 00000d88: DUP2 00000d89: DUP7 00000d8a: GAS 00000d8b: STATICCALL 00000d8c: ISZERO 00000d8d: DUP1 00000d8e: ISZERO 00000d8f: PUSH2 0x0d9c 00000d92: JUMPI 00000d93: RETURNDATASIZE 00000d94: PUSH1 0x00 00000d96: DUP1 00000d97: RETURNDATACOPY 00000d98: RETURNDATASIZE 00000d99: PUSH1 0x00 00000d9b: REVERT 00000d9c: JUMPDEST 00000d9d: POP 00000d9e: POP 00000d9f: POP 00000da0: POP 00000da1: PUSH1 0x40 00000da3: MLOAD 00000da4: RETURNDATASIZE 00000da5: PUSH1 0x1f 00000da7: NOT 00000da8: PUSH1 0x1f 00000daa: DUP3 00000dab: ADD 00000dac: AND 00000dad: DUP3 00000dae: ADD 00000daf: DUP1 00000db0: PUSH1 0x40 00000db2: MSTORE 00000db3: POP 00000db4: DUP2 00000db5: ADD 00000db6: SWAP1 00000db7: PUSH2 0x0725 00000dba: SWAP2 00000dbb: SWAP1 00000dbc: PUSH2 0x4bc3 00000dbf: JUMP 00000dc0: JUMPDEST 00000dc1: PUSH1 0x36 00000dc3: SLOAD 00000dc4: PUSH1 0x40 00000dc6: MLOAD 00000dc7: PUSH32 0xa25ae55700000000000000000000000000000000000000000000000000000000 00000de8: DUP2 00000de9: MSTORE 00000dea: PUSH1 0x04 00000dec: DUP2 00000ded: ADD 00000dee: DUP4 00000def: SWAP1 00000df0: MSTORE 00000df1: PUSH1 0x00 00000df3: SWAP2 00000df4: PUSH2 0x0e75 00000df7: SWAP2 00000df8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e0d: SWAP1 00000e0e: SWAP2 00000e0f: AND 00000e10: SWAP1 00000e11: PUSH4 0xa25ae557 00000e16: SWAP1 00000e17: PUSH1 0x24 00000e19: ADD 00000e1a: PUSH1 0x60 00000e1c: PUSH1 0x40 00000e1e: MLOAD 00000e1f: DUP1 00000e20: DUP4 00000e21: SUB 00000e22: DUP2 00000e23: DUP7 00000e24: GAS 00000e25: STATICCALL 00000e26: ISZERO 00000e27: DUP1 00000e28: ISZERO 00000e29: PUSH2 0x0e36 00000e2c: JUMPI 00000e2d: RETURNDATASIZE 00000e2e: PUSH1 0x00 00000e30: DUP1 00000e31: RETURNDATACOPY 00000e32: RETURNDATASIZE 00000e33: PUSH1 0x00 00000e35: REVERT 00000e36: JUMPDEST 00000e37: POP 00000e38: POP 00000e39: POP 00000e3a: POP 00000e3b: PUSH1 0x40 00000e3d: MLOAD 00000e3e: RETURNDATASIZE 00000e3f: PUSH1 0x1f 00000e41: NOT 00000e42: PUSH1 0x1f 00000e44: DUP3 00000e45: ADD 00000e46: AND 00000e47: DUP3 00000e48: ADD 00000e49: DUP1 00000e4a: PUSH1 0x40 00000e4c: MSTORE 00000e4d: POP 00000e4e: DUP2 00000e4f: ADD 00000e50: SWAP1 00000e51: PUSH2 0x0e5a 00000e54: SWAP2 00000e55: SWAP1 00000e56: PUSH2 0x4a74 00000e59: JUMP 00000e5a: JUMPDEST 00000e5b: PUSH1 0x20 00000e5d: ADD 00000e5e: MLOAD 00000e5f: PUSH16 0xffffffffffffffffffffffffffffffff 00000e70: AND 00000e71: PUSH2 0x1cc2 00000e74: JUMP 00000e75: JUMPDEST 00000e76: SWAP3 00000e77: SWAP2 00000e78: POP 00000e79: POP 00000e7a: JUMP 00000e7b: JUMPDEST 00000e7c: JUMP 00000e7d: JUMPDEST 00000e7e: PUSH2 0x0e85 00000e81: PUSH2 0x0d2d 00000e84: JUMP 00000e85: JUMPDEST 00000e86: ISZERO 00000e87: PUSH2 0x0ebc 00000e8a: JUMPI 00000e8b: PUSH1 0x40 00000e8d: MLOAD 00000e8e: PUSH32 0xf480973e00000000000000000000000000000000000000000000000000000000 00000eaf: DUP2 00000eb0: MSTORE 00000eb1: PUSH1 0x04 00000eb3: ADD 00000eb4: PUSH1 0x40 00000eb6: MLOAD 00000eb7: DUP1 00000eb8: SWAP2 00000eb9: SUB 00000eba: SWAP1 00000ebb: REVERT 00000ebc: JUMPDEST 00000ebd: PUSH1 0x32 00000ebf: SLOAD 00000ec0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000ed5: AND 00000ed6: PUSH2 0xdead 00000ed9: EQ 00000eda: PUSH2 0x0f65 00000edd: JUMPI 00000ede: PUSH1 0x40 00000ee0: MLOAD 00000ee1: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000f02: DUP2 00000f03: MSTORE 00000f04: PUSH1 0x20 00000f06: PUSH1 0x04 00000f08: DUP3 00000f09: ADD 00000f0a: MSTORE 00000f0b: PUSH1 0x3f 00000f0d: PUSH1 0x24 00000f0f: DUP3 00000f10: ADD 00000f11: MSTORE 00000f12: PUSH32 0x4f7074696d69736d506f7274616c3a2063616e206f6e6c792074726967676572 00000f33: PUSH1 0x44 00000f35: DUP3 00000f36: ADD 00000f37: MSTORE 00000f38: PUSH32 0x206f6e65207769746864726177616c20706572207472616e73616374696f6e00 00000f59: PUSH1 0x64 00000f5b: DUP3 00000f5c: ADD 00000f5d: MSTORE 00000f5e: PUSH1 0x84 00000f60: ADD 00000f61: PUSH2 0x0824 00000f64: JUMP 00000f65: JUMPDEST 00000f66: PUSH1 0x00 00000f68: PUSH2 0x0f70 00000f6b: DUP3 00000f6c: PUSH2 0x1c6e 00000f6f: JUMP 00000f70: JUMPDEST 00000f71: PUSH1 0x00 00000f73: DUP2 00000f74: DUP2 00000f75: MSTORE 00000f76: PUSH1 0x34 00000f78: PUSH1 0x20 00000f7a: SWAP1 00000f7b: DUP2 00000f7c: MSTORE 00000f7d: PUSH1 0x40 00000f7f: DUP1 00000f80: DUP4 00000f81: KECCAK256 00000f82: DUP2 00000f83: MLOAD 00000f84: PUSH1 0x60 00000f86: DUP2 00000f87: ADD 00000f88: DUP4 00000f89: MSTORE 00000f8a: DUP2 00000f8b: SLOAD 00000f8c: DUP2 00000f8d: MSTORE 00000f8e: PUSH1 0x01 00000f90: SWAP1 00000f91: SWAP2 00000f92: ADD 00000f93: SLOAD 00000f94: PUSH16 0xffffffffffffffffffffffffffffffff 00000fa5: DUP1 00000fa6: DUP3 00000fa7: AND 00000fa8: SWAP5 00000fa9: DUP4 00000faa: ADD 00000fab: DUP6 00000fac: SWAP1 00000fad: MSTORE 00000fae: PUSH17 0x0100000000000000000000000000000000 00000fc0: SWAP1 00000fc1: SWAP2 00000fc2: DIV 00000fc3: AND 00000fc4: SWAP2 00000fc5: DUP2 00000fc6: ADD 00000fc7: SWAP2 00000fc8: SWAP1 00000fc9: SWAP2 00000fca: MSTORE 00000fcb: SWAP3 00000fcc: SWAP4 00000fcd: POP 00000fce: SWAP1 00000fcf: SUB 00000fd0: PUSH2 0x105b 00000fd3: JUMPI 00000fd4: PUSH1 0x40 00000fd6: MLOAD 00000fd7: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000ff8: DUP2 00000ff9: MSTORE 00000ffa: PUSH1 0x20 00000ffc: PUSH1 0x04 00000ffe: DUP3 00000fff: ADD 00001000: MSTORE 00001001: PUSH1 0x32 00001003: PUSH1 0x24 00001005: DUP3 00001006: ADD 00001007: MSTORE 00001008: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c20686173206e 00001029: PUSH1 0x44 0000102b: DUP3 0000102c: ADD 0000102d: MSTORE 0000102e: PUSH32 0x6f74206265656e2070726f76656e207965740000000000000000000000000000 0000104f: PUSH1 0x64 00001051: DUP3 00001052: ADD 00001053: MSTORE 00001054: PUSH1 0x84 00001056: ADD 00001057: PUSH2 0x0824 0000105a: JUMP 0000105b: JUMPDEST 0000105c: PUSH1 0x36 0000105e: PUSH1 0x00 00001060: SWAP1 00001061: SLOAD 00001062: SWAP1 00001063: PUSH2 0x0100 00001066: EXP 00001067: SWAP1 00001068: DIV 00001069: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000107e: AND 0000107f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001094: AND 00001095: PUSH4 0x88786272 0000109a: PUSH1 0x40 0000109c: MLOAD 0000109d: DUP2 0000109e: PUSH4 0xffffffff 000010a3: AND 000010a4: PUSH1 0xe0 000010a6: SHL 000010a7: DUP2 000010a8: MSTORE 000010a9: PUSH1 0x04 000010ab: ADD 000010ac: PUSH1 0x20 000010ae: PUSH1 0x40 000010b0: MLOAD 000010b1: DUP1 000010b2: DUP4 000010b3: SUB 000010b4: DUP2 000010b5: DUP7 000010b6: GAS 000010b7: STATICCALL 000010b8: ISZERO 000010b9: DUP1 000010ba: ISZERO 000010bb: PUSH2 0x10c8 000010be: JUMPI 000010bf: RETURNDATASIZE 000010c0: PUSH1 0x00 000010c2: DUP1 000010c3: RETURNDATACOPY 000010c4: RETURNDATASIZE 000010c5: PUSH1 0x00 000010c7: REVERT 000010c8: JUMPDEST 000010c9: POP 000010ca: POP 000010cb: POP 000010cc: POP 000010cd: PUSH1 0x40 000010cf: MLOAD 000010d0: RETURNDATASIZE 000010d1: PUSH1 0x1f 000010d3: NOT 000010d4: PUSH1 0x1f 000010d6: DUP3 000010d7: ADD 000010d8: AND 000010d9: DUP3 000010da: ADD 000010db: DUP1 000010dc: PUSH1 0x40 000010de: MSTORE 000010df: POP 000010e0: DUP2 000010e1: ADD 000010e2: SWAP1 000010e3: PUSH2 0x10ec 000010e6: SWAP2 000010e7: SWAP1 000010e8: PUSH2 0x4be0 000010eb: JUMP 000010ec: JUMPDEST 000010ed: DUP2 000010ee: PUSH1 0x20 000010f0: ADD 000010f1: MLOAD 000010f2: PUSH16 0xffffffffffffffffffffffffffffffff 00001103: AND 00001104: LT 00001105: ISZERO 00001106: PUSH2 0x11b7 00001109: JUMPI 0000110a: PUSH1 0x40 0000110c: MLOAD 0000110d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000112e: DUP2 0000112f: MSTORE 00001130: PUSH1 0x20 00001132: PUSH1 0x04 00001134: DUP3 00001135: ADD 00001136: MSTORE 00001137: PUSH1 0x4b 00001139: PUSH1 0x24 0000113b: DUP3 0000113c: ADD 0000113d: MSTORE 0000113e: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c2074696d6573 0000115f: PUSH1 0x44 00001161: DUP3 00001162: ADD 00001163: MSTORE 00001164: PUSH32 0x74616d70206c657373207468616e204c32204f7261636c65207374617274696e 00001185: PUSH1 0x64 00001187: DUP3 00001188: ADD 00001189: MSTORE 0000118a: PUSH32 0x672074696d657374616d70000000000000000000000000000000000000000000 000011ab: PUSH1 0x84 000011ad: DUP3 000011ae: ADD 000011af: MSTORE 000011b0: PUSH1 0xa4 000011b2: ADD 000011b3: PUSH2 0x0824 000011b6: JUMP 000011b7: JUMPDEST 000011b8: PUSH2 0x11d6 000011bb: DUP2 000011bc: PUSH1 0x20 000011be: ADD 000011bf: MLOAD 000011c0: PUSH16 0xffffffffffffffffffffffffffffffff 000011d1: AND 000011d2: PUSH2 0x1cc2 000011d5: JUMP 000011d6: JUMPDEST 000011d7: PUSH2 0x1288 000011da: JUMPI 000011db: PUSH1 0x40 000011dd: MLOAD 000011de: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000011ff: DUP2 00001200: MSTORE 00001201: PUSH1 0x20 00001203: PUSH1 0x04 00001205: DUP3 00001206: ADD 00001207: MSTORE 00001208: PUSH1 0x45 0000120a: PUSH1 0x24 0000120c: DUP3 0000120d: ADD 0000120e: MSTORE 0000120f: PUSH32 0x4f7074696d69736d506f7274616c3a2070726f76656e20776974686472617761 00001230: PUSH1 0x44 00001232: DUP3 00001233: ADD 00001234: MSTORE 00001235: PUSH32 0x6c2066696e616c697a6174696f6e20706572696f6420686173206e6f7420656c 00001256: PUSH1 0x64 00001258: DUP3 00001259: ADD 0000125a: MSTORE 0000125b: PUSH32 0x6170736564000000000000000000000000000000000000000000000000000000 0000127c: PUSH1 0x84 0000127e: DUP3 0000127f: ADD 00001280: MSTORE 00001281: PUSH1 0xa4 00001283: ADD 00001284: PUSH2 0x0824 00001287: JUMP 00001288: JUMPDEST 00001289: PUSH1 0x36 0000128b: SLOAD 0000128c: PUSH1 0x40 0000128e: DUP3 0000128f: DUP2 00001290: ADD 00001291: MLOAD 00001292: SWAP1 00001293: MLOAD 00001294: PUSH32 0xa25ae55700000000000000000000000000000000000000000000000000000000 000012b5: DUP2 000012b6: MSTORE 000012b7: PUSH16 0xffffffffffffffffffffffffffffffff 000012c8: SWAP1 000012c9: SWAP2 000012ca: AND 000012cb: PUSH1 0x04 000012cd: DUP3 000012ce: ADD 000012cf: MSTORE 000012d0: PUSH1 0x00 000012d2: SWAP2 000012d3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000012e8: AND 000012e9: SWAP1 000012ea: PUSH4 0xa25ae557 000012ef: SWAP1 000012f0: PUSH1 0x24 000012f2: ADD 000012f3: PUSH1 0x60 000012f5: PUSH1 0x40 000012f7: MLOAD 000012f8: DUP1 000012f9: DUP4 000012fa: SUB 000012fb: DUP2 000012fc: DUP7 000012fd: GAS 000012fe: STATICCALL 000012ff: ISZERO 00001300: DUP1 00001301: ISZERO 00001302: PUSH2 0x130f 00001305: JUMPI 00001306: RETURNDATASIZE 00001307: PUSH1 0x00 00001309: DUP1 0000130a: RETURNDATACOPY 0000130b: RETURNDATASIZE 0000130c: PUSH1 0x00 0000130e: REVERT 0000130f: JUMPDEST 00001310: POP 00001311: POP 00001312: POP 00001313: POP 00001314: PUSH1 0x40 00001316: MLOAD 00001317: RETURNDATASIZE 00001318: PUSH1 0x1f 0000131a: NOT 0000131b: PUSH1 0x1f 0000131d: DUP3 0000131e: ADD 0000131f: AND 00001320: DUP3 00001321: ADD 00001322: DUP1 00001323: PUSH1 0x40 00001325: MSTORE 00001326: POP 00001327: DUP2 00001328: ADD 00001329: SWAP1 0000132a: PUSH2 0x1333 0000132d: SWAP2 0000132e: SWAP1 0000132f: PUSH2 0x4a74 00001332: JUMP 00001333: JUMPDEST 00001334: DUP3 00001335: MLOAD 00001336: DUP2 00001337: MLOAD 00001338: SWAP2 00001339: SWAP3 0000133a: POP 0000133b: EQ 0000133c: PUSH2 0x13ed 0000133f: JUMPI 00001340: PUSH1 0x40 00001342: MLOAD 00001343: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001364: DUP2 00001365: MSTORE 00001366: PUSH1 0x20 00001368: PUSH1 0x04 0000136a: DUP3 0000136b: ADD 0000136c: MSTORE 0000136d: PUSH1 0x49 0000136f: PUSH1 0x24 00001371: DUP3 00001372: ADD 00001373: MSTORE 00001374: PUSH32 0x4f7074696d69736d506f7274616c3a206f757470757420726f6f742070726f76 00001395: PUSH1 0x44 00001397: DUP3 00001398: ADD 00001399: MSTORE 0000139a: PUSH32 0x656e206973206e6f74207468652073616d652061732063757272656e74206f75 000013bb: PUSH1 0x64 000013bd: DUP3 000013be: ADD 000013bf: MSTORE 000013c0: PUSH32 0x7470757420726f6f740000000000000000000000000000000000000000000000 000013e1: PUSH1 0x84 000013e3: DUP3 000013e4: ADD 000013e5: MSTORE 000013e6: PUSH1 0xa4 000013e8: ADD 000013e9: PUSH2 0x0824 000013ec: JUMP 000013ed: JUMPDEST 000013ee: PUSH2 0x140c 000013f1: DUP2 000013f2: PUSH1 0x20 000013f4: ADD 000013f5: MLOAD 000013f6: PUSH16 0xffffffffffffffffffffffffffffffff 00001407: AND 00001408: PUSH2 0x1cc2 0000140b: JUMP 0000140c: JUMPDEST 0000140d: PUSH2 0x14be 00001410: JUMPI 00001411: PUSH1 0x40 00001413: MLOAD 00001414: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001435: DUP2 00001436: MSTORE 00001437: PUSH1 0x20 00001439: PUSH1 0x04 0000143b: DUP3 0000143c: ADD 0000143d: MSTORE 0000143e: PUSH1 0x43 00001440: PUSH1 0x24 00001442: DUP3 00001443: ADD 00001444: MSTORE 00001445: PUSH32 0x4f7074696d69736d506f7274616c3a206f75747075742070726f706f73616c20 00001466: PUSH1 0x44 00001468: DUP3 00001469: ADD 0000146a: MSTORE 0000146b: PUSH32 0x66696e616c697a6174696f6e20706572696f6420686173206e6f7420656c6170 0000148c: PUSH1 0x64 0000148e: DUP3 0000148f: ADD 00001490: MSTORE 00001491: PUSH32 0x7365640000000000000000000000000000000000000000000000000000000000 000014b2: PUSH1 0x84 000014b4: DUP3 000014b5: ADD 000014b6: MSTORE 000014b7: PUSH1 0xa4 000014b9: ADD 000014ba: PUSH2 0x0824 000014bd: JUMP 000014be: JUMPDEST 000014bf: PUSH1 0x00 000014c1: DUP4 000014c2: DUP2 000014c3: MSTORE 000014c4: PUSH1 0x33 000014c6: PUSH1 0x20 000014c8: MSTORE 000014c9: PUSH1 0x40 000014cb: SWAP1 000014cc: KECCAK256 000014cd: SLOAD 000014ce: PUSH1 0xff 000014d0: AND 000014d1: ISZERO 000014d2: PUSH2 0x155d 000014d5: JUMPI 000014d6: PUSH1 0x40 000014d8: MLOAD 000014d9: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000014fa: DUP2 000014fb: MSTORE 000014fc: PUSH1 0x20 000014fe: PUSH1 0x04 00001500: DUP3 00001501: ADD 00001502: MSTORE 00001503: PUSH1 0x35 00001505: PUSH1 0x24 00001507: DUP3 00001508: ADD 00001509: MSTORE 0000150a: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c206861732061 0000152b: PUSH1 0x44 0000152d: DUP3 0000152e: ADD 0000152f: MSTORE 00001530: PUSH32 0x6c7265616479206265656e2066696e616c697a65640000000000000000000000 00001551: PUSH1 0x64 00001553: DUP3 00001554: ADD 00001555: MSTORE 00001556: PUSH1 0x84 00001558: ADD 00001559: PUSH2 0x0824 0000155c: JUMP 0000155d: JUMPDEST 0000155e: PUSH1 0x00 00001560: DUP4 00001561: DUP2 00001562: MSTORE 00001563: PUSH1 0x33 00001565: PUSH1 0x20 00001567: SWAP1 00001568: DUP2 00001569: MSTORE 0000156a: PUSH1 0x40 0000156c: DUP1 0000156d: DUP4 0000156e: KECCAK256 0000156f: DUP1 00001570: SLOAD 00001571: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 00001592: AND 00001593: PUSH1 0x01 00001595: OR 00001596: SWAP1 00001597: SSTORE 00001598: SWAP1 00001599: DUP7 0000159a: ADD 0000159b: MLOAD 0000159c: PUSH1 0x32 0000159e: DUP1 0000159f: SLOAD 000015a0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000015b5: SWAP1 000015b6: SWAP3 000015b7: AND 000015b8: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 000015d9: SWAP1 000015da: SWAP3 000015db: AND 000015dc: SWAP2 000015dd: SWAP1 000015de: SWAP2 000015df: OR 000015e0: SWAP1 000015e1: SSTORE 000015e2: DUP6 000015e3: ADD 000015e4: MLOAD 000015e5: PUSH1 0x80 000015e7: DUP7 000015e8: ADD 000015e9: MLOAD 000015ea: PUSH1 0x60 000015ec: DUP8 000015ed: ADD 000015ee: MLOAD 000015ef: PUSH1 0xa0 000015f1: DUP9 000015f2: ADD 000015f3: MLOAD 000015f4: PUSH2 0x15ff 000015f7: SWAP4 000015f8: SWAP3 000015f9: SWAP2 000015fa: SWAP1 000015fb: PUSH2 0x1d68 000015fe: JUMP 000015ff: JUMPDEST 00001600: PUSH1 0x32 00001602: DUP1 00001603: SLOAD 00001604: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 00001625: AND 00001626: PUSH2 0xdead 00001629: OR 0000162a: SWAP1 0000162b: SSTORE 0000162c: PUSH1 0x40 0000162e: MLOAD 0000162f: SWAP1 00001630: SWAP2 00001631: POP 00001632: DUP5 00001633: SWAP1 00001634: PUSH32 0xdb5c7652857aa163daadd670e116628fb42e869d8ac4251ef8971d9e5727df1b 00001655: SWAP1 00001656: PUSH2 0x1664 00001659: SWAP1 0000165a: DUP5 0000165b: ISZERO 0000165c: ISZERO 0000165d: DUP2 0000165e: MSTORE 0000165f: PUSH1 0x20 00001661: ADD 00001662: SWAP1 00001663: JUMP 00001664: JUMPDEST 00001665: PUSH1 0x40 00001667: MLOAD 00001668: DUP1 00001669: SWAP2 0000166a: SUB 0000166b: SWAP1 0000166c: LOG2 0000166d: DUP1 0000166e: ISZERO 0000166f: DUP1 00001670: ISZERO 00001671: PUSH2 0x167a 00001674: JUMPI 00001675: POP 00001676: ORIGIN 00001677: PUSH1 0x01 00001679: EQ 0000167a: JUMPDEST 0000167b: ISZERO 0000167c: PUSH2 0x16b1 0000167f: JUMPI 00001680: PUSH1 0x40 00001682: MLOAD 00001683: PUSH32 0xeeae4ed300000000000000000000000000000000000000000000000000000000 000016a4: DUP2 000016a5: MSTORE 000016a6: PUSH1 0x04 000016a8: ADD 000016a9: PUSH1 0x40 000016ab: MLOAD 000016ac: DUP1 000016ad: SWAP2 000016ae: SUB 000016af: SWAP1 000016b0: REVERT 000016b1: JUMPDEST 000016b2: POP 000016b3: POP 000016b4: POP 000016b5: POP 000016b6: POP 000016b7: JUMP 000016b8: JUMPDEST 000016b9: PUSH1 0x00 000016bb: PUSH2 0x16c5 000016be: DUP3 000016bf: PUSH1 0x10 000016c1: PUSH2 0x4c28 000016c4: JUMP 000016c5: JUMPDEST 000016c6: PUSH2 0x0e75 000016c9: SWAP1 000016ca: PUSH2 0x5208 000016cd: PUSH2 0x4c58 000016d0: JUMP 000016d1: JUMPDEST 000016d2: PUSH1 0x00 000016d4: SLOAD 000016d5: PUSH2 0x0100 000016d8: SWAP1 000016d9: DIV 000016da: PUSH1 0xff 000016dc: AND 000016dd: ISZERO 000016de: DUP1 000016df: DUP1 000016e0: ISZERO 000016e1: PUSH2 0x16f1 000016e4: JUMPI 000016e5: POP 000016e6: PUSH1 0x00 000016e8: SLOAD 000016e9: PUSH1 0x01 000016eb: PUSH1 0xff 000016ed: SWAP1 000016ee: SWAP2 000016ef: AND 000016f0: LT 000016f1: JUMPDEST 000016f2: DUP1 000016f3: PUSH2 0x170b 000016f6: JUMPI 000016f7: POP 000016f8: ADDRESS 000016f9: EXTCODESIZE 000016fa: ISZERO 000016fb: DUP1 000016fc: ISZERO 000016fd: PUSH2 0x170b 00001700: JUMPI 00001701: POP 00001702: PUSH1 0x00 00001704: SLOAD 00001705: PUSH1 0xff 00001707: AND 00001708: PUSH1 0x01 0000170a: EQ 0000170b: JUMPDEST 0000170c: PUSH2 0x1797 0000170f: JUMPI 00001710: PUSH1 0x40 00001712: MLOAD 00001713: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001734: DUP2 00001735: MSTORE 00001736: PUSH1 0x20 00001738: PUSH1 0x04 0000173a: DUP3 0000173b: ADD 0000173c: MSTORE 0000173d: PUSH1 0x2e 0000173f: PUSH1 0x24 00001741: DUP3 00001742: ADD 00001743: MSTORE 00001744: PUSH32 0x496e697469616c697a61626c653a20636f6e747261637420697320616c726561 00001765: PUSH1 0x44 00001767: DUP3 00001768: ADD 00001769: MSTORE 0000176a: PUSH32 0x647920696e697469616c697a6564000000000000000000000000000000000000 0000178b: PUSH1 0x64 0000178d: DUP3 0000178e: ADD 0000178f: MSTORE 00001790: PUSH1 0x84 00001792: ADD 00001793: PUSH2 0x0824 00001796: JUMP 00001797: JUMPDEST 00001798: PUSH1 0x00 0000179a: DUP1 0000179b: SLOAD 0000179c: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 000017bd: AND 000017be: PUSH1 0x01 000017c0: OR 000017c1: SWAP1 000017c2: SSTORE 000017c3: DUP1 000017c4: ISZERO 000017c5: PUSH2 0x17f5 000017c8: JUMPI 000017c9: PUSH1 0x00 000017cb: DUP1 000017cc: SLOAD 000017cd: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff 000017ee: AND 000017ef: PUSH2 0x0100 000017f2: OR 000017f3: SWAP1 000017f4: SSTORE 000017f5: JUMPDEST 000017f6: PUSH1 0x36 000017f8: DUP1 000017f9: SLOAD 000017fa: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 0000181b: SWAP1 0000181c: DUP2 0000181d: AND 0000181e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001833: DUP8 00001834: DUP2 00001835: AND 00001836: SWAP2 00001837: SWAP1 00001838: SWAP2 00001839: OR 0000183a: SWAP1 0000183b: SWAP3 0000183c: SSTORE 0000183d: PUSH1 0x37 0000183f: DUP1 00001840: SLOAD 00001841: SWAP1 00001842: SWAP2 00001843: AND 00001844: DUP6 00001845: DUP4 00001846: AND 00001847: OR 00001848: SWAP1 00001849: SSTORE 0000184a: PUSH1 0x35 0000184c: DUP1 0000184d: SLOAD 0000184e: PUSH32 0xffffffffffffffffffffff0000000000000000000000000000000000000000ff 0000186f: AND 00001870: PUSH2 0x0100 00001873: DUP6 00001874: DUP5 00001875: AND 00001876: MUL 00001877: OR 00001878: SWAP1 00001879: SSTORE 0000187a: PUSH1 0x32 0000187c: SLOAD 0000187d: AND 0000187e: PUSH2 0x18ae 00001881: JUMPI 00001882: PUSH1 0x32 00001884: DUP1 00001885: SLOAD 00001886: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 000018a7: AND 000018a8: PUSH2 0xdead 000018ab: OR 000018ac: SWAP1 000018ad: SSTORE 000018ae: JUMPDEST 000018af: PUSH2 0x18b6 000018b2: PUSH2 0x1dc6 000018b5: JUMP 000018b6: JUMPDEST 000018b7: DUP1 000018b8: ISZERO 000018b9: PUSH2 0x1919 000018bc: JUMPI 000018bd: PUSH1 0x00 000018bf: DUP1 000018c0: SLOAD 000018c1: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff 000018e2: AND 000018e3: SWAP1 000018e4: SSTORE 000018e5: PUSH1 0x40 000018e7: MLOAD 000018e8: PUSH1 0x01 000018ea: DUP2 000018eb: MSTORE 000018ec: PUSH32 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498 0000190d: SWAP1 0000190e: PUSH1 0x20 00001910: ADD 00001911: PUSH1 0x40 00001913: MLOAD 00001914: DUP1 00001915: SWAP2 00001916: SUB 00001917: SWAP1 00001918: LOG1 00001919: JUMPDEST 0000191a: POP 0000191b: POP 0000191c: POP 0000191d: POP 0000191e: JUMP 0000191f: JUMPDEST 00001920: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001935: AND 00001936: EXTCODESIZE 00001937: ISZERO 00001938: ISZERO 00001939: SWAP1 0000193a: JUMP 0000193b: JUMPDEST 0000193c: PUSH1 0x01 0000193e: SLOAD 0000193f: PUSH1 0x00 00001941: SWAP1 00001942: PUSH2 0x1971 00001945: SWAP1 00001946: PUSH25 0x01000000000000000000000000000000000000000000000000 00001960: SWAP1 00001961: DIV 00001962: PUSH8 0xffffffffffffffff 0000196b: AND 0000196c: NUMBER 0000196d: PUSH2 0x4c84 00001970: JUMP 00001971: JUMPDEST 00001972: SWAP1 00001973: POP 00001974: PUSH1 0x00 00001976: PUSH2 0x197d 00001979: PUSH2 0x1ed9 0000197c: JUMP 0000197d: JUMPDEST 0000197e: SWAP1 0000197f: POP 00001980: PUSH1 0x00 00001982: DUP2 00001983: PUSH1 0x20 00001985: ADD 00001986: MLOAD 00001987: PUSH1 0xff 00001989: AND 0000198a: DUP3 0000198b: PUSH1 0x00 0000198d: ADD 0000198e: MLOAD 0000198f: PUSH4 0xffffffff 00001994: AND 00001995: PUSH2 0x199e 00001998: SWAP2 00001999: SWAP1 0000199a: PUSH2 0x4cca 0000199d: JUMP 0000199e: JUMPDEST 0000199f: SWAP1 000019a0: POP 000019a1: DUP3 000019a2: ISZERO 000019a3: PUSH2 0x1ad5 000019a6: JUMPI 000019a7: PUSH1 0x01 000019a9: SLOAD 000019aa: PUSH1 0x00 000019ac: SWAP1 000019ad: PUSH2 0x19d5 000019b0: SWAP1 000019b1: DUP4 000019b2: SWAP1 000019b3: PUSH17 0x0100000000000000000000000000000000 000019c5: SWAP1 000019c6: DIV 000019c7: PUSH8 0xffffffffffffffff 000019d0: AND 000019d1: PUSH2 0x4d32 000019d4: JUMP 000019d5: JUMPDEST 000019d6: SWAP1 000019d7: POP 000019d8: PUSH1 0x00 000019da: DUP4 000019db: PUSH1 0x40 000019dd: ADD 000019de: MLOAD 000019df: PUSH1 0xff 000019e1: AND 000019e2: DUP4 000019e3: PUSH2 0x19ec 000019e6: SWAP2 000019e7: SWAP1 000019e8: PUSH2 0x4da6 000019eb: JUMP 000019ec: JUMPDEST 000019ed: PUSH1 0x01 000019ef: SLOAD 000019f0: PUSH2 0x1a0c 000019f3: SWAP1 000019f4: DUP5 000019f5: SWAP1 000019f6: PUSH16 0xffffffffffffffffffffffffffffffff 00001a07: AND 00001a08: PUSH2 0x4da6 00001a0b: JUMP 00001a0c: JUMPDEST 00001a0d: PUSH2 0x1a16 00001a10: SWAP2 00001a11: SWAP1 00001a12: PUSH2 0x4cca 00001a15: JUMP 00001a16: JUMPDEST 00001a17: PUSH1 0x01 00001a19: SLOAD 00001a1a: SWAP1 00001a1b: SWAP2 00001a1c: POP 00001a1d: PUSH1 0x00 00001a1f: SWAP1 00001a20: PUSH2 0x1a67 00001a23: SWAP1 00001a24: PUSH2 0x1a40 00001a27: SWAP1 00001a28: DUP5 00001a29: SWAP1 00001a2a: PUSH16 0xffffffffffffffffffffffffffffffff 00001a3b: AND 00001a3c: PUSH2 0x4e62 00001a3f: JUMP 00001a40: JUMPDEST 00001a41: DUP7 00001a42: PUSH1 0x60 00001a44: ADD 00001a45: MLOAD 00001a46: PUSH4 0xffffffff 00001a4b: AND 00001a4c: DUP8 00001a4d: PUSH1 0xa0 00001a4f: ADD 00001a50: MLOAD 00001a51: PUSH16 0xffffffffffffffffffffffffffffffff 00001a62: AND 00001a63: PUSH2 0x1f9a 00001a66: JUMP 00001a67: JUMPDEST 00001a68: SWAP1 00001a69: POP 00001a6a: PUSH1 0x01 00001a6c: DUP7 00001a6d: GT 00001a6e: ISZERO 00001a6f: PUSH2 0x1a96 00001a72: JUMPI 00001a73: PUSH2 0x1a93 00001a76: PUSH2 0x1a40 00001a79: DUP3 00001a7a: DUP8 00001a7b: PUSH1 0x40 00001a7d: ADD 00001a7e: MLOAD 00001a7f: PUSH1 0xff 00001a81: AND 00001a82: PUSH1 0x01 00001a84: DUP11 00001a85: PUSH2 0x1a8e 00001a88: SWAP2 00001a89: SWAP1 00001a8a: PUSH2 0x4c84 00001a8d: JUMP 00001a8e: JUMPDEST 00001a8f: PUSH2 0x1fb9 00001a92: JUMP 00001a93: JUMPDEST 00001a94: SWAP1 00001a95: POP 00001a96: JUMPDEST 00001a97: PUSH16 0xffffffffffffffffffffffffffffffff 00001aa8: AND 00001aa9: PUSH25 0x01000000000000000000000000000000000000000000000000 00001ac3: PUSH8 0xffffffffffffffff 00001acc: NUMBER 00001acd: AND 00001ace: MUL 00001acf: OR 00001ad0: PUSH1 0x01 00001ad2: SSTORE 00001ad3: POP 00001ad4: POP 00001ad5: JUMPDEST 00001ad6: PUSH1 0x01 00001ad8: DUP1 00001ad9: SLOAD 00001ada: DUP7 00001adb: SWAP2 00001adc: SWAP1 00001add: PUSH1 0x10 00001adf: SWAP1 00001ae0: PUSH2 0x1b08 00001ae3: SWAP1 00001ae4: DUP5 00001ae5: SWAP1 00001ae6: PUSH17 0x0100000000000000000000000000000000 00001af8: SWAP1 00001af9: DIV 00001afa: PUSH8 0xffffffffffffffff 00001b03: AND 00001b04: PUSH2 0x4c58 00001b07: JUMP 00001b08: JUMPDEST 00001b09: SWAP3 00001b0a: POP 00001b0b: PUSH2 0x0100 00001b0e: EXP 00001b0f: DUP2 00001b10: SLOAD 00001b11: DUP2 00001b12: PUSH8 0xffffffffffffffff 00001b1b: MUL 00001b1c: NOT 00001b1d: AND 00001b1e: SWAP1 00001b1f: DUP4 00001b20: PUSH8 0xffffffffffffffff 00001b29: AND 00001b2a: MUL 00001b2b: OR 00001b2c: SWAP1 00001b2d: SSTORE 00001b2e: POP 00001b2f: DUP2 00001b30: PUSH1 0x00 00001b32: ADD 00001b33: MLOAD 00001b34: PUSH4 0xffffffff 00001b39: AND 00001b3a: PUSH1 0x01 00001b3c: PUSH1 0x00 00001b3e: ADD 00001b3f: PUSH1 0x10 00001b41: SWAP1 00001b42: SLOAD 00001b43: SWAP1 00001b44: PUSH2 0x0100 00001b47: EXP 00001b48: SWAP1 00001b49: DIV 00001b4a: PUSH8 0xffffffffffffffff 00001b53: AND 00001b54: PUSH8 0xffffffffffffffff 00001b5d: AND 00001b5e: SGT 00001b5f: ISZERO 00001b60: PUSH2 0x1b95 00001b63: JUMPI 00001b64: PUSH1 0x40 00001b66: MLOAD 00001b67: PUSH32 0x77ebef4d00000000000000000000000000000000000000000000000000000000 00001b88: DUP2 00001b89: MSTORE 00001b8a: PUSH1 0x04 00001b8c: ADD 00001b8d: PUSH1 0x40 00001b8f: MLOAD 00001b90: DUP1 00001b91: SWAP2 00001b92: SUB 00001b93: SWAP1 00001b94: REVERT 00001b95: JUMPDEST 00001b96: PUSH1 0x01 00001b98: SLOAD 00001b99: PUSH1 0x00 00001b9b: SWAP1 00001b9c: PUSH2 0x1bc1 00001b9f: SWAP1 00001ba0: PUSH16 0xffffffffffffffffffffffffffffffff 00001bb1: AND 00001bb2: PUSH8 0xffffffffffffffff 00001bbb: DUP9 00001bbc: AND 00001bbd: PUSH2 0x4ed6 00001bc0: JUMP 00001bc1: JUMPDEST 00001bc2: SWAP1 00001bc3: POP 00001bc4: PUSH1 0x00 00001bc6: PUSH2 0x1bd3 00001bc9: BASEFEE 00001bca: PUSH4 0x3b9aca00 00001bcf: PUSH2 0x200e 00001bd2: JUMP 00001bd3: JUMPDEST 00001bd4: PUSH2 0x1bdd 00001bd7: SWAP1 00001bd8: DUP4 00001bd9: PUSH2 0x4f13 00001bdc: JUMP 00001bdd: JUMPDEST 00001bde: SWAP1 00001bdf: POP 00001be0: PUSH1 0x00 00001be2: GAS 00001be3: PUSH2 0x1bec 00001be6: SWAP1 00001be7: DUP9 00001be8: PUSH2 0x4c84 00001beb: JUMP 00001bec: JUMPDEST 00001bed: SWAP1 00001bee: POP 00001bef: DUP1 00001bf0: DUP3 00001bf1: GT 00001bf2: ISZERO 00001bf3: PUSH2 0x1c08 00001bf6: JUMPI 00001bf7: PUSH2 0x1c08 00001bfa: PUSH2 0x1c03 00001bfd: DUP3 00001bfe: DUP5 00001bff: PUSH2 0x4c84 00001c02: JUMP 00001c03: JUMPDEST 00001c04: PUSH2 0x2025 00001c07: JUMP 00001c08: JUMPDEST 00001c09: POP 00001c0a: POP 00001c0b: POP 00001c0c: POP 00001c0d: POP 00001c0e: POP 00001c0f: POP 00001c10: POP 00001c11: JUMP 00001c12: JUMPDEST 00001c13: PUSH1 0x00 00001c15: DUP2 00001c16: PUSH1 0x00 00001c18: ADD 00001c19: MLOAD 00001c1a: DUP3 00001c1b: PUSH1 0x20 00001c1d: ADD 00001c1e: MLOAD 00001c1f: DUP4 00001c20: PUSH1 0x40 00001c22: ADD 00001c23: MLOAD 00001c24: DUP5 00001c25: PUSH1 0x60 00001c27: ADD 00001c28: MLOAD 00001c29: PUSH1 0x40 00001c2b: MLOAD 00001c2c: PUSH1 0x20 00001c2e: ADD 00001c2f: PUSH2 0x1c51 00001c32: SWAP5 00001c33: SWAP4 00001c34: SWAP3 00001c35: SWAP2 00001c36: SWAP1 00001c37: SWAP4 00001c38: DUP5 00001c39: MSTORE 00001c3a: PUSH1 0x20 00001c3c: DUP5 00001c3d: ADD 00001c3e: SWAP3 00001c3f: SWAP1 00001c40: SWAP3 00001c41: MSTORE 00001c42: PUSH1 0x40 00001c44: DUP4 00001c45: ADD 00001c46: MSTORE 00001c47: PUSH1 0x60 00001c49: DUP3 00001c4a: ADD 00001c4b: MSTORE 00001c4c: PUSH1 0x80 00001c4e: ADD 00001c4f: SWAP1 00001c50: JUMP 00001c51: JUMPDEST 00001c52: PUSH1 0x40 00001c54: MLOAD 00001c55: PUSH1 0x20 00001c57: DUP2 00001c58: DUP4 00001c59: SUB 00001c5a: SUB 00001c5b: DUP2 00001c5c: MSTORE 00001c5d: SWAP1 00001c5e: PUSH1 0x40 00001c60: MSTORE 00001c61: DUP1 00001c62: MLOAD 00001c63: SWAP1 00001c64: PUSH1 0x20 00001c66: ADD 00001c67: KECCAK256 00001c68: SWAP1 00001c69: POP 00001c6a: SWAP2 00001c6b: SWAP1 00001c6c: POP 00001c6d: JUMP 00001c6e: JUMPDEST 00001c6f: DUP1 00001c70: MLOAD 00001c71: PUSH1 0x20 00001c73: DUP1 00001c74: DUP4 00001c75: ADD 00001c76: MLOAD 00001c77: PUSH1 0x40 00001c79: DUP1 00001c7a: DUP6 00001c7b: ADD 00001c7c: MLOAD 00001c7d: PUSH1 0x60 00001c7f: DUP7 00001c80: ADD 00001c81: MLOAD 00001c82: PUSH1 0x80 00001c84: DUP8 00001c85: ADD 00001c86: MLOAD 00001c87: PUSH1 0xa0 00001c89: DUP9 00001c8a: ADD 00001c8b: MLOAD 00001c8c: SWAP4 00001c8d: MLOAD 00001c8e: PUSH1 0x00 00001c90: SWAP8 00001c91: PUSH2 0x1c51 00001c94: SWAP8 00001c95: SWAP1 00001c96: SWAP7 00001c97: SWAP6 00001c98: SWAP2 00001c99: ADD 00001c9a: PUSH2 0x4f27 00001c9d: JUMP 00001c9e: JUMPDEST 00001c9f: PUSH1 0x00 00001ca1: DUP1 00001ca2: PUSH2 0x1caa 00001ca5: DUP7 00001ca6: PUSH2 0x2053 00001ca9: JUMP 00001caa: JUMPDEST 00001cab: SWAP1 00001cac: POP 00001cad: PUSH2 0x1cb8 00001cb0: DUP2 00001cb1: DUP7 00001cb2: DUP7 00001cb3: DUP7 00001cb4: PUSH2 0x2085 00001cb7: JUMP 00001cb8: JUMPDEST 00001cb9: SWAP7 00001cba: SWAP6 00001cbb: POP 00001cbc: POP 00001cbd: POP 00001cbe: POP 00001cbf: POP 00001cc0: POP 00001cc1: JUMP 00001cc2: JUMPDEST 00001cc3: PUSH1 0x36 00001cc5: SLOAD 00001cc6: PUSH1 0x40 00001cc8: DUP1 00001cc9: MLOAD 00001cca: PUSH32 0xf4daa29100000000000000000000000000000000000000000000000000000000 00001ceb: DUP2 00001cec: MSTORE 00001ced: SWAP1 00001cee: MLOAD 00001cef: PUSH1 0x00 00001cf1: SWAP3 00001cf2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001d07: AND 00001d08: SWAP2 00001d09: PUSH4 0xf4daa291 00001d0e: SWAP2 00001d0f: PUSH1 0x04 00001d11: DUP1 00001d12: DUP4 00001d13: ADD 00001d14: SWAP3 00001d15: PUSH1 0x20 00001d17: SWAP3 00001d18: SWAP2 00001d19: SWAP1 00001d1a: DUP3 00001d1b: SWAP1 00001d1c: SUB 00001d1d: ADD 00001d1e: DUP2 00001d1f: DUP7 00001d20: GAS 00001d21: STATICCALL 00001d22: ISZERO 00001d23: DUP1 00001d24: ISZERO 00001d25: PUSH2 0x1d32 00001d28: JUMPI 00001d29: RETURNDATASIZE 00001d2a: PUSH1 0x00 00001d2c: DUP1 00001d2d: RETURNDATACOPY 00001d2e: RETURNDATASIZE 00001d2f: PUSH1 0x00 00001d31: REVERT 00001d32: JUMPDEST 00001d33: POP 00001d34: POP 00001d35: POP 00001d36: POP 00001d37: PUSH1 0x40 00001d39: MLOAD 00001d3a: RETURNDATASIZE 00001d3b: PUSH1 0x1f 00001d3d: NOT 00001d3e: PUSH1 0x1f 00001d40: DUP3 00001d41: ADD 00001d42: AND 00001d43: DUP3 00001d44: ADD 00001d45: DUP1 00001d46: PUSH1 0x40 00001d48: MSTORE 00001d49: POP 00001d4a: DUP2 00001d4b: ADD 00001d4c: SWAP1 00001d4d: PUSH2 0x1d56 00001d50: SWAP2 00001d51: SWAP1 00001d52: PUSH2 0x4be0 00001d55: JUMP 00001d56: JUMPDEST 00001d57: PUSH2 0x1d60 00001d5a: SWAP1 00001d5b: DUP4 00001d5c: PUSH2 0x4f7e 00001d5f: JUMP 00001d60: JUMPDEST 00001d61: TIMESTAMP 00001d62: GT 00001d63: SWAP3 00001d64: SWAP2 00001d65: POP 00001d66: POP 00001d67: JUMP 00001d68: JUMPDEST 00001d69: PUSH1 0x00 00001d6b: DUP1 00001d6c: PUSH1 0x00 00001d6e: PUSH2 0x1d78 00001d71: DUP7 00001d72: PUSH1 0x00 00001d74: PUSH2 0x20b5 00001d77: JUMP 00001d78: JUMPDEST 00001d79: SWAP1 00001d7a: POP 00001d7b: DUP1 00001d7c: PUSH2 0x1dae 00001d7f: JUMPI 00001d80: PUSH4 0x08c379a0 00001d85: PUSH1 0x00 00001d87: MSTORE 00001d88: PUSH1 0x20 00001d8a: DUP1 00001d8b: MSTORE 00001d8c: PUSH25 0x185361666543616c6c3a204e6f7420656e6f75676820676173 00001da6: PUSH1 0x58 00001da8: MSTORE 00001da9: PUSH1 0x64 00001dab: PUSH1 0x1c 00001dad: REVERT 00001dae: JUMPDEST 00001daf: PUSH1 0x00 00001db1: DUP1 00001db2: DUP6 00001db3: MLOAD 00001db4: PUSH1 0x20 00001db6: DUP8 00001db7: ADD 00001db8: DUP9 00001db9: DUP12 00001dba: GAS 00001dbb: CALL 00001dbc: SWAP8 00001dbd: SWAP7 00001dbe: POP 00001dbf: POP 00001dc0: POP 00001dc1: POP 00001dc2: POP 00001dc3: POP 00001dc4: POP 00001dc5: JUMP 00001dc6: JUMPDEST 00001dc7: PUSH1 0x00 00001dc9: SLOAD 00001dca: PUSH2 0x0100 00001dcd: SWAP1 00001dce: DIV 00001dcf: PUSH1 0xff 00001dd1: AND 00001dd2: PUSH2 0x1e5d 00001dd5: JUMPI 00001dd6: PUSH1 0x40 00001dd8: MLOAD 00001dd9: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001dfa: DUP2 00001dfb: MSTORE 00001dfc: PUSH1 0x20 00001dfe: PUSH1 0x04 00001e00: DUP3 00001e01: ADD 00001e02: MSTORE 00001e03: PUSH1 0x2b 00001e05: PUSH1 0x24 00001e07: DUP3 00001e08: ADD 00001e09: MSTORE 00001e0a: PUSH32 0x496e697469616c697a61626c653a20636f6e7472616374206973206e6f742069 00001e2b: PUSH1 0x44 00001e2d: DUP3 00001e2e: ADD 00001e2f: MSTORE 00001e30: PUSH32 0x6e697469616c697a696e67000000000000000000000000000000000000000000 00001e51: PUSH1 0x64 00001e53: DUP3 00001e54: ADD 00001e55: MSTORE 00001e56: PUSH1 0x84 00001e58: ADD 00001e59: PUSH2 0x0824 00001e5c: JUMP 00001e5d: JUMPDEST 00001e5e: PUSH1 0x01 00001e60: SLOAD 00001e61: PUSH25 0x01000000000000000000000000000000000000000000000000 00001e7b: SWAP1 00001e7c: DIV 00001e7d: PUSH8 0xffffffffffffffff 00001e86: AND 00001e87: PUSH1 0x00 00001e89: SUB 00001e8a: PUSH2 0x0e7b 00001e8d: JUMPI 00001e8e: PUSH1 0x40 00001e90: DUP1 00001e91: MLOAD 00001e92: PUSH1 0x60 00001e94: DUP2 00001e95: ADD 00001e96: DUP3 00001e97: MSTORE 00001e98: PUSH4 0x3b9aca00 00001e9d: DUP1 00001e9e: DUP3 00001e9f: MSTORE 00001ea0: PUSH1 0x00 00001ea2: PUSH1 0x20 00001ea4: DUP4 00001ea5: ADD 00001ea6: MSTORE 00001ea7: NUMBER 00001ea8: PUSH8 0xffffffffffffffff 00001eb1: AND 00001eb2: SWAP2 00001eb3: SWAP1 00001eb4: SWAP3 00001eb5: ADD 00001eb6: DUP2 00001eb7: SWAP1 00001eb8: MSTORE 00001eb9: PUSH25 0x01000000000000000000000000000000000000000000000000 00001ed3: MUL 00001ed4: OR 00001ed5: PUSH1 0x01 00001ed7: SSTORE 00001ed8: JUMP 00001ed9: JUMPDEST 00001eda: PUSH1 0x40 00001edc: DUP1 00001edd: MLOAD 00001ede: PUSH1 0xc0 00001ee0: DUP1 00001ee1: DUP3 00001ee2: ADD 00001ee3: DUP4 00001ee4: MSTORE 00001ee5: PUSH1 0x00 00001ee7: DUP1 00001ee8: DUP4 00001ee9: MSTORE 00001eea: PUSH1 0x20 00001eec: DUP4 00001eed: ADD 00001eee: DUP2 00001eef: SWAP1 00001ef0: MSTORE 00001ef1: DUP3 00001ef2: DUP5 00001ef3: ADD 00001ef4: DUP2 00001ef5: SWAP1 00001ef6: MSTORE 00001ef7: PUSH1 0x60 00001ef9: DUP4 00001efa: ADD 00001efb: DUP2 00001efc: SWAP1 00001efd: MSTORE 00001efe: PUSH1 0x80 00001f00: DUP4 00001f01: ADD 00001f02: DUP2 00001f03: SWAP1 00001f04: MSTORE 00001f05: PUSH1 0xa0 00001f07: DUP4 00001f08: ADD 00001f09: MSTORE 00001f0a: PUSH1 0x37 00001f0c: SLOAD 00001f0d: DUP4 00001f0e: MLOAD 00001f0f: PUSH32 0xcc731b0200000000000000000000000000000000000000000000000000000000 00001f30: DUP2 00001f31: MSTORE 00001f32: SWAP4 00001f33: MLOAD 00001f34: SWAP3 00001f35: SWAP4 00001f36: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001f4b: SWAP1 00001f4c: SWAP2 00001f4d: AND 00001f4e: SWAP3 00001f4f: PUSH4 0xcc731b02 00001f54: SWAP3 00001f55: PUSH1 0x04 00001f57: DUP1 00001f58: DUP5 00001f59: ADD 00001f5a: SWAP4 00001f5b: SWAP2 00001f5c: SWAP3 00001f5d: SWAP2 00001f5e: DUP3 00001f5f: SWAP1 00001f60: SUB 00001f61: ADD 00001f62: DUP2 00001f63: DUP7 00001f64: GAS 00001f65: STATICCALL 00001f66: ISZERO 00001f67: DUP1 00001f68: ISZERO 00001f69: PUSH2 0x1f76 00001f6c: JUMPI 00001f6d: RETURNDATASIZE 00001f6e: PUSH1 0x00 00001f70: DUP1 00001f71: RETURNDATACOPY 00001f72: RETURNDATASIZE 00001f73: PUSH1 0x00 00001f75: REVERT 00001f76: JUMPDEST 00001f77: POP 00001f78: POP 00001f79: POP 00001f7a: POP 00001f7b: PUSH1 0x40 00001f7d: MLOAD 00001f7e: RETURNDATASIZE 00001f7f: PUSH1 0x1f 00001f81: NOT 00001f82: PUSH1 0x1f 00001f84: DUP3 00001f85: ADD 00001f86: AND 00001f87: DUP3 00001f88: ADD 00001f89: DUP1 00001f8a: PUSH1 0x40 00001f8c: MSTORE 00001f8d: POP 00001f8e: DUP2 00001f8f: ADD 00001f90: SWAP1 00001f91: PUSH2 0x0725 00001f94: SWAP2 00001f95: SWAP1 00001f96: PUSH2 0x4fbb 00001f99: JUMP 00001f9a: JUMPDEST 00001f9b: PUSH1 0x00 00001f9d: PUSH2 0x1faf 00001fa0: PUSH2 0x1fa9 00001fa3: DUP6 00001fa4: DUP6 00001fa5: PUSH2 0x20d3 00001fa8: JUMP 00001fa9: JUMPDEST 00001faa: DUP4 00001fab: PUSH2 0x20e3 00001fae: JUMP 00001faf: JUMPDEST 00001fb0: SWAP1 00001fb1: POP 00001fb2: JUMPDEST 00001fb3: SWAP4 00001fb4: SWAP3 00001fb5: POP 00001fb6: POP 00001fb7: POP 00001fb8: JUMP 00001fb9: JUMPDEST 00001fba: PUSH1 0x00 00001fbc: PUSH8 0x0de0b6b3a7640000 00001fc5: PUSH2 0x1ffa 00001fc8: PUSH2 0x1fd1 00001fcb: DUP6 00001fcc: DUP4 00001fcd: PUSH2 0x4cca 00001fd0: JUMP 00001fd1: JUMPDEST 00001fd2: PUSH2 0x1fe3 00001fd5: SWAP1 00001fd6: PUSH8 0x0de0b6b3a7640000 00001fdf: PUSH2 0x4d32 00001fe2: JUMP 00001fe3: JUMPDEST 00001fe4: PUSH2 0x1ff5 00001fe7: DUP6 00001fe8: PUSH8 0x0de0b6b3a7640000 00001ff1: PUSH2 0x4da6 00001ff4: JUMP 00001ff5: JUMPDEST 00001ff6: PUSH2 0x20f2 00001ff9: JUMP 00001ffa: JUMPDEST 00001ffb: PUSH2 0x2004 00001ffe: SWAP1 00001fff: DUP7 00002000: PUSH2 0x4da6 00002003: JUMP 00002004: JUMPDEST 00002005: PUSH2 0x1faf 00002008: SWAP2 00002009: SWAP1 0000200a: PUSH2 0x4cca 0000200d: JUMP 0000200e: JUMPDEST 0000200f: PUSH1 0x00 00002011: DUP2 00002012: DUP4 00002013: LT 00002014: ISZERO 00002015: PUSH2 0x201e 00002018: JUMPI 00002019: DUP2 0000201a: PUSH2 0x1fb2 0000201d: JUMP 0000201e: JUMPDEST 0000201f: POP 00002020: SWAP1 00002021: SWAP2 00002022: SWAP1 00002023: POP 00002024: JUMP 00002025: JUMPDEST 00002026: PUSH1 0x00 00002028: DUP1 00002029: GAS 0000202a: SWAP1 0000202b: POP 0000202c: JUMPDEST 0000202d: DUP3 0000202e: GAS 0000202f: PUSH2 0x2038 00002032: SWAP1 00002033: DUP4 00002034: PUSH2 0x4c84 00002037: JUMP 00002038: JUMPDEST 00002039: LT 0000203a: ISZERO 0000203b: PUSH2 0x204e 0000203e: JUMPI 0000203f: PUSH2 0x2047 00002042: DUP3 00002043: PUSH2 0x505a 00002046: JUMP 00002047: JUMPDEST 00002048: SWAP2 00002049: POP 0000204a: PUSH2 0x202c 0000204d: JUMP 0000204e: JUMPDEST 0000204f: POP 00002050: POP 00002051: POP 00002052: JUMP 00002053: JUMPDEST 00002054: PUSH1 0x60 00002056: DUP2 00002057: DUP1 00002058: MLOAD 00002059: SWAP1 0000205a: PUSH1 0x20 0000205c: ADD 0000205d: KECCAK256 0000205e: PUSH1 0x40 00002060: MLOAD 00002061: PUSH1 0x20 00002063: ADD 00002064: PUSH2 0x206f 00002067: SWAP2 00002068: DUP2 00002069: MSTORE 0000206a: PUSH1 0x20 0000206c: ADD 0000206d: SWAP1 0000206e: JUMP 0000206f: JUMPDEST 00002070: PUSH1 0x40 00002072: MLOAD 00002073: PUSH1 0x20 00002075: DUP2 00002076: DUP4 00002077: SUB 00002078: SUB 00002079: DUP2 0000207a: MSTORE 0000207b: SWAP1 0000207c: PUSH1 0x40 0000207e: MSTORE 0000207f: SWAP1 00002080: POP 00002081: SWAP2 00002082: SWAP1 00002083: POP 00002084: JUMP 00002085: JUMPDEST 00002086: PUSH1 0x00 00002088: PUSH2 0x20ac 0000208b: DUP5 0000208c: PUSH2 0x2096 0000208f: DUP8 00002090: DUP7 00002091: DUP7 00002092: PUSH2 0x2123 00002095: JUMP 00002096: JUMPDEST 00002097: DUP1 00002098: MLOAD 00002099: PUSH1 0x20 0000209b: SWAP2 0000209c: DUP3 0000209d: ADD 0000209e: KECCAK256 0000209f: DUP3 000020a0: MLOAD 000020a1: SWAP3 000020a2: SWAP1 000020a3: SWAP2 000020a4: ADD 000020a5: SWAP2 000020a6: SWAP1 000020a7: SWAP2 000020a8: KECCAK256 000020a9: EQ 000020aa: SWAP1 000020ab: JUMP 000020ac: JUMPDEST 000020ad: SWAP6 000020ae: SWAP5 000020af: POP 000020b0: POP 000020b1: POP 000020b2: POP 000020b3: POP 000020b4: JUMP 000020b5: JUMPDEST 000020b6: PUSH1 0x00 000020b8: DUP1 000020b9: PUSH1 0x3f 000020bb: DUP4 000020bc: PUSH2 0x9c40 000020bf: ADD 000020c0: MUL 000020c1: PUSH1 0x40 000020c3: DUP6 000020c4: MUL 000020c5: ADD 000020c6: PUSH1 0x3f 000020c8: GAS 000020c9: MUL 000020ca: LT 000020cb: ISZERO 000020cc: SWAP5 000020cd: SWAP4 000020ce: POP 000020cf: POP 000020d0: POP 000020d1: POP 000020d2: JUMP 000020d3: JUMPDEST 000020d4: PUSH1 0x00 000020d6: DUP2 000020d7: DUP4 000020d8: SLT 000020d9: ISZERO 000020da: PUSH2 0x201e 000020dd: JUMPI 000020de: DUP2 000020df: PUSH2 0x1fb2 000020e2: JUMP 000020e3: JUMPDEST 000020e4: PUSH1 0x00 000020e6: DUP2 000020e7: DUP4 000020e8: SLT 000020e9: PUSH2 0x201e 000020ec: JUMPI 000020ed: DUP2 000020ee: PUSH2 0x1fb2 000020f1: JUMP 000020f2: JUMPDEST 000020f3: PUSH1 0x00 000020f5: PUSH2 0x1fb2 000020f8: PUSH8 0x0de0b6b3a7640000 00002101: DUP4 00002102: PUSH2 0x210a 00002105: DUP7 00002106: PUSH2 0x2ba1 00002109: JUMP 0000210a: JUMPDEST 0000210b: PUSH2 0x2114 0000210e: SWAP2 0000210f: SWAP1 00002110: PUSH2 0x4da6 00002113: JUMP 00002114: JUMPDEST 00002115: PUSH2 0x211e 00002118: SWAP2 00002119: SWAP1 0000211a: PUSH2 0x4cca 0000211d: JUMP 0000211e: JUMPDEST 0000211f: PUSH2 0x2de5 00002122: JUMP 00002123: JUMPDEST 00002124: PUSH1 0x60 00002126: PUSH1 0x00 00002128: DUP5 00002129: MLOAD 0000212a: GT 0000212b: PUSH2 0x2190 0000212e: JUMPI 0000212f: PUSH1 0x40 00002131: MLOAD 00002132: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002153: DUP2 00002154: MSTORE 00002155: PUSH1 0x20 00002157: PUSH1 0x04 00002159: DUP3 0000215a: ADD 0000215b: MSTORE 0000215c: PUSH1 0x15 0000215e: PUSH1 0x24 00002160: DUP3 00002161: ADD 00002162: MSTORE 00002163: PUSH32 0x4d65726b6c65547269653a20656d707479206b65790000000000000000000000 00002184: PUSH1 0x44 00002186: DUP3 00002187: ADD 00002188: MSTORE 00002189: PUSH1 0x64 0000218b: ADD 0000218c: PUSH2 0x0824 0000218f: JUMP 00002190: JUMPDEST 00002191: PUSH1 0x00 00002193: PUSH2 0x219b 00002196: DUP5 00002197: PUSH2 0x3024 0000219a: JUMP 0000219b: JUMPDEST 0000219c: SWAP1 0000219d: POP 0000219e: PUSH1 0x00 000021a0: PUSH2 0x21a8 000021a3: DUP7 000021a4: PUSH2 0x3110 000021a7: JUMP 000021a8: JUMPDEST 000021a9: SWAP1 000021aa: POP 000021ab: PUSH1 0x00 000021ad: DUP5 000021ae: PUSH1 0x40 000021b0: MLOAD 000021b1: PUSH1 0x20 000021b3: ADD 000021b4: PUSH2 0x21bf 000021b7: SWAP2 000021b8: DUP2 000021b9: MSTORE 000021ba: PUSH1 0x20 000021bc: ADD 000021bd: SWAP1 000021be: JUMP 000021bf: JUMPDEST 000021c0: PUSH1 0x40 000021c2: MLOAD 000021c3: PUSH1 0x20 000021c5: DUP2 000021c6: DUP4 000021c7: SUB 000021c8: SUB 000021c9: DUP2 000021ca: MSTORE 000021cb: SWAP1 000021cc: PUSH1 0x40 000021ce: MSTORE 000021cf: SWAP1 000021d0: POP 000021d1: PUSH1 0x00 000021d3: DUP1 000021d4: JUMPDEST 000021d5: DUP5 000021d6: MLOAD 000021d7: DUP2 000021d8: LT 000021d9: ISZERO 000021da: PUSH2 0x2b18 000021dd: JUMPI 000021de: PUSH1 0x00 000021e0: DUP6 000021e1: DUP3 000021e2: DUP2 000021e3: MLOAD 000021e4: DUP2 000021e5: LT 000021e6: PUSH2 0x21f1 000021e9: JUMPI 000021ea: PUSH2 0x21f1 000021ed: PUSH2 0x5092 000021f0: JUMP 000021f1: JUMPDEST 000021f2: PUSH1 0x20 000021f4: MUL 000021f5: PUSH1 0x20 000021f7: ADD 000021f8: ADD 000021f9: MLOAD 000021fa: SWAP1 000021fb: POP 000021fc: DUP5 000021fd: MLOAD 000021fe: DUP4 000021ff: GT 00002200: ISZERO 00002201: PUSH2 0x228c 00002204: JUMPI 00002205: PUSH1 0x40 00002207: MLOAD 00002208: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002229: DUP2 0000222a: MSTORE 0000222b: PUSH1 0x20 0000222d: PUSH1 0x04 0000222f: DUP3 00002230: ADD 00002231: MSTORE 00002232: PUSH1 0x2e 00002234: PUSH1 0x24 00002236: DUP3 00002237: ADD 00002238: MSTORE 00002239: PUSH32 0x4d65726b6c65547269653a206b657920696e646578206578636565647320746f 0000225a: PUSH1 0x44 0000225c: DUP3 0000225d: ADD 0000225e: MSTORE 0000225f: PUSH32 0x74616c206b6579206c656e677468000000000000000000000000000000000000 00002280: PUSH1 0x64 00002282: DUP3 00002283: ADD 00002284: MSTORE 00002285: PUSH1 0x84 00002287: ADD 00002288: PUSH2 0x0824 0000228b: JUMP 0000228c: JUMPDEST 0000228d: DUP3 0000228e: PUSH1 0x00 00002290: SUB 00002291: PUSH2 0x2345 00002294: JUMPI 00002295: DUP1 00002296: MLOAD 00002297: DUP1 00002298: MLOAD 00002299: PUSH1 0x20 0000229b: SWAP2 0000229c: DUP3 0000229d: ADD 0000229e: KECCAK256 0000229f: PUSH1 0x40 000022a1: MLOAD 000022a2: PUSH2 0x22da 000022a5: SWAP3 000022a6: PUSH2 0x22b4 000022a9: SWAP3 000022aa: SWAP2 000022ab: ADD 000022ac: SWAP1 000022ad: DUP2 000022ae: MSTORE 000022af: PUSH1 0x20 000022b1: ADD 000022b2: SWAP1 000022b3: JUMP 000022b4: JUMPDEST 000022b5: PUSH1 0x40 000022b7: MLOAD 000022b8: PUSH1 0x20 000022ba: DUP2 000022bb: DUP4 000022bc: SUB 000022bd: SUB 000022be: DUP2 000022bf: MSTORE 000022c0: SWAP1 000022c1: PUSH1 0x40 000022c3: MSTORE 000022c4: DUP6 000022c5: DUP1 000022c6: MLOAD 000022c7: PUSH1 0x20 000022c9: SWAP2 000022ca: DUP3 000022cb: ADD 000022cc: KECCAK256 000022cd: DUP3 000022ce: MLOAD 000022cf: SWAP3 000022d0: SWAP1 000022d1: SWAP2 000022d2: ADD 000022d3: SWAP2 000022d4: SWAP1 000022d5: SWAP2 000022d6: KECCAK256 000022d7: EQ 000022d8: SWAP1 000022d9: JUMP 000022da: JUMPDEST 000022db: PUSH2 0x2340 000022de: JUMPI 000022df: PUSH1 0x40 000022e1: MLOAD 000022e2: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002303: DUP2 00002304: MSTORE 00002305: PUSH1 0x20 00002307: PUSH1 0x04 00002309: DUP3 0000230a: ADD 0000230b: MSTORE 0000230c: PUSH1 0x1d 0000230e: PUSH1 0x24 00002310: DUP3 00002311: ADD 00002312: MSTORE 00002313: PUSH32 0x4d65726b6c65547269653a20696e76616c696420726f6f742068617368000000 00002334: PUSH1 0x44 00002336: DUP3 00002337: ADD 00002338: MSTORE 00002339: PUSH1 0x64 0000233b: ADD 0000233c: PUSH2 0x0824 0000233f: JUMP 00002340: JUMPDEST 00002341: PUSH2 0x249c 00002344: JUMP 00002345: JUMPDEST 00002346: DUP1 00002347: MLOAD 00002348: MLOAD 00002349: PUSH1 0x20 0000234b: GT 0000234c: PUSH2 0x23fb 0000234f: JUMPI 00002350: DUP1 00002351: MLOAD 00002352: DUP1 00002353: MLOAD 00002354: PUSH1 0x20 00002356: SWAP2 00002357: DUP3 00002358: ADD 00002359: KECCAK256 0000235a: PUSH1 0x40 0000235c: MLOAD 0000235d: PUSH2 0x236f 00002360: SWAP3 00002361: PUSH2 0x22b4 00002364: SWAP3 00002365: SWAP2 00002366: ADD 00002367: SWAP1 00002368: DUP2 00002369: MSTORE 0000236a: PUSH1 0x20 0000236c: ADD 0000236d: SWAP1 0000236e: JUMP 0000236f: JUMPDEST 00002370: PUSH2 0x2340 00002373: JUMPI 00002374: PUSH1 0x40 00002376: MLOAD 00002377: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002398: DUP2 00002399: MSTORE 0000239a: PUSH1 0x20 0000239c: PUSH1 0x04 0000239e: DUP3 0000239f: ADD 000023a0: MSTORE 000023a1: PUSH1 0x27 000023a3: PUSH1 0x24 000023a5: DUP3 000023a6: ADD 000023a7: MSTORE 000023a8: PUSH32 0x4d65726b6c65547269653a20696e76616c6964206c6172676520696e7465726e 000023c9: PUSH1 0x44 000023cb: DUP3 000023cc: ADD 000023cd: MSTORE 000023ce: PUSH32 0x616c206861736800000000000000000000000000000000000000000000000000 000023ef: PUSH1 0x64 000023f1: DUP3 000023f2: ADD 000023f3: MSTORE 000023f4: PUSH1 0x84 000023f6: ADD 000023f7: PUSH2 0x0824 000023fa: JUMP 000023fb: JUMPDEST 000023fc: DUP1 000023fd: MLOAD 000023fe: DUP5 000023ff: MLOAD 00002400: PUSH1 0x20 00002402: DUP1 00002403: DUP8 00002404: ADD 00002405: SWAP2 00002406: SWAP1 00002407: SWAP2 00002408: KECCAK256 00002409: DUP3 0000240a: MLOAD 0000240b: SWAP2 0000240c: SWAP1 0000240d: SWAP3 0000240e: ADD 0000240f: KECCAK256 00002410: EQ 00002411: PUSH2 0x249c 00002414: JUMPI 00002415: PUSH1 0x40 00002417: MLOAD 00002418: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002439: DUP2 0000243a: MSTORE 0000243b: PUSH1 0x20 0000243d: PUSH1 0x04 0000243f: DUP3 00002440: ADD 00002441: MSTORE 00002442: PUSH1 0x26 00002444: PUSH1 0x24 00002446: DUP3 00002447: ADD 00002448: MSTORE 00002449: PUSH32 0x4d65726b6c65547269653a20696e76616c696420696e7465726e616c206e6f64 0000246a: PUSH1 0x44 0000246c: DUP3 0000246d: ADD 0000246e: MSTORE 0000246f: PUSH32 0x6520686173680000000000000000000000000000000000000000000000000000 00002490: PUSH1 0x64 00002492: DUP3 00002493: ADD 00002494: MSTORE 00002495: PUSH1 0x84 00002497: ADD 00002498: PUSH2 0x0824 0000249b: JUMP 0000249c: JUMPDEST 0000249d: PUSH2 0x24a8 000024a0: PUSH1 0x10 000024a2: PUSH1 0x01 000024a4: PUSH2 0x4f7e 000024a7: JUMP 000024a8: JUMPDEST 000024a9: DUP2 000024aa: PUSH1 0x20 000024ac: ADD 000024ad: MLOAD 000024ae: MLOAD 000024af: SUB 000024b0: PUSH2 0x2684 000024b3: JUMPI 000024b4: DUP5 000024b5: MLOAD 000024b6: DUP4 000024b7: SUB 000024b8: PUSH2 0x261c 000024bb: JUMPI 000024bc: PUSH2 0x24e2 000024bf: DUP2 000024c0: PUSH1 0x20 000024c2: ADD 000024c3: MLOAD 000024c4: PUSH1 0x10 000024c6: DUP2 000024c7: MLOAD 000024c8: DUP2 000024c9: LT 000024ca: PUSH2 0x24d5 000024cd: JUMPI 000024ce: PUSH2 0x24d5 000024d1: PUSH2 0x5092 000024d4: JUMP 000024d5: JUMPDEST 000024d6: PUSH1 0x20 000024d8: MUL 000024d9: PUSH1 0x20 000024db: ADD 000024dc: ADD 000024dd: MLOAD 000024de: PUSH2 0x3173 000024e1: JUMP 000024e2: JUMPDEST 000024e3: SWAP7 000024e4: POP 000024e5: PUSH1 0x00 000024e7: DUP8 000024e8: MLOAD 000024e9: GT 000024ea: PUSH2 0x2575 000024ed: JUMPI 000024ee: PUSH1 0x40 000024f0: MLOAD 000024f1: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002512: DUP2 00002513: MSTORE 00002514: PUSH1 0x20 00002516: PUSH1 0x04 00002518: DUP3 00002519: ADD 0000251a: MSTORE 0000251b: PUSH1 0x3b 0000251d: PUSH1 0x24 0000251f: DUP3 00002520: ADD 00002521: MSTORE 00002522: PUSH32 0x4d65726b6c65547269653a2076616c7565206c656e677468206d757374206265 00002543: PUSH1 0x44 00002545: DUP3 00002546: ADD 00002547: MSTORE 00002548: PUSH32 0x2067726561746572207468616e207a65726f20286272616e6368290000000000 00002569: PUSH1 0x64 0000256b: DUP3 0000256c: ADD 0000256d: MSTORE 0000256e: PUSH1 0x84 00002570: ADD 00002571: PUSH2 0x0824 00002574: JUMP 00002575: JUMPDEST 00002576: PUSH1 0x01 00002578: DUP7 00002579: MLOAD 0000257a: PUSH2 0x2583 0000257d: SWAP2 0000257e: SWAP1 0000257f: PUSH2 0x4c84 00002582: JUMP 00002583: JUMPDEST 00002584: DUP3 00002585: EQ 00002586: PUSH2 0x2611 00002589: JUMPI 0000258a: PUSH1 0x40 0000258c: MLOAD 0000258d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000025ae: DUP2 000025af: MSTORE 000025b0: PUSH1 0x20 000025b2: PUSH1 0x04 000025b4: DUP3 000025b5: ADD 000025b6: MSTORE 000025b7: PUSH1 0x3a 000025b9: PUSH1 0x24 000025bb: DUP3 000025bc: ADD 000025bd: MSTORE 000025be: PUSH32 0x4d65726b6c65547269653a2076616c7565206e6f6465206d757374206265206c 000025df: PUSH1 0x44 000025e1: DUP3 000025e2: ADD 000025e3: MSTORE 000025e4: PUSH32 0x617374206e6f646520696e2070726f6f6620286272616e636829000000000000 00002605: PUSH1 0x64 00002607: DUP3 00002608: ADD 00002609: MSTORE 0000260a: PUSH1 0x84 0000260c: ADD 0000260d: PUSH2 0x0824 00002610: JUMP 00002611: JUMPDEST 00002612: POP 00002613: POP 00002614: POP 00002615: POP 00002616: POP 00002617: POP 00002618: PUSH2 0x1fb2 0000261b: JUMP 0000261c: JUMPDEST 0000261d: PUSH1 0x00 0000261f: DUP6 00002620: DUP5 00002621: DUP2 00002622: MLOAD 00002623: DUP2 00002624: LT 00002625: PUSH2 0x2630 00002628: JUMPI 00002629: PUSH2 0x2630 0000262c: PUSH2 0x5092 0000262f: JUMP 00002630: JUMPDEST 00002631: PUSH1 0x20 00002633: ADD 00002634: ADD 00002635: MLOAD 00002636: PUSH1 0xf8 00002638: SHR 00002639: PUSH1 0xf8 0000263b: SHL 0000263c: PUSH1 0xf8 0000263e: SHR 0000263f: SWAP1 00002640: POP 00002641: PUSH1 0x00 00002643: DUP3 00002644: PUSH1 0x20 00002646: ADD 00002647: MLOAD 00002648: DUP3 00002649: PUSH1 0xff 0000264b: AND 0000264c: DUP2 0000264d: MLOAD 0000264e: DUP2 0000264f: LT 00002650: PUSH2 0x265b 00002653: JUMPI 00002654: PUSH2 0x265b 00002657: PUSH2 0x5092 0000265a: JUMP 0000265b: JUMPDEST 0000265c: PUSH1 0x20 0000265e: MUL 0000265f: PUSH1 0x20 00002661: ADD 00002662: ADD 00002663: MLOAD 00002664: SWAP1 00002665: POP 00002666: PUSH2 0x266e 00002669: DUP2 0000266a: PUSH2 0x32d3 0000266d: JUMP 0000266e: JUMPDEST 0000266f: SWAP6 00002670: POP 00002671: PUSH2 0x267b 00002674: PUSH1 0x01 00002676: DUP7 00002677: PUSH2 0x4f7e 0000267a: JUMP 0000267b: JUMPDEST 0000267c: SWAP5 0000267d: POP 0000267e: POP 0000267f: POP 00002680: PUSH2 0x2b05 00002683: JUMP 00002684: JUMPDEST 00002685: PUSH1 0x02 00002687: DUP2 00002688: PUSH1 0x20 0000268a: ADD 0000268b: MLOAD 0000268c: MLOAD 0000268d: SUB 0000268e: PUSH2 0x2a7d 00002691: JUMPI 00002692: PUSH1 0x00 00002694: PUSH2 0x269c 00002697: DUP3 00002698: PUSH2 0x32f8 0000269b: JUMP 0000269c: JUMPDEST 0000269d: SWAP1 0000269e: POP 0000269f: PUSH1 0x00 000026a1: DUP2 000026a2: PUSH1 0x00 000026a4: DUP2 000026a5: MLOAD 000026a6: DUP2 000026a7: LT 000026a8: PUSH2 0x26b3 000026ab: JUMPI 000026ac: PUSH2 0x26b3 000026af: PUSH2 0x5092 000026b2: JUMP 000026b3: JUMPDEST 000026b4: ADD 000026b5: PUSH1 0x20 000026b7: ADD 000026b8: MLOAD 000026b9: PUSH1 0xf8 000026bb: SHR 000026bc: SWAP1 000026bd: POP 000026be: PUSH1 0x00 000026c0: PUSH2 0x26ca 000026c3: PUSH1 0x02 000026c5: DUP4 000026c6: PUSH2 0x50c1 000026c9: JUMP 000026ca: JUMPDEST 000026cb: PUSH2 0x26d5 000026ce: SWAP1 000026cf: PUSH1 0x02 000026d1: PUSH2 0x50e3 000026d4: JUMP 000026d5: JUMPDEST 000026d6: SWAP1 000026d7: POP 000026d8: PUSH1 0x00 000026da: PUSH2 0x26e6 000026dd: DUP5 000026de: DUP4 000026df: PUSH1 0xff 000026e1: AND 000026e2: PUSH2 0x331c 000026e5: JUMP 000026e6: JUMPDEST 000026e7: SWAP1 000026e8: POP 000026e9: PUSH1 0x00 000026eb: PUSH2 0x26f4 000026ee: DUP11 000026ef: DUP10 000026f0: PUSH2 0x331c 000026f3: JUMP 000026f4: JUMPDEST 000026f5: SWAP1 000026f6: POP 000026f7: PUSH1 0x00 000026f9: PUSH2 0x2702 000026fc: DUP4 000026fd: DUP4 000026fe: PUSH2 0x3352 00002701: JUMP 00002702: JUMPDEST 00002703: SWAP1 00002704: POP 00002705: DUP1 00002706: DUP4 00002707: MLOAD 00002708: EQ 00002709: PUSH2 0x2794 0000270c: JUMPI 0000270d: PUSH1 0x40 0000270f: MLOAD 00002710: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002731: DUP2 00002732: MSTORE 00002733: PUSH1 0x20 00002735: PUSH1 0x04 00002737: DUP3 00002738: ADD 00002739: MSTORE 0000273a: PUSH1 0x3a 0000273c: PUSH1 0x24 0000273e: DUP3 0000273f: ADD 00002740: MSTORE 00002741: PUSH32 0x4d65726b6c65547269653a20706174682072656d61696e646572206d75737420 00002762: PUSH1 0x44 00002764: DUP3 00002765: ADD 00002766: MSTORE 00002767: PUSH32 0x736861726520616c6c206e6962626c65732077697468206b6579000000000000 00002788: PUSH1 0x64 0000278a: DUP3 0000278b: ADD 0000278c: MSTORE 0000278d: PUSH1 0x84 0000278f: ADD 00002790: PUSH2 0x0824 00002793: JUMP 00002794: JUMPDEST 00002795: PUSH1 0xff 00002797: DUP6 00002798: AND 00002799: PUSH1 0x02 0000279b: EQ 0000279c: DUP1 0000279d: PUSH2 0x27a9 000027a0: JUMPI 000027a1: POP 000027a2: PUSH1 0xff 000027a4: DUP6 000027a5: AND 000027a6: PUSH1 0x03 000027a8: EQ 000027a9: JUMPDEST 000027aa: ISZERO 000027ab: PUSH2 0x2998 000027ae: JUMPI 000027af: DUP1 000027b0: DUP3 000027b1: MLOAD 000027b2: EQ 000027b3: PUSH2 0x283e 000027b6: JUMPI 000027b7: PUSH1 0x40 000027b9: MLOAD 000027ba: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000027db: DUP2 000027dc: MSTORE 000027dd: PUSH1 0x20 000027df: PUSH1 0x04 000027e1: DUP3 000027e2: ADD 000027e3: MSTORE 000027e4: PUSH1 0x3d 000027e6: PUSH1 0x24 000027e8: DUP3 000027e9: ADD 000027ea: MSTORE 000027eb: PUSH32 0x4d65726b6c65547269653a206b65792072656d61696e646572206d7573742062 0000280c: PUSH1 0x44 0000280e: DUP3 0000280f: ADD 00002810: MSTORE 00002811: PUSH32 0x65206964656e746963616c20746f20706174682072656d61696e646572000000 00002832: PUSH1 0x64 00002834: DUP3 00002835: ADD 00002836: MSTORE 00002837: PUSH1 0x84 00002839: ADD 0000283a: PUSH2 0x0824 0000283d: JUMP 0000283e: JUMPDEST 0000283f: PUSH2 0x2858 00002842: DUP8 00002843: PUSH1 0x20 00002845: ADD 00002846: MLOAD 00002847: PUSH1 0x01 00002849: DUP2 0000284a: MLOAD 0000284b: DUP2 0000284c: LT 0000284d: PUSH2 0x24d5 00002850: JUMPI 00002851: PUSH2 0x24d5 00002854: PUSH2 0x5092 00002857: JUMP 00002858: JUMPDEST 00002859: SWAP13 0000285a: POP 0000285b: PUSH1 0x00 0000285d: DUP14 0000285e: MLOAD 0000285f: GT 00002860: PUSH2 0x28eb 00002863: JUMPI 00002864: PUSH1 0x40 00002866: MLOAD 00002867: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002888: DUP2 00002889: MSTORE 0000288a: PUSH1 0x20 0000288c: PUSH1 0x04 0000288e: DUP3 0000288f: ADD 00002890: MSTORE 00002891: PUSH1 0x39 00002893: PUSH1 0x24 00002895: DUP3 00002896: ADD 00002897: MSTORE 00002898: PUSH32 0x4d65726b6c65547269653a2076616c7565206c656e677468206d757374206265 000028b9: PUSH1 0x44 000028bb: DUP3 000028bc: ADD 000028bd: MSTORE 000028be: PUSH32 0x2067726561746572207468616e207a65726f20286c6561662900000000000000 000028df: PUSH1 0x64 000028e1: DUP3 000028e2: ADD 000028e3: MSTORE 000028e4: PUSH1 0x84 000028e6: ADD 000028e7: PUSH2 0x0824 000028ea: JUMP 000028eb: JUMPDEST 000028ec: PUSH1 0x01 000028ee: DUP13 000028ef: MLOAD 000028f0: PUSH2 0x28f9 000028f3: SWAP2 000028f4: SWAP1 000028f5: PUSH2 0x4c84 000028f8: JUMP 000028f9: JUMPDEST 000028fa: DUP9 000028fb: EQ 000028fc: PUSH2 0x2987 000028ff: JUMPI 00002900: PUSH1 0x40 00002902: MLOAD 00002903: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002924: DUP2 00002925: MSTORE 00002926: PUSH1 0x20 00002928: PUSH1 0x04 0000292a: DUP3 0000292b: ADD 0000292c: MSTORE 0000292d: PUSH1 0x38 0000292f: PUSH1 0x24 00002931: DUP3 00002932: ADD 00002933: MSTORE 00002934: PUSH32 0x4d65726b6c65547269653a2076616c7565206e6f6465206d757374206265206c 00002955: PUSH1 0x44 00002957: DUP3 00002958: ADD 00002959: MSTORE 0000295a: PUSH32 0x617374206e6f646520696e2070726f6f6620286c656166290000000000000000 0000297b: PUSH1 0x64 0000297d: DUP3 0000297e: ADD 0000297f: MSTORE 00002980: PUSH1 0x84 00002982: ADD 00002983: PUSH2 0x0824 00002986: JUMP 00002987: JUMPDEST 00002988: POP 00002989: POP 0000298a: POP 0000298b: POP 0000298c: POP 0000298d: POP 0000298e: POP 0000298f: POP 00002990: POP 00002991: POP 00002992: POP 00002993: POP 00002994: PUSH2 0x1fb2 00002997: JUMP 00002998: JUMPDEST 00002999: PUSH1 0xff 0000299b: DUP6 0000299c: AND 0000299d: ISZERO 0000299e: DUP1 0000299f: PUSH2 0x29ab 000029a2: JUMPI 000029a3: POP 000029a4: PUSH1 0xff 000029a6: DUP6 000029a7: AND 000029a8: PUSH1 0x01 000029aa: EQ 000029ab: JUMPDEST 000029ac: ISZERO 000029ad: PUSH2 0x29ea 000029b0: JUMPI 000029b1: PUSH2 0x29d7 000029b4: DUP8 000029b5: PUSH1 0x20 000029b7: ADD 000029b8: MLOAD 000029b9: PUSH1 0x01 000029bb: DUP2 000029bc: MLOAD 000029bd: DUP2 000029be: LT 000029bf: PUSH2 0x29ca 000029c2: JUMPI 000029c3: PUSH2 0x29ca 000029c6: PUSH2 0x5092 000029c9: JUMP 000029ca: JUMPDEST 000029cb: PUSH1 0x20 000029cd: MUL 000029ce: PUSH1 0x20 000029d0: ADD 000029d1: ADD 000029d2: MLOAD 000029d3: PUSH2 0x32d3 000029d6: JUMP 000029d7: JUMPDEST 000029d8: SWAP10 000029d9: POP 000029da: PUSH2 0x29e3 000029dd: DUP2 000029de: DUP11 000029df: PUSH2 0x4f7e 000029e2: JUMP 000029e3: JUMPDEST 000029e4: SWAP9 000029e5: POP 000029e6: PUSH2 0x2a72 000029e9: JUMP 000029ea: JUMPDEST 000029eb: PUSH1 0x40 000029ed: MLOAD 000029ee: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002a0f: DUP2 00002a10: MSTORE 00002a11: PUSH1 0x20 00002a13: PUSH1 0x04 00002a15: DUP3 00002a16: ADD 00002a17: MSTORE 00002a18: PUSH1 0x32 00002a1a: PUSH1 0x24 00002a1c: DUP3 00002a1d: ADD 00002a1e: MSTORE 00002a1f: PUSH32 0x4d65726b6c65547269653a2072656365697665642061206e6f64652077697468 00002a40: PUSH1 0x44 00002a42: DUP3 00002a43: ADD 00002a44: MSTORE 00002a45: PUSH32 0x20616e20756e6b6e6f776e207072656669780000000000000000000000000000 00002a66: PUSH1 0x64 00002a68: DUP3 00002a69: ADD 00002a6a: MSTORE 00002a6b: PUSH1 0x84 00002a6d: ADD 00002a6e: PUSH2 0x0824 00002a71: JUMP 00002a72: JUMPDEST 00002a73: POP 00002a74: POP 00002a75: POP 00002a76: POP 00002a77: POP 00002a78: POP 00002a79: PUSH2 0x2b05 00002a7c: JUMP 00002a7d: JUMPDEST 00002a7e: PUSH1 0x40 00002a80: MLOAD 00002a81: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002aa2: DUP2 00002aa3: MSTORE 00002aa4: PUSH1 0x20 00002aa6: PUSH1 0x04 00002aa8: DUP3 00002aa9: ADD 00002aaa: MSTORE 00002aab: PUSH1 0x28 00002aad: PUSH1 0x24 00002aaf: DUP3 00002ab0: ADD 00002ab1: MSTORE 00002ab2: PUSH32 0x4d65726b6c65547269653a20726563656976656420616e20756e706172736561 00002ad3: PUSH1 0x44 00002ad5: DUP3 00002ad6: ADD 00002ad7: MSTORE 00002ad8: PUSH32 0x626c65206e6f6465000000000000000000000000000000000000000000000000 00002af9: PUSH1 0x64 00002afb: DUP3 00002afc: ADD 00002afd: MSTORE 00002afe: PUSH1 0x84 00002b00: ADD 00002b01: PUSH2 0x0824 00002b04: JUMP 00002b05: JUMPDEST 00002b06: POP 00002b07: DUP1 00002b08: PUSH2 0x2b10 00002b0b: DUP2 00002b0c: PUSH2 0x505a 00002b0f: JUMP 00002b10: JUMPDEST 00002b11: SWAP2 00002b12: POP 00002b13: POP 00002b14: PUSH2 0x21d4 00002b17: JUMP 00002b18: JUMPDEST 00002b19: POP 00002b1a: PUSH1 0x40 00002b1c: MLOAD 00002b1d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002b3e: DUP2 00002b3f: MSTORE 00002b40: PUSH1 0x20 00002b42: PUSH1 0x04 00002b44: DUP3 00002b45: ADD 00002b46: MSTORE 00002b47: PUSH1 0x25 00002b49: PUSH1 0x24 00002b4b: DUP3 00002b4c: ADD 00002b4d: MSTORE 00002b4e: PUSH32 0x4d65726b6c65547269653a2072616e206f7574206f662070726f6f6620656c65 00002b6f: PUSH1 0x44 00002b71: DUP3 00002b72: ADD 00002b73: MSTORE 00002b74: PUSH32 0x6d656e7473000000000000000000000000000000000000000000000000000000 00002b95: PUSH1 0x64 00002b97: DUP3 00002b98: ADD 00002b99: MSTORE 00002b9a: PUSH1 0x84 00002b9c: ADD 00002b9d: PUSH2 0x0824 00002ba0: JUMP 00002ba1: JUMPDEST 00002ba2: PUSH1 0x00 00002ba4: DUP1 00002ba5: DUP3 00002ba6: SGT 00002ba7: PUSH2 0x2c0c 00002baa: JUMPI 00002bab: PUSH1 0x40 00002bad: MLOAD 00002bae: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002bcf: DUP2 00002bd0: MSTORE 00002bd1: PUSH1 0x20 00002bd3: PUSH1 0x04 00002bd5: DUP3 00002bd6: ADD 00002bd7: MSTORE 00002bd8: PUSH1 0x09 00002bda: PUSH1 0x24 00002bdc: DUP3 00002bdd: ADD 00002bde: MSTORE 00002bdf: PUSH32 0x554e444546494e45440000000000000000000000000000000000000000000000 00002c00: PUSH1 0x44 00002c02: DUP3 00002c03: ADD 00002c04: MSTORE 00002c05: PUSH1 0x64 00002c07: ADD 00002c08: PUSH2 0x0824 00002c0b: JUMP 00002c0c: JUMPDEST 00002c0d: PUSH1 0x00 00002c0f: PUSH1 0x60 00002c11: PUSH2 0x2c19 00002c14: DUP5 00002c15: PUSH2 0x3406 00002c18: JUMP 00002c19: JUMPDEST 00002c1a: SUB 00002c1b: PUSH1 0x9f 00002c1d: DUP2 00002c1e: DUP2 00002c1f: SUB 00002c20: SWAP5 00002c21: SWAP1 00002c22: SWAP5 00002c23: SHL 00002c24: SWAP1 00002c25: SWAP4 00002c26: SHR 00002c27: PUSH13 0x465772b2bbbb5f824b15207a30 00002c35: DUP2 00002c36: ADD 00002c37: DUP2 00002c38: MUL 00002c39: PUSH1 0x60 00002c3b: SWAP1 00002c3c: DUP2 00002c3d: SAR 00002c3e: PUSH14 0x0388eaa27412d5aca026815d636e 00002c4d: ADD 00002c4e: DUP3 00002c4f: MUL 00002c50: DUP2 00002c51: SAR 00002c52: PUSH14 0x0df99ac502031bf953eff472fdcc 00002c61: ADD 00002c62: DUP3 00002c63: MUL 00002c64: DUP2 00002c65: SAR 00002c66: PUSH14 0x13cdffb29d51d99322bdff5f2211 00002c75: ADD 00002c76: DUP3 00002c77: MUL 00002c78: DUP2 00002c79: SAR 00002c7a: PUSH14 0x0a0f742023def783a307a986912e 00002c89: ADD 00002c8a: DUP3 00002c8b: MUL 00002c8c: DUP2 00002c8d: SAR 00002c8e: PUSH14 0x01920d8043ca89b5239253284e42 00002c9d: ADD 00002c9e: DUP3 00002c9f: MUL 00002ca0: DUP2 00002ca1: SAR 00002ca2: PUSH13 0x0b7a86d7375468fac667a0a527 00002cb0: ADD 00002cb1: PUSH13 0x29508e458543d8aa4df2abee78 00002cbf: DUP4 00002cc0: ADD 00002cc1: DUP4 00002cc2: MUL 00002cc3: DUP3 00002cc4: SAR 00002cc5: PUSH14 0x0139601a2efabe717e604cbb4894 00002cd4: ADD 00002cd5: DUP4 00002cd6: MUL 00002cd7: DUP3 00002cd8: SAR 00002cd9: PUSH14 0x02247f7a7b6594320649aa03aba1 00002ce8: ADD 00002ce9: DUP4 00002cea: MUL 00002ceb: DUP3 00002cec: SAR 00002ced: PUSH32 0xffffffffffffffffffffffffffffffffffffff73c0c716a594e00d54e3c4cbc9 00002d0e: ADD 00002d0f: DUP4 00002d10: MUL 00002d11: DUP3 00002d12: SAR 00002d13: PUSH32 0xfffffffffffffffffffffffffffffffffffffdc7b88c420e53a9890533129f6f 00002d34: ADD 00002d35: DUP4 00002d36: MUL 00002d37: SWAP1 00002d38: SWAP2 00002d39: SAR 00002d3a: PUSH32 0xffffffffffffffffffffffffffffffffffffff465fda27eb4d63ded474e5f832 00002d5b: ADD 00002d5c: SWAP1 00002d5d: SWAP2 00002d5e: MUL 00002d5f: PUSH32 0xfffffffffffffff5f6af8f7b3396644f18e15796000000000000000000000000 00002d80: ADD 00002d81: SDIV 00002d82: PUSH18 0x1340daa0d5f769dba1915cef59f0815a5506 00002d95: MUL 00002d96: PUSH30 0x0267a36c0c95b3975ab3ee5b203a7614a3f75373f047d803ae7b6687f2b3 00002db5: SWAP4 00002db6: SWAP1 00002db7: SWAP4 00002db8: MUL 00002db9: SWAP3 00002dba: SWAP1 00002dbb: SWAP3 00002dbc: ADD 00002dbd: PUSH30 0x57115e47018c7177eebf7cd370a3356a1b7863008a5ae8028c72b8864284 00002ddc: ADD 00002ddd: PUSH1 0xae 00002ddf: SAR 00002de0: SWAP3 00002de1: SWAP2 00002de2: POP 00002de3: POP 00002de4: JUMP 00002de5: JUMPDEST 00002de6: PUSH1 0x00 00002de8: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffdb731c958f34d94c1 00002e09: DUP3 00002e0a: SGT 00002e0b: PUSH2 0x2e16 00002e0e: JUMPI 00002e0f: POP 00002e10: PUSH1 0x00 00002e12: SWAP2 00002e13: SWAP1 00002e14: POP 00002e15: JUMP 00002e16: JUMPDEST 00002e17: PUSH9 0x0755bf798b4a1bf1e5 00002e21: DUP3 00002e22: SLT 00002e23: PUSH2 0x2e88 00002e26: JUMPI 00002e27: PUSH1 0x40 00002e29: MLOAD 00002e2a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002e4b: DUP2 00002e4c: MSTORE 00002e4d: PUSH1 0x20 00002e4f: PUSH1 0x04 00002e51: DUP3 00002e52: ADD 00002e53: MSTORE 00002e54: PUSH1 0x0c 00002e56: PUSH1 0x24 00002e58: DUP3 00002e59: ADD 00002e5a: MSTORE 00002e5b: PUSH32 0x4558505f4f564552464c4f570000000000000000000000000000000000000000 00002e7c: PUSH1 0x44 00002e7e: DUP3 00002e7f: ADD 00002e80: MSTORE 00002e81: PUSH1 0x64 00002e83: ADD 00002e84: PUSH2 0x0824 00002e87: JUMP 00002e88: JUMPDEST 00002e89: PUSH6 0x03782dace9d9 00002e90: PUSH1 0x4e 00002e92: DUP4 00002e93: SWAP1 00002e94: SHL 00002e95: SDIV 00002e96: SWAP2 00002e97: POP 00002e98: PUSH1 0x00 00002e9a: PUSH1 0x60 00002e9c: PUSH12 0xb17217f7d1cf79abc9e3b398 00002ea9: DUP5 00002eaa: DUP3 00002eab: SHL 00002eac: SDIV 00002ead: PUSH12 0x800000000000000000000000 00002eba: ADD 00002ebb: SWAP1 00002ebc: SAR 00002ebd: PUSH12 0xb17217f7d1cf79abc9e3b398 00002eca: DUP2 00002ecb: MUL 00002ecc: SWAP1 00002ecd: SWAP4 00002ece: SUB 00002ecf: PUSH32 0xffffffffffffffffffffffffffffffffffffffdbf3ccf1604d263450f02a5504 00002ef0: DUP2 00002ef1: ADD 00002ef2: DUP2 00002ef3: MUL 00002ef4: PUSH1 0x60 00002ef6: SWAP1 00002ef7: DUP2 00002ef8: SAR 00002ef9: PUSH14 0x0277594991cfc85f6e2461837cd9 00002f08: ADD 00002f09: DUP3 00002f0a: MUL 00002f0b: DUP2 00002f0c: SAR 00002f0d: PUSH32 0xffffffffffffffffffffffffffffffffffffe5adedaa1cb095af9e4da10e363c 00002f2e: ADD 00002f2f: DUP3 00002f30: MUL 00002f31: DUP2 00002f32: SAR 00002f33: PUSH14 0xb1bbb201f443cf962f1a1d3db4a5 00002f42: ADD 00002f43: DUP3 00002f44: MUL 00002f45: DUP2 00002f46: SAR 00002f47: PUSH32 0xfffffffffffffffffffffffffffffffffffd38dc772608b0ae56cce01296c0eb 00002f68: ADD 00002f69: DUP3 00002f6a: MUL 00002f6b: DUP2 00002f6c: SAR 00002f6d: PUSH15 0x05180bb14799ab47a8a8cb2a527d57 00002f7d: ADD 00002f7e: PUSH14 0x02d16720577bd19bf614176fe9ea 00002f8d: PUSH13 0x10fe68e7fd37d0007b713f7650 00002f9b: DUP5 00002f9c: ADD 00002f9d: DUP5 00002f9e: MUL 00002f9f: DUP4 00002fa0: SAR 00002fa1: SWAP1 00002fa2: DUP2 00002fa3: ADD 00002fa4: SWAP1 00002fa5: DUP5 00002fa6: ADD 00002fa7: PUSH32 0xfffffffffffffffffffffffffffffffffffffe2c69812cf03b0763fd454a8f7e 00002fc8: ADD 00002fc9: MUL 00002fca: SWAP1 00002fcb: SWAP2 00002fcc: SAR 00002fcd: PUSH15 0x0587f503bb6ea29d25fcb740196450 00002fdd: ADD 00002fde: SWAP1 00002fdf: SWAP2 00002fe0: MUL 00002fe1: PUSH26 0xd835ebba824c98fb31b83b2ca45c000000000000000000000000 00002ffc: ADD 00002ffd: SDIV 00002ffe: PUSH21 0x029d9dc38563c32e5c2f6dc192ee70ef65f9978af3 00003014: MUL 00003015: PUSH1 0xc3 00003017: SWAP4 00003018: SWAP1 00003019: SWAP4 0000301a: SUB 0000301b: SWAP3 0000301c: SWAP1 0000301d: SWAP3 0000301e: SHR 0000301f: SWAP3 00003020: SWAP2 00003021: POP 00003022: POP 00003023: JUMP 00003024: JUMPDEST 00003025: DUP1 00003026: MLOAD 00003027: PUSH1 0x60 00003029: SWAP1 0000302a: DUP1 0000302b: PUSH8 0xffffffffffffffff 00003034: DUP2 00003035: GT 00003036: ISZERO 00003037: PUSH2 0x3042 0000303a: JUMPI 0000303b: PUSH2 0x3042 0000303e: PUSH2 0x4529 00003041: JUMP 00003042: JUMPDEST 00003043: PUSH1 0x40 00003045: MLOAD 00003046: SWAP1 00003047: DUP1 00003048: DUP3 00003049: MSTORE 0000304a: DUP1 0000304b: PUSH1 0x20 0000304d: MUL 0000304e: PUSH1 0x20 00003050: ADD 00003051: DUP3 00003052: ADD 00003053: PUSH1 0x40 00003055: MSTORE 00003056: DUP1 00003057: ISZERO 00003058: PUSH2 0x3087 0000305b: JUMPI 0000305c: DUP2 0000305d: PUSH1 0x20 0000305f: ADD 00003060: JUMPDEST 00003061: PUSH1 0x40 00003063: DUP1 00003064: MLOAD 00003065: DUP1 00003066: DUP3 00003067: ADD 00003068: SWAP1 00003069: SWAP2 0000306a: MSTORE 0000306b: PUSH1 0x60 0000306d: DUP1 0000306e: DUP3 0000306f: MSTORE 00003070: PUSH1 0x20 00003072: DUP3 00003073: ADD 00003074: MSTORE 00003075: DUP2 00003076: MSTORE 00003077: PUSH1 0x20 00003079: ADD 0000307a: SWAP1 0000307b: PUSH1 0x01 0000307d: SWAP1 0000307e: SUB 0000307f: SWAP1 00003080: DUP2 00003081: PUSH2 0x3060 00003084: JUMPI 00003085: SWAP1 00003086: POP 00003087: JUMPDEST 00003088: POP 00003089: SWAP2 0000308a: POP 0000308b: PUSH1 0x00 0000308d: JUMPDEST 0000308e: DUP2 0000308f: DUP2 00003090: LT 00003091: ISZERO 00003092: PUSH2 0x3109 00003095: JUMPI 00003096: PUSH1 0x40 00003098: MLOAD 00003099: DUP1 0000309a: PUSH1 0x40 0000309c: ADD 0000309d: PUSH1 0x40 0000309f: MSTORE 000030a0: DUP1 000030a1: DUP6 000030a2: DUP4 000030a3: DUP2 000030a4: MLOAD 000030a5: DUP2 000030a6: LT 000030a7: PUSH2 0x30b2 000030aa: JUMPI 000030ab: PUSH2 0x30b2 000030ae: PUSH2 0x5092 000030b1: JUMP 000030b2: JUMPDEST 000030b3: PUSH1 0x20 000030b5: MUL 000030b6: PUSH1 0x20 000030b8: ADD 000030b9: ADD 000030ba: MLOAD 000030bb: DUP2 000030bc: MSTORE 000030bd: PUSH1 0x20 000030bf: ADD 000030c0: PUSH2 0x30e1 000030c3: DUP7 000030c4: DUP5 000030c5: DUP2 000030c6: MLOAD 000030c7: DUP2 000030c8: LT 000030c9: PUSH2 0x30d4 000030cc: JUMPI 000030cd: PUSH2 0x30d4 000030d0: PUSH2 0x5092 000030d3: JUMP 000030d4: JUMPDEST 000030d5: PUSH1 0x20 000030d7: MUL 000030d8: PUSH1 0x20 000030da: ADD 000030db: ADD 000030dc: MLOAD 000030dd: PUSH2 0x34dc 000030e0: JUMP 000030e1: JUMPDEST 000030e2: DUP2 000030e3: MSTORE 000030e4: POP 000030e5: DUP4 000030e6: DUP3 000030e7: DUP2 000030e8: MLOAD 000030e9: DUP2 000030ea: LT 000030eb: PUSH2 0x30f6 000030ee: JUMPI 000030ef: PUSH2 0x30f6 000030f2: PUSH2 0x5092 000030f5: JUMP 000030f6: JUMPDEST 000030f7: PUSH1 0x20 000030f9: SWAP1 000030fa: DUP2 000030fb: MUL 000030fc: SWAP2 000030fd: SWAP1 000030fe: SWAP2 000030ff: ADD 00003100: ADD 00003101: MSTORE 00003102: PUSH1 0x01 00003104: ADD 00003105: PUSH2 0x308d 00003108: JUMP 00003109: JUMPDEST 0000310a: POP 0000310b: POP 0000310c: SWAP2 0000310d: SWAP1 0000310e: POP 0000310f: JUMP 00003110: JUMPDEST 00003111: PUSH1 0x60 00003113: DUP1 00003114: PUSH1 0x40 00003116: MLOAD 00003117: SWAP1 00003118: POP 00003119: DUP3 0000311a: MLOAD 0000311b: DUP1 0000311c: PUSH1 0x01 0000311e: SHL 0000311f: PUSH1 0x3f 00003121: DUP2 00003122: ADD 00003123: PUSH1 0x1f 00003125: NOT 00003126: AND 00003127: DUP4 00003128: ADD 00003129: PUSH1 0x40 0000312b: MSTORE 0000312c: DUP1 0000312d: DUP4 0000312e: MSTORE 0000312f: POP 00003130: PUSH1 0x20 00003132: DUP5 00003133: ADD 00003134: PUSH1 0x20 00003136: DUP4 00003137: ADD 00003138: PUSH1 0x00 0000313a: JUMPDEST 0000313b: DUP4 0000313c: DUP2 0000313d: LT 0000313e: ISZERO 0000313f: PUSH2 0x3168 00003142: JUMPI 00003143: DUP1 00003144: PUSH1 0x01 00003146: SHL 00003147: DUP3 00003148: ADD 00003149: DUP2 0000314a: DUP5 0000314b: ADD 0000314c: MLOAD 0000314d: PUSH1 0x00 0000314f: BYTE 00003150: DUP1 00003151: PUSH1 0x04 00003153: SHR 00003154: DUP3 00003155: MSTORE8 00003156: PUSH1 0x0f 00003158: DUP2 00003159: AND 0000315a: PUSH1 0x01 0000315c: DUP4 0000315d: ADD 0000315e: MSTORE8 0000315f: POP 00003160: POP 00003161: PUSH1 0x01 00003163: ADD 00003164: PUSH2 0x313a 00003167: JUMP 00003168: JUMPDEST 00003169: POP 0000316a: SWAP3 0000316b: SWAP6 0000316c: SWAP5 0000316d: POP 0000316e: POP 0000316f: POP 00003170: POP 00003171: POP 00003172: JUMP 00003173: JUMPDEST 00003174: PUSH1 0x60 00003176: PUSH1 0x00 00003178: DUP1 00003179: PUSH1 0x00 0000317b: PUSH2 0x3183 0000317e: DUP6 0000317f: PUSH2 0x34ef 00003182: JUMP 00003183: JUMPDEST 00003184: SWAP2 00003185: SWAP5 00003186: POP 00003187: SWAP3 00003188: POP 00003189: SWAP1 0000318a: POP 0000318b: PUSH1 0x00 0000318d: DUP2 0000318e: PUSH1 0x01 00003190: DUP2 00003191: GT 00003192: ISZERO 00003193: PUSH2 0x319e 00003196: JUMPI 00003197: PUSH2 0x319e 0000319a: PUSH2 0x5106 0000319d: JUMP 0000319e: JUMPDEST 0000319f: EQ 000031a0: PUSH2 0x322b 000031a3: JUMPI 000031a4: PUSH1 0x40 000031a6: MLOAD 000031a7: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000031c8: DUP2 000031c9: MSTORE 000031ca: PUSH1 0x20 000031cc: PUSH1 0x04 000031ce: DUP3 000031cf: ADD 000031d0: MSTORE 000031d1: PUSH1 0x39 000031d3: PUSH1 0x24 000031d5: DUP3 000031d6: ADD 000031d7: MSTORE 000031d8: PUSH32 0x524c505265616465723a206465636f646564206974656d207479706520666f72 000031f9: PUSH1 0x44 000031fb: DUP3 000031fc: ADD 000031fd: MSTORE 000031fe: PUSH32 0x206279746573206973206e6f7420612064617461206974656d00000000000000 0000321f: PUSH1 0x64 00003221: DUP3 00003222: ADD 00003223: MSTORE 00003224: PUSH1 0x84 00003226: ADD 00003227: PUSH2 0x0824 0000322a: JUMP 0000322b: JUMPDEST 0000322c: PUSH2 0x3235 0000322f: DUP3 00003230: DUP5 00003231: PUSH2 0x4f7e 00003234: JUMP 00003235: JUMPDEST 00003236: DUP6 00003237: MLOAD 00003238: EQ 00003239: PUSH2 0x32c4 0000323c: JUMPI 0000323d: PUSH1 0x40 0000323f: MLOAD 00003240: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003261: DUP2 00003262: MSTORE 00003263: PUSH1 0x20 00003265: PUSH1 0x04 00003267: DUP3 00003268: ADD 00003269: MSTORE 0000326a: PUSH1 0x34 0000326c: PUSH1 0x24 0000326e: DUP3 0000326f: ADD 00003270: MSTORE 00003271: PUSH32 0x524c505265616465723a2062797465732076616c756520636f6e7461696e7320 00003292: PUSH1 0x44 00003294: DUP3 00003295: ADD 00003296: MSTORE 00003297: PUSH32 0x616e20696e76616c69642072656d61696e646572000000000000000000000000 000032b8: PUSH1 0x64 000032ba: DUP3 000032bb: ADD 000032bc: MSTORE 000032bd: PUSH1 0x84 000032bf: ADD 000032c0: PUSH2 0x0824 000032c3: JUMP 000032c4: JUMPDEST 000032c5: PUSH2 0x20ac 000032c8: DUP6 000032c9: PUSH1 0x20 000032cb: ADD 000032cc: MLOAD 000032cd: DUP5 000032ce: DUP5 000032cf: PUSH2 0x3f5c 000032d2: JUMP 000032d3: JUMPDEST 000032d4: PUSH1 0x60 000032d6: PUSH1 0x20 000032d8: DUP3 000032d9: PUSH1 0x00 000032db: ADD 000032dc: MLOAD 000032dd: LT 000032de: PUSH2 0x32ef 000032e1: JUMPI 000032e2: PUSH2 0x32ea 000032e5: DUP3 000032e6: PUSH2 0x3173 000032e9: JUMP 000032ea: JUMPDEST 000032eb: PUSH2 0x0e75 000032ee: JUMP 000032ef: JUMPDEST 000032f0: PUSH2 0x0e75 000032f3: DUP3 000032f4: PUSH2 0x3ff0 000032f7: JUMP 000032f8: JUMPDEST 000032f9: PUSH1 0x60 000032fb: PUSH2 0x0e75 000032fe: PUSH2 0x3317 00003301: DUP4 00003302: PUSH1 0x20 00003304: ADD 00003305: MLOAD 00003306: PUSH1 0x00 00003308: DUP2 00003309: MLOAD 0000330a: DUP2 0000330b: LT 0000330c: PUSH2 0x24d5 0000330f: JUMPI 00003310: PUSH2 0x24d5 00003313: PUSH2 0x5092 00003316: JUMP 00003317: JUMPDEST 00003318: PUSH2 0x3110 0000331b: JUMP 0000331c: JUMPDEST 0000331d: PUSH1 0x60 0000331f: DUP3 00003320: MLOAD 00003321: DUP3 00003322: LT 00003323: PUSH2 0x333b 00003326: JUMPI 00003327: POP 00003328: PUSH1 0x40 0000332a: DUP1 0000332b: MLOAD 0000332c: PUSH1 0x20 0000332e: DUP2 0000332f: ADD 00003330: SWAP1 00003331: SWAP2 00003332: MSTORE 00003333: PUSH1 0x00 00003335: DUP2 00003336: MSTORE 00003337: PUSH2 0x0e75 0000333a: JUMP 0000333b: JUMPDEST 0000333c: PUSH2 0x1fb2 0000333f: DUP4 00003340: DUP4 00003341: DUP5 00003342: DUP7 00003343: MLOAD 00003344: PUSH2 0x334d 00003347: SWAP2 00003348: SWAP1 00003349: PUSH2 0x4c84 0000334c: JUMP 0000334d: JUMPDEST 0000334e: PUSH2 0x4006 00003351: JUMP 00003352: JUMPDEST 00003353: PUSH1 0x00 00003355: DUP1 00003356: DUP3 00003357: MLOAD 00003358: DUP5 00003359: MLOAD 0000335a: LT 0000335b: PUSH2 0x3365 0000335e: JUMPI 0000335f: DUP3 00003360: MLOAD 00003361: PUSH2 0x3368 00003364: JUMP 00003365: JUMPDEST 00003366: DUP4 00003367: MLOAD 00003368: JUMPDEST 00003369: SWAP1 0000336a: POP 0000336b: JUMPDEST 0000336c: DUP1 0000336d: DUP3 0000336e: LT 0000336f: DUP1 00003370: ISZERO 00003371: PUSH2 0x33ef 00003374: JUMPI 00003375: POP 00003376: DUP3 00003377: DUP3 00003378: DUP2 00003379: MLOAD 0000337a: DUP2 0000337b: LT 0000337c: PUSH2 0x3387 0000337f: JUMPI 00003380: PUSH2 0x3387 00003383: PUSH2 0x5092 00003386: JUMP 00003387: JUMPDEST 00003388: PUSH1 0x20 0000338a: ADD 0000338b: ADD 0000338c: MLOAD 0000338d: PUSH1 0xf8 0000338f: SHR 00003390: PUSH1 0xf8 00003392: SHL 00003393: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 000033b3: NOT 000033b4: AND 000033b5: DUP5 000033b6: DUP4 000033b7: DUP2 000033b8: MLOAD 000033b9: DUP2 000033ba: LT 000033bb: PUSH2 0x33c6 000033be: JUMPI 000033bf: PUSH2 0x33c6 000033c2: PUSH2 0x5092 000033c5: JUMP 000033c6: JUMPDEST 000033c7: ADD 000033c8: PUSH1 0x20 000033ca: ADD 000033cb: MLOAD 000033cc: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 000033ed: AND 000033ee: EQ 000033ef: JUMPDEST 000033f0: ISZERO 000033f1: PUSH2 0x33ff 000033f4: JUMPI 000033f5: DUP2 000033f6: PUSH1 0x01 000033f8: ADD 000033f9: SWAP2 000033fa: POP 000033fb: PUSH2 0x336b 000033fe: JUMP 000033ff: JUMPDEST 00003400: POP 00003401: SWAP3 00003402: SWAP2 00003403: POP 00003404: POP 00003405: JUMP 00003406: JUMPDEST 00003407: PUSH1 0x00 00003409: DUP1 0000340a: DUP3 0000340b: GT 0000340c: PUSH2 0x3471 0000340f: JUMPI 00003410: PUSH1 0x40 00003412: MLOAD 00003413: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003434: DUP2 00003435: MSTORE 00003436: PUSH1 0x20 00003438: PUSH1 0x04 0000343a: DUP3 0000343b: ADD 0000343c: MSTORE 0000343d: PUSH1 0x09 0000343f: PUSH1 0x24 00003441: DUP3 00003442: ADD 00003443: MSTORE 00003444: PUSH32 0x554e444546494e45440000000000000000000000000000000000000000000000 00003465: PUSH1 0x44 00003467: DUP3 00003468: ADD 00003469: MSTORE 0000346a: PUSH1 0x64 0000346c: ADD 0000346d: PUSH2 0x0824 00003470: JUMP 00003471: JUMPDEST 00003472: POP 00003473: PUSH1 0x01 00003475: PUSH16 0xffffffffffffffffffffffffffffffff 00003486: DUP3 00003487: GT 00003488: PUSH1 0x07 0000348a: SHL 0000348b: DUP3 0000348c: DUP2 0000348d: SHR 0000348e: PUSH8 0xffffffffffffffff 00003497: LT 00003498: PUSH1 0x06 0000349a: SHL 0000349b: OR 0000349c: DUP3 0000349d: DUP2 0000349e: SHR 0000349f: PUSH4 0xffffffff 000034a4: LT 000034a5: PUSH1 0x05 000034a7: SHL 000034a8: OR 000034a9: DUP3 000034aa: DUP2 000034ab: SHR 000034ac: PUSH2 0xffff 000034af: LT 000034b0: PUSH1 0x04 000034b2: SHL 000034b3: OR 000034b4: DUP3 000034b5: DUP2 000034b6: SHR 000034b7: PUSH1 0xff 000034b9: LT 000034ba: PUSH1 0x03 000034bc: SWAP1 000034bd: DUP2 000034be: SHL 000034bf: SWAP1 000034c0: SWAP2 000034c1: OR 000034c2: DUP4 000034c3: DUP2 000034c4: SHR 000034c5: PUSH1 0x0f 000034c7: LT 000034c8: PUSH1 0x02 000034ca: SHL 000034cb: OR 000034cc: DUP4 000034cd: DUP2 000034ce: SHR 000034cf: SWAP1 000034d0: SWAP2 000034d1: LT 000034d2: DUP3 000034d3: SHL 000034d4: OR 000034d5: SWAP2 000034d6: DUP3 000034d7: SHR 000034d8: GT 000034d9: OR 000034da: SWAP1 000034db: JUMP 000034dc: JUMPDEST 000034dd: PUSH1 0x60 000034df: PUSH2 0x0e75 000034e2: PUSH2 0x34ea 000034e5: DUP4 000034e6: PUSH2 0x41de 000034e9: JUMP 000034ea: JUMPDEST 000034eb: PUSH2 0x42c7 000034ee: JUMP 000034ef: JUMPDEST 000034f0: PUSH1 0x00 000034f2: DUP1 000034f3: PUSH1 0x00 000034f5: DUP1 000034f6: DUP5 000034f7: PUSH1 0x00 000034f9: ADD 000034fa: MLOAD 000034fb: GT 000034fc: PUSH2 0x35ad 000034ff: JUMPI 00003500: PUSH1 0x40 00003502: MLOAD 00003503: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003524: DUP2 00003525: MSTORE 00003526: PUSH1 0x20 00003528: PUSH1 0x04 0000352a: DUP3 0000352b: ADD 0000352c: MSTORE 0000352d: PUSH1 0x4a 0000352f: PUSH1 0x24 00003531: DUP3 00003532: ADD 00003533: MSTORE 00003534: PUSH32 0x524c505265616465723a206c656e677468206f6620616e20524c50206974656d 00003555: PUSH1 0x44 00003557: DUP3 00003558: ADD 00003559: MSTORE 0000355a: PUSH32 0x206d7573742062652067726561746572207468616e207a65726f20746f206265 0000357b: PUSH1 0x64 0000357d: DUP3 0000357e: ADD 0000357f: MSTORE 00003580: PUSH32 0x206465636f6461626c6500000000000000000000000000000000000000000000 000035a1: PUSH1 0x84 000035a3: DUP3 000035a4: ADD 000035a5: MSTORE 000035a6: PUSH1 0xa4 000035a8: ADD 000035a9: PUSH2 0x0824 000035ac: JUMP 000035ad: JUMPDEST 000035ae: PUSH1 0x20 000035b0: DUP5 000035b1: ADD 000035b2: MLOAD 000035b3: DUP1 000035b4: MLOAD 000035b5: PUSH1 0x00 000035b7: BYTE 000035b8: PUSH1 0x7f 000035ba: DUP2 000035bb: GT 000035bc: PUSH2 0x35d2 000035bf: JUMPI 000035c0: PUSH1 0x00 000035c2: PUSH1 0x01 000035c4: PUSH1 0x00 000035c6: SWAP5 000035c7: POP 000035c8: SWAP5 000035c9: POP 000035ca: SWAP5 000035cb: POP 000035cc: POP 000035cd: POP 000035ce: PUSH2 0x3f55 000035d1: JUMP 000035d2: JUMPDEST 000035d3: PUSH1 0xb7 000035d5: DUP2 000035d6: GT 000035d7: PUSH2 0x37e0 000035da: JUMPI 000035db: PUSH1 0x00 000035dd: PUSH2 0x35e7 000035e0: PUSH1 0x80 000035e2: DUP4 000035e3: PUSH2 0x4c84 000035e6: JUMP 000035e7: JUMPDEST 000035e8: SWAP1 000035e9: POP 000035ea: DUP1 000035eb: DUP8 000035ec: PUSH1 0x00 000035ee: ADD 000035ef: MLOAD 000035f0: GT 000035f1: PUSH2 0x36a2 000035f4: JUMPI 000035f5: PUSH1 0x40 000035f7: MLOAD 000035f8: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003619: DUP2 0000361a: MSTORE 0000361b: PUSH1 0x20 0000361d: PUSH1 0x04 0000361f: DUP3 00003620: ADD 00003621: MSTORE 00003622: PUSH1 0x4e 00003624: PUSH1 0x24 00003626: DUP3 00003627: ADD 00003628: MSTORE 00003629: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 0000364a: PUSH1 0x44 0000364c: DUP3 0000364d: ADD 0000364e: MSTORE 0000364f: PUSH32 0x742062652067726561746572207468616e20737472696e67206c656e67746820 00003670: PUSH1 0x64 00003672: DUP3 00003673: ADD 00003674: MSTORE 00003675: PUSH32 0x2873686f727420737472696e6729000000000000000000000000000000000000 00003696: PUSH1 0x84 00003698: DUP3 00003699: ADD 0000369a: MSTORE 0000369b: PUSH1 0xa4 0000369d: ADD 0000369e: PUSH2 0x0824 000036a1: JUMP 000036a2: JUMPDEST 000036a3: PUSH1 0x01 000036a5: DUP4 000036a6: DUP2 000036a7: ADD 000036a8: MLOAD 000036a9: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 000036ca: AND 000036cb: SWAP1 000036cc: DUP3 000036cd: EQ 000036ce: ISZERO 000036cf: DUP1 000036d0: PUSH2 0x371b 000036d3: JUMPI 000036d4: POP 000036d5: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 000036f6: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 00003717: DUP3 00003718: AND 00003719: LT 0000371a: ISZERO 0000371b: JUMPDEST 0000371c: PUSH2 0x37cd 0000371f: JUMPI 00003720: PUSH1 0x40 00003722: MLOAD 00003723: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003744: DUP2 00003745: MSTORE 00003746: PUSH1 0x20 00003748: PUSH1 0x04 0000374a: DUP3 0000374b: ADD 0000374c: MSTORE 0000374d: PUSH1 0x4d 0000374f: PUSH1 0x24 00003751: DUP3 00003752: ADD 00003753: MSTORE 00003754: PUSH32 0x524c505265616465723a20696e76616c6964207072656669782c2073696e676c 00003775: PUSH1 0x44 00003777: DUP3 00003778: ADD 00003779: MSTORE 0000377a: PUSH32 0x652062797465203c203078383020617265206e6f742070726566697865642028 0000379b: PUSH1 0x64 0000379d: DUP3 0000379e: ADD 0000379f: MSTORE 000037a0: PUSH32 0x73686f727420737472696e672900000000000000000000000000000000000000 000037c1: PUSH1 0x84 000037c3: DUP3 000037c4: ADD 000037c5: MSTORE 000037c6: PUSH1 0xa4 000037c8: ADD 000037c9: PUSH2 0x0824 000037cc: JUMP 000037cd: JUMPDEST 000037ce: POP 000037cf: PUSH1 0x01 000037d1: SWAP6 000037d2: POP 000037d3: SWAP4 000037d4: POP 000037d5: PUSH1 0x00 000037d7: SWAP3 000037d8: POP 000037d9: PUSH2 0x3f55 000037dc: SWAP2 000037dd: POP 000037de: POP 000037df: JUMP 000037e0: JUMPDEST 000037e1: PUSH1 0xbf 000037e3: DUP2 000037e4: GT 000037e5: PUSH2 0x3b2e 000037e8: JUMPI 000037e9: PUSH1 0x00 000037eb: PUSH2 0x37f5 000037ee: PUSH1 0xb7 000037f0: DUP4 000037f1: PUSH2 0x4c84 000037f4: JUMP 000037f5: JUMPDEST 000037f6: SWAP1 000037f7: POP 000037f8: DUP1 000037f9: DUP8 000037fa: PUSH1 0x00 000037fc: ADD 000037fd: MLOAD 000037fe: GT 000037ff: PUSH2 0x38b0 00003802: JUMPI 00003803: PUSH1 0x40 00003805: MLOAD 00003806: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003827: DUP2 00003828: MSTORE 00003829: PUSH1 0x20 0000382b: PUSH1 0x04 0000382d: DUP3 0000382e: ADD 0000382f: MSTORE 00003830: PUSH1 0x51 00003832: PUSH1 0x24 00003834: DUP3 00003835: ADD 00003836: MSTORE 00003837: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 00003858: PUSH1 0x44 0000385a: DUP3 0000385b: ADD 0000385c: MSTORE 0000385d: PUSH32 0x74206265203e207468616e206c656e677468206f6620737472696e67206c656e 0000387e: PUSH1 0x64 00003880: DUP3 00003881: ADD 00003882: MSTORE 00003883: PUSH32 0x67746820286c6f6e6720737472696e6729000000000000000000000000000000 000038a4: PUSH1 0x84 000038a6: DUP3 000038a7: ADD 000038a8: MSTORE 000038a9: PUSH1 0xa4 000038ab: ADD 000038ac: PUSH2 0x0824 000038af: JUMP 000038b0: JUMPDEST 000038b1: PUSH1 0x01 000038b3: DUP4 000038b4: ADD 000038b5: MLOAD 000038b6: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 000038d7: AND 000038d8: PUSH1 0x00 000038da: DUP2 000038db: SWAP1 000038dc: SUB 000038dd: PUSH2 0x398e 000038e0: JUMPI 000038e1: PUSH1 0x40 000038e3: MLOAD 000038e4: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003905: DUP2 00003906: MSTORE 00003907: PUSH1 0x20 00003909: PUSH1 0x04 0000390b: DUP3 0000390c: ADD 0000390d: MSTORE 0000390e: PUSH1 0x4a 00003910: PUSH1 0x24 00003912: DUP3 00003913: ADD 00003914: MSTORE 00003915: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 00003936: PUSH1 0x44 00003938: DUP3 00003939: ADD 0000393a: MSTORE 0000393b: PUSH32 0x74206e6f74206861766520616e79206c656164696e67207a65726f7320286c6f 0000395c: PUSH1 0x64 0000395e: DUP3 0000395f: ADD 00003960: MSTORE 00003961: PUSH32 0x6e6720737472696e672900000000000000000000000000000000000000000000 00003982: PUSH1 0x84 00003984: DUP3 00003985: ADD 00003986: MSTORE 00003987: PUSH1 0xa4 00003989: ADD 0000398a: PUSH2 0x0824 0000398d: JUMP 0000398e: JUMPDEST 0000398f: PUSH1 0x01 00003991: DUP5 00003992: ADD 00003993: MLOAD 00003994: PUSH1 0x08 00003996: DUP4 00003997: MUL 00003998: PUSH2 0x0100 0000399b: SUB 0000399c: SHR 0000399d: PUSH1 0x37 0000399f: DUP2 000039a0: GT 000039a1: PUSH2 0x3a52 000039a4: JUMPI 000039a5: PUSH1 0x40 000039a7: MLOAD 000039a8: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000039c9: DUP2 000039ca: MSTORE 000039cb: PUSH1 0x20 000039cd: PUSH1 0x04 000039cf: DUP3 000039d0: ADD 000039d1: MSTORE 000039d2: PUSH1 0x48 000039d4: PUSH1 0x24 000039d6: DUP3 000039d7: ADD 000039d8: MSTORE 000039d9: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 000039fa: PUSH1 0x44 000039fc: DUP3 000039fd: ADD 000039fe: MSTORE 000039ff: PUSH32 0x742062652067726561746572207468616e20353520627974657320286c6f6e67 00003a20: PUSH1 0x64 00003a22: DUP3 00003a23: ADD 00003a24: MSTORE 00003a25: PUSH32 0x20737472696e6729000000000000000000000000000000000000000000000000 00003a46: PUSH1 0x84 00003a48: DUP3 00003a49: ADD 00003a4a: MSTORE 00003a4b: PUSH1 0xa4 00003a4d: ADD 00003a4e: PUSH2 0x0824 00003a51: JUMP 00003a52: JUMPDEST 00003a53: PUSH2 0x3a5c 00003a56: DUP2 00003a57: DUP5 00003a58: PUSH2 0x4f7e 00003a5b: JUMP 00003a5c: JUMPDEST 00003a5d: DUP10 00003a5e: MLOAD 00003a5f: GT 00003a60: PUSH2 0x3b11 00003a63: JUMPI 00003a64: PUSH1 0x40 00003a66: MLOAD 00003a67: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003a88: DUP2 00003a89: MSTORE 00003a8a: PUSH1 0x20 00003a8c: PUSH1 0x04 00003a8e: DUP3 00003a8f: ADD 00003a90: MSTORE 00003a91: PUSH1 0x4c 00003a93: PUSH1 0x24 00003a95: DUP3 00003a96: ADD 00003a97: MSTORE 00003a98: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 00003ab9: PUSH1 0x44 00003abb: DUP3 00003abc: ADD 00003abd: MSTORE 00003abe: PUSH32 0x742062652067726561746572207468616e20746f74616c206c656e6774682028 00003adf: PUSH1 0x64 00003ae1: DUP3 00003ae2: ADD 00003ae3: MSTORE 00003ae4: PUSH32 0x6c6f6e6720737472696e67290000000000000000000000000000000000000000 00003b05: PUSH1 0x84 00003b07: DUP3 00003b08: ADD 00003b09: MSTORE 00003b0a: PUSH1 0xa4 00003b0c: ADD 00003b0d: PUSH2 0x0824 00003b10: JUMP 00003b11: JUMPDEST 00003b12: PUSH2 0x3b1c 00003b15: DUP4 00003b16: PUSH1 0x01 00003b18: PUSH2 0x4f7e 00003b1b: JUMP 00003b1c: JUMPDEST 00003b1d: SWAP8 00003b1e: POP 00003b1f: SWAP6 00003b20: POP 00003b21: PUSH1 0x00 00003b23: SWAP5 00003b24: POP 00003b25: PUSH2 0x3f55 00003b28: SWAP4 00003b29: POP 00003b2a: POP 00003b2b: POP 00003b2c: POP 00003b2d: JUMP 00003b2e: JUMPDEST 00003b2f: PUSH1 0xf7 00003b31: DUP2 00003b32: GT 00003b33: PUSH2 0x3c0f 00003b36: JUMPI 00003b37: PUSH1 0x00 00003b39: PUSH2 0x3b43 00003b3c: PUSH1 0xc0 00003b3e: DUP4 00003b3f: PUSH2 0x4c84 00003b42: JUMP 00003b43: JUMPDEST 00003b44: SWAP1 00003b45: POP 00003b46: DUP1 00003b47: DUP8 00003b48: PUSH1 0x00 00003b4a: ADD 00003b4b: MLOAD 00003b4c: GT 00003b4d: PUSH2 0x3bfe 00003b50: JUMPI 00003b51: PUSH1 0x40 00003b53: MLOAD 00003b54: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003b75: DUP2 00003b76: MSTORE 00003b77: PUSH1 0x20 00003b79: PUSH1 0x04 00003b7b: DUP3 00003b7c: ADD 00003b7d: MSTORE 00003b7e: PUSH1 0x4a 00003b80: PUSH1 0x24 00003b82: DUP3 00003b83: ADD 00003b84: MSTORE 00003b85: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 00003ba6: PUSH1 0x44 00003ba8: DUP3 00003ba9: ADD 00003baa: MSTORE 00003bab: PUSH32 0x742062652067726561746572207468616e206c697374206c656e677468202873 00003bcc: PUSH1 0x64 00003bce: DUP3 00003bcf: ADD 00003bd0: MSTORE 00003bd1: PUSH32 0x686f7274206c6973742900000000000000000000000000000000000000000000 00003bf2: PUSH1 0x84 00003bf4: DUP3 00003bf5: ADD 00003bf6: MSTORE 00003bf7: PUSH1 0xa4 00003bf9: ADD 00003bfa: PUSH2 0x0824 00003bfd: JUMP 00003bfe: JUMPDEST 00003bff: PUSH1 0x01 00003c01: SWAP6 00003c02: POP 00003c03: SWAP4 00003c04: POP 00003c05: DUP5 00003c06: SWAP3 00003c07: POP 00003c08: PUSH2 0x3f55 00003c0b: SWAP2 00003c0c: POP 00003c0d: POP 00003c0e: JUMP 00003c0f: JUMPDEST 00003c10: PUSH1 0x00 00003c12: PUSH2 0x3c1c 00003c15: PUSH1 0xf7 00003c17: DUP4 00003c18: PUSH2 0x4c84 00003c1b: JUMP 00003c1c: JUMPDEST 00003c1d: SWAP1 00003c1e: POP 00003c1f: DUP1 00003c20: DUP8 00003c21: PUSH1 0x00 00003c23: ADD 00003c24: MLOAD 00003c25: GT 00003c26: PUSH2 0x3cd7 00003c29: JUMPI 00003c2a: PUSH1 0x40 00003c2c: MLOAD 00003c2d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003c4e: DUP2 00003c4f: MSTORE 00003c50: PUSH1 0x20 00003c52: PUSH1 0x04 00003c54: DUP3 00003c55: ADD 00003c56: MSTORE 00003c57: PUSH1 0x4d 00003c59: PUSH1 0x24 00003c5b: DUP3 00003c5c: ADD 00003c5d: MSTORE 00003c5e: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 00003c7f: PUSH1 0x44 00003c81: DUP3 00003c82: ADD 00003c83: MSTORE 00003c84: PUSH32 0x74206265203e207468616e206c656e677468206f66206c697374206c656e6774 00003ca5: PUSH1 0x64 00003ca7: DUP3 00003ca8: ADD 00003ca9: MSTORE 00003caa: PUSH32 0x6820286c6f6e67206c6973742900000000000000000000000000000000000000 00003ccb: PUSH1 0x84 00003ccd: DUP3 00003cce: ADD 00003ccf: MSTORE 00003cd0: PUSH1 0xa4 00003cd2: ADD 00003cd3: PUSH2 0x0824 00003cd6: JUMP 00003cd7: JUMPDEST 00003cd8: PUSH1 0x01 00003cda: DUP4 00003cdb: ADD 00003cdc: MLOAD 00003cdd: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 00003cfe: AND 00003cff: PUSH1 0x00 00003d01: DUP2 00003d02: SWAP1 00003d03: SUB 00003d04: PUSH2 0x3db5 00003d07: JUMPI 00003d08: PUSH1 0x40 00003d0a: MLOAD 00003d0b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003d2c: DUP2 00003d2d: MSTORE 00003d2e: PUSH1 0x20 00003d30: PUSH1 0x04 00003d32: DUP3 00003d33: ADD 00003d34: MSTORE 00003d35: PUSH1 0x48 00003d37: PUSH1 0x24 00003d39: DUP3 00003d3a: ADD 00003d3b: MSTORE 00003d3c: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 00003d5d: PUSH1 0x44 00003d5f: DUP3 00003d60: ADD 00003d61: MSTORE 00003d62: PUSH32 0x74206e6f74206861766520616e79206c656164696e67207a65726f7320286c6f 00003d83: PUSH1 0x64 00003d85: DUP3 00003d86: ADD 00003d87: MSTORE 00003d88: PUSH32 0x6e67206c69737429000000000000000000000000000000000000000000000000 00003da9: PUSH1 0x84 00003dab: DUP3 00003dac: ADD 00003dad: MSTORE 00003dae: PUSH1 0xa4 00003db0: ADD 00003db1: PUSH2 0x0824 00003db4: JUMP 00003db5: JUMPDEST 00003db6: PUSH1 0x01 00003db8: DUP5 00003db9: ADD 00003dba: MLOAD 00003dbb: PUSH1 0x08 00003dbd: DUP4 00003dbe: MUL 00003dbf: PUSH2 0x0100 00003dc2: SUB 00003dc3: SHR 00003dc4: PUSH1 0x37 00003dc6: DUP2 00003dc7: GT 00003dc8: PUSH2 0x3e79 00003dcb: JUMPI 00003dcc: PUSH1 0x40 00003dce: MLOAD 00003dcf: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003df0: DUP2 00003df1: MSTORE 00003df2: PUSH1 0x20 00003df4: PUSH1 0x04 00003df6: DUP3 00003df7: ADD 00003df8: MSTORE 00003df9: PUSH1 0x46 00003dfb: PUSH1 0x24 00003dfd: DUP3 00003dfe: ADD 00003dff: MSTORE 00003e00: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 00003e21: PUSH1 0x44 00003e23: DUP3 00003e24: ADD 00003e25: MSTORE 00003e26: PUSH32 0x742062652067726561746572207468616e20353520627974657320286c6f6e67 00003e47: PUSH1 0x64 00003e49: DUP3 00003e4a: ADD 00003e4b: MSTORE 00003e4c: PUSH32 0x206c697374290000000000000000000000000000000000000000000000000000 00003e6d: PUSH1 0x84 00003e6f: DUP3 00003e70: ADD 00003e71: MSTORE 00003e72: PUSH1 0xa4 00003e74: ADD 00003e75: PUSH2 0x0824 00003e78: JUMP 00003e79: JUMPDEST 00003e7a: PUSH2 0x3e83 00003e7d: DUP2 00003e7e: DUP5 00003e7f: PUSH2 0x4f7e 00003e82: JUMP 00003e83: JUMPDEST 00003e84: DUP10 00003e85: MLOAD 00003e86: GT 00003e87: PUSH2 0x3f38 00003e8a: JUMPI 00003e8b: PUSH1 0x40 00003e8d: MLOAD 00003e8e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003eaf: DUP2 00003eb0: MSTORE 00003eb1: PUSH1 0x20 00003eb3: PUSH1 0x04 00003eb5: DUP3 00003eb6: ADD 00003eb7: MSTORE 00003eb8: PUSH1 0x4a 00003eba: PUSH1 0x24 00003ebc: DUP3 00003ebd: ADD 00003ebe: MSTORE 00003ebf: PUSH32 0x524c505265616465723a206c656e677468206f6620636f6e74656e74206d7573 00003ee0: PUSH1 0x44 00003ee2: DUP3 00003ee3: ADD 00003ee4: MSTORE 00003ee5: PUSH32 0x742062652067726561746572207468616e20746f74616c206c656e6774682028 00003f06: PUSH1 0x64 00003f08: DUP3 00003f09: ADD 00003f0a: MSTORE 00003f0b: PUSH32 0x6c6f6e67206c6973742900000000000000000000000000000000000000000000 00003f2c: PUSH1 0x84 00003f2e: DUP3 00003f2f: ADD 00003f30: MSTORE 00003f31: PUSH1 0xa4 00003f33: ADD 00003f34: PUSH2 0x0824 00003f37: JUMP 00003f38: JUMPDEST 00003f39: PUSH2 0x3f43 00003f3c: DUP4 00003f3d: PUSH1 0x01 00003f3f: PUSH2 0x4f7e 00003f42: JUMP 00003f43: JUMPDEST 00003f44: SWAP8 00003f45: POP 00003f46: SWAP6 00003f47: POP 00003f48: PUSH1 0x01 00003f4a: SWAP5 00003f4b: POP 00003f4c: PUSH2 0x3f55 00003f4f: SWAP4 00003f50: POP 00003f51: POP 00003f52: POP 00003f53: POP 00003f54: JUMP 00003f55: JUMPDEST 00003f56: SWAP2 00003f57: SWAP4 00003f58: SWAP1 00003f59: SWAP3 00003f5a: POP 00003f5b: JUMP 00003f5c: JUMPDEST 00003f5d: PUSH1 0x60 00003f5f: DUP2 00003f60: PUSH8 0xffffffffffffffff 00003f69: DUP2 00003f6a: GT 00003f6b: ISZERO 00003f6c: PUSH2 0x3f77 00003f6f: JUMPI 00003f70: PUSH2 0x3f77 00003f73: PUSH2 0x4529 00003f76: JUMP 00003f77: JUMPDEST 00003f78: PUSH1 0x40 00003f7a: MLOAD 00003f7b: SWAP1 00003f7c: DUP1 00003f7d: DUP3 00003f7e: MSTORE 00003f7f: DUP1 00003f80: PUSH1 0x1f 00003f82: ADD 00003f83: PUSH1 0x1f 00003f85: NOT 00003f86: AND 00003f87: PUSH1 0x20 00003f89: ADD 00003f8a: DUP3 00003f8b: ADD 00003f8c: PUSH1 0x40 00003f8e: MSTORE 00003f8f: DUP1 00003f90: ISZERO 00003f91: PUSH2 0x3fa1 00003f94: JUMPI 00003f95: PUSH1 0x20 00003f97: DUP3 00003f98: ADD 00003f99: DUP2 00003f9a: DUP1 00003f9b: CALLDATASIZE 00003f9c: DUP4 00003f9d: CALLDATACOPY 00003f9e: ADD 00003f9f: SWAP1 00003fa0: POP 00003fa1: JUMPDEST 00003fa2: POP 00003fa3: SWAP1 00003fa4: POP 00003fa5: DUP2 00003fa6: ISZERO 00003fa7: PUSH2 0x1fb2 00003faa: JUMPI 00003fab: PUSH1 0x00 00003fad: PUSH2 0x3fb6 00003fb0: DUP5 00003fb1: DUP7 00003fb2: PUSH2 0x4f7e 00003fb5: JUMP 00003fb6: JUMPDEST 00003fb7: SWAP1 00003fb8: POP 00003fb9: PUSH1 0x20 00003fbb: DUP3 00003fbc: ADD 00003fbd: PUSH1 0x00 00003fbf: JUMPDEST 00003fc0: DUP5 00003fc1: DUP2 00003fc2: LT 00003fc3: ISZERO 00003fc4: PUSH2 0x3fd7 00003fc7: JUMPI 00003fc8: DUP3 00003fc9: DUP2 00003fca: ADD 00003fcb: MLOAD 00003fcc: DUP3 00003fcd: DUP3 00003fce: ADD 00003fcf: MSTORE 00003fd0: PUSH1 0x20 00003fd2: ADD 00003fd3: PUSH2 0x3fbf 00003fd6: JUMP 00003fd7: JUMPDEST 00003fd8: DUP5 00003fd9: DUP2 00003fda: GT 00003fdb: ISZERO 00003fdc: PUSH2 0x3fe6 00003fdf: JUMPI 00003fe0: PUSH1 0x00 00003fe2: DUP6 00003fe3: DUP4 00003fe4: ADD 00003fe5: MSTORE 00003fe6: JUMPDEST 00003fe7: POP 00003fe8: POP 00003fe9: POP 00003fea: SWAP4 00003feb: SWAP3 00003fec: POP 00003fed: POP 00003fee: POP 00003fef: JUMP 00003ff0: JUMPDEST 00003ff1: PUSH1 0x60 00003ff3: PUSH2 0x0e75 00003ff6: DUP3 00003ff7: PUSH1 0x20 00003ff9: ADD 00003ffa: MLOAD 00003ffb: PUSH1 0x00 00003ffd: DUP5 00003ffe: PUSH1 0x00 00004000: ADD 00004001: MLOAD 00004002: PUSH2 0x3f5c 00004005: JUMP 00004006: JUMPDEST 00004007: PUSH1 0x60 00004009: DUP2 0000400a: DUP3 0000400b: PUSH1 0x1f 0000400d: ADD 0000400e: LT 0000400f: ISZERO 00004010: PUSH2 0x4075 00004013: JUMPI 00004014: PUSH1 0x40 00004016: MLOAD 00004017: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004038: DUP2 00004039: MSTORE 0000403a: PUSH1 0x20 0000403c: PUSH1 0x04 0000403e: DUP3 0000403f: ADD 00004040: MSTORE 00004041: PUSH1 0x0e 00004043: PUSH1 0x24 00004045: DUP3 00004046: ADD 00004047: MSTORE 00004048: PUSH32 0x736c6963655f6f766572666c6f77000000000000000000000000000000000000 00004069: PUSH1 0x44 0000406b: DUP3 0000406c: ADD 0000406d: MSTORE 0000406e: PUSH1 0x64 00004070: ADD 00004071: PUSH2 0x0824 00004074: JUMP 00004075: JUMPDEST 00004076: DUP3 00004077: DUP3 00004078: DUP5 00004079: ADD 0000407a: LT 0000407b: ISZERO 0000407c: PUSH2 0x40e1 0000407f: JUMPI 00004080: PUSH1 0x40 00004082: MLOAD 00004083: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000040a4: DUP2 000040a5: MSTORE 000040a6: PUSH1 0x20 000040a8: PUSH1 0x04 000040aa: DUP3 000040ab: ADD 000040ac: MSTORE 000040ad: PUSH1 0x0e 000040af: PUSH1 0x24 000040b1: DUP3 000040b2: ADD 000040b3: MSTORE 000040b4: PUSH32 0x736c6963655f6f766572666c6f77000000000000000000000000000000000000 000040d5: PUSH1 0x44 000040d7: DUP3 000040d8: ADD 000040d9: MSTORE 000040da: PUSH1 0x64 000040dc: ADD 000040dd: PUSH2 0x0824 000040e0: JUMP 000040e1: JUMPDEST 000040e2: DUP2 000040e3: DUP4 000040e4: ADD 000040e5: DUP5 000040e6: MLOAD 000040e7: LT 000040e8: ISZERO 000040e9: PUSH2 0x414e 000040ec: JUMPI 000040ed: PUSH1 0x40 000040ef: MLOAD 000040f0: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004111: DUP2 00004112: MSTORE 00004113: PUSH1 0x20 00004115: PUSH1 0x04 00004117: DUP3 00004118: ADD 00004119: MSTORE 0000411a: PUSH1 0x11 0000411c: PUSH1 0x24 0000411e: DUP3 0000411f: ADD 00004120: MSTORE 00004121: PUSH32 0x736c6963655f6f75744f66426f756e6473000000000000000000000000000000 00004142: PUSH1 0x44 00004144: DUP3 00004145: ADD 00004146: MSTORE 00004147: PUSH1 0x64 00004149: ADD 0000414a: PUSH2 0x0824 0000414d: JUMP 0000414e: JUMPDEST 0000414f: PUSH1 0x60 00004151: DUP3 00004152: ISZERO 00004153: DUP1 00004154: ISZERO 00004155: PUSH2 0x416d 00004158: JUMPI 00004159: PUSH1 0x40 0000415b: MLOAD 0000415c: SWAP2 0000415d: POP 0000415e: PUSH1 0x00 00004160: DUP3 00004161: MSTORE 00004162: PUSH1 0x20 00004164: DUP3 00004165: ADD 00004166: PUSH1 0x40 00004168: MSTORE 00004169: PUSH2 0x41d5 0000416c: JUMP 0000416d: JUMPDEST 0000416e: PUSH1 0x40 00004170: MLOAD 00004171: SWAP2 00004172: POP 00004173: PUSH1 0x1f 00004175: DUP5 00004176: AND 00004177: DUP1 00004178: ISZERO 00004179: PUSH1 0x20 0000417b: MUL 0000417c: DUP2 0000417d: DUP5 0000417e: ADD 0000417f: ADD 00004180: DUP6 00004181: DUP2 00004182: ADD 00004183: DUP8 00004184: DUP4 00004185: ISZERO 00004186: PUSH1 0x20 00004188: MUL 00004189: DUP5 0000418a: DUP12 0000418b: ADD 0000418c: ADD 0000418d: ADD 0000418e: JUMPDEST 0000418f: DUP2 00004190: DUP4 00004191: LT 00004192: ISZERO 00004193: PUSH2 0x41a6 00004196: JUMPI 00004197: DUP1 00004198: MLOAD 00004199: DUP4 0000419a: MSTORE 0000419b: PUSH1 0x20 0000419d: SWAP3 0000419e: DUP4 0000419f: ADD 000041a0: SWAP3 000041a1: ADD 000041a2: PUSH2 0x418e 000041a5: JUMP 000041a6: JUMPDEST 000041a7: POP 000041a8: POP 000041a9: DUP6 000041aa: DUP5 000041ab: MSTORE 000041ac: PUSH1 0x1f 000041ae: ADD 000041af: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 000041d0: AND 000041d1: PUSH1 0x40 000041d3: MSTORE 000041d4: POP 000041d5: JUMPDEST 000041d6: POP 000041d7: SWAP5 000041d8: SWAP4 000041d9: POP 000041da: POP 000041db: POP 000041dc: POP 000041dd: JUMP 000041de: JUMPDEST 000041df: PUSH1 0x40 000041e1: DUP1 000041e2: MLOAD 000041e3: DUP1 000041e4: DUP3 000041e5: ADD 000041e6: SWAP1 000041e7: SWAP2 000041e8: MSTORE 000041e9: PUSH1 0x00 000041eb: DUP1 000041ec: DUP3 000041ed: MSTORE 000041ee: PUSH1 0x20 000041f0: DUP3 000041f1: ADD 000041f2: MSTORE 000041f3: PUSH1 0x00 000041f5: DUP3 000041f6: MLOAD 000041f7: GT 000041f8: PUSH2 0x42a9 000041fb: JUMPI 000041fc: PUSH1 0x40 000041fe: MLOAD 000041ff: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004220: DUP2 00004221: MSTORE 00004222: PUSH1 0x20 00004224: PUSH1 0x04 00004226: DUP3 00004227: ADD 00004228: MSTORE 00004229: PUSH1 0x4a 0000422b: PUSH1 0x24 0000422d: DUP3 0000422e: ADD 0000422f: MSTORE 00004230: PUSH32 0x524c505265616465723a206c656e677468206f6620616e20524c50206974656d 00004251: PUSH1 0x44 00004253: DUP3 00004254: ADD 00004255: MSTORE 00004256: PUSH32 0x206d7573742062652067726561746572207468616e207a65726f20746f206265 00004277: PUSH1 0x64 00004279: DUP3 0000427a: ADD 0000427b: MSTORE 0000427c: PUSH32 0x206465636f6461626c6500000000000000000000000000000000000000000000 0000429d: PUSH1 0x84 0000429f: DUP3 000042a0: ADD 000042a1: MSTORE 000042a2: PUSH1 0xa4 000042a4: ADD 000042a5: PUSH2 0x0824 000042a8: JUMP 000042a9: JUMPDEST 000042aa: POP 000042ab: PUSH1 0x40 000042ad: DUP1 000042ae: MLOAD 000042af: DUP1 000042b0: DUP3 000042b1: ADD 000042b2: SWAP1 000042b3: SWAP2 000042b4: MSTORE 000042b5: DUP2 000042b6: MLOAD 000042b7: DUP2 000042b8: MSTORE 000042b9: PUSH1 0x20 000042bb: SWAP2 000042bc: DUP3 000042bd: ADD 000042be: SWAP2 000042bf: DUP2 000042c0: ADD 000042c1: SWAP2 000042c2: SWAP1 000042c3: SWAP2 000042c4: MSTORE 000042c5: SWAP1 000042c6: JUMP 000042c7: JUMPDEST 000042c8: PUSH1 0x60 000042ca: PUSH1 0x00 000042cc: DUP1 000042cd: PUSH1 0x00 000042cf: PUSH2 0x42d7 000042d2: DUP6 000042d3: PUSH2 0x34ef 000042d6: JUMP 000042d7: JUMPDEST 000042d8: SWAP2 000042d9: SWAP5 000042da: POP 000042db: SWAP3 000042dc: POP 000042dd: SWAP1 000042de: POP 000042df: PUSH1 0x01 000042e1: DUP2 000042e2: PUSH1 0x01 000042e4: DUP2 000042e5: GT 000042e6: ISZERO 000042e7: PUSH2 0x42f2 000042ea: JUMPI 000042eb: PUSH2 0x42f2 000042ee: PUSH2 0x5106 000042f1: JUMP 000042f2: JUMPDEST 000042f3: EQ 000042f4: PUSH2 0x437f 000042f7: JUMPI 000042f8: PUSH1 0x40 000042fa: MLOAD 000042fb: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000431c: DUP2 0000431d: MSTORE 0000431e: PUSH1 0x20 00004320: PUSH1 0x04 00004322: DUP3 00004323: ADD 00004324: MSTORE 00004325: PUSH1 0x38 00004327: PUSH1 0x24 00004329: DUP3 0000432a: ADD 0000432b: MSTORE 0000432c: PUSH32 0x524c505265616465723a206465636f646564206974656d207479706520666f72 0000434d: PUSH1 0x44 0000434f: DUP3 00004350: ADD 00004351: MSTORE 00004352: PUSH32 0x206c697374206973206e6f742061206c697374206974656d0000000000000000 00004373: PUSH1 0x64 00004375: DUP3 00004376: ADD 00004377: MSTORE 00004378: PUSH1 0x84 0000437a: ADD 0000437b: PUSH2 0x0824 0000437e: JUMP 0000437f: JUMPDEST 00004380: DUP5 00004381: MLOAD 00004382: PUSH2 0x438b 00004385: DUP4 00004386: DUP6 00004387: PUSH2 0x4f7e 0000438a: JUMP 0000438b: JUMPDEST 0000438c: EQ 0000438d: PUSH2 0x4418 00004390: JUMPI 00004391: PUSH1 0x40 00004393: MLOAD 00004394: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000043b5: DUP2 000043b6: MSTORE 000043b7: PUSH1 0x20 000043b9: PUSH1 0x04 000043bb: DUP3 000043bc: ADD 000043bd: MSTORE 000043be: PUSH1 0x32 000043c0: PUSH1 0x24 000043c2: DUP3 000043c3: ADD 000043c4: MSTORE 000043c5: PUSH32 0x524c505265616465723a206c697374206974656d2068617320616e20696e7661 000043e6: PUSH1 0x44 000043e8: DUP3 000043e9: ADD 000043ea: MSTORE 000043eb: PUSH32 0x6c696420646174612072656d61696e6465720000000000000000000000000000 0000440c: PUSH1 0x64 0000440e: DUP3 0000440f: ADD 00004410: MSTORE 00004411: PUSH1 0x84 00004413: ADD 00004414: PUSH2 0x0824 00004417: JUMP 00004418: JUMPDEST 00004419: PUSH1 0x40 0000441b: DUP1 0000441c: MLOAD 0000441d: PUSH1 0x20 0000441f: DUP1 00004420: DUP3 00004421: MSTORE 00004422: PUSH2 0x0420 00004425: DUP3 00004426: ADD 00004427: SWAP1 00004428: SWAP3 00004429: MSTORE 0000442a: SWAP1 0000442b: DUP2 0000442c: PUSH1 0x20 0000442e: ADD 0000442f: JUMPDEST 00004430: PUSH1 0x40 00004432: DUP1 00004433: MLOAD 00004434: DUP1 00004435: DUP3 00004436: ADD 00004437: SWAP1 00004438: SWAP2 00004439: MSTORE 0000443a: PUSH1 0x00 0000443c: DUP1 0000443d: DUP3 0000443e: MSTORE 0000443f: PUSH1 0x20 00004441: DUP3 00004442: ADD 00004443: MSTORE 00004444: DUP2 00004445: MSTORE 00004446: PUSH1 0x20 00004448: ADD 00004449: SWAP1 0000444a: PUSH1 0x01 0000444c: SWAP1 0000444d: SUB 0000444e: SWAP1 0000444f: DUP2 00004450: PUSH2 0x442f 00004453: JUMPI 00004454: SWAP1 00004455: POP 00004456: POP 00004457: SWAP4 00004458: POP 00004459: PUSH1 0x00 0000445b: DUP4 0000445c: JUMPDEST 0000445d: DUP7 0000445e: MLOAD 0000445f: DUP2 00004460: LT 00004461: ISZERO 00004462: PUSH2 0x451d 00004465: JUMPI 00004466: PUSH1 0x00 00004468: DUP1 00004469: PUSH2 0x44a2 0000446c: PUSH1 0x40 0000446e: MLOAD 0000446f: DUP1 00004470: PUSH1 0x40 00004472: ADD 00004473: PUSH1 0x40 00004475: MSTORE 00004476: DUP1 00004477: DUP6 00004478: DUP13 00004479: PUSH1 0x00 0000447b: ADD 0000447c: MLOAD 0000447d: PUSH2 0x4486 00004480: SWAP2 00004481: SWAP1 00004482: PUSH2 0x4c84 00004485: JUMP 00004486: JUMPDEST 00004487: DUP2 00004488: MSTORE 00004489: PUSH1 0x20 0000448b: ADD 0000448c: DUP6 0000448d: DUP13 0000448e: PUSH1 0x20 00004490: ADD 00004491: MLOAD 00004492: PUSH2 0x449b 00004495: SWAP2 00004496: SWAP1 00004497: PUSH2 0x4f7e 0000449a: JUMP 0000449b: JUMPDEST 0000449c: SWAP1 0000449d: MSTORE 0000449e: PUSH2 0x34ef 000044a1: JUMP 000044a2: JUMPDEST 000044a3: POP 000044a4: SWAP2 000044a5: POP 000044a6: SWAP2 000044a7: POP 000044a8: PUSH1 0x40 000044aa: MLOAD 000044ab: DUP1 000044ac: PUSH1 0x40 000044ae: ADD 000044af: PUSH1 0x40 000044b1: MSTORE 000044b2: DUP1 000044b3: DUP4 000044b4: DUP4 000044b5: PUSH2 0x44be 000044b8: SWAP2 000044b9: SWAP1 000044ba: PUSH2 0x4f7e 000044bd: JUMP 000044be: JUMPDEST 000044bf: DUP2 000044c0: MSTORE 000044c1: PUSH1 0x20 000044c3: ADD 000044c4: DUP5 000044c5: DUP12 000044c6: PUSH1 0x20 000044c8: ADD 000044c9: MLOAD 000044ca: PUSH2 0x44d3 000044cd: SWAP2 000044ce: SWAP1 000044cf: PUSH2 0x4f7e 000044d2: JUMP 000044d3: JUMPDEST 000044d4: DUP2 000044d5: MSTORE 000044d6: POP 000044d7: DUP9 000044d8: DUP6 000044d9: DUP2 000044da: MLOAD 000044db: DUP2 000044dc: LT 000044dd: PUSH2 0x44e8 000044e0: JUMPI 000044e1: PUSH2 0x44e8 000044e4: PUSH2 0x5092 000044e7: JUMP 000044e8: JUMPDEST 000044e9: PUSH1 0x20 000044eb: SWAP1 000044ec: DUP2 000044ed: MUL 000044ee: SWAP2 000044ef: SWAP1 000044f0: SWAP2 000044f1: ADD 000044f2: ADD 000044f3: MSTORE 000044f4: PUSH2 0x44fe 000044f7: PUSH1 0x01 000044f9: DUP6 000044fa: PUSH2 0x4f7e 000044fd: JUMP 000044fe: JUMPDEST 000044ff: SWAP4 00004500: POP 00004501: PUSH2 0x450a 00004504: DUP2 00004505: DUP4 00004506: PUSH2 0x4f7e 00004509: JUMP 0000450a: JUMPDEST 0000450b: PUSH2 0x4514 0000450e: SWAP1 0000450f: DUP5 00004510: PUSH2 0x4f7e 00004513: JUMP 00004514: JUMPDEST 00004515: SWAP3 00004516: POP 00004517: POP 00004518: POP 00004519: PUSH2 0x445c 0000451c: JUMP 0000451d: JUMPDEST 0000451e: POP 0000451f: DUP5 00004520: MSTORE 00004521: POP 00004522: SWAP2 00004523: SWAP4 00004524: SWAP3 00004525: POP 00004526: POP 00004527: POP 00004528: JUMP 00004529: JUMPDEST 0000452a: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 0000454b: PUSH1 0x00 0000454d: MSTORE 0000454e: PUSH1 0x41 00004550: PUSH1 0x04 00004552: MSTORE 00004553: PUSH1 0x24 00004555: PUSH1 0x00 00004557: REVERT 00004558: JUMPDEST 00004559: PUSH1 0x40 0000455b: MLOAD 0000455c: PUSH1 0x1f 0000455e: DUP3 0000455f: ADD 00004560: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00004581: AND 00004582: DUP2 00004583: ADD 00004584: PUSH8 0xffffffffffffffff 0000458d: DUP2 0000458e: GT 0000458f: DUP3 00004590: DUP3 00004591: LT 00004592: OR 00004593: ISZERO 00004594: PUSH2 0x459f 00004597: JUMPI 00004598: PUSH2 0x459f 0000459b: PUSH2 0x4529 0000459e: JUMP 0000459f: JUMPDEST 000045a0: PUSH1 0x40 000045a2: MSTORE 000045a3: SWAP2 000045a4: SWAP1 000045a5: POP 000045a6: JUMP 000045a7: JUMPDEST 000045a8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000045bd: DUP2 000045be: AND 000045bf: DUP2 000045c0: EQ 000045c1: PUSH2 0x45c9 000045c4: JUMPI 000045c5: PUSH1 0x00 000045c7: DUP1 000045c8: REVERT 000045c9: JUMPDEST 000045ca: POP 000045cb: JUMP 000045cc: JUMPDEST 000045cd: PUSH1 0x00 000045cf: DUP3 000045d0: PUSH1 0x1f 000045d2: DUP4 000045d3: ADD 000045d4: SLT 000045d5: PUSH2 0x45dd 000045d8: JUMPI 000045d9: PUSH1 0x00 000045db: DUP1 000045dc: REVERT 000045dd: JUMPDEST 000045de: DUP2 000045df: CALLDATALOAD 000045e0: PUSH8 0xffffffffffffffff 000045e9: DUP2 000045ea: GT 000045eb: ISZERO 000045ec: PUSH2 0x45f7 000045ef: JUMPI 000045f0: PUSH2 0x45f7 000045f3: PUSH2 0x4529 000045f6: JUMP 000045f7: JUMPDEST 000045f8: PUSH2 0x4628 000045fb: PUSH1 0x20 000045fd: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 0000461e: PUSH1 0x1f 00004620: DUP5 00004621: ADD 00004622: AND 00004623: ADD 00004624: PUSH2 0x4558 00004627: JUMP 00004628: JUMPDEST 00004629: DUP2 0000462a: DUP2 0000462b: MSTORE 0000462c: DUP5 0000462d: PUSH1 0x20 0000462f: DUP4 00004630: DUP7 00004631: ADD 00004632: ADD 00004633: GT 00004634: ISZERO 00004635: PUSH2 0x463d 00004638: JUMPI 00004639: PUSH1 0x00 0000463b: DUP1 0000463c: REVERT 0000463d: JUMPDEST 0000463e: DUP2 0000463f: PUSH1 0x20 00004641: DUP6 00004642: ADD 00004643: PUSH1 0x20 00004645: DUP4 00004646: ADD 00004647: CALLDATACOPY 00004648: PUSH1 0x00 0000464a: SWAP2 0000464b: DUP2 0000464c: ADD 0000464d: PUSH1 0x20 0000464f: ADD 00004650: SWAP2 00004651: SWAP1 00004652: SWAP2 00004653: MSTORE 00004654: SWAP4 00004655: SWAP3 00004656: POP 00004657: POP 00004658: POP 00004659: JUMP 0000465a: JUMPDEST 0000465b: PUSH1 0x00 0000465d: PUSH1 0xc0 0000465f: DUP3 00004660: DUP5 00004661: SUB 00004662: SLT 00004663: ISZERO 00004664: PUSH2 0x466c 00004667: JUMPI 00004668: PUSH1 0x00 0000466a: DUP1 0000466b: REVERT 0000466c: JUMPDEST 0000466d: PUSH1 0x40 0000466f: MLOAD 00004670: PUSH1 0xc0 00004672: DUP2 00004673: ADD 00004674: PUSH8 0xffffffffffffffff 0000467d: DUP3 0000467e: DUP3 0000467f: LT 00004680: DUP2 00004681: DUP4 00004682: GT 00004683: OR 00004684: ISZERO 00004685: PUSH2 0x4690 00004688: JUMPI 00004689: PUSH2 0x4690 0000468c: PUSH2 0x4529 0000468f: JUMP 00004690: JUMPDEST 00004691: DUP2 00004692: PUSH1 0x40 00004694: MSTORE 00004695: DUP3 00004696: SWAP4 00004697: POP 00004698: DUP5 00004699: CALLDATALOAD 0000469a: DUP4 0000469b: MSTORE 0000469c: PUSH1 0x20 0000469e: DUP6 0000469f: ADD 000046a0: CALLDATALOAD 000046a1: SWAP2 000046a2: POP 000046a3: PUSH2 0x46ab 000046a6: DUP3 000046a7: PUSH2 0x45a7 000046aa: JUMP 000046ab: JUMPDEST 000046ac: DUP2 000046ad: PUSH1 0x20 000046af: DUP5 000046b0: ADD 000046b1: MSTORE 000046b2: PUSH1 0x40 000046b4: DUP6 000046b5: ADD 000046b6: CALLDATALOAD 000046b7: SWAP2 000046b8: POP 000046b9: PUSH2 0x46c1 000046bc: DUP3 000046bd: PUSH2 0x45a7 000046c0: JUMP 000046c1: JUMPDEST 000046c2: DUP2 000046c3: PUSH1 0x40 000046c5: DUP5 000046c6: ADD 000046c7: MSTORE 000046c8: PUSH1 0x60 000046ca: DUP6 000046cb: ADD 000046cc: CALLDATALOAD 000046cd: PUSH1 0x60 000046cf: DUP5 000046d0: ADD 000046d1: MSTORE 000046d2: PUSH1 0x80 000046d4: DUP6 000046d5: ADD 000046d6: CALLDATALOAD 000046d7: PUSH1 0x80 000046d9: DUP5 000046da: ADD 000046db: MSTORE 000046dc: PUSH1 0xa0 000046de: DUP6 000046df: ADD 000046e0: CALLDATALOAD 000046e1: SWAP2 000046e2: POP 000046e3: DUP1 000046e4: DUP3 000046e5: GT 000046e6: ISZERO 000046e7: PUSH2 0x46ef 000046ea: JUMPI 000046eb: PUSH1 0x00 000046ed: DUP1 000046ee: REVERT 000046ef: JUMPDEST 000046f0: POP 000046f1: PUSH2 0x46fc 000046f4: DUP6 000046f5: DUP3 000046f6: DUP7 000046f7: ADD 000046f8: PUSH2 0x45cc 000046fb: JUMP 000046fc: JUMPDEST 000046fd: PUSH1 0xa0 000046ff: DUP4 00004700: ADD 00004701: MSTORE 00004702: POP 00004703: POP 00004704: SWAP3 00004705: SWAP2 00004706: POP 00004707: POP 00004708: JUMP 00004709: JUMPDEST 0000470a: PUSH1 0x00 0000470c: DUP1 0000470d: PUSH1 0x00 0000470f: DUP1 00004710: PUSH1 0x00 00004712: DUP6 00004713: DUP8 00004714: SUB 00004715: PUSH1 0xe0 00004717: DUP2 00004718: SLT 00004719: ISZERO 0000471a: PUSH2 0x4722 0000471d: JUMPI 0000471e: PUSH1 0x00 00004720: DUP1 00004721: REVERT 00004722: JUMPDEST 00004723: DUP7 00004724: CALLDATALOAD 00004725: PUSH8 0xffffffffffffffff 0000472e: DUP1 0000472f: DUP3 00004730: GT 00004731: ISZERO 00004732: PUSH2 0x473a 00004735: JUMPI 00004736: PUSH1 0x00 00004738: DUP1 00004739: REVERT 0000473a: JUMPDEST 0000473b: PUSH2 0x4746 0000473e: DUP11 0000473f: DUP4 00004740: DUP12 00004741: ADD 00004742: PUSH2 0x465a 00004745: JUMP 00004746: JUMPDEST 00004747: SWAP8 00004748: POP 00004749: PUSH1 0x20 0000474b: DUP10 0000474c: ADD 0000474d: CALLDATALOAD 0000474e: SWAP7 0000474f: POP 00004750: PUSH1 0x80 00004752: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0 00004773: DUP5 00004774: ADD 00004775: SLT 00004776: ISZERO 00004777: PUSH2 0x477f 0000477a: JUMPI 0000477b: PUSH1 0x00 0000477d: DUP1 0000477e: REVERT 0000477f: JUMPDEST 00004780: PUSH1 0x40 00004782: DUP10 00004783: ADD 00004784: SWAP6 00004785: POP 00004786: PUSH1 0xc0 00004788: DUP10 00004789: ADD 0000478a: CALLDATALOAD 0000478b: SWAP3 0000478c: POP 0000478d: DUP1 0000478e: DUP4 0000478f: GT 00004790: ISZERO 00004791: PUSH2 0x4799 00004794: JUMPI 00004795: PUSH1 0x00 00004797: DUP1 00004798: REVERT 00004799: JUMPDEST 0000479a: DUP3 0000479b: DUP10 0000479c: ADD 0000479d: SWAP3 0000479e: POP 0000479f: DUP10 000047a0: PUSH1 0x1f 000047a2: DUP5 000047a3: ADD 000047a4: SLT 000047a5: PUSH2 0x47ad 000047a8: JUMPI 000047a9: PUSH1 0x00 000047ab: DUP1 000047ac: REVERT 000047ad: JUMPDEST 000047ae: DUP3 000047af: CALLDATALOAD 000047b0: SWAP2 000047b1: POP 000047b2: DUP1 000047b3: DUP3 000047b4: GT 000047b5: ISZERO 000047b6: PUSH2 0x47be 000047b9: JUMPI 000047ba: PUSH1 0x00 000047bc: DUP1 000047bd: REVERT 000047be: JUMPDEST 000047bf: POP 000047c0: DUP9 000047c1: PUSH1 0x20 000047c3: DUP3 000047c4: PUSH1 0x05 000047c6: SHL 000047c7: DUP5 000047c8: ADD 000047c9: ADD 000047ca: GT 000047cb: ISZERO 000047cc: PUSH2 0x47d4 000047cf: JUMPI 000047d0: PUSH1 0x00 000047d2: DUP1 000047d3: REVERT 000047d4: JUMPDEST 000047d5: SWAP6 000047d6: SWAP9 000047d7: SWAP5 000047d8: SWAP8 000047d9: POP 000047da: SWAP3 000047db: SWAP6 000047dc: POP 000047dd: POP 000047de: POP 000047df: PUSH1 0x20 000047e1: ADD 000047e2: SWAP2 000047e3: SWAP1 000047e4: JUMP 000047e5: JUMPDEST 000047e6: PUSH1 0x00 000047e8: JUMPDEST 000047e9: DUP4 000047ea: DUP2 000047eb: LT 000047ec: ISZERO 000047ed: PUSH2 0x4800 000047f0: JUMPI 000047f1: DUP2 000047f2: DUP2 000047f3: ADD 000047f4: MLOAD 000047f5: DUP4 000047f6: DUP3 000047f7: ADD 000047f8: MSTORE 000047f9: PUSH1 0x20 000047fb: ADD 000047fc: PUSH2 0x47e8 000047ff: JUMP 00004800: JUMPDEST 00004801: DUP4 00004802: DUP2 00004803: GT 00004804: ISZERO 00004805: PUSH2 0x1919 00004808: JUMPI 00004809: POP 0000480a: POP 0000480b: PUSH1 0x00 0000480d: SWAP2 0000480e: ADD 0000480f: MSTORE 00004810: JUMP 00004811: JUMPDEST 00004812: PUSH1 0x00 00004814: DUP2 00004815: MLOAD 00004816: DUP1 00004817: DUP5 00004818: MSTORE 00004819: PUSH2 0x4829 0000481c: DUP2 0000481d: PUSH1 0x20 0000481f: DUP7 00004820: ADD 00004821: PUSH1 0x20 00004823: DUP7 00004824: ADD 00004825: PUSH2 0x47e5 00004828: JUMP 00004829: JUMPDEST 0000482a: PUSH1 0x1f 0000482c: ADD 0000482d: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 0000484e: AND 0000484f: SWAP3 00004850: SWAP1 00004851: SWAP3 00004852: ADD 00004853: PUSH1 0x20 00004855: ADD 00004856: SWAP3 00004857: SWAP2 00004858: POP 00004859: POP 0000485a: JUMP 0000485b: JUMPDEST 0000485c: PUSH1 0x20 0000485e: DUP2 0000485f: MSTORE 00004860: PUSH1 0x00 00004862: PUSH2 0x1fb2 00004865: PUSH1 0x20 00004867: DUP4 00004868: ADD 00004869: DUP5 0000486a: PUSH2 0x4811 0000486d: JUMP 0000486e: JUMPDEST 0000486f: PUSH1 0x00 00004871: PUSH1 0x20 00004873: DUP3 00004874: DUP5 00004875: SUB 00004876: SLT 00004877: ISZERO 00004878: PUSH2 0x4880 0000487b: JUMPI 0000487c: PUSH1 0x00 0000487e: DUP1 0000487f: REVERT 00004880: JUMPDEST 00004881: POP 00004882: CALLDATALOAD 00004883: SWAP2 00004884: SWAP1 00004885: POP 00004886: JUMP 00004887: JUMPDEST 00004888: PUSH1 0x00 0000488a: PUSH1 0x20 0000488c: DUP3 0000488d: DUP5 0000488e: SUB 0000488f: SLT 00004890: ISZERO 00004891: PUSH2 0x4899 00004894: JUMPI 00004895: PUSH1 0x00 00004897: DUP1 00004898: REVERT 00004899: JUMPDEST 0000489a: DUP2 0000489b: CALLDATALOAD 0000489c: PUSH8 0xffffffffffffffff 000048a5: DUP2 000048a6: GT 000048a7: ISZERO 000048a8: PUSH2 0x48b0 000048ab: JUMPI 000048ac: PUSH1 0x00 000048ae: DUP1 000048af: REVERT 000048b0: JUMPDEST 000048b1: PUSH2 0x48bc 000048b4: DUP5 000048b5: DUP3 000048b6: DUP6 000048b7: ADD 000048b8: PUSH2 0x465a 000048bb: JUMP 000048bc: JUMPDEST 000048bd: SWAP5 000048be: SWAP4 000048bf: POP 000048c0: POP 000048c1: POP 000048c2: POP 000048c3: JUMP 000048c4: JUMPDEST 000048c5: DUP1 000048c6: CALLDATALOAD 000048c7: PUSH8 0xffffffffffffffff 000048d0: DUP2 000048d1: AND 000048d2: DUP2 000048d3: EQ 000048d4: PUSH2 0x48dc 000048d7: JUMPI 000048d8: PUSH1 0x00 000048da: DUP1 000048db: REVERT 000048dc: JUMPDEST 000048dd: SWAP2 000048de: SWAP1 000048df: POP 000048e0: JUMP 000048e1: JUMPDEST 000048e2: PUSH1 0x00 000048e4: PUSH1 0x20 000048e6: DUP3 000048e7: DUP5 000048e8: SUB 000048e9: SLT 000048ea: ISZERO 000048eb: PUSH2 0x48f3 000048ee: JUMPI 000048ef: PUSH1 0x00 000048f1: DUP1 000048f2: REVERT 000048f3: JUMPDEST 000048f4: PUSH2 0x1fb2 000048f7: DUP3 000048f8: PUSH2 0x48c4 000048fb: JUMP 000048fc: JUMPDEST 000048fd: PUSH1 0x00 000048ff: DUP1 00004900: PUSH1 0x00 00004902: PUSH1 0x60 00004904: DUP5 00004905: DUP7 00004906: SUB 00004907: SLT 00004908: ISZERO 00004909: PUSH2 0x4911 0000490c: JUMPI 0000490d: PUSH1 0x00 0000490f: DUP1 00004910: REVERT 00004911: JUMPDEST 00004912: DUP4 00004913: CALLDATALOAD 00004914: PUSH2 0x491c 00004917: DUP2 00004918: PUSH2 0x45a7 0000491b: JUMP 0000491c: JUMPDEST 0000491d: SWAP3 0000491e: POP 0000491f: PUSH1 0x20 00004921: DUP5 00004922: ADD 00004923: CALLDATALOAD 00004924: PUSH2 0x492c 00004927: DUP2 00004928: PUSH2 0x45a7 0000492b: JUMP 0000492c: JUMPDEST 0000492d: SWAP2 0000492e: POP 0000492f: PUSH1 0x40 00004931: DUP5 00004932: ADD 00004933: CALLDATALOAD 00004934: PUSH2 0x493c 00004937: DUP2 00004938: PUSH2 0x45a7 0000493b: JUMP 0000493c: JUMPDEST 0000493d: DUP1 0000493e: SWAP2 0000493f: POP 00004940: POP 00004941: SWAP3 00004942: POP 00004943: SWAP3 00004944: POP 00004945: SWAP3 00004946: JUMP 00004947: JUMPDEST 00004948: DUP1 00004949: ISZERO 0000494a: ISZERO 0000494b: DUP2 0000494c: EQ 0000494d: PUSH2 0x45c9 00004950: JUMPI 00004951: PUSH1 0x00 00004953: DUP1 00004954: REVERT 00004955: JUMPDEST 00004956: PUSH1 0x00 00004958: DUP1 00004959: PUSH1 0x00 0000495b: DUP1 0000495c: PUSH1 0x00 0000495e: PUSH1 0xa0 00004960: DUP7 00004961: DUP9 00004962: SUB 00004963: SLT 00004964: ISZERO 00004965: PUSH2 0x496d 00004968: JUMPI 00004969: PUSH1 0x00 0000496b: DUP1 0000496c: REVERT 0000496d: JUMPDEST 0000496e: DUP6 0000496f: CALLDATALOAD 00004970: PUSH2 0x4978 00004973: DUP2 00004974: PUSH2 0x45a7 00004977: JUMP 00004978: JUMPDEST 00004979: SWAP5 0000497a: POP 0000497b: PUSH1 0x20 0000497d: DUP7 0000497e: ADD 0000497f: CALLDATALOAD 00004980: SWAP4 00004981: POP 00004982: PUSH2 0x498d 00004985: PUSH1 0x40 00004987: DUP8 00004988: ADD 00004989: PUSH2 0x48c4 0000498c: JUMP 0000498d: JUMPDEST 0000498e: SWAP3 0000498f: POP 00004990: PUSH1 0x60 00004992: DUP7 00004993: ADD 00004994: CALLDATALOAD 00004995: PUSH2 0x499d 00004998: DUP2 00004999: PUSH2 0x4947 0000499c: JUMP 0000499d: JUMPDEST 0000499e: SWAP2 0000499f: POP 000049a0: PUSH1 0x80 000049a2: DUP7 000049a3: ADD 000049a4: CALLDATALOAD 000049a5: PUSH8 0xffffffffffffffff 000049ae: DUP2 000049af: GT 000049b0: ISZERO 000049b1: PUSH2 0x49b9 000049b4: JUMPI 000049b5: PUSH1 0x00 000049b7: DUP1 000049b8: REVERT 000049b9: JUMPDEST 000049ba: PUSH2 0x49c5 000049bd: DUP9 000049be: DUP3 000049bf: DUP10 000049c0: ADD 000049c1: PUSH2 0x45cc 000049c4: JUMP 000049c5: JUMPDEST 000049c6: SWAP2 000049c7: POP 000049c8: POP 000049c9: SWAP3 000049ca: SWAP6 000049cb: POP 000049cc: SWAP3 000049cd: SWAP6 000049ce: SWAP1 000049cf: SWAP4 000049d0: POP 000049d1: JUMP 000049d2: JUMPDEST 000049d3: DUP6 000049d4: DUP2 000049d5: MSTORE 000049d6: DUP5 000049d7: PUSH1 0x20 000049d9: DUP3 000049da: ADD 000049db: MSTORE 000049dc: PUSH32 0xffffffffffffffff000000000000000000000000000000000000000000000000 000049fd: DUP5 000049fe: PUSH1 0xc0 00004a00: SHL 00004a01: AND 00004a02: PUSH1 0x40 00004a04: DUP3 00004a05: ADD 00004a06: MSTORE 00004a07: DUP3 00004a08: ISZERO 00004a09: ISZERO 00004a0a: PUSH1 0xf8 00004a0c: SHL 00004a0d: PUSH1 0x48 00004a0f: DUP3 00004a10: ADD 00004a11: MSTORE 00004a12: PUSH1 0x00 00004a14: DUP3 00004a15: MLOAD 00004a16: PUSH2 0x4a26 00004a19: DUP2 00004a1a: PUSH1 0x49 00004a1c: DUP6 00004a1d: ADD 00004a1e: PUSH1 0x20 00004a20: DUP8 00004a21: ADD 00004a22: PUSH2 0x47e5 00004a25: JUMP 00004a26: JUMPDEST 00004a27: SWAP2 00004a28: SWAP1 00004a29: SWAP2 00004a2a: ADD 00004a2b: PUSH1 0x49 00004a2d: ADD 00004a2e: SWAP7 00004a2f: SWAP6 00004a30: POP 00004a31: POP 00004a32: POP 00004a33: POP 00004a34: POP 00004a35: POP 00004a36: JUMP 00004a37: JUMPDEST 00004a38: PUSH1 0x00 00004a3a: PUSH1 0x20 00004a3c: DUP3 00004a3d: DUP5 00004a3e: SUB 00004a3f: SLT 00004a40: ISZERO 00004a41: PUSH2 0x4a49 00004a44: JUMPI 00004a45: PUSH1 0x00 00004a47: DUP1 00004a48: REVERT 00004a49: JUMPDEST 00004a4a: DUP2 00004a4b: MLOAD 00004a4c: PUSH2 0x1fb2 00004a4f: DUP2 00004a50: PUSH2 0x45a7 00004a53: JUMP 00004a54: JUMPDEST 00004a55: DUP1 00004a56: MLOAD 00004a57: PUSH16 0xffffffffffffffffffffffffffffffff 00004a68: DUP2 00004a69: AND 00004a6a: DUP2 00004a6b: EQ 00004a6c: PUSH2 0x48dc 00004a6f: JUMPI 00004a70: PUSH1 0x00 00004a72: DUP1 00004a73: REVERT 00004a74: JUMPDEST 00004a75: PUSH1 0x00 00004a77: PUSH1 0x60 00004a79: DUP3 00004a7a: DUP5 00004a7b: SUB 00004a7c: SLT 00004a7d: ISZERO 00004a7e: PUSH2 0x4a86 00004a81: JUMPI 00004a82: PUSH1 0x00 00004a84: DUP1 00004a85: REVERT 00004a86: JUMPDEST 00004a87: PUSH1 0x40 00004a89: MLOAD 00004a8a: PUSH1 0x60 00004a8c: DUP2 00004a8d: ADD 00004a8e: DUP2 00004a8f: DUP2 00004a90: LT 00004a91: PUSH8 0xffffffffffffffff 00004a9a: DUP3 00004a9b: GT 00004a9c: OR 00004a9d: ISZERO 00004a9e: PUSH2 0x4aa9 00004aa1: JUMPI 00004aa2: PUSH2 0x4aa9 00004aa5: PUSH2 0x4529 00004aa8: JUMP 00004aa9: JUMPDEST 00004aaa: PUSH1 0x40 00004aac: MSTORE 00004aad: DUP3 00004aae: MLOAD 00004aaf: DUP2 00004ab0: MSTORE 00004ab1: PUSH2 0x4abc 00004ab4: PUSH1 0x20 00004ab6: DUP5 00004ab7: ADD 00004ab8: PUSH2 0x4a54 00004abb: JUMP 00004abc: JUMPDEST 00004abd: PUSH1 0x20 00004abf: DUP3 00004ac0: ADD 00004ac1: MSTORE 00004ac2: PUSH2 0x4acd 00004ac5: PUSH1 0x40 00004ac7: DUP5 00004ac8: ADD 00004ac9: PUSH2 0x4a54 00004acc: JUMP 00004acd: JUMPDEST 00004ace: PUSH1 0x40 00004ad0: DUP3 00004ad1: ADD 00004ad2: MSTORE 00004ad3: SWAP4 00004ad4: SWAP3 00004ad5: POP 00004ad6: POP 00004ad7: POP 00004ad8: JUMP 00004ad9: JUMPDEST 00004ada: PUSH1 0x00 00004adc: PUSH1 0x80 00004ade: DUP3 00004adf: DUP5 00004ae0: SUB 00004ae1: SLT 00004ae2: ISZERO 00004ae3: PUSH2 0x4aeb 00004ae6: JUMPI 00004ae7: PUSH1 0x00 00004ae9: DUP1 00004aea: REVERT 00004aeb: JUMPDEST 00004aec: PUSH1 0x40 00004aee: MLOAD 00004aef: PUSH1 0x80 00004af1: DUP2 00004af2: ADD 00004af3: DUP2 00004af4: DUP2 00004af5: LT 00004af6: PUSH8 0xffffffffffffffff 00004aff: DUP3 00004b00: GT 00004b01: OR 00004b02: ISZERO 00004b03: PUSH2 0x4b0e 00004b06: JUMPI 00004b07: PUSH2 0x4b0e 00004b0a: PUSH2 0x4529 00004b0d: JUMP 00004b0e: JUMPDEST 00004b0f: DUP1 00004b10: PUSH1 0x40 00004b12: MSTORE 00004b13: POP 00004b14: DUP3 00004b15: CALLDATALOAD 00004b16: DUP2 00004b17: MSTORE 00004b18: PUSH1 0x20 00004b1a: DUP4 00004b1b: ADD 00004b1c: CALLDATALOAD 00004b1d: PUSH1 0x20 00004b1f: DUP3 00004b20: ADD 00004b21: MSTORE 00004b22: PUSH1 0x40 00004b24: DUP4 00004b25: ADD 00004b26: CALLDATALOAD 00004b27: PUSH1 0x40 00004b29: DUP3 00004b2a: ADD 00004b2b: MSTORE 00004b2c: PUSH1 0x60 00004b2e: DUP4 00004b2f: ADD 00004b30: CALLDATALOAD 00004b31: PUSH1 0x60 00004b33: DUP3 00004b34: ADD 00004b35: MSTORE 00004b36: DUP1 00004b37: SWAP2 00004b38: POP 00004b39: POP 00004b3a: SWAP3 00004b3b: SWAP2 00004b3c: POP 00004b3d: POP 00004b3e: JUMP 00004b3f: JUMPDEST 00004b40: PUSH1 0x00 00004b42: PUSH8 0xffffffffffffffff 00004b4b: DUP1 00004b4c: DUP5 00004b4d: GT 00004b4e: ISZERO 00004b4f: PUSH2 0x4b5a 00004b52: JUMPI 00004b53: PUSH2 0x4b5a 00004b56: PUSH2 0x4529 00004b59: JUMP 00004b5a: JUMPDEST 00004b5b: DUP4 00004b5c: PUSH1 0x05 00004b5e: SHL 00004b5f: PUSH1 0x20 00004b61: PUSH2 0x4b6b 00004b64: DUP2 00004b65: DUP4 00004b66: ADD 00004b67: PUSH2 0x4558 00004b6a: JUMP 00004b6b: JUMPDEST 00004b6c: DUP7 00004b6d: DUP2 00004b6e: MSTORE 00004b6f: SWAP2 00004b70: DUP6 00004b71: ADD 00004b72: SWAP2 00004b73: DUP2 00004b74: DUP2 00004b75: ADD 00004b76: SWAP1 00004b77: CALLDATASIZE 00004b78: DUP5 00004b79: GT 00004b7a: ISZERO 00004b7b: PUSH2 0x4b83 00004b7e: JUMPI 00004b7f: PUSH1 0x00 00004b81: DUP1 00004b82: REVERT 00004b83: JUMPDEST 00004b84: DUP7 00004b85: JUMPDEST 00004b86: DUP5 00004b87: DUP2 00004b88: LT 00004b89: ISZERO 00004b8a: PUSH2 0x4bb7 00004b8d: JUMPI 00004b8e: DUP1 00004b8f: CALLDATALOAD 00004b90: DUP7 00004b91: DUP2 00004b92: GT 00004b93: ISZERO 00004b94: PUSH2 0x4b9d 00004b97: JUMPI 00004b98: PUSH1 0x00 00004b9a: DUP1 00004b9b: DUP2 00004b9c: REVERT 00004b9d: JUMPDEST 00004b9e: PUSH2 0x4ba9 00004ba1: CALLDATASIZE 00004ba2: DUP3 00004ba3: DUP12 00004ba4: ADD 00004ba5: PUSH2 0x45cc 00004ba8: JUMP 00004ba9: JUMPDEST 00004baa: DUP5 00004bab: MSTORE 00004bac: POP 00004bad: SWAP2 00004bae: DUP4 00004baf: ADD 00004bb0: SWAP2 00004bb1: DUP4 00004bb2: ADD 00004bb3: PUSH2 0x4b85 00004bb6: JUMP 00004bb7: JUMPDEST 00004bb8: POP 00004bb9: SWAP8 00004bba: SWAP7 00004bbb: POP 00004bbc: POP 00004bbd: POP 00004bbe: POP 00004bbf: POP 00004bc0: POP 00004bc1: POP 00004bc2: JUMP 00004bc3: JUMPDEST 00004bc4: PUSH1 0x00 00004bc6: PUSH1 0x20 00004bc8: DUP3 00004bc9: DUP5 00004bca: SUB 00004bcb: SLT 00004bcc: ISZERO 00004bcd: PUSH2 0x4bd5 00004bd0: JUMPI 00004bd1: PUSH1 0x00 00004bd3: DUP1 00004bd4: REVERT 00004bd5: JUMPDEST 00004bd6: DUP2 00004bd7: MLOAD 00004bd8: PUSH2 0x1fb2 00004bdb: DUP2 00004bdc: PUSH2 0x4947 00004bdf: JUMP 00004be0: JUMPDEST 00004be1: PUSH1 0x00 00004be3: PUSH1 0x20 00004be5: DUP3 00004be6: DUP5 00004be7: SUB 00004be8: SLT 00004be9: ISZERO 00004bea: PUSH2 0x4bf2 00004bed: JUMPI 00004bee: PUSH1 0x00 00004bf0: DUP1 00004bf1: REVERT 00004bf2: JUMPDEST 00004bf3: POP 00004bf4: MLOAD 00004bf5: SWAP2 00004bf6: SWAP1 00004bf7: POP 00004bf8: JUMP 00004bf9: JUMPDEST 00004bfa: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00004c1b: PUSH1 0x00 00004c1d: MSTORE 00004c1e: PUSH1 0x11 00004c20: PUSH1 0x04 00004c22: MSTORE 00004c23: PUSH1 0x24 00004c25: PUSH1 0x00 00004c27: REVERT 00004c28: JUMPDEST 00004c29: PUSH1 0x00 00004c2b: PUSH8 0xffffffffffffffff 00004c34: DUP1 00004c35: DUP4 00004c36: AND 00004c37: DUP2 00004c38: DUP6 00004c39: AND 00004c3a: DUP2 00004c3b: DUP4 00004c3c: DIV 00004c3d: DUP2 00004c3e: GT 00004c3f: DUP3 00004c40: ISZERO 00004c41: ISZERO 00004c42: AND 00004c43: ISZERO 00004c44: PUSH2 0x4c4f 00004c47: JUMPI 00004c48: PUSH2 0x4c4f 00004c4b: PUSH2 0x4bf9 00004c4e: JUMP 00004c4f: JUMPDEST 00004c50: MUL 00004c51: SWAP5 00004c52: SWAP4 00004c53: POP 00004c54: POP 00004c55: POP 00004c56: POP 00004c57: JUMP 00004c58: JUMPDEST 00004c59: PUSH1 0x00 00004c5b: PUSH8 0xffffffffffffffff 00004c64: DUP1 00004c65: DUP4 00004c66: AND 00004c67: DUP2 00004c68: DUP6 00004c69: AND 00004c6a: DUP1 00004c6b: DUP4 00004c6c: SUB 00004c6d: DUP3 00004c6e: GT 00004c6f: ISZERO 00004c70: PUSH2 0x4c7b 00004c73: JUMPI 00004c74: PUSH2 0x4c7b 00004c77: PUSH2 0x4bf9 00004c7a: JUMP 00004c7b: JUMPDEST 00004c7c: ADD 00004c7d: SWAP5 00004c7e: SWAP4 00004c7f: POP 00004c80: POP 00004c81: POP 00004c82: POP 00004c83: JUMP 00004c84: JUMPDEST 00004c85: PUSH1 0x00 00004c87: DUP3 00004c88: DUP3 00004c89: LT 00004c8a: ISZERO 00004c8b: PUSH2 0x4c96 00004c8e: JUMPI 00004c8f: PUSH2 0x4c96 00004c92: PUSH2 0x4bf9 00004c95: JUMP 00004c96: JUMPDEST 00004c97: POP 00004c98: SUB 00004c99: SWAP1 00004c9a: JUMP 00004c9b: JUMPDEST 00004c9c: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00004cbd: PUSH1 0x00 00004cbf: MSTORE 00004cc0: PUSH1 0x12 00004cc2: PUSH1 0x04 00004cc4: MSTORE 00004cc5: PUSH1 0x24 00004cc7: PUSH1 0x00 00004cc9: REVERT 00004cca: JUMPDEST 00004ccb: PUSH1 0x00 00004ccd: DUP3 00004cce: PUSH2 0x4cd9 00004cd1: JUMPI 00004cd2: PUSH2 0x4cd9 00004cd5: PUSH2 0x4c9b 00004cd8: JUMP 00004cd9: JUMPDEST 00004cda: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00004cfb: DUP4 00004cfc: EQ 00004cfd: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 00004d1e: DUP4 00004d1f: EQ 00004d20: AND 00004d21: ISZERO 00004d22: PUSH2 0x4d2d 00004d25: JUMPI 00004d26: PUSH2 0x4d2d 00004d29: PUSH2 0x4bf9 00004d2c: JUMP 00004d2d: JUMPDEST 00004d2e: POP 00004d2f: SDIV 00004d30: SWAP1 00004d31: JUMP 00004d32: JUMPDEST 00004d33: PUSH1 0x00 00004d35: DUP1 00004d36: DUP4 00004d37: SLT 00004d38: DUP4 00004d39: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 00004d5a: ADD 00004d5b: DUP4 00004d5c: SLT 00004d5d: DUP2 00004d5e: ISZERO 00004d5f: AND 00004d60: ISZERO 00004d61: PUSH2 0x4d6c 00004d64: JUMPI 00004d65: PUSH2 0x4d6c 00004d68: PUSH2 0x4bf9 00004d6b: JUMP 00004d6c: JUMPDEST 00004d6d: DUP4 00004d6e: PUSH32 0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00004d8f: ADD 00004d90: DUP4 00004d91: SGT 00004d92: DUP2 00004d93: AND 00004d94: ISZERO 00004d95: PUSH2 0x4da0 00004d98: JUMPI 00004d99: PUSH2 0x4da0 00004d9c: PUSH2 0x4bf9 00004d9f: JUMP 00004da0: JUMPDEST 00004da1: POP 00004da2: POP 00004da3: SUB 00004da4: SWAP1 00004da5: JUMP 00004da6: JUMPDEST 00004da7: PUSH1 0x00 00004da9: PUSH32 0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00004dca: PUSH1 0x00 00004dcc: DUP5 00004dcd: SGT 00004dce: PUSH1 0x00 00004dd0: DUP5 00004dd1: SGT 00004dd2: DUP6 00004dd3: DUP4 00004dd4: DIV 00004dd5: DUP6 00004dd6: GT 00004dd7: DUP3 00004dd8: DUP3 00004dd9: AND 00004dda: AND 00004ddb: ISZERO 00004ddc: PUSH2 0x4de7 00004ddf: JUMPI 00004de0: PUSH2 0x4de7 00004de3: PUSH2 0x4bf9 00004de6: JUMP 00004de7: JUMPDEST 00004de8: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 00004e09: PUSH1 0x00 00004e0b: DUP8 00004e0c: SLT 00004e0d: DUP7 00004e0e: DUP3 00004e0f: SDIV 00004e10: DUP9 00004e11: SLT 00004e12: DUP2 00004e13: DUP5 00004e14: AND 00004e15: AND 00004e16: ISZERO 00004e17: PUSH2 0x4e22 00004e1a: JUMPI 00004e1b: PUSH2 0x4e22 00004e1e: PUSH2 0x4bf9 00004e21: JUMP 00004e22: JUMPDEST 00004e23: PUSH1 0x00 00004e25: DUP8 00004e26: SLT 00004e27: SWAP3 00004e28: POP 00004e29: DUP8 00004e2a: DUP3 00004e2b: SDIV 00004e2c: DUP8 00004e2d: SLT 00004e2e: DUP5 00004e2f: DUP5 00004e30: AND 00004e31: AND 00004e32: ISZERO 00004e33: PUSH2 0x4e3e 00004e36: JUMPI 00004e37: PUSH2 0x4e3e 00004e3a: PUSH2 0x4bf9 00004e3d: JUMP 00004e3e: JUMPDEST 00004e3f: DUP8 00004e40: DUP6 00004e41: SDIV 00004e42: DUP8 00004e43: SLT 00004e44: DUP2 00004e45: DUP5 00004e46: AND 00004e47: AND 00004e48: ISZERO 00004e49: PUSH2 0x4e54 00004e4c: JUMPI 00004e4d: PUSH2 0x4e54 00004e50: PUSH2 0x4bf9 00004e53: JUMP 00004e54: JUMPDEST 00004e55: POP 00004e56: POP 00004e57: POP 00004e58: SWAP3 00004e59: SWAP1 00004e5a: SWAP4 00004e5b: MUL 00004e5c: SWAP4 00004e5d: SWAP3 00004e5e: POP 00004e5f: POP 00004e60: POP 00004e61: JUMP 00004e62: JUMPDEST 00004e63: PUSH1 0x00 00004e65: DUP1 00004e66: DUP3 00004e67: SLT 00004e68: DUP3 00004e69: PUSH32 0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00004e8a: SUB 00004e8b: DUP5 00004e8c: SGT 00004e8d: DUP2 00004e8e: ISZERO 00004e8f: AND 00004e90: ISZERO 00004e91: PUSH2 0x4e9c 00004e94: JUMPI 00004e95: PUSH2 0x4e9c 00004e98: PUSH2 0x4bf9 00004e9b: JUMP 00004e9c: JUMPDEST 00004e9d: DUP3 00004e9e: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 00004ebf: SUB 00004ec0: DUP5 00004ec1: SLT 00004ec2: DUP2 00004ec3: AND 00004ec4: ISZERO 00004ec5: PUSH2 0x4ed0 00004ec8: JUMPI 00004ec9: PUSH2 0x4ed0 00004ecc: PUSH2 0x4bf9 00004ecf: JUMP 00004ed0: JUMPDEST 00004ed1: POP 00004ed2: POP 00004ed3: ADD 00004ed4: SWAP1 00004ed5: JUMP 00004ed6: JUMPDEST 00004ed7: PUSH1 0x00 00004ed9: DUP2 00004eda: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00004efb: DIV 00004efc: DUP4 00004efd: GT 00004efe: DUP3 00004eff: ISZERO 00004f00: ISZERO 00004f01: AND 00004f02: ISZERO 00004f03: PUSH2 0x4f0e 00004f06: JUMPI 00004f07: PUSH2 0x4f0e 00004f0a: PUSH2 0x4bf9 00004f0d: JUMP 00004f0e: JUMPDEST 00004f0f: POP 00004f10: MUL 00004f11: SWAP1 00004f12: JUMP 00004f13: JUMPDEST 00004f14: PUSH1 0x00 00004f16: DUP3 00004f17: PUSH2 0x4f22 00004f1a: JUMPI 00004f1b: PUSH2 0x4f22 00004f1e: PUSH2 0x4c9b 00004f21: JUMP 00004f22: JUMPDEST 00004f23: POP 00004f24: DIV 00004f25: SWAP1 00004f26: JUMP 00004f27: JUMPDEST 00004f28: DUP7 00004f29: DUP2 00004f2a: MSTORE 00004f2b: PUSH1 0x00 00004f2d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004f42: DUP1 00004f43: DUP9 00004f44: AND 00004f45: PUSH1 0x20 00004f47: DUP5 00004f48: ADD 00004f49: MSTORE 00004f4a: DUP1 00004f4b: DUP8 00004f4c: AND 00004f4d: PUSH1 0x40 00004f4f: DUP5 00004f50: ADD 00004f51: MSTORE 00004f52: POP 00004f53: DUP5 00004f54: PUSH1 0x60 00004f56: DUP4 00004f57: ADD 00004f58: MSTORE 00004f59: DUP4 00004f5a: PUSH1 0x80 00004f5c: DUP4 00004f5d: ADD 00004f5e: MSTORE 00004f5f: PUSH1 0xc0 00004f61: PUSH1 0xa0 00004f63: DUP4 00004f64: ADD 00004f65: MSTORE 00004f66: PUSH2 0x4f72 00004f69: PUSH1 0xc0 00004f6b: DUP4 00004f6c: ADD 00004f6d: DUP5 00004f6e: PUSH2 0x4811 00004f71: JUMP 00004f72: JUMPDEST 00004f73: SWAP9 00004f74: SWAP8 00004f75: POP 00004f76: POP 00004f77: POP 00004f78: POP 00004f79: POP 00004f7a: POP 00004f7b: POP 00004f7c: POP 00004f7d: JUMP 00004f7e: JUMPDEST 00004f7f: PUSH1 0x00 00004f81: DUP3 00004f82: NOT 00004f83: DUP3 00004f84: GT 00004f85: ISZERO 00004f86: PUSH2 0x4f91 00004f89: JUMPI 00004f8a: PUSH2 0x4f91 00004f8d: PUSH2 0x4bf9 00004f90: JUMP 00004f91: JUMPDEST 00004f92: POP 00004f93: ADD 00004f94: SWAP1 00004f95: JUMP 00004f96: JUMPDEST 00004f97: DUP1 00004f98: MLOAD 00004f99: PUSH4 0xffffffff 00004f9e: DUP2 00004f9f: AND 00004fa0: DUP2 00004fa1: EQ 00004fa2: PUSH2 0x48dc 00004fa5: JUMPI 00004fa6: PUSH1 0x00 00004fa8: DUP1 00004fa9: REVERT 00004faa: JUMPDEST 00004fab: DUP1 00004fac: MLOAD 00004fad: PUSH1 0xff 00004faf: DUP2 00004fb0: AND 00004fb1: DUP2 00004fb2: EQ 00004fb3: PUSH2 0x48dc 00004fb6: JUMPI 00004fb7: PUSH1 0x00 00004fb9: DUP1 00004fba: REVERT 00004fbb: JUMPDEST 00004fbc: PUSH1 0x00 00004fbe: PUSH1 0xc0 00004fc0: DUP3 00004fc1: DUP5 00004fc2: SUB 00004fc3: SLT 00004fc4: ISZERO 00004fc5: PUSH2 0x4fcd 00004fc8: JUMPI 00004fc9: PUSH1 0x00 00004fcb: DUP1 00004fcc: REVERT 00004fcd: JUMPDEST 00004fce: PUSH1 0x40 00004fd0: MLOAD 00004fd1: PUSH1 0xc0 00004fd3: DUP2 00004fd4: ADD 00004fd5: DUP2 00004fd6: DUP2 00004fd7: LT 00004fd8: PUSH8 0xffffffffffffffff 00004fe1: DUP3 00004fe2: GT 00004fe3: OR 00004fe4: ISZERO 00004fe5: PUSH2 0x4ff0 00004fe8: JUMPI 00004fe9: PUSH2 0x4ff0 00004fec: PUSH2 0x4529 00004fef: JUMP 00004ff0: JUMPDEST 00004ff1: PUSH1 0x40 00004ff3: MSTORE 00004ff4: PUSH2 0x4ffc 00004ff7: DUP4 00004ff8: PUSH2 0x4f96 00004ffb: JUMP 00004ffc: JUMPDEST 00004ffd: DUP2 00004ffe: MSTORE 00004fff: PUSH2 0x500a 00005002: PUSH1 0x20 00005004: DUP5 00005005: ADD 00005006: PUSH2 0x4faa 00005009: JUMP 0000500a: JUMPDEST 0000500b: PUSH1 0x20 0000500d: DUP3 0000500e: ADD 0000500f: MSTORE 00005010: PUSH2 0x501b 00005013: PUSH1 0x40 00005015: DUP5 00005016: ADD 00005017: PUSH2 0x4faa 0000501a: JUMP 0000501b: JUMPDEST 0000501c: PUSH1 0x40 0000501e: DUP3 0000501f: ADD 00005020: MSTORE 00005021: PUSH2 0x502c 00005024: PUSH1 0x60 00005026: DUP5 00005027: ADD 00005028: PUSH2 0x4f96 0000502b: JUMP 0000502c: JUMPDEST 0000502d: PUSH1 0x60 0000502f: DUP3 00005030: ADD 00005031: MSTORE 00005032: PUSH2 0x503d 00005035: PUSH1 0x80 00005037: DUP5 00005038: ADD 00005039: PUSH2 0x4f96 0000503c: JUMP 0000503d: JUMPDEST 0000503e: PUSH1 0x80 00005040: DUP3 00005041: ADD 00005042: MSTORE 00005043: PUSH2 0x504e 00005046: PUSH1 0xa0 00005048: DUP5 00005049: ADD 0000504a: PUSH2 0x4a54 0000504d: JUMP 0000504e: JUMPDEST 0000504f: PUSH1 0xa0 00005051: DUP3 00005052: ADD 00005053: MSTORE 00005054: SWAP4 00005055: SWAP3 00005056: POP 00005057: POP 00005058: POP 00005059: JUMP 0000505a: JUMPDEST 0000505b: PUSH1 0x00 0000505d: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 0000507e: DUP3 0000507f: SUB 00005080: PUSH2 0x508b 00005083: JUMPI 00005084: PUSH2 0x508b 00005087: PUSH2 0x4bf9 0000508a: JUMP 0000508b: JUMPDEST 0000508c: POP 0000508d: PUSH1 0x01 0000508f: ADD 00005090: SWAP1 00005091: JUMP 00005092: JUMPDEST 00005093: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 000050b4: PUSH1 0x00 000050b6: MSTORE 000050b7: PUSH1 0x32 000050b9: PUSH1 0x04 000050bb: MSTORE 000050bc: PUSH1 0x24 000050be: PUSH1 0x00 000050c0: REVERT 000050c1: JUMPDEST 000050c2: PUSH1 0x00 000050c4: PUSH1 0xff 000050c6: DUP4 000050c7: AND 000050c8: DUP1 000050c9: PUSH2 0x50d4 000050cc: JUMPI 000050cd: PUSH2 0x50d4 000050d0: PUSH2 0x4c9b 000050d3: JUMP 000050d4: JUMPDEST 000050d5: DUP1 000050d6: PUSH1 0xff 000050d8: DUP5 000050d9: AND 000050da: MOD 000050db: SWAP2 000050dc: POP 000050dd: POP 000050de: SWAP3 000050df: SWAP2 000050e0: POP 000050e1: POP 000050e2: JUMP 000050e3: JUMPDEST 000050e4: PUSH1 0x00 000050e6: PUSH1 0xff 000050e8: DUP3 000050e9: AND 000050ea: PUSH1 0xff 000050ec: DUP5 000050ed: AND 000050ee: DUP1 000050ef: DUP3 000050f0: LT 000050f1: ISZERO 000050f2: PUSH2 0x50fd 000050f5: JUMPI 000050f6: PUSH2 0x50fd 000050f9: PUSH2 0x4bf9 000050fc: JUMP 000050fd: JUMPDEST 000050fe: SWAP1 000050ff: SUB 00005100: SWAP4 00005101: SWAP3 00005102: POP 00005103: POP 00005104: POP 00005105: JUMP 00005106: JUMPDEST 00005107: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00005128: PUSH1 0x00 0000512a: MSTORE 0000512b: PUSH1 0x21 0000512d: PUSH1 0x04 0000512f: MSTORE 00005130: PUSH1 0x24 00005132: PUSH1 0x00 00005134: REVERT 00005135: INVALID 00005136: LOG1 00005137: PUSH5 0x736f6c6343 0000513d: STOP 0000513e: ADDMOD 0000513f: UNKNOWN(0x0F) 00005140: STOP 00005141: EXP
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | auth | detector | Authorization based on tx.origin | 70 | no | — |
viewvalidation_json{
"reason": "missing sink mapping",
"status": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xcff0ab96",
"selector": "0xcff0ab96",
"calldata_variants": [
"0xcff0ab96",
"0xcff0ab960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe965084c",
"selector": "0xe965084c",
"calldata_variants": [
"0xe965084c",
"0xe965084c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe9e05c42",
"selector": "0xe9e05c42",
"calldata_variants": [
"0xe9e05c42",
"0xe9e05c420000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa35d99df",
"selector": "0xa35d99df",
"calldata_variants": [
"0xa35d99df",
"0xa35d99df0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc0c53b8b",
"selector": "0xc0c53b8b",
"calldata_variants": [
"0xc0c53b8b",
"0xc0c53b8b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8c3152e9",
"selector": "0x8c3152e9",
"calldata_variants": [
"0x8c3152e9",
"0x8c3152e90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9b5f694a",
"selector": "0x9b5f694a",
"calldata_variants": [
"0x9b5f694a",
"0x9b5f694a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9bf62d82",
"selector": "0x9bf62d82",
"calldata_variants": [
"0x9bf62d82",
"0x9bf62d820000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 1485,
"type": "tx_origin_used"
},
{
"pc": 5753,
"type": "tx_origin_used"
},
{
"pc": 1483,
"type": "tx_origin_used"
},
{
"pc": 5750,
"type": "tx_origin_used"
}
]
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0x8d6536dc9eece3f76341997c38c612d3e8abeaab335c82dbfa0fe2e4650709a9
call_targets:
0xcea36be2e9724d88cb107c552c602a8025db88ba
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x8d6536dc9eece3f76341997c38c612d3e8abeaab335c82dbfa0fe2e4650709a9",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xcea36be2e9724d88cb107c552c602a8025db88ba"
],
"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": "0xcff0ab96",
"selector": "0xcff0ab96",
"calldata_variants": [
"0xcff0ab96",
"0xcff0ab960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe965084c",
"selector": "0xe965084c",
"calldata_variants": [
"0xe965084c",
"0xe965084c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe9e05c42",
"selector": "0xe9e05c42",
"calldata_variants": [
"0xe9e05c42",
"0xe9e05c420000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa35d99df",
"selector": "0xa35d99df",
"calldata_variants": [
"0xa35d99df",
"0xa35d99df0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc0c53b8b",
"selector": "0xc0c53b8b",
"calldata_variants": [
"0xc0c53b8b",
"0xc0c53b8b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8c3152e9",
"selector": "0x8c3152e9",
"calldata_variants": [
"0x8c3152e9",
"0x8c3152e90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9b5f694a",
"selector": "0x9b5f694a",
"calldata_variants": [
"0x9b5f694a",
"0x9b5f694a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9bf62d82",
"selector": "0x9bf62d82",
"calldata_variants": [
"0x9bf62d82",
"0x9bf62d820000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 7611,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 1,
"guards_detected": [
{
"pc": 1485,
"type": "tx_origin_used"
},
{
"pc": 5753,
"type": "tx_origin_used"
},
{
"pc": 1483,
"type": "tx_origin_used"
},
{
"pc": 5750,
"type": "tx_origin_used"
}
],
"untrusted_call_count": 1
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0x8d6536dc9eece3f76341997c38c612d3e8abeaab335c82dbfa0fe2e4650709a9
call_targets:
0xcea36be2e9724d88cb107c552c602a8025db88ba
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x8d6536dc9eece3f76341997c38c612d3e8abeaab335c82dbfa0fe2e4650709a9",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xcea36be2e9724d88cb107c552c602a8025db88ba"
],
"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": "0xcff0ab96",
"selector": "0xcff0ab96",
"calldata_variants": [
"0xcff0ab96",
"0xcff0ab960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe965084c",
"selector": "0xe965084c",
"calldata_variants": [
"0xe965084c",
"0xe965084c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe9e05c42",
"selector": "0xe9e05c42",
"calldata_variants": [
"0xe9e05c42",
"0xe9e05c420000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa35d99df",
"selector": "0xa35d99df",
"calldata_variants": [
"0xa35d99df",
"0xa35d99df0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc0c53b8b",
"selector": "0xc0c53b8b",
"calldata_variants": [
"0xc0c53b8b",
"0xc0c53b8b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8c3152e9",
"selector": "0x8c3152e9",
"calldata_variants": [
"0x8c3152e9",
"0x8c3152e90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9b5f694a",
"selector": "0x9b5f694a",
"calldata_variants": [
"0x9b5f694a",
"0x9b5f694a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9bf62d82",
"selector": "0x9bf62d82",
"calldata_variants": [
"0x9bf62d82",
"0x9bf62d820000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 7611,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 1,
"guards_detected": [
{
"pc": 1485,
"type": "tx_origin_used"
},
{
"pc": 5753,
"type": "tx_origin_used"
},
{
"pc": 1483,
"type": "tx_origin_used"
},
{
"pc": 5750,
"type": "tx_origin_used"
}
]
}
|