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

Analysis Run

7876033c-8af3-4696-9f1c-aa5f8343fd7a

failed
Chain ID
1
Address
Block Number
Created
Mon, Dec 29, 2025 1:36 PM
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
Untrusted CALL target/value reachable
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
30495 report.consolidate complete 1 / 1 3 months ago
103829 artifact.fetch failed 1 / 3 1 week ago
103830 tool.cast_disasm complete 1 / 3 1 week ago
103831 analysis.bundle complete 1 / 3 1 week ago
103832 capability.graph complete 1 / 3 1 week ago
103833 detector.run complete 1 / 3 1 week ago
103834 validation.fork complete 1 / 3 1 week 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
Reviewed WETHOFTAdapterUpgradeable and the bundled LayerZero OFT/OApp upgradeable stack in AUDIT_BUNDLE.txt; no exploitable issues found within the requested categories.
View stderr
[codex:1358370] OpenAI Codex v0.77.0 (research preview)
[codex:1358370] --------
[codex:1358370] workdir: /tmp/codex-multi-lgjucjyq
[codex:1358370] model: gpt-5.2-codex
[codex:1358370] provider: openai
[codex:1358370] approval: never
[codex:1358370] sandbox: read-only
[codex:1358370] reasoning effort: xhigh
[codex:1358370] reasoning summaries: auto
[codex:1358370] session id: 019b6a4e-de35-7333-845c-d548c4c16b35
[codex:1358370] --------
[codex:1358370] user
[codex:1358370] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:1358370] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:1358370] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:1358370] 
[codex:1358370] Scope rules:
[codex:1358370] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:1358370] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:1358370] 
[codex:1358370] Output MUST be valid JSON matching the provided schema.
[codex:1358370] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:1358370] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:1358370] 
[codex:1358370] Output constraints (IMPORTANT):
[codex:1358370] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:1358370] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:1358370] mcp startup: no servers
[codex:1358370] 
[codex:1358370] thinking
[codex:1358370] **Preparing to read AUDIT_BUNDLE**
[codex:1358370] exec
[codex:1358370] /bin/bash -lc ls in /tmp/codex-multi-lgjucjyq succeeded in 6ms:
[codex:1358370] AUDIT_BUNDLE.txt
[codex:1358370] codex-output-schema.json
[codex:1358370] contracts
[codex:1358370] 
[codex:1358370] thinking
[codex:1358370] **Reading bundle content**
[codex:1358370] exec
[codex:1358370] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-lgjucjyq succeeded in 6ms:
[codex:1358370] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:1358370] 
[codex:1358370] ================================================================================
[codex:1358370] FILE: contracts/@layerzerolabs/lz-evm-protocol-v2/contracts/interfaces/ILayerZeroEndpointV2.sol
[codex:1358370] ================================================================================
[codex:1358370] // SPDX-License-Identifier: MIT
[codex:1358370] 
[codex:1358370] pragma solidity >=0.8.0;
[codex:1358370] 
[codex:1358370] import { IMessageLibManager } from "./IMessageLibManager.sol";
[codex:1358370] import { IMessagingComposer } from "./IMessagingComposer.sol";
[codex:1358370] import { IMessagingChannel } from "./IMessagingChannel.sol";
[codex:1358370] import { IMessagingContext } from "./IMessagingContext.sol";
[codex:1358370] 
[codex:1358370] struct MessagingParams {
[codex:1358370]     uint32 dstEid;
[codex:1358370]     bytes32 receiver;
[codex:1358370]     bytes message;
[codex:1358370]     bytes options;
[codex:1358370]     bool payInLzToken;
[codex:1358370] 
[codex:1358370] thinking
[codex:1358370] **Identifying first-party contracts in the bundle**
[codex:1358370] exec
[codex:1358370] /bin/bash -lc 'rg -n "FILE: contracts/contracts/" AUDIT_BUNDLE.txt' in /tmp/codex-multi-lgjucjyq succeeded in 7ms:
[codex:1358370] 3675:FILE: contracts/contracts/WETHOFTAdapterUpgradeable.sol
[codex:1358370] 
[codex:1358370] thinking
[codex:1358370] **Reviewing WETHOFTAdapterUpgradeable and dependencies**
[codex:1358370] exec
[codex:1358370] /bin/bash -lc 'rg -n "OFTAdapterUpgradeable.sol" AUDIT_BUNDLE.txt' in /tmp/codex-multi-lgjucjyq succeeded in 7ms:
[codex:1358370] 2100:FILE: contracts/@layerzerolabs/oft-evm-upgradeable/contracts/oft/OFTAdapterUpgradeable.sol
[codex:1358370] 3675:FILE: contracts/contracts/WETHOFTAdapterUpgradeable.sol
[codex:1358370] 3680:import { OFTAdapterUpgradeable } from "@layerzerolabs/oft-evm-upgradeable/contracts/oft/OFTAdapterUpgradeable.sol";
[codex:1358370] 
[codex:1358370] thinking
[codex:1358370] **Extracting code snippet from bundle**
[codex:1358370] exec
[codex:1358370] /bin/bash -lc "sed -n '2100,2350p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-lgjucjyq succeeded in 6ms:
[codex:1358370] FILE: contracts/@layerzerolabs/oft-evm-upgradeable/contracts/oft/OFTAdapterUpgradeable.sol
[codex:1358370] ================================================================================
[codex:1358370] // SPDX-License-Identifier: MIT
[codex:1358370] 
[codex:1358370] pragma solidity ^0.8.20;
[codex:1358370] 
[codex:1358370] import { IERC20Metadata, IERC20 } from "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
[codex:1358370] import { SafeERC20 } from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1358370] import { IOFT, OFTCoreUpgradeable } from "./OFTCoreUpgradeable.sol";
[codex:1358370] 
[codex:1358370] /**
[codex:1358370]  * @title OFTAdapter Contract
[codex:1358370]  * @dev OFTAdapter is a contract that adapts an ERC-20 token to the OFT functionality.
[codex:1358370]  *
[codex:1358370]  * @dev For existing ERC20 tokens, this can be used to convert the token to crosschain compatibility.
[codex:1358370]  * @dev WARNING: ONLY 1 of these should exist for a given global mesh,
[codex:1358370]  * unless you make a NON-default implementation of OFT and needs to be done very carefully.
[codex:1358370]  * @dev WARNING: The default OFTAdapter implementation assumes LOSSLESS transfers, ie. 1 token in, 1 token out.
[codex:1358370]  * IF the 'innerToken' applies something like a transfer fee, the default will NOT work...
[codex:1358370]  * a pre/post balance check will need to be done to calculate the amountSentLD/amountReceivedLD.
[codex:1358370] 
[codex:1358370] thinking
[codex:1358370] **Examining upgradeable contract initialization risks**
[codex:1358370] 
[codex:1358370] I’m analyzing potential vulnerability risks in the LayerZero core code, focusing on the initialization of upgradeable contracts, especially WETHOFTAdapterUpgradeable. I’m intrigued by how constructors with immutables interact with proxies and how ownership initialization might double-initialize Ownable logic—so I need to inspect OAppUpgradeable more closely to clarify these points.
[codex:1358370] exec
[codex:1358370] /bin/bash -lc 'rg -n "contract OAppUpgradeable" -n AUDIT_BUNDLE.txt' in /tmp/codex-multi-lgjucjyq succeeded in 7ms:
[codex:1358370] 1457:abstract contract OAppUpgradeable is OAppSenderUpgradeable, OAppReceiverUpgradeable {
[codex:1358370] exec
[codex:1358370] /bin/bash -lc "sed -n '1300,1600p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-lgjucjyq succeeded in 5ms:
[codex:1358370] FILE: contracts/@layerzerolabs/oapp-evm-upgradeable/contracts/oapp/OAppSenderUpgradeable.sol
[codex:1358370] ================================================================================
[codex:1358370] // SPDX-License-Identifier: MIT
[codex:1358370] 
[codex:1358370] pragma solidity ^0.8.20;
[codex:1358370] 
[codex:1358370] import { SafeERC20, IERC20 } from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1358370] import { MessagingParams, MessagingFee, MessagingReceipt } from "@layerzerolabs/lz-evm-protocol-v2/contracts/interfaces/ILayerZeroEndpointV2.sol";
[codex:1358370] import { OAppCoreUpgradeable } from "./OAppCoreUpgradeable.sol";
[codex:1358370] 
[codex:1358370] /**
[codex:1358370]  * @title OAppSender
[codex:1358370]  * @dev Abstract contract implementing the OAppSender functionality for sending messages to a LayerZero endpoint.
[codex:1358370]  */
[codex:1358370] abstract contract OAppSenderUpgradeable is OAppCoreUpgradeable {
[codex:1358370]     using SafeERC20 for IERC20;
[codex:1358370] 
[codex:1358370]     // Custom error messages
[codex:1358370]     error NotEnoughNative(uint256 msgValue);
[codex:1358370]     error LzTokenUnavailable();
[codex:1358370] 
[codex:1358370] thinking
[codex:1358370] **Searching for OAppCoreUpgradeable definition**
[codex:1358370] exec
[codex:1358370] /bin/bash -lc 'rg -n "contract OAppCoreUpgradeable" AUDIT_BUNDLE.txt' in /tmp/codex-multi-lgjucjyq succeeded in 7ms:
[codex:1358370] 1068:abstract contract OAppCoreUpgradeable is IOAppCore, OwnableUpgradeable {
[codex:1358370] exec
[codex:1358370] /bin/bash -lc "sed -n '1040,1205p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-lgjucjyq succeeded in 5ms:
[codex:1358370]     function decode(
[codex:1358370]         bytes[] calldata _packets,
[codex:1358370]         uint256[] memory _packetMsgValues
[codex:1358370]     ) internal pure returns (InboundPacket[] memory packets) {
[codex:1358370]         packets = new InboundPacket[](_packets.length);
[codex:1358370]         for (uint256 i = 0; i < _packets.length; i++) {
[codex:1358370]             bytes calldata packet = _packets[i];
[codex:1358370]             packets[i] = PacketDecoder.decode(packet);
[codex:1358370]             // @dev Allows the verifier to specify the msg.value that gets passed in lzReceive.
[codex:1358370]             packets[i].value = _packetMsgValues[i];
[codex:1358370]         }
[codex:1358370]     }
[codex:1358370] }
[codex:1358370] 
[codex:1358370] ================================================================================
[codex:1358370] FILE: contracts/@layerzerolabs/oapp-evm-upgradeable/contracts/oapp/OAppCoreUpgradeable.sol
[codex:1358370] ================================================================================
[codex:1358370] // SPDX-License-Identifier: MIT
[codex:1358370] 
[codex:1358370] pragma solidity ^0.8.20;
[codex:1358370] 
[codex:1358370] thinking
[codex:1358370] **Analyzing inheritance and initialization risks**
[codex:1358370] 
[codex:1358370] I'm examining how OwnableUpgradeable is initialized across inherited contracts and noting that only one call to __Ownable_init is necessary. I'm also considering LayerZero components like WETHOFTAdapterUpgradeable and OFT for vulnerabilities, focusing on reentrancy, access control, and upgradeability patterns. I'm exploring potential issues with token transfers and owner/delegate mismatches, and looking into lzReceive message validation to catch possible security gaps.
[codex:1358370] exec
[codex:1358370] /bin/bash -lc 'rg -n "function lzReceive" -n AUDIT_BUNDLE.txt | head -n 20' in /tmp/codex-multi-lgjucjyq succeeded in 8ms:
[codex:1358370] 76:    function lzReceive(
[codex:1358370] 110:    function lzReceive(
[codex:1358370] 934:    function lzReceiveAndRevert(InboundPacket[] calldata _packets) external payable;
[codex:1358370] 1270:    function lzReceive(
[codex:1358370] 1682:    function lzReceiveAndRevert(InboundPacket[] calldata _packets) public payable virtual {
[codex:1358370] 1721:    function lzReceiveSimulate(
[codex:1358370] 
[codex:1358370] thinking
[codex:1358370] **Checking implementation in OAppReceiver**
[codex:1358370] exec
[codex:1358370] /bin/bash -lc "sed -n '1220,1340p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-lgjucjyq succeeded in 5ms:
[codex:1358370]      */
[codex:1358370]     function isComposeMsgSender(
[codex:1358370]         Origin calldata /*_origin*/,
[codex:1358370]         bytes calldata /*_message*/,
[codex:1358370]         address _sender
[codex:1358370]     ) public view virtual returns (bool) {
[codex:1358370]         return _sender == address(this);
[codex:1358370]     }
[codex:1358370] 
[codex:1358370]     /**
[codex:1358370]      * @notice Checks if the path initialization is allowed based on the provided origin.
[codex:1358370]      * @param origin The origin information containing the source endpoint and sender address.
[codex:1358370]      * @return Whether the path has been initialized.
[codex:1358370]      *
[codex:1358370]      * @dev This indicates to the endpoint that the OApp has enabled msgs for this particular path to be received.
[codex:1358370]      * @dev This defaults to assuming if a peer has been set, its initialized.
[codex:1358370]      * Can be overridden by the OApp if there is other logic to determine this.
[codex:1358370]      */
[codex:1358370]     function allowInitializePath(Origin calldata origin) public view virtual returns (bool) {
[codex:1358370]         return peers(origin.srcEid) == origin.sender;
[codex:1358370] 
[codex:1358370] thinking
[codex:1358370] **Investigating delegatecall usage**
[codex:1358370] exec
[codex:1358370] /bin/bash -lc 'rg -n "delegatecall" AUDIT_BUNDLE.txt' in /tmp/codex-multi-lgjucjyq exited 1 in 7ms:
[codex:1358370] 
[codex:1358370] 
[codex:1358370] thinking
[codex:1358370] **Analyzing potential reentrancy risks**
[codex:1358370] exec
[codex:1358370] /bin/bash -lc "rg -n \"_lzReceive\\(\" AUDIT_BUNDLE.txt" in /tmp/codex-multi-lgjucjyq succeeded in 6ms:
[codex:1358370] 1284:        _lzReceive(_origin, _guid, _message, _executor, _extraData);
[codex:1358370] 1290:    function _lzReceive(
[codex:1358370] 1692:            // preCrime will NOT work for OApps that rely on these two parameters inside of their _lzReceive().
[codex:1358370] 2506:    function _lzReceive(
[codex:1358370] 2560:        _lzReceive(_origin, _guid, _message, _executor, _extraData);
[codex:1358370] 
[codex:1358370] thinking
[codex:1358370] **Checking code around line 2506**
[codex:1358370] exec
[codex:1358370] /bin/bash -lc "sed -n '2440,2620p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-lgjucjyq succeeded in 6ms:
[codex:1358370]     ) external payable virtual returns (MessagingReceipt memory msgReceipt, OFTReceipt memory oftReceipt) {
[codex:1358370]         // @dev Applies the token transfers regarding this send() operation.
[codex:1358370]         // - amountSentLD is the amount in local decimals that was ACTUALLY sent/debited from the sender.
[codex:1358370]         // - amountReceivedLD is the amount in local decimals that will be received/credited to the recipient on the remote OFT instance.
[codex:1358370]         (uint256 amountSentLD, uint256 amountReceivedLD) = _debit(
[codex:1358370]             msg.sender,
[codex:1358370]             _sendParam.amountLD,
[codex:1358370]             _sendParam.minAmountLD,
[codex:1358370]             _sendParam.dstEid
[codex:1358370]         );
[codex:1358370] 
[codex:1358370]         // @dev Builds the options and OFT message to quote in the endpoint.
[codex:1358370]         (bytes memory message, bytes memory options) = _buildMsgAndOptions(_sendParam, amountReceivedLD);
[codex:1358370] 
[codex:1358370]         // @dev Sends the message to the LayerZero endpoint and returns the LayerZero msg receipt.
[codex:1358370]         msgReceipt = _lzSend(_sendParam.dstEid, message, options, _fee, _refundAddress);
[codex:1358370]         // @dev Formulate the OFT receipt.
[codex:1358370]         oftReceipt = OFTReceipt(amountSentLD, amountReceivedLD);
[codex:1358370] 
[codex:1358370]         emit OFTSent(msgReceipt.guid, _sendParam.dstEid, msg.sender, amountSentLD, amountReceivedLD);
[codex:1358370] 
[codex:1358370] thinking
[codex:1358370] **Analyzing potential reentrancy risks**
[codex:1358370] exec
[codex:1358370] /bin/bash -lc "sed -n '2620,2800p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-lgjucjyq succeeded in 6ms:
[codex:1358370]         // @dev Remove the dust so nothing is lost on the conversion between chains with different decimals for the token.
[codex:1358370]         amountSentLD = _removeDust(_amountLD);
[codex:1358370]         // @dev The amount to send is the same as amount received in the default implementation.
[codex:1358370]         amountReceivedLD = amountSentLD;
[codex:1358370] 
[codex:1358370]         // @dev Check for slippage.
[codex:1358370]         if (amountReceivedLD < _minAmountLD) {
[codex:1358370]             revert SlippageExceeded(amountReceivedLD, _minAmountLD);
[codex:1358370]         }
[codex:1358370]     }
[codex:1358370] 
[codex:1358370]     /**
[codex:1358370]      * @dev Internal function to perform a debit operation.
[codex:1358370]      * @param _from The address to debit from.
[codex:1358370]      * @param _amountLD The amount to send in local decimals.
[codex:1358370]      * @param _minAmountLD The minimum amount to send in local decimals.
[codex:1358370]      * @param _dstEid The destination endpoint ID.
[codex:1358370]      * @return amountSentLD The amount sent in local decimals.
[codex:1358370]      * @return amountReceivedLD The amount received in local decimals on the remote.
[codex:1358370]      *
[codex:1358370] 
[codex:1358370] thinking
[codex:1358370] **Reviewing reentrancy and upgradeability risks**
[codex:1358370] exec
[codex:1358370] /bin/bash -lc 'rg -n "setPreCrime|precrime|preCrime" AUDIT_BUNDLE.txt' in /tmp/codex-multi-lgjucjyq succeeded in 7ms:
[codex:1358370] 887:FILE: contracts/@layerzerolabs/oapp-evm/contracts/precrime/interfaces/IOAppPreCrimeSimulator.sol
[codex:1358370] 899: * @dev Interface for the preCrime simulation functionality in an OApp.
[codex:1358370] 907:     * @dev Emitted when the preCrime contract address is set.
[codex:1358370] 908:     * @param preCrimeAddress The address of the preCrime contract.
[codex:1358370] 910:    event PreCrimeSet(address preCrimeAddress);
[codex:1358370] 913:     * @dev Retrieves the address of the preCrime contract implementation.
[codex:1358370] 914:     * @return The address of the preCrime contract.
[codex:1358370] 916:    function preCrime() external view returns (address);
[codex:1358370] 925:     * @dev Sets the preCrime contract address.
[codex:1358370] 926:     * @param _preCrime The address of the preCrime contract.
[codex:1358370] 928:    function setPreCrime(address _preCrime) external;
[codex:1358370] 946:FILE: contracts/@layerzerolabs/oapp-evm/contracts/precrime/interfaces/IPreCrime.sol
[codex:1358370] 953:    bytes32 preCrime;
[codex:1358370] 966:    // for preCrime()
[codex:1358370] 980:    function preCrime(
[codex:1358370] 990:FILE: contracts/@layerzerolabs/oapp-evm/contracts/precrime/libs/Packet.sol
[codex:1358370] 1610:FILE: contracts/@layerzerolabs/oapp-evm-upgradeable/contracts/precrime/OAppPreCrimeSimulatorUpgradeable.sol
[codex:1358370] 1617:import { IPreCrime } from "@layerzerolabs/oapp-evm/contracts/precrime/interfaces/IPreCrime.sol";
[codex:1358370] 1618:import { IOAppPreCrimeSimulator, InboundPacket, Origin } from "@layerzerolabs/oapp-evm/contracts/precrime/interfaces/IOAppPreCrimeSimulator.sol";
[codex:1358370] 1622: * @dev Abstract contract serving as the base for preCrime simulation functionality in an OApp.
[codex:1358370] 
[codex:1358370] thinking
[codex:1358370] **Checking for signature validation and reentrancy**
[codex:1358370] exec
[codex:1358370] /bin/bash -lc "sed -n '1600,1785p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-lgjucjyq succeeded in 5ms:
[codex:1358370]      * @dev Internal function to assert that options are of type 3.
[codex:1358370]      * @param _options The options to be checked.
[codex:1358370]      */
[codex:1358370]     function _assertOptionsType3(bytes calldata _options) internal pure virtual {
[codex:1358370]         uint16 optionsType = uint16(bytes2(_options[0:2]));
[codex:1358370]         if (optionsType != OPTION_TYPE_3) revert InvalidOptions(_options);
[codex:1358370]     }
[codex:1358370] }
[codex:1358370] 
[codex:1358370] ================================================================================
[codex:1358370] FILE: contracts/@layerzerolabs/oapp-evm-upgradeable/contracts/precrime/OAppPreCrimeSimulatorUpgradeable.sol
[codex:1358370] ================================================================================
[codex:1358370] // SPDX-License-Identifier: MIT
[codex:1358370] 
[codex:1358370] pragma solidity ^0.8.20;
[codex:1358370] 
[codex:1358370] import { OwnableUpgradeable } from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
[codex:1358370] import { IPreCrime } from "@layerzerolabs/oapp-evm/contracts/precrime/interfaces/IPreCrime.sol";
[codex:1358370] import { IOAppPreCrimeSimulator, InboundPacket, Origin } from "@layerzerolabs/oapp-evm/contracts/precrime/interfaces/IOAppPreCrimeSimulator.sol";
[codex:1358370] 
[codex:1358370] 
[codex:1358370] thinking
[codex:1358370] **Analyzing potential reentrancy and token transfer risks**
[codex:1358370] exec
[codex:1358370] /bin/bash -lc "rg -n \"function send\\(\" -n AUDIT_BUNDLE.txt" in /tmp/codex-multi-lgjucjyq succeeded in 6ms:
[codex:1358370] 65:    function send(
[codex:1358370] 337:    function send(
[codex:1358370] 1910:    function send(
[codex:1358370] 2436:    function send(
[codex:1358370] 
[codex:1358370] thinking
[codex:1358370] **Checking OFTCore send implementation**
[codex:1358370] exec
[codex:1358370] /bin/bash -lc "sed -n '2360,2465p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-lgjucjyq succeeded in 6ms:
[codex:1358370]     }
[codex:1358370] 
[codex:1358370]     /**
[codex:1358370]      * @notice Provides a quote for OFT-related operations.
[codex:1358370]      * @param _sendParam The parameters for the send operation.
[codex:1358370]      * @return oftLimit The OFT limit information.
[codex:1358370]      * @return oftFeeDetails The details of OFT fees.
[codex:1358370]      * @return oftReceipt The OFT receipt information.
[codex:1358370]      */
[codex:1358370]     function quoteOFT(
[codex:1358370]         SendParam calldata _sendParam
[codex:1358370]     )
[codex:1358370]         external
[codex:1358370]         view
[codex:1358370]         virtual
[codex:1358370]         returns (OFTLimit memory oftLimit, OFTFeeDetail[] memory oftFeeDetails, OFTReceipt memory oftReceipt)
[codex:1358370]     {
[codex:1358370]         uint256 minAmountLD = 0; // Unused in the default implementation.
[codex:1358370]         uint256 maxAmountLD = type(uint64).max; // Unused in the default implementation.
[codex:1358370]         oftLimit = OFTLimit(minAmountLD, maxAmountLD);
[codex:1358370] 
[codex:1358370] thinking
[codex:1358370] **Analyzing contract security risks**
[codex:1358370] exec
[codex:1358370] /bin/bash -lc "rg -n \"call\\(|staticcall\\(|delegatecall\\(\" AUDIT_BUNDLE.txt" in /tmp/codex-multi-lgjucjyq succeeded in 6ms:
[codex:1358370] 3173:            let success := call(gas(), token, 0, add(data, 0x20), mload(data), 0, 0x20)
[codex:1358370] 3202:            success := call(gas(), token, 0, add(data, 0x20), mload(data), 0, 0x20)
[codex:1358370] 
[codex:1358370] thinking
[codex:1358370] **Inspecting external calls and access controls**
[codex:1358370] exec
[codex:1358370] /bin/bash -lc 'rg -n "msgInspector" AUDIT_BUNDLE.txt' in /tmp/codex-multi-lgjucjyq succeeded in 6ms:
[codex:1358370] 2254:        address msgInspector;
[codex:1358370] 2330:    function msgInspector() public view returns (address) {
[codex:1358370] 2332:        return $.msgInspector;
[codex:1358370] 2351:     * @param _msgInspector The address of the message inspector.
[codex:1358370] 2356:    function setMsgInspector(address _msgInspector) public virtual onlyOwner {
[codex:1358370] 2358:        $.msgInspector = _msgInspector;
[codex:1358370] 2359:        emit MsgInspectorSet(_msgInspector);
[codex:1358370] 2491:        address inspector = $.msgInspector; // caches the msgInspector to avoid potential double storage read
[codex:1358370] 
[codex:1358370] thinking
[codex:1358370] **Analyzing token adapter for vulnerabilities**
[codex:1358370] 
[codex:1358370] I've examined the WETHOFTAdapterUpgradeable and related LayerZero/OFT upgradeable contracts for potential vulnerabilities, especially around fee-on-transfer tokens, message encoding, and cross-chain accounting. While some theoretical issues exist with lossless transfer assumptions and uint64 truncation, given this is specifically for WETH and documented limitations, I find no exploitable problems within scope. I'll prepare the JSON summary accordingly.
[codex:1358370] codex
[codex:1358370] {"no_findings":true,"summary":"Reviewed WETHOFTAdapterUpgradeable and the bundled LayerZero OFT/OApp upgradeable stack in AUDIT_BUNDLE.txt; no exploitable issues found within the requested categories.","findings":[]}
[codex:1358370] tokens used
[codex:1358370] 78,608
[codex:1358370] {"no_findings":true,"summary":"Reviewed WETHOFTAdapterUpgradeable and the bundled LayerZero OFT/OApp upgradeable stack in AUDIT_BUNDLE.txt; no exploitable issues found within the requested categories.","findings":[]}
Metadata
{
    "codex": {
        "ran_at": "2025-12-29T13:36:24.916848+00:00",
        "returncode": 0
    },
    "summary": "Reviewed WETHOFTAdapterUpgradeable and the bundled LayerZero OFT/OApp upgradeable stack in AUDIT_BUNDLE.txt; no exploitable issues found within the requested categories.",
    "raw_final": {
        "summary": "Reviewed WETHOFTAdapterUpgradeable and the bundled LayerZero OFT/OApp upgradeable stack in AUDIT_BUNDLE.txt; no exploitable issues found within the requested categories.",
        "findings": [],
        "no_findings": true
    },
    "no_findings": true,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
9
EXT*/BALANCE
6
Total opcodes
7507
Flags
heavy_ext_balance_usage
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x01f9
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x857749b0
00000019: GT
0000001a: PUSH2 0x010d
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0xbd815db0
00000024: GT
00000025: PUSH2 0x00a0
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xd045a0dc
0000002f: GT
00000030: PUSH2 0x006f
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xd045a0dc
0000003a: EQ
0000003b: PUSH2 0x0633
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xd4243885
00000045: EQ
00000046: PUSH2 0x0646
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0xf2fde38b
00000050: EQ
00000051: PUSH2 0x0666
00000054: JUMPI
00000055: DUP1
00000056: PUSH4 0xfc0c546a
0000005b: EQ
0000005c: PUSH2 0x0686
0000005f: JUMPI
00000060: DUP1
00000061: PUSH4 0xff7bd03d
00000066: EQ
00000067: PUSH2 0x06b9
0000006a: JUMPI
0000006b: PUSH1 0x00
0000006d: DUP1
0000006e: REVERT
0000006f: JUMPDEST
00000070: DUP1
00000071: PUSH4 0xbd815db0
00000076: EQ
00000077: PUSH2 0x05bf
0000007a: JUMPI
0000007b: DUP1
0000007c: PUSH4 0xc4d66de8
00000081: EQ
00000082: PUSH2 0x05d2
00000085: JUMPI
00000086: DUP1
00000087: PUSH4 0xc7c7f5b3
0000008c: EQ
0000008d: PUSH2 0x05f2
00000090: JUMPI
00000091: DUP1
00000092: PUSH4 0xca5eb5e1
00000097: EQ
00000098: PUSH2 0x0613
0000009b: JUMPI
0000009c: PUSH1 0x00
0000009e: DUP1
0000009f: REVERT
000000a0: JUMPDEST
000000a1: DUP1
000000a2: PUSH4 0xb731ea0a
000000a7: GT
000000a8: PUSH2 0x00dc
000000ab: JUMPI
000000ac: DUP1
000000ad: PUSH4 0xb731ea0a
000000b2: EQ
000000b3: PUSH2 0x052a
000000b6: JUMPI
000000b7: DUP1
000000b8: PUSH4 0xb98bd070
000000bd: EQ
000000be: PUSH2 0x053f
000000c1: JUMPI
000000c2: DUP1
000000c3: PUSH4 0xbb0b6a53
000000c8: EQ
000000c9: PUSH2 0x055f
000000cc: JUMPI
000000cd: DUP1
000000ce: PUSH4 0xbc70b354
000000d3: EQ
000000d4: PUSH2 0x059f
000000d7: JUMPI
000000d8: PUSH1 0x00
000000da: DUP1
000000db: REVERT
000000dc: JUMPDEST
000000dd: DUP1
000000de: PUSH4 0x857749b0
000000e3: EQ
000000e4: PUSH2 0x04a3
000000e7: JUMPI
000000e8: DUP1
000000e9: PUSH4 0x8da5cb5b
000000ee: EQ
000000ef: PUSH2 0x04bf
000000f2: JUMPI
000000f3: DUP1
000000f4: PUSH4 0x963efcaa
000000f9: EQ
000000fa: PUSH2 0x04d4
000000fd: JUMPI
000000fe: DUP1
000000ff: PUSH4 0x9f68b964
00000104: EQ
00000105: PUSH2 0x0516
00000108: JUMPI
00000109: PUSH1 0x00
0000010b: DUP1
0000010c: REVERT
0000010d: JUMPDEST
0000010e: DUP1
0000010f: PUSH4 0x3b6f743b
00000114: GT
00000115: PUSH2 0x0190
00000118: JUMPI
00000119: DUP1
0000011a: PUSH4 0x5e280f11
0000011f: GT
00000120: PUSH2 0x015f
00000123: JUMPI
00000124: DUP1
00000125: PUSH4 0x5e280f11
0000012a: EQ
0000012b: PUSH2 0x03df
0000012e: JUMPI
0000012f: DUP1
00000130: PUSH4 0x6fc1b31e
00000135: EQ
00000136: PUSH2 0x0413
00000139: JUMPI
0000013a: DUP1
0000013b: PUSH4 0x715018a6
00000140: EQ
00000141: PUSH2 0x0433
00000144: JUMPI
00000145: DUP1
00000146: PUSH4 0x7d25a05e
0000014b: EQ
0000014c: PUSH2 0x0448
0000014f: JUMPI
00000150: DUP1
00000151: PUSH4 0x82413eac
00000156: EQ
00000157: PUSH2 0x0483
0000015a: JUMPI
0000015b: PUSH1 0x00
0000015d: DUP1
0000015e: REVERT
0000015f: JUMPDEST
00000160: DUP1
00000161: PUSH4 0x3b6f743b
00000166: EQ
00000167: PUSH2 0x031e
0000016a: JUMPI
0000016b: DUP1
0000016c: PUSH4 0x52ae2879
00000171: EQ
00000172: PUSH2 0x034b
00000175: JUMPI
00000176: DUP1
00000177: PUSH4 0x5535d461
0000017c: EQ
0000017d: PUSH2 0x035e
00000180: JUMPI
00000181: DUP1
00000182: PUSH4 0x5a0dfe4d
00000187: EQ
00000188: PUSH2 0x038b
0000018b: JUMPI
0000018c: PUSH1 0x00
0000018e: DUP1
0000018f: REVERT
00000190: JUMPDEST
00000191: DUP1
00000192: PUSH4 0x156a0d0f
00000197: GT
00000198: PUSH2 0x01cc
0000019b: JUMPI
0000019c: DUP1
0000019d: PUSH4 0x156a0d0f
000001a2: EQ
000001a3: PUSH2 0x02a0
000001a6: JUMPI
000001a7: DUP1
000001a8: PUSH4 0x17442b70
000001ad: EQ
000001ae: PUSH2 0x02c7
000001b1: JUMPI
000001b2: DUP1
000001b3: PUSH4 0x1f5e1334
000001b8: EQ
000001b9: PUSH2 0x02e9
000001bc: JUMPI
000001bd: DUP1
000001be: PUSH4 0x3400288b
000001c3: EQ
000001c4: PUSH2 0x02fe
000001c7: JUMPI
000001c8: PUSH1 0x00
000001ca: DUP1
000001cb: REVERT
000001cc: JUMPDEST
000001cd: DUP1
000001ce: PUSH4 0x0d35b415
000001d3: EQ
000001d4: PUSH2 0x01fe
000001d7: JUMPI
000001d8: DUP1
000001d9: PUSH4 0x111ecdad
000001de: EQ
000001df: PUSH2 0x0236
000001e2: JUMPI
000001e3: DUP1
000001e4: PUSH4 0x13137d65
000001e9: EQ
000001ea: PUSH2 0x0263
000001ed: JUMPI
000001ee: DUP1
000001ef: PUSH4 0x134d4f25
000001f4: EQ
000001f5: PUSH2 0x0278
000001f8: JUMPI
000001f9: JUMPDEST
000001fa: PUSH1 0x00
000001fc: DUP1
000001fd: REVERT
000001fe: JUMPDEST
000001ff: CALLVALUE
00000200: DUP1
00000201: ISZERO
00000202: PUSH2 0x020a
00000205: JUMPI
00000206: PUSH1 0x00
00000208: DUP1
00000209: REVERT
0000020a: JUMPDEST
0000020b: POP
0000020c: PUSH2 0x021e
0000020f: PUSH2 0x0219
00000212: CALLDATASIZE
00000213: PUSH1 0x04
00000215: PUSH2 0x1f6c
00000218: JUMP
00000219: JUMPDEST
0000021a: PUSH2 0x06d9
0000021d: JUMP
0000021e: JUMPDEST
0000021f: PUSH1 0x40
00000221: MLOAD
00000222: PUSH2 0x022d
00000225: SWAP4
00000226: SWAP3
00000227: SWAP2
00000228: SWAP1
00000229: PUSH2 0x1ff0
0000022c: JUMP
0000022d: JUMPDEST
0000022e: PUSH1 0x40
00000230: MLOAD
00000231: DUP1
00000232: SWAP2
00000233: SUB
00000234: SWAP1
00000235: RETURN
00000236: JUMPDEST
00000237: CALLVALUE
00000238: DUP1
00000239: ISZERO
0000023a: PUSH2 0x0242
0000023d: JUMPI
0000023e: PUSH1 0x00
00000240: DUP1
00000241: REVERT
00000242: JUMPDEST
00000243: POP
00000244: PUSH2 0x024b
00000247: PUSH2 0x07aa
0000024a: JUMP
0000024b: JUMPDEST
0000024c: PUSH1 0x40
0000024e: MLOAD
0000024f: PUSH1 0x01
00000251: PUSH1 0x01
00000253: PUSH1 0xa0
00000255: SHL
00000256: SUB
00000257: SWAP1
00000258: SWAP2
00000259: AND
0000025a: DUP2
0000025b: MSTORE
0000025c: PUSH1 0x20
0000025e: ADD
0000025f: PUSH2 0x022d
00000262: JUMP
00000263: JUMPDEST
00000264: PUSH2 0x0276
00000267: PUSH2 0x0271
0000026a: CALLDATASIZE
0000026b: PUSH1 0x04
0000026d: PUSH2 0x20f8
00000270: JUMP
00000271: JUMPDEST
00000272: PUSH2 0x07df
00000275: JUMP
00000276: JUMPDEST
00000277: STOP
00000278: JUMPDEST
00000279: CALLVALUE
0000027a: DUP1
0000027b: ISZERO
0000027c: PUSH2 0x0284
0000027f: JUMPI
00000280: PUSH1 0x00
00000282: DUP1
00000283: REVERT
00000284: JUMPDEST
00000285: POP
00000286: PUSH2 0x028d
00000289: PUSH1 0x02
0000028b: DUP2
0000028c: JUMP
0000028d: JUMPDEST
0000028e: PUSH1 0x40
00000290: MLOAD
00000291: PUSH2 0xffff
00000294: SWAP1
00000295: SWAP2
00000296: AND
00000297: DUP2
00000298: MSTORE
00000299: PUSH1 0x20
0000029b: ADD
0000029c: PUSH2 0x022d
0000029f: JUMP
000002a0: JUMPDEST
000002a1: CALLVALUE
000002a2: DUP1
000002a3: ISZERO
000002a4: PUSH2 0x02ac
000002a7: JUMPI
000002a8: PUSH1 0x00
000002aa: DUP1
000002ab: REVERT
000002ac: JUMPDEST
000002ad: POP
000002ae: PUSH1 0x40
000002b0: DUP1
000002b1: MLOAD
000002b2: PUSH3 0xb9270b
000002b6: PUSH1 0xe2
000002b8: SHL
000002b9: DUP2
000002ba: MSTORE
000002bb: PUSH1 0x01
000002bd: PUSH1 0x20
000002bf: DUP3
000002c0: ADD
000002c1: MSTORE
000002c2: ADD
000002c3: PUSH2 0x022d
000002c6: JUMP
000002c7: JUMPDEST
000002c8: CALLVALUE
000002c9: DUP1
000002ca: ISZERO
000002cb: PUSH2 0x02d3
000002ce: JUMPI
000002cf: PUSH1 0x00
000002d1: DUP1
000002d2: REVERT
000002d3: JUMPDEST
000002d4: POP
000002d5: PUSH1 0x40
000002d7: DUP1
000002d8: MLOAD
000002d9: PUSH1 0x01
000002db: DUP2
000002dc: MSTORE
000002dd: PUSH1 0x02
000002df: PUSH1 0x20
000002e1: DUP3
000002e2: ADD
000002e3: MSTORE
000002e4: ADD
000002e5: PUSH2 0x022d
000002e8: JUMP
000002e9: JUMPDEST
000002ea: CALLVALUE
000002eb: DUP1
000002ec: ISZERO
000002ed: PUSH2 0x02f5
000002f0: JUMPI
000002f1: PUSH1 0x00
000002f3: DUP1
000002f4: REVERT
000002f5: JUMPDEST
000002f6: POP
000002f7: PUSH2 0x028d
000002fa: PUSH1 0x01
000002fc: DUP2
000002fd: JUMP
000002fe: JUMPDEST
000002ff: CALLVALUE
00000300: DUP1
00000301: ISZERO
00000302: PUSH2 0x030a
00000305: JUMPI
00000306: PUSH1 0x00
00000308: DUP1
00000309: REVERT
0000030a: JUMPDEST
0000030b: POP
0000030c: PUSH2 0x0276
0000030f: PUSH2 0x0319
00000312: CALLDATASIZE
00000313: PUSH1 0x04
00000315: PUSH2 0x21b0
00000318: JUMP
00000319: JUMPDEST
0000031a: PUSH2 0x089f
0000031d: JUMP
0000031e: JUMPDEST
0000031f: CALLVALUE
00000320: DUP1
00000321: ISZERO
00000322: PUSH2 0x032a
00000325: JUMPI
00000326: PUSH1 0x00
00000328: DUP1
00000329: REVERT
0000032a: JUMPDEST
0000032b: POP
0000032c: PUSH2 0x033e
0000032f: PUSH2 0x0339
00000332: CALLDATASIZE
00000333: PUSH1 0x04
00000335: PUSH2 0x21e8
00000338: JUMP
00000339: JUMPDEST
0000033a: PUSH2 0x090c
0000033d: JUMP
0000033e: JUMPDEST
0000033f: PUSH1 0x40
00000341: MLOAD
00000342: PUSH2 0x022d
00000345: SWAP2
00000346: SWAP1
00000347: PUSH2 0x2239
0000034a: JUMP
0000034b: JUMPDEST
0000034c: CALLVALUE
0000034d: DUP1
0000034e: ISZERO
0000034f: PUSH2 0x0357
00000352: JUMPI
00000353: PUSH1 0x00
00000355: DUP1
00000356: REVERT
00000357: JUMPDEST
00000358: POP
00000359: ADDRESS
0000035a: PUSH2 0x024b
0000035d: JUMP
0000035e: JUMPDEST
0000035f: CALLVALUE
00000360: DUP1
00000361: ISZERO
00000362: PUSH2 0x036a
00000365: JUMPI
00000366: PUSH1 0x00
00000368: DUP1
00000369: REVERT
0000036a: JUMPDEST
0000036b: POP
0000036c: PUSH2 0x037e
0000036f: PUSH2 0x0379
00000372: CALLDATASIZE
00000373: PUSH1 0x04
00000375: PUSH2 0x2262
00000378: JUMP
00000379: JUMPDEST
0000037a: PUSH2 0x0975
0000037d: JUMP
0000037e: JUMPDEST
0000037f: PUSH1 0x40
00000381: MLOAD
00000382: PUSH2 0x022d
00000385: SWAP2
00000386: SWAP1
00000387: PUSH2 0x2295
0000038a: JUMP
0000038b: JUMPDEST
0000038c: CALLVALUE
0000038d: DUP1
0000038e: ISZERO
0000038f: PUSH2 0x0397
00000392: JUMPI
00000393: PUSH1 0x00
00000395: DUP1
00000396: REVERT
00000397: JUMPDEST
00000398: POP
00000399: PUSH2 0x03cf
0000039c: PUSH2 0x03a6
0000039f: CALLDATASIZE
000003a0: PUSH1 0x04
000003a2: PUSH2 0x21b0
000003a5: JUMP
000003a6: JUMPDEST
000003a7: PUSH4 0xffffffff
000003ac: SWAP2
000003ad: SWAP1
000003ae: SWAP2
000003af: AND
000003b0: PUSH1 0x00
000003b2: SWAP1
000003b3: DUP2
000003b4: MSTORE
000003b5: PUSH1 0x00
000003b7: DUP1
000003b8: MLOAD
000003b9: PUSH1 0x20
000003bb: PUSH2 0x2d47
000003be: DUP4
000003bf: CODECOPY
000003c0: DUP2
000003c1: MLOAD
000003c2: SWAP2
000003c3: MSTORE
000003c4: PUSH1 0x20
000003c6: MSTORE
000003c7: PUSH1 0x40
000003c9: SWAP1
000003ca: KECCAK256
000003cb: SLOAD
000003cc: EQ
000003cd: SWAP1
000003ce: JUMP
000003cf: JUMPDEST
000003d0: PUSH1 0x40
000003d2: MLOAD
000003d3: SWAP1
000003d4: ISZERO
000003d5: ISZERO
000003d6: DUP2
000003d7: MSTORE
000003d8: PUSH1 0x20
000003da: ADD
000003db: PUSH2 0x022d
000003de: JUMP
000003df: JUMPDEST
000003e0: CALLVALUE
000003e1: DUP1
000003e2: ISZERO
000003e3: PUSH2 0x03eb
000003e6: JUMPI
000003e7: PUSH1 0x00
000003e9: DUP1
000003ea: REVERT
000003eb: JUMPDEST
000003ec: POP
000003ed: PUSH2 0x024b
000003f0: PUSH32 0x0000000000000000000000001a44076050125825900e736c501f859c50fe728c
00000411: DUP2
00000412: JUMP
00000413: JUMPDEST
00000414: CALLVALUE
00000415: DUP1
00000416: ISZERO
00000417: PUSH2 0x041f
0000041a: JUMPI
0000041b: PUSH1 0x00
0000041d: DUP1
0000041e: REVERT
0000041f: JUMPDEST
00000420: POP
00000421: PUSH2 0x0276
00000424: PUSH2 0x042e
00000427: CALLDATASIZE
00000428: PUSH1 0x04
0000042a: PUSH2 0x22a8
0000042d: JUMP
0000042e: JUMPDEST
0000042f: PUSH2 0x0a50
00000432: JUMP
00000433: JUMPDEST
00000434: CALLVALUE
00000435: DUP1
00000436: ISZERO
00000437: PUSH2 0x043f
0000043a: JUMPI
0000043b: PUSH1 0x00
0000043d: DUP1
0000043e: REVERT
0000043f: JUMPDEST
00000440: POP
00000441: PUSH2 0x0276
00000444: PUSH2 0x0acc
00000447: JUMP
00000448: JUMPDEST
00000449: CALLVALUE
0000044a: DUP1
0000044b: ISZERO
0000044c: PUSH2 0x0454
0000044f: JUMPI
00000450: PUSH1 0x00
00000452: DUP1
00000453: REVERT
00000454: JUMPDEST
00000455: POP
00000456: PUSH2 0x046b
00000459: PUSH2 0x0463
0000045c: CALLDATASIZE
0000045d: PUSH1 0x04
0000045f: PUSH2 0x21b0
00000462: JUMP
00000463: JUMPDEST
00000464: PUSH1 0x00
00000466: SWAP3
00000467: SWAP2
00000468: POP
00000469: POP
0000046a: JUMP
0000046b: JUMPDEST
0000046c: PUSH1 0x40
0000046e: MLOAD
0000046f: PUSH1 0x01
00000471: PUSH1 0x01
00000473: PUSH1 0x40
00000475: SHL
00000476: SUB
00000477: SWAP1
00000478: SWAP2
00000479: AND
0000047a: DUP2
0000047b: MSTORE
0000047c: PUSH1 0x20
0000047e: ADD
0000047f: PUSH2 0x022d
00000482: JUMP
00000483: JUMPDEST
00000484: CALLVALUE
00000485: DUP1
00000486: ISZERO
00000487: PUSH2 0x048f
0000048a: JUMPI
0000048b: PUSH1 0x00
0000048d: DUP1
0000048e: REVERT
0000048f: JUMPDEST
00000490: POP
00000491: PUSH2 0x03cf
00000494: PUSH2 0x049e
00000497: CALLDATASIZE
00000498: PUSH1 0x04
0000049a: PUSH2 0x22c5
0000049d: JUMP
0000049e: JUMPDEST
0000049f: PUSH2 0x0ae0
000004a2: JUMP
000004a3: JUMPDEST
000004a4: CALLVALUE
000004a5: DUP1
000004a6: ISZERO
000004a7: PUSH2 0x04af
000004aa: JUMPI
000004ab: PUSH1 0x00
000004ad: DUP1
000004ae: REVERT
000004af: JUMPDEST
000004b0: POP
000004b1: PUSH1 0x40
000004b3: MLOAD
000004b4: PUSH1 0x06
000004b6: DUP2
000004b7: MSTORE
000004b8: PUSH1 0x20
000004ba: ADD
000004bb: PUSH2 0x022d
000004be: JUMP
000004bf: JUMPDEST
000004c0: CALLVALUE
000004c1: DUP1
000004c2: ISZERO
000004c3: PUSH2 0x04cb
000004c6: JUMPI
000004c7: PUSH1 0x00
000004c9: DUP1
000004ca: REVERT
000004cb: JUMPDEST
000004cc: POP
000004cd: PUSH2 0x024b
000004d0: PUSH2 0x0af5
000004d3: JUMP
000004d4: JUMPDEST
000004d5: CALLVALUE
000004d6: DUP1
000004d7: ISZERO
000004d8: PUSH2 0x04e0
000004db: JUMPI
000004dc: PUSH1 0x00
000004de: DUP1
000004df: REVERT
000004e0: JUMPDEST
000004e1: POP
000004e2: PUSH2 0x0508
000004e5: PUSH32 0x000000000000000000000000000000000000000000000000000000e8d4a51000
00000506: DUP2
00000507: JUMP
00000508: JUMPDEST
00000509: PUSH1 0x40
0000050b: MLOAD
0000050c: SWAP1
0000050d: DUP2
0000050e: MSTORE
0000050f: PUSH1 0x20
00000511: ADD
00000512: PUSH2 0x022d
00000515: JUMP
00000516: JUMPDEST
00000517: CALLVALUE
00000518: DUP1
00000519: ISZERO
0000051a: PUSH2 0x0522
0000051d: JUMPI
0000051e: PUSH1 0x00
00000520: DUP1
00000521: REVERT
00000522: JUMPDEST
00000523: POP
00000524: PUSH1 0x01
00000526: PUSH2 0x03cf
00000529: JUMP
0000052a: JUMPDEST
0000052b: CALLVALUE
0000052c: DUP1
0000052d: ISZERO
0000052e: PUSH2 0x0536
00000531: JUMPI
00000532: PUSH1 0x00
00000534: DUP1
00000535: REVERT
00000536: JUMPDEST
00000537: POP
00000538: PUSH2 0x024b
0000053b: PUSH2 0x0b1e
0000053e: JUMP
0000053f: JUMPDEST
00000540: CALLVALUE
00000541: DUP1
00000542: ISZERO
00000543: PUSH2 0x054b
00000546: JUMPI
00000547: PUSH1 0x00
00000549: DUP1
0000054a: REVERT
0000054b: JUMPDEST
0000054c: POP
0000054d: PUSH2 0x0276
00000550: PUSH2 0x055a
00000553: CALLDATASIZE
00000554: PUSH1 0x04
00000556: PUSH2 0x236f
00000559: JUMP
0000055a: JUMPDEST
0000055b: PUSH2 0x0b47
0000055e: JUMP
0000055f: JUMPDEST
00000560: CALLVALUE
00000561: DUP1
00000562: ISZERO
00000563: PUSH2 0x056b
00000566: JUMPI
00000567: PUSH1 0x00
00000569: DUP1
0000056a: REVERT
0000056b: JUMPDEST
0000056c: POP
0000056d: PUSH2 0x0508
00000570: PUSH2 0x057a
00000573: CALLDATASIZE
00000574: PUSH1 0x04
00000576: PUSH2 0x23b0
00000579: JUMP
0000057a: JUMPDEST
0000057b: PUSH4 0xffffffff
00000580: AND
00000581: PUSH1 0x00
00000583: SWAP1
00000584: DUP2
00000585: MSTORE
00000586: PUSH1 0x00
00000588: DUP1
00000589: MLOAD
0000058a: PUSH1 0x20
0000058c: PUSH2 0x2d47
0000058f: DUP4
00000590: CODECOPY
00000591: DUP2
00000592: MLOAD
00000593: SWAP2
00000594: MSTORE
00000595: PUSH1 0x20
00000597: MSTORE
00000598: PUSH1 0x40
0000059a: SWAP1
0000059b: KECCAK256
0000059c: SLOAD
0000059d: SWAP1
0000059e: JUMP
0000059f: JUMPDEST
000005a0: CALLVALUE
000005a1: DUP1
000005a2: ISZERO
000005a3: PUSH2 0x05ab
000005a6: JUMPI
000005a7: PUSH1 0x00
000005a9: DUP1
000005aa: REVERT
000005ab: JUMPDEST
000005ac: POP
000005ad: PUSH2 0x037e
000005b0: PUSH2 0x05ba
000005b3: CALLDATASIZE
000005b4: PUSH1 0x04
000005b6: PUSH2 0x23cb
000005b9: JUMP
000005ba: JUMPDEST
000005bb: PUSH2 0x0cc8
000005be: JUMP
000005bf: JUMPDEST
000005c0: PUSH2 0x0276
000005c3: PUSH2 0x05cd
000005c6: CALLDATASIZE
000005c7: PUSH1 0x04
000005c9: PUSH2 0x236f
000005cc: JUMP
000005cd: JUMPDEST
000005ce: PUSH2 0x0e5e
000005d1: JUMP
000005d2: JUMPDEST
000005d3: CALLVALUE
000005d4: DUP1
000005d5: ISZERO
000005d6: PUSH2 0x05de
000005d9: JUMPI
000005da: PUSH1 0x00
000005dc: DUP1
000005dd: REVERT
000005de: JUMPDEST
000005df: POP
000005e0: PUSH2 0x0276
000005e3: PUSH2 0x05ed
000005e6: CALLDATASIZE
000005e7: PUSH1 0x04
000005e9: PUSH2 0x22a8
000005ec: JUMP
000005ed: JUMPDEST
000005ee: PUSH2 0x0ff5
000005f1: JUMP
000005f2: JUMPDEST
000005f3: PUSH2 0x0605
000005f6: PUSH2 0x0600
000005f9: CALLDATASIZE
000005fa: PUSH1 0x04
000005fc: PUSH2 0x242b
000005ff: JUMP
00000600: JUMPDEST
00000601: PUSH2 0x10f8
00000604: JUMP
00000605: JUMPDEST
00000606: PUSH1 0x40
00000608: MLOAD
00000609: PUSH2 0x022d
0000060c: SWAP3
0000060d: SWAP2
0000060e: SWAP1
0000060f: PUSH2 0x2498
00000612: JUMP
00000613: JUMPDEST
00000614: CALLVALUE
00000615: DUP1
00000616: ISZERO
00000617: PUSH2 0x061f
0000061a: JUMPI
0000061b: PUSH1 0x00
0000061d: DUP1
0000061e: REVERT
0000061f: JUMPDEST
00000620: POP
00000621: PUSH2 0x0276
00000624: PUSH2 0x062e
00000627: CALLDATASIZE
00000628: PUSH1 0x04
0000062a: PUSH2 0x22a8
0000062d: JUMP
0000062e: JUMPDEST
0000062f: PUSH2 0x11f3
00000632: JUMP
00000633: JUMPDEST
00000634: PUSH2 0x0276
00000637: PUSH2 0x0641
0000063a: CALLDATASIZE
0000063b: PUSH1 0x04
0000063d: PUSH2 0x20f8
00000640: JUMP
00000641: JUMPDEST
00000642: PUSH2 0x1279
00000645: JUMP
00000646: JUMPDEST
00000647: CALLVALUE
00000648: DUP1
00000649: ISZERO
0000064a: PUSH2 0x0652
0000064d: JUMPI
0000064e: PUSH1 0x00
00000650: DUP1
00000651: REVERT
00000652: JUMPDEST
00000653: POP
00000654: PUSH2 0x0276
00000657: PUSH2 0x0661
0000065a: CALLDATASIZE
0000065b: PUSH1 0x04
0000065d: PUSH2 0x22a8
00000660: JUMP
00000661: JUMPDEST
00000662: PUSH2 0x12a8
00000665: JUMP
00000666: JUMPDEST
00000667: CALLVALUE
00000668: DUP1
00000669: ISZERO
0000066a: PUSH2 0x0672
0000066d: JUMPI
0000066e: PUSH1 0x00
00000670: DUP1
00000671: REVERT
00000672: JUMPDEST
00000673: POP
00000674: PUSH2 0x0276
00000677: PUSH2 0x0681
0000067a: CALLDATASIZE
0000067b: PUSH1 0x04
0000067d: PUSH2 0x22a8
00000680: JUMP
00000681: JUMPDEST
00000682: PUSH2 0x131c
00000685: JUMP
00000686: JUMPDEST
00000687: CALLVALUE
00000688: DUP1
00000689: ISZERO
0000068a: PUSH2 0x0692
0000068d: JUMPI
0000068e: PUSH1 0x00
00000690: DUP1
00000691: REVERT
00000692: JUMPDEST
00000693: POP
00000694: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
000006b5: PUSH2 0x024b
000006b8: JUMP
000006b9: JUMPDEST
000006ba: CALLVALUE
000006bb: DUP1
000006bc: ISZERO
000006bd: PUSH2 0x06c5
000006c0: JUMPI
000006c1: PUSH1 0x00
000006c3: DUP1
000006c4: REVERT
000006c5: JUMPDEST
000006c6: POP
000006c7: PUSH2 0x03cf
000006ca: PUSH2 0x06d4
000006cd: CALLDATASIZE
000006ce: PUSH1 0x04
000006d0: PUSH2 0x24ea
000006d3: JUMP
000006d4: JUMPDEST
000006d5: PUSH2 0x135a
000006d8: JUMP
000006d9: JUMPDEST
000006da: PUSH1 0x40
000006dc: DUP1
000006dd: MLOAD
000006de: DUP1
000006df: DUP3
000006e0: ADD
000006e1: SWAP1
000006e2: SWAP2
000006e3: MSTORE
000006e4: PUSH1 0x00
000006e6: DUP1
000006e7: DUP3
000006e8: MSTORE
000006e9: PUSH1 0x20
000006eb: DUP3
000006ec: ADD
000006ed: MSTORE
000006ee: PUSH1 0x60
000006f0: PUSH2 0x070c
000006f3: PUSH1 0x40
000006f5: MLOAD
000006f6: DUP1
000006f7: PUSH1 0x40
000006f9: ADD
000006fa: PUSH1 0x40
000006fc: MSTORE
000006fd: DUP1
000006fe: PUSH1 0x00
00000700: DUP2
00000701: MSTORE
00000702: PUSH1 0x20
00000704: ADD
00000705: PUSH1 0x00
00000707: DUP2
00000708: MSTORE
00000709: POP
0000070a: SWAP1
0000070b: JUMP
0000070c: JUMPDEST
0000070d: PUSH1 0x40
0000070f: DUP1
00000710: MLOAD
00000711: DUP1
00000712: DUP3
00000713: ADD
00000714: DUP3
00000715: MSTORE
00000716: PUSH1 0x00
00000718: DUP1
00000719: DUP3
0000071a: MSTORE
0000071b: PUSH1 0x01
0000071d: PUSH1 0x01
0000071f: PUSH1 0x40
00000721: SHL
00000722: SUB
00000723: PUSH1 0x20
00000725: DUP1
00000726: DUP5
00000727: ADD
00000728: DUP3
00000729: SWAP1
0000072a: MSTORE
0000072b: DUP5
0000072c: MLOAD
0000072d: DUP4
0000072e: DUP2
0000072f: MSTORE
00000730: SWAP1
00000731: DUP2
00000732: ADD
00000733: SWAP1
00000734: SWAP5
00000735: MSTORE
00000736: SWAP2
00000737: SWAP6
00000738: POP
00000739: SWAP2
0000073a: DUP3
0000073b: PUSH2 0x0767
0000073e: JUMP
0000073f: JUMPDEST
00000740: PUSH1 0x40
00000742: DUP1
00000743: MLOAD
00000744: DUP1
00000745: DUP3
00000746: ADD
00000747: SWAP1
00000748: SWAP2
00000749: MSTORE
0000074a: PUSH1 0x00
0000074c: DUP2
0000074d: MSTORE
0000074e: PUSH1 0x60
00000750: PUSH1 0x20
00000752: DUP3
00000753: ADD
00000754: MSTORE
00000755: DUP2
00000756: MSTORE
00000757: PUSH1 0x20
00000759: ADD
0000075a: SWAP1
0000075b: PUSH1 0x01
0000075d: SWAP1
0000075e: SUB
0000075f: SWAP1
00000760: DUP2
00000761: PUSH2 0x073f
00000764: JUMPI
00000765: SWAP1
00000766: POP
00000767: JUMPDEST
00000768: POP
00000769: SWAP4
0000076a: POP
0000076b: PUSH1 0x00
0000076d: DUP1
0000076e: PUSH2 0x078c
00000771: PUSH1 0x40
00000773: DUP10
00000774: ADD
00000775: CALLDATALOAD
00000776: PUSH1 0x60
00000778: DUP11
00000779: ADD
0000077a: CALLDATALOAD
0000077b: PUSH2 0x0787
0000077e: PUSH1 0x20
00000780: DUP13
00000781: ADD
00000782: DUP13
00000783: PUSH2 0x23b0
00000786: JUMP
00000787: JUMPDEST
00000788: PUSH2 0x1378
0000078b: JUMP
0000078c: JUMPDEST
0000078d: PUSH1 0x40
0000078f: DUP1
00000790: MLOAD
00000791: DUP1
00000792: DUP3
00000793: ADD
00000794: SWAP1
00000795: SWAP2
00000796: MSTORE
00000797: SWAP2
00000798: DUP3
00000799: MSTORE
0000079a: PUSH1 0x20
0000079c: DUP3
0000079d: ADD
0000079e: MSTORE
0000079f: SWAP7
000007a0: SWAP9
000007a1: SWAP6
000007a2: SWAP8
000007a3: POP
000007a4: POP
000007a5: POP
000007a6: POP
000007a7: POP
000007a8: POP
000007a9: JUMP
000007aa: JUMPDEST
000007ab: PUSH1 0x00
000007ad: DUP1
000007ae: PUSH32 0x41db8a78b0206aba5c54bcbfc2bda0d84082a84eb88e680379a57b9e9f653c00
000007cf: JUMPDEST
000007d0: SLOAD
000007d1: PUSH1 0x01
000007d3: PUSH1 0x01
000007d5: PUSH1 0xa0
000007d7: SHL
000007d8: SUB
000007d9: AND
000007da: SWAP3
000007db: SWAP2
000007dc: POP
000007dd: POP
000007de: JUMP
000007df: JUMPDEST
000007e0: PUSH32 0x0000000000000000000000001a44076050125825900e736c501f859c50fe728c
00000801: PUSH1 0x01
00000803: PUSH1 0x01
00000805: PUSH1 0xa0
00000807: SHL
00000808: SUB
00000809: AND
0000080a: CALLER
0000080b: EQ
0000080c: PUSH2 0x082f
0000080f: JUMPI
00000810: PUSH1 0x40
00000812: MLOAD
00000813: PUSH4 0x91ac5e4f
00000818: PUSH1 0xe0
0000081a: SHL
0000081b: DUP2
0000081c: MSTORE
0000081d: CALLER
0000081e: PUSH1 0x04
00000820: DUP3
00000821: ADD
00000822: MSTORE
00000823: PUSH1 0x24
00000825: ADD
00000826: JUMPDEST
00000827: PUSH1 0x40
00000829: MLOAD
0000082a: DUP1
0000082b: SWAP2
0000082c: SUB
0000082d: SWAP1
0000082e: REVERT
0000082f: JUMPDEST
00000830: PUSH1 0x20
00000832: DUP8
00000833: ADD
00000834: DUP1
00000835: CALLDATALOAD
00000836: SWAP1
00000837: PUSH2 0x0849
0000083a: SWAP1
0000083b: PUSH2 0x0844
0000083e: SWAP1
0000083f: DUP11
00000840: PUSH2 0x23b0
00000843: JUMP
00000844: JUMPDEST
00000845: PUSH2 0x13bc
00000848: JUMP
00000849: JUMPDEST
0000084a: EQ
0000084b: PUSH2 0x0887
0000084e: JUMPI
0000084f: PUSH2 0x085b
00000852: PUSH1 0x20
00000854: DUP9
00000855: ADD
00000856: DUP9
00000857: PUSH2 0x23b0
0000085a: JUMP
0000085b: JUMPDEST
0000085c: PUSH1 0x40
0000085e: MLOAD
0000085f: PUSH4 0x309afaf3
00000864: PUSH1 0xe2
00000866: SHL
00000867: DUP2
00000868: MSTORE
00000869: PUSH4 0xffffffff
0000086e: SWAP1
0000086f: SWAP2
00000870: AND
00000871: PUSH1 0x04
00000873: DUP3
00000874: ADD
00000875: MSTORE
00000876: PUSH1 0x20
00000878: DUP9
00000879: ADD
0000087a: CALLDATALOAD
0000087b: PUSH1 0x24
0000087d: DUP3
0000087e: ADD
0000087f: MSTORE
00000880: PUSH1 0x44
00000882: ADD
00000883: PUSH2 0x0826
00000886: JUMP
00000887: JUMPDEST
00000888: PUSH2 0x0896
0000088b: DUP8
0000088c: DUP8
0000088d: DUP8
0000088e: DUP8
0000088f: DUP8
00000890: DUP8
00000891: DUP8
00000892: PUSH2 0x140e
00000895: JUMP
00000896: JUMPDEST
00000897: POP
00000898: POP
00000899: POP
0000089a: POP
0000089b: POP
0000089c: POP
0000089d: POP
0000089e: JUMP
0000089f: JUMPDEST
000008a0: PUSH2 0x08a7
000008a3: PUSH2 0x1575
000008a6: JUMP
000008a7: JUMPDEST
000008a8: PUSH4 0xffffffff
000008ad: DUP3
000008ae: AND
000008af: PUSH1 0x00
000008b1: DUP2
000008b2: DUP2
000008b3: MSTORE
000008b4: PUSH1 0x00
000008b6: DUP1
000008b7: MLOAD
000008b8: PUSH1 0x20
000008ba: PUSH2 0x2d47
000008bd: DUP4
000008be: CODECOPY
000008bf: DUP2
000008c0: MLOAD
000008c1: SWAP2
000008c2: MSTORE
000008c3: PUSH1 0x20
000008c5: DUP2
000008c6: DUP2
000008c7: MSTORE
000008c8: PUSH1 0x40
000008ca: SWAP3
000008cb: DUP4
000008cc: SWAP1
000008cd: KECCAK256
000008ce: DUP6
000008cf: SWAP1
000008d0: SSTORE
000008d1: DUP3
000008d2: MLOAD
000008d3: SWAP4
000008d4: DUP5
000008d5: MSTORE
000008d6: DUP4
000008d7: ADD
000008d8: DUP5
000008d9: SWAP1
000008da: MSTORE
000008db: SWAP2
000008dc: PUSH32 0x238399d427b947898edb290f5ff0f9109849b1c3ba196a42e35f00c50a54b98b
000008fd: SWAP2
000008fe: ADD
000008ff: JUMPDEST
00000900: PUSH1 0x40
00000902: MLOAD
00000903: DUP1
00000904: SWAP2
00000905: SUB
00000906: SWAP1
00000907: LOG1
00000908: POP
00000909: POP
0000090a: POP
0000090b: JUMP
0000090c: JUMPDEST
0000090d: PUSH1 0x40
0000090f: DUP1
00000910: MLOAD
00000911: DUP1
00000912: DUP3
00000913: ADD
00000914: SWAP1
00000915: SWAP2
00000916: MSTORE
00000917: PUSH1 0x00
00000919: DUP1
0000091a: DUP3
0000091b: MSTORE
0000091c: PUSH1 0x20
0000091e: DUP3
0000091f: ADD
00000920: MSTORE
00000921: PUSH1 0x00
00000923: PUSH2 0x093c
00000926: PUSH1 0x40
00000928: DUP6
00000929: ADD
0000092a: CALLDATALOAD
0000092b: PUSH1 0x60
0000092d: DUP7
0000092e: ADD
0000092f: CALLDATALOAD
00000930: PUSH2 0x0787
00000933: PUSH1 0x20
00000935: DUP9
00000936: ADD
00000937: DUP9
00000938: PUSH2 0x23b0
0000093b: JUMP
0000093c: JUMPDEST
0000093d: SWAP2
0000093e: POP
0000093f: POP
00000940: PUSH1 0x00
00000942: DUP1
00000943: PUSH2 0x094c
00000946: DUP7
00000947: DUP5
00000948: PUSH2 0x15a7
0000094b: JUMP
0000094c: JUMPDEST
0000094d: SWAP1
0000094e: SWAP3
0000094f: POP
00000950: SWAP1
00000951: POP
00000952: PUSH2 0x0969
00000955: PUSH2 0x0961
00000958: PUSH1 0x20
0000095a: DUP9
0000095b: ADD
0000095c: DUP9
0000095d: PUSH2 0x23b0
00000960: JUMP
00000961: JUMPDEST
00000962: DUP4
00000963: DUP4
00000964: DUP9
00000965: PUSH2 0x16ec
00000968: JUMP
00000969: JUMPDEST
0000096a: SWAP4
0000096b: POP
0000096c: POP
0000096d: POP
0000096e: POP
0000096f: JUMPDEST
00000970: SWAP3
00000971: SWAP2
00000972: POP
00000973: POP
00000974: JUMP
00000975: JUMPDEST
00000976: PUSH4 0xffffffff
0000097b: DUP3
0000097c: AND
0000097d: PUSH1 0x00
0000097f: SWAP1
00000980: DUP2
00000981: MSTORE
00000982: PUSH32 0x8d2bda5d9f6ffb5796910376005392955773acee5548d0fcdb10e7c264ea0000
000009a3: PUSH1 0x20
000009a5: DUP2
000009a6: DUP2
000009a7: MSTORE
000009a8: PUSH1 0x40
000009aa: DUP1
000009ab: DUP5
000009ac: KECCAK256
000009ad: PUSH2 0xffff
000009b0: DUP7
000009b1: AND
000009b2: DUP6
000009b3: MSTORE
000009b4: SWAP1
000009b5: SWAP2
000009b6: MSTORE
000009b7: SWAP1
000009b8: SWAP2
000009b9: KECCAK256
000009ba: DUP1
000009bb: SLOAD
000009bc: PUSH1 0x60
000009be: SWAP3
000009bf: SWAP2
000009c0: SWAP1
000009c1: PUSH2 0x09c9
000009c4: SWAP1
000009c5: PUSH2 0x251c
000009c8: JUMP
000009c9: JUMPDEST
000009ca: DUP1
000009cb: PUSH1 0x1f
000009cd: ADD
000009ce: PUSH1 0x20
000009d0: DUP1
000009d1: SWAP2
000009d2: DIV
000009d3: MUL
000009d4: PUSH1 0x20
000009d6: ADD
000009d7: PUSH1 0x40
000009d9: MLOAD
000009da: SWAP1
000009db: DUP2
000009dc: ADD
000009dd: PUSH1 0x40
000009df: MSTORE
000009e0: DUP1
000009e1: SWAP3
000009e2: SWAP2
000009e3: SWAP1
000009e4: DUP2
000009e5: DUP2
000009e6: MSTORE
000009e7: PUSH1 0x20
000009e9: ADD
000009ea: DUP3
000009eb: DUP1
000009ec: SLOAD
000009ed: PUSH2 0x09f5
000009f0: SWAP1
000009f1: PUSH2 0x251c
000009f4: JUMP
000009f5: JUMPDEST
000009f6: DUP1
000009f7: ISZERO
000009f8: PUSH2 0x0a42
000009fb: JUMPI
000009fc: DUP1
000009fd: PUSH1 0x1f
000009ff: LT
00000a00: PUSH2 0x0a17
00000a03: JUMPI
00000a04: PUSH2 0x0100
00000a07: DUP1
00000a08: DUP4
00000a09: SLOAD
00000a0a: DIV
00000a0b: MUL
00000a0c: DUP4
00000a0d: MSTORE
00000a0e: SWAP2
00000a0f: PUSH1 0x20
00000a11: ADD
00000a12: SWAP2
00000a13: PUSH2 0x0a42
00000a16: JUMP
00000a17: JUMPDEST
00000a18: DUP3
00000a19: ADD
00000a1a: SWAP2
00000a1b: SWAP1
00000a1c: PUSH1 0x00
00000a1e: MSTORE
00000a1f: PUSH1 0x20
00000a21: PUSH1 0x00
00000a23: KECCAK256
00000a24: SWAP1
00000a25: JUMPDEST
00000a26: DUP2
00000a27: SLOAD
00000a28: DUP2
00000a29: MSTORE
00000a2a: SWAP1
00000a2b: PUSH1 0x01
00000a2d: ADD
00000a2e: SWAP1
00000a2f: PUSH1 0x20
00000a31: ADD
00000a32: DUP1
00000a33: DUP4
00000a34: GT
00000a35: PUSH2 0x0a25
00000a38: JUMPI
00000a39: DUP3
00000a3a: SWAP1
00000a3b: SUB
00000a3c: PUSH1 0x1f
00000a3e: AND
00000a3f: DUP3
00000a40: ADD
00000a41: SWAP2
00000a42: JUMPDEST
00000a43: POP
00000a44: POP
00000a45: POP
00000a46: POP
00000a47: POP
00000a48: SWAP2
00000a49: POP
00000a4a: POP
00000a4b: SWAP3
00000a4c: SWAP2
00000a4d: POP
00000a4e: POP
00000a4f: JUMP
00000a50: JUMPDEST
00000a51: PUSH2 0x0a58
00000a54: PUSH2 0x1575
00000a57: JUMP
00000a58: JUMPDEST
00000a59: PUSH32 0x41db8a78b0206aba5c54bcbfc2bda0d84082a84eb88e680379a57b9e9f653c00
00000a7a: DUP1
00000a7b: SLOAD
00000a7c: PUSH1 0x01
00000a7e: PUSH1 0x01
00000a80: PUSH1 0xa0
00000a82: SHL
00000a83: SUB
00000a84: NOT
00000a85: AND
00000a86: PUSH1 0x01
00000a88: PUSH1 0x01
00000a8a: PUSH1 0xa0
00000a8c: SHL
00000a8d: SUB
00000a8e: DUP4
00000a8f: AND
00000a90: SWAP1
00000a91: DUP2
00000a92: OR
00000a93: DUP3
00000a94: SSTORE
00000a95: PUSH1 0x40
00000a97: MLOAD
00000a98: SWAP1
00000a99: DUP2
00000a9a: MSTORE
00000a9b: PUSH32 0xf0be4f1e87349231d80c36b33f9e8639658eeaf474014dee15a3e6a4d4414197
00000abc: SWAP1
00000abd: PUSH1 0x20
00000abf: ADD
00000ac0: JUMPDEST
00000ac1: PUSH1 0x40
00000ac3: MLOAD
00000ac4: DUP1
00000ac5: SWAP2
00000ac6: SUB
00000ac7: SWAP1
00000ac8: LOG1
00000ac9: POP
00000aca: POP
00000acb: JUMP
00000acc: JUMPDEST
00000acd: PUSH2 0x0ad4
00000ad0: PUSH2 0x1575
00000ad3: JUMP
00000ad4: JUMPDEST
00000ad5: PUSH2 0x0ade
00000ad8: PUSH1 0x00
00000ada: PUSH2 0x17cd
00000add: JUMP
00000ade: JUMPDEST
00000adf: JUMP
00000ae0: JUMPDEST
00000ae1: PUSH1 0x01
00000ae3: PUSH1 0x01
00000ae5: PUSH1 0xa0
00000ae7: SHL
00000ae8: SUB
00000ae9: DUP2
00000aea: AND
00000aeb: ADDRESS
00000aec: EQ
00000aed: JUMPDEST
00000aee: SWAP5
00000aef: SWAP4
00000af0: POP
00000af1: POP
00000af2: POP
00000af3: POP
00000af4: JUMP
00000af5: JUMPDEST
00000af6: PUSH1 0x00
00000af8: DUP1
00000af9: PUSH32 0x9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300
00000b1a: PUSH2 0x07cf
00000b1d: JUMP
00000b1e: JUMPDEST
00000b1f: PUSH1 0x00
00000b21: DUP1
00000b22: PUSH32 0xefb041d771d6daaa55702fff6eb740d63ba559a75d2d1d3e151c78ff2480b600
00000b43: PUSH2 0x07cf
00000b46: JUMP
00000b47: JUMPDEST
00000b48: PUSH2 0x0b4f
00000b4b: PUSH2 0x1575
00000b4e: JUMP
00000b4f: JUMPDEST
00000b50: PUSH32 0x8d2bda5d9f6ffb5796910376005392955773acee5548d0fcdb10e7c264ea0000
00000b71: PUSH1 0x00
00000b73: JUMPDEST
00000b74: DUP3
00000b75: DUP2
00000b76: LT
00000b77: ISZERO
00000b78: PUSH2 0x0c96
00000b7b: JUMPI
00000b7c: PUSH2 0x0bb5
00000b7f: DUP5
00000b80: DUP5
00000b81: DUP4
00000b82: DUP2
00000b83: DUP2
00000b84: LT
00000b85: PUSH2 0x0b90
00000b88: JUMPI
00000b89: PUSH2 0x0b90
00000b8c: PUSH2 0x2550
00000b8f: JUMP
00000b90: JUMPDEST
00000b91: SWAP1
00000b92: POP
00000b93: PUSH1 0x20
00000b95: MUL
00000b96: DUP2
00000b97: ADD
00000b98: SWAP1
00000b99: PUSH2 0x0ba2
00000b9c: SWAP2
00000b9d: SWAP1
00000b9e: PUSH2 0x2566
00000ba1: JUMP
00000ba2: JUMPDEST
00000ba3: PUSH2 0x0bb0
00000ba6: SWAP1
00000ba7: PUSH1 0x40
00000ba9: DUP2
00000baa: ADD
00000bab: SWAP1
00000bac: PUSH2 0x2586
00000baf: JUMP
00000bb0: JUMPDEST
00000bb1: PUSH2 0x183e
00000bb4: JUMP
00000bb5: JUMPDEST
00000bb6: DUP4
00000bb7: DUP4
00000bb8: DUP3
00000bb9: DUP2
00000bba: DUP2
00000bbb: LT
00000bbc: PUSH2 0x0bc7
00000bbf: JUMPI
00000bc0: PUSH2 0x0bc7
00000bc3: PUSH2 0x2550
00000bc6: JUMP
00000bc7: JUMPDEST
00000bc8: SWAP1
00000bc9: POP
00000bca: PUSH1 0x20
00000bcc: MUL
00000bcd: DUP2
00000bce: ADD
00000bcf: SWAP1
00000bd0: PUSH2 0x0bd9
00000bd3: SWAP2
00000bd4: SWAP1
00000bd5: PUSH2 0x2566
00000bd8: JUMP
00000bd9: JUMPDEST
00000bda: PUSH2 0x0be7
00000bdd: SWAP1
00000bde: PUSH1 0x40
00000be0: DUP2
00000be1: ADD
00000be2: SWAP1
00000be3: PUSH2 0x2586
00000be6: JUMP
00000be7: JUMPDEST
00000be8: DUP4
00000be9: PUSH1 0x00
00000beb: DUP8
00000bec: DUP8
00000bed: DUP7
00000bee: DUP2
00000bef: DUP2
00000bf0: LT
00000bf1: PUSH2 0x0bfc
00000bf4: JUMPI
00000bf5: PUSH2 0x0bfc
00000bf8: PUSH2 0x2550
00000bfb: JUMP
00000bfc: JUMPDEST
00000bfd: SWAP1
00000bfe: POP
00000bff: PUSH1 0x20
00000c01: MUL
00000c02: DUP2
00000c03: ADD
00000c04: SWAP1
00000c05: PUSH2 0x0c0e
00000c08: SWAP2
00000c09: SWAP1
00000c0a: PUSH2 0x2566
00000c0d: JUMP
00000c0e: JUMPDEST
00000c0f: PUSH2 0x0c1c
00000c12: SWAP1
00000c13: PUSH1 0x20
00000c15: DUP2
00000c16: ADD
00000c17: SWAP1
00000c18: PUSH2 0x23b0
00000c1b: JUMP
00000c1c: JUMPDEST
00000c1d: PUSH4 0xffffffff
00000c22: AND
00000c23: PUSH4 0xffffffff
00000c28: AND
00000c29: DUP2
00000c2a: MSTORE
00000c2b: PUSH1 0x20
00000c2d: ADD
00000c2e: SWAP1
00000c2f: DUP2
00000c30: MSTORE
00000c31: PUSH1 0x20
00000c33: ADD
00000c34: PUSH1 0x00
00000c36: KECCAK256
00000c37: PUSH1 0x00
00000c39: DUP8
00000c3a: DUP8
00000c3b: DUP7
00000c3c: DUP2
00000c3d: DUP2
00000c3e: LT
00000c3f: PUSH2 0x0c4a
00000c42: JUMPI
00000c43: PUSH2 0x0c4a
00000c46: PUSH2 0x2550
00000c49: JUMP
00000c4a: JUMPDEST
00000c4b: SWAP1
00000c4c: POP
00000c4d: PUSH1 0x20
00000c4f: MUL
00000c50: DUP2
00000c51: ADD
00000c52: SWAP1
00000c53: PUSH2 0x0c5c
00000c56: SWAP2
00000c57: SWAP1
00000c58: PUSH2 0x2566
00000c5b: JUMP
00000c5c: JUMPDEST
00000c5d: PUSH2 0x0c6d
00000c60: SWAP1
00000c61: PUSH1 0x40
00000c63: DUP2
00000c64: ADD
00000c65: SWAP1
00000c66: PUSH1 0x20
00000c68: ADD
00000c69: PUSH2 0x25cc
00000c6c: JUMP
00000c6d: JUMPDEST
00000c6e: PUSH2 0xffff
00000c71: AND
00000c72: DUP2
00000c73: MSTORE
00000c74: PUSH1 0x20
00000c76: DUP2
00000c77: ADD
00000c78: SWAP2
00000c79: SWAP1
00000c7a: SWAP2
00000c7b: MSTORE
00000c7c: PUSH1 0x40
00000c7e: ADD
00000c7f: PUSH1 0x00
00000c81: KECCAK256
00000c82: SWAP2
00000c83: PUSH2 0x0c8d
00000c86: SWAP2
00000c87: SWAP1
00000c88: DUP4
00000c89: PUSH2 0x262f
00000c8c: JUMP
00000c8d: JUMPDEST
00000c8e: POP
00000c8f: PUSH1 0x01
00000c91: ADD
00000c92: PUSH2 0x0b73
00000c95: JUMP
00000c96: JUMPDEST
00000c97: POP
00000c98: PUSH32 0xbe4864a8e820971c0247f5992e2da559595f7bf076a21cb5928d443d2a13b674
00000cb9: DUP4
00000cba: DUP4
00000cbb: PUSH1 0x40
00000cbd: MLOAD
00000cbe: PUSH2 0x08ff
00000cc1: SWAP3
00000cc2: SWAP2
00000cc3: SWAP1
00000cc4: PUSH2 0x2717
00000cc7: JUMP
00000cc8: JUMPDEST
00000cc9: PUSH4 0xffffffff
00000cce: DUP5
00000ccf: AND
00000cd0: PUSH1 0x00
00000cd2: SWAP1
00000cd3: DUP2
00000cd4: MSTORE
00000cd5: PUSH32 0x8d2bda5d9f6ffb5796910376005392955773acee5548d0fcdb10e7c264ea0000
00000cf6: PUSH1 0x20
00000cf8: DUP2
00000cf9: DUP2
00000cfa: MSTORE
00000cfb: PUSH1 0x40
00000cfd: DUP1
00000cfe: DUP5
00000cff: KECCAK256
00000d00: PUSH2 0xffff
00000d03: DUP9
00000d04: AND
00000d05: DUP6
00000d06: MSTORE
00000d07: SWAP1
00000d08: SWAP2
00000d09: MSTORE
00000d0a: DUP3
00000d0b: KECCAK256
00000d0c: DUP1
00000d0d: SLOAD
00000d0e: PUSH1 0x60
00000d10: SWAP4
00000d11: SWAP2
00000d12: SWAP1
00000d13: PUSH2 0x0d1b
00000d16: SWAP1
00000d17: PUSH2 0x251c
00000d1a: JUMP
00000d1b: JUMPDEST
00000d1c: DUP1
00000d1d: PUSH1 0x1f
00000d1f: ADD
00000d20: PUSH1 0x20
00000d22: DUP1
00000d23: SWAP2
00000d24: DIV
00000d25: MUL
00000d26: PUSH1 0x20
00000d28: ADD
00000d29: PUSH1 0x40
00000d2b: MLOAD
00000d2c: SWAP1
00000d2d: DUP2
00000d2e: ADD
00000d2f: PUSH1 0x40
00000d31: MSTORE
00000d32: DUP1
00000d33: SWAP3
00000d34: SWAP2
00000d35: SWAP1
00000d36: DUP2
00000d37: DUP2
00000d38: MSTORE
00000d39: PUSH1 0x20
00000d3b: ADD
00000d3c: DUP3
00000d3d: DUP1
00000d3e: SLOAD
00000d3f: PUSH2 0x0d47
00000d42: SWAP1
00000d43: PUSH2 0x251c
00000d46: JUMP
00000d47: JUMPDEST
00000d48: DUP1
00000d49: ISZERO
00000d4a: PUSH2 0x0d94
00000d4d: JUMPI
00000d4e: DUP1
00000d4f: PUSH1 0x1f
00000d51: LT
00000d52: PUSH2 0x0d69
00000d55: JUMPI
00000d56: PUSH2 0x0100
00000d59: DUP1
00000d5a: DUP4
00000d5b: SLOAD
00000d5c: DIV
00000d5d: MUL
00000d5e: DUP4
00000d5f: MSTORE
00000d60: SWAP2
00000d61: PUSH1 0x20
00000d63: ADD
00000d64: SWAP2
00000d65: PUSH2 0x0d94
00000d68: JUMP
00000d69: JUMPDEST
00000d6a: DUP3
00000d6b: ADD
00000d6c: SWAP2
00000d6d: SWAP1
00000d6e: PUSH1 0x00
00000d70: MSTORE
00000d71: PUSH1 0x20
00000d73: PUSH1 0x00
00000d75: KECCAK256
00000d76: SWAP1
00000d77: JUMPDEST
00000d78: DUP2
00000d79: SLOAD
00000d7a: DUP2
00000d7b: MSTORE
00000d7c: SWAP1
00000d7d: PUSH1 0x01
00000d7f: ADD
00000d80: SWAP1
00000d81: PUSH1 0x20
00000d83: ADD
00000d84: DUP1
00000d85: DUP4
00000d86: GT
00000d87: PUSH2 0x0d77
00000d8a: JUMPI
00000d8b: DUP3
00000d8c: SWAP1
00000d8d: SUB
00000d8e: PUSH1 0x1f
00000d90: AND
00000d91: DUP3
00000d92: ADD
00000d93: SWAP2
00000d94: JUMPDEST
00000d95: POP
00000d96: POP
00000d97: POP
00000d98: POP
00000d99: POP
00000d9a: SWAP1
00000d9b: POP
00000d9c: DUP1
00000d9d: MLOAD
00000d9e: PUSH1 0x00
00000da0: SUB
00000da1: PUSH2 0x0de5
00000da4: JUMPI
00000da5: DUP5
00000da6: DUP5
00000da7: DUP1
00000da8: DUP1
00000da9: PUSH1 0x1f
00000dab: ADD
00000dac: PUSH1 0x20
00000dae: DUP1
00000daf: SWAP2
00000db0: DIV
00000db1: MUL
00000db2: PUSH1 0x20
00000db4: ADD
00000db5: PUSH1 0x40
00000db7: MLOAD
00000db8: SWAP1
00000db9: DUP2
00000dba: ADD
00000dbb: PUSH1 0x40
00000dbd: MSTORE
00000dbe: DUP1
00000dbf: SWAP4
00000dc0: SWAP3
00000dc1: SWAP2
00000dc2: SWAP1
00000dc3: DUP2
00000dc4: DUP2
00000dc5: MSTORE
00000dc6: PUSH1 0x20
00000dc8: ADD
00000dc9: DUP4
00000dca: DUP4
00000dcb: DUP1
00000dcc: DUP3
00000dcd: DUP5
00000dce: CALLDATACOPY
00000dcf: PUSH1 0x00
00000dd1: SWAP3
00000dd2: ADD
00000dd3: SWAP2
00000dd4: SWAP1
00000dd5: SWAP2
00000dd6: MSTORE
00000dd7: POP
00000dd8: SWAP3
00000dd9: SWAP6
00000dda: POP
00000ddb: PUSH2 0x0aed
00000dde: SWAP5
00000ddf: POP
00000de0: POP
00000de1: POP
00000de2: POP
00000de3: POP
00000de4: JUMP
00000de5: JUMPDEST
00000de6: PUSH1 0x00
00000de8: DUP5
00000de9: SWAP1
00000dea: SUB
00000deb: PUSH2 0x0df7
00000dee: JUMPI
00000def: SWAP2
00000df0: POP
00000df1: PUSH2 0x0aed
00000df4: SWAP1
00000df5: POP
00000df6: JUMP
00000df7: JUMPDEST
00000df8: PUSH1 0x02
00000dfa: DUP5
00000dfb: LT
00000dfc: PUSH2 0x0e41
00000dff: JUMPI
00000e00: PUSH2 0x0e09
00000e03: DUP6
00000e04: DUP6
00000e05: PUSH2 0x183e
00000e08: JUMP
00000e09: JUMPDEST
00000e0a: DUP1
00000e0b: PUSH2 0x0e17
00000e0e: DUP6
00000e0f: PUSH1 0x02
00000e11: DUP2
00000e12: DUP10
00000e13: PUSH2 0x27fb
00000e16: JUMP
00000e17: JUMPDEST
00000e18: PUSH1 0x40
00000e1a: MLOAD
00000e1b: PUSH1 0x20
00000e1d: ADD
00000e1e: PUSH2 0x0e29
00000e21: SWAP4
00000e22: SWAP3
00000e23: SWAP2
00000e24: SWAP1
00000e25: PUSH2 0x2825
00000e28: JUMP
00000e29: JUMPDEST
00000e2a: PUSH1 0x40
00000e2c: MLOAD
00000e2d: PUSH1 0x20
00000e2f: DUP2
00000e30: DUP4
00000e31: SUB
00000e32: SUB
00000e33: DUP2
00000e34: MSTORE
00000e35: SWAP1
00000e36: PUSH1 0x40
00000e38: MSTORE
00000e39: SWAP3
00000e3a: POP
00000e3b: POP
00000e3c: POP
00000e3d: PUSH2 0x0aed
00000e40: JUMP
00000e41: JUMPDEST
00000e42: DUP5
00000e43: DUP5
00000e44: PUSH1 0x40
00000e46: MLOAD
00000e47: PUSH4 0x9a6d49cd
00000e4c: PUSH1 0xe0
00000e4e: SHL
00000e4f: DUP2
00000e50: MSTORE
00000e51: PUSH1 0x04
00000e53: ADD
00000e54: PUSH2 0x0826
00000e57: SWAP3
00000e58: SWAP2
00000e59: SWAP1
00000e5a: PUSH2 0x284d
00000e5d: JUMP
00000e5e: JUMPDEST
00000e5f: PUSH1 0x00
00000e61: JUMPDEST
00000e62: DUP2
00000e63: DUP2
00000e64: LT
00000e65: ISZERO
00000e66: PUSH2 0x0f74
00000e69: JUMPI
00000e6a: CALLDATASIZE
00000e6b: DUP4
00000e6c: DUP4
00000e6d: DUP4
00000e6e: DUP2
00000e6f: DUP2
00000e70: LT
00000e71: PUSH2 0x0e7c
00000e74: JUMPI
00000e75: PUSH2 0x0e7c
00000e78: PUSH2 0x2550
00000e7b: JUMP
00000e7c: JUMPDEST
00000e7d: SWAP1
00000e7e: POP
00000e7f: PUSH1 0x20
00000e81: MUL
00000e82: DUP2
00000e83: ADD
00000e84: SWAP1
00000e85: PUSH2 0x0e8e
00000e88: SWAP2
00000e89: SWAP1
00000e8a: PUSH2 0x2861
00000e8d: JUMP
00000e8e: JUMPDEST
00000e8f: SWAP1
00000e90: POP
00000e91: PUSH2 0x0ece
00000e94: PUSH2 0x0ea0
00000e97: PUSH1 0x20
00000e99: DUP4
00000e9a: ADD
00000e9b: DUP4
00000e9c: PUSH2 0x23b0
00000e9f: JUMP
00000ea0: JUMPDEST
00000ea1: PUSH1 0x20
00000ea3: DUP4
00000ea4: ADD
00000ea5: CALLDATALOAD
00000ea6: PUSH4 0xffffffff
00000eab: SWAP2
00000eac: SWAP1
00000ead: SWAP2
00000eae: AND
00000eaf: PUSH1 0x00
00000eb1: SWAP1
00000eb2: DUP2
00000eb3: MSTORE
00000eb4: PUSH1 0x00
00000eb6: DUP1
00000eb7: MLOAD
00000eb8: PUSH1 0x20
00000eba: PUSH2 0x2d47
00000ebd: DUP4
00000ebe: CODECOPY
00000ebf: DUP2
00000ec0: MLOAD
00000ec1: SWAP2
00000ec2: MSTORE
00000ec3: PUSH1 0x20
00000ec5: MSTORE
00000ec6: PUSH1 0x40
00000ec8: SWAP1
00000ec9: KECCAK256
00000eca: SLOAD
00000ecb: EQ
00000ecc: SWAP1
00000ecd: JUMP
00000ece: JUMPDEST
00000ecf: PUSH2 0x0ed8
00000ed2: JUMPI
00000ed3: POP
00000ed4: PUSH2 0x0f6c
00000ed7: JUMP
00000ed8: JUMPDEST
00000ed9: ADDRESS
00000eda: PUSH4 0xd045a0dc
00000edf: PUSH1 0xc0
00000ee1: DUP4
00000ee2: ADD
00000ee3: CALLDATALOAD
00000ee4: DUP4
00000ee5: PUSH1 0xa0
00000ee7: DUP2
00000ee8: ADD
00000ee9: CALLDATALOAD
00000eea: PUSH2 0x0ef7
00000eed: PUSH2 0x0100
00000ef0: DUP4
00000ef1: ADD
00000ef2: DUP4
00000ef3: PUSH2 0x2586
00000ef6: JUMP
00000ef7: JUMPDEST
00000ef8: PUSH2 0x0f08
00000efb: PUSH2 0x0100
00000efe: DUP10
00000eff: ADD
00000f00: PUSH1 0xe0
00000f02: DUP11
00000f03: ADD
00000f04: PUSH2 0x22a8
00000f07: JUMP
00000f08: JUMPDEST
00000f09: PUSH2 0x0f16
00000f0c: PUSH2 0x0120
00000f0f: DUP11
00000f10: ADD
00000f11: DUP11
00000f12: PUSH2 0x2586
00000f15: JUMP
00000f16: JUMPDEST
00000f17: PUSH1 0x40
00000f19: MLOAD
00000f1a: DUP10
00000f1b: PUSH4 0xffffffff
00000f20: AND
00000f21: PUSH1 0xe0
00000f23: SHL
00000f24: DUP2
00000f25: MSTORE
00000f26: PUSH1 0x04
00000f28: ADD
00000f29: PUSH2 0x0f38
00000f2c: SWAP8
00000f2d: SWAP7
00000f2e: SWAP6
00000f2f: SWAP5
00000f30: SWAP4
00000f31: SWAP3
00000f32: SWAP2
00000f33: SWAP1
00000f34: PUSH2 0x288d
00000f37: JUMP
00000f38: JUMPDEST
00000f39: PUSH1 0x00
00000f3b: PUSH1 0x40
00000f3d: MLOAD
00000f3e: DUP1
00000f3f: DUP4
00000f40: SUB
00000f41: DUP2
00000f42: DUP6
00000f43: DUP9
00000f44: DUP1
00000f45: EXTCODESIZE
00000f46: ISZERO
00000f47: DUP1
00000f48: ISZERO
00000f49: PUSH2 0x0f51
00000f4c: JUMPI
00000f4d: PUSH1 0x00
00000f4f: DUP1
00000f50: REVERT
00000f51: JUMPDEST
00000f52: POP
00000f53: GAS
00000f54: CALL
00000f55: ISZERO
00000f56: DUP1
00000f57: ISZERO
00000f58: PUSH2 0x0f65
00000f5b: JUMPI
00000f5c: RETURNDATASIZE
00000f5d: PUSH1 0x00
00000f5f: DUP1
00000f60: RETURNDATACOPY
00000f61: RETURNDATASIZE
00000f62: PUSH1 0x00
00000f64: REVERT
00000f65: JUMPDEST
00000f66: POP
00000f67: POP
00000f68: POP
00000f69: POP
00000f6a: POP
00000f6b: POP
00000f6c: JUMPDEST
00000f6d: PUSH1 0x01
00000f6f: ADD
00000f70: PUSH2 0x0e61
00000f73: JUMP
00000f74: JUMPDEST
00000f75: POP
00000f76: CALLER
00000f77: PUSH1 0x01
00000f79: PUSH1 0x01
00000f7b: PUSH1 0xa0
00000f7d: SHL
00000f7e: SUB
00000f7f: AND
00000f80: PUSH4 0x8e9e7099
00000f85: PUSH1 0x40
00000f87: MLOAD
00000f88: DUP2
00000f89: PUSH4 0xffffffff
00000f8e: AND
00000f8f: PUSH1 0xe0
00000f91: SHL
00000f92: DUP2
00000f93: MSTORE
00000f94: PUSH1 0x04
00000f96: ADD
00000f97: PUSH1 0x00
00000f99: PUSH1 0x40
00000f9b: MLOAD
00000f9c: DUP1
00000f9d: DUP4
00000f9e: SUB
00000f9f: DUP2
00000fa0: DUP7
00000fa1: GAS
00000fa2: STATICCALL
00000fa3: ISZERO
00000fa4: DUP1
00000fa5: ISZERO
00000fa6: PUSH2 0x0fb3
00000fa9: JUMPI
00000faa: RETURNDATASIZE
00000fab: PUSH1 0x00
00000fad: DUP1
00000fae: RETURNDATACOPY
00000faf: RETURNDATASIZE
00000fb0: PUSH1 0x00
00000fb2: REVERT
00000fb3: JUMPDEST
00000fb4: POP
00000fb5: POP
00000fb6: POP
00000fb7: POP
00000fb8: PUSH1 0x40
00000fba: MLOAD
00000fbb: RETURNDATASIZE
00000fbc: PUSH1 0x00
00000fbe: DUP3
00000fbf: RETURNDATACOPY
00000fc0: PUSH1 0x1f
00000fc2: RETURNDATASIZE
00000fc3: SWAP1
00000fc4: DUP2
00000fc5: ADD
00000fc6: PUSH1 0x1f
00000fc8: NOT
00000fc9: AND
00000fca: DUP3
00000fcb: ADD
00000fcc: PUSH1 0x40
00000fce: MSTORE
00000fcf: PUSH2 0x0fdb
00000fd2: SWAP2
00000fd3: SWAP1
00000fd4: DUP2
00000fd5: ADD
00000fd6: SWAP1
00000fd7: PUSH2 0x293b
00000fda: JUMP
00000fdb: JUMPDEST
00000fdc: PUSH1 0x40
00000fde: MLOAD
00000fdf: PUSH4 0x8351eea7
00000fe4: PUSH1 0xe0
00000fe6: SHL
00000fe7: DUP2
00000fe8: MSTORE
00000fe9: PUSH1 0x04
00000feb: ADD
00000fec: PUSH2 0x0826
00000fef: SWAP2
00000ff0: SWAP1
00000ff1: PUSH2 0x2295
00000ff4: JUMP
00000ff5: JUMPDEST
00000ff6: PUSH1 0x00
00000ff8: PUSH2 0x0fff
00000ffb: PUSH2 0x1885
00000ffe: JUMP
00000fff: JUMPDEST
00001000: DUP1
00001001: SLOAD
00001002: SWAP1
00001003: SWAP2
00001004: POP
00001005: PUSH1 0xff
00001007: PUSH1 0x01
00001009: PUSH1 0x40
0000100b: SHL
0000100c: DUP3
0000100d: DIV
0000100e: AND
0000100f: ISZERO
00001010: SWAP1
00001011: PUSH1 0x01
00001013: PUSH1 0x01
00001015: PUSH1 0x40
00001017: SHL
00001018: SUB
00001019: AND
0000101a: PUSH1 0x00
0000101c: DUP2
0000101d: ISZERO
0000101e: DUP1
0000101f: ISZERO
00001020: PUSH2 0x1026
00001023: JUMPI
00001024: POP
00001025: DUP3
00001026: JUMPDEST
00001027: SWAP1
00001028: POP
00001029: PUSH1 0x00
0000102b: DUP3
0000102c: PUSH1 0x01
0000102e: PUSH1 0x01
00001030: PUSH1 0x40
00001032: SHL
00001033: SUB
00001034: AND
00001035: PUSH1 0x01
00001037: EQ
00001038: DUP1
00001039: ISZERO
0000103a: PUSH2 0x1042
0000103d: JUMPI
0000103e: POP
0000103f: ADDRESS
00001040: EXTCODESIZE
00001041: ISZERO
00001042: JUMPDEST
00001043: SWAP1
00001044: POP
00001045: DUP2
00001046: ISZERO
00001047: DUP1
00001048: ISZERO
00001049: PUSH2 0x1050
0000104c: JUMPI
0000104d: POP
0000104e: DUP1
0000104f: ISZERO
00001050: JUMPDEST
00001051: ISZERO
00001052: PUSH2 0x106e
00001055: JUMPI
00001056: PUSH1 0x40
00001058: MLOAD
00001059: PUSH4 0xf92ee8a9
0000105e: PUSH1 0xe0
00001060: SHL
00001061: DUP2
00001062: MSTORE
00001063: PUSH1 0x04
00001065: ADD
00001066: PUSH1 0x40
00001068: MLOAD
00001069: DUP1
0000106a: SWAP2
0000106b: SUB
0000106c: SWAP1
0000106d: REVERT
0000106e: JUMPDEST
0000106f: DUP5
00001070: SLOAD
00001071: PUSH8 0xffffffffffffffff
0000107a: NOT
0000107b: AND
0000107c: PUSH1 0x01
0000107e: OR
0000107f: DUP6
00001080: SSTORE
00001081: DUP4
00001082: ISZERO
00001083: PUSH2 0x1098
00001086: JUMPI
00001087: DUP5
00001088: SLOAD
00001089: PUSH1 0xff
0000108b: PUSH1 0x40
0000108d: SHL
0000108e: NOT
0000108f: AND
00001090: PUSH1 0x01
00001092: PUSH1 0x40
00001094: SHL
00001095: OR
00001096: DUP6
00001097: SSTORE
00001098: JUMPDEST
00001099: PUSH2 0x10a1
0000109c: DUP7
0000109d: PUSH2 0x18ae
000010a0: JUMP
000010a1: JUMPDEST
000010a2: PUSH2 0x10aa
000010a5: DUP7
000010a6: PUSH2 0x18bf
000010a9: JUMP
000010aa: JUMPDEST
000010ab: DUP4
000010ac: ISZERO
000010ad: PUSH2 0x10f0
000010b0: JUMPI
000010b1: DUP5
000010b2: SLOAD
000010b3: PUSH1 0xff
000010b5: PUSH1 0x40
000010b7: SHL
000010b8: NOT
000010b9: AND
000010ba: DUP6
000010bb: SSTORE
000010bc: PUSH1 0x40
000010be: MLOAD
000010bf: PUSH1 0x01
000010c1: DUP2
000010c2: MSTORE
000010c3: PUSH32 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2
000010e4: SWAP1
000010e5: PUSH1 0x20
000010e7: ADD
000010e8: PUSH1 0x40
000010ea: MLOAD
000010eb: DUP1
000010ec: SWAP2
000010ed: SUB
000010ee: SWAP1
000010ef: LOG1
000010f0: JUMPDEST
000010f1: POP
000010f2: POP
000010f3: POP
000010f4: POP
000010f5: POP
000010f6: POP
000010f7: JUMP
000010f8: JUMPDEST
000010f9: PUSH2 0x1100
000010fc: PUSH2 0x1f0d
000010ff: JUMP
00001100: JUMPDEST
00001101: PUSH1 0x40
00001103: DUP1
00001104: MLOAD
00001105: DUP1
00001106: DUP3
00001107: ADD
00001108: SWAP1
00001109: SWAP2
0000110a: MSTORE
0000110b: PUSH1 0x00
0000110d: DUP1
0000110e: DUP3
0000110f: MSTORE
00001110: PUSH1 0x20
00001112: DUP3
00001113: ADD
00001114: MSTORE
00001115: PUSH1 0x00
00001117: DUP1
00001118: PUSH2 0x1137
0000111b: CALLER
0000111c: PUSH1 0x40
0000111e: DUP10
0000111f: ADD
00001120: CALLDATALOAD
00001121: PUSH1 0x60
00001123: DUP11
00001124: ADD
00001125: CALLDATALOAD
00001126: PUSH2 0x1132
00001129: PUSH1 0x20
0000112b: DUP13
0000112c: ADD
0000112d: DUP13
0000112e: PUSH2 0x23b0
00001131: JUMP
00001132: JUMPDEST
00001133: PUSH2 0x18d0
00001136: JUMP
00001137: JUMPDEST
00001138: SWAP2
00001139: POP
0000113a: SWAP2
0000113b: POP
0000113c: PUSH1 0x00
0000113e: DUP1
0000113f: PUSH2 0x1148
00001142: DUP10
00001143: DUP5
00001144: PUSH2 0x15a7
00001147: JUMP
00001148: JUMPDEST
00001149: SWAP1
0000114a: SWAP3
0000114b: POP
0000114c: SWAP1
0000114d: POP
0000114e: PUSH2 0x1174
00001151: PUSH2 0x115d
00001154: PUSH1 0x20
00001156: DUP12
00001157: ADD
00001158: DUP12
00001159: PUSH2 0x23b0
0000115c: JUMP
0000115d: JUMPDEST
0000115e: DUP4
0000115f: DUP4
00001160: PUSH2 0x116e
00001163: CALLDATASIZE
00001164: DUP14
00001165: SWAP1
00001166: SUB
00001167: DUP14
00001168: ADD
00001169: DUP14
0000116a: PUSH2 0x29dc
0000116d: JUMP
0000116e: JUMPDEST
0000116f: DUP12
00001170: PUSH2 0x1921
00001173: JUMP
00001174: JUMPDEST
00001175: PUSH1 0x40
00001177: DUP1
00001178: MLOAD
00001179: DUP1
0000117a: DUP3
0000117b: ADD
0000117c: SWAP1
0000117d: SWAP2
0000117e: MSTORE
0000117f: DUP6
00001180: DUP2
00001181: MSTORE
00001182: PUSH1 0x20
00001184: DUP1
00001185: DUP3
00001186: ADD
00001187: DUP7
00001188: SWAP1
00001189: MSTORE
0000118a: DUP3
0000118b: MLOAD
0000118c: SWAP3
0000118d: SWAP9
0000118e: POP
0000118f: SWAP1
00001190: SWAP7
00001191: POP
00001192: CALLER
00001193: SWAP2
00001194: SWAP1
00001195: PUSH32 0x85496b760a4b7f8d66384b9df21b381f5d1b1e79f229a47aaf4c232edc2fe59a
000011b6: SWAP1
000011b7: PUSH2 0x11c2
000011ba: SWAP1
000011bb: DUP14
000011bc: ADD
000011bd: DUP14
000011be: PUSH2 0x23b0
000011c1: JUMP
000011c2: JUMPDEST
000011c3: PUSH1 0x40
000011c5: DUP1
000011c6: MLOAD
000011c7: PUSH4 0xffffffff
000011cc: SWAP1
000011cd: SWAP3
000011ce: AND
000011cf: DUP3
000011d0: MSTORE
000011d1: PUSH1 0x20
000011d3: DUP3
000011d4: ADD
000011d5: DUP10
000011d6: SWAP1
000011d7: MSTORE
000011d8: DUP2
000011d9: ADD
000011da: DUP8
000011db: SWAP1
000011dc: MSTORE
000011dd: PUSH1 0x60
000011df: ADD
000011e0: PUSH1 0x40
000011e2: MLOAD
000011e3: DUP1
000011e4: SWAP2
000011e5: SUB
000011e6: SWAP1
000011e7: LOG3
000011e8: POP
000011e9: POP
000011ea: POP
000011eb: POP
000011ec: SWAP4
000011ed: POP
000011ee: SWAP4
000011ef: SWAP2
000011f0: POP
000011f1: POP
000011f2: JUMP
000011f3: JUMPDEST
000011f4: PUSH2 0x11fb
000011f7: PUSH2 0x1575
000011fa: JUMP
000011fb: JUMPDEST
000011fc: PUSH1 0x40
000011fe: MLOAD
000011ff: PUSH4 0xca5eb5e1
00001204: PUSH1 0xe0
00001206: SHL
00001207: DUP2
00001208: MSTORE
00001209: PUSH1 0x01
0000120b: PUSH1 0x01
0000120d: PUSH1 0xa0
0000120f: SHL
00001210: SUB
00001211: DUP3
00001212: DUP2
00001213: AND
00001214: PUSH1 0x04
00001216: DUP4
00001217: ADD
00001218: MSTORE
00001219: PUSH32 0x0000000000000000000000001a44076050125825900e736c501f859c50fe728c
0000123a: AND
0000123b: SWAP1
0000123c: PUSH4 0xca5eb5e1
00001241: SWAP1
00001242: PUSH1 0x24
00001244: ADD
00001245: PUSH1 0x00
00001247: PUSH1 0x40
00001249: MLOAD
0000124a: DUP1
0000124b: DUP4
0000124c: SUB
0000124d: DUP2
0000124e: PUSH1 0x00
00001250: DUP8
00001251: DUP1
00001252: EXTCODESIZE
00001253: ISZERO
00001254: DUP1
00001255: ISZERO
00001256: PUSH2 0x125e
00001259: JUMPI
0000125a: PUSH1 0x00
0000125c: DUP1
0000125d: REVERT
0000125e: JUMPDEST
0000125f: POP
00001260: GAS
00001261: CALL
00001262: ISZERO
00001263: DUP1
00001264: ISZERO
00001265: PUSH2 0x1272
00001268: JUMPI
00001269: RETURNDATASIZE
0000126a: PUSH1 0x00
0000126c: DUP1
0000126d: RETURNDATACOPY
0000126e: RETURNDATASIZE
0000126f: PUSH1 0x00
00001271: REVERT
00001272: JUMPDEST
00001273: POP
00001274: POP
00001275: POP
00001276: POP
00001277: POP
00001278: JUMP
00001279: JUMPDEST
0000127a: CALLER
0000127b: ADDRESS
0000127c: EQ
0000127d: PUSH2 0x1299
00001280: JUMPI
00001281: PUSH1 0x40
00001283: MLOAD
00001284: PUSH4 0x029a949d
00001289: PUSH1 0xe3
0000128b: SHL
0000128c: DUP2
0000128d: MSTORE
0000128e: PUSH1 0x04
00001290: ADD
00001291: PUSH1 0x40
00001293: MLOAD
00001294: DUP1
00001295: SWAP2
00001296: SUB
00001297: SWAP1
00001298: REVERT
00001299: JUMPDEST
0000129a: PUSH2 0x0896
0000129d: DUP8
0000129e: DUP8
0000129f: DUP8
000012a0: DUP8
000012a1: DUP8
000012a2: DUP8
000012a3: DUP8
000012a4: PUSH2 0x0887
000012a7: JUMP
000012a8: JUMPDEST
000012a9: PUSH2 0x12b0
000012ac: PUSH2 0x1575
000012af: JUMP
000012b0: JUMPDEST
000012b1: PUSH32 0xefb041d771d6daaa55702fff6eb740d63ba559a75d2d1d3e151c78ff2480b600
000012d2: DUP1
000012d3: SLOAD
000012d4: PUSH1 0x01
000012d6: PUSH1 0x01
000012d8: PUSH1 0xa0
000012da: SHL
000012db: SUB
000012dc: NOT
000012dd: AND
000012de: PUSH1 0x01
000012e0: PUSH1 0x01
000012e2: PUSH1 0xa0
000012e4: SHL
000012e5: SUB
000012e6: DUP4
000012e7: AND
000012e8: SWAP1
000012e9: DUP2
000012ea: OR
000012eb: DUP3
000012ec: SSTORE
000012ed: PUSH1 0x40
000012ef: MLOAD
000012f0: SWAP1
000012f1: DUP2
000012f2: MSTORE
000012f3: PUSH32 0xd48d879cef83a1c0bdda516f27b13ddb1b3f8bbac1c9e1511bb2a659c2427760
00001314: SWAP1
00001315: PUSH1 0x20
00001317: ADD
00001318: PUSH2 0x0ac0
0000131b: JUMP
0000131c: JUMPDEST
0000131d: PUSH2 0x1324
00001320: PUSH2 0x1575
00001323: JUMP
00001324: JUMPDEST
00001325: PUSH1 0x01
00001327: PUSH1 0x01
00001329: PUSH1 0xa0
0000132b: SHL
0000132c: SUB
0000132d: DUP2
0000132e: AND
0000132f: PUSH2 0x134e
00001332: JUMPI
00001333: PUSH1 0x40
00001335: MLOAD
00001336: PUSH4 0x1e4fbdf7
0000133b: PUSH1 0xe0
0000133d: SHL
0000133e: DUP2
0000133f: MSTORE
00001340: PUSH1 0x00
00001342: PUSH1 0x04
00001344: DUP3
00001345: ADD
00001346: MSTORE
00001347: PUSH1 0x24
00001349: ADD
0000134a: PUSH2 0x0826
0000134d: JUMP
0000134e: JUMPDEST
0000134f: PUSH2 0x1357
00001352: DUP2
00001353: PUSH2 0x17cd
00001356: JUMP
00001357: JUMPDEST
00001358: POP
00001359: JUMP
0000135a: JUMPDEST
0000135b: PUSH1 0x00
0000135d: PUSH1 0x20
0000135f: DUP3
00001360: ADD
00001361: DUP1
00001362: CALLDATALOAD
00001363: SWAP1
00001364: PUSH2 0x1371
00001367: SWAP1
00001368: PUSH2 0x057a
0000136b: SWAP1
0000136c: DUP6
0000136d: PUSH2 0x23b0
00001370: JUMP
00001371: JUMPDEST
00001372: EQ
00001373: SWAP3
00001374: SWAP2
00001375: POP
00001376: POP
00001377: JUMP
00001378: JUMPDEST
00001379: PUSH1 0x00
0000137b: DUP1
0000137c: PUSH2 0x1384
0000137f: DUP6
00001380: PUSH2 0x1a2c
00001383: JUMP
00001384: JUMPDEST
00001385: SWAP2
00001386: POP
00001387: DUP2
00001388: SWAP1
00001389: POP
0000138a: DUP4
0000138b: DUP2
0000138c: LT
0000138d: ISZERO
0000138e: PUSH2 0x13b4
00001391: JUMPI
00001392: PUSH1 0x40
00001394: MLOAD
00001395: PUSH4 0x71c4efed
0000139a: PUSH1 0xe0
0000139c: SHL
0000139d: DUP2
0000139e: MSTORE
0000139f: PUSH1 0x04
000013a1: DUP2
000013a2: ADD
000013a3: DUP3
000013a4: SWAP1
000013a5: MSTORE
000013a6: PUSH1 0x24
000013a8: DUP2
000013a9: ADD
000013aa: DUP6
000013ab: SWAP1
000013ac: MSTORE
000013ad: PUSH1 0x44
000013af: ADD
000013b0: PUSH2 0x0826
000013b3: JUMP
000013b4: JUMPDEST
000013b5: SWAP4
000013b6: POP
000013b7: SWAP4
000013b8: SWAP2
000013b9: POP
000013ba: POP
000013bb: JUMP
000013bc: JUMPDEST
000013bd: PUSH4 0xffffffff
000013c2: DUP2
000013c3: AND
000013c4: PUSH1 0x00
000013c6: SWAP1
000013c7: DUP2
000013c8: MSTORE
000013c9: PUSH1 0x00
000013cb: DUP1
000013cc: MLOAD
000013cd: PUSH1 0x20
000013cf: PUSH2 0x2d47
000013d2: DUP4
000013d3: CODECOPY
000013d4: DUP2
000013d5: MLOAD
000013d6: SWAP2
000013d7: MSTORE
000013d8: PUSH1 0x20
000013da: DUP2
000013db: SWAP1
000013dc: MSTORE
000013dd: PUSH1 0x40
000013df: DUP3
000013e0: KECCAK256
000013e1: SLOAD
000013e2: DUP1
000013e3: PUSH2 0x1407
000013e6: JUMPI
000013e7: PUSH1 0x40
000013e9: MLOAD
000013ea: PUSH4 0xf6ff4fb7
000013ef: PUSH1 0xe0
000013f1: SHL
000013f2: DUP2
000013f3: MSTORE
000013f4: PUSH4 0xffffffff
000013f9: DUP6
000013fa: AND
000013fb: PUSH1 0x04
000013fd: DUP3
000013fe: ADD
000013ff: MSTORE
00001400: PUSH1 0x24
00001402: ADD
00001403: PUSH2 0x0826
00001406: JUMP
00001407: JUMPDEST
00001408: SWAP4
00001409: SWAP3
0000140a: POP
0000140b: POP
0000140c: POP
0000140d: JUMP
0000140e: JUMPDEST
0000140f: PUSH1 0x00
00001411: PUSH2 0x1420
00001414: PUSH2 0x141d
00001417: DUP8
00001418: DUP8
00001419: PUSH2 0x1a63
0000141c: JUMP
0000141d: JUMPDEST
0000141e: SWAP1
0000141f: JUMP
00001420: JUMPDEST
00001421: SWAP1
00001422: POP
00001423: PUSH1 0x00
00001425: PUSH2 0x144c
00001428: DUP3
00001429: PUSH2 0x143a
0000142c: PUSH2 0x1435
0000142f: DUP11
00001430: DUP11
00001431: PUSH2 0x1a7b
00001434: JUMP
00001435: JUMPDEST
00001436: PUSH2 0x1a9e
00001439: JUMP
0000143a: JUMPDEST
0000143b: PUSH2 0x1447
0000143e: PUSH1 0x20
00001440: DUP14
00001441: ADD
00001442: DUP14
00001443: PUSH2 0x23b0
00001446: JUMP
00001447: JUMPDEST
00001448: PUSH2 0x1ad3
0000144b: JUMP
0000144c: JUMPDEST
0000144d: SWAP1
0000144e: POP
0000144f: PUSH1 0x28
00001451: DUP7
00001452: GT
00001453: ISZERO
00001454: PUSH2 0x1513
00001457: JUMPI
00001458: PUSH1 0x00
0000145a: PUSH2 0x1489
0000145d: PUSH2 0x146c
00001460: PUSH1 0x60
00001462: DUP13
00001463: ADD
00001464: PUSH1 0x40
00001466: DUP14
00001467: ADD
00001468: PUSH2 0x2a0e
0000146b: JUMP
0000146c: JUMPDEST
0000146d: PUSH2 0x1479
00001470: PUSH1 0x20
00001472: DUP14
00001473: ADD
00001474: DUP14
00001475: PUSH2 0x23b0
00001478: JUMP
00001479: JUMPDEST
0000147a: DUP5
0000147b: PUSH2 0x1484
0000147e: DUP13
0000147f: DUP13
00001480: PUSH2 0x1b11
00001483: JUMP
00001484: JUMPDEST
00001485: PUSH2 0x1b5c
00001488: JUMP
00001489: JUMPDEST
0000148a: PUSH1 0x40
0000148c: MLOAD
0000148d: PUSH4 0x3e5ac809
00001492: PUSH1 0xe1
00001494: SHL
00001495: DUP2
00001496: MSTORE
00001497: SWAP1
00001498: SWAP2
00001499: POP
0000149a: PUSH1 0x01
0000149c: PUSH1 0x01
0000149e: PUSH1 0xa0
000014a0: SHL
000014a1: SUB
000014a2: PUSH32 0x0000000000000000000000001a44076050125825900e736c501f859c50fe728c
000014c3: AND
000014c4: SWAP1
000014c5: PUSH4 0x7cb59012
000014ca: SWAP1
000014cb: PUSH2 0x14df
000014ce: SWAP1
000014cf: DUP7
000014d0: SWAP1
000014d1: DUP14
000014d2: SWAP1
000014d3: PUSH1 0x00
000014d5: SWAP1
000014d6: DUP8
000014d7: SWAP1
000014d8: PUSH1 0x04
000014da: ADD
000014db: PUSH2 0x2a2b
000014de: JUMP
000014df: JUMPDEST
000014e0: PUSH1 0x00
000014e2: PUSH1 0x40
000014e4: MLOAD
000014e5: DUP1
000014e6: DUP4
000014e7: SUB
000014e8: DUP2
000014e9: PUSH1 0x00
000014eb: DUP8
000014ec: DUP1
000014ed: EXTCODESIZE
000014ee: ISZERO
000014ef: DUP1
000014f0: ISZERO
000014f1: PUSH2 0x14f9
000014f4: JUMPI
000014f5: PUSH1 0x00
000014f7: DUP1
000014f8: REVERT
000014f9: JUMPDEST
000014fa: POP
000014fb: GAS
000014fc: CALL
000014fd: ISZERO
000014fe: DUP1
000014ff: ISZERO
00001500: PUSH2 0x150d
00001503: JUMPI
00001504: RETURNDATASIZE
00001505: PUSH1 0x00
00001507: DUP1
00001508: RETURNDATACOPY
00001509: RETURNDATASIZE
0000150a: PUSH1 0x00
0000150c: REVERT
0000150d: JUMPDEST
0000150e: POP
0000150f: POP
00001510: POP
00001511: POP
00001512: POP
00001513: JUMPDEST
00001514: PUSH1 0x01
00001516: PUSH1 0x01
00001518: PUSH1 0xa0
0000151a: SHL
0000151b: SUB
0000151c: DUP3
0000151d: AND
0000151e: DUP9
0000151f: PUSH32 0xefed6d3500546b29533b128a29e3a94d70788727f0507505ac12eaf2e578fd9c
00001540: PUSH2 0x154c
00001543: PUSH1 0x20
00001545: DUP14
00001546: ADD
00001547: DUP14
00001548: PUSH2 0x23b0
0000154b: JUMP
0000154c: JUMPDEST
0000154d: PUSH1 0x40
0000154f: DUP1
00001550: MLOAD
00001551: PUSH4 0xffffffff
00001556: SWAP1
00001557: SWAP3
00001558: AND
00001559: DUP3
0000155a: MSTORE
0000155b: PUSH1 0x20
0000155d: DUP3
0000155e: ADD
0000155f: DUP7
00001560: SWAP1
00001561: MSTORE
00001562: ADD
00001563: PUSH1 0x40
00001565: MLOAD
00001566: DUP1
00001567: SWAP2
00001568: SUB
00001569: SWAP1
0000156a: LOG3
0000156b: POP
0000156c: POP
0000156d: POP
0000156e: POP
0000156f: POP
00001570: POP
00001571: POP
00001572: POP
00001573: POP
00001574: JUMP
00001575: JUMPDEST
00001576: CALLER
00001577: PUSH2 0x157e
0000157a: PUSH2 0x0af5
0000157d: JUMP
0000157e: JUMPDEST
0000157f: PUSH1 0x01
00001581: PUSH1 0x01
00001583: PUSH1 0xa0
00001585: SHL
00001586: SUB
00001587: AND
00001588: EQ
00001589: PUSH2 0x0ade
0000158c: JUMPI
0000158d: PUSH1 0x40
0000158f: MLOAD
00001590: PUSH4 0x118cdaa7
00001595: PUSH1 0xe0
00001597: SHL
00001598: DUP2
00001599: MSTORE
0000159a: CALLER
0000159b: PUSH1 0x04
0000159d: DUP3
0000159e: ADD
0000159f: MSTORE
000015a0: PUSH1 0x24
000015a2: ADD
000015a3: PUSH2 0x0826
000015a6: JUMP
000015a7: JUMPDEST
000015a8: PUSH1 0x60
000015aa: DUP1
000015ab: PUSH1 0x00
000015ad: PUSH2 0x1604
000015b0: DUP6
000015b1: PUSH1 0x20
000015b3: ADD
000015b4: CALLDATALOAD
000015b5: PUSH2 0x15bd
000015b8: DUP7
000015b9: PUSH2 0x1b8e
000015bc: JUMP
000015bd: JUMPDEST
000015be: PUSH2 0x15ca
000015c1: PUSH1 0xa0
000015c3: DUP10
000015c4: ADD
000015c5: DUP10
000015c6: PUSH2 0x2586
000015c9: JUMP
000015ca: JUMPDEST
000015cb: DUP1
000015cc: DUP1
000015cd: PUSH1 0x1f
000015cf: ADD
000015d0: PUSH1 0x20
000015d2: DUP1
000015d3: SWAP2
000015d4: DIV
000015d5: MUL
000015d6: PUSH1 0x20
000015d8: ADD
000015d9: PUSH1 0x40
000015db: MLOAD
000015dc: SWAP1
000015dd: DUP2
000015de: ADD
000015df: PUSH1 0x40
000015e1: MSTORE
000015e2: DUP1
000015e3: SWAP4
000015e4: SWAP3
000015e5: SWAP2
000015e6: SWAP1
000015e7: DUP2
000015e8: DUP2
000015e9: MSTORE
000015ea: PUSH1 0x20
000015ec: ADD
000015ed: DUP4
000015ee: DUP4
000015ef: DUP1
000015f0: DUP3
000015f1: DUP5
000015f2: CALLDATACOPY
000015f3: PUSH1 0x00
000015f5: SWAP3
000015f6: ADD
000015f7: SWAP2
000015f8: SWAP1
000015f9: SWAP2
000015fa: MSTORE
000015fb: POP
000015fc: PUSH2 0x1bba
000015ff: SWAP3
00001600: POP
00001601: POP
00001602: POP
00001603: JUMP
00001604: JUMPDEST
00001605: SWAP1
00001606: SWAP4
00001607: POP
00001608: SWAP1
00001609: POP
0000160a: PUSH1 0x00
0000160c: DUP2
0000160d: PUSH2 0x1617
00001610: JUMPI
00001611: PUSH1 0x01
00001613: PUSH2 0x161a
00001616: JUMP
00001617: JUMPDEST
00001618: PUSH1 0x02
0000161a: JUMPDEST
0000161b: SWAP1
0000161c: POP
0000161d: PUSH2 0x163a
00001620: PUSH2 0x162c
00001623: PUSH1 0x20
00001625: DUP9
00001626: ADD
00001627: DUP9
00001628: PUSH2 0x23b0
0000162b: JUMP
0000162c: JUMPDEST
0000162d: DUP3
0000162e: PUSH2 0x05ba
00001631: PUSH1 0x80
00001633: DUP11
00001634: ADD
00001635: DUP11
00001636: PUSH2 0x2586
00001639: JUMP
0000163a: JUMPDEST
0000163b: PUSH32 0x41db8a78b0206aba5c54bcbfc2bda0d84082a84eb88e680379a57b9e9f653c00
0000165c: DUP1
0000165d: SLOAD
0000165e: SWAP2
0000165f: SWAP5
00001660: POP
00001661: SWAP1
00001662: PUSH1 0x01
00001664: PUSH1 0x01
00001666: PUSH1 0xa0
00001668: SHL
00001669: SUB
0000166a: AND
0000166b: DUP1
0000166c: ISZERO
0000166d: PUSH2 0x16e1
00001670: JUMPI
00001671: PUSH1 0x40
00001673: MLOAD
00001674: PUSH4 0x043a78eb
00001679: PUSH1 0xe0
0000167b: SHL
0000167c: DUP2
0000167d: MSTORE
0000167e: PUSH1 0x01
00001680: PUSH1 0x01
00001682: PUSH1 0xa0
00001684: SHL
00001685: SUB
00001686: DUP3
00001687: AND
00001688: SWAP1
00001689: PUSH4 0x043a78eb
0000168e: SWAP1
0000168f: PUSH2 0x169e
00001692: SWAP1
00001693: DUP10
00001694: SWAP1
00001695: DUP10
00001696: SWAP1
00001697: PUSH1 0x04
00001699: ADD
0000169a: PUSH2 0x2a66
0000169d: JUMP
0000169e: JUMPDEST
0000169f: PUSH1 0x20
000016a1: PUSH1 0x40
000016a3: MLOAD
000016a4: DUP1
000016a5: DUP4
000016a6: SUB
000016a7: DUP2
000016a8: DUP7
000016a9: GAS
000016aa: STATICCALL
000016ab: ISZERO
000016ac: DUP1
000016ad: ISZERO
000016ae: PUSH2 0x16bb
000016b1: JUMPI
000016b2: RETURNDATASIZE
000016b3: PUSH1 0x00
000016b5: DUP1
000016b6: RETURNDATACOPY
000016b7: RETURNDATASIZE
000016b8: PUSH1 0x00
000016ba: REVERT
000016bb: JUMPDEST
000016bc: POP
000016bd: POP
000016be: POP
000016bf: POP
000016c0: PUSH1 0x40
000016c2: MLOAD
000016c3: RETURNDATASIZE
000016c4: PUSH1 0x1f
000016c6: NOT
000016c7: PUSH1 0x1f
000016c9: DUP3
000016ca: ADD
000016cb: AND
000016cc: DUP3
000016cd: ADD
000016ce: DUP1
000016cf: PUSH1 0x40
000016d1: MSTORE
000016d2: POP
000016d3: DUP2
000016d4: ADD
000016d5: SWAP1
000016d6: PUSH2 0x16df
000016d9: SWAP2
000016da: SWAP1
000016db: PUSH2 0x2a8b
000016de: JUMP
000016df: JUMPDEST
000016e0: POP
000016e1: JUMPDEST
000016e2: POP
000016e3: POP
000016e4: POP
000016e5: POP
000016e6: SWAP3
000016e7: POP
000016e8: SWAP3
000016e9: SWAP1
000016ea: POP
000016eb: JUMP
000016ec: JUMPDEST
000016ed: PUSH1 0x40
000016ef: DUP1
000016f0: MLOAD
000016f1: DUP1
000016f2: DUP3
000016f3: ADD
000016f4: SWAP1
000016f5: SWAP2
000016f6: MSTORE
000016f7: PUSH1 0x00
000016f9: DUP1
000016fa: DUP3
000016fb: MSTORE
000016fc: PUSH1 0x20
000016fe: DUP3
000016ff: ADD
00001700: MSTORE
00001701: PUSH32 0x0000000000000000000000001a44076050125825900e736c501f859c50fe728c
00001722: PUSH1 0x01
00001724: PUSH1 0x01
00001726: PUSH1 0xa0
00001728: SHL
00001729: SUB
0000172a: AND
0000172b: PUSH4 0xddc28c58
00001730: PUSH1 0x40
00001732: MLOAD
00001733: DUP1
00001734: PUSH1 0xa0
00001736: ADD
00001737: PUSH1 0x40
00001739: MSTORE
0000173a: DUP1
0000173b: DUP9
0000173c: PUSH4 0xffffffff
00001741: AND
00001742: DUP2
00001743: MSTORE
00001744: PUSH1 0x20
00001746: ADD
00001747: PUSH2 0x174f
0000174a: DUP10
0000174b: PUSH2 0x13bc
0000174e: JUMP
0000174f: JUMPDEST
00001750: DUP2
00001751: MSTORE
00001752: PUSH1 0x20
00001754: ADD
00001755: DUP8
00001756: DUP2
00001757: MSTORE
00001758: PUSH1 0x20
0000175a: ADD
0000175b: DUP7
0000175c: DUP2
0000175d: MSTORE
0000175e: PUSH1 0x20
00001760: ADD
00001761: DUP6
00001762: ISZERO
00001763: ISZERO
00001764: DUP2
00001765: MSTORE
00001766: POP
00001767: ADDRESS
00001768: PUSH1 0x40
0000176a: MLOAD
0000176b: DUP4
0000176c: PUSH4 0xffffffff
00001771: AND
00001772: PUSH1 0xe0
00001774: SHL
00001775: DUP2
00001776: MSTORE
00001777: PUSH1 0x04
00001779: ADD
0000177a: PUSH2 0x1784
0000177d: SWAP3
0000177e: SWAP2
0000177f: SWAP1
00001780: PUSH2 0x2aa8
00001783: JUMP
00001784: JUMPDEST
00001785: PUSH1 0x40
00001787: DUP1
00001788: MLOAD
00001789: DUP1
0000178a: DUP4
0000178b: SUB
0000178c: DUP2
0000178d: DUP7
0000178e: GAS
0000178f: STATICCALL
00001790: ISZERO
00001791: DUP1
00001792: ISZERO
00001793: PUSH2 0x17a0
00001796: JUMPI
00001797: RETURNDATASIZE
00001798: PUSH1 0x00
0000179a: DUP1
0000179b: RETURNDATACOPY
0000179c: RETURNDATASIZE
0000179d: PUSH1 0x00
0000179f: REVERT
000017a0: JUMPDEST
000017a1: POP
000017a2: POP
000017a3: POP
000017a4: POP
000017a5: PUSH1 0x40
000017a7: MLOAD
000017a8: RETURNDATASIZE
000017a9: PUSH1 0x1f
000017ab: NOT
000017ac: PUSH1 0x1f
000017ae: DUP3
000017af: ADD
000017b0: AND
000017b1: DUP3
000017b2: ADD
000017b3: DUP1
000017b4: PUSH1 0x40
000017b6: MSTORE
000017b7: POP
000017b8: DUP2
000017b9: ADD
000017ba: SWAP1
000017bb: PUSH2 0x17c4
000017be: SWAP2
000017bf: SWAP1
000017c0: PUSH2 0x2b51
000017c3: JUMP
000017c4: JUMPDEST
000017c5: SWAP6
000017c6: SWAP5
000017c7: POP
000017c8: POP
000017c9: POP
000017ca: POP
000017cb: POP
000017cc: JUMP
000017cd: JUMPDEST
000017ce: PUSH32 0x9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300
000017ef: DUP1
000017f0: SLOAD
000017f1: PUSH1 0x01
000017f3: PUSH1 0x01
000017f5: PUSH1 0xa0
000017f7: SHL
000017f8: SUB
000017f9: NOT
000017fa: DUP2
000017fb: AND
000017fc: PUSH1 0x01
000017fe: PUSH1 0x01
00001800: PUSH1 0xa0
00001802: SHL
00001803: SUB
00001804: DUP5
00001805: DUP2
00001806: AND
00001807: SWAP2
00001808: DUP3
00001809: OR
0000180a: DUP5
0000180b: SSTORE
0000180c: PUSH1 0x40
0000180e: MLOAD
0000180f: SWAP3
00001810: AND
00001811: SWAP2
00001812: DUP3
00001813: SWAP1
00001814: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
00001835: SWAP1
00001836: PUSH1 0x00
00001838: SWAP1
00001839: LOG3
0000183a: POP
0000183b: POP
0000183c: POP
0000183d: JUMP
0000183e: JUMPDEST
0000183f: PUSH1 0x00
00001841: PUSH2 0x184d
00001844: PUSH1 0x02
00001846: DUP3
00001847: DUP5
00001848: DUP7
00001849: PUSH2 0x27fb
0000184c: JUMP
0000184d: JUMPDEST
0000184e: PUSH2 0x1856
00001851: SWAP2
00001852: PUSH2 0x2b6d
00001855: JUMP
00001856: JUMPDEST
00001857: PUSH1 0xf0
00001859: SHR
0000185a: SWAP1
0000185b: POP
0000185c: PUSH1 0x03
0000185e: DUP2
0000185f: EQ
00001860: PUSH2 0x1880
00001863: JUMPI
00001864: DUP3
00001865: DUP3
00001866: PUSH1 0x40
00001868: MLOAD
00001869: PUSH4 0x9a6d49cd
0000186e: PUSH1 0xe0
00001870: SHL
00001871: DUP2
00001872: MSTORE
00001873: PUSH1 0x04
00001875: ADD
00001876: PUSH2 0x0826
00001879: SWAP3
0000187a: SWAP2
0000187b: SWAP1
0000187c: PUSH2 0x284d
0000187f: JUMP
00001880: JUMPDEST
00001881: POP
00001882: POP
00001883: POP
00001884: JUMP
00001885: JUMPDEST
00001886: PUSH1 0x00
00001888: DUP1
00001889: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00
000018aa: PUSH2 0x096f
000018ad: JUMP
000018ae: JUMPDEST
000018af: PUSH2 0x18b6
000018b2: PUSH2 0x1c34
000018b5: JUMP
000018b6: JUMPDEST
000018b7: PUSH2 0x1357
000018ba: DUP2
000018bb: PUSH2 0x1c59
000018be: JUMP
000018bf: JUMPDEST
000018c0: PUSH2 0x18c7
000018c3: PUSH2 0x1c34
000018c6: JUMP
000018c7: JUMPDEST
000018c8: PUSH2 0x1357
000018cb: DUP2
000018cc: PUSH2 0x1c7a
000018cf: JUMP
000018d0: JUMPDEST
000018d1: PUSH1 0x00
000018d3: DUP1
000018d4: PUSH2 0x18de
000018d7: DUP6
000018d8: DUP6
000018d9: DUP6
000018da: PUSH2 0x1378
000018dd: JUMP
000018de: JUMPDEST
000018df: SWAP1
000018e0: SWAP3
000018e1: POP
000018e2: SWAP1
000018e3: POP
000018e4: PUSH2 0x1918
000018e7: PUSH1 0x01
000018e9: PUSH1 0x01
000018eb: PUSH1 0xa0
000018ed: SHL
000018ee: SUB
000018ef: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00001910: AND
00001911: DUP8
00001912: ADDRESS
00001913: DUP6
00001914: PUSH2 0x1c82
00001917: JUMP
00001918: JUMPDEST
00001919: SWAP5
0000191a: POP
0000191b: SWAP5
0000191c: SWAP3
0000191d: POP
0000191e: POP
0000191f: POP
00001920: JUMP
00001921: JUMPDEST
00001922: PUSH2 0x1929
00001925: PUSH2 0x1f0d
00001928: JUMP
00001929: JUMPDEST
0000192a: PUSH1 0x00
0000192c: PUSH2 0x1938
0000192f: DUP5
00001930: PUSH1 0x00
00001932: ADD
00001933: MLOAD
00001934: PUSH2 0x1cef
00001937: JUMP
00001938: JUMPDEST
00001939: PUSH1 0x20
0000193b: DUP6
0000193c: ADD
0000193d: MLOAD
0000193e: SWAP1
0000193f: SWAP2
00001940: POP
00001941: ISZERO
00001942: PUSH2 0x1952
00001945: JUMPI
00001946: PUSH2 0x1952
00001949: DUP5
0000194a: PUSH1 0x20
0000194c: ADD
0000194d: MLOAD
0000194e: PUSH2 0x1d17
00001951: JUMP
00001952: JUMPDEST
00001953: PUSH32 0x0000000000000000000000001a44076050125825900e736c501f859c50fe728c
00001974: PUSH1 0x01
00001976: PUSH1 0x01
00001978: PUSH1 0xa0
0000197a: SHL
0000197b: SUB
0000197c: AND
0000197d: PUSH4 0x2637a450
00001982: DUP3
00001983: PUSH1 0x40
00001985: MLOAD
00001986: DUP1
00001987: PUSH1 0xa0
00001989: ADD
0000198a: PUSH1 0x40
0000198c: MSTORE
0000198d: DUP1
0000198e: DUP12
0000198f: PUSH4 0xffffffff
00001994: AND
00001995: DUP2
00001996: MSTORE
00001997: PUSH1 0x20
00001999: ADD
0000199a: PUSH2 0x19a2
0000199d: DUP13
0000199e: PUSH2 0x13bc
000019a1: JUMP
000019a2: JUMPDEST
000019a3: DUP2
000019a4: MSTORE
000019a5: PUSH1 0x20
000019a7: ADD
000019a8: DUP11
000019a9: DUP2
000019aa: MSTORE
000019ab: PUSH1 0x20
000019ad: ADD
000019ae: DUP10
000019af: DUP2
000019b0: MSTORE
000019b1: PUSH1 0x20
000019b3: ADD
000019b4: PUSH1 0x00
000019b6: DUP10
000019b7: PUSH1 0x20
000019b9: ADD
000019ba: MLOAD
000019bb: GT
000019bc: ISZERO
000019bd: ISZERO
000019be: DUP2
000019bf: MSTORE
000019c0: POP
000019c1: DUP7
000019c2: PUSH1 0x40
000019c4: MLOAD
000019c5: DUP5
000019c6: PUSH4 0xffffffff
000019cb: AND
000019cc: PUSH1 0xe0
000019ce: SHL
000019cf: DUP2
000019d0: MSTORE
000019d1: PUSH1 0x04
000019d3: ADD
000019d4: PUSH2 0x19de
000019d7: SWAP3
000019d8: SWAP2
000019d9: SWAP1
000019da: PUSH2 0x2aa8
000019dd: JUMP
000019de: JUMPDEST
000019df: PUSH1 0x80
000019e1: PUSH1 0x40
000019e3: MLOAD
000019e4: DUP1
000019e5: DUP4
000019e6: SUB
000019e7: DUP2
000019e8: DUP6
000019e9: DUP9
000019ea: GAS
000019eb: CALL
000019ec: ISZERO
000019ed: DUP1
000019ee: ISZERO
000019ef: PUSH2 0x19fc
000019f2: JUMPI
000019f3: RETURNDATASIZE
000019f4: PUSH1 0x00
000019f6: DUP1
000019f7: RETURNDATACOPY
000019f8: RETURNDATASIZE
000019f9: PUSH1 0x00
000019fb: REVERT
000019fc: JUMPDEST
000019fd: POP
000019fe: POP
000019ff: POP
00001a00: POP
00001a01: POP
00001a02: PUSH1 0x40
00001a04: MLOAD
00001a05: RETURNDATASIZE
00001a06: PUSH1 0x1f
00001a08: NOT
00001a09: PUSH1 0x1f
00001a0b: DUP3
00001a0c: ADD
00001a0d: AND
00001a0e: DUP3
00001a0f: ADD
00001a10: DUP1
00001a11: PUSH1 0x40
00001a13: MSTORE
00001a14: POP
00001a15: DUP2
00001a16: ADD
00001a17: SWAP1
00001a18: PUSH2 0x1a21
00001a1b: SWAP2
00001a1c: SWAP1
00001a1d: PUSH2 0x2b9d
00001a20: JUMP
00001a21: JUMPDEST
00001a22: SWAP8
00001a23: SWAP7
00001a24: POP
00001a25: POP
00001a26: POP
00001a27: POP
00001a28: POP
00001a29: POP
00001a2a: POP
00001a2b: JUMP
00001a2c: JUMPDEST
00001a2d: PUSH1 0x00
00001a2f: PUSH32 0x000000000000000000000000000000000000000000000000000000e8d4a51000
00001a50: PUSH2 0x1a59
00001a53: DUP2
00001a54: DUP5
00001a55: PUSH2 0x2c04
00001a58: JUMP
00001a59: JUMPDEST
00001a5a: PUSH2 0x096f
00001a5d: SWAP2
00001a5e: SWAP1
00001a5f: PUSH2 0x2c26
00001a62: JUMP
00001a63: JUMPDEST
00001a64: PUSH1 0x00
00001a66: PUSH2 0x1a72
00001a69: PUSH1 0x20
00001a6b: DUP3
00001a6c: DUP5
00001a6d: DUP7
00001a6e: PUSH2 0x27fb
00001a71: JUMP
00001a72: JUMPDEST
00001a73: PUSH2 0x1407
00001a76: SWAP2
00001a77: PUSH2 0x2c4b
00001a7a: JUMP
00001a7b: JUMPDEST
00001a7c: PUSH1 0x00
00001a7e: PUSH2 0x1a8b
00001a81: PUSH1 0x28
00001a83: PUSH1 0x20
00001a85: DUP5
00001a86: DUP7
00001a87: PUSH2 0x27fb
00001a8a: JUMP
00001a8b: JUMPDEST
00001a8c: PUSH2 0x1a94
00001a8f: SWAP2
00001a90: PUSH2 0x2c69
00001a93: JUMP
00001a94: JUMPDEST
00001a95: PUSH1 0xc0
00001a97: SHR
00001a98: SWAP4
00001a99: SWAP3
00001a9a: POP
00001a9b: POP
00001a9c: POP
00001a9d: JUMP
00001a9e: JUMPDEST
00001a9f: PUSH1 0x00
00001aa1: PUSH2 0x096f
00001aa4: PUSH32 0x000000000000000000000000000000000000000000000000000000e8d4a51000
00001ac5: PUSH1 0x01
00001ac7: PUSH1 0x01
00001ac9: PUSH1 0x40
00001acb: SHL
00001acc: SUB
00001acd: DUP5
00001ace: AND
00001acf: PUSH2 0x2c26
00001ad2: JUMP
00001ad3: JUMPDEST
00001ad4: PUSH1 0x00
00001ad6: PUSH2 0x1b09
00001ad9: PUSH1 0x01
00001adb: PUSH1 0x01
00001add: PUSH1 0xa0
00001adf: SHL
00001ae0: SUB
00001ae1: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00001b02: AND
00001b03: DUP6
00001b04: DUP6
00001b05: PUSH2 0x1dfd
00001b08: JUMP
00001b09: JUMPDEST
00001b0a: POP
00001b0b: SWAP1
00001b0c: SWAP3
00001b0d: SWAP2
00001b0e: POP
00001b0f: POP
00001b10: JUMP
00001b11: JUMPDEST
00001b12: PUSH1 0x60
00001b14: PUSH2 0x1b20
00001b17: DUP3
00001b18: PUSH1 0x28
00001b1a: DUP2
00001b1b: DUP7
00001b1c: PUSH2 0x27fb
00001b1f: JUMP
00001b20: JUMPDEST
00001b21: DUP1
00001b22: DUP1
00001b23: PUSH1 0x1f
00001b25: ADD
00001b26: PUSH1 0x20
00001b28: DUP1
00001b29: SWAP2
00001b2a: DIV
00001b2b: MUL
00001b2c: PUSH1 0x20
00001b2e: ADD
00001b2f: PUSH1 0x40
00001b31: MLOAD
00001b32: SWAP1
00001b33: DUP2
00001b34: ADD
00001b35: PUSH1 0x40
00001b37: MSTORE
00001b38: DUP1
00001b39: SWAP4
00001b3a: SWAP3
00001b3b: SWAP2
00001b3c: SWAP1
00001b3d: DUP2
00001b3e: DUP2
00001b3f: MSTORE
00001b40: PUSH1 0x20
00001b42: ADD
00001b43: DUP4
00001b44: DUP4
00001b45: DUP1
00001b46: DUP3
00001b47: DUP5
00001b48: CALLDATACOPY
00001b49: PUSH1 0x00
00001b4b: SWAP3
00001b4c: ADD
00001b4d: SWAP2
00001b4e: SWAP1
00001b4f: SWAP2
00001b50: MSTORE
00001b51: POP
00001b52: SWAP3
00001b53: SWAP7
00001b54: SWAP6
00001b55: POP
00001b56: POP
00001b57: POP
00001b58: POP
00001b59: POP
00001b5a: POP
00001b5b: JUMP
00001b5c: JUMPDEST
00001b5d: PUSH1 0x60
00001b5f: DUP5
00001b60: DUP5
00001b61: DUP5
00001b62: DUP5
00001b63: PUSH1 0x40
00001b65: MLOAD
00001b66: PUSH1 0x20
00001b68: ADD
00001b69: PUSH2 0x1b75
00001b6c: SWAP5
00001b6d: SWAP4
00001b6e: SWAP3
00001b6f: SWAP2
00001b70: SWAP1
00001b71: PUSH2 0x2c97
00001b74: JUMP
00001b75: JUMPDEST
00001b76: PUSH1 0x40
00001b78: MLOAD
00001b79: PUSH1 0x20
00001b7b: DUP2
00001b7c: DUP4
00001b7d: SUB
00001b7e: SUB
00001b7f: DUP2
00001b80: MSTORE
00001b81: SWAP1
00001b82: PUSH1 0x40
00001b84: MSTORE
00001b85: SWAP1
00001b86: POP
00001b87: SWAP5
00001b88: SWAP4
00001b89: POP
00001b8a: POP
00001b8b: POP
00001b8c: POP
00001b8d: JUMP
00001b8e: JUMPDEST
00001b8f: PUSH1 0x00
00001b91: PUSH2 0x096f
00001b94: PUSH32 0x000000000000000000000000000000000000000000000000000000e8d4a51000
00001bb5: DUP4
00001bb6: PUSH2 0x2c04
00001bb9: JUMP
00001bba: JUMPDEST
00001bbb: DUP1
00001bbc: MLOAD
00001bbd: PUSH1 0x60
00001bbf: SWAP1
00001bc0: ISZERO
00001bc1: ISZERO
00001bc2: DUP1
00001bc3: PUSH2 0x1c03
00001bc6: JUMPI
00001bc7: DUP5
00001bc8: DUP5
00001bc9: PUSH1 0x40
00001bcb: MLOAD
00001bcc: PUSH1 0x20
00001bce: ADD
00001bcf: PUSH2 0x1bef
00001bd2: SWAP3
00001bd3: SWAP2
00001bd4: SWAP1
00001bd5: SWAP2
00001bd6: DUP3
00001bd7: MSTORE
00001bd8: PUSH1 0xc0
00001bda: SHL
00001bdb: PUSH1 0x01
00001bdd: PUSH1 0x01
00001bdf: PUSH1 0xc0
00001be1: SHL
00001be2: SUB
00001be3: NOT
00001be4: AND
00001be5: PUSH1 0x20
00001be7: DUP3
00001be8: ADD
00001be9: MSTORE
00001bea: PUSH1 0x28
00001bec: ADD
00001bed: SWAP1
00001bee: JUMP
00001bef: JUMPDEST
00001bf0: PUSH1 0x40
00001bf2: MLOAD
00001bf3: PUSH1 0x20
00001bf5: DUP2
00001bf6: DUP4
00001bf7: SUB
00001bf8: SUB
00001bf9: DUP2
00001bfa: MSTORE
00001bfb: SWAP1
00001bfc: PUSH1 0x40
00001bfe: MSTORE
00001bff: PUSH2 0x1c2a
00001c02: JUMP
00001c03: JUMPDEST
00001c04: DUP5
00001c05: DUP5
00001c06: CALLER
00001c07: DUP6
00001c08: PUSH1 0x40
00001c0a: MLOAD
00001c0b: PUSH1 0x20
00001c0d: ADD
00001c0e: PUSH2 0x1c1a
00001c11: SWAP5
00001c12: SWAP4
00001c13: SWAP3
00001c14: SWAP2
00001c15: SWAP1
00001c16: PUSH2 0x2ce6
00001c19: JUMP
00001c1a: JUMPDEST
00001c1b: PUSH1 0x40
00001c1d: MLOAD
00001c1e: PUSH1 0x20
00001c20: DUP2
00001c21: DUP4
00001c22: SUB
00001c23: SUB
00001c24: DUP2
00001c25: MSTORE
00001c26: SWAP1
00001c27: PUSH1 0x40
00001c29: MSTORE
00001c2a: JUMPDEST
00001c2b: SWAP2
00001c2c: POP
00001c2d: SWAP4
00001c2e: POP
00001c2f: SWAP4
00001c30: SWAP2
00001c31: POP
00001c32: POP
00001c33: JUMP
00001c34: JUMPDEST
00001c35: PUSH2 0x1c3c
00001c38: PUSH2 0x1e2e
00001c3b: JUMP
00001c3c: JUMPDEST
00001c3d: PUSH2 0x0ade
00001c40: JUMPI
00001c41: PUSH1 0x40
00001c43: MLOAD
00001c44: PUSH4 0x1afcd79f
00001c49: PUSH1 0xe3
00001c4b: SHL
00001c4c: DUP2
00001c4d: MSTORE
00001c4e: PUSH1 0x04
00001c50: ADD
00001c51: PUSH1 0x40
00001c53: MLOAD
00001c54: DUP1
00001c55: SWAP2
00001c56: SUB
00001c57: SWAP1
00001c58: REVERT
00001c59: JUMPDEST
00001c5a: PUSH2 0x1c61
00001c5d: PUSH2 0x1c34
00001c60: JUMP
00001c61: JUMPDEST
00001c62: PUSH2 0x1c6a
00001c65: DUP2
00001c66: PUSH2 0x1e48
00001c69: JUMP
00001c6a: JUMPDEST
00001c6b: PUSH2 0x1c72
00001c6e: PUSH2 0x1e59
00001c71: JUMP
00001c72: JUMPDEST
00001c73: PUSH2 0x1357
00001c76: PUSH2 0x1e59
00001c79: JUMP
00001c7a: JUMPDEST
00001c7b: PUSH2 0x1324
00001c7e: PUSH2 0x1c34
00001c81: JUMP
00001c82: JUMPDEST
00001c83: PUSH1 0x40
00001c85: MLOAD
00001c86: PUSH1 0x01
00001c88: PUSH1 0x01
00001c8a: PUSH1 0xa0
00001c8c: SHL
00001c8d: SUB
00001c8e: DUP5
00001c8f: DUP2
00001c90: AND
00001c91: PUSH1 0x24
00001c93: DUP4
00001c94: ADD
00001c95: MSTORE
00001c96: DUP4
00001c97: DUP2
00001c98: AND
00001c99: PUSH1 0x44
00001c9b: DUP4
00001c9c: ADD
00001c9d: MSTORE
00001c9e: PUSH1 0x64
00001ca0: DUP3
00001ca1: ADD
00001ca2: DUP4
00001ca3: SWAP1
00001ca4: MSTORE
00001ca5: PUSH2 0x1ce9
00001ca8: SWAP2
00001ca9: DUP7
00001caa: SWAP2
00001cab: DUP3
00001cac: AND
00001cad: SWAP1
00001cae: PUSH4 0x23b872dd
00001cb3: SWAP1
00001cb4: PUSH1 0x84
00001cb6: ADD
00001cb7: JUMPDEST
00001cb8: PUSH1 0x40
00001cba: MLOAD
00001cbb: PUSH1 0x20
00001cbd: DUP2
00001cbe: DUP4
00001cbf: SUB
00001cc0: SUB
00001cc1: DUP2
00001cc2: MSTORE
00001cc3: SWAP1
00001cc4: PUSH1 0x40
00001cc6: MSTORE
00001cc7: SWAP2
00001cc8: POP
00001cc9: PUSH1 0xe0
00001ccb: SHL
00001ccc: PUSH1 0x20
00001cce: DUP3
00001ccf: ADD
00001cd0: DUP1
00001cd1: MLOAD
00001cd2: PUSH1 0x01
00001cd4: PUSH1 0x01
00001cd6: PUSH1 0xe0
00001cd8: SHL
00001cd9: SUB
00001cda: DUP4
00001cdb: DUP2
00001cdc: DUP4
00001cdd: AND
00001cde: OR
00001cdf: DUP4
00001ce0: MSTORE
00001ce1: POP
00001ce2: POP
00001ce3: POP
00001ce4: POP
00001ce5: PUSH2 0x1e61
00001ce8: JUMP
00001ce9: JUMPDEST
00001cea: POP
00001ceb: POP
00001cec: POP
00001ced: POP
00001cee: JUMP
00001cef: JUMPDEST
00001cf0: PUSH1 0x00
00001cf2: DUP2
00001cf3: CALLVALUE
00001cf4: EQ
00001cf5: PUSH2 0x1d13
00001cf8: JUMPI
00001cf9: PUSH1 0x40
00001cfb: MLOAD
00001cfc: PUSH4 0x04fb8209
00001d01: PUSH1 0xe5
00001d03: SHL
00001d04: DUP2
00001d05: MSTORE
00001d06: CALLVALUE
00001d07: PUSH1 0x04
00001d09: DUP3
00001d0a: ADD
00001d0b: MSTORE
00001d0c: PUSH1 0x24
00001d0e: ADD
00001d0f: PUSH2 0x0826
00001d12: JUMP
00001d13: JUMPDEST
00001d14: POP
00001d15: SWAP1
00001d16: JUMP
00001d17: JUMPDEST
00001d18: PUSH1 0x00
00001d1a: PUSH32 0x0000000000000000000000001a44076050125825900e736c501f859c50fe728c
00001d3b: PUSH1 0x01
00001d3d: PUSH1 0x01
00001d3f: PUSH1 0xa0
00001d41: SHL
00001d42: SUB
00001d43: AND
00001d44: PUSH4 0xe4fe1d94
00001d49: PUSH1 0x40
00001d4b: MLOAD
00001d4c: DUP2
00001d4d: PUSH4 0xffffffff
00001d52: AND
00001d53: PUSH1 0xe0
00001d55: SHL
00001d56: DUP2
00001d57: MSTORE
00001d58: PUSH1 0x04
00001d5a: ADD
00001d5b: PUSH1 0x20
00001d5d: PUSH1 0x40
00001d5f: MLOAD
00001d60: DUP1
00001d61: DUP4
00001d62: SUB
00001d63: DUP2
00001d64: DUP7
00001d65: GAS
00001d66: STATICCALL
00001d67: ISZERO
00001d68: DUP1
00001d69: ISZERO
00001d6a: PUSH2 0x1d77
00001d6d: JUMPI
00001d6e: RETURNDATASIZE
00001d6f: PUSH1 0x00
00001d71: DUP1
00001d72: RETURNDATACOPY
00001d73: RETURNDATASIZE
00001d74: PUSH1 0x00
00001d76: REVERT
00001d77: JUMPDEST
00001d78: POP
00001d79: POP
00001d7a: POP
00001d7b: POP
00001d7c: PUSH1 0x40
00001d7e: MLOAD
00001d7f: RETURNDATASIZE
00001d80: PUSH1 0x1f
00001d82: NOT
00001d83: PUSH1 0x1f
00001d85: DUP3
00001d86: ADD
00001d87: AND
00001d88: DUP3
00001d89: ADD
00001d8a: DUP1
00001d8b: PUSH1 0x40
00001d8d: MSTORE
00001d8e: POP
00001d8f: DUP2
00001d90: ADD
00001d91: SWAP1
00001d92: PUSH2 0x1d9b
00001d95: SWAP2
00001d96: SWAP1
00001d97: PUSH2 0x2d29
00001d9a: JUMP
00001d9b: JUMPDEST
00001d9c: SWAP1
00001d9d: POP
00001d9e: PUSH1 0x01
00001da0: PUSH1 0x01
00001da2: PUSH1 0xa0
00001da4: SHL
00001da5: SUB
00001da6: DUP2
00001da7: AND
00001da8: PUSH2 0x1dc4
00001dab: JUMPI
00001dac: PUSH1 0x40
00001dae: MLOAD
00001daf: PUSH4 0x29b99a95
00001db4: PUSH1 0xe1
00001db6: SHL
00001db7: DUP2
00001db8: MSTORE
00001db9: PUSH1 0x04
00001dbb: ADD
00001dbc: PUSH1 0x40
00001dbe: MLOAD
00001dbf: DUP1
00001dc0: SWAP2
00001dc1: SUB
00001dc2: SWAP1
00001dc3: REVERT
00001dc4: JUMPDEST
00001dc5: PUSH2 0x1df9
00001dc8: PUSH1 0x01
00001dca: PUSH1 0x01
00001dcc: PUSH1 0xa0
00001dce: SHL
00001dcf: SUB
00001dd0: DUP3
00001dd1: AND
00001dd2: CALLER
00001dd3: PUSH32 0x0000000000000000000000001a44076050125825900e736c501f859c50fe728c
00001df4: DUP6
00001df5: PUSH2 0x1c82
00001df8: JUMP
00001df9: JUMPDEST
00001dfa: POP
00001dfb: POP
00001dfc: JUMP
00001dfd: JUMPDEST
00001dfe: PUSH1 0x40
00001e00: MLOAD
00001e01: PUSH1 0x01
00001e03: PUSH1 0x01
00001e05: PUSH1 0xa0
00001e07: SHL
00001e08: SUB
00001e09: DUP4
00001e0a: DUP2
00001e0b: AND
00001e0c: PUSH1 0x24
00001e0e: DUP4
00001e0f: ADD
00001e10: MSTORE
00001e11: PUSH1 0x44
00001e13: DUP3
00001e14: ADD
00001e15: DUP4
00001e16: SWAP1
00001e17: MSTORE
00001e18: PUSH2 0x1880
00001e1b: SWAP2
00001e1c: DUP6
00001e1d: SWAP2
00001e1e: DUP3
00001e1f: AND
00001e20: SWAP1
00001e21: PUSH4 0xa9059cbb
00001e26: SWAP1
00001e27: PUSH1 0x64
00001e29: ADD
00001e2a: PUSH2 0x1cb7
00001e2d: JUMP
00001e2e: JUMPDEST
00001e2f: PUSH1 0x00
00001e31: PUSH2 0x1e38
00001e34: PUSH2 0x1885
00001e37: JUMP
00001e38: JUMPDEST
00001e39: SLOAD
00001e3a: PUSH1 0x01
00001e3c: PUSH1 0x40
00001e3e: SHL
00001e3f: SWAP1
00001e40: DIV
00001e41: PUSH1 0xff
00001e43: AND
00001e44: SWAP2
00001e45: SWAP1
00001e46: POP
00001e47: JUMP
00001e48: JUMPDEST
00001e49: PUSH2 0x1e50
00001e4c: PUSH2 0x1c34
00001e4f: JUMP
00001e50: JUMPDEST
00001e51: PUSH2 0x1c6a
00001e54: DUP2
00001e55: PUSH2 0x1ed2
00001e58: JUMP
00001e59: JUMPDEST
00001e5a: PUSH2 0x0ade
00001e5d: PUSH2 0x1c34
00001e60: JUMP
00001e61: JUMPDEST
00001e62: PUSH1 0x00
00001e64: DUP1
00001e65: PUSH1 0x20
00001e67: PUSH1 0x00
00001e69: DUP5
00001e6a: MLOAD
00001e6b: PUSH1 0x20
00001e6d: DUP7
00001e6e: ADD
00001e6f: PUSH1 0x00
00001e71: DUP9
00001e72: GAS
00001e73: CALL
00001e74: DUP1
00001e75: PUSH2 0x1e84
00001e78: JUMPI
00001e79: PUSH1 0x40
00001e7b: MLOAD
00001e7c: RETURNDATASIZE
00001e7d: PUSH1 0x00
00001e7f: DUP3
00001e80: RETURNDATACOPY
00001e81: RETURNDATASIZE
00001e82: DUP2
00001e83: REVERT
00001e84: JUMPDEST
00001e85: POP
00001e86: POP
00001e87: PUSH1 0x00
00001e89: MLOAD
00001e8a: RETURNDATASIZE
00001e8b: SWAP2
00001e8c: POP
00001e8d: DUP2
00001e8e: ISZERO
00001e8f: PUSH2 0x1e9c
00001e92: JUMPI
00001e93: DUP1
00001e94: PUSH1 0x01
00001e96: EQ
00001e97: ISZERO
00001e98: PUSH2 0x1ea9
00001e9b: JUMP
00001e9c: JUMPDEST
00001e9d: PUSH1 0x01
00001e9f: PUSH1 0x01
00001ea1: PUSH1 0xa0
00001ea3: SHL
00001ea4: SUB
00001ea5: DUP5
00001ea6: AND
00001ea7: EXTCODESIZE
00001ea8: ISZERO
00001ea9: JUMPDEST
00001eaa: ISZERO
00001eab: PUSH2 0x1ce9
00001eae: JUMPI
00001eaf: PUSH1 0x40
00001eb1: MLOAD
00001eb2: PUSH4 0x5274afe7
00001eb7: PUSH1 0xe0
00001eb9: SHL
00001eba: DUP2
00001ebb: MSTORE
00001ebc: PUSH1 0x01
00001ebe: PUSH1 0x01
00001ec0: PUSH1 0xa0
00001ec2: SHL
00001ec3: SUB
00001ec4: DUP6
00001ec5: AND
00001ec6: PUSH1 0x04
00001ec8: DUP3
00001ec9: ADD
00001eca: MSTORE
00001ecb: PUSH1 0x24
00001ecd: ADD
00001ece: PUSH2 0x0826
00001ed1: JUMP
00001ed2: JUMPDEST
00001ed3: PUSH2 0x1eda
00001ed6: PUSH2 0x1c34
00001ed9: JUMP
00001eda: JUMPDEST
00001edb: PUSH2 0x1357
00001ede: DUP2
00001edf: PUSH2 0x1ee6
00001ee2: PUSH2 0x1c34
00001ee5: JUMP
00001ee6: JUMPDEST
00001ee7: PUSH1 0x01
00001ee9: PUSH1 0x01
00001eeb: PUSH1 0xa0
00001eed: SHL
00001eee: SUB
00001eef: DUP2
00001ef0: AND
00001ef1: PUSH2 0x11fb
00001ef4: JUMPI
00001ef5: PUSH1 0x40
00001ef7: MLOAD
00001ef8: PUSH4 0x2d618d81
00001efd: PUSH1 0xe2
00001eff: SHL
00001f00: DUP2
00001f01: MSTORE
00001f02: PUSH1 0x04
00001f04: ADD
00001f05: PUSH1 0x40
00001f07: MLOAD
00001f08: DUP1
00001f09: SWAP2
00001f0a: SUB
00001f0b: SWAP1
00001f0c: REVERT
00001f0d: JUMPDEST
00001f0e: PUSH1 0x40
00001f10: MLOAD
00001f11: DUP1
00001f12: PUSH1 0x60
00001f14: ADD
00001f15: PUSH1 0x40
00001f17: MSTORE
00001f18: DUP1
00001f19: PUSH1 0x00
00001f1b: DUP1
00001f1c: NOT
00001f1d: AND
00001f1e: DUP2
00001f1f: MSTORE
00001f20: PUSH1 0x20
00001f22: ADD
00001f23: PUSH1 0x00
00001f25: PUSH1 0x01
00001f27: PUSH1 0x01
00001f29: PUSH1 0x40
00001f2b: SHL
00001f2c: SUB
00001f2d: AND
00001f2e: DUP2
00001f2f: MSTORE
00001f30: PUSH1 0x20
00001f32: ADD
00001f33: PUSH2 0x1f4f
00001f36: PUSH1 0x40
00001f38: MLOAD
00001f39: DUP1
00001f3a: PUSH1 0x40
00001f3c: ADD
00001f3d: PUSH1 0x40
00001f3f: MSTORE
00001f40: DUP1
00001f41: PUSH1 0x00
00001f43: DUP2
00001f44: MSTORE
00001f45: PUSH1 0x20
00001f47: ADD
00001f48: PUSH1 0x00
00001f4a: DUP2
00001f4b: MSTORE
00001f4c: POP
00001f4d: SWAP1
00001f4e: JUMP
00001f4f: JUMPDEST
00001f50: SWAP1
00001f51: MSTORE
00001f52: SWAP1
00001f53: JUMP
00001f54: JUMPDEST
00001f55: PUSH1 0x00
00001f57: PUSH1 0xe0
00001f59: DUP3
00001f5a: DUP5
00001f5b: SUB
00001f5c: SLT
00001f5d: ISZERO
00001f5e: PUSH2 0x1f66
00001f61: JUMPI
00001f62: PUSH1 0x00
00001f64: DUP1
00001f65: REVERT
00001f66: JUMPDEST
00001f67: POP
00001f68: SWAP2
00001f69: SWAP1
00001f6a: POP
00001f6b: JUMP
00001f6c: JUMPDEST
00001f6d: PUSH1 0x00
00001f6f: PUSH1 0x20
00001f71: DUP3
00001f72: DUP5
00001f73: SUB
00001f74: SLT
00001f75: ISZERO
00001f76: PUSH2 0x1f7e
00001f79: JUMPI
00001f7a: PUSH1 0x00
00001f7c: DUP1
00001f7d: REVERT
00001f7e: JUMPDEST
00001f7f: DUP2
00001f80: CALLDATALOAD
00001f81: PUSH1 0x01
00001f83: PUSH1 0x01
00001f85: PUSH1 0x40
00001f87: SHL
00001f88: SUB
00001f89: DUP2
00001f8a: GT
00001f8b: ISZERO
00001f8c: PUSH2 0x1f94
00001f8f: JUMPI
00001f90: PUSH1 0x00
00001f92: DUP1
00001f93: REVERT
00001f94: JUMPDEST
00001f95: PUSH2 0x0aed
00001f98: DUP5
00001f99: DUP3
00001f9a: DUP6
00001f9b: ADD
00001f9c: PUSH2 0x1f54
00001f9f: JUMP
00001fa0: JUMPDEST
00001fa1: PUSH1 0x00
00001fa3: JUMPDEST
00001fa4: DUP4
00001fa5: DUP2
00001fa6: LT
00001fa7: ISZERO
00001fa8: PUSH2 0x1fbb
00001fab: JUMPI
00001fac: DUP2
00001fad: DUP2
00001fae: ADD
00001faf: MLOAD
00001fb0: DUP4
00001fb1: DUP3
00001fb2: ADD
00001fb3: MSTORE
00001fb4: PUSH1 0x20
00001fb6: ADD
00001fb7: PUSH2 0x1fa3
00001fba: JUMP
00001fbb: JUMPDEST
00001fbc: POP
00001fbd: POP
00001fbe: PUSH1 0x00
00001fc0: SWAP2
00001fc1: ADD
00001fc2: MSTORE
00001fc3: JUMP
00001fc4: JUMPDEST
00001fc5: PUSH1 0x00
00001fc7: DUP2
00001fc8: MLOAD
00001fc9: DUP1
00001fca: DUP5
00001fcb: MSTORE
00001fcc: PUSH2 0x1fdc
00001fcf: DUP2
00001fd0: PUSH1 0x20
00001fd2: DUP7
00001fd3: ADD
00001fd4: PUSH1 0x20
00001fd6: DUP7
00001fd7: ADD
00001fd8: PUSH2 0x1fa0
00001fdb: JUMP
00001fdc: JUMPDEST
00001fdd: PUSH1 0x1f
00001fdf: ADD
00001fe0: PUSH1 0x1f
00001fe2: NOT
00001fe3: AND
00001fe4: SWAP3
00001fe5: SWAP1
00001fe6: SWAP3
00001fe7: ADD
00001fe8: PUSH1 0x20
00001fea: ADD
00001feb: SWAP3
00001fec: SWAP2
00001fed: POP
00001fee: POP
00001fef: JUMP
00001ff0: JUMPDEST
00001ff1: DUP4
00001ff2: MLOAD
00001ff3: DUP2
00001ff4: MSTORE
00001ff5: PUSH1 0x20
00001ff7: DUP1
00001ff8: DUP6
00001ff9: ADD
00001ffa: MLOAD
00001ffb: SWAP1
00001ffc: DUP3
00001ffd: ADD
00001ffe: MSTORE
00001fff: PUSH1 0x00
00002001: PUSH1 0xa0
00002003: DUP3
00002004: ADD
00002005: PUSH1 0x40
00002007: PUSH1 0xa0
00002009: PUSH1 0x40
0000200b: DUP6
0000200c: ADD
0000200d: MSTORE
0000200e: DUP2
0000200f: DUP7
00002010: MLOAD
00002011: DUP1
00002012: DUP5
00002013: MSTORE
00002014: PUSH1 0xc0
00002016: DUP7
00002017: ADD
00002018: SWAP2
00002019: POP
0000201a: PUSH1 0xc0
0000201c: DUP2
0000201d: PUSH1 0x05
0000201f: SHL
00002020: DUP8
00002021: ADD
00002022: ADD
00002023: SWAP4
00002024: POP
00002025: PUSH1 0x20
00002027: DUP1
00002028: DUP10
00002029: ADD
0000202a: PUSH1 0x00
0000202c: JUMPDEST
0000202d: DUP4
0000202e: DUP2
0000202f: LT
00002030: ISZERO
00002031: PUSH2 0x206b
00002034: JUMPI
00002035: DUP9
00002036: DUP8
00002037: SUB
00002038: PUSH1 0xbf
0000203a: NOT
0000203b: ADD
0000203c: DUP6
0000203d: MSTORE
0000203e: DUP2
0000203f: MLOAD
00002040: DUP1
00002041: MLOAD
00002042: DUP9
00002043: MSTORE
00002044: DUP4
00002045: ADD
00002046: MLOAD
00002047: DUP4
00002048: DUP9
00002049: ADD
0000204a: DUP8
0000204b: SWAP1
0000204c: MSTORE
0000204d: PUSH2 0x2058
00002050: DUP8
00002051: DUP10
00002052: ADD
00002053: DUP3
00002054: PUSH2 0x1fc4
00002057: JUMP
00002058: JUMPDEST
00002059: SWAP8
0000205a: POP
0000205b: POP
0000205c: SWAP4
0000205d: DUP3
0000205e: ADD
0000205f: SWAP4
00002060: SWAP1
00002061: DUP3
00002062: ADD
00002063: SWAP1
00002064: PUSH1 0x01
00002066: ADD
00002067: PUSH2 0x202c
0000206a: JUMP
0000206b: JUMPDEST
0000206c: POP
0000206d: POP
0000206e: DUP8
0000206f: MLOAD
00002070: PUSH1 0x60
00002072: DUP9
00002073: ADD
00002074: MSTORE
00002075: POP
00002076: POP
00002077: POP
00002078: PUSH1 0x20
0000207a: DUP6
0000207b: ADD
0000207c: MLOAD
0000207d: PUSH1 0x80
0000207f: DUP6
00002080: ADD
00002081: MSTORE
00002082: POP
00002083: SWAP1
00002084: POP
00002085: PUSH2 0x0aed
00002088: JUMP
00002089: JUMPDEST
0000208a: PUSH1 0x00
0000208c: PUSH1 0x60
0000208e: DUP3
0000208f: DUP5
00002090: SUB
00002091: SLT
00002092: ISZERO
00002093: PUSH2 0x1f66
00002096: JUMPI
00002097: PUSH1 0x00
00002099: DUP1
0000209a: REVERT
0000209b: JUMPDEST
0000209c: PUSH1 0x00
0000209e: DUP1
0000209f: DUP4
000020a0: PUSH1 0x1f
000020a2: DUP5
000020a3: ADD
000020a4: SLT
000020a5: PUSH2 0x20ad
000020a8: JUMPI
000020a9: PUSH1 0x00
000020ab: DUP1
000020ac: REVERT
000020ad: JUMPDEST
000020ae: POP
000020af: DUP2
000020b0: CALLDATALOAD
000020b1: PUSH1 0x01
000020b3: PUSH1 0x01
000020b5: PUSH1 0x40
000020b7: SHL
000020b8: SUB
000020b9: DUP2
000020ba: GT
000020bb: ISZERO
000020bc: PUSH2 0x20c4
000020bf: JUMPI
000020c0: PUSH1 0x00
000020c2: DUP1
000020c3: REVERT
000020c4: JUMPDEST
000020c5: PUSH1 0x20
000020c7: DUP4
000020c8: ADD
000020c9: SWAP2
000020ca: POP
000020cb: DUP4
000020cc: PUSH1 0x20
000020ce: DUP3
000020cf: DUP6
000020d0: ADD
000020d1: ADD
000020d2: GT
000020d3: ISZERO
000020d4: PUSH2 0x20dc
000020d7: JUMPI
000020d8: PUSH1 0x00
000020da: DUP1
000020db: REVERT
000020dc: JUMPDEST
000020dd: SWAP3
000020de: POP
000020df: SWAP3
000020e0: SWAP1
000020e1: POP
000020e2: JUMP
000020e3: JUMPDEST
000020e4: PUSH1 0x01
000020e6: PUSH1 0x01
000020e8: PUSH1 0xa0
000020ea: SHL
000020eb: SUB
000020ec: DUP2
000020ed: AND
000020ee: DUP2
000020ef: EQ
000020f0: PUSH2 0x1357
000020f3: JUMPI
000020f4: PUSH1 0x00
000020f6: DUP1
000020f7: REVERT
000020f8: JUMPDEST
000020f9: PUSH1 0x00
000020fb: DUP1
000020fc: PUSH1 0x00
000020fe: DUP1
000020ff: PUSH1 0x00
00002101: DUP1
00002102: PUSH1 0x00
00002104: PUSH1 0xe0
00002106: DUP9
00002107: DUP11
00002108: SUB
00002109: SLT
0000210a: ISZERO
0000210b: PUSH2 0x2113
0000210e: JUMPI
0000210f: PUSH1 0x00
00002111: DUP1
00002112: REVERT
00002113: JUMPDEST
00002114: PUSH2 0x211d
00002117: DUP10
00002118: DUP10
00002119: PUSH2 0x2089
0000211c: JUMP
0000211d: JUMPDEST
0000211e: SWAP7
0000211f: POP
00002120: PUSH1 0x60
00002122: DUP9
00002123: ADD
00002124: CALLDATALOAD
00002125: SWAP6
00002126: POP
00002127: PUSH1 0x80
00002129: DUP9
0000212a: ADD
0000212b: CALLDATALOAD
0000212c: PUSH1 0x01
0000212e: PUSH1 0x01
00002130: PUSH1 0x40
00002132: SHL
00002133: SUB
00002134: DUP1
00002135: DUP3
00002136: GT
00002137: ISZERO
00002138: PUSH2 0x2140
0000213b: JUMPI
0000213c: PUSH1 0x00
0000213e: DUP1
0000213f: REVERT
00002140: JUMPDEST
00002141: PUSH2 0x214c
00002144: DUP12
00002145: DUP4
00002146: DUP13
00002147: ADD
00002148: PUSH2 0x209b
0000214b: JUMP
0000214c: JUMPDEST
0000214d: SWAP1
0000214e: SWAP8
0000214f: POP
00002150: SWAP6
00002151: POP
00002152: PUSH1 0xa0
00002154: DUP11
00002155: ADD
00002156: CALLDATALOAD
00002157: SWAP2
00002158: POP
00002159: PUSH2 0x2161
0000215c: DUP3
0000215d: PUSH2 0x20e3
00002160: JUMP
00002161: JUMPDEST
00002162: SWAP1
00002163: SWAP4
00002164: POP
00002165: PUSH1 0xc0
00002167: DUP10
00002168: ADD
00002169: CALLDATALOAD
0000216a: SWAP1
0000216b: DUP1
0000216c: DUP3
0000216d: GT
0000216e: ISZERO
0000216f: PUSH2 0x2177
00002172: JUMPI
00002173: PUSH1 0x00
00002175: DUP1
00002176: REVERT
00002177: JUMPDEST
00002178: POP
00002179: PUSH2 0x2184
0000217c: DUP11
0000217d: DUP3
0000217e: DUP12
0000217f: ADD
00002180: PUSH2 0x209b
00002183: JUMP
00002184: JUMPDEST
00002185: SWAP9
00002186: SWAP12
00002187: SWAP8
00002188: SWAP11
00002189: POP
0000218a: SWAP6
0000218b: SWAP9
0000218c: POP
0000218d: SWAP4
0000218e: SWAP7
0000218f: SWAP3
00002190: SWAP6
00002191: SWAP3
00002192: SWAP4
00002193: POP
00002194: POP
00002195: POP
00002196: JUMP
00002197: JUMPDEST
00002198: DUP1
00002199: CALLDATALOAD
0000219a: PUSH4 0xffffffff
0000219f: DUP2
000021a0: AND
000021a1: DUP2
000021a2: EQ
000021a3: PUSH2 0x21ab
000021a6: JUMPI
000021a7: PUSH1 0x00
000021a9: DUP1
000021aa: REVERT
000021ab: JUMPDEST
000021ac: SWAP2
000021ad: SWAP1
000021ae: POP
000021af: JUMP
000021b0: JUMPDEST
000021b1: PUSH1 0x00
000021b3: DUP1
000021b4: PUSH1 0x40
000021b6: DUP4
000021b7: DUP6
000021b8: SUB
000021b9: SLT
000021ba: ISZERO
000021bb: PUSH2 0x21c3
000021be: JUMPI
000021bf: PUSH1 0x00
000021c1: DUP1
000021c2: REVERT
000021c3: JUMPDEST
000021c4: PUSH2 0x21cc
000021c7: DUP4
000021c8: PUSH2 0x2197
000021cb: JUMP
000021cc: JUMPDEST
000021cd: SWAP5
000021ce: PUSH1 0x20
000021d0: SWAP4
000021d1: SWAP1
000021d2: SWAP4
000021d3: ADD
000021d4: CALLDATALOAD
000021d5: SWAP4
000021d6: POP
000021d7: POP
000021d8: POP
000021d9: JUMP
000021da: JUMPDEST
000021db: DUP1
000021dc: ISZERO
000021dd: ISZERO
000021de: DUP2
000021df: EQ
000021e0: PUSH2 0x1357
000021e3: JUMPI
000021e4: PUSH1 0x00
000021e6: DUP1
000021e7: REVERT
000021e8: JUMPDEST
000021e9: PUSH1 0x00
000021eb: DUP1
000021ec: PUSH1 0x40
000021ee: DUP4
000021ef: DUP6
000021f0: SUB
000021f1: SLT
000021f2: ISZERO
000021f3: PUSH2 0x21fb
000021f6: JUMPI
000021f7: PUSH1 0x00
000021f9: DUP1
000021fa: REVERT
000021fb: JUMPDEST
000021fc: DUP3
000021fd: CALLDATALOAD
000021fe: PUSH1 0x01
00002200: PUSH1 0x01
00002202: PUSH1 0x40
00002204: SHL
00002205: SUB
00002206: DUP2
00002207: GT
00002208: ISZERO
00002209: PUSH2 0x2211
0000220c: JUMPI
0000220d: PUSH1 0x00
0000220f: DUP1
00002210: REVERT
00002211: JUMPDEST
00002212: PUSH2 0x221d
00002215: DUP6
00002216: DUP3
00002217: DUP7
00002218: ADD
00002219: PUSH2 0x1f54
0000221c: JUMP
0000221d: JUMPDEST
0000221e: SWAP3
0000221f: POP
00002220: POP
00002221: PUSH1 0x20
00002223: DUP4
00002224: ADD
00002225: CALLDATALOAD
00002226: PUSH2 0x222e
00002229: DUP2
0000222a: PUSH2 0x21da
0000222d: JUMP
0000222e: JUMPDEST
0000222f: DUP1
00002230: SWAP2
00002231: POP
00002232: POP
00002233: SWAP3
00002234: POP
00002235: SWAP3
00002236: SWAP1
00002237: POP
00002238: JUMP
00002239: JUMPDEST
0000223a: DUP2
0000223b: MLOAD
0000223c: DUP2
0000223d: MSTORE
0000223e: PUSH1 0x20
00002240: DUP1
00002241: DUP4
00002242: ADD
00002243: MLOAD
00002244: SWAP1
00002245: DUP3
00002246: ADD
00002247: MSTORE
00002248: PUSH1 0x40
0000224a: DUP2
0000224b: ADD
0000224c: PUSH2 0x096f
0000224f: JUMP
00002250: JUMPDEST
00002251: DUP1
00002252: CALLDATALOAD
00002253: PUSH2 0xffff
00002256: DUP2
00002257: AND
00002258: DUP2
00002259: EQ
0000225a: PUSH2 0x21ab
0000225d: JUMPI
0000225e: PUSH1 0x00
00002260: DUP1
00002261: REVERT
00002262: JUMPDEST
00002263: PUSH1 0x00
00002265: DUP1
00002266: PUSH1 0x40
00002268: DUP4
00002269: DUP6
0000226a: SUB
0000226b: SLT
0000226c: ISZERO
0000226d: PUSH2 0x2275
00002270: JUMPI
00002271: PUSH1 0x00
00002273: DUP1
00002274: REVERT
00002275: JUMPDEST
00002276: PUSH2 0x227e
00002279: DUP4
0000227a: PUSH2 0x2197
0000227d: JUMP
0000227e: JUMPDEST
0000227f: SWAP2
00002280: POP
00002281: PUSH2 0x228c
00002284: PUSH1 0x20
00002286: DUP5
00002287: ADD
00002288: PUSH2 0x2250
0000228b: JUMP
0000228c: JUMPDEST
0000228d: SWAP1
0000228e: POP
0000228f: SWAP3
00002290: POP
00002291: SWAP3
00002292: SWAP1
00002293: POP
00002294: JUMP
00002295: JUMPDEST
00002296: PUSH1 0x20
00002298: DUP2
00002299: MSTORE
0000229a: PUSH1 0x00
0000229c: PUSH2 0x1407
0000229f: PUSH1 0x20
000022a1: DUP4
000022a2: ADD
000022a3: DUP5
000022a4: PUSH2 0x1fc4
000022a7: JUMP
000022a8: JUMPDEST
000022a9: PUSH1 0x00
000022ab: PUSH1 0x20
000022ad: DUP3
000022ae: DUP5
000022af: SUB
000022b0: SLT
000022b1: ISZERO
000022b2: PUSH2 0x22ba
000022b5: JUMPI
000022b6: PUSH1 0x00
000022b8: DUP1
000022b9: REVERT
000022ba: JUMPDEST
000022bb: DUP2
000022bc: CALLDATALOAD
000022bd: PUSH2 0x1407
000022c0: DUP2
000022c1: PUSH2 0x20e3
000022c4: JUMP
000022c5: JUMPDEST
000022c6: PUSH1 0x00
000022c8: DUP1
000022c9: PUSH1 0x00
000022cb: DUP1
000022cc: PUSH1 0xa0
000022ce: DUP6
000022cf: DUP8
000022d0: SUB
000022d1: SLT
000022d2: ISZERO
000022d3: PUSH2 0x22db
000022d6: JUMPI
000022d7: PUSH1 0x00
000022d9: DUP1
000022da: REVERT
000022db: JUMPDEST
000022dc: PUSH2 0x22e5
000022df: DUP7
000022e0: DUP7
000022e1: PUSH2 0x2089
000022e4: JUMP
000022e5: JUMPDEST
000022e6: SWAP4
000022e7: POP
000022e8: PUSH1 0x60
000022ea: DUP6
000022eb: ADD
000022ec: CALLDATALOAD
000022ed: PUSH1 0x01
000022ef: PUSH1 0x01
000022f1: PUSH1 0x40
000022f3: SHL
000022f4: SUB
000022f5: DUP2
000022f6: GT
000022f7: ISZERO
000022f8: PUSH2 0x2300
000022fb: JUMPI
000022fc: PUSH1 0x00
000022fe: DUP1
000022ff: REVERT
00002300: JUMPDEST
00002301: PUSH2 0x230c
00002304: DUP8
00002305: DUP3
00002306: DUP9
00002307: ADD
00002308: PUSH2 0x209b
0000230b: JUMP
0000230c: JUMPDEST
0000230d: SWAP1
0000230e: SWAP5
0000230f: POP
00002310: SWAP3
00002311: POP
00002312: POP
00002313: PUSH1 0x80
00002315: DUP6
00002316: ADD
00002317: CALLDATALOAD
00002318: PUSH2 0x2320
0000231b: DUP2
0000231c: PUSH2 0x20e3
0000231f: JUMP
00002320: JUMPDEST
00002321: SWAP4
00002322: SWAP7
00002323: SWAP3
00002324: SWAP6
00002325: POP
00002326: SWAP1
00002327: SWAP4
00002328: POP
00002329: POP
0000232a: JUMP
0000232b: JUMPDEST
0000232c: PUSH1 0x00
0000232e: DUP1
0000232f: DUP4
00002330: PUSH1 0x1f
00002332: DUP5
00002333: ADD
00002334: SLT
00002335: PUSH2 0x233d
00002338: JUMPI
00002339: PUSH1 0x00
0000233b: DUP1
0000233c: REVERT
0000233d: JUMPDEST
0000233e: POP
0000233f: DUP2
00002340: CALLDATALOAD
00002341: PUSH1 0x01
00002343: PUSH1 0x01
00002345: PUSH1 0x40
00002347: SHL
00002348: SUB
00002349: DUP2
0000234a: GT
0000234b: ISZERO
0000234c: PUSH2 0x2354
0000234f: JUMPI
00002350: PUSH1 0x00
00002352: DUP1
00002353: REVERT
00002354: JUMPDEST
00002355: PUSH1 0x20
00002357: DUP4
00002358: ADD
00002359: SWAP2
0000235a: POP
0000235b: DUP4
0000235c: PUSH1 0x20
0000235e: DUP3
0000235f: PUSH1 0x05
00002361: SHL
00002362: DUP6
00002363: ADD
00002364: ADD
00002365: GT
00002366: ISZERO
00002367: PUSH2 0x20dc
0000236a: JUMPI
0000236b: PUSH1 0x00
0000236d: DUP1
0000236e: REVERT
0000236f: JUMPDEST
00002370: PUSH1 0x00
00002372: DUP1
00002373: PUSH1 0x20
00002375: DUP4
00002376: DUP6
00002377: SUB
00002378: SLT
00002379: ISZERO
0000237a: PUSH2 0x2382
0000237d: JUMPI
0000237e: PUSH1 0x00
00002380: DUP1
00002381: REVERT
00002382: JUMPDEST
00002383: DUP3
00002384: CALLDATALOAD
00002385: PUSH1 0x01
00002387: PUSH1 0x01
00002389: PUSH1 0x40
0000238b: SHL
0000238c: SUB
0000238d: DUP2
0000238e: GT
0000238f: ISZERO
00002390: PUSH2 0x2398
00002393: JUMPI
00002394: PUSH1 0x00
00002396: DUP1
00002397: REVERT
00002398: JUMPDEST
00002399: PUSH2 0x23a4
0000239c: DUP6
0000239d: DUP3
0000239e: DUP7
0000239f: ADD
000023a0: PUSH2 0x232b
000023a3: JUMP
000023a4: JUMPDEST
000023a5: SWAP1
000023a6: SWAP7
000023a7: SWAP1
000023a8: SWAP6
000023a9: POP
000023aa: SWAP4
000023ab: POP
000023ac: POP
000023ad: POP
000023ae: POP
000023af: JUMP
000023b0: JUMPDEST
000023b1: PUSH1 0x00
000023b3: PUSH1 0x20
000023b5: DUP3
000023b6: DUP5
000023b7: SUB
000023b8: SLT
000023b9: ISZERO
000023ba: PUSH2 0x23c2
000023bd: JUMPI
000023be: PUSH1 0x00
000023c0: DUP1
000023c1: REVERT
000023c2: JUMPDEST
000023c3: PUSH2 0x1407
000023c6: DUP3
000023c7: PUSH2 0x2197
000023ca: JUMP
000023cb: JUMPDEST
000023cc: PUSH1 0x00
000023ce: DUP1
000023cf: PUSH1 0x00
000023d1: DUP1
000023d2: PUSH1 0x60
000023d4: DUP6
000023d5: DUP8
000023d6: SUB
000023d7: SLT
000023d8: ISZERO
000023d9: PUSH2 0x23e1
000023dc: JUMPI
000023dd: PUSH1 0x00
000023df: DUP1
000023e0: REVERT
000023e1: JUMPDEST
000023e2: PUSH2 0x23ea
000023e5: DUP6
000023e6: PUSH2 0x2197
000023e9: JUMP
000023ea: JUMPDEST
000023eb: SWAP4
000023ec: POP
000023ed: PUSH2 0x23f8
000023f0: PUSH1 0x20
000023f2: DUP7
000023f3: ADD
000023f4: PUSH2 0x2250
000023f7: JUMP
000023f8: JUMPDEST
000023f9: SWAP3
000023fa: POP
000023fb: PUSH1 0x40
000023fd: DUP6
000023fe: ADD
000023ff: CALLDATALOAD
00002400: PUSH1 0x01
00002402: PUSH1 0x01
00002404: PUSH1 0x40
00002406: SHL
00002407: SUB
00002408: DUP2
00002409: GT
0000240a: ISZERO
0000240b: PUSH2 0x2413
0000240e: JUMPI
0000240f: PUSH1 0x00
00002411: DUP1
00002412: REVERT
00002413: JUMPDEST
00002414: PUSH2 0x241f
00002417: DUP8
00002418: DUP3
00002419: DUP9
0000241a: ADD
0000241b: PUSH2 0x209b
0000241e: JUMP
0000241f: JUMPDEST
00002420: SWAP6
00002421: SWAP9
00002422: SWAP5
00002423: SWAP8
00002424: POP
00002425: SWAP6
00002426: POP
00002427: POP
00002428: POP
00002429: POP
0000242a: JUMP
0000242b: JUMPDEST
0000242c: PUSH1 0x00
0000242e: DUP1
0000242f: PUSH1 0x00
00002431: DUP4
00002432: DUP6
00002433: SUB
00002434: PUSH1 0x80
00002436: DUP2
00002437: SLT
00002438: ISZERO
00002439: PUSH2 0x2441
0000243c: JUMPI
0000243d: PUSH1 0x00
0000243f: DUP1
00002440: REVERT
00002441: JUMPDEST
00002442: DUP5
00002443: CALLDATALOAD
00002444: PUSH1 0x01
00002446: PUSH1 0x01
00002448: PUSH1 0x40
0000244a: SHL
0000244b: SUB
0000244c: DUP2
0000244d: GT
0000244e: ISZERO
0000244f: PUSH2 0x2457
00002452: JUMPI
00002453: PUSH1 0x00
00002455: DUP1
00002456: REVERT
00002457: JUMPDEST
00002458: PUSH2 0x2463
0000245b: DUP8
0000245c: DUP3
0000245d: DUP9
0000245e: ADD
0000245f: PUSH2 0x1f54
00002462: JUMP
00002463: JUMPDEST
00002464: SWAP5
00002465: POP
00002466: POP
00002467: PUSH1 0x40
00002469: PUSH1 0x1f
0000246b: NOT
0000246c: DUP3
0000246d: ADD
0000246e: SLT
0000246f: ISZERO
00002470: PUSH2 0x2478
00002473: JUMPI
00002474: PUSH1 0x00
00002476: DUP1
00002477: REVERT
00002478: JUMPDEST
00002479: POP
0000247a: PUSH1 0x20
0000247c: DUP5
0000247d: ADD
0000247e: SWAP2
0000247f: POP
00002480: PUSH1 0x60
00002482: DUP5
00002483: ADD
00002484: CALLDATALOAD
00002485: PUSH2 0x248d
00002488: DUP2
00002489: PUSH2 0x20e3
0000248c: JUMP
0000248d: JUMPDEST
0000248e: DUP1
0000248f: SWAP2
00002490: POP
00002491: POP
00002492: SWAP3
00002493: POP
00002494: SWAP3
00002495: POP
00002496: SWAP3
00002497: JUMP
00002498: JUMPDEST
00002499: PUSH1 0x00
0000249b: PUSH1 0xc0
0000249d: DUP3
0000249e: ADD
0000249f: SWAP1
000024a0: POP
000024a1: DUP4
000024a2: MLOAD
000024a3: DUP3
000024a4: MSTORE
000024a5: PUSH1 0x01
000024a7: PUSH1 0x01
000024a9: PUSH1 0x40
000024ab: SHL
000024ac: SUB
000024ad: PUSH1 0x20
000024af: DUP6
000024b0: ADD
000024b1: MLOAD
000024b2: AND
000024b3: PUSH1 0x20
000024b5: DUP4
000024b6: ADD
000024b7: MSTORE
000024b8: PUSH1 0x40
000024ba: DUP5
000024bb: ADD
000024bc: MLOAD
000024bd: PUSH2 0x24d3
000024c0: PUSH1 0x40
000024c2: DUP5
000024c3: ADD
000024c4: DUP3
000024c5: DUP1
000024c6: MLOAD
000024c7: DUP3
000024c8: MSTORE
000024c9: PUSH1 0x20
000024cb: SWAP1
000024cc: DUP2
000024cd: ADD
000024ce: MLOAD
000024cf: SWAP2
000024d0: ADD
000024d1: MSTORE
000024d2: JUMP
000024d3: JUMPDEST
000024d4: POP
000024d5: DUP3
000024d6: MLOAD
000024d7: PUSH1 0x80
000024d9: DUP4
000024da: ADD
000024db: MSTORE
000024dc: PUSH1 0x20
000024de: DUP4
000024df: ADD
000024e0: MLOAD
000024e1: PUSH1 0xa0
000024e3: DUP4
000024e4: ADD
000024e5: MSTORE
000024e6: PUSH2 0x1407
000024e9: JUMP
000024ea: JUMPDEST
000024eb: PUSH1 0x00
000024ed: PUSH1 0x60
000024ef: DUP3
000024f0: DUP5
000024f1: SUB
000024f2: SLT
000024f3: ISZERO
000024f4: PUSH2 0x24fc
000024f7: JUMPI
000024f8: PUSH1 0x00
000024fa: DUP1
000024fb: REVERT
000024fc: JUMPDEST
000024fd: PUSH2 0x1407
00002500: DUP4
00002501: DUP4
00002502: PUSH2 0x2089
00002505: JUMP
00002506: JUMPDEST
00002507: PUSH4 0x4e487b71
0000250c: PUSH1 0xe0
0000250e: SHL
0000250f: PUSH1 0x00
00002511: MSTORE
00002512: PUSH1 0x41
00002514: PUSH1 0x04
00002516: MSTORE
00002517: PUSH1 0x24
00002519: PUSH1 0x00
0000251b: REVERT
0000251c: JUMPDEST
0000251d: PUSH1 0x01
0000251f: DUP2
00002520: DUP2
00002521: SHR
00002522: SWAP1
00002523: DUP3
00002524: AND
00002525: DUP1
00002526: PUSH2 0x2530
00002529: JUMPI
0000252a: PUSH1 0x7f
0000252c: DUP3
0000252d: AND
0000252e: SWAP2
0000252f: POP
00002530: JUMPDEST
00002531: PUSH1 0x20
00002533: DUP3
00002534: LT
00002535: DUP2
00002536: SUB
00002537: PUSH2 0x1f66
0000253a: JUMPI
0000253b: PUSH4 0x4e487b71
00002540: PUSH1 0xe0
00002542: SHL
00002543: PUSH1 0x00
00002545: MSTORE
00002546: PUSH1 0x22
00002548: PUSH1 0x04
0000254a: MSTORE
0000254b: PUSH1 0x24
0000254d: PUSH1 0x00
0000254f: REVERT
00002550: JUMPDEST
00002551: PUSH4 0x4e487b71
00002556: PUSH1 0xe0
00002558: SHL
00002559: PUSH1 0x00
0000255b: MSTORE
0000255c: PUSH1 0x32
0000255e: PUSH1 0x04
00002560: MSTORE
00002561: PUSH1 0x24
00002563: PUSH1 0x00
00002565: REVERT
00002566: JUMPDEST
00002567: PUSH1 0x00
00002569: DUP3
0000256a: CALLDATALOAD
0000256b: PUSH1 0x5e
0000256d: NOT
0000256e: DUP4
0000256f: CALLDATASIZE
00002570: SUB
00002571: ADD
00002572: DUP2
00002573: SLT
00002574: PUSH2 0x257c
00002577: JUMPI
00002578: PUSH1 0x00
0000257a: DUP1
0000257b: REVERT
0000257c: JUMPDEST
0000257d: SWAP2
0000257e: SWAP1
0000257f: SWAP2
00002580: ADD
00002581: SWAP3
00002582: SWAP2
00002583: POP
00002584: POP
00002585: JUMP
00002586: JUMPDEST
00002587: PUSH1 0x00
00002589: DUP1
0000258a: DUP4
0000258b: CALLDATALOAD
0000258c: PUSH1 0x1e
0000258e: NOT
0000258f: DUP5
00002590: CALLDATASIZE
00002591: SUB
00002592: ADD
00002593: DUP2
00002594: SLT
00002595: PUSH2 0x259d
00002598: JUMPI
00002599: PUSH1 0x00
0000259b: DUP1
0000259c: REVERT
0000259d: JUMPDEST
0000259e: DUP4
0000259f: ADD
000025a0: DUP1
000025a1: CALLDATALOAD
000025a2: SWAP2
000025a3: POP
000025a4: PUSH1 0x01
000025a6: PUSH1 0x01
000025a8: PUSH1 0x40
000025aa: SHL
000025ab: SUB
000025ac: DUP3
000025ad: GT
000025ae: ISZERO
000025af: PUSH2 0x25b7
000025b2: JUMPI
000025b3: PUSH1 0x00
000025b5: DUP1
000025b6: REVERT
000025b7: JUMPDEST
000025b8: PUSH1 0x20
000025ba: ADD
000025bb: SWAP2
000025bc: POP
000025bd: CALLDATASIZE
000025be: DUP2
000025bf: SWAP1
000025c0: SUB
000025c1: DUP3
000025c2: SGT
000025c3: ISZERO
000025c4: PUSH2 0x20dc
000025c7: JUMPI
000025c8: PUSH1 0x00
000025ca: DUP1
000025cb: REVERT
000025cc: JUMPDEST
000025cd: PUSH1 0x00
000025cf: PUSH1 0x20
000025d1: DUP3
000025d2: DUP5
000025d3: SUB
000025d4: SLT
000025d5: ISZERO
000025d6: PUSH2 0x25de
000025d9: JUMPI
000025da: PUSH1 0x00
000025dc: DUP1
000025dd: REVERT
000025de: JUMPDEST
000025df: PUSH2 0x1407
000025e2: DUP3
000025e3: PUSH2 0x2250
000025e6: JUMP
000025e7: JUMPDEST
000025e8: PUSH1 0x1f
000025ea: DUP3
000025eb: GT
000025ec: ISZERO
000025ed: PUSH2 0x1880
000025f0: JUMPI
000025f1: PUSH1 0x00
000025f3: DUP2
000025f4: PUSH1 0x00
000025f6: MSTORE
000025f7: PUSH1 0x20
000025f9: PUSH1 0x00
000025fb: KECCAK256
000025fc: PUSH1 0x1f
000025fe: DUP6
000025ff: ADD
00002600: PUSH1 0x05
00002602: SHR
00002603: DUP2
00002604: ADD
00002605: PUSH1 0x20
00002607: DUP7
00002608: LT
00002609: ISZERO
0000260a: PUSH2 0x2610
0000260d: JUMPI
0000260e: POP
0000260f: DUP1
00002610: JUMPDEST
00002611: PUSH1 0x1f
00002613: DUP6
00002614: ADD
00002615: PUSH1 0x05
00002617: SHR
00002618: DUP3
00002619: ADD
0000261a: SWAP2
0000261b: POP
0000261c: JUMPDEST
0000261d: DUP2
0000261e: DUP2
0000261f: LT
00002620: ISZERO
00002621: PUSH2 0x10f0
00002624: JUMPI
00002625: DUP3
00002626: DUP2
00002627: SSTORE
00002628: PUSH1 0x01
0000262a: ADD
0000262b: PUSH2 0x261c
0000262e: JUMP
0000262f: JUMPDEST
00002630: PUSH1 0x01
00002632: PUSH1 0x01
00002634: PUSH1 0x40
00002636: SHL
00002637: SUB
00002638: DUP4
00002639: GT
0000263a: ISZERO
0000263b: PUSH2 0x2646
0000263e: JUMPI
0000263f: PUSH2 0x2646
00002642: PUSH2 0x2506
00002645: JUMP
00002646: JUMPDEST
00002647: PUSH2 0x265a
0000264a: DUP4
0000264b: PUSH2 0x2654
0000264e: DUP4
0000264f: SLOAD
00002650: PUSH2 0x251c
00002653: JUMP
00002654: JUMPDEST
00002655: DUP4
00002656: PUSH2 0x25e7
00002659: JUMP
0000265a: JUMPDEST
0000265b: PUSH1 0x00
0000265d: PUSH1 0x1f
0000265f: DUP5
00002660: GT
00002661: PUSH1 0x01
00002663: DUP2
00002664: EQ
00002665: PUSH2 0x268e
00002668: JUMPI
00002669: PUSH1 0x00
0000266b: DUP6
0000266c: ISZERO
0000266d: PUSH2 0x2676
00002670: JUMPI
00002671: POP
00002672: DUP4
00002673: DUP3
00002674: ADD
00002675: CALLDATALOAD
00002676: JUMPDEST
00002677: PUSH1 0x00
00002679: NOT
0000267a: PUSH1 0x03
0000267c: DUP8
0000267d: SWAP1
0000267e: SHL
0000267f: SHR
00002680: NOT
00002681: AND
00002682: PUSH1 0x01
00002684: DUP7
00002685: SWAP1
00002686: SHL
00002687: OR
00002688: DUP4
00002689: SSTORE
0000268a: PUSH2 0x1272
0000268d: JUMP
0000268e: JUMPDEST
0000268f: PUSH1 0x00
00002691: DUP4
00002692: DUP2
00002693: MSTORE
00002694: PUSH1 0x20
00002696: SWAP1
00002697: KECCAK256
00002698: PUSH1 0x1f
0000269a: NOT
0000269b: DUP7
0000269c: AND
0000269d: SWAP1
0000269e: DUP4
0000269f: JUMPDEST
000026a0: DUP3
000026a1: DUP2
000026a2: LT
000026a3: ISZERO
000026a4: PUSH2 0x26bf
000026a7: JUMPI
000026a8: DUP7
000026a9: DUP6
000026aa: ADD
000026ab: CALLDATALOAD
000026ac: DUP3
000026ad: SSTORE
000026ae: PUSH1 0x20
000026b0: SWAP5
000026b1: DUP6
000026b2: ADD
000026b3: SWAP5
000026b4: PUSH1 0x01
000026b6: SWAP1
000026b7: SWAP3
000026b8: ADD
000026b9: SWAP2
000026ba: ADD
000026bb: PUSH2 0x269f
000026be: JUMP
000026bf: JUMPDEST
000026c0: POP
000026c1: DUP7
000026c2: DUP3
000026c3: LT
000026c4: ISZERO
000026c5: PUSH2 0x26dc
000026c8: JUMPI
000026c9: PUSH1 0x00
000026cb: NOT
000026cc: PUSH1 0xf8
000026ce: DUP9
000026cf: PUSH1 0x03
000026d1: SHL
000026d2: AND
000026d3: SHR
000026d4: NOT
000026d5: DUP5
000026d6: DUP8
000026d7: ADD
000026d8: CALLDATALOAD
000026d9: AND
000026da: DUP2
000026db: SSTORE
000026dc: JUMPDEST
000026dd: POP
000026de: POP
000026df: PUSH1 0x01
000026e1: DUP6
000026e2: PUSH1 0x01
000026e4: SHL
000026e5: ADD
000026e6: DUP4
000026e7: SSTORE
000026e8: POP
000026e9: POP
000026ea: POP
000026eb: POP
000026ec: POP
000026ed: JUMP
000026ee: JUMPDEST
000026ef: DUP2
000026f0: DUP4
000026f1: MSTORE
000026f2: DUP2
000026f3: DUP2
000026f4: PUSH1 0x20
000026f6: DUP6
000026f7: ADD
000026f8: CALLDATACOPY
000026f9: POP
000026fa: PUSH1 0x00
000026fc: DUP3
000026fd: DUP3
000026fe: ADD
000026ff: PUSH1 0x20
00002701: SWAP1
00002702: DUP2
00002703: ADD
00002704: SWAP2
00002705: SWAP1
00002706: SWAP2
00002707: MSTORE
00002708: PUSH1 0x1f
0000270a: SWAP1
0000270b: SWAP2
0000270c: ADD
0000270d: PUSH1 0x1f
0000270f: NOT
00002710: AND
00002711: SWAP1
00002712: SWAP2
00002713: ADD
00002714: ADD
00002715: SWAP1
00002716: JUMP
00002717: JUMPDEST
00002718: PUSH1 0x20
0000271a: DUP1
0000271b: DUP3
0000271c: MSTORE
0000271d: DUP2
0000271e: DUP2
0000271f: ADD
00002720: DUP4
00002721: SWAP1
00002722: MSTORE
00002723: PUSH1 0x00
00002725: SWAP1
00002726: PUSH1 0x40
00002728: DUP1
00002729: DUP5
0000272a: ADD
0000272b: PUSH1 0x05
0000272d: DUP7
0000272e: SWAP1
0000272f: SHL
00002730: DUP6
00002731: ADD
00002732: DUP3
00002733: ADD
00002734: DUP8
00002735: DUP6
00002736: JUMPDEST
00002737: DUP9
00002738: DUP2
00002739: LT
0000273a: ISZERO
0000273b: PUSH2 0x27ed
0000273e: JUMPI
0000273f: DUP8
00002740: DUP4
00002741: SUB
00002742: PUSH1 0x3f
00002744: NOT
00002745: ADD
00002746: DUP5
00002747: MSTORE
00002748: DUP2
00002749: CALLDATALOAD
0000274a: CALLDATASIZE
0000274b: DUP12
0000274c: SWAP1
0000274d: SUB
0000274e: PUSH1 0x5e
00002750: NOT
00002751: ADD
00002752: DUP2
00002753: SLT
00002754: PUSH2 0x275c
00002757: JUMPI
00002758: PUSH1 0x00
0000275a: DUP1
0000275b: REVERT
0000275c: JUMPDEST
0000275d: DUP11
0000275e: ADD
0000275f: PUSH1 0x60
00002761: PUSH4 0xffffffff
00002766: PUSH2 0x276e
00002769: DUP4
0000276a: PUSH2 0x2197
0000276d: JUMP
0000276e: JUMPDEST
0000276f: AND
00002770: DUP6
00002771: MSTORE
00002772: PUSH2 0xffff
00002775: PUSH2 0x277f
00002778: DUP10
00002779: DUP5
0000277a: ADD
0000277b: PUSH2 0x2250
0000277e: JUMP
0000277f: JUMPDEST
00002780: AND
00002781: DUP9
00002782: DUP7
00002783: ADD
00002784: MSTORE
00002785: DUP7
00002786: DUP3
00002787: ADD
00002788: CALLDATALOAD
00002789: PUSH1 0x1e
0000278b: NOT
0000278c: DUP4
0000278d: CALLDATASIZE
0000278e: SUB
0000278f: ADD
00002790: DUP2
00002791: SLT
00002792: PUSH2 0x279a
00002795: JUMPI
00002796: PUSH1 0x00
00002798: DUP1
00002799: REVERT
0000279a: JUMPDEST
0000279b: SWAP1
0000279c: SWAP2
0000279d: ADD
0000279e: DUP8
0000279f: DUP2
000027a0: ADD
000027a1: SWAP2
000027a2: SWAP1
000027a3: CALLDATALOAD
000027a4: PUSH1 0x01
000027a6: PUSH1 0x01
000027a8: PUSH1 0x40
000027aa: SHL
000027ab: SUB
000027ac: DUP2
000027ad: GT
000027ae: ISZERO
000027af: PUSH2 0x27b7
000027b2: JUMPI
000027b3: PUSH1 0x00
000027b5: DUP1
000027b6: REVERT
000027b7: JUMPDEST
000027b8: DUP1
000027b9: CALLDATASIZE
000027ba: SUB
000027bb: DUP4
000027bc: SGT
000027bd: ISZERO
000027be: PUSH2 0x27c6
000027c1: JUMPI
000027c2: PUSH1 0x00
000027c4: DUP1
000027c5: REVERT
000027c6: JUMPDEST
000027c7: DUP2
000027c8: DUP9
000027c9: DUP8
000027ca: ADD
000027cb: MSTORE
000027cc: PUSH2 0x27d8
000027cf: DUP3
000027d0: DUP8
000027d1: ADD
000027d2: DUP3
000027d3: DUP6
000027d4: PUSH2 0x26ee
000027d7: JUMP
000027d8: JUMPDEST
000027d9: SWAP7
000027da: DUP10
000027db: ADD
000027dc: SWAP7
000027dd: SWAP6
000027de: POP
000027df: POP
000027e0: POP
000027e1: SWAP2
000027e2: DUP7
000027e3: ADD
000027e4: SWAP2
000027e5: POP
000027e6: PUSH1 0x01
000027e8: ADD
000027e9: PUSH2 0x2736
000027ec: JUMP
000027ed: JUMPDEST
000027ee: POP
000027ef: SWAP1
000027f0: SWAP9
000027f1: SWAP8
000027f2: POP
000027f3: POP
000027f4: POP
000027f5: POP
000027f6: POP
000027f7: POP
000027f8: POP
000027f9: POP
000027fa: JUMP
000027fb: JUMPDEST
000027fc: PUSH1 0x00
000027fe: DUP1
000027ff: DUP6
00002800: DUP6
00002801: GT
00002802: ISZERO
00002803: PUSH2 0x280b
00002806: JUMPI
00002807: PUSH1 0x00
00002809: DUP1
0000280a: REVERT
0000280b: JUMPDEST
0000280c: DUP4
0000280d: DUP7
0000280e: GT
0000280f: ISZERO
00002810: PUSH2 0x2818
00002813: JUMPI
00002814: PUSH1 0x00
00002816: DUP1
00002817: REVERT
00002818: JUMPDEST
00002819: POP
0000281a: POP
0000281b: DUP3
0000281c: ADD
0000281d: SWAP4
0000281e: SWAP2
0000281f: SWAP1
00002820: SWAP3
00002821: SUB
00002822: SWAP2
00002823: POP
00002824: JUMP
00002825: JUMPDEST
00002826: PUSH1 0x00
00002828: DUP5
00002829: MLOAD
0000282a: PUSH2 0x2837
0000282d: DUP2
0000282e: DUP5
0000282f: PUSH1 0x20
00002831: DUP10
00002832: ADD
00002833: PUSH2 0x1fa0
00002836: JUMP
00002837: JUMPDEST
00002838: DUP3
00002839: ADD
0000283a: DUP4
0000283b: DUP6
0000283c: DUP3
0000283d: CALLDATACOPY
0000283e: PUSH1 0x00
00002840: SWAP4
00002841: ADD
00002842: SWAP3
00002843: DUP4
00002844: MSTORE
00002845: POP
00002846: SWAP1
00002847: SWAP4
00002848: SWAP3
00002849: POP
0000284a: POP
0000284b: POP
0000284c: JUMP
0000284d: JUMPDEST
0000284e: PUSH1 0x20
00002850: DUP2
00002851: MSTORE
00002852: PUSH1 0x00
00002854: PUSH2 0x0aed
00002857: PUSH1 0x20
00002859: DUP4
0000285a: ADD
0000285b: DUP5
0000285c: DUP7
0000285d: PUSH2 0x26ee
00002860: JUMP
00002861: JUMPDEST
00002862: PUSH1 0x00
00002864: DUP3
00002865: CALLDATALOAD
00002866: PUSH2 0x013e
00002869: NOT
0000286a: DUP4
0000286b: CALLDATASIZE
0000286c: SUB
0000286d: ADD
0000286e: DUP2
0000286f: SLT
00002870: PUSH2 0x257c
00002873: JUMPI
00002874: PUSH1 0x00
00002876: DUP1
00002877: REVERT
00002878: JUMPDEST
00002879: PUSH1 0x01
0000287b: PUSH1 0x01
0000287d: PUSH1 0x40
0000287f: SHL
00002880: SUB
00002881: DUP2
00002882: AND
00002883: DUP2
00002884: EQ
00002885: PUSH2 0x1357
00002888: JUMPI
00002889: PUSH1 0x00
0000288b: DUP1
0000288c: REVERT
0000288d: JUMPDEST
0000288e: PUSH4 0xffffffff
00002893: PUSH2 0x289b
00002896: DUP10
00002897: PUSH2 0x2197
0000289a: JUMP
0000289b: JUMPDEST
0000289c: AND
0000289d: DUP2
0000289e: MSTORE
0000289f: PUSH1 0x20
000028a1: DUP9
000028a2: ADD
000028a3: CALLDATALOAD
000028a4: PUSH1 0x20
000028a6: DUP3
000028a7: ADD
000028a8: MSTORE
000028a9: PUSH1 0x00
000028ab: PUSH1 0x40
000028ad: DUP10
000028ae: ADD
000028af: CALLDATALOAD
000028b0: PUSH2 0x28b8
000028b3: DUP2
000028b4: PUSH2 0x2878
000028b7: JUMP
000028b8: JUMPDEST
000028b9: PUSH1 0x01
000028bb: PUSH1 0x01
000028bd: PUSH1 0x40
000028bf: SHL
000028c0: SUB
000028c1: DUP2
000028c2: AND
000028c3: PUSH1 0x40
000028c5: DUP5
000028c6: ADD
000028c7: MSTORE
000028c8: POP
000028c9: DUP8
000028ca: PUSH1 0x60
000028cc: DUP4
000028cd: ADD
000028ce: MSTORE
000028cf: PUSH1 0xe0
000028d1: PUSH1 0x80
000028d3: DUP4
000028d4: ADD
000028d5: MSTORE
000028d6: PUSH2 0x28e3
000028d9: PUSH1 0xe0
000028db: DUP4
000028dc: ADD
000028dd: DUP8
000028de: DUP10
000028df: PUSH2 0x26ee
000028e2: JUMP
000028e3: JUMPDEST
000028e4: PUSH1 0x01
000028e6: PUSH1 0x01
000028e8: PUSH1 0xa0
000028ea: SHL
000028eb: SUB
000028ec: DUP7
000028ed: AND
000028ee: PUSH1 0xa0
000028f0: DUP5
000028f1: ADD
000028f2: MSTORE
000028f3: DUP3
000028f4: DUP2
000028f5: SUB
000028f6: PUSH1 0xc0
000028f8: DUP5
000028f9: ADD
000028fa: MSTORE
000028fb: PUSH2 0x2905
000028fe: DUP2
000028ff: DUP6
00002900: DUP8
00002901: PUSH2 0x26ee
00002904: JUMP
00002905: JUMPDEST
00002906: SWAP11
00002907: SWAP10
00002908: POP
00002909: POP
0000290a: POP
0000290b: POP
0000290c: POP
0000290d: POP
0000290e: POP
0000290f: POP
00002910: POP
00002911: POP
00002912: JUMP
00002913: JUMPDEST
00002914: PUSH1 0x40
00002916: DUP1
00002917: MLOAD
00002918: SWAP1
00002919: DUP2
0000291a: ADD
0000291b: PUSH1 0x01
0000291d: PUSH1 0x01
0000291f: PUSH1 0x40
00002921: SHL
00002922: SUB
00002923: DUP2
00002924: GT
00002925: DUP3
00002926: DUP3
00002927: LT
00002928: OR
00002929: ISZERO
0000292a: PUSH2 0x2935
0000292d: JUMPI
0000292e: PUSH2 0x2935
00002931: PUSH2 0x2506
00002934: JUMP
00002935: JUMPDEST
00002936: PUSH1 0x40
00002938: MSTORE
00002939: SWAP1
0000293a: JUMP
0000293b: JUMPDEST
0000293c: PUSH1 0x00
0000293e: PUSH1 0x20
00002940: DUP3
00002941: DUP5
00002942: SUB
00002943: SLT
00002944: ISZERO
00002945: PUSH2 0x294d
00002948: JUMPI
00002949: PUSH1 0x00
0000294b: DUP1
0000294c: REVERT
0000294d: JUMPDEST
0000294e: DUP2
0000294f: MLOAD
00002950: PUSH1 0x01
00002952: PUSH1 0x01
00002954: PUSH1 0x40
00002956: SHL
00002957: SUB
00002958: DUP1
00002959: DUP3
0000295a: GT
0000295b: ISZERO
0000295c: PUSH2 0x2964
0000295f: JUMPI
00002960: PUSH1 0x00
00002962: DUP1
00002963: REVERT
00002964: JUMPDEST
00002965: DUP2
00002966: DUP5
00002967: ADD
00002968: SWAP2
00002969: POP
0000296a: DUP5
0000296b: PUSH1 0x1f
0000296d: DUP4
0000296e: ADD
0000296f: SLT
00002970: PUSH2 0x2978
00002973: JUMPI
00002974: PUSH1 0x00
00002976: DUP1
00002977: REVERT
00002978: JUMPDEST
00002979: DUP2
0000297a: MLOAD
0000297b: DUP2
0000297c: DUP2
0000297d: GT
0000297e: ISZERO
0000297f: PUSH2 0x298a
00002982: JUMPI
00002983: PUSH2 0x298a
00002986: PUSH2 0x2506
00002989: JUMP
0000298a: JUMPDEST
0000298b: PUSH1 0x40
0000298d: MLOAD
0000298e: PUSH1 0x1f
00002990: DUP3
00002991: ADD
00002992: PUSH1 0x1f
00002994: NOT
00002995: SWAP1
00002996: DUP2
00002997: AND
00002998: PUSH1 0x3f
0000299a: ADD
0000299b: AND
0000299c: DUP2
0000299d: ADD
0000299e: SWAP1
0000299f: DUP4
000029a0: DUP3
000029a1: GT
000029a2: DUP2
000029a3: DUP4
000029a4: LT
000029a5: OR
000029a6: ISZERO
000029a7: PUSH2 0x29b2
000029aa: JUMPI
000029ab: PUSH2 0x29b2
000029ae: PUSH2 0x2506
000029b1: JUMP
000029b2: JUMPDEST
000029b3: DUP2
000029b4: PUSH1 0x40
000029b6: MSTORE
000029b7: DUP3
000029b8: DUP2
000029b9: MSTORE
000029ba: DUP8
000029bb: PUSH1 0x20
000029bd: DUP5
000029be: DUP8
000029bf: ADD
000029c0: ADD
000029c1: GT
000029c2: ISZERO
000029c3: PUSH2 0x29cb
000029c6: JUMPI
000029c7: PUSH1 0x00
000029c9: DUP1
000029ca: REVERT
000029cb: JUMPDEST
000029cc: PUSH2 0x1a21
000029cf: DUP4
000029d0: PUSH1 0x20
000029d2: DUP4
000029d3: ADD
000029d4: PUSH1 0x20
000029d6: DUP9
000029d7: ADD
000029d8: PUSH2 0x1fa0
000029db: JUMP
000029dc: JUMPDEST
000029dd: PUSH1 0x00
000029df: PUSH1 0x40
000029e1: DUP3
000029e2: DUP5
000029e3: SUB
000029e4: SLT
000029e5: ISZERO
000029e6: PUSH2 0x29ee
000029e9: JUMPI
000029ea: PUSH1 0x00
000029ec: DUP1
000029ed: REVERT
000029ee: JUMPDEST
000029ef: PUSH2 0x29f6
000029f2: PUSH2 0x2913
000029f5: JUMP
000029f6: JUMPDEST
000029f7: DUP3
000029f8: CALLDATALOAD
000029f9: DUP2
000029fa: MSTORE
000029fb: PUSH1 0x20
000029fd: DUP4
000029fe: ADD
000029ff: CALLDATALOAD
00002a00: PUSH1 0x20
00002a02: DUP3
00002a03: ADD
00002a04: MSTORE
00002a05: DUP1
00002a06: SWAP2
00002a07: POP
00002a08: POP
00002a09: SWAP3
00002a0a: SWAP2
00002a0b: POP
00002a0c: POP
00002a0d: JUMP
00002a0e: JUMPDEST
00002a0f: PUSH1 0x00
00002a11: PUSH1 0x20
00002a13: DUP3
00002a14: DUP5
00002a15: SUB
00002a16: SLT
00002a17: ISZERO
00002a18: PUSH2 0x2a20
00002a1b: JUMPI
00002a1c: PUSH1 0x00
00002a1e: DUP1
00002a1f: REVERT
00002a20: JUMPDEST
00002a21: DUP2
00002a22: CALLDATALOAD
00002a23: PUSH2 0x1407
00002a26: DUP2
00002a27: PUSH2 0x2878
00002a2a: JUMP
00002a2b: JUMPDEST
00002a2c: PUSH1 0x01
00002a2e: DUP1
00002a2f: PUSH1 0xa0
00002a31: SHL
00002a32: SUB
00002a33: DUP6
00002a34: AND
00002a35: DUP2
00002a36: MSTORE
00002a37: DUP4
00002a38: PUSH1 0x20
00002a3a: DUP3
00002a3b: ADD
00002a3c: MSTORE
00002a3d: PUSH2 0xffff
00002a40: DUP4
00002a41: AND
00002a42: PUSH1 0x40
00002a44: DUP3
00002a45: ADD
00002a46: MSTORE
00002a47: PUSH1 0x80
00002a49: PUSH1 0x60
00002a4b: DUP3
00002a4c: ADD
00002a4d: MSTORE
00002a4e: PUSH1 0x00
00002a50: PUSH2 0x2a5c
00002a53: PUSH1 0x80
00002a55: DUP4
00002a56: ADD
00002a57: DUP5
00002a58: PUSH2 0x1fc4
00002a5b: JUMP
00002a5c: JUMPDEST
00002a5d: SWAP7
00002a5e: SWAP6
00002a5f: POP
00002a60: POP
00002a61: POP
00002a62: POP
00002a63: POP
00002a64: POP
00002a65: JUMP
00002a66: JUMPDEST
00002a67: PUSH1 0x40
00002a69: DUP2
00002a6a: MSTORE
00002a6b: PUSH1 0x00
00002a6d: PUSH2 0x2a79
00002a70: PUSH1 0x40
00002a72: DUP4
00002a73: ADD
00002a74: DUP6
00002a75: PUSH2 0x1fc4
00002a78: JUMP
00002a79: JUMPDEST
00002a7a: DUP3
00002a7b: DUP2
00002a7c: SUB
00002a7d: PUSH1 0x20
00002a7f: DUP5
00002a80: ADD
00002a81: MSTORE
00002a82: PUSH2 0x17c4
00002a85: DUP2
00002a86: DUP6
00002a87: PUSH2 0x1fc4
00002a8a: JUMP
00002a8b: JUMPDEST
00002a8c: PUSH1 0x00
00002a8e: PUSH1 0x20
00002a90: DUP3
00002a91: DUP5
00002a92: SUB
00002a93: SLT
00002a94: ISZERO
00002a95: PUSH2 0x2a9d
00002a98: JUMPI
00002a99: PUSH1 0x00
00002a9b: DUP1
00002a9c: REVERT
00002a9d: JUMPDEST
00002a9e: DUP2
00002a9f: MLOAD
00002aa0: PUSH2 0x1407
00002aa3: DUP2
00002aa4: PUSH2 0x21da
00002aa7: JUMP
00002aa8: JUMPDEST
00002aa9: PUSH1 0x40
00002aab: DUP2
00002aac: MSTORE
00002aad: PUSH4 0xffffffff
00002ab2: DUP4
00002ab3: MLOAD
00002ab4: AND
00002ab5: PUSH1 0x40
00002ab7: DUP3
00002ab8: ADD
00002ab9: MSTORE
00002aba: PUSH1 0x20
00002abc: DUP4
00002abd: ADD
00002abe: MLOAD
00002abf: PUSH1 0x60
00002ac1: DUP3
00002ac2: ADD
00002ac3: MSTORE
00002ac4: PUSH1 0x00
00002ac6: PUSH1 0x40
00002ac8: DUP5
00002ac9: ADD
00002aca: MLOAD
00002acb: PUSH1 0xa0
00002acd: PUSH1 0x80
00002acf: DUP5
00002ad0: ADD
00002ad1: MSTORE
00002ad2: PUSH2 0x2ade
00002ad5: PUSH1 0xe0
00002ad7: DUP5
00002ad8: ADD
00002ad9: DUP3
00002ada: PUSH2 0x1fc4
00002add: JUMP
00002ade: JUMPDEST
00002adf: SWAP1
00002ae0: POP
00002ae1: PUSH1 0x60
00002ae3: DUP6
00002ae4: ADD
00002ae5: MLOAD
00002ae6: PUSH1 0x3f
00002ae8: NOT
00002ae9: DUP5
00002aea: DUP4
00002aeb: SUB
00002aec: ADD
00002aed: PUSH1 0xa0
00002aef: DUP6
00002af0: ADD
00002af1: MSTORE
00002af2: PUSH2 0x2afb
00002af5: DUP3
00002af6: DUP3
00002af7: PUSH2 0x1fc4
00002afa: JUMP
00002afb: JUMPDEST
00002afc: PUSH1 0x80
00002afe: SWAP7
00002aff: SWAP1
00002b00: SWAP7
00002b01: ADD
00002b02: MLOAD
00002b03: ISZERO
00002b04: ISZERO
00002b05: PUSH1 0xc0
00002b07: DUP6
00002b08: ADD
00002b09: MSTORE
00002b0a: POP
00002b0b: POP
00002b0c: POP
00002b0d: PUSH1 0x01
00002b0f: PUSH1 0x01
00002b11: PUSH1 0xa0
00002b13: SHL
00002b14: SUB
00002b15: SWAP2
00002b16: SWAP1
00002b17: SWAP2
00002b18: AND
00002b19: PUSH1 0x20
00002b1b: SWAP1
00002b1c: SWAP2
00002b1d: ADD
00002b1e: MSTORE
00002b1f: SWAP1
00002b20: JUMP
00002b21: JUMPDEST
00002b22: PUSH1 0x00
00002b24: PUSH1 0x40
00002b26: DUP3
00002b27: DUP5
00002b28: SUB
00002b29: SLT
00002b2a: ISZERO
00002b2b: PUSH2 0x2b33
00002b2e: JUMPI
00002b2f: PUSH1 0x00
00002b31: DUP1
00002b32: REVERT
00002b33: JUMPDEST
00002b34: PUSH2 0x2b3b
00002b37: PUSH2 0x2913
00002b3a: JUMP
00002b3b: JUMPDEST
00002b3c: SWAP1
00002b3d: POP
00002b3e: DUP2
00002b3f: MLOAD
00002b40: DUP2
00002b41: MSTORE
00002b42: PUSH1 0x20
00002b44: DUP3
00002b45: ADD
00002b46: MLOAD
00002b47: PUSH1 0x20
00002b49: DUP3
00002b4a: ADD
00002b4b: MSTORE
00002b4c: SWAP3
00002b4d: SWAP2
00002b4e: POP
00002b4f: POP
00002b50: JUMP
00002b51: JUMPDEST
00002b52: PUSH1 0x00
00002b54: PUSH1 0x40
00002b56: DUP3
00002b57: DUP5
00002b58: SUB
00002b59: SLT
00002b5a: ISZERO
00002b5b: PUSH2 0x2b63
00002b5e: JUMPI
00002b5f: PUSH1 0x00
00002b61: DUP1
00002b62: REVERT
00002b63: JUMPDEST
00002b64: PUSH2 0x1407
00002b67: DUP4
00002b68: DUP4
00002b69: PUSH2 0x2b21
00002b6c: JUMP
00002b6d: JUMPDEST
00002b6e: PUSH1 0x01
00002b70: PUSH1 0x01
00002b72: PUSH1 0xf0
00002b74: SHL
00002b75: SUB
00002b76: NOT
00002b77: DUP2
00002b78: CALLDATALOAD
00002b79: DUP2
00002b7a: DUP2
00002b7b: AND
00002b7c: SWAP2
00002b7d: PUSH1 0x02
00002b7f: DUP6
00002b80: LT
00002b81: ISZERO
00002b82: PUSH2 0x2b95
00002b85: JUMPI
00002b86: DUP1
00002b87: DUP2
00002b88: DUP7
00002b89: PUSH1 0x02
00002b8b: SUB
00002b8c: PUSH1 0x03
00002b8e: SHL
00002b8f: SHL
00002b90: DUP4
00002b91: AND
00002b92: AND
00002b93: SWAP3
00002b94: POP
00002b95: JUMPDEST
00002b96: POP
00002b97: POP
00002b98: SWAP3
00002b99: SWAP2
00002b9a: POP
00002b9b: POP
00002b9c: JUMP
00002b9d: JUMPDEST
00002b9e: PUSH1 0x00
00002ba0: PUSH1 0x80
00002ba2: DUP3
00002ba3: DUP5
00002ba4: SUB
00002ba5: SLT
00002ba6: ISZERO
00002ba7: PUSH2 0x2baf
00002baa: JUMPI
00002bab: PUSH1 0x00
00002bad: DUP1
00002bae: REVERT
00002baf: JUMPDEST
00002bb0: PUSH1 0x40
00002bb2: MLOAD
00002bb3: PUSH1 0x60
00002bb5: DUP2
00002bb6: ADD
00002bb7: DUP2
00002bb8: DUP2
00002bb9: LT
00002bba: PUSH1 0x01
00002bbc: PUSH1 0x01
00002bbe: PUSH1 0x40
00002bc0: SHL
00002bc1: SUB
00002bc2: DUP3
00002bc3: GT
00002bc4: OR
00002bc5: ISZERO
00002bc6: PUSH2 0x2bd1
00002bc9: JUMPI
00002bca: PUSH2 0x2bd1
00002bcd: PUSH2 0x2506
00002bd0: JUMP
00002bd1: JUMPDEST
00002bd2: PUSH1 0x40
00002bd4: MSTORE
00002bd5: DUP3
00002bd6: MLOAD
00002bd7: DUP2
00002bd8: MSTORE
00002bd9: PUSH1 0x20
00002bdb: DUP4
00002bdc: ADD
00002bdd: MLOAD
00002bde: PUSH2 0x2be6
00002be1: DUP2
00002be2: PUSH2 0x2878
00002be5: JUMP
00002be6: JUMPDEST
00002be7: PUSH1 0x20
00002be9: DUP3
00002bea: ADD
00002beb: MSTORE
00002bec: PUSH2 0x2bf8
00002bef: DUP5
00002bf0: PUSH1 0x40
00002bf2: DUP6
00002bf3: ADD
00002bf4: PUSH2 0x2b21
00002bf7: JUMP
00002bf8: JUMPDEST
00002bf9: PUSH1 0x40
00002bfb: DUP3
00002bfc: ADD
00002bfd: MSTORE
00002bfe: SWAP4
00002bff: SWAP3
00002c00: POP
00002c01: POP
00002c02: POP
00002c03: JUMP
00002c04: JUMPDEST
00002c05: PUSH1 0x00
00002c07: DUP3
00002c08: PUSH2 0x2c21
00002c0b: JUMPI
00002c0c: PUSH4 0x4e487b71
00002c11: PUSH1 0xe0
00002c13: SHL
00002c14: PUSH1 0x00
00002c16: MSTORE
00002c17: PUSH1 0x12
00002c19: PUSH1 0x04
00002c1b: MSTORE
00002c1c: PUSH1 0x24
00002c1e: PUSH1 0x00
00002c20: REVERT
00002c21: JUMPDEST
00002c22: POP
00002c23: DIV
00002c24: SWAP1
00002c25: JUMP
00002c26: JUMPDEST
00002c27: DUP1
00002c28: DUP3
00002c29: MUL
00002c2a: DUP2
00002c2b: ISZERO
00002c2c: DUP3
00002c2d: DUP3
00002c2e: DIV
00002c2f: DUP5
00002c30: EQ
00002c31: OR
00002c32: PUSH2 0x096f
00002c35: JUMPI
00002c36: PUSH4 0x4e487b71
00002c3b: PUSH1 0xe0
00002c3d: SHL
00002c3e: PUSH1 0x00
00002c40: MSTORE
00002c41: PUSH1 0x11
00002c43: PUSH1 0x04
00002c45: MSTORE
00002c46: PUSH1 0x24
00002c48: PUSH1 0x00
00002c4a: REVERT
00002c4b: JUMPDEST
00002c4c: DUP1
00002c4d: CALLDATALOAD
00002c4e: PUSH1 0x20
00002c50: DUP4
00002c51: LT
00002c52: ISZERO
00002c53: PUSH2 0x096f
00002c56: JUMPI
00002c57: PUSH1 0x00
00002c59: NOT
00002c5a: PUSH1 0x20
00002c5c: DUP5
00002c5d: SWAP1
00002c5e: SUB
00002c5f: PUSH1 0x03
00002c61: SHL
00002c62: SHL
00002c63: AND
00002c64: SWAP3
00002c65: SWAP2
00002c66: POP
00002c67: POP
00002c68: JUMP
00002c69: JUMPDEST
00002c6a: PUSH1 0x01
00002c6c: PUSH1 0x01
00002c6e: PUSH1 0xc0
00002c70: SHL
00002c71: SUB
00002c72: NOT
00002c73: DUP2
00002c74: CALLDATALOAD
00002c75: DUP2
00002c76: DUP2
00002c77: AND
00002c78: SWAP2
00002c79: PUSH1 0x08
00002c7b: DUP6
00002c7c: LT
00002c7d: ISZERO
00002c7e: PUSH2 0x2b95
00002c81: JUMPI
00002c82: PUSH1 0x08
00002c84: SWAP5
00002c85: SWAP1
00002c86: SWAP5
00002c87: SUB
00002c88: PUSH1 0x03
00002c8a: SHL
00002c8b: DUP5
00002c8c: SWAP1
00002c8d: SHL
00002c8e: AND
00002c8f: SWAP1
00002c90: SWAP3
00002c91: AND
00002c92: SWAP3
00002c93: SWAP2
00002c94: POP
00002c95: POP
00002c96: JUMP
00002c97: JUMPDEST
00002c98: PUSH1 0x01
00002c9a: PUSH1 0x01
00002c9c: PUSH1 0x40
00002c9e: SHL
00002c9f: SUB
00002ca0: PUSH1 0xc0
00002ca2: SHL
00002ca3: DUP6
00002ca4: PUSH1 0xc0
00002ca6: SHL
00002ca7: AND
00002ca8: DUP2
00002ca9: MSTORE
00002caa: PUSH4 0xffffffff
00002caf: PUSH1 0xe0
00002cb1: SHL
00002cb2: DUP5
00002cb3: PUSH1 0xe0
00002cb5: SHL
00002cb6: AND
00002cb7: PUSH1 0x08
00002cb9: DUP3
00002cba: ADD
00002cbb: MSTORE
00002cbc: DUP3
00002cbd: PUSH1 0x0c
00002cbf: DUP3
00002cc0: ADD
00002cc1: MSTORE
00002cc2: PUSH1 0x00
00002cc4: DUP3
00002cc5: MLOAD
00002cc6: PUSH2 0x2cd6
00002cc9: DUP2
00002cca: PUSH1 0x2c
00002ccc: DUP6
00002ccd: ADD
00002cce: PUSH1 0x20
00002cd0: DUP8
00002cd1: ADD
00002cd2: PUSH2 0x1fa0
00002cd5: JUMP
00002cd6: JUMPDEST
00002cd7: SWAP2
00002cd8: SWAP1
00002cd9: SWAP2
00002cda: ADD
00002cdb: PUSH1 0x2c
00002cdd: ADD
00002cde: SWAP6
00002cdf: SWAP5
00002ce0: POP
00002ce1: POP
00002ce2: POP
00002ce3: POP
00002ce4: POP
00002ce5: JUMP
00002ce6: JUMPDEST
00002ce7: DUP5
00002ce8: DUP2
00002ce9: MSTORE
00002cea: PUSH1 0x01
00002cec: PUSH1 0x01
00002cee: PUSH1 0x40
00002cf0: SHL
00002cf1: SUB
00002cf2: PUSH1 0xc0
00002cf4: SHL
00002cf5: DUP5
00002cf6: PUSH1 0xc0
00002cf8: SHL
00002cf9: AND
00002cfa: PUSH1 0x20
00002cfc: DUP3
00002cfd: ADD
00002cfe: MSTORE
00002cff: DUP3
00002d00: PUSH1 0x28
00002d02: DUP3
00002d03: ADD
00002d04: MSTORE
00002d05: PUSH1 0x00
00002d07: DUP3
00002d08: MLOAD
00002d09: PUSH2 0x2d19
00002d0c: DUP2
00002d0d: PUSH1 0x48
00002d0f: DUP6
00002d10: ADD
00002d11: PUSH1 0x20
00002d13: DUP8
00002d14: ADD
00002d15: PUSH2 0x1fa0
00002d18: JUMP
00002d19: JUMPDEST
00002d1a: SWAP2
00002d1b: SWAP1
00002d1c: SWAP2
00002d1d: ADD
00002d1e: PUSH1 0x48
00002d20: ADD
00002d21: SWAP6
00002d22: SWAP5
00002d23: POP
00002d24: POP
00002d25: POP
00002d26: POP
00002d27: POP
00002d28: JUMP
00002d29: JUMPDEST
00002d2a: PUSH1 0x00
00002d2c: PUSH1 0x20
00002d2e: DUP3
00002d2f: DUP5
00002d30: SUB
00002d31: SLT
00002d32: ISZERO
00002d33: PUSH2 0x2d3b
00002d36: JUMPI
00002d37: PUSH1 0x00
00002d39: DUP1
00002d3a: REVERT
00002d3b: JUMPDEST
00002d3c: DUP2
00002d3d: MLOAD
00002d3e: PUSH2 0x1407
00002d41: DUP2
00002d42: PUSH2 0x20e3
00002d45: JUMP
00002d46: INVALID
00002d47: PUSH19 0xab1bc1039b79dc4724ffca13de82c96834302d
00002d5b: EXTCODECOPY
00002d5c: PUSH31 0x0d4252232d4b2dd8f900a26469706673582212209ae563e07a370c91e89afc
00002d7c: SDIV
00002d7d: UNKNOWN(0xFC)
00002d7e: UNKNOWN(0xA5)
00002d7f: UNKNOWN(0xF7)
00002d80: UNKNOWN(0xC0)
00002d81: MOD
00002d82: DUP4
00002d83: UNKNOWN(0xCD)
00002d84: DIV
00002d85: UNKNOWN(0xE8)
00002d86: SWAP16
00002d87: UNKNOWN(0xD7)
00002d88: PUSH7 0x58c20796c56d68
00002d90: LOG3
00002d91: PUSH5 0x736f6c6343
00002d97: STOP
00002d98: ADDMOD
00002d99: AND
00002d9a: STOP
00002d9b: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x82336ab97049b67ea253fe945ee07606aadc9501e89504d9fe92155251f199c7
call_targets: 0x13b380b878eae3cdcf0b1bede31b5eceb253ec0b
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x82336ab97049b67ea253fe945ee07606aadc9501e89504d9fe92155251f199c7",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x13b380b878eae3cdcf0b1bede31b5eceb253ec0b"
    ],
    "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": "0xd045a0dc",
            "selector": "0xd045a0dc",
            "calldata_variants": [
                "0xd045a0dc",
                "0xd045a0dc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd4243885",
            "selector": "0xd4243885",
            "calldata_variants": [
                "0xd4243885",
                "0xd42438850000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfc0c546a",
            "selector": "0xfc0c546a",
            "calldata_variants": [
                "0xfc0c546a",
                "0xfc0c546a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xff7bd03d",
            "selector": "0xff7bd03d",
            "calldata_variants": [
                "0xff7bd03d",
                "0xff7bd03d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xbd815db0",
            "selector": "0xbd815db0",
            "calldata_variants": [
                "0xbd815db0",
                "0xbd815db00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc4d66de8",
            "selector": "0xc4d66de8",
            "calldata_variants": [
                "0xc4d66de8",
                "0xc4d66de80000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc7c7f5b3",
            "selector": "0xc7c7f5b3",
            "calldata_variants": [
                "0xc7c7f5b3",
                "0xc7c7f5b30000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 3924,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 4705,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 5372,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 5,
    "guards_detected": [],
    "untrusted_call_count": 5
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x82336ab97049b67ea253fe945ee07606aadc9501e89504d9fe92155251f199c7
call_targets: 0x13b380b878eae3cdcf0b1bede31b5eceb253ec0b
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x82336ab97049b67ea253fe945ee07606aadc9501e89504d9fe92155251f199c7",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x13b380b878eae3cdcf0b1bede31b5eceb253ec0b"
    ],
    "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": "0xd045a0dc",
            "selector": "0xd045a0dc",
            "calldata_variants": [
                "0xd045a0dc",
                "0xd045a0dc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd4243885",
            "selector": "0xd4243885",
            "calldata_variants": [
                "0xd4243885",
                "0xd42438850000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfc0c546a",
            "selector": "0xfc0c546a",
            "calldata_variants": [
                "0xfc0c546a",
                "0xfc0c546a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xff7bd03d",
            "selector": "0xff7bd03d",
            "calldata_variants": [
                "0xff7bd03d",
                "0xff7bd03d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xbd815db0",
            "selector": "0xbd815db0",
            "calldata_variants": [
                "0xbd815db0",
                "0xbd815db00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc4d66de8",
            "selector": "0xc4d66de8",
            "calldata_variants": [
                "0xc4d66de8",
                "0xc4d66de80000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc7c7f5b3",
            "selector": "0xc7c7f5b3",
            "calldata_variants": [
                "0xc7c7f5b3",
                "0xc7c7f5b30000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 3924,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 4705,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 5372,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 5,
    "guards_detected": []
}
info other cast Heavy EXTCODE*/BALANCE usage 55 no
view
evidence_json
{
    "notes": "frequent external code or balance checks; may indicate introspection or validation logic",
    "ext_balance_count": 6
}