cb4fcb3a-a81f-40f0-8145-0694e4cb93fa
Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?
| ID | Type | Status | Attempts | Heartbeat |
|---|---|---|---|---|
| 31335 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 111008 | artifact.fetch | failed | 1 / 3 | 1 week ago |
| 111009 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 111010 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 111011 | capability.graph | complete | 1 / 3 | 1 week ago |
| 111012 | detector.run | complete | 1 / 3 | 1 week ago |
| 111013 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:1234211] OpenAI Codex v0.77.0 (research preview)
[codex:1234211] --------
[codex:1234211] workdir: /tmp/codex-multi-pupumdos
[codex:1234211] model: gpt-5.2-codex
[codex:1234211] provider: openai
[codex:1234211] approval: never
[codex:1234211] sandbox: read-only
[codex:1234211] reasoning effort: xhigh
[codex:1234211] reasoning summaries: auto
[codex:1234211] session id: 019b8067-4076-7992-9eaa-9038635b1edf
[codex:1234211] --------
[codex:1234211] user
[codex:1234211] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:1234211]
[codex:1234211] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:1234211]
[codex:1234211] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:1234211] - Gas inefficiency, code quality, naming, or best practices
[codex:1234211] - Theoretical vulnerabilities without a clear extraction path
[codex:1234211] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:1234211] - Front-running unless it enables theft beyond MEV
[codex:1234211] - DoS, griefing, or issues that don't result in attacker profit
[codex:1234211] - Missing events, view function issues, or informational findings
[codex:1234211]
[codex:1234211] HIGH-VALUE PATTERNS TO HUNT:
[codex:1234211] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:1234211] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:1234211] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:1234211] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:1234211] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:1234211] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:1234211] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:1234211] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:1234211] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:1234211]
[codex:1234211] For each finding, you MUST provide:
[codex:1234211] 1. Exact file and line numbers of vulnerable code
[codex:1234211] 2. Step-by-step exploit transaction sequence
[codex:1234211] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:1234211]
[codex:1234211] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:1234211]
[codex:1234211] Output MUST be valid JSON matching the provided schema.
[codex:1234211] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:1234211] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:1234211] mcp startup: no servers
[codex:1234211]
[codex:1234211] thinking
[codex:1234211] **Preparing to review skills and resources**
[codex:1234211] exec
[codex:1234211] /bin/bash -lc ls in /tmp/codex-multi-pupumdos succeeded in 5ms:
[codex:1234211] AUDIT_BUNDLE.txt
[codex:1234211] codex-output-schema.json
[codex:1234211] contracts
[codex:1234211] exec
[codex:1234211] /bin/bash -lc "sed -n '1,200p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-pupumdos succeeded in 6ms:
[codex:1234211] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:1234211]
[codex:1234211] ================================================================================
[codex:1234211] FILE: contracts/src/L1/L2OutputOracle.sol
[codex:1234211] ================================================================================
[codex:1234211] // SPDX-License-Identifier: MIT
[codex:1234211] pragma solidity 0.8.15;
[codex:1234211]
[codex:1234211] import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
[codex:1234211] import { ISemver } from "src/universal/ISemver.sol";
[codex:1234211] import { Types } from "src/libraries/Types.sol";
[codex:1234211] import { Constants } from "src/libraries/Constants.sol";
[codex:1234211]
[codex:1234211] /// @custom:proxied
[codex:1234211] /// @title L2OutputOracle
[codex:1234211] /// @notice The L2OutputOracle contains an array of L2 state outputs, where each output is a
[codex:1234211] /// commitment to the state of the L2 chain. Other contracts like the OptimismPortal use
[codex:1234211] /// these outputs to verify information about the state of L2.
[codex:1234211] contract L2OutputOracle is Initializable, ISemver {
[codex:1234211] /// @notice The number of the first L2 block recorded in this contract.
[codex:1234211]
[codex:1234211] thinking
[codex:1234211] **Continuing exploration**
[codex:1234211] exec
[codex:1234211] /bin/bash -lc "sed -n '200,400p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-pupumdos succeeded in 6ms:
[codex:1234211] /// @param _l1BlockHash A block hash which must be included in the current chain.
[codex:1234211] /// @param _l1BlockNumber The block number with the specified block hash.
[codex:1234211] function proposeL2Output(
[codex:1234211] bytes32 _outputRoot,
[codex:1234211] uint256 _l2BlockNumber,
[codex:1234211] bytes32 _l1BlockHash,
[codex:1234211] uint256 _l1BlockNumber
[codex:1234211] )
[codex:1234211] external
[codex:1234211] payable
[codex:1234211] {
[codex:1234211] require(msg.sender == proposer, "L2OutputOracle: only the proposer address can propose new outputs");
[codex:1234211]
[codex:1234211] require(
[codex:1234211] _l2BlockNumber == nextBlockNumber(),
[codex:1234211] "L2OutputOracle: block number must be equal to next expected block number"
[codex:1234211] );
[codex:1234211]
[codex:1234211] //We don't need to check L2 timestamp since L2 has a variant block time
[codex:1234211] // require(
[codex:1234211]
[codex:1234211] thinking
[codex:1234211] **Searching for withdrawal-related functions**
[codex:1234211] exec
[codex:1234211] /bin/bash -lc 'rg -n "finalize|withdraw|deposit|initialize|upgrade|reentr" AUDIT_BUNDLE.txt' in /tmp/codex-multi-pupumdos succeeded in 6ms:
[codex:1234211] 37: /// @notice The address of the challenger. Can be updated via upgrade.
[codex:1234211] 41: /// @notice The address of the proposer. Can be updated via upgrade.
[codex:1234211] 45: /// @notice The minimum time (in seconds) that must elapse before a withdrawal can be finalized.
[codex:1234211] 79: initialize({
[codex:1234211] 97: /// @param _finalizationPeriodSeconds The minimum time (in seconds) that must elapse before a withdrawal
[codex:1234211] 98: /// can be finalized.
[codex:1234211] 99: function initialize(
[codex:1234211] 109: initializer
[codex:1234211] 179: // Do not allow deleting any outputs that have already been finalized.
[codex:1234211] 182: "L2OutputOracle: cannot delete outputs that have already been finalized"
[codex:1234211] 234: // finalized.
[codex:1234211] 361: /// @notice Update withdraw finalization period seconds.
[codex:1234211] 362: /// @param newFinalizationPeriod The new withdraw finalization period seconds.
[codex:1234211] 409: /// @notice Represents a proven withdrawal.
[codex:1234211] 411: /// @custom:field timestamp Timestamp at whcih the withdrawal was proven.
[codex:1234211] 419: /// @notice Version of the deposit event.
[codex:1234211] 422: /// @notice Minimal deposit value
[codex:1234211] 425: /// @notice The L2 gas limit set when eth is deposited using the receive() function.
[codex:1234211] 428: /// @notice The L2 gas limit for system deposit transactions that are initiated from L1.
[codex:1234211] 431: /// @notice Address of the L2 account which initiated a withdrawal in this transaction.
[codex:1234211]
[codex:1234211] thinking
[codex:1234211] **Analyzing potential withdrawal freeze vulnerability**
[codex:1234211] exec
[codex:1234211] /bin/bash -lc "sed -n '350,900p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-pupumdos succeeded in 6ms:
[codex:1234211]
[codex:1234211] address oldChallenger = challenger;
[codex:1234211] require(
[codex:1234211] msg.sender == oldChallenger,
[codex:1234211] "L2OutputOracle: only current challenger address can update new challenger address"
[codex:1234211] );
[codex:1234211]
[codex:1234211] challenger = newChallenger;
[codex:1234211] emit ChallengerUpdated(oldChallenger, newChallenger);
[codex:1234211] }
[codex:1234211]
[codex:1234211] /// @notice Update withdraw finalization period seconds.
[codex:1234211] /// @param newFinalizationPeriod The new withdraw finalization period seconds.
[codex:1234211] function updateFinalizationPeriod(uint256 newFinalizationPeriod) external {
[codex:1234211] require(
[codex:1234211] msg.sender == challenger, "L2OutputOracle: only current challenger address can update finalization period"
[codex:1234211] );
[codex:1234211]
[codex:1234211] uint256 oldPeriod = finalizationPeriodSeconds;
[codex:1234211] finalizationPeriodSeconds = newFinalizationPeriod;
[codex:1234211]
[codex:1234211] thinking
[codex:1234211] **Continuing to scan for vulnerabilities**
[codex:1234211] exec
[codex:1234211] /bin/bash -lc "sed -n '900,1700p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-pupumdos succeeded in 6ms:
[codex:1234211] }
[codex:1234211]
[codex:1234211] // currently deploy contract on L2 by L1 deposit transaction is not allow
[codex:1234211] if (_isCreation) revert NotAllow();
[codex:1234211]
[codex:1234211] // Prevents funds lock
[codex:1234211] if (_to == bytes32(0)) revert BadTarget();
[codex:1234211]
[codex:1234211] // Prevent depositing transactions that have too small of a gas limit. Users should pay
[codex:1234211] // more for more resource usage.
[codex:1234211] if (_gasLimit < minimumGasLimit(uint64(_data.length))) revert SmallGasLimit();
[codex:1234211]
[codex:1234211] // Prevent the creation of deposit transactions that have too much calldata. This gives an
[codex:1234211] // upper limit on the size of unsafe blocks over the p2p network. 120kb is chosen to ensure
[codex:1234211] // that the transaction can fit into the p2p network policy of 128kb even though deposit
[codex:1234211] // transactions are not gossipped over the p2p network.
[codex:1234211] if (_data.length > 120_000) revert LargeCalldata();
[codex:1234211]
[codex:1234211] // Transform the from-address to its alias if the caller is a contract.
[codex:1234211] address from = msg.sender;
[codex:1234211]
[codex:1234211] thinking
[codex:1234211] **Continuing thorough file reading**
[codex:1234211] exec
[codex:1234211] /bin/bash -lc "sed -n '1700,2600p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-pupumdos succeeded in 6ms:
[codex:1234211] // Handle updating EIP-1559 style gas parameters. We use EIP-1559 to restrict the rate
[codex:1234211] // at which deposits can be created and therefore limit the potential for deposits to
[codex:1234211] // spam the L2 system. Fee scheme is very similar to EIP-1559 with minor changes.
[codex:1234211] int256 gasUsedDelta = int256(uint256(params.prevBoughtGas)) - targetResourceLimit;
[codex:1234211] int256 baseFeeDelta = (int256(uint256(params.prevBaseFee)) * gasUsedDelta)
[codex:1234211] / (targetResourceLimit * int256(uint256(config.baseFeeMaxChangeDenominator)));
[codex:1234211]
[codex:1234211] // Update base fee by adding the base fee delta and clamp the resulting value between
[codex:1234211] // min and max.
[codex:1234211] int256 newBaseFee = Arithmetic.clamp({
[codex:1234211] _value: int256(uint256(params.prevBaseFee)) + baseFeeDelta,
[codex:1234211] _min: int256(uint256(config.minimumBaseFee)),
[codex:1234211] _max: int256(uint256(config.maximumBaseFee))
[codex:1234211] });
[codex:1234211]
[codex:1234211] // If we skipped more than one block, we also need to account for every empty block.
[codex:1234211] // Empty block means there was no demand for deposits in that block, so we should
[codex:1234211] // reflect this lack of demand in the fee.
[codex:1234211] if (blockDiff > 1) {
[codex:1234211] // Update the base fee by repeatedly applying the exponent 1-(1/change_denominator)
[codex:1234211]
[codex:1234211] thinking
[codex:1234211] **Continuing to read remainder**
[codex:1234211] exec
[codex:1234211] /bin/bash -lc "sed -n '2600,3600p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-pupumdos succeeded in 6ms:
[codex:1234211] /// @inheritdoc IDisputeGameFactory
[codex:1234211] function setImplementation(GameType _gameType, IDisputeGame _impl) external onlyOwner {
[codex:1234211] gameImpls[_gameType] = _impl;
[codex:1234211] emit ImplementationSet(address(_impl), _gameType);
[codex:1234211] }
[codex:1234211]
[codex:1234211] /// @inheritdoc IDisputeGameFactory
[codex:1234211] function setInitBond(GameType _gameType, uint256 _initBond) external onlyOwner {
[codex:1234211] initBonds[_gameType] = _initBond;
[codex:1234211] emit InitBondUpdated(_gameType, _initBond);
[codex:1234211] }
[codex:1234211] }
[codex:1234211]
[codex:1234211] ================================================================================
[codex:1234211] FILE: contracts/src/dispute/interfaces/IDisputeGame.sol
[codex:1234211] ================================================================================
[codex:1234211] // SPDX-License-Identifier: MIT
[codex:1234211] pragma solidity ^0.8.0;
[codex:1234211]
[codex:1234211] import { IInitializable } from "src/dispute/interfaces/IInitializable.sol";
[codex:1234211]
[codex:1234211] thinking
[codex:1234211] **Continuing to read file to end**
[codex:1234211] exec
[codex:1234211] /bin/bash -lc "sed -n '3600,4600p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-pupumdos succeeded in 6ms:
[codex:1234211] address _target,
[codex:1234211] uint256 _value,
[codex:1234211] uint256 _gasLimit,
[codex:1234211] bytes memory _data
[codex:1234211] )
[codex:1234211] internal
[codex:1234211] pure
[codex:1234211] returns (bytes32)
[codex:1234211] {
[codex:1234211] return keccak256(Encoding.encodeL2ToL1CrossDomainMessageV1(_nonce, _sender, _target, _value, _gasLimit, _data));
[codex:1234211] }
[codex:1234211]
[codex:1234211] /// @notice Derives the withdrawal hash according to the encoding in the L2 Withdrawer contract
[codex:1234211] /// @param _tx Withdrawal transaction to hash.
[codex:1234211] /// @return Hashed withdrawal transaction.
[codex:1234211] function hashWithdrawal(Types.WithdrawalTransaction memory _tx) internal pure returns (bytes32) {
[codex:1234211] return keccak256(abi.encode(_tx.nonce, _tx.sender, _tx.target, _tx.value, _tx.gasLimit, _tx.data));
[codex:1234211] }
[codex:1234211]
[codex:1234211] /// @notice Hashes the various elements of an output root proof into an output root hash which
[codex:1234211]
[codex:1234211] thinking
[codex:1234211] **Finishing file exploration**
[codex:1234211] exec
[codex:1234211] /bin/bash -lc "sed -n '4600,5600p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-pupumdos succeeded in 5ms:
[codex:1234211] bytes memory item = _list[i];
[codex:1234211]
[codex:1234211] uint256 listPtr;
[codex:1234211] assembly {
[codex:1234211] listPtr := add(item, 0x20)
[codex:1234211] }
[codex:1234211]
[codex:1234211] _memcpy(flattenedPtr, listPtr, item.length);
[codex:1234211] flattenedPtr += _list[i].length;
[codex:1234211] }
[codex:1234211] }
[codex:1234211] }
[codex:1234211]
[codex:1234211] ================================================================================
[codex:1234211] FILE: contracts/src/libraries/trie/MerkleTrie.sol
[codex:1234211] ================================================================================
[codex:1234211] // SPDX-License-Identifier: MIT
[codex:1234211] pragma solidity ^0.8.0;
[codex:1234211]
[codex:1234211] import { Bytes } from "../Bytes.sol";
[codex:1234211]
[codex:1234211] thinking
[codex:1234211] **Verifying full file content around truncation**
[codex:1234211] exec
[codex:1234211] /bin/bash -lc "nl -ba AUDIT_BUNDLE.txt | sed -n '2100,2400p'" in /tmp/codex-multi-pupumdos succeeded in 11ms:
[codex:1234211] 2100 __Ownable_init();
[codex:1234211] 2101 transferOwnership(_owner);
[codex:1234211] 2102
[codex:1234211] 2103 // These are set in ascending order of their UpdateTypes.
[codex:1234211] 2104 _setBatcherHash(_batcherHash);
[codex:1234211] 2105 _setGasConfigEcotone({ _basefeeScalar: _basefeeScalar, _blobbasefeeScalar: _blobbasefeeScalar });
[codex:1234211] 2106 _setGasLimit(_gasLimit);
[codex:1234211] 2107
[codex:1234211] 2108 Storage.setBytes32(UNSAFE_BLOCK_SIGNER_SLOT, _unsafeBlockSigner);
[codex:1234211] 2109 Storage.setAddress(BATCH_INBOX_SLOT, _batchInbox);
[codex:1234211] 2110 Storage.setAddress(L1_CROSS_DOMAIN_MESSENGER_SLOT, _addresses.l1CrossDomainMessenger);
[codex:1234211] 2111 Storage.setAddress(L1_ERC_721_BRIDGE_SLOT, _addresses.l1ERC721Bridge);
[codex:1234211] 2112 Storage.setAddress(L1_STANDARD_BRIDGE_SLOT, _addresses.l1StandardBridge);
[codex:1234211] 2113 Storage.setAddress(DISPUTE_GAME_FACTORY_SLOT, _addresses.disputeGameFactory);
[codex:1234211] 2114 Storage.setAddress(OPTIMISM_PORTAL_SLOT, _addresses.optimismPortal);
[codex:1234211] 2115 Storage.setAddress(OPTIMISM_MINTABLE_ERC20_FACTORY_SLOT, _addresses.optimismMintableERC20Factory);
[codex:1234211] 2116
[codex:1234211] 2117 _setStartBlock();
[codex:1234211] 2118 _setGasPayingToken(_addresses.gasPayingToken);
[codex:1234211] 2119 if (sequencerPubkeyInfos.length == 0) {
[codex:1234211]
[codex:1234211] thinking
[codex:1234211] **Planning thorough file reading**
[codex:1234211]
[codex:1234211] I’m making sure the entire file is fully read without any truncation by splitting large segments into smaller ranges. There were some tool-imposed truncations in the middle sections, so I’m carefully re-reading portions around lines 1700–2600 and 3600–4600 in tighter chunks to capture everything completely. This way, I can confidently say the full file content is inspected.
[codex:1234211] exec
[codex:1234211] /bin/bash -lc 'wc -l AUDIT_BUNDLE.txt' in /tmp/codex-multi-pupumdos succeeded in 7ms:
[codex:1234211] 4953 AUDIT_BUNDLE.txt
[codex:1234211]
[codex:1234211] thinking
[codex:1234211] **Reading specific lines sequentially**
[codex:1234211] exec
[codex:1234211] /bin/bash -lc "nl -ba AUDIT_BUNDLE.txt | sed -n '1700,1900p'" in /tmp/codex-multi-pupumdos succeeded in 7ms:
[codex:1234211] 1700 // Handle updating EIP-1559 style gas parameters. We use EIP-1559 to restrict the rate
[codex:1234211] 1701 // at which deposits can be created and therefore limit the potential for deposits to
[codex:1234211] 1702 // spam the L2 system. Fee scheme is very similar to EIP-1559 with minor changes.
[codex:1234211] 1703 int256 gasUsedDelta = int256(uint256(params.prevBoughtGas)) - targetResourceLimit;
[codex:1234211] 1704 int256 baseFeeDelta = (int256(uint256(params.prevBaseFee)) * gasUsedDelta)
[codex:1234211] 1705 / (targetResourceLimit * int256(uint256(config.baseFeeMaxChangeDenominator)));
[codex:1234211] 1706
[codex:1234211] 1707 // Update base fee by adding the base fee delta and clamp the resulting value between
[codex:1234211] 1708 // min and max.
[codex:1234211] 1709 int256 newBaseFee = Arithmetic.clamp({
[codex:1234211] 1710 _value: int256(uint256(params.prevBaseFee)) + baseFeeDelta,
[codex:1234211] 1711 _min: int256(uint256(config.minimumBaseFee)),
[codex:1234211] 1712 _max: int256(uint256(config.maximumBaseFee))
[codex:1234211] 1713 });
[codex:1234211] 1714
[codex:1234211] 1715 // If we skipped more than one block, we also need to account for every empty block.
[codex:1234211] 1716 // Empty block means there was no demand for deposits in that block, so we should
[codex:1234211] 1717 // reflect this lack of demand in the fee.
[codex:1234211] 1718 if (blockDiff > 1) {
[codex:1234211] 1719 // Update the base fee by repeatedly applying the exponent 1-(1/change_denominator)
[codex:1234211]
[codex:1234211] thinking
[codex:1234211] **Continuing to read lines 1900-2100**
[codex:1234211] exec
[codex:1234211] /bin/bash -lc "nl -ba AUDIT_BUNDLE.txt | sed -n '1900,2100p'" in /tmp/codex-multi-pupumdos succeeded in 7ms:
[codex:1234211] 1900 import { OptimismPortal } from "src/L1/OptimismPortal.sol";
[codex:1234211] 1901 import { GasPayingToken, IGasToken } from "src/libraries/GasPayingToken.sol";
[codex:1234211] 1902 import { ERC20 } from "@openzeppelin/contracts/token/ERC20/ERC20.sol";
[codex:1234211] 1903
[codex:1234211] 1904 /// @title SystemConfig
[codex:1234211] 1905 /// @notice The SystemConfig contract is used to manage configuration of an Optimism network.
[codex:1234211] 1906 /// All configuration is stored on L1 and picked up by L2 as part of the derviation of
[codex:1234211] 1907 /// the L2 chain.
[codex:1234211] 1908 contract SystemConfig is OwnableUpgradeable, ISemver, IGasToken {
[codex:1234211] 1909 /// @notice Enum representing different types of updates.
[codex:1234211] 1910 /// @custom:value BATCHER Represents an update to the batcher hash.
[codex:1234211] 1911 /// @custom:value GAS_CONFIG Represents an update to txn fee config on L2.
[codex:1234211] 1912 /// @custom:value GAS_LIMIT Represents an update to gas limit on L2.
[codex:1234211] 1913 /// @custom:value UNSAFE_BLOCK_SIGNER Represents an update to the signer key for unsafe
[codex:1234211] 1914 /// block distrubution.
[codex:1234211] 1915 /// @custom:value SHRED_VERSION Represents an update to shred version on L2.
[codex:1234211] 1916 enum UpdateType {
[codex:1234211] 1917 BATCHER,
[codex:1234211] 1918 GAS_CONFIG,
[codex:1234211] 1919 GAS_LIMIT,
[codex:1234211]
[codex:1234211] thinking
[codex:1234211] **Checking truncation around SafeCall**
[codex:1234211] exec
[codex:1234211] /bin/bash -lc "nl -ba AUDIT_BUNDLE.txt | sed -n '3700,4100p'" in /tmp/codex-multi-pupumdos succeeded in 7ms:
[codex:1234211] 3700 /// or access tx.origin (or msg.sender) in a L1 to L2 transaction instead.
[codex:1234211] 3701 /// Not embedded into new OP-Stack chains.
[codex:1234211] 3702 address internal constant L1_MESSAGE_SENDER = 0x4200000000000000000000000000000000000001;
[codex:1234211] 3703
[codex:1234211] 3704 /// @custom:legacy
[codex:1234211] 3705 /// @notice Address of the DeployerWhitelist predeploy. No longer active.
[codex:1234211] 3706 address internal constant DEPLOYER_WHITELIST = 0x4200000000000000000000000000000000000002;
[codex:1234211] 3707
[codex:1234211] 3708 /// @notice Address of the canonical WETH contract.
[codex:1234211] 3709 address internal constant WETH = 0x4200000000000000000000000000000000000006;
[codex:1234211] 3710
[codex:1234211] 3711 /// @notice Address of the L2CrossDomainMessenger predeploy.
[codex:1234211] 3712 bytes32 internal constant L2_CROSS_DOMAIN_MESSENGER =
[codex:1234211] 3713 0x02c806312cb859f1bc25448e39f87aa09857d83ccb4a837df55648e000000000;
[codex:1234211] 3714
[codex:1234211] 3715 /// @notice Address of the GasPriceOracle predeploy. Includes fee information
[codex:1234211] 3716 /// and helpers for computing the L1 portion of the transaction fee.
[codex:1234211] 3717 address internal constant GAS_PRICE_ORACLE = 0x420000000000000000000000000000000000000F;
[codex:1234211] 3718
[codex:1234211] 3719 /// @notice Address of the L2StandardBridge predeploy.
[codex:1234211]
[codex:1234211]
[codex:1234211]
[codex:1234211] thinking
[codex:1234211] **Analyzing potential contract exploit paths**
[codex:1234211]
[codex:1234211] I’m carefully reviewing key contracts for profit-exploiting vulnerabilities, focusing on withdrawal finalization, access control gaps, reentrancy risks, initialization flaws, and token accounting. I’m weighing custom changes and how token decimals conversions might impact balances or cause rounding issues while verifying that standard protections like reentrancy guards and guardian-only functions appear intact. I’m also checking for any mismatches or inconsistencies in hashing and proof mechanisms that could be exploitable. Overall, I’m hunting for concrete exploit paths rather than theoretical risks, with current findings indicating no clear profit exploits.
[codex:1234211] thinking
[codex:1234211] **Evaluating encoding consistency and dispute game logic**
[codex:1234211]
[codex:1234211] I'm inspecting how withdrawal hashes are computed and encoded, confirming no collision risks between abi.encode and abi.encodePacked usage. Then I explore DisputeGameFactory behavior around clone creation and rollback on reverts. I’m also investigating how dispute games interact with withdrawal proofs—particularly potential risks if permissionless dispute games with arbitrary root claims can be resolved in an attacker’s favor to enable fraudulent withdrawals—while noting that missing dispute game implementation limits definitive conclusions.
[codex:1234211] thinking
[codex:1234211] **Reviewing dispute game permissions and withdrawal proof logic**
[codex:1234211]
[codex:1234211] I’m assessing the open access to dispute game creation and how lack of authentication in the portal might allow attackers to create and use dispute games to prove withdrawals. I’m verifying withdrawal proof validations, initializer exposure, and token handling paths to identify any concrete profit exploits, while considering potential edge cases in encoding and proof verification that might affect security.
[codex:1234211] exec
[codex:1234211] /bin/bash -lc "rg -n \"Bytes\\.equal|function equal\" AUDIT_BUNDLE.txt" in /tmp/codex-multi-pupumdos succeeded in 7ms:
[codex:1234211] 3052: function equal(bytes memory _bytes, bytes memory _other) internal pure returns (bool) {
[codex:1234211] 4675: valid_ = Bytes.equal(_value, get(_key, _proof, _root));
[codex:1234211] 4701: Bytes.equal(abi.encodePacked(keccak256(currentNode.encoded)), currentNodeID),
[codex:1234211] 4707: Bytes.equal(abi.encodePacked(keccak256(currentNode.encoded)), currentNodeID),
[codex:1234211] 4712: require(Bytes.equal(currentNode.encoded, currentNodeID), "MerkleTrie: invalid internal node hash");
[codex:1234211]
[codex:1234211] thinking
[codex:1234211] **Inspecting bytes library near line 3052**
[codex:1234211] exec
[codex:1234211] /bin/bash -lc "nl -ba AUDIT_BUNDLE.txt | sed -n '3000,3120p'" in /tmp/codex-multi-pupumdos succeeded in 7ms:
[codex:1234211] 3000
[codex:1234211] 3001 /// @notice Converts a byte array into a nibble array by splitting each byte into two nibbles.
[codex:1234211] 3002 /// Resulting nibble array will be exactly twice as long as the input byte array.
[codex:1234211] 3003 /// @param _bytes Input byte array to convert.
[codex:1234211] 3004 /// @return Resulting nibble array.
[codex:1234211] 3005 function toNibbles(bytes memory _bytes) internal pure returns (bytes memory) {
[codex:1234211] 3006 bytes memory _nibbles;
[codex:1234211] 3007 assembly {
[codex:1234211] 3008 // Grab a free memory offset for the new array
[codex:1234211] 3009 _nibbles := mload(0x40)
[codex:1234211] 3010
[codex:1234211] 3011 // Load the length of the passed bytes array from memory
[codex:1234211] 3012 let bytesLength := mload(_bytes)
[codex:1234211] 3013
[codex:1234211] 3014 // Calculate the length of the new nibble array
[codex:1234211] 3015 // This is the length of the input array times 2
[codex:1234211] 3016 let nibblesLength := shl(0x01, bytesLength)
[codex:1234211] 3017
[codex:1234211] 3018 // Update the free memory pointer to allocate memory for the new array.
[codex:1234211] 3019 // To do this, we add the length of the new array + 32 bytes for the array length
[codex:1234211]
[codex:1234211] thinking
[codex:1234211] **Analyzing potential vulnerabilities and exploit paths**
[codex:1234211]
[codex:1234211] I reviewed various components for concrete exploit paths yielding profit, paying special attention to reentrancy guards, dispute game creation, withdrawal finalization logic, and resource metering. Despite identifying some design concerns and edge cases, none enable a direct exploitable profit path under the given assumptions and trusted libraries, so I’m preparing a JSON response indicating no findings.
[codex:1234211] codex
[codex:1234211] {"no_findings":true,"summary":"Reviewed all contracts in AUDIT_BUNDLE.txt; no concrete, exploitable paths to extract ETH/tokens/NFTs were identified under the stated assumptions.","findings":[]}
[codex:1234211] tokens used
[codex:1234211] 104,036
[codex:1234211] {"no_findings":true,"summary":"Reviewed all contracts in AUDIT_BUNDLE.txt; no concrete, exploitable paths to extract ETH/tokens/NFTs were identified under the stated assumptions.","findings":[]}
{
"codex": {
"ran_at": "2026-01-02T20:35:12.176386+00:00",
"returncode": 0
},
"summary": "Reviewed all contracts in AUDIT_BUNDLE.txt; no concrete, exploitable paths to extract ETH/tokens/NFTs were identified under the stated assumptions.",
"raw_final": {
"summary": "Reviewed all contracts in AUDIT_BUNDLE.txt; no concrete, exploitable paths to extract ETH/tokens/NFTs were identified under the stated assumptions.",
"findings": [],
"no_findings": true
},
"no_findings": true,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: PUSH2 0x01e7 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0x8e819e54 00000019: GT 0000001a: PUSH2 0x0102 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0xbb2c727e 00000024: GT 00000025: PUSH2 0x0095 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xcff0ab96 0000002f: GT 00000030: PUSH2 0x0064 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xcff0ab96 0000003a: EQ 0000003b: PUSH2 0x06f9 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xe6bb1156 00000045: EQ 00000046: PUSH2 0x079a 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xe89bfc7b 00000050: EQ 00000051: PUSH2 0x07ba 00000054: JUMPI 00000055: DUP1 00000056: PUSH4 0xf2b4e617 0000005b: EQ 0000005c: PUSH2 0x07da 0000005f: JUMPI 00000060: PUSH1 0x00 00000062: DUP1 00000063: REVERT 00000064: JUMPDEST 00000065: DUP1 00000066: PUSH4 0xbb2c727e 0000006b: EQ 0000006c: PUSH2 0x05cf 0000006f: JUMPI 00000070: DUP1 00000071: PUSH4 0xbf653a5c 00000076: EQ 00000077: PUSH2 0x0676 0000007a: JUMPI 0000007b: DUP1 0000007c: PUSH4 0xc7ac3bb9 00000081: EQ 00000082: PUSH2 0x06a9 00000085: JUMPI 00000086: DUP1 00000087: PUSH4 0xca552342 0000008c: EQ 0000008d: PUSH2 0x06c9 00000090: JUMPI 00000091: PUSH1 0x00 00000093: DUP1 00000094: REVERT 00000095: JUMPDEST 00000096: DUP1 00000097: PUSH4 0xa14238e7 0000009c: GT 0000009d: PUSH2 0x00d1 000000a0: JUMPI 000000a1: DUP1 000000a2: PUSH4 0xa14238e7 000000a7: EQ 000000a8: PUSH2 0x054a 000000ab: JUMPI 000000ac: DUP1 000000ad: PUSH4 0xa35d99df 000000b2: EQ 000000b3: PUSH2 0x057a 000000b6: JUMPI 000000b7: DUP1 000000b8: PUSH4 0xa3860f48 000000bd: EQ 000000be: PUSH2 0x059a 000000c1: JUMPI 000000c2: DUP1 000000c3: PUSH4 0xb69ef8a8 000000c8: EQ 000000c9: PUSH2 0x05ba 000000cc: JUMPI 000000cd: PUSH1 0x00 000000cf: DUP1 000000d0: REVERT 000000d1: JUMPDEST 000000d2: DUP1 000000d3: PUSH4 0x8e819e54 000000d8: EQ 000000d9: PUSH2 0x04c1 000000dc: JUMPI 000000dd: DUP1 000000de: PUSH4 0x952b2797 000000e3: EQ 000000e4: PUSH2 0x04e1 000000e7: JUMPI 000000e8: DUP1 000000e9: PUSH4 0x99452c7e 000000ee: EQ 000000ef: PUSH2 0x0514 000000f2: JUMPI 000000f3: DUP1 000000f4: PUSH4 0x9bf62d82 000000f9: EQ 000000fa: PUSH2 0x0534 000000fd: JUMPI 000000fe: PUSH1 0x00 00000100: DUP1 00000101: REVERT 00000102: JUMPDEST 00000103: DUP1 00000104: PUSH4 0x54fd4d50 00000109: GT 0000010a: PUSH2 0x017a 0000010d: JUMPI 0000010e: DUP1 0000010f: PUSH4 0x71c1566e 00000114: GT 00000115: PUSH2 0x0149 00000118: JUMPI 00000119: DUP1 0000011a: PUSH4 0x71c1566e 0000011f: EQ 00000120: PUSH2 0x0461 00000123: JUMPI 00000124: DUP1 00000125: PUSH4 0x7d6be8dc 0000012a: EQ 0000012b: PUSH2 0x0481 0000012e: JUMPI 0000012f: DUP1 00000130: PUSH4 0x7fc48504 00000135: EQ 00000136: PUSH2 0x04a1 00000139: JUMPI 0000013a: DUP1 0000013b: PUSH4 0x8b4c40b0 00000140: EQ 00000141: PUSH2 0x043f 00000144: JUMPI 00000145: PUSH1 0x00 00000147: DUP1 00000148: REVERT 00000149: JUMPDEST 0000014a: DUP1 0000014b: PUSH4 0x54fd4d50 00000150: EQ 00000151: PUSH2 0x03cb 00000154: JUMPI 00000155: DUP1 00000156: PUSH4 0x5c975abb 0000015b: EQ 0000015c: PUSH2 0x0417 0000015f: JUMPI 00000160: DUP1 00000161: PUSH4 0x5d3ef068 00000166: EQ 00000167: PUSH2 0x042c 0000016a: JUMPI 0000016b: DUP1 0000016c: PUSH4 0x6053ac5a 00000171: EQ 00000172: PUSH2 0x0441 00000175: JUMPI 00000176: PUSH1 0x00 00000178: DUP1 00000179: REVERT 0000017a: JUMPDEST 0000017b: DUP1 0000017c: PUSH4 0x452a9320 00000181: GT 00000182: PUSH2 0x01b6 00000185: JUMPI 00000186: DUP1 00000187: PUSH4 0x452a9320 0000018c: EQ 0000018d: PUSH2 0x0307 00000190: JUMPI 00000191: DUP1 00000192: PUSH4 0x45884d32 00000197: EQ 00000198: PUSH2 0x031c 0000019b: JUMPI 0000019c: DUP1 0000019d: PUSH4 0x4fd0434c 000001a2: EQ 000001a3: PUSH2 0x035c 000001a6: JUMPI 000001a7: DUP1 000001a8: PUSH4 0x513747ab 000001ad: EQ 000001ae: PUSH2 0x039e 000001b1: JUMPI 000001b2: PUSH1 0x00 000001b4: DUP1 000001b5: REVERT 000001b6: JUMPDEST 000001b7: DUP1 000001b8: PUSH4 0x3034a5ef 000001bd: EQ 000001be: PUSH2 0x0223 000001c1: JUMPI 000001c2: DUP1 000001c3: PUSH4 0x33d7e2bd 000001c8: EQ 000001c9: PUSH2 0x0251 000001cc: JUMPI 000001cd: DUP1 000001ce: PUSH4 0x35e80ab3 000001d3: EQ 000001d4: PUSH2 0x02a3 000001d7: JUMPI 000001d8: DUP1 000001d9: PUSH4 0x3c9f397c 000001de: EQ 000001df: PUSH2 0x02d5 000001e2: JUMPI 000001e3: PUSH1 0x00 000001e5: DUP1 000001e6: REVERT 000001e7: JUMPDEST 000001e8: CALLDATASIZE 000001e9: PUSH2 0x021e 000001ec: JUMPI 000001ed: PUSH1 0x40 000001ef: MLOAD 000001f0: PUSH32 0xdc4a92ff00000000000000000000000000000000000000000000000000000000 00000211: DUP2 00000212: MSTORE 00000213: PUSH1 0x04 00000215: ADD 00000216: PUSH1 0x40 00000218: MLOAD 00000219: DUP1 0000021a: SWAP2 0000021b: SUB 0000021c: SWAP1 0000021d: REVERT 0000021e: JUMPDEST 0000021f: PUSH1 0x00 00000221: DUP1 00000222: REVERT 00000223: JUMPDEST 00000224: CALLVALUE 00000225: DUP1 00000226: ISZERO 00000227: PUSH2 0x022f 0000022a: JUMPI 0000022b: PUSH1 0x00 0000022d: DUP1 0000022e: REVERT 0000022f: JUMPDEST 00000230: POP 00000231: PUSH2 0x023e 00000234: PUSH7 0x038d7ea4c68000 0000023c: DUP2 0000023d: JUMP 0000023e: JUMPDEST 0000023f: PUSH1 0x40 00000241: MLOAD 00000242: SWAP1 00000243: DUP2 00000244: MSTORE 00000245: PUSH1 0x20 00000247: ADD 00000248: JUMPDEST 00000249: PUSH1 0x40 0000024b: MLOAD 0000024c: DUP1 0000024d: SWAP2 0000024e: SUB 0000024f: SWAP1 00000250: RETURN 00000251: JUMPDEST 00000252: CALLVALUE 00000253: DUP1 00000254: ISZERO 00000255: PUSH2 0x025d 00000258: JUMPI 00000259: PUSH1 0x00 0000025b: DUP1 0000025c: REVERT 0000025d: JUMPDEST 0000025e: POP 0000025f: PUSH1 0x37 00000261: SLOAD 00000262: PUSH2 0x027e 00000265: SWAP1 00000266: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000027b: AND 0000027c: DUP2 0000027d: JUMP 0000027e: JUMPDEST 0000027f: PUSH1 0x40 00000281: MLOAD 00000282: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000297: SWAP1 00000298: SWAP2 00000299: AND 0000029a: DUP2 0000029b: MSTORE 0000029c: PUSH1 0x20 0000029e: ADD 0000029f: PUSH2 0x0248 000002a2: JUMP 000002a3: JUMPDEST 000002a4: CALLVALUE 000002a5: DUP1 000002a6: ISZERO 000002a7: PUSH2 0x02af 000002aa: JUMPI 000002ab: PUSH1 0x00 000002ad: DUP1 000002ae: REVERT 000002af: JUMPDEST 000002b0: POP 000002b1: PUSH1 0x35 000002b3: SLOAD 000002b4: PUSH2 0x027e 000002b7: SWAP1 000002b8: PUSH2 0x0100 000002bb: SWAP1 000002bc: DIV 000002bd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000002d2: AND 000002d3: DUP2 000002d4: JUMP 000002d5: JUMPDEST 000002d6: CALLVALUE 000002d7: DUP1 000002d8: ISZERO 000002d9: PUSH2 0x02e1 000002dc: JUMPI 000002dd: PUSH1 0x00 000002df: DUP1 000002e0: REVERT 000002e1: JUMPDEST 000002e2: POP 000002e3: PUSH1 0x3b 000002e5: SLOAD 000002e6: PUSH2 0x02f2 000002e9: SWAP1 000002ea: PUSH4 0xffffffff 000002ef: AND 000002f0: DUP2 000002f1: JUMP 000002f2: JUMPDEST 000002f3: PUSH1 0x40 000002f5: MLOAD 000002f6: PUSH4 0xffffffff 000002fb: SWAP1 000002fc: SWAP2 000002fd: AND 000002fe: DUP2 000002ff: MSTORE 00000300: PUSH1 0x20 00000302: ADD 00000303: PUSH2 0x0248 00000306: JUMP 00000307: JUMPDEST 00000308: CALLVALUE 00000309: DUP1 0000030a: ISZERO 0000030b: PUSH2 0x0313 0000030e: JUMPI 0000030f: PUSH1 0x00 00000311: DUP1 00000312: REVERT 00000313: JUMPDEST 00000314: POP 00000315: PUSH2 0x027e 00000318: PUSH2 0x0807 0000031b: JUMP 0000031c: JUMPDEST 0000031d: CALLVALUE 0000031e: DUP1 0000031f: ISZERO 00000320: PUSH2 0x0328 00000323: JUMPI 00000324: PUSH1 0x00 00000326: DUP1 00000327: REVERT 00000328: JUMPDEST 00000329: POP 0000032a: PUSH2 0x034c 0000032d: PUSH2 0x0337 00000330: CALLDATASIZE 00000331: PUSH1 0x04 00000333: PUSH2 0x42c9 00000336: JUMP 00000337: JUMPDEST 00000338: PUSH1 0x3a 0000033a: PUSH1 0x20 0000033c: MSTORE 0000033d: PUSH1 0x00 0000033f: SWAP1 00000340: DUP2 00000341: MSTORE 00000342: PUSH1 0x40 00000344: SWAP1 00000345: KECCAK256 00000346: SLOAD 00000347: PUSH1 0xff 00000349: AND 0000034a: DUP2 0000034b: JUMP 0000034c: JUMPDEST 0000034d: PUSH1 0x40 0000034f: MLOAD 00000350: SWAP1 00000351: ISZERO 00000352: ISZERO 00000353: DUP2 00000354: MSTORE 00000355: PUSH1 0x20 00000357: ADD 00000358: PUSH2 0x0248 0000035b: JUMP 0000035c: JUMPDEST 0000035d: CALLVALUE 0000035e: DUP1 0000035f: ISZERO 00000360: PUSH2 0x0368 00000363: JUMPI 00000364: PUSH1 0x00 00000366: DUP1 00000367: REVERT 00000368: JUMPDEST 00000369: POP 0000036a: PUSH1 0x3b 0000036c: SLOAD 0000036d: PUSH2 0x0385 00000370: SWAP1 00000371: PUSH5 0x0100000000 00000377: SWAP1 00000378: DIV 00000379: PUSH8 0xffffffffffffffff 00000382: AND 00000383: DUP2 00000384: JUMP 00000385: JUMPDEST 00000386: PUSH1 0x40 00000388: MLOAD 00000389: PUSH8 0xffffffffffffffff 00000392: SWAP1 00000393: SWAP2 00000394: AND 00000395: DUP2 00000396: MSTORE 00000397: PUSH1 0x20 00000399: ADD 0000039a: PUSH2 0x0248 0000039d: JUMP 0000039e: JUMPDEST 0000039f: CALLVALUE 000003a0: DUP1 000003a1: ISZERO 000003a2: PUSH2 0x03aa 000003a5: JUMPI 000003a6: PUSH1 0x00 000003a8: DUP1 000003a9: REVERT 000003aa: JUMPDEST 000003ab: POP 000003ac: PUSH2 0x023e 000003af: PUSH2 0x03b9 000003b2: CALLDATASIZE 000003b3: PUSH1 0x04 000003b5: PUSH2 0x42e6 000003b8: JUMP 000003b9: JUMPDEST 000003ba: PUSH1 0x00 000003bc: SWAP1 000003bd: DUP2 000003be: MSTORE 000003bf: PUSH1 0x3c 000003c1: PUSH1 0x20 000003c3: MSTORE 000003c4: PUSH1 0x40 000003c6: SWAP1 000003c7: KECCAK256 000003c8: SLOAD 000003c9: SWAP1 000003ca: JUMP 000003cb: JUMPDEST 000003cc: CALLVALUE 000003cd: DUP1 000003ce: ISZERO 000003cf: PUSH2 0x03d7 000003d2: JUMPI 000003d3: PUSH1 0x00 000003d5: DUP1 000003d6: REVERT 000003d7: JUMPDEST 000003d8: POP 000003d9: PUSH1 0x40 000003db: DUP1 000003dc: MLOAD 000003dd: DUP1 000003de: DUP3 000003df: ADD 000003e0: DUP3 000003e1: MSTORE 000003e2: PUSH1 0x0d 000003e4: DUP2 000003e5: MSTORE 000003e6: PUSH32 0x332e31312e302d626574612e3200000000000000000000000000000000000000 00000407: PUSH1 0x20 00000409: DUP3 0000040a: ADD 0000040b: MSTORE 0000040c: SWAP1 0000040d: MLOAD 0000040e: PUSH2 0x0248 00000411: SWAP2 00000412: SWAP1 00000413: PUSH2 0x4379 00000416: JUMP 00000417: JUMPDEST 00000418: CALLVALUE 00000419: DUP1 0000041a: ISZERO 0000041b: PUSH2 0x0423 0000041e: JUMPI 0000041f: PUSH1 0x00 00000421: DUP1 00000422: REVERT 00000423: JUMPDEST 00000424: POP 00000425: PUSH2 0x034c 00000428: PUSH2 0x089f 0000042b: JUMP 0000042c: JUMPDEST 0000042d: PUSH2 0x043f 00000430: PUSH2 0x043a 00000433: CALLDATASIZE 00000434: PUSH1 0x04 00000436: PUSH2 0x44bc 00000439: JUMP 0000043a: JUMPDEST 0000043b: PUSH2 0x0932 0000043e: JUMP 0000043f: JUMPDEST 00000440: STOP 00000441: JUMPDEST 00000442: CALLVALUE 00000443: DUP1 00000444: ISZERO 00000445: PUSH2 0x044d 00000448: JUMPI 00000449: PUSH1 0x00 0000044b: DUP1 0000044c: REVERT 0000044d: JUMPDEST 0000044e: POP 0000044f: PUSH2 0x043f 00000452: PUSH2 0x045c 00000455: CALLDATASIZE 00000456: PUSH1 0x04 00000458: PUSH2 0x45d5 0000045b: JUMP 0000045c: JUMPDEST 0000045d: PUSH2 0x0a04 00000460: JUMP 00000461: JUMPDEST 00000462: CALLVALUE 00000463: DUP1 00000464: ISZERO 00000465: PUSH2 0x046d 00000468: JUMPI 00000469: PUSH1 0x00 0000046b: DUP1 0000046c: REVERT 0000046d: JUMPDEST 0000046e: POP 0000046f: PUSH2 0x043f 00000472: PUSH2 0x047c 00000475: CALLDATASIZE 00000476: PUSH1 0x04 00000478: PUSH2 0x46be 0000047b: JUMP 0000047c: JUMPDEST 0000047d: PUSH2 0x0f72 00000480: JUMP 00000481: JUMPDEST 00000482: CALLVALUE 00000483: DUP1 00000484: ISZERO 00000485: PUSH2 0x048d 00000488: JUMPI 00000489: PUSH1 0x00 0000048b: DUP1 0000048c: REVERT 0000048d: JUMPDEST 0000048e: POP 0000048f: PUSH2 0x043f 00000492: PUSH2 0x049c 00000495: CALLDATASIZE 00000496: PUSH1 0x04 00000498: PUSH2 0x42c9 0000049b: JUMP 0000049c: JUMPDEST 0000049d: PUSH2 0x16d3 000004a0: JUMP 000004a1: JUMPDEST 000004a2: CALLVALUE 000004a3: DUP1 000004a4: ISZERO 000004a5: PUSH2 0x04ad 000004a8: JUMPI 000004a9: PUSH1 0x00 000004ab: DUP1 000004ac: REVERT 000004ad: JUMPDEST 000004ae: POP 000004af: PUSH2 0x043f 000004b2: PUSH2 0x04bc 000004b5: CALLDATASIZE 000004b6: PUSH1 0x04 000004b8: PUSH2 0x4700 000004bb: JUMP 000004bc: JUMPDEST 000004bd: PUSH2 0x17b6 000004c0: JUMP 000004c1: JUMPDEST 000004c2: CALLVALUE 000004c3: DUP1 000004c4: ISZERO 000004c5: PUSH2 0x04cd 000004c8: JUMPI 000004c9: PUSH1 0x00 000004cb: DUP1 000004cc: REVERT 000004cd: JUMPDEST 000004ce: POP 000004cf: PUSH2 0x043f 000004d2: PUSH2 0x04dc 000004d5: CALLDATASIZE 000004d6: PUSH1 0x04 000004d8: PUSH2 0x471d 000004db: JUMP 000004dc: JUMPDEST 000004dd: PUSH2 0x18a2 000004e0: JUMP 000004e1: JUMPDEST 000004e2: CALLVALUE 000004e3: DUP1 000004e4: ISZERO 000004e5: PUSH2 0x04ed 000004e8: JUMPI 000004e9: PUSH1 0x00 000004eb: DUP1 000004ec: REVERT 000004ed: JUMPDEST 000004ee: POP 000004ef: PUSH32 0x0000000000000000000000000000000000000000000000000000000000007080 00000510: PUSH2 0x023e 00000513: JUMP 00000514: JUMPDEST 00000515: CALLVALUE 00000516: DUP1 00000517: ISZERO 00000518: PUSH2 0x0520 0000051b: JUMPI 0000051c: PUSH1 0x00 0000051e: DUP1 0000051f: REVERT 00000520: JUMPDEST 00000521: POP 00000522: PUSH2 0x043f 00000525: PUSH2 0x052f 00000528: CALLDATASIZE 00000529: PUSH1 0x04 0000052b: PUSH2 0x4779 0000052e: JUMP 0000052f: JUMPDEST 00000530: PUSH2 0x1ae7 00000533: JUMP 00000534: JUMPDEST 00000535: CALLVALUE 00000536: DUP1 00000537: ISZERO 00000538: PUSH2 0x0540 0000053b: JUMPI 0000053c: PUSH1 0x00 0000053e: DUP1 0000053f: REVERT 00000540: JUMPDEST 00000541: POP 00000542: PUSH2 0x023e 00000545: PUSH1 0x32 00000547: SLOAD 00000548: DUP2 00000549: JUMP 0000054a: JUMPDEST 0000054b: CALLVALUE 0000054c: DUP1 0000054d: ISZERO 0000054e: PUSH2 0x0556 00000551: JUMPI 00000552: PUSH1 0x00 00000554: DUP1 00000555: REVERT 00000556: JUMPDEST 00000557: POP 00000558: PUSH2 0x034c 0000055b: PUSH2 0x0565 0000055e: CALLDATASIZE 0000055f: PUSH1 0x04 00000561: PUSH2 0x42e6 00000564: JUMP 00000565: JUMPDEST 00000566: PUSH1 0x33 00000568: PUSH1 0x20 0000056a: MSTORE 0000056b: PUSH1 0x00 0000056d: SWAP1 0000056e: DUP2 0000056f: MSTORE 00000570: PUSH1 0x40 00000572: SWAP1 00000573: KECCAK256 00000574: SLOAD 00000575: PUSH1 0xff 00000577: AND 00000578: DUP2 00000579: JUMP 0000057a: JUMPDEST 0000057b: CALLVALUE 0000057c: DUP1 0000057d: ISZERO 0000057e: PUSH2 0x0586 00000581: JUMPI 00000582: PUSH1 0x00 00000584: DUP1 00000585: REVERT 00000586: JUMPDEST 00000587: POP 00000588: PUSH2 0x0385 0000058b: PUSH2 0x0595 0000058e: CALLDATASIZE 0000058f: PUSH1 0x04 00000591: PUSH2 0x479e 00000594: JUMP 00000595: JUMPDEST 00000596: PUSH2 0x1cc4 00000599: JUMP 0000059a: JUMPDEST 0000059b: CALLVALUE 0000059c: DUP1 0000059d: ISZERO 0000059e: PUSH2 0x05a6 000005a1: JUMPI 000005a2: PUSH1 0x00 000005a4: DUP1 000005a5: REVERT 000005a6: JUMPDEST 000005a7: POP 000005a8: PUSH2 0x027e 000005ab: PUSH2 0x05b5 000005ae: CALLDATASIZE 000005af: PUSH1 0x04 000005b1: PUSH2 0x47bb 000005b4: JUMP 000005b5: JUMPDEST 000005b6: PUSH2 0x1ce3 000005b9: JUMP 000005ba: JUMPDEST 000005bb: CALLVALUE 000005bc: DUP1 000005bd: ISZERO 000005be: PUSH2 0x05c6 000005c1: JUMPI 000005c2: PUSH1 0x00 000005c4: DUP1 000005c5: REVERT 000005c6: JUMPDEST 000005c7: POP 000005c8: PUSH2 0x023e 000005cb: PUSH2 0x1d28 000005ce: JUMP 000005cf: JUMPDEST 000005d0: CALLVALUE 000005d1: DUP1 000005d2: ISZERO 000005d3: PUSH2 0x05db 000005d6: JUMPI 000005d7: PUSH1 0x00 000005d9: DUP1 000005da: REVERT 000005db: JUMPDEST 000005dc: POP 000005dd: PUSH2 0x0641 000005e0: PUSH2 0x05ea 000005e3: CALLDATASIZE 000005e4: PUSH1 0x04 000005e6: PUSH2 0x46be 000005e9: JUMP 000005ea: JUMPDEST 000005eb: PUSH1 0x39 000005ed: PUSH1 0x20 000005ef: SWAP1 000005f0: DUP2 000005f1: MSTORE 000005f2: PUSH1 0x00 000005f4: SWAP3 000005f5: DUP4 000005f6: MSTORE 000005f7: PUSH1 0x40 000005f9: DUP1 000005fa: DUP5 000005fb: KECCAK256 000005fc: SWAP1 000005fd: SWAP2 000005fe: MSTORE 000005ff: SWAP1 00000600: DUP3 00000601: MSTORE 00000602: SWAP1 00000603: KECCAK256 00000604: SLOAD 00000605: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000061a: DUP2 0000061b: AND 0000061c: SWAP1 0000061d: PUSH21 0x010000000000000000000000000000000000000000 00000633: SWAP1 00000634: DIV 00000635: PUSH8 0xffffffffffffffff 0000063e: AND 0000063f: DUP3 00000640: JUMP 00000641: JUMPDEST 00000642: PUSH1 0x40 00000644: DUP1 00000645: MLOAD 00000646: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000065b: SWAP1 0000065c: SWAP4 0000065d: AND 0000065e: DUP4 0000065f: MSTORE 00000660: PUSH8 0xffffffffffffffff 00000669: SWAP1 0000066a: SWAP2 0000066b: AND 0000066c: PUSH1 0x20 0000066e: DUP4 0000066f: ADD 00000670: MSTORE 00000671: ADD 00000672: PUSH2 0x0248 00000675: JUMP 00000676: JUMPDEST 00000677: CALLVALUE 00000678: DUP1 00000679: ISZERO 0000067a: PUSH2 0x0682 0000067d: JUMPI 0000067e: PUSH1 0x00 00000680: DUP1 00000681: REVERT 00000682: JUMPDEST 00000683: POP 00000684: PUSH32 0x0000000000000000000000000000000000000000000000000000000000007080 000006a5: PUSH2 0x023e 000006a8: JUMP 000006a9: JUMPDEST 000006aa: CALLVALUE 000006ab: DUP1 000006ac: ISZERO 000006ad: PUSH2 0x06b5 000006b0: JUMPI 000006b1: PUSH1 0x00 000006b3: DUP1 000006b4: REVERT 000006b5: JUMPDEST 000006b6: POP 000006b7: PUSH2 0x043f 000006ba: PUSH2 0x06c4 000006bd: CALLDATASIZE 000006be: PUSH1 0x04 000006c0: PUSH2 0x47dd 000006c3: JUMP 000006c4: JUMPDEST 000006c5: PUSH2 0x1d82 000006c8: JUMP 000006c9: JUMPDEST 000006ca: CALLVALUE 000006cb: DUP1 000006cc: ISZERO 000006cd: PUSH2 0x06d5 000006d0: JUMPI 000006d1: PUSH1 0x00 000006d3: DUP1 000006d4: REVERT 000006d5: JUMPDEST 000006d6: POP 000006d7: PUSH2 0x034c 000006da: PUSH2 0x06e4 000006dd: CALLDATASIZE 000006de: PUSH1 0x04 000006e0: PUSH2 0x42e6 000006e3: JUMP 000006e4: JUMPDEST 000006e5: PUSH1 0x3e 000006e7: PUSH1 0x20 000006e9: MSTORE 000006ea: PUSH1 0x00 000006ec: SWAP1 000006ed: DUP2 000006ee: MSTORE 000006ef: PUSH1 0x40 000006f1: SWAP1 000006f2: KECCAK256 000006f3: SLOAD 000006f4: PUSH1 0xff 000006f6: AND 000006f7: DUP2 000006f8: JUMP 000006f9: JUMPDEST 000006fa: CALLVALUE 000006fb: DUP1 000006fc: ISZERO 000006fd: PUSH2 0x0705 00000700: JUMPI 00000701: PUSH1 0x00 00000703: DUP1 00000704: REVERT 00000705: JUMPDEST 00000706: POP 00000707: PUSH1 0x01 00000709: SLOAD 0000070a: PUSH2 0x0761 0000070d: SWAP1 0000070e: PUSH16 0xffffffffffffffffffffffffffffffff 0000071f: DUP2 00000720: AND 00000721: SWAP1 00000722: PUSH8 0xffffffffffffffff 0000072b: PUSH17 0x0100000000000000000000000000000000 0000073d: DUP3 0000073e: DIV 0000073f: DUP2 00000740: AND 00000741: SWAP2 00000742: PUSH25 0x01000000000000000000000000000000000000000000000000 0000075c: SWAP1 0000075d: DIV 0000075e: AND 0000075f: DUP4 00000760: JUMP 00000761: JUMPDEST 00000762: PUSH1 0x40 00000764: DUP1 00000765: MLOAD 00000766: PUSH16 0xffffffffffffffffffffffffffffffff 00000777: SWAP1 00000778: SWAP5 00000779: AND 0000077a: DUP5 0000077b: MSTORE 0000077c: PUSH8 0xffffffffffffffff 00000785: SWAP3 00000786: DUP4 00000787: AND 00000788: PUSH1 0x20 0000078a: DUP6 0000078b: ADD 0000078c: MSTORE 0000078d: SWAP2 0000078e: AND 0000078f: SWAP1 00000790: DUP3 00000791: ADD 00000792: MSTORE 00000793: PUSH1 0x60 00000795: ADD 00000796: PUSH2 0x0248 00000799: JUMP 0000079a: JUMPDEST 0000079b: CALLVALUE 0000079c: DUP1 0000079d: ISZERO 0000079e: PUSH2 0x07a6 000007a1: JUMPI 000007a2: PUSH1 0x00 000007a4: DUP1 000007a5: REVERT 000007a6: JUMPDEST 000007a7: POP 000007a8: PUSH2 0x043f 000007ab: PUSH2 0x07b5 000007ae: CALLDATASIZE 000007af: PUSH1 0x04 000007b1: PUSH2 0x4812 000007b4: JUMP 000007b5: JUMPDEST 000007b6: PUSH2 0x1dce 000007b9: JUMP 000007ba: JUMPDEST 000007bb: CALLVALUE 000007bc: DUP1 000007bd: ISZERO 000007be: PUSH2 0x07c6 000007c1: JUMPI 000007c2: PUSH1 0x00 000007c4: DUP1 000007c5: REVERT 000007c6: JUMPDEST 000007c7: POP 000007c8: PUSH2 0x043f 000007cb: PUSH2 0x07d5 000007ce: CALLDATASIZE 000007cf: PUSH1 0x04 000007d1: PUSH2 0x4890 000007d4: JUMP 000007d5: JUMPDEST 000007d6: PUSH2 0x1e00 000007d9: JUMP 000007da: JUMPDEST 000007db: CALLVALUE 000007dc: DUP1 000007dd: ISZERO 000007de: PUSH2 0x07e6 000007e1: JUMPI 000007e2: PUSH1 0x00 000007e4: DUP1 000007e5: REVERT 000007e6: JUMPDEST 000007e7: POP 000007e8: PUSH1 0x38 000007ea: SLOAD 000007eb: PUSH2 0x027e 000007ee: SWAP1 000007ef: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000804: AND 00000805: DUP2 00000806: JUMP 00000807: JUMPDEST 00000808: PUSH1 0x00 0000080a: PUSH1 0x35 0000080c: PUSH1 0x01 0000080e: SWAP1 0000080f: SLOAD 00000810: SWAP1 00000811: PUSH2 0x0100 00000814: EXP 00000815: SWAP1 00000816: DIV 00000817: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000082c: AND 0000082d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000842: AND 00000843: PUSH4 0x452a9320 00000848: PUSH1 0x40 0000084a: MLOAD 0000084b: DUP2 0000084c: PUSH4 0xffffffff 00000851: AND 00000852: PUSH1 0xe0 00000854: SHL 00000855: DUP2 00000856: MSTORE 00000857: PUSH1 0x04 00000859: ADD 0000085a: PUSH1 0x20 0000085c: PUSH1 0x40 0000085e: MLOAD 0000085f: DUP1 00000860: DUP4 00000861: SUB 00000862: DUP2 00000863: DUP7 00000864: GAS 00000865: STATICCALL 00000866: ISZERO 00000867: DUP1 00000868: ISZERO 00000869: PUSH2 0x0876 0000086c: JUMPI 0000086d: RETURNDATASIZE 0000086e: PUSH1 0x00 00000870: DUP1 00000871: RETURNDATACOPY 00000872: RETURNDATASIZE 00000873: PUSH1 0x00 00000875: REVERT 00000876: JUMPDEST 00000877: POP 00000878: POP 00000879: POP 0000087a: POP 0000087b: PUSH1 0x40 0000087d: MLOAD 0000087e: RETURNDATASIZE 0000087f: PUSH1 0x1f 00000881: NOT 00000882: PUSH1 0x1f 00000884: DUP3 00000885: ADD 00000886: AND 00000887: DUP3 00000888: ADD 00000889: DUP1 0000088a: PUSH1 0x40 0000088c: MSTORE 0000088d: POP 0000088e: DUP2 0000088f: ADD 00000890: SWAP1 00000891: PUSH2 0x089a 00000894: SWAP2 00000895: SWAP1 00000896: PUSH2 0x48d7 00000899: JUMP 0000089a: JUMPDEST 0000089b: SWAP1 0000089c: POP 0000089d: SWAP1 0000089e: JUMP 0000089f: JUMPDEST 000008a0: PUSH1 0x00 000008a2: PUSH1 0x35 000008a4: PUSH1 0x01 000008a6: SWAP1 000008a7: SLOAD 000008a8: SWAP1 000008a9: PUSH2 0x0100 000008ac: EXP 000008ad: SWAP1 000008ae: DIV 000008af: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000008c4: AND 000008c5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000008da: AND 000008db: PUSH4 0x5c975abb 000008e0: PUSH1 0x40 000008e2: MLOAD 000008e3: DUP2 000008e4: PUSH4 0xffffffff 000008e9: AND 000008ea: PUSH1 0xe0 000008ec: SHL 000008ed: DUP2 000008ee: MSTORE 000008ef: PUSH1 0x04 000008f1: ADD 000008f2: PUSH1 0x20 000008f4: PUSH1 0x40 000008f6: MLOAD 000008f7: DUP1 000008f8: DUP4 000008f9: SUB 000008fa: DUP2 000008fb: DUP7 000008fc: GAS 000008fd: STATICCALL 000008fe: ISZERO 000008ff: DUP1 00000900: ISZERO 00000901: PUSH2 0x090e 00000904: JUMPI 00000905: RETURNDATASIZE 00000906: PUSH1 0x00 00000908: DUP1 00000909: RETURNDATACOPY 0000090a: RETURNDATASIZE 0000090b: PUSH1 0x00 0000090d: REVERT 0000090e: JUMPDEST 0000090f: POP 00000910: POP 00000911: POP 00000912: POP 00000913: PUSH1 0x40 00000915: MLOAD 00000916: RETURNDATASIZE 00000917: PUSH1 0x1f 00000919: NOT 0000091a: PUSH1 0x1f 0000091c: DUP3 0000091d: ADD 0000091e: AND 0000091f: DUP3 00000920: ADD 00000921: DUP1 00000922: PUSH1 0x40 00000924: MSTORE 00000925: POP 00000926: DUP2 00000927: ADD 00000928: SWAP1 00000929: PUSH2 0x089a 0000092c: SWAP2 0000092d: SWAP1 0000092e: PUSH2 0x48f4 00000931: JUMP 00000932: JUMPDEST 00000933: PUSH2 0x093a 00000936: PUSH2 0x089f 00000939: JUMP 0000093a: JUMPDEST 0000093b: ISZERO 0000093c: PUSH2 0x0971 0000093f: JUMPI 00000940: PUSH1 0x40 00000942: MLOAD 00000943: PUSH32 0xf480973e00000000000000000000000000000000000000000000000000000000 00000964: DUP2 00000965: MSTORE 00000966: PUSH1 0x04 00000968: ADD 00000969: PUSH1 0x40 0000096b: MLOAD 0000096c: DUP1 0000096d: SWAP2 0000096e: SUB 0000096f: SWAP1 00000970: REVERT 00000971: JUMPDEST 00000972: PUSH1 0x00 00000974: PUSH2 0x097b 00000977: PUSH2 0x2219 0000097a: JUMP 0000097b: JUMPDEST 0000097c: POP 0000097d: SWAP1 0000097e: POP 0000097f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000994: DUP2 00000995: AND 00000996: PUSH20 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee 000009ab: EQ 000009ac: DUP1 000009ad: ISZERO 000009ae: SWAP1 000009af: PUSH2 0x09b7 000009b2: JUMPI 000009b3: POP 000009b4: CALLVALUE 000009b5: ISZERO 000009b6: ISZERO 000009b7: JUMPDEST 000009b8: ISZERO 000009b9: PUSH2 0x09ee 000009bc: JUMPI 000009bd: PUSH1 0x40 000009bf: MLOAD 000009c0: PUSH32 0xf2365b5b00000000000000000000000000000000000000000000000000000000 000009e1: DUP2 000009e2: MSTORE 000009e3: PUSH1 0x04 000009e5: ADD 000009e6: PUSH1 0x40 000009e8: MLOAD 000009e9: DUP1 000009ea: SWAP2 000009eb: SUB 000009ec: SWAP1 000009ed: REVERT 000009ee: JUMPDEST 000009ef: PUSH2 0x09fc 000009f2: DUP7 000009f3: CALLVALUE 000009f4: DUP8 000009f5: DUP8 000009f6: DUP8 000009f7: DUP8 000009f8: PUSH2 0x22b6 000009fb: JUMP 000009fc: JUMPDEST 000009fd: POP 000009fe: POP 000009ff: POP 00000a00: POP 00000a01: POP 00000a02: POP 00000a03: JUMP 00000a04: JUMPDEST 00000a05: PUSH2 0x0a0c 00000a08: PUSH2 0x089f 00000a0b: JUMP 00000a0c: JUMPDEST 00000a0d: ISZERO 00000a0e: PUSH2 0x0a43 00000a11: JUMPI 00000a12: PUSH1 0x40 00000a14: MLOAD 00000a15: PUSH32 0xf480973e00000000000000000000000000000000000000000000000000000000 00000a36: DUP2 00000a37: MSTORE 00000a38: PUSH1 0x04 00000a3a: ADD 00000a3b: PUSH1 0x40 00000a3d: MLOAD 00000a3e: DUP1 00000a3f: SWAP2 00000a40: SUB 00000a41: SWAP1 00000a42: REVERT 00000a43: JUMPDEST 00000a44: ADDRESS 00000a45: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a5a: AND 00000a5b: DUP7 00000a5c: PUSH1 0x40 00000a5e: ADD 00000a5f: MLOAD 00000a60: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a75: AND 00000a76: SUB 00000a77: PUSH2 0x0aac 00000a7a: JUMPI 00000a7b: PUSH1 0x40 00000a7d: MLOAD 00000a7e: PUSH32 0x13496fda00000000000000000000000000000000000000000000000000000000 00000a9f: DUP2 00000aa0: MSTORE 00000aa1: PUSH1 0x04 00000aa3: ADD 00000aa4: PUSH1 0x40 00000aa6: MLOAD 00000aa7: DUP1 00000aa8: SWAP2 00000aa9: SUB 00000aaa: SWAP1 00000aab: REVERT 00000aac: JUMPDEST 00000aad: PUSH1 0x38 00000aaf: SLOAD 00000ab0: PUSH1 0x40 00000ab2: MLOAD 00000ab3: PUSH32 0xbb8aa1fc00000000000000000000000000000000000000000000000000000000 00000ad4: DUP2 00000ad5: MSTORE 00000ad6: PUSH1 0x04 00000ad8: DUP2 00000ad9: ADD 00000ada: DUP8 00000adb: SWAP1 00000adc: MSTORE 00000add: PUSH1 0x00 00000adf: SWAP2 00000ae0: DUP3 00000ae1: SWAP2 00000ae2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000af7: SWAP1 00000af8: SWAP2 00000af9: AND 00000afa: SWAP1 00000afb: PUSH4 0xbb8aa1fc 00000b00: SWAP1 00000b01: PUSH1 0x24 00000b03: ADD 00000b04: PUSH1 0x60 00000b06: PUSH1 0x40 00000b08: MLOAD 00000b09: DUP1 00000b0a: DUP4 00000b0b: SUB 00000b0c: DUP2 00000b0d: DUP7 00000b0e: GAS 00000b0f: STATICCALL 00000b10: ISZERO 00000b11: DUP1 00000b12: ISZERO 00000b13: PUSH2 0x0b20 00000b16: JUMPI 00000b17: RETURNDATASIZE 00000b18: PUSH1 0x00 00000b1a: DUP1 00000b1b: RETURNDATACOPY 00000b1c: RETURNDATASIZE 00000b1d: PUSH1 0x00 00000b1f: REVERT 00000b20: JUMPDEST 00000b21: POP 00000b22: POP 00000b23: POP 00000b24: POP 00000b25: PUSH1 0x40 00000b27: MLOAD 00000b28: RETURNDATASIZE 00000b29: PUSH1 0x1f 00000b2b: NOT 00000b2c: PUSH1 0x1f 00000b2e: DUP3 00000b2f: ADD 00000b30: AND 00000b31: DUP3 00000b32: ADD 00000b33: DUP1 00000b34: PUSH1 0x40 00000b36: MSTORE 00000b37: POP 00000b38: DUP2 00000b39: ADD 00000b3a: SWAP1 00000b3b: PUSH2 0x0b44 00000b3e: SWAP2 00000b3f: SWAP1 00000b40: PUSH2 0x4911 00000b43: JUMP 00000b44: JUMPDEST 00000b45: SWAP3 00000b46: POP 00000b47: POP 00000b48: SWAP2 00000b49: POP 00000b4a: PUSH1 0x00 00000b4c: DUP2 00000b4d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000b62: AND 00000b63: PUSH4 0xbcef3b55 00000b68: PUSH1 0x40 00000b6a: MLOAD 00000b6b: DUP2 00000b6c: PUSH4 0xffffffff 00000b71: AND 00000b72: PUSH1 0xe0 00000b74: SHL 00000b75: DUP2 00000b76: MSTORE 00000b77: PUSH1 0x04 00000b79: ADD 00000b7a: PUSH1 0x20 00000b7c: PUSH1 0x40 00000b7e: MLOAD 00000b7f: DUP1 00000b80: DUP4 00000b81: SUB 00000b82: DUP2 00000b83: DUP7 00000b84: GAS 00000b85: STATICCALL 00000b86: ISZERO 00000b87: DUP1 00000b88: ISZERO 00000b89: PUSH2 0x0b96 00000b8c: JUMPI 00000b8d: RETURNDATASIZE 00000b8e: PUSH1 0x00 00000b90: DUP1 00000b91: RETURNDATACOPY 00000b92: RETURNDATASIZE 00000b93: PUSH1 0x00 00000b95: REVERT 00000b96: JUMPDEST 00000b97: POP 00000b98: POP 00000b99: POP 00000b9a: POP 00000b9b: PUSH1 0x40 00000b9d: MLOAD 00000b9e: RETURNDATASIZE 00000b9f: PUSH1 0x1f 00000ba1: NOT 00000ba2: PUSH1 0x1f 00000ba4: DUP3 00000ba5: ADD 00000ba6: AND 00000ba7: DUP3 00000ba8: ADD 00000ba9: DUP1 00000baa: PUSH1 0x40 00000bac: MSTORE 00000bad: POP 00000bae: DUP2 00000baf: ADD 00000bb0: SWAP1 00000bb1: PUSH2 0x0bba 00000bb4: SWAP2 00000bb5: SWAP1 00000bb6: PUSH2 0x495e 00000bb9: JUMP 00000bba: JUMPDEST 00000bbb: PUSH1 0x3b 00000bbd: SLOAD 00000bbe: SWAP1 00000bbf: SWAP2 00000bc0: POP 00000bc1: PUSH4 0xffffffff 00000bc6: DUP5 00000bc7: DUP2 00000bc8: AND 00000bc9: SWAP2 00000bca: AND 00000bcb: EQ 00000bcc: PUSH2 0x0c01 00000bcf: JUMPI 00000bd0: PUSH1 0x40 00000bd2: MLOAD 00000bd3: PUSH32 0x27a10cc200000000000000000000000000000000000000000000000000000000 00000bf4: DUP2 00000bf5: MSTORE 00000bf6: PUSH1 0x04 00000bf8: ADD 00000bf9: PUSH1 0x40 00000bfb: MLOAD 00000bfc: DUP1 00000bfd: SWAP2 00000bfe: SUB 00000bff: SWAP1 00000c00: REVERT 00000c01: JUMPDEST 00000c02: PUSH2 0x0c18 00000c05: PUSH2 0x0c13 00000c08: CALLDATASIZE 00000c09: DUP9 00000c0a: SWAP1 00000c0b: SUB 00000c0c: DUP9 00000c0d: ADD 00000c0e: DUP9 00000c0f: PUSH2 0x4977 00000c12: JUMP 00000c13: JUMPDEST 00000c14: PUSH2 0x2537 00000c17: JUMP 00000c18: JUMPDEST 00000c19: DUP2 00000c1a: EQ 00000c1b: PUSH2 0x0c50 00000c1e: JUMPI 00000c1f: PUSH1 0x40 00000c21: MLOAD 00000c22: PUSH32 0x09bde33900000000000000000000000000000000000000000000000000000000 00000c43: DUP2 00000c44: MSTORE 00000c45: PUSH1 0x04 00000c47: ADD 00000c48: PUSH1 0x40 00000c4a: MLOAD 00000c4b: DUP1 00000c4c: SWAP2 00000c4d: SUB 00000c4e: SWAP1 00000c4f: REVERT 00000c50: JUMPDEST 00000c51: PUSH1 0x00 00000c53: PUSH2 0x0c5b 00000c56: DUP11 00000c57: PUSH2 0x2593 00000c5a: JUMP 00000c5b: JUMPDEST 00000c5c: SWAP1 00000c5d: POP 00000c5e: PUSH1 0x01 00000c60: DUP4 00000c61: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000c76: AND 00000c77: PUSH4 0x200d2ed2 00000c7c: PUSH1 0x40 00000c7e: MLOAD 00000c7f: DUP2 00000c80: PUSH4 0xffffffff 00000c85: AND 00000c86: PUSH1 0xe0 00000c88: SHL 00000c89: DUP2 00000c8a: MSTORE 00000c8b: PUSH1 0x04 00000c8d: ADD 00000c8e: PUSH1 0x20 00000c90: PUSH1 0x40 00000c92: MLOAD 00000c93: DUP1 00000c94: DUP4 00000c95: SUB 00000c96: DUP2 00000c97: DUP7 00000c98: GAS 00000c99: STATICCALL 00000c9a: ISZERO 00000c9b: DUP1 00000c9c: ISZERO 00000c9d: PUSH2 0x0caa 00000ca0: JUMPI 00000ca1: RETURNDATASIZE 00000ca2: PUSH1 0x00 00000ca4: DUP1 00000ca5: RETURNDATACOPY 00000ca6: RETURNDATASIZE 00000ca7: PUSH1 0x00 00000ca9: REVERT 00000caa: JUMPDEST 00000cab: POP 00000cac: POP 00000cad: POP 00000cae: POP 00000caf: PUSH1 0x40 00000cb1: MLOAD 00000cb2: RETURNDATASIZE 00000cb3: PUSH1 0x1f 00000cb5: NOT 00000cb6: PUSH1 0x1f 00000cb8: DUP3 00000cb9: ADD 00000cba: AND 00000cbb: DUP3 00000cbc: ADD 00000cbd: DUP1 00000cbe: PUSH1 0x40 00000cc0: MSTORE 00000cc1: POP 00000cc2: DUP2 00000cc3: ADD 00000cc4: SWAP1 00000cc5: PUSH2 0x0cce 00000cc8: SWAP2 00000cc9: SWAP1 00000cca: PUSH2 0x4a0c 00000ccd: JUMP 00000cce: JUMPDEST 00000ccf: PUSH1 0x02 00000cd1: DUP2 00000cd2: GT 00000cd3: ISZERO 00000cd4: PUSH2 0x0cdf 00000cd7: JUMPI 00000cd8: PUSH2 0x0cdf 00000cdb: PUSH2 0x49dd 00000cde: JUMP 00000cdf: JUMPDEST 00000ce0: SUB 00000ce1: PUSH2 0x0d16 00000ce4: JUMPI 00000ce5: PUSH1 0x40 00000ce7: MLOAD 00000ce8: PUSH32 0xd357347400000000000000000000000000000000000000000000000000000000 00000d09: DUP2 00000d0a: MSTORE 00000d0b: PUSH1 0x04 00000d0d: ADD 00000d0e: PUSH1 0x40 00000d10: MLOAD 00000d11: DUP1 00000d12: SWAP2 00000d13: SUB 00000d14: SWAP1 00000d15: REVERT 00000d16: JUMPDEST 00000d17: PUSH1 0x00 00000d19: DUP11 00000d1a: PUSH1 0x00 00000d1c: ADD 00000d1d: MLOAD 00000d1e: DUP12 00000d1f: PUSH1 0x20 00000d21: ADD 00000d22: MLOAD 00000d23: DUP13 00000d24: PUSH1 0x40 00000d26: ADD 00000d27: MLOAD 00000d28: DUP14 00000d29: PUSH1 0x60 00000d2b: ADD 00000d2c: MLOAD 00000d2d: DUP15 00000d2e: PUSH1 0x80 00000d30: ADD 00000d31: MLOAD 00000d32: DUP16 00000d33: PUSH1 0xa0 00000d35: ADD 00000d36: MLOAD 00000d37: PUSH1 0x40 00000d39: MLOAD 00000d3a: PUSH1 0x20 00000d3c: ADD 00000d3d: PUSH2 0x0d4b 00000d40: SWAP7 00000d41: SWAP6 00000d42: SWAP5 00000d43: SWAP4 00000d44: SWAP3 00000d45: SWAP2 00000d46: SWAP1 00000d47: PUSH2 0x4a2d 00000d4a: JUMP 00000d4b: JUMPDEST 00000d4c: PUSH1 0x40 00000d4e: DUP1 00000d4f: MLOAD 00000d50: DUP1 00000d51: DUP4 00000d52: SUB 00000d53: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00000d74: ADD 00000d75: DUP2 00000d76: MSTORE 00000d77: DUP3 00000d78: DUP3 00000d79: MSTORE 00000d7a: PUSH1 0x20 00000d7c: DUP1 00000d7d: DUP5 00000d7e: ADD 00000d7f: DUP14 00000d80: SWAP1 00000d81: MSTORE 00000d82: DUP3 00000d83: MLOAD 00000d84: DUP1 00000d85: DUP6 00000d86: SUB 00000d87: DUP3 00000d88: ADD 00000d89: DUP2 00000d8a: MSTORE 00000d8b: DUP5 00000d8c: DUP5 00000d8d: ADD 00000d8e: SWAP1 00000d8f: SWAP4 00000d90: MSTORE 00000d91: DUP2 00000d92: MLOAD 00000d93: SWAP1 00000d94: DUP3 00000d95: ADD 00000d96: KECCAK256 00000d97: PUSH1 0x60 00000d99: DUP5 00000d9a: ADD 00000d9b: MSTORE 00000d9c: SWAP3 00000d9d: POP 00000d9e: PUSH2 0x0de6 00000da1: SWAP2 00000da2: PUSH1 0x80 00000da4: ADD 00000da5: PUSH1 0x40 00000da7: DUP1 00000da8: MLOAD 00000da9: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00000dca: DUP2 00000dcb: DUP5 00000dcc: SUB 00000dcd: ADD 00000dce: DUP2 00000dcf: MSTORE 00000dd0: SWAP2 00000dd1: SWAP1 00000dd2: MSTORE 00000dd3: PUSH2 0x0ddc 00000dd6: DUP10 00000dd7: DUP12 00000dd8: PUSH2 0x4a94 00000ddb: JUMP 00000ddc: JUMPDEST 00000ddd: DUP12 00000dde: PUSH1 0x40 00000de0: ADD 00000de1: CALLDATALOAD 00000de2: PUSH2 0x25c3 00000de5: JUMP 00000de6: JUMPDEST 00000de7: ISZERO 00000de8: ISZERO 00000de9: PUSH1 0x00 00000deb: SUB 00000dec: PUSH2 0x0e21 00000def: JUMPI 00000df0: PUSH1 0x40 00000df2: MLOAD 00000df3: PUSH32 0xb05e92fa00000000000000000000000000000000000000000000000000000000 00000e14: DUP2 00000e15: MSTORE 00000e16: PUSH1 0x04 00000e18: ADD 00000e19: PUSH1 0x40 00000e1b: MLOAD 00000e1c: DUP1 00000e1d: SWAP2 00000e1e: SUB 00000e1f: SWAP1 00000e20: REVERT 00000e21: JUMPDEST 00000e22: PUSH1 0x40 00000e24: DUP1 00000e25: MLOAD 00000e26: DUP1 00000e27: DUP3 00000e28: ADD 00000e29: DUP3 00000e2a: MSTORE 00000e2b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e40: DUP1 00000e41: DUP8 00000e42: AND 00000e43: DUP3 00000e44: MSTORE 00000e45: PUSH8 0xffffffffffffffff 00000e4e: TIMESTAMP 00000e4f: DUP2 00000e50: AND 00000e51: PUSH1 0x20 00000e53: DUP1 00000e54: DUP6 00000e55: ADD 00000e56: SWAP2 00000e57: DUP3 00000e58: MSTORE 00000e59: PUSH1 0x00 00000e5b: DUP9 00000e5c: DUP2 00000e5d: MSTORE 00000e5e: PUSH1 0x39 00000e60: DUP3 00000e61: MSTORE 00000e62: DUP7 00000e63: DUP2 00000e64: KECCAK256 00000e65: CALLER 00000e66: DUP3 00000e67: MSTORE 00000e68: DUP3 00000e69: MSTORE 00000e6a: DUP7 00000e6b: DUP2 00000e6c: KECCAK256 00000e6d: SWAP6 00000e6e: MLOAD 00000e6f: DUP7 00000e70: SLOAD 00000e71: SWAP4 00000e72: MLOAD 00000e73: SWAP1 00000e74: SWAP5 00000e75: AND 00000e76: PUSH21 0x010000000000000000000000000000000000000000 00000e8c: MUL 00000e8d: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 00000eae: SWAP1 00000eaf: SWAP4 00000eb0: AND 00000eb1: SWAP4 00000eb2: DUP6 00000eb3: AND 00000eb4: SWAP4 00000eb5: SWAP1 00000eb6: SWAP4 00000eb7: OR 00000eb8: SWAP2 00000eb9: SWAP1 00000eba: SWAP2 00000ebb: OR 00000ebc: SWAP1 00000ebd: SWAP4 00000ebe: SSTORE 00000ebf: DUP15 00000ec0: DUP5 00000ec1: ADD 00000ec2: MLOAD 00000ec3: SWAP3 00000ec4: DUP16 00000ec5: ADD 00000ec6: MLOAD 00000ec7: SWAP4 00000ec8: MLOAD 00000ec9: SWAP3 00000eca: SWAP1 00000ecb: SWAP2 00000ecc: AND 00000ecd: SWAP3 00000ece: SWAP2 00000ecf: DUP6 00000ed0: SWAP2 00000ed1: PUSH32 0xb1fa4bf210183f705698f08cf334d01935c427bd4aa0546e649c5d0885f70a27 00000ef2: SWAP2 00000ef3: LOG4 00000ef4: PUSH1 0x40 00000ef6: MLOAD 00000ef7: CALLER 00000ef8: SWAP1 00000ef9: DUP4 00000efa: SWAP1 00000efb: PUSH32 0x798f9f13695f8f045aa5f80ed8efebb695f3c7fe65da381969f2f28bf3c60b97 00000f1c: SWAP1 00000f1d: PUSH1 0x00 00000f1f: SWAP1 00000f20: LOG3 00000f21: POP 00000f22: PUSH1 0x00 00000f24: SWAP1 00000f25: DUP2 00000f26: MSTORE 00000f27: PUSH1 0x3c 00000f29: PUSH1 0x20 00000f2b: SWAP1 00000f2c: DUP2 00000f2d: MSTORE 00000f2e: PUSH1 0x40 00000f30: DUP3 00000f31: KECCAK256 00000f32: DUP1 00000f33: SLOAD 00000f34: PUSH1 0x01 00000f36: DUP2 00000f37: ADD 00000f38: DUP3 00000f39: SSTORE 00000f3a: SWAP1 00000f3b: DUP4 00000f3c: MSTORE 00000f3d: SWAP2 00000f3e: KECCAK256 00000f3f: ADD 00000f40: DUP1 00000f41: SLOAD 00000f42: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 00000f63: AND 00000f64: CALLER 00000f65: OR 00000f66: SWAP1 00000f67: SSTORE 00000f68: POP 00000f69: POP 00000f6a: POP 00000f6b: POP 00000f6c: POP 00000f6d: POP 00000f6e: POP 00000f6f: POP 00000f70: POP 00000f71: JUMP 00000f72: JUMPDEST 00000f73: PUSH1 0x00 00000f75: DUP3 00000f76: DUP2 00000f77: MSTORE 00000f78: PUSH1 0x39 00000f7a: PUSH1 0x20 00000f7c: SWAP1 00000f7d: DUP2 00000f7e: MSTORE 00000f7f: PUSH1 0x40 00000f81: DUP1 00000f82: DUP4 00000f83: KECCAK256 00000f84: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000f99: DUP6 00000f9a: DUP2 00000f9b: AND 00000f9c: DUP6 00000f9d: MSTORE 00000f9e: SWAP1 00000f9f: DUP4 00000fa0: MSTORE 00000fa1: DUP2 00000fa2: DUP5 00000fa3: KECCAK256 00000fa4: DUP3 00000fa5: MLOAD 00000fa6: DUP1 00000fa7: DUP5 00000fa8: ADD 00000fa9: DUP5 00000faa: MSTORE 00000fab: SWAP1 00000fac: SLOAD 00000fad: SWAP2 00000fae: DUP3 00000faf: AND 00000fb0: DUP1 00000fb1: DUP3 00000fb2: MSTORE 00000fb3: PUSH21 0x010000000000000000000000000000000000000000 00000fc9: SWAP1 00000fca: SWAP3 00000fcb: DIV 00000fcc: PUSH8 0xffffffffffffffff 00000fd5: AND 00000fd6: DUP2 00000fd7: DUP6 00000fd8: ADD 00000fd9: MSTORE 00000fda: DUP2 00000fdb: DUP6 00000fdc: MSTORE 00000fdd: PUSH1 0x3a 00000fdf: SWAP1 00000fe0: SWAP4 00000fe1: MSTORE 00000fe2: SWAP3 00000fe3: KECCAK256 00000fe4: SLOAD 00000fe5: SWAP1 00000fe6: SWAP2 00000fe7: SWAP1 00000fe8: PUSH1 0xff 00000fea: AND 00000feb: ISZERO 00000fec: PUSH2 0x1021 00000fef: JUMPI 00000ff0: PUSH1 0x40 00000ff2: MLOAD 00000ff3: PUSH32 0x09550c7700000000000000000000000000000000000000000000000000000000 00001014: DUP2 00001015: MSTORE 00001016: PUSH1 0x04 00001018: ADD 00001019: PUSH1 0x40 0000101b: MLOAD 0000101c: DUP1 0000101d: SWAP2 0000101e: SUB 0000101f: SWAP1 00001020: REVERT 00001021: JUMPDEST 00001022: DUP2 00001023: PUSH1 0x20 00001025: ADD 00001026: MLOAD 00001027: PUSH8 0xffffffffffffffff 00001030: AND 00001031: PUSH1 0x00 00001033: SUB 00001034: PUSH2 0x1069 00001037: JUMPI 00001038: PUSH1 0x40 0000103a: MLOAD 0000103b: PUSH32 0x94efd49b00000000000000000000000000000000000000000000000000000000 0000105c: DUP2 0000105d: MSTORE 0000105e: PUSH1 0x04 00001060: ADD 00001061: PUSH1 0x40 00001063: MLOAD 00001064: DUP1 00001065: SWAP2 00001066: SUB 00001067: SWAP1 00001068: REVERT 00001069: JUMPDEST 0000106a: PUSH1 0x00 0000106c: PUSH2 0x10ea 0000106f: DUP3 00001070: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001085: AND 00001086: PUSH4 0xcf09e0d0 0000108b: PUSH1 0x40 0000108d: MLOAD 0000108e: DUP2 0000108f: PUSH4 0xffffffff 00001094: AND 00001095: PUSH1 0xe0 00001097: SHL 00001098: DUP2 00001099: MSTORE 0000109a: PUSH1 0x04 0000109c: ADD 0000109d: PUSH1 0x20 0000109f: PUSH1 0x40 000010a1: MLOAD 000010a2: DUP1 000010a3: DUP4 000010a4: SUB 000010a5: DUP2 000010a6: DUP7 000010a7: GAS 000010a8: STATICCALL 000010a9: ISZERO 000010aa: DUP1 000010ab: ISZERO 000010ac: PUSH2 0x10b9 000010af: JUMPI 000010b0: RETURNDATASIZE 000010b1: PUSH1 0x00 000010b3: DUP1 000010b4: RETURNDATACOPY 000010b5: RETURNDATASIZE 000010b6: PUSH1 0x00 000010b8: REVERT 000010b9: JUMPDEST 000010ba: POP 000010bb: POP 000010bc: POP 000010bd: POP 000010be: PUSH1 0x40 000010c0: MLOAD 000010c1: RETURNDATASIZE 000010c2: PUSH1 0x1f 000010c4: NOT 000010c5: PUSH1 0x1f 000010c7: DUP3 000010c8: ADD 000010c9: AND 000010ca: DUP3 000010cb: ADD 000010cc: DUP1 000010cd: PUSH1 0x40 000010cf: MSTORE 000010d0: POP 000010d1: DUP2 000010d2: ADD 000010d3: SWAP1 000010d4: PUSH2 0x10dd 000010d7: SWAP2 000010d8: SWAP1 000010d9: PUSH2 0x4b18 000010dc: JUMP 000010dd: JUMPDEST 000010de: PUSH8 0xffffffffffffffff 000010e7: AND 000010e8: SWAP1 000010e9: JUMP 000010ea: JUMPDEST 000010eb: SWAP1 000010ec: POP 000010ed: DUP1 000010ee: PUSH8 0xffffffffffffffff 000010f7: AND 000010f8: DUP4 000010f9: PUSH1 0x20 000010fb: ADD 000010fc: MLOAD 000010fd: PUSH8 0xffffffffffffffff 00001106: AND 00001107: GT 00001108: PUSH2 0x11be 0000110b: JUMPI 0000110c: PUSH1 0x40 0000110e: MLOAD 0000110f: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001130: DUP2 00001131: MSTORE 00001132: PUSH1 0x20 00001134: PUSH1 0x04 00001136: DUP3 00001137: ADD 00001138: MSTORE 00001139: PUSH1 0x4e 0000113b: PUSH1 0x24 0000113d: DUP3 0000113e: ADD 0000113f: MSTORE 00001140: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c2074696d6573 00001161: PUSH1 0x44 00001163: DUP3 00001164: ADD 00001165: MSTORE 00001166: PUSH32 0x74616d70206c657373207468616e20646973707574652067616d652063726561 00001187: PUSH1 0x64 00001189: DUP3 0000118a: ADD 0000118b: MSTORE 0000118c: PUSH32 0x74696f6e2074696d657374616d70000000000000000000000000000000000000 000011ad: PUSH1 0x84 000011af: DUP3 000011b0: ADD 000011b1: MSTORE 000011b2: PUSH1 0xa4 000011b4: ADD 000011b5: JUMPDEST 000011b6: PUSH1 0x40 000011b8: MLOAD 000011b9: DUP1 000011ba: SWAP2 000011bb: SUB 000011bc: SWAP1 000011bd: REVERT 000011be: JUMPDEST 000011bf: PUSH32 0x0000000000000000000000000000000000000000000000000000000000007080 000011e0: DUP4 000011e1: PUSH1 0x20 000011e3: ADD 000011e4: MLOAD 000011e5: PUSH8 0xffffffffffffffff 000011ee: AND 000011ef: TIMESTAMP 000011f0: PUSH2 0x11f9 000011f3: SWAP2 000011f4: SWAP1 000011f5: PUSH2 0x4b64 000011f8: JUMP 000011f9: JUMPDEST 000011fa: GT 000011fb: PUSH2 0x1286 000011fe: JUMPI 000011ff: PUSH1 0x40 00001201: MLOAD 00001202: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001223: DUP2 00001224: MSTORE 00001225: PUSH1 0x20 00001227: PUSH1 0x04 00001229: DUP3 0000122a: ADD 0000122b: MSTORE 0000122c: PUSH1 0x35 0000122e: PUSH1 0x24 00001230: DUP3 00001231: ADD 00001232: MSTORE 00001233: PUSH32 0x4f7074696d69736d506f7274616c3a2070726f76656e20776974686472617761 00001254: PUSH1 0x44 00001256: DUP3 00001257: ADD 00001258: MSTORE 00001259: PUSH32 0x6c20686173206e6f74206d617475726564207965740000000000000000000000 0000127a: PUSH1 0x64 0000127c: DUP3 0000127d: ADD 0000127e: MSTORE 0000127f: PUSH1 0x84 00001281: ADD 00001282: PUSH2 0x11b5 00001285: JUMP 00001286: JUMPDEST 00001287: PUSH1 0x02 00001289: DUP3 0000128a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000129f: AND 000012a0: PUSH4 0x200d2ed2 000012a5: PUSH1 0x40 000012a7: MLOAD 000012a8: DUP2 000012a9: PUSH4 0xffffffff 000012ae: AND 000012af: PUSH1 0xe0 000012b1: SHL 000012b2: DUP2 000012b3: MSTORE 000012b4: PUSH1 0x04 000012b6: ADD 000012b7: PUSH1 0x20 000012b9: PUSH1 0x40 000012bb: MLOAD 000012bc: DUP1 000012bd: DUP4 000012be: SUB 000012bf: DUP2 000012c0: DUP7 000012c1: GAS 000012c2: STATICCALL 000012c3: ISZERO 000012c4: DUP1 000012c5: ISZERO 000012c6: PUSH2 0x12d3 000012c9: JUMPI 000012ca: RETURNDATASIZE 000012cb: PUSH1 0x00 000012cd: DUP1 000012ce: RETURNDATACOPY 000012cf: RETURNDATASIZE 000012d0: PUSH1 0x00 000012d2: REVERT 000012d3: JUMPDEST 000012d4: POP 000012d5: POP 000012d6: POP 000012d7: POP 000012d8: PUSH1 0x40 000012da: MLOAD 000012db: RETURNDATASIZE 000012dc: PUSH1 0x1f 000012de: NOT 000012df: PUSH1 0x1f 000012e1: DUP3 000012e2: ADD 000012e3: AND 000012e4: DUP3 000012e5: ADD 000012e6: DUP1 000012e7: PUSH1 0x40 000012e9: MSTORE 000012ea: POP 000012eb: DUP2 000012ec: ADD 000012ed: SWAP1 000012ee: PUSH2 0x12f7 000012f1: SWAP2 000012f2: SWAP1 000012f3: PUSH2 0x4a0c 000012f6: JUMP 000012f7: JUMPDEST 000012f8: PUSH1 0x02 000012fa: DUP2 000012fb: GT 000012fc: ISZERO 000012fd: PUSH2 0x1308 00001300: JUMPI 00001301: PUSH2 0x1308 00001304: PUSH2 0x49dd 00001307: JUMP 00001308: JUMPDEST 00001309: EQ 0000130a: PUSH2 0x133f 0000130d: JUMPI 0000130e: PUSH1 0x40 00001310: MLOAD 00001311: PUSH32 0xa080a3c400000000000000000000000000000000000000000000000000000000 00001332: DUP2 00001333: MSTORE 00001334: PUSH1 0x04 00001336: ADD 00001337: PUSH1 0x40 00001339: MLOAD 0000133a: DUP1 0000133b: SWAP2 0000133c: SUB 0000133d: SWAP1 0000133e: REVERT 0000133f: JUMPDEST 00001340: PUSH1 0x3b 00001342: SLOAD 00001343: PUSH4 0xffffffff 00001348: AND 00001349: PUSH4 0xffffffff 0000134e: AND 0000134f: PUSH2 0x13c9 00001352: DUP4 00001353: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001368: AND 00001369: PUSH4 0xbbdc02db 0000136e: PUSH1 0x40 00001370: MLOAD 00001371: DUP2 00001372: PUSH4 0xffffffff 00001377: AND 00001378: PUSH1 0xe0 0000137a: SHL 0000137b: DUP2 0000137c: MSTORE 0000137d: PUSH1 0x04 0000137f: ADD 00001380: PUSH1 0x20 00001382: PUSH1 0x40 00001384: MLOAD 00001385: DUP1 00001386: DUP4 00001387: SUB 00001388: DUP2 00001389: DUP7 0000138a: GAS 0000138b: STATICCALL 0000138c: ISZERO 0000138d: DUP1 0000138e: ISZERO 0000138f: PUSH2 0x139c 00001392: JUMPI 00001393: RETURNDATASIZE 00001394: PUSH1 0x00 00001396: DUP1 00001397: RETURNDATACOPY 00001398: RETURNDATASIZE 00001399: PUSH1 0x00 0000139b: REVERT 0000139c: JUMPDEST 0000139d: POP 0000139e: POP 0000139f: POP 000013a0: POP 000013a1: PUSH1 0x40 000013a3: MLOAD 000013a4: RETURNDATASIZE 000013a5: PUSH1 0x1f 000013a7: NOT 000013a8: PUSH1 0x1f 000013aa: DUP3 000013ab: ADD 000013ac: AND 000013ad: DUP3 000013ae: ADD 000013af: DUP1 000013b0: PUSH1 0x40 000013b2: MSTORE 000013b3: POP 000013b4: DUP2 000013b5: ADD 000013b6: SWAP1 000013b7: PUSH2 0x13c0 000013ba: SWAP2 000013bb: SWAP1 000013bc: PUSH2 0x4b7b 000013bf: JUMP 000013c0: JUMPDEST 000013c1: PUSH4 0xffffffff 000013c6: AND 000013c7: SWAP1 000013c8: JUMP 000013c9: JUMPDEST 000013ca: PUSH4 0xffffffff 000013cf: AND 000013d0: EQ 000013d1: PUSH2 0x1406 000013d4: JUMPI 000013d5: PUSH1 0x40 000013d7: MLOAD 000013d8: PUSH32 0x27a10cc200000000000000000000000000000000000000000000000000000000 000013f9: DUP2 000013fa: MSTORE 000013fb: PUSH1 0x04 000013fd: ADD 000013fe: PUSH1 0x40 00001400: MLOAD 00001401: DUP1 00001402: SWAP2 00001403: SUB 00001404: SWAP1 00001405: REVERT 00001406: JUMPDEST 00001407: PUSH1 0x3b 00001409: SLOAD 0000140a: PUSH8 0xffffffffffffffff 00001413: PUSH5 0x0100000000 00001419: SWAP1 0000141a: SWAP2 0000141b: DIV 0000141c: DUP2 0000141d: AND 0000141e: SWAP1 0000141f: DUP3 00001420: AND 00001421: LT 00001422: ISZERO 00001423: PUSH2 0x14d4 00001426: JUMPI 00001427: PUSH1 0x40 00001429: MLOAD 0000142a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000144b: DUP2 0000144c: MSTORE 0000144d: PUSH1 0x20 0000144f: PUSH1 0x04 00001451: DUP3 00001452: ADD 00001453: MSTORE 00001454: PUSH1 0x4b 00001456: PUSH1 0x24 00001458: DUP3 00001459: ADD 0000145a: MSTORE 0000145b: PUSH32 0x4f7074696d69736d506f7274616c3a20646973707574652067616d6520637265 0000147c: PUSH1 0x44 0000147e: DUP3 0000147f: ADD 00001480: MSTORE 00001481: PUSH32 0x61746564206265666f7265207265737065637465642067616d65207479706520 000014a2: PUSH1 0x64 000014a4: DUP3 000014a5: ADD 000014a6: MSTORE 000014a7: PUSH32 0x7761732075706461746564000000000000000000000000000000000000000000 000014c8: PUSH1 0x84 000014ca: DUP3 000014cb: ADD 000014cc: MSTORE 000014cd: PUSH1 0xa4 000014cf: ADD 000014d0: PUSH2 0x11b5 000014d3: JUMP 000014d4: JUMPDEST 000014d5: PUSH32 0x0000000000000000000000000000000000000000000000000000000000007080 000014f6: PUSH2 0x1543 000014f9: DUP4 000014fa: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000150f: AND 00001510: PUSH4 0x19effeb4 00001515: PUSH1 0x40 00001517: MLOAD 00001518: DUP2 00001519: PUSH4 0xffffffff 0000151e: AND 0000151f: PUSH1 0xe0 00001521: SHL 00001522: DUP2 00001523: MSTORE 00001524: PUSH1 0x04 00001526: ADD 00001527: PUSH1 0x20 00001529: PUSH1 0x40 0000152b: MLOAD 0000152c: DUP1 0000152d: DUP4 0000152e: SUB 0000152f: DUP2 00001530: DUP7 00001531: GAS 00001532: STATICCALL 00001533: ISZERO 00001534: DUP1 00001535: ISZERO 00001536: PUSH2 0x10b9 00001539: JUMPI 0000153a: RETURNDATASIZE 0000153b: PUSH1 0x00 0000153d: DUP1 0000153e: RETURNDATACOPY 0000153f: RETURNDATASIZE 00001540: PUSH1 0x00 00001542: REVERT 00001543: JUMPDEST 00001544: PUSH2 0x1557 00001547: SWAP1 00001548: PUSH8 0xffffffffffffffff 00001551: AND 00001552: TIMESTAMP 00001553: PUSH2 0x4b64 00001556: JUMP 00001557: JUMPDEST 00001558: GT 00001559: PUSH2 0x15e4 0000155c: JUMPI 0000155d: PUSH1 0x40 0000155f: MLOAD 00001560: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001581: DUP2 00001582: MSTORE 00001583: PUSH1 0x20 00001585: PUSH1 0x04 00001587: DUP3 00001588: ADD 00001589: MSTORE 0000158a: PUSH1 0x2a 0000158c: PUSH1 0x24 0000158e: DUP3 0000158f: ADD 00001590: MSTORE 00001591: PUSH32 0x4f7074696d69736d506f7274616c3a206f75747075742070726f706f73616c20 000015b2: PUSH1 0x44 000015b4: DUP3 000015b5: ADD 000015b6: MSTORE 000015b7: PUSH32 0x696e206169722d67617000000000000000000000000000000000000000000000 000015d8: PUSH1 0x64 000015da: DUP3 000015db: ADD 000015dc: MSTORE 000015dd: PUSH1 0x84 000015df: ADD 000015e0: PUSH2 0x11b5 000015e3: JUMP 000015e4: JUMPDEST 000015e5: PUSH1 0x00 000015e7: DUP6 000015e8: DUP2 000015e9: MSTORE 000015ea: PUSH1 0x33 000015ec: PUSH1 0x20 000015ee: MSTORE 000015ef: PUSH1 0x40 000015f1: SWAP1 000015f2: KECCAK256 000015f3: SLOAD 000015f4: PUSH1 0xff 000015f6: AND 000015f7: ISZERO 000015f8: PUSH2 0x162d 000015fb: JUMPI 000015fc: PUSH1 0x40 000015fe: MLOAD 000015ff: PUSH32 0x475a253500000000000000000000000000000000000000000000000000000000 00001620: DUP2 00001621: MSTORE 00001622: PUSH1 0x04 00001624: ADD 00001625: PUSH1 0x40 00001627: MLOAD 00001628: DUP1 00001629: SWAP2 0000162a: SUB 0000162b: SWAP1 0000162c: REVERT 0000162d: JUMPDEST 0000162e: PUSH1 0x00 00001630: DUP6 00001631: DUP2 00001632: MSTORE 00001633: PUSH1 0x3e 00001635: PUSH1 0x20 00001637: MSTORE 00001638: PUSH1 0x40 0000163a: SWAP1 0000163b: KECCAK256 0000163c: SLOAD 0000163d: PUSH1 0xff 0000163f: AND 00001640: ISZERO 00001641: PUSH2 0x16cc 00001644: JUMPI 00001645: PUSH1 0x40 00001647: MLOAD 00001648: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001669: DUP2 0000166a: MSTORE 0000166b: PUSH1 0x20 0000166d: PUSH1 0x04 0000166f: DUP3 00001670: ADD 00001671: MSTORE 00001672: PUSH1 0x32 00001674: PUSH1 0x24 00001676: DUP3 00001677: ADD 00001678: MSTORE 00001679: PUSH32 0x4f7074696d69736d506f7274616c3a207769746864726177616c206861732061 0000169a: PUSH1 0x44 0000169c: DUP3 0000169d: ADD 0000169e: MSTORE 0000169f: PUSH32 0x6c7265616479206265656e2066726f7a656e0000000000000000000000000000 000016c0: PUSH1 0x64 000016c2: DUP3 000016c3: ADD 000016c4: MSTORE 000016c5: PUSH1 0x84 000016c7: ADD 000016c8: PUSH2 0x11b5 000016cb: JUMP 000016cc: JUMPDEST 000016cd: POP 000016ce: POP 000016cf: POP 000016d0: POP 000016d1: POP 000016d2: JUMP 000016d3: JUMPDEST 000016d4: PUSH2 0x16db 000016d7: PUSH2 0x0807 000016da: JUMP 000016db: JUMPDEST 000016dc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000016f1: AND 000016f2: CALLER 000016f3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001708: AND 00001709: EQ 0000170a: PUSH2 0x173f 0000170d: JUMPI 0000170e: PUSH1 0x40 00001710: MLOAD 00001711: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000 00001732: DUP2 00001733: MSTORE 00001734: PUSH1 0x04 00001736: ADD 00001737: PUSH1 0x40 00001739: MLOAD 0000173a: DUP1 0000173b: SWAP2 0000173c: SUB 0000173d: SWAP1 0000173e: REVERT 0000173f: JUMPDEST 00001740: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001755: DUP2 00001756: AND 00001757: PUSH1 0x00 00001759: DUP2 0000175a: DUP2 0000175b: MSTORE 0000175c: PUSH1 0x3a 0000175e: PUSH1 0x20 00001760: MSTORE 00001761: PUSH1 0x40 00001763: DUP1 00001764: DUP3 00001765: KECCAK256 00001766: DUP1 00001767: SLOAD 00001768: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 00001789: AND 0000178a: PUSH1 0x01 0000178c: OR 0000178d: SWAP1 0000178e: SSTORE 0000178f: MLOAD 00001790: PUSH32 0x192c289026d59a41a27f5aea08f3969b57931b0589202d14f4368cded95d3cda 000017b1: SWAP2 000017b2: SWAP1 000017b3: LOG2 000017b4: POP 000017b5: JUMP 000017b6: JUMPDEST 000017b7: PUSH2 0x17be 000017ba: PUSH2 0x0807 000017bd: JUMP 000017be: JUMPDEST 000017bf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000017d4: AND 000017d5: CALLER 000017d6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000017eb: AND 000017ec: EQ 000017ed: PUSH2 0x1822 000017f0: JUMPI 000017f1: PUSH1 0x40 000017f3: MLOAD 000017f4: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000 00001815: DUP2 00001816: MSTORE 00001817: PUSH1 0x04 00001819: ADD 0000181a: PUSH1 0x40 0000181c: MLOAD 0000181d: DUP1 0000181e: SWAP2 0000181f: SUB 00001820: SWAP1 00001821: REVERT 00001822: JUMPDEST 00001823: PUSH1 0x3b 00001825: DUP1 00001826: SLOAD 00001827: PUSH4 0xffffffff 0000182c: DUP4 0000182d: AND 0000182e: PUSH32 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000 0000184f: SWAP1 00001850: SWAP2 00001851: AND 00001852: DUP2 00001853: OR 00001854: PUSH5 0x0100000000 0000185a: TIMESTAMP 0000185b: PUSH8 0xffffffffffffffff 00001864: SWAP1 00001865: DUP2 00001866: AND 00001867: DUP3 00001868: MUL 00001869: SWAP3 0000186a: SWAP1 0000186b: SWAP3 0000186c: OR 0000186d: SWAP4 0000186e: DUP5 0000186f: SWAP1 00001870: SSTORE 00001871: PUSH1 0x40 00001873: MLOAD 00001874: SWAP4 00001875: DIV 00001876: AND 00001877: SWAP2 00001878: PUSH32 0x049fe9dd413cdf037cce27011cc1790c753118272f3630e6e8bdfa5e82081760 00001899: SWAP1 0000189a: PUSH1 0x00 0000189c: SWAP1 0000189d: LOG3 0000189e: POP 0000189f: JUMP 000018a0: JUMPDEST 000018a1: JUMP 000018a2: JUMPDEST 000018a3: PUSH1 0x00 000018a5: SLOAD 000018a6: PUSH1 0x02 000018a8: SWAP1 000018a9: PUSH2 0x0100 000018ac: SWAP1 000018ad: DIV 000018ae: PUSH1 0xff 000018b0: AND 000018b1: ISZERO 000018b2: DUP1 000018b3: ISZERO 000018b4: PUSH2 0x18c4 000018b7: JUMPI 000018b8: POP 000018b9: PUSH1 0x00 000018bb: SLOAD 000018bc: PUSH1 0xff 000018be: DUP1 000018bf: DUP4 000018c0: AND 000018c1: SWAP2 000018c2: AND 000018c3: LT 000018c4: JUMPDEST 000018c5: PUSH2 0x1950 000018c8: JUMPI 000018c9: PUSH1 0x40 000018cb: MLOAD 000018cc: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000018ed: DUP2 000018ee: MSTORE 000018ef: PUSH1 0x20 000018f1: PUSH1 0x04 000018f3: DUP3 000018f4: ADD 000018f5: MSTORE 000018f6: PUSH1 0x2e 000018f8: PUSH1 0x24 000018fa: DUP3 000018fb: ADD 000018fc: MSTORE 000018fd: PUSH32 0x496e697469616c697a61626c653a20636f6e747261637420697320616c726561 0000191e: PUSH1 0x44 00001920: DUP3 00001921: ADD 00001922: MSTORE 00001923: PUSH32 0x647920696e697469616c697a6564000000000000000000000000000000000000 00001944: PUSH1 0x64 00001946: DUP3 00001947: ADD 00001948: MSTORE 00001949: PUSH1 0x84 0000194b: ADD 0000194c: PUSH2 0x11b5 0000194f: JUMP 00001950: JUMPDEST 00001951: PUSH1 0x00 00001953: DUP1 00001954: SLOAD 00001955: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000 00001976: AND 00001977: PUSH1 0xff 00001979: DUP4 0000197a: AND 0000197b: OR 0000197c: PUSH2 0x0100 0000197f: SWAP1 00001980: DUP2 00001981: OR 00001982: SWAP1 00001983: SWAP2 00001984: SSTORE 00001985: PUSH1 0x38 00001987: DUP1 00001988: SLOAD 00001989: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000199e: DUP1 0000199f: DUP10 000019a0: AND 000019a1: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 000019c2: SWAP3 000019c3: DUP4 000019c4: AND 000019c5: OR 000019c6: SWAP1 000019c7: SWAP3 000019c8: SSTORE 000019c9: PUSH1 0x37 000019cb: DUP1 000019cc: SLOAD 000019cd: DUP9 000019ce: DUP5 000019cf: AND 000019d0: SWAP3 000019d1: AND 000019d2: SWAP2 000019d3: SWAP1 000019d4: SWAP2 000019d5: OR 000019d6: SWAP1 000019d7: SSTORE 000019d8: PUSH1 0x35 000019da: DUP1 000019db: SLOAD 000019dc: SWAP2 000019dd: DUP7 000019de: AND 000019df: SWAP1 000019e0: SWAP3 000019e1: MUL 000019e2: PUSH32 0xffffffffffffffffffffff0000000000000000000000000000000000000000ff 00001a03: SWAP1 00001a04: SWAP2 00001a05: AND 00001a06: OR 00001a07: SWAP1 00001a08: SSTORE 00001a09: PUSH1 0x32 00001a0b: SLOAD 00001a0c: PUSH2 0x1a7a 00001a0f: JUMPI 00001a10: PUSH1 0x01 00001a12: PUSH1 0x32 00001a14: SSTORE 00001a15: PUSH1 0x3b 00001a17: DUP1 00001a18: SLOAD 00001a19: PUSH32 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000 00001a3a: AND 00001a3b: PUSH5 0x0100000000 00001a41: TIMESTAMP 00001a42: PUSH8 0xffffffffffffffff 00001a4b: AND 00001a4c: MUL 00001a4d: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000 00001a6e: AND 00001a6f: OR 00001a70: PUSH4 0xffffffff 00001a75: DUP5 00001a76: AND 00001a77: OR 00001a78: SWAP1 00001a79: SSTORE 00001a7a: JUMPDEST 00001a7b: PUSH2 0x1a82 00001a7e: PUSH2 0x25e7 00001a81: JUMP 00001a82: JUMPDEST 00001a83: PUSH1 0x00 00001a85: DUP1 00001a86: SLOAD 00001a87: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff 00001aa8: AND 00001aa9: SWAP1 00001aaa: SSTORE 00001aab: PUSH1 0x40 00001aad: MLOAD 00001aae: PUSH1 0xff 00001ab0: DUP3 00001ab1: AND 00001ab2: DUP2 00001ab3: MSTORE 00001ab4: PUSH32 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498 00001ad5: SWAP1 00001ad6: PUSH1 0x20 00001ad8: ADD 00001ad9: PUSH1 0x40 00001adb: MLOAD 00001adc: DUP1 00001add: SWAP2 00001ade: SUB 00001adf: SWAP1 00001ae0: LOG1 00001ae1: POP 00001ae2: POP 00001ae3: POP 00001ae4: POP 00001ae5: POP 00001ae6: JUMP 00001ae7: JUMPDEST 00001ae8: PUSH2 0x1aef 00001aeb: PUSH2 0x0807 00001aee: JUMP 00001aef: JUMPDEST 00001af0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b05: AND 00001b06: CALLER 00001b07: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b1c: AND 00001b1d: EQ 00001b1e: PUSH2 0x1ba9 00001b21: JUMPI 00001b22: PUSH1 0x40 00001b24: MLOAD 00001b25: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001b46: DUP2 00001b47: MSTORE 00001b48: PUSH1 0x20 00001b4a: PUSH1 0x04 00001b4c: DUP3 00001b4d: ADD 00001b4e: MSTORE 00001b4f: PUSH1 0x28 00001b51: PUSH1 0x24 00001b53: DUP3 00001b54: ADD 00001b55: MSTORE 00001b56: PUSH32 0x4f7074696d69736d506f7274616c3a206f6e6c7920677561726469616e206361 00001b77: PUSH1 0x44 00001b79: DUP3 00001b7a: ADD 00001b7b: MSTORE 00001b7c: PUSH32 0x6e20667265657a65000000000000000000000000000000000000000000000000 00001b9d: PUSH1 0x64 00001b9f: DUP3 00001ba0: ADD 00001ba1: MSTORE 00001ba2: PUSH1 0x84 00001ba4: ADD 00001ba5: PUSH2 0x11b5 00001ba8: JUMP 00001ba9: JUMPDEST 00001baa: PUSH1 0x00 00001bac: DUP3 00001bad: DUP2 00001bae: MSTORE 00001baf: PUSH1 0x3e 00001bb1: PUSH1 0x20 00001bb3: MSTORE 00001bb4: PUSH1 0x40 00001bb6: SWAP1 00001bb7: KECCAK256 00001bb8: SLOAD 00001bb9: DUP2 00001bba: ISZERO 00001bbb: ISZERO 00001bbc: PUSH1 0xff 00001bbe: SWAP1 00001bbf: SWAP2 00001bc0: AND 00001bc1: ISZERO 00001bc2: ISZERO 00001bc3: SUB 00001bc4: PUSH2 0x1c4f 00001bc7: JUMPI 00001bc8: PUSH1 0x40 00001bca: MLOAD 00001bcb: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001bec: DUP2 00001bed: MSTORE 00001bee: PUSH1 0x20 00001bf0: PUSH1 0x04 00001bf2: DUP3 00001bf3: ADD 00001bf4: MSTORE 00001bf5: PUSH1 0x22 00001bf7: PUSH1 0x24 00001bf9: DUP3 00001bfa: ADD 00001bfb: MSTORE 00001bfc: PUSH32 0x4f7074696d69736d506f7274616c3a2077726f6e672066726f7a656e20737461 00001c1d: PUSH1 0x44 00001c1f: DUP3 00001c20: ADD 00001c21: MSTORE 00001c22: PUSH32 0x7465000000000000000000000000000000000000000000000000000000000000 00001c43: PUSH1 0x64 00001c45: DUP3 00001c46: ADD 00001c47: MSTORE 00001c48: PUSH1 0x84 00001c4a: ADD 00001c4b: PUSH2 0x11b5 00001c4e: JUMP 00001c4f: JUMPDEST 00001c50: PUSH1 0x00 00001c52: DUP3 00001c53: DUP2 00001c54: MSTORE 00001c55: PUSH1 0x3e 00001c57: PUSH1 0x20 00001c59: SWAP1 00001c5a: DUP2 00001c5b: MSTORE 00001c5c: PUSH1 0x40 00001c5e: SWAP2 00001c5f: DUP3 00001c60: SWAP1 00001c61: KECCAK256 00001c62: DUP1 00001c63: SLOAD 00001c64: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 00001c85: AND 00001c86: DUP5 00001c87: ISZERO 00001c88: ISZERO 00001c89: SWAP1 00001c8a: DUP2 00001c8b: OR 00001c8c: SWAP1 00001c8d: SWAP2 00001c8e: SSTORE 00001c8f: SWAP2 00001c90: MLOAD 00001c91: SWAP2 00001c92: DUP3 00001c93: MSTORE 00001c94: DUP4 00001c95: SWAP2 00001c96: PUSH32 0x5b36fbde2afb312efa346b7739bce7e65b06c63cae717fdc3c7661791ae1d656 00001cb7: SWAP2 00001cb8: ADD 00001cb9: PUSH1 0x40 00001cbb: MLOAD 00001cbc: DUP1 00001cbd: SWAP2 00001cbe: SUB 00001cbf: SWAP1 00001cc0: LOG2 00001cc1: POP 00001cc2: POP 00001cc3: JUMP 00001cc4: JUMPDEST 00001cc5: PUSH1 0x00 00001cc7: PUSH2 0x1cd1 00001cca: DUP3 00001ccb: PUSH1 0x10 00001ccd: PUSH2 0x4b98 00001cd0: JUMP 00001cd1: JUMPDEST 00001cd2: PUSH2 0x1cdd 00001cd5: SWAP1 00001cd6: PUSH2 0x5208 00001cd9: PUSH2 0x4bc8 00001cdc: JUMP 00001cdd: JUMPDEST 00001cde: SWAP3 00001cdf: SWAP2 00001ce0: POP 00001ce1: POP 00001ce2: JUMP 00001ce3: JUMPDEST 00001ce4: PUSH1 0x3c 00001ce6: PUSH1 0x20 00001ce8: MSTORE 00001ce9: DUP2 00001cea: PUSH1 0x00 00001cec: MSTORE 00001ced: PUSH1 0x40 00001cef: PUSH1 0x00 00001cf1: KECCAK256 00001cf2: DUP2 00001cf3: DUP2 00001cf4: SLOAD 00001cf5: DUP2 00001cf6: LT 00001cf7: PUSH2 0x1cff 00001cfa: JUMPI 00001cfb: PUSH1 0x00 00001cfd: DUP1 00001cfe: REVERT 00001cff: JUMPDEST 00001d00: PUSH1 0x00 00001d02: SWAP2 00001d03: DUP3 00001d04: MSTORE 00001d05: PUSH1 0x20 00001d07: SWAP1 00001d08: SWAP2 00001d09: KECCAK256 00001d0a: ADD 00001d0b: SLOAD 00001d0c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001d21: AND 00001d22: SWAP2 00001d23: POP 00001d24: DUP3 00001d25: SWAP1 00001d26: POP 00001d27: JUMP 00001d28: JUMPDEST 00001d29: PUSH1 0x00 00001d2b: DUP1 00001d2c: PUSH2 0x1d33 00001d2f: PUSH2 0x2219 00001d32: JUMP 00001d33: JUMPDEST 00001d34: POP 00001d35: SWAP1 00001d36: POP 00001d37: PUSH32 0xffffffffffffffffffffffff1111111111111111111111111111111111111112 00001d58: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001d6d: DUP3 00001d6e: AND 00001d6f: ADD 00001d70: PUSH2 0x1d7a 00001d73: JUMPI 00001d74: SELFBALANCE 00001d75: SWAP2 00001d76: POP 00001d77: POP 00001d78: SWAP1 00001d79: JUMP 00001d7a: JUMPDEST 00001d7b: POP 00001d7c: POP 00001d7d: PUSH1 0x3d 00001d7f: SLOAD 00001d80: SWAP1 00001d81: JUMP 00001d82: JUMPDEST 00001d83: PUSH2 0x1d8a 00001d86: PUSH2 0x089f 00001d89: JUMP 00001d8a: JUMPDEST 00001d8b: ISZERO 00001d8c: PUSH2 0x1dc1 00001d8f: JUMPI 00001d90: PUSH1 0x40 00001d92: MLOAD 00001d93: PUSH32 0xf480973e00000000000000000000000000000000000000000000000000000000 00001db4: DUP2 00001db5: MSTORE 00001db6: PUSH1 0x04 00001db8: ADD 00001db9: PUSH1 0x40 00001dbb: MLOAD 00001dbc: DUP1 00001dbd: SWAP2 00001dbe: SUB 00001dbf: SWAP1 00001dc0: REVERT 00001dc1: JUMPDEST 00001dc2: PUSH2 0x1dcb 00001dc5: DUP2 00001dc6: CALLER 00001dc7: PUSH2 0x1e00 00001dca: JUMP 00001dcb: JUMPDEST 00001dcc: POP 00001dcd: JUMP 00001dce: JUMPDEST 00001dcf: PUSH1 0x40 00001dd1: MLOAD 00001dd2: PUSH32 0xdc4a92ff00000000000000000000000000000000000000000000000000000000 00001df3: DUP2 00001df4: MSTORE 00001df5: PUSH1 0x04 00001df7: ADD 00001df8: PUSH1 0x40 00001dfa: MLOAD 00001dfb: DUP1 00001dfc: SWAP2 00001dfd: SUB 00001dfe: SWAP1 00001dff: REVERT 00001e00: JUMPDEST 00001e01: PUSH2 0x1e08 00001e04: PUSH2 0x089f 00001e07: JUMP 00001e08: JUMPDEST 00001e09: ISZERO 00001e0a: PUSH2 0x1e3f 00001e0d: JUMPI 00001e0e: PUSH1 0x40 00001e10: MLOAD 00001e11: PUSH32 0xf480973e00000000000000000000000000000000000000000000000000000000 00001e32: DUP2 00001e33: MSTORE 00001e34: PUSH1 0x04 00001e36: ADD 00001e37: PUSH1 0x40 00001e39: MLOAD 00001e3a: DUP1 00001e3b: SWAP2 00001e3c: SUB 00001e3d: SWAP1 00001e3e: REVERT 00001e3f: JUMPDEST 00001e40: PUSH1 0x32 00001e42: SLOAD 00001e43: PUSH1 0x01 00001e45: EQ 00001e46: PUSH2 0x1e7b 00001e49: JUMPI 00001e4a: PUSH1 0x40 00001e4c: MLOAD 00001e4d: PUSH32 0x9396d15600000000000000000000000000000000000000000000000000000000 00001e6e: DUP2 00001e6f: MSTORE 00001e70: PUSH1 0x04 00001e72: ADD 00001e73: PUSH1 0x40 00001e75: MLOAD 00001e76: DUP1 00001e77: SWAP2 00001e78: SUB 00001e79: SWAP1 00001e7a: REVERT 00001e7b: JUMPDEST 00001e7c: PUSH1 0x00 00001e7e: PUSH2 0x1e86 00001e81: DUP4 00001e82: PUSH2 0x2593 00001e85: JUMP 00001e86: JUMPDEST 00001e87: SWAP1 00001e88: POP 00001e89: PUSH2 0x1e92 00001e8c: DUP2 00001e8d: DUP4 00001e8e: PUSH2 0x0f72 00001e91: JUMP 00001e92: JUMPDEST 00001e93: PUSH1 0x00 00001e95: DUP2 00001e96: DUP2 00001e97: MSTORE 00001e98: PUSH1 0x33 00001e9a: PUSH1 0x20 00001e9c: SWAP1 00001e9d: DUP2 00001e9e: MSTORE 00001e9f: PUSH1 0x40 00001ea1: DUP3 00001ea2: KECCAK256 00001ea3: DUP1 00001ea4: SLOAD 00001ea5: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 00001ec6: AND 00001ec7: PUSH1 0x01 00001ec9: OR 00001eca: SWAP1 00001ecb: SSTORE 00001ecc: DUP5 00001ecd: ADD 00001ece: MLOAD 00001ecf: PUSH1 0x32 00001ed1: SSTORE 00001ed2: DUP1 00001ed3: PUSH2 0x1eda 00001ed6: PUSH2 0x2219 00001ed9: JUMP 00001eda: JUMPDEST 00001edb: POP 00001edc: SWAP1 00001edd: POP 00001ede: PUSH32 0xffffffffffffffffffffffff1111111111111111111111111111111111111112 00001eff: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001f14: DUP3 00001f15: AND 00001f16: ADD 00001f17: PUSH2 0x1f45 00001f1a: JUMPI 00001f1b: PUSH2 0x1f3e 00001f1e: DUP6 00001f1f: PUSH1 0x40 00001f21: ADD 00001f22: MLOAD 00001f23: DUP7 00001f24: PUSH1 0x80 00001f26: ADD 00001f27: MLOAD 00001f28: PUSH2 0x1f34 00001f2b: DUP9 00001f2c: PUSH1 0x60 00001f2e: ADD 00001f2f: MLOAD 00001f30: PUSH2 0x26fa 00001f33: JUMP 00001f34: JUMPDEST 00001f35: DUP9 00001f36: PUSH1 0xa0 00001f38: ADD 00001f39: MLOAD 00001f3a: PUSH2 0x270a 00001f3d: JUMP 00001f3e: JUMPDEST 00001f3f: SWAP2 00001f40: POP 00001f41: PUSH2 0x2198 00001f44: JUMP 00001f45: JUMPDEST 00001f46: DUP1 00001f47: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001f5c: AND 00001f5d: DUP6 00001f5e: PUSH1 0x40 00001f60: ADD 00001f61: MLOAD 00001f62: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001f77: AND 00001f78: SUB 00001f79: PUSH2 0x1fae 00001f7c: JUMPI 00001f7d: PUSH1 0x40 00001f7f: MLOAD 00001f80: PUSH32 0x13496fda00000000000000000000000000000000000000000000000000000000 00001fa1: DUP2 00001fa2: MSTORE 00001fa3: PUSH1 0x04 00001fa5: ADD 00001fa6: PUSH1 0x40 00001fa8: MLOAD 00001fa9: DUP1 00001faa: SWAP2 00001fab: SUB 00001fac: SWAP1 00001fad: REVERT 00001fae: JUMPDEST 00001faf: PUSH1 0x60 00001fb1: DUP6 00001fb2: ADD 00001fb3: MLOAD 00001fb4: ISZERO 00001fb5: PUSH2 0x216f 00001fb8: JUMPI 00001fb9: DUP5 00001fba: PUSH1 0x60 00001fbc: ADD 00001fbd: MLOAD 00001fbe: PUSH1 0x3d 00001fc0: PUSH1 0x00 00001fc2: DUP3 00001fc3: DUP3 00001fc4: SLOAD 00001fc5: PUSH2 0x1fce 00001fc8: SWAP2 00001fc9: SWAP1 00001fca: PUSH2 0x4b64 00001fcd: JUMP 00001fce: JUMPDEST 00001fcf: SWAP1 00001fd0: SWAP2 00001fd1: SSTORE 00001fd2: POP 00001fd3: POP 00001fd4: PUSH1 0x40 00001fd6: MLOAD 00001fd7: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000 00001ff8: DUP2 00001ff9: MSTORE 00001ffa: ADDRESS 00001ffb: PUSH1 0x04 00001ffd: DUP3 00001ffe: ADD 00001fff: MSTORE 00002000: PUSH1 0x00 00002002: SWAP1 00002003: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002018: DUP4 00002019: AND 0000201a: SWAP1 0000201b: PUSH4 0x70a08231 00002020: SWAP1 00002021: PUSH1 0x24 00002023: ADD 00002024: PUSH1 0x20 00002026: PUSH1 0x40 00002028: MLOAD 00002029: DUP1 0000202a: DUP4 0000202b: SUB 0000202c: DUP2 0000202d: DUP7 0000202e: GAS 0000202f: STATICCALL 00002030: ISZERO 00002031: DUP1 00002032: ISZERO 00002033: PUSH2 0x2040 00002036: JUMPI 00002037: RETURNDATASIZE 00002038: PUSH1 0x00 0000203a: DUP1 0000203b: RETURNDATACOPY 0000203c: RETURNDATASIZE 0000203d: PUSH1 0x00 0000203f: REVERT 00002040: JUMPDEST 00002041: POP 00002042: POP 00002043: POP 00002044: POP 00002045: PUSH1 0x40 00002047: MLOAD 00002048: RETURNDATASIZE 00002049: PUSH1 0x1f 0000204b: NOT 0000204c: PUSH1 0x1f 0000204e: DUP3 0000204f: ADD 00002050: AND 00002051: DUP3 00002052: ADD 00002053: DUP1 00002054: PUSH1 0x40 00002056: MSTORE 00002057: POP 00002058: DUP2 00002059: ADD 0000205a: SWAP1 0000205b: PUSH2 0x2064 0000205e: SWAP2 0000205f: SWAP1 00002060: PUSH2 0x495e 00002063: JUMP 00002064: JUMPDEST 00002065: SWAP1 00002066: POP 00002067: PUSH2 0x2099 0000206a: DUP7 0000206b: PUSH1 0x40 0000206d: ADD 0000206e: MLOAD 0000206f: DUP8 00002070: PUSH1 0x60 00002072: ADD 00002073: MLOAD 00002074: DUP5 00002075: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000208a: AND 0000208b: PUSH2 0x2768 0000208e: SWAP1 0000208f: SWAP3 00002090: SWAP2 00002091: SWAP1 00002092: PUSH4 0xffffffff 00002097: AND 00002098: JUMP 00002099: JUMPDEST 0000209a: PUSH1 0x60 0000209c: DUP7 0000209d: ADD 0000209e: MLOAD 0000209f: PUSH2 0x20a8 000020a2: SWAP1 000020a3: DUP3 000020a4: PUSH2 0x4b64 000020a7: JUMP 000020a8: JUMPDEST 000020a9: PUSH1 0x40 000020ab: MLOAD 000020ac: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000 000020cd: DUP2 000020ce: MSTORE 000020cf: ADDRESS 000020d0: PUSH1 0x04 000020d2: DUP3 000020d3: ADD 000020d4: MSTORE 000020d5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000020ea: DUP5 000020eb: AND 000020ec: SWAP1 000020ed: PUSH4 0x70a08231 000020f2: SWAP1 000020f3: PUSH1 0x24 000020f5: ADD 000020f6: PUSH1 0x20 000020f8: PUSH1 0x40 000020fa: MLOAD 000020fb: DUP1 000020fc: DUP4 000020fd: SUB 000020fe: DUP2 000020ff: DUP7 00002100: GAS 00002101: STATICCALL 00002102: ISZERO 00002103: DUP1 00002104: ISZERO 00002105: PUSH2 0x2112 00002108: JUMPI 00002109: RETURNDATASIZE 0000210a: PUSH1 0x00 0000210c: DUP1 0000210d: RETURNDATACOPY 0000210e: RETURNDATASIZE 0000210f: PUSH1 0x00 00002111: REVERT 00002112: JUMPDEST 00002113: POP 00002114: POP 00002115: POP 00002116: POP 00002117: PUSH1 0x40 00002119: MLOAD 0000211a: RETURNDATASIZE 0000211b: PUSH1 0x1f 0000211d: NOT 0000211e: PUSH1 0x1f 00002120: DUP3 00002121: ADD 00002122: AND 00002123: DUP3 00002124: ADD 00002125: DUP1 00002126: PUSH1 0x40 00002128: MSTORE 00002129: POP 0000212a: DUP2 0000212b: ADD 0000212c: SWAP1 0000212d: PUSH2 0x2136 00002130: SWAP2 00002131: SWAP1 00002132: PUSH2 0x495e 00002135: JUMP 00002136: JUMPDEST 00002137: EQ 00002138: PUSH2 0x216d 0000213b: JUMPI 0000213c: PUSH1 0x40 0000213e: MLOAD 0000213f: PUSH32 0x90b8ec1800000000000000000000000000000000000000000000000000000000 00002160: DUP2 00002161: MSTORE 00002162: PUSH1 0x04 00002164: ADD 00002165: PUSH1 0x40 00002167: MLOAD 00002168: DUP1 00002169: SWAP2 0000216a: SUB 0000216b: SWAP1 0000216c: REVERT 0000216d: JUMPDEST 0000216e: POP 0000216f: JUMPDEST 00002170: PUSH1 0xa0 00002172: DUP6 00002173: ADD 00002174: MLOAD 00002175: MLOAD 00002176: ISZERO 00002177: PUSH2 0x2193 0000217a: JUMPI 0000217b: PUSH2 0x1f3e 0000217e: DUP6 0000217f: PUSH1 0x40 00002181: ADD 00002182: MLOAD 00002183: DUP7 00002184: PUSH1 0x80 00002186: ADD 00002187: MLOAD 00002188: PUSH1 0x00 0000218a: DUP9 0000218b: PUSH1 0xa0 0000218d: ADD 0000218e: MLOAD 0000218f: PUSH2 0x270a 00002192: JUMP 00002193: JUMPDEST 00002194: PUSH1 0x01 00002196: SWAP2 00002197: POP 00002198: JUMPDEST 00002199: PUSH1 0x01 0000219b: PUSH1 0x32 0000219d: SSTORE 0000219e: PUSH1 0x40 000021a0: MLOAD 000021a1: DUP3 000021a2: ISZERO 000021a3: ISZERO 000021a4: DUP2 000021a5: MSTORE 000021a6: DUP4 000021a7: SWAP1 000021a8: PUSH32 0xdb5c7652857aa163daadd670e116628fb42e869d8ac4251ef8971d9e5727df1b 000021c9: SWAP1 000021ca: PUSH1 0x20 000021cc: ADD 000021cd: PUSH1 0x40 000021cf: MLOAD 000021d0: DUP1 000021d1: SWAP2 000021d2: SUB 000021d3: SWAP1 000021d4: LOG2 000021d5: DUP2 000021d6: ISZERO 000021d7: DUP1 000021d8: ISZERO 000021d9: PUSH2 0x21e2 000021dc: JUMPI 000021dd: POP 000021de: ORIGIN 000021df: PUSH1 0x01 000021e1: EQ 000021e2: JUMPDEST 000021e3: ISZERO 000021e4: PUSH2 0x16cc 000021e7: JUMPI 000021e8: PUSH1 0x40 000021ea: MLOAD 000021eb: PUSH32 0xeeae4ed300000000000000000000000000000000000000000000000000000000 0000220c: DUP2 0000220d: MSTORE 0000220e: PUSH1 0x04 00002210: ADD 00002211: PUSH1 0x40 00002213: MLOAD 00002214: DUP1 00002215: SWAP2 00002216: SUB 00002217: SWAP1 00002218: REVERT 00002219: JUMPDEST 0000221a: PUSH1 0x37 0000221c: SLOAD 0000221d: PUSH1 0x40 0000221f: DUP1 00002220: MLOAD 00002221: PUSH32 0x4397dfef00000000000000000000000000000000000000000000000000000000 00002242: DUP2 00002243: MSTORE 00002244: DUP2 00002245: MLOAD 00002246: PUSH1 0x00 00002248: SWAP4 00002249: DUP5 0000224a: SWAP4 0000224b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002260: SWAP1 00002261: SWAP2 00002262: AND 00002263: SWAP3 00002264: PUSH4 0x4397dfef 00002269: SWAP3 0000226a: PUSH1 0x04 0000226c: DUP1 0000226d: DUP4 0000226e: ADD 0000226f: SWAP4 00002270: SWAP3 00002271: DUP3 00002272: SWAP1 00002273: SUB 00002274: ADD 00002275: DUP2 00002276: DUP7 00002277: GAS 00002278: STATICCALL 00002279: ISZERO 0000227a: DUP1 0000227b: ISZERO 0000227c: PUSH2 0x2289 0000227f: JUMPI 00002280: RETURNDATASIZE 00002281: PUSH1 0x00 00002283: DUP1 00002284: RETURNDATACOPY 00002285: RETURNDATASIZE 00002286: PUSH1 0x00 00002288: REVERT 00002289: JUMPDEST 0000228a: POP 0000228b: POP 0000228c: POP 0000228d: POP 0000228e: PUSH1 0x40 00002290: MLOAD 00002291: RETURNDATASIZE 00002292: PUSH1 0x1f 00002294: NOT 00002295: PUSH1 0x1f 00002297: DUP3 00002298: ADD 00002299: AND 0000229a: DUP3 0000229b: ADD 0000229c: DUP1 0000229d: PUSH1 0x40 0000229f: MSTORE 000022a0: POP 000022a1: DUP2 000022a2: ADD 000022a3: SWAP1 000022a4: PUSH2 0x22ad 000022a7: SWAP2 000022a8: SWAP1 000022a9: PUSH2 0x4bf4 000022ac: JUMP 000022ad: JUMPDEST 000022ae: SWAP1 000022af: SWAP4 000022b0: SWAP1 000022b1: SWAP3 000022b2: POP 000022b3: SWAP1 000022b4: POP 000022b5: JUMP 000022b6: JUMPDEST 000022b7: DUP5 000022b8: ISZERO 000022b9: DUP1 000022ba: ISZERO 000022bb: SWAP1 000022bc: PUSH2 0x22cb 000022bf: JUMPI 000022c0: POP 000022c1: PUSH7 0x038d7ea4c68000 000022c9: DUP6 000022ca: LT 000022cb: JUMPDEST 000022cc: DUP1 000022cd: PUSH2 0x22e6 000022d0: JUMPI 000022d1: POP 000022d2: DUP4 000022d3: ISZERO 000022d4: DUP1 000022d5: ISZERO 000022d6: SWAP1 000022d7: PUSH2 0x22e6 000022da: JUMPI 000022db: POP 000022dc: PUSH7 0x038d7ea4c68000 000022e4: DUP5 000022e5: LT 000022e6: JUMPDEST 000022e7: ISZERO 000022e8: PUSH2 0x231d 000022eb: JUMPI 000022ec: PUSH1 0x40 000022ee: MLOAD 000022ef: PUSH32 0x5321e1df00000000000000000000000000000000000000000000000000000000 00002310: DUP2 00002311: MSTORE 00002312: PUSH1 0x04 00002314: ADD 00002315: PUSH1 0x40 00002317: MLOAD 00002318: DUP1 00002319: SWAP2 0000231a: SUB 0000231b: SWAP1 0000231c: REVERT 0000231d: JUMPDEST 0000231e: PUSH2 0x232b 00002321: PUSH4 0x3b9aca00 00002326: DUP6 00002327: PUSH2 0x4c58 0000232a: JUMP 0000232b: JUMPDEST 0000232c: ISZERO 0000232d: ISZERO 0000232e: DUP1 0000232f: PUSH2 0x2344 00002332: JUMPI 00002333: POP 00002334: PUSH2 0x2341 00002337: PUSH4 0x3b9aca00 0000233c: CALLVALUE 0000233d: PUSH2 0x4c58 00002340: JUMP 00002341: JUMPDEST 00002342: ISZERO 00002343: ISZERO 00002344: JUMPDEST 00002345: ISZERO 00002346: PUSH2 0x237b 00002349: JUMPI 0000234a: PUSH1 0x40 0000234c: MLOAD 0000234d: PUSH32 0xd29b08bf00000000000000000000000000000000000000000000000000000000 0000236e: DUP2 0000236f: MSTORE 00002370: PUSH1 0x04 00002372: ADD 00002373: PUSH1 0x40 00002375: MLOAD 00002376: DUP1 00002377: SWAP2 00002378: SUB 00002379: SWAP1 0000237a: REVERT 0000237b: JUMPDEST 0000237c: DUP2 0000237d: ISZERO 0000237e: PUSH2 0x23b3 00002381: JUMPI 00002382: PUSH1 0x40 00002384: MLOAD 00002385: PUSH32 0xdc4a92ff00000000000000000000000000000000000000000000000000000000 000023a6: DUP2 000023a7: MSTORE 000023a8: PUSH1 0x04 000023aa: ADD 000023ab: PUSH1 0x40 000023ad: MLOAD 000023ae: DUP1 000023af: SWAP2 000023b0: SUB 000023b1: SWAP1 000023b2: REVERT 000023b3: JUMPDEST 000023b4: DUP6 000023b5: PUSH2 0x23ea 000023b8: JUMPI 000023b9: PUSH1 0x40 000023bb: MLOAD 000023bc: PUSH32 0x13496fda00000000000000000000000000000000000000000000000000000000 000023dd: DUP2 000023de: MSTORE 000023df: PUSH1 0x04 000023e1: ADD 000023e2: PUSH1 0x40 000023e4: MLOAD 000023e5: DUP1 000023e6: SWAP2 000023e7: SUB 000023e8: SWAP1 000023e9: REVERT 000023ea: JUMPDEST 000023eb: PUSH2 0x23f4 000023ee: DUP2 000023ef: MLOAD 000023f0: PUSH2 0x1cc4 000023f3: JUMP 000023f4: JUMPDEST 000023f5: PUSH8 0xffffffffffffffff 000023fe: AND 000023ff: DUP4 00002400: PUSH8 0xffffffffffffffff 00002409: AND 0000240a: LT 0000240b: ISZERO 0000240c: PUSH2 0x2441 0000240f: JUMPI 00002410: PUSH1 0x40 00002412: MLOAD 00002413: PUSH32 0x4929b80800000000000000000000000000000000000000000000000000000000 00002434: DUP2 00002435: MSTORE 00002436: PUSH1 0x04 00002438: ADD 00002439: PUSH1 0x40 0000243b: MLOAD 0000243c: DUP1 0000243d: SWAP2 0000243e: SUB 0000243f: SWAP1 00002440: REVERT 00002441: JUMPDEST 00002442: PUSH3 0x01d4c0 00002446: DUP2 00002447: MLOAD 00002448: GT 00002449: ISZERO 0000244a: PUSH2 0x247f 0000244d: JUMPI 0000244e: PUSH1 0x40 00002450: MLOAD 00002451: PUSH32 0x73052b0f00000000000000000000000000000000000000000000000000000000 00002472: DUP2 00002473: MSTORE 00002474: PUSH1 0x04 00002476: ADD 00002477: PUSH1 0x40 00002479: MLOAD 0000247a: DUP1 0000247b: SWAP2 0000247c: SUB 0000247d: SWAP1 0000247e: REVERT 0000247f: JUMPDEST 00002480: CALLER 00002481: ORIGIN 00002482: DUP2 00002483: EQ 00002484: PUSH2 0x24a0 00002487: JUMPI 00002488: POP 00002489: CALLER 0000248a: PUSH20 0x1111000000000000000000000000000000001111 0000249f: ADD 000024a0: JUMPDEST 000024a1: PUSH1 0x00 000024a3: PUSH2 0x24ab 000024a6: DUP8 000024a7: PUSH2 0x27fa 000024aa: JUMP 000024ab: JUMPDEST 000024ac: PUSH2 0x24b4 000024af: DUP8 000024b0: PUSH2 0x27fa 000024b3: JUMP 000024b4: JUMPDEST 000024b5: DUP7 000024b6: DUP7 000024b7: DUP7 000024b8: PUSH1 0x40 000024ba: MLOAD 000024bb: PUSH1 0x20 000024bd: ADD 000024be: PUSH2 0x24cb 000024c1: SWAP6 000024c2: SWAP5 000024c3: SWAP4 000024c4: SWAP3 000024c5: SWAP2 000024c6: SWAP1 000024c7: PUSH2 0x4c6c 000024ca: JUMP 000024cb: JUMPDEST 000024cc: PUSH1 0x40 000024ce: MLOAD 000024cf: PUSH1 0x20 000024d1: DUP2 000024d2: DUP4 000024d3: SUB 000024d4: SUB 000024d5: DUP2 000024d6: MSTORE 000024d7: SWAP1 000024d8: PUSH1 0x40 000024da: MSTORE 000024db: SWAP1 000024dc: POP 000024dd: PUSH1 0x00 000024df: DUP9 000024e0: DUP4 000024e1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000024f6: AND 000024f7: PUSH32 0xe6a61c8a27c2ace3a2c5c1be0459b0169e6f228db83930f82d7c877043c946b7 00002518: DUP5 00002519: PUSH1 0x40 0000251b: MLOAD 0000251c: PUSH2 0x2525 0000251f: SWAP2 00002520: SWAP1 00002521: PUSH2 0x4379 00002524: JUMP 00002525: JUMPDEST 00002526: PUSH1 0x40 00002528: MLOAD 00002529: DUP1 0000252a: SWAP2 0000252b: SUB 0000252c: SWAP1 0000252d: LOG4 0000252e: POP 0000252f: POP 00002530: POP 00002531: POP 00002532: POP 00002533: POP 00002534: POP 00002535: POP 00002536: JUMP 00002537: JUMPDEST 00002538: PUSH1 0x00 0000253a: DUP2 0000253b: PUSH1 0x00 0000253d: ADD 0000253e: MLOAD 0000253f: DUP3 00002540: PUSH1 0x20 00002542: ADD 00002543: MLOAD 00002544: DUP4 00002545: PUSH1 0x40 00002547: ADD 00002548: MLOAD 00002549: DUP5 0000254a: PUSH1 0x60 0000254c: ADD 0000254d: MLOAD 0000254e: PUSH1 0x40 00002550: MLOAD 00002551: PUSH1 0x20 00002553: ADD 00002554: PUSH2 0x2576 00002557: SWAP5 00002558: SWAP4 00002559: SWAP3 0000255a: SWAP2 0000255b: SWAP1 0000255c: SWAP4 0000255d: DUP5 0000255e: MSTORE 0000255f: PUSH1 0x20 00002561: DUP5 00002562: ADD 00002563: SWAP3 00002564: SWAP1 00002565: SWAP3 00002566: MSTORE 00002567: PUSH1 0x40 00002569: DUP4 0000256a: ADD 0000256b: MSTORE 0000256c: PUSH1 0x60 0000256e: DUP3 0000256f: ADD 00002570: MSTORE 00002571: PUSH1 0x80 00002573: ADD 00002574: SWAP1 00002575: JUMP 00002576: JUMPDEST 00002577: PUSH1 0x40 00002579: MLOAD 0000257a: PUSH1 0x20 0000257c: DUP2 0000257d: DUP4 0000257e: SUB 0000257f: SUB 00002580: DUP2 00002581: MSTORE 00002582: SWAP1 00002583: PUSH1 0x40 00002585: MSTORE 00002586: DUP1 00002587: MLOAD 00002588: SWAP1 00002589: PUSH1 0x20 0000258b: ADD 0000258c: KECCAK256 0000258d: SWAP1 0000258e: POP 0000258f: SWAP2 00002590: SWAP1 00002591: POP 00002592: JUMP 00002593: JUMPDEST 00002594: DUP1 00002595: MLOAD 00002596: PUSH1 0x20 00002598: DUP1 00002599: DUP4 0000259a: ADD 0000259b: MLOAD 0000259c: PUSH1 0x40 0000259e: DUP1 0000259f: DUP6 000025a0: ADD 000025a1: MLOAD 000025a2: PUSH1 0x60 000025a4: DUP7 000025a5: ADD 000025a6: MLOAD 000025a7: PUSH1 0x80 000025a9: DUP8 000025aa: ADD 000025ab: MLOAD 000025ac: PUSH1 0xa0 000025ae: DUP9 000025af: ADD 000025b0: MLOAD 000025b1: SWAP4 000025b2: MLOAD 000025b3: PUSH1 0x00 000025b5: SWAP8 000025b6: PUSH2 0x2576 000025b9: SWAP8 000025ba: SWAP1 000025bb: SWAP7 000025bc: SWAP6 000025bd: SWAP2 000025be: ADD 000025bf: PUSH2 0x4cd1 000025c2: JUMP 000025c3: JUMPDEST 000025c4: PUSH1 0x00 000025c6: DUP1 000025c7: PUSH2 0x25cf 000025ca: DUP7 000025cb: PUSH2 0x280a 000025ce: JUMP 000025cf: JUMPDEST 000025d0: SWAP1 000025d1: POP 000025d2: PUSH2 0x25dd 000025d5: DUP2 000025d6: DUP7 000025d7: DUP7 000025d8: DUP7 000025d9: PUSH2 0x283c 000025dc: JUMP 000025dd: JUMPDEST 000025de: SWAP7 000025df: SWAP6 000025e0: POP 000025e1: POP 000025e2: POP 000025e3: POP 000025e4: POP 000025e5: POP 000025e6: JUMP 000025e7: JUMPDEST 000025e8: PUSH1 0x00 000025ea: SLOAD 000025eb: PUSH2 0x0100 000025ee: SWAP1 000025ef: DIV 000025f0: PUSH1 0xff 000025f2: AND 000025f3: PUSH2 0x267e 000025f6: JUMPI 000025f7: PUSH1 0x40 000025f9: MLOAD 000025fa: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000261b: DUP2 0000261c: MSTORE 0000261d: PUSH1 0x20 0000261f: PUSH1 0x04 00002621: DUP3 00002622: ADD 00002623: MSTORE 00002624: PUSH1 0x2b 00002626: PUSH1 0x24 00002628: DUP3 00002629: ADD 0000262a: MSTORE 0000262b: PUSH32 0x496e697469616c697a61626c653a20636f6e7472616374206973206e6f742069 0000264c: PUSH1 0x44 0000264e: DUP3 0000264f: ADD 00002650: MSTORE 00002651: PUSH32 0x6e697469616c697a696e67000000000000000000000000000000000000000000 00002672: PUSH1 0x64 00002674: DUP3 00002675: ADD 00002676: MSTORE 00002677: PUSH1 0x84 00002679: ADD 0000267a: PUSH2 0x11b5 0000267d: JUMP 0000267e: JUMPDEST 0000267f: PUSH1 0x01 00002681: SLOAD 00002682: PUSH25 0x01000000000000000000000000000000000000000000000000 0000269c: SWAP1 0000269d: DIV 0000269e: PUSH8 0xffffffffffffffff 000026a7: AND 000026a8: PUSH1 0x00 000026aa: SUB 000026ab: PUSH2 0x18a0 000026ae: JUMPI 000026af: PUSH1 0x40 000026b1: DUP1 000026b2: MLOAD 000026b3: PUSH1 0x60 000026b5: DUP2 000026b6: ADD 000026b7: DUP3 000026b8: MSTORE 000026b9: PUSH4 0x3b9aca00 000026be: DUP1 000026bf: DUP3 000026c0: MSTORE 000026c1: PUSH1 0x00 000026c3: PUSH1 0x20 000026c5: DUP4 000026c6: ADD 000026c7: MSTORE 000026c8: NUMBER 000026c9: PUSH8 0xffffffffffffffff 000026d2: AND 000026d3: SWAP2 000026d4: SWAP1 000026d5: SWAP3 000026d6: ADD 000026d7: DUP2 000026d8: SWAP1 000026d9: MSTORE 000026da: PUSH25 0x01000000000000000000000000000000000000000000000000 000026f4: MUL 000026f5: OR 000026f6: PUSH1 0x01 000026f8: SSTORE 000026f9: JUMP 000026fa: JUMPDEST 000026fb: PUSH1 0x00 000026fd: PUSH2 0x1cdd 00002700: PUSH4 0x3b9aca00 00002705: DUP4 00002706: PUSH2 0x4d24 00002709: JUMP 0000270a: JUMPDEST 0000270b: PUSH1 0x00 0000270d: DUP1 0000270e: PUSH1 0x00 00002710: PUSH2 0x271a 00002713: DUP7 00002714: PUSH1 0x00 00002716: PUSH2 0x286c 00002719: JUMP 0000271a: JUMPDEST 0000271b: SWAP1 0000271c: POP 0000271d: DUP1 0000271e: PUSH2 0x2750 00002721: JUMPI 00002722: PUSH4 0x08c379a0 00002727: PUSH1 0x00 00002729: MSTORE 0000272a: PUSH1 0x20 0000272c: DUP1 0000272d: MSTORE 0000272e: PUSH25 0x185361666543616c6c3a204e6f7420656e6f75676820676173 00002748: PUSH1 0x58 0000274a: MSTORE 0000274b: PUSH1 0x64 0000274d: PUSH1 0x1c 0000274f: REVERT 00002750: JUMPDEST 00002751: PUSH1 0x00 00002753: DUP1 00002754: DUP6 00002755: MLOAD 00002756: PUSH1 0x20 00002758: DUP8 00002759: ADD 0000275a: DUP9 0000275b: DUP12 0000275c: GAS 0000275d: CALL 0000275e: SWAP8 0000275f: SWAP7 00002760: POP 00002761: POP 00002762: POP 00002763: POP 00002764: POP 00002765: POP 00002766: POP 00002767: JUMP 00002768: JUMPDEST 00002769: PUSH1 0x40 0000276b: DUP1 0000276c: MLOAD 0000276d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002782: DUP5 00002783: AND 00002784: PUSH1 0x24 00002786: DUP3 00002787: ADD 00002788: MSTORE 00002789: PUSH1 0x44 0000278b: DUP1 0000278c: DUP3 0000278d: ADD 0000278e: DUP5 0000278f: SWAP1 00002790: MSTORE 00002791: DUP3 00002792: MLOAD 00002793: DUP1 00002794: DUP4 00002795: SUB 00002796: SWAP1 00002797: SWAP2 00002798: ADD 00002799: DUP2 0000279a: MSTORE 0000279b: PUSH1 0x64 0000279d: SWAP1 0000279e: SWAP2 0000279f: ADD 000027a0: SWAP1 000027a1: SWAP2 000027a2: MSTORE 000027a3: PUSH1 0x20 000027a5: DUP2 000027a6: ADD 000027a7: DUP1 000027a8: MLOAD 000027a9: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 000027c6: AND 000027c7: PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000 000027e8: OR 000027e9: SWAP1 000027ea: MSTORE 000027eb: PUSH2 0x27f5 000027ee: SWAP1 000027ef: DUP5 000027f0: SWAP1 000027f1: PUSH2 0x288a 000027f4: JUMP 000027f5: JUMPDEST 000027f6: POP 000027f7: POP 000027f8: POP 000027f9: JUMP 000027fa: JUMPDEST 000027fb: PUSH1 0x00 000027fd: PUSH2 0x1cdd 00002800: PUSH4 0x3b9aca00 00002805: DUP4 00002806: PUSH2 0x4d61 00002809: JUMP 0000280a: JUMPDEST 0000280b: PUSH1 0x60 0000280d: DUP2 0000280e: DUP1 0000280f: MLOAD 00002810: SWAP1 00002811: PUSH1 0x20 00002813: ADD 00002814: KECCAK256 00002815: PUSH1 0x40 00002817: MLOAD 00002818: PUSH1 0x20 0000281a: ADD 0000281b: PUSH2 0x2826 0000281e: SWAP2 0000281f: DUP2 00002820: MSTORE 00002821: PUSH1 0x20 00002823: ADD 00002824: SWAP1 00002825: JUMP 00002826: JUMPDEST 00002827: PUSH1 0x40 00002829: MLOAD 0000282a: PUSH1 0x20 0000282c: DUP2 0000282d: DUP4 0000282e: SUB 0000282f: SUB 00002830: DUP2 00002831: MSTORE 00002832: SWAP1 00002833: PUSH1 0x40 00002835: MSTORE 00002836: SWAP1 00002837: POP 00002838: SWAP2 00002839: SWAP1 0000283a: POP 0000283b: JUMP 0000283c: JUMPDEST 0000283d: PUSH1 0x00 0000283f: PUSH2 0x2863 00002842: DUP5 00002843: PUSH2 0x284d 00002846: DUP8 00002847: DUP7 00002848: DUP7 00002849: PUSH2 0x2996 0000284c: JUMP 0000284d: JUMPDEST 0000284e: DUP1 0000284f: MLOAD 00002850: PUSH1 0x20 00002852: SWAP2 00002853: DUP3 00002854: ADD 00002855: KECCAK256 00002856: DUP3 00002857: MLOAD 00002858: SWAP3 00002859: SWAP1 0000285a: SWAP2 0000285b: ADD 0000285c: SWAP2 0000285d: SWAP1 0000285e: SWAP2 0000285f: KECCAK256 00002860: EQ 00002861: SWAP1 00002862: JUMP 00002863: JUMPDEST 00002864: SWAP6 00002865: SWAP5 00002866: POP 00002867: POP 00002868: POP 00002869: POP 0000286a: POP 0000286b: JUMP 0000286c: JUMPDEST 0000286d: PUSH1 0x00 0000286f: DUP1 00002870: PUSH1 0x3f 00002872: DUP4 00002873: PUSH2 0x9c40 00002876: ADD 00002877: MUL 00002878: PUSH1 0x40 0000287a: DUP6 0000287b: MUL 0000287c: ADD 0000287d: PUSH1 0x3f 0000287f: GAS 00002880: MUL 00002881: LT 00002882: ISZERO 00002883: SWAP5 00002884: SWAP4 00002885: POP 00002886: POP 00002887: POP 00002888: POP 00002889: JUMP 0000288a: JUMPDEST 0000288b: PUSH1 0x00 0000288d: PUSH2 0x28ec 00002890: DUP3 00002891: PUSH1 0x40 00002893: MLOAD 00002894: DUP1 00002895: PUSH1 0x40 00002897: ADD 00002898: PUSH1 0x40 0000289a: MSTORE 0000289b: DUP1 0000289c: PUSH1 0x20 0000289e: DUP2 0000289f: MSTORE 000028a0: PUSH1 0x20 000028a2: ADD 000028a3: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564 000028c4: DUP2 000028c5: MSTORE 000028c6: POP 000028c7: DUP6 000028c8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000028dd: AND 000028de: PUSH2 0x341b 000028e1: SWAP1 000028e2: SWAP3 000028e3: SWAP2 000028e4: SWAP1 000028e5: PUSH4 0xffffffff 000028ea: AND 000028eb: JUMP 000028ec: JUMPDEST 000028ed: DUP1 000028ee: MLOAD 000028ef: SWAP1 000028f0: SWAP2 000028f1: POP 000028f2: ISZERO 000028f3: PUSH2 0x27f5 000028f6: JUMPI 000028f7: DUP1 000028f8: DUP1 000028f9: PUSH1 0x20 000028fb: ADD 000028fc: SWAP1 000028fd: MLOAD 000028fe: DUP2 000028ff: ADD 00002900: SWAP1 00002901: PUSH2 0x290a 00002904: SWAP2 00002905: SWAP1 00002906: PUSH2 0x48f4 00002909: JUMP 0000290a: JUMPDEST 0000290b: PUSH2 0x27f5 0000290e: JUMPI 0000290f: PUSH1 0x40 00002911: MLOAD 00002912: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002933: DUP2 00002934: MSTORE 00002935: PUSH1 0x20 00002937: PUSH1 0x04 00002939: DUP3 0000293a: ADD 0000293b: MSTORE 0000293c: PUSH1 0x2a 0000293e: PUSH1 0x24 00002940: DUP3 00002941: ADD 00002942: MSTORE 00002943: PUSH32 0x5361666545524332303a204552433230206f7065726174696f6e20646964206e 00002964: PUSH1 0x44 00002966: DUP3 00002967: ADD 00002968: MSTORE 00002969: PUSH32 0x6f74207375636365656400000000000000000000000000000000000000000000 0000298a: PUSH1 0x64 0000298c: DUP3 0000298d: ADD 0000298e: MSTORE 0000298f: PUSH1 0x84 00002991: ADD 00002992: PUSH2 0x11b5 00002995: JUMP 00002996: JUMPDEST 00002997: PUSH1 0x60 00002999: PUSH1 0x00 0000299b: DUP5 0000299c: MLOAD 0000299d: GT 0000299e: PUSH2 0x2a03 000029a1: JUMPI 000029a2: PUSH1 0x40 000029a4: MLOAD 000029a5: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000029c6: DUP2 000029c7: MSTORE 000029c8: PUSH1 0x20 000029ca: PUSH1 0x04 000029cc: DUP3 000029cd: ADD 000029ce: MSTORE 000029cf: PUSH1 0x15 000029d1: PUSH1 0x24 000029d3: DUP3 000029d4: ADD 000029d5: MSTORE 000029d6: PUSH32 0x4d65726b6c65547269653a20656d707479206b65790000000000000000000000 000029f7: PUSH1 0x44 000029f9: DUP3 000029fa: ADD 000029fb: MSTORE 000029fc: PUSH1 0x64 000029fe: ADD 000029ff: PUSH2 0x11b5 00002a02: JUMP 00002a03: JUMPDEST 00002a04: PUSH1 0x00 00002a06: PUSH2 0x2a0e 00002a09: DUP5 00002a0a: PUSH2 0x3432 00002a0d: JUMP 00002a0e: JUMPDEST 00002a0f: SWAP1 00002a10: POP 00002a11: PUSH1 0x00 00002a13: PUSH2 0x2a1b 00002a16: DUP7 00002a17: PUSH2 0x351e 00002a1a: JUMP 00002a1b: JUMPDEST 00002a1c: SWAP1 00002a1d: POP 00002a1e: PUSH1 0x00 00002a20: DUP5 00002a21: PUSH1 0x40 00002a23: MLOAD 00002a24: PUSH1 0x20 00002a26: ADD 00002a27: PUSH2 0x2a32 00002a2a: SWAP2 00002a2b: DUP2 00002a2c: MSTORE 00002a2d: PUSH1 0x20 00002a2f: ADD 00002a30: SWAP1 00002a31: JUMP 00002a32: JUMPDEST 00002a33: PUSH1 0x40 00002a35: MLOAD 00002a36: PUSH1 0x20 00002a38: DUP2 00002a39: DUP4 00002a3a: SUB 00002a3b: SUB 00002a3c: DUP2 00002a3d: MSTORE 00002a3e: SWAP1 00002a3f: PUSH1 0x40 00002a41: MSTORE 00002a42: SWAP1 00002a43: POP 00002a44: PUSH1 0x00 00002a46: DUP1 00002a47: JUMPDEST 00002a48: DUP5 00002a49: MLOAD 00002a4a: DUP2 00002a4b: LT 00002a4c: ISZERO 00002a4d: PUSH2 0x338b 00002a50: JUMPI 00002a51: PUSH1 0x00 00002a53: DUP6 00002a54: DUP3 00002a55: DUP2 00002a56: MLOAD 00002a57: DUP2 00002a58: LT 00002a59: PUSH2 0x2a64 00002a5c: JUMPI 00002a5d: PUSH2 0x2a64 00002a60: PUSH2 0x4d75 00002a63: JUMP 00002a64: JUMPDEST 00002a65: PUSH1 0x20 00002a67: MUL 00002a68: PUSH1 0x20 00002a6a: ADD 00002a6b: ADD 00002a6c: MLOAD 00002a6d: SWAP1 00002a6e: POP 00002a6f: DUP5 00002a70: MLOAD 00002a71: DUP4 00002a72: GT 00002a73: ISZERO 00002a74: PUSH2 0x2aff 00002a77: JUMPI 00002a78: PUSH1 0x40 00002a7a: MLOAD 00002a7b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002a9c: DUP2 00002a9d: MSTORE 00002a9e: PUSH1 0x20 00002aa0: PUSH1 0x04 00002aa2: DUP3 00002aa3: ADD 00002aa4: MSTORE 00002aa5: PUSH1 0x2e 00002aa7: PUSH1 0x24 00002aa9: DUP3 00002aaa: ADD 00002aab: MSTORE 00002aac: PUSH32 0x4d65726b6c65547269653a206b657920696e646578206578636565647320746f 00002acd: PUSH1 0x44 00002acf: DUP3 00002ad0: ADD 00002ad1: MSTORE 00002ad2: PUSH32 0x74616c206b6579206c656e677468000000000000000000000000000000000000 00002af3: PUSH1 0x64 00002af5: DUP3 00002af6: ADD 00002af7: MSTORE 00002af8: PUSH1 0x84 00002afa: ADD 00002afb: PUSH2 0x11b5 00002afe: JUMP 00002aff: JUMPDEST 00002b00: DUP3 00002b01: PUSH1 0x00 00002b03: SUB 00002b04: PUSH2 0x2bb8 00002b07: JUMPI 00002b08: DUP1 00002b09: MLOAD 00002b0a: DUP1 00002b0b: MLOAD 00002b0c: PUSH1 0x20 00002b0e: SWAP2 00002b0f: DUP3 00002b10: ADD 00002b11: KECCAK256 00002b12: PUSH1 0x40 00002b14: MLOAD 00002b15: PUSH2 0x2b4d 00002b18: SWAP3 00002b19: PUSH2 0x2b27 00002b1c: SWAP3 00002b1d: SWAP2 00002b1e: ADD 00002b1f: SWAP1 00002b20: DUP2 00002b21: MSTORE 00002b22: PUSH1 0x20 00002b24: ADD 00002b25: SWAP1 00002b26: JUMP 00002b27: JUMPDEST 00002b28: PUSH1 0x40 00002b2a: MLOAD 00002b2b: PUSH1 0x20 00002b2d: DUP2 00002b2e: DUP4 00002b2f: SUB 00002b30: SUB 00002b31: DUP2 00002b32: MSTORE 00002b33: SWAP1 00002b34: PUSH1 0x40 00002b36: MSTORE 00002b37: DUP6 00002b38: DUP1 00002b39: MLOAD 00002b3a: PUSH1 0x20 00002b3c: SWAP2 00002b3d: DUP3 00002b3e: ADD 00002b3f: KECCAK256 00002b40: DUP3 00002b41: MLOAD 00002b42: SWAP3 00002b43: SWAP1 00002b44: SWAP2 00002b45: ADD 00002b46: SWAP2 00002b47: SWAP1 00002b48: SWAP2 00002b49: KECCAK256 00002b4a: EQ 00002b4b: SWAP1 00002b4c: JUMP 00002b4d: JUMPDEST 00002b4e: PUSH2 0x2bb3 00002b51: JUMPI 00002b52: PUSH1 0x40 00002b54: MLOAD 00002b55: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002b76: DUP2 00002b77: MSTORE 00002b78: PUSH1 0x20 00002b7a: PUSH1 0x04 00002b7c: DUP3 00002b7d: ADD 00002b7e: MSTORE 00002b7f: PUSH1 0x1d 00002b81: PUSH1 0x24 00002b83: DUP3 00002b84: ADD 00002b85: MSTORE 00002b86: PUSH32 0x4d65726b6c65547269653a20696e76616c696420726f6f742068617368000000 00002ba7: PUSH1 0x44 00002ba9: DUP3 00002baa: ADD 00002bab: MSTORE 00002bac: PUSH1 0x64 00002bae: ADD 00002baf: PUSH2 0x11b5 00002bb2: JUMP 00002bb3: JUMPDEST 00002bb4: PUSH2 0x2d0f 00002bb7: JUMP 00002bb8: JUMPDEST 00002bb9: DUP1 00002bba: MLOAD 00002bbb: MLOAD 00002bbc: PUSH1 0x20 00002bbe: GT 00002bbf: PUSH2 0x2c6e 00002bc2: JUMPI 00002bc3: DUP1 00002bc4: MLOAD 00002bc5: DUP1 00002bc6: MLOAD 00002bc7: PUSH1 0x20 00002bc9: SWAP2 00002bca: DUP3 00002bcb: ADD 00002bcc: KECCAK256 00002bcd: PUSH1 0x40 00002bcf: MLOAD 00002bd0: PUSH2 0x2be2 00002bd3: SWAP3 00002bd4: PUSH2 0x2b27 00002bd7: SWAP3 00002bd8: SWAP2 00002bd9: ADD 00002bda: SWAP1 00002bdb: DUP2 00002bdc: MSTORE 00002bdd: PUSH1 0x20 00002bdf: ADD 00002be0: SWAP1 00002be1: JUMP 00002be2: JUMPDEST 00002be3: PUSH2 0x2bb3 00002be6: JUMPI 00002be7: PUSH1 0x40 00002be9: MLOAD 00002bea: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002c0b: DUP2 00002c0c: MSTORE 00002c0d: PUSH1 0x20 00002c0f: PUSH1 0x04 00002c11: DUP3 00002c12: ADD 00002c13: MSTORE 00002c14: PUSH1 0x27 00002c16: PUSH1 0x24 00002c18: DUP3 00002c19: ADD 00002c1a: MSTORE 00002c1b: PUSH32 0x4d65726b6c65547269653a20696e76616c6964206c6172676520696e7465726e 00002c3c: PUSH1 0x44 00002c3e: DUP3 00002c3f: ADD 00002c40: MSTORE 00002c41: PUSH32 0x616c206861736800000000000000000000000000000000000000000000000000 00002c62: PUSH1 0x64 00002c64: DUP3 00002c65: ADD 00002c66: MSTORE 00002c67: PUSH1 0x84 00002c69: ADD 00002c6a: PUSH2 0x11b5 00002c6d: JUMP 00002c6e: JUMPDEST 00002c6f: DUP1 00002c70: MLOAD 00002c71: DUP5 00002c72: MLOAD 00002c73: PUSH1 0x20 00002c75: DUP1 00002c76: DUP8 00002c77: ADD 00002c78: SWAP2 00002c79: SWAP1 00002c7a: SWAP2 00002c7b: KECCAK256 00002c7c: DUP3 00002c7d: MLOAD 00002c7e: SWAP2 00002c7f: SWAP1 00002c80: SWAP3 00002c81: ADD 00002c82: KECCAK256 00002c83: EQ 00002c84: PUSH2 0x2d0f 00002c87: JUMPI 00002c88: PUSH1 0x40 00002c8a: MLOAD 00002c8b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002cac: DUP2 00002cad: MSTORE 00002cae: PUSH1 0x20 00002cb0: PUSH1 0x04 00002cb2: DUP3 00002cb3: ADD 00002cb4: MSTORE 00002cb5: PUSH1 0x26 00002cb7: PUSH1 0x24 00002cb9: DUP3 00002cba: ADD 00002cbb: MSTORE 00002cbc: PUSH32 0x4d65726b6c65547269653a20696e76616c696420696e7465726e616c206e6f64 00002cdd: PUSH1 0x44 00002cdf: DUP3 00002ce0: ADD 00002ce1: MSTORE 00002ce2: PUSH32 0x6520686173680000000000000000000000000000000000000000000000000000 00002d03: PUSH1 0x64 00002d05: DUP3 00002d06: ADD 00002d07: MSTORE 00002d08: PUSH1 0x84 00002d0a: ADD 00002d0b: PUSH2 0x11b5 00002d0e: JUMP 00002d0f: JUMPDEST 00002d10: PUSH2 0x2d1b 00002d13: PUSH1 0x10 00002d15: PUSH1 0x01 00002d17: PUSH2 0x4da4 00002d1a: JUMP 00002d1b: JUMPDEST 00002d1c: DUP2 00002d1d: PUSH1 0x20 00002d1f: ADD 00002d20: MLOAD 00002d21: MLOAD 00002d22: SUB 00002d23: PUSH2 0x2ef7 00002d26: JUMPI 00002d27: DUP5 00002d28: MLOAD 00002d29: DUP4 00002d2a: SUB 00002d2b: PUSH2 0x2e8f 00002d2e: JUMPI 00002d2f: PUSH2 0x2d55 00002d32: DUP2 00002d33: PUSH1 0x20 00002d35: ADD 00002d36: MLOAD 00002d37: PUSH1 0x10 00002d39: DUP2 00002d3a: MLOAD 00002d3b: DUP2 00002d3c: LT 00002d3d: PUSH2 0x2d48 00002d40: JUMPI 00002d41: PUSH2 0x2d48 00002d44: PUSH2 0x4d75 00002d47: JUMP 00002d48: JUMPDEST 00002d49: PUSH1 0x20 00002d4b: MUL 00002d4c: PUSH1 0x20 00002d4e: ADD 00002d4f: ADD 00002d50: MLOAD 00002d51: PUSH2 0x3581 00002d54: JUMP 00002d55: JUMPDEST 00002d56: SWAP7 00002d57: POP 00002d58: PUSH1 0x00 00002d5a: DUP8 00002d5b: MLOAD 00002d5c: GT 00002d5d: PUSH2 0x2de8 00002d60: JUMPI 00002d61: PUSH1 0x40 00002d63: MLOAD 00002d64: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002d85: DUP2 00002d86: MSTORE 00002d87: PUSH1 0x20 00002d89: PUSH1 0x04 00002d8b: DUP3 00002d8c: ADD 00002d8d: MSTORE 00002d8e: PUSH1 0x3b 00002d90: PUSH1 0x24 00002d92: DUP3 00002d93: ADD 00002d94: MSTORE 00002d95: PUSH32 0x4d65726b6c65547269653a2076616c7565206c656e677468206d757374206265 00002db6: PUSH1 0x44 00002db8: DUP3 00002db9: ADD 00002dba: MSTORE 00002dbb: PUSH32 0x2067726561746572207468616e207a65726f20286272616e6368290000000000 00002ddc: PUSH1 0x64 00002dde: DUP3 00002ddf: ADD 00002de0: MSTORE 00002de1: PUSH1 0x84 00002de3: ADD 00002de4: PUSH2 0x11b5 00002de7: JUMP 00002de8: JUMPDEST 00002de9: PUSH1 0x01 00002deb: DUP7 00002dec: MLOAD 00002ded: PUSH2 0x2df6 00002df0: SWAP2 00002df1: SWAP1 00002df2: PUSH2 0x4b64 00002df5: JUMP 00002df6: JUMPDEST 00002df7: DUP3 00002df8: EQ 00002df9: PUSH2 0x2e84 00002dfc: JUMPI 00002dfd: PUSH1 0x40 00002dff: MLOAD 00002e00: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002e21: DUP2 00002e22: MSTORE 00002e23: PUSH1 0x20 00002e25: PUSH1 0x04 00002e27: DUP3 00002e28: ADD 00002e29: MSTORE 00002e2a: PUSH1 0x3a 00002e2c: PUSH1 0x24 00002e2e: DUP3 00002e2f: ADD 00002e30: MSTORE 00002e31: PUSH32 0x4d65726b6c65547269653a2076616c7565206e6f6465206d757374206265206c 00002e52: PUSH1 0x44 00002e54: DUP3 00002e55: ADD 00002e56: MSTORE 00002e57: PUSH32 0x617374206e6f646520696e2070726f6f6620286272616e636829000000000000 00002e78: PUSH1 0x64 00002e7a: DUP3 00002e7b: ADD 00002e7c: MSTORE 00002e7d: PUSH1 0x84 00002e7f: ADD 00002e80: PUSH2 0x11b5 00002e83: JUMP 00002e84: JUMPDEST 00002e85: POP 00002e86: POP 00002e87: POP 00002e88: POP 00002e89: POP 00002e8a: POP 00002e8b: PUSH2 0x3414 00002e8e: JUMP 00002e8f: JUMPDEST 00002e90: PUSH1 0x00 00002e92: DUP6 00002e93: DUP5 00002e94: DUP2 00002e95: MLOAD 00002e96: DUP2 00002e97: LT 00002e98: PUSH2 0x2ea3 00002e9b: JUMPI 00002e9c: PUSH2 0x2ea3 00002e9f: PUSH2 0x4d75 00002ea2: JUMP 00002ea3: JUMPDEST 00002ea4: PUSH1 0x20 00002ea6: ADD 00002ea7: ADD 00002ea8: MLOAD 00002ea9: PUSH1 0xf8 00002eab: SHR 00002eac: PUSH1 0xf8 00002eae: SHL 00002eaf: PUSH1 0xf8 00002eb1: SHR 00002eb2: SWAP1 00002eb3: POP 00002eb4: PUSH1 0x00 00002eb6: DUP3 00002eb7: PUSH1 0x20 00002eb9: ADD 00002eba: MLOAD 00002ebb: DUP3 00002ebc: PUSH1 0xff 00002ebe: AND 00002ebf: DUP2 00002ec0: MLOAD 00002ec1: DUP2 00002ec2: LT 00002ec3: PUSH2 0x2ece 00002ec6: JUMPI 00002ec7: PUSH2 0x2ece 00002eca: PUSH2 0x4d75 00002ecd: JUMP 00002ece: JUMPDEST 00002ecf: PUSH1 0x20 00002ed1: MUL 00002ed2: PUSH1 0x20 00002ed4: ADD 00002ed5: ADD 00002ed6: MLOAD 00002ed7: SWAP1 00002ed8: POP 00002ed9: PUSH2 0x2ee1 00002edc: DUP2 00002edd: PUSH2 0x3635 00002ee0: JUMP 00002ee1: JUMPDEST 00002ee2: SWAP6 00002ee3: POP 00002ee4: PUSH2 0x2eee 00002ee7: PUSH1 0x01 00002ee9: DUP7 00002eea: PUSH2 0x4da4 00002eed: JUMP 00002eee: JUMPDEST 00002eef: SWAP5 00002ef0: POP 00002ef1: POP 00002ef2: POP 00002ef3: PUSH2 0x3378 00002ef6: JUMP 00002ef7: JUMPDEST 00002ef8: PUSH1 0x02 00002efa: DUP2 00002efb: PUSH1 0x20 00002efd: ADD 00002efe: MLOAD 00002eff: MLOAD 00002f00: SUB 00002f01: PUSH2 0x32f0 00002f04: JUMPI 00002f05: PUSH1 0x00 00002f07: PUSH2 0x2f0f 00002f0a: DUP3 00002f0b: PUSH2 0x365a 00002f0e: JUMP 00002f0f: JUMPDEST 00002f10: SWAP1 00002f11: POP 00002f12: PUSH1 0x00 00002f14: DUP2 00002f15: PUSH1 0x00 00002f17: DUP2 00002f18: MLOAD 00002f19: DUP2 00002f1a: LT 00002f1b: PUSH2 0x2f26 00002f1e: JUMPI 00002f1f: PUSH2 0x2f26 00002f22: PUSH2 0x4d75 00002f25: JUMP 00002f26: JUMPDEST 00002f27: ADD 00002f28: PUSH1 0x20 00002f2a: ADD 00002f2b: MLOAD 00002f2c: PUSH1 0xf8 00002f2e: SHR 00002f2f: SWAP1 00002f30: POP 00002f31: PUSH1 0x00 00002f33: PUSH2 0x2f3d 00002f36: PUSH1 0x02 00002f38: DUP4 00002f39: PUSH2 0x4dbc 00002f3c: JUMP 00002f3d: JUMPDEST 00002f3e: PUSH2 0x2f48 00002f41: SWAP1 00002f42: PUSH1 0x02 00002f44: PUSH2 0x4dde 00002f47: JUMP 00002f48: JUMPDEST 00002f49: SWAP1 00002f4a: POP 00002f4b: PUSH1 0x00 00002f4d: PUSH2 0x2f59 00002f50: DUP5 00002f51: DUP4 00002f52: PUSH1 0xff 00002f54: AND 00002f55: PUSH2 0x367e 00002f58: JUMP 00002f59: JUMPDEST 00002f5a: SWAP1 00002f5b: POP 00002f5c: PUSH1 0x00 00002f5e: PUSH2 0x2f67 00002f61: DUP11 00002f62: DUP10 00002f63: PUSH2 0x367e 00002f66: JUMP 00002f67: JUMPDEST 00002f68: SWAP1 00002f69: POP 00002f6a: PUSH1 0x00 00002f6c: PUSH2 0x2f75 00002f6f: DUP4 00002f70: DUP4 00002f71: PUSH2 0x36b4 00002f74: JUMP 00002f75: JUMPDEST 00002f76: SWAP1 00002f77: POP 00002f78: DUP1 00002f79: DUP4 00002f7a: MLOAD 00002f7b: EQ 00002f7c: PUSH2 0x3007 00002f7f: JUMPI 00002f80: PUSH1 0x40 00002f82: MLOAD 00002f83: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002fa4: DUP2 00002fa5: MSTORE 00002fa6: PUSH1 0x20 00002fa8: PUSH1 0x04 00002faa: DUP3 00002fab: ADD 00002fac: MSTORE 00002fad: PUSH1 0x3a 00002faf: PUSH1 0x24 00002fb1: DUP3 00002fb2: ADD 00002fb3: MSTORE 00002fb4: PUSH32 0x4d65726b6c65547269653a20706174682072656d61696e646572206d75737420 00002fd5: PUSH1 0x44 00002fd7: DUP3 00002fd8: ADD 00002fd9: MSTORE 00002fda: PUSH32 0x736861726520616c6c206e6962626c65732077697468206b6579000000000000 00002ffb: PUSH1 0x64 00002ffd: DUP3 00002ffe: ADD 00002fff: MSTORE 00003000: PUSH1 0x84 00003002: ADD 00003003: PUSH2 0x11b5 00003006: JUMP 00003007: JUMPDEST 00003008: PUSH1 0xff 0000300a: DUP6 0000300b: AND 0000300c: PUSH1 0x02 0000300e: EQ 0000300f: DUP1 00003010: PUSH2 0x301c 00003013: JUMPI 00003014: POP 00003015: PUSH1 0xff 00003017: DUP6 00003018: AND 00003019: PUSH1 0x03 0000301b: EQ 0000301c: JUMPDEST 0000301d: ISZERO 0000301e: PUSH2 0x320b 00003021: JUMPI 00003022: DUP1 00003023: DUP3 00003024: MLOAD 00003025: EQ 00003026: PUSH2 0x30b1 00003029: JUMPI 0000302a: PUSH1 0x40 0000302c: MLOAD 0000302d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000304e: DUP2 0000304f: MSTORE 00003050: PUSH1 0x20 00003052: PUSH1 0x04 00003054: DUP3 00003055: ADD 00003056: MSTORE 00003057: PUSH1 0x3d 00003059: PUSH1 0x24 0000305b: DUP3 0000305c: ADD 0000305d: MSTORE 0000305e: PUSH32 0x4d65726b6c65547269653a206b65792072656d61696e646572206d7573742062 0000307f: PUSH1 0x44 00003081: DUP3 00003082: ADD 00003083: MSTORE 00003084: PUSH32 0x65206964656e746963616c20746f20706174682072656d61696e646572000000 000030a5: PUSH1 0x64 000030a7: DUP3 000030a8: ADD 000030a9: MSTORE 000030aa: PUSH1 0x84 000030ac: ADD 000030ad: PUSH2 0x11b5 000030b0: JUMP 000030b1: JUMPDEST 000030b2: PUSH2 0x30cb 000030b5: DUP8 000030b6: PUSH1 0x20 000030b8: ADD 000030b9: MLOAD 000030ba: PUSH1 0x01 000030bc: DUP2 000030bd: MLOAD 000030be: DUP2 000030bf: LT 000030c0: PUSH2 0x2d48 000030c3: JUMPI 000030c4: PUSH2 0x2d48 000030c7: PUSH2 0x4d75 000030ca: JUMP 000030cb: JUMPDEST 000030cc: SWAP13 000030cd: POP 000030ce: PUSH1 0x00 000030d0: DUP14 000030d1: MLOAD 000030d2: GT 000030d3: PUSH2 0x315e 000030d6: JUMPI 000030d7: PUSH1 0x40 000030d9: MLOAD 000030da: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000030fb: DUP2 000030fc: MSTORE 000030fd: PUSH1 0x20 000030ff: PUSH1 0x04 00003101: DUP3 00003102: ADD 00003103: MSTORE 00003104: PUSH1 0x39 00003106: PUSH1 0x24 00003108: DUP3 00003109: ADD 0000310a: MSTORE 0000310b: PUSH32 0x4d65726b6c65547269653a2076616c7565206c656e677468206d757374206265 0000312c: PUSH1 0x44 0000312e: DUP3 0000312f: ADD 00003130: MSTORE 00003131: PUSH32 0x2067726561746572207468616e207a65726f20286c6561662900000000000000 00003152: PUSH1 0x64 00003154: DUP3 00003155: ADD 00003156: MSTORE 00003157: PUSH1 0x84 00003159: ADD 0000315a: PUSH2 0x11b5 0000315d: JUMP 0000315e: JUMPDEST 0000315f: PUSH1 0x01 00003161: DUP13 00003162: MLOAD 00003163: PUSH2 0x316c 00003166: SWAP2 00003167: SWAP1 00003168: PUSH2 0x4b64 0000316b: JUMP 0000316c: JUMPDEST 0000316d: DUP9 0000316e: EQ 0000316f: PUSH2 0x31fa 00003172: JUMPI 00003173: PUSH1 0x40 00003175: MLOAD 00003176: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003197: DUP2 00003198: MSTORE 00003199: PUSH1 0x20 0000319b: PUSH1 0x04 0000319d: DUP3 0000319e: ADD 0000319f: MSTORE 000031a0: PUSH1 0x38 000031a2: PUSH1 0x24 000031a4: DUP3 000031a5: ADD 000031a6: MSTORE 000031a7: PUSH32 0x4d65726b6c65547269653a2076616c7565206e6f6465206d757374206265206c 000031c8: PUSH1 0x44 000031ca: DUP3 000031cb: ADD 000031cc: MSTORE 000031cd: PUSH32 0x617374206e6f646520696e2070726f6f6620286c656166290000000000000000 000031ee: PUSH1 0x64 000031f0: DUP3 000031f1: ADD 000031f2: MSTORE 000031f3: PUSH1 0x84 000031f5: ADD 000031f6: PUSH2 0x11b5 000031f9: JUMP 000031fa: JUMPDEST 000031fb: POP 000031fc: POP 000031fd: POP 000031fe: POP 000031ff: POP 00003200: POP 00003201: POP 00003202: POP 00003203: POP 00003204: POP 00003205: POP 00003206: POP 00003207: PUSH2 0x3414 0000320a: JUMP 0000320b: JUMPDEST 0000320c: PUSH1 0xff 0000320e: DUP6 0000320f: AND 00003210: ISZERO 00003211: DUP1 00003212: PUSH2 0x321e 00003215: JUMPI 00003216: POP 00003217: PUSH1 0xff 00003219: DUP6 0000321a: AND 0000321b: PUSH1 0x01 0000321d: EQ 0000321e: JUMPDEST 0000321f: ISZERO 00003220: PUSH2 0x325d 00003223: JUMPI 00003224: PUSH2 0x324a 00003227: DUP8 00003228: PUSH1 0x20 0000322a: ADD 0000322b: MLOAD 0000322c: PUSH1 0x01 0000322e: DUP2 0000322f: MLOAD 00003230: DUP2 00003231: LT 00003232: PUSH2 0x323d 00003235: JUMPI 00003236: PUSH2 0x323d 00003239: PUSH2 0x4d75 0000323c: JUMP 0000323d: JUMPDEST 0000323e: PUSH1 0x20 00003240: MUL 00003241: PUSH1 0x20 00003243: ADD 00003244: ADD 00003245: MLOAD 00003246: PUSH2 0x3635 00003249: JUMP 0000324a: JUMPDEST 0000324b: SWAP10 0000324c: POP 0000324d: PUSH2 0x3256 00003250: DUP2 00003251: DUP11 00003252: PUSH2 0x4da4 00003255: JUMP 00003256: JUMPDEST 00003257: SWAP9 00003258: POP 00003259: PUSH2 0x32e5 0000325c: JUMP 0000325d: JUMPDEST 0000325e: PUSH1 0x40 00003260: MLOAD 00003261: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003282: DUP2 00003283: MSTORE 00003284: PUSH1 0x20 00003286: PUSH1 0x04 00003288: DUP3 00003289: ADD 0000328a: MSTORE 0000328b: PUSH1 0x32 0000328d: PUSH1 0x24 0000328f: DUP3 00003290: ADD 00003291: MSTORE 00003292: PUSH32 0x4d65726b6c65547269653a2072656365697665642061206e6f64652077697468 000032b3: PUSH1 0x44 000032b5: DUP3 000032b6: ADD 000032b7: MSTORE 000032b8: PUSH32 0x20616e20756e6b6e6f776e207072656669780000000000000000000000000000 000032d9: PUSH1 0x64 000032db: DUP3 000032dc: ADD 000032dd: MSTORE 000032de: PUSH1 0x84 000032e0: ADD 000032e1: PUSH2 0x11b5 000032e4: JUMP 000032e5: JUMPDEST 000032e6: POP 000032e7: POP 000032e8: POP 000032e9: POP 000032ea: POP 000032eb: POP 000032ec: PUSH2 0x3378 000032ef: JUMP 000032f0: JUMPDEST 000032f1: PUSH1 0x40 000032f3: MLOAD 000032f4: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003315: DUP2 00003316: MSTORE 00003317: PUSH1 0x20 00003319: PUSH1 0x04 0000331b: DUP3 0000331c: ADD 0000331d: MSTORE 0000331e: PUSH1 0x28 00003320: PUSH1 0x24 00003322: DUP3 00003323: ADD 00003324: MSTORE 00003325: PUSH32 0x4d65726b6c65547269653a20726563656976656420616e20756e706172736561 00003346: PUSH1 0x44 00003348: DUP3 00003349: ADD 0000334a: MSTORE 0000334b: PUSH32 0x626c65206e6f6465000000000000000000000000000000000000000000000000 0000336c: PUSH1 0x64 0000336e: DUP3 0000336f: ADD 00003370: MSTORE 00003371: PUSH1 0x84 00003373: ADD 00003374: PUSH2 0x11b5 00003377: JUMP 00003378: JUMPDEST 00003379: POP 0000337a: DUP1 0000337b: PUSH2 0x3383 0000337e: DUP2 0000337f: PUSH2 0x4e01 00003382: JUMP 00003383: JUMPDEST 00003384: SWAP2 00003385: POP 00003386: POP 00003387: PUSH2 0x2a47 0000338a: JUMP 0000338b: JUMPDEST 0000338c: POP 0000338d: PUSH1 0x40 0000338f: MLOAD 00003390: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000033b1: DUP2 000033b2: MSTORE 000033b3: PUSH1 0x20 000033b5: PUSH1 0x04 000033b7: DUP3 000033b8: ADD 000033b9: MSTORE 000033ba: PUSH1 0x25 000033bc: PUSH1 0x24 000033be: DUP3 000033bf: ADD 000033c0: MSTORE 000033c1: PUSH32 0x4d65726b6c65547269653a2072616e206f7574206f662070726f6f6620656c65 000033e2: PUSH1 0x44 000033e4: DUP3 000033e5: ADD 000033e6: MSTORE 000033e7: PUSH32 0x6d656e7473000000000000000000000000000000000000000000000000000000 00003408: PUSH1 0x64 0000340a: DUP3 0000340b: ADD 0000340c: MSTORE 0000340d: PUSH1 0x84 0000340f: ADD 00003410: PUSH2 0x11b5 00003413: JUMP 00003414: JUMPDEST 00003415: SWAP4 00003416: SWAP3 00003417: POP 00003418: POP 00003419: POP 0000341a: JUMP 0000341b: JUMPDEST 0000341c: PUSH1 0x60 0000341e: PUSH2 0x342a 00003421: DUP5 00003422: DUP5 00003423: PUSH1 0x00 00003425: DUP6 00003426: PUSH2 0x3768 00003429: JUMP 0000342a: JUMPDEST 0000342b: SWAP5 0000342c: SWAP4 0000342d: POP 0000342e: POP 0000342f: POP 00003430: POP 00003431: JUMP 00003432: JUMPDEST 00003433: DUP1 00003434: MLOAD 00003435: PUSH1 0x60 00003437: SWAP1 00003438: DUP1 00003439: PUSH8 0xffffffffffffffff 00003442: DUP2 00003443: GT 00003444: ISZERO 00003445: PUSH2 0x3450 00003448: JUMPI 00003449: PUSH2 0x3450 0000344c: PUSH2 0x43b0 0000344f: JUMP 00003450: JUMPDEST 00003451: PUSH1 0x40 00003453: MLOAD 00003454: SWAP1 00003455: DUP1 00003456: DUP3 00003457: MSTORE 00003458: DUP1 00003459: PUSH1 0x20 0000345b: MUL 0000345c: PUSH1 0x20 0000345e: ADD 0000345f: DUP3 00003460: ADD 00003461: PUSH1 0x40 00003463: MSTORE 00003464: DUP1 00003465: ISZERO 00003466: PUSH2 0x3495 00003469: JUMPI 0000346a: DUP2 0000346b: PUSH1 0x20 0000346d: ADD 0000346e: JUMPDEST 0000346f: PUSH1 0x40 00003471: DUP1 00003472: MLOAD 00003473: DUP1 00003474: DUP3 00003475: ADD 00003476: SWAP1 00003477: SWAP2 00003478: MSTORE 00003479: PUSH1 0x60 0000347b: DUP1 0000347c: DUP3 0000347d: MSTORE 0000347e: PUSH1 0x20 00003480: DUP3 00003481: ADD 00003482: MSTORE 00003483: DUP2 00003484: MSTORE 00003485: PUSH1 0x20 00003487: ADD 00003488: SWAP1 00003489: PUSH1 0x01 0000348b: SWAP1 0000348c: SUB 0000348d: SWAP1 0000348e: DUP2 0000348f: PUSH2 0x346e 00003492: JUMPI 00003493: SWAP1 00003494: POP 00003495: JUMPDEST 00003496: POP 00003497: SWAP2 00003498: POP 00003499: PUSH1 0x00 0000349b: JUMPDEST 0000349c: DUP2 0000349d: DUP2 0000349e: LT 0000349f: ISZERO 000034a0: PUSH2 0x3517 000034a3: JUMPI 000034a4: PUSH1 0x40 000034a6: MLOAD 000034a7: DUP1 000034a8: PUSH1 0x40 000034aa: ADD 000034ab: PUSH1 0x40 000034ad: MSTORE 000034ae: DUP1 000034af: DUP6 000034b0: DUP4 000034b1: DUP2 000034b2: MLOAD 000034b3: DUP2 000034b4: LT 000034b5: PUSH2 0x34c0 000034b8: JUMPI 000034b9: PUSH2 0x34c0 000034bc: PUSH2 0x4d75 000034bf: JUMP 000034c0: JUMPDEST 000034c1: PUSH1 0x20 000034c3: MUL 000034c4: PUSH1 0x20 000034c6: ADD 000034c7: ADD 000034c8: MLOAD 000034c9: DUP2 000034ca: MSTORE 000034cb: PUSH1 0x20 000034cd: ADD 000034ce: PUSH2 0x34ef 000034d1: DUP7 000034d2: DUP5 000034d3: DUP2 000034d4: MLOAD 000034d5: DUP2 000034d6: LT 000034d7: PUSH2 0x34e2 000034da: JUMPI 000034db: PUSH2 0x34e2 000034de: PUSH2 0x4d75 000034e1: JUMP 000034e2: JUMPDEST 000034e3: PUSH1 0x20 000034e5: MUL 000034e6: PUSH1 0x20 000034e8: ADD 000034e9: ADD 000034ea: MLOAD 000034eb: PUSH2 0x38fe 000034ee: JUMP 000034ef: JUMPDEST 000034f0: DUP2 000034f1: MSTORE 000034f2: POP 000034f3: DUP4 000034f4: DUP3 000034f5: DUP2 000034f6: MLOAD 000034f7: DUP2 000034f8: LT 000034f9: PUSH2 0x3504 000034fc: JUMPI 000034fd: PUSH2 0x3504 00003500: PUSH2 0x4d75 00003503: JUMP 00003504: JUMPDEST 00003505: PUSH1 0x20 00003507: SWAP1 00003508: DUP2 00003509: MUL 0000350a: SWAP2 0000350b: SWAP1 0000350c: SWAP2 0000350d: ADD 0000350e: ADD 0000350f: MSTORE 00003510: PUSH1 0x01 00003512: ADD 00003513: PUSH2 0x349b 00003516: JUMP 00003517: JUMPDEST 00003518: POP 00003519: POP 0000351a: SWAP2 0000351b: SWAP1 0000351c: POP 0000351d: JUMP 0000351e: JUMPDEST 0000351f: PUSH1 0x60 00003521: DUP1 00003522: PUSH1 0x40 00003524: MLOAD 00003525: SWAP1 00003526: POP 00003527: DUP3 00003528: MLOAD 00003529: DUP1 0000352a: PUSH1 0x01 0000352c: SHL 0000352d: PUSH1 0x3f 0000352f: DUP2 00003530: ADD 00003531: PUSH1 0x1f 00003533: NOT 00003534: AND 00003535: DUP4 00003536: ADD 00003537: PUSH1 0x40 00003539: MSTORE 0000353a: DUP1 0000353b: DUP4 0000353c: MSTORE 0000353d: POP 0000353e: PUSH1 0x20 00003540: DUP5 00003541: ADD 00003542: PUSH1 0x20 00003544: DUP4 00003545: ADD 00003546: PUSH1 0x00 00003548: JUMPDEST 00003549: DUP4 0000354a: DUP2 0000354b: LT 0000354c: ISZERO 0000354d: PUSH2 0x3576 00003550: JUMPI 00003551: DUP1 00003552: PUSH1 0x01 00003554: SHL 00003555: DUP3 00003556: ADD 00003557: DUP2 00003558: DUP5 00003559: ADD 0000355a: MLOAD 0000355b: PUSH1 0x00 0000355d: BYTE 0000355e: DUP1 0000355f: PUSH1 0x04 00003561: SHR 00003562: DUP3 00003563: MSTORE8 00003564: PUSH1 0x0f 00003566: DUP2 00003567: AND 00003568: PUSH1 0x01 0000356a: DUP4 0000356b: ADD 0000356c: MSTORE8 0000356d: POP 0000356e: POP 0000356f: PUSH1 0x01 00003571: ADD 00003572: PUSH2 0x3548 00003575: JUMP 00003576: JUMPDEST 00003577: POP 00003578: SWAP3 00003579: SWAP6 0000357a: SWAP5 0000357b: POP 0000357c: POP 0000357d: POP 0000357e: POP 0000357f: POP 00003580: JUMP 00003581: JUMPDEST 00003582: PUSH1 0x60 00003584: PUSH1 0x00 00003586: DUP1 00003587: PUSH1 0x00 00003589: PUSH2 0x3591 0000358c: DUP6 0000358d: PUSH2 0x3911 00003590: JUMP 00003591: JUMPDEST 00003592: SWAP2 00003593: SWAP5 00003594: POP 00003595: SWAP3 00003596: POP 00003597: SWAP1 00003598: POP 00003599: PUSH1 0x00 0000359b: DUP2 0000359c: PUSH1 0x01 0000359e: DUP2 0000359f: GT 000035a0: ISZERO 000035a1: PUSH2 0x35ac 000035a4: JUMPI 000035a5: PUSH2 0x35ac 000035a8: PUSH2 0x49dd 000035ab: JUMP 000035ac: JUMPDEST 000035ad: EQ 000035ae: PUSH2 0x35e3 000035b1: JUMPI 000035b2: PUSH1 0x40 000035b4: MLOAD 000035b5: PUSH32 0x1ff9b2e400000000000000000000000000000000000000000000000000000000 000035d6: DUP2 000035d7: MSTORE 000035d8: PUSH1 0x04 000035da: ADD 000035db: PUSH1 0x40 000035dd: MLOAD 000035de: DUP1 000035df: SWAP2 000035e0: SUB 000035e1: SWAP1 000035e2: REVERT 000035e3: JUMPDEST 000035e4: PUSH2 0x35ed 000035e7: DUP3 000035e8: DUP5 000035e9: PUSH2 0x4da4 000035ec: JUMP 000035ed: JUMPDEST 000035ee: DUP6 000035ef: MLOAD 000035f0: EQ 000035f1: PUSH2 0x3626 000035f4: JUMPI 000035f5: PUSH1 0x40 000035f7: MLOAD 000035f8: PUSH32 0x5c5537b800000000000000000000000000000000000000000000000000000000 00003619: DUP2 0000361a: MSTORE 0000361b: PUSH1 0x04 0000361d: ADD 0000361e: PUSH1 0x40 00003620: MLOAD 00003621: DUP1 00003622: SWAP2 00003623: SUB 00003624: SWAP1 00003625: REVERT 00003626: JUMPDEST 00003627: PUSH2 0x2863 0000362a: DUP6 0000362b: PUSH1 0x20 0000362d: ADD 0000362e: MLOAD 0000362f: DUP5 00003630: DUP5 00003631: PUSH2 0x3daf 00003634: JUMP 00003635: JUMPDEST 00003636: PUSH1 0x60 00003638: PUSH1 0x20 0000363a: DUP3 0000363b: PUSH1 0x00 0000363d: ADD 0000363e: MLOAD 0000363f: LT 00003640: PUSH2 0x3651 00003643: JUMPI 00003644: PUSH2 0x364c 00003647: DUP3 00003648: PUSH2 0x3581 0000364b: JUMP 0000364c: JUMPDEST 0000364d: PUSH2 0x1cdd 00003650: JUMP 00003651: JUMPDEST 00003652: PUSH2 0x1cdd 00003655: DUP3 00003656: PUSH2 0x3e43 00003659: JUMP 0000365a: JUMPDEST 0000365b: PUSH1 0x60 0000365d: PUSH2 0x1cdd 00003660: PUSH2 0x3679 00003663: DUP4 00003664: PUSH1 0x20 00003666: ADD 00003667: MLOAD 00003668: PUSH1 0x00 0000366a: DUP2 0000366b: MLOAD 0000366c: DUP2 0000366d: LT 0000366e: PUSH2 0x2d48 00003671: JUMPI 00003672: PUSH2 0x2d48 00003675: PUSH2 0x4d75 00003678: JUMP 00003679: JUMPDEST 0000367a: PUSH2 0x351e 0000367d: JUMP 0000367e: JUMPDEST 0000367f: PUSH1 0x60 00003681: DUP3 00003682: MLOAD 00003683: DUP3 00003684: LT 00003685: PUSH2 0x369d 00003688: JUMPI 00003689: POP 0000368a: PUSH1 0x40 0000368c: DUP1 0000368d: MLOAD 0000368e: PUSH1 0x20 00003690: DUP2 00003691: ADD 00003692: SWAP1 00003693: SWAP2 00003694: MSTORE 00003695: PUSH1 0x00 00003697: DUP2 00003698: MSTORE 00003699: PUSH2 0x1cdd 0000369c: JUMP 0000369d: JUMPDEST 0000369e: PUSH2 0x3414 000036a1: DUP4 000036a2: DUP4 000036a3: DUP5 000036a4: DUP7 000036a5: MLOAD 000036a6: PUSH2 0x36af 000036a9: SWAP2 000036aa: SWAP1 000036ab: PUSH2 0x4b64 000036ae: JUMP 000036af: JUMPDEST 000036b0: PUSH2 0x3e59 000036b3: JUMP 000036b4: JUMPDEST 000036b5: PUSH1 0x00 000036b7: DUP1 000036b8: DUP3 000036b9: MLOAD 000036ba: DUP5 000036bb: MLOAD 000036bc: LT 000036bd: PUSH2 0x36c7 000036c0: JUMPI 000036c1: DUP3 000036c2: MLOAD 000036c3: PUSH2 0x36ca 000036c6: JUMP 000036c7: JUMPDEST 000036c8: DUP4 000036c9: MLOAD 000036ca: JUMPDEST 000036cb: SWAP1 000036cc: POP 000036cd: JUMPDEST 000036ce: DUP1 000036cf: DUP3 000036d0: LT 000036d1: DUP1 000036d2: ISZERO 000036d3: PUSH2 0x3751 000036d6: JUMPI 000036d7: POP 000036d8: DUP3 000036d9: DUP3 000036da: DUP2 000036db: MLOAD 000036dc: DUP2 000036dd: LT 000036de: PUSH2 0x36e9 000036e1: JUMPI 000036e2: PUSH2 0x36e9 000036e5: PUSH2 0x4d75 000036e8: JUMP 000036e9: JUMPDEST 000036ea: PUSH1 0x20 000036ec: ADD 000036ed: ADD 000036ee: MLOAD 000036ef: PUSH1 0xf8 000036f1: SHR 000036f2: PUSH1 0xf8 000036f4: SHL 000036f5: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00003715: NOT 00003716: AND 00003717: DUP5 00003718: DUP4 00003719: DUP2 0000371a: MLOAD 0000371b: DUP2 0000371c: LT 0000371d: PUSH2 0x3728 00003720: JUMPI 00003721: PUSH2 0x3728 00003724: PUSH2 0x4d75 00003727: JUMP 00003728: JUMPDEST 00003729: ADD 0000372a: PUSH1 0x20 0000372c: ADD 0000372d: MLOAD 0000372e: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 0000374f: AND 00003750: EQ 00003751: JUMPDEST 00003752: ISZERO 00003753: PUSH2 0x3761 00003756: JUMPI 00003757: DUP2 00003758: PUSH1 0x01 0000375a: ADD 0000375b: SWAP2 0000375c: POP 0000375d: PUSH2 0x36cd 00003760: JUMP 00003761: JUMPDEST 00003762: POP 00003763: SWAP3 00003764: SWAP2 00003765: POP 00003766: POP 00003767: JUMP 00003768: JUMPDEST 00003769: PUSH1 0x60 0000376b: DUP3 0000376c: SELFBALANCE 0000376d: LT 0000376e: ISZERO 0000376f: PUSH2 0x37fa 00003772: JUMPI 00003773: PUSH1 0x40 00003775: MLOAD 00003776: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003797: DUP2 00003798: MSTORE 00003799: PUSH1 0x20 0000379b: PUSH1 0x04 0000379d: DUP3 0000379e: ADD 0000379f: MSTORE 000037a0: PUSH1 0x26 000037a2: PUSH1 0x24 000037a4: DUP3 000037a5: ADD 000037a6: MSTORE 000037a7: PUSH32 0x416464726573733a20696e73756666696369656e742062616c616e636520666f 000037c8: PUSH1 0x44 000037ca: DUP3 000037cb: ADD 000037cc: MSTORE 000037cd: PUSH32 0x722063616c6c0000000000000000000000000000000000000000000000000000 000037ee: PUSH1 0x64 000037f0: DUP3 000037f1: ADD 000037f2: MSTORE 000037f3: PUSH1 0x84 000037f5: ADD 000037f6: PUSH2 0x11b5 000037f9: JUMP 000037fa: JUMPDEST 000037fb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003810: DUP6 00003811: AND 00003812: EXTCODESIZE 00003813: PUSH2 0x3878 00003816: JUMPI 00003817: PUSH1 0x40 00003819: MLOAD 0000381a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000383b: DUP2 0000383c: MSTORE 0000383d: PUSH1 0x20 0000383f: PUSH1 0x04 00003841: DUP3 00003842: ADD 00003843: MSTORE 00003844: PUSH1 0x1d 00003846: PUSH1 0x24 00003848: DUP3 00003849: ADD 0000384a: MSTORE 0000384b: PUSH32 0x416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000 0000386c: PUSH1 0x44 0000386e: DUP3 0000386f: ADD 00003870: MSTORE 00003871: PUSH1 0x64 00003873: ADD 00003874: PUSH2 0x11b5 00003877: JUMP 00003878: JUMPDEST 00003879: PUSH1 0x00 0000387b: DUP1 0000387c: DUP7 0000387d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003892: AND 00003893: DUP6 00003894: DUP8 00003895: PUSH1 0x40 00003897: MLOAD 00003898: PUSH2 0x38a1 0000389b: SWAP2 0000389c: SWAP1 0000389d: PUSH2 0x4e39 000038a0: JUMP 000038a1: JUMPDEST 000038a2: PUSH1 0x00 000038a4: PUSH1 0x40 000038a6: MLOAD 000038a7: DUP1 000038a8: DUP4 000038a9: SUB 000038aa: DUP2 000038ab: DUP6 000038ac: DUP8 000038ad: GAS 000038ae: CALL 000038af: SWAP3 000038b0: POP 000038b1: POP 000038b2: POP 000038b3: RETURNDATASIZE 000038b4: DUP1 000038b5: PUSH1 0x00 000038b7: DUP2 000038b8: EQ 000038b9: PUSH2 0x38de 000038bc: JUMPI 000038bd: PUSH1 0x40 000038bf: MLOAD 000038c0: SWAP2 000038c1: POP 000038c2: PUSH1 0x1f 000038c4: NOT 000038c5: PUSH1 0x3f 000038c7: RETURNDATASIZE 000038c8: ADD 000038c9: AND 000038ca: DUP3 000038cb: ADD 000038cc: PUSH1 0x40 000038ce: MSTORE 000038cf: RETURNDATASIZE 000038d0: DUP3 000038d1: MSTORE 000038d2: RETURNDATASIZE 000038d3: PUSH1 0x00 000038d5: PUSH1 0x20 000038d7: DUP5 000038d8: ADD 000038d9: RETURNDATACOPY 000038da: PUSH2 0x38e3 000038dd: JUMP 000038de: JUMPDEST 000038df: PUSH1 0x60 000038e1: SWAP2 000038e2: POP 000038e3: JUMPDEST 000038e4: POP 000038e5: SWAP2 000038e6: POP 000038e7: SWAP2 000038e8: POP 000038e9: PUSH2 0x38f3 000038ec: DUP3 000038ed: DUP3 000038ee: DUP7 000038ef: PUSH2 0x4031 000038f2: JUMP 000038f3: JUMPDEST 000038f4: SWAP8 000038f5: SWAP7 000038f6: POP 000038f7: POP 000038f8: POP 000038f9: POP 000038fa: POP 000038fb: POP 000038fc: POP 000038fd: JUMP 000038fe: JUMPDEST 000038ff: PUSH1 0x60 00003901: PUSH2 0x1cdd 00003904: PUSH2 0x390c 00003907: DUP4 00003908: PUSH2 0x4084 0000390b: JUMP 0000390c: JUMPDEST 0000390d: PUSH2 0x40f1 00003910: JUMP 00003911: JUMPDEST 00003912: PUSH1 0x00 00003914: DUP1 00003915: PUSH1 0x00 00003917: DUP4 00003918: PUSH1 0x00 0000391a: ADD 0000391b: MLOAD 0000391c: PUSH1 0x00 0000391e: SUB 0000391f: PUSH2 0x3954 00003922: JUMPI 00003923: PUSH1 0x40 00003925: MLOAD 00003926: PUSH32 0x5ab458fb00000000000000000000000000000000000000000000000000000000 00003947: DUP2 00003948: MSTORE 00003949: PUSH1 0x04 0000394b: ADD 0000394c: PUSH1 0x40 0000394e: MLOAD 0000394f: DUP1 00003950: SWAP2 00003951: SUB 00003952: SWAP1 00003953: REVERT 00003954: JUMPDEST 00003955: PUSH1 0x20 00003957: DUP5 00003958: ADD 00003959: MLOAD 0000395a: DUP1 0000395b: MLOAD 0000395c: PUSH1 0x00 0000395e: BYTE 0000395f: PUSH1 0x7f 00003961: DUP2 00003962: GT 00003963: PUSH2 0x3979 00003966: JUMPI 00003967: PUSH1 0x00 00003969: PUSH1 0x01 0000396b: PUSH1 0x00 0000396d: SWAP5 0000396e: POP 0000396f: SWAP5 00003970: POP 00003971: SWAP5 00003972: POP 00003973: POP 00003974: POP 00003975: PUSH2 0x3da8 00003978: JUMP 00003979: JUMPDEST 0000397a: PUSH1 0xb7 0000397c: DUP2 0000397d: GT 0000397e: PUSH2 0x3a8f 00003981: JUMPI 00003982: PUSH1 0x00 00003984: PUSH2 0x398e 00003987: PUSH1 0x80 00003989: DUP4 0000398a: PUSH2 0x4b64 0000398d: JUMP 0000398e: JUMPDEST 0000398f: SWAP1 00003990: POP 00003991: DUP1 00003992: DUP8 00003993: PUSH1 0x00 00003995: ADD 00003996: MLOAD 00003997: GT 00003998: PUSH2 0x39cd 0000399b: JUMPI 0000399c: PUSH1 0x40 0000399e: MLOAD 0000399f: PUSH32 0x66c9448500000000000000000000000000000000000000000000000000000000 000039c0: DUP2 000039c1: MSTORE 000039c2: PUSH1 0x04 000039c4: ADD 000039c5: PUSH1 0x40 000039c7: MLOAD 000039c8: DUP1 000039c9: SWAP2 000039ca: SUB 000039cb: SWAP1 000039cc: REVERT 000039cd: JUMPDEST 000039ce: PUSH1 0x01 000039d0: DUP4 000039d1: DUP2 000039d2: ADD 000039d3: MLOAD 000039d4: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 000039f5: AND 000039f6: SWAP1 000039f7: DUP3 000039f8: EQ 000039f9: DUP1 000039fa: ISZERO 000039fb: PUSH2 0x3a45 000039fe: JUMPI 000039ff: POP 00003a00: PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 00003a21: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 00003a42: DUP3 00003a43: AND 00003a44: LT 00003a45: JUMPDEST 00003a46: ISZERO 00003a47: PUSH2 0x3a7c 00003a4a: JUMPI 00003a4b: PUSH1 0x40 00003a4d: MLOAD 00003a4e: PUSH32 0xbabb01dd00000000000000000000000000000000000000000000000000000000 00003a6f: DUP2 00003a70: MSTORE 00003a71: PUSH1 0x04 00003a73: ADD 00003a74: PUSH1 0x40 00003a76: MLOAD 00003a77: DUP1 00003a78: SWAP2 00003a79: SUB 00003a7a: SWAP1 00003a7b: REVERT 00003a7c: JUMPDEST 00003a7d: POP 00003a7e: PUSH1 0x01 00003a80: SWAP6 00003a81: POP 00003a82: SWAP4 00003a83: POP 00003a84: PUSH1 0x00 00003a86: SWAP3 00003a87: POP 00003a88: PUSH2 0x3da8 00003a8b: SWAP2 00003a8c: POP 00003a8d: POP 00003a8e: JUMP 00003a8f: JUMPDEST 00003a90: PUSH1 0xbf 00003a92: DUP2 00003a93: GT 00003a94: PUSH2 0x3bed 00003a97: JUMPI 00003a98: PUSH1 0x00 00003a9a: PUSH2 0x3aa4 00003a9d: PUSH1 0xb7 00003a9f: DUP4 00003aa0: PUSH2 0x4b64 00003aa3: JUMP 00003aa4: JUMPDEST 00003aa5: SWAP1 00003aa6: POP 00003aa7: DUP1 00003aa8: DUP8 00003aa9: PUSH1 0x00 00003aab: ADD 00003aac: MLOAD 00003aad: GT 00003aae: PUSH2 0x3ae3 00003ab1: JUMPI 00003ab2: PUSH1 0x40 00003ab4: MLOAD 00003ab5: PUSH32 0x66c9448500000000000000000000000000000000000000000000000000000000 00003ad6: DUP2 00003ad7: MSTORE 00003ad8: PUSH1 0x04 00003ada: ADD 00003adb: PUSH1 0x40 00003add: MLOAD 00003ade: DUP1 00003adf: SWAP2 00003ae0: SUB 00003ae1: SWAP1 00003ae2: REVERT 00003ae3: JUMPDEST 00003ae4: PUSH1 0x01 00003ae6: DUP4 00003ae7: ADD 00003ae8: MLOAD 00003ae9: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 00003b0a: AND 00003b0b: PUSH1 0x00 00003b0d: DUP2 00003b0e: SWAP1 00003b0f: SUB 00003b10: PUSH2 0x3b45 00003b13: JUMPI 00003b14: PUSH1 0x40 00003b16: MLOAD 00003b17: PUSH32 0xbabb01dd00000000000000000000000000000000000000000000000000000000 00003b38: DUP2 00003b39: MSTORE 00003b3a: PUSH1 0x04 00003b3c: ADD 00003b3d: PUSH1 0x40 00003b3f: MLOAD 00003b40: DUP1 00003b41: SWAP2 00003b42: SUB 00003b43: SWAP1 00003b44: REVERT 00003b45: JUMPDEST 00003b46: PUSH1 0x01 00003b48: DUP5 00003b49: ADD 00003b4a: MLOAD 00003b4b: PUSH1 0x08 00003b4d: DUP4 00003b4e: MUL 00003b4f: PUSH2 0x0100 00003b52: SUB 00003b53: SHR 00003b54: PUSH1 0x37 00003b56: DUP2 00003b57: GT 00003b58: PUSH2 0x3b8d 00003b5b: JUMPI 00003b5c: PUSH1 0x40 00003b5e: MLOAD 00003b5f: PUSH32 0xbabb01dd00000000000000000000000000000000000000000000000000000000 00003b80: DUP2 00003b81: MSTORE 00003b82: PUSH1 0x04 00003b84: ADD 00003b85: PUSH1 0x40 00003b87: MLOAD 00003b88: DUP1 00003b89: SWAP2 00003b8a: SUB 00003b8b: SWAP1 00003b8c: REVERT 00003b8d: JUMPDEST 00003b8e: PUSH2 0x3b97 00003b91: DUP2 00003b92: DUP5 00003b93: PUSH2 0x4da4 00003b96: JUMP 00003b97: JUMPDEST 00003b98: DUP10 00003b99: MLOAD 00003b9a: GT 00003b9b: PUSH2 0x3bd0 00003b9e: JUMPI 00003b9f: PUSH1 0x40 00003ba1: MLOAD 00003ba2: PUSH32 0x66c9448500000000000000000000000000000000000000000000000000000000 00003bc3: DUP2 00003bc4: MSTORE 00003bc5: PUSH1 0x04 00003bc7: ADD 00003bc8: PUSH1 0x40 00003bca: MLOAD 00003bcb: DUP1 00003bcc: SWAP2 00003bcd: SUB 00003bce: SWAP1 00003bcf: REVERT 00003bd0: JUMPDEST 00003bd1: PUSH2 0x3bdb 00003bd4: DUP4 00003bd5: PUSH1 0x01 00003bd7: PUSH2 0x4da4 00003bda: JUMP 00003bdb: JUMPDEST 00003bdc: SWAP8 00003bdd: POP 00003bde: SWAP6 00003bdf: POP 00003be0: PUSH1 0x00 00003be2: SWAP5 00003be3: POP 00003be4: PUSH2 0x3da8 00003be7: SWAP4 00003be8: POP 00003be9: POP 00003bea: POP 00003beb: POP 00003bec: JUMP 00003bed: JUMPDEST 00003bee: PUSH1 0xf7 00003bf0: DUP2 00003bf1: GT 00003bf2: PUSH2 0x3c52 00003bf5: JUMPI 00003bf6: PUSH1 0x00 00003bf8: PUSH2 0x3c02 00003bfb: PUSH1 0xc0 00003bfd: DUP4 00003bfe: PUSH2 0x4b64 00003c01: JUMP 00003c02: JUMPDEST 00003c03: SWAP1 00003c04: POP 00003c05: DUP1 00003c06: DUP8 00003c07: PUSH1 0x00 00003c09: ADD 00003c0a: MLOAD 00003c0b: GT 00003c0c: PUSH2 0x3c41 00003c0f: JUMPI 00003c10: PUSH1 0x40 00003c12: MLOAD 00003c13: PUSH32 0x66c9448500000000000000000000000000000000000000000000000000000000 00003c34: DUP2 00003c35: MSTORE 00003c36: PUSH1 0x04 00003c38: ADD 00003c39: PUSH1 0x40 00003c3b: MLOAD 00003c3c: DUP1 00003c3d: SWAP2 00003c3e: SUB 00003c3f: SWAP1 00003c40: REVERT 00003c41: JUMPDEST 00003c42: PUSH1 0x01 00003c44: SWAP6 00003c45: POP 00003c46: SWAP4 00003c47: POP 00003c48: DUP5 00003c49: SWAP3 00003c4a: POP 00003c4b: PUSH2 0x3da8 00003c4e: SWAP2 00003c4f: POP 00003c50: POP 00003c51: JUMP 00003c52: JUMPDEST 00003c53: PUSH1 0x00 00003c55: PUSH2 0x3c5f 00003c58: PUSH1 0xf7 00003c5a: DUP4 00003c5b: PUSH2 0x4b64 00003c5e: JUMP 00003c5f: JUMPDEST 00003c60: SWAP1 00003c61: POP 00003c62: DUP1 00003c63: DUP8 00003c64: PUSH1 0x00 00003c66: ADD 00003c67: MLOAD 00003c68: GT 00003c69: PUSH2 0x3c9e 00003c6c: JUMPI 00003c6d: PUSH1 0x40 00003c6f: MLOAD 00003c70: PUSH32 0x66c9448500000000000000000000000000000000000000000000000000000000 00003c91: DUP2 00003c92: MSTORE 00003c93: PUSH1 0x04 00003c95: ADD 00003c96: PUSH1 0x40 00003c98: MLOAD 00003c99: DUP1 00003c9a: SWAP2 00003c9b: SUB 00003c9c: SWAP1 00003c9d: REVERT 00003c9e: JUMPDEST 00003c9f: PUSH1 0x01 00003ca1: DUP4 00003ca2: ADD 00003ca3: MLOAD 00003ca4: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000 00003cc5: AND 00003cc6: PUSH1 0x00 00003cc8: DUP2 00003cc9: SWAP1 00003cca: SUB 00003ccb: PUSH2 0x3d00 00003cce: JUMPI 00003ccf: PUSH1 0x40 00003cd1: MLOAD 00003cd2: PUSH32 0xbabb01dd00000000000000000000000000000000000000000000000000000000 00003cf3: DUP2 00003cf4: MSTORE 00003cf5: PUSH1 0x04 00003cf7: ADD 00003cf8: PUSH1 0x40 00003cfa: MLOAD 00003cfb: DUP1 00003cfc: SWAP2 00003cfd: SUB 00003cfe: SWAP1 00003cff: REVERT 00003d00: JUMPDEST 00003d01: PUSH1 0x01 00003d03: DUP5 00003d04: ADD 00003d05: MLOAD 00003d06: PUSH1 0x08 00003d08: DUP4 00003d09: MUL 00003d0a: PUSH2 0x0100 00003d0d: SUB 00003d0e: SHR 00003d0f: PUSH1 0x37 00003d11: DUP2 00003d12: GT 00003d13: PUSH2 0x3d48 00003d16: JUMPI 00003d17: PUSH1 0x40 00003d19: MLOAD 00003d1a: PUSH32 0xbabb01dd00000000000000000000000000000000000000000000000000000000 00003d3b: DUP2 00003d3c: MSTORE 00003d3d: PUSH1 0x04 00003d3f: ADD 00003d40: PUSH1 0x40 00003d42: MLOAD 00003d43: DUP1 00003d44: SWAP2 00003d45: SUB 00003d46: SWAP1 00003d47: REVERT 00003d48: JUMPDEST 00003d49: PUSH2 0x3d52 00003d4c: DUP2 00003d4d: DUP5 00003d4e: PUSH2 0x4da4 00003d51: JUMP 00003d52: JUMPDEST 00003d53: DUP10 00003d54: MLOAD 00003d55: GT 00003d56: PUSH2 0x3d8b 00003d59: JUMPI 00003d5a: PUSH1 0x40 00003d5c: MLOAD 00003d5d: PUSH32 0x66c9448500000000000000000000000000000000000000000000000000000000 00003d7e: DUP2 00003d7f: MSTORE 00003d80: PUSH1 0x04 00003d82: ADD 00003d83: PUSH1 0x40 00003d85: MLOAD 00003d86: DUP1 00003d87: SWAP2 00003d88: SUB 00003d89: SWAP1 00003d8a: REVERT 00003d8b: JUMPDEST 00003d8c: PUSH2 0x3d96 00003d8f: DUP4 00003d90: PUSH1 0x01 00003d92: PUSH2 0x4da4 00003d95: JUMP 00003d96: JUMPDEST 00003d97: SWAP8 00003d98: POP 00003d99: SWAP6 00003d9a: POP 00003d9b: PUSH1 0x01 00003d9d: SWAP5 00003d9e: POP 00003d9f: PUSH2 0x3da8 00003da2: SWAP4 00003da3: POP 00003da4: POP 00003da5: POP 00003da6: POP 00003da7: JUMP 00003da8: JUMPDEST 00003da9: SWAP2 00003daa: SWAP4 00003dab: SWAP1 00003dac: SWAP3 00003dad: POP 00003dae: JUMP 00003daf: JUMPDEST 00003db0: PUSH1 0x60 00003db2: DUP2 00003db3: PUSH8 0xffffffffffffffff 00003dbc: DUP2 00003dbd: GT 00003dbe: ISZERO 00003dbf: PUSH2 0x3dca 00003dc2: JUMPI 00003dc3: PUSH2 0x3dca 00003dc6: PUSH2 0x43b0 00003dc9: JUMP 00003dca: JUMPDEST 00003dcb: PUSH1 0x40 00003dcd: MLOAD 00003dce: SWAP1 00003dcf: DUP1 00003dd0: DUP3 00003dd1: MSTORE 00003dd2: DUP1 00003dd3: PUSH1 0x1f 00003dd5: ADD 00003dd6: PUSH1 0x1f 00003dd8: NOT 00003dd9: AND 00003dda: PUSH1 0x20 00003ddc: ADD 00003ddd: DUP3 00003dde: ADD 00003ddf: PUSH1 0x40 00003de1: MSTORE 00003de2: DUP1 00003de3: ISZERO 00003de4: PUSH2 0x3df4 00003de7: JUMPI 00003de8: PUSH1 0x20 00003dea: DUP3 00003deb: ADD 00003dec: DUP2 00003ded: DUP1 00003dee: CALLDATASIZE 00003def: DUP4 00003df0: CALLDATACOPY 00003df1: ADD 00003df2: SWAP1 00003df3: POP 00003df4: JUMPDEST 00003df5: POP 00003df6: SWAP1 00003df7: POP 00003df8: DUP2 00003df9: ISZERO 00003dfa: PUSH2 0x3414 00003dfd: JUMPI 00003dfe: PUSH1 0x00 00003e00: PUSH2 0x3e09 00003e03: DUP5 00003e04: DUP7 00003e05: PUSH2 0x4da4 00003e08: JUMP 00003e09: JUMPDEST 00003e0a: SWAP1 00003e0b: POP 00003e0c: PUSH1 0x20 00003e0e: DUP3 00003e0f: ADD 00003e10: PUSH1 0x00 00003e12: JUMPDEST 00003e13: DUP5 00003e14: DUP2 00003e15: LT 00003e16: ISZERO 00003e17: PUSH2 0x3e2a 00003e1a: JUMPI 00003e1b: DUP3 00003e1c: DUP2 00003e1d: ADD 00003e1e: MLOAD 00003e1f: DUP3 00003e20: DUP3 00003e21: ADD 00003e22: MSTORE 00003e23: PUSH1 0x20 00003e25: ADD 00003e26: PUSH2 0x3e12 00003e29: JUMP 00003e2a: JUMPDEST 00003e2b: DUP5 00003e2c: DUP2 00003e2d: GT 00003e2e: ISZERO 00003e2f: PUSH2 0x3e39 00003e32: JUMPI 00003e33: PUSH1 0x00 00003e35: DUP6 00003e36: DUP4 00003e37: ADD 00003e38: MSTORE 00003e39: JUMPDEST 00003e3a: POP 00003e3b: POP 00003e3c: POP 00003e3d: SWAP4 00003e3e: SWAP3 00003e3f: POP 00003e40: POP 00003e41: POP 00003e42: JUMP 00003e43: JUMPDEST 00003e44: PUSH1 0x60 00003e46: PUSH2 0x1cdd 00003e49: DUP3 00003e4a: PUSH1 0x20 00003e4c: ADD 00003e4d: MLOAD 00003e4e: PUSH1 0x00 00003e50: DUP5 00003e51: PUSH1 0x00 00003e53: ADD 00003e54: MLOAD 00003e55: PUSH2 0x3daf 00003e58: JUMP 00003e59: JUMPDEST 00003e5a: PUSH1 0x60 00003e5c: DUP2 00003e5d: DUP3 00003e5e: PUSH1 0x1f 00003e60: ADD 00003e61: LT 00003e62: ISZERO 00003e63: PUSH2 0x3ec8 00003e66: JUMPI 00003e67: PUSH1 0x40 00003e69: MLOAD 00003e6a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003e8b: DUP2 00003e8c: MSTORE 00003e8d: PUSH1 0x20 00003e8f: PUSH1 0x04 00003e91: DUP3 00003e92: ADD 00003e93: MSTORE 00003e94: PUSH1 0x0e 00003e96: PUSH1 0x24 00003e98: DUP3 00003e99: ADD 00003e9a: MSTORE 00003e9b: PUSH32 0x736c6963655f6f766572666c6f77000000000000000000000000000000000000 00003ebc: PUSH1 0x44 00003ebe: DUP3 00003ebf: ADD 00003ec0: MSTORE 00003ec1: PUSH1 0x64 00003ec3: ADD 00003ec4: PUSH2 0x11b5 00003ec7: JUMP 00003ec8: JUMPDEST 00003ec9: DUP3 00003eca: DUP3 00003ecb: DUP5 00003ecc: ADD 00003ecd: LT 00003ece: ISZERO 00003ecf: PUSH2 0x3f34 00003ed2: JUMPI 00003ed3: PUSH1 0x40 00003ed5: MLOAD 00003ed6: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003ef7: DUP2 00003ef8: MSTORE 00003ef9: PUSH1 0x20 00003efb: PUSH1 0x04 00003efd: DUP3 00003efe: ADD 00003eff: MSTORE 00003f00: PUSH1 0x0e 00003f02: PUSH1 0x24 00003f04: DUP3 00003f05: ADD 00003f06: MSTORE 00003f07: PUSH32 0x736c6963655f6f766572666c6f77000000000000000000000000000000000000 00003f28: PUSH1 0x44 00003f2a: DUP3 00003f2b: ADD 00003f2c: MSTORE 00003f2d: PUSH1 0x64 00003f2f: ADD 00003f30: PUSH2 0x11b5 00003f33: JUMP 00003f34: JUMPDEST 00003f35: DUP2 00003f36: DUP4 00003f37: ADD 00003f38: DUP5 00003f39: MLOAD 00003f3a: LT 00003f3b: ISZERO 00003f3c: PUSH2 0x3fa1 00003f3f: JUMPI 00003f40: PUSH1 0x40 00003f42: MLOAD 00003f43: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00003f64: DUP2 00003f65: MSTORE 00003f66: PUSH1 0x20 00003f68: PUSH1 0x04 00003f6a: DUP3 00003f6b: ADD 00003f6c: MSTORE 00003f6d: PUSH1 0x11 00003f6f: PUSH1 0x24 00003f71: DUP3 00003f72: ADD 00003f73: MSTORE 00003f74: PUSH32 0x736c6963655f6f75744f66426f756e6473000000000000000000000000000000 00003f95: PUSH1 0x44 00003f97: DUP3 00003f98: ADD 00003f99: MSTORE 00003f9a: PUSH1 0x64 00003f9c: ADD 00003f9d: PUSH2 0x11b5 00003fa0: JUMP 00003fa1: JUMPDEST 00003fa2: PUSH1 0x60 00003fa4: DUP3 00003fa5: ISZERO 00003fa6: DUP1 00003fa7: ISZERO 00003fa8: PUSH2 0x3fc0 00003fab: JUMPI 00003fac: PUSH1 0x40 00003fae: MLOAD 00003faf: SWAP2 00003fb0: POP 00003fb1: PUSH1 0x00 00003fb3: DUP3 00003fb4: MSTORE 00003fb5: PUSH1 0x20 00003fb7: DUP3 00003fb8: ADD 00003fb9: PUSH1 0x40 00003fbb: MSTORE 00003fbc: PUSH2 0x4028 00003fbf: JUMP 00003fc0: JUMPDEST 00003fc1: PUSH1 0x40 00003fc3: MLOAD 00003fc4: SWAP2 00003fc5: POP 00003fc6: PUSH1 0x1f 00003fc8: DUP5 00003fc9: AND 00003fca: DUP1 00003fcb: ISZERO 00003fcc: PUSH1 0x20 00003fce: MUL 00003fcf: DUP2 00003fd0: DUP5 00003fd1: ADD 00003fd2: ADD 00003fd3: DUP6 00003fd4: DUP2 00003fd5: ADD 00003fd6: DUP8 00003fd7: DUP4 00003fd8: ISZERO 00003fd9: PUSH1 0x20 00003fdb: MUL 00003fdc: DUP5 00003fdd: DUP12 00003fde: ADD 00003fdf: ADD 00003fe0: ADD 00003fe1: JUMPDEST 00003fe2: DUP2 00003fe3: DUP4 00003fe4: LT 00003fe5: ISZERO 00003fe6: PUSH2 0x3ff9 00003fe9: JUMPI 00003fea: DUP1 00003feb: MLOAD 00003fec: DUP4 00003fed: MSTORE 00003fee: PUSH1 0x20 00003ff0: SWAP3 00003ff1: DUP4 00003ff2: ADD 00003ff3: SWAP3 00003ff4: ADD 00003ff5: PUSH2 0x3fe1 00003ff8: JUMP 00003ff9: JUMPDEST 00003ffa: POP 00003ffb: POP 00003ffc: DUP6 00003ffd: DUP5 00003ffe: MSTORE 00003fff: PUSH1 0x1f 00004001: ADD 00004002: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00004023: AND 00004024: PUSH1 0x40 00004026: MSTORE 00004027: POP 00004028: JUMPDEST 00004029: POP 0000402a: SWAP5 0000402b: SWAP4 0000402c: POP 0000402d: POP 0000402e: POP 0000402f: POP 00004030: JUMP 00004031: JUMPDEST 00004032: PUSH1 0x60 00004034: DUP4 00004035: ISZERO 00004036: PUSH2 0x4040 00004039: JUMPI 0000403a: POP 0000403b: DUP2 0000403c: PUSH2 0x3414 0000403f: JUMP 00004040: JUMPDEST 00004041: DUP3 00004042: MLOAD 00004043: ISZERO 00004044: PUSH2 0x4050 00004047: JUMPI 00004048: DUP3 00004049: MLOAD 0000404a: DUP1 0000404b: DUP5 0000404c: PUSH1 0x20 0000404e: ADD 0000404f: REVERT 00004050: JUMPDEST 00004051: DUP2 00004052: PUSH1 0x40 00004054: MLOAD 00004055: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00004076: DUP2 00004077: MSTORE 00004078: PUSH1 0x04 0000407a: ADD 0000407b: PUSH2 0x11b5 0000407e: SWAP2 0000407f: SWAP1 00004080: PUSH2 0x4379 00004083: JUMP 00004084: JUMPDEST 00004085: PUSH1 0x40 00004087: DUP1 00004088: MLOAD 00004089: DUP1 0000408a: DUP3 0000408b: ADD 0000408c: SWAP1 0000408d: SWAP2 0000408e: MSTORE 0000408f: PUSH1 0x00 00004091: DUP1 00004092: DUP3 00004093: MSTORE 00004094: PUSH1 0x20 00004096: DUP3 00004097: ADD 00004098: MSTORE 00004099: DUP2 0000409a: MLOAD 0000409b: PUSH1 0x00 0000409d: SUB 0000409e: PUSH2 0x40d3 000040a1: JUMPI 000040a2: PUSH1 0x40 000040a4: MLOAD 000040a5: PUSH32 0x5ab458fb00000000000000000000000000000000000000000000000000000000 000040c6: DUP2 000040c7: MSTORE 000040c8: PUSH1 0x04 000040ca: ADD 000040cb: PUSH1 0x40 000040cd: MLOAD 000040ce: DUP1 000040cf: SWAP2 000040d0: SUB 000040d1: SWAP1 000040d2: REVERT 000040d3: JUMPDEST 000040d4: POP 000040d5: PUSH1 0x40 000040d7: DUP1 000040d8: MLOAD 000040d9: DUP1 000040da: DUP3 000040db: ADD 000040dc: SWAP1 000040dd: SWAP2 000040de: MSTORE 000040df: DUP2 000040e0: MLOAD 000040e1: DUP2 000040e2: MSTORE 000040e3: PUSH1 0x20 000040e5: SWAP2 000040e6: DUP3 000040e7: ADD 000040e8: SWAP2 000040e9: DUP2 000040ea: ADD 000040eb: SWAP2 000040ec: SWAP1 000040ed: SWAP2 000040ee: MSTORE 000040ef: SWAP1 000040f0: JUMP 000040f1: JUMPDEST 000040f2: PUSH1 0x60 000040f4: PUSH1 0x00 000040f6: DUP1 000040f7: PUSH1 0x00 000040f9: PUSH2 0x4101 000040fc: DUP6 000040fd: PUSH2 0x3911 00004100: JUMP 00004101: JUMPDEST 00004102: SWAP2 00004103: SWAP5 00004104: POP 00004105: SWAP3 00004106: POP 00004107: SWAP1 00004108: POP 00004109: PUSH1 0x01 0000410b: DUP2 0000410c: PUSH1 0x01 0000410e: DUP2 0000410f: GT 00004110: ISZERO 00004111: PUSH2 0x411c 00004114: JUMPI 00004115: PUSH2 0x411c 00004118: PUSH2 0x49dd 0000411b: JUMP 0000411c: JUMPDEST 0000411d: EQ 0000411e: PUSH2 0x4153 00004121: JUMPI 00004122: PUSH1 0x40 00004124: MLOAD 00004125: PUSH32 0x4b9c6abe00000000000000000000000000000000000000000000000000000000 00004146: DUP2 00004147: MSTORE 00004148: PUSH1 0x04 0000414a: ADD 0000414b: PUSH1 0x40 0000414d: MLOAD 0000414e: DUP1 0000414f: SWAP2 00004150: SUB 00004151: SWAP1 00004152: REVERT 00004153: JUMPDEST 00004154: DUP5 00004155: MLOAD 00004156: PUSH2 0x415f 00004159: DUP4 0000415a: DUP6 0000415b: PUSH2 0x4da4 0000415e: JUMP 0000415f: JUMPDEST 00004160: EQ 00004161: PUSH2 0x4196 00004164: JUMPI 00004165: PUSH1 0x40 00004167: MLOAD 00004168: PUSH32 0x5c5537b800000000000000000000000000000000000000000000000000000000 00004189: DUP2 0000418a: MSTORE 0000418b: PUSH1 0x04 0000418d: ADD 0000418e: PUSH1 0x40 00004190: MLOAD 00004191: DUP1 00004192: SWAP2 00004193: SUB 00004194: SWAP1 00004195: REVERT 00004196: JUMPDEST 00004197: PUSH1 0x40 00004199: DUP1 0000419a: MLOAD 0000419b: PUSH1 0x20 0000419d: DUP1 0000419e: DUP3 0000419f: MSTORE 000041a0: PUSH2 0x0420 000041a3: DUP3 000041a4: ADD 000041a5: SWAP1 000041a6: SWAP3 000041a7: MSTORE 000041a8: SWAP1 000041a9: DUP2 000041aa: PUSH1 0x20 000041ac: ADD 000041ad: JUMPDEST 000041ae: PUSH1 0x40 000041b0: DUP1 000041b1: MLOAD 000041b2: DUP1 000041b3: DUP3 000041b4: ADD 000041b5: SWAP1 000041b6: SWAP2 000041b7: MSTORE 000041b8: PUSH1 0x00 000041ba: DUP1 000041bb: DUP3 000041bc: MSTORE 000041bd: PUSH1 0x20 000041bf: DUP3 000041c0: ADD 000041c1: MSTORE 000041c2: DUP2 000041c3: MSTORE 000041c4: PUSH1 0x20 000041c6: ADD 000041c7: SWAP1 000041c8: PUSH1 0x01 000041ca: SWAP1 000041cb: SUB 000041cc: SWAP1 000041cd: DUP2 000041ce: PUSH2 0x41ad 000041d1: JUMPI 000041d2: SWAP1 000041d3: POP 000041d4: POP 000041d5: SWAP4 000041d6: POP 000041d7: PUSH1 0x00 000041d9: DUP4 000041da: JUMPDEST 000041db: DUP7 000041dc: MLOAD 000041dd: DUP2 000041de: LT 000041df: ISZERO 000041e0: PUSH2 0x429b 000041e3: JUMPI 000041e4: PUSH1 0x00 000041e6: DUP1 000041e7: PUSH2 0x4220 000041ea: PUSH1 0x40 000041ec: MLOAD 000041ed: DUP1 000041ee: PUSH1 0x40 000041f0: ADD 000041f1: PUSH1 0x40 000041f3: MSTORE 000041f4: DUP1 000041f5: DUP6 000041f6: DUP13 000041f7: PUSH1 0x00 000041f9: ADD 000041fa: MLOAD 000041fb: PUSH2 0x4204 000041fe: SWAP2 000041ff: SWAP1 00004200: PUSH2 0x4b64 00004203: JUMP 00004204: JUMPDEST 00004205: DUP2 00004206: MSTORE 00004207: PUSH1 0x20 00004209: ADD 0000420a: DUP6 0000420b: DUP13 0000420c: PUSH1 0x20 0000420e: ADD 0000420f: MLOAD 00004210: PUSH2 0x4219 00004213: SWAP2 00004214: SWAP1 00004215: PUSH2 0x4da4 00004218: JUMP 00004219: JUMPDEST 0000421a: SWAP1 0000421b: MSTORE 0000421c: PUSH2 0x3911 0000421f: JUMP 00004220: JUMPDEST 00004221: POP 00004222: SWAP2 00004223: POP 00004224: SWAP2 00004225: POP 00004226: PUSH1 0x40 00004228: MLOAD 00004229: DUP1 0000422a: PUSH1 0x40 0000422c: ADD 0000422d: PUSH1 0x40 0000422f: MSTORE 00004230: DUP1 00004231: DUP4 00004232: DUP4 00004233: PUSH2 0x423c 00004236: SWAP2 00004237: SWAP1 00004238: PUSH2 0x4da4 0000423b: JUMP 0000423c: JUMPDEST 0000423d: DUP2 0000423e: MSTORE 0000423f: PUSH1 0x20 00004241: ADD 00004242: DUP5 00004243: DUP12 00004244: PUSH1 0x20 00004246: ADD 00004247: MLOAD 00004248: PUSH2 0x4251 0000424b: SWAP2 0000424c: SWAP1 0000424d: PUSH2 0x4da4 00004250: JUMP 00004251: JUMPDEST 00004252: DUP2 00004253: MSTORE 00004254: POP 00004255: DUP9 00004256: DUP6 00004257: DUP2 00004258: MLOAD 00004259: DUP2 0000425a: LT 0000425b: PUSH2 0x4266 0000425e: JUMPI 0000425f: PUSH2 0x4266 00004262: PUSH2 0x4d75 00004265: JUMP 00004266: JUMPDEST 00004267: PUSH1 0x20 00004269: SWAP1 0000426a: DUP2 0000426b: MUL 0000426c: SWAP2 0000426d: SWAP1 0000426e: SWAP2 0000426f: ADD 00004270: ADD 00004271: MSTORE 00004272: PUSH2 0x427c 00004275: PUSH1 0x01 00004277: DUP6 00004278: PUSH2 0x4da4 0000427b: JUMP 0000427c: JUMPDEST 0000427d: SWAP4 0000427e: POP 0000427f: PUSH2 0x4288 00004282: DUP2 00004283: DUP4 00004284: PUSH2 0x4da4 00004287: JUMP 00004288: JUMPDEST 00004289: PUSH2 0x4292 0000428c: SWAP1 0000428d: DUP5 0000428e: PUSH2 0x4da4 00004291: JUMP 00004292: JUMPDEST 00004293: SWAP3 00004294: POP 00004295: POP 00004296: POP 00004297: PUSH2 0x41da 0000429a: JUMP 0000429b: JUMPDEST 0000429c: POP 0000429d: DUP5 0000429e: MSTORE 0000429f: POP 000042a0: SWAP2 000042a1: SWAP4 000042a2: SWAP3 000042a3: POP 000042a4: POP 000042a5: POP 000042a6: JUMP 000042a7: JUMPDEST 000042a8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000042bd: DUP2 000042be: AND 000042bf: DUP2 000042c0: EQ 000042c1: PUSH2 0x1dcb 000042c4: JUMPI 000042c5: PUSH1 0x00 000042c7: DUP1 000042c8: REVERT 000042c9: JUMPDEST 000042ca: PUSH1 0x00 000042cc: PUSH1 0x20 000042ce: DUP3 000042cf: DUP5 000042d0: SUB 000042d1: SLT 000042d2: ISZERO 000042d3: PUSH2 0x42db 000042d6: JUMPI 000042d7: PUSH1 0x00 000042d9: DUP1 000042da: REVERT 000042db: JUMPDEST 000042dc: DUP2 000042dd: CALLDATALOAD 000042de: PUSH2 0x3414 000042e1: DUP2 000042e2: PUSH2 0x42a7 000042e5: JUMP 000042e6: JUMPDEST 000042e7: PUSH1 0x00 000042e9: PUSH1 0x20 000042eb: DUP3 000042ec: DUP5 000042ed: SUB 000042ee: SLT 000042ef: ISZERO 000042f0: PUSH2 0x42f8 000042f3: JUMPI 000042f4: PUSH1 0x00 000042f6: DUP1 000042f7: REVERT 000042f8: JUMPDEST 000042f9: POP 000042fa: CALLDATALOAD 000042fb: SWAP2 000042fc: SWAP1 000042fd: POP 000042fe: JUMP 000042ff: JUMPDEST 00004300: PUSH1 0x00 00004302: JUMPDEST 00004303: DUP4 00004304: DUP2 00004305: LT 00004306: ISZERO 00004307: PUSH2 0x431a 0000430a: JUMPI 0000430b: DUP2 0000430c: DUP2 0000430d: ADD 0000430e: MLOAD 0000430f: DUP4 00004310: DUP3 00004311: ADD 00004312: MSTORE 00004313: PUSH1 0x20 00004315: ADD 00004316: PUSH2 0x4302 00004319: JUMP 0000431a: JUMPDEST 0000431b: DUP4 0000431c: DUP2 0000431d: GT 0000431e: ISZERO 0000431f: PUSH2 0x4329 00004322: JUMPI 00004323: PUSH1 0x00 00004325: DUP5 00004326: DUP5 00004327: ADD 00004328: MSTORE 00004329: JUMPDEST 0000432a: POP 0000432b: POP 0000432c: POP 0000432d: POP 0000432e: JUMP 0000432f: JUMPDEST 00004330: PUSH1 0x00 00004332: DUP2 00004333: MLOAD 00004334: DUP1 00004335: DUP5 00004336: MSTORE 00004337: PUSH2 0x4347 0000433a: DUP2 0000433b: PUSH1 0x20 0000433d: DUP7 0000433e: ADD 0000433f: PUSH1 0x20 00004341: DUP7 00004342: ADD 00004343: PUSH2 0x42ff 00004346: JUMP 00004347: JUMPDEST 00004348: PUSH1 0x1f 0000434a: ADD 0000434b: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 0000436c: AND 0000436d: SWAP3 0000436e: SWAP1 0000436f: SWAP3 00004370: ADD 00004371: PUSH1 0x20 00004373: ADD 00004374: SWAP3 00004375: SWAP2 00004376: POP 00004377: POP 00004378: JUMP 00004379: JUMPDEST 0000437a: PUSH1 0x20 0000437c: DUP2 0000437d: MSTORE 0000437e: PUSH1 0x00 00004380: PUSH2 0x3414 00004383: PUSH1 0x20 00004385: DUP4 00004386: ADD 00004387: DUP5 00004388: PUSH2 0x432f 0000438b: JUMP 0000438c: JUMPDEST 0000438d: PUSH8 0xffffffffffffffff 00004396: DUP2 00004397: AND 00004398: DUP2 00004399: EQ 0000439a: PUSH2 0x1dcb 0000439d: JUMPI 0000439e: PUSH1 0x00 000043a0: DUP1 000043a1: REVERT 000043a2: JUMPDEST 000043a3: DUP1 000043a4: ISZERO 000043a5: ISZERO 000043a6: DUP2 000043a7: EQ 000043a8: PUSH2 0x1dcb 000043ab: JUMPI 000043ac: PUSH1 0x00 000043ae: DUP1 000043af: REVERT 000043b0: JUMPDEST 000043b1: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 000043d2: PUSH1 0x00 000043d4: MSTORE 000043d5: PUSH1 0x41 000043d7: PUSH1 0x04 000043d9: MSTORE 000043da: PUSH1 0x24 000043dc: PUSH1 0x00 000043de: REVERT 000043df: JUMPDEST 000043e0: PUSH1 0x40 000043e2: MLOAD 000043e3: PUSH1 0x1f 000043e5: DUP3 000043e6: ADD 000043e7: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00004408: AND 00004409: DUP2 0000440a: ADD 0000440b: PUSH8 0xffffffffffffffff 00004414: DUP2 00004415: GT 00004416: DUP3 00004417: DUP3 00004418: LT 00004419: OR 0000441a: ISZERO 0000441b: PUSH2 0x4426 0000441e: JUMPI 0000441f: PUSH2 0x4426 00004422: PUSH2 0x43b0 00004425: JUMP 00004426: JUMPDEST 00004427: PUSH1 0x40 00004429: MSTORE 0000442a: SWAP2 0000442b: SWAP1 0000442c: POP 0000442d: JUMP 0000442e: JUMPDEST 0000442f: PUSH1 0x00 00004431: DUP3 00004432: PUSH1 0x1f 00004434: DUP4 00004435: ADD 00004436: SLT 00004437: PUSH2 0x443f 0000443a: JUMPI 0000443b: PUSH1 0x00 0000443d: DUP1 0000443e: REVERT 0000443f: JUMPDEST 00004440: DUP2 00004441: CALLDATALOAD 00004442: PUSH8 0xffffffffffffffff 0000444b: DUP2 0000444c: GT 0000444d: ISZERO 0000444e: PUSH2 0x4459 00004451: JUMPI 00004452: PUSH2 0x4459 00004455: PUSH2 0x43b0 00004458: JUMP 00004459: JUMPDEST 0000445a: PUSH2 0x448a 0000445d: PUSH1 0x20 0000445f: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00004480: PUSH1 0x1f 00004482: DUP5 00004483: ADD 00004484: AND 00004485: ADD 00004486: PUSH2 0x43df 00004489: JUMP 0000448a: JUMPDEST 0000448b: DUP2 0000448c: DUP2 0000448d: MSTORE 0000448e: DUP5 0000448f: PUSH1 0x20 00004491: DUP4 00004492: DUP7 00004493: ADD 00004494: ADD 00004495: GT 00004496: ISZERO 00004497: PUSH2 0x449f 0000449a: JUMPI 0000449b: PUSH1 0x00 0000449d: DUP1 0000449e: REVERT 0000449f: JUMPDEST 000044a0: DUP2 000044a1: PUSH1 0x20 000044a3: DUP6 000044a4: ADD 000044a5: PUSH1 0x20 000044a7: DUP4 000044a8: ADD 000044a9: CALLDATACOPY 000044aa: PUSH1 0x00 000044ac: SWAP2 000044ad: DUP2 000044ae: ADD 000044af: PUSH1 0x20 000044b1: ADD 000044b2: SWAP2 000044b3: SWAP1 000044b4: SWAP2 000044b5: MSTORE 000044b6: SWAP4 000044b7: SWAP3 000044b8: POP 000044b9: POP 000044ba: POP 000044bb: JUMP 000044bc: JUMPDEST 000044bd: PUSH1 0x00 000044bf: DUP1 000044c0: PUSH1 0x00 000044c2: DUP1 000044c3: PUSH1 0x00 000044c5: PUSH1 0xa0 000044c7: DUP7 000044c8: DUP9 000044c9: SUB 000044ca: SLT 000044cb: ISZERO 000044cc: PUSH2 0x44d4 000044cf: JUMPI 000044d0: PUSH1 0x00 000044d2: DUP1 000044d3: REVERT 000044d4: JUMPDEST 000044d5: DUP6 000044d6: CALLDATALOAD 000044d7: SWAP5 000044d8: POP 000044d9: PUSH1 0x20 000044db: DUP7 000044dc: ADD 000044dd: CALLDATALOAD 000044de: SWAP4 000044df: POP 000044e0: PUSH1 0x40 000044e2: DUP7 000044e3: ADD 000044e4: CALLDATALOAD 000044e5: PUSH2 0x44ed 000044e8: DUP2 000044e9: PUSH2 0x438c 000044ec: JUMP 000044ed: JUMPDEST 000044ee: SWAP3 000044ef: POP 000044f0: PUSH1 0x60 000044f2: DUP7 000044f3: ADD 000044f4: CALLDATALOAD 000044f5: PUSH2 0x44fd 000044f8: DUP2 000044f9: PUSH2 0x43a2 000044fc: JUMP 000044fd: JUMPDEST 000044fe: SWAP2 000044ff: POP 00004500: PUSH1 0x80 00004502: DUP7 00004503: ADD 00004504: CALLDATALOAD 00004505: PUSH8 0xffffffffffffffff 0000450e: DUP2 0000450f: GT 00004510: ISZERO 00004511: PUSH2 0x4519 00004514: JUMPI 00004515: PUSH1 0x00 00004517: DUP1 00004518: REVERT 00004519: JUMPDEST 0000451a: PUSH2 0x4525 0000451d: DUP9 0000451e: DUP3 0000451f: DUP10 00004520: ADD 00004521: PUSH2 0x442e 00004524: JUMP 00004525: JUMPDEST 00004526: SWAP2 00004527: POP 00004528: POP 00004529: SWAP3 0000452a: SWAP6 0000452b: POP 0000452c: SWAP3 0000452d: SWAP6 0000452e: SWAP1 0000452f: SWAP4 00004530: POP 00004531: JUMP 00004532: JUMPDEST 00004533: PUSH1 0x00 00004535: PUSH1 0xc0 00004537: DUP3 00004538: DUP5 00004539: SUB 0000453a: SLT 0000453b: ISZERO 0000453c: PUSH2 0x4544 0000453f: JUMPI 00004540: PUSH1 0x00 00004542: DUP1 00004543: REVERT 00004544: JUMPDEST 00004545: PUSH1 0x40 00004547: MLOAD 00004548: PUSH1 0xc0 0000454a: DUP2 0000454b: ADD 0000454c: PUSH8 0xffffffffffffffff 00004555: DUP3 00004556: DUP3 00004557: LT 00004558: DUP2 00004559: DUP4 0000455a: GT 0000455b: OR 0000455c: ISZERO 0000455d: PUSH2 0x4568 00004560: JUMPI 00004561: PUSH2 0x4568 00004564: PUSH2 0x43b0 00004567: JUMP 00004568: JUMPDEST 00004569: DUP2 0000456a: PUSH1 0x40 0000456c: MSTORE 0000456d: DUP3 0000456e: SWAP4 0000456f: POP 00004570: DUP5 00004571: CALLDATALOAD 00004572: DUP4 00004573: MSTORE 00004574: PUSH1 0x20 00004576: DUP6 00004577: ADD 00004578: CALLDATALOAD 00004579: PUSH1 0x20 0000457b: DUP5 0000457c: ADD 0000457d: MSTORE 0000457e: PUSH1 0x40 00004580: DUP6 00004581: ADD 00004582: CALLDATALOAD 00004583: SWAP2 00004584: POP 00004585: PUSH2 0x458d 00004588: DUP3 00004589: PUSH2 0x42a7 0000458c: JUMP 0000458d: JUMPDEST 0000458e: DUP2 0000458f: PUSH1 0x40 00004591: DUP5 00004592: ADD 00004593: MSTORE 00004594: PUSH1 0x60 00004596: DUP6 00004597: ADD 00004598: CALLDATALOAD 00004599: PUSH1 0x60 0000459b: DUP5 0000459c: ADD 0000459d: MSTORE 0000459e: PUSH1 0x80 000045a0: DUP6 000045a1: ADD 000045a2: CALLDATALOAD 000045a3: PUSH1 0x80 000045a5: DUP5 000045a6: ADD 000045a7: MSTORE 000045a8: PUSH1 0xa0 000045aa: DUP6 000045ab: ADD 000045ac: CALLDATALOAD 000045ad: SWAP2 000045ae: POP 000045af: DUP1 000045b0: DUP3 000045b1: GT 000045b2: ISZERO 000045b3: PUSH2 0x45bb 000045b6: JUMPI 000045b7: PUSH1 0x00 000045b9: DUP1 000045ba: REVERT 000045bb: JUMPDEST 000045bc: POP 000045bd: PUSH2 0x45c8 000045c0: DUP6 000045c1: DUP3 000045c2: DUP7 000045c3: ADD 000045c4: PUSH2 0x442e 000045c7: JUMP 000045c8: JUMPDEST 000045c9: PUSH1 0xa0 000045cb: DUP4 000045cc: ADD 000045cd: MSTORE 000045ce: POP 000045cf: POP 000045d0: SWAP3 000045d1: SWAP2 000045d2: POP 000045d3: POP 000045d4: JUMP 000045d5: JUMPDEST 000045d6: PUSH1 0x00 000045d8: DUP1 000045d9: PUSH1 0x00 000045db: DUP1 000045dc: PUSH1 0x00 000045de: DUP1 000045df: DUP7 000045e0: DUP9 000045e1: SUB 000045e2: PUSH2 0x0100 000045e5: DUP2 000045e6: SLT 000045e7: ISZERO 000045e8: PUSH2 0x45f0 000045eb: JUMPI 000045ec: PUSH1 0x00 000045ee: DUP1 000045ef: REVERT 000045f0: JUMPDEST 000045f1: DUP8 000045f2: CALLDATALOAD 000045f3: PUSH8 0xffffffffffffffff 000045fc: DUP1 000045fd: DUP3 000045fe: GT 000045ff: ISZERO 00004600: PUSH2 0x4608 00004603: JUMPI 00004604: PUSH1 0x00 00004606: DUP1 00004607: REVERT 00004608: JUMPDEST 00004609: PUSH2 0x4614 0000460c: DUP12 0000460d: DUP4 0000460e: DUP13 0000460f: ADD 00004610: PUSH2 0x4532 00004613: JUMP 00004614: JUMPDEST 00004615: SWAP9 00004616: POP 00004617: PUSH1 0x20 00004619: DUP11 0000461a: ADD 0000461b: CALLDATALOAD 0000461c: SWAP8 0000461d: POP 0000461e: PUSH1 0x40 00004620: DUP11 00004621: ADD 00004622: CALLDATALOAD 00004623: SWAP7 00004624: POP 00004625: PUSH1 0x80 00004627: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0 00004648: DUP5 00004649: ADD 0000464a: SLT 0000464b: ISZERO 0000464c: PUSH2 0x4654 0000464f: JUMPI 00004650: PUSH1 0x00 00004652: DUP1 00004653: REVERT 00004654: JUMPDEST 00004655: PUSH1 0x60 00004657: DUP11 00004658: ADD 00004659: SWAP6 0000465a: POP 0000465b: PUSH1 0xe0 0000465d: DUP11 0000465e: ADD 0000465f: CALLDATALOAD 00004660: SWAP3 00004661: POP 00004662: DUP1 00004663: DUP4 00004664: GT 00004665: ISZERO 00004666: PUSH2 0x466e 00004669: JUMPI 0000466a: PUSH1 0x00 0000466c: DUP1 0000466d: REVERT 0000466e: JUMPDEST 0000466f: DUP3 00004670: DUP11 00004671: ADD 00004672: SWAP3 00004673: POP 00004674: DUP11 00004675: PUSH1 0x1f 00004677: DUP5 00004678: ADD 00004679: SLT 0000467a: PUSH2 0x4682 0000467d: JUMPI 0000467e: PUSH1 0x00 00004680: DUP1 00004681: REVERT 00004682: JUMPDEST 00004683: DUP3 00004684: CALLDATALOAD 00004685: SWAP2 00004686: POP 00004687: DUP1 00004688: DUP3 00004689: GT 0000468a: ISZERO 0000468b: PUSH2 0x4693 0000468e: JUMPI 0000468f: PUSH1 0x00 00004691: DUP1 00004692: REVERT 00004693: JUMPDEST 00004694: POP 00004695: DUP10 00004696: PUSH1 0x20 00004698: DUP3 00004699: PUSH1 0x05 0000469b: SHL 0000469c: DUP5 0000469d: ADD 0000469e: ADD 0000469f: GT 000046a0: ISZERO 000046a1: PUSH2 0x46a9 000046a4: JUMPI 000046a5: PUSH1 0x00 000046a7: DUP1 000046a8: REVERT 000046a9: JUMPDEST 000046aa: PUSH1 0x20 000046ac: DUP3 000046ad: ADD 000046ae: SWAP4 000046af: POP 000046b0: DUP1 000046b1: SWAP3 000046b2: POP 000046b3: POP 000046b4: POP 000046b5: SWAP3 000046b6: SWAP6 000046b7: POP 000046b8: SWAP3 000046b9: SWAP6 000046ba: POP 000046bb: SWAP3 000046bc: SWAP6 000046bd: JUMP 000046be: JUMPDEST 000046bf: PUSH1 0x00 000046c1: DUP1 000046c2: PUSH1 0x40 000046c4: DUP4 000046c5: DUP6 000046c6: SUB 000046c7: SLT 000046c8: ISZERO 000046c9: PUSH2 0x46d1 000046cc: JUMPI 000046cd: PUSH1 0x00 000046cf: DUP1 000046d0: REVERT 000046d1: JUMPDEST 000046d2: DUP3 000046d3: CALLDATALOAD 000046d4: SWAP2 000046d5: POP 000046d6: PUSH1 0x20 000046d8: DUP4 000046d9: ADD 000046da: CALLDATALOAD 000046db: PUSH2 0x46e3 000046de: DUP2 000046df: PUSH2 0x42a7 000046e2: JUMP 000046e3: JUMPDEST 000046e4: DUP1 000046e5: SWAP2 000046e6: POP 000046e7: POP 000046e8: SWAP3 000046e9: POP 000046ea: SWAP3 000046eb: SWAP1 000046ec: POP 000046ed: JUMP 000046ee: JUMPDEST 000046ef: PUSH4 0xffffffff 000046f4: DUP2 000046f5: AND 000046f6: DUP2 000046f7: EQ 000046f8: PUSH2 0x1dcb 000046fb: JUMPI 000046fc: PUSH1 0x00 000046fe: DUP1 000046ff: REVERT 00004700: JUMPDEST 00004701: PUSH1 0x00 00004703: PUSH1 0x20 00004705: DUP3 00004706: DUP5 00004707: SUB 00004708: SLT 00004709: ISZERO 0000470a: PUSH2 0x4712 0000470d: JUMPI 0000470e: PUSH1 0x00 00004710: DUP1 00004711: REVERT 00004712: JUMPDEST 00004713: DUP2 00004714: CALLDATALOAD 00004715: PUSH2 0x3414 00004718: DUP2 00004719: PUSH2 0x46ee 0000471c: JUMP 0000471d: JUMPDEST 0000471e: PUSH1 0x00 00004720: DUP1 00004721: PUSH1 0x00 00004723: DUP1 00004724: PUSH1 0x80 00004726: DUP6 00004727: DUP8 00004728: SUB 00004729: SLT 0000472a: ISZERO 0000472b: PUSH2 0x4733 0000472e: JUMPI 0000472f: PUSH1 0x00 00004731: DUP1 00004732: REVERT 00004733: JUMPDEST 00004734: DUP5 00004735: CALLDATALOAD 00004736: PUSH2 0x473e 00004739: DUP2 0000473a: PUSH2 0x42a7 0000473d: JUMP 0000473e: JUMPDEST 0000473f: SWAP4 00004740: POP 00004741: PUSH1 0x20 00004743: DUP6 00004744: ADD 00004745: CALLDATALOAD 00004746: PUSH2 0x474e 00004749: DUP2 0000474a: PUSH2 0x42a7 0000474d: JUMP 0000474e: JUMPDEST 0000474f: SWAP3 00004750: POP 00004751: PUSH1 0x40 00004753: DUP6 00004754: ADD 00004755: CALLDATALOAD 00004756: PUSH2 0x475e 00004759: DUP2 0000475a: PUSH2 0x42a7 0000475d: JUMP 0000475e: JUMPDEST 0000475f: SWAP2 00004760: POP 00004761: PUSH1 0x60 00004763: DUP6 00004764: ADD 00004765: CALLDATALOAD 00004766: PUSH2 0x476e 00004769: DUP2 0000476a: PUSH2 0x46ee 0000476d: JUMP 0000476e: JUMPDEST 0000476f: SWAP4 00004770: SWAP7 00004771: SWAP3 00004772: SWAP6 00004773: POP 00004774: SWAP1 00004775: SWAP4 00004776: POP 00004777: POP 00004778: JUMP 00004779: JUMPDEST 0000477a: PUSH1 0x00 0000477c: DUP1 0000477d: PUSH1 0x40 0000477f: DUP4 00004780: DUP6 00004781: SUB 00004782: SLT 00004783: ISZERO 00004784: PUSH2 0x478c 00004787: JUMPI 00004788: PUSH1 0x00 0000478a: DUP1 0000478b: REVERT 0000478c: JUMPDEST 0000478d: DUP3 0000478e: CALLDATALOAD 0000478f: SWAP2 00004790: POP 00004791: PUSH1 0x20 00004793: DUP4 00004794: ADD 00004795: CALLDATALOAD 00004796: PUSH2 0x46e3 00004799: DUP2 0000479a: PUSH2 0x43a2 0000479d: JUMP 0000479e: JUMPDEST 0000479f: PUSH1 0x00 000047a1: PUSH1 0x20 000047a3: DUP3 000047a4: DUP5 000047a5: SUB 000047a6: SLT 000047a7: ISZERO 000047a8: PUSH2 0x47b0 000047ab: JUMPI 000047ac: PUSH1 0x00 000047ae: DUP1 000047af: REVERT 000047b0: JUMPDEST 000047b1: DUP2 000047b2: CALLDATALOAD 000047b3: PUSH2 0x3414 000047b6: DUP2 000047b7: PUSH2 0x438c 000047ba: JUMP 000047bb: JUMPDEST 000047bc: PUSH1 0x00 000047be: DUP1 000047bf: PUSH1 0x40 000047c1: DUP4 000047c2: DUP6 000047c3: SUB 000047c4: SLT 000047c5: ISZERO 000047c6: PUSH2 0x47ce 000047c9: JUMPI 000047ca: PUSH1 0x00 000047cc: DUP1 000047cd: REVERT 000047ce: JUMPDEST 000047cf: POP 000047d0: POP 000047d1: DUP1 000047d2: CALLDATALOAD 000047d3: SWAP3 000047d4: PUSH1 0x20 000047d6: SWAP1 000047d7: SWAP2 000047d8: ADD 000047d9: CALLDATALOAD 000047da: SWAP2 000047db: POP 000047dc: JUMP 000047dd: JUMPDEST 000047de: PUSH1 0x00 000047e0: PUSH1 0x20 000047e2: DUP3 000047e3: DUP5 000047e4: SUB 000047e5: SLT 000047e6: ISZERO 000047e7: PUSH2 0x47ef 000047ea: JUMPI 000047eb: PUSH1 0x00 000047ed: DUP1 000047ee: REVERT 000047ef: JUMPDEST 000047f0: DUP2 000047f1: CALLDATALOAD 000047f2: PUSH8 0xffffffffffffffff 000047fb: DUP2 000047fc: GT 000047fd: ISZERO 000047fe: PUSH2 0x4806 00004801: JUMPI 00004802: PUSH1 0x00 00004804: DUP1 00004805: REVERT 00004806: JUMPDEST 00004807: PUSH2 0x342a 0000480a: DUP5 0000480b: DUP3 0000480c: DUP6 0000480d: ADD 0000480e: PUSH2 0x4532 00004811: JUMP 00004812: JUMPDEST 00004813: PUSH1 0x00 00004815: DUP1 00004816: PUSH1 0x00 00004818: DUP1 00004819: PUSH1 0x00 0000481b: DUP1 0000481c: PUSH1 0xc0 0000481e: DUP8 0000481f: DUP10 00004820: SUB 00004821: SLT 00004822: ISZERO 00004823: PUSH2 0x482b 00004826: JUMPI 00004827: PUSH1 0x00 00004829: DUP1 0000482a: REVERT 0000482b: JUMPDEST 0000482c: DUP7 0000482d: CALLDATALOAD 0000482e: SWAP6 0000482f: POP 00004830: PUSH1 0x20 00004832: DUP8 00004833: ADD 00004834: CALLDATALOAD 00004835: SWAP5 00004836: POP 00004837: PUSH1 0x40 00004839: DUP8 0000483a: ADD 0000483b: CALLDATALOAD 0000483c: SWAP4 0000483d: POP 0000483e: PUSH1 0x60 00004840: DUP8 00004841: ADD 00004842: CALLDATALOAD 00004843: PUSH2 0x484b 00004846: DUP2 00004847: PUSH2 0x438c 0000484a: JUMP 0000484b: JUMPDEST 0000484c: SWAP3 0000484d: POP 0000484e: PUSH1 0x80 00004850: DUP8 00004851: ADD 00004852: CALLDATALOAD 00004853: PUSH2 0x485b 00004856: DUP2 00004857: PUSH2 0x43a2 0000485a: JUMP 0000485b: JUMPDEST 0000485c: SWAP2 0000485d: POP 0000485e: PUSH1 0xa0 00004860: DUP8 00004861: ADD 00004862: CALLDATALOAD 00004863: PUSH8 0xffffffffffffffff 0000486c: DUP2 0000486d: GT 0000486e: ISZERO 0000486f: PUSH2 0x4877 00004872: JUMPI 00004873: PUSH1 0x00 00004875: DUP1 00004876: REVERT 00004877: JUMPDEST 00004878: PUSH2 0x4883 0000487b: DUP10 0000487c: DUP3 0000487d: DUP11 0000487e: ADD 0000487f: PUSH2 0x442e 00004882: JUMP 00004883: JUMPDEST 00004884: SWAP2 00004885: POP 00004886: POP 00004887: SWAP3 00004888: SWAP6 00004889: POP 0000488a: SWAP3 0000488b: SWAP6 0000488c: POP 0000488d: SWAP3 0000488e: SWAP6 0000488f: JUMP 00004890: JUMPDEST 00004891: PUSH1 0x00 00004893: DUP1 00004894: PUSH1 0x40 00004896: DUP4 00004897: DUP6 00004898: SUB 00004899: SLT 0000489a: ISZERO 0000489b: PUSH2 0x48a3 0000489e: JUMPI 0000489f: PUSH1 0x00 000048a1: DUP1 000048a2: REVERT 000048a3: JUMPDEST 000048a4: DUP3 000048a5: CALLDATALOAD 000048a6: PUSH8 0xffffffffffffffff 000048af: DUP2 000048b0: GT 000048b1: ISZERO 000048b2: PUSH2 0x48ba 000048b5: JUMPI 000048b6: PUSH1 0x00 000048b8: DUP1 000048b9: REVERT 000048ba: JUMPDEST 000048bb: PUSH2 0x48c6 000048be: DUP6 000048bf: DUP3 000048c0: DUP7 000048c1: ADD 000048c2: PUSH2 0x4532 000048c5: JUMP 000048c6: JUMPDEST 000048c7: SWAP3 000048c8: POP 000048c9: POP 000048ca: PUSH1 0x20 000048cc: DUP4 000048cd: ADD 000048ce: CALLDATALOAD 000048cf: PUSH2 0x46e3 000048d2: DUP2 000048d3: PUSH2 0x42a7 000048d6: JUMP 000048d7: JUMPDEST 000048d8: PUSH1 0x00 000048da: PUSH1 0x20 000048dc: DUP3 000048dd: DUP5 000048de: SUB 000048df: SLT 000048e0: ISZERO 000048e1: PUSH2 0x48e9 000048e4: JUMPI 000048e5: PUSH1 0x00 000048e7: DUP1 000048e8: REVERT 000048e9: JUMPDEST 000048ea: DUP2 000048eb: MLOAD 000048ec: PUSH2 0x3414 000048ef: DUP2 000048f0: PUSH2 0x42a7 000048f3: JUMP 000048f4: JUMPDEST 000048f5: PUSH1 0x00 000048f7: PUSH1 0x20 000048f9: DUP3 000048fa: DUP5 000048fb: SUB 000048fc: SLT 000048fd: ISZERO 000048fe: PUSH2 0x4906 00004901: JUMPI 00004902: PUSH1 0x00 00004904: DUP1 00004905: REVERT 00004906: JUMPDEST 00004907: DUP2 00004908: MLOAD 00004909: PUSH2 0x3414 0000490c: DUP2 0000490d: PUSH2 0x43a2 00004910: JUMP 00004911: JUMPDEST 00004912: PUSH1 0x00 00004914: DUP1 00004915: PUSH1 0x00 00004917: PUSH1 0x60 00004919: DUP5 0000491a: DUP7 0000491b: SUB 0000491c: SLT 0000491d: ISZERO 0000491e: PUSH2 0x4926 00004921: JUMPI 00004922: PUSH1 0x00 00004924: DUP1 00004925: REVERT 00004926: JUMPDEST 00004927: DUP4 00004928: MLOAD 00004929: PUSH2 0x4931 0000492c: DUP2 0000492d: PUSH2 0x46ee 00004930: JUMP 00004931: JUMPDEST 00004932: PUSH1 0x20 00004934: DUP6 00004935: ADD 00004936: MLOAD 00004937: SWAP1 00004938: SWAP4 00004939: POP 0000493a: PUSH2 0x4942 0000493d: DUP2 0000493e: PUSH2 0x438c 00004941: JUMP 00004942: JUMPDEST 00004943: PUSH1 0x40 00004945: DUP6 00004946: ADD 00004947: MLOAD 00004948: SWAP1 00004949: SWAP3 0000494a: POP 0000494b: PUSH2 0x4953 0000494e: DUP2 0000494f: PUSH2 0x42a7 00004952: JUMP 00004953: JUMPDEST 00004954: DUP1 00004955: SWAP2 00004956: POP 00004957: POP 00004958: SWAP3 00004959: POP 0000495a: SWAP3 0000495b: POP 0000495c: SWAP3 0000495d: JUMP 0000495e: JUMPDEST 0000495f: PUSH1 0x00 00004961: PUSH1 0x20 00004963: DUP3 00004964: DUP5 00004965: SUB 00004966: SLT 00004967: ISZERO 00004968: PUSH2 0x4970 0000496b: JUMPI 0000496c: PUSH1 0x00 0000496e: DUP1 0000496f: REVERT 00004970: JUMPDEST 00004971: POP 00004972: MLOAD 00004973: SWAP2 00004974: SWAP1 00004975: POP 00004976: JUMP 00004977: JUMPDEST 00004978: PUSH1 0x00 0000497a: PUSH1 0x80 0000497c: DUP3 0000497d: DUP5 0000497e: SUB 0000497f: SLT 00004980: ISZERO 00004981: PUSH2 0x4989 00004984: JUMPI 00004985: PUSH1 0x00 00004987: DUP1 00004988: REVERT 00004989: JUMPDEST 0000498a: PUSH1 0x40 0000498c: MLOAD 0000498d: PUSH1 0x80 0000498f: DUP2 00004990: ADD 00004991: DUP2 00004992: DUP2 00004993: LT 00004994: PUSH8 0xffffffffffffffff 0000499d: DUP3 0000499e: GT 0000499f: OR 000049a0: ISZERO 000049a1: PUSH2 0x49ac 000049a4: JUMPI 000049a5: PUSH2 0x49ac 000049a8: PUSH2 0x43b0 000049ab: JUMP 000049ac: JUMPDEST 000049ad: DUP1 000049ae: PUSH1 0x40 000049b0: MSTORE 000049b1: POP 000049b2: DUP3 000049b3: CALLDATALOAD 000049b4: DUP2 000049b5: MSTORE 000049b6: PUSH1 0x20 000049b8: DUP4 000049b9: ADD 000049ba: CALLDATALOAD 000049bb: PUSH1 0x20 000049bd: DUP3 000049be: ADD 000049bf: MSTORE 000049c0: PUSH1 0x40 000049c2: DUP4 000049c3: ADD 000049c4: CALLDATALOAD 000049c5: PUSH1 0x40 000049c7: DUP3 000049c8: ADD 000049c9: MSTORE 000049ca: PUSH1 0x60 000049cc: DUP4 000049cd: ADD 000049ce: CALLDATALOAD 000049cf: PUSH1 0x60 000049d1: DUP3 000049d2: ADD 000049d3: MSTORE 000049d4: DUP1 000049d5: SWAP2 000049d6: POP 000049d7: POP 000049d8: SWAP3 000049d9: SWAP2 000049da: POP 000049db: POP 000049dc: JUMP 000049dd: JUMPDEST 000049de: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 000049ff: PUSH1 0x00 00004a01: MSTORE 00004a02: PUSH1 0x21 00004a04: PUSH1 0x04 00004a06: MSTORE 00004a07: PUSH1 0x24 00004a09: PUSH1 0x00 00004a0b: REVERT 00004a0c: JUMPDEST 00004a0d: PUSH1 0x00 00004a0f: PUSH1 0x20 00004a11: DUP3 00004a12: DUP5 00004a13: SUB 00004a14: SLT 00004a15: ISZERO 00004a16: PUSH2 0x4a1e 00004a19: JUMPI 00004a1a: PUSH1 0x00 00004a1c: DUP1 00004a1d: REVERT 00004a1e: JUMPDEST 00004a1f: DUP2 00004a20: MLOAD 00004a21: PUSH1 0x03 00004a23: DUP2 00004a24: LT 00004a25: PUSH2 0x3414 00004a28: JUMPI 00004a29: PUSH1 0x00 00004a2b: DUP1 00004a2c: REVERT 00004a2d: JUMPDEST 00004a2e: DUP7 00004a2f: DUP2 00004a30: MSTORE 00004a31: DUP6 00004a32: PUSH1 0x20 00004a34: DUP3 00004a35: ADD 00004a36: MSTORE 00004a37: PUSH32 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000 00004a58: DUP6 00004a59: PUSH1 0x60 00004a5b: SHL 00004a5c: AND 00004a5d: PUSH1 0x40 00004a5f: DUP3 00004a60: ADD 00004a61: MSTORE 00004a62: DUP4 00004a63: PUSH1 0x54 00004a65: DUP3 00004a66: ADD 00004a67: MSTORE 00004a68: DUP3 00004a69: PUSH1 0x74 00004a6b: DUP3 00004a6c: ADD 00004a6d: MSTORE 00004a6e: PUSH1 0x00 00004a70: DUP3 00004a71: MLOAD 00004a72: PUSH2 0x4a82 00004a75: DUP2 00004a76: PUSH1 0x94 00004a78: DUP6 00004a79: ADD 00004a7a: PUSH1 0x20 00004a7c: DUP8 00004a7d: ADD 00004a7e: PUSH2 0x42ff 00004a81: JUMP 00004a82: JUMPDEST 00004a83: SWAP2 00004a84: SWAP1 00004a85: SWAP2 00004a86: ADD 00004a87: PUSH1 0x94 00004a89: ADD 00004a8a: SWAP8 00004a8b: SWAP7 00004a8c: POP 00004a8d: POP 00004a8e: POP 00004a8f: POP 00004a90: POP 00004a91: POP 00004a92: POP 00004a93: JUMP 00004a94: JUMPDEST 00004a95: PUSH1 0x00 00004a97: PUSH8 0xffffffffffffffff 00004aa0: DUP1 00004aa1: DUP5 00004aa2: GT 00004aa3: ISZERO 00004aa4: PUSH2 0x4aaf 00004aa7: JUMPI 00004aa8: PUSH2 0x4aaf 00004aab: PUSH2 0x43b0 00004aae: JUMP 00004aaf: JUMPDEST 00004ab0: DUP4 00004ab1: PUSH1 0x05 00004ab3: SHL 00004ab4: PUSH1 0x20 00004ab6: PUSH2 0x4ac0 00004ab9: DUP2 00004aba: DUP4 00004abb: ADD 00004abc: PUSH2 0x43df 00004abf: JUMP 00004ac0: JUMPDEST 00004ac1: DUP7 00004ac2: DUP2 00004ac3: MSTORE 00004ac4: SWAP2 00004ac5: DUP6 00004ac6: ADD 00004ac7: SWAP2 00004ac8: DUP2 00004ac9: DUP2 00004aca: ADD 00004acb: SWAP1 00004acc: CALLDATASIZE 00004acd: DUP5 00004ace: GT 00004acf: ISZERO 00004ad0: PUSH2 0x4ad8 00004ad3: JUMPI 00004ad4: PUSH1 0x00 00004ad6: DUP1 00004ad7: REVERT 00004ad8: JUMPDEST 00004ad9: DUP7 00004ada: JUMPDEST 00004adb: DUP5 00004adc: DUP2 00004add: LT 00004ade: ISZERO 00004adf: PUSH2 0x4b0c 00004ae2: JUMPI 00004ae3: DUP1 00004ae4: CALLDATALOAD 00004ae5: DUP7 00004ae6: DUP2 00004ae7: GT 00004ae8: ISZERO 00004ae9: PUSH2 0x4af2 00004aec: JUMPI 00004aed: PUSH1 0x00 00004aef: DUP1 00004af0: DUP2 00004af1: REVERT 00004af2: JUMPDEST 00004af3: PUSH2 0x4afe 00004af6: CALLDATASIZE 00004af7: DUP3 00004af8: DUP12 00004af9: ADD 00004afa: PUSH2 0x442e 00004afd: JUMP 00004afe: JUMPDEST 00004aff: DUP5 00004b00: MSTORE 00004b01: POP 00004b02: SWAP2 00004b03: DUP4 00004b04: ADD 00004b05: SWAP2 00004b06: DUP4 00004b07: ADD 00004b08: PUSH2 0x4ada 00004b0b: JUMP 00004b0c: JUMPDEST 00004b0d: POP 00004b0e: SWAP8 00004b0f: SWAP7 00004b10: POP 00004b11: POP 00004b12: POP 00004b13: POP 00004b14: POP 00004b15: POP 00004b16: POP 00004b17: JUMP 00004b18: JUMPDEST 00004b19: PUSH1 0x00 00004b1b: PUSH1 0x20 00004b1d: DUP3 00004b1e: DUP5 00004b1f: SUB 00004b20: SLT 00004b21: ISZERO 00004b22: PUSH2 0x4b2a 00004b25: JUMPI 00004b26: PUSH1 0x00 00004b28: DUP1 00004b29: REVERT 00004b2a: JUMPDEST 00004b2b: DUP2 00004b2c: MLOAD 00004b2d: PUSH2 0x3414 00004b30: DUP2 00004b31: PUSH2 0x438c 00004b34: JUMP 00004b35: JUMPDEST 00004b36: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00004b57: PUSH1 0x00 00004b59: MSTORE 00004b5a: PUSH1 0x11 00004b5c: PUSH1 0x04 00004b5e: MSTORE 00004b5f: PUSH1 0x24 00004b61: PUSH1 0x00 00004b63: REVERT 00004b64: JUMPDEST 00004b65: PUSH1 0x00 00004b67: DUP3 00004b68: DUP3 00004b69: LT 00004b6a: ISZERO 00004b6b: PUSH2 0x4b76 00004b6e: JUMPI 00004b6f: PUSH2 0x4b76 00004b72: PUSH2 0x4b35 00004b75: JUMP 00004b76: JUMPDEST 00004b77: POP 00004b78: SUB 00004b79: SWAP1 00004b7a: JUMP 00004b7b: JUMPDEST 00004b7c: PUSH1 0x00 00004b7e: PUSH1 0x20 00004b80: DUP3 00004b81: DUP5 00004b82: SUB 00004b83: SLT 00004b84: ISZERO 00004b85: PUSH2 0x4b8d 00004b88: JUMPI 00004b89: PUSH1 0x00 00004b8b: DUP1 00004b8c: REVERT 00004b8d: JUMPDEST 00004b8e: DUP2 00004b8f: MLOAD 00004b90: PUSH2 0x3414 00004b93: DUP2 00004b94: PUSH2 0x46ee 00004b97: JUMP 00004b98: JUMPDEST 00004b99: PUSH1 0x00 00004b9b: PUSH8 0xffffffffffffffff 00004ba4: DUP1 00004ba5: DUP4 00004ba6: AND 00004ba7: DUP2 00004ba8: DUP6 00004ba9: AND 00004baa: DUP2 00004bab: DUP4 00004bac: DIV 00004bad: DUP2 00004bae: GT 00004baf: DUP3 00004bb0: ISZERO 00004bb1: ISZERO 00004bb2: AND 00004bb3: ISZERO 00004bb4: PUSH2 0x4bbf 00004bb7: JUMPI 00004bb8: PUSH2 0x4bbf 00004bbb: PUSH2 0x4b35 00004bbe: JUMP 00004bbf: JUMPDEST 00004bc0: MUL 00004bc1: SWAP5 00004bc2: SWAP4 00004bc3: POP 00004bc4: POP 00004bc5: POP 00004bc6: POP 00004bc7: JUMP 00004bc8: JUMPDEST 00004bc9: PUSH1 0x00 00004bcb: PUSH8 0xffffffffffffffff 00004bd4: DUP1 00004bd5: DUP4 00004bd6: AND 00004bd7: DUP2 00004bd8: DUP6 00004bd9: AND 00004bda: DUP1 00004bdb: DUP4 00004bdc: SUB 00004bdd: DUP3 00004bde: GT 00004bdf: ISZERO 00004be0: PUSH2 0x4beb 00004be3: JUMPI 00004be4: PUSH2 0x4beb 00004be7: PUSH2 0x4b35 00004bea: JUMP 00004beb: JUMPDEST 00004bec: ADD 00004bed: SWAP5 00004bee: SWAP4 00004bef: POP 00004bf0: POP 00004bf1: POP 00004bf2: POP 00004bf3: JUMP 00004bf4: JUMPDEST 00004bf5: PUSH1 0x00 00004bf7: DUP1 00004bf8: PUSH1 0x40 00004bfa: DUP4 00004bfb: DUP6 00004bfc: SUB 00004bfd: SLT 00004bfe: ISZERO 00004bff: PUSH2 0x4c07 00004c02: JUMPI 00004c03: PUSH1 0x00 00004c05: DUP1 00004c06: REVERT 00004c07: JUMPDEST 00004c08: DUP3 00004c09: MLOAD 00004c0a: PUSH2 0x4c12 00004c0d: DUP2 00004c0e: PUSH2 0x42a7 00004c11: JUMP 00004c12: JUMPDEST 00004c13: PUSH1 0x20 00004c15: DUP5 00004c16: ADD 00004c17: MLOAD 00004c18: SWAP1 00004c19: SWAP3 00004c1a: POP 00004c1b: PUSH1 0xff 00004c1d: DUP2 00004c1e: AND 00004c1f: DUP2 00004c20: EQ 00004c21: PUSH2 0x46e3 00004c24: JUMPI 00004c25: PUSH1 0x00 00004c27: DUP1 00004c28: REVERT 00004c29: JUMPDEST 00004c2a: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00004c4b: PUSH1 0x00 00004c4d: MSTORE 00004c4e: PUSH1 0x12 00004c50: PUSH1 0x04 00004c52: MSTORE 00004c53: PUSH1 0x24 00004c55: PUSH1 0x00 00004c57: REVERT 00004c58: JUMPDEST 00004c59: PUSH1 0x00 00004c5b: DUP3 00004c5c: PUSH2 0x4c67 00004c5f: JUMPI 00004c60: PUSH2 0x4c67 00004c63: PUSH2 0x4c29 00004c66: JUMP 00004c67: JUMPDEST 00004c68: POP 00004c69: MOD 00004c6a: SWAP1 00004c6b: JUMP 00004c6c: JUMPDEST 00004c6d: DUP6 00004c6e: DUP2 00004c6f: MSTORE 00004c70: DUP5 00004c71: PUSH1 0x20 00004c73: DUP3 00004c74: ADD 00004c75: MSTORE 00004c76: PUSH32 0xffffffffffffffff000000000000000000000000000000000000000000000000 00004c97: DUP5 00004c98: PUSH1 0xc0 00004c9a: SHL 00004c9b: AND 00004c9c: PUSH1 0x40 00004c9e: DUP3 00004c9f: ADD 00004ca0: MSTORE 00004ca1: DUP3 00004ca2: ISZERO 00004ca3: ISZERO 00004ca4: PUSH1 0xf8 00004ca6: SHL 00004ca7: PUSH1 0x48 00004ca9: DUP3 00004caa: ADD 00004cab: MSTORE 00004cac: PUSH1 0x00 00004cae: DUP3 00004caf: MLOAD 00004cb0: PUSH2 0x4cc0 00004cb3: DUP2 00004cb4: PUSH1 0x49 00004cb6: DUP6 00004cb7: ADD 00004cb8: PUSH1 0x20 00004cba: DUP8 00004cbb: ADD 00004cbc: PUSH2 0x42ff 00004cbf: JUMP 00004cc0: JUMPDEST 00004cc1: SWAP2 00004cc2: SWAP1 00004cc3: SWAP2 00004cc4: ADD 00004cc5: PUSH1 0x49 00004cc7: ADD 00004cc8: SWAP7 00004cc9: SWAP6 00004cca: POP 00004ccb: POP 00004ccc: POP 00004ccd: POP 00004cce: POP 00004ccf: POP 00004cd0: JUMP 00004cd1: JUMPDEST 00004cd2: DUP7 00004cd3: DUP2 00004cd4: MSTORE 00004cd5: DUP6 00004cd6: PUSH1 0x20 00004cd8: DUP3 00004cd9: ADD 00004cda: MSTORE 00004cdb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00004cf0: DUP6 00004cf1: AND 00004cf2: PUSH1 0x40 00004cf4: DUP3 00004cf5: ADD 00004cf6: MSTORE 00004cf7: DUP4 00004cf8: PUSH1 0x60 00004cfa: DUP3 00004cfb: ADD 00004cfc: MSTORE 00004cfd: DUP3 00004cfe: PUSH1 0x80 00004d00: DUP3 00004d01: ADD 00004d02: MSTORE 00004d03: PUSH1 0xc0 00004d05: PUSH1 0xa0 00004d07: DUP3 00004d08: ADD 00004d09: MSTORE 00004d0a: PUSH1 0x00 00004d0c: PUSH2 0x4d18 00004d0f: PUSH1 0xc0 00004d11: DUP4 00004d12: ADD 00004d13: DUP5 00004d14: PUSH2 0x432f 00004d17: JUMP 00004d18: JUMPDEST 00004d19: SWAP9 00004d1a: SWAP8 00004d1b: POP 00004d1c: POP 00004d1d: POP 00004d1e: POP 00004d1f: POP 00004d20: POP 00004d21: POP 00004d22: POP 00004d23: JUMP 00004d24: JUMPDEST 00004d25: PUSH1 0x00 00004d27: DUP2 00004d28: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00004d49: DIV 00004d4a: DUP4 00004d4b: GT 00004d4c: DUP3 00004d4d: ISZERO 00004d4e: ISZERO 00004d4f: AND 00004d50: ISZERO 00004d51: PUSH2 0x4d5c 00004d54: JUMPI 00004d55: PUSH2 0x4d5c 00004d58: PUSH2 0x4b35 00004d5b: JUMP 00004d5c: JUMPDEST 00004d5d: POP 00004d5e: MUL 00004d5f: SWAP1 00004d60: JUMP 00004d61: JUMPDEST 00004d62: PUSH1 0x00 00004d64: DUP3 00004d65: PUSH2 0x4d70 00004d68: JUMPI 00004d69: PUSH2 0x4d70 00004d6c: PUSH2 0x4c29 00004d6f: JUMP 00004d70: JUMPDEST 00004d71: POP 00004d72: DIV 00004d73: SWAP1 00004d74: JUMP 00004d75: JUMPDEST 00004d76: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00004d97: PUSH1 0x00 00004d99: MSTORE 00004d9a: PUSH1 0x32 00004d9c: PUSH1 0x04 00004d9e: MSTORE 00004d9f: PUSH1 0x24 00004da1: PUSH1 0x00 00004da3: REVERT 00004da4: JUMPDEST 00004da5: PUSH1 0x00 00004da7: DUP3 00004da8: NOT 00004da9: DUP3 00004daa: GT 00004dab: ISZERO 00004dac: PUSH2 0x4db7 00004daf: JUMPI 00004db0: PUSH2 0x4db7 00004db3: PUSH2 0x4b35 00004db6: JUMP 00004db7: JUMPDEST 00004db8: POP 00004db9: ADD 00004dba: SWAP1 00004dbb: JUMP 00004dbc: JUMPDEST 00004dbd: PUSH1 0x00 00004dbf: PUSH1 0xff 00004dc1: DUP4 00004dc2: AND 00004dc3: DUP1 00004dc4: PUSH2 0x4dcf 00004dc7: JUMPI 00004dc8: PUSH2 0x4dcf 00004dcb: PUSH2 0x4c29 00004dce: JUMP 00004dcf: JUMPDEST 00004dd0: DUP1 00004dd1: PUSH1 0xff 00004dd3: DUP5 00004dd4: AND 00004dd5: MOD 00004dd6: SWAP2 00004dd7: POP 00004dd8: POP 00004dd9: SWAP3 00004dda: SWAP2 00004ddb: POP 00004ddc: POP 00004ddd: JUMP 00004dde: JUMPDEST 00004ddf: PUSH1 0x00 00004de1: PUSH1 0xff 00004de3: DUP3 00004de4: AND 00004de5: PUSH1 0xff 00004de7: DUP5 00004de8: AND 00004de9: DUP1 00004dea: DUP3 00004deb: LT 00004dec: ISZERO 00004ded: PUSH2 0x4df8 00004df0: JUMPI 00004df1: PUSH2 0x4df8 00004df4: PUSH2 0x4b35 00004df7: JUMP 00004df8: JUMPDEST 00004df9: SWAP1 00004dfa: SUB 00004dfb: SWAP4 00004dfc: SWAP3 00004dfd: POP 00004dfe: POP 00004dff: POP 00004e00: JUMP 00004e01: JUMPDEST 00004e02: PUSH1 0x00 00004e04: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00004e25: DUP3 00004e26: SUB 00004e27: PUSH2 0x4e32 00004e2a: JUMPI 00004e2b: PUSH2 0x4e32 00004e2e: PUSH2 0x4b35 00004e31: JUMP 00004e32: JUMPDEST 00004e33: POP 00004e34: PUSH1 0x01 00004e36: ADD 00004e37: SWAP1 00004e38: JUMP 00004e39: JUMPDEST 00004e3a: PUSH1 0x00 00004e3c: DUP3 00004e3d: MLOAD 00004e3e: PUSH2 0x4e4b 00004e41: DUP2 00004e42: DUP5 00004e43: PUSH1 0x20 00004e45: DUP8 00004e46: ADD 00004e47: PUSH2 0x42ff 00004e4a: JUMP 00004e4b: JUMPDEST 00004e4c: SWAP2 00004e4d: SWAP1 00004e4e: SWAP2 00004e4f: ADD 00004e50: SWAP3 00004e51: SWAP2 00004e52: POP 00004e53: POP 00004e54: JUMP 00004e55: INVALID 00004e56: LOG1 00004e57: PUSH5 0x736f6c6343 00004e5d: STOP 00004e5e: ADDMOD 00004e5f: UNKNOWN(0x0F) 00004e60: STOP 00004e61: EXP
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | auth | detector | Authorization based on tx.origin | 70 | no | — |
viewvalidation_json{
"reason": "missing sink mapping",
"status": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xcff0ab96",
"selector": "0xcff0ab96",
"calldata_variants": [
"0xcff0ab96",
"0xcff0ab960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe6bb1156",
"selector": "0xe6bb1156",
"calldata_variants": [
"0xe6bb1156",
"0xe6bb11560000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe89bfc7b",
"selector": "0xe89bfc7b",
"calldata_variants": [
"0xe89bfc7b",
"0xe89bfc7b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2b4e617",
"selector": "0xf2b4e617",
"calldata_variants": [
"0xf2b4e617",
"0xf2b4e6170000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbb2c727e",
"selector": "0xbb2c727e",
"calldata_variants": [
"0xbb2c727e",
"0xbb2c727e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbf653a5c",
"selector": "0xbf653a5c",
"calldata_variants": [
"0xbf653a5c",
"0xbf653a5c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc7ac3bb9",
"selector": "0xc7ac3bb9",
"calldata_variants": [
"0xc7ac3bb9",
"0xc7ac3bb90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xca552342",
"selector": "0xca552342",
"calldata_variants": [
"0xca552342",
"0xca5523420000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 8673,
"type": "tx_origin_used"
},
{
"pc": 9347,
"type": "tx_origin_used"
},
{
"pc": 5874,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 6101,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 6918,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 8670,
"type": "tx_origin_used"
},
{
"pc": 9345,
"type": "tx_origin_used"
}
]
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0x7c6002c68b27ff19979f2c6fd2bc047aa367e314beac99f0e3a228ec52df249b
call_targets:
0x29174fc953f163452093afa9ee3904168c74b2e7
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x7c6002c68b27ff19979f2c6fd2bc047aa367e314beac99f0e3a228ec52df249b",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x29174fc953f163452093afa9ee3904168c74b2e7"
],
"matched_probe": null,
"target_varies": false,
"classification": "constant_target"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xcff0ab96",
"selector": "0xcff0ab96",
"calldata_variants": [
"0xcff0ab96",
"0xcff0ab960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe6bb1156",
"selector": "0xe6bb1156",
"calldata_variants": [
"0xe6bb1156",
"0xe6bb11560000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe89bfc7b",
"selector": "0xe89bfc7b",
"calldata_variants": [
"0xe89bfc7b",
"0xe89bfc7b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2b4e617",
"selector": "0xf2b4e617",
"calldata_variants": [
"0xf2b4e617",
"0xf2b4e6170000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbb2c727e",
"selector": "0xbb2c727e",
"calldata_variants": [
"0xbb2c727e",
"0xbb2c727e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbf653a5c",
"selector": "0xbf653a5c",
"calldata_variants": [
"0xbf653a5c",
"0xbf653a5c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc7ac3bb9",
"selector": "0xc7ac3bb9",
"calldata_variants": [
"0xc7ac3bb9",
"0xc7ac3bb90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xca552342",
"selector": "0xca552342",
"calldata_variants": [
"0xca552342",
"0xca5523420000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 10077,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 14510,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 2,
"guards_detected": [
{
"pc": 8673,
"type": "tx_origin_used"
},
{
"pc": 9347,
"type": "tx_origin_used"
},
{
"pc": 5874,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 6101,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 6918,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 8670,
"type": "tx_origin_used"
},
{
"pc": 9345,
"type": "tx_origin_used"
}
],
"untrusted_call_count": 2
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0x7c6002c68b27ff19979f2c6fd2bc047aa367e314beac99f0e3a228ec52df249b
call_targets:
0x29174fc953f163452093afa9ee3904168c74b2e7
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x7c6002c68b27ff19979f2c6fd2bc047aa367e314beac99f0e3a228ec52df249b",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x29174fc953f163452093afa9ee3904168c74b2e7"
],
"matched_probe": null,
"target_varies": false,
"classification": "constant_target"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xcff0ab96",
"selector": "0xcff0ab96",
"calldata_variants": [
"0xcff0ab96",
"0xcff0ab960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe6bb1156",
"selector": "0xe6bb1156",
"calldata_variants": [
"0xe6bb1156",
"0xe6bb11560000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe89bfc7b",
"selector": "0xe89bfc7b",
"calldata_variants": [
"0xe89bfc7b",
"0xe89bfc7b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2b4e617",
"selector": "0xf2b4e617",
"calldata_variants": [
"0xf2b4e617",
"0xf2b4e6170000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbb2c727e",
"selector": "0xbb2c727e",
"calldata_variants": [
"0xbb2c727e",
"0xbb2c727e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbf653a5c",
"selector": "0xbf653a5c",
"calldata_variants": [
"0xbf653a5c",
"0xbf653a5c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc7ac3bb9",
"selector": "0xc7ac3bb9",
"calldata_variants": [
"0xc7ac3bb9",
"0xc7ac3bb90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xca552342",
"selector": "0xca552342",
"calldata_variants": [
"0xca552342",
"0xca5523420000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 10077,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 14510,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 2,
"guards_detected": [
{
"pc": 8673,
"type": "tx_origin_used"
},
{
"pc": 9347,
"type": "tx_origin_used"
},
{
"pc": 5874,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 6101,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 6918,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 8670,
"type": "tx_origin_used"
},
{
"pc": 9345,
"type": "tx_origin_used"
}
]
}
|
| info | other | cast | Heavy CALL-family usage | 55 | no | — |
viewevidence_json{
"notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
"call_family_count": 14
}
|