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

Analysis Run

862e3f7c-2ed5-4db8-9735-5a3f88388d2b

failed
Chain ID
1
Address
Block Number
Created
Sat, Jan 3, 2026 1:51 AM
Review Summary

What survived the funnel

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

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

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
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

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
0
No findings?
yes
Summary
No concrete, exploitable profit path found in the audited contracts.
View stderr
[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":[]}
Metadata
{
    "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
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
10
EXT*/BALANCE
2
Total opcodes
8711
Flags
No heuristic flags raised.
View cast disassembly output
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

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high auth detector Authorization based on tx.origin 70 no
view
validation_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
view
trace_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
view
trace_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"
        }
    ]
}